FMP

概要

本サンプルプログラムはFMPを実行します。

使用しているFVXコンポーネント

FvxDisplayEx, FvxFileAccess, FvxImage, FvxVideo, FvxPerformanceCounter, FvxROI, FvxFPM, FvxPattern

構成

構成図
画像処理装置にはFVX基本パック ver2.60以降及びFVXファースト標準ビデオPACK ver2.60以降がインストールされている必要があります。

操作方法

[処理画像取得]

Grab

カメラから画像を取り込みます。カメラ取込が不可能な場合は灰色で表示されます。

画像ファイル読込

画像ファイルを読み込みます。読み込む画像はサイズが512*480の濃淡画像にしてください。

[基本設定]

<フィルタ関連>

フィルタに関連するパラメータです

●フィルタ選択
エッジ抽出の為のフィルタ処理方法を選択します。
通常は相関エッジフィルタをお使い下さい。

・相関エッジフィルタ
局所領域内の関数曲線(シグモイド関数)と濃度分布の一致度を計測するフィルタです。
この一致度をエッジ強度としています。

・ソーベルフィルタ
ソーベルフィルタをかけてエッジを検出する方法です。

相関エッジフィルタ時パラメータ


●局所領域サイズW
フィルタのオペレータサイズの幅です。
この値を調整する事によって特徴として扱う輪郭線を選択する事ができます。
通常はW=13を設定します。

※設定条件:1以上の奇数,W >= H,(W×H) <= 255
 (H=局所領域サイズH)

※対象物の輪郭線幅が(W-1)/2より小さい場合は(線幅×2+1)を設定して下さい。

●分散しきい値(0〜)
局所領域内の分散が、しきい値より低い場合は、注目エッジの強度値は0となります。
画像内の対象物と背景の濃度差を計測し、 何箇所か計測した中で最も濃度差の小さい値を以下の式に代入して 分散しきい値を算出してください。

分散しきい値 = (濃度差)2 / 4

●エッジ強度しきい値(0〜255)
注目画素のエッジ強度がしきい値未満の画素は0が格納されます。

ソーベルフィルタ時パラメータ


●エッジ強度しきい値(0〜255)
注目画素のエッジ強度がしきい値未満の画素は0が格納されます。

<FPM関連>

FPMに関連するパラメータです。

●圧縮率(0〜5)
サーチ時のエッジデータの圧縮率を設定できます。
値を大きくするほどエッジの圧縮率が高くなり、処理時間が短縮されます。
その反面検出能力が低下する可能性がありますのでご注意ください。
(0)圧縮無し (1)1/2  (2)1/4 (3)1/8 (4)1/16 (5)1/32 

●高圧縮スコアしきい値(0〜100)
高圧縮処理時のスコアしきい値です。
スコアがしきい値を超えるものを回答候補として残します。
値を大きくすると回答候補が少なくなるため処理時間が短縮される可能性があります。
その反面検出能力が低下する可能性も高くなります。

●高精度ポーズ推定
圧縮処理時のスコア・位置を利用して更に高精度に位置・スコアを再計算します。
その際、スコアしきい値(0〜100)を越えたものを回答とします。

●スコア再計算
パタン背景部分(エッジが存在しない部分)にノイズが生じた場合にスコアから減点します。
再計算後、スコアしきい値(0〜100)を越えたものを回答とします。

●回転角範囲(-180°〜180°)
パタンが回転する可能性がある場合、その範囲を指定します。
設定範囲を狭くするほど処理時間が早くなります。

●スケール(50%〜200%)
スケールが変わる可能性がある場合、その範囲を指定します。
設定範囲を狭くするほど処理時間が早くなります。

●処理範囲
サーチ範囲を指定します。
設定範囲を狭くし、エッジ数が少なくなると処理時間が早くなる可能性があります。

●サーチ個数
サーチ個数を指定します。


[フィルタ詳細]

相関エッジフィルタ時パラメータ


●曲線形状パラメータK(0より大きい値)
関数曲線の形状を決めるパラメータです。
関数曲線と濃度分布の形状が一致している場合、エッジ強度が高くなります。
通常は1.0を設定して下さい。

●局所領域サイズH
フィルタのオペレータサイズの高さです。
この値を調整する事によって特徴として扱う輪郭線を選択する事ができます。
通常はH=5を設定して下さい。

※設定条件:1以上の奇数,W >= H,(W×H) <= 255
 (W=局所領域サイズW)

●非極大抑制処理フィルタ片幅(1〜255)
非極大抑制処理時のフィルタサイズ(片幅)です。
通常は6を設定して下さい。
対象物の輪郭線幅が6より小さい場合は線幅に合わせて設定して下さい。

ソーベルフィルタ時パラメータ


●非極大抑制処理フィルタ片幅(1〜255)
非極大抑制処理時のフィルタサイズ(片幅)です。
通常は6を設定して下さい。
対象物の輪郭線幅が6より小さい場合は線幅に合わせて設定して下さい。

[FPM詳細]

マッチング(粗サーチ)


●エッジ点誤差範囲(画素) (0〜)
テンプレートのエッジ点と対象物のエッジ点の距離の許容範囲です。
設定値より距離が離れているエッジ点はマッチング時のスコア計算に加味されません。
通常は1画素を指定して下さい。

●低高圧縮スコアしきい値(0〜100)
低圧縮処理時のスコアしきい値です。
スコアがしきい値を超えるものを回答候補として残します。
値を大きくすると回答候補が少なくなるため処理時間が短縮される可能性があります。
しかし、その反面検出能力が低下する可能性も高くなります。
通常は、高圧縮スコアしきい値と同じ値を設定して下さい。
(「高圧縮スコアしきい値と同じ」にチェック)

高精度ポーズ推定


●エッジ点誤差範囲(画素) (0〜)
高精度ポーズ推定時のテンプレートのエッジ点と対象物のエッジ点の距離の許容範囲です。
設定値より距離が離れているエッジ点はマッチング時のスコア計算に加味されません。
通常は1画素を指定して下さい。

スコア再計算


●サーチ結果に対する誤差範囲 (0〜)
スコアの再計算を行うサーチ結果(X座標、Y座標、回転角、スケール)に対する誤差範囲です。

推奨値
X方向:高精度ポーズ推定前:2.0画素 推定後:0.5画素
Y方向:高精度ポーズ推定前:2.0画素 推定後:0.5画素
回転角:高精度ポーズ推定前:2.0° 推定後:0.5°
スケール:高精度ポーズ推定前:2.0% 推定後:0.5%


●エッジ点誤差範囲(画素) (0〜)
スコア再計算時のテンプレートのエッジ点と対象物のエッジ点の距離の許容範囲です。
設定値より距離が離れているエッジ点はマッチング時のスコア計算に加味されません。
通常は1画素を指定して下さい。

●背景ノイズ重み係数(0〜)
背景ノイズによる減点の度合いを設定します。
0を設定すると減点は行われません。
ノイズと判断された画素の総数に設定値を掛けた値をスコアから減点します。
推奨値は0.2です。

[エッジ描画など]

サーチ画像のエッジ表示・クリアなどを行います。

描画クリア

サーチ画像上の描画をクリアします。

画像エッジ表示

現在のフィルタ設定でのエッジを画像上に表示します。
※緑色:相関エッジフィルタ 赤:ソーベルフィルタ

スライダー(×1.0〜×4.0)

画像の表示倍率を変更します。

[パタン関連]

パタンの登録・表示などを行います。

パタン登録

パタンの登録を行います。ROIダイアログが開きますので、パタンとして登録する矩形位置と、パタン基準点を指定してください。

パタン表示

パタン表示ダイアログを開きます。

マスク設定

パタンマスクの設定ダイアログを開きます。

エッジ表示

パタンのエッジを表示します。
表示倍率をスライダーにて変更して表示する事も可能です。
※表示倍率の初期値は、画像の表示倍率となります。(その後変更可)

パタン読込

保存したパタンの読込みを行います。

パタン保存

パタンの保存を行います。

[サーチ実行]

FMPを実行します。
実行後、処理範囲は青い線で表示されます。
サーチ結果は赤い線で、スコア再計算を行った場合は緑の線で表示されます。

[その他]

Aスコープの表示などを行います

Aスコープ

Aスコープの表示・非表示を切り替えます。

画像保存

現在の画像をファイルに保存します。

結果クリア

サーチ結果のクリアを行います。

実行例

実行例 実行例

注意事項

本サンプルプログラムを使用する際には、使用許諾事項を必ずお読み下さい。