how to find finger detection using skin color detection method?

hi... i am doing gesture recognition in matlab.. i need help regarding finger detection in matlab ...i have detected the hand using skin color detection but don't know how to find the number of fingers....i have used bwboundary for boundaries detection in the image but it only works when the image is error free..i mean a slight disturbance in marking the hand area in the skin detection code will result in many boundaries... would be very thankful if anybody just guides me in the right direction....

12 Comments

Have you considered applying a 2D low-pass filter to smooth out the edges?
yes i did, but it didn't help me much. the final image still has more boundaries then i want.
here after skin is detected and marked i used bwboundary to find out the boundaries. I have also used imfill but it still didn't help me much..
It looks pretty good to me. What problem are you having? You should be able to use imfill() and bwareaopen() to get rid of the little noise regions. So what other help do you need? Recall I gave you a place where you can find lots of citations on papers that do image analysis on hands.
sir, it is displaying OBJECTS FOUND 75(as show in the image top left corner). What can i do to make it display 5(as 5 fingers are shown) so it can be specified as a certain gesture.
Getting down to 5 would be a bit tricky. There might be 5 fingers, but they are joined by the palm, which is big and solid.
When you are doing gesture recognition you will not, in general, have 5 easily distinguishable fingers.
oh... so what do you recommend ? what method should i use after skin recognition to find out the number of fingers or find the gesture?
Like I said, use imfill to fill in the black holes in the white surround. Then use bwareaopen to get rid of the little white islands in the black hand.
binaryImage = imfill(binaryImage, 'holes');
binaryImage = bwareaopen(binaryImage, 50000);
That should give you a nice black silhouette on a white background with no clutter from small black or white blobs.
i to had the same problem in finger count detection and the length of it from the center of the palm.....can you help me....
Possibly, if it's a short question, not something like reviewing papers, picking one, and implementing it for you. But I can help with short specific questions about your code, like syntax errors or very short algorithms of a few lines. Did you see my answer below?

Sign in to comment.

 Accepted Answer

Have you considered using imfill() ?
I would follow that by using morphological opening

1 Comment

thanks, i am working on it right now, will post here about the result.

Sign in to comment.

More Answers (1)

2 Comments

thank you sir , I have read a number of papers on this subject and i am following one actually, but i am stuck here. Will be very glad if you could help me..
I'm going to follow the FAQ on this, but,. again, you haven't said precisely what your difficulties are so I don't know what to say or how to help.

Sign in to comment.

Categories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!