• Nie Znaleziono Wyników

Metody generowania modelu sceny dla autonomicznego robota krocz¡cego z wielomodowym systemem wizyjnym

N/A
N/A
Protected

Academic year: 2021

Share "Metody generowania modelu sceny dla autonomicznego robota krocz¡cego z wielomodowym systemem wizyjnym"

Copied!
141
0
0

Pełen tekst

(1)

Wydziaª Elektryczny

Instytut Automatyki i In»ynierii Informatycznej

ROZPRAWA DOKTORSKA

Metody generowania modelu sceny dla autonomicznego robota krocz¡cego z wielomodowym systemem wizyjnym

mgr in». Przemysªaw Šab¦cki

Promotor

dr hab. in». Piotr Skrzypczy«ski, prof. nadzw.

(2)

W niniejszej rozprawie przedstawiono metody generowania modelu sceny dla autonomicznego robota krocz¡cego z wykorzystaniem sensorów wizyjnych.

Do zastosowanych sensorów nale»¡ ukªad z o±wietleniem strukturalnym w po- staci arkusza ±wietlnego, kamera stereowizyjna zwracaj¡ca g¦st¡ map¦ gª¦bi oraz skaner laserowy.

W rozprawie zaprezentowano sposób akwizycji danych przy u»yciu ukªadu z o±wietleniem strukturalnym w postaci arkusza ±wietlnego. Zaprezentowano równie» metod¦ budowy mapy terenu oraz sposób wyznaczania niepewno±ci pomiarów przy u»yciu tego sensora. Na tej podstawie rozwa»ono optymal- n¡ konguracj¦ sensora z o±wietleniem strukturalnym w kontek±cie zadania budowy mapy terenu dla robota krocz¡cego Ragno.

W pracy przedstawiono metod¦ ltracji danych otrzymanych z kamery stereowizyjnej Videre Design STOC, a tak»e zaproponowano sposób budo- wy mapy terenu na podstawie tych danych. Podano te» model niepewno±ci pomiarów przy u»yciu kamery stereowizyjnej zwracaj¡cej g¦st¡ map¦ gª¦bi.

W rozprawie pokazano, »e wzbogacenie danych stereowizyjnych danymi z pochylonego skanera laserowego 2D poprawia jako±¢ odtworzenia geome- trii nierównego terenu. Wyprowadzono model niepewno±ci pomiarów przy u»yciu skanera laserowego w kontek±cie zadania budowy mapy, zapropono- wano sposób kalibracji poªo»enia kamery stereowizyjnej i skanera laserowego w ukªadzie robota oraz zaprezentowano metod¦ budowy mapy podªo»a przy u»yciu tych dwóch sensorów.

Zaproponowano równie» prosty koncepcyjnie sposób samolokalizacji robo- ta, oparty na minimalizacji ró»nic pomi¦dzy kolejnymi mapami terenu two- rzonymi przy u»yciu kamery stereowizyjnej.

Dziaªanie wszystkich przedstawionych metod zostaªo potwierdzone w trak-

cie eksperymentów, których wyniki równie» zostaªy zawarte w rozprawie.

(3)

This thesis presents methods of generation of the scene model for an auto- nomic six-legged robot, with the use of vision sensors. Among the applied sensors there are: a light stripe structured light system, a stereovision camera that provides a dense depth map and a laser scanner.

In the thesis, a method for acquiring data from the structured light sensor, as well as a way of building a terrain map using this sensor was shown. A measurement uncertainty model was also proposed for the structured light system. On this basis, an optimal conguration of this sensor was proposed, for the task of terrain map building with the six-legged walking robot Ragno.

An algorithm for the ltering of data acquired using the Videre Design STOC stereovision camera was proposed, together with a method for terrain map building from this data. Also, a model of mesurement uncertainty was proposed for a stereovision camera that produces a dense depth map.

It was shown in the thesis, that fusing the stereovision data with the data from a tilted 2D laser scanner enhances the quality of the reconstruction of uneven terrain. A measurement uncertainty model was formulated for the laser scanner in context of the mapping task. Moreover, an alogrithm for calibrating the location of the stereovision camera and the laser scanner in the reference frame of the robot was proposed, and a method for terrain map generation using these two sensors was shown.

A simple self-localization algorithm was also shown, based on the con- cept of minimizing the dierences between subsequent maps created using the sterovision camera.

The eectiveness of all presented algorithms was conrmed in experimens,

results of which are also presented in this thesis.

(4)

Wa»niejsze oznaczenia

Poni»ej przedstawiono spis najwa»niejszych oznacze« wykorzystywanych w roz- prawie. Wielkimi literami i pogrubion¡ czcionk¡ oznaczono macierze, maªymi literami pogrubion¡ czcionk¡ oznaczono wektory, natomiast maªymi literami zwykª¡ czcionk¡ oznaczono skalary.

x

c

, y

c

z

c

 pozycja punktu w ukªadzie wspóªrz¦dnych kamery x

s

, y

s

z

s

 pozycja punktu w ukªadzie wspóªrz¦dnych skanera

laserowego

x

pr

, y

pr

z

pr

 pozycja robota w ukªadzie wspóªrz¦dnych mapy α

r

, β

r

, γ

r

 przechylenie, pochylenie i odchylenie (roll, pitch, yaw)

robota w ukªadzie wspóªrz¦dnych mapy Σ  macierz kowariancji

σ

x

 odchylenie standardowe warto±ci x σ

2x

 wariancja warto±ci x

J  jakobian

m

T

c

 poªo»enie kamery w ukªadzie wspóªrz¦dnych mapy

m

T

r

 poªo»enie robota w ukªadzie wspóªrz¦dnych mapy

r

T

c

 poªo»enie kamery w ukªadzie wspóªrz¦dnych robota

r

T

s

 poªo»enie skanera laserowego w ukªadzie wspóªrz¦dnych robota

r

G

s

 poªo»enie sensora w ukªadzie wspóªrz¦dnych robota x

g

, y

g

z

g

 pozycja sensora w ukªadzie wspóªrz¦dnych robota α

g

, β

g

, γ

g

 przechylenie, pochylenie i odchylenie (roll, pitch, yaw)

sensora w ukªadzie wspóªrz¦dnych robota

K  wzmocnienie Kalmana

(5)

σ

2[i,j]h(k)

 wariancja wysoko±ci w komórce mapy o wspóªrz¦dnych i , j w chwili k

h(k)

2[i,j,n]k

 wysoko±¢ w komórce 3D mapy o wspóªrz¦dnych i, j, n w chwili k

σ

2[i,j,n]h(k)

 wariancja wysoko±ci w komórce 3D mapy o wspóªrz¦dnych i, j, n w chwili k

PI  warto±¢ wska¹nika Performance Index

z

G

 wysoko±¢ w komórce globalnej mapy w algorytmie samolokalizacji

z

L

 wysoko±¢ w komórce lokalnej (zbudowanej z bie»¡cego

pomiaru) mapy w algorytmie samolokalizacji

(6)

Spis tre±ci

1 Wst¦p 8

1.1 Wprowadzenie . . . . 8

1.2 Cel i teza rozprawy . . . . 9

1.3 Przegl¡d tre±ci rozprawy . . . 10

2 Obszar problemowy rozprawy 12 2.1 Sensory wizyjne w zadaniu rekonstrukcji sceny robota krocz¡- cego . . . 12

2.1.1 Kamery monokularowe . . . 13

2.1.2 Ukªady z o±wietleniem strukturalnym . . . 14

2.1.3 Sensor Kinect/Xtion . . . 15

2.1.4 Kamery w ukªadzie stereowizyjnym . . . 15

2.1.5 Skanery laserowe . . . 16

2.1.6 Kamery TOF . . . 17

2.2 Istniej¡ce rozwi¡zania w zakresie rekonstrukcji sceny robota krocz¡cego . . . 19

3 Aktywny system wizyjny z o±wietleniem strukturalnym 24 3.1 System wizyjny z o±wietleniem strukturalnym . . . 24

3.2 Algorytm rekonstrukcji geometrii sceny trójwymiarowej . . . . 25

3.2.1 Pomiary przy u»yciu ukªadu kamera  o±wietlacz . . . 25

3.2.2 Ekstrakcja ±ladu ±wietlnego na obrazie . . . 28

3.3 Metoda kalibracji systemu i analiza niepewno±ci pomiaru wiel- ko±ci geometrycznych . . . 32

3.3.1 Kalibracja ukªadu kamera  o±wietlacz . . . 32

3.3.2 Analiza niepewno±ci pomiaru wielko±ci geometrycznych 34

3.4 Optymalizacja konguracji systemu wizyjnego w zadaniu akwi-

zycji mapy terenu . . . 44

(7)

4 Zastosowania aktywnego systemu wizyjnego w rekonstrukcji

sceny robota krocz¡cego 50

4.1 Rekonstrukcja geometrii schodów wraz z werykacj¡ ekspery-

mentaln¡ . . . 50

4.1.1 Percepcja we wspinaczce po schodach . . . 50

4.2 Rekonstrukcja mapy terenu, wraz z werykacj¡ eksperymentaln¡ 59 4.2.1 Wst¦p . . . 59

4.2.2 Algorytm aktualizacji mapy . . . 59

4.2.3 Wyniki eksperymentalne . . . 62

5 Pasywny system stereowizyjny 65 5.1 Metoda rekonstrukcji sceny 3D na podstawie g¦stej mapy gª¦bi 65 5.1.1 Wykorzystywany system stereowizyjny . . . 65

5.1.2 Model systemu stereowizyjnego . . . 66

5.1.3 Pomiary przy u»yciu kamery Videre Design STOC . . . 72

5.2 Analiza niepewno±ci pomiaru wielko±ci geometrycznych . . . . 77

5.2.1 Wst¦p . . . 77

5.2.2 Model niepewno±ci . . . 80

5.2.3 Fizyczna interpretacja niepewno±ci . . . 83

5.3 Metoda budowy mapy terenu, wraz z werykacj¡ eksperymen- taln¡ . . . 83

5.3.1 Wst¦p . . . 83

5.3.2 Algorytm budowy mapy terenu . . . 84

5.3.3 Werykacja eksperymentalna . . . 89

6 Jednoczesne wykorzystanie danych z wielu sensorów wizyj- nych 95 6.1 Wst¦p . . . 95

6.2 Skaner Laserowy Hokuyo URG04LX . . . 96

6.2.1 Przeksztaªcanie pomiarów do ukªadu zwi¡zanego z map¡ 96 6.2.2 Niepewno±¢ pomiaru wielko±ci geometrycznych za po- moc¡ skanera laserowego Hokuyo URG04LX . . . 97

6.3 Metoda kalibracji ukªadu wielosensorycznego zªo»onego z ka- mery stereowizyjnej i skanera laserowego 2D . . . 98

