Escolar Documentos
Profissional Documentos
Cultura Documentos
O e
+ V
x
T
y x I V y x I x W
2
2
, ,
(7)
donde W(x) es una funcin de ventana que da mayor
influencia a los valores en el centro de la vecindad
que a los de la periferia. La solucin de esta ecuacin
viene dada por:
b W A V A W A
T T 2 2
=
r
(8)
en la cual se tiene, en el caso de n puntos en el
entorno las siguientes matrices
| |
| |
| |
T
n T T
T
n
T
n
x I x I b
x W x W diag W
x I x I A
) ( ),..., (
) ( ),..., (
) ( ),..., (
1
1
1
=
=
V V =
(9)
quedando
| | A W A A W A v u V
T T 2
1
2
) , ( =
r
(10)
Esta ecuacin se puede resolver cuando A W A
T 2
no
sea singular siendo
( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
=
x I x W x I x I x W
x I x I x W x I x W
A W A
y x y
y x x T
2 2 2
2 2 2
2
(11)
Este algoritmo aporta respecto al de Horn la
capacidad de discernir entre los puntos de velocidad
bidimensional y aquellos que slo ofrecen velocidad
normal al contorno. Para ello, se impone un umbral a
los valores de A W A
T 2
, que dependen de las
magnitudes de los gradientes espaciales y de sus
orientaciones, y son una buena indicacin de la
calidad de la medida de velocidad de cada punto.
La librera OpenCV proporciona la implementacin
del algoritmo de Lucas y Kanade el seguimiento por
flujo ptico en forma de pirmide. El seguimiento es
realizado slo sobre un conjunto determinado de
puntos del video, los cuales tienen la caracterstica de
ser singulares en la imagen.
Figura 3: Seguimiento del brazo en una secuencia
2.3 OBTENCIN DE LAS
CARACTERSTICAS
2.3.1 ngulos
Con el seguimiento del brazo solucionado, se
proceden a obtener las caractersticas de la imagen.
Puesto que el objetivo del proyecto es replicar los
movimientos en un brazo robot, hemos de encontrar
una relacin entre el brazo humano y el robot. Esta
relacin son los ngulos de las articulaciones. El
siguiente paso es realizar una relacin entre las
articulaciones del brazo con las del robot.
Figura 4: Sistema de coordenadas del brazo humano
En el proyecto nos centraremos en los planos Z e Y
de la articulacin del hombro, as como en los planos
Z e Y de la articulacin del codo.
Figura 5: Estructura del brazo en el espacio
Los ngulos que se pueden obtener a partir de un
espacio de dos dimensiones son los que se forman
con el plano Y de cada una de las articulaciones.
Estos ngulos resultan bastante intuitivos a la hora de
calcularlos.
Figura 6: ngulos sobre el plano Y de ambas
articulaciones
Sin embargo, a la hora de calcular los ngulos del
plano Z, no resulta tan intuitivo como con el plano Y.
Este problema es consecuencia de la incapacidad que
tiene la webcam de proporcionar informacin sobre
la profundidad. Es por tanto que deben desarrollarse
ciertos mecanismos para poder detectar esta situacin
y actuar en consecuencia.
Figura 7: ngulos sobre el plano Z de ambas
articulaciones
Para poder determinar el ngulo que forman las
estructuras del brazo en dos movimientos en tiempos
distintos, haremos uso de la proyeccin de la
estructura del segundo movimiento sobre el primero.
Figura 8: Proyeccin del segundo movimiento sobre
el primero
l
l
ar
'
= cos o
(12)
2.3.2 Profundidad
Una vez determinado el ngulo, surge un problema y
es el de saber el sentido del movimiento en el plano
Z. Esto se debe que el movimiento del brazo en el
plano Z hacia adelante y hacia atrs es muy similar,
llevando a confusin al algoritmo. Para poder
solucionarlo, se ha utilizado un enfoque similar al
que se aplica en el EyeToy de la PlayStation de Sony.
Bsicamente este planteamiento se centra en el
extremo del brazo humano, la mueca, y realiza una
segmentacin del color de la piel. De esta manera,
podemos obtener el nmero de pixeles de los que
consta la mueca. Si el movimiento del brazo se
realiza hacia adelante, el nmero de pixeles
aumentar ya que aumenta la superficie de mueca
respecto al punto de captura de la cmara. Si el
movimiento se realiza hacia atrs, el nmero de
pixeles se reduce, alejndose la mueca del lente de
la cmara.
Figura 9: Movimiento del brazo hacia atrs
Figura 10: Movimiento del brazo hacia adelante
No obstante, si hacemos caso solamente de este
mecanismo, no podremos saber que articulaciones se
estn moviendo sobre el plano Z, ya que solo
estamos atendiendo al extremo del brazo. Para
solucionarlo, hacemos uso del los puntos medios de
cada segmento. En caso de que uno de los segmentos
se mueva sobre el plano Z, el punto medio tiende a
acercarse a uno de los extremos del segmento debido
a las proyecciones pticas. Con estos datos podremos
determinar que articulaciones se estn moviendo.
3 CONTROLADOR
3.1 ROBOT MITSUBISHI PA-10
En el proyecto haremos uso del brazo robot
Mitsubishi PA-10. Este brazo posee 7 grados de
libertad asignados a 7 articulaciones rotacionales
repartidas de la siguiente manera: dos para el
hombro, dos para el codo y tres para la mueca.
Es posible controlar el PA-10 por velocidades o por
posiciones. En el primer caso, se usa un vector que
contiene la velocidad a la que cada una de las
articulaciones debe girar. En el segundo caso, el
vector contiene el Angulo que debe posicionarse cada
una de las articulaciones.
Figura 11: Mitsubishi PA10
La base del proyecto es la de replicar los
movimientos del brazo en el robot. Sin embrago, los
movimientos del brazo humano no suelen ser
constantes en velocidad, por lo que para una mayor
precisin en el movimiento es recomendable aplicar
el control por velocidades. ste permite modificar la
velocidad a la que giran los motores de cada una de
las articulaciones en un breve intervalo de tiempo,
razn por la cual los efectos de aceleracin y
desaceleracin son visibles.
3.2 CONTROLADOR
Entre la capa de visin artificial y el sistema de
control del robot se encuentra el controlador del
sistema, que se encargar de obtener la posicin del
brazo humano, compararla con la posicin actual del
robot y obtener la cantidad de movimiento que debe
enviarse al brazo robot.
Haremos uso de un controlador proporcional. Es un
tipo de controlador basado en la retroalimentacin
que determina la reaccin del sistema respecto del
error actual.
Figura 12: Sistema de control
La parte proporcional consiste en el producto entre el
error obtenido y una constante proporcional.
( ) t e K P
P
SAL
=
(13)
La nica limitacin que existe en este tipo de
controladores a la hora de asignar un valor a la
contante es que la respuesta que proporciona el
controlador no debe tener una sobre oscilacin
superior al 30%.
3.3 ASIGNACION DE ARTICULACIONES
El Mitsubishi PA-10 posee 7 articulaciones, nmero
suficiente para poder recrear la mayora de los
movimientos de un brazo humano.
Figura 13: Articulaciones del Mitsubishi PA10
El siguiente paso es la asignacin de los movimientos
del brazo humano a los del brazo robot. Para esto,
asignaremos a cada articulacin del brazo humano
con su homloga en el brazo robot. La relacin entre
articulacin se refleja de la siguiente manera:
- El movimiento del hombro en el eje Y se
replica en la articulacin S1 del robot.
- El movimiento del hombro en el eje Z se
replica en la articulacin S2 del robot.
- El movimiento del codo en el eje Y se
replica en la articulacin E1 del robot.
- El movimiento del codo en el eje Z se
replica en la articulacin S3 del robot.
A pesar de que el robot tiene ms articulaciones,
stas no se utilizarn en el desarrollo del proyecto
debido principalmente a la complicacin de la
captura del movimiento (p.e: los movimientos de la
mueca).
4 RESULTADOS
A la fecha en la que se ha realizado este artculo, el
sistema no ha podido ser testado en el robot. Sin
embargo, a lo largo del desarrollo del sistema, si se
ha podido testear el apartado de captura de
movimiento y posterior anlisis de las caractersticas.
Se ha podido apreciar que se obtienen caractersticas
con un grado elevado de similitud al movimiento
real.
Figura 14: Evolucin de la longitud de los segmentos
correspondientes al hombro
En cuanto a los movimientos en profundidad, se ha
conseguido un margen de error en el movimiento
entre un 30% y un 40% segn la secuencia de
imgenes que se utilice.
Figura 15: Evolucin de la longitud de los segmentos
correspondientes al codo
Figura 16: Evolucin de la cantidad de pixeles que
representan la mueca
En la figura 14 se puede apreciar como varan las
longitudes del hombro y sus dos segmentos a lo
largo de un movimiento del brazo totalmente
extendido hacia adelante y hacia atrs. La figura 16
muestra la evolucin de la cantidad de pixeles que
posee la mano a lo largo del mismo movimiento del
brazo. Se puede apreciar un aumento de la cantidad
conforme la mano se acerca al lente de la cmara, y
una disminucin conforme se aleja de la misma.
Haciendo uso de los datos proporcionados por las dos
graficas, podemos determinar el sentido del
movimiento, adems de que articulacin en particular
se est utilizando. La figura 15 proporciona los datos
de los segmentos del codo para el mismo
movimiento.
5 CONCLUSIONES
Este artculo explica un sistema de interaccin
usuario-robot basado en la deteccin de gestos a
travs de un sistema de captura de imgenes. Se
muestra el desarrollo de un sistema en tiempo real
que captura el movimiento del brazo y lo enva al
sistema de control del brazo robot. Esta solucin
permite la replicacin de movimiento son la
necesidad de ningn tipo de hardware de captura. Sin
embargo, a pesar de la facilidad y la sencillez del
hardware de captura, es necesario disponer de un
entorno bien iluminado y claro para poder disponer
de una captura fiable y estable del movimiento.
Las futuras ampliaciones que pueden realizarse sobre
este trabajo son:
- Control de dos brazos robot. El sistema
permite la replicacin de movimientos sobre
dos brazos robot.
- Integrar un controlador PID. Se puede
sustituir el controlador P por uno ms
preciso como es el control PID.
- Capturar el movimiento de las articulaciones
de la mueca.
- Capturar el movimiento de apertura de la
mano para poder controlar una garra que se
puede colocar en el extremo del brazo robot.
Referencias
[1] I. R. Khan, H. Miyamoto, T. Morie, M.
Shimazu, and Y. Kuriya A Prototype System
for Secure Human-Machine Interaction Based
on Face and Gesture Recognition. Kyushu
Institute of Technology, Kitakyushu, Japan
[2] Joachim Schmidt
AUTOMATIC INITIALIZATION FOR BODY
TRACKING. Bielefeld University.
[3] Navneet Dalal and Bill Triggs
Histograms of Oriented Gradients for Human
Detection
[4] Zhilan Hu, Maolin Chen, Rufeng Chu,
Hwasup Lim
HUMAN ARM ESTIMATION USING
CONVEX FEATURES IN DEPTH IMAGES
[5] David Moore. A real-world system for human
motion detection and tracking
[6] Matheen Siddiqui and Gerard Medioni.
Efficient Upper Body Pose Estimation from a
Single Image or a Sequence
[7] Samuele Salti, Oliver Schreer, Luigi Di Stefano.
Real-time 3D Arm Pose Estimation from
Monocular Video for Enhanced HCI.
[8] Matheen Siddiqui, and Gerard Medioni.
Robust Real-Time Upper Body Limb Detection
and Tracking
[9] Tom Forrer
Arm and body gesture recognition
[10] Benjamin Sapp, Alexander Toshev, and Ben
Taskar. Cascaded Models for Articulated Pose
Estimation
[11] Matheen Siddiqui
HUMAN POSE ESTIMATION FROM A
SINGLE VIEW POINT