(57)【要約】【課題】少数の教師画像から簡単に正確なティーチングデータを作成可能な技術を提供する。【解決手段】標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出する一方で、対象物の構成や公差などの対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録する。次に、標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成する。そして、認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成する。【選択図】  図４
2004362400.tif 000002
【特許請求の範囲】
【請求項１】
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出し、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録し、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録し、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成する
画像認識装置のティーチング方法。
【請求項２】
対象物のばらつきの範囲の知識として、対象物の個体差によるばらつきの範囲と、撮像時の環境差によるばらつきの範囲と、を入力させる請求項１記載の画像認識装置のティーチング方法。
【請求項３】
対象物の個体差によるばらつきの範囲の知識として、設計上の公差を入力させる請求項２記載の画像認識装置のティーチング方法。
【請求項４】
知識として、標準対象物に関する属性を入力させる請求項１〜３のうちいずれか１項記載の画像認識装置のティーチング方法。
【請求項５】
コンテキストデータは、各種属性が構造化言語で記述されている請求項１〜４のうちいずれか１項記載の画像認識装置のティーチング方法。
【請求項６】
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出し、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録し、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録し、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成する
画像認識装置のティーチング装置。
【請求項７】
対象物のばらつきの範囲の知識として、対象物の個体差によるばらつきの範囲と、撮像時の環境差によるばらつきの範囲と、を入力させる請求項６記載の画像認識装置のティーチング装置。
【請求項８】
対象物の個体差によるばらつきの範囲の知識として、設計上の公差を入力させる請求項７記載の画像認識装置のティーチング装置。
【請求項９】
知識として、標準対象物に関する属性を入力させる請求項６〜８のうちいずれか１項記載の画像認識装置のティーチング装置。
【請求項１０】
コンテキストデータは、各種属性が構造化言語で記述されている請求項６〜９のうちいずれか１項記載の画像認識装置のティーチング装置。
【請求項１１】
コンピュータに、
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出する処理と、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録する処理と、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録する処理と、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成する処理と、
を実行させる画像認識装置のティーチングプログラム。
【請求項１２】
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出し、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録し、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録し、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成し、
生成されたティーチングデータをティーチングデータ記憶手段に格納する
ティーチング段階と、
ワークの画像を取り込んで、そのワークの画像から画像処理によって特徴量を抽出し、
ティーチングデータ記憶手段から読み出したティーチングデータと抽出された特徴量とに基づいて認識処理を実行して、ワークが対象物か否かを判定する
画像認識段階と、
を含む画像認識方法。
【請求項１３】
画像認識段階において認識に失敗した場合に、
抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、
生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの画像に画像処理を施し、
画像処理を施されたワークの画像を用いて認識処理を行う
請求項１２記載の画像認識方法。
【請求項１４】
画像認識段階において正しい判定結果が得られなかった場合に、
抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、
生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの判定を正しく行い得る属性を選び出し、
認識処理で使用可能な複数の認識ロジックのなかから、選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックを探索し、
索出された認識ロジックのためのティーチングデータを生成する
請求項１２または１３記載の画像認識方法。
【請求項１５】
選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックが索出されなかった場合に、その旨をユーザに通知する
請求項１４記載の画像認識方法。
【請求項１６】
選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックが索出されなかった場合に、選び出された属性に基づいて追加すべき認識ロジックの仕様を通知する
請求項１５記載の画像認識方法。
【請求項１７】
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出し、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録し、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録し、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成し、
生成されたティーチングデータをティーチングデータ記憶手段に格納する
ティーチング手段と、
ワークの画像を取り込んで、そのワークの画像から画像処理によって特徴量を抽出し、
ティーチングデータ記憶手段から読み出したティーチングデータと抽出された特徴量とに基づいて認識処理を実行して、ワークが対象物か否かを判定する
画像認識手段と、
を有する画像認識装置。
【請求項１８】
画像認識手段は、
抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、
生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの画像に画像処理を施し、
画像処理を施されたワークの画像を用いて認識処理を行う
請求項１７記載の画像認識装置。
【請求項１９】
画像認識手段は、
認識処理で使用可能な認識ロジックを複数有し、
抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、
生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの判定を正しく行い得る属性を選び出し、
選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックを探索し、
索出された認識ロジックのためのティーチングデータをティーチング手段に生成させる
請求項１７または１８記載の画像認識装置。
【請求項２０】
画像認識手段は、
選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックが索出されなかった場合に、その旨をユーザに通知する
請求項１９記載の画像認識装置。
【請求項２１】
画像認識手段は、
選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックが索出されなかった場合に、選び出された属性に基づいて追加すべき認識ロジックの仕様を通知する
請求項２０記載の画像認識装置。
【請求項２２】
コンピュータに、
対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出し、
対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録し、
標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録し、
認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成し、
生成されたティーチングデータをティーチングデータ記憶手段に格納する
ティーチング処理と、
ワークの画像を取り込んで、そのワークの画像から画像処理によって特徴量を抽出し、
ティーチングデータ記憶手段から読み出したティーチングデータと抽出された特徴量とに基づいて認識処理を実行して、ワークが対象物か否かを判定する
画像認識処理と、
を実行させる画像認識プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像から対象物を認識する画像認識装置、並びに、このような画像認識装置のティーチング装置に関する。
【０００２】
【従来の技術】
従来から、カメラで撮像した画像に画像処理を施し、特徴量を抽出することによって対象物の認識を行う技術が知られている。このような画像認識技術は、工業製品の検査装置やロボットの視覚装置をはじめとする種々の画像認識装置に応用されている。
【０００３】
画像認識によって対象物を特定するためには、その対象物の特徴をコンピュータに事前に教示しておく必要がある。この作業をティーチングという。検査装置を例に説明すると、まず、良品と不良品のそれぞれのサンプルを用意し、それらを撮像して得た画像（教師画像）から、良品に関する特徴量や不良品の欠陥部分（傷や欠けなど）に関する特徴量を抽出し、それらの特徴量に基づいて検査対象物の良否判定を行うための判定基準値（ティーチングデータ）を決定するのである。
【０００４】
この分野に関する先行技術としては、特許文献１〜３などが知られている。特許文献１には、ニューロ処理ユニットに種々の欠陥情報を学習させておき、欠陥検査で検出された欠陥の種別を判定する装置が提案されている。特許文献２には、良品と不良品の中間に属する対象物の検査基準値を修正可能な装置が提案されている。特許文献３には、欠陥検出パラメータと欠陥の特徴量データに基づいて対象物の欠陥の種別を判別する装置が提案されている。
【０００５】
【特許文献１】
特開平８−２１８０３号公報
【特許文献２】
特許第３１４０１７７号公報
【特許文献３】
特開２００１−１６８１６０号公報
【０００６】
【発明が解決しようとする課題】
一般に、認識すべき対象物は個体差によるばらつきを含んでいるのが常であり、照明や環境光などの撮像環境の変動により画像にばらつきが生ずることも多い。また、不良品に関しては、欠陥の種類は無数にあり、欠陥が現れる位置やその形状・大きさなどもまちまちである。それゆえ、ティーチングを行う際には、良品や不良品の教師画像をできるだけ多く（たとえば、数十〜数百）用意する必要がある。
【０００７】
図９は、従来の画像ティーチングを概念的に表した図である。図中、○印でプロットした点が良品の特徴量を表し、×印でプロットした点が不良品の特徴量を表している。このように良品と不良品の特徴量を多数収集することで、良品のばらつきの傾向と不良品の傾向の違いを把握し、両者の間に判定基準値（図中の実線）を設定するのである。
【０００８】
しかしながら、教師画像を網羅的に用意することは不可能であるため、画像によるティーチングだけで良品のばらつきの範囲と不良品の範囲との正しい境界を把握することは難しい。よって、図示のごとく、判定基準値（実線）が正しい境界（破線）と一致しない場合がほとんどである。この場合には、本来良品と判定されるべきもの（図中の△印）が不良品と判定されたり、本来不良品と判定されるべきもの（図中の▲印）が良品と判定されたりするなどの検査ミスを招いてしまう。
【０００９】
そこで従来では、良品と不良品が正しく（つまり、ユーザが意図する通りに）判定されるように、何度も繰り返しティーチングを行ったり、手作業でティーチングデータを調整したりして、ティーチングデータを追い込んでいかなければならなかった。しかし、このような作業は、高度なスキルとノウハウを有する熟練作業者が多大な労力と時間をかけて行う必要があり、改善が望まれていた。
【００１０】
本発明は上記実情に鑑みてなされたものであって、その目的とするところは、少数の教師画像から簡単に正確なティーチングデータを作成可能な技術を提供することにある。
【００１１】
また、本発明の他の目的は、認識処理の成功率や精度を向上させることの可能な技術を提供することにある。
【００１２】
【課題を解決するための手段】
上記目的を達成するために本発明のティーチング装置では以下のごとくティーチング処理を行う。
【００１３】
本発明では、対象物として認識すべき物のうち標準的な形態を有している標準対象物の画像を取り込んで、その標準対象物の教師画像から画像処理によって特徴量を抽出する。その一方で、対象物のばらつきの範囲その他の対象物に関する既知の知識をユーザに入力させて、その知識を知識ベースに登録する。これらの処理はどちらを先に実行してもよいし、並列に実行してもよい。
【００１４】
教師画像から抽出された標準対象物の形態に関する情報と、知識として得られる対象物のばらつきに関する情報とを組み合わせることによって、標準対象物を中心にした対象物のばらつきの範囲、すなわち、対象物として認識すべき範囲を把握することができる。
【００１５】
ここで、対象物のばらつきの範囲の知識として、対象物の個体差によるばらつきの範囲と、撮像時の環境差によるばらつきの範囲と、を入力させることが好ましい。これにより、対象物に固有のばらつきに関する情報と、照明や環境光などの影響で生ずるばらつきに関する情報とを得ることができる。
【００１６】
工業製品の場合には、たとえば、対象物の個体差によるばらつきの範囲の知識として、設計上の公差を入力させるとよい。設計上の公差は、ＣＡＤデータなどの設計情報から容易に知ることができるし、元来、対象物として許容可能な範囲を表す情報だからである。
【００１７】
また、知識として、対象物のばらつきの範囲に限らず、標準対象物に関する属性を入力させることも好ましい。たとえば、設計情報から正確な寸法や形状などの属性を与えることによって、対象物のあるべき姿である標準対象物をより正確に定義することができるようになる。
【００１８】
本発明では、標準対象物の教師画像から抽出された特徴量と知識ベースに登録されている知識とから、対象物たり得るための各種属性をその意味とともに記述したコンテキストデータを生成して、そのコンテキストデータを知識ベースに登録する。
【００１９】
教師画像から抽出された特徴量は、具体物たる標準対象物のみを表す特化した情報であるのに対し、この特徴量と知識ベースの知識とから生成されたコンテキストデータは、認識すべき対象物全体（すなわち、対象物として認識すべき範囲）を表現する一般化された情報の集合体となる。また、各種属性がその意味とともに管理されているので、情報の汎用性・流用性が高まり、コンテキストデータを様々な用途や問題解決に利用することが容易となる。
【００２０】
ここで、コンテキストデータは、各種属性が構造化言語で記述されていることが好ましい。これにより、定量的に定義可能な数値や値域に限らず、文字列、関数、構成要素の相関関係などの種々の属性をコンピュータ処理可能な形式で体系的に管理することができる。
【００２１】
コンテキストデータの典型的な用途としては、ティーチングデータの生成がある。本発明では、認識処理で用いられる特徴量の種別に対応する属性を知識ベースに登録されたコンテキストデータから抽出して、当該認識処理のためのティーチングデータを生成する。これにより、標準対象物だけの教師画像から簡単に正確なティーチングデータを作成することができる。
【００２２】
このようにして生成されたティーチングデータは、ティーチングデータ記憶手段に格納され、画像認識装置での認識処理に供される。
【００２３】
本発明の画像認識装置では、ワークの画像を取り込んで、そのワークの画像から画像処理によって特徴量を抽出し、ティーチングデータ記憶手段から読み出したティーチングデータと抽出された特徴量とに基づいて認識処理を実行して、ワークが対象物か否かを判定することによって、ワークの認識を行う。上記ティーチング段階において作成された正確なティーチングデータを用いて、画像認識段階では精度良く認識処理を行うことができる。なお、ワークとは画像認識段階において認識処理に供される物をいう。
【００２４】
また、画像認識段階においても上記コンテキストデータを利用することができる。
【００２５】
たとえば、画像認識段階において認識に失敗した場合に、抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの画像に画像処理を施し、画像処理を施されたワークの画像を用いて認識処理を行うことができる。
【００２６】
コンテキストデータには対象物の各種属性の標準状態が定義されているため、その標準状態からの差異を調べることで、ワークの画像の問題点、つまり、認識処理に失敗した原因を見出すことができる。そこで、その問題点を除去するための画像処理を施し、この画像処理後の画像を用いて再び認識処理を行えば、認識処理の成功率や精度の向上を図ることができる。
【００２７】
また、画像認識段階において正しい判定結果が得られなかった場合に、抽出されたワークの特徴量から、そのワークの各種属性を定義するワークコンテキストデータを生成し、生成されたワークコンテキストデータと知識ベースに登録された対象物のコンテキストデータとの属性上の差異に基づいて、ワークの判定を正しく行い得る属性を選び出し、認識処理で使用可能な複数の認識ロジックのなかから、選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックを探索し、索出された認識ロジックのためのティーチングデータを生成することも可能である。
【００２８】
これにより、最適な認識ロジックによる新たなティーチングデータが自動的に生成されるので、手作業によるティーチングデータの追い込みが不要となり、ティーチングに要する時間と労力が低減されるとともに、認識処理の成功率や精度の向上も図られる。
【００２９】
ここで、選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックが索出されなかった場合に、その旨をユーザに通知するとよい。この場合に、選び出された属性に基づいて追加すべき認識ロジックの仕様を通知するとなお好ましい。これにより、ユーザは、新たに追加すべき認識ロジックを発見することができる。
【００３０】
なお、本発明は、上記処理の少なくとも一部を行う手段を有する画像認識装置または画像認識装置のティーチング装置として捉えることができる。また、本発明は、上記処理の少なくとも一部を行う画像認識方法もしくは画像認識装置のティーチング方法、または、かかる方法を実現するための画像認識プログラムもしくは画像認識装置のティーチングプログラムとして捉えることができる。
【００３１】
【発明の実施の形態】
以下に図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ここでは、工業製品の製品検査を行う検査装置に本発明を適用した例を示す。
【００３２】
（第１の実施形態）
図１は、本発明の第１の実施形態に係る画像認識装置の機能構成を示すブロック図である。同図に示すように、画像認識装置は、概略、画像認識処理を行う画像認識部１とティーチング処理を行うティーチング部２とから構成される。
【００３３】
画像認識装置は、基本ハードウエアとして、ＣＰＵ（中央演算処理装置）、メモリ（主記憶装置）、ハードディスク（補助記憶装置）、ディスプレイ（表示部）、キーボード（入力部）、ＭＯ装置（外部記憶装置）、カメラ（撮像部）などを備える汎用のコンピュータシステムで構成可能である。画像認識部１とティーチング部２の諸機能は、ハードディスクに格納されたプログラムがメモリに読み込まれ、ＣＰＵによって実行されることにより、ソフトウエアとハードウエアとが協働して実現されるものである。
【００３４】
画像認識部１は、撮像部１０、画像記憶部１１、画像処理部１２、認識処理部１３およびティーチングデータ記憶部１４を有して構成される。
【００３５】
撮像部１０は画像を取り込む撮像手段である。撮像部１０としてはＣＣＤカメラなどを用いることができる。撮像部１０は、テーブル３上に置かれた検査物４を撮像し、その画像を画像認識装置に取り込む。撮像部１０で取り込まれた画像は、フレームメモリなどで構成された画像記憶部１１に一時的に格納される。なお、画像としては、カラー画像でも濃淡画像（白黒画像）でもよく、赤外線画像などの特殊画像であってもよい。画像の種類は、画像認識装置の用途などに応じて適宜選択される。
【００３６】
画像処理部１２は、画像処理によって画像から特徴量を抽出する画像処理手段である。画像処理部１２は、画像記憶部１１から読み込んだ画像に対し画像処理を施して、たとえば、検査物４の表面の透明度、テクスチャ、色、明度、長さ、面積などの種々の特徴量を抽出する。ここで抽出された特徴量は、認識処理部１３に引き渡される。
【００３７】
認識処理部１３は、ティーチングデータと画像処理部１２で抽出された特徴量とに基づいて認識処理を行い、画像中の検査物４が認識すべき対象物であるか否かを判定する認識処理手段である。認識処理部１３は、数十〜数百に及ぶ複数の認識ロジックを備えており、認識すべき対象物に応じて、１つ又は複数の認識ロジックを使い分ける。認識すべき対象物は、たとえば良品である場合もあれば、逆に欠陥（傷、欠け、組み立て不良、はんだ不良など）を含む不良品の場合もある。
【００３８】
認識処理の内容（使用する認識ロジックの組み合わせ、認識ロジックの実行手順、認識ロジックで参照されるしきい値や値域など）は、ティーチングデータで定義されている。ティーチングデータは、認識処理部１３で実行される個々の認識処理ごとに複数用意されており、認識処理部１３は、認識すべき対象物に応じてハードディスクもしくはＭＯ装置に設けられたティーチングデータ記憶部１４から適切なティーチングデータを読み出して利用する。これらのティーチングデータは、ティーチング部２にて生成されるものである。
【００３９】
本実施形態のティーチング部２におけるティーチング処理は、従来のものとは全く異なるアプローチを採用している。まずは、その相違について説明する。
【００４０】
従来の画像ティーチングでは、上述したように、認識すべき対象物（たとえば良品）とそれ以外の非対象物（たとえば不良品）の教師画像をできるだけ多く用意し、それらの教師画像から得られた特徴量の傾向に基づいて良品のばらつきの範囲と不良品の範囲を定めていた（図９参照）。
【００４１】
これに対し、本実施形態のティーチングは次のような特徴を有する。
【００４２】
第一に、対象物として認識すべき物のうち標準的な形態を有している物（以下、「標準対象物」という。）を正確に定義した上で、その標準対象物を中心にした対象物のばらつきの範囲（すなわち「対象物として認識すべき範囲」）を定義する、というアプローチを採用している。
【００４３】
図２はこのアプローチを概念的に表したものである。図中、○印でプロットした点が「標準対象物」を表し、個体差のばらつきと環境差のばらつきの和集合で表される範囲が「対象物として認識すべき範囲」を表している。
【００４４】
第二に、このアプローチを実現するために、教師画像から得られる特徴量だけでなく、対象物に関してユーザが既に知っている知識をも利用する。
【００４５】
標準対象物の教師画像からは、標準対象物の形態に関する情報を容易に得ることができる。また、実際に画像にしてみなければ分からない情報（たとえば、撮像環境によって見え方の異なる色や明度などの情報、画像中の位置・大きさ・範囲などの情報）も得ることができる。しかしながら、それらの情報だけでは対象物として認識すべき範囲を知ることはできない。また、標準対象物についても得られる情報には限りがある。
【００４６】
そこで、本実施形態では、標準対象物の教師画像から形態に関する特徴量を取得する一方で、設計情報などの知識から正確な寸法、形式、構成、名称などの各種属性を取得することによって、対象物のあるべき姿である標準対象物をより正確に定義する。加えて、個体差のばらつきや環境差のばらつきなどのように、教師画像からは得ることができない情報についても、知識として与える。たとえば、設計情報の寸法公差を個体差値域として与えたり、照明の照度変化が画像に与える影響を数値化して環境差値域として与えるのである。
【００４７】
第三に、対象物の各種属性をコンピュータ処理可能な形式で体系的に管理するために、コンテキストデータなるデータ形式を採用する。コンテキストデータは対象物たり得るための各種属性をその意味とともに記述したデータであり、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などの構造化言語によって記述されたものである。コンテキストデータに記述する属性としては、定量的に定義可能な数値や値域に限らず、文字列、関数、構成要素の相関関係などの情報を含めることもできる。種々の情報をコンテキストデータに記述することによって、様々な側面から多面的に対象物を定義することが可能となる。
【００４８】
教師画像から抽出された特徴量は、具体物たる標準対象物のみを表す特化した情報であるのに対し、この特徴量と知識とから生成されたコンテキストデータは、認識すべき対象物全体（すなわち、対象物として認識すべき範囲）を表現する一般化された情報の集合体となる。
【００４９】
したがって、ワークの画像から得られた特徴量がコンテキストデータで定義された範囲に含まれるか否かを調べることによって、ワークが対象物であるか否かを判断することができる。もちろん実際の認識処理においてはコンテキストデータに含まれる全ての属性を用いる必要はないので、ティーチングデータを作成する際には、コンテキストデータから必要な属性だけを抽出して、しきい値や値域などの判定基準値を生成すればよい。
【００５０】
本実施形態では、このようなアプローチによってティーチングを行うことにより、少ない教師画像から簡単に正確なティーチングデータを作成することを可能としている。
【００５１】
では、上記ティーチング処理を実現するための具体的構成について説明する。
【００５２】
図１に示すように、ティーチング部２は、撮像部１０、画像記憶部１１、画像処理部１２、コンテキスト化部２０、知識ベース２１、知識ベース作成部２２およびティーチングデータ生成部２３を有して構成される。なお、本実施形態では、画像認識部１とティーチング部２を一体的に構成し、撮像部１０、画像記憶部１１および画像処理部１２の各構成要素を共用しているが、ティーチング部２の部分を画像認識部１とは別体構成にして外部ティーチング装置とすることも可能である。
【００５３】
知識ベース２１は、コンテキストデータの形式で対象物の各種属性を体系的に格納するデータベースである。知識ベース作成部２２は、知識ベース２１にコンテキストデータを登録したり、知識ベース２１に登録されているコンテキストデータを閲覧・編集・削除したりするインターフェイスをユーザに提供する機能である。
【００５４】
コンテキスト化部２０は、画像処理部１２で抽出された特徴量を受け取り、その特徴量と知識ベース２１に登録されている知識とに基づいてコンテキストデータを生成するコンテキストデータ生成手段である。ここで生成されたコンテキストデータは知識ベース２１に登録される。
【００５５】
ティーチングデータ生成部２３は、コンテキストデータからティーチングデータを生成するティーチングデータ生成手段である。ここで生成されたティーチングデータはティーチングデータ記憶部１４に格納される。
【００５６】
続いて、図３〜図５を参照して、ティーチング処理の具体的な処理の流れを説明する。図３は、ティーチング処理の流れを示すフローチャートであり、図４は、ティーチング処理におけるデータフローを説明する図であり、図５は、知識ベースに登録されたコンテキストデータの一例を示す図である。
【００５７】
なお、ここでは、ＩＣチップの良品検査のためのティーチングを例に挙げて説明を行う。つまり「良品のＩＣチップ」が認識すべき対象物となり、良品のＩＣチップ以外の物はすべて非対象物となる。
【００５８】
まず、ユーザは、標準対象物のサンプルを選定する。標準対象物としてはたとえばマスターピースを選ぶことができる。あるいは、精度良く作製された２、３個の良品サンプルを選んでもよい。そして、選定したサンプルを撮像部１０で撮像し、教師画像を取り込む（ステップＳ１）。
【００５９】
画像処理部１２では、取り込まれた標準対象物の教師画像に画像処理を施して、ＩＣチップ表面の透明度、色、明度、縦横の長さ、面積などの特徴量を抽出する（ステップＳ２）。また、ＩＣチップの周りの背景部分の特徴量を抽出してもよい。図４の例では、透明度「９」、色「ＲＧＢ（５０，５０，５０）」、明度「１０」、長さ「３．０００１ｃｍ」、面積「９．０００６ｃｍ２」などの特徴量が抽出されている。なお、標準対象物として複数のサンプルを選んだ場合には、各教師画像から得られた特徴量を平均することにより標準対象物の特徴量とすればよい。
【００６０】
一方、知識ベース作成部２２では、ユーザに知識を入力させる（ステップＳ３）。ユーザは、知識ベース作成部２２が提供する知識入力用インターフェイスを操作して、対象物の名称、形式、構成、機能、個体差値域、環境差値域その他の対象物に関する既知の知識を入力することができる。図４の例では、名称「ＩＣチップ」、形式「ＱＦＰ」、構成「ＩＣパッケージとリードピン」、形状「正方形」、長さ「３ｃｍ」、面積「９ｃｍ２」、ピン数「５２ｐｉｎ」、公差「長さ±０．０５ｍｍ」などの知識が入力されている。これらの知識は知識ベース作成部２２により知識ベース２１に登録される。なお、ステップＳ３の処理を、ステップＳ１，Ｓ２よりも前もしくは並列に実行しても構わない。
【００６１】
次に、コンテキスト化部２０が、教師画像から抽出された特徴量と知識ベース２１に登録された知識とを組み合わせて、良品のＩＣチップを定義するためのコンテキストデータを生成する（ステップＳ４）。このとき各属性はその意味に応じて分類・階層化され、属性とその意味とが対応付けられてコンテキストデータに記述される。これにより各種属性の意味構造が明らかとなり、ユーザとコンピュータの双方にとって取り扱い易いデータとなるとともに、情報の汎用性・流用性が高まり、コンテキストデータを様々な用途や問題解決に利用することが容易となる。
【００６２】
コンテキスト化部２０は、特徴量と知識の両方に同じ属性に関するデータが含まれている場合には、知識で与えられたデータを優先して用いる。知識として与えられたデータのほうが信頼性が高いからである。図４の例では、ＩＣチップの「長さ」および「面積」に関するデータが特徴量と知識の両方に含まれているが、コンテキストデータでは知識として与えられた「３ｃｍ」および「９ｃｍ２」が採用されている。
【００６３】
このようにして作成されたコンテキストデータはコンテキスト化部２０により知識ベース２１に登録される。知識ベース２１には、図５に示すように、数多くの対象物についてのコンテキストデータを登録可能である。また、良品に限らず、欠陥そのものなど、対象物の種類を問わず種々のコンテキストデータを登録可能である。
【００６４】
コンテキスト化部２０は、蓄積されたコンテキストデータを、新たな対象物のコンテキストデータを生成する際に知識として利用することができる。たとえば、共通性のある対象物のコンテキストデータの一部を流用したり、基本品のコンテキストデータを継承しそれに属性を追加することで複数のバリエーション品のコンテキストデータを生成したりすることもできる。さらには、コンテキストデータそのものを他のコンテキストデータの構成要素にすることもできる。このようにコンテキストデータの２次利用が容易なのは、コンテキストデータが各種属性を意味内容とともに構造化して保持しているからである。
【００６５】
コンテキストデータが生成された後、ティーチングデータ生成部２３が、認識処理のためのティーチングデータを生成する（ステップＳ５）。具体的には次のように行う。
【００６６】
まず、認識処理において利用される認識ロジックを決定する。これはユーザに選択させればよい。このとき、ティーチングデータ生成部２３が、コンテキストデータに含まれる属性と各認識ロジックで用いられる特徴量の種別とを照合して、利用可能な又は最適な認識ロジックを候補として選出することも好ましい。図４の例では、ティーチングデータ生成部２３により利用可能な認識ロジックが４つ（Ａ〜Ｄ）選び出されており、ユーザがその中から認識ロジックＢを選択している。
【００６７】
次に、認識ロジックで用いられる特徴量の種別を参照して、その種別に対応する属性を知識ベース２１に登録されたコンテキストデータから抽出する。たとえば、認識ロジックＢが明度と面積の２つの特徴量を用いるものである場合、ティーチングデータ生成部２３はコンテキストデータからＩＣチップの明度および面積と、明度および面積のばらつきに関する属性（個体差値域、環境差値域など）と、を抽出するのである。ここでは、明度「１０」、面積「９ｃｍ２」、明度のばらつき「±０．２」、面積のばらつき「±０．００３ｃｍ２」が抽出されたものとする。
【００６８】
続いて、抽出した属性を認識ロジックＢの内容に合わせて適宜加工することによって当該認識処理のためのティーチングデータを生成する。たとえば、認識ロジックＢがしきい値として明度の上限値と面積の下限値とを用いる場合には、上記属性から明度の上限値「１０．２」と面積の下限値「８．９９７ｃｍ２」とを算出する。さらに、実際の認識処理においては面積をピクセル数で取り扱うため、画像解像度に基づいて面積の下限値「８．９９７ｃｍ２」をピクセル数「７４４０」に変換する。このようにして算出されたしきい値からティーチングデータを生成するのである。なお、図４のティーチングデータに含まれる「範囲」の値は画像中のＩＣチップの位置を表す範囲であり、ユーザにより設定されるものである。
【００６９】
ステップＳ６では、生成したティーチングデータで正しく（ユーザが意図する通りに）認識処理を行えるか否かのテスト検査が行われる。たとえば、ＩＣチップについて良品のサンプルと不良品のサンプルとを数点用意し、それらに対して認識処理を実行し、その判断結果を確認する。
【００７０】
正しく認識処理が行われた場合には、ティーチングデータをティーチングデータ記憶部１４に格納し、ティーチング処理を終了する。逆に、認識処理が失敗した場合には、ステップＳ３に戻り、対象物に関するより詳しい知識を知識ベースに登録した上で、再度、コンテキストデータおよびティーチングデータの生成を繰り返す（ステップＳ７）。
【００７１】
以上述べた本実施形態のティーチング処理によれば、１点ないし数点の少数の教師画像から簡単に正確なティーチングデータを作成することができ、ティーチングに要する時間と労力を低減することが可能となる。
【００７２】
上記ティーチング段階が終了した後は、画像認識装置は画像認識段階（ＩＣチップの製品検査）に入る。製品検査においては、撮像部１０でワーク（検査物）の画像を取り込み、画像処理部１２でワークの画像から画像処理によって特徴量を抽出し、認識処理部１３でティーチングデータ記憶部１４から読み出したティーチングデータと抽出された特徴量とに基づいて認識処理を実行して、ワークが対象物か否かを判定する。そして、対象物と判定された場合は良品、それ以外は不良品とする判定結果を出力する。本実施形態によれば、上記ティーチング処理により作成した正確なティーチングデータを用いて、精度良く認識処理を行うことができる。
【００７３】
（第２の実施形態）
上述したように、コンテキストデータには、対象物の各種属性がその意味とともに記述されている。したがって、コンテキストデータの情報は汎用性・流用性に優れ、様々な用途や問題解決に利用することが容易である。第１の実施形態ではコンテキストデータをティーチングデータの生成に利用したが、第２の実施形態ではコンテキストデータを認識処理にも利用する。
【００７４】
図６は、本発明の第２の実施形態に係る画像認識装置の機能構成を示すブロック図である。第１の実施形態に係る画像認識装置との構成上の差異は、認識画像作成部１５を有している点である。以下では、本実施形態に特有の構成および作用を中心に説明し、第１の実施形態と共通する部分については同一の符号を用いて、その詳しい説明は省略する。
【００７５】
図７は、認識処理の流れを示すフローチャートである。同図を参照して、第１の実施形態で生成したティーチングデータを用いてＩＣチップの良品検査を行う場合の処理の流れを説明する。
【００７６】
まず、ワークを撮像部１０で撮像し、ワークの画像を取り込む（ステップＳ１０）。画像処理部１２では、取り込まれたワークの画像に画像処理を施してＩＣチップ表面の透明度、テクスチャ、色、明度、長さ、面積などの種々の特徴量を抽出する（ステップＳ１１）。また、ＩＣチップの周りの背景部分の特徴量を抽出してもよい。
【００７７】
認識処理部１３は、ティーチングデータ記憶部１４からティーチングデータを読み出す。そして、ティーチングデータと画像処理部１２で抽出された特徴量とに基づいて認識処理を実行する（ステップＳ１２）。
【００７８】
ここでは、ティーチングデータで定義された認識処理の内容にしたがって、特徴量のなかから明度と面積が選び出され、それらの値が認識ロジックＢに引き渡される。認識ロジックＢにて、ワークの明度がしきい値「１０．２」以下かどうか、ワークの面積（ピクセル数）が「７４４０」以上かどうか調べられる。両方の条件を満たす場合には、良品のＩＣチップであると判定され、少なくともいずれか一方の条件を満たさなかった場合には、不良品であると判定される。判定結果が得られた場合には認識成功である。この場合には、判定結果がディスプレイに出力され、認識処理が終了する（ステップＳ１３，Ｓ１４）。
【００７９】
なお、画像処理部１２にて認識処理に必要な特徴量（明度と面積）が抽出できなかった場合、抽出されたとしてもその値が常識的な値から大きく外れていた場合、その他認識処理が正常に実行されなかった場合には、判定結果が得られず、認識失敗となる。この場合には、ステップＳ１５〜Ｓ１７の認識画像作成処理に移行する（ステップＳ１３）。
【００８０】
認識画像作成処理では、まず、コンテキスト化部２０が、ワークの画像から抽出された特徴量を画像処理部１２から受け取り、それらの特徴量からワークの各種属性を定義するワークコンテキストデータを生成する（ステップＳ１５）。ワークコンテキストデータは、コンテキストデータと同じ形式のデータであり、ワークの属性がその意味とともに記述されたものである。生成されたワークコンテキストデータは認識画像作成部１５に引き渡される。
【００８１】
認識画像作成部１５は、知識ベース２１に登録されている対象物のコンテキストデータを読み出し、ワークコンテキストデータの各属性について、コンテキストデータの対応する属性と比較し、属性上の差異を調べる（ステップＳ１６）。コンテキストデータには対象物の各種属性の標準状態が定義されているため、その標準状態からの差異を調べることでワークの原画像の問題点、つまり、認識処理に失敗した原因を見出すことができるのである。
【００８２】
続いて、認識画像作成部１５は、画像記憶部１１からワークの原画像を受け取り、検出された属性上の差異に基づいてワークの画像に適切な画像処理を施し、認識画像を作成する（ステップＳ１７）。
【００８３】
たとえば、面積や長さの値が大きく異なっている場合には、画像処理部１２でのエッジ抽出や領域抽出が正常に行われなかったものと推測し、それを解決するために、シャープネスやエッジ強調などの画像処理を施す。あるいは、画像全体の色調や濃度が標準状態からずれているような場合には、その差異を補正するために、色調補正、濃度補正、コントラスト補正などの画像処理を施す。その他にも、ノイズ除去、解像度変換など、属性の種別や差異の内容などに応じて、適切な画像処理が施される。
【００８４】
このようにして得られた認識画像は、ワークの原画像の問題点が除去された画像となっている。したがって、この認識画像を用いて再び認識処理を行えば（ステップＳ１１，Ｓ１２）、認識が成功する蓋然性が高い。また、認識画像は原画像に比べＳ／Ｎ比が高くなっていることから、認識精度も向上する。
【００８５】
以上述べた本実施形態の画像認識装置によれば、撮像して得た原画像では認識に失敗する場合であっても、原画像の問題点が是正された認識画像が自動的に生成され、認識画像を用いて認識処理が再実行されるので、認識処理の成功率や精度の向上が図られる。
【００８６】
（第３の実施形態）
本発明の第３の実施形態では、コンテキストデータをティーチングデータの更新処理に利用する。
【００８７】
なお、本実施形態に係る画像認識装置は、第１または第２の実施形態に係るものと同様の構成であるため図示を省略し、以下、同一の符号を用いて説明を行うこととする。
【００８８】
図８は、ティーチングデータ更新処理の流れを示すフローチャートである。同フローチャートのステップＳ２０の認識処理の内容は、図７のフローチャートのステップＳ１０〜Ｓ１７と同じものである。
【００８９】
認識処理が成功した場合、その判定結果がディスプレイに出力される（ステップＳ２０）。ここでユーザは、判定結果が正しいか（意図した通りの結果か）否かを入力することができる。
【００９０】
判定結果が正しくないということは、ティーチングデータが適切ではないということである。そこで、ユーザから判定結果が誤りであるとの入力がなされた場合には（ステップＳ２１）、次に述べるティーチングデータ更新処理を実行する。
【００９１】
まず、コンテキスト化部２０が、ワーク画像から抽出された特徴量を画像処理部１２から受け取り、それらの特徴量からワークコンテキストデータを生成する（ステップＳ２２）。生成されたワークコンテキストデータはティーチングデータ生成部２３に引き渡される。
【００９２】
ティーチングデータ生成部２３は、知識ベース２１に登録されている対象物のコンテキストデータを読み出し、ワークコンテキストデータの各属性について、コンテキストデータの対応する属性と比較し、属性上の差異を調べる（ステップＳ２３）。そして、属性上の差異に基づいて、ワークの判定を正しく行い得る属性（たとえば、差異が顕著に現れている属性、逆に差異がほとんど無い属性など）を１つ以上選び出す。
【００９３】
続いて、ティーチングデータ生成部２３は、認識処理で使用可能な複数の認識ロジックのなかから、ステップＳ２３で選び出された属性に対応する特徴量を用いて認識処理を実行可能な認識ロジックもしくは認識ロジックの組み合わせを探索する（ステップＳ２４）。
【００９４】
該当する認識ロジックが索出された場合には（ステップＳ２５）、ティーチングデータが更新される（ステップＳ２６）。このとき、既存のティーチングデータに今回索出された認識ロジックに関する内容を追加してもよいし、既存のティーチングデータを今回のものに差し替えてもよい。
【００９５】
一方、該当する認識ロジックが索出されなかった場合には、その旨がユーザに通知される（ステップＳ２７）。このとき、「特徴量Ｘ，Ｙ，Ｚに基づいて認識処理を行う認識ロジックを追加してください。」というように、追加すべき認識ロジックの仕様を通知するメッセージをディスプレイに表示するとよい。ユーザが通知された仕様にしたがって新たな認識ロジックを開発し追加することで、正確な認識処理を行うことができるようになる。
【００９６】
以上述べた本実施形態の画像認識装置によれば、正しい判定結果が得られなかった場合に、最適な認識ロジックによる新たなティーチングデータが自動的に生成されるので、手作業によるティーチングデータの追い込みが不要となり、ティーチングに要する時間と労力が低減されるとともに、認識処理の成功率や精度の向上も図られる。
【００９７】
また、適切な認識ロジックが存在しない場合には、追加すべき認識ロジックの仕様が通知されるので、新たに追加すべき認識ロジックを発見することができる。これは、既存の認識ロジックでは認識できない新規の対象物を取り扱うときなどに非常に有効となる。
【００９８】
なお、上記第１〜第３の実施形態は本発明の一具体例を例示したものにすぎない。本発明の範囲は上記実施形態に限られるものではなく、その技術思想の範囲内で種々の変形が可能である。
【００９９】
たとえば、上記実施形態では、工業製品の製品検査を行う検査装置に本発明を適用しているが、検査装置以外にもロボットの視覚装置をはじめとする種々の画像認識装置に本発明を好適に用いることができる。
【０１００】
また、ティーチング処理や画像認識処理に用いる特徴量や属性の種別、コンテキストデータやティーチングデータのフォーマットに関しても、上記実施形態で例示したものに限られず、認識すべき対象物や画像認識装置の構成などに応じて適宜変更可能である。
【０１０１】
【発明の効果】
以上説明したように、本発明によれば、少数の教師画像から簡単に正確なティーチングデータを作成することができる。また、本発明によれば、認識処理の成功率や精度を向上させることができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る画像認識装置の機能構成を示すブロック図である。
【図２】本発明の実施形態におけるティーチングを概念的に表した図である。
【図３】ティーチング処理の流れを示すフローチャートである。
【図４】ティーチング処理におけるデータフローを説明する図である。
【図５】知識ベースに登録されたコンテキストデータの一例を示す図である。
【図６】本発明の第２の実施形態に係る画像認識装置の機能構成を示すブロック図である。
【図７】認識処理の流れを示すフローチャートである。
【図８】ティーチングデータ更新処理の流れを示すフローチャートである。
【図９】従来の画像ティーチングを概念的に表した図である。
【符号の説明】
１  画像認識部
２  ティーチング部
３  テーブル
４  検査物
１０  撮像部
１１  画像記憶部
１２  画像処理部
１３  認識処理部
１４  ティーチングデータ記憶部
１５  認識画像作成部
２０  コンテキスト化部
２１  知識ベース
２２  知識ベース作成部
２３  ティーチングデータ生成部
【図１】
2004362400.tif 000003
【図２】
2004362400.tif 000004
【図３】
2004362400.tif 000005
【図４】
2004362400.tif 000006
【図５】
2004362400.tif 000007
【図６】
2004362400.tif 000008
【図７】
2004362400.tif 000009
【図８】
2004362400.tif 000010
【図９】
2004362400.tif 000011