77
Sistema de localització per a un robot mòbil basat amb sensor làser Titulació: Enginyeria Tècnica Industrial Especialitat en Electrònica Industrial. AUTOR: Joan Garriga Muñoz DIRECTOR: Albert Oller Pujol DATA: Juny del 2008

Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

Sistema de localització per a un robot

mòbil basat amb sensor làser

Titulació: Enginyeria Tècnica Industrial Especialitat en Electrònica Industrial. AUTOR: Joan Garriga Muñoz

DIRECTOR: Albert Oller Pujol

DATA: Juny del 2008

Page 2: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

2

Agraïments: Als companys de M-BOT SOLUTIONS S.L. per la seva implicació en aquest projecte. Als meus pares que m’han ajudat en tot moment.

Page 3: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

3

Preàmbul. Aquest projecte final de carrera conté informació confidencial i està acollit a la NORMATIVA DE PROJECTES FI DE CARRERA (ETIE-E, ETIE-EI, EAEI) , aprovada per la Junta del Centre 30 / 05 /03. La empresa M-BOT SOLUTIONS S.L. amb domicili social, avinguda Països Catalans, número 26 ( CP 43007) de Tarragona, disposa de la informació classificada com a confidencial que correspon al codi font del software presentat, i a les característiques tècniques del robot de treball, encara en procés de desenvolupament.

Page 4: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

4

Sistema de localització per a un robot

mòbil basat amb sensor làser 1. ÍNDEX GENERAL

Page 5: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

5

1. ÍNDEX GENERAL.......................................................................................................... 4 2. MEMÒRIA DESCRIPTIVA ........................................................................................... 7 2.1 OBJECTE DEL PROJECTE...................................................................................... 7 2.2 ABAST ......................................................................................................................... 8 2.3 ANTECEDENTS ......................................................................................................... 8 2.4 DEFINICIONS I ABREVIACIONS .......................................................................... 8 2.5 INTRODUCCIÓ .......................................................................................................... 9 2.5.1 Robot mòbil ........................................................................................................... 9 2.5.2 Aplicacions robòtica ........................................................................................... 11 2.5.3 Tipus de robots.................................................................................................... 12 2.5.4 Morfologia de robots amb rodes ........................................................................ 14 2.5.5 Arquitectures de control ..................................................................................... 15 2.5.6 Arquitectures purament reactives ...................................................................... 15 2.5.7 Arquitectures basades en comportaments ......................................................... 15 2.5.8 Arquitectures típicament deliberatives............................................................... 16 2.5.9 Arquitectures híbrides. ....................................................................................... 16 2.6 ESPECIFICACIONS DEL ROBOT DE TREBALL. ............................................... 16 2.6.1 Especificacions tècniques del robot. .................................................................. 17 2.7 SENSORS ................................................................................................................... 17 2.7.1 Resolució i precisió .............................................................................................. 18 2.7.2 Tipus de sensors ................................................................................................... 19 2.8 SENSORS LIDAR ...................................................................................................... 19 2.8.1 Detecció de velocitats ........................................................................................... 19 2.8.2 Opcions de mercat................................................................................................ 20 2.8.3 Especificacions del sensor URG – 04LX. LIDAR. ........................................... 20 2.8.3.1 Aplicacions ................................................................................................ 21 2.8.3.2 Zones de detecció ...................................................................................... 21 2.8.3.3 Dimensió externa del sensor .................................................................... 23 2.8.3.4 Especificacions tècniques del sensor. ...................................................... 23 2.8.3.5 Exemple d’ escaneig ................................................................................. 24 2.8.3.6 Característiques de construcció. .............................................................. 24 2.9 PROCESSAMENT D’IMATGES. ............................................................................. 26 2.9.1 Imatge Digital. ..................................................................................................... 26 2.9.1.1 Píxel........................................................................................................... 27 2.9.1.2 Resolució. ................................................................................................. 27 2.9.1.3 Preprocessament d’imatges. .................................................................... 28 2.9.1.4 Escales de grisos. ..................................................................................... 28

Page 6: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

6

2.9.2 Relacions entre píxels : veïnat, connectivitat.................................................... 29 2.9.3 Transformacions matemàtiques........................................................................ 29 2.9.3.1 Les series de Fourier. ............................................................................... 29 2.9.3.2 La tranformada de Fourier ...................................................................... 30 2.9.3.3 Operacions aritmètiques i lògiques entre imatges................................... 31 2.9.3.4 Transformacions geomètriques................................................................ 31 2.9.3.5 Eliminació de soroll .................................................................................. 31 2.9.4 Filtres passa baixos especials............................................................................ 32 2.9.5 Gausiana ............................................................................................................ 33 2.9.6 Extracció de Característiques ........................................................................... 35 2.9.6.1 Detecció de marges ................................................................................... 35 2.9.6.2 Tècniques basades en el gradient............................................................. 35 2.9.6.3 Operador Roberts...................................................................................... 36 2.9.6.4 Operador Prewitt...................................................................................... 37 2.9.6.5 Operador Sobel ......................................................................................... 37 2.9.6.6 Operadors de segon ordre......................................................................... 37 2.9.7 Detecció de línies ............................................................................................... 38 2.9.8 Transformada de Hough ................................................................................... 40 2.10. DETECCIÓ DE LÍNIES EN MATLAB ................................................................. 41 2.11. DETECCIÓ DE LÍNIES EN CASOS SIMULATS................................................ 46 2.11.1 Simulació prova nº 1......................................................................................... 47 2.11.2 Simulació prova nº 2......................................................................................... 48 2.11.3 Simulació prova nº 2......................................................................................... 49 2.11.4 Simulació prova nº 4......................................................................................... 52 2.11.5 Simulació prova nº 5......................................................................................... 54 2.11.6 Simulació prova nº 6......................................................................................... 55 2.11.7 Simulació prova nº 1......................................................................................... 57 2.11.8 Simulació prova nº 1......................................................................................... 59 2.12. DETECCIÓ DE LÍNIES EN CASOS REALS. ...................................................... 60 2.12.1 Entorn real prova nº 1 ....................................................................................... 61 2.12.2 Entorn real prova nº 2 ....................................................................................... 62 2.12.3 Entorn real prova nº 3 ....................................................................................... 63 2.12.4 Entorn real prova nº 4 ....................................................................................... 64 2.12.5 Entorn real prova nº 5 ....................................................................................... 65 3. CONCLUSIONS ........................................................................................................... 68 4. BIBLIOGRAFIA .......................................................................................................... 69 Annex ................................................................................................................................ 70 Annex 1: codi .................................................................................................................... 71 Annex 2: Manual d’usuari............................................................................................... 86

Page 7: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

7

Sistema de localització per a un robot

mòbil basat amb sensor làser 2. MEMÒRIA DESCRIPTIVA

Page 8: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

8

2. MEMÒRIA DESCRIPTIVA.

2.1 OBJECTE DEL PROJECTE.

El primer objectiu que es va marcar per a la realització d’aquest projecte era aconseguir un control de posició per a un robot mòbil que sigues capaç de descriminar objectius, tals com murs, parets, pilars rectes.

Una de les premisses era que el programa estigues fet en llenguatge c# ja que es el que s’ha utilitzat en fases anteriors a la realització d’aquest projecte.

Pel que fa als elements de treball s’ha utilitzat un sensor làser de HOKUYO URG-04LX per la seva bona qualitat- preu.

2.2 ABAST. En aquest projecte s’assumeix exclusivament la detecció de rectes en imatges, que ens proporciona un sensor làser. El software presentat es capaç de detectar qualsevol objecte que sigui constituït per una recta o diverses, i en qualsevol inclinació. Un dels objectius també es saber la equació de la recta d’aquestes per poder diferenciar aquestes dels objectius adequats. Un cop s’ha aconseguit això s’ha fet la simulació de casos reals. 2.3 ANTECEDENTS. En l’actualitat el robot es capaç de seguir la trajectòria a qualsevol punt on hi ha un objecte. El que interessa però es que es dirigeixi solament a persones físiques, per tal que puguin interactuar am la pantalla tàctil que incorpora el robot. En aquest moment el robot presenta diversos problemes, ja que es dirigeix a elements qualsevol i es desitja que sigui capaç de seleccionar els objectius adequats.

Page 9: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

9

2.4 DEFINICIONS I ABREVIACIONS.

• D’aquí en endavant es referirà al sensor URG – 04LX amb el nom de LIDAR.

Page 10: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

10

2.5 INTRODUCCIÓ

2.5.1 Robot mòbil

La història de la robòtica ha estat unida a la construcció d’ "artefactes", que tractaven de materialitzar el desig humà de crear éssers a la seva semblança i que ho descarreguessin del treball. L'enginyer espanyol Leonardo Torres Quevedo (GAP) (que va construir el primer comandament a distància per al seu torpede automòbil mitjançant telegrafia sense fil, el ajedrecista automàtic, el primer transbordador aeri i molts altres enginys) va encunyar el terme "automàtica" en relació amb la teoria de l'automatització de tasques tradicionalment associades als humans.

