(57)【特許請求の範囲】
【請求項１】
鮮明化処理を行った画像と黒つぶれ処理を行った画像とを合成する画像処理であって、前記黒つぶれ処理は、入力画像のＹプレーン（輝度プレーン）メモリ内の各ピクセルの輝度にガウシアンBlur処理を行うことで輝度がぼけたBlur値を求め、このBlur値を正規化して0〜1.0の値をとる分布情報とし、更に正規化した値0〜1.0の間で閾値を設定し、この閾値よりも大きい値のピクセルについては全て1.0とし、閾値よりも小さい値の暗部のピクセルについては最も暗いピクセルの輝度倍率（ｎ）を決め、その逆数（1/ｎ）を分布情報の最低値とするように分布情報を補正し、補正した暗部の輝度分布情報（1/ｎ〜1.0）を分母として入力画像の輝度を除算することを特徴とする画像処理方法。
【請求項２】
請求項１に記載の画像処置方法において、前記鮮明化処理は、取り込んだ画像データをピクセル単位で処理するにあたり、画像走査の走査位置となる注目ピクセルの周囲にｎ個（ｎは整数）の参照ピクセルを設定し、注目ピクセルのピクセル値（輝度）と各参照ピクセルのピクセル値（輝度）を順次比較し、注目ピクセル値以下のピクセル値であった参照ピクセルの数をカウントし、これと並行して各参照ピクセルのヒストグラム値を＋１して予め設定した傾き制限値と比較し、参照ピクセル値が注目ピクセル値以下である条件とピクセルのヒストグラム値が傾き制限値以下である条件の両方の条件を満たす参照ピクセルの数をカウントすることで双方真のカウント値を求め、この双方真のカウント値を比例按分して出力することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、極端にコントラストが低い部分が混在する画像を見やすい画面に変換する鮮明化処理を行った画像と画像の黒つぶれの修正処理を行った画像とを合成する画像処理方法に関する。
【背景技術】
【０００２】
室内の窓など同一画面内に極端に明るい部分と暗い部分が混在する画面や水中・霧など極端にコントラストが低い部分が混在する画像を見やすい画面に変換する鮮明化処理と、シャッター速度が１/３０秒以上長くできないビデオカメラでの夜間撮影や、自動露出機能によって逆光時に露出やゲイン・絞りが制限されるときに起きる黒つぶれ現象を処理する方法が従来から知られている。
【０００３】
従来の鮮明化処理としては、特許文献１〜５がある。特許文献１には、光学像を光電変換して電気信号を出力する撮像素子と、該撮像素子から出力された電気信号を処理して映像信号を生成する信号処理手段と、該信号処理手段から出力された映像信号からヒストグラムを生成するヒストグラム回路と、該ヒストグラム回路によって検出されたヒストグラムを用いて露光制御を行う露光制御手段とを有する撮像装置が開示されている。
【０００４】
特許文献２には、原稿からの光を読取って画像データを生成する工程と、前記画像データから濃度分布のヒストグラムを作成する工程と、前記画像データの全データ数に対する濃度分布の明暗両端寄りのデータ数の割合に基づいて濃度補正曲線を生成する工程と、前記濃度補正曲線で画像データの濃度補正を行う工程とを有する画像処理方法が開示されている。
【０００５】
特許文献３には、被写体を撮像し、撮像画像の画像データを取得する撮像手段と、その撮像手段により取得された画像データからなる撮像画像の所定の画素部分であって輝度レベルが所定の範囲内にある画素からなる画素部分に対し、当該画素部分における各画素の輝度値を、各画素間の相対的な輝度の上下関係を維持したまま各画素間の輝度間隔を増大させるよう変換する階調補正を行う階調補正手段とを備えた撮像装置が開示されている。
【０００６】
特許文献４、５は本発明者の提案であり、特許文献４の内容は、撮影した画像からピクセル単位の画像データを１パスで取り込み、取り込んだ画像データをピクセル単位で特定の色空間に分解した後に輝度のヒストグラムを生成し、この画像輝度情報を所定の読み取りパターンで読み出し、前記読み取りパターンの中の特定位置（中心）のピクセルを除いた平均ヒストグラムを基本として前記読み取りパターンの特定位置のピクセルの輝度を設定する方法である。
【０００７】
特許文献５には、入力信号を局所的に分割してトーンマップを求め、このトーンマップを補正することで入力信号のコントラストを改善するにあたり、輝度変化が少ない領域についてはトーンマップの入力輝度信号を出力輝度信号に変換する際に勾配制限を設けて出力輝度信号が一定以上に変化しないようにして輝度変化を抑制し、更に前記勾配制限によって低下した領域全体の輝度を全体的に調整する内容が開示されている。
【０００８】
従来の黒つぶれの修正処理としては、特許文献６〜９がある。特許文献６には、逆光などの輝度差が大きい状況において撮影した画像を復元する方法が記載されている。具体的には、段落（００３８）、（００３９）に記載されるように、ヒストグラムを作成し、輝度値ゼロにおける度数が閾値よりも大きい場合には黒つぶれになっていると判断し、その部分の明るさを補正することが記載されている。
【０００９】
特許文献７には、画像の暗部と明部の輝度差が大きくなった場合に通常撮像モードから合成撮像モードに切換え、輝度差を低減する黒つぶれ補正を行うため、長時間露光画像信号及び短時間露光画像信号をそれぞれ自動露光制御することが記載されている。
【００１０】
特許文献８には、露光時間が長い長時間露光画像信号と露光時間が短い短時間露光画像を合成し、合成画像信号に輝度積算値とヒストグラムを生成し、輝度ヒストグラムから合成画像信号における黒つぶれを検出し、検出結果に基づいて目標輝度積算値を設定し、該目標輝度積算値を用いて、上記撮像部の露光補正制御を行うことが記載されている。
【００１１】
特許文献９には、バッテリー残容量を取得可能な撮像装置が開示されている。この撮像装置はバッテリーの残容量が少ない時またはバッテリーが故障している時にバッテリーセグメントを表示する判定手段を備え、この判定手段は黒つぶれ又は白つぶれしている画素が、所定の値を超えている時、ヒストグラムを表示するように判定を行うことが記載されている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００２−１４２１５０号公報
【特許文献２】特開２００３−０５１９４４号公報
【特許文献３】特開２００７−１２４０８７号公報
【特許文献４】特許第４３８６９５９号公報
【特許文献５】特許第６１２６０５４号公報
【特許文献６】特開２０１１−２２３１７３号公報
【特許文献７】特開２００２−０８４４４９号公報
【特許文献８】特開２００８−２２８０５８号公報
【特許文献９】特開２０１６−０９２７９８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
上述した特許文献１〜３に開示される処理は処理時間がかかる。特許文献４，５に開示される方法によれば処理時間を短縮し、動画のリアルタイム処理が可能になる。しかしながら、特許文献４に記載した方法でも、部分的に明るさの変動が大きすぎる箇所が生じたり、ノイズを除去できない場合が生じる。
【００１４】
特許文献５に開示した内容は、AHE（Adaptive Histogram Equalization）やCLAHE（Constract Limited AHE）といった取り込んだ画像データを所定のパターンで読み出したり、取り込んだ画像を複数のブロックに分割し、それぞれの小領域のヒストグラムを生成し、その領域ごとにトーンマップを作成している。
【００１５】
このように、小領域ごとにトーンマップを作成すると、小領域の境界線がぼんやりと見えてしまうことがある。
更に、AHEやCLAHEは画像をスキャンして領域ごとにヒストグラムを作成してからトーンマップを作成するためリアルタイム処理を行うには多くの高速メモリを必要とすること、および画素単位で独立した処理ができないことから、GPUやFGPAには不向きと言える。
【００１６】
特許文献６〜９では、逆光や陰影補正（黒つぶれ補正）を行うにあたり、輝度のヒストグラムを作成し、このヒストグラムの平坦化を行っている。ヒストグラムの平坦化を行うには、画面全体のヒストグラムをカウントする必要があり、このため大きなメモリが必要になり処置時間も長くなってしまう。
【００１７】
更に、鮮明化処理では暗い部分でコントラストが過多になる問題点があり、黒つぶれ補正処理では明るい部分でのコントラストが不足しがちになり、これらを同時に満足する処理方法は何れの先行技術にも提案されていない。
【課題を解決するための手段】
【００１８】
上記課題を解決すべく本発明に係る画像処理方法は、鮮明化処理を行った画像と黒つぶれ処理を行った画像とを合成する画像処理であって、前記黒つぶれ処理において使用したフラットフレームの原理を利用して画像の暗い部分は黒つぶれ処理の比率を高め、明るい部分は鮮明化処理の比率を高めるようにした。
【００１９】
前記鮮明化処理の具体例は、取り込んだ画像データをピクセル単位で処理するにあたり、画像走査の走査位置となる注目ピクセルの周囲にｎ個（ｎは整数）の参照ピクセルを設定し、注目ピクセルのピクセル値（輝度）と各参照ピクセルのピクセル値（輝度）を順次比較し、注目ピクセル値以下のピクセル値であった参照ピクセルの数をカウントし、これと並行して各参照ピクセルのヒストグラム値を＋１して予め設定した傾き制限値と比較し、参照ピクセル値が注目ピクセル値以下である条件とピクセルのヒストグラム値が傾き制限値以下である条件の両方の条件を満たす参照ピクセルの数をカウントすることで双方真のカウント値を求め、この双方真のカウント値を比例按分して出力する。
【００２０】
前記黒つぶれ処理の具体例は、入力画像のＹプレーン（輝度プレーン）メモリ内の各ピクセルの輝度にガウシアンBlur処理を行うことで輝度がぼけたBlur値を求め、このBlur値を正規化して0〜1.0の値をとる分布情報とし、更に正規化した値0〜1.0の間で閾値を設定し、この閾値よりも大きい値のピクセルについては全て1.0とし、閾値よりも小さい値の暗部のピクセルについては最も暗いピクセルの輝度倍率（ｎ）を決め、その逆数（1/ｎ）を分布情報の最低値とするように分布情報を補正し、補正した暗部の輝度分布情報（1/ｎ〜1.0）を分母として入力画像の輝度を除算する。
【発明の効果】
【００２１】
本発明によれば、鮮明化処理及び黒つぶれ補正処理でも解消せずに残る問題点を同時に解消することができる。
【００２２】
本発明は取り込んだ画像データを小領域ごとに分けることなくピクセル（画素）単位で独立して処理することを前提とする。即ち、各領域ごとのヒストグラムも生成しないので、処理速度が大幅にアップし、リアルタイムで修正画像を表示できる。
【００２３】
従来のように、実際に多くのメモリを使って領域別のヒストグラムとトーンマップを作成するのではなく、ロジックを実行することでヒストグラムとトーンマップを作成したのと同じ結果が得られる。
【００２４】
ヒストグラムやトーンマップ用のメモリは不要となり、ラインバッファのみで実装が可能となる。遅延はラインバッファ分のみで、ヒストグラムの取得など全画面の統計を必要としないため、フレーム単位の遅れが生じない。
【００２５】
ロジック自体がシンプルなため小規模ＦＰＧＡや他の映像回路の空きエリアに実装可能で、またヒストグラム配列など画素深度（ビット数）に比例するロジックやメモリがないため３６ビットや４８ビットといった高いビット深度でも回路規模は殆ど変わらない。
【図面の簡単な説明】
【００２６】
【図１】本願発明にかかるロジカルな画像処理方法の基本を説明したブロック図
【図２】（ａ）は黒つぶれ処理における水平Blur処理について説明した図、（ｂ）は垂直Blur処理について説明した図
【図３】鮮明化処理の基本を説明した図
【図４】図３に対応する参照ピクセルのヒストグラムを平均化した仮想トーンマップ
【図５】鮮明化処理の実装例を示す図
【図６】図５対応する仮想トーンマップ
【図７】鮮明化処理の別実装例を示す図
【図８】図７に対応する仮想トーンマップ
【図９】鮮明化処理の別実装例を示す図
【図１０】図９に対応する仮想トーンマップ
【図１１】鮮明化処理の別実装例を示す図
【図１２】図１１に対応する仮想トーンマップ
【図１３】鮮明化処理の別実装例を示す図
【図１４】図１３に対応する仮想トーンマップ
【図１５】鮮明化処理の別実装例を示す図
【図１６】図１５に対応する仮想トーンマップ
【図１７】（ａ）は元画像、（ｂ）は黒つぶれ処理後の画像、（ｃ）は鮮明化処理後の画像、（ｄ）は画像合成後（本発明）の画像
【発明を実施するための形態】
【００２７】
図１に示すように、入力画像は黒つぶれ処理（FC：フラットコレクタ）と鮮明化処理とを同時並行して行い、黒つぶれ処理後の画像と鮮明化処理後の画像を黒つぶれ処理で用いたフラットフレームの原理を利用して合成して出力する。
【００２８】
黒つぶれ処理では、図１に示すように、入力画像をカラー分解し、色味（ＣｂＣｒ）、輝度（Ｙ）及び３原色（ＲＧＢ）を抽出する。本発明では、輝度（Ｙ）に対して、Blur処理及びフラット処理を行い、色味（ＣｂＣｒ）及び３原色（ＲＧＢ）とカラー合成を行って出力画像とする。尚、本発明ではフラットフレーム（輝度が均一化された画像）を作成するのではなく、フラットフレームの原理を利用するだけである。
【００２９】
前記Blur処理では輝度の大まかな変動画像つまり輝度がぼけた画像を作成する。本実施例ではガウス関数を用いて画像をぼかすガウシアンブラー（Gaussian Blur）処理を行った。
【００３０】
ガウシアンブラー（Gaussian Blur）処理は、例えば、図２（ａ）に示す水平Blur処理を行い、この水平Blur処理済みのラインバッファに対して図２（ｂ）に示す垂直Blur処理を行ってブラープレーンを作成する。
【００３１】
上記水平Blur処理の際に、入力画像の最低値の過去４フレームを平均して入力映像最低値（Ｙmin）を求める。
またガウシアンブラー（Gaussian Blur）処理を行いながら、Blur画像の最小値（Bmin）と最大値（Bmax）を求める。
【００３２】
本発明のロジックを実装するにあたっては、半径Ｒのガウシアンテーブルを用いガウス計算は行わない。また、半径Ｒは最大３０ピクセルとして、ラインバッファは６２本（３０×２+中心１+水平計算用１）用いる。
【００３３】
図示例では、カーネルサイズが６１×６１になるので、処理面積を減らすためにガウシアンブラー（Gaussian Blur）処理を水平Blurと垂直Blurに分けたが、分けずに単純にカーネルフィルタでもよい。
【００３４】
上記のガウシアンブラー（Gaussian Blur）処理によってBlurプレーンを作成したら、フラットフレームを生成する。Blurプレーンと入力映像最低値（Ｙmin）から生成する。尚、本発明では実際にフラットフレームを作成するのではなく、フラットフレームの原理を利用するだけであるのは前記した通りである。
【００３５】
フラットフレームの生成では、Blurプレーンを正規化して0〜1.0の値をとる分布情報とし、更に正規化した値0〜1.0の間で閾値を設定し、この閾値よりも大きい値のピクセルについては全て1.0とし、閾値よりも小さい値の暗部のピクセルについては最も暗いピクセルの輝度倍率（ｎ）を決め、その逆数（1/ｎ）を分布情報の最低値とするように分布情報を修正する。
【００３６】
例えば、閾値として0.5を設定したとすると、正規化値0〜1.0のうち、0〜0.5までが0〜1.0となり0.5以上は全て1.0となる。
このような補正を行うことで、入力画像で0.5以上の輝度があるピクセル（画素）は分布情報では1.0となり、後の処理（輝度分布情報を分母として入力画像を除算）で元の画像から変化しない。一方、暗い部分は分母が徐々に小さくなるため元の画像が暗いほど倍率が高くなるように暗部は補正される。
【００３７】
フラットフレーム生成に続いてフラット処理を行う。このフラット処理では、Blurプレーンと前記入力映像最低値（Ｙmin）から現フレームの処理行う。即ち、入力画像の輝度（Ｙ）及び３原色（ＲＧＢ）をBlurプレーンで割り算する処理である。
【００３８】
上記において注目ピクセルの垂直Blurの値が確定した時点で、Blurプレーンの作成から分布情報の取得と補正までの処理が可能となるので、フレームバッファを使わずラインバッファ分の遅延のみでリアルタイム処理が可能である。
【００３９】
フラット処理には、ノーマル処理とカラーバースト処理があり、ノーマル処理では輝度（Ｙ）のみを処理して、出力前に色味（ＣｂＣｒ）と合成し、カラーバースト処理では輝度（Ｙ）の代わりに３原色（ＲＧＢ）プレーンを対象に同じ計算を行う。
【００４０】
フラット処理の一般計算式は以下の通りである。
出力画像F（x,y）=入力画像Y(x,y)＊256／フラットフレームBlur(x,y)
256はビット深度が8bitの場合
【００４１】
上記の式にBlurプレーン補正（分布情報補正）の式を適用すると出力画像は以下の式になる。
【数１】
0006893068.tif 000002
【００４２】
次に鮮明化処理を図３以降に基づいて説明する。図３においてＰ０は注目ピクセルで、この注目ピクセルＰ０の明るさ（輝度）を調整する。また、図４は図３の方法で処理する際の参照ピクセル（図３では、P１〜P８の8個）から求められる実行結果を参照ピクセルが持ち得る全ての明るさでグラフ化した仮想トーンマップである。
本発明は注目ピクセルと参照ピクセルから注目ピクセルに対する唯一１つの変換結果を得るものでありトーンマップを出力するものではない。
【００４３】
処理の手順は、先ず注目ピクセルＰ０とその周囲の参照ピクセルＰ１〜Ｐ８の輝度を比較し、注目ピクセルＰ０の輝度より小さな輝度の参照ピクセルの数をカウントし、このカウント値に応じて注目ピクセルＰ０の輝度を所定のアルゴリズムに従って修正する。
【００４４】
例えば注目ピクセルＰ０の輝度より小さな輝度の参照ピクセルの数が１個で、Ｐ０の輝度より大きな輝度の参照ピクセルの数が７個の場合には、参照ピクセルの値を出力可能な最大輝度を１として1/8の輝度に修正する。尚、修正アルゴリズムはこれに限らない。
【００４５】
以上の操作をFPGAやCPUに実装する場合は注目ピクセルを１個ずつ行方向に移動させ、この処理を各行ごとに並行処理することで、全てのピクセルの輝度を修正し、明度の平滑化を行う。
またGPUに実装する場合はこれらの操作がピクセル毎に独立しているため複数のコアで同時に並列処理を行うことで全てのピクセルの輝度を修正し、明度の平滑化を行う。
【００４６】
一方、図４に示す仮想トーンマップは実際にアルゴリズム上生成されるわけでなく、すべての入力輝度に対してロジックの実行結果を分かりやすく示したものである。
【００４７】
上記実装例には改良の余地が残されている。具体的には図２の仮想トーンマップには、入力に対して出力が急激に大きくなる箇所、具体的には４５°以上の傾きになる箇所が３箇所存在する。この箇所はノイズなどのように明るさが突出して大きくなる箇所である。
【００４８】
図５は上記を改良した実装例を示す図、図６は図５に対応する仮想トーンマップであり、図６において点線は図４のロジックを実行した場合の仮想トーンマップである。
【００４９】
このような明るさが突出した部分をなくすため、参照ピクセルＰ１からＰ８まで順にピクセル値（輝度）を注目ピクセルＰ０のピクセル値と比較し、注目ピクセルＰ０のピクセル値以下かどうかの判断を行う。
【００５０】
これと並行して、参照ピクセルのヒストグラム値を＋１して、傾き制限値（４５°）と比較し、傾き制限値以下かどうかの判断を行う。
【００５１】
そして、前項２つの判断が両方成り立つ参照ピクセル数を双方真のカウント値としてカウントし、この双方真のカウント値に基づいて注目ピクセルの明るさを出力する。
上記の処理により、図６の実線で示すように、明るさが突出して変化する部分のない見やすい画像が得られる。
【００５２】
注目ピクセル値以下のピクセル値であり、かつ各参照ピクセルのヒストグラム値を＋１して予め設定した傾き制限値と比較してこの傾き制限値以下であった参照ピクセルの数を双方真のカウント値としてカウントすることで傾き制限を考慮した
一方、この状態では画像全体が暗くなることがある。これを是正する構成を図７と図８の仮想トーンマップに示す。
【００５３】
図７に示す実装例では、注目ピクセルＰ０のピクセル値以下であること及び傾き制限値以下であることの両方の条件を満たす参照ピクセル数を双方真のカウント値とし、更に傾き制限値よりも大きいヒストグラムの参照ピクセル数（非カウント値）をカウントし、輝度のオフセット値を０〜ｎの値を持つ外部パラメータとして設定し、前記双方真のカウント値に（非カウント値×オフセット値／ｎ）を加えて出力する。
ここで、オフセット値は傾き制限によって減った終点値の明るさ（ａ+ｂ）の何割を持ち上げるかで決定する。
出力＝双方真のカウント値＋（非カウント値×オフセット値／ｎ）
（ｎ：参照ピクセル数、例えば１２８または２５６）
（オフセット値は0〜n）
【００５４】
上記によって、図８に示すように、画像の過疎トーンマップ特性には変化がないが画像全体がオフセット分だけ明るくなる。
【００５５】
図９は前記したオフセット量を領域ごとに自動計算する実装例を示した例であり、この実装例では、読みだした参照ピクセル値と注目ピクセル値を比較し、参照ピクセルのヒストグラム値を＋１して予め設定した傾き制限値と比較し、参照ピクセルのヒストグラム値が傾き制限値より大なら非カウント値としてカウントする。
【００５６】
上記と並行して予め設定した傾き制限値以下であった参照ピクセル値を単純に加算し、参照ピクセル数で割って平均値を算出し、これをピクセルの最大輝度（8ビットなら256）で割った値を0~nに比例按分してオフセット値とする。即ち、参照ピクセルの平均輝度をそのままオフセット値とすることで、注目ピクセルＰ０の輝度を周辺の輝度にマッチさせることができる。
【００５７】
そして、以下に示すように双方真のカウント値に（非カウント値×オフセット値／ｎ）を加えて出力する。
出力＝双方真のカウント値＋（非カウント値×オフセット値／ｎ）
【００５８】
図１０は上記の処理による仮想トーンマップであり、この実装例では、参照ピクセルの平均輝度をそのままオフセット値とすることで、周辺の明るさにマッチしたトーンマップを自動生成できる。
【００５９】
上述した画像処理により、周囲に対し極端に明るさが突出した部分がなくなり且つ画像全体が暗くなることもなくなったが、画像全体のコントラストが不足する場合がある。これを解消する実装例を図１１に示す。
【００６０】
この実装例では、注目ピクセルＰ０のピクセル値以下であること及び傾き制限値以下であることの両方の条件を満たす参照ピクセル数を双方真のカウント値とし、更に傾き制限値よりも大きいヒストグラムの参照ピクセル数（非カウント値）をカウントする。
【００６１】
そして、コントラストの強度値を０〜ｎの値を持つ外部パラメータとして設定し、前記双方真のカウント値に｛ｎ／（ｎ−非カウント値×強度値／ｎ）｝を掛け合わせることで、注目ピクセルＰ０の輝度が出力される。
出力＝双方真のカウント値×ｎ／（ｎ−非カウント値×強度値／ｎ）
（ｎ：参照ピクセル数、例えば１２８または２５６）
（強度値は0〜n）
【００６２】
図１２は上記処理によって得られた画像の仮想トーンマップであり、上述した実装例では傾き制限で減った終点値（最大輝度）をオフセットによって均一に引き上げる処理であったが、この実装例では掛け合わせる処理を行うため、傾きも変化している。
【００６３】
図１３はオフセット機能とコントラス機能を同時に発揮する実装例を示す。この実装例では、注目ピクセルＰ０のピクセル値以下であること及び傾き制限値以下であることの両方の条件を満たす参照ピクセル数を双方真のカウント値とし、上記と並行して予め設定した傾き制限値以下であった参照ピクセル値を単純に加算し、参照ピクセル数で割って平均値を算出しこれをオフセット値とする。
【００６４】
そして、上記双方真のカウント値に｛ｎ／（ｎ−非カウント値×強度値／ｎ）｝を掛け合わせ、更に｛非カウント値×（ｎ−強度値）／ｎ×オフセット値／ｎ｝を加えて出力する。即ち、出力＝｛ｎ／（ｎ−非カウント値×強度値／ｎ）｝+｛非カウント値×（ｎ−強度値）／ｎ×オフセット値／ｎ｝となる。
（ｎ：参照ピクセル数、例えば１２８または２５６）
（オフセット値、強度値は0〜n）
【００６５】
上記の各処理により、部分的に極端に明るさが周囲と異なる箇所（ノイズなど）がなくなり、画像全体のコントラストも修正することができる。しかし、このような処理は同値のピクセルが大半を占める領域においては特定の輝度に偏る傾向がある。例えば、暗い画像でピクセル値が０に偏った場合には画像が白っぽくなる問題がある。
【００６６】
図１５は図５に示した部分を更に改善した図であり、この実装例では、参照ピクセル値と注目ピクセル値を比較するコンパレータを２つ用意し、注目ピクセル値よりも小さい輝度でかつ傾き制限値以下となった参照ピクセル数と注目ピクセル値と等しい輝度でかつ傾き制限値以下となった参照ピクセルの数を個別にそれぞれカウントする。
【００６７】
前項で得られた注目ピクセル値より小さい輝度のカウント数に注目ピクセル値と等しい輝度のカウント数を注目輝度に応じて比例加算する。
このようにすることで、図１６に示すように、終点（最大輝度）が固定され、始点が原点（0，0）に移動するトーンマップが得られる。
【００６８】
以上に説明したように、黒つぶれ修正画像（FC出力画像）及び鮮明化出力画像が得られたら、フラットフレームの原理を利用してこれらの画像を合成する。本発明では合成にあたって、単純に黒つぶれ修正画像と鮮明化出力画像をブレンドするのではなく、暗い部分については黒つぶれ修正画像の配分を多くし、明るい部分については鮮明化出力画像の配分を多めにする。
【００６９】
上記をＣＰＵで実装する場合には、実際にフラットフレーム生成してからフレーム間で演算を行う。
一方、ＦＰＧＡなど回路でリアルタイム処理する場合には、実際にフレームバッファに１枚分のフラットフレームを作成するのではなく、ラインバッファを用いてぼかし直径分のリングバッファ（必要分だけ繰り返し利用する構造）を使用してリアルタイム処理を行う。つまりフラットフレームを１画面分作成するのではなく、画面のスキャンに同期して横長の細いフラットフレームをスキャン１ライン毎に生成される。
【００７０】
ラインバッファを利用してフラットフレームのぼかし直径分だけ遅れてリアルタイム処理を行う点では、黒つぶれ修正に利用したフラットフレームと同じであるが、黒つぶれ修正の場合には明度情報をガウシアンでぼかした後にレベル補正してフラットフレームとしたが、画面合成の際のレベル補正は黒つぶれ修正の補正値とは異なる場合があり、したがって、ラインバッファにはガウシアンで明度をぼかしただけの状態で保持しておき、黒つぶれ修正と画面合成では異なったレベル補正を行う。尚、レベル補正は足し算と掛け算のみで完結するため、出力直前にリアルタイムで計算することができる。
【００７１】
図１７（ａ）は元画像であり、暗部において黒つぶれが発生し、且つ鮮明でない部分が存在する。（ｂ）は黒つぶれ処理後の画像であり、黒つぶれは解消しているが明るい部分のコントラストが不足し、電線が白飛びしている。（ｃ）は鮮明化処理後の画像であり、暗い部分のコントラストが過度に強調され、逆光部分の粒子が乱れている。（ｄ）は画像合成後（本発明）の画像であり、黒つぶれ処理及び鮮明化処理の課題がともに解消され、電線は視認でき逆光部分の粒子は整っている。
【要約】
【課題】鮮明化処理を行った画像と黒つぶれ処理を行った画像とを合成する画像処理を提供する。
【解決手段】
鮮明化処理を行った画像と黒つぶれ処理を行った画像とを合成する画像処理を行うにあたり、前記黒つぶれ処理において使用したフラットフレームを利用して画像の暗い部分は黒つぶれ処理の比率を高め、明るい部分は鮮明化処理の比率を高めることで、鮮明化処理の欠点つまり画像の暗い部分でコントラスト過多になりがちとなる欠点と、黒つぶれ処理の欠点つまり明るい部分でのコントラスト不足を補う処理が可能となる。
【選択図】図１【図１】
0006893068.tif 000003
【図２】
0006893068.tif 000004
【図３】
0006893068.tif 000005
【図４】
0006893068.tif 000006
【図５】
0006893068.tif 000007
【図６】
0006893068.tif 000008
【図７】
0006893068.tif 000009
【図８】
0006893068.tif 000010
【図９】
0006893068.tif 000011
【図１０】
0006893068.tif 000012
【図１１】
0006893068.tif 000013
【図１２】
0006893068.tif 000014
【図１３】
0006893068.tif 000015
【図１４】
0006893068.tif 000016
【図１５】
0006893068.tif 000017
【図１６】
0006893068.tif 000018
【図１７】
0006893068.tif 000019