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.

10 komentarzy

  • Ja osobiście nie kombinuję specjalnie, tylko przepuszczam obraz przez IrfanView i przy zapisywaniu ustawiam poziom kompresji, a potem oceniam na oko. Ale zgadzam się, że jak zdjęcia mają przyciągać i nie obciążać strony (np. portfolio fotografa itp.), to warto porządnie nad tymi zdjęciami przysiąść. Pobrałem – zobaczymy, co ten sofcik potrafi 😉

  • Uważam, że w sklepach internetowych także powinno się dbać o jak najwyższą jakość zdjęć, lecz nie należy zapominać o ich optymalizacji. Zazwyczaj każdy produkt ma po 2 – 3 zdjęcia, więc przy kilku tysiącach produktów jest to spore obciążenie dla serwera. Osobiście wstawiam zoptymalizowane zdjęcia JPG, które zajmują średnio 30kb przy rozmiarze 600x400px.

  • Fajny prrogram, można łatwo znaleźć granicę za którą zdjęcie jest już gorsze. Nie trzeba bawić się w dwu, trzykrotne zapisywanie i sprawdzanie efektów. Przydatne szczególnie przy zdjęciach gdzie jakość odgrywa kluczową rolę.

  • Ile ja się naszukałem takiego programu! Nawet nie macie pojęcia 🙂
    Robiłem na oko ręcznie, nakładając w Photo-Paint na siebie zdjęcia i obcinając jednego połowę żeby zobaczyć czy przejdzie czy od nowa optymalizować. A tutaj idealna sprawa 🙂 Na swoim blogu zamieszczam fotki kosmetyków i czasami mają duże rozmiary i muszę je optymalizować, a czasami przedobrzę jak to się mówi 🙂

  • Mariusz na stronach opartych na WordPress używam wtyczki WP Smush.it, która sama optymalizuje obrazki bez widocznej utraty jakości. W większości przypadków to wystarcza. Problem jest w tych serwisach, gdzie zdjęcia są naprawdę duże (wtyczka ma ograniczenie wielkości do 1 MB) i nie wykona się nią automatycznej optymalizacji. Z WinMerge korzystam, nie wiedziałem że są też softy do porównywania plików graficznych 🙂

  • Wszystko fajnie, ale pomimo mocnej maszyny ma problemy z plikami powyżej 80mb 😉

  • Pliki można porównać wizualnie w dowolnym programie graficznym z obsługą warstw. Wystarczy wczytać oryginał i w kolejnej warstwie negatyw kopii z kryciem 50%. Na jednolicie szarym tle widoczne będą tylko różnice.
    Bardzo ładnie widać, co robi kompresja.

Kliknij tutaj aby skomentować