OpenCV:对象检测

OpenCV: Object detection

我的问题是关于任务的可行性

请注意,我已经阅读了此 question 的解决方案,但是您可以猜到我在这里处理的不是矩形和相机。

情况:

我需要在一个文件夹中保存大量图片,所有图片都遵守以下规则:

目标:

我想检测每个图像的对象是否CENTERED

开发环境:

你觉得可行吗?

希望我的问题不要太笼统。我只是问这是否可以在没有人为干预图片的情况下自动完成。我有成千上万个。程序会将对象未居中的图片保存在单独的文件夹中。

编辑:

根据上面的评论和回答:对我来说,一个居中的对象是如果我围绕它画一个正方形或矩形,square/rectangle 的边缘必须与 let 和右侧的距离相等图像,而对象的顶部和底部必须与图片的顶部和底部距离相等。

是的,这是非常可行的。然而,根据图像包含的对象类型,它们有不同的方法来实现这一点。假设图像中的物体都具有统一的颜色,您可以轻松地执行颜色检测算法,以像素为单位找到物体的中心点,并使用图像分辨率作为参考找到它的位置。

由于指定的背景始终为白色,这可能是您最好的方法,因为您可以只提取图像中的所有非白色(或不同的白色阴影)对象。

如果您决定采用这种方法,我应该可以为您指出一些相关代码

虽然是用 C++ 编写的,但可以在下面的 link 中找到更多相关信息。

http://opencv-srf.blogspot.co.uk/2010/09/object-detection-using-color-seperation.html

link 基于视频中的对象检测,但由于视频只是一系列图像,因此可以在图像上使用相同的概念