19
Construcción de mapas 3D a partir de la extracción de primitivas geométricas obtenidas de datos de un LIDAR. González Barbosa José Joel CICATAQro Resumen A inicios del año el CICATA Querétaro cuenta con un LIDAR (un acrónimo del inglés Light Detection and Ranging o Laser Imaging Detection and Ranging) de la marca Velodyne. Sin embargo el software perteneciente al LIDAR no permitía el manejo de datos en tiempo real, por tal razón se desarrollaron los drivers de adquisición de datos tanto para el sistema operativo LINUX como WINDOWS. Igualmente se desarrollo un Exhibidor de datos basado en OpenGL. El LIDAR es capaz de reconstruir 360 grados alrededor de él, y reconstruye objetos a distancia de 2 metros hasta 60 metros. La información dada por el LIDAR no puede ser interpretada, por lo que hay que procesarla para identificar estructuras geométricas a partir de esta información. Por lo que hemos implementado métodos automático de extracción de primitivas geométricas que nos permitan la construcción de mapas a partir de esta información. Las primitivas geométricas extraídas automáticamente corresponden a planos, cilindros y esquina. Los planos son indispensables en el modelo de la construcción de un mapa 3D. Como hemos mencionado, la máxima distancia que el LIDAR puede reconstruir son 60 metros, si deseamos reconstruir zonas más extensa debemos pegar varias adquisiciones hechas en posiciones diferentes del LIDAR. De ahí surge las preguntas: ¿Donde colocamos el LIDAR? y ¿Cuántas posiciones son necesarias?. Estas respuestas fueron dadas automáticamente por un software que hemos desarrollado de optimización, el cual ha sido aceptado en IEEE International Conference on Robotics and Automation después de una estricta revisión. 1. Introducción Las ciudades están creciendo y expandiéndose rápidamente generando la necesidad de modelos 3D que sean reproducidos en un corto período de tiempo y de manera muy precisa. Los sensores actuales como el LIDAR Velodyne HDL64E presentan una gran ventaja al proporcionar una nube de puntos que representan las distancias a la que se encuentran objetos 360 grados alrededor de él, desde un par hasta 60 metros, con los que se pueden generar escenarios virtuales de ambientes reales. Los modelos 3D son creados a partir de la unión de los puntos por medio de líneas formando conjuntos de polígonos que a su vez forman parte de unas mallas las cuales representan el modelo de alambre de los objetos. El resultado final debe ser un modelo realista añadiendo texturas y renderizando los modelos 3D de manera que la experiencia final del usuario sea como si estuviera en ese momento en el lugar

3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

Construcción de mapas 3D a partir de la extracción de primitivas geométricas obtenidas de datos de un LIDAR. 

González Barbosa José Joel 

CICATA‐ Qro 

 

 

Resumen 

A  inicios  del  año  el  CICATA Querétaro  cuenta  con  un  LIDAR  (un  acrónimo  del  inglés  Light Detection  and Ranging  o  Laser  Imaging Detection  and Ranging)  de  la marca Velodyne.    Sin embargo el software perteneciente al LIDAR no permitía el manejo de datos en tiempo real, por  tal  razón  se  desarrollaron  los  drivers  de  adquisición  de  datos  tanto  para  el  sistema operativo LINUX como WINDOWS. Igualmente se desarrollo un Exhibidor de datos basado en OpenGL. El LIDAR es capaz de reconstruir  360 grados alrededor de él, y reconstruye objetos a distancia  de  2  metros  hasta  60  metros.  La  información  dada  por  el  LIDAR  no  puede  ser interpretada, por lo que hay que procesarla para identificar estructuras geométricas a partir de esta  información.  Por  lo  que  hemos  implementado métodos  automático  de  extracción  de primitivas  geométricas  que  nos  permitan  la  construcción  de  mapas  a  partir  de  esta información.   Las primitivas geométricas extraídas automáticamente corresponden a planos, cilindros y esquina. Los planos son indispensables en el modelo de la construcción de un mapa 3D.  Como  hemos mencionado,  la máxima  distancia  que  el  LIDAR  puede  reconstruir  son  60 metros,  si  deseamos  reconstruir  zonas  más  extensa  debemos  pegar  varias  adquisiciones hechas en posiciones diferentes del LIDAR. De ahí surge  las preguntas: ¿Donde colocamos el LIDAR?  y  ¿Cuántas  posiciones  son  necesarias?.  Estas  respuestas  fueron  dadas automáticamente por un  software que hemos desarrollado de optimización, el  cual ha  sido aceptado  en  IEEE  International  Conference  on  Robotics  and  Automation  después  de  una estricta revisión. 

  

