Osmibodový algoritmus - Eight-point algorithm

The osmibodový algoritmus je algoritmus používaný v počítačové vidění odhadnout základní matice nebo základní matice vztahující se ke dvojici stereofonních kamer ze sady odpovídajících obrazových bodů. To bylo představeno Christopher Longuet-Higgins v roce 1981 pro případ základní matice. Teoreticky lze tento algoritmus použít i pro základní matici, ale v praxi normalizovaný osmibodový algoritmus, který popsal Richard Hartley v roce 1997, je pro tento případ vhodnější.

Název algoritmu je odvozen od skutečnosti, že odhaduje základní matici nebo základní matici ze sady osmi (nebo více) odpovídajících obrazových bodů. Varianty algoritmu však lze použít pro méně než osm bodů.

Omezení koplanárnosti

Příklad epipolární geometrie. Dvě kamery s příslušnými středy projekčních bodů ÓL a ÓR, pozorujte bod P. Projekce P na každé z obrazových rovin pL a pR. Body EL a ER jsou epipoly.

Jeden může vyjádřit epipolární geometrie dvou kamer a bodu v prostoru s algebraickou rovnicí. Všimněte si toho, bez ohledu na to, kde to má smysl je ve vesmíru, vektory , a patří do stejné roviny. Volání souřadnice bodu v referenčním rámci levého oka a zavolejte souřadnice v referenčním rámečku pravého oka a zavolejte rotace a translace mezi dvěma referenčními snímky s.t. je vztah mezi souřadnicemi ve dvou referenčních rámcích. Následující rovnice vždy platí, protože vektor generovaný z je kolmý k oběma a  :

Protože , dostaneme

.

Výměna s , dostaneme

Dodržujte to lze považovat za matici; Longuet-Higgins použil tento symbol naznačit to. Produkt se často nazývá základní matice a označeno .

Vektory jsou rovnoběžné s vektory a proto platí omezení koplanárnosti, pokud tyto vektory dosadíme. Pokud zavoláme souřadnice projekcí do levé a pravé obrazové roviny, pak může být omezení koplanárnosti zapsáno jako

Základní algoritmus

Zde je popsán základní osmibodový algoritmus pro případ odhadu základní matice . Skládá se ze tří kroků. Nejprve formuluje a homogenní lineární rovnice, kde řešení přímo souvisí , a poté rovnici vyřeší, přičemž vezme v úvahu, že nemusí mít přesné řešení. Nakonec jsou spravována vnitřní omezení výsledné matice. První krok je popsán v práci Longuet-Higgins, druhý a třetí krok jsou standardní přístupy v teorii odhadu.

Omezení definované základní maticí je

pro odpovídající obrazové body představované v normalizovaných souřadnicích obrazu . Problém, který algoritmus řeší, je určit pro sadu odpovídajících obrazových bodů. V praxi jsou obrazové souřadnice obrazových bodů ovlivněny šumem a řešení může být také nadměrně určeno, což znamená, že nemusí být možné najít který splňuje výše uvedené omezení přesně pro všechny body. Tato otázka je řešena ve druhém kroku algoritmu.

Krok 1: Formulace a homogenní lineární rovnice

S

a a

omezení lze také přepsat jako

nebo

kde

a

to je představuje základní matici ve formě 9-dimenzionálního vektoru a tento vektor musí být na vektor kolmý což lze považovat za vektorovou reprezentaci matice .

Každá dvojice odpovídajících obrazových bodů vytváří vektor . Vzhledem k sadě 3D bodů to odpovídá množině vektorů a všichni musí uspokojit

pro vektor . Vzhledem k dostatečně velkému počtu (nejméně osmi) lineárně nezávislých vektorů je možné určit přímočarým způsobem. Sbírejte všechny vektory jako sloupce matice a pak to tak musí být

Tohle znamená tamto je řešení a homogenní lineární rovnice.

Krok 2: Řešení rovnice

To naznačuje standardní přístup k řešení této rovnice je levý singulární vektor z odpovídající a singulární hodnota to se rovná nule. Za předpokladu, že alespoň osm lineárně nezávislých vektorů se používají ke konstrukci z toho vyplývá, že tento singulární vektor je jedinečný (bez ohledu na skalární násobení) a v důsledku toho a pak lze určit.

V případě, že ke konstrukci je použito více než osm odpovídajících bodů je možné, že nemá žádnou singulární hodnotu rovnou nule. K tomuto případu dochází v praxi, když jsou souřadnice obrazu ovlivněny různými typy šumu. Běžným přístupem k řešení této situace je popsat ji jako a celkem nejméně čtverců problém; nalézt což minimalizuje

když . Řešením je vybrat si jako levý singulární vektor odpovídající nejmenší singulární hodnota . Změna pořadí zpět do a matice dává výsledek tohoto kroku, zde označovaného jako .

Krok 3: Prosazování vnitřního omezení

Dalším důsledkem řešení hlučných souřadnic obrazu je, že výsledná matice nemusí uspokojit vnitřní omezení základní matice, to znamená, že dvě z jejích singulárních hodnot jsou stejné a nenulové a druhá je nula. V závislosti na aplikaci mohou nebo nemusí být menší nebo větší odchylky od vnitřního omezení problém. Pokud je kritické, aby odhadovaná matice splňovala vnitřní omezení, lze toho dosáhnout vyhledáním matice 2. úrovně, která se minimalizuje

kde je výsledná matice z kroku 2 a Frobeniova maticová norma se používá. Řešení problému je dáno nejprve výpočtem a rozklad singulární hodnoty z :

