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

トップスペース

2009年01月24日
「エッジをぼかす」をもっとアンチエイリアスっぽくしてみた
 AviUtlの自作プラグイン「エッジをぼかす」をより一層アンチエイリアスっぽくしてみました。いつものところにアップしてあります。

 AviUtl プラグイン フィルタ by うえぽん

 以前との違いは、斜め方向のエッジのみを処理できるようにしたことと複数回実行できるようにしたことです。これでもっとアンチエイリアスっぽくなったと思います。
 というわけでサンプル画像。上が元画像で下が処理後です。
アンチエイリアスもどき比較1

 小さくて分かりにくいので拡大。これも上が元画像で下が処理後です。
アンチエイリアスもどき比較2

 現在判明している欠点と課題は、細い文字が消えやすいことです。上の画像でも名前のところが少し薄くなってます。
【余談】
 サンプル画像を見れば分かりますが、シャイニング・フォースIIIのシナリオ2をやっとこさ買いました。某所で1900円なり。
[ 投稿者:うえぽん at 23:06 | AviUtlや画像処理 | コメント(6) | トラックバック(0) ]

この記事へのコメント
使わせていただきました。
はじめまして。AviUtlプラグイン探しで見つけて以来、ちょくちょく拝見させていただいている者です。

レトロゲー(?、自分は専らFC&SFCですが)+AviUtl系な辺りに引き付けられておりましたが、
この度はこの記事のサムネに自分のやりたかった処理、特に
“斜め方向のエッジのみを処理”
があって即DLさせていただきました。
早速いろんな動画に試したのですが、
14°固定という点にどうしても引っかかってしまい
(0°に近い斜め線こそドットが目立ってしまうのでAAをかけたい)、
衝動的に授業以外で初(?)のプログラミングをしてしまいました。
杜甫なレベルですが、次のソースのような感じになりました。
http://www1.axfc.net/uploader/He/so/187463.lzh&key=aa

ここでお伺いしますが、この改変?の取り込み&最適化&etc.をしていただくことはできますでしょうか?
理由としては、

・自分がプログラミングのど素人でサイトも持っていない
・これまでのAviUtlプラグイン探索の経験上、下手に作者ごとにVerが派生するのは、探す側でも作る側でも色々ややこしくなっているケースが多いので避けた方がいいように思った

といったところです。
ご意見をいただければ幸いです。
投稿者: 通りすがり at 2009-01-27 00:37:19
アンチエイリアス
通りすがりさんはじめまして。
フィルタをバージョンアップしました。

元々、角度を設定できるパラメータを設けようとは考えていたのですが、
検出閾値を緩くすれば同様の処理が可能と判断して固定にしてました。
実はこの角度は斜線の角度ではなく「エッジ強さベクトル」の角度なんですよね。
よく分からないパラメータを増やすのも難だと思ったので削除してました。
投稿者: うえぽん at 2009-01-28 01:06:34
無題
やはり自分がやった改変よりも
使いやすくなっているし、スマート(英語の意味)だし、DLLサイズも小さいし、
取り込んでいただいて正解だったと改めて思いました。

>元々、角度を設定できるパラメータを設けようとは考えていたのですが、
>検出閾値を緩くすれば同様の処理が可能と判断して固定にしてました。

これは色々試してみたんですが、
旧版で0°を除外しつつ、4°のような浅い角度までを強く検出というのは、
検出閾値だけを変えてもうまくできませんでした。

角度が調整できるVer0.4の仕様の方がうれしいです。



対応していただきまして、どうもありがとうございました。
投稿者: 通りすがり at 2009-01-28 21:25:01
無題
どういたしまして。
ただ心配なのは細かい文字が消えやすいことです。
原因は何となく分かっているのですが、解決方法はこれで良いのか? 他のもっと冴えた解決方法はないか? と悩んでます。

DLLが小さいのはデバッグ情報を削除しているからです。
後で気づきましたがgccのバージョンを2.95に変えたらもっと小さくなりました(速度も若干アップ)。
投稿者: うえぽん at 2009-01-29 23:02:47
無題
文字潰れは自分は覚悟の上で使ってますね。
文字の潰れ具合とアンチエイリアスを天秤にかけてます。

解決方法…あるんでしょうか? そのへんは自分はさっぱりわかりませんが。
ガウシアンフィルタみたいに特定箇所だけフィルタをかけるorかけないができたら、
本家の「拡張編集」プラグインと組み合わせてしまえば特定時間だけかけられるので、
それだけでもだいぶ違ってくると思いますけど。

>DLLが小さいのはデバッグ情報を削除しているからです。

・・・見事にリリースではなくデバッグで作ってました(そんな違いがあるんだったっけ・・・?)。
ちなみに自分は昔入れてたBorlandのフリーコンパイラで作りました。
適当に検索で引っかかったサイトにDLL作成解説があってすんなりと…。
作ってみたいフィルタはありますがハードルが高い・・・。
(間引いて1/2縮小フィルタの解説にでたバーチャみたいなインタレ物を、トップフィールドとボトムフィールドを両方ともフレームに置き換えて、縦解像度半分、fps倍にするフィルタです(横解像度は後から自分の好きなフィルタで縮小)・・・「60fps読み込み」を利用すればいけそうと睨んでますが、SDKや「フィールド分離」フィルタのソースを読んでも何が何だかサッパリ・・・)

>後で気づきましたがgccのバージョンを2.95に変えたらもっと小さくなりました(速度も若干アップ)。

速度アップ・・・えぇと・・・4.1でアップしていただけませんか?
投稿者: 通りすがり at 2009-01-30 03:24:27
無題
>速度アップ・・・えぇと・・・4.1でアップしていただけませんか?

本当に若干で、ベンチマークで2.875秒だったのが2.850秒になっただけだったりします。
今は実験のためソースをいじくっているので2.9秒台に落ちてます。
でもgccのバージョンを下げる意味が全くに訳ではなく、他のフィルタ(非公開のもの)では結構速くなってました。


>「縦解像度半分、fps倍にするフィルタ」

fpip->frameで現在のフレーム番号を取得できるので、偶数・奇数で分けてやれば良いと思います。
投稿者: うえぽん at 2009-01-30 23:51:14

この記事へのトラックバック

この記事へのトラックバックURL
http://shinshu.fm/MHz/14.30/a13493/0000268833.trackback

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

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