Generate montage for movies/videos following hilbert curve.
Generates an images from the frames of the video/movie by mapping time (1D) to image (2D) based on Hilbert curve and showing associated frame at that point. Hilbert curve preserves relative distance with the neighboring frames when we map from 1 dimension to 2 dimension to some extent. Please see 3Blue1Brown for better explanation regarding Hilbert curves. Along with Hilbert montage image, it also generates normal montage which follows arranges the frames from left to right and top to bottom. and barcode pattern which just create barcode like pattern by compressing width of frames to 2 pixel.
- Elixir
- FFmpeg for extracting frames
- ImageMagick for generating image
$ ./hilbert <path_to_video> <prefix>
will generate 3 images with the prefix <prefix>
and suffix _hilbert
, _normal
and _bar
.
Output for Blade Runner 2049