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