I need a matlab code for a perceptual hashing algorithm descried here:http://www.hackerfactor.com/blog/index.php?/archives/432-Looks-Like-It.htmlBasically I want this to remove deatails in an image and only leave the major structure components information.To do so, I think I need the following steps:1. Reduce the DCT. Suppose the DCT is 32x32 (), just keep the top-left 8x8. Those represent the lowest frequencies in the picture.Compute the average value. Like the Average Hash, compute the mean DCT value (using only the 8x8 DCT low-frequency values and excluding the first term since the DC coefficient can be significantly different from the other values and will throw off the average). Further reduce the DCT. Set the 64 hash bits to 0 or 1 depending on whether each of the 64 DCT values is above or below the average value. The result doesn't tell us the actual low frequencies; it just tells us the very-rough relative scale of the frequencies to the mean. The result will not vary as long as the overall structure of the image remains the same; this can survive gamma and color histogram adjustments without a problem.reconstruct image after the processing.Anyone can help on any one of above steps?I have tried some code that gives some results (in the below link), it is not yet perfect:https://stackoverflow.com/questions/26748051/extract-low-frequency-from-dct-coeffecients-of-an-image-in-matlab
A quick search yielded this result and other potentially interesting pages. Perhaps you can start with this. -- Also, I am not sure what you want from step 4, but typically hashing is a one way process.
I've posted some code and results here:stackoverflow.com/questions/26748051/…