Oprogramowanie

Porównywanie zdjęć – poznaj darmowy program DiffImg

porównanie obrazków

Jak wiemy niektóre branże mają to do siebie, że nie mogą pozwolić sobie na wrzucanie kiepskiej jakości fotek np. zdjęcia żywności czy modelek. Czym wyższa jakość zdjęcia, tym jego rozmiar większy, w konsekwencji zwiększa się także czas ładowania strony. Ostatnio w ramach optymalizacji jednego z serwisów internetowych musiałem wykonać serię testów, których zadaniem było oszacowanie stopnia zmian po przekształceniu zdjęć do PNG (zoptymalizowany). Do porównywania obrazków użyłem ciekawego darmowego narzędzia i o nim właśnie będzie dzisiejszy wpis.

Początkowo nie mogłem znaleźć idealnej aplikacji do wykrywania różnic (porównywania zdjęć) w obrazach, testowałem różne softy, między innymi dobrze znany RIOT (Radical Image Optimization Tool), lecz najlepszym programem, który podał najdokładniejsze statystyki okazał się sofcik DiffImg (do pobrania za free z sourceforge.net). Warto jeszcze dodać, że narzędzie jest bardzo szybkie, nawet duże obrazy przetwarzane są błyskawicznie.

Obsługa DiffImg jest podobna do znanego oprogramowania – WinMerge (soft do porównywania plików tekstowych). Wczytujemy obraz bazowy (oryginalny) i obraz po modyfikacji (kompresji).

Diffimg

Na wyjściu uzyskujemy dane statystyczne oraz wykryte różnice, które nałożone są na obraz bazowy.

W przykładzie oryginalny zrzut lekko zmieniłem zamazując jedną ze zmiennych tekstowych. Na powyższym zrzucie widzimy wyraźnie, który fragment obrazu został zmodyfikowany (Original, Modified, Diffrence) i w jakim stopniu (sekcja Statistics).

Program umożliwia zdefiniowanie metryk takich jak Perceptual difference (dane w tym trybie są najbardziej czytelne), można także zdefiniować metodę porównywania i próg czułości. Wszystko to pomaga wychwycić zmiany w zdjęciach, określić jakość wynikową. Oczywiście najważniejsze dla nas jest ogólna percepcja zdjęcia, dane uzyskane z programu pomagają dostrzec stopień ingerencji w obraz.

Oczywiście powiesz, po co mi taki program, przecież mogę zrobić wszystko na oko. Owszem możesz, natomiast tego typu zaawansowane analizy mają odpowiedzieć na pytanie – czy na konkretnej próbce zdjęć da się zrobić skuteczną optymalizację.

Mówiąc skuteczna optymalizacja mam na myśli zachowanie dobrej jakości przy znaczącej redukcji wagi zdjęcia. Przy czym należy zauważyć, że zazwyczaj dla kilku procent zysku nie ma sensu bawić się w optymalizację zdjęć, no chyba że jest ich niewiele, jednakże w sklepach internetowych czy firmowych portfolio mamy do czynienia z wieloma fotografiami (dodam że często mega dużymi).

O autorze

Mariusz Kołacz

Z zawodu mgr inż. informatyk, zwolennik nowoczesnych technologii i fan Nikoli Tesla. Prowadzi kilka blogów o tematyce technologicznej. Po godzinach lubi przeczytać dobrą książkę, pozwiedzać ciekawe miejsca w Polsce lub spędzić wolny czas na łonie natury.