画像処理 ~ 補間方法について ~

■ はじめに

 * 以下の関連記事の続き。今回は、補間方法。
画像処理 ~ 幾何補正について ~
https://blogs.yahoo.co.jp/dk521123/38073336.html

■ 補間 / 内挿(ないそう) /再配列(リサンプリング)

`#`補間方法
1最近傍補間(ニアレストネイバー)NN法(Nearest Neighbor)
2双一次補間(バイリニア補間、共1次内挿法、線形補間法)BL法(Bi-Linear)
3双三次補間(バイキュビック補間、3次補間法、3次畳み込み内挿法)CC法(Cubic Convolution)
https://imagingsolution.net/imaging/interpolation/
http://hp.vector.co.jp/authors/VA017815/imagekouza4.htm
http://www.is.kochi-u.ac.jp/kyoko/edu/image/8.html
https://viewtleaf.exblog.jp/1419276/

【1】最近傍補間 (Nearest Neighbor interpolation)

https://algorithm.joho.info/image-processing/nearest-neighbor-linear-interpolation/
http://hp.vector.co.jp/authors/VA017815/imagekouza4.htm
http://www7a.biglobe.ne.jp/~fairytale/article/program/graphics.html#nearest_neighbour
 * 新座標系の画素の位置に最も近い旧座標の画素の値をそのまま用いる
  => 簡単に言うと、座標を四捨五入し、その画素を補間していく

利点

 * 元の画像の画素値が維持される
 * 処理速度が非常に高速

欠点

 * 画像の滑らかさに欠ける
  => 拡縮した場合に、画質が劣化する

実装例

 * C# によるサンプルは、以下の関連記事を参照のこと
C#】画像処理 ~ 幾何補正 / 2次元アフィン変換編 ~
https://blogs.yahoo.co.jp/dk521123/38069294.html

【2】双一次補間 (Bi-linear interpolation)

https://algorithm.joho.info/image-processing/bi-linear-interpolation/
 * 新座標系の画素の位置に対して、周囲4格子の旧座標の画素の値から算出する

利点

 * 最近傍補間よりも滑らかな画像が得られる

欠点

 * 元の画像の画素値が維持されない

【3】双三次補間 (Bi-cubic, Cubic Convolution interpolation)

https://algorithm.joho.info/image-processing/bicubic-interpolation/
 * 新座標系の画素の位置に対して、周囲16格子の旧座標の画素の値から算出する
 * 周囲格子点を用いて3次式にて補間する

利点

 * 双一次補間よりも滑らかな画像が得られる

欠点

 * 元の画像の画素値が維持されない

関連記事

画像処理 ~ 幾何補正について ~

https://blogs.yahoo.co.jp/dk521123/38073336.html

C#】画像処理 ~ 幾何補正 / 2次元アフィン変換編 ~

https://blogs.yahoo.co.jp/dk521123/38069294.html

C#】画像処理 ~ 幾何補正 / 擬似2次元アフィン変換編 ~

https://blogs.yahoo.co.jp/dk521123/38106095.html