6.3.1 Eksperyment kalibracyjny . . . 99

6.3.2 Filtracja danych . . . 100

6.3.3 Identykacja parametrów . . . 101

6.3.4 Wyniki . . . 103

6.3.5 Niepewno±¢ kalibracji ukªadu wielosensorycznego . . . 105

6.4 Budowa mapy terenu przy u»yciu pasywnej stereowizji i ska-

nera laserowego . . . 108

(8)

7 Metoda samolokalizacji robota krocz¡cego na podstawie g¦-

stej mapy gª¦bi 111

7.1 Algorytm samolokalizacji . . . 111

7.1.1 Wst¦p . . . 111

7.1.2 Przygotowanie danych . . . 114

7.1.3 Dopasowanie map . . . 117

7.2 Wyniki eksperymentalne . . . 119

8 Wnioski 124 8.1 Wnioski w kontek±cie dotychczasowego stanu wiedzy . . . 124

8.2 Podsumowanie osi¡gni¦tych wyników . . . 126

8.3 Kierunki dalszych bada« . . . 127

(9)

Rozdziaª 1 Wst¦p

1.1 Wprowadzenie

Badania naukowe w obszarze mobilnych robotów krocz¡cych w ostatnich latach nabieraj¡ znacz¡cego tempa. Dzi¦ki coraz szybszemu rozwojowi elek- troniki i techniki komputerowej, jednostki obliczeniowe oraz sensory staj¡ si¦

coraz ta«sze i mniejsze, dzi¦ki czemu rozwi¡zania niemo»liwe do zastosowa- nia lub niepraktyczne jeszcze kilka lat temu staj¡ si¦ powszechnie dost¦pne.

Jednocze±nie dzi¦ki upowszechnieniu Internetu, temat robotów krocz¡cych powoli przenika do powszechnej ±wiadomo±ci. Roboty takie jak BigDog czy Petman lub Atlas (Boston Dynamics) zaczynaj¡ by¢ rozpoznawalne poza kr¦- giem naukowym i staj¡ si¦ obecne w ±wiadomo±ci masowego odbiorcy. Coraz bardziej realna staje si¦ idea obecno±ci robotów w »yciu przeci¦tnego czªo- wieka. Zanim jednak to nast¡pi, nale»y rozwi¡za¢ liczne problemy z zakresu sterowania robotami krocz¡cymi. Potrzebne s¡ mi¦dzy innymi efektywne al- gorytmy pozwalaj¡ce na modelowanie otoczenia robota krocz¡cego, a tak»e na samolokalizacj¦ oraz nawigacj¦ w tym otoczeniu [106]. Roboty krocz¡ce, z uwagi na du»e mo»liwo±ci ruchowe, predysponowane s¡ do dziaªa« w ±ro- dowisku trójwymiarowym i nieuporz¡dkowanym. Musz¡ by¢ wi¦c zdolne do tworzenia trójwymiarowych modeli otoczenia, dzi¦ki którym mo»liwe b¦dzie planowanie ±cie»ki oraz punktów podparcia nóg. Nale»y jednocze±nie zazna- czy¢, »e powinny by¢ to modele wysokiej rozdzielczo±ci, z uwagi na niewielk¡

powierzchni¦ styku nóg robotów krocz¡cych z podªo»em [12]. W dalszej ko- lejno±ci modele otoczenia powinny pozwala¢ na klasykacj¦ i manipulacj¦

obiektami na scenie, co pozwoliªoby robotom krocz¡cym na speªnianie do- datkowych zada« poza samym tylko przemieszczaniem si¦. Do poprawnej nawigacji oraz budowy modelu otoczenia, roboty krocz¡ce musz¡ mie¢ te»

mo»liwo±¢ dokªadnego okre±lenia swojego poªo»enia.

(10)

O ile zagadnienia tego typu zostaªy dobrze poznane w przypadku mo- bilnych robotów koªowych, dziaªaj¡cych w ±rodowiskach uporz¡dkowanych [103], to analogiczne metody dla robotów krocz¡cych wci¡» wymagaj¡ dal- szych bada«. Zdarza si¦, »e istniej¡ce rozwi¡zania wymagaj¡ u»ycia skom- plikowanych i ci¦»kich sensorów (jak np. skanery laserowe z mechanicznym odchylaniem wi¡zki), w zwi¡zku z czym mog¡ by¢ one niemo»liwe do zastoso- wania w przypadku robotów krocz¡cych, które z uwagi na swoj¡ konstrukcj¦

cechuj¡ si¦ du»ymi ograniczeniami masowymi i energetycznymi [121]. Oprócz tego, bardzo cz¦sto metody cechuj¡ce si¦ du»¡ skuteczno±ci¡ maj¡ wysokie wymagania obliczeniowe, co równie» ogranicza ich zastosowanie w autono- micznych robotach krocz¡cych, których jednostki obliczeniowe najcz¦±ciej nastawione s¡ na minimalizacj¦ masy i zu»ycia energii. W zakresie rekon- strukcji sceny robotów krocz¡cych wci¡» brakuje nieskomplikowanych i sku- tecznych metod, które mogªyby dziaªa¢ w czasie rzeczywistym na jednostce pokªadowej robota.

Zarówno w zadaniu rekonstrukcji sceny, jak i samolokalizacji oraz sterowa- nia robota krocz¡cego, niezb¦dne s¡ dane z sensorów eksteroceptywnych. Do najpopularniejszych sensorów tego typu nale»¡ kamery stereowizyjne, ska- nery laserowe oraz ukªady z o±wietleniem strukturalnym. Istniej¡ metody rekonstrukcji sceny, w których przydatna jest znajomo±¢ niepewno±ci pomia- rów przy u»yciu tego typu sensorów [107]. Wci¡» jednak brakuje jednolitego podej±cia do zagadnienia modelowania niepewno±ci pomiarów w kontek±cie zadania rekonstrukcji sceny robota krocz¡cego. Dotyczy to równie» niepewno-

±ci procesów kalibracji samych sensorów jak równie» ich poªo»enia w ukªadzie wspóªrz¦dnych robota.

1.2 Cel i teza rozprawy

Celem bada« przedstawionych w niniejszej rozprawy jest opracowanie metod rekonstrukcji sceny robota krocz¡cego przy u»yciu danych z systemu wielo- sensorycznego skªadaj¡cego si¦ z kamery stereowizyjnej, ukªadu wizyjnego z o±wietleniem strukturalnym oraz skanera laserowego. Podczas opracowy- wania metod akwizycji oraz przetwarzania danych sensorycznych starano si¦

zwraca¢ uwag¦ na prostot¦ i mo»liwo±¢ praktycznego zastosowania tych me- tod w przypadku rzeczywistego autonomicznego robota krocz¡cego, w celu wspomagania sterowania tym robotem. Istotnym celem pracy jest równie»

opracowanie jednolitego aparatu analizy i modelu niepewno±ci pomiarów przy u»yciu wspomnianych sensorów w kontek±cie zadania budowy mapy terenu dla robota krocz¡cego.

Wi¦kszo±¢ prezentowanych w rozprawie szczegóªowych rozwi¡za« tech-

(11)

nicznych odnosi si¦ do sze±ciono»nego robota Messor, zbudowanego w Insty- tucie Automatyki i In»ynierii Informatycznej Politechniki Pozna«skiej [113].

Robot ten, wraz z podobnym cho¢ mniejszym robotem Ragno, posªu»yª tak»e do wykonania wi¦kszo±ci bada« eksperymentalnych.

Gªówna teza niniejszej rozprawy nawi¡zuje do jej tytuªu: Wykorzystanie wielomodowego systemu wizyjnego pozwala na generowanie w cza- sie rzeczywistym modelu sceny skutecznie wspieraj¡cego sterowa- nie autonomicznym robotem krocz¡cym. Poniewa» proponowane w roz- prawie metody i algorytmy dotycz¡ ró»nych klas sensorów wizyjnych oraz ró»nych aspektów tworzenia modelu sceny, teza gªówna uzupeªniona zostaªa nast¦puj¡cymi tezami szczegóªowymi:

• U»ycie aktywnego systemu wizyjnego z o±wietleniem strukturalnym umo»liwia rekonstrukcj¦ geometrii terenu z precyzj¡ wystarczaj¡c¡ do realizacji zadania wyboru punktów podparcia nóg robota krocz¡cego.

• Wzbogacenie informacji 3D otrzymanej z pasywnego sensora stereowi- zyjnego danymi ze skanera laserowego 2D poprawia jako±¢ odtworzenia geometrii nierównego terenu.

• Zastosowanie metod optymalizacyjnych oraz odpowiedniej reprezenta- cji terenu w zadaniu samolokalizacji robota krocz¡cego umo»liwia sku- teczn¡ samolokalizacj¦ na podstawie niepewnych i niepeªnych danych z sensorów zwracaj¡cych g¦st¡ map¦ gª¦bi.

• Mo»liwe jest stworzenie jednolitego modelu opisu niepewno±ci dla sen- sorów wizyjnych, u»ywanych w zadaniu rekonstrukcji sceny robota kro- cz¡cego, z uwzgl¦dnieniem niepewno±ci kalibracji poªo»enia oraz geo- metrycznej konguracji sensorów.

1.3 Przegl¡d tre±ci rozprawy

Niniejsza rozprawa zostaªa podzielona na 8 rozdziaªów. W rozdziale 2 za- prezentowano krótki przegl¡d sensorów wykorzystywanych w zadaniu rekon- strukcji sceny robota krocz¡cego oraz istniej¡cych metod, sªu»¡cych realizacji tego zadania.

Rozdziaª 3 zostaª po±wi¦cony analizie ukªadu sensorycznego z o±wietle-

niem strukturalnym w postaci arkusza ±wietlnego. Zaproponowano model

ukªadu oraz sposób jego kalibracji, a tak»e algorytm przetwarzania obrazu

pozwalaj¡cy na wykrycie ±ladu arkusza ±wietlnego na obrazie. Wyznaczono

tak»e model niepewno±ci pomiarów przy u»yciu tego ukªadu i zaproponowano

(12)

optymaln¡ konguracj¦ systemu, uwzgl¦dniaj¡c¡ odpowiednie k¡ty widzenia oraz redukcj¦ niepewno±ci pomiarów.

Rozdziaª 4 zawiera opis zastosowania sensora przedstawionego w rozdziale 3. Zaprezentowano sposób pomiaru geometrii schodów przy u»yciu ukªadu z o±wietleniem strukturalnym, oraz jego praktyczne zastosowanie z robotem Messor. Opisano równie» metod¦ budowy mapy podªo»a, której skuteczno±¢

zostaªa potwierdzona eksperymentami na robocie Ragno.

