简体   繁体   中英

OpenCV background substraction + skin thresh to detect hand c++

I've been working on a project to detect the hand palm using only computer webcam and no equipments(no colored gloves to ease the detection). So far I've combined Skin detection and Background substraction, By using bitwised & between both Mats.

Skin + Back Thresh

I've combined both to overcome skin colored objects such as my guitar, my door and my closet. But as you can see, there is still much noise and the hand is interrupted. I've tried to blur that, which only made it worse. also, change of lighting really damaged the proccess, tried to cancel auto exposure which did not help much. I dont want this to be perfect, cause it is just part of my bigger project, but does any of you know how can I better the algorithm?

You can remove some noise by a morphological transformation (like opening and closing). These techniques are often used after a background substraction

  1. A closing to reduce noise
  2. An opening right after to minimize loss of information over the things we want to detect

see this link for code example.

After that you have to "discover" the hand in your image, but I think this is not the query here but this link could help you.

Hope that help.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM