逆フィルターを使用して空間的にたたみ込まれた画像を補正する(デコンボリューション)
宿題の一環として、逆フィルターを実装しています。画像を劣化させ、逆フィルターで回復します。 5x5ボックスフィルターを使用して空間領域で画像をたたみ込みます。IフィルターをFFT、劣化画像をFFTし、劣化画像をフィルターで除算します。結果を画像に逆FFTすると、ゴミが発生します。 画像をFFTする場合、フィルターをFFTし、2つを乗算し、その結果をFFTフィルターで除算すると、元の画像に非常に近くなります。((X * Y)/ Y〜== X) 数学は「空間畳み込み== FFT乗算」ほど単純ではありません。 逆フィルターを使用する正しい方法は何ですか?使用されている正確なカーネルでイメージを劣化させています。ノイズを加えていません。 Bovikの教科書「画像処理の基本ガイド」では、ほぼ完全に逆フィルターを無視しています。Gonzalez&Woodsはもう少し希望がありますが、ほとんどすぐにウィーナーフィルターにスキップします。 私はstackoverflow.comで同様の質問をしてい ます/programming/7930803/inverse-filter-of-spatially-convolved-versus-frequency-convolved-image (この質問にも[宿題]のタグを付ける必要がありますが、タグはまだ存在せず、作成する担当者もいません。) 編集。以下のいくつかの素晴らしい提案について。@ dipan-mehta FFTを行う前に、畳み込みカーネルを画像と同じサイズにパディングしています。カーネルを左上に配置しています。次にifft(ifftshift())を画像に保存すると、良い結果が得られます。カーネルとイメージの両方でifft(ifftshift())を実行しました。良い(ish)結果。(画像は私の/programming/7930803/inverse-filter-of-spatially-convolved-versus-frequency-convolved-image質問にあります。) @ jason-rはおそらく正しいでしょう。基礎となる畳み込み+変換の数学を理解していません。「デコンボリューション」は私にとって新しい言葉でした。まだ学ぶべきことがたくさんあります。助けてくれてありがとう! 宿題の私の解決策は、周波数領域ですべてを行うことです。教授と話をした。私は必要以上に割り当てを難しくしていました。彼女は、ノイズを追加してから、逆フィルター、ウィーナーフィルター、および制約付き最小二乗フィルターを試してみたかったのです。演習のポイントは、フィルターがノイズをどのように処理するかを確認することでした。