Karel Capek, un escriptor xec, va encunyar en 1921 el terme "Robot" en la seva obra dramàtica "Rossum's Universal Robots / R.O.R.", a partir de la paraula xeca Robbota, que significa servitud o treball forçat. El terme robòtica és encunyat per Isaac Asimov, definint a la ciència que estudia als robots. Asimov va crear també les Tres Lleis de la Robòtica. En la ciència ficció l'home ha imaginat als robots visitant nous mons, fent-se amb el poder, o simplement alleujant de les labors casolanes enginys) va encunyar el terme "automàtica" en relació amb la teoria de l'automatització de tasques tradicionalment associades als humans. La robòtica tal i com es coneix actualment sorgeix als anys 50 amb l’aparició de la cibernètica però fins l’aparició del microprocessador no s’avança ràpidament. De la dècada dels 50 era Grey Walter que va construir vuit tortugues amb un fototub com a ull capaces de moure’s al voltant d’una llum que transforma en energia elèctrica per emmagatzemar en un acumulador que té dins. Un cop està carregada s’allunya de la llum.

Figura 2.1 Robot japonès dels anys 30

Page 11: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

11

Al 1969 un equip d’investigació de Standford va crear a Shakey. Era una capsa

quadrada, amb una càmera de televisió, amb un telèmetre i una antena de ràdio. El món de Shakey era un micromon de blocs de grandària natural composat de set habitacions 10 connectades entre sí amb vuit portes. A les habitacions hi havia cubs que Shakey podia manipular, apilar i transportar per mitjà d’un teclat.

Als anys 80 amb els ordinadors empotrats, robots amb dos càmeres de visió estereoscòpica feien una reconstrucció 3D del voltant una mica limitada. Reconeixien objectes i navegaven entre ells però eren molt lents i necessitaven molt de temps per recórrer un petit trajecte.

Actualment el concepte de robòtica inclou els sistemes mòbils autònoms, capaços

de sortint per sí mateixos en entorns desconeguts i sense necessitat de supervisió humana. Per tant, la història de la robòtica es pot dividir en tres generacions:

1) El robot es capaç de repetir una seqüència pregravada de moviments, sense realimentació sensorial (control en llaç obert). 2) El robot adquireix informació limitada de l’entorn i actua en conseqüència (control de llaç tancat). Pot localitzar, classificar (mitjançant visió) i detectar esforços per adaptar els seus moviments. 3) El robot utilitza intel·ligència artificial per resoldre el problema plantejat. La seva programació està realitzada en llenguatge d’alt nivell.

Figura 2.2 Evolució del robots.

2.5.2 Aplicacions robòtica

Avui en dia els robots han passat a formar part de la nostra vida quotidiana. Existeixen robots i màquines automatitzades des de caixers automàtics, indústries on munten automòbils i fins a hospitals on hi ha braços mecanitzats assistits que fan operacions de cirurgia amb gran precisió. La robòtica s’aplica en molts àmbits:

Page 12: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

12

- Investigació. Són eines per l’assaig d’algoritmes, tècniques d’intel·ligència artificial, mètodes de desplaçament, tecnologia en comunicacions, etc. Molts casos serveixen de base per futurs robots amb aplicacions en el món real. Un exemple molt clar són: els robots busca mines i els d’exploració espacial.

- Medicina. La medicina ha estat envaïda per la robòtica i està obtenint resultats molt satisfactoris. Un exemple seria el de la operació a control remot amb braços mecànics que realitzen la operació amb molta precisió i sense fer grans incisions.

- Espai. La gran avantatge dels robots espacials es que a diferència dels humans no necessiten ni aliment ni beguda, poden treballar en condicions inhòspites i poden realitzar feines perilloses i difícils. Encara és més important que la seva pèrdua sempre es preferible a la d’un astronauta. Però son cars de dissenyar i de produir. El seu objectiu és bàsicament el de posicionar un instrument per prendre mesures, recollir mostres per examinar i muntar una estructura. Però han de complir uns requisits molt exigents: resistir un llançament, funciona en condicions ambientals difícils, pesar el mínim, consumir poca energia, tindre una llarga vida funcional, funcionar autònomament i ser summament fiables. - Llar. Els electrodomèstics formen part de la robòtica, són robots domèstics que faciliten les feines domèstiques. - Entreteniment. Des de robots que existeixen en tots els parcs d’atraccions fins els de joguina.

2.5.3 Tipus de robots. Es poden dividir en funció del control de moviment o en funció del medi. En funció del control de moviment es té:

- Autònoms. Són aquells capaços de prendre les seves pròpies decisions basats en l’estudi del seu entorn. - Teledirigits. Són aquells que necessiten la intervenció d’un operador humà, ja sigui total o parcialment. Per exemple, els utilitzats en la desactivació d’explosius.

Page 13: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

13

Figura 2.3 Robot teledirigit. En funció del medi es té:

- Terrestres. En molts casos consisteix en dotar d’intel·ligència a un vehicle convencional. Exemples com els vehicles, els robots amb potes o els manipuladors industrials.

Figura 2.4 Robot terrestre.

- Aeris. Principalment utilitzat en investigacions per aplicacions militars, per exemple en avions d’exploració que tenen com a objectiu principal entrar a les línies enemigues sense ser detectats i realitzar un reconeixement del terreny i de l’enemic.

- Aquàtics. Aquests robots són impulsats per hèlix o turbines, altres simulen el moviment d’animals aquàtics amb aletes. Serveixen per explorar, observar i recol·lectar mostres del fons marí.

Page 14: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

14

Figura 2.5 Robot aquàtic.

- Espacials. Serveixen per estudiar, fer fotografies i agafar mostres de l’espai exterior i de planetes.

Figura 2.6 Robot espacial.

Page 15: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

15

2.5.4 Morfologia de robots amb rodes

Segons com estiguin distribuïts els principals elements que composen un robot la precisió i mesures serà més o menys bona.

En relació a les rodes existeixen diverses configuracions: diferencial, tricicle, Ackerman, rodes síncrones, tracció omnidireccional i pistes de lliscament. A continuació s’expliquen totes aquestes configuracions.

La configuració diferencial consta de dos rodes situades en un eix perpendicular a

la direcció del robot. Cada una d’elles va dotada d’un motor, de forma que els girs es produeixen donant-los-hi velocitats diferents. Així, si volem girar a la dreta donarem més velocitat al motor que controla la roda esquerra. Per girar a l’esquerra, el motor dret tindrà més velocitat. Però amb dos rodes és impossible mantindre l’horitzontalitat del robot.

Aquest mètode és molt sensible a la relació entre la velocitat de les dues rodes, petits errors en les velocitats de cada roda poden provocar diferents trajectòries.

En aquest cas es disposa de tres rodes situades de manera similar a un tricicle dels

nens. Es tenen dos rodes al darrere que no porten cap motor. La roda davantera és la que té tracció, la que dirigeix al robot.

Un problema associat a aquesta configuració és que el centre de gravetat tendeix a allunyar-se de la roda de tracció en terrenys inclinats quan el robot està pujant. Això produeix una pèrdua de la tracció del robot. Al perdre’s el contacte amb el terra la roda davantera continua girant però el robot no avança. 2.5.5 Arquitectures de control

La construcció de comportaments autònoms sobre plataformes robòtiques requereixen bons dispositius sensorials i actuadors que permeten obtenir millors estímuls i moviments amb una bona combinació d’aquests.

Per aconseguir-ho, la construcció d’un comportament autònom s’ha de basar en una organització dels sensors, actuadors i capacitat de càlcul del robot. Aquesta organització rep el nom d’arquitectura de control i es poden obtenir comportaments molt complexes. Hi ha moltes maneres d’organitzar el programa de control d’un robot però existeixen varies arquitectures de control que segueixen principis per organitzar el sistema de control.

Aquestes proporcionen estructures i restriccions per ajudar al programador. Hi ha diferents arquitectures però bàsicament es poden agrupar en les reactives, les basades en comportaments, les deliberatives i les híbrides. 2.5.6 Arquitectures purament reactives

El procés és un cicle percepció-reacció, reacciona a l’evolució de l’entorn. Les decisions no tenen en compte el passat ni el futur. No necessita capacitat de predicció llavors és menor la capacitat de càlcul. Però aquestes arquitectures tenen diversos problemes. Els controladors necessiten conèixer suficient informació sobre el seu entorn per actuar adequadament i la seva visió és a curt termini ja que està basada únicament en informació local. A cada situació li pot pertànyer varies reaccions. Això pot implicar que si

Page 16: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

16

no es consideren bé totes les situacions amb les seves combinacions es tindran problemes d’arbitratge.

2.5.7 Arquitectures basades en comportaments.

