はじめに

前回は「画像の拡大・縮小・回転」について学びました!
シンプルな拡大・縮小方法では、画質が粗くなってしまいました。

簡単なぶん、見た目は良くない感じでしたね。
今回は綺麗に拡大・縮小ができるバイリニア補間について説明するよ!

バイオリニスト?オカ先生ってバイオリンも弾けるんですか!?

ちょっとおしいけど、バイリニアです。
聞き慣れないから仕方ないけど、しっかり画像処理について学んでいきましょうね!
画像の補間とは
画素の補間とは、隣接する画素間の画素値を計算によって求める画像処理のことです。
補間を行うことで、「画像C」や「画像E」のように拡大・縮小しても滑らかな画像をつくることができます。

図は補間方法のひとつであるバイリニア補間を簡単に説明したものです。
黄色で示した画素A・Bは横方向に2倍拡大する場合の補間対象となる画素で、この画素A・Bの値を元々の両隣の画素値を用いて計算します。
バイリニア補間ではこれらの補間を縦横方向に行います。

縮小する場合も同様に、元々の画素値を用いて計算し画素A・Bを求めます。

補間画素に掛ける数値(重み)は画素間の距離に応じて変化し、元々の画素と近いほど数値を大きく、遠いほど小さくします。

このような補間によって、拡大・縮小後の画素間の差が滑らかになることがわかります。

補間ありの拡大・縮小をやってみよう
色々な画像に補間ありの拡大・縮小をかけてみましょう。
前回は真っ白になった「画像F」の縮小では、白(255)と黒(0)が綺麗に混ざり合ってグレー(128)になりました。
拡大した「画像H」は、白と黒の境界が滑らかになったことがわかります。

最後はハスのカラー画像を使って補間ありの拡大・縮小をかけてみます。
拡大した「画像K」では多少粗さは残るものの、縮小した「画像J」に関しては綺麗に仕上がりました。

まとめ

前回と違って処理後の画像が平滑化フィルタをかけたように滑らかになりました!

縦横方向の拡大・縮小や回転させたときの補間は更に計算が複雑になるので、参考書を読んで勉強してみてね!

わかりました!
けど、説明が難しい部分は参考書におまかせってスタイル、以前にもあったような・・・。

おっと、、、。
それにしても今回のムラ太くんの理解と気づきは素晴らしかったですよ!めでたしめでたし!

(あっ、強引に流された。)
-
画素の補間とは存在しない画素の値を計算によって求める処理である。
-
補間処理によって滑らかな拡大・縮小画像をつくることができる。