以下、図面を参照して本発明の実施形態を説明する。
(第1の実施形態)
図1および図2は本発明の第1の実施形態に係る撮像装置に用いられる防水ハウジングの一例を示す図であり、図1は防水ハウジングの前面、図2は防水ハウジングの背面の構成を示す図である。
この防水ハウジング11は、カメラ本体を収納する透明性の防水ケース12からなり、その防水ケース12はヒンジ部13を介して開閉自在に取り付けられた2つのパーツ12aと12bからなる。パーツ12aはハウジング前面、パーツ12bはハウジング背面を構成し、互いに閉じた状態でカメラ本体の収納スペースを形成する。また、図中の14はストッパであり、この防水ケース12のパーツ12a,12bを閉じた状態でロックする。15はバックル、16はストラップである。
図1に示すように、防水ハウジング11の前面つまり防水ケース12のパーツ12a上には、FLガラス等からなるレンズ窓17と、水深センサ、水温センサ、透明度センサなどの各種センサ類を搭載したセンサユニット18が設けられている。また、防水ハウジング11の上部には、電源用アウターボタン19やシャッタ用アウターボタン20がハウジング内のカメラ本体の電源キー、シャッタキーを外部から操作可能に取り付けられている。
一方、図2に示すように、防水ハウジング11の背面つまり防水ケース12のパーツ12b上には、カメラ本体背面の各種キーに対応させた各種アウターボタン21と、カメラ本体の表示モニタを保護するための表示部保護材22が設けられている。
また、図中の23〜25は防水パッキンであり、ハウジング内部に水が侵入することを防いでいる。26はカメラ本体と接続するための接続コネクタであり、ハウジング内部に設けられている。
図3および図4は同実施形態における撮像装置としてデジタルカメラを例にした場合の構成を示す図であり、図3はデジタルカメラの前面、図4はデジタルカメラの背面の構成を示す図である。
図3に示すように、デジタルカメラ31の略直方体状をなすカメラ本体32の前面32aに撮影レンズ33、光学ファインダ窓34、ストロボ35などを有し、上部には電源キー36、シャッタキー37などが設けられている。電源キー36は電源のオン/オフ毎に操作するキーであり、シャッタキー37は撮影時に撮影タイミングを指示するキーである。
また、図4に示すように、カメラ本体32の背面32bには、撮影モードキー38、再生モードキー39、光学ファインダ40、ストロボキー41、ズームキー42、メニューキー43、カーソルキー44、セットキー45、DISPキー46などが配設されている。
撮影モードキー38は、電源オフの状態から操作することで自動的に電源オンとして静止画の撮影モードに移行する一方で、電源オンの状態から繰返し操作することで、静止画モード、動画モードを循環的に設定する。静止画モードは、静止画を撮影するためのモードである。また、動画モードは、動画を撮影するためのモードである。
前記シャッタキー37は、これらの撮影モードに共通に使用される。すなわち、静止画モードでは、シャッタキー37が押下されたときのタイミングで静止画の撮影が行われる。動画モードでは、シャッタキー37が押下されたときのタイミングで動画の撮影が開始され、シャッタキー37が再度押下されたときにその動画の撮影が終了する。
再生モードキー39は、電源オフの状態から操作することで自動的に電源オンとして再生モードに移行する。光学ファインダ40は、撮影時にユーザが撮影対象となる被写体を光学的に確認するためのものである。ストロボキー41は、ストロボモードを設定する場合に用いられる。ズームキー42は、光学的ズームあるいはデジタルズームを行う場合に用いられる。メニューキー43は、各種メニュー項目等を選択する際に操作する。カーソルキー44は、上下左右各方向への項目選択用のキーが一体に形成されたものであり、このカーソルキー44の中央に位置するセットキー45は、その時点で選択されている項目を設定する際に操作する。
また、カメラ本体32の背面32bには、表示部47が設けられている。この表示部47は、バックライト付きのカラー液晶パネルで構成されるもので、撮影モード時には電子ファインダとしてスルー画像のモニタ表示を行う一方で、再生モード時には選択した画像等を再生表示する。
また、カメラ本体32の底部には、上述した防水ハウジング11のセンサユニット18などと接続するための外部入出力コネクタ48や、記録媒体として用いられるメモリカードや電池を収納するためのメモリカード/電池収納部49が設けられている。
次に、デジタルカメラ31の回路構成について説明する。
図5はデジタルカメラ31の回路構成を示すブロック図であり、防水ハウジング11の中にデジタルカメラ31を収納した状態を示している。
デジタルカメラ31には、マイクロコンピュータからなる制御回路51が備えられている。制御回路51は、ROMなどからなるプログラムメモリ51aに予め記憶された撮影制御用のプログラムを読み込むことで各種処理を実行する。
この制御回路51には、シャッタキー37の他、各種操作キー52が入力回路53を介して接続される。各種操作キー52としては、図4に示した撮影モードキー38、再生モードキー39、ストロボキー41、ズームキー42、メニューキー43、カーソルキー44、セットキー45、DISPキー46などが含まれる。
また、このデジタルカメラ31には、VRAMなどからなる表示メモリ54と、この表示メモリ54に記憶されたデータに従って表示部47を駆動制御する表示制御部55が備えられると共に、静止画/動画の信号処理を行う画像信号処理部56などが備えられている。
また、記録手段として、フラッシュメモリなどからなるデータメモリ57が予め備えられていると共に、メモリカードなどの外部メモリ58がメモリカード/電池収納部49に着脱可能に装着され、外部メモリインタフェース59を介して制御回路51に接続される。
その他、メモリカード/電池収納部49に収納された電池パック60を電源として各部の動作に必要な電圧を供給する電源制御部61、クレードルやPCなどの外部機器とのインタフェース処理を行う外部入出力インタフェース62などが備えられている。この外部入出力インタフェース62には、コネクタ26,48を介してセンサユニット18の制御チップ18aが接続される。この制御チップ18aには、センサユニット18に搭載された水深センサ、水温センサ、透明度センサなどの各種センサ類の信号処理回路や制御回路、これらのセンサの計測データを記憶するメモリなどが設けられている。
一方、このデジタルカメラ31の撮像部63には、フォーカスレンズ、ズームレンズを含む多数の光学系レンズからなる撮影レンズ33と、この撮影レンズ33の光軸上に配設される絞り機構64、ハーフミラー65、シャッタ機構66、撮像素子67が設けられる。撮像素子67は、CCD(charge coupled device)の各画素の表面に、R(赤)、G(緑)、B(青)のカラーフィルタが配設されたカラーイメージセンサからなる。この撮像素子67は、被写体の画像データを取得するための撮像手段として機能する。
また、この撮像部63には、フォーカスレンズ、ズームレンズを所定の範囲内で移動させるレンズ駆動部68、絞り機構64やシャッタ機構66を駆動するためのシャッタ/絞り駆動部69、ハーフミラー65の反射経路に設置される測光センサ70などが設けられている。
また、撮像素子66を通じて得られる画像データを構成する各画素の信号を処理するための信号処理回路71、撮像素子65を駆動するためのタイミング制御&ドライバ72、さらにストロボ35とそのストロボ35を発光駆動するためのストロボ駆動回路73などが設けられている。前記信号処理回路71は、CDS(相関二重サンプリング回路)/AGC(オートゲインコントロール回路)、A/D、AWB(オートホワイトバランス回路)などからなり、各画素信号のサンプリングノイズの低減や信号レベルの調整などを行う。AGCによるゲインコントロールには、露光時に適正露出が得られなかった場合の感度調整機能としての役割も備える。
なお、この撮像部63の回路構成については、一般的なデジタルカメラと同様であり、図5に示した構成に限定されるものではない。
次に、前記構成のデジタルカメラ31による水中撮影時の処理動作を説明する前に、理解を容易にするため、水中での光の減衰について、図6および図7を参照して簡単に説明する。
図6は水中での光の減衰とRGBの各色成分のヒストグラムとの関係を示す図である。なお、このヒストグラムは、例えば256階調で画像の明暗の部分を表しており、左側の階調数を0(黒)、右側の階調数を255(白)としている。
陸上にて適正露出で標準的な被写体を撮影した画像の場合、RGBの各色成分でそれぞれにバランスのとれた分布が得られる。しかし、水中では、光の減衰による色の変化があり、RGBの各色成分別に見ると、水深に応じてR(赤)成分の分布は左側(暗部側)、B(青)成分は右側(明部側)にシフトすることになる。
すなわち、水面近くでは、陸上と同じ色合いに見えても、水深が深くなるに連れて、赤、橙、黄…といったように、各波長の光が水に吸収されて、くすみはじめる。水深10m程度にすると、赤の区別が付かなくなり、さらに深い場所では、青や緑の光だけが残る。この場合、デジタルカメラでは、G(緑)成分を中心に露出を決定しているので、RGBの各色成分別のヒストグラムで見ると、G(緑)成分の分布の山が真ん中に残る。これに対し、R(赤)成分はアンダー、B(青)成分はオーバとなる。
図7に水中画像のRGBの各色成分のヒストグラムの一例を示す。
RGBの各色成分を合わせた全体輝度では略中央に山があり、輝度バランスの良い画像であっても、各色成分別では、R(赤)成分はアンダー、B(青)成分はオーバとなる。上述したように、デジタルカメラでは、緑を中心に露出を決定しているので、水中画像では、R(赤)成分は露出不足(つまり、暗い画像)、B(青)成分は露出オーバ(つまり、明るい画像)になりやすい。
次に、このような水中での色変化を補正可能とするデジタルカメラ31の撮影動作について説明する。
なお、以下の各フローチャートで示される処理は、このデジタルカメラ31に搭載されたマイクロコンピュータである制御回路51がROM等に記憶されたプログラムを読み込むことにより実行される。また、後述する他の実施形態の処理についても同様であり、制御回路51がこれらの処理を実現するためのプログラムを読み込むことで実行される。
図8は第1の実施形態におけるデジタルカメラ31の水中撮影モード時の撮影処理を示すフローチャートである。
「水中撮影モード」は、図1および図2に示したような防水ハウジング11を用いて、水中で撮影を行う場合の専用モードである。この「水中撮影モード」は、撮影モードキー38の操作により撮影モードに切り替えた状態で、例えばメニューキー43の操作によって表示されるメニュー画面上で任意に設定可能である。「水中撮影モード」が設定されていない場合には(ステップA11のNo)、その他の撮影モードに対応した処理が実行される(ステップA12)。
「水中撮影モード」が設定されている場合には(ステップA11のYes)、デジタルカメラ31に搭載された制御回路51により、以下のような水中撮影用の処理が実行される。
すなわち、まず、制御回路51は、防水ハウジング11に設けられたセンサユニット18から水深、水温などの各種センサ計測データを外部入出力インタフェース62を介して読み込む(ステップA13)。
続いて、制御回路51は、露出などの撮影条件を設定する(ステップA14)。また、制御回路51は、測光処理、WB(ホワイトバランス)処理、ズーム処理、AF(オートフォーカス)処理などを行った後(ステップA15,A16)、撮像素子67を通じて被写体のスルー画像を取得し、そのスルー画像のRGBの各色成分別に輝度分布を表わすヒストグラムを算出する(ステップA17)。
ここで、制御回路51は、前記各種センサ計測データに含まれる水深データをチェックし、現在の水深値が所定値T1以上であるか否かを判断する(ステップA18)。所定値T1は、例えば3mである。その結果、現在の水深が所定値T1未満であれば(ステップA18のNo)、制御回路51は、水中での光の減衰による影響は少ないものと判断し、前記ステップA14で設定した撮影条件に従った通常の露出処理を行う(ステップA19)。
一方、所定値T1以上であった場合には(ステップA18のYes)、次に制御回路51は、現在の水深値が所定値T2以上であるか否かを判断する(ステップA20)。所定値T2は、前記所定値T1よりも大きく(T2>T1)、例えば15mである。その結果、所定値T2未満であった場合には(ステップA20のNo)、制御回路51は、水中での光の減衰による影響ありと判断し、まず、第1の補正処理として、水深に応じてRGBの各輝度分布の山の多くの部分が所定の感度範囲に入るように、撮影条件の1つである撮像素子67の露出あるいは感度(ISO感度)を補正する(ステップA21)。
また、所定値T2以上であった場合、つまり、さらに深い場所であれば(ステップA22のYes)、制御回路51は、水中での光の減衰による影響をかなり受けるものと判断し、第2の補正処理として、水深に応じてG(緑)成分とB(青)成分の輝度分布が共に所定の感度範囲に入るように、撮像素子67の露出あるいは感度(ISO感度)を補正する(ステップA22)。
このときの様子を、図9を参照して説明する。
図9(a)は陸上での撮影で得られる標準的画像のRGBの輝度分布を示すヒストグラム、同図(b)は水中での撮影で得られる標準的画像でのRGBの輝度分布を示すヒストグラムである。既に説明したように、水中では、光の減衰により、水深が深くなるに連れてR(赤)成分とB(青)成分の輝度分布が中心から離れていき、最終的にR(赤)成分は露出アンダー、B(青)成分は露出オーバとなり、くすんだ色合いの画像になる。
そこで、同図(c)に示すように、RGBの各色成分毎に輝度分布の山の多くの部分が所定の感度範囲内(つまり、0〜255の階調範囲内)に入るように、特に、水中での光の減衰による影響を受けて階調の暗部側に偏るR(赤)成分と階調の明部側に偏るB(青)成分の輝度分布の山がそれぞれ暗部と明部の中心付近に来るように、撮影前に現在の水深に応じて絞り値やシャッタ値を調整して露出を補正するか、あるいはCCDのゲインを調整して感度を補正してから撮影を行うようにする。
また、さらに深い場所では、同図(d)に示すように、光の減衰による影響を最も受けるR(赤)成分の輝度が消失してしまうことになる。そこで、G(緑)成分とB(青)成分の輝度分布が共に感度範囲内に入るように露出あるいは感度を補正する。
この場合、RGBの各色成分について、どの程度補正するのかは、その都度、水深に応じて適宜計算しても良いし、予め水深の値に対して適切な補正値が設定されたテーブルを参照することで求めても良い。
図10は水深に応じて感度補正を行う場合に用いるRGB毎の利得制御装置の構成を示す図である。
撮影レンズ33を通して入射された光は絞り機構64、シャッタ機構66を介して撮像素子67にて受光され、各画素毎に受光量に応じた電気信号に変換されて出力される。この撮像素子67の出力信号は、信号処理回路71に含まれるCDS/AGC71a、A/D変換器71bを介してデジタルの画像信号に変換されてRGB利得制御装置80に入力される。
このRGB利得制御装置80は、入力された画像信号をRGB毎に分離する色分離回路81、R(赤)成分とB(青)成分の利得(ゲイン)を調整する利得調整回路82,83、RGBの各信号の処理を行う画像信号処理回路84、RGB別に輝度分布を表わすヒストグラムを生成するヒストグラム処理回路85、RGBの利得制御を行うRGB利得制御回路86、予め水深に応じた補正値が設定された変換テーブル87からなる。
一方、センサユニット18に搭載された水深センサ91によって現在の水深が測定される。この水深センサ91は、例えば圧力センサからなり、水圧に応じて変化するシリコン・ダイアフラム上の拡散抵抗(ひずみ抵抗)の値を水深値として検出する。図中の92はそのセンサ駆動回路&増幅回路、93はA/D変換器である。水深センサ91によって測定された水深データは、デジタル信号に変換された後、RGB利得制御装置80に入力される。
RGB利得制御装置80は、この水深センサ91から得られる水深データに基づいてRGBの各信号の出力毎に利得を調整する。この場合、R(赤)成分は水深が深いほど利得を上げて、B(青)成分は水深が深いほど利得を下げるように制御する。これにより、図9に示したように、水中での光の減衰によって変化するR(赤)成分とB(青)成分の輝度信号を調整可能とする。
図11は水深に応じて感度補正を行う場合に用いるRGB毎の利得制御装置の別の構成を示す図である。図中の100はRGB利得制御装置であり、水中RGB利得制御と陸上ホワイトバランス制御を兼ねている。
このRGB利得制御装置100は、入力された画像信号をRGB毎に分離する色分離回路101、RGBの各色成分の利得(ゲイン)を調整する利得調整回路102,103,104、RGBの各信号の処理を行う画像信号処理回路105、ヒストグラム処理を含む全体の制御処理を行う制御部106、RGBの利得制御を行うRGB利得制御回路107、色温度データまたは水深データを選択する選択回路109、WB(ホワイトバランス)用の色温度検出回路108からなる。
また、この利得制御装置では、水深センサ91に加え、色温度センサ94を備える。この色温度センサ94も前記水深センサ91と共にセンサユニット18に搭載されており、その出力信号は色温度検出回路108に入力される。
このような構成において、RGB利得制御装置100は、陸上撮影では画像信号の色差成分の差、もしくは、色温度センサ94によって得られる色温度データに基づいて、RGBの利得を調整してホワイトバランスの制御を行う。一方、水中撮影では、水深センサ91によって得られる水深データに基づいて、RGBの利得を調整して水中での色吸収の補正処理を行う。
図8に戻って、制御回路51は、被写体のスルー画像を撮影条件、各種センサ計測データ、RGBのヒストグラムと共に表示部47の画面上にモニタ表示する(ステップA23)。
この状態で、例えばシャッタキー37の押下などにより撮影指示があると(ステップA24のYes)、制御回路51は所定の撮影処理を行って撮影画像を取り込み(ステップA25)、その画像データをJPG等により符号化処理した後、データメモリ57または外部メモリ58に記録する(ステップA26)。また、その際に、制御回路51は各種計測データを読み込み(ステップA27)、前記画像データに関連付けて撮影日時、各種センサ計測データを記録する(ステップA28)。
最後に、記録した撮影画像が各種センサ計測データと共に表示部47にレビュー表示されて(ステップA29)、ここでの処理が終了する。
このように、水中撮影を行う場合において、その撮影前に水深に応じて露出や感度などの撮影条件が補正されるので、撮影者が特に意識しなくとも、水中での光の減衰に伴う色変化を適切に補正して良好な撮影画像を得ることができる。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
前記第1の実施形態では、撮影前に露出あるいは感度を補正することで水中での色変化に対処するようにしたが、第2の実施形態では、撮影後にその撮影画像のRGBの各色成分別に輝度分布を補正することを特徴とする。
なお、デジタルカメラ31の構造や回路構成などについては前記第1の実施形態と同様であるため、ここでは処理的な違いについて説明する。
図12は本発明の第2の実施形態におけるデジタルカメラ31の水中撮影モード時の撮影処理を示すフローチャートである。
上述したように、「水中撮影モード」は、図1および図2に示したような防水ハウジング11を用いて、水中で撮影を行う場合の専用モードである。この「水中撮影モード」は、撮影モードキー38の操作により撮影モードに切り替えた状態で、例えばメニューキー43の操作によって表示されるメニュー画面上で任意に設定可能である。「水中撮影モード」が設定されていない場合には(ステップB11のNo)、その他の撮影モードに対応した処理が実行される(ステップB12)。
「水中撮影モード」が設定されている場合には(ステップB11のYes)、デジタルカメラ31に搭載された制御回路51により、以下のような水中撮影用の処理が実行される。
すなわち、まず、制御回路51は、防水ハウジング11に設けられたセンサユニット18から水深、水温などの各種センサ計測データを外部入出力インタフェース62を介して読み込む(ステップB13)。
続いて、制御回路51は、露出などの撮影条件を設定する(ステップB14)。また、制御回路51は、測光処理、WB(ホワイトバランス)処理、ズーム処理、AF(オートフォーカス)処理などを行った後(ステップB15,B16)、撮像素子67を通じて被写体のスルー画像を取得し、そのスルー画像を撮影条件、各種センサ計測データと共に表示部47の画面上にモニタ表示する(ステップB17)。
この状態で、例えばシャッタキー37の押下などにより撮影指示があると(ステップB18のYes)、制御回路51は所定の撮影処理を行って撮影画像を取り込み(ステップB19)、その画像データをJPG等により符号化処理した後、データメモリ57または外部メモリ58に記録する(ステップB20)。
ここで、制御回路51は、前記各種センサ計測データに含まれる水深データをチェックし、現在の水深値が所定値T1以上であるか否かを判断する(ステップB21)。所定値T1は、例えば3mである。その結果、現在の水深値が所定値T1未満であれば(ステップB21のNo)、制御回路51は、水中での光の減衰による影響は少ないものと判断し、当該撮影画像に対する輝度補正を行うことなく、ステップB25に進む。
一方、現在の水深値が所定値T1以上であった場合には(ステップB21のNo)、制御回路51は、水中での光の減衰による影響ありと判断し、まず、当該撮影画像のRGBの各色成分別に輝度分布を表わすヒストグラムを算出する(ステップB22)。そして、制御回路51は、これらのヒストグラムに基づいて各色成分の輝度分布(特に、R(赤)成分とB(青)成分の輝度分布)が所定の感度範囲一杯に広がるように所定の輝度変換処理を行う(ステップB23)。なお、このときの輝度変換処理については、後に詳しく説明する。
制御回路51は、その輝度変換後の画像データをJPG等により符号化処理した後、当該撮影画像(つまり、変換前の画像データ)と対応付けてデータメモリ57または外部メモリ58に記録する(ステップB24)。この場合、輝度変換後の画像データをメモリに上書きしないのは、撮影者の好みなどによっては、水中での撮影画像特有の色合いをそのまま残しておきたいこともあるためである。
このようにして撮影画像を必要に応じて輝度変換した後、制御回路51は各種計測データを読み込み(ステップB25)、前記画像データに関連付けて撮影日時、各種センサ計測データを記録する(ステップB26)。
最後に、記録した撮影画像が各種センサ計測データと共に表示部47にレビュー表示されて(ステップB27)、ここでの処理が終了する。
次に、前記ステップB23で実行される輝度変換処理について説明する。
図13(a)は陸上での撮影で得られる標準的画像のRGBの輝度分布を示すヒストグラム、同図(b)は水中での撮影で得られる標準的画像でのRGBの輝度分布を示すヒストグラムである。既に説明したように、水中では、光の減衰により、水深が深くなるに連れてR(赤)成分とB(青)成分の輝度分布が中心から離れていき、最終的にR(赤)成分は露出アンダー、B(青)成分は露出オーバとなり、くすんだ色合いの画像になる。
そこで、同図(c)に示すように、RGBの各色成分の輝度分布の幅が所定の感度範囲(0〜255の階調範囲)一杯に広がるように、具体的には、水中での光の減衰による影響を受けて階調の暗部側に偏るR(赤)成分の輝度分布を明部側に引き延ばし、階調の明部側に偏るB(青)成分の輝度分布を暗部側に引き延ばすように各色成分別に輝度を変換する。
ここで、図14乃至図17を参照して、さらに詳しく説明する。
図14は画像処理の一般モデルを示しており、入力画像f(i,j)の各画素の輝度値(または階調値)、あるいは、その周辺の画素配列に所定の変換表を参照しながら所定の画像処理演算を施し、出力画像g(i,j)あるいは特徴量を出力するものである。
前記変換表としては、例えば、輝度変換などの入出力特性の変換式や、変換用のルックアップ・テーブル、加重マトリックス(行列)、空間フィルタ係数などの演算子(オペレータ)等を利用すればよい。
前記画像処理演算には、(1)点処理演算としては、輝度や濃度のヒストグラム変換処理、2値化処理、座標変換処理、画像間演算など、(2)該当点と周囲8点等を対象にする局所処理演算としては、ノイズ除去演算、微分演算、積和演算、フィルタ演算、エッジ抽出処理、膨張収縮処理、細線化処理など、(3)画像全体に演算を施す大局処理演算としては、フーリエ変換などの直交変換演算、テクスチャー解析処理などを適用できる。
このような画像処理の一般モデルに準じて、以下に説明する。
図15および図16は輝度ヒストグラムの変換方法を説明するための図である。入力輝度のヒストグラムP(x)を線形や非線形の変換式によって異なる特性の出力輝度ヒストグラムP(y)に変換することを表している。
図15は線形の変換式を用いた場合であり、「0≦x<a」のときにy=u、「a≦x≦b」のときにy={(v−u)/(b−a)}{x−a}+u、「b<x≦xmax」のときにy=vといった変換式を用いて、a−b間のダイナミックレンジが狭いコントラストの悪い入力画像の輝度分布P(x)をu−v間に広げることで、コントラストや中間階調階の濃淡表現を改善する方法である。これは、変換式の定数の設定を変えれば、ダイナミックレンジ幅の拡大だけでなく、逆に幅の収縮や、ヒストグラムの左右平行シフト(分布全体の輝度を少し上げる、少し下げる)等にも応用できる。
図16(a)、(b)、(c)は線形の変換式を用いた場合である。そのうち、図16(a)はy=v(x/b)2といった非線形の変換式により、画像の輝度を(輝度が低いものほど)分布全体に少し暗くする場合、同図(b)はy=−v{(x−b)/b}2+v、y/v=log(1+μ・x/b)/log(1+μ)といった非線形の変換式により、画像の輝度を(輝度が高いものほど)分布全体に少し明るくする補正処理の例を示している。
また、同図(c)は、「0≦x<b/2」のときにy=(v/2)(2x/b)2、「b/2≦x≦b」のときにy=−(v/2){2(x−b)/b}2+vといったS字状の非線形の変換式を用いて、輝度が高い領域の輝度を少し上げ、輝度が低い領域の輝度を少し下げて、階調表現のトーンカーブ(色調曲線)やコントラストを改善する補正処理の例を示している。
このように、線形または非線形の変換式を用いることで、画像の輝度や濃度のヒストグラム分布を伸張や収縮、移動、変換することができる。
水中撮影では、水深が深くなるに連れ、R(赤)成分が水に吸収されて弱まる。この場合、多くのデジタルカメラでは、G(緑)成分周辺の波長域を重点に露出設定や感度設定が行われるので、結果的にB(青)成分も感度範囲から上にはみ出していく。これを補正するためには、一般の画像の露出補正とは異なり、前記のようなヒストグラム分布の変換をRGBの各色成分別に行う必要がある。
そこで、例えば図15に示した変換式であれば、R(赤)成分については、x=fR(i,j)、y=gR(i,j)とし、変換前画像f(i,j)のR成分の実際の輝度分布の最小値aR、最大値bR、変換後の画像g(i,j)の所望の輝度分布の下限値uR、上限値vRを図15の変換式のa、b、u、vにそれぞれ代入する。これにより、以下のような輝度変換を行う。
「min≦fR(i,j)<aR」のときにgR(i,j)=uR、
「aR≦fR(i,j)≦bR」のときにgR(i,j)={(vR−uR)/(bR−aR)}
{fR(i,j)−aR}+uR、「bR<fR(i,j)≦max」のときにgR(i,j)=vR
G(緑)成分、B(青)成分についても同様の変換を行えば良い。ただし、G(緑)成分は補正変換せずに元画像のまま、つまり、gG(i,j)=fG(i,j)としても良い。
以上のような変換処理を(m×n)画素の画像f(i,j)(i=0〜m−1,j=0〜n−1)の全画素に渡って行えば、所望の輝度分布に変換した画像g(i,j)(i=0〜m−1,j=0〜n−1)を得ることができる。
図17にこのときの変換処理の一例を示す。なお、この変換処理は制御回路51が所定のプログラムを読み込むことで実行される。
すなわち、制御回路51は、撮影済みの画像f(i,j)を入力すると(ステップC11)、その画像f(i,j)の画素数情報から横画素数mと縦横画素数nを得る(ステップC12)。そして、制御回路51は、RGBの各成分別に画像f(i,j)の各階調(k)毎の画素頻度を計数することで、それぞれの輝度分布を表したヒストグラムを集計する(ステップC13)。
ここで、各成分別の輝度変換に際し、制御回路51は、当該画像f(i,j)におけるRGB成分別の輝度分布の最小値(aR、aG、aB)と最大値(bR、bG、bB)を取り込むと共に(ステップC14)、変換後の輝度分布の最小値(uR、uG、uB)と最大値(vR、vG、vB)を設定する(ステップC15)。
そして、制御回路51は、所定の変換式に従って、iとjの値を更新しながら、変換後の画像g(i,j)の輝度値を算出する処理を行う(ステップC16)。この例では、RB成分のみ輝度変換し、G(緑)成分は変換しない場合を示している。また、変換式として、「f(i,j)<a」のときにg(i,j)=u、「a≦f(i,j)≦b」のときにg(i,j)={(v−u)/(b−a)}{f(i,j)−a}+u、「b<f(i,j)」のときにg(i,j)=vとした場合である。
このようにして、RGB成分別に輝度値を変換して画像g(i,j)が得られると、制御回路51はこれを記録対象画像として出力する(ステップC17)。
なお、RGB成分別に輝度分布を変換する場合に、変換後の輝度分布の下限値u、上限値vを適宜設定することで、以下のような変換を行うことができる。
(1)まず、基本的な変換方法として(図12のステップB23に示した変換方法)、撮影画像のR(赤)成分やB(青)成分の各輝度分布を感度範囲(ダイナミックレンジ)一杯の領域にできるだけ広がるように変換する(uR=uB=min値、vR=vB=max値とする)。この場合、R(赤)成分については輝度分布内の所定輝度以上の部分(例えば最高値から1%部分)を明度側に広げ、B(赤)成分については所定輝度以下の部分(例えば最小値から1%部分)を暗度側に広げるようにしても良い。
(2)また、例えばB(青)成分が露出オーバ気味であり、輝度は高いが、R(赤)成分が水に吸収されて減衰し、露出アンダーになってしまった撮影画像であれば、残っているR(赤)成分の輝度分布を右側つまり明部側に平行シフトして強める(uR=aR+c、vR=bR+c)。逆に、白飛びしてはみ出しそうなB(青)成分の輝度分布を左側つまり暗部側に平行シフトして弱める(uB=aB−d、vB=bB−d)といった変換処理を行う。
(3)また、撮影画像のR(赤)成分やB(青)成分の分布幅がG(緑)成分の輝度分布のそれと略同じになるように変換する(uR=aR、vR=uR+(bG−aG);vB=bB、uB=vB−(bG−aG))。
(4)また、撮影画像のR(赤)成分やB(青)成分の分布が、G(緑)成分の輝度分布の中央値Median(もしくは、最頻値、平均値など)を中心に広がって分布するように変換する(uR=uB=Median(fG(i,j))−(bG−aG)/2、vR=vB=Median(fG(i,j))+(bG−aG)/2)。
(5)あるいは、撮影画像のR(赤)成分やB(青)成分の分布の中央値(もしくは、最頻値、平均値など)などの統計値が、G(緑)成分の輝度分布のそれと略同じになるように変換しても良い。
いずれの方法も、R(赤)成分は右側方向(輝度が明るい方)に分布幅や分布域を広げ、逆に、B(青)成分は左側方向(輝度が暗い方)に分布幅や分布域が広がるように補正されることになる。
なお、変換処理や変換後の分布幅や分布域(下限値u,および上限値v)等の設定はRGBの各色成分毎に別々に行うが、変換式は同じものを用いることができる。また、RGBの各色成分毎に変換式を切り替えたり、水中撮影画像専用の変換式を用いたりしても良い。さらに、水深の情報も加味して、そのときの変更量(分布を広げる範囲や並行シフトの量)を決定するようにしても良い。
このように、撮影画像のRGBの各成分毎に輝度変換を行うことで、輝度分布の偏りを調整することができる。したがって、前記第1の実施形態同様に、撮影者が特に意識しなくとも、水中での色変化を補正した良好な撮影画像を簡単に得ることができる。
なお、前記各実施形態では、カメラに搭載された水深センサを用いて現在の水深データを取得する構成としたが、このようなセンサ類を設けずに、例えばユーザのスイッチ操作によって、現在の水深データ(○○m、○○ftなど)の値を入力もしくは選択する水深入力手段を設けて、その入力された水深データの値に応じて、撮影画像の各色成分別のヒストグラムを補正や変換処理するように構成しても良い。
また、前記各実施形態では、防水ハウジングを用いて水中撮影を行うデジタルカメラを想定して説明したが、本発明はこれに限られるものではなく、水中専用のデジタルカメラでも同様に適用可能である。また、デジタルカメラに限らず、水中での撮影が可能な撮像機能を備えた電子機器であれば、そのすべてに適用可能である。
要するに、本発明は前記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
また、上述した実施形態において記載した手法は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク(フレキシブルディスク、ハードディスク等)、光ディスク(CD−ROM、DVD−ROM等)、半導体メモリなどの記録媒体に書き込んで各種装置に適用したり、そのプログラム自体をネットワーク等の伝送媒体により伝送して各種装置に適用することも可能である。本装置を実現するコンピュータは、記録媒体に記録されたプログラムあるいは伝送媒体を介して提供されたプログラムを読み込み、このプログラムによって動作が制御されることにより、上述した処理を実行する。
11…防水ハウジング、12…防水ケース、13…ヒンジ部、14…ストッパ、15…バックル、16…ストラップ、17…レンズ窓、18…センサユニット、19…電源用アウターボタン、20…シャッタ用アウターボタン、21…各種アウターボタン、22…表示部保護材、23〜25…防水パッキン、26…接続コネクタ、31…デジタルカメラ、32…カメラ本体、33…撮影レンズ、34…光学ファインダ窓、35…ストロボ、36…電源キー、37…シャッタキー、38…撮影モードキー、39…再生モードキー、40…光学ファインダ、41…ストロボキー、42…ズームキー、43…メニューキー、44…カーソルキー、45…セットキー、46…DISPキー、47…表示部、51…制御回路、52…各種操作キー、53…入力回路、54…表示メモリ、55…表示制御部、56…画像信号処理部、57…データメモリ、58…外部メモリ、59…外部メモリインタフェース、60…電池、61…電源制御部、62…外部入出力インタフェース、63…撮像部、64…絞り機構、65…ハーフミラー、66…シャッタ機構、67…撮像素子、68…レンズ駆動部、69…シャッタ/絞り駆動部、70…測光センサ、71…信号処理回路、72…タイミング制御&ドライバ、73…ストロボ駆動回路。