Skip to content

gimletlove/imagecompare

Repository files navigation

Image Compare - Image Comparison & Visual Diff Tool for Linux and Windows

GitHub Release Flathub AUR License: GPL-3.0

Image Compare is a desktop image comparison and visual diff tool for comparing two or more images side by side, in a stacked view, or with a heatmap of perceptual differences. It supports synchronized zoom and pan, grid layouts, multiple image formats, faithful color-profile rendering, and fast image loading with Qt6 and libvips.

Use it to compare screenshots, rendered images, exports, design revisions, before/after edits, and subtle visual differences between image versions.

Screenshots

Image Compare app showing side-by-side image comparison and heatmap differences

Features

  • Compare two or more images side by side
  • Stack images and cycle between them with arrow keys
  • Focus the active image with Enter, and reorder images with Ctrl+Left / Ctrl+Right
  • Match zoom and pan across images with different dimensions
  • Generate perceptual heatmap differences between two same-size images, with overall and peak dE00 readouts
  • Export generated heatmaps
  • Use pane context menus to copy paths, open containing folders, move images, and close files
  • Use a grid layout when four or more images are loaded
  • Render images faithfully with embedded color profiles, or view them in raw mode
  • Open images with drag-and-drop, file picker, command-line arguments, or your file manager’s Open With menu
  • Load, zoom, and pan large images efficiently

Install

Linux release builds and Windows portable zip packages are available from GitHub Releases.

GitHub Releases

Download release builds from the GitHub Releases page.

Available release artifacts include:

  • Linux DEB package for Debian and Ubuntu-based distributions
  • Linux RPM package for Fedora and RPM-based distributions
  • Linux install-tree zip
  • Windows x86_64 portable zip
  • Source tarball

Flathub

flatpak install flathub io.github.gimletlove.imagecompare
Download Image Compare on Flathub

Arch Linux AUR

yay -S imagecompare-bin

Windows

Download imagecompare-<version>-windows-x86_64.zip from GitHub Releases, extract it, and run imagecompare.exe.

The Windows build is distributed as a portable zip with its runtime dependencies bundled.

How To Use

  • Drag and drop image files into the app, or use Open or press o in the toolbar.
  • Pass image paths on the command line when launching the app.
  • Use Open With from your file manager, if supported, to open selected images in Image Compare.
  • Use the zoom readout or press f to toggle between best fit and 100% zoom.
  • Use Stack or press v to stack images and cycle between them with the arrow keys.
  • Use Match Zoom or press h to normalize zoom and pan across images with different dimensions.
  • Use Faithful / Raw or press r to switch between embedded color-profile rendering and raw display mode.
  • Use Build Heatmap or press b to build a perceptual heatmap of differences from 2 images with the same dimensions.
  • Right-click an image pane to open the context menu for further actions.
  • Use Ctrl+W on the active pane to close it.
  • Use Ctrl+Left and Ctrl+Right to move the images.

Use Cases

Image Compare is useful for:

  • Spotting subtle visual changes between image versions
  • Spotting subtle differences between different compression methods, such as JXL or AVIF
  • Creating a heatmap of differences between images

Runtime Requirements

Packaged release builds include or declare the runtime dependencies they need. Building or running from source requires:

  • Qt6 runtime libraries
  • libvips runtime libraries

Build Requirements

Local source builds are intended for Linux. Windows packages are produced by the GitHub Actions release workflow.

  • C++20 compiler
  • CMake 3.21+
  • Qt6
  • libvips and vips-cpp

Check installed dependency versions:

pkg-config --modversion Qt6Core
pkg-config --modversion vips
pkg-config --modversion vips-cpp

Build

cmake -S . -B build
cmake --build build

Enable Flatpak-specific portal integration for Flatpak builds:

cmake -S . -B build-flatpak -DIMAGECOMPARE_FLATPAK=ON
cmake --build build-flatpak

Flatpak builds also require Qt6 DBus and KDE Frameworks 6 CoreAddons.

Run

Open the app:

./build/imagecompare

Project Links