Virtual Developer Workshop: Containerized Development with Docker
Click here for a larger image.
In this article, I try to give a sight view about CBIR because this kind of topic is the most frequently asked question in Digital Image Processing. Here I used the CxImage library from Davide Pizzolato. The latest version of CxImage library contains a function to transform an image into its frequency domain; that is, the FFT2() function. The technique I used here is not really efficient, but at least will be a guide for you to learn more advanced CBIR. If you want more efficient method try to follow this link:
There are four steps to performing image retrieval based on their similarity:
- Load Query Image (the image we want to search for or find images similar to this).
- Generate Signature of Key Image using Fourier Transform.
- For every image in the database, load and generate the signature.
- Calculate Euclidean Distance for Key Image Signature and Database Image Signature.
- Put the value in an auto-sorted listbox to make similarity investigation easier because the smallest value stays in the top of the list and steps down for similar images.
The image similarity depends on Euclidean Distance. The smaller the distance, the more similiar the image. In measuring similarity, there are few famous math formulas such as Dice similarity coefficients, Jackard, Otsuka, Simpson, Manhattan, Robinson, and more.
The libraries used are:
- CxImage (http://www.aoi.it)
- CTokenEx, written by Daniel Madden (email@example.com)
- CDirDialog (I forgot the creator)
That's all there is to it!
Ngadinegaran MJ 3/156