2009-12-10 32 views
9

イメージにモーションブラー/カメラブレがある場合、ファジーの真偽を返すアルゴリズムを知っている人は誰ですか?画像にモーションブラーを検出できるアルゴリズムまたはライブラリがありますか?

モーションがぼやけているのが理想的です。この画像の多くは、背景がぼやける(Bokeh)ことがあります。

言語の設定は、C、Perl、Shell Utility、Pythonのいずれかになりますが、私は本当に何かを開いています。

数学/プログラミングの私の現在の知識では、私はいくつかのパラメータを取るものを使用して、私は本当にこのようなアルゴリズムを書くの希望を持っていないと思う...

+0

可能であれば、回答を受け入れてください。彼らが目的に合っているかどうかは不明です。 –

答えて

4

Discrete wavelet transformは、このような検出に有用なツールである。 Hereは、カーネギーメロンコンピュータサイエンス学部の論文で、DWTを使用して画像のぼけを検出し定量化しています。バイナリ決定の場合は、希望のレベルとその上のすべてがぼやけているすべてのレベルにしきい値を設定します。

+0

これは便利ですが、紙に明示的に「焦点が合っていないブラーとリニアモーションブラーの両方に効果的です」と明記されています。つまり、特にモーションブラーの検出にはあまり役に立ちません。 –

+1

@JoshBleecherSnyder Out of -focus blurは指向性ではなく、linear motion blurは指向性ではありません。プリンシパルコンポーネント分析を実行して、ブラーの特徴的なエッジポイントの方向ベクトルの固有値を取得し、優勢なものの強度を評価することができます。特定のしきい値を超えている場合は、ぼかしは方向性があり、直線的なモーションブラーと判断できます。 – luvieere

+0

ありがとう、それは役立ちます。 –

2

これを行うには、複数の方法があります。おそらく、ここのイメージングの達人の一人がはるかに良い答えを持っています。とにかく...

私の最初のショットは、画像の周波数解析をすることです(2次元フーリエ変換を読む)。次に、真/偽についての高周波数(すなわち、あるピクセルから次のピクセルへの急速な変化)の閾値を定義する。モーションブラーは高周波をフィルタリングします。あなたの走行距離は異なる場合があります。完全に黒い画像は、ぼやけていないにもかかわらず高い周波数を持たない。使用するレンズや絞りによっては、背景がぼやける場合があります。私はここにワンサイズのソリューションがあるとは思わない。

+0

ボケのぼかしとモーションブラーを区別する方法は? –

0

Richardson-Lucyアルゴリズムを使用することもできます。これは主にブラインド逆畳み込みに使用されますが、除去する必要があるモーションブラーであることがわかっているので、RLアルゴリズムは実行可能な再構成を計算するために必要な反復回数が少なくてすみます。

関連する問題