This is just a little tool for comparing different image formats. It analyzes JPEG, TIFF, WebP, and PNG formats, looking at things like how well they compress, how quickly they load, their quality, and their potential for hiding data (steganography).
- Working on turning this into an interactive website for easier use
- Planning to add exciting JPEG XL support for even more comparison options
- Added the initial Python script
- Added setup file for easy installation
%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#6366f1',
'primaryTextColor': '#fff',
'primaryBorderColor': '#4f46e5',
'lineColor': '#6366f1',
'secondaryColor': '#f0f9ff',
'tertiaryColor': '#e0e7ff'
}
}}%%
flowchart TD
Input[/Input Image/]:::input --> Convert[Convert to Multiple Formats]
Convert --> Analyze[Analyze Images]
subgraph Formats[Image Formats]
direction LR
PNG:::format
JPEG:::format
TIFF:::format
WebP:::format
end
subgraph Metrics[Quality Metrics]
direction LR
PSNR[PSNR]:::metric
SSIM[SSIM]:::metric
Compression[Compression Ratio]:::metric
Speed[Loading Speed]:::metric
end
subgraph Visual[Visual Compare]
direction LR
SideBySide[Side by Side]:::visual
Diff[Difference Maps]:::visual
Zoom[Zoomed Region]:::visual
Stego[Stego Effects]:::visual
end
Convert --> Formats
Analyze --> Metrics --> Report[Generate Report]:::output
Analyze --> Visual --> Visualize[Create Visualizations]:::output
classDef default fill:#6366f1,stroke:#4f46e5,stroke-width:2px,color:#fff,rounded:true
classDef input fill:#22c55e,stroke:#16a34a,stroke-width:2px,color:#fff,rounded:true
classDef output fill:#ec4899,stroke:#db2777,stroke-width:2px,color:#fff,rounded:true
classDef format fill:#f0f9ff,stroke:#6366f1,stroke-width:2px,color:#6366f1,rounded:true
classDef metric fill:#f0f9ff,stroke:#6366f1,stroke-width:2px,color:#6366f1,rounded:true
classDef visual fill:#f0f9ff,stroke:#6366f1,stroke-width:2px,color:#6366f1,rounded:true
- First, clone this repository to your computer
- Run the
setup.bat
file (compatible with Windows 10 and Python 3.11) - Launch the tool by typing
marimo edit
in your terminal - it'll open right in your browser! - Run the
test_jxl.py
file to see how it works
This tool is for personal use - feel free to use it for your own projects and learning! Not intended for commercial applications.
Check out JPEG XL to learn about this exciting new image format we'll be adding soon!