En la literatura sobre robòtica i control de robots són freqüents termes com “funcions intel·ligents” o “control intel·ligent de robots”. El que es pretén amb això és fer al·lusió a la incorporació d’un major nombre de funcions autònomes de les que es consideren habitualment com bàsiques. S’entén per funcions intel·ligents les que permeten la realització parcial o totalment autònoma d’operacions com la planificació de tasques, planificació de moviments, percepció sensorial, i la reacció davant la presència d’obstacles i condicions no previstes en general. En el disseny de l’arquitectura s’utilitzen freqüentment requeriments sobre programabilitat, eficiència, capacitat d’evolució, autonomia, adaptabilitat i reactivitat. A continuació es comenten els tipus bàsics d’arquitectures. 2.5.8 Arquitectures típicament deliberatives.

Aquestes arquitectures es caracteritzen perquè l’espai d’estats del robot ha d’estar enumerat. L’objectiu i l’estat actual són alguns d’aquests estats. El procés del controlador introdueix una funció deliberativa entre la percepció i l’execució per escollir l’acció correcta. Requereixen dos processos:

- Quins objectius perseguir: deliberació - Decidir com aconseguir aquests objectius: raonament basat en mitjans i fins Es basen en el raonament pràctic, decidir en cada moment l’acció a realitzar per

facilitar la consecució dels objectius. Això representa una sèrie de problemes: - Les recerques exhaustives requereixen molt de temps. - Es necessita molta memòria per representar l’espai d’estats. - S’ha d’actualitzar constantment i en realitat no es té tota l’ informació.

2.5.9 Arquitectures híbrides.

Les limitacions de les arquitectures estratègiques i reactives han forçat que els investigadors creessin les arquitectures híbrides, les quals integren les arquitectures deliberatives i reactives. D’una banda, les arquitectures basades en comportaments o reactives són adaptables a un entorn desconegut i dinàmic, però no poden garantir que s’assoleixi l’objectiu. Les arquitectures deliberatives, d’altra banda, generen planificacions eficients per tal d’assolir l’objectiu, però tenen problemes amb els canvis en l’entorn. Així doncs s’utilitza el sistema reactiu per al control de baix nivell i un planificador per prendre les decisions d’un nivell superior. Normalment es fa servir el sistema reactiu per temes de seguretat, com pot ser evitar les col·lisions amb els obstacles, i un planificador per a seleccionar l’acció més adient.

Page 17: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

17

2.6. ESPECIFICACIONS DEL ROBOT DE TREBALL.

En la realització d’aquest projecte s’ha treballat amb un robot interactiu que està encara en fase de desenvolupament i que és capaç de moure’s per entorns plens de gent i interactuar amb els visitants. En aquesta imatge és pot veure l’aspecte extern del autòmat. Aquest robot porta incorporat el sensor LIDAR al frontal inferior, de tal manera que serà l’encarregat de proporcionar la informació del entorn en que es troba el robot.

Figura 2.6.1 Imatge del robot de treball.

2.6.1 Especificacions tècniques del robot.

Aquest capítol és confidencial, pel seu reconeixement contactar amb:

M-BOT SOLUTIONS S.L

Domicili social: Avinguda Països Catalans,

número 26 ( CP 43007)

Telèfon de contacte: 646 255 027

E-mail: [email protected]

[email protected]

Page 18: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

18

2.7. SENSORS