1. Introducción 

Las  ciudades  están  creciendo  y  expandiéndose  rápidamente  generando  la  necesidad  de modelos 3D que sean reproducidos en un corto período de tiempo y de manera muy precisa. Los  sensores  actuales  como  el  LIDAR  Velodyne  HDL‐64E  presentan  una  gran  ventaja  al proporcionar  una  nube  de  puntos  que  representan  las  distancias  a  la  que  se  encuentran objetos 360  grados  alrededor de  él, desde un par hasta 60 metros,  con  los que  se pueden generar escenarios virtuales de ambientes  reales. Los modelos 3D son creados a partir de  la unión de los puntos por medio de líneas formando conjuntos de polígonos que a su vez forman parte de unas mallas las cuales representan el modelo de alambre de los objetos. El resultado final  debe  ser  un  modelo  realista  añadiendo  texturas  y  renderizando  los  modelos  3D  de manera que la experiencia final del usuario sea como si estuviera en ese momento en el lugar 

Page 2: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

que se está representando. Los modelos 3D son portables de manera que no necesariamente se tiene que hacer una visita al lugar de interés para tomar decisiones. 

Se puede utilizar como herramienta de apoyo en proyectos arquitectónicos para remodelación y  restauración, para promover  sitios  turísticos  en  los  cuales  se puede  acceder  virtualmente desde cualquier parte del mundo por medio de internet, para hacer un levantamiento de sitios arqueológicos, y para la toma decisiones en planeación urbana al recopilar información sobre avenidas, edificios, manzanas,  transporte, etc. Con una utilización eficaz de  la generación de  modelos de ciudades 3D, es posible proporcionar rápidamente  los datos de altura y medidas preventivas de ingeniería para la protección civil en la región afectada. 

 

1.1. Hipótesis 

Se pueden crear mapas 2D y 3D de manera fácil, rápida y precisa con el LIDAR Velodyne HDL‐

64E  ya que  es una de  las mejores herramientas para  trabajos de navegación  autónoma  así 

como de reconstrucción urbana.  

 

1.2. Objetivo general 

Desarrollar  algoritmos  computacionales,  que  a  partir  de  los  puntos  x,y,z  calculados  por  el 

LIDAR, determinen las primitivas geométricas tales como planos, cilindros, esferas y esquinas, 

con las cuales se construyan mapas 3D. 

 

1.3. Objetivos específicos 

• Desarrollar una aplicación para capturar y visualizar  la  información entregada por el 

LIDAR, así como los resultados experimentales. 

• Extraer información geométrica de las nubes de puntos. 

• Construcción de mapas 2D de navegación. 

• Construcción de mapas 3D. 

 

1.4. Justificación 

El LIDAR Velodyne HDL‐64E entrega nubes de puntos de diferente resolución cambiando 

su  velocidad de  rotación,  lo  cual permite  flexibilidad para  trabajar  tanto  en navegación 

autónoma como en reconstrucción urbana. En la primera se requiere de nubes de puntos 

Page 3: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

de baja  resolución para que el procesamiento de  los datos y  la  sincronización con otros 

dispositivos sean mucho más rápidos. En la segunda las nubes de puntos deben tener alta 

resolución para poder identificar a detalle características de las construcciones. Así el HDL‐

64E es una muy buena herramienta para realizar este tipo de actividades. 

 

2. Características  del LIDAR HDL‐64E 

Con el desarrollo de la nueva tecnología LIDAR de alta definición (HDL, High Definition LIDAR),  

se ha encontrado nuevos campos de aplicación como navegación autónoma de de vehículos, 

vigilancia fija y móvil, cartografía, modelado  industrial y otras aplicaciones. 

2.1. Funcionamiento 

El LIDAR HDL‐64E es un sensor laser de segunda generación y su principio de operación  del es 

bastante  simple,  obtiene  las  distancias  de  los  objetos  situados  a  su  alrededor  utilizando  el 

principio del medidor laser de distancia. Un emisor laser hace incidir un rayo el cual rebota en 

