画像処理装置、撮影装置、画像処理方法及び画像処理プログラム
【課題】高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させること。
【解決手段】画像データにおける輝点を検索してその輝点座標を求め、この輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定し、この推定された輝点色に応じて輝点座標の近傍にクロスパターン等を描画する。
【解決手段】画像データにおける輝点を検索してその輝点座標を求め、この輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定し、この推定された輝点色に応じて輝点座標の近傍にクロスパターン等を描画する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮影等により取得された画像データ中における高輝度な部分に対して所定のパターンを描画等する画像処理を行う画像処理装置、撮影装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【0002】
カメラ等の撮影装置は、被写体を撮影するとき、レンズと被写体との間に光学的なフィルターを挿入することで、高輝度を有する被写体の周辺に所定のパターン、例えばクロスパターン(十字形状のパターン)を追加したような効果、すなわちクロスフィルター効果を有する写真の撮影をすることができる。パターンとしては、クロスパターン以外にも、クロスパターンを2つ重ねたような8本線のパターンを生じるフィルターや、6本線のパターンを生じるフィルターなどが存在する。
【0003】
一方、デジタルカメラでは、撮影により取得した画像データ中の高輝度の部分に上記パターンを描画することで、光学的なフィルターを用いて撮影したような画像データを作成する機能を持つものがある。かかる技術を有するものとしては、例えば特許文献1、2がある。
特許文献1は、ある閾値を超える輝点を検索し、検索された輝点の周辺をさらに検索して光源と考えられる領域の中心を算出し、クロスのパターンを描画することで、クロスフィルター効果を画像処理で実現する方法を開示する。特許文献2は、撮影画像における光輝度部を検索し、光輝度部に係数を乗算しながら位置をずらし加算することで、クロス効果を画像処理で実現する方法を開示する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第4207124号公報
【特許文献2】特公平7−113961号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
デジタルカメラでは、JPEG形式の画像データに対する編集等において、画像データ中の高輝度部分を検索し、この検索された高輝度部分の近傍にクロスパターンを描画することで、クロスフィルター効果を生じさせた画像データを生成する。
クロスフィルター効果を生じさせるためには、撮影画像データ内の各画素が高輝度部分か否かを判断しなければいけない。しかしながら、昨今のデジタルカメラは、画素数が増大している影響で、クロスフィルター効果を生じさせる場合、高輝度部分の画素を検索するための処理に時間を要し、通常の撮影時の処理と比較して処理に時間がかかる傾向にある。さらに、クロスフィルター効果を生じさせる場合、高輝度部分の周辺の色を反映させると、クロスフィルター効果をより効果的に現すことが出来る。
【0006】
しかしながら、高輝度部分を判別した後、更に当該高輝度部分の周辺の色を検索するとなると、処理時間が益々増大してしまう。クロスフィルター効果に高輝度部分として例えば光源等の色を反映させないと、光学クロスフィルターと比較して味気ない画像になってしまう。
そこで本発明の目的は、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる画像処理装置、撮影装置、画像処理方法及び画像処理プログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の主要な局面に係る画像処理装置は、画像データにおける輝点を検索する輝点検索部と、前記輝点検索部により検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得部と、前記画像データにおける前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点色を推定する輝点色推定部と、前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理部とを具備する。
【0008】
本発明の主要な局面に係る画像処理方法は、画像データにおける輝点を検索し、前記検索された前記輝点の前記画像データにおける輝点座標を求め、前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定し、前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する。
【0009】
本発明の主要な局面に係る画像処理プログラムは、コンピュータに、画像データにおける輝点を検索する輝点検索機能と、前記検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得機能と、前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定する輝点色推定機能と、前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理機能とを実現する。
【発明の効果】
【0010】
本発明によれば、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる画像処理装置、撮影装置、画像処理方法及び画像処理プログラムを提供できる。
【図面の簡単な説明】
【0011】
【図1】本発明に係る撮像装置としてのデジタルカメラの第1の実施の形態を示す構成図。
【図2】同カメラによる画像データに合成する所定のパターンの一例を示す摸式図。
【図3】同カメラにおけるメイン動作を示すフローチャート。
【図4】同カメラにおける静止画処理を示すフローチャート。
【図5】同カメラにおける動画処理を示すフローチャート。
【図6】同カメラにおける再生処理を示すフローチャート。
【図7】同カメラにおける画像処理を示すフローチャート。
【図8】同カメラにおける現像処理を示すフローチャート。
【図9】同カメラにおける輝点検索処理を示すフローチャート。
【図10】同カメラにおける輝点検索処理を説明するための模式図。
【図11】同カメラにおける光源色検索処理を示すフローチャート。
【図12】同カメラの輝点色推定部による検索する座標V(X,Y)の移動の具体的な一例を示す模式図。
【図13】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図14】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図15】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図16】同カメラにおける水平垂直判別部により設定した垂直方向及び水平方向上の検索座標の除外を示す図。
【図17】同カメラにおけるパターン合成処理を示すフローチャート。
【図18】本発明に係る撮像装置としてのデジタルカメラの第2の実施の形態における輝点検索処理フローチャート。
【図19】同カメラにおけるパターン合成処理を示すフローチャート。
【発明を実施するための形態】
【0012】
以下、本発明の第1の実施の形態について図面を参照して説明する。
図1は撮像装置の一例としてのデジタルカメラの構成図を示す。このデジタルカメラは、交換式レンズ100と、カメラ本体200とを有するレンズ交換式デジタルカメラの例を示す。但し、以下に説明する本発明の実施形態に係る技術はコンパクト式デジタルカメラや携帯電話、携帯情報端末、ゲーム機器等にも適用可能である。
【0013】
交換式レンズ100は、レンズ101と、絞り102と、ドライバ103と、レンズマイクロコンピュータ104と、フラッシュ(Flash)メモリ105とを有する。交換式レンズ100がカメラ本体200に装着された際に、交換式レンズ100のレンズマイクロコンピュータ104は、インターフェイス(I/F)106を介してカメラ本体200のマイクロコンピュータ218と通信可能に接続される。
【0014】
レンズ101は、フォーカスレンズやズームレンズ等の1つ以上のレンズから構成されており、図示しない被写体からの光学像(被写体像)を撮像素子202に集光する。絞り102は、撮像素子202に集光される被写体像の光量を調節する。
ドライバ103は、モータ等を有し、レンズマイクロコンピュータ104の制御の下、レンズ101を構成するフォーカスレンズやズームレンズをその光軸方向に駆動する。また、ドライバ103は、レンズマイクロコンピュータ104の制御の下、絞り102を開閉する。
【0015】
レンズマイクロコンピュータ104は、カメラ本体200のマイクロコンピュータ218の制御に従って交換式レンズ100の動作を制御する。また、レンズマイクロコンピュータ104は、Flashメモリ105に記憶されているレンズ情報をマイクロコンピュータ218に送信することも行う。Flashメモリ105は、レンズ101の収差といったレンズ情報等の交換式レンズ100の各種動作に必要な情報を記憶している。
【0016】
カメラ本体200は、メカシャッタ201と、撮像素子202と、アナログ処理部203と、アナログ/デジタル(A/D)変換部204と、バス205と、SDRAM206と、画像処理部207と、AE処理部208と、AF処理部209と、水平垂直判別部210と、輝点検索部211と、パターン合成部212と、画像圧縮展開部213と、メモリインターフェイス(I/F)214と、記録媒体215と、表示ドライバ216と、表示部217と、マイクロコンピュータ218と、操作部219と、フラッシュ(Flash)メモリ220とを有する。
【0017】
メカシャッタ201は、撮像素子202の光電変換面を遮光状態又は露出状態とすることで撮像素子202の露光時間を調節する機械的機構である。
撮像素子202は、被写体像を電気信号に変換するための光電変換面を有する。光電変換面は、2次元平面状に配列された複数のフォトダイオードと、これらフォトダイオードの前面に設けられたカラーフィルターとを有する。カラーフィルターは、例えば原色系ベイヤ配列のカラーフィルターである。このような撮像素子202は、レンズ101を介して集光された被写体像を撮像し、被写体像を電気信号(以降、アナログ撮像信号と称する)として出力する。ここで、撮像素子202は、CMOS方式の撮像素子でもCCD方式の撮像素子でも良い。また、撮像素子202は、露光時間を電子的に制御する電子シャッタ機能を有していることが望ましい。
【0018】
アナログ処理部203は、撮像素子202から出力されたアナログ撮像信号に対して各種のアナログ処理を行う。このアナログ処理としては、例えば、リセットノイズの低減処理、波形整形処理、ゲイン制御処理が含まれる。
A/D変換部204は、アナログ処理部203から出力されたアナログ撮像信号をデジタル信号(以降、撮像データと言う)に変換する。この撮像データは、画像処理部207による画像処理前のデジタル画像であり、RAWデータとも呼ばれる。
【0019】
バス205は、カメラ本体200の内部で発生した各種のデータを転送する。SDRAM206は、カメラ本体200内部で発生した各種のデータを一時的に記憶する。
画像処理部207は、撮像データに対する各種の画像処理を行って画像データを生成する。この画像処理部207は、オプティカルブラック(OB)減算部2071と、ホワイトバランス(WB)補正部2072と、同時化処理部2073と、カラーマトリクス演算部2074と、ガンマ・色再現処理部2075と、エッジ強調処理部2076と、ノイズ低減(NR)処理部2077とを有する。
【0020】
OB減算部2071は、撮像データにおける暗電流成分の影響を除去するためのOB減算を行う。WB補正部2072は、撮像データの色バランスを補正するWB補正処理を行う。同時化処理部2073は、1画素が1つの色成分に対応している撮像データを、1画素が3つの色成分に対応している撮像データに変換する同時化処理を行う。カラーマトリクス演算部2074は、撮像データ全体の色相や彩度の調節を行う。ガンマ・色再現処理部2075は、撮像データに対するガンマ変換処理、色再現処理を行う。エッジ強調処理部2076は、撮像データにおけるエッジ成分を強調するエッジ強調処理を行う。NR処理部2077は、撮像データにおけるノイズ成分を除去するNR処理を行う。
本実施の形態では、OB減算部2071、WB補正部2072、同時化処理部2073、カラーマトリクス演算部2074、ガンマ・色再現処理部2075、エッジ強調処理部2076及びNR処理部2077による処理が施された撮像データを画像データと言うこととする。
【0021】
AE処理部208は、撮像データを用いて被写体の輝度を算出する。さらに、AE処理部208は、算出した被写体の輝度に応じて、撮影時における撮像素子202の感度(ISO感度)、撮影時における絞り102の開放量(絞り値)、撮影時における撮像素子202の露光時間(シャッタ速)を決定する。なお、被写体の輝度は、撮像データから算出するだけでなく、例えば専用の測光センサで測定するようにしても良い。
AF処理部209は、撮像データから高周波成分の信号を取り出し、取り出した高周波成分の信号を積算してAF用の合焦評価値を取得する。
【0022】
水平垂直判別部210は、画像データ中の被写体の水平方向と垂直方向とを判別する。ここで、水平方向と垂直方向とは、画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
輝点検索部211は、画像処理部207で得られた画像データにおける高輝度画素(輝点)を抽出する。
パターン合成部(描画処理部)212は、輝点検索部211により検索された輝点色に応じて輝点座標の近傍にパターンを描画する。すなわち、このパターン合成部212は、輝点検索部211による輝点の抽出結果に応じて画像処理部207で得られた画像データに合成用パターンを合成することで画像データにクロスフィルター効果を与える。なお、輝点検索部211及びパターン合成部212の動作の詳細については後述する。
【0023】
画像圧縮展開部213は、画像の記録時において、画像処理部207における画像処理によって得られた画像データに対してJPEG方式等の静止画圧縮処理又はMPEG方式等の動画圧縮処理を施す。また、画像圧縮展開部213は、画像の再生時において、圧縮処理が施された画像データに対して展開(伸張)処理を施す。
メモリI/F214は、マイクロコンピュータ218等が記録媒体215にアクセスするためのインターフェイスである。記録媒体215は、例えばカメラ本体200に着脱自在になされたメモリカードであって、画像圧縮展開部213によって圧縮された画像データを含む画像ファイル等が記録される。
【0024】
表示ドライバ216は、画像処理部207で得られた画像データ又は画像圧縮展開部213で伸張された画像データを映像信号に変換して表示部217に出力する。この表示部217は、例えば液晶ディスプレイ(LCD)であり、表示ドライバ216からの映像信号に基づく画像を表示する。
【0025】
マイクロコンピュータ218は、メカシャッタ201や撮像素子202の動作制御等のカメラ本体200の各種シーケンスを統括的に制御する。また、マイクロコンピュータ218は、交換式レンズ100の装着時には交換式レンズ100の動作も制御する。マイクロコンピュータ218には、操作部219と、Flashメモリ220とが接続されている。
【0026】
操作部219は、例えば電源ボタン、レリーズボタン、再生ボタン、動画ボタン、各種入力キー等の操作部材である。この操作部219は、タッチパネル等で構成されていても良い。ユーザにより操作部219の操作がなされると、マイクロコンピュータ218は、操作部219の操作に対応したシーケンスを実行する。
【0027】
Flashメモリ220は、例えばホワイトバランス補正用のホワイトバランスゲイン、カラーマトリクス演算用のカラーマトリクス係数、ガンマ変換用のガンマテーブルといった画像処理部207の動作に必要なパラメータ等の、カメラ本体200の動作に必要な各種のパラメータを記憶している。
【0028】
さらに、本実施形態において、Flashメモリ220は、パターン記憶部としての機能も有し、パターン合成部212において合成用パターンを生成するために必要なパターンを示すデータ(パターンデータ)も記憶する。このFlashメモリ220に記憶させるパターンは、例えば図2(a)に示すクロスパターンである。このクロスパターンは、中心部から放射状に伸びる複数の直線から構成される。例えば図2(a)で示すクロスパターンは、中央部から伸びる4本の直線で構成されている。そして、クロスパターンを構成する4本の直線は、それぞれ、中央部からの距離に応じて輝度値が低下するとともに線の太さが細くなっている。
【0029】
クロスパターンを構成する直線の本数は4本に限るものではなく、任意の複数本で良い。例えば、図2(b)で示すスノークロスパターンのように、中央部から伸びる6本の直線でパターンを構成するようにしても良いし、図2(c)で示すサニークロスパターンのように、中央部から伸びる8本の直線でパターンを構成するようにしても良い。また、直線の他に曲線を含めるようにしてパターンを構成するようにしても良い。例えば、図2(d)で示すような星型のパターンや、図2(e)で示すようなハート型のパターン等、各種の形状のパターンをFlashメモリ220に記憶させるようにして良い。さらに、図2(a)〜図2(e)で示したパターンを示すパターンデータは、図2(a)〜図2(e)で示したパターンを含む矩形データとして構成しておいても良い。
【0030】
また、Flashメモリ220は、マイクロコンピュータ218が実行する種々のプログラム、例えば画像処理プログラムも記憶する。この画像処理プログラムは、コンピュータであるマイクロコンピュータ218に、画像データにおける輝点を検索する輝点検索機能と、この検索された輝点の画像データにおける輝点座標を求める輝点座標取得機能と、輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定する輝点色推定機能と、この推定された輝点色に応じて輝点座標の近傍に上記図2(a)に示すようなクロスパターンパターンを描画する描画処理機能とを実現する。
【0031】
上記マイクロコンピュータ218は、輝点座標取得部218aと、輝点色推定部218bとを有する。
輝点座標取得部218aは、輝点検索部211により検索された輝点の画像データにおける輝点座標を求める。
輝点色推定部218bは、画像データにおける輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点色を推定する。
【0032】
この輝点色推定部218bは、複数の検索座標のうち輝点座標からの距離が短い検索座標から遠い検索座標に向かって検索対象とする。
この輝点色推定部218bは、輝点座標を中心として放射状に延びる1本以上の線上に複数の検索座標を設定する。この場合、輝点色推定部218bは、放射状に延びる1本以上の線を垂直方向及び水平方向を除く方向に複数の検索座標を設定する。
この輝点色推定部218bは、垂直方向及び前記水平方向として画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
そして、輝点色推定部218bは、水平垂直判別部210により判別された水平方向と垂直方向との各線上への検索座標の設定を除外する。しかるに、輝点色推定部218bは、水平垂直判別部210により判別された撮影装置の撮影時の傾きに基づいて被写体の水平方向と垂直方向とを判別し、かつ水平垂直判別部210により判別された水平方向と垂直方向との各線上への検索座標の設定を除外する。
又、輝点色推定部218bは、輝点色を推定するための条件を有する画素値として例えば所定の彩度以上の彩度を有する画素値を用いて輝点色を推定する。この輝点色推定部218bは、所定の値以下の画素値を用いて輝点色を推定する。
【0033】
パターン合成部(描画処理部)212は、パターン記憶部としてのFlashメモリ220に記憶されている例えば図2(a)で示すクロスパターン等の所定のパターンを、輝点座標に対応する位置に合成する。この場合、パターン合成部212は、Flashメモリ220に記憶されているクロスパターン等の所定のパターンの色相及び彩度を輝点色に応じて変更し、当該変更した所定のパターンを輝点座標に対応する位置に合成する。
【0034】
次に、上記の如く構成されたデジタルカメラの動作について図3に示すメイン動作のフローチャートを参照して説明する。このメイン動作のフローチャートは、例えばユーザによって操作部219の電源ボタンが押される等して本デジタルカメラの電源がオンされた場合に行われる。
【0035】
電源投入後等において、マイクロコンピュータ218は、先ず、自身が有するレジスタに設定されている記録中フラグをOffにする(ステップS101)。記録中フラグは、動画記録中であるか否かを示すフラグである。記録中フラグがOffになっている間は、動画記録中でないことを示す。一方、記録中フラグがOnになっている間は、動画記録中であることを示す。
【0036】
次に、マイクロコンピュータ218は、ユーザによって操作部219の再生ボタンが押されたか否かを判定する(ステップS102)。この判定の結果、再生ボタンが押された場合、マイクロコンピュータ218は、再生処理を実行する(ステップS103)。再生処理の詳細については後述する。
再生処理の実行後又は上記ステップS102の判定の結果で再生ボタンが押されていない場合、マイクロコンピュータ218は、ユーザによって操作部219の動画ボタンが押されたか否かを判定する(ステップS104)。この判定の結果、動画ボタンが押された場合、マイクロコンピュータ218は、記録中フラグを反転させる(ステップS105)。即ち、マイクロコンピュータ218は、記録中フラグがOffの場合にはOnに、Onの場合にはOffにする。
【0037】
記録中フラグの反転後又は上記ステップS105の判定の結果で動画ボタンが押されていない場合、マイクロコンピュータ218は、現在、動画記録中であるか否か、即ち記録中フラグがOnであるか否かを判定する(ステップS106)。この判定の結果、記録中フラグがOnである場合、マイクロコンピュータ218は、動画処理を実行する(ステップS107)。動画処理の詳細については後述する。
【0038】
また、上記ステップS106の判定の結果、記録中フラグがOffである場合、マイクロコンピュータ218は、ユーザによって操作部219のレリーズボタンが半押しされてレリーズボタンの状態がOff状態から1stレリーズスイッチのOn状態に遷移したか否かを判定する(ステップS108)。この判定の結果、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移した場合、マイクロコンピュータ218は、AE処理を行う(ステップS109)。このAE処理において、マイクロコンピュータ218は、AE処理部208により撮像データを用いて被写体の輝度を算出させ、この算出させた被写体の輝度に応じて撮影時における撮像素子202の感度(ISO感度)、撮影時における絞り102の開放量(絞り値)、撮影時における撮像素子202の露光時間(シャッタ速)を決定させる。
【0039】
次に、マイクロコンピュータ218は、AF処理を行う(ステップS110)。このAF処理において、マイクロコンピュータ218は、AF処理部209により合焦評価値を取得させる。このマイクロコンピュータ218は、AF処理部209で取得された合焦評価値により、撮像データにおけるコントラストを評価しつつ、レンズ101のフォーカスレンズを微少量ずつ駆動させるようにレンズマイクロコンピュータ104に指示する。その後、マイクロコンピュータ218は、コントラストが最大となった時点でフォーカスレンズの駆動を停止させるようにレンズマイクロコンピュータ104に指示する。このようなAF処理は、所謂コントラスト方式のAF処理である。AF処理として位相差AF処理を用いるようにしても良い。
【0040】
また、AF処理は、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移したタイミングにおいて実行されるものである。即ち、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移しないタイミング、例えば、レリーズボタンの状態がOff状態のままである場合、1stレリーズスイッチのOn状態のままである場合、後述する2ndレリーズスイッチのOn状態のままである場合等では、AF処理は実行されない。
【0041】
また、上記ステップS108の判定の結果、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移していない場合、マイクロコンピュータ218は、ユーザによって操作部219のレリーズボタンが全押しされてレリーズボタンの状態が2ndレリーズスイッチのOn状態となっているか否かを判定する(ステップS111)。この判定の結果、レリーズボタンの状態が2ndレリーズスイッチのOn状態である場合、マイクロコンピュータ218は、静止画処理を実行する(ステップS112)。この静止画処理は、レリーズボタンの状態が2ndレリーズスイッチのOn状態である間は実行されるものである。例えば、1枚の静止画像が記録された後であってもレリーズボタンの状態が2ndレリーズスイッチのOn状態であれば、次の静止画撮影を実行する。この静止画処理の詳細については後述する。
【0042】
上記ステップS111の判定の結果、レリーズボタンの状態が2ndレリーズスイッチのOn状態でない場合、マイクロコンピュータ218は、ステップS107の動画処理を実行する。
上記ステップS107、S110、S112の後、マイクロコンピュータ218は、ユーザによって操作部219の電源ボタンが押される等してデジタルカメラの電源がオフされたか否かを判定する(ステップS113)。この判定の結果、デジタルカメラの電源がオフされていない場合、マイクロコンピュータ218は、上記ステップS102に戻る。一方、ステップS113の判定の結果、デジタルカメラの電源がオフされた場合、マイクロコンピュータ218は、図3に示すメイン動作のフローチャートの処理を終了させる。
【0043】
次に、静止画処理について図4に示す静止画処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、撮影処理を実行する(ステップS201)。この撮影処理において、マイクロコンピュータ218は、上記図3に示すステップS109のAE処理において決定されたISO感度、絞り値、シャッタ速に応じて撮像素子202の露光を行う。即ち、マイクロコンピュータ218は、ISO感度に応じてアナログ処理部203におけるゲイン制御量(増幅率)を設定するとともに、絞り値をレンズマイクロコンピュータ104に送信する。レンズマイクロコンピュータ104による制御による絞り102の駆動と同期して、マイクロコンピュータ218は、シャッタ速に応じてメカシャッタ201を動作させて撮像素子202の露光量を制御する。
【0044】
撮影処理の後、マイクロコンピュータ218は、撮影の結果としてSDRAM206に記憶された撮像データに対する画像処理を実行するための制御を行う(ステップS202)。この画像処理は、動画処理の際の画像処理と同一である。詳細については後述する。
画像処理の後、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像(レックビュー画像)を再生する(ステップS203)。
【0045】
続いて、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを静止画ファイルとして記録する処理を行う(ステップS204)。先ず、マイクロコンピュータ218は、静止画ファイルの記録画質等に応じて、画像処理の結果としてSDRAM206に記憶された画像データに対するリサイズ処理を実行するようにリサイズ処理部2079に指示する。その後、マイクロコンピュータ218は、リサイズ処理の結果としてSDRAM206に記憶された画像データに対する静止画圧縮処理を実行するように画像圧縮展開部213に指示する。この指示を受けて画像圧縮展開部213は、JPEG方式等の静止画圧縮処理を行い、圧縮した画像データをSDRAM206に記憶させる。その後、マイクロコンピュータ218は、画像圧縮展開部213により圧縮された画像データをSDRAM206から読み出し、読み出した画像データに所定のヘッダ情報を付与した静止画ファイルを作成し、作成した静止画ファイルを記録媒体215に記録する(ステップS205)。静止画ファイルの記録後、マイクロコンピュータ218は、図4に示す静止画処理を終了する。
【0046】
次に、動画処理について図5に示す動画処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、AE処理を実行する(ステップS301)。このAE処理において、マイクロコンピュータ218は、AE処理部208によってISO感度、絞り値、シャッタ速を決定させる。AE処理の後、マイクロコンピュータ218は、撮影処理を実行する(ステップS302)。撮影処理において、マイクロコンピュータ218は、ISO感度に応じてアナログ処理部203におけるゲイン制御量(増幅率)を設定するとともに、絞り値をレンズマイクロコンピュータ104に送信する。このレンズマイクロコンピュータ104による制御による絞り102の駆動と同期して、マイクロコンピュータ218は、シャッタ速に応じて撮像素子202の電子シャッタ機能を動作させて撮像素子202の露光量を制御する。撮像素子202の露光により得られた撮像データはSDRAM206に記憶される。
【0047】
撮影処理の後、マイクロコンピュータ218は、撮影処理の結果としてSDRAM206に記憶された撮像データに対する画像処理を実行するための制御を行う(ステップS303)。この画像処理の詳細については後述する。
画像処理の後、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像(ライブビュー画像)を再生する(ステップS304)。
【0048】
続いて、マイクロコンピュータ218は、現在、動画記録中であるか否か、即ち記録中フラグがOnであるか否かを判定する(ステップS305)。この判定の結果、記録中フラグがOffである場合、マイクロコンピュータ218は、図5に示す動画処理を終了する。この場合、撮影により得られた画像(動画像)が表示部217に表示されるのみとなる。このようにして表示部217に表示される動画像は、静止画撮影前の構図確認等に用いられるライブビュー画像として利用される。
【0049】
また、上記ステップS305の判定の結果、記録中フラグがOnである場合、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを動画ファイルとして記録する処理を行う(ステップS306)。すなわち、マイクロコンピュータ218は、動画ファイルの記録画質等に応じて、画像処理の結果としてSDRAM206に記憶された画像データに対するリサイズ処理を実行するようにリサイズ処理部2079に指示する。その後、マイクロコンピュータ218は、リサイズ処理の結果としてSDRAM206に記憶された画像データに対する動画圧縮処理を実行するように画像圧縮展開部213に指示する。この指示を受けて画像圧縮展開部213は、記録する動画像ファイルの形式に応じた圧縮処理を行い、圧縮した画像データをSDRAM206に記憶させる。その後、マイクロコンピュータ218は、画像圧縮展開部213により圧縮された画像データをSDRAM206から読み出し、読み出した画像データに所定のヘッダ情報を付与した動画ファイルを作成または追記し、この作成した動画ファイルを記録媒体215に記録する。動画ファイルの記録後、マイクロコンピュータ218は、図5に示す動画処理を終了する。
【0050】
次に、再生処理について図6に示す再生処理フローチャートを参照して説明する。
マイクロコンピュータ218は、ユーザによる操作部219に対する入力キーを受けてファイルを選択する(ステップS401)。このファイルの選択は、例えば記録媒体215に記録されている動画ファイル及び静止画ファイルの一覧を表示部217に表示する。なお、この表示では、動画ファイルであれば最初のフレーム画像を表示する。ユーザは、操作部219における例えば十字キーを操作して再生したい動画ファイル及び静止画ファイルを選択し、かつ同操作部219における決定ボタンを押し操作することにより再生するファイルを決定する。
【0051】
ファイルの選択がなされると、マイクロコンピュータ218は、選択されたファイルが動画ファイルであるか否かを判定する(ステップS402)。この判定の結果、選択されたファイルが動画ファイルである場合、マイクロコンピュータ218は、動画ファイルのヘッダ情報を参照して動画像ファイルを構成する画像データの数(フレーム数)を取得する(ステップS403)。
次に、マイクロコンピュータ218は、表示部217に表示させるべき画像データのフレーム番号を示す変数Nを1(最初のフレームを示す値:N=1)にリセットする(ステップS404)。その後、マイクロコンピュータ218は、選択された動画ファイルのNフレーム目の画像データを展開するように画像圧縮展開部213に指示する(ステップS405)。この指示を受けて画像圧縮展開部213は、選択された動画像ファイルを展開し、展開の結果として得られた動画像ファイルのNフレーム目の画像データをSDRAM206に記憶する。
【0052】
画像データが展開された後、マイクロコンピュータ218は、SDRAM206に記憶されたNフレーム目の画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像を再生する(ステップS406)。Nフレーム目に対応した画像の表示後、マイクロコンピュータ218は、Nに1を加算(N=N+1)する(ステップS407)。その後、マイクロコンピュータ218は、Nがフレーム数以下であるか否かを判定する(ステップS408)。
【0053】
上記ステップS408の判定の結果、Nがフレーム数以下である、即ち最終フレーム目までの画像表示が終了していない場合、マイクロコンピュータ218は、上記ステップS405に戻り、次のフレームの画像表示を行う。一方、上記ステップS408の判定の結果、Nがフレーム数を越えた場合、マイクロコンピュータ218は、図6に示す再生処理を終了する。
【0054】
また、上記ステップS402の判定の結果、選択されたファイルが動画ファイルでない、即ち静止画ファイルである場合、マイクロコンピュータ218は、選択された静止画ファイルを展開するように画像圧縮展開部213に指示する(ステップS409)。この指示を受けて画像圧縮展開部213は、選択された静止画ファイルを展開し、展開の結果として得られた画像データをSDRAM206に記憶する。
【0055】
画像データが展開された後、マイクロコンピュータ218は、SDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像を再生する(ステップS410)。その後、マイクロコンピュータ218は、図6に示す再生処理を終了する。
【0056】
次に、画像処理について図7に示す画像処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、撮影処理の結果としてSDRAM206に記憶された撮像データに対して通常の画像処理用の画像処理パラメータを用いた現像処理を実行するように画像処理部207に指示する。この指示を受けて、画像処理部207は、通常の画像処理用の画像処理パラメータをFlashメモリ220から読み込む(ステップS501)。
【0057】
通常の画像処理用の画像処理パラメータの読み込み後、画像処理部207は、通常の画像処理用の画像処理パラメータを用いてSDRAM206に撮像データに対する現像処理を実行し、通常の画像処理用の画像処理パラメータを用いた現像処理の結果として得られた画像データ(以下、通常画像データと称する)を、SDRAM206における撮像データの記憶領域とは別の記憶領域に記憶する(ステップS502)。現像処理の詳細については後述する。
【0058】
ここで、通常画像処理用の画像処理パラメータとしては、例えばWB補正に用いられるWBゲイン、カラーマトリクス演算に用いられるカラーマトリクス、ガンマ変換処理に用いられるガンマテーブル、NR低減処理に用いられるNRパラメータ、が含まれる。
通常の画像処理用の画像処理パラメータを用いた現像処理の後、マイクロコンピュータ218は、画像処理モードとしてクロスフィルターモードが設定されているか否かを判定する(ステップS503)。画像処理モードは、例えば操作部219の入力キーの操作によって設定することができる。なお、クロスフィルターモードの設定の際には、通常画像データ中の輝点に対応した画素に合成するパターンの形状を例えば上記図2(a)〜図2(e)に示すパターンの中から選択しておく。
上記ステップS503の判定の結果、画像処理モードとしてクロスフィルターモードが設定されていない場合、マイクロコンピュータ218は、図7に示す画像処理を終了する。
【0059】
一方、上記ステップS503の判定の結果、画像処理モードとしてクロスフィルターモードが設定されている場合、マイクロコンピュータ218は、撮影処理の結果としてSDRAM206に記憶された撮像データに対してクロスフィルター処理を施すように画像処理部207に指示する。この指示を受けて、画像処理部207は、輝度検出画像処理用の画像処理パラメータをFlashメモリ220から読み込む(ステップS504)。
【0060】
輝度検出画像処理用の画像処理パラメータの読み込み後、画像処理部207は、輝度検出画像処理用の画像処理パラメータを用いてSDRAM206に記憶された撮像データに対する現像処理を実行し、輝度検出画像処理用の画像処理パラメータを用いた現像処理の結果として得られた画像データ(以下、輝度検出画像データと言う)を、SDRAM206における通常画像データの記憶領域とは別の記憶領域に記憶させる(ステップS505)。輝度検出画像処理用の画像処理パラメータを用いた現像処理は、現像処理に使用する画像処理パラメータを輝度検出画像処理用の画像処理パラメータとするだけである。
【0061】
輝度検出画像処理用の画像処理パラメータも通常画像処理用の画像処理パラメータと同様に、WBゲイン、カラーマトリクス、ガンマテーブル、NRパラメータが含まれる。ただし、輝度検出画像処理用の画像処理パラメータは、ガンマテーブルとNRパラメータとが通常画像処理用の画像処理パラメータと異なっている。輝度検出画像処理用のガンマテーブルは、通常画像処理用の画像処理パラメータに比べて低輝度側をより圧縮する特性を有しているものとする。このような輝度検出画像処理用のガンマテーブルでガンマ変換を行った場合には撮像データにおける低輝度部が0になり易くなる。また、NRパラメータとしては、コアリング閾値や孤立点判定用閾値等がある。コアリング閾値は、細かなノイズを抑えるためのコアリング処理に用いるある所定の範囲を持った閾値である。コアリング処理では、コアリング閾値内の画素値を有する画素の画素値をある一定の値(例えばコアリング閾値の中央値)とする。孤立点判定用閾値は、周辺画素と画素値が異なる孤立点を判定するための閾値である。孤立点は、周辺画素の画素値を用いた補間処理によって除去される。輝度検出画像処理は、通常画像処理に比べてノイズを低減できたほうが良いので、コアリング閾値は大きくし、孤立点と判定する閾値は小さくする。
【0062】
次に、マイクロコンピュータ218は、水平垂直判別部210により画像データ中の被写体の水平方向と垂直方向とを判別させる(ステップS506)。ここで、水平方向と垂直方向とは、画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
【0063】
次に、マイクロコンピュータ218は、輝点検索部211に対して輝点検索処理の実行を指示する。これを受けて、輝点検索部211は、輝点検索処理を行う(ステップS507)。この輝点検索処理は、画像処理部207で得られた画像データにおける高輝度画素(輝点)とこの画素に関するデータとを抽出する。
輝点検索処理の終了後、マイクロコンピュータ218は、パターン変更処理を行うようにパターン合成部212に指示する。パターン変更処理の後、マイクロコンピュータ218は、パターン合成処理を行うようにパターン合成部212に指示する(ステップS508)。パターン合成処理の後、マイクロコンピュータ218は、図7に示す画像処理を終了する。
【0064】
次に、現像処理について図8に示す現像処理フローチャートを参照して説明する。
画像処理部207は、OB減算部2071によりOB減算処理を行う(ステップS601)。OB減算部2071は、入力された撮像データからオプティカルブラック(OB)値を減算することで撮像データにおける暗電流成分を除去する。OB減算の後、画像処理部207は、WB補正部2072によりWB補正処理を行う(ステップS602)。WB補正部2072は、入力された撮像データの色成分毎にWBゲインを乗じることで撮像データの色バランスを補正する。WB補正の後、画像処理部207は、同時化処理部2073により同時化処理を行う(ステップS603)。同時化処理部2073は、入力された撮像データを、補間処理を用いて同時化する。これにより、1画素が原色系ベイヤ配列に対応した1つの色成分を有している撮像データを1画素がRGB3つの色成分を有する撮像データに変換する。
【0065】
同時化処理の後、画像処理部207は、カラーマトリクス演算部2074によってカラーマトリクス演算を行う(ステップS604)。カラーマトリクス演算部2074は、入力された撮像データの各画素にカラーマトリクス係数を乗じることで撮像データの色を変換する。カラーマトリクス演算の後、画像処理部207は、ガンマ・色再現処理部2075によりガンマ変換処理を行う(ステップS605)。ガンマ・色再現処理部2075は、入力された撮像データをマイクロコンピュータ218によって設定されたガンマテーブルを用いてガンマ変換する。ガンマ変換処理の後、画像処理部207は、ガンマ・色再現処理部2075により色補正処理を行う(ステップS606)。色補正処理において、ガンマ・色再現処理部2075は、入力された撮像データの各画素に輝度・色差変換マトリクス係数を乗じることでRGB3つの色成分を有する撮像データを輝度(Y)・色差(Cb、Cr)データに変換する。そして、ガンマ・色再現処理部2075は、色差データに彩度補正係数、色相補正係数を乗じることで撮像データの色補正を行う。
【0066】
色補正処理の後、画像処理部207は、エッジ強調処理部2076によりエッジ強調処理を行う(ステップS607)。エッジ強調処理部2076は、入力された輝度データに対してバンドパスフィルター処理を施して撮像データにおけるエッジ成分を抽出し、この抽出したエッジ成分にエッジ強調量に応じた係数を乗じる。そして、エッジ強調処理部2076は、係数を乗じたエッジ成分をもとの輝度データに加算することで撮像データのエッジ成分を強調する(ステップS607)。エッジ強調処理の後、画像処理部207は、NR処理部2077によりNR処理を行う(ステップS608)。NR処理部2077は、入力された輝度データに対して上述したようなコアリング処理等を施して撮像データにおけるノイズ成分を低減する。
【0067】
NR処理の後、画像処理部207は、一連の現像処理によって得られた画像データをSDRAM206に記憶させた後、図8に示す現像処理を終了する。図8に示す現像処理の順番は、一例であって適宜変更可能である。例えば、WB補正処理の前に同時化処理を行ったり、ガンマ変換処理の前に輝度・色差データへの変換を行ったりしても良い。また、輝度・色差データへの変換は必ずしも行わなくとも良い。
【0068】
次に、輝点検索処理について図9に示す輝点検索処理フローチャートを参照して説明する。
ここで、以下の説明に先立って、輝度検出画像の水平方向画素数(ピクセル)をW、垂直方向画素数(ピクセル)をHと定義する。例えば、図10で示す輝度検出画像データは、W=8、H=4の例を示す。
輝点検索部211は、先ず、輝度検出画像データにおいて輝点検索の対象となる画素の座標を示す変数X、Y(Xは水平位置、Yは垂直位置を示す)のそれぞれを1に初期化する(ステップS701)。座標(X,Y)=(1,1)は、例えば輝度検出画像データにおける左上端の画素であることを示す。
【0069】
変数X、Yに1を設定した後、輝点検索部211は、SDRAM206に記憶された輝度検出画像データを取得する(ステップS702)。
ここで、図8に示す現像処理では、輝度データと色差データとを有する輝度検出画像データが生成されるようになっている。しかしながら、図9に示す輝点検索処理は、輝度データに対して行う処理である。従って、上記ステップS702の処理の際には、輝度データのみを取得すれば良く、色差データについては取得する必要がない。このため、輝度検出画像処理パラメータを用いた現像処理の時点で色差データを生成しないようにしても良い。
【0070】
また、本実施形態では、輝度検出画像データを取得する際、1個の画素の輝度データをSDRAM206から取得する。この画素は、例えば、図10の太線枠で示す座標(X,Y)の輝度値Dy(X,Y)を含む画素である。
SDRAM206から1個の画素の輝度データを取得した後、輝点検索部211は、取得した画素の輝度データが示す輝度値が0を超えているか否かを判定する。なお、ステップS703の例では0としているが、必ずしも0とすることはなく、所定の低輝度閾値で良い。輝度値Dy(X,Y)が0を超えている場合、取得した画素の輝度データが0でないことを示す。
【0071】
次に、輝点検索部211は、座標(X,Y)の画素の輝度データが示す輝度値Dy(X,Y)が予め設定された高輝度閾値Thを超えているか否かを判定する(ステップS703)。
この判定の結果、輝度値Dy(X,Y)が高輝度閾値Thを超えている場合、輝点検索部211は、座標(X,Y)の画素が輝点であると判定する。これにより、輝点検索部211は、輝度値Dy(X,Y)を輝点の輝度値としてSDRAM206に記憶させるとともに、座標(X,Y)を輝点位置としてSDRAM206に記憶する。
【0072】
次に、輝点検索部211は、高輝度閾値Th以上の輝度で、かつ座標(X,Y)が含まれる領域をスキャンし、当該領域の水平方向と垂直方向との長さの平均を輝点サイズとし、当該領域の中心を輝点位置とする。輝点検索部211は、輝点サイズと輝点位置と当該輝点位置における輝度をまとめて輝点サイズ・輝点位置・輝度情報としてSDRAM206に記憶する(ステップS704)。
【0073】
この後、輝点検索部211は、通常画像データにおける座標(X,Y)の画素の色から輝点位置における光源色を特定する(ステップS705)。そして、輝点検索部211は、特定した光源色を、上記記憶した輝度値Dy(X,Y)及び輝点位置(X,Y)と関連付けてSDRAM206に記憶する。ここで、座標(X,Y)の画素の色は、例えば通常画像データの座標(X,Y)における画素の色差データから彩度及び色相を算出することによって特定できる。この他、輝度及び色差データからRGBデータを算出する等して光源色の特定を行っても良い。
【0074】
光源色の判定の後、輝点検索部211は、Xに水平方向に加算(X=X+1)する(ステップ706)。
次に、輝点検索部211は、XがW以下であるか否かを判定する(ステップS707)。この判定の結果、XがW以下である場合、輝度検出画像データの1行分の画素に対する輝点検索が終了していないことを示す。この場合、輝点検索部211は、上記ステップS703に戻る。
【0075】
また、上記ステップS707の判定の結果、XがWを越えた場合、輝度検出画像データの1行分の画素に対する輝点検索が終了したことを示す。この場合、輝点検索部211は、Yに垂直方向の離散ステップhを加算するとともに、Xに1を設定する(ステップ708)。続いて、輝点検索部211は、YがH以下であるか否かを判定する(ステップS709)。
【0076】
上記ステップS709の判定の結果、YがH以下である場合、輝度検出画像データの全画素に対する輝点検索が終了していないことを示す。この場合、輝点検索部211は、上記ステップS703に戻る。
一方、上記ステップS709の判定の結果、YがHを越えた場合、輝度検出画像データの全画素に対する輝点検索処理が終了したことを示す。この場合に、輝点検索部211は、図9に示す輝点検索処理を終了する。
【0077】
次に、光源色検索処理について図11に示す光源色検索処理フローチャートを参照して説明する。
ここで、色情報を検索する座標をV(X,Y)、検索された色情報のデータをDv(X,Y)、色情報を検索する上限回数をLとする。
先ず、輝点色推定部218bは、検索する座標V(X,Y)に対して色情報の検索が何回目なのかを示すカウンタNを(N=1)に初期化する(ステップS801)。
次に、輝点色推定部218bは、SDRAM206に一時記憶されている輝点サイズと輝点位置と当該輝点位置における輝度の情報を読み込む(ステップS802)。
【0078】
次に、輝点色推定部218bは、SDRAM206に一時記憶されている被写体の傾き情報から光源色の検索で除外する検索ラインを指定する(ステップS803)。この場合、輝点色推定部218bは、例えば後述する図16(a)(b)に示すような画像データ中の主に建築物に対して垂直方向Ha及び水平方向Hbとなるラインを除外するように指定する。なお、水平垂直判別部210は、画像データ中の被写体の垂直方向Ha及び水平方向Hbを判別する。ここで、水平方向と垂直方向とは、図16(a)(b)に示すような画像データ自体の垂直方向Ha及び水平方向Hbと、画像データ中の被写体に対する垂直方向Ha及び水平方向Hbとを含む。従って、輝点色推定部218bは、水平垂直判別部210により判別された垂直方向Ha及び水平方向Hbに基づいて除外する当該垂直方向Ha及び水平方向Hbとなるラインを指定する。
【0079】
次に、輝点色推定部218bは、取得した輝点サイズと輝点位置と当該輝点位置における輝度の情報を使用して、光源色の検索開始位置の座標を指定する(ステップS804)。この場合、サイズが大きく輝点位置の輝度が飽和しているような場合、輝点位置の周辺では、輝度値が飽和している画像データが多い可能性が高い。このため、色情報を読み取れない可能性が高いので、輝点色推定部218bは、光源色の検索開始位置の座標を、輝点位置から距離が離れた座標に指定する。
これとは反対に輝点サイズが小さく、輝点位置の輝度値が飽和していないような場合、輝点色推定部218bは、光源色の検索開始位置の座標を、上記の場合と比較して、輝点位置からの距離が近い座標に指定する。
次に、輝点色推定部218bは、検索された色情報のデータDv(X,Y)を予め設定された閾値Thと比較する(ステップS805)。この比較の結果、色情報のデータDv(X,Y)が閾値Thよりも小さければ、輝点色推定部218bは、ステップS801に戻る。なお、画素値の色情報としては彩度を用いる。画素値の色情報として彩度の場合、閾値Thは、予め設定された彩度を用いる。又は、閾値Thは、RGBの値が不均一になる値、例えばRGBの差分又は比の値が不均一になる値とする。閾値Thは、RGBの値のうちいずれかに対して予め設定された値以下とする。
【0080】
色情報のデータDv(X,Y)が閾値Thよりも大きければ、輝点色推定部218bは、検索する座標V(X,Y)を次の座標V(X,Y)に移動し(ステップS806)、色情報の検索の回数をカウントするためのカウンタNを(N=N+1)にカウントする(ステップS807)。次に、輝点色推定部218bは、カウンタNのカウント値が色情報を検索する上限回数をLよりも大きいか否かを判別する。この判別の結果、カウンタNのカウント値が上限回数Lよりも小さければ、輝点色推定部218bは、上記ステップS805に戻る。カウンタNのカウント値が上限回数Lよりも多きければ、輝点色推定部218bは、光源色を白と決定する(ステップS809)。
【0081】
なお、輝点検索部211は、上記したようにステップS705において、通常画像データにおける座標(X,Y)の画素の色から輝点位置における光源色を特定する。この輝点検索部211は、特定した光源色を、上記記憶した輝度値Dy(X,Y)及び輝点位置(X,Y)と関連付けてSDRAM206に記憶する。座標(X,Y)の画素の色は、例えば通常画像データの座標(X,Y)における画素の色差データから彩度及び色相を算出することによって特定される。この他、輝度及び色差データからRGBデータを算出する等して光源色の特定を行っても良い。
【0082】
ここで、輝点色推定部218bは、上記ステップS806において、検索する座標V(X,Y)を次の座標V(X,Y)に移動して色情報の検索を行う。すなわち、輝点色推定部218bは、画像データにおける輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点色を推定する。
この輝点色推定部218bは、複数の検索座標のうち輝点座標からの距離が短い検索座標から遠い検索座標に向かって検索対象とする。
この輝点色推定部218bは、輝点座標を中心として放射状に延びる1本以上の線上に複数の検索座標を設定する。この場合、輝点色推定部218bは、図12に示すように放射状に延びる1本以上の線を垂直方向Ve及び水平方向Hoを除く方向に複数の検索座標を設定する。
この輝点色推定部218bは、垂直方向Ve及び水平方向Hoとして画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
そして、輝点色推定部218bは、水平垂直判別部210により判別された垂直方向Ve及び水平方向Hoとの各線上への検索座標の設定を除外する。
【0083】
図12は検索する座標V(X,Y)の移動の具体的な一例を示す。輝点色推定部218bは、放射状に延びる1本以上の線、例えば2本の線La、Lbを垂直方向Ve及び水平方向Hoを除く方向に設定し、これら線La、Lb上に複数の検索座標を設定する。
輝点色推定部218bは、輝点座標(中心座標)Kの周辺部、例えば輝点座標Kから予め設定された距離の離れた周辺座標を起点Qとし、この起点Qから次第に距離が離れると共に、当該起点Qの周囲を回るような同心円的な検索用曲線Rを設定し、この検索用曲線R上に複数の検索座標を設定する。
【0084】
この検索用曲線R上の各検索座標は、輝点座標Kから次第に距離が離れるが、この輝点座標Kから各検索座標までの距離dnは、次式により表される。
【0085】
【数1】
ここで、n=0,1,2,3,…(整数)、Xは輝点座標のx方向の値、Yは輝点座標のy方向の値、tは検索開始座標へのオフセット量、nは検索回数である。
図13乃至図15は画素レベルでの検索座標の移動の一例を模式的に示す。図13は画像データ上で斜め方向のみで、かつ離散的に検索座標を設定して色検索を行う場合を示す。この検索する座標V(X,Y)の移動は、検索座標「1」「2」…「5」の各画素の順に行われる。
図14は輝点座標Kが飽和している場合の画素レベルでの検索座標の移動の一例を模式的に示す。輝点座標Kの輝度値が飽和している場合、輝点座標Kの付近に色情報がないので、輝点座標Kの輝度値に応じて検索開始座標へのオフセット量tを設定する。このオフセット量tは、輝点座標Kの輝度値が大きい程大きな量となり、輝度値が小さければ小さな量となる。すなわち、輝点座標Kの輝度値が大きる成る程、輝度値の飽和している領域が広くなるので、オフセット量tは、輝点座標Kの輝度値が大きる成る程、大きな量に設定される。輝点座標Kの輝度値とオフセット量tとの関係は、予め設定しておけばよい。
【0086】
図15は輝点座標Kが飽和していない場合の画素レベルでの検索座標の移動の一例を模式的に示す。この場合、輝点座標Kの付近に色情報があるので、オフセット量tをなくし、例えば輝点座標Kの隣の画素に検索開始座標を設定する。
以上のように輝点座標Kの周辺部から同心円的でかつ離散的な検索座標V(X,Y)の移動であれば、全ての画素を検索するよりも高速に色検索を行うことが出来る。
【0087】
又、輝点色推定部218bは、図12に示すように画像データ中の垂直方向Ve及び水平方向Hoを除く方向に複数の検索座標を設定するが、水平垂直判別部210により判別された撮像装置の傾きに応じて画像データ中の被写体に対する垂直方向及び水平方向を設定し、これら垂直方向及び水平方向上における検索座標の設定を除外する。
【0088】
図16(a)は画像データ中に建築物Hが存在する。水平垂直判別部210は、画像データ中の建築物Hに対する垂直方向Ha及び水平方向Hbを設定し、これら垂直方向Ha及び水平方向Hb上における検索座標の設定を除外する。すなわち、建築物Hを被写体とする場合、光源が建築物Hに対して垂直方向Ha及び水平方向Hbに連なっているケースが多い。このような建築物H等の被写体では、光源の色検索を建築物Hに対して垂直方向Ha及び水平方向Hbに行うと、これら垂直方向Ha及び水平方向Hbに輝度の飽和する画素が連なるために、これら垂直方向Ha及び水平方向Hbで色情報を検索するのが容易でない。このため、画像データ中の建築物Hに対する垂直方向Ha及び水平方向Hbに検索座標を設定することが除外される。これにより、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
【0089】
図16(b)は例えばユーザによって本デジタルカメラを意図的に傾けて撮影したときの画像データを示す。この画像データ中には、画像データ自体の垂直方向及び水平方向に対して建築物Hの垂直方向Ha及び水平方向Hbが傾いている。水平垂直判別部210は、画像データ中で傾いている建築物Hに対する垂直方向Ha及び水平方向Hbを設定し、これら垂直方向Ha及び水平方向Hb上における検索座標の設定を除外する。これにより、上記同様に、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
【0090】
次に、パターン合成処理について図17に示すパターン合成処理フローチャートを参照して説明する。
パターン合成部212は、何番目の輝点情報を読み出すのかを示す変数Nを1にリセットする(ステップS901)。続いて、パターン合成部212は、N番目の輝点情報をSDRAM206から取得する(ステップS902)。その後、パターン合成部212は、ステップS902で取得した輝度値Dy(X,Y)に応じたゲインを上記図2(a)乃至(b)のいずれかに示すようなクロスパターン等の合成用パターンデータの各画素に乗じて当該合成用パターンデータをリサイズする(ステップS903)。このゲインは、例えば輝度値Dy(X,Y)が大きいほど1.0に近い値とし、輝度値Dy(X,Y)が小さいほど0に近い値とする。このようなゲインを合成用パターンデータに乗じることで、輝点の輝度に応じた輝度を有する合成用パターンデータを作成することが可能である。
【0091】
合成用パターンに輝度値Dy(X,Y)に応じたゲインを乗じた後、パターン合成部212は、合成用パターンの色を上記ステップS902で取得した光源色に変更する(ステップS904)。この場合、パターン合成部212は、例えば合成用パターンの全体に色を付けても良いし、又は合成用パターンの一部分に色を付けたり、多色を付けたり、透明にしたり、さらには3次元(3D)化の表示にしたり、グラデーションを付けても良い。
【0092】
次に、パターン合成部212は、通常画像データに合成用パターンデータを合成する(ステップS905)。この際、パターン合成部212は、合成用パターンデータにおける中心と通常画像データにおける座標(X,Y)に対応した画素位置とを一致させるようにして合成を行う。
【0093】
合成用パターンを合成した後、パターン合成部212は、Nに1を加える(ステップS906)。続いて、パターン合成部212は、Nが輝度情報の数C以下であるか否かを判定する(ステップS907)。この判定の結果、NがC以下である場合、パターン合成部212は、上記ステップS902に戻る。この場合、次の輝点に対するパターン合成が行われる。一方、NがCを越えた場合、パターン合成部212は、図16に示すパターン合成処理を終了する。
【0094】
このように上記第1の実施の形態によれば、画像データにおける輝点を検索してその輝点座標を求め、この輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定し、この推定された輝点色に応じて輝点座標の近傍にクロスパターン等を描画するので、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる。すなわち、画像データの全ての画素を検索することがなく、例えば図12に示すように輝点座標Kの周辺部から同心円的でかつ離散的に検索座標V(X,Y)を設定するので、色検索を検索するための処理量を少なくし、色検索に要する処理時間を短縮して高速処理を実現できる。このように高速処理ができるので、例えば輝点の多い夜景の撮影や、ライブビュー表示を行うときなどでも通常の画像表示と同様な速度で光源色を反映した画像を表示することができる。
【0095】
輝点座標Kの輝度値が飽和している場合、例えば図13に示すように輝点座標Kの輝度値に応じて検索開始座標へのオフセット量tを設定するので、色情報の無い輝点座標Kの付近で色検索を行うことなく、色検索を検索するための処理量を少なくし、色検索に要する処理時間を短縮できる。又、図15に示すように輝点座標Kが飽和していない場合は、オフセット量tを無くし、例えば輝点座標Kの隣の画素に検索開始座標を設定することにより、色情報を取得するのに要する時間を短縮できる。
【0096】
輝点の検索座標V(X,Y)を設定する場合、輝点の検索を行う処理時間や検索座標V(X,Y)の数を予め設定してもよい。これにより、色検索の処理の高速化を図れる。
又、図16(a)に示すように建築物Hを被写体とする場合、光源が建築物Hに対して垂直方向Ha及び水平方向Hbに連なっているケースが多いので、これら垂直方向Ha及び水平方向Hbでは輝度の飽和する画素が連なり、色情報を検索するのが容易でないが、これら垂直方向Ha及び水平方向Hbへの検索座標の設定を除外するので、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
図16(b)に示すように本デジタルカメラを意図的に傾けて撮影を行った場合でも、画像データ中で傾いている建築物Hに対する垂直方向Ha及び水平方向Hb上における検索座標の設定を除外するので、上記同様に色情報の検索を高速化できる。
【0097】
従って、光源色である高輝度部の周辺の色をクロスフィルター効果に反映させることができ、より光学フィルターに近い自然な効果を画像処理で得ることが出来る。さらに、建築物H等の主要被写体の形状等の特性を活かした検索方法の改善を行なうことによって、高輝度部の周辺の全ての画素を検索する場合に比べて、品質を落とすことなく、大幅に処理時間も短縮することが出来る。
【0098】
次に、本発明の第2の実施の形態として輝点検索処理及びパターン合成処理について説明する。
図18は輝点検索処理フローチャートを示す。なお、図9と同一部分には同一符号を付してその詳しい説明は省略する。この輝点検索処理は、上記図9に示す輝点検索処理フローチャートにおける上記ステップS704の輝点サイズの算出処理を行わないものとなっている。すなわち、この輝点検索処理は、上記ステップS703の判定の結果、輝度値Dy(X,Y)が閾値Thを超えていれば、ステップS1001において、座標(X,Y)の輝度を算出し、輝点位置と輝度値Dy(X,Y)の情報をSDRAM206に記憶する。この後、光源色検索に移る。
【0099】
図19はパターン合成処理フローチャートを示す。なお、図17と同一部分には同一符号を付してその詳しい説明は省略する。このパターン合成処理は、上記図18に示す輝点検索処理が行われた後の処理である。このパターン合成処理は、輝点の輝度に応じてクロスパターン等のパターンに係数を乗じ、この係数を乗じたクロスパターン等を画像データに合成する。すなわち、このパターン合成処理は、上記ステップS902におけるN番目の輝点情報をSDRAM206から取得の後、上記ステップS1011において、輝点の輝度に応じてクロスパターン等のパターンに係数を乗じる。例えば、輝点の輝度が高い程1.0に近い係数をパターンに乗じ、輝点の輝度が低い程0に近い係数をパターンに乗じる。これにより、被写体の輝度に応じた輝度に強弱を有するクロスパターン等のパターンが作成される。
【0100】
このように第2の実施の形態であれば、輝点サイズの算出処理を行わないので、上記第1の実施の形態よりも輝点検索の処理が容易となり、輝点検索処理に要する時間を短縮できる。輝点サイズの算出処理を行わなくても、クロスパターン等の輝線の幅がある程度狭ければ、クロスフィルター効果を反映した効果的な画像にすることができる。又、ハードウェア構成によっては処理を高速化することが可能である。
【0101】
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述の実施形態では、クロスフィルター処理をデジタルカメラにおいて行っている。これに対し、例えばデジタルカメラで得られた画像ファイルに対し、デジタルカメラとは別の画像処理装置においてクロスフィルター処理を行うような場合であっても本実施形態の技術を適用することができる。
【0102】
さらに、上記した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件の適当な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、上述したような課題を解決でき、上述したような効果が得られる場合には、この構成要件が削除された構成も発明として抽出され得る。
【符号の説明】
【0103】
100:交換式レンズ、200:カメラ本体、101:レンズ、102:絞り、103:ドライバ、104:レンズマイクロコンピュータ、105:フラッシュ(Flash)メモリ、106:インターフェイス(I/F)、201:メカシャッタ、202:撮像素子、203:アナログ処理部、204:アナログ/デジタル(A/D)変換部、205:バス、206:SDRAM、207:画像処理部、208:AE処理部、209:AF処理部、210:水平垂直判別部、211:輝点検索部、212:パターン合成部、213:画像圧縮展開部、214:メモリインターフェイス(I/F)、215:記録媒体、216:表示ドライバ、217:表示部、218:マイクロコンピュータ、219:操作部、220:フラッシュ(Flash)メモリ、2071:オプティカルブラック(OB)減算部、2072:ホワイトバランス(WB)補正部、2073:同時化処理部、2074:カラーマトリクス演算部、2075:ガンマ・色再現処理部、2076:エッジ強調処理部、2077:ノイズ低減(NR)処理部、218a:輝点座標取得部、218b:輝点色推定部。
【技術分野】
【0001】
本発明は、撮影等により取得された画像データ中における高輝度な部分に対して所定のパターンを描画等する画像処理を行う画像処理装置、撮影装置、画像処理方法及び画像処理プログラムに関する。
【背景技術】
【0002】
カメラ等の撮影装置は、被写体を撮影するとき、レンズと被写体との間に光学的なフィルターを挿入することで、高輝度を有する被写体の周辺に所定のパターン、例えばクロスパターン(十字形状のパターン)を追加したような効果、すなわちクロスフィルター効果を有する写真の撮影をすることができる。パターンとしては、クロスパターン以外にも、クロスパターンを2つ重ねたような8本線のパターンを生じるフィルターや、6本線のパターンを生じるフィルターなどが存在する。
【0003】
一方、デジタルカメラでは、撮影により取得した画像データ中の高輝度の部分に上記パターンを描画することで、光学的なフィルターを用いて撮影したような画像データを作成する機能を持つものがある。かかる技術を有するものとしては、例えば特許文献1、2がある。
特許文献1は、ある閾値を超える輝点を検索し、検索された輝点の周辺をさらに検索して光源と考えられる領域の中心を算出し、クロスのパターンを描画することで、クロスフィルター効果を画像処理で実現する方法を開示する。特許文献2は、撮影画像における光輝度部を検索し、光輝度部に係数を乗算しながら位置をずらし加算することで、クロス効果を画像処理で実現する方法を開示する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第4207124号公報
【特許文献2】特公平7−113961号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
デジタルカメラでは、JPEG形式の画像データに対する編集等において、画像データ中の高輝度部分を検索し、この検索された高輝度部分の近傍にクロスパターンを描画することで、クロスフィルター効果を生じさせた画像データを生成する。
クロスフィルター効果を生じさせるためには、撮影画像データ内の各画素が高輝度部分か否かを判断しなければいけない。しかしながら、昨今のデジタルカメラは、画素数が増大している影響で、クロスフィルター効果を生じさせる場合、高輝度部分の画素を検索するための処理に時間を要し、通常の撮影時の処理と比較して処理に時間がかかる傾向にある。さらに、クロスフィルター効果を生じさせる場合、高輝度部分の周辺の色を反映させると、クロスフィルター効果をより効果的に現すことが出来る。
【0006】
しかしながら、高輝度部分を判別した後、更に当該高輝度部分の周辺の色を検索するとなると、処理時間が益々増大してしまう。クロスフィルター効果に高輝度部分として例えば光源等の色を反映させないと、光学クロスフィルターと比較して味気ない画像になってしまう。
そこで本発明の目的は、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる画像処理装置、撮影装置、画像処理方法及び画像処理プログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の主要な局面に係る画像処理装置は、画像データにおける輝点を検索する輝点検索部と、前記輝点検索部により検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得部と、前記画像データにおける前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点色を推定する輝点色推定部と、前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理部とを具備する。
【0008】
本発明の主要な局面に係る画像処理方法は、画像データにおける輝点を検索し、前記検索された前記輝点の前記画像データにおける輝点座標を求め、前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定し、前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する。
【0009】
本発明の主要な局面に係る画像処理プログラムは、コンピュータに、画像データにおける輝点を検索する輝点検索機能と、前記検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得機能と、前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定する輝点色推定機能と、前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理機能とを実現する。
【発明の効果】
【0010】
本発明によれば、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる画像処理装置、撮影装置、画像処理方法及び画像処理プログラムを提供できる。
【図面の簡単な説明】
【0011】
【図1】本発明に係る撮像装置としてのデジタルカメラの第1の実施の形態を示す構成図。
【図2】同カメラによる画像データに合成する所定のパターンの一例を示す摸式図。
【図3】同カメラにおけるメイン動作を示すフローチャート。
【図4】同カメラにおける静止画処理を示すフローチャート。
【図5】同カメラにおける動画処理を示すフローチャート。
【図6】同カメラにおける再生処理を示すフローチャート。
【図7】同カメラにおける画像処理を示すフローチャート。
【図8】同カメラにおける現像処理を示すフローチャート。
【図9】同カメラにおける輝点検索処理を示すフローチャート。
【図10】同カメラにおける輝点検索処理を説明するための模式図。
【図11】同カメラにおける光源色検索処理を示すフローチャート。
【図12】同カメラの輝点色推定部による検索する座標V(X,Y)の移動の具体的な一例を示す模式図。
【図13】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図14】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図15】同カメラにおける画素レベルでの検索座標の移動の一例を示す模式図。
【図16】同カメラにおける水平垂直判別部により設定した垂直方向及び水平方向上の検索座標の除外を示す図。
【図17】同カメラにおけるパターン合成処理を示すフローチャート。
【図18】本発明に係る撮像装置としてのデジタルカメラの第2の実施の形態における輝点検索処理フローチャート。
【図19】同カメラにおけるパターン合成処理を示すフローチャート。
【発明を実施するための形態】
【0012】
以下、本発明の第1の実施の形態について図面を参照して説明する。
図1は撮像装置の一例としてのデジタルカメラの構成図を示す。このデジタルカメラは、交換式レンズ100と、カメラ本体200とを有するレンズ交換式デジタルカメラの例を示す。但し、以下に説明する本発明の実施形態に係る技術はコンパクト式デジタルカメラや携帯電話、携帯情報端末、ゲーム機器等にも適用可能である。
【0013】
交換式レンズ100は、レンズ101と、絞り102と、ドライバ103と、レンズマイクロコンピュータ104と、フラッシュ(Flash)メモリ105とを有する。交換式レンズ100がカメラ本体200に装着された際に、交換式レンズ100のレンズマイクロコンピュータ104は、インターフェイス(I/F)106を介してカメラ本体200のマイクロコンピュータ218と通信可能に接続される。
【0014】
レンズ101は、フォーカスレンズやズームレンズ等の1つ以上のレンズから構成されており、図示しない被写体からの光学像(被写体像)を撮像素子202に集光する。絞り102は、撮像素子202に集光される被写体像の光量を調節する。
ドライバ103は、モータ等を有し、レンズマイクロコンピュータ104の制御の下、レンズ101を構成するフォーカスレンズやズームレンズをその光軸方向に駆動する。また、ドライバ103は、レンズマイクロコンピュータ104の制御の下、絞り102を開閉する。
【0015】
レンズマイクロコンピュータ104は、カメラ本体200のマイクロコンピュータ218の制御に従って交換式レンズ100の動作を制御する。また、レンズマイクロコンピュータ104は、Flashメモリ105に記憶されているレンズ情報をマイクロコンピュータ218に送信することも行う。Flashメモリ105は、レンズ101の収差といったレンズ情報等の交換式レンズ100の各種動作に必要な情報を記憶している。
【0016】
カメラ本体200は、メカシャッタ201と、撮像素子202と、アナログ処理部203と、アナログ/デジタル(A/D)変換部204と、バス205と、SDRAM206と、画像処理部207と、AE処理部208と、AF処理部209と、水平垂直判別部210と、輝点検索部211と、パターン合成部212と、画像圧縮展開部213と、メモリインターフェイス(I/F)214と、記録媒体215と、表示ドライバ216と、表示部217と、マイクロコンピュータ218と、操作部219と、フラッシュ(Flash)メモリ220とを有する。
【0017】
メカシャッタ201は、撮像素子202の光電変換面を遮光状態又は露出状態とすることで撮像素子202の露光時間を調節する機械的機構である。
撮像素子202は、被写体像を電気信号に変換するための光電変換面を有する。光電変換面は、2次元平面状に配列された複数のフォトダイオードと、これらフォトダイオードの前面に設けられたカラーフィルターとを有する。カラーフィルターは、例えば原色系ベイヤ配列のカラーフィルターである。このような撮像素子202は、レンズ101を介して集光された被写体像を撮像し、被写体像を電気信号(以降、アナログ撮像信号と称する)として出力する。ここで、撮像素子202は、CMOS方式の撮像素子でもCCD方式の撮像素子でも良い。また、撮像素子202は、露光時間を電子的に制御する電子シャッタ機能を有していることが望ましい。
【0018】
アナログ処理部203は、撮像素子202から出力されたアナログ撮像信号に対して各種のアナログ処理を行う。このアナログ処理としては、例えば、リセットノイズの低減処理、波形整形処理、ゲイン制御処理が含まれる。
A/D変換部204は、アナログ処理部203から出力されたアナログ撮像信号をデジタル信号(以降、撮像データと言う)に変換する。この撮像データは、画像処理部207による画像処理前のデジタル画像であり、RAWデータとも呼ばれる。
【0019】
バス205は、カメラ本体200の内部で発生した各種のデータを転送する。SDRAM206は、カメラ本体200内部で発生した各種のデータを一時的に記憶する。
画像処理部207は、撮像データに対する各種の画像処理を行って画像データを生成する。この画像処理部207は、オプティカルブラック(OB)減算部2071と、ホワイトバランス(WB)補正部2072と、同時化処理部2073と、カラーマトリクス演算部2074と、ガンマ・色再現処理部2075と、エッジ強調処理部2076と、ノイズ低減(NR)処理部2077とを有する。
【0020】
OB減算部2071は、撮像データにおける暗電流成分の影響を除去するためのOB減算を行う。WB補正部2072は、撮像データの色バランスを補正するWB補正処理を行う。同時化処理部2073は、1画素が1つの色成分に対応している撮像データを、1画素が3つの色成分に対応している撮像データに変換する同時化処理を行う。カラーマトリクス演算部2074は、撮像データ全体の色相や彩度の調節を行う。ガンマ・色再現処理部2075は、撮像データに対するガンマ変換処理、色再現処理を行う。エッジ強調処理部2076は、撮像データにおけるエッジ成分を強調するエッジ強調処理を行う。NR処理部2077は、撮像データにおけるノイズ成分を除去するNR処理を行う。
本実施の形態では、OB減算部2071、WB補正部2072、同時化処理部2073、カラーマトリクス演算部2074、ガンマ・色再現処理部2075、エッジ強調処理部2076及びNR処理部2077による処理が施された撮像データを画像データと言うこととする。
【0021】
AE処理部208は、撮像データを用いて被写体の輝度を算出する。さらに、AE処理部208は、算出した被写体の輝度に応じて、撮影時における撮像素子202の感度(ISO感度)、撮影時における絞り102の開放量(絞り値)、撮影時における撮像素子202の露光時間(シャッタ速)を決定する。なお、被写体の輝度は、撮像データから算出するだけでなく、例えば専用の測光センサで測定するようにしても良い。
AF処理部209は、撮像データから高周波成分の信号を取り出し、取り出した高周波成分の信号を積算してAF用の合焦評価値を取得する。
【0022】
水平垂直判別部210は、画像データ中の被写体の水平方向と垂直方向とを判別する。ここで、水平方向と垂直方向とは、画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
輝点検索部211は、画像処理部207で得られた画像データにおける高輝度画素(輝点)を抽出する。
パターン合成部(描画処理部)212は、輝点検索部211により検索された輝点色に応じて輝点座標の近傍にパターンを描画する。すなわち、このパターン合成部212は、輝点検索部211による輝点の抽出結果に応じて画像処理部207で得られた画像データに合成用パターンを合成することで画像データにクロスフィルター効果を与える。なお、輝点検索部211及びパターン合成部212の動作の詳細については後述する。
【0023】
画像圧縮展開部213は、画像の記録時において、画像処理部207における画像処理によって得られた画像データに対してJPEG方式等の静止画圧縮処理又はMPEG方式等の動画圧縮処理を施す。また、画像圧縮展開部213は、画像の再生時において、圧縮処理が施された画像データに対して展開(伸張)処理を施す。
メモリI/F214は、マイクロコンピュータ218等が記録媒体215にアクセスするためのインターフェイスである。記録媒体215は、例えばカメラ本体200に着脱自在になされたメモリカードであって、画像圧縮展開部213によって圧縮された画像データを含む画像ファイル等が記録される。
【0024】
表示ドライバ216は、画像処理部207で得られた画像データ又は画像圧縮展開部213で伸張された画像データを映像信号に変換して表示部217に出力する。この表示部217は、例えば液晶ディスプレイ(LCD)であり、表示ドライバ216からの映像信号に基づく画像を表示する。
【0025】
マイクロコンピュータ218は、メカシャッタ201や撮像素子202の動作制御等のカメラ本体200の各種シーケンスを統括的に制御する。また、マイクロコンピュータ218は、交換式レンズ100の装着時には交換式レンズ100の動作も制御する。マイクロコンピュータ218には、操作部219と、Flashメモリ220とが接続されている。
【0026】
操作部219は、例えば電源ボタン、レリーズボタン、再生ボタン、動画ボタン、各種入力キー等の操作部材である。この操作部219は、タッチパネル等で構成されていても良い。ユーザにより操作部219の操作がなされると、マイクロコンピュータ218は、操作部219の操作に対応したシーケンスを実行する。
【0027】
Flashメモリ220は、例えばホワイトバランス補正用のホワイトバランスゲイン、カラーマトリクス演算用のカラーマトリクス係数、ガンマ変換用のガンマテーブルといった画像処理部207の動作に必要なパラメータ等の、カメラ本体200の動作に必要な各種のパラメータを記憶している。
【0028】
さらに、本実施形態において、Flashメモリ220は、パターン記憶部としての機能も有し、パターン合成部212において合成用パターンを生成するために必要なパターンを示すデータ(パターンデータ)も記憶する。このFlashメモリ220に記憶させるパターンは、例えば図2(a)に示すクロスパターンである。このクロスパターンは、中心部から放射状に伸びる複数の直線から構成される。例えば図2(a)で示すクロスパターンは、中央部から伸びる4本の直線で構成されている。そして、クロスパターンを構成する4本の直線は、それぞれ、中央部からの距離に応じて輝度値が低下するとともに線の太さが細くなっている。
【0029】
クロスパターンを構成する直線の本数は4本に限るものではなく、任意の複数本で良い。例えば、図2(b)で示すスノークロスパターンのように、中央部から伸びる6本の直線でパターンを構成するようにしても良いし、図2(c)で示すサニークロスパターンのように、中央部から伸びる8本の直線でパターンを構成するようにしても良い。また、直線の他に曲線を含めるようにしてパターンを構成するようにしても良い。例えば、図2(d)で示すような星型のパターンや、図2(e)で示すようなハート型のパターン等、各種の形状のパターンをFlashメモリ220に記憶させるようにして良い。さらに、図2(a)〜図2(e)で示したパターンを示すパターンデータは、図2(a)〜図2(e)で示したパターンを含む矩形データとして構成しておいても良い。
【0030】
また、Flashメモリ220は、マイクロコンピュータ218が実行する種々のプログラム、例えば画像処理プログラムも記憶する。この画像処理プログラムは、コンピュータであるマイクロコンピュータ218に、画像データにおける輝点を検索する輝点検索機能と、この検索された輝点の画像データにおける輝点座標を求める輝点座標取得機能と、輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定する輝点色推定機能と、この推定された輝点色に応じて輝点座標の近傍に上記図2(a)に示すようなクロスパターンパターンを描画する描画処理機能とを実現する。
【0031】
上記マイクロコンピュータ218は、輝点座標取得部218aと、輝点色推定部218bとを有する。
輝点座標取得部218aは、輝点検索部211により検索された輝点の画像データにおける輝点座標を求める。
輝点色推定部218bは、画像データにおける輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点色を推定する。
【0032】
この輝点色推定部218bは、複数の検索座標のうち輝点座標からの距離が短い検索座標から遠い検索座標に向かって検索対象とする。
この輝点色推定部218bは、輝点座標を中心として放射状に延びる1本以上の線上に複数の検索座標を設定する。この場合、輝点色推定部218bは、放射状に延びる1本以上の線を垂直方向及び水平方向を除く方向に複数の検索座標を設定する。
この輝点色推定部218bは、垂直方向及び前記水平方向として画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
そして、輝点色推定部218bは、水平垂直判別部210により判別された水平方向と垂直方向との各線上への検索座標の設定を除外する。しかるに、輝点色推定部218bは、水平垂直判別部210により判別された撮影装置の撮影時の傾きに基づいて被写体の水平方向と垂直方向とを判別し、かつ水平垂直判別部210により判別された水平方向と垂直方向との各線上への検索座標の設定を除外する。
又、輝点色推定部218bは、輝点色を推定するための条件を有する画素値として例えば所定の彩度以上の彩度を有する画素値を用いて輝点色を推定する。この輝点色推定部218bは、所定の値以下の画素値を用いて輝点色を推定する。
【0033】
パターン合成部(描画処理部)212は、パターン記憶部としてのFlashメモリ220に記憶されている例えば図2(a)で示すクロスパターン等の所定のパターンを、輝点座標に対応する位置に合成する。この場合、パターン合成部212は、Flashメモリ220に記憶されているクロスパターン等の所定のパターンの色相及び彩度を輝点色に応じて変更し、当該変更した所定のパターンを輝点座標に対応する位置に合成する。
【0034】
次に、上記の如く構成されたデジタルカメラの動作について図3に示すメイン動作のフローチャートを参照して説明する。このメイン動作のフローチャートは、例えばユーザによって操作部219の電源ボタンが押される等して本デジタルカメラの電源がオンされた場合に行われる。
【0035】
電源投入後等において、マイクロコンピュータ218は、先ず、自身が有するレジスタに設定されている記録中フラグをOffにする(ステップS101)。記録中フラグは、動画記録中であるか否かを示すフラグである。記録中フラグがOffになっている間は、動画記録中でないことを示す。一方、記録中フラグがOnになっている間は、動画記録中であることを示す。
【0036】
次に、マイクロコンピュータ218は、ユーザによって操作部219の再生ボタンが押されたか否かを判定する(ステップS102)。この判定の結果、再生ボタンが押された場合、マイクロコンピュータ218は、再生処理を実行する(ステップS103)。再生処理の詳細については後述する。
再生処理の実行後又は上記ステップS102の判定の結果で再生ボタンが押されていない場合、マイクロコンピュータ218は、ユーザによって操作部219の動画ボタンが押されたか否かを判定する(ステップS104)。この判定の結果、動画ボタンが押された場合、マイクロコンピュータ218は、記録中フラグを反転させる(ステップS105)。即ち、マイクロコンピュータ218は、記録中フラグがOffの場合にはOnに、Onの場合にはOffにする。
【0037】
記録中フラグの反転後又は上記ステップS105の判定の結果で動画ボタンが押されていない場合、マイクロコンピュータ218は、現在、動画記録中であるか否か、即ち記録中フラグがOnであるか否かを判定する(ステップS106)。この判定の結果、記録中フラグがOnである場合、マイクロコンピュータ218は、動画処理を実行する(ステップS107)。動画処理の詳細については後述する。
【0038】
また、上記ステップS106の判定の結果、記録中フラグがOffである場合、マイクロコンピュータ218は、ユーザによって操作部219のレリーズボタンが半押しされてレリーズボタンの状態がOff状態から1stレリーズスイッチのOn状態に遷移したか否かを判定する(ステップS108)。この判定の結果、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移した場合、マイクロコンピュータ218は、AE処理を行う(ステップS109)。このAE処理において、マイクロコンピュータ218は、AE処理部208により撮像データを用いて被写体の輝度を算出させ、この算出させた被写体の輝度に応じて撮影時における撮像素子202の感度(ISO感度)、撮影時における絞り102の開放量(絞り値)、撮影時における撮像素子202の露光時間(シャッタ速)を決定させる。
【0039】
次に、マイクロコンピュータ218は、AF処理を行う(ステップS110)。このAF処理において、マイクロコンピュータ218は、AF処理部209により合焦評価値を取得させる。このマイクロコンピュータ218は、AF処理部209で取得された合焦評価値により、撮像データにおけるコントラストを評価しつつ、レンズ101のフォーカスレンズを微少量ずつ駆動させるようにレンズマイクロコンピュータ104に指示する。その後、マイクロコンピュータ218は、コントラストが最大となった時点でフォーカスレンズの駆動を停止させるようにレンズマイクロコンピュータ104に指示する。このようなAF処理は、所謂コントラスト方式のAF処理である。AF処理として位相差AF処理を用いるようにしても良い。
【0040】
また、AF処理は、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移したタイミングにおいて実行されるものである。即ち、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移しないタイミング、例えば、レリーズボタンの状態がOff状態のままである場合、1stレリーズスイッチのOn状態のままである場合、後述する2ndレリーズスイッチのOn状態のままである場合等では、AF処理は実行されない。
【0041】
また、上記ステップS108の判定の結果、レリーズボタンの状態が1stレリーズスイッチのOn状態に遷移していない場合、マイクロコンピュータ218は、ユーザによって操作部219のレリーズボタンが全押しされてレリーズボタンの状態が2ndレリーズスイッチのOn状態となっているか否かを判定する(ステップS111)。この判定の結果、レリーズボタンの状態が2ndレリーズスイッチのOn状態である場合、マイクロコンピュータ218は、静止画処理を実行する(ステップS112)。この静止画処理は、レリーズボタンの状態が2ndレリーズスイッチのOn状態である間は実行されるものである。例えば、1枚の静止画像が記録された後であってもレリーズボタンの状態が2ndレリーズスイッチのOn状態であれば、次の静止画撮影を実行する。この静止画処理の詳細については後述する。
【0042】
上記ステップS111の判定の結果、レリーズボタンの状態が2ndレリーズスイッチのOn状態でない場合、マイクロコンピュータ218は、ステップS107の動画処理を実行する。
上記ステップS107、S110、S112の後、マイクロコンピュータ218は、ユーザによって操作部219の電源ボタンが押される等してデジタルカメラの電源がオフされたか否かを判定する(ステップS113)。この判定の結果、デジタルカメラの電源がオフされていない場合、マイクロコンピュータ218は、上記ステップS102に戻る。一方、ステップS113の判定の結果、デジタルカメラの電源がオフされた場合、マイクロコンピュータ218は、図3に示すメイン動作のフローチャートの処理を終了させる。
【0043】
次に、静止画処理について図4に示す静止画処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、撮影処理を実行する(ステップS201)。この撮影処理において、マイクロコンピュータ218は、上記図3に示すステップS109のAE処理において決定されたISO感度、絞り値、シャッタ速に応じて撮像素子202の露光を行う。即ち、マイクロコンピュータ218は、ISO感度に応じてアナログ処理部203におけるゲイン制御量(増幅率)を設定するとともに、絞り値をレンズマイクロコンピュータ104に送信する。レンズマイクロコンピュータ104による制御による絞り102の駆動と同期して、マイクロコンピュータ218は、シャッタ速に応じてメカシャッタ201を動作させて撮像素子202の露光量を制御する。
【0044】
撮影処理の後、マイクロコンピュータ218は、撮影の結果としてSDRAM206に記憶された撮像データに対する画像処理を実行するための制御を行う(ステップS202)。この画像処理は、動画処理の際の画像処理と同一である。詳細については後述する。
画像処理の後、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像(レックビュー画像)を再生する(ステップS203)。
【0045】
続いて、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを静止画ファイルとして記録する処理を行う(ステップS204)。先ず、マイクロコンピュータ218は、静止画ファイルの記録画質等に応じて、画像処理の結果としてSDRAM206に記憶された画像データに対するリサイズ処理を実行するようにリサイズ処理部2079に指示する。その後、マイクロコンピュータ218は、リサイズ処理の結果としてSDRAM206に記憶された画像データに対する静止画圧縮処理を実行するように画像圧縮展開部213に指示する。この指示を受けて画像圧縮展開部213は、JPEG方式等の静止画圧縮処理を行い、圧縮した画像データをSDRAM206に記憶させる。その後、マイクロコンピュータ218は、画像圧縮展開部213により圧縮された画像データをSDRAM206から読み出し、読み出した画像データに所定のヘッダ情報を付与した静止画ファイルを作成し、作成した静止画ファイルを記録媒体215に記録する(ステップS205)。静止画ファイルの記録後、マイクロコンピュータ218は、図4に示す静止画処理を終了する。
【0046】
次に、動画処理について図5に示す動画処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、AE処理を実行する(ステップS301)。このAE処理において、マイクロコンピュータ218は、AE処理部208によってISO感度、絞り値、シャッタ速を決定させる。AE処理の後、マイクロコンピュータ218は、撮影処理を実行する(ステップS302)。撮影処理において、マイクロコンピュータ218は、ISO感度に応じてアナログ処理部203におけるゲイン制御量(増幅率)を設定するとともに、絞り値をレンズマイクロコンピュータ104に送信する。このレンズマイクロコンピュータ104による制御による絞り102の駆動と同期して、マイクロコンピュータ218は、シャッタ速に応じて撮像素子202の電子シャッタ機能を動作させて撮像素子202の露光量を制御する。撮像素子202の露光により得られた撮像データはSDRAM206に記憶される。
【0047】
撮影処理の後、マイクロコンピュータ218は、撮影処理の結果としてSDRAM206に記憶された撮像データに対する画像処理を実行するための制御を行う(ステップS303)。この画像処理の詳細については後述する。
画像処理の後、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像(ライブビュー画像)を再生する(ステップS304)。
【0048】
続いて、マイクロコンピュータ218は、現在、動画記録中であるか否か、即ち記録中フラグがOnであるか否かを判定する(ステップS305)。この判定の結果、記録中フラグがOffである場合、マイクロコンピュータ218は、図5に示す動画処理を終了する。この場合、撮影により得られた画像(動画像)が表示部217に表示されるのみとなる。このようにして表示部217に表示される動画像は、静止画撮影前の構図確認等に用いられるライブビュー画像として利用される。
【0049】
また、上記ステップS305の判定の結果、記録中フラグがOnである場合、マイクロコンピュータ218は、画像処理の結果としてSDRAM206に記憶された画像データを動画ファイルとして記録する処理を行う(ステップS306)。すなわち、マイクロコンピュータ218は、動画ファイルの記録画質等に応じて、画像処理の結果としてSDRAM206に記憶された画像データに対するリサイズ処理を実行するようにリサイズ処理部2079に指示する。その後、マイクロコンピュータ218は、リサイズ処理の結果としてSDRAM206に記憶された画像データに対する動画圧縮処理を実行するように画像圧縮展開部213に指示する。この指示を受けて画像圧縮展開部213は、記録する動画像ファイルの形式に応じた圧縮処理を行い、圧縮した画像データをSDRAM206に記憶させる。その後、マイクロコンピュータ218は、画像圧縮展開部213により圧縮された画像データをSDRAM206から読み出し、読み出した画像データに所定のヘッダ情報を付与した動画ファイルを作成または追記し、この作成した動画ファイルを記録媒体215に記録する。動画ファイルの記録後、マイクロコンピュータ218は、図5に示す動画処理を終了する。
【0050】
次に、再生処理について図6に示す再生処理フローチャートを参照して説明する。
マイクロコンピュータ218は、ユーザによる操作部219に対する入力キーを受けてファイルを選択する(ステップS401)。このファイルの選択は、例えば記録媒体215に記録されている動画ファイル及び静止画ファイルの一覧を表示部217に表示する。なお、この表示では、動画ファイルであれば最初のフレーム画像を表示する。ユーザは、操作部219における例えば十字キーを操作して再生したい動画ファイル及び静止画ファイルを選択し、かつ同操作部219における決定ボタンを押し操作することにより再生するファイルを決定する。
【0051】
ファイルの選択がなされると、マイクロコンピュータ218は、選択されたファイルが動画ファイルであるか否かを判定する(ステップS402)。この判定の結果、選択されたファイルが動画ファイルである場合、マイクロコンピュータ218は、動画ファイルのヘッダ情報を参照して動画像ファイルを構成する画像データの数(フレーム数)を取得する(ステップS403)。
次に、マイクロコンピュータ218は、表示部217に表示させるべき画像データのフレーム番号を示す変数Nを1(最初のフレームを示す値:N=1)にリセットする(ステップS404)。その後、マイクロコンピュータ218は、選択された動画ファイルのNフレーム目の画像データを展開するように画像圧縮展開部213に指示する(ステップS405)。この指示を受けて画像圧縮展開部213は、選択された動画像ファイルを展開し、展開の結果として得られた動画像ファイルのNフレーム目の画像データをSDRAM206に記憶する。
【0052】
画像データが展開された後、マイクロコンピュータ218は、SDRAM206に記憶されたNフレーム目の画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像を再生する(ステップS406)。Nフレーム目に対応した画像の表示後、マイクロコンピュータ218は、Nに1を加算(N=N+1)する(ステップS407)。その後、マイクロコンピュータ218は、Nがフレーム数以下であるか否かを判定する(ステップS408)。
【0053】
上記ステップS408の判定の結果、Nがフレーム数以下である、即ち最終フレーム目までの画像表示が終了していない場合、マイクロコンピュータ218は、上記ステップS405に戻り、次のフレームの画像表示を行う。一方、上記ステップS408の判定の結果、Nがフレーム数を越えた場合、マイクロコンピュータ218は、図6に示す再生処理を終了する。
【0054】
また、上記ステップS402の判定の結果、選択されたファイルが動画ファイルでない、即ち静止画ファイルである場合、マイクロコンピュータ218は、選択された静止画ファイルを展開するように画像圧縮展開部213に指示する(ステップS409)。この指示を受けて画像圧縮展開部213は、選択された静止画ファイルを展開し、展開の結果として得られた画像データをSDRAM206に記憶する。
【0055】
画像データが展開された後、マイクロコンピュータ218は、SDRAM206に記憶された画像データを再生するように表示ドライバ216に指示する。この指示を受けて表示ドライバ216は、SDRAM206から画像データを読み出し、読み出した画像データを映像信号に変換して表示部217に出力する。表示部217は、この映像信号に基づいて画像を再生する(ステップS410)。その後、マイクロコンピュータ218は、図6に示す再生処理を終了する。
【0056】
次に、画像処理について図7に示す画像処理フローチャートを参照して説明する。
マイクロコンピュータ218は、先ず、撮影処理の結果としてSDRAM206に記憶された撮像データに対して通常の画像処理用の画像処理パラメータを用いた現像処理を実行するように画像処理部207に指示する。この指示を受けて、画像処理部207は、通常の画像処理用の画像処理パラメータをFlashメモリ220から読み込む(ステップS501)。
【0057】
通常の画像処理用の画像処理パラメータの読み込み後、画像処理部207は、通常の画像処理用の画像処理パラメータを用いてSDRAM206に撮像データに対する現像処理を実行し、通常の画像処理用の画像処理パラメータを用いた現像処理の結果として得られた画像データ(以下、通常画像データと称する)を、SDRAM206における撮像データの記憶領域とは別の記憶領域に記憶する(ステップS502)。現像処理の詳細については後述する。
【0058】
ここで、通常画像処理用の画像処理パラメータとしては、例えばWB補正に用いられるWBゲイン、カラーマトリクス演算に用いられるカラーマトリクス、ガンマ変換処理に用いられるガンマテーブル、NR低減処理に用いられるNRパラメータ、が含まれる。
通常の画像処理用の画像処理パラメータを用いた現像処理の後、マイクロコンピュータ218は、画像処理モードとしてクロスフィルターモードが設定されているか否かを判定する(ステップS503)。画像処理モードは、例えば操作部219の入力キーの操作によって設定することができる。なお、クロスフィルターモードの設定の際には、通常画像データ中の輝点に対応した画素に合成するパターンの形状を例えば上記図2(a)〜図2(e)に示すパターンの中から選択しておく。
上記ステップS503の判定の結果、画像処理モードとしてクロスフィルターモードが設定されていない場合、マイクロコンピュータ218は、図7に示す画像処理を終了する。
【0059】
一方、上記ステップS503の判定の結果、画像処理モードとしてクロスフィルターモードが設定されている場合、マイクロコンピュータ218は、撮影処理の結果としてSDRAM206に記憶された撮像データに対してクロスフィルター処理を施すように画像処理部207に指示する。この指示を受けて、画像処理部207は、輝度検出画像処理用の画像処理パラメータをFlashメモリ220から読み込む(ステップS504)。
【0060】
輝度検出画像処理用の画像処理パラメータの読み込み後、画像処理部207は、輝度検出画像処理用の画像処理パラメータを用いてSDRAM206に記憶された撮像データに対する現像処理を実行し、輝度検出画像処理用の画像処理パラメータを用いた現像処理の結果として得られた画像データ(以下、輝度検出画像データと言う)を、SDRAM206における通常画像データの記憶領域とは別の記憶領域に記憶させる(ステップS505)。輝度検出画像処理用の画像処理パラメータを用いた現像処理は、現像処理に使用する画像処理パラメータを輝度検出画像処理用の画像処理パラメータとするだけである。
【0061】
輝度検出画像処理用の画像処理パラメータも通常画像処理用の画像処理パラメータと同様に、WBゲイン、カラーマトリクス、ガンマテーブル、NRパラメータが含まれる。ただし、輝度検出画像処理用の画像処理パラメータは、ガンマテーブルとNRパラメータとが通常画像処理用の画像処理パラメータと異なっている。輝度検出画像処理用のガンマテーブルは、通常画像処理用の画像処理パラメータに比べて低輝度側をより圧縮する特性を有しているものとする。このような輝度検出画像処理用のガンマテーブルでガンマ変換を行った場合には撮像データにおける低輝度部が0になり易くなる。また、NRパラメータとしては、コアリング閾値や孤立点判定用閾値等がある。コアリング閾値は、細かなノイズを抑えるためのコアリング処理に用いるある所定の範囲を持った閾値である。コアリング処理では、コアリング閾値内の画素値を有する画素の画素値をある一定の値(例えばコアリング閾値の中央値)とする。孤立点判定用閾値は、周辺画素と画素値が異なる孤立点を判定するための閾値である。孤立点は、周辺画素の画素値を用いた補間処理によって除去される。輝度検出画像処理は、通常画像処理に比べてノイズを低減できたほうが良いので、コアリング閾値は大きくし、孤立点と判定する閾値は小さくする。
【0062】
次に、マイクロコンピュータ218は、水平垂直判別部210により画像データ中の被写体の水平方向と垂直方向とを判別させる(ステップS506)。ここで、水平方向と垂直方向とは、画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
【0063】
次に、マイクロコンピュータ218は、輝点検索部211に対して輝点検索処理の実行を指示する。これを受けて、輝点検索部211は、輝点検索処理を行う(ステップS507)。この輝点検索処理は、画像処理部207で得られた画像データにおける高輝度画素(輝点)とこの画素に関するデータとを抽出する。
輝点検索処理の終了後、マイクロコンピュータ218は、パターン変更処理を行うようにパターン合成部212に指示する。パターン変更処理の後、マイクロコンピュータ218は、パターン合成処理を行うようにパターン合成部212に指示する(ステップS508)。パターン合成処理の後、マイクロコンピュータ218は、図7に示す画像処理を終了する。
【0064】
次に、現像処理について図8に示す現像処理フローチャートを参照して説明する。
画像処理部207は、OB減算部2071によりOB減算処理を行う(ステップS601)。OB減算部2071は、入力された撮像データからオプティカルブラック(OB)値を減算することで撮像データにおける暗電流成分を除去する。OB減算の後、画像処理部207は、WB補正部2072によりWB補正処理を行う(ステップS602)。WB補正部2072は、入力された撮像データの色成分毎にWBゲインを乗じることで撮像データの色バランスを補正する。WB補正の後、画像処理部207は、同時化処理部2073により同時化処理を行う(ステップS603)。同時化処理部2073は、入力された撮像データを、補間処理を用いて同時化する。これにより、1画素が原色系ベイヤ配列に対応した1つの色成分を有している撮像データを1画素がRGB3つの色成分を有する撮像データに変換する。
【0065】
同時化処理の後、画像処理部207は、カラーマトリクス演算部2074によってカラーマトリクス演算を行う(ステップS604)。カラーマトリクス演算部2074は、入力された撮像データの各画素にカラーマトリクス係数を乗じることで撮像データの色を変換する。カラーマトリクス演算の後、画像処理部207は、ガンマ・色再現処理部2075によりガンマ変換処理を行う(ステップS605)。ガンマ・色再現処理部2075は、入力された撮像データをマイクロコンピュータ218によって設定されたガンマテーブルを用いてガンマ変換する。ガンマ変換処理の後、画像処理部207は、ガンマ・色再現処理部2075により色補正処理を行う(ステップS606)。色補正処理において、ガンマ・色再現処理部2075は、入力された撮像データの各画素に輝度・色差変換マトリクス係数を乗じることでRGB3つの色成分を有する撮像データを輝度(Y)・色差(Cb、Cr)データに変換する。そして、ガンマ・色再現処理部2075は、色差データに彩度補正係数、色相補正係数を乗じることで撮像データの色補正を行う。
【0066】
色補正処理の後、画像処理部207は、エッジ強調処理部2076によりエッジ強調処理を行う(ステップS607)。エッジ強調処理部2076は、入力された輝度データに対してバンドパスフィルター処理を施して撮像データにおけるエッジ成分を抽出し、この抽出したエッジ成分にエッジ強調量に応じた係数を乗じる。そして、エッジ強調処理部2076は、係数を乗じたエッジ成分をもとの輝度データに加算することで撮像データのエッジ成分を強調する(ステップS607)。エッジ強調処理の後、画像処理部207は、NR処理部2077によりNR処理を行う(ステップS608)。NR処理部2077は、入力された輝度データに対して上述したようなコアリング処理等を施して撮像データにおけるノイズ成分を低減する。
【0067】
NR処理の後、画像処理部207は、一連の現像処理によって得られた画像データをSDRAM206に記憶させた後、図8に示す現像処理を終了する。図8に示す現像処理の順番は、一例であって適宜変更可能である。例えば、WB補正処理の前に同時化処理を行ったり、ガンマ変換処理の前に輝度・色差データへの変換を行ったりしても良い。また、輝度・色差データへの変換は必ずしも行わなくとも良い。
【0068】
次に、輝点検索処理について図9に示す輝点検索処理フローチャートを参照して説明する。
ここで、以下の説明に先立って、輝度検出画像の水平方向画素数(ピクセル)をW、垂直方向画素数(ピクセル)をHと定義する。例えば、図10で示す輝度検出画像データは、W=8、H=4の例を示す。
輝点検索部211は、先ず、輝度検出画像データにおいて輝点検索の対象となる画素の座標を示す変数X、Y(Xは水平位置、Yは垂直位置を示す)のそれぞれを1に初期化する(ステップS701)。座標(X,Y)=(1,1)は、例えば輝度検出画像データにおける左上端の画素であることを示す。
【0069】
変数X、Yに1を設定した後、輝点検索部211は、SDRAM206に記憶された輝度検出画像データを取得する(ステップS702)。
ここで、図8に示す現像処理では、輝度データと色差データとを有する輝度検出画像データが生成されるようになっている。しかしながら、図9に示す輝点検索処理は、輝度データに対して行う処理である。従って、上記ステップS702の処理の際には、輝度データのみを取得すれば良く、色差データについては取得する必要がない。このため、輝度検出画像処理パラメータを用いた現像処理の時点で色差データを生成しないようにしても良い。
【0070】
また、本実施形態では、輝度検出画像データを取得する際、1個の画素の輝度データをSDRAM206から取得する。この画素は、例えば、図10の太線枠で示す座標(X,Y)の輝度値Dy(X,Y)を含む画素である。
SDRAM206から1個の画素の輝度データを取得した後、輝点検索部211は、取得した画素の輝度データが示す輝度値が0を超えているか否かを判定する。なお、ステップS703の例では0としているが、必ずしも0とすることはなく、所定の低輝度閾値で良い。輝度値Dy(X,Y)が0を超えている場合、取得した画素の輝度データが0でないことを示す。
【0071】
次に、輝点検索部211は、座標(X,Y)の画素の輝度データが示す輝度値Dy(X,Y)が予め設定された高輝度閾値Thを超えているか否かを判定する(ステップS703)。
この判定の結果、輝度値Dy(X,Y)が高輝度閾値Thを超えている場合、輝点検索部211は、座標(X,Y)の画素が輝点であると判定する。これにより、輝点検索部211は、輝度値Dy(X,Y)を輝点の輝度値としてSDRAM206に記憶させるとともに、座標(X,Y)を輝点位置としてSDRAM206に記憶する。
【0072】
次に、輝点検索部211は、高輝度閾値Th以上の輝度で、かつ座標(X,Y)が含まれる領域をスキャンし、当該領域の水平方向と垂直方向との長さの平均を輝点サイズとし、当該領域の中心を輝点位置とする。輝点検索部211は、輝点サイズと輝点位置と当該輝点位置における輝度をまとめて輝点サイズ・輝点位置・輝度情報としてSDRAM206に記憶する(ステップS704)。
【0073】
この後、輝点検索部211は、通常画像データにおける座標(X,Y)の画素の色から輝点位置における光源色を特定する(ステップS705)。そして、輝点検索部211は、特定した光源色を、上記記憶した輝度値Dy(X,Y)及び輝点位置(X,Y)と関連付けてSDRAM206に記憶する。ここで、座標(X,Y)の画素の色は、例えば通常画像データの座標(X,Y)における画素の色差データから彩度及び色相を算出することによって特定できる。この他、輝度及び色差データからRGBデータを算出する等して光源色の特定を行っても良い。
【0074】
光源色の判定の後、輝点検索部211は、Xに水平方向に加算(X=X+1)する(ステップ706)。
次に、輝点検索部211は、XがW以下であるか否かを判定する(ステップS707)。この判定の結果、XがW以下である場合、輝度検出画像データの1行分の画素に対する輝点検索が終了していないことを示す。この場合、輝点検索部211は、上記ステップS703に戻る。
【0075】
また、上記ステップS707の判定の結果、XがWを越えた場合、輝度検出画像データの1行分の画素に対する輝点検索が終了したことを示す。この場合、輝点検索部211は、Yに垂直方向の離散ステップhを加算するとともに、Xに1を設定する(ステップ708)。続いて、輝点検索部211は、YがH以下であるか否かを判定する(ステップS709)。
【0076】
上記ステップS709の判定の結果、YがH以下である場合、輝度検出画像データの全画素に対する輝点検索が終了していないことを示す。この場合、輝点検索部211は、上記ステップS703に戻る。
一方、上記ステップS709の判定の結果、YがHを越えた場合、輝度検出画像データの全画素に対する輝点検索処理が終了したことを示す。この場合に、輝点検索部211は、図9に示す輝点検索処理を終了する。
【0077】
次に、光源色検索処理について図11に示す光源色検索処理フローチャートを参照して説明する。
ここで、色情報を検索する座標をV(X,Y)、検索された色情報のデータをDv(X,Y)、色情報を検索する上限回数をLとする。
先ず、輝点色推定部218bは、検索する座標V(X,Y)に対して色情報の検索が何回目なのかを示すカウンタNを(N=1)に初期化する(ステップS801)。
次に、輝点色推定部218bは、SDRAM206に一時記憶されている輝点サイズと輝点位置と当該輝点位置における輝度の情報を読み込む(ステップS802)。
【0078】
次に、輝点色推定部218bは、SDRAM206に一時記憶されている被写体の傾き情報から光源色の検索で除外する検索ラインを指定する(ステップS803)。この場合、輝点色推定部218bは、例えば後述する図16(a)(b)に示すような画像データ中の主に建築物に対して垂直方向Ha及び水平方向Hbとなるラインを除外するように指定する。なお、水平垂直判別部210は、画像データ中の被写体の垂直方向Ha及び水平方向Hbを判別する。ここで、水平方向と垂直方向とは、図16(a)(b)に示すような画像データ自体の垂直方向Ha及び水平方向Hbと、画像データ中の被写体に対する垂直方向Ha及び水平方向Hbとを含む。従って、輝点色推定部218bは、水平垂直判別部210により判別された垂直方向Ha及び水平方向Hbに基づいて除外する当該垂直方向Ha及び水平方向Hbとなるラインを指定する。
【0079】
次に、輝点色推定部218bは、取得した輝点サイズと輝点位置と当該輝点位置における輝度の情報を使用して、光源色の検索開始位置の座標を指定する(ステップS804)。この場合、サイズが大きく輝点位置の輝度が飽和しているような場合、輝点位置の周辺では、輝度値が飽和している画像データが多い可能性が高い。このため、色情報を読み取れない可能性が高いので、輝点色推定部218bは、光源色の検索開始位置の座標を、輝点位置から距離が離れた座標に指定する。
これとは反対に輝点サイズが小さく、輝点位置の輝度値が飽和していないような場合、輝点色推定部218bは、光源色の検索開始位置の座標を、上記の場合と比較して、輝点位置からの距離が近い座標に指定する。
次に、輝点色推定部218bは、検索された色情報のデータDv(X,Y)を予め設定された閾値Thと比較する(ステップS805)。この比較の結果、色情報のデータDv(X,Y)が閾値Thよりも小さければ、輝点色推定部218bは、ステップS801に戻る。なお、画素値の色情報としては彩度を用いる。画素値の色情報として彩度の場合、閾値Thは、予め設定された彩度を用いる。又は、閾値Thは、RGBの値が不均一になる値、例えばRGBの差分又は比の値が不均一になる値とする。閾値Thは、RGBの値のうちいずれかに対して予め設定された値以下とする。
【0080】
色情報のデータDv(X,Y)が閾値Thよりも大きければ、輝点色推定部218bは、検索する座標V(X,Y)を次の座標V(X,Y)に移動し(ステップS806)、色情報の検索の回数をカウントするためのカウンタNを(N=N+1)にカウントする(ステップS807)。次に、輝点色推定部218bは、カウンタNのカウント値が色情報を検索する上限回数をLよりも大きいか否かを判別する。この判別の結果、カウンタNのカウント値が上限回数Lよりも小さければ、輝点色推定部218bは、上記ステップS805に戻る。カウンタNのカウント値が上限回数Lよりも多きければ、輝点色推定部218bは、光源色を白と決定する(ステップS809)。
【0081】
なお、輝点検索部211は、上記したようにステップS705において、通常画像データにおける座標(X,Y)の画素の色から輝点位置における光源色を特定する。この輝点検索部211は、特定した光源色を、上記記憶した輝度値Dy(X,Y)及び輝点位置(X,Y)と関連付けてSDRAM206に記憶する。座標(X,Y)の画素の色は、例えば通常画像データの座標(X,Y)における画素の色差データから彩度及び色相を算出することによって特定される。この他、輝度及び色差データからRGBデータを算出する等して光源色の特定を行っても良い。
【0082】
ここで、輝点色推定部218bは、上記ステップS806において、検索する座標V(X,Y)を次の座標V(X,Y)に移動して色情報の検索を行う。すなわち、輝点色推定部218bは、画像データにおける輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点色を推定する。
この輝点色推定部218bは、複数の検索座標のうち輝点座標からの距離が短い検索座標から遠い検索座標に向かって検索対象とする。
この輝点色推定部218bは、輝点座標を中心として放射状に延びる1本以上の線上に複数の検索座標を設定する。この場合、輝点色推定部218bは、図12に示すように放射状に延びる1本以上の線を垂直方向Ve及び水平方向Hoを除く方向に複数の検索座標を設定する。
この輝点色推定部218bは、垂直方向Ve及び水平方向Hoとして画像データ自体の垂直方向及び水平方向と、画像データ中の被写体に対する垂直方向及び水平方向とを含む。
そして、輝点色推定部218bは、水平垂直判別部210により判別された垂直方向Ve及び水平方向Hoとの各線上への検索座標の設定を除外する。
【0083】
図12は検索する座標V(X,Y)の移動の具体的な一例を示す。輝点色推定部218bは、放射状に延びる1本以上の線、例えば2本の線La、Lbを垂直方向Ve及び水平方向Hoを除く方向に設定し、これら線La、Lb上に複数の検索座標を設定する。
輝点色推定部218bは、輝点座標(中心座標)Kの周辺部、例えば輝点座標Kから予め設定された距離の離れた周辺座標を起点Qとし、この起点Qから次第に距離が離れると共に、当該起点Qの周囲を回るような同心円的な検索用曲線Rを設定し、この検索用曲線R上に複数の検索座標を設定する。
【0084】
この検索用曲線R上の各検索座標は、輝点座標Kから次第に距離が離れるが、この輝点座標Kから各検索座標までの距離dnは、次式により表される。
【0085】
【数1】
ここで、n=0,1,2,3,…(整数)、Xは輝点座標のx方向の値、Yは輝点座標のy方向の値、tは検索開始座標へのオフセット量、nは検索回数である。
図13乃至図15は画素レベルでの検索座標の移動の一例を模式的に示す。図13は画像データ上で斜め方向のみで、かつ離散的に検索座標を設定して色検索を行う場合を示す。この検索する座標V(X,Y)の移動は、検索座標「1」「2」…「5」の各画素の順に行われる。
図14は輝点座標Kが飽和している場合の画素レベルでの検索座標の移動の一例を模式的に示す。輝点座標Kの輝度値が飽和している場合、輝点座標Kの付近に色情報がないので、輝点座標Kの輝度値に応じて検索開始座標へのオフセット量tを設定する。このオフセット量tは、輝点座標Kの輝度値が大きい程大きな量となり、輝度値が小さければ小さな量となる。すなわち、輝点座標Kの輝度値が大きる成る程、輝度値の飽和している領域が広くなるので、オフセット量tは、輝点座標Kの輝度値が大きる成る程、大きな量に設定される。輝点座標Kの輝度値とオフセット量tとの関係は、予め設定しておけばよい。
【0086】
図15は輝点座標Kが飽和していない場合の画素レベルでの検索座標の移動の一例を模式的に示す。この場合、輝点座標Kの付近に色情報があるので、オフセット量tをなくし、例えば輝点座標Kの隣の画素に検索開始座標を設定する。
以上のように輝点座標Kの周辺部から同心円的でかつ離散的な検索座標V(X,Y)の移動であれば、全ての画素を検索するよりも高速に色検索を行うことが出来る。
【0087】
又、輝点色推定部218bは、図12に示すように画像データ中の垂直方向Ve及び水平方向Hoを除く方向に複数の検索座標を設定するが、水平垂直判別部210により判別された撮像装置の傾きに応じて画像データ中の被写体に対する垂直方向及び水平方向を設定し、これら垂直方向及び水平方向上における検索座標の設定を除外する。
【0088】
図16(a)は画像データ中に建築物Hが存在する。水平垂直判別部210は、画像データ中の建築物Hに対する垂直方向Ha及び水平方向Hbを設定し、これら垂直方向Ha及び水平方向Hb上における検索座標の設定を除外する。すなわち、建築物Hを被写体とする場合、光源が建築物Hに対して垂直方向Ha及び水平方向Hbに連なっているケースが多い。このような建築物H等の被写体では、光源の色検索を建築物Hに対して垂直方向Ha及び水平方向Hbに行うと、これら垂直方向Ha及び水平方向Hbに輝度の飽和する画素が連なるために、これら垂直方向Ha及び水平方向Hbで色情報を検索するのが容易でない。このため、画像データ中の建築物Hに対する垂直方向Ha及び水平方向Hbに検索座標を設定することが除外される。これにより、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
【0089】
図16(b)は例えばユーザによって本デジタルカメラを意図的に傾けて撮影したときの画像データを示す。この画像データ中には、画像データ自体の垂直方向及び水平方向に対して建築物Hの垂直方向Ha及び水平方向Hbが傾いている。水平垂直判別部210は、画像データ中で傾いている建築物Hに対する垂直方向Ha及び水平方向Hbを設定し、これら垂直方向Ha及び水平方向Hb上における検索座標の設定を除外する。これにより、上記同様に、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
【0090】
次に、パターン合成処理について図17に示すパターン合成処理フローチャートを参照して説明する。
パターン合成部212は、何番目の輝点情報を読み出すのかを示す変数Nを1にリセットする(ステップS901)。続いて、パターン合成部212は、N番目の輝点情報をSDRAM206から取得する(ステップS902)。その後、パターン合成部212は、ステップS902で取得した輝度値Dy(X,Y)に応じたゲインを上記図2(a)乃至(b)のいずれかに示すようなクロスパターン等の合成用パターンデータの各画素に乗じて当該合成用パターンデータをリサイズする(ステップS903)。このゲインは、例えば輝度値Dy(X,Y)が大きいほど1.0に近い値とし、輝度値Dy(X,Y)が小さいほど0に近い値とする。このようなゲインを合成用パターンデータに乗じることで、輝点の輝度に応じた輝度を有する合成用パターンデータを作成することが可能である。
【0091】
合成用パターンに輝度値Dy(X,Y)に応じたゲインを乗じた後、パターン合成部212は、合成用パターンの色を上記ステップS902で取得した光源色に変更する(ステップS904)。この場合、パターン合成部212は、例えば合成用パターンの全体に色を付けても良いし、又は合成用パターンの一部分に色を付けたり、多色を付けたり、透明にしたり、さらには3次元(3D)化の表示にしたり、グラデーションを付けても良い。
【0092】
次に、パターン合成部212は、通常画像データに合成用パターンデータを合成する(ステップS905)。この際、パターン合成部212は、合成用パターンデータにおける中心と通常画像データにおける座標(X,Y)に対応した画素位置とを一致させるようにして合成を行う。
【0093】
合成用パターンを合成した後、パターン合成部212は、Nに1を加える(ステップS906)。続いて、パターン合成部212は、Nが輝度情報の数C以下であるか否かを判定する(ステップS907)。この判定の結果、NがC以下である場合、パターン合成部212は、上記ステップS902に戻る。この場合、次の輝点に対するパターン合成が行われる。一方、NがCを越えた場合、パターン合成部212は、図16に示すパターン合成処理を終了する。
【0094】
このように上記第1の実施の形態によれば、画像データにおける輝点を検索してその輝点座標を求め、この輝点座標を含む周辺に予め設定されている複数の検索座標の中から輝点座標との距離が所定距離以上離れている1つ以上の検索座標を検索対象の座標とし、当該検索対象の座標における輝点色を推定するための条件を有する画素値すなわち輝度値が飽和していない画素値に基づいて輝点の輝点色を推定し、この推定された輝点色に応じて輝点座標の近傍にクロスパターン等を描画するので、高輝度部分の周辺の色を反映させたクロスフィルター効果を効果的に現すために、高輝度部分の周辺の色の検索を効率よく行って処理時間を短縮させることができる。すなわち、画像データの全ての画素を検索することがなく、例えば図12に示すように輝点座標Kの周辺部から同心円的でかつ離散的に検索座標V(X,Y)を設定するので、色検索を検索するための処理量を少なくし、色検索に要する処理時間を短縮して高速処理を実現できる。このように高速処理ができるので、例えば輝点の多い夜景の撮影や、ライブビュー表示を行うときなどでも通常の画像表示と同様な速度で光源色を反映した画像を表示することができる。
【0095】
輝点座標Kの輝度値が飽和している場合、例えば図13に示すように輝点座標Kの輝度値に応じて検索開始座標へのオフセット量tを設定するので、色情報の無い輝点座標Kの付近で色検索を行うことなく、色検索を検索するための処理量を少なくし、色検索に要する処理時間を短縮できる。又、図15に示すように輝点座標Kが飽和していない場合は、オフセット量tを無くし、例えば輝点座標Kの隣の画素に検索開始座標を設定することにより、色情報を取得するのに要する時間を短縮できる。
【0096】
輝点の検索座標V(X,Y)を設定する場合、輝点の検索を行う処理時間や検索座標V(X,Y)の数を予め設定してもよい。これにより、色検索の処理の高速化を図れる。
又、図16(a)に示すように建築物Hを被写体とする場合、光源が建築物Hに対して垂直方向Ha及び水平方向Hbに連なっているケースが多いので、これら垂直方向Ha及び水平方向Hbでは輝度の飽和する画素が連なり、色情報を検索するのが容易でないが、これら垂直方向Ha及び水平方向Hbへの検索座標の設定を除外するので、建築物Hに対する垂直方向Ha及び水平方向Hbで色情報を検索することがなく、色情報の検索を高速化できる。
図16(b)に示すように本デジタルカメラを意図的に傾けて撮影を行った場合でも、画像データ中で傾いている建築物Hに対する垂直方向Ha及び水平方向Hb上における検索座標の設定を除外するので、上記同様に色情報の検索を高速化できる。
【0097】
従って、光源色である高輝度部の周辺の色をクロスフィルター効果に反映させることができ、より光学フィルターに近い自然な効果を画像処理で得ることが出来る。さらに、建築物H等の主要被写体の形状等の特性を活かした検索方法の改善を行なうことによって、高輝度部の周辺の全ての画素を検索する場合に比べて、品質を落とすことなく、大幅に処理時間も短縮することが出来る。
【0098】
次に、本発明の第2の実施の形態として輝点検索処理及びパターン合成処理について説明する。
図18は輝点検索処理フローチャートを示す。なお、図9と同一部分には同一符号を付してその詳しい説明は省略する。この輝点検索処理は、上記図9に示す輝点検索処理フローチャートにおける上記ステップS704の輝点サイズの算出処理を行わないものとなっている。すなわち、この輝点検索処理は、上記ステップS703の判定の結果、輝度値Dy(X,Y)が閾値Thを超えていれば、ステップS1001において、座標(X,Y)の輝度を算出し、輝点位置と輝度値Dy(X,Y)の情報をSDRAM206に記憶する。この後、光源色検索に移る。
【0099】
図19はパターン合成処理フローチャートを示す。なお、図17と同一部分には同一符号を付してその詳しい説明は省略する。このパターン合成処理は、上記図18に示す輝点検索処理が行われた後の処理である。このパターン合成処理は、輝点の輝度に応じてクロスパターン等のパターンに係数を乗じ、この係数を乗じたクロスパターン等を画像データに合成する。すなわち、このパターン合成処理は、上記ステップS902におけるN番目の輝点情報をSDRAM206から取得の後、上記ステップS1011において、輝点の輝度に応じてクロスパターン等のパターンに係数を乗じる。例えば、輝点の輝度が高い程1.0に近い係数をパターンに乗じ、輝点の輝度が低い程0に近い係数をパターンに乗じる。これにより、被写体の輝度に応じた輝度に強弱を有するクロスパターン等のパターンが作成される。
【0100】
このように第2の実施の形態であれば、輝点サイズの算出処理を行わないので、上記第1の実施の形態よりも輝点検索の処理が容易となり、輝点検索処理に要する時間を短縮できる。輝点サイズの算出処理を行わなくても、クロスパターン等の輝線の幅がある程度狭ければ、クロスフィルター効果を反映した効果的な画像にすることができる。又、ハードウェア構成によっては処理を高速化することが可能である。
【0101】
以上実施形態に基づいて本発明を説明したが、本発明は上述した実施形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形や応用が可能なことは勿論である。例えば、上述の実施形態では、クロスフィルター処理をデジタルカメラにおいて行っている。これに対し、例えばデジタルカメラで得られた画像ファイルに対し、デジタルカメラとは別の画像処理装置においてクロスフィルター処理を行うような場合であっても本実施形態の技術を適用することができる。
【0102】
さらに、上記した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件の適当な組合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、上述したような課題を解決でき、上述したような効果が得られる場合には、この構成要件が削除された構成も発明として抽出され得る。
【符号の説明】
【0103】
100:交換式レンズ、200:カメラ本体、101:レンズ、102:絞り、103:ドライバ、104:レンズマイクロコンピュータ、105:フラッシュ(Flash)メモリ、106:インターフェイス(I/F)、201:メカシャッタ、202:撮像素子、203:アナログ処理部、204:アナログ/デジタル(A/D)変換部、205:バス、206:SDRAM、207:画像処理部、208:AE処理部、209:AF処理部、210:水平垂直判別部、211:輝点検索部、212:パターン合成部、213:画像圧縮展開部、214:メモリインターフェイス(I/F)、215:記録媒体、216:表示ドライバ、217:表示部、218:マイクロコンピュータ、219:操作部、220:フラッシュ(Flash)メモリ、2071:オプティカルブラック(OB)減算部、2072:ホワイトバランス(WB)補正部、2073:同時化処理部、2074:カラーマトリクス演算部、2075:ガンマ・色再現処理部、2076:エッジ強調処理部、2077:ノイズ低減(NR)処理部、218a:輝点座標取得部、218b:輝点色推定部。
【特許請求の範囲】
【請求項1】
画像データにおける輝点を検索する輝点検索部と、
前記輝点検索部により検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得部と、
前記画像データにおける前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点色を推定する輝点色推定部と、
前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理部と、
を具備することを特徴とする画像処理装置。
【請求項2】
前記輝点色推定部は、前記複数の検索座標のうち前記輝点座標からの距離が近い前記検索座標から遠い前記検索座標に向かって前記検索対象とする請求項1に記載の画像処理装置。
【請求項3】
前記輝点色推定部は、前記輝点座標を中心として放射状に延びる1本以上の線上に前記複数の検索座標を設定することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記輝点色推定部は、前記放射状に延びる1本以上の線を垂直方向及び水平方向を除く方向に設定することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記輝点色推定部は、前記垂直方向及び前記水平方向として前記画像データの垂直方向及び水平方向と、前記画像データ中の被写体の垂直方向及び水平方向とを含むことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記画像データ中の被写体の水平方向と垂直方向とを判別する水平垂直判別部を備え、
前記輝点色推定部は、前記水平垂直判別部により判別された前記水平方向と前記垂直方向との前記各線上への前記検索座標の設定を除外する、
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の画像処理装置。
【請求項7】
撮影を行って前記画像データを取得する撮像装置の傾きを認識する傾き認識部と、
前記撮像装置により取得された前記画像データ中の被写体の水平方向と垂直方向とを判別する水平垂直判別部を備え、
前記輝点色推定部は、前記傾き認識部により認識された前記撮影装置の撮影時の傾きに基づいて前記被写体の水平方向と垂直方向とを判別し、かつ前記水平垂直判別部により判別された前記水平方向と前記垂直方向との前記各線上への前記検索座標の設定を除外する、
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の画像処理装置。
【請求項8】
前記輝点色推定部は、前記輝点色を推定するための前記条件を有する前記画素値として所定の彩度以上の彩度を有する画素値を用いて前記輝点色を推定することを特徴とする請求項1に記載の画像処理装置。
【請求項9】
前記輝点色推定部は、所定の値以下の前記画素値を用いて前記輝点色を推定することを特徴とする請求項1に記載の画像処理装置。
【請求項10】
所定のパターンを記憶するパターン記憶部を備え、
前記描画処理部は、前記パターン記憶部に記憶されている前記所定のパターンを、前記輝点座標に対応する位置に合成することを特徴とする請求項1に記載の画像処理装置。
【請求項11】
前記描画処理部は、前記パターン記憶部に記憶されている前記所定のパターンの色相及び彩度を前記輝点色に応じて変更し、当該変更した前記所定のパターンを前記輝点座標に対応する位置に合成することを特徴とする請求項10に記載の画像処理装置。
【請求項12】
前記パターン記憶部に記憶する前記所定のパターンは、当該パターンの中心から放射状に伸びる複数の直線を有し、
前記複数の直線は、それぞれ前記パターン中心からの距離に応じて輝度が変化する、
ことを特徴とする請求項10に記載の画像処理装置。
【請求項13】
前記所定のパターンは、前記パターン中心からの距離に応じて前記輝度が低下することを特徴とする請求項12に記載の画像処理装置。
【請求項14】
請求項1乃至13のうちいずれか1項記載の画像処理装置を備え、被写体を撮像して前記画像データを取得することを特徴とする撮影装置。
【請求項15】
画像データにおける輝点を検索し、
前記検索された前記輝点の前記画像データにおける輝点座標を求め、
前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定し、
前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する、
ことを特徴とする画像処理方法。
【請求項16】
コンピュータに、
画像データにおける輝点を検索する輝点検索機能と、
前記検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得機能と、
前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定する輝点色推定機能と、
前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理機能と、
を実現するための画像処理プログラム。
【請求項1】
画像データにおける輝点を検索する輝点検索部と、
前記輝点検索部により検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得部と、
前記画像データにおける前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点色を推定する輝点色推定部と、
前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理部と、
を具備することを特徴とする画像処理装置。
【請求項2】
前記輝点色推定部は、前記複数の検索座標のうち前記輝点座標からの距離が近い前記検索座標から遠い前記検索座標に向かって前記検索対象とする請求項1に記載の画像処理装置。
【請求項3】
前記輝点色推定部は、前記輝点座標を中心として放射状に延びる1本以上の線上に前記複数の検索座標を設定することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記輝点色推定部は、前記放射状に延びる1本以上の線を垂直方向及び水平方向を除く方向に設定することを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記輝点色推定部は、前記垂直方向及び前記水平方向として前記画像データの垂直方向及び水平方向と、前記画像データ中の被写体の垂直方向及び水平方向とを含むことを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記画像データ中の被写体の水平方向と垂直方向とを判別する水平垂直判別部を備え、
前記輝点色推定部は、前記水平垂直判別部により判別された前記水平方向と前記垂直方向との前記各線上への前記検索座標の設定を除外する、
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の画像処理装置。
【請求項7】
撮影を行って前記画像データを取得する撮像装置の傾きを認識する傾き認識部と、
前記撮像装置により取得された前記画像データ中の被写体の水平方向と垂直方向とを判別する水平垂直判別部を備え、
前記輝点色推定部は、前記傾き認識部により認識された前記撮影装置の撮影時の傾きに基づいて前記被写体の水平方向と垂直方向とを判別し、かつ前記水平垂直判別部により判別された前記水平方向と前記垂直方向との前記各線上への前記検索座標の設定を除外する、
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の画像処理装置。
【請求項8】
前記輝点色推定部は、前記輝点色を推定するための前記条件を有する前記画素値として所定の彩度以上の彩度を有する画素値を用いて前記輝点色を推定することを特徴とする請求項1に記載の画像処理装置。
【請求項9】
前記輝点色推定部は、所定の値以下の前記画素値を用いて前記輝点色を推定することを特徴とする請求項1に記載の画像処理装置。
【請求項10】
所定のパターンを記憶するパターン記憶部を備え、
前記描画処理部は、前記パターン記憶部に記憶されている前記所定のパターンを、前記輝点座標に対応する位置に合成することを特徴とする請求項1に記載の画像処理装置。
【請求項11】
前記描画処理部は、前記パターン記憶部に記憶されている前記所定のパターンの色相及び彩度を前記輝点色に応じて変更し、当該変更した前記所定のパターンを前記輝点座標に対応する位置に合成することを特徴とする請求項10に記載の画像処理装置。
【請求項12】
前記パターン記憶部に記憶する前記所定のパターンは、当該パターンの中心から放射状に伸びる複数の直線を有し、
前記複数の直線は、それぞれ前記パターン中心からの距離に応じて輝度が変化する、
ことを特徴とする請求項10に記載の画像処理装置。
【請求項13】
前記所定のパターンは、前記パターン中心からの距離に応じて前記輝度が低下することを特徴とする請求項12に記載の画像処理装置。
【請求項14】
請求項1乃至13のうちいずれか1項記載の画像処理装置を備え、被写体を撮像して前記画像データを取得することを特徴とする撮影装置。
【請求項15】
画像データにおける輝点を検索し、
前記検索された前記輝点の前記画像データにおける輝点座標を求め、
前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定し、
前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する、
ことを特徴とする画像処理方法。
【請求項16】
コンピュータに、
画像データにおける輝点を検索する輝点検索機能と、
前記検索された前記輝点の前記画像データにおける輝点座標を求める輝点座標取得機能と、
前記輝点座標を含む周辺に予め設定されている複数の検索座標の中から前記輝点座標との距離が所定距離以上離れている1つ以上の前記検索座標を検索対象の座標とし、当該検索対象の座標における前記輝点色を推定するための条件を有する画素値に基づいて前記輝点の輝点色を推定する輝点色推定機能と、
前記推定された前記輝点色に応じて前記輝点座標の近傍にパターンを描画する描画処理機能と、
を実現するための画像処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2012−14645(P2012−14645A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−153267(P2010−153267)
【出願日】平成22年7月5日(2010.7.5)
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願日】平成22年7月5日(2010.7.5)
【出願人】(504371974)オリンパスイメージング株式会社 (2,647)
【Fターム(参考)】
[ Back to top ]