W rozdziale 5 pokazano sposoby wykorzystania kamery stereowizyjnej Videre Design STOC do rekonstrukcji sceny robota krocz¡cego. Przedsta- wiono algorytm przetwarzania danych pozwalaj¡cy na usuni¦cie artefaktów, jak równie» zaproponowano algorytm budowy mapy otoczenia przy u»yciu przetworzonych danych. Zaprezentowana metoda budowy mapy wykorzystu- je informacj¦ o niepewno±ci pomiarów przy u»yciu kamery stereowizyjnej zwracaj¡cej g¦sta map¦ gª¦bi. Model wspomnianej niepewno±ci równie» zo- staª opisany w tym rozdziale. Przedstawiono werykacj¦ eksperymentaln¡

u»ytych algorytmów z wykorzystaniem robota Messor oraz robota przemysªo- wego Kuka, pozwalaj¡cego na uzyskanie precyzyjnych pozycji poruszaj¡cego si¦ sensora.

Rozdziaª 6 dotyczy jednoczesnego wykorzystania danych z kilku senso- rów w zadaniu budowy mapy podªo»a dla robota krocz¡cego. Przedstawiono w nim model niepewno±ci skanera laserowego Hokuyo URG-04LX oraz algo- rytm budowy mapy przy jednoczesnym wykorzystaniu tego skanera i kamery stereowizyjnej Videre Design STOC. Zaprezentowano równie» metod¦ kali- bracji poªo»enia obu sensorów i zaproponowano model niepewno±ci wyzna- czanych przez t¦ kalibracj¦ przeksztaªce«. Zaprezentowano równie» weryka- cj¦ eksperymentaln¡ przedstawionych metod.

Rozdziaª 7 obejmuje opis metody samolokalizacji przy u»yciu danych z sensorów zwracaj¡cych g¦st¡ map¦ gª¦bi. W rozdziale tym pokazano sam algorytm, jak równie» jego werykacj¦ eksperymentaln¡ z wykorzystaniem sensora Kinect.

Rozdziaª 8 jest podsumowaniem rozprawy. Przedstawiono w nim wnioski,

zestawienie osi¡gni¦tych wyników oraz zaproponowano kierunki dalszych ba-

da«.

(13)

Rozdziaª 2

Obszar problemowy rozprawy

2.1 Sensory wizyjne w zadaniu rekonstrukcji sceny robota krocz¡cego

W zadaniu rekonstrukcji sceny robota krocz¡cego niew¡tpliwie najcz¦±ciej wykorzystywan¡ grup¡ sensorów s¡ sensory wizyjne. Do grupy tej nale»¡

wszelkie sensory wykorzystuj¡ce promieniowanie ±wietlne (nie tylko widzial- ne, ale równie» np. podczerwone), zarówno naturalne jak równie» wytworzo- ne przez sensor. Wewn¡trz grupy sensorów wizyjnych wyró»ni¢ mo»na takie podgrupy, jak:

• kamery monokularowe,

• ukªady z o±wietleniem strukturalnym,

• stereowizyjne ukªady kamer,

• skanery laserowe 2D oraz 3D,

• kamery odlegªo±ciowe (TOF, ang. Time of Flight).

Analiza przydatno±ci cz¦±ci z tych sensorów w nawigacji robotów krocz¡- cych podj¦ta zostaªa w pracy [88]. W±ród badanych sensorów znalazªa si¦

kamera stereowizyjna Videre Design STOC [43], miniaturowy skaner lase- rowy Hokuyo URG-04LX [41] oraz kamera TOF Swissranger SR-3000 [80].

Od lat z powodzeniem wykorzystywane s¡ w robotach mobilnych równie»

pojedyncze kamery, pozwalaj¡c zarówno na budow¦ modelu otoczenia, jak

równie» samolokalizacj¦ [21]. Za spraw¡ sensora Kinect [38], ostatnimi czasy

renesans prze»ywaj¡ sensory z aktywnym o±wietleniem strukturalnym, które

z uwagi na nisk¡ cen¦, pozwalaj¡ na wykorzystanie g¦stej mapy gª¦bi nawet

(14)

w zastosowaniach amatorskich. Sensory wizyjne s¡ na tyle szerok¡ grup¡,

»e trudno wymieni¢ jest zalety wªa±ciwe dla wszystkich jej przedstawicieli.

Mo»na znale¹¢ w±ród nich tanie urz¡dzenia, nadaj¡ce si¦ jedynie do zastoso- wa« amatorskich (jak np. webcamery), jak równie» przemysªowe urz¡dzenia pomiarowe, cechuj¡ce si¦ wysok¡ dokªadno±ci¡ pomiarów i odpowiednio wy- sok¡ cen¡ (do tej grupy zaliczy¢ mo»na skanery laserowe produkowane przez

rm¦ SICK). Wspóln¡ wad¡ wi¦kszo±ci sensorów wizyjnych jest wra»liwo±¢

pomiarów na zewn¦trzne warunki o±wietleniowe. W przypadku sensorów pa- sywnych, na pomiary wpªywa negatywnie zbyt maªa ilo±¢ ±wiatªa (a» do stopnia, w którym pomiary staj¡ si¦ niemo»liwe). W przypadku sensorów aktywnych sytuacja si¦ odwraca  zbyt du»a ilo±¢ zewn¦trznego promienio- wania ±wietlnego mo»e spowodowa¢, »e pomiary nie b¦d¡ mo»liwe. Do wad sensorów wizyjnych mo»na równie» zaliczy¢ wra»liwo±¢ na rodzaj obserwowa- nej powierzchni. Szczególnie elementy odbijaj¡ce ±wiatªo mog¡ wprowadza¢

bª¦dy pomiarowe i powodowa¢ powstawanie artefaktów.

2.1.1 Kamery monokularowe

Kamery nale»¡ do najpopularniejszych sensorów w zadaniu nawigacji robo- tów mobilnych. Wykorzystywano je wªa±ciwie ju» od pocz¡tku istnienia tego rodzaju robotów [76]. W zwi¡zku z tym, algorytmy wykorzystuj¡ce wizj¦

monokularow¡ nale»¡ do najlepiej poznanych metod rekonstrukcji otoczenia

robotów mobilnych. Ze wzgl¦du na gªówn¡ wad¦ systemów monokularowych,

któr¡ jest brak informacji o gª¦bi, dokªadna rekonstrukcja (w sensie geome-

trycznym) sceny robota krocz¡cego mo»e jednak by¢ niemo»liwa. W przy-

padku robotów koªowych cz¦sto wystarczaj¡ce jest zastosowanie informacji

wizyjnej do sterowania behawioralnego [105]. Mo»liwa jest równie» budowa

modelu otoczenia na podstawie wielu widoków [24][112] b¡d¹ przy u»yciu

algorytmu typu structure form motion [29]. W takich przypadkach, aby wy-

znaczy¢ wymiary geometryczne obiektów na scenie, niezb¦dne s¡ dodatkowe

pomiary: przebytej przez robota drogi b¡d¹ faktycznych wymiarów niektó-

rych obiektów. Ostatnimi czasy obserwuje si¦ dynamiczny rozwój algoryt-

mów wizyjnych typu SLAM, dziaªaj¡cych w 6 stopniach swobody. Pierw-

sz¡ z tego typu metod, dziaªaj¡cych w czasie rzeczywistym jest MonoSLAM

[21], pozwalaj¡cy na jednoczesn¡ samolokalizacj¦ oraz budow¦ mapy w trój-

wymiarowym otoczeniu. Kolejne algorytmy SLAM pozwalaªy na mapowanie

du»ych powierzchni, poprzez ograniczenie rozmiaru wektora stanu, np. dzi¦ki

wprowadzeniu sztucznych znaczników [4], b¡d¹ u»yciu ltra cz¡steczkowego

w algorytmie FastSLAM [25]. Podejmowano równie» próby zastosowania wi-

zyjnego SLAMu w nawigacji sze±ciono»nego robota krocz¡cego. Powa»nym

problemem okazaª si¦ brak mo»liwo±ci niezawodnego ±ledzenia cech na obra-

(15)

zie z kamery, spowodowany nagªymi zmianami kierunku ruchu, typowymi dla robotów krocz¡cych. W pracy [100] usuni¦to to ograniczenie poprzez uwzgl¦d- nienie w algorytmie ±ledzenia cech, modelu ruchu sze±ciono»nego robota kro- cz¡cego Messor. W pracy [5] dokªadno±¢ samolokalizacji zostaªa natomiast poprawiona poprzez wykorzystanie wspóªbie»nego przetwarzania danych.

2.1.2 Ukªady z o±wietleniem strukturalnym

Ukªadami z o±wietleniem strukturalnym nazywa si¦ ukªady sensoryczne po- wstaªe z poª¡czenia kamery oraz projektora (o±wietlacza) emituj¡cego znany wzór ±wietlny. W takich ukªadach znana jest wzajemna geometria kame- ry oraz o±wietlacza (najcz¦±ciej wyznaczana jest ona w procesie kalibracji), dzi¦ki czemu odksztaªcenia (struktura) ±ladu ±wietlnego z projektora, wi- doczna na obrazie z kamery, pozwala wnioskowa¢ o geometrii sceny podda- wanej pomiarowi (najcz¦±ciej na podstawie triangulacji). Systemy wizyjne z o±wietleniem strukturalnym byªy przedmiotem bada« ju» od wczesnych lat 70. XX wielu [102], zyskuj¡c uznanie z powodu prostoty, niskiej ceny i zadowalaj¡cej dokªadno±ci. Niew¡tpliw¡ zalet¡ ich stosowania jest równie»

brak potrzeby wyznaczania korespondencji (jak to ma miejsce w systemach stereowizyjnych), co pozytywnie wpªywa na szybko±¢ ich dziaªania. Kolejn¡

przewag¡ tych sensorów nad kamerami pasywnymi (stosowanymi pojedyn- czo jak równie» w parach stereowizyjnych) jest brak potrzeby wyst¦powania wyró»nialnych cech w ±rodowisku poddawanemu pomiarowi. Jednym z prost- szych wzorów emitowanych przez o±wietlacz jest tzw. arkusz ±wietlny. W tym przypadku na o±wietlonych obiektach pojawiaj¡ si¦ linie, których deformacja pozwala wnioskowa¢ o ich wspóªrz¦dnych 3D wzgl¦dem kamery. Poniewa»

przy wykorzystaniu arkusza ±wietlnego pomiarowi podlega tylko o±wietlony

fragment sceny w ksztaªcie linii, to w celu uzyskania pomiaru wi¦kszego ob-

szaru, sensor musi by¢ poruszany [102] wzgl¦dem badanego obiektu, b¡d¹

obiekt wzgl¦dem sensora [33]. Jednoczesne pokrycie o±wietleniem wi¦kszych

powierzchni jest mo»liwe przy u»yciu bardziej skomplikowanych wzorów, naj-

cz¦±ciej uzyskiwanych przy u»yciu projektora LCD [99][91], jednak z uwagi

