是否有任何计算机视觉技术可以检测任何类型的物体?例如,有一台固定的摄像机,朝一个方向看,总是在看相似的背景。如果有对象,无论对象是什么(人、包、汽车、自行车、杯子、猫),CV 算法都会注意到帧中是否有对象。它不知道它是什么类型的对象,只是框架中有一个对象。
类似于运动检测器的东西,但可以在平坦的传送带上工作。即使传送带在帧之间的移动看起来相似。这样的事情可能吗?可能与从背景中提取差异有关,目标是不必使用可能经过相机的每个可能对象的数据来训练网络。
是否有任何计算机视觉技术可以检测任何类型的物体?例如,有一台固定的摄像机,朝一个方向看,总是在看相似的背景。如果有对象,无论对象是什么(人、包、汽车、自行车、杯子、猫),CV 算法都会注意到帧中是否有对象。它不知道它是什么类型的对象,只是框架中有一个对象。
类似于运动检测器的东西,但可以在平坦的传送带上工作。即使传送带在帧之间的移动看起来相似。这样的事情可能吗?可能与从背景中提取差异有关,目标是不必使用可能经过相机的每个可能对象的数据来训练网络。
TL;博士
这个有可能。您需要一个正确标记的数据集。您的数据集有两个标签:
或者干脆
这种标记避免了仅在帧中有对象时才需要知道帧中有什么对象。
具有相似目标的示例
这是一篇试图在框架中对动物进行分类的论文(链接)。他们管道的第一部分需要知道框架中是否有动物。摘抄:
任务 I:检测包含动物的图像。对于这个任务,我们的模型将图像作为输入并输出描述图像是否有动物的两个概率(即二元分类)
这是另一篇关于在图像中检测动物的论文(链接)。摘抄:
野生动物检测,它实际上是一个二元分类器,能够将输入图像分为两类:“动物”或“非动物”
这些论文中使用的方法可以适应传送带用例。
这是一个使用背景提取检测移动对象的系统(链接)。他们用来检查图像是否为背景图像的方法可以适应您的用例。
实施思路
在传送带用例中,一个非常简单的模型可能会起作用。因此,建议您先尝试一个简单的模型。例如,您可以将输入展平为向量并将其馈送到浅层前馈网络。一个简单的逻辑回归分类器甚至可以处理这个用例的扁平化输入。
如果使用简单模型未达到您想要的性能,您可以使用学习曲线等方法分析它们的性能,以决定如何继续。
如果您发现您的模型具有高偏差:
您可以使用更大/更深的模型(如自定义调整的CNN),也可以使用预训练网络(如VGG16)并使用迁移学习来实现您的目标。
这是一篇描述使用 CNN 对猫与狗进行分类的帖子(链接)。只需用您的对象/无对象数据集替换猫/狗数据集。这篇文章甚至描述了使用 VGG16 进行迁移学习。
如果您发现您的模型具有高方差
更多数据可以提供帮助。此外,在传送带示例中,手动标记数据将变得简单快捷。因此,获得更多示例不会花费太多时间。
我希望这有帮助。