我希望检测图像中缺失的物体。以下是情况:
- 你有一张房间的图片,里面有一个球。
- 你有另一张相同房间的图片(光照条件相似),唯一的区别是没有球了。
- 现在需要使用opencv比较这两个图像并找到缺失的内容。
我知道这样做的第一步是计算两个图像的直方图并进行比较。如果第二张图像中有什么东西缺失了,那么直方图值就会不同。
那么,如何检测“球”是否缺失?使用模板匹配吗?
我希望检测图像中缺失的物体。以下是情况:
我知道这样做的第一步是计算两个图像的直方图并进行比较。如果第二张图像中有什么东西缺失了,那么直方图值就会不同。
那么,如何检测“球”是否缺失?使用模板匹配吗?
如评论所述,您可以轻松地将这两个图像相减。如果我没记错,Mat已经重载了减号操作符。因此,只要img是cv :: Mat对象,sub = img1-img2;
就足够了。
关于斑点,请查看OpenCV网站上的以下教程:
http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.html
http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/hull/hull.html