Skip to main content

A terminal tool for advanced image manipulation including a filetype converter, background remover, and blazing fast image upscaling!

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.2.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

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

imageterminal-0.2.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for imageterminal-0.2.0.tar.gz
Algorithm Hash digest
SHA256 150bf7587866bcf2dda6744727d441fde900a596d5ea2c3d969835413dbc6112
MD5 675a88a705067a34375f8c28621d831d
BLAKE2b-256 e67a0354743b0acdc76cdbd5a65f5e71c860cedfc9a89f851869c06bf5dd9786

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for imageterminal-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a4c58231ed3acfa1567983602e7c59ee784f43541e9032432f4f6133a894c1d0
MD5 1bca8e77a1eeeaad5ffac71e722b6c40
BLAKE2b-256 be457155b5e2fdfef2f7f72d4ae22e3e46f0725ec0ee8bd240926dc6f716217b

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