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.
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
rembglibrary 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
-
Start the app:
Runimageterminalin your terminal. -
Upload your image:
Click "Upload Image!" and select a file. -
Pick a tool:
- Change Filetype
- Remove Background
- Scale Image
-
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c6b2097409bb1a3a538a79c7759cd3a800e0b465ce656b224130eaf98b7859c
|
|
| MD5 |
d855a7c7cb4a8f556cab8a017c5098a3
|
|
| BLAKE2b-256 |
f498eb31affcb200ddea5dd4e3dc4dabf645a0b127ef045cd914c639e7fb87bc
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
365dd63c0676a768a87e4d13c3354c91446962ecf8d3d3012ecca6d5546d63be
|
|
| MD5 |
f771c48bd53fb11be9dd8618a601384d
|
|
| BLAKE2b-256 |
5cf8310d7aec4f44d482f9d7d8a50c5a69bcda5a9c47ac91a0c263293d6be2bf
|