Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It would be awesome to know the exact details on how these are made. Is it a histogram basis with thresholds to choose which colour is shown, or simply the entire frame compressed to a couple of pixels thick, and then just include some percentage (like 1%) of frames. These are great, you really can tell a lot about a movie, like how long mostly unchanging scenes last, and the overall colour palettes used. Great stuff!


I'm pretty sure it's some straightforward cropping/resizing of some subset of the frames in the movie. The barcode for Slumdog Millionaire[1] presents some pretty compelling evidence that this is the case.

That barcode has a persistent pattern in its lower part: every once and a while, there's the same four light blue lines straddling three sets of light grey lines. That movie is about a contestant on the Indian version of "Who Wants to Be a Millionaire". For reference, I found a screencap of the show on Wikimedia[2]. You'll notice that the location and pattern of the lines in the barcode correspond with the location and form of the question boxes in the show. The light blue lines are the outlines of the boxes, and the light grey ones are the text. I don't have a copy of the movie with me, but I suspect that if you linearly interpolate between horizontal position in the barcode and temporal position in the movie, then the scenes where the question boxes are on the screen will correspond with the locations in the barcode where the pattern appears.

As to whether the frame is cropped or resized to be 1-pixel wide, my guess is that they are resized. My reasoning is that if the frame were cropped, then you might not always see the light grey lines along with the light blue lines in the barcode, since you might take a slice of the frame that falls along spaces between words in the questions and answers. Since the appearance of the question box pattern is pretty much uniform, it's probable that the entire frame is resized, so each pixel in each slice corresponds to the "average" color value of pixels at that height in the sampled frame (I say "average" because I don't really know how downscaling algorithms work).

[1]: http://s3.amazonaws.com/data.tumblr.com/tumblr_lh9wkoPf5s1qh... [2]: http://upload.wikimedia.org/wikipedia/en/thumb/a/a4/Ken_Basi...


You see the same sort of artifact with kill bill, which often has titles at the bottom of the screen.


I'd like to know more about the compression technique used as well. It would be nice to know how much "smear" or "lossiness" there is.

Now just free-wheel brainstorming here... but it seems to me that given an acceptably "clean" compression of the video, one could generate a good fingerprint from the hashes of the histograms of each frame.

Then a client-side app could sample a reasonable number of frames and given an algorithm for finding invariant histograms (given changes in lighting, capture quality, etc the algorithm would output a deterministic histogram within some acceptable but narrow tolerance) it could generate a fingerprint that is good enough for a heuristic algorithm to search a database of movie fingerprints...

essentially, shazam for video.


I think it is made using a filmstrip of some frames of the movie then streched vertically. I tried to reverse the image to the filmstrip and this is what i've got: the probel is the image is so low res than the frames are recreated with a lot of difficulty. Anyway, i put a actual frame of the movie next to the filmstrip. You can still recognize figures. like body shapes, etc. My try here (Kill Bill vol 1: http://i.imgur.com/ZUUo0.jpg




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: