(57)【要約】【課題】画像認識に必要な計算を、CPUの1次キャッシュあるいは2次キャッシュに格納できるデータ量にて行うことが可能な画像認識装置を提供する。【解決手段】本発明の物体認識装置は、認識対象物体の第2特徴点各々に登録画像の第1特徴点を対応させ、第1及び第２の特徴点の法線ベクトルの角度差θによるCOS、SIN値を、第1特徴点毎に求める評価値算出部と、回転された変位ベクトルと第2特徴点から、候補座標点を求める候補座標点演算部と、候補座標点を座標軸に各々投影し、投影された軸座標点に対応し、COS値をCOS積算値として積算するCOS値積算部と、候補座標点を複数の座標軸に各々投影し、投影された軸座標点に対応し、SIN値をSIN積算値として積算するSIN値積算部と、各軸座標点の組合せで、各軸座標点のCOS及びSIN積算値の総合値を求める積算値加算部と、総合値が閾値を超えると、認識対象物体との登録画像と一致を判定する認識対象物体判定部とを有する。【選択図】図１
2010282437.tif 000002
【特許請求の範囲】
【請求項１】
登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、
入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する特徴点抽出部と、
第２の特徴点における第２の法線ベクトルを求める法線ベクトル演算部と、
前記第２の特徴点各々に対して登録画像の第１の特徴点の全てを対応させ、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を、第１の特徴点毎に求める評価値算出部と、
前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める候補座標点演算部と、
当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算するＣＯＳ値積算部と、
当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算するＳＩＮ値積算部と、
前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める積算値加算部と、
前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する認識対象物体判定部と
を有することを特徴とする物体認識装置。
【請求項２】
前記座標軸が２次元平面におけるｘ軸及びｙ軸であることを特徴とする請求項１に記載の物体認識装置。
【請求項３】
前記座標軸が２次元平面におけるｘ軸及びｙ軸と、ｘ軸の座標点及びｙ軸の座標点で表される直線からなる直線軸との３軸であることを特徴とする請求項１に記載の物体認識装置。
【請求項４】
前記積算値加算部が、
各座標軸の軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を２乗して加算して、前記総合値を求めることを特徴とする請求項１から請求項３のいずれかに記載の物体認識装置。
【請求項５】
前記積算値加算部が、
各座標軸の軸座標点におけるＣＯＳ積算値の加算値を２乗した数値と、ＳＩＮ積算値の加算値を２乗した数値とを加算し、前記総合値を求めることを特徴とする請求項１から請求項３のいずれかに記載の物体認識装置。
【請求項６】
登録画像データ生成部が、登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する過程と、
特徴点抽出部が入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する過程と、
法線ベクトル演算部が第２の特徴点における第２の法線ベクトルを求める過程と、
評価値算出部が、前記第２の特徴点各々に対して登録画像の第１の特徴点の全てを対応させ、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を、第１の特徴点毎に求める過程と、
候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める過程と、
ＣＯＳ値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算する過程と、
ＳＩＮ値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算する過程と、
積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める過程と、
認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する過程と
を有することを特徴とする物体認識方法。
【請求項７】
登録画像データ生成部が、登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する処理と、
特徴点抽出部が入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する処理と、
法線ベクトル演算部が第２の特徴点における第２の法線ベクトルを求める処理と、
評価値算出部が、前記第２の特徴点各々に対して登録画像の第１の特徴点の全てを対応させ、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を、第１の特徴点毎に求める処理と、
候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める処理と、
ＣＯＳ値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算する処理と、
ＳＩＮ値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算する処理と、
積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める処理と、
認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する処理と
を有する物体認識装置としてコンピューターを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力される画像において、予め登録された参照物体の位置、姿勢（回転角）及びスケーリングファクターを検出する物体認識装置に関するものである。
【背景技術】
【０００２】
撮像装置などから入力される入力画像から、予め登録された参照物体の位置（２次元座標系における位置座標（ｘ，ｙ））、回転角θ及びスケーリングファクターＳなどを検出する検出方法として、相関法、フーリエ記述子法、モーメント法、ハフ変換法などがよく知られている。
上述したいずれの検出方法も、登録されている参照物体の登録画像の特徴点は予め抽出されて登録されている。
そして、入力画像内から抽出された認識対象物体の特徴点と、登録されている登録画像の特徴点とを用いて、入力画像内における登録画像に対応した物体の画像の位置、登録画像に対する姿勢、及びスケーリングファクターを求める。
【０００３】
上述した特徴点を用いた検出方法において、ハフ変換法は投票と呼ばれる単純な多数決の原理に基づくものである。
そのため、入力画像内における認識対象物体同士の１部の接触、あるいは重なりなどによる部分的な遮蔽、また画像ノイズなどに対し、認識対象物体の認識処理において頑健な性能を有している。
このハフ変換法において、任意形状を有する認識対象物体の検出を高速に行う方法として一般化ハフ変換法がある（例えば、非特許文献１参照）。
【０００４】
上記一般化ハフ変換法は、参照物体より抽出された特徴点（ピクセル単位）において、その特徴点における接線と、あるいは法線の角度と、またその特徴点及び物体の基準となる基準点の位置関係とを参照テーブルとして準備する。この基準点は、参照物体の２次元座標への配置位置を示す配置基準点である。
すなわち、モデルとなる登録画像の上記参照テーブルを生成する図９のフローチャートに示すように、登録画像の画像を入力し（ステップＳ１）、図１０に示すように、参照物体の特徴点（Ｐ）を２次微分（ラプラシアン）法あるいはモラベック（Moravec）の方法等により抽出する（ステップＳ２）。つまり、周辺画素との値（画素値）の差が大きな点である輪郭線上の点や、表面状態が大きく変わる点などが特徴点となる。
【０００５】
そして、登録画像における特徴点の２値化処理を予め設定した閾値を用いて行い、２値化データを出力する（ステップＳ３）。ここで行う２値化手法としては、あらかじめ設定してある閾値による単純２値化法をはじめとして、ある閾値でヒストグラムを２クラスに分割した場合のクラス間分散が最大になるときの閾値を２値化閾値とする大津法（「判別および最小２乗規準に基づく自動しきい値選定法」（大津）、電子通信学会論文誌、Ｖｏｌ．Ｊ６３−Ｄ，Ｎｏ．４．ｐｐ．３４９−３５６，１９８０）、あるいは、階調を持つ画像に対して、局所的濃度に応じて閾値を設定する２値化法等が用いられる。
【０００６】
次に、登録画像の各特徴点のデータを記憶する参照テーブルの記憶領域の初期化を行い（ステップＳ４）、参照物体の基準点を任意の位置、例えば参照物体の重心位置として求める（ステップＳ５）。
特徴点（始点）から上記基準点（終点）への変位ベクトルと、特徴点における単位法線ベクトル（正規化法線ベクトル）とからなる特徴点データを求める処理を、全ての２値化データに対して行ったか否かの判定を行い（ステップＳ６）、全ての２値化データにおける特徴点データの取得処理が終了すると処理を終了し、特徴点データを取得する処理を行っていない２値化データがある場合に処理をステップＳ７へ進める。
【０００７】
未処理の２値化データを読み出し（ステップＳ７）、この２値化データが特徴点であるか否かの判定を上記閾値により行い（ステップＳ８）、特徴点でない場合に処理をステップＳ６へ進め、特徴点である場合に処理をステップＳ９へ進める。
そして、特徴点（図においては単に点とする）における接線あるいは単位法線ベクトルを求め、処理をステップＳ６へ進める（ステップＳ９）。
例えば、ステップＳ９において、点Ｐ１における法線ベクトルＮ１を求め、点Ｐ２における法線ベクトルを求め、他の点においても同様に法線ベクトルを求める。これらの法線ベクトルの長さが同一となるように単位法線ベクトルとして規格化し、図１１に示すように、特徴点の番号に対応させて、この特徴点における単位法線ベクトルを構成するｘ成分ＮＸｎ（１≦ｎ≦Ｍの整数、Ｍは特徴点の数）及びｙ成分ＮＹｎと、この特徴点における変位ベクトルＤｎを構成するｘ成分ＤＸｎ及びｙ成分ＤＹｎとの参照テーブルを生成する。
【０００８】
上記参照テーブルを用いた非特許文献１による画像認識処理は、図１２に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し（ステップＳ１１）、図１３に示すように、入力画像内の認識対象物体の特徴点（Ｑ）を参照画像と同様の方法にて抽出する（ステップＳ１２）。この図１３は、認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、その登録画像の特徴点における法線ベクトルの角度を合わせ、登録画像の変位ベクトルの指し示す基準点の位置の投票を行うことを示す概念図である。
そして、入力画像における特徴点の２値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、２値化データを出力する（ステップＳ１３）。
【０００９】
次に、基準点の候補に対して投票を行う投票空間（図１４の投票空間の概念図にある回転角度毎の基準点の座標を示す２次元平面）の記憶領域の初期化を行う（ステップＳ１４）。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての２値化データに対して行ったか否かの判定を行い（ステップＳ１５）、全ての２値化データに対する特徴点データの取得処理が終了した場合に処理を終了し、特徴点データを取得する処理を行っていない２値化データがある場合に処理をステップＳ１６へ進める。
【００１０】
未処理の２値化データを読み出し（ステップＳ１６）、この２値化データが特徴点であるか否かの判定を上記閾値により行い（ステップＳ１７）、特徴点でない場合、つまり閾値よりも小さい場合に処理をステップＳ１５へ進め、特徴点である場合、つまり閾値以上である場合に処理をステップＳ１８へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ１９へ進める（ステップＳ１８）。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点の投票処理を行ったか否かの判定を行い（ステップＳ１９）、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた投票処理が終了した場合、処理をステップＳ１５へ進め、一方、投票処理に用いられていない登録画像の特徴点が存在する場合、処理をステップＳ２０へ進める。
【００１１】
認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとの角度差（回転角θ）を求める（ステップＳ２０）。
【００１２】
次に、登録画像の特徴点の変位ベクトルを、特徴点を中心として回転角θ分、以下の式により回転させる（ステップＳ２１）。
認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとから、ＣＯＳ値とＳＩＮ値とを求める。たとえば、図１０における点Ｐ１が図１３における点Ｑ２であると仮定した場合、以下の（１）式により求めることができる。
ＣＯＳ  ＝  Ｎｘ１×ｎｘ２  ＋  Ｎｙ１×ｎｙ２
ＳＩＮ  ＝  Ｎｘ１×ｎｙ２  −  Ｎｙ１×ｎｘ２        …（１）
ここで、登録画像の単位法線ベクトルを（Ｎｘ１，Ｎｙ１）とし、認識対象物体の単位法線ベクトルを（ｎｘ２，ｎｙ２）とする。
ここで、変位ベクトルも同様に、特徴点に対して回転角θにより回転するため、回転させた変位ベクトルの成分ｄｘ及びｄｙは、以下の（２）式により求めることができる。
ｄｘ  ＝  ＣＯＳ×ＤＸ  −  ＳＩＮ×ＤＹ
ｄｙ  ＝  ＳＩＮ×ＤＸ  ＋  ＣＯＳ×ＤＹ              …（２）
ここで、登録画像の変位ベクトルを（ＤＸ，ＤＹ）としている。
【００１３】
入力画像の認識対象物体の特徴点の位置対して、上記回転させた変位ベクトルを、以下の式のように加えて、基準点の候補位置を求める（ステップＳ２２）。
上述した式により、点Ｑ２の座標を（Ｑｘ，Ｑｙ）とすると、認識対象物体の基準点の候補は以下の（３）式により求められる。
Ｒｘ  ＝  Ｑｘ  ＋  ｄｘ
Ｒｙ  ＝  Ｑｙ  ＋  ｄｙ                              …（３）
【００１４】
そして、回転角θに対応する２次元平面の座標に対し、上記基準点の候補の位置（Ｒｘ，Ｒｙ）に「１」を加算、すなわち投票を行う（ステップＳ２３）。
上述したように、非特許文献１の方法においては、各特徴点における登録画像と認識対象物体とのそれぞれの法線の角度を合わせて（この際の回転角が姿勢となる）変位ベクトルの示す基準点の位置の投票を行う。
この結果、重ね合わせた特徴点が登録画像と認識対象物体とで対応している場合、法線ベクトルの角度を合わせると、登録画像の変位ベクトルが同一の点の方向を向き、その指し示す先の基準点が重なり合うため、投票数がピークとなる位置を、認識対象物体の基準点の位置として検出するとともに、その際の回転角を登録画像に対する姿勢として得ることができる。この処理により、登録画像と入力画像における認識対象物体との認識処理を非常に効率良く行う。
【００１５】
しかしながら、この投票空間の次元を考えると、スケーリングファクターＳを考慮しない場合であっても、図１４に示すように、データ構成が縦位置（縦座標）、横位置（横座標）、回転角の３次元となる。また、スケーリングファクターによるサイズ変化も、物体検出において考慮すると１次元が加わり、４次元となる。
このため、実際の物体認識に対して応用する場合、３次元及び４次元の投票空間を構成するために非常に多くのメモリーを必要とすることになる。以降の説明においては、スケーリングファクターの次元を除いた３次元の投票空間に対して評価を行う。
【００１６】
この３次元の投票空間の場合、上記非特許文献１の方法においては、「ＮＸ×ＮＹ×ＮＡ×ＮＶ」のビット数が必要となる。ここで、入力画像における認識対象物体の２次元座標における位置、及び登録画像に対する回転角の検出結果を示す際、２次元座標のｘ軸（横軸）の検出位置の分割数（分解能に対応）である座標点数ＮＸ、ｙ軸（縦軸）の検出位置の分割数である座標点数ＮＹ、回転角度の検出角度の分割数である角度分割ＮＡ、それぞれの投票数を蓄積するメモリーのビット数ＮＶ（通常は２バイトあるいは４バイト）である。
すなわち、非特許文献１においては、認識対象物体の候補の位置及び角度ごとに、ぞれぞれの投票に対応させているため、多くのメモリー容量が必要となる。
この多くのメモリー容量を削減するため、物体検出候補の位置ごとに物体検出候補の回転角度θに対応するＣＯＳ値及びＳＩＮ値を単に積算する方法がある（たとえば、特許文献１参照）。
【００１７】
特許文献１を用いた画像認識処理は、図１５に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し（ステップＳ３１）、図１３に示すように、入力画像内の認識対象物体の特徴点を参照画像と同様の方法にて抽出する（ステップＳ３２）。
そして、入力画像における特徴点の２値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、２値化データを出力する（ステップＳ３３）。
【００１８】
次に、基準点の候補に対して投票を行う投票空間（後述するＣＯＳ値及びＳＩＮ値を積算するそれぞれの２次元平面）の記憶領域の初期化を行う（ステップＳ３４）。
各特徴点におけるＣＯＳ値及びＳＩＮ値それぞれを、上記基準点の候補の位置に対して積算する処理を、全ての２値化データに対して行ったか否かの判定を行い（ステップＳ３５）、全ての２値化データに対する上記ＣＯＳ値及びＳＩＮ値の積算処理が終了した場合に処理を終了し、上記ＣＯＳ値及びＳＩＮ値の積算処理を行っていない２値化データがある場合に処理をステップＳ３６へ進める。
【００１９】
未処理の２値化データを読み出し（ステップＳ３６）、この２値化データが特徴点であるか否かの判定を上記閾値により行い（ステップＳ３７）、特徴点でない場合に処理をステップＳ３５へ進め、特徴点である場合に処理をステップＳ３８へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ３９へ進める（ステップＳ１８）。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点にＣＯＳ値及びＳＩＮ値の積算処理を行ったか否かの判定を行い（ステップＳ３９）、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた積算処理が終了した場合、処理をステップＳ３５へ進め、一方、積算処理に用いられていない登録画像の特徴点が存在する場合、処理をステップＳ４０へ進める。
【００２０】
入力画像における認識対象物体の特徴点の単位法線ベクトル（ｎｘ，ｎｙ）と、登録画像の特徴点の単位法線ベクトル（Ｎｘ，Ｎｙ）とから、以下の（４）式により、各特徴点におけるＣＯＳ値及びＳＩＮ値を求める（ステップＳ４０）。
ＣＯＳ  ＝  Ｎｘ×ｎｘ  ＋  Ｎｙ×ｎｙ
ＳＩＮ  ＝  Ｎｘ×ｎｙ  −  Ｎｙ×ｎｘ                …（４）
【００２１】
（４）式により求めたＣＯＳ値及びＳＩＮ値と、重ね合わせた登録画像の特徴点の変位ベクトル（ＤＸ，ＤＹ）とから、回転角θにより回転させた変位ベクトル（ｄｘ，ｄｙ）を、下記（５）式により求める。
ｄｘ  ＝  ＣＯＳ×ＤＸ  −  ＳＩＮ×ＤＹ
ｄｙ  ＝  ＳＩＮ×ＤＸ  ＋  ＣＯＳ×ＤＹ              …（５）
【００２２】
そして、入力画像における認識対象物体の特徴点（Ｑｘ，Ｑｙ）と、回転させた変位ベクトル（ｄｘ，ｄｙ）とから、以下の（６）式により、基準点位置の候補の位置を求める。
Ｒｘ  ＝  Ｑｘ  ＋  ｄｘ
Ｒｙ  ＝  Ｑｙ  ＋  ｄｙ                              …（６）
この得られた基準点位置の候補の位置（Ｒｘ，Ｒｙ）に対して、ＣＯＳ（θ）とＳＩＮ（θ）とを、図１６に示すように、それぞれＣＯＳ（θ）の投票空間と、ＳＩＮ（θ）の投票空間に積算する。
この結果、投票空間としてのメモリー容量は、「ＮＸ×ＮＹ×２×（積算のためのビット数）」で得られることになる。積算するビット数については双方ともに２から４ビットであるため、角度分割数ＮＡを３６０とし１度の分解能を有すると考えると、特許文献１の方法は非特許文献１に比較して、１／１８０のメモリー容量にて実現することができる。ここで、２はＣＯＳ値、ＳＩＮ値それぞれの積算を行う２つの２次元座標を示している。
【００２３】
この投票処理により、認識対象物体の基準点の候補の点が登録画像に対して回転角θを有する真の基準点である場合、その候補の点に対して登録画像の各特徴点の全てからの回転角θの投票が大部分を占めることが考えらる。このため、真の基準点である点におけるＣＯＳ値とＳＩＮ値とのそれぞれの積算値は、その認識対象物体の回転角θの投票が大部分を占めることにより、その回転角θに対応するＣＯＳ値、ＳＩＮ値の整数倍、投票数倍に近づくことになる。その結果、ＣＯＳ積算値、ＳＩＮ積算値のいずれかまたは両方においてピークを得ることができる。
したがって、ＣＯＳ積算値、ＳＩＮ積算値のピーク位置が入力画像における認識対象物体の基準点であり、その基準点に積算されたＣＯＳ値の積算値とＳＩＮ値の積算値との比、すなわちｔａｎ−１（ＳＩＮ値の積算値／ＣＯＳ値の積算値）により回転角θを求めることができる。
【００２４】
一方、基準点の候補の点が真の基準点でない場合、認識対象物体の特徴点における投票が誤投票であったり、あるいはノイズに起因するものとなり、投票される回転角θは一様乱数的な分布を有すると仮定される。
この結果、この真の基準点でない点でのＣＯＳ値及びＳＩＮ値の積算は、それぞれＣＯＳ関数、ＳＩＮ関数を０度から３６０度までを一様な重みで単純に積分した値の整数倍となることが期待され、積算値は０に近づくことになる。
【先行技術文献】
【特許文献】
【００２５】
【特許文献１】特開２００７−１２８３７４号公報
【非特許文献】
【００２６】
【非特許文献１】D.H.Ballard，”Generalizing The Hough Transform To Detect Arbitrary Shapes”，Pattern Recongition，Vol.13,no.2,pp.111-122,1981
【発明の概要】
【発明が解決しようとする課題】
【００２７】
しかしながら、特許文献１に示す物体認識方法にあっては、非特許文献１に対し、計算過程において用いるメモリー容量を２桁以上削減しているが、高速に演算を行う際において、メモリー容量が依然として多い欠点を有している。
ＣＰＵ（中央演算装置）の演算速度は非常に高速となり、処理能力が向上したことにより、データを記憶する主記憶装置のメモリー素子との速度差が大きくなっている。
この主記憶装置のメモリーに対するアクセス時間を短縮するため、最近のＣＰＵは１次キャッシュ、あるいは２次キャッシュなどの高速メモリーを内蔵している。
ＣＰＵの計算が効率に行われるのは、使用するデータ及び命令において、上記キャッシュに記憶されたデータ及び命令が有効である場合（キャッシュヒットした場合）である。
一方、キャッシュヒットしない場合、つまりキャッシュに記憶されたデータ及び命令が有効でない場合、それらはキャッシュに対して相対的に低速である主記憶装置のメモリーから読み込む必要があり、ＣＰＵは本来の性能に対して劣った動作速度となってしまう。
【００２８】
このキャッシュメモリーの容量は、１次キャッシュで数十ｋバイト、２次キャッシュで数百ｋバイト、３次キャッシュで数Ｍバイトである。
非特許文献１において、２次元座標の座標点を１０２４×１０２４とし、回転角θの分解能を１度とし、投票に必要なバイト数を４とした場合、「１０２４×１０２４×３６０×４」となり、約１．５Ｇバイトのメモリー容量が必要となる。
また、特許文献１において、２次元の座標点を１０２４×１０２４とし、ＣＯＳ値及びＳＩＮ値各々として２、積算するバイト数を４バイトとした場合、「１０２４×１０２４×２×４」となり、約８Ｍバイト程度となる。
この後者のメモリー容量は、１次キャッシュ、２次キャッシュに格納することは不可能であり、３次キャッシュに格納できるか否かの容量である。また、画像サイズを大きくすると座標点を増加させる必要があり、３次キャッシュに格納することも不可能となってしまう。
【００２９】
本発明は、このような事情に鑑みてなされたもので、その目的は、画像認識に必要な計算を、ＣＰＵの１次キャッシュあるいは２次キャッシュに格納できるデータ量にて行うことが可能な画像認識装置を提供することにある。
【課題を解決するための手段】
【００３０】
この発明は上述した課題を解決するためになされたもので、本発明の物体認識装置は、登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する特徴点抽出部と、第２の特徴点における第２の法線ベクトルを求める法線ベクトル演算部と、第２の特徴点に対して第１の特徴点を重ね、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を求める評価値算出部と、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める候補座標点演算部と、当該候補座標点を複数の第１の座標軸に各々投影し、投影された軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算するＣＯＳ値積算部と、当該候補座標点を複数の第２の座標軸に各々投影し、投影された軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算するＳＩＮ値積算部と、前記第１の座標軸及び前記第２の座標軸における前記候補座標点に対応する軸座標点のＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める積算値加算部と、
前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する認識対象物体判定部とを有することを特徴とする。
本発明の物体認識方法は、登録画像データ生成部が、登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する過程と、特徴点抽出部が入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する過程と、法線ベクトル演算部が第２の特徴点における第２の法線ベクトルを求める過程と、評価値算出部が、前記第２の特徴点各々に対して登録画像の第１の特徴点の全てを対応させ、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を、第１の特徴点毎に求める過程と、候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める過程と、ＣＯＳ値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算する過程と、ＳＩＮ値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算する過程と、積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める過程と、認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する過程とを有することを特徴とする。
本発明のプログラムは、登録画像データ生成部が、登録画像より抽出した複数の第１の特徴点と、この第１の特徴点における第１の法線ベクトルと、第１の特徴点から前記登録画像の基準点への変位ベクトルとからなる特徴点データを、特徴点データ記憶部に記憶する処理と、特徴点抽出部が入力画像における認識対象物体の特徴を構成する第２の特徴点を抽出する処理と、法線ベクトル演算部が第２の特徴点における第２の法線ベクトルを求める処理と、評価値算出部が、前記第２の特徴点各々に対して登録画像の第１の特徴点の全てを対応させ、第１の法線ベクトルと第２の法線ベクトルの角度差θによるＣＯＳ（θ）及びＳＩＮ（θ）値を、第１の特徴点毎に求める処理と、候補座標点演算部が、前記角度差から変位ベクトルの回転を行い、回転された変位ベクトルと第２の特徴点の座標から、基準点の候補である候補座標点を求める処理と、ＣＯＳ値積算部が、当該候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＣＯＳ（θ）をＣＯＳ積算値として積算する処理と、ＳＩＮ値積算部が、当該候補座標点を複数の前記座標軸に各々投影し、投影された各座標軸の軸座標点に対応して、前記候補座標点におけるＳＩＮ（θ）をＳＩＮ積算値として積算する処理と、積算値加算部が、前記座標軸各々における各軸座標点の組合せにおいて、各軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を加算して総合値を求める処理と、認識対象物体判定部が、前記総合値が予め設定した閾値を超えた場合に、前記登録画像と一致する認識対象物体が当該候補座標点を基準点として配置されていると判定する処理とを有する物体認識装置としてコンピューターを機能させるためのプログラムである。
この発明によれば、認識対象物体の入力画像における配置の基準点の候補である候補座標点毎にＣＯＳ（θ）及びＳＩＮ（θ）の投票空間に投票するのではなく、候補座標点を座標軸上に投影し、投影された軸座標点毎にＣＯＳ（θ）及びＳＩＮ（θ）を積算し、積算結果を軸座標点各々に対応する候補座標点において加算するため、積算値を記憶する記憶部を２次元配列から、１次元配列とすることで、従来に比較してメモリー容量を削減することができ、この結果、キャッシュメモリーを有効に用いることが可能となり、認識処理を高速化することができる。
【００３１】
本発明の物体認識装置は、前記座標軸が２次元平面におけるｘ軸及びｙ軸であることを特徴とする。
これにより、軸座標点に対応するＣＯＳ（θ）及びＳＩＮ（θ）各々の積算値を記憶する記憶部の１次元配列が、ｘ軸方向に２本及びｙ軸方向に２本の計４本で済むため、２次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
【００３２】
本発明の物体認識装置は、前記座標軸が２次元平面におけるｘ軸及びｙ軸と、ｘ軸の座標点及びｙ軸の座標点で表される直線からなる直線軸との３軸であることを特徴とする。
これにより、軸座標点に対応するＣＯＳ（θ）及びＳＩＮ（θ）各々の積算値を記憶する記憶部の１次元配列が、ｘ軸方向に２本、ｙ軸方向に２本、直線軸方向に２本の計６本で済むため、２次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
また、複数の基準点が存在する場合、アーチファクトが発生する可能性があるが、２次元の座標点を投影する軸を３本とすることにより、２本の場合に比較して位置識別能力を向上させることができ、上記アーチファクトを排除することができ、物体認識の処理効率を向上させることができる。
【００３３】
本発明の物体認識装置は、前記積算値加算部が、各座標軸の軸座標点におけるＣＯＳ積算値及びＳＩＮ積算値を２乗して加算し、前記総合値を求めることを特徴とする。
複数の軸の軸座標に対応した積算値を加算するため、ピーク値検出の際のＳ／Ｎ比を向上させて、基準点検出の精度を向上させることができる。
【００３４】
本発明の物体認識装置は、前記積算値加算部が、各座標軸の軸座標点におけるＣＯＳ積算値の加算値を２乗した数値と、ＳＩＮ積算値の加算値を２乗した数値とを加算し、前記総合値を求めることを特徴とする。
複数の軸の軸座標に対応した積算値を加算するため、ピーク値検出の際のＳ／Ｎ比を向上させて、基準点検出の精度を向上させることができる。
また、ノイズが存在する場合に積算値を平均化するため、上述したＣＯＳ積算値及びＳＩＮ積算値を２乗して加算する場合に比較して、よりＳ／Ｎ比を向上させることが可能となる。
【図面の簡単な説明】
【００３５】
【図１】この発明の第１実施形態及び第２の実施形態による物体認識装置の構成例を示すブロック図である。
【図２】入力画像と、この入力画像のｘ軸とｙ軸とに設けられた積算記憶部列との対応を示し、第１の実施形態の動作を説明する概念図である。
【図３】ｘ軸のｘ軸ＣＯＳ値積算記憶部、ｘ軸ＳＩＮ値積算記憶部、ｙ軸のｙ軸ＣＯＳ値積算記憶部、ｙ軸ＳＩＮ値積算記憶部の配列構成を示す概念図である。
【図４】第１の実施形態による物体認識装置の物体認識の動作例を示すフローチャートである。
【図５】第１の実施形態による物体認識の動作を説明する概念図である。
【図６】第１の実施形態による物体認識の動作を説明する概念図である。
【図７】第２の実施形態による物体認識の動作を説明する概念図である。
【図８】ｘ軸のｘ軸ＣＯＳ値積算記憶部、ｘ軸ＳＩＮ値積算記憶部、ｙ軸のｙ軸ＣＯＳ値積算記憶部、ｙ軸ＳＩＮ値積算記憶部、Ａ軸のＡ軸ＣＯＳ値積算記憶部、Ａ軸ＳＩＮ値積算記憶部の配列構成を示す概念図である。
【図９】登録画像の第１の特徴点の抽出と、この第１の特徴点における特徴点データの抽出の動作を説明するフローチャートである。
【図１０】特徴点データの抽出を説明する概念図である。
【図１１】特徴点データが記憶されるテーブル構成を示す概念図である。
【図１２】非特許文献１の一般化ハフ変換を用いた画像認識処理の動作を示すフローチャートである。
【図１３】図１２における基準点の投票処理を説明する概念図である。
【図１４】非特許文献１の一般化ハフ変換における画像認識の際に必要となるメモリー容量を説明する概念図である。
【図１５】特許文献１における画像認識処理の動作を説明するフローチャートである。
【図１６】特許文献１におけるＣＯＳ値及びＳＩＮ値の積算処理を説明する概念図である。
【発明を実施するための形態】
【００３６】
＜第１の実施形態＞
以下、図面を参照して、本発明の第１の実施形態について説明する。図１は、この発明の第１の実施形態による物体認識装置の構成例を示す概略ブロック図である。
この図において、本実施形態による物体認識装置は、登録画像データ生成部１、特徴点データ記憶部２及び物体認識部３とを有している。
登録画像データ生成部１は、登録画像より抽出した特徴点を第１の特徴点の配列として抽出し、登録画像の基準点を設定し、第１特徴点から基準点への変位ベクトルを求め、第１特徴点における第１の単位法線ベクトルを求めて、第１の特徴点の座標、変位ベクトル及び第１の単位法線ベクトルを第１の特徴点データとして、各登録画像の第１の特徴点の識別情報である特徴点番号に対応させ、第１の特徴点毎に特徴点データ記憶部２へ書き込んで記憶させる。上記基準点は、登録画像及び参照物体の２次元座標への配置位置を示す配置基準点である。また、上記基準点は、登録画像が配置された２次元座標上の任意の点で良く、例えば、登録画像の重心を基準点としても良い。
特徴点データ記憶部２は、図１１に示すテーブル構成により、第１の特徴点の特徴点番号に対応して各登録画像の第１の特徴点データが記憶されている。
物体認識部３は、入力画像における認識対象物体より抽出した特徴点を第２の特徴点の配列として求め、第１特徴点における第１の単位法線ベクトルを求め、特徴点データ記憶部２から登録画像の第１の特徴点データを順次読み出し、この第２の特徴点に順次第１の特徴点を対応させて、認識対象物体と登録画像との類似を判定していく。
【００３７】
上記登録画像データ生成部１は、登録画像取得部１１、特徴点抽出部１２、特徴点２値化部１３及び法線ベクトル抽出部１４を有している。この登録画像データ生成部１の動作は、特許文献１にて説明した図９のフローチャートの動作と同様である。
登録画像取得部１１は、撮像装置あるいはＣＡＤから、後に認識対象物体を認識するために用いる登録画像の画像データを入力する。
特徴点抽出部１２は、上記登録画像の第１の特徴点（ピクセル単位）を、非特許文献１における特徴抽出にて説明した２次微分（ラプラシアン）法あるいはモラベックの方法などを用いて抽出する。
【００３８】
特徴点２値化部１３は、登録画像の第１の特徴点のピクセルと、第１の特徴点以外のピクセルとの階調度による２値化を行う。例えば、特徴点２値化部１３は、予め設定した階調度の閾値により、第１の特徴点のピクセルの階調度を「１」、第１の特徴点以外のピクセルの階調度を「０」とする。ここで、予め設定した閾値は、一般化ハフ変換法にて説明した２値化処理を行う閾値を用いる。
【００３９】
法線ベクトル抽出部１４は、得られた個々の第１の特徴点に対応する、元の登録画像のピクセルの階調度において、縦方向及び横方向の微分処理を行い、階調度変化に基づく横方向のｘ軸成分及び縦方向のｙ軸成分をベクトルとする法線ベクトルを求める。この微分処理は、プレウィット（Prewitt）フィルタあるいはソーベル（Sobel）フィルタなどの１次微分フィルタにより行う。注目した特徴点のピクセルを中心とした上下左右の９つのピクセルの階調度に対して、フィルタ係数を乗算して結果を合計し、ｘ軸成分あるいはｙ軸成分を求める。
また、法線ベクトル抽出部１４は、得られたｘ軸成分及びｙ軸成分からなる法線ベクトルの長さが１となるように正規化し、第１の単位法線ベクトルとして出力する。
また、法線ベクトル抽出部１４は、各第１の特徴点から基準点への変位ベクトルを抽出し、第１の特徴点の座標、変位ベクトル及び第１の単位法線ベクトルを第１の特徴点データとして、特徴点データ記憶部２へ書き込んで記憶させる。
【００４０】
次に、物体認識部３は、入力画像取得部３１、特徴点抽出部３２、特徴点２値化部３３、法線ベクトル抽出部３４、評価値算出部３５、候補座標点演算部３６、ＣＯＳ値積算部３７、ＳＩＮ値積算部３８、積算値加算部３９、認識対象物体判定部４０を有している。
入力画像取得部３１は、カメラなどの撮像装置から、認識対象物体を含んだ入力画像の画像データを入力する。
特徴点抽出部３２は、上記入力画像における認識対象物体の第２の特徴点（ピクセル単位）の座標点を、上記特徴点抽出部１２と同様の手法を用いて抽出する。
【００４１】
特徴点２値化部３３は、認識対象物体の第２の特徴点のピクセルと、第２の特徴点以外のピクセルとの階調度による２値化を行う。例えば、特徴点２値化部３３は、予め設定した階調度の閾値により、第２の特徴点のピクセルの階調度を「１」、第２の特徴点以外のピクセルの階調度を「０」とする。ここで、予め設定した閾値は、特徴点２値化部１３と同様の数値を用いる。
法線ベクトル抽出部３４は、法線ベクトル抽出部１４と同様の手法を用いて、得られた個々の第２の特徴点に対応する、横方向のｘ軸成分及び縦方向のｙ軸成分をベクトルとする法線ベクトルを求める。
【００４２】
評価値算出部３５は、第１の特徴点に第２の特徴点とを対応させ、第１の特徴点の第１の単位法線ベクトル（ｎｘ，ｎｙ）と第２の特徴点の第２の単位法線ベクトル（Ｎｘ，Ｎｙ）との角度差（回転角）θに基づく、ＣＯＳ（θ）とＳＩＮ（θ）とを、評価値としてすでに説明した（４）式により求める。
候補座標点演算部３６は、第２の法線ベクトルに対して、第１の法線ベクトルの方向が同様となるように、（５）式を用いて第１の法線ベクトルを第１の座標点を中心に回転させる。
そして、候補座標点演算部３６は、回転させた変位ベクトルと、第２の特徴点の座標（Ｐｘ，Ｐｙ）とから、（６）式を用いて認識対象物体の基準点の候補位置（Ｒｘ，Ｒｙ）を求める。
【００４３】
ＣＯＳ値積算部３７は、図２に示すように、入力画像のｘ軸方向のピクセル数（画像幅）に対応した数のｘ軸ＣＯＳ値積算記憶部（ΣＣＯＳ（θ））と、入力画像のｙ軸方向のピクセル数（画像幅）に対応した数のｙ軸ＣＯＳ値積算記憶部（ΣＣＯＳ（θ））を有している。すなわち、各ピクセルに対応した軸座標毎に、ｘ軸ＣＯＳ値積算記憶部、ｙ軸ＣＯＳ値積算記憶部を有している。図２は、候補位置（Ｒｘ，Ｒｙ）と、この候補位置（Ｒｘ，Ｒｙ）が投影された軸座標との対応を示す概念図である。
また、ＣＯＳ値積算部３７は、図３に示すように、ＣＯＳ（θ）値が演算された基準点の候補位置（Ｒｘ，Ｒｙ）をｘ軸に投影し、この投影された軸座標点（Ｒｘ）に対応するｘ軸ＣＯＳ値積算記憶部に、上記ＣＯＳ（θ）を積算する（ΣＣＯＳ（θ））。また、ＣＯＳ値積算部３７は、ＣＯＳ（θ）値が演算された基準点の候補位置（Ｒｘ，Ｒｙ）をｙ軸に投影し、この投影された軸座標点（Ｒｙ）に対応するｙ軸ＣＯＳ値積算記憶部に、上記ＣＯＳ（θ）を積算する（ΣＣＯＳ（θ））。すなわち、図３に示すように、ｘ軸に対応して２本、ｙ軸に対して２本の、計４本の１次元の積算値記憶部の配列が設けられている。
【００４４】
ＳＩＮ値積算部３８は、図２に示すように、入力画像のｘ軸方向のピクセル数（画像幅）に対応した数のｘ軸ＳＩＮ値積算記憶部（ΣＳＩＮ（θ））と、入力画像のｙ軸方向のピクセル数（画像幅）に対応した数のｙ軸ＳＩＮ値積算記憶部（ΣＳＩＮ（θ））を有している。すなわち、各ピクセルに対応した軸座標毎に、ｘ軸ＳＩＮ値積算記憶部、ｙ軸ＳＩＮ値積算記憶部を有している。図２は、候補位置（Ｒｘ，Ｒｙ）と、この候補位置（Ｒｘ，Ｒｙ）が投影された軸座標との対応を示す概念図である。
また、ＳＩＮ値積算部３８は、図３に示すように、ＳＩＮ（θ）値が演算された基準点の候補位置（Ｒｘ，Ｒｙ）をｘ軸に投影し、この投影された軸座標点（Ｒｘ）に対応するｘ軸ＳＩＮ値積算記憶部に、上記ＳＩＮ（θ）を積算する（ΣＳＩＮ（θ））。また、ＳＩＮ値積算部３８は、ＳＩＮ（θ）値が演算された基準点の候補位置（Ｒｘ，Ｒｙ）をｙ軸に投影し、この投影された軸座標点（Ｒｙ）に対応するｙ軸ＳＩＮ値積算記憶部に、上記ＳＩＮ（θ）を積算する（ΣＳＩＮ（θ））。
【００４５】
積算値加算部３９は、ｘ軸における同一の軸座標におけるｘ軸ＣＯＳ値積算記憶部に記憶されたＣＯＳ積算値（ΣＣＯＳ（θ））の二乗と、ｘ軸ＳＩＮ値積算記憶部に記憶されたＳＩＮ積算値（ΣＳＩＮ（θ））の二乗とを加算し、ｘ軸の各軸座標毎のｘ軸総合値を算出する。
また、積算値加算部３９は、ｙ軸における同一の軸座標におけるｙ軸ＣＯＳ値積算記憶部に記憶されたＣＯＳ積算値（ΣＣＯＳ（θ））の二乗と、ｙ軸ＳＩＮ値積算記憶部に記憶されたＳＩＮ積算値（ΣＳＩＮ（θ））の二乗とを加算し、ｙ軸の各軸座標毎のｙ軸総合値を算出する。
また、積算値加算部３９は、ｘ軸総合値とｙ軸総合値とを各軸座標毎にそれぞれ加算し、２次元座標の各座標における総合値を算出する。
すなわち、軸座標Ｒｘのｘ軸総合値と、軸座標Ｒｙのｙ軸総合値とを加算し、２次元座標の（Ｒｘ，Ｒｙ）の総合値の算出処理を、ｘ軸のピクセルに対応した軸座標と、ｙ軸のピクセルに対応した軸座標の組合せ（２次元平面に対する逆投影の処理）の全てに行い、入力画像における全てのピクセルの２次元座標の座標点各々における総合値を算出する。
ここで得られる総合値は、以下の式により求められる。
総合値＝（ｘ軸の（ΣＣＯＳ（θ））２）＋（ｘ軸の（ΣＳＩＮ（θ））２）
＋（ｙ軸の（ΣＣＯＳ（θ））２）＋（ｙ軸の（ΣＳＩＮ（θ））２）
【００４６】
認識対象物体判定部４０は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として出力する。
また、認識対象物体判定部４０は、基準点に積算されたＣＯＳ（θ）の積算値とＳＩＮ（θ）の積算値との比、すなわちｔａｎ−１（ΣＳＩＮ（θ）／ΣＣＯＳ（θ））により回転角θを求めることができる。ここで用いるΣＳＩＮ（θ）及びΣＣＯＳ（θ）は、例えば、基準点がｘ軸に投影された位置の軸座標に対応するｘ軸ＣＯＳ値積算記憶部及びｘ軸ＳＩＮ値積算記憶部各々に記憶されているＣＯＳ積算値及びＳＩＮ積算値である。
このピーク値は、実際に実験により測定し、認識対象物体が登録画像と一致したとき、基準点の総合値の値を統計的に取る値から設定する。
また、物体認識部３に接続されている認識詳細検出部４１は、認識対象物体の位置を詳細に知る必要がある場合、上記認識対象物体判定部４０が抽出した基準点及び回転角θを、より認識対象物体の配置された位置を詳細に抽出する処理を行う。そのため、詳細な認識対象物体の配置位置の抽出の必要がなければ、詳細検出部４１を設ける必要はない。
【００４７】
また、上述した積算値加算部３９は以下のように構成してもよい。
積算値加算部３９は、ｘ軸における各軸座標（Ｒｘ）のｘ軸ＣＯＳ値積算記憶部のＣＯＳ積算値と、ｙ軸における各軸座標（Ｒｙ）のｙ軸ＣＯＳ値積算記憶部のＣＯＳ積算値とを加算し、２次元座標（Ｒｘ，Ｒｙ）におけるＣＯＳ総合値を、ｘ軸の軸座標とｙ軸の軸座標との全ての組合せに対して、２次元平面に対する逆投影を行い求める。
同様に、積算値加算部３９は、ｘ軸における各軸座標（Ｒｘ）のｘ軸ＳＩＮ値積算記憶部のＳＩＮ積算値と、ｙ軸における各軸座標（Ｒｙ）のｙ軸ＳＩＮ値積算記憶部のＳＩＮ積算値とを加算し、２次元座標（Ｒｘ，Ｒｙ）におけるＳＩＮ総合値を、ｘ軸の軸座標とｙ軸の軸座標との全ての組合せに対して、２次元平面に対する逆投影を行い求める。
また、積算値加算部３９は、ＣＯＳ総合値の２乗した値とＳＩＮ総合値の２乗した値とを対応する２次元座標（Ｒｘ，Ｒｙ）にて加算し、２次元座標の各座標における総合値を算出する。
ここで得られる総合値は、以下の式により求められる。
総合値＝（（ｘ軸の（ΣＣＯＳ（θ）））＋（ｙ軸の（ΣＣＯＳ（θ））））２
＋（（ｘ軸の（ΣＳＩＮ（θ）））＋（ｙ軸の（ΣＳＩＮ（θ））））２
【００４８】
次に、本実施形態における認識対象物体と登録画像との認識処理を図４を用いて説明する。図４は、上記認識処理の動作例を説明するフローチャートである。
入力画像取得部３１は、図示しない撮像装置から入力画像を入力し、例えばピクセルで表現された画像データとして特徴点抽出部３２及び法線ベクトル抽出部３４へ出力する（ステップＳ５１）。
入力画像が入力されると、特徴点抽出部１２は、入力画像における認識対象物体の第２の特徴点を抽出し、抽出した入力画像（第２の特徴点とされた画像）を特徴点２値化部３３へ出力する（ステップＳ５２）。
次に、特徴点２値化部３３は、入力される入力画像の各ピクセルに対し、第２の特徴点のピクセルと、それ以外のピクセルとに分離する階調度の２値化を行い、内部の記憶部に記憶する（ステップＳ５３）。
【００４９】
そして、ＣＯＳ値積算部３７は、ｘ軸ＣＯＳ値積算記憶部とｙ軸ＣＯＳ値積算記憶部とを初期化、すなわち積算値を「０」とする。
同様に、ＳＩＮ値積算部３８は、ｘ軸ＳＩＮ値積算記憶部とｙ軸ＳＩＮ値積算記憶部とを初期化、すなわち積算値を「０」とする（ステップＳ５４）。
次に、評価値算出部３５は、入力画像の全てのピクセルの２値化データに対して、特徴点における評価値としてのＣＯＳ値及びＳＩＮ値の算出を行ったか否かの判定を行い（ステップＳ５５）、全てのピクセルの２値化データに対し、特徴点における評価値の算出を行った場合に認識処理を終了し、一方、特徴点における評価値の算出を行なっていないピクセルが存在する場合、処理をステップＳ５６へ出力する。
ここで、特徴点における評価値の算出を行っていないピクセルの検出は、たとえば、ｙ軸の軸座標を固定してｘ軸の軸座標に対応したピクセルを順番に処理し、固定したｙ軸の軸座標に対応するｘ軸の軸座標における処理が終了すると、ｙ軸の軸座標を変化させて、ｘ軸の軸座標に対応したピクセルを順番に処理するようにする。これにより、ｘ軸及びｙ軸におけるピクセルの数により、上述したｘ軸の軸座標とｙ軸の軸座標との組合せのループを組むことにより、終了時点を検出することができる。
【００５０】
次に、評価値算出部３５は、特徴点２値化部３３から未処理のピクセルの２値化データを読みだし（ステップＳ５６）、読みだした２値化データが予め設定した閾値を超え、このピクセルが第２の特徴点であるか否かの判定を行う（ステップＳ５７）。
このとき、評価値算出部３５は、読みだしたピクセルが第２の特徴点である場合、処理をステップＳ５８へ進め、このピクセルが第２の特徴点でない場合、処理をステップＳ５５へ進める。
ピクセルが第２の特徴点である場合、法線ベクトル抽出部３４は、この第２の特徴点における第２の単位法線ベクトルを求め、処理をステップＳ５９へ進める（ステップＳ５８）。
そして、評価値算出部３５は、上記第２の特徴点の第１の単位法線ベクトルと、登録画像の第２の法線ベクトルとからの評価値の算出を、登録画像の全ての第２の特徴点との間で行ったか否かの判定を行う（ステップＳ５９）。このとき、評価値算出部３５は、評価値の算出が登録画像の全ての第２の特徴点との間で行われている場合、処理をステップＳ５５へ進め、評価値の算出が登録画像の全ての第２の特徴点との間で行われていない場合、処理をステップＳ６０へ進める。
【００５１】
次に、評価値算出部３５は、評価値の算出に用いていない第１の特徴点の第１の単位法線ベクトルを特徴点データから読みだし、第２の特徴点の第２の単位法線ベクトル（ｎｘ，ｎｙ）と、第１の特徴点の第１の単位法線ベクトルとから、（４）式を用いてＣＯＳ（θ）及びＳＩＮ（θ）の評価値を算出する（ステップＳ６０）。
そして、候補座標点演算部３６は、（５）式を用いて、変位ベクトル（Ｄｘ，Ｄｙ）を回転角θにて回転させ、回転後の変位ベクトル（ｄｘ，ｄｙ）を算出する（ステップＳ６１）。
また、候補座標点演算部３６は、上記回転後の変位ベクトル（ｄｘ，ｄｙ）と、第１の特徴点の座標（Ｐｘ，Ｐｙ）とから、（６）式により基準点候補の座標（Ｒｘ，Ｒｙ）を算出する（ステップＳ６２）。
【００５２】
次に、ＣＯＳ値積算部３７は、上記座標（Ｒｘ，Ｒｙ）をｘ軸に投影し、ｘ軸の軸座標点（Ｒｘ）に対応するｘ軸ＣＯＳ値積算記憶部に上記ＣＯＳ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をｙ軸に投影し、ｙ軸の軸座標点（Ｒｙ）に対応するｙ軸ＣＯＳ値積算記憶部に上記ＣＯＳ（θ）を積算する。
同様に、ＳＩＮ値積算部３８は、上記座標（Ｒｘ，Ｒｙ）をｘ軸に投影し、ｘ軸の軸座標点（Ｒｘ）に対応するｘ軸ＳＩＮ値積算記憶部に上記ＳＩＮ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をｙ軸に投影し、ｙ軸の軸座標点（Ｒｙ）に対応するｙ軸ＳＩＮ値積算記憶部に上記ＳＩＮ（θ）を積算する（ステップＳ６３）。
【００５３】
上述した処理により、ｘ軸の軸座標に対応したｘ軸ＣＯＳ値積算記憶部、ｙ軸の軸座標に対応したｙ軸ＣＯＳ値積算記憶部、ｘ軸の軸座標に対応したｘ軸ＳＩＮ値積算記憶部及びｙ軸の軸座標に対応したｙ軸ＳＩＮ値積算記憶部に対し、認識対象物体の第２の特徴点各々の第２の単位法線ベクトルと、登録画像の全ての第１の単位法線ベクトルとの評価値が積算される。
そして、積算値加算部３９は、ｘ軸の各軸座標毎のｘ軸総合値を算出するとともに、ｙ軸の各軸座標毎のｙ軸総合値を算出し、ｘ軸総合値とｙ軸総合値とを各軸座標毎にそれぞれ加算し、２次元座標の各座標における総合値を算出する。
認識対象物体判定部４０は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として、ＣＯＳ積算値及びＳＩＮ積算値より得られる回転角θとともに出力する。
【００５４】
上述したように、本実施形態においては、ｘ軸上の１次元の軸座標に対応したｘ軸ＣＯＳ値積算記憶部及びｘ軸ＣＯＳ値積算記憶部と、ｙ軸上の１次元の軸座標に対応したｙ軸ＣＯＳ値積算記憶部及びｙ軸ＣＯＳ値積算記憶部とに対し、回転角θを含めた評価値を記憶するものである。すでに説明したように、各積算値記憶部には１つの軸座標における評価値が積算される。
ここで、特許文献１と同様の条件にてメモリー容量を見積もると、「１０２４×４×４」の計算式となり、１６ｋバイトのメモリー容量となる。このメモリー容量は、特許文献１の約８Ｍバイトに比較すると、２桁分のメモリー容量が削減されたことになる。これにより、ＣＰＵの１次キャッシュに収容可能な大きさとなり、キャッシュミスの発生により処理速度の低下を起こすことなく、ＣＰＵに演算処理を行わせることが可能となる。
上記計算式において、「１０２４」は、ｘ軸方向及びｙ軸方向のピクセル数（軸座標数に対応）であり、次の「４」が各積算値記憶部の容量であり、次の「４」が１次元に配列された積算値記憶部の数である。
【００５５】
＜第２の実施形態＞
次に、本発明の第２の実施形態による物体認識装置を説明する。第２の実施形態による物体識別装置は、第１の実施形態と同様の構成である。以下、異なる処理の点のみを説明する。
初めに、第１の実施形態において、複数（以下、２点として説明）の基準点が存在する場合における誤検出について説明する。第１の実施形態においては、総合値において１のピークのみ、すなわち基準点が存在する場合、あるいは図５に示すように、２点の基準点がいずれかの軸（ｘ軸あるいはｙ軸）に平行に存在する場合には、基準点と各軸座標とが一対一対応となるため、特に誤検出は起こらない。
【００５６】
しかしながら、図６に示すように、基準点がいずれの軸にも平行に配列していない場合、総合値がピーク値を超える値となる積算値として、ｘ軸に２つの積算値記憶部に記憶された積算値と、ｙ軸に２つの積算値記憶部に記憶された積算値とが存在する。これらｘ軸の２つの軸座標と、ｙ軸の２つの軸座標との組合せとして、２次元平面に対する逆投影を行い基準点の座標を求めると、実際に基準点が存在する黒丸で示す座標と、アーチファクトと呼ばれる偽基準点の白丸で示す座標とが混在することになる。この場合、詳細検出部４１によりアーチファクトを削除することができるが、アーチファクトの検出及び削除処理に演算処理が必要となるため、検出時間が長くなる。
【００５７】
そこで、第２の実施形態においては、図７で示すように、ｘ軸方向及びｙ軸方向に対する１次元の積算記憶部の配列に加え、ｘ軸及びｙ軸と異なる角度φの方向のＡ軸方向に対する１次元の積算記憶部（Ａ軸ＣＯＳ値積算記憶部，Ａ軸ＳＩＮ値積算記憶部）を、角度φの方向に設ける。このＡ軸は、認識対象物体が配置されている２次元平面の象限において、ｘ軸及びｙ軸に対向して設けられる。すなわち、このＡ軸は、ｘ軸及びｙ軸に加えて、座標（Ｒｘ、Ｒｙ）を投影するための投影軸として、図５に示すように、２次元平面の任意の位置に設けられる。このＡ軸における軸座標は、「Ｚ＝Ｒｘ×ＣＯＳ（φ）＋Ｒｙ×ＳＩＮ（φ）」から求める。２次元座標（Ｒｘ，Ｒｙ）が投影された軸座標Ｚに対応して、ＣＯＳ（θ）を積算するＡ軸ＣＯＳ値積算記憶部と、ＳＩＮ（θ）を積算するＡ軸ＳＩＮ値積算記憶部とが設けられることになる。すなわち、図８に示すように、ｘ軸に対応して２本、ｙ軸に対して２本、Ａ軸に対して２本の、計６本の１次元の積算値記憶部の配列が設けられている。
異なる点は、ＣＯＳ値積算部３７とＳＩＮ値積算部３８とが、ｘ軸とｙ軸とだけでなく、上述したように、Ａ軸にも２次元座標を投影し、その投影した軸座標に対応する積算記憶部に、評価値を積算することである。以下、この動作について説明する。
【００５８】
ＣＯＳ値積算部３７は、座標（Ｒｘ，Ｒｙ）をｘ軸に投影し、ｘ軸の軸座標点（Ｒｘ）に対応するｘ軸ＣＯＳ値積算記憶部にＣＯＳ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をｙ軸に投影し、ｙ軸の軸座標点（Ｒｙ）に対応するｙ軸ＣＯＳ値積算記憶部に上記ＣＯＳ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をＡ軸に投影し、Ａ軸の軸座標点（Ｚ）に対応するＡ軸ＣＯＳ値積算記憶部に上記ＣＯＳ（θ）を積算する。
同様に、ＳＩＮ値積算部３８は、座標（Ｒｘ，Ｒｙ）をｘ軸に投影し、ｘ軸の軸座標点（Ｒｘ）に対応するｘ軸ＳＩＮ値積算記憶部にＳＩＮ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をｙ軸に投影し、ｙ軸の軸座標点（Ｒｙ）に対応するｙ軸ＳＩＮ値積算記憶部に上記ＳＩＮ（θ）を積算するとともに、上記座標（Ｒｘ，Ｒｙ）をＡ軸に投影し、Ａ軸の軸座標点（Ｚ）に対応するＡ軸ＳＩＮ値積算記憶部に上記ＳＩＮ（θ）を積算する。
【００５９】
そして、積算値加算部３９は、ｘ軸の各軸座標毎のｘ軸総合値を算出し、ｙ軸の各軸座標毎のｙ軸総合値を算出し、またＡ軸の各軸座標のＡ軸総合値を算出し、ｘ軸総合値とｙ軸総合値とＺ軸総合値を軸座標毎にそれぞれ加算し、２次元座標の各座標における総合値を算出する。すなわち、ｘ軸の軸座標及びｙ軸の軸座標の組合せの２次元座標毎に、対応するｘ軸の軸座標のｘ軸総合値と、ｙ軸の軸座標のｙ軸総合値と、Ａ軸の軸座標のＡ軸総合値を加算して、各２次元座標の座標点の総合値を算出する。
認識対象物体判定部４０は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として、ＣＯＳ積算値及びＳＩＮ積算値より得られる回転角θとともに出力する。
そして、認識対象物体判定部４０は、上記総合値が予め設定したピーク値を超える座標点を、登録画像が配置された基準点として抽出し、登録画像に一致する認識対象物体の配置された基準点として出力する。
上述したように、ｘ軸及びｙ軸と異なるＡ軸を設けることにより、総合値が３軸積算値の合計から算出されることにより、アーチファクトの座標を排除することができる。
【００６０】
また、本実施形態においては、ｘ軸上の１次元の軸座標に対応したｘ軸ＣＯＳ値積算記憶部及びｘ軸ＣＯＳ値積算記憶部と、ｙ軸上の１次元の軸座標に対応したｙ軸ＣＯＳ値積算記憶部及びｙ軸ＣＯＳ値積算記憶部と、Ａ軸上の１次元の軸座標に対応したＡ軸ＣＯＳ値積算記憶部及びＡ軸ＣＯＳ値積算記憶部とに対し、回転角θを含めた評価値を記憶するものである。すでに説明したように、各積算値記憶部には１つの軸座標における評価値が積算される。
ここで、特許文献１と同様の条件にてメモリー容量を見積もると、「１０２４×４×ｎ」の計算式となり、４×ｎｋバイトのメモリー容量となる。このメモリー容量は、特許文献１の約８Ｍバイトに比較すると、第１の実施形態と同様に、２桁分のメモリー容量が削減されたことになる。これにより、ＣＰＵの１次キャッシュに収容可能な大きさとなり、キャッシュミスの発生により処理速度の低下を起こすことなく、ＣＰＵに演算処理を行わせることが可能となる。
上記計算式において、「１０２４」は、ｘ軸方向及びｙ軸方向のピクセル数（軸座標数に対応）であり、次の「４」が各積算値記憶部の容量であり、次の「ｎ」が１次元に配列された積算値記憶部の数である。
【００６１】
また、図１における物体認識装置の機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することにより物体認識の処理を行ってもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００６２】
また、「コンピューターシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００６３】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６４】
１…登録画像データ生成部
２…特徴点データ記憶部
３…物体認識部
１１…登録画像取得部
１２，３２…特徴点抽出部
１３，３３…特徴点２値化部
１４，３４…法線ベクトル抽出部
３１…入力画像取得部
３５…評価値算出部
３６…候補座標点演算部
３７…ＣＯＳ値積算部
３８…ＳＩＮ値積算部
３９…積算値加算部
４０…認識対象物体判定部
４１…詳細検出部
【図１】
2010282437.tif 000003
【図２】
2010282437.tif 000004
【図３】
2010282437.tif 000005
【図４】
2010282437.tif 000006
【図５】
2010282437.tif 000007
【図６】
2010282437.tif 000008
【図７】
2010282437.tif 000009
【図８】
2010282437.tif 000010
【図９】
2010282437.tif 000011
【図１０】
2010282437.tif 000012
【図１１】
2010282437.tif 000013
【図１２】
2010282437.tif 000014
【図１３】
2010282437.tif 000015
【図１４】
2010282437.tif 000016
【図１５】
2010282437.tif 000017
【図１６】
2010282437.tif 000018