説明

撮像装置、画像処理装置及びプログラム

【課題】加速度の変化に追従して撮像画像を補正する撮像装置を提供する。
【解決手段】液体レンズを用いて被写体を撮像する撮像部と、液体レンズにかかる加速度を検出する加速度検出部と、加速度検出部が検出した加速度に基づいて、撮像部が撮像した画像を補正する画像補正部とを備える撮像装置が提供される。加速度検出部は、加速度のベクトルを検出し、画像補正部は、加速度検出部が検出した加速度のベクトルに基づいて、撮像部が撮像した画像を補正する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置、画像処理装置及びプログラムに関する。
【背景技術】
【0002】
従来、可撓性レンズにおけるレンズ歪みを画像処理により補正する技術が知られている(例えば、特許文献1参照)。また、液体レンズに印加する電圧を制御することで、重力等によるレンズ歪みを補正する技術が知られている(例えば、特許文献2、3参照)。
特許文献1 特表2000−507415号公報
特許文献2 特開2006−64948号公報
特許文献3 特開2006−64951号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかし、特許文献1に記載の技術は、レンズの一定の歪みを補正するものであり、加速度や重力によってレンズの歪み方が変わったときにレンズの歪み方に応じて画像処理を行うことができない。また、特許文献2、3に記載の技術は、さまざまに変化する重力方向、加速度方向、加速度量に高速に追従してレンズ歪みを補正することは困難である。
【課題を解決するための手段】
【0004】
上記課題を解決するために、本発明の第1の態様においては、被写体を撮像する撮像装置であって、液体レンズを用いて被写体を撮像する撮像部と、液体レンズにかかる加速度を検出する加速度検出部と、加速度検出部が検出した加速度に基づいて、撮像部が撮像した画像を補正する画像補正部とを備える撮像装置が与えられる。
【0005】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0006】
【図1】第1実施形態にかかる撮像装置のブロック図である。
【図2】レンズ歪みにより得られる点像を概略的に示す。
【図3】第1実施形態にかかる撮像装置100の詳細なブロック図である。
【図4】補正関数選択部160の機能を示すブロック図である。
【図5】第1実施形態にかかる撮像装置100の変形例のブロック図である。
【図6】レンズ制御部と画像補正部40による画像処理のフローチャートである。
【図7】第2実施形態にかかる撮像装置100のブロック図である。
【図8】補正関数算出部190の機能を示すフローチャートである。
【図9】第3実施形態にかかる撮像装置100のブロック図である。
【図10】コンピュータ800のハードウェア構成を示す。
【発明を実施するための形態】
【0007】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0008】
図1は、第1実施形態にかかる撮像装置100の構成を概略的に示す。被写体70を撮像する撮像装置100は、撮像部80と、加速度検出部30と、画像補正部40と、補正関数テーブル50と、メモリ60とを備える。撮像部80は、液体レンズ10及び撮像素子20を有する。液体レンズ10は、水と油のように屈折率が異なりかつ混じり合わない2つの液体が、透明の隔壁に囲まれたキャビティ内に充填されたレンズである。撮像素子20は、液体レンズ10を介して被写体70の画像を取得する。撮像素子20は、例えば、CCD素子、CMOSセンサである。
【0009】
加速度検出部30は、液体レンズ10にかかる加速度を検出する。加速度検出部30は、検出した加速度情報を画像補正部40に提供する。加速度情報は、重力加速度またはその他の加速度の情報を含む。液体レンズ10に含まれる第1の液体と第2の液体の比重が異なるため、液体レンズ10にかかる加速度により、液体界面の形状が変化する。この結果、撮像される画像に歪みが生じる。加速度検出部30は、既存の加速度センサであってよい。
【0010】
具体的には、加速度検出部30は、加速度のベクトルを検出する。ここで、加速度のベクトルとは、液体レンズ10にかかる加速度の方向及び量を指す。より具体的には、加速度ベクトルは、速度ベクトルを時間で微分したものである。加速度検出部30は、x軸、y軸、z軸の各軸における加速度の量を検出する各軸用センサを有してよい。また、加速度検出部30は、液体レンズ10が固定される撮像部80の筐体に取り付けられてよい。
【0011】
また、加速度検出部30は、重力方向を検出する重力センサと、撮像部80の移動速度の変化による加速度情報を検出する加速度センサとを有してよい。加速度センサは、重力センサよりも高周波の加速度変動を検出できることが好ましい。また、加速度検出部30は、単一のセンサにより、重力ベクトルおよび撮像部80の移動速度の変化による加速度ベクトルを合成したベクトルを検出してもよい。
【0012】
画像補正部40は、加速度検出部30が検出した加速度に基づいて、撮像部80が撮像した画像を補正する。具体的には、画像補正部40は、加速度検出部30が検出した加速度のベクトルに基づいて、撮像部80が撮像した画像を補正する。画像補正部40は、撮像素子20が撮像した被写体70の画像と、その画像を撮像したときの液体レンズ10にかかる加速度ベクトルとを対応づけて取得する。
【0013】
補正関数テーブル50は、複数種類の加速度ベクトルに対応して補正関数を格納する。ここで、補正関数とは、液体レンズ10にかかる加速度により生じる画像の歪みを補正するための関数を指す。一例として補正関数は、補正後の画像の各画素の値を、補正前の画像の各画素の値を変数として算出する関数である。当該補正関数は、例えば画像の中央部と端部のように、画像の領域毎に異なる関数である。画像補正部40は、撮像部80が撮像した画像に対応付けられた加速度ベクトルに応じた補正関数を、補正関数テーブル50から取得する。補正関数は、例えば、撮像装置100の出荷前に補正関数テーブル50に格納される。
【0014】
具体的には、補正関数は、撮像装置100にかける加速度ベクトルを順次変化させて、加速度ベクトル毎に既知の被写体を撮像することで算出できる。より具体的には、加速度ベクトル毎に撮像された撮像画像と、歪みが無いレンズを用いて当該既知の被写体を撮像した参照画像との相関関係から補正関数を算出してよい。この場合、撮像画像を参照画像に変換する変換式を加速度ベクトル毎に算出して、当該変換式を補正関数としてよい。また、参照画像を撮像画像に変換する変換式を加速度ベクトル毎に算出して、当該変換式の逆関数を補正関数としてよい。
【0015】
画像補正部40は、補正関数テーブル50から取得した補正関数を用いて、撮像部80が撮像した画像を補正する。メモリ60は、画像補正部40により補正された画像データを格納する。これにより、液体レンズ10の加速度による歪みが補正された画像を取得することができる。
【0016】
このように、画像データ及び加速度情報を対応づけておくことにより、加速度により歪んだレンズを通じて取得した画像の補正をハードウェアではなく、ソフトウェアによる後処理で実行することができる。したがって、加速度が高速に変動するような場合であっても、加速度の変動に追従した画像補正を行なうことができる。また、ハードウェアによる補正よりも加速度による歪みを簡易かつ高精度に補正することができる。
【0017】
なお、画像補正部40は、加速度検出部30が検出した加速度ベクトルと完全に一致する加速度ベクトルに対応する補正関数が、補正関数テーブル50に存在しない場合、加速度検出部30が検出した加速度ベクトルに対する誤差が最も小さい加速度ベクトルに対応する補正関数を、補正関数テーブル50から抽出してよい。また、画像補正部40は、加速度検出部30が検出した加速度ベクトルを複数のベクトルに分解して、それぞれの分解ベクトルに対応する補正関数を、補正関数テーブル50から抽出してもよい。この場合、画像補正部40は、抽出した補正関数を合成して画像を補正してよく、それぞれの補正関数で順番に画像を補正してもよい。
【0018】
また、補正関数テーブル50は、x軸、y軸、z軸のそれぞれについて、基準ベクトルの整数倍の大きさの加速度ベクトルに対応する補正関数を格納してよい。基準ベクトルは、各軸と平行な方向で、大きさが予め定められたベクトルを指す。なお、x軸、y軸、z軸は、それぞれ直交せずともよい。
【0019】
また、画像補正部40は、加速度検出部30が検出した加速度ベクトルと方向が一致する加速度ベクトルに対応する補正関数を、補正関数テーブル50から抽出してよい。画像補正部40は、加速度検出部30が検出した加速度ベクトルの大きさと、補正関数テーブル50から検出した加速度ベクトルの大きさの比に応じて、当該補正関数を補正してよい。例えば画像補正部40は、当該加速度ベクトルの大きさの比に応じて、当該補正関数の係数を変化させる。
【0020】
図2は、加速度によるレンズの歪みにより得られる点像を概略的に示す。点像は、被写体画像102とコマ収差等による画像成分104を有する。液体レンズ10の液体界面が加速度により歪むと、被写体画像102の周囲に、画像成分104があらわれる。どのような画像成分104が現われるかは、液体レンズ10の歪み方により決定される。液体レンズ10の歪みは、加速度ベクトルから求められるので、取得画像を加速度ベクトルに応じて補正することで、画像成分104を補正することができる。
【0021】
図3は、本実施形態にかかる撮像装置100の詳細な構成を示すブロック図である。撮像装置100は、図1に示した撮像装置100の構成に加え、さらに、電圧印加制御部120およびRaw保存メモリ110を有する。電圧印加制御部120は、液体レンズ10に印加する電圧を調節することによって液体界面の形状を変化させる。この場合、液体レンズ10に含まれる2つの液体の少なくとも一方は、導電性水溶液である。電圧印加制御部120は、当該導電性水溶液の複数の領域に印加する電圧を、領域毎に独立して調整してよい。Raw保存メモリ110は、撮像素子20からの撮像画像データを格納し、画像補正部40に出力する。Raw保存メモリ110は、CCD等の撮像素子20が出力する映像信号を記憶する。
【0022】
画像補正部40は、コンボリューション演算装置140、カメラ信号処理部150、補正関数選択部160を有する。補正関数選択部160は、加速度検出部30が検出した加速度ベクトルおよび電圧印加制御部120により液体レンズ10に印加される電圧に基づいて、補正関数テーブル50から補正関数を選択する。本例の補正関数テーブル50は、加速度ベクトルおよび液体レンズ10に印加される電圧の双方に対応付けて、補正関数を格納する。コンボリューション演算装置140は、補正関数選択部160からの補正関数を用いて、Raw保存メモリ110からの映像信号を補正する。本例のコンボリューション演算装置140は、液例レンズ10に加速度による歪みがない場合に、撮像素子20が出力する映像信号を生成する。
【0023】
カメラ信号処理部150は、コンボリューション演算装置140が補正した映像信号を受信し、当該映像信号をカメラ出力信号に変換する。カメラ出力信号とは、表示装置等に供給される画像データである。カメラ信号処理部150は、映像信号から、画像データの各画素値を算出してよい。カメラ信号処理部150は、撮像素子20から出力された映像信号に対して、A/D変換、補間演算、色空間変換、ガンマ補正、収差補正、ノイズリダクション、画像圧縮等の処理を行う。
【0024】
ここで、画像補正部40での画像処理の方法について説明する。被写体fからの光が液体レンズ10を通過することによって画像gが取得されるとすると、以下のように、画像gは、fとHとのコンボリューションで表される。
【数1】

【0025】
ここで、Hは撮像部80の点広がり関数を表す。点広がり関数とは、点光源を撮影したときに、撮像部80が取得する画像における点像の分布を示す。液体レンズ10によって歪んだ画像gから被写体fの画像を復元するには、以下の関係を利用する。
【数2】

【0026】
ここでH−1は、点広がり関数Hの逆行列であり、画像gの補正関数である。つまり、歪んだ画像gに補正関数H−1をコンボリューション演算することにより、被写体画像fを復元することができる。補正関数H−1は以下のような行列であってよい。
【数3】

【0027】
ここで、行及び列の数がカーネルサイズ、行列の各要素(a、b、c・・・)が画像補正パラメータに相当する。液体レンズ10の点広がり関数Hは、液体レンズ10に印加する電圧や加速度ベクトルによって変化する。そのため、補正関数H−1のカーネルサイズ、補正パラメータも、以下のH−1、Hn+1―1のように動的に変化する。画像補正部40は、液体レンズ10に印加する電圧及び加速度ベクトルに基づいて、最適な補正関数H−1を選択する。
【数4】

【0028】
画像補正部40は、複数種類の加速度のベクトルと、画像を補正するのに用いる補正関数との関係を予め補正関数テーブル50に格納してよい。画像補正部40は、加速度検出部30が検出した加速度のベクトルに対応する補正関数を用いて、画像を補正する。つまり、画像補正部40は、複数種類の加速度ベクトルに対応して画像補正を行うことができる。
【0029】
図4は、本実施形態にかかる補正関数選択部160の動作を示す。補正関数選択部160は、電圧印加制御部120からの印加電圧量、加速度検出部30からの加速度情報に基づいて、補正関数テーブル50から最適な補正関数H−1を選択する。
【0030】
ステップ1において、補正関数選択部160は、電圧印加制御部120が液体レンズ10に印加する印加電圧量を取得する。印加電圧量は、パラメータV1・・・Vnで表される。本例の補正関数選択部160は、印加電圧量として例えばV2を取得する。ステップ2において、補正関数選択部160は、液体レンズ10に対する重力方向を、加速度検出部30から取得する。
【0031】
液体レンズ10に対する重力方向とは、例えば液体レンズ10の光射出面に対する重力方向の傾きを指す。重力方向は、パラメータG1・・Gnで表される。本例の補正関数選択部160は、重力方向として例えばG3を取得する。
【0032】
ステップ3において、補正関数選択部160は、撮像部80の移動速度の変化により液体レンズ10にかかる加速度情報を、加速度検出部30から取得する。加速度情報は、A1・・・Anで表される。補正関数選択部160は、加速度情報として例えばAn−2を取得する。最後にステップ4において、補正関数選択部160は、印加電圧量(本例ではV2)、重力方向(本例ではG3)、および、加速度情報(本例ではAn−2)の組み合わせに応じて、映像信号を補正する補正関数H−1を取得する。補正関数は、印加電圧量(本例ではV2)、重力方向(本例ではG3)、および、加速度情報(本例ではAn−2)の全ての組み合わせに対して与えられる。補正関数として、ステップ3で取得した加速度情報An−2に対応する補正関数H−1を選択してよい。
【0033】
補正関数テーブル50は、出荷時に取得した補正関数H−1を格納する。補正関数選択部160は、電圧印加制御部120からの印加電圧量及び加速度検出部30からの重力方向および加速度情報に基づいて、最も適した補正関数H−1を補正関数テーブル50から選択する。補正関数選択部160は、選択した補正関数H−1をコンボリューション演算装置140に送信する。コンボリューション演算装置140は、補正関数H−1と、映像信号とをコンボリューション演算することにより、撮像素子20が出力した映像信号を補正する。
【0034】
図5は、本実施形態にかかる撮像装置100の変形例を示す。本例において、撮像装置100は、図3に示す撮像装置100の構成に加え、さらに、温度検出部112、撮像制御部114、及び距離検出部116を備える。温度検出部112は、液体レンズ10の温度を検出する。この場合、画像補正部40は、液体レンズ10の温度毎に、補正関数を格納する。つまり、補正関数テーブル50は、液体レンズ10の温度にさらに対応付けて補正関数を格納する。画像補正部40は、撮像部80が画像を撮像したときに温度検出部112が検出した温度にさらに対応する補正関数を用いて当該画像を補正する。これにより、画像補正部40は、液体レンズ10の温度変化に追従して映像信号を精度よく補正することができる。
【0035】
撮像制御部114は、撮像部80における焦点距離を制御する。撮像制御部114は、電圧印加制御部120が液体レンズ10に印加する電圧を制御することで、液体レンズ10の焦点距離を制御してよい。この場合、画像補正部40は、撮像部80における焦点距離毎に、補正関数を格納する。つまり、補正関数テーブル50は、焦点位置にさらに対応付けて補正関数を格納する。画像補正部40は、撮像部80が画像を撮像したときの撮像部80における焦点距離にさらに対応する補正関数を用いて画像を補正する。これにより、画像補正部40は、焦点距離の変化に追従して映像信号を精度良く補正することができる。
【0036】
距離検出部116は、液体レンズ10から被写体70までの距離を検出する。この場合、画像補正部40は、距離検出部116が検出する距離毎に、補正関数を格納する。つまり、補正関数テーブル50は、液体レンズ10から被写体70までの被写体距離にさらに対応付けて補正関数を格納する。画像補正部40は、撮像部80が画像を撮像したときに距離検出部116が検出した距離に対応する補正関数を用いて画像を補正する。これにより、画像補正部40は、液体レンズ10から被写体70までの距離の変化に追従して映像信号を精度良く補正することができる。撮像装置100は、温度検出部112、撮像制御部114、および、距離検出部116のうち、いずれか1つまたは2つを有してよい。
【0037】
尚、画像補正部40は、撮像部80が撮像した画像と、当該画像を撮像したときの加速度のベクトルとに基づいて、当該加速度のベクトルに対応する補正関数を算出して格納してよい。つまり、画像補正部40は、撮像装置100の出荷後に、既知の被写体70を撮像装置100に撮像させ、そのときの加速度ベクトルに基づいて、補正関数を更新してよい。具体的には、ある加速度が印加された液体レンズ10により撮像した画像と、歪みの無い液体レンズ10を用いて既知の被写体を撮像した参照画像とを比較し、それらの間の相関関係から、当該加速度における補正関数を算出してよい。こうすることにより、画像補正部40は、出荷後において加速度に応じた補正関数を学習し、更新することができる。その結果、映像信号をより精度良く補正することができる。
【0038】
図6は、電圧印加制御部120によるレンズ制御と、画像補正部40による画像処理の動作の一例を表す。ここで、電圧印加制御部120は、液体レンズ10におけるレンズ形状を制御するレンズ制御部として機能する。電圧印加制御部120は、加速度検出部30が検出する加速度の変化のうち、予め定められた周波数以下の成分に基づいて、液体レンズ10を制御してよい。また、画像補正部40は、加速度検出部30が検出する加速度の変化のうち、当該予め定められた周波数より大きい成分に基づいて、画像を補正してよい。つまり、加速度ベクトルの変化のうち、所定の周波数以下の成分による液体レンズ10の歪みについては、電圧印加制御部120を用いて、ハードウェア的に液体レンズ10の液面形状を制御する。加速度ベクトルの変化のうち、所定の周波数より大きい成分による画像歪みについては、画像補正部40を用いてソフトウェア的に画像を補正する。
【0039】
こうすることにより、加速度ベクトルの変化のうち周波数の低い成分についてはハードウェアにより補正するので、補正関数テーブル50が格納する補正関数のデータ量を低減することができる。また、加速度ベクトルの変化のうち周波数の高い成分についてはソフトウェアにより補正するので、高周波で変化する加速度による画像歪みを補正することができる。
【0040】
まず、ステップ1において、電圧印加制御部120により液体レンズ10に電圧を印加し、液体レンズ10の液体界面の形状を制御する。ステップ2において、加速度検出部30により加速度情報を取得する。加速度情報は、液体レンズ10にかかる加速度のベクトルを時系列で計測した情報を含む。
【0041】
ステップ3において、加速度ベクトルの変化に所定の周波数より大きい成分があるか否かを判定する。加速度ベクトルの変化に所定の周波数より大きい成分がない場合には、画像補正部40による制御は行わず、電圧印加制御部120による制御のみで終了する。なお、所定の周波数は、電圧印加制御部120が、液体レンズ10のレンズ形状を制御可能な周波数の上限に応じて定められる。
【0042】
加速度ベクトルの変化に当該所定の周波数より大きい成分がある場合には、ステップ4に進み、画像補正部40を用いて映像信号を補正する。つまり、加速度ベクトルの変化の低周波成分については電圧印加制御部120が液体界面を制御し、高周波成分については画像補正部40が映像信号を補正する。
【0043】
図7は、第2実施形態にかかる撮像装置100の構成を示す。第1実施形態と同一機能を有する部材には同一符号を付し、説明を省略する。第2実施形態は、補正関数選択部160が補正関数算出部190に置き換えられる点で第1実施形態と異なる。本例において、補正関数テーブル50は、液体レンズPSF保存メモリ400及びモーションブラーPSF保存メモリ420を有する。
【0044】
撮像画像の歪みの原因として、液体レンズ10の液体界面の歪みと、手ぶれ等のモーションブラーとが考えられる。そこで、予め、液体レンズ10の歪みによる画像ぼけ量及びモーションブラーによる画像ぼけ量を液体レンズ10の加速度毎に取得し、液体レンズPSF保存メモリ400及びモーションブラーPSF保存メモリ420にそれぞれ格納する。
【0045】
液体レンズPSF保存メモリ400及びモーションブラーPSF保存メモリ420は、図1から図6に関連して説明した補正関数テーブル50と同様に、液体レンズ10の温度、撮像部における焦点距離、及び液体レンズ10から被写体70までの距離にさらに対応付けられた液体レンズPSF及びモーションブラーPSFを格納してもよい。画像補正部40は、印加電圧量、重力方向、加速度情報に応じた画像ぼけ量に基づいて補正関数を算出し、当該補正関数を用いてコンボリューション処理を行って映像信号を補正する。こうすることで、補正関数を動的に取得することができる。その結果、手ぶれ等のモーションブラーによる画像歪みを補正することができる。
【0046】
撮像系に加速度が加わったときの系のPSFは、レンズ自身の持つ光学特性である液体レンズPSFとモーションブラーPSFとをコンボリューション演算することにより得られる。ここで、PSFは点広がり関数を指す。そこで、予め液体レンズPSF保存メモリ400及びモーションブラーPSF保存メモリ420に格納した、加速度に対応する液体レンズPSF及びモーションブラーPSFを読み出してコンボリューション演算することにより、補正関数算出部190は、撮像系のPSFを算出することができる。補正関数算出部190は、撮像系のPSFに基づいて補正関数H−1を算出する。
【0047】
図8は、補正関数算出部190の動作を示すフローチャートである。ステップ1において、補正関数算出部190は、電圧印加制御部120により液体レンズ10へ印加する印加電圧量を取得する。ステップ2において、補正関数算出部190は、加速度検出部30により重力方向を取得する。
【0048】
ステップ3において、補正関数算出部190は、液体レンズPSF保存メモリ400からステップ1及びステップ2で取得した印加電圧量及び重力方向に対応する液体レンズPSFを選択する。ステップ4において、補正関数算出部190は、加速度検出部30により加速度情報を取得する。
【0049】
ステップ5において、補正関数算出部190は加速度が所定の閾値以上であるか否かを判定する。加速度が所定の閾値以上である場合には、ステップ6に進み、補正関数算出部190は、モーションブラーPSF保存メモリ420から加速度情報に対応するモーションブラーPSFを選択する。加速度が所定の閾値以下である場合には、モーションブラーPSFは選択されず、ステップ7に進む。
【0050】
ステップ7において、補正関数算出部190は撮像系PSFを算出する。具体的には、モーションブラーPSFを選択している場合には、ステップ3において選択した液体レンズPSFと、ステップ6において選択したモーションブラーPSFとをコンボリューション演算することにより、補正関数算出部190は撮像系PSFを算出する。モーションブラーPSFを選択していない場合には、補正関数算出部190はステップ3において選択した液体レンズPSFを撮像系PSFとする。
【0051】
ステップ8において、補正関数算出部190は撮像系PSFから補正関数H−1を算出する。具体的には、撮像系PSFの逆関数をとることにより、補正関数算出部190は補正関数H−1を算出することができる。こうすることにより、手ぶれ等のモーションブラーによる影響に応じて、補正関数を動的に変更することができる。その結果、手ぶれ等のモーションブラーによる画像歪みを動的に補正することができる。
【0052】
図9は、第3の実施形態にかかる撮像装置100および画像処理装置90の構成を示す。本例において、撮像装置100の外部に、画像処理装置90が設けられる。例えば、画像処理装置90は、撮像装置100に接続されるパーソナルコンピュータの内部に設けられる。画像処理装置90は、画像取得部62と、加速度取得部32と、画像補正部40と、補正関数テーブル50と、及びメモリ52とを備える。画像補正部40および補正関数テーブル50は、図1から図8に関連して説明した画像補正部40および補正関数テーブル50と同一である。
【0053】
本例の撮像装置100は、図1から図8に関連して説明した撮像装置100の構成要素のうち、画像処理装置90に含まれない構成要素を有する。一例として、撮像部80、加速度検出部30、およびメモリ60を有する撮像装置100を図9に示す。
【0054】
画像取得部62は、撮像装置100が撮像した画像を取得する。加速度取得部32は、画像取得部62が取得した画像を撮像装置100が撮像したときに、液体レンズ10にかかっていた加速度を示す加速度情報を取得する。画像補正部40は、加速度取得部32が取得した加速度情報に基づいて、画像取得部62が取得した画像を補正する。具体的には、画像補正部40は、加速度ベクトル情報に応じた補正関数H―1を補正関数テーブル50から選択し、映像信号を補正する。補正された画像は、メモリ52に格納される。
【0055】
こうすることで、画像処理装置90が撮像装置100の外部に設けられるので、撮像装置100の構成を簡略化することができる。また画像処理装置90は、液体レンズ10にかかる加速度の変化に応じて映像信号を補正することができる。
【0056】
図10は、コンピュータ800のハードウェア構成の一例を示す。コンピュータ800は、与えられるプログラムに応じて、図1から図9に関連して説明した画像処理装置90として機能する。
【0057】
本実施形態に係るコンピュータ800は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスクドライブ2040、及びCD−ROMドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フレキシブルディスク・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部とを備える。
【0058】
ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【0059】
入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスクドライブ2040、CD−ROMドライブ2060を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスクドライブ2040は、コンピュータ800内のCPU2000が使用するプログラム及びデータを格納する。CD−ROMドライブ2060は、CD−ROM2095からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。
【0060】
また、入出力コントローラ2084には、ROM2010と、フレキシブルディスク・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ800が起動時に実行するブート・プログラム、及び/又は、コンピュータ800のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ2050は、フレキシブルディスク2090からプログラム又はデータを読み取り、RAM2020を介してハードディスクドライブ2040に提供する。入出力チップ2070は、フレキシブルディスク・ドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。
【0061】
RAM2020を介してハードディスクドライブ2040に提供されるプログラムは、フレキシブルディスク2090、CD−ROM2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ800内のハードディスクドライブ2040にインストールされ、CPU2000において実行される。
【0062】
コンピュータ800にインストールされ、コンピュータ800を画像処理装置90として機能させるプログラムは、画像生成モジュール、画像処理モジュール、配列方向制御モジュール、および、モード切替モジュールのうちの少なくともいずれかを有する。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ800を画像処理装置90としてそれぞれ機能させる。
【0063】
これらのプログラムに記述された情報処理は、コンピュータ800に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である画像処理装置90として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ800の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の画像処理装置90が構築される。
【0064】
一例として、コンピュータ800と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスクドライブ2040、フレキシブルディスク2090、又はCD−ROM2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の通信インターフェイス2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【0065】
また、CPU2000は、ハードディスクドライブ2040、CD−ROMドライブ2060(CD−ROM2095)、フレキシブルディスク・ドライブ2050(フレキシブルディスク2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。
【0066】
本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。
【0067】
また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【0068】
また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。
【0069】
以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク2090、CD−ROM2095の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ800に提供してもよい。
【0070】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0071】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0072】
10・・・液体レンズ、20・・・撮像素子、30・・・加速度検出部、32・・・加速度取得部、40・・・画像補正部、50・・・補正関数テーブル、52・・・メモリ、60・・・メモリ、62・・・画像取得部、70・・・被写体、80・・・撮像部、90・・・画像処理装置、100・・・撮像装置、102・・・被写体画像、104・・・画像成分、110・・・Raw保存メモリ、112・・・温度検出部、114・・・撮像制御部、116・・・距離検出部、120・・・電圧印加制御部、140・・・コンボリューション演算装置、150・・・カメラ信号処理部、160・・・補正関数選択部、190・・・補正関数算出部、400・・・液体レンズPSF保存メモリ、420・・・モーションブラーPSF保存メモリ、800・・・コンピュータ、2000・・・CPU、2010・・・ROM、2020・・・RAM、2030・・・通信インターフェイス、2040・・・ハードディスクドライブ、2050・・・フレキシブルディスク・ドライブ、2060・・・CD−ROMドライブ、2070・・・入出力チップ、2075・・・グラフィック・コントローラ、2080・・・表示装置、2082・・・ホスト・コントローラ、2084・・・入出力コントローラ、2090・・・フレキシブルディスク、2095・・・CD−ROM

【特許請求の範囲】
【請求項1】
被写体を撮像する撮像装置であって、
液体レンズを用いて前記被写体を撮像する撮像部と、
前記液体レンズにかかる加速度を検出する加速度検出部と、
前記加速度検出部が検出した前記加速度に基づいて、前記撮像部が撮像した画像を補正する画像補正部と
を備える撮像装置。
【請求項2】
前記加速度検出部は、前記加速度のベクトルを検出し、
前記画像補正部は、前記加速度検出部が検出した前記加速度のベクトルに基づいて、前記撮像部が撮像した画像を補正する
請求項1に記載の撮像装置。
【請求項3】
前記画像補正部は、複数種類の前記加速度のベクトルと、前記画像を補正するのに用いる補正関数との関係を予め格納し、前記加速度検出部が検出した前記加速度のベクトルに対応する前記補正関数を用いて、前記撮像部が撮像した画像を補正する
請求項2に記載の撮像装置。
【請求項4】
前記液体レンズの温度を検出する温度検出部を更に備え、
前記画像補正部は、前記液体レンズの温度毎に、前記補正関数を格納し、
前記画像補正部は、前記温度検出部が検出した温度に対応する前記補正関数を用いて前記画像を補正する
請求項3に記載の撮像装置。
【請求項5】
前記撮像部における焦点距離を制御する撮像制御部を更に備え、
前記画像補正部は、前記撮像部における前記焦点距離毎に、前記補正関数を格納し、
前記画像補正部は、前記撮像部における前記焦点距離に対応する前記補正関数を用いて前記画像を補正する
請求項3に記載の撮像装置。
【請求項6】
前記液体レンズから前記被写体までの距離を検出する距離検出部を更に備え、
前記画像補正部は、前記距離検出部が検出する距離毎に、前記補正関数を格納し、
前記画像補正部は、前記距離検出部が検出した距離に対応する前記補正関数を用いて前記画像を補正する
請求項3に記載の撮像装置。
【請求項7】
前記画像補正部は、前記撮像部が撮像した画像と、当該画像を撮像したときの前記加速度のベクトルとに基づいて、当該加速度のベクトルに対応する前記補正関数を算出して格納する
請求項3に記載の撮像装置。
【請求項8】
前記加速度検出部が検出する加速度の変化のうち、予め定められた周波数以下の成分に基づいて、前記液体レンズを制御するレンズ制御部を更に備え、
前記画像補正部は、前記加速度検出部が検出する加速度の変化のうち、前記予め定められた周波数より大きい成分に基づいて、前記画像を補正する
請求項1から7のいずれか一項に記載の撮像装置。
【請求項9】
液体レンズを用いて被写体を撮像する撮像装置により撮像された画像を処理する画像処理装置であって、
前記撮像装置が撮像した画像を取得する画像取得部と、
前記画像取得部が取得した画像を撮像したときに、前記液体レンズにかかっていた加速度を示す加速度情報を取得する加速度取得部と、
前記加速度取得部が取得した前記加速度情報に基づいて、前記画像取得部が取得した画像を補正する画像補正部と
を備える画像処理装置。
【請求項10】
コンピュータを、請求項9の画像処理装置として機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−259314(P2011−259314A)
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願番号】特願2010−133275(P2010−133275)
【出願日】平成22年6月10日(2010.6.10)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【Fターム(参考)】