Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Phash vs. SIFT in identifying similar image [closed]

I have questions about both sift and phash

First of all, I'm using SIFT to identify similar image in real-time service. Like pictures by phone-camera, small amount of rotation and blurred effect could be.

And I found Phash. So, I test phash on its demo page. But result made me to sigh.

This is result of above test:

Demo of Phash

In this test, two images are fixed on x-axis. So they don' t have rotation. But right images' logo were removed and person was moved to left side. In my eye, This is 'Very Similar'. In addition, SIFT catch this completely.

Now, This is question.

  1. pHash is faster than SIFT?
  2. Is pHash's accuracy reliable?
  3. SIFT's output was too big to use in real-time service. So I must use hash to make output smaller size like LSH(Locality-sensitive hashing). Any other way to I try?
like image 774
jeyraof Avatar asked May 22 '13 20:05

jeyraof


1 Answers

Ok, I got it.

pHash can't recognize rotation and critical movement as same thing.

In case of data space, pHash was dramatically good for using. It is very small size: one image to one hash. SIFT, however, need 128 bytes to get feature point. And there are many feature points in one image.

Eventually, SIFT can identify similar image well than pHash. But more and more size was needed.

In speed bench, I can't test yet. But I think, pHash was faster than SIFT because SIFT have to operate for many features on one images.

If you have another answers for above question, tell me please.

like image 112
jeyraof Avatar answered Oct 14 '22 16:10

jeyraof