(57)【要約】【課題】画像上に表された物体が互いに類似するか否かを判定する際の判定精度を向上可能な画像判定用コンピュータプログラムを提供する。【解決手段】画像判定用コンピュータプログラムは、各画像から検出された、物体が写っている複数の領域のうちの第１の領域及び第２の領域のそれぞれから複数の特徴点を抽出し、第１の領域の複数の特徴点のうち、第２の領域の複数の特徴点の何れかと類似し、あるいは、第２の領域の複数の特徴点の何れかとの類似度が高い方から順に少なくとも一つの特徴点を選択し、第１の領域における選択された少なくとも一つの特徴点と第２の領域における類似する特徴点とに基づいて第１の領域と第２の領域間の一致度を求め、一致度に基づいて第１の領域に写っている物体と第２の領域に写っている物体とが互いに類似するか否か判定する、ことをコンピュータに実行させるための命令を含む。【選択図】図２
2019028610.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つの画像から物体が表された複数の領域を検出し、
前記複数の領域のうちの第１の領域及び第２の領域のそれぞれから複数の特徴点を抽出し、
前記第１の領域の前記複数の特徴点のうち、前記第２の領域の前記複数の特徴点の何れかと類似し、あるいは、前記第２の領域の前記複数の特徴点の何れかとの類似度が高い方から順に少なくとも一つの特徴点を選択し、
前記第１の領域における前記選択された少なくとも一つの特徴点と前記第２の領域における前記類似する特徴点とに基づいて前記第１の領域と前記第２の領域間の一致度を求め、
前記一致度に基づいて前記第１の領域に写っている物体と前記第２の領域に写っている物体とが互いに類似するか否か判定する、
ことをコンピュータに実行させるための画像判定用コンピュータプログラム。
【請求項２】
前記複数の領域のうちの前記第１の領域及び前記第２の領域以外の他の領域のそれぞれから複数の特徴点を抽出し、
前記他の領域のそれぞれについて、前記第１の領域における前記選択された少なくとも一つの特徴点のそれぞれに類似する特徴点を特定し、
前記他の領域のそれぞれについて、前記第１の領域における前記選択された少なくとも一つの特徴点と当該他の領域における前記類似する特徴点とに基づいて前記第１の領域と当該他の領域間の一致度を求め、
前記他の領域のそれぞれについて、当該他の領域についての前記一致度に基づいて前記第１の領域に写っている物体と当該他の領域に写っている物体とが互いに類似するか否か判定し、
前記第１の領域について、前記複数の領域のうち、前記第１の領域に写っている物体と互いに類似する物体が写っていると判定された領域の数をカウントし、当該領域の数に基づいて、前記第１の領域に写っている物体が異常であるか否か判定することをさらにコンピュータに実行させる、請求項１に記載の画像判定用コンピュータプログラム。
【請求項３】
前記第１の領域と前記第２の領域間の前記一致度を求めることは、前記第１の領域における前記選択された少なくとも一つの特徴点のそれぞれについて、当該選択された特徴点と前記第２の領域における前記類似する特徴点間の位置ずれ量に相当する、投票平面上の座標に所定の投票値を投票し、前記投票平面を分割した複数のブロックのそれぞれについて、当該ブロック内の座標に投票された前記投票値の合計を算出し、前記投票値の合計のうちの最大値に基づいて前記一致度を算出する、請求項１または２に記載の画像判定用コンピュータプログラム。
【請求項４】
前記類似する特徴点を選択することは、前記第１の領域の前記複数の特徴点のうち、当該第１の領域の他の特徴点の何れとも類似せず、かつ、前記第２の領域の前記複数の特徴点の何れかと類似する特徴点を選択する、請求項１〜３の何れか一項に記載の画像判定用コンピュータプログラム。
【請求項５】
前記複数の領域のうちの前記第１の領域以外の他の領域のそれぞれについて、前記第１の領域全体の特徴を表す特徴量と、当該他の領域全体の特徴量との類似度を算出し、前記類似度に基づいて前記他の領域のうち、前記第１の領域と最も類似する領域を前記第２の領域とすることをさらにコンピュータに実行させる請求項１〜４の何れか一項に記載の画像判定用コンピュータプログラム。
【請求項６】
少なくとも一つの画像から物体が表された複数の領域を検出する領域検出部と、
前記複数の領域のうちの第１の領域及び第２の領域のそれぞれから複数の特徴点を抽出する特徴点抽出部と、
前記第１の領域の前記複数の特徴点のうち、前記第２の領域の前記複数の特徴点の何れかと類似し、あるいは、前記第２の領域の前記複数の特徴点の何れかとの類似度が高い方から順に少なくとも一つの特徴点を選択する特徴点選択部と、
前記第１の領域における前記選択された少なくとも一つの特徴点と前記第２の領域における前記類似する特徴点とに基づいて前記第１の領域と前記第２の領域間の一致度を求め、前記一致度に基づいて前記第１の領域に写っている物体と前記第２の領域に写っている物体とが互いに類似するか否か判定する照合部と、
を有する画像判定装置。
【請求項７】
少なくとも一つの画像から物体が表された複数の領域を検出し、
前記複数の領域のうちの第１の領域及び第２の領域のそれぞれから複数の特徴点を抽出し、
前記第１の領域の前記複数の特徴点のうち、前記第２の領域の前記複数の特徴点の何れかと類似し、あるいは、前記第２の領域の前記複数の特徴点の何れかとの類似度が高い方から順に少なくとも一つの特徴点を選択し、
前記第１の領域における前記選択された少なくとも一つの特徴点と前記第２の領域における前記類似する特徴点とに基づいて前記第１の領域と前記第２の領域間の一致度を求め、
前記一致度に基づいて前記第１の領域に写っている物体と前記第２の領域に写っている物体とが互いに類似するか否か判定する、
ことを含む画像判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、画像上に表された物体同士の類否を判定する画像判定用コンピュータプログラム、画像判定装置及び画像判定方法に関する。
【背景技術】
【０００２】
製造物または原材料などの各種物体の良否を検査するために、物体を撮影して得られる画像を利用する技術が用いられている。このような技術では、例えば、参照画像上に表された参照物体と、検査用に得られた画像に表された、検査対象となる物体とが照合される。そこで、参照物体が表された参照画像と、検査対象となる物体が表された検査画像間での照合処理において、参照画像上の複数の特徴点のうち、互いに対する類似度が小さい方から所定数の特徴点を利用することが提案されている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１１８６４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
互いに対する類似度が小さい特徴点を利用することで、参照画像と検査画像との間で本来は異なる特徴点同士が誤って対応付けられる可能性が低減される。しかし、参照物体と、検査対象となる物体とが互いに異なる物体であるにもかかわらず、検査対象となる物体が有する特徴点が、参照画像上で互いに対する類似度が小さい特徴点と類似していることがある。このような場合、検査対象となる物体が、誤って参照物体と類似すると判定されることがある。
【０００５】
一つの側面では、本発明は、画像上に表された物体が互いに類似するか否かを判定する際の判定精度を向上可能な画像判定用コンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの実施形態によれば、画像判定用コンピュータプログラムが提供される。この画像判定用コンピュータプログラムは、少なくとも一つの画像のそれぞれから物体が表された複数の領域を検出し、複数の領域のうちの第１の領域及び第２の領域のそれぞれから複数の特徴点を抽出し、第１の領域の複数の特徴点のうち、第２の領域の複数の特徴点の何れかと類似し、あるいは、第２の領域の複数の特徴点の何れかとの類似度が高い方から順に少なくとも一つの特徴点を選択し、第１の領域における選択された少なくとも一つの特徴点と第２の領域における類似する特徴点とに基づいて第１の領域と第２の領域間の一致度を求め、一致度に基づいて第１の領域に写っている物体と第２の領域に写っている物体とが互いに類似するか否か判定する、ことをコンピュータに実行させるための命令を含む。
【発明の効果】
【０００７】
一つの側面によれば、画像上に表された物体が互いに類似するか否かを判定する際の判定精度を向上することができる。
【図面の簡単な説明】
【０００８】
【図１】一つの実施形態による、画像判定装置のハードウェア構成図である。
【図２】画像判定処理に関するプロセッサの機能ブロック図である。
【図３】特徴点選択の概要説明図である。
【図４】投票処理の概要説明図である。
【図５】異常物体判定の概要説明図である。
【図６】画像判定処理の動作フローチャートである。
【図７】画像判定処理の動作フローチャートである。
【発明を実施するための形態】
【０００９】
以下、図を参照しつつ、画像判定装置、及び、その画像判定装置で利用される画像判定方法及び画像判定用コンピュータプログラムについて説明する。この画像判定装置は、例えば、複数の物体が写った１枚以上の画像において、その複数の物体の中から異常な物体を検出するために用いられる。その際、この画像判定装置は、各画像から物体を検出し、検出された物体が表された被写体領域ごとに、複数の特徴点を抽出する。そしてこの画像判定装置は、着目する二つの被写体領域のうちの一方から抽出された特徴点のうち、他方の被写体領域から抽出された特徴点の何れかと類似する特徴点を、その二つの被写体領域間の照合処理に利用する。二つの被写体領域のそれぞれに写っている物体が同じ種類のものであり、かつ、ともに正常であれば、互いに類似する特徴点の組は、各被写体領域に写っている物体に共通する特徴点である可能性が高い。そのため、被写体領域間で互いに類似する特徴点の組を照合処理に利用することで、この画像判定装置は、画像上に表された物体同士が互いに類似するか否かを判定する際の判定精度を向上できる。
【００１０】
なお、本実施形態では、類否判定の対象となる物体は、例えば、何らかの製造物の完成品または部品、原材料、農産物、あるいは、海産物などであり、類否判定の対象となる物体の種類は予め既知であるとする。また、類否判定の結果、正常と判定される物体（以下、正常物体と呼ぶ）は、外観上の異常を有さないと想定される。一方、類否判定の結果、異常と判定される物体（以下、異常物体と呼ぶ）は、例えば、何らかの傷といった外観的な欠陥を有したり、形状不良を有したり、あるいは、類否判定の対象となる物体と異なる物体であると想定される。例えば、類否判定の対象となる物体が特定の種類の果物である場合、異常物体は、表面に何らかの傷を有するその特定の種類の果物または異なる種類の果物である。また、本実施形態では、正常物体と異常物体とで異なる特徴は、予め特定されなくてもよい。
【００１１】
図１は、一つの実施形態による、画像判定装置のハードウェア構成図である。図１に示されるように、画像判定装置１は、カメラ２と、通信インターフェース３と、ユーザインターフェース４と、メモリ５と、記憶媒体アクセス装置６と、プロセッサ７とを有する。
【００１２】
カメラ２は、撮像部の一例であり、例えば、検出対象となる物体が搬送される搬送路を含む所定の撮影範囲を撮影し、その撮影範囲が写った画像を生成する。そのために、カメラ２は、CCDあるいはC-MOSなど、可視光に感度を有する固体撮像素子のアレイで構成された２次元検出器と、その２次元検出器上に撮影範囲の像を結像する結像光学系とを有する。カメラ２は、一定の撮影周期（例えば1/30秒）ごとに画像を生成する。そしてカメラ２は、画像を生成する度に、その画像を、通信ネットワークを介して、通信インターフェース３へ出力する。
本実施形態では、カメラ２により生成される画像は、各画素の値が輝度値で表されるモノクロ画像である。しかし、カメラ２により生成される画像は、各画素の値がRGB色空間または他の色空間（例えば、HLS色空間あるいはYPbPr色空間）の値で表されるカラー画像であってもよい。
【００１３】
通信インターフェース３は、イーサネット（登録商標）などの通信規格に従った通信ネットワークに接続するための通信インターフェース及びその制御回路を有する。通信インターフェース３は、通信ネットワークを介してカメラ２から画像を受け取り、その受け取った画像をプロセッサ７にわたす。また通信インターフェース３は、プロセッサ７から受け取った、異常物体が検出されたことを表す異常検出情報を、通信ネットワークを介して他の機器（図示せず）へ出力してもよい。
【００１４】
ユーザインターフェース４は、例えば、キーボードとマウスなどの入力装置と、液晶ディスプレイといった表示装置とを有する。あるいは、ユーザインターフェース４は、タッチパネルといった、入力装置と表示装置とが一体化された装置を有していてもよい。そしてユーザインターフェース４は、例えば、プロセッサ７から受け取った異常検出情報を表示装置に表示する。また、ユーザインターフェース４は、表示装置に表示された異常検出情報を確認したユーザの操作に応じた操作信号などをプロセッサ７へ出力する。
【００１５】
メモリ５は、記憶部の一例であり、例えば、読み書き可能な半導体メモリと読み出し専用の半導体メモリを有する。そしてメモリ５は、例えば、プロセッサ７で実行される画像判定処理を実行するための各種のデータ及び異常検出情報などを記憶する。さらに、メモリ５は、カメラ２から取得した画像を一定期間記憶してもよい。
【００１６】
記憶媒体アクセス装置６は、記憶部の他の一例であり、例えば、磁気ディスク、半導体メモリカード及び光記憶媒体といった記憶媒体８にアクセスする装置である。記憶媒体アクセス装置６は、例えば、記憶媒体８に記憶された、プロセッサ７上で実行される画像判定処理用のコンピュータプログラムを読み込み、プロセッサ７に渡す。あるいは、記憶媒体アクセス装置６は、カメラ２により生成された画像、あるいは、プロセッサ７から受け取った画像判定結果などを記憶媒体８に書き込んでもよい。
【００１７】
プロセッサ７は、制御部の一例であり、例えば、Central Processing Unit(CPU)及びその周辺回路を有する。さらにプロセッサ７は、数値演算用のプロセッサまたはGraphics Processing Unit(GPU)を有していてもよい。そしてプロセッサ７は、画像判定装置１全体を制御する。また、プロセッサ７は、通信インターフェース３を介してカメラ２から画像を受け取る度に、その画像をメモリ５に保存する。そしてプロセッサ７は、例えば、保存した画像の枚数が所定数（例えば、２〜１０）に達すると、保存した画像のそれぞれに対して画像判定処理を実行する。あるいは、プロセッサ７は、カメラ２から新たな画像を受け取る度に、最新の画像と、それ以前にメモリ５に保存されている画像との間で画像判定処理を実行してもよい。あるいはまた、プロセッサ７は、カメラ２から受け取った個々の画像ごとに、画像判定処理を実行してもよい。なお、以下の説明では、プロセッサ７は、所定数の複数の画像に対して画像判定処理を実行するものとする。
【００１８】
図２は、画像判定処理に関するプロセッサ７の機能ブロック図である。図２に示されるように、プロセッサ７は、領域検出部１１と、類似領域特定部１２と、特徴点抽出部１３と、特徴点選択部１４と、照合部１５と、異常物体判定部１６とを有する。
【００１９】
プロセッサ７が有するこれらの各部は、例えば、プロセッサ７が有するプロセッサ上で実行されるコンピュータプログラムによって実現される機能モジュールである。あるいは、これらの各部は、プロセッサ７の一部に実装される専用の演算回路として実装されてもよい。
【００２０】
領域検出部１１は、画像判定処理の対象となる複数の画像のそれぞれから、類否判定の対象となる物体（以下、被写体と呼ぶこともある）が表された領域である被写体領域を検出する。なお、領域検出部１１は、複数の画像のそれぞれに対して同一の処理を行えばよいので、以下では、一つの画像に対する処理について説明する。
【００２１】
領域検出部１１は、例えば、画像に対して背景差分処理を行うことにより、被写体領域を検出する。この場合、領域検出部１１は、画像と背景画像との各対応画素間の輝度値の差の絶対値を算出し、輝度値の差の絶対値が所定の閾値以上となる画素を抽出する。そして領域検出部１１は、抽出した画素の集合を被写体領域とする。なお、背景画像は、例えば、カメラ２の撮影範囲内に被写体が存在しないときにカメラ２がその撮影範囲を撮影することにより生成され、メモリ５に予め保存される。
【００２２】
なお、領域検出部１１は、抽出した画素の集合に対してラベリング処理を行って、互いに連結される画素同士を一つの被写体領域としてもよい。これにより、領域検出部１１は、一つの画像に複数の被写体が写っている場合でも、被写体ごとに、その被写体が表される被写体領域を検出できる。また、領域検出部１１は、ラベリング処理の前に、モルフォロジーの膨張収縮演算を実行して得られる領域を被写体領域としてもよい。これにより、領域検出部１１は、被写体の一部が写っているにもかかわらず、孤立した画素を被写体領域に含めることができる。
【００２３】
また、領域検出部１１は、被写体検出用の識別器を用いて、画像から被写体領域を検出してもよい。この場合、領域検出部１１は、画像上にウィンドウを設定し、ウィンドウ内の各画素の値から、識別器に入力する特徴（例えば、Haar-like特徴あるいはHOG特徴）を算出して、その特徴を識別器に入力することで、ウィンドウ内に被写体が写っているか否か判定する。領域検出部１１は、ウィンドウの位置を変更しながら上記の処理を繰り返すことで、画像上の何れの位置に写っている被写体についても、被写体領域を検出できる。
【００２４】
なお、識別器として、領域検出部１１は、例えば、adaBoost識別器、サポートベクトルマシンあるいは多層パーセプトロンなどを用いることができる。
【００２５】
領域検出部１１は、面積が所定の面積閾値未満となる被写体領域について、誤検出されたものとして削除してもよい。
【００２６】
検出した被写体領域は、例えば、被写体領域に含まれる各画素の値と被写体領域外の各画素の値とが異なる２値画像で表される。領域検出部１１は、各画像について、検出した被写体領域を類似領域特定部１２へ通知する。
【００２７】
類似領域特定部１２は、複数の画像のそれぞれから検出された被写体領域ごとに、その被写体領域と最も類似する他の被写体領域を特定する。互いに最も類似する二つの被写体領域のそれぞれには、正常物体が表されている可能性が高い。そのため、このように、各被写体領域について最も類似する他の被写体領域を特定することで、詳細は後述するように、各被写体領域に表された物体間で共通する特徴点を適切に選択できる可能性が高くなる。なお、類似領域特定部１２は、各被写体領域に対して同一の処理を行えばよいので、以下では、一つの被写体領域に対する処理について説明する。
【００２８】
類似領域特定部１２は、着目する被写体領域と、それ以外の他の被写体領域のそれぞれとの間の類似度を、被写体領域全体の特徴を表す特徴量に基づいて算出する。あるいは、類似領域特定部１２は、他の被写体領域のうち、着目する被写体領域との面積差が所定の面積閾値以下となる被写体領域についてのみ、類似度を算出してもよい。
【００２９】
類似領域特定部１２は、例えば、各被写体領域に対して、Angular Radial Transform(ART)またはWavelet変換を実行して得られる成分の分布をその被写体領域の特徴量とする。あるいは、類似領域特定部１２は、被写体領域に含まれる各画素の輝度値に基づいて輝度値のヒストグラムを生成し、そのヒストグラムを被写体領域の特徴量としてもよい。その際、類似領域特定部１２は、輝度値の範囲（例えば、0〜255）を所定幅（例えば、8〜32）を持つビンごとに分割し、ビンごとに度数をカウントしてもよい。
【００３０】
類似領域特定部１２は、他の被写体領域のそれぞれについて、着目する被写体領域の特徴量と、他の被写体領域の特徴量間の対応成分または対応ビンごとの差dの二乗和Σd2にオフセット値αを加算した値の逆数(1/(Σd2+α))を類似度として算出する。オフセット値αは、例えば1とすることができる。そして類似領域特定部１２は、他の被写体領域のうち、類似度が最大となる被写体領域を、着目する被写体領域に最も類似する被写体領域とする。
【００３１】
類似領域特定部１２は、被写体領域ごとに、その被写体領域に最も類似する他の被写体領域を特徴点選択部１４へ通知する。
【００３２】
特徴点抽出部１３は、被写体領域ごとに、その被写体領域から複数の特徴点を抽出し、抽出した特徴点ごとに、その特徴点の特徴量を求める。
【００３３】
特徴点抽出部１３は、例えば、各被写体領域に対して、HarrisフィルタあるいはFASTアルゴリズムを適用して、被写体領域内に含まれるコーナーのそれぞれを特徴点として抽出する。あるいは、特徴点抽出部１３は、着目する特徴点を表すテンプレートと被写体領域間の相対的な位置を変えながら、テンプレートマッチングを実行してもよい。そして特徴点抽出部１３は、テンプレートとの正規化相互相関値が所定の閾値以上となる被写体領域上の位置を特徴点として抽出してもよい。あるいはまた、特徴点抽出部１３は、各被写体領域に対して、他の様々な特徴点検出フィルタの何れかを適用することで、各被写体領域から特徴点を抽出してもよい。あるいはまた、特徴点抽出部１３は、各被写体領域を、矩形状のブロックごとに分割し、各ブロックの中心をそれぞれ特徴点としてもよい。
【００３４】
特徴点抽出部１３は、抽出された特徴点のそれぞれについて、特徴量を求める。例えば、特徴点抽出部１３は、各特徴点について、特徴量として、Binary Robust Independent Elementary Features (BRIEF)を算出する。あるいは、特徴点抽出部１３は、各特徴点について、その特徴点を中心とする、画像上の所定サイズのブロックそのものをその特徴点の特徴量としてもよい。あるいはまた、特徴点抽出部１３は、各特徴点について、その特徴点を含むブロックから算出されるHOGといった、ブロックの画素値の分布を表す特徴量を、その特徴点の特徴量としてもよい。
【００３５】
特徴点抽出部１３は、被写体領域ごとに、抽出された特徴点及び特徴量を特徴点選択部１４へ通知する。
【００３６】
特徴点選択部１４は、被写体領域ごとに、その被写体領域と、最も類似する他の被写体領域との間で、その被写体領域から抽出された各特徴点のうち、最も類似する他の被写体領域の何れかの特徴点と類似する特徴点を少なくとも一つ選択する。さらに、特徴点選択部１４は、選択した特徴点と類似する、他のそれぞれの被写体領域の特徴点を特定する。なお、以下では、説明の都合上、着目する被写体領域を一方の被写体領域と呼び、着目する被写体領域と最も類似する被写体領域を他方の被写体領域と呼ぶことがある。
【００３７】
特徴点選択部１４は、例えば、一方の被写体領域に含まれる各特徴点のうちの着目する特徴点の特徴量と、他方の被写体領域に含まれる各特徴点の特徴量との間で類似度を算出する。特徴点の特徴量がBRIEFである場合、BRIEFはビット列で表れるため、比較される二つの特徴点間の類似度は、その二つの特徴点のBRIEF間のハミング距離として算出される。そしてハミング距離が小さいほど、類似度は高くなる。また、特徴点の特徴量がその特徴点を含むブロックから算出されるHOGである場合、二つの特徴点間の類似度は、例えば、その二つの特徴点のHOG間のユークリッド距離あるいはマンハッタン距離として算出される。この場合も、ユークリッド距離あるいはマンハッタン距離が小さいほど、類似度は高くなる。
【００３８】
また、特徴点の特徴量がその特徴点を含む所定サイズのブロックそのものである場合、比較される二つの特徴点間の類似度は、例えば、その二つの特徴点のブロック間の正規化相互相関値として算出される。この場合、正規化相互相関値が高いほど、類似度は高くなる。
【００３９】
類似度が、ハミング距離、ユークリッド距離あるいはマンハッタン距離といった、値が小さくなるほど類似度が高くなる距離値として算出されている場合、特徴点選択部１４は、一方の被写体領域の着目する特徴点について、距離値の最小値を求める。特徴点選択部１４は、距離値の最小値が所定の閾値以下である場合、着目する特徴点を、他方の被写体領域の何れかの特徴点と類似する特徴点として選択する。そして特徴点選択部１４は、着目する特徴点に対して距離値が最小となる、他方の被写体領域の特徴点を、着目する特徴点に類似する特徴点とする。なお、類似度がBRIEFとして算出される場合、所定の閾値は、例えば、1〜3に設定される。
【００４０】
同様に、類似度が、値が大きくなるほど類似度が高くなる正規化相互相関値として算出されている場合、特徴点選択部１４は、一方の被写体領域の着目する特徴点について、正規化相互相関値の最大値を求める。特徴点選択部１４は、正規化相互相関値の最大値が所定の閾値以上である場合、着目する特徴点を、他方の被写体領域の何れかの特徴点と類似する特徴点として選択する。そして特徴点選択部１４は、着目する特徴点に対して正規化相互相関値が最大となる、他方の被写体領域の特徴点を、着目する特徴点に類似する特徴点とする。なお、類似度が正規化相互相関値として算出される場合、所定の閾値は、例えば、0.7〜0.9に設定される。
これにより、特徴点選択部１４は、二つの被写体領域のそれぞれに写っている物体間で共通する可能性が高い特徴点を選択できる。
【００４１】
なお、変形例によれば、特徴点選択部１４は、着目する特徴点が、同じ被写体領域内の他の何れの特徴点とも類似しておらず、かつ、他の被写体領域内の何れかの特徴点と類似する場合、着目する特徴点を選択してもよい。
【００４２】
この場合、特徴点選択部１４は、一方の被写体領域における着目する特徴点について、同じ被写体領域内の他の各特徴点との間で、上記のように類似度を算出する。特徴点選択部１４は、類似度が距離値として算出されている場合、同じ被写体領域内の他の各特徴点について算出された距離値のうちの最小値を求める。そして特徴点選択部１４は、距離値の最小値が第２の閾値以上である場合、着目する特徴点は、同じ被写体領域内の他の何れの特徴点とも類似しないと判定する。なお、類似度がBRIEFとして算出される場合、第２の閾値は、所定の閾値よりも大きい値、例えば、5〜7に設定される。
【００４３】
また、類似度が正規化相互相関値として算出されている場合、特徴点選択部１４は、同じ被写体領域内の他の各特徴点について算出された正規化相互相関値のうちの最大値を求める。そして特徴点選択部１４は、正規化相互相関値の最大値が第２の閾値以下である場合、着目する特徴点は、同じ被写体領域内の他の何れの特徴点とも類似しないと判定する。なお、類似度が正規化相互相関値として算出される場合、第２の閾値は、所定の閾値よりも小さい値、例えば、0.3〜0.5に設定される。
これにより、特徴点選択部１４は、二つの被写体領域のそれぞれに写っている物体間で共通する可能性が高く、かつ、二つの被写体領域間で誤対応を生じ難い特徴点を選択できる。
【００４４】
特徴点選択部１４は、被写体領域ごとに、選択された各特徴点及び他方の被写体領域の類似する特徴点をメモリ５に保存する。
【００４５】
なお、特徴点選択部１４は、被写体領域ごとに、最も類似する他の被写体領域との間で上記の処理を実行して特徴点を選択すればよい。そして被写体領域ごとに、最も類似する他の被写体領域以外の他の被写体領域に対しては、既に選択された特徴点を用いて照合が行われればよい。そのため、特徴点選択部１４は、着目する被写体領域と最も類似する他の被写体領域以外の他の被写体領域のそれぞれについて、着目する被写体領域について選択された特徴点ごとに、最も類似する特徴点を特定すればよい。
【００４６】
図３は、特徴点選択の概要説明図である。図３に示される例では、画像３００上の被写体領域３１０と、画像３０１上の被写体領域３１１との間で特徴点が選択される。この例では、被写体領域３１０から３個の特徴点３２１〜３２３が抽出されており、一方、被写体領域３１１から３個の特徴点３３１〜３３３が抽出されている。被写体領域３１０の３個の特徴点３２１〜３２３のうち、特徴点３２１は、被写体領域３１１の特徴点３３１と類似している。同様に、特徴点３２２は、被写体領域３１１の特徴点３３２と類似している。一方、特徴点３２３は、被写体領域３１１の何れの特徴点とも類似していない。したがって、被写体領域３１０について、特徴点３２１と特徴点３２２が、照合に利用する特徴点として選択される。また、特徴点３２１に類似する被写体領域３１１の特徴点として、特徴点３３１が特定され、特徴点３２２に類似する被写体領域３１１の特徴点として、特徴点３３２が特定される。
【００４７】
照合部１５は、検出された複数の被写体領域のうちの二つを含む組ごとに、その二つの被写体領域間で選択された特徴点と類似する特徴点との組に基づいてその二つの被写体領域間の一致度合を表す一致度を求める。そして照合部１５は、一致度に基づいて、その二つの被写体領域に写っている物体が互いに類似するか否か判定する。なお、照合部１５は、照合する二つの被写体領域を含む組ごとに同じ処理を実行すればよいので、以下では、一つの被写体領域の組についての処理を説明する。
【００４８】
本実施形態では、照合部１５は、被写体領域の組に含まれる一方の被写体領域について選択された特徴点ごとに、その特徴点と他方の被写体領域の類似する特徴点間の位置ずれ量に相当する投票平面上の座標に所定の投票値を投票する。例えば、照合部１５は、選択された特徴点と類似する特徴点の組ごとに、次式に従って算出される、投票平面上の座標(xv,yv)に所定の投票値（例えば、１）を投票する。
【数１】
2019028610.tif 000003
ここで、(xr,yr)は、一方の被写体領域における選択された特徴点の水平座標及び垂直座標である。(xi,yi)は、他方の被写体領域における、類似する特徴点の水平座標及び垂直座標である。そして(chr,cvr)は、一方の被写体領域の中心の水平座標及び垂直座標であり、例えば、一方の被写体領域の外接矩形の水平方向の中点及び垂直方向の中点として算出される。
【００４９】
一方の被写体領域に写っている物体と、他方の被写体領域に写っている物体とが互いに類似する物体であり、かつ、一方の被写体領域の選択された特徴点と、他方の被写体領域の類似する特徴点とが、二つの物体間で共通する特徴点であるとする。この場合、特徴点の組ごとに算出される座標(xv,yv)は略同一となる。しかし、一方の被写体領域に写っている物体と、他方の被写体領域に写っている物体とが類似しない場合、特徴点の組ごとに算出される座標(xv,yv)は互いに異なる座標値となる可能性が高い。同様に、一方の被写体領域の選択された特徴点と、他方の被写体領域の類似する特徴点とが、二つの物体間で共通する特徴点でなければ、特徴点の組ごとに算出される座標(xv,yv)は互いに異なる座標値となる可能性が高い。
【００５０】
そこで、照合部１５は、投票平面を所定サイズ（例えば、10画素×10画素）を持つブロックごとに分割する。そして照合部１５は、ブロックごとに、そのブロック内に含まれる座標に投票された投票値の合計を算出する。照合部１５は、ブロックごとに、そのブロックの投票値の合計を特徴点の組の総数で除することで得られる値を、そのブロックの投票スコアとして算出する。そして照合部１５は、投票スコアの最大値を、一方の被写体領域に写った物体と他方の被写体領域に写った物体の一致度とする。
【００５１】
図４は、投票処理の概要説明図である。図４に示される例では、被写体領域４１０と被写体領域４１１とが照合される。そして、被写体領域４１０から抽出され、かつ、照合に利用される複数の特徴点のうち、特徴点４２１は、被写体領域４１１の特徴点４３１と類似し、特徴点４２２は、被写体領域４１１の特徴点４３２と類似する。そして特徴点４３１と特徴点４２１間の位置ずれ量が(Δx1,Δy1)であるため、（１）式に従って、投票平面４４０の座標(Δx1+chr,Δy1+cvr)に投票される。同様に、特徴点４３２と特徴点４２２間の位置ずれ量が(Δx2,Δy2)であるため、（１）式に従って、投票平面４４０の座標(Δx2+chr,Δy2+cvr)に投票される。他の特徴点の組についても同様に投票される。なお、投票平面４４０において、各点４４１は、投票された座標を表す。投票の結果、投票平面４４０を分割した複数のブロックのうち、ブロック４５１の投票スコアが最大となるため、ブロック４５１の投票スコアが被写体領域４１０と被写体領域４１１間の一致度として算出される。
【００５２】
変形例によれば、照合部１５は、選択された特徴点と類似する特徴点との組ごとに、それら特徴点間の位置ずれ量そのものを表す投票平面上の座標に所定の投票値を投票してもよい。この場合も、照合部１５は、上記と同様に、ブロックごとの投票スコアのうちの最大値を一致度として算出すればよい。
【００５３】
また、所定の投票値は、選択された特徴点と類似する特徴点間の類似度が高いほど大きな値となるように設定されてもよい。例えば、類似度が正規化相互相関値として算出されている場合、所定の投票値は、その正規化相互相関値に設定されてもよい。また、類似度がハミング距離またはユークリッド距離等の距離値として算出されている場合には、所定の投票値は、その距離値に１を加えた値の逆数に設定されてもよい。これにより、互いに類似する度合いが高い特徴点の組ほど投票値が大きくなるので、照合部１５は、より適切に一致度を算出できる。
【００５４】
照合部１５は、一致度を、スコア閾値と比較する。そして照合部１５は、一致度がスコア閾値以上であれば、一方の被写体領域に写っている物体と、他方の被写体領域に写っている物体とが互いに類似する物体であると判定する。一方、一致度がスコア閾値未満であれば、照合部１５は、一方の被写体領域に写っている物体と、他方の被写体領域に写っている物体とは互いに類似していないと判定する。
【００５５】
照合部１５は、被写体領域の組ごとに、互いに類似するか否かの判定結果を異常物体判定部１６へ通知する。
【００５６】
異常物体判定部１６は、被写体領域の組ごとに、互いに類似するか否かの判定結果に基づいて、各被写体領域に写っている物体が異常物体か否かを判定する。
【００５７】
図５は、異常物体判定の概要説明図である。上記のように、本実施形態では、類否判定の対象となる物体のうちの多数は正常物体であり、異常物体は少ないと想定される。したがって、着目する被写体領域に写っている物体が正常物体であれば、着目する被写体領域について、互いに類似すると判定された他の被写体領域の数は相対的に多くなる。逆に、着目する被写体領域に写っている物体が異常物体であれば、着目する被写体領域について、互いに類似すると判定された他の被写体領域の数は相対的に少なくなる。例えば、図５に示されるように、被写体領域５０１〜５０５のうち、被写体領域５０１〜５０４のそれぞれに写っている物体は、互いに類似していると判定されている。一方、被写体領域５０５に写っている物体は、他の被写体領域に写っている物体と類似していないと判定されている。この場合、被写体領域５０１〜５０４のそれぞれに写っている物体は、正常物体であると判定され、一方、被写体領域５０５に写っている物体は、異常物体であると判定される。
【００５８】
そこで、異常物体判定部１６は、被写体領域ごとに、互いに類似すると判定された他の被写体領域の数をカウントする。そして異常物体判定部１６は、互いに類似すると判定された他の被写体領域の数が所定のカウント閾値以下であれば、その被写体領域に写っている物体は異常物体であると判定する。
【００５９】
異常物体判定部１６は、異常物体が検出されたことを表す異常検出情報をユーザインターフェース４に表示する。異常検出情報は、例えば、異常物体が写っていると判定された被写体領域を含む画像とその被写体領域を囲む枠線とが合成された合成画像とすることができる。
【００６０】
図６及び図７は、プロセッサ７により実行される、画像判定処理の動作フローチャートである。プロセッサ７は、画像ごとに、下記の動作フローチャートに従って画像判定処理を実行すればよい。
【００６１】
領域検出部１１は、画像判定処理の対象となる複数の画像のそれぞれから、画像上で類否判定の対象となる被写体が表されている複数の被写体領域を検出する（ステップＳ１０１）。特徴点抽出部１３は、被写体領域ごとに、その被写体領域から複数の特徴点を抽出し、抽出した特徴点ごとに、その特徴点の特徴量を求める（ステップＳ１０２）。
【００６２】
プロセッサ７は、検出された複数の被写体のうち、着目する被写体領域を選択する（ステップＳ１０３）。そして類似領域特定部１２は、着目する被写体領域と最も類似する他の被写体領域を特定する（ステップＳ１０４）。
【００６３】
特徴点選択部１４は、各特徴点の特徴量に基づいて、着目する被写体領域から抽出された各特徴点のうち、最も類似する他の体領域の何れかの特徴点と類似する特徴点を選択する（ステップＳ１０５）。
【００６４】
その後、図７に示されるように、プロセッサ７は、検出された被写体領域のなかから、着目する被写体領域以外の他の被写体領域を選択する（ステップＳ１０６）。そして特徴点選択部１４は、各特徴点の特徴量に基づいて、着目する被写体領域について選択した特徴点のそれぞれについて、他の被写体領域の類似する特徴点を特定する（ステップＳ１０７）。なお、着目する被写体領域と最も類似する他の被写体領域については、ステップＳ１０５にて着目する被写体領域について選択された特徴点と類似する特徴点が求められているので、ステップＳ１０７の処理は省略されてもよい。
【００６５】
照合部１５は、着目する被写体領域について選択された特徴点と他の被写体領域における類似する特徴点の組ごとに、特徴点間の位置ずれ量に応じた投票平面上の位置に所定の投票値を投票する（ステップＳ１０８）。そして照合部１５は、投票平面を分割したブロックごとに、投票値の合計に基づいて投票スコアを算出し、投票スコアの最大値を、選択した組に含まれる二つの被写体領域間の一致度として算出する（ステップＳ１０９）。そして照合部１５は、一致度がスコア閾値以上か否か判定する（ステップＳ１１０）。一致度がスコア閾値以上であれば（ステップＳ１１０−Ｙｅｓ）、着目する被写体領域の物体と、他の被写体領域の物体とは互いに類似している。そこで照合部１５は、互いに類似する他の被写体領域の数を１インクリメントする（ステップＳ１１１）。一方、一致度がスコア閾値未満であれば（ステップＳ１１０−Ｎｏ）、着目する被写体領域の物体と、他の被写体領域の物体とは類似していない。そのため、照合部１５は、互いに類似する他の被写体領域の数を変更しない。
【００６６】
ステップＳ１１１の後、あるいは、ステップＳ１１０にて一致度がスコア閾値未満である場合（ステップＳ１１０−Ｎｏ）、プロセッサ７は、着目する被写体領域以外で未選択の被写体領域が残っているか否か判定する（ステップＳ１１２）。未選択の被写体領域が残っていれば（ステップＳ１１２−Ｙｅｓ）、プロセッサ７は、ステップＳ１０６以降の処理を繰り返す。
【００６７】
一方、未選択の被写体領域の組が無ければ（ステップＳ１１２−Ｎｏ）、異常物体判定部１６は、着目する被写体領域について、互いに類似すると判定された他の被写体領域の数が所定のカウント閾値以下か否か判定する（ステップＳ１１３）。互いに類似すると判定された他の被写体領域の数が所定のカウント閾値以下であれば（ステップＳ１１３−Ｙｅｓ）、異常物体判定部１６は、着目する被写体領域に異常物体が写っていると判定する。そこで異常物体判定部１６は、着目する被写体領域について、異常検出情報を生成する（ステップＳ１１４）。一方、互いに類似すると判定された他の被写体領域の数が所定のカウント閾値よりも多ければ（ステップＳ１１３−Ｎｏ）、異常物体判定部１６は、着目する被写体領域に正常物体が写っていると判定し、異常検出情報を生成しない。
【００６８】
ステップＳ１１４の後、あるいは、ステップＳ１１３にて互いに類似すると判定された他の被写体領域の数が所定のカウント閾値よりも多い場合（ステップＳ１１３−Ｎｏ）、プロセッサ７は、未着目の被写体領域が残っているか否か判定する（ステップＳ１１５）。
【００６９】
未着目の被写体領域が残っていれば（ステップＳ１１５−Ｙｅｓ）、プロセッサ７は、ステップＳ１０３以降の処理を繰り返す。一方、未着目の被写体領域が残っていなければ（ステップＳ１１５−Ｎｏ）、異常物体判定部１６は、それまでに生成された異常検出情報を出力する（ステップＳ１１６）。例えば、異常物体判定部１６は、異常検出情報をユーザインターフェース４に表示する。その後、プロセッサ７は、画像判定処理を終了する。
【００７０】
なお、異常物体判定部１６は、着目する被写体領域について、互いに類似すると判定された他の被写体領域の数が所定のカウント閾値よりも多くなった時点で、未選択の他の被写体領域が残っていても、着目する被写体領域に正常物体が写っていると判定してもよい。そして未選択の他の被写体領域について、ステップＳ１０６〜Ｓ１１１の処理は省略されてもよい。これにより、演算量が削減される。
【００７１】
以上に説明してきたように、この画像判定装置は、着目する被写体領域から抽出された特徴点のうち、他の被写体領域から抽出された特徴点と類似する特徴点を、被写体領域間の照合に利用する。そのため、この画像判定装置は、着目する被写体領域に写っている物体と他の被写体領域に写っている物体間で共通する特徴点を照合に利用できる可能性を高めることができるので、画像上に表された物体同士の類否の判定精度を向上できる。さらに、この画像判定装置は、被写体領域間の照合に利用する特徴点の数を減らすことができるので、被写体領域間の照合に要する演算量を削減できる。
【００７２】
変形例によれば、特徴点選択部１４は、着目する被写体領域の各特徴点のうち、着目する被写体領域と最も類似する被写体領域の何れかの特徴点に対する類似度が高い方から順に所定数の特徴点を選択してもよい。所定数は、例えば、１以上、かつ、着目する被写体領域に含まれる特徴点の総数の半分以下に設定される。
【００７３】
他の変形例によれば、類似領域特定部１２は省略されてもよい。この場合、特徴点選択部１４は、照合対象となる二つの被写体領域の組ごとに、上記の実施形態と同様の処理を行って、照合に利用する特徴点を選択すればよい。この場合も、画像判定装置は、二つの被写体領域のそれぞれに写っている物体間で共通する特徴点を照合に利用できる可能性を高めることができるので、画像上に表された物体が互いに類似するか否かを判定する際の判定精度を向上できる。
【００７４】
また他の変形例によれば、類似領域特定部１２の処理は、二つの被写体領域に写っている物体が互いに類似するか否かを簡易的に判定するために用いられてもよい。この場合には、例えば、類似領域特定部１２は、着目する二つの被写体領域に対して上記の実施形態と同様の処理を行って、その二つの被写体領域間の類似度を算出する。そして類似領域特定部１２は、算出した類似度が所定の閾値未満となる場合に、着目する二つの被写体領域に写っている物体は互いに類似しないと判定してもよい。そして互いに類似しないと判定され被写体領域の組については、特徴点抽出部１３、特徴点選択部１４及び照合部１５の処理は省略されてもよい。
【００７５】
この変形例によれば、簡易的に互いに類似しないと判定された被写体領域の組については、特徴点抽出部１３、特徴点選択部１４及び照合部１５の処理が省略できるので、被写体領域間の照合に要する演算量を削減できる。
【００７６】
さらに他の変形例によれば、正常物体が写っていることが既知となっている、基準被写体領域が予めメモリ５に記憶されていてもよい。この場合には、基準被写体領域と、検出されたそれぞれの被写体領域との間で、特徴点抽出部１３、特徴点選択部１４及び照合部１５の処理が行われればよい。そして照合部１５は、着目する被写体領域に写っている物体と基準被写体領域に写っている物体とが互いに類似しないと判定した場合、着目する被写体領域に写っている物体を異常物体とすればよい。
【００７７】
さらに、上記の実施形態または変形例による画像判定装置のプロセッサが有する各部の機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読取り可能な記録媒体に記憶された形で提供されてもよい。なお、コンピュータによって読取り可能な記録媒体は、例えば、磁気記録媒体、光記録媒体、又は半導体メモリとすることができる。
【００７８】
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
【符号の説明】
【００７９】
１    画像判定装置
２    カメラ
３    通信インターフェース
４    ユーザインターフェース
５    メモリ
６    記憶媒体アクセス装置
７    プロセッサ
８    記憶媒体
１１    領域検出部
１２    類似領域特定部
１３    特徴点抽出部
１４    特徴点選択部
１５    照合部
１６    異常物体判定部
【図１】
2019028610.tif 000004
【図２】
2019028610.tif 000005
【図３】
2019028610.tif 000006
【図４】
2019028610.tif 000007
【図５】
2019028610.tif 000008
【図６】
2019028610.tif 000009
【図７】
2019028610.tif 000010