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

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: imageterminal-0.1.5.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.5.tar.gz
Algorithm Hash digest
SHA256 9a51302b16b82f452d712d6f8c0aa213eebbb611967613cbbc1af530fb458ed1
MD5 7b91f52322be40092957e57673a0abfd
BLAKE2b-256 b2a55c8512f16aff8c487851fd4c02fa200735aec198c94a0fc80d4c2c3d25d7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: imageterminal-0.1.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 40bdf700a30232a596bd8a4d73def3a59e93a8b4aa4905aa88e160e425099d90
MD5 c75270d6c99fccd1c771f1633f5918a2
BLAKE2b-256 14fbf0c523269cdb4b22c7907286ec005b10a5317a9af28e4bbb7489daf7d46b

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