na rozmiary i mas¦ projektora, takie sensory s¡ niepraktyczne z punktu wi-

dzenia robotów krocz¡cych. Ukªady z o±wietleniem strukturalnym byªy z po-

wodzeniem wykorzystywane w przypadku robotów koªowych, do tworzenia

map wysoko±ci [3], b¡d¹ zaj¦to±ci [47], jak równie» do samolokalizacji robota

[2]. Sensory tego typu nie byªy jednak cz¦sto wykorzystywane z robotami

krocz¡cymi, pomimo oczywistych zalet, takich jak niewielka masa i rozmiar

oraz niska cena.

(16)

2.1.3 Sensor Kinect/Xtion

Szczególnym przykªadem ukªadu z o±wietleniem strukturalnym jest sensor

rmy PrimeSense, sprzedawany jako urz¡dzenia Kinect rmy Microsoft [38]

oraz Xtion rmy Asus. Dzi¦ki niskiej cenie, zyskaª on popularno±¢ w±ród amatorów, natomiast wzgl¦dnie dobra jako±¢ pomiaru [109] predysponuje go równie» do zastosowa« naukowych. Ukªad ten emituje w podczerwieni zbiór kropek, obserwowanych przez dedykowan¡ kamer¦. Zarejestrowane kropki s¡ nast¦pnie korelowane z zapisanym wzorcem, dzi¦ki czemu mo»liwe jest wyznaczenie dysparycji, a co za tym idzie, gª¦bi poszczególnych punktów.

Po interpolacji wyznaczana jest g¦sta mapa gª¦bi o rozdzielczo±ci 640 × 480 punktów. Sensor Kinect wykorzystywany byª do budowy modelu 3D otocze- nia w postaci chmury punktów [28], jednak liczba punktów otrzymywanych z sensora jest tak du»a, »e przetworzenie ich w czasie rzeczywistym w pokªa- dowej jednostce obliczeniowej robota krocz¡cego jest problematyczne. Sensor Kinect mo»e by¢ te» wykorzystany do samolokalizacji robota [75][78].

2.1.4 Kamery w ukªadzie stereowizyjnym

Kamery stereowizyjne, pomimo konkurencji ze strony skanerów laserowych, kamer TOF oraz ostatnimi czasy sensorów z o±wietleniem strukturalnym (gªównie Microsoft Kinect), wci¡» pozostaj¡ podstawowym narz¦dziem wy- korzystywanym do rekonstrukcji sceny robotów krocz¡cych. W przypadku tego rodzaju robotów, cz¦sto wykorzystywan¡ reprezentacj¡ otoczenia jest mapa wysoko±ci, do której utworzenia wymagana jest g¦sta mapa gª¦bi.

W przypadku kamer stereowizyjnych, po odpowiedniej kalibracji i przetwo- rzeniu obrazów, mo»liwe jest wyznaczenie gª¦bi dla ka»dego z pikseli. Jest to jednak zadanie wymagaj¡ce obliczeniowo, szczególnie dla wbudowanych komputerów robotów krocz¡cych. Najbardziej godnymi uwagi zastosowania- mi g¦stej mapy gª¦bi uzyskanej przy u»yciu kamery stereowizyjnej, s¡ prace [42][96][108]. W [96] zaprezentowano system pozwalaj¡cy na tworzenie mapy otoczenia w warunkach zewn¦trznych (ang. outdoor). Wykorzystano jednak robota RHex, którego specyczne mo»liwo±ci ruchowe nie wymagaj¡ wyboru punktów podparcia stóp, w zwi¡zku z czym mapa terenu nie musiaªa mie¢

wysokiej rozdzielczo±ci. Mimo to, przetwarzanie danych wizyjnych i budo-

wa mapy w caªo±ci odbywaªa si¦ na zewn¦trznym komputerze. Zewn¦trzna

jednostka obliczeniowa zostaªa równie» wykorzystana w [42]. W pracy tej za-

prezentowano sposób usuwania ubytków w mapie terenu, zwi¡zanych z typo-

wym dla kamer stereowizyjnych zjawiskiem, jakim jest przesªanianie. Oprócz

tego wykorzystano g¦st¡ map¦ gª¦bi do samolokalizacji przy u»yciu metody

opartej na algorytmie ICP. W [108] do budowy mapy terenu przy u»yciu ka-

(17)

mery stereowizyjnej wykorzystano metod¦ Locus [48] (krótki opis tej metody przedstawiono w rozdziale 2.2). Aby umo»liwi¢ dziaªanie systemu w czasie rzeczywistym, wykorzystano implementacj¦ na GPU.

Mniej wymagaj¡ce obliczeniowo jest wykorzystanie rzadkiej mapy opartej tyl- ko na wybranych fragmentach obrazu, zawieraj¡cych wyra¹ne cechy. Dobrym przykªadem jest SLAM operuj¡cy w 6 stopniach swobody, zaprezentowany w pracy [84]. Dzi¦ki zastosowaniu kamery stereowizyjnej, problem z niezna- jomo±ci¡ skali nie wyst¦puje i do jej okre±lenia nie potrzeba innych sensorów.

Jednocze±nie autorzy tej pracy przekonuj¡, »e system jest w stanie dziaªa¢

w czasie rzeczywistym. Rzadka mapa otoczenia nie nadaje si¦ jednak do pla- nowania punktów podparcia nóg robota krocz¡cego, mo»e by¢ wykorzystana jedynie do planowania jego ±cie»ki lub samolokalizacji. W zwi¡zku z ograni- czeniami energii i masy, jakimi cechuj¡ si¦ roboty krocz¡ce, celowym wydaje si¦ wykorzystanie kamery stereowizyjnej z wbudowanym przetwarzaniem da- nych, takiej jak kamera Videre Design STOC [43] b¡d¹ Tyzx DeepSea [116].

Kamery te posiadaj¡ sprz¦towe wsparcie dla przetwarzania danych stereo- wizyjnych, w wyniku czego mo»na z nich uzyska¢ bezpo±rednio g¦st¡ map¦

gª¦bi. Wykorzystanie tego typu sensorów do budowy mapy terenu nie jest jed- nak rozpowszechnione, a prace naukowe, w których s¡ one wykorzystywane, ograniczaj¡ si¦ (wedªug wiedzy autora) do prac jednego zespoªu [87][88].

2.1.5 Skanery laserowe

Skanuj¡ce dalmierze laserowe, nazywane równie» skanerami laserowymi, na- le»¡ do grupy aktywnych sensorów wizyjnych. Pozwalaj¡ one na pomiar od- legªo±ci w jednej pªaszczy¹nie (skanery 2D) b¡d¹ generowanie g¦stej mapy gª¦bi, przy u»yciu obrotowych gªowic (skanery 3D). Skanery laserowe gene- ruj¡ wi¡zk¦ ±wiatªa, która jest przesuwana w jednej pªaszczy¹nie przy u»yciu obrotowego lustra, a po odbiciu od przeszkody powraca do sensora. Z uwagi na zasad¦ pomiaru odlegªo±ci mo»na zasadniczo rozró»ni¢ dwie grupy ska- nerów laserowych. Pierwsza grupa to urz¡dzenia dziaªaj¡ce na zasadzie po- miaru czasu przelotu. Dla ka»dego mierzonego punktu wysyªany jest krótki impuls ±wietlny, a czas który upªyn¡ª od wysªania impulsu do jego powrotu wykorzystywany jest do wyznaczenia odlegªo±ci [107]. Najpopularniejszymi sensorami tego typu jest rodzina LMS-200 rmy SICK. Do drugiej grupy nale»¡ skanery dziaªaj¡ce w oparciu o przesuni¦cie fazowe fali modulowa- nej amplitudowo ( AMCW, ang. Amplitude Modulated Continuous Wave).

W sensorach tego typu, amplituda wysyªanej wi¡zki jest modulowana w spo-

sób sinusoidalny, tworz¡c fal¦. Odbita od przeszkody wi¡zka jest przesuni¦ta

w fazie, dzi¦ki czemu mo»na wyznaczy¢ odlegªo±¢ do tej przeszkody, w zakre-

sie jednoznaczno±ci r

u

=

12

· λ

AM

, gdzie λ

AM

oznacza dªugo±¢ modulowanej

(18)

fali [107]. Zwi¦kszenie zakresu jednoznaczno±ci osi¡ga si¦ poprzez modulacj¦

fali z dwoma ró»nymi cz¦stotliwo±ciami. Przedstawicielem tej grupy skane- rów laserowych, który zyskaª ostatnimi czasy du»¡ popularno±¢, jest Hokuyo URG-04LX [41][82].

Wykorzystanie obrotowych gªowic pozwala na obracanie skanerem i tworze- nie w ten sposób g¦stej mapy gª¦bi. Taki proces wymaga jednak najcz¦±ciej, aby robot staª nieruchomo podczas obrotu gªowicy, co jest niepraktyczne.

Oprócz tego gªowice wprowadzaj¡ dodatkow¡ mas¦, przez co ich zastosowa- nie w robotach krocz¡cych jest ograniczone.

Metody rekonstrukcji trójwymiarowej sceny robotów mobilnych cz¦sto ba- dane s¡ z wykorzystaniem robotów koªowych. Istniej¡ prace, w których ska- nowanie obszaru przed robotem realizowane jest poprzez ruch pochylonego skanera wraz z robotem [118], b¡d¹ poprzez wykorzystanie obrotowej gªowi- cy [85]. Skaner laserowy zamontowany na obrotowej gªowicy zostaª równie»

wykorzystany w przypadku robota Ambler [46]. Jak wspomniano, zastosowa- nie w robotach krocz¡cych gªowic poruszaj¡cych skanerem jest niepraktycz- ne. Mimo to rozwi¡zania, w których poruszanie skanera odbywa si¦ poprzez sam tylko ruch robota krocz¡cego, nale»¡ do nielicznych. Jednym z nich jest rozwi¡zanie przedstawione w pracy [86]. Opisano w niej robota LittleDog, wyposa»onego w pochylony skaner laserowy Hokuyo URG-04LX, który prze- miataª podªo»e przed robotem w trakcie jego ruchu. W przypadku takiego wykorzystania skanera, dokªadna znajomo±¢ lokalizacji robota jest niezb¦d- na, aby otrzyma¢ map¦ dobrej jako±ci.

Ciekawym zastosowaniem skanerów laserowych jest SLAM w 6 stopniach swobody [79][85]. W cytowanych pracach wykorzystano g¦st¡ map¦ gª¦bi, w zwi¡zku z czym w trakcie realizacji zadania SLAM mo»e by¢ budowana mapa terenu [85]. W celu uzyskania g¦stej mapy gª¦bi, wymagane jest jednak wykorzystanie obrotowych skanerów laserowych 3D. Ponadto u»yte algoryt- my (np. ICP) wymagaj¡ wysokiej mocy obliczeniowej, przez co wspomniane metody nie mog¡ by¢ u»yte w czasie rzeczywistym do budowy mapy otocze- nia robota krocz¡cego.

