(57)【要約】【課題】モザイク画像を階調変換する。【解決手段】濃淡値算出部７６１は、現在注目中の画素位置における濃淡値を算出する。非線形変換部７７２は、輝度算出部７７１から供給された輝度値L(p)を、非線形特性により変調する。濃淡値階調変換部７６２は、濃淡値算出部７６１が算出した各画素位置における濃淡値を階調変換する処理のほか、次のフレームで階調変換をおこなうときに用いる中間データを算出して次のフレームの処理の時までデータを保持する処理を実行する。モザイク画素値階調変換部７６３は、モザイク画像データの画素値を線形変換し、階調補正し、非線形逆変換する。非線形変換部８１１は、濃淡値算出部７６１の非線形変換部７７２と同じ変換特性で画素値の非線形変換を実行する。本発明は、デジタルビデオカメラに適用できる。【選択図】図３３
2008205691.tif 000002
【特許請求の範囲】
【請求項１】
カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データを処理する画像処理装置において、
前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力する階調変換処理手段を備え、
前記階調変換処理手段は、
注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出する第１の濃淡値算出手段と、
前記第１の濃淡値算出手段により算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出する第２の濃淡値算出手段と、
前記第１の濃淡値算出手段により算出された前記第１の濃淡値、前記第２の濃淡値算出手段により算出された前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する画素値階調変換手段と
を備える画像処理装置。
【請求項２】
前記第１の濃淡値算出手段は、前記注目画素の近傍の複数の画素の画素値を用いて前記注目画素の輝度に相当する値を算出する輝度算出手段を備える
請求項１に記載の画像処理装置。
【請求項３】
前記第１の濃淡値算出手段は、前記輝度算出手段により算出された前記注目画素の輝度に相当する値を非線形変換する第１の非線形変換手段を更に備え、
前記画素値階調変換手段は、前記注目画素の画素値を非線形変換する第２の非線形変換手段を備える
請求項２に記載の画像処理装置。
【請求項４】
前記第１の非線形変換手段、および、前記第２の非線形変換手段は、いずれも、対数変換により非線形変換を実行する
請求項３に記載の画像処理装置。
【請求項５】
前記第１の非線形変換手段、および、前記第２の非線形変換手段は、いずれも、ガンマ補正により非線形変換を実行する
請求項３に記載の画像処理装置。
【請求項６】
前記画素値階調変換手段は、
前記第１の濃淡値に対する前記注目画素の画素値の比率を算出する比率算出手段と、
前記比率算出手段により算出された前記比率に、前記第２の濃淡値を乗じる乗算手段と
を備える請求項１に記載の画像処理装置。
【請求項７】
前記画素値階調変換手段は、
前記第１の濃淡値に対する前記注目画素の画素値の差分を算出する差分算出手段と、
前記差分算出手段により算出された前記差分に、前記第２の濃淡値を加算する加算手段と
を備える請求項１に記載の画像処理装置。
【請求項８】
前記第２の濃淡値算出手段は、トーンカーブによって前記第１の濃淡値の階調を変換する第１のトーンカーブ補正手段
を備える請求項１に記載の画像処理装置。
【請求項９】
前記第２の濃淡値算出手段は、前記画像データを構成する全画素における前記第１の濃淡値の分布に基づいて前記第１のトーンカーブ補正手段において用いられる前記トーンカーブを算出するトーンカーブ算出手段を更に備える
請求項８に記載の画像処理装置。
【請求項１０】
前記第２の濃淡値算出手段は、
前記第１の濃淡値の低周波成分からなる大局輝度画像の輝度値である大局輝度値を算出する大局輝度算出手段と、
前記トーンカーブに基づいて前記大局輝度値の階調を補正する第２のトーンカーブ補正手段と、
前記トーンカーブの傾き、および、階調が補正された前記大局輝度値に基づいて、階調が補正された前記第１の濃淡値のコントラストを補正するコントラスト補正手段と
を備える請求項８に記載の画像処理装置。
【請求項１１】
前記トーンカーブ算出手段は、前記第１の濃淡値の平均値である平均輝度値、前記画像データの画素数に占める第１の境界値以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値、および、前記画像データの画素数に占める第２の境界値以下の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値に基づいて、前記トーンカーブを算出する
請求項９に記載の画像処理装置。
【請求項１２】
前記トーンカーブ算出手段は、前記第１の濃淡値が前記平均輝度値となる付近において、前記トーンカーブの傾きが緩やかになり、前記第１の濃淡値が前記第１の境界値および前記第２の境界値となる付近において、前記トーンカーブの傾きがほぼ１に近くなる単調増加する前記トーンカーブを算出する
請求項１１に記載の画像処理装置。
【請求項１３】
前記平均輝度値は、前記画像データを構成するフレーム内のユーザにより指定された領域の輝度の平均輝度値である
請求項１１に記載の画像処理装置。
【請求項１４】
前記トーンカーブ算出手段は、
前記画像データにおける現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段をさらに含み、
前記時間平滑化手段により時間平滑化された前記平均輝度値、時間平滑化された前記第１の境界値、および、時間平滑化された前記第２の境界値に基づいて、前記トーンカーブを算出する
請求項１１に記載の画像処理装置。
【請求項１５】
前記大局輝度算出手段は、
前記画像データを構成する所定のフレームを縮小した縮小画像を生成する縮小画像生成手段と、
前記大局輝度画像が前記所定のフレームの画像データと同じ画素数になるように前記縮小画像を補間することにより前記大局輝度値を算出する補間手段と
を含む請求項１０に記載の画像処理装置。
【請求項１６】
前記縮小画像生成手段は、前記フレームを所定の数のブロックに分割し、それぞれの前記ブロックに含まれる画素の輝度の平均値であるブロック平均輝度値を前記ブロックの順番に配列することにより前記縮小画像を生成する
請求項１５に記載の画像処理装置。
【請求項１７】
前記補間手段は、処理中のフレームより１フレーム前のフレームに対応する前記縮小画像を補間することにより前記大局輝度値を算出する
請求項１５に記載の画像処理装置。
【請求項１８】
前記第１のトーンカーブ補正手段は、１フレーム前の前記第１の濃淡値の分布に基づく前記トーンカーブに基づいて、前記注目画素の輝度の階調を補正し、
前記第２のトーンカーブ補正手段は、１フレーム前の前記第１の濃淡値の分布に基づく前記トーンカーブに基づいて、前記大局輝度値の階調を補正する
請求項１０に記載の画像処理装置。
【請求項１９】
前記コントラスト補正手段は、前記第１の濃淡値が前記平均輝度値となる付近における前記トーンカーブの傾きに基づいて、階調が補正された前記第１の濃淡値のコントラストを補正する
請求項１０に記載の画像処理装置。
【請求項２０】
前記コントラスト補正手段は、階調が補正された前記第１の濃淡値の所定の中間レベルの輝度値付近のコントラストを、階調が補正された前記第１の濃淡値が取りうる輝度の最小値および最大値付近のコントラストと比較して強調するように階調が補正された前記第１の濃淡値のコントラストを補正する
請求項１０に記載の画像処理装置。
【請求項２１】
前記コントラスト補正手段は、階調が補正された前記第１の濃淡値の周波数成分のうち、階調が補正された前記大局輝度画像に含まれる周波数成分を除く周波数成分のコントラストを強調するように補正する
請求項１０に記載の画像処理装置。
【請求項２２】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段と、
情報を外部に出力する出力手段と
を更に備え、
前記階調変換処理手段は、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換を行い、
前記出力手段は、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報により各画素が構成される前記画像データを外部に出力する
請求項１に記載の画像処理装置。
【請求項２３】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段と、
カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを、全画素が同一の前記色情報で構成される複数の単色画像データに変換する画像データ変換手段と
を更に備え、
前記階調変換処理手段は、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換を行い、
前記画像データ変換手段は、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する前記画像データを、全画素が同一の前記色情報で構成される複数の単色画像データに変換する
請求項１に記載の画像処理装置。
【請求項２４】
カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データを処理する画像処理装置の画像処理方法において、
前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力するとき、
注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し、
算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し、
前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する
ステップを含む画像処理方法。
【請求項２５】
カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データの画像処理をコンピュータに実行させるためのプログラムであって、
前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力するとき、
注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し、
算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し、
前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する
ステップを含む画像処理をコンピュータに実行させるプログラム。
【請求項２６】
請求項２５に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、記録媒体、並びに、プログラムに関し、画像のダイナミックレンジをより狭いダイナミックレンジに変換する場合に用いて好適な画像処理装置および方法、記録媒体、並びに、プログラムに関する。
【背景技術】
【０００２】
近年、画像センサの性能の向上により、ビデオカメラにより撮影できる画像のダイナミックレンジが広がってきている。しかし、それらの広ダイナミックレンジの画像の撮影に対応したビデオカメラにより撮影された画像のダイナミックレンジより、表示装置が表示可能なダイナミックレンジが狭い場合がある。そこで、画像のダイナミックレンジを狭めながら、かつ、画像のコントラストの低下を抑制する階調圧縮技術が提案されている（例えば、特許文献１または２参照）。
【０００３】
図１は、特許文献２に記載の発明において、画像の画素値の階調の圧縮を行うDSP（Digital Signal Processor）の機能の構成例を示すブロック図である。
【０００４】
対数変換部１１は、入力画像の輝度値L(p)を対数変換し、得られた対数輝度値logL(p)をトーンカーブ補正部１２に出力する。トーンカーブ補正部１２は、対数輝度値logL(p)に対し、予め用意されているトーンカーブを適用して階調を圧縮する方向に変換し、得られた対数輝度値logLc(p)を縮小画像生成部１３およびコントラスト補正部１５に出力する。また、トーンカーブ補正部１２は、適用したトーンカーブの傾きを示す代表値γをコントラスト補正部１５に出力する。
【０００５】
縮小画像生成部１３は、トーンカーブ補正部１２から入力される１フレーム分の対数輝度値logLc(p)に基づき、縮小画像logLclを生成して、縮小画像メモリ１４に保持させる。
【０００６】
コントラスト補正部１５は、トーンカーブ補正部２２から入力される現フレームの対数輝度値logLc(p)のトーンカーブ補正によって弱められているコントラストを、代表値γおよび縮小画像メモリ１４に保持されている１フレーム前の縮小画像logLclに基づいて補正し、得られる対数輝度値logLu(p)を対数逆変換部１６に出力する。対数逆変換部１６は、コントラストが補正された対数輝度値logLu(p)を、対数逆変換して、得られる通常軸の輝度値Lu(p)をガンマ補正部１７に出力する。
【０００７】
ガンマ補正部１７は、対数逆変換部１６から入力される輝度値Lu(p)に対して、表示装置のガンマ特性を考慮したガンマ補正を施し、得られるガンマ補正後の輝度値Y(p)を輝度域情報算出部１８および輝度域正規化部２０に出力する。輝度域情報算出部１８は、ガンマ補正部１７から入力される１フレーム分の輝度値Y(p)に対して、最も暗い方に近い輝度値Ydと、最も明るい方に近い輝度値Ybからなる輝度域情報［Yd，Yb］を算出して輝度域情報メモリ１９に保持させる。
【０００８】
輝度域正規化部２０は、輝度域情報メモリ１９に保持されている１フレーム前の輝度域情報［Yd，Yb］に基づき、ガンマ補正部１７から入力される現フレームの輝度値Y(p)を、その分布範囲が表示装置が表現可能な範囲に合致するように変換し、得られる輝度値Yn(p)を、狭ダイナミックレンジ画像の画素値として後段に出力する。
【０００９】
【特許文献１】特開２００４−２２１６４４号公報
【特許文献２】特開２００４−２２１６４５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１および２に記載の発明では、階調圧縮に用いられるトーンカーブの形状が固定されているため、ダイナミックレンジが想定より広い画像データや、適切な露出で撮影されなかった画像データが入力された場合、適切な階調圧縮ができないときがある。
【００１１】
また、特許文献２に記載の発明では、対数変換部１１、トーンカーブ補正部１２、コントラスト補正部１５、ガンマ補正部１７、および、輝度域正規化部２０は、画素ごとに処理が完了するが、縮小画像生成部１３による縮小画像の生成、および、輝度域情報算出部１８による輝度域情報の算出は、画像内の全画素をスキャンしなければ完了しない。また、縮小画像の生成と輝度域情報の算出は順番に行う必要があり、並列して行うことができない。
【００１２】
従って、特許文献２に記載の発明では、同じフレーム内で生成または算出した縮小画像および輝度域情報を利用して階調変換する場合、縮小画像の生成が終わるまで、コントラスト補正部１５の処理を待機させ、輝度域情報の算出が終了するまで、輝度域正規化部２０の処理を待機させる必要があり、処理時間が長くなってしまう。また、１フレーム前の処理において生成または算出された縮小画像および輝度域情報を利用して、階調変換をするようにしても、縮小画像の生成が終了しないと、輝度域情報の算出ができないため、縮小画像の生成が終わるまで、コントラスト補正部１５の処理を待機させる必要があり、処理時間が長くなってしまう。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、画像のコントラストを損なわずに、各画像に応じた適切な輝度または色値の階調の圧縮をより高速に実行することができるようにするものである。
【課題を解決するための手段】
【００１４】
本発明の一側面の画像処理装置は、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データを処理する画像処理装置であって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力する階調変換処理手段を備え、前記階調変換処理手段は、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出する第１の濃淡値算出手段と、前記第１の濃淡値算出手段により算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出する第２の濃淡値算出手段と、前記第１の濃淡値算出手段により算出された前記第１の濃淡値、前記第２の濃淡値算出手段により算出された前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する画素値階調変換手段とを備える。
【００１５】
前記第１の濃淡値算出手段には、前記注目画素の近傍の複数の画素の画素値を用いて前記注目画素の輝度に相当する値を算出する輝度算出手段を備えさせるようにすることができる。
【００１６】
前記第１の濃淡値算出手段には、前記輝度算出手段により算出された前記注目画素の輝度に相当する値を非線形変換する第１の非線形変換手段を更に備えさせるようにすることができ、前記画素値階調変換手段には、前記注目画素の画素値を非線形変換する第２の非線形変換手段を備えさせるようにすることができる。
【００１７】
前記第１の非線形変換手段、および、前記第２の非線形変換手段には、いずれも、対数変換により非線形変換を実行させるようにすることができる。
【００１８】
前記第１の非線形変換手段、および、前記第２の非線形変換手段には、いずれも、ガンマ補正により非線形変換を実行させるようにすることができる。
【００１９】
前記画素値階調変換手段には、前記第１の濃淡値に対する前記注目画素の画素値の比率を算出する比率算出手段と、前記比率算出手段により算出された前記比率に、前記第２の濃淡値を乗じる乗算手段とを備えさせるようにすることができる。
【００２０】
前記画素値階調変換手段には、前記第１の濃淡値に対する前記注目画素の画素値の差分を算出する差分算出手段と、前記差分算出手段により算出された前記差分に、前記第２の濃淡値を加算する加算手段とを備えさせるようにすることができる。
【００２１】
前記第２の濃淡値算出手段には、トーンカーブによって前記第１の濃淡値の階調を変換する第１のトーンカーブ補正手段を備えさせるようにすることができる。
【００２２】
前記第２の濃淡値算出手段には、前記画像データを構成する全画素における前記第１の濃淡値の分布に基づいて前記第１のトーンカーブ補正手段において用いられる前記トーンカーブを算出するトーンカーブ算出手段を更に備えさせるようにすることができる。
【００２３】
前記第２の濃淡値算出手段には、前記第１の濃淡値の低周波成分からなる大局輝度画像の輝度値である大局輝度値を算出する大局輝度算出手段と、前記トーンカーブに基づいて前記大局輝度値の階調を補正する第２のトーンカーブ補正手段と、前記トーンカーブの傾き、および、階調が補正された前記大局輝度値に基づいて、階調が補正された前記第１の濃淡値のコントラストを補正するコントラスト補正手段とを備えさせるようにすることができる。
【００２４】
前記トーンカーブ算出手段には、前記第１の濃淡値の平均値である平均輝度値、前記画像データの画素数に占める第１の境界値以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値、および、前記画像データの画素数に占める第２の境界値以下の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値に基づいて、前記トーンカーブを算出させるようにすることができる。
【００２５】
前記トーンカーブ算出手段には、前記第１の濃淡値が前記平均輝度値となる付近において、前記トーンカーブの傾きが緩やかになり、前記第１の濃淡値が前記第１の境界値および前記第２の境界値となる付近において、前記トーンカーブの傾きがほぼ１に近くなる単調増加する前記トーンカーブを算出させるようにすることができる。
【００２６】
前記平均輝度値は、前記画像データを構成するフレーム内のユーザにより指定された領域の輝度の平均輝度値であるものとすることができる。
【００２７】
前記トーンカーブ算出手段には、前記画像データにおける現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段をさらに含ませるようにすることができ、前記時間平滑化手段により時間平滑化された前記平均輝度値、時間平滑化された前記第１の境界値、および、時間平滑化された前記第２の境界値に基づいて、前記トーンカーブを算出させるようにすることができる。
【００２８】
前記大局輝度算出手段には、前記画像データを構成する所定のフレームを縮小した縮小画像を生成する縮小画像生成手段と、前記大局輝度画像が前記所定のフレームの画像データと同じ画素数になるように前記縮小画像を補間することにより前記大局輝度値を算出する補間手段とを含ませるようにすることができる。
【００２９】
前記縮小画像生成手段には、前記フレームを所定の数のブロックに分割し、それぞれの前記ブロックに含まれる画素の輝度の平均値であるブロック平均輝度値を前記ブロックの順番に配列することにより前記縮小画像を生成させるようにすることができる。
【００３０】
前記補間手段には、処理中のフレームより１フレーム前のフレームに対応する前記縮小画像を補間することにより前記大局輝度値を算出させるようにすることができる。
【００３１】
前記第１のトーンカーブ補正手段には、１フレーム前の前記第１の濃淡値の分布に基づく前記トーンカーブに基づいて、前記注目画素の輝度の階調を補正させるようにすることができ、前記第２のトーンカーブ補正手段には、１フレーム前の前記第１の濃淡値の分布に基づく前記トーンカーブに基づいて、前記大局輝度値の階調を補正させるようにすることができる。
【００３２】
前記コントラスト補正手段には、前記第１の濃淡値が前記平均輝度値となる付近における前記トーンカーブの傾きに基づいて、階調が補正された前記第１の濃淡値のコントラストを補正させるようにすることができる。
【００３３】
前記コントラスト補正手段には、階調が補正された前記第１の濃淡値の所定の中間レベルの輝度値付近のコントラストを、階調が補正された前記第１の濃淡値が取りうる輝度の最小値および最大値付近のコントラストと比較して強調するように階調が補正された前記第１の濃淡値のコントラストを補正させるようにすることができる。
【００３４】
前記コントラスト補正手段には、階調が補正された前記第１の濃淡値の周波数成分のうち、階調が補正された前記大局輝度画像に含まれる周波数成分を除く周波数成分のコントラストを強調するように補正させるようにすることができる。
【００３５】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段と、情報を外部に出力する出力手段とを更に備えさせるようにすることができ、前記階調変換処理手段には、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換を行わせるようにすることができ、前記出力手段には、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報により各画素が構成される前記画像データを外部に出力させるようにすることができる。
【００３６】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段と、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを、全画素が同一の前記色情報で構成される複数の単色画像データに変換する画像データ変換手段とを更に備えさせるようにすることができ、前記階調変換処理手段には、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換をおこなわせるようにすることができ、前記画像データ変換手段には、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する前記画像データを、全画素が同一の前記色情報で構成される複数の単色画像データに変換させるようにすることができる。
【００３７】
本発明の一側面の画像処理方法は、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データを処理する画像処理装置の画像処理方法であって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力するとき、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し、算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し、前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出するステップを含む。
【００３８】
本発明の一側面のプログラム、または、記録媒体に記録されているプログラムは、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データの画像処理をコンピュータに実行させるためのプログラムであって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データを出力するとき、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し、算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し、前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出するステップを含む画像処理をコンピュータに実行させる。
【００３９】
本発明の一側面においては、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データの入力をうけて、階調変換が行われ、階調変換において、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値が算出され、算出された第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値が算出され、第１の濃淡値、第２の濃淡値、および、注目画素の画素値に基づいて、注目画素の階調変換された画素が算出される。
【００４０】
ネットワークとは、少なくとも２つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであっても良いし、１つの装置を構成している内部ブロックどうしであっても良い。
【００４１】
また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、即ち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであっても良い。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであっても良い。
【００４２】
画像処理装置は、独立した装置であっても良いし、例えば、情報処理装置、記録再生装置、画像表示装置、または、デジタルビデオカメラやデジタルスチルカメラなどの画像処理を行うブロックであっても良い。
【発明の効果】
【００４３】
以上のように、本発明の一側面によれば、画像の階調を変換することができ、特に、画像のコントラストを損なわずに実行可能な階調変換を、コンパクトな回路で実行することができる。
【発明を実施するための最良の形態】
【００４４】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００４５】
本発明の一側面の画像処理装置は、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データ（例えば、RAWデータ）を処理する画像処理装置（例えば、図３０のデジタルビデオカメラ７０１）であって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データ（例えば、モザイク画像）を出力する階調変換処理手段（例えば、図３１の階調変換部７３２）を備え、前記階調変換処理手段は、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出する第１の濃淡値算出手段（例えば、図３３の濃淡値算出部７６１）と、前記第１の濃淡値算出手段により算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出する第２の濃淡値算出手段（例えば、図３３の濃淡値階調変換部７６２）と、前記第１の濃淡値算出手段により算出された前記第１の濃淡値、前記第２の濃淡値算出手段により算出された前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する画素値階調変換手段（例えば、図３３のモザイク画素値階調変換部７６３）とを備える。
【００４６】
前記第１の濃淡値算出手段は、前記注目画素の近傍の複数の画素の画素値を用いて前記注目画素の輝度に相当する値を算出する輝度算出手段（例えば、図３３の輝度算出部７７１）を備えることができる。
【００４７】
前記第１の濃淡値算出手段は、前記輝度算出手段により算出された前記注目画素の輝度に相当する値を非線形変換する第１の非線形変換手段（例えば、図３３の非線形変換部７７２）を更に備えることができ、前記画素値階調変換手段は、前記注目画素の画素値を非線形変換する第２の非線形変換手段（例えば、図３３の非線形変換部８１１）を備えることができる。
【００４８】
前記画素値階調変換手段は、前記第１の濃淡値に対する前記注目画素の画素値の比率を算出する比率算出手段（例えば、図３５の除算部８９１）と、前記比率算出手段により算出された前記比率に、前記第２の濃淡値を乗じる乗算手段（例えば、図３５の乗算部８９２）とを備えることができる。
【００４９】
前記画素値階調変換手段は、前記第１の濃淡値に対する前記注目画素の画素値の差分を算出する差分算出手段（例えば、図３６の減算部８９３）と、前記差分算出手段により算出された前記差分に、前記第２の濃淡値を加算する加算手段（例えば、図３６の加算部８９４）とを備えることができる。
【００５０】
前記第２の濃淡値算出手段は、トーンカーブによって前記第１の濃淡値の階調を変換する第１のトーンカーブ補正手段（例えば、図３３のマッピング部８０１）を備えることができる。
【００５１】
前記第２の濃淡値算出手段は、前記画像データを構成する全画素における前記第１の濃淡値の分布に基づいて前記第１のトーンカーブ補正手段において用いられる前記トーンカーブを算出するトーンカーブ算出手段（例えば、図３３のトーンカーブ算出部７８１）を更に備えることができる。
【００５２】
前記第２の濃淡値算出手段は、前記第１の濃淡値の低周波成分からなる大局輝度画像の輝度値である大局輝度値を算出する大局輝度算出手段（例えば、図３３の大局輝度算出部７８４）と、前記トーンカーブに基づいて前記大局輝度値の階調を補正する第２のトーンカーブ補正手段（例えば、図３３のマッピング部８０１）と、前記トーンカーブの傾き、および、階調が補正された前記大局輝度値に基づいて、階調が補正された前記第１の濃淡値のコントラストを補正するコントラスト補正手段（例えば、図３３のコントラスト補正部７８６）とを備えることができる。
【００５３】
前記トーンカーブ算出手段は、前記第１の濃淡値の平均値である平均輝度値（例えば、平均レベルLaverage(nl)）、前記画像データの画素数に占める第１の境界値以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値（例えば、裾野値Ldark(nl)）、および、前記画像データの画素数に占める第２の境界値（例えば、裾野値Lbright(nl)）以下の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値に基づいて、前記トーンカーブを算出することができる。
【００５４】
前記トーンカーブ算出手段は、前記画像データにおける現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段（例えば、図６の時間平滑化部２２３）をさらに含むことができ、前記時間平滑化手段により時間平滑化された前記平均輝度値（例えば、平均レベルLaverage-ts(nl)）、時間平滑化された前記第１の境界値（例えば、裾野値Ldark-ts(nl)）、および、時間平滑化された前記第２の境界値（例えば、裾野値Lbright-ts(nl)）に基づいて、前記トーンカーブを算出することができる。
【００５５】
前記大局輝度算出手段は、前記画像データを構成する所定のフレームを縮小した縮小画像を生成する縮小画像生成手段（例えば、図３３の縮小画像生成部７９１）と、前記大局輝度画像が前記所定のフレームの画像データと同じ画素数になるように前記縮小画像を補間することにより前記大局輝度値を算出する補間手段（例えば、図３３の補間部７９３）とを含むことができる。
【００５６】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段（例えば、図３１のホワイトバランス部７３１）と、情報を外部に出力する出力手段（例えば、図３０のＩ／Ｆ７１３）とを更に備えることができ、前記階調変換処理手段は、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換を行うことができ、前記出力手段は、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報により各画素が構成される前記画像データ（例えば、モザイク画像）を外部に出力することができる。
【００５７】
前記画像データの入力をうけて、ホワイトバランスを調整するホワイトバランス調整手段（例えば、図３１のホワイトバランス部７３１）と、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データ（例えば、モザイク画像）を、全画素が同一の前記色情報で構成される複数の単色画像データ（例えば、デモザイク画像）に変換する画像データ変換手段（例えば、図３１のデモザイク部７３３）とを更に備えることができ、前記階調変換処理手段は、前記ホワイトバランス調整手段によるホワイトバランスが調整された前記画像データの階調変換を行うことができ、前記画像データ変換手段は、前記階調変換処理手段により生成された、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する前記画像データ（例えば、モザイク画像）を、全画素が同一の前記色情報で構成される複数の単色画像データ（例えば、デモザイク画像）に変換することができる。
【００５８】
本発明の一側面の画像処理方法は、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データ（例えば、RAWデータ）を処理する画像処理装置（例えば、図３０のデジタルビデオカメラ７０１）の画像処理方法であって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データ（例えば、モザイク画像）を出力する（例えば、図３２のステップＳ２０３の処理）とき、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し（例えば、図３７のステップＳ２５５の処理）、算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し（例えば、図３７のステップＳ２５８乃至ステップＳ２６０の処理）、前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する（例えば、図３８のステップＳ２６１乃至ステップＳ２６４の処理）ステップを含む。
【００５９】
本発明の一側面のプログラムおよび記録媒体に記録されているプログラムは、カラー情報を構成するための複数の色情報のうちのいずれか１色を計測するカラー画像センサによって撮像された複数の画素により構成される画像データ（例えば、RAWデータ）の画像処理をコンピュータに実行させるためのプログラムであって、前記画像データの入力をうけて、階調変換を行い、カラー情報を構成するための複数の前記色情報のうちのいずれかにより各画素が構成されることにより複数の前記色情報を全て有する画像データ（例えば、モザイク画像）を出力する（例えば、図３２のステップＳ２０３の処理）とき、注目する画素位置に存在する注目画素の輝度に応じた第１の濃淡値を算出し（例えば、図３７のステップＳ２５５の処理）、算出された前記第１の濃淡値に対して、階調変換を行うことにより第２の濃淡値を算出し（例えば、図３７のステップＳ２５８乃至ステップＳ２６０の処理）、前記第１の濃淡値、前記第２の濃淡値、および、前記注目画素の画素値に基づいて、前記注目画素の階調変換された画素値を算出する（例えば、図３８のステップＳ２６１乃至ステップＳ２６４の処理）ステップを含む画像処理をコンピュータに実行させる。
【００６０】
以下、図を参照して、本発明の実施の形態について説明する。
【００６１】
図２は、本発明を適用したデジタルビデオカメラの一実施の形態を示すブロック図である。デジタルビデオカメラ１０１は、レンズ１１１、絞り１１２、画像センサ１１３、相関２重サンプリング回路（CDS）１１４ 、A/Dコンバータ１１５、DSP（Digital Signal Processor）ブロック１１６、タイミングジェネレータ（TG）１１７、LCD（Liquid Crystal Display）ドライバ１１８、LCD１１９、CODEC（Compression/Decompression）１２０、メモリ１２１、CPU１２２、および、入力デバイス１２３を含むように構成される。なお、DSPブロック１１６は、信号処理用のプロセッサ（例えば、DSP）と画像データを保持するRAM（Random Access Memory）などのメモリなどにより構成されるブロックであり、プロセッサが所定のプログラムを実行することにより、後述する画像処理を行う。なお、以下、DSPブロック１１６を、単にDSP１１６と呼ぶ。
【００６２】
レンズ１１１および絞り１１２などからなる光学系を通過した被写体からの入射光は、まず、画像センサ１１３の撮像面上の各受光素子に到達し、受光素子による光電変換により電気信号に変換される。画像センサ１１３から出力された電気信号は、相関２重サンプリング回路１１４によってノイズが除去され、A/Dコンバータ１１５によってデジタル化された後、デジタル化された画像データがDSP１１６内のメモリに一時的に格納される。タイミングジェネレータ１１７は、一定のフレームレートにより画像データが取り込まれるように、相関２重サンプリング回路１１４、A/Dコンバータ１１５、および、DSP１１６により構成される信号処理系を制御する。すなわち、DSP１１６には、一定のフレームレートで画像データのストリームが供給される。
【００６３】
なお、画像センサ１１３は、一般的なCCD（Charge Coupled Device）などの画像センサよりダイナミックレンジが広く、飽和したり、ノイズを発生させたりすることなく、被写体の暗い部分から明るい部分までを撮像することができる。従って、A/Dコンバータ１１５は、入力される電気信号を、通常のデジタルビデオカメラの階調数（例えば、10乃至12ビット程度のデータにより表現できる階調数）よりも多い階調数（例えば、14乃至16ビット程度のデータにより表現できる階調数）の画像データに変換する。
【００６４】
DSP１１６は、画像データのダイナミックレンジが、例えばLCD１１９が表示可能なダイナミックレンジになるように、後述する画像処理を画像データに施した後、画像処理を施した画像データを、必要に応じて、LCDドライバ１１８またはCODEC１２０に供給する。
【００６５】
LCDドライバ１１８は、DSP１１６から供給される画像データをアナログの画像信号に変換する。LCDドライバ１１８は、デジタルビデオカメラ１０１のファインダであるLCD１１９にアナログの画像信号を供給し、画像信号に基づく画像を表示させる。
【００６６】
CODEC１２０は、DSP１１６から供給される画像データを所定の方式により符号化し、符号化した画像データを、半導体、磁気記録媒体、光磁気記録媒体、光記録媒体などよりなるメモリ１２１に記録させる。
【００６７】
CPU１２２は、例えば、シャッタボタンなどの操作ボタンなどにより構成される入力デバイス１２３を操作することによりユーザにより入力された指令などに基づいて、デジタルビデオカメラ１０１の全体の処理を制御する。
【００６８】
図３は、DSP１１６の内部のプロセッサ（演算ユニット）が、所定のプログラムを実行することにより実現される機能の構成の例を示すブロック図である。DSP１１６の内部のプロセッサが所定のプログラムを実行することにより、デモザイク部１４１、ホワイトバランス部１４２、階調変換部１４３、ガンマ補正部１４４、および、YC変換部１４５を含む機能が実現される。
【００６９】
デモザイク部１４１は、A/Dコンバータ１１５によりA/D変換された画像データであるモザイク画像を取得する。モザイク画像は、Ｒ，Ｇ，Ｂのうちいずれかの色成分に対応するデータが１つの画素に格納され、例えば、Bayer配列と呼ばれる色配列に従って各画素が配置されている画像である。デモザイク部１４１は、１つの画素がＲ，Ｇ，Ｂ成分を全て有するようにするデモザイク処理をモザイク画像に施す。これにより、Ｒ，Ｇ，Ｂの３つの色成分にそれぞれ対応するＲ画像、Ｇ画像、Ｂ画像の３つの画像データが生成される。デモザイク部１４１は、生成したＲ画像、Ｇ画像、Ｂ画像の３つの画像データをホワイトバランス部１４２に供給する。
【００７０】
なお、以下、Ｒ画像、Ｇ画像、Ｂ画像の３つの画像データをまとめてＲＧＢ画像とも称する。また、以下、モザイク画像の画素位置pにおける画素値をM(p)とする。さらに、以下、デモザイク処理が施された画像データの画素位置pにおける画素値を［R(p), G(p), B(p)］とする。なお、R(p)はＲ成分の画素値であり、G(p)はＧ成分の画素値であり、B(p)はＢ成分の画素値である。
【００７１】
ホワイトバランス部１４２は、ＲＧＢ画像の各画素値に適切な係数をかけることにより、被写体の無彩色の部分の色バランスが実際に無彩色となるように、ＲＧＢ画像のホワイトバランスを調整する。ホワイトバランス部１４２は、ホワイトバランスを調整したＲＧＢ画像を階調変換部１４３に供給する。なお、以下、ホワイトバランスが調整された画像データの画素位置pにおける画素値を［R w(p), G w(p), B w(p)］とする。なお、R w(p)はＲ成分の画素値であり、G w(p)はＧ成分の画素値であり、B w(p)はＢ成分の画素値である。
【００７２】
階調変換部１４３は、図１６などを参照して後述するように、ホワイトバランスが調整されたRGB画像に、階調変換処理を施す。階調変換部１４３は、階調変換を施したＲＧＢ画像をガンマ補正部１４４に供給する。なお、以下、階調変換処理が施された画像データの画素位置pにおける画素値を［R u(p), G u(p), B u(p)］とする。なお、R u(p)はＲ成分の画素値であり、G u(p)はＧ成分の画素値であり、B u(p)はＢ成分の画素値である。
【００７３】
ガンマ補正部１４４は、階調変換が施されたＲＧＢ画像にガンマ補正を施す。ガンマ補正部１４４は、ガンマ補正を施したＲＧＢ画像をYC変換部１４５に供給する。なお、以下、ガンマ補正が施された画像データの画素位置pにおける画素値を［R uγ(p), G uγ(p), B uγ(p)］とする。なお、R uγ(p)はＲ成分の画素値であり、G uγ(p)はＧ成分の画素値であり、B uγ(p)はＢ成分の画素値である。
【００７４】
YC変換部１４５は、ガンマ補正が施されたＲＧＢ画像に対して、YCマトリックス処理およびクロマ成分に対する帯域制限を行うことにより、輝度成分（Y成分）により構成されるY画像、および、色差成分（CbまたはCr成分）により構成されるＣ画像を生成する。YC変換部１４５は、生成したY画像およびC画像を、必要に応じて、LCDドライバ１１８またはCODEC１２０に供給する。なお、以下、YC変換部１４５から出力される画像データの画素位置pにおける画素値を［Y(p), C(p)］とする。なお、Y(p)はＹ画像における輝度成分の値であり、C(p)はC画像における色差成分の値である。
【００７５】
図４は、階調変換部１４３の機能の構成の例を示すブロック図である。階調変換部１４３は、輝度算出部１６１、非線形変換部１６２−１乃至１６２−４、トーンカーブ算出部１６３、トーンカーブメモリ１６４、γ_compパラメータメモリ１６５、大局輝度算出部１６６、階調変換部１６７、コントラスト補正部１６８、階調補正部１６９−１乃至１６９−３、および、非線形逆変換部１７０−１乃至１７０−３を含むように構成される。
【００７６】
輝度算出部１６１は、図１６を参照して後述するように、ホワイトバランスが調整されたＲＧＢ画像の画素値Rw(p)，Gw(p)，Bw(p)から、その画素位置に対応する輝度成分の値（輝度値L(p)）を算出する。輝度算出部１６１は、算出した輝度値L(p)を非線形変換部１６２−４に出力する。
【００７７】
非線形変換部１６２−１乃至１６２−３は、図１６を参照して後述するように、それぞれ、ホワイトバランスが調整されたＲＧＢ画像の画素値Rw(p)，Gw(p)，Bw(p)を非線形変換する。非線形変換部１６２−１乃至１６２−３は、それぞれ、非線形変換することにより算出した画素値R(nl)(p)，G(nl)(p)またはB(nl)(p)を、階調補正部１６９−１乃至１６９−３に出力する。
【００７８】
非線形変換部１６２−４は、図１６を参照して後述するように、輝度値L(p)を非線形変換する。非線形変換部１６２−４は、非線形変換することにより算出した輝度値L(nl)(p)を、トーンカーブ算出部１６３、階調補正部１６９−１乃至１６９−３、縮小画像生成部１８１、補間部１８３、および、マッピング部１９１−１に出力する。
【００７９】
なお、以下、非線形変換部１６２−１乃至１６２−４を個々に区別する必要がない場合、単に、非線形変換部１６２と称する。
【００８０】
トーンカーブ算出部１６３は、図２４を参照して後述するように、非線形変換された輝度値L(nl)(p)、および、後述する大局輝度値Ll(nl)(p)の階調を圧縮するために適用するトーンカーブを算出する。トーンカーブ算出部１６３は、算出したトーンカーブを表すルックアップテーブル（輝度値の変換対応表）をトーンカーブメモリ１６４に記憶させる。また、トーンカーブ算出部１６３は、図２４を参照して後述するように、トーンカーブの傾きの代表値であるγ_compパラメータを算出する。トーンカーブ算出部１６３は、γ_compパラメータをγ_compパラメータメモリ１６５に記憶させる。
【００８１】
大局輝度算出部１６６は、輝度値L(nl)(p)からなる画像のごく低周波成分からななる画像（以下、大局輝度画像と称する）の輝度値である大局輝度値Ll(nl)(p)を算出する。大局輝度算出部１６６は、縮小画像生成部１８１、縮小画像メモリ１８２、および、補間部１８３を含むように構成される。
【００８２】
縮小画像生成部１８１は、図２６を参照して後述するように、輝度値L(nl)(p)からなる画像を縮小した縮小画像を生成する。具体的には、縮小画像生成部１８１は、輝度値L(nl)(p)からなる画像を、横wr×縦hr個のブロックに分割し、分割したブロックごとの輝度値L(nl)(p)の平均値を対応するブロックと同様の順番に配列した横wr×縦hr画素の縮小画像を生成する。縮小画像生成部１８１は、生成した縮小画像を縮小画像メモリ１８２に記憶させる。
【００８３】
補間部１８３は、図２０を参照して後述するように、縮小画像を３次補間により元の画像と同じ画素値になるように拡大した画像を構成する大局輝度値Ll(nl)(p)を算出する。補間部１８３は、算出した大局輝度値Ll(nl)(p)をマッピング部１９１−２に出力する。
【００８４】
階調変換部１６７は、輝度値L(nl)(p)および大局輝度値Ll(nl)(p)の階調を圧縮する。階調変換部１６７は、マッピング部１９１−１，１９１−２を含むように構成される。
【００８５】
マッピング部１９１−１は、トーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４から読み込む。マッピング部１９１−１は、読み出したルックアップテーブル、すなわち、トーンカーブに基づいて、輝度値L(nl)(p)の階調を圧縮する。マッピング部１９１−１は、階調を圧縮した輝度値Lc(nl)(p)をコントラスト補正部１６８に出力する。
【００８６】
マッピング部１９１−２は、トーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４から読み込む。マッピング部１９１−１は、読み出したルックアップテーブル、すなわち、トーンカーブに基づいて、大局輝度値Ll(nl)(p)の階調を圧縮する。マッピング部１９１−２は、階調を圧縮した大局輝度値Lcl(nl)(p)をコントラスト補正部１６８に出力する。
【００８７】
コントラスト補正部１６８は、図２２を参照して後述するように、γ_compパラメータ、および、トーンカーブにより階調が圧縮された大局輝度値Lcl(nl)(p)に基づいて、トーンカーブにより階調が圧縮された輝度値Lc(nl)(p)からなる画像のコントラストを補正する。コントラスト補正部１６８は、コントラストを補正した輝度値Lu(nl)(p)を階調補正部１６９−１乃至１６９−３に出力する。
【００８８】
階調補正部１６９−１乃至１６９−３は、図１７を参照して後述するように、それぞれ、非線形変換された画素値R(nl)(p)，G(nl)(p)、または、B(nl)(p)の階調を補正（変換）する。階調補正部１６９−１乃至１６９−３は、それぞれ、階調補正した画素値R u(nl)(p)，G u(nl)(p)、または、B u(nl) (p)を、非線形逆変換部１７０−１乃至１７０−３に出力する。
【００８９】
非線形逆変換部１７０−１乃至１７０−３は、それぞれ、階調補正された画素値Ru(nl)(p)，Gu(nl)(p)、または、Bu(nl)(p)に、非線形変換部１６２−１乃至１６２−３による非線形変換の逆変換となる非線形逆変換を施す。非線形逆変換部１７０−１乃至１７０−３は、それぞれ、非線形逆変換した画素値Ru(p)，Gu(p)、または、Bu(p)を、ガンマ補正部１４４に出力する。
【００９０】
なお、階調変換部１４３は、各部の処理の内容に基づいて、大きく３つの部分に分けることができる。第１の部分は、輝度算出部１６１、非線形変換部１６２−４、トーンカーブ算出部１６３、および、縮小画像生成部１８１により構成される部分である。すなわち、縮小画像の生成と、トーンカーブおよびγ_compパラメータを算出する部分である。第２の部分は、輝度算出部１６１、非線形変換部１６２−４、および、トーンカーブ算出部１６３乃至コントラスト補正部１６８により構成される部分である。すなわち、第１の部分により生成または算出された縮小画像、トーンカーブおよびγ_compパラメータを用いて、入力画像の各画素の輝度値に対して、階調を圧縮し、コントラストの補正を行う部分である。第３の部分は、非線形変換部１６２−１乃至１６２−３、階調補正部１６９−１乃至１６９−３、および、非線形逆変換部１７０−１乃至１７０−３により構成される部分である。すなわち、第２の部分により階調変換された各画素の輝度値を用いて、各画素のＲ、Ｇ、Ｂ値の階調の補正を行う部分である。
【００９１】
図５は、図４の非線形変換部１６２の機能の構成の例を示すブロック図である。非線形変換部１６２は、マッピング部２０１および変換曲線メモリ２０２を含むように構成される。
【００９２】
マッピング部２０１は、変換曲線メモリ２０２に記憶されている変換曲線を表すルックアップテーブルに基づいて、外部から入力される画素値または輝度値を非線形変換する。マッピング部２０１は、非線形変換した画素値または輝度値を外部に出力する。
【００９３】
図６は、図４のトーンカーブ算出部１６３の機能の構成の例を示すブロック図である。トーンカーブ算出部１６３は、輝度域算出部２２１、平均レベル算出部２２２、時間平滑化部２２３、および、スプライン発生部２２４を含むように構成される。また、時間平滑化部２２３は、時間平滑化部２２３−１乃至２２３−３の３つの時間平滑化部を含む。
【００９４】
輝度域算出部２２１は、輝度値L(nl)(p)を、非線形変換部１６２−４から取得する。また、輝度域算出部２２１は、輝度値のノイズレベルを示すnoiseLevel(nl)、および、輝度値の飽和レベルを示すsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。輝度域算出部２２１は、図２４を参照して後述するように、輝度値L(nl)(p)の分布において、全体の画素数に占める所定の境界値以下の輝度の画素数の比率がほぼ所定の値（例えば、0.5%）となる境界値である裾野値Ldark(nl)、および、全体の画素数に占める所定の境界値以上の輝度の画素数の比率がほぼ所定の値（例えば、0.5%）となる境界値である裾野値Lbright(nl)を算出する。輝度域算出部２２１は、裾野値Ldark(nl)を時間平滑化部２２３−１に出力し、裾野値Lbright(nl)を時間平滑化部２２３−２に出力する。
【００９５】
平均レベル算出部２２２は、輝度値L(nl)(p)を、非線形変換部１６２−４から取得する。平均レベル算出部２２２は、noiseLevel(nl)およびsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。平均レベル算出部２２２は、図２４を参照して後述するように、輝度値L(nl)(p)の平均レベルLaverage(nl)を算出する。平均レベル算出部２２２は、平均レベルLaverage(nl)を時間平滑化部２２３−３に出力する。
【００９６】
時間平滑化部２２３−１乃至２２３−３は、例えば、IIR（Infinite Impulse Response）フィルタにより構成される。時間平滑化部２２３−１は、裾野値Ldark(nl)を時間平滑化し、時間平滑化した裾野値Ldark-ts(nl)をスプライン発生部２２４に出力する。時間平滑化部２２３−２は、裾野値Lbright(nl)を時間平滑化し、時間平滑化した裾野値Lbright-ts(nl)をスプライン発生部２２４に出力する。時間平滑化部２２３−３は、裾野値Laverage(nl)を時間平滑化し、時間平滑化した裾野値Laverage-ts(nl)をスプライン発生部２２４に出力する。
【００９７】
スプライン発生部２２４は、図２４を参照して後述するように、裾野値Ldark-ts(nl)、裾野値Lbright-ts(nl)、および、裾野値Laverage-ts(nl)に基づいて、トーンカーブを生成（算出）する。スプライン発生部２２４は、生成したトーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４に記憶させる。また、スプライン発生部２２４は、図２４を参照して後述するように、γ_compパラメータを算出する。スプライン発生部２２４は、γ_compパラメータをγ_compパラメータメモリ１６５に記憶させる。
【００９８】
図７は、図６の輝度域算出部２２１の機能の構成の例を示す図である。輝度域算出部２２１は、間引き部２４１、飽和画素除外部２４２、ソーティング部２４３、および、ソーティング部２４４を含むように構成される。
【００９９】
間引き部２４１は、非線形変換部１６２−４から入力される輝度値L(nl)(p)の画素位置ｐが、所定の間隔ごとに設けられているサンプリング位置に合致するか否かを判定し、サンプリング位置に合致すると判定した場合、輝度値L(nl)(p)を飽和画素除外部２４２に出力する。
【０１００】
飽和画素除外部２４２は、noiseLevel(nl)およびsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。飽和画素除外部２４２は、間引き部２４１から入力される輝度値L(nl)(p)が、所定のnoiseLevel(nl)以上かつsaturationLevel(nl)以下であると判定した場合、ソーティング部２４３および２４４に輝度値L(nl)(p)を出力する。
【０１０１】
ソーティング部２４３は、比較部２５１−１乃至２５１−ｋ、および、各比較部に対応するレジスタ２５２−１乃至２５２−ｋを含むように構成される。なお、以下、比較部２５１−１乃至２５１−ｋを個々に区別する必要がない場合、単に、比較部２５１と称し、レジスタ２５２−１乃至２５２−ｋを個々に区別する必要がない場合、単に、レジスタ２５２と称する。
【０１０２】
比較部２５１−１は、飽和画素除外部２４２から入力される輝度値L(nl)(p)とレジスタ２５２−１の値を比較する。輝度値L(nl)(p)がレジスタ２５２−１の値より小さい場合、比較部２５１−１は、現在のレジスタ２５２−１の値を後段の比較部２５１に出力し、輝度値L(nl)(p)をレジスタ２５２−１に記憶させる。レジスタ２５２−１の値を輝度値L(nl)(p)がレジスタ２５２の値以上である場合、比較部２５１−１は、輝度値L(nl)(p)をそのまま後段の比較部２５１−２に出力する。
【０１０３】
比較部２５１−２は、前段の比較部２５１−１から入力された値とレジスタ２５２−２との値を比較する。比較部２５１−１から入力された値がレジスタ２５２−２の値より小さい場合、比較部２５１−２は、レジスタ２５２−２の値を後段の比較部２５１−３に出力し、比較部２５１−１から入力された値をレジスタ２５２−２に記憶させる。比較部２５１−１から入力された値がレジスタ２５２−２の値以上である場合、比較部２５１−２は、比較部２５１−１から入力された値をそのまま後段の比較部２５１−３に出力する。比較部２５１−３乃至２５１−ｋも、比較部２５１−２と同様の処理を行う。その結果、入力された輝度値L(nl)(p)のうち、最小値からｋ番目に小さい値までが、レジスタ２５２−１乃至２５２−ｋに昇順に記憶される。
【０１０４】
ソーティング部２４３は、１フレーム分の画像の輝度値L(nl)(p)のソート後に、レジスタ２５２−ｋに記憶されている値を裾野値Ldark(nl)として、時間平滑化部２２３−１に出力する。
【０１０５】
ソーティング部２４４は、比較部２６１−１乃至２６１−ｋ、および、各比較部に対応するレジスタ２６２−１乃至２６２−ｋを含むように構成される。なお、以下、比較部２６１−１乃至２６１−ｋを個々に区別する必要がない場合、単に、比較部２６１と称し、レジスタ２６２−１乃至２６２−ｋを個々に区別する必要がない場合、単に、レジスタ２６２と称する。
【０１０６】
比較部２６１−１は、飽和画素除外部２４２から入力される輝度値L(nl)(p)とレジスタ２６２−１の値を比較する。輝度値L(nl)(p)がレジスタ２６２−１の値より大きい場合、比較部２６１−１は、現在のレジスタ２６２−１の値を後段の比較部２６１に出力し、輝度値L(nl)(p)をレジスタ２６２−１に記憶させる。レジスタ２６２−１の値を輝度値L(nl)(p)がレジスタ２６２の値以下である場合、比較部２６１−１は、輝度値L(nl)(p)をそのまま後段の比較部２６１−２に出力する。
【０１０７】
比較部２６１−２は、前段の比較部２６１−１から入力された値とレジスタ２６２−２との値を比較する。比較部２６１−１から入力された値がレジスタ２６２−２の値より大きい場合、比較部２６１−２は、レジスタ２６２−２の値を後段の比較部２６１−３に出力し、比較部２６１−１から入力された値をレジスタ２６２−２に記憶させる。比較部２６１−１から入力された値がレジスタ２６２−２の値以下である場合、比較部２６１−２は、比較部２６１−１から入力された値をそのまま後段の比較部２６１−３に出力する。比較部２６１−３乃至２６１−ｋも、比較部２６１−２と同様の処理を行う。その結果、入力された輝度値L(nl)(p)のうち、最大値からｋ番目に大きい値までが、レジスタ２６２−１乃至２６２−ｋに降順に記憶される。
【０１０８】
ソーティング部２４４は、１フレーム分の画素の輝度値L(nl)(p)のソート後に、レジスタ２６２−ｋに記憶されている値を裾野値Lbright(nl)として、時間平滑化部２２３−２に出力する。
【０１０９】
図８は、図６の平均レベル算出部２２２の機能の構成の例を示すブロック図である。平均レベル算出部２２２は、飽和画素除外部２８１および平均値算出部２８２を含むように構成される。
【０１１０】
飽和画素除外部２８１は、noiseLevel(nl)およびsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。飽和画素除外部２８１は、非線形変換部１６２−４から入力される輝度値L(nl)(p)が、所定のnoiseLevel(nl)以上かつsaturationLevel(nl)以下であると判定した場合、平均値算出部２８２の加算部２９１およびカウンタ２９３に輝度値L(nl)(p)を出力する。
【０１１１】
平均値算出部２８２は、加算部２９１、レジスタ２９２、カウンタ２９３、および、除算部２９４を含むように構成される。
【０１１２】
加算部２９１は、飽和画素除外部２８１から入力される輝度値L(nl)(p)を、レジスタ２９２に記憶されている値に加算して、レジスタ２９２に記憶させる。すなわち、レジスタ２９２には、輝度値L(nl)(p)の合計値である輝度合計値が記憶される。
【０１１３】
カウンタ２９３は、飽和画素除外部２８１から輝度値L(nl)(p)が入力される毎に、カウンタの値を１つインクリメントし、レジスタ２９２に記憶されている輝度合計値に加算された輝度値L(nl)(p)の数（画素数）をカウントする。
【０１１４】
除算部２９４は、１フレーム分の画素の輝度値L(nl)(p)が加算された後に、レジスタ２９２の値を、カウンタ２９３のカウンタ値で割ることにより、輝度値L(nl)(p)の平均レベルLaverage(nl)を算出する。除算部２９４は、時間平滑化部２２３−３に平均レベルLaverage(nl)を出力する。
【０１１５】
図９は、図６の時間平滑化部２２３−１乃至２２３−３の機能の構成の例を示すブロック図である。時間平滑化部２２３は、乗算部３１１、乗算部３１２、加算部３１３、および、レジスタ３１４を含むように構成される。
【０１１６】
乗算部３１１は、所定の平滑化係数sc1を、DSP１１６の図示せぬ内部のメモリから読み込む。乗算部３１１は、外部から入力される値（例えば、裾野値Ldark(nl)、裾野値Lbright(nl)、または、平均レベルLaverage(nl)）に平滑化係数sc1を乗じた値を加算部３１３に出力する。
【０１１７】
乗算部３１１は、所定の平滑化係数sc2を、DSP１１６の図示せぬ内部のメモリから読み込む。乗算部３１１は、レジスタ３１４に記憶されている値（例えば、１つ前のフレームに対応する時間平滑化された裾野値Ldark-ts-pre(nl)、裾野値Lbright-ts-pre (nl)、または、平均レベルLaverage-ts-pre (nl)）に平滑化係数sc2を乗じた値を加算部３１３に出力する。
【０１１８】
加算部３１３は、乗算部３１１および３１２から入力される値を加算した値（例えば、時間平滑化した裾野値Ldark-ts(nl)、裾野値Lbright-ts(nl)、または、平均レベルLaverage-ts(nl)）を外部に出力するとともに、レジスタ３１４に記憶させる。
【０１１９】
図１０は、図６のスプライン発生部２２４の機能の構成の例を示すブロック図である。スプライン発生部２２４は、コントロールポイント設定部３３１、曲線描画部３３２、および、γ算出部３３３を含むように構成される。
【０１２０】
コントロールポイント設定部３３１は、時間平滑化部２２３−１から裾野値Ldark-ts(nl)を取得し、時間平滑化部２２３−２から裾野値Lbright-ts(nl)を取得し、時間平滑化部２２３−３から平均レベルLaverage-ts(nl)を取得する。コントロールポイント設定部３３１は、図２４を参照して後述するように、トーンカーブを生成（算出）するためのコントロールポイントを設定し、設定したコントロールポイントの位置を示すコントロールポイントセットを曲線描画部３３２およびγ算出部３３３に出力する。
【０１２１】
曲線描画部３３２は、図２４を参照して後述するように、コントロールポイント設定部３３１により設定されたコントロールポイントに基づいて、トーンカーブを描画（生成）する。曲線描画部３３２は、生成したトーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４に記憶させる。
【０１２２】
γ算出部３３３は、図２４を参照して後述するように、γ_compパラメータを算出する。γ算出部３３３は、γ_compパラメータをγ_compパラメータメモリ１６５に記憶させる。
【０１２３】
図１１は、図４の縮小画像生成部１８１の機能の構成の例を示す図である。縮小画像生成部１８１は、ソート部３５１、および、平均値算出部３５２−１乃至３５２−ｎを含むように構成される。
【０１２４】
ソート部３５１は、輝度値L(nl)(p)からなる画像を横wr×縦hr個のブロックに分割し、非線形変換部１６２−４から入力される輝度値L(nl)(p)の画素位置pがどのブロックに含まれるかを判定する。ソート部３５１は、平均値算出部３５２−１乃至３５２−ｎのうち、画素位置ｐが含まれるブロックの輝度値の平均値を算出する平均値算出部に輝度値L(nl)(p)を出力する。
【０１２５】
平均値算出部３５２−１乃至３５２−ｎ（n＝wr×hr）は、図８の平均値算出部２８２と同様の構成を有しており、各平均値算出部の対象となるブロックに含まれる輝度値L(nl)(p)の平均値を算出する。平均値算出部３５２−１乃至３５２−ｎは、算出したブロックの輝度の平均値を、縮小画像メモリ１８２上に対応するブロックと同様の順番に配置するように格納させる。これにより、縮小画像メモリ１８２上に、ブロックごとの輝度値L(nl)(p)の平均値からなる横wr×縦hr画素の縮小画像が生成される。
【０１２６】
図１２は、補間部１８３の機能の構成の例を示すブロック図である。補間部１８３は、近傍選択部３７１、水平係数算出部３７２、垂直係数算出部３７３、および、積和部３７４を含むように構成される。
【０１２７】
近傍選択部３７１は、非線形変換部１６２−４が非線形変換した画素の画素位置pを非線形変換部１６２−４から取得する。近傍選択部３７１は、図２０を参照して後述するように、画素位置pに対応する縮小画像上の位置qを算出する。近傍選択部３７１は、位置ｑの近傍の横４×縦４画素の範囲内にある画素である近傍画素を抽出する。近傍選択部３７１は、近傍画素の画素値a[i][j]（1≦i≦4，1≦j≦4、ただし、i，jは自然数）を積和部３７４に出力する。また、近傍選択部３７１は、画素位置ｐと近傍画素の水平方向の位置ずれ量dx、および、垂直方向の位置ずれ量dyを算出する。近傍選択部３７１は、水平方向の位置ずれ量dxを水平係数算出部３７２に出力し、垂直方向の位置ずれ量dyを垂直係数算出部３７３に出力する。
【０１２８】
水平係数算出部３７２は、図２０を参照して後述するように、水平方向の位置ずれ量dxに基づいて、水平方向の３次補間係数kx[i]（1≦i≦4，ただし、iは自然数）を算出する。水平係数算出部３７２は、補間係数kx[i]を積和部３７４に出力する。
【０１２９】
垂直係数算出部３７３は、図２０を参照して後述するように、垂直方向の位置ずれ量dyに基づいて、水平方向の３次補間係数ky[j]（1≦j≦4，ただし、jは自然数）を算出する。水平係数算出部３７２は、補間係数ky[j]を積和部３７４に出力する。
【０１３０】
積和部３７４は、図２０を参照して後述するように、近傍画素の画素値a[i][j]、水平方向の補間係数kx[i]、および、垂直方向の補間係数ky[j]を用いて、縮小画像を３次補間することにより元のサイズ（画素数）に拡大した大局輝度画像の輝度値である大局輝度値Ll(nl)(p)を算出する。積和部３７４は、大局輝度値Ll(nl)(p)をマッピング部１９１−２に出力する。
【０１３１】
図１３は、図４のコントラスト補正部１６８の機能の構成の例を示すブロック図である。コントラスト補正部１６８は、ゲイン値算出部３９１、および、コントラスト強調部３９２を含むように構成される。
【０１３２】
ゲイン値算出部３９１は、マッピング部１９１−１から輝度値L(nl) (p)を取得する。ゲイン値算出部３９１は、図２２を参照して後述するように、γ_compパラメータメモリ１６５に記憶されているγ_compパラメータに基づいて、トーンカーブを用いて階調を圧縮した輝度値Lc(nl)(p)をコントラスト補正するときに用いるゲイン値g(p)を算出する。ゲイン値算出部３９１は、算出したゲイン値g(p)をコントラスト強調部３９２に出力する。
【０１３３】
コントラスト強調部３９２は、マッピング部１９１−１から輝度値Lc(nl)(p)を取得し、マッピング部１９１−２から大局輝度値Lcl(nl)(p)を取得する。コントラスト強調部３９２は、図２２を参照して後述するように、輝度値の階調を圧縮することにより抑制された輝度値Lc(nl)(p)からなる画像のコントラストを強調するようにコントラストを補正する。コントラスト強調部３９２は、コントラスト補正した輝度値Lu(nl)(p)を、階調補正部１６９−１乃至１６９−３に出力する。
【０１３４】
図１４は、非線形逆変換部１７０の機能の構成の例を示すブロック図である。非線形逆変換部１７０は、逆マッピング部４１１、および、変換曲線メモリ４１２を含むように構成される。
【０１３５】
逆マッピング部４１１は、変換曲線メモリ４１２に記憶されている変換曲線を表すルックアップテーブルに基づいて、外部から入力される画素値または輝度値に、非線形変換部１６２による非線形変換の逆変換となる非線形変換逆変換を施す。逆マッピング部４１１は、非線形逆変換した画素値または輝度値を外部に出力する。
【０１３６】
次に、図１５のフローチャートを参照して、DSP１１６により実行される画像処理１を説明する。なお、この処理は、例えば、デジタルビデオカメラ１０１による撮影が開始され、A/Dコンバータ１１５からDSP１１６への画像データ（モザイク画像）のストリームの供給が開始されたとき、開始される。なお、DSP１１６に供給された画像データは、逐次DSP１１６の図示せぬ内部のメモリに格納される。
【０１３７】
ステップＳ１において、デモザイク部１４１は、モザイク画像を読み込む。具体的には、デモザイク部１４１は、DSP１１６の図示せぬ内部のメモリに格納されている先頭のフレームのモザイク画像を読み込む。
【０１３８】
ステップＳ２において、デモザイク部１４１は、デモザイク処理を行う。具体的には、デモザイク部１４１は、読み込んだモザイク画像にデモザイク処理を施し、ＲＧＢ画像を生成する。デモザイク部１４１は、生成したＲＧＢ画像をホワイトバランス部１４２に供給する。
【０１３９】
ステップＳ３において、ホワイトバランス部１４２は、取得したＲＧＢ画像のホワイトバランスを調整する。ホワイトバランス部１４２は、ホワイトバランスを調整したＲＧＢ画像を階調変換部１４３に供給する。
【０１４０】
ステップＳ４において、階調変換部１４３は、階調変換処理１を行う。階調変換処理１の詳細は図１６および図１７を参照して後述するが、この処理により、ＲＧＢ画像の階調が変換され、階調が変換されたＲＧＢ画像がガンマ補正部１４４に供給される。
【０１４１】
ステップＳ５において、ガンマ補正部１４４は、ＲＧＢ画像にガンマ補正を施す。ガンマ補正部１４４は、ガンマ補正を施したＲＧＢ画像をYC変換部１４５に供給する。
【０１４２】
ステップＳ６において、YC変換部１４５は、YC変換処理を行う。具体的には、YCマトリックス処理およびクロマ成分に対する帯域制限を行うことにより、ＲＧＢ画像からY画像およびＣ画像を生成する。
【０１４３】
ステップＳ７において、YC変換部１４５は、Y画像およびC画像を出力する。具体的には、YC変換部１４５は、必要に応じて、Y画像およびＣ画像を、LCDドライバ１１８またはCODEC１２０に出力する。
【０１４４】
ステップＳ８において、デモザイク部１４１は、後続するフレームが存在するか否かを判定する。デモザイク部１４１は、DSP１１６の図示せぬ内部のメモリに後続するフレームのモザイク画像が蓄積されている場合、後続フレームが存在すると判定し、処理はステップＳ１に戻る。
【０１４５】
ステップＳ１において、次のフレームのモザイク画像が読み込まれ、読み込まれたモザイク画像に対して、ステップＳ２以降の処理が行われる。
【０１４６】
その後、ステップＳ８において、後続するフレームが存在しないと判定されるまで、ステップＳ１乃至Ｓ８の処理が繰返し実行され、Ａ／Ｄコンバータ１１５から供給されるモザイク画像に対して１フレームずつ順番に画像処理が行われる。
【０１４７】
ステップＳ８において、後続するフレームがないと判定された場合、画像処理は終了する。
【０１４８】
次に、図１６および図１７のフローチャートを参照して、図１５のステップＳ４の階調変換処理１の詳細を説明する。
【０１４９】
ステップＳ２１において、階調変換部１４３は、縮小画像、トーンカーブ、γ_compをメモリから読み込む。具体的には、階調変換部１４３の補間部１８３の近傍選択部３７１（図１２）は、１つ前のフレームの階調変換処理において生成された縮小画像を縮小画像メモリ１８２から読み込む。マッピング部１９１−１，１９１−２は、１つ前のフレームの階調変換処理において算出されたトーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４から読み込む。コントラスト補正部１６８のゲイン値算出部３９１（図１３）は、１つ前のフレームの階調変換処理において算出されたγ_compパラメータをγ_compパラメータメモリ１６５から読み込む。
【０１５０】
ステップＳ２２において、トーンカーブ算出部１６３は、noiseLevel、saturationLevelを読み込む。具体的には、トーンカーブ算出部１６３の輝度域算出部２２１の飽和画素除外部２４２（図７）、および、平均レベル算出部２２２の飽和画素除外部２８１（図８）は、noiseLevel(nl)およびsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。
【０１５１】
ステップＳ２３において、階調変換部１４３は、次に階調変換する画素のＲＧＢ値を読み込む。具体的には、階調変換部１４３の輝度算出部１６１および非線形変換部１６２−１乃至１６２−３は、次に階調変換する画素位置ｐの画素値Rw(p)，Gw(p)およびBw(p)をDSP１１６の図示せぬ内部のメモリから読み込む。
【０１５２】
ステップＳ２４において、輝度算出部１６１は、輝度値を算出する。具体的には、輝度算出部１６１は、画素位置ｐに対応する輝度値L(p)を、例えば、以下の式（１）により算出する。
【０１５３】
【数１】
2008205691.tif 000003
【０１５４】
なお、式（１）の係数cR，cg，cbは、Ｒ，Ｇ，Ｂの各成分のバランスをとるための係数であり、例えば、（cR，cg，cb）＝（0.3, 0.6, 0.1）または（0.25, 0.5, 0.25）のような値の組み合わせとされる。
【０１５５】
また、輝度値L(p)を算出する方法は、上述した方法に限定されるものではなく、例えば、以下の式（２）のように、Ｒ，Ｇ，Ｂの各成分の線形和以外の値とするようにしてもよい。
【０１５６】
L(p)＝max(Rw(p)，Gw(p)，Bw(p))  ・・・（２）
【０１５７】
輝度算出部１６１は、算出した輝度値L(p)を非線形変換部１６２−４に出力する。
【０１５８】
ステップＳ２５において、非線形変換部１６２−４は、輝度値を非線形変換する。具体的には、非線形変換部１６２−４のマッピング部２０１（図５）は、変換曲線を表すルックアップテーブルを変換曲線メモリ２０２から読み込み、ルックアップテーブルに基づいて、輝度値L(p)を非線形変換（例えば、対数変換またはガンマ変換）する。
【０１５９】
なお、ステップＳ２５の非線形変換の処理は必ずしも行う必要はないが、非線形変換前の輝度値を横軸に変換後の輝度値を縦軸とする場合に、上に凸の形状で単調増加する変換曲線を用いて非線形変換を行うことにより、輝度値のヒストグラムの形状が暗輝度側または明輝度側に極端に偏ることが防止され、ヒストグラムを解析しやすくすることができる。例えば、非線形変換に用いられる変換曲線は、例えば、ガンマ補正によく用いられるべき乗曲線（ただし、指数は１より小さい値とされる）、対数曲線、または、べき乗関数もしくは対数に基づいた関数により表される曲線とされる。
【０１６０】
マッピング部２０１は、非線形変換した輝度値L(nl)(p)を、トーンカーブ算出部１６３、縮小画像生成部１８１、マッピング部１９１−１、および、階調補正部１６９−１乃至１６９−３に出力する。
【０１６１】
ステップＳ２６において、トーンカーブ算出部１６３は、トーンカーブ算出のための画素処理を行う。トーンカーブ算出のための画素処理の詳細は、図１８を参照して後述するが、この処理により、トーンカーブを算出するために輝度値L(nl)(p)のソートおよび画像全体の輝度合計値の算出が行われる。
【０１６２】
ステップＳ２７において、縮小画像生成部１８１は、縮小画像生成のための画素処理を行う。縮小画像生成のための画素処理の詳細は、図１９を算出して後述するが、この処理により、縮小画像を生成するために、各ブロックごとの輝度値L(nl)(p)の輝度合計値の計算が行われる。
【０１６３】
ステップＳ２８において、補間部１８３は、大局輝度値算出処理を行う。大局輝度値算出処理の詳細は、図２０を参照して後述するが、この処理により、画素位置ｐに対応する大局輝度値Ll(nl)(p)が算出される。
【０１６４】
ステップＳ２９において、階調変換部１４３は、非線形変換された輝度値および大局輝度値にトーンカーブを適用する。具体的には、階調変換部１４３のマッピング部１９１−１は、１つ前のフレームの階調変換処理において算出されたトーンカーブに基づいて、輝度値L(nl)(p)を輝度値Lc(nl)(p)に変換することにより、輝度値L(nl)(p)の階調を圧縮する。マッピング部１９１−１は、輝度値Lc(nl)(p)をコントラスト補正部１６８に出力する。また、マッピング部１９１−２は、１つ前のフレームの階調変換処理において算出されたトーンカーブに基づいて、大局輝度値Ll(nl)(p)を大局輝度値Lcl(nl)(p)に変換することにより、大局輝度値Ll(nl)(p)の階調を圧縮する。マッピング部１９１−２は、大局輝度値Lcl(nl)(p)をコントラスト補正部１６８に供給する。
【０１６５】
ステップＳ３０において、コントラスト補正部１６８は、コントラスト補正処理を行う。コントラスト補正処理の詳細は、図２２を参照して後述するが、この処理により、輝度値Lc(nl)(p)からなる画像のコントラストが補正される。
【０１６６】
ステップＳ３１において、非線形変換部１６２−１乃至１６２−３は、ＲＧＢ値をそれぞれ非線形変換する。具体的には、非線形変換部１６２−１乃至１６２−３のマッピング部２０１（図５）は、それぞれ、変換曲線を表すルックアップテーブルを変換曲線メモリ２０２から読み込み、ルックアップテーブルに基づいて、ステップＳ２３において読み込んだ画素値Rw(p)，Gw(p)、または、Bw(p)を非線形変換する。非線形変換部１６２−１乃至１６２−３のマッピング部２０１は、それぞれ、非線形変換した画素値R(nl)(p)，G(nl)(p)またはB(nl)(p)を、階調補正部１６９−１乃至１６９−３に出力する。
【０１６７】
なお、非線形変換部１６２−１乃至１６２−３が用いるルックアップテーブルは、ステップＳ２５において、非線形変換部１６２−４が用いたルックアップテーブルと同じものとされる。すなわち、画素値Rw(p)，Gw(p)、および、Bw(p)に輝度値L(p)と同様の非線形変換が施される。
【０１６８】
ステップＳ３２において、階調補正部１６９−１乃至１６９−３は、非線形変換されたRGB値をそれぞれ階調補正する。具体的には、階調補正部１６９−１乃至１６９−３は、それぞれ、以下の式（３）乃至（５）により、画素値R(nl)(p)，G(nl)(p)、または、B(nl)(p)の階調を補正した画素値Ru(nl)(p)，Gu(nl)(p)、または、Bu(nl)(p)を算出する。
【０１６９】
Ru(nl)(p)＝chromagain・(R(nl)(p)−L(nl)(p))＋Lu(nl) (p)  ・・・（３）
Gu(nl)(p)＝chromagain・(G(nl)(p)−L(nl)(p))＋Lu(nl) (p)  ・・・（４）
Bu(nl)(p)＝chromagain・(B(nl)(p)−L(nl)(p))＋Lu(nl) (p)  ・・・（５）
なお、chromagainは、Ｒ、Ｇ，Ｂの各成分の彩度を調節するための所定の値の係数である。
【０１７０】
すなわち、画素値Ru(nl)(p)，Gu(nl)(p)、または、Bu(nl)(p)は、画素値R(nl)(p)，G(nl)(p)、または、B(nl)(p)からなる画像と階調変換前の輝度値L(nl)(p)からなる画像との差分である差分画像の各画素値にchromagainを乗じ、さらに、コントラスト補正後の輝度値Lu(nl)(p)からなる画像を加えた画像の画素値である。これにより、非線形変換されたＲＧＢ値に階調変換後の輝度値が反映される。
【０１７１】
階調補正部１６９−１乃至１６９−３は、それぞれ、階調補正した画素値Ru(nl)(p)，Gu(nl)(p)、または、Bu(nl)(p)を、非線形逆変換部１７０−１乃至１７０−３に供給する。
【０１７２】
ステップＳ３３において、非線形逆変換部１７０−１乃至１７０−３は、階調補正されたＲＧＢ値を非線形逆変換する。具体的には、非線形逆変換部１７０−１乃至１７０−３の逆マッピング部４１１（図１４）は、それぞれ、変換曲線を表すルックアップテーブルを変換曲線メモリ４１２から読み込み、ルックアップテーブルに基づいて、画素値Ru(nl)(p)，Gu(nl)(p)、または、Bu(nl)(p)に対して、ステップＳ３１における非線形変換の逆変換となる非線形逆変換を行う。
【０１７３】
ステップＳ３４において、非線形逆変換部１７０−１乃至１７０−３は、非線形逆変換されたＲＧＢ値を出力する。具体的には、非線形逆変換部１７０−１乃至１７０−３の逆マッピング部４１１は、それぞれ、非線形逆変換した画素値Ru(p)，Gu(p)、または、Bu(p)を、ガンマ補正部１４４に出力する。
【０１７４】
ステップＳ３５において、階調変換部１４３は、フレーム内の全ての画素を処理したか否かを判定する。まだフレーム内の全ての画素を処理していないと判定された場合、処理はステップＳ２３に戻り、ステップＳ３５において、フレーム内の全ての画素を処理したと判定されるまで、ステップＳ２３乃至Ｓ３５の処理が繰返し実行される。すなわち、現在処理しているフレーム内の全ての画素が、１画素ずつ順番に（例えば、ラスタスキャン順に）階調変換される。
【０１７５】
ステップＳ３５において、フレーム内の全ての画素を処理したと判定された場合、処理はステップＳ３６に進む。
【０１７６】
ステップＳ３６において、トーンカーブ算出部１６３は、トーンカーブとγ_comp算出処理を行う。トーンカーブとγ_comp算出処理の詳細は、図２４を参照して後述するが、この処理により、今回階調変換したフレームにおけるトーンカーブとγ_compパラメータが算出される。
【０１７７】
ステップＳ３７において、縮小画像生成部１８１は、縮小画像生成処理を行い、階調変換処理は終了する。縮小画像生成処理の詳細は、図２６を参照して後述するが、この処理により、縮小画像が生成される。
【０１７８】
次に、図１８のフローチャートを参照して、図１６のステップＳ２６のトーンカーブ算出のための画素処理の詳細を説明する。
【０１７９】
ステップＳ５１において、トーンカーブ算出部１６３は、次に処理する画素の輝度値を読み込む。具体的には、トーンカーブ算出部１６３の輝度域算出部２２１の間引き部２４１（図７）、および、トーンカーブ算出部１６３の平均レベル算出部２２２の飽和画素除外部２８１は、上述した図１６のＳ２５において非線形変換された画素位置ｐの画素の輝度値L(nl)(p)を非線形変換部１６２−４から読み込む。
【０１８０】
ステップＳ５２において、間引き部２４１は、画素位置がサンプリング位置に合致するか否かを判定する。具体的には、間引き部２４１は、読み込んだ輝度値L(nl)(p)の画素位置ｐが、所定の間隔ごとに設けられているサンプリング位置に合致すると判定した場合、輝度値L(nl)(p)を飽和画素除外部２４２に出力する。
【０１８１】
ステップＳ５３において、飽和画素除外部２４２は、輝度値がnoiseLevel以上saturationLevel以下であるか否かを判定する。飽和画素除外部２４２は、輝度値L(nl)(p)が、所定のnoiseLevel(nl)以上かつsaturationLevel(nl)以下であると判定した場合、ソーティング部２４３およびソーティング部２４４に輝度値L(nl)(p)を出力し、処理はステップＳ５４に進む。
【０１８２】
ステップＳ５４において、ソーティング部２４３は、暗輝度側ソーティングを行う。具体的には、ソーティング部２４３の比較部２５１−１は、レジスタ２５２−１が記憶している値と輝度値L(nl)(p)を比較して、輝度値L(nl)(p)がレジスタ２５２−１の値より小さい場合、レジスタ２５２−１に記憶されていた値を後段の比較部２５１−２に出力し、輝度値L(nl)(p)をレジスタ２５２−１に記憶させる。一方、輝度値L(nl)(p)がレジスタ２５２−１の値以上である場合、比較部２５１−１は、輝度値L(nl)(p)をそのまま後段の比較部２５１−２に出力する。後段の比較部２５１−２乃至２５１−ｋも同様の処理を行う。その結果、最終的に、フレーム内のサンプリング位置の画素の輝度値L(nl)(p)のうち、最小の輝度値L(nl)(p)からｋ番目に小さい輝度値L(nl)(p)までが、レジスタ２５２−１乃至２５２−ｋに昇順に記憶される。
【０１８３】
ステップＳ５５において、ソーティング部２４３は、明輝度側ソーティングを行う。具体的には、ソーティング部２４４の比較部２６１−１は、レジスタ２６２−１が記憶している値と輝度値L(nl)(p)を比較して、輝度値L(nl)(p)がレジスタ２６２−１の値より大きい場合、レジスタ２６２−１に記憶されていた値を後段の比較部２６１−２に出力し、輝度値L(nl)(p)をレジスタ２６２−１に記憶させる。一方、比較部２６１−１は、輝度値L(nl)(p)がレジスタ２５２−１の値以下である場合、輝度値L(nl)(p)をそのまま後段の比較部２６１−２に出力する。後段の比較部２６１−２乃至２６１−ｋも同様の処理を行う。その結果、最終的に、フレーム内のサンプリング位置の画素の輝度値L(nl)(p)のうち、最大の輝度値L(nl)(p)からｋ番目に大きい輝度値L(nl)(p)までが、レジスタ２６２−１乃至２６２−ｋに降順に記憶される。
【０１８４】
ステップＳ５３において、輝度値L(nl)(p)がnoiseLevel(nl)未満またはsaturationLevel(nl)を超えると判定された場合、ステップＳ５４およびＳ５５の処理はスキップされ、処理はステップＳ５６に進む。すなわち、noiseLevel(nl)未満またはsaturationLevel(nl)を超える輝度値L(nl)(p)は、暗輝度側ソーティングおよび明輝度側ソーティングの対象から除外される。
【０１８５】
ステップＳ５２において、画素位置がサンプリング位置に合致しないと判定された場合、ステップＳ５３乃至Ｓ５５の処理はスキップされ、処理はステップＳ５６に進む。これにより、暗輝度側ソーティングおよび明輝度側ソーティングの対象となる画素数が制限される。
【０１８６】
ステップＳ５６において、平均レベル算出部２２２の飽和画素除外部２８１（図８）は、ステップＳ５３における輝度域算出部２２１の飽和画素除外部２４２による処理と同様に、輝度値がnoiseLevel以上saturationLevel以下であるか否かを判定する。飽和画素除外部２８１は、輝度値L(nl)(p)が、noiseLevel(nl)以上かつsaturationLevel(nl)以下であると判定した場合、平均値算出部２８２の加算部２９１およびカウンタ２９３に輝度値L(nl)(p)を出力し、処理はステップＳ５７に進む。
【０１８７】
ステップＳ５７において、平均レベル算出部２２２は、輝度合計値を算出し、トーンカーブ算出のための画素処理は終了する。具体的には、加算部２９１は、レジスタ２９２に記憶されているこれまでの輝度値の合計値である輝度合計値を読み込み、入力された輝度値L(nl)(p)を加算する。加算部２９１は、算出した値をレジスタ２９２に記憶させる。また、カウンタ２９３は、カウンタの値を１つインクリメントする。すなわち、カウンタ２９３のカウンタ値は、これまでに輝度合計値に輝度値L(nl)(p)が加算された画素の数を示す。
【０１８８】
ステップＳ５６において、輝度値L(nl)(p)がnoiseLevel(nl)未満またはsaturationLevel(nl)を超えると判定された場合、ステップＳ５７の処理はスキップされ、トーンカーブ算出のための画素処理は終了する。すなわち、noiseLevel(nl)未満またはsaturationLevel(nl)を超える輝度値L(nl)(p)は、輝度平均値を算出する対象から除外される。
【０１８９】
次に、図１９のフローチャートを参照して、図１６のステップＳ２７の縮小画像生成のための画素処理の詳細を説明する。
【０１９０】
ステップＳ７１において、縮小画像生成部１８１のソート部３５１（図１１）は、次に処理する画素の輝度値を読み込む。具体的には、ソート部３５１は、上述した図１６のＳ２５において非線形変換された画素位置ｐの画素の輝度値L(nl)(p)を非線形変換部１６２−４から読み込む。
【０１９１】
ステップＳ７２において、ソート部３５１は、該当するブロックを判定する。具体的には、ソート部３５１は、画素位置ｐが、画像を横wr×縦hr個に分割した所定のブロックのどれに含まれるかを判定する。
【０１９２】
ステップＳ７３において、平均値算出部３５２は、輝度値を該当するブロックの輝度合計値に加算し、縮小画像生成のための画素処理は終了する。具体的には、ソート部３５１は、画素位置ｐが含まれるブロックの輝度値の平均値を算出する平均値算出部３５２に、輝度値L(nl)(p)を出力する。平均値算出部３５２は、対象となるブロックの輝度値の合計である輝度合計値に輝度値L(nl)(p)を加算する。
【０１９３】
次に、図２０のフローチャートを参照して、図１６のステップＳ２８の大局輝度算出処理を説明する。
【０１９４】
ステップＳ９１において、補間部１８３の近傍選択部３７１（図１２）は、次に処理する画素の画素位置を読み込む。具体的には、近傍選択部３７１は、次に処理する画素の画素位置ｐを非線形変換部１６２−４から読み込む。
【０１９５】
ステップＳ９２において、近傍選択部３７１は、次に処理する画素に対応する縮小画像上の近傍画素と位置ずれ量を算出する。具体的には、近傍選択部３７１は、モザイク画像の画素数を横wm×縦hm、縮小画像の画素数を横wr×縦hrとした場合、画素位置ｐ＝(px, py)に対応する縮小画像上の位置ｑ＝(qx，qy)を、以下の式（６）乃至（８）により算出する。
【０１９６】
bx＝wm／wr  ・・・（６）
by＝hm／hr  ・・・（７）
q＝(qx，qy)＝(px／bx−0.5, py／by−0.5）  ・・・（８）
【０１９７】
また、近傍選択部３７１は、位置ｑの近傍の横４×縦４画素の範囲内の画素である近傍画素を抽出する。例えば、図２１に示される例の場合、図２１の斜線で示されるqx−2＜ｘ＜qx＋2、qy−2＜ｙ＜qy＋2の範囲内に位置する“＋”マークで示される画素が近傍画素として抽出される。
【０１９８】
さらに、近傍選択部３７１は、画素位置ｐと近傍画素の水平方向の位置ずれ量dx、および、垂直方向の位置ずれ量dyを、縮小画像において、位置qから左下方向で最も近い画素と位置qとの差分とする。すなわち、位置ずれ量（dx，dy）＝（qxの小数部，qyの小数部）となる。
【０１９９】
近傍選択部３７１は、水平方向の位置ずれ量dxを水平係数算出部３７２に出力し、垂直方向の位置ずれ量dyを垂直係数算出部３７３に出力し、近傍画素の画素値a[i][j]（1≦i≦4，1≦j≦4、ただし、i，jは自然数）を積和部３７４に出力する。
【０２００】
ステップＳ９３において、水平係数算出部３７２は、水平方向の３次補間係数を算出する。具体的には、水平係数算出部３７２は、水平方向の位置ずれ量dxに基づいて、以下の式（９）および（１０）により、水平方向の３次補間係数kx[i]（1≦i≦4，ただし、iは自然数）を算出する。
【０２０１】
【数２】
2008205691.tif 000004
【０２０２】
水平係数算出部３７２は、算出した補間係数kx[i]を積和部３７４に出力する。
【０２０３】
ステップＳ９４において、垂直係数算出部３７３は、垂直方向の３次補間係数を算出する。具体的には、垂直係数算出部３７３は、垂直方向の位置ずれ量dyに基づいて、以下の式（１１）および（１２）により、垂直方向の３次補間係数ky[j] （1≦j≦4，ただし、jは自然数）を算出する。
【０２０４】
【数３】
2008205691.tif 000005
【０２０５】
垂直係数算出部３７３は、算出した補間係数ky[j]を積和部３７４に出力する。
【０２０６】
なお、上述した式（９）乃至（１２）は、３次補間によく用いられる式の一例であり、十分に滑らかな補間が得られる範囲で、補間係数ｋx[i]，ｋy[j]を他の計算式に基づいて算出するようにしてもよい。
【０２０７】
ステップＳ９５において、積和部３７４は、大局輝度値を算出する。具体的には、積和部３７４は、近傍画素の画素値a[i][j]、水平方向の補間係数kx[i]、および、垂直方向の補間係数ky[j]を、以下の式（１３）により積和計算することにより、画素位置ｐの大局輝度値Ll(nl) (p)を算出する。
【０２０８】
【数４】
2008205691.tif 000006
【０２０９】
ステップＳ９６において、積和部３７４は、マッピング部１９１−２に、大局輝度値Ll(nl)(p)を出力して、大局輝度値算出処理は終了する。
【０２１０】
なお、大局輝度値Ll(nl) (p)からなる大局輝度画像は、横wr×縦hr画素の縮小画像を３次補間により元のサイズ（画素数）に拡大した画像であり、元の画像（輝度値L(nl) (p)からなる画像）のごく低周波域の成分だけを抽出した画像となる。
【０２１１】
次に、図２２のフローチャートを参照して、図１６のステップＳ３０のコントラスト補正処理を説明する。
【０２１２】
ステップＳ１１１において、コントラスト補正部１６８は、次に処理する画素の階調圧縮された輝度値および大局輝度値を読み込む。具体的には、コントラスト補正部１６８のゲイン値算出部３９１およびコントラスト強調部３９２（図１３）は、上述した図１６のステップＳ２９においてトーンカーブにより階調が圧縮された輝度値Lc(nl)(p)を、マッピング部１９１−１から読み込む。また、コントラスト強調部３９２は、上述した図１６のステップＳ２９においてトーンカーブにより階調が圧縮された大局輝度値Lcl(nl)(p)をマッピング部１９１−２から読み込む。
【０２１３】
ステップＳ１１２において、ゲイン値算出部３９１は、階調圧縮された輝度値とγ_compパラメータに基づいて、ゲイン値を算出する。具体的には、ゲイン値算出部３９１は、トーンカーブにより階調が圧縮された輝度値Lc(nl)(p)とγ_compパラメータに基づいて、以下の式（１４）および（１５）により、ゲイン値g(p)を算出する。
【０２１４】
【数５】
2008205691.tif 000007
なお、式（１５）に出てくるcontrastGainは、予め定められた定数である。
【０２１５】
ゲイン値算出部３９１は、算出したゲイン値g(p)をコントラスト強調部３９２に出力する。
【０２１６】
ステップＳ１１３において、コントラスト強調部３９２は、階調圧縮された輝度値および大局輝度値、並びに、ゲイン値を用いて、コントラスト補正した輝度値を算出する。具体的には、コントラスト強調部３９２は、階調が圧縮された輝度値Lc(nl)(p)および大局輝度値Lcl(nl)(p)、並びに、ゲイン値g(p)を用いて、以下の式（１６）により、コントラスト補正した輝度値Lu(nl) (p)を算出する。
【０２１７】
Lu(nl) (p)＝g(p)・(Lc(nl)(p)−Lcl(nl)(p))＋Lc(nl)(p)  ・・・（１６）
【０２１８】
なお、輝度値(Lc(nl)(p)−Lcl(nl)(p))からなる画像は、輝度値Lc(nl)(p)からなる画像から、輝度値Lc(nl)(p)からなる画像のごく低周波域の成分からなる大局輝度画像を差し引いたものである。従って、輝度値Lu(nl)(p)からなる画像は、輝度値Lc(nl)(p)からなる画像のごく低周波域を除く周波数成分がゲイン値g(p)により強調された画像となる。
【０２１９】
また、トーンカーブにより輝度値の階調が圧縮された画像（輝度値Lc(nl)(p)からなる画像）は、元の画像（輝度値L(nl)(p)からなる画像）と比較してコントラストが抑制されている。また、コントラストが抑制される度合いはトーンカーブの傾きに依存し、トーンカーブの傾きが緩やかであるほど抑制の度合いが大きい。従って、トーンカーブの傾きの逆数に応じて、階調が圧縮された画像のコントラスを強調するように補正すれば、階調を圧縮する前の画像に近いコントラストを得ることができる。しかし、noiseLevel(nl)またはsaturationLevel(nl)付近の輝度値Lc(nl)(p)の画素についても同様の補正を行った場合、補正後の輝度値がnoiseLevel(nl)を下回ったり、saturationLevel(nl)を超えたりするクリッピングが生じ、逆に画像のディテールが失われてしまう場合がある。
【０２２０】
図２３は、輝度値Lc(nl)(p)と、式（１４）および（１５）により算出されるゲイン値g(p)との関係をグラフに表したものである。輝度値Lc(nl)(p)が、輝度値Lc(nl)(p)が取り得る範囲のほぼ中間にあたる所定の中間輝度レベルLmid(nl)となるとき、ゲイン値g(p)が最大となり、輝度値Lc(nl)(p)が、輝度値Lc(nl)(p)が取りうる範囲の最小値Lmin(nl)または最大値Lmax(nl)に近づくにつれて、ゲイン値g(p)は直線的に減衰し、輝度値Lc(nl)(p)が最小値Lmin(nl)未満および最大値Lmax(nl)を超える範囲では、ゲイン値g(p)は0となる。従って、中間輝度レベルLmid(nl)付近の輝度成分のコントラストが、最小値Lmin(nl)または最大値Lmax(nl)付近の輝度成分のコントラストと比較して強調される。より厳密に言えば、中間輝度レベルLmid(nl)付近の輝度成分ほどコントラストが強調され、最小値Lmin(nl)または最大値Lmax(nl)付近の輝度成分は、ほとんどコントラストの強調が行われない。
【０２２１】
ステップＳ１１４において、コントラスト強調部３９２は、コントラスト補正した輝度値を出力して、コントラスト補正処理は終了する。具体的には、コントラスト強調部３９２は、コントラスト補正した輝度値Lu(nl)(p)を、階調補正部１６９−１乃至１６９−３に出力する。
【０２２２】
このように、コントラスト補正部１６８により、輝度値Lc(nl)(p)からなる画像のごく低周波域を除く、低中周波域から高周波域の成分のコントラストが強調される。したがって、高周波域の成分のコントラストだけを強調したときに目立つ、エッジ部分の局所的なオーバーシュートは発生せず、見た目にもごく自然にコントラストが強調された画像を得ることができる。
【０２２３】
また、中間輝度レベルLmid(nl)付近の輝度成分ほどコントラストが強調されるように補正され、最小値Lmin(nl)または最大値Lmax(nl)付近の輝度成分は、ほとんどコントラストの補正が行われないため、画像の白ツブレや黒ツブレがほとんど発生しない。
【０２２４】
次に、図２４のフローチャートを参照して、図１７のステップＳ３６のトーンカーブとγ_comp算出処理を説明する。
【０２２５】
ステップＳ１３１において、トーンカーブ算出部１６３の輝度域算出部２２１（図６）は、暗・明輝度側ソーティングの結果から暗・明輝度側裾野値を求める。具体的には、輝度域算出部２２１のソーティング部２４３（図７）は、レジスタ２５２−ｋに格納されている輝度値を暗輝度側の裾野値Ldark(nl)に設定する。また、輝度域算出部２２１のソーティング部２４４は、レジスタ２６２−ｋに格納されている輝度値を明輝度側の裾野値Lbright(nl)に設定する。
【０２２６】
例えば、間引き部２４１により１フレームあたりにサンプリングされる画素の数が１２００個とし、ソーティング部２４３のレジスタ２５２の数を６個（ｋ＝６）とした場合、１フレーム内の全ての画素が処理された後、レジスタ２５２−１乃至２５２−６には、サンプリングされた画素のうち、輝度が暗い方から６番目までの画素（厳密に言えば、輝度値L(nl)(p)がnoiseLevel(nl)未満の画素は除かれているので、必ずしも６番目とは限らない）の輝度値L(nl)(p)が格納される。従って、フレーム全体の画素数に占めるレジスタ２５２−６に格納されている輝度値L(nl)(p)、すなわち、Ldark(nl)以下の輝度値の画素数の比率はほぼ0.5％（＝6／1200）になると推定される。同様に、フレーム全体の画素数に占めるレジスタ２６２−６に格納されている輝度値L(nl)(p)、すなわち、Lbright(nl)以上の輝度値の画素数の比率はほぼ0.5％（＝6／1200）になると推定される。
【０２２７】
なお、裾野値Ldark(nl)または裾野値Lbright(nl)を設定するために用いる画素数の比率を、上述した0.5％以外の値とするようにしてもよい。また、ソーティング部２４３または２４４のレジスタの数は、サンプリングされる画素の数、および、裾野値Ldark(nl)または裾野値Lbright(nl)を設定するために用いる画素数の比率に応じて設定される。
【０２２８】
ソーティング部２４３は、裾野値Ldark(nl)を時間平滑化部２２３−１に出力し、ソーティング部２４４は、裾野値Lbright(nl)を時間平滑化部２２３−２に出力する。
【０２２９】
ステップＳ１３２において、トーンカーブ算出部１６３の平均レベル算出部２２２（図６）は、輝度合計値より平均レベルを算出する。具体的には、平均レベル算出部２２２の平均値算出部２８２の除算部２９４（図８）は、レジスタ２９２に記憶されている輝度合計値、および、カウンタ２９３のカウンタ値（画素数）を読み込む。除算部２９４は、輝度合計値をカウンタ２９３のカウンタ値で割ることにより、輝度値L(nl)(p)の平均レベルLaverage(nl)を算出する。除算部２９４は、時間平滑化部２２３−３に平均レベルLaverage(nl)を出力する。
【０２３０】
ステップＳ１３３において、時間平滑化部２２３は、裾野値および平均レベルを時間平滑化する。具体的には、時間平滑化部２２３−１の乗算部３１１（図９）は、裾野値Ldark(nl)に所定の平滑化係数sc1を乗じて、加算部３１３に出力する。時間平滑化部２２３−１の乗算部３１２は、１つ前のフレームにおける時間平滑化された裾野値Ldark-ts-pre(nl)をレジスタ３１４から読み込む。乗算部３１２は、裾野値Ldark-ts-pre(nl)に平滑化係数sc2を乗じて、加算部３１３に出力する。加算部３１３は、乗算部３１１から出力された値と乗算部３１２から出力された値を加算することにより裾野値Ldark(nl)を時間平滑化した裾野値Ldark-ts(nl)を算出する。すなわち、裾野値Ldark-ts(nl)は、以下の式（１７）により表される。
【０２３１】
Ldark-ts(nl)＝sc1・Ldark(nl)＋sc2・Ldark-ts-pre(nl)  ・・・（１７）
【０２３２】
すなわち、平滑化係数sc1およびsc2により、現在のフレームの裾野値Ldark(nl)と１つ前のフレームの裾野値Ldark-ts-pre(nl)との間で平滑化が行われる。
【０２３３】
加算部３１３は、裾野値Ldark-ts(nl)をスプライン発生部２２４に出力するとともに、レジスタ３１４に記憶させる。
【０２３４】
同様に、時間平滑化部２２３−２は、以下の式（１８）により、裾野値Lbright(nl)を時間平滑化した裾野値Lbright-ts(nl)を算出し、算出した裾野値Lbright-ts(nl)をスプライン発生部２２４に出力するとともに、レジスタ３１４に記憶させる。
【０２３５】
Lbright-ts(nl)＝sc1・Lbright(nl)＋sc2・Lbright-ts-pre(nl)  ・・・（１８）
ここで、Lbright-ts-pre(nl)：１つ前のフレームの時間平滑化された裾野値Lbright-ts(nl)であるものとする。
【０２３６】
また、同様に、時間平滑化部２２３−３は、以下の式（１９）により、平均レベルLaverage(nl)を時間平滑化した平均レベルLaverage-ts(nl)を算出し、算出した平均レベルLaverage-ts(nl)をスプライン発生部２２４に出力するとともに、レジスタ３１４に記憶させる。
【０２３７】
Laverage-ts(nl)＝sc1・Laverage(nl)＋sc2・L average-ts-pre(nl)  ・・・（１９）
ここで、L average-ts-pre(nl)：１つ前のフレームの時間平滑化された平均レベルL average-ts(nl)であるものとする。
【０２３８】
これにより、裾野値および平均レベルの値が、フレーム間で急激に変化したり、振動したりすることが防止される。
【０２３９】
ステップＳ１３４において、スプライン発生部２２４は、トーンカーブを生成する。以下、図２５を参照して、トーンカーブの生成方法について説明する。図２５は、スプライン発生部２２４により生成されるトーンカーブの一例を示している。なお、図２５のグラフの横軸方向は、階調補正する前の入力輝度の対数値を表し、縦軸方向は、トーンカーブCLによる階調補正後の出力輝度の対数値を表している。
【０２４０】
まず、スプライン発生部２２４のコントロールポイント設定部３３１（図１０）は、９つのコントロールポイントＰ１乃至Ｐ９を設定する。コントロールポイントＰ１は、入力輝度が所定の最小レベルとなり、出力輝度が所定の最小レベルLbase(nl)となるポイントに設定される。コントロールポイントＰ２は、入力輝度がノイズレベルであると見なすことができる輝度である所定のノイズレベルLnoise(nl)となり、出力輝度が最小レベルLbase(nl)となるポイントに設定される。コントロールポイントＰ３は、入力輝度がノイズレベルLnoise(nl)の２倍の輝度値となり、出力輝度が最小レベルLbase(nl)となるポイントに設定される。
【０２４１】
コントロールポイントＰ４は、入力輝度が暗輝度側の裾野値Ldark-ts(nl)となり、出力輝度がほぼ黒レベルの輝度値である輝度値Lankle(nl)となるポイントに設定される。コントロールポイントＰ５は、入力輝度が裾野値Ldark-ts(nl)の２倍の輝度値となり、出力輝度が輝度値Lankle(nl)の２倍の輝度値となるポイントに設定される。コントロールポイントＰ６は、入力輝度が入力輝度の平均レベルLaverage-ts(nl)となり、出力輝度が出力輝度の輝度範囲における所定のほぼ中間の中間輝度レベルLmid(nl)となるポイントに設定される。コントロールポイントＰ７は、入力輝度が明輝度側の裾野値Lbright-ts(nl)の２分の１の輝度値となり、出力輝度がほぼ白レベルの輝度値である輝度値Lshoulder(nl)の２分の１の輝度値となるポイントに設定される。コントロールポイントＰ８は、入力輝度が裾野値Lbright-ts(nl)となり、出力輝度が輝度値Lshoulder(nl)となるポイントに設定される。コントロールポイントＰ９は、入力輝度が所定の入力輝度の最大値となり、出力輝度が所定の出力輝度の最大値となるポイントに設定される。
【０２４２】
コントロールポイント設定部３３１は、設定したコントロールポイントＰ１乃至Ｐ９の位置を示すコントロールポイントセットを曲線描画部３３２およびγ算出部３３３に供給する。曲線描画部３３２は、コントロールポイントＰ１乃至Ｐ９の各ポイント間を補間する３次スプライン曲線上の座標を算出することにより、トーンカーブCLのルックアップテーブルを生成する。
【０２４３】
なお、コントロールポイントＰ３が補助点として設定されることにより、トーンカーブＣＬが確実にコントロールポイントＰ２またはその近傍を通過するようになる。すなわち、入力輝度がほぼノイズレベルLnoise(nl)である場合、出力輝度の最小レベルLbase(nl)にほぼ等しい値に階調変換されるようになる。また、コントロールポイントＰ５が補助点として設定されることにより、入力輝度がほぼ裾野値Ldark-ts(nl)となり、出力輝度がほぼ黒レベルとなる輝度値Lankle(nl)となる付近（コントロールポイントP４付近）のトーンカーブＣＬの傾きが極端に急峻になったり緩やかになったりすることが防止される。また、コントロールポイントＰ７が補助点として設定されることにより、入力輝度がほぼ裾野値Ldark-ts(nl)となり、出力輝度がほぼ白レベルとなる輝度値Lshoulder(nl)付近（コントロールポイントP８付近）のトーンカーブＣＬの傾きが極端に急峻になったり緩やかになったりすることが防止される。
【０２４４】
従って、トーンカーブＣＬは、コントロールポイントＰ６付近で傾きが緩やかになり、コントロールポイントＰ４およびＰ８付近で傾きがほぼ１に近くなる逆Ｓ字状の単調増加する曲線となる。すなわち、出力輝度が中間輝度レベルLmid(nl)付近において、階調の圧縮率が高くされ、出力輝度が高い（大きい）または低い（小さい）付近ほど、階調の圧縮率が低くされる。これは、トーンカーブＣＬを適用して階調を圧縮した後、コントラスト補正を行うときに、上述したように、中間輝度レベルLmid(nl)付近の輝度成分ほどコントラストが強調され、階調を圧縮する前の画像に近いコントラストを得ることができる一方、輝度値のクリッピングを防止するために、最小値Lmin(nl)または最大値Lmax(nl)付近の輝度成分は、ほとんどコントラストが補正されないためである。
【０２４５】
従って、トーンカーブＣＬによる階調圧縮およびステップＳ３０のコントラスト補正を組み合わせることにより、画像のディテールをほぼ保持したまま、黒ツブレや白ツブレをほとんど発生させることなく、画像の階調の圧縮を行うことができる。
【０２４６】
また、入力される画像データから算出された裾野値Ldark-ts(nl)、裾野値Lbright-ts(nl)、および、平均レベルLaverage-ts(nl)に基づいて、画像ごとにトーンカーブCLが生成されるため、入力画像データの画素値（輝度値）の分布に応じて、適切に画像の階調を圧縮することができる。
【０２４７】
ステップＳ１３５において、γ算出部３３３は、トーンカーブの形状よりγ_compパラメータを算出する。具体的には、γ算出部３３３は、コントロールポイントＰ６付近におけるトーンカーブＣＬの傾きに近い値を得るために、コントロールポイントＰ５とＰ７を結ぶ線分ＡＬの傾きを算出し、算出した傾きをγ_compパラメータにとして設定する。
【０２４８】
ステップＳ１３６において、トーンカーブ算出部１６３は、トーンカーブおよびγ_compパラメータをメモリに格納し、トーンカーブとγ_comp算出処理は終了する。具体的には、曲線描画部３３２は、生成したトーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４に格納させる。また、γ算出部３３３は、γ_compパラメータをγ_compパラメータメモリ１６５に格納させる。
【０２４９】
次に、図２６のフローチャートを参照して、図１７のステップＳ３７の縮小画像生成処理の詳細を説明する。
【０２５０】
ステップＳ１５１において、縮小画像生成部１８１は、ブロック内の画素の輝度の平均値を算出する。具体的には、例えば、縮小画像生成部１８１の平均値算出部３５２−１（図１１）は、自分が保持している１番目のブロック内の画素の輝度合計値を、ブロック内の画素数で割ることにより、１番目のブロックの輝度の平均値を算出する。
【０２５１】
ステップＳ１５２において、縮小画像生成部１８１は、ブロックの輝度の平均値をメモリ上の対応する画素の位置に格納する。具体的には、例えば、平均値算出部３５２−１は、算出した１番目のブロックの輝度の平均値を、縮小画像メモリ１８２上の対応する画素（例えば、いちばん左上の画素）の位置に格納させる。
【０２５２】
ステップＳ１５３において、縮小画像生成部１８１は、全てのブロックを処理したか否かを判定する。まだ、全てのブロックの処理をしていないと判定された場合、処理はステップＳ１５１に戻り、ステップＳ１５３において、全てのブロックの処理をしたと判定されるまで、ステップＳ１５１乃至Ｓ１５３の処理が繰り返し実行される。すなわち、２番目以降のブロックについて順番に、同様に輝度の平均値が算出され、算出された平均値が縮小画像メモリ１８２上の対応する画素の位置に格納される。
【０２５３】
ステップＳ１５３において、全てのブロックの処理が終了したと判定された場合、縮小画像生成処理は終了する。
【０２５４】
これにより、輝度値L(nl)(p)からなる画像を横wr×縦hr個の複数のブロックに分割し、分割したブロックごとの輝度値L(nl)(p)の平均値を、ブロックの順番に配列した横wr×縦hr画素の縮小画像が生成される。
【０２５５】
以上のようにして、画像のディテールをほぼ保持したまま、黒ツブレや白ツブレをほとんど発生させることなく、画像の階調の圧縮を行うことができる。また、入力画像データの画素値（輝度値）の分布に応じて、適切に画像の階調を圧縮することができる。
【０２５６】
さらに、１フレーム前の処理において生成または算出された縮小画像、トーンカーブ、および、γ_compパラメータを用いて、階調変換を行うことにより、同じフレーム内で生成または算出した縮小画像、トーンカーブ、および、γ_compパラメータを用いて、階調変換をする場合と比較して、縮小画像の生成、並びに、トーンカーブおよびγ_compパラメータの算出するための処理の遅延時間がほとんど発生しないため、処理時間を短縮することができる。また、縮小画像の生成、または、トーンカーブおよびγ_compパラメータの算出の終了を待機するために、例えば、１フレーム分の画像を保持する必要がないため、メモリの使用量を削減することができる。
【０２５７】
なお、縮小画像、トーンカーブ、および、γ_compパラメータは、いずれも画像の細部に依存しない情報であるため、１フレーム前の情報を使用することによる時間のずれはほとんど問題にならない。例えば、被写体のエッジ情報のように高周波成分を含む情報であれば、動的な映像において、フレーム間の被写体の位置ずれが発生する場合があり、位置ずれを補償するような処理が必要であるが、縮小画像、トーンカーブ、および、γ_compパラメータについては、そのような問題は発生しない。
【０２５８】
また、同じフレーム内で生成または算出した縮小画像、トーンカーブ、および、γ_compパラメータを用いて、階調変換をする場合でも、縮小画像の生成と、トーンカーブおよびγ_compパラメータの算出とを並列して行うことができるため、処理時間を短縮することができる。
【０２５９】
次に、以上に説明した実施の形態とは異なる本発明の他の実施の形態について説明する。
【０２６０】
図２７は、白黒の画像を処理する場合の階調変換部の機能の構成の例を示すブロック図である。階調変換部５０１は、図４の階調変換部１４３と比較して、非線形変換部１６２−４、トーンカーブ算出部１６３、トーンカーブメモリ１６４、γ_compパラメータメモリ１６５、大局輝度算出部１６６、階調変換部１６７、コントラスト補正部１６８、および、非線形逆変換部１７０−１を含む点が共通し、輝度算出部１６１、非線形変換部１６２−１乃至１６２−３、階調補正部１６９−１乃至１６９−３、並びに、非線形逆変換部１７０−２および１７０−３を含まない点が異なる。
【０２６１】
すなわち、階調変換部５０１は、各画素のカラー成分（Ｒ，Ｇ，Ｂ成分）を処理する必要がないため、階調変換部１４３の輝度成分を処理する部分を抽出した構成となっている。なお、階調変換部５０１の非線形逆変換部１７０−１は、階調変換部１４３の非線形逆変換部１７０−１と異なり、コントラスト補正された輝度値Lu(nl)(p)を非線形逆変換した輝度値Lu(p)を、階調変換部５０１の出力値として、外部に出力する。
【０２６２】
また、図４の非線形変換部１６２−１乃至１６２−４の非線形変換の処理を、カメラの信号処理において一般的に行われているガンマ補正処理で代用するようにすれば、階調変換部の構成を簡素化することができる。
【０２６３】
図２８は、非線形変換処理をカメラのガンマ補正処理で代用する場合のDSPブロックの機能の構成の例を示す図である。DSP５５１は、図３のDSP１１６と比較して、デモザイク部１４１、ホワイトバランス部１４２、ガンマ補正部１４４、および、YC変換部１４５を含む点が共通し、階調変換部１４３の代わりに階調変換部５６１を含む点が異なる。
【０２６４】
また、DSP５５１では、DSP１１６と異なり、ガンマ補正部１４４は、ホワイトバランス部１４２によりホワイトバランスが調整された画素値［R w(p), G w(p), B w(p)］にガンマ補正を施し、ガンマ補正を施した画素値［R uγ(p), G uγ(p), B uγ(p)］を、YC変換部１４５に出力する。さらに、YC変換部１４５は、YC変換したあとのY画像の輝度値Y(p)を階調変換部５６１に出力し、C画像の色差値C(p)を外部に出力する。また、階調変換部５６１は、ガンマ補正部１４４によりガンマ補正された後の輝度値Y(p)を階調変換して、外部に出力する。
【０２６５】
図２９は、図２８の階調変換部５６１の機能の構成の例を示すブロック図である。階調変換部５６１は、図２７の階調変換部５０１と比較して、トーンカーブ算出部１６３、トーンカーブメモリ１６４、γ_compパラメータメモリ１６５、大局輝度算出部１６６、階調変換部１６７、および、コントラスト補正部１６８を含む点が共通し、非線形変換部１６２−４および非線形逆変換部１７０−１を含まない点が異なる。すなわち、階調変換部５６１に入力される輝度値Y(p)は、すでにガンマ補正部１４４により非線形変換の一種であるガンマ補正が施されているため、階調変換部５６１では、非線形変換処理および非線形逆変換処理を行う構成を省略することができる。
【０２６６】
以上のように、入力画像の輝度である入力輝度の分布に基づいて、輝度の階調の圧縮に用いる変換曲線を算出し、入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、変換曲線に基づいて、入力輝度の階調および大局輝度の階調を圧縮し、変換曲線の傾き、および、階調が圧縮された大局輝度に基づいて、階調が圧縮された入力輝度からなる階調圧縮入力画像のコントラストを補正する場合には、画像の輝度または色値の階調を圧縮することができる。また、画像のコントラストを損なわずに、各画像に応じた適切な輝度または色値の階調の圧縮をより高速に実行することができる。
【０２６７】
入力画像の各画素の輝度である入力輝度を入力画像の色成分の値である色値に基づいて算出し、入力輝度の分布に基づいて、輝度の階調の圧縮に用いる変換曲線を算出し、入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、変換曲線に基づいて、入力輝度の階調および大局輝度の階調を圧縮し、変換曲線の傾き、および、階調が圧縮された大局輝度に基づいて、階調が圧縮された入力輝度からなる階調圧縮輝度画像のコントラストを補正し、入力画像と輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された階調圧縮輝度画像を加算することにより、入力画像の色値の階調を変換する場合には、画像の輝度または色値の階調を圧縮することができる。また、画像のコントラストを損なわずに、各画像に応じた適切な輝度または色値の階調の圧縮をより高速に実行することができる。
【０２６８】
なお、以上にフローチャートを参照して説明した処理の順番は、その一例であり、本発明の本質に関わらない範囲で、処理の順序を入れ替えたり、複数の処理を同時に並列して行うようにしてもよい。例えば、入力画像のＲ、Ｇ、Ｂ成分を非線形変換した後に、輝度値を算出するようにしてもよい。また、非線形変換を行う前に、縮小画像を生成するようにしてもよい。さらに、輝度値のヒストグラムの裾野値および平均レベルを、非線形変換する前の輝度値のヒストグラムから求めた後に、非線形変換するようにしてもよい。
【０２６９】
また、類似の処理を行う構成を統合したり、共有化するようにしてもよい。例えば、マッピング部１９１−１，１９１−２、非線形変換部１６２のマッピング部２０１、および、非線形逆変換部１７０の逆マッピング部４１１を共通の回路を用いて実現することが可能である。
【０２７０】
さらに、以上の説明では、トーンカーブを生成するために必要な輝度値の平均レベルを、画像全体の輝度値の平均値とするようにしたが、例えば、縮小画像の輝度値の平均値とするようにしてもよい。これにより、平均レベルの算出時間が短縮される。また、例えば、多くのカメラの制御系に設けられているAE（Auto Exposure）制御機構を利用して、画像の全体または一部の明るさをAE制御系により計測するようにしたり、AE制御系が主要な被写体と判断した被写体領域の明るさを計測して、計測された明るさに基づく輝度値を平均レベルとするようにしてもよい。さらに、ユーザに画像内の所望の領域を指定させ、指定された領域に重点をおいた平均レベルを算出することにより、ユーザが所望するものにより近いトーンカーブを生成するようにすることも可能である。
【０２７１】
上述した処理を特徴づけるものは、縮小画像生成部１８１による画像縮小処理と、補間部１８３による画像補間処理の組み合わせによって実現される低周波フィルタを利用して、画像中の大局輝度成分とコントラスト成分を分離することである。この構成により分離されるコントラスト成分は画像の高周波成分だけでなくより低周波成分も含めたものとなるので、いたずらにディテールだけが強調されることなしに自然なコントラスト補正をおこなうことが可能である。また、低周波成分も含めたコントラスト成分を分離するために必要な巨大な２次元オペレータを画像縮小処理と画像補間処理の２つに分けて実現したことにより、巨大なディレイラインやフレームメモリなどが必要ない、非常にコンパクトな回路構成で実現可能という利点がある。
【０２７２】
ところで、デジタルスチルカメラの分野では、信号処理をおこなう前の画像センサ出力（以下RAWデータ）、または、それに対応するようなモザイク画像データをカメラの出力画像データとして出力できる機能が一般的になってきた。それに伴い、従来はカメラ装置内のみで必要だったRAWデータ、または、それに対応するようなモザイク画像データに対する信号処理がカメラの外、例えばパーソナルコンピュータ上で動作する画像処理プログラムなどで利用されるようになってきた。
【０２７３】
しかしながら、図２を用いて説明したデジタルビデオカメラ１０１において利用されている階調変換技術は、入力画像として、各画素にＲＧＢ３色の色情報が完全にそろった画像データを前提としているため、RAWデータに対応するような階調変換後のモザイク画像データを外部の機器に出力することは困難であった。
【０２７４】
また、図２を用いて説明したデジタルビデオカメラ１０１において利用されている階調変換技術は、入力画像として、各画素にＲＧＢ３色の色情報が完全にそろった画像データを前提としている。そのため、階調変換されたＲＧＢ画像を出力するために、Ｒ,Ｇ,Ｂの３つの色情報の画素値を並列に処理する必要があった。そのために、図４に示されるように、Ｒ,Ｇ,Ｂの３つの色情報のそれぞれを処理する、非線形変換部１６２−１乃至１６２−３、階調補正部１６９−１乃至１６９−３、および、非線形逆変換部１７０−１乃至１７０−３が必要であり、回路構成を更にコンパクトにする妨げとなっていた。
【０２７５】
モザイク画素値はその画素によってどれか１色の情報しかもたないが、階調変換部１４３において実行される、画素値の階調補正処理は、基本的には、画素値が何色であるかに依存しない演算である。従って、画素値の階調補正処理においては、本質的に、注目画素が何色に対応する画素であるかを判別する必要がない。
【０２７６】
そこで、色ごとに異なる演算を並列に用意することなく、例えば、階調変換前後で濃淡値に対する色の比率または色の差分を保存するようにモザイク画像を構成するそれぞれの画素値を変換することにより、階調補正を行うようにすることも可能である。
【０２７７】
図３０は、本発明を適用したデジタルビデオカメラの、図２を用いて説明した場合とは異なる構成を有する場合の、一実施の形態を示すブロック図である。
【０２７８】
なお、図２を用いて説明した場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０２７９】
すなわち、図３０に示されるデジタルビデオカメラ７０１は、ＤＳＰ１１６に代わってＤＳＰブロック７１１が設けられ、メモリ１２１に代わって、メモリ７１２が設けられ、新たに、外部インタフェース（Ｉ／Ｆ）７１３が設けられている以外は、基本的に、図２を用いて説明したデジタルビデオカメラ１０１と同様の構成を有している。なお、以下、ＤＳＰブロック７１１を、単にＤＳＰ７１１と呼ぶ。
【０２８０】
ＤＳＰ７１１は、画像データのダイナミックレンジが、例えばLCD１１９が表示可能なダイナミックレンジになるように、後述する画像処理を画像データに施した後、画像処理を施した画像データを、必要に応じて、LCDドライバ１１８またはCODEC１２０に供給するか、または、デモザイク処理が施される前のモザイク画像データの出力を要求された場合、実行可能な画像処理のうちの一部を施したモザイク画像データをメモリ７１２に供給する。
【０２８１】
メモリ７１２は、半導体、磁気記録媒体、光磁気記録媒体、光記録媒体などより構成され、CODEC１２０が符号化した画像データを記録するとともに、ＤＳＰ７１１により実行可能な画像処理のうちの一部を施したモザイク画像データの供給を受けて記録し、デモザイク処理が施される前のモザイク画像データの出力を要求された場合、記録されているモザイク画像を、Ｉ／Ｆ７１３に供給する。
【０２８２】
Ｉ／Ｆ７１３は、外部のネットワーク、または、装置とのインタフェースであり、デモザイク処理が施される前のモザイク画像データの出力を要求された場合、メモリ７１２から供給されたデモザイク処理が施される前のモザイク画像データを、所定の装置に出力する。
【０２８３】
次に、図３１は、ＤＳＰ７１１の内部のプロセッサ（演算ユニット）が、所定のプログラムを実行することにより実現される機能の構成の例を示すブロック図である。ＤＳＰ７１１の内部のプロセッサが所定のプログラムを実行することにより、ホワイトバランス部７３１、階調変換部７３２、および、デモザイク部７３３の機能が実現されるとともに、図３を用いて説明したＤＳＰ１１６が有する機能の一部である、ガンマ補正部１４４、および、YC変換部１４５の機能が実現される。
【０２８４】
ホワイトバランス部７３１は、A/Dコンバータ１１５によりA/D変換された画像データであるモザイク画像を取得する。モザイク画像は、Ｒ，Ｇ，Ｂのうちいずれかの色成分に対応するデータが１つの画素に格納され、例えば、Bayer配列と呼ばれる色配列に従って各画素が配置されている画像である。そして、ホワイトバランス部７３１は、モザイク画像のＲＧＢの各画素値に適切な係数をかけることにより、被写体の無彩色の部分の色バランスが実際に無彩色となるように、モザイク画像のホワイトバランスを調整する。ホワイトバランス部７３１は、ホワイトバランスを調整したモザイク画像を階調変換部７３２に供給する。なお、以下、ホワイトバランスが調整されたモザイク画像データの画素位置pにおける画素値をＭw(p)とする。
【０２８５】
階調変換部７３２は、図３３などを参照して後述するように、ホワイトバランスが調整されたモザイク画像に、階調変換処理を施す。階調変換部７３２は、階調変換を施した画像をデモザイク部７３３に供給するか、または、デモザイク処理が施される前のモザイク画像データの出力を要求された場合、実行可能な画像処理のうちの一部を施したモザイク画像データをメモリ７１２に供給する。なお、以下、階調変換処理が施された画像データの画素位置pにおける画素値をＭu(p)とする。
【０２８６】
デモザイク部７３３は、ホワイトバランスが調整され、階調が変換されたモザイク画像の入力を受けて、１つの画素がＲ，Ｇ，Ｂ成分を全て有するようにするデモザイク処理をモザイク画像に施す。これにより、Ｒ，Ｇ，Ｂの３つの色成分にそれぞれ対応するＲ画像、Ｇ画像、Ｂ画像の３つの画像データが生成される。デモザイク部７３３は、生成したＲ画像、Ｇ画像、Ｂ画像の３つの画像データをガンマ補正部１４４に供給する。以下、ホワイトバランスが調整され、階調が変換されたデモザイク画像データの画素位置pにおける画素値を［R u(p), G u(p), B u(p)］とする。なお、R u(p)はＲ成分の画素値であり、G u(p)はＧ成分の画素値であり、B u(p)はＢ成分の画素値である。
【０２８７】
なお、ガンマ補正部１４４、および、YC変換部１４５の機能は、図３を用いて説明したＤＳＰ１１６における場合と同様であるので、その詳細な説明は省略する。
【０２８８】
次に、図３２のフローチャートを参照して、ＤＳＰ７１１により実行される画像処理２を説明する。なお、この処理は、例えば、デジタルビデオカメラ７０１による撮影が開始され、A/Dコンバータ１１５からＤＳＰ７１１への画像データ（モザイク画像）のストリームの供給が開始されたとき、開始される。なお、ＤＳＰ７１１に供給された画像データは、逐次ＤＳＰ７１１の図示せぬ内部のメモリに格納される。
【０２８９】
ステップＳ２０１において、ホワイトバランス部７３１は、モザイク画像を読み込む。具体的には、ホワイトバランス部７３１は、ＤＳＰ７１１の図示せぬ内部のメモリに格納されている先頭のフレームのモザイク画像を読み込む。
【０２９０】
ステップＳ２０２において、ホワイトバランス部７３１は、取得したモザイク画像のホワイトバランスを調整する。ホワイトバランス部７３１は、ホワイトバランスを調整したモザイク画像を階調変換部７３２に供給する。
【０２９１】
ステップＳ２０３において、階調変換部７３２は、階調変換処理２を行う。階調変換処理２の詳細は図３７および図３８を参照して後述するが、この処理により、モザイク画像の階調が変換され、階調が変換されたモザイク画像がデモザイク部７３３に供給される。
【０２９２】
ステップＳ２０４において、デモザイク部７３３は、デモザイク処理を行う。具体的には、デモザイク部７３３は、読み込んだモザイク画像にデモザイク処理を施し、ＲＧＢ画像を生成する。デモザイク部７３３は、生成したＲＧＢ画像をガンマ補正部１４４に供給する。
【０２９３】
ステップＳ２０５において、ガンマ補正部１４４は、ＲＧＢ画像にガンマ補正を施す。ガンマ補正部１４４は、ガンマ補正を施したＲＧＢ画像をYC変換部１４５に供給する。
【０２９４】
ステップＳ２０６において、YC変換部１４５は、YC変換処理を行う。具体的には、YCマトリックス処理およびクロマ成分に対する帯域制限を行うことにより、ＲＧＢ画像からY画像およびＣ画像を生成する。
【０２９５】
ステップＳ２０７において、YC変換部１４５は、Y画像およびC画像を出力する。具体的には、YC変換部１４５は、必要に応じて、Y画像およびＣ画像を、LCDドライバ１１８またはCODEC１２０に出力する。
【０２９６】
ステップＳ２０８において、ホワイトバランス部７３１は、後続するフレームが存在するか否かを判定する。ホワイトバランス部７３１は、ＤＳＰ７１１の図示せぬ内部のメモリに後続するフレームのモザイク画像が蓄積されている場合、後続フレームが存在すると判定し、処理はステップＳ２０１に戻る。
【０２９７】
ステップＳ２０１において、次のフレームのモザイク画像が読み込まれ、読み込まれたモザイク画像に対して、ステップＳ２０２以降の処理が行われる。
【０２９８】
その後、ステップＳ２０８において、後続するフレームが存在しないと判定されるまで、ステップＳ２０１乃至Ｓ２０８の処理が繰返し実行され、Ａ／Ｄコンバータ１１５から供給されるモザイク画像に対して１フレームずつ順番に画像処理が行われる。
【０２９９】
ステップＳ２０８において、後続するフレームがないと判定された場合、画像処理は終了する。
【０３００】
このような処理により、ＤＳＰ７１１により画像処理が実行される。すなわち、ＤＳＰ７１１により実行される画像処理２においては、図１５を用いて説明した画像処理１と比較して、デモザイク処理の前に、ホワイトバランスの調整と階調変換処理が施されるようになされている。すなわち、ホワイトバランスの調整と階調変換は、モザイク画像に対して施される。
【０３０１】
なお、ここでは、モザイク画像の階調が変換され、階調が変換されたモザイク画像がデモザイク部７３３に供給されるものとして説明したが、上述したように、階調が変換されたモザイク画像は、メモリ７１２に供給され、Ｉ／Ｆ７１３を介して、外部に出力される場合もある。
【０３０２】
次に、図３３は、図３１のＤＳＰ７１１の階調変換部７３２が有する機能を構成の例を示す機能ブロック図である。
【０３０３】
階調変換部７３２は、３つの部分に分けて説明することができる。第１の部分は濃淡値算出部７６１、第２の部分は濃淡値階調変換部７６２、第３の部分はモザイク画素値階調変換部７６３である。
【０３０４】
濃淡値算出部７６１は、輝度算出部７７１、非線形変換部７７２によって構成され、濃淡値階調変換部７６２は、トーンカーブ算出部７８１、トーンカーブメモリ７８２、γ_compパラメータメモリ７８３、大局輝度算出部７８４、階調変換部７８５、および、コントラスト補正部７８６によって構成され、モザイク画素値階調変換部７６３は、非線形変換部８１１、階調補正部８１２、および、非線形逆変換部８１３によって構成されている。
【０３０５】
非線形変換部７７２は、輝度値に対して非線形変換処理を行うものであり、非線形変換部８１１は、モザイク画像のそれぞれの画素値に対して非線形変換処理を行うものである。また、階調補正部８１２は、モザイク画像のそれぞれの画素値に対して、階調補正を行うものである。
【０３０６】
また、大局輝度算出部７８４は、縮小画像生成部７９１、縮小画像メモリ７９２、および、補間部７９３を含んで構成され、階調変換部７８５は、輝度に対して処理を施すマッピング部８０１、および、大局輝度に対して処理を施すマッピング部８０２を含んで構成される。
【０３０７】
次に、それぞれが有する機能について説明する。
【０３０８】
濃淡値算出部７６１は、現在注目中の画素位置における濃淡値を算出する。
【０３０９】
濃淡値算出部７６１の輝度算出部７７１は、モザイク画像を取得し、そのうちのいずれかの画素、すなわち、Ｒ，Ｇ，または、Ｂのいずれかに対応する画素を注目画素として、例えば、図３４に示されるように、注目画素位置m22を中心に３×３画素の範囲に存在する、注目画素位置の周囲９画素を用いて注目画素位置における輝度値を算出する。
【０３１０】
典型的な色フィルタ配列であるBayer配列であれば、注目画素位置m22を中心に３×３画素の範囲を見ることにより、色情報を構成するＲＧＢ３色の画素がそろう。輝度算出部７７１は、周囲９画素から、次の式（２０）乃至式（２３）を用いて、４つの色補間値Ｃ1,Ｃ2,Ｃ3,Ｃ4を算出する。
【０３１１】
【数６】
2008205691.tif 000008
【０３１２】
算出された4つの色補間値は、それぞれが、注目画素位置近傍におけるＲ,Ｇ,Ｂのいずれかに対応する補間値であり、４つのうち２つがＧに対応する補間値であり、残りが、それぞれ、ＲまたはＢのいずれかに対応する補間値である。４つの補間値のうちのそれぞれがいずれの色に該当するかは、画像の撮像に用いているセンサデバイスの色配列と注目画素が画像上どの位置であるかによって判別することができる。
【０３１３】
輝度算出部７７１は、注目画素位置の輝度値を、次の式（２４）に示すように、4つの色補間値の線形和で算出する。
【０３１４】
【数７】
2008205691.tif 000009
【０３１５】
ここで、判別した後の色補間値をＲ,Ｇ1,Ｇ2,Ｂと表記している。ｋR,ｋG,ｋBは、線形和の係数である。線形和の係数の具体的な値は、経験的または実験的に、好ましいと思われる値を用いるものとすればよいが、とりうる値の一例として、例えば、[ｋR,ｋG,ｋB]＝[0.2126,0.7152,0.07228]などを用いるようにすることができる。
【０３１６】
輝度算出部７７１は、算出した輝度値L(p)を非線形変換部７７２に出力する。
【０３１７】
非線形変換部７７２は、図５を用いて説明した非線形変換部１６２と基本的に同様の機能を有し、輝度算出部７７１から供給された輝度値L(p)を、非線形特性により変調する。
【０３１８】
CCDやCMOSなどの固体撮像素子を用いたイメージセンサは、通常入射光強度に対して線形な出力特性をもつので、RAWデータ（モザイク画像）の階調特性は光強度に線形である。光強度に線形な階調特性では輝度値の分布は暗いほうに集中するため、そのままでは階調変換処理が適用し難い。そこで、ここでは、非線形変換によって、暗い値への分布の集中を緩和させた濃淡値への変換処理を行うものとする。
【０３１９】
分布の集中を緩和させるためには、上に凸の特性をもつような滑らかな単調増加の特性が適している。非線形変換部７７２においても、図５を用いて説明した非線形変換部１６２における場合と同様に、対数特性やガンマ補正によく利用される指数を１より小さくしたべき乗特性を用いる（変換曲線メモリ２０２に保持するルックアップテーブルに適用する）ものとすると好適である。
【０３２０】
濃淡値階調変換部７６２は、濃淡値算出部７６１が算出した各画素位置における濃淡値を階調変換する処理のほか、次のフレームで階調変換をおこなうときに用いる中間データを算出して次のフレームの処理の時までデータを保持する処理を実行するものであり、図４のトーンカーブ算出部１６３乃至コントラスト補正部１６８と基本的に同様の機能を有するトーンカーブ算出部７８１乃至コントラスト補正部７８６により構成されている。
【０３２１】
中間データとは、具体的には、濃淡値階調変換部７６２のトーンカーブメモリ７８２、γ_compパラメータメモリ７８３、および、大局輝度算出部７８４の縮小画像メモリ７９２に格納されているデータである。上述したように、これらのデータを算出するためには、１フレーム中の全画素情報を用いる必要がある。このため、各画素毎の階調変換処理に並行してこれら中間データの算出が実行され、算出された中間データが、次のフレームの階調変換処理に用いられる。
【０３２２】
濃淡値階調変換部７６２のうち、中間データ算出に関連するのは、トーンカーブ算出部７８１および大局輝度算出部７８４の縮小画像生成部７９１である。トーンカーブ算出部７８１は、各画素位置の濃淡値に階調圧縮をおこなうためのトーンカーブと、そのトーンカーブの傾き情報であるγ_compパラメータを算出して、トーンカーブメモリ７８２およびγ_compパラメータメモリ７８３にそれぞれ供給する。縮小画像生成部７９１は、各画素位置の濃淡値の大局輝度成分を算出するために、濃淡値を縮小した縮小画像を算出し、縮小画像メモリ７９２に供給する。
【０３２３】
トーンカーブ算出部７８１および大局輝度算出部７８４の縮小画像生成部７９１においてこれらの処理が実行されている間に、その前のフレームに対して、トーンカーブ算出部７８１および大局輝度算出部７８４の縮小画像生成部７９１において算出され、トーンカーブメモリ７８２、γ_compパラメータメモリ７８３、および、大局輝度算出部７８４の縮小画像メモリ７９２に格納されているデータが用いられて、それ以外の各部において、階調変換処理が実行される。
【０３２４】
トーンカーブ算出部７８１乃至コントラスト補正部７８６は、処理を施すデータが、濃淡値算出部７６１が算出した各画素位置における濃淡値である以外は、図４のトーンカーブ算出部１６３乃至コントラスト補正部１６８と基本的に同様の機能を有するので、その詳細な説明は省略する。
【０３２５】
モザイク画素値階調変換部７６３は、図４の非線形変換部１６２−１乃至１６２−３、階調補正部１６９−１乃至１６９−３、および、非線形逆変換部１７０−１乃至１７０−３と、取り扱う画像データがデモザイク画像のうちのいずれかの色成分の画像に対応するデータではなくモザイク画像データであること以外は、基本的に同様の機能を有する非線形変換部８１１、階調補正部８１２、および、非線形逆変換部８１３を含んで構成されている。
【０３２６】
非線形変換部８１１は、濃淡値算出部７６１の非線形変換部７７２と同じ変換特性で非線形変換を行うものである。すなわち、非線形変換部８１１の変換曲線メモリ２０２に保持されている変換曲線は、非線形変換部７７２の変換曲線メモリ２０２に保持されている変換曲線と同一のものである。入力されたモザイク画像の各画素は、非線形変換部８１１において、対応する画素位置の濃淡値と同じ階調特性に変換された後、階調補正部８１２に供給される。
【０３２７】
階調補正部８１２は、対応する画素位置の濃淡値と、それを階調変換した濃淡値に基づいて階調変換を実行し、階調変換後のモザイク画素値を非線形逆変換部８１３に供給する。
【０３２８】
上述したように、モザイク画素値はその画素によってどれか１色の情報しかもたないが、階調補正部８１２で施される処理は画素値が何色であるかに依存しない演算である。従って、階調補正部８１２は、階調補正を行う場合、その画素の画素値が、何色に対応する値であるかを判別しなくてもよく、ＲＧＢのそれぞれにおいて異なる演算を並列に用意する必要もない。
【０３２９】
例えば、階調補正部８１２は、図３５に示されるような構成とすることができる。図３５の構成を有する階調補正部８１２は、ガンマカーブなどのべき乗変換を用いて非線形変換による階調特性変換が行われている場合に用いると好適である。除算部８９１は、非線形変換部８１１から供給された階調特性変換後の各画素の画素値を、濃淡値算出部７６１の非線形変換部７７２から供給された階調特性変換後の各画素の輝度値で除算する。そして、乗算部８９２は、除算結果に、コントラスト補正部７８６から供給された、コントラスト補正された輝度値を乗算する。図３５の構成を有する階調補正部８１２は、すなわち、式（２５）に示されるようにして、階調変換前後で濃淡値に対する色比率を保存するようにモザイク画素値を変換することができる。
【０３３０】
【数８】
2008205691.tif 000010
【０３３１】
また、例えば、階調補正部８１２は、図３６に示されるような構成とすることができる。図３６の構成を有する階調補正部８１２は、対数変換を用いて非線形変換による階調特性変換が行われている場合に用いると好適である。減算部８９３は、非線形変換部８１１から供給された階調特性変換後の各画素の画素値から、濃淡値算出部７６１の非線形変換部７７２から供給された階調特性変換後の各画素の輝度値を減算する。そして、加算部８９４は、減算結果に、コントラスト補正部７８６から供給された、コントラスト補正された輝度値を加算する。図３６の構成を有する階調補正部８１２は、すなわち、式（２６）に示されるようにして、階調変換前後で濃淡値に対する色差分を保存するようにモザイク画素値を変換することができる。
【０３３２】
【数９】
2008205691.tif 000011
【０３３３】
例えば、仮に、非線形変換として対数変換を採用した場合、色差分を保存する演算は、線形な階調で色比率を保存するのと同じであり、色比率を保存する演算と比較して、乗除算が加減算に置換されるので演算としては容易である。従って、非線形変換として対数変換を採用した場合、図３６に示されるように、色差分保存の方式で階調補正部８１２を構成すると好適である。なお、べき乗変換の場合には、原理的には色比率保存の方式のほうが好適であるが、べき乗の指数を小さくすれば色差保存方式も問題なく利用することが可能である。
【０３３４】
非線形逆変換部８１３は、図１４を用いて説明した非線形逆変換部１７０と基本的に同様の機能を有し、変換曲線メモリ４１２に保持されている、非線形変換部８１１による非線形変換を逆変換するための変換曲線を用いて、非線形変換および階調補正された画素値を、元の階調に戻して出力する。
【０３３５】
次に、図３７および図３８のフローチャートを参照して、図３２のステップＳ２０３において実行される階調変換処理２について説明する。
【０３３６】
ステップＳ２５１において、階調変換部７３２は、ホワイトバランス部７３１によりホワイトバランスが調整されたモザイク画像を読み込む。読み込まれたモザイク画像は、濃淡値算出部７６１の輝度算出部７７１、および、モザイク画素値階調変換部７６３の非線形変換部８１１に供給される。
【０３３７】
ステップＳ２５２において、階調変換部７３２は、縮小画像、トーンカーブ、γ_compをメモリから読み込む。具体的には、階調変換部７３２の補間部７９３の近傍選択部３７１（図１２）は、１つ前のフレームの階調変換処理において生成された縮小画像を縮小画像メモリ７９２から読み込む。マッピング部８０１−１，８０１−２は、１つ前のフレームの階調変換処理において算出されたトーンカーブを表すルックアップテーブルを、トーンカーブメモリ７８２から読み込む。コントラスト補正部７８６のゲイン値算出部３９１（図１３）は、１つ前のフレームの階調変換処理において算出されたγ_compパラメータを、γ_compパラメータメモリ７８３から読み込む。
【０３３８】
ステップＳ２５３において、トーンカーブ算出部７８１は、noiseLevel、saturationLevelを読み込む。具体的には、トーンカーブ算出部７８１の輝度域算出部２２１の飽和画素除外部２４２（図７）、および、平均レベル算出部２２２の飽和画素除外部２８１（図８）は、noiseLevel(nl)およびsaturationLevel(nl)を、ＤＳＰ７１１の図示せぬ内部のメモリから読み込む。
【０３３９】
ステップＳ２５４において、輝度算出部７７１は、供給されたモザイク画像のうち、未処理の画素から注目画素を定める。
【０３４０】
ステップＳ２５５において、図３９を用いて後述する濃淡値算出処理が実行される。
【０３４１】
そして、ステップＳ２５６乃至ステップＳ２６０において、図１６のステップＳ２６乃至ステップＳ３０と同様の処理が実行される。
【０３４２】
すなわち、トーンカーブ算出部７８１において、図１８を用いて説明したトーンカーブ算出のための画素処理と基本的に同様の処理が実行され、縮小画像生成部７９１において、図１９を用いて説明した縮小画像算出のための画素処理と基本的に同様の処理が実行され、大局輝度算出部７８４において、図２０を用いて説明した大局輝度値算出処理と基本的に同様の処理が実行される。
【０３４３】
そして、階調変換部７８５は、非線形変換された輝度値および大局輝度値にトーンカーブを適用し、コントラスト補正部７８６において、図２２を用いて説明したコントラスト補正処理と基本的に同様の処理が実行される。
【０３４４】
ステップＳ２６１において、非線形変換部８１１は、供給されたモザイク画像の注目画素位置の画素値をそれぞれ非線形変換する。具体的には、非線形変換部８１１のマッピング部２０１（図５）は、それぞれ、変換曲線を表すルックアップテーブルを変換曲線メモリ２０２から読み込み、ルックアップテーブルに基づいて、注目画素の画素値Ｍw(p)を非線形変換し、非線形変換した画素値Ｍ(nl)(p)を、階調補正部８１２に出力する。
【０３４５】
なお、非線形変換部８１１が用いるルックアップテーブルは、ステップＳ２５５において実行される濃淡値算出処理（詳細は後述する）において、非線形変換部７７２が用いるルックアップテーブルと同じものとされる。すなわち、画素値Ｍw(p)に輝度値L(p)と同様の非線形変換が施される。
【０３４６】
ステップＳ２６２において、階調補正部８１２は、非線形変換されたモザイク画像の注目画素の画素値をそれぞれ階調補正する。具体的には、階調補正部８１２は、上述した式（２５）または式（２６）を用いて、階調補正処理を実行し、階調補正した画素値Ｍu(nl)(p)を、非線形逆変換部８１３に供給する。
【０３４７】
ステップＳ２６３において、非線形逆変換部８１３は、階調補正されたモザイク画像の注目画素の画素値を非線形逆変換する。具体的には、非線形逆変換部８１３の逆マッピング部４１１（図１４）は、それぞれ、変換曲線を表すルックアップテーブルを変換曲線メモリ４１２から読み込み、ルックアップテーブルに基づいて、画素値Ｍu(nl)(p)Rに対して、ステップＳ２６１における非線形変換の逆変換となる非線形逆変換を行う。
【０３４８】
ステップＳ２６４において、非線形逆変換部８１３は、モザイク画像における非線形逆変換された注目画素の画素値をデモザイク部７３３、または、メモリ７１２に出力する。
【０３４９】
ステップＳ２６５において、階調変換部７３２は、フレーム内の全ての画素を処理したか否かを判定する。まだフレーム内の全ての画素を処理していないと判定された場合、処理はステップＳ２５４に戻り、ステップＳ２６５において、フレーム内の全ての画素を処理したと判定されるまで、ステップＳ２５４乃至Ｓ２６５の処理が繰返し実行される。すなわち、現在処理しているフレーム内の全ての画素が、１画素ずつ順番に（例えば、ラスタスキャン順に）階調変換される。
【０３５０】
ステップＳ２６５において、フレーム内の全ての画素を処理したと判定された場合、ステップＳ２６６において、図２４を用いて説明した、トーンカーブとγ_comp算出処理が実行される。
【０３５１】
そして、ステップＳ２６７において、図２６を用いて説明された、縮小画像生成処理が実行されて、処理は、図３２のステップＳ２０３に戻り、ステップＳ２０４に進む。
【０３５２】
このような処理により、モザイク画像に対して、階調変換処理が施される。
【０３５３】
なお、ここでは、フローチャートに記載される順番に処理が実行されるものとして説明しているが、以上にフローチャートを参照して説明した処理の順番は、その一例であり、本発明の本質に関わらない範囲で、処理の順序を入れ替えたり、複数の処理を同時に並列して行うようにしてもよいことは、言うまでもない。
【０３５４】
具体的には、階調変換部７３２においては、上述したように、トーンカーブ算出部７８１および大局輝度算出部７８４の縮小画像生成部７９１において中間データの算出処理が実行されている間に、並行して、その前のフレームに対して、トーンカーブ算出部７８１および大局輝度算出部７８４の縮小画像生成部７９１において算出され、トーンカーブメモリ７８２、γ_compパラメータメモリ７８３、および、大局輝度算出部７８４の縮小画像メモリ７９２に格納されている中間データが用いられて、それ以外の各部において、階調変換処理が実行される。
【０３５５】
階調変換処理が施されたモザイク画像は、メモリ７１２に供給されて、階調変換が施されたRAWデータとして保持され、必要に応じて外部出力されるか、または、デモザイク部７３３においてデモザイク処理が施されて、ガンマ補正部１４４によりガンマ補正されたのち、YC変換部１４５においてYC分離される。
【０３５６】
次に、図３９のフローチャートを参照して、図３７のステップＳ２５５において実行される、濃淡値算出処理について説明する。
【０３５７】
ステップＳ３０１において、濃淡値算出部７６１の輝度算出部７７１は、例えば、図３４に示されるように、注目画素位置m22を中心に３×３画素の範囲に存在する、注目画素位置の周囲９画素を読み込む。
【０３５８】
ステップＳ３０２において、輝度算出部７７１は、ステップＳ３０１において読み込まれた周囲９画素の画素値を用いて、上述した式（２０）乃至式（２３）を用いて、４つの色補間値Ｃ1,Ｃ2,Ｃ3,Ｃ4を算出する。
【０３５９】
算出された4つの色補間値は、それぞれが、注目画素位置近傍におけるＲ,Ｇ,Ｂのいずれかに対応する補間値であり、４つのうち２つがＧに対応する補間値であり、残りが、それぞれ、ＲまたはＢのいずれかに対応する補間値である。４つの補間値のうちのそれぞれがいずれの色に該当するかは、画像の撮像に用いているセンサデバイスの色配列と注目画素が画像上どの位置であるかによって判別することができる。
【０３６０】
ステップＳ３０３において、輝度算出部７７１は、上述した式（２４）に示すように、4つの色補間値の線形和により、注目画素位置の輝度値を算出する。
【０３６１】
ステップＳ３０４において、濃淡値算出部７６１の非線形変換部７７２は、図５を用いて説明した場合と基本的に同様にして、輝度算出部７７１から供給された輝度値L(p)を、非線形特性により変調し、処理は、図３７のステップＳ２５５に戻り、ステップＳ２５６に進む。
【０３６２】
このような処理により、モザイク画像の供給を受けて、注目画素における濃淡値を算出し、濃淡値階調変換部７６２に供給することができる。
【０３６３】
なお、以上にフローチャートを参照して説明した処理の順番は、その一例であり、本発明の本質に関わらない範囲で、処理の順序を入れ替えたり、複数の処理を同時に並列して行うようにしてもよいことは、言うまでもない。また、類似の処理を行う構成を統合したり、共有化するようにしても良い。
【０３６４】
図３０を用いて説明したデジタルビデオカメラ７０１は、図２を用いて説明したデジタルビデオカメラ１０１における階調変換処理が、各画素に全色そろったカラー画像（デモザイク画像）の入力を前提としていたので、色数分の並列処理の存在は避けられなかったのに対して、RAWデータに対して階調変換をおこないRAWデータに対応するモザイク画像データを出力するような処理構成とすることにより、色数分の並列処理を行わないものとした。すなわち、デジタルビデオカメラ７０１のＤＳＰ７１１が有する階調変換部７３２において実行される、RAWデータを入力とし、対応するモザイク画像データを出力とする階調変換は、入力RAWデータの注目画素位置における輝度に応じた濃淡値を算出し、その濃淡値に対して階調変換を行い、階調変換によって濃淡値が変化した分に応じて注目画素位置のモザイク画像データの各画素値を変調することができるようになされている。
【０３６５】
これにより、図３０を用いて説明したデジタルビデオカメラ７０１は、図２を用いて説明したデジタルビデオカメラ１０１と比較して、回路構成を、更にコンパクトにすることが可能となる。
【０３６６】
また、デジタルビデオカメラ７０１のＤＳＰ７１１が有する階調変換部７３２においては、入力されたモザイク画像の輝度に応じた濃淡値を算出するために、注目画素の周囲の画素を利用して注目画素位置における完全なカラー情報を得るようにして輝度値に相当する濃淡値を得るようになされている。また、入射光強度に対して線形な特性のモザイク画像データの階調をそのまま用いた場合、輝度値が暗いほうに集中してしまうので、暗部を持ち上げるような適切な非線形変換を適用することにより、階調変換の適用が容易になる。さらに、非線形変換として対数変換やガンマ補正（べき乗変換）を用いることにより、階調変換によって濃淡値が変化した分に応じて注目画素位置のモザイク画像データの画素値を変調する操作がさらに簡易になるので好適である。
【０３６７】
更に、デジタルビデオカメラ７０１のＤＳＰ７１１が有する階調変換部７３２においては、階調変換によって輝度の濃淡値が変化した分に応じてモザイク画像の注目画素位置の画素値を変調する方法として、注目画素の入力画素値の輝度の濃淡値に対する比率を保存するように値を決定する方法と、輝度の濃淡値に対する差分を保存するように値を決定する方法とのいずれの方法を用いるようにしても良い。これらの方法は、いずれも、濃淡値の階調変換前後の値と注目画素の入力画素値がわかれば演算可能であり、注目画素以外の入力画素値が必要ないので、モザイク画像の画像処理に好適である。特に、色差分を保存する方法は、非線形変換処理と組み合わせて用いることで好適な結果を得ることが可能となる。
【０３６８】
さらに、デジタルビデオカメラ７０１のＤＳＰ７１１が有する階調変換部７３２においては、図２を用いて説明したデジタルビデオカメラ１０１における場合と同様にして、濃淡値の階調変換方法として、トーンカーブ補正による方法、または、トーンカーブ補正とコントラスト補正を組み合わせた方法を用いることが可能である。トーンカーブは、算出した濃淡値の画像全体の分布から、その画像に最適な形状を計算することも可能である。
【０３６９】
このような構成とすることにより、自然でかつ効果の高い階調変換を、よりシンプルな構成で実現することが可能となる。
【０３７０】
なお、本発明は、上述したデジタルビデオカメラ以外に、画像の輝度または色値（画素値）の階調を圧縮する装置（例えば、画像再生装置、画像記録装置、画像表示装置など）に適用することができる。
【０３７１】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０３７２】
図４０は、汎用のパーソナルコンピュータ９００の内部の構成例を示す図である。CPU（Central Processing Unit）９０１は、ROM（Read Only Memory）９０２に記憶されているプログラム、または記録部９０８からRAM（Random Access Memory）９０３にロードされたプログラムに従って各種の処理を実行する。RAM９０３にはまた、CPU９０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０３７３】
CPU９０１、ROM９０２、およびRAM９０３は、バス９０４を介して相互に接続されている。このバス９０４にはまた、入出力インタフェース９０５も接続されている。
【０３７４】
入出力インタフェース９０５には、ボタン、スイッチ、キーボードあるいはマウスなどで構成される入力部９０６、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などのディスプレイ、並びにスピーカなどで構成される出力部９０７、ハードディスクなどで構成される記録部９０８、およびモデムやターミナルアダプタなどで構成される通信部９０９が接続されている。通信部９０９は、インターネットを含むネットワークを介して通信処理を行う。
【０３７５】
入出力インタフェース９０５にはまた、必要に応じてドライブ９１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア９１１が適宜装着され、そこから読み出されたコンピュータプログラムが、記録部９０８にインストールされる。
【０３７６】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを記録する記録媒体は、図４０に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc-Read Only Memory）、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（MD(Mini-Disc)（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア９１１により構成されるだけでなく、装置本体にあらかじめ組み込まれた状態でユーザに提供される、プログラムが記録されているROM９０２または記録部９０８に含まれるハードディスクなどで構成される。
【０３７７】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３７８】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３７９】
【図１】従来のDSPの機能の構成の例を示すブロック図である。
【図２】本発明を適用したデジタルビデオカメラの一実施の形態を示すブロック図である。
【図３】図２のDSPブロックの機能の構成の例を示すブロック図である。
【図４】図３の階調変換部の機能の構成の例を示すブロック図である。
【図５】図４の非線形変換部の機能の構成の例を示すブロック図である。
【図６】図４のトーンカーブ生成部の機能の構成の例を示すブロック図である。
【図７】図６の輝度域算出部の機能の構成の例を示すブロック図である。
【図８】図６の平均レベル算出部の機能の構成の例を示すブロック図である。
【図９】図６の時間平滑化部の機能の構成の例を示すブロック図である。
【図１０】図６のスプライン発生部の機能の構成の例を示すブロック図である。
【図１１】図４の縮小画像生成部の機能の構成の例を示すブロック図である。
【図１２】図４の補間部の機能の構成の例を示すブロック図である。
【図１３】図４のコントラスト補正部の機能の構成の例を示すブロック図である。
【図１４】図４の非線形逆変換部の機能の構成の例を示すブロック図である。
【図１５】図２のDSPブロックにより実行される画像処理１を説明するためのフローチャートである。
【図１６】図１５のステップＳ４の階調変換処理１の詳細を説明するためのフローチャートである。
【図１７】図１５のステップＳ４の階調変換処理１の詳細を説明するためのフローチャートである。
【図１８】図１６のステップＳ２６のトーンカーブ算出のための画素処理の詳細を説明するためのフローチャートである。
【図１９】図１６のステップＳ２７の縮小画像生成のための画素処理の詳細を説明するためのフローチャートである。
【図２０】図１６のステップＳ２８の大局輝度算出処理の詳細を説明するためのフローチャートである。
【図２１】図４の補間部の処理を説明するための図である。
【図２２】図１６のステップＳ３０のコントラスト補正処理の詳細を説明するためのフローチャートである。
【図２３】ゲイン値g(p)と輝度値Lc(nl)(p)との関係を表すグラフである。
【図２４】図１７のステップＳ３６のトーンカーブとγ_comp算出処理の詳細を説明するためのフローチャートである。
【図２５】トーンカーブの例を示すグラフである。
【図２６】図１７のステップＳ３７の縮小画像生成処理の詳細を説明するためのフローチャートである。
【図２７】本発明を適用した階調変換部の他の実施の形態を示すブロック図である。
【図２８】本発明を適用したDSPブロックの他の実施の形態を示すブロック図である。
【図２９】図２８の階調変換部の機能の構成の例を示すブロック図である。
【図３０】本発明を適用したデジタルビデオカメラの一実施の形態を示すブロック図である。
【図３１】図３０のＤＳＰの機能の構成の例を示すブロック図である。
【図３２】図３１のＤＳＰにより実行される画像処理２を説明するためのフローチャートである。
【図３３】図３１のＤＳＰの階調変換部が有する機能を構成の例を示す機能ブロック図である。
【図３４】注目画素の周辺９画素について説明するための図である。
【図３５】図３３の階調補正部の構成の一例を示すブロック図である。
【図３６】図３３の階調補正部の構成の他の例を示すブロック図である。
【図３７】階調変換処理２について説明するためのフローチャートである。
【図３８】階調変換処理２について説明するためのフローチャートである。
【図３９】濃淡値算出処理について説明するためのフローチャートである。
【図４０】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０３８０】
７０１  デジタルビデオカメラ，  ７１１  DSPブロック，  ７３１  ホワイトバランス部，  ７３２  階調変換部，  ７３３  デモザイク部，  ７６１  濃淡値算出部，  ７６２  濃淡値階調変換部，  ７６３  モザイク画素値階調変換部，  ７７１  輝度算出部，  ７７２  非線形変換部，  ７８１  トーンカーブ算出部，  ７８２  トーンカーブメモリ，  ７８３  γ_compパラメータメモリ，  ７８４  大局輝度算出部，  ７８５  階調変換部，  ７８６  コントラスト補正部，  ７９１  縮小画像生成部，  ７９２  縮小画像メモリ，  ７９３  補間部，  ８０１，８０２  マッピング部，  ８１１  非線形変換部，  ８１２  階調補正部，  ８１３  非線形逆変換部
【図１】
2008205691.tif 000012
【図２】
2008205691.tif 000013
【図３】
2008205691.tif 000014
【図４】
2008205691.tif 000015
【図５】
2008205691.tif 000016
【図６】
2008205691.tif 000017
【図７】
2008205691.tif 000018
【図８】
2008205691.tif 000019
【図９】
2008205691.tif 000020
【図１０】
2008205691.tif 000021
【図１１】
2008205691.tif 000022
【図１２】
2008205691.tif 000023
【図１３】
2008205691.tif 000024
【図１４】
2008205691.tif 000025
【図１５】
2008205691.tif 000026
【図１６】
2008205691.tif 000027
【図１７】
2008205691.tif 000028
【図１８】
2008205691.tif 000029
【図１９】
2008205691.tif 000030
【図２０】
2008205691.tif 000031
【図２１】
2008205691.tif 000032
【図２２】
2008205691.tif 000033
【図２３】
2008205691.tif 000034
【図２４】
2008205691.tif 000035
【図２５】
2008205691.tif 000036
【図２６】
2008205691.tif 000037
【図２７】
2008205691.tif 000038
【図２８】
2008205691.tif 000039
【図２９】
2008205691.tif 000040
【図３０】
2008205691.tif 000041
【図３１】
2008205691.tif 000042
【図３２】
2008205691.tif 000043
【図３３】
2008205691.tif 000044
【図３４】
2008205691.tif 000045
【図３５】
2008205691.tif 000046
【図３６】
2008205691.tif 000047
【図３７】
2008205691.tif 000048
【図３８】
2008205691.tif 000049
【図３９】
2008205691.tif 000050
【図４０】
2008205691.tif 000051