(57)【特許請求の範囲】
【請求項１】
入力画像の輝度である入力輝度の階調を圧縮する画像処理装置において、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出する変換曲線算出手段と、
前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段と、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段と、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正するコントラスト補正手段と
を含む画像処理装置。
【請求項２】
前記変換曲線算出手段は、前記入力画像の画素数に占める第１の境界値以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値から、前記入力画像の画素数に占める第２の境界値以上の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値までの前記第１の輝度範囲が前記第３の輝度範囲に対応するように、前記変換曲線を算出する
請求項１に記載の画像処理装置。
【請求項３】
前記変換曲線算出手段は、階調が圧縮される前の輝度が前記平均輝度値となる付近において、前記変換曲線の傾きが緩やかになり、階調が圧縮される前の輝度が前記第１の境界値および前記第２の境界値となる付近において、前記変換曲線の傾きがほぼ１に近くなる単調増加する前記変換曲線を算出する
請求項２に記載の画像処理装置。
【請求項４】
前記平均輝度値は、前記入力画像内のユーザにより指定された領域の輝度の平均輝度値である
請求項２に記載の画像処理装置。
【請求項５】
現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段を
さらに含み、
前記変換曲線算出手段は、時間平滑化された前記平均輝度値、時間平滑化された前記第１の境界値、および、時間平滑化された前記第２の境界値に基づいて、前記変換曲線を算出する
請求項２に記載の画像処理装置。
【請求項６】
前記大局輝度算出手段は、
前記入力画像を縮小した縮小画像を生成する縮小画像生成手段と、
前記大局輝度画像が前記入力画像と同じ画素数になるように前記縮小画像を補間することにより前記大局輝度を算出する補間手段と
を含む請求項１に記載の画像処理装置。
【請求項７】
前記縮小画像生成手段は、前記入力画像を所定の数のブロックに分割し、それぞれの前記ブロックに含まれる画素の輝度の平均値であるブロック平均輝度値を前記ブロックの順番に配列することにより前記縮小画像を生成する
請求項６に記載の画像処理装置。
【請求項８】
前記補間手段は、１フレーム前の前記入力画像に対応する前記縮小画像を補間することにより前記大局輝度を算出する
請求項６に記載の画像処理装置。
【請求項９】
前記階調圧縮手段は、１フレーム前の前記入力画像の前記入力輝度の分布に基づく前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する
請求項１に記載の画像処理装置。
【請求項１０】
前記コントラスト補正手段は、階調が圧縮される前の輝度が前記平均輝度値となる付近における前記変換曲線の傾きに基づいて、前記階調圧縮入力画像のコントラストを補正する
請求項１に記載の画像処理装置。
【請求項１１】
前記コントラスト補正手段は、前記階調圧縮入力画像の所定の中間レベルの輝度値付近のコントラストを、前記階調圧縮入力画像が取りうる輝度の最小値および最大値付近のコントラストと比較して強調するように前記階調圧縮入力画像のコントラストを補正する
請求項１に記載の画像処理装置。
【請求項１２】
前記コントラスト補正手段は、前記階調圧縮入力画像の周波数成分のうち、階調が圧縮された前記大局輝度画像に含まれる周波数成分を除く周波数成分のコントラストを強調するように補正する
請求項１に記載の画像処理装置。
【請求項１３】
前記入力輝度を対数変換またはガンマ変換する非線形変換手段を
さらに含み、
前記変換曲線算出手段は、対数変換またはガンマ変換された前記入力輝度の分布に基づいて、前記変換曲線を算出し、
前記大局輝度算出部は、対数変換またはガンマ変換された前記入力輝度からなる前記入力画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出し、
前記階調圧縮手段は、対数変換またはガンマ変換された前記入力輝度の階調を圧縮し、
前記コントラスト補正手段は、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正する
請求項１に記載の画像処理装置。
【請求項１４】
入力画像の輝度である入力輝度の階調を圧縮する画像処理方法において、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、
前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正する
ステップを含む画像処理方法。
【請求項１５】
入力画像の輝度である入力輝度の階調を圧縮する画像処理であって、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、
前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正する
ステップを含む画像処理をコンピュータに実行させるプログラム。
【請求項１６】
入力画像の色成分の値である色値の階調を圧縮する画像処理装置において、
前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出する入力輝度算出手段と、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出する変換曲線算出手段と、
前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段と、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段と、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正するコントラスト補正手段と、
前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する階調変換手段と
を含む画像処理装置。
【請求項１７】
前記入力輝度を対数変換またはガンマ変換する第１の非線形変換手段と、
前記入力画像の前記色値を対数変換またはガンマ変換する第２の非線形変換手段と
をさらに含み、
前記変換曲線算出手段は、対数変換またはガンマ変換された前記入力輝度の分布に基づいて、前記変換曲線を算出し、
前記大局輝度算出部は、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出し、
前記階調圧縮手段は、対数変換またはガンマ変換された前記入力輝度の階調を圧縮し、
前記コントラスト補正手段は、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正し、
前記階調変換手段は、対数変換またはガンマ変換された前記色値からなる前記入力画像と、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する
請求項１６に記載の画像処理装置。
【請求項１８】
入力画像の色成分の値である色値の階調を圧縮する画像処理方法において、
前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出し、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、
前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正し、
前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する
ステップを含む画像処理方法。
【請求項１９】
入力画像の色成分の値である色値の階調を圧縮する画像処理であって、
前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出し、
前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、
前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、
前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、
階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正し、
前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する
ステップを含む画像処理をコンピュータに実行させるプログラム。
【請求項２０】
請求項１５または１９に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、記録媒体、並びに、プログラムに関し、画像のダイナミックレンジをより狭いダイナミックレンジに変換する場合に用いて好適な画像処理装置および方法、記録媒体、並びに、プログラムに関する。
【背景技術】
【０００２】
近年、画像センサの性能の向上により、ビデオカメラにより撮影できる画像のダイナミックレンジが広がってきている。しかし、それらの広ダイナミックレンジの画像の撮影に対応したビデオカメラにより撮影された画像のダイナミックレンジより、表示装置が表示可能なダイナミックレンジが狭い場合がある。そこで、画像のダイナミックレンジを狭めながら、かつ、画像のコントラストの低下を抑制する階調圧縮技術が提案されている（例えば、特許文献１または２参照）。
【０００３】
図１は、特許文献２に記載の発明において、画像の画素値の階調の圧縮を行う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)を、狭ダイナミックレンジ画像の画素値として後段に出力する。
【０００９】
【特許文献１】特開２００４−２２１６４４号公報
【特許文献２】特開２００４−２２１６４５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１および２に記載の発明では、階調圧縮に用いられるトーンカーブの形状が固定されているため、ダイナミックレンジが想定より広い画像データや、適切な露出で撮影されなかった画像データが入力された場合、適切な階調圧縮ができないときがある。
【００１１】
また、特許文献２に記載の発明では、対数変換部１１、トーンカーブ補正部１２、コントラスト補正部１５、ガンマ補正部１７、および、輝度域正規化部２０は、画素ごとに処理が完了するが、縮小画像生成部１３による縮小画像の生成、および、輝度域情報算出部１８による輝度域情報の算出は、画像内の全画素をスキャンしなければ完了しない。また、縮小画像の生成と輝度域情報の算出は順番に行う必要があり、並列して行うことができない。
【００１２】
従って、特許文献２に記載の発明では、同じフレーム内で生成または算出した縮小画像および輝度域情報を利用して階調変換する場合、縮小画像の生成が終わるまで、コントラスト補正部１５の処理を待機させ、輝度域情報の算出が終了するまで、輝度域正規化部２０の処理を待機させる必要があり、処理時間が長くなってしまう。また、１フレーム前の処理において生成または算出された縮小画像および輝度域情報を利用して、階調変換をするようにしても、縮小画像の生成が終了しないと、輝度域情報の算出ができないため、縮小画像の生成が終わるまで、コントラスト補正部１５の処理を待機させる必要があり、処理時間が長くなってしまう。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、画像のコントラストを損なわずに、各画像に応じた適切な輝度または色値の階調の圧縮をより高速に実行することができるようにするものである。
【課題を解決するための手段】
【００１４】
本発明の第１の側面の画像処理装置は、入力画像の輝度である入力輝度の階調を圧縮する画像処理装置であって、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出する変換曲線算出手段と、前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段と、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段と、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正するコントラスト補正手段とが設けられている。
【００１５】
前記変換曲線算出手段には、前記入力画像の画素数に占める第１の境界値以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値から、前記入力画像の画素数に占める第２の境界値以上の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値までの前記第１の輝度範囲が前記第３の輝度範囲に対応するように、前記変換曲線を算出させることができる。
【００１６】
前記変換曲線算出手段には、階調が圧縮される前の輝度が前記平均輝度値となる付近において、前記変換曲線の傾きが緩やかになり、階調が圧縮される前の輝度が前記第１の境界値および前記第２の境界値となる付近において、前記変換曲線の傾きがほぼ１に近くなる単調増加する前記変換曲線を算出させることができる。
【００１７】
前記平均輝度値は、前記入力画像内のユーザにより指定された領域の輝度の平均輝度値とすることができる。
【００１８】
現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段をさらに設け、前記変換曲線算出手段には、時間平滑化された前記平均輝度値、時間平滑化された前記第１の境界値、および、時間平滑化された前記第２の境界値に基づいて、前記変換曲線を算出させることができる。
【００１９】
前記大局輝度算出手段は、前記入力画像を縮小した縮小画像を生成する縮小画像生成手段と、前記大局輝度画像が前記入力画像と同じ画素数になるように前記縮小画像を補間することにより前記大局輝度を算出する補間手段とを備えるようにすることができる。
【００２０】
前記縮小画像生成手段には、前記入力画像を所定の数のブロックに分割し、それぞれの前記ブロックに含まれる画素の輝度の平均値であるブロック平均輝度値を前記ブロックの順番に配列することにより前記縮小画像を生成させることができる。
【００２１】
前記補間手段には、１フレーム前の前記入力画像に対応する前記縮小画像を補間することにより前記大局輝度を算出させることができる。
【００２２】
前記階調圧縮手段には、１フレーム前の前記入力画像の前記入力輝度の分布に基づく前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮させることができる。
【００２３】
前記コントラスト補正手段には、階調が圧縮される前の輝度が前記平均輝度値となる付近における前記変換曲線の傾きに基づいて、前記階調圧縮入力画像のコントラストを補正させることができる。
【００２４】
前記コントラスト補正手段には、前記階調圧縮入力画像の所定の中間レベルの輝度値付近のコントラストを、前記階調圧縮入力画像が取りうる輝度の最小値および最大値付近のコントラストと比較して強調するように前記階調圧縮入力画像のコントラストを補正させることができる。
【００２５】
前記コントラスト補正手段には、前記階調圧縮入力画像の周波数成分のうち、階調が圧縮された前記大局輝度画像に含まれる周波数成分を除く周波数成分のコントラストを強調するように補正させることができる。
【００２６】
前記入力輝度を対数変換またはガンマ変換する非線形変換手段をさらに設け、前記変換曲線算出手段には、対数変換またはガンマ変換された前記入力輝度の分布に基づいて、前記変換曲線を算出させ、前記大局輝度算出部には、対数変換またはガンマ変換された前記入力輝度からなる前記入力画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出させ、前記階調圧縮手段には、対数変換またはガンマ変換された前記入力輝度の階調を圧縮させ、前記コントラスト補正手段には、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正させるようにすることができる。
【００２７】
本発明の第１の側面の画像処理方法またはプログラムは、入力画像の輝度である入力輝度の階調を圧縮する画像処理方法、または、前記画像処理をコンピュータに実行させるプログラムであって、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正するステップを含む。
【００２８】
本発明の第２の側面の画像処理装置は、入力画像の色成分の値である色値の階調を圧縮する画像処理装置であって、前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出する入力輝度算出手段と、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出する変換曲線算出手段と、前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段と、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段と、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正するコントラスト補正手段と、前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する階調変換手段とが設けられている。
【００２９】
前記入力輝度を対数変換またはガンマ変換する第１の非線形変換手段と、前記入力画像の前記色値を対数変換またはガンマ変換する第２の非線形変換手段とをさらに設け、前記変換曲線算出手段には、対数変換またはガンマ変換された前記入力輝度の分布に基づいて、前記変換曲線を算出させ、前記大局輝度算出部には、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出させ、前記階調圧縮手段には、対数変換またはガンマ変換された前記入力輝度の階調を圧縮させ、前記コントラスト補正手段には、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正させ、前記階調変換手段には、対数変換またはガンマ変換された前記色値からなる前記入力画像と、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換させるようにすることができる。
【００３０】
本発明の第２の側面の画像処理方法またはプログラムは、入力画像の色成分の値である色値の階調を圧縮する画像処理方法、または、前記画像処理をコンピュータに実行させるプログラムであって、前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出し、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し、前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正し、前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換するステップを含む。
【００３１】
本発明の第１の側面においては、入力画像の輝度である入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線が算出され、前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度が算出され、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調が圧縮され、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストが補正される。
【００３２】
本発明の第２の側面においては、入力画像の各画素の輝度である入力輝度が前記入力画像の色成分の値である色値に基づいて算出され、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線が算出され、前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度が算出され、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調が圧縮され、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストが補正され、前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調が変換される。
【発明の効果】
【００３３】
以上のように、本発明の第１の側面または第２の側面によれば、画像の輝度または色値の階調を圧縮することができる。また、本発明の第１の側面または第２の側面によれば、画像のコントラストを損なわずに、各画像に応じた適切な輝度または色値の階調の圧縮をより高速に実行することができる。
【発明を実施するための最良の形態】
【００３４】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００３５】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００３６】
本発明の第１の側面の画像処理装置（例えば、図３の階調変換部１４３）は、入力画像の輝度である入力輝度の階調を圧縮する画像処理装置であって、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線（例えば、図２５のトーンカーブＣＬ）を算出する変換曲線算出手段（例えば、図４のトーンカーブ算出部１６３）と、前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段（例えば、図４の大局輝度算出部１６６）と、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段（例えば、図４の階調変換部１６７）と、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正するコントラスト補正手段（例えば、図４のコントラスト補正部１６８）とを含む。
【００３７】
本発明の第１の側面の画像処理装置においては、前記変換曲線算出手段は、前記入力画像の画素数に占める第１の境界値（例えば、裾野値Ldark(nl)）以下の輝度の画素数の比率がほぼ所定の第１の値となる前記第１の境界値から、前記入力画像の画素数に占める第２の境界値（例えば、裾野値Lbright(nl)）以上の輝度の画素数の比率がほぼ所定の第２の値となる前記第２の境界値までの前記第１の輝度範囲が前記第３の輝度範囲に対応するように、前記変換曲線を算出するようにすることができる。
【００３８】
本発明の第１の側面の画像処理装置においては、現在のフレームと１つ以上前のフレームとの間で、前記平均輝度値、前記第１の境界値、および、前記第２の境界値を時間平滑化する時間平滑化手段（例えば、図６の時間平滑化部２２３）をさらに含み、前記変換曲線算出手段は、時間平滑化された前記平均輝度値（例えば、平均レベルLaverage-ts(nl)）、時間平滑化された前記第１の境界値（例えば、裾野値Ldark-ts(nl)）、および、時間平滑化された前記第２の境界値（例えば、裾野値Lbright-ts(nl)）に基づいて、前記変換曲線を算出するようにすることができる。
【００３９】
本発明の第１の側面の画像処理装置においては、前記大局輝度算出手段は、前記入力画像を縮小した縮小画像を生成する縮小画像生成手段（例えば、図４の縮小画像生成部１８１）と、前記大局輝度画像が前記入力画像と同じ画素数になるように前記縮小画像を補間することにより前記大局輝度を算出する補間手段（例えば、図４の補間部１８３）を含むようにすることができる。
【００４０】
本発明の第１の側面の画像処理装置においては、前記入力輝度を対数変換またはガンマ変換する非線形変換手段（例えば、図４の非線形変換部１６２−４９をさらに含み、前記大局輝度算出部は、対数変換またはガンマ変換された前記入力輝度からなる前記入力画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出し、前記階調圧縮手段は、対数変換またはガンマ変換された前記入力輝度の階調を圧縮し、前記コントラスト補正手段は、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正するようにすることができる。
【００４１】
本発明の第１の側面の画像処理方法またはプログラムは、入力画像の輝度である入力輝度の階調を圧縮する画像処理方法、または、前記画像処理をコンピュータに実行させるプログラムであって、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し(例えば、図１７のステップＳ２６およびＳ３６）、前記入力画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し（例えば、図１６のステップＳ２７、Ｓ２８およびＳ３７）、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し（例えば、図１６のステップＳ２９）、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮入力画像のコントラストを補正する（例えば、図１６のステップＳ３０）ステップを含む。
【００４２】
本発明の第２の側面の画像処理装置（例えば、図３の階調変換部１４３）は、入力画像の色成分の値である色値の階調を圧縮する画像処理装置であって、前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出する入力輝度算出手段（例えば、図４の輝度算出部１６１）と、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線（例えば、図２５のトーンカーブＣＬ）を算出する変換曲線算出手段（例えば、図４のトーンカーブ算出部１６３）と、前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出する大局輝度算出手段（例えば、図４の大局輝度算出部１６６）と、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮する階調圧縮手段（例えば、図４の階調変換部１６７）と、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正するコントラスト補正手段（例えば、図４のコントラスト補正部１６８）と、前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する階調変換手段（例えば、図４の階調補正部１６９−１乃至１６９−３）とを含む。
【００４３】
本発明の第２の画像処理装置においては、前記入力輝度を対数変換またはガンマ変換する第１の非線形変換手段（例えば、図４の非線形変換部１６２−４）と、前記入力画像の前記色値を対数変換またはガンマ変換する第２の非線形変換手段（例えば、図４の非線形変換部１６２−１乃至１６２−３）とをさらに含み、前記変換曲線算出手段は、対数変換またはガンマ変換された前記入力輝度の分布に基づいて、前記変換曲線を算出し、前記大局輝度算出部は、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像の低周波成分からなる前記大局輝度画像の輝度である前記大局輝度を算出し、前記階調圧縮手段は、対数変換またはガンマ変換された前記入力輝度の階調を圧縮し、前記コントラスト補正手段は、対数変換またはガンマ変換されるとともに、階調が圧縮された前記入力輝度からなる前記階調圧縮入力画像のコントラストを補正し、前記階調変換手段は、対数変換またはガンマ変換された前記色値からなる前記入力画像と、対数変換またはガンマ変換された前記入力輝度からなる前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換するようにすることができる。
【００４４】
本発明の第２の側面の画像処理方法またはプログラムは、入力画像の色成分の値である色値の階調を圧縮する画像処理方法、または、前記画像処理をコンピュータに実行させるプログラムであって、前記入力画像の各画素の輝度である入力輝度を前記色値に基づいて算出し（例えば、図１６のステップＳ２４）、前記入力輝度の分布に基づいて、前記入力輝度の分布における低輝度側と高輝度側の所定の範囲を除く第１の輝度範囲が、変換後の輝度が取りうる第２の輝度範囲のうちの所定の第３の輝度範囲に対応し、前記入力輝度の平均値である平均輝度値が前記第２の輝度範囲のほぼ中間レベルの輝度値に対応するように、輝度の階調の圧縮に用いる変換曲線を算出し（例えば、図１７のステップＳ２６およびＳ３６）、前記入力輝度からなる輝度画像の低周波成分からなる大局輝度画像の輝度である大局輝度を算出し（例えば、図１６のステップＳ２７、Ｓ２８およびＳ３７）、前記変換曲線に基づいて、前記入力輝度の階調および前記大局輝度の階調を圧縮し（例えば、図１６のステップＳ２９）、階調が圧縮された前記入力輝度と階調が圧縮された前記大局輝度との差分値として算出されるコントラストに対して、階調の圧縮に適用された変換曲線の部分の傾きが緩やかなほど大きなゲイン値を乗じることによって、階調が圧縮された前記入力輝度からなる階調圧縮輝度画像のコントラストを補正し（例えば、図１６のステップＳ３０）、前記入力画像と前記輝度画像との差分である差分画像の各画素値に所定の係数を乗じ、さらに、コントラストが補正された前記階調圧縮輝度画像を加算することにより、前記入力画像の前記色値の階調を変換する（例えば、図１７のステップＳ３２）ステップを含む。
【００４５】
以下、図を参照して、本発明の実施の形態について説明する。
【００４６】
図２は、本発明を適用したデジタルビデオカメラの一実施の形態を示すブロック図である。デジタルビデオカメラ１０１は、レンズ１１１、絞り１１２、画像センサ（CDS）１１３、相関２重サンプリング回路（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１１６の図示せぬ内部のメモリに後続するフレームのモザイク画像が蓄積されている場合、後続フレームが存在すると判定し、処理はステップＳ１に戻る。
【０１３０】
ステップＳ１において、次のフレームのモザイク画像が読み込まれ、読み込まれたモザイク画像に対して、ステップＳ２以降の処理が行われる。
【０１３１】
その後、ステップＳ８において、後続するフレームが存在しないと判定されるまで、ステップＳ１乃至Ｓ８の処理が繰返し実行され、A/Dコンバータ１１５から供給されるモザイク画像に対して１フレームずつ順番に画像処理が行われる。
【０１３２】
ステップＳ８において、後続するフレームがないと判定された場合、画像処理は終了する。
【０１３３】
次に、図１６および図１７のフローチャートを参照して、図１５のステップＳ４の階調変換処理の詳細を説明する。
【０１３４】
ステップＳ２１において、階調変換部１４３は、縮小画像、トーンカーブ、γ_compをメモリから読み込む。具体的には、階調変換部１４３の補間部１８３の近傍選択部３７１（図１２）は、１つ前のフレームの階調変換処理において生成された縮小画像を縮小画像メモリ１８２から読み込む。マッピング部１９１−１，１９１−２は、１つ前のフレームの階調変換処理において算出されたトーンカーブを表すルックアップテーブルをトーンカーブメモリ１６４から読み込む。コントラスト補正部１６８のゲイン値算出部３９１（図１３）は、１つ前のフレームの階調変換処理において算出されたγ_compパラメータをγ_compパラメータメモリ１６５から読み込む。
【０１３５】
ステップＳ２２において、トーンカーブ算出部１６３は、noiseLevel、saturationLevelを読み込む。具体的には、トーンカーブ算出部１６３の輝度域算出部２２１の飽和画素除外部２４２（図７）、および、平均レベル算出部２２２の飽和画素除外部２８１（図８）は、noiseLevel(nl)およびsaturationLevel(nl)を、DSP１１６の図示せぬ内部のメモリから読み込む。
【０１３６】
ステップＳ２３において、階調変換部１４３は、次に階調変換する画素のＲＧＢ値を読み込む。具体的には、階調変換部１４３の輝度算出部１６１および非線形変換部１６２−１乃至１６２−３は、次に階調変換する画素位置ｐの画素値Rw(p)，Gw(p)およびBw(p)をDSP１１６の図示せぬ内部のメモリから読み込む。
【０１３７】
ステップＳ２４において、輝度算出部１６１は、輝度値を算出する。具体的には、輝度算出部１６１は、画素位置ｐに対応する輝度値L(p)を、例えば、以下の式（１）により算出する。
【０１３８】
【数１】
0004687320.tif 000002
【０１３９】
なお、式（１）の係数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は自然数）を算出する。
【０１８６】
【数２】
0004687320.tif 000003
【０１８７】
水平係数算出部３７２は、算出した補間係数kx[i]を積和部３７４に出力する。
【０１８８】
ステップＳ９４において、垂直係数算出部３７３は、垂直方向の３次補間係数を算出する。具体的には、垂直係数算出部３７３は、垂直方向の位置ずれ量dyに基づいて、以下の式（１１）および（１２）により、垂直方向の３次補間係数ky[j] （1≦j≦4，ただし、jは自然数）を算出する。
【０１８９】
【数３】
0004687320.tif 000004
【０１９０】
垂直係数算出部３７３は、算出した補間係数ky[j]を積和部３７４に出力する。
【０１９１】
なお、上述した式（９）乃至（１２）は、３次補間によく用いられる式の一例であり、十分に滑らかな補間が得られる範囲で、補間係数ｋx[i]，ｋy[j]を他の計算式に基づいて算出するようにしてもよい。
【０１９２】
ステップＳ９５において、積和部３７４は、大局輝度値を算出する。具体的には、積和部３７４は、近傍画素の画素値a[i][j]、水平方向の補間係数kx[i]、および、垂直方向の補間係数ky[j]を、以下の式（１３）により積和計算することにより、画素位置ｐの大局輝度値Ll(nl) (p)を算出する。
【０１９３】
【数４】
0004687320.tif 000005
【０１９４】
ステップＳ９６において、積和部３７４は、マッピング部１９１−２に、大局輝度値Ll(nl)(p)を出力して、大局輝度値算出処理は終了する。
【０１９５】
なお、大局輝度値Ll(nl) (p)からなる大局輝度画像は、横wr×縦hr画素の縮小画像を３次補間により元のサイズ（画素数）に拡大した画像であり、元の画像（輝度値L(nl) (p)からなる画像）のごく低周波域の成分だけを抽出した画像となる。
【０１９６】
次に、図２２のフローチャートを参照して、図１６のステップＳ３０のコントラスト補正処理を説明する。
【０１９７】
ステップＳ１１１において、コントラスト補正部１６８は、次に処理する画素の階調圧縮された輝度値および大局輝度値を読み込む。具体的には、コントラスト補正部１６８のゲイン値算出部３９１およびコントラスト強調部３９２（図１３）は、上述した図１６のステップＳ２９においてトーンカーブにより階調が圧縮された輝度値Lc(nl)(p)を、マッピング部１９１−１から読み込む。また、コントラスト強調部３９２は、上述した図１６のステップＳ２９においてトーンカーブにより階調が圧縮された大局輝度値Lcl(nl)(p)をマッピング部１９１−２から読み込む。
【０１９８】
ステップＳ１１２において、ゲイン値算出部３９１は、階調圧縮された輝度値とγ_compパラメータに基づいて、ゲイン値を算出する。具体的には、ゲイン値算出部３９１は、トーンカーブにより階調が圧縮された輝度値Lc(nl)(p)とγ_compパラメータに基づいて、以下の式（１４）および（１５）により、ゲイン値g(p)を算出する。
【０１９９】
【数５】
0004687320.tif 000006
なお、式（１５）に出てくる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制御系が主要な被写体と判断した被写体領域の明るさを計測して、計測された明るさに基づく輝度値を平均レベルとするようにしてもよい。さらに、ユーザに画像内の所望の領域を指定させ、指定された領域に重点をおいた平均レベルを算出することにより、ユーザが所望するものにより近いトーンカーブを生成するようにすることも可能である。
【０２５６】
なお、本発明は、上述したデジタルビデオカメラ以外に、画像の輝度または色値（画素値）の階調を圧縮する装置（例えば、画像再生装置、画像記録装置、画像表示装置など）に適用することができる。
【０２５７】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０２５８】
図３０は、汎用のパーソナルコンピュータ９００の内部の構成例を示す図である。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ブロック，  １１９  LCD，  １４１  デモザイク部，  １４２  ホワイトバランス部，  １４３  階調変換部，  １４４  ガンマ補正部，  １４５  YC変換部，  １６１  輝度算出部，  １６２  非線形変換部，  １６３  トーンカーブ算出部，  １６４  トーンカーブメモリ，  １６５  γ_compパラメータメモリ，  １６６  大局輝度算出部，  １６７  階調変換部，  １６８  コントラスト補正部，  １６９  階調補正部，  １７０  非線形逆変換部，  １８１  縮小画像生成部，  １８２  縮小画像メモリ，  １８３  補間部，  １９１  マッピング部，  ２２１  輝度域算出部，  ２２２  平均レベル算出部，  ２２３  時間平滑化部  ２２４  スプライン発生部，  ２４１  間引き部，  ２４２  飽和画素除外部，  ２４３，２４４  ソーティング部，  ２８１  飽和画素除外部，  ２８２  平均値算出部，  ３３１  コントロールポイント設定部，  ３３２  曲線描画部，  ３３３  γ算出部，  ３５１  ソート部，  ３５２  平均値算出部，  ３７１  近傍選択部，  ３７２  水平係数算出部，  ３７３  垂直係数算出部，  ３７４  積和部，  ３９１  ゲイン値算出部，  ３９２  コントラスト強調部
【図１】
0004687320.tif 000007
【図２】
0004687320.tif 000008
【図３】
0004687320.tif 000009
【図４】
0004687320.tif 000010
【図５】
0004687320.tif 000011
【図６】
0004687320.tif 000012
【図７】
0004687320.tif 000013
【図８】
0004687320.tif 000014
【図９】
0004687320.tif 000015
【図１０】
0004687320.tif 000016
【図１１】
0004687320.tif 000017
【図１２】
0004687320.tif 000018
【図１３】
0004687320.tif 000019
【図１４】
0004687320.tif 000020
【図１５】
0004687320.tif 000021
【図１６】
0004687320.tif 000022
【図１７】
0004687320.tif 000023
【図１８】
0004687320.tif 000024
【図１９】
0004687320.tif 000025
【図２０】
0004687320.tif 000026
【図２１】
0004687320.tif 000027
【図２２】
0004687320.tif 000028
【図２３】
0004687320.tif 000029
【図２４】
0004687320.tif 000030
【図２５】
0004687320.tif 000031
【図２６】
0004687320.tif 000032
【図２７】
0004687320.tif 000033
【図２８】
0004687320.tif 000034
【図２９】
0004687320.tif 000035
【図３０】
0004687320.tif 000036