Click here to Skip to main content
15,867,568 members
Articles / Desktop Programming / MFC
Article

Finding Similiar Images

Rate me:
Please Sign up or sign in to vote.
3.46/5 (33 votes)
24 Sep 20022 min read 725.4K   9.2K   131   92
This article gives an overview of Content-Based Image Retrieval

Image 1

Introduction

Content-Based Image Retrieval (CBIR) should be the right title for this article. CBIR is a way to index or find a similarity between images in a multimedia database. There are methods such as Fourier Transform, Hough Transform, Wavelet Transform, Gabor Transform, Hadamard transform coefficients to be used as engine in CBIR system. Retrieval by image content has received great attention in the last decades. Several techniques have been proposed to the problem of finding or indexing images based on their contents. Each method used has strong and weak points.

In this article I try to give an overview view about CBIR because this kind of topics is the most frequently asked question in Digital Image Processing. Here I used CxImage library from Davide Pizzolato (http://www.aoi.it). The latest version of CxImage library contain a function to transform an image into it's frequency domain that is FFT2 function. The technique I used here is not really efficient but at least this article will guide you to more advanced CBIR.

If you want more efficient method try to follow this links http://debut.cis.nctu.edu.tw/pages/slides/jeffrey/present2.pdf and http://www.telecom.tuc.gr/paperdb/icassp99/PDF/AUTHOR/IC991221.PDF

Finding Similiar Images

There are 4 steps to perform image retrieval based on the similarity:

  1. Load Query Image (Image we want to search for or find images similar to this) 
  2. Generate Signature of Key Image using Fourier Transform 
  3. For every images in the database Load and generate the signature 
  4. Calculate Euclidean Distance for Key Image Signature and Database Image Signature 
  5. Put the value in a auto-sorted listbox to make similarity investigation easier because smallest value stay in the top of the list and step down for similar images.

The image similarity depend on Euclidean Distance. The smaller the distance the image will get more similar. In measuring similarity, there are few famous math formulas such as Dice similarity coefficients, Jackard, Otsuka, Simpson, Manhattan, Robinson, and more.

The libraries used:

  1. CxImage (http://www.aoi.it)
  2. CTokenEx Written by Daniel Madden (daniel.madden@compaq.com)
  3. CDirDialog (I forgot the creator)

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Indonesia Indonesia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
Generali have serious problem Pin
TassadaqHussain9-Aug-05 11:28
TassadaqHussain9-Aug-05 11:28 
GeneralRe: i have serious problem Pin
uumeme22-Aug-05 18:38
uumeme22-Aug-05 18:38 
GeneralRe: i have serious problem Pin
uumeme12-Sep-05 1:16
uumeme12-Sep-05 1:16 
Generalhelp me to execute this project Pin
spike2028-Jul-05 3:53
spike2028-Jul-05 3:53 
GeneralRe: help me to execute this project Pin
Myoung-Gyu Kim6-Jun-06 16:27
Myoung-Gyu Kim6-Jun-06 16:27 
GeneralTell me where is demo lib Pin
TassadaqHussain21-Jul-05 20:46
TassadaqHussain21-Jul-05 20:46 
GeneralMissing the file j2000.lib Pin
toknow2-Jun-05 2:01
toknow2-Jun-05 2:01 
GeneralRe: Missing the file j2000.lib Pin
Myoung-Gyu Kim6-Jun-06 16:23
Myoung-Gyu Kim6-Jun-06 16:23 
use j2k.lib in cxImage
Generalerror:cximage.lib Pin
Anonymous24-May-05 18:59
Anonymous24-May-05 18:59 
Generalwhere is the "ximage.h" Pin
zhang030112719-May-05 15:49
zhang030112719-May-05 15:49 
GeneralRe: where is the "ximage.h" Pin
WREY20-May-05 5:16
WREY20-May-05 5:16 
GeneralRe: where is the "ximage.h" Pin
djechelon10-Jan-08 4:27
djechelon10-Jan-08 4:27 
GeneralCrash when iPixelSize=3; Pin
seiby31-Mar-05 9:18
seiby31-Mar-05 9:18 
GeneralRe: Crash when iPixelSize=3; Pin
seiby31-Mar-05 10:54
seiby31-Mar-05 10:54 
QuestionDoes any have complete working project? Pin
yateee21-Mar-05 20:41
yateee21-Mar-05 20:41 
Questionwhere is ximage.h ? Pin
1lokii14-Dec-04 0:45
1lokii14-Dec-04 0:45 
GeneralTHere is a question Pin
wazdxm17-Sep-04 15:46
wazdxm17-Sep-04 15:46 
GeneralCannot open include file: 'ximage.h' Pin
h.tarik7-Apr-04 8:19
h.tarik7-Apr-04 8:19 
GeneralRe: Cannot open include file: 'ximage.h' Pin
Anonymous14-Jun-04 4:52
Anonymous14-Jun-04 4:52 
GeneralRe: Cannot open include file: 'ximage.h' Pin
Hboyme9-Apr-05 23:31
Hboyme9-Apr-05 23:31 
Generalwhere is jbig.lib Pin
anirudh_iit0021-Oct-03 5:59
anirudh_iit0021-Oct-03 5:59 
Generalhere is the solution Pin
anirudh_iit0026-Oct-03 22:01
anirudh_iit0026-Oct-03 22:01 
GeneralRe: here is the solution Pin
lamcyu28-Mar-04 23:48
lamcyu28-Mar-04 23:48 
GeneralRe: here is the solution Pin
cfan_haifeng29-Jul-06 22:44
cfan_haifeng29-Jul-06 22:44 
Questionwhere is jbig.lib?? Pin
cyclopsx6-Oct-03 22:05
cyclopsx6-Oct-03 22:05 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.