2.1.6 Kamery TOF

Kamery odlegªo±ciowe, zwane kamerami TOF (ang. time of ight) s¡ rozwi¡-

zaniem po±rednim pomi¦dzy kamer¡ a skanerem laserowym. Najbardziej roz-

powszechnionym przedstawicielem tej grupy jest Swissranger SR-3000 (obec-

nie zast¡piony przez model SR-4000). Urz¡dzenie to skªada si¦ z kamery

czuªej na podczerwie« oraz diod emituj¡cych ±wiatªo w tym pa±mie. Po-

dobnie jak w przypadku skanerów laserowych opartych na AMCW, diody

o±wietlaj¡ scen¦ w sposób modulowany amplitudowo. Powracaj¡ce ±wiatªo

(19)

jest odczytywane przez matryc¦ ±wiatªoczuª¡ i na podstawie przesuni¦cia fazowego okre±lana jest odlegªo±¢ od obiektów, dla ka»dego z pikseli z osob- na. Sensory tego typu posiadaj¡ zalety zarówno kamer stereowizyjnych, jak i skanerów laserowych [88]. Mierz¡ jednocze±nie odlegªo±¢ dla wi¦kszych ob- szarów, tak jak kamery stereowizyjne, produkuj¡c g¦st¡ map¦ gª¦bi. Jedno- cze±nie budowa mapy gª¦bi nie wymaga dodatkowego przetwarzania danych, a pomiary nie s¡ wra»liwe na brak wyra¹nych cech na obrazie. Istotn¡ zalet¡

kamer TOF jest równie» krótki czas pomiaru, pozwalaj¡cy wykonywa¢ wie- le pomiarów w trakcie sekundy. Sensory te dziedzicz¡ jednak równie» wady kamer oraz skanerów laserowych. Pole widzenia obiektywu kamery Swissran- ger SR-3000 jest niewielkie, a ostre ±wiatªo z diod rozmieszczonych dookoªa obiektywu wprowadza artefakty w rogach obrazu, jeszcze bardziej zmniej- szaj¡c efektywne k¡ty widzenia. Pomiary przy u»yciu SR-3000 cechuj¡ si¦

równie» mniejsz¡ rozdzielczo±ci¡ i dokªadno±ci¡, ni» pochodz¡ce ze skanerów laserowych b¡d¹ kamer stereowizyjnych. Sensor jest te» wra»liwy na warunki o±wietlenia, a tak»e na wyst¦powanie odblaskowych powierzchni. Dodatko- wo, zmniejszanie zakresu niejednoznaczno±ci pomiaru poprzez u»ycie dwóch cz¦stotliwo±ci fali, musi by¢ rozbite na kolejne klatki obrazu, zmniejszaj¡c cz¦sto±¢ pomiarów. Z powodu niedojrzaªo±ci technologii, zastosowania w re- konstrukcji sceny robota krocz¡cego s¡ ograniczone. Do najbardziej znanych prac opisuj¡cych metody mapowania przy u»yciu kamer TOF nale»¡ te zwi¡- zane z robotem Lauron [92]. Lauron wykorzystuje kamer¦ SR-3000 zarówno do budowy rastrowej mapy wysoko±ci, jak równie» do odometrii. Z uwagi na wady kamery SR-3000, algorytm samolokalizacji musi si¦ jednak wspomaga¢

danymi z »yroskopu oraz GPS. Istniej¡ równie» zastosowania kamer TOF, w których dodatkowo wykorzystywana jest pasywna kamera monokularowa.

W [89] dane z kamery o du»ym k¡cie widzenia wykorzystane zostaªy do wy- znaczenia obrotów robota przy u»yciu algorytmu typu structure from motion.

Informacja ta zostaªa nast¦pnie u»yta jako dane pocz¡tkowe dla algorytmu ICP, ª¡cz¡cego chmury punktów pochodz¡ce z kamery TOF. Do godnych uwagi rozwi¡za« wykorzystuj¡cych kamery TOF, nale»¡ równie» metody ty- pu SLAM. W pracy [70] przedstawiono sposób wyznaczania trójwymiarowe- go modelu otoczenia przy jednoczesnej samolokalizacji, na podstawie g¦stych map gª¦bi pochodz¡cych z kamery TOF. Zastosowanie algorytmu ICP wymu- sza jednak, aby przesuni¦cia pomi¦dzy kolejnymi klatkami byªy niewielkie, przez co wymagana jest wysoka cz¦stotliwo±¢ akwizycji danych. To powoduje,

»e wykorzystanie tej metody w czasie rzeczywistym jest niemo»liwe.

(20)

2.2 Istniej¡ce rozwi¡zania w zakresie

rekonstrukcji sceny robota krocz¡cego

Tak jak w przypadku wszystkich robotów autonomicznych, do efektywnego sterowania robotami krocz¡cymi wymagana jest znajomo±¢ otoczenia robota.

Wymogi robotów krocz¡cych s¡ pod tym wzgl¦dem wi¦ksze ni» w przypadku robotów koªowych i g¡sienicowych. Przykªadowo, nawigacja robotów koªo- wych, dziaªaj¡cych w ±rodowiskach indoor cz¦sto wymaga jedynie budowy dwuwymiarowego modelu terenu i polega na omijaniu przeszkód. Od robo- tów dziaªaj¡cych w warunkach zewn¦trznych (outdoor) najcz¦±ciej wymaga si¦ równie» pokonywania przeszkód, a wi¦c niezb¦dna staje si¦ znajomo±¢

ksztaªtów i wymiarów obiektów w otoczeniu robota. Je±li s¡ to roboty koªo- we b¡d¹ g¡sienicowe, to trójwymiarowa metryczna mapa terenu niekoniecznie musi by¢ wysokiej rozdzielczo±ci, z uwagi na nieskomplikowane sterowanie ru- chem robota. Z drugiej strony, je±li mamy do czynienia z robotem krocz¡cym, to posiadanie dokªadnego modelu otoczenia staje si¦ niezb¦dne, je±li chcemy planowa¢ punkty podparcia nóg [11].

Modelem zawieraj¡cym najwi¦cej informacji, jest model uzyskany bezpo-

±rednio z g¦stej mapy gª¦bi. Cz¦sto przedstawia si¦ go w postaci tzw. chmur punktów (ang. point clouds) [94]. Bezpo±rednie dziaªanie na chmurach punk- tów wci¡» jest niepraktyczne, z uwagi na ogromne wymagania obliczeniowe.

Sama budowa peªnego modelu otoczenia jest wyzwaniem i najcz¦±ciej nie da si¦ jej wykona¢ w czasie rzeczywistym [79]. Dopiero ostatnimi czasy poja- wiaj¡ si¦ implementacje (korzystaj¡ce z procesorów GPU), pozwalaj¡ce na budow¦ tego typu modeli otoczenia z odpowiedni¡ szybko±ci¡ [75][14]. Z tego powodu, do sterowania robotami krocz¡cymi wybiera si¦ prostsze rozwi¡- zania, a dziaªania na chmurach punktów pozostaj¡ domen¡ robotów, które mog¡ pozwoli¢ sobie na przenoszenie du»ych i silnych jednostek obliczenio- wych [95].

W sterowaniu robotami krocz¡cymi, najbardziej rozpowszechnionym mo- delem sceny jest rastrowa mapa wysoko±ci ang. elevation grid, zwana map¡

2,5D. Podªo»e zostaje podzielone na komórki o równym rozmiarze, a ka»da z tych komórek przechowuje warto±¢ wysoko±ci w danym punkcie. Przykªa- dow¡ map¦ wysoko±ci przedstawiono na rys. 2.1.

Pierwsze zastosowania tego typu modelu pojawiaªy si¦ ju» w latach 80.

XX wieku w odniesieniu do krocz¡cych maszyn o du»ych wymiarach i zdol- nych do przenoszenia ludzi (ASV, ang. Adaptive Suspension Vehicle) [15][40].

Pokªadowy system pojazdu ASV wyznaczaª na podstawie mapy punkty pod-

parcia nóg oraz wymagan¡ wysoko±¢, na któr¡ podnoszone byªy nogi. Ra-

strowa mapa wysoko±ci zostaªa pó¹niej wykorzystana w przypadku robota

(21)

x [cm]

y [cm]

z [cm]

Rysunek 2.1: Rastrowa mapa wysoko±ci

Rami, wyposa»onego w ruchome g¡sienice [32]. Na podstawie takiej mapy wyznaczano ±rednie nachylenie ternu, które nast¦pnie byªo wykorzystywane do odpowiedniego sterowania k¡tem natarcia g¡sienic. Jednym z pierwszych autonomicznych robotów krocz¡cych, zdolnych do budowania mapy otocze- nia byª Ambler [46], który tworzyª rastrow¡ map¦ wysoko±ci przy u»yciu metody Locus [48]. Gªównym zaªo»eniem tej metody jest wykonywanie obli- cze« zwi¡zanych z wyznaczaniem wysoko±ci w sferycznym ukªadzie skanera 3D, zamiast w kartezja«skim ukªadzie mapy. Je±li w ukªadzie skanera piono- wy k¡t skanowania oznaczymy jako ϕ, poziomy jako θ, a zmierzon¡ odlegªo±¢

jako ρ, natomiast kartezja«ski ukªad wspóªrz¦dnych xyz zdeniujemy tak,

»e o± z skierowana jest pionowo w gór¦, to wszystkie pionowe linie z ukªadu kartezja«skiego b¦d¡ krzywymi w ukªadzie skanera, wyra»onymi równaniami:

ρ = ρ

l

(ϕ) =

y2

cos(ϕ)

+ x

2

,

θ = θ

l

(ϕ) = atan

xcosϕy

. (2.1) Punkt przeci¦cia takiej krzywej z powierzchni¡ utworzon¡ przez zmierzone punkty okre±la wysoko±¢ w danej komórce mapy. Sam¡ wysoko±¢ mo»na prze- liczy¢ z ukªadu skanera z powrotem do ukªadu mapy przy u»yciu wzoru:

z = ρ · cosϕ · sinθ. (2.2)

Gªównymi zaletami takiego podej±cia s¡: mo»liwo±¢ tworzenia mapy wysoko-

±ci o dowolnej rozdzielczo±ci oraz ªatwe wyznaczanie obszarów zasªoni¦tych

(jak równie» maksymalnej mo»liwej wysoko±ci w tych obszarach).

(22)

Model otoczenia w postaci mapy wysoko±ci cz¦sto rozszerzany jest o do- datkowe elementy. W [118] mapie wysoko±ci towarzyszyªa dodatkowa mapa o identycznych rozmiarach i rozdzielczo±ci, przechowuj¡ca warto±ci wiary- godno±ci pomiaru. Wiarygodno±¢ pomiaru byªa inkrementowana za ka»dym razem, gdy w danej komórce mapy nast¡piª nowy pomiar, speªniaj¡cy zaªo-

»enia poprawno±ci (wynikaj¡ce z ogranicze« naªo»onych przez ruch robota).

Poniewa» w ogólno±ci warto±¢ wiarygodno±ci jest du»o wi¦ksza dla komó- rek przedstawiaj¡cych kraw¦dzie obiektu, ni» dla komórek reprezentuj¡cych pªaskie obszary, to mo»liwe byªo zastosowanie medianowego ltru wygªa- dzaj¡cego, wa»onego warto±ci¡ wiarygodno±ci. Dzi¦ki temu ltrowanie mapy wysoko±ci zachowywaªo kraw¦dzie obiektów, wypeªniaj¡c jednocze±nie cz¦±¢

pustych (nie poddanych pomiarowi) obszarów. Innym przykªadem zastoso- wania dodatkowych map, towarzysz¡cych mapie wysoko±ci, jest praca [92].

Opisany w niej robot Lauron IV wykorzystywaª warto±ci wysoko±ci, wariancji wysoko±ci oraz wiarygodno±ci w danej komórce mapy do werykacji punk- tów podparcia nóg, wyznaczonych przez algorytm behawioralny. W otoczeniu ka»dego z potencjalnych punktów podparcia, na podstawie warto±ci wysoko-

±ci oraz jej wariancji, wyznaczona zostaªa warto±¢ oceny, okre±laj¡ca jako±¢

danego punktu podparcia. Je±li warto±¢ wiarygodno±ci dla danego otoczenia spadaªa poni»ej pewnego progu, dany punkt podparcia byª odrzucany. Je±li natomiast warto±¢ wiarygodno±ci byªa bliska zeru (co ma miejsce w obsza- rach, w których brak jest obserwacji), punkt byª akceptowany na podstawie propozycji wypracowanej przez algorytm behawioralny.

Jedn¡ z podstawowych wad rastrowych map wysoko±ci jest brak mo»liwo-

±ci poprawnej reprezentacji obiektów wisz¡cych oraz przej±¢ pod nimi. Pro- blem ten zostaª rozwi¡zany w pracy [85], w której ka»da z komórek w mapie wysoko±ci mogªa zosta¢ zaklasykowana jako widziana z góry, pionowa, b¡d¹ z wyst¦puj¡c¡ przerw¡. W tym celu, w ka»dej z komórek mapy wysoko±ci zapisywano wszystkie pomiary, które traªy w dan¡ komórk¦. Je±li wariancja wysoko±ci tych pomiarów byªa niewielka, to komórk¦ uznawano za widzian¡

z góry, a wi¦c bez mo»liwo±ci wyst¡pienia wisz¡cych obiektów. Je±li jednak wariancja byªa du»a, to w zbiorze pomiarów odpowiadaj¡cych danej komórce wyszukiwane byªy przerwy przekraczaj¡ce wysoko±¢ robota i na tej podstawie dokonywano klasykacji pomi¦dzy komórk¡ z przerw¡, a komórk¡ pionow¡.

Nale»y zaznaczy¢, »e wraz z pojawianiem si¦ nowych pomiarów, klasykacja komórki mogªa ulec zmianie. Ostatecznie, dla komórek z przerw¡, warto±¢

wysoko±ci byªa wyznaczana jako podstawa najni»szej z przerw, co pozwalaªo robotowi na planowanie ruchu pod wisz¡cymi obiektami.

Kolejn¡ wad¡ map wysoko±ci jest wyst¦powanie obszarów bez wyznaczonej

wysoko±ci. Takie obszary, z punktu widzenia planowania ruchu, s¡ zupeªnie

nieprzydatne. Cz¦±ciowe wypeªnienie pustych obszarów mo»na osi¡gn¡¢ przy

(23)

pomocy wspomnianej ju» ltracji wygªadzaj¡cej [118]. Ciekawym rozwi¡za- niem jest te» skorzystanie w tym celu z przygotowanej wcze±niej biblioteki map wysoko±ci. W pracy [42] brakuj¡ce obszary byªy wypeªniane fragmen- tami z biblioteki znanych map wysoko±ci. Odpowiedni¡ map¦ z biblioteki wybierano na podstawie zgodno±ci otoczenia pustego obszaru z map¡ w bi- bliotece, przy dodatkowym uwzgl¦dnieniu ogranicze« geometrycznych nakªa- danych przez zjawisko przesªaniania si¦ obiektów.

Ostatnimi czasy zauwa»a si¦ próby odej±cia od reprezentacji otoczenia w postaci mapy wysoko±ci na rzecz innych modeli. W [96] chmura punktów byªa przeksztaªcana do powierzchni skªadaj¡cej si¦ z wielok¡tów, zamiast do mapy wysoko±ci. Takie podej±cie pozwalaªo na zachowanie peªnej trój- wymiarowo±ci modelu (m. in. poprawne odwzorowanie wisz¡cych obiektów).

Poniewa» jednak istniej¡ efektywne algorytmy planowania ruchu w oparciu o map¦ wysoko±ci, to w razie potrzeby model zbudowany z wielok¡tów mo»- na skonwertowa¢ do lokalnych map wysoko±ci, w których nie ma wisz¡cych obiektów.

Redukcji pustych obszarów w modelu sceny robota krocz¡cego podj¦to si¦

w pracy [49], w której wykorzystano ci¡gªy model otoczenia oparty o proce- sy gaussowskie z niestacjonarn¡ funkcj¡ kowariancji. Takie podej±cie pozwala wyznaczy¢ przewidywan¡ wysoko±¢ terenu y

(y

∈ R) w dowolnym zadanym punkcie x

(x

∈ R

2

) na podstawie n zebranych wcze±niej punktów pomiaro- wych. Niestacjonarna funkcja kowariancji procesu gaussowskiego jest lokalnie dostosowywana w taki sposób, aby najlepiej odwzorowywa¢ powierzchni¦ te- renu opisan¡ przez punkty pomiarowe. Do niew¡tpliwych zalet tego podej±cia nale»y samoistne wypeªnianie luk w obszarach, w których nie ma pomiarów, wraz z estymacj¡ wiarygodno±ci wysoko±ci w danym punkcie. Dodatkowo ta- ki model otoczenia usuwa szumy wyst¦puj¡ce w danych pomiarowych przy jednoczesnym zachowaniu kraw¦dzi i naro»ników. Do wad nale»y natomiast zaliczy¢ wysokie wymagania obliczeniowe, zwi¡zane z faktem, »e funkcja ko- wariancji wyznaczana jest w sposób iteracyjny. Problem ten próbowano roz- wi¡za¢ w pracy [86], w której zauwa»ono, »e w procesie wyznaczania funk- cji kowariancji, odlegªe punkty nie maj¡ znacz¡cego wpªywu na ksztaªt tej funkcji. W zwi¡zku z tym przestrze« wokóª robota zostaªa podzielona na mniejsze, zaz¦biaj¡ce si¦ obszary, a ka»demu z obszarów przypisano osobny proces gaussowski. W procesie wyznaczania funkcji kowariancji byªy brane pod uwag¦ tylko punkty z danego obszaru, co znacznie ograniczyªo rozmia- ry wykorzystywanych do oblicze« zbiorów danych. Takie podej±cie pozwoliªo zwi¦kszy¢ wydajno±¢ metody i z powodzeniem zastosowa¢ model otoczenia oparty na procesach gaussowskich do budowy mapy dla robota LittleDog.

W kontek±cie zagadnie« poruszanych w niniejszej rozprawie nale»y rów-

nie» wspomnie¢ o metodach modelowania schodów. Próby pokonywania scho-

(24)

dów byªy ju» podejmowane w przypadku robotów koªowych i g¡sienicowych.

Zaprezentowany w pracy [69] robot g¡sienicowy miaª mo»liwo±¢ pokonywania schodów, a kraw¦dzie stopni wykryte na obrazie z kamery stereowizyjnej po- zwalaªy na odpowiedni¡ orientacj¦ wzgl¦dem stopni oraz ustawienie w równej odlegªo±ci od bocznych kraw¦dzi schodów. W [71] robot g¡sienicowy osi¡gaª podobne poªo»enie wzgl¦dem schodów dzi¦ki danym z dwóch prostopadle ustawionych skanerów Hokuyo URG-04LX, skanuj¡cych w pªaszczy¹nie po- ziomej oraz pionowej. Wykorzystanie danych metrycznych pozwoliªo równie»

na pomiar gª¦boko±ci stopnia. Istniej¡ równie» rozwi¡zania pozwalaj¡ce na

pokonywanie schodów przy u»yciu robotów krocz¡cych. Niektóre rozwi¡za-

nia nie przewiduj¡ budowy modelu schodów: wspinaczka odbywa si¦ w p¦tli

otwartej [73], b¡d¹ zakªada si¦, »e model otoczenia jest znany [36]. Wspi-

naczka w p¦tli otwartej ma te» miejsce w przypadku sze±ciono»nego robota

krocz¡cego Asterisk [111], który tworzy trójwymiarowy model schodów przy

u»yciu obrotowego skanera laserowego. Chmura punktów uzyskana ze skane-

ra przeksztaªcana jest do modelu otoczenia skªadaj¡cego si¦ z wielok¡tów,

na którym nast¦pnie wykrywane s¡ linie i pªaszczyzny odpowiadaj¡ce scho-

dom. Budowa modelu schodów miaªa te» miejsce w przypadku robotów dwu-

no»nych. Robot BART-UH [1] wykorzystywaª kamer¦ stereowizyjn¡, a tak»e

o±wietlacz laserowy do wykrycia konturu schodów na obrazach z tej kame-

ry. Nast¦pnie przy u»yciu transformaty Hougha, na obrazie wykrywane byªy

kraw¦dzie stopni i w efekcie wymiary schodów. W pracy [26] przetwarzanie

danych odbywa si¦ w przestrzeni 3D: dane s¡ segmentowane, a nast¦pnie

w±ród segmentów wykrywane s¡ pªaszczyzny (przy u»yciu transformaty Ho-

ugha), które mog¡ zosta¢ zaklasykowane jako stopnie. Przetwarzanie da-

nych stereowizyjnych odbywa si¦ przy wykorzystaniu ukªadu dedykowanego

FPGA, co pozwala na budow¦ modelu schodów w czasie rzeczywistym.

(25)

Rozdziaª 3

Aktywny system wizyjny

z o±wietleniem strukturalnym

3.1 System wizyjny z o±wietleniem strukturalnym