la superficie de un objeto y un receptor lo captura calculando la distancia de acuerdo al tiempo 

que tardo en regresar, si tarda más tiempo del esperado o no regresa entonces no se toma en 

cuenta. Con  los ángulos en que se proyecto el  laser y  la distancia se construye un vector en 

forma esférica, y así se obtiene un punto en el espacio   (la figura 2.1 muestra una nube e 

puntos adquirida por el LIDAR), y acumulando cada uno de estos se forma la nube de puntos. 

Cuando  esta  colección  de  puntos  es  renderizada  se  crea  una  imagen  tridimensional  del 

escenario. Entre más densa sea la nube de puntos mayor resolución tendrá la imagen. 

 

Figura 2.1. Ejemplo de una nube de puntos generada por LIDAR 

Page 4: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

 

El HDL‐64E se muestra en la Figura 2.2 y tiene montado un arreglo de 64 láseres, divididos en 

un  bloque  superior  y  otro  inferior  de  32  cada  uno,  y  toda  la  unidad  gira  en  el  eje  vertical 

ofreciendo un campo de visión horizontal de 360 grados, al girar en un ángulo θ, y  uno vertical 

de26.8 grados,   va desde 2° hasta -24.8° por el acomodo de  los  láseres en un ángulo φ. Cada 

laser es disparado miles de veces por segundo, proveyendo más puntos de datos por segundo 

y una nube de puntos mucho más robusta que los diseños convencionales, con un alcance de 

hasta 60 metros y una precisión de 5 cm. El laser es de clase 1M, seguro para la vista, con una 

longitud de onda de 905 nanómetros y con pulsos de 10 nanosegundos. 

 

 

Figura 2.2. Diseño del LIDAR HDL‐64E. 

 

Este dispositivo opera con 12 Volts, cualquier voltaje mayor a 16 puede dañar la unidad, y de 4 

a  6  amperes.  Cuenta  con  interfaces  Ethernet  y  serial,  con  conectores  RJ‐45  y  RS‐232  DB9 

respectivamente, y el cable de alimentación de poder. Una vez que el  l LIDAR alcanza cierta 

velocidad de rotación comienza una transmisión simple de paquetes UDP que son capturados 

por la computadora por medio de su interfaz Ethernet, es necesario un software que funcione 

como  escucha  de manera  que  cuando  se  reciban  inmediatamente  sean  convertidos  en  la 

información requerida y se pueda continuar recibiendo los paquetes restantes. 

Page 5: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

La ca

o  infe

veces

2

El LIDdividiinformtempcada 

Enca

2 b

Fig

Encabinferi

Ángupara 

Distacentíde  tr

beza rota ho

erior. Para o

s el grupo de

2.2. Adquisic

DAR HDL‐64Eidos  en  12  bmación  de peratura. Cadconjunto co

bezado  Á

bytes  2

gura 2.4. Estr

bezado. Conior. El bloque

lo. Son 2 bytobtener al á

ncia. Conjunmetros, y unres pies es un

orizontalmen

obtener una 

e laser super

Figura 2.3

ción de datos

E entrega combloques  de estado  queda paquete pntiene inform

Ángulo DisLa

2 bytes  3

ructura de un

tiene 2 bytee superior se

tes que reprngulo real. 

ntos de 3 bytno con informn dato no va

nte en un áng

mayor resol

ior por solo 

3. Ejemplo de

mo salida pa100  bytes,  se  contienenpuede ser tamación de 3

stancia aser 0 

DL

 bytes  3

n bloque de 

es que indicae representa 

resentan un 

tes con dos mación de inlido. 

gulo   y disp

lución a gran

uno del infer

e la secuenci

quetes UDP seguidos  de n  un  contadanto para el 2 láseres (ve

istancia Laser 1 3 bytes 

100 bytes de

 

an cuando uncon 0xEEFF 

entero entre

de  informacntensidad, de

para los láser

ndes distanc

rior. 

a de captura

Ethernet a 1seis  bytes 

dor  de  giroconjunto deer Figura 2.3 

. . . 

. . . 

el paquete U

n paquete py el inferior 

e 0 y 35999, 

ción de  la die 0 a 255. Y s

res por grup

cias se emite

a de datos. 

100 Mbps. Loal  final  de  co  y  versión e laser supery 2.4). 

