【发布时间】:2014-09-02 06:38:15
【问题描述】:
我正在寻找一些指导...我有一张护照照片的图片。我想做的是将人和背景分开。然后我会分析背景颜色、图案等。
我对分割进行了一些研究,我发现的大部分内容都使用多个帧。可惜我只有一张相框,没空拍一张没有人的背景照。
我也看过 GrabCut,但我不希望用户必须手动选择图像的背景/前景部分。有没有这样的自动化版本?
我在考虑使用轮廓/边缘(canny?)检测?...
提前谢谢你!
编辑:可在此处找到示例图像集:http://imgur.com/a/PKTDc#0
所以我听从了 Froyo 的建议,到目前为止得到了以下结果:http://imgur.com/Mvwwu9f.png
由于人脸检测矩形,一些边缘被切断,所以当检测到人脸时,我需要增加矩形的大小。
【问题讨论】:
-
您对图片有什么要求...您要寻找没有背景的整个人或只是脸/手/鼻子等.. ??
-
我看到的主要有两种可能性: 1. 让计算机了解一个人是什么。检测此人并将其他所有内容视为背景。我猜这个任务还没有完全解决。 2. 假设前景/背景是什么。图像的主要轮廓(居中和/或最大轮廓)为前景,其余为背景。这个任务可能非常错误。也许您可以结合一些学习机制使用版本 2 的想法? ;)
-
能否提供一组示例图片?
-
你在处理什么样的背景。通常 pp 大小的图片为白色或单色,没有任何噪点。如果是这样的话,那就容易多了:)
-
@Rahulgalgali - 感谢您的回复。我正在寻找整个人。我已经在进行特征提取,现在只是想从图像中分离出整个人的身体/头部。
标签: c++ opencv edge-detection background-subtraction