kde jsou ortogonální matice a je diagonální matice, která obsahuje singulární hodnoty . V ideálním případě jeden z diagonálních prvků by měla být nula nebo alespoň malá ve srovnání s ostatními dvěma, které by měly být stejné. V každém případě nastavte

kde jsou největší a druhou největší singulární hodnotou v resp. Konečně, je dána

Matice je výsledný odhad základní matice poskytnutý algoritmem.

Normalizovaný algoritmus

Základní osmibodový algoritmus lze v zásadě použít také pro odhad základní matice . Definující omezení pro je

kde jsou homogenní reprezentace odpovídajících obrazových souřadnic (není nutné normalizovat). To znamená, že je možné vytvořit matici podobným způsobem jako u základní matice a řešit rovnici

pro což je přetvořená verze . Postupováním podle výše uvedeného postupu je pak možné určit ze sady osmi shodných bodů. V praxi však výsledná základní matice nemusí být užitečná pro určení epipolárních omezení.

Obtížnost

Problém je, že výsledný často je špatně podmíněný. Teoreticky, by měl mít jednu singulární hodnotu rovnou nule a zbytek je nenulový. V praxi se však některé nenulové singulární hodnoty mohou vzhledem k větším zmenšit. Pokud se ke konstrukci použije více než osm odpovídajících bodů , kde jsou souřadnice pouze přibližně správné, nemusí existovat dobře definovaná singulární hodnota, kterou lze identifikovat jako přibližně nulu. V důsledku toho nemusí být řešení homogenního lineárního systému rovnic dostatečně přesné, aby bylo užitečné.

Způsobit

Hartley se tímto problémem odhadu zabýval ve svém článku z roku 1997. Jeho analýza problému ukazuje, že problém je způsoben špatným rozložením homogenních obrazových souřadnic v jejich prostoru, . Typická homogenní reprezentace souřadnice 2D obrazu je

kde oba leží v rozmezí 0 až 1000 - 2000 pro moderní digitální fotoaparát. To znamená, že první dvě souřadnice v se mění v mnohem větším rozsahu než třetí souřadnice. Dále, pokud obraz ukazuje, které se používají ke konstrukci leží v relativně malé oblasti obrazu, například v , opět vektor body ve více či méně stejném směru pro všechny body. Jako následek, bude mít jednu velkou singulární hodnotu a zbývající jsou malé.

Řešení

Jako řešení tohoto problému Hartley navrhl, aby se souřadnicový systém každého ze dvou obrazů nezávisle transformoval do nového souřadnicového systému podle následujícího principu.

  • Počátek nového souřadného systému by měl být vycentrován (mít svůj počátek) na těžiště (těžiště) obrazových bodů. Toho je dosaženo překladem původního původu do nového.
  • Po překladu jsou souřadnice rovnoměrně upraveny tak, aby se střední vzdálenost od počátku k bodu rovnala .

Tento princip obvykle vede ke zřetelné transformaci souřadnic pro každý ze dvou obrazů. Výsledkem jsou nové homogenní souřadnice obrazu jsou dány

kde jsou transformace (překlad a změna měřítka) ze starého do nového normalizované souřadnice obrazu. Tato normalizace je závislá pouze na obrazových bodech, které jsou použity v jediném snímku, a je obecně odlišná od normalizovaných obrazových souřadnic vytvořených normalizovanou kamerou.

Epipolární omezení založené na základní matici lze nyní přepsat na

kde . To znamená, že je možné použít normalizované homogenní souřadnice obrazu odhadnout transformovanou základní matici pomocí základního osmibodového algoritmu popsaného výše.

Účelem normalizačních transformací je matice , zkonstruované z normalizovaných obrazových souřadnic, má obecně lepší číslo podmínky než má. To znamená, že řešení je lépe definována jako řešení homogenní rovnice než je relativní k . Jednou byl rozhodnut a přetvořen do to druhé může být deaktivováno dát podle

Obecně je tento odhad základní matice lepší, než jaký by byl získán odhadem z nenormalizovaných souřadnic.

Použití méně než osmi bodů

Každý pár bodů přispívá jednou omezující rovnicí prvku v . Od té doby má pět stupňů volnosti, proto by to mělo stačit k určení pouze pěti dvojic bodů . I když je to z teoretického hlediska možné, praktická implementace není přímá a spoléhá se na řešení různých nelineárních rovnic.

Kaveh Fathian a kol. navrhované algoritmy pro pět, šest a sedm bodů, které obcházejí výpočet základní matice přímým výpočtem rotačního čtveřice.[1][2]

Viz také

Reference

  1. ^ Fathian, Kaveh (2018). „QuEst: Kvartérní přístup k odhadu pohybu fotoaparátu z minimálních bodů funkcí“. IEEE Robotics and Automation Letters. arXiv:1704.02672. doi:10.1109 / LRA.2018.2792142.
  2. ^ Fathian, Kaveh (2018). "Odhad relativní pozice kamery pro vizuální servoování pomocí čtveřic". Robotika a autonomní systémy. doi:10.1016 / j.robot.2018.05.014.

Další čtení

  • Richard I.Hartley (červen 1997). „Na obranu osmibodového algoritmu“. Transakce IEEE na rozpoznávání vzorů a strojové inteligenci. 19 (6): 580–593. doi:10.1109/34.601246.
  • Richard Hartley a Andrew Zisserman (2003). Geometrie více pohledů v počítačovém vidění. Cambridge University Press. ISBN  978-0-521-54051-3.
  • H. Christopher Longuet-Higgins (září 1981). "Počítačový algoritmus pro rekonstrukci scény ze dvou projekcí". Příroda. 293 (5828): 133–135. doi:10.1038 / 293133a0.