Image Hashing

Mark Johnson
(Professor Kannan Ramchandran)
Fannie and John Hertz Foundation

We consider the problem of mapping an image to a short binary string, known as image hashing. The image hash function should have the properties that perceptually identical images should have the same hash value with high probability, while perceptually different images should have independent hash values. In addition, the hash function should be secure, so that an attacker cannot predict the hash value of a known image. An image hash function can be used to search and sort an image database, or to select frames in a video sequence for watermark embedding.

We construct an image hash function by splitting it into two stages. In the first step, a feature vector, which should capture the important perceptual aspects of the image, is extracted. In the second step, the feature vector is securely compressed. We perform this secure compression by first adding a dither sequence to the feature vector and then compressing the result with a distributed source code. We prove that the mutual information between the image and the hash value goes to zero if the dither is drawn from a suitable distribution.

Figure 1
Figure 1: Block diagram of image hash function

Figure 2
Figure 2: Secure compression of feature vector

[1]
M. Johnson and K. Ramchandran, "Dither-Based Secure Image Hashing Using Distributed Coding," Proc. IEEE Int. Conf. Image Processing, (Barcelona, Spain), September 2003.

Contact: Mark Johnson