スポンサーサイト

 --, -- --:--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ソフトウェア - シーンチェンジ検出 for Avisynth v0.3

 17, 2013 21:52
シーンチェンジ検出のバージョンアップです。
今回の v0.3 は、キーフレームリストの出力と、Debug モードを追加実装しました。
従来の機能は仕様変更ありません。


① キーフレームリスト出力
x264 でエンコードする際、I フレームの挿入の決断は --scenecut オプションで調整しますが
--qpfile オプションを利用し、フレーム番号を直接指定して I フレーム化する方法もあります。
その I フレーム指定をするテキストファイルを自動で書いてしまおうという発想です。


AutoFrameDifference.exe {省略} --qpfile キーフレーム.txt

x264.exe {省略} --qpfile キーフレーム.txt --scenecut 1



閾値デフォルトの 10 にして検索すると、余分なフレームも拾ってしまう確立が高いので
検出数が多すぎる場合は、閾値を下げるか、skip_min の値を増やして、最小間隔を調整してください。

テストをしていて気付きましたが、画面スクロールは誤検知し易いようなので、そういった動画は閾値を 20 以上くらいにすると、概ねシーンチェンジフレームだけを拾ってくれると思います。

また、終始落ち着いた動画で、場面転換が明らかに少ないものに関しては、閾値を弄らずに skip_min を増やしたほうが正確なフレームを拾うかもしれないです。


② デバッグモード
設定した閾値に対して、実際どのフレームを検出したのかをプレビューできるモードです。
AvsP のプレビュー機能を使用することを想定しています。


Import("AutoFrameDifference.avsi")

v =MPEG2Source("xxx.d2v")
a =bassAudioSource("xxx.aac")
AudioDub(v, a)

IT(fps=24)

AutoFrameDifference(logfile="xxx.log", threshold=10, debug=true)

return last


こうすることで、検出されたフレームの直前 ( シーンの最終フレーム ) の左上に、「 scene last frame 」と表示されます。
これが必要以上に表示される場合は、閾値 ( threshold ) を上げてください。
そうすることで、より変化の激しいシーンのみ検出されるようになります。

23965.jpg


I フレームの数は、エンコードログを参照すると分かりますので、独自に調整して精度を上げてみてください。


x264 [info]: frame I:466   Avg QP:20.73  size: 60845
x264 [info]: frame P:8101 Avg QP:23.35 size: 12562
x264 [info]: frame B:25672 Avg QP:27.28 size: 2165





関連記事
ソフトウェア - シーンチェンジ検出 for Avisynth v0.4
雑記 - 2013Q2 シーンチェンジ検出のテスト結果
ソフトウェア - シーンチェンジ検出 for Avisynth

ダウンロード
シーンチェンジ検出_for_Avisynth_v0.3.zip



引用元:TVアニメ「変態王子と笑わない猫。
©2013 さがら総・メディアファクトリー/「変猫。」製作委員会
スポンサーサイト

Tag:Iフレーム キーフレーム 自作 Avisynth シーンチェンジ検出 AutoFrameDifference 変猫 変態王子と笑わない猫。

COMMENT - 0



WHAT'S NEW?

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。