JP2019139346A - 画像認識装置、画像認識システム及びプログラム - Google Patents

画像認識装置、画像認識システム及びプログラム Download PDF

Info

Publication number
JP2019139346A
JP2019139346A JP2018019932A JP2018019932A JP2019139346A JP 2019139346 A JP2019139346 A JP 2019139346A JP 2018019932 A JP2018019932 A JP 2018019932A JP 2018019932 A JP2018019932 A JP 2018019932A JP 2019139346 A JP2019139346 A JP 2019139346A
Authority
JP
Japan
Prior art keywords
model
image
unit
image recognition
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018019932A
Other languages
English (en)
Inventor
田中 伸治
Shinji Tanaka
伸治 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2018019932A priority Critical patent/JP2019139346A/ja
Publication of JP2019139346A publication Critical patent/JP2019139346A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】画像に含まれている対象物を認識するときに、適切な画像認識装置等を提供すること。【解決手段】画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた画像認識装置において、前記記憶部は、地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しており、前記制御部は、前記画像入力部から画像データを取得し、前記位置情報取得部により取得された地域に対応する前記第1のモデルと前記第2のモデルとを特定し、前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識することを特徴とする。【選択図】図1

Description

本発明は、画像認識装置等に関する。
近年、ニューラルネットワーク技術を用いて、画像に写っている対象物が何かを認識して、画面に表示する画像認識装置が知られている。
このような技術は、例えば、観光地において、カメラで写した画像に写っている対象物を認識し、認識した名称に関する説明情報を表示したり読み上げたりといった用途に使うことができる。このとき、全国、広くは全世界の観光地の対象物は数が多く、それら全てを認識できるニューラルネットワークを構築すると、対象物の候補が多くなりすぎて、認識の精度が低下することがある。
画像に写っている対象物を認識する場合において認識精度を高める方法には、例えば特許文献1に示される技術がある。特許文献1には、画像認識のためのデータベースを地域毎に備え、画像が撮像された地域に基づいてデータベースを選択し、選択されたデータベースを用いて対象物を特定する技術が開示されている。この技術によれば、画像が撮像された地域に基づいて対象物の候補を絞り込むことができるため、認識精度を高めることができる。
上記のニューラルネットワークを用いた画像認識技術においても、この特許文献1に開示された技術を応用し、ニューラルネットワークをエリア(地域)毎に分け、画像が撮像されたエリアの情報に基づいてニューラルネットワークを選択し、選択したニューラルネットワークを用いて対象物の認識を行うようにすれば、認識精度を高めることができる。
特開2017−130079号公報
しかしながら、ニューラルネットワークをエリア毎に分けた場合、山やタワーなどのように、そのエリアには存在しないが、そのエリアから撮像可能な大きなものを、そのエリアのニューラルネットワークでは認識できなくなる、といった問題があった。
上述した課題に鑑み、本発明が目的とするのは、画像に含まれている対象物を適切に認識することができる画像認識装置等を提供することである。
本発明の画像認識装置は、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、
前記記憶部は、地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しており、
前記制御部は、
前記画像入力部から画像データを取得し、
前記位置情報取得部により取得された地域に対応する前記第1のモデルと前記第2のモデルとを特定し、
前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする。
本発明の画像認識システムは、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた端末装置と、サーバ装置とを備え、
前記サーバ装置は、
地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しており、
前記端末装置における制御部は、
前記サーバ装置から、前記位置情報取得部により取得された地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを受信して前記記憶部に記憶し、
前記画像入力部から画像データを取得し、
前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識する、
ことを特徴とする。
本発明のプログラムは、
画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、前記記憶部は、地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しているコンピュータにおいて、
前記画像入力部から画像データを取得するステップと、
前記位置情報取得部により取得された地域に対応する前記第1のモデルと前記第2のモデルとを特定するステップと、
前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識するステップと、
を実現することを特徴とする。
本発明の画像認識装置によれば、2つのモデルを用いて画像に含まれている対象物を認識することができるため、適切に対象物を認識することができる。
第1実施形態におけるシステム全体を説明するための図である。 第1実施形態における端末装置の機能構成を説明するための図である。 ニューラルネットワークの説明をするための図である。 第1実施形態におけるサーバ装置の機能構成を説明するための図である。 第1実施形態におけるエリアの構成について説明するための図である。 第1実施形態におけるエリアのバージョンについて説明するための図である。 第1実施形態におけるニューラルネットワークの構成を説明するための図である。 第1実施形態におけるメイン処理の流れを説明するためのフローチャートである。 第1実施形態における画像認識処理の流れを説明するためのフローチャートである。 第2実施形態における画像認識処理の流れを説明するためのフローチャートである。 第3実施形態におけるメイン処理の流れを説明するためのフローチャートである。 第3実施形態における画面例を説明するための図である。 第4実施形態における端末装置及びサーバ装置の機能構成を説明するための図である。
以下に、本発明の実施の形態について、図を参照しながら詳細に説明する。本実施形態では、本発明の画像認識装置を、通話可能な携帯型の端末装置(例えば、携帯電話やスマートフォン、タブレット等)に適用した場合について説明する。すなわち、画像認識プログラムを端末装置で実行することにより、端末装置上に画像認識機能を実現し、端末装置を画像認識装置として利用する場合である。
なお、端末装置としては、他の装置であっても良いことは勿論である。例えば、上述した携帯電話・スマートフォンや、タブレット端末、電子辞書や電子書籍端末といった端末装置であったり、車載用カメラ、ノートパソコン等の端末装置であったりしても良い。
[1.第1実施形態]
[1.1 システム構成]
第1実施形態について説明する。まず、図1は本実施形態におけるシステム全体を説明するための図である。図1のシステム1では、端末装置10が、ネットワークNWを介してサーバ装置20に接続可能に構成されている。
端末装置10と、ネットワークNWは、無線通信で接続されている。当該無線通信は、例えば、IEEE802.11a/b/g/nといったWLANであったり、3GやLTEに代表される移動通信網であったりしても良い。また、端末装置10が他の装置や、アクセスポイントといった接続装置に近距離無線通信で接続され、それを介してネットワークNWに接続されることとしてもよい。また、有線のLANで接続されても良いことは勿論である。
サーバ装置20は、例えば画像の認識処理を実現することができる装置である。ここで、本実施形態における画像認識処理は、端末装置10で行ってもよいし、サーバ装置20で行っても良い。また、本実施形態では、説明の都合上、端末装置10で行っている処理をサーバ装置20で行ってもよいし、同様に、サーバ装置20で行っている処理を端末装置10で行ってもよい。なお、端末装置10で処理が完結する場合は、サーバ装置20を必要としない。
詳細は後述するが、端末装置10には、背面や前面にカメラ(不図示)が設けられており、対象物Pを撮影することが可能となっている。すなわち、カメラで撮影された画像に、対象物Pが含まれていると、端末装置10はこの対象物Pを認識(例えば、対象物Pの名称を認識)することができる。
例えば、端末装置10の表示画面W10を示すと、表示画面W10には、対象物Pが領域R10に表示されており、この対象物Pの名称が領域R12に表示される。これにより、利用者は現在撮影されている対象物が何であるかを認識することが可能となる。また、領域R12には、対象物Pに関する説明文が併せて表示されてもよい。
なお、図1では、対象物Pの名称が表示されているが、必ずしもその必要は無い。例えば、対象物Pの名称を認識することにより、音声で名称を利用者に伝えたり、画像にタグ付けができたり、表示されている対象物から検索処理を行ったりすることが可能であってもよい。
また、認識という場合には、上述したように撮影された対象物を認識する場合だけでなく、予め対象物のパターンが決められており、撮影された対象物が当該パターンに該当するか否かといった認識をする場合も含まれる。例えば、車載用カメラの場合において、自動車や、自転車、歩行者といったパターンに一致するか否かで、対象物を認識するといったことも含まれる。
[1.2 機能構成]
続いて、端末装置10及びサーバ装置20の機能構成について図を用いて説明する。
[1.2.1 端末装置]
図2を参照して端末装置10の機能構成について説明する。図2に示すように、端末装置10は、制御部100と、画像入力部110と、位置情報取得部120と、電話機能部130と、記憶部140と、表示部150と、操作部160と、通信部170とを備えて構成されている。
制御部100は、端末装置10の全体を制御している。制御部100は、記憶部140に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えば1つまたは複数のCPU(Central Processing Unit)等により構成されている。
また、制御部100は、画像認識部102及びモデル選択部104として機能する。例えば、記憶部140に記憶されているプログラムを読み出し、実行することで、画像認識部102、モデル選択部104の機能が実現される。
画像認識部102は、撮影(入力)された画像に対して認識処理を行うことにより、画像に含まれている対象物を認識する。
また、モデル選択部104は、上述した画像認識部102が画像を認識するときに利用するモデル(認識モデル)を選択する。
ここで、画像認識部102が行う、入力された画像データに含まれている(写っている)対象物の名称や属性を認識する方法としては、最近はディープラーニング(ディープニューラルネットワーク)が高い精度を出している。
これは、画像データから抽出された特徴量に基づいて、モデルを用いて対象物が何であるかを認識する。本実施形態でも一例として当該方法を利用する。このディープラーニングにおける処理について、図3を用いて簡単に説明する。
まず画像認識部102は、入力された画像データ(信号)を、複数の層と、各層に含まれるニューロンによって構成されるニューラルネットワークに入力する。各ニューロンは別の複数のニューロンから信号を受け取り、演算を施した信号を別の複数のニューロンへ出力する。ニューラルネットワークが多層構造の場合、信号が流れる順に、入力層、中間層(隠れ層)、出力層と呼ばれる。
ニューラルネットワークの中間層が複数の層からなっているものはディープニューラルネットワークと呼ばれ、これを用いた機械学習の手法をディープラーニングと呼ぶ。なお、画像認識で高い精度を出しているのは、畳み込み演算を持つConvolutional Neural Network(畳み込みニューラルネットワーク)である。
画像データはニューラルネットワークの各層のニューロンを各種演算(畳み込み演算、プーリング演算、正規化演算、行列演算等)をされ、形を変えながら流れ、出力層から複数の信号が出力される。
ニューラルネットワークからの複数の出力値は、それぞれ、名称に紐づいていて、値が最も大きい出力値に紐づく名称を対象物の名称と認識する、というような処理を行う。または、直接名称に紐づかずに、複数の出力値を分類器に通して、分類器の出力から名称やタグを認識するということも行われる。
ニューラルネットワークの各種演算に用いる係数であるパラメータは、事前にニューラルネットワークへ数多くの画像と、当該画像に写っている対象物が何かを示すラベルを入力し、出力値と正解値との誤差を、誤差逆伝播法(バックプロパゲーション)により、ニューラルネットワークを逆方向に伝搬し、各層のニューロンのパラメータを何度も更新することによって決まる。パラメータを更新し、決める工程を学習と呼ぶ。
ここで、ニューラルネットワークの構造や、個々の演算については、書籍や論文で解説された公知技術であり、その何れかの技術を利用すれば良い。
また、モデル選択部104は、取得された位置情報に基づいて、入力されている画像から対象物を認識する場合のモデルを選択する。モデルについての詳細は後述する。
ここで、画像認識部102及びモデル選択部104は、プログラムで提供されても良いし、ハードウェアとして提供されても良い。特に、畳み込みニューラルネットワークは、数多くの畳み込み演算や行列演算等を実行するため、GPU(Graphics Processing Unit)等のハードウェアがあると処理を高速化することができる。プログラムとして提供される場合には、記憶部140に記憶されており、制御部100が読み出して実行することにより、同一の機能を実現する。
また、画像認識部102及びモデル選択部104の各処理は、サーバ装置20で実現されても良い。この場合は、端末装置10から画像データをサーバ装置20に送信し、当該処理結果を受信すればよい。この点についての動作については後述する。
図2に戻って、端末装置10の機能構成についての説明を続ける。画像入力部110は、画像を撮影し、撮影された画像を画像データとして端末装置10に入力するための機能部である。例えば、カメラ等により構成されており、撮像素子等によって画像を外部から入力し、入力された画像データは画像データ142として記憶部140に記憶される。
なお、画像入力部110が取得する画像は、画像入力部110を構成するカメラではなく、他の装置から入力された画像であっても良い。例えば、端末装置10と、外部のカメラ装置とが接続されていて、カメラ装置において撮影された画像データが画像入力部110を介して端末装置10に入力される、という構成になっていても良い。
位置情報取得部120は、端末装置10における位置(すなわち、画像が撮影された位置)を位置情報として取得する。位置情報取得部120が取得する位置情報は、例えば緯度経度や、ランドマーク名である。また、位置情報を取得する方法としては、例えば、衛星測位システムとしてGNSS(Global Navigation Satellite Systems)であるGPS(Global Positioning System)、GALILEO、GLONASS(Global Navigation Satellite System)、みちびき等を利用してもよく、携帯基地局や無線基地局から送信される位置情報を利用してもよい。また、画像データに位置情報が含まれている場合には、当該画像データに含まれている位置情報を利用してもよい。
電話機能部130は、端末装置10が電話装置として機能する場合に実行される機能部である。電話機能部130は、例えばLTE回線経由で電話(通話)を行うことが可能である。なお、電話機能は従来からあるものであるため、説明を省略する。なお、一部のタブレット等の電話機能がない端末の場合は、電話機能部130をもたなくともよい。
なお、電話機能部130は、音声の会話などに利用される音声入力部132、音声出力部134を有している。音声入力部132は、代表的にはマイクである。音声出力部134は、代表的にはスピーカ、ヘッドフォンである。
記憶部140は、端末装置10の動作に必要な各種プログラムや、各種データを記憶する。記憶部140は、例えば、半導体メモリであるSSD(Solid State Drive)や、HDD(Hard Disk Drive)等により構成されている。
表示部150は、各種情報や画像データを表示する。例えば、液晶ディスプレイ(LCD)や、有機ELパネルにより構成されている。なお、表示部150は、無線やHDMI(登録商標)等の有線により接続される外部の表示装置であってもよい。
操作部160は、利用者が端末装置10に対して操作指示を入力するための機能部である。例えば、タッチパネルを利用したソフトウェアキーや、ハードウェアキーで構成されている。表示部150と一体に形成されていても良い。
通信部170は、ネットワークNWに接続する機能を提供する。例えば、WLANに接続するための通信モジュールであったり、LTE通信網に接続するための通信モジュールであったりする。
これらの機能構成は一例であり、必ずしも端末装置10が有していなくても良い。例えば、端末装置10が操作部160を有しておらず、端末装置10に対する入力機能が、例えば他の入出力装置(USBやBluetooth(登録商標)接続されたマウス等)によって実現されても良い。また、画像入力部110が、例えばスマートウォッチに内蔵されたカメラが転送する画像を取得する構成であっても良い。
[1.2.2 サーバ装置]
図4を参照して、サーバ装置20の機能構成について説明する。サーバ装置20は、制御部200と、記憶部240と、通信部270とを少なくとも有して構成されている。
制御部200は、サーバ装置20の全体を制御している。制御部200は、記憶部240に記憶されている各種プログラムを読み出して実行することにより各種機能を実現しており、例えば1つまたは複数のCPU(Central Processing Unit)等により構成されている。
記憶部240は、サーバ装置20の動作に必要な各種プログラムや、各種データを記憶する機能部である。記憶部240は、例えば、半導体メモリであるSSD(Solid State Drive)や、HDD(Hard Disk Drive)等により構成されている。
また、記憶部240には、各モデルを記憶するモデルデータ242と、説明DB(データベース)244とが記憶されている。説明DB244は、対象物に対応づけて説明情報が記憶されているデータベースである。制御部200は、対象物に基づいて説明情報を検索し、端末装置10に送信する。
モデルデータ242には、本実施形態の画像認識で利用されるモデル(認識モデル)が複数記憶されている。なお、モデルについては後述する。
通信部270は、ネットワークNWに接続する機能を提供する機能部であり、例えば、イーサネット(登録商標)を利用してLANに接続するための通信モジュールである。通信部270は、ルータ装置等の中継装置を介してネットワークNWに接続されてもいてもよい。また、ネットワークNWに接続する機能を提供していれば、例えばLTE通信網に接続するための通信モジュールであってもよい。
[1.3 モデルの説明]
[1.3.1 エリアモデルと広域モデル]
ここで、本実施形態において、画像認識部102が、画像から対象物を認識するときに利用するモデル(認識モデル)について、説明する。なお、モデルはグラフとも呼ばれる。
ここで、一般的に、ニューラルネットワークは、事前に学習した対象物しか認識することができず、新しい対象物を認識可能にするには、ニューラルネットワークが出力する数値の個数の変更と、再学習が必要となる。ただし、ニューラルネットワークから出力された特徴量を用いて分類器で認識を行う場合などは、分類器の変更だけで済むこともある。
また、数多くのものを一つのニューラルネットワークで画像認識させようとすると、ニューラルネットワークや各種演算に使われるパラメータ(モデル)が大きくなり、データサイズが大きくなる。
例えば、全国の観光地の対象物を全て認識できるようなモデルはデータサイズが大きくなり、また、新しい対象物を認識可能にするときに、学習に時間がかかる、モデルが大きいから画像認識に時間がかかる、認識対象物の数が多いから認識精度が上がりにくい、といった問題がある。
したがって、このような問題を解決するために、モデルを分ける手法が有効である。本実施形態では、エリア毎にモデルを分けて、切り替えて使用することにする。
ここで、モデルはエリア情報とセットで記憶領域(例えば、データベース)に記憶されている。ここで、エリア情報とは、地図上の領域の情報である。
画像認識を行う場合、この端末装置の位置情報が含まれるエリアに対応したモデルを使用することとなる。具体的には、モデルファイルのデータベースから、位置情報が含まれるエリアを探し、見つかったエリアに対応したモデルを画像認識に使用する。
図5(a)は、エリアについて説明する図である。例えば、地図上において、エリア1、エリア2、エリア3、・・・、エリアXと複数のエリアに分割する。そして、分割されたエリア毎に対応してモデルが記憶される。
図5(b)は、モデルを説明するための図である。地図上の領域を示すエリア情報に、当該エリアに対応づけられたモデルが記憶される。ここで、エリアに対応したモデルをエリアモデルという。例えば、エリア1情報(エリア1の地図情報)に対応するモデルがエリアモデル1を示している。このように、エリア毎にモデルが存在する。
更に、複数のエリアに共通するモデルとして、広域モデルが記憶されている。例えば、広域モデルは、複数のエリアから見ることのできる対象物が記憶されている。本実施形態において、複数のエリアから認識可能な対象物が記憶されているモデルを広域モデルといっている。
例えば、図5(b)に示すように、エリアモデル1、エリアモデル2、エリアモデル3は、それぞれのエリアに記憶されている対象物であるランドマーク(寺、銅像、建物等)が記憶されている。そして、各エリアから見ることができる対象物であるランドマーク等(山、タワー、高層ビル等)が広域モデルC1に記憶される。
具体的な例を使って説明する。
エリア1情報(東京):エリアモデル1=浅草寺、上野動物公園、東京駅、…
エリア2情報(埼玉):エリアモデル2=鉄道博物館、埼玉県庁、大宮駅、…
エリア3情報(千葉):エリアモデル3=幕張メッセ、成田空港、千葉駅、…
広域モデルC1=東京スカイツリー、富士山、…
今エリア情報として、地図上の情報が記憶されている。ここで、エリア情報は、緯度経度情報等の地図上における所定の領域を示す情報であればよい。各エリアに含まれるランドマークが対象物として記憶されている。
ここで、広域モデルC1には、各エリアから見える対象物(ランドマーク等)が記憶されている。なお、ユニークな対象物だけでなく、複数のエリアに存在する形状や外観がそっくりな対象物を広域モデルに含めてしまってもよい。
画像認識を端末装置10で行う場合、端末装置10は、位置情報に対応したモデル(エリアモデル及び/又は広域モデル)をサーバ装置20からダウンロードすることで、適切に対象物を認識することができる。
[1.3.2 モデルのバージョン管理]
上述したモデルが記憶されているデータ(例えば、モデルファイル)にはバージョン情報が付加されていてもよい。
例えば、画像認識を端末装置10で行う場合、端末装置10に記憶されているモデルファイルのバージョンと、サーバ装置20に記憶されているモデルファイルのバージョンとを比較し、端末装置10の方が小さければ(古ければ)更新を行う。
画像認識をサーバ装置20で行う場合、端末装置10は、サーバ装置20へ画像と位置情報を送信し、画像認識の結果を受信する。モデルファイルの更新は、サーバ装置20内で行われる。
端末装置10のモデルファイルを更新する処理について、図6を参照して具体的に説明する。図6は、上側がサーバ装置20におけるモデルデータ242に含まれるエリアモデルの一例であり、下側が端末装置10におけるモデルデータ144に含まれるエリアモデルの一例である。
各エリアモデルには、バージョンが管理されている。例えば、エリアモデル1は、端末装置10におけるバージョンが「1.2」、サーバ装置20におけるバージョンが「1.1」である。したがって、端末装置10は、そのままバージョン「1.2」のエリアモデル1を使用する。
それに対して、エリアモデル2は、端末装置10におけるバージョンが「1.1」であるが、サーバ装置20におけるバージョンが「1.2」である。この場合、端末装置10は、サーバ装置20から新しいエリアモデルをダウンロードして記憶する。
また、エリアモデルXは、端末装置10におけるバージョンは「1.1」、サーバ装置20におけるバージョンは「1.1」であり、同じである。この場合は、通常ダウンロードを行わないが、行うこととしてもよい。
なお、図6では、エリアモデルを例に説明したが、広域モデルでも同様である。また、モデルファイルはエリア情報とセットであるため、エリア情報も併せて更新される。ここで、エリア情報に変更があると、他のエリアとの重なりや、空白領域が生まれる場合があるため、隣接エリアのファイルも併せて更新してもよい。
[1.3.3 モデルによる画像認識]
つづいて、モデルを利用して、画像を認識する処理の概要について説明する。まず、上述したモデルは、事前にディープラーニングによる学習によりウェイトなどのパラメータが調整される。
一般的に、学習では、モデルに何度も教師画像を入力し、モデルからの複数個の出力のうち、教師画像のラベル紐付く位置の出力が最も大きくなるように、誤差逆伝搬によりパラメータを更新する。
本実施形態の画像認識は、画像をモデル(エリアモデル)へ入力し、複数個の数値を出力するが、複数個の出力のうち、少なくとも1つを複数のエリアから見ることができるものが含まれるクラス(その他クラス、広域クラス)に割り当てる。それ以外の出力に紐付くクラスは、それぞれ認識可能な対象物に紐付く。なお、後述する閾値を用いる場合などは、その他クラスへの割り当てを不要にすることもできる。
その他クラス(広域モデル)の学習は、モデルに教師画像である複数のエリアで見ることができるものを含む画像を何度も入力し、その他クラスに紐付く位置の出力が最も大きくなるように、パラメータを更新する。ただし、その他クラスの学習は、全体の学習の中で行われる。なお、その他クラスが複数あって、モデルの出力のうちの複数個が、その他クラス1、その他クラス2、・・・に紐付いていても良い。
すなわち、あるエリアモデルに対し、複数の広域モデルが対応づけられて記憶されてもよい。
図7は、エリアモデルと、その他として出力された場合の広域モデルとの関係を示した図である。1回目の画像認識では、モデル1のエリアモデルが使用される。そして、1回目の画像認識の出力結果が、その他クラス以外のクラスであった場合には、画像認識結果として出力結果のクラスに対応する対象物が出力される。
1回目の画像認識の出力結果がその他クラスであった場合、別のモデル(広域モデルC1)を用いて、2回目の画像認識が行われる。つまり、その他クラスの場合は、広域モデルC1を用いるという情報が、モデルファイルに記憶されている。なお、その他クラスの判定は、その他以外のクラスの出力値が、どれも閾値に達しなかった場合に、その他クラスと判定しても良い。この場合、ニューラルネットワークからの出力にその他クラスがなくても判定することができる。
なお、各エリアモデルにおいては、対象物が広い範囲で撮影できるような場合に、出力結果がその他クラスになるように学習を行う。すなわち、画像データを入力層のニューロン群に入力した場合に、画像データの対象物名に関連付けてその他クラスが出力されるように、ニューロン間の重み係数を修正する。
このように、エリア内において撮影された対象物が、エリアに存在しない場合であっても、他のモデル(ここでは、広域モデル)を利用することで、対象物を認識することができるようになる。
また、エリア毎に分けてモデルを管理することから、データ量を削減できるだけではなく、認識精度の向上にも繋がることとなる。
[1.4 処理の流れ]
[1.4.1 メイン処理]
続いて、本実施形態における処理の流れについて、図8のフローチャートを用いて説明する。まず、制御部100は、画像(画像データ)を取り込む(ステップS102)。具体的には、画像入力部110のカメラが撮影した、対象物を含む画像を、画像データ142に記憶させる。
なお、画像入力部110は、画像データ142として、カメラで撮影した画像ではなく、例えばファイルから読み込んだ画像データを使用してもよく、他の装置から転送された画像データを使用してもよい。
つづいて、制御部100は、位置情報を取得する(ステップS104)。位置情報の取得方法としては、位置情報取得部120から位置情報を取得してもよいし、画像データに付加されている撮影時の位置情報を取得してもよい。
つづいて、画像認識部102(制御部100)は、画像データに対して画像認識処理を実行する(ステップS106)。画像認識部102により画像認識処理が実行されると、対象物の名前やIDが出力される。なお、画像認識処理については、別の図を使って後述する。
制御部100は、認識された対象物に対応する説明情報を説明DB146から検索し、該当する説明情報があった場合には説明画面として表示する(ステップS108→ステップS110)。
[1.4.2 画像認識処理]
図8のステップS106で実行される、画像認識部102が実行する画像認識処理について、図9を参照して説明する。
まず、モデル選択部104は、画像認識に利用するモデル(エリアモデル)を選択する。具体的な動作としては、モデル選択部104(制御部100)は、位置情報に対応するエリアを特定する(ステップS152)。
すなわち、エリア情報を参照して、位置情報として取得された場所が含まれるエリアを特定する。そして、このエリアに対応するエリアモデルが、モデルデータ144に記憶されていない場合には、エリア情報とエリアモデルとを取得する(ステップS154;No→ステップS156)。
そして、画像認識部102は、位置情報に対応するエリアのエリアモデルをモデルデータ144から読み込み(ステップS158)、画像認識を行う(ステップS160)。ここで、対象物の認識結果がある場合(すなわち、その他クラス以外と認識された場合)は、画像認識が完了したため、本処理を終了する。
ここで、対象物の認識ができなかった場合(すなわち、その他クラスと認識された場合)、現在のエリアモデルに対応する広域モデルが記憶されているか否かを判定する(ステップS164)。ここで、画像認識部102は、広域モデルが記憶されていなければ、広域モデルを取得する(例えば、サーバ装置20からダウンロードする)(ステップS166)。そして、画像認識部102は、広域モデルを利用して画像認識を実行し、認識結果を出力して本処理を終了する(ステップS168)。
このように、本実施形態によれば、一度エリアモデルというエリアに対応した認識モデルを利用して、ニューラルネットワークを利用することにより画像を認識する。そして、画像を認識した結果を対象物の名称やIDとして出力する。
また、エリアに対応した認識モデルで認識できなかった場合には、複数のエリアから見える対象物が学習された広域モデルを利用して、再度画像認識を行う。このように、画像を認識する場合に、モデルを2段階に適用することから、より適切な画像認識を行うことが可能となる。また、モデルが小さくなるので学習や認識に要する時間が短縮できる、という効果も期待できる。
[2.第2実施形態]
つづいて、第2実施形態について説明する。第2実施形態は、第1実施形態とモデルを入れ替えて処理を行うものである。具体的には、最初に広域モデルで画像を認識し、そこでその他クラスと出力された(認識出来なかった)場合に、エリアモデルで画像を認識する実施形態である。
なお、本実施形態における構成、処理等は原則第1実施形態と同様であり、異なる部分を中心に説明する。具体的には、第1実施形態における図9の画像認識処理を、図10の画像認識処理に置き換えた実施形態である。
まず、モデル選択部104(制御部100)は、位置情報取得部120から位置情報を取得し、位置情報が含まれるエリアを特定する(ステップS202)。そして、当該エリアに対応する広域モデルがモデルデータ144に記憶されていない場合には、エリア情報と、エリアモデルと、広域モデルとを取得する(ステップS206)。
ここで、当該エリアに対応する広域モデルについて、図5を例に説明する。例えば、位置情報取得部120により、エリア2にいることが取得された場合、エリア2に対応するエリアモデルはエリアモデル2である。また、エリアモデル2は、広域モデルC1に紐付けられている。そこで、本実施形態では、広域モデルC1が記憶されているか否かを判定する。もし、広域モデルC1が記憶されていない場合には、広域モデルC1と、必要であれば、エリアモデル2と、エリア2情報とが取得(サーバ装置20からダウンロード)される。
つづいて、画像認識部102は、エリアに対応する広域モデルを読み込み(ステップS208)、広域モデルに基づいて画像を認識する(ステップS210)。画像から対象物が認識されれば、本処理を終了する(ステップS212;Yes)。
他方、画像認識部102は、広域モデルに基づいて画像が認識出来なかった場合(ステップS212;No)、今度はエリアモデルで画像認識を実行する(ステップS212;No→ステップS214)。
このように、本実施形態によれば、広域モデルから先に画像を認識し、その後にエリアモデルで画像を認識することとなる。
[3.第3実施形態]
つづいて、第3実施形態について説明する。第3実施形態は、対象物を学習する処理について説明する。
なお、本実施形態における構成、処理等は原則第1実施形態と同様であり、異なる部分を中心に説明する。具体的には、第1実施形態における図8のメイン処理を、図11のメイン処理に置き換えた実施形態である。
画像認識処理を実行した結果、画像に含まれていた対象物が認識できなかった場合(ステップS302;No)、制御部100は、対象物を学習するか否かを選択させる(ステップS304)。
ここで、利用者により対象物を学習すると選択された場合(ステップS304;Yes)、対象物の情報を利用者に入力してもらう(ステップS306)。
そして、この対象物が、他のエリアでは記憶されていない(認識されない)場合には位置情報に対応するエリアモデルに学習を行い(ステップS308;No→ステップS310)、他のエリアでも同じ対象物について認識可能な場合は、位置情報に対応する広域モデルに学習を行う(ステップS308;Yes→ステップS312)。
なお、ステップS308において、他のエリアでも同じ対象物が登録されるか否かの判定は、利用者からの入力により判定されてもよい。例えば、山や高層ビル、タワーのように、他のエリアからも撮影可能なものを利用者に選択させることにより、エリアモデルに学習するか、広域モデルに学習するかを選択してもよい。
本実施形態について、画面例を使って説明する。図12(a)は、本実施形態における端末装置10に表示される表示画面W100の一例である。表示画面W100には、認識される対象となる対象物が領域R100に表示されている。
しかし、対象物が認識出来ない(特定できない)ため、領域R102に「対象物が不明です」と表示されている。ここで、更に「登録しますか?」と利用者に、登録を促すメッセージが表示されることとなる。
ここで、利用者が登録ボタンB100を選択すると、表示されている対象物の学習を行う(ニューラルネットワークに登録する)ことができる。なお、中止ボタンB102が選択された場合には、学習は実行されない。
図12(b)は、端末装置10において、登録時の表示画面W110の一例である。領域R110に、対象物の名称が入力欄K110に、登録されるモデルを選択するラジオボタンK112と、対象物の説明文を入力する入力欄K114が表示されている。
本図では、ラジオボタンK112により、対象物の登録先のモデルを選択することができる。例えば、「他の町から見えそうですか?」という設問に対して「いいえ」と選択された場合は、対象物はエリアモデルに登録(学習)される。また、同じ質問に「はい」と選択された場合は、対象物は広域モデルに登録(学習)される。
このように、本実施形態によれば、画像認識処理により対象物が認識できなかった場合、教師データとして対象物に関する情報を与えることで、次回の画像認識処理で適切な認識結果を返すことができる。
また、適宜エリアモデルと、広域モデルとに振り分けて学習されるため、より適切な認識を行うことができる。
[4.第4実施形態]
つづいて、第4実施形態について説明する。第4実施形態は、上述した実施形態では、端末装置10において認識処理を行う場合について説明した。本実施形態は、認識処理等についても、サーバ装置20で実行する場合の実施形態である。
すなわち、端末装置10は、撮影された画像データを、サーバ装置20へ送信する。サーバ装置20は、受信された画像データを認識する。認識された対象物の名称や、当該対象物の名称に対応する説明情報を端末装置10に送信する。
図13は、本実施形態におけるシステム全体の構成を説明するための図である。図13に示すように、端末装置10は、制御部100と、画像入力部110と、位置情報取得部120と、電話機能部130と、記憶部140と、表示部150と、操作部160と、通信部170とを有している。
そして、画像入力部110で入力された画像データは、画像データ142として記憶部140に記憶される。そして、画像データ142を、サーバ装置20に送信する。
そして、サーバ装置20で画像データに基づいて認識された認識結果に基づいた説明情報を受信し、説明データ148に記憶する。
また、サーバ装置20は、制御部200と、記憶部240と、通信部270とを少なくとも有している。ここで、制御部200は、記憶部240に記憶されているプログラムを読み出して実行することにより、画像認識部202として機能する。また、同様に、制御部200は、記憶部240に記憶されているプログラムを読み出して実行することにより、モデル選択部204として機能する。
この画像認識部202は、図2で説明した画像認識部102と、モデル選択部204は、図2で説明したモデル選択部104と略同一の構成である。
また、記憶部240には、モデル選択部204が選択し、画像認識部202で利用されるモデルデータ242と、対象物の名称に応じて説明情報が記憶されている説明DB244と、端末装置10から受信された画像データが記憶される画像データ246と、が記憶されている。
図13で示したように、本実施形態によれば、端末装置10は、撮影した(又は受信した)画像データをサーバ装置20に送信するだけで、画像データに含まれている対象物を認識し、説明文を表示することが可能となる。
これにより、例えばスマートウォッチのような性能が低い端末装置や、デジタルサイネージのような表示装置であっても、簡易に認識処理を活用した説明情報を提供することが可能となる。
[5.変形例]
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も特許請求の範囲に含まれる。
例えば、上述した実施形態ではニューラルネットワークを用いて画像認識を行うものと説明しているが、必ずしもニューラルネットワークを使う必要はない。例えばニューラルネットワークを構築する代わりに画像を保存した画像DBを構築し、取得した画像と画像DBに保存されている画像との特徴点のマッチングを行うことにより画像認識を行ってもよい。この場合は、エリアに対応する画像DBと、広域に対応する広域DBを構築することにより、この発明を適用することが可能になる。
また、ニューラルネットワークと他の認識手段とを組み合わせてもよい。例えば、エリアモデルはニューラルネットワークを用いて画像認識をし、広域モデルは画像DBを用いて画像認識を行ってもよい。また、その逆にエリアモデルは画像DBを用いて画像認識をし、広域モデルはニューラルネットワークを用いて画像認識を行ってもよい。
また、最初に画像DBにおいて簡易的に画像認識を行い、画像が認識出来なかった場合はニューラルネットワークを用いて画像認識を行ってもよい。
また、上述した実施形態は、説明の都合上、それぞれ別に説明している部分があるが、技術的に可能な範囲で組み合わせて実行してもよいことは勿論である。
また、実施形態において各装置で動作するプログラムは、上述した実施形態の機能を実現するように、CPU等を制御するプログラム(コンピュータを機能させるプログラム)である。そして、これら装置で取り扱われる情報は、その処理時に一時的に一時記憶装置(例えば、RAM)に蓄積され、その後、各種ROMやHDD、SSDの記憶装置に格納され、必要に応じてCPUによって読み出し、修正・書き込みが行なわれる。
また、市場に流通させる場合には、可搬型の記録媒体にプログラムを格納して流通させたり、インターネット等のネットワークを介して接続されたサーバコンピュータに転送したりすることができる。この場合、サーバコンピュータの記憶装置も本発明に含まれるのは勿論である。
1 システム
10 端末装置
100 制御部
102 画像認識部
104 モデル選択部
110 画像入力部
120 位置情報取得部
130 電話機能部
132 音声入力部
134 音声出力部
140 記憶部
142 画像データ
144 モデルデータ
146 説明DB
150 表示部
160 操作部
170 通信部
20 サーバ装置
200 制御部
240 記憶部
242 モデルデータ
244 説明DB
246 画像データ
270 通信部

