説明

情報処理装置、物体認識方法、プログラム及び端末装置

【課題】画像が撮像される際の照明条件が変化する状況において画像に映る物体を精度よく認識すること。
【解決手段】2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている上記データベースと、撮像装置により撮像された入力画像を取得する取得部と、上記入力画像から決定される特徴量を上記データベースにより記憶されている各画像の特徴量と照合することにより、上記入力画像に映る物体を認識する認識部と、を備え、上記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含む、情報処理装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、物体認識方法、プログラム及び端末装置に関する。
【背景技術】
【0002】
近年、画像認識技術が高度化し、カメラからの入力画像に映る物体の位置や姿勢を画像特徴量のマッチングによって認識することが可能となっている。このような物体認識の応用例の1つは、拡張現実(AR:Augmented Reality)アプリケーションである。ARアプリケーションでは、実世界に存在する建物、道路又はその他の物体を映した画像内で、様々な情報(例えば、広告情報、ナビゲーション情報又はゲームのための情報など)が物体に重畳して表示され得る。
【0003】
下記特許文献1は、画像内のノイズ、スケールの変化及び回転に対してロバスト性を高めた画像特徴量を抽出するための、SIFT(Scale Invariant Feature Transform)法と呼ばれる手法を提案している。下記特許文献2は、処理性能の高くない携帯端末などでの画像特徴量の抽出に適した、処理コストのより低いRandom Ferns法と呼ばれる手法を提案している。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】David G. Lowe,“Distinctive Image Features from Scale-Invariant Keypoints”,the International Journal of Computer Vision, 2004
【非特許文献2】Mustafa Oezuysal,“Fast Keypoint Recognition using Random Ferns”,IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.32, Nr.3, pp.448-461, March 2010
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、物体認識が実用される場面において、画像が撮像される際の照明条件の変化が、認識の精度を低下させる大きな要因となっている。例えば、屋外に存在する物体の見え方は、季節、時間帯又は天候などの条件によって著しく変化する。その結果、ARアプリケーションが屋外の物体に情報を重畳させようとする際、事前に登録された特徴量と入力画像から決定される特徴量とが適合せず、物体を正しく認識できないという現象が起こり得る。上記特許文献1に記載されたSIFT法に従って決定される特徴量は、照明の変化にもある程度ロバストな特徴量であるものの、上述したような物体の見え方の著しい変化を十分に吸収し得るものではない。また、一般に、屋外の多様な照明条件の変化を完全にモデル化することは困難である。
【0006】
そこで、本発明は、画像が撮像される際の照明条件が変化する状況において、画像に映る物体を精度よく認識することのできる、情報処理装置、物体認識方法、プログラム及び端末装置を提供しようとするものである。
【課題を解決するための手段】
【0007】
本発明のある実施形態によれば、2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている上記データベースと、撮像装置により撮像された入力画像を取得する取得部と、上記入力画像から決定される特徴量を上記データベースにより記憶されている各画像の特徴量と照合することにより、上記入力画像に映る物体を認識する認識部と、を備え、上記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含む、情報処理装置が提供される。
【0008】
また、上記取得部は、上記入力画像が撮像された際の照明条件を表す照明条件データをさらに取得し、上記情報処理装置は、上記データベースにより記憶されている上記2つ以上の画像の特徴量から、上記照明条件データにより表される照明条件に近い照明条件で撮像された画像の特徴量を抽出するフィルタリング部、をさらに備え、上記認識部は、上記フィルタリング部により抽出される画像の特徴量を、上記入力画像から決定される特徴量と照合してもよい。
【0009】
また、上記照明条件は、各画像が撮像された際の天候に関する第1の条件を含んでもよい。
【0010】
また、上記取得部は、上記入力画像を撮像した撮像装置の位置を表す位置データと上記入力画像が撮像され又は取得された日時とに基づいて、上記第1の条件についての上記照明条件データを取得してもよい。
【0011】
また、上記照明条件は、各画像が撮像された際の日付又は時刻に関する第2の条件を含んでもよい。
【0012】
また、上記情報処理装置は、端末装置から送信される上記入力画像を受信し、上記認識部により認識される物体に関する情報を上記端末装置へ送信する通信部、をさらに備えてもよい。
【0013】
また、上記情報処理装置は、端末装置から送信される上記入力画像を受信し、上記認識部により認識される物体に関する情報を上記端末装置へ送信する通信部、をさらに備え、上記取得部は、上記端末装置とは異なる装置から上記照明条件データを取得してもよい。
【0014】
また、上記データベースにおいて、各画像に映る物体の位置を表す属性値が各画像の特徴量にさらに関連付けられており、上記取得部は、上記入力画像を撮像した上記撮像装置の位置を表す位置データをさらに取得し、上記フィルタリング部は、上記位置データにより表される上記撮像装置の位置に近い位置で撮像された物体についての画像の特徴量のみを抽出してもよい。
【0015】
また、上記取得部は、上記入力画像を撮像した上記撮像装置の位置を表す位置データ、及び上記入力画像が撮像された際の照明条件を表す照明条件データの少なくとも一方をさらに取得し、上記情報処理装置は、上記撮像装置の位置又は上記照明条件に関する所定の単位ごとに上記認識部により各物体が認識された頻度を集計する集計部、をさらに備え、上記認識部は、新たに取得される入力画像に対応する上記撮像装置の位置又は上記照明条件について上記集計部により集計された頻度を参照し、当該頻度の高い物体を映した画像の特徴量を優先的に上記入力画像から決定される特徴量と照合してもよい。
【0016】
また、本発明の別の実施形態によれば、2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている上記データベースを備える情報処理装置における物体認識方法であって、上記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含み、上記物体認識方法は、撮像装置により撮像された入力画像を取得するステップと、上記入力画像から決定される特徴量を上記データベースにより記憶されている各画像の特徴量と照合することにより、上記入力画像に映る物体を認識するステップと、を含む物体認識方法が提供される。
【0017】
また、本発明の別の実施形態によれば、2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている上記データベースを備える情報処理装置を制御するコンピュータを、撮像装置により撮像された入力画像を取得する取得部と、上記入力画像から決定される特徴量を上記データベースにより記憶されている各画像の特徴量と照合することにより、上記入力画像に映る物体を認識する認識部と、として機能させるためのプログラムであって、上記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含む、プログラムが提供される。
【0018】
また、本発明の別の実施形態によれば、2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられており、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を記憶している上記データベースを有する情報処理装置との間で通信する通信部と、撮像装置により撮像された撮像画像又は当該撮像画像から決定される特徴量、及び当該撮像画像が撮像された際の照明条件に関するデータを、上記通信部から上記情報処理装置へ送信させる制御部と、を備える端末装置が提供される。
【0019】
また、上記制御部は、拡張現実アプリケーションを実行する際に、上記撮像画像又は上記特徴量及び上記照明条件に関するデータを上記通信部から上記情報処理装置へ送信させてもよい。
【発明の効果】
【0020】
以上説明したように、本発明に係る情報処理装置、物体認識方法、プログラム及び端末装置によれば、画像が撮像される際の照明条件が変化する状況において画像に映る物体を精度よく認識することができる。
【図面の簡単な説明】
【0021】
【図1】本技術が適用され得る物体認識システムの概要を示す説明図である。
【図2A】入力画像の第1の例を示す説明図である。
【図2B】入力画像の第2の例を示す説明図である。
【図2C】入力画像の第3の例を示す説明図である。
【図3】第1の実施形態に係る端末装置の構成の一例を示すブロック図である。
【図4】第1の実施形態に係る物体認識サーバの構成の一例を示すブロック図である。
【図5】第1の実施形態に係るデータベースの構成の一例を示す説明図である。
【図6】第1の実施形態に係る物体認識処理の流れの一例を示すフローチャートである。
【図7】第2の実施形態に係る端末装置の構成の一例を示すブロック図である。
【図8】第2の実施形態に係る物体認識サーバの構成の一例を示すブロック図である。
【図9A】照明条件データの取得方法の第1の例について説明するための説明図である。
【図9B】照明条件データの取得方法の第2の例について説明するための説明図である。
【図9C】照明条件データの取得方法の第3の例について説明するための説明図である。
【図10】第2の実施形態に係るデータベースの構成の一例を示す説明図である。
【図11】第2の実施形態に係る物体認識処理の流れの一例を示すフローチャートである。
【図12】位置フィルタリング処理の流れの一例を示すフローチャートである。
【図13】照明条件フィルタリング処理の流れの一例を示すフローチャートである。
【図14】フィルタリング結果の一例について説明するための説明図である。
【図15】第3の実施形態に係る物体認識サーバの構成の一例を示すブロック図である。
【図16】頻度集計データの構成の一例を示す説明図である。
【図17】第3の実施形態に係る物体認識処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付すことにより重複説明を省略する。
【0023】
また、以下の順序にしたがって当該「発明を実施するための形態」を説明する。
1.第1の実施形態
1−1.システムの概要
1−2.端末装置の構成例
1−3.サーバの構成例
1−4.処理の流れ
1−5.第1の実施形態のまとめ
2.第2の実施形態
2−1.端末装置の構成例
2−2.サーバの構成例
2−3.処理の流れ
2−3.第2の実施形態のまとめ
3.第3の実施形態
3−1.サーバの構成例
3−2.処理の流れ
3−3.第3の実施形態のまとめ
【0024】
<1.第1の実施形態>
[1−1.システムの概要]
図1は、本明細書で開示する技術が適用され得る物体認識システムの概要を示す説明図である。図1を参照すると、第1の実施形態に係る物体認識システム1が示されている。物体認識システム1は、端末装置100及び物体認識サーバ200を含む。
【0025】
端末装置100は、物体認識の対象となる画像を物体認識サーバ200へ送信する装置である。端末装置100は、スマートフォン又はPDA(Personal Digital Assistant)などの、ユーザにより携帯される携帯端末であってもよい。また、端末装置100は、PC(Personal Computer)、デジタル家電機器、ゲーム機器又はデジタルカメラなどのその他の種類の装置であってもよい。
【0026】
図1の例では、端末装置100は、撮像装置120を有する。撮像装置120は、実空間1を撮像して画像を生成する。端末装置100は、撮像装置120により生成される画像を物体認識サーバ200へ送信する。そして、端末装置100は、送信した画像に映る物体に関する情報を、物体認識サーバ200から受信する。端末装置100は、物体認識サーバ200から受信される情報を、例えばARアプリケーション又はその他の種類のアプリケーションのために利用する。
【0027】
なお、撮像装置120は、端末装置100とは別体に構成される装置であってもよい。例えば、端末装置100は、デジタルスチルカメラにより撮像された画像をUSB(Universal Serial Bus)などの接続線又はリムーバブルメディアを介して取得し、取得した画像を物体認識サーバ200へ送信してもよい。
【0028】
物体認識サーバ200は、端末装置100に物体認識サービスを提供する情報処理装置である。物体認識サーバ200は、ネットワーク3に接続され、端末装置100との間で通信を行う。ネットワーク3は、インターネットであってもよく、又は企業ネットワークなどのプライベートネットワークであってもよい。物体認識サーバ200は、端末装置100から画像を受信し、受信した画像に映る物体を認識する。そして、物体認識サーバ200は、認識した物体に関する情報を、端末装置100へ送信する。
【0029】
物体認識サーバ200による物体の認識は、画像の特徴量の照合に基づいて行われる。物体認識サーバ200は、実空間に存在する様々な物体を映した画像の特徴量をデータベースに蓄積しており、端末装置100から受信される入力画像の特徴量とデータベース内の画像の特徴量とを照合することにより、入力画像に映る物体を認識する。
【0030】
図2A〜図2Cは、端末装置100から物体認識サーバ200へ送信される入力画像の例をそれぞれ示している。図2Aに示した入力画像Im01、図2Bに示した入力画像Im02及び図2Cに示した入力画像Im03は、いずれも同じ物体5を映した画像である。物体5は、屋外の建物である。しかし、入力画像Im01、Im02及びIm03がそれぞれ撮像された際の照明条件は異なっており、各画像に映る物体5の見え方も変化している。例えば、入力画像Im01は、晴れている日の朝に撮像された画像である。入力画像Im01内で、物体5には他の建物の影が映っている。入力画像Im02は、曇った日の昼に撮像された画像である。入力画像Im02内で、物体5には他の建物の影は映っていない。入力画像Im03は、晴れた日の夜に撮像された画像である。入力画像Im03内で、物体5に複数の照明の光が反射している。
【0031】
このように照明条件が変化する状況において撮像された画像が入力されると、入力画像から決定される特徴量と事前に学習された物体の画像の特徴量との間の差分は大きくなる。そして、ある照明条件で撮像された入力画像に映る物体を正しく認識できないという事象が起こり得る。入力画像に映る物体を正しく認識できなければ、物体認識の結果に基づいて提供されるアプリケーションを正常に動作させることは困難となる。そこで、本明細書では、画像が撮像される際の照明条件が変化する状況においても画像に映る物体をロバストに認識することを可能とする技術について、以下に詳細に説明する。
【0032】
[1−2.端末装置の構成例]
図3は、第1の実施形態に係る端末装置100の構成の一例を示すブロック図である。図3を参照すると、端末装置100は、通信部110、撮像部120、入力部140、表示部150、記憶部160及び制御部170を備える。
【0033】
(通信部)
通信部110は、制御部170による制御の下で、物体認識サーバ200との間の通信を行う。例えば、通信部110は、後に説明する物体認識要求を物体認識サーバ200へ送信する。物体認識要求には、物体認識の対象となる入力画像又は入力画像から決定される特徴量が含まれ得る。また、通信部110は、物体認識要求への応答として物体認識サーバ200から送信される物体認識の結果を受信する。
【0034】
(撮像部)
撮像部120は、図1に例示した撮像装置120に相当するカメラモジュールである。撮像部120は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子を用いて実空間を撮像することにより画像を生成する。
【0035】
(入力部)
入力部140は、ユーザが端末装置100を操作し又は端末装置100へ情報を入力するために使用される入力デバイスである。入力部140は、例えば、キーボード、キーパッド、マウス、ボタン、スイッチ又はタッチパネルなどを含み得る。入力部140は、画像に映るユーザのジェスチャを認識するジェスチャ認識モジュール、又はユーザの発する音声コマンドを認識する音声認識モジュールなどを含んでもよい。
【0036】
(表示部)
表示部150は、LCD(Liquid Crystal Display)、OLED(Organic light-Emitting Diode)又はCRT(Cathode Ray Tube)などにより構成される表示モジュールである。表示部150の画面上には、例えば、通信部110により受信される物体認識の結果に基づいて提供されるアプリケーションの画像(例えば、撮像画像に映る特定の物体にARのオブジェクトが重畳された画像)が表示される。表示部150は、端末装置100の一部であってもよく、又は端末装置100とは別体に構成されてもよい。また、表示部150は、ユーザにより装着されるHMD(Head Mounted Display)であってもよい。
【0037】
(記憶部)
記憶部160は、半導体メモリ又はハードディスクなどの記憶媒体を用いて、端末装置100による処理のためのプログラム及びデータを記憶する。例えば、記憶部160は、撮像部120から出力される画像を記憶する。また、記憶部160は、物体認識サーバ200から通信部110により受信される、入力画像に映る物体に関する情報を記憶する。
【0038】
(制御部)
制御部170は、CPU(Central Processing Unit)又はDSP(Digital Signal Processor)などのプロセッサに相当する。制御部170は、記憶部160又は他の記憶媒体に記憶されるプログラムを実行することにより、端末装置100の機能全般を動作させる。例えば、制御部170は、入力部140を介してユーザによりARアプリケーションが起動されると、撮像部120に実空間の画像を撮像させる。次に、制御部170は、通信部110から物体認識サーバ200へ物体認識要求を送信させる。物体認識要求には、撮像部120により撮像された画像(又は他の画像)が入力画像として含まれ得る。その代わりに、制御部170は、撮像画像から特徴量を決定し、決定した特徴量を物体認識要求に含めてもよい。制御部170は、物体認識サーバ200から物体認識の結果として入力画像に映る物体に関する情報が受信されると、当該情報に基づいてARアプリケーションを動作させる。入力画像に映る物体に関する情報とは、例えば、入力画像に映る物体のID、当該物体の位置及び姿勢、又は入力画像に映る物体に重畳して表示すべき付加的な情報などであってよい。そして、制御部170は、ARアプリケーションの画像を生成し、生成した画像を表示部150に表示させる。
【0039】
[1−3.サーバの構成例]
図4は、第1の実施形態に係る物体認識サーバ200の構成の一例を示すブロック図である。図4を参照すると、物体認識サーバ200は、通信部210、データ取得部220、データベース230及び画像認識部240を備える。
【0040】
(通信部)
通信部210は、ネットワーク3を介して端末装置100との間の通信を行う。例えば、通信部210は、端末装置100から送信される上述した物体認識要求を受信する。物体認識要求には、端末装置100の撮像部120若しくは他の撮像装置により撮像された入力画像、又は当該入力画像から決定される特徴量が含まれる。通信部210は、物体認識要求に応じて画像認識部240により入力画像に映る物体が認識されると、当該物体に関する情報を端末装置100へ送信する。
【0041】
(データ取得部)
データ取得部220は、通信部210により受信される上述した入力画像又は当該入力画像から決定された特徴量を取得する。そして、データ取得部220は、取得した入力画像又は特徴量を、画像認識部240へ出力する。なお、データ取得部220は、通信部210を介することなく、例えば物体認識サーバ200に直接接続される撮像装置又は記憶媒体などから、入力画像又は特徴量を取得してもよい。
【0042】
(データベース)
データベース230は、半導体メモリ又はハードディスクなどの記憶媒体を用いて、2つ以上の画像の特徴量を記憶するデータベースである。データベース230において、各画像の特徴量には、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが関連付けられる。データベース230は、互いに異なる照明条件で同じ物体を撮像した複数の画像を記憶する。
【0043】
図5は、本実施形態に係るデータベース230の構成の一例を示す説明図である。図5を参照すると、データベース230は、「物体ID」、「特徴量ID」、「場所」、「日付」、「時刻」、「天候」及び「特徴量セット」という7つのデータ項目を有する。「物体ID」は、事前に学習される各画像に映る物体を識別するための識別子である。図5に例示したような識別子の文字列の代わりに、物体の位置を表す位置座標が識別情報として使用されてもよい。「特徴量ID」は、データベース230により記憶される特徴量セットを一意に識別するための識別子である。本実施形態では、1つの「物体ID」について複数の「特徴量ID」が存在し得る。「場所」、「日付」、「時刻」及び「天候」は、各特徴量セットに関連付けられる属性である。「場所」は、各特徴量セットに対応する画像が撮像された場所(地点又は領域)の位置座標である。「日付」は、各特徴量セットに対応する画像が撮像された日付である。「時刻」は、各特徴量セットに対応する画像が撮像された時刻である。「天候」は、各特徴量セットに対応する画像が撮像された際の天候を表す。「特徴量セット」には、各特徴量セットの実体のデータが格納される。各特徴量セットは、例えば、SIFT法又はRandom Ferns法に従って学習用画像(映っている物体が既知である画像)から決定された特徴量の集合であってよい。
【0044】
図5の例において、特徴量ID「F11」、「F12」及び「F13」は、同じ場所に位置する同じ物体B1を映した画像の特徴量セットのIDである。但し、これら3つの特徴量セットは、対応する画像が撮像された際の日付、時刻及び天候の少なくとも1つが互いに異なっている。これら日付、時刻及び天候は、照明条件に関する属性の一例である。このように、データベース230は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を予め記憶している。なお、データベース230において、場所、日付、時刻及び天候という属性項目のうち一部の項目には、属性値が定義されなくてもよい。図5の例において、特徴量ID「F31」の場所、日付及び時刻の値は“any(任意)”とされている。このようなデータは、例えば、フランチャイズチェーンの店舗、バス停の標識又は信号機など、複数の場所に出現し得る物体を撮像した画像の特徴量セットのために定義され得る。
【0045】
(画像認識部)
画像認識部240は、入力画像から決定される特徴量をデータベース230により記憶されている各画像の特徴量と照合することにより、入力画像に映る物体を認識する。例えば、画像認識部240は、データ取得部220により入力画像が取得されると、SIFT法又はRandom Ferns法などの特徴量決定法に従って、入力画像から特徴量を決定する。そして、画像認識部240は、決定した入力画像の特徴量をデータベース230により記憶されている各画像の特徴量と照合する。そして、画像認識部240は、入力画像の特徴量と最もよく適合する特徴量と関連付けられている物体の物体ID並びに当該物体の位置及び姿勢を、物体認識の結果として認識する。また、画像認識部240は、ある一定のレベルを超えて入力画像の特徴量と適合する特徴量と関連付けられている複数の物体の物体ID並びに位置及び姿勢のリストを、物体認識の結果として認識してもよい。そして、画像認識部240は、認識結果として、入力画像に映る物体に関する情報を通信部210から端末装置100へ送信させる。端末装置100へ送信される情報には、画像認識部240により認識された物体ID、当該物体の位置及び姿勢(又はそれらのリスト)、並びに付加的な情報(例えば、当該物体に重畳して表示すべき情報など)が含まれ得る。
【0046】
[1−4.処理の流れ]
図6は、本実施形態に係る物体認識サーバ200による物体認識処理の流れの一例を示すフローチャートである。
【0047】
図6を参照すると、まず、データ取得部220は、端末装置100から送信される物体認識要求に含まれる入力画像を取得する(ステップS100)。次に、画像認識部240は、データ取得部220により取得された入力画像から特徴量を決定する(ステップS102)。なお、物体認識要求に入力画像の特徴量が含まれる場合には、ステップS100及びS102の代わりに、データ取得部220により当該入力画像の特徴量が取得され得る。
【0048】
次に、画像認識部240は、データベース230により記憶されている各特徴量IDについて、ステップS106からステップS110までの処理を繰り返す(ステップS104)。
【0049】
ステップS106において、画像認識部240は、データベース230から取得される1セットの特徴量(以下、注目特徴量という)とステップS102において決定した入力画像の特徴量とを照合する(ステップS106)。画像認識部240は、例えば、照合処理において、注目特徴量に含まれる特徴点座標の3次元アフィン変換を行い、変換後の特徴点座標と入力画像の特徴点座標とが最もよく適合する物体の位置及び姿勢を決定する。また、画像認識部240は、その位置及び姿勢における特徴量の適合の度合いを表す照合スコアを算出する。そして、画像認識部240は、算出した照合スコアが所定の閾値を上回るか否かを判定する(ステップS108)。ここで、画像認識部240は、照合スコアが閾値を上回る場合には、注目特徴量の特徴量ID、位置及び姿勢並びに照合スコアを一時的にメモリに記録する(ステップS110)。
【0050】
その後、データベース230により記憶されている複数の特徴量IDについてのループが終了すると、画像認識部240は、一時的にメモリに記録した特徴量IDのリストに基づいて、物体認識の結果を通信部210へ出力する(ステップS112)。ここで出力される物体認識の結果には、照合スコアの最も高い(又は照合スコアが上位N個の)特徴量IDに関連付けられている物体ID、対応する位置及び姿勢、並びに付加的な情報が含まれ得る。
【0051】
[1−5.第1の実施形態のまとめ]
ここまで、図1〜図6を用いて、第1の実施形態に係る端末装置100及び物体認識サーバ200について詳細に説明した。本実施形態によれば、物体認識サーバ200は、2つ以上の画像の特徴量を照明条件に関する属性値と関連付けて記憶しているデータベースを有する。そして、物体認識サーバ200は、端末装置100からの物体認識要求に応じて、入力画像から決定される特徴量を上記データベースにより記憶されている各画像の特徴量と照合することにより、入力画像に映る物体を認識する。上記データベースには、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量が含まれている。従って、入力画像が撮像される際の照明条件が様々に変化する状況においても、入力画像がいずれかの照明条件で撮像された学習済みの画像と適合する確率が高まり、入力画像に映る物体をより正確に認識することができる。
【0052】
<2.第2の実施形態>
上述した第1の実施形態では、1つの物体について互いに異なる照明条件で撮像された複数の画像の特徴量がデータベースに予め記憶される。この場合、物体認識のための特徴量の照合処理に要する時間が長くなる。そこで、本節では、第2の実施形態として、照合処理に要する時間を短縮する仕組みについて説明する。
【0053】
[2−1.端末装置の構成例]
図7は、第2の実施形態に係る端末装置300の構成の一例を示すブロック図である。図7を参照すると、端末装置300は、通信部110、撮像部120、測位部330、入力部140、表示部150、記憶部160及び制御部370を備える。
【0054】
測位部330は、端末装置300の撮像部120の位置を測定する測位モジュールである。例えば、測位部330は、GPS(Global Positioning System)信号を受信して自装置の緯度、経度及び高度を測定するGPSモジュールであってもよい。また、測位部330は、無線アクセスポイントから受信される無線信号の強度に基づいて自装置の位置を測定する測位センサであってもよい。また、測位部330は、撮像部120のレンズが向いている方位を測定する地磁気センサを含んでもよい。
【0055】
制御部370は、第1の実施形態に係る制御部170と同様、記憶部160又は他の記憶媒体に記憶されるプログラムを実行することにより、端末装置300の機能全般を動作させる。また、本実施形態において、制御部370は、通信部110から物体認識サーバ400へ送信される物体認識要求に、物体認識サーバ400での物体認識処理の効率化を支援するためのデータを付加し得る。例えば、後に具体的な例を挙げて説明するように、測位部330により測定される位置を表す位置データが物体認識要求に付加され得る。当該位置データは、撮像部120の向きを表す方位データを含んでもよい。また、入力画像が撮像された際の照明条件に関する日時又は天候などのデータも、物体認識要求に付加され得る。
【0056】
[2−2.サーバの構成例]
図8は、第2の実施形態に係る物体認識サーバ400の構成の一例を示すブロック図である。図8を参照すると、物体認識サーバ400は、通信部210、データ取得部420、データベース430、画像認識部440及びフィルタリング部450を備える。
【0057】
(データ取得部)
データ取得部420は、第1の実施形態に係る物体認識サーバ200のデータ取得部220と同様、通信部210により受信される物体認識要求に含まれる入力画像又は入力画像の特徴量を取得する。また、本実施形態において、データ取得部420は、入力画像が撮像された際の照明条件を表す照明条件データをさらに取得する。データ取得部420は、照明条件データを通信部210を介して端末装置300から取得してもよい。その代わりに、データ取得部420は、物体認識要求に応じて照明条件データを他の装置から取得してもよい。データ取得部420による照明条件データの取得方法の3つの例について、図9A〜図9Cを用いて説明する。
【0058】
図9Aは、照明条件データの取得方法の第1の例について説明するための説明図である。図9Aを参照すると、端末装置300は、入力画像(又は入力画像の特徴量)のみを含む物体認識要求を物体認識サーバ400へ送信する。物体認識サーバ400のデータ取得部420は、物体認識要求が受信されると、例えばNTP(Network Time Protocol)サーバなどの外部のタイムサーバにアクセスし(又はサーバ内部の時計を参照し)、入力画像の受信日時を取得する。そして、データ取得部420は、取得した受信日時に応じて、照明条件データを決定する。
【0059】
図9Aには、一例としての照明条件データ422aが示されている。照明条件データ422aは、「日付」及び「時間帯」という2つのデータ項目を有する。「日付」は、入力画像が受信された日付である。「時間帯」は、入力画像が受信された時刻が属する時間帯を表す区分である。一例として、「時間帯」は、次のように区分されてよい:
〜時間帯区分〜
1:未明 (0時〜3時)
2:明け方(3時〜日の出)
3:朝 (日の出〜9時)
4:昼前 (9時〜12時)
5:昼過ぎ(12時〜15時)
6:夕方 (15時〜日没)
7:夜 (日没〜21時)
8:深夜 (21時〜24時)
【0060】
図9Bは、照明条件データの取得方法の第2の例について説明するための説明図である。図9Bを参照すると、端末装置300は、入力画像(又は入力画像の特徴量)及び位置データを含む物体認識要求を、物体認識サーバ400へ送信する。物体認識サーバ400のデータ取得部420は、物体認識要求が受信されると、外部のタイムサーバにアクセスし又はサーバ内部の時計を参照し、入力画像の受信日時を取得する。その代わりに、端末装置300は、入力画像が撮像された日時を物体認識要求にさらに含めてもよい。物体認識要求に含まれる位置データは、入力画像を撮像した撮像装置の位置(例えば、撮像装置の緯度及び経度。以下、撮像位置という)を表す。次に、データ取得部420は、外部の気象情報サーバにアクセスし、入力画像が撮像され又は取得された日時の撮像位置における天候を表す天候データを取得する。天候データには、例えば、1時間単位の日射量、雲量及び降水量などのデータが含まれ得る。そして、データ取得部420は、取得した日時及び天候データに応じて、照明条件データを決定する。
【0061】
図9Bには、一例としての照明条件データ422bが示されている。照明条件データ422bは、「日付」、「時間帯」及び「天候」という3つのデータ項目を有する。「天候」は、例えば、天候データに含まれる日射量、雲量及び降水量などの値を所定の関数に代入することにより導かれる区分値(例えば、“快晴”を10とする10段階の値など)であってよい。
【0062】
図9Cは、照明条件データの取得方法の第3の例について説明するための説明図である。図9Cを参照すると、ユーザは、端末装置300から物体認識サーバ400へ物体認識要求を送信させるにあたり、現在の天候を表す情報(例えば、“快晴”を10とする10段階の区分値)を入力する。また、端末装置300は、外部のタイムサーバにアクセスし又は端末内部の時計を参照し、その時点の日時を取得する。そして、端末装置300は、入力画像(又は入力画像の特徴量)、日時及び天候データを含む物体認識要求を、物体認識サーバ400へ送信する。物体認識サーバ400のデータ取得部420は、物体認識要求が受信されると、照明条件データを決定する。
【0063】
図9Cには、一例としての照明条件データ422cが示されている。照明条件データ422cは、「日付」、「時間帯」及び「天候」という3つのデータ項目を有する。「日付」は、物体認識要求に含まれる日付である。「時間帯」は、物体認識要求に含まれる時刻が属する時間帯を表す区分である。「天候」は、物体認識要求に含まれる天候区分である。
【0064】
なお、データ取得部420は、図9A〜図9Cの例に限定されず、他の手法で照明条件データを取得してもよい。データ取得部420により取得される照明条件データは、入力画像が撮像された際の日付又は時刻に関する条件(以下、時間条件という)及び入力画像が撮像された際の天候に関する条件(以下、天候条件という)の少なくとも一方を含む。時間条件は、日付及び時間帯とは異なる種類のデータ(例えば、季節、月又は週など)を含んでもよい。また、天候条件は、図9A〜図9Cに例示したものとは異なる区分により表されてもよい。
【0065】
(データベース)
データベース430は、第1の実施形態に係るデータベース230と同様、2つ以上の画像の特徴量を記憶するデータベースである。データベース430においても、各画像の特徴量には、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが関連付けられる。データベース430は、互いに異なる照明条件で同じ物体を撮像した複数の画像を記憶する。
【0066】
図10は、本実施形態に係るデータベース430の構成の一例を示す説明図である。図10を参照すると、データベース430は、照明条件に関する属性項目として「日付」、「時間帯」及び「天候」という3つのデータ項目を有する。「日付」は、各特徴量セットに対応する画像が撮像された日付である。「時間帯」は、各特徴量セットに対応する画像が撮像された時刻が属する時間帯の区分(例えば、上述した8段階の区分)である。「日付」及び「時間帯」は、時間条件を構成する。「天候」は、各特徴量セットに対応する画像が撮像された際の天候の区分(例えば、上述した10段階の区分)である。図10の例では、「時間帯」及び「天候」について区分値のみを示している。
【0067】
(画像認識部)
画像認識部440は、第1の実施形態に係る物体認識サーバ200の画像認識部240と同様、入力画像から決定される特徴量をデータベース430により記憶されている各画像の特徴量と照合することにより、入力画像に映る物体を認識する。但し、本実施形態において、画像認識部440は、フィルタリング部450により抽出される特徴量のみを照合の対象とする。
【0068】
(フィルタリング部)
フィルタリング部450は、データベース430により記憶されている画像の特徴量から、データ取得部420により取得される照明条件データにより表される照明条件に近い照明条件で撮像された画像の特徴量を抽出する。その際、フィルタリング部450は、さらに、データ取得部420により取得される撮像位置に近い位置で撮像された物体についての画像の特徴量のみを抽出してもよい。
【0069】
[2−3.処理の流れ]
(物体認識処理)
図11は、本実施形態に係る物体認識サーバ400による物体認識処理の流れの一例を示すフローチャートである。
【0070】
図11を参照すると、まず、データ取得部420は、端末装置300から送信される物体認識要求に含まれる入力画像を取得する(ステップS202)。また、データ取得部420は、物体認識要求に入力画像を撮像した撮像装置の位置を表す位置データが含まれる場合には、当該位置データを取得する(ステップS204)。また、データ取得部420は、照明条件データを取得する(ステップS206)。
【0071】
次に、フィルタリング部450は、後に説明する位置フィルタリング処理を実行し、データベース430により記憶されている画像の特徴量から、撮像位置に近い位置で撮像された物体についての画像の特徴量を抽出する(ステップS210)。
【0072】
次に、フィルタリング部450は、後に説明する照明条件フィルタリング処理を実行し、位置フィルタリング処理後の画像の特徴量から、照明条件データにより表される照明条件に近い照明条件で撮像された画像の特徴量をさらに抽出する(ステップS220)。
【0073】
次に、画像認識部440は、データ取得部420により取得された入力画像から特徴量を決定する(ステップS232)。なお、物体認識要求に入力画像の特徴量が含まれる場合には、ステップS202及びS232の代わりに、データ取得部420により当該入力画像の特徴量が取得され得る。
【0074】
次に、画像認識部440は、照明条件フィルタリング処理後の画像の特徴量に含まれる各特徴量IDについて、ステップS236からステップS240までの処理を繰り返す(ステップS234)。
【0075】
ステップS236において、画像認識部440は、注目特徴量とステップS232において決定した入力画像の特徴量とを照合する(ステップS236)。そして、画像認識部440は、照合の結果として算出される照合スコアが所定の閾値を上回るか否かを判定する(ステップS238)。ここで、画像認識部440は、照合スコアが閾値を上回る場合には、注目特徴量の特徴量ID、位置及び姿勢並びに照合スコアを一時的にメモリに記録する(ステップS240)。
【0076】
その後、特徴量IDについてのループが終了すると、画像認識部440は、一時的にメモリに記録した特徴量IDのリストに基づいて、物体認識の結果を通信部210へ出力する(ステップS242)。
【0077】
(位置フィルタリング処理)
図12は、図11のステップS210における位置フィルタリング処理の流れの一例を示すフローチャートである。
【0078】
図12を参照すると、フィルタリング部450は、データベース430により記憶されている各特徴量IDについて、ステップS212からステップS216までの処理を繰り返す(ステップS211)。
【0079】
ステップS212において、フィルタリング部450は、注目特徴量IDのデータに位置属性の値が含まれるか否かを判定する(ステップS212)。位置属性の値は、例えば、図10のデータ例における「場所」という項目で表される。図10の例では、特徴量ID「F31」のデータは、位置属性の値を有しない。フィルタリング部450は、注目特徴量IDのデータに位置属性の値が含まれる場合には、注目特徴量IDの位置属性が示す位置と入力画像の撮像位置との差分から位置スコアを算出する(ステップS213)。一方、フィルタリング部450は、注目特徴量IDのデータに位置属性の値が含まれない場合には、位置スコアをゼロとする(ステップS214)。
【0080】
次に、フィルタリング部450は、位置スコアが所定の閾値を下回るか否かを判定する(ステップS215)。ここで、フィルタリング部450は、位置スコアが閾値を下回る場合には、候補リストに注目特徴量の特徴量IDを追加する(ステップS216)。
【0081】
その後、データベース430により記憶されている複数の特徴量IDについてのループが終了すると、フィルタリング部450は、位置フィルタリング処理の結果として候補リストを出力する(ステップS217)。
【0082】
(照明条件フィルタリング処理)
図13は、図11のステップS220における照明条件フィルタリング処理の流れの一例を示すフローチャートである。
【0083】
図13を参照すると、フィルタリング部450は、位置フィルタリング処理により出力された候補リストに含まれる各特徴量IDについて、ステップS222からステップS226までの処理を繰り返す(ステップS221)。なお、位置フィルタリング処理が省略される場合には、データベース430により記憶されている各特徴量IDについて処理が繰り返される。
【0084】
ステップS222において、フィルタリング部450は、注目特徴量IDのデータに照明条件属性の値が含まれるか否かを判定する(ステップS222)。フィルタリング部450は、注目特徴量IDのデータに照明条件属性の値が含まれる場合には、日付、時間帯区分及び天候区分の各々について、注目特徴量の属性値と照明条件データに記述されている入力画像の属性値との間の差分を算出する。そして、フィルタリング部450は、差分値を重み付け加算することにより、照明条件スコアを算出する(ステップS223)。一方、フィルタリング部450は、注目特徴量IDのデータに照明条件属性の値が含まれない場合には、照明条件スコアをゼロとする(ステップS224)。
【0085】
次に、フィルタリング部450は、照明条件スコアが所定の閾値を下回るか否かを判定する(ステップS225)。ここで、フィルタリング部450は、照明条件スコアが閾値を下回る場合には、候補リスト(位置フィルタリング処理における候補リストとは異なる新たなリスト)に注目特徴量の特徴量IDを追加する(ステップS226)。
【0086】
その後、フィルタリング部450は、ループが終了すると、照明条件フィルタリング処理の結果として新たな候補リストを出力する(ステップS227)。
【0087】
なお、物体認識サーバ400による処理の順序は、フローチャートに示した順序に限定されない。例えば、物体認識サーバ400は、位置フィルタリング処理の前に照明条件フィルタリング処理を実行してもよい。また、物体認識サーバ400は、位置フィルタリング処理及び照明条件フィルタリング処理の一方のみを実行してもよい。
【0088】
また、位置フィルタリング処理及び照明条件フィルタリング処理におけるフィルタリングの条件は、上述した例に限定されない。例えば、フィルタリング部450は、照明条件フィルタリング処理において、1つの照明条件スコアを閾値と比較する代わりに、日付、時間帯区分及び天候区分の各々の差分値をそれぞれの閾値と比較してもよい。その場合、フィルタリング部450は、1つ、2つ又は3つ全ての差分値が閾値を下回る注目特徴量の特徴量IDを、候補リストに追加し得る。
【0089】
(処理結果の例)
図14は、本実施形態における位置フィルタリング処理及び照明条件フィルタリング処理の結果の一例について説明するための説明図である。
【0090】
図14の上段には、データベース430に記憶されている位置フィルタリング処理の前の4つの画像の特徴量をそれぞれ象徴的に表す画像Im11、Im12、Im21及びIm41が示されている。画像Im11は、晴れた日の朝に物体B1を映した画像である。画像Im12は、曇りの日の昼に物体B1を映した画像である。画像Im21は、晴れた日の朝に物体B2を映した画像である。画像Im41は、晴れた日の朝に物体B4を映した画像である。なお、物体B4は、実空間内で物体B1の近くに位置している。
【0091】
ここで、物体B1を映した入力画像を含む物体認識要求が、晴れている日に端末装置300から受信されたものとする。当該物体認識要求は、物体B1の近くの撮像位置を示す位置データを含む。かかる物体認識要求に応じて、フィルタリング部450は、位置フィルタリング処理を行う。すると、物体B1の近くに存在しない物体B2を映した画像Im21の特徴量は、候補リストから除外される。図14の中段には、位置フィルタリング後に画像Im11、Im12及びIm41が残されていることが示されている。
【0092】
さらに、フィルタリング部450は、照明条件フィルタリング処理を行う。すると、曇りの日に撮像された画像Im21の特徴量は、候補リストから除外される。図14の下段には、照明条件フィルタリング後に画像Im11及びIm41のみが残されていることが示されている。
【0093】
その後、画像認識部440は、これら画像Im11及びIm41の特徴量と入力画像から決定される特徴量とを照合し、入力画像に物体B1が映っていることを認識する。
【0094】
[2−3.第2の実施形態のまとめ]
ここまで、図7〜図14を用いて、第2の実施形態に係る端末装置300及び物体認識サーバ400について詳細に説明した。本実施形態によれば、物体認識サーバ400による物体の認識に先立って、入力画像が撮像された際の照明条件に近い照明条件で撮像された画像の特徴量がデータベースから選択的に抽出される。そして、抽出された画像の特徴量のみを対象として、物体認識処理が行われる。上記データベースには、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量が含まれている。従って、入力画像が撮像される際の照明条件が様々に変化する状況において、特徴量の照合処理に要する時間の増大を抑制しつつ、入力画像に映る物体の認識の精度を高めることができる。
【0095】
また、入力画像が撮像された際の照明条件は、各画像が撮像された際の日付又は時刻に関する時間条件及び天候に関する天候条件の少なくとも一方を含む。これら条件は、画像に映る物体の見え方に大きく影響を与える条件である。従って、時間条件又は天候条件の近さを基準にフィルタリングを行うことで、物体認識のために有意な画像の特徴量を効率的に抽出することができる。
【0096】
また、時間条件及び天候条件のデータは、端末装置からサーバへ提供することも、サーバが端末装置とは異なる装置から取得することも可能である。端末装置とは異なる装置から時間条件及び天候条件のデータが取得される場合には、端末装置の実装が単純化されるため、開発コストを低く抑えながら上述した仕組みを実現することができる。
【0097】
なお、物体認識サーバ400は、端末装置300から取得される入力画像の特徴量を、当該入力画像についての撮像位置及び照明条件と関連付けてデータベース430に追加的に登録してもよい。また、登録に際して、物体認識の結果が正しかったか否かをユーザに確認し、正しかったというフィードバックを受けた場合にのみ入力画像の特徴量をデータベース430に登録してもよい。
【0098】
<3.第3の実施形態>
本節では、第3の実施形態として、照合処理に要する時間をさらに短縮する仕組みについて説明する。
【0099】
[3−1.サーバの構成例]
図15は、第3の実施形態に係る物体認識サーバ500の構成の一例を示すブロック図である。図15を参照すると、物体認識サーバ500は、通信部210、データ取得部420、データベース430、画像認識部540、フィルタリング部450、集計部560及び頻度メモリ570を備える。
【0100】
(集計部)
集計部560は、入力画像の撮像位置又は入力画像が撮像された際の照明条件に関する所定の単位ごとに、画像認識部540により各物体が認識された頻度を集計する。撮像位置に関する所定の単位とは、例えば、撮像装置が位置し得る地理的領域をメッシュ上に区分けした各領域であってよい。照明条件に関する所定の単位とは、例えば、時間帯区分若しくは天候区分の各区分、又はこれら区分の各組合せであってよい。そして、集計部560は、集計の結果を表す頻度集計データを頻度メモリ570に記憶させる。
【0101】
(頻度メモリ)
頻度メモリ570は、半導体メモリ又はハードディスクなどの記憶媒体を用いて、集計部560により集計される各物体の認識の頻度を表す頻度集計データを記憶する。
【0102】
図16を参照すると、一例としての頻度集計データ572が示されている。頻度集計データは、「領域ID」、「照明条件区分」、「物体ID」及び「頻度」という4つのデータ項目を有する。「領域ID」は、区分けされた各領域を一意に識別するための識別子である。「照明条件区分」は、照明条件に関する単位に相当する区分である。「物体ID」は、画像認識部540により認識された物体の物体IDである。「頻度」は、対応する「領域ID」、「照明条件区分」及び「物体ID」の組合せについて集計された頻度の値を表す。
【0103】
(画像認識部)
画像認識部540は、第1の実施形態に係る物体認識サーバ200の画像認識部240と同様、入力画像から決定される特徴量をデータベース430により記憶されている各画像の特徴量と照合することにより、入力画像に映る物体を認識する。また、本実施形態においても、画像認識部540は、フィルタリング部450により抽出される特徴量のみを照合の対象としてよい。さらに、本実施形態において、画像認識部540は、新たに取得される入力画像に対応する撮像位置及び照明条件の少なくとも一方について、集計部560により集計された物体ごとの頻度を参照し、頻度の高い物体を撮像した画像の特徴量を優先的に入力画像から決定される特徴量と照合する。
【0104】
例えば、図16に例示した頻度集計データ572において、領域A、照明条件区分Lについて集計部560により集計された頻度は、物体B2(50件)、物体B5(10件)、物体B7(8件)の順に高い値を示している。従って、画像認識部540は、新たに取得される入力画像が領域Aにおいて照明条件区分Lに属する照明条件で撮像された画像であれば、当該入力画像の特徴量に対して物体B2を撮像した画像の特徴量を優先的に照合する。そして、画像認識部540は、例えば、優先的に照合した画像の特徴量が所定の閾値を上回る照合スコアを示す場合には、その照合スコアを示す物体が入力画像に映っていると認識する。
【0105】
[3−2.処理の流れ]
図17は、本実施形態に係る物体認識サーバ500による物体認識処理の流れの一例を示すフローチャートである。
【0106】
図17を参照すると、まず、データ取得部420は、端末装置300から送信される物体認識要求に含まれる入力画像を取得する(ステップS302)。また、データ取得部420は、物体認識要求に含まれる位置データを取得する(ステップS304)。さらに、データ取得部420は、照明条件データを取得する(ステップS306)。
【0107】
次に、画像認識部540は、データ取得部420により取得された位置データ及び照明条件データに基づいて、撮像位置の属する領域及び照明条件区分に対応する頻度集計データを、頻度メモリ570から取得する(ステップS308)。次に、画像認識部540は、取得したデータに含まれる物体IDを頻度の高い順にソートする(ステップS310)。
【0108】
次に、画像認識部540は、データ取得部420により取得された入力画像から特徴量を決定する(ステップS312)。なお、物体認識要求に入力画像の特徴量が含まれる場合には、ステップS302及びS312の代わりに、データ取得部420により当該入力画像の特徴量が取得され得る。
【0109】
次に、画像認識部540は、ステップS310においてソートされた頻度集計データ内の未処理の最上位の物体IDに対応する画像の特徴量をデータベース430から取得する(ステップS314)。ここで取得される画像の特徴量は、照明条件フィルタリング処理によって抽出された画像の特徴量であってもよい。
【0110】
次に、画像認識部540は、取得した特徴量とステップS312において決定した入力画像の特徴量とを照合する(ステップS316)。そして、画像認識部540は、照合の結果として算出される照合スコアが所定の閾値を上回るか否かを判定する(ステップS318)。ここで、照合スコアが閾値を上回っていない場合には、処理はステップS314に戻り、次に頻度の高い物体IDに対応する画像の特徴量について処理が繰り返される。
【0111】
一方、画像認識部540は、照合スコアが閾値を上回る場合には、照合の対象とした物体IDにより識別される物体が入力画像に映っていると認識する。そして、画像認識部540は、物体認識の結果を通信部210へ出力する(ステップS320)。また、集計部560は、新たな物体認識の結果に基づいて、頻度メモリ570により記憶されている頻度集計データを更新する(ステップS322)。
【0112】
[3−3.第3の実施形態のまとめ]
ここまで、図15〜図17を用いて、第3の実施形態に係る物体認識サーバ500について詳細に説明した。本実施形態によれば、入力画像の撮像位置及び照明条件に関する所定の単位ごとに各物体が認識された頻度が集計される。そして、新たに入力画像が取得されると、当該入力画像に対応する撮像位置又は照明条件について集計された頻度の高い物体を撮像した画像の特徴量が、入力画像から決定される特徴量と優先的に照合される。即ち、入力画像に適合する可能性が高いと統計的に予測される画像の特徴量が他の特徴量よりも先に入力画像と照合されるため、物体認識の結果が出力されるまでの時間をさらに短縮することができる。
【0113】
なお、ほぼ同じ場所(及び撮像装置の向き)で撮像された入力画像についての過去の物体認識の結果が存在する場合には、画像認識部540は、新たに特徴量の照合処理を実行することなく、過去の物体認識の結果を物体認識要求の送信元の端末装置300へそのまま提供してもよい。
【0114】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0115】
なお、本明細書において説明した端末装置と物体認識サーバとは、一体に構成される1つの装置であってもよい。また、各装置による一連の制御処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。ソフトウェアを構成するプログラムは、例えば、各装置の内部又は外部に設けられる記憶媒体に予め格納される。そして、各プログラムは、例えば、実行時にRAM(Random Access Memory)に読み込まれ、CPU(Central Processing Unit)などのプロセッサにより実行される。
【符号の説明】
【0116】
100,300 端末装置
110 通信部
120 撮像部
170,370 制御部
200,400,500 情報処理装置(物体認識サーバ)
210 通信部
220,420 データ取得部
230,430 データベース
240,440,540 画像認識部
450 フィルタリング部
560 集計部


