How to identify changes in two images of same object

最后都变了- 提交于 2019-12-10 18:26:06

问题


I have two images which I know represent the exact same object. In the picture below, they are referred as Reference and Match.

The image Match can undergo the following transformations compared to Reference:

  1. The object may have changed its appearance locally by addition(e.g. dirt or lettering added to the side) or omission (side mirror has been taken out).

  2. Stretched or reduced in size horizontally only (it is not resized in vertical direction)

  3. Portions of Reference image are not present in Match (shaded in red in Reference Image).

Question: How can the regions which have "changed" in the ways mentioned above be identified ?

Idea#1: Dynamic Time Warping seems like a good candidate once the beginning and end of Match image (numbered 1 and 3 in the image) are aligned with corresponding columns in Reference Image, but I am not sure how to proceed.

Idea#2: Match SIFT features across images. The tessellation produced by feature point locations breaks up the image into non-uniform tiles. Use feature correspondences across images to determine which tiles to match across images. Use a similarity measure to figure out any changes.


回答1:


You might want to consider an iterative registration algorithm. Basically you want to perform optimization to find the parameters of the transform, in your case horizontal scaling and horizontal translation. Once you optimize the parameters you will have the transformation between the two images, transform one to match the other, and can then use a subtraction to identify the regions with differences.

For registration take a look at the ITK library. You can probably do a gradient decent optimization using mutual information as the metric. It has a number of different transforms that will capture translation and scaling. The code should run quickly on the sample images you show.



来源:https://stackoverflow.com/questions/16343258/how-to-identify-changes-in-two-images-of-same-object

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!