Click here to Skip to main content
Licence 
First Posted 24 Sep 2002
Views 225,327
Bookmarked 117 times

Finding Similiar Images

This article gives an overview of Content-Based Image Retrieval

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

About the Author

Danang Suharno Ngadinegaran

Web Developer

Indonesia Indonesia

Member



Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
QuestionPlease remember PinmembereRRaTuM0:29 22 Nov '11  
GeneralMy vote of 1 PinmembereRRaTuM0:26 22 Nov '11  
Generalcbir using color histogram MATLAB code Pinmemberwanlovewan12:10 18 Oct '10  
Questioncannot upload images Pinmembervarshanth20:29 28 Jan '10  
Generalto display images in matlab guide frame or listbox Pinmemberanjan kumar sahoo17:35 1 Dec '09  
Generalupdate from cimage.lib Pinmemberxpjandy17:01 29 Oct '09  
QuestionHow to use this in RGB color space? Pinmemberczwarty8:02 20 Oct '09  
GeneralI have the same problem is “unresolved external symbol "public: bool __thiscall CxImage::Load(unsigned short const *,unsigned long)" (?Load@CxImage@@QAE_NPBGK@Z)” Pinmemberliuyang_bnu21:26 11 May '09  
RantPost an .exe-file Pinmemberandycpp8:38 3 May '09  
GeneralLinks not found: PLS help PinmemberMember 43224710:53 12 Mar '09  
Generalsame code in matlab Pinmemberpradyuvishal5:10 10 Mar '09  
GeneralRe: same code in matlab PinmemberGAURAV JASWAL22:58 7 Dec '09  
Generalmatlab Pinmembermaryam2228:36 2 Feb '09  
GeneralCBIR Pinmembereipro3:19 22 Dec '08  
QuestionCan I find the same system in Matlab Pinmemberahmedabdu17:40 15 Dec '08  
Generali have build it successfully Pinmemberahlawat.arun@gmail.com19:45 13 Nov '08  
GeneralRe: i have build it successfully Pinmemberadamdcg21:58 3 Dec '08  
GeneralRe: i have build it successfully Pinmemberadamdcg23:00 3 Dec '08  
GeneralRe: i have build it successfully Pinmemberjoprem23:58 7 Mar '12  
QuestionErrors when compile Pinmembertkc_tran18:28 12 Nov '08  
AnswerRe: Errors when compile Pinmemberxpjandy16:58 29 Oct '09  
Generalcompiler for this project Pinmembertkc_tran14:20 12 Nov '08  
Generalgabor function Pinmemberradudragota7:52 29 May '07  
GeneralI have built this project successfully PinmemberKevinChen20:07 28 Dec '06  
GeneralRe: I have built this project successfully Pinmemberfelixhsu4:47 3 Jun '07  

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

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

Permalink | Advertise | Privacy | Mobile
Web03 | 2.5.120517.1 | Last Updated 25 Sep 2002
Article Copyright 2002 by Danang Suharno Ngadinegaran
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid