piątek, 22 kwietnia 2011

O wyższości trybu 16-bitowego nad 8-bitowym

Wady trybu 16-bitowego

Tak, tak, to nie pomyłka! Tryb 16-bitowy ma swoje wady. W losowej kolejności:
  • Duże pliki -- obrazek w trybie 16-biowym bez kompresji zajmuje dwa razy więcej miejsca na dysku, niż jego 8-bitowy odpowiednik. Pamięci też potrzebuje dwa razy więcej. Jednak po zastosowaniu kompresji (plik PSD) może zdarzyć się, że plik 16-bitowy będzie zajmował mniej miejsca niż 8-bitowy (będzie o tym wpis)! W przypadku formatu TIFF z kompresją LZW lub ZIP -- nie testowałem, ale tu powinno obyć się bez niespodzianek.
  • Wolno się zapisuje -- zdjęcie + dużo warstw w trybie 16-bitowym potrafi zapisywać się nawet 20 sekund. W 8-bitach -- około 2-3. Dlaczego tak wolno -- prawdopodobnie przez inny algorytm kompresji. To może tłumaczyć niespodziankę z rozmiarami plików, o której pisałem wyżej.
  • Dużo filtrów nie działa -- ale najważniejsze sprawnie funkcjonują :) A nawet jeśli chcemy użyć jakiegoś filtru dostępnego tylko w 8-bitach, to możemy -- na kopii zdjęcia (będzie o tym wpis). Komercyjne filtry od onOne Software i Nik Software działają w 16-bitach bardzo dobrze!
  • Pewnie jeszcze coś by się znalazło -- możecie pisać w komentarzach :)

Zobacz zalety na własne oczy

Proponuję prosty eksperyment z histogramem. Należy go wykonać na pliku w trybie 8-bitowym oraz na tym samym 8-bitowym pliku po skonwertowaniu go na tryb 16-bitowy. Eksperyment przeprowadzimy bez użycia warstw, za pomocą polecenia "Image>Adjustments>Levels...". Najpierw ustawimy poziomy wyjściowe na 253 dla czarnego i 255 dla białego, zachowując poziomy wejściowe na 0..255, klikamy OK. W ten sposób "ścisnęliśmy" całą tonalność obrazka do dwóch działek jasności. Następnie robimy operację odwrotną: znów otwieramy poziomy (Levels), ale tym razem zmieniamy poziomy wejściowe na 253 dla czarnego, 255 dla białego, poziomy wyjściowe pozostawiamy bez zmian: 0/255. Wyniki eksperymentu widać na poniższym rysunku.


A jak oczom nie wierzysz to sobie policz

Z teoretycznego punktu widzenia, w trybie 16-bitowym mamy 256^3=16 777 216 razy więcej kolorów! Znaczek ^ należy rozumieć jako "do potęgi". Uwaga: razy więcej!

Policzmy sami. W trybie 8-bitowym, każdy z kanałów RGB może przyjmować wartości od 0 do 255. Czyli w sumie 256=2^8 różnych wartości. Ile można z tego stworzyć kolorów? Liczby w nawiasach oznaczają wartości dla kanału czerwonego, zielonego i niebieskiego. (34,54,134) oznacza czarwony=34, zielony=54, niebieski=134, czyli taki kolor    . Prześledźmy schemat: (0,0,0), (0,0,1), ..., (0,0,255), (0,1,0), ..., (0,1,255), ..., (0,2,0), ..., (255, 255, 255). Zauważmy, że dla każdej wartości koloru zielonego jest 256 różnych wartości kolory niebieskiego. Różnych wartości koloru zielonego jest też 256. Podobnie jest z niebieskim. Mamy więc 256*256*256=256^3=2^8^3=2^24=16 777 216 kolorów, znane również pod pojęciem "24-bitowy kolor" lub "16 milionów kolorów".
Przeprowadźmy teraz analogiczne rachunki dla 16-bitów na kanał. Jeden kanał może przyjmować 2^16=65 536 wartości. Przy trzech kanałach daje to 65536^3=2^16^3=2^48=281 474 976 710 656, czyli 281 bilionów kolorów (w USA powiedzieliby 281 trylionów).
  • O ile kolorów jest więcej w trybie 16-bitowym w odniesieniu do trybu 8-bitowego: 2^48-2^24=281 474 959 933 440. Chwila... znów 281 bilionów? Ach -- różnica jest na poziomie milionów ;)
  • Ile razy jest więcej kolorów w trybie 16-bitowym w odniesieniu do trybu 8-bitowego:
    2^48/2^24=2^(48-24)=16777216 razy więcej.