DistaLase3 by

UDP entregad

ertenece al con 0xDDFF

es necesario

stancia, en  isi la distancia

os ya sea sup

en y captura

os paquetes cada  paquetdel  firmwa

rior o el infe

ancia er 30 

DistLas

ytes  3 b

do por el LID

bloque supe. 

o dividir entr

ncrementosa es cero o m

perior 

n tres 

 

están te  con are  o rior, y 

tancia er 31 bytes 

AR. 

erior o 

re 100 

 de .2 menor 

Page 6: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

Estado.  Muestra  o  la  temperatura  interna  de  la  unidad  o  el  número  del  firmware.  La temperatura se muestra con 2 bytes seguidos por la cadena " DegC" en ASCII. El firmware con el formato de cadena " Vn.n" en ASCII. 

Estos datos  son  leídos con un código en C++ que por medio  se  sockets o  librerías como WinPcap realiza la conexión y transferencia de los paquetes desde el LIDAR a la computadora. También  se  puede  hacer  una modificación  en  la  velocidad  de  rotación,  esto  generará  que aumente  o  disminuya  la  resolución  de  la  imagen  ya  que  la  tasa  de muestreo  de  datos  no cambia. La velocidad rotación default es de 600 rpm (10 Hz), y puede girar desde 300 rpm (5 Hz) hasta 900  rpm  (15 hz). Estas modificaciones  se  realizan  con una  conexión  serial RS‐232 COM. (http://www.velodyne.com/lidar/). 

Bloque inferior

RPM  RPS  Puntos por revolución 

Puntos por revolución por laser 

Resolución angular (grados)

 300 600 900 

5 10 15 

50000 25000 16667 

1562.5 781.25

521 

0.2304 0.4608 0.6912 

Bloque superior

RPM  RPS  Puntos por revolución 

Puntos por revolución por

laser 

Resolución angular (grados) 

Resolución angular Porst-Bloque inferior

300 600 900 

5 10 15 

200,000 100,000 66,667 

6250 3125 2083 

0.2304 0.4608 0.6912 

0.1152 0.2304 0.3456

Tabla 2.1 Resolución angular del HDL‐64E. 

 

2.3. Conversión de los datos para su análisis y visualización 

Una etapa importante después de capturar datos del LIDAR es la conversión de los mismos en 

información útil. Los métodos de análisis propuestos en el presente trabajo utilizan  los datos 

tanto en coordenadas esféricas como en cartesianas.  

Inicialmente solo  tenemos como datos el ángulo θ,  la distancia e  intensidad, y aplicando  los 

factores  de  corrección  se  obtienen  coordenadas  esféricas,  que  después  son  convertidas  en 

coordenadas cartesianas. Antes de hacer la conversión es necesario realizar un filtrado de  los 

datos validos, seleccionar solo aquellos que su distancia está entre 2 y 120 metros.  

Los  factores  de  corrección  se  leen  de  un  archivo,  con  los  cuales  se  hace  la  corrección  de 

rotación  horizontal  (rotCorrection),  corrección  vertical  (vertCorrection),  en  distancia 

Page 7: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

(distCorrection),  compensación  vertical  (vertOffsetCorrection),  y  compensación  horizontal 

(horizOffsetCorrection). 

Factor  Descripción 

rotCorrection  Ángulo de corrección rotacional para cada laser visto desde atrás de la 

unidad. Los valores positivos lo rotan hacia la izquierda y negativos a la 

derecha. 

vertCorrection  Ángulo  de  corrección  vertical  para  cada  laser.  Valores  positivos 

apuntan hacia arriba y negativos hacia abajo. 

distCorrection  Distancia  de  corrección,  en  centímetros,  para  cada  laser  debido  al  

diseño.  Debe  sumarse  directamente  a  la  distancia  leída  de  los 

paquetes. 

vertOffsetCorrection  Distancia que representa la altura de cada láser medida desde la parte 

inferior de la base. Es fija para el bloque superior y diferente valor para 

el bloque inferior. 

horizOffsetCorrection Distancia  de  compensación  horizontal  para  cada  laser.  Es  una 

constante positiva o negativa para el valor de todos los láseres. 

Tabla 2.2 Descripción de los factores de corrección. 

Cada HDL‐64E tiene su propio archivo de calibración y una aplicación para visualizar y capturar 

los datos, que vienen originalmente en el CD de instalación. Este archivo tiene formato .XML y 

es usado por el visualizador para realizar los cálculos correspondientes para la visualización. 

Si  un  punto  es  representado  con  el  vector  V r, , , para  realizar  la  conversión  de 

coordenadas esféricas a cartesianas se aplica la siguiente relación: 

cos  

sen  

cos

Page 8: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

 

Figura 2.5. Conversión de coordenadas esféricas a cartesianas, a) representación del vector V 

