Skip to content

This program shows visual differences between chosen images

Notifications You must be signed in to change notification settings

Luk-kar/Show_Images_Differences

Repository files navigation

Show Images Differences


This program shows visual differences between chosen images. Similar images are matched automatically, to get the best result try to match images with the same sizes

how_program_works

Getting Started 💡

Run python Show_Images_Differences command line in the directory where the folder exists

To run only the UI version you don't have to provide any arguments, just press "enter"

If you want to use the console: How to use console

You can also create your executable: link

Using UI version 👀

main window

  1. Firstly, you choose the source folder/file/URL to process
  2. Next, you choose the target folder/file/URL to compare to
  3. Later, you check mode in which you want to display images:
  • Save
  • Show
  1. In save mode you choose the folder in which your matches will be saved
    To do that you have to provide a path in the output dialog box
  • When a name should be the same as in source, provide the output path as a folder
  • When a name should be specified, provide the output path as a file
  1. In show mode there will be automatically displayed matched images
    To go to the next set of images press "0" key

  2. The width dialog is responsible for the size in which images will be rendered
    minimal value is 1, maximal value is 1080, it's set mainly for performance reasons

  3. The checkbox Search by the ratio enables searching similar images with different sizes but only with the same ratio
    sizes of original image compared to target image are from 0.5 to 4.0 times
    any ratios of target images below or above these values are disregarded
    Generally, it's not recommended to use this option due to image distortions

  4. The checkbox Mark differences on images enables showing marked area by red rectangle where differences occur

  5. The final step is to push the button "Match images"
    Depending on the number of images to process results should appear fairly fast
    Images are automatically matched on the degree of similarity
    The naming of files does not matter in that case

  6. Enjoy the results!

Errors ⚠️

errors

  1. If you use "Save mode":
    When errors occur, then it will be created .txt file where errors are stored
    .txt file is stored in the selected folder in output folder
    Each .txt file looks like: ERROR-(date when the script ran).txt:

  2. If you use "Show mode":
    When errors occur, then a pop-up window with listed "not found" files matches will appear

For both modes, you will get a pop-up notification about the quantity of errors

Type of errors:

  • When there is no match for source image among target images
  • When matched images are not saved

Setup 💾

setup menu

The areas marked in red are options which can be saved, loaded as setup files
Setups are stored in "program/data/appData/"

To process setups, in menu "Setup" is located following options:

  1. Save as, save current setup into .ini file
  2. Open, open setup .ini file
  3. Save to defaults, save current setup as defaults (load that setup each time when program starts)
  4. Reset to defaults, load defaults
  5. Defaults reset, overwrite defaults to standard values and load them

Logs 📜

logs menu

In this menu, you can choose if errors logs appear or not
In Save mode errors logs are saved in the output directory
In Show mode errors logs are shown in the pop-up box

Help ℹ️

help menu

It consists of:

  • How to use the program
  • About (program and its creator)

Program config 🕹️

In ./Show_Images_Differences/config/config.py you will find constants
used through the whole program

Inside you can change:

  • read image types (e.g .png)
  • ARGVs names
  • images properties
  • or in what conditions matches images are found

Python is the only language used in the project, so for convenience to keep types right, config is just .py

Running the tests 🧪

To run tests, write down in the terminal, in the program folder: python tests.py

Built With 🧰

Needed documentation 📦

Structure of the code 🧭

Flow diagram

Contributing 📬

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us

Versioning 🗓️

We use SemVer for versioning in CHANGELOG.md

Authors 🎈

  • Karol Łukaszczyk - Initial work - Luk-kar

License 📜

This project is licensed under the MIT License - see the LICENSE file for details

Acknowledgments 👍

About

This program shows visual differences between chosen images

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages