4.8. Kalibrasi pada sensor¶
Output mentah dari sel piksel belum siap untuk digunakan. Sejumlah koreksi diterapkan padanya sebelum data meninggalkan sensor -- sebagian di silikon chip, sebagian dalam kode driver yang memprogram chip -- untuk menangani ketidaksempurnaan yang diperkenalkan sensor di sepanjang jalan. Koreksi ini berjalan dalam urutan tetap pada setiap bingkai: pemangkasan fixed-pattern noise (FPN) kolom terlebih dahulu, kemudian pengurangan level hitam, kemudian koreksi piksel cacat, kemudian koreksi lens-shading. Mengetahui apa yang dilakukan masing-masing penting karena citra yang mencapai kode pengguna sudah melalui semuanya.
4.8.1. Koreksi FPN kolom¶
Setiap kolom sensor memiliki amplifier dan ADC kolomnya sendiri, dan variasi manufaktur kecil di antara keduanya berarti setiap kolom membaca sedikit berbeda dari tetangganya. Tanpa koreksi, pola tetap ini muncul sebagai goresan vertikal samar dalam output -- goresan tetap di tempat dari bingkai ke bingkai karena berasal dari silikon itu sendiri daripada dari adegan. Sensor mengukur offset per kolom dan trims gain di pabrik, menyimpannya di ROM kalibrasi, dan menerapkannya pada setiap pembacaan sebelum koreksi lebih lanjut berjalan. Melakukan ini pertama kali membuat pipeline lainnya mengasumsikan setiap kolom berperilaku dengan cara yang sama, termasuk piksel referensi gelap yang digunakan kalibrasi level hitam berikutnya.
4.8.2. Kalibrasi level hitam¶
Nol ADC -- jumlah digital yang seharusnya sesuai dengan fotodioda kosong -- tidak stabil sempurna. Nilainya berubah dengan suhu, dengan variasi tegangan suplai, dan sedikit dari satu piksel ke piksel berikutnya. Tanpa koreksi, bingkai yang gelap sempurna tidak akan terbaca sebagai nol; setiap piksel akan membawa offset gelap positif kecil.
Perbaikan standar adalah menyertakan baris atau kolom di tepi sensor yang secara fisik ditutupi oleh logam sehingga tidak ada cahaya yang pernah mencapainya. Jumlah digital mereka memberikan referensi gelap yang sebenarnya pada kondisi operasi saat ini. Sensor membaca piksel yang ditutupi tersebut setiap bingkai, meratakannya per baris atau kolom, dan mengurangkan rata-rata dari setiap piksel lainnya. Piksel cahaya kemudian keluar dengan jumlah nol untuk fotodioda yang tidak diterangi, terlepas dari suhu atau pergeseran suplai.
4.8.3. Koreksi piksel cacat¶
Sebagian kecil piksel dalam sensor mana pun adalah cacat -- mereka membaca nilai konstan (tersangkut tinggi atau tersangkut rendah) terlepas dari berapa banyak cahaya yang mencapainya. Beberapa cacat berasal dari variasi manufaktur, dan lebih banyak yang terakumulasi secara perlahan selama masa pakai sensor (tumbukan sinar kosmik selama periode operasi yang panjang adalah penyebab yang umum).
Sensor modern menangani ini secara real-time dengan filter spasial kecil. Setiap bingkai, setiap piksel dibandingkan dengan tetangga warna yang sama; setiap piksel yang berada cukup jauh di luar median lokal sehingga tidak masuk akal diganti dengan nilai yang diturunkan dari tetangga tersebut. Filter ini menangkap cacat pabrik maupun yang berkembang kemudian, tanpa memerlukan peta piksel buruk yang dikalibrasi per sensor, dan cacat tidak terlihat dalam output.
4.8.4. Koreksi lens-shading¶
Penurunan cos⁴ yang dikombinasikan dengan vignetting mekanis dari rumah lensa memberikan setiap bingkai yang tidak terkoreksi penggelapan sudut yang terlihat. Hardware lens-shading correction (LSC) pada sensor mengkompensasi dengan mengalikan setiap piksel dengan gain yang bergantung pada posisinya dalam bingkai -- 1.0 di pusat, naik dengan halus menuju sudut untuk mengikuti kebalikan dari kurva penurunan yang diukur.
Sensor menyediakan hardware penggali, tetapi peta gain itu sendiri adalah tanggung jawab MCU. Driver menulis peta ke register LSC sensor saat start-up, baik dari kalibrasi yang disimpan driver atau dari pengukuran segar terhadap target referensi datar. Beberapa sensor mengompresi peta menjadi set kecil koefisien polinomial sehingga register on-chip dapat menampungnya.
LSC bergantung pada lensa. Mengganti lensa menggeser kurva penurunan, sehingga peta LSC yang dikalibrasi untuk satu lensa tidak akan cocok dengan yang lain -- peta yang diterapkan secara salah terlihat seperti sudut yang redup (koreksi kurang) atau bintik sudut yang terang (koreksi berlebihan).