en forma polar y b) forma cartesiana. 

 

3. Extracción de primitivas:  planos 

La primera actividad como parte de  la segmentación de regiones que representen objetos en el conjunto de datos tridimensionales es la identificación de planos. No es posible determinar qué puntos  caen exactamente en un plano, es por esto que  se deben utilizar métodos que aproximen  un  conjunto  de  puntos  al modelo matemático  que  representa  un  plano  en  el espacio tridimensional.  

La ecuación general de un plano es: 

 

Y su respectiva normal   

 

3.1. Extracción del plano principal 

Uno de  los problemas críticos al analizar  las nubes de puntos es encontrar el plano principal, 

en este caso la horizontal o el piso, que en teoría debe ser ortogonal a los planos verticales o 

paredes. Partiendo de la idea en que idealmente en una nube de puntos capturada en un piso 

sin  inclinación  o  paralelo  a  la  horizontal  el  plano  principal  es  paralelo  a  los  ejes  X‐Z  y  los 

verticales están proyectados sobre el eje Y, ésta orientación de los ejes es tomada de acuerdo 

al motor de gráficos de OpenGL. En la figura 3.1  

Page 9: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

El  ve

despl

Para 

calcu

aprox

Tenie

distan

Por lo

No sepuedcercaAl mé

Figur

ector  norm

lazamiento 

determinar 

lando su dis

xime a cero. 

endo un pun

ncia del punt

o tanto para 

e puede conen  tener  unanos que aunétodo se le a

ra 3.1. Plano

al  del  plan

, la ecu

qué puntos d

stancia con r

nto 

to al plano e

evaluar los p

nsiderar al pn  pequeño  enque idealmadapto un u

o del piso de 

no  X‐Z  es 

uación norm

de del conju

respecto a es

  y un p

está determin

puntos del p

lano de manerror.  Ademente no caenmbral  , que

manera idea

 

al al plano X

nto  caen 

ste y tomand

plano    con

nada por: 

plano princip

nera  ideal yaás  de  que  en dentro dele es la distan

al colocado s

,  de  est

‐Z es: 

dentro del p

do como val

 

  ecuación 

 

al de manera

 

a que  los daen  el mundo plano se dencia mínima 

 

sobre los eje

ta  manera 

 

plano   se

lidos los que

                     

a ideal: 

tos que noso  real  se  tieeben considepermitida e

s X‐Z.  

al  no  tene

e evalúa cad

e su distancia

                      

s entrega el enen  puntoserar parte deentre el punt

er  un 

da uno 

a   se 

,  la 

     (1) 

LIDAR s muy e este. to y el 

Page 10: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

planoal mo

Los in de

 

Pero 

vuelv

los in

Dond

Como

como

o, para decreodelo. De ma

nliers existenfinidos por u

como el algo

ve a calcular 

nliers se pued

de tenemos c

o A es una m

o Gauss‐New

etar si el punanera que la 

n solo dentroun desplazam

Figura

oritmo parte

su ecuación

de formar un

como incógn

matriz de mxn

wton o desco

nto es inlierecuación (1)

o de un volumiento   pos

a 3.2. Inliers 

e de un plano

 solo con los

n sistema 

nitas a, b, c y

n donde m>n

mposición e

u outlier, lo) queda com

umen imaginsitivo y negat

y outliers de

o ideal paral

s inliers. Con

 de la s

d, así: 

n, la solución

n valores sin

s primeros so: 

ario delimitativo. 

entro de un p

elo al eje X‐Z

nsiderando la

iguiente man

 

n de este sist

ngulares (SVD

son todos los

ado por los p

 

 

plano. 

Z y se necesi

a ecuación ge

nera: 

 

tema se obt

D). 

s que se ajus

planos paral

ta el plano r

eneral del p

