wytwarzanie widokowej reprezentacji obiektów wg koncepcji sfery

Transkrypt

wytwarzanie widokowej reprezentacji obiektów wg koncepcji sfery
WYTWARZANIE WIDOKOWEJ
REPREZENTACJI OBIEKTÓW
WG KONCEPCJI SFERY WIDOKOWEJ
Z RZUTOWANIEM
PERSPEKTYWICZNYM
Monika Dąbkowska, Wojciech S. Mokrzycki*
[email protected], [email protected]
Zespół Grafiki i Przetwarzania Obrazów
Instytu Podstaw Informatyki PAN
Ordona 21, 01–237 Warszawa
*oraz Instytut Automatyki Systemów Dowodzenia
Wojskowa Akademia Techniczna
Kaliskiego 2, 00–908 Warszawa
STRESZCZENIE
Opracowanie dotyczy metody tworzenia dokładnego 2 21 W modelu widokowego wielościanów
wypukłych (z ich pełnego 3W modelu powierzchniowego) przeznaczonego dla systemów identyfikacji
wizualnej. Przedstawiona jest tu koncepcja generowania standardowych 2 21 W widoków modelu, ze sferą
jako przestrzenią widokową i rzutowaniem perspektywicznym — w odróżnieniu od powszechnie
stosowanego rzutowania równoległego. Takie podejście pozwala uzyskać widoki bardziej adekwatne do
danych o rzeczywistych obiektach jakich może dostarczyć wizualny system akwizycji 2 21 W danych.
SŁOWA KLUCZOWE
wizualna identyfikacja obiektów, widokowa reprezentacja obiektów, sfera widokowa, rzutowanie perspektywiczne, warunek widoczności ścian, widok, aspekt, obszar jednowidokowy, kompletność reprezentacji.
WSTĘP
Wiedza, jaką posiadać musi system identyfikacji wizualnej obiektów do rozwiązywania zadań
wizualnych, to opis obiektów. Stworzenie takich opisów nie jest jednak sprawą trywialną. Należy
bowiem rozstrzygnąć, jaki typ modelu wybrać.
Występują tutaj co najmniej dwie możliwości:
• budowa formalnych modeli (reprezentacji) obiektów — konstruowanie pełnych dokładnych
modeli obiektów oraz, ewentualnie, budowa specjalnych modeli przeznaczonych do identyfikacji
(aspektowych, widokowych, itp.) na podstawie (dokładnych) modeli pełnych,
• tworzenie przybliżonej reprezentacji obiektów na podstawie pozyskanych danych wizualnych
o scenie, obrazów czy map głębi (map zasięgu).
Po skonstruowaniu modeli przeznaczonych do identyfikacji proces rozpoznawania obiektów sprowadza
się do pasowania elementów bazy modeli z danymi wywiedzionymi z informacji wizualnej o scenie.
W rozważanej przez nas koncepcji identyfikacji wizualnej 3W obiektów w oparciu o 2 21 W dokładne mo-
dele widokowe, występują obiekty widzialne, sztywne i nieprzezroczyste, a sama identyfikacja jest typu
powierzchniowego (ang. surface-based), co oznacza, że odbywa się w oparciu o informację zawartą w
powierzchni (powłoce) obiektu.
W ogólności modele do identyfikacji mogą mieć różne postacie:
• struktur lub zbiorów (charakterystycznych) obrazów lub widoków (aspektów), budowanych
ręcznie (tj. dane geometryczne o obiekcie, często zgrubne, niekompletne, są ręcznie wprowadzane
do systemu) lub automatycznie z wykorzystaniem dokumentacji technologicznej typu CAD lub w
jeszcze inny sposób,
• specjalnych układów — „wytrenowanych” sieci (np. logicznych czy neuronalnych) z
wykorzystaniem zbioru obiektów treningowych (tj. modeli „wyuczonych” z wielu obrazów) i
zależności statystycznych.
Znanych jest wiele różnych reprezentacji obiektów geometrycznych. Jedną z nich jest reprezentacja
powłokowa (ang. Brep), w której obiekt definiuje się przez podanie geometrycznych i fotometrycznych
charakterystyk jego powierzchni. Stanowi ona wystarczający (pełny i dokładny) opis obiektu, może być
wykorzystana jako podstawa do tworzenia widoków obiektu, a także używa jej przeważająca liczba
badaczy przy projektowaniu modeli dla systemów identyfikacji wizualnej. Nie nadaje się ona jednak
wprost do samej identyfikacji. Opisuje bowiem obiekty w 3W lokalnym układzie współrzędnych obiektu
i nie jest uporządkowana ze względu na możliwe widoki. Stąd niezbędna jest reprezentacja inna,
przeznaczona specjalnie na potrzeby wizualnej identyfikacji obiektów, np. reprezentacja widokowa
w postaci bazy modeli (widoków).
Baza modeli to zbiór M = {m1, m2, …, mn}, gdzie mi (i = 1..n) jest reprezentacją powłokową obiektu. Z
drugiej strony, mi = {fi1, fi2, …, fip}, fij = 1..p, jest zbiorem płatów powierzchniowych i ich wzajemnych
przestrzennych zależności.
(Gdy powierzchnie redukują się do płaszczyzn, mamy do czynienia z wielościanami, dla których identyfikacja typu „surface-based” przekształca się w „edge-based”. Znikają bowiem geometryczne charakterystyki powierzchniowe, a cechy wyróżnione redukują się do krawędzi i ich układów w widokach (aspektów) oraz, ewentualnie, fotometrycznych charakterystyk ścian albo (co na jedno wychodzi) do układów sąsiednich ścian wielościanów. Gdy powierzchnie ścian są gładkie i jednobarwne, powierzchnie
obiektu stają się bezcechowe, a jedynymi cechami na obiekcie są krawędzie i ich układy. W takich sytuacjach za cechy wyróżnione przyjmowane są właśnie krawędzie i ich układy.)
Nie sposób wybrać właściwą reprezentację obiektu, gdy nie weźmie się pod uwagę celu, jakiemu ma ona
służyć, tj. identyfikacji wizualnej obiektów w oparciu o bazę modeli.
Zadanie identyfikacji wizualnej 3W obiektów w oparciu o bazę 2 21 W dokładnych modeli widokowych,
w ogólnym spojrzeniu, zawiera następujące podetapy:
• określenie klasy obiektów, jakie system będzie w stanie rozpoznawać (tzn. jakie mogą się pojawić
w zadaniu) i zbudowanie dla nich modeli pełnych, uwzględniających kompletne (geometrycznofotometryczne) charakterystyki powierzchniowe,
• określenie zadania identyfikacji i wybranie, spośród wszystkich cech, zawierających się w
powierzchniach obiektów (w pełnych modelach obiektów), cech wyróżnionych dla
zdefiniowanego zadania identyfikacji, w oparciu o które identyfikacja będzie prowadzona
(bowiem użyta do identyfikacji cecha zależy od konkretnego zastosowania),
• wygenerowanie 2 21 W dokładnych modeli widokowych, w oparciu o wybrane cechy wyróżnione,
dla każdego z obiektów, które system będzie w stanie identyfikować,
• zbudowanie bazy wszystkich widoków wszystkich modeli,
• pozyskanie danych wizualnych o scenie i na ich podstawie zrekonstruowanie widocznych
powierzchni obiektów, np. z mapy głębi sceny (opracowanie algorytmu rekonstrukcji), opierając
się na własnościach geometryczno-fotometrycznych powierzchni, które wystąpią w mapie głębi
(zrekonstruowanie tych powierzchni),
• spasowanie każdego z obiektów występujących na scenie z jednym (lub wieloma) widokami z
bazy widoków (zwykle zakłada się pasowanie wyglądu każdego z obiektów na scenie z każdym
widokiem z bazy).
KONCEPCJA SFERY WIDOKOWEJ Z RZUTOWANIEM PERSPEKTYWICZNYM
Elementy przestrzeni widokowej: mała i duża sfera oraz stożek widokowy
Wprowadzamy nowy schemat budowy widokowej reprezentacji obiektów, odmienny od znanej z
literatury koncepcji sfery widokowej (z rzutowaniem równoległym). Ten nowy schemat nazywamy
koncepcją sfery widokowej z perspektywą (SWP) (z rzutowaniem środkowym), [15,19]. W dalszej
części artykułu zakłada się, dla uproszczenia rozumowania, że obiektami, dla których tworzony jest
model widokowy są nieprzezroczyste wielościany wypukłe.
Rys. 1. Ilustracja do koncepcji „sfery widokowej z perspektywą”
Idea tego schematu jest następująca: niech będzie dany obiekt O ze środkiem geometrycznym w punkcie
(0,0,0), dla którego zamierzamy stworzyć reprezentację widokową. Opiszmy na tym obiekcie sferę (małą,
o promieniu r) w taki sposób, by środki geometryczne obiektu O i tej sfery pokrywały się (wówczas co
najmniej jeden wierzchołek wielościanu będzie leżał na sferze). Skonstruujmy stożek widokowy o kącie
rozwarcia 2α i nałóżmy go na sferę — możliwie najbliżej wierzchołka (którym jest punkt widokowy
PW). Rozważmy teraz taki ruch stożka widokowego, że stale obejmuje on ściśle (małą) sferę opiętą na
obiekcie oraz, że sfera wraz z obiektem pozostają cały czas nieruchome. Wówczas wierzchołek stożka
widokowego (punkt PW) zakreśli (dużą) sferę zwaną sferą widokową z perspektywą (SWP), rys.1.
Stożek widokowy jest modelem obszaru widzenia obserwatora (kamery, układu wizualnego systemu
rozpoznającego), dla którego właściwym jest postrzeganie rzeczy w rzutowaniu perspektywicznym, a nie
równoległym. Punkt widokowy PW to położenie obserwatora, a zarazem środek rzutowania
perspektywicznego.
Promień R sfery widokowej zależy od kąta rozwarcia stożka widokowego 2α oraz promienia r (małej)
sfery opiętej na obiekcie O zgodnie z następującym wzorem:
R=
r
sin α
r = maxi=1..k
2
xvi + yvi
2
+ zvi
2
Sfera widokowa SWP jest więc miejscem geometrycznym punktu widokowego PW rzutowania
środkowego przy założeniu maksymalnego wypełnienia pola widzenia stożka przez obiekt. Kierunkiem
rzutowania (osią widokową) jest prosta przechodząca przez środek sfery SWP oraz wierzchołek
rzutowania (punkt PW).
(Kąt 2α rozwarcia stożka widokowego jest parametrem technicznym głowicy akwizycyjnej (kamery), za
pomocą której pozyskiwane są wizualne dane wejściowe o scenie. Parametr ten uwzględniamy jednak już
na etapie tworzenia modelu widokowego obiektu, by możliwie najbardziej odpowiadał informacji o scenie uzyskiwanej potem za pośrednictwem kamery.)
Przedstawiona koncepcja sfery widokowej z perspektywą gwarantuje, że widoki obiektu zdejmowane są
zawsze z tej samej odległości od środka obiektu, co w efekcie prowadzi do otrzymania zestawu
zestandaryzowanych widoków perspektywicznych obiektu.
Widok, aspekt, obszar jednowidokowy, kompletność reprezentacji
Wybierzmy na sferze SWP dowolny punkt widokowy PW i obliczmy, które cechy wyróżnione obiektu są
z tego punktu widoczne (przy zachowaniu kąta widzenia 2α). Zestaw widocznych wyróżnionych cech
obiektu nazywamy widokiem, a ich wzajemny układ (w widoku) — aspektem. Widok jest ograniczony
konturem widoku — linią oddzielającą część widoczną obiektu od części niewidocznej — w przypadku
wielościanu jest to zbiór ostatnich widocznych krawędzi. Widoki uzyskane dla różnych punktów widokowych mogą się charakteryzować tym samym aspektem bądź kilkoma różnymi aspektami. Widoki
mające ten sam aspekt uznajemy za identyczne, a o widokach różnych mówimy wtedy, gdy ich aspekty
są różne. Zbiór punktów PW na sferze widokowej, dla których zdjęte widoki mają ten sam aspekt,
nazywamy obszarem jednowidokowym, [15,19] (jest to spójny, wielokątny wycinek sfery). Relacja
pomiędzy aspektami (czyli układami cech na powierzchni obiektu) a obszarami jednowidokowymi (na
sferze) jest wzajemnie jednoznaczna: dany aspekt może być widziany z dokładnie jednego obszaru
jednowidokowego oraz z każdego punktu danego obszaru jednowidokowego można zobaczyć tylko
jeden aspekt obiektu. Oznacza to, że dla danego obiektu i wybranego zestawu jego cech wyróżnionych,
liczba aspektów widokowych jest równa liczbie obszarów jednowidokowych na sferze widokowej.
Zatem, pokrywając w pełni SWP obszarami jednowidokowymi otrzymujemy pełny zestaw aspektów widokowych, czyli mamy zapewnioną kompletność widokowej reprezentacji tego obiektu.
W dalszych rozważaniach będziemy używać jeszcze dwóch następujących terminów odnoszących się do
danego widoku: wianek nieznikania oraz wianek niepojawiania się. Wianek nieznikania jest utworzony
przez te ściany widoczne, które przylegają do konturu widoku. Wianek niepojawiania się jest
utworzony przez niewidoczne ściany obiektu przylegające do konturu widoku, [15,19]. Zmiana aspektu
widoku następuje po takim przemieszczeniu punktu widokowego PW, które powoduje zmianę
przynajmniej w jednym z wianków ścian.
Rys. 2. Ilustracja pojęć: widok, obszar jednowidokowy, wianki ścian
Pojęcie aspektu widoku oraz obszaru jednowidokowego w przestrzeni (na sferze) widokowej są
jednymi z podstawowych pojęć widokowej reprezentacji obiektów. W naszej koncepcji generowania
widoków, pojęcie obszaru jednowidokowego jest mechanizmem, który umożliwia osiągnięcie i
stwierdzenie kompletności modelu widokowego.
Dany obszar jednowidokowy ograniczony jest krawędziami (łukami na sferze), z których każda należy
albo do tego obszaru albo do obszaru sąsiedniego (ale nigdy do obu obszarów jednocześnie). Wybrana
krawędź należy do danego obszaru, gdy została ona utworzona przez płaszczyznę ściany wianka niepojawiania się, jeśli zaś krawędź leży na płaszczyźnie ściany wianka nieznikania, to jest częścią obszaru sąsiedniego.
Obszar jednowidokowy można wyznaczyć na dwa sposoby:
• bezpośredni — wyznacza się granice zamkniętego obszaru na sferze widokowej, takiego, że z
każdego jego punktu widać ten sam aspekt,
• pośredni, incydentalny — wyznacza się położenia PW, dla których określone ściany modelu są
widoczne jako linie, a określone krawędzie jako punkty, czyli znajduje się przejścia między sąsiednimi obszarami jednowidokowymi.
Warunki widoczności ścian dla wielościanu wypukłego
Aby ściana wielościanu wypukłego była (w pełni) widoczna, muszą być spełnione dwa następujące
warunki:
• cała ściana musi znajdować się w stożku widokowym, czyli kąt widzenia ściany, βi, musi być nie
większy od kąta α półrozwarcia stożka widokowego kamery (βi < α),
• kąt między wektorem normalnym ściany i tworzącą stożka widokowego musi być większy od kąta
π
prostego (θi > ).
2
OBLICZANIE OBSZARÓW JEDNOWIDOKOWYCH PRZY UŻYCIU KONCEPCJI
STOŻKÓW DOPEŁNIAJĄCYCH
Wprowadźmy jeszcze jedno nowe pojęcie — stożka dopełniającego. W przypadku ogólnym (dla całego
modelu) stożek dopełniający to stożek współosiowy ze stożkiem widokowym, o wierzchołku w punkcie
(0,0,0), tworzącej prostopadłej do tworzącej stożka widokowego i podstawie wspólnej ze stożkiem
widokowym. Dla brył regularnych spełniony jest warunek, że kierunki wektorów normalnych ścian
widocznych mieszczą się w kącie rozwarcia stożka dopełniającego, natomiast kierunki wektorów normalnych ścian niewidocznych są poza tym stożkiem. W sytuacji, gdy punkt widokowy porusza się po
sferze widokowej, zmieniają swe położenie także stożek widokowy i stożek dopełniający, natomiast
nieruchome pozostają model obiektu i wektory normalne jego ścian. Przy określonym torze ruchu punktu
widokowego (wzdłuż pewnego koła wielkiego sfery widokowej) można wskazać ten wektor normalny,
który jako pierwszy zetknie się z powierzchnią tworzącą stożka dopełniającego (wskutek ruchu tegoż
stożka). Płaszczyzna ściany, która mu odpowiada, tworzy jedną krawędź obszaru jednowidokowego, tą,
którą przetnie punkt widokowy poruszając się w ustalonym kierunku.
Rys. 3. Poruszanie punktem widokowym
W przypadku brył nieregularnych nie dla wszystkich widoków zachowana jest własność, że w tak
skonstruowanym stożku dopełniającym mieszczą się zawsze wektory normalne ścian widocznych, a
wektory normalne ścian niewidocznych są poza stożkiem. Aby rozwiązanie uogólnić na wszystkie
widoki wielościanów wypukłych należało „zindywidualizować” stożki widokowe i dopełniające.
Indywidualny stożek widokowy jest określony dla każdej ściany z obu wianków — jego osią jest nadal
oś widokowa, a wierzchołkiem punkt widokowy, ale jego kąt rozwarcia jest mniejszy: wyznacza go nowa
tworząca, która przechodzi przez ten z wierzchołków ściany, który jest najbardziej oddalony od osi
widokowej. Tym najbardziej oddalonym wierzchołkiem będzie jeden z końców krawędzi konturu
widoku. Indywidualny stożek dopełniający ma tą samą oś i wierzchołek (w punkcie (0,0,0)), a jego
tworząca jest prostopadła do tworzącej indywidualnego stożka widokowego.
Rys. 4. Stożki indywidualne
Stożki indywidualne mogą zostać użyte w ten sposób, że po wyliczeniu widoku i wianków ścian, dla
każdej z tych ścian wyznacza się parę stożków indywidualnych. Następnie oblicza się kąt jaki tworzy
wektor normalny ściany z tworzącą indywidualnego stożka dopełniającego dla ściany. Gdy znane są kąty
dla wszystkich ścian wianków, wybiera się spośród nich ten, który jest najmniejszy. Płaszczyzna
odpowiadającej mu ściany utworzy jedną krawędź obszaru jednowidokowego.
PODSUMOWANIE
Przedstawiliśmy nową koncepcję automatycznego generowania dokładnych 2 21 W reprezentacji
widokowych 3W obiektów, przeznaczonych do identyfikacji wizualnej, zwaną sferą widokową z
rzutowaniem perspektywicznym. Różni się ona od znanej z literatury sfery widokowej (z rzutowaniem
równoległym) tym, że wprowadza takie parametry tworzenia modeli, jakie występują na etapie
pozyskiwania danych wizualnych o scenie (przez system kamerowy): rzutowanie perspektywiczne, kąt
rozwarcia stożka widokowego. Naturalnym wynikiem zastosowania tej koncepcji jest standaryzacja widoków (wszystkie widoki obiektu są zdejmowane z tej samej odległości od środka obiektu) i narzucenie
warunku na pozyskiwanie danych wizualnych (obiekt powinien wypełniać pole widokowe kamery).
Zaproponowana przez nas realizacja tej koncepcji generowania widokowej reprezentacji obiektów
umożliwia wypełnienie jednego z jej podstawowych wymogów: kompletności reprezentacji
(kompletności zbioru widoków ze względu na cechy obiektów wyróżnione w danym zadaniu
identyfikacji).
BIBLIOGRAFIA
1990
[1] Bowyer K.W., Dyer Ch.R.: Aspect Graphs: An Introduction and Survey of Recent Results, SPIE,
1395
[2] Chen S., Freeman H.: Computing Characteristic Views of Quadric-surfaced Solids, Proc. 10th Int.
PR, pp. 77–82
[3] Gigus Z., Malik J.: Computing the Aspect Graph for Line Drawings of Polyhedral Objects, IEEE
Trans. PAMI, 12(2), pp. 113–122
[4] Stewman J.H., Bowyer K.W.: Direct Construction of the Perspective Projection Aspect Graph of
Convex Polyhedra, CVGIP, 51(1), pp. 20–37
1991
[5] Flynn P.J., Jain A.K.: CAD-Based Computer Vision: from CAD Models to Relational Graphs,
IEEE Trans. PAMI, 13(2), pp. 114–132
[6] Flynn P.J., Jain A.K.: BONSAI: 3D Object Recognition Using Constained Search, IEEE Trans.
PAMI, 13(10), pp. 1166–1175
[7] Gigus Z., Canny J., Seidel R.: Efficiently Computing and Representing Aspect Graph of Polyhedral
Objects, IEEE Trans. PAMI, 13(6), pp. 542–551
1992
[8] Koch R.: Model-based 3D Scene Analysis from Stereoscopic Image Sequences, Proc. Int. Soc.
Photogram. Remote Sens. (Washington, DC), Aug.
[9] Ponce J., Petitjean S., Kriegman D.J.: Computing Exact Aspect Graphs of Curved Objects, Proc.
ECCV'92, Santa Margarita Ligure, Italy, LNCS, 588, pp. 599–614
1994
[10] Ambroszkiewicz S.: Rozpoznawanie wielościanów wypukłych w oparciu o mapę głębi, Raport
Prace IPI PAN, nr 748, Warszawa
[11] Kriegman D.J., Ponce J.: Representations for Recognizing Complex Curved 3D Objects, Object
Representation in Computer Vision. Proc. Int. NSF-ARPA Workshop, NY, pp. 125–138, Dec.
[12] Pentland A., Sclaroff S.: Object Recognition and Categorization Using Model Matching, Proc.
Second CAD-Based Vision Workshop, pp. 258–265, Feb.
1995
[13] Shashua A.: Multiple-View Geometry and Photometry, Proc. 2nd Asian Conf. on CV, ACCV'95,
Singapore, pp. 395–404, Dec.
[14] Xiaobu Y.: A Mechanism of Automatic 3D Object Modelling, IEEE Trans. PAMI, 17(3), pp. 307–
311
1996
[15] Dąbkowska M., Mokrzycki W.S.: Generowanie widoków 3W obiektów do systemu wizualnej
identyfikacji. Raport Prace IPI PAN, nr 809, Warszawa
[16] Hlavač V., Leonardis A., Werner T.: Automatic Selection of Reference Views for Image-Based
Scene Representations, Proc. 4th ECCV'96, vol. 1, Cambridge, UK, LNCS, 1064, pp. 526–535,
Apr.
[17] Rothwell C., Mundy J., Hoffman B.: Representing Objects Using Topology, Proc. Int. Workshop
ECCV'96, Cambridge, UK, pp. 79–108, Apr.
[18] Tarabanis K., Tsai R.Y., Kaul A.: Computing Occlusion-Free Viewpoints, IEEE Trans. PAMI,
18(3), pp. 279–292
1997
[19] Dąbkowska M., Mokrzycki W.S.: A Multiview Model of Convex Polyhedra, MG&V, 6(4), pp.
419–450
[20] Dorai C., Weng J., Jain A.K.: Optimal Registration of Object Views Using Range Data, IEEE
Trans. PAMI, 19(10), pp. 1131–1138
[21] Madsen C.B., Christensen H.I.: A Viewpoint Planning Strategy for Determining True Angles on
Polyhedral Objects by Camera Alignment, IEEE Trans. PAMI, 19(2), pp. 158–163
[22] Shimshoni I., Ponce J.: Finite-Resolution Aspect Graph of Polyhedral Objects, IEEE Trans. PAMI,
19(4), pp. 315–327
1998
[23] Dąbkowska M., Mokrzycki W.S.: Generowanie widoków wielościanów wypukłych z bezpośrednim
wyznaczaniem obszarów jednowidokowych, Raport Prace IPI PAN, nr 861, Warszawa
[24] Fitzgibbon A.W., Cross G., Zisserman A.: Automatic 3D Model Construction For Turn-Table
Sequences, http://www.robots.ox.ac.uk/∼vgg, pp. 1–16
[25] Kovačič S., Leonardis A.: Planning Sequences of Views For 3D Object Recognition and Pose
Determination, PR, 31(10), pp. 1407–1417