掲示板お問い合わせランダムジャンプ

トップスペース

2010年06月26日
ガウスぼかしをシームレスな感じにできるようにした
 「ガウスぼかしフィルタ」を0.3.0にver upしました。
 AviUtl プラグイン フィルタ by うえぽん

 部分的にぼかすのはAviUtlのお部屋の「拡張編集Plugin」のみできるため、「ガウスぼかしフィルタ」の役目はほとんどなくなりかけてましたが、差別化ということでシームレスな感じにぼかせるようにしてみました。

 今までのタイプだとこのように境目がありました。
ガウスぼかし_従来タイプ

 [シームレスな感じにぼかす]をチェックするとこのように境目が目立たなくなります。
ガウスぼかし_シームレス

 これ以外にも頑張って速度アップとかしています。
 ちなみに。逆数の近似値(_mm_rcp_*で得られる値)をニュートン法で高精度化して除算命令の代わりに使うなんてこともしています。除算は遅いので速度アップの可能性がありますが、しかし、そもそも除算をあまり使わないので効果はあまりありませんでした。
 高精度化の方法ですが、A の逆数近似値を X とすると
 X = 2*X - A*X*X
 という計算でできます。
 _mm_rcp_*で得られる近似値の精度が11bit、高精度化で2倍の22bit精度になります。単精度浮動小数点の精度が23bitなので、だいたい同じ結果になります。

【関係ない話】
 南アフリカでは長居をしていると「ブブゼラでもいかがどす?」と言われる。
 喉が破裂するまでブブセるのが礼儀。
[ 投稿者:うえぽん at 15:06 | AviUtlや画像処理 | コメント(11) ]

この記事へのコメント
無題
こんばんわ
Blu-rayをエンコするために内部もBT.709色変換プラグインをいれてみたのですが、
いれたあとにDVDでEDがテロップ入りで60fpsエンコ、
ほかが24fpsでエンコしてMP4Exportで連結したあとに
音声と結合しようとしたのですが、Yamb、MP4boxで強制終了されてしまいます。
Blu-rayの同じような混合をやるときも同様です。
このプラグインを除いた状態のエンコだと落ちずにいけます。
原因がわかりますでしょうか?
DVDエンコのときは色変換入出力自動、BDは両方内部も~でやりました。
Aviutlはi6使用です。
投稿者: あきぽん at 2010-06-27 20:49:35
無題
確認していいですか?
強制終了するのはAviUtlではなく
AviUtlでエンコして出力したファイルを
YambやMP4boxで連結しようとするとMP4boxが強制終了するということでしょうか?
投稿者: うえぽん at 2010-06-27 21:08:27
無題
返事どうもです。
そうですね。出力したファイルを連結しようとしたときに強制終了してしまいます。
(OP+本編)24fps+ED60fps+次回予告24fps
の連結時で次回予告の部分にさしかかったところで落ちます。
投稿者: あきぽん at 2010-06-28 05:37:39
無題
エンコ自体は無事終了しているということは、"内部もBT709"が暴走してAviUtlごと強制終了しているわけではないようですね。

そういうエンコはしないので全然原因が分からないです。
エラーメッセージも出さすに強制終了しているのですよね? エラーメッセージが出ていればそれが原因だと思うのですが…。
とりあえずMP4Boxを他のバージョンにしてみたらどうでしょうか。
投稿者: うえぽん at 2010-06-28 07:01:25
無題
う~ん、そういうエンコやられないなら検証しようがありませんね…
とりあえずそういうふうに分割エンコで連結しなければ問題なさそうですのでこのままいくしかなさそうです。
返答ありがとうございました。

ところで、Blu-rayのエンコのときは入出力両方内部も~にする以外になんか設定しなければならないことがありますでしょうか?
色についてググってココにたどりついたわけですが、
ググった他のところに
avsにConvertToYUY2(interlaced=true)いれるという記事や、
x264設定に
nal-hrd --colorprim bt709 --transfer bt709 --colormatrix bt709
とかいれるという記事もあったのですが
どうすればいいかご教授していただければ幸いですm(__)m
投稿者: あきぽん at 2010-06-28 20:12:18
無題
なんのご教授もできないので、「内部もBT.709」がやってることを簡単に説明しておきます。

実はですが、YUY2の入出力でやってる処理は、拙作「RGB2YUY2(BT.601)」 とまるっきり同じだったりします。
違うのはRGBとYC48(AviUtl内部形式)の変換をBT.709で行うように係数を弄っただけです。

入力ではYUY2の8bitデータをYC48の約12bitにスケーリング(約16倍する)、
出力ではYC48の約12bitの数値をYUY2の8bitデータにスケーリング(約1/16倍する)、
という単純なことをやってます。
このときYUY2がBT.601だったら内部はBT.601になり、YUY2がBT.709だったら内部もBT.709になります。
ネーミングの由来はこれです。

こんな単純なことしかしていないのに、MP4Boxをクラッシュさせているとは思えないのです。
投稿者: うえぽん at 2010-06-28 21:51:52
無題
ちょっと不具合が発生したので報告せさて頂きます。
AviUtl0.99i8にガウスぼかしver0.3を導入した状態で、プロファイル編集した最後のフレームでノイズ除去(時間軸)フィルタを使用すると、AviUtlが処理をループさせてしまいます。
毎回発生するわけではありませんが、ガウスぼかしのフィルタ順序を初めの方に持ってきて、後ろで重たいフィルタを使っていると発生しやすいようです。
ver0.2は持っていないので確認できませんでした。
以前にもノイズ除去(時間軸)フィルタは、ある別のプラグインと使用するとフリーズを引き起こしたりしていたので、こちらのプラグインの問題かどうかはわかりませんが、確認して頂けると幸いです。
投稿者: bean at 2010-07-13 00:31:34
beanさん報告ありがとうございます
報告ありがとうございます。
まだ確認していませんが、あとで確認してみます。
投稿者: うえぽん at 2010-07-13 07:44:12
無題
偶然一回だけループを起こしました。
記憶が曖昧なのでガウスぼかしがONだったかOFFだったかさだかではありませんが、
動画の前半と後半で別のプロファイルにし、前半でノイズ除去(時間軸)をかけてプロファイルの切り替わるところへシークしたら無限ループを起こしました。

一応、ガウスぼかしフィルタも気になる箇所があるので修正してみます。
投稿者: うえぽん at 2010-07-14 07:23:59
ver0.3.1
ガウスぼかしを0.3.1に更新しました。
http://auf.jpn.xxxxxxxx.jp/
フリーズしにくくなったかもしれません。
投稿者: うえぽん at 2010-07-14 08:02:26
0.3.1で解決しました
0.3.1に更新したところ、今までループを起こしていたプロジェクトファイルは正常に編集できるようになりました。
素早く修正して下さり、本当にありがとうございます。
投稿者: bean at 2010-07-14 18:46:10

この記事の固定URL
http://shinshu.fm/MHz/14.30/archives/0000329525.html

記事へのコメント
 
簡単演算認証: 9 x 7 + 5 =
計算の答えを半角英数字で入力して下さい。
名前: [必須]
URL/Email:
タイトル:
コメント:
※記事・コメントなどの削除要請はこちら