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.

Brak komentarzy:

Prześlij komentarz