例: 2 次元相関とプロトタイプの一致
2 次元カーネルと空間領域内の画像の相関を示します。
興味深いカーネルの一つに、平滑化効果を生成するガウスカーネル法があります。
この例の使用方法については、
画像処理の例についてを参照してください。
2 次元相関
3. カーネルの範囲と関数を定義します。
4. 5 x 5 のカーネル行列を計算します。
このカーネルは対称であるため、効果は、逆転したカーネルとの相関と等価であるコンボリューションと同じになります。
5. スケール係数 mcscale を定義します。
6. 相互相関を計算して、結果を 0 から 255 の 8 ビットグレースケールにスケールします。
7. WRITEBMP 関数を使用して、結果をファイルに保存します。
8. 元の画像および元の画像とカーネルの相関をプロットします。
(greyscale_dog.bmp) | (dog_cross.bmp) |
プロトタイプの一致
1. READ_IMAGE 関数を使用して、新しい画像を読み取ります。
2. WRITEBMP 関数を使用して、結果をファイルに保存します。
(peas_carrots.bmp)
選択操作により、標準的なニンジンをテンプレートとして選びます。
3. テンプレートの高さと幅を定義します。
4. 関数
val を定義し、
matrix関数内で使用してテンプレートを作成します。
5. テンプレートとニンジンの画像をプロットします。
(template.bmp) | (carrot.bmp) |
6. 相関のしきい値を定義します。
7. 選択したニンジンと同じサイズの一様テンプレートか、選択した標準的なニンジンの画像自体を使用して、一致する数を計算します。
グリーンピースの大半が無相関のしきい値により黒く塗りつぶされ、ニンジンの大半がまだ表示されています。元の画像と一様密度の矩形テンプレートとを比較し、このランダムなサンプリングで冷凍のミックスベジタブルの袋からニンジンが大まかに選出されます。
8. 元の画像内のニンジンの割合を概算します。
この方法は、バクテリアの数を数えたり、画像要素の割合を推定するのに役立ちます。