このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Template Matching
イメージ内でのテンプレートの検出
ライブラリ:
Computer Vision Toolbox /
Analysis & Enhancement
説明
Template Matching ブロックは、入力イメージ内でテンプレートの最適一致を見つけます。ブロックは、関心領域またはイメージ全体でテンプレートをシフトして一致メトリクス値を計算し、最適一致の位置を計算します。
ブロック出力は、一致メトリクス値またはテンプレート最適一致の 1 ベースの (x,y) 座標を出力します。ブロックは、オプションで最適一致の位置を中心とする一致メトリクス値から成る N 行 N 列の行列を出力できます。
端子
入力
I — イメージ
イメージ
テンプレートと共に使用する入力イメージ。ブロックは入力データをパディングしません。したがって、計算できるのは入力イメージとテンプレート間の一致メトリクスの値のみであり、テンプレートは入力イメージ全体に収まるように配置されます。テンプレートのこのようなすべての位置セットは、入力イメージの "有効な" 領域と呼ばれます。有効な領域のサイズは、入力イメージとテンプレート イメージ間のサイズの差分に 1 を加えた値です。
sizevalid=sizeinput – sizetemplate+1 | (1) |
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
T — テンプレート
M 行 N 列の行列
テンプレート。M 行 N 列の行列として指定します。
Template Matching ブロックは入力データをパディングしません。したがって、計算できるのは入力イメージとテンプレート間の一致メトリクスの値のみであり、テンプレートは入力イメージ全体に収まるように配置されます。テンプレートのこのようなすべての位置セットは、入力イメージの "有効な" 領域と呼ばれます。有効な領域のサイズは、入力イメージとテンプレート イメージ間のサイズの差分に 1 を加えた値です。
sizevalid=sizeinput – sizetemplate+1 | (2) |
データ型: single
| double
| uint8
| Boolean
| fixed point
ROI — 関心領域
4 要素のベクトル
(x,y,width,height) 形式の関心領域のベクトル。ここで、(x,y) は、領域の左上隅の 1 ベースの座標です。ブロックは、入力イメージの左上隅に対する最適一致位置のインデックスを出力します。
データ型: single
| double
| uint8
| Boolean
| fixed point
出力
Metric — 一致メトリクス値
行列
一致メトリクス値の行列。一致メトリクスの行列は常に、シングルステップの網羅的なウィンドウの反復を実装します。したがって、ブロックは、ピクセルごとにメトリクス値を計算します。
依存関係
[出力] パラメーターを [メトリクス行列]
に設定すると、ブロックは有効なイメージ サイズを出力します。
データ型: single
| double
| uint8
| Boolean
| fixed point
Loc — 最適一致の位置
2 要素ベクトル
1 ベースの (x,y) 座標にあるテンプレート最適一致。ROI 処理モードの場合、ブロックは ROI 周囲のイメージを ROI の部分領域の拡張として扱います。このため、ROI の実際の境界に対して真の最適一致位置が計算されます。ブロックは、イメージの左上隅に対する最適一致の座標を出力します。位置の 1 ベースの [x y] 座標は、テンプレートの中心に対応します。次の表は、ブロックが奇数と偶数のテンプレートの中心座標をどのように出力するかを示します。
テンプレート内のピクセル数が奇数の場合 | テンプレート内のピクセル数が偶数の場合 |
---|---|
データ型: uint32
NMetric — 最適一致の近傍におけるメトリクス値
N 行 N 列の行列
最適一致の近傍におけるメトリクス値。N 行 N 列の行列として返されます。マスクで指定される N は奇数でなければなりません。[最適一致の位置] を選択して最適一致の近傍におけるメトリクスの行列を返す場合、網羅的ループにより N 行 N 列の近傍に対するすべてのメトリクス値が計算されます。この出力は、サブピクセル精度のテンプレート マッチングを実行する場合に特に便利です。
データ型: single
| double
| uint8
| Boolean
| fixed point
NValid — 有効な近傍
off | on
有効な近傍領域の追跡を有効にします。メトリクス値の近傍行列は ROI の内側で有効です。ブロックは、[NValid] の出力を次のように設定します。
1
— 最適一致を含む近傍は、完全に関心領域の内側にあります。0
— 最適一致を含む近傍は、完全または部分的に関心領域の外側にあります。
依存関係
この端子は、[最適一致付近のメトリクス値からなる N 行 N 列の行列を出力] パラメーターを有効にすると表示されます。
データ型: Boolean
ROIValid — 有効な関心領域
off | on
有効な関心領域の追跡を有効にします。ROI が有効なイメージの外部に部分的に適用される場合、ブロックは ROI と有効なイメージの共通部分のみを処理します。ブロックは、[ROIValid] の出力を次のように設定します。
1
— ROI は、完全に入力イメージの有効部分の内側にあります。0
— ROI は、完全または部分的に入力イメージの有効部分の外側にあります。
依存関係
この端子は、[ROI が有効であるかどうかを示す出力フラグ] パラメーターを有効にすると表示されます。
データ型: Boolean
パラメーター
[メイン] タブ
一致メトリクス — 一致メトリクス
差の絶対値の和
(既定値) | 差の二乗和
| 最大の差の絶対値
一致メトリクスを次のいずれかとして選択します。
差の絶対値の和
(SAD)差の二乗和
(SSD)最大の差の絶対値
(MaxAD)
ブロックは、反復のステップごとに一致メトリクスを計算します。アプリケーションに最も適した一致メトリクスを選択します。ブロックは最適なメトリクス値の大域的な最適値を計算します。ROI (指定される場合) が交差する入力イメージの有効な部分領域を使用します。
出力 — 一致メトリクス
一致メトリクス
(既定値) | 最適一致の位置
出力のタイプを次のいずれかとして選択します。
一致メトリクス
— 一致メトリクス行列を出力します。このオプションは、[Metric] 出力端子をブロックに追加します。最適一致の位置
— 最適一致の位置の [x,y] 座標を出力します。このオプションは、[Loc] 出力端子をブロックに追加します。また、[探索方法]、[最適一致付近のメトリクス値からなる N 行 N 列の行列を出力]、[ROI の処理を有効にする] パラメーターも使用可能になります。[データ型] ペインの [出力] パラメーターは、[メイン] タブの [出力] パラメーターを
[メトリクス行列]
に設定した場合、またはこのパラメーターを[最適一致の位置]
に設定し、さらに [最適一致付近のメトリクス値からなる N 行 N 列の行列を出力] パラメーターを有効にした場合に表示されます。
探索方法 — 探索方法
網羅
(既定値) | 3 ステップ
探索方法を [網羅]
または [3 ステップ]
として指定します。[網羅]
探索方法は、イメージのすべてのピクセル位置を検索するため、計算量が多くなります。ただし、この方法によって、より正確な結果が得られます。
[3 ステップ]
は近傍アプローチを使用する探索方法で、すべてのピクセルの検索に比べて高速です。検索は、最大探索範囲の半分と等価または若干大きいステップ サイズから始めて、以下の手順に従います。
ブロックは各ステップで 9 つの検索点を比較します。探索領域境界には、中央の点と 8 つの検索点があります。
ブロックは、ステップごとにステップ サイズを 1 つずつデクリメントし、1 ピクセルのステップ サイズで検索を終了します。
新しいステップごとに、ブロックは検索の中心を前のステップから得られた最適な一致点に移動します。次の図で、番号 1 の青い円は、開始ステップ サイズ 3 による検索を表します。番号 2 の緑の円は、前の検索で見つかった最適一致に近いステップ サイズ 2 による次の検索を表します。最後に、番号 3 のオレンジ緑の円は、前回の最適一致を中心としたステップ サイズ 1 による最後の検索を表します。
依存関係
このパラメーターは、[出力]
パラメーターを [最適一致の位置] に設定すると表示されます。
最適一致付近のメトリクス値からなる N 行 N 列の行列を出力 — N 行 N 列の行列を出力
on (既定値) | off
[NMetric] 端子と [NValid] 端子の追加を有効にします。
依存関係
このパラメーターは、[出力]
パラメーターを [最適一致の位置] に設定すると表示されます。
N — 出力行列のサイズ
3
(既定値) | 整数
出力行列のサイズ。この値は、最適一致位置のインデックスを中心とする N 行 N 列の出力行列のサイズを決定します。N は奇数でなければなりません。
依存関係
このパラメーターは、[最適一致付近のメトリクス値からなる N 行 N 列の行列を出力] パラメーターを有効にすると表示されます。
ROI の処理を有効にする — ROI の処理を有効にする
on (既定値) | off
ROI の処理を有効にします。
依存関係
このパラメーターは、
[出力]
パラメーターを [最適一致の位置] に設定すると表示されます。このパラメーターを有効にすると、ブロックは [ROI] 入力端子を追加し、[ROI が有効であるかどうかを示す出力フラグ] パラメーターが表示されます。
ROI が有効であるかどうかを示す出力フラグ — 有効な ROI
off (既定値) | on
[ROIValid] 端子の追加を有効にします。
依存関係
このパラメーターは、[ROI の処理を有効にする] パラメーターを有効にすると表示されます。
[データ型] タブ
固定小数点ブロック パラメーターの詳細については、ブロックの固定小数点属性の指定 (DSP System Toolbox)を参照してください。
ブロックの特性
データ型 |
|
多次元信号 |
|
可変サイズの信号 |
|
アルゴリズム
一致メトリクス
一致メトリクスは一般的な形式による差分方程式を使用します。
は n > 1
に対するメトリクス空間 を示します。
差の絶対値の和 (SAD)
SAD 計量は、"タクシー" 計量または "マンハッタン距離" 計量とも呼ばれます。元のイメージのピクセルとテンプレート イメージの対応するピクセル間の差の絶対値を合計します。この計量は差分イメージの ノルムです。最小の SAD の得点は検索イメージ内でテンプレートの最適位置を推定します。一般的な SAD 距離計量は次のようになります。
差の二乗和 (SSD)
SSD 計量は、"ユークリッド距離" 計量とも呼ばれます。元のイメージのピクセルとテンプレート イメージの対応するピクセル間の差の絶対値の 2 乗を合計します。この計量は差分イメージの ノルムの 2 乗です。一般的な SSD 距離計量は次のようになります。
最大の差の絶対値 (MaxAD)
MaxAD 計量は、"一定距離" 計量とも呼ばれます。元のイメージのピクセルとテンプレート イメージの対応するピクセル間の差の最大絶対値を合計します。この距離計量は差分イメージの ノルムを提供します。一般的な MaxAD 距離計量は次のようになります。
これは次のように単純化されます。
参照
[1] Koga T., et. Al. Motion-compensated interframe coding for video conferencing. In National Telecommunications Conference. Nov. 1981, G5.3.1–5, New Orleans, LA.
[2] Zakai M., “General distance criteria” IEEE Transaction on Information Theory, pp. 94–95, January 1964.
[3] Yu, J., J. Amores, N. Sebe, Q. Tian, "A New Study on Distance Metrics as Similarity Measurement" IEEE International Conference on Multimedia and Expo, 2006 .
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2009b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)