JP2021173820A - 処理装置、光学装置、撮像装置、処理方法およびプログラム - Google Patents

処理装置、光学装置、撮像装置、処理方法およびプログラム Download PDF

Info

Publication number
JP2021173820A
JP2021173820A JP2020076112A JP2020076112A JP2021173820A JP 2021173820 A JP2021173820 A JP 2021173820A JP 2020076112 A JP2020076112 A JP 2020076112A JP 2020076112 A JP2020076112 A JP 2020076112A JP 2021173820 A JP2021173820 A JP 2021173820A
Authority
JP
Japan
Prior art keywords
information
learning
reward
unit
user
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
JP2020076112A
Other languages
English (en)
Inventor
章 佐藤
Akira Sato
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2020076112A priority Critical patent/JP2021173820A/ja
Publication of JP2021173820A publication Critical patent/JP2021173820A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Lens Barrels (AREA)
  • Automatic Focus Adjustment (AREA)
  • Exposure Control For Cameras (AREA)
  • Focusing (AREA)

Abstract

【課題】本発明は、例えば、光学部材の駆動の性能に関する使用者の要求に基づく機械学習に有利な処理装置を提供することを目的とする。【解決手段】処理装置は、光学装置において光学部材の駆動を行う駆動部に対する制御出力の機械学習を行う処理部を有し、前記処理部は、前記駆動の性能に関する使用者の要求に関する情報に基づいて前記機械学習を行い、かつ該機械学習の進捗に関する情報を生成することを特徴とする。【選択図】図12

Description