Ukªady z o±wietleniem strukturalnym s¡ liczn¡ rodzin¡ sensorów, obejmu- j¡cych niewielkie urz¡dzenia skªadaj¡ce si¦ z kamery internetowej i lekkiego o±wietlacza diodowego, jak równie» ukªady wykorzystuj¡ce projektory mul- timedialne. Szerszy opis stanu bada« w zakresie ukªadów z o±wietleniem strukturalnym przedstawiono w rozdziale 2.1.2. Wykorzystanie o±wietlenia strukturalnego w systemie sensorycznym robota krocz¡cego nakªada powa»- ne ograniczenia na rozmiar, mas¦ oraz pobór energii o±wietlacza. Dlatego te»

w robocie Ragno [55] wykorzystywana jest podstawowa konguracja ukªadu, skªadaj¡ca si¦ z kamery internetowej oraz moduªu o±wietlacza generuj¡cego arkusz ±wietlny, zamontowanego ponad kamer¡ na aluminiowym ramieniu.

Zdj¦cie wykorzystywanego systemu, zamontowanego na robocie Ragno przed-

stawiono na rysunku 3.1. Prezentowany system zostaª u»yty w celu akwizycji

geometrii sceny robota krocz¡cego. Pomiary odlegªo±ci wykonane przy u»y-

ciu tego sensora wykorzystano do budowy mapy terenu typu elevation grid

(rozdz. 4.2), oraz w celu akwizycji geometrii schodów (rozdz. 4.1).

(26)

a b

Rysunek 3.1: Robot Ragno wyposa»ony w ukªad z o±wietleniem struktural- nym. Widok z przodu (a) oraz podczas wykonywania pomiarów (b)

3.2 Algorytm rekonstrukcji geometrii sceny trójwymiarowej

3.2.1 Pomiary przy u»yciu ukªadu kamera  o±wietlacz

Aby dokonywa¢ pomiarów odlegªo±ci przy u»yciu omawianego systemu, ko- nieczna jest wcze±niejsza kalibracja kamery oraz caªego ukªadu zªo»onego z kamery i o±wietlacza. Proces kalibracji ukªadu zostaª opisany w rozdziale 3.3. Poªo»enie pªaszczyzny arkusza ±wietlnego wzgl¦dem kamery podlega je- dynie dwóm ograniczeniom (rys. 3.2). Po pierwsze, ±lad arkusza ±wietlnego musi by¢ widoczny na obrazie. Po drugie, pªaszczyzna arkusza ±wietlnego nie mo»e by¢ ustawiona w sposób powoduj¡cy caªkowite zawieranie si¦ osi optycznej w tej pªaszczy¹nie. Dodatkowo zakªada si¦, »e obrazy pochodz¡ce z kamery s¡ wolne od znieksztaªce« geometrycznych. W praktyce osi¡ga si¦

to poprzez odpowiednie przeksztaªcenie obrazów po ich akwizycji do postaci wolnej od dystorsji.

Pªaszczyzna arkusza ±wietlnego opisana jest równaniem ogólnym

Ax + By + Cz + D = 0, (3.1)

w zwi¡zku z czym parametrami pªaszczyzny s¡ wspóªczynniki A, B, C, D.

Parametry te wyznaczane s¡ w procesie kalibracji.

W punktach, w których arkusz ±wietlny przecina si¦ z przeszkod¡, po-

wstaje ±lad ±wietlny. Jest on widoczny na obrazie w postaci grupy czerwo-

nych pikseli i tworzy si¦ na obrazie w wyniku rzutowania perspektywiczne-

go, zgodnie z modelem wewn¦trznym kamery [17]. Przy u»yciu parametrów

(27)

y x z

