我想检测图像中丢失的对象。这是情况
- 你有一个房间的图像。房间里有一个球。
- 您有同一个房间的另一张图像(光照条件类似)。唯一的区别是,球不见了。
- 现在我需要 opencv 来比较这两个图像并找出缺失的部分。
我知道这样做的第一步,那就是计算两个图像的直方图并比较它们。如果第二张图像中缺少某些内容,则直方图值会有所不同。
现在,如何检测“球”丢失了?使用模板匹配?
我想检测图像中丢失的对象。这是情况
我知道这样做的第一步,那就是计算两个图像的直方图并比较它们。如果第二张图像中缺少某些内容,则直方图值会有所不同。
现在,如何检测“球”丢失了?使用模板匹配?
As stated in comments, you can easily subtract those 2 images. IIRC Mat has overloaded - [minus] operator. So sub = img1 - img2;
should be enough as long as imgs are cv::Mat
objects.
About the blobs take a look at following tutorials at OpenCV website:
http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.html
http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/hull/hull.html