Algorytm ośmiopunktowy
Algorytm ośmiopunktowy to algorytm używany w wizji komputerowej do oszacowania podstawowej macierzy lub podstawowej macierzy związanej z parą kamer stereo na podstawie zestawu odpowiednich punktów obrazu. Został wprowadzony przez Christophera Longueta-Higginsa w 1981 roku dla przypadku macierzy esencjalnej. Teoretycznie algorytm ten może być zastosowany również dla macierzy fundamentalnej, ale w praktyce bardziej odpowiedni jest w tym przypadku znormalizowany algorytm ośmiopunktowy , opisany przez Richarda Hartleya w 1997 roku.
Nazwa algorytmu wywodzi się z faktu, że estymuje on podstawową macierz lub podstawową macierz ze zbioru ośmiu (lub więcej) odpowiednich punktów obrazu. Jednak odmiany algorytmu mogą być stosowane dla mniej niż ośmiu punktów.
Ograniczenie współpłaszczyznowości
Geometrię epipolarną dwóch kamer i punktu w przestrzeni można wyrazić za pomocą równania algebraicznego. bez względu na to, gdzie znajduje się punkt P { należą tej samej Wywołaj współrzędne punktu w układzie odniesienia lewego oka i wywołaj współrzędne w X ramka odniesienia prawego oka i wywołanie i translacji między dwoma ramkami odniesienia st to związek między współrzędnymi dwóch układach odniesienia Poniższe równanie zawsze obowiązuje, ponieważ wektor wygenerowany z jest ortogonalny zarówno do klin }
Ponieważ , otrzymujemy
- .
Zastępując przez , otrzymujemy
Zauważ, że można traktować jako macierz; Longuet-Higgins użył symbolu, . Produkt jest często nazywany podstawową macierzą i oznaczany przez .
} } wektory współpłaszczyznowości Jeśli nazwiemy współrzędnymi rzutów na lewą i prawą płaszczyznę obrazu, wówczas ograniczenie współpłaszczyznowości można zapisać
Podstawowy algorytm
Podstawowy algorytm ośmiopunktowy jest tutaj opisany dla przypadku szacowania . Składa się z trzech kroków. Najpierw formułuje jednorodne równanie liniowe , którego rozwiązanie jest bezpośrednio związane z , a następnie rozwiązuje równanie, biorąc pod uwagę, że może nie mieć dokładnego Na koniec zarządza się wewnętrznymi ograniczeniami wynikowej macierzy. Pierwszy krok został opisany w artykule Longueta-Higginsa, drugi i trzeci krok to standardowe podejścia w teorii estymacji.
Ograniczenie zdefiniowane przez podstawową macierz jest
dla odpowiednich punktów obrazu reprezentowanych w znormalizowanych współrzędnych obrazu . Problem, który rozwiązuje algorytm, polega na określeniu punktów obrazu. , które dokładnie spełnia powyższe ograniczenie, może nie być możliwe wszystkie punkty. Kwestia ta została omówiona w drugim etapie algorytmu.
Krok 1: Formułowanie jednorodnego równania liniowego
Z
- i _
ograniczenie można również przepisać jako
Lub
Gdzie
- i
to znaczy reprezentuje podstawową macierz w postaci 9-wymiarowego wektora i ten wektor musi być prostopadły do wektora które można postrzegać jako reprezentację wektorową macierzy { y} ^ { .
Każda para odpowiednich punktów obrazu tworzy wektor . Biorąc pod uwagę zbiór punktów 3D, zbiorowi wektorów i wszystkie muszą zadowolić
dla wektora . Biorąc pod uwagę wystarczająco wiele ( najmniej osiem) liniowo niezależnych wektorów, możliwe wyznaczenie prosty sposób. Zbierz wszystkie wektory jako kolumny macierzy i musi być tak, że
Oznacza to, że jednorodnego równania liniowego .
Krok 2: Rozwiązanie równania
Standardowe podejście do rozwiązania tego równania implikuje, że osobliwym odpowiadającym wartości osobliwej równej zeru najmniej ośmiu liniowo niezależnych wektorów, wynika z tego, że ten pojedynczy wektor do skonstruowania można określić , a następnie
W przypadku, gdy do skonstruowania użyto więcej niż ośmiu odpowiednich punktów, , że nie ma on żadnej wartości osobliwej równej zeru. Przypadek ten występuje w praktyce, gdy na współrzędne obrazu wpływają różnego rodzaju szumy. Powszechnym podejściem do radzenia sobie z tą sytuacją jest opisanie jej jako najmniejszych kwadratów ; znajdź , który minimalizuje.
kiedy . Rozwiązaniem jest wybranie pojedynczej odpowiadającego najmniejszej wartości osobliwej . Ponowne uporządkowanie tej powrotem do daje wynik tego kroku, określanego tutaj jako .
Krok 3: Egzekwowanie wewnętrznego ograniczenia
Inną konsekwencją zajmowania się zaszumionymi współrzędnymi obrazu jest to, że wynikowa macierz może nie spełniać wewnętrznego ograniczenia podstawowej macierzy, to znaczy dwie z jej wartości osobliwych są równe i niezerowe, a druga jest zerowa. W zależności od zastosowania mniejsze lub większe odchylenia od ograniczeń wewnętrznych mogą stanowić problem lub nie. Jeśli krytyczne jest, aby oszacowana macierz spełniała wewnętrzne ograniczenia, można to osiągnąć, znajdując macierz rangi 2, która minimalizuje mi
gdzie wynikową z kroku 2 i Frobeniusa . Rozwiązanie problemu jest podane przez obliczenie najpierw rozkładu na wartości osobliwe mi :
gdzie to macierze ortogonalne, a to macierz diagonalna, która zawiera wartości pojedyncze mi . W idealnym przypadku jeden z elementów ukośnych mały w porównaniu z pozostałymi dwoma, które powinny być równe. W każdym razie ustaw
gdzie odpowiednio największą i drugą co do wielkości liczbą pojedynczą w Wreszcie jest podane przez
Macierz podstawowej macierzy dostarczonej przez algorytm
Algorytm znormalizowany
Podstawowy algorytm ośmiopunktowy można w zasadzie wykorzystać również do oszacowania macierzy fundamentalnej . Ograniczeniem definiującym dla jest .
gdzie są jednorodnymi reprezentacjami odpowiednich współrzędnych obrazu (niekoniecznie znormalizowanych). Oznacza to, że możliwe jest utworzenie macierzy w podobny sposób jak w przypadku macierzy zasadniczej i rozwiązanie równania
dla który jest przekształconą wersją . Postępując zgodnie powyżej, można następnie określić na podstawie zestawu ośmiu pasujących punktów. W praktyce jednak otrzymana macierz fundamentalna może nie być przydatna do określania ograniczeń epipolarnych.
Trudność
Problem polega na tym, że wynikowy źle uwarunkowany . Teoretycznie niezerowe. W praktyce jednak niektóre z niezerowych wartości osobliwych mogą stać się małe w stosunku do większych. odpowiednich punktów , gdzie współrzędne są tylko w przybliżeniu poprawne, może nie istnieć dobrze zdefiniowana wartość pojedyncza, którą można określić jako w przybliżeniu zero W konsekwencji rozwiązanie jednorodnego liniowego układu równań może nie być wystarczająco dokładne, aby było użyteczne.
Przyczyna
Hartley odniósł się do tego problemu oszacowania w swoim artykule z 1997 roku. analiza problemu pokazuje, że problem jest spowodowany złym rozkładem jednorodnych współrzędnych obrazu w . Typowa jednorodna reprezentacja współrzędnej obrazu 2D to }
gdzie oba w zakresie od 0 do 1000–2000 dla pierwsze dwie współrzędne zmieniają się w znacznie większym zakresie niż trzecia współrzędna. Ponadto, jeśli punkty obrazu, które są używane do konstrukcji, stosunkowo małym obszarze obrazu, na przykład w , ponownie wektor mniej więcej w tym samym kierunku dla wszystkich punktów. W konsekwencji pozostałe będą małe.
Rozwiązanie
Jako rozwiązanie tego problemu Hartley zaproponował, aby układ współrzędnych każdego z dwóch obrazów został niezależnie przekształcony w nowy układ współrzędnych zgodnie z następującą zasadą.
- Początek nowego układu współrzędnych powinien być wyśrodkowany (mieć swój początek) w środku ciężkości punktów obrazu. Osiąga się to poprzez tłumaczenie pierwotnego pochodzenia na nowe.
- Po translacji współrzędne są równomiernie skalowane, tak aby średnia odległości od początku do punktów była równa .
Zasada ta zwykle skutkuje odrębną transformacją współrzędnych dla każdego z dwóch obrazów. W rezultacie nowe jednorodne współrzędne obrazu są podane przez
gdzie to transformacje (translacja i skalowanie) ze starych do nowych znormalizowanych współrzędnych obrazu . Ta normalizacja zależy tylko od punktów obrazu, które są używane w pojedynczym obrazie i zasadniczo różni się od znormalizowanych współrzędnych obrazu wytwarzanych przez znormalizowaną kamerę.
Ograniczenie epipolarne oparte na macierzy fundamentalnej można teraz zapisać jako
gdzie . że możliwe jest użycie znormalizowanych jednorodnych współrzędnych obrazu podstawowej podstawowego ośmiopunktowego algorytmu opisanego powyżej
Celem przekształceń normalizacyjnych jest to, że macierz zbudowana ze znormalizowanych współrzędnych obrazu ma ogólnie lepszy numer warunku niż ma. Oznacza to, że rozwiązanie jest lepiej zdefiniowane jako rozwiązanie równania jednorodnego niż jest względny względem . Po określeniu i przekształceniu tego ostatniego w ¯ { Displaystyle wg
Ogólnie rzecz biorąc, to oszacowanie macierzy fundamentalnej jest lepsze niż oszacowanie na podstawie nieznormalizowanych współrzędnych.
Używanie mniej niż ośmiu punktów
do jednego równania ograniczającego na elemencie . Ponieważ wyznaczenia powinno wystarczyć tylko pięć par . David Nister zaproponował wydajne rozwiązanie do estymacji macierzy zasadniczej ze zbioru pięciu sparowanych punktów, znane jako algorytm pięciopunktowy. Hartley i in. glin. później zaproponował zmodyfikowany i bardziej stabilny pięciopunktowy algorytm oparty na algorytmie Nistera.
Zobacz też
Dalsza lektura
- Richard I. Hartley (czerwiec 1997). „W obronie ośmiopunktowego algorytmu”. Transakcje IEEE dotyczące rozpoznawania wzorców i inteligencji maszynowej . 19 (6): 580–593. doi : 10.1109/34.601246 .
- Richarda Hartleya i Andrew Zissermana (2003). Geometria wielu widoków w wizji komputerowej . Wydawnictwo Uniwersytetu Cambridge. ISBN 978-0-521-54051-3 .
- H. Christopher Longuet-Higgins (wrzesień 1981). „Algorytm komputerowy do rekonstrukcji sceny z dwóch projekcji”. Natura . 293 (5828): 133–135. Bibcode : 1981Natur.293..133L . doi : 10.1038/293133a0 . S2CID 4327732 .