Szia urak. Bayertelenítünk.
Nem az 5. párttagkönyvet tépjük szét mérgünkben. De nem is szenzort fogjuk lecsutakolni, bár az is egy izgalmas témakör és nem kizárt, hogy egyszer majd megcselekedjük. Igaz is, ha valaki ilyen célra feldobná a kameráját, (természetesen az eredmény abszolúte nem garantált), akkor szívesen legyaluljuk róla a bayer szűrőt.
Szóval van a Nikon D5000 szenzora, ami névlegesen 4288*2848 pixeles, ami nagyjából 12 megapixel. Persze nem pont ennyi, inkább 4310*2868 pixel, de ehhez már DCRAW kell (mi a GUI-t használjuk), ugyanis még a CameraRaw is visszavágva mutatja meg. Amúgy bevett szokás visszavágni a szegélyeket (több gépemnél is ez van), mert azokat nincs miből interpolálni. Persze nem most szálltunk le a falvédőről, tehát tisztában vagyunk vele, hogy ez a szenzor nagyjából csak 4 megapixeles és az is jóindulattal, 6Mpx a zöld csatornán és 3-3Mpx a vörös-kék csatornákon. Ilyen rendszert főzött nekünk Bayer úr a Kodaknál. Ez persze nem ilyen egyszerű, mert a bayer pigmentek nem tökéletesen szűrnek komplementert, és ismerve a pontos karakterisztikát, okos algoritmusokba a szomszédos szűrők alá beszivárgott információt is be lehet építeni. Ezt találtam a bayer színáteresztésére, jobb nincs, ezt szeretjük:
Forrás |
Piros felvételi szűrővel készült JPEG, illetve a demozaikolás előtti NEF Bayer-képe. |
A D5000 szenzorának kellős közepe |
A megfelelő pixeleket a nekik megfelelő csatornára másolva, megkapjuk a bayerszűrő elrendezését ezen a területen. Hogy valójában ez a négy elrendezés közül melyik, nem tudjuk, mert ugye melyik 4 pixelt nevezzük ki kezdőpixelnek? A kép széle sem árul el erről sokat, amúgy sem megbízható, látjuk, hogy különféle szoftverek különböző számú pixelt csalnak el a szélekről. A kép legközepe tehát RGGB. Ennyi legyen elég egyelőre.
Ebben az esetben a demozaikolás egy sima kiátlagolás lesz, a vörös csatornán 1%, a zöldön 62%, a kéken 81%.
A kapott szín pedig: R254 G119 B67. Elég mosott, fakó, de ne felejtsük el, hogy nem tudjuk a DCRAW hogyan csinál a 12 bites RAW-ból (amin mellesleg nincs se profil, se görbék, se korrekció - vagy pont de) 8 bites szürkeskálást.
A fenti cuccot megismételtük a RawTherapy segítségével. Ez tud szenzor-mintázatot is mutatni, színesben. A kék pixeleket default még nem tudjuk mi okból feketének jeleníti meg, de hogyha a Therapee munka profilját kiütjük (none), vagy a kék csatorna blackpointját bizgetjük, akkor kikékíthetőek. A szürkeskálás 8 bites pixelértékek köszönő viszonyban sincsenek a DCRAW által generáltakkal. Itt valamilyen profilt használ, a DCRAW esetén meg a jóisten se tudja mi történik.
De ennyiért nem fogjuk megtanulni a RawTherapy használatát. Amúgy kismillió demozaikoló beállítás van benne, egyszer majd sort kerítünk arra is, mert jó mókának tűnik. Hátha addig sikerül választ találni arra a kérdésre is, hogyan lehet hozzáférni a tényleges, módosítatlan RAW adatokhoz.
A Sony F828 RGBE filtert használ. A színek visszaadását állítólag javítja, de ennek további felbontáscsökkenés az ára. Azért valamit elárul az is, hogy nem uralta el a piacot ez a szűrőfajta. A miénk ráadásul egy házilag infrásított szenzor. Meg sem kíséreljük szimulálni a mozaikolását. Mellesleg van már olyan technológia a piacon, hogy egyetlen exponálás hatására 4 kép készül 1 pixelnyi shiftelésekkel. Így gyakorlatilag a vörös-kék csatornák teljes felbontásúak lesznek, a zöld csatorna meg kétszeres felbontású. Még keressük a módszert, hogyan tudnánk ehhez kapcsolódni házi módszerrel. Update: módszer 1, módszer2.
Persze egy igazi képnél a demozaikolás, nem sima átlagolás, egy bonyolult algoritmust igényel, de még így is keletkezhet hiba, például akkor, hogyha a finom részletek méretei egy nagyságrendbe esnek a pixelméretekkel. Így fest demozaik előtt, jól látható, hogy a fölső vonalak közötti rések 3-4 pixelesek.
És ilyen lesz a demozaik után. Az alsó vonalak rései (6-7pixel) már elegendőek a helyesen interpolációhoz.
D5000 demosaic chroma error. |
Nincsenek megjegyzések:
Megjegyzés küldése