iene con mé

staron 

elos a 

real se 

lano y 

étodos 

Page 11: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

Resolviendo el  sistema  se  tiene una nueva ecuación del plano  con  los  inliers. Y  se  vuelve a 

realizar el proceso de calcular las distancias hacia este nuevo plano y resolver el nuevo sistema 

0 hasta que el número de inliers ya no se incremente. 

Para calcular el plano principal en  la  siguiente  captura o  segunda nube de puntos, ya no  se 

parte del plano  ideal X‐Z sino que se toma el plano principal resultante de  la nube de puntos 

anterior y de ahí se comienza la evaluación, de esta manera se reduce el tiempo de cálculo ya 

que es muy probable que solo haya tenido un pequeña variación. 

El  algoritmo  para  encontrar  el  plano  principal  en  una  sola  nube  de  puntos  procede  de  la siguiente manera: 

Entrada: Datos (Nubes de puntos), Π (Ec. Plano anterior),   (umbral o threshold). 

Salida: El mejor plano (Ecuación del plano). 

• Inicializar:   plano     numAntInliers=0; 

• Hacer: o Calcular  ,  para los   puntos 

Seleccionar cuales puntos son inliers,  ;  

Evaluar si (numInliers == numAntInliers)  

Salir del ciclo 

Sino  

numAntInliers= numInliers 

o Formar el sistema   y resolverlo. o Establecer  la  nueva  ecuación  del  plano  principal  con  los  nuevos  parámetros 

Hasta que numInliers = numAntInliers 

• Al terminar el mejor plano es el anterior mejor plano. 

• Quitar los inliers de la nube de puntos y tomar el resto de puntos como la nueva entrada 

para encontrar otros planos. 

 

3.2. Extracción aleatoria de planos 

Page 12: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

Un mque cuna c

Este líneasplanoy C), c

Fig

Se ca

Dond

Así se

 

De mtambumbrcantid

 

El alg

Entra

método que pconsideramocierta cantida

método  es s, elipses, eto. Se utiliza ucon los cuale

gura 3.3. Pla

lcula un vect

de  

e determina 

manera  cíclicbién  escogidral de distandad de inlier

goritmo proc

ada: Datos (N

permite deteos un error mad de parám

comúnmenttc., y en éstaun punto (A)es se calcula

no formado 

tor normal N

la ecuación 

a en  cada  ito  de manercia máxima rs o se comp

ede de la sig

Nube de punt

ectar los punmínimo es el metros  a un m

te  utilizado a aproximaci) escogido deran los vecto

con tres pundi

N al plano co

del plano co

teración  se  cra  aleatoria, con respe

leta el núme

guiente mane

tos), N (itera

ntos que se aRANSAC (RAmodelo mate

para  detección se adapte manera aleores directore

ntos de los curectores 

n el product

mo: 

calcula  la di  evaluando cto a éste. Eero de iterac

era:  

aciones), t (u

acercan a unANdom SAmemático, obt

ción  de  figurto el algoritmeatoria y suses ( .), p

uales se deri. 

o vectorial d

stancia de esi  puede  ca

El ciclo termiiones. 

mbral o thre

 plano teniemple Consensteniendo cua

ras  geométrmo para ajuss dos vecinospara formar u

 

iva la norma

de los dos ve

ese plano  coaer  dentro  dna cuando s

eshold). 

endo una distsus), el cual aales son inlie

ricas  en  2D star al modes más cercanun plano inic

l y sus vecto

ctores direct

on otro puntdel  plano  cose tiene una 

tancia ajusta ers.  

