home

Disparita v základním smyslu vyjadřuje rozdíl. V případě stereo disparity se jedná o rozdíl mezi pozicemi stejného bodu na dvou různých snímcích stejné scény - levého a pravého snímku. Čím blíž je objekt ke kameře, tím větší je jeho "skok" mezi snímky. To umožňuje převést hodnotu disparity například na odstíny šedi - čím větší disparita, tím větší hodnota. V konečném důsledku tak jsou objekty blíž ke kameře světlejší. Mapa disparity tak nabízí určitý druh informace o hloubce ve scéně (při známých parametrech kamer je možné hloubku vypočítat přesně). Problém samozřejmě představují oblasti, o kterých máme informaci jen z jediného snímku. Tyto oblasti jsou například na levé straně levého snímku, nebo na "hranách" mezi blízkými a vzdálenými objekty. V těchto oblastech vznikají nespojitosti v mapě disparity v důsledku nedostatku informace.


left disparity right disparity disparity map discontinuity
Levý pohled Pravý pohled Mapa disparity Nespojitosti

Základní algoritmus:

Porovnávat je možné hranové obrazy, texturní charakteristiky, šedotónové nebo barevné obrazy. Možná je i kombinace více příznaků. Čím lépe zvolené charakteristiky, tím lepší je výsledek. Vhodné je také omezit hledání podobného bodu, na určitou vzdálenost a penalizovat podobné body ve velké vzdálenosti. Důležitým parametrem je i velikost okna, které se porovnává.

velikost okna

Kód pro výpočet mapy disparity v Matlabu: disparity.zip.