Skip to main content

A terminal tool for advanced image manipulation including a filetype converter, background remover, and blazing fast upscaling AI using cv2.

Project description

Image Terminal

A powerful terminal-based image manipulation program built with Python and Textual. Image Terminal provides an intuitive interface for advanced image processing tasks including format conversion, background removal, and AI-powered upscaling.

License Python

Features

🔄 Format Conversion

Convert between multiple image formats with ease:

  • Supported formats: PNG, JPG, JPEG, BMP, WEBP, AVIF
  • Smart format detection: Automatically detects current format
  • Quality preservation: Maintains image quality during conversion

🎨 Background Removal

Remove backgrounds from images using advanced AI:

  • AI-powered: Uses the rembg library for precise background removal
  • Transparent backgrounds: Creates PNG files with transparent backgrounds
  • Format compatibility: Handles JPEG/JPG with white background fallback
  • High quality: Preserves subject details and edges

🚀 AI Image Upscaling

Enhance image resolution with deep learning:

  • Multiple scale factors: 2x, 3x, and 4x upscaling options
  • EDSR models: Uses Enhanced Deep Super-Resolution models
  • Quality enhancement: Improves both resolution and image quality
  • Format support: Works with all major image formats

imageterminal

Installation

Requirements

  • Python 3.8+

From PyPI

pip install imageterminal-iantawileh

text

From Source

git clone https://github.com/yourusername/imageterminal.git cd imageterminal pip install -e .

Usage

Run the app from your terminal:

imageterminal

Basic Steps

  1. Start the app:
    Run imageterminal in your terminal.

  2. Upload your image:
    Click "Upload Image!" and select a file.

  3. Pick a tool:

    • Change Filetype
    • Remove Background
    • Scale Image
  4. Save your result:
    Choose where to save the processed image.

Supported Formats

  • PNG (.png)
  • JPEG (.jpg, .jpeg)
  • BMP (.bmp)
  • WEBP (.webp)
  • AVIF (.avif)

That's it! You're ready to use imageterminal.

Technical Details

Dependencies

  • Textual: Modern terminal UI framework
  • Pillow: Python Imaging Library
  • OpenCV: Computer vision and image processing
  • rembg: AI background removal
  • NumPy: Numerical computing
  • PyTorch: Deep learning framework (via rembg)

Performance Notes

  • Background removal: Typically takes 5-15 seconds depending on image size
  • AI upscaling: Can take 1-5 minutes depending on scale factor and image size
  • Format conversion: Near-instantaneous for most operations

System Requirements

  • RAM: Minimum 4GB (8GB+ recommended for large images)
  • Storage: ~500MB for dependencies and models
  • CPU: Multi-core processor recommended for faster processing

File Structure

imageterminal/
├── main.py              # Main application file
├── style.tcss           # Textual CSS styling
├── EDSR_x2.pb          # 2x upscaling model
├── EDSR_x3.pb          # 3x upscaling model
├── EDSR_x4.pb          # 4x upscaling model
├── pyproject.toml      # Project configuration
├── requirements.txt    # Python dependencies
└── README.md          # This file

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Acknowledgments

  • Textual - For the excellent terminal UI framework
  • OpenCV - For computer vision capabilities
  • rembg - For AI background removal
  • EDSR - For super-resolution models
  • Pillow - For image processing utilities

Author

Ian Tawileh


Image Terminal - Transform your images with the power of AI, all from your terminal.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imageterminal-0.1.3.tar.gz (94.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imageterminal-0.1.3-py3-none-any.whl (94.7 MB view details)

Uploaded Python 3

File details

Details for the file imageterminal-0.1.3.tar.gz.

File metadata

  • Download URL: imageterminal-0.1.3.tar.gz
  • Upload date:
  • Size: 94.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for imageterminal-0.1.3.tar.gz
Algorithm Hash digest
SHA256 3c6b2097409bb1a3a538a79c7759cd3a800e0b465ce656b224130eaf98b7859c
MD5 d855a7c7cb4a8f556cab8a017c5098a3
BLAKE2b-256 f498eb31affcb200ddea5dd4e3dc4dabf645a0b127ef045cd914c639e7fb87bc

See more details on using hashes here.

File details

Details for the file imageterminal-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: imageterminal-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 94.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for imageterminal-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 365dd63c0676a768a87e4d13c3354c91446962ecf8d3d3012ecca6d5546d63be
MD5 f771c48bd53fb11be9dd8618a601384d
BLAKE2b-256 5cf8310d7aec4f44d482f9d7d8a50c5a69bcda5a9c47ac91a0c263293d6be2bf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page