Zdjęcia na Javie: JPhotoTagger

Ręka w górę, kto nie lubi robić porządków w swoim archiwum ze zdjęciami. Las rąk przesądza o żmudnej siermiędze tej czynności, a która jest konieczna nawet w uproszczonej formie, gdy niesieni natchnieniem zapełniamy nasze dyski setkami kadrów, ujęć i kolejnymi elementami panoram, HDR’ów i tak dalej. Czasem znajdziemy nawet ochotę na dokładniejsze skatalogowanie naszych zasobów. Dokładniejsze, niż zwykłe rozparcelowanie zdjęć po katalogach oznaczonych datą lub miejscem akcji. Jeżeli do tej pory żadnej program nie zadowolił naszych ambicji w tej kwestii, JPhotoTagger będzie wart co najmniej przetestowania.

JPhotoTagger to rozbudowany menadżer zdjęć i różni się od innych rozbudowanych menadżerów tym, że skutecznie potrafi zrobić użytek z wprowadzanych przez nas tagów, słów kluczowych, opisów zdjęć, danych EXIF, IPTC i tak dalej. Tak po prawdzie, to tagowanie zdjęć jest zaledwie czubkiem całej góry opcji dostępnych w tym programie. Koncepcja jego działania polega na opisywaniu zdjęć wspomnianymi wcześniej znacznikami i zapisywaniu ich w plikach XMP obok oryginalnego pliku oraz w lokalnej bazie danych. Dane te mogą być ze sobą synchronizowane (zmiana pliku XMP spowoduje zmiany w bazie), a dzięki takiemu rozwiązaniu nasze późniejsze wyszukiwania konkretnych znaczników będą o wiele szybsze (wprost z bazy). JPhotoTagger pozwala grupować zdjęcia w albumy, ulubione, a także odnajdywanie plików z tagami, bez tagów, wg. modelu aparatu, wg. ogniskowej, wg. daty i tak dalej (lewa kolumna głównego okna). Istotnym jest fakt, że podczas takiego segregowania, zmieniają się tylko zapisy w bazie, natomiast nie zmienia się fizyczne położenie obrazów.

JPhotoTagger – pląsy wśród tagów, znaczników i albumów

Drugiem gwoździem programu jest prawa kolumna i wszelkie opcje opisywania i cechowania zdjęć, nadawania tytułów i słów kluczowych, oceniania, itp. Co więcej, mamy możliwość tworzenia profili takich opisów i szybkiego stosowania ich podczas późniejszej pracy. Jakby tego było mało, JPhotoTagger potrafi odczytać pliki XMP i tagi generowane przez Lightrooma oraz Photoshopa (istotna sprawa dla osób posiadających kolekcje tworzone w tych programach oraz różnych systemach).

I nadszedł czas na środkową kolumnę, która wyświetla miniatury zdjęć (program obsługuje format RAW, jpg, tiff, png, bmp i inne) z aktywnych lokalizacji lub wynik wyszukiwania. Miniatury mogą być dowolnych rozmiarów (opcje), a kliknięcie prawym przyciskiem na pliku otworzy przed nami kolejne możliwości. Do najciekawszych należy otwieranie wybranego zdjęcia w zdefiniowanym przez nas zewnętrznym edytorze (‘Open with’), wywoływanie własnych poleceń (‘Actions’), obsługa miniatury i danych zdjęcia (‘Refresh’ i ‘Rotate’). Przy pomocy tego menu dodamy zdjęcie do konkretnego albumu, ocenimy je, zmienimy nazwę (rozbudowane), czy wyślemy do jego z pluginów JPhotoTaggera (np. przesyłanie pliku na Flickr).

To oczywiście nie wszystko, bo w górnym menu natrafimy na cały zestaw funkcji i opcji obsługujących bazę programu (w tym eksport/import), odnajdywanie duplikatów, profilowane zmienianie nazw, oraz oczywiście rozbudowane opcje. Przypuszczalnie każdy znajdzie coś użytecznego dla siebie w tym programie. Pozostaje kwestia jego zainstalowania.

Jak można się domyślić po ‘J’ w nazwie, JPhotoTagger został popełniony w Javie. Aby go zainstalować musimy pobrać archiwum i rozpakować je do np. ~/Programy/. Teraz mamy dwa wyjścia – ustawić zezwolenie na wykonywanie pliku JPhotoTagger.jar (musimy mieć zainstalowane OpenJDK 1.7), uruchamiać dwuklikiem i cieszyć się z pełni niemieckiego tłumaczenia (język twórców). Albo w katalogu z tym plikiem utworzyć sobie skrypt run.sh o treści:

#!/bin/sh
java -jar -Duser.language=en JPhotoTagger.jar

… nadać mu prawa na wykonywanie (prawy przycisk, właściwości -> uprawnienia) i odpalać program za pomocą tego skryptu oraz cieszyć się nieco bardziej zrozumiałymi dla większości angielskimi napisami.

Drugi motyw dotyczy generowanego podglądu plików RAW. U mnie program domyślnie nie potrafił (?) dogadać się z zainstalowanym dcraw, pomimo odpowiednich ustawień. Twórcy przewidzieli jednak możliwość własnego skryptu tworzącego miniatury – wystarczy w opcjach dla miniatur wybrać External Program oraz następnie Script. Teraz wskazujemy nasze zainstalowane w systemie polecenia dcraw (apt-get install dcraw), convert i identify (apt-get install imagemagick). I po tym miniatury plików RAW zaczną się generować, lecz nieco ślamazarnie. A wszystko przez to, że uruchamiany przez JPhotoTagger skrypt wymusza na dcraw pełne dekodowanie surówki z matrycy, co siłą rzeczy musi trwać. I na to też jest rada. W opcjach poniżej Externa; Program ujrzymy ścieżkę do rzeczonego skryptu (/home/NAZWA_USERA/.de.elmar_baumann/ImageMetaDataViewer/pluginsettings/image_magick_dcraw.sh). Otwieramy go do edycji i zamieniamy dwie linijki:

temp_filename=$temp_dir/$(basename $0).$$.pnm

… na…

temp_filename=$temp_dir/$(basename $0).$$.jpg

… oraz…

/usr/bin/dcraw -c -h $image_filename > $temp_filename

… na…

/usr/bin/dcraw -c -e -h $image_filename > $temp_filename

To spowoduje, że dcraw nie będzie dekodował pliku raw, a odczytywał zapisaną w nim miniaturę jpg. Przynajmniej u mnie to przyśpieszyło całą sprawę.