Download Imagen_gradiente_profund_Silue

Document related concepts
no text concepts found
Transcript
IMAGEN DE GRADIENTE DE PROFUNDIDAD BASADO EN
SILUETA: UNA SOLUCIÓN PARA RECONSTRUCCIÓN DE
ESCENAS EN ÁMBITOS 3D
Pilar Merchán García
Escuela de Ingenierías Industriales, UEX, [email protected]
Antonio Adán Oliver
Escuela Superior de Informática, UCLM, [email protected]
Santiago Salamanca Miño
Escuela de Ingenierías Industriales, UEX, [email protected]
Emiliano Pérez Hernández
Escuela de Ingenierías Industriales, UEX, [email protected]
Carlos Cerrada Somolinos
Escuela Técnica Superior de Ingeniería Industrial, UNED, [email protected]
Resumen
El ámbito de mayor grado de dificultad en escenas
3D surge cuando la escena está compuesta por
diferentes objetos colocados sin restricciones de
posición en la que se permiten circunstancias de
contacto y oclusión. El presente trabajo trata el
problema de reconocimiento y posicionamiento de
superficies segmentadas en este tipo de escenas a
través de un modelo de representación de gradiente
de profundidad condicionado a la silueta llamado
DGI-BS (Depth Gradient Image Based on
Silhouette). Esta representación permite acoplar las
informaciones de profundidad y forma en una
representación única que es invariante a
transformaciones afines y que puede aplicarse a
superficies de objetos ocluidos. A través de
acoplamiento de representaciones DGI-BS de escena
y modelo, se logra obtener una matriz
transformación aproximada que posteriormente es
refinada mediante técnicas ICP. El método ha sido
probado con éxito en entornos reales de
experimentación utilizando sensores de rango.
Palabras Clave:
Visión por Computador, Correspondencia y registro
de superficies, Reconocimiento y posicionamiento de
objetos en escenas complejas.
1
REPRESENTACIONES DE
CONTORNO COMO SOLUCIONES DE
RECONOCIMIENTO.
1.1 UNA BREVE REVISIÓN DE MÉTODOS
Uno de los principales objetivos de las aplicaciones
de visión por computador es reconocer objetos en
entornos reales a través de la información sensorial
de la escena. La información sensorial disponible
puede consistir en imágenes 2D o en información
tridimensional
(coordenadas
espaciales
o
profundidad) de la escena.
Entre la gran variedad de métodos desarrollados para
alcanzar dicho objetivo, se encuentran los que
reconocen objetos tridimensionales a partir de un
conjunto de imágenes que se correspondan con las
proyecciones del objeto desde distintos puntos de
vista. Algunas de estas técnicas están basadas en la
extracción de puntos relevantes de un subconjunto de
vistas canónicas del objeto [9, 15, 16] El mayor
inconveniente de estas aproximaciones reside en que
la detección de puntos relevantes puede no ser
estable frente al ruido, transformaciones o cambios
en la iluminación. Otras aproximaciones resuelven
este problema mediante el ‘análisis multiescalar’
(multiscale analysis) [11], pero resultan lentas
cuando tratan imágenes de tamaño medio. Existen
métodos que trabajan con el mapa de bits del objeto
en lugar de con un conjunto de puntos relevantes de
cada vista, lo que da lugar a un gran volumen de
datos para cada objeto. Con frecuencia, se aplica
análisis de componentes principales (PCA) a las
distintas vistas para reducir los datos, pues cada vista
se convierte en un punto de un eigen-espacio Ndimensional y los objetos en trayectorias de ese
espacio [5, 13]. El inconveniente principal de estos
métodos es que resultan ser muy sensibles a las
sombras y a los cambios en la iluminación [17].
Además, asumen que objetos diferentes no pueden
presentar vistas similares con lo que si dos curvas del
eigen-espacio intersectan no hay solución al
problema de reconocimiento [5].
Existen estrategias donde, en lugar de utilizar puntos
relevantes o imágenes completas para representar
cada vista, utilizan descriptores basados en la forma
del objeto [18, 20]. La mayoría de las técnicas que
siguen esta estrategia resuelve el problema de
reconocimiento a través de la información
proveniente del contorno completo de objeto. En
escasas ocasiones se contempla el caso de que el
objeto pueda estar ocluido en la escena y, por lo
tanto, se maneje sólo una parte del contorno del
objeto.
A lo largo de los años 80 y 90 se han desarrollado
distintas técnicas para la descripción y
reconocimiento basados en contornos, la mayoría de
ellas enmarcadas en entornos bidimensionales. Entre
dichas técnicas se pueden citar las basadas en:
descriptores de Fourier [19, 22], invariantes de
momentos [3], curvas de spline [2, 14], wavelets [6,
8] y basados en las curvaturas de contorno [1, 12, 18,
21].
posiciones arbitrarias
sombra
Los principales problemas de las técnicas basadas en
contornos en este ámbito surgen de la insuficiente
información procedente de la silueta de un objeto. En
otras palabras, una silueta puede ser asociada a
distintas vistas correspondientes a distintos objetos.
Por consiguiente, la representación basada en siluetas
resulta ser ambigua, proporcionando a menudo
errores de reconocimiento, máxime cuando se dan
circunstancias de oclusión. Por consiguiente, el
problema de matching (o acoplamiento de
superficies) es usualmente abordado a través de
técnicas que utilizan información de superficie en vez
de contorno.
Dentro del mundo tridimensional la información
procedente de sensor (estéreo, laser, range finder,
etc) consiste básicamente en proporcionar la imagen
de profundidad de la escena. Esta información es
procesada para desarrollar diferentes algoritmos de
correspondencia y registro. Por supuesto, el problema
de ambigüedad puede surgir de nuevo aunque de
manera más eventual y comúnmente en casos de
severa oclusión.
oclusión
contacto
Figura 1: Ejemplo de escena compleja
1.2 LIMITACIONES E INCONVENIENTES EN
ÁMBITOS 3D. JUSTIFICACIÓN DE NUESTRA
TÉCNICA.
Idealmente los descriptores de forma deberían poseer
las siguientes propiedades:
- ser invariantes ante transformaciones geométricas
- ser robustos frente al ruido
- posibilitar algoritmos de matching
- ser robustos frente a oclusiones
- ser viables desde el punto de vista computacional
- representar la forma con el menor número de datos
Las técnicas de correspondencia y registro de formas
basadas en representaciones de contorno suelen ser
efectivas cuando son aplicadas en entornos de dos
dimensiones. Por el contrario, existen serias
limitaciones en entornos tridimensionales donde se
debe resolver un problema de correspondencia de
superficies. Las limitaciones más importantes son:
I. restricciones en el posicionamiento del objeto
(usualmente reducido a un grado de libertad) o
limitación de los puntos de vista del objeto o bien
II. no aceptación de oclusiones en la escena.
En este trabajo se define un modelo de
representación de objetos basado en la profundidad y
silueta de la superficie del objeto. Por lo tanto, se
trata de sintetizar los dos conceptos “profundidad” y
“forma” en una representación única. Obviamente la
idea principal es utilizar la información de superficie
y de contorno conjuntamente con el objetivo de
aumentar la robustez y salvar el problema de
ambigüedad. El modelo de representación que se
presenta en este artículo es llamado Depth Gradient
Image Based on Silhouette (DGI-BS). (Imagen de
Gradiente de Profundidad Basado en Silueta).
En la práctica, el ámbito de mayor grado de
dificultad surge cuando la escena está compuesta por
diferentes objetos de manera desordenada en la que
se dan circunstancias de contacto y oclusión. La
figura 1 muestra un prototipo de escena compleja con
el que trabajamos. Teniendo información de una
única vista de la escena, el objetivo final puede
sintetizarse en la reconstrucción total de la misma.
Para lograr este objetivo, es necesario pasar por las
fases de segmentación, correspondencia (matching) y
registro (alineamiento). Este trabajo se centra en la
presentación de la solución de correspondencia y
registro mediante DGI-BS.
Para cubrir la primera etapa, se ha desarrollado una
nueva técnica de segmentación de los datos de rango
3D que elude la mayoría de las restricciones
impuestas en otras técnicas de segmentación. El
método consiste en definir un conjunto de
direcciones de exploración de los datos 3D que
proporciona el sensor para llevar a cabo una técnica
de segmentación distribuida. En la sección 2 de este
trabajo aparece brevemente descrita esta nueva
técnica. Para cada superficie segmentada se genera
una representación DGI-BS (sección 3) que
posteriormente es reconocida en la base de datos de
modelos completos DGI-BS, solucionándose el
problema de correspondencia de superficies.
Finalmente se computa el alineamiento sobre las
superficies asociadas, resolviéndose el problema de
registro (sección 4).
2
FASE DE SEGMENTACIÓN Y
ETIQUETADO DE SILUETAS.
La técnica de segmentación de los datos de rango 3D
desarrollada elude, como se ha dicho, la mayoría de
las restricciones impuestas en otras técnicas de
segmentación. Consiste en definir un conjunto de
direcciones de exploración de los datos para llevar a
cabo una técnica de segmentación distribuida. Es
importante señalar que el sentido de la expresión
segmentación distribuida se utiliza para expresar que
los datos se distribuyen a lo largo del proceso a
medida que aparecen niveles y que no hace
referencia a la ejecución en paralelo de varios
procesos.
A311
D0
A21
A312
A22
A321
A322
A1
A2i
Level 1
Level 2
A3i1
Ani,..j,k
A3i2
Exploration
A3i3
Segmentation
Level 3
Level n
Figura 2: Núcleo del proceso y distribución de los
datos
El proceso consta de un núcleo, A, formado por dos
etapas sucesivas: Exploración de los datos y
Segmentación de los datos, que se ejecutan
repetidamente. Al comenzar el algoritmo, el núcleo
acepta los datos del sensor correspondientes a la
escena
completa
D0
(nube
de
puntos).
Posteriormente, como resultado de nuestra técnica de
segmentación, cada segmento 3D separado es una
nueva nube de puntos que puede volver a ser
segmentada. De esta forma, los datos de entrada al
núcleo siguiente son una parte de los datos
segmentados en el núcleo anterior. Esta idea implica
una distribución de los datos 3D originales que se
implementa en el Árbol de Datos Λ, donde la raíz de
Λ es la imagen de rango inicial de la escena (Figura
2). Este algoritmo de segmentación ha sido
presentado con detalle en [10].
Una vez extraídos los segmentos 3D que forman la
escena, la imagen de intensidad es segmentada
asociando cada segmento 3D con su región
correspondiente en la imagen 2D. A continuación, se
extraen las siluetas asociadas a cada uno de los
objetos de la escena.
El problema que se plantea consiste en determinar,
para cada segmento, qué parte pertenece al contorno
real del objeto y cuál es debida a la oclusión del
objeto por otro objeto de la escena. Para una silueta
genérica Hj, hay que clasificar cada punto de Hj como
punto que pertenece a la silueta real o punto de
silueta falsa. Por supuesto, el resultado final será una
partición de Hj,, donde se alternen los trozos reales y
falsos de silueta.
∀H j , j = 1,...n , se realizan las siguientes acciones:
I. Se define Hj como una secuencia de segmentos
conectados {H 1j , H 2j ,....H qj } que son etiquetados
como segmento aislado (I) o conectado (C). Hj puede
expresarse entonces como:
(1)
H j = {H j } I ∪ {H j }C
Un segmento es aislado si todos sus puntos están
suficientemente lejos de cualquier otra silueta de la
escena. Formalmente,
m
H mj ∈ {H j } I ⇔ ∀p ∈ H j / d ( p, q) > l , ∀q ∈ H i i ≠ j
donde d es la distancia euclídea en la imagen y l es
un límite impuesto (en nuestro caso l<10 píxeles). Es
obvio que un segmento conectado coincidirá o estará
muy próximo a otro segmento que pertenezca a
cualquier otra silueta. Formalmente:
m
H mj ∈ {H j }C ⇔ ∀p ∈ H j , ∃q ∈ H i , i ≠ j / d ( p, q ) < l
En resumen, en esta etapa del proceso se trata de
encontrar las partes de siluetas que están en contacto
con otros objetos y las que no lo están. La
información de las parejas de segmentos conectados
se almacena para la siguiente acción.
II. Se clasifica H j en silueta real (R) o falsa (F). El
objetivo es descubrir qué partes de las siluetas
ocluyen a otras (R) y cuáles son partes ocluidas (F).
Para las primeras:
{H j } R = {{H j } I } R ∪ {{H j }C } R
(2)
Es claro que si el segmento es aislado se corresponde
con una silueta real, es decir {{H j } I } R = {H j } I ,
pero lo contrario no siempre es cierto. Por tanto, sólo
los segmentos conectados {H j } C deben ser
clasificados como reales o falsos. Para esto se utiliza
la matriz de profundidad de la escena, Z, comparando
la profundidad media de cada segmento conectado de
Hj con la profundidad media de su segmento
conectado asociado (que pertenece a otra silueta).
Comparando todas las parejas de segmentos
conectados se extrae {{H j }C }R . De esta forma se
puede evaluar la expresión (2). La figura 3 muestra
un ejemplo del resultado de este proceso.
Contorno
real
Segmentación
Etiquetado
de
siluetas
Contorno
falso
 ∇Z 1