本発明は、処理装置、光学装置、撮像装置、処理方法およびプログラムに関する。
近年、動画を撮像できるデジタルカメラが製品化されている。静止画の撮像では、速写性を重要視するため、オートフォーカスや絞り、電動ズームなどの高速動作が必要となる。一方、動画の撮像では、当該高速動作に伴うアクチュエータ(駆動部)の作動音が大きいと、記録された音声の品位が損なわれうる。特許文献1は、光学部材を駆動する速度や加速度を制限することにより動画の撮像における静音性を高めたレンズ装置を開示している。
特開2007−6305号公報
求められる駆動部の静音性は、撮影状況により異なる。また、光学部材を駆動する速度や加速度に関しても、求められる性能(特性)は、撮影状況により異なる。これらに限らず、例えば、光学部材の位置決め精度や、消費電力等に関しても、求められる性能は、撮影状況により異なる。
ここで、機械学習(モデル)を利用すれば、光学部材の駆動の性能に係るユーザの要求に基づいて、撮影状況に応じた駆動の性能を実現しうる。ところが、レンズ装置の物理的な又はシステム上の制約などにより性能の向上が見込めない状況下で機械学習を実行すると、時間や電力を無駄にしうる。また、ユーザの要求に係る学習に関して、学習状況や改善状況、改善見込み等がわからないと、ユーザビリティの点で不利となりうる。
本発明は、例えば、光学部材の駆動の性能に関する使用者の要求に基づく機械学習に有利な処理装置を提供することを目的とする。
上記目的を達成するための処理装置は、光学装置において光学部材の駆動を行う駆動部に対する制御出力の機械学習を行う処理部を有し、前記処理部は、前記駆動の性能に関する使用者の要求に関する情報に基づいて前記機械学習を行い、かつ該機械学習の進捗に関する情報を生成することを特徴とする。
本発明の特徴は、以下の実施形態において説明される。
本発明によれば、例えば、光学部材の駆動の性能に関する使用者の要求に基づく機械学習に有利な処理装置を提供することができる。
実施例1のシステム構成ブロック図 フォーカスレンズ制御に要求される位置精度を示す図 フォーカスレンズ制御に要求される速度を示す図 位置精度と速度、消費電力、静音の関係を示す図 速度と位置精度、消費電力、静音の関係を示す図 実施例1のニューラルネットワークの入出力を示す図 機械学習の流れを示すフローチャート図 実施例1の報酬情報を示す図 実施例1の機器制約報酬情報、ユーザ要望報酬情報のデータ構造を示す図 実施例1のユーザ要望報酬変換情報のデータ構造を示す図 実施例1の学習進捗の通知表示一例の図 実施例2のシステム構成ブロック図 実施例2のニューラルネットワークの入出力を示す図 実施例2の報酬情報を示す図 実施例2の機器制約報酬情報、ユーザ要望報酬情報のデータ構造を示す図 実施例2のユーザ要望報酬変換情報のデータ構造を示す図 実施例2の学習進捗の通知表示一例の図 実施例3のシステムにおける学習残り時間導出方法の説明図 実施例5のシステム構成ブロック図
以下に、本発明の実施例について、図面を参照しながら説明する。
図1は、本発明の実施例1に係る光学学習システムの構成を示すブロック図である。
<機械学習機能付き撮影システムの構成>
図1には、本発明の実施例1である撮像システム(光学装置、カメラシステム)の構成を示している。
カメラシステムは、カメラ装置(以下、カメラ本体200という)と、レンズ装置(以下、レンズ100という)により構成されている。カメラ本体200とレンズ100は結合機構であるマウント300を介して機械的および電気的に接続されている。カメラ本体200は、マウント300に設けられた不図示の電源端子部を介してレンズ100に電源を供給する。また、カメラ本体200とレンズ100はマウント300に設けられた不図示の通信端子部を介して相互に通信を行う。本実施例では、レンズ装置とカメラ本体がマウントを介して接続される構成を例に示すが、カメラ本体内に撮影光学系を構成する場合においても同様の効果が得られる。
レンズ100は、撮像光学系を有する。撮像光学系は、焦点調節を行うフォーカスレンズ(フォーカスレンズ群)101、変倍を行うズームレンズ(ズームレンズ群)102、光量を調節する絞りユニット(開口絞り)103、像振れ補正レンズ(補正レンズ群)104を含む。フォーカスレンズ101とズームレンズ102は不図示のレンズ保持枠によって保持されている。レンズ保持枠は不図示のガイド軸により光軸方向(図中に破線で示す)に移動可能にガイドされている。
ズームレンズ102はズームレンズ駆動部107を介して光軸方向に移動し、位置はズームレンズ検出部108によって検出される。
絞りユニット103は絞り羽根を備えて構成され、絞り駆動部109によって駆動され、光量調節動作を行う。F値は絞り検出部110によって検出された開口絞りの位置(開口径)に基づいて導出される。
像振れ補正レンズ104は、像振れ補正レンズ駆動部112を介して光軸に直行する方向に移動し、手振れ等に起因する像振れを低減する。像振れ補正レンズ104の位置は、像揺れ補正レンズ検出部113によって検出される。
フォーカスレンズ駆動部105、ズームレンズ駆動部107、絞り駆動部109、像振れ補正レンズ駆動部112は、例えば超音波モータが構成されている。なお本実施例では超音波モータとしたが他のモータ(ボイスコイルモータ、DCモータ、ステッピングモータ)にも適用可能である。
フォーカスレンズ検出部106、ズームレンズ検出部108、絞り検出部110、像揺れ補正レンズ検出部113は、例えばポテンションメーターや、エンコーダである。また駆動部がステッピングモータ等、所定の駆動量をフィードバック無しに駆動できるモータが構成されている場合は、所定位置検出手段を設ける方法でも良い。この場合は、フォトインタラプタ等の検出センサを設けた所定位置まで光学部材を初期駆動し、初期駆動後は、モータ駆動量を元に光学部材の位置を特定する方法でも良い。
揺れセンサ111はレンズ100の揺れを検出するセンサであり、例えばジャイロである。
レンズマイクロコンピュータ(以下、レンズマイコン120という)は、NN制御部121、レンズ装置情報決定部122、NNデータ記憶部123、動作ログ管理部124、制御部125、通信部126を有する。
NN制御部121は、フォーカスレンズ101の位置を制御する制御部である。NN制御部121は内部にニューラルネットワーク(以後、NNとも記載する)アルゴリズムが実装され、機械学習パラメータを用いてNNアルゴリズムにより駆動指令を決定する。
レンズ装置情報決定部122は、NN制御部121で使用するレンズ装置情報を決定する決定部である。NNデータ記憶部123は、ウエイトを保持する記憶部である。動作ログ管理部124は、フォーカスレンズ101の駆動制御に関係する動作ログ情報を管理する管理部である。制御部125は、ズームレンズ102、絞りユニット103、像振れ補正レンズ104夫々の位置を制御及びカメラ本体200との情報伝達を制御する制御部である。制御部125は、例えば、制御対象への目標位置又は速度と現在の制御対象位置又は速度との偏差に対して、PID制御により駆動指令を生成し、制御を行う。通信部126はカメラ本体200と通信するための通信部である。NNアルゴリズム、ウエイト、レンズ装置情報、動作ログ情報については後述する。
カメラ本体200は、撮像素子201、A/D変換回路202、信号処理回路203、記録部204、表示部205、操作部206、カメラマイクロコンピュータ(以下、カメラマイコン210という)学習プロセッサ(処理部)250を有する。
撮像素子201はレンズ100から入射した光(レンズ100によって形成された像)を映像電気信号に変換する撮像素子であり、例えばCCDセンサやCMOSセンサである。A/D変換回路202は、撮像素子201から出力された映像電気信号をデジタル信号に変換するための変換回路である。信号処理回路203はA/D変換回路202から出力されたデジタル信号を映像データに変換する信号処理回路である。記録部204は信号処理回路203から出力された映像データを記録する記録部である。表示部205は信号処理回路203から出力された映像データを表示するための表示部である。操作部206は、使用者がカメラを操作するための操作部である。
カメラマイコン210はカメラ本体200を制御する制御マイコンである。カメラマイコン210は制御部211、通信部212を有している。制御部211は、信号処理回路203からの映像データおよび操作部206からの使用者の操作情報を元に、レンズ100への駆動指令を行う制御部である。また、制御部211は学習プロセッサ250に対しての指令や情報伝達を制御も行う。通信部212はレンズ100との通信を行うための通信部である。通信部212は、制御部211からの駆動指令を制御コマンドとして、レンズ100へ送信するための通信部である。また、通信部212は、レンズ100からの情報の受信も行う通信部である。
学習プロセッサ(処理部)250は、プロセッサ(CPU、GPU)、記憶装置(ROM、RAM、HDD)からなる。プロセッサは、機械学習部251、動作ログ保持部252、報酬管理部253、機器制約報酬管理部254、ユーザ要望報酬管理部255、学習状況管理部256の各種処理を実行する。記憶装置には、これらの制御をするためのプログラム、動作ログ保持部252が保持している動作ログ情報が記憶されている。記憶装置には更に、報酬管理部253が管理している報酬情報、機器制約報酬管理部254が管理している機器制約報酬情報、ユーザ要望報酬管理部255が管理しているユーザ要望報酬情報、ユーザ要望報酬変換情報、及び学習状況管理部256が管理している学習状況情報等が保持されている。報酬情報、機器制約報酬情報、ユーザ要望報酬情報及びユーザ要望報酬変換情報、学習状況情報については後述する。
<撮影映像記録及び表示について>
以下に図1に示すシステムにおける撮影映像記録及び表示について説明する。
レンズ100に入射した光は、フォーカスレンズ101、ズームレンズ102、絞りユニット103、像振れ補正レンズ104を通過し、撮像素子201に結像する。撮像素子201に結像した光は、撮像素子201にて映像電気信号に変換され、A/D変換回路202にてデジタル信号に変換され、信号処理回路203にて映像データに変換される。信号処理回路203から出力される映像データは記録部204に記録される。また表示部205は、信号処理回路203から出力される映像データを元に映像を表示させる。
<フォーカス制御について>
次にカメラ本体200がレンズ100のフォーカスを制御する方法について説明する。
制御部211は、信号処理回路203から出力された映像データを元に、AF(オートフォーカス)制御を行う。具体的には、制御部211は、映像データのコントラストの明暗差が最も大きくなるように、フォーカスレンズ101を動かして、撮影被写体にピントが合うように制御する。制御部211は、フォーカスレンズ101を動かすためのフォーカス駆動量を駆動指令として通信部212に出力する。通信部212は、制御部211から駆動指令を受け取ると、フォーカス駆動の駆動指令を制御コマンドに変換し、マウント300の通信接点部を介してレンズ100へ送信する。通信部126は、通信部212からの制御コマンドを受信すると、フォーカス駆動の駆動指令に変換し、制御部125を介してNN制御部121に出力する。NN制御部121は、フォーカス駆動の駆動指令が入力されると、NNデータ記憶部123に記憶されている学習済みのウエイトを用いて駆動信号を決定し、フォーカスレンズ駆動部105へ駆動信号(制御出力)を出力する。NN制御部121が駆動信号を決定する方法については、後述する。
以上により、制御部211からの駆動指令に従い、フォーカスレンズ101が駆動される。従って、制御部211は、映像データのコントラストの明暗差が最も大きくなるように、フォーカスレンズ101を動かすことで適切なAF制御を行うことができる。
<絞り制御について>
次にカメラ本体200がレンズ100の開口絞りを制御する方法について説明する。
制御部211は、信号処理回路203から出力された映像データを元に、露出制御を行う。具体的には、制御部211は、映像データの輝度値が一定となるように、目標となるF値を決定する。制御部211は、決定したF値を駆動指令として通信部212に出力する。通信部212は、制御部211から駆動指令を受け取ると、F値の駆動指令を制御コマンドに変換し、マウント300の通信接点部を介してレンズ100へ送信する。通信部126は、通信部212からの制御コマンドを受信すると、F値の駆動指令に変換し、制御部125に出力する。制御部125は、F値の駆動指令が入力されると、絞り検出部110が検出した開口絞りのF値を元に駆動信号を決定し、絞り駆動部109へ駆動信号を出力する。以上により、映像データの輝度値が一定となるように、F値が制御され、適切な露光制御を行うことができる。
<ズーム制御について>
次にカメラ本体200がレンズ100のズームを制御する方法について説明する。
使用者は、操作部206を介してズーム操作を行う。制御部211は、操作部206から出力されたズーム操作量が入力されると、ズームレンズ102を動かすためのズーム駆動量を駆動指令として通信部212に出力する。通信部212は、制御部211から駆動指令を受け取ると、ズーム駆動の駆動指令を制御コマンドに変換し、マウント300の通信接点部を介してレンズ100へ送信する。通信部126は、通信部212からの制御コマンドを受信すると、ズーム駆動の駆動指令に変換し、制御部125に出力する。制御部125は、ズーム駆動の駆動指令が入力されると、ズームレンズ検出部108が検出したズームレンズ位置を元に駆動信号を決定し、ズームレンズ駆動部107へ駆動信号を出力する。以上により、操作部206に入力されたズーム操作に従い、ズームレンズ102が駆動され、使用者がズームを操作することができる。
<防振制御について>
次にレンズ100が防振を行う方法について説明する。
制御部125は、揺れセンサ111から出力されたレンズ100の揺れ信号を元に、レンズ100の揺れを打ち消すように、像揺れ補正レンズ目標位置を決定する。制御部125は像揺れ補正レンズ検出部113が検出した像揺れ補正レンズ位置を元に駆動信号を決定し、像振れ補正レンズ駆動部112へ駆動信号を出力する。以上により、防振が正しく制御され、撮像素子201にて撮影された像揺れを防ぐことができる。
<フォーカスレンズ制御に要求される4つの指標について>
フォーカスレンズ制御には4つの要求事項がある。それは、位置精度、速度、消費電力、静音である。それぞれの要求事項をバランスよく制御することが求められる。以下夫々の要求事項について説明する。
<フォーカスレンズ制御に要求される位置精度について>
位置精度は、フォーカスレンズを目標位置へ駆動する際に、目標位置に対してどれだけ正確にフォーカスレンズを駆動できるかを表す指標である。
以下に位置精度について図2を用いて説明する。
図2は、焦点深度が浅い場合(a)と深い場合(b)におけるフォーカスレンズの位置とピント位置の関係を示している。図2の(a)(b)は、レンズ構成は同じで、F値のみ異なる場合を示している。
図2の(a)(b)で共通のものに対しては同符号を付す。
フォーカスレンズ目標位置Gは、光軸上の主被写体の点物体Sが、撮像素子201上に合焦フォーカスレンズ位置を示している。フォーカスレンズ位置Cは、フォーカスレンズ目標位置Gを目標に駆動した後のフォーカス位置を示している。フォーカスレンズ位置Cは、フォーカスレンズ目標位置Gに対して、位置精度(制御誤差)Eの分だけ点物体S側の位置となっている。ピント位置Bpは、フォーカスレンズ位置がフォーカスレンズ位置Cの時の点物体Sの結像位置を示している。許容錯乱円δは撮像素子201の許容錯乱円である。
図2(a)のF値Faは、図2(b)のF値Fbよりも明るい値(小さい値)となっている。従って、図2(a)の焦点深度幅2Faδは、図2(b)焦点深度幅2Fbδよりも狭い範囲となっている。図2(a)の光線Ca、光線Gaは、それぞれフォーカスレンズ位置C、フォーカスレンズ目標位置Gにおける点物体Sの光線の内、一番外側の光線を示している。また、図2(b)の光線Cb、光線Gbは、それぞれフォーカスレンズ位置C、フォーカスレンズ目標位置Gにおける点物体Sの光線の内、一番外側の光線を示している。
図2(a)において、点像直径Iaは、フォーカスレンズが、フォーカスレンズ位置Cにある時の点物体Sの撮像素子201上の点像の直径を示す。図2(b)において、点像直径Ibは、フォーカスレンズが、フォーカスレンズ位置Cにある時の点物体Sの撮像素子201上の点像の直径を示す。
図2(a)において、ピント位置Bpは焦点深度幅2Faδの範囲外となっている。また、点像直径Iaは、許容錯乱円δより大きく、中心の画素に収まらず、隣の画素へ光が入射している。以上により、図2(a)において、フォーカスレンズ位置Cでは点物体Sは非合焦となる。
一方、図2(b)において、ピント位置(合焦位置)Bpは焦点深度幅2Fbδの範囲内となっている。また、点像直径Ibは、許容錯乱円δより小さく、中心の画素に全ての光線が集光している。以上により、図2(b)において、フォーカスレンズ位置Cでは点物体Sは合焦となる。
以上の通り、同じ位置精度を達成したとしても、撮影条件により、非合焦、合焦が変化する。つまり撮影条件により、求められる位置精度が変化する。
<フォーカスレンズ制御に要求される速度について>
速度は、フォーカスレンズを駆動する際の移動速度のことである。移動速度は、単位時間あたりの移動量と考えることで移動量に置き換えることができる。また、ピントが合っている位置の光軸方向の移動量のことをピント移動量、ピントが合っている位置の光軸方向の移動速度のことをピント移動速度とする。フォーカスレンズ移動量はピント移動量と比例関係にある。この比例定数をフォーカス敏感度という。フォーカス敏感度はレンズの構成する光学系の位置関係によって変化する。ピント移動量ΔBp、フォーカス敏感度Se、フォーカスレンズ移動量ΔPは式(1)に示す関係となる。
ΔBp=Se×ΔP ・・・(1)
次にフォーカスレンズ制御に要求される速度について、図3を用いて説明する。
図3は、フォーカス敏感度Seが小さい場合(a)とフォーカス敏感度Seが大きい場合(b)におけるフォーカスレンズとピント位置の関係を示している。図3の(a)(b)は、レンズ構成は同じで、レンズと点物体Sとの距離が異なる場合を示している。
図3の(a)(b)で共通のものに対しては同符号を付す。
図3(a)において、ピント位置をBp1からBp2へ移動させる場合、フォーカスレンズ位置をPa1からPa2へ移動する必要がある。この時、フォーカスレンズの移動量ΔPaとピント移動量ΔBpは式(1)に示す関係となる。
図3(b)において、ピント位置をBp1からBp2へ移動させる場合、フォーカスレンズ位置をPb1からPb2へ移動する必要がある。この時、フォーカスレンズの移動量ΔPaとピント移動量ΔBpは式(1)に示す関係となる。
図3に示す通り、図3(a)のフォーカス敏感度が、図3(b)のフォーカス敏感度より小さいため、同じピント移動量ΔBpを動かすために必要となるフォーカスレンズの移動量は、図3(a)の場合の方が大きくなる。つまり、図3(a)の場合に比べ、図3(b)の場合は、単位時間当たりのフォーカス移動量を少なくできるため、結果としてフォーカスレンズ駆動速度が遅くても、図3(a)の場合と同じピント移動速度を得ることができる。
以上の通り、特定のピント移動速度を達成するために必要となるフォーカスレンズ駆動速度は、撮影条件により異なる。つまり撮影条件により、求められるフォーカスレンズ駆動速度が変化する。
<フォーカスレンズ制御に要求される消費電力について>
消費電力は、フォーカスレンズを駆動するために消費する電力のことである。
消費電力は、フォーカスレンズの駆動時間、駆動速度又は駆動加速度変化に応じて変化する。つまり駆動時間が長い場合、駆動速度が速い場合、駆動加速度変化が多い場合に消費電力が多くなる。
一方、消費電力を抑えることでバッテリ容量を有効活用することが可能になり、メリットとして1回の充電で撮影可能な枚数を増やすことやバッテリの更なる小型化が可能になる。
<フォーカスレンズ制御に要求される静音について>
フォーカスレンズ駆動時に、振動、摩擦などで駆動音が発生する。駆動音は駆動速度又は駆動加速度変化に応じて変化する。つまり駆動速度が速い場合、駆動加速度変化が多い場合に駆動音が大きくなる。また、フォーカスレンズが停止する時間が長い程、駆動音が発生しない時間が長くなる。
周囲環境が静かな場所での撮影においては、駆動音を不快に感じ、更に動画撮影時は録音も同時に行われるため、撮影映像に不要となる駆動音が収録されてしまう問題が発生する。従って、撮影状況によってはできるだけ駆動音の大きさを小さく、駆動音のしている時間を短くすることが要求される。
<位置精度と速度、消費電力、静音の関係について>
位置精度と速度、消費電力、静音の関係について図4を用いて説明する。
図4は、焦点深度が深い場合(a)と浅い場合(b)において、動きのある被写体に合焦し続けるためのフォーカスレンズ制御の動きを示している。
図4の横軸は時間経過を示し、縦軸はフォーカスレンズ位置を示す。フォーカスレンズ位置が上側に行くと無限方向にピントが合い、下側に行くと至近方向にピントが合う方向となる。
図4(a)(b)で共通のものに対しては同符号を付す。
フォーカスレンズ目標位置Gは、被写体の像が撮像素子201上に集光させる時のフォーカスレンズ位置を示している。図4(a)(b)の焦点深度はそれぞれ2Faδ、2Fbδである。図4(a)において、フォーカスレンズ目標位置Gを基準に、ピント位置が焦点深度の無限側の境界となるフォーカスレンズ位置をGalimI、至近側の境界となるフォーカスレンズ位置をGalimMで示す。図4(b)において、フォーカスレンズ目標位置Gを基準に、ピント位置が焦点深度の無限側の境界となるフォーカスレンズ位置をGblimI、至近側の境界となるフォーカスレンズ位置をGblimMで示す。図4(a)のLa、図4(b)のLbは、それぞれ被写体が焦点深度内に収まるように制御されたフォーカスレンズ位置を示している。
図4(a)の場合は焦点深度が深いため、フォーカスレンズがLaの示す軌跡に制御されたとしても、被写体がピントから外れることはない。一方、図4(b)の場合は焦点深度が浅いため、図4(a)の場合に比べ、フォーカスレンズの駆動をフォーカスレンズ目標位置Gとの偏差が少ない軌跡Lbで制御する必要がある。つまり、図4(a)(b)ともに被写体がピントから外れることはないが、フォーカスレンズの位置の軌跡La、Lbで示すように、図4(a)の場合の方が図4(b)の場合よりも駆動量、駆動速度は小さくできる。従って、求められる位置精度が低い撮影条件下においては、焦点深度が深い場合ほど、低位置精度の利点を活かして、低速、低消費電力、静音でフォーカスレンズを制御することができる。
<速度と位置精度、消費電力、静音の関係について>
速度と位置精度、消費電力、静音の関係について図5を用いて説明する。
図5の横軸は時間を示し、縦軸はフォーカスレンズ位置を示す。
図5(a)は、図3(a)が示すフォーカスレンズ位置がPa1からPa2へ、時間T0〜T1の間に駆動したフォーカスレンズ位置の変化(軌跡)Laを示している。同じく図5(b)は、図3(b)が示すフォーカスレンズ位置がPa1からPa2へ、時間T0〜T1の間に駆動したフォーカスレンズ位置の変化(軌跡)Lbを示している。ここで、図3が示す通り、フォーカスレンズ位置がPa1からPa2へ移動した時のピント移動量は、フォーカスレンズ位置がPb1からPb2へ移動した時のピント移動量と同じである。ここで図5(a)のLa、図5(b)のLbの傾きはフォーカスレンズ速度を示す。
図5が示す通り、時間T0〜T1の間に同じピント移動量ΔBpだけ動かすためのフォーカスレンズ移動速度は、図5(a)のLaで示す場合は図5(b)のLbで示す場合に比べ早くフォーカスレンズを動かす必要がある。また、図5(a)のLaで示す場合は図5(b)のLbで示す場合よりも速度が速いため、目標位置であるPa2に到達した後、位置が安定するまでにある程度の時間が必要となる。一方、Lbの場合は図5(a)のLaで示す場合よりも速度が遅いため、目標位置であるPb2に到達した後、より早く位置が安定する。これは位置精度に影響する。また、フォーカスレンズを早く駆動し、停止時において、加速度変化が大きくなるため、LaはLbに比べ、消費電力が多くなり、駆動音も大きくなる。従って求められる速度が低い撮影条件下ほど、高い位置精度、低消費電力、静音でフォーカスレンズを制御することができる。
<レンズ装置情報について>
次にレンズ装置情報について説明する。
レンズ装置情報は、フォーカスレンズ制御において、撮影映像が受ける影響を示す情報である。
以上の通り、フォーカスレンズ制御における要求事項をバランスよく制御するためには、フォーカスレンズ制御で求められる位置精度、速度を決めるためのレンズ装置情報をもとにフォーカスレンズ制御を行う必要がある。レンズ装置情報は、レンズ装置情報決定部122により決定される。レンズ装置情報は例えば、焦点深度やフォーカス敏感度の情報である。レンズ装置情報決定部122は、現在のF値と許容錯乱円の情報から、前述の式(1)に示す通り、焦点深度を決定する。また、レンズ装置情報決定部122は、フォーカス敏感度とフォーカスレンズ位置、ズームレンズ位置の関係を示す不図示の変換テーブルを保持し、フォーカスレンズ位置、ズームレンズ位置からフォーカス敏感度を決定する。これらのレンズ装置情報を元にフォーカスレンズ制御を行うことで、撮影映像が受ける影響を加味して、位置精度、速度、消費電力、静音のそれぞれの要求事項をバランスよく、フォーカスレンズの制御をすることができる。
レンズ装置情報を用いてフォーカスレンズ制御を行うNNアルゴリズムについては後述する。
<NNアルゴリズムとウエイトについて>
以下にNN制御部121がNNアルゴリズムを用いて駆動指令を決定する方法について説明する。
NN制御部121にはNNアルゴリズムが実装されている。NN制御部121は、NNデータ記憶部123に記録されたNNの特徴量、結合重み付け係数であるウエイトを参照し、参照したウエイトを用いてNNアルゴリズムにより駆動指令を決定する。ウエイトの製造方法については後述する。
図6は、実施形態1の学習モデルを用いたNN制御部121の入出力の構造を示す概念図であり、X1は制御部125から出力されたフォーカス駆動の駆動指令目標位置である。目標位置X2はフォーカスレンズ検出部106から得られたフォーカスレンズ101の現在位置である。X3はレンズ装置情報としての焦点深度であり、X4はレンズ装置情報としてのフォーカス敏感度である。Y1はフォーカスレンズ101の駆動信号である。以上により、フォーカス駆動の駆動指令、フォーカスレンズ101の現在位置、焦点深度、フォーカス敏感度を入力として、学習済モデルの出力として駆動信号が決定される。NN制御部121がNNアルゴリズムを用いて決定した駆動信号により、フォーカスレンズ101の制御を行う。
<ウエイトの製造方法について>
次にウエイトの製造方法について説明する。
使用者が操作部206から機械学習実施を示す操作を行うと、機械学習実施の指令が制御部211を介して機械学習部251に伝えられる。機械学習部251は機械学習実施の指令を受けると、機械学習を開始する。
機械学習の流れを図7を用いて説明する。
機械学習部251はS101において、制御部211へ、ウエイトの初期値を出力する。制御部211は機械学習部251からウエイトの初期値を受け取ると、通信部212からレンズ100へウエイトの初期値を送信する。レンズ100は、通信部126にてウエイトの初期値を受信すると、受信したウエイトの初期値を制御部125を介してNNデータ記憶部123に設定する。
次に機械学習部251はS102において、制御部211に対して、フォーカスレンズ101への駆動指令の出力要求及び動作ログ情報の取得要求を行う。制御部211は機械学習部251からフォーカスレンズ101の駆動指令の出力要求及び動作ログ情報の取得要求を受けると、通信部212を介してレンズ100に対して、フォーカスレンズ101の駆動指令の出力及び動作ログ情報の取得要求を行う。レンズ100は、通信部126にてフォーカスレンズ101の駆動指令を受信すると、制御部125を介してNN制御部121に対してフォーカスレンズ101の駆動指令を出力する。
NN制御部121はNNデータ記憶部123に保持されたウエイトを元にフォーカスレンズ101の駆動制御を行う。ここで、機械学習部251は、フォーカスレンズ101の駆動指令としては、予め学習用に決められた開始位置から停止位置まで特定の駆動パターンを保持し、保持している駆動パターンに従い駆動指令を出力する。またはAF(オートフォーカス)制御を実行し、フォーカスレンズ101の駆動指令を出力するようにしても良い。またレンズ100は、通信部126を介して動作ログ情報の取得要求を受信すると、動作ログ管理部124に対して動作ログ情報の出力要求を行う。動作ログ管理部124は動作ログ情報の出力要求を受けると、フォーカスレンズ101の駆動時における動作ログ情報を制御部125、通信部126を介してカメラ本体200に送信する。
次に機械学習部251はS103において、報酬管理部253が保持している報酬情報及び動作ログ保持部252が保持している動作ログ情報を元にNNアルゴリズムの制御結果を点数化する。報酬情報及び動作ログ情報及び制御結果の点数化については後述する。
次に機械学習部251はS104において、NNアルゴリズム制御結果の累計点数が最大化されるようにウエイトを更新する。ウエイトの更新には誤差逆伝搬法(Backpropagation)を使用するが、本発明はこれに限定されるものではない。生成されたウエイトはS101と同様の手順でNNデータ記憶部123に設定される。
次に機械学習部251はS105において、ウエイトの学習が完了したか否かを判定する。学習完了は、学習(ウエイトの更新)の反復回数が規定値に達したか、または、更新時の動作ログ情報中の累計点数の変化量が規定値より小さいかなどにより判定することができる。機械学習部251は学習未完と判定した場合は、ステップS101へ戻り機械学習を続ける。機械学習部251は学習完了と判断した場合は、機械学習を終了させる。
機械学習の具体的なアルゴリズムとしては、本実施例の通り、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)が挙げられる。また、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが挙げられる。適宜、上記アルゴリズムのうち利用できるものを用いて本実施形態に適用することができる。
ところで、GPUはデータをより多く並列処理することで効率的な演算を行うことができるので、ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合にはGPUで処理を行うことが有効である。そこで、機械学習部251による処理にはCPUに加えてGPUを用いてもよい。具体的には、学習モデルを含む学習プログラムを実行する場合に、CPUとGPUが協働して演算を行うことで学習を行う。なお、機械学習部251の処理はCPUまたはGPUのみにより演算が行われても良い。
<動作ログ情報について>
次に動作ログ情報について説明する。
動作ログ情報は、NNアルゴリズムの制御結果を点数化する上で、点数を決める対象となる制御結果情報である。
動作ログ管理部124は、図6に示すX1〜X4及びY1であるNNアルゴリズムの入出力情報を、NNアルゴリズムの制御周期ごとに収集し記録する。また、不図示のフォーカスレンズ駆動部105の消費電力を測定するための電力検出部を設け、動作ログ管理部124は、フォーカスレンズ駆動部105の消費電力も動作ログ情報として記録する。
また動作ログ管理部124は、NN制御部121に入力された駆動指令やフォーカスレンズ検出部106によって検出されるフォーカスレンズの位置情報も動作ログ情報として記録する。更に動作ログ管理部124は、駆動指令から決定されるフォーカスレンズの目標位置及び位置情報、位置精度Eを決定し、動作ログ情報として記録する。更に動作ログ管理部124は、フォーカスレンズの位置情報から、フォーカスレンズの速度及び加速度を算出し、動作ログ情報として記録する。
動作ログ管理部124は、記録した動作ログ情報を、制御部125、通信部126を介してカメラ本体200に送信する。
カメラ本体200は、動作ログ情報を通信部212にて受信すると、制御部211を介して動作ログ保持部252に記録される。
<報酬情報及び制御結果の点数化について>
報酬情報は、NNアルゴリズムの制御結果を点数化する上で、点数の基準となる情報である。報酬情報は、NNアルゴリズム制御結果に対して、点数の境界値とその境界値ごとに割り当てられた点数の情報を持つ。
図8を用いて報酬情報について説明する。
図8の(a1)(b1)(c1)(d1)は夫々、NNアルゴリズム制御結果を示す項目である位置精度、速度、加速度、消費電力に対して、学習時において、時間経過と点数の境界値との関係を示している。
図8の(a1)(b1)(c1)(d1)の横軸は時間経過を示す。
図8の(a2)(b2)(c2)(d2)は位置精度、速度、加速度、消費電力に対しての報酬情報のデータ構造を示している。報酬情報のデータは、複数の境界値と、境界値で区切られた領域で獲得できる点数で構成される。
ここでNNアルゴリズムは制御結果の獲得点数が高得点となるように学習されるため、境界値が各対象となる項目の目標に近い程、より高精度な制御となるように学習される。例えば、位置精度の境界値が0に近い値になる程、位置精度が0に近づく制御となるように学習される。また他の項目に比べ、点数を高く設定することにより、他の項目よりも学習の優先度が高いことを示す。例えば、位置精度よりも消費電力の点数を高くすることで、位置精度よりも消費電力を優先させる制御となるように学習される。
本実施例では、2点の境界値と、境界値で区切られた3つの領域に対して割り当てられる3点の点数で構成される例を示す。
図8(a1)の縦軸はフォーカスレンズの目標位置と現在位置との差である位置精度Eの値を示している。位置精度Eの正の方向は、目標位置に対して、現在位置が無限側にある場合を示し、負の方向は、目標位置に対して、現在位置が至近側にある場合を示す。位置精度Eが0に近い程、駆動制御における位置精度が高いことを示している。
図8(a2)は位置精度の報酬情報である位置精度報酬情報REのデータ構造を示している。位置精度報酬情報REは位置精度の報酬範囲を決めるE1、E2と、報酬範囲において獲得できる点数SE1、SE2、SE3により構成される。
E1、E2はそれぞれ位置精度Eの報酬として与えられる点数の境界値を示している。ここで、−E1〜E1、の範囲の時は範囲AE1とする。また、範囲AE1を除く、−E2〜E2、の範囲AE2とする。また、範囲AE1、AE2以外の時は範囲AE3とする。位置精度Eがそれぞれ範囲AE1、AE2、AE3の範囲内のときは、図8(a2)が示す点数SE1、SE2、SE3が報酬として与えられる。ここで点数SE1、SE2、SE3の点数の関係は、
SE1>SE2>SE3
となり、位置精度Eが0に近い程高い点数となるように設定される。
図8(a1)が示す通り、位置精度に対して、任意の時間Tp1、Tp2、Tp3における位置精度Eは夫々範囲AE2、AE3、AE1の範囲内である。従って、任意の時間Tp1、Tp2、Tp3において、獲得できる報酬はそれぞれ点数SE2、点数SE3、点数SE1となる。
ここで例えば、E1は±Fδ/2、E2は±Fδの値が設定される。つまり、フォーカスレンズの目標位置に対して、現在位置が焦点深度内に制御されていれば、高い得点が加算され、焦点深度外となった場合に低い点数が加算される。またフォーカスレンズが目標位置に近い程、獲得できる点数が多くなる。
図8(b1)の縦軸はフォーカスレンズの駆動速度Vの値を示している。駆動速度Vの正の方向は無限方向への駆動速度を示し、負の方向は至近方向への駆動速度を示している。駆動速度Vが0に近い程、駆動音が小さくなる。
図8(b2)は速度の報酬情報である速度報酬情報RVのデータ構造を示している。速度報酬情報RVは速度の報酬範囲を決めるV1、V2と、報酬範囲において獲得できる点数SV1、SV2、SV3により構成される。
V1、V2はそれぞれ駆動速度Vの報酬として与えられる点数の境界値を示している。ここで、−V1〜V1、の範囲の時は範囲AV1とする。また、範囲AV1を除く、−V2〜V2、の範囲AV2とする。また、範囲AV1、AV2以外の時は範囲AV3とする。駆動速度Vがそれぞれ範囲AV1、AV2、AV3の範囲内のときは、図8(b2)が示す点数SV1、SV2、SV3が報酬として与えられる。ここで点数SV1、SV2、SV3の点数の関係は、
SV1>SV2>SV3
となり、駆動速度Vが0に近い程、高い点数となるように設定される。
図8(b1)が示す通り、駆動音に対して、任意の時間Tp1、Tp2、Tp3における駆動速度Vは夫々範囲AV2、AV3、AV1の範囲内である。従って、任意の時間Tp1、Tp2、Tp3において、獲得できる報酬はそれぞれ点数SV2、SV3、SV1となる。
ここで例えば、V1、V2は駆動速度と駆動音の関係に基づいて決定され、駆動速度を遅く制御する程、獲得できる点数が多くなるように点数が設定される。一般的に、駆動速度が遅い程、駆動音が小さくなるため、獲得した点数が高い程、静音を重視した制御が行えていることを示す。
図8(c1)の縦軸はフォーカスレンズの駆動加速度Aの値を示している。駆動加速度Aの正の方向は無限方向への駆動加速度を示し、負の方向は至近方向への駆動加速度を示している。駆動加速度Aが0に近い程、駆動音が小さくなる。
図8(c2)は加速度の報酬情報である加速度報酬情報RAのデータ構造を示している。加速度報酬情報RAは加速度の報酬範囲を決めるA1、A2と、報酬範囲において獲得できる点数SA1、SA2、SA3により構成される。
A1、A2はそれぞれ駆動加速度Aの報酬として与えられる点数の境界値を示している。ここで、−A1〜A1、の範囲の時は範囲AA1とする。また、範囲AA1を除く、−A2〜A2、の範囲AV2とする。また、範囲AA1、AA2以外の時は範囲AA3とする。駆動加速度Aがそれぞれ範囲AA1、AA2、AA3の範囲内のときは、図8(c2)が示す点数SA1、SA2、SA3が報酬として与えられる。ここで点数SA1、SA2、SA3の点数の関係は、
SA1>SA2>SA3
となり、駆動加速度Aが0に近い程、高い点数となるように設定される。
図8(c1)が示す通り、駆動音に対して、任意の時間Tp1、Tp2、Tp3における駆動加速度Aは夫々範囲AA1、AA3、AA2の範囲内である。従って、任意の時間Tp1、Tp2、Tp3において、獲得できる報酬はそれぞれ点数SA1、SA3、SA2となる。
ここで例えば、A1、A2は駆動加速度と駆動音の関係に基づいて決定され、駆動加速度を小さく制御する程、獲得できる点数が多くなるように点数が設定される。一般的に、駆動加速度が小さい程、駆動音が小さくなるため、獲得した点数が高い程、静音を重視した制御が行えていることを示す。
図8(d1)の縦軸はフォーカスレンズの消費電力Pの値を示している。消費電力Pが0に近い程、消費電力が小さくなる。
図8(d2)は消費電力の報酬情報である消費電力報酬情報RPのデータ構造を示している。消費電力報酬情報RPは消費電力の報酬範囲を決めるP1、P2と、報酬範囲において獲得できる点数SP1、SP2、SP3により構成される。
P1、P2はそれぞれ消費電力Pの報酬として与えられる点数の境界値を示している。ここで、0〜P1の範囲の時は範囲AP1とする。また、P1〜P2の範囲の時は範囲AP2とする。また、範囲AP1、AP2以外の時は範囲AP3とする。消費電力Pがそれぞれ範囲AP1、AP2、AP3の範囲内のときは、図8(d2)が示す点数SP1、SP2、SP3が報酬として与えられる。ここで点数SP1、SP2、SP3の点数の関係は、
SP1>SP2>SP3
となり、消費電力Pが0に近い程、高い点数となるように設定される。
図8(d1)が示す通り、消費電力に対して、任意の時間Tp1、Tp2、Tp3における消費電力Pは夫々範囲AP1、AP3、AP2の範囲内である。従って、任意の時間Tp1、Tp2、Tp3において、獲得できる報酬はそれぞれ点数SP1、SP3、SP2となる。
ここで例えば、P1、P2は任意に決定され、消費電力を小さく制御する程、獲得できる点数が多くなるように点数が設定される。従って、獲得した点数が高くなる程、低消費電力を重視した制御が行えていることを示す。
以上に示すより、位置制御誤差、速度、加速度、消費電力等の制御結果に対して、点数化するための報酬情報が設定される。
上記の示す報酬情報を用いて、学習時のフォーカスレンズ駆動において、動作ログ情報を元にNNアルゴリズムの制御結果を単位時間ごとに点数化し、単位時間ごとの点数を累計することで、NNアルゴリズム制御結果の累計点数を決定することができる。また位置制御誤差、速度、加速度、消費電力夫々の得点を加算することで、NNアルゴリズムのトータルとしての制御結果を点数化することができる。
ここでは消費電力を制御結果として使用している例を示しているが、速度、加速度と消費電力の関係から、速度、加速度の結果を用いて消費電力に対しての報酬情報を設定しても良い。
本実施例では、境界値の数を固定としているが、必要に応じて変更可能としても良い。
また、本実施例では、点数を境界値により決定しているが、位置精度E、駆動速度V、駆動加速度A、消費電力Pを点数に変換する変換関数を用いて点数化する方法でも良い。この場合は、報酬情報として境界値ではなく、変換関数及びその係数が報酬情報として設定される。
<機器制約報酬情報、ユーザ要望報酬情報及びユーザ要望報酬変換情報について>
次に機器制約報酬情報、ユーザ要望報酬情報について説明する。
図9は、機器制約報酬情報、ユーザ要望報酬情報のデータ構造を示している。
機器制約報酬情報は、位置精度報酬情報REb、速度報酬情報RVb、加速度報酬情報RAb、消費電力報酬情報RPbで構成されている。またユーザ要望報酬情報は、位置精度報酬情報REu、速度報酬情報RVu、加速度報酬情報RAu、消費電力報酬情報RPuで構成されている。
位置精度報酬情報REb及び位置精度報酬情報REuは、図8(a2)に示す位置精度報酬情報REと同じデータ構造である。速度報酬情報RVb及び速度報酬情報RVuは、図8(b2)に示す速度報酬情報RVと同じデータ構造である。加速度報酬情報RAb及び加速度報酬情報RAuは、図8(c2)に示す加速度報酬情報RAと同じデータ構造である。消費電力報酬情報RPb及び消費電力報酬情報RPuは、図8(d2)に示す消費電力報酬情報RPと同じデータ構造である。
ここで、機器制約報酬情報は、レンズ100に固有となる報酬情報である。機器制約報酬情報は、レンズ100に応じて予め決められた報酬情報が機器制約報酬管理部254に保持されている。ユーザ要望報酬情報は、ユーザ要望に応じて変更可能となる報酬情報である。ユーザ要望報酬情報は、ユーザ要望報酬管理部255にて、ユーザ設定により変更されたユーザ要望とユーザ要望報酬変換情報により決定される。報酬管理部253は、機器制約報酬情報、ユーザ要望報酬情報を合わせたものを報酬情報として管理している。
機器制約報酬情報は、機器として、最低限守るべき制御を規定するための報酬情報であるため、ユーザ要望報酬情報よりも境界値で決定する範囲が広く、期待する目標から逸脱する場合に負の値を含む低い点数が設定される。
ユーザ要望報酬情報は、ユーザ設定により変更可能であり、ユーザ設定により変更されたユーザ要望とユーザ要望報酬変換情報により決定される。
NNアルゴリズムの学習には、図8が示す通り、機器制約報酬情報、ユーザ要望報酬情報夫々の報酬情報を元に制御結果の点数が決定し、夫々の点数を加算したものが最終的な制御結果の点数として決定される。
以下に、ユーザ設定によりユーザ要望報酬情報を決定する方法について説明する。
図10はユーザ要望報酬変換情報のデータ構造を示している。
図10(a)は、位置精度ユーザ要望報酬変換情報UREuのデータ構造を示している。位置精度ユーザ要望報酬変換情報UREuは各レベル(要求レベル)ごとに、境界値、点数が異なる複数の位置精度報酬情報REuで構成されている。
図10(b)は、静音ユーザ要望報酬変換情報URSuのデータ構造を示している。静音ユーザ要望報酬変換情報URSuは、速度ユーザ要望報酬変換情報URVu、加速度ユーザ要望報酬変換情報URAuで構成されている。速度ユーザ要望報酬変換情報URVu、加速度ユーザ要望報酬変換情報URAuは各レベルごとに、境界値、点数が異なる複数の速度報酬情報RVu、加速度報酬情報RAuで構成されている。
図10(c)は、消費電力ユーザ要望報酬変換情報URPuのデータ構造を示している。消費電力ユーザ要望報酬変換情報URPuは各レベルごとに、境界値、点数が異なる複数の消費電力報酬情報RPuで構成されている。
位置精度ユーザ要望報酬変換情報UREu、静音ユーザ要望報酬変換情報URSu、消費電力ユーザ要望報酬変換情報URPuはレベル1、レベル2、レベル3の順にユーザ要望が高くなるように境界値、点数の値が決定されている。具体的にはレベル1は、他に比べ、境界値が各項目の目標に近い値となっている。また点数については高い点数となっている。
図1が示す操作部206によりユーザが設定した位置精度、静音、消費電力の各レベル情報は、制御部211を介してユーザ要望報酬管理部255に伝達される。ユーザ要望報酬管理部255は自身が保持している図10が示すユーザ要望報酬変換情報から、ユーザが設定した位置精度、静音、消費電力の各レベル情報に基づきユーザ要望報酬情報を決定する。
以上により、動作ログ情報とユーザ設定により変更されたユーザ要望とユーザ要望報酬情報とを含む学習データを元にNNアルゴリズムの学習が実施され、ユーザ設定に応じて最適な制御が行えるNNアルゴリズム(学習済モデル)が生成される。
生成されたNNアルゴリズムは、カメラ本体200からレンズ100に送られ、NNデータ記憶部123で記憶され、フォーカス駆動制御に使用される。
また、図10に示すように、ユーザ要望報酬変換情報は、ユーザ要望各々に対し、目標レベルごとに学習完了基準情報を有する。この学習完了基準情報は、報酬の総加算値の目標値が設定されており、各レベルを目標と学習1回分におけるユーザ要望報酬の総加算値が学習完了基準情報を上回った時、学習完了と判断する目安とする(あくまでも目安で、実際には総加算値の伸び率や学習回数で学習を打ち切ってもよい)。
図10(a)の位置精度ユーザ要望報酬変換情報UREuにおいては、CEL1、CEL2、CEL3が学習完了基準情報に該当する。図10(b)の静音ユーザ要望報酬変換情報URSuにおいては、速度ユーザ要望報酬変換情報URVuにおけるCVL1、CVL2,CVL3、および、加速度ユーザ要望報酬変換情報URAuにおけるCAL1、CAL2,CAL3が該当する。静音ユーザ要望報酬変換情報URSuについては、速度ユーザ要望報酬変換情報URVuに対する学習完了と加速度ユーザ要望報酬変換情報URAuに対する学習完了とをAND条件で、静音ユーザ要望報酬変換情報URSuに対する学習完了を判断することが好ましい。図10(c)の消費電力ユーザ要望報酬変換情報URPuにおいては、CPL1、CPL2,CPL3が学習完了基準情報に該当する。この学習完了基準情報には、ユーザ要望報酬における報酬スコアに加え、機器制約報酬情報によって算出される報酬スコアも合わせた総スコアにおける目標値が設定されている。
学習完了基準情報は、学習状況管理部256で管理され、後述する学習進捗状況の算出に使用される。
<報酬に対しての評価結果のユーザ要望における評価進捗への変換工程>
学習状況管理部256では、機械学習部251で算出した報酬に基づく評価結果を受信し、ユーザ要望における評価結果への変換処理を行う。この時、機械学習部251で算出される評価結果は、ユーザ要望項目(本実施例では、位置精度と、静音と、消費電力)ごとに算出される。ユーザ要望項目ごとの評価結果は、そのユーザ要望ごとの機器制約報酬情報に基づく評価値とユーザ要望報酬情報に基づく評価値との和であって、単位時間ごとの評価値の総和(総スコア)である。
学習状況管理部256では、図10に示す学習完了基準情報に基づき、上記総スコアとの比率関係から報酬に対する評価結果をユーザ要望における評価結果に変換する。
具体例として、位置精度について、レベル1の状態からレベル2を学習目標として設定したケースにおける評価結果変換工程を説明する。
図10(a)に示すように、位置精度に対する学習開始時の評価結果をCEL1、学習完了時の評価結果を目標値としてCEL2とする。このとき、学習状況管理部256に逐次報告される位置精度の総スコア値(ある学習回数での値)をTESnとしたとき、位置精度におけるユーザ要望評価進捗(率)は下記のように求めることができる。
ユーザ要望評価進捗=((TESn―CEL1)/(CEL2−CEL1))
・・・ (2)
これにより、ユーザ要望評価進捗は、評価完了までの到達割合(進捗率)として算出することができる。
<ユーザ要望における評価進捗の通知>
上述の要領で算出したユーザ要望評価進捗をユーザに通知する方法を説明する。
図11(a)に示すのは、ユーザ要望項目(ここでは、位置精度と静音を例示する)ごとのユーザ要望評価進捗(進捗率)をパーセント表示した表示画面の例である。このように学習回数や経過時間と共に表示することで、ユーザは現状の学習進捗を知るとともに、完了までの目安を推定することができる。図11(b)に示すのは、ユーザ要望項目ごとの進捗率を、数値表示ではなく、グラフ化したものである。これは、学習開始時点での学習到達度から、学習完了の目標とする総スコアまでの進捗割合を表示しており、学習回数ごとの総スコアを履歴表示している。このような表示方法でも、ユーザは現状の学習進捗を知ることが可能となる。
本実施例においては、学習進捗をパーセント数値表示や学習到達度割合の表示を例にとって説明したが、学習進捗をバー表示や円グラフ表示しても良いし、単純に総スコアの履歴情報と目標スコアとを重畳表示する方法であっても良い。
また、表示する学習進捗は目標スコアと現在の総スコアとの差分量であっても良い。
<他のレンズ装置情報について>
また、レンズ装置情報として、フォーカス敏感度、焦点深度、モータ電流を例に説明したが、姿勢差、温度、周囲音量も有用である。姿勢差については、レンズ、開口絞りを駆動するときの重力の影響が変化するため、姿勢差に応じてモータに必要な駆動トルクも変化する。温度については、レンズ、開口絞りの駆動連結部に使用される潤滑油の特性が変化するため、温度に応じてモータに必要な駆動トルクも変化する。周囲音量については、モータの駆動音を抑えるために、レンズ、開口絞り駆動速度を制限している場合においても、モータの駆動音が周囲音量に対して小さい範囲であれば、駆動速度の制限を外しても撮影映像に影響しない。従って、周囲音量に応じて、駆動速度の最高速制限を変化させる制御が有用となる。
図12は、本発明の実施例2に係る撮像システムを示すブロック図である。
実施例1の構成と比較して、異なる部分について説明し、同じ構成については説明を省略する。
<機械学習機能付き撮影システムの構成>
図12に、本発明の実施例2に係る撮像システム(カメラシステム)の構成を示す。
カメラシステムは、撮像装置(カメラ本体200)と、レンズ装置(レンズ100)により構成されている。実施例1に対して、実施例2のカメラ本体200には、実施例1の学習プロセッサ250が構成されていないが、レンズ100に学習プロセッサ250を有することが異なる。
学習プロセッサ250は、プロセッサ(CPU、GPU)、記憶装置(ROM、RAM、HDD)からなる。プロセッサは、機械学習部251、動作ログ保持部252、報酬管理部253、機器制約報酬管理部254、ユーザ要望報酬管理部255、学習状況管理部256の各種処理を実行する。記憶装置には、これらの制御をするためのプログラム、動作ログ保持部252が保持している動作ログ情報が記憶されている。記憶装置には更に、報酬管理部253が管理している報酬情報、機器制約報酬管理部254が管理している機器制約報酬情報が保持されている。また、ユーザ要望報酬管理部255が管理しているユーザ要望報酬情報、ユーザ要望報酬変換情報、及び学習状況管理部256が管理している学習状況情報等が保持されている。
制御部125は、ズームレンズ102、絞りユニット103、像振れ補正レンズ104夫々の位置を制御するとも学習プロセッサ250及びカメラ本体200との情報伝達を制御する制御部である。
NN制御部121は、フォーカスレンズ101の位置を制御する制御部である。撮影情報決定部127は、NN制御部121で使用する撮影情報を決定する決定部である。撮影情報については後述する。
操作部206は、使用者がカメラを操作するための操作部である。
実施例2において、実施例1との差は、フォーカスレンズ制御を行うNNアルゴリズム、動作ログ情報、報酬情報、機器制約報酬情報、ユーザ要望報酬情報及びユーザ要望報酬変換情報に撮影情報が使われる点である。以下に実施例1との差について説明する。
<撮影情報について>
次に撮影情報について説明する。
撮影情報は、フォーカスレンズ制御において、撮影映像が受ける影響を示す情報であり、カメラ本体200が撮影した映像から得られる情報である。
実施例2では、実施例1のレンズ装置情報に加え、撮影情報を用いることで、フォーカスレンズの制御において、撮影映像が受ける影響を加味して、位置精度、速度、消費電力、静音のそれぞれの要求事項を更にバランスよく制御している。
撮影情報は、信号処理回路203で得られた撮影映像を制御部211にて解析された値であり、通信部212、通信部126、制御部125を介して撮影情報決定部127に送られる。
撮影情報は、例えば、現在撮影映像の許容錯乱円や、カメラ本体200にて検出している被写体デフォーカス量、不図示のマイクで録音された録音音量などである。
撮影情報決定部127は、例えば、現在のF値と許容錯乱円の情報から式(1)に示す通り、現在撮影映像の焦点深度を決定する。
撮影情報を用いることで、フォーカスレンズ制御が現在撮影中の映像に対しての影響を考慮して、位置精度、速度、消費電力、静音のそれぞれの要求事項を更にバランスよく制御することができる。
撮影情報を用いてフォーカスレンズ制御を行うNNアルゴリズムについては後述する。
<NNアルゴリズムとウエイトについて>
以下にNN制御部121がNNアルゴリズムを用いて駆動指令を決定する方法について説明する。
NN制御部121にはNNアルゴリズムが実装されている。NN制御部121は、NNデータ記憶部123に記録されたNNの特徴量、結合重み付け係数であるウエイトを参照し、参照したウエイトを用いてNNアルゴリズムにより駆動指令を決定する。ウエイトの製造方法については、実施例1と同様の方法で製造される。
図13は、実施形態2の学習モデルを用いたNN制御部121の入出力の構造を示す概念図であり、X21は制御部125から出力されたフォーカス駆動の駆動指令目標位置である。目標位置X22はフォーカスレンズ検出部106から得られたフォーカスレンズ101の現在位置である。X23は撮影情報としての現在撮影映像の焦点深度であり、X24はレンズ装置情報としてのフォーカス敏感度である。X25は撮影情報としての被写体デフォーカス量である。X26は撮影情報としての録音量である。Y21はフォーカスレンズ101の駆動信号である。以上により、フォーカス駆動の駆動指令、フォーカスレンズ101の現在位置、焦点深度、フォーカス敏感度を入力として、学習済モデルの出力として駆動信号が決定される。NN制御部121がNNアルゴリズムを用いて決定した駆動信号により、フォーカスレンズ101の制御を行う。
<動作ログ情報について>
次に実施例1における動作ログ情報について説明する。
動作ログ管理部124は、図13に示すX21〜X26及びY21であるNNアルゴリズムの入出力情報を、NNアルゴリズムの制御周期ごとに収集し記録する。また、不図示のフォーカスレンズ駆動部105の消費電力を測定するための電力検出部を設け、動作ログ管理部124は、フォーカスレンズ駆動部105の消費電力も動作ログ情報として記録する。
また動作ログ管理部124は、NN制御部121に入力された駆動指令やフォーカスレンズ検出部106によって検出されるフォーカスレンズの位置情報も動作ログ情報として記録する。更に動作ログ管理部124は、駆動指令から決定されるフォーカスレンズの目標位置及び位置情報、位置精度Eを決定し、動作ログ情報として記録する。更に動作ログ管理部124は、フォーカスレンズの位置情報から、フォーカスレンズの速度及び加速度を算出し、動作ログ情報として記録する。また、動作ログ管理部124は不図示のフォーカスレンズ速度、加速度とフォーカスレンズ駆動音との関係を示すデータを保持し、フォーカスレンズ速度、加速度から、フォーカスレンズ駆動音を決定し、記録する。更に、録音音量とフォーカスレンズ駆動音との比である駆動音S/N比を決定し、記録する。駆動音S/N比は、雑音となるフォーカスレンズ駆動音が信号となる録音に与える影響を示し、駆動音S/N比が大きいほど、フォーカスレンズ駆動音が録音に与える影響が小さいことを示す。
動作ログ情報は、動作ログ管理部124から制御部125を介して動作ログ保持部252に送信され、動作ログ保持部252に記録される。
<報酬情報及び制御結果の点数化について>
図14を用いて実施例1の報酬情報について説明する。
図14の(a1)(b1)は夫々、NNアルゴリズム制御結果を示す項目であるデフォーカス量、駆動音S/N比に対して、学習時において、時間経過と点数の境界値との関係を示している。
図14の(a1)(b1)の横軸は時間経過を示す。
図14の(a2)(b2)はデフォーカス量、駆動音S/N比に対しての報酬情報のデータ構造を示している。報酬情報のデータは、複数の境界値と、境界値で区切られた領域で獲得できる点数で構成される。
ここでNNアルゴリズムは制御結果の獲得点数が高得点となるように学習されるため、境界値が各対象となる項目の目標に近い程、より高精度な制御となるように学習される。例えば、デフォーカス量の境界値が0に近い値になる程、デフォーカス量が0に近づく制御となるように学習される。また他の項目に比べ、点数を高く設定することにより、他の項目よりも学習の優先度が高いことを示す。例えば、デフォーカス量よりも駆動音S/N比の点数を高くすることで、デフォーカス量よりも駆動音S/N比を優先させる制御となるように学習される。
本実施例では、2点の境界値と、境界値で区切られた3つの領域に対して割り当てられる3点の点数で構成される例を示す。
図14の(a1)の縦軸は被写体のデフォーカス量であるデフォーカス量Dの値を示している。デフォーカス量の正の方向は、合焦点に対して、現在ピント位置が無限側にズレている場合を示し、負の方向は、合焦点に対して、現在ピント位置が至近側にズレている場合を示す。デフォーカス量が0に近い程、被写体に合焦していることを示している。
図14の(a2)はデフォーカス量の報酬情報であるデフォーカス量報酬情報RDのデータ構造を示している。デフォーカス量報酬情報RDはデフォーカス量の報酬範囲を決めるD1、D2と、報酬範囲において獲得できる点数SD1、SD2、SD3により構成される。
D1、D2はそれぞれデフォーカス量Dの報酬として与えられる点数の境界値を示している。ここで、−D1〜D1、の範囲の時は範囲AD1とする。また、範囲AD1を除く、−D2〜D2、の範囲AD2とする。また、範囲AD1、AD2以外の時は範囲AD3とする。デフォーカス量Dがそれぞれ範囲AD1、AD2、AD3の範囲内のときは、図14の(a2)が示す点数SD1、SD2、SD3が報酬として与えられる。ここで点数SD1、SD2、SD3の点数の関係は、
SD1>SD2>SD3
となり、デフォーカス量Dが0に近いほど高い点数となるように設定される。
図14(a1)が示す通り、デフォーカス量に対して、任意の時間Tp1、Tp2、Tp3におけるデフォーカス量Dは夫々AD2、AD3、AD1の範囲内である。従って、任意の時間Tp1、Tp2、Tp3において、獲得できる報酬はそれぞれ点数SD2、SD3、SD1となる。
ここで例えば、D1はFδ/2、D2はFδの値が設定される。つまり、デフォーカス量が焦点深度内でれば、高い得点が加算され、焦点深度外となった場合に低い点数が加算される。またデフォーカス量が0に近いほど、獲得できる点数が多くなる。
図14(b1)の縦軸はフォーカスレンズの駆動音S/N比Nの値を示している。駆動音S/N比Nが大きいほど、フォーカスレンズ駆動音が録音に与える影響が小さいことを示す。
図14(b2)は駆動音S/N比の報酬情報である駆動音S/N比報酬情報RNのデータ構造を示している。駆動音S/N比報酬情報RNは駆動音S/N比の報酬範囲を決めるN1、N2と、報酬範囲において獲得できる点数SN1、点数SN2、点数SN3により構成される。
N1、N2はそれぞれ駆動音S/N比Nの報酬として与えられる点数の境界値を示している。ここで、0〜N1の範囲の時は範囲AN1とする。また、N1〜N2の範囲の時は範囲AN2とする。また、範囲AN1、AN2以外の時は範囲AN3とする。駆動音S/N比がそれぞれ範囲AN1、AN2、AN3の範囲内のときは、図14の(b2)が示す点数SN1、SN2、SN3が報酬として与えられる。ここで点数SN1、SN2、SN3の点数の関係は、
SN1<SN2<SN3
となり、駆動音S/N比が0に近いほど、低い点数となるように設定される。
図14(b1)が示す通り、駆動音S/N比に対して、任意の時間Tp1、Tp2、Tp3における駆動音S/N比Nは夫々範囲AN1、AN3、AN2の範囲内である。従って、任意の時間Tp1、Tp2、Tpにおいて、獲得できる報酬はそれぞれ点数SN1、SN3、SN2となる。
ここで例えば、境界値N1、N2は任意に決定され、駆動音S/N比を大きく制御するほど、獲得できる点数が多くなるように点数が設定される。従って、獲得した点数が高くなるほど、録音に対して、フォーカスレンズ駆動音の影響が少ない制御が行えていることを示す。
以上に示すより、デフォーカス量、駆動音S/N比等の制御結果に対して、点数化するための報酬情報が設定される。
上記の示す報酬情報を用いて、学習時のフォーカスレンズ駆動において、動作ログ情報を元にNNアルゴリズムの制御結果を単位時間ごとに点数化し、単位時間ごとの点数を累計することで、NNアルゴリズム制御結果の累計点数を決定することができる。また位置制御誤差、速度、加速度、消費電力夫々の得点を加算することで、NNアルゴリズムのトータルとしての制御結果を点数化することができる。
本実施例では、境界値の数を固定としているが、必要に応じて変更可能としても良い。
また、本実施例では、点数を境界値により決定しているが、デフォーカス量D、駆動音S/N比Nを点数に変換する変換関数を用いて点数化する方法でも良い。この場合は、報酬情報として境界値ではなく、変換関数及びその係数が報酬情報として設定される。
<機器制約報酬情報、ユーザ要望報酬情報及びユーザ要望報酬変換情報について>
次に本実施例における機器制約報酬情報、ユーザ要望報酬情報について説明する。
図15は、機器制約報酬情報、ユーザ要望報酬情報のデータ構造を示している。
機器制約報酬情報は、デフォーカス量報酬情報RDb、駆動音S/N比報酬情報RNbで構成されている。またユーザ要望報酬情報は、デフォーカス量報酬情報RDu、駆動音S/N比報酬情報RNuで構成されている。デフォーカス量報酬情報RDb及びデフォーカス量報酬情報RDuは、図14(a2)に示すデフォーカス量報酬情報RDと同じデータ構造である。駆動音S/N比報酬情報RNb及び駆動音S/N比報酬情報RNuは、図14(b2)に示す駆動音S/N比報酬情報RNと同じデータ構造である。
ここで、機器制約報酬情報は、レンズ100に固有となる報酬情報である。機器制約報酬情報は、レンズ100に応じて予め決められた報酬情報が機器制約報酬管理部254に保持されている。ユーザ要望報酬情報は、ユーザ要望に応じて変更可能となる報酬情報である。ユーザ要望報酬情報は、ユーザ要望報酬管理部255にて、ユーザ設定により変更されたユーザ要望とユーザ要望報酬変換情報により決定される。報酬管理部253は、機器制約報酬情報、ユーザ要望報酬情報を合わせたものを報酬情報として管理している。
機器制約報酬情報は、機器として、最低限守るべき制御を規定するための報酬情報であるため、ユーザ要望報酬情報よりも境界値で決定する範囲が広く、期待する目標から逸脱する場合に負の値を含む低い点数が設定される。
ユーザ要望報酬情報は、ユーザ設定により可変可能であり、ユーザ設定により変更されたユーザ要望とユーザ要望報酬変換情報により決定される。
NNアルゴリズムの学習には、図14が示す通り、機器制約報酬情報、ユーザ要望報酬情報夫々の報酬情報を元に制御結果の点数が決定し、夫々の点数を加算したものが最終的な制御結果の点数として決定される。
以下に本実施例において、ユーザ設定によりユーザ要望報酬情報を決定する方法について説明する。
図16は実施例1において、ユーザ要望報酬変換情報のデータ構造を示している。
図16(a)は、デフォーカス量ユーザ要望報酬変換情報URDuのデータ構造を示している。デフォーカス量ユーザ要望報酬変換情報URDuは各レベルごとに、境界値、点数が異なる複数のデフォーカス量報酬情報RDuで構成されている。
図16(b)は、駆動音S/N比ユーザ要望報酬変換情報URNuのデータ構造を示している。駆動音S/N比ユーザ要望報酬変換情報URNuは各レベルごとに、境界値、点数が異なる複数の駆動音S/N比報酬情報RNuで構成されている。
デフォーカス量ユーザ要望報酬変換情報URDu、駆動音S/N比ユーザ要望報酬変換情報URNuはレベル1、レベル2、レベル3の順にユーザ要望が高くなるように境界値、点数の値が決定されている。具体的にはレベル1は、レベル2、レベル3に比べ、境界値が各項目の目標により近い値となっていて、点数についてはより高い点数となっている。
図12に示す操作部130によりユーザが設定したデフォーカス量、駆動音S/N比の各レベル情報は、制御部125を介してユーザ要望報酬管理部255に伝達される。ユーザ要望報酬管理部255は自身が保持している図16が示すユーザ要望報酬変換情報から、ユーザが設定したデフォーカス量、駆動音S/N比の各レベル情報に基づきユーザ要望報酬情報を決定する。
以上により、ユーザ設定により変更されたユーザ要望とユーザ要望報酬情報を元にNNアルゴリズムの学習が実施され、ユーザ要望に応じて最適な制御が行えるNNアルゴリズムが生成される。
生成されたNNアルゴリズムは、NNデータ記憶部123で記憶され、フォーカス駆動制御に使用される。
また、図16に示すように、ユーザ要望報酬変換情報は、ユーザ要望各々に対し、目標レベルごとに学習完了基準情報を有する。この学習完了基準情報は、報酬の総加算値の目標値が設定されており、各レベルを目標と学習1回分におけるユーザ要望報酬の総加算値が学習完了基準情報を上回った時、学習完了と判断する目安とする。(あくまでも目安で、実際には総加算値の伸び率や学習回数で学習を打ち切ってもよい。)学習完了基準情報は、図16(a)におけるCDL1、CDL2、CDL3、図16(b)におけるCNL1、CNL2,CNL3が該当する。この学習完了基準情報には、ユーザ要望報酬における報酬スコアに加え、機器制約報酬情報によって算出される報酬スコアも合わせた総スコアにおける目標値が設定されている。
学習完了基準情報は、学習状況管理部256で管理され、後述する学習進捗状況の算出に使用される。
学習状況管理部256では、機械学習部251で算出した報酬に基づく評価結果を受信し、ユーザ要望における評価結果への変換処理を行う。この時、機械学習部251で算出される評価結果は、ユーザ要望項目ごと(本実施例では、デフォーカス量と、駆動音S/N比)に算出される。ユーザ要望項目ごとの評価結果は、そのユーザ要望ごとの機器制約報酬情報に基づく評価値とユーザ要望報酬情報に基づく評価値との和であって、単位時間ごとの評価値の総和(総スコア)である。
学習状況管理部256では、図16に示す学習完了基準情報に基づき、上記総スコアとの比率関係から報酬に対する評価結果をユーザ要望における評価結果に変換する。この評価方法については実施例1で説明したので説明を省略する。
これにより、ユーザ要望評価進捗は、評価完了までの到達割合として算出することができる。
<ユーザ要望における評価進捗の通知>
上述の要領で算出したユーザ要望評価進捗をユーザに通知する方法を説明する。
図17(a)に示すのは、ユーザ要望項目(デフォーカス量、駆動音S/N比)ごとのユーザ要望評価進捗(進捗率)をパーセント表示した表示画面の例である。このように学習回数や経過時間と共に表示することで、ユーザは現状の学習進捗を知るとともに、完了までの目安を推定することができる。図17(b)に示すのは、ユーザ要望項目ごとの進捗率を、数値表示ではなく、グラフ化したものである。これは、学習開始時点での学習到達度から、学習完了の目標とする総スコアまでの進捗割合を表示しており、学習回数ごとの総スコアを履歴で表示している。このような表示方法でも、ユーザは現状の学習進捗を知ることが可能となる。
本実施例においては、学習進捗をパーセント数値表示や学習到達度割合の表示を例にとって説明したが、学習進捗をバー表示や円グラフ表示しても良いし、単純に総スコアの履歴情報と目標スコアとを重畳して表示する方法であっても良い。
また、表示する学習進捗は目標スコアと現在の総スコアとの差分量であっても良い。
学習進捗は、レンズマイコン120、カメラマイコン210を介して、カメラ本体の表示部に表示されるようにしてもよいし、レンズ装置に設けられた不図示の表示部に表示されるようにしてもよい。
実施例1では、カメラ本体が学習プロセッサを有する構成としていたが本実施例では、レンズ装置が学習プロセッサを有する構成とした。いずれの構成であっても、ユーザは現状の機械学習の進捗状況を認識することが可能となり、本発明の効果を享受可能な撮影システムを提供することができる。
本実施例に係る撮像システムは、基本的な構成は実施例2に係る撮像システムと同様であるので、ここでは実施例2とは異なる構成・機能について説明し、同じ構成については説明を省略する。
<学習完了予想時間を決定・表示>
実施例3の学習状況管理部では、学習完了予想時間(学習完了の時期に関する情報)を算出して表示させる機能を有する。
実施例3では、学習状況管理部256において、機械学習中に機械学習部251で算出した報酬に基づく評価結果を受信するたびに総スコアを履歴情報として保存、管理すると共に、蓄積した総スコアの値に基づいて近似曲線を計算する。近似曲線の計算は、一般的な対数近似や多項式近似に基づいて行うことができる。この時、学習状況管理部256は最新の総スコアの推移(履歴)における傾きを求め、下記要領で学習完了予想時間を算出することにより学習完了時間を予測する。
図18に、学習状況管理部256が機械学習中に機械学習部251で算出した報酬に基づく評価結果を受信するたびにプロットした例である。横軸は学習回数、縦軸は報酬を蓄積したスコアである。
このとき、曲線ApCは、学習回数n回目までの学習結果である総スコアS1,S2…Snから算出された、学習回数に対する総スコアの近似曲線である。この時、最新の学習結果が学習回数n回目であるSnであった際に、学習回数n回目における近似曲線ApCの傾き(An)を微分で求める。ここで、図18において、Tpcは学習完了と判断する目安となるスコア(学習完了基準情報)、Snは今現在(最終学習時)の総スコアである。
この時、学習完了基準情報(TpC)と現在総スコア(Sn)の差分を求め、傾き(An)で除することで推定残り学習回数を求めることができる。この時、1回あたりの学習時間(サイクルタイム)をTl(秒)とすると、推定学習残り時間Trest(秒)は次式のようになる。
Trest = ((Tpc−Sn)/An)×Tl ・・・ (3)
あるいは、図18に例示したように、学習回数n回目における近似曲線上の値をもとに推定残り学習回数を求めて、それに基づいて学習残り時間を推定してもよい。
上記の要領で推定学習残り時間を表示部に表示することで、ユーザに通知する。
本実施例によれば、ユーザは機械学習にかかる残り時間の目安を知ることが可能となる。
本実施例に係る撮像システムは、基本的な構成は実施例2に係る撮像システムの構成(レンズ100が学習プロセッサを有する構成)を前提として説明したが、本発明はこれに限定されることはない。実施例1のように、カメラ本体が学習プロセッサ250を有する構成であっても同様に適用可能であり、本発明の効果を享受することができる。
本実施例に係る撮像システムは、基本的な構成は実施例3に係る撮像システムと同様であるので、ここでは実施例3とは異なる構成・機能について説明し、同じ構成については説明を省略する。
<ユーザ要望により生成された報酬データを元に学習結果を予想し、予想結果に応じて学習実施可否及び予想結果をユーザに提示>
実施例4のレンズ装置は、ユーザ要望設定時に、学習結果を予想し、予想結果に応じて学習実施可否および予想結果をユーザに示す機能を有する。
以下、実施例4の構成について、図面を参照しながら説明する。
実施例4のレンズ装置では、図12に示す学習状況管理部256において、学習履歴情報を管理する。この時、学習履歴情報というのは、過去に実施した機械学習時の報酬情報とその時の学習完了基準情報、および、機械学習の成功失敗を示す学習失敗情報、および学習完了時における評価結果である総スコアを紐付管理したものである。学習履歴情報は、図18に示すように、ユーザ要望項目毎に履歴管理される。
<学習の成功失敗判定およびその記録>
学習失敗情報の管理について、および、学習の失敗を判断する方法を説明する。
報酬情報は、報酬情報と共に学習完了と判断するスコアである学習完了基準情報、および基準学習回数を有する。
学習状況管理部256は、機械学習部251で算出した報酬に基づく評価結果を受信するたびに学習完了基準情報(閾値)と現在の総スコアを比較し、所定の回数内(基準学習回数内)で学習完了基準情報以上となれば学習完了と判断し、学習失敗情報に学習成功を記録する。一方で、現在の総スコアが学習完了基準情報未満である場合は、現在の学習回数と基準学習回数を比較し、現在の学習回数が基準学習回数を上回っている場合は、学習失敗情報に学習失敗を記録する。すなわち、基準学習回数を上回る回数だけ機械学習を重ねても総スコアが学習完了基準情報に達しない場合に学習失敗と判定する。
<学習結果の予想と通知>
次に本実施例における、学習結果の予想と通知方法について説明する。
機械学習開始時、設定されたユーザ要望に基づき、例えば実施例1の図8、9や実施例2の図14、15を参照しながら説明した要領でユーザ要望から報酬情報に変換する。このとき、変換された報酬情報と、学習状況管理部256が管理する学習履歴情報の中に一致する報酬情報が存在するか否か、検索する。このとき、一致する報酬情報が見つかったら、紐付されている学習失敗情報を確認し、学習失敗と記録されていた場合は、表示部に学習失敗の旨を表示する。
さらに、学習失敗情報が学習成功と記録されている場合であっても、最後に実施した機械学習を完了した際の総スコア(現スコア)が、今回決定した報酬情報と一致する学習履歴情報に紐付管理されている総スコア(推定スコア)を比較する。その結果、現スコアが推定スコアと等しい(一致している)か、もしくは現スコアが推定スコアを既に上回っている場合は、機械学習を実施しても総スコアの改善が見込めないので、その旨を表示部にて表示する。
学習結果の予想において、ユーザ要望が現在よりも高いレベルで設定されているにも関わらず上記のように改善効果がない、もしくは失敗する(より高いレベルの達成は見込めない)ことが予想される結果となった場合は、(機械学習を実施しても意味がないので)機械学習を中断する。
<改善不可と判断した場合、最後に設定したユーザ要望項目の向上を達成するために、他のユーザ要望項目の設定値変更を提示>
複数のユーザ要望項目が設定された際の学習結果の予想において、学習の失敗が予想される場合は、下記の方法により、学習が成功するユーザ要望項目の設定の推奨値を提示する。
学習成功時に、その時に設定されていた全てのユーザ要望項目の設定値(図10、16に示したレベル)の組み合わせを学習履歴情報としてあらかじめ記録しておく。
学習開始時、最後に設定されたユーザ要望項目が何であったかを記憶しておき、上記の学習結果予測で説明した方法により学習の結果予測を行う。その結果、最後に設定されたユーザ要望項目に対する学習が失敗することが判定された場合には、最後に設定したユーザ要望項目が成功した過去の学習実績のデータが無いか学習履歴の検索を行う。最後に設定したユーザ要望項目が成功した過去の学習実績のデータがあった場合には、その時に設定されていた、全てのユーザ要望項目の設定値をユーザに提示する。
このような方法を採ることで、ユーザは現状の各ユーザ要望項目の設定の組み合わせでは学習が失敗することを知るとともに、他のユーザ要望項目の設定値を変更することで最後に設定された当該ユーザ項目の学習を成功させられる可能性があることを知ることができる。
本実施例では、最後に設定されたユーザ要望項目を実現するために必要な、他のユーザ要望項目の設定値を知らせる方法を説明したが、これに限らず、他のユーザ要望項目を実現することを提案する方法であってもよい。例えば、優先するユーザ要望項目をあらかじめユーザが指定するメニュー項目を備える方法であってもよい。
<改善不可判断として、駆動に対する映像効果に基づいて決定する機械学習システム>
図19は、本発明の実施例5に係る撮像システムを示すブロック図である。
実施例1の構成と比較して、異なる部分について説明し、同じ構成については説明を省略する。
<機械学習機能付き撮影システムの構成>
図19に、本発明の実施例5に係る撮像システム(光学装置、カメラシステム)の構成を示す。カメラシステムは、撮像装置(カメラ本体200)と、レンズ装置(レンズ100)と、遠隔装置400とにより構成されている。実施例5においては、学習プロセッサが、カメラ本体やレンズ装置ではなく遠隔装置400に構成され、遠隔装置400が学習機能を有する点が実施例1と異なる。また学習に使用される情報として、撮影映像を元に生成された情報が使われる点も異なる。ここで遠隔装置400は、例えば、携帯端末、パソコン端末、または遠隔操作装置などである。
実施例1と同一の構成については共通の記号を付与し、その説明は省略する。
カメラ本体200は通信部230を有する。通信部230は遠隔装置400と通信するための通信部である。
遠隔装置400は表示部401、操作部402、遠隔装置マイクロコンピュータ(以下、遠隔装置マイコン410とも記載する)を有する。
表示部401は、遠隔装置400の表示部である。操作部402は、遠隔装置400の表示部である。
遠隔装置マイコン410は、制御部411、通信部412を有する。
制御部411は、遠隔装置を制御する制御部である。通信部412は、カメラ本体200と通信するための通信部である。
学習プロセッサ450は、プロセッサ(CPU、GPU)、記憶装置(ROM、RAM、HDD)からなる。プロセッサは、機械学習部451、動作ログ保持部452、報酬管理部453、機器制約報酬管理部454、ユーザ要望報酬管理部455の各種処理を制御する。記憶装置には、これらの制御をするためのプログラム、動作ログ保持部452が保持している動作ログ情報が記憶されている。更に報酬管理部453が管理している報酬情報、機器制約報酬管理部454が管理している機器制約報酬情報、ユーザ要望報酬管理部455が管理しているユーザ要望報酬情報及びユーザ要望報酬変換情報等が保持されている。学習プロセッサ450内の動作は、実施例1の学習プロセッサ250内の動作と同じである。
ここで、通信部230と通信部412とは、無線通信にて接続されている。無線通信は、Bluetooth(登録商標)やWiFi等の近距離無線通信や、公衆無線LAN等の公衆無線通信である。
実施例5において、学習プロセッサがカメラ本体200ではなく遠隔装置400に構成されている点が実施例1と異なる。
従って、実施例1に対して、カメラマイコン210と学習プロセッサ250との間の情報伝達が、実施例5では、カメラマイコン210と学習プロセッサ450との間の情報伝達が、通信部230、通信部412、制御部411を介して行われる。
また、カメラ本体200の信号処理回路203から出力される映像データは、制御部211、通信部230、通信部412を介して、制御部411に送信される。制御部411に送信された映像データは、表示部401に表示される。
更に、使用者がカメラ本体200の操作部206又は遠隔装置400の操作部402から機械学習実施を指示する操作を行うと、機械学習実施の指令が制御部411を介して機械学習部451に伝えられる。機械学習部451は、機械学習実施の指令を受けると、実施例1の機械学習部251と同様の方法で機械学習を開始する。
更に、操作部206又は操作部402によりユーザが設定した位置精度、静音、消費電力の各レベル情報は、制御部411を介してユーザ要望報酬管理部455に伝達される。ユーザ要望報酬管理部455は自身が保持しているユーザ要望報酬変換情報から、ユーザが設定した位置精度、静音、消費電力の各レベル情報に基づきユーザ要望報酬情報を決定する。
以上により、ユーザが設定したユーザ要望報酬情報を元に、実施例1と同様の動作にて、NNアルゴリズムの学習が実施され、ユーザ設定に応じて最適な制御が行えるNNアルゴリズムが生成される。
生成されたNNアルゴリズムは、遠隔装置400から、カメラ本体200を介してレンズ100に送られ、NNデータ記憶部123で記憶され、フォーカス駆動制御に使用される
<映像情報に基づく改善不可判断>
このとき、本実施例のレンズ学習装置は、フォーカスの駆動制御の機械学習による改善不可判断を、映像効果に影響のある因子(映像効果ファクター)を用いる。本実施例では、ユーザ要望項目としてデフォーカスの性能向上を指定した場合に、映像効果ファクターとして焦点深度情報を利用する場合を考える。一般的に、焦点深度が深くなれば、フォーカスが合いやすくなる(多少ずれてもピンボケして見えない)。学習状況管理部456には、学習履歴情報として、前回の学習時(つまり現在)のデフォーカスレベルが保存されている。映像効果ファクターは、レンズ装置情報として焦点深度情報を保持しており、機械学習部451では、前記現在のデフォーカスレベルを用いて、現状必要な焦点深度情報に変換する。この変換処理は、事前に準備した変換表を参照する方式でも良い。このとき、現在必要な焦点深度情報に対し、現在の焦点深度情報が不足する(焦点深度が浅い)場合、機械学習を行っても機能改善が見込めないと判断し、その旨を表示部に表示してユーザに通知する。
学習進捗の状態等は、遠隔装置に設けられた表示部401に表示されるようにしてもよいし、遠隔装置マイコン410を介してカメラ本体の表示部に表示されるようにしてもよいし、双方に表示されるようにしてもよい。
以上により、遠隔地から、撮影映像を確認しながらユーザ設定に応じて最適な制御が行えるNNアルゴリズムが生成することができる。更に操作部206を使用して、使用者がカメラ本体200から、ユーザ要望報酬情報の設定を行うことが可能な装置において、映像効果ファクターに基づいてアクチュエータ駆動制御の改善可否を判断し、ユーザに通知することが可能な装置が実現できる。
ここで、NNアルゴリズム及びNNアルゴリズムの学習において、実施例1、3において、レンズ装置情報を用いた例を示した。実施例2において撮影情報を用いた例を示した。但し、いずれの実施例の形態においても、NNアルゴリズム及びNNアルゴリズムの学習において、レンズ装置情報、撮影情報又はその両方を用いても良い。
<フォーカス以外への本発明の適用について>
なお、例示した実施例ではフォーカスレンズを駆動対象としたフォーカス制御(処理方法)を扱ったが、他の制御(ズームレンズ、像振れ補正、開口絞り等)に対しても、本発明は同様に有効である。静音、消費電力については、光学部材をアクチュエータにより駆動する場合は共通の課題を有している。位置精度においては、ズームレンズにおいては、画角変化における被写体の拡大変化量の関係により要求される位置精度が決定される。またズームレンズ駆動量と画角変化量との関係においても位置精度が決定される。像振れ補正においては、焦点距離と映像のシフト量の関係の情報から、位置精度が決定される。開口絞りにおいては、絞り駆動量と映像の輝度変化量の関係から位置精度が決定される。
(その他の実施例)
本発明は、上述の実施例及び変形例の1以上の機能を実現するプログラム(処理方法)を、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータがプログラムを読出し実行する処理でも実現可能である。コンピュータは、1つ又は複数のプロセッサ若しくは回路を有し、コンピュータ実行可能命令を読み出し実行するために、分離した複数のコンピュータ又は分離した複数のプロセッサ若しくは回路のネットワークを含みうる。
プロセッサ又は回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、又はフィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサ又は回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、又はニューラルプロセッシングユニット(NPU)を含みうる。
以上、実施例及び変形例を参照して本発明について説明したが、本発明は上記実施例及び変形例に限定されるものではない。本発明の趣旨に反しない範囲で変更された発明、及び本発明と均等な発明も本発明に含まれる。また、上述の各実施例及び変形例は、本発明の趣旨に反しない範囲で適宜組み合わせることができる。
206 表示部
150、250、450 学習プロセッサ(処理部)
151、251、451 機械学習部
152、252、452 動作ログ保持部
153、253、453 報酬管理部
154、254、454 機器制約報酬管理部
155、255、455 ユーザ要望報酬管理部
156、256、456 学習状況管理部

