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.1.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.1-py3-none-any.whl (94.7 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: imageterminal-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 327fe976e8b4a220eaa901fb7c223cbe53464f94a42e8c2a3bc0ff73a6f46552
MD5 a5387138f787896f80d3e6ef5efe2338
BLAKE2b-256 ce2749ea7315c49857fc2f158340555eab2f29d795fe4d09a176968b1f3e7e27

See more details on using hashes here.

File details

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

File metadata

  • Download URL: imageterminal-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a4757c6dbd87d67d303e75356fa9d58227f2204f2ef01f23dc3984a6da5044af
MD5 466a12a37df9f0444f25c1edf995ba99
BLAKE2b-256 d2fb00aa29137766cf16a72306a8e0f85e5510fd839f1f878e72da446b4eb2f5

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