Podsumowanie

Jeśli nie chcesz tracić odcieni operując na krzywych, poziomach i innych filtrach zawsze pracuj w trybie 16-bitowym.

czwartek, 21 kwietnia 2011

Jak nie zepsuć rozpiętości tonalnej zdjęcia



Lightroom czy Camera RAW?


Napiszę krótko -- nie ma najmniejszej różnicy. Oba te programy używają tego samego silnika do wywoływania zdjęć. Różnią się tylko front-endem, czyli tym, co widzi użytkownik. Wszelkie dyskusje na temat przewagi jednego nad drugim z punktu widzenia jakości zdjęć są bezcelowe. Jak to potwierdzić? W Lightroomie wybierz ImageEditOpen as Smart Object in Photoshop, czyli otwórz w photoshopie jako Smart Object.
Teraz, aby zmienić parametry "wywoływania", kliknijmy dwa razy na miniaturce jedynej warstwy na panelu warstw -- otwiera się Camera RAW!

IMHO Lightroom jest o wiele wygodniejszy od Camera Raw przy katalogowaniu zdjęć. Jest ładniejszy :) Jednak jeśli chodzi o "reaktywność", szybkość odzwierciedlania wprowadzonych zmian na miniaturkach, to zestaw Bridge+Camera Raw może mieć przewagę. Przynajmniej na mojej konfiguracji sprzętowej (Windows 7 64-bit, Intel Core 2 Duo 3,16@4,3 GHz, 8 GiB RAM). Moja rada -- przetestować na własnej skórze konfiguracji sprzętowej.

Ustawienia formatu wyjściowego

Zdecydowanie ustalamy 16-bitowe wyjście. Profil barwny wedle gustu. Ja mam ustawiony ProPhoto RGB. O zaletach i wadach różnych profili napisano już bardzo wiele. Od siebie dodam: jeśli nie masz PROFESJONALNEGO skalibrowanego szerokogamutowego monitora, odpowiedniego pomieszczenia edycyjnego (czarne ściany!), oświetlenie i kominiarki (żeby wyeliminować odbicia od skóry) -- nie przejmuj się tym wszystkim zbytnio ;)
Pracować możesz w szerokiej przestrzeni takiej jak Pro Photo. Na monitorze różnicy od sRGB i AdobeRGB raczej nie zauważysz. Na DOBRYM wydruku (takim za 150 zł / ~A3) -- całkiem możliwe, że różnica się pojawi.
Pamiętaj też, aby przed wrzuceniem zdjęć do Internetu skonwertować profil barwny na sRGB -- w innym wypadku, w niektórych przeglądarkach mogą pojawić się niemiłe niespodzianki kolorystyczne.
Oto jak ustawić to o czym pisałem wyżej we wspomnianych programach:

Niedoświetlanie

Większość zdjęć naświetlam na ok. -1 EV. Takie niedoświetlenie pomaga uratować szczegóły ze świateł. Cienie i tony średnie mogę "wyciągnąć" podczas obróbki. Rzecz jasna najlepiej by było, gdyby zdjęcia od razu naświetlać prawidłowo. W praktyce jednak trudno uniknąć błędów rzędu +/- 1 EV, szczególnie gdy zmieniają się warunki otoczenia (plener), a zdjęcia trzeba wykonywać szybko. Matryca w moim aparacie dobrze radzi sobie z wyciąganiem szczegółów nawet przy niedoświetleniu -2 EV. W przypadku innych body trzeba poeksperymentować. Niedoświetlanie o jedną działkę może okazać się za mocne.

Czarne i białe