kamera oświetlacz

] [A B C n =r

Rysunek 3.2: Schemat aktywnego systemu wizyjnego z o±wietleniem struk- turalnym

wewn¦trznych kamery (uzyskiwanych w procesie jej kalibracji) mo»na rów- nie» dokona¢ przeksztaªcenia odwrotnego do rzutowania. Takie przeksztaªce- nie przypisuje ka»demu pikselowi niesko«czenie wiele punktów le»¡cych na prostej (rys. 3.3). Ta niejednoznaczno±¢ spowodowana jest utrat¡ informacji o gª¦bi podczas rzutowania.

Na rys. 3.3 przedstawiono przeksztaªcenie pojedynczego piksela do pro- stej. Piksel nale»¡cy do ±ladu lasera ma wspóªrz¦dne obrazowe (u, v), a obraz powstaje w odlegªo±ci f od ogniska kamery. Wspóªrz¦dne piksela mo»na za- tem wyrazi¢ w ukªadzie wspóªrz¦dnych zwi¡zanym z kamer¡:

p

pc

=

x

p

y

p

z

p

 =

u − c

u

v − c

v

f

 , (3.2)

gdzie u, v - wspóªrz¦dne obrazowe punktu, f - ogniskowa kamery, c

u

, c

v

- poªo-

»enie punktu gªównego kamery we wspóªrz¦dnych obrazowych. Po obliczeniu wspóªrz¦dnych piksela w ukªadzie kamery, mo»na przyst¡pi¢ do wyznaczenia wspóªczynników odpowiadaj¡cej mu prostej, której posta¢ parametryczna

jest nast¦puj¡ca: 

x = x

0

+ at y = y

0

+ bt z = z

0

+ ct

(3.3)

W rozpatrywanym przypadku prosta zawsze przechodzi przez pocz¡tek ukªa-

du wspóªrz¦dnych, zatem wspóªczynniki x

0

, y

0

oraz z

0

s¡ zerowe. Wspóªczyn-

niki a, b, c s¡ elementami wektora le»¡cego wzdªu» prostej, okre±laj¡cego jej

kierunek. Poniewa» prosta przechodzi przez pocz¡tek ukªadu wspóªrz¦dnych

p

0

= [0 0 0]

T

oraz punkt na obrazie p

pc

= [x

p

y

p

z

p

]

T

, to wspóªczynniki

(28)

y x

z f

) , (

p, p p

K

x y z

P = ) , (

p p

I

u v

P = v

u pr os ta

Rysunek 3.3: Przeksztaªcenie odwrotne do rzutowania na obraz mo»emy wybra¢ nast¦puj¡co:

 

a = x

p

b = y

p

c = z

p

.

(3.4)

W takim przypadku, wspóªrz¦dne punktu le»¡cego na prostej b¦d¡ wy- nosi¢ [x y z]

T

= [x

p

y

p

z

p

]

T

dla warto±ci parametru t = 1.

Punkt, którego obrazem jest badany piksel, nale»y do ±ladu ±wietlnego, zatem musi le»e¢ w pªaszczy¹nie arkusza ±wietlnego. Jednocze±nie piksel mo»e by¢ obrazem niesko«czonej liczby punktów, le»¡cych na prostej wychodz¡cej z ogniska kamery. Istnieje jednak tylko jeden punkt, który nale»y jednocze±nie do prostej i pªaszczyzny arkusza ±wietlnego (pod warunkiem speªnienia zaªo-

»enia o nie zawieraniu si¦ osi optycznej w pªaszczy¹nie arkusza ±wietlnego).

Sytuacja ta zostaªa zobrazowana na rys. 3.4.

Je±li prosta dana jest równaniem parametrycznym (3.3), a pªaszczyzna równaniem ogólnym (3.2), to parametr, dla którego nast¦puje przeci¦cie pro- stej z pªaszczyzn¡ ma warto±¢

t

p

= Ax

0

+ By

0

+ Cy

0

+ D

Aa + Bb + Cc . (3.5)

Po wzi¦ciu pod uwag¦, »e wspóªczynniki x

0

, y

0

, z

0

s¡ zerowe oraz wyko- rzystaniu (3.2) i (3.4), otrzymujemy

t

p

= D

A(u − c

u

) + B(v − c

v

) + Cf . (3.6)

(29)

y x z oświetlacz

kamera

Ax+By+Cz+D=0

Rysunek 3.4: Przeci¦cie prostej poprowadzonej przez piksel z ogniska z pªasz- czyzn¡ arkusza ±wietlnego

Otrzyman¡ warto±¢ parametru nale»y nast¦pnie wstawi¢ do równania parametrycznego prostej, otrzymuj¡c punkt przeci¦cia w trójwymiarowych wspóªrz¦dnych kamery:

p

xyz

=

x

c

y

c

z

c

 =

 

 

 

(u−cu)D A(u−cu)+B(v−cv)+Cf

(v−cv)D A(u−cu)+B(v−cv)+Cf

f D

A(u−cu)+B(v−cv)+Cf

 

 

 

. (3.7)

Te obliczenia mo»na wykona¢ dla ka»dego z pikseli ±ladu, otrzymuj¡c wspóª- rz¦dne punktów ±ladu ±wietlnego w przestrzeni 3D.

3.2.2 Ekstrakcja ±ladu ±wietlnego na obrazie

Znajdowanie ±ladu wi¡zki lasera na obrazie odbywa si¦ w dwóch etapach.

Pierwszy polega na progowaniu obrazu barwnego i prowadzi do uzyskania obrazu binarnego, na którym widoczny jest ±lad linii oraz pewna liczba ar- tefaktów. Drugi etap skªada si¦ z operacji na obrazie binarnym i ma na celu eliminacj¦ artefaktów oraz zmniejszenie szeroko±ci wykrytej linii do wymia- rów jednego piksela. Schemat blokowy algorytmu przedstawiono na rys. 3.5.

Pocz¡tkowo przetwarzanie odbywa si¦ w przestrzeni barw RGB i ma na celu usuni¦cie pikseli o kolorze biaªym, czarnym oraz pikseli szarych. Piksele, dla których warto±ci R,G,B ró»ni¡ si¦ o mniej ni» 20 nie s¡ brane pod uwag¦

w dalszym przetwarzaniu.

(30)

Obraz RGB

Etap 1

Usuwanie szarych, białych i czarnych pikseli w RGB

Konwersja do HSV

Globalne progowanie wartości H Globalne progowanie

wartości S

Progowanie kolumnami wartości V

Obraz binarny

Etap 2 Usuwanie pojedynczych pikseli

Morfologiczne domknięcie Usuwanie zbyt dużych

elementów (blobów) Uśrednianie pozycji pikseli Morfologiczne

domknięcie Usuwanie pikseli o małej liczbie sąsiadów

Wykryty ślad lasera

Rysunek 3.5: Schemat blokowy algorytmu wykrywania ±ladu lasera na obrazie Dalsze przetwarzanie obrazu odbywa si¦ w przestrzeni HSV. Jest to prze- strze« barw wzorowana na modelu postrzegania kolorów przez ludzkie oko [34]. W skªad opisu tej przestrzeni wchodz¡ 3 wielko±ci: H odcie« (ang. hue), S nasycenie koloru (ang. saturation) oraz V jasno±¢ (ang. value), oznaczana te» jako B (od angielskiego brightness). Przestrze« HSV mo»na przedstawi¢

jako sto»ek (rys. 3.6), w którym wzdªu» promienia zmienia si¦ nasycenie, wzdªu» wysoko±ci warto±¢, a odcie« zale»ny jest od k¡ta promienia podsta- wy. Warto±ci odcienia mog¡ wi¦c wynosi¢ od 0 do 360

(przedstawiane te»

jako warto±ci z zakresu mi¦dzy 0 a 1), przy czym warto±¢ maksymalna oraz

minimalna s¡ to»same. Jasno±¢ oraz nasycenie mog¡ przyjmowa¢ warto±ci

(31)

z zakresu od 0 do 1. Gªówn¡ zalet¡ przestrzeni HSV w kontek±cie wykry-

H

S V

Rysunek 3.6: Wizualizacja przestrzeni barw HSV

wania ±ladu ±wietlnego na obrazie jest rozdzielenie opisu odcienia barwy od pozostaªych wªa±ciwo±ci. Przykªadowo, wszystkie barwy czerwone b¦d¡ kon- centrowa¢ si¦ w okolicy warto±ci H równych 0 oraz 1 (0

oraz 360

), natomiast zielone  w okolicy warto±ci H równiej 0, 33 (120

).

Pierwszym krokiem przetwarzania w przestrzeni barw HSV jest progo- wanie w kanale H, maj¡ce na celu pozostawienie jedynie pikseli o barwie czerwonej (warto±ci H mniejsze od 0,1 lub wi¦ksze ni» 0,9). Nast¦pnie odrzu- cane s¡ piksele o warto±ci S mniejszej ni» 0,2. Kolejnym krokiem jest progo- wanie w kanale V, prowadz¡ce do wyboru najsilniejszej warto±ci V w ka»dej z kolumn obrazu. Poniewa» jasno±¢ linii lasera jest najwi¦ksza, gdy linia znaj- duje si¦ w górnej cz¦±ci obrazu (±lad lasera jest blisko kamery) i spada wraz z oddalaniem si¦ ±ladu lasera od kamery, to przyj¦to pewien minimalny próg warto±ci V, zale»ny od poªo»enia piksela na obrazie (w pionie):

V

mini

= 0, 4 + (

1 i

R

pion

/2 · 0, 8 )

, (3.8)

gdzie i jest numerem wiersza, w którym dokonujemy progowania, a R

pion

jest liczb¡ wierszy obrazu. Jednocze±nie zaªo»ono, »e V

mini

nie mo»e by¢ wi¦ksze ni» 0,85 i mniejsze ni» 0,4.

Przyj¦cie progu minimalnego, zale»nego od poªo»enia piksela na obrazie, powoduje, »e w górnej cz¦±ci obrazu mog¡ zosta¢ wykryte tylko piksele o du-

»ej warto±ci V. Piksele o maªej warto±ci V zostan¡ odrzucone, nawet je±li

maj¡ najwi¦ksz¡ warto±¢ V w caªej kolumnie. Na rys. 3.7 a i b przedstawio-

no odpowiednio obraz w przestrzeni RGB oraz kanaª V w przestrzeni HSV.

(32)

Rysunek 3.7c przedstawia obraz binarny otrzymany po operacjach progowa- nia. Drugi etap przetwarzania skªada si¦ z szeregu operacji morfologicznych

Rysunek 3.7: Gªówne etapy przetwarzania obrazu

na obrazie binarnym otrzymanym z etapu pierwszego. W pierwszej kolejno±ci usuwane s¡ pojedyncze piksele (nie maj¡ce innych pikseli o warto±ci 1 w swo- im otoczeniu).

Nast¦pnie na obrazie wykonywana jest operacja domkni¦cia, która ma na celu zlanie chmurek pikseli i powi¦kszenie blobów o nieregularnych ksztaª- tach. Ta operacja nie ma »adnego wpªywu na prawidªowo wykryte fragmenty linii, które s¡ elementami ci¡gªymi i liniowymi (rys. 3.7 d).

Powi¦kszenie artefaktów wykorzystywane jest w kolejnym kroku, polegaj¡- cym na usuwaniu zbyt wysokich fragmentów blobów. Poniewa» grubo±¢ wi- docznej na obrazie linii lasera spada wraz z oddalaniem si¦ od kamery, to fragmenty linii wykryte w dolnej cz¦±ci obrazu powinny mie¢ mniejsz¡ gru- bo±¢, ni» te wykryte w górnej cz¦±ci obrazu. Maksymalna grubo±¢ linii dla danego poªo»enia na obrazie okre±lona zostaªa na podstawie modelu ukªadu (wyliczono ró»nic¦ w pikselach, odpowiadaj¡c¡ grubo±ci linii równej 8 mm).

Wynik tej operacji widoczny jest na rysunku 3.7 e. Nast¦pnym dziaªaniem jest u±rednienie poªo»enia blobów w kolumnach obrazu. W ka»dej kolum- nie wszystkie piksele zast¦powane s¡ jednym, poªo»onym pomi¦dzy dwoma skrajnymi (poªo»enie w kolumnie liczone jest na zasadzie ±redniej arytme- tycznej). Przeprowadzenie tej operacji ma dwojaki cel. Po pierwsze, wykryte fragmenty linii lasera s¡ pocieniane do grubo±ci 1 piksela. Po drugie, je±li w danej kolumnie oprócz piksela nale»¡cego do linii lasera wyst¦powaª arte- fakt, to piksel o poªo»eniu ±rednim znajdzie si¦ poza lini¡. Taki piksel b¦dzie ªatwiejszy do usuni¦cia w ostatnim kroku.

Po u±rednieniu pozycji pikseli nast¦puje kolejne domkni¦cie obrazu. Ma ono

(33)

na celu usuni¦cie ubytków w liniach, które mogªy powsta¢ w poprzednim kroku, je±li w danej kolumnie oprócz linii znajdowaª si¦ równie» artefakt.

Ostatnim krokiem jest usuni¦cie pikseli, które maj¡ niewielu s¡siadów w swo- im otoczeniu. Prowadzi on do usuni¦cia pikseli znajduj¡cych si¦ poza wi¦kszy- mi, spójnymi strukturami. W operacji poszukiwania s¡siadów przyj¦to okno kwadratowe o wymiarach 7×7, a za minimaln¡ liczb¦ pikseli w otoczeniu, wymagan¡ aby zachowa¢ piksel, przyj¦to 3. Efekt tej operacji przedstawiono na rysunku 3.7 f.

3.3 Metoda kalibracji systemu i analiza niepewno±ci pomiaru wielko±ci

geometrycznych

3.3.1 Kalibracja ukªadu kamera  o±wietlacz

Do wyznaczenia poªo»enia punktu nale»¡cego do ±ladu ±wietlnego w ukªa- dzie kamery, niezb¦dna jest znajomo±¢ równania pªaszczyzny arkusza ±wietl- nego w ukªadzie kamery. Badania nad algorytmami pozwalaj¡cymi na wy- znaczenie przeksztaªcenia pomi¦dzy ukªadami o±wietlacza i kamery wraz z kolejnymi próbami wykorzystania takich ukªadów [19][90][31]. W ka»dym z przypadków wymagane jest wyznaczenie transformacji pomi¦dzy wspóª- rz¦dnymi obrazowymi a wspóªrz¦dnymi 3D, tzn. wyznaczenie poªo»enia ±la- du ±wietlnego w ukªadzie kamery. W opisywanym algorytmie zastosowano w tym celu metod¦ podobn¡ do podanej w [120], tzn. skorzystano z sza- chownicy wykorzystywanej w kalibracji parametrów wewn¦trznych kamery.

Parametry te wyznaczone zostaªy przy u»yciu narz¦dzia w ±rodowisku Ma-

tlab [17]. W procesie kalibracji parametrów wewn¦trznych kamery wykonano

seri¦ uj¦¢ szachownicy o znanych rozmiarach pól. Nast¦pnie, na drodze mini-

malizacji bª¦du reprojekcji, wyznaczane s¡ zarówno parametry wewn¦trzne

modelu kamery, jak równie» parametry zewn¦trzne, tzn. poªo»enie szachow-

nicy z ka»dego uj¦cia w ukªadzie kamery. Poniewa» na wszystkich obrazach

wykorzystanych do kalibracji parametrów wewn¦trznych kamery ±lad ±wietl-

ny znajdowaª si¦ na szachownicy (rys. 3.8), to mo»liwe byªo wyznaczenie

poªo»enia ±ladu w ukªadzie szachownicy. Z ka»dego zdj¦cia wybrano po dwa

piksele, nale»¡ce do ±ladu ±wietlnego, le»¡ce na brzegach szachownicy. Dla

ka»dego z wybranych pikseli wyznaczono nast¦pnie poªo»enie ich odpowiedni-

ków w przestrzeni. Odpowiednie obliczenia przeprowadzone zostaªy w sposób

analogiczny jak w cz¦±ci 3.2.1, przy czym zamiast pªaszczyzny arkusza ±wietl-

nego u»yto pªaszczyzny szachownicy, której poªo»enie zostaªo wyznaczone

Cytaty

Powiązane dokumenty

Jeżeli stos jest pusty i pole, na którym znajduje się robot, nie sąsiaduje bezpośrednio z nieodwiedzonym polem, to robot przemieszcza się wzdłuż najkrótszej

W pracy przedstawiono koncepcję układu do pomiaru przepływów nieustalonych za pomocą rotametru i przetwarzania położenia pływaka rotametru na sygnał cyfrowy

p-euma - Jest zbiorem wartości, z których każda Jest sunę poziomów Jaskrawości olementów leżęcych wz dł uż Jednego r-obszaru, przy czym dany punkt obrazu

Metoda wytr cania preparatów, podobnie jak acetylacja białek nasion soczewicy i wyki, w niewielkim stopniu zwi ksza wła ciwo ci przeciwutleniaj ce ich hydrolizatów..

Je±li u»yjemy do takiego przewidywania wzorów zagadnienia dwóch ciaª, to otrzymujemy efe- meryd¦ keplerowsk¡ tego ciaªa.. Je±li e ̸= 0, mo»emy przyst¡pi¢ do poszukiwania

OPIL-E4-IO3-FE01 100036505 16-kanałowy koncentrator I/O przeznaczony do podłączenia 16 sygnałów cyfrowych PNP do modułu master IO-Link (wejście/wyjście elastycznie wybierane

Celem pracy było zbadanie możliwości wykorzystania dwuwymiarowego ska- nera laserowego LIDAR SICK LMS200 do zbierania danych liczbowych umożliwiających opisanie przestrzennych

Pierwszym etapem procesu eksploracji jest przygoto- wanie danych, czyli czyszczenie i przekszta³canie, wybór podzbiorów rekordów (przypadków), ewentualny wstêpny wybór