Claims (16)

  1. 光学装置において光学部材の駆動を行う駆動部に対する制御出力の機械学習を行う処理部を有する処理装置であって、
    前記処理部は、前記駆動の性能に関する使用者の要求に関する情報に基づいて前記機械学習を行い、かつ該機械学習の進捗に関する情報を生成することを特徴とする処理装置。
  2. 前記処理部は、前記機械学習における評価値に基づいて、前記進捗に関する情報として、前記機械学習の完了に関する情報を生成する、
    ことを特徴とする請求項1に記載の処理装置。
  3. 前記完了に関する情報は、前記完了の時期に関する情報を含むことを特徴とする請求項2に記載の処理装置。
  4. 前記完了に関する情報は、前記完了の可否に関する情報を含むことを特徴とする請求項2に記載の処理装置。
  5. 前記処理部は、予め定められた時期における前記評価値に基づいて、前記可否に関する情報を生成することを特徴とする請求項4に記載の処理装置。
  6. 前記処理部は、前記評価値の変化に基づいて、前記可否に関する情報を生成することを特徴とする請求項4に記載の処理装置。
  7. 前記処理部は、前記光学装置の状態に関する情報に基づいて、前記可否に関する情報を生成することを特徴とする請求項4に記載の処理装置。
  8. 前記処理部は、前記要求に関する情報に基づいて報酬の情報を生成し、前記報酬の情報に基づいて前記機械学習を行うことを特徴とする請求項1ないし請求項6のうちいずれか1項に記載の処理装置。
  9. 前記光学部材は、フォーカスレンズ群、ズームレンズ群、開口絞り、像振れ補正レンズ群のうち少なくとも1つを含むことを特徴とする請求項1ないし請求項8のうちいずれか1項に記載の処理装置。
  10. 前記光学部材は、フォーカスレンズ群を含み、
    前記状態に関する情報は、前記光学装置の焦点深度に関する情報を含む、
    ことを特徴とする請求項7に記載の処理装置。
  11. 前記処理部は、前記機械学習の履歴に関する情報に基づいて、前記進捗に関する情報として、前記要求の変更を促す情報を生成することを特徴とする請求項1ないし請求項10のうちいずれか1項に記載の処理装置。
  12. 光学部材と、
    前記光学部材を駆動する駆動部と、
    請求項1ないし請求項11のうちいずれか1項に記載の処理装置と、
    を有することを特徴とする光学装置。
  13. 請求項12に記載の光学装置と、
    前記光学装置によって形成された像を撮る撮像素子と、
    を有することを特徴とする撮像装置。
  14. 請求項1ないし請求項11のうちいずれか1項に記載の処理装置と、
    前記光学装置によって形成された像を撮る撮像素子と、
    を有することを特徴とする撮像装置。
  15. 光学装置において光学部材の駆動を行う駆動部に対する制御出力の機械学習を行う処理方法であって、
    前記駆動の性能に関する使用者の要求に関する情報に基づいて前記機械学習を行い、かつ該機械学習の進捗に関する情報を生成することを特徴とする処理方法。
  16. 請求項15の処理方法をコンピュータに実行させることを特徴とするプログラム。