W wielu poradnikach napisane jest, aby światła ustawić na ~253, cienie na ~5, czyli: aby białe było białe, i czarne -- czarne. Zasadę tę trzeba pamiętać... ale i tak robić po swojemu ;) Każde zdjęcie jest inne, ma inny charakter, inny klimat. Dostosujmy do tego poziom czerni i bieli. Nigdzie nie jest powiedziane, że na zdjęciu musi być jakikolwiek czarny lub biały punkt!
Jest jeszcze jedna rzecz, na którą warto zwrócić uwagę -- jasność skóry. Zazwyczaj nie warto ustawiać ekspozycji zdjęcia tak, aby na skórze występował kolor biały (jakkolwiek go zdefiniujemy, np. 253-255 na wszystkich kanałach RGB). Zwłaszcza, że operacje zwiększające kontrast jeszcze rozjaśnią najjaśniejsze miejsca.
Zgodnie z zone system, skóra powinna być w V, VI i VII strefie. Tłumaczy się to na wartości 132..213 dla kanału jasności w modelu LAB. Przekładając na oko: zaczynamy ciut poniżej średniej szarości 50%, kończymy na jasnej szarości 75%. W żadnym razie nie proponuję zachowań pixel-nazzi. Trzeba robić tak, aby wyglądało tak jak się chce. I już!

Czasem przydaje się podejrzeć na bieżąco jak rozkłada się jasność na zdjęciu. W tym celu stworzyłem "widget" do Photoshopa. Będzie o tym w innym poście :) Poniżej można zobaczyć jak działa:

Wywoływanie niedoświetlonych zdjęć

Można to robić używając (co najmniej) dwóch technik. Pierwsza z nich polega na zwiększeniu ekspozycji (Exposure) tak, aby na skórze prawie występowało prześwietlenie (czysty biały), a następnie obniżeniu jasności (Brightness) do sensownego poziomu (w okolicach 0).

Druga technika zakłada działanie odwrotne. Ustawiamy jasność (Brightness) na prawie-max, a następnie obniżamy ekspozycję (Exposure) wchodząc nawet na minus.

Pierwsza technika zachowuje dynamikę poniżej "ciemniejszych świateł". Niestety, w jasnych światłach straciliśmy detale -- prześwitujące przez drzewa światło zupełnie wypaliło drzewa. Problem ten rozwiązuje druga technika -- dobrze rozciąga jasne światła, uwydatniając szczegóły. Niestety, jednocześnie spłaszcza resztę zdjęcia -- widać to szczególnie na twarzy i rękach modelki.

Jak to naprawić? Globalne dodanie "recovery" do metody pierwszej daje rezultat gorszy niż zastosowanie metody drugiej. Opcji tej nie możemy niestety ustawić lokalnie za pomocą narzędzia Adjustment Brush. Możemy jednak w opcjach narzędzia ustawić prawie najmniejszą ekspozycję i największą jasność. Da to efekt zbliżony do metody #2.

Rozwiązanie to ma jednak poważną wadę -- jest czasochłonne! Każda niedokładność w maskowaniu będzie skutkowała stworzeniem ciemnej obwódki jasnego miejsca. Przydałby się w Lightroomie pędzel historii...

Myślę, że najszybciej jest: użyć metody 1, otworzyć w Photoshopie zdjęcie jako Smart Objcet, stworzyć kopię obiektu (Layer>Smart Object>New Smart Object via Copy), na kopii zastosować metodę 2, wymakować co trzeba i scalić.

Do pomyślenia

Chwila, chwila... Skoro RAWy są 12-14 bitowe, a wywoływane zdjęcie trafia do przestrzeni 16-bitowej, to nie powinniśmy stracić żadnych informacji! Niestety, tak się nie dzieje. Nawet jeśli wywołamy zdjęcie bez żadnych korekt (wszystkie suwaki ustawione na 0, łącznie z kontrastem na Tone Curve). W Camera Raw mogłem bez problemu wyciągnąć szczegóły ze świateł. Po wywołaniu zdjęcia, światła były całkowicie prześwietlone. Nie było tam żadnych szczegółów -- wszystkie pixele w badanym obszarze = (255,255,255). Nawet ekstremalna zmiana kształtu histogramu nie ujawniła żadnych detali.

Podsumowanie

Niezależnie od doboru oprogramowania do wywoływania RAWów spod znaku Adobe, techniczne możliwości wywoływania RAWów są identyczne. Praca w 16-bitowej przestrzeni barw daje duże możliwości ingerencji w zdjęcie bez istotnej straty jakości. Większość swoich zdjęć wywołuję korzystając z połączenia metody I i II: ustawiam ekspozycję dość wysoko, właściwą tonalność nadaję obniżając jasność prawie do zera. Później delikatnie zmniejszam ekspozycję. Kontrast i kolory poprawiam już podczas pracy w Photoshopie.

Ale uwaga -- to jest moja metoda! Nie twierdzę, że jest najlepsza z możliwych. Czytelników zachęcam do samodzielnych eksperymentów :)