4.8. Kalibrace na senzoru¶
Surový výstup pixelové buňky ještě není připraven k použití. Než data opustí senzor, aplikuje se na ně několik korekcí – částečně v křemíku čipu, částečně v kódu ovladače, který čip programuje – aby se vypořádaly s nedokonalostmi, které senzor cestou zavádí. Provádějí se v pevném pořadí na každém snímku: nejprve trimování pevného vzorového šumu (FPN) sloupců, poté odečtení úrovně černé, dále korekce vadných pixelů a nakonec korekce stínování objektivem. Vědět, co každá z nich dělá, je důležité, protože obraz, který se dostane k uživatelskému kódu, jimi již všemi prošel.
4.8.1. Korekce FPN sloupců¶
Každý sloupec senzoru má vlastní zesilovač a sloupcový ADC a drobné výrobní rozdíly mezi nimi znamenají, že každý sloupec se čte mírně odlišně od svých sousedů. Bez korekce se tento pevný vzor projeví jako slabé svislé pruhy ve výstupu – pruhy zůstávají na místě snímek od snímku, protože pocházejí ze samotného křemíku, nikoli ze scény. Senzor změří posun a trimování zisku jednotlivých sloupců ve výrobě, uloží je do své kalibrační paměti ROM a aplikuje je při každém čtení ještě před spuštěním jakékoli další korekce. Provedení tohoto kroku jako prvního umožňuje zbytku řetězce předpokládat, že se každý sloupec chová stejně, včetně tmavých referenčních pixelů, které poté využívá kalibrace úrovně černé.
4.8.2. Kalibrace úrovně černé¶
Nula ADC – digitální hodnota, která by měla odpovídat prázdné fotodiodě – není dokonale stabilní. Posouvá se s teplotou, s kolísáním napájecího napětí a mírně i od pixelu k pixelu. Bez korekce by se dokonale tmavý snímek nečetl jako nula; každý pixel by nesl malý kladný temný posun.
Standardní řešení je zahrnout řádky nebo sloupce na okraji senzoru, které jsou fyzicky zakryté kovem, takže se k nim nikdy nedostane žádné světlo. Jejich digitální hodnoty udávají skutečnou temnou referenci za aktuálních provozních podmínek. Senzor čte tyto zakryté pixely v každém snímku, zprůměruje je po řádcích nebo sloupcích a tento průměr odečte od každého ostatního pixelu. Světlé pixely pak pro neosvětlenou fotodiodu vycházejí s nulovou hodnotou bez ohledu na teplotu nebo kolísání napájení.
4.8.3. Korekce vadných pixelů¶
Malá část pixelů v každém senzoru je vadná – čtou konstantní hodnotu (trvale vysokou nebo trvale nízkou) bez ohledu na to, kolik světla na ně dopadá. Některé vady pocházejí z výrobní variability a další se pomalu hromadí během životnosti senzoru (obvyklým viníkem jsou zásahy kosmického záření během dlouhých období provozu).
Moderní senzory to za běhu řeší malým prostorovým filtrem. V každém snímku se každý pixel porovná se svými sousedy stejné barvy; každý pixel, který leží dostatečně daleko mimo lokální medián, aby byl nevěrohodný, je nahrazen hodnotou odvozenou z těchto sousedů. Filtr zachytí jak výrobní vady, tak ty, které se vyvinou později, aniž by potřeboval kalibrovanou mapu vadných pixelů pro jednotlivé senzory, a vada je ve výstupu neviditelná.
4.8.4. Korekce stínování objektivem¶
Pokles cos⁴ v kombinaci s mechanickým vinětováním z pouzdra objektivu dává každému nekorigovanému snímku znatelné ztmavení rohů. Hardware korekce stínování objektivem (LSC) na senzoru to kompenzuje vynásobením každého pixelu ziskem, který závisí na jeho poloze ve snímku – 1.0 ve středu, plynule rostoucí směrem k rohům, aby sledoval převrácenou hodnotu naměřené křivky poklesu.
Senzor poskytuje hardware pro násobení, ale samotná mapa zisku je odpovědností MCU. Ovladač zapisuje mapu do LSC registrů senzoru při startu, buď z kalibrace, kterou ovladač ukládá, nebo z čerstvého měření vůči plochému referenčnímu terči. Některé senzory kompresují mapu do malé sady polynomiálních koeficientů, aby ji registry na čipu mohly pojmout.
LSC závisí na objektivu. Výměna objektivů posune křivku poklesu, takže mapa LSC kalibrovaná pro jeden objektiv nebude odpovídat jinému – nesprávně aplikovaná mapa vypadá jako tmavé rohy (nedostatečná korekce) nebo jasné skvrny v rozích (nadměrná korekce).