【特許請求の範囲】
【請求項1】
2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている前記データベースと、
撮像装置により撮像された入力画像を取得する取得部と、
前記入力画像から決定される特徴量を前記データベースにより記憶されている各画像の特徴量と照合することにより、前記入力画像に映る物体を認識する認識部と、
を備え、
前記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含む、
情報処理装置。
【請求項2】
前記取得部は、前記入力画像が撮像された際の照明条件を表す照明条件データをさらに取得し、
前記情報処理装置は、前記データベースにより記憶されている前記2つ以上の画像の特徴量から、前記照明条件データにより表される照明条件に近い照明条件で撮像された画像の特徴量を抽出するフィルタリング部、をさらに備え、
前記認識部は、前記フィルタリング部により抽出される画像の特徴量を、前記入力画像から決定される特徴量と照合する、
請求項1に記載の情報処理装置。
【請求項3】
前記照明条件は、各画像が撮像された際の天候に関する第1の条件を含む、請求項2に記載の情報処理装置。
【請求項4】
前記取得部は、前記入力画像を撮像した撮像装置の位置を表す位置データと前記入力画像が撮像され又は取得された日時とに基づいて、前記第1の条件についての前記照明条件データを取得する、請求項3に記載の情報処理装置。
【請求項5】
前記照明条件は、各画像が撮像された際の日付又は時刻に関する第2の条件を含む、請求項2に記載の情報処理装置。
【請求項6】
前記情報処理装置は、
端末装置から送信される前記入力画像を受信し、前記認識部により認識される物体に関する情報を前記端末装置へ送信する通信部、
をさらに備える、請求項1に記載の情報処理装置。
【請求項7】
前記情報処理装置は、
端末装置から送信される前記入力画像を受信し、前記認識部により認識される物体に関する情報を前記端末装置へ送信する通信部、
をさらに備え、
前記取得部は、前記端末装置とは異なる装置から前記照明条件データを取得する、
請求項2に記載の情報処理装置。
【請求項8】
前記データベースにおいて、各画像に映る物体の位置を表す属性値が各画像の特徴量にさらに関連付けられており、
前記取得部は、前記入力画像を撮像した前記撮像装置の位置を表す位置データをさらに取得し、
前記フィルタリング部は、前記位置データにより表される前記撮像装置の位置に近い位置で撮像された物体についての画像の特徴量のみを抽出する、
請求項2に記載の情報処理装置。
【請求項9】
前記取得部は、前記入力画像を撮像した前記撮像装置の位置を表す位置データ、及び前記入力画像が撮像された際の照明条件を表す照明条件データの少なくとも一方をさらに取得し、
前記情報処理装置は、前記撮像装置の位置又は前記照明条件に関する所定の単位ごとに前記認識部により各物体が認識された頻度を集計する集計部、をさらに備え、
前記認識部は、新たに取得される入力画像に対応する前記撮像装置の位置又は前記照明条件について前記集計部により集計された頻度を参照し、当該頻度の高い物体を映した画像の特徴量を優先的に前記入力画像から決定される特徴量と照合する、
請求項1に記載の情報処理装置。
【請求項10】
2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている前記データベースを備える情報処理装置における物体認識方法であって、
前記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含み、
前記物体認識方法は、
撮像装置により撮像された入力画像を取得するステップと、
前記入力画像から決定される特徴量を前記データベースにより記憶されている各画像の特徴量と照合することにより、前記入力画像に映る物体を認識するステップと、
を含む物体認識方法。
【請求項11】
2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられている前記データベースを備える情報処理装置を制御するコンピュータを、
撮像装置により撮像された入力画像を取得する取得部と、
前記入力画像から決定される特徴量を前記データベースにより記憶されている各画像の特徴量と照合することにより、前記入力画像に映る物体を認識する認識部と、
として機能させるためのプログラムであって、
前記データベースにより記憶される特徴量は、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を含む、
プログラム。
【請求項12】
2つ以上の画像の特徴量を記憶するデータベースであって、各画像に映る物体を識別するための識別情報と当該物体が撮像された際の照明条件に関する属性値とが各画像の特徴量に関連付けられており、互いに異なる照明条件で同じ物体を撮像した複数の画像の特徴量を記憶している前記データベースを有する情報処理装置との間で通信する通信部と、
撮像装置により撮像された撮像画像又は当該撮像画像から決定される特徴量、及び当該撮像画像が撮像された際の照明条件に関するデータを、前記通信部から前記情報処理装置へ送信させる制御部と、
を備える端末装置。
【請求項13】
前記制御部は、拡張現実アプリケーションを実行する際に、前記撮像画像又は前記特徴量及び前記照明条件に関するデータを前記通信部から前記情報処理装置へ送信させる、請求項12に記載の端末装置。


【図1】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図2C】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9A】
image rotate

【図9B】
image rotate

【図9C】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−203668(P2012−203668A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−67961(P2011−67961)
【出願日】平成23年3月25日(2011.3.25)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】