(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】情報処理装置、検出方法、及び検出プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240906BHJP
【FI】
G06T7/00 300F
(21)【出願番号】P 2024543065
(86)(22)【出願日】2022-12-14
(86)【国際出願番号】 JP2022046063
【審査請求日】2024-07-18
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】100116964
【氏名又は名称】山形 洋一
(74)【代理人】
【識別番号】100120477
【氏名又は名称】佐藤 賢改
(74)【代理人】
【識別番号】100135921
【氏名又は名称】篠原 昌彦
(74)【代理人】
【識別番号】100203677
【氏名又は名称】山口 力
(72)【発明者】
【氏名】大澤 想
(72)【発明者】
【氏名】加島 隆博
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2013-058036(JP,A)
【文献】特開2010-113466(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
G06V 10/00-20/90
(57)【特許請求の範囲】
【請求項1】
参照情報に含まれる複数の第1の対象物の輪郭を示す参照輪郭抽出情報に基づいて、算出された複数の相対位置ベクトルを示す情報、及び前記複数の第1の対象物が含まれている複数の第2の対象物を含む入力画像を取得する取得部と、
前記入力画像に基づいて、前記複数の第2の対象物の輪郭を示す入力輪郭抽出画像を生成する生成部と、
前記入力輪郭抽出画像に基づいて、複数の相対位置ベクトルを算出する算出部と、
前記参照輪郭抽出情報に基づく複数の相対位置ベクトルと、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、前記複数の第2の対象物の輪郭の中から、前記複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する検出部と、
を有し、
前記相対位置ベクトルは、複数の輪郭のうちの1つの輪郭であるターゲット輪郭と、前記ターゲット輪郭以外の輪郭との相対位置関係を示すベクトルである、
情報処理装置。
【請求項2】
変換部をさらに有し、
前記取得部は、前記参照輪郭抽出情報を取得し、
前記変換部は、前記複数の第1の対象物の輪郭を、前記複数の第2の対象物の輪郭に投影し、輪郭のサイズを合わせると共に、前記参照輪郭抽出情報に基づく複数の相対位置ベクトルのサイズを変換し、
前記検出部は、変換された前記複数の相対位置ベクトルと、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、前記複数の第2の対象物の輪郭の中から、前記複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する、
請求項1に記載の情報処理装置。
【請求項3】
前記変換部は、前記参照輪郭抽出情報に基づく複数の相対位置ベクトルの向きが、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルの向きに合うように、射影変換を用いて、前記参照輪郭抽出情報に基づく複数の相対位置ベクトルの向きを変換する、
請求項2に記載の情報処理装置。
【請求項4】
前記対応関係に基づいて、前記入力画像の輪郭と前記参照情報の輪郭とを合わせることで、前記参照情報を前記入力画像に合わせる合わせ処理部をさらに有する、
請求項1または2に記載の情報処理装置。
【請求項5】
情報処理装置が、
参照情報に含まれる複数の第1の対象物の輪郭を示す参照輪郭抽出情報に基づいて、算出された複数の相対位置ベクトルを示す情報、及び前記複数の第1の対象物が含まれている複数の第2の対象物を含む入力画像を取得し、前記入力画像に基づいて、前記複数の第2の対象物の輪郭を示す入力輪郭抽出画像を生成し、前記入力輪郭抽出画像に基づいて、複数の相対位置ベクトルを算出し、
前記参照輪郭抽出情報に基づく複数の相対位置ベクトルと、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、前記複数の第2の対象物の輪郭の中から、前記複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出し、
前記相対位置ベクトルは、複数の輪郭のうちの1つの輪郭であるターゲット輪郭と、前記ターゲット輪郭以外の輪郭との相対位置関係を示すベクトルである、
検出方法。
【請求項6】
情報処理装置に、
参照情報に含まれる複数の第1の対象物の輪郭を示す参照輪郭抽出情報に基づいて、算出された複数の相対位置ベクトルを示す情報、及び前記複数の第1の対象物が含まれている複数の第2の対象物を含む入力画像を取得し、前記入力画像に基づいて、前記複数の第2の対象物の輪郭を示す入力輪郭抽出画像を生成し、前記入力輪郭抽出画像に基づいて、複数の相対位置ベクトルを算出し、
前記参照輪郭抽出情報に基づく複数の相対位置ベクトルと、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、前記複数の第2の対象物の輪郭の中から、前記複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する、
処理を実行させる検出プログラムであり、
前記相対位置ベクトルは、複数の輪郭のうちの1つの輪郭であるターゲット輪郭と、前記ターゲット輪郭以外の輪郭との相対位置関係を示すベクトルである、
検出プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、検出方法、及び検出プログラムに関する。
【背景技術】
【0002】
2つ情報を比較し、2つの情報の関係性を特定する技術が知られている。例えば、当該技術では、特徴量を用いて、2つの情報の関係性が、特定される。ここで、特徴量として、局所画像特徴量が紹介されている(非特許文献1を参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】庄野逸「局所画像特徴量~SIFT,HOGを題材に~」、2013年
【文献】J.Sauvola et al.「Adaptive document image binarization」、Pattern Recognition 33、pp.225-236、2000
【文献】JOHN CANNY et al.「A Computational Approach to Edge Detection」、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE,VOL.PAMI-8,No.6,NOVEMBER 1986
【文献】SATOSHI SUZUKI et al.「Topological Structural Analysis of Digitized Binary Images by Border Following」、COMPUTER VISION,GRAPHICS, AND IMAGE PROCESSING N,32-46、1985
【文献】Ronald L.Graham et al.「Finding the Convex hull of a Simple Polygon」、November 1981
【発明の概要】
【発明が解決しようとする課題】
【0004】
特徴量を用いた場合、2つの情報の関係性が、誤って判定される場合がある。例えば、同じような形同士が、誤って関係性を有すると判定される。このように、誤判定が行われることは、問題である。
【0005】
本開示の目的は、誤判定を防止することである。
【課題を解決するための手段】
【0006】
本開示の一態様に係る情報処理装置が提供される。情報処理装置は、参照情報に含まれる複数の第1の対象物の輪郭を示す参照輪郭抽出情報に基づいて、算出された複数の相対位置ベクトルを示す情報、及び前記複数の第1の対象物が含まれている複数の第2の対象物を含む入力画像を取得する取得部と、前記入力画像に基づいて、前記複数の第2の対象物の輪郭を示す入力輪郭抽出画像を生成する生成部と、前記入力輪郭抽出画像に基づいて、複数の相対位置ベクトルを算出する算出部と、前記参照輪郭抽出情報に基づく複数の相対位置ベクトルと、前記入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、前記複数の第2の対象物の輪郭の中から、前記複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する検出部と、を有する。前記相対位置ベクトルは、複数の輪郭のうちの1つの輪郭であるターゲット輪郭と、前記ターゲット輪郭以外の輪郭との相対位置関係を示すベクトルである。
【発明の効果】
【0007】
本開示によれば、誤判定を防止することができる。
【図面の簡単な説明】
【0008】
【
図3】情報処理装置が有するハードウェアを示す図である。
【
図4】情報処理装置の機能を示すブロック図である。
【
図6】相関位置ベクトルの算出処理の例を示す図である。
【
図8】(A)~(D)は、比較処理の例を示す図である。
【
図9】(A),(B)は、比較処理の具体例を示す図(その1)である。
【
図10】(A),(B)は、比較処理の具体例を示す図(その2)である。
【
図11】(A),(B)は、比較処理の具体例を示す図(その3)である。
【
図12】情報処理装置が実行する処理の例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本開示の範囲内で種々の変更が可能である。
【0010】
実施の形態.
図1は、実施の形態の概要を示す図である。実施の形態が使用される場合の例を説明する。ユーザは、ランプを含む盤をカメラで撮影する。これにより、入力画像10が、生成される。入力画像10は、ランプ11~14を含む。ここで、予め参照画像20が、用意される。参照画像20は、ランプ21~24を含む。なお、ランプ21とランプ22は、状態確認対象のランプである。ランプ11~14がランプ21~24のうちのどのランプに対応するのか分からないので、対応関係が判定される。例えば、ランプ11とランプ21~24とが同じ形なので、ランプ11と対応関係を有するランプが、判定される。判定により、ランプ11~14とランプ21~24とが対応関係を有することが、判定される。例えば、ランプ11とランプ21とが対応関係を有することが、判定される。ランプ12とランプ22とが対応関係を有することが、判定される。上記したように、ランプ21,22は、状態確認対象のランプである。そのため、ランプ11,12の状態情報が、取得される。ランプ11,12の状態情報に基づいて、ランプ11,12の状態が、判定される。例えば、ランプ11が点灯していることが、判定される。例えば、ランプ12が消灯していることが、判定される。
【0011】
上記は、実施の形態が使用される場合の一例である。実施の形態は、上記の説明の中で、対応関係の判定に関する内容である。以下、対応関係の判定について説明する。
【0012】
図2は、入力画像の取得処理の例を示す図である。
図2は、盤200を示している。例えば、盤200は、配電盤、分電盤、動力盤、制御盤などである。盤200は、ランプ201~205を含む。ランプ201~205は、複数の第2の対象物とも言う。また、
図2は、第2の対象物の例として、ランプを示している。しかし、第2の対象物は、スイッチ、メータなどでもよい。複数の第2の対象物のそれぞれは、異なる種類の物でもよい。
【0013】
ユーザは、カメラ300で盤200を撮影する。これにより、入力画像が、生成される。入力画像は、情報処理装置100に入力される。
情報処理装置100は、検出方法を実行する装置である。例えば、情報処理装置100は、PC(Personal Computer)である。また、情報処理装置100は、スマートフォン、タブレット装置、又はサーバでもよい。
【0014】
次に、情報処理装置100が有するハードウェアを説明する。
図3は、情報処理装置が有するハードウェアを示す図である。情報処理装置100は、プロセッサ101、揮発性記憶装置102、及び不揮発性記憶装置103を有する。
【0015】
プロセッサ101は、情報処理装置100全体を制御する。例えば、プロセッサ101は、CPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)などである。プロセッサ101は、マルチプロセッサでもよい。また、情報処理装置100は、処理回路を有してもよい。
【0016】
揮発性記憶装置102は、情報処理装置100の主記憶装置である。例えば、揮発性記憶装置102は、RAM(Random Access Memory)である。不揮発性記憶装置103は、情報処理装置100の補助記憶装置である。例えば、不揮発性記憶装置103は、HDD(Hard Disk Drive)、又はSSD(Solid State Drive)である。
【0017】
次に、情報処理装置100が有する機能を説明する。
図4は、情報処理装置の機能を示すブロック図である。情報処理装置100は、記憶部110、取得部120、生成部130、算出部140、変換部150、検出部160、及び合わせ処理部170を有する。
【0018】
記憶部110は、揮発性記憶装置102又は不揮発性記憶装置103に確保した記憶領域として実現してもよい。
取得部120、生成部130、算出部140、変換部150、検出部160、及び合わせ処理部170の一部又は全部は、処理回路によって実現してもよい。また、取得部120、生成部130、算出部140、変換部150、検出部160、及び合わせ処理部170の一部又は全部は、プロセッサ101が実行するプログラムのモジュールとして実現してもよい。例えば、プロセッサ101が実行するプログラムは、検出プログラムとも言う。例えば、検出プログラムは、記録媒体に記録されている。
【0019】
記憶部110は、様々な情報を記憶する。
取得部120は、参照画像を取得する。例えば、取得部120は、参照画像を記憶部110から取得する。また、例えば、取得部120は、参照画像を外部装置から取得する。なお、例えば、外部装置は、クラウドサーバである。また、外部装置の図は、省略されている。参照画像は、参照情報とも言う。参照画像は、複数の第1の対象物を含む。例えば、第1の対象物は、ランプ、メータ、スイッチなどである。
【0020】
また、取得部120は、入力画像を取得する。例えば、取得部120は、入力画像をカメラ300から取得する。また、例えば、情報処理装置100がタブレット装置である場合、取得部120は、タブレット装置が有するカメラから入力画像を取得する。入力画像は、複数の第2の対象物を含む。また、複数の第2の対象物には、複数の第1の対象物が含まれている。つまり、複数の第2の対象物の数は、複数の第1の対象物の数よりも多い場合がある。また、複数の第1の対象物の数と複数の第2の対象物の数とが、同じ場合がある。
【0021】
生成部130は、入力画像に基づいて、輪郭抽出画像を生成する。輪郭抽出画像の生成の例を説明する。生成部130は、Sauvola法を用いて、入力画像内の影を除去する。なお、Sauvola法は、非特許文献2に記載されている。生成部130は、入力画像に対して、ブラー処理を実行する。生成部130は、処理後の入力画像とCanny法とを用いて、エッジ画像を生成する。なお、Canny法は、非特許文献3に記載されている。生成部130は、エッジ画像に対して、モルフォロジー処理を行う。生成部130は、処理後のエッジ画像とSuzuki85アルゴリズムとを用いて、輪郭画像を生成する。なお、Suzuki85アルゴリズムは、非特許文献4に記載されている。また、生成部130は、輪郭内を塗りつぶした画像にモルフォロジー処理を行い、再び輪郭画像を生成してもよい。輪郭画像では、輪郭内の輪郭、輪郭内のノイズなどが、除去されている。そして、輪郭画像では、各対象物の最も外側の輪郭のみが、抽出される。生成部130は、輪郭画像と凸包計算を用いて、凸包画像を生成する。なお、凸包計算は、非特許文献5に記載されている。生成部130は、各凸包のサイズが凸包画像に対して大きすぎるもの、及び小さすぎるものを削除する。生成部130は、各凸包の対象物の縦横比が大きすぎるものを削除する。このように、削除により、輪郭抽出画像が、生成される。輪郭抽出画像は、別の方法を用いて、生成されてもよい。輪郭抽出画像の例を示す。
【0022】
図5は、輪郭抽出画像の例を示す図である。画像30は、入力画像に基づく輪郭抽出画像である。画像30は、輪郭31~35を含む。このように、画像30は、複数の第2の対象物の輪郭を示す。また、画像30は、入力輪郭抽出画像とも言う。
【0023】
生成部130は、参照画像に基づいて、輪郭抽出画像を生成する。生成方法は、上記と同じである。画像40は、参照画像に基づく輪郭抽出画像である。画像40は、輪郭41~44を含む。取得部120は、参照画像に基づく輪郭抽出画像を取得する。このように、画像40は、複数の第1の対象物の輪郭を示す。また、画像40は、参照輪郭抽出画像又は参照輪郭抽出情報とも言う。
【0024】
ここで、取得部120は、参照画像に基づく輪郭抽出画像を記憶部110又は外部装置から取得してもよい。取得部120が参照画像に基づく輪郭抽出画像を記憶部110又は外部装置から取得する場合、生成部130は、参照画像に基づく輪郭抽出画像を生成しない。
【0025】
なお、画像30は、5つの輪郭を含む。画像40は、4つの輪郭を含む。このように、輪郭の数が、異なる。輪郭の数が異なる理由は、ユーザが遠くからカメラ300で盤200を撮影したからである。以下の説明では、輪郭の数が異なる場合でも、対応関係が的確に判定されることを説明する。
【0026】
算出部140は、画像30に基づいて、複数の相対位置ベクトルを算出する。算出処理を、図を用いて説明する。
【0027】
図6は、相関位置ベクトルの算出処理の例を示す図である。
算出部140は、画像30における複数の輪郭のそれぞれの重心を算出する。画像30における重心の集合をM
iとする。算出部140は、画像40における複数の輪郭のそれぞれの重心を算出する。画像40における重心の集合をM
rとする。
【0028】
画像30における複数の輪郭の中から、1つの輪郭が選択される。選択された輪郭は、輪郭mtiとする。輪郭mtiは、ターゲット輪郭とも言う。複数の輪郭のうち、輪郭mti以外の輪郭は、mkiとする。
【0029】
ここで、相対位置ベクトルとは、輪郭mtiと輪郭mkiとの相対位置関係を示すベクトルである。算出部140は、相対位置ベクトルの集合RPtiを算出する。具体的には、算出部140は、式(1)を用いて、相対位置ベクトルの集合RPtiを算出する。なお、式(1)のSizeは、輪郭の全長、縦、横などでもよい。
【0030】
【0031】
図6の左図内の1つの矢印は、相対位置ベクトルを示している。また、
図6の左図内の4つの矢印は、相対位置ベクトルの集合RP
tiを示している。
【0032】
算出部140は、同様に、複数の輪郭のそれぞれが輪郭mtiになったときの相対位置ベクトルの集合を算出する。これにより、画像30では、5つの相対位置ベクトルの集合が、算出される。このように、算出部140は、画像30に基づいて、複数の相対位置ベクトルを算出する。
【0033】
画像40における複数の輪郭の中から、1つの輪郭が選択される。選択された輪郭は、輪郭mtrとする。輪郭mtrは、ターゲット輪郭とも言う。複数の輪郭のうち、輪郭mtr以外の輪郭は、mkrとする。
【0034】
ここで、相対位置ベクトルとは、輪郭mtrと輪郭mkrとの相対位置関係を示すベクトルである。算出部140は、相対位置ベクトルの集合RPtrを算出する。具体的には、算出部140は、式(2)を用いて、相対位置ベクトルの集合RPtrを算出する。なお、式(2)のサイズでは、式(1)のサイズと同じ種類のサイズが、用いられる。例えば、式(1)のサイズで輪郭の全長が用いられる場合、式(2)のサイズでは、輪郭の全長が用いられる。
【0035】
【0036】
図6の右図内の1つの矢印は、相対位置ベクトルを示している。また、
図6の右図内の3つの矢印は、相対位置ベクトルの集合RP
trを示している。
【0037】
算出部140は、同様に、複数の輪郭のそれぞれが輪郭mtrになったときの相対位置ベクトルの集合を算出する。これにより、画像40では、4つの相対位置ベクトルの集合が、算出される。このように、算出部140は、画像40に基づいて、複数の相対位置ベクトルを算出する。取得部120は、画像40に基づいて、算出された複数の相対位置ベクトルを取得する。
【0038】
ここで、取得部120は、画像40に基づいて、算出された複数の相対位置ベクトルを示す情報を記憶部110又は外部装置から取得してもよい。当該情報が取得される場合、算出部140は、画像40に基づく複数の相対位置ベクトルを算出しない。
【0039】
次に行われる処理を、図を用いて説明する。
図7は、投影処理の例を示す図である。画像30内の輪郭のサイズと、画像40内の輪郭のサイズが、異なる場合がある。そこで、情報処理装置100は、サイズを合わせる処理を行う。
【0040】
変換部150は、複数の第1の対象物の輪郭を、複数の第2の対象物の輪郭に投影し、輪郭のサイズを合わせると共に、画像40に基づく複数の相対位置ベクトルのサイズを変換する。以下、具体的に処理を説明する。
【0041】
変換部150は、画像40における複数の輪郭の中から、1つの輪郭を選択する。選択された輪郭は、輪郭mxrとする。変換部150は、画像30における複数の輪郭の中から、1つの輪郭を選択する。選択された輪郭は、輪郭myiとする。変換部150は、輪郭mxrを輪郭myiに投影する。変換部150は、輪郭mxrと輪郭myiのサイズを合わせると共に、輪郭mxrの相対位置ベクトルの集合のサイズを変換する。サイズが変換された相対位置ベクトルの集合は、式(3)で表される。
【0042】
【0043】
図7の下図は、サイズが変換された相対位置ベクトルの集合を示している。具体的には、相対位置ベクトルの集合が、小さくなる。変換部150は、同様に、3つの相対位置ベクトルの集合のサイズを変換する。これにより、4つの相対位置ベクトルの集合のサイズが、変換される。このように、変換部150は、複数の第1の対象物の輪郭を、複数の第2の対象物の輪郭に投影し、輪郭のサイズを合わせると共に、画像40に基づく複数の相対位置ベクトルのサイズを変換する。
【0044】
また、変換部150は、画像40に基づく複数の相対位置ベクトルの向きが、画像30に基づく複数の相対位置ベクトルの向きに合うように、射影変換を用いて、画像40に基づく複数の相対位置ベクトルの向きを変換する。例えば、輪郭mxrの相対位置ベクトルの集合が全体的に傾いている場合、変換部150は、輪郭mxrの相対位置ベクトルの集合の向きが輪郭myiの相対位置ベクトルの集合の向きに合うように、射影変換を用いて、輪郭mxrの相対位置ベクトルの集合の向きを変換する。
【0045】
なお、画像30内の輪郭のサイズと、画像40内の輪郭のサイズが、同じ場合、情報処理装置100は、
図7の処理を行わない。
図7の処理が行われない場合、検出部160は、画像30に基づく複数の相対位置ベクトルと、画像40に基づく複数の相対位置ベクトルとに基づいて、複数の第2の対象物の輪郭の中から、複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する。
【0046】
図7の処理が行われた場合、検出部160は、変換された複数の相対位置ベクトルと、画像30に基づく複数の相対位置ベクトルとに基づいて、複数の第2の対象物の輪郭の中から、複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する。以下の説明では、サイズが変更されたものとする。
【0047】
検出処理では、比較処理が行われる。比較処理を、図を用いて説明する。
図8(A)~(D)は、比較処理の例を示す図である。検出部160は、輪郭m
xrの相対位置ベクトルの集合RPP
xyと、輪郭m
yiの相対位置ベクトルの集合RP
yとを比較し、相対位置ベクトルの差を算出する。具体的に、差の算出処理を説明する。輪郭m
yiの相対位置ベクトルの集合RP
yは、式(4)で表される。
【0048】
【0049】
図8(A)は、相対位置ベクトルの集合RPP
xyの下方向のベクトルに着目した例である。当該ベクトルを矢印krで表す。検出部160は、相対位置ベクトルkrと、相対位置ベクトルの集合RP
yの下方向の相対位置ベクトルとの差D
xykminを算出する。すなわち、検出部160は、相対位置ベクトルkrと、相対位置ベクトルの集合RP
yの中で相対位置ベクトルkrに一番近い相対位置ベクトルとの差D
xykminを算出する。このとき、一番近いと判断された輪郭m
kiを輪郭m
kiminとする。また、差D
xykminは、式(5)で表される。
【0050】
【0051】
検出部160は、差Dxykminが予め定められた閾値以下であるため、カウントNxyに1を加算する。なお、カウントNxyの初期値は、0である。
【0052】
図8(B)は、相対位置ベクトルの集合RPP
xyの右下方向のベクトルに着目した例である。当該ベクトルを矢印krで表す。検出部160は、相対位置ベクトルkrと、相対位置ベクトルの集合RP
yの中で相対位置ベクトルkrに一番近い相対位置ベクトルとの差D
xykminを算出する。このとき、一番近いと判断された輪郭m
kiを輪郭m
kiminとする。検出部160は、差D
xykminが予め定められた閾値以下であるため、カウントN
xyに1を加算する。
【0053】
図8(C)は、相対位置ベクトルの集合RPP
xyの右方向のベクトルに着目した例である。当該ベクトルを矢印krで表す。検出部160は、相対位置ベクトルkrと、相対位置ベクトルの集合RP
yの中で相対位置ベクトルkrに一番近い相対位置ベクトルとの差D
xykminを算出する。このとき、一番近いと判断された輪郭m
kiを輪郭m
kiminとする。検出部160は、差D
xykminが予め定められた閾値以下であるため、カウントN
xyに1を加算する。
【0054】
ここまでは、相対位置ベクトルの集合RPP
xyの相対位置ベクトルを着目し、相対位置ベクトルの集合RP
yの中で、着目された相対位置ベクトルに一番近い相対位置ベクトルが、割り当てられた。参照画像のベクトルの要素数が入力画像のベクトルの要素数より少ない場合、相対位置ベクトルの集合RP
yの中で一度も一番近いと判断されなかった相対位置ベクトルが存在する。
図8(D)は、相対位置ベクトルの集合RP
yの中で一度も一番近いと判断されなかったベクトルに着目した例である。当該ベクトルを矢印kiで表す。検出部160は、相対位置ベクトルkiと、相対位置ベクトルの集合RPP
xyの中で相対位置ベクトルkiに一番近い相対位置ベクトルとの差D
xykminを算出する。このとき、一番近いと判断された輪郭m
kiを輪郭m
krminとする。検出部160は、差D
xykminが予め定められた閾値よりも大きいため、カウントN
xyに1を加算しない。
これにより、カウントN
xyは、3になる。
【0055】
また、検出部160は、閾値以下であるときの差D
xykminの平均値D
xyを算出する。具体的には、検出部160は、
図8(A)~(C)の差D
xykminの平均値D
xyを算出する。
【0056】
検出部160は、同様に、全ての組み合わせに対して、入力画像の相対位置ベクトルと参照画像の相対位置ベクトルとの差の算出を行い、カウントNxyを検出する。
【0057】
図9(A),(B)は、比較処理の具体例を示す図(その1)である。
図9(A)は、
図8の比較処理を示している。
図8では、画像40の左上の輪郭m
1が画像30の左上の輪郭m
1に投影される場合を説明した。このように投影されるため、カウントN
xyは、カウントN
11と表現する。
図8で説明したように、カウントN
11は、3である。
【0058】
図9(B)では、画像40の輪郭m
1が画像30の輪郭m
2に投影される。そして、画像40の輪郭m
1の相対位置ベクトルの集合と、画像30の輪郭m
2の相対位置ベクトルの集合とが、比較される。画像40の輪郭m
1が画像30の輪郭m
2に投影された場合、カウントN
12は、2である。
【0059】
図10(A),(B)は、比較処理の具体例を示す図(その2)である。
図10(A)では、画像40の輪郭m
1が画像30の輪郭m
3に投影される。そして、画像40の輪郭m
1の相対位置ベクトルの集合と、画像30の輪郭m
3の相対位置ベクトルの集合とが、比較される。画像40の輪郭m
1が画像30の輪郭m
3に投影された場合、カウントN
13は、1である。
【0060】
図10(B)では、画像40の輪郭m
1が画像30の輪郭m
4に投影される。そして、画像40の輪郭m
1の相対位置ベクトルの集合と、画像30の輪郭m
4の相対位置ベクトルの集合とが、比較される。画像40の輪郭m
1が画像30の輪郭m
4に投影された場合、カウントN
14は、0である。
【0061】
図11(A),(B)は、比較処理の具体例を示す図(その3)である。
図11(A)では、画像40の輪郭m
1が画像30の輪郭m
5に投影される。そして、画像40の輪郭m
1の相対位置ベクトルの集合と、画像30の輪郭m
5の相対位置ベクトルの集合とが、比較される。画像40の輪郭m
1が画像30の輪郭m
5に投影された場合、カウントN
15は、1である。
【0062】
図11(B)では、画像40の輪郭m
2が画像30の輪郭m
1に投影される。そして、画像40の輪郭m
2の相対位置ベクトルの集合と、画像30の輪郭m
1の相対位置ベクトルの集合とが、比較される。画像40の輪郭m
2が画像30の輪郭m
2に投影された場合、カウントN
21は、1である。
カウントN
45まで、同様の処理が、実行される。
【0063】
このように、検出部160は、全ての組み合わせに対して、入力画像の相対位置ベクトルと参照画像の相対位置ベクトルとの差の算出を行い、カウントNxyを検出する。
【0064】
検出部160は、カウントNxyが最大の組合せを検出する。最大の組合せは、N11、N22、N33、N45である。検出部160は、最大の組合せに基づいて、対応関係を検出する。具体的には、検出部160は、N11に基づいて、画像40の輪郭m1と画像30の輪郭m1とが対応関係を有することを検出する。検出部160は、N22に基づいて、画像40の輪郭m2と画像30の輪郭m2とが対応関係を有することを検出する。検出部160は、N33に基づいて、画像40の輪郭m3と画像30の輪郭m3とが対応関係を有することを検出する。検出部160は、N45に基づいて、画像40の輪郭m4と画像30の輪郭m5とが対応関係を有することを検出する。
【0065】
また、検出部160は、参照画像の1つの輪郭と、入力画像の複数の輪郭とが対応関係を有する場合、平均値Dxyが最も小さい組合せを、対応関係が有すると判定する。例えば、画像40の輪郭m2と、画像30の輪郭m1、輪郭m2とが対応関係を有する場合、検出部160は、平均値D21と平均値D22とのうちの最小値の組合せを対応関係が有すると判定する。検出部160は、入力画像の1つの輪郭と、参照画像の複数の輪郭とが対応関係を有する場合にも同様の処理を行う。
【0066】
さらに、参照画像の1つの輪郭と、入力画像の複数の輪郭とが対応関係を有する場合、検出部160は、式(6)を用いて、輪郭サイズの比率が1に近い組合せを対応関係が有すると判定してもよい。なお、式(6)のSize(mxr)は、変換前の参照画像の輪郭のサイズを示す。検出部160は、入力画像の1つの輪郭と、参照画像の複数の輪郭とが対応関係を有する場合にも同様の処理を行う。
【0067】
【0068】
このように、検出部160は、輪郭31~35の中から、輪郭41~44と対応関係を有する輪郭31~34を検出する。
【0069】
次に、情報処理装置100が実行する処理を、フローチャートを用いて、説明する。
図12は、情報処理装置が実行する処理の例を示すフローチャートである。
(ステップS11)取得部120は、入力画像を取得する。
(ステップS12)取得部120は、参照画像を取得する。
(ステップS13)生成部130は、入力画像に基づいて、画像30を生成する。
(ステップS14)生成部130は、参照画像に基づいて、画像40を生成する。
(ステップS15)算出部140は、画像30に基づく複数の相対位置ベクトルを算出する。
(ステップS16)算出部140は、画像40に基づく複数の相対位置ベクトルを算出する。
(ステップS17)変換部150は、画像40に基づく複数の相対位置ベクトルのサイズを変換する。
(ステップS18)検出部160は、輪郭31~35の中から、輪郭41~44と対応関係を有する複数の輪郭を検出する。
【0070】
対応関係が検出された後、情報処理装置100は、次の処理を実行してもよい。対応関係が検出されたことにより、例えば、画像30の輪郭31が画像40の輪郭41に対応することが、特定される。輪郭41に対応する参照画像の対象物が、状態確認対象である場合、情報処理装置100は、輪郭31に対応する入力画像の対象物の状態情報を取得する。情報処理装置100は、状態情報に基づいて、対象物の状態を判定する。
【0071】
ここで、特徴量を用いて、2つの輪郭の関係性を判定する場合、2つの輪郭の関係性が、誤って判定される場合がある。例えば、画像30の輪郭31と、画像40の輪郭41~44とは、同じような形をしている。そのため、例えば、輪郭31と輪郭42とが対応関係を有すると、誤って判定される。このように、特徴量を用いた場合、誤判定が起こる可能性がある。
【0072】
実施の形態によれば、情報処理装置100は、相対位置ベクトルを用いて、対応関係を検出する。そのため、情報処理装置100は、誤判定を防止することができる。
【0073】
上記したように、情報処理装置100は、参照画像の輪郭と、入力画像の輪郭との対応関係を検出する。情報処理装置100は、対応関係に基づいて、参照画像を入力画像に合わせてもよい。例えば、合わせ処理部170は、対応関係に基づいて、入力画像の輪郭と参照画像の輪郭とを合わせることで、参照画像を入力画像に合わせる。また、例えば、合わせ処理部170は、対応関係に基づいて、入力画像の輪郭の重心と参照画像の輪郭の重心とを合わせることで、参照画像を入力画像に合わせる。合わせ処理部170は、さらに、輪郭以外の特徴点を用いて、参照画像を入力画像に合わせてもよい。例えば、合わせ処理部170は、輪郭を矩形で囲ったときの4つの頂点に基づいて、参照画像を入力画像に合わせてもよい。合わせ処理部170は、対応関係と、ホモグラフィ変換とを用いて、参照画像を入力画像に合わせてもよい。また、情報処理装置100は、参照画像と入力画像と合わせて、2つの輪郭が重なる場合、入力画像の輪郭内の情報を取得してもよい。
【0074】
上記では、入力画像内の対象物と、参照画像内の対象物との対応関係を検出する場合を説明した。実施の形態は、AR(Augmented Reality)で行われる対応関係の検出処理に適応してもよい。例えば、入力画像内の対象物と、参照情報に含まれるGUI(Graphical User Interface)、CG(Computer Graphics)などで表された対象物との対応関係を検出する場合、実施の形態が用いられてもよい。
【符号の説明】
【0075】
10 入力画像、 11~14 ランプ、 20 参照画像、 21~24 ランプ、 22 ランプ、 30 画像、 31~35 輪郭、 40 画像、 41~44 輪郭、 100 情報処理装置、 101 プロセッサ、 102 揮発性記憶装置、 103 不揮発性記憶装置、 110 記憶部、 120 取得部、 130 生成部、 140 算出部、 150 変換部、 160 検出部、 170 合わせ処理部、 200 盤、 201~205 ランプ、 300 カメラ。
【要約】
情報処理装置(100)は、参照情報に含まれる複数の第1の対象物の輪郭を示す参照輪郭抽出情報に基づいて、算出された複数の相対位置ベクトルを示す情報、及び複数の第1の対象物が含まれている複数の第2の対象物を含む入力画像を取得する取得部(120)と、入力画像に基づいて、複数の第2の対象物の輪郭を示す入力輪郭抽出画像を生成する生成部(130)と、入力輪郭抽出画像に基づいて、複数の相対位置ベクトルを算出する算出部(140)と、参照輪郭抽出情報に基づく複数の相対位置ベクトルと、入力輪郭抽出画像に基づく複数の相対位置ベクトルとに基づいて、複数の第2の対象物の輪郭の中から、複数の第1の対象物の輪郭と対応関係を有する複数の輪郭を検出する検出部(160)と、を有する。