Image Compression

Technical questions regarding the XTC tools and programming with XMOS.
CraigD
New User
Posts: 3
Joined: Mon Dec 14, 2009 9:56 pm

Post by CraigD »

JPEG or JPEG2000? The original JPEG used a DCT transform JPEG2000 uses wavelets. If you use a wavelet compression, you do not want to use JPEG2000's last stage lossless compression. By giving up about 5% of the compresion you can get 10x the performance. Compare the time required to decode any JPEG2000 (RED camera, Infinity, etc) with the time required for decoding something like the CineForm codec.

You might want to look at JPEG XR. It is more efficient than JPEG2000, and source is available from Microsoft.


User avatar
skoe
Experienced Member
Posts: 94
Joined: Tue Apr 27, 2010 10:55 pm

Post by skoe »

CraigD wrote:JPEG or JPEG2000?
Don't take this remark to serious :) The wavelet encoding was meant a bit sarcastic. I think JPEG (or similar DCT based stuff) is enough.

Edit: Reading my last post again I must confess that mentioning wavelet and JPEG in one paragraph was confusing, sorry. The meaning should have been: With that small bandwidth the best compression available should be used, but from the list of available (lossy) image compression mechanisms with high compression ratios only something like JPEG is realistic on an XMOS core.
CraigD
New User
Posts: 3
Joined: Mon Dec 14, 2009 9:56 pm

Post by CraigD »

I would still suggest JPEG XR. The computational load is similar to JPEG, it can be implemented using integer calculations if you do not implement HDR and "delivers a lossy compressed image of better perceptive quality than JPEG at less than half the file size". Since it does hierarchical 4x4 blocks, it should be more amenable to splitting between 2 cores if needed.