como elo del nos (B cial. 

res 

tores: 

to  , on  un cierta 

Page 13: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

Salida

• R

• A

 

Las d

4. C

El LID

corre

facto

en al

punto

desar

corre

del m

 

a: El mejor p

Repetir N veco Escogo Dete

sus vo Enco

margo Si el n

en el 

Al terminar e

esventajas d

Tener unestructurideal 

El  tiempopuntos es

Calibración 

DAR cuenta c

ección,  ya  q

res consiste

titud  (1 valo

o, y  repetido

rrollado  un 

ección por  lá

modelo es pre

plano (Ecuaci

ces: ger aleatoriarminar los paecinos más cntrar los datgen de error número de inmejor plano

l mejor plan

del método a

a gran cantirados que pu

o  que  puedas muy grand

con 64  láser

ue  consider

n en tener 4

or para cada

o esto 4 vec

modelo  pr

áser, esto co

esentada en 

ón del plano

amente un puarámetros dcercanos. tos que son t. nliers es máso. 

o es el anter

aleatorio son

idad de ruidueden toma

a  tomar  en e y/o se real

res, sin emba

a  que  los  e

 correccione

a grupo). Est

ces. Lo anter

ropio  para  e

rresponde a

la ecuación 

o). 

unto. e la ecuación

compatibles

s grande que

rior mejor pla

n: 

o o conjuntorse como da

procesar  lolizan muchas

 

argo el softw

el  LIDAR  con

es en theta (u

o equivale a

rior  físicame

el  LIDAR.  E

a un total de

4.1 

 

n del plano q

s con el mod

e el anterior 

ano. 

os de puntosatos validos 

os  datos  se  is iteraciones

ware del fab

ntiene  4    gr

un valor para

a decir que  t

ente no es p

ste  modelo

e 192 factore

 

que forma el

delo estimad

mejor plano

s que represy no se obte

incrementa . 

ricante solo 

rupos  de  8 

a cada grupo

tenemos 8  l

posible, por  t

o  considera 

es de calibra

 

               

 punto con d

o (inliers), c

o este se con

sentan objetenga un resu

si  el  conjun

usa 8 factor

láseres.  Los 

o) y 4 correcc

áseres en un

tal motivo h

tres  factore

ación. La ecu

                  Ec

dos de 

on un 

vierte 

tos no ultado 

nto  de 

res de 

ocho 

ciones 

n solo 

hemos 

es  de 

uación 

c (4.1) 

Page 14: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

La calibración del LIDAR consiste en calcula  , ,  para cada  laser a partir de comparar  los 

datos  adquiridos  por  el  LIDAR  con  unos  datos  de  dimensiones  exactas.    Usamos  las 

dimensiones del patrón de calibración para crear valores exactos. La figura siguiente muestra 

la creación de las mediciones exactas del LIDAR usando la forma real del patrón, en esta figura 

el LIDAR  es colocado virtualmente en dos posiciones.  

 

 

Figura 4.2 Datos teóricos adquiridos por el LIDAR. Estos son calculados computacionalmente a 

partir de la dimensiones del LIDAR y considera la orientación y posición del LIDAR con respecto 

a la referencia del patrón 

 

La orientación y translación entre el sistema de referencia del LIDAR y el patrón de calibración 

también  son  calculados  en  el  proceso  de  calibración.  Por  lo  que  el  número  de  variables  a 

encontrar  aumenta  6 mas  (3  de  rotación  y  3  de  traslación).  Es  decir  el  número  total  de 

variables es de 198. 

 

 

 

 

 

Page 15: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

5. Resultados: Construcción de mapas 

En esta  sección  se presentan  técnicas de creación de mapas en 2D y 3D que  servirán como 

base  para  trabajos  futuros  de  navegación  autónoma  y  reconstrucción  urbana.  El  proceso 

consiste en unir información que se obtiene entre capturas continuas. 

5.1. Mapas 2D 

Para  la creación de un mapa 2D se capturan  los datos generados por el LIDAR en un giro de 360 y se forma la nube de puntos solo con aquellos que caen dentro del área de interés. Como solo interesa conocer las zonas que son navegables, es decir que no tienen obstáculos con los cuales  el  auto pueda  colisionar,  se  aplica  el método para detectar  el piso o plano principal expuesto en la sección 3.1 y así solo se analizarían puntos que representan objetos. 

 

 

Figura 5. 1. Nubes de puntos, a) Total de datos, b) Resto de puntos después de que el plano del suelo fue segmentado. 

 

 

 

 

Una vez que el plano del suelo ha sido segmentado de la nube de puntos se puede generar el mapa  de  navegación  al  tomar  el  resto  de  los  puntos  y  proyectarlos  en  el  plano  X‐Z.  Esta proyección  es  dividida  por  una  cuadricula  en  pequeñas  zonas  las  cuales  dirán  si  es  posible navegar por ahí. El mapa 2D es representado por una matriz cuadrada con   

Page 16: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

