我正在创建一个程序,用opencv检测头部,而不仅仅是脸部。必须有办法做到这一点。除了头部之外,我需要确定头部的最高像素(头发的顶部)和下巴的低中心点...我没有找到任何OS X OpenCV示例..下面是我想实现什么... https://pasteboard.co/GF19Fao.jpgOpenCV和OsX HEAD检测
看起来够简单吧?
我正在创建一个程序,用opencv检测头部,而不仅仅是脸部。必须有办法做到这一点。除了头部之外,我需要确定头部的最高像素(头发的顶部)和下巴的低中心点...我没有找到任何OS X OpenCV示例..下面是我想实现什么... https://pasteboard.co/GF19Fao.jpgOpenCV和OsX HEAD检测
看起来够简单吧?
我建议您考虑一下haarcascades。
方法1:
的轮廓和正面人脸的有一个很好的起点。
就我个人而言,我还没有测试过它们,所以我很难告诉你结果是什么样子。
如果最终边框单独适合完美在整个头部,那么你可以做如下假设为出发点
if box = (topLeft, topRight, bottomLeft, bottomRight)
then hairTop = distance(topLeft, topRight)/2
and chin = distance(bottomLeft, bottomRight)/2
如果没有,你可以做两件事情:
1.进行一些测量重新调整,以查看移动所得矩形以找到下巴和顶部头发有多远。
2.您也可以使用其他分类器的组合。
合并正面/侧面人脸的结果与口分类找到下巴
合并正面/侧面人脸与upperbody分类找到顶部的头发。
方法2
您也可以使用正面/侧面人脸分类找到顶部头发,只是使用口找到下巴。
这两种方法都要求您运行多个测试以找到满足您的任务的最佳值/估计值。
顺便说一下..我用的每张照片都会在同一个地方的脸上 –
你有没有试过我的建议? – eshirima
是的。我设法让嘴巴下来。我发现了一个“头肩膀”级联,但它有时显示比头发更多的头发..我需要完全匹配头发的顶部。你能解释一下我的“头发顶”算法吗? –