UAP14475 のブログⅢ

Yahoo!ブログから引っ越してきました。パソコンとトイガンが大好物です。  暇になると艦これを始めてしまいます。とにかく秘書艦は阿武隈ちゃんで。

愚痴

量子化における切り捨ての量が変更可能であることを知りました。
それはQP値単体が絶対のものではなく設定値であるということでもあるわけで・・・
 
 
値の量子化とは、【係数で値を割り、余りを切り捨てる】というもの。
ではそもそも係数とはなんなのか、というと・・・
おそらくながら量子化値×(QP値)』であると思われます。
よって量子化値をQP倍したものなので量子化値=16、QP=0である場合は
「16×0=0」となり係数0です。係数0では元の値と同一なので可逆となります。
 
 
ではそもそも量子化値はどうやって決まっているのか、というと・・・
量子化マトリクス」というもので周波数成分ごとに定められています。
一般的にはflat16やJVTが用いられます。(自作も可能)
flat16はその名の通り全て16です。
JVTは低周波成分において小さく、高周波成分において大きくなっています。
係数は大きいほど高圧縮・低画質になるのでJVTは低周波成分ほど精細に、高周波成分ほど雑になります。
 
そのためJVTの方が人間の視覚的に優れている(=高SSIM)となる
 
・・・のはVAQ(可変適応量子化)やらがない場合の話(完全なCQPなど)です。
まあ輝度量子化のdeadzoneとtrellisみたいなものなのではないかと私は思います。
VAQはJVTより高性能ながら計算が少々複雑ですがJVTは適応性に限界がある。
つまり、JVTはVAQの下位のようなものなのではないかと考えています。
 
 
 
以上の2点から
 「 QP値が等しくても、マトリクスによって切り捨てる量は異なる 」
ということが言えます。
 
ちなみに私はJVTよりもflat16+VAQをオススメします。
JVT+VAQも試してみましたがあんまりよくありませんでした。
 
 
 
ところでそろそろH.265とか来ないですかね?
H.264の変換設定もそろそろ煮詰まってきたし、もっとすごい圧縮をしたいところです。
3DCGの圧縮なんかはH.264でもまだまだ甘いかなーと思うところがありますし。
でもどうすれば今以上に圧縮率が上がるんだろう・・・?
・・・まあそこは開発者の方に期待しておきます。