有没有办法用cv2分离和克隆图像区域?

时间:2020-07-26 11:23:54

标签: python opencv computer-vision real-time cv2

我知道标题不是很清楚,但它有点复杂,我没有丝毫线索可以用来解释它。如果您能想到一个更好的标题,请告诉我,请稍加修改。

我的问题是:我的一位紧密编码人员朋友挑战我重新创建this图像到图像的转换示例。不过有一些收获。

  1. 我不能使用任何预训练的神经网络
  2. 我必须使其实时运行(使用网络摄像头)

到目前为止,我已经做好了换脸的准备,但是我需要使其重新回到非网络摄像头图像上,但是存在问题。为此,我必须围绕该图像重新构建和扭曲整个图像,包括填充原始源图像中未包含的面部后面的背景。我尝试使用绘画,但在某些情况下,它会占用头发和脖子的一部分,然后将其合并到背景中,只会造成皮肤和头发颜色的混乱。我也尝试过在cv2贴图功能上扩展蒙版,但是这样会导致背景色方块很大,看起来也很糟糕。我认为最好的解决方案是使用某种分割算法将头部周围最大的区域分割开,然后克隆该区域的一部分以保留背景纹理,而不是创建新的不良纹理并将该克隆的区域放置在蒙版内。所有这些都必须实时完成。

最后,我需要复制img1中的那个人,然后删除(部分内容卡住了)。然后从img2取得面部标志,并将这些标志映射到img1的克隆的脸部,然后将重新映射的img1添加回img1背景。我知道我无法像八年级学生那样清楚地传达这些想法,因此,如果需要澄清,请询问。

0 个答案:

没有答案
相关问题