DIMAthe47 / cbir_framework

0 stars 2 forks source link

Geometric validation #2

Open heinrichI opened 3 years ago

heinrichI commented 3 years ago

Can you tell me how the geometric keypoint validation is done in the program?

DIMAthe47 commented 3 years ago

What do you mean by geometric keypoint validation?

heinrichI commented 3 years ago

I mean checking the relative position of key points in the case of searching for non-strict duplicates. It often happens that many points converge, but they coincide with completely different parts of the compared image. For example, this can be checked through GEOMETRC CONSTRANTS or RANSAQ. I have not seen anything similar in your code. image image

DIMAthe47 commented 3 years ago

Here I do not implement any geometric validation and do not consider it at all. Main concepts of CBIR here: Image is mapped to descriptor(vector, array). Search image = find similar images. Image is similar to another image if vectors of these images are close by some metric.

So: precompute stage: every image in data store is mapped to some descriptor. query stage (user asks to search similar images for imageX): compute descriptor(vector) of this imageX, search closest vectors in data store.

Basic search: compare given image descriptor with each vector in data store. Advanced search: add some indexing to make it faster.