(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-26
(45)【発行日】2022-05-10
(54)【発明の名称】撮像装置、情報端末、撮像装置の制御方法、および情報端末の制御方法
(51)【国際特許分類】
H04N 5/232 20060101AFI20220427BHJP
G03B 7/00 20210101ALI20220427BHJP
G03B 17/00 20210101ALI20220427BHJP
【FI】
H04N5/232 250
G03B7/00
G03B17/00 N
H04N5/232 220
H04N5/232 941
(21)【出願番号】P 2018023025
(22)【出願日】2018-02-13
【審査請求日】2021-02-01
(73)【特許権者】
【識別番号】000000376
【氏名又は名称】オリンパス株式会社
(74)【代理人】
【識別番号】100109209
【氏名又は名称】小林 一任
(72)【発明者】
【氏名】福谷 佳之
(72)【発明者】
【氏名】志村 和彦
(72)【発明者】
【氏名】米山 尚
(72)【発明者】
【氏名】李 禎
(72)【発明者】
【氏名】小橋 厚志
(72)【発明者】
【氏名】伊藤 大
(72)【発明者】
【氏名】志摩 伸之
(72)【発明者】
【氏名】吉田 洋一
(72)【発明者】
【氏名】長 和彦
(72)【発明者】
【氏名】野中 修
【審査官】中嶋 樹理
(56)【参考文献】
【文献】特開2013-128251(JP,A)
【文献】国際公開第2017/048386(WO,A1)
【文献】米国特許出願公開第2013/0050507(US,A1)
【文献】国際公開第2010/113463(WO,A1)
【文献】特開平05-260358(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/232
G03B 7/00
G03B 17/00
(57)【特許請求の範囲】
【請求項1】
ユーザが意図する撮影対象を撮像し、画像データを出力する撮像部と、
上記撮影対象の撮影の際に、ガイド表示または自動制御を行うための推論モデルを記憶する記憶部と、
上記推論モデルを用いて、上記ガイド表示の制御または自動制御のための推論を行う推論部と、
上記推論モデルが上記撮影対象の撮影に適しているか否かを判定する判定部と、
上記判定部によって、上記ユーザの意図する撮影対象の撮影に適していないと判定された場合に、上記撮影対象に適した推論モデルの生成要求を、外部にある学習装置に送信する通信制御部と、
を有することを特徴とする撮像装置。
【請求項2】
上記判定部は、当該撮像装置が異なる状況で撮像し、この撮像結果を用いて、上記推論モデルによって推論した際に、どの状況においても上記推論モデルによる推論の信頼性が向上しない場合に、上記推論モデルが、予測された撮影対象の撮影に適しているか否かを判定することを特徴とする請求項1に記載の撮像装置。
【請求項3】
上記推論部は、上記推論モデルが予測された撮影対象の撮影に適しているか否かを判定するための第2の推論部を有し、該第2の推論部は第2の推論モデルを用いて推論を行い、上記第2の推論モデルは上記推論モデルを作成する際に、教師データの中から、特定レベル以上の信頼性が得られないものを集めて教師データとして学習した結果であることを特徴とする請求項1に記載の撮像装置。
【請求項4】
上記判定部は、撮影に先立って、上記ユーザの意図する撮影対象を予測し、この予測に基づいて、上記記憶部に記憶されている上記推論モデルが、予測された撮影対象の撮影に適しているか否かを判定することを特徴とする請求項1に記載の撮像装置。
【請求項5】
上記画像データに基づいて、スルー画を表示する表示部を有し、
上記判定部によって、上記撮影対象の撮影時に、上記ユーザの意図する撮影対象の良好な撮影に適して
いないと、上記推論モデル
が判定された場合に、上記表示部に警告表示を行うことを特徴とする請求項1に記載の撮像装置。
【請求項6】
上記判定部は、上記推論部で行う推論の信頼性を算出し、この信頼性が所定値より高い場合に、上記撮影対象の撮影に適していると判定することを特徴とする請求項1に記載の撮像装置。
【請求項7】
上記記憶部は、複数の推論モデルを記憶可能であり、
上記推論部は、上記複数の推論モデルの中から上記撮影対象に適した推論モデルを選択して上記推論を行う、
ことを特徴とする請求項1に記載の撮像装置。
【請求項8】
上記記憶部は、汎用の推論モデルを更に有し、
上記推論部は、上記判定部によって上記撮影対象の撮影に適して
いないと判定された場合に、上記汎用の推論モデルを選択して上記推論を行う、
ことを特徴とする請求項1に記載の撮像装置。
【請求項9】
上記推論モデルを生成するための要求事項を設定する設定制御部を有し、
上記通信制御部は、上記設定制御部で設定された上記要求事項を上記外部の学習装置に送信する、
ことを特徴とする請求項1に記載の撮像装置。
【請求項10】
上記設定制御部は、上記撮影対象の種別および上記
撮影対象の位置情報の少なくとも1つ
を指定して要求事項を設定し、
上記通信制御部はこの設定された要求事項と共に上記推論モデルの生成要求を送信する、
ことを特徴とする請求項9に記載の撮像装置。
【請求項11】
上記推論部は、上記判定部によって上記撮影対象の撮影に適して
いないと判定された場合であっても、特定期間の間は、上記推論モデルを維持することを特徴とする請求項1に記載の撮像装置。
【請求項12】
上記記憶部は、上記撮影対象に対して、撮影アドバイスまたは自動制御を行うことができないことを推論するためのギブアップ推論モデルを記憶し、
上記推論部は、上記ギブアップ推論モデルを用いて、上記ガイド表示または自動制御を行うことができるか否かの推論を行う、
ことを特徴とする請求項1に記載の撮像装置。
【請求項13】
上記通信制御部は、アドバタイズ送信が可能であり、上記撮像装置が取得したコンテンツまたは上記撮影対象に適した推論モデルの生成要求を、外部の上記学習装置に送信することを特徴とする請求項1に記載の撮像装置。
【請求項14】
ユーザが意図する撮影対象を撮像し、画像データを出力し、
上記撮影対象の撮影の際にガイド表示または自動制御を行うための推論モデルを記憶部に記憶し、
上記推論モデルを用いて、上記ガイド表示の制御または自動制御のための推論を行い、
上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、
上記判定によって撮影に適していないと判定された場合に、上記撮影対象に適した推論モデルの生成要求を、外部に送信する、
ことを特徴とする撮像装置の制御方法。
【請求項15】
人工知能を搭載し、音声操作のアシスタント機能を有する情報端末において、
ユーザの音声を入力し、音声データを出力する音声入力部と、
上記音声データを解析し、上記ユーザの撮影対象を予測する解析部と、
撮像装置と通信を行う通信部と、
上記通信部を通じて、上記撮像装置に記憶されている推論モデルに関する情報を入力し、上記解析部によって解析したユーザの撮影対象の予測に基づいて、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には、外部の学習装置に上記撮影対象の撮影に適した推論モデルを学習させる制御部と、
を有することを特徴とする情報端末。
【請求項16】
上記制御部は、上記外部の学習装置が上記推論モデルを生成し、受信すると、上記撮像装置に上記推論モデルを送信することを特徴とする請求項15に記載の情報端末。
【請求項17】
撮像装置と通信を行う通信部を有し、人工知能を搭載し、音声操作のアシスタント機能を有する情報端末の制御方法において、
ユーザの音声を入力し、音声データを出力し、
上記音声データを解析し、上記ユーザの撮影対象を予測し、
上記通信部を通じて、上記撮像装置に記憶されている推論モデルに関する情報を入力し、上記解析したユーザの撮影対象の予測に基づいて、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には、外部の学習装置に上記撮影対象の撮影に適した推論モデルを学習させる、
ことを特徴とする情報端末の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、携帯端末装置、カメラ等において、データベースに記録されている画像を用いて学習を行い、撮影の際に適正(例えば、第三者から評価を受ける)な写真を撮影できるように、撮影アドバイスを行う、および/または自動制御を行うことのできる撮像装置、情報端末、撮像装置の制御方法、および情報端末の制御方法に関する。
【背景技術】
【0002】
データベースに画像データを蓄積し、端末同士で秘匿性を保ちながら、情報交換を行う情報処理システムが提案されている(例えば、特許文献1参照)。この特許文献1に開示の情報処理システムでは、災害時等において、安否確認情報として人物の撮像画像の特徴情報と、位置情報と、時刻情報を紐付けて、データベースを構築する。この情報処理システムによって、探したい人物の撮像画像と類似する画像を容易に検索することができる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
このように、従来から画像データベースを検索する提案は既になされている。また、深層学習等の学習によって推論モデル(辞書)を生成し、この推論モデルを用いて、撮影の際にアドバイスを得ることが考えられる。撮影対象が種々あることを考慮すると、これらの撮影対象毎に推論モデルを備えておくことが望ましい。しかし、撮影対象によっては、適切な推論モデルが撮影装置に備えられていない場合がある。
【0005】
なお、推論モデルは、
図2を用いて後述する推論エンジンにおいて、各ニューロンN11~N2nを結ぶ結合の強さ(重み付け)である。推論モデルは、入力データが教師データと一致するように、深層学習(機械学習)を行うことによって生成される。入力データと教師データを適宜選択することにより、種々の撮影対象に適した推論モデルを生成することができる。撮影対象に応じた推論モデルを選択することから、推論モデルは「辞書」と呼ばれることもある。
【0006】
本発明は、このような事情を鑑みてなされたものであり、適切な推論モデルが撮像装置に備えられていない場合に、ユーザに的確な撮影ガイドを行い、また自動制御を行うことができる撮像装置、情報端末、撮像装置の制御方法、および情報端末の制御方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため第1の発明に係る撮像装置は、ユーザが意図する撮影対象を撮像し、画像データを出力する撮像部と、上記撮影対象の撮影の際に、ガイド表示または自動制御を行うための推論モデルを記憶する記憶部と、上記推論モデルを用いて、上記ガイド表示の制御または自動制御のための推論を行う推論部と、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定する判定部と、上記判定部によって、上記ユーザの意図する撮影対象の撮影に適していないと判定された場合に、上記撮影対象に適した推論モデルの生成要求を、外部にある学習装置に送信する通信制御部と、を有する。
【0008】
第2の発明に係る撮像装置は、上記第1の発明において、上記判定部は、当該撮像装置が異なる状況で撮像し、この撮像結果を用いて、上記推論モデルによって推論した際に、どの状況においても上記推論モデルによる推論の信頼性が向上しない場合に、上記推論モデルが、予測された撮影対象の撮影に適しているか否かを判定する。
第3の発明に係る撮像装置は、上記第1の発明において、上記推論部は、上記推論モデルが予測された撮影対象の撮影に適しているか否かを判定するための第2の推論部を有し、該第2の推論部は第2の推論モデルを用いて推論を行い、上記第2の推論モデルは上記推論モデルを作成する際に、教師データの中から、特定レベル以上の信頼性が得られないものを集めて教師データとして学習した結果である。
【0009】
第4の発明に係る撮像装置は、上記第1の発明において、上記判定部は、撮影に先立って、上記ユーザの意図する撮影対象を予測し、この予測に基づいて、上記記憶部に記憶されている上記推論モデルが、予測された撮影対象の撮影に適しているか否かを判定する。
第5の発明に係る撮像装置は、上記第1の発明において、上記画像データに基づいて、スルー画を表示する表示部を有し、上記判定部によって、上記撮影対象の撮影時に、上記ユーザの意図する撮影対象の良好な撮影に適していないと、上記推論モデルが判定された場合に、上記表示部に警告表示を行う。
【0010】
第6の発明に係る撮像装置は、上記第1の発明において、上記判定部は、上記推論部で行う推論の信頼性を算出し、この信頼性が所定値より高い場合に、上記撮影対象の撮影に適していると判定する。
第7の発明に係る撮像装置は、上記第1の発明において、上記記憶部は、複数の推論モデルを記憶可能であり、上記推論部は、上記複数の推論モデルの中から上記撮影対象に適した推論モデルを選択して上記推論を行う。
【0011】
第8の発明に係る撮像装置は、上記第1の発明において、上記記憶部は、汎用の推論モデルを更に有し、上記推論部は、上記判定部によって上記撮影対象の撮影に適していないと判定された場合に、上記汎用の推論モデルを選択して上記推論を行う。
第9の発明に係る撮像装置は、上記第1の発明において、上記推論モデルを生成するための要求事項を設定する設定制御部を有し、上記通信制御部は、上記設定制御部で設定された上記要求事項を上記外部の学習装置に送信する。
第10の発明に係る撮像装置は、上記第9の発明において、上記設定制御部は、上記撮影対象の種別および上記撮影対象の位置情報の少なくとも1つを指定して要求事項を設定し、上記通信制御部はこの設定された要求事項と共に上記推論モデルの生成要求を送信する。
【0012】
第11の発明に係る撮像装置は、上記第1の発明において、上記推論部は、上記判定部によって上記撮影対象の撮影に適していないと判定された場合であっても、特定期間の間は、上記推論モデルを維持する。
第12の発明に係る撮像装置は、上記第1の発明において、上記記憶部は、上記撮影対象に対して、撮影アドバイスまたは自動制御を行うことができないことを推論するためのギブアップ推論モデルを記憶し、上記推論部は、上記ギブアップ推論モデルを用いて、上記ガイド表示または自動制御を行うことができるか否かの推論を行う。
第13の発明に係る撮像装置は、上記第1の発明において、上記通信制御部は、アドバタイズ送信が可能であり、上記撮像装置が取得したコンテンツまたは上記撮影対象に適した推論モデルの生成要求を、外部の上記学習装置に送信する。
【0013】
第14の発明に係る撮像装置の制御方法は、ユーザが意図する撮影対象を撮像し、画像データを出力し、上記撮影対象の撮影の際にガイド表示または自動制御を行うための推論モデルを記憶部に記憶し、上記推論モデルを用いて、上記ガイド表示の制御または自動制御のための推論を行い、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、上記判定によって撮影に適していないと判定された場合に、上記撮影対象に適した推論モデルの生成要求を、外部に送信する。
【0014】
第15の発明に係る情報端末は、人工知能を搭載し、音声操作のアシスタント機能を有する情報端末において、ユーザの音声を入力し、音声データを出力する音声入力部と、上記音声データを解析し、上記ユーザの撮影対象を予測する解析部と、撮像装置と通信を行う通信部と、上記通信部を通じて、上記撮像装置に記憶されている推論モデルに関する情報を入力し、上記解析部によって解析したユーザの撮影対象の予測に基づいて、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には、外部の学習装置に上記撮影対象の撮影に適した推論モデルを学習させる制御部と、を有する。
【0015】
第16の発明に係る情報端末は、上記第15の発明において、上記制御部は、上記外部の学習装置が上記推論モデルを生成し、受信すると、上記撮像装置に上記推論モデルを送信する。
【0016】
第17の発明に係る情報端末の制御方法は、撮像装置と通信を行う通信部を有し、人工知能を搭載し、音声操作のアシスタント機能を有する情報端末の制御方法において、ユーザの音声を入力し、音声データを出力し、上記音声データを解析し、上記ユーザの撮影対象を予測し、上記通信部を通じて、上記撮像装置に記憶されている推論モデルに関する情報を入力し、上記解析したユーザの撮影対象の予測に基づいて、上記推論モデルが上記撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には、外部の学習装置に上記撮影対象の撮影に適した推論モデルを学習させる。
【発明の効果】
【0017】
本発明によれば、適切な推論モデルが撮像装置に備えられていない場合であっても、ユーザに的確な撮影ガイドを行い、また自動制御を行うことができる撮像装置、学習装置、撮像方法、および学習方法を提供することができる。
【図面の簡単な説明】
【0018】
【
図1】本発明の第1実施形態に係る撮像システムの主として電気的構成を示すブロック図である。
【
図2】本発明の第1実施形態に係る学習システムにおける推論モデル形成のための構成を示すブロック図である。
【
図3】本発明の第1実施形態に係る撮像システムにおけるカメラの使用状態を示す図である。
【
図4】本発明の一実施形態に係るカ撮像システムにおけるカメラの表示を示す図である。
【
図5】本発明の第1実施形態に係る撮像システムにおけるカメラの使用状態を示す図である。
【
図6A】本発明の第1実施形態に係る撮像システムにおけるカメラの動作を示すフローチャートである。
【
図6B】本発明の第1実施形態に係る撮像システムにおけるカメラの動作を示すフローチャートである。
【
図7】本発明の第1実施形態に係る撮像システムにおける外部機器の動作を示すフローチャートである。
【
図8】本発明の第2実施形態に係る撮像システムの主として電気的構成を示すブロック図である。
【
図9】本発明の第2実施形態に係る撮像システムにおけるキャプチャー装置(撮像装置)の動作を示すフローチャートである。
【
図10A】本発明の第2実施形態に係る撮像システムにおけるAIスピーカーの動作を示すフローチャートである。
【
図10B】本発明の第2実施形態に係る撮像システムにおけるAIスピーカーの動作を示すフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の好ましい実施形態として、本発明をカメラ(撮像装置)と外部機器を有する撮像システムに適用した例について説明する。この撮像システムの概略は以下の通りである。カメラは、外部機器とネットを通じて接続することができる。この外部機器には、画像が蓄積され、適切に撮影されたか否か、第三者からの評価が高いか否か等、画像に関連付けた情報が蓄積されている。
【0020】
また外部機器は、画像データの母集合を作成し、画像に関連付けられた情報を有する画像データを教師データ(正解)として使用することによって深層学習(機械学習)を行い、推論モデル(辞書)を生成することができる。カメラは、この推論モデル(辞書)を入力し、撮影の際に推論モデルに基づいて撮影のアドバイス(アドバイス表示および/またはカメラの自動制御)を受けることができる。
【0021】
カメラは、撮影に先立って、ユーザの意図する撮影対象を予測し、この予測に基づいて、カメラに記憶されている推論モデルが、予測された撮影対象の撮影に適しているか否かを判定する。この判定の結果、撮影対象の撮影に適していない場合には、外部機器にユーザの意図する撮影対象に適した推論モデルの生成を依頼する。また、カメラは、上記撮影対象の撮影時に、撮影に適しているか否かを判定してもよい。この場合には、表示部に警告表示を行う。さらに、カメラに記憶された推論モデルでは不適切と判断された画像等を記憶し、この画像等を外部機器に推論モデルの生成を依頼する候補としてもよい。
【0022】
また、推論モデルは、種々の撮影対象に対して撮影アドバイスを行うことができる汎用推論モデル(汎用辞書)と、特定の範囲の撮影対象に対して撮影アドバイスを行うことができる個別推論モデル(個別辞書)が作成される。カメラは、外部機器から汎用推論モデルおよび個別推論モデルを受信し、記憶部に記憶する。ユーザがカメラを使用する際に、記憶された個別推論モデルを用いて、撮影のアドバイスを行う。撮影対象によっては、個別推論モデルが適していない場合がある。この場合、カメラは、この撮影対象に適した個別推論モデルの生成を外部機器に要求する。外部機器から個別推論モデルを受信できれば、この個別推論モデルを用いて、撮影アドバイスを行う。一方、カメラが、個別推論モデルを取得できない場合には、記憶された汎用推論モデルを用いて、撮影アドバイスを行う。
【0023】
図1ないし
図7を用いて、本発明の第1実施形態について説明する。
図1は、第1実施形態に係る撮像システムの主として電気的構成を示すブロック図を示す。この撮像システムは、カメラ10と外部機器20を有する。
【0024】
カメラ10は、撮像部11、推論エンジン12、通信部13、表示部14、操作部15、記録部16、制御部17を有する。このカメラ10は、外部機器20から推論モデルを受信する撮像装置として機能する。
【0025】
撮像部11は、光学系11a、撮像素子11bを有し、その他、撮像制御回路、画像データ処理回路等を有する。撮像部11は、被写体の画像データを生成し、制御部17および推論エンジン12に出力する。撮像部11は、ユーザが意図する撮影対象を撮像し、画像データを出力する撮像部として機能する。また、撮像部11は、被写体を画像データに変換する撮像部として機能する。
【0026】
推論エンジン12は、後述する外部機器20内の入出力モデル化部24によって生成された推論モデルを入力し、この推論モデルを撮像対象物A用推論モデルとして記憶部12aに記憶する。推論エンジン12は、記憶部12aに記憶された推論モデルを用いて、撮像部11によって取得した画像データについて、評価が高くなるような撮影アドバイス(アドバイス表示および/またはカメラの自動制御)を作成するように推論を行う。推論エンジン12は、後述する
図2と同様、入力層、中間層、出力層を有し、これらの間のニューロンの結合の強さや重み付けは、記憶部12に記憶された推論モデルに従って設定される。
【0027】
記憶部12aは、撮影対象の撮影の際にガイド表示または自動制御するための推論モデルを記憶する記憶部として機能する。この記憶部は、複数の推論モデルを記憶可能である(例えば、
図6AのS7参照)。また、記憶部は、汎用推論モデルを更に有している。記憶部は、撮影対象に対して、撮影アドバイスまたは自動制御を行うことができないことを推論するためのギブアップ推論モデルを記憶する(
図6BのS31、
図7のS57参照)。
【0028】
推論エンジン12は、推論モデルを用いて、ガイド表示の制御または自動制御のための推論を行う推論部として機能する。推論部は、複数の推論モデルの中から撮影対象に適した推論モデルを選択して推論を行う(
図6AのS7、S9参照)。推論部は、判定部によって信頼性が低いと判定された場合に、汎用推論モデルを選択して推論を行う(例えば、
図6AのS17参照)。推論部は、判定部によって撮影対象の撮影に適していないと判定された場合であっても、特定期間の間は、ユーザが画面内に対象を捉えていない場合などがあるため、推論モデルを維持する(例えば、
図6AのS11、S13参照)。ユーザが画面内に対象を捉えていない場合もあるが、特定期間の間、推論モデルを維持するようにすれば、再び、ユーザが画面内に対象を捉えた場合に、同じ推論モデルで推論できる。
【0029】
また、推論部は、推論モデルが予測された撮影対象の撮影に適しているか否かを判定するための第2の推論部を有し、この第2の推論部は第2の推論モデル(例えば、
図7のS57におけるギブアップモデル参照)を用いて推論を行う。第2の推論モデルは推論モデルを作成する際に、教師データの中から、特定レベル以上の信頼性が得られないものを集めて教師データとして学習した結果である(例えば、
図7のS57参照)。すなわち、予測された撮影対象の撮影に適しているか否かを判定するために、様々な状況下における撮影の機会であって、推論モデルの利用時に、ユーザが消去した画像、または推論モデルの作成時に、教師データの中から、特定レベル以上の信頼性が得られない画像を集めて教師データとして学習した結果を第2の推論モデルとして利用することができる。
【0030】
また、推論部は、ギブアップ推論モデルを用いて、ガイド表示または自動制御を行うことができるか否かの推論を行う(例えば、
図6AのS9参照)。もちろん、ギブアップ推論モデルを使わなくとも、次のような撮影シーンが多い場合には、カメラ10に記憶された推論モデルが、ユーザに相応しい推論モデルでないと判定できる。推論モデルでの対象物判定の信頼性が繰り返し低いままの場合、また信頼性が低い値から上昇の傾向が見られなかったり、下がったりする場合である。このように、撮影シーンを変えても全く信頼性が向上しない場合は、このユーザに相応しくない推論モデルだと考えられる。
【0031】
例えば、花を検出したり鳥を撮影するためのガイドを出力する推論モデルは、冬には花が少なく撮影の機会も減り、この推論モデルを利用しても「花の判定」や「花を撮るガイド」など行う機会が少なくなる。しかし、春になれば、上述の推論モデルは再び有効な推論モデルとなる。従って、上述の推論モデルがそのユーザにとって不適切とは言い切れない。また、結婚式のような人物主体の撮影環境・状況では、花の撮影に相応しい推論モデルは適切ではない。それでも、結婚式の翌日に花を撮影するユーザもおり、この推論モデルがそのユーザにとって不適切とは言い切れない。しかし、あらゆる季節、どこに行っても、撮影の機会や撮影状況を変えても、推論モデルが信頼性の高い結果を出さない場合は、このユーザには、別の推論モデルが必要だという判断が出来る。推論エンジン12が、撮像装置が異なる状況(例えば、異なる季節、異なる日時、異なる場所、異なるユーザ、推論モデルの異なる使用期間)で撮像し、この撮像結果を用いて、推論モデルによって推論した際に、どの状況においても推論モデルよる信頼性が向上しない場合に、推論モデルが、予測された撮影対象の撮影に適しているか否かを推論するようにしてもよい。
【0032】
通信部13は、通信回路(送信回路および受信回路を含む)を有し、インターネット等を通じて、外部機器20内の通信部22と、無線通信または有線通信を行う。この通信部14は、ユーザが操作部15によって設定した学習要求事項(リクエスト)を学習部21に送信する(例えば、
図6Bの29、
図9のS67参照)。また通信部13は、入出力モデル化部24で生成された推論モデルを受信する(例えば、
図6BのS31、
図7のS59、
図9のS71参照)。通信部13は、設定制御部によって設定された学習要求事項を学習装置に送信する送信回路として機能する(
図6BのS29等参照)。通信部13は、画像データベースと学習要望事項に基づいて、学習装置によって生成された推論モデルを、受信する受信回路として機能する(例えば、
図6BのS31
図9のS71参照)。
【0033】
なお、カメラ10が直接、外部機器20にアクセスできない場合に、スマートフォン等の携帯型通信装置等を通じて、外部機器20と通信するようにしてもよい。また、カメラ10自体がスマートフォン等の携帯型通信装置に内蔵されている場合には、この携帯型通信装置を通じて、外部機器20に通信するようにすればよい。
【0034】
表示部14は、表示パネル等を有し、撮像部11において取得した画像データに基づいて、スルー画(「ライブビュー画像」ともいう)等の表示を行う。また、表示部14は、推論エンジン12における推論結果の表示を行う。また、表示部14は、操作部15によって設定された学習要望事項(リクエスト)を表示する(例えば、
図4(a)参照)。
【0035】
表示部14は、推論モデルを用いて行った推論結果を表示する表示部として機能する(例えば、
図6AのS19参照)。また、スルー画表示を行う際に、推論結果を表示する(例えば、
図6AのS19参照)。また、表示部14は、カメラ10に記憶されている個別推論モデル(個別推論モデル)では、信頼性の高い撮影ガイド等を行うことができない場合には、警告表示を行う(例えば、
図4(c)、
図6AのS17参照)。また、表示部14は、画像データに基づいて、スルー画を表示する表示部として機能する(例えば、
図6AのS3参照)。判定部によって、撮影対象の撮影時に、ユーザの意図する撮影対象の良好な推論モデルが撮影に適していないと、推論モデルによって判定された場合に、表示部に警告表示を行う(例えば、
図3、
図4(c)、
図6AのS11、S17参照)。
【0036】
操作部15は、パワースイッチ、レリーズ釦、動画釦、モード設定ダイヤル、十字釦、OK釦等の種々の操作部材を有し、操作部材の操作状態を検出し、制御部17に出力する。また操作部15は、表示部14の表示面に対するタッチ操作を検出するタッチパネルを有するようにしてもよい。さらに操作部15は、テキスト入力が可能である。操作部15によって設定された学習依頼が学習部21に送信され、学習部21が学習を行う(
図6BのS29参照)。
【0037】
記録部16は、電気的に書き換え可能な不揮発性メモリを有し、画像データを記録する。すなわち、画像処理部17bが、撮像部11によって取得した画像データに対して、記録用の画像処理を施すので、この画像処理が施された画像データを不揮発性メモリに記録する。
【0038】
制御部17は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、カメラ10内の各部を制御する。制御部17は、パラメータ制御部17a、画像処理部17b、記録制御部17c、設定制御部17e、通信制御部17fを有する。
【0039】
制御部17は、推論モデルが撮影対象の撮影に適しているか否かを判定する判定部として機能する(例えば、
図6AのS11参照)。判定部は、推論部で行う推論の信頼性を算出し、この信頼性が所定値より高い場合に、撮影対象の撮影に適していると判定する(例えば、
図6AのS11参照)。判定部は、推論部で行う推論の信頼性を算出し、この信頼性が所定値より高い場合に、撮影対象の撮影に適していると判定する(例えば、
図6AのS11参照)。
【0040】
また、判定部は、撮像装置が異なる状況で撮像し、この撮像結果を用いて、推論モデルによって推論した際に、どの状況においても推論モデルよる信頼性が向上しない場合に、推論モデルが、予測された撮影対象の撮影に適しているか否かを判定する。上述の「異なる状況」での撮像とは、例えば、異なる季節、異なる日時、異なる場所、異なるユーザ、推論モデルを記憶してからの異なる使用期間で、撮像することをいう。この判定は、後述する
図6AのS11において、信頼性が向上されないと判定された場合に、推論モデルが、撮影対象の撮影に適しているか否かを判定するようにしてもよい。なお、この判定は、制御部17に限らず、推論エンジン12が行うようにしてもよい。なお、「異なる使用期間」が、推論モデルを使用し始めてからの期間が短い場合には、撮影対象の撮影に適しているいか否の判断は時期尚早である。
【0041】
パラメータ制御部17aは、カメラ10内の種々のパラメータを制御する。パラメータとしては、例えば、露出制御用パラメータ(絞り値、シャッタ速度値、ISO感度等)、焦点距離(ズーミング)調節用パラメータ、焦点位置(ピント位置)調節用パラメータ等がある。また、パラメータとしては、撮影制御のためのパラメータに限らず、アートフィルタ等の画像処理のためのパラメータであってもよい。
【0042】
画像処理部17bは、画像処理回路を有し、スルー画表示用の画像処理、記録用の画像処理、記録画像の再生用の画像処理等を行う。記録制御部17cは、記録制御回路を有し、記録部16に画像データを記録するための記録制御を行う。
【0043】
設定制御部17dは、学習部21において学習するための学習要望事項(リクエスト)の設定を制御する。ユーザが、操作部15によって学習要望事項(リクエスト)を入力すると、この学習要望事項を学習部21に、通信部13および通信部22を通じて送信する。学習部21が深層学習(深層学習に限らず、機械学習であればよい)を行い、推論モデルが生成されると、通信部22および通信部13を通じて受信し、推論エンジン12の記憶部12aに記憶させる。設定制御部17dは、推論モデルを生成するための要求事項を設定する設定制御部として機能する。設定制御部は、撮影対象の種別および位置情報の少なくとも1つ指定して要求事項を設定する(例えば、
図7のS43、S47参照)。
【0044】
通信制御部17eは、通信制御回路を有し、通信部13が学習部21と通信する際に通信制御を行う。通信制御部17eは、判定部によって、ユーザの意図する撮影対象の撮影に適していないと判定された場合に、撮影対象に適した推論モデルの生成要求を、外部に送信する通信制御部として機能する。通信制御部は、設定制御部で設定された要求事項を外部に送信する(例えば、
図6BのS29参照)。通信制御部はこの設定された要求事項と共に推論モデルの生成要求を送信する。
【0045】
外部機器20は、学習部21と、外部画像データベース(DB)27を有する。学習部21と外部画像DB27は、同一の機器内に配置されてもよく、同一の機器内に配置されていなくてもよい。学習部21と外部画像DB27は通信によって連携することができればよい。また、外部画像DB27は複数設けられていてもよく、学習部21から複数の外部画像DBに通信部22および通信部28を通じて、画像データにアクセスし、画像データに関する情報を取得することができればよい。後述する
図3においては、外部機器20は、サーバ30内に配置され、カメラ10とはインターネットを介して接続することができる。
【0046】
学習部21は、通信部22、母集合作成部23、入出力モデル化部24、出力設定部25、制御部26を有する。
【0047】
通信部22は、(受信回路および/または送信回路を有する)通信回路を有し、外部画像DB27の通信部28とデータの送受信を行う。また通信部22は、カメラ10の通信部13ともデータの送受信を行う。通信部22は、ユーザの意図する写真を表す学習要望事項(リクエスト)を撮像装置から受信する受信回路として機能する(例えば、
図7のS41参照)。また通信部22は、機械学習用プロセッサから出力された推論モデルを撮像装置に送信する送信回路として機能する(例えば、
図7のS59参照)。
【0048】
母集合作成部23は、深層学習を行うための画像データの母集合を作成する。最適な母集合としては、全ての画像データをそのまま全部使用してもよい。しかし、母集合が大きすぎると、処理に時間が掛かってしまう。また母集合が大きすぎると、過学習となり信頼性が低下してしまう場合がある。そこで、画像データの付随情報として送信されてきた情報を用いて、全画像データから適当なサイズの母集合を抽出することが好ましい。
【0049】
入出力モデル化部24は、機械学習用プロセッサを有し、所謂人工知能(AI)を用いて深層学習(機械学習)を行う。具体的には、入出力モデル化部24は、母集合作成部23によって作成された画像データの母集合を用い、汎用推論モデルまたは個別推論モデルを深層学習によって生成する。入出力モデル化部24は、
図2に示すような構成を有している。入力層Iに母集合作成部23に作成された画像データを入力する。また、出力層Oに、画像の評価結果、例えば、教師データ(正解)を与える。入力と出力が一致するように、各ニューロンN11~N2nの結合の強さ(重み付け)を算出することによって推論モデルを生成する。
【0050】
また、入出力モデル化部24は、カメラ10から送信されてきた学習要望事項に合致し、第三者から評価されることが所定値より多い画像を画像データベースの中から抽出し、この抽出した画像用いて、機械学習(深層学習を含む)を行い、推論モデルを出力する機械学習用プロセッサ(ニューラルネットワーク等の、学習データや学習パラメータを入力して様々な手法の機械学習を行う学習結果生成用の機械学習用プロセッサ)として機能する(例えば、
図7のS49参照)。
【0051】
出力設定部25は、入出力モデル化部24によって生成された推論モデルを用いて、推論を行う際に使用する撮影アドバイス、及び/又は撮影パラメータを設定する。すなわち、カメラ10は、推論エンジン12において、撮影対象に対して、第三者等から評価を受けるような写真を撮影するための撮影アドバイスを表示する。出力設定部25は、この時に使用する撮影アドバイスを生成し、設定する。また、カメラ10は、推論エンジン12において、撮影対象に対して、第三者等から評価を受けるような写真を撮影するように、撮影パラメータ等を自動設定する。出力設定部25は、この時に使用する撮影パラメータを生成し、設定する。
【0052】
制御部26は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、学習部21内の各部を制御する。
【0053】
なお、制御部17、26内のCPUの周辺回路の全部または一部をCPU(Central Processing Unit)とプログラムコードによって実現するようにしてもよく、DSP(Digital Signal Processor)等のプログラムコードで実行される回路で実現するようにしてもよく、ヴェリログ(Verilog)によって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またハードウエア回路によって実行するようにしても勿論かまわない。また、CPUの機能の一部をDSP等のプログラムコードで実行される回路で実現するようにしてもよく、ヴェリログによって記述されたプログラム言語に基づいて生成されたゲート回路等のハードウエア構成でもよく、またハードウエア回路によって実現するようにしてもよい。
【0054】
外部画像DB27は、通信部28と画像分類部29を有する。外部画像DB27は、第三者がアクセスすることでき、第三者が画像を気に入ると、「イイネ」等、第三者の好みに合ったことが意思表示される。この意思表示は、ネットを通じて、評価された画像に関連付けて外部画像データベースに記録され、またネットを通じて公表される。また、この「イイネ」表示に限らず、画像の評価がなされれば、画像に関連付けて、評価が記録される。通信部28は、通信回路を有し、学習部21の通信部22と、データの送受信を行う。
【0055】
画像分類部29は、外部画像DB27内に蓄積され、または外部画像DB27の外部にある画像DBに蓄積された画像データの画像分類を行う。すなわち、撮影対象物毎に分類し、分類画像毎にデータベースに記録する。
図1には、対象物種類A画像群29aと対象物種類B画像群29bの2種類の画像群を記録することが示されている。しかし、2画像群に限らず、3画像群以上の画像群に分類し、画像群毎に記録するようにしてもよい。
【0056】
次に、
図2を用いて、深層学習を行う入出力モデル化部24および、推論モデルを用いて推論する推論エンジン12の構成について説明する。この入出力モデル化部24は、入力層Iと出力層Oの間に中間層(ニューロン)が配置されている。この中間層としては、何層かのニューロンN11~NN1n、N21~N2n、・・・が配置されている。ニューロンの層の数は設計上適宜決められ、また各層におけるニューロンの数も設計上適宜決められる。
【0057】
入力層Iには、ステップS37において設定されるフォロー画像が入力され、出力層Oには、教師データ(正解)が与えられる。入力層Iに画像データが入力された際に、出力層Oから教師データ(正解)が出力されるように、各ニューロンと各ニューロンの結合の強さ(重み付け)が、それぞれ学習によって決定される。推論モデルとして、学習によって得られた各ニューロンと各ニューロンの結合の強さ(重み付け)が出力される。
【0058】
推論エンジン12は、
図2と同様の構成を有し、入出力モデル化部24で生成された推論モデル(ニューロンとニューロンの結合の強さ(重み付け))が、中間層に設定される。このため、入力層Iに撮像部11によって取得された画像データを入力すると、出力層Oから、撮影ガイド等の出力を得ることができる。
【0059】
次に、
図3ないし
図5を用いて、本撮像システムにおける推論モデルを用いたアドバイス等について説明する。
【0060】
今、ユーザ110は、
図3に示すように、カメラ10を用いて、エッフェル塔を撮影したいと思っている。カメラ10の推論エンジン12内の記憶部12aには、行動ガイド用の設定推論モデル12aaと、撮影アドバイス用のアシスト推論モデル12abが記憶されている。設定推論モデル12aaは、撮影を行う際のユーザの行動をアシストするための推論モデル(推論モデル)が記憶される。設定推論モデル12aaは、例えば、エッフェル塔を撮影するにあたって、第三者から評価される写真を撮影するには、どの撮影地点に移動すればよいか等を推論するに適しており、撮影者の行動をガイドするための推論を行うことができる。
【0061】
また、アシスト推論モデル12abは、ユーザが撮影を行う際の撮影ガイドを行うための推論モデル(推論モデル)が記憶される。アシスト推論モデル12abは、例えば、第三者から評価されるための写真を撮影するための露出制御値(絞り値、シャッタ速度値、ISO感度)、焦点距離(ズーミング)、焦点位置(ピント位置)等が記憶される。また、アシスト推論モデル12abは、露出制御値に限らず、構図に関する撮影ガイドを行うための推論モデル(辞書)を記憶していてもよい。構図に関する撮影ガイドは、例えば、もう少し、カメラの撮影レンズの向きを左、右、上、又は下に移動させる等をユーザに指示する。
【0062】
設定推論モデル12aaは、画像特徴入力、第1特徴抽出、設定出力を記憶しており、アシスト推論モデル12abは、画像特徴入力、第2特徴学習、撮影アシスト出力を記憶している。これらの推論モデル(辞書)は、
図2に示した学習モデルに対応している。第1画像特徴入力は、入力層Iに入力される画像の特徴である。第1特徴抽出は入力層Iに入力された画像データの内から抽出される画素の位置、輝度、色等の情報である。第1特徴学習は、各ニューロン間での結合の強さ(重み付け)である。設定出力は、深層学習の結果が記憶されている。なお、本実施形態においては、「設定推論モデル」と「アシスト推論モデル」に分けている。しかし、これに限らず、両推論モデルを統合してもよく、また、更に3以上の推論モデルに機能を分けてもよい。
【0063】
設定推論モデル12aaおよびアシスト推論モデル12abは、それぞれ汎用推論モデルおよび個別推論モデルを有している。個別推論モデル(個別辞書)は、例えば、エッフェル塔撮影用推論モデル、東京タワー撮影用推論モデル、犬撮影用推論モデル、鳥撮影用推論モデル、風景撮影用推論モデル等、個別の撮影対象毎に行われた学習結果に基づく推論モデル(辞書)である。
【0064】
前述したように、ユーザ110は、エッフェル塔を撮影用したいと思っている。実際に、パリを訪問する前に、カメラ10の操作部15において撮影対象の設定を行う(
図3の符号110a参照)。またカメラ10にマイク等の音声入力部と音声認識部を有する場合には、音声によって撮影対象の設定を行うことができる。しかし、カメラ10の設定推論モデル12aa、アシスト推論モデル12abには、エッフェル塔を撮影する際に適した個別推論モデルが記憶されていない。このとき、カメラ10は、エッフェル塔の写真を撮影するための推論モデルが記憶されていないことから、このことを示す警告表示を行う。
図3に示す例では、「エッフェル塔の撮影は、自信がないので学習させてください」と表示されている(
図3の符号10a参照)。
【0065】
そこで、ユーザ110は、サーバ30内の学習部21に対して、エッフェル塔の撮影に適した推論モデル(推論モデル)を作成するように学習要求を送信する(
図6BのS29参照)。なお、ユーザ110が、学習部21に対して、学習要求を行っても、学習結果に基づく個別推論モデルを受信するまでに、相当の時間が掛かる場合がある。この場合には、新たに生成された個別推論モデルの受信を待っていてもよい。それまでの間は、推論エンジン12内の記憶部12aに記憶されている汎用推論モデル(汎用推論モデル)を用いて、行動ガイド及び/又は撮影ガイドを行うようにしてもよい。また、個別推論モデルを生成する時間が相当の長い場合には、学習のレベルを下げて、短時間で生成するようにしても良い。
【0066】
カメラ10内に記憶された個別推論モデルは、ユーザが構図を変化させる等により撮影対象が画面から消失すると、短時間であるが撮影ガイド等を適切に行うことができない場合がある。この短時間の間(
図6AのS13の「特定期間」に相当)はその個別推論モデルを維持する。この短時間が経過し、画面内に再び撮影対象が戻ると、カメラ10は直ぐに個別推論モデルを用いて推論し、撮影ガイド等を行うことができる。特定期間経過後も撮影ガイド等を適切に表示することができない場合には、カメラに記憶されている個別推論モデルが、ユーザの撮影傾向にあっていない可能性がある。そこで、このときの画像やその付随情報を学習依頼の参考情報としてもよい(
図6AのS13~S17参照)。
【0067】
また、汎用推論モデルよりは、個別推論モデルの方が、ここの撮影対象との目的適合性が高いことから、個別推論モデルを用いた方が的確な撮影ガイド等を行うことができる。しかし、個別推論モデルを用いて、撮影ガイド等を行うことができない場合があり、その場合には汎用推論モデルを用いて、撮影ガイド等を行う。この場合、後述するギブアップモデルを生成しておき(
図7のS57参照)、カメラに記憶されている個別推論モデルの信頼性を表示するようにしてもよい。すなわち、撮影シーンを判定し、個別推論モデルの信頼性を表示する。例えば、鳥用推論モデルの信頼性は40%、風景推論モデルの信頼性は40%のような表示をしてもよい。
【0068】
図4および
図5は、カメラ10に推論モデルとして、鳥の撮影に適した推論モデルが記憶されている場合に、エッフェル塔の撮影を行う場合を示す。
【0069】
まず、
図4(a)は、ユーザが、個別推論モデルとして、鳥の撮影に最適な推論モデルを要求する様子を示す。ユーザは、操作部15を操作して、推論モデルとして「鳥」を設定する。
図4(a)は、このときの表示部14における表示を示す。設定制御部17dは、「鳥」の推論モデルが設定されると、通信部13および通信部22を通じて、学習部21内の入出力モデル化部24に対して、「鳥」の推論モデルの生成を要求する。(例えば、
図6BのS27、S29参照)入出力モデル化部24は、深層学習によって、鳥の撮影に最適な推論モデル(鳥用推論モデル、鳥辞書)を生成する(例えば、
図7のS49参照)。推論モデルが生成されると、出力設定部25は、撮影アドバイスおよび撮影パラメータ等の出力を生成し、設定する。
【0070】
出力設定部25に鳥用推論モデルが設定されると、通信部22および通信部13を通じて、カメラ10は鳥用推論モデルを取得する(
図6BのS31参照)。カメラ10は、鳥用推論モデルを取得すると、
図4(b)に示すように、表示部14に、鳥推論モデルを取得したことを表示する。
【0071】
このように、鳥推論モデルを取得したカメラ10が、撮影対象として鳥を撮影する場合には、
図5(a)に示すように、カメラ10は鳥の撮影に適した撮影ガイドや行動ガイド等を表示することができる。しかし、このカメラ10で、
図5(b)に示すように、エッフェル塔を撮影する場合には、カメラ10に記憶された鳥推論モデルでは、十分な撮影ガイドや行動ガイドを行うことができない。
【0072】
そこで、
図4(c)または
図5(b)に示すように、表示部14に、カメラに記憶されている鳥推論モデルでは撮影ガイド等をすることができないことを表示する。また、画像認識によって、どの推論モデルを適用すべきかを推論し、その推論結果を表示してもよい。推論の結果、複数の推論モデルがあれば、これらを候補として表示してもよい。
【0073】
図4(c)に示す場合には、表示部14にスルー画表示と共に「鳥推論モデルでは無理」のテキスト表示を行う。しかし、この表示だけではなく、ユーザに撮影のヒントなるガイド表示を行ってもよい。すなわち、スルー画には種々の被写体が含まれていることが多い。例えば、画像認識によって、スルー画中に木があることを認識した場合、木に鳥が止まっている可能性があることを推論できれば「鳥がいるなら木の方かも」という表示を行ってもよい。
【0074】
また、
図5(b)にには、表示部14に撮影ガイドができないことを「ばってん(斜め線)」14aで表示している。この警告表示は、推論エンジンがギブアップモデル(
図6BのS31、
図7のS57参照)を用いて推論することによって行うようにしてもよい。この場合も前述したように、特定期間の間は、鳥の推論モデルを維持する。そして、特定期間後に学習依頼をするようにしてもよい。なお、十分な撮影ガイドや行動ガイド等を行うことをできないことの警告表示としては、表示部14に視覚的に表示する以外にも、音声によって行うようにしてもよい。
【0075】
次に、
図6Aおよび
図6Bに示すフローチャートを用いて、カメラ10の動作を説明する。このフローは、カメラ10内の制御部17がメモリに記憶されたプログラムに従って、
図6Aおよび
図6Bに示すフローチャートを実行する。
【0076】
カメラ制御のフローが開始すると、まず、撮影モードか否かを判定する(S1)。本フローにおいては、カメラ10は、撮影モードと学習モードの2種類のみを記載する。しかし、これらのモード以外にも、再生モード等、他のモードを実行できるようにしてもよい。操作部15によって学習モードが設定されていなければ、撮影モードと判定される。なお、学習モードは、ユーザが設定制御部17dによって、学習部25に推論モデルの生成を依頼するモードである。
【0077】
ステップS1における判定の結果、撮影モードであった場合には、画像入力を行う(S3)。このステップでは、撮像部11によって画像データを入力し、この入力された画像データを用いて、表示部14にスルー画像が表示される。
【0078】
画像入力を行うと、次に、推論モデルが決定済みか否かについて判定する(S5)。推論エンジン12内の記憶部12aに記憶される個別推論モデル(個別辞書)は、少なくとも1つあり、複数の個別推論モデルが記憶されていることが望ましい。また、記憶部12aには汎用推論モデルも記憶されている。このステップでは、個別推論モデルまたは汎用推論モデルが選択されているか否かについて判定する。
【0079】
ステップS5における判定の結果、推論モデルが決定されていない場合には、信頼性の高い推論モデルを選択する(S7)。ここでは、ステップS3において入力された画像を用いて、制御部17が撮影シーンを解析する。そして、撮影シーンに合った信頼性の高い個別推論モデル(または汎用推論モデル)を選択する。具体的には、カメラに記憶されている複数の個別推論モデルを用いて、順次仮推論を行い、その中で最も信頼性が高い個別推論モデルを選択するようにしてもよい。また、撮影シーンの解析にあたっては、撮影シーン解析用の推論モデルを用意しておき、この推論モデルを用いて判定するようにしてもよい。また、撮影シーンの解析にあたっては、ステップS3によって取得された画像に加えて、GPS(Global Positioning System)等によって取得された位置情報等を用いてもよい。撮影シーンとしては、例えば、鳥の撮影シーン、エッフェル塔の撮影シーン等、撮影対象を識別できればよい。
【0080】
ステップS7において推論モデルを選択すると、またはステップS5における判定の結果、推論モデルが決定済みの場合には、次に、推論を行う(S9)。ここでは、推論エンジン12の記憶部12aに記憶され、選択されている推論モデルを用いて、撮影ガイド及びまたは撮影制御の推論を行う。例えば、設定推論モデル12aaを用いて、撮影者の行動ガイド、例えば、どの撮影地点が第三者から評価される写真が撮影されるかをガイドするための推論を行う。また、アシスト推論モデル12abを用いて、第三者に評価される写真を撮影するための露出制御値、焦点距離(ズーミング)、焦点位置(ピント位置)、構図等についてガイドするための推論を行い、また撮影制御値の推論を行う。ここでの推論結果に基づいて、後述するステップS19において、アドバイスや撮影制御を行う。
【0081】
推論を行うと、次に、信頼性が高いか否かについて判定する(S11)。ここでは、推論エンジン12による推論の信頼性について判定する。信頼性としては、例えば、LOSS値を算出するようにしてもよい。LOSS値は、予め解答が分かっている練習問題で深層学習を行った場合に、深層学習で生成された推論モデルでの推論結果と、予め分かっている解答との差異である。
【0082】
ステップS11における判定の結果、信頼性が低い場合には、特定期間、推論モデルを維持する(S13)。推論モデルの信頼性は、撮影対象が変動する等の理由により、一時的に低下する場合もある。例えば、ユーザがカメラを振ってしまうことにより、撮影対象がフレームから外れてしまうことがある。このため、特定期間の間、推論用の推論モデルとして変更することなく、維持する。特定期間、推論モデルを維持することにより、再び、撮影対象がフレームの中に入ってきた場合に、ステップS7で選択した推論モデルを使用することができる。なお、特定期間としては、通常、撮影対象がフレームの外に出てしまってから、再び、フレーム内に戻ってくるに要する期間を確保できればよい。
【0083】
特定期間が経過すると、次に、対象物判定を行う(S15)。ここでは、ステップS7で説明したのと同様に、撮影シーンが何であるかついて判定し、判定した撮影シーンに適した推論モデルが記憶部12aに記憶されているか否かについて判定する。この判定の結果、推論モデルにある対象物(撮影シーン)の場合には、推論モデルを変更し、ステップS11に戻る。
【0084】
一方、ステップS15における判定の結果、推論モデルにない対象物(撮影シーン)の場合には、次に、学習依頼の候補とする(S17)。ここでは、ステップS3において入力した画像に対する推論の信頼性が低いことから、カメラ10内に記憶されている推論モデルが、ユーザの撮影傾向に合っていないといえる。そこで、学習部21に学習を依頼する際に参考となるように、画像やその付随データを記憶しておく。後述するステップS29においては、この記憶された情報も用いて、学習依頼する。また、このステップ17では、推論モデルが適切でなく撮影ガイド等を行うことができない旨の警告表示を行う(例えば、
図3(c)参照)。また、カメラ10は適切な個別推論モデルを備えていないことから、汎用推論モデルを用いて、推論を行い、アドバイス、撮影制御を行うようにしてもよい。この汎用推論モデルを使用する場合には、ステップS17からステップS9に進むようにすればよい。
【0085】
ステップS11に戻り、このステップにおける判定の結果、信頼性が高い場合には、推論に応じたアドバイス、撮影制御を行う(S19)。ここでは、ステップS9における推論結果に従って、表示部14に撮影アドバスを表示し、また露出制御値、焦点距離(ズーミング)、焦点位置(ピント位置)等の撮影制御を行う。この撮影制御は、自動設定でもよく、また表示部14に表示し、ユーザが手動設定するでもよい。
【0086】
ステップS19において推論に応じたアドバイス等を行うと、またはステップS17において、学習依頼を行うと、次に、動画撮影または静止撮影か否かを判定する(S21)。ユーザは、動画撮影を行う場合には操作部15の動画釦等を操作し、また静止画撮影を行う場合には、操作部15のレリーズ釦を操作する。このステップでは、これらの操作部材が操作されたか否かに基づいて判定する。
【0087】
ステップS21における判定の結果、動画または静止画撮影の場合には、撮影を行い、記録する(S23)。ここでは、撮像部11によって取得した画像データを、画像処理部17bにおいて、記録用の画像処理を施し、この処理された画像データを記録制御部17cが記録部16に記録する。また、動画撮影の場合には、ユーザが操作部15によって終了操作するまで、動画の記録を行う。
【0088】
ステップ23において撮影および記録を行うと、またはステップS21における判定の結果、動画または静止画撮影でない場合には、ステップS1に戻る。
【0089】
ステップS1に戻り、このステップにおける判定の結果、撮影モードでない場合には、ステップ25以下に進み、学習部21に学習の依頼を行う。まず、推論モデルの取得か否かについて判定する(S25)。ユーザが、個別の撮影対象に適した推論モデルの作成を依頼する場合には、操作部15によって設定操作を行う。このステップでは、設定制御部17dが、推論モデル設定のための設定操作がなされたか否かについて判定する。例えば、前述した
図3のように、ユーザがエッフェル塔へ行き、写真を撮影したい場合に、カメラ10にエッフェル塔の撮影に適した推論モデルが記憶されていないことがある。このような場合には、ユーザは操作部15を操作して、推論モデルを入手するための操作を行う。また、撮影時に、ユーザの意図する撮影対象に適した推論モデルが記憶されていないことに気付いた場合に、この設定操作を行うようにしてもよい。
【0090】
また、ステップS25においては、ユーザが手動操作で設定操作を行う以外にも、カメラ10が自動的に推論モデル作成依頼の設定を行うようにしてもよい。例えば、撮影時に推論結果の信頼性が低かった場合に、学習依頼の候補としてあるので(
図6AのS17参照)、この候補に基づいて、推論モデルの作成を依頼するようにしてもよい。また、これに限らず、例えば、ユーザの撮影対象の傾向を検出し、不足している推論モデルがあれば依頼するようにしてもよい。これらの場合には、カメラ10が、撮影に先立って、ユーザの意図する撮影対象を予測するようにしているので、事前に必要な推論モデルをカメラ10に記憶させておくことができる。
【0091】
ステップS25における判定の結果、推論モデルを取得する場合には、次に、対象物の設定を行う(S27)。ユーザが操作部15によって撮影対象物(撮影シーン)を設定するので、この設定された撮影対象物を取得する。なお、撮影対象物の設定としては、操作部15によってテキスト入力によって行ってもよく(
図4Aでは「鳥」と入力)、またカメラがマイクを備えていれば音声入力によって行ってもよく、また撮影画像を指定し、シーン解析によって設定するようにしてもよい。また、対象物の特徴を指定するようにしてもよい。
【0092】
対象物を特定すると、次に、学習依頼を行う(S29)。ここでは、制御部17内の設定制御部17dは、学習部21に、ステップS27において設定した対象物(撮影シーン)を撮影するに適した個別推論モデルを生成するように、外部機器21内の学習部に依頼するする。推論モデルは、外部機器21において生成し(
図7のS49参照)、生成されるとカメラに送信されてくる(
図7のS59参照)。学習部21は、カメラ10が撮影した画像および付随データと、外部画像DB27に蓄積されている画像および付随データを用いて学習する。そこで、学習を依頼する場合には、カメラ10が撮影した画像および付随データも送信する。例えば、カメラ10の記録部16から削除した画像は失敗画像として、また、プリントアウトした画像や、他のサーバ等に投稿した画像は成功画像として、教師データとして使用することができる。
【0093】
学習依頼を行うと、次に、推論モデルを取得し、記録する(S31)。ここでは、入出力化部24が生成した推論モデルを、通信部22および通信部13を通じて、取得し、記憶部12aに記憶する。また、このステップでギブアップモデル等も取得する。前述したように、
図4(c)および
図5(b)において説明したように、本実施形態においては、カメラ10内に記憶された推論モデル(辞書)では、撮影ガイド等を行うことができない場合に警告表示を行っている。ギブアップモデルは、この警告表示を行うための、推論モデルである。推論エンジン12は、記憶されたギブアップモデルに基づいて、撮影シーンに適した撮影ガイドが行えるか否かについて推論を行う。
【0094】
ステップS31において、推論モデルの取得、記録等を行うと、またはステップS25における判定の結果、推論モデルを取得しない場合には、ステップS1に戻り、前述の処理を実行する。
【0095】
このように、
図6Aおよび
図6Bに示すカメラ制御のフローにおいては、推論モデルが決定されているか否かを判定し(S5)、推論モデルが決定されている場合には、この推論モデルを用いて推論を行って撮影ガイド等を行う(S9、S19)。また、推論モデルが決定されていない場合には、撮影シーンに応じた推論モデルを選択するようにしている(S7)。また、推論結果の信頼性を判定し(S11)、信頼性が高い場合には撮影アドバイス等を行う(S19)。一方、推論結果の信頼性が低い場合には、所定期間の間、推論モデルを維持している(S13)。
【0096】
また、対象物の撮影に適した推論モデルが記憶されていない場合には、このときの画像と付随データを記憶しておき、学習部25に学習を依頼する際の参考とする(S17)。また、ユーザは手動操作等により対象物を特定し(S27)、学習部25から推論モデルを取得する(S29、S31)。また、推論モデルでは撮影に適した撮影ガイドを行うことができないことを推論するギブアップモデルも取得する(S31)。このギブアップモデルを用いて、撮影に適した撮影ガイドを行うことができないことを警告表示する。
【0097】
次に、
図7に示すフローチャートを用いて、外部機器20の学習部21における学習の動作を説明する。このフローは、外部機器20内の制御部26がメモリに記憶されたプログラムに従って、
図7に示すフローチャートを実行する。
【0098】
外部機器制御のフローが開始すると、まず、学習依頼か否かについて判定する(S41)。前述したように、カメラ10は、ステップS17、S29において、学習部21に学習依頼を行う。このステップでは、通信部22を通じて、カメラ10から学習依頼を受信したか否かに基づいて判定する。この判定の結果、学習依頼を受けていない場合には、待機状態となる。
【0099】
ステップS41における判定の結果、学習依頼が有った場合には、次に、対象物の種別を設定する(S43)。カメラ10が学習依頼を行う場合には、対象物を特定して行うので、このステップでは、対象物の種類を設定する。
【0100】
続いて、学習母体を設定する(S45)。ここでは、母集合作成部23は、ステップS43において設定された対象物の種別に基づいて、外部画像DB27における画像データの母集合の範囲を設定する。深層学習(機械学習)を行う場合には、効率良く学習を行うことができるように、適切に学習母体を設定することが望ましい。
【0101】
学習母体を設定すると、次に、対象物位置情報を設定する(S47)。学習するにあたって、対象物の位置情報があれば、併せて設定する。例えば、エッフェル塔撮影用の推論モデルを作成する場合には、エッフェル塔の位置情報を設定する。なお、学習要望事項によっては、対象物位置情報の設定を省略してもよい。
【0102】
対象物位置情報を設定すると、次に、推論モデルを生成する(S49)。ここでは、入出力モデル化部24が、設定された対象物等に基づいて、入出力化部24が推論モデルを生成する。具体的には、前述したように、入出化部24は、カメラ10が撮影した画像および付随データと、外部画像DB27に蓄積されている画像および付随データを用いて学習する。また、カメラ10が、学習を依頼する場合には、撮影画像および付随データも送信してくる。例えば、カメラ10の記録部16から削除した画像は失敗画像として、また、プリントアウトした画像や、他のサーバ等に投稿した画像は成功画像として、教師データとして使用することができる。
【0103】
推論モデルの生成を行うと、推論の信頼性が所定値以上であるか否かについて判定する(S51)。ここでは、ステップS49において生成した推論モデルの信頼性を算出する。信頼性の判定は、例えば、前述のLOSS値等を算出し行う。
【0104】
ステップS51における判定の結果、推論の信頼性が所定値以上ない場合には、学習母体を再設定する(S53)。ここでは、ステップS45において設定した学習母体を再設定する。再設定の仕方として、入力画像を、画像の付随データを用いて、母体数を増加させてもよく、また減少させてもよい。また、教師データを変更するようにしてもよい。例えば、ユーザが記録部から削除した画像は失敗画像、プリントアウトした画像は成功画像としてもよい。
【0105】
続いて、学習母体を再設定した回数が所定回数以上か否かを判定する(S55)。学習母体を再設定しても信頼性が所定値以上とならない場合がある。このステップでは、学習母体を再設定した回数に基づいて判定する。この判定の結果、所定回数以上でなければ、ステップS47に戻り、再度、推論モデルを生成し、信頼性を判定する。
【0106】
一方、ステップS55における判定の結果、学習母体を再設定した回数が所定回数以上となった場合には、ギブアップモデルを生成する(S57)。ギブアップモデルは、依頼のあった対象物について、撮影アドバイス等を行うことができない(警告表示)ことを推論するための推論モデル(辞書)である。
【0107】
前述のように様々な状況下、撮影の機会において、カメラ100が入力した画像に対して推論した際に、推論モデルが信頼性の高い値をいっこうに出さない場合がある。ギブアップモデルは、このような状況をそのまま利用して生成することができる。例えば、低い信頼性を出した画像を用いて学習することにより、ギブアップモデルを生成してもよい。またユーザが不満に思った画像、消去した画像などを集め、これらの画像を教師データとして学習してギブアップモデルを生成してもよい。また、特定用途の推論モデルを作成する際に、教師データの中から、特定レベル以上の信頼性が得られないものを集めて別の教師データとし、この教師データを用いて学習した結果を別の推論モデルとしたものでもよい(
図6BのS31で実施)。
【0108】
また、ギブアップモデルは、カメラ10に記憶されている推論モデルを用いた場合の信頼性を表示するようにしてもよい。例えば、スルー画が入力された場合に、鳥推論モデルの信頼性は40%、風景推論モデルでは40%のような表示ができる推論モデルである。
【0109】
前述したように、ギブアップモデルを使わないで、シーンやユーザによる推論モデルの適不適を判定することが可能である。ギブアップモデルを学習によって求める際に利用した画像を教師データとして利用して、ユーザの求める(あるいは求めるであろう、もっと満足するであろう)別の撮影ガイド用推論モデルを作成するようにしてもよい。この時、学習用の教師データとして、失敗画像に類似した良好な画像を集めて学習させてもよい。また、良好画像に共通する撮影設定などを先に学習し、次に良好画像と不満画像の差異が学習結果となるように学習すれば、その差異を解消するようなガイド情報となり、新しいガイド用の推論モデルを生成できる。
【0110】
ステップS57において、ギブアップモデルを生成すると、またはステップS51における判定の結果、推論の信頼性が所定値以上の場合には、推論モデルを送信する(S59)。ここでは、ステップS49において生成された推論モデル、またはステップS57において生成されたギブアップモデルを、通信部22および通信部13を通じて、カメラ10に送信する。推論モデルを送信すると、ステップS41に戻る。
【0111】
このように、外部機器制御のフローにおいては、カメラ10から学習依頼を受信すると(S41)、対象物の種別を設定し、この対象物の種別に応じて、学習母体を設定のうえ(S45)、推論モデルを生成する(S49)。この生成された推論モデルの信頼性を求め、信頼性が低い場合には、学習母体を再設定して、再度、推論を行う(S53、S49)。しかし、所定回数推論を行っても信頼性が高くならない場合には(S55Yes)、ギブアップモデルを生成し(S57)、撮影アドバイスを行うことができないことを推論できるようにしている。
【0112】
次に、
図8ないし
図10Bを用いて、本発明の第2実施形態について説明する。第1実施形態における撮像システムは、カメラ10と外部機器20から構成されていた。しかし、第2実施形態における撮像システムは、外部機器400と撮像装置としての機能を有するキャプチャー100に加えて、AIスピーカー200およびスマート家電200を有している。
【0113】
キャプチャー装置100は、カメラ等の撮像装置、ICレコーダ等の音声記録装置等のデータ(情報)取得用の装置であり、画像情報や音声情報等の情報を収集する。キャプチャー装置100は、通信部101、第2通信部102、情報取得部103、制御部104、表示部105、記憶部106、取得操作部107、状況判定部108を有する。
【0114】
第1通信部101および第2通信部102は、Wifi通信機能を有する通信回路と、ブルートゥース(登録商標)通信機能を有する通信回路を有する。第1および第2通信部101、102は近距離無線通信を行うことができ、AIスピーカー200の第1及び第2通信部301、302と通信が可能である。第1通信部101および第2通信部102のいずれか一方は、キャプチャー装置101が電源オフの状態であっても、所定時間間隔でAIスピーカー200と通信(アドバタイズ通信ともいう)が可能である。第1通信部101または第2通信部102は、アドバタイズ送信が可能であり、撮像装置が取得したコンテンツまたは撮影対象に適した個別推論モデルの生成要求を、外部に送信する通信制御部として機能する。
【0115】
情報取得部103は、画像データ取得用の撮像部、および/または音声データ取得用の音声取得部である。
【0116】
制御部104は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、キャプチャー装置100内の各部を制御する。制御部104は、撮影に先立って、ユーザの意図する撮影対象を予測し、この予測に基づいて、記憶部(106)に記憶されている推論モデルが、予測された撮影対象の撮影に適しているか否かを判定する判定部として機能するようにしてもよい。この場合、AIスピーカー200(情報端末)が、ユーザの意図する撮影対象を予測し、この予測結果を受信するようにしてもよい。また、判定部は、撮像装置が異なる状況(例えば、異なる季節、異なる日時、異なる場所、異なるユーザ、推論モデルの異なる使用期間)で撮像し、この撮像結果を用いて、推論モデルによって推論した際に、どの状況においても推論モデルよる信頼性が向上しない場合に、推論モデルが、予測された撮影対象の撮影に適しているか否かを判定するようにしてもよい。
【0117】
表示部105は、キャプチャー装置100が
図1に示すようなカメラの場合には、表示部14と同様に表示パネルを有し、情報取得部103によって取得した画像等を表示することができる。また、キャプチャー装置100がICレコーダの場合には、スピーカー等を有する。表示部105は、キャプチャー装置100がカメラであってもICレコーダであっても、メニューの表示や、またAIスピーカー等からの情報を表示することができる。
【0118】
記憶部106は、電気的に書き換え可能な不揮発性メモリを有し、情報取得部103によって取得した画像データや音声データを記録する。また、制御部104内のCPUが動作するためのプログラム等も記憶する。
【0119】
取得操作部107は、ユーザがキャプチャー装置101の種々の機能を設定するための操作部材やタッチパネル等を有する。状況判定部108は、キャプチャー装置100の状況を判定する。例えば、キャプチャー装置100がカメラであれば、画像をスルー画表示している状況、静止画撮影または動画撮影を行っている状況、記録画像の再生表示を行っている状況等を判定する。また、キャプチャー装置100がICレコーダであれば、録音を行っている状況、記録済みの音声を再生している状況等を判定する。
【0120】
推論エンジン109は、AIスピーカー200から推論モデルを受信すると、この推論モデルを用いて、第三者から評価の高い写真を撮影するための撮影ガイドを推論する。また、ICレコーダであれば、第三者から評価の高い録音を行うための録音ガイドを推論する。
【0121】
AIスピーカー200は、無線通信接続機能と音声操作のアシスタント機能を有するスピーカーであり、人工知能を搭載している。AIスピーカー200は、人工知能を搭載し、音声操作のアシスタント機能を有する情報端末として機能する。なお、本実施形態においては、情報端末としてAIスピーカーを用いた例を説明している。しかし、情報端末としては、AIスピーカーに限らず、人工知能を利用でき、および/またアシスタント機能を有していればよい。また、情報端末としては、音声入力部を有するスマートフォンやPC(パーソナルコンピュータ)でもよく、この場合には、ユーザが話しかけることが可能な「音声操作情報端末」として、利用することができる。通信部201、第2通信部202、第3通信部203、情報入力部204、制御部205、音声入力部206、記憶部207等を有する。
【0122】
第1通信部201および第2通信部202は、キャプチャー装置100内における通信部と同様に、Wifi通信機能を有する通信回路と、ブルートゥース(登録商標)通信機能を有する通信回路を有する。第1および第2通信部201、202は近距離無線通信を行うことができ、キャプチャー装置100の第1及び第2通信部101、102と通信が可能である。第1通信部101および第2通信部102のいずれか一方は、キャプチャー装置101が電源オフの状態であっても、所定時間間隔でAIスピーカー200と通信が可能である。また、第1通信部201、第2通信部202は、スマート家電300の通信部402と通信を行うことができる。第3通信部203は、外部機器300内の第3通信部301と、インターネット等を通じて、通信することができる。第1通信部201および第2通信部202の少なくとも1つは、撮像装置と通信を行う通信部として機能する。
【0123】
情報入力部204は、画像データ等各種情報を入力する。例えば、AIスピーカー200の周囲の画像や、AIスピーカー200に近づいて来る人の画像情報を入力することができる。また、キーボード、タッチパネル等、ユーザが操作することにより、情報を入力することができる機器であってもよい。音声入力部206は、マイクおよび音声信号処理回路等を有し、ユーザ等の声を入力する。音声入力部206は、ユーザの音声を入力し、音声データを出力する音声入力部として機能する。
【0124】
制御部205は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、AIスピーカー200内の各部を制御する。制御部205は、音声入力部206および情報入力部204によって入力した音声や画像等の情報に基づいて、ユーザの要求や、また潜在的要求を分析する。制御部205は、この分析結果に基づいて、スピーカー208を通じて、回答する。ユーザの要求等の分析および回答は、AIスピーカー200が外部のサーバ等と連携して行う。
【0125】
制御部205は、ユーザの会話等を分析することにより、ユーザの予定や不満を認識することができる。例えば、ユーザが○月○日にパリに観光に行き、エッフェル塔を見学する予定であることを、制御部205が会話から分析し、またキャプチャー装置100の推論エンジン100には、エッフェル塔撮影用の推論モデルがないとする。この場合には、制御部205は、外部機器300にエッフェル塔撮影用の推論モデルの作成を要求する(
図10AのS91、
図10BのS97、S99参照)。また、ユーザの会話を解析することにより、ユーザが鳥の撮影に興味を持っており、写真撮影するが、適切な撮影ガイドがなされていないといった不満を認識することがある。この場合には、制御部205は、外部機器300に鳥撮影用の推論モデルの作成を要求する(
図10AのS91、
図10BのS97、S99参照)。
【0126】
制御部205は、音声データを解析し、ユーザの意図する撮影対象を予測する解析部として機能する。また、制御部205は、通信部を通じて、撮像装置に記憶されている推論モデルに関する情報を入力し、解析部によって解析したユーザの撮影対象の予測に基づいて、推論モデルが撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には、外部の学習装置に撮影対象の撮影に適した推論モデルを学習させる制御部として機能する(例えば、
図10AのS91、
図10BのS97、S99参照)。制御部は、外部の学習装置が推論モデルを生成し、受信すると、撮像装置に推論モデルを送信する(
図10BのS99)。
【0127】
スピーカー208は、制御部205によって生成されたユーザへの回答を音声に変換して、ユーザに伝える。
【0128】
記憶部207は、電気的書き換え可能な不揮発性メモリを有し、機器情報207aとアクセス学習207bの記憶領域を有する。機器情報307aは、AIスピーカー200と通信可能なキャプチャー機器100、スマート家電400の情報が記録されている。この機器情報307aとしては、どんな種類のキャプチャー装置であるか、どんな種類のスマート家電であるか等、種々の情報がある。アクセス学習207は、外部機器300に対して深層学習等の学習を行った際に、依頼元の種類情報、依頼内容や推論モデル等を記憶する。
【0129】
外部機器300は、AIスピーカー200とインターネットを通じて接続することができる。外部機器300は、第3通信部301、入出力化モデル部302、検索部303、制御部304、記憶部305、データベース(DB)部305a、情報整理部305bを有する。第3通信部301は、AIスピーカー200内の第3通信部203と、インターネット等を通じて、通信することができる。
【0130】
入出力モデル化部302は、
図1に示した入出力モデル化部24と同様、所謂人工知能(AI)を用いて深層学習(機械学習)を行う。具体的には、入出力モデル化部24は、記憶部305に記憶された画像データ(音声データ等でもよい)の母集合を用い、汎用推論モデルまたは個別推論モデルを深層学習によって生成する。入出力モデル化部302は、
図2に示すような構成を有している。詳しい構成等は、
図2と同じなので説明を省略する。入出力下部302が生成した推論モデル(辞書)は、AIスピーカー200を通じて、キャプチャー装置100に送信してもよく、またAIスピーカー200を介さずに、直接キャプチャー装置100に送信してもよい。
【0131】
検索部303は、記憶部305に記憶された画像データ(音声データ等でもよい)の中から検索を行う。入出力モデル化部302によって深層学習を行う場合に、検索部303によって母集合を生成するようにしてもよい。
【0132】
制御部305は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、外部機器300内の各部を制御する。制御部305は、AIスピーカー200から学習依頼が有る場合に、受信した依頼事項(リクエスト)に従って、入出力モデル化部302に深層学習を実行させる。
【0133】
記憶部305は、電気的に書き換え可能な不揮発性メモリを有し、画像データや音声データ等のデータを記憶する。データベース(DB)部305aには、機器情報305aaと関連ユーザ情報305abを記憶する。機器情報305aaは、AIスピーカーに接続しているキャプチャー装置やスマート家電等の機器に関する情報が記憶されている。関連ユーザ305abは、機器の使用者等、機器に関連するユーザに関する情報であり、機器情報に関連付けて記憶される。また、記憶部305は、情報整理領域305bも有する。情報整理領域305bは、DB部305aに記憶されている機器情報と関連ユーザを整理する。すなわち、ユーザ毎に使用する機器に情報を整理し、また機器毎に関連するユーザに情報を整理して記憶する。
【0134】
スマート家電は、インターネットに接続可能な家電製品であり、例えば、電気掃除機、テレビ、エアコン等がある。スマート家電400は、情報入力部401、通信部402、機能部404、制御部405、表示部406、記憶部407、主機能関連操作部408を有する。
【0135】
情報入力部401は、冷蔵庫であれば、庫内温度検出部、庫内に収納されている食品の検出部等、スマート家電の種類に応じて情報を入力するためのセンサ等を有する。通信部402は、AIスピーカー200の第3通信部203と通信が可能である。機能部404は、スマート家電の種類に応じた機能を実行する。例えば、スマート家電が冷蔵庫であれば、庫内の温度管理、庫内の収容物の管理、収容物に応じたレシピの作成等を実行する。
【0136】
制御部405は、CPU(Central Processing Unit)、周辺回路、メモリ等を有し、CPUはメモリに記憶されたプログラムに従って、スマート家電400内の各部を制御する。表示部406は、表示パネルを有し、スマート家電に種類に応じて種々の表示を行う。記憶部407は、電気的に書き換え可能な不揮発性メモリを有し、スマート家電400の種類に応じて、種々の情報を記憶する。主機能関連操作部408は、ユーザがスマート家電400に種々の動作を指示するための操作部等を有する。
【0137】
次に、
図9に示すフローチャートを用いて、キャプチャー装置100の動作について説明する。このフローは、キャプチャー装置100内の制御部104がメモリに記憶されたプログラムに従って、
図9に示すフローチャートを実行する。
【0138】
キャプチャー装置制御のフローが開始すると、まず、操作判定又はコマンドを受信したか否かについて判定する(S61)。ユーザがレリーズ釦、録音開始釦等の操作部材を操作すると、取得操作部107はこの操作状態を検出する。また、第1通信部101または第2通信部102が、外部からキャプチャー装置100を操作するためのコマンドを受信した否かを判定する。例えば、ユーザがスマートフォン等のスマート家電を使用して、キャプチャー装置のレリーズ釦等を操作する場合には、この操作を指示するコマンドを受信する。
【0139】
ステップS61における判定の結果、操作がなされた場合、またはコマンドを受信した場合には、操作に応じた動作を実行する(S63)。例えば、キャプチャー装置100がカメラの場合、ステップS61においてレリーズ釦が操作されたことを検出した場合には、静止画撮影を行う。またICレコーダの場合、録音釦が操作されたことを検出した場合には、録音を行う。また、操作に応じた動作を実行する際に、推論モデルによって、撮影ガイドや録音ガイドがあれば、これらの表示も行う。これらのガイドは、推論エンジン109によって、推論された結果に基づいて表示する。操作に応じた動作を実行すると、ステップS61に戻る。
【0140】
ステップS61において操作でもなく、コマンド受信でない場合には、アドバタイズ送信を行う(S67)。キャプチャー装置100は、所定時間間隔で、AIスピーカー200に対して、通信要求(この信号をアドバタイズ通信という)を行っている。このステップでは、アドバタイズ送信によって、機器がメンテナンスを必要とする状態である場合には、その旨を通知する。すなわち、キャプチャー装置100がAIスピーカー200によってメンテナンスが必要な場合には、その旨を通知する。メンテナンスとしては、例えば、キャプチャー装置の電池電圧が低下したことの通知、メモリ容量がオーバしたことの通知、製品寿命に達したことの通知がある。
【0141】
また、このステップS67では、キャプチャー装置が取得したコンテンツ(画像データや音声データ等)や、学習の要望を、アドバタイズ送信する。例えば、キャプチャー装置100によって撮影した写真等がある場合には、この写真の画像データを送信する。送信画像は、ユーザが撮影結果を第三者に見てもらいたい場合等に行うようにしてもよい。また、ユーザがキャプチャー装置を通じて個別推論モデル(個別辞書)の生成を外部機器の入出力モデル化部302に依頼する場合には、その旨を送信する。
【0142】
続いて、接続許可か否かを判定する(S69)。このステップでは、キャプチャー装置100からAIスピーカー200にアドバタイズ送信した結果、AIスピーカー200から接続が許可されたか否かを判定する。この判定の結果、接続が許可されなかった場合には、ステップS61に戻る。
【0143】
ステップS69における判定の結果、接続許可がなされた場合には、通信に応じた詳細情報を送受信する(S71)。ここでは、ステップS67において機器のメンテナンスを要求した場合には、機器のメンテナンスに必要な詳細情報を取得する。また、学習要望を送信した場合には、推論モデルが生成された後、推論モデルを受信する。通信に応じた詳細情報を送受信すると、ステップS61に戻る。
【0144】
次に、
図10Aおよび
図10Bに示すフローチャートを用いて、AIスピーカー200の動作について説明する。このフローは、AIスピーカー200内の制御部205がメモリに記憶されたプログラムに従って、
図10Aおよび
図10Bに示すフローチャートを実行する。
【0145】
AIスピーカー制御のフローが開始すると、まず、命令音声を受信したか否かについて判定する(S81)。ユーザは、AIスピーカー200から情報を欲しい場合や、処理を依頼する等の場合には、AIスピーカー200に向かって音声を発する。音声入力部206は、この音声を音声データに変換し、意味を解析する。
【0146】
ステップS81における判定の結果、命令音声を受信した場合には、次に特定の人物か否かを判定する(S83)。AIスピーカーは種々の個人情報を有していることから、人物によって開示内容が異なる。ここでは、音声入力部206において取得した音声データを解析し、機器情報307aに登録されている特定の人物であるか否かについて判定する。
【0147】
ステップS83における判定の結果、特定の人物の場合には、命令、質問に応じた動作を実行する(S85)。ここでは、スマート家電400やキャプチャー装置100を動作させる命令を受けた場合には、命令に応じた動作をスマート家電400やキャプチャー装置100に送信する。また質問を受けた場合には、AIスピーカーおよびこれに接続したサーバによって回答を生成し、スピーカー208を通じて音声で回答する。このステップの処理を行うと、ステップS81に戻る。
【0148】
一方、ステップS83における判定の結果、特定の人物でない場合には、機器別のユーザの声を設定する(S87)。ここでは、機器別のユーザの声として設定する。すなわち、AIスピーカー200が入力したユーザの声を登録し、また登録にあたって、そのユーザの声と使用できる機器を設定する。例えば、今、入力したユーザは、キャプチャー装置100を持っている状態であった場合には、この声とキャプチャー装置を関連付けて記憶する。機器と関連付けることによりプライバシーを侵さない範囲で動作または質問への回答を行うことができる。例えば、キャプチャー装置100と関連付けられていない人物の声を入力した場合には、キャプチャー装置100に関する情報については控える場合もある。このステップの処理を行うと、ステップS81に戻る。
【0149】
ステップS81に戻り、判定の結果、命令音声を受信していない場合には、次に、アドバタイズ受信か否かを判定する(S89)。前述したように、キャプチャー装置100は、ステップS67において、AIスピーカーに対してアドバタイズ送信を行ってくる。このステップでは、このアドバイタイズ送信を受信したか否かについて判定する。この判定の結果、アドバタイズ受信でない場合には、ステップS81に戻る。
【0150】
ステップS89における判定の結果、アドバタイズ受信であった場合には、機器毎の状況を総合的に判断する(S91)。ここでは、キャプチャー装置100やスマート家電400から送信されてきた情報に基づいて、各機器の情報を総合的に判断する。例えば、キャプチャー装置100の電池電圧が低下している場合、記録された画像データメモリ容量の限界に近い場合等に、警告表示を行うと、ユーザがいなくて気づかない場合もあり、また常に警告すると煩わしさを感じてしまう。そこで、ユーザやキャプチャー装置100の状況を総合的に判断し、ステップS93以下で適切な対応をとれるようにする。
【0151】
機器毎の状況を総合的に判断すると、次に、報告が必要で、今、報告が可能か否かを判定する(S93)。ステップS91における判断に基づいて、報告が必要であり、かつ今、報告することができるか否かについて判定する。例えば、AIスピーカー200の近くに人がおらず、声が聞こえないような場合には、報告は可能でない。この判定の結果が否であれば、ステップS81に戻る。
【0152】
ステップS93における判定の結果、報告が必要で、かつ報告が可能な場合には、各機器毎の状況を報告する(S95)。
【0153】
次に、学習要望があるか否かについて判定する(S97)。キャプチャー装置100から学習要望が依頼されている場合には(S67)、学習要望があると判定される。また、AIスピーカー200の音声入力部206によって、入力したユーザの肉声から、ユーザの予定を解析し、解析結果に基づいて学習要望があるか否かを判定してもよい。この判定の結果、学習要望がない場合には、ステップS81に戻る。
【0154】
ステップS97における判定の結果、学習要望が有る場合には、学習対象を指定して学習サーバに依頼する。また学習結果を取得し、依頼元の装置に送信する(S99)。キャプチャー装置100から学習要望があった場合には、その学習要望を外部機器300の入出力モデル化部302に送信し推論モデルの生成を依頼する。またAIスピーカー200が取得したユーザの肉声から解析した場合には、学習要望を作成し、出力モデル化部302に送信し推論モデルの生成を依頼する。例えば、入力したユーザの肉声から、ユーザの予定を解析し、解析の結果、ユーザの訪問先(例えば、パリのエッフェル塔)に適したカメラ用推論モデルがない場合には、この訪問先を撮影するに適した推論モデル(辞書)を生成するように依頼する。また、ユーザが撮影を意図しているが、カメラ用推論モデルがない場合にも同様に、推論モデルを生成するように依頼する。また、入出力モデル化部302から推論モデルを受信した場合には、依頼元の装置に送信する。
【0155】
続いて、質問の音声を受信したか否かを判定する(S101)。このステップでは、音声入力部206が取得した音声データを解析し、AIスピーカー200に対して質問が有ったか否かを判定する。この判定の結果、音声で質問を受けていない場合には、ステップS81に戻る。
【0156】
ステップS101における判定の結果、質問を音声で受信した場合には、特定の人物か否かを判定する(S103)。ここでは、ステップS83と同様に、音声入力部206において取得した音声データを解析し、機器情報307aに登録されている特定の人物であるか否かについて判定する。
【0157】
ステップS103における判定の結果、特定の人物でなかった場合には、ニュース等、一般事項を報告する(S105)。前述したように、AIスピーカー200は、プライバシーに係る情報を有している。特定の人物でない場合にはプライバシーが侵されないように、一般的な事項の範囲で質問に回答する。
【0158】
一方、ステップS103における判定の結果、特定の人物の場合には、各機器ごとの詳細状況を報告する(S107)。例えば、特定のスマート家電の状況がどうなっているかについて、質問してきたユーザに音声で回答する。詳細状況を報告すると、次に報告したことを装置に報告する(S109)。ここでは、質問内容、特定人物名、回答内容について、装置に送信する。
【0159】
ステップS105において一般事項を報告すると、またはステップS109において、装置に報告を行うと、ステップS81に戻る。
【0160】
このように、本発明の第2実施形態においては、AIスピーカー200が、キャプチャー装置100の総合的な状況を判断し(
図10AのS91)、この状況判断に基づいて、新たな推論モデル(辞書)が必要な場合には(
図10BのS97)、外部機器300内の入出力モデル化部302に対して、学習を依頼する(
図10BのS99)。推論モデル(辞書)を入手すると、キャプチャー装置100に送信する(
図10BのS99)。このため、ユーザがキャプチャー装置100を通じて、意図的に学習を依頼しなくても、AIスピーカーが判断して、自動的に推論モデル(辞書)を取得することができる。
【0161】
以上説明したように、本発明の各実施形態においては、推論部で使用する個別推論モデルが不適切な場合には、その旨を表示し、また相応しい個別推論モデルを学習部に要求している。このため、適切な推論モデルが撮像装置に備えられていない場合であっても、ユーザに的確な撮影ガイドができる。
【0162】
また、本発明の実施形態においては、ユーザが意図する撮影対象を撮像し、画像データを出力し(例えば、
図6AのS3参照)、撮影対象の撮影の際にガイド表示または自動制御を行うための推論モデルを記憶部に記憶し(例えば、
図6BのS31参照)、推論モデルを用いて、ガイド表示の制御または自動制御のための推論を行い(例えば、
図6AのS9)、推論モデルがユーザの意図する撮影対象の撮影に適しているか否かを判定し(例えば、
図6AのS11)、この判定によって撮影に適していないと判定された場合に、撮影対象に適した推論モデルの生成要求を、外部に送信する(例えば、
図6AのS17)。このため、推論モデル(辞書)の信頼性が低い場合には、撮影対象に相応しい推論モデルを入手することができる。
【0163】
また、本発明の実施形態は、撮像装置と通信を行う通信部を有し、人工知能を搭載し、音声操作のアシスタント機能を有する情報端末における制御方法である。この制御方法では、ユーザの音声を入力し(例えば、
図10AのS81参照)、この音声データを解析し、ユーザの意図する撮影対象を予測し(
図10AのS91)、通信部を通じて、撮像装置に記憶されている推論モデルに関する情報を入力し、解析したユーザの意図する撮影対象の予測に基づいて、推論モデルが撮影対象の撮影に適しているか否かを判定し、この判定の結果、撮影に適していない場合には(例えば、
図10BのS97参照)、外部の学習装置に撮影対象の撮影に適した推論モデルを学習させる(例えば、
図10BのS99参照)。このため、ユーザが意図的に推論モデル(辞書)を学習装置に要求しなくても、情報端末が総合的に判断して、学習装置に新たな推論モデルの生成を要求することができる。
【0164】
前述したように、ギブアップモデルを用いた推論によって、撮影ガイド等をギブアップした画像(ギブアップの信頼性が高い画像)を、教師データとして利用して、ユーザの求める(あるいは求めるであろう、もっと満足するであろう)別の撮影ガイド用推論モデルを生成する際に活用してもよい。ギブアップした画像を分析することにより、ユーザが撮りたかった画像に関する情報が分かる。また、ギブアップ画像の分析によって、使用されていた推論モデルに苦手被写体や苦手シーンがあり、推論モデルの改良が必要である、という情報も得られる。ギブアップ画像は、これらの情報を含んだ教師画像の一つとなる。なお、この時、学習用の教師データとして、その失敗画像に類似した良好な画像を集めて学習させてもよい。その際、まず、良好画像に共通する撮影設定などを学習し、良好画像と不満画像の差異が学習結果となるようにして学習すれば、その差異を解消するようなガイド情報となり、新しいガイド用の推論モデルにできる。
【0165】
なお、本発明の各実施形態においては、学習装置における学習は、深層学習を行っていたが、これに限らず、機械学習等の人工知能を利用した学習であれば、よい。また、設定制御部17d(
図1参照)および取得操作部107(
図8参照)は、テキストを入力することによりリクエストを設定していたが、これに限らず、設定項目を選択するようにしてもよく、またユーザが気に入った画像を1つ又は複数指定することによって、深層学習の対象を設定するようにしてもよい。
【0166】
また、本発明の各実施形態においては、学習部はカメラまたはキャプチャー装置から学習要望事項(リクエスト)を受信していたが、これらの装置に限らず、パーソナルコンピュータ、携帯型情報機器(スマートフォンを含む)等の外部機器から、学習要望事項(リクエスト)を受信するようにしてもよい。この場合、学習部で機械学習した結果(推論モデル等)は、学習要望事項を送信した装置に必ずしも送り返す必要はなく、他の外部装置に送信するようにしてもよい。例えば、スマートフォン等の携帯型情報機器において、学習要望事項を設定して学習部に送信し、学習部で機械学習した結果を、カメラ等の撮像装置(キャプチャー装置)に送信するようにしてもよい。すなわち、ユーザが携帯型情報機器で学習要望事項を設定及び送信を行い、カメラやキャプチャー装置が学習部からリクエストに基づいて生成された推論モデルを受信し、この推論モデルに基づく表示を行うようにしてもよい。
【0167】
また、本実施形態においては、撮影のための機器として、デジタルカメラを用いて説明したが、カメラとしては、デジタル一眼レフカメラでもミラーレスカメラでもコンパクトデジタルカメラでもよく、ビデオカメラ、ムービーカメラのような動画用のカメラでもよく、さらに、携帯電話、スマートフォン、携帯情報端末、パーソナルコンピュータ(PC)、タブレット型コンピュータ、ゲーム機器等に内蔵されるカメラ、医療用カメラ、顕微鏡等の科学機器用のカメラ、自動車搭載用カメラ、監視用カメラでも構わない。いずれにしても、画像データを入力可能であり、また外部画像データベースに直接的または間接的にアクセスすることが可能な機器であれば、本発明を適用することができる。
【0168】
また、近年は、様々な判断基準を一括して判定できるような人工知能が用いられる事が多く、ここで示したフローチャートの各分岐などを一括して行うような改良もまた、本発明の範疇に入るものであることは言うまでもない。そうした制御に対して、ユーザが善し悪しを入力可能であれば、ユーザの嗜好を学習して、そのユーザにふさわしい方向に、本願で示した実施形態はカスタマイズすることが可能である。
【0169】
また、本明細書において説明した技術のうち、主にフローチャートで説明した制御に関しては、プログラムで設定可能であることが多く、記録媒体や記録部に収められる場合もある。この記録媒体、記録部への記録の仕方は、製品出荷時に記録してもよく、配布された記録媒体を利用してもよく、インターネットを介してダウンロードしたものでもよい。
【0170】
また、本発明の一実施形態においては、フローチャートを用いて、本実施形態における動作を説明したが、処理手順は、順番を変えてもよく、また、いずれかのステップを省略してもよく、ステップを追加してもよく、さらに各ステップ内における具体的な処理内容を変更してもよい。
【0171】
また、特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず」、「次に」等の順番を表現する言葉を用いて説明したとしても、特に説明していない箇所では、この順で実施することが必須であることを意味するものではない。
【0172】
本発明は、上記実施形態にそのまま限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素の幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0173】
10・・・カメラ、11・・・撮像部、11a・・・光学系、11b・・・撮像素子、12・・・推論エンジン、12a・・・記憶部、13・・・通信部、14・・・表示部、15・・・操作部、16・・・記録部、17・・・制御部、17a・・・パラメータ制御部、17b・・・画像処理部、17c・・・記録制御部、17d・・・設定制御部、17e・・・通信制御部、20・・・外部機器、21・・・学習部、22・・・通信部、23・・・母集合作成部、24・・・入出力モデル化部、25・・・出力設定部、26・・・制御部、27・・・外部画像DB、28・・・通信部、29・・・画像分類機能、29a・・・対象物種類A画像群、29b・・・対象物種類B画像群、100・・・キャプチャー装置、101・・・第1通信部、102・・・第2通信部、103・・・情報取得部、104・・・制御部、105・・・表示部、106・・・記憶部、107・・・取得操作部、108・・・状況判定部、109・・・推論エンジン、200・・・AIスピーカー、201・・・第1通信部、202・・・第2通信部、203・・・第3通信部、204・・・情報入力部、205・・・制御部、206・・・音声入力部、207・・・記憶部、208・・・スピーカー、300・・・外部機器、301・・・第3通信部、302・・・入出力モデル化部、303・・・検索部、304・・・制御部、305・・・記憶部、305a・・・DB部、305b・・・情報整理、400・・・スマート家電、401・・・情報入力部、402・・・通信部、404・・・機能部、405・・・制御部、406・・・表示部、407・・・記憶部、408・・・主機能関連操作部