Referaty sesja 2.indd - Pomiary Automatyka Robotyka

Transkrypt

Referaty sesja 2.indd - Pomiary Automatyka Robotyka
Pomiary Automatyka Robotyka 2/2009
dr Barbara Siemitkowska
Politechnika Warszawska, Wydzia Mechatroniki
Instytut Podstawowych Problemów Techniki PAN
mgr Arkadiusz Zychewicz
dr in. Micha Gnatowski
Instytut Podstawowych Problemów Techniki PAN,
ZASTOSOWANIE METOD PRZETWARZANIA OBRAZÓW
W SEGMENTACJI DANYCH POCHODZCYCH
Z DALMIERZA LASEROWEGO 3D
W poniszej pracy zaprezentowana zostanie metoda tworzenia map semantycznych otoczenia
robota mobilnego. Robot jest wyposaony w dalmierz laserowy, który umoliwia zbieranie
trójwymiarowej informacji o rodowisku. Dane s zapamitywane jako kolorowy obraz. Proces
segmentacji danych i tworzenia trójwymiarowej mapy otoczenia skada si z nastpujcych
etapów: wyodrbnienie obszarów jednorodnych, opisanie krawdzi i powierzchni obszarów,
klasyfikacja, tworzenie grafu opisujcego scen. Przyjto zaoenie, e klasyfikacja odbywa si na
podstawie wprowadzonych wczeniej do bazy wiedzy zbioru regu i dodatkowej informacji
przechowywanej w etykietowanych grafach. Przeprowadzone eksperymenty wykazay, e
segmentacja powierzchni 3D przy pomocy klasycznych metod przetwarzania obrazów, które s
stosowane w widzeniu maszynowym umoliwia przeprowadzanie oblicze w sposób efektywny.
Proces tworzenia mapy semantycznej jest nadal opracowywany, ale wstpne wyniki s
zadawalajce.
PICTURE SEGMENTATION METHODS IN 3D LASER DATA SEGMENTATION
In the article a method of building semantic map of robots' environment is
presented. A robot is equipped with a laser sensor which enables to obtain 3
dimensional information of the scene. Data is stored in a colour image. The
segmentation and map building processes consist of the following parts: selecting
homogeneous areas in the image obtained from the data, the edges and the areas
description, classification, creating a graph which describes the scene. It is
assumed, that classification is performed based on previously stored rules
database and additional information stored in labelled graphs. Experiments
which have been done showed that 3D area segmentation, using classical pattern
recognition methods which are widely used in machine vision enables to perform
computations effectively. The semantic map creation process is still under
development but the performed results are satisfied.
1. WSTP
Autonomiczny robot mobilny, aby wykonywa powierzone mu zadania powinien posiada
map otoczenia. Mapa taka moe by zadana lub tworzona na podstawie wskaza sensorów.
W literaturze wymienione s nastpujce sposoby przechowywania informacji: reprezentacja
rastrowa [1], mapa cech [2], topologiczny opis sceny [3], reprezentacja hybrydowa rastrowotopologiczna, reprezentacja hybrydowa metryczno-metryczna [4]. W wikszoci przypadków
tworzona jest mapa dwuwymiarowa. Mapa taka moe by jednak niewystarczajca
w sytuacji, gdy robot porusza si na zewntrz budynków lub jeli przeszkody umieszczone s
na rónej wysokoci. W takiej sytuacji konieczna jest reprezentacja 3D. W robotyce stosowane s ukady stereowizyjne [5,6], ale wymagaj one duych mocy obliczeniowych oraz stabilnych warunków owietleniowych. Czsto mapa rodowiska tworzona jest na podstawie
automation 2009
355
Pomiary Automatyka Robotyka 2/2009
wskaza dalmierza laserowego 3D [7] lub kamer metrycznych, które oprócz informacji
o barwie obiektów przekazuj take informacj o odlegoci. Tworzc map trójwymiarow
podstawowy problem, jaki naley rozwiza to bardzo dua liczba danych. Czas wykonywania operacji takich jak agregacja i filtracji danych powinien by krótki. W literaturze spotyka
si wiele sposobów reprezentacji map trójwymiarowych [8-12], jedna z nich to tworzenie
2,5D lub trójmiarowych map rastrowych. Inny powszechnie stosowany w grafice komputerowej sposób polega na generowaniu siatki wieloboków opisujcych powierzchnie obiektów
znajdujcych si w rodowisku. W niedalekiej przyszoci roboty mobilne bd uczestniczyy
w codziennym yciu czowieka, dlatego sposób opisu otoczenia powinien uwzgldnia
oprócz cech metrycznych take cechy semantyczne sceny. Dziki temu mona bdzie wydawa robotowi polecenia typu: jed do kuchni i przynie talerz. Konieczne wic jest stworzenie algorytmów, które umoliwiaj tworzenie map semantycznych. Opisywane w tej pracy
metody s w fazie eksperymentów, ale otrzymane przez nas wyniki wydaj si by na tyle
interesujce, aby je zaprezentowa na konferencji Automation 2009.
Proponowany w naszej pracy algorytm skada si z nastpujcych etapów:
x zbieranie danych pomiarowych
x zapisanie danych w postaci obrazu kolorowego,
x segmentacja obrazu,
x trójwymiarowa reprezentacja obszarów jednorodnych,
x klasyfikacja obszarów, na podstawie bazy wiedzy,
x tworzenie semantycznej mapy otoczenia.
2.
ZBIERANIE DANYCH POMIAROWYCH
Dane zbierane s przy pomocy dalmierza laserowego SICK LNS 200, zamontowanego na
gowicy obrotowej umoliwiajcej obrót lasera z pozycji poziomej do pionowej. Ukad zosta
wykonany i zaprojektowany na wydziaach: Mechatroniki oraz Elektroniki i Technik
Informacyjnych Politechniki Warszawskiej. Dane otrzymywane z dalmierza moemy
zapisywa w postaci trójki liczb: { rij ,T j , Mi }, gdzie rij jest odlegoci, T j - jest ktem
obrotu serwomchanizmu, M i jest ktem skanowania dalmierza. Na rys. 1 przedstawiono
przestrze skanowania oraz sposób zbierania danych.
Otrzymane w ten sposób dane mog by przedstawione w postaci macierzy o rozmiarze
MxN. M okrela liczb rónych pooe gowicy skanujcej. N jest liczb odczytów
otrzymanych z dalmierza laserowego w danym cyku skanowania. Poniewa skaner zbiera
dane z rozdzielczoci 1° z przedziau 0° - 180° to N = 181. Parametr M zaley od przyjtej
rozdzielczoci obrotu serwomechanizmu.
Tak otrzymane dane s przeliczane z biegunowego do kartezjaskiego ukadu wspórzdnych
wedug wzorów:
356
automation 2009
Pomiary Automatyka Robotyka 2/2009
xij
rij sin T j sin Mi
yij
rij sin Mi
zij
rij cos T j sin Mi
(1)
a)
b)
c)
Rys. 1. Zbieranie danych pomiarowych: a) kt obrotu serwomechanizmu, b) kat skanowania, c) przestrze
skanowania
Kolejnym etapem jest klasyfikacja punktów. Dla kadego punktu (z wyczeniem punktów
brzegowych) obliczany jest wektor pij normalny do powierzchni [13], do której naley dany
punkt [12]. Wektor ten jest wyznaczony jako iloczyn wektorowy pij okrelony nastpujco:
p1ij
[ xij xi1 j , yij yi 1 j , zij zi1 j ]
p 2 ij
[ xij xij 1 , yij yij 1 , zij zij 1 ]
pij
p1ij … p 2 ij
(2)
W przypadku, gdy odlegoci pomidzy punktami s niewielkie, to obliczony iloczyn
wektorowy, jest obarczony duym bdem. W celu wyeliminowania tego bdu, zwikszany
jest promie ssiedztwa i do wyliczania iloczynu wektorowego dla punktu (xij,yij,zij) brane s
takie punkty (xkl, ykl, zkl), które speniaj warunek [14]:
H1 t ( xkl xij ) 2 ( ykl yij ) 2 ( zkl zij ) 2 t H 2 ,
(3)
gdzie H 1, H 2 przyjty próg dolny i górny.
Skadowe wektora normalnego mog by traktowane jako skadowe RGB pikseli obrazu.
W zwizku z tym, kademu punktowi zostaje przypisany kolor, okrelajcy kierunek
normalnej w danym punkcie. Przykad obrazu, który powsta na podstawie chmury punktów
i wyodrbnionych normalnych jest zaprezentowany na rys. 2. Wstpn segmentacj danych
moemy wic przeprowadzi dla obrazu, a nastpnie otrzymane wyniki zapisa w postaci
prymitywów geometrycznych w przestrzeni 3D.
automation 2009
357
Pomiary Automatyka Robotyka 2/2009
a)
b)
Rys. 2. Dane z dalmierza laserowego 3D: a) zdjcie otoczenia, b) chmura punktów
Rys. 3. Kolorowy obraz chmury punktów (rys. 2 b)
3.
SEGMENTACJA OBRAZU
Celem segmentacji jest wydzielenie i klasyfikacja obszarów
przykadzie obszary jednorodne skadaj si ze zbioru
paszczynie. Punkty te na otrzymanym kolorowym obrazie
punktów o takiej samej barwie. Przed przystpieniem do
naley wykona klasyczne algorytmy przetwarzania obrazów.
jednorodnych. W opisywanym
punktów lecych na jednej
s reprezentowane jako zbiory
wyodrbniania tych obszarów
W pierwszej kolejnoci obraz zosta poddany obróbce wstpnej jej celem jest usunicie
wystpujcych szumów. Zastosowano filtry: medianowy, gaussowski i progujcy.
Filtr medianowy – jest to nieliniowy filtr do przetwarzania obrazów, bardzo dobrze nadaje si
do usuwania szumu drobnoziarnistego. Zalet jego jest to, e zachowuje krawdzie. Filtr
operuje na punktach ssiednich szeregujc je od najmniejszej do najwikszej i wybierajc
warto rodkow (tj. median) .
358
automation 2009
Pomiary Automatyka Robotyka 2/2009
Filtr gaussowski – filtr bazujcy na ssiednich punktach, jest to splot odpowiedniego fragmentu obrazu z mask w której znajduje si funkcja Gaussa dla przykadu wykorzystywana
maska dla okna 3x3. Filtr ten rozmywa krawdzie.
1
12
ª1 1 1º
«1 4 1»
«
»
«¬1 1 1»¼
Filtr progujcy – w klasycznej wersji wszystkie wartoci poniej zadanego progu s
zamieniane na zero. Dziki czemu atwo jest usun tzw. biay szum.
Nastpnym etapem jest wykrycie krawdzi. W tym celu zostay zastosowane filtry Laplac'a
i Canny'ego.
Filtr Laplace'a – szybki filtr do wykrywania krawdzi. Realizowany jest przez splot maski
z obrazem. Przykad maski 3x3:
ª 1 1 1º
« 1 8 1»
«
»
¬« 1 1 1»¼
Filtr Sobel'a wykrywa krawdzie o okrelonym kierunku. Realizowany jest przez splot maski
z obrazem. Przykad maski 3x3 dla kierunku 0º:
ª 1 0 1º
« 2 0 2»
«
»
«¬ 1 0 1 »¼
Jest on uywany w filtrze Canny'ego do wstpnego wykrywania krawdzi.
a)
b)
c)
Rys. 4. Etapy przetwarzania obrazu (rys. 2 b): a) wygadzanie, b) filtr Sobela, c) wykrywanie krawdzi
Filtr Canny'ego jest to wieloetapowy algorytm zoptymalizowany do wykrywania krawdzi.
Zalet filtru Canny’ego jest to, e w wyniku stosowania otrzymujemy krawdzie zamknite
o gruboci jednego piksela. Na rys. 4 przedstawiono etapy przetwarzania obrazu.
automation 2009
359
Pomiary Automatyka Robotyka 2/2009
4.
KLASYFIKACJA I OPIS OBSZARÓW
Po wyodrbnieniu na podstawie analizy obrazów grup punktów jednorodnych, s one
zapisywane w postaci reprezentacji trójwymiarowej, a nastpnie s klasyfikowane. Obiekt
jest opisywany jako para atrybutów (krawd, powierzchnia).
x Krawd jest reprezentowana jako amana w przestrzeni 3D, zapisywana jest jako
cig wierzchoków {(xwi,ywi,zwi)}i=0,..,K, gdzie K jest liczb wierzchoków.
x Powierzchnia jest reprezentowana jako wektor [A,B,C] normalny do paszczyzny,
która zawiera punkty nalece do powierzchni.
Metoda opisu podstawowych prymitywów geometrycznych jest wystarczajca w przypadku
pomieszcze biurowych, ale moe okaza si zbyt uboga w przypadku rodowiska na
zewntrz budynków. W przyszoci planujemy rozszerzenie modelu o modu analizy innych
powierzchni. Zagadnienie to moemy sprowadzi do poszukiwania tekstur w obrazie.
a)
b)
c)
Rys. 5. Wykryte obiekty: a) podoga, b) sufit, c) elementy równolege do podogi
W kolejnym etapie, kadej powierzchni przypisujemy pewn etykiet. Cz etykiet ma
znaczenie semantyczne. Tego typu etykiety to:
x Podoga – zbiór punktów lecych na jednej paszczynie, wyznaczonej przez
unormowany wektor normalny [0,0,1] , i wartoci wspórzdnej z=0.
x Sufit - zbiór punktów lecych na jednej paszczynie, wyznaczonej przez
unormowany wektor normalny [0,0,1] , i wartoci wspórzdnej z=max.
x ciana - zbiór punktów lecych na jednej paszczynie, wyznaczonej przez
unormowany wektor normalny [a,b,0] dla którego co najmniej jeden z wierzchoków
ma warto wspórzdnej z=0, co najmniej jeden z wierzchoków ma warto
wspórzdnej z=max oraz powierzchnia wykrytego obiektu przekracza pewien
przyjty próg.
Pozostaym obiektom przypisujemy etykiety opisujce cechy geometryczne. Takie etykiety
to:
Dua_powierzchnia – powierzchnia, której pole jest wiksze ni zadany próg, ale nie styka
si z sufitem lub z podog, i nie jest równolega, ani do sufitu, ani podogi.
Powierzchnia_równolega – zbiór punktów lecych ma powierzchni równolegej do podogi.
Powierzchnia_prostopada – zbiór punktów nalecych do jednej paszczyzny, które nie
tworz ciany, ale le na paszczynie prostopadej do podogi.
360
automation 2009
Pomiary Automatyka Robotyka 2/2009
Brak_klasyfikacji – zbiór punktów, których nie mona opisa przy pomocy podanych regu.
Punkty nalece do obiektów typu podoga, sufit mog zosta wykryte bezporednio na
podstawie analizy obrazu. Na rys. 5 przedstawiono opisane powyej grupy obiektów
równolegych do podogi, grupy te reprezentowane s przez punkty o barwie niebieskiej.
Dokonujc podziau wykorzystujemy oprócz informacji o barwie take informacj metryczn
(wspórzdnych punktów).
Na rys. 6 przedstawiono wynik klasyfikacji pozostaych obszarów. Kolorem czerwonym
zaznaczono obszary zakwalifikowane jako ciana, ótym due powierzchnie, zielonym mae
powierzchnie.
Rys. 6. Obiekty prostopade do podogi
W kolejnym kroku na podstawie wyodrbnionej grupy tworzony jest etykietowany graf.
W grafie tym wzy reprezentuj wyodrbnione fragmenty sceny. Dwa wzy s ze sob
poczone, jeli obszary ssiaduj ze sob. Etykieta gazi okrela sposób poczenia
obszarów. Wyróniamy krawdzie: pionowe, poziome i ukone.
Dalszy proces tworzenia semantycznej otoczenia jest bardzo podobny do procesu analizy
zda. Znaczenie danego sowa zaley nie tylko od cigu liter, ale take od kontekstu, w jakim
dany wyraz zosta uyty. Dlatego kolejny etap klasyfikacji obiektów moemy przeprowadzi,
analizujc nie tylko pojedynczy obszar, ale uwzgldniajc informacj o obszarach ssiednich.
5.
BAZA WIEDZY
W wikszoci baz wiedzy przyjmuje si zaoenie, obiekty reprezentowane s przy pomocy
wektorów, których wspórzdne opisuj stopie potwierdzenia hipotezy o wystpowaniu
pewnych cech lub przekazuj pewn informuj metryczn np. waga, wzrost itp. W wielu zadaniach praktycznych np. w zadaniach zwizanych z rozpoznawaniem jzyka naturalnego czy
zoonych struktur biologicznych opis w postaci wektora cech nie jest wystarczajcy. Do tego
typu zagadnie naley równie semantyczny opis obiektów znajdujcych si w otoczeniu robota. W pomieszczeniu typu wntrze pomieszczenia powierzchni wikszo obiektów moemy opisa przy pomocy cigu wieloboków, ale ich powierzchnia i sposób poczenia okre-
automation 2009
361
Pomiary Automatyka Robotyka 2/2009
laj ten obiekt w sposób jednoznaczny. W proponowanym systemie wyróniamy dwie klasy
obiektów:
x obiekty proste - s to obiekty, które moemy w sposób jednoznaczny opisa przy
pomocy zbioru regu do nich moemy zaliczy opisane w poprzednim rozdziale
pojcia typu: podoga, sufit, ciana.
x obiekty zoone – s to obiekty, które skadaj si z kilku powierzchni (np. schody)
lub wynik klasyfikacji zaley od etykiet obszarów ssiednich (np. drzwi).
W klasycznej teorii graf skada si z wzów, które s ze sob poczone jeli odpowiadajce
wzom obiekty s ze sob w relacji, w przypadku grafów etykietowanych etykiety pocze
midzy wzami okrelaj typ poczenia.
W naszym systemie
obiekty zoone s reprezentowane przy pomocy grafów
etykietowanych, informacja ta jest uzupeniona przez informacj metryczn.
Obiekt drzwi jest opisywany przy pomocy regu które uwzgldniaj pewn informacj
metryczn:
Obiekt d naley do klasy drzwi_zamknite, jeli naley do klasy dua_powierzchnia oraz s1<
szeroko < s2, wysoko > h1, gdzie s1, s2, h1 s parametrami. Dodatkowo powinny zachodzi
relacje zapisywane przy pomocy grafu przedstawionym na rys. 7, pp – jest etykiet
okrelajc krawd pionow, a pz – krawd poziom, pa – okrela relacj równolegoci
paszczyzn.
Rys. 7. Graf etykietowany opisujcy obiekt typu drzwi zamknite
Innym sposobem zapisu obiektów jest zapis relacji midzy prymitywami
geometrycznymi obiektów. Na rys. 8 przedstawiono graf opisujcy obiekt typu
schody. Kolorem jasno niebieskim zaznaczono obszary równolege do podogi,
a kolorem ótym obszar prostopady do podogi. Etykieta pz okrela e midzy
obiektami wystpuje krawd pozioma, etykiety pr1, pr2, okrelaj e powierzchnie
s równolege i znajduj si w okrelonej odlegoci.
362
automation 2009
Pomiary Automatyka Robotyka 2/2009
Rys.8. Graf etykietowany opisujcy obiekt schody
6.
PODSUMOWANIE
W powyszym artykule przedstawiono koncepcj i wstpne eksperymenty systemu
automatycznego tworzenia semantycznych map otoczenia robota mobilnego. Do wstpnego
przetwarzania danych pochodzcych ze skanera 3D wykorzystano klasyczne metody analizy
obrazów paskich. W opracowanym systemie wykorzystano procedury biblioteki OpenCV,
dziki temu czas przetwarzania obrazów nie przekracza 200 ms. Czas niezbdny do
klasyfikacji obiektów jest zaleny od liczby obiektów, które powinny by zapamitanie
w bazie wiedzy. W obecnym stanie systemu obiektów jest kilkanacie, w przyszoci
planujemy proces przeszukiwania skróci przypisujc do kadego obiektu funkcj haszujc.
Dziki temu przeszukiwane s jedynie elementy bazy o zadanej wartoci funkcji. Nawet jeli
w pewnym pomieszczeniu nie wszystkie elementy zostay sklasyfikowane moliwe jest
okrelenie typu pomieszczenia: np. korytarz, pokój. Moliwy jest te topologiczny opis
sceny. Opisywany system jest niezbdny w przypadku wspópracy robota z czowiekiem.
Umoliwia wydawanie polece typu: jed do drzwi. Mapy semantyczne mog by
wykorzystywane w procesie lokalizacji robota. W przypadku planowania trasy oprócz
informacji topologicznej potrzebna jest take informacja metryczna, dlatego oprócz
informacji topologicznej z kadym elementem wizana jest informacja metryczna.
Opisywany system jest nadal rozwijany i testowany konieczne jest wprowadzenie
klasyfikatorów w których jest okrelana niepewno wyniku klasyfikacji. Planujemy take
stworzenie opisu hierarchicznego w którym oprócz obiektów bd równie klasyfikowane
cae pomieszczenia oraz budynek.
Opisane algorytmy zostay wykonane w ramach grantu MEiN. 4311/B/T02/2007/33.
LITERATURA
1.
2.
Moravec H. , Elfes A.: High resolution maps from wide angle sonar, Proc. IEEE
International Conference on Robotics and Automation, s. 116 - 121, 1985.
Andersen C.S. Jones S. and Crowley J.L. Appearance Based Processes for Visual
Navigation. Proceedings of Symposium on Intelligent Robotics Systems. s. 227 -236,
1999.
automation 2009
363
Pomiary Automatyka Robotyka 2/2009
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
364
Triebel R. Frank B. Meyer J. Burgard W.: First Steps Towards a Robotic System for
Flexible Volumetric Mapping of Indoor Environments, CD-ROM. IAV04, 2004.
B. Siemitkowska. Hybrydowa reprezentacja otoczenia robota mobilnego. PAR vol.
CD ROM, 2006.
Floryczyk R., Robot Vision, Wiley-Vch, 2005.
Gonzalez R. C., Digital Image Processing, Adison-Wesley, Reading MA, 1992.
Sakas G., Hartig J., Interactive Visualization of Large Scalar Voxel Fields.
Visualization, Boston, USA, s. 29--36, 1992.
Sawwa R., Siemitkowska B., Racz J., 2.5D Map Building Based on LRF Readouts.
III-d Int. Symp. on Methods and Models in Automation and Robotics. s. 13--15.
1997.
Sawwa R., Siemitkowska B., Racz J.: A Laser Range Finder for Mobile Robot
Navigation. 28-th International Symposium on Robotics. Detroit, MI USA. s. 13--15,
1997.
Siemitkowska B., Gnatowski M., Zychewicz A. Fast Method of 3D Map Building
Based on Laser Range Data. Jamris. s. 65-70, 2007.
Schroeder W. , Zarge J. , Lorensen W., Decimation of Triangle Meshes. Computer
Graphics. s. 65-70, 1992.
J. Weingarten, Siegwart R.: EKF-based 3D SLAM for Structured Environment
Reconstruction. IROS 2005.
D.L. Page, Y. Sun, A.F. Koschan, J.Paik, M. A. Abidi, Normal Vector Voting: Crease
Detection and Curave Estimation on Large, Noisy Mesh. Graphical Models, vol. 64,
2002, s. 199-229.
Siemitkowska B., Gnatowski M., Chojecki R.: Zastosowanie sieci komórkowych
w procesie segmentacji danych pochodzcych z dalmierza laserowego 3D
Krajowa Konferencja Robotyki, Oficyna Wydawnicza Politechniki Warszawskiej,
2008, s. 121-130.
automation 2009