ホームへ戻る 更新履歴へ戻る 感想お待ちしてます(^^)/

(2002/11/15)
★冬コミ
扉ページの通りです。
とりあえず、満月をさがしてネタで一作出るのは決定……と言うか、CG終わって、もうすぐマスターアップです。
あとあ、ミュウミュウ、GA、オリジナルも描きたい(^^;
サボっていたツケで描きたいネタが貯まってます(^^;

★アニメキャプ、エンコ
7/13の日記の続き。
Avisynthのスクリプト、ゴースト除去@Avisynth、ゴースト除去@aviutlの三本でお送りします。んがんんっ。

★Avisynthスクリプト
なんか、Avisynth方面、すごい勢いで成長してますね(^^;
エンコマシンを新調した事もあって、エンコ速度に余裕が出来た分、画質重視で使うフィルターも変わってきました。
まぁ、手っ取り早く、スクリプト晒し。

#準備:warpsharp.dll
LoadPlugin("D:\avisynth\plugin\warpsharp.dll")
もはや必需品。いっちゃん最初に定義。

#MPEG2ファイル読み込み:mpeg2dec.dll
LoadPlugin("D:\avisynth\plugin\mpeg2dec.dll")
MPEG2Source("cap.d2v")
絶対パスじゃなくてもOKなのに気付きました(^^;
AVSPreviewが絶対パスじゃないと駄目なのが惜しい……まぁ、ちょっとパスを書くだけで済むのですが(^^;
色々とGUI環境も出て来ているみたいですが、テキストエディターで数値をいじくって、VirtualDubにぶち込み、即エンコ開始!(^^;
パラメーターの変える所、使う値が大体決まっているので、ソース見て勘です(^^;
MPEG2ソース読み込みプラグインでは、MPEGDecoder試してみたいなーとか思ってます。速いって噂なので。

#ゴースト除去:EraseGhost&同V(warpsharp.dll)
EraseGhost("y",3,127,0,-88,21,-25)
EraseGhostV(230, "k:\GhostV.tmp")
以前はaviutlでやっていたのですが、とうとうAvisynthにも、待望のゴースト除去フィルターが出てくれましたヽ( ̄▽ ̄)ノ
Avisynthの唯一の弱点だと思っていたのですが、今ではゴースト除去するならAvisynthって感じです。
速いし使いやすいヽ(´ー`)ノ
EraseGhostVの230ってパラメーターは、256でも良い気がしますが何となく(^^;

#ドット妨害除去:De.dll
LoadPlugin("D:\avisynth\plugin\De.dll")
DeDot(10,40,100,5)
DedotAを試しましたが、Dedotの方が、副作用がでないギリギリの線を狙いやすいと思います。
と言いつつ、この値だと、ソースによっては副作用出てました(^^;
まぁ、コマ送りでもしないとわからん程度なので、そのまま(^^;
あと、Dedotで取れないドット妨害にはGuavaComb.dll試してみましょう。取れるドット妨害の種類が違うって感じでした。なんか副作用があった気がしたけど……ちょっと実験してみた程度なので忘れました(^^;

#インターレス解除:IT.dll
LoadPlugin("D:\avisynth\plugin\IT.dll")
IT(fps = 24, ref = "TOP", blend = false)
24fps化もしてくれるので0.03から0.04にしました。
0.05にしなかったのに、何か理由があったかな……うぐぅ思い出せない(^^;
まぁ、問題ないので0.04のまま。
Auto24FPSが主流みたいですが、どうもうちではうまく行かない時が多くて。
24・30fps混合ソースでも面倒なので120fps化せずに、全編24or30fpsで済ませているのですが、この場合、ITが一番得意だと思います(^^

#色タイミング補正:UVTimingH
LoadPlugin("D:\avisynth\plugin\uvtiming.dll")
UVTimingH(4,0,False)
新投入。
地上波専用。ビデオのチューナーがヘボいので(T-T

#画面サイズ・拡大縮小:lanczos3.vdf
LoadPlugin("D:\avisynth\plugin\lanczos3.vdf")
Lanczos3Resize(676,492)
BilinearResize(Avisynth標準)から変更。
んー、720x480からのリサイズなんだけど、この程度のサイズ変更ではBilinearResizeでも変わらない気が(^^;
まぁ、速度さも気にならないし、理論的に綺麗らしいし、ブラシーボ効果フィルターって事で(^^;

#2Dノイズ除去:_2DCleanYUY2
LoadPlugin("D:\avisynth\plugin\_2DCleanYUY2.dll")
_2DCleanYUY2(0,2,2,2,0,2,2)
(0,●,2,2,0,2,2)→●の位置のパラメーターだけで、調整してます。……と、前の日記からコピペ(^^;
パラメーターを見直して、潰れやすそうなソースの時、実写の時は使わない。(0,2,2,2,0,2,2)が俺標準。最高でも(0,4,2,2,0,2,2)にしました。
潰れるなら、ノイズが残っていた方が良いって方針に。
重いので代替フィルター模索中(^^;

#シャープ:unsharpMask(warpsharp.dll)
UnsharpMask(strength=20, radius=3, threshold=5)
前の日記ではstrength=80でした(^^;
リンギングが出るくらいシャープなのが好きなのですが、他でファイルサイズが増える原因が出来てしまったため、最高で30くらい。使わない時もありって感じです。
warpsharpは使わなくなりました。2DNRを弱めたのもそうですが、元の絵をなるべくいじらないって方針で。
Blurも使わなくなりました。ぼかすくらいなら、ファイルサイズでかくなっても良いやって事に。

#色調補正フィルタ:ColorYUY2.dll
LoadPlugin("D:\avisynth\plugin\ColorYUY2.dll")
ColorYUY2( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -20 )
バージョンを最新のにしました。
パラメーターはタイトルごとに一律って感じ。

#画面サイズ・クリッピング:crop(avisynth標準フィルタ)
crop(16,6,640,480)
変わらず。タイトルごとに一律って感じ。

#3Dノイズ除去:Convolution3D.dll
LoadPlugin("D:\avisynth\plugin\Convolution3D.dll")
Convolution3d (preset="animeHQ")
Temporalsoften2から変更。
エンコ時間が3割り増し、ファイルサイズが1割り増しくらいになりましたが、soften2に比べると苦手が少ないと思います。
ちょっと前のバージョンだと激重でしたが、速くなってくれたので、手の平返したように使用してます(^^;
この速度差でこの画質なら、もうsoften2を使う理由はないんじゃないかと思います。
まぁ、速ければ速いほど、ファイルサイズが縮めば縮むほど良いので、これで固定って事はないと思いますが……って、全部に言える事ですが。
3DNRはGrapeSmoother.dllも試してみましたが、速いけどsoften2と同じ「もやもや傾向」で、更に残像が出やすい副作用がありましたので使うのを止めました(^^;

以上です。
エンコ時間はXP 1800+で2時間30分って所。
画質を求めた分、ファイルサイズは上昇傾向(^^;
コーデックは、XviDはBフレームが安定するまで様子見しているので、DivX5.02オンリーな状況です。
200MB以内を目標にしていますが、1PASS-QB90%、シャープを使わないを画質の下限に、それでも縮まない場合、ファイルサイズは気にしないって事にしました(^^;

★ゴースト除去@Avisynth
文字だけでご勘弁を〜(^^;

ゴースト除去って、重ね映りのゴースト除去→重ね映りのゴースト除去後の画像から縦線ゴースト除去……の手順が効率良いと思います。
重ね映りのゴースト除去の行程で、余計な縦線ゴーストを作ってしまう事がありますが、まずはそれを気にせずに重ね映りを除去。後でまとめて、縦線を除去って具合です。

aviutlだと重ね映りも縦線もあるのですが、各々が大元の画像から除去しようとするため、除去に除去が重なって、余計なゴーストになってしまいます。
回避策もあるのですが、結構手間でして。

Avisynthのだと、重ね映りのゴーストを除去した状態の画像を元に、縦線ゴースト除去が出来ます(^^
まぁ、普通に通りの手順でやれば良いので、特に説明は無し(^^;
わからないって人は、こちらの「ゴースト除去フィルタについて」を見ておきましょう。
aviutlとTMPGencの例ですが、2種類のゴースト除去方法が理解できると思います。

EraseGhostですが、aviutlでは出来ない左ゴースト除去にも対応している、256ピクセル以上動かせるのが◎。
aviutlをGUIして設定できるのですが、付属のEraseGhost.auf.avsのままだと、±256ピクセルまでしか位置を動かせません。
キャプサイズ上限に変えてしまいましょう。
私はいつも720x480でキャプっているので、
> func.AddTrack("位置", 0, -256, 256, -256.0, 256.0)
の行を全て、
> func.AddTrack("位置", 0, -719, 719, -719.0, 719.0)
に書き換えています。
あと、VirtualDubのみたいに、重ねる時の「ぼかし」が欲しい。
それと位置を0.1ピクセル単位にするのは無理かな?(^^;
たまに、どっちにしようかなーと1ドットに悩みます(^^;

★ゴースト除去@aviutl
すぐ上のコピペですが、重ね映りのゴースト除去→重ね映りのゴースト除去後の画像から縦線ゴースト除去……の手順が効率良いと思います。
重ね映りのゴースト除去の行程で、余計な縦線ゴーストを作ってしまう事がありますが、まずはそれを気にせずに重ね映りを除去。後でまとめて、縦線を除去って具合です。

aviutlには、重ね映りゴースト除去(外部フィルター)も、縦線ゴースト除去(標準フィルター)もあるのですが、各々が大元の画像から除去しようとするため、除去に除去が重なって、余計なゴーストが増えてしまいます。
これを避けるためには、少々応用が必要です。

まずは、aviutl標準のゴースト除去で、重ね映りのゴーストを除去。
「連番BMP出力プラグイン」で、縦線ゴーストに使えそうな単色面積が広い1フレームを出力。
(出力されたBMP画像は、重ね映りのゴーストフィルターの効果が有効になってます。単に「現在のフレームをクリップボードにコピー」では、フィルターは反映されませんので、連番BMP出力プラグインを使っています)
そのBMP画像をペイントツール(Windows標準のペイントで十分)で表示。
全選択してコピー。
aviutlに戻って、後でカットしそうな切り捨てるフレームに移動して「現在のフレームにクリップボードから貼り付け」。
コピペしたフレームを使って縦線ゴースト除去設定。

これで、重ね映りのゴースト除去後と縦線ゴースト除去を両方とも活かせます。

以上です
むー、忙しいってのに、気付くと長文(^^;
忙しいのでツッコミは受けますが、質問は却下にて(^^;
ツッコミは、メールよりこちらに希望→ぷちっとな

ホームへ戻る 更新履歴へ戻る 感想お待ちしてます(^^)/