Claims (8)

  1. 画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、
    前記記憶部は、地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しており、
    前記制御部は、
    前記画像入力部から画像データを取得し、
    前記位置情報取得部により取得された地域に対応する前記第1のモデルと前記第2のモデルとを特定し、
    前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識する、
    ことを特徴とする画像認識装置。
  2. 前記第1のモデル又は前記第2のモデルはニューラルネットワークのモデルであり、
    前記制御部は、
    前記画像データを前記ニューラルネットワークにおける入力層に入力し、出力層からの出力を対象物の認識結果として認識することを特徴とする請求項1に記載の画像認識装置。
  3. 前記第1のモデルは、対象物が第2のモデルで認識可能な場合、前記ニューラルネットワークの出力として、対象物が第2のモデルで認識可能であることを示す出力を得るように構成されていることを特徴とする請求項2に記載の画像認識装置。
  4. 前記第2のモデルは、対象物が第1のモデルで認識可能な場合、前記ニューラルネットワークの出力として、対象物が第1のモデルで認識可能であることを示す出力を得るように構成されていることを特徴とする請求項2に記載の画像認識装置。
  5. 前記制御部は、
    前記第1のモデル及び第2のモデルを用いても画像データに含まれる対象物を認識できない場合は、第1のモデル又は第2のモデルに、当該対象物を第1のモデル又は第2のモデルに学習させることを特徴とする請求項2から4の何れか1項に記載の画像認識装置。
  6. サーバ装置と接続可能な通信部を更に有し、
    前記制御部は、
    前記記憶部が記憶するモデルよりも新しいモデルが前記サーバ装置に記憶されている場合には、前記サーバ装置から当該新しいモデルを受信する、
    ことを特徴とする請求項1から5の何れか一項に記載の画像認識装置。
  7. 画像入力部と、位置情報取得部と、記憶部と、制御部とを備えた端末装置と、サーバ装置とを備え、
    前記サーバ装置は、
    地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しており、
    前記端末装置における制御部は、
    前記画像入力部から画像データを取得し、
    前記サーバ装置から、前記位置情報取得部により取得された地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを受信して前記記憶部に記憶し、
    前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識する、
    ことを特徴とする画像認識システム。
  8. 画像入力部と、位置情報取得部と、記憶部と、制御部とを備え、前記記憶部は、地域に対応した第1のモデルと、当該地域を含む複数の地域に対応する第2のモデルとを記憶しているコンピュータにおいて、
    前記画像入力部から画像データを取得するステップと、
    前記位置情報取得部により取得された地域に対応する前記第1のモデルと前記第2のモデルとを特定するステップと、
    前記画像データに含まれる対象物を、前記第1のモデルを用いて認識した結果と、前記第2のモデルを用いて認識した結果とを参照して認識するステップと、
    を実現することを特徴とするプログラム。
