AV1@Scale: フィルムグレイン合成の覚醒
(netflixtechblog.com)- NetflixはAV1の**Film Grain Synthesis(FGS)**ストリームを世界中に拡大し、フィルムグレインの質感を維持しながらストリーミングのデータ使用量を削減しようとしている
- FGSはグレインそのものを圧縮せず、除去した映像とグレインモデルのパラメータを送り、再生時にブロック単位で再合成する
- They Cloned Tyrone の例では、通常のAV1が8274 kbpsであるのに対し、AV1 FGSは2804 kbpsとなり、強いフィルムグレインのシーンで約66%のビットレート削減を示した
- 約300タイトルの評価では、1080p以上で平均ビットレートが36%減少した一方、1080p未満ではダウンスケーリングでノイズが減るため効果は10%程度にとどまった
- ロールアウト前のA/Bテストでは、初期ビットレート24%、平均ビットレート31.6%、再バッファリング10%、開始遅延10%の減少が観測され、対応デバイスには2025年3月から大規模適用が進んでいる
NetflixのAV1 Film Grain Synthesis拡大
- Netflixは最近、**AV1 Film Grain Synthesis(FGS)**ストリームの適用を世界中の会員向けに拡大した
- FGSはAV1標準の初期から含まれていたが、Netflixの2021年のAV1コーデック初期展開当時は限られた数のタイトルでのみ有効化されていた
- 今回の拡大の目的は、フィルムグレインの芸術的完全性を保ちながらデータ効率を高めることにある
- フィルムグレインはクラシック映画の質感、リアリティ、ノスタルジーを生み出す要素だが、ランダム性が大きいため、従来の圧縮ではファイルサイズ削減とグレイン保持の間で妥協が必要だった
- デジタル映像にもカメラセンサーノイズやポストプロダクションで意図的に追加したグレインがあり、圧縮処理はさらに難しくなる
AV1 FGSがグレインを処理する方法
- AV1 FGSはグレインを直接圧縮する代わりに、元の映像からグレインを除去したdenoised videoをまずエンコードする
- グレインの形状と強度をモデル化したパラメータを圧縮映像データとともに送信し、再生中に再合成する
- AV1標準はグレイン除去方式そのものを規定していないため、利用者は任意のdenoiserを選択できる
- 再生段階では、コンシューマーデバイスでスムーズに動作するよう最適化されたブロックベース方式でフィルムグレインを復元する
- より詳しい説明は原論文で確認できる
グレインパターンと強度モデル
-
Film Grain Pattern
- 自己回帰モデル(auto-regressive model)がフィルムグレインのパターンを複製する
- 主要なパラメータはAR係数で、ソース映像とdenoised videoの間の残差から推定できる
- このモデルはグレインサンプル間の空間的相関を捉え、元のノイズ特性を維持する
- AR係数
{ai}を調整すると、グレインの形状をより粗くしたり、より細かくしたりできる - この係数で64x64ノイズテンプレートを生成し、再生中にはランダムな32x32パッチを抽出してデコード済み映像に加える
-
Film Grain Intensity
- スケーリング関数が明るさ条件に応じてグレインの見え方を制御する
- この関数はエンコード中に推定され、ピクセル値とノイズ強度の関係を区分線形関数としてモデル化する
- 映像の明るさと色に応じてグレイン強度を調整し、元映像の見え方により近く再現する
画質改善とビットレート削減
- NetflixはThey Cloned Tyroneの1フレームを例に、通常のAV1とAV1 FGSを比較している
- 通常のAV1は8274 kbps、AV1 FGSは2804 kbpsで、約66%のビットレート削減を示した
- 強いフィルムグレインがあるこの例では、通常のAV1ではDCTのようなパターンの歪んだノイズが現れることがあるが、FGS版ではより低いビットレートでもフィルムグレインの完全性を保てる
- 合成されたノイズは圧縮アーティファクトをマスクし、視覚的により良い体験を生み出せる
- 通常のAV1ストリームと、合成ノイズのないAV1 FGSストリームでは圧縮アーティファクトが見える
- グレイン合成が適用されたAV1 FGSストリームは、人間の視覚システムのコントラストマスキングによって一部の圧縮アーティファクトを隠す
品質測定の限界とカタログ評価
- Netflixには現在、フィルムグレイン合成専用の品質モデルがない
- ソース映像とデコード映像のノイズが互いに異なるピクセル位置に現れるため、PSNRやVMAFのようなピクセル単位比較方式では品質スコアが低く出る可能性がある
- 内部評価では、視覚品質の改善と技術的価値が確認された
- グレインレベルがさまざまな約300タイトルを選び、AV1 FGSの影響を評価した
- 1080p以上の解像度では平均ビットレートが36%減少した
- 1080p未満の解像度ではビットレート減少が約**10%**にとどまった
- 低解像度で効果が小さい理由は、ダウンスケーリング過程でノイズがフィルタリングされるためである可能性がある
- FGSコーディングツールを有効にすると、ビットストリームに構文オーバーヘッドが継続的に追加される
A/Bテストで観測されたストリーミングへの影響
- Netflixはロールアウト前にA/Bテストで、AV1 FGS有効化がストリーミング全体に与える影響を評価した
- テスト結果は、より滑らかで安定したQoEにつながった
- 観測された改善点は次のとおり
- 再生開始時のビットレートが24%減少し、平均ビットレートが31.6%減少したことで、ネットワーク帯域幅の要求とダウンロードストリーム保存の必要性が減った
- 再生エラー率が約3%減少した
- 再バッファリング回数が10%減少し、再バッファリング継続時間は5%減少した
- 開始遅延が10%減少し、低下したビットレートによってデバイスが目標バッファ水準へより早く到達できた可能性がある
- 目立つビットレート低下が10%減少し、利用者が再生位置を調整する時間も10%減少した
- 4K対応デバイスでは、視聴時間の約**0.7%**が1080p以下から2160pへ移行した
- この解像度移行は、切り替えポイントのビットレート低下によってセッション中に最高解像度へ到達しやすくなったことに起因する
ロールアウト状況と今後の計画
- Netflixは2025年3月からFGSを大規模にロールアウトしており、現在は多くの利用者が対応デバイスでFGS有効化ストリームを視聴できる
- FGSストリーム体験の例として、The Hot Spot、Kung Fu Cult Master、Initial D、God of Gamblers II、Baahubali 2: The Conclusion、Dept. Qが挙げられている
- 一部のタイトルでは、設定メニューでHDRをオフにする必要があるため、新しいFGSストリームを直接体験できる
- 次回の記事では、Netflixの動画エンコーディングパイプラインでこの作業をどのように実装したかと、そこから得られた知見を扱う予定だ
1件のコメント
Hacker Newsのコメント
合成されたノイズには、元のノイズに含まれていたディテールや情報が載っていない可能性がある点が見落とされている。
実際のノイズを含む高品質エンコードを見ると、静止画から動画に切り替わったときに解像感が驚くほど上がる。ノイズが信号の上で踊っているように見え、24fpsでもその背後の信号は依然として鮮明に見える。
逆に、静止フレーム単位でノイズを捨ててから「美的に」似た人工ノイズを載せ直しても、元のディテールは復元できず、24fpsで見ると本質的によりぼやける。古くてノイズの多い映画では、ディテール差が2倍になることもある。
H.265やAV1が動きを考慮しつつ前後の複数フレームをまとめて見て「ノイズ除去」フレームを作るなら、理論上は時間軸全体にわたるディテールの信号を見つけてエンコードできるはずだが、実際にそうしているのかは分からない。間違っていたら教えてほしい。
要点は、ノイズ除去と合成の比較を静止画像でやってはいけないということだ。ディテールが捨てられているのか保存されているのかは、実際の動画を並べて比較すべきだ。ノイズは単なるノイズではなく、ディテールでもある。
美的な観点では、AV1の合成グレインは元映像の粒子サイズを考慮していないように見える。だから、古いフィルムの大きなハロゲン化銀結晶に由来する粗いグレインが、合成では細かなグレインのように見えて不自然になることがある。優れたフィルムノイズ除去器ならこれを緩和できるかもしれない。
また、フィルムの分離した色成分を適切にモデル化していないが、Netflixの映像ソースはもともとクロマサブサンプリングされていることが多いため、大きな問題ではないという: https://norkin.org/pdf/DCC_2018_AV1_film_grain.pdf
この分野は軽く読んだ程度なので、間違っているかもしれない。
時間的な側面を説明するなら、従来のフィルム映写機を思い浮かべればいい。フレームの合間ごとに、ごく短い時間だけ完全な暗闇を見ることになる。その暗闇を「ノイズ」と呼ぶこともできるし、その瞬間にとどまれば元の信号はまったく見えないはずだ。
しかし私たちの視覚系はある程度時間平均を取るので、その点滅にはほとんど気づかない(https://en.wikipedia.org/wiki/Flicker_fusion_threshold)。ノイズやグレインも同様に知覚され、安定した信号や画像の部分に比べて目立ちにくいのだと思う。
天体写真家がノイズの多い画像をスタックして高いS/N比の画像を得るように、脳もある程度それに近いことをしているのだと思う。存在しないディテールを幻覚のように作り出すという意味ではなく、記録されたノイズが時間とともに平均化され、その平均が実際の信号をより明確に示すということだ。もちろん系統的・非ランダムなノイズのため完璧ではないが、たいていはそれほど重要ではない。
個々のフレームだけを処理するノイズ除去アルゴリズムにはこの文脈がないため、ディテールを失ったり、推測で補完しようとしたりする。AV1は特定のアルゴリズムを強制しないので、理論上は賢いアルゴリズムが時間的コンテキストを使って追加のディテールを保持できる。
静的なフレームを数枚平均すれば、変化しない信号は保たれ、ランダムノイズは打ち消されてS/N比が改善する。ノイズそのものを保存することに意味はない。
見えている効果は、元のグレインの動きに対する美的な好みか、平滑化やローパスフィルタリングのような強い圧縮アーティファクトを含む低ビットレートのコンテンツを、全体のディテールを保った高ビットレート版と比較したことで生じている可能性がある。これは上に重ねたグレインとは別の話だ。
ノイズを加えることの価値は哲学的に議論の余地があるが、ここでの例の問題は、ノイズ除去の過程ですべてが過剰にぼやけてしまい、ノイズ除去版も合成グレイン画像も元画像より明らかにシャープさに欠けて見える点だ
グレイン自体もあまりに基本的なノイズのように見え、実際のフィルムグレインらしくない
その結果、元のグレインがより広い領域に「にじんで」濁って見え、シャープなグレインをエンコードしようとして実際のシーンの鮮明さまで失われてしまう
フィルムグレイン合成は、帯域幅が限られたストリーミングでは理にかなっている。ただし、例にある合成グレインがあまりグレインらしく見えないという点には同意する。さらに、ノイズ除去の量や方法によってはシーンのディテールがぼやけることもある
フィルムシミュレーションをオン・オフできる選択肢を提供してくれるとよい
お気に入りの映画のひとつであるThe Holdoversは、フィルムシミュレーションを非常にうまくやっていた。70年代が舞台なので、その時代の映画のように見せようとしている
私の目には素晴らしかったが、本物のフィルムマニアなら不正確な部分をいくつも見抜くだろう
近い将来、Netflixがクライアント側で一部のポストプロダクション効果を処理することもありそうだ。色覚異常ならそれに合わせたモードを使い、偽のグレインが嫌ならオフにする、といった具合に
いくつか注意点がある
静止フレームは映像品質の評価方法としてはあまり良くない
理論上完璧な[1]ノイズ除去フィルターであっても、常に元のソースよりディテールが少なく見えるだろう。脳/視覚系は、ぼやけた画像よりノイズのある画像のほうから多くのディテールを作り出すからだ
[1] ここで完璧というのは、グレインではないディテールを100%保持するという意味であって、ノイズのせいで失われたディテールを魔法のように復元するという意味ではない
おまけに、多くの視聴者はオフにできるオプションを歓迎するだろう
ここで本当の話は「大規模適用」の部分だ。フィルムグレイン合成は一般的なAV1エンコーダーにすでにしばらく前から存在していたが、問題を避けるにはある程度の手動調整が必要だった
そのため制作環境では、カタログが非常に限定されるか、特に重要なタイトルにだけ使われていた。ここではその問題をどう克服したのか詳しくは明かしていないが、より広く展開されるのは歓迎したい
グレインを嫌う側について言えば、すべてのものには自然にある程度のノイズやグレインがある。最高のデジタルセンサーにもあるし、目にさえある
単なる美的効果以上の有用性がある。知覚上のシャープさを高め、色のバンディングや圧縮アーティファクトのような欠点を隠す傾向がある
だからといって、あらゆるノイズやグレインが良いという意味ではない。技術的制約のため避けられない場合もあるし、悪い創作上の選択の結果かもしれないし、気が散ることもある
しかし、何にでもノイズ除去をかけるという代替案は、はるかに悪いと思う。最近の多くのカメラはデフォルトでそうしているが、私の目にはノイズ除去で生じる平滑化はしばしば非現実的で、はるかに不快だ
「グレイン = リアリズム」という話は理解できない。実際、私の目にはグレインは見えない。
ただ、グレインが芸術的な道具として使われる役割は認めるので、この技術自体は依然として興味深い。
周囲を見れば、ほぼすべての表面には何らかの微細な質感があり、視覚的に均一ではない。これが映像として記録されると、カメラ光学系、限られた解像度、圧縮による平滑化のために微細な質感が減ってしまう。フィルムグレインは、失われた高周波の視覚刺激の一部を補っている。
私たちの目と脳はそうした高周波刺激を好み、元の場面の正確なノイズパターンが再現されているかどうかにはそれほど厳密ではない。だから H.265 映像を作る x265 エンコーダにはグレイン合成はないが psy-rd パラメータがある。これは「圧縮映像が元映像と同じくらい“エネルギー”を持って見えるようにしろ、そのエネルギーがまったく同じ位置になくてもよい」という方向に近く、psy-rdoq は「全体としてより高いエネルギーを優先しろ」に近い。
こうしたパラメータを調整すると、より多くのデータを保存しなくても圧縮映像をより良く見せられる。
幸い、私たちの目はカメラよりはるかに感度が高い。しかしここでの「リアリズム」とは、当時の技術で捉えられたあり方から来るものだ。蓄音機のノイズや CRT 信号のにじみ方と変わらない。映画監督が使った技術、そして観客がその映画を見るだろうと彼らが理解していた方法に対して「本物」なのだ。
それは Van Gogh の筆致が彼の絵にとって本物であるのと同じだ。油絵を紙やすりで削って平らにしたいとは思わないだろう。元の媒体の現実だからだ。だからフィルムのデジタルプリントでも、原作の現実をできるだけ保ちたくなる。
あるテーマについて多くを知っていれば、その対象の歴史をより多く読み取れるようになり、それが感情も変える。
Buster Keaton の短い喜劇を見て息をのんだりくすくす笑ったりして楽しむ子どもと、どのフィルムとカメラが使われたのか、場面の抽象化が何を意味するのか、Keaton の衣装の布地がどうかまで知っている映画評論家とでは、同じ媒体に対して異なる主観的な美的体験をすることになる。
主観的な美的嗜好は認知の領域にある。人間の脳に対応づけられた正式な知能理論が必要で、こうした主観的現象は結局、個別化されたデータ処理と初期条件に帰着する。
クリーンなセルアニメーションと対比されるフィルムグレインは、人々が不信の停止をしやすくするのかもしれない。グレインがないと非現実的なアニメーション、特定の媒体、CGI と結びつくと学習しているからだ。ホームビデオやニュースなどにはグレインと低画質があったので、グレインは「本物」と相関を持つようになった。
私には、それ以上に深いものはないように思える。私たちは時代の産物だ。40 年後には媒体が変わり、フィルムグレインがシュールさと結びつくようになるか、あるいは根本的にノイズなのだから完全に除去されるかもしれない。
その背後にある視覚心理はよく分からない。圧縮で失われる高周波成分を補っているのかもしれないし、ある種のディザリングのように働いているのかもしれない。
目について言えば、量子物理学的には目にもグレインがあると見るのが正しいだろう。ただ、脳がそれを取り除くので認識しないだけだ。これがフィルムグレインとどう相互作用するのかはよく分からない。
昔のガラス職人たちは、今のように均一で大きなガラス板を作れることにものすごく魅了されたはずなのに、私たちは彼らがやむなく選んだ妥協を、慣れているという理由で真似している。
「古典映画を見るとき、フィルムグレインの微妙な動きがすべての場面に真正性と郷愁を加える」という話は、実際の場面のディテールを隠す視覚ノイズを足しているだけだと思う。
郷愁は、昔の俳優や最初に見たときの古い記憶のような、もっと目立つ視覚的手がかりに結びつくこともある。
「映画のリアリズムに寄与する」という話も、現実にはグレインがないのだから、むしろ逆だ。
それでも AV1 が進化を続け、視覚的なゴミをエンコードするためにビットレートを無駄にせず、アルゴリズム的な代替メカニズムを持つのは歓迎したい。そうなれば、より簡単に切れるようにもなる。
フィルムグレインが監督のビジョンの一部なら、場面の背後に劇的な非ダイジェティック音楽を流す選択と同じくらい正当だ。それは非常に非真正的だが、感情を呼び起こすのに非常に効果的であり、それが芸術の目的だ。
撮影監督 Steve Yedlin は、これを観客の目が「つかまえる」何かを与えることだと説明している。
携帯電話の通話では、AMR-WB コーデックは名目上 50Hz〜7000Hz を捉える。だがそれは、選択可能な最高ビットレートである 23.85Kbps のときだけだ。
最も一般的な 12.65Kbps では 6400Hz までしか含まず、6400〜7000Hz は低周波とノイズから合成する。ノイズがないより、あるほうが良く聞こえるからだ。
フィルムグレインは消えるべきだ。その時代は過ぎた。セピア写真や 16fps の無声映画を 24fps で回すのもすでに死んでいて、次はフィルムグレインだ。
Rochester の Eastman Business Park も取り壊された。
それに YouTube 動画に埃やスクラッチを入れるのもいい加減やめてほしい。
映像をまず撮影し、ポストプロダクションでノイズを除去し、またノイズを加え、エンコードでさらにノイズを除去したあと、デコードで再びノイズを加えるという点が少しもどかしい
フェイクの照明、フェイクの影、フェイクの空など
今やすべてがフェイクだ。元のフィルムスキャンをそのまま使う技術が欲しい。ディテール損失の最初の段階であるJPEG圧縮すらしない方式だとよい。
動き検出、キーフレーム、デルタフレームは構わないが、可逆圧縮の映像であってほしい。もちろんBlu-rayに収める前提で、ストリーミングはあまり気にしていない