JP2020076112A 2020-04-22 2020-04-22 処理装置、光学装置、撮像装置、処理方法およびプログラム Pending JP2021173820A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020076112A JP2021173820A (ja) 2020-04-22 2020-04-22 処理装置、光学装置、撮像装置、処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020076112A JP2021173820A (ja) 2020-04-22 2020-04-22 処理装置、光学装置、撮像装置、処理方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2021173820A true JP2021173820A (ja) 2021-11-01

Family

ID=78281621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020076112A Pending JP2021173820A (ja) 2020-04-22 2020-04-22 処理装置、光学装置、撮像装置、処理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2021173820A (ja)

Similar Documents

Publication Publication Date Title
JP6296698B2 (ja) カメラシステムおよび焦点調節方法
JP6063634B2 (ja) 焦点調節装置
JP5645875B2 (ja) 撮像装置、レンズ装置および撮像システム
US11762165B2 (en) Lens apparatus, image pickup apparatus, control method, and computer-readable storage medium
US9420165B2 (en) Focus adjustment apparatus, camera system, and focus adjustment method
JP2010139666A (ja) 撮像装置
JP2013137381A (ja) ズームレンズ装置
JP2015011315A (ja) 撮影装置
JP6516472B2 (ja) 撮影装置および撮影装置の制御方法
JP2012255896A (ja) 撮像装置、その焦点調整方法およびプログラム
US11849218B2 (en) Lens apparatus, image pickup apparatus, camera apparatus, controlling method, and computer-readable storage medium
US11843851B2 (en) Optical apparatus and generating method
JP2021173820A (ja) 処理装置、光学装置、撮像装置、処理方法およびプログラム
JP2013024900A (ja) 光学機器のレンズ制御装置
JP2017009961A (ja) 光学機器およびフォーカス制御プログラム
JP2022151256A (ja) 制御装置、撮像装置、レンズ装置、制御方法、およびプログラム
JP2021136648A (ja) レンズ装置、撮像装置、処理装置、処理方法、およびプログラム
JP2022151257A (ja) 制御装置、撮像装置、レンズ装置、制御方法、およびプログラム
JP2022006612A (ja) 学習装置、撮像装置、レンズ装置、学習方法、プログラム、および製造方法
JP2021092717A (ja) 駆動制御装置、駆動制御システム、レンズ装置、駆動制御方法、およびプログラム
JP2013122565A (ja) レンズ装置および撮像装置
JP6972514B2 (ja) カメラボディ
JP5984883B2 (ja) レンズユニット、撮像装置、及びそれらの制御方法
JP5602774B2 (ja) 撮像装置およびその制御方法、レンズユニットおよびその制御方法
JP6399851B2 (ja) 撮像装置、その制御方法、および制御プログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20220630