检测肖像图像中的头发?

时间:2011-01-27 23:03:00

标签: image-processing opencv image-manipulation

在简单的肖像图像中检测和移除人的头发的最佳方法是什么?任何有用的算法库?我一直在关注openCV,看起来它可能有些用处

3 个答案:

答案 0 :(得分:11)

你在这里处理两个不同的问题:

  1. 检测肖像中的脸部是否有头发
  2. “去除”头发
  3. 第一个很容易解决:

    • 将脸部与背景分开(正如您所提到的“简单的肖像图像”,这不应该太难)。
    • 将图片转换为Y'CbCr色彩空间
    • 无论种族如何,人体皮肤的色度值范围都相当窄。查看this paper了解详情。
    • 上述方法将帮助您将脸部皮肤区域与非皮肤区域分开
    • 假设非皮肤区域由头发组成。请注意,面部毛发也会被作为非皮肤区域拾起。

    就第二个问题而言,你需要通过“删除”明确说明你的意思:

    • 你只是剪掉了有头发的肖像部分吗?在这种情况下,解决方案直接来自上述检测方法。
    • 你是不是想让它看起来像个人根本没有头发(例如秃头,刮胡子?)在这种情况下,事情会变得更加困难 - 这就是为什么专业照片操纵器得到很好的报酬的原因

答案 1 :(得分:10)

我认为这是一个难题 - 在这种情况下考虑检测和去除头发: enter image description here

我发现了几篇论文,也许他们会帮助你:

干杯!

答案 2 :(得分:-1)

试试这个http://betaface.com/demo.html。颜色,头发信息等。微笑,年龄,眼睛等..