JP2018019932A 2018-02-07 2018-02-07 画像認識装置、画像認識システム及びプログラム Pending JP2019139346A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018019932A JP2019139346A (ja) 2018-02-07 2018-02-07 画像認識装置、画像認識システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018019932A JP2019139346A (ja) 2018-02-07 2018-02-07 画像認識装置、画像認識システム及びプログラム

Publications (1)

Publication Number Publication Date
JP2019139346A true JP2019139346A (ja) 2019-08-22

Family

ID=67693969

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018019932A Pending JP2019139346A (ja) 2018-02-07 2018-02-07 画像認識装置、画像認識システム及びプログラム

Country Status (1)

Country Link
JP (1) JP2019139346A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110781834A (zh) * 2019-10-28 2020-02-11 上海眼控科技股份有限公司 交通异常图像检测方法、装置、计算机设备及存储介质
CN111161227A (zh) * 2019-12-20 2020-05-15 成都数之联科技有限公司 一种基于深度神经网络的靶心定位方法及系统
JP2021099690A (ja) * 2019-12-23 2021-07-01 横河電機株式会社 装置、システム、方法およびプログラム
JP7524548B2 (ja) 2020-02-06 2024-07-30 日本電気株式会社 画像処理装置、検出方法、及びプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110781834A (zh) * 2019-10-28 2020-02-11 上海眼控科技股份有限公司 交通异常图像检测方法、装置、计算机设备及存储介质
CN111161227A (zh) * 2019-12-20 2020-05-15 成都数之联科技有限公司 一种基于深度神经网络的靶心定位方法及系统
JP2021099690A (ja) * 2019-12-23 2021-07-01 横河電機株式会社 装置、システム、方法およびプログラム
US11373496B2 (en) 2019-12-23 2022-06-28 Yokogawa Electric Corporation Security system having an alert signal generated by sensors or analytics on image data
JP7211353B2 (ja) 2019-12-23 2023-01-24 横河電機株式会社 装置、システム、方法およびプログラム
JP7524548B2 (ja) 2020-02-06 2024-07-30 日本電気株式会社 画像処理装置、検出方法、及びプログラム

