2019年05月04日

【エンコード日記】デブロックフィルタのそこんところ

↓3)記稿.2019/05/04

> デブロックフィルタ(deblock)とは


 ‥量子化された格子の境という奴ほど連続めくりして見る場合の最適化が欠かせない
 綺麗に見える連続にするにも、まずは格子の境目の最適化である
 ブロック状にて処理される以上、つなぎ目の具合ほど慎重さが求められる

 ‥如何なる作業にも言えることだが
 「カッチ」と蓋のされる日本製とそうでない中華製とのキャップ等での差は大きい
 境目の質とはそういうものだ

 ‥裏を返せば
 境目の処理が伴う性質上、条件が違えば、似せることはできても
 まったく同じになるわけが無い‥との理解に至らざるを得ない


> ところが
> AVCにおいてその機能性はどうにも大ざっぱである
> HEVCにおいては、処理に対するアプローチは増えているが注目度は低い


 AVCの頃の感覚で十分だと思っていると
 折角のHEVCの追加要素を見逃したままだ(それこそ過剰装備にしか見えていないだろう)

 ‥しかし、つなぎ目をどうするかほど、重大な要素も無い
 ぶっちゃけたことを言えば
 動画エンコードとは、つなぎ目だらけの寄せ集め映像である(軽視して良いわけがない)


> さて話を進めよう


 AVCにあるdeblock項目にはまず
 機能をオンにするかオフにするかのスイッチがある

 十分すぎるビットレートさえ与えれば
 「ブロッキングなんて発生するわけねぇ」なんて考えもあるようだが
 そんな考えはまず捨てよう

 ‥何が起こるかわからない‥それほどの情報量を処理していただこうというのに
 境目の補正を欠いてやらかそうなんてのは、ブラック企業の手抜きっぷりとさほど変わらない
 どう考えたってその程度の発想から抜け出せないままになる
 (品質の良さなんて奴は、ガタガタしないように如何にして事前対策してあるかだッ)


> それにしても、次の項目の二つの数値の意味がよくわからない


「AviUtl」や「XMedia Recode」には

 ブロッキング軽減 - 強度:0
 ブロッキング軽減 - 閾値:0
 とある

 ‥ググってみると

 --deblock (alpha,beta)
 alphaはFilterを掛ける閾値(いきち)
 betaはFilterを掛けない閾値(いきち)
 と書かれてあったりする

 (だからなんだよわかんねぇよ)


> ‥そこで日本語を置き換えてみた
> フィルターに掛かったときの閾値、掛からなかったときの閾値


 ‥そもそもがデブロックの処理なんだから
 まずはブロッキングになりそうな程度で分けることになる
 常時一定の閾値で処理をする必要は無いのだ
 だからこれは、必要時と不要時の閾値が異なっていると考えて良いだろう(そうとしか思えない)


 ‥あとは限界値の組み合わせから見比べてみれば良い
 ±6までの整数値しか用意されていないので、それだけ大ざっぱということでもあるわけだけど
 必要時と不要時の閾値が異なっていると考えるなら、そういうものかなと思わなくもない



1-3)1

 エンコード設定のチューニングの項目には
 (1,1)(-1,-1)(-2,-2)(-3,-3)での推奨案が提示されている
 基準は無論(0,0)だが、スムージングが微に効きすぎてヌボっとした感触は否めない


> ‥ブロッキングになりそうな程度で分ける発想で考えると
> 規格側の判断が、二つの閾値を同じにしてあるという点に違和感を覚える


 ‥どうみたって、ブロッキングしそうな分のデータを多目に残さないのでは
 ブロッキングに該当しない判断情報とすべて同じレベルで処理することになり
 イメージとしては、ブロッキングになりそうな情報側を多目に間引くことになる


 イメージや常識としては、そういうものだろうと思わなくもないのだが


 ‥これは、出る杭を引っこ抜いて無かったことにするのか
 それとも、痕跡としての雰囲気なり味わいを残すのかということでもある
 強すぎる置き換えは、ディティール感を思えば、どうしたって怪しいばかりだろう


> ‥ちなみに、マイナスの値の方に寄せるとスムーズを弱くしてより情報を残す傾向だ


 具体的に言うと、玉葱の薄皮一枚ないし二枚分もといセロハンテープを
 乗せるか乗せないかの色のぼかしの差の調整になるだろうか
 (正直、静止画からの見比べ判断に何の意味も無い‥動かして見てなんぼ)



 ‥基本的にbフレーム少なめもしくは無しの場合
 双方をマイナスに寄せると、どうにも表面が荒れた雰囲気になる

 ぼかし技法を用いた表現の場合では、ぼかしの雰囲気が弱めで不十分だったりする場合もある
 (入浴シーンでの湯気表現の度合いの差が分かりやすい)

 又、アニメと実写とを比べてみると
 明らかに実写の方がプラス値に寄せたときのボケ感が大きい
 (ここは、動きの検知の有り様にも絡むと思う)


 ‥とくにぼかし表現において
 デブロック等でのぼかし込ませが弱めの場合には
 再エンコード時に修正は効くが、強めの場合にはもはや無理



1-3)2

> 結論から言うと(−1,0)が一番にしっくりして見えると思う
> ぼかし表現での具合も良いと思う


 ‥でもまぁどちらにしても、それぞれがどこまで適当にあるかは好みと都合になる‥

 ‥玉葱の薄皮一枚分ないし二枚分もといセロハンテープを
 格子のそれぞれに乗せるか乗せないかの違いを貼り付けてある映像を、連続で映すことに等しい
 それは、セロハンテープが常時同じ位置に有るわけでも無く
 セロハンの位置があっちに張り付いていたりこっちに張り付いていたりの連続のイメージになる

 それの調整で、ブロッキングの発生を防止するのである
 (なんだか「それだけ?」って思うが、技術者が発見した抑制方法ということである)



1-3)3

> ちなみに


 格子毎に伴う境目の調整は、デブロックでというよりは
 エンコード全体で、細かい所まで気を回しておるようです


 ‥どちらかというと
 デブロックの意味する方向感としては
 圧縮効率を高めるためにある‥異なるブロックの大きさ間での調整と言えるでしょう

 基本的にブロックを大きくした方が
 ブロック毎の境目処理が減るので、小さいブロックとの画質差が起こりやすい‥
 その様な場合、すでにイメージの細かい所を弄るよりは
 サクッとセロハンを貼り付けて、見た目のぼかし度を揃えて綺麗に見せる意味合いになるでしょう

 つまり

 折角の大きめブロックの画質を、デブロック調整で最終的に落としてもうま味が薄い
 HEVCで言えば、解像度低いのに四分木を使う考えが適当という事にはならない
 でも、HEVCでは16x16ベースより小さくは扱えないというか
 16x16ベースの方がバランスが良いので、それに見合った解像度を選んだ方が良い

 (まぁ単純に、マイナス値に寄せてみるのも手順だろうけど)



posted by 木田舎滝ゆる里 at 11:58 | Comment(0) | HEVCと洗逸と受難 | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。