Matlab - Reconocimiento de mano

 
Vista:

Reconocimiento de mano

Publicado por Pavel (2 intervenciones) el 17/06/2010 00:15:30
Hola a todos, voy a empezar con que no conozco muy bien el matlab y si necesito un poco de ayuda, tengo que hacer un programa en matlab que encuadra una mano en un cadrado y me dice cuandos dedos estoy ensenando, la ideea es muy basica paro implementarlo en mi caso es mas dificil, teoricamente tengo hecho lo de cuadrar la mano utilizando el color de la piel, aunque no me funciona, lo de cuantos dedos tengo pensaba hacerlo segun la area del cuadrado, pero como no funciona lo de encuadrar y no se con que funcion se pide la area del cuadrado no puedo sequir adelante, tambien todo tiene que hacerse con una webcam en tiempo real, anado el codigo que tengo hecho y repito otra vez que el matlab es todavia un misterio para mi y que cada ayuda, consejo y incluso critica esta bienvenida, gracias otra vez!

El codigo hsta ahora:

vid = videoinput('winvideo', 2, 'YUY2_640x480'); //por alguna razon mi webcam no funciona en RGB

preview(vid);
Rmin = 190;Rmax = 260;Gmin = 180;Gmax = 260;Bmax = 210;Bmin = 130;
set(vid,'TriggerRepeat',Inf);
start(vid);
while true
imagen = getdata(vid, 1);
imagenR = imagen (:,:,1);
imagenG = imagen (:,:,2);
imagenB = imagen (:,:,3);
maskR = imagenR > Rmin & imagenR < Rmax;
maskG = imagenG > Gmin & imagenG < Gmax;
maskB = imagenB > Bmin & imagenB < Bmax;
mask = maskR & maskG & maskB;
L = bwlabel(mask);
props_mask = regionprops(L,'Area','BoundingBox');
[maxarea, indmax] = max([props_mask.Area]);
coords_maxrect = props_mask(indmax).BoundingBox;
h = rectangle('Position', coords_maxrect);
set(h, 'EdgeColor', 'r');
end
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Reconocimiento de mano

Publicado por daniel (1 intervención) el 26/07/2010 18:37:58
pavel, su cámara está funcionando en YCbCr, lo que le proporciona mayor facilidad para el reconocimiento de texturas, en esta caso la piel. Si quiere ver su imagen en rgb utilice el código ycbcr2rgb(imagen), pero en este formato existen varias implementaciones de umbrales en brillo y saturación, tanto estáticas como dinámicas, que ayudan a un buen acierto en el reconocimiento de la piel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Reconocimiento de mano

Publicado por Pavel (2 intervenciones) el 26/07/2010 19:35:30
gracias por su respuesta, no sabia que el YCbCr es mejor para reconomiciento de texturas, pero le informo que ya he agabado mi practica utilizando el RGB, otra vez gracias por su respuesta!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar