(57)【要約】【課題】任意の輪郭線を有する物体であっても、抽出された輪郭線を用いて信頼性よく、しかも確実に物体を認識することを可能にする。【解決手段】物体２の学習時、学習すべき輪郭線３を抽出する領域Ｒ１、Ｒ２を指示してこの指示した領域において輪郭線を抽出し、この抽出した輪郭線ごとに該輪郭線を抽出した領域を示すコードを付与して輪郭線を記録する。物体認識時にも、認識すべき輪郭線を抽出する領域を指示し、該指示した領域において抽出した輪郭線に対してこの輪郭線を抽出した領域を示すコードを付与し、認識時に付与された輪郭線抽出領域を示すコードと学習時に付与されたコードが一致している輪郭線を用いて物体を認識する。このような構成では、物体認識時に付与した輪郭線抽出領域コードが学習時のものと一致することが確かめられてから輪郭線の照合が行われるので、物体の認識精度が向上する。【選択図】図１
2008176517.tif 000002
【特許請求の範囲】
【請求項１】
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識方法であって、
物体学習時、学習すべき輪郭線を抽出する領域を指示して該指示した領域において輪郭線を抽出し、
抽出した輪郭線ごとに該輪郭線を抽出した領域を示すコードを付与して輪郭線を記録し、
物体認識時、認識すべき輪郭線を抽出する領域を指示し、該指示した領域において抽出した輪郭線に対して該輪郭線を抽出した領域を示すコードを付与し、
認識時に付与された輪郭線抽出領域を示すコードと学習時に付与された輪郭線抽出領域を示すコードが一致している輪郭線を用いて物体を認識することを特徴とする物体認識方法。
【請求項２】
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識装置であって、
物体の画像の指示した領域において輪郭線を抽出する輪郭線抽出部と、
物体学習時、抽出した輪郭線ごとに該輪郭線を抽出した領域を示すコードを付与して輪郭線を記録する物体学習部と、
物体認識時、指示した領域において抽出した輪郭線に対して該輪郭線を抽出した領域を示すコードを付与し、該付与された輪郭線抽出領域を示すコードと学習時に付与された輪郭線抽出領域を示すコードが一致している輪郭線を用いて物体を認識する物体認識部と、
を有することを特徴とする物体認識装置。
【請求項３】
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識方法であって、
物体学習時、学習した輪郭線ごとに該輪郭線の極性を示すコードを付与して輪郭線を記録し、
物体認識時、認識した輪郭線に対して該輪郭線の極性を示すコードを付与し、認識時に付与された輪郭線の極性を示すコードと学習時に付与された輪郭線の極性を示すコードが一致している輪郭線を用いて物体を認識することを特徴とする物体認識方法。
【請求項４】
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識装置であって、
物体学習時、学習した輪郭線ごとに該輪郭線の極性を示すコードを付与して輪郭線を記録する物体学習部と、
物体認識時、認識した輪郭線に対して該輪郭線の極性を示すコードを付与し、認識時に付与された輪郭線の極性を示すコードと学習時に付与された輪郭線の極性を示すコードが一致している輪郭線を用いて物体を認識する物体認識部と、
を有することを特徴とする物体認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体認識方法および装置、更に詳細には、撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合し、輪郭線を用いて物体を認識する物体認識方法及び装置に関する。
【背景技術】
【０００２】
従来、認識すべき物体をＣＣＤカメラなどで撮像し、撮像された物体の画像を処理して物体の輪郭線を抽出し、その輪郭線を使用して物体の位置、姿勢、形状を認識することが行われている。図１と図２は輪郭線を使った画像による物体認識の例を示す。
【０００３】
図１は物体の学習場面を示すものであって、認識すべき物体２が不図示のカメラにより撮像され、画像処理装置に入力された画像１が入力画像として図示されている。このとき一般に、学習すべき範囲をオペレータが１個ないし複数個示すことが多い。この指示された学習範囲が符号Ｒ１、Ｒ２で示されている。学習物体２にはオペレータが与えた固有の座標系であるところのＵＶ座標系が張り付いている。学習では物体２の輪郭線３を何らかの方法で抽出し、輪郭線からはさらに直線４、円５、円６、擬似円弧７を抽出する。円弧は円として扱われる。擬似円弧とは非常に緩やかな円弧もしくは卵型の一部を切り取ったような滑らかな曲線のことである。輪郭線そのもの、もしくは輪郭線から抽出された図形の集合から物体固有の特徴を抽出し、その特徴を学習データとして記憶する。このときの学習データはＵＶ座標系で記述される。
【０００４】
図２は物体の認識場面を示すものであって、画像内に認識すべき物体がある。画像内の輪郭線を抽出し、そこから学習と同様に特徴を抽出したのち、抽出した特徴と図１で記憶した学習データの特徴とを照合する。認識の出力結果はたとえば画像の座標系であるＸＹ座標系における、ＵＶ座標系の倍率、角度および平行移動量（Ｘ，Ｙ）である。
【０００５】
上述した物体の認識において、輪郭線を使った認識技術は多数知られているが、本発明に近いものとしては以下のものが知られている。
【０００６】
特許文献１に記載された技術は、任意形状物体の認識を可能とする技術であり、輪郭線を直線、円、円弧、楕円、．．などの形状要素に分解してそれらの相対的位置関係を利用する。たとえば、図３は形状要素２個の特徴の例である。学習において、与えられた直線１５と円１６の距離ｈを求め、円の半径ｒとの比ｈ：ｒを特徴として学習データに記録する。このような形状要素同士の組み合わせを多数学習し、記録する。そして、物体認識において、直線１７と円１８を得たとき、直線と円の距離ｈ´、円の半径ｒ´の比ｈ´：ｒ´を調べ、この比が学習データの中に記録されていれば、局所的なマッチングが成功したことになり、座標変換式のひとつの候補を生成することができる。
【０００７】
一方、特許文献２に記載された技術は、任意形状物体の認識を可能とする技術であり、この技術では、輪郭線をそのまま使用している。すなわち輪郭線の頂点座標と明度勾配ベクトルを利用する。図１において、輪郭線３の頂点（黒丸）の明度勾配ベクトル（Ｇ）とはその地点において暗い方から明るい方に向かうベクトルである。当然ながら明度差が大きくなるほどベクトルの大きさも大きくなる。
【０００８】
図４において、輪郭線の２つの頂点の組（Ｐi、Ｐj）はひとつの特徴である。すなわち学習において、梁（ビーム）２０の長さと、明度勾配ベクトル２１、２２について、ビームからの相対的角度θ0、θ1を特徴として学習データに記録する。このような頂点の組を多数学習しておく。そして、物体認識において、学習した頂点の組（Ｐi、Ｐj）の表に従い、すべての輪郭線のすべての頂点をくまなく巡り（Ｐi）、頂点Ｐiの相方の頂点Ｐjを同様にすべての輪郭線のすべての頂点を対象に探す。すなわち自己の明度勾配ベクトル２１を基準にビームの長さ条件と、相対的角度条件をともに満たすような相方Ｐjを探す。相方Ｐjが見つかれば局所的なマッチングが成功したことになり、座標変換式のひとつの候補を生成することができる。
【０００９】
また、特許文献３に記載された技術は線図形マッチング方法で、輪郭線が直線線分で構成される物体の認識を可能とする技術である。ここでは輪郭線上の１点と直線線分との相対的位置関係を利用する。たとえば、図４において、輪郭線のひとつの頂点Ｐiと、近傍の直線線分２３の組はひとつの特徴である。すなわち学習において、頂点Ｐiを原点とするＰＱ座標系を張り（Ｑ軸と明度勾配ベクトル２１が一致）、ＰＱ座標系における直線線分２３の位置を特徴として学習データに記録する。このような組を多数学習しておく。物体認識時には、学習した組の表に従い、すべての輪郭線のすべての頂点をくまなく巡り（Ｐi）、頂点ＰiにＰＱ座標系を張り、近傍の点列をハフ変換等で直線線分に変換する。変換された直線線分が学習したものと一致すれば局所的なマッチングが成功したことになり、座標変換式のひとつの候補を生成することができる。
【特許文献１】特許２８８５８２３
【特許文献２】特開２００１−２５１０９７号公報
【特許文献３】特開２００５−１７４０６２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上述したように、輪郭線を用いた物体認識では、まず、輪郭線の抽出が行われるが、従来では、輪郭線の学習領域が区別されていないという問題がある。ここで学習領域とは、学習においてオペレータが１個ないし複数個示したところの学習すべき領域でそこで学習すべき輪郭線が抽出される領域のことであり、たとえば図１においては２個の学習領域、つまり輪郭線抽出領域Ｒ１、Ｒ２が存在する。
【００１１】
また、輪郭線を抽出するときには輪郭を抽出するための条件がある。輪郭抽出条件は抽出するロジックにもよるが、一般的に頂点間距離（ピッチ）Ｐ、画素明度の大きさのしきい値あるいは明度勾配ベクトルの大きさのしきい値などがある。このとき、一般的に輪郭線の抽出条件は輪郭線の抽出領域ごとに異なるべきものである。たとえば図１において領域Ｒ１のエッジ点列のピッチはＰ１、領域Ｒ２のピッチはＰ２となっている。
【００１２】
従来技術においては、学習において、輪郭線を各抽出領域ごとに抽出するまでは良いが、その輪郭線そのものに、従ってそれから派生する形状要素にも、さらにこれらから形成される特徴にも抽出領域Ｒ１、Ｒ２の記録がないまま学習データとして出力されている。そのため物体認識時に、認識画像から得られた輪郭線があれば、その輪郭線の抽出領域を区別することなく学習データのものと照合せざるを得なくなり、信頼性のある物体認識ができない、という問題がある。
【００１３】
たとえば図２において、物体のサイズ変動、回転および平行移動により、領域Ｒ１は図の広がりをもつことが予想されるので、この範囲からピッチＰ１の輪郭線１１が抽出され、同様に領域Ｒ２も図の広がりをもちピッチＰ２の輪郭線１２が抽出される。この場合、図１における曲線７はもともと領域Ｒ２のものであるが、図２においては領域Ｒ１からは曲線１１、領域Ｒ２からは曲線１２、として２重に抽出されている。このとき抽出条件（ピッチ）が異なることもあり、２つの輪郭線は必ずしも一致しない。しかし認識においてどちらの輪郭線１１、１２を使うかを決めることはできない。というのは、学習データの特徴に輪郭線がどの領域で抽出されたかの記録が存在しないために、輪郭線１１、１２のいずれを用いるかを選択できないからである。従って結局、どちらか一方、あるいは両方の輪郭線を用いて物体認識を行うことになる。そのとき、認識自体は正しく行われる可能性はあるが、学習のときと異なる条件で生成された輪郭線または特徴との照合が行われるので、位置決めの精度が低下する恐れがある。従って、物体学習時に、輪郭線の抽出領域を記録し、認識において異なる輪郭線抽出領域を排除することが重要になる。
【００１４】
次に、輪郭線の極性に関して問題がある。ここで輪郭線の極性とは物体上の輪郭線の進行方向をいい、物体認識時、学習時のものと輪郭線の極性、つまり、明暗（コントラスト）の向きが一致している必要がある。
【００１５】
輪郭線を抽出するロジックに関わらず、輪郭線には明らかな進行方向があることに注意する。それは明度勾配ベクトルの方向に対して適当に決めることができる。たとえば輪郭線の進行方向を明度勾配ベクトルの方向（向き）を時計回りに９０度回転させた方向と定めることができる。
【００１６】
この規則によれば、図５（ａ）において、明度勾配ベクトル２７、２９が図の向きのとき、輪郭線の進行方向が矢印で示した方向に定まる。すなわち外側の輪郭線２５、内側の輪郭線２６（円）の進行方向はいずれも反時計回りである。
【００１７】
図５（ｂ）は輪郭線の位置関係は図５（ａ）とまったく同じであるが、円内部が暗く外側が明るいので、暗い方から明るい方に向かう明度勾配ベクトルが、図５（ａ）のものとは逆転している。そのために内側の輪郭線（円）の進行方向は時計回りとなる。このとき、図５（ａ）の物体を学習したときに、認識時には、図５（ｂ）の物体を認識するので、輪郭線の極性を無視して認識を行うと問題が発生する。
【００１８】
たとえば、特許文献１に記載の技術では、物体認識時、図３に見るように特徴は距離比ｈ：ｒのみであり、これだけで位置決め可能であるので、図５（ａ）、（ｂ）で示したような輪郭線の極性を区別することなく、認識が行われる。従って、図５（ｂ）に示す物体が、図５（ａ）のものと異なる物体であり、区別が必要なときは問題となる。
【００１９】
一方、特許文献２に記載された技術では、図５（ｂ）の物体を認識しない。すなわち図５（ａ）と（ｂ）を区別する。なぜならば図４に見るように、図５（ｂ）ではたとえばベクトル２１が逆転してベクトル２４になっており、ビーム２０の両端のベクトル角度の条件を満たすことができないからである。もし図５（ｂ）の物体が図５（ａ）と同じ物体であり、区別が不必要なときに問題となる。
【００２０】
同様に、特許文献３に記載の技術でも、図５（ｂ）の物体を認識しない。すなわち図５（ａ）と（ｂ）を区別する。なぜならば図４に見るように図５（ｂ）ではたとえばベクトル２１が逆転してベクトル２４になっており、ＰＱ座標系が１８０度回転したものとなり直線線分２３を認識できないからである。もし図５（ｂ）の物体が図５（ａ）と同じ物体であり、区別が不必要なときに問題となる。
【００２１】
このように、学習特徴に輪郭線の極性を記録し、認識時に輪郭線の極性を見るか見ないかを選択できるようにすることが精度の高い物体認識を行うのに重要な要素となる。
【００２２】
本発明は、以上の問題点を解決するためになされたもので、任意の輪郭線を有する物体であっても、抽出された輪郭線を用いて信頼性よく、しかも確実に物体を認識することが可能な物体認識方法および装置を提供することを課題とする。
【課題を解決するための手段】
【００２３】
本発明（請求項１、２）は、
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識方法及び装置であって、
物体学習時、学習すべき輪郭線を抽出する領域を指示して該指示した領域において輪郭線を抽出し、この抽出した輪郭線ごとに該輪郭線を抽出した領域を示すコードを付与して輪郭線を記録すること、
物体認識時、認識すべき輪郭線を抽出する領域を指示し、該指示した領域において抽出した輪郭線に対して該輪郭線を抽出した領域を示すコードを付与し、認識時に付与された輪郭線抽出領域を示すコードと学習時に付与された輪郭線抽出領域を示すコードが一致している輪郭線を用いて物体を認識することを特徴とする。
【００２４】
また、本発明（請求項３、４）は、
撮像された物体の画像の輪郭線を抽出し、抽出した輪郭線を学習輪郭線と照合して物体を認識する物体認識方法及び装置であって、
物体学習時、学習した輪郭線ごとに該輪郭線の極性を示すコードを付与して輪郭線を記録すること、
物体認識時、認識した輪郭線に対して該輪郭線の極性を示すコードを付与し、認識時に付与された輪郭線の極性を示すコードと学習時に付与された輪郭線の極性を示すコードが一致している輪郭線を用いて物体を認識することを特徴とする。
【発明の効果】
【００２５】
本発明では、学習画像並びに認識画像の輪郭線にそれぞれ輪郭線抽出領域コードが付与され、物体認識時に付与された輪郭線抽出領域コードが学習時のものと一致することが確かめられてから輪郭線の照合が行われるので、精密な照合が可能となり、物体の認識精度を向上させることができる。
【００２６】
また、本発明では、学習並びに認識した輪郭線にそれぞれ輪郭線の極性を示すコードが付与され、物体認識時における輪郭線の極性を示すコードが学習時のものと一致することが確かめられてから輪郭線の照合が行われるので、精密な照合が可能となり、物体の認識精度を向上させることができる。
【発明を実施するための最良の形態】
【００２７】
以下、図面に示す実施例に基づいて本発明を詳細に説明する。
【実施例】
【００２８】
＜全体の構成＞
図６は本発明の一実施例を示す物体認識装置の構成を示すブロック図である。
【００２９】
同図において、制御部１００は本発明により物体を学習並びに認識するときの全体を制御するもので、物体を撮像し、物体モデルのデータベースの中からひとつを選び、その物体モデルと撮像された物体の画像を照合して物体認識を行い、その認識データにより装置を駆動するときの流れを制御する。
【００３０】
画像入力部１０１は、照明光源１０３により照明された物体１０４をテレビカメラ、ＣＣＤカメラなどの撮像装置１０２により撮像し、その撮像された画像を画像入力部１０１内の画像メモリ（不図示）に取り込む。
【００３１】
物体学習部１０５は、撮像された物体の画像から学習データを生成し物体モデルのデータベース１０７に格納する。
【００３２】
物体認識部１０６は、認識すべき物体の画像と、データベースに格納されている学習物体の画像とを照合（パターンマッチング）し、物体の認識、つまり物体の位置、形状、姿勢などを検出して、物体の位置決めを行う。
【００３３】
画像輪郭線抽出部１０８は、撮像された画像から点列として構成される輪郭線を抽出し輪郭線の集合を生成する。
【００３４】
折れ線分解部１０９は、画像輪郭線抽出部１０８で抽出された複数の頂点列を結ぶ１本の折れ線を、与えられた折れ線分解長により分解し、直線、円、擬似円弧などの図形を生成する。
【００３５】
図形選択部１１０は生成された図形の集合から異なる２個以下の組み合わせを選び出す。
【００３６】
図形分類・特徴量抽出部１１１は２個以下の図形の配置の型を分類し、その特徴データを生成する。
【００３７】
ハッシュ関数回路１１２は特徴データを入力としてハッシュ表への指標（インデクス）を生成する。
【００３８】
＜物体の学習＞
以下に、物体学習部１０５での処理を図７の流れに沿って説明する。
【００３９】
認識すべき物体が図１に示されたような物体２である場合、画像入力部１０１は物体２をテレビカメラ１０２で撮像し、その画像を画像メモリに格納する。画像輪郭線抽出部１０８は画像メモリに格納された物体２の画像を処理して物体２の輪郭線３を抽出する。この輪郭線の抽出には、特許文献１、２に記載されているような公知の方法を用いることができ、輪郭線は、物体の画像処理により物体の輪郭線上の点（図１で黒丸の点、以下、頂点という）が抽出され、抽出された各頂点を直線で結ぶ折れ線として抽出される。このとき、抽出された輪郭線（折れ線）には、オペレータが指示した学習すべき領域で輪郭線が抽出される領域を示すコードＲ１、Ｒ２、、．．を付加する。以上がステップＴ１の処理である。
【００４０】
次に、ステップＴ２において、学習ＬＣＲ集合を初期化する。学習ＬＣＲ集合は折れ線が分解されてできる直線（Ｌ）、擬似円弧（Ｒ）、円弧（Ｃ）の図形の格納場所であり、それぞれの格納数を０個にセットする。
【００４１】
続く、ステップＴ３〜Ｔ５で折れ線分解長Γを順に変え、それぞれのΓについて、折れ線集合の１本１本について分解を行う。折れ線分解長Γは、２つの頂点の直線距離で、その直線距離以上となると、一つの折れ線とすることを断念する長さで、学習物体に応じて所定の長さにあらかじめ定められる。分解長Γで分解された折れ線図形は、所定の判定ロジックにより、直線（Ｌ）、擬似円弧（Ｒ）、円弧（Ｃ）のいずれかの図形に分解される。そして、分解図形に折れ線の抽出領域コードを複写して学習ＬＣＲ集合に格納する。このとき図形の種別Ｌ、Ｒ、Ｃごとに分けて格納する必要はない。
【００４２】
次に、ステップＴ６で、２個のハッシュ表を初期化する。ハッシュ表（Ｈａｓｈ  Ｔａｂｌｅ）はメモリであり、図１０に示したような物体の特徴データを配列要素としている。２個のハッシュ表のうち、１個は認識において図形極性を見ないときのためのハッシュ表であり、もう１個は図形極性を見るときのためのハッシュ表であって、２個とも配列の全体をクリアし、初期化しておく。
【００４３】
続いて、ステップＴ７〜Ｔ９で、図形選択部１１０により学習ＬＣＲ集合からすべての異なる２個以下の図形（Ｌ、Ｒ、Ｃ）を選び出し、それらの相対的な位置関係を調べて、特徴データとしてハッシュ表に書き込む。本実施例における図形Ｌ、Ｒ、Ｃの配置のうち、代表的なものが図１１（一個の図形）、図１２（２個の図形の組み合わせ）に図示されている。
【００４４】
図形の極性記述には仮想線が必要である。仮想線は位置と方向を持った仮想のラインで、図形配置ごとに定められ、図１１、図１２で太い点線で示されている。仮想線をどこに、どの方向に定めるかについての明確な原理はなく、実施者が自由に定義してよいもので、実施例で提示したものと異なるものを採用してもよい。
【００４５】
ただし、本実施例では以下の基準に従っている。
（１）円があれば円の中心回りに反時計回りの方向が仮想線、
（２）曲線は曲線に沿って、曲線の進行方向とは無関係に、曲線を左回りに回る方向が仮想線、
（３）線図形２個が交差すれば、交点近傍で反時計回りの方向が仮想線、
（４）閉じた空間があれば、空間内で反時計回りの方向が仮想線とする。
【００４６】
図９は異なる２個の折れ線図形が直線（Ｌ）と円（Ｃ）であった場合を示す。ここで直線Ｌは円Ｃの半径に比して比較的遠くにあるものとし、各図形の進行方向は実線矢印の向きとする。図１１はその特徴データであり、特徴分類コードにはこの型が｛ＬＣ｝であることを示すコードを書き込む。また、図形配置コードにはこの配置が｛ＬＣ遠隔型｝であることを示すコードを書き込む。また、仮想線３５があり、図形の定義順は「１」、「２」の順、すなわちＬ→Ｃの順である。
【００４７】
また、図形抽出領域コード（輪郭線抽出コード）には、図形Ｌの領域コード＝Ｒ１、図形Ｃの領域コード＝Ｒ１を書き込み、図形極性コードには、図形Ｌの図形極性コード＝０、Ｃの図形極性コード＝０を書き込む。ただし図形極性コードは進行方向が仮想方向と一致していれば０、不一致なら１と定める。続いて、図形Ｌ、Ｃの相対データ｛ｒ／ｈ｝を書き込む。
【００４８】
出来上がった特徴データ（図１０）をハッシュ関数（図６のハッシュ関数回路１１２）に入力すると、ハッシュ表の位置指標であるところの整数（ハッシュ指標）が返される。ハッシュ指標は特徴データの全項目が入力データとなって計算される。２つの特徴データがある場合、一部でも異なるものがあればハッシュ指標も異なることに注意する。従って、図形抽出領域コードが異なれば異なるハッシュ指標すなわち異なる特徴であることがわかる。図形極性コードについても同様である。
【００４９】
まず、図形極性を見る方のハッシュ表について、ハッシュ指標の位置に特徴データを書き込む。次に、この特徴データの極性コード部を無効（０クリア）にする。この特徴データについても同様にハッシュ指標を得た後、今度は図形極性を見ないハッシュ表について、ハッシュ指標の位置に特徴データを書き込む。
【００５０】
なお、上述した図形の分類、特徴量（特徴データ）の生成（ステップＴ８）は、図６の図形分類、特徴量抽出部１１１で行われる。
【００５１】
以上でこの特徴１個分の処理が終了する。ステップＴ７に戻り同じことを繰り返す。これは異なる２個以下がすべて取り出されるまで繰り返す。
【００５２】
続いて、ステップＴ１０で、生成された２個のハッシュ表を外部の物体モデルデータベース１０７に出力して学習を終了する。
【００５３】
＜物体の認識＞  
次に、物体認識部１０６での物体認識の流れを図８の流れに従って詳述する。物体認識部１０６は、カメラ１０２により撮像された物体２の画像（図２）から輪郭線を抽出し、その輪郭線から物体の特徴データを抽出し、学習モデルと照合する。このとき、オペレータから図形極性を見るか見ないかの指示が出ているものとする。
【００５４】
ステップＵ１では、図２に示したような物体の画像から輪郭線を抽出する。物体の拡大／縮小、回転、平行移動を考慮して画像に対する抽出領域Ｒ１、Ｒ２の位置と大きさを決める。各抽出領域ごとに学習時と同じ仕様で輪郭線を抽出する。
【００５５】
ステップＵ２では、認識ＬＣＲ集合を初期化する。学習時と同様に格納数を０個にセットする。
【００５６】
ステップＵ３〜Ｕ５では、図２において、折れ線分解長Γを順に変え、それぞれの折れ線分解長Γについて、折れ線集合の１本１本について分解を行い、直線（Ｌ）、擬似円弧（Ｒ）、円弧（Ｃ）の図形を生成する。生成された分解図形に折れ線（輪郭線）の抽出領域コードを複写して学習ＬＣＲ集合に格納する。このときの折れ線分解長Γの個数と値は適当でよい。
【００５７】
続いて、ステップＵ６で倍率・回転・平行移動投票空間を初期化する。すなわち投票数を０クリアする。
【００５８】
続くステップＵ７〜Ｕ８では、認識ＬＣＲ集合からすべての異なる２個以下の図形を選び出し、学習時と全く同様にそれらの相対的な位置関係を調べて、特徴データを生成する。ただしこのときの特徴データは図形極性を見るか否かにより、どちらか一方のみを生成することに注意する。
【００５９】
続くステップＵ９では、上記の特徴データをハッシュ関数に入力するとハッシュ指標が返される。図形極性を見るか否かにより、いずれか一方のハッシュ表におけるその位置のデータを読み出す。そして、ハッシュ表のデータと今回生成した特徴データを較べ、もし異なれば、この特徴データは学習されていない特徴データであるので無視し、一方、一致した場合、この特徴データは学習されている特徴データであり、図形同士の重ねあいを行うことができるので、ＵＶ座標系からＸＹ座標系への座標変換式を生成し、そのパラメータを投票空間に投票する。
【００６０】
ステップＵ１０では、すべての図形の組み合わせが終了するので、投票空間に分布する点集合を調べて、局所的に集中する点集合を探す。その中心座標をもとに目的とするＵＶ座標系からＸＹ座標系への初期座標変換式、つまり非常に粗い写像を得ることができるので、この座標変換式を出力し、物体の認識を終了する。
【００６１】
＜効果＞
以上説明したように、本実施例では、従来技術で問題であったところの、認識において誤って学習時のときと異なる輪郭線抽出領域から得た輪郭線で位置決めするという問題が原理的に解決されているので、物体の認識、つまり位置決め精度が高くなる。すなわち、本実施例では、物体の学習時に学習画像の輪郭線に輪郭線抽出領域コードが記録され、学習特徴データとして記録されるとともに、物体認識時においても、認識画像の輪郭線に輪郭線抽出領域コードが記録され、その認識特徴データと学習特徴データ同士の照合において、輪郭線抽出領域コードが一致することが特徴データが一致するための必要条件となっている。従って、物体認識時において、輪郭線が学習時と同じ条件で抽出されているためにより正確であり、従って特徴データもより正確であり、従って精密な照合が可能となる。
【００６２】
また、本実施例では、従来技術で問題であったところの、極性の違いを見るべき物体なのに見ることができずに同じ物体として認識してしまうという問題と、逆に極性の違いを無視すべき物体なのに無視することができずに異なる物体として排除してしまうという問題とがいずれも原理的に解決されているので、極性の違いについて柔軟な処理をすることができる。たとえば、本実施例では、輪郭線に輪郭線抽出ロジック固有の輪郭線の進行方向が付加され、さらに輪郭線または派生した図形からなる特徴データに位置と方向をもつところの仮想線が設定される。極性とはこの仮想線に対する輪郭線の進行方向の一致／不一致のことであり、特徴データに極性を付加したものと付加しないものの２種類の特徴データが作成されている。従って、認識特徴データと学習特徴データ同士の照合において、極性の違いを見るべき物体であれば極性を付加した方の特徴データ同士を照合すればよいし、逆に極性の違いを無視すべき物体であれば極性を付加しなかった方の特徴データ同士を照合すればよいことになる。
【００６３】
また、認識時、輪郭線抽出領域コードと輪郭線の極性を示すコードの両方のコードが学習時のものとそれぞれ一致することをが特徴データが一致するための必要条件とすることにより、更に認識精度を向上させることができる。
【００６４】
＜他の実施例＞
なお、上述した実施例では、認識時に極性を見るか見ないかを選択できるようにするために、学習においてハッシュ表を２個用意したが、極性を見るか見ないかの選択をオペレータが学習時に行い、認識時には学習時の選択に従うような操作の構成をとることも可能であり、その場合はハッシュ表は１個で済み、メモリ資源が少なくて好都合であるとともに、極性を見るか見ないかに関わらず上述した効果と同様な効果を得ることができる。
【００６５】
また、上述した実施例ではハッシュ表を使用したが、ハッシュ表を使わずに構成することもできる。その場合特徴データ（図１０）を単純な配列に格納して学習データとすればよい。この場合もハッシュ表を使用した効果と同様な効果を得ることができる。しかも、このときの配列は１個で済むので好都合である。すなわち特徴データの極性コードは認識において極性を見るときのためのデータとしておくと良く、認識において特徴データを照合するときは、学習特徴配列の先頭から順に照合する。認識において極性を見るときは極性コードを照合し、極性を見ないときは極性コードを無視すればよい。
【図面の簡単な説明】
【００６６】
【図１】物体の学習のとき撮像された物体の画像を示す説明図である。
【図２】物体の認識のとき撮像された物体の画像を示す説明図である。
【図３】２個の形状要素を用いての照合を説明する説明図である。
【図４】輪郭線の頂点座標と明度勾配ベクトルを用いての照合を説明する説明図である。
【図５】輪郭線の極性を説明する説明図である。
【図６】物体の学習並びに認識を行う構成を示すブロック図である。
【図７】物体の学習の流れを示すフローチャートである。
【図８】物体の認識の流れを示すフローチャートである。
【図９】選択された２個の図形の特徴データを説明する説明図である。
【図１０】図形の特徴データを示すハッシュ表である。
【図１１】選択された１個の図形の特徴を示す図形分類図である。
【図１２】選択された２個の図形の組み合わせのパターン並びにその特徴データを示した図形分類図である。
【符号の説明】
【００６７】
１    入力画像
２    物体
３    輪郭線
１００  制御部
１０１  画像入力部
１０２  撮像装置
１０３  照明光源
１０４  物体
１０５  物体学習部
１０６  物体認識部
１０７  物体モデルデータベース
１０８  画像輪郭線抽出部
１０９  折れ線分解部
１１０  図形選択部
１１１  図形分類・特徴量抽出部
１１２  ハッシュ関数回路
【図１】
2008176517.tif 000003
【図２】
2008176517.tif 000004
【図３】
2008176517.tif 000005
【図４】
2008176517.tif 000006
【図５】
2008176517.tif 000007
【図６】
2008176517.tif 000008
【図７】
2008176517.tif 000009
【図８】
2008176517.tif 000010
【図９】
2008176517.tif 000011
【図１０】
2008176517.tif 000012
【図１１】
2008176517.tif 000013
【図１２】
2008176517.tif 000014