(57)【要約】      （修正有）【課題】外部装置との通信ができない状態でも画像データの解析結果を取得できる情報処理装置、情報処理装置の制御方法およびプログラムを提供する。【解決手段】情報処理装置１０２は、外部装置（画像解析サーバ）１０３との通信ができない場合、外部装置の詳細推論モデルより精度が低い簡易推論モデルを用いて、画像データ５０９を解析して第２の解析結果を取得する。そして、外部装置との通信ができる場合、画像データを外部装置に送信し、当該画像データが詳細推論モデルを用いて解析された第１の解析結果を外部装置から取得する。【選択図】図５
2020126535.tif 000002
【特許請求の範囲】
【請求項１】
外部装置と通信可能な情報処理装置であって、
前記外部装置との通信ができない場合、前記外部装置の第１の推論モデルより精度が低い第２の推論モデルを用いて、画像データを解析して第２の解析結果を取得する解析手段と、
前記外部装置との通信ができる場合、前記画像データを前記外部装置に送信する送信手段と、
前記送信手段により前記外部装置へ送信された画像データが前記第１の推論モデルを用いて解析された第１の解析結果を前記外部装置から取得する取得手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記画像データを前記第１の解析結果および前記第２の解析結果のうち少なくとも一方と関連付けて記録する記録手段と、
前記外部装置との通信状態を検出する検出手段と、をさらに備え、
前記送信手段は、前記外部装置との通信ができない状態から前記外部装置との通信ができる状態へ変化した場合、前記記録手段に記録された複数の画像データのうち、前記第１の解析結果が記録されていない画像データを前記外部装置へ送信することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記送信手段は、前記画像データとともに前記第２の解析結果を前記外部装置に送信することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記第１の推論モデルおよび前記第２の推論モデルを用いて行われる解析による解析結果は、前記画像データに含まれるオブジェクトの属性情報を含み、
前記第２の解析結果に含まれる属性情報の粒度は、前記第１の解析結果に含まれる属性情報の粒度より粗いことを特徴とする請求項１乃至３のうち何れか１項に記載の情報処理装置。
【請求項５】
前記第１の解析結果または前記第２の解析結果を表示するよう制御を行う表示制御手段、をさらに備えることを特徴とする請求項１乃至４のうち何れか１項に記載の情報処理装置。
【請求項６】
前記第２の推論モデルの学習量は、前記第１の推論モデルの学習量より少ないことを特徴とする請求項１乃至５のうち何れか１項に記載の情報処理装置。
【請求項７】
前記情報処理装置は前記第２の推論モデルを構築する機能を有しておらず、前記外部装置は前記第１の推論モデルを構築する機能を有していることを特徴とする請求項１乃至６のうち何れか１項に記載の情報処理装置。
【請求項８】
前記第２の推論モデルを記憶する記憶手段をさらに備え、
前記記憶手段は、前記外部装置から最新の第２の推論モデルを受信した場合、前記記憶手段に記憶していた前記第２の推論モデルを、受信した前記最新の第２の推論モデルに更新することを特徴とする請求項１乃至７のうち何れか１項に記載の情報処理装置。
【請求項９】
レンズ、前記レンズを介して取得された光学像を電気信号に変換する撮像部、前記電気信号をデジタル信号に変換する変換器およびデジタル信号に対して画像処理を施して前記画像データを出力する画像処理部、をさらに備えることを特徴とする請求項１乃至８のうち何れか１項に記載の情報処理装置。
【請求項１０】
外部装置と通信可能な情報処理装置の制御方法であって、
前記外部装置との通信ができない場合、前記外部装置の第１の推論モデルより精度が低い第２の推論モデルを用いて、画像データを解析して第２の解析結果を取得する工程と、
前記外部装置との通信ができる場合、前記画像データを前記外部装置に送信する工程と、
前記外部装置へ送信された画像データが前記第１の推論モデルを用いて解析された第１の解析結果を前記外部装置から取得する工程、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１１】
コンピュータを請求項１乃至９のうち何れか１項に記載の情報処理装置の各手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データの解析を行う情報処理装置、情報処理装置の制御方法およびプログラムに関する。
【背景技術】
【０００２】
デジタルカメラや携帯端末等の情報処理装置が、クラウドサーバ等と連携して、画像データの解析を行う技術が用いられている。関連する技術として、例えば、特許文献１の技術が提案されている。特許文献１の技術では、サーバが、エッジデバイスの各々により認識されることが予想されるオブジェクトのサブセットを識別する。サーバは、対応する複数の画像のサブセットを含む各エッジデバイスについて、縮小オブジェクト認識データベースを生成する。各エッジデバイスは、複数のデバイスイベントを監視し、デバイスイベントに応答して、対応する縮小オブジェクト認識データベースを用いてオブジェクト認識を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−５４４９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像解析処理において、画像データの学習を行い、学習結果に基づいて推論モデルを構築することで、画像データの解析を行う手法がある。画像データの学習や推論モデルの構築を行うためには、情報処理装置に高い処理能力が要求される。また、画像データの解析の精度向上を図るためには、学習時間がかかるため、より高い処理能力が情報処理装置に要求される。この点、デジタルカメラや携帯端末等のように処理能力が限られている情報処理装置の場合、上記の要求に対応することは難しい。そこで、画像データの学習や推論モデルに基づく画像データの解析は、高い処理能力を有する外部装置（クラウドサーバ等）が行い、デジタルカメラや携帯端末等の情報処理装置は、外部装置からの解析結果を取得することが考えられる。しかしながら、上記の構成では、ネットワークが切断されていると、情報処理装置と外部装置との間の通信ができないため、情報処理装置は、画像データの解析結果を取得できない。
【０００５】
本発明の目的は、外部装置との通信ができない状態でも画像データの解析結果を取得できる情報処理装置、情報処理装置の制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の情報処理装置は、外部装置と通信可能な情報処理装置であって、前記外部装置との通信ができない場合、前記外部装置の第１の推論モデルより精度が低い第２の推論モデルを用いて、画像データを解析して第２の解析結果を取得する解析手段と、前記外部装置との通信ができる場合、前記画像データを前記外部装置に送信する送信手段と、前記送信手段により前記外部装置へ送信された画像データが前記第１の推論モデルを用いて解析された第１の解析結果を前記外部装置から取得する取得手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、外部装置との通信ができない状態でも画像データの解析結果を取得できる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態のシステムの構成例を示す図である。
【図２】本実施形態の情報処理装置の機能ブロック図である。
【図３】表示部に表示される画面例を示す図である。
【図４】画像解析によるオブジェクト認識の粒度を示す図である。
【図５】オンライン状態にあるときの画像解析の方法を示す図である。
【図６】オフライン状態にあるときの画像解析の方法を示す図である。
【図７】管理テーブルの一例を示す図である。
【図８】本実施形態の処理の流れを示すフローチャートである。
【図９】詳細識別結果の更新の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の各実施の形態について図面を参照しながら詳細に説明する。しかしながら、以下の各実施の形態に記載されている構成はあくまで例示に過ぎず、本発明の範囲は各実施の形態に記載されている構成によって限定されることはない。
【００１０】
以下、図面を参照して実施形態について説明する。図１は、本実施形態のシステム１０１の構成例を示す図である。システム１０１では、情報処理装置１０２と画像解析サーバ１０３との間は、ネットワーク１０４を介して接続されている。情報処理装置１０２は、例えば、デジタルカメラやスマートデバイス、携帯端末等のデバイスである。情報処理装置１０２は、撮像機能を有する。例えば、情報処理装置１０２は、撮像機能および通信機能を有するスマートフォンであってよい。画像解析サーバ１０３は、画像データの解析を行う外部装置である。画像解析サーバ１０３は、例えば、クラウドサーバ等であってよい。画像解析サーバ１０３は、情報処理装置１０２より高い処理能力を有する。
【００１１】
情報処理装置１０２は、ネットワーク１０４での情報転送が可能な標準プロトコルを有する。情報処理装置１０２は、ＨＴＴＰ等のプロトコルを用いて画像解析サーバ１０３にアクセスする。情報処理装置１０２は、画像データまたは画像データの一部を含む情報（ＸＭＬ等の記述言語で作成された情報）を画像解析サーバ１０３に送信し、ＨＴＭＬやＸＭＬ等の記述言語で作成された情報を取得して解析する。情報処理装置１０２は、解析した情報に基づいて、被写体の種類や名称のタグ付けや表示等の補助を行うことができる。情報処理装置１０２は、撮影モードの選択等のための撮影処理のデータの一部、あるいは撮影した画像データの処理データの一部として利用することができる。
【００１２】
実施形態では、情報処理装置１０２は、ネットワーク１０４を介して、画像解析サーバ１０３と通信を行う際に、画像解析を行うための情報を暗号化するものとする。暗号化の手法には、例えば、ＳＳＬ等が適用できる。また、画像解析サーバ１０３は、許可された情報処理装置１０２との間でのみ、画像解析を行うための情報を送受信できるように構成されているものとする。上述した暗号化等の制限は必須ではない。情報処理装置１０２と画像解析サーバ１０３との間は、常に通信可能に接続されているとは限らない。例えば、情報処理装置１０２の使用環境によって、通信状態が変化し得る。情報処理装置１０２は、ネットワーク１０４に接続できる場合もあり、ネットワーク１０４から切断された状態となる場合もある。情報処理装置１０２がネットワーク１０４から切断された状態になると、情報処理装置１０２は画像解析サーバ１０３と通信不能になる。
【００１３】
図２は、本実施形態の情報処理装置１０２の機能ブロック図である。本実施形態の情報処理装置１０２は、撮像機能を有する。情報処理装置１０２は、上述したように、デジタルカメラ等の撮像装置であってもよい。ただし、情報処理装置１０２は、双眼鏡や望遠鏡等の機能を有しておらず、ファインダーや画面等に画像データの解析結果を表示する装置であってもよい。図２において、撮像レンズ２０１は、フォーカスレンズ等を含むレンズである。撮像レンズ２０１は、フォーカスレンズ以外のレンズを含んでいてもよい。シャッター２０２は、絞り機能を有する。撮像手段としての撮像部２０３は、光学像を電気信号に変換するＣＣＤやＣＭＯＳ素子等で構成される。Ａ／Ｄ変換器２０４は、撮像部２０３から出力されるアナログ信号をデジタル信号に変換する。図２では、Ａ／Ｄ変換器２０４は「Ａ／Ｄ」として示されている。バリア２０５は、撮像レンズ２０１等を覆うことにより、撮像レンズ２０１、シャッター２０２および撮像部２０３を含む撮像系の汚れや破損を防止する。
【００１４】
画像処理部２０６は、Ａ／Ｄ変換器２０４からの画像データまたはメモリ制御部２０７からの画像データに対して、画像処理を施す。当該画像処理としては、所定の画素補間や縮小といったリサイズ処理や色変換処理がある。画像処理部２０６は、撮像された画像データを用いて所定の演算処理を行い、システム制御部２０８が演算結果に基づいて露光制御および測距制御を行う。Ａ／Ｄ変換器２０４から出力された画像データは、画像処理部２０６およびメモリ制御部２０７を介して、またはメモリ制御部２０７のみを介してメモリ２０９に書き込まれる。メモリ２０９は、撮像部２０３から得られ、且つＡ／Ｄ変換器２０４によりデジタルデータに変換された画像データや、表示部２１０に表示するための画像データを記憶する。メモリ２０９は、所定枚数の静止画像データや所定時間の動画像データおよび音声を格納するのに十分な記憶容量を有している。メモリ２０９は、画像表示用のメモリ（ビデオメモリ）も兼ねている。メモリ２０９は、各種の情報を記憶する。
【００１５】
Ｄ／Ａ変換器２１１は、メモリ２０９に記憶されている画像表示用の画像データをアナログ信号に変換して表示部２１０に出力する。図２において、Ｄ／Ａ変換器は、「Ｄ／Ａ」として示される。メモリ２０９に書き込まれた表示用の画像データは、Ｄ／Ａ変換器２１１を介して表示部２１０により表示される。表示部２１０はＬＣＤ等の表示器上に、Ｄ／Ａ変換器２１１からのアナログ信号に応じた表示を行う。不揮発性メモリ２１２は、電気的に消去および記録が可能なメモリであり、例えばＥＥＰＲＯＭなどが用いられる。不揮発性メモリ２１２には、システム制御部２０８が実行する制御プログラムや当該制御プログラムの動作用の定数等が記憶される。
【００１６】
システム制御部２０８は、情報処理装置１０２全体を制御する。システム制御部２０８は、解析手段、取得手段、検出手段および表示制御手段に対応する。システム制御部２０８は、例えば、ＣＰＵである。システムメモリ２１３は、例えばＲＡＭである。システムメモリ２１３には、システム制御部２０８の動作用の定数や変数、不揮発性メモリ２１２から読み出したプログラム等が展開される。ＣＰＵとしてのシステム制御部２０８が、システムメモリ２１３に展開されたプログラムを実行することで、情報処理装置１０２の各処理が実現される。
【００１７】
モード切替スイッチ２１４、シャッターボタン２１５および操作部２１７は、システム制御部２０８に各種の動作指示を入力するための操作手段である。モード切替スイッチ２１４は、システム制御部２０８の動作モードを静止画記録モード、動画記録モードまたは再生モードの何れかに切り替える。動作モードには上記以外のモードがあってもよい。シャッターボタン２１５に対して、撮影準備指示（所謂半押し）がされると、第１シャッタースイッチがＯＮとなり、第１シャッタースイッチ信号ＳＷ１が発生する。シャッターボタン２１５に対して、撮影指示（所謂全押し）がされると、第２シャッタースイッチがＯＮとなり、第２シャッタースイッチ信号ＳＷ２が発生する。
【００１８】
システム制御部２０８は、第２シャッタースイッチ信号ＳＷ２により撮像部２０３からの信号読み出しから記録媒体２２５に画像データを書き込むまでの一連の撮影処理の動作を開始する。操作部２１７の各操作部材は、表示部２１０に表示される種々の機能アイコンが選択操作されることなどにより、場面ごとに適宜機能が割り当てられ各種機能ボタンとして機能する。機能ボタンとしては、例えば、確認ボタンや終了ボタン、戻るボタン、画像送りボタン、ジャンプボタン、絞込みボタン、属性変更ボタン等がある。例えば、メニューボタンが押されると、各種の設定可能なメニュー画面が表示部２１０に表示される。ユーザは表示部２１０に表示されたメニュー画面と、４方向ボタンやＳＥＴボタンとを用いて直感的に各種設定を行うことができる。
【００１９】
操作部２１７は、コントローラホイール２１８およびコントローラリング２１９を有する。コントローラホイール２１８は、回転操作可能な操作部材であり、方向ボタンと共に選択項目を指示する際に使用される。システム制御部２０８は、例えば、パルス信号に基づいて情報処理装置１０２の各構成部を制御する。システム制御部２０８は、上記パルス信号によってコントローラホイール２１８が回転操作された角度や回転数等を判定することができる。コントローラホイール２１８は、回転操作が検出できる任意の操作部材を適用できる。コントローラリング２１９は、操作部２１７に含まれる回転操作部材であり、レンズ鏡筒周りで光軸を中心として回転する操作が可能である。例えば、コントローラリング２１９に対して操作がされると、回転量（操作量）に応じた電気的なパルス信号が発生する。また、操作部２１７に含まれるコントローラリング２１９の機能切替ボタンが押されると、コントローラリング２１９に割り当てる機能を変更可能なメニュー画面が表示部２１０に表示される。コントローラリング２１９およびコントローラホイール２１８は、通常モード項目の選択や値の変更に用いられる。
【００２０】
電源スイッチ２２０は、電源オンと電源オフとを切り替えるためのスイッチである。電源制御部２２１は、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等により構成される。電源制御部２２１は、例えば、電池の装着の有無や電池の種類、電池残量の検出を行う。また、電源制御部２２１は、検出結果およびシステム制御部２０８の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録媒体２２５を含む各構成部へ供給する。電源部２２２は、アルカリ電池やリチウム電池等の一次電池やＮｉＣｄ電池やＮｉＭＨ電池、Ｌｉ電池等の二次電池、ＡＣアダプター等により構成される。
【００２１】
通信部２２３は、記録媒体２２５に記録されている画像データを外部装置に送信する。通信部２２３は、送信手段に対応する。インタフェース２２４は、記録媒体２２５が着脱可能に接続されるインタフェースである。図２では、インタフェースは「Ｉ／Ｆ」と表記される。記録媒体２２５には、半導体メモリや磁気ディスク等を適用できる。ネットワークＩ／Ｆ２２６は、システム制御部２０８の制御により、ネットワーク１０４を介して通信を行うネットワークインタフェースである。ネットワークＩ／Ｆ２２６を介した通信により、情報処理装置１０２は、ネットワーク１０４を介して、画像解析サーバ１０３と通信を行うことができる。通信部２２３とネットワークＩ／Ｆ２２６とは一体の構成であってもよい。
【００２２】
図３は、表示部２１０に表示される画面例を示す図である。図３の画面例において、表示部２１０には、オブジェクト３０３およびオブジェクト３０４が表示されている。各オブジェクトは、例えば、画像データに含まれる被写体である。図３のオブジェクト３０３は、「車」である。オブジェクト３０４は、「人」である。オブジェクトの種類や数等は、図３の例には限定されない。表示部２１０には、オブジェクト３０３の領域として判定された画像領域３０５、およびオブジェクト３０４の領域として判定された画像領域３０６が表示されている。表示部２１０には、オブジェクト３０３の属性を示すタグ３０７およびオブジェクト３０４の属性を示すタグ３０８が表示されている。タグは、属性情報に対応する。図３は、画像領域３０５、画像領域３０６、タグ３０７およびタグ３０８が表示されている例を示しているが、各画像領域は、表示部２１０に表示されなくてもよい。また、オブジェクトの属性は、タグ以外の形式で表示されてもよい。
【００２３】
図４は、画像解析によるオブジェクト認識の粒度を示す図である。タグ４０１は、図３のオブジェクト３０３が画像解析された結果、最も粗い粒度として推論された属性を示す。タグ４０１は、オブジェクト３０３が「自動車」という物体として推論されていることを示す。タグ４０２は、オブジェクト３０３が画像解析された結果、中程度の粒度として推論された属性を示す。タグ４０２は、オブジェクト３０３が「自動車」であり、その車種が「セダン」であると推論されていることを示す。タグ４０３は、オブジェクト３０３が画像解析された結果、最も詳細な粒度として推論された属性を示す。タグ４０３は、オブジェクト３０３の色や模様、付属物等から「タクシー」という特定の用途で使用される自動車であると推論されていることを示す。
【００２４】
同様に、タグ４０４は、オブジェクト３０４の画像解析の結果、最も粗い粒度として、オブジェクト３０４の属性が「人間」であると推論されたことを示す。タグ４０５は、オブジェクト３０４の画像解析の結果、中程度の粒度として、オブジェクト３０４は、性別が「男性」であると推論されたことを示す。タグ４０６は、オブジェクト３０４の画像解析の結果、最も詳細な粒度として、オブジェクト３０４の年齢の推論により、オブジェクト３０４の属性が「成人」であることを示している。図３の例では、粒度が３段階の例を示したが、段階数は３段階には限定されない。
【００２５】
上述した粒度が高くなるに応じて、オブジェクトの推論精度が高くなる。つまり、上述した粒度が最も粗い場合、オブジェクトの推論精度が最も低い。一方、上述した粒度が最も細かい場合、オブジェクトの推論精度が最も高い。オブジェクトの推論は、推論モデルに基づいて行われる。推論モデルは、例えば、機械学習により生成される学習済みモデルである。粗い粒度でのオブジェクトの推論は、学習量が少ない推論モデルを使用しても可能であり、処理能力が低い装置でも実現可能である。一方、詳細な粒度でのオブジェクトの推論は、学習量が多い推論モデルを使用することが必要であり、且つ高い処理能力を有する装置が必要になる。学習量が多い推論モデルは、例えば、大量のデータを入力とした機械学習を行うことにより得ることができる。情報処理装置１０２の処理能力が低い場合、詳細な粒度でのオブジェクトの推論は難しい。この場合、情報処理装置１０２は、画像解析サーバ１０３に、推論処理の要求を出力し、画像解析サーバ１０３が行った推論処理の結果を含む解析結果（第１の解析結果）を取得する。これにより、処理能力が低い情報処理装置でも、詳細な粒度でのオブジェクトの推論結果を取得することができる。
【００２６】
図５は、オンライン状態にあるときの画像解析の方法を示す図である。オンライン状態は、情報処理装置１０２と画像解析サーバ１０３とがネットワーク１０４を介して通信可能な通信状態であり、通信が確立されていることを示す。図５に示されるように、情報処理装置１０２は、簡易的な推論モデルである簡易推論モデル５０２と、簡易推論モデルに基づいて簡易的な推論処理を行う簡易推論コンポーネント５０３を有する。簡易推論モデル５０２は、第２の推論モデルに対応する。簡易推論モデル５０２および簡易推論コンポーネント５０３の機能は、システム制御部２０８がプログラムを実行することで、実現される。情報処理装置１０２はネットワーク１０４と接続されている状態（オンライン状態）において、画像解析サーバ１０３と通信を行う。簡易推論モデル５０２は、例えば、システムメモリ２１３に記憶される。この場合、システムメモリ２１３は、記憶手段に対応する。
【００２７】
画像解析サーバ１０３は、詳細推論モデル５０７を構築するための学習コンポーネント５０６、詳細推論モデル５０７および推論処理を行う詳細推論コンポーネント５０８を有する。詳細推論モデル５０７は、第１の推論モデルに対応する。詳細推論モデル５０７は、簡易推論モデル５０２より精度の高い推論モデル（高性能な推論モデル）である。画像解析サーバ１０３は、ＣＰＵ、ＲＡＭおよびＲＯＭを有しており、ＲＯＭに格納されたプログラムがＲＡＭに展開され、ＣＰＵがＲＡＭに展開されたプログラムを実行する。これにより、学習コンポーネント５０６、詳細推論モデル５０７および詳細推論コンポーネント５０８の機能が実現されてもよい。
【００２８】
情報処理装置１０２は、撮像部２０３から取得した画像データ５０９を、ネットワーク１０４を介して、画像解析サーバ１０３に送信する。情報処理装置１０２は、画像データ５０９とともに、簡易推論モデル５０２を用いて解析された解析結果（第２の解析結果）を画像解析サーバ１０３に送信してもよい。画像解析サーバ１０３は、受信した画像データ５０９を詳細推論コンポーネント５０８に入力して、推論処理を実行する。画像解析サーバ１０３は、上記の推論処理により、画像データ５０９に含まれるオブジェクトを認識し、オブジェクトの属性を判定する。画像解析サーバ１０３は、認識したオブジェクトおよび属性の情報を含む解析結果を情報処理装置１０２に送信する。画像解析サーバ１０３は、高い処理能力を有する。また、画像解析サーバ１０３は、常時稼働による処理時間が確保できるため、より高精度な詳細推論モデル５０７を構築できる。そのため、画像解析サーバ１０３は、最も詳細な粒度での画像データの解析結果を得ることができる。画像解析サーバ１０３の詳細推論モデル５０７は、十分な学習量に基づいて構築される推論モデルである。一方、簡易推論モデル５０２の学習量は、詳細推論モデル５０７の学習量より少ない。このため、簡易推論モデル５０２を用いた推論の精度は、詳細推論モデル５０７を用いた推論の精度より低い。
【００２９】
情報処理装置１０２は、画像解析サーバ１０３から受信した解析結果をメモリ２０９に記憶し、表示部２１０に出力する。これにより、解析結果が表示部２１０に表示される。情報処理装置１０２が、画像解析サーバ１０３から解析結果を受信した場合、情報処理装置１０２の簡易推論モデル５０２および簡易推論コンポーネント５０３は使用されない。画像解析サーバ１０３の学習コンポーネント５０６は、外部のコンピュータ等から任意のタイミングで学習データとしての画像データを取得することができる。学習データとしては、画像解析サーバ１０３が取得した画像データの他、ネットワーク１０４上に公開されている画像データ、あるいは情報処理装置１０２から送信された画像データ５０９等も含まれる。学習コンポーネント５０６は、例えば、上記の各種の画像データを入力とした機械学習を行い、学習結果として、解析の粒度ごとに詳細推論モデル５０７を構築する。学習コンポーネント５０６は、推論モデルを構築する機能に対応する。画像解析サーバ１０３の学習コンポーネント５０６は、詳細推論モデル５０７を構築するとともに、詳細推論モデル５０７の一部である粒度の粗い簡易推論モデル５０２を構築してもよい。
【００３０】
図５において、画像解析サーバ１０３は、学習コンポーネント５０６を有しているが、学習コンポーネント５０６は、画像解析サーバ１０３とは異なる別途の装置が有していてもよい。この場合、画像解析サーバ１０３は、別途の装置が有する学習コンポーネント５０６により最新の詳細推論モデル５０７を常に取得するように構成されていてもよい。また、情報処理装置１０２と画像解析サーバ１０３とが通信可能に接続されている場合（オンライン状態である場合）、画像解析サーバ１０３は、最新の詳細推論モデル５０７の一部の粒度の粗い簡易推論モデルを情報処理装置１０２に送信する。これにより、情報処理装置１０２は、自身が記憶していた簡易推論モデル５０２を、最新の簡易推論モデルに更新する。
【００３１】
図６は、オフライン状態にあるときの画像解析の方法を示す図である。オフライン状態は、情報処理装置１０２がネットワーク１０４に接続できない状態であり、情報処理装置１０２は画像解析サーバ１０３との通信が切断されて、通信不可能な通信状態である。この場合、情報処理装置１０２は、ネットワーク１０４を介して、画像解析サーバ１０３と通信することができない。オフライン状態（通信が切断された状態）は、情報処理装置１０２と画像解析サーバ１０３との間の通信が完全に切断された状態だけでなく、本実施形態の処理を正常に行えない程度に不安定な通信状態であってもよい。図６の簡易推論モデル６０２および簡易推論コンポーネント６０３は、図５の簡易推論モデル５０２および簡易推論コンポーネント５０３に対応する。簡易推論モデル６０２は、上述したように、オンライン状態のときに、最新の簡易推論モデルに更新される。簡易推論コンポーネント６０３は、簡易推論モデル６０２に基づいて、簡易的な推論処理を行う。情報処理装置１０２は、撮像部２０３から取得した画像データ６０４を簡易推論コンポーネント６０３に入力する。簡易推論コンポーネント６０３は、簡易推論モデル６０２を用いて推論処理を実行し、画像データ６０４に含まれるオブジェクトを認識し、認識されたオブジェクトの属性を判定することで、解析結果（第２の解析結果）を得る。簡易推論コンポーネント６０３は、解析結果をメモリ２０９に記憶するとともに、表示部２１０に表示する。これにより、通信状態がオフライン状態であっても、情報処理装置１０２は、簡易推論コンポーネント６０３により、簡易的な画像解析を行うことができる。
【００３２】
情報処理装置１０２は、オフライン時に簡易的な推論処理によるオブジェクトの認識を行った後、オンライン状態になった際に、簡易的に認識されたオブジェクトおよび属性を含む解析結果を、画像データとともに画像解析サーバ１０３に送信してもよい。画像解析サーバ１０３は、受信した解析結果を詳細推論モデル５０７に反映する。つまり、詳細推論コンポーネント５０８は、オフライン状態の間における簡易推論モデル６０２を用いた画像データの解析結果が反映された詳細推論モデル５０７を用いて、詳細な粒度の解析を行うことができる。これにより、詳細推論コンポーネント５０８による推論処理の時間の短縮化が図れる。
【００３３】
図７は、管理テーブルの一例を示す図である。管理テーブルで管理される情報は、テーブル形式とは異なる態様で管理されてもよい。管理テーブルは、例えば、画像データごとに作成され、システム制御部２０８により、記録手段としてのメモリ２０９に記憶される。管理テーブルは、管理番号７０１、領域７０２、簡易推論結果７０３および詳細推論結果７０４の項目を有する。すなわち、画像データが簡易推論結果７０３および詳細推論結果７０４と関連付けてメモリ２０９に記憶される。なお、各レコードは、管理テーブルと対応する画像データを一意に特定するための識別子や画像データの保存場所を示すファイルパスの項目も有していてもよい。管理番号７０１は、画像データの解析の結果、認識されたオブジェクトを管理する番号を示す。領域７０２は、認識されたオブジェクトが画像データに占める領域の座標情報を示す。簡易推論結果７０３は、情報処理装置１０２の簡易推論コンポーネント６０３が簡易推論モデル６０２を用いて画像データを解析した際のオブジェクトの属性の推論結果を示す。詳細推論結果７０４は、画像解析サーバ１０３の詳細推論コンポーネント５０８が詳細推論モデル５０７を用いて画像データを解析した際のオブジェクトの属性の推論結果を示す。レコード７０５は、管理番号「１」に対応するレコードであり、レコード７０６は、管理番号「２」に対応するレコードである。
【００３４】
レコード７０５は、図３のオブジェクト３０３の領域として切り出した画像領域３０５についての管理情報である。レコード７０５の簡易推論結果７０３は、「自動車」であることを示している。簡易推論結果７０３は、オフライン状態における情報処理装置１０２の簡易推論コンポーネント６０３による簡易的な推論結果であり、図４に示されるような粗い粒度の属性である「自動車」であることを示している。レコード７０５の詳細推論結果７０４は、「タクシー」であることを示している。詳細推論結果７０４は、オンライン状態において画像解析サーバ１０３から取得した詳細な粒度の推論結果である。従って、詳細推論結果７０４は、図４に示されるような詳細な粒度の属性である「タクシー」であることを示している。
【００３５】
レコード７０６の簡易推論結果７０３は、簡易的な推論結果である粗い粒度の属性である「人間」であることを示している。レコード７０６の詳細推論結果７０４は、詳細な推論結果である詳細な粒度の属性である「男性・成人」であることを示している。図７は、管理テーブルが２つのレコードである例を示しているが、推論処理が行われてオブジェクトが認識されるごとに、管理テーブルのレコードの数は増える。図７の管理テーブルの例は、簡易推論結果７０３と詳細推論結果７０４との両者を含むが、何れか一方のみを含む構成であってもよい。
【００３６】
図８は、本実施形態の処理の流れを示すフローチャートである。システム制御部２０８は、画像データを取得する（Ｓ８０１）。撮像部２０３から受けたアナログの画像データが、Ａ／Ｄ変換器２０４（変換器）でデジタルの画像データに変換される。そして、画像処理部２０６が画像データに対して画像処理を施す。画像処理が施された画像データがシステム制御部２０８に入力されることで、Ｓ８０１の処理が行われる。Ｓ８０１の処理の後、Ｓ８０２以降の処理が行われる。Ｓ８０２以降の処理は、システム制御部２０８が画像データを取得したタイミングではなく、例えば、一定時間ごとに行われてもよい。
【００３７】
システム制御部２０８は、情報処理装置１０２がオンライン状態であるかを判定する（Ｓ８０２）。システム制御部２０８は、ネットワークＩ／Ｆ２２６の状態を確認して、情報処理装置１０２がネットワーク１０４に接続されているかを検出することで、Ｓ８０２の判定処理を行ってもよい。Ｓ８０２でＮＯと判定された場合、通信状態は、オフライン状態である。この場合、システム制御部２０８は、Ｓ８０１で取得した画像データを、図６で示される簡易推論コンポーネント６０３に入力する（Ｓ８０３）。簡易推論コンポーネント６０３は、図６で示される情報処理装置１０２の簡易推論モデル６０２を用いて、入力された画像データの解析を行い、オブジェクトおよび属性を推論する（Ｓ８０４）。
【００３８】
Ｓ８０２でＹＥＳと判定された場合、通信状態はオンライン状態である。この場合、システム制御部２０８は、Ｓ８０１で取得された画像データを、ネットワーク１０４を介して、画像解析サーバ１０３に送信する制御を行う（Ｓ８０５）。画像解析サーバ１０３は、情報処理装置１０２から受信した画像データを詳細推論コンポーネント５０８に入力する（Ｓ８０６）。画像解析サーバ１０３の詳細推論コンポーネント５０８は、詳細推論モデル５０７を用いて画像データを解析する。そして、画像解析サーバ１０３は、詳細推論モデル５０７を用いて解析されたオブジェクトおよび属性を含む解析結果を情報処理装置１０２に送信する（Ｓ８０７）。情報処理装置１０２は、画像解析サーバ１０３が送信した解析結果を受信する（Ｓ８０８）。情報処理装置１０２は、オンライン状態か否かを検出して、画像解析サーバ１０３に問い合わせを行って解析結果を得る処理と、情報処理装置１０２の内部で行う処理とを逐次的に行ってもよいし、並列的に行ってもよい。
【００３９】
Ｓ８０４では、システム制御部２０８は、自身の簡易推論モデル６０２が解析した解析結果を取得する。簡易推論モデル６０２による解析結果は、粒度の粗い解析結果である。一方、画像解析サーバ１０３から取得した解析結果は、詳細な粒度の解析結果である。システム制御部２０８は、上述した図７の管理テーブルに、オブジェクトごとのレコードを追加する（Ｓ８０９）。この際、システム制御部２０８は、追加したレコードに対して管理番号を記録してもよい。システム制御部２０８は、追加されたレコードに、オブジェクトに関する情報を記録する（Ｓ８１０）。Ｓ８０４の処理が行われた際には、粒度が粗い解析結果が簡易推論結果７０３に記録される。Ｓ８０８の処理が行われた際には、システム制御部２０８は、画像解析サーバ１０３から取得した解析結果を詳細推論結果７０４に記録する。
【００４０】
システム制御部２０８は、画像データに含まれる全てのオブジェクトが認識されたかを判定する（Ｓ８１１）。Ｓ８１１でＮＯと判定された場合、フローは、Ｓ８０２に移行する。Ｓ８１１でＹＥＳと判定された場合、システム制御部２０８は、画像データとともにオブジェクト、領域およびタグを表示部２１０に表示させる（Ｓ８１２）。システム制御部２０８は、Ｓ８１２の処理を行う際、画像データのメタデータとしてタグの情報をメモリ２０９に記憶してもよい。システム制御部２０８は、オブジェクトの解析結果に基づいて、撮影モードの選択や撮影結果の送信等の後工程の処理を行ってもよい。
【００４１】
図９は、詳細識別結果の更新の処理の流れを示すフローチャートである。システム制御部２０８は、ネットワークＩ／Ｆ２２６の状態変化を検出したかを判定する（Ｓ９０１）。ネットワークＩ／Ｆ２２６の状態変化は、オンライン状態からオフライン状態への変化またはオフライン状態からオンライン状態への変化の何れかである。Ｓ９０１でＮＯの場合、フローは、Ｓ９０１に戻る。Ｓ９０１でＹＥＳの場合、システム制御部２０８は、検出された通信状態の変化が、オフライン状態からオンライン状態への変化であるかを判定する（Ｓ９０２）。Ｓ９０２でＹＥＳと判定された場合、システム制御部２０８は、管理テーブルを参照して、簡易推論結果７０３は記録されているが、詳細推論結果７０４が記録されていないレコードがあるかを判定する（Ｓ９０３）。Ｓ９０３でＹＥＳと判定された場合、システム制御部２０８は、該当するレコードの画像データを取得し、画像解析サーバ１０３に送信する制御を行う（Ｓ９０４）。これにより、情報処理装置１０２から画像解析サーバ１０３に画像データが送信される。システム制御部２０８は、上記画像データとともに簡易推論結果７０３を画像解析サーバ１０３に送信する制御を行ってもよい。
【００４２】
画像解析サーバ１０３は、受信した画像データを詳細推論コンポーネント５０８に入力する（Ｓ９０５）。詳細推論コンポーネント５０８は、詳細推論モデル５０７に画像データを入力して、画像解析を行う。画像解析サーバ１０３は、解析結果を情報処理装置１０２に送信する（Ｓ９０６）。上述したように、情報処理装置１０２が、画像データとともに簡易推論結果７０３を送信した場合、詳細推論モデル５０７に簡易推論結果７０３が反映される。詳細推論コンポーネント５０８は、簡易推論結果７０３が反映された詳細推論モデル５０７を用いて、解析を行ってもよい。情報処理装置１０２は、画像解析サーバ１０３が送信した解析結果を受信する（Ｓ９０７）。システム制御部２０８は、受信した解析結果から詳細推論結果を更新する（Ｓ９０８）。
【００４３】
Ｓ９０２でＮＯと判定された場合、およびＳ９０３でＮＯと判定された場合、Ｓ９０４〜Ｓ９０８の処理は実施されない。以上の処理により、管理テーブルのレコードには、オフライン状態で処理された簡易推論結果だけでなく、詳細推論結果も記録されるため、管理テーブルの詳細推論結果が更新される。管理テーブルに複数のレコードが記録されている場合、全てのレコードについて、Ｓ９０４〜Ｓ９０８の処理が実行される。上述したように、情報処理装置１０２は、オンライン状態か否かを検出して、画像解析サーバ１０３に問い合わせを行って解析結果を得る処理と、情報処理装置１０２の内部で行う処理とを逐次的に行ってもよいし、並列的に行ってもよい。また、システム制御部２０８は、オブジェクトの解析結果に基づいて、撮影モードの選択や撮影結果の送信等の後工程の処理を行ってもよい。
【００４４】
以上、本発明の好ましい実施の形態について説明したが、本発明は上述した各実施の形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。本発明は、上述の各実施の形態の１以上の機能を実現するプログラムを、ネットワークや記憶媒体を介してシステムや装置に供給し、そのシステム又は装置のコンピュータの１つ以上のプロセッサーがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４５】
１０１  システム
１０２  情報処理装置
１０３  画像解析サーバ
１０４  ネットワーク
２０３  撮像部
２０８  システム制御部
２０９  メモリ
２１０  表示部
５０２  簡易推論モデル
５０７  詳細推論モデル
【図１】
2020126535.tif 000003
【図２】
2020126535.tif 000004
【図３】
2020126535.tif 000005
【図４】
2020126535.tif 000006
【図５】
2020126535.tif 000007
【図６】
2020126535.tif 000008
【図７】
2020126535.tif 000009
【図８】
2020126535.tif 000010
【図９】
2020126535.tif 000011