[scikit-image] 44. テンプレートマッチングによる画像識別(skimage.feature match_template)

python
スポンサーリンク
スポンサーリンク

はじめに

ここでは、skimage feature match_templateによりテンプレート画像と一致する部分を画像中から検出した例を示す。

スポンサーリンク

コード

コードをダウンロード
スポンサーリンク

解説

モジュールのインポート

画像データの読み込み

昨年、種まきしたストロンギロゴナムの現在(2019年9月)の画像を使用する。グレースケールとし、所定の位置で苗を切り取る。

テンプレートマッチング

imageの中のsabo(template)に該当する部分を求める。結果は相関係数の画像として得られる。相関係数が最も高いものが一致が良いことになる。

unravel_indexによって、np.argmax(result)のresult.shapeにおけるインデックスを求める。

画像の表示

plt.Rectangle((x, y), wsabo, hsabo, edgecolor=’green’, facecolor=’none’)によって、テンプレートと一致する座標を中心として、テンプレートと同じ縦横サイズの四角を描写する。

ax3.plot(x, y, ‘o’, markeredgecolor=’green’, markerfacecolor=’none’, markersize=10)により、相関係数像の最も高い部分に丸を表示している。
他の苗も似ているため、相関係数の値は高くなっている。

スポンサーリンク

参考

Template Matching — skimage v0.15.0 docs
Module: feature — skimage v0.15.0 docs
numpy.unravel_index — NumPy v1.10 Manual
にほんブログ村 IT技術ブログ Pythonへ
にほんブログ村 IT技術ブログへ

コメント