Multimedia Compression
Project: | Video Layered Based Compression |
Language: | Java |
The goal is to separate foreground and background of a given video, and then compress them differently. A frame is divided into several 16x16 blocks. Then use motion vector to decide which block is foreground and which block is background.
Watch an example on Youtube
The background of video on right side is more blurred because compressed more.
Compress foreground and background differently.
(The background is over-compressed so the difference can be easily seen)
![]() |
The foreground is marked with white squares. |
Watch another example on Youtube
Project: | Choosing Representative Colors |
Language: | Java |
The goal is to design and implement an algorithm, which chooses n representative colors for a given image.
![]() | ![]() | ![]() |
Input image | n = 4 | n = 8 |
![]() | ![]() | ![]() |
Input image | n = 4 | n = 8 |