画像処理装置、画像処理方法
【課題】 認識対象物を識別するために有用な部分を効率的に学習する為の技術を提供すること。
【解決手段】 認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を取得し、複数の画像のそれぞれについて、該画像上に映っている認識対象物上で設定された箇所を設定箇所として受け付ける。複数の画像のそれぞれについて、該画像上の設定箇所に対して非設定箇所よりも多くの数の特徴点が設定されるように該画像上に複数の特徴点を設定し、特徴点における画像特徴量を用いて認識対象物を学習する。
【解決手段】 認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を取得し、複数の画像のそれぞれについて、該画像上に映っている認識対象物上で設定された箇所を設定箇所として受け付ける。複数の画像のそれぞれについて、該画像上の設定箇所に対して非設定箇所よりも多くの数の特徴点が設定されるように該画像上に複数の特徴点を設定し、特徴点における画像特徴量を用いて認識対象物を学習する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像認識技術に関するものである。
【背景技術】
【0002】
認識技術のひとつとして、撮像部によって得られる対象物体の画像から抽出される特徴量をコンピュータに学習させ、入力画像のなかに映る被写体の種別を認識する研究も活発になされてきた。また、被写体のモデル情報などを用いて、種別だけではなく、位置や姿勢を同時に推定するような研究もなされてきた。その技術の応用先としては、高度な組立等の作業をロボットに行わせるための、部品の位置・姿勢認識などがあげられる。
【0003】
非特許文献1では、学習画像からコードブック化した特徴と検出された特徴を対応付け、確率的投票で物体の中心位置を推定する手法が提案されている(implicit−shape−model)。これにより種別だけでなく、物体の位置も推定することができる。
【0004】
また、特許文献1では、入力画像から特徴点を抽出してその特徴量を算出し、学習画像における特徴量と類似する特徴点同士を、対応点として設定する。そして、入力画像における対応点ごとに学習画像の特徴点の特徴量(位置情報を含む)に基づいて基準点に投票することで対象物を認識すると共に、位置も推定する。
【0005】
しかし、画像を用いた物体認識技術では、画像から特徴を抽出してその特徴と学習画像から得られた特徴とを対応付け、対象物の存在可能性を全て投票するために、処理時間が多くかかる。また、全ての特徴がその対象物を認識するために有用であるとは限らない。
【0006】
特許文献2では、パターン認識(文字認識)において学習に利用する部分領域を順次変更し、その都度学習パターンの認識を行って得られた結果を評価することによって、学習に利用する複数の部分領域を選定している。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−257649号公報
【特許文献2】特開2009−37640号公報
【非特許文献】
【0008】
【非特許文献1】B.Leibe, “Robust Object Detection with Interleaved Categorization and Segmentation”, IJCV Special Issue on Learning for Vision for learning, Aug. 2007.
【発明の概要】
【発明が解決しようとする課題】
【0009】
認識対象物によっては、あらかじめ対象物の種別および位置・姿勢を識別するのに有用な部分がわかっている場合がある。たとえば、ロボットによる自動組立の際の部品種別および位置・姿勢を認識する場合、回転対称体の一部に切り欠きが存在し、その部分を認識することで姿勢を一意に決定することができる場合がある。ただし、一般的に一部の切り欠きを効率的に学習し、認識することは難しい。
【0010】
係る点、特許文献1では、学習に利用する特徴点を規定するような手法については述べられていない。また、特許文献2の方法を適用した場合、部分領域を選択するのに、部分領域を追加するごとに学習パターンを認識して評価をするために、非常に時間がかかる。
【0011】
本発明は以上の問題に鑑みてなされたものであり、認識対象物を識別するために有用な部分を効率的に学習する為の技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。即ち、認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を取得する取得手段と、前記複数の画像のそれぞれについて、該画像上に映っている前記認識対象物上で設定された箇所を設定箇所として受け付ける受け付け手段と、前記複数の画像のそれぞれについて、該画像上の設定箇所に対して非設定箇所よりも多くの数の特徴点が設定されるように該画像上に複数の特徴点を設定する手段と、前記特徴点における画像特徴量を用いて前記認識対象物を学習する学習手段とを備えることを特徴とする。
【発明の効果】
【0013】
本発明の構成によれば、認識対象物を識別するために有用な部分を効率的に学習することができる。
【図面の簡単な説明】
【0014】
【図1】認識システムの機能構成例を示すブロック図。
【図2】対象物認識装置A200が行う処理のフローチャート。
【図3】認識システムの外観例を示す図。
【図4】表示部A220における画像の表示例を示す図。
【図5】ステップS110における処理の詳細を示すフローチャート。
【図6】複数枚の画像の撮像を説明する図。
【図7】認識対象物40の画像を示す図。
【図8】特徴点の設定例を示す図。
【図9】学習部A230が行う認識対象物の学習処理のフローチャート。
【図10】特徴点から基準点へのベクトルの求め方を説明する図。
【図11】ステップS130における処理の詳細を示すフローチャート。
【図12】投票空間を示す図。
【図13】ステップS120で行う処理の詳細を示すフローチャート。
【図14】ステップS130における処理の詳細を示すフローチャート。
【図15】非有用部分の指定を説明する図。
【図16】有用部分45から一様分布で特徴点を取得する例を示す図。
【発明を実施するための形態】
【0015】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。
【0016】
[第1の実施形態]
先ず、本実施形態に係る認識システムの機能構成例について、図1のブロック図を用いて説明する。図1に示す如く、認識システムは、認識対象となる物体(認識対象物)の画像を撮像する撮像部A100と、撮像部A100により撮像された画像を用いてこの認識対象物を認識する対象物認識装置A200(画像処理装置)と、を有する。なお、撮像部A100と対象物認識装置A200とは図1に示すように別個の装置であっても良いし、一体型の装置であっても良い。
【0017】
本実施形態に係る認識システムの外観例を図3に示す。図3においてカメラ10は撮像部A100に対応しており、認識対象物40をそれぞれ異なる視点位置から撮像して複数枚の画像を取得する為のものである。この認識対象物40(認識対象物上)には、認識対象物40を識別するために有用な部分(有用部分)45が備わっている。カメラ10により撮像されたそれぞれの画像はコンピュータ本体30に入力される。
【0018】
コンピュータ本体30は、図1の対象物データ保持部A211、入力部A210、学習部A230、識別器保持部A231、認識部A240、を有する装置である。コンピュータ本体30は、カメラ10により撮像された複数枚の画像を用いて認識対象物40を学習し、この学習後に認識対象物40の画像が新たに撮像された場合は、この画像から認識対象物40を認識する。
【0019】
なお、対象物データ保持部A211及び識別器保持部A231はハードディスクやRAMなどのメモリによって構成される。入力部A210、学習部A230、認識部A240については、ハードウェアで構成しても良いし、一部若しくは全部をソフトウェア(コンピュータプログラム)で構成しても良い。その場合、このソフトウェアは、コンピュータ本体30が有するCPU等のプロセッサにより実行される。
【0020】
モニタ20は表示部A220に対応しており、CRTや液晶画面等により構成されており、コンピュータ本体30による処理結果を画像や文字などでもって表示する。なお、対象物データ保持部A211、識別器保持部A231のそれぞれは、コンピュータ本体30の外部メモリとしても良い。
【0021】
次に、対象物認識装置A200が行う処理について、同処理の図2のフローチャートを用いて説明する。なお、図2のフローチャートに従った処理を実行する前に、認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を対象物データ保持部A211に格納しておく。例えば図6に示す如く、認識対象物40の位置を中心とする球体の表面50上に複数個の点51を設定し、それぞれの点51の位置から認識対象物40を撮像し、この撮像により得られる複数枚の画像を対象物データ保持部A211に格納しておく。
【0022】
ステップS110で入力部A210は対象物データ保持部A211から1枚の画像(入力画像)を読み出し、読み出した入力画像を表示部A220に表示させ、表示している入力画像において認識対象物を識別するのに有用な箇所の指定をユーザから受け付ける。ステップS110における処理の詳細を図5のフローチャートを用いて説明する。
【0023】
ステップS111では入力部A210は、対象物データ保持部A211から読み出した入力画像を表示部A220に表示させる。表示部A220における画像の表示例を図4に示す。表示部A220としてのモニタ20の表示画面には、ある視点位置から撮像した認識対象物40の画像(入力画像)が表示されており、更にこの入力画像には認識対象物40が有している有用部分45も映っている。
【0024】
ユーザは、この表示画面に表示されている認識対象物40を識別するために有用な箇所(設定箇所)、即ち有用部分45を指定する為に、対象物認識装置A200が有する不図示のキーボードやマウスなどを操作し、カーソル61を有用部分45に移動させる。指定するのは有用部分45を囲む枠領域であっても良いし、有用部分45の一部の座標であっても良く、後述する処理で画像上における有用部分45が特定できるのであれば、如何なる指定方法を採用しても良い。もちろん、この有用部分45の指定はユーザによる指定に限定するものではなく、規定の基準に基づいて対象物認識装置A200が指定しても良い。また、有用部分45は複数個指定しても良いし、有用部分45以外の箇所(非設定箇所)を指定することで、指定箇所以外を有用部分45として採用しても良い。
【0025】
ステップS112では入力部A210は有用部分45を特定する情報(特定情報)を受け付けると、この受け付けた特定情報を学習部A230に対して送出する。
【0026】
ステップS120では学習部A230は、対象物データ保持部A211に保存されている画像を順次読み出し、読み出したそれぞれの画像と、入力部A210から入力された特定情報と、を用いて認識対象物を学習する。学習部A230が行う認識対象物の学習処理について、同処理のフローチャートを示す図9を用いて説明する。
【0027】
この学習方法には既知の様々な学習方法を適用できるが、本実施形態では、投票による認識処理のための学習を行う。ステップS901で学習部A230は、対象物データ保持部A211から1枚の画像(読み出し画像)を読み出すと、読み出し画像を撮像した撮像部A100の位置姿勢やカメラパラメータ等から、特定情報が示す領域に該当する読み出し画像上の領域を特定する。即ち、読み出し画像上における有用部分45を求める。なお、対象物データ保持部A211に保存されているそれぞれの画像に対して予め有用部分を指定し、画像毎の特定情報を対象物データ保持部A211に保存させておいても良い。何れにせよ、読み出し画像上における有用部分45が特定できれば、如何なる構成を採用しても良い。次に学習部A230は、読み出し画像上に複数の特徴点を設定するのであるが、その際、有用部分45には、非有用部分よりも多くの数の特徴点を設定する。しかし、例えば、図7(a)、(b)のそれぞれに示す画像には有用部分45が映っているものの、図7(c)に示す画像には有用部分45は映っていない。
【0028】
そこで図7(a)、(b)に示すような画像の場合、それぞれ図8(a)、(b)に示す如く、有用部分45には、非有用部分よりも多くの数の特徴点80を設定する。例えば、1枚の画像上にN(N≧2)個の特徴点を設定する場合、αN(0.5<α<1)個の特徴点を有用部分45に設定するようにしても良い。この場合、このαは画像上の有用部分45の面積に応じて設定しても良いし、ユーザがキーボードやマウスなどを用いて設定しても良い。一方、図7(c)に示すような画像の場合、画像上に有用部分45が存在しないのであるから、図8(c)に示す如く、画像全体に対して均等に特徴点80を設定する。
【0029】
また、特徴点検出をせずに画像から特徴点を密に取得する場合、αにより特徴点を取得するサンプリング間隔が変更される。また、指定された領域から一様分布で特徴点を取得してもよいし、特定情報が示す位置を中心とするガウス分布などを規定して取得してもよい。図16に有用部分45から一様分布で特徴点を取得する例を示す。グリッド81のように指定された領域からは細かく、グリッド82のように指定された領域以外からは粗くサンプリングしている。
【0030】
次に学習部A230は、設定したそれぞれの特徴点およびその特徴点まわりを記述する特徴量(画像特徴量)を抽出する。たとえば、SURF(以下の文献X)のような、抽出された特徴点まわりの輝度勾配の情報を記述するものでよい。その他のいわゆるKeypoints(以下の文献Y、Z)などの特徴点でもよい。または、画像パッチやedgeletなどでもよい。
【0031】
文献X : H.Bay, “Speeded-Up Robust Features (SURF)”, Computing Vision and Image Understanding, Vol.110 (3) June 2008, pp.346-359.
文献Y : E.Tola, “A Fast Local Descriptor for Dense Matching”, CVPR 2008.
文献Z : K.Mikolajczyk, “A Performance Evaluation of Local Descriptors”, PAMI, 27(10) 2004, pp.1615-1630.
以下では、画像中に設定した特徴点の総数をNとすると、i(1≦i≦N)番目の特徴点を特徴点fiと表記し、特徴点fiの画像中の座標位置を(xi、yi)と表記する。また、特徴点fiについて抽出された特徴量のベクトル(特徴量ベクトル)を特徴量ベクトルFiと表記する。
【0032】
なお、それぞれの画像について、上記の特徴点の座標位置や特徴量については予め収集しておき、対象物データ保持部A211に格納しておいても良い。即ちステップS901における処理は予め行っていても良い。この場合、学習部A230は、対象物データ保持部A211に格納されているこれらの特徴量を用いて認識対象物を学習する。
【0033】
次に、学習部A230による学習処理について説明する。本実施形態では、特許文献1に記載されている学習方法を採用する。即ち、それぞれの特徴点から画像内の認識対象物の領域中に設定された基準点に対するベクトルを求め、特徴量対応付けに従って基準点への投票を行うことで認識対象物のクラスおよび位置を検出する場合の学習方法および認識方法である。その際の投票空間は特に限定しない。たとえば、画像座標のx軸、y軸およびID軸(認識対象物を表すクラスインデックス)空間、画像座標のx軸、y軸およびスケールs軸空間、世界座標軸のXYZ空間などが考えられる。また、基準点に投票するのではなく、背景技術で示したimplicit−shape−model(非特許文献1)のように、各局所特徴から認識対象物中心への確率投票を行う方法でも良い。
【0034】
また、多クラス問題の際は、全クラスに対してそれぞれ投票を行ったあと最も投票されたクラスおよび位置を認識結果とするか、あらかじめ設定された閾値以上の検出点すべてを認識結果としてもよい。ここでは、画像から特徴点を抽出して基準点に投票をし、認識対象物の種別および位置を推定する。
【0035】
ステップS902では学習部A230は、対象物データ保持部A211に保存されているそれぞれの画像について次のような処理を行う。先ず、着目画像中の特徴点fiから着目画像中に予め設定された基準点Oj(j=1,2,3,…)へのベクトルMijを、全てのi、jについて求める。
【0036】
例えば、図10に示す如く、認識対象物41の有用部分(図10では星形の領域)に対して基準点44が予め設定されており、この認識対象物41について設定されている特徴点のうちの1つが特徴点42であるとする。この場合、この特徴点42について求めるベクトルは、特徴点42から基準点44へのベクトル43となる。然るに、画像上における特徴点42の座標位置が(xn,yn)であり、この画像上における基準点の座標位置が(xo,yo)であるとすると、特徴点42について求めるベクトルMはM=(xo−xn,yo−yn)となる。
【0037】
ステップS903では学習部A230は、対象物データ保持部A211に保存されている全ての画像について得た特徴点fiを、特徴量ベクトルFiを用いてクラスタリングする。このクラスタリングには、k−means、自己組織化マップアルゴリズム、等の任意のクラスタリング手法を用いることができる。例えば、k−meansを用いる場合、クラスタ数Kを規定して特徴量ベクトル間のユークリッド距離を用いて特徴点fiをクラスタリングすることができる。これにより、対象物データ保持部A211に保存されている全ての画像について得た特徴点fiは、クラスタ1〜クラスタK(K≧2)の何れかにクラスタリングされる。
【0038】
ステップS904では学習部A230は、それぞれのクラスタk(1≦k≦K)について、以下の情報を、クラスタkに対するクラスタリング情報として識別器保持部A231に記録する。
【0039】
・ クラスタkの識別子(例えばk)
・ クラスタkにクラスタリングされたそれぞれの特徴点fiの特徴量ベクトルFiのうち規定の基準に従って選択された代表特徴量ベクトルFk’
・ クラスタkにクラスタリングされたそれぞれの特徴点fiの座標位置(xi、yi)
・ クラスタkにクラスタリングされたそれぞれの特徴点fiから基準点OjへのベクトルMij
・ 認識対象物のクラスを示すインデックスIDi
ステップS130で認識部A240は、撮像部A100が新たに認識対象物の撮像画像を撮像すると、識別器保持部A231に格納されているクラスタリング情報(学習結果)を用いて、この撮像画像中に映っている認識対象物を認識する処理を行う。ステップS130における処理の詳細について、同処理のフローチャートを示す図11を用いて説明する。
【0040】
ステップS1101では認識部A240は、撮像部A100から得た撮像画像から、学習部A230と同様にして、各特徴点(ここではM個とする)について特徴量ベクトルを抽出する。ステップS1102で認識部A240は、抽出したそれぞれの特徴量ベクトルと、識別器保持部A231に保持されているそれぞれの代表特徴量ベクトルとの距離を求める。そして認識部A240は、最も小さい距離(最も高い類似度)を求めた代表特徴量ベクトルのクラスタを対応クラスタとして特定する。
【0041】
ステップS1103では認識部A240は、対応クラスタのクラスタリング情報を参照し、図12に示す如く、画像座標のx、y軸、クラスを表すID軸、の3軸によって張られる投票空間70において後述する投票処理を行う。あらかじめ各セルの大きさは設定されているものとする。
【0042】
ここで、上記の投票処理について説明する。撮像画像から抽出された各特徴点m(m=1,2,3,…,M)について求めた特徴量ベクトルgmと、それぞれのクラスタkの代表特徴量ベクトルF’kとの最小距離(ユークリッド距離)は以下の式(1)を用いて求めることができる。
【0043】
【数1】
【0044】
この式により、最も距離の小さいクラスタk”を対応クラスタとして特定することができる。次に、クラスタk”のクラスタリング情報中の「特徴点fiに対するベクトルMij及びインデックスIDi」を用いて投票処理を行う。
【0045】
より具体的には、投票空間の投票点を(x、y、ID)、撮像画像中のそれぞれの特徴点の座標位置を(xm、ym)とした場合、以下の式(2)に従って求められる投票点(x、y、ID)に対応するセルに投票される。この場合、全投票数は最大N×Mとなる。
【0046】
【数2】
【0047】
ステップS1104では、認識部A240は投票結果を集計し、投票数の最も多い投票点を認識結果とする。
【0048】
以上の説明により、本実施形態によれば、あらかじめ認識対象物に対して識別に有用な部分を指定するので、認識対象物の認識を高精度に行うことができる。もちろん、上記の通り、本実施形態には様々な変形例が考え得るが、何れの変形例を採用しても同様の効果を奏することができる。
【0049】
[第2の実施形態]
本実施形態は、上記のステップS120及びステップS130における処理のみが第1の実施形態と異なる。然るに、以下では、第1の実施形態と同じ点については説明を省略し、第1の実施形態と異なる点のみについて説明する。
【0050】
第1の実施形態ではステップS120では、有用部分45には、非有用部分よりも多くの数の特徴点を設定するようにしていた。本実施形態のステップS120では、有用部分45に設定された特徴点には、非共有部分に設定された特徴点よりも値のより大きい重み値を設定することで有用部分の特徴を重点的に用いることができる。そしてこの重み値は識別器保持部A231に記録される。
【0051】
本実施形態においてステップS120で行う処理について、同処理のフローチャートを示す図13を用いて説明する。図13において、図9に示したステップと同じ処理を行うステップには同じ参照番号を付しており、このステップに係る説明は省略する。
【0052】
ステップS1301では学習部A230は、対象物データ保持部A211に保存されているそれぞれの画像について次のような処理を行う。先ず、着目画像中の特徴点fiに対する重み値Wiを、以下の式(3)に従って計算する。
【0053】
【数3】
【0054】
この式(3)においてpは、有用部分45の位置を示すベクトルであり、fiは、特徴点fiの画像上の座標位置を示すベクトルである。lは閾値(所定の距離)である。また、β>γである。この式(3)に従った計算を行うことで、各特徴点fiに対する重み値Wi(=β若しくはγ)を求めることができる。β、γはそれぞれ予め設定された値であっても良いし、ユーザにより指定された値であっても良いし、学習により決定した値であっても良い。学習によって決定する場合、第1の実施形態におけるαと同様、検定データを用いて決定することができる。
【0055】
なお、ステップS110において有用部分45の位置ではなく有用部分45の領域が指定されていた場合、重み値Wiは上記の式(3)ではなく、以下の式(4)に従って計算する。
【0056】
【数4】
【0057】
式(4)においてRは有用部分45の領域を示す。また、特徴点fiの画像上の座標位置を変数とする関数に従って重み値Wiを決定してもよい。例えば、この関数にガウス関数を用いた場合、重み値Wiは以下の式(5)に従って計算しても良い。
【0058】
【数5】
【0059】
ガウス関数は、以下の式(6)に示す如く、標準偏差σをパラメータとして以下のように表すことができる。
【0060】
【数6】
【0061】
なお、標準偏差σは、以下の式(7)が満たされるように予め決定しておく。
【0062】
【数7】
【0063】
また、特徴点抽出を行わず、画像中から密に検出する場合も同様に式(3)〜(5)に従って計算することができる。また、第1の実施形態と同様に各画像において有用部分45が見えているかどうかの判定をしてもよい。
【0064】
ステップS1302で学習部A230は、それぞれのクラスタkについて、クラスタkに対するクラスタリング情報として第1の実施形態で列挙した情報に加え、クラスタkにクラスタリングされた特徴点fiの重み値Wiを識別器保持部A231に記録する。
【0065】
次にステップS130では認識部A240は、撮像部A100により新たに撮像された認識対象物の撮像画像を取得すると、識別器保持部A231に格納されているクラスタリング情報を用いて、この撮像画像中に映っている認識対象物を認識する処理を行う。ステップS130における処理の詳細について、同処理のフローチャートを示す図14を用いて説明する。図14において、図11に示したステップと同じ処理を行うステップには同じ参照番号を付しており、このステップに係る説明は省略する。
【0066】
ステップS1401では認識部A240は、識別器保持部A231に格納されているそれぞれのクラスタリング情報を参照し、参照したクラスタリング情報中の重み値Wiを用いて、投票時における重みを決定する。
【0067】
[第3の実施形態]
本実施形態は、上記のステップS110及びステップS120における処理のみが第1の実施形態と異なる。然るに、以下では、第1の実施形態と同じ点については説明を省略し、第1の実施形態と異なる点のみについて説明する。
【0068】
本実施形態ではステップS110では、有用部分以外の部分(非有用部分)の指定を受け付ける。例えば、図15に示す如く、認識対象物40を識別するために有用ではない部分46が認識対象物40に備わっている場合、この部分46の位置若しくは領域を指定する。例えば認識対象物40が部品である場合を想定する。部品には個々に固有のシリアル番号等の刻印がなされている場合があり、この刻印されている情報は全ての部品に共通の情報ではない。そのため、この刻印がなされている部分は様々な部品を認識する為の学習に有用部分とは成り得ない。然るにこのような場合、有用部分とは成り得ない箇所を積極的に指定する。
【0069】
本実施形態ではステップS120では、第1の実施形態で説明したステップS120の処理において、ステップS110で指定された非有用部分以外の領域に対して設定された特徴点を用いて学習を行う。
【0070】
即ち本実施形態では、非設定箇所のうち着目箇所の指定を受け付け、着目箇所以外の箇所に設定されている特徴点における画像特徴量を用いて認識対象物を学習する。また、上記では識別に不要な部分を指定する実施例について述べたが、同時に識別に有用な部分を指定することも可能である。
【0071】
[第4の実施形態]
本実施形態は、上記のステップS110及びステップS120における処理のみが第2の実施形態と異なる。然るに、以下では、第2の実施形態と同じ点については説明を省略し、第2の実施形態と異なる点のみについて説明する。
【0072】
本実施形態においてもステップS110では第3の実施形態と同様に、有用部分以外の部分(非有用部分)の指定を受け付ける。本実施形態のステップS120では、基本的には第2の実施形態と同様であるが、重み値Wiの計算方法が異なる。即ち、以下の式(8)に示す如く、非有用部分の位置をpとすると、非有用部分の位置pとの距離が閾値lよりも小さい位置にある特徴点fiに対する重み値Wiは0とする。
【0073】
【数8】
【0074】
また、特徴点fiの画像上の座標位置を変数とする関数に従って重み値Wiを決定してもよい。例えば、この関数にガウス関数を用いた場合、重み値Wiは以下の式(9)に従って計算しても良い。
【0075】
【数9】
【0076】
ガウス関数は、以下の式(10)に示す如く、標準偏差σをパラメータとして以下のように表すことができる。
【0077】
【数10】
【0078】
なお、標準偏差σについては第2の実施形態で説明したとおりである。また、第3の実施形態と同様に、上記では、識別に不要な部分を指定する実施例について述べたが、同時に識別に有用な部分を指定することも可能である。
【0079】
なお、以上説明した各実施形態の部分的な技術を適宜組み合わせて用いることも可能であり、その組み合わせについては、当業者であれば、適宜なし得るものである。また、上記の各実施形態では、認識対象物は現実物体として説明したが、仮想物体としても良く、その場合、撮像部A100は、この仮想物体を配置する仮想空間においてこの仮想物体を撮像する機能部として実装される。
【0080】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、画像認識技術に関するものである。
【背景技術】
【0002】
認識技術のひとつとして、撮像部によって得られる対象物体の画像から抽出される特徴量をコンピュータに学習させ、入力画像のなかに映る被写体の種別を認識する研究も活発になされてきた。また、被写体のモデル情報などを用いて、種別だけではなく、位置や姿勢を同時に推定するような研究もなされてきた。その技術の応用先としては、高度な組立等の作業をロボットに行わせるための、部品の位置・姿勢認識などがあげられる。
【0003】
非特許文献1では、学習画像からコードブック化した特徴と検出された特徴を対応付け、確率的投票で物体の中心位置を推定する手法が提案されている(implicit−shape−model)。これにより種別だけでなく、物体の位置も推定することができる。
【0004】
また、特許文献1では、入力画像から特徴点を抽出してその特徴量を算出し、学習画像における特徴量と類似する特徴点同士を、対応点として設定する。そして、入力画像における対応点ごとに学習画像の特徴点の特徴量(位置情報を含む)に基づいて基準点に投票することで対象物を認識すると共に、位置も推定する。
【0005】
しかし、画像を用いた物体認識技術では、画像から特徴を抽出してその特徴と学習画像から得られた特徴とを対応付け、対象物の存在可能性を全て投票するために、処理時間が多くかかる。また、全ての特徴がその対象物を認識するために有用であるとは限らない。
【0006】
特許文献2では、パターン認識(文字認識)において学習に利用する部分領域を順次変更し、その都度学習パターンの認識を行って得られた結果を評価することによって、学習に利用する複数の部分領域を選定している。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−257649号公報
【特許文献2】特開2009−37640号公報
【非特許文献】
【0008】
【非特許文献1】B.Leibe, “Robust Object Detection with Interleaved Categorization and Segmentation”, IJCV Special Issue on Learning for Vision for learning, Aug. 2007.
【発明の概要】
【発明が解決しようとする課題】
【0009】
認識対象物によっては、あらかじめ対象物の種別および位置・姿勢を識別するのに有用な部分がわかっている場合がある。たとえば、ロボットによる自動組立の際の部品種別および位置・姿勢を認識する場合、回転対称体の一部に切り欠きが存在し、その部分を認識することで姿勢を一意に決定することができる場合がある。ただし、一般的に一部の切り欠きを効率的に学習し、認識することは難しい。
【0010】
係る点、特許文献1では、学習に利用する特徴点を規定するような手法については述べられていない。また、特許文献2の方法を適用した場合、部分領域を選択するのに、部分領域を追加するごとに学習パターンを認識して評価をするために、非常に時間がかかる。
【0011】
本発明は以上の問題に鑑みてなされたものであり、認識対象物を識別するために有用な部分を効率的に学習する為の技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。即ち、認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を取得する取得手段と、前記複数の画像のそれぞれについて、該画像上に映っている前記認識対象物上で設定された箇所を設定箇所として受け付ける受け付け手段と、前記複数の画像のそれぞれについて、該画像上の設定箇所に対して非設定箇所よりも多くの数の特徴点が設定されるように該画像上に複数の特徴点を設定する手段と、前記特徴点における画像特徴量を用いて前記認識対象物を学習する学習手段とを備えることを特徴とする。
【発明の効果】
【0013】
本発明の構成によれば、認識対象物を識別するために有用な部分を効率的に学習することができる。
【図面の簡単な説明】
【0014】
【図1】認識システムの機能構成例を示すブロック図。
【図2】対象物認識装置A200が行う処理のフローチャート。
【図3】認識システムの外観例を示す図。
【図4】表示部A220における画像の表示例を示す図。
【図5】ステップS110における処理の詳細を示すフローチャート。
【図6】複数枚の画像の撮像を説明する図。
【図7】認識対象物40の画像を示す図。
【図8】特徴点の設定例を示す図。
【図9】学習部A230が行う認識対象物の学習処理のフローチャート。
【図10】特徴点から基準点へのベクトルの求め方を説明する図。
【図11】ステップS130における処理の詳細を示すフローチャート。
【図12】投票空間を示す図。
【図13】ステップS120で行う処理の詳細を示すフローチャート。
【図14】ステップS130における処理の詳細を示すフローチャート。
【図15】非有用部分の指定を説明する図。
【図16】有用部分45から一様分布で特徴点を取得する例を示す図。
【発明を実施するための形態】
【0015】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。
【0016】
[第1の実施形態]
先ず、本実施形態に係る認識システムの機能構成例について、図1のブロック図を用いて説明する。図1に示す如く、認識システムは、認識対象となる物体(認識対象物)の画像を撮像する撮像部A100と、撮像部A100により撮像された画像を用いてこの認識対象物を認識する対象物認識装置A200(画像処理装置)と、を有する。なお、撮像部A100と対象物認識装置A200とは図1に示すように別個の装置であっても良いし、一体型の装置であっても良い。
【0017】
本実施形態に係る認識システムの外観例を図3に示す。図3においてカメラ10は撮像部A100に対応しており、認識対象物40をそれぞれ異なる視点位置から撮像して複数枚の画像を取得する為のものである。この認識対象物40(認識対象物上)には、認識対象物40を識別するために有用な部分(有用部分)45が備わっている。カメラ10により撮像されたそれぞれの画像はコンピュータ本体30に入力される。
【0018】
コンピュータ本体30は、図1の対象物データ保持部A211、入力部A210、学習部A230、識別器保持部A231、認識部A240、を有する装置である。コンピュータ本体30は、カメラ10により撮像された複数枚の画像を用いて認識対象物40を学習し、この学習後に認識対象物40の画像が新たに撮像された場合は、この画像から認識対象物40を認識する。
【0019】
なお、対象物データ保持部A211及び識別器保持部A231はハードディスクやRAMなどのメモリによって構成される。入力部A210、学習部A230、認識部A240については、ハードウェアで構成しても良いし、一部若しくは全部をソフトウェア(コンピュータプログラム)で構成しても良い。その場合、このソフトウェアは、コンピュータ本体30が有するCPU等のプロセッサにより実行される。
【0020】
モニタ20は表示部A220に対応しており、CRTや液晶画面等により構成されており、コンピュータ本体30による処理結果を画像や文字などでもって表示する。なお、対象物データ保持部A211、識別器保持部A231のそれぞれは、コンピュータ本体30の外部メモリとしても良い。
【0021】
次に、対象物認識装置A200が行う処理について、同処理の図2のフローチャートを用いて説明する。なお、図2のフローチャートに従った処理を実行する前に、認識対象物をそれぞれ異なる視点位置から撮像して得られる複数枚の画像を対象物データ保持部A211に格納しておく。例えば図6に示す如く、認識対象物40の位置を中心とする球体の表面50上に複数個の点51を設定し、それぞれの点51の位置から認識対象物40を撮像し、この撮像により得られる複数枚の画像を対象物データ保持部A211に格納しておく。
【0022】
ステップS110で入力部A210は対象物データ保持部A211から1枚の画像(入力画像)を読み出し、読み出した入力画像を表示部A220に表示させ、表示している入力画像において認識対象物を識別するのに有用な箇所の指定をユーザから受け付ける。ステップS110における処理の詳細を図5のフローチャートを用いて説明する。
【0023】
ステップS111では入力部A210は、対象物データ保持部A211から読み出した入力画像を表示部A220に表示させる。表示部A220における画像の表示例を図4に示す。表示部A220としてのモニタ20の表示画面には、ある視点位置から撮像した認識対象物40の画像(入力画像)が表示されており、更にこの入力画像には認識対象物40が有している有用部分45も映っている。
【0024】
ユーザは、この表示画面に表示されている認識対象物40を識別するために有用な箇所(設定箇所)、即ち有用部分45を指定する為に、対象物認識装置A200が有する不図示のキーボードやマウスなどを操作し、カーソル61を有用部分45に移動させる。指定するのは有用部分45を囲む枠領域であっても良いし、有用部分45の一部の座標であっても良く、後述する処理で画像上における有用部分45が特定できるのであれば、如何なる指定方法を採用しても良い。もちろん、この有用部分45の指定はユーザによる指定に限定するものではなく、規定の基準に基づいて対象物認識装置A200が指定しても良い。また、有用部分45は複数個指定しても良いし、有用部分45以外の箇所(非設定箇所)を指定することで、指定箇所以外を有用部分45として採用しても良い。
【0025】
ステップS112では入力部A210は有用部分45を特定する情報(特定情報)を受け付けると、この受け付けた特定情報を学習部A230に対して送出する。
【0026】
ステップS120では学習部A230は、対象物データ保持部A211に保存されている画像を順次読み出し、読み出したそれぞれの画像と、入力部A210から入力された特定情報と、を用いて認識対象物を学習する。学習部A230が行う認識対象物の学習処理について、同処理のフローチャートを示す図9を用いて説明する。
【0027】
この学習方法には既知の様々な学習方法を適用できるが、本実施形態では、投票による認識処理のための学習を行う。ステップS901で学習部A230は、対象物データ保持部A211から1枚の画像(読み出し画像)を読み出すと、読み出し画像を撮像した撮像部A100の位置姿勢やカメラパラメータ等から、特定情報が示す領域に該当する読み出し画像上の領域を特定する。即ち、読み出し画像上における有用部分45を求める。なお、対象物データ保持部A211に保存されているそれぞれの画像に対して予め有用部分を指定し、画像毎の特定情報を対象物データ保持部A211に保存させておいても良い。何れにせよ、読み出し画像上における有用部分45が特定できれば、如何なる構成を採用しても良い。次に学習部A230は、読み出し画像上に複数の特徴点を設定するのであるが、その際、有用部分45には、非有用部分よりも多くの数の特徴点を設定する。しかし、例えば、図7(a)、(b)のそれぞれに示す画像には有用部分45が映っているものの、図7(c)に示す画像には有用部分45は映っていない。
【0028】
そこで図7(a)、(b)に示すような画像の場合、それぞれ図8(a)、(b)に示す如く、有用部分45には、非有用部分よりも多くの数の特徴点80を設定する。例えば、1枚の画像上にN(N≧2)個の特徴点を設定する場合、αN(0.5<α<1)個の特徴点を有用部分45に設定するようにしても良い。この場合、このαは画像上の有用部分45の面積に応じて設定しても良いし、ユーザがキーボードやマウスなどを用いて設定しても良い。一方、図7(c)に示すような画像の場合、画像上に有用部分45が存在しないのであるから、図8(c)に示す如く、画像全体に対して均等に特徴点80を設定する。
【0029】
また、特徴点検出をせずに画像から特徴点を密に取得する場合、αにより特徴点を取得するサンプリング間隔が変更される。また、指定された領域から一様分布で特徴点を取得してもよいし、特定情報が示す位置を中心とするガウス分布などを規定して取得してもよい。図16に有用部分45から一様分布で特徴点を取得する例を示す。グリッド81のように指定された領域からは細かく、グリッド82のように指定された領域以外からは粗くサンプリングしている。
【0030】
次に学習部A230は、設定したそれぞれの特徴点およびその特徴点まわりを記述する特徴量(画像特徴量)を抽出する。たとえば、SURF(以下の文献X)のような、抽出された特徴点まわりの輝度勾配の情報を記述するものでよい。その他のいわゆるKeypoints(以下の文献Y、Z)などの特徴点でもよい。または、画像パッチやedgeletなどでもよい。
【0031】
文献X : H.Bay, “Speeded-Up Robust Features (SURF)”, Computing Vision and Image Understanding, Vol.110 (3) June 2008, pp.346-359.
文献Y : E.Tola, “A Fast Local Descriptor for Dense Matching”, CVPR 2008.
文献Z : K.Mikolajczyk, “A Performance Evaluation of Local Descriptors”, PAMI, 27(10) 2004, pp.1615-1630.
以下では、画像中に設定した特徴点の総数をNとすると、i(1≦i≦N)番目の特徴点を特徴点fiと表記し、特徴点fiの画像中の座標位置を(xi、yi)と表記する。また、特徴点fiについて抽出された特徴量のベクトル(特徴量ベクトル)を特徴量ベクトルFiと表記する。
【0032】
なお、それぞれの画像について、上記の特徴点の座標位置や特徴量については予め収集しておき、対象物データ保持部A211に格納しておいても良い。即ちステップS901における処理は予め行っていても良い。この場合、学習部A230は、対象物データ保持部A211に格納されているこれらの特徴量を用いて認識対象物を学習する。
【0033】
次に、学習部A230による学習処理について説明する。本実施形態では、特許文献1に記載されている学習方法を採用する。即ち、それぞれの特徴点から画像内の認識対象物の領域中に設定された基準点に対するベクトルを求め、特徴量対応付けに従って基準点への投票を行うことで認識対象物のクラスおよび位置を検出する場合の学習方法および認識方法である。その際の投票空間は特に限定しない。たとえば、画像座標のx軸、y軸およびID軸(認識対象物を表すクラスインデックス)空間、画像座標のx軸、y軸およびスケールs軸空間、世界座標軸のXYZ空間などが考えられる。また、基準点に投票するのではなく、背景技術で示したimplicit−shape−model(非特許文献1)のように、各局所特徴から認識対象物中心への確率投票を行う方法でも良い。
【0034】
また、多クラス問題の際は、全クラスに対してそれぞれ投票を行ったあと最も投票されたクラスおよび位置を認識結果とするか、あらかじめ設定された閾値以上の検出点すべてを認識結果としてもよい。ここでは、画像から特徴点を抽出して基準点に投票をし、認識対象物の種別および位置を推定する。
【0035】
ステップS902では学習部A230は、対象物データ保持部A211に保存されているそれぞれの画像について次のような処理を行う。先ず、着目画像中の特徴点fiから着目画像中に予め設定された基準点Oj(j=1,2,3,…)へのベクトルMijを、全てのi、jについて求める。
【0036】
例えば、図10に示す如く、認識対象物41の有用部分(図10では星形の領域)に対して基準点44が予め設定されており、この認識対象物41について設定されている特徴点のうちの1つが特徴点42であるとする。この場合、この特徴点42について求めるベクトルは、特徴点42から基準点44へのベクトル43となる。然るに、画像上における特徴点42の座標位置が(xn,yn)であり、この画像上における基準点の座標位置が(xo,yo)であるとすると、特徴点42について求めるベクトルMはM=(xo−xn,yo−yn)となる。
【0037】
ステップS903では学習部A230は、対象物データ保持部A211に保存されている全ての画像について得た特徴点fiを、特徴量ベクトルFiを用いてクラスタリングする。このクラスタリングには、k−means、自己組織化マップアルゴリズム、等の任意のクラスタリング手法を用いることができる。例えば、k−meansを用いる場合、クラスタ数Kを規定して特徴量ベクトル間のユークリッド距離を用いて特徴点fiをクラスタリングすることができる。これにより、対象物データ保持部A211に保存されている全ての画像について得た特徴点fiは、クラスタ1〜クラスタK(K≧2)の何れかにクラスタリングされる。
【0038】
ステップS904では学習部A230は、それぞれのクラスタk(1≦k≦K)について、以下の情報を、クラスタkに対するクラスタリング情報として識別器保持部A231に記録する。
【0039】
・ クラスタkの識別子(例えばk)
・ クラスタkにクラスタリングされたそれぞれの特徴点fiの特徴量ベクトルFiのうち規定の基準に従って選択された代表特徴量ベクトルFk’
・ クラスタkにクラスタリングされたそれぞれの特徴点fiの座標位置(xi、yi)
・ クラスタkにクラスタリングされたそれぞれの特徴点fiから基準点OjへのベクトルMij
・ 認識対象物のクラスを示すインデックスIDi
ステップS130で認識部A240は、撮像部A100が新たに認識対象物の撮像画像を撮像すると、識別器保持部A231に格納されているクラスタリング情報(学習結果)を用いて、この撮像画像中に映っている認識対象物を認識する処理を行う。ステップS130における処理の詳細について、同処理のフローチャートを示す図11を用いて説明する。
【0040】
ステップS1101では認識部A240は、撮像部A100から得た撮像画像から、学習部A230と同様にして、各特徴点(ここではM個とする)について特徴量ベクトルを抽出する。ステップS1102で認識部A240は、抽出したそれぞれの特徴量ベクトルと、識別器保持部A231に保持されているそれぞれの代表特徴量ベクトルとの距離を求める。そして認識部A240は、最も小さい距離(最も高い類似度)を求めた代表特徴量ベクトルのクラスタを対応クラスタとして特定する。
【0041】
ステップS1103では認識部A240は、対応クラスタのクラスタリング情報を参照し、図12に示す如く、画像座標のx、y軸、クラスを表すID軸、の3軸によって張られる投票空間70において後述する投票処理を行う。あらかじめ各セルの大きさは設定されているものとする。
【0042】
ここで、上記の投票処理について説明する。撮像画像から抽出された各特徴点m(m=1,2,3,…,M)について求めた特徴量ベクトルgmと、それぞれのクラスタkの代表特徴量ベクトルF’kとの最小距離(ユークリッド距離)は以下の式(1)を用いて求めることができる。
【0043】
【数1】
【0044】
この式により、最も距離の小さいクラスタk”を対応クラスタとして特定することができる。次に、クラスタk”のクラスタリング情報中の「特徴点fiに対するベクトルMij及びインデックスIDi」を用いて投票処理を行う。
【0045】
より具体的には、投票空間の投票点を(x、y、ID)、撮像画像中のそれぞれの特徴点の座標位置を(xm、ym)とした場合、以下の式(2)に従って求められる投票点(x、y、ID)に対応するセルに投票される。この場合、全投票数は最大N×Mとなる。
【0046】
【数2】
【0047】
ステップS1104では、認識部A240は投票結果を集計し、投票数の最も多い投票点を認識結果とする。
【0048】
以上の説明により、本実施形態によれば、あらかじめ認識対象物に対して識別に有用な部分を指定するので、認識対象物の認識を高精度に行うことができる。もちろん、上記の通り、本実施形態には様々な変形例が考え得るが、何れの変形例を採用しても同様の効果を奏することができる。
【0049】
[第2の実施形態]
本実施形態は、上記のステップS120及びステップS130における処理のみが第1の実施形態と異なる。然るに、以下では、第1の実施形態と同じ点については説明を省略し、第1の実施形態と異なる点のみについて説明する。
【0050】
第1の実施形態ではステップS120では、有用部分45には、非有用部分よりも多くの数の特徴点を設定するようにしていた。本実施形態のステップS120では、有用部分45に設定された特徴点には、非共有部分に設定された特徴点よりも値のより大きい重み値を設定することで有用部分の特徴を重点的に用いることができる。そしてこの重み値は識別器保持部A231に記録される。
【0051】
本実施形態においてステップS120で行う処理について、同処理のフローチャートを示す図13を用いて説明する。図13において、図9に示したステップと同じ処理を行うステップには同じ参照番号を付しており、このステップに係る説明は省略する。
【0052】
ステップS1301では学習部A230は、対象物データ保持部A211に保存されているそれぞれの画像について次のような処理を行う。先ず、着目画像中の特徴点fiに対する重み値Wiを、以下の式(3)に従って計算する。
【0053】
【数3】
【0054】
この式(3)においてpは、有用部分45の位置を示すベクトルであり、fiは、特徴点fiの画像上の座標位置を示すベクトルである。lは閾値(所定の距離)である。また、β>γである。この式(3)に従った計算を行うことで、各特徴点fiに対する重み値Wi(=β若しくはγ)を求めることができる。β、γはそれぞれ予め設定された値であっても良いし、ユーザにより指定された値であっても良いし、学習により決定した値であっても良い。学習によって決定する場合、第1の実施形態におけるαと同様、検定データを用いて決定することができる。
【0055】
なお、ステップS110において有用部分45の位置ではなく有用部分45の領域が指定されていた場合、重み値Wiは上記の式(3)ではなく、以下の式(4)に従って計算する。
【0056】
【数4】
【0057】
式(4)においてRは有用部分45の領域を示す。また、特徴点fiの画像上の座標位置を変数とする関数に従って重み値Wiを決定してもよい。例えば、この関数にガウス関数を用いた場合、重み値Wiは以下の式(5)に従って計算しても良い。
【0058】
【数5】
【0059】
ガウス関数は、以下の式(6)に示す如く、標準偏差σをパラメータとして以下のように表すことができる。
【0060】
【数6】
【0061】
なお、標準偏差σは、以下の式(7)が満たされるように予め決定しておく。
【0062】
【数7】
【0063】
また、特徴点抽出を行わず、画像中から密に検出する場合も同様に式(3)〜(5)に従って計算することができる。また、第1の実施形態と同様に各画像において有用部分45が見えているかどうかの判定をしてもよい。
【0064】
ステップS1302で学習部A230は、それぞれのクラスタkについて、クラスタkに対するクラスタリング情報として第1の実施形態で列挙した情報に加え、クラスタkにクラスタリングされた特徴点fiの重み値Wiを識別器保持部A231に記録する。
【0065】
次にステップS130では認識部A240は、撮像部A100により新たに撮像された認識対象物の撮像画像を取得すると、識別器保持部A231に格納されているクラスタリング情報を用いて、この撮像画像中に映っている認識対象物を認識する処理を行う。ステップS130における処理の詳細について、同処理のフローチャートを示す図14を用いて説明する。図14において、図11に示したステップと同じ処理を行うステップには同じ参照番号を付しており、このステップに係る説明は省略する。
【0066】
ステップS1401では認識部A240は、識別器保持部A231に格納されているそれぞれのクラスタリング情報を参照し、参照したクラスタリング情報中の重み値Wiを用いて、投票時における重みを決定する。
【0067】
[第3の実施形態]
本実施形態は、上記のステップS110及びステップS120における処理のみが第1の実施形態と異なる。然るに、以下では、第1の実施形態と同じ点については説明を省略し、第1の実施形態と異なる点のみについて説明する。
【0068】
本実施形態ではステップS110では、有用部分以外の部分(非有用部分)の指定を受け付ける。例えば、図15に示す如く、認識対象物40を識別するために有用ではない部分46が認識対象物40に備わっている場合、この部分46の位置若しくは領域を指定する。例えば認識対象物40が部品である場合を想定する。部品には個々に固有のシリアル番号等の刻印がなされている場合があり、この刻印されている情報は全ての部品に共通の情報ではない。そのため、この刻印がなされている部分は様々な部品を認識する為の学習に有用部分とは成り得ない。然るにこのような場合、有用部分とは成り得ない箇所を積極的に指定する。
【0069】
本実施形態ではステップS120では、第1の実施形態で説明したステップS120の処理において、ステップS110で指定された非有用部分以外の領域に対して設定された特徴点を用いて学習を行う。
【0070】
即ち本実施形態では、非設定箇所のうち着目箇所の指定を受け付け、着目箇所以外の箇所に設定されている特徴点における画像特徴量を用いて認識対象物を学習する。また、上記では識別に不要な部分を指定する実施例について述べたが、同時に識別に有用な部分を指定することも可能である。
【0071】
[第4の実施形態]
本実施形態は、上記のステップS110及びステップS120における処理のみが第2の実施形態と異なる。然るに、以下では、第2の実施形態と同じ点については説明を省略し、第2の実施形態と異なる点のみについて説明する。
【0072】
本実施形態においてもステップS110では第3の実施形態と同様に、有用部分以外の部分(非有用部分)の指定を受け付ける。本実施形態のステップS120では、基本的には第2の実施形態と同様であるが、重み値Wiの計算方法が異なる。即ち、以下の式(8)に示す如く、非有用部分の位置をpとすると、非有用部分の位置pとの距離が閾値lよりも小さい位置にある特徴点fiに対する重み値Wiは0とする。
【0073】
【数8】
【0074】
また、特徴点fiの画像上の座標位置を変数とする関数に従って重み値Wiを決定してもよい。例えば、この関数にガウス関数を用いた場合、重み値Wiは以下の式(9)に従って計算しても良い。
【0075】
【数9】
【0076】
ガウス関数は、以下の式(10)に示す如く、標準偏差σをパラメータとして以下のように表すことができる。
【0077】
【数10】
【0078】
なお、標準偏差σについては第2の実施形態で説明したとおりである。また、第3の実施形態と同様に、上記では、識別に不要な部分を指定する実施例について述べたが、同時に識別に有用な部分を指定することも可能である。
【0079】
なお、以上説明した各実施形態の部分的な技術を適宜組み合わせて用いることも可能であり、その組み合わせについては、当業者であれば、適宜なし得るものである。また、上記の各実施形態では、認識対象物は現実物体として説明したが、仮想物体としても良く、その場合、撮像部A100は、この仮想物体を配置する仮想空間においてこの仮想物体を撮像する機能部として実装される。
【0080】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
認識対象物の画像を取得する取得手段と、
前記画像について、前記認識対象物の認識に有用な箇所を設定箇所として受け付ける受け付け手段と、
前記画像について、該画像上の設定箇所の特徴点における画像特徴量を、非設定箇所の特徴点における画像特徴量よりも重点的に用いて前記認識対象物を学習する学習手段と
を備えることを特徴とする画像処理装置。
【請求項2】
更に、
前記学習手段による学習結果を用いて、前記認識対象物を新たに撮像した画像中に映っている前記認識対象物を認識する手段と
を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記学習手段は、前記設定箇所に対して前記非設定箇所よりも多くの特徴点を設定し、前記設定箇所、前記非設定箇所のそれぞれに設定された特徴点における画像特徴量を用いて前記認識対象物を学習する
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記学習手段は、前記設定箇所に対して前記非設定箇所よりも大きい重み値で投票し、該投票の結果に応じて前記認識対象物を学習する
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項5】
更に、前記非設定箇所のうち着目箇所の指定を受け付ける手段を備え、
前記学習手段は、前記着目箇所以外の箇所に設定されている特徴点における画像特徴量を用いて前記認識対象物を学習する
ことを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
【請求項6】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の取得手段が、認識対象物の画像を取得する取得工程と、
前記画像処理装置の受け付け手段が、前記画像について、前記認識対象物の認識に有用な箇所を設定箇所として受け付ける受け付け工程と、
前記画像処理装置の学習手段が、前記画像について、該画像上の設定箇所の特徴点における画像特徴量を、非設定箇所の特徴点における画像特徴量よりも重点的に用いて前記認識対象物を学習する学習工程と
を備えることを特徴とする画像処理方法。
【請求項7】
コンピュータを、請求項1乃至5の何れか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【請求項1】
認識対象物の画像を取得する取得手段と、
前記画像について、前記認識対象物の認識に有用な箇所を設定箇所として受け付ける受け付け手段と、
前記画像について、該画像上の設定箇所の特徴点における画像特徴量を、非設定箇所の特徴点における画像特徴量よりも重点的に用いて前記認識対象物を学習する学習手段と
を備えることを特徴とする画像処理装置。
【請求項2】
更に、
前記学習手段による学習結果を用いて、前記認識対象物を新たに撮像した画像中に映っている前記認識対象物を認識する手段と
を備えることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記学習手段は、前記設定箇所に対して前記非設定箇所よりも多くの特徴点を設定し、前記設定箇所、前記非設定箇所のそれぞれに設定された特徴点における画像特徴量を用いて前記認識対象物を学習する
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記学習手段は、前記設定箇所に対して前記非設定箇所よりも大きい重み値で投票し、該投票の結果に応じて前記認識対象物を学習する
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項5】
更に、前記非設定箇所のうち着目箇所の指定を受け付ける手段を備え、
前記学習手段は、前記着目箇所以外の箇所に設定されている特徴点における画像特徴量を用いて前記認識対象物を学習する
ことを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
【請求項6】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の取得手段が、認識対象物の画像を取得する取得工程と、
前記画像処理装置の受け付け手段が、前記画像について、前記認識対象物の認識に有用な箇所を設定箇所として受け付ける受け付け工程と、
前記画像処理装置の学習手段が、前記画像について、該画像上の設定箇所の特徴点における画像特徴量を、非設定箇所の特徴点における画像特徴量よりも重点的に用いて前記認識対象物を学習する学習工程と
を備えることを特徴とする画像処理方法。
【請求項7】
コンピュータを、請求項1乃至5の何れか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2012−230501(P2012−230501A)
【公開日】平成24年11月22日(2012.11.22)
【国際特許分類】
【出願番号】特願2011−97562(P2011−97562)
【出願日】平成23年4月25日(2011.4.25)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年11月22日(2012.11.22)
【国際特許分類】
【出願日】平成23年4月25日(2011.4.25)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]