La cuadricula se forma tomando en cuenta el área cuadrangular a evaluar de a cuerdo a una distancia D en dirección positiva y negativa en  los ejes X y Z.  La  relación del  tamaño de  las áreas y el de la cuadricula es la precisión con la que se quiere evaluar cada zona.  

(a)                                                                                   (b) 

 (c)                                                                                          (d) 

Figura 5.2  . Vista  superior de  los puntos 3D a) Proyección de  los puntos en  los ejes X‐Z, b) Mapa de navegación en  la misma perspectiva que a), c) Mapa de navegación en dos dimensiones, d) Mapa de navegación ampliado donde las zonas de sombreadas no son navegables. 

 

5.2 Reconstrucción de Mapas 3D. 

 

A partir de la adquisición del LIDAR y la extracción de características (ver figura 5.3 (a) y (b)) el 

objetivo es empatar características visible en ambas vistas con el propósito de crear un mas 

más extenso formada por ambas vistas, estos resultados son mostrado en la figura 5.4. 

Obsérvese como en las figuras 5.3 (a) y (b) existe una zona en el centro que no es reconstruida 

y debido a la superposición de esta información zona ciega del centro desaparece en la figura 

5.4. 

Page 17: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

 

 

(a)                                                                  (b) 

Figura 5.3 . Vista superior de los mapas calculados por el software tomados en dos 

posiciones diferentes.  NOTA: las imágenes son presentadas en MATLAB pero todo el 

sistema se encuentra codificado en C++ 

 

 

Figura 5.4 Vista superior de la reconstrucción 3D a partir de varios mapas. Obsérvese 

como desaparece la zona ciega del centro de las imágenes presentes en la figura 5.3 

 

 

5.2 Calibración. 

 

Los  datos  adquiridos  por  el  LIDAR  son  corregidos  por  factores  proporcionados  por  el 

fabricante. Sin embargo   creemos que estos valores no son del  todo correctos. La  figura 5.5 

muestra un patrón de calibración con dimensiones conocidas, y que corresponde a un cubo. 

Sin embargo la figura 5.6 muestra los resultados adquiridos por el LIDAR vistos desde la parte 

superior.  Los  factores  de  corrección  utilizados  en  esta  figura  corresponden  a  los 

proporcionados  por  el  fabricante  .  En  ello  podemos  ver  que  la  adquisición  no  se  parece  al 

Page 18: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

cubo.  La  figura  5.7 muestra  la misma  adquisición  pero  corregida  con  nuestros  factores  de 

calibración. En esta figura podemos observar que la exactitud de la medición es mucho mayor 

a la proporcionada usando los factores del fabricante. 

 

 

Figura 5.5 Patrón de calibración utilizado. 

 

 

 

Figura 5.6 Reconstrucción del patrón de calibración usando los factores de corrección del 

fabricante 

 

Page 19: 3D obtenidas de datos de un LIDAR. González Barbosa José ...sappi.ipn.mx/cgpi/archivos_anexo/20082678_6895.pdf · factores de corrección se obtienen coordenadas esféricas, que

 

Figura 5.7 Reconstrucción del patrón de calibración usando nuestros factores de 

corrección 

 

5.3 Resultados adicionales 

Resultados adicionales como la calibración de la cámara no son reportados en este documento 

debido a que no fueron considerados en la propuesta de proyecto. Pero en este año 2009 nos 

van a servir para colocarle textura a los mapas creados por la información del LIDAR.  

Resultados  adicionales  como  el  posicionamiento  óptimo  del  lidar  y  de  las  cámaras 

panorámicas no son reportados en este documento debido a que no fueron considerados en la 

propuesta  de  proyecto.  Pero  en  este  año  2009  nos  van  a  servir  para  construir  de manera 

óptima mapas 3D de zonas muy grandes. 

 

6. Impacto 

Se puede utilizar como herramienta de apoyo en proyectos arquitectónicos para remodelación y  restauración, para promover  sitios  turísticos  en  los  cuales  se puede  acceder  virtualmente desde cualquier parte del mundo por medio de internet, para hacer un levantamiento de sitios arqueológicos, y para la toma decisiones en planeación urbana al recopilar información sobre avenidas, edificios, manzanas,  transporte, etc. Con una utilización eficaz de  la generación de  modelos de ciudades 3D, es posible proporcionar rápidamente  los datos de altura y medidas preventivas de ingeniería para la protección civil en la región afectada.