A simple image processing toolbox written from scratch in Python using PyQt5 and numpy.
| Metadata | Resizing | Rotation | Shearing |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| Histogram Equalization | Erosion & Dilation | Opening and Closing |
|---|---|---|
![]() |
![]() |
![]() |
| Box Blur | Median Blur | Highboost Filter |
|---|---|---|
![]() |
![]() |
![]() |
| Low Pass Filter | High Pass Filter | Band Pass Filter | Band Reject Filter |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
| Backprojection and Sinogram | Noise Generation | Noise Analysis ROI |
|---|---|---|
![]() |
![]() |
![]() |
| File Type | Supported | Notes |
|---|---|---|
| DICOM | Yes | |
| JPG | Yes | |
| BMP | Yes | |
| PNG | Yes | |
| TIFF | Yes | Not fully |
- Width and Height in pixels
- Image Size in bytes
- File Size in bytes
- Compression ratio
- Channel Depth
- Color Space (RGB, CMYK, etc)
- Nearest Neighbor
- Bilinear
- Resizing
- Factors ranging from 0.01x to 16x
- Rotation
- Shearing
| Spatial Domain | Frequency Domain |
|---|---|
| Box Blur | Low Pass Filter |
| Median Blur | High Pass Filter |
| Highboost Filter | Band Pass Filter |
| Band Reject Filter |
- Display Histogram
- Equalize Histogram
| Operations | Structuring Elements |
|---|---|
| Erosion | Square |
| Dilation | Cross |
| Opening | Circle |
| Closing |
Just download the release from gh releases, unzip then run the executable.
-
Clone the repo
-
Create a virtual environment in the src directory
cd <this repo>/src python -m venv ./env
-
Activate the virtual environment
Scripts\Activate.ps1 # for powershell
Scripts\Activate.bat # for cmd
-
Install dependencies from requirements.txt
pip install -r requirements.txt
-
Run the app
python image_viewer.py


















