12

我想提取照片中人的轮廓并去除背景。照片可以拍全身,也可以只拍上半身,也可以只拍下半身。

到目前为止,我所做的是使用 Haar Cascades 跟踪面部,但我使用的算法在面部上做了一个矩形,我需要整个身体的形状。我也尝试过 HOG,但它也给了我一个矩形,并且不适用于所有照片。

如果有人可以帮助我,那就太好了。我正在使用 OpenCV 和 C++。

4

1 回答 1

7

您可以尝试 GrabCut 或 GraphCut 算法(至少在 OpenCV 中存在 Grabcut)。

你告诉他们矩形(身体在哪里),他们会尽力切割里面的物体。它不快,也不完美,但你很难找到更好的东西。

这是一个开放的研究领域,所以如果你的图像没有按照你的意愿被切割,请准备好几年的博士后研究,以找到更好的算法:)

于 2011-12-13T13:19:05.220 回答