Un sensor és un dispositiu capaç de transformar magnituds físiques o químiques, anomenades variables d'instrumentació, en magnituds elèctriques. Les variables d'instrumentació depenen del tipus de sensor i poden ser per exemple temperatura, intensitat lluminosa, distància, acceleració, inclinació, desplaçament, pressió, força, torsió, humitat, pH, etc. Una magnitud elèctrica obtinguda pot ser una resistència elèctrica (com en una RTD), una capacitat elèctrica (com en un sensor d'humitat), una tensió elèctrica (com en un termopar), un corrent elèctric (com un fototransistor).

Un sensor es diferencia d'un transductor que el sensor no està sempre en contacte amb la variable a amidar o a controlar. Recordant que el senyal que ens lliura el sensor no solament serveix per a amidar la variable, si no també per a convertir-la mitjançant circuits electrònics en un senyal estàndard (4 a 20 Dt., o 1 a 5VDC) per a tenir una relació lineal amb els canvis de la variable sensada dintre d'un rang (span), per a fins de control d'aquesta variable en un procés. Pot dir-se també que és un dispositiu que aprofita una de les seves propietats amb la finalitat d'adaptar el senyal que amida perquè la pugui interpretar un altre dispositiu. Com per exemple el termòmetre de mercuri que aprofita la propietat que posseeix el mercuri per dilatar-se o contreure's per l'acció de la temperatura. Un sensor també pot dir-se que és un dispositiu que converteix una forma d'energia en una altra. Àrees d'aplicació dels sensors: Indústria automotriu, Indústria aeroespacial, Medicina , Indústria de manufactura, Robòtica , etc. Entre les característiques tècniques d'un sensor destaquen les següents:

• Rang de mesura: domini en la magnitud amidada en el qual pot aplicar-se el sensor. • Precisió: és l'error de mesura màxim esperat. • Offset o desviació de zero: valor de la variable de sortida quan la variable d'entrada

és nul·la. Si el rang de mesura no arriba a valors nuls de la variable d'entrada, habitualment s'estableix altre punt de referència per a definir el offset.

• Linealitat o correlació lineal. • Sensibilitat d'un sensor: relació entre la variació de la magnitud de sortida i la

variació de la magnitud d'entrada. • Resolució: mínima variació de la magnitud d'entrada que pot apreciar-se a la

sortida. • Rapidesa de resposta: pot ser un temps fix o dependre de quant variï la magnitud a

amidar. Depèn de la capacitat del sistema per a seguir les variacions de la magnitud d'entrada.

• Derives: són altres magnituds, a part de la mesura com magnitud d'entrada, que influeixen en la variable de sortida. Per exemple, poden ser condicions ambientals, com la humitat, la temperatura o altres com l'envelliment (oxidació, desgast, etc.) del sensor.

• Repetitivitat: error esperat al repetir diverses vegades la mateixa mesura.

Page 19: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

19

2.7.1 Resolució i precisió

La resolució d'un sensor és el menor canvi en la magnitud d'entrada que s'aprecia en la magnitud de sortida. No obstant això, la precisió és el màxim error esperat en la mesura. La resolució pot ser de menor valor que la precisió. Per exemple, si a l'amidar una distància la resolució és de 0,01 mm, però la precisió és de 1 mm, llavors poden apreciar-se variacions en la distància amidada de 0,01 mm, però no pot assegurar-se que hagi un error de mesurament menor a 1 mm. En la majoria dels casos aquest excés de resolució comporta a un excés innecessari en el cost del sistema. No obstant això, en aquests sistemes, si l'error en la mesura segueix una distribució normal o similar, la qual cosa és freqüent en errors accidentals, és a dir, no sistemàtics, la repetitivitat podria ser d'un valor inferior a la precisió. No obstant això, la precisió no pot ser d'un valor inferior a la resolució, doncs no pot assegurar-se que l'error en la mesura sigui menor a la mínima variació en la magnitud d'entrada que pot observar-ne en la magnitud de sortida. 2.7.2 Tipus de sensors De sensors ni poden haver de diferents tipus, però que siguin capaç de funcionar amb temps real, i formar part d’un robot, n’hi podem veure alguns de més específics. Un sensor que s’ha començat a utilitzar en robòtica en els últims anys es el sensor LIDAR. Així doncs es mirarà entre diferents marques, quin tipus de sensor LIDAR es pot adequar millor a les nostres especificacions.

2.8 SENSORS LIDAR

LIDAR (un acrònim de l'anglès Light Detection and Ranging o (Laser Imaging Detection and Ranging) és una tecnologia que permet determinar la distància des d'un emissor làser a un objecte o superfície utilitzant un feix làser premut. Igual que ocorre amb la tecnologia radar, on s'utilitzen ones de ràdio en comptes de llum, la distància a l'objecte es determina amidant el temps de retard entre l'emissió del pols i la seva detecció a través del senyal reflectit. En general, la tecnologia lidar té aplicacions en geologia, sismologia i física de l'atmosfera.

2.8.1 Detecció de velocitats

És la tecnologia que empren les pistoles làser de la policia per a determinar la velocitat dels vehicles que circulen en el tràfic rodat. Es diferencia del radar que en lloc d'usar ones de ràdio s'usa un feix de llum làser polsant, en la banda de l'infraroig la freqüència del qual de pulsació és de 33MHz i la longitud de la qual d'ona és de 904nm. Els avantatges del LIDAR enfront del radar són vàries:

• És molt més ràpid. En circumstàncies normals pot obtenir la velocitat del robot en només 3 dècimes de segon.

• Com emet un feix de llum làser el feix no divergeix tant i és molt més estret que el del radar, que es dispersa i rebota en l'entorn. A uns 500 metres té una amplada aproximada de 2,5 metres de diàmetre, amb el que es pot apuntar la pistola a un vehicle concret i determinar la seva velocitat encara que hi hagin mes cotxes circulant al seu al voltant. Pot, per tant,

Page 20: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

20

emprar-se en tràfic intens apuntant-se als vehicles que s'escullin. A més, a causa de aquesta manera de funcionar i la seva rapidesa, la detecció, mitjançant detectors que es trobin instal·lats en els vehicles il·luminats pel feix, és bastant ineficaç ja que per a quan el detector alerta de la presència del làser, ja és massa tarda i la pistola ja haurà obtingut la seva velocitat.

• És més fàcil de manejar, transportar i mantenir. • És més econòmic que un radar. • Pot funcionar, igual que el radar a la nit, en pluja, des de ponts, en

vehicles estacionats, en manera automàtic o manual, etc.

2.8.2 Opcions de mercat.

Els sensors lidar típics que es fan servir en robòtica acostumen a ser de la marca HOKUYO o SICK. Encara que els sensors de la marca SICK tenen millors prestacions per la funció que farà en el nostre sistema ja en tenim prou amb els HOKUYO ja que són molt més barats.

Page 21: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

21

2.8.3 Especificacions del sensor URG – 04LX. LIDAR.

El sensor que proporciona la informació en la que es desenvoluparà bona part d’aquest projecte és el URG-04LX, un sensor laser per exploració d’àrees. La llum font del sensor es un laser d’infraroigs de longitud d’ona de 785 nm amb nivell 1 de seguretat. Es capaç d’escanejar una àrea amb semicercle de 240º amb un radi màxim de 4000 mm. La resolució angular és de 0.36º i la sortida del sensor mesura la distancia per cada punt (683 passos). El rang de distància que és capaç de mesurar el sensor és de 40 mm a 4000 mm.

Figura 2.8.1 Sensor URG-04LX. El principi de mesura de distància està basat en el càlcul de la diferència de fase, a causa de la qual és possible obtenir la mesura estable amb la influència mínima del lustre en color i superficial de l'objecte.

2.8.3.1 Aplicacions

L’àmbit d’aplicació d’aquest sensor serà un entorn amb persones properes al robot i també d’elements com murs, parets, pilars i qualsevol objecte que es pugui trobar en un ambient quotidià. Un aspecte important a remarcar pel que fa al sensor és que ha estat dissenyat per treballar en ambients interiors, no és apte per treballar com equip de seguretat i no pot treballar en aplicacions militars.

Page 22: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

22

2.8.3.2 Zones de detecció

Figura 2.8.2 Àrea de detecció del sensor.

Podem veure com la distancia màxima de detecció es de 4 metres aproximadament, i l’àrea de detecció és de 240º, deixant per tant una zona sense visió o també anomenada zona morta.

Figura 2.8.3 Direcció i temps d’escaneig

Page 23: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

23

En aquesta imatge es pot observar la direcció d’escaneig del sensor, recorre de dreta

a esquerra tot el recorregut en aproximadament uns 66,7 mil·lisegons.

2.8.3.3 Dimensió externa del sensor

2.8.3.4 Especificacions tècniques del sensor.

Nom del producte Scanning Laser Range Finder Model URG-04LX

Llum font Díode laser semiconductor (λ=785nm), Laser safety Class 1 (IEC60825-1)

Potència font 5V DC ±5% Corrent de consum 500mA o menys (Corrent 800mA) Distancia de detecció 20mm ~ 4000mm

Acurat

Distancia 20 ~ 1000mm: ±10mm Distancia 1000 ~ 4000mm: ±1% de la mesura

Resolució 1 mm Angle d’escaneig 240° Resolució angular 0.36° Temps d’escaneig 100 mseg/escaneig Interfaç RS-232C (19.2, 57.6, 115.2 kbps)

Page 24: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

24

USB Versió 2.0 FS mode (12Mbps) Ambient (Temperatura/Humitat)

-10 ~ 50ºC / 85% o menys

Temperatura de preservació -25 ~ 75ºC

Resistència a la llum ambiental 10000 Lx o menys

Resistència a la vibració

Doble amplitud 1.5mm 10 ~ 55Hz, 2 hores cada in X, Y i Z direcció, i 98m/s2 55Hz ~ 150Hz en 2 minuts reposa, 1 hora cada in X, Y i Z direcció. 196 m/s2, 10 temps cada en X, Y i Z direcció.

Estructura protectora Òptica: IP64, Cas:IP40 Pes Aproximadament: 160 g. Material Policarbonat

Taula 2.8.1 Especificacions tècniques del sensor LIDAR.

2.8.3.5 Exemple d’ escaneig

Figura 2.8.4 Exemple de treball del LIDAR.

En la figura 2.8.4 es pot observar un exemple d’aplicació del sensor LIDAR. En aquest cas el sensor a detectat dues columnes que estan dins de l’àrea específica. En el cas que hi hagi algun objecte fora de la àrea específica el sensor no podrà detectar la seva presència. És a dir en tot moment hi haurà una zona morta o sense visió.

Page 25: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

25

2.8.3.6 Característiques de construcció.

El sensor LIDAR com s’ha vist és capaç de treballar en una zona de 240º, ara bé per efectes de construcció es va decidir limitar aquest rang d’escaneig de tal manera que aquesta zona fos de 180º. Això es degut a que un cop muntat el robot, amb la seva caixa exterior, tapa la visió del LIDAR. Conseqüentment el LIDAR era capaç de detectar que hi havia un element quan era el propi cos extern del robot. Amb el problema que això comportava es va decidir doncs que el sensor fos programat per tal que el seu camp de visió fos el següent:

Figura 2.8.5 Nova àrea de detecció

I per tant si veiem un exemple d’escaneig veiem que en aquest es continuen detectant les dues columnes ja que estan dins de l’àrea de 180º.

Figura 2.8.6 Exemple de programació final del sensor

Page 26: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

26

En aquesta imatge es pot veure el sensor muntat en la part inferior del robot com s’ha explicat anteriorment.

Figura 2.8.7 Sensor laser muntat sobre el robot.

2.9 PROCESSAMENT D’IMATGES.

La informació que captura el sensor, es tradueix, per a que el resultat sigui una matriu de 1 i 0s. O el que és el mateix és pot tractar com una imatge amb píxels negres i blancs. Raó, per la qual tractarem aquestes imatges per detectar-ne les rectes. A continuació es farà una acurada descripció i estudi de les fases que componen el processament d’una imatge, realitzant en un primer moment una introducció en la qual s’explicaran alguns dels conceptes teòrics que formaran part en el processament. Finalment s’obtindran uns resultats pràctics que s’han aconseguit al laboratori i s’analitzaran detalladament. 2.9.1 Imatge Digital.

El tractament digital de la imatge implica descompondre les imatges en un nombre finit d'elements o punts, anomenats píxels, ja que la seqüència de bytes no pot ser infinita. Els píxels són per tant els punts que componen una imatge digital. A cada píxel se li assigna un valor numèric que representa el seu color. Una imatge digital és doncs una mena de quadrícula o mapa que fa correspondre a cada coordenada un dígit binari. Per això les imatges digitals de vegades s'anomenen també mapes de bits.

Page 27: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

27

Figura 2.9.1 Imatge digital. 2.9.1.1 Píxel.

El píxel o pícsel (de l'anglès pixel, de picture element que significa "element de la imatge") és la unitat mínima que forma una imatge gràfica. Aquesta imatge pot ser mostrada i interpretada per la maquinària de l'ordinador, per exemple, mitjançant un monitor o una impressora.

Normalment, un píxel es defineix com un punt o un quadrat, però realment no posseeix una forma determinada. Es pot dir que es tracta d’una mostra abstracta o una unitat de mesura de resolució. Cal fer notar que el píxel no té una mida concreta sinó que, és establerta pel fabricant de la maquinària; acostuma a ser de l'ordre de mil·límetres. Els píxels són unitats independents, però el fet que els percebem com un conjunt és degut a la limitació de la nostra visió, que fa que tinguem aquesta sensació de continuïtat. A partir del concepte de píxel podem trobar altres conceptes com ara vòxel (element de volum), texel (element de textura) i surfel (element de superfície), utilitzats per altres processaments de la imatge.

2.9.1.2 Resolució.

El nombre de píxels d'una imatge s'anomena de vegades resolució, encara que la resolució té una definició més específica, ja que inclou altres paràmetres. Els píxels d'una imatge es poden expressar de diverses formes: com un únic nombre, com en el cas de les càmeres digitals, on diem "5 megapíxels" i on ens referim a que té 5 milions de píxels, també els podem definir amb dos nombres, com "640 x 480", on entenem que la imatge té 640 píxels d'amplada i 480 d'altura.

És important establir la diferència entre els píxels com a elements de la imatge i els píxels com a dispositius físics capaços de captar llum dins de la matriu d’un sensor digital.

Encara que és correcte parlar de píxels per ambdós significats. En informàtica, una imatge formada per píxels s'anomena mapa de bits o imatge rasteritzada.

Page 28: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

28

2.9.1.3 Preprocessament d’imatges.

El prepocessament de imatges comprèn aquells algoritmes que tenen com a finalitat aconseguir una millora en l’aparença de la imatge original. Aquesta millora en l’aparença consisteix en ressaltar determinades característiques de la imatge, o en eliminar allò que interessa. No es tracta de millorar la imatge de manera que quedi el més ideal possible, sinó de que pugui ser analitzats de la forma més simple. Els algoritmes que es descriuran a continuació treballen en el domini de l’espai, i consisteixen en modificar directament els píxels de la imatge. Es tracta d’algoritmes locals que transformaran, bé el valor de cada píxel de manera individualitzada, o un petit conjunt. 2.9.1.4 Escales de grisos.

Les senyals que proporcionen les imatges, són funcions que depenen d’un parell de variables per tant són senyals bidimensionals. Depenent de les dimensions de la funció poden ser escalars (com les imatges en blanc i negre), o vectorials (com les imatges en color, que tenen tres components). Les funcions tenen un domini i rang. Si el domini i rang són continus, la senyal serà continua o analògica, si el domini és discret però no el rang, el senyal serà discret, i si el domini i el rang son discrets, com en el cas de les imatges el senyal és digital.

La funció d’una imatge f(x,y) és digitalitzada en la memòria del computador, tant espacialment com en amplitud. La digitalització de les coordenades espacials (x,y) està associada al concepte de mostreig, mentre que la digitalització de la amplitud al de quantificació de nivells de gris. Una imatge f(x,y), està per tant emmagatzemada en una matriu de NxM elements. Entendrem que l’origen de coordenades de la imatge és el cantó superior esquerra, el x l’horitzontal i l’eix y el vertical.

El mostreig és la conversió que sofreixen les dos dimensions espacials de la senyal analògica, i que genera la noció de píxel. La imatge en la memòria del computador es comporta com una matriu on el valor dels elements és el seu nivell de gris, i la fila i la columna la seva posició en l’espai. La quantificació és la conversió que sofreix l’amplitud de la senyal analògica ; així es genera el concepte de nivell de gris o intensitat. Per al cas de tenir 256 nivells de gris (0-255), el 0 correspon a un objecte no il·luminat o que absorbeix tots els rajos lluminosos que incideixen sobre ell (negre), i el nivell 255 a un objecte molt il·luminat o que reflexa tots els rajos que incideixen sobre ell (blanc). En el procés de digitalització és necessari establir el valor de NxM així com el nombre de nivells de gris assignats per cada píxel.

El concepte de resolució espaial d’una imatge sorgeix associat al nombre de mostres ( nombre de files i columnes de píxels que la composen), i el de definició d’una imatge, al nivell de gris necessaris per tenir una bona aproximació de la imatge. Un cop tenim la idea de resolució pot parlar-se de histograma d’una imatge. L’ histograma d’una imatge és una distribució quantitativa de píxels per nivell de gris. Una gràfica on a l’eix Y hi ha nombre de píxels i a la X, nivells de gris. Aquest histograma ens dóna una descripció general de l’aparença d’una imatge i ens ajuda a identificar diversos components com el fons, objectes, soroll.

Page 29: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

29

Els intervals de gris amb una gran concentració de píxels revela la presència de

molts objectes dins la imatge en aquest rang de grisos. Un últim element de l’ imatge són el nombre de plans o nombre de matrius de píxels que composen una imatge. Si una imatge està formada per una escala de grisos (256) té un pla, mentre que una imatge de color pot estar composta de tres plans, un per a la component de color blau, un per al vermell i l’altre per al verd. (Imatge RGB). 2.9.2 Relacions entre píxels : veïnat, connectivitat.

Un píxel de coordenades (x,y) presenta un total de quatre veïns en les pla vertical i horitzontal, essent les seves coordenades :

x, y-1 x-1, y x, y x+1, y x,y+1

Aquest conjunt de píxels s’anomena veïnat de tipus 4 del píxel p, i es representa per N4(p). A més, es pot considerar l’existència d’altres veïns associats a les diagonals, amb les coordenades :

x+1,y+1 x+1,y+1 x, y x+1,y+1 x+1,y+1

Mitjançant el concepte de connectivitat es vol expressar que dos píxels pertanyen al mateix objecte, per la qual cosa està relacionat amb el de veïnat. Dos píxels estan connectats si són adjacents (veïns) i si els seus nivells de gris satisfan algun criteri d’especificació (per exemple ser iguals). 2.9.3 Transformacions matemàtiques. 2.9.3.1 Les series de Fourier.

Una funció f(t) periòdica en el temps pot ser expressada com la suma d’altres funcions periòdiques. Les sèries de Fourier donen la formula matemàtica que expressa aquesta relació amb les funcions periòdiques sinus i cosinus. Així, qualsevol funció f(t) de període T pot expressar-se com:

(2.9.1)

Page 30: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

30

On:

(2.9.2)

(2.9.3)

(2.9.4) 2.9.3.2 La transformada de Fourier

La transformada de Fourier és una extensió de les series de Fourier a senyals no periòdiques, que per al cas bidimensional serà:

(2.9.5) i la seva antitransformada :

(2.9.6)

Page 31: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

31

2.9.3.3 Operacions aritmètiques i lògiques entre imatges

Són operadors que treballen a nivell de píxels. Bàsicament, es fan servir per combinar imatges i comparar-les. Les aplicacions més comunes amb aquests operadors són: comparacions de dues imatges separades per un lapsus de temps, unions i interseccions entre imatges i comparació entre imatges i un model. La operació dóna com a resultat una imatge nova en la qual cada píxel deriva dels valors del píxels amb les mateixes coordenades en altres imatges. Existeixen operadors aritmètics com sumar, restar, multiplicar, dividir i mòdul. D’operadors lògics hi ha AND, OR, XOR, NOT i els seus negats respectius. 2.9.3.4 Transformacions geomètriques

Les transformacions geomètriques modifiquen les relacions espaials entre els píxels. Són necessaris dos tipus d’algoritmes diferents. El primer és aquell que determina la relació entre les coordenades de la imatge original i la imatge resultant. Generalment, les transformacions de nombres enters no tenen que donar nombres enters, així que será necessari un algoritme de interpolació que determini el nivell de gris de la imatge final a partir d’un o diversos píxels de la imatge original. Algunes de les aplicacions més comunes de les transformacions geomètriques són la translació, rotació o magnificació (zoom) de la imatge. 2.9.3.5 Eliminació de soroll Totes les imatges tenen una certa quantitat de soroll, valors distorsionats, deguts a paràmetres del sensor de les càmeres o al medi de transmissió del senyal. El soroll es manifestarà generalment en píxels aïllats que prenen un valor de gris diferent al dels seus veïns. Els algoritmes de filtrat que s’exposaran a continuació es basen en aquesta característica. El soroll pot classificar-se en quatre tipus : Multiplicatiu : L’ imatge obtinguda és fruit de la multiplicació de dos senyals. Gaussià : Produeix petites variacions en la imatge. És causat, per exemple, a diferents guanys en el sensor, soroll en els digitalitzadors, pertorbacions en la transmissió. Impulsional (conegut també com sal i pebre ). El valor que pren el píxel no té relació amb el valor ideal, sinó amb el valor del soroll, que pren valors molt alts o baixos. Es caracteritza per que el píxel pren un valor màxim, causat per una saturació del sensor, o mínim, si s’ha perdut el seu senyal. Freqüencial : La imatge obtinguda és una suma entre imatge ideal i una altra senyal, la interferència, caracteritzada per ser una senoidal de freqüència determinada.

Les imatges que ens proporciona el LIDAR també es poden veure afectades pel soroll i limitar o distorsionar la informació obtinguda.

Page 32: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

32

2.9.4 Filtres passa baixos especials

La següent solució és aplicar la mateixa idea : un filtre passa baixos que redueixi el guany d’altes freqüències, que és on es troba el soroll; però en aquest cas es disposa d’una única imatge. El filtrat més senzill i intuïtiu és el que té coeficients unitat per a tots els elements.

Si al resultat se li multiplica per 1/9 es té la mitja de tots els píxels, per la qual cosa el soroll disminueix. Aquest filtre pressuposa que l’influencia de tots els píxels és igual. Una altra consideració és que, quan més allunyat estigui el píxel del central, el seu valor serà menor. Si es té doncs la màscara :

I en general la matriu serà:

Page 33: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

33

Figura 2.9.2 Imatge original Figura 2.9.3 Imatge filtrada

En la imatge 2.9.2 hem aplicat la segona màscara per reduir el soroll, que veiem distribuït en píxels negres al voltant de la circumferència. En la imatge 2.11.3 es pot comprovar com casi tot el soroll ha estat filtrat correctament. 2.9.5 Gausiana Un altre tipus de màscares, són aquelles que intenten imitar la forma d’una gaussiana:

(2.9.7) Si ⌠= 0,391 píxels

Si ⌠= 0,625 píxels

Page 34: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

34

Si ⌠ = 0,1 píxels

En aquesta imatge podem observar com els filtres basats en gaussianes tenen els mateixos inconvenients que els filtres passa baixos.

Figura 2.9.5 Imatge original Figura 2.9.6 Imatge filtrada

Page 35: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

35

2.9.6 Extracció de Característiques

Una vegada la imatge ha estat processada, està en condicions de detectar els objectes que hi són presents. Per aconseguir aquest objectiu es busquen en la imatge aquelles característiques que defineixen l’objecte que es desitja trobar. Algunes ja han sigut vistes, com el nivell de gris, ara veurem algoritmes per la detecció de marges i línies. 2.9.6.1 Detecció de marges

Una de les informacions més útils que es troben en una imatge la constitueixen els marges, ja que al delimitar els objectes definim els límits que hi ha entre ells el fons i altres objectes. La informació extreta per els detectors de marges pot ser utilitzada posteriorment en l’etapa de segmentació. Les tècniques utilitzades en la detecció de marges tenen com a finalitat la localització dels punt en els quals es produeix una variació d’intensitat, on es passa del nivell de gris del fons al del objecte, emparant-se mètodes basats en els operadors derivada. Bàsicament es tenen dos possibilitats : aplicar la primera derivada (gradient), o la segona (Laplaciana) al senyal que genera la imatge.

En el primer cas, es buscaran grans pics i en el segon, pasos de resposta positiva a negativa o viceversa. En el segon cas la precisió en els resultats serà més alt al igual que el temps de càlcul, és per això que depenent de l’exactitud s’escollirà un detector o un altre. 2.9.6.2 Tècniques basades en el gradient.

Per poder utilitzar operadors d’aquest tipus sobre una imatge mostrejada és necessari obtenir una aproximació del concepte de derivada per a espais discrets. La generalització freqüentment utilitzada es basa en el càlcul de diferències entre els píxels veïns. Aquestes diferències, segons la relació entre els píxels considerats, poden donar lloc a derivades unidimensionals o bidimensionals, així com l’aplicació en alguna direcció determinada o en totes les direccions de forma global. Existeixen altres aproximacions diferencials que han demostrat ser de gran utilitat per la extracció de contorns, es el cas de la Roberts o la de Sobel, que es veuran més endavant. Es defineix l’operador gradient G aplicat sobre una imatge f(x,y) com :

(2.9.8)

El vector gradient representa la màxima variació d’intensitat per un punt (x,y). Per això es interessant conèixer el seu mòdul i direcció que vindran donats per:

Page 36: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

36

(2.9.9) essent la direcció del gradient perpendicular al marge. Degut al cost computacional el mòdul de vegades es simplifica per :

(2.9.10) Com les imatge digitals no són senyals contínues, la nova expressió del gradient ve donada per :

(2.9.11) que es pot representar per les màscares :

(2.9.12)

(2.9.13)

Aquestes màscares no solen utilitzar-se degut a que són molt sensibles al soroll, al tenir en compte solament l’ informació de dos píxels. Amb el temps han aparegut altres filtres que a més de calcular el gradient tenen cert efecte de suavització, i són menys sensibles al soroll. 2.9.6.3 Operador Roberts El filtre de Roberts emfatitza els contorns on el gradient segueix la direcció en sentit diagonal.

Page 37: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

37

2.9.6.4 Operador Prewitt Alguns dels filtres de Prewit tenen la següent forma. La notació Est (E),Oest (O), Sud (S), Nord (N) indiquen la direcció del gradient. Son indicats per detectar marges en sentit vertical.

2.9.6.5 Operador Sobel Els filtres de Sobel son molt similars als de Prewitt, però com es pot comprovar, assignen més pes a alguns píxels de manera que són indicats per detectar marges en sentit diagonal.

2.9.6.6 Operadors de segon ordre La laplaciana és la segona derivada d’una funció y representa la derivada d’aquesta en totes les direccions:

(2.9.14) Les dos definicions que de forma més freqüent s’utilitzen per l’operador laplaciana son :

Page 38: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

38

on el píxel central pren el valor negatiu de la suma de tots els que els envolten.

Figura 2.9.7 Imatge original Figura 2.9.8 Imatge filtrada Amb aquestes màscares però no podem fer un filtratge de rectes tal com volem:

Figura 2.9.9 Imatge original Figura 2.9.10 Imatge filtrada 2.9.7 Detecció de línies

Les línies es poden considerar com una extensió dins del que hem vist anteriorment per als marges. Aquí tenim un joc de quatre filtres per detectar línies en diferents direccions.

Page 39: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

39

La primera màscara proporciona les línies d’orientació horitzontal. En el cas de

tenir un fons constant, s’obté el màxim valor de resposta quan la línia passa per la fila central de la màscara. Succeirà el mateix per al cas de la segona màscara de cara a la detecció de línies que formen 45º, en la tercera per línies verticals i finalment l’última, per la detecció de línies que formen -45º respecte a la referència. En aquestes imatges podem veure com aplicant aquestes màscares hem aconseguit el propòsit que desitjàvem de filtrar línies, tan verticals, horitzontals, com les diagonals a 45º.

Figura 2.9.11 Imatge original Figura 2.9.12 Imatge filtrada

Figura 2.9.13 Imatge original Figura 2.9.14 Imatge filtrada

Page 40: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

40

Figura 2.9.15 Imatge original Figura 2.9.16 Imatge filtrada

Podem veure el software realitzat permet filtrar rectes horitzontals, verticals, i diagonals. També veiem com hi ha una mica de soroll en la imatge filtrada que caldria eliminar. L’inconvenient però serà que en un entorn real les vegades que es trobaran elements en aquestes condicions seran menors que ens trobem una línia de qualsevol grau, ja que el robot està en moviment constantment. Així doncs seria bo estudia d’altres mètodes però sense deixar de banda aquest.

2.9.8. Transformada de Hough El que veurem és un altre mètode anomenat la transformada de Hough. La Transformada de Hough és un algoritme que s’utilitza en reconeixement de patrons d’imatges que permet trobar certes formes dins d’una imatge, com línies, cercles, etç.. La versió més simple consisteix en trobar línies. El seu funcionament es principalment estadístic i consisteix en que per cada punt que es vol trobar, forma part de una línia s’aplica una operació dins de cert rang. Es va desenvolupar inicialment com una tècnica estadística per a l’extracció robusta de línies a partir de dades representades com a col·leccions de punts. Es basa en agafar una equació regida per un nombre limitat de paràmetres, com per exemple la línia recta: y = -ax + b (2.9.15) En aquest cas els paràmetres a estimar són (a,b), que determinen la recta. El procés seria el següent: plantejar l’equació bj = xi aj + yi, i donat un interval discret de valors {aj}, calcular per a cada punt (xi,yi) el conjunt de parelles (ai,bj) que compleixen l’equació. Pel que fa al projecte utilitzarem aquesta com a part important, ja que interessa filtrar de la informació proporcionada els elements no desitjats. Aquests en un principi seran rectes perfectes, a priori de dimensió qualsevol, encara que més endavant se’n farà una restricció. Per a diferenciar objectes tals com pilars, parets, columnes. Interessa que el robot sigui capaç d’evitar aquests objectes.

Page 41: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

41

2.10. DETECCIÓ DE LÍNIES EN MATLAB En primer lloc es va procedir a realitzar la transformada de Hough utilitzant el programari matemàtic MATLAB. I un cop aconseguit es va desenvolupar en llenguatge C#. El procediment utilitzat és el següent, i el codi utilitzat és aquest: fid = imread('c:\hough.bmp'); k=1; j=0; for x=1:79 for y=1:81 pix=fid(x,y); if pix == 0 px(k)=x-1; py(k)=y-1; k=k+1; j=j+1; end end end t=0:pi/12:pi; c=[10 8 7 5 0 -5 -7 -8 -10]; s=[0 5 7 8 10 8 7 5 0]; for h=1:9 for o=1:j p=px(o)*c(h)+py(o)*s(h); y(h,o)=fix((460+p)/10); end end t=[0 30 45 60 90 120 135 150 180]; hold on; for o=1:j plot(t,y(:,o)); xlabel('THETA ( GRAUS )'); ylabel('RHO ( DISTANCIA )'); title('TRANSFORMADA DE HOUGH'); end grid on; hold on; figure(2), imshow(fid);

Codi 2. Codi en Matlab de Hough.

Es parteix d’una imatge en escala de grisos, exactament igual a la que ens proporcionarà el LIDAR.

La imatge utilitzada és una recta amb inclinació coneguda de 20º. Si apliquem l’algoritme abans esmentat s’obté :

Page 42: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

42

Figura 2.10.1. Recta amb inclinació de 20º

Figura 2.10.2. Transformada de Hough per una recta de 20º

Així doncs veiem com es detecta perfectament la inclinació i la distancia de la recta referent a l punt (0,0) de la imatge.

Complint-se així per qualsevol recta, amb inclinació qualsevol. En veiem alguns exemples amb els resultats obtinguts:

Figura 2.10.3. Recta 180º Figura 2.10.4. Recta de 90º

Page 43: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

43

Figura 2.10.5. Recta de 135º Figura 2.10.6. Recta 90º i 45º

Figura 2.10.7. Recta 90º i cercle. Figura 2.10.8. Recta 165 º.

Figura 2.10.9 Transformada de Hough per una recta de 180º.

Page 44: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

44

Figura 2.10.10 Transformada de Hough per una recta de 90º.

Figura 2.10.11 Transformada de Hough per una recta de 135º.

Page 45: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

45

Figura 2.10.12 Transformada de Hough per una recta de 180º i 90º.

Figura 2.10.13 Transformada de Hough per una recta de 90º i cercle.

Page 46: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

46

Figura 2.10.14 Transformada de Hough per una recta de 165º.

En totes les simulacions podem veure com és mostra de manera molt precisa la inclinació i la distancia de la recta, just en el punt on intersecten totes les corbes. Ara doncs es treballarà en un algoritme que realitzi la mateixa funció en c# per tal que pugui ser inclòs en el programa principal que controla els moviments del robot.

Page 47: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

47

2.11. DETECCIÓ DE LÍNIES EN CASOS SIMULATS. 2.11.1 Simulació prova nº 1

Figura 2.11.1 Imatge de prova 1.

La primera imatge en analitzar està formada per una recta horitzontal i diversos punts sota d’aquesta. La recta té un gruix d’un píxel i està ben definida, té un principi i un acabament. A priori doncs és treballa amb un umbral superior a 40, que aproximadament són uns 40 cm en l’entorn real. Això es defineix per decidir si considerem un objecte no adequat com podria ser una columna, o objectes similars que amb principi poden tindre unes dimensions iguals o majors. Tots els elements menors seran considerats com a objectiu, encara que siguin rectes. Un cop ho provem en l’entorn real ja es decidirà que fer.

El trheshold o umbral es un paràmatre que varia en funció de la longitud de la recta que considerem dins dels marges establerts. És a dir si tenim 3 punts successius el programa ens detectarà una petita recta de 3 píxels. Evidentment no es el que interessa ja que qualsevol objectiu detectat pot contindré punts concentrats de la mateixa manera. Llavors posem un valor força més elevat per exemple 40, i totes les petites rectes trobades no seran considerades com a tal.

Page 48: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

48

Figura 2.11.2 Resultats del software prova 1

Resultats: Nombre de rectes: 1 Recta 1 Distància: 140 cm Longitud de la recta: 108 cm Graus de la recta: 0º Eqüació de la recta: 140 = 1·x + 0· y

Page 49: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

49

2.11.2 Simulació prova nº 2

Figura 2.11.3 Imatge de prova 2.

La segona imatge es tracta d’una recta horitzontal sense cap objectiu al seu voltant.

Figura 2.11.4 Resultats del software prova 2

Page 50: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

50

Resultats: Nombre de rectes: 1 Recta 1 Distància: 194 cm Longitud de la recta: 178 cm Graus de la recta: 0º Eqüació de la recta: 194 = 1·x + 0· y 2.11.3 Simulació prova nº 3 La prova 3 inclou tres rectes verticals a 90º sense cap objectiu al seu voltant.

Figura 2.11.5 Imatge de prova 3.

Page 51: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

51

Figura 2.11.6 Resultats del software prova 3

Resultats: Nombre de rectes: 3 Recta 1 Distància: 96 cm Longitud de la recta: 222 cm Graus de la recta: 270º Eqüació de la recta: 96 = 0,98 · x - 0,17 · y Recta 2 Distància: 174 cm Longitud de la recta: 254 cm Graus de la recta: 270º Eqüació de la recta: 174 = 0,98 · x - 0,17 · y Recta 3 Distància: 277 cm Longitud de la recta: 185 cm Graus de la recta: 270º Eqüació de la recta: 277 = 0,98 · x - 0,17 · y

Page 52: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

52

2.11.4 Simulació prova nº 4 La prova 4 conté 8 rectes horitzontals sense objectiu al voltant.

Figura 2.11.7 Imatge de prova 4.

Figura 2.11.8 Resultats del software prova 4.

Page 53: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

53

Resultats: Nombre de rectes: 8 Recta 1 Distància: 19 cm Longitud de la recta: 196 cm Graus de la recta: 0º Eqüació de la recta: 19 = 1· x + 0 · y Recta 2 Distància: 53 cm Longitud de la recta: 173 cm Graus de la recta: 0º Eqüació de la recta: , 53 = 1· x + 0 · y Recta 3 Distància: 89 cm Longitud de la recta: 218 cm Graus de la recta: 0º Eqüació de la recta: 89 = 1· x + 0 · y Recta 4 Distància: 121 cm Longitud de la recta: 234 cm Graus de la recta: 0º Eqüació de la recta: 121 = 1· x + 0 · y Recta 5 Distància: 156 cm Longitud de la recta: 213 cm Graus de la recta: 0º Eqüació de la recta: 156 = 1· x + 0 · y Recta 6 Distància: 195 cm Longitud de la recta: 248 cm Graus de la recta: 0º Eqüació de la recta: 195 = 1· x + 0 · y Recta 7 Distància: 247 cm Longitud de la recta: 273 cm Graus de la recta: 0º Eqüació de la recta: 247 = 1· x + 0 · y

Page 54: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

54

Recta 8 Distància: 292 cm Longitud de la recta: 224 cm Graus de la recta: 0º Eqüació de la recta: 292 = 1· x + 0 · y 2.11.5 Simulació prova nº 5 La imatge de prova 5 conté una recta amb una inclinació de 135º. No té cap objectiu al seu voltant.

Figura 2.11.9 Imatge de prova 5.

Page 55: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

55

Figura 2.11.10 Resultats del software prova 5

Resultats: Nombre de rectes: 1 Recta 1 Distància: 380 cm Longitud de la recta: 127 cm Graus de la recta: 135º Eqüació de la recta: 380 = -0,99 · x + 0,08 · y

Page 56: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

56

2.11.6 Simulació prova nº 6 La següent imatge conté una recta amb inclinació de 45º. També hi han 3 objectius pròxims a la recta.

Figura 2.11.11 Imatge de prova 6.

Figura 2.11.12 Resultats del software prova 6.

Page 57: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

57

Resultats:

Nombre de rectes: 1

Recta 1 Distància: 29 cm Longitud de la recta: 111 cm Graus de la recta: 45º Equació de la recta: 29 = 0,52· x + 0,85 · y 2.11.7 Simulació prova nº 7 La prova número 7 conté una recta horitzontal i una recta d’ aproximadament 135º. No hi ha cap objectiu al seu voltant.

Figura 2.11.13 Imatge de prova 7

Page 58: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

58

Figura 2.11.14 Resultats del software prova 7

Resultats:

Nombre de rectes: 2

Recta 1 Distància: 258 cm Longitud de la recta: 72 cm Graus de la recta: 126º Equació de la recta: 258 = 0,94· x + 0,32 · y Recta 2 Distància: 261 cm Longitud de la recta: 203 cm Graus de la recta: 0º Equació de la recta: 261 = 1 · x + 0 · y

Page 59: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

59

2.11.8 Simulació prova nº 8

En aquesta prova veurem s’analitzarà una imatge sense cap recta, on solament hi ha objectius.

Figura 2.11.15 Imatge de prova 8

Figura 2.11.16 Resultats del software prova 8

Resultats:

Nombre de rectes: 0 No s’han detectat rectes.

Page 60: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

60

Un cop fetes diverses simulacions per diferents casos, es pot concloure que el programa funciona correctament. És capaç de detectar rectes amb una inclinació qualsevol amb una gran precisió. No importa el nombre de rectes que tingui la imatge ni els objectius que hi hagi al voltant. El software és capaç de donar la longitud i la distància exacta de les rectes. Pel que fa als graus veiem com tracta la imatge com si estigués girada 180º. És a dir visualment veiem rectes de 45º, el programa diu que és de 135º, això no resulta però cap inconvenient.

Mitjançant l’equació de la recta ens permetrà saber quins píxels i pertanyen i quins no. D’aquesta forma podem saber de manera molt precisa quins píxels formen part d’un objectiu a tindre en compte i quin no. També cal dir que en la simulació es fan servir rectes molt ben definides i en l’entorn real no serà exactament així ja que influeix la resolució del sensor, el soroll, tot tipus de factors externs, com alinealitats de elements, parets, etç..

Page 61: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

61

2.12. DETECCIÓ DE LÍNIES EN CASOS REALS.

Un cop s’ha vist que el software funciona correctament en casos simulats. Es hora de veure que passarà en un entorn real i amb les imatges del LIDAR. Si s’aconsegueix que funcioni correctament el més probable es que funcioni bé un cop l’algoritme sigui programat en el robot. Així doncs passem a veure diferents casos: 2.12.1 Entorn real prova nº 1

El primer que hem fet es treure a passejar al robot en el passadís que hi ha fora del laboratori, amb un voluntari davant del robot fent d’objectiu, se n’ha obtingut la següent imatge.

Figura 2.12.1 Imatge del LIDAR 1.

Podem observar que s’ha detectat un objectiu que són les cames del voluntari, al seu voltant podem veure les parets i també podem observar els marcs de les portes que jugaran un paper important alhora d’elegir el umbral utilitzat. El segon que podem observar es que les rectes no són tan sòlides com en els casos simulats. Al final de la imatge és traça un semicercle determinant el final de la zona de detecció, com s’havia explicat en l’apartat 2.8.3.6.

Page 62: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

62

Figura 2.12.2 Resultats de la prova 1 en entorn real.

El que primer podem extreure de la simulació és que en un entorn real, i amb imatges del LIDAR les imatges a tractar tenen menys resolució que en els casos simulats. Tractarem rectes amb píxels blancs entre mig, amb petites rugositats i malformacions. Com que el software és capaç de detectar rectes de longituds petites, s’haurà de baixar el llindar per dir que la concentració de píxels formen una recta. En aquesta primera imatge veiem com baixant força el llindar, s’han trobat 70 rectes a la imatge, ja que aquestes rectes són força irregulars i de dimensions petites, encara que a simple vista solament en vegem 3 de ben significants. Un cop és té aquesta informació només cal recórrer aquesta imatge i comprovar si aquests punts formen part de les equacions de les rectes. En cas contrari es tractarà d’un objectiu a tindre en compte. Es mirarà quin punt és més proper al robot i es calcularà la posició x i la posició y, per a dirigir el robot aproximadament sobre aquell punt. En els apartats següents podem veure més simulacions.

Page 63: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

63

2.12.2 Entorn real prova nº 2 En la imatge nº2 podem el sensor LIDAR està en un entorn on hi ha una paret i una porta.

Figura 2.12.3 Imatge del LIDAR 2

Figura 2.12.4 Resultats de la prova 1 en entorn real.

Page 64: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

64

2.12.3 Entorn real prova nº 3 Aquesta tercera imatge és una variant de l’anterior. Aquí el robot ha canviat la seva posició i veu la paret i la porta des de un angle diferent.

Figura 2.12.5 Imatge del LIDAR 3

Figura 2.12.6 Resultats de la prova 3 en entorn real.

Page 65: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

65

2.12.4 Entorn real prova nº 4 En la imatge nº4 el robot està just en una cantonada, de manera que veu les dues parets que formen l’angle de 90º.

Figura 2.12.8 Resultats de la prova 4 en entorn real.

Page 66: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

66

2.12.5 Entorn real prova nº 5 En la imatge nº 5 ens trobem en un entorn on hi ha una persona física, un tram de paret, ascensor, i una caixa pròxima al robot.

Figura 2.12.9 Imatge del LIDAR 5

Figura 2.12.10 Resultats de la prova 5 en entorn real.

Page 67: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

67

Un cop vist els resultats en entorns reals podem treure les següents conclusions. En un entorn real, el sensor LIDAR, és capaç de detectar els elements que l’envolten. De manera que la informació més propera és la més fiable, és a dir, té menys marge d’error.

S’ha hagut de considerar rectes per exemple que formaven parets, com ha rectes més petites ja que existeixen píxels en blanc entremig d’aquestes, deguts al soroll, i a les irregularitats dels elements físics. També cal considerar que és treballa amb una resolució baixa amb el sensor. Per la qual cosa és perd informació i per tant també és una provoca que vegem aquests píxels en blanc entremig dels elements detectats.

Tot això fa que al baixar el umbral de treball, en els resultats, s’observi una gran quantitat de rectes. Això no suposarà cap problema ja que al fer la comparació amb les equacions de les rectes, els píxels que no formin part de cap d’aquestes rectes o pròximes a elles, seran considerats com a objectius adequats. Cal dir que els píxels que siguin pròxims a aquestes equacions es consideraran dins de la recta, pel grau de distorsió abans esmentat.

Page 68: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

68

3. CONCLUSIONS

En el desenvolupament d’aquest projecte s’ha hagut de superar diverses dificultats que implicava treballar en un robot en temps real. S’ha estudiat diversos mètodes que permeten la detecció de línies. Entre aquests hem desenvolupat el de la Transformada de Hough que encara que sigui més lent d’executar ens permet detectar diferents tipus de rectes, de qualsevol longitud i inclinació.

S’ha implementat aquest algoritme i s’ha creat un software capaç de detectar

aquestes, i identificar-ne les característiques. El software ha funcionat correctament per casos simulats. Un cop provat en casos reals, amb imatges del LIDAR, s’ha aconseguit també un bon resultat, tot hi treballar en un entorn real amb els problemes que això suposa com els del robot o el de sistema de detecció.

Page 69: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

69

4. BIBLIOGRAFIA

[ 1 ] “Visión por computador, Fundamentos y Métodos”, Arturo de la Escalera,

Prentice Hall, 2001.

[ 2 ] D. Ballard, “Animate vision”, Artificial Intelligence 48, 1991.

[ 3 ] “Visió per computador”, Jordi Vitrià, Servei de publicacions Universitat de

Barcelona, 1995.

[ 4 ] “Analyse de Fourier et applications filtrage”, Gasquet Claude, cop 2000.

[ 5 ] “Algorithms for image processing and computer.”, Parker, J. R, cop 1997.

Page 70: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

70

Sistema de localització per a un robot

mòbil basat amb sensor làser

Annex

Page 71: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

71

Annex 1: codi

Page 72: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

72

Aquest capítol és confidencial, pel seu reconeixement contactar amb:

M-BOT SOLUTIONS S.L

Domicili social: Avinguda Països Catalans,

número 26 ( CP 43007)

Telèfon de contacte: 646 255 027

E-mail: [email protected]

[email protected]

Page 73: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

73

Annex 2: Manual d’usuari

Page 74: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

74

El desenvolupament del projecte s’ha fet amb el llenguatge de programació C#. Es un llenguatge orientat a objectes de desenvolupament y estandarditza’t per Microsoft com a part de la plataforma .NET.

La sintaxis bàsica deriva del C/C++ i utilitza un model d’objecte de la plataforma .NET el qual resulta similar al del llenguatge Java, encara que excloent-hi millores derivades d’altres llenguatge. C# ha estat dissenyat per combinar el control del llenguatge de baix nivell com el C i la velocitat de programació dels llenguatge d’alt nivell com Visual Basic

El software realitzat ha estat implementat amb la finalitat que fos un entorn interactiu, manejable, fàcil de fer servir, que alhora fos ràpid i que la informació sigues clara. El programa és capaç de detectar rectes, de qualsevol inclinació i longitud. Aquest ens servirà per saber els graus, la longitud i el nombre de rectes. I finalment i el més important les equacions de les rectes. A més a més inclou un gràfic on es pot veure la interpolació de la Transformada de Hough, on és representa la distància i el grau d’inclinació de les rectes detectades en la imatge.

Figura A.2.1 Software implementat.

Page 75: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

75

Menú:

Figura A.2.2 Menú del programa.

El seu funcionament es ben senzill, el menú incorpora dues opcions. La primera es la d’obrir una imatge que es vulgui analitzar. S’obra una finestra amb la imatge que es vol carregar, i en obrir-la es duu a terme el càlcul de la Transformada de Hough. La segona opció és la de sortir del programa.

Imatge origen:

Figura A.2.3 Imatge origen

Page 76: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

76

Es pot veure com en tot moment podrem visualitzar la imatge de treball. En aquest cas d’aquí podem veure un exemple d’imatge amb tres línies verticals de 90º.

Gràfic Transformada de Hough:

Figura A.2.4 Gràfic Transformada de Hough

A part de la informació que es dona al usuari que veurem a l’apartat següent, es mostra per pantalla un gràfica amb la interpolació de la Transformada de Hough, on es mostra la distancia i els graus d’inclinació de les rectes.

Visualitzadors:

Figura A.2.5 Visualitzador amb rectes detectades.

Els visualitzadors ens mostren la informació que volem, amb la informació de les rectes que s’han detectat. Ens mostra el nombre de rectes, la distància, la longitud de les rectes, els graus d’inclinació, i també l’equació de la recta. Podem veure com també es mostra un missatge informant que s’ha detectat rectes o en el cas de que no n’hi hagi cap es mostra el missatge que podem veure a la figura A.2.6. La resta de camps evidentment es mostren en blanc.

Page 77: Sistema de localització per a un robot mòbil basat amb ...deeea.urv.cat/public/PROPOSTES/pub/pdf/1294pub.pdf · 2.5.4 Morfologia de robots amb rodes.....14 2.5.5 Arquitectures de

77

Figura A.2.6 Visualitzador sense rectes detectades.