6

使用 CvRect 我能够检测面部坐标

detectFace(IplImage * pImg, CvHaarClassifierCascade * pCascade, CvMemStorage * pStorage)

但我的问题是当人微笑时如何找出 whitePixelValue ?

什么微笑补偿是合适的?150值准确吗?

微笑 haarcascade 根本不起作用。只需要对白色像素进行逻辑处理

请帮忙!!!

更新:我认为我的赏金将被浪费..在这个线程上没有得到专家的回应。我正在寻找算法:(

4

2 回答 2

7

据我了解,您想根据牙齿和皮肤之间的色差来检测微笑,对吗?这可能是有道理的,因为嘴唇像素强度与牙齿像素有很大不同。如果是这样,我会建议两种方法。

第一个是计算人脸区域的拉普拉斯变换。具有拉普拉斯最大值的坐标将对应于相邻像素强度之间的最大差异。我认为微笑包含最多对比度的像素。您应该再次选择阈值,但在这种情况下,它与图像的光照条件无关。

第二个想法与第一个想法类似,不同之处在于您需要将像素与所有面部像素的平均值进行比较。在这里,其值相对于平均值过高的像素被认为是牙齿像素。顺便说一句,类似的东西cvAdaptiveThreshold可能会有所帮助。

于 2011-05-05T17:38:33.747 回答
0

嘿,你检查过这个项目吗https://github.com/beetlebugorg/PictureMe
这真的是一个很棒的项目,看看它。我想你会找到你需要的。

于 2011-05-13T05:41:05.440 回答