3 ms·
Golomb-Rice with base M is prefix code optimal for approximately geometric probability distribution Pr(x) ~ sqrt(2)^(-Mx). Arithmetic coding or FSE/tANS would
by eln1 10y ago
Golomb-Rice with base M is prefix code optimal for approximately geometric probability distribution
Pr(x) ~ sqrt(2)^(-Mx).
Arithmetic coding or FSE/tANS would allow to use the actual probability distribution. The question is how large the gain could be - how far from Shannon is Golomb-Rice for this specific type of data?
If this probability distribution varies, maybe it's worth thinking about adaptive rANS, like in Oodle LZNA and BitKnit: https://fgiesen.wordpress.com/2015/12/21/rans-in-practice/ https://fgiesen.wordpress.com/2015/12/21/rans-in-practice/
ps. Is M fixed or adapting?
- niftich 10y agoSadly my enthusiasm for compression greatly exceeds my math knowledge. The linked resources from the RAD Game Tools people are really interesting; they've been pushing the state-of-the-art for many years but mostly avoid the limelight. I found one paper [1] that muses about switching from CABAC to Golomb-Rice in video compression, and by doing so they reduce decoding complexity while achieving comparable compression efficiency. So I'm not sure if it'd be worth going the other way, and whether adaptive codes are a good fit (for LPC residuals). [1] http://iphome.hhi.de/wiegand/assets/pdfs/2011_09_ICIP_entropy_cod.pdf http://iphome.hhi.de/wiegand/assets/pdfs/2011_09_ICIP_entrop... But I almost want to cook up some interactive 'build-your-own lossless codec' testbench where you could pick your transform, pick your linear predictor, and pick your entropy coder, and tinker until you're satisfied with the result.