|   | 
	
	   
	Czy tylko obiektywy powodują aberracje chromatyczne?
	 Jacek Kardasiewicz 
	Czy tylko 	obiektywy powodują aberracje chromatyczne? Jaki obiektyw wybrać, aby uniknąć 
	problemu z aberracją chromatyczną? Jak robić zdjęcia, aby aberracje chromatyczne minimalizować? Zapewne niektórzy z nas stawiają sobie podobne 
	pytania, ale odpowiedzi bywają różne. Najczęściej pada odpowiedź w formie pytania. Jak taki drogi obiektyw może dawać takie koszmarne aberracje? Na 
	analogu był dużo lepszy. Ale, czy taka odpowiedź na pytanie zawsze ma sens i czy tylko obiektyw jest za aberracje odpowiedzialny? 
	 
	Na początek taka mała ściąga. W tym tekście występują pojęcia punkt światłoczuły, sensor i piksel. Używam ich w następującym znaczeniu: 
	sensor – pojedynczy element czuły na światło rejestrujący jedną składową koloru. 
	punkt światłoczuły – obszar 2 na 2 sensory rejestrujący pełną informację o kolorze. 
	piksel – najmniejszy kolorowy element składowy zarejestrowanego zdjęcia. 
	Pojęcia te są dość zbliżone, ale w istotny sposób różne, a jak różne, to widać między innymi, w różnych materiałach reklamowych, gdzie matryca o 6 
	milionach sensorów jest zachwalana i sprzedawana jako matryca o 6 milionach pikseli RGB. 
	 
	Jak już prawie wszyscy wiedzą  , jeden punkt światłoczuły matrycy (zespół sensorów rejestrujący kolorowy 
	fragment obrazu na potrzeby jednego nie interpolowanego piksela RGB) naświetlany jest przez rzeczywisty obszar zależny od kąta widzenia 
	obiektywu, rozmiaru i rozdzielczości matrycy oraz odległości obiektu od aparatu. Było o tym tu. 
	Nigdy nie jest to teoretyczny, idealny punkt, a zawsze kwadrat, okrąg lub coś pośredniego, a tak naprawdę to, co na zdjęciu będziemy odbierali jako 
	kwadrat o rozmiarach jednego piksela RGB. Rozmiarach, które można odnieść do fotografowanego obiektu i w przybliżeniu obliczyć. Powstaje jednak pytanie, 
	co to jest jeden punkt światłoczuły matrycy? Z punktu widzenia konstruktora matryc, najmniejszy element światłoczuły, to pojedynczy sensor, który w 
	zależności od ilości światła, które na niego pada zwraca pojedynczą wartość liczbową. W dokumentacjach aparatów podawane są wielkości matryc (np. 6 Mpix, 
	10 Mpix, 12 Mpix) oraz ilości "punktów" w pionie i w poziomie. Te informacje nie dotyczą jednak ilości punktów rejestrujących kolor obrazu, czy ilości 
	pikseli RGB, ale właśnie sumarycznej ilości pojedynczych sensorów czułych na światło. Wszystko byłoby prawdziwe, gdyby nie fakt, że pojedynczy sensor, 
	czyli element światłoczuły w matrycach z interpolacją Bayera nie rejestruje koloru tylko poziom jasności. Aby zarejestrować kolor trzeba użyć co 
	najmniej trzech sensorów, które będą rejestrowały kolory dla potrzeb pojedynczego piksela RGB (R-czerwony, G-zielony i B-niebieski). Matryca to 
	prostokątna siatka pojedynczych sensorów, które rozłożone są w jej węzłach. Przyjęto więc, że w matrycach obok siebie znajdą się cztery sensory tworzące 
	kwadrat 2 na 2, które będą rejestrowały składowe koloru RGBG. Taki zespół czterech sensorów można nazwać punktem światłoczułym matrycy, ponieważ to 
	właśnie on rejestruje kompletny zestaw informacji barwnej, która przekształcana jest następnie na jeden piksel RGB. Wynika z tego, że 
	sensorów rejestrujących kolor zielony będzie dwa razy więcej niż sensorów dla koloru czerwonego i niebieskiego. Taki układ sensorów wygląda 
	następująco: 
	 
	GBGBGBGBGBGB 
	RGRGRGRGRGRG 
	GBGBGBGBGBGB 
	RGRGRGRGRGRG  
	 
	Wyraźnie widać, że dowolny kwadrat o wymiarach 2 na 2 sensory pozwala na odczytanie jednej składowej R, jednej składowej B i dwóch składowych G. Bez 
	trudu można zauważyć, że faktyczna rozdzielczość matrycy D50/D70, której zadaniem jest rejestrowanie kolorowych pikseli RGB, to nie 3008 na 2000 
	pikseli RGB, tylko 1504 na 1000 pikseli RGB. Czyli rzeczywista wielkość matrycy wyrażona w pikselach RGB, powinna być w odniesieniu do ilości 
	pojedynczych sensorów, podzielona przez 4, bo tylko tyle jest sensorów czerwonych i niebieskich, czyli tylko tyle pikseli RGB można zarejestrować. 
	Bez rejestracji koloru czerwonego lub niebieskiego trudno raczej mówić o rejestracji koloru piksela RGB. Wielkość matrycy taka właśnie by była, gdyby 
	nie zastosowano rozwiązania interpolacyjnego, które powoduje, że ilość uzyskiwanych pikseli RGB wzrasta czterokrotnie. Ale wzrasta tylko pozornie. 
	Każdy element światłoczuły leży w środku większego kwadratu o wymiarach 3 na 3 sensory, czyli można utworzyć aż cztery zestawy RGBG z udziałem każdego 
	pojedynczego sensora. Pozornie wracamy do rozdzielczości 3008 na 2000 punktów, ale to już nie jest to samo. Są to już piksele interpolowane. Można 
	zapytać, co w tym złego. Odpowiedź jest bardzo prosta – spada ostrość rejestrowanego obrazu i nie tylko ostrość, ale o tym później. Jeśli jeden 
	fizyczny sensor ma wpływ na kolor aż czterech sąsiednich pikseli, to oznacza, że następny sensor też na wpływ na cztery sąsiednie piksele i tak 
	dalej, i tak dalej. W efekcie następuje rozmycie obrazu. Jeśli w idealnych warunkach uda się nam zarejestrować pionową czarną linię o grubości 
	dokładnie jednego teoretycznego piksela, narysowaną na białym tle, czyli linię, która ma grubość dwóch sensorów, to oczekujemy, że w efekcie na 
	zdjęciu zobaczymy bardzo ostrą linię pionową o grubości jednego piksela. Nic bardziej mylnego. Ta ostra pionowa linia, ze względu na interpolację, 
	rozmyje się i da obraz pionowego pasa o grubości aż trzech sąsiednich pikseli - pikseli przekształconych przez algorytm interpolacji. Przy czym 
	kolor środka tego pasa o grubości trzech pikseli będzie czarny, a kolor dwóch zewnętrznych pikseli będzie szary (50% bieli tła i 50% czerni linii). 
	W efekcie coś, co chcieliśmy zarejestrować w sposób idealnie ostry, wyjdzie rozmyte (bez ostrych krawędzi), a ten obszar rozmycia wyrażony w pikselach 
	RGB będzie trzy razy większy niż linia wzorcowa.  
	 
	Można więc iść dalej w ograniczaniu rozdzielczości naszej matrycy i powiedzieć, że jej faktyczna rozdzielczość w poziomie leży gdzieś pomiędzy 
	1504, a 1002 pikseli RGB. Po uśrednieniu tych wartości (połowa rozmycia powodowanego przez interpolację dotyczy koloru linii, a połowa koloru tła) 
	daje to rozdzielczość około 1253 pikseli RGB. Dla rozdzielczości pionowej musimy zrobić takie same przeliczenia i w efekcie otrzymamy 1253 na 833 
	pikseli RGB. Ale to jeszcze nie koniec. Przed matrycą mamy filtr AA, który nieco "rozmywa" nasz obraz. W zależności od modelu aparatu i zastosowanego 
	filtra AA te "rozmycia" są różne, ale tu przyjmiemy, że zasięg filtra AA to tylko jeden sąsiedni sensor matrycy. W rzeczywistości jest to zapewne 
	zdecydowanie większy obszar oddziaływania – co najmniej jeden piksel RGB, czyli dwa sensory, ale tu do obliczeń przyjmijmy, że tylko jeden sensor. Co 
	więc otrzymamy? Otrzymamy informację, że jeden zestaw RGBG, czyli jeden naświetlany punkt matrycy ma wpływ na kolor aż pięciu sąsiednich pikseli RGB 
	w poziomie – taki właśnie pionowy pas o grubości pięciu pikseli na białym tle zostawi na matrycy wzorcowa czarna linia o grubości jednego piksela RGB. 
	W efekcie otrzymamy rzeczywistą rozdzielczość naszej matrycy z D50/D70 i będzie to około 602 na 400 pikseli RGB. Można dyskutować, jaka część 
	rozmytego, szarego pasa należy do linii, a jaka jeszcze do białego tła, ale nie zmienia ta faktu, że nasza idealna pionowa linia o grubości jednego 
	piksela zostanie zarejestrowana jako pionowy pas złożony z pięciu pikseli o różnej skali szarości na białym tle. Należy przy tym pamiętać, że zasięg 
	działania filtra AA, założony podczas obliczeń, to tylko jeden sensor (jeśli przyjąć, że ten zasięg to dwa sensory, to nasza wzorcowa cienka linia dałaby 
	szary pas o szerokości siedmiu pikseli RGB). Rozdzielczość 3008 na 2000 pikseli RGB o 12-to bitowej głębi koloru jest więc tylko chwytem 
	marketingowym, który bez żadnych dodatkowych wyjaśnień zastąpił w folderach reklamowych i w dokumentacji pojęcie ilości sensorów, ilością 
	interpolowanych pikseli RGB (dla D200 będzie trochę lepiej, ale nadal niewiele, bo odpowiada to wartościom około 774 na 518 pikseli RGB). 
	 
	Zastanówmy się co z tego wszystkiego wynika. Zastosowanie filtra Bayera i filtra AA powoduje nie tylko rozmycie obrazu, ale również to, że kolor 
	naszej wzorcowej cienkiej czarnej linii na białym tle będzie się rozkładał na pięć sąsiednich pikseli RGB, zapewne w sposób zbliżony do krzywej Gaussa, 
	choć o tym decyduje w dużej mierze oprogramowanie interpretujące obraz. Na krawędziach tej linii będzie kolor jasnoszary, bliżej środka - nieco 
	ciemniejszy, ale taż szary, a w środku tego obszaru - najciemniejszy, ale nie czarny. Tu swoją rolę odgrywa filtr AA, który powoduje, że nawet ten 
	środkowy piksel, który powinien być czarny, zostanie rozjaśniony przez wpływ sąsiednich białych pikseli należących do tła. Aby otrzymać rzeczywiście 
	czarną linię (choćby jeden czarny piksel w środku tej linii), musimy zrobić zdjęcie linii grubszej niż jeden piksel, grubszej o wartość wynikającą z 
	rzeczywistego zasięgu działania filtra AA, czyli z punktu widzenia odwzorowania koloru realna rozdzielczość matrycy będzie jeszcze mniejsza. 
	 
	Czas na wnioski. Jeśli chcemy otrzymać linię o właściwym odwzorowaniu koloru (przynajmniej w środku tej linii), to w założonych warunkach, linia musi 
	mieć grubość co najmniej siedmiu interpolowanych pikseli RGB. Każda linia ostra w oryginale, stanie się nieostra na zdjęciu i będzie miała łagodne 
	przejście od koloru linii do koloru tła, wymagające co najmniej dwóch pikseli po każdej stronie. To samo dotyczy granic dowolnych kolorowych 
	obszarów. Problem nieco się komplikuje, jeśli linia lub granica obszaru nie jest pozioma, ani pionowa, tylko leży pod innym kątem do poziomego układu 
	sensorów matrycy. Najgorszym przypadkiem jest położenie tej linii pod kątem 45 stopni do poziomu – minimalny obszar rozmycia zwiększa się wówczas o 
	pierwiastek z dwóch, czyli z dwóch do około trzech pikseli RGB, po każdej stronie linii. Przejście od koloru zbliżonego do koloru oryginalnej linii do 
	koloru tła wymaga więc aż trzech pikseli po obu stronach tej linii. Jeśli chcemy zarejestrować czarny punkt i spowodować, żeby w środku 
	zarejestrowanego obszaru znalazł się rzeczywiście choć jeden piksel koloru czarnego, to na zdjęciu zobaczymy go jako obszar o rozmiarze 7 na 7 pikseli. 
	Pamiętać też trzeba o tym, że matryca rejestruje kolory pośrednie, których w rzeczywistości nie ma. Te odcienie szarości z powyższego przykładu, to 
	jedynie idealny model. W rzeczywistości kolor każdego piksela RGB jest wyznaczany w drodze interpolacji koloru kilkunastu sąsiednich pikseli, a 
	otrzymywany w ten sposób kolor wynikowy takiego piksela niejednokrotnie potrafi zadziwić. 
	 
	Jaki to wszystko ma wpływ na efekty uzyskiwane na zdjęciach. Ten wpływ jest dość intuicyjny i nazywa się aberracja chromatyczna. Jeśli robimy zdjęcie 
	ciemnej gałęzi na tle jasnego nieba to spodziewamy się ostrej krawędzi pomiędzy ciemną gałęzią i jasnoniebieskim niebem. Innych barw nie 
	przewidujemy. W rzeczywistości przejście pomiędzy kolorem ciemnobrązowym lub ciemnoszarym, a jasnoniebieskim kolorem nieba wymaga dwóch, trzech lub 
	więcej pikseli z każdej strony gałęzi. Kolor tych pikseli będzie się stopniowo zmieniał od jasnoniebieskiego nieba do ciemno brązowej gałęzi, 
	przechodząc przez odcienie pośrednie, które będą wypadkową wartości wielu sensorów matrycy. Jeśli obraz gałęzi będzie niezbyt ostry (problemy z 
	ostrością obiektywu, głębią ostrości, lub z wielkością rzeczywistego obszaru naświetlającego pojedynczy punkt matrycy i uśrednianiem koloru), to ta 
	liczba pikseli znajdujących się w obszarze przejścia od koloru gałęzi do koloru nieba będzie jeszcze większa. W pewnych warunkach nie zobaczymy nawet 
	koloru gałęzi, tylko nieostry obszar o kolorze szaroniebieskim lub fioletowym. Te nieszczęsne gałęzie są często dość odległe od aparatu, czyli 
	zaczyna dawać o sobie znać zjawisko przedstawione tu. Taka rzeczywista gałąź może być znacznie cieńsza niż to, co może zarejestrować 
	jeden punkt światłoczuły matrycy, czyli zestaw czterech sąsiednich sensorów. W tym przypadku, już uśredniony kolor wejściowy padający na matrycę, będzie 
	zmieniony w takich proporcjach, w jakich gałąź wypełnia obszar rejestrowany przez jeden punkt światłoczuły matrycy. Jeśli ta gałąź jest dostatecznie 
	cienka, to nie zostanie zarejestrowany kolor gałęzi, tylko, na przykład, 30% koloru gałęzi i 70% jasnoniebieskiego koloru nieba. Co więcej często nie 
	jesteśmy nawet w stanie przewidzieć jaki będzie ten uśredniony kolor. Jedno jest pewne – będzie to jakiś kolor z dużym udziałem składowej niebieskiej. 
	Co z tego wyjdzie nie trzeba chyba nikomu tłumaczyć - dostaniemy piękny "fiolecik". I ten "fiolecik" będzie przetwarzany przez algorytm interpolacji oraz przez 
	filtr AA, w połączeniu z niebieskim kolorem tła (niebo) dając jeszcze inne odcienie pośrednie. Wrażenie "fioletowej" obwódki będzie jeszcze bardziej 
	wzmacniane, poprzez dodatkowe rozmycie granic kolorowych plam. A co będzie, jeśli na tle bardzo jasnego nieba sfotografujemy żółtego ptaszka? Oczywiście 
	też będzie kolorowa obwódka, tyle że o innym zestawie barw – mniej kłujących w oczy. 
	 
	Takie przejścia pomiędzy kolorami na naszych zdjęciach są wszędzie, można je wyraźnie obserwować powiększając w programie graficznym dowolne zdjęcie. 
	Powiększając je znacznie bardziej, niż do 100%, aż zobaczymy poszczególne piksele RGB. Różnokolorowe interpolowane piksele w obszarach przejść 
	pomiędzy obszarami będą wszędzie (najlepiej widoczne w tych miejscach, gdzie zdjęcie jest ostre), ale nie wszędzie są tak dobrze widoczne jak w przypadku 
	ciemnych gałęzi, czy drutów na tle jasnego nieba. A wniosek? Wniosek jest prosty. Ten rodzaj aberracji chromatycznej nie dotyczy obiektywu tylko 
	cyfrowej matrycy. Aberracja powodowana przez obiektyw tylko się na to nakłada i jest bardzo skutecznie wzmacniana. Wiedzą o tym producenci 
	aparatów, wie również Nikon. Ta wiedza skłoniła go do wprowadzenia do programu Nikon Capture funkcji minimalizacji aberracji chromatycznej, którą 
	można włączyć na stałe. Funkcja programu, jak to funkcja, działa automatycznie i nie zawsze jest w stanie automatycznie wszystko wykryć i 
	skorygować. Korygować może tylko te błędy, których mechanizm powstawania jest znany projektantom, czyli te, które są wprowadzane przez interpolację 
	pikseli i filtr AA. Natomiast tego, co dociera do matrycy z obiektywu (wpływ uśredniania koloru dla pojedynczych punktów światłoczułych i rzeczywiste 
	aberracje chromatyczne obiektywu) programowo korygować zazwyczaj się już nie da. Dlatego pomimo zastosowania algorytmu korekcji, na zdjęciach widzimy 
	piękne kolorowe (najczęściej fioletowe) obwódki wokół różnych ciemnych detali. Te fioletowe najszybciej wpadają nam w oko. Jak działa taki program? 
	Stara się on analizować obraz i wykrywać granice kolorowych plam, a jeśli takie granice znajdzie, stara się możliwie maksymalnie, ale bez przesady, 
	zmniejszać obszar przejścia jednego koloru w drugi. Ale nie może robić tego zawsze i wszędzie, bo to również wzmacniałoby szum. Algorytm nie wie gdzie 
	była oryginalna krawędź, czyli zazwyczaj robi ją gdzieś w środku obszaru przejścia, o ile taki obszar prawidłowo wykryje. Działania takie, w 
	połączeniu z interpolacją koloru pikseli mogą czasem dawać wrażenie nieznacznego pogrubiania cienkich linii. Ale te wszystkie korekcje są 
	możliwe tylko wówczas, jeśli różnice kolorów dwóch sąsiednich obszarów są na tyle duże, aby algorytm mógł rozpoznać je jako krawędź – jako granicę dwóch 
	różnych kolorowych obszarów. Jeśli te kolory są do siebie zbliżone lub obszary są niewielkie to algorytm musi potraktować je jako łagodne przejścia 
	tonalne i po prostu je pominie, a tym samym pozostawi na zdjęciu nieostrości. To były jedynie rozważania o możliwych do zastosowania 
	algorytmach. Każdy program robi to inaczej i rzeczywiste metody wyszukiwania i minimalizacji aberracji na pewno są bardziej skomplikowane. 
	 
	Czas na wnioski końcowe. Rzeczywista rozdzielczość matryc cyfrowych wyrażona w rzeczywistych (nie interpolowanych) pikselach RGB jest dużo mniejsza od 
	tej, którą producenci podają w materiałach reklamowych i w dokumentacji – ot, taki bajer reklamowy związany z interpolacja Bayera
	 . 
	Metoda interpolacji koloru poszczególnych pikseli RGB oraz filtr AA są bezpośrednią i bardzo istotną przyczyną powstawania aberracji chromatycznych 
	w fotografii cyfrowej, obiektywy są tu winne w mniejszym stopniu niż matryca i dlatego w fotografii analogowej aberracja stanowiła o wiele mniejszy 
	problem. Interpolacja koloru pikseli RGB i filtr AA powodują istotny spadek ostrości rejestrowanego obrazu związany z celowym rozmywaniem informacji 
	docierających do obiektywu z zewnątrz. Recepta na poprawę ostrości zdjęć i eliminację aberracji chromatycznej powodowanej przez matrycę wydaje się 
	prosta – to rezygnacja z interpolacji koloru pikseli oraz rezygnacja z filtra AA, ale kto by wówczas kupił lustrzankę cyfrową ze wszechobecną morą 
	i matrycą o rzeczywistej wielkości 1,5 Mpix (D50/D70), czy 2,5 Mpix (D200)?
      
	Powrót do Technics 
	  |