(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-14
(45)【発行日】2024-06-24
(54)【発明の名称】画像処理装置、画像処理方法およびプログラム
(51)【国際特許分類】
H04N 23/60 20230101AFI20240617BHJP
G02B 7/28 20210101ALI20240617BHJP
G02B 7/34 20210101ALI20240617BHJP
【FI】
H04N23/60
G02B7/28 Z
G02B7/34
(21)【出願番号】P 2020124031
(22)【出願日】2020-07-20
【審査請求日】2023-07-19
(31)【優先権主張番号】P 2019140818
(32)【優先日】2019-07-31
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】佐々木 貴志
(72)【発明者】
【氏名】森 重樹
【審査官】▲徳▼田 賢二
(56)【参考文献】
【文献】特開2019-078582(JP,A)
【文献】米国特許出願公開第2015/0138383(US,A1)
【文献】特表2017-520794(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/60
G02B 7/28
G02B 7/34
(57)【特許請求の範囲】
【請求項1】
被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力手段と
前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定手段と
前記距離情報分布と前記推定した奥行方向の関係から
前記光学系と前記撮像素子の設計位置からの乖離度合を示す評価値を決定する決定手段と、を有することを特徴とする画像処理装置。
【請求項2】
前記距離情報分布とは、被写体のデフォーカス量の分布をF値と許容錯乱円径で正規化した分布に関連する情報であることを特徴とする請求項
1に記載の画像処理装置。
【請求項3】
前記距離情報分布とは、被写体の視差量の分布に関連する情報か、被写体のデフォーカス量の分布に関連する情報か、被写体のデフォーカス量の分布をF値と許容錯乱円径で正規化した分布に関連する情報か、撮影位置から被写体までの実距離の分布に関連する情報のいずれかであることを特徴とする請求項1
または2に記載の画像処理装置。
【請求項4】
前記被写体の視差量の分布に関連する情報は、たがいに視差のついた一対の画像から得られることを特徴とする請求項
2または3に記載の画像処理装置。
【請求項5】
前記撮影条件は、前記画像を撮影したときの装置の姿勢情報、または前記画像における消失点、または前記画像におけるテクスチャの密度の変化、または前記画像に形状が既知の構造物が写っているか否かの判定結果のうち、少なくとも1つであることを特徴とする請求項1乃至
4のいずれか1項に記載の画像処理装置。
【請求項6】
前記奥行方向の関係は
前記距離情報分布におけるデフォーカス量がゼロとなる直線と、前記奥行方向を推定する手段が算出した合焦領域を示す直線が成す角度であることを特徴とする請求項1乃至
4のいずれか1項に記載の画像処理装置。
【請求項7】
前記奥行方向の関係は
前記距離情報分布におけるデフォーカス量の勾配のベクトルと、前記奥行方向を推定する手段が算出した前記画像におけ
る消失点に向かう方向のベクトル、もしくは前記画像におけるテクスチャの密度の変化の方向のベクトルとの差であることを特徴とする請求項1または2に記載の画像処理装置。
【請求項8】
前記画像における被写体の奥行き方向の乖離度合とは
、前記距離情報分布における複数の位置におけるデフォーカス量の差分であることを特徴とする請求項2または3に記載の画像処理装置
【請求項9】
前記評価値を報知する報知手段を有することを特徴とする請求項1乃至
7のいずれか1項に記載の画像処理装置。
【請求項10】
前記決定手段は、入力される画像が地面、水面、および地面あるいは水面に対して垂直方向に敷設された構造物を含む一般物体を含むと判定した場合に、前記乖離度合を示す評価値を決定することを特徴とする請求項1乃至
9のいずれか1項に記載の画像処理装置。
【請求項11】
前記距離情報分布の統計は、前記距離情報分布のヒストグラムであることを特徴とする請求項
10に記載の画像処理装置。
【請求項12】
前記乖離度合を示す評価値に応じて、IS機構を制御する、もしくは前記画像に対し画像処理を施す、もしくは画像処理装置を回転させることで乖離度合が小さくなるように補正することを特徴とする請求項1乃至
11のいずれか1項に記載の画像処理装置。
【請求項13】
前記乖離度合を示す評価値と、前記評価値を算出した画像を取得した前記撮像素子と前記光学系の情報を関連付けて、外部装置に情報を出力することを特徴とする請求項1乃至
12のいずれか1項に記載の画像処理装置。
【請求項14】
被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力ステップと
前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定ステップと
前記距離情報分布と前記推定した奥行方向の関係から
前記光学系と前記撮像素子の設計位置からの乖離度合を示す評価値を決定する決定ステップと、を有することを特徴とする画像処理方法。
【請求項15】
請求項1乃至
13のいずれか1項に記載の画像処理装置の制御の各手段の機能を実現するための手順が記述されたコンピュータで実行可能なプログラム。
【請求項16】
コンピュータに、請求項1乃至
13のいずれか1項に記載の画像処理装置の各手段の機能を実行させるためのプログラムが記憶されたコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置に関し、特に光学系と撮像素子の経年変化に関連する情報や、画像処理装置の姿勢の情報に関するものである。
【背景技術】
【0002】
従来から一対のステレオカメラから取得した距離情報を参照して、経年変化などによるステレオカメラの相対位置関係の変化を診断し、ステレオカメラのキャリブレーションを支援する技術が知られている。例えば、特許文献1ではロボットの頭部に搭載されたステレオカメラにおいて、診断用のテクスチャが設けられた略平面上の被写体を所定の位置関係で撮影し、得られた視差画像から距離情報の算出を経て平面度を求める。そして、求めた平面度と所定の基準量を比較することでキャリブレーションの要否を判断する方法が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ロボットに搭載されたものではない一般のユーザーが使用するデジタルカメラにおいても経年変化などによって、光学系であるレンズやCMOSなどの撮像素子が生産時の取り付け位置(設計位置)から変化することがある。レンズや撮像素子が傾くと実際の距離と被写界深度の関係がずれてしまいユーザーが想定していない画像が取得されてしまう。そのため一般ユーザーが使用するデジタルカメラにおいても、レンズや撮像素子のキャリブレーションの要否を判断する方法とその際の対応が求められている。
【0005】
また、デジタルカメラによる撮影において、正対して撮影すべき被写体を撮影する際に、レンズや撮像素子のキャリブレーションが出来ていたとしても、撮像装置が傾いていたり、適切な距離で撮影できていなかったりすると、良好な撮影画像が得られない。特に奥行方向の傾きや距離誤差は撮影画像の(対象被写体の)ボケにつながってしまう。
【0006】
そこで、本発明の目的は、被写体までの距離に対応する距離情報分布に基づいて、レンズあるいは撮像素子の傾き、あるいは撮像装置の位置や姿勢の情報の少なくとも1つの情報を報知することを可能にした画像処理装置を提供することである。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明の画像処理装置は、被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力手段と、前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定手段と、前記距離情報分布と前記推定した奥行方向の関係から、前記光学系と前記撮像素子の設計位置からの乖離度合を示す評価値を決定する決定手段と、を有することを特徴とする。
【0008】
また、本発明の画像処理装置は、被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力手段と、前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定手段と、前記距離情報分布と前記推定した奥行方向の関係から、前記画像における被写体の奥行き方向の乖離度合を示す評価値を決定する決定手段と、を有することを特徴とする。
【0009】
また、本発明の画像処理装置は、撮像手段により撮像される画像に関する、少なくともF値と、像ずれ量をデフォーカス量に変換する変換係数とを含む撮影条件を取得する撮影条件取得手段と、前記撮像手段により撮像される画像の各領域に対応する距離情報の分布である距離情報分布を取得する距離情報取得手段と、前記距離情報分布を前記F値および変換係数に基づいて正規化する画像処理手段と、を有することを特徴とする。
【0010】
また、本発明の画像処理方法は、被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力ステップと、前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定ステップと、前記距離情報分布と前記推定した奥行方向の関係から、前記光学系と前記撮像素子の設計位置からの乖離度合を示す評価値を決定する決定ステップと、を有することを特徴とする。
【0011】
また、本発明の画像処理方法は、被写界像を撮像手段の撮像素子上に結像する光学系を用いて撮像した画像から算出された距離情報分布を入力する入力ステップと、前記撮像手段の撮影条件から前記画像における奥行方向を推定する推定ステップと、前記距離情報分布と前記推定した奥行方向の関係から前記画像における被写体の奥行き方向の乖離度合を示す評価値を決定する決定ステップと、を有することを特徴とする。
【0012】
また、本発明の画像処理方法は、撮像手段により撮像される画像に関する、少なくともF値と、像ずれ量をデフォーカス量に変換する変換係数とを含む撮影条件を取得する撮影条件取得ステップと、前記撮像手段により撮像される画像の各領域に対応する距離情報の分布である距離情報分布を取得する距離情報取得ステップと、前記距離情報分布を前記F値および変換係数に基づいて正規化する画像処理ステップと、を有することを特徴とする。
【発明の効果】
【0013】
本発明によればレンズあるいは撮像素子の傾き、あるいは撮像装置の位置や姿勢の情報の少なくとも1つの情報を報知することを可能にした。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態1に係る画像処理装置の機能構成例を示したブロック図。
【
図2】本発明の実施形態1に係るデジタルカメラの機能構成例を示したブロック図。
【
図3】本発明の実施形態1に係るコンピュータの機能構成例を示したブロック図。
【
図4】本発明の実施形態1に係る撮像部の構成例を説明する図。
【
図5】本発明の実施形態1に係る画像処理装置の動作を説明するフローチャート。
【
図6】本発明の実施形態1に係る静止画記録用の画像を説明する図。
【
図7】本発明の実施形態1に係るデフォーカスマップを説明する図。
【
図8】本発明の実施形態1に係る画像処理部306の機能構成例を示すブロック図。
【
図9】本発明の実施形態1に係るデフォーカス量がゼロとなる面を説明する図。
【
図10】本発明の実施形態1に係るピント面が正常であるときのデフォーカスマップを説明する図。
【
図11】本発明の実施形態1に係る光学系と撮像素子の設計位置からずれた場合に起こる現象を説明する図。
【
図12】本発明の実施形態1に係るピント面が傾いたときのデフォーカスマップを説明する図。
【
図13】本発明の実施形態1に係る乖離度合を示す評価値を説明する図。
【
図14】本発明の実施形態1に係るユーザーへの通知を説明する図。
【
図15】本発明の実施形態1に係る消失点と奥行方向の推定結果を説明する図。
【
図16】本発明の実施形態1に係るデフォーカスマップに対するヒストグラムを説明する図。
【
図17】本発明の実施形態1に係るポートレートシーンにおける静止画記録用の画像、デフォーカスマップ、およびデフォーカスマップに対するヒストグラムを説明する図。
【
図18】本発明の実施形態1に係る光学系の周辺減光特性を説明する図。
【
図19A】本発明の実施形態2に係るカメラ装置1900およびレンズ装置1913のハードウェア構成例を示すブロック図。
【
図19B】本発明の実施形態2に係るカメラ装置1900の機能構成例を示すブロック図。
【
図20】本発明の実施形態2に係る雲台装置2000のハードウェア構成例を示すブロック図。
【
図21】本発明の実施形態2に係る社会インフラ構造物を撮像する撮像方法を説明する図。
【
図22】本発明の実施形態2に係る撮像システムの動作のフローチャート。
【
図23】本発明の実施形態2に係るスイッチ2007を説明する図。
【
図24】本発明の実施形態2に係るカメラ装置1900の回転制御に係る図。
【
図25】本発明の実施形態2に係るテーブル2515の構成例を示す図。
【発明を実施するための形態】
【0015】
[第1実施形態]
以下、本発明の第1実施形態による画像処理装置、画像処理方法、および画像処理プログラムについて、図面を参照して詳細に説明する。
図1に示すような、撮像装置の一例としてのデジタルカメラ101と、画像処理装置の一例としてのコンピュータ102とが通信回路103を介して通信可能に接続された画像処理装置100に本発明を適用した例を説明する。しかし、以下においてコンピュータ102が行う処理をデジタルカメラ101で実行してもよい。また、デジタルカメラ101は撮影機能を備えた任意の電子機器であってよく、またコンピュータ102も以下に説明する処理が可能な任意の電子機器や、サーバ装置におけるコンピュータであってもよい。また、モバイルタイプのコンピュータであっても、デスクトップタイプのコンピュータであっても構わない。
【0016】
図2は、本発明の実施形態に係るデジタルカメラ101の機能構成例を示すブロック図である。システム制御部201は、例えばCPUであり、デジタルカメラ101が備える各ブロックの動作プログラムをROM202より読み出し、RAM203に展開して実行することによりデジタルカメラ101が備える各ブロックの動作を制御する。ROM202は、書き換え可能な不揮発性メモリであり、デジタルカメラ101が備える各ブロックの動作プログラムに加え、各ブロックの動作に必要なパラメータ等を記憶する。RAM203は、書き換え可能な揮発性メモリであり、デジタルカメラ101が備える各ブロックの動作において出力されたデータの一時的な記憶領域として用いられる。
【0017】
光学系204は、被写界像を撮像部205に結像する。撮像部205は、例えばCCDやCMOSセンサ等の撮像素子であり、光学系204により撮像部205の撮像素子上に結像された光学像を光電変換し、得られたアナログ画像信号をA/D変換部206に出力する。また、光学系204と撮像部205には手振れの影響を低減するIS機構が搭載されている。A/D変換部206は、入力されたアナログ画像信号にA/D変換処理を適用し、得られたデジタル画像データをRAM203に出力して記憶させる。
【0018】
画像処理部207は、RAM203に記憶されている画像データに対して、ホワイトバランス調整、色補間、縮小/拡大、フィルタリングなど、様々な画像処理を適用する。
【0019】
記録媒体208は着脱可能なメモリカード等であり、RAM203に記憶されている画像処理部207で処理された画像やA/D変換部206でA/D変換された画像などが、記録画像として記録される。
【0020】
通信部209は有線または無線により、記録媒体208に記録されている画像データファイルなどを外部装置に送信する。
【0021】
表示部210は、撮影で得られた画像データや、記録媒体208から読み出した画像データなどを表示したり、各種のメニュー画面を表示したりする。ライブビュー画像を表示して電子ビューファインダーとして機能することもある。
【0022】
操作部211はユーザーがデジタルカメラ101に各種の指示や設定などを入力するための入力デバイス群であり、シャッターボタンやメニューボタン、方向キー、決定キーなど一般的なデジタルカメラが有するキーやボタンを備えている。また、表示部210がタッチディスプレイの場合、操作部211を兼ねる。なお、操作部211はマイクと音声コマンド認識部の組み合わせなどのような、物理的な操作を必要としない構成であってもよい。
【0023】
検出部212はジャイロやセンサを含み、デジタルカメラ101の角速度情報、姿勢情報などを取得する。なお、姿勢情報は水平方向に対するデジタルカメラ101の傾きなどの情報を含む。
【0024】
図3は、本実施形態に係るコンピュータ102の機能構成例を示すブロック図である。システム制御部301は、例えばCPUであり、プログラムをROM302より読み出し、RAM303に展開して実行することによりコンピュータ102が備える各ブロックの動作を制御する。ROM302は、書き換え可能な不揮発性メモリであり、システム制御部301が実行するプログラムに加え、各ブロックの制御に必要なパラメータ等を記憶する。RAM303は、書き換え可能な揮発性メモリであり、コンピュータ102が備える各ブロックが出力されたデータの一時的な記憶領域として用いられる。
【0025】
通信部304は、有線または無線通信により、デジタルカメラ101などの外部装置と通信する。記録装置305は例えばハードディスクであり、通信部304がデジタルカメラ101から受信した画像データなどを保存する。
【0026】
画像処理部306は例えば記録装置305からRAM303に展開された画像データに対して後述するデフォーカス量の算出や、画像から奥行方向を推定や、光学系と撮像素子の設計位置からの乖離度合に関連する情報の算出などを行う。
【0027】
表示部307は、コンピュータ102で稼動するOSやアプリケーションが提供するGUIや各種のデータの表示に用いられる。表示部307はコンピュータ102が備えていても、外部装置として接続されていてもよい。
【0028】
操作部308はユーザーがコンピュータ102に各種の指示や設定などを入力するための入力デバイス群であり、一般的にはキーボード、マウス、トラックパッドなどが含まれる。また、表示部307がタッチディスプレイの場合、操作部308を兼ねる。なお、操作部308はマイクと音声コマンド認識部の組み合わせなどのような、物理的な操作を必要としない構成であってもよい。
【0029】
図4(a)は、
図2の撮像部205の画素の配列構成を示している。
図4(a)に示すように、撮像部205では、複数の画素400が二次元的に規則的に配列されている。具体的には、複数の画素400は、例えば二次元格子状に配列されている。なお、画素400の配列構成は、格子状の配列構成に限定されるものではなく、他の配列構成を採用することもできる。
【0030】
図4(b)は、
図4(a)に示す画素400を拡大して示すものである。
図4(b)に示すように、各画素400は、マイクロレンズ401と、一対の光電変換部402A、403B(以下、それぞれ瞳分割画素402A、403Bと呼ぶ。)を有している。瞳分割画素402A、403Bは、互いに同一の平面形状を有しており、それぞれy軸方向を長手方向とする長方形状の平面形状を有している。各画素400において、瞳分割画素402A、403Bは、マイクロレンズ401のy軸方向に沿った垂直二等分線を対称軸として、線対称に配置されている。なお、瞳分割画素402A、403Bの平面形状は、これに限定されるものではなく、他の平面形状を採ることができる。また、瞳分割画素402A、403Bの配置の態様も、これに限定されるものではなく、他の配置の態様を採ることができる。
【0031】
本実施形態においては、二次元的に規則的に配列された瞳分割画素402A、403Bから、視差画像としてそれぞれA像、B像が出力されるものとする。また、A像とB像を加算したA+B像が記録静止画として記録媒体208に記録される。撮像部205を
図4(a)及び
図2(b)に示すように構成することで、光学系204の瞳の異なる領域を通過する一対の光束を一対の光学像として結像させて、それらをA像、B像として出力することができる。なお、A像、B像の取得方法は、上記に限られず、種々の方法を採ることができる。例えば、空間的に間隔をあけて設置した複数台のカメラ等の撮像装置により取得された互いに視差のついた画像をA像、B像としてもよい。また、複数の光学系と撮像部とを有する1台のカメラ等の撮像装置により取得された視差画像をそれぞれA像、B像としてもよい。
【0032】
以下、画像処理装置100の動作について説明する。デジタルカメラ101の操作部211を通じてシャッターボタンの全押しなどの撮影指示が入力された場合、画像処理装置100は
図5(a)と
図5(b)および
図5(c)に示す処理を実行する。なお、
図5(a)と
図5(c)の処理はデジタルカメラ101で実行され、
図5(b)の処理はコンピュータ102で実行されるものとする。
【0033】
まずステップS500で、システム制御部201は検出部212からシャッターボタンが押された際のカメラの状態を検出する。ここでは水平方向に対するデジタルカメラ101の傾きと、上下方向の向きをカメラの状態として検出するものとする。
【0034】
続くステップS501で、システム制御部201は撮影準備状態において決定した露出条件に従って撮影処理を行い、撮像部205から一対の視差画像であるA像及びB像を取得する。なお、予め記録媒体208に記録しておいたA像及びB像を読み出して取得する構成としてもよい。また、A像とB像を加算して静止画記録用の画像として記録媒体208に記録してもよい。本実施の形態における静止画記録用の画像を
図6に示す。
図6は撮影したA像とB像を加算した画像である。また、600はオートフォーカス枠である。
【0035】
続くステップS502で、システム制御部201は画像処理部207を制御し、ステップS501で取得した視差画像から、撮影範囲における空間的な(2次元的な)デフォーカス量分布を表すデータを出力する。以降の説明では空間的なデフォーカス量分布を表すデータをデフォーカスマップと呼ぶ。デフォーカス量は光学系204が合焦している距離からのピントのずれ量であるため、距離情報の一種である。デフォーカス量を取得する手法については、例えば特開2008-15754に開示されている手法のように視差画像間の位相差を算出する方法を用いればよい。具体的には視差画像のずれ量とデフォーカス量の関係は次の式で表される。
DEF=KX・PY・x ・・・(1)
【0036】
式(1)において、DEFはデフォーカス量、PYは検出ピッチ(同一種類の画素の配置ピッチ)、KXは一対の瞳を通過する光束の重心の開き角の大きさによって決まる変換係数、xは視差画像のずれ量である。
【0037】
また本発明はこれに限定されるものではなく、距離情報分布として視差画像のずれ量であるシフト量の分布を取得するようにしても良い。
【0038】
また、距離情報分布は、視差画像のずれ量に検出ピッチPYをかけてマイクロメートルなどの長さの単位で表した情報でも良い。
【0039】
また本発明はこれに限定されるものではなく、距離情報分布としてデフォーカス量から、さらにフォーカスレンズ位置を参照して実距離の分布に換算しても良い。
【0040】
また本発明はこれに限定されるものではなく、距離情報分布としてデフォーカス量をFδ(Fは絞り値、δは許容錯乱円径)で正規化した値の分布を取得するようにしても良い。この分布はδに対するボケ量を表現している。ここで絞り値Fは撮影絞り値を分布全体に対して適用してもよいが、より精度の高いボケ量の分布を得るために、撮影条件における光学系204の周辺減光特性を加味した実効的な絞り値(実効絞り値)を適用するのがよい。
図18は周辺減光特性V(h)の一例を示すグラフであり、横軸に光学中心からの距離(像高)、縦軸に各像高における、像高中心の光量を1として規格化した光量を表している。レンズ枠や絞り枠によってケラレが発生し、
図18では像高が高くなる(撮影範囲における端に近づく)につれて光量の低下が発生している。この周辺減光特性はレンズごとに固有の性質がある。ここで像高hにおける実効絞り値F´は周辺減光特性を参照し、次の式で表現される。
F´=F/√V(h)・・・(2)
【0041】
図6の画像に対するデフォーカスマップを
図7に示す。デフォーカスマップ700は、距離が近いほど白く(画素値が高くなる)なる連続値のグレースケールで表現されている。また、701はオートフォーカス枠で、合焦領域(デフォーカス量がゼロ)は灰色で表現されている。また、702は合焦領域を結んだ直線である。
【0042】
次いでステップS503で、システム制御部201は、画像データと中心とする以下の情報を通信部209を通じてコンピュータ102に送信する。
・静止画記録用の画像
・デフォーカスマップ
・カメラの状態検出情報(カメラの傾きを検出した情報)
・オートフォーカスの枠位置情報
・カメラ本体の識別番号(ID)・装着しているレンズの識別番号(ID)
・F値、ISO感度などの撮影情報
【0043】
上記情報を関連付けて記録もしくは送信する。例えばJPEGフォーマットであればExif情報に記録、RAWデータ形式であれば画像付加情報として、1つのファイルに記録してもよい。または関連する複数のデータをまとめて格納することができるコンテナファイルとして画像と共に必要な情報を記録もしくは送信すればよい。もしくは、まとめずに別個のファイルとして記録もしくは送信してもよい。例えば同じファイル名としたり、同じフォルダに含めたり、送信時に各データを順に連続的に送信する(受信側がデータの順番、種類などから関連づいた各情報だと認識できる)など、関連するデータファイルであることが把握できるように処理する必要がある。記録や送信に係るファイル構造や送信プロトコルに応じた送信制御などは本発明と直接関連せず、また公知の方法を用いることができるため、詳細については説明を省略する。なお、上記情報を記録媒体208に記録したのちに通信部209を通じてコンピュータ102に送信してもよいし、記録媒体208をデジタルカメラ101から取り外してコンピュータ102で画像データを読み取ってもよい。また、デフォーカスマップ(記録情報分布)はカメラ側で生成せず、対となる視差画像を上記関連情報ともに記録しておくことでコンピュータ102で生成させてもよい。
【0044】
本実施形態ではステップS504からステップS508の処理はコンピュータ102が実行する。ステップS504からステップS508の処理をデジタルカメラ101とは異なる装置で行うことで、ユーザーは特別なカメラ操作を行うことなく光学系と撮像素子の設計位置からの乖離度合に関連する情報を知ることができる。また、本実施例ではデジタルカメラ101においてデフォーカスマップを生成したが、コンピュータ102に視差画像を送信し、コンピュータ102においてデフォーカスマップを生成する構成としてもよい。連続撮影中でデジタルカメラ101での演算負荷が高い場合に、デフォーカスマップを生成する演算をコンピュータ102に分散することで、光学系と撮像素子の設計位置からの乖離度合に関連する情報を算出するまでにかかる時間を削減することができる。また、このとき使用しているレンズと撮影条件によって一意に決まる変換係数KXや実効絞り値F´の情報を合わせて送信することで、コンピュータ102側でも種々の距離情報分布を生成することができる。また、変換係数KXや実効絞り値F´の情報を予めコンピュータ102に記憶させておき、受信したレンズの識別(ID)番号と撮影情報を基に記憶している情報から読み出す方式でも構わない。
【0045】
図8は本実施形態のコンピュータ102が有する画像処理部306の機能構成例を模式的に示すブロック図である。以下、
図5(b)をさらに参照しながら、画像処理部306の動作について説明する。なお、画像処理部306の動作は、システム制御部301の制御に従って実現される。
【0046】
最初にシステム制御部301がステップS503で送信された情報を受信し、読み出したデータをRAM303に展開する(ステップS504)。
【0047】
次いで、ステップS505において、奥行方向推定部800はRAM303に記録されている視差画像取得時のカメラの状態検出情報803(撮影条件)から、画像の奥行方向を推定する。本実施例ではデフォーカス量がゼロとなる面を参考に奥行方向を推定する。ここでデフォーカス量がゼロとなる面について、
図9を用いて説明する。
【0048】
図9は光学系と撮像素子が設計位置からずれていない状態のデジタルカメラ101を俯瞰した状態で、なおかつ水平方向(
図9におけるx軸方向)に対するデジタルカメラ101の傾きがゼロの状態で、地面にある平面被写体901を撮影する様子を表している。そして、光軸900と被写体901が交わる点にオートフォーカス枠903があるとすると、合焦領域をつないだ面(以降、ピント面と呼ぶ)は撮像部205に並行で、光軸900と垂直に交わる面902になる。さらに被写体901を撮影した画像におけるピント面902はオートフォーカス枠903を通過する直線904で表すことができる。被写体901を撮影した画像におけるデフォーカスマップを
図10の1000に、オートフォーカス枠を1001に、ピント面を1002に示す。
図10より光学系と撮像素子が設計位置からずれていない状態のカメラが俯瞰した状態で、かつ水平方向に対する傾きがゼロの状態で撮影した場合、ピント面1002は画像に対して水平な直線となる。更に撮影時のカメラの上下方向の向きも既知であるので、ピント面1002よりも上部が遠方、下部が手前となる。つまり撮影画像の下部から上部の方向に奥行方向が変化していると推定できる。奥行方向推定部800は奥行の推定情報804としてピント面1002を表す直線の式を出力する。
【0049】
乖離度算出部801は、デフォーカスマップ802と、奥行方向推定部800による奥行の推定情報804(ピント面を表す直線の式)から、視差画像を撮影した光学系と撮像素子の設計位置からの乖離度合に関連する情報805を算出する(ステップS506)。
【0050】
ここで、光学系と撮像素子が設計位置からずれた場合に起こる現象を
図11を用いて説明する。
図11(a)は光学系204と撮像部205が設計位置の状態を表している。その状態で撮影を行うとピント面1100は撮像部205に対して並行になる。一方、
図11(b)は光学系204が設計位置からずれて偏心が発生した状態を表している。この場合、シャインプルーフの法則により、光学系204と撮像部205が成す角θに応じてピント面1101も傾く。
図11(b)の状態で、カメラが俯瞰、かつ水平方向に対するカメラの傾きがゼロの状態で、地面にある平面被写体を撮影した画像におけるデフォーカスマップを
図12の1200に、オートフォーカス枠を1201に、ピント面を1202に示す。
図12より奥行が画面右下から左上に向かって変化していることがわかる。従って光学系と撮像素子が設計位置からずれていない状態における奥行の変化方向(
図10)から乖離が発生する。そのため、ユーザーの距離感覚とピント面の関係がずれてしまい、ユーザーが想定していない撮影結果となってしまう。
【0051】
乖離度算出部801では、デフォーカスマップ802におけるピント面1202を表す直線の式と、奥行方向推定部800が推定したピント面を表す直線1002とが成す角θ_diffを算出し、乖離度合を示す評価値805としてRAM303に記憶させる。
図13にθ_diffを示す。θ_diffが大きいほど、光学系と撮像素子が設計位置からの乖離が大きい(キャリブレーションを行う必要がある)ということになる。なお、画像撮影時に水平方向に対するカメラの傾きがある場合は、その傾き角度分をθ_diffから減算し補正すればよく、水平方向に対するカメラの傾きがある状態で撮影した画像であっても本発明の効果を得ることができる。
【0052】
続くステップS507で、システム制御部301は、算出したθ_diffを予め保持している閾値と比較し、θ_diffが閾値よりも大きい場合はステップS508を実行し、閾値以下の場合は処理を終了する。
【0053】
ステップS508で、システム制御部301は、ユーザーが使用しているカメラにおいて、光学系と撮像素子が設計位置からずれていることを知らせるために、以下の情報を通信部304を通じてデジタルカメラ101に送信する。
・ずれを検知したカメラ本体の識別番号
・ずれを検知したレンズの識別番号
【0054】
ステップS509で、デジタルカメラ101におけるシステム制御部201は、コンピュータ102から送信された情報を受信したかを確認する。受信した場合はステップS510を実行し、受信していない場合は処理を終了する。
【0055】
ステップS510で、システム制御部301は、表示部210に
図14のような表示を出力し、カスタマーセンターにカメラとレンズを修理に出すことを勧める。カスタマーセンターでは、ユーザー(デジタルカメラ101)から該画像データとともにカメラ・レンズID情報等を受け取るので、修理・故障情報の特定、統計などに役立つ。
【0056】
このように本実施形態によれば、ユーザーの利便性を損なうことなく、光学系と撮像素子の設計位置からの乖離度合に関連する情報を算出し、ユーザーに通知することができる。
【0057】
また、本実施の形態において、光学系と撮像素子が設計位置からずれていることを知らせる文面を表示したが、ユーザーがずれの発生をより認識しやすくするために表示部210に画像を表示してもよい。具体的にはステップS502で生成した、
図12のグレースケールのデフォーカスマップや、さらにデフォーカスマップをルックアップテーブル変換等でカラー値に変換したものを表示部210に表示するように構成してもよい。
【0058】
また、本実施の形態において、光学系あるいは撮像素子に設計位置からのずれが発生している場合にユーザーに情報を表示したが、ずれの発生が検知できなかった場合、あるいはいずれの場合でも情報を表示する構成としても構わない。このように構成することで、ユーザーが判定結果をすぐに必要としているときにキャリブレーションの要否を知ることができるようになる。
【0059】
また、本実施の形態において、対の視差画像による視差量の算出からデフォーカスマップを生成する場合を例に説明したが、本発明はこれに限定されるものではない。デフォーカスマップの生成方法としては、例えばピント位置や絞り値が異なる2枚の画像の相関からデフォーカスマップを取得するDFD(Depth From Defocus)方式を用いる構成としても良い。アパーチャブラケット撮影モードで取得した画像を使って光学系と撮像素子の設計位置からの乖離度合に関連する情報を算出することができるので、ずれを検出する機会を増やし、適切なタイミングでユーザーに情報提供をすることができるようになる。
【0060】
また、本実施の形態において、カメラの状態検出情報から画像の奥行方向を推定したが、本発明はこれに限定されるものではなく、例えば消失点に関する情報を用いて奥行方向の推定を行うことができる。このように構成することで、カメラの状態を検知するジャイロやセンサがないカメラであっても本発明の効果を得ることができ、ユーザーの利便性が向上する。以下、消失点検出を用いた奥行方向の推定と、光学系と撮像素子の設計位置からの乖離度合に関連する情報の算出方法について説明する。
【0061】
消失点とは透視変換によって三次元空間中の平行線を画像平面上に投影した場合に、それら平行線に対応する画面平面上の直線が収束する点のことである。つまり消失点とは、実際は奥行きを有している空間が投影された平面画像上において、「無限に遠い点」であり、奥行き方向に平行な線の延長線が交わる点や、奥行き方向に伸びる面の延長が無限遠方に収束する点として認識される。そこで、画像における直線をHough変換などの公知の方法を用いて検出し、検出された複数の直線が最も多く収束する点を消失点として検出することができる。
図6において消失点を検出した結果を
図15に示す。
【0062】
図15における1500が消失点である。そして、奥行方向はオートフォーカス枠600から消失点に向かう方向1501であると推定することができる。奥行方向推定部800は消失点に向かう方向1501を奥行方向推定情報804として出力する。
【0063】
乖離度算出部801では、デフォーカスマップ802におけるオートフォーカス枠近傍のデフォーカス量の勾配(変化の向き)を公知の技術を用いて算出する。そして、奥行方向推定情報804との差分から光学系と撮像素子の設計位置からの乖離度合を示す評価値を算出する。具体的に、消失点に向かう方向とデフォーカス量の勾配方向をそれぞれベクトルとして扱い、両ベクトルの差分を評価値とする。光学系と撮像素子が設計位置からのずれが大きくなるほど、評価値の値も大きくなる。
【0064】
また、画像から抽出した特徴を参考に、画像の奥行方向を推定する方法は上記消失点検出だけではなく、テクスチャの密度の変化に関する情報を用いることができる。テクスチャの密度の変化を参考に画像の奥行方法を検出する。方法としては、例えば、“Texture Structure Classification and Depth Estimation using Multi-Scale Local Autocorrelation Features”, KANG Y, HASEGAWA O, NAGAHASHI H (Tokyo Inst. Technol.), JST-PRESTO(非特許文献)に記載された手法を採用することができる。
【0065】
具体的には、奥行方向推定部800は静止画記録用の画像を参照し、画像中に一様なテクスチャが存在する場合(例えば、
図6における道路)、遠方にいくにしたがってテクスチャの密度が小さくなることを利用する。つまり、奥行方向推定部800は、画像内において、同質のテクスチャの密度が徐々に小さくなる領域を検知した場合には、所定のテクスチャに覆われた平面が撮影位置から遠ざかっていると判断する。手前から遠ざかってく方向を奥行方向推定情報804として出力する。特に合焦領域細かいテクスチャを検出しやすいので、オートフォーカス枠近傍に対して上記判断を行うことで、奥行方向を精度よく推定することができる。更に公知の一般物体検出を利用し、道路などの地面や水面、地面あるいは水面に対して垂直方向に敷設された構造物である生垣など一様なテクスチャが存在する可能性の高い領域を予め検出し、対象領域を限定してもよい。こうすることで、奥行方向の位置の分布の推定にかかる処理時間を削減することができる。
【0066】
そして、乖離度算出部801は、消失点を用いたときと同じようにデフォーカスマップ802におけるオートフォーカス枠近傍のデフォーカス量の勾配(変化の向き)のベクトルと、テクスチャの密度の変化から推定した奥行方向ベクトルの差分を評価値とする。
【0067】
また、本実施形態では、1枚の撮影画像から光学系と撮像素子の設計位置からの乖離度合を示す評価値を算出し、ずれが発生しているかどうかの判定まで行った。しかし本発明はこれに限定されるものではなく、ユーザーが撮影した画像の枚数がある基準枚数に達したら判定を行う構成としても構わない。複数の撮影画像における評価値から判定することで、ずれが発生しているかどうかの判定確度を向上させることができる。また、光学系と撮像素子が設計位置からのずれの発生を検知したことを知らせるかどうかの条件も、ずれを検知した画像の枚数がある基準枚数に達したかどうかを確認することで、より判定の確度を上げることができる。
【0068】
また、撮影した画像すべてに対して光学系と撮像素子の設計位置からの乖離度合を判定するのではなく、大量にある画像に対し、予め乖離度合を判定するのに適した画像であるかを評価してから乖離度合の判定処理を行うのがよい。具体的には上記一般物体検出を行い、道路など一様なテクスチャが存在し、奥行方向を推定するのに適した画像かどうかを評価する。このように構成することで乖離度合を判定するのにかかる処理時間を削減することができる。また、道路などテクスチャが存在する被写体はステップS502において視差画像の位相差を検出するのにも適しているので、より精度の高い乖離度の評価値が期待できる。また、公知のGPS情報を画像の付帯情報として記録しておくことで、撮影した画像に道路などテクスチャが存在する被写体が写っていそうかを判断することができる。ユーザーが撮影した大量の画像からテクスチャが写っていることが期待できる画像を予め選別することで、確度の高い評価結果を算出するまでにかかる時間を短縮することができる。また、光学系が着脱可能なカメラの場合、装着したレンズの個体ごとに光学系と撮像素子が設計位置からのずれが検知できるかの統計をとる。これにより、ずれが発生しているのが光学系か、撮像素子かを分離することができ、より詳細な判定結果をユーザーに提供することが可能になる。
【0069】
また、乖離度算出部801において、デフォーカスマップ802の勾配を精度よく得るために以下の内容を考慮することで、確度の高い評価結果を得ることができる。具体的には算出したデフォーカスマップにおけるヒストグラム(統計情報)を取得し、ヒストグラムの形状からデフォーカス量の勾配を精度よく得られるかどうかを判断する。次に説明するが、ヒストグラムの幅が広く、滑らかに変化している画像を選択するのがよい。
図16は
図7のデフォーカスマップにおけるヒストグラムを表している。
図16より
図7はデフォーカス量が手前から奥にかけて広く分布し、またデフォーカス量の変化も滑らかであるため、画像全体におけるデフォーカス量の変化の方向を評価するのに適した画像であるといえる。一方、
図17(a)に示すように、ポートレート撮影でバストアップの人物が写っている画像における、デフォーカスマップを
図17(b)に、ヒストグラムを
図17(c)に示す。画像中のデフォーカス量がバストアップの人物に集中しているため、画像全体におけるデフォーカス量の変化の方向を評価するのには適していないことがわかる。乖離度算出部801において、奥行方向推定情報804と比較する前にデフォーカスマップのヒストグラムを確認し、乖離度合を評価するのに適した画像でない場合、判定処理を中断することで演算時間を削減することができる。
【0070】
また、ステップS502において、視差画像の位相差を精度よく取得するには画像のS/Nが高い画像を選べばよい。そのため、大量に撮影した画像において、なるべく低い感度で撮影された画像を優先して選択するようにすることで、評価値の確度を向上させることができる。
【0071】
また、視差画像の位相差は光学系204における収差の影響を受けるので、光学系の設計情報として把握している収差を補正してから奥行方向推定部800が推定した結果と比較するのがよい。また、比較する領域を収差の影響が小さい領域に限定的にする対応でもよい。上記対応をおこなうことで、より確度の高い評価結果を算出することができる。
【0072】
また、ステップS510において、光学系と撮像素子が設計位置からのずれの発生の検知情報を受け取ると、デジタルカメラ101の表示部にユーザーに対してカスタマーセンターにカメラとレンズを修理に出すことを促す表示を出力した。しかし、その他の対応を行うこともできる。具体的にはステップS508において、乖離度合を示す評価値805もデジタルカメラ101に送信する。そして、乖離度合を示す評価値805に応じて、光学系と撮像素子が設計位置からのずれが発生していない状態に近づくよう光学系や撮像部に搭載されているIS機構を駆動することで簡易的なキャリブレーションを行うことができる。または、乖離度合を示す評価値805を参照し、ピント面が傾いる領域に対し画像処理(シャープネスやぼかし処理)を施すことで、光学系と撮像素子が設計位置からのずれが発生していない状態で得られる画像に近づくよう加工することもできる。具体的に、ずれが発生していない状態と比較してデフォーカス量が合焦寄りになってしまっている領域にはぼかし処理を行う。反対に、本来のデフォーカス量よりも背景、もしくは手前寄りになってしまっている領域にはシャープネス処理を施す。上記のように構成することでユーザーがカメラとレンズを修理に出せない状況であってもユーザーの想定にあった被写界深度の画像を取得することができ、ユーザーの利便性を向上させることができる。
【0073】
また、光学系と撮像素子が設計位置からのずれの発生の検知情報を送る先はユーザーのカメラのみだけではなく、カスタマーセンターにも情報を送るようにしても構わない。ユーザー自身が登録したカスタマー情報と、所有しているすべての機材に関する情報とを合わせてカスタマーセンター側で管理することにより、光学系と撮像素子が設計位置からのずれの発生回数や、メンテナンス記録を取ることにより、修理にかかる時間の短縮などユーザーの利便性を更に向上させることが可能になる。
【0074】
また、ユーザーが撮影するカメラとレンズが単一である場合、表示部201を通じて発生原因が光学系にあるのか、撮像素子にあるのかを切り分ける動作モードを実行するかどうかをユーザーに提示する構成としてもよい。ユーザーが原因を切り分ける動作モードを選択した場合、表示部201に指示を出し、原因の切り分けに適した画像を撮影するように促す。具体的な指示の内容としては、正対した壁に方眼紙を貼り付けてもらい、光学系の撮影条件(焦点距離、フォーカスレンズ位置、絞り)を変えて撮影してもらう。解析の結果光学系の撮影条件を変えると判定結果が変わる場合はレンズが原因であり、撮影条件によらずずれの発生の検知される場合は撮像素子が原因である。このように構成することで、光学系と撮像素子が設計位置からのずれが発生する原因をつきとめ、より的確な通知や修理を行うことが可能になる。
【0075】
[第2実施形態]
以下、本発明の第2実施形態による画像処理装置、画像処理方法、および画像処理プログラムについて、図面を参照して詳細に説明する。なお、上記第1実施形態による画像処理装置と同様の構成要素については同一の符号を付し説明を省略し又は簡略にする。
【0076】
第1実施形態ではカメラ装置100の内部パラメータである光学系と撮像素子の設計位置からの乖離度合に関連する情報を算出し、ユーザーに通知する形態について説明した。本発明の第2実施形態では画像処理装置の外部パラメータである位置あるいは姿勢をキャリブレーションする形態について説明を行う。
【0077】
先ず、本実施形態に係る撮像システムについて説明する。本実施形態に係る撮像システムは、社会インフラ点検の対象となる構造物の検査対象面を撮像するためのもので、特に、該検査対象面に対する正対撮像あるいは撮像画像評価を容易に実現するためのものである。本実施形態に係る撮像システムは、動画像を撮像するもしくは定期的/不定期的に静止画像を撮像する撮像装置としてのカメラ装置と、該カメラ装置に装着するレンズ装置と、該カメラ装置を回転させる雲台装置と、を有する。
【0078】
先ず、本実施形態に係るカメラ装置1900およびレンズ装置1913のハードウェア構成例について、
図19Aのブロック図を用いて説明する。ただし、本実施形態においても、第1実施形態と同じデジタルカメラ101で撮像装置が構成されていてもよい。
図19Aでは、カメラ装置1900にレンズ装置1913が装着された状態を示している。
【0079】
先ず、カメラ装置1900のハードウェア構成例について説明する。本実施形態に係るカメラ装置1900は、カメラ装置1900の撮像範囲内の複数の位置における距離情報分布を取得し、カメラ装置1900の回転あるいは並進を指示する情報を、該取得した距離情報間の差分に基づいて取得し、該取得した情報を出力する。ここで距離情報及び距離情報分布は、第1実施形態と同様に対の視差画像による像ずれ量及び像ずれ量分布、いずれかの手段で取得されたデフォーカス量及びデフォーカスマップあるいは被写体距離情報および被写体距離マップ、のいずれの形態であってもよい。
【0080】
CPU(Central Processing Unit)1901は、ROM(Read-Only Memory)102やRAM(Random Access Memory)1903に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU1901は、カメラ装置1900全体の動作制御を行うとともに、カメラ装置1900が行うものとして後述する各処理を実行もしくは制御する。
【0081】
ROM1902には、カメラ装置1900の設定データ、カメラ装置1900の起動に係るコンピュータプログラムやデータ、カメラ装置1900の基本動作に係るコンピュータプログラムやデータ、などが格納されている。
【0082】
RAM1903は、ROM1902から読みだしたコンピュータプログラムやデータ、記録媒体I/F1908を介してメモリカード1909から読みだしたコンピュータプログラムやデータ、を格納するためのエリアを有する。さらにRAM1903は、撮像素子1904から出力された撮像画像、外部I/F1910を介して外部装置から受信したコンピュータプログラムやデータ、カメラ通信部107によりレンズ装置1913から受信したデータ、を格納するためのエリアを有する。さらにRAM1903は、CPU1901が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM1903は、各種のエリアを適宜提供することができる。
【0083】
撮像素子1904の画素配列は、
図2の撮像部205と同じ配列構成となっており、レンズ装置1913を介して入光した光に応じた撮像画像を生成して出力する。表示部1905は、液晶ディスプレイ(LCD)や有機ELディスプレイ(OLED)等であって、表示画面やファインダー画面に画像や文字を表示するデバイスである。なお表示部105は、カメラ装置1900に備わっているものでなくてもよく、例えば、カメラ装置1900と無線および/または無線で通信可能な外部デバイスであってもよい。
【0084】
操作部1906は、ボタン、ダイヤル、タッチパネル、ジョイスティック等のユーザインターフェースであり、ユーザーが操作することで各種の指示をCPU1901に対して入力することができる。
【0085】
カメラ通信部1907は、カメラ装置1900とレンズ装置1913との間のデータ通信を行う。記録媒体I/F1908は、メモリカード1909をカメラ装置1900に装着するためのインターフェースであり、CPU1901は、記録媒体I/F1908を介してメモリカード1909に対するデータの読み書きを行う。
【0086】
メモリカード1909は、例えば、SD、CF、CFexpress、XQD、CFastなどのカード型の記録媒体が知られている。また、メモリカード109は、無線ネットワークを介して外部装置にデータを記録するものであっても良い。
【0087】
外部I/F1910は、外部装置との間のデータ通信を行うための通信インターフェースであり、CPU1901は、外部I/F1910を介して外部装置との間のデータ通信を行う。電源部1910は、カメラ装置1900における電源供給および電源管理を行う。
【0088】
CPU1901、ROM1902、RAM1903、撮像素子1904、表示部1905、操作部1906、カメラ通信部1907、記録媒体I/F1908、外部I/F1910、電源部1911は何れもシステムバス1912に接続されている。
【0089】
次に、レンズ装置1913のハードウェア構成例について説明する。CPU1914は、ROM1915やRAM1916に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU1914は、レンズ装置1913全体の動作制御を行うとともに、レンズ装置1913が行うものとして後述する各処理を実行もしくは制御する。
【0090】
ROM1915には、レンズ装置1913の設定データ、レンズ装置1913の起動に係るコンピュータプログラムやデータ、レンズ装置1913の基本動作に係るコンピュータプログラムやデータ、などが格納されている。
【0091】
RAM1916は、ROM1915から読みだしたコンピュータプログラムやデータ、レンズ通信部1919によりカメラ装置1900から受信したデータ、を格納するためのエリアを有する。さらにRAM1916は、CPU1914が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM1916は、各種のエリアを適宜提供することができる。
【0092】
レンズ通信部1919は、カメラ装置1900とレンズ装置1913との間のデータ通信を行う。例えば、レンズ通信部1919は、カメラ装置1900からレンズ装置1913への制御情報を受信したり、レンズ装置1913の動作状態などをカメラ装置1900に通信したり、カメラ装置1900からの電源の供給を受けたりする。
【0093】
表示部1917は、液晶ディスプレイ(LCD)や有機ELディスプレイ(OLED)等であって、レンズ装置1913の動作状態などを表示するデバイスである。なお表示部1917は、レンズ装置1913に備わっているものでなくてもよく、例えば、レンズ装置1913と無線および/または無線で通信可能な外部デバイスであってもよい。
【0094】
操作部1918は、ボタン、ダイヤル、タッチパネル、ジョイスティック等のユーザインターフェースであり、ユーザーが操作することで各種の指示をCPU114に対して入力することができる。また、ユーザーが操作部1918を操作することで入力した指示は、レンズ通信部1919によってカメラ装置1900に対して送信することもできる。
【0095】
レンズ駆動部1920は、レンズ装置1913が有する光学レンズを、CPU1901やCPU114からの指示に基づいて制御するものであり、これにより、絞り、フォーカス、ズーム焦点、手振れ補正などの制御を行う。レンズ駆動部1920によって絞り、フォーカス、ズーム焦点、手振れ補正などが制御された後に該光学レンズを介して入光した光は上記の撮像素子1904で受光され、該撮像素子1904は、該受光した光に応じた撮像画像を生成して出力する。
【0096】
CPU1914、ROM1915、RAM1916、レンズ通信部1919、表示部1917、操作部1918、レンズ駆動部1920、は何れも、システムバス1921に接続されている。
【0097】
次に、本実施形態に係る雲台装置2000のハードウェア構成例について、
図20のブロック図を用いて説明する。
【0098】
CPU2001は、ROM2002やRAM2003に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU2001は、雲台装置2000全体の動作制御を行うとともに、雲台装置2000が行うものとして後述する各処理を実行もしくは制御する。
【0099】
ROM2002には、雲台装置2000の設定データ、雲台装置2000の起動に係るコンピュータプログラムやデータ、雲台装置2000の基本動作に係るコンピュータプログラムやデータ、などが格納されている。
【0100】
RAM2003は、ROM2002から読みだしたコンピュータプログラムやデータを格納するためのエリアを有する。さらにRAM2003は、CPU2001が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM2003は、各種のエリアを適宜提供することができる。
【0101】
外部I/F2004は、リモコン装置2010からの各種の指示を無線若しくは有線の通信でもって取得するための通信インターフェースである。リモコン装置2010は、雲台装置2000に対して各種の指示を入力するための装置であり、例えば、雲台装置2000に載置されているカメラ装置1900のパン角やチルト角を変更するための変更指示を入力することができる。また、外部I/F2004は、雲台装置2000に載置されたカメラ装置1900とも通信可能である。
【0102】
電源部2005は、雲台装置2000における電源供給および電源管理を行う。表示部206は、液晶ディスプレイ(LCD)や有機ELディスプレイ(OLED)等であって、雲台装置2000の動作状態などを表示するデバイスである。なお表示部2006は、雲台装置2000に備わっているものでなくてもよく、例えば、雲台装置2000と無線および/または無線で通信可能な外部デバイスであってもよい。
【0103】
操作部2007は、ボタン、ダイヤル、タッチパネル、ジョイスティック等のユーザインターフェースであり、ユーザーが操作することで各種の指示をCPU2001に対して入力することができる。
【0104】
駆動部2008は、カメラ装置1900を固定する台座(固定部材)と、該台座をパン、チルト、XYZ方向に並進駆動する駆動機構を備える。駆動部2008は当該駆動機構を制御することで、カメラ装置1900のパン角、チルト角、XYZ方向の位置を、外部I/F2004を介してリモコン装置210から受けた指示等に基づいて制御する。また、本実施形態では、カメラ装置1900を上述した雲台装置2000に搭載してカメラ装置1900のパン、チルト、撮影位置を制御している。しかし、これに限らず、例えばドローンなどのように、装置そのものが移動することによってカメラ装置1900のパン、チルト、撮影位置の少なくとも1つが制御されるものであっても本発明は適用できる。
【0105】
CPU2001、ROM2002、RAM2003、外部I/F2004、電源部2005、表示部2006、操作部2007、駆動部2008、は何れもシステムバス2009に接続されている。
【0106】
次に、カメラ装置1900の機能構成例について、
図19Bのブロック図を用いて説明する。以下では、
図19Bに示した各機能部を処理の主体として説明するが、実際には、該機能部に対応するコンピュータプログラムをCPU1901が実行することで、該機能部の動作を実現させる。また、
図19Bに示した機能部の少なくとも一部をハードウェアで実装しても構わない。
【0107】
被写体認識部1928は、公知の一般物体検出を利用し、撮像している画像に社会インフラ点検の対象となる構造物の検査対象面が写っているかどうかを認識する。具体的には、被写体認識部1928は予めインフラ点検の対象となる構造物に係る特徴量を記憶しておき、撮影され得られた画像と記憶画像の特徴量とを比較する。この結果は、画像における奥行方向を推定するための情報としても利用する。認識の結果、社会インフラ点検の対象となる構造物の検査対象面を撮影している場合、構造物の検査対象面に対してカメラ装置1900を正対関係になるようキャリブレーションを行う処理が行われる。ここで検査対象面が平面である場合、カメラと構造物が正対関係であるので撮像範囲内でのデフォーカス量はおおよそ均一になるはずである。キャリブレーションの目標として、第1実施形態で説明した光学系と撮像素子の設計位置からの乖離度合を判定する手法と同様に、撮像範囲内での距離情報分布の各値が均一(所定範囲内に収まる)になるようカメラ装置1900の位置姿勢を補正すればよい。ただし以下本実施形態では例示としてパンあるいはチルト方向の制御を簡易的に撮影範囲内の一部の領域のデフォーカス量から設定する手法を示す。
【0108】
決定部1922は、「社会インフラ点検の対象となる構造物の検査対象面に対してカメラ装置1900が正対するために、該カメラ装置1900を操作させる回転方向および並進移動方向」を示す設定情報を取得する。設定情報は、例えば、ユーザーが操作部1906を操作して決定する。そして決定部1922は、設定情報が示すカメラの駆動が回転方向かつ横方向(パン方向)であれば、カメラ装置1900の撮像範囲内で左右に並ぶ2つの領域を「デフォーカス量を取得するための領域」として設定する。(例えば、該撮像範囲内の左端近傍の位置と右端近傍の位置)。ここで、各領域の最小単位は1画素である。
【0109】
一方、決定部1922は、設定情報が示すカメラの駆動が回転方向かつ縦方向であれば、カメラ装置1900の撮像範囲内で上下に並ぶ2つの領域を「デフォーカス量を取得するための領域」として設定する。(例えば、該撮像範囲内の上端近傍の位置と下端近傍の位置)。ここでも各領域の最小単位は1画素である。
【0110】
また、決定部1922は、設定情報が示すカメラの駆動が並進移動であれば、カメラ装置1900の撮像範囲内で上下左右に並ぶ4つの領域を「デフォーカス量を取得するための領域」として設定する。ここでも各領域の最小単位は1画素である。
【0111】
また、本実施形態はユーザーによる設定情報を用いず(あるいは設定情報によらず)、第1の実施形態と同様複数の領域で距離情報を取得、すなわち距離情報分布を取得し、分布情報の解析結果から雲台装置2000の駆動(カメラの位置姿勢)を制御してもよい。このとき、「デフォーカス量を取得するための領域」は、例えばデフォーカス量を取得可能な領域全体である。距離情報分布を取得することでたとえば平面検出により距離情報の2次元あるいは3次元の傾きが分かるため、該傾きが正対し各方向でゼロに近くなるようにカメラの位置姿勢を制御すればよい。
【0112】
制御部1924は、カメラ装置1900の撮像範囲内において決定部1922が決定した「デフォーカス量を取得するための領域」からデフォーカス量を取得する。取得部1923は、制御部1924が取得したデフォーカス量を取得する。差分演算部1925は、取得部1923が取得した一方のデフォーカス量と他方のデフォーカス量との差分を求める。
【0113】
特定部1926は、差分演算部1925が求めた差分に基づいて、「カメラ装置1900を駆動させる回転度合いや並進度合い(方向を含む)」を通知するための通知情報を特定する。出力部1927は、特定部1926が特定した通知情報を外部I/F1910を介して雲台装置2000に出力する。雲台装置2000は、外部I/F2004を介して通知情報を取得し、該通知情報に基づいて駆動部2008によってカメラ装置1900が所望の位置姿勢になるように制御する。
【0114】
本実施形態では、このような撮像システムを用いて、検査対象となる社会インフラ構造物の撮像を行い、該撮像により得られた撮像画像に基づいて該社会インフラ構造物の検査を行う。本実施形態に係る撮像システムを用いて社会インフラ構造物を撮像する撮像方法について、
図21を用いて説明する。
【0115】
検査対象となる社会インフラ構造物における検査対象面の一例を
図21(a)に示す。
図21(a)に示す社会インフラ構造物2100は、側面2101を有し且つ横に長い壁状の構造物となっている。参照番号2102は、社会インフラ構造物2100を図面に基づいて分割し、打ち継ぎを行って建造した際に発生した目地部分を示す。2102の部分は、打ち継ぎ目とも呼ばれるが、ここでは分かり易さの為に目地と呼ぶ。目地部分2102は、目視が可能であることから、検査業務を行う単位としても用いられる。参照番号2103は、1回の検査の対象となる領域(検査対象領域)を示しており、撮像システムは、該検査対象領域2103を含む撮像領域2104を撮像する。撮像領域2104を撮像した撮像画像において「撮像領域2104内で検査対象領域2103の周辺部に該当する部分画像」は、隣接する検査対象領域との位置関係を把握する為の情報となる。そのため、この部分画像は、社会インフラ構造物2100全体を含む一枚の画像に合成する際の位置合わせとしても使用される。また、この周辺部に該当する部分画像は、1つの検査対象領域にとどまらない広範囲な変状の検査の為にも用いられるものである。
【0116】
このような撮像領域2104を本実施形態に係る撮像システムを用いて撮像する様子を
図21(b)に示す。
図21(b)では、三脚2108を有する雲台装置2000にカメラ装置1900が装着されており、該カメラ装置1900にはレンズ装置1913が装着されている。カメラ装置1900とレンズ装置1913との組み合わせによって撮像される撮像範囲2109の検査対象面における幅(図中横方向のサイズ)は、撮像領域2104の幅(図中横方向のサイズ)に相当する。
【0117】
そして、検査対象領域2103の撮像が完了すると、該検査対象領域2103に隣接する未撮像の検査対象領域の撮像を行う。本実施形態に係る撮像システムを参照番号2110が示す位置に移動させ、同様にして、撮像範囲2112内の検査対象領域の撮像を行う。参照番号2110が示す位置での撮像が完了すると、該検査対象領域に隣接する未撮像の検査対象領域の撮像を行うべく、本実施形態に係る撮像システムを参照番号2111が示す位置に移動させ、同様にして、撮像範囲2113内の検査対象領域の撮像を行う。また、ドローンなどの移動体にカメラ装置1900を搭載している場合、ユーザーは各撮像位置に移動体を手動操作または自動で移動させ、順次撮像を行う。
【0118】
ここで、本実施形態では、カメラ装置1900は検査対象領域に対して正対している必要がある。本実施形態では、カメラ装置1900が該検査対象領域に対して正対しているか否かを判断し、正対していなければ、カメラ装置1900を回転あるいは並進させて該検査対象領域に対して正対させるための通知を行う。
【0119】
この通知を行うために、上記の如く、制御部1924は、決定部1922が決定した位置のデフォーカス量を取得する。デフォーカス量の取得方法は第1実施形態のステップS502と同じであるので説明を省略する。ここで、取得したデフォーカス量は連続値を有しており、合焦具合に対応するデフォーカス量は、前ピンの状態であれば“-11”、合焦状態にある場合は“0”、後ピンの状態であれば“+7”のように定めることが可能であるとする。また、第1実施形態のように撮影範囲における空間的な(2次元的な)デフォーカス量分布を表すデータを作成し、制御部1924は、デフォーカス量分布(距離情報分布)において、決定部1922が決定した位置のデフォーカス量を取得する構成としても構わない。
【0120】
次に、本実施形態に係る撮像システムの動作について、
図22のフローチャートに従って説明する。上記の如く、ユーザーは本実施形態に係る撮像システムを用いて検査対象面の撮像を行うべく、該撮像システムを該検査対象面に向けて設置する。このとき、ユーザーはカメラ装置1900を該検査対象領域に対して概略正対化と思われる向きに設置することは可能である。しかし、構造物や設置場所の基準点及び周囲の精密な測量情報が無い場合、カメラ装置1900を正確に正対化する向きに設置することはできてはいない状態である。カメラ装置1900を設置してから該カメラ装置1900の電源が投入されると、撮像素子1904によって撮像された撮像画像がライブビュー画像として、表示部1905により該カメラ装置1900の背面の表示画面に表示される。そして、
図22のフローチャートに従った処理が開始される。
【0121】
ステップS2200では、被写体認識部1928は、撮像画像に対して、一般物体検出処理を行う。本実施形態では一般物体として検出するものの中に、撮像すべき構造物の検査対象面を含むため、該検査対象面を示す特徴量の情報が予めROM1902に記憶されている。
【0122】
ステップS2216では、被写体認識部1928は、ステップS2200で検出した物体が、カメラ装置1900と正対関係で撮像すべき構造物の検査対象面であるかどうかを判定する。検査対象面であると判定した場合にはステップS2201に進み、処理を継続する。一方、検査対象面ではないと判定した場合には
図22のフローチャートに従った処理を終了する。
【0123】
ステップS2201では、決定部1922は、「検査対象面に対してカメラ装置1900が正対するための該カメラ装置1900の駆動」を示す設定情報を取得する。
【0124】
例えば
図23に示す如く、操作部1906は、「検査対象面に対してカメラ装置1900が正対するために該カメラ装置1900の駆動」(正対化検出方向)を制御する。すなわち、「縦方向」、「横方向」、「並進」の少なくとも何れかに設定するための操作部2007にあたるスイッチを有する。ユーザーはこのスイッチを操作することで、正対化検出方向を縦方向(回転軸=チルト軸)および横方向(回転軸=パン軸)の何れかに設定することができる。決定部1922は、スイッチによって設定された正対化検出方向を設定情報として取得する。
図21(a)、(b)に示す如く、横長の構造物を横に移動して撮像する場合には、横(回転)方向の正対化検出方向が選択される。
【0125】
また前述した通り、正対化および複数の領域で合焦した画像が得られるようにXYZ方向の並進移動も含めて制御する場合(例えばモード設定で)は、ステップS2201における正対化検出方向の設定は行わない。制御部1924は、第1実施形態のように撮影画像の複数の領域に対応して取得する距離情報分布に基づいて、合焦すべき被写体の平面の位置姿勢を推定し、雲台装置2000(カメラ装置1900)の位置姿勢を制御する。
【0126】
以下では、正対化検出方向を縦方向(回転軸=チルト軸)および横方向(回転軸=パン軸)の何れかに設定する一例として、正対化検出方向が横方向に設定されたケースについて説明する。
【0127】
次に、ステップS2202では、決定部1922は、正対化検出方向が横方向であるので、カメラ装置1900の撮像範囲内で左右に並ぶ2つの領域を「デフォーカス量を取得するための領域」として設定する。例えば、
図24(a)に示す如く、決定部1922は、社会インフラ構造物2100においてカメラ装置1900の撮像範囲2402に収まる撮像領域2104の左端付近の領域2400と右端付近の領域2401とを「デフォーカス量を取得するための領域」として設定する。また本実施形態はこれに限らず、正対化検出方向を設定する場合でも、第1実施形態と同様に画面全体(画像全体)のデフォーカス量を取得するものとしてもよい。
【0128】
ステップS2203では、制御部1924は、ステップS2202で設定された位置(
図24(a)の場合は領域2400および領域2401)におけるデフォーカス量を、上記の如く取得する。このとき、カメラ装置1900は検査対象面に対して合焦動作を行う必要は無く、ステップS2202で設定された領域におけるデフォーカス量を取得する。
【0129】
ステップS2204では、取得部1923は、ステップS2203で取得した「左側の領域のデフォーカス量」と「右側の領域におけるデフォーカス量」とを取得する。そして差分演算部1925は、「左側の領域のデフォーカス量」から「右側の領域におけるデフォーカス量」を引いた差分を求める。
【0130】
ステップS2206では、特定部1926は、ステップS2204で求めたデフォーカス量間の差分に対応する「カメラ装置1900の回転方向および回転の度合いを表す情報」を回転指示情報(通知情報)として取得する。
【0131】
ここで、ROM1902には、
図25に示す如く、デフォーカス量間の差分に対応する回転指示情報が登録されたテーブル2515が登録されている。列2516には、デフォーカス量間の差分の区間が登録されている。例えば、列2516において行2519には、デフォーカス量間の差分の区間「+11以上」が登録されており、列2516において行2524には、デフォーカス量間の差分の区間「-5~-10」が登録されている。
【0132】
列2517には、カメラ装置1900を左回転させる場合の回転量に応じたアイコンが登録されている。列2517において行2519に登録されているアイコンは、列2517において行2520に登録されているアイコンが表す回転量よりも大きい回転量を表している。列2517において行2520に登録されているアイコンは、列2517において行2521に登録されているアイコンが表す回転量よりも大きい回転量を表している。列2517において行2522~2525に登録されているアイコンは、左回転させる必要はないことを表している。
【0133】
列2518には、カメラ装置1900を右回転させる場合の回転量に応じたアイコンが登録されている。列2518において行2525に登録されているアイコンは、列2518において行2524に登録されているアイコンが表す回転量よりも大きい回転量を表している。列2518において行2524に登録されているアイコンは、列2518において行2523に登録されているアイコンが表す回転量よりも大きい回転量を表している。列2518において行2519~2522に登録されているアイコンは、右回転させる必要はないことを表している。
【0134】
よって、例えば、特定部1926は、ステップS2204で求めたデフォーカス量間の差分が「+7」である場合、差分「+7」を含む区間「+10~+5」に対応する行2520に登録されている2つのアイコンを回転指示情報として取得する。
【0135】
また例えば、特定部1926は、ステップS2204で求めたデフォーカス量間の差分が「-12」である場合、差分「-12」を含む区間「-11以下」に対応する行2525に登録されている2つのアイコンを回転指示情報として取得する。
【0136】
つまり、
図25のテーブルには、デフォーカス量間の差分の符号に応じた回転方向と、デフォーカス量間の差分の絶対値に応じた回転の度合いと、を通知するための回転指示情報が登録されている。
【0137】
ステップS2214では、出力部1927は、ステップS2206で取得した回転指示情報を「カメラ装置1900の回転方向と回転の度合いをユーザーに通知するための通知情報」として表示部1905に出力する。表示部1905は、該通知情報を、カメラ装置1900の背面の表示画面に表示する。例えば
図24(a)に示す如く、カメラ装置1900の背面の表示画面に表示されているライブビュー画像2404の下方左側には列2517から取得したアイコン2405を表示する。また、該ライブビュー画像2404の下方右側には列2518から取得したアイコン2406を表示する。なお、アイコン2405およびアイコン2406の表示位置は特定の表示位置に限らず、例えば、ライブビュー画像2404に重畳させて表示してもよい。また、
図24(a)では、ライブビュー画像2404において位置2400および位置2401のそれぞれに対応する位置にアイコン2400aおよび2401aが重畳表示されている。
【0138】
表示されたアイコン2405,2406を目視したユーザーは、カメラ装置1900を左回転させる通知を認識し、カメラ装置1900を左回転させる。
図24(a)の状態におけるカメラ装置1900を左回転させた後の状態を
図24(b)に示す。
【0139】
図24(b)の状態においても、未だアイコン2409,2410が表示されているので、同様にユーザーは、カメラ装置1900を左回転させる通知を認識し、カメラ装置1900を左回転させる。ここで、アイコン2406もアイコン2410も右回転させる必要はないことを示している。一方、アイコン2405もアイコン2409も左回転させる必要があることを示しているが、アイコン2409はアイコン2405よりも少ない回転量の回転を示している。
図24(b)の状態におけるカメラ装置1900をさらに左回転させた後の状態を
図24(c)に示す。
【0140】
図24(c)の状態では、左回転させる必要はないことを表すアイコン2413および右回転させる必要はないことを表すアイコン2414が表示されている。表示されたアイコン2413,2414を目視したユーザーは、カメラ装置1900を右にも左にも回転させる必要はない旨の通知を認識し、カメラ装置1900を回転させない。
【0141】
図23は、カメラ装置1900を雲台装置2000に搭載した状態を示す図であり、雲台装置2000のパンチルト操作及びカメラ装置1900の撮像操作を行う為のリモコン装置2010が接続されている。このとき、リモコン装置2010は、カメラ装置1900の外部I/F1910を介してカメラ装置1900と接続することによって、カメラ装置1900による撮像も可能としている。
【0142】
図22に戻って、ステップS2215では、CPU1901は、
図22のフローチャートに従った処理の終了条件が満たされたか否かを判断する。例えば、CPU1901は、ユーザーが操作部1906を操作して処理の終了指示を入力したり、カメラ装置1900の電源をオフにしたりした場合には、
図22のフローチャートに従った処理の終了条件が満たされたと判断する。
【0143】
このような判断の結果、
図22のフローチャートに従った処理の終了条件が満たされた場合には、
図22のフローチャートに従った処理は終了し、該終了条件は満たされていない場合には、処理はステップS2203に進む。
【0144】
このように、
図23のようなカメラ装置1900を載置した雲台装置2000を検査対象面に向けて設置することで、検査対象面に対して正対化するための回転・並進指示情報をユーザーに通知することが可能となる。そして、この通知を受けたユーザーが該通知に従って雲台装置2000等の操作を行うことでカメラ装置1900を検査対象面に対して正確に正対化することが可能となり、正確な変状の検査が可能となる。また同時に、正確に正対化することで、検査対象面の隣接した領域を撮像する際に、カメラ装置1900を平行移動させることで、検査対象面に対する均一な条件での撮像が連続的に可能となる。また、カメラ装置1900の撮像素子1904や、レンズ装置1913において経年変化による設計位置からの乖離があったとしても検査対象面に対して正確に正対化するため、正確な変状の検査が可能となる。
【0145】
なお、本実施形態においては、正対化のための回転方向を横(回転)方向とし、雲台装置2000のパン軸を操作する構成としたが、正対化検出方向を切り替えることで縦(回転)方向に対する正対化の回転指示を行い、チルト軸を操作する構成としても良い。さらに、横(回転)方向と縦(回転)方向の検出を同時に行い、それぞれの回転指示情報を提示する構成としても良い。
【0146】
また、本実施形態においては、デフォーカス量の値についての一例を提示し、また、回転指示情報を3種類に定めたが、デフォーカス量の値は使用する像面位相差センサの種類によって異なる為、適宜係数等を乗じて使用しても良く、種類もこれに限らない。
【0147】
また、本実施形態では、回転方向と回転の度合いの両方を示すアイコンを表示していたが、回転方向を示すアイコンと、回転の度合いを示すアイコンと、に分けて表示してもよいし、いずれか一方のみを表示してもよい。また、回転方向や回転の度合いを示す情報はアイコンに限らず、例えば、文字情報であってもよい。また、回転方向や回転の度合いの通知方法は特定の通知方法に限らない。
【0148】
また、本実施形態では、回転させる必要のない方向についてもアイコンを表示しているが、回転させる必要のない方向についてはアイコンを表示しなくてもよい。また、回転させる必要のある方向についてはアイコンに加えて、文字情報などの他の情報をさらに表示してもよい。
【0149】
また、本実施形態では、雲台装置200にカメラ装置1900を載置する構成としたが、前述したようにカメラ装置1900をドローン装置等のUAV(unmanned aerial vehicle)に搭載する構成としても構わない。このように構成することで、雲台を設置できない環境にある対象構造物の検査対象面を正対撮像することが実現できる。
【0150】
また、本実施形態では、回転及び/または並進の指示情報をユーザーに通知していたが、回転及び/または並進の指示情報を雲台装置2000に出力してもよい。雲台装置2000は該回転及び/または並進の指示情報に応じたカメラ装置1900の回転制御を行い、自動的に該カメラ装置1900を検査対象面に正対化させる構成としても構わない。このように構成することでユーザーが操作する手間が減り、利便性が向上する。
【0151】
また、本実施形態では、カメラ装置1900でデフォーカス量(距離情報分布)を算出したが、第1実施形態のように、通信回路を介して通信可能に接続されたコンピュータにおいてデフォーカス量を算出する構成としても構わない。
【0152】
また、本実施形態では、雲台装置2000を操作してカメラ装置1900の位置姿勢を制御するために距離情報分布を算出したが、算出した距離情報分布の用途はこれだけに限られない。
【0153】
例えば、CPU1901は、撮像素子1904にて撮像される視差を有する対の画像データと、少なくともF値及びKX値を含む撮影条件を、該画像データと関連付けてメモリカード1909などに記録する。記録された対の画像データおよび撮影条件に基づいて、CPU1901あるいは各データが出力される外部装置のCPUが距離情報分布を生成、取得する。ここで、取得する距離情報分布をデフォーカス量分布とし、かつ撮影条件であるF値(あるいは実効F値)、変換係数KXに基づいて各デフォーカス量を変換することでボケマップを生成する。該ボケマップを用いて、撮影した画像におけるボケに関する品質評価に用いても良い。特に社会インフラ点検の為の撮影においては、検査対象面の変状などを検査する際に、検査対象面がピンボケしていない画像で評価しなければ、ひびの検出、ひび幅の測定などが正しく行えない。そこでデフォーカス量分布(あるいはボケマップ)を参照することで、例えばボケの発生していない領域(撮像範囲)に限って測定を行うと、より精度の高い検査を行うことができる。また、CPU1901は、例えば基準以上のボケ量を持つボケが所定の割合以上に撮影画像に発生していると判定した場合、該撮影画像がNG(変状検知不可)であることをユーザーに報知してもよい。報知方法としては、表示部1905を用いた画像、アイコン表示、あるいはその他デバイスより光、音、振動などで報知することが考えられる。また、CPU1901は、上述したボケマップを生成し、単に各ボケ量を可視化した画像を生成して表示部に表示してもよい。ユーザーはボケマップを参照しながら手動あるいは自動で撮影のやり直し、またはカメラ装置1900の移動等を行うことが出来る。
【0154】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【0155】
[その他の実施形態]
本発明の目的は以下のようにしても達成できる。すなわち、前述した各実施形態の機能を実現するための手順が記述されたソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給する。そしてそのシステムまたは装置のコンピュータ(またはCPU、MPU等)が記憶媒体に格納されたプログラムコードを読み出して実行するのである。
【0156】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体およびプログラムは本発明を構成することになる。
【0157】
また、プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスクなどが挙げられる。また、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-R、磁気テープ、不揮発性のメモリカード、ROM等も用いることができる。
【0158】
また、コンピュータが読み出したプログラムコードを実行可能とすることにより、前述した各実施形態の機能が実現される。さらに、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した各実施形態の機能が実現される場合も含まれる。
【0159】
更に、以下の場合も含まれる。まず記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う。
【符号の説明】
【0160】
100 画像処理装置
101 デジタルカメラ
102 コンピュータ
103 通信回路
1900 カメラ装置
1913 レンズ装置
2000 雲台装置
2010 リモコン装置