【画像の再構成理論①】〜手ブレ、ピンボケ〜

今日は画像の再構成についてご紹介します。理論的なアプローチなので数式が少し出てきますが、行列計算くらいなので恐れず読んでくれると嬉しいです。

今日は画像の再構成についてお話したいと思います。理論的なアプローチなので数式が少し出てきますが、行列計算くらいなので恐れず読んでくれると嬉しいです。
画像の再構成とは計測された画像を数学的なアプローチによって上手に復元する方法です。
ケータイの写真などで画像を撮影したとき、手ブレやピンボケが入ることがあると思います。これを元どおりに戻す方法が画像の再構成と呼ばれる手法です。例えば以下のような風景の画像を考えてみましょう。

この画像が撮影者のミスによって、手ブレなどの変化が起きてしまったらどのようになるでしょうか。
ここで、フーリエ変換という方法によって、この手ブレという操作を再現させます。(これの理論についてはまた詳しく説明します)右上の手ブレを起こさせたい場合、上の画像をFijiで起動して、まず8bitに変換しておきます。そしてこれから使うFFTは高速フーリエ変換の略で、画像のサイズが2の倍数でないと実行できないので、画像サイズを(512,512)または(256,256)にしておきます。画像を切り出すときにはImage -> Adjust -> Canvas Size から設定してください。
次に、上の画像と同じサイズの以下のような画像を用意します。勘の良い人は気づくかもしれませんが、この白線が手ブレを表しています。

Process -> FFT -> FDMath により風景の画像と手ブレを起こさせたい画像とを Convolveにして選択し実行すると以下のようになります。

このような操作で手ブレが表現できるのは意外ですね!FDMathではフーリエ変換のたたみ込みの操作をしており、このような簡単な操作で画像の手ブレを起こすことが可能です。
次にもう少しわかりやすくするため、以下のような画像を考えます。

真ん中に白い正方形の入った画像

これに以下の画像をたたみ込むと手ブレの画像が得られます。

手ブレの影響を与える画像とたたみ込んだ結果

以下の画像ではピンボケ画像が得られます。

ピンボケの影響を与える画像とたたみ込んだ結果

画像の再構成とは、この手ブレ画像、ピンボケ画像からもとの画像を復元することを言います。
え、こんなの可能なの?って疑問に思う方もいらっしゃると思いますが、手ブレ、ピンボケ画像からもとの画像を得ることは可能です。現実ではノイズなどの影響により完全に復元することは不可能ですが。



今回の記事では、それを詳しく説明するために、手ブレ、ピンボケの画像を定式化することを考えます。

以下のような3 x 3 ピクセルの画像の画素値が手ブレによって右のような画素値になったとします。

上のモデルでの手ブレ画像の次元が少なくなったモデルと考えてもらって結構です。

このように変化したとします。これをなんとか定式化したいですね。ここで行列を使って、この手ブレを表現します。左上の画素値をベクトルの第一成分にとり、そこから順番に1,2,3、次に2段目に移り4,5,6、最後に3段目に移り7,8,9とすると、9個の成分でこの画像を記述していることになります。この変化は行列を使って記述することができるのですが、ここでは省略します。また別の記事で紹介しようと思います。

今回の例では境界上の作用や中心部分の画素値の変化を考えていないのですが、これらはたたみ込みについてお話するときにまた詳しく説明したいと思います。ひとまず画像処理が大規模な行列の計算によって行われていることがお分かりいだたけたら結構です。