H ,1

1
∇Z
DGI _ BS =  H ,2
 .
 ∇Z 1
 H ,t
j
REPRESENTACION DGI-BS
.
2
∇Z H
,2
.
2
∇Z H
,t
.
.
∇Z Hp ,1 

∇Z Hp ,2 

. 
∇Z Hp ,t 

(4)
Silueta
i=1
i=2
i=3
i=4
Muestras de
profundidad
Mapa de
profundidad Z
3.1 DEFINICIÓN
Supongamos un objeto visto desde una posición
arbitraria. A través de la imagen de profundidad de la
escena, Z, se define la silueta del objeto, H. Para
relacionar profundidad y silueta del objeto, se recorre
la silueta de forma ordenada de manera que, para
cada píxel j de H, se obtiene un conjunto de
gradientes de profundidades correspondientes a
píxeles muestreados en la dirección normal a j y
hacia el interior del objeto. Formalmente:
grad Z Hj ,i = ∇Z Hj ,i = Z i − Z Hj
.
La columna j de DGI-BS corresponde al conjunto de
gradientes de profundidad para el píxel j-ésimo del
contorno y cada fila i corresponde al valor de los
gradientes en puntos alejados i·s de los píxeles de la
silueta en las correspondientes direcciones normales
(Figura 4). La figura 4 b) muestra un ejemplo de
DGI-BS utilizando una codificación de color donde
el color negro corresponde a píxeles muestreados
fuera del objeto
Figura 3: Contorno real y contorno falso de un objeto
ocluido en la escena.
3
2
∇Z H
,1
i=20
j
(3)
donde ∀j ∈ H , j = 1,K , p, d (i, j ) = i·s , i = 1...t
p es el número de píxeles de la silueta H, d es la
distancia euclídea en la imagen de profundidad Z
sobre la dirección normal al píxel j y s es el salto que
se produce entre los puntos en los que se calcula la
profundidad.
Cuando se ha obtenido el gradiente grad Z Hj ,i para
cada punto de la silueta, se tiene una matriz de
dimensión t × p a la llamados representación DGIBS. En este caso, se trata de una representación para
una sola vista del objeto.
Dirección de
muestreo
i
p
t
Figura 4: a) Concepto de gradiente de profundidad b)
Representación DGI-BS para una vista del objeto
Figura 5: Arriba se presenta la representación DGI-BS duplicada de un objeto sin oclusión y abajo se muestra la
representación DGI-BS para el mismo objeto con oclusión colocada en la posición de mejor acoplamiento.
Obsérvese cómo la segunda imagen posee más píxeles en color que la primera como consecuencia de que la
imagen de profundidad del objeto ocluido no está completa.
Para obtener el DGI-BS de un objeto segmentado de
la escena, se hace uso de la información suministrada
en la etapa de extracción de siluetas reales {H j } R .
Sobre la silueta real se define el gradiente de
profundidad y se genera su representación DGI-BS.
Notar que si el objeto está ocluido su representación
DGI-BS será una submatriz rotada en j del DGI-BS
del objeto sin oclusión. La figura 5 muestra un
ejemplo de esta propiedad. Por lo tanto, ya que DGIBS es información intrínseca de la superficie, resulta
ser
una
representación
invariante
ante
transformaciones afines.
3.2
REPRESENTACION COMPLETA DGIBS
La representación completa DGI-BS es una imagen
formada por k representaciones DGI-BS extraídas al
proyectar el objeto desde k puntos de vista distintos.
En la práctica se utiliza el modelo sintetizado de alta
resolución del objeto y se toman como puntos de
vista las direcciones que definen los nodos de una
esfera teselada que envuelve al modelo. Cada nodo N
define un punto de vista ON, donde O es el centro de
la esfera (Figura 6). Así, una representación DGI-BS
completa es una imagen de dimensiones ((k * t ), p) .
La figura 7 muestra la representación DGI-BS
completa para el objeto de la figura 6. Como puede
apreciarse DGI-BS es una imagen (en este caso de
dimensiones 1600x400 píxeles) que sintetiza toda la
información superficial del objeto.
Figura 6: Puntos de vista definidos por la esfera
teselada e imágenes de profundidad generadas
sintéticamente
Figura 7: Representación completa DGI-BS
4
ALGORITMO DE
CORRESPONDENCIA Y
REGISTRO.
El algoritmo de correspondencia y registro
desarrollado puede incluirse dentro de las técnicas
para reconocer un objeto tridimensional a partir de
sus proyecciones (en este caso imágenes de
profundidad) obtenidas desde distintos puntos de
vista. Se basa en la información de superficie y
forma. La información de superficie es suministrada
a través de la representación DGI-BS mientras que la
información de forma se obtiene a partir de la
Función de Ángulos (FA) de la silueta real del objeto
{H j } R . FA contiene los valores de la tangente para
cada píxel del contorno (Figura 8). En la creación de
la base de Función de Ángulos se considera, al igual
que antes, el conjunto k de vistas del objeto y se
genera una FA para cada vista. Para evitar
discontinuidades, la función se representa duplicada
en un intervalo de 0º a 720º. La figura 8 muestra un
ejemplo de FA.
escoge el de mayor longitud. A partir de la imagen de
profundidad y de la silueta real se genera la
representación DGI-BSΘ del segmento y se obtiene
su función de ángulos FAΘ .
DGI-BS segmento
FA segmento
BASE DE DATOS
DGI-BS
modelo 1
DGI-BS
modelo 2
DGI-BS
modelo n
DGI-BS vista 1
DGI-BS vista 1
DGI-BS vista 1
DGI-BS vista 2
DGI-BS vista 2
DGI-BS vista 2
.
.
.
.
.
.
.
.
.
DGI-BS vista k
DGI-BS vista k
DGI-BS vista b +
punto acoplamiento
DGI-BS vista h +
punto acoplamiento
...
...
DGI-BS vista k
DGI-BS vista f +
punto acoplamiento
CRITERIO
DGI-BS vista b +
punto acoplamiento
p
α
α
m≤n
...
+
DGI-BS vista f +
punto acoplamiento
...
p
Figura 8: Definición de la Función de Ángulos
1º
modelo K
2º
modelo M
3º
modelo A
Los datos 3D del segmento de escena están
proyectados originalmente desde el punto de vista de
la cámara. Por lo tanto, se tiene una imagen de
profundidad, Z, de la vista y una silueta, H. Si el
objeto está ocluido se extrae la silueta real a través
del procedimiento explicado en la sección 3. Si en la
silueta existen varias trozos de siluetas reales se
Puntos 3D correspondientes
.
.
m
La secuencia de etapas que sigue el algoritmo
desarrollado queda esquematizada en la figura 9. La
entrada del procedimiento consiste en la imagen de
rango de una escena obtenida con un sensor 3D, la
cual es posteriormente segmentada a través de
procedimiento esbozado en la sección 2.
Supongamos un segmento Θ de datos 3D de la
escena que corresponde a determinado objeto
desconocido a priori. El objetivo perseguido es
identificar de qué objeto se trata y calcular cuál es su
posicionamiento respecto del modelo sintetizado en
la base de modelos.
Puntos 2D correspondientes
-ésimo
Matriz de transformación
modelo D
ICP
no
error< emax
sí
Modelo posicionado
en la escena
Figura 9: Esquema del algoritmo de matching
En la primera etapa del algoritmo se recorre la base
de datos de modelos completos DGI-BS y se
determina, para cada modelo completo DGI-BS dos
coordenadas de matching: la vista óptima (índice k) y
posición de acoplamiento (índice p). Así se tienen n
vistas seleccionadas, una por cada uno de los n
modelos de la base de datos con sus n posiciones de
acoplamiento. Para cada pareja de índices (k, p)j
correspondientes al objeto j-ésimo, se define un error
cuadrático medio de matching e DGI − BS ( j ) . A su vez
se consideran los errores en las Funciones de
Angulos e FA ( j ) correspondientes a los valores (k, p)j
anteriormente fijados. Con objeto de filtrar
inicialmente correspondencias erróneas se impone
previamente un criterio restrictivo de distancia entre
inicio y final de los puntos de la silueta real que
reduce el número de candidatos.
las que se ha probado el algoritmo aparecen en la
figura 10. Podemos decir que los resultados
conseguidos han sido satisfactorios obteniendo un
ratio de éxito del 90% de los objetos segmentados.
La selección de la correspondencia óptima se
establece a través de la minimización de la función
de error e = e DGI − BS .e FA , estableciéndose además
un orden en el resto de correspondencias candidatas.
Resuelto el problema de correspondencia en el
entorno DGI-BS, se determinan los puntos
correspondientes en la imagen de profundidad del
segmento y el primer candidato y se recuperan las
correspondientes coordenadas tridimensionales C y
CK . Con estos dos conjuntos de puntos se calcula una
primera aproximación a la matriz de transformación.
Posteriormente este ajuste es refinado mediante la
aplicación de un algoritmo ICP [4,7] obteniéndose la
matriz de transformación definitiva M. El error de
salida del ICP, e ICP es el parámetro que verifica si
el candidato elegido es el correcto. Se fija un valor
e MaxICP que obliga a tomar el siguiente candidato en
caso de ser superado.
Figura 10: Algunas de las escenas utilizadas en los
experimentos
La base actual de modelos está formada por los 25
objetos representados en la figura 11. En la creación
de los modelos completos DGI-BS las imágenes de
profundidad son escaladas, conservando una relación
de 10 píxeles/cm. Con este factor de escala, el
tamaño medio de las imágenes de profundidad es
alrededor de 120x120 píxeles. Igualmente las
imágenes de profundidad de los segmentos extraídos
en la escena real son convertidas con este mismo
factor de escala. Esto implica que el método de
correspondencia es invariante ante escalado o en,
otras palabras, independiente del alejamiento de
objeto.
En resumen, con el método desarrollado se tiene al
mismo tiempo la identificación del objeto y su
posición en la escena. Para una superficie de la
escena, que puede ser ocluida, al identificar la
representación DGI-BS en la base de modelos se
resuelve el problema de correspondencia de
superficies. A continuación, al computar el
alineamiento sobre las superficies correspondidas, se
soluciona el problema de posicionamiento espacial.
5
RESULTADOS
EXPERIMENTALES
Hemos realizado un test de funcionamiento de
nuestro algoritmo sobre un conjunto de escenas
utilizando un sensor de rango. Este sensor
proporciona las coordenadas (x,y,z) de los puntos de
la escena. A través de la calibración de la cámara del
sistema sensorial 3D se obtiene el correspondiente
mapa de profundidad. El error medio de los datos
adquiridos por el sensor es de 1 mm. Las escenas
están compuestas por varios objetos de pequeño
tamaño (5 -15 cm). En ellas los objetos están
posicionados sin ninguna restricción, presentan
partes ocluidas por ellos mismos o por otros objetos
de y están todos pintados del mismo color, de forma
que un procesado de la imagen de intensidad
resultaría ineficiente. Algunas de las escenas sobre
Figura 11: Modelos de la base de datos
Las representaciones completas DPI-BS se han
obtenido con una esfera teselada de 80 nodos. Hemos
comprobado que una resolución mayor de la esfera,
por ejemplo 320 nodos, no es eficiente, puesto que la
mejora que se obtiene en los resultados no es
significativa frente al aumento del coste
computacional que ello conlleva. Para generar la
DPI-BSs se han utilizado valores de los parámetros
t = 20 (número de píxeles muestreados en la
dirección normal) y s = 5 (equidistancia en píxeles
de las muestras), lo cual implica una penetración en
la imagen de profundidad de 100 píxeles.
Vista mejor en DGI-BS del modelo candidato (índice k)
ª
A continuación se muestran una serie de figuras que
ilustran el proceso de reconstrucción de la escena
compleja a partir de los datos de rango y la imagen
de intensidad proporcionadas por el sensor. El
esquema de segmentación distribuida obtenido una
vez completada la etapa de segmentación aparece en
la figura 12. En ella se ve que las hojas finales del
árbol son los objetos de los que consta la escena.
Estos objetos se corresponden con los segmentos
separados de la imagen de intensidad. En la figura 13
se presentan los contornos reales extraídos en la fase
de tratamiento de escena. Los contornos de los
objetos que no están ocluidos aparecen en color
diferente.
©
DGI-BS del segmento
A1
A21
A231
A2 2
A232
A2
A233
A231
A233
3
A21
A232
A22
Figura 12: Esquema de segmentación de la escena y
segmentos en la imagen de intensidad
Figura 13: Siluetas reales etiquetas correspondientes
a los segmentos ocluidos (izquierda) y no ocluidos
(derecha) de la escena
posición de acoplamiento (índice p)
Figura 14: Detalle de mejor ajuste de DGI-BS para el
segmento A232
Figura 15: FAs del modelo y segmento
correspondientes a las coordenadas (k,p)
El algoritmo de correspondencia recorre las DGI-BS
de los modelos buscando una correspondencia
óptima para cada uno de los segmentos extraídos. Un
detalle de la correspondencia óptima para el
segmento A232 es mostrado en la figura 14, mientras
que la figura 15 refleja el ajuste de la función de
ángulos de dicho segmento con la función de ángulos
correspondiente a la vista y posición de acople
seleccionada del DGI-BS. Tras realizar la
correspondencia entre las superficies, se calcula el
alineamiento y se obtiene el posicionamiento espacial
del modelo en la escena (Figura 16). En la figura 17
se representan los puntos de la escena y la nube de
puntos de los modelos después de posicionados.
Como puede apreciarse no aparece el modelo
correspondiente al segmento A233. En este caso,
aunque el modelo candidato corresponde al objeto
correcto, la selección del punto de vista óptimo no es
el correcto. La figura 18 muestra la escena
reconstruida con el posicionamiento erróneo
calculado para este objeto. La solución a este tipo de
errores es una de las tareas en las que estamos
trabajando actualmente. La idea es definir una serie
de vistas candidatas de una misma DGI-BS, de
manera que pueda explorarse no sólo el ajuste de la
mejor vista de cada modelo, sino de las mejores
vistas sucesivas en clasificación de cada DGI-BS.
En la Figura 19 se muestra otra de las escenas con la
que hemos trabajado. Esta vez todos los modelos
están posicionados correctamente.
Figura 16: Segmento A232 reconocido y posicionado
en la escena (superposición de C y M*CK)
Figura 19: Ilustración del alineamiento. Arriba se
muestra la superposición de los objetos completos
sobre los datos de la escena. Abajo se observa una
visión renderizada de la escena reconstruida.
6
Figura 17: a) Registro de los objetos de la escena y
escena reconstruida con los objetos
renderizados.
CONCLUSIONES
El trabajo presentado trata el problema de
correspondencia y registro de superficies bajo una
estrategia que acopla la información de superficie
con la información de contorno en ámbitos de
escenas tridimensionales con oclusión.
La representación DGI-BS (Depth Gradient Image
Based on Silhouette) permite establecer un modelo de
representación completo y discretizado de un objeto
que es invariante a transformaciones afines (rotación,
traslación y escalado). Así mismo, la representación
DGI-BS permite representar segmentos de superficie
de la escena que pueden corresponder a objetos
ocluidos.
A través de un sencillo algoritmo de acoplamiento de
representaciones DGI-BS de escena y el modelo, se
resuelve el problema de reconocimiento y
posicionamiento
llegándose
a
reconstruir
virtualmente la escena completa.
Figura 18: Error de posicionamiento para el
segmento A233
Actualmente se está trabajando en la detección y
corrección de errores de correspondencia derivados
de elecciones de punto de vista y/o posición de
acoplamiento erróneos en los modelos DGI-BS.
Igualmente se están depurando las fases de
tratamiento y procesamiento de la información
procedente del sensor con objeto de evitar errores de
origen.
Agradecimientos
Este trabajo ha sido financiado por la CICYT a través
del proyecto PDI2002-03999-C02
Referencias
[1] Agam, G., Dinstein, I., “Geometric separation of
partially overlapping nonrigid objects applied to
chromosome classification”, IEEE TPAMI 19
(1997) 1212-1222
[2] Alferez, R., Wang, Y.F., “ Geometric and
illumination invariants for object recognition”,
IEEE TPAMI 21 (1999) 505-535
[3] Bamieh, B., De Figuereido, R.J.P., “A general
moment-invariants/attributed graph method for
three-dimensional object recognition from single
image”, IEEE T. Rob. Aut., RA-2, (1986) 31-41
[4] Besl, P., McKay, N. “A method for registration
of 3-D shapes”, IEEE TPAMI 14(1992) 239-256
[5] Campbell, R., Flynn, P., “Eigenshapes for 3D
object recognition in range data”, CVPR, Fort
Collins, CO, USA, 1999, 505-510.
[6] Chen, G.Y., Bui, T.D., Krzyzak, A. , ”Contour
based handwritten numeral recognition using
multi-wavelets and neural networks”, Pattern
Recog. 36 (2003) 1597-1604
[7] Horn, B. K., “Closed form solutions of absolute
orientation using orthonormal matrices”, Journal
of the Optical Society A, 5 (1988) 1127–1135.
[8] Lee, J.D., “A new scheme for planar shape
recognition using wavelets”, Comp. Mach. Appl.
39 (2000) 201-216
[9] Lo, K.C., Kwok, S.K.W., “Recognition of 3D
planar objects in canonical frames”, Pattern
Recognition Letters 22 (2001) 715-723.
[10] Merchán, P., Adán, A., Salamanca, S., Cerrada,
C., “3D complex scenes segmentation from a
single range image using virtual exploration”,
LNC S, 2527 (2002) 923–932.
[11] Mikolajczyk, K., Schimd, C., “Indexing based
on scale invarianr interest points”, ICCV,
Vancouver, Canada, July 2001, 525-531.
[12] Mokhararian, F. S., “Silhouette-based occluded
object recognition through curvature scale
space”, Mach. Vis. Appl. 10 (1997) 87-97
[13] Murase, H. Nayar, S.K., “Visual learning and
recognition of 3D objects from appearance”, Int.
J. Computer Vision 14 (1995) 5-24
[14] Paglieroni, D.W., Jain, A.K., “Fast clasification
of discrete shape contour “, Pattern Recog. 20
(1987) 583-598
[15] Roh, K.C., Kweon, I. S., “3-D object recognition
using a new invariant relationship by single
view”, Pattern Recognition 33 (2000) 741-754.
[16] Rothwell, C.A., Zisserman, A., Forsyth, D.A.,
Mundy, J.L., “Planar object recognition using
projective shape representation”, Int. J.
Computer Vision 12 (1995) 57-59
[17] Startchick, S., Milanse, R. Pun, T., “Projective
and illumination invariant representation of
disjoint shapes”, Fifth ECCV, vol. 1, Freiburg,
Germany, 1998
[18] Trazegnies, C., Urdiales, C., Bandera, A.,
Sandoval, F., “3D object recognition based on
curvature information of planar views”, Pattern
Recognition 36 (2003) 2571-2584.
[19] Wu, Sheu, “Contour based correspondence using
Fourier descriptors”, IEE Proc. Vision Image
Signal Process 144 (1997) 150-160
[20] Xu, D., Xu,W., “ Description and Recognition of
object contours using arc length and tangent
orientation”, P. Rec. Letters 26 (2005) 855-864
[21] Zabulis, X., Sporring, J., Orphanoudakis, S.C.,
“Perceptually relevant and piecewise linear
matching of silhouettes”, Pattern Recognition 38
(2005) 75-93
[22] Zahn, C.T., Roskies, R.C., “Fourier descriptors
for plane closed curve”, IEEE Trans. Comp. 21
(1972) 195-281