Similar Documents

Publication Publication Date Title
US11354023B2 (en) Location-based application recommendations
CN107315988B (zh) 用于在无人驾驶车辆中呈现媒体内容的系统和方法
US9915548B2 (en) Method and apparatus for providing a contextual menu in a map display
TWI393860B (zh) 藉由辨識網頁資訊來導覽地理位置的方法與系統
US11714832B2 (en) Method, apparatus, and system for combining location data sources
US20220179857A1 (en) Method, apparatus, and system for providing a context-aware location representation
CN106796116A (zh) 提供减少路线中断的导航中搜索结果
CN101965500A (zh) 用于呈现位置信息的图形用户界面
WO2005066882A1 (ja) 文字認識装置、移動通信システム、移動端末装置、固定局装置、文字認識方法および文字認識プログラム
WO2019103049A1 (ja) 地図情報処理装置、地図情報処理方法および地図情報処理プログラム
US9609471B2 (en) Method and apparatus for conveying point of interest data with minimum data exchange
CN107270923A (zh) 一种路线推送的方法、终端及存储介质
US20210335128A1 (en) Traffic Notifications During Navigation
TWI725360B (zh) 用於確定地圖上的新道路的系統和方法
JP2019139346A (ja) 画像認識装置、画像認識システム及びプログラム
CN103547887A (zh) 具有用于在短距离内作出多次转向的辅助的导航系统
CN112328911B (zh) 地点推荐方法、装置、设备及存储介质
US20190251355A1 (en) Method and electronic device for generating text comment about content
CN108885716A (zh) 信息处理装置、信息处理方法以及信息提供方法
JP6586146B2 (ja) 地図情報処理装置、地図情報処理方法および地図情報処理プログラム
EP3702962A1 (en) Method and apparatus for feature point position encoding
KR102107207B1 (ko) 이미지 검색 방법, 및 이미지 검색 방법을 실행시키는 프로그램이 기록된 기록 매체
US10580168B2 (en) Content output system and method
US20220180183A1 (en) Method, apparatus, and system for providing place category prediction
JP4026569B2 (ja) 地図表示制御装置