Vady optiky

Cílem cvičení je se seznámit s odstranitelnými a neodstranitelnými vadami optiky, které náš život sužují během jakékoliv úlohy strojového vidění. Na začátku zjistíme, jak vady vznikají a jak jednotlivá nastavení kamery/objektivu ovlivňují jejich intenzitu. V druhém notebooku nás čeká úloha odstranění distorze.

Některé vady jsou viditelné pouze na některých objektivech. V naší laboratoři se nejčastěji setkáte s následujícími objektivy, které jednotlivé optické vady hezky demonstrují:

Dostupné ohniskové vzdálenosti 4 mm 8 mm 12 mm 16 mm 25 mm 35mm 50 mm 75 mm
Kowa
Computar

Při výběru objektivu je důležité zohlednit, pro jaký senzor je daný objektiv určen.

Dostupné objektivy Kowa jsou určeny pro senzory velikosti 1", které mají rozměry 12,8 mm x 9,6 mm.

Kowa pro senzor prac. vzdálenost [mm]
12 mm 1" 100
16 mm 1" 100
25 mm 1" 150
35 mm 1" 200
50 mm 1" 300

Objektivy Computar jsou určeny pro senzory velikosti 2/3", které mají rozměry 8,8 mm x 6,6 mm.

Computar pro senzor prac. vzdálenost [mm]
8 mm 2/3" 100
12 mm 2/3" 150
16 mm 2/3" 300
25 mm 2/3" 300
50 mm 2/3" 500
75 mm 2/3" 300

Instrukce ke cvičení

  • Před snímáním nastavte správně white balance kamery
  • Pro každou vadu nasnímáme snímek, na kterém bude vada co nejvíce viditelná, ale také snímek, na kterém se vada projevuje co nejméně. Na základě toho budeme vědět, jak se daná vada chová při jakém nastavení a jaký kompromis zvolit, abychom se ji co nejvíce vyvarovali.
  • Pro demonstraci každé vady vždy vyberte vhodný objektiv, abychom měli co porovnávat.
  • Snažte se objektivy vybírat tak, aby to pro danou vadu dávalo smysl. Zároveň se pokuste zamyslet, co přesně snímat (např. na čem mohu v labu vyzkoušet aberaci).
  • Všechny snímky před a po úpravách musí být stejně exponované. To znamená, že budou podobně světlé - mají podobný histogram

Import knihoven a konfigurace

from improutils import *

Pomocné funkce

Z následujících funkcí je potřeba vybírat ty vhodné pro splnění úkolu.

Seznam funkcí pro přehlednost:

[ 1 bod ]

1) Vinětace

Vytvořte snímek s co nejvíce viditelnou vadou vinětace. Následně snímejte stejnou scénu, ale nastavte vhodně kameru/objektiv, aby se vinětace projevila co nejméně. Snímky načtěte a zobrazte.

img_visible_vignette = ...(...) ###
img_minimized_vignette = ...(...) ###

...(img_visible_vignette, titles=["Visible vignette"]) ###
...(img_minimized_vignette, titles=["Minimized vignette"]) ###

2) Chromatická aberace

Vytvořte snímek s co nejvíce viditelnou vadou chromatické aberace. Následně snímejte stejnou scénu, ale nastavte vhodně kameru/objektiv, aby se chromatická aberace projevila co nejméně. Snímky načtěte a zobrazte.

img_visible_abber = ...(...) ###
img_minimized_abber = ...(...) ###

...(img_visible_abber, titles=["Visible chromatic abberation"]) ###
...(img_minimized_abber, titles=["Minimized chromatic abberation"]) ###

3) Difrakce

Vytvořte alespoň 5 snímků viz. přednáška, při snímání postupně zvyšujte clonové číslo od nejmenšího po největší, tak ať se co nejvíce projeví vada difrakce. Snažte se, aby byl histogram snímků podobný. Tj. aby byly snímky stejně exponované. Se zvyšujícím se clonovým číslem musíte prodlužovat expoziční čas, v malé míře můžete zvyšit také Gain.

imgs_diffraction = {...} ### use format {img_path: f_stop}

for img_path, f_stop in imgs_diffraction.items():
    img = ...(img_path) ###
    ...(img, titles=[f"{img_path}, f stop: {f_stop}"]) ###

4) Sweetspot

Vyberte snímek, z úkolu č. 3, při němž byl objektiv v tzv. sweet spotu. Popiště jaké clonové číslo jste zvolili a proč.

img_sweet_spot = ...(...) ###

...(img_sweet_spot, titles=["Sweet spot"]) ###