This post has 448 words. It will take approximately 4 minutes, 28 secondes for reading it.
So I finally have done some more work on actually trying to detect differences in the images. Up to this point I’d been spending most of my time trying to better my use of the Haar Wavelet. I’m not going to go into the Haar Wavelet Implementation here, I’m going to cover that more in another post. What I would like to do is show you the results I’m getting.
First I’ll show you my original image: Children Playing I had to do the image as a link for some reason WordPress can’t thumbnail large images but it asks me if I want to thumbnail my thumbnails.
Yeah I know it’s big so now I reduce it to a 256 X 256 image. Remember in my application it doesn’t matter about the aspect ration when it comes to image identification.

Now the image is ready to run through the Haar Wavelet and it produces this:

If you notice the original 256 X 256 image is now rendered as a 128 X 128 in the upper left corner. The information I want is in the opposite corner the lower right. So now we’ll crop this out so we can work with it.

Yeah I know it doesn’t look like much but there are differences in some of the pixels. So we want to find where there are more pixels above a certain level. What we do now is to run this image through another check which chops the image into 8 X 8 Pixel chunks (64 pixels total) and counts the number of pixels above the RGB 65, 65, 65 or in HEX #414141. Why did I choose that color? Well basically it is dark but not completely black. Honestly I’m not sure why I chose this but right now it seems like a good choice. I’m sure we can say that the color is variable. If you are curious what color #414141 is it should look like this (HEX #414141). The identifier routine that I’ve built at this point only highlights the 8 X 8 chunks that fall within the calculated threshold for the image. So you can see the results look like this:

At this point we can see the grouping of the red squares seems focused around where the children are in the picture.
I’m still working on the rest of all this, I just wanted to share what I’ve come up with so far. Once I’ve experimented with this a bit more I’ll be happy to release the code that does this much (at least what I can, I’m still waiting to hear from the guy who wrote the C++ code to begin with).