(57)【要約】【課題】画像に含まれている対象物を認識するときに、適切な画像認識装置等を提供すること。【解決手段】画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた画像認識装置において、前記記憶部は、地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しており、前記制御部は、前記画像入力部から画像データを取得し、前記位置情報取得部により取得された地域に対応する前記第１のモデルと前記第２のモデルとを特定し、前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識することを特徴とする。【選択図】図１
2019139346.tif 000002
【特許請求の範囲】
【請求項１】
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、
前記記憶部は、地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しており、
前記制御部は、
前記画像入力部から画像データを取得し、
前記位置情報取得部により取得された地域に対応する前記第１のモデルと前記第２のモデルとを特定し、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする画像認識装置。
【請求項２】
前記第１のモデル又は前記第２のモデルはニューラルネットワークのモデルであり、
前記制御部は、
前記画像データを前記ニューラルネットワークにおける入力層に入力し、出力層からの出力を対象物の認識結果として認識することを特徴とする請求項１に記載の画像認識装置。
【請求項３】
前記第１のモデルは、対象物が第２のモデルで認識可能な場合、前記ニューラルネットワークの出力として、対象物が第２のモデルで認識可能であることを示す出力を得るように構成されていることを特徴とする請求項２に記載の画像認識装置。
【請求項４】
前記第２のモデルは、対象物が第１のモデルで認識可能な場合、前記ニューラルネットワークの出力として、対象物が第１のモデルで認識可能であることを示す出力を得るように構成されていることを特徴とする請求項２に記載の画像認識装置。
【請求項５】
前記制御部は、
前記第１のモデル及び第２のモデルを用いても画像データに含まれる対象物を認識できない場合は、第１のモデル又は第２のモデルに、当該対象物を第１のモデル又は第２のモデルに学習させることを特徴とする請求項２から４の何れか１項に記載の画像認識装置。
【請求項６】
サーバ装置と接続可能な通信部を更に有し、
前記制御部は、
前記記憶部が記憶するモデルよりも新しいモデルが前記サーバ装置に記憶されている場合には、前記サーバ装置から当該新しいモデルを受信する、
ことを特徴とする請求項１から５の何れか一項に記載の画像認識装置。
【請求項７】
画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた端末装置と、サーバ装置とを備え、
前記サーバ装置は、
地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しており、
前記端末装置における制御部は、
前記画像入力部から画像データを取得し、
前記サーバ装置から、前記位置情報取得部により取得された地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを受信して前記記憶部に記憶し、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする画像認識システム。
【請求項８】
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、前記記憶部は、地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しているコンピュータにおいて、
前記画像入力部から画像データを取得するステップと、
前記位置情報取得部により取得された地域に対応する前記第１のモデルと前記第２のモデルとを特定するステップと、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識するステップと、
を実現することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像認識装置等に関する。
【背景技術】
【０００２】
近年、ニューラルネットワーク技術を用いて、画像に写っている対象物が何かを認識して、画面に表示する画像認識装置が知られている。
【０００３】
このような技術は、例えば、観光地において、カメラで写した画像に写っている対象物を認識し、認識した名称に関する説明情報を表示したり読み上げたりといった用途に使うことができる。このとき、全国、広くは全世界の観光地の対象物は数が多く、それら全てを認識できるニューラルネットワークを構築すると、対象物の候補が多くなりすぎて、認識の精度が低下することがある。
【０００４】
画像に写っている対象物を認識する場合において認識精度を高める方法には、例えば特許文献１に示される技術がある。特許文献１には、画像認識のためのデータベースを地域毎に備え、画像が撮像された地域に基づいてデータベースを選択し、選択されたデータベースを用いて対象物を特定する技術が開示されている。この技術によれば、画像が撮像された地域に基づいて対象物の候補を絞り込むことができるため、認識精度を高めることができる。
【０００５】
上記のニューラルネットワークを用いた画像認識技術においても、この特許文献１に開示された技術を応用し、ニューラルネットワークをエリア（地域）毎に分け、画像が撮像されたエリアの情報に基づいてニューラルネットワークを選択し、選択したニューラルネットワークを用いて対象物の認識を行うようにすれば、認識精度を高めることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１７−１３００７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ニューラルネットワークをエリア毎に分けた場合、山やタワーなどのように、そのエリアには存在しないが、そのエリアから撮像可能な大きなものを、そのエリアのニューラルネットワークでは認識できなくなる、といった問題があった。
【０００８】
上述した課題に鑑み、本発明が目的とするのは、画像に含まれている対象物を適切に認識することができる画像認識装置等を提供することである。
【課題を解決するための手段】
【０００９】
本発明の画像認識装置は、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、
前記記憶部は、地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しており、
前記制御部は、
前記画像入力部から画像データを取得し、
前記位置情報取得部により取得された地域に対応する前記第１のモデルと前記第２のモデルとを特定し、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする。
【００１０】
本発明の画像認識システムは、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた端末装置と、サーバ装置とを備え、
前記サーバ装置は、
地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しており、
前記端末装置における制御部は、
前記サーバ装置から、前記位置情報取得部により取得された地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを受信して前記記憶部に記憶し、
前記画像入力部から画像データを取得し、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする。
【００１１】
本発明のプログラムは、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、前記記憶部は、地域に対応した第１のモデルと、当該地域を含む複数の地域に対応する第２のモデルとを記憶しているコンピュータにおいて、
前記画像入力部から画像データを取得するステップと、
前記位置情報取得部により取得された地域に対応する前記第１のモデルと前記第２のモデルとを特定するステップと、
前記画像データに含まれる対象物を、前記第１のモデルを用いて認識した結果と、前記第２のモデルを用いて認識した結果とを参照して認識するステップと、
を実現することを特徴とする。
【発明の効果】
【００１２】
本発明の画像認識装置によれば、２つのモデルを用いて画像に含まれている対象物を認識することができるため、適切に対象物を認識することができる。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態におけるシステム全体を説明するための図である。
【図２】第１実施形態における端末装置の機能構成を説明するための図である。
【図３】ニューラルネットワークの説明をするための図である。
【図４】第１実施形態におけるサーバ装置の機能構成を説明するための図である。
【図５】第１実施形態におけるエリアの構成について説明するための図である。
【図６】第１実施形態におけるエリアのバージョンについて説明するための図である。
【図７】第１実施形態におけるニューラルネットワークの構成を説明するための図である。
【図８】第１実施形態におけるメイン処理の流れを説明するためのフローチャートである。
【図９】第１実施形態における画像認識処理の流れを説明するためのフローチャートである。
【図１０】第２実施形態における画像認識処理の流れを説明するためのフローチャートである。
【図１１】第３実施形態におけるメイン処理の流れを説明するためのフローチャートである。
【図１２】第３実施形態における画面例を説明するための図である。
【図１３】第４実施形態における端末装置及びサーバ装置の機能構成を説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本発明の実施の形態について、図を参照しながら詳細に説明する。本実施形態では、本発明の画像認識装置を、通話可能な携帯型の端末装置（例えば、携帯電話やスマートフォン、タブレット等）に適用した場合について説明する。すなわち、画像認識プログラムを端末装置で実行することにより、端末装置上に画像認識機能を実現し、端末装置を画像認識装置として利用する場合である。
【００１５】
なお、端末装置としては、他の装置であっても良いことは勿論である。例えば、上述した携帯電話・スマートフォンや、タブレット端末、電子辞書や電子書籍端末といった端末装置であったり、車載用カメラ、ノートパソコン等の端末装置であったりしても良い。
【００１６】
［１．第１実施形態］
［１．１  システム構成］
第１実施形態について説明する。まず、図１は本実施形態におけるシステム全体を説明するための図である。図１のシステム１では、端末装置１０が、ネットワークＮＷを介してサーバ装置２０に接続可能に構成されている。
【００１７】
端末装置１０と、ネットワークＮＷは、無線通信で接続されている。当該無線通信は、例えば、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎといったＷＬＡＮであったり、３ＧやＬＴＥに代表される移動通信網であったりしても良い。また、端末装置１０が他の装置や、アクセスポイントといった接続装置に近距離無線通信で接続され、それを介してネットワークＮＷに接続されることとしてもよい。また、有線のＬＡＮで接続されても良いことは勿論である。
【００１８】
サーバ装置２０は、例えば画像の認識処理を実現することができる装置である。ここで、本実施形態における画像認識処理は、端末装置１０で行ってもよいし、サーバ装置２０で行っても良い。また、本実施形態では、説明の都合上、端末装置１０で行っている処理をサーバ装置２０で行ってもよいし、同様に、サーバ装置２０で行っている処理を端末装置１０で行ってもよい。なお、端末装置１０で処理が完結する場合は、サーバ装置２０を必要としない。
【００１９】
詳細は後述するが、端末装置１０には、背面や前面にカメラ（不図示）が設けられており、対象物Ｐを撮影することが可能となっている。すなわち、カメラで撮影された画像に、対象物Ｐが含まれていると、端末装置１０はこの対象物Ｐを認識（例えば、対象物Ｐの名称を認識）することができる。
【００２０】
例えば、端末装置１０の表示画面Ｗ１０を示すと、表示画面Ｗ１０には、対象物Ｐが領域Ｒ１０に表示されており、この対象物Ｐの名称が領域Ｒ１２に表示される。これにより、利用者は現在撮影されている対象物が何であるかを認識することが可能となる。また、領域Ｒ１２には、対象物Ｐに関する説明文が併せて表示されてもよい。
【００２１】
なお、図１では、対象物Ｐの名称が表示されているが、必ずしもその必要は無い。例えば、対象物Ｐの名称を認識することにより、音声で名称を利用者に伝えたり、画像にタグ付けができたり、表示されている対象物から検索処理を行ったりすることが可能であってもよい。
【００２２】
また、認識という場合には、上述したように撮影された対象物を認識する場合だけでなく、予め対象物のパターンが決められており、撮影された対象物が当該パターンに該当するか否かといった認識をする場合も含まれる。例えば、車載用カメラの場合において、自動車や、自転車、歩行者といったパターンに一致するか否かで、対象物を認識するといったことも含まれる。
【００２３】
［１．２  機能構成］
続いて、端末装置１０及びサーバ装置２０の機能構成について図を用いて説明する。
【００２４】
［１．２．１  端末装置］
図２を参照して端末装置１０の機能構成について説明する。図２に示すように、端末装置１０は、制御部１００と、画像入力部１１０と、位置情報取得部１２０と、電話機能部１３０と、記憶部１４０と、表示部１５０と、操作部１６０と、通信部１７０とを備えて構成されている。
【００２５】
制御部１００は、端末装置１０の全体を制御している。制御部１００は、記憶部１４０に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えば１つまたは複数のＣＰＵ（Central Processing Unit）等により構成されている。
【００２６】
また、制御部１００は、画像認識部１０２及びモデル選択部１０４として機能する。例えば、記憶部１４０に記憶されているプログラムを読み出し、実行することで、画像認識部１０２、モデル選択部１０４の機能が実現される。
【００２７】
画像認識部１０２は、撮影（入力）された画像に対して認識処理を行うことにより、画像に含まれている対象物を認識する。
【００２８】
また、モデル選択部１０４は、上述した画像認識部１０２が画像を認識するときに利用するモデル（認識モデル）を選択する。
【００２９】
ここで、画像認識部１０２が行う、入力された画像データに含まれている（写っている）対象物の名称や属性を認識する方法としては、最近はディープラーニング（ディープニューラルネットワーク）が高い精度を出している。
【００３０】
これは、画像データから抽出された特徴量に基づいて、モデルを用いて対象物が何であるかを認識する。本実施形態でも一例として当該方法を利用する。このディープラーニングにおける処理について、図３を用いて簡単に説明する。
【００３１】
まず画像認識部１０２は、入力された画像データ（信号）を、複数の層と、各層に含まれるニューロンによって構成されるニューラルネットワークに入力する。各ニューロンは別の複数のニューロンから信号を受け取り、演算を施した信号を別の複数のニューロンへ出力する。ニューラルネットワークが多層構造の場合、信号が流れる順に、入力層、中間層（隠れ層）、出力層と呼ばれる。
【００３２】
ニューラルネットワークの中間層が複数の層からなっているものはディープニューラルネットワークと呼ばれ、これを用いた機械学習の手法をディープラーニングと呼ぶ。なお、画像認識で高い精度を出しているのは、畳み込み演算を持つConvolutional Neural Network（畳み込みニューラルネットワーク）である。
【００３３】
画像データはニューラルネットワークの各層のニューロンを各種演算（畳み込み演算、プーリング演算、正規化演算、行列演算等）をされ、形を変えながら流れ、出力層から複数の信号が出力される。
【００３４】
ニューラルネットワークからの複数の出力値は、それぞれ、名称に紐づいていて、値が最も大きい出力値に紐づく名称を対象物の名称と認識する、というような処理を行う。または、直接名称に紐づかずに、複数の出力値を分類器に通して、分類器の出力から名称やタグを認識するということも行われる。
【００３５】
ニューラルネットワークの各種演算に用いる係数であるパラメータは、事前にニューラルネットワークへ数多くの画像と、当該画像に写っている対象物が何かを示すラベルを入力し、出力値と正解値との誤差を、誤差逆伝播法（バックプロパゲーション）により、ニューラルネットワークを逆方向に伝搬し、各層のニューロンのパラメータを何度も更新することによって決まる。パラメータを更新し、決める工程を学習と呼ぶ。
【００３６】
ここで、ニューラルネットワークの構造や、個々の演算については、書籍や論文で解説された公知技術であり、その何れかの技術を利用すれば良い。
【００３７】
また、モデル選択部１０４は、取得された位置情報に基づいて、入力されている画像から対象物を認識する場合のモデルを選択する。モデルについての詳細は後述する。
【００３８】
ここで、画像認識部１０２及びモデル選択部１０４は、プログラムで提供されても良いし、ハードウェアとして提供されても良い。特に、畳み込みニューラルネットワークは、数多くの畳み込み演算や行列演算等を実行するため、ＧＰＵ（Graphics Processing Unit）等のハードウェアがあると処理を高速化することができる。プログラムとして提供される場合には、記憶部１４０に記憶されており、制御部１００が読み出して実行することにより、同一の機能を実現する。
【００３９】
また、画像認識部１０２及びモデル選択部１０４の各処理は、サーバ装置２０で実現されても良い。この場合は、端末装置１０から画像データをサーバ装置２０に送信し、当該処理結果を受信すればよい。この点についての動作については後述する。
【００４０】
図２に戻って、端末装置１０の機能構成についての説明を続ける。画像入力部１１０は、画像を撮影し、撮影された画像を画像データとして端末装置１０に入力するための機能部である。例えば、カメラ等により構成されており、撮像素子等によって画像を外部から入力し、入力された画像データは画像データ１４２として記憶部１４０に記憶される。
【００４１】
なお、画像入力部１１０が取得する画像は、画像入力部１１０を構成するカメラではなく、他の装置から入力された画像であっても良い。例えば、端末装置１０と、外部のカメラ装置とが接続されていて、カメラ装置において撮影された画像データが画像入力部１１０を介して端末装置１０に入力される、という構成になっていても良い。
【００４２】
位置情報取得部１２０は、端末装置１０における位置（すなわち、画像が撮影された位置）を位置情報として取得する。位置情報取得部１２０が取得する位置情報は、例えば緯度経度や、ランドマーク名である。また、位置情報を取得する方法としては、例えば、衛星測位システムとしてＧＮＳＳ（Global Navigation Satellite Systems）であるＧＰＳ（Global Positioning System）、ＧＡＬＩＬＥＯ、ＧＬＯＮＡＳＳ（Global Navigation Satellite System）、みちびき等を利用してもよく、携帯基地局や無線基地局から送信される位置情報を利用してもよい。また、画像データに位置情報が含まれている場合には、当該画像データに含まれている位置情報を利用してもよい。
【００４３】
電話機能部１３０は、端末装置１０が電話装置として機能する場合に実行される機能部である。電話機能部１３０は、例えばＬＴＥ回線経由で電話（通話）を行うことが可能である。なお、電話機能は従来からあるものであるため、説明を省略する。なお、一部のタブレット等の電話機能がない端末の場合は、電話機能部１３０をもたなくともよい。
【００４４】
なお、電話機能部１３０は、音声の会話などに利用される音声入力部１３２、音声出力部１３４を有している。音声入力部１３２は、代表的にはマイクである。音声出力部１３４は、代表的にはスピーカ、ヘッドフォンである。
【００４５】
記憶部１４０は、端末装置１０の動作に必要な各種プログラムや、各種データを記憶する。記憶部１４０は、例えば、半導体メモリであるＳＳＤ（Solid State Drive）や、ＨＤＤ（Hard Disk Drive）等により構成されている。
【００４６】
表示部１５０は、各種情報や画像データを表示する。例えば、液晶ディスプレイ（ＬＣＤ）や、有機ＥＬパネルにより構成されている。なお、表示部１５０は、無線やＨＤＭＩ（登録商標）等の有線により接続される外部の表示装置であってもよい。
【００４７】
操作部１６０は、利用者が端末装置１０に対して操作指示を入力するための機能部である。例えば、タッチパネルを利用したソフトウェアキーや、ハードウェアキーで構成されている。表示部１５０と一体に形成されていても良い。
【００４８】
通信部１７０は、ネットワークＮＷに接続する機能を提供する。例えば、ＷＬＡＮに接続するための通信モジュールであったり、ＬＴＥ通信網に接続するための通信モジュールであったりする。
【００４９】
これらの機能構成は一例であり、必ずしも端末装置１０が有していなくても良い。例えば、端末装置１０が操作部１６０を有しておらず、端末装置１０に対する入力機能が、例えば他の入出力装置（ＵＳＢやＢｌｕｅｔｏｏｔｈ（登録商標）接続されたマウス等）によって実現されても良い。また、画像入力部１１０が、例えばスマートウォッチに内蔵されたカメラが転送する画像を取得する構成であっても良い。
【００５０】
［１．２．２  サーバ装置］
図４を参照して、サーバ装置２０の機能構成について説明する。サーバ装置２０は、制御部２００と、記憶部２４０と、通信部２７０とを少なくとも有して構成されている。
【００５１】
制御部２００は、サーバ装置２０の全体を制御している。制御部２００は、記憶部２４０に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えば１つまたは複数のＣＰＵ（Central Processing Unit）等により構成されている。
【００５２】
記憶部２４０は、サーバ装置２０の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部２４０は、例えば、半導体メモリであるＳＳＤ（Solid State Drive）や、ＨＤＤ（Hard Disk Drive）等により構成されている。
【００５３】
また、記憶部２４０には、各モデルを記憶するモデルデータ２４２と、説明ＤＢ（データベース）２４４とが記憶されている。説明ＤＢ２４４は、対象物に対応づけて説明情報が記憶されているデータベースである。制御部２００は、対象物に基づいて説明情報を検索し、端末装置１０に送信する。
【００５４】
モデルデータ２４２には、本実施形態の画像認識で利用されるモデル（認識モデル）が複数記憶されている。なお、モデルについては後述する。
【００５５】
通信部２７０は、ネットワークＮＷに接続する機能を提供する機能部であり、例えば、イーサネット（登録商標）を利用してＬＡＮに接続するための通信モジュールである。通信部２７０は、ルータ装置等の中継装置を介してネットワークＮＷに接続されてもいてもよい。また、ネットワークＮＷに接続する機能を提供していれば、例えばＬＴＥ通信網に接続するための通信モジュールであってもよい。
【００５６】
［１．３  モデルの説明］
［１．３．１  エリアモデルと広域モデル］
ここで、本実施形態において、画像認識部１０２が、画像から対象物を認識するときに利用するモデル（認識モデル）について、説明する。なお、モデルはグラフとも呼ばれる。
【００５７】
ここで、一般的に、ニューラルネットワークは、事前に学習した対象物しか認識することができず、新しい対象物を認識可能にするには、ニューラルネットワークが出力する数値の個数の変更と、再学習が必要となる。ただし、ニューラルネットワークから出力された特徴量を用いて分類器で認識を行う場合などは、分類器の変更だけで済むこともある。
【００５８】
また、数多くのものを一つのニューラルネットワークで画像認識させようとすると、ニューラルネットワークや各種演算に使われるパラメータ（モデル）が大きくなり、データサイズが大きくなる。
【００５９】
例えば、全国の観光地の対象物を全て認識できるようなモデルはデータサイズが大きくなり、また、新しい対象物を認識可能にするときに、学習に時間がかかる、モデルが大きいから画像認識に時間がかかる、認識対象物の数が多いから認識精度が上がりにくい、といった問題がある。
【００６０】
したがって、このような問題を解決するために、モデルを分ける手法が有効である。本実施形態では、エリア毎にモデルを分けて、切り替えて使用することにする。
【００６１】
ここで、モデルはエリア情報とセットで記憶領域（例えば、データベース）に記憶されている。ここで、エリア情報とは、地図上の領域の情報である。
【００６２】
画像認識を行う場合、この端末装置の位置情報が含まれるエリアに対応したモデルを使用することとなる。具体的には、モデルファイルのデータベースから、位置情報が含まれるエリアを探し、見つかったエリアに対応したモデルを画像認識に使用する。
【００６３】
図５（ａ）は、エリアについて説明する図である。例えば、地図上において、エリア１、エリア２、エリア３、・・・、エリアＸと複数のエリアに分割する。そして、分割されたエリア毎に対応してモデルが記憶される。
【００６４】
図５（ｂ）は、モデルを説明するための図である。地図上の領域を示すエリア情報に、当該エリアに対応づけられたモデルが記憶される。ここで、エリアに対応したモデルをエリアモデルという。例えば、エリア１情報（エリア１の地図情報）に対応するモデルがエリアモデル１を示している。このように、エリア毎にモデルが存在する。
【００６５】
更に、複数のエリアに共通するモデルとして、広域モデルが記憶されている。例えば、広域モデルは、複数のエリアから見ることのできる対象物が記憶されている。本実施形態において、複数のエリアから認識可能な対象物が記憶されているモデルを広域モデルといっている。
【００６６】
例えば、図５（ｂ）に示すように、エリアモデル１、エリアモデル２、エリアモデル３は、それぞれのエリアに記憶されている対象物であるランドマーク（寺、銅像、建物等）が記憶されている。そして、各エリアから見ることができる対象物であるランドマーク等（山、タワー、高層ビル等）が広域モデルＣ１に記憶される。
【００６７】
具体的な例を使って説明する。
エリア１情報（東京）：エリアモデル１＝浅草寺、上野動物公園、東京駅、…
エリア２情報（埼玉）：エリアモデル２＝鉄道博物館、埼玉県庁、大宮駅、…
エリア３情報（千葉）：エリアモデル３＝幕張メッセ、成田空港、千葉駅、…
広域モデルＣ１＝東京スカイツリー、富士山、…
【００６８】
今エリア情報として、地図上の情報が記憶されている。ここで、エリア情報は、緯度経度情報等の地図上における所定の領域を示す情報であればよい。各エリアに含まれるランドマークが対象物として記憶されている。
【００６９】
ここで、広域モデルＣ１には、各エリアから見える対象物（ランドマーク等）が記憶されている。なお、ユニークな対象物だけでなく、複数のエリアに存在する形状や外観がそっくりな対象物を広域モデルに含めてしまってもよい。
【００７０】
画像認識を端末装置１０で行う場合、端末装置１０は、位置情報に対応したモデル（エリアモデル及び／又は広域モデル）をサーバ装置２０からダウンロードすることで、適切に対象物を認識することができる。
【００７１】
［１．３．２  モデルのバージョン管理］
上述したモデルが記憶されているデータ（例えば、モデルファイル）にはバージョン情報が付加されていてもよい。
【００７２】
例えば、画像認識を端末装置１０で行う場合、端末装置１０に記憶されているモデルファイルのバージョンと、サーバ装置２０に記憶されているモデルファイルのバージョンとを比較し、端末装置１０の方が小さければ（古ければ）更新を行う。
【００７３】
画像認識をサーバ装置２０で行う場合、端末装置１０は、サーバ装置２０へ画像と位置情報を送信し、画像認識の結果を受信する。モデルファイルの更新は、サーバ装置２０内で行われる。
【００７４】
端末装置１０のモデルファイルを更新する処理について、図６を参照して具体的に説明する。図６は、上側がサーバ装置２０におけるモデルデータ２４２に含まれるエリアモデルの一例であり、下側が端末装置１０におけるモデルデータ１４４に含まれるエリアモデルの一例である。
【００７５】
各エリアモデルには、バージョンが管理されている。例えば、エリアモデル１は、端末装置１０におけるバージョンが「１．２」、サーバ装置２０におけるバージョンが「１．１」である。したがって、端末装置１０は、そのままバージョン「１．２」のエリアモデル１を使用する。
【００７６】
それに対して、エリアモデル２は、端末装置１０におけるバージョンが「１．１」であるが、サーバ装置２０におけるバージョンが「１．２」である。この場合、端末装置１０は、サーバ装置２０から新しいエリアモデルをダウンロードして記憶する。
【００７７】
また、エリアモデルＸは、端末装置１０におけるバージョンは「１．１」、サーバ装置２０におけるバージョンは「１．１」であり、同じである。この場合は、通常ダウンロードを行わないが、行うこととしてもよい。
【００７８】
なお、図６では、エリアモデルを例に説明したが、広域モデルでも同様である。また、モデルファイルはエリア情報とセットであるため、エリア情報も併せて更新される。ここで、エリア情報に変更があると、他のエリアとの重なりや、空白領域が生まれる場合があるため、隣接エリアのファイルも併せて更新してもよい。
【００７９】
［１．３．３  モデルによる画像認識］
つづいて、モデルを利用して、画像を認識する処理の概要について説明する。まず、上述したモデルは、事前にディープラーニングによる学習によりウェイトなどのパラメータが調整される。
【００８０】
一般的に、学習では、モデルに何度も教師画像を入力し、モデルからの複数個の出力のうち、教師画像のラベル紐付く位置の出力が最も大きくなるように、誤差逆伝搬によりパラメータを更新する。
【００８１】
本実施形態の画像認識は、画像をモデル（エリアモデル）へ入力し、複数個の数値を出力するが、複数個の出力のうち、少なくとも１つを複数のエリアから見ることができるものが含まれるクラス（その他クラス、広域クラス）に割り当てる。それ以外の出力に紐付くクラスは、それぞれ認識可能な対象物に紐付く。なお、後述する閾値を用いる場合などは、その他クラスへの割り当てを不要にすることもできる。
【００８２】
その他クラス（広域モデル）の学習は、モデルに教師画像である複数のエリアで見ることができるものを含む画像を何度も入力し、その他クラスに紐付く位置の出力が最も大きくなるように、パラメータを更新する。ただし、その他クラスの学習は、全体の学習の中で行われる。なお、その他クラスが複数あって、モデルの出力のうちの複数個が、その他クラス１、その他クラス２、・・・に紐付いていても良い。
【００８３】
すなわち、あるエリアモデルに対し、複数の広域モデルが対応づけられて記憶されてもよい。
【００８４】
図７は、エリアモデルと、その他として出力された場合の広域モデルとの関係を示した図である。１回目の画像認識では、モデル１のエリアモデルが使用される。そして、１回目の画像認識の出力結果が、その他クラス以外のクラスであった場合には、画像認識結果として出力結果のクラスに対応する対象物が出力される。
【００８５】
１回目の画像認識の出力結果がその他クラスであった場合、別のモデル（広域モデルＣ１）を用いて、２回目の画像認識が行われる。つまり、その他クラスの場合は、広域モデルＣ１を用いるという情報が、モデルファイルに記憶されている。なお、その他クラスの判定は、その他以外のクラスの出力値が、どれも閾値に達しなかった場合に、その他クラスと判定しても良い。この場合、ニューラルネットワークからの出力にその他クラスがなくても判定することができる。
【００８６】
なお、各エリアモデルにおいては、対象物が広い範囲で撮影できるような場合に、出力結果がその他クラスになるように学習を行う。すなわち、画像データを入力層のニューロン群に入力した場合に、画像データの対象物名に関連付けてその他クラスが出力されるように、ニューロン間の重み係数を修正する。
【００８７】
このように、エリア内において撮影された対象物が、エリアに存在しない場合であっても、他のモデル（ここでは、広域モデル）を利用することで、対象物を認識することができるようになる。
【００８８】
また、エリア毎に分けてモデルを管理することから、データ量を削減できるだけではなく、認識精度の向上にも繋がることとなる。
【００８９】
［１．４  処理の流れ］
［１．４．１  メイン処理］
続いて、本実施形態における処理の流れについて、図８のフローチャートを用いて説明する。まず、制御部１００は、画像（画像データ）を取り込む（ステップＳ１０２）。具体的には、画像入力部１１０のカメラが撮影した、対象物を含む画像を、画像データ１４２に記憶させる。
【００９０】
なお、画像入力部１１０は、画像データ１４２として、カメラで撮影した画像ではなく、例えばファイルから読み込んだ画像データを使用してもよく、他の装置から転送された画像データを使用してもよい。
【００９１】
つづいて、制御部１００は、位置情報を取得する（ステップＳ１０４）。位置情報の取得方法としては、位置情報取得部１２０から位置情報を取得してもよいし、画像データに付加されている撮影時の位置情報を取得してもよい。
【００９２】
つづいて、画像認識部１０２（制御部１００）は、画像データに対して画像認識処理を実行する（ステップＳ１０６）。画像認識部１０２により画像認識処理が実行されると、対象物の名前やＩＤが出力される。なお、画像認識処理については、別の図を使って後述する。
【００９３】
制御部１００は、認識された対象物に対応する説明情報を説明ＤＢ１４６から検索し、該当する説明情報があった場合には説明画面として表示する（ステップＳ１０８→ステップＳ１１０）。
【００９４】
［１．４．２  画像認識処理］
図８のステップＳ１０６で実行される、画像認識部１０２が実行する画像認識処理について、図９を参照して説明する。
【００９５】
まず、モデル選択部１０４は、画像認識に利用するモデル（エリアモデル）を選択する。具体的な動作としては、モデル選択部１０４（制御部１００）は、位置情報に対応するエリアを特定する（ステップＳ１５２）。
【００９６】
すなわち、エリア情報を参照して、位置情報として取得された場所が含まれるエリアを特定する。そして、このエリアに対応するエリアモデルが、モデルデータ１４４に記憶されていない場合には、エリア情報とエリアモデルとを取得する（ステップＳ１５４；Ｎｏ→ステップＳ１５６）。
【００９７】
そして、画像認識部１０２は、位置情報に対応するエリアのエリアモデルをモデルデータ１４４から読み込み（ステップＳ１５８）、画像認識を行う（ステップＳ１６０）。ここで、対象物の認識結果がある場合（すなわち、その他クラス以外と認識された場合）は、画像認識が完了したため、本処理を終了する。
【００９８】
ここで、対象物の認識ができなかった場合（すなわち、その他クラスと認識された場合）、現在のエリアモデルに対応する広域モデルが記憶されているか否かを判定する（ステップＳ１６４）。ここで、画像認識部１０２は、広域モデルが記憶されていなければ、広域モデルを取得する（例えば、サーバ装置２０からダウンロードする）（ステップＳ１６６）。そして、画像認識部１０２は、広域モデルを利用して画像認識を実行し、認識結果を出力して本処理を終了する（ステップＳ１６８）。
【００９９】
このように、本実施形態によれば、一度エリアモデルというエリアに対応した認識モデルを利用して、ニューラルネットワークを利用することにより画像を認識する。そして、画像を認識した結果を対象物の名称やＩＤとして出力する。
【０１００】
また、エリアに対応した認識モデルで認識できなかった場合には、複数のエリアから見える対象物が学習された広域モデルを利用して、再度画像認識を行う。このように、画像を認識する場合に、モデルを２段階に適用することから、より適切な画像認識を行うことが可能となる。また、モデルが小さくなるので学習や認識に要する時間が短縮できる、という効果も期待できる。
【０１０１】
［２．第２実施形態］
つづいて、第２実施形態について説明する。第２実施形態は、第１実施形態とモデルを入れ替えて処理を行うものである。具体的には、最初に広域モデルで画像を認識し、そこでその他クラスと出力された（認識出来なかった）場合に、エリアモデルで画像を認識する実施形態である。
【０１０２】
なお、本実施形態における構成、処理等は原則第１実施形態と同様であり、異なる部分を中心に説明する。具体的には、第１実施形態における図９の画像認識処理を、図１０の画像認識処理に置き換えた実施形態である。
【０１０３】
まず、モデル選択部１０４（制御部１００）は、位置情報取得部１２０から位置情報を取得し、位置情報が含まれるエリアを特定する（ステップＳ２０２）。そして、当該エリアに対応する広域モデルがモデルデータ１４４に記憶されていない場合には、エリア情報と、エリアモデルと、広域モデルとを取得する（ステップＳ２０６）。
【０１０４】
ここで、当該エリアに対応する広域モデルについて、図５を例に説明する。例えば、位置情報取得部１２０により、エリア２にいることが取得された場合、エリア２に対応するエリアモデルはエリアモデル２である。また、エリアモデル２は、広域モデルＣ１に紐付けられている。そこで、本実施形態では、広域モデルＣ１が記憶されているか否かを判定する。もし、広域モデルＣ１が記憶されていない場合には、広域モデルＣ１と、必要であれば、エリアモデル２と、エリア２情報とが取得（サーバ装置２０からダウンロード）される。
【０１０５】
つづいて、画像認識部１０２は、エリアに対応する広域モデルを読み込み（ステップＳ２０８）、広域モデルに基づいて画像を認識する（ステップＳ２１０）。画像から対象物が認識されれば、本処理を終了する（ステップＳ２１２；Ｙｅｓ）。
【０１０６】
他方、画像認識部１０２は、広域モデルに基づいて画像が認識出来なかった場合（ステップＳ２１２；Ｎｏ）、今度はエリアモデルで画像認識を実行する（ステップＳ２１２；Ｎｏ→ステップＳ２１４）。
【０１０７】
このように、本実施形態によれば、広域モデルから先に画像を認識し、その後にエリアモデルで画像を認識することとなる。
【０１０８】
［３．第３実施形態］
つづいて、第３実施形態について説明する。第３実施形態は、対象物を学習する処理について説明する。
【０１０９】
なお、本実施形態における構成、処理等は原則第１実施形態と同様であり、異なる部分を中心に説明する。具体的には、第１実施形態における図８のメイン処理を、図１１のメイン処理に置き換えた実施形態である。
【０１１０】
画像認識処理を実行した結果、画像に含まれていた対象物が認識できなかった場合（ステップＳ３０２；Ｎｏ）、制御部１００は、対象物を学習するか否かを選択させる（ステップＳ３０４）。
【０１１１】
ここで、利用者により対象物を学習すると選択された場合（ステップＳ３０４；Ｙｅｓ）、対象物の情報を利用者に入力してもらう（ステップＳ３０６）。
【０１１２】
そして、この対象物が、他のエリアでは記憶されていない（認識されない）場合には位置情報に対応するエリアモデルに学習を行い（ステップＳ３０８；Ｎｏ→ステップＳ３１０）、他のエリアでも同じ対象物について認識可能な場合は、位置情報に対応する広域モデルに学習を行う（ステップＳ３０８；Ｙｅｓ→ステップＳ３１２）。
【０１１３】
なお、ステップＳ３０８において、他のエリアでも同じ対象物が登録されるか否かの判定は、利用者からの入力により判定されてもよい。例えば、山や高層ビル、タワーのように、他のエリアからも撮影可能なものを利用者に選択させることにより、エリアモデルに学習するか、広域モデルに学習するかを選択してもよい。
【０１１４】
本実施形態について、画面例を使って説明する。図１２（ａ）は、本実施形態における端末装置１０に表示される表示画面Ｗ１００の一例である。表示画面Ｗ１００には、認識される対象となる対象物が領域Ｒ１００に表示されている。
【０１１５】
しかし、対象物が認識出来ない（特定できない）ため、領域Ｒ１０２に「対象物が不明です」と表示されている。ここで、更に「登録しますか？」と利用者に、登録を促すメッセージが表示されることとなる。
【０１１６】
ここで、利用者が登録ボタンＢ１００を選択すると、表示されている対象物の学習を行う（ニューラルネットワークに登録する）ことができる。なお、中止ボタンＢ１０２が選択された場合には、学習は実行されない。
【０１１７】
図１２（ｂ）は、端末装置１０において、登録時の表示画面Ｗ１１０の一例である。領域Ｒ１１０に、対象物の名称が入力欄Ｋ１１０に、登録されるモデルを選択するラジオボタンＫ１１２と、対象物の説明文を入力する入力欄Ｋ１１４が表示されている。
【０１１８】
本図では、ラジオボタンＫ１１２により、対象物の登録先のモデルを選択することができる。例えば、「他の町から見えそうですか？」という設問に対して「いいえ」と選択された場合は、対象物はエリアモデルに登録（学習）される。また、同じ質問に「はい」と選択された場合は、対象物は広域モデルに登録（学習）される。
【０１１９】
このように、本実施形態によれば、画像認識処理により対象物が認識できなかった場合、教師データとして対象物に関する情報を与えることで、次回の画像認識処理で適切な認識結果を返すことができる。
【０１２０】
また、適宜エリアモデルと、広域モデルとに振り分けて学習されるため、より適切な認識を行うことができる。
【０１２１】
［４．第４実施形態］
つづいて、第４実施形態について説明する。第４実施形態は、上述した実施形態では、端末装置１０において認識処理を行う場合について説明した。本実施形態は、認識処理等についても、サーバ装置２０で実行する場合の実施形態である。
【０１２２】
すなわち、端末装置１０は、撮影された画像データを、サーバ装置２０へ送信する。サーバ装置２０は、受信された画像データを認識する。認識された対象物の名称や、当該対象物の名称に対応する説明情報を端末装置１０に送信する。
【０１２３】
図１３は、本実施形態におけるシステム全体の構成を説明するための図である。図１３に示すように、端末装置１０は、制御部１００と、画像入力部１１０と、位置情報取得部１２０と、電話機能部１３０と、記憶部１４０と、表示部１５０と、操作部１６０と、通信部１７０とを有している。
【０１２４】
そして、画像入力部１１０で入力された画像データは、画像データ１４２として記憶部１４０に記憶される。そして、画像データ１４２を、サーバ装置２０に送信する。
【０１２５】
そして、サーバ装置２０で画像データに基づいて認識された認識結果に基づいた説明情報を受信し、説明データ１４８に記憶する。
【０１２６】
また、サーバ装置２０は、制御部２００と、記憶部２４０と、通信部２７０とを少なくとも有している。ここで、制御部２００は、記憶部２４０に記憶されているプログラムを読み出して実行することにより、画像認識部２０２として機能する。また、同様に、制御部２００は、記憶部２４０に記憶されているプログラムを読み出して実行することにより、モデル選択部２０４として機能する。
【０１２７】
この画像認識部２０２は、図２で説明した画像認識部１０２と、モデル選択部２０４は、図２で説明したモデル選択部１０４と略同一の構成である。
【０１２８】
また、記憶部２４０には、モデル選択部２０４が選択し、画像認識部２０２で利用されるモデルデータ２４２と、対象物の名称に応じて説明情報が記憶されている説明ＤＢ２４４と、端末装置１０から受信された画像データが記憶される画像データ２４６と、が記憶されている。
【０１２９】
図１３で示したように、本実施形態によれば、端末装置１０は、撮影した（又は受信した）画像データをサーバ装置２０に送信するだけで、画像データに含まれている対象物を認識し、説明文を表示することが可能となる。
【０１３０】
これにより、例えばスマートウォッチのような性能が低い端末装置や、デジタルサイネージのような表示装置であっても、簡易に認識処理を活用した説明情報を提供することが可能となる。
【０１３１】
［５．変形例］
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も特許請求の範囲に含まれる。
【０１３２】
例えば、上述した実施形態ではニューラルネットワークを用いて画像認識を行うものと説明しているが、必ずしもニューラルネットワークを使う必要はない。例えばニューラルネットワークを構築する代わりに画像を保存した画像ＤＢを構築し、取得した画像と画像ＤＢに保存されている画像との特徴点のマッチングを行うことにより画像認識を行ってもよい。この場合は、エリアに対応する画像ＤＢと、広域に対応する広域ＤＢを構築することにより、この発明を適用することが可能になる。
【０１３３】
また、ニューラルネットワークと他の認識手段とを組み合わせてもよい。例えば、エリアモデルはニューラルネットワークを用いて画像認識をし、広域モデルは画像ＤＢを用いて画像認識を行ってもよい。また、その逆にエリアモデルは画像ＤＢを用いて画像認識をし、広域モデルはニューラルネットワークを用いて画像認識を行ってもよい。
【０１３４】
また、最初に画像ＤＢにおいて簡易的に画像認識を行い、画像が認識出来なかった場合はニューラルネットワークを用いて画像認識を行ってもよい。
【０１３５】
また、上述した実施形態は、説明の都合上、それぞれ別に説明している部分があるが、技術的に可能な範囲で組み合わせて実行してもよいことは勿論である。
【０１３６】
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、ＣＰＵ等を制御するプログラム（コンピュータを機能させるプログラム）である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置（例えば、ＲＡＭ）に蓄積され、その後、各種ＲＯＭやＨＤＤ、ＳＳＤの記憶装置に格納され、必要に応じてＣＰＵによって読み出し、修正・書き込みが行なわれる。
【０１３７】
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本発明に含まれるのは勿論である。
【符号の説明】
【０１３８】
１  システム
１０  端末装置
１００  制御部
１０２  画像認識部
１０４  モデル選択部
１１０  画像入力部
１２０  位置情報取得部
１３０  電話機能部
１３２  音声入力部
１３４  音声出力部
１４０  記憶部
１４２  画像データ
１４４  モデルデータ
１４６  説明ＤＢ
１５０  表示部
１６０  操作部
１７０  通信部
２０  サーバ装置
２００  制御部
２４０  記憶部
２４２  モデルデータ
２４４  説明ＤＢ
２４６  画像データ
２７０  通信部
【図１】
2019139346.tif 000003
【図２】
2019139346.tif 000004
【図３】
2019139346.tif 000005
【図４】
2019139346.tif 000006
【図５】
2019139346.tif 000007
【図６】
2019139346.tif 000008
【図７】
2019139346.tif 000009
【図８】
2019139346.tif 000010
【図９】
2019139346.tif 000011
【図１０】
2019139346.tif 000012
【図１１】
2019139346.tif 000013
【図１２】
2019139346.tif 000014
【図１３】
2019139346.tif 000015