3

我想检测图像中丢失的对象。这是情况

  1. 你有一个房间的图像。房间里有一个球。
  2. 您有同一个房间的另一张图像(光照条件类似)。唯一的区别是,球不见了。
  3. 现在我需要 opencv 来比较这两个图像并找出缺失的部分。

我知道这样做的第一步,那就是计算两个图像的直方图并比较它们。如果第二张图像中缺少某些内容,则直方图值会有所不同。

现在,如何检测“球”丢失了?使用模板匹配?

4

1 回答 1

3

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

http://docs.opencv.org/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.html

于 2013-06-09T18:28:16.113 回答