12月
09
映像のビット数 (bpc) を減らした場合に圧縮率がどう変わるかを計測してみました。ソースは Xiph.org Video Test Media の crowd_run を 1080p YUV422 8bpc (UYVY) に縮小したもので、右にシフトしてビットを削って圧縮します。なお、予測値の計算も残差も同じビット数になるようにしています。
で、結果
bpc | predict left |
predict median |
---|---|---|
1 | 0.998 | 0.998 |
2 | 1.777 | 1.817 |
3 | 2.472 | 2.578 |
4 | 2.859 | 3.108 |
5 | 2.787 | 3.262 |
6 | 2.425 | 2.994 |
7 | 2.099 | 2.617 |
8 | 1.869 | 2.267 |
ビット数を減らしていくと、ある程度(4bpcあたり)までは圧縮比は向上しますが、1bpc に向かって急激に圧縮比が低下します。1bpc の場合に圧縮比が1を下回る(圧縮したつもりが大きくなってしまう)のは、シンボルが2通りしかないので符号語長が整数であるハフマン符号では大きさは変わらず、オーバーヘッド(符号語長テーブルなど)により逆に大きくなるからです。
実際に知りたいのはビット数を増やした時にどうなるかなんですが、これだと 10bpc で圧縮比 1.5~2.0 がせいぜい、16bpc だとほとんど圧縮できない、という事になりそうです。先に行くには単純な「predict left/median + エントロピー圧縮」ではない方法を考えなければなりません。
no comment untill now