从图像裁剪背景

数据挖掘 深度学习 图像分类 图像识别
2021-09-24 19:14:11

我尝试编写一个程序来从图像中裁剪背景。

这是我的训练数据的一个样本。我有有和没有背景的图像。(手动裁剪)

背景总是相似的(光线的变化等等。有时人们在随机的地方。)

对象总是在同一个地方,但并不总是相同(有不同的模型)。

有人可以给我一个建议,我该如何解决这个问题?做这样的事情的正确方法是什么???

学习数据

图片

3个回答

如果尝试使用语义分割来解决,这确实是一个简单的问题语义分割本身就是一个计算机视觉问题,可以理解为物体检测的延伸,可以理解为:

检测和分割

使用称为UNET的网络完成语义分割,可以针对所需图像训练模型,然后可以扩展它以找到所需对象的边界并最终提取它。可以使用下图来理解UNET架构:

网络

UNET 通常用于创建可以与实际图像进行异或的蒙版,并且可以轻松减去图像的背景。

使用 UNET 或任何其他技术完全解释图像分割超出了答案的限制,因此可以在本文中找到更好的解释

如果您想要相同的实际实现/代码,可以在以下竞赛的 kaggle 内核上找到它们:

  1. TGS 盐鉴定挑战
  2. Carvana 图像掩蔽挑战

您尝试执行的任务称为语义分割(或逐像素分割)。有关于该主题的大量文献和大量教程/在线资源可以帮助您入门,例如这个

全卷积网络 (FCN) 普及了最先进的语义分割技术的核心组件。从那以后,它们已经发展成为许多高级但相关的网络,其中许多都包含在上面的链接中。

虽然链接的网站相当全面,但并没有提到mask rcnn,它的表现非常好并且速度相对较快(~5 fps)。绝对值得探索!

您可以使用完全卷积神经网络进行图像分割。查看 kaggle 比赛中的内核:Carvana Image Masking Challenge

另请查看全卷积神经网络