関数 > 画像処理 > エッジ検出 > 例: 行勾配と列勾配
例: 行勾配と列勾配
rowgrad関数とcolgrad関数を使用して、隣り合う行または列どうしを引くことによって、画像行列内の行勾配または列勾配を求めます。どちらの関数でも、出力行列にはゼロに設定された未定義の行または列が 1 つあります。
これらの関数は、画像行列の行勾配または列勾配を求めることによって、水平または垂直いずれかのエッジを検出します。エッジ検出を行うことで、境界に依存する特定のタイプの特徴の判読率を向上させることができます。これらの関数によってエンボス効果ももたらされます。
rowgrad 関数は、画像行列内の隣接する行同士を減算して出力行列を生成します。1 つ目の行はゼロです。
クリックしてこの式をコピー
クリックしてこの式をコピー
colgrad 関数は、画像行列内の隣接する列同士を減算して出力行列を生成します。1 つ目の列はゼロです。
クリックしてこの式をコピー
この例の使用方法については、画像処理の例についてを参照してください。
1. 画像を読み込みます。
クリックしてこの式をコピー
(pattern.bmp)
2. rowgrad 関数と colgrad 関数を適用します。
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
クリックしてこの式をコピー
3. 生成された画像を元の画像と比較します。
(pattern_row.bmp)
(pattern_col.bmp)
rowgrad は画像の水平エッジを検出し、colgrad は垂直エッジを検出します。
これは役に立ちましたか?