(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023036437
(43)【公開日】2023-03-14
(54)【発明の名称】撮像装置およびプログラム
(51)【国際特許分類】
G02B 7/28 20210101AFI20230307BHJP
G02B 7/36 20210101ALI20230307BHJP
G02B 7/34 20210101ALI20230307BHJP
G03B 13/36 20210101ALI20230307BHJP
H04N 23/60 20230101ALI20230307BHJP
G01C 3/06 20060101ALI20230307BHJP
G03B 15/00 20210101ALN20230307BHJP
【FI】
G02B7/28 N
G02B7/36
G02B7/34
G03B13/36
H04N5/232
G01C3/06 120S
G03B15/00 Q
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2021143494
(22)【出願日】2021-09-02
(71)【出願人】
【識別番号】000006633
【氏名又は名称】京セラ株式会社
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【弁護士】
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100132045
【弁理士】
【氏名又は名称】坪内 伸
(74)【代理人】
【識別番号】100147692
【弁理士】
【氏名又は名称】下地 健一
(72)【発明者】
【氏名】近藤 正義
(72)【発明者】
【氏名】濱口 朋浩
(72)【発明者】
【氏名】大川 敬祐
(72)【発明者】
【氏名】阿部 誠也
【テーマコード(参考)】
2F112
2H011
2H151
5C122
【Fターム(参考)】
2F112AD05
2F112CA12
2F112FA03
2F112FA21
2F112FA35
2F112FA45
2H011BA33
2H011BB03
2H151BA02
2H151BA45
2H151BA47
2H151CE30
2H151DA16
5C122EA01
5C122FD01
5C122FD06
5C122FD07
5C122FH11
5C122FH14
5C122HA13
5C122HA35
5C122HA75
5C122HA82
5C122HB01
5C122HB05
5C122HB06
(57)【要約】
【課題】撮像装置のオートフォーカス機構を用いた被写体までの距離測定の信頼性を向上させる。
【解決手段】撮像装置は、レンズと、オートフォーカス機構と、撮像部と、制御部とを備える。オートフォーカス機構は、前記レンズを駆動して被写体の像を合焦させる。撮像部は、オートフォーカス機構により合焦された被写体の像を取得する。制御部は、オートフォーカス機構から得られるレンズの推定位置を用いて被写体までの距離である第1の距離を推定し、撮像された前記被写体の前記像の大きさに基づいて、推定した第1の距離の妥当性を判断する
【選択図】
図1
【特許請求の範囲】
【請求項1】
レンズと、
前記レンズを駆動して被写体の像を合焦させるオートフォーカス機構と、
前記オートフォーカス機構により合焦された前記被写体の前記像を取得する撮像部と、
前記オートフォーカス機構により得られる前記レンズの推定位置を用いて前記被写体までの距離である第1の距離を推定し、撮像された前記被写体の前記像の大きさに基づいて、前記第1の距離の妥当性を判断する制御部と
を備える撮像装置。
【請求項2】
前記制御部は、前記被写体の前記像に基づいて、前記撮像された前記被写体の種類を判定し、前記被写体の前記大きさに加え、前記被写体の前記種類に基づいて前記距離の前記妥当性を判断する、請求項1に記載の撮像装置。
【請求項3】
前記被写体の前記像の大きさは、前記撮像部が撮像した画像中に占める前記被写体の前記像の面積、または、前記画像中の前記被写体の前記像の所定の方向の長さにより表される、請求項1または2に記載の撮像装置。
【請求項4】
前記制御部は、前記第1の距離が妥当ではないと判断した場合、前記オートフォーカス機構に複数回前記被写体の像を合焦させ、それぞれの前記被写体の合焦により前記オートフォーカス機構から得られる複数の前記レンズの推定位置に基づいて、前記第1の距離を推定する、請求項1から3の何れか一項に記載の撮像装置。
【請求項5】
前記制御部は、複数の前記レンズの推定位置を統計処理することにより、前記第1の距離を推定する、請求項4に記載の撮像装置。
【請求項6】
第1の機械学習モデルを記憶する記憶部をさらに備え、
前記第1の機械学習モデルは、前記レンズの前記推定位置を含む複数のパラメータを入力とし、前記第1の距離を出力とする学習用データを用いて機械学習をさせて生成されたものであり、
前記制御部は、前記第1の機械学習モデルに、前記複数のパラメータを入力して、前記第1の距離を推定する、請求項1から5の何れか一項に記載の撮像装置。
【請求項7】
加速度を計測可能な加速度センサを備え、前記複数のパラメータは前記加速度センサから取得される加速度を含む、請求項6に記載の撮像装置。
【請求項8】
前記オートフォーカス機構の周辺の温度を測定可能に構成された温度センサを備え、前記複数のパラメータは前記温度センサから取得される温度を含む、請求項6または7に記載の撮像装置。
【請求項9】
前記記憶部は、前記撮像装置の固有の特性を数値化した個体調整値を記憶し、前記複数のパラメータは前記個体調整値を含む、請求項6から8の何れか一項に記載の撮像装置。
【請求項10】
前記第1の機械学習モデルは、Xgboostにより生成される、請求項6から9の何れか一項に記載の撮像装置。
【請求項11】
前記制御部は、前記撮像部で撮像された前記被写体の前記像に基づいて、前記被写体までの距離を第2の距離として推定し、前記第1の距離と前記第2の距離との比較に基づいて、前記第1の距離の前記妥当性を判断する、請求項1から10の何れか一項に記載の撮像装置。
【請求項12】
前記制御部は、前記第1の距離および前記第2の距離を入力とし、それぞれ妥当性有りおよび妥当性無しに対応する2値で表される前記第1の距離の前記妥当性を出力とする学習用データを用いて機械学習をさせて生成された第2の機械学習モデルに、推定した前記第1の距離と前記第2の距離とを入力して得られる出力に基づいて、前記第1の距離の前記妥当性を判断する、請求項11に記載の撮像装置。
【請求項13】
撮像装置のオートフォーカス機構により得られるレンズの推定位置を用いて被写体までの距離である第1の距離を推定することと、撮像された前記被写体の像の大きさに基づいて、前記第1の距離の妥当性を判断することとを含む処理を、前記撮像装置が有するプロセッサに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、撮像装置およびプログラムに関する。
【背景技術】
【0002】
単眼の撮像装置のオートフォーカス機能を利用し、被写体までの距離を測定する方法が提案されている(例えば、特許文献1および特許文献2参照)。それらの方法によれば、被写体に焦点が合うように調整された撮像装置のレンズの位置に基づいて、被写体までの距離を算出している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2015-79050号公報
【特許文献2】特開2007-17246号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、撮像装置のオートフォーカス機構から得られるレンズ位置は、撮像装置から被写体までの距離に精度よく対応しない場合がある。例えば、レンズを駆動するためにボイスコイルモーター(VCM:Voice Coil Motor)を使用する場合、被写体に焦点が合っているときのVCMに印加される電流値から、レンズの位置が推定される。しかし、実際のレンズの位置は、様々な要因により、電流値から推定されるレンズの位置からずれることがある。また、撮像装置の合焦機能の精度が低いため、レンズの位置から推定される被写体までの距離が、実際の被写体までの距離からずれてしまう場合がある。とくに、スマートフォン等に搭載される撮像装置では、被写界深度が深いため、レンズ位置がずれても合焦していると判定されることがある。
【0005】
したがって、これらの点に着目してなされた本開示の目的は、撮像装置のオートフォーカス機構を用いた被写体までの距離の測定の信頼性を向上させることができる、撮像装置およびプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記目的を達成する撮像装置は、レンズと、オートフォーカス機構と、撮像部と、制御部とを備える。前記オートフォーカス機構は、前記レンズを駆動して被写体の像を合焦させる。前記撮像部は、前記オートフォーカス機構により合焦された前記被写体の前記像を取得する。前記制御部は、前記オートフォーカス機構により得られる前記レンズの推定位置を用いて前記被写体までの距離である第1の距離を推定し、撮像された前記被写体の前記像の大きさに基づいて、前記第1の距離の妥当性を判断する。
【0007】
上記目的を達成するプログラムは、撮像装置のオートフォーカス機構により得られるレンズの推定位置を用いて被写体までの距離である第1の距離を推定することと、撮像された前記被写体の像の大きさに基づいて、前記第1の距離の妥当性を判断することとを含む処理を、前記撮像装置が有するプロセッサに実行させる。
【発明の効果】
【0008】
本開示の実施形態によれば、撮像装置のオートフォーカス機構を用いた被写体までの距離測定の信頼性を向上させることができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る撮像装置の概略構成を示すブロック図である。
【
図2】
図1の制御部が実行する処理の一例を示すフローチャートである。
【
図3】被写体の像の大きさに基づく被写体までの距離の推定方法を説明する図である。
【
図4】被写体までの距離(第1の距離)の推定に機械学習を利用する場合の学習済みモデルを生成する際のデータの流れの一例を示す図である。
【
図5】
図2のフローチャートの第1の距離が妥当か判断するまでのデータの流れの一例を示す図である。
【
図6】
図2のフローチャートにおいて被写体までの距離が妥当ではないと判断された場合に、制御部が実行する処理のデータの流れの一例を示す図である。
【
図7】妥当性の評価を行わない場合の、実際の距離に対する推定距離のばらつきの一例を示す図である。
【
図8】妥当性の評価を行った場合の、実際の距離に対する推定距離のばらつきの一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本開示の実施形態について、図面を参照して説明する。以下の説明で用いられる図は模式的なものである。図面上の寸法比率等は現実のものとは必ずしも一致していない。
【0011】
(撮像装置の構成)
一実施形態に係る撮像装置10は、例えば、スマートフォンまたは携帯型の情報処理装置等にカメラモジュールとして搭載される。スマートフォンに搭載されるカメラモジュールは、オートフォーカス機構を有しており、当該オートフォーカス機構にはVCM(Voice Coil Motor)方式が多く採用されている。
図1に示すように、撮像装置10は、レンズユニット11と、撮像素子12と、アクチュエータ13と、信号処理部14と、制御部15と、記憶部17とを含む。撮像装置10は、さらに、加速度センサ18と、温度センサ19とを含んでよい。
【0012】
レンズユニット11は、撮像装置10の撮像の対象である被写体20を含む物体の像を、撮像素子12の受光面12a上に結像させる。レンズユニット11は、一つ以上のレンズ11aおよびレンズ11aを保持するホルダ11bを含む。レンズ11aは、撮像装置10の筐体10aの窓部10bまたは開口部を通る光軸Oを有する。
【0013】
撮像素子12は、レンズユニット11により受光面12a上に結像された像を電気信号に変換する素子である。撮像素子12は、撮像部に含まれる。撮像素子12は、複数の光電変換素子を含む。光電変換素子は、撮像素子12の出力する画像の各画素に対応する。複数の光電変換素子は、例えば格子状に配列される。光電変換素子は、受光した光の強度に対応するアナログの電気信号を出力する。各光電変換素子の前には、赤(R)、緑(G)および青(B)の何れか1色のカラーフィルタが配置されてよい。カラーフィルタは、例えば、ベイヤ―配列により配置されてよい。撮像素子12は、電気信号をAD変換回路によりデジタルの画像信号に変換する。撮像素子12は、CCDイメージセンサ(Charge-Coupled Device Image Sensor)、またはCMOSイメージセンサ(Complementary MOS Image Sensor)の何れかであってよい。
【0014】
アクチュエータ13は、制御部15からの信号に基づいて、光軸Oに沿う方向にレンズユニット11を変位させる。アクチュエータ13は、オートフォーカス機構に含まれる。アクチュエータ13は、VCMを含んで構成されてよい。VCM方式のアクチュエータ13は、例えば、コイルと、磁石と、支持部材とを含む。コイルは、例えば、レンズユニット11のホルダ11bの外周部に設けられる。磁石は、例えば、撮像装置10の筐体10aに固定されコイルに対して所定の方向(例えばコイルの外側から内側に向かう方向)の磁界をかけるように配置される。指示部材は、例えば、レンズユニット11を光軸方向に移動可能に支持する板バネ等を含む。コイルを流れる電流値に応じて、レンズユニット11はコイルとともに光軸Oに沿って移動する。また、VCMは、上述のような磁石が作る磁場中をコイルが移動する構成の他、コイルがつくる磁場中を磁石が移動するように構成することもできる。アクチュエータ13は、VCMを用いたものに限られない。アクチュエータ13は、DC(direct current)モーター、ステッピングモーター、圧電モーター、および、超音波モーター等を含む種々の駆動方式を採用することができる。
【0015】
信号処理部14は、撮像素子12から入力された画像信号に対して、明るさ調整、ホワイトバランス調整、ガンマ補正、デモザイク処理、ノイズ低減、および、コントラスト調整等の種々の処理を行う。信号処理部14としては、ISP(Image Signal Processor)等の画像処理専用のプロセッサを用いることができる。
【0016】
制御部15は、撮像装置10が行う種々の処理を実行する。制御部15は、信号処理部14から入力された画像信号に対する処理を実行すること、および、画像信号を記憶部17に記憶させることができる。制御部15は、さらに、画像信号をディスプレイ等の他の装置に送信してよい。制御部15は、撮像装置10が実行する処理の全体を制御する。撮像装置10が他の装置の一部に組み込まれている場合、制御部15は他の装置全体を制御する制御装置と共用されてよい。
【0017】
制御部15は、1以上のプロセッサ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC:Application Specific Integrated Circuit)、デジタル信号処理装置(DSP:Digital Signal Processor)、プログラマブルロジックデバイス(PLD;Programmable Logic Device)、フィールドプログラマブルゲートアレイ(FPGA:Field-Programmable Gate Array)、または、これらのデバイスもしくは構成の任意の組み合わせ、または他の既知のデバイス若しくは構成の組み合わせを含んでよい。制御部15は、プロセッサに内蔵されるメモリまたはプロセッサとは独立したメモリを含んでよい。制御部15は、制御手順を規定したプログラムを実行することができる。制御部15は、非一時的なコンピュータ可読媒体に記録されたプログラムをメモリに読み込んで実装するように構成されてよい。
【0018】
制御部15は、撮像装置10のオートフォーカス機能の少なくとも一部を実行してよい。例えば、撮像装置10がコントラスト検出方式のオートフォーカスを行う場合、制御部15は、信号処理部14から撮像した画像に含まれる測距対象の被写体のコントラスト値を取得することができる。制御部15は、アクチュエータ13を制御してレンズ11aの位置を光軸O方向に調整し、コントラスト値が最大になるようにすることができる。本願においてレンズ11aの位置とは、撮像装置10内におけるレンズ11aの位置を意味する。レンズ11aの位置は、例えば、撮像素子12に対するレンズ11aの距離により表すことができる。一実施形態において、オートフォーカス機能は、レンズユニット11、撮像素子12、アクチュエータ13、信号処理部14および制御部15が共同して実現される。撮像装置10が採用するオートフォーカスの方式は、コントラスト検出方式に限られない。オートフォーカスの方式としては、位相差検出方式を採用することもできる。
【0019】
制御部15は、被写体20に焦点が合っている状態でアクチュエータ13に対して送信している制御信号に基づいて、レンズ11aの位置を推定することができる。例えば、アクチュエータ13がVCMを含む場合、制御部15は、VCMに印加される電流値を把握することができる。理想的な場合、VCMに印加される電流値と、レンズ11aの位置とは1対1に対応する。制御部15は、VCMに印加される電流値に基づいてレンズ11aの位置を推定することができる。制御部15は、推定したレンズ11aの位置に基づいて、被写体20までの距離(第1の距離)を推定することができる。
【0020】
レンズ11aの位置は、制御部15がアクチュエータ13に印加する制御信号が同じであっても、撮像装置10の姿勢、撮像装置10のレンズ11a周辺の温度、および、撮像装置10の個体ばらつきの少なくとも何れかにより異なる場合がある。制御部15は、オートフォーカス動作時のアクチュエータ13の制御信号から推定されるレンズ11aの推定位置に、撮像装置10の加速度、周辺の温度、および、個体ばらつきの少なくとも何れかを考慮して、被写体20までの距離(第1の距離)を推定してよい。
【0021】
制御部15は、レンズ11aの推定位置、撮像装置10の加速度、周辺の温度、および、個体ばらつき等を入力データとして、記憶部17に記憶された学習済モデルを用いて、機械学習により被写体20までの距離(第1の距離)を推定してよい。第1の距離の推定に機械学習を使用することは必須ではない。
【0022】
なお、本開示において、「被写体までの距離」は、撮像装置10から被写体20までの距離を意味する。より詳しくは、「被写体までの距離」は、撮像装置10の撮像素子12のレンズ11aまたは撮像素子12から被写体20までの距離を意味する。
【0023】
制御部15は、画像認識技術により撮像した画像に含まれる被写体20を認識することができる。被写体20の認識には、画像から被写体20を検出すること、および、被写体20の種別を認識することを含む。被写体20の認識方法は、物体の形状認識による方法、テンプレートマッチングによる方法、画像から特徴量を算出しマッチングに利用する方法等の種々の公知の方法が含まれる。被写体20の種別には、人、特定の動物、自転車、および、自動車等が含まれる。特定の動物には、犬、猫および魚等が含まれる。
【0024】
制御部15は、さらに、撮像した画像における被写体20の像(以下、「被写体像」と表記することがある)の大きさに基づいて、被写体20までの距離(第2の距離)を推定することができる。制御部15は、第2の距離に基づいて、レンズ11aの推定位置により推定した第1の距離の妥当性を判断することができる。制御部15は、第1の距離が妥当ではないと判断した場合、さらに他の方法で被写体20までの距離を推定してよい。
【0025】
制御部15が実行する処理については、以下において
図2のフローチャートを用いて、さらに説明される。
【0026】
記憶部17は、制御部15が実行するプログラム、制御部15が実行する処理に必要な情報、および、制御部15が実行した結果得られた情報を記憶するように構成される。記憶部17は、半導体記憶装置、磁気記憶装置、光記憶装置の少なくとも何れかを含んでよい。半導体記憶装置は、DRAM(Dynamic Random Access Memory)およびSRAM(Static Random Access Memory)等の揮発性メモリ、ならびに、ROM(Read Only Memory)およびフラシュメモリ等の不揮発性メモリを含む。磁気記憶装置は、磁気テープ、フロッピー(登録商標)ディスク、ハードディスク等およびこれらの駆動装置を含む。光記憶装置は、例えばCD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイ(Blu-ray(登録商標))等およびこれらの駆動装置を含む。
【0027】
記憶部17は、制御部15の制御により、撮像装置10により撮像される画像を記憶する。記憶部17は、制御部15が第1の距離を推定するために用いるデータを記憶してよい。例えば、アクチュエータ13がVCMを使用する場合、記憶部17は、アクチュエータ13に印加される電流とレンズ11aの推定位置との変換テーブル、または、アクチュエータ13に印加される電流からレンズ11aの推定位置を算出する計算式を記憶してよい。記憶部17は、さらに、レンズ11aの推定位置および他の入力データと、被写体20までの距離との変換テーブル、または、レンズ11aの推定位置および他の入力データから被写体20までの距離を算出する計算式を記憶してよい。記憶部17は、撮像装置10の固有の特性を数値化した個体調整値を記憶してよい。個体調整値には、各撮像装置10の特性のばらつきが反映される。例えば、記憶部17は、記憶部17が搭載された撮像装置10の近距離側の所定の距離、および、遠距離側の所定の距離または無限遠に位置する被写体に合焦するときのアクチュエータ13に印加される電流の電流値を、それぞれ個体調整値として記憶してよい。
【0028】
記憶部17は、制御部15が画像認識により被写体20を認識するために用いるテンプレートまたは特徴量等の情報を記憶してよい。記憶部17は、さらに、被写体20の種別ごとの標準的な大きさを記憶してよい。標準的な大きさは、長手方向の長さ、鉛直及び水平方向の長さ、および、特定の方向に投影したときの面積等の標準的大きさを含んでよい。標準的な大きさは、被写体20の全体の大きさに限られず、特徴的な部分についての標準的な大きさを含んでよい。例えば、標準的な大きさには、人体の頭部の上下及び左右方向の大きさ、および、人体の肩幅の大きさ等を含んでよい。
【0029】
制御部15が機械学習を用いて被写体20までの距離(第1の距離)を推定する場合、記憶部17は、少なくともレンズ11aの推定位置を入力データに含み、被写体20までの距離を出力データに含む機械学習の学習済みモデルを記憶してよい。機械学習の入力データには、さらに、撮像装置10の加速度、温度および個体調整値のデータが含まれてよい。
【0030】
加速度センサ18は、撮像装置10に加わる加速度の大きさおよび向きを検出する。加速度センサ18の検出する加速度は、大きさ及び方向を有する。加速度センサ18の検出する加速度には、重力加速度が含まれる。重力加速度の方向は、撮像装置10の向きに対応する。レンズユニット11の重量により、撮像装置10の向きは、レンズ11aの位置に影響を与えることがある。したがって、加速度センサ18から取得される加速度の情報は、被写体20までの距離を推定する際の入力データに含まれることが好ましい場合がある。
【0031】
温度センサ19は、撮像装置10内の温度を検出する。温度が上昇すると、アクチュエータ13の駆動力が変化することがある。例えば、VCMを使用する場合、コイルが熱を発生して膨張するとレンズ11aの位置がずれてしまうことがある。また、温度が上昇するとVCM内の磁束密度が低下するので、VCMによるレンズユニット11の駆動力が低下することがある。したがって、温度センサ19から取得される温度の情報は、被写体20までの距離を推定する際の入力データに含まれることが好ましい場合がある。
【0032】
(制御部の実行する処理)
以下に、撮像装置10の制御部15が実行する処理の一例を、
図2を参照して説明する。本明細書で開示される方法は、撮像装置10に含まれるプロセッサがプログラムに従って実行することができる。そのようなプログラムは、非一時的なコンピュータ可読媒体に記憶されることが可能である。非一時的なコンピュータ可読媒体は、磁気記憶媒体、光学記憶媒体、光磁気記憶媒体、半導体記憶媒体を含むがこれらに限られない。磁気記憶媒体は、磁気ディスク、ハードディスク、磁気テープを含む。光学記憶媒体は、CD(Compact Disc)、DVD、ブルーレイディスク(Blu-ray(登録商標) Disc)等の光ディスクを含む。半導体記憶媒体は、ROM(Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、フラッシュメモリを含む。
【0033】
まず、制御部15は、被写体20の撮像を行うとき、アクチュエータ13(オートフォーカス機構)を動作させ、被写体像を取得する(ステップS101)。このとき、アクチュエータ13は、レンズ11aを撮像装置10のピントが被写体20に合うように変位させる。
【0034】
制御部15は、レンズ11aの推定位置を含む入力データを取得する(ステップS102)。入力データは、レンズ11aの推定位置以外に、撮像装置10の加速度、レンズ11a周辺の温度および撮像装置10の個体調整値等を含んでよい。レンズ11aの推定位置は、加速度、温度および個体調整値等の影響を考慮しないレンズ11aの推定位置とすることができる。制御部15は、アクチュエータ13にオートフォーカスの動作をさせるとき、アクチュエータ13を駆動させる信号に基づいて、レンズ11aの位置を推定することができる。したがって、レンズ11aの推定位置を取得することは、アクチュエータ13の駆動信号を取得することと言い換えることができる。例えば、アクチュエータ13がVCMを含む場合、制御部15は、VCMのコイルに印加される電流値からレンズ11aの推定位置を決定することができる。
【0035】
制御部15は、取得した入力データを用いて被写体20までの距離(第1の距離)を推定する(ステップS103)。一実施形態において、制御部15は、記憶部17に記憶された変換テーブルまたは計算式を用いて、被写体20までの距離を算出することができる。また、他の実施形態において、制御部15は、記憶部17に記憶された学習済みモデルを用いて、機械学習により、入力データから被写体20までの距離を推定するように構成されてよい。
【0036】
制御部15は、上記ステップS101からステップS103の後に、または、ステップS101からステップS103に並行して、以下のステップS104からS106を実行する。制御部15は、撮像素子12から取得した画像に対して物体認識を行って、被写体20を認識し、被写体像の大きさを検出する(ステップS104)。被写体像の大きさは、撮像素子12が撮像した画像中に占める被写体像の面積、または、画像中の被写体像の所定の方向の長さ等により表される。所定の方向は、例えば、被写体像の長手方向とすることができる。
【0037】
制御部15は、ステップS104で認識した被写体20の種類を判別する(ステップS105)。制御部15は、被写体20の種類を判別するのにテンプレートマッチングまたは機械学習を用いてよい。制御部15は、人、動物または物の一部を被写体20として認識してよい。例えば、制御部15は、人体の上半身または頭部を被写体20として認識してよい。ステップS104とステップS105は、同時に並行して実行されてよい。すなわち、被写体像の大きさ及び被写体20の種類は、同時に判別されてよい。
【0038】
制御部15は、ステップS104で検出した被写体像の大きさに基づいて、被写体20までの距離(第2の距離)を推定する(ステップS106)。制御部15は、被写体20までの距離を推定するとき、ステップS105で判別した被写体20の種類を考慮することができる。
【0039】
例えば、
図3に示すように、魚である被写体20を撮像した場合を想定する。
図3において、下側部分は、被写体20を撮像装置10で撮像した場合の被写体20と撮像装置10との配置を示す上面図である。
図3の上側部分は、撮像された画像30を示す図である。距離を推定しようとする被写体20のおよその大きさがわかっている場合、画像30における被写体像31の大きさから被写体20までの距離を推定することができる。
【0040】
例えば、撮像装置10の水平画角φと、画像30の横幅aに占める被写体像31の横幅bの比率とから、撮像装置10からみた被写体20の水平方向の視野角θを算出することができる。
図3の場合、撮像装置10から被写体20までの距離yは、
y=x/2tan(θ/2)
により算出することができる。ここで、xは被写体20の水平方向(長手方向)の長さである。xの値は、被写体20である特定の種類の魚の標準的な長手方向の長さを使用することができる。
【0041】
上記例では、制御部15は、被写体像31の横幅bを用いて、被写体20までの距離を推定するものとした。制御部15は、被写体20の大きさとして、画像30中の被写体像31の縦方向の長さ、または、最も長い方向の長さである長手方向の長さを用いてよい。制御部15は、画像30に占める被写体像31の特定の方向の長さに代えて、画像30に占める被写体像31の面積を用いて被写体20までの距離を推定してよい。被写体像31の面積は、被写体像31を含む仮想的な長方形の枠32の面積としてよい。また、制御部15は、画像30に含まれる、被写体20である人または物の一部の画像を用いて、被写体20までの距離を推定してよい。例えば、制御部15は、画像30に含まれる人の頭部の大きさと記憶部17に記憶された人の頭部の標準的な大きさとから、被写体20までの距離を推定してよい。
【0042】
制御部15は、ステップS106で推定した被写体20までの距離(第2の距離)を用いて、ステップS103で推定した被写体20までの距離(第1の距離)の妥当性を評価する(ステップS107)。
【0043】
一実施形態において、制御部15は、第1の距離と前記第2の距離との比較に基づいて、第1の距離の妥当性を判断する。制御部15は、第1の距離が第2の距離に対して所定の範囲内にある場合に、第1の距離を妥当であると判断してよい。制御部15は、第1の距離が第2の距離に対して所定の範囲内にない場合に、第1の距離を妥当でないと判断してよい。所定の範囲は、第2の距離からの差、または、第2の距離に対する割合により定義されてよい。
【0044】
他の実施形態において、制御部15は、後述するように、第1の距離、第2の距離、および、他の関連するパラメータを入力データとする機械学習により、第1の距離の妥当性を判定してよい。制御部15は、第1の距離が妥当ではないと判断した場合(ステップS107:No)、後述するステップS108~S110を実行して、さらに被写体20までの距離を推定する。制御部15は、第1の距離が妥当であると判断した場合(ステップS107:Yes)、被写体20までの距離として第1の距離を決定する(ステップS111)。
【0045】
(機械学習による推定:学習フェーズ)
制御部15は、ステップS103において機械学習を用いて被写体20までの距離(第1の距離)を推定することができる。
図4は、機械学習の学習フェーズにおいて第1の機械学習モデルである学習済みモデルを生成するフローを説明する図である。以下の
図4-6において、角のない枠は処理を示す。四角い枠は各処理の間で受け渡されるデータまたはプログラムを示す。
図4のフローは、予め
図1に示す撮像装置10とは別のコンピュータによって実行される。
【0046】
まず、多数の撮像装置10について種々の条件で撮像を行い、撮像時のレンズ11aの推定位置、撮像時の温度、撮像時の加速度、撮像装置10に固有な個体調整値、および、撮像時の被写体20までの距離の情報が収集される。レンズ11aの推定位置は、温度、加速度および撮像装置10の個体差等を考慮しない、アクチュエータ13の駆動信号のみから推定されるレンズ11aの推定位置である。撮像装置10がVCMを用いてレンズ11aの位置の調整を行う場合、撮像時のレンズ11aの推定位置はVCMに印加される電流値に置き換えてよい。
【0047】
次に、収集された学習用データにより、レンズ推定位置、温度、加速度および個体調整値を入力(説明変数)とし、被写体20までの距離を出力(目的変数)とする機械学習を実行して、学習済みモデルが生成される。機械学習の手法としては、回帰分析、決定木、ニューラルネットワークおよびディープラーニング等の種々の公知の手法を用いてよい。一実施形態において、回帰分析手法、特に、Xgboostが用いられる。Xgboostを用いることにより推論の精度を高めることができる。生成された学習済みモデルは、各撮像装置10の記憶部17に記憶されてよい。
【0048】
(機械学習による推定:推論フェーズ)
次に、
図5を用いて、撮像装置10の被写体20までの距離を推定する際のデータの流れについて説明する。
図5の上段のフローに示されるように、一実施形態において、制御部15は、被写体20を撮像するとき、入力データとしてレンズ推定位置、温度、加速度および個体調整値を取得する。この処理は、
図2のステップS102に対応する。
【0049】
制御部15は、予め記憶部17に記憶された学習済みモデルに対して、レンズ推定値、温度、加速度および個体調整値を入力して、被写体20までの距離(第1の距離)の推論を行う。この処理は、
図2のステップS103に対応する。
【0050】
一方、制御部15は、
図5の下段のフローに示されるように、撮像素子12から画像30を取得し、画像30に含まれる被写体像31に対する物体認識を行って、被写体20の大きさおよび被写体20の種別を認識する。この処理は、
図2のステップS104およびS105に対応する。制御部15は、認識した被写体20の大きさに基づいて、被写体20までの距離(第2の距離)を推定する。被写体20までの距離の推定には、被写体20の種別が考慮されてよい。この処理は、
図2のステップS106に対応する。
【0051】
制御部15は、画像30から推定した被写体20までの距離(第2の距離)を用いて、機械学習により推定した被写体20までの距離(第1の距離)の妥当性を判定する。この処理は、
図2のステップS107に対応する。一実施形態において、妥当性の判定には、
図5の上段のフローで入力データとして取得したレンズ推定位置、温度、加速度および個体調整値の少なくとも一つ以上が考慮されてよい。
【0052】
一実施形態において、妥当性の判定においても、機械学習が用いられてよい。機械学習は、第1の距離および第2の距離を含むデータを入力とし、判定結果の妥当性有りおよび妥当性無しに対応する2値を出力とする学習用データを用いて行うことができる。入力データは、さらに、レンズ推定位置、温度、加速度および個体調整値の少なくとも一つ以上を含んでよい。妥当性の判定の学習には、ロジスティック回帰モデルを用いることができる。この場合、記憶部17は、予め他のコンピュータ等で生成された妥当性の判定のための第2の機械学習モデルを記憶してよい。制御部15は、第2の機械学習モデルを用いて、妥当性判定の結果を確率として出力してよい。制御部15は、妥当性が所定の確率以上のとき、第1の距離を妥当であると判定してよい。
【0053】
(第1の距離が妥当でない場合の処理)
図2のステップS108に戻り、ステップS107で第1の距離が妥当ではないと判定された場合の処理について説明する。ステップS108~S110の処理におけるデータのフローが
図6に示される。
【0054】
まず、制御部15は、複数回オートフォーカス動作をさせる(ステップS108)。すなわち、制御部15は、アクチュエータ13を駆動して複数回被写体20の像を合焦させ、それぞれの被写体20の合焦により複数のレンズ11aの推定位置の情報を含む入力データを取得する。複数回は、例えば3回とすることができるが、これに限られない。入力データは、さらに、温度、加速度、および、個体調整値の情報を含んでよい。
【0055】
次に、制御部15は、取得した複数の入力データのそれぞれに対して統計処理を行う(ステップS109)。例えば、制御部15は、入力データに含まれる各データの平均値を算出する。統計処理は、平均値を算出する処理に限られない。制御部15は、入力データに含まれる各データの中央値を算出してもよい。あるいは、制御部15は、入力データに含まれる各データの最大値と最小値を削除して、残りのデータの平均値を算出してよい。
【0056】
制御部15は、複数の入力データから統計処理された入力データを、
図4に示した予め生成された学習済みモデルに対する入力データとして用いて、被写体20までの距離を推定する(ステップS110)。したがって、ステップS110で推定された被写体20までの距離は、複数回のオートフォーカスの動作の結果得られたデータを反映したものである。ステップS111において、ステップS110で推定された距離が、被写体20までの距離として決定される。
【0057】
(測定例)
図7は、Xgboostにより生成した学習済みモデルに対して撮像装置10から取得した入力データを入力して、被写体20までの距離の推定を行った結果であって、妥当性の評価を行う前の被写体20までの距離の推定値を示す図である。すなわち、
図7の推定距離は、ステップS106において推定された被写体20までの距離(第1の距離)である。実際の距離が長くなるほど、推論の結果取得される推定距離のばらつきが大きくなる。例えば、実際の距離が80cmの場合、推定距離は約65cmから約95cmの間にばらついている。また、この図によれば、第1の距離が80cmと推定された場合でも、実際の距離は60cmから100cmまでの可能性があることを示す。
【0058】
図8は、第1の距離が妥当でないと判断されたときに、精度を向上させるためのステッップS108からS110の処理を実行した場合に得られる被写体20までの距離の分布を示す図である。
図8の横軸は、実際の距離である。縦軸は、被写体20までの推定距離である。
図8の推定距離は、ステップS111において決定された被写体20までの距離である。この図によれば、
図7の場合と比べ、実際の距離に対する推定距離のばらつきが顕著に小さくなる。
図8からわかるように、決定された推定距離は実際の距離に精度よく対応している。
【0059】
以上説明したように、本開示の撮像装置10は、被写体像31の大きさに基づいて推定した被写体20までの距離(第1の距離)の妥当性を判定することができる。これによって、オートフォーカス機構を用いた被写体20までの距離測定の信頼性を向上させることができる。また、被写体20までの推定距離が妥当でないと判断した場合、制御部15がオートフォーカス機構に複数回被写体20の像を合焦させ、それぞれの合焦により得られるレンズ11aの推定位置を統計処理して、被写体20までの距離を推定するようにした。これによって、さらに被写体20までの距離の推定精度を向上させることができる。
【0060】
さらに、本開示の撮像装置10によれば、温度、加速度および個体調整値などのパラメータを入力データとする機械学習により被写体20までの距離を推定するようにしたので、これらのパラメータの変化が距離推定に与える影響を反映することができる。なお、レンズ11aの推定位置以外の入力データは、温度、加速度および個体調整値に限られない。入力データとしては、被写体20までの距離の推定に影響を与えると推定される任意のパラメータが使用されうる。
【0061】
また、本開示の実施形態では、学習用データに対してAIによる回帰分析手法であるXgboostを使用して学習済みモデルを生成するようにした。Xgboostは、データを細分化し傾向を分析するため高い推論の精度を得ることができる。したがって、被写体20までの距離の推定精度をさらに向上させることができる。
【0062】
本開示に係る実施形態について、諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形又は修正を行うことが容易であることに注意されたい。従って、これらの変形又は修正は本開示の範囲に含まれることに留意されたい。例えば、各構成部または各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の構成部またはステップなどを1つに組み合わせたり、あるいは分割したりすることが可能である。本開示に係る実施形態は、装置の各構成部が実行するステップを含む方法としても実現し得るものである。本開示に係る実施形態は装置が備えるプロセッサにより実行される方法、プログラム、又はプログラムを記録した記憶媒体としても実現し得るものである。本開示の範囲にはこれらも包含されるものと理解されたい。
【符号の説明】
【0063】
10 撮像装置
11 レンズユニット
12 撮像素子(撮像部)
13 アクチュエータ(オートフォーカス機構)
14 信号処理部
15 制御部
17 記憶部
18 加速度センサ
19 温度センサ
20 被写体
30 画像
31 被写体像
32 枠