JP2010282438A - 物体認識装置、物体認識方法及びプログラム - Google Patents
物体認識装置、物体認識方法及びプログラム Download PDFInfo
- Publication number
- JP2010282438A JP2010282438A JP2009135470A JP2009135470A JP2010282438A JP 2010282438 A JP2010282438 A JP 2010282438A JP 2009135470 A JP2009135470 A JP 2009135470A JP 2009135470 A JP2009135470 A JP 2009135470A JP 2010282438 A JP2010282438 A JP 2010282438A
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- point
- axis
- feature point
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】画像認識に必要な計算量及びメモリー容量を低減し、かつ一部が重なり合った複数の認識対象物体の検出処理を行うことが可能な画像認識装置を提供する。
【解決手段】本発明の物体認識装置は、登録画像の点対称変換された画像より抽出した複数の第1の特徴点、変換画像の基準点から第1の特徴点への変位ベクトルが記憶される特徴点データ記憶部と、入力画像の認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、第2の特徴点を回転中心として、変位ベクトルを単位角度にて順次回転させ、第2の特徴点と変位ベクトルとから候補座標点を算出する候補座標点算出部と、候補座標点を複数の座標軸に投影し、投影軸座標点に対し、変位ベクトルの回転角に対応させて投票を行う候補座標点投票部と、座標軸における投票における積算値の最大値の軸座標を基準点とする認識対象物体判定部とを有する。
【選択図】図2
【解決手段】本発明の物体認識装置は、登録画像の点対称変換された画像より抽出した複数の第1の特徴点、変換画像の基準点から第1の特徴点への変位ベクトルが記憶される特徴点データ記憶部と、入力画像の認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、第2の特徴点を回転中心として、変位ベクトルを単位角度にて順次回転させ、第2の特徴点と変位ベクトルとから候補座標点を算出する候補座標点算出部と、候補座標点を複数の座標軸に投影し、投影軸座標点に対し、変位ベクトルの回転角に対応させて投票を行う候補座標点投票部と、座標軸における投票における積算値の最大値の軸座標を基準点とする認識対象物体判定部とを有する。
【選択図】図2
Description
本発明は、入力される画像において、予め登録された参照物体の位置、姿勢(回転角)及びスケーリングファクターを検出する物体認識装置に関するものである。
撮像装置などから入力される入力画像から、予め登録された参照物体の位置(2次元座標系における位置座標(x,y))、回転角θ及びスケーリングファクターSなどを検出する検出方法として、相関法、フーリエ記述子法、モーメント法、ハフ変換法などがよく知られている。
上述したいずれの検出方法も、登録されている参照物体の登録画像の特徴点は予め抽出されて登録されている。
そして、入力画像内から抽出された認識対象物体の特徴点と、登録されている登録画像の特徴点とを用いて、入力画像内における登録画像に対応した物体の画像の位置、登録画像に対する姿勢、及びスケーリングファクターを求める。
上述したいずれの検出方法も、登録されている参照物体の登録画像の特徴点は予め抽出されて登録されている。
そして、入力画像内から抽出された認識対象物体の特徴点と、登録されている登録画像の特徴点とを用いて、入力画像内における登録画像に対応した物体の画像の位置、登録画像に対する姿勢、及びスケーリングファクターを求める。
上述した特徴点を用いた検出方法において、ハフ変換法は投票と呼ばれる単純な多数決の原理に基づくものである。
そのため、入力画像内における認識対象物体同士の1部の接触、あるいは重なりなどによる部分的な遮蔽、また画像ノイズなどに対し、認識対象物体の認識処理において頑健な性能を有している。
このハフ変換法において、任意形状を有する認識対象物体の検出を高速に行う方法として一般化ハフ変換法がある(例えば、非特許文献1参照)。
そのため、入力画像内における認識対象物体同士の1部の接触、あるいは重なりなどによる部分的な遮蔽、また画像ノイズなどに対し、認識対象物体の認識処理において頑健な性能を有している。
このハフ変換法において、任意形状を有する認識対象物体の検出を高速に行う方法として一般化ハフ変換法がある(例えば、非特許文献1参照)。
上記一般化ハフ変換法は、参照物体より抽出された特徴点(ピクセル単位)において、その特徴点における接線と、あるいは法線の角度と、またその特徴点及び物体の基準となる基準点の位置関係とを参照テーブルとして準備する。この基準点は、参照物体の2次元座標への配置位置を示す配置基準点である。
すなわち、モデルとなる登録画像の上記参照テーブルを生成する図12のフローチャートに示すように、登録画像の画像を入力し(ステップS1)、図13に示すように、参照物体の特徴点(P)を2次微分(ラプラシアン)法あるいはモラベック(Moravec)の方法等により抽出する(ステップS2)。つまり、周辺画素との値(画素値)の差の大きな点である輪郭線上の点や、表面状態が大きく変わる点などが特徴点となる。
すなわち、モデルとなる登録画像の上記参照テーブルを生成する図12のフローチャートに示すように、登録画像の画像を入力し(ステップS1)、図13に示すように、参照物体の特徴点(P)を2次微分(ラプラシアン)法あるいはモラベック(Moravec)の方法等により抽出する(ステップS2)。つまり、周辺画素との値(画素値)の差の大きな点である輪郭線上の点や、表面状態が大きく変わる点などが特徴点となる。
そして、登録画像における特徴点の2値化処理を予め設定した閾値を用いて行い、2値化データを出力する(ステップS3)。ここで行う2値化手法としては、あらかじめ設定してある閾値による単純2値化法をはじめとして、ある閾値でヒストグラムを2クラスに分割した場合のクラス間分散が最大になるときの閾値を2値化閾値とする大津法(「判別および最小2乗規準に基づく自動しきい値選定法」(大津)、電子通信学会論文誌、Vol.J63−D,No.4.pp.349−356,1980)、あるいは、階調を持つ画像に対して、局所的濃度に応じて閾値を設定する2値化法等が用いられる。
次に、登録画像の各特徴点のデータを記憶する参照テーブルの記憶領域の初期化を行い(ステップS4)、参照物体の基準点を任意の位置、例えば参照物体の重心位置として求める(ステップS5)。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS6)、全ての2値化データにおける特徴点データの取得処理が終了すると処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS7へ進める。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS6)、全ての2値化データにおける特徴点データの取得処理が終了すると処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS7へ進める。
未処理の2値化データを読み出し(ステップS7)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS8)、特徴点でない場合に処理をステップS6へ進め、特徴点である場合に処理をステップS9へ進める。
そして、特徴点(図においては単に点とする)における接線あるいは単位法線ベクトルを求め、処理をステップS6へ進める(ステップS9)。
例えば、ステップS9において、点P1における法線ベクトルN1を求め、点P2における法線ベクトルを求め、他の点においても同様に法線ベクトルを求める。これらの法線ベクトルの長さが同一となるように単位法線ベクトルとして規格化し、図14に示すように、特徴点の番号に対応させて、この特徴点における単位法線ベクトルを構成するx成分NXn(1≦n≦Mの整数、Mは特徴点の数)及びy成分NYnと、この特徴点における変位ベクトルDnを構成するx成分DXn及びy成分DYnとの参照テーブルを生成する。
そして、特徴点(図においては単に点とする)における接線あるいは単位法線ベクトルを求め、処理をステップS6へ進める(ステップS9)。
例えば、ステップS9において、点P1における法線ベクトルN1を求め、点P2における法線ベクトルを求め、他の点においても同様に法線ベクトルを求める。これらの法線ベクトルの長さが同一となるように単位法線ベクトルとして規格化し、図14に示すように、特徴点の番号に対応させて、この特徴点における単位法線ベクトルを構成するx成分NXn(1≦n≦Mの整数、Mは特徴点の数)及びy成分NYnと、この特徴点における変位ベクトルDnを構成するx成分DXn及びy成分DYnとの参照テーブルを生成する。
上記参照テーブルを用いた非特許文献1による画像認識処理は、図15に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し(ステップS11)、図16に示すように、入力画像内の認識対象物体の特徴点(Q)を参照画像と同様の方法にて抽出する(ステップS12)。この図16は、認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、その登録画像の特徴点における法線ベクトルの角度を合わせ、登録画像の変位ベクトルの指し示す基準点の位置の投票を行うことを示す概念図である。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS13)。
撮像装置等から入力画像を入力し(ステップS11)、図16に示すように、入力画像内の認識対象物体の特徴点(Q)を参照画像と同様の方法にて抽出する(ステップS12)。この図16は、認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、その登録画像の特徴点における法線ベクトルの角度を合わせ、登録画像の変位ベクトルの指し示す基準点の位置の投票を行うことを示す概念図である。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS13)。
次に、基準点の候補に対して投票を行う投票空間(図17の投票空間の概念図にある回転角度毎の基準点の座標を示す2次元平面)の記憶領域の初期化を行う(ステップS14)。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS15)、全ての2値化データに対する特徴点データの取得処理が終了した場合に処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS16へ進める。
上記基準点から特徴点への変位ベクトルと、特徴点における単位法線ベクトルとからなる特徴点データを求める処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS15)、全ての2値化データに対する特徴点データの取得処理が終了した場合に処理を終了し、特徴点データを取得する処理を行っていない2値化データがある場合に処理をステップS16へ進める。
未処理の2値化データを読み出し(ステップS16)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS17)、特徴点でない場合、つまり閾値よりも小さい場合に処理をステップS15へ進め、特徴点である場合、つまり閾値以上の場合に処理をステップS18へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ19へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点の投票処理を行ったか否かの判定を行い(ステップS19)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた投票処理が終了した場合、処理をステップS15へ進め、一方、投票処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS20へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ19へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点の投票処理を行ったか否かの判定を行い(ステップS19)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた投票処理が終了した場合、処理をステップS15へ進め、一方、投票処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS20へ進める。
認識対象物体の特徴点に対し、登録画像の特徴点を重ね合わせ、認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとの角度差(回転角θ)を求める(ステップS20)。
次に、登録画像の特徴点の変位ベクトルを、特徴点を中心として回転角θ分、以下の式により回転させる(ステップS21)。
認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとから、COS値とSIN値とを求める。たとえば、図13における点P1が図16における点Q2であると仮定した場合、以下の(1)式により求めることができる。
COS = Nx1×nx2 + Ny1×ny2
SIN = Nx1×ny2 − Ny1×nx2 …(1)
ここで、登録画像の単位法線ベクトルを(Nx1,Ny1)とし、認識対象物体の単位法線ベクトルを(nx2,ny2)とする。
ここで、変位ベクトルも同様に、特徴点に対して回転角θにより回転するため、回転させた変位ベクトルの成分dx及びdyは、以下の(2)式により求めることができる。
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(2)
ここで、登録画像の変位ベクトルを(DX,DY)としている。
認識対象物体の特徴点における単位法線ベクトルと、登録画像の特徴点における単位法線ベクトルとから、COS値とSIN値とを求める。たとえば、図13における点P1が図16における点Q2であると仮定した場合、以下の(1)式により求めることができる。
COS = Nx1×nx2 + Ny1×ny2
SIN = Nx1×ny2 − Ny1×nx2 …(1)
ここで、登録画像の単位法線ベクトルを(Nx1,Ny1)とし、認識対象物体の単位法線ベクトルを(nx2,ny2)とする。
ここで、変位ベクトルも同様に、特徴点に対して回転角θにより回転するため、回転させた変位ベクトルの成分dx及びdyは、以下の(2)式により求めることができる。
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(2)
ここで、登録画像の変位ベクトルを(DX,DY)としている。
入力画像の認識対象物体の特徴点の位置対して、上記回転させた変位ベクトルを、以下の式のように加えて、基準点の候補位置を求める(ステップS22)。
上述した式により、点Q2の座標を(Qx,Qy)とすると、認識対象物体の基準点の候補は以下の(3)式により求められる。
Rx = Qx + dx
Ry = Qy + dy …(3)
上述した式により、点Q2の座標を(Qx,Qy)とすると、認識対象物体の基準点の候補は以下の(3)式により求められる。
Rx = Qx + dx
Ry = Qy + dy …(3)
そして、回転角θに対応する2次元平面の座標に対し、上記基準点の候補の位置(Rx,Ry)に「1」を加算、すなわち投票を行う(ステップS23)。
上述したように、非特許文献1の方法においては、各特徴点における登録画像と認識対象物体とのそれぞれの法線の角度を合わせて(この際の回転角が姿勢となる)変位ベクトルの示す基準点の位置の投票を行う。
この結果、重ね合わせた特徴点が登録画像と認識対象物体とで対応している場合、法線ベクトルの角度を合わせると、登録画像の変位ベクトルが同一の点の方向を向き、その指し示す先の基準点が重なり合うため、投票数がピークとなる位置を、認識対象物体の基準点の位置として検出するとともに、その際の回転角を登録画像に対する姿勢として得ることができる。この処理により、登録画像と入力画像における認識対象物体との認識処理を非常に効率良く行う。
上述したように、非特許文献1の方法においては、各特徴点における登録画像と認識対象物体とのそれぞれの法線の角度を合わせて(この際の回転角が姿勢となる)変位ベクトルの示す基準点の位置の投票を行う。
この結果、重ね合わせた特徴点が登録画像と認識対象物体とで対応している場合、法線ベクトルの角度を合わせると、登録画像の変位ベクトルが同一の点の方向を向き、その指し示す先の基準点が重なり合うため、投票数がピークとなる位置を、認識対象物体の基準点の位置として検出するとともに、その際の回転角を登録画像に対する姿勢として得ることができる。この処理により、登録画像と入力画像における認識対象物体との認識処理を非常に効率良く行う。
しかしながら、この投票空間の次元を考えると、スケーリングファクターSを考慮しない場合であっても、図17に示すように、データ構成が縦位置(縦座標)、横位置(横座標)、回転角の3次元となる。また、スケーリングファクターによるサイズ変化も、物体検出において考慮すると1次元が加わり、4次元となる。
このため、実際の物体認識に対して応用する場合、3次元及び4次元の投票空間を構成するために非常に多くのメモリーを必要とすることになる。以降の説明においては、スケーリングファクターの次元を除いた3次元の投票空間に対して評価を行う。
このため、実際の物体認識に対して応用する場合、3次元及び4次元の投票空間を構成するために非常に多くのメモリーを必要とすることになる。以降の説明においては、スケーリングファクターの次元を除いた3次元の投票空間に対して評価を行う。
この3次元の投票空間の場合、上記非特許文献1の方法においては、「NX×NY×NA×NV」のビット数が必要となる。ここで、入力画像における認識対象物体の2次元座標における位置、及び登録画像に対する回転角の検出結果を示す際、2次元座標のx軸(横軸)の検出位置の分割数(分解能に対応)である座標点数NX、y軸(縦軸)の検出位置の分割数である座標点数NY、回転角度の検出角度の分割数である角度分割NA、それぞれの投票数を蓄積するメモリーのビット数NV(通常は2バイトあるいは4バイト)である。
すなわち、非特許文献1においては、認識対象物体の候補の位置及び角度ごとに、ぞれぞれの投票に対応させているため、多くのメモリー容量が必要となる。
この多くのメモリー容量を削減するため、物体検出候補の位置ごとに物体検出候補の回転角度θに対応するCOS値及びSIN値を単に積算する方法がある(たとえば、特許文献1参照)。
すなわち、非特許文献1においては、認識対象物体の候補の位置及び角度ごとに、ぞれぞれの投票に対応させているため、多くのメモリー容量が必要となる。
この多くのメモリー容量を削減するため、物体検出候補の位置ごとに物体検出候補の回転角度θに対応するCOS値及びSIN値を単に積算する方法がある(たとえば、特許文献1参照)。
特許文献1を用いた画像認識処理は、図18に示すフローチャートの動作により行われる。
撮像装置等から入力画像を入力し(ステップS31)、図16に示すように、入力画像内の認識対象物体の特徴点を参照画像と同様の方法にて抽出する(ステップS32)。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS33)。
撮像装置等から入力画像を入力し(ステップS31)、図16に示すように、入力画像内の認識対象物体の特徴点を参照画像と同様の方法にて抽出する(ステップS32)。
そして、入力画像における特徴点の2値化処理を、参照画像の処理と同様に、予め設定した閾値を用いて行い、2値化データを出力する(ステップS33)。
次に、基準点の候補に対して投票を行う投票空間(後述するCOS値及びSIN値を積算するそれぞれの2次元平面)の記憶領域の初期化を行う(ステップS34)。
各特徴点におけるCOS値及びSIN値それぞれを、上記基準点の候補の位置に対して積算する処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS35)、全ての2値化データに対する上記COS値及びSIN値の積算処理が終了した場合に処理を終了し、上記COS値及びSIN値の積算処理を行っていない2値化データがある場合に処理をステップS36へ進める。
各特徴点におけるCOS値及びSIN値それぞれを、上記基準点の候補の位置に対して積算する処理を、全ての2値化データに対して行ったか否かの判定を行い(ステップS35)、全ての2値化データに対する上記COS値及びSIN値の積算処理が終了した場合に処理を終了し、上記COS値及びSIN値の積算処理を行っていない2値化データがある場合に処理をステップS36へ進める。
未処理の2値化データを読み出し(ステップS36)、この2値化データが特徴点であるか否かの判定を上記閾値により行い(ステップS37)、特徴点でない場合に処理をステップS35へ進め、特徴点である場合に処理をステップS38へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ39へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点にCOS値及びSIN値の積算処理を行ったか否かの判定を行い(ステップS39)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた積算処理が終了した場合、処理をステップS35へ進め、一方、積算処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS40へ進める。
そして、特徴点の単位法線ベクトルを求め、処理をステップ39へ進める(ステップS18)。
登録画像の全ての特徴点を用いて、認識対象物体の選択された特徴点に対応した基準点にCOS値及びSIN値の積算処理を行ったか否かの判定を行い(ステップS39)、認識対象物体の選択された特徴点に対して、登録画像の全ての特徴点を用いた積算処理が終了した場合、処理をステップS35へ進め、一方、積算処理に用いられていない登録画像の特徴点が存在する場合、処理をステップS40へ進める。
入力画像における認識対象物体の特徴点の単位法線ベクトル(nx,ny)と、登録画像の特徴点の単位法線ベクトル(Nx,Ny)とから、以下の(4)式により、各特徴点におけるCOS値及びSIN値を求める(ステップS40)。
COS = Nx×nx + Ny×ny
SIN = Nx×ny − Ny×nx …(4)
COS = Nx×nx + Ny×ny
SIN = Nx×ny − Ny×nx …(4)
(4)式により求めたCOS値及びSIN値と、重ね合わせた登録画像の特徴点の変位ベクトル(DX,DY)とから、回転角θにより回転させた変位ベクトル(dx,dy)を、下記(5)式により求める。
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(5)
dx = COS×DX − SIN×DY
dy = SIN×DX + COS×DY …(5)
そして、入力画像における認識対象物体の特徴点(Qx,Qy)と、回転させた変位ベクトル(dx,dy)とから、以下の(6)式により、基準点位置の候補の位置を求める。
Rx = Qx + dx
Ry = Qy + dy …(6)
この得られた基準点位置の候補の位置(Rx,Ry)に対して、COS(θ)とSIN(θ)とを、図19に示すように、それぞれCOS(θ)の投票空間と、SIN(θ)の投票空間に積算する。
この結果、投票空間としてのメモリー容量は、「NX×NY×2×(積算のためのビット数)」で得られることになる。積算するビット数については双方ともに2から4ビットであるため、角度分解数NAを360とし1度の分解能を有すると考えると、特許文献1の方法は非特許文献1に比較して、1/180のメモリー容量にて実現することができる。ここで、2はCOS値、SIN値それぞれの積算を行う2つの2次元座標を示している。
Rx = Qx + dx
Ry = Qy + dy …(6)
この得られた基準点位置の候補の位置(Rx,Ry)に対して、COS(θ)とSIN(θ)とを、図19に示すように、それぞれCOS(θ)の投票空間と、SIN(θ)の投票空間に積算する。
この結果、投票空間としてのメモリー容量は、「NX×NY×2×(積算のためのビット数)」で得られることになる。積算するビット数については双方ともに2から4ビットであるため、角度分解数NAを360とし1度の分解能を有すると考えると、特許文献1の方法は非特許文献1に比較して、1/180のメモリー容量にて実現することができる。ここで、2はCOS値、SIN値それぞれの積算を行う2つの2次元座標を示している。
この投票処理により、認識対象物体の基準点の候補の点が登録画像に対して回転角θを有する真の基準点である場合、その候補の点に対して登録画像の各特徴点の全てからの回転角θの投票が大部分を占めることが考えらる。このため、真の基準点である点におけるCOS値とSIN値とのそれぞれの積算値は、その認識対象物体の回転角θの投票が大部分を占めることにより、その回転角θに対応するCOS値、SIN値の整数倍、投票数倍に近づくことになる。その結果、COS積算値、SIN積算値のいずれかまたは両方においてピークを得ることができる。
したがって、COS積算値、SIN積算値のピーク位置が入力画像における認識対象物体の基準点であり、その基準点に積算されたCOS値の積算値とSIN値の積算値との比、すなわちtan−1(SIN値の積算値/COS値の積算値)により回転角θを求めることができる。
したがって、COS積算値、SIN積算値のピーク位置が入力画像における認識対象物体の基準点であり、その基準点に積算されたCOS値の積算値とSIN値の積算値との比、すなわちtan−1(SIN値の積算値/COS値の積算値)により回転角θを求めることができる。
一方、基準点の候補の点が真の基準点でない場合、認識対象物体の特徴点における投票が誤投票であったり、あるいはノイズに起因するものとなり、投票される回転角θは一様乱数的な分布を有すると仮定される。
この結果、この真の基準点でない点でのCOS値及びSIN値の積算は、それぞれCOS関数、SIN関数を0度から360度までを一様な重みで単純に積分した値の整数倍となることが期待され、積算値は0に近づくことになる。
また、任意形状を有する認識対象物体の検出を行うための方法としては、相関法または畳込みが用いられている(例えば、非特許文献2参照)。
この結果、この真の基準点でない点でのCOS値及びSIN値の積算は、それぞれCOS関数、SIN関数を0度から360度までを一様な重みで単純に積分した値の整数倍となることが期待され、積算値は0に近づくことになる。
また、任意形状を有する認識対象物体の検出を行うための方法としては、相関法または畳込みが用いられている(例えば、非特許文献2参照)。
D.H.Ballard,"Generalizing The Hough Transform To Detect Arbitrary Shapes",Pattern Recongition,Vol.13,no.2,pp.111-122,1981
"新編画像解析ハンドブック"、2004、東京大学出版会、第2部第4章「マッチング」
しかしながら、特許文献1及び非特許文献1に示す物体認識方法にあっては、登録画像画像に対する入力画像における認識対象物体の回転角を元にして、変位ベクトルを回転させ、基準点の候補点を算出するため、登録画像から抽出した特徴点と、その特徴点における法線(または接線)のベクトル情報を必要としている。
このため、登録画像の特徴点毎に法線(または接線)のベクトル情報を得るための処理が必要となる。
また、登録画像と、入力画像とを撮像した際の、認識対象物体に対する照明方向や照明光の違いにより、計算から得られる法線ベクトルや接線の数値に系統的な誤差が発生することが考えられる。
この場合、登録画像の特徴点における法線ベクトルと、入力画像の特徴点における法線ベクトルとを用いて、基準点の候補座標における投票処理を行った結果にも誤差が発生することになる。
このため、登録画像の特徴点毎に法線(または接線)のベクトル情報を得るための処理が必要となる。
また、登録画像と、入力画像とを撮像した際の、認識対象物体に対する照明方向や照明光の違いにより、計算から得られる法線ベクトルや接線の数値に系統的な誤差が発生することが考えられる。
この場合、登録画像の特徴点における法線ベクトルと、入力画像の特徴点における法線ベクトルとを用いて、基準点の候補座標における投票処理を行った結果にも誤差が発生することになる。
また、特許文献1の物体認識方法は、特徴点における投票の動作が、正しい位置の回転角θ以外において等方的に行われ、投票結果が平均化されて「0」に近づくことが期待されている。
しかしながら、登録画像と入力画像の認識対象物体とにおける法線ベクトルの誤差により、誤った座標において大量の投票による積算が行われると、認識対象物体の検出処理が正しく行われないことになる。
また、特許文献1の物体認識方法は、入力画像に複数の認識対象物体が存在し、これらの認識対象物体が重なり合ったり、近接して配置されている場合、誤った座標に大量の投票による積算が行われ、認識対象物体の検出処理を正しく行うことができない。このとき、投票処理自体は正常に行われるために、その検出結果が正しいか否かを直接に検出することができない。
しかしながら、登録画像と入力画像の認識対象物体とにおける法線ベクトルの誤差により、誤った座標において大量の投票による積算が行われると、認識対象物体の検出処理が正しく行われないことになる。
また、特許文献1の物体認識方法は、入力画像に複数の認識対象物体が存在し、これらの認識対象物体が重なり合ったり、近接して配置されている場合、誤った座標に大量の投票による積算が行われ、認識対象物体の検出処理を正しく行うことができない。このとき、投票処理自体は正常に行われるために、その検出結果が正しいか否かを直接に検出することができない。
図20を用いて、特許文献1が認識処理を行えない場合を説明する。図20は、認識対象物体の構成及び配置について説明する概念図である。
図20(a)のモデル1と図20(b)モデル2とは、基準点を重心とし、同一の位置に基準点がある登録画像である。
図20(c)は、同じ登録画像のモデル1が回転角θを0度と180度として重なっている場合を示している。この場合、特許文献1においては0度と180度との積算が同一の座標にて重なるため、COS値、SIN値ともに平均化されて「0」となり、正確な検出が出来ない。
また、図20(d)は、モデル1が0度で配置され、モデル2が180度で配置されている。この場合も基準点が同一であるため、図20(c)と同様な状態となり、モデル1及びモデル2の双方共に検出することができない可能性が高い。
図20(a)のモデル1と図20(b)モデル2とは、基準点を重心とし、同一の位置に基準点がある登録画像である。
図20(c)は、同じ登録画像のモデル1が回転角θを0度と180度として重なっている場合を示している。この場合、特許文献1においては0度と180度との積算が同一の座標にて重なるため、COS値、SIN値ともに平均化されて「0」となり、正確な検出が出来ない。
また、図20(d)は、モデル1が0度で配置され、モデル2が180度で配置されている。この場合も基準点が同一であるため、図20(c)と同様な状態となり、モデル1及びモデル2の双方共に検出することができない可能性が高い。
一方、非特許文献2の物体認識方法は、相関法を用いるために、特徴点における法線ベクトルや接線を必要としないため、特許文献1及び非特許文献1における問題が発生することはない。
しかしながら、単純な相関法の場合、非特許文献1に記載されている計算量を低減する手法、及び特許文献1に記載されているメモリー容量を削減する方法が用いられていない。
すなわち、相関法においては、登録画像の全ての回転角θ毎に設けられた、基準点の2次元の候補座標に対して投票を行って行くためメモリー容量を多く必要とし、かつ相関値の計算において大量の演算処理を行う必要がある。
しかしながら、単純な相関法の場合、非特許文献1に記載されている計算量を低減する手法、及び特許文献1に記載されているメモリー容量を削減する方法が用いられていない。
すなわち、相関法においては、登録画像の全ての回転角θ毎に設けられた、基準点の2次元の候補座標に対して投票を行って行くためメモリー容量を多く必要とし、かつ相関値の計算において大量の演算処理を行う必要がある。
本発明は、このような事情に鑑みてなされたもので、その目的は、画像認識に必要な計算量及びメモリー容量を低減し、かつ一部が重なり合った複数の認識対象物体の検出処理を行うことが可能な画像認識装置を提供することにある。
この発明は上述した課題を解決するためになされたもので、本発明の物体認識装置は、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する候補座標点算出部と、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う候補座標点投票部と、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する認識対象物体判定部とを有することを特徴とする。
また、本発明の物体認識方法は、登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する過程と、特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する過程と、候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する過程と、候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う過程と、認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する過程とを有することを特徴とする。
また、本発明のプログラムは、登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する処理と、特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する処理と、候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する処理と、候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う処理と、認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する処理とを有する物体認識装置としてコンピューターを機能させるためのプログラムである。
この発明によれば、従来例のような2次元の積算記憶部の配列ではなく、1次元の記憶部の配列であるため、従来に比較してメモリー容量を削減することができ、かつ、相関法を用いているため、入力画像において複数の認識対象物体が重なり合っていても、それぞれを認識することができる。
また、この発明によれば、認識処理において法線ベクトルを用いないため、登録画像と入力画像との取得するときの光照射の環境の違いによる法線ベクトルの誤差の影響を受けないため、正確な認識を行うことができ、法線ベクトルの計算を行わないため、認識処理の時間を短縮することができる。
また、この発明によれば、第2の特徴点にて、第1の特徴点に対応する変位ベクトルを回転させ、回転させた変位ベクトルと第2の特徴点の座標点とから基準点の候補である候補座標点を算出するし、各軸に対する投票を行うため、登録画像と点対称変換された画像の回転角を替えつつ、畳み込みの演算を行う必要が無いため、認識処理を高速化することができる。
また、本発明の物体認識方法は、登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する過程と、特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する過程と、候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する過程と、候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う過程と、認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する過程とを有することを特徴とする。
また、本発明のプログラムは、登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する処理と、特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する処理と、候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する処理と、候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う処理と、認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する処理とを有する物体認識装置としてコンピューターを機能させるためのプログラムである。
この発明によれば、従来例のような2次元の積算記憶部の配列ではなく、1次元の記憶部の配列であるため、従来に比較してメモリー容量を削減することができ、かつ、相関法を用いているため、入力画像において複数の認識対象物体が重なり合っていても、それぞれを認識することができる。
また、この発明によれば、認識処理において法線ベクトルを用いないため、登録画像と入力画像との取得するときの光照射の環境の違いによる法線ベクトルの誤差の影響を受けないため、正確な認識を行うことができ、法線ベクトルの計算を行わないため、認識処理の時間を短縮することができる。
また、この発明によれば、第2の特徴点にて、第1の特徴点に対応する変位ベクトルを回転させ、回転させた変位ベクトルと第2の特徴点の座標点とから基準点の候補である候補座標点を算出するし、各軸に対する投票を行うため、登録画像と点対称変換された画像の回転角を替えつつ、畳み込みの演算を行う必要が無いため、認識処理を高速化することができる。
本発明の物体認識装置は、前記候補座標点算出部が、前記変位ベクトルを回転角0度から、単位角度毎に順次回転させ、回転角度の順番に、各軸において単位角度毎の軸座標に対応した積算記憶部の配列から、投票する積算記憶部の軸座標を予め設定した算出式により算出することを特徴とする。
この発明によれば、従来の畳み込み法のように回転角度毎に認識対象物体全ての第2の特徴点と登録画像の第1の特徴点との相関を演算するのではなく、回転角度毎に第1の特徴点と回転された変位ベクトルから得られる候補基準点に投票処理を行うのみのため、認識の処理時間を低減させることができる。
また、この発明によれば、候補基準点の算出処理を、変位ベクトルの回転角を0度から始めているため、この0度を基準として、単位角度単位で回転させた回転角に対応させ、順次、投影される軸座標を求めるため、予め設定した式により容易に軸座標が算出でき、かつ回転角に対応した積算記憶部の配列の列の順番に、上記軸座標に対応する積算記憶部に投票させれば良いため、従来に比較して処理速度を向上させることができる。
この発明によれば、従来の畳み込み法のように回転角度毎に認識対象物体全ての第2の特徴点と登録画像の第1の特徴点との相関を演算するのではなく、回転角度毎に第1の特徴点と回転された変位ベクトルから得られる候補基準点に投票処理を行うのみのため、認識の処理時間を低減させることができる。
また、この発明によれば、候補基準点の算出処理を、変位ベクトルの回転角を0度から始めているため、この0度を基準として、単位角度単位で回転させた回転角に対応させ、順次、投影される軸座標を求めるため、予め設定した式により容易に軸座標が算出でき、かつ回転角に対応した積算記憶部の配列の列の順番に、上記軸座標に対応する積算記憶部に投票させれば良いため、従来に比較して処理速度を向上させることができる。
本発明の物体認識装置は、前記座標軸が2次元平面におけるx軸及びy軸であることを特徴とする。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本及びy軸方向に2本の計4本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本及びy軸方向に2本の計4本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
本発明の物体認識装置は、前記座標軸が2次元平面におけるx軸及びy軸と、x軸の座標点及びy軸の座標点で表される直線からなる直線軸との3軸であることを特徴とする。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本、y軸方向に2本、直線軸方向に2本の計6本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
また、複数の基準点が存在する場合、アーチファクトが発生する可能性があるが、2次元の座標点を投影する軸を3本とすることにより、2本の場合に比較して位置識別能力を向上させることができ、上記アーチファクトを排除することができ、物体認識の処理効率を向上させることができる。
これにより、軸座標点に対応するCOS(θ)及びSIN(θ)各々の積算値を記憶する記憶部の1次元配列が、x軸方向に2本、y軸方向に2本、直線軸方向に2本の計6本で済むため、2次元座標の各座標点毎に記憶部が必要な従来例に比較すると、メモリー容量を削減することができる。
また、複数の基準点が存在する場合、アーチファクトが発生する可能性があるが、2次元の座標点を投影する軸を3本とすることにより、2本の場合に比較して位置識別能力を向上させることができ、上記アーチファクトを排除することができ、物体認識の処理効率を向上させることができる。
本発明は、入力画像における認識対象物体と、登録画像との相関を複数の軸の軸座標に対して投票するラドン変換を用いており、その投票の積算値が最大である各軸座標の座標値が示す2次元座標の座標点を認識対象物体の基準点として検出する。
すなわち、図1に示すように、登録画像に点対称変換された画像の基準点を、認識対象物体の第2の特徴点に重ね合わせ、その際に変換画像の変位ベクトルから認識対象物体の基準点の候補座標点を求め、その候補座標点を各軸に投影した軸座標点に「1」を積算する投票を行う。この投票を変換画像を予め設定した単位角づつ回転させた回転角毎に行う。
この結果、認識対象物体が登録画像に対して30度回転して入力画像に配置されていると、図1(a)に示すように、認識対象物体の基準点は変換画像の回転角が0の場合、検出されないが、図1(b)に示すように、変換画像を30度に回転した場合に、配置されている基準点を検出することができる。
すなわち、図1に示すように、登録画像に点対称変換された画像の基準点を、認識対象物体の第2の特徴点に重ね合わせ、その際に変換画像の変位ベクトルから認識対象物体の基準点の候補座標点を求め、その候補座標点を各軸に投影した軸座標点に「1」を積算する投票を行う。この投票を変換画像を予め設定した単位角づつ回転させた回転角毎に行う。
この結果、認識対象物体が登録画像に対して30度回転して入力画像に配置されていると、図1(a)に示すように、認識対象物体の基準点は変換画像の回転角が0の場合、検出されないが、図1(b)に示すように、変換画像を30度に回転した場合に、配置されている基準点を検出することができる。
<第1の実施形態>
以下、図面を参照して、本発明の第1の実施形態について説明する。図2は、この発明の第1の実施形態による物体認識装置の構成例を示す概略ブロック図である。本実施形態においては、基準点の候補座標点を投影して投票を行う軸をx軸とy軸との2つの場合を説明する。
この図において、本実施形態による物体認識装置は、登録画像データ生成部1、特徴点データ記憶部2及び物体認識部3とを有している。
登録画像データ生成部1は、登録画像に対して点対称変換された画像(以下、変換画像)より抽出した特徴点を第1の特徴点の配列として抽出し、変換画像の基準点を設定し、第1特徴点から基準点への変位ベクトルを求め、第1の特徴点の座標、変位ベクトルを第1の特徴点データとして、各変換画像の第1の特徴点の識別情報である特徴点番号に対応させ、第1の特徴点毎に特徴点データ記憶部2へ書き込んで記憶させる。上記基準点は、登録画像の2次元座標への配置位置を示す配置基準点である。また、基準点は、変換画像が配置された2次元座標上の任意の点で良く、例えば、変換画像の重心を基準点としても良い。
以下、図面を参照して、本発明の第1の実施形態について説明する。図2は、この発明の第1の実施形態による物体認識装置の構成例を示す概略ブロック図である。本実施形態においては、基準点の候補座標点を投影して投票を行う軸をx軸とy軸との2つの場合を説明する。
この図において、本実施形態による物体認識装置は、登録画像データ生成部1、特徴点データ記憶部2及び物体認識部3とを有している。
登録画像データ生成部1は、登録画像に対して点対称変換された画像(以下、変換画像)より抽出した特徴点を第1の特徴点の配列として抽出し、変換画像の基準点を設定し、第1特徴点から基準点への変位ベクトルを求め、第1の特徴点の座標、変位ベクトルを第1の特徴点データとして、各変換画像の第1の特徴点の識別情報である特徴点番号に対応させ、第1の特徴点毎に特徴点データ記憶部2へ書き込んで記憶させる。上記基準点は、登録画像の2次元座標への配置位置を示す配置基準点である。また、基準点は、変換画像が配置された2次元座標上の任意の点で良く、例えば、変換画像の重心を基準点としても良い。
特徴点データ記憶部2は、図14に示すテーブル構成により、第1の特徴点の特徴点番号に対応して、各変換画像の特徴点データが記憶されている。
物体認識部3は、入力画像における認識対象物体より抽出した第2の特徴点の配列として求め、第2の特徴点に変換画像の基準点を重ね合わせ、変換画像の変位ベクトルから認識対象物体の基準点の候補座標点を求め、この候補座標点に対する投票結果により、認識対象物体と登録画像との相関を判定していく。
物体認識部3は、入力画像における認識対象物体より抽出した第2の特徴点の配列として求め、第2の特徴点に変換画像の基準点を重ね合わせ、変換画像の変位ベクトルから認識対象物体の基準点の候補座標点を求め、この候補座標点に対する投票結果により、認識対象物体と登録画像との相関を判定していく。
上記登録画像データ生成部1は、登録画像取得部11、特徴点抽出部12、特徴点2値化部13及び変位ベクトル抽出部14を有している。この登録画像データ生成部1の動作は、特許文献1にて説明した図9のフローチャートの動作と同様である。
登録画像取得部11は、撮像装置あるいはCADシステムから、後に認識対象物体を認識するために用いる登録画像の画像データを入力する。
特徴点抽出部12は、上記登録画像に点対称変換された変換画像を生成し、この変換画像の第1の特徴点(ピクセル単位)を、非特許文献1における特徴抽出にて説明した2次微分(ラプラシアン)法あるいはモラベックの方法などを用いて抽出する。
登録画像取得部11は、撮像装置あるいはCADシステムから、後に認識対象物体を認識するために用いる登録画像の画像データを入力する。
特徴点抽出部12は、上記登録画像に点対称変換された変換画像を生成し、この変換画像の第1の特徴点(ピクセル単位)を、非特許文献1における特徴抽出にて説明した2次微分(ラプラシアン)法あるいはモラベックの方法などを用いて抽出する。
特徴点2値化部13は、変換画像の第1の特徴点のピクセルと、第1の特徴点以外のピクセルとの階調度による2値化を行う。例えば、特徴点2値化部13は、予め設定した階調度の閾値により、第1の特徴点のピクセルの階調度を「1」、第1の特徴点以外のピクセルの階調度を「0」とする。ここで、予め設定した閾値は、一般化ハフ変換法にて説明した2値化処理を行う閾値を用いる。
変位ベクトル抽出部14は、第1の特徴点毎に、基準点から第1の特徴点への変位ベクトルを求める。また、法線ベクトル抽出部14は、第1の特徴点の座標、変位ベクトルを第1の特徴点データとして、特徴点データ記憶部2へ書き込んで記憶させる。
変位ベクトル抽出部14は、第1の特徴点毎に、基準点から第1の特徴点への変位ベクトルを求める。また、法線ベクトル抽出部14は、第1の特徴点の座標、変位ベクトルを第1の特徴点データとして、特徴点データ記憶部2へ書き込んで記憶させる。
次に、物体認識部3は、入力画像取得部31、特徴点抽出部32、特徴点2値化部33、候補座標点演算部34、候補座標点投票部35、認識対象物体判定部36を有している。
入力画像取得部31は、カメラなどの撮像装置から、認識対象物体を含んだ入力画像の画像データを入力する。
特徴点抽出部32は、上記入力画像における認識対象物体の第2の特徴点(ピクセル単位)の座標値を、上記特徴点抽出部12と同様の手法を用いて抽出する。
入力画像取得部31は、カメラなどの撮像装置から、認識対象物体を含んだ入力画像の画像データを入力する。
特徴点抽出部32は、上記入力画像における認識対象物体の第2の特徴点(ピクセル単位)の座標値を、上記特徴点抽出部12と同様の手法を用いて抽出する。
特徴点2値化部33は、認識対象物体の第2の特徴点のピクセルと、第2の特徴点以外のピクセルとの階調度による2値化を行う。例えば、特徴点2値化部33は、予め設定した階調度の閾値により、第2の特徴点のピクセルの階調度を「1」、第2の特徴点以外のピクセルの階調度を「0」とする。ここで、予め設定した閾値は、特徴点2値化部13と同様の数値を用いる。
候補座標点演算部34は、第2の特徴点の座標値と、第1の特徴点の変位ベクトルから、登録画像の回転角が0度の際の座標点をx軸に投影した際のx軸における軸座標値Rxを、以下の(7)式により求める。
Rx=X+d×cos(θ+θ0) …(7)
この(7)式で、Xは第2の座標点のx座標値であり、dは変位ベクトルの長さであり、θ0は登録画像の回転角θが0の場合の角度である。
または、以下の(8)式により、軸座標Rxを求めることができる。
Rx=X+Dx×cos(θ)−Dy×sin(θ) …(8)
ここで、変位ベクトル(Dx,Dy)である。
そして、図3に示すように、変位ベクトルの角度θ0を求め、この角度θ0を基準値として変換画像の回転角θを単位角度毎に回転させた場合、θ+θ0=γとし、単位角度を1度とした場合γが0から359までのcos値を予め設定しておくことにり、各角度γにおける軸座標点Rxを容易に算出できることになる。
図3は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Rxを算出する処理を説明する概念図である。
Rx=X+d×cos(θ+θ0) …(7)
この(7)式で、Xは第2の座標点のx座標値であり、dは変位ベクトルの長さであり、θ0は登録画像の回転角θが0の場合の角度である。
または、以下の(8)式により、軸座標Rxを求めることができる。
Rx=X+Dx×cos(θ)−Dy×sin(θ) …(8)
ここで、変位ベクトル(Dx,Dy)である。
そして、図3に示すように、変位ベクトルの角度θ0を求め、この角度θ0を基準値として変換画像の回転角θを単位角度毎に回転させた場合、θ+θ0=γとし、単位角度を1度とした場合γが0から359までのcos値を予め設定しておくことにり、各角度γにおける軸座標点Rxを容易に算出できることになる。
図3は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Rxを算出する処理を説明する概念図である。
また、候補座標点演算部34は、第2の特徴点の座標値と、第1の特徴点の変位ベクトルから、登録画像の回転角が0度の際の座標点をy軸に投影した際のy軸における軸座標値Ryを、以下の(9)式により求める。
Ry=Y+d×sin(θ+θ0) …(9)
ここで、Yは第2の座標点のy座標値であり、dは変位ベクトルの長さであり、θ0は登録画像の回転角θが0の場合の角度である。
または、以下の(10)式により、軸座標Ryを求めることができる。
Ry=Y+Dx×sin(θ)+Dy×cos(θ) …(10)
ここで、変位ベクトル(Dx,Dy)である。
そして、図4に示すように、変位ベクトルの角度θ0を求め、この角度θ0を基準値として変換画像の回転角θを単位角度毎に回転させた場合、θ+θ0=γとし、単位角度を1度とした場合γが0から359までのsin値を予め設定しておくことにり、各角度γにおける軸座標点Ryを容易に算出できることになる。
図4は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Ryを算出する処理を説明する概念図である。
Ry=Y+d×sin(θ+θ0) …(9)
ここで、Yは第2の座標点のy座標値であり、dは変位ベクトルの長さであり、θ0は登録画像の回転角θが0の場合の角度である。
または、以下の(10)式により、軸座標Ryを求めることができる。
Ry=Y+Dx×sin(θ)+Dy×cos(θ) …(10)
ここで、変位ベクトル(Dx,Dy)である。
そして、図4に示すように、変位ベクトルの角度θ0を求め、この角度θ0を基準値として変換画像の回転角θを単位角度毎に回転させた場合、θ+θ0=γとし、単位角度を1度とした場合γが0から359までのsin値を予め設定しておくことにり、各角度γにおける軸座標点Ryを容易に算出できることになる。
図4は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Ryを算出する処理を説明する概念図である。
候補座標点投票部35は、図3に示すように軸座標Rxに対応した積算記憶部の1次元配列を各回転角θ毎に有している。
同様に、候補座標点投票部35は、図4に示すように軸座標Ryに対応した積算記憶部の1次元配列を各回転角度θ毎に有している。
本実施形態においては、上述したように、回転角θの回転を単位角度1度として行うため、x軸及びy軸それぞれに対応して0から359度の360本ずつ、計720本が設けられている。
また、候補座標点投票部35は、上記候補座標点演算部34が求めた変位ベクトルの回転に対応した軸座標により、x軸及びy軸それぞれの回転角θに対応した積算記憶部の配列において、軸座標に対応した積算記憶部に「1」を投票して積算する。
図4は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Ryを算出する処理を説明する概念図である。
同様に、候補座標点投票部35は、図4に示すように軸座標Ryに対応した積算記憶部の1次元配列を各回転角度θ毎に有している。
本実施形態においては、上述したように、回転角θの回転を単位角度1度として行うため、x軸及びy軸それぞれに対応して0から359度の360本ずつ、計720本が設けられている。
また、候補座標点投票部35は、上記候補座標点演算部34が求めた変位ベクトルの回転に対応した軸座標により、x軸及びy軸それぞれの回転角θに対応した積算記憶部の配列において、軸座標に対応した積算記憶部に「1」を投票して積算する。
図4は、第2の特徴点の座標値(X,Y)と変位ベクトルとから軸座標Ryを算出する処理を説明する概念図である。
認識対象物体判定部40は、上記x軸及びy軸軸における積算記憶部の配列において、予め設定したピーク値を超える積算値を有する積算記憶部を抽出し、図5に示すように、その積算記憶部に対応する軸座標Rx、及び軸座標Ryを組み合わせ、すなわち2次元平面に対する逆投影により得られた2次元の座標点(Rx,Ry)を、登録画像と形状が一致する認識対象物体の基準点が配置された位置とし、ピーク値を超える積算値のあった配列の回転角を、登録画像に対する認識対象物体の回転角として出力する。図5は、ピーク値を超えた積算値を有する積算記憶部から、登録画像と一致する認識対象物体の基準点の検出を示す概念図である。
また、物体認識部3に接続されている詳細検出部37は、認識対象物体の位置を詳細に知る必要がある場合、上記認識対象物体判定部40が抽出した基準点及び回転角θを、より認識対象物体の配置された位置を詳細に抽出する処理を行う。そのため、詳細な認識対象物体の配置位置の抽出の必要がなければ、詳細検出部37を設ける必要はない。
次に、本実施形態における認識対象物体と登録画像との認識処理を図6を用いて説明する。図6は、上記認識処理の動作例を説明するフローチャートである。
入力画像取得部31は、図視しない撮像装置から入力画像を入力し、例えばピクセルで表現された画像データとして特徴点抽出部32及び法線ベクトル抽出部34へ出力する(ステップS51)。
入力画像が入力されると、特徴点抽出部32は、入力画像における認識対象物体の第2の特徴点を抽出し、抽出した入力画像を特徴点2値化部33へ出力する(ステップS52)。
次に、特徴点2値化部33は、入力される入力画像の各ピクセルに対し、第2の特徴点のピクセルと、それ以外のピクセルとの階調度の2値化を行い、内部の記憶部に記憶する(ステップS53)。
入力画像取得部31は、図視しない撮像装置から入力画像を入力し、例えばピクセルで表現された画像データとして特徴点抽出部32及び法線ベクトル抽出部34へ出力する(ステップS51)。
入力画像が入力されると、特徴点抽出部32は、入力画像における認識対象物体の第2の特徴点を抽出し、抽出した入力画像を特徴点2値化部33へ出力する(ステップS52)。
次に、特徴点2値化部33は、入力される入力画像の各ピクセルに対し、第2の特徴点のピクセルと、それ以外のピクセルとの階調度の2値化を行い、内部の記憶部に記憶する(ステップS53)。
そして、候補座標点投票部35は、x軸及びy軸におけるすべての積算記憶部の積算値を初期化、すなわち積算値を「0」とする(ステップS54)。
次に、候補座標点演算部34は、入力画像の全てのピクセルの2値化データに対して、特徴点における評価値としての投票処理を行ったか否かの判定を行い(ステップS55)、全てのピクセルの2値化データに対し、特徴点における投票を行った場合に認識処理を終了し、一方、特徴点における投票を行なっていないピクセルが存在する場合、処理をステップS56へ進める。
ここで、特徴点における評価値の算出を行っていないピクセルの検出は、たとえば、y軸の軸座標を固定してx軸の軸座標に対応したピクセルを順番に処理し、固定したy軸の軸座標に対応するx軸の軸座標における処理が終了すると、y軸の軸座標を変化させて、x軸の軸座標に対応したピクセルを順番に処理するようにする。これにより、x軸及びy軸におけるピクセルの数により、上述したx軸の軸座標とy軸の軸座標との組合せのループを組むことにより、終了時点を検出することができる。
次に、候補座標点演算部34は、入力画像の全てのピクセルの2値化データに対して、特徴点における評価値としての投票処理を行ったか否かの判定を行い(ステップS55)、全てのピクセルの2値化データに対し、特徴点における投票を行った場合に認識処理を終了し、一方、特徴点における投票を行なっていないピクセルが存在する場合、処理をステップS56へ進める。
ここで、特徴点における評価値の算出を行っていないピクセルの検出は、たとえば、y軸の軸座標を固定してx軸の軸座標に対応したピクセルを順番に処理し、固定したy軸の軸座標に対応するx軸の軸座標における処理が終了すると、y軸の軸座標を変化させて、x軸の軸座標に対応したピクセルを順番に処理するようにする。これにより、x軸及びy軸におけるピクセルの数により、上述したx軸の軸座標とy軸の軸座標との組合せのループを組むことにより、終了時点を検出することができる。
次に、候補座標点演算部34は、特徴点2値化部33から未処理のピクセルの2値化データを読みだし(ステップS56)、読みだした2値化データが予め設定した閾値を超え、このピクセルが第2の特徴点であるか否かの判定を行う(ステップS57)。
このとき、候補座標点演算部34は、読みだしたピクセルが第2の特徴点である場合、処理をステップS58へ進め、このピクセルが第2の特徴点でない場合、処理をステップS55へ進める。
ピクセルが第2の特徴点である場合、候補座標点演算部34は、第2の特徴点座標おいて、変換画像の全ての第1の特徴点の処理を行ったか否かの判定を行い(ステップS58)、処理が行われていない第1の特徴点が残っていない場合、処理をステップS55へ進め、処理が行われていない第1の特徴点が残っている場合、残っている座標点に対応した変位ベクトルを特徴点データ記憶部2から読み出し、回転角θを「0」に初期化して処理をステップS59へ進める。
このとき、候補座標点演算部34は、読みだしたピクセルが第2の特徴点である場合、処理をステップS58へ進め、このピクセルが第2の特徴点でない場合、処理をステップS55へ進める。
ピクセルが第2の特徴点である場合、候補座標点演算部34は、第2の特徴点座標おいて、変換画像の全ての第1の特徴点の処理を行ったか否かの判定を行い(ステップS58)、処理が行われていない第1の特徴点が残っていない場合、処理をステップS55へ進め、処理が行われていない第1の特徴点が残っている場合、残っている座標点に対応した変位ベクトルを特徴点データ記憶部2から読み出し、回転角θを「0」に初期化して処理をステップS59へ進める。
次に、候補座標点演算部34は、上記変位ベクトルの全ての回転角において、この回転させた変位ベクトルと、第2の特徴点の座標とから、候補座標点を生成したか否かの判定を行い(ステップS59)、全ての回転角に対し、その第1の特徴点における変位ベクトルを回転させた場合、処理をステップS58へ進め、一方、回転させていない回転角が存在する場合、変位ベクトルの回転角を単位角度分だけ回転させ、処理をステップS60へ進める。
候補座標点演算部34は、変位ベクトル(Dx,Dy)と第2の特徴点の座標(X,Y)とを用い、上記(8)式によりx軸の軸座標Rxを算出する。
そして、候補座標点投票部35は、現在の回転角θの配列及び軸座標Rxに対応した、x軸における積算記憶部に「1」を投票して積算処理を行う(ステップS60)。
次に、候補座標点演算部34は、変位ベクトル(Dx,Dy)と第2の特徴点の座標(X,Y)とを用い、上記(10)式によりy軸の軸座標Ryを算出する。
そして、候補座標点投票部35は、現在の回転角θの配列及び軸座標Ryに対応した、y軸における積算記憶部に「1」を投票して積算処理を行う(ステップS61)。
そして、候補座標点投票部35は、現在の回転角θの配列及び軸座標Rxに対応した、x軸における積算記憶部に「1」を投票して積算処理を行う(ステップS60)。
次に、候補座標点演算部34は、変位ベクトル(Dx,Dy)と第2の特徴点の座標(X,Y)とを用い、上記(10)式によりy軸の軸座標Ryを算出する。
そして、候補座標点投票部35は、現在の回転角θの配列及び軸座標Ryに対応した、y軸における積算記憶部に「1」を投票して積算処理を行う(ステップS61)。
次に、認識対象物体判定部40は、図6のフローチャートの投票処理が終了した後、各回転角毎のx軸の軸座標に対応した積算記憶部の配列、y軸の軸座標に対応した積算記憶部の配列それぞれにおいて、ピーク値を超える積算値を有する積算記憶部を抽出する。
そして、認識対象物体判定部40は、図5に示すように、抽出されたx軸の積算記憶部に対応する軸座標Rxと、抽出されたy軸の積算記憶部に対応する軸座標Ryとの組合せ、すなわち2次元平面に対する逆投影を行って得られる2次元の座標点(Rx,Ry)を、登録画像に一致する認識対象物体の基準点として検出する。
また、認識対象物体判定部40は、x軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出するとともに、y軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出する。
そして、認識対象物体判定部40は、座標点(Rx,Ry)に対応する積算記憶部の存在する配列の回転角を、その認識対象物体の登録画像に対する回転角として出力する。
そして、認識対象物体判定部40は、図5に示すように、抽出されたx軸の積算記憶部に対応する軸座標Rxと、抽出されたy軸の積算記憶部に対応する軸座標Ryとの組合せ、すなわち2次元平面に対する逆投影を行って得られる2次元の座標点(Rx,Ry)を、登録画像に一致する認識対象物体の基準点として検出する。
また、認識対象物体判定部40は、x軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出するとともに、y軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出する。
そして、認識対象物体判定部40は、座標点(Rx,Ry)に対応する積算記憶部の存在する配列の回転角を、その認識対象物体の登録画像に対する回転角として出力する。
上述したように、本実施形態においては、x軸上の1次元の軸座標に対応した積算記憶部の1次元配列と、y軸上の1次元の軸座標に対応した積算値記憶部の1次元配列とを、回転角の検出の分解能である1度に対応して360本ずつ、計720本有している。すでに説明したように、各積算記憶部には1つの軸座標における投票が積算される。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×720」の計算式となり、3Mバイトのメモリー容量となる。このメモリー容量は、特許文献1の約8Mバイトに比較すると、半分以下にメモリー容量が削減されたことになる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「760」が1次元に配列された積算記憶部の配列数である。
また、認識対象物体の検出において相関法を用いているため、特許文献1と異なり、一部が他の認識対象物体と重なっていたとしても、登録画像と一致した認識対象物体の検出を行うことが可能である。
また、登録画像と入力画像との取得の際の照明方向や照明光の違いにより、計算から得られる系統的な誤差を有する法線ベクトル等を用いる必要がないため、登録画像と入力画像との取得の環境の違いによる影響を抑制することが可能である。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×720」の計算式となり、3Mバイトのメモリー容量となる。このメモリー容量は、特許文献1の約8Mバイトに比較すると、半分以下にメモリー容量が削減されたことになる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「760」が1次元に配列された積算記憶部の配列数である。
また、認識対象物体の検出において相関法を用いているため、特許文献1と異なり、一部が他の認識対象物体と重なっていたとしても、登録画像と一致した認識対象物体の検出を行うことが可能である。
また、登録画像と入力画像との取得の際の照明方向や照明光の違いにより、計算から得られる系統的な誤差を有する法線ベクトル等を用いる必要がないため、登録画像と入力画像との取得の環境の違いによる影響を抑制することが可能である。
<第2の実施形態>
次に、本発明の第2の実施形態による物体認識装置を説明する。第2の実施形態による物体識別装置は、第1の実施形態と同様の構成である。以下、異なる処理の点のみを説明する。
初めに、第1の実施形態において、複数(以下、2点として説明)の基準点が存在する場合における誤検出について説明する。第1の実施形態においては、積算値において1のピークのみ、すなわち基準点が存在する場合、あるいは図7に示すように、2点の基準点がいずれかの軸(x軸あるいはy軸)に平行に存在する場合には、基準点と各軸座標とが一対一対応となるため、特に誤検出は起こらない。
次に、本発明の第2の実施形態による物体認識装置を説明する。第2の実施形態による物体識別装置は、第1の実施形態と同様の構成である。以下、異なる処理の点のみを説明する。
初めに、第1の実施形態において、複数(以下、2点として説明)の基準点が存在する場合における誤検出について説明する。第1の実施形態においては、積算値において1のピークのみ、すなわち基準点が存在する場合、あるいは図7に示すように、2点の基準点がいずれかの軸(x軸あるいはy軸)に平行に存在する場合には、基準点と各軸座標とが一対一対応となるため、特に誤検出は起こらない。
しかしながら、図8に示すように、基準点がいずれの軸にも平行に配列していない場合、積算値がピーク値を超える値となる積算値として、x軸に2つの積算記憶部に記憶された積算値と、y軸に2つの積算記憶部に記憶された積算値とが存在する。これらx軸の2つの軸座標と、y軸の2つの軸座標との組合せとして、実際に基準点が存在する黒丸で示す座標と、アーチファクトと呼ばれる偽基準点の白丸で示す座標とが混在することになる。この場合、詳細検出部37によりアーチファクトを削除することができるが、アーチファクトの検出及び削除処理に演算処理が必要となるため、検出時間が長くなる。
そこで、第2の実施形態においては、図9で示すように、x軸方向及びy軸方向に対する1次元の積算記憶部の配列に加え、x軸及びy軸と異なる角度φの方向のA軸方向に対する1次元の積算記憶部の配列を、角度φの方向に設ける。このA軸は、認識対象物体が配置されている2次元平面の象限において、x軸及びy軸に対向して設けられる。
すなわち、このA軸は、x軸及びy軸に加えて、座標(Rx、Ry)を投影するための投影軸として、図9に示すように、2次元平面の任意の位置に設けられる。図9は、x軸、y軸及びA軸の2次元座標における関係を示す概念図である。
すなわち、このA軸は、x軸及びy軸に加えて、座標(Rx、Ry)を投影するための投影軸として、図9に示すように、2次元平面の任意の位置に設けられる。図9は、x軸、y軸及びA軸の2次元座標における関係を示す概念図である。
本実施形態の候補座標点演算部34における各軸の軸座標の算出は、以下の(11)式を用いる。
Rz=Xcos(φ)+Ysin(φ)+d×cos(θ+θ0−φ) …(11)
この(11)式において、図10に示すように、x軸の軸座標を算出する場合φ=0とし、y軸の軸座標を算出する場合φ=90度とし、A軸の軸座標を算出する場合φは任意の角度とする。図10は、(11)式におけるφの角度と、x軸、y軸及びA軸の関係を示す概念図である。
Rz=Xcos(φ)+Ysin(φ)+d×cos(θ+θ0−φ) …(11)
この(11)式において、図10に示すように、x軸の軸座標を算出する場合φ=0とし、y軸の軸座標を算出する場合φ=90度とし、A軸の軸座標を算出する場合φは任意の角度とする。図10は、(11)式におけるφの角度と、x軸、y軸及びA軸の関係を示す概念図である。
次に、本実施形態における認識対象物体と登録画像との認識処理を図11を用いて説明する。図11は、上記認識処理の動作例を説明するフローチャートである。
第1の実施形態における図6のフローチャートの動作と同様な処理については同一のステップ番号を付してある。以下、第1の実施形態と異なるステップのみを説明する。ステップS51からステップ53までは、図6のフローチャートと同様である。
ステップS64において、ステップS53における2値化が終了した後、候補座標点投票部35は、x軸、y軸及びA軸におけるすべての積算記憶部の積算値を初期化、すなわち積算値を「0」とする(ステップS64)。
第1の実施形態における図6のフローチャートの動作と同様な処理については同一のステップ番号を付してある。以下、第1の実施形態と異なるステップのみを説明する。ステップS51からステップ53までは、図6のフローチャートと同様である。
ステップS64において、ステップS53における2値化が終了した後、候補座標点投票部35は、x軸、y軸及びA軸におけるすべての積算記憶部の積算値を初期化、すなわち積算値を「0」とする(ステップS64)。
次に、候補座標点演算部34は、第2の特徴点座標おいて、変換画像の全ての第1の特徴点の処理を行ったか否かの判定を行い(ステップS58)、処理が行われていない第1の特徴点が残っていない場合、処理をステップS55へ進め、処理が行われていない第1の特徴点が残っている場合、残っている座標点に対応した変位ベクトルを特徴点データ記憶部2から読み出して処理をステップS69へ進める。ステップS55からステップ58までは図6のフローチャートと同様である。
新たな第1の特徴点の変位ベクトルが入力されると、候補座標点演算部34は、全ての軸に対する投票が終了したか否かの判定を行い(ステップS69)、全ての軸に対する投票が終了した場合、処理した軸を示すフラグをリセットした後、フラグ処理をステップS58へ進め、一方全ての軸に対する投票が終了していない場合処理をステップS70へ進める。
このとき、候補座標点演算部34は、x軸、y軸及びA軸の順番で軸を設定する構成となっており、x軸、y軸及びA軸の全てのフラグが立った状態にてこのステップS69の処理に入ってきた場合、全ての軸の処理が終了したとし、一方、フラグが立っていない場合、x軸、y軸及びA軸の順番にて、空いているフラグの軸に対応する角度をφに対して設定し、対応する軸のフラグを立てる。
新たな第1の特徴点の変位ベクトルが入力されると、候補座標点演算部34は、全ての軸に対する投票が終了したか否かの判定を行い(ステップS69)、全ての軸に対する投票が終了した場合、処理した軸を示すフラグをリセットした後、フラグ処理をステップS58へ進め、一方全ての軸に対する投票が終了していない場合処理をステップS70へ進める。
このとき、候補座標点演算部34は、x軸、y軸及びA軸の順番で軸を設定する構成となっており、x軸、y軸及びA軸の全てのフラグが立った状態にてこのステップS69の処理に入ってきた場合、全ての軸の処理が終了したとし、一方、フラグが立っていない場合、x軸、y軸及びA軸の順番にて、空いているフラグの軸に対応する角度をφに対して設定し、対応する軸のフラグを立てる。
次に、上記変位ベクトルの全ての回転角において、この回転させた変位ベクトルと、第2の特徴点の座標とから、候補座標点を生成したか否かの判定を行い(ステップS70)、全ての回転角に対し、その第1の特徴点における変位ベクトルを回転させた場合、処理をステップS69へ進め、一方、回転させていない回転角が存在する場合、変位ベクトルの回転角を単位角度分だけ回転させ、処理をステップS71へ進める。
候補座標点演算部34は、変位ベクトル(Dx,Dy)と第2の特徴点の座標(X,Y)とを用い、上記(11)式により、角度φに対応する軸の軸座標を算出する。
そして、候補座標点投票部35は、上記軸における現在の回転角θの配列及び算出された軸座標に対応させ、軸における積算記憶部に「1」を投票して積算処理を行う(ステップS71)。
そして、候補座標点投票部35は、上記軸における現在の回転角θの配列及び算出された軸座標に対応させ、軸における積算記憶部に「1」を投票して積算処理を行う(ステップS71)。
次に、認識対象物体判定部40は、図11のフローチャートの投票処理が終了した後、各回転角毎のx軸の軸座標に対応した積算記憶部の配列、y軸の軸座標に対応した積算記憶部の配列、A軸の軸座標に対応した積算記憶部の配列それぞれにおいて、ピーク値を超える積算値を有する積算記憶部を抽出する。
そして、認識対象物体判定部40は、図9に示すように、抽出されたx軸の積算記憶部に対応する軸座標Rxと、抽出されたy軸の積算記憶部に対応する軸座標Ry、抽出されたA軸の積算記憶部に対応する軸座標Rzとの組合せ、すなわち2次元平面に対する逆投影により得られた2次元の座標点(Rx,Ry,Rz)を、登録画像に一致する認識対象物体の基準点として検出する。
また、認識対象物体判定部40は、x軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出し、y軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出し、A軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出する。
そして、認識対象物体判定部40は、座標点(Rx,Ry,Rz)に対応する積算記憶部の存在する配列の回転角を、その認識対象物体の登録画像に対する回転角として出力する。
そして、認識対象物体判定部40は、図9に示すように、抽出されたx軸の積算記憶部に対応する軸座標Rxと、抽出されたy軸の積算記憶部に対応する軸座標Ry、抽出されたA軸の積算記憶部に対応する軸座標Rzとの組合せ、すなわち2次元平面に対する逆投影により得られた2次元の座標点(Rx,Ry,Rz)を、登録画像に一致する認識対象物体の基準点として検出する。
また、認識対象物体判定部40は、x軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出し、y軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出し、A軸に対応する積算記憶部の配列において、ピーク値を超える積算値を有する積算記憶部の存在する配列に対応する回転角を抽出する。
そして、認識対象物体判定部40は、座標点(Rx,Ry,Rz)に対応する積算記憶部の存在する配列の回転角を、その認識対象物体の登録画像に対する回転角として出力する。
上述したように、本実施形態においては、x軸上の1次元の軸座標に対応した積算記憶部の1次元配列と、y軸上の1次元の軸座標に対応した積算値記憶部の1次元配列と、A軸上の1次元の軸座標に対応した積算値記憶部の1次元配列とを、回転角の検出の分解能である1度に対応して360本ずつ、計1080本有している。すでに説明したように、各積算記憶部には1つの軸座標における投票が積算される。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×1080」の計算式となり、4Mバイトのメモリー容量となる。ここでは説明を簡単にするために、A軸上の1次元配列の大きさも1024であるとした。このメモリー容量は、特許文献1の約8Mバイトに比較すると、約半分にメモリー容量が削減されたことになる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「1080」が1次元に配列された積算記憶部の配列数である。
また、第1の実施形態の効果に加え、x軸及びy軸と異なるA軸を設けることにより、各軸の軸座標の組合せから求められるため、3軸全ての軸座標がピーク値を超える積算値を有していないと、基準点として検出されないため、2軸の際に発生するアーチファクトの座標を排除することができる。
ここで、特許文献1と同様の条件にてメモリー容量を見積もると、「1024×4×1080」の計算式となり、4Mバイトのメモリー容量となる。ここでは説明を簡単にするために、A軸上の1次元配列の大きさも1024であるとした。このメモリー容量は、特許文献1の約8Mバイトに比較すると、約半分にメモリー容量が削減されたことになる。
上記計算式において、「1024」は、x軸方向及びy軸方向のピクセル数(軸座標数に対応)であり、次の「4」が各積算値記憶部の容量であり、次の「1080」が1次元に配列された積算記憶部の配列数である。
また、第1の実施形態の効果に加え、x軸及びy軸と異なるA軸を設けることにより、各軸の軸座標の組合せから求められるため、3軸全ての軸座標がピーク値を超える積算値を有していないと、基準点として検出されないため、2軸の際に発生するアーチファクトの座標を排除することができる。
また、図2における物体認識装置の機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することにより物体認識の処理を行ってもよい。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピューターシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
1…登録画像データ生成部
2…特徴点データ記憶部
3…物体認識部
11…登録画像取得部
12,32…特徴点抽出部
13,33…特徴点2値化部
14…変位ベクトル抽出部
31…入力画像取得部
34…候補座標点演算部
35…候補座標点投票部
36…認識対象物体判定部
37…詳細検出部
2…特徴点データ記憶部
3…物体認識部
11…登録画像取得部
12,32…特徴点抽出部
13,33…特徴点2値化部
14…変位ベクトル抽出部
31…入力画像取得部
34…候補座標点演算部
35…候補座標点投票部
36…認識対象物体判定部
37…詳細検出部
Claims (6)
- 登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データが記憶される特徴点データ記憶部と、
入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する特徴点抽出部と、
前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する候補座標点算出部と、
前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う候補座標点投票部と、
前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する認識対象物体判定部と
を有することを特徴とする物体認識装置。 - 前記候補座標点算出部が、前記変位ベクトルを回転角0度から、単位角度毎に順次回転させ、回転角度の順番に、各軸において単位角度毎の軸座標に対応した積算記憶部の配列から、投票する積算記憶部の軸座標を予め設定した算出式により算出することを特徴とする請求項1に記載の物体認識装置。
- 前記座標軸が2次元平面におけるx軸及びy軸であることを特徴とする請求項1または請求項2に記載の物体認識装置。
- 前記座標軸が2次元平面におけるx軸及びy軸と、x軸の座標点及びy軸の座標点で表される直線からなる直線軸との3軸であることを特徴とする請求項1または請求項2に記載の物体認識装置。
- 登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する過程と、
特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する過程と、
候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する過程と、
候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う過程と、
認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する過程と
を有することを特徴とする物体認識方法。 - 登録画像データ生成部が、登録画像の点対称変換された画像より抽出した複数の第1の特徴点と、当該変換画像の基準点から第1の特徴点への変位ベクトルとからなる特徴点データを特徴点データ記憶部に記憶する処理と、
特徴点抽出部が、入力画像における認識対象物体の特徴を構成する第2の特徴点を抽出する処理と、
候補座標点算出部が、前記第2の特徴点毎に、当該第2の特徴点を回転中心として、前記変位ベクトルを予め設定した単位角度にて順次回転させ、回転させた回転角毎において、第2の特徴点の座標と変位ベクトルとから基準点の候補である候補座標点を算出する処理と、
候補座標点投票部が、前記候補座標点を複数の座標軸に各々投影し、投影された各座標軸の軸座標点に対し、前記変位ベクトルの回転角に対応させて投票を行う処理と、
認識対象物体判定部が、前記座標軸における前記投票における積算値の最大値の軸座標の組合せを、基準点の座標とし、前記最大値を有する回転角を、前記認識対象物体の前記登録座標に対する回転角として検出する処理と
を有する物体認識装置としてコンピューターを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009135470A JP2010282438A (ja) | 2009-06-04 | 2009-06-04 | 物体認識装置、物体認識方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009135470A JP2010282438A (ja) | 2009-06-04 | 2009-06-04 | 物体認識装置、物体認識方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010282438A true JP2010282438A (ja) | 2010-12-16 |
Family
ID=43539105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009135470A Pending JP2010282438A (ja) | 2009-06-04 | 2009-06-04 | 物体認識装置、物体認識方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010282438A (ja) |
-
2009
- 2009-06-04 JP JP2009135470A patent/JP2010282438A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021115071A1 (zh) | 单目内窥镜图像的三维重建方法、装置及终端设备 | |
US10930005B1 (en) | Profile matching of buildings and urban structures | |
Fathi et al. | Automated sparse 3D point cloud generation of infrastructure using its distinctive visual features | |
US7554575B2 (en) | Fast imaging system calibration | |
Zhou et al. | A coarse-to-fine subpixel registration method to recover local perspective deformation in the application of image super-resolution | |
CN111524168B (zh) | 点云数据的配准方法、系统、装置及计算机存储介质 | |
KR101759798B1 (ko) | 실내 2d 평면도의 생성 방법, 장치 및 시스템 | |
CN112270719B (zh) | 相机标定方法、装置及系统 | |
CN107133986B (zh) | 一种基于二维标定物的相机标定方法 | |
Nousias et al. | Large-scale, metric structure from motion for unordered light fields | |
CN109636852A (zh) | 一种单目slam初始化方法 | |
JP6086491B2 (ja) | 画像処理装置およびそのデータベース構築装置 | |
Roncella et al. | Comparison of two structure and motion strategies | |
JP2014038566A (ja) | 画像処理装置 | |
Paudel et al. | Localization of 2D cameras in a known environment using direct 2D-3D registration | |
JP2010282438A (ja) | 物体認識装置、物体認識方法及びプログラム | |
JP2011221939A (ja) | 物体認識装置、物体認識方法及びプログラム | |
JP2014032628A (ja) | 対応点探索装置、そのプログラムおよびカメラパラメータ推定装置 | |
JP6262949B2 (ja) | キャリブレーション装置およびキャリブレーションプログラム | |
JP2010282437A (ja) | 物体認識装置、物体認識方法及びプログラム | |
JP3452188B2 (ja) | 2次元動画像中の特徴点の追跡方法 | |
Arslan | Accuracy assessment of single viewing techniques for metric measurements on single images | |
CN117635875B (zh) | 一种三维重建方法、装置及终端 | |
Liu et al. | Self-calibration of wireless cameras with restricted degrees of freedom | |
JP2010287085A (ja) | 物体認識装置、物体認識方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20120131 |