Asi*_*Ali 6 c++ compression encoding lossless-compression
我正在尝试使用算术编码器对-256 <-> 255(即9位数据由short表示)范围内的有符号值进行编码,但是我发现算术编码的现有实现(例如dlib和rANS)通常会读取字符串形式,并将数据视为8位。
这种技术的问题在于,以字符串形式对有符号数据(如3所示)进行拆分会破坏基础直方图(如4所示)。我相信这种分裂也可能会降低压缩率(但我可能是错的)。
我通过用8位和16位数据实现霍夫曼编码来检验我的假设,发现我是对的,这可能是由于霍夫曼依赖使用概率来制作树所致。
我的问题是:如何对符号进行编码/建模(不能包含在常规的8位容器中),以便可以使用传统的算术压缩器实现轻松压缩生成的符号,而不会影响压缩率。
签名直方图:

分割直方图:
