Lossless video compression using Bloom filters
https://github.com/ross39/new_bloom_filter_repo/blob/main/README.md
Lossless video compression using Bloom filters
https://github.com/ross39/new_bloom_filter_repo/blob/main/README.md
I don't believe the document does a great job in explaining what is otherwise a very simple idea (assuming I understood it well):
1. It creates a bitmap where each bit is a pixel in the image, if from frame 0 to frame 1 a given pixel changed, the corresponding bit is 1, otherwise it is 0.
2. All the 1s are added to the bloom filter, hashing their offsets. Now the bloom filter will be positive for all such indexes plus a percentage of false positive indexes.
3. We query the bloom filter to see all the indexes that are positive, and for all such pixels we store the raw pixel data of what changed. So we can reconstruct the next frame easily.
You can think at this like as storing the delta between two frames as: x,y,r,g,b of all the pixels that changed, but compressing a lot the x,y part at the cost of storing a bit more r,g,b than needed.
I have the feeling that since the pixels that changes from frame 0 to frame 1 are often similar (in their location) to what will change from frame 1 to frame 2, there is the possibility of further compressing that as well, by setting the right flags in the next frame and storing verbatim the only offsets that changed in addition to the previous or alike.
This comment is why I go to the comments first.
Oh hey you're the guy who made kilo. Good job.
[edit] lol he edited it... they always edit it