Images Matching

4 June 2022

what is images matching?

Let me explain “Matching” to you, for instance:

We have two images of the same scene whose differences are only in a slight linear motion of the camera; if we attempt to inform the depth of specific parts and some points, we must identify the coordinates of those points in two pictures (i.e. the match points). The methods that extract those same points (the coordinates) are called “points matching algorithms”.

Let me say one more example: suppose we are going to check the existence of a certain object in a picture (detection), or identify it (recognition), for example, the camera in the above image.

Therefore in the first step, we must obtain some basic data from the object (here the camera) and use it to find the camera in the main picture. We must extract some good features from two images (object=camera and main=inference) and then compare them to object localization.

Various methods are introduced to feature extraction of images; here we note some of them.

Image matching has so many applications in image processing and machine vision for various purposes such as registration. If the changes between two images (object and inference) are very low, we can use more simple methods such as Template matching to object localization.


SIFT method

SIFT is the abbreviation of Scale Invariant Feature Transform this method uses some interesting algorithms to extract important features from an input image. SIFT can ignore scale i.e. can find correct matches between a small and bigger image.

Another, good characteristic of SIFT is the ability to overcome rotation of image, and this makes this method most popular and famous.

In general, any comparative method that is more robust to the following factors becomes more applicable: scale, rotation, angle of view of the camera, lighting conditions, and different distortions such as radial and perspective distortions and other noises.

In this video, some beautiful aerial images taken from beautiful scenes are inputs. From these images by the well-known SIFT method, some match points are found. Then by color lines, these corresponding points (matches) are attached together.

The final fact is that some found matches are false, which is natural in automatic matching.


Remove wrong matches (outliers)

When there are so many wrong matches, you need to identify and remove these match lines, for when there are so many of them, you have to identify them automatically. Also when there are so few of them, you do not think about removing them manually (i.e. one by one with eyes and hands), there is a strong rule in artificial intelligence doing any task manually is forbidden.

One of these automatic methods is named RANSAC is the abbreviation of RANdom SAmple Consensus. In the machine learning field; RANSAC is a repetitive method to estimate the parameters of a mathematical model based on available observations. In image processing based on RANSAC methods, multiple models are constructed by selecting some matches randomly. Notice that we know some of the matches are outliers. Then the best model and matches are chosen by voting on the models and error calculation

On the other method, by epipolar restrictions wrong matches are identified and eliminated; the application of this method is in depth estimation and stereo vision.

Link of scientific references (base papers)

Download base article of SIFT method

Download base article of RANSAC method