使用OpenCV进行对象检测和隔离

时间:2015-12-17 21:45:28

标签: c++ c opencv computer-vision object-detection

我开始使用OpenCV取得了相当大的成功,目的是检测不同的身体部位(手,手臂,脸,e.t.c)。

实现这一目标的第一个也是最明显的方法是使用Haar或LBP级联分类器,但我想知道其他选项是什么。

我见过使用HSV图像检测皮肤并检测颜色范围内像素的示例。但这无助于确定哪个位是哪个!我还实现了一个MOG2背景减法,它可以帮助隔离一个移动的物体,但这只有在所需的物体是唯一移动的物体时才有效。

使用凸包和缺陷我已经概述了手和手臂,但无法区分这两者。有没有一种标准的方法可以做到这一点,或者是使用级联分类器的唯一可靠方法?

1 个答案:

答案 0 :(得分:5)

你可以试试2006年开发的HoG descriptors。 他们非常适合面部和行人。它们对单个身体部位的效果并不好(仍然比haar功能更好)。 在深度学习出现之前,它们被认为是最先进的。 (我想2012年左右)

paper中描述的系统在呈现时赢得了多次竞争。

Hog在OpenCV中实现,但DLib实现更好。

另请参阅this,了解有关计算机视觉的大量有用信息。