remove
powerd by nog twitter


インターレース縞とフィールド(2003/11/18更新)



  フレームとフィールドの違いをしっかり理解するために、3:2プルダウン時の縞のサンプルを作りました。



  左の絵のように、映像が分身して縞が
  現れることがあります。これがインターレース縞です。
  このフレームは、テレシネのときに生まれたものです。
  では、縞がどうなっているかを詳しく見てみましょう。



 jumpersample01.m2v、88フレーム目の一部、6倍拡大
 インターレース対応MPEG2の場合


 jumpersample02.m2v、88フレーム目の一部、6倍拡大
 インターレース非対応MPEG1の場合



  上の絵は同じフレームの同じ場所の縞部分を拡大したものです。
  はっきりと縞が見えていると思いますが、この縞はちょうど1ドットずつです。

  左と右の絵は「インターレース」に対応しているcodecかどうかで違っています。
  左はインターレースに対応したMPEG2で、トップフィールドとボトムフィールドは別の映像で保存されているので、
  青い背景と球の黄色い縞部分は完全にくっきり分離しています。
  右はインターレースに対応していないMPEG1で、トップフィールドやボトムフィールドといったフィールドの概念が無いので、
  黒と灰色が交互に縞の映像になっています。

  この場合、インターレース解除が綺麗にできるのは左側のフィールド情報があるMPEG2の映像だけです。
  右の絵のMPEG1の映像は黒と灰色の縞になっているので、インターレース解除しても青色や黄色のはっきりした映像にはなりません。
  少しは縞は低減されるようですが、あまり綺麗じゃないことに変わりありません。



  インターレース解除が綺麗にできる場合とできない場合が存在します。

  インターレース解除が綺麗にできる場合
  縦480ライン(トップフィールド(240)+ボトムフィールド(240)= 480)の場合で、
  フィールドに対応したコーデックを用いた場合。
  簡単に言うと、フィールドライン情報が正確な映像ソース

  インターレース解除が綺麗にできない場合
  テレシネが狂っていて、フィールドの順番がおかしいもの。
  縦ラインに圧縮が加わってしまっているもの。
  フィルタを使ってインターレースを映像として扱ってしまった場合。
  又は、フィールド情報が残らない縦方向の色圧縮があるコーデックを使ってエンコードしてしまった場合。

  つまり、インターレース解除をする場合は、フロントエンド等で一番最初の地点でフィルタ処理する必要があります。
  AviUtlで読み込んで、ノイズ除去を普通に行いVFAPI経由でTMPGEncに渡してインターレース解除という順序では、
  フィールド情報をAviUtlのノイズ除去フィルタが邪魔して、インターレース解除が誤作動することがあります。
  ただし「フィールド単位」で処理できるフィルタはこの限りではありません。

  また、インターレースMPEG2(DVD-Video用など)をフィールド単位で処理できないフィルタリングすると、
  DVDプレーヤー(PCソフト)がデインターレース処理で誤作動を起こし、動きが悪くなります

  これは、フィールド間に渡って映像が相互関係を持った場合に起こります。



動画サンプルNo.01

  サンプル意義:24fps時のインターレース縞の除去を実際に行ってもらう為に、作成。
  詳細:PhotoImpact 5 BEを使い、わけのわからない円が動くBMPを192枚作成。それをAviUtlで連番読み込みして
  24fps-未圧縮24bitRGBのAVIを出力し、そのAVIをTMPGEncで読み込み3:2プルダウン処理して30fps化し、
  それぞれMPEG2(jumpersample01.m2v)、MPEG1(jumpersample02.m1v)に出力した。
  jumpersample02.m1vをリネームしてjumpersample02.m2vとリネームした。
  使い方:MPEG1、MPEG2を読み込めるソフト(MPEG-2 VIDEO VFAPI Plug-In+AviUtl)等でファイルを読み込み
  24fps化(逆テレシネ)とインターレース解除をする。

○ダウンロード○

  注意:他のホームページ等からzipファイルに直接リンクしないでください。



  jumpersample01.m2vとjumpersample02.m2vを読み込んでみて、24fps化とインターレース解除の設定を同条件で使ってみましょう。
  注意:この方法だけが正解ではありません。他のツールやソフトを使ってもできますし、数値が正しいというわけではありません。

  最初はjumpersample01.m2vを読み込んでみましょう。
  まずは、MPEG-2 VIDEO VFAPI Plug-Inをこのように→(映像のみリンク)設定します。
  要領がわかっていれば、MPEG-2 VIDEO VFAPI Plug-Inの設定は自由です。(要はフィールドオーダーの問題)
  次にAviUtlの一部の設定ををこのように→(映像のみリンク)します。
  要領がわかっていれば、設定は自由です。(24fpsアニメ・映画と同じ設定ですね)
  プレビューを見てみると縞が(100%ではないと思いますが)消えていると思います。

  次に、ファイルを閉じてjumpersample02.m2vを読み込んでみましょう。
  AviUtlで先ほどの設定が残っていればそのまま同じ画像が得られるはずですが・・・。
  プレビューを見ると、01ファイルより02ファイルのほうが円の輪郭に縞が残っているでしょう。

  AviUtl0.99を2つ起動して、9293フレーム目を見るとわかるとその違いがはっきりわかるでしょう。
  明らかに縞の残り方が違うと思います。(両方汚いのはビットレート不足のため)
  01のほうが背景と円がくっきりわかれていて、02のほうが青い部分に縞が残っているでしょう。
  これは02の映像は、24fps化のインターレース解除処理がされてないということです。

  また、01をMPEG-2 VIDEO VFAPI Plug-In→TMPGEnc(フィールド保持)→プロジェクトファイル→AviUtlと読み込ませても、
  インターレース解除は正常に動作するのが確認できると思います。
  ただし、上記のファイル経由の途中、TMPGEncでフィルタ処理をフィールド単位で行わなかった場合、
  インターレース解除が誤作動する原因になります。
  01をMPEG-2 VIDEO VFAPI Plug-In→AviUtl(フィールド保持、フィルタ無し)→プロジェクトファイル→TMPGEncとしても、
  TMPGEncの24fps化によるインターレース解除は正常に動作するのを確認できました。
  ただし、上記のファイル経由の途中、AviUtlでフィルタ処理をフィールド単位で行わなかった場合、
  インターレース解除は思ったように機能しないです。



  結論
  その1:MPEG2はインターレース対応でMPEG1はインターレースに対応していない。
  つまり、MPEG1-Videoのインターレース縞は映像として圧縮されており、綺麗には除去不能である。
  その2:インターレースのMPEG2はMPEG-2 VIDEO VFAPI Plug-InによってVFAPI経由される場合には、
  フィールド情報が残りインターレース解除が正常に働く。
  その3:VFAPIは映像の情報を忠実に受け継ぐので、インターレース解除の妨げにはならない。
  その4:インターレースの除去をする前にフィールド単位の処理ができないフィルタを使うと、
  その後でインターレース除去をすることができない場合がある。(クリップと縦解像度変更、フィールド相互関係を著しく破壊する場合)
  その5:インターレースのMPEG2に出力したい場合も同様に、フィールド単位で処理ができないフィルタを使うと、
  PowerDVD、WinDVDのデインターレース処理を妨げる。(DVDデッキは不明)
  その6:DVD-Video用にフィールド情報を残したままのMPEG2を作る場合には、
  AviUtlのほとんどのフィルタが使用禁止である。(縦方向の圧縮や時間軸方向でライン情報を奪うものはダメ)



もどる



Internet Explorer5以上、横解像度800以上でのの閲覧を推奨します
jumper