(57)【要約】【課題】単一の撮像による画像データに基づいてＨＤＲ合成を行なう。【解決手段】画像処理ユニット１０は、露出調整部２０、基準画像設定部３０、閾値設定部４０、および合成部５０を有する。Ａ／Ｄコンバータ６３または外部カードインターフェース６６から送信される画像データを露出調整部２０および基準画像設定部３０が前段処理回路１１を介して受信する。露出調整部２０は受信した画像データに基づいて第１〜第５の露出段階画像データを生成する。基準画像設定部は受信した画像データに基づいて８ビットのデータを基準画像データに設定する。閾値設定部４０は基準画像データに基づいて第１、第２の確定閾値を設定する。合成部５０は第１、第２の確定閾値および基準画像データに基づいてＨＤＲ合成を実行し、合成画像データを生成する。【選択図】図２
2010039886.tif 000002
【特許請求の範囲】
【請求項１】
離散化したデータレベルがｍ１段階（ｍ１は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する第１の画像データに基づいて、離散化したデータレベルがｍ２段階（ｍ２は正の整数）であり前記画像を構成する複数の前記画素それぞれに対応する画素データを有する合成画像データを作成する画像処理ユニットであって、
ｍ１がｍ２より小さい場合に、前記第１の画像データをｍ３段階（ｍ３はｍ１より大きな整数）に離散化するデータレベルの画素データによって構成される画像データである第３の画像データに変換する階調拡大部と、
ｍ１がｍ２より小さい場合には第３の画像データを原画像データに設定する原画像データ設定部と、
前記第１の画像データに基づいて、ｍ４段階（ｍ４は正の整数）に離散化するデータレベルの画素データによって構成される画像データを基準画像データに設定する基準画像データ設定部と、
前記原画像データにおいて第ｓ１段階（ｓ１は１≦ｓ１＜ｍ２を満たす整数）より小さな前記画素データのデータレベルを第ｕ１段階（ｕ１は１≦ｕ１を満たす整数）に変換し且つ第ｔ１段階（ｔ１はｓ１＜ｔ１≦ｍ２を満たす整数）より大きな前記画素データのデータレベルを第ｖ１段階（ｖ１はｕ１＜ｖ１≦ｍ２を満たす整数）に変換し且つ前記第ｓ１段階から前記第ｔ１段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ１段階から前記第ｖ１段階に近付くデータレベルに変換することにより第１の部分画像データを生成し、前記原画像データにおいて第ｓ２段階（ｓ２はｓ１＜ｓ２＜ｍ２を満たす整数）より小さな前記画素データのデータレベルを第ｕ２段階（ｕ２は１≦ｕ２を満たす整数）に変換し且つ第ｔ２段階（ｔ２はｓ２、ｔ１＜ｔ２≦ｍ２を満たす整数）より大きな前記画素データのデータレベルを第ｖ２段階（ｖ２はｕ２＜ｖ２≦ｍ２を満たす整数）に変換し且つ前記第ｓ２段階から前記第ｔ２段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ２段階から前記第ｖ２段階に近付くデータレベルに変換することにより第２の部分画像データを生成する部分画像作成部と、
前記基準画像データにおける前記画素データと比較するための第１の閾値を第１段階から第ｍ４段階までの間のいずれかのデータレベルに設定する閾値設定部と、
前記基準画像データの前記画素データ毎にデータレベルが前記第１の閾値より小さい画素を第１の分類画素、前記第１の閾値より大きい画素を第２の分類画素と分類する画素データ分類部と、
前記基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と、前記第１の分類画素と前記第２の分類画素とが切替わる位置である第１の比較輪郭位置とを抽出する輪郭抽出部と、
前記基準輪郭の位置と前記第１の比較輪郭位置との第１の一致性を検出する輪郭比較部と、
前記第１の一致性が最大になるまで、前記閾値設定部による前記第１の閾値の変更、前記画素データ判別部による前記第１、第２の分類画素であるかの分類、前記基準輪郭の位置および前記第１の比較輪郭位置の抽出、および前記基準輪郭の位置と前記第１の比較輪郭の位置との第１の一致性の検出とを繰返させ、前記第１の一致性が最大となるときの前記第１の閾値を第１の確定閾値と決定する閾値決定部と、
前記基準画像データにおいてデータレベルが前記第１の確定閾値より小さい画素データは前記第１の部分画像データにおける前記画素データに置換し、前記基準画像データにおいてデータレベルが前記第１の確定閾値より大きい画素データは前記第２の部分画像データにおける前記画素データに置換することにより前記合成画像データを生成する画像合成部とを備える
ことを特徴とする画像処理ユニット。
【請求項２】
前記部分画像作成部は、前記原画像データにおいて第ｓ３段階（ｓ３は１≦ｓ３＜ｓ１を満たす整数）より小さな前記画素データのデータレベルを第ｕ３段階（ｕ３は１≦ｕ３を満たす整数）に変換し且つ第ｔ３段階（ｔ３はｓ３＜ｔ３＜ｔ１を満たす整数）より大きな前記画素データのデータレベルを第ｖ３段階（ｖ３はｕ３＜ｖ３≦ｍ２を満たす整数）に変換し且つ前記第ｓ３段階から前記第ｔ３段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ３段階から前記第ｖ３段階に近付くデータレベルに変換することにより第３の部分画像データを生成し、
前記閾値設定部は、前記基準画像データにおける前記画素データと比較するための第２の閾値を、第１段階から第ｍ４段階までの間の前記第１の閾値より小さなデータレベルに設定し、
前記データ判別部は、前記基準画像データの前記画素データ毎にデータレベルが前記第２の閾値より小さい画素を第３の分類画素と分類し、
前記輪郭抽出部は、前記第３の分類画素と前記第１、第２の分類画素とが切替わる位置である第２の比較輪郭位置を抽出し、
前記輪郭比較部は、前記基準輪郭の位置と前記第２の比較輪郭位置との第２の一致性を検出し、
前記閾値決定部は、前記第２の一致性が最大になるまで、前記閾値設定部による前記第２の閾値の変更、前記画素データ判別部による前記第１〜第３の分類画素であるかの分類、前記第２の比較輪郭位置の抽出、および前記基準輪郭の位置と前記第２の比較輪郭の位置との第２の一致性の検出とを繰返させ、前記第２の一致性が最大となるときの前記第２の閾値を第２の確定閾値と決定し、
前記画像合成部は、前記基準画像データにおいてデータレベルが前記第２の確定閾値より小さい画像データを前記第３の部分画像データにおける前記画素データに置換し、前記基準画像データにおいてデータレベルが前記第２の確定閾値から前記第１の確定閾値の間の範囲に含まれる画素データを前記第１の部分画像データにおける前記画素データに置換し、前記基準画像データにおいてデータレベルが前記第１の確定閾値より大きい画素データを前記第２の部分画像データにおける前記画素データに置換することにより前記合成画像データを生成する
ことを特徴とする請求項１に記載の画像処理ユニット。
【請求項３】
前記部分画像作成部は、前記原画像データにおいて第ｓ４段階（ｓ４はｓ２＜ｓ４＜ｍ２を満たす整数）より小さな前記画素データのデータレベルを第ｕ４段階（ｕ４は１≦ｕ４を満たす整数）に変換し且つ第ｔ４段階（ｔ４はｓ４、ｔ２＜ｔ４≦ｍ２を満たす整数）より大きな前記画素データのデータレベルを第ｖ４段階（ｖ４はｕ４＜ｖ４≦ｍ２を満たす整数）に変換し且つ前記第ｓ４段階から前記第ｔ４段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ４段階から前記第ｖ４段階に近付くデータレベルに変換することにより第４の部分画像データを生成し、
前記画像合成部による合成画像データの作成後、
前記基準画像データ設定部は、前記合成画像データを新しい基準画像データとして設定し、
前記閾値設定部は、前記基準画像データの前記画素データと比較するための第３の閾値を第１段階から第ｍ４段階までのいずれかのデータレベルに設定し、
前記画素データ判別部は前記基準画像データの前記画素データ毎にデータレベルが前記第３の閾値より小さい画素を第４の分類画素、前記第３の閾値より大きい画素を第５の分類画素と分類し、
前記輪郭抽出部は、前記基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と、前記第４の分類画素と前記第５の分類画素とが切替わる位置である第３の比較輪郭位置とを抽出し、
前記輪郭比較部は、前記基準輪郭の位置と前記第３の比較輪郭位置との第３の一致性を検出し、
前記閾値決定部は、前記第３の一致性が最大になるまで、前記閾値設定部による前記第３の閾値の変更、前記画素データ判別部による前記第４、第５の分類画素であるかの分類、前記基準輪郭の位置および前記第３の比較輪郭位置の抽出、および前記基準輪郭の位置と前記第３の比較輪郭の位置との第３の一致性の検出とを繰返させ、前記第３の一致性が最大となるときの前記第３の閾値を第３の確定閾値と決定し、
前記画像合成部は、前記基準画像データにおいてデータレベルが前記第３の確定閾値より小さい画素データは前記基準画像データにおける前記画素データを用い、前記基準画像データにおいてデータレベルが前記第３の確定閾値より大きい画素データは前記第３の部分画像データにおける前記画素データに置換することにより前記合成画像データを生成する
ことを特徴とする請求項１または請求項２に記載の画像処理ユニット。
【請求項４】
前記合成画像データにおける前記画素データを、他の部分画像データにおける同一の前記画素の前記画素データを用いて平滑化する平滑化部を備えることを特徴とする請求項１または請求項２に記載の画像処理ユニット。
【請求項５】
前記平滑化部は、
前記基準画像データにおいてデータレベルが前記第１の確定閾値より小さい画素データに対応させた第１、第２の評価値をα（αは正の実数）、ゼロに設定し、前記基準画像データにおいてデータレベルが前記第１の確定閾値より大きい画素データに対応させた前記第１、第２の評価値をゼロ、αに設定する評価部と、
任意の前記画素である第１の注目画素の前記第１、第２の評価値をそれぞれ、前記第１の注目画素の周囲の第１の周囲画素の前記第１、第２の評価値を用いて平均化させることにより第１、第２の平均化評価値を算出する平均化部と、
前記合成画像データの前記画素データを前記第１の注目画素の前記第１、第２の平均化評価値をそれぞれ前記第１、第２の部分画像データにおける同一の前記画素の前記画素データに乗じて足すことにより算出される平滑化画素データに置換する置換部とを有する
ことを特徴とする請求項４に記載の画像処理ユニット。
【請求項６】
前記平均化部は、前記第１の注目画素の前記第１、第２の平均化評価値をそれぞれ、前記第１の周囲画素の前記第１、第２の平均化評価値を用いた平均化を所定の回数だけ繰返すことを特徴とする請求項５に記載の画像処理ユニット。
【請求項７】
前記平均化部は、前記第１、第２の平均化評価値を正規化し、正規化した前記第１、第２の平均化評価値を前記置換部に供給することを特徴とする請求項６に記載の画像処理ユニット。
【請求項８】
第１のフレームの前のフレームである第２のフレームの前記第１の画像データに基づいて決定した前記第１の確定閾値を記憶するメモリを備え、
前記第１のフレームの前記第１の画像データに基づく前記合成画像データを生成するために、前記閾値設定部は、前記メモリに格納された前記第１の確定閾値に基づいて、最初の前記第１の閾値の設定を実行する
ことを特徴とする請求項１〜請求項７のいずれか１項に記載の画像処理ユニット。
【請求項９】
前記メモリは、第２のフレームの前のフレームである第３のフレームの前記第１の画像データに基づいて決定した前記第１の確定閾値を記憶し、
前記閾値設定部は、前記第１のフレームの前記第１の画像データに基づく前記合成画像データの生成のために、前記メモリに格納された前記第２、第３のフレームの前記第１の画像データに基づいて決定した前記第１の確定閾値に基づいて、最初の前記第１の閾値の設定を実行する
ことを特徴とする請求項８に記載の画像処理ユニット。
【請求項１０】
前記閾値設定部は、前記メモリに格納された前記第２、第３のフレームの前記第１の画像データに基づいて決定した前記第１の確定閾値に重み付けを施し、重み付けを施した前記第１の確定閾値に基づいて、最初の前記第１の閾値の設定を実行することを特徴とする請求項９に記載の画像処理ユニット。
【請求項１１】
前記階調拡大部は、前記第１の画像データにおいて任意の前記画素である第２の注目画素に対応する前記画素データと前記第１の注目画素の周囲の第２の周囲画素の前記画素データとの平均値を算出し、前記平均値と前記第２の注目画素の前記画素データとの差に所定の増幅値を乗じることにより、前記第１の画像データを前記第３の画像データに変換することを特徴とする請求項１〜請求項１０のいずれか１項に記載の画像処理ユニット。
【請求項１２】
前記輪郭比較部は、前記基準輪郭の位置であり且つ前記第１の比較輪郭位置である前記画素の数を前記第１の一致性として検出することを特徴とする請求項１〜請求項１１のいずれか１項に記載の画像処理ユニット。
【請求項１３】
前記原画像データ設定部は、ｍ１がｍ２より大きい場合には前記第１の画像データを前記原画像データに設定することを特徴とする請求項１〜請求項１２のいずれか１項に記載の画像処理ユニット。
【請求項１４】
前記基準画像データ設定部は、前記画素データをｍ４／ｍ１倍した前記第１の画像データ、または前記画素データをｍ４／ｍ３倍した前記第３の画像データを前記基準画像データに設定することを特徴とする請求項１〜請求項１３のいずれか１項に記載の画像処理ユニット。
【請求項１５】
ｍ４＝ｍ２であることを特徴とする請求項１〜請求項１４のいずれか１項に記載の画像処理ユニット。
【請求項１６】
ｕ１＝ｕ２＝１、ｖ１＝ｖ２＝ｍ２であることを特徴とする請求項１〜請求項１５のいずれか１項に記載の画像処理ユニット。
【請求項１７】
請求項１〜請求項１６のいずれか１項に記載の画像処理ユニットを有する撮像装置。
【請求項１８】
離散化したデータレベルがｍ１段階（ｍ１は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する第１の画像データに基づいて、離散化したデータレベルがｍ２段階（ｍ２は正の整数）であり前記画像を構成する複数の前記画素それぞれに対応する画素データを有する合成画像データを作成させる合成画像作成プログラブであって、
ｍ１がｍ２より小さい場合に、前記第１の画像データをｍ３段階（ｍ３はｍ１より大きな整数）に離散化するデータレベルの画素データによって構成される画像データである第３の画像データに変換する階調拡大部と、
ｍ１がｍ２より小さい場合には第３の画像データを原画像データに設定する原画像データ設定部と、
前記第１の画像データに基づいて、ｍ４段階（ｍ４は正の整数）に離散化するデータレベルの画素データによって構成される画像データを基準画像データに設定する基準画像データ設定部と、
前記原画像データにおいて第ｓ１段階（ｓ１は１≦ｓ１＜ｍ２を満たす整数）より小さな前記画素データのデータレベルを第ｕ１段階（ｕ１は１≦ｕ１を満たす整数）に変換し且つ第ｔ１段階（ｔ１はｓ１＜ｔ１≦ｍ２を満たす整数）より大きな前記画素データのデータレベルを第ｖ１段階（ｖ１はｕ１＜ｖ１≦ｍ２を満たす整数）に変換し且つ前記第ｓ１段階から前記第ｔ１段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ１段階から前記第ｖ１段階に近付くデータレベルに変換することにより第１の部分画像データを生成し、前記原画像データにおいて第ｓ２段階（ｓ２はｓ１＜ｓ２＜ｍ２を満たす整数）より小さな前記画素データのデータレベルを第ｕ２段階（ｕ２は１≦ｕ２を満たす整数）に変換し且つ第ｔ２段階（ｔ２はｓ２、ｔ１＜ｔ２≦ｍ２を満たす整数）より大きな前記画素データのデータレベルを第ｖ２段階（ｖ２はｕ２＜ｖ２≦ｍ２を満たす整数）に変換し且つ前記第ｓ２段階から前記第ｔ２段階までの前記画素データをデータレベルが大きくなるほど前記第ｕ２段階から前記第ｖ２段階に近付くデータレベルに変換することにより第２の部分画像データを生成する部分画像作成部と、
前記基準画像データにおける前記画素データと比較するための第１の閾値を第１段階から第ｍ４段階までの間のいずれかのデータレベルに設定する閾値設定部と、
前記基準画像データの前記画素データ毎にデータレベルが前記第１の閾値より小さい画素を第１の分類画素、前記第１の閾値より大きい画素を第２の分類画素と分類する画素データ分類部と、
前記基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と、前記第１の分類画素と前記第２の分類画素とが切替わる位置である第１の比較輪郭位置とを抽出する輪郭抽出部と、
前記基準輪郭の位置と前記第１の比較輪郭位置との第１の一致性を検出する輪郭比較部と、
前記第１の一致性が最大になるまで、前記閾値設定部による前記第１の閾値の変更、前記画素データ判別部による前記第１、第２の分類画素であるかの分類、前記基準輪郭の位置および前記第１の比較輪郭位置の抽出、および前記基準輪郭の位置と前記第１の比較輪郭の位置との第１の一致性の検出とを繰返させ、前記第１の一致性が最大となるときの前記第１の閾値を第１の確定閾値と決定する閾値決定部と、
前記基準画像データにおいてデータレベルが前記第１の確定閾値より小さい画素データは前記第１の部分画像データにおける前記画素データに置換し、前記基準画像データにおいてデータレベルが前記第１の確定閾値より大きい画素データは前記第２の部分画像データにおける前記画素データに置換することにより前記合成画像データを生成する画像合成部として画像処理装置を機能させる
ことを特徴とする合成画像作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単一の画像データからハイダイナミックレンジ（ＨＤＲ）画像を作成する画像処理ユニットに関する。
【背景技術】
【０００２】
デジタルスチルカメラ、ビデオカメラ、および電子内視鏡などのように、任意の光景または被写体を撮像する撮像装置が知られている。撮像装置では、被写体や光景に相当する画像信号が生成される。生成した画像信号はデジタルデータである画像データに変換される。画像データに対して所定の信号処理が施され、画像を表示するためのモニタや画像データを格納するためのメモリに送信される。
【０００３】
汎用のモニタに送信するための画像データは、一般的に８ビットのデジタルデータとなるように規格化されている。それゆえ、０〜２５５段階の異なる輝度の画素によって表示する画像は形成される。
【０００４】
隣接する画素同士の輝度の差が大きくなるほど陰影や被写体の輪郭が明確な画像を表示可能である。そこで、撮像する被写体や光景の輝度の最小値から最大値までの差が小さければ最小値が０、最大値が２５５の輝度となるように露光調整して撮像することにより、白飛びや黒つぶれの少ない画像を表示可能である。しかし、輝度の最小値から最大値までの差が大きい場合には、輝度の低い部位と高い部位とを同時に鮮明に表示することが困難となる。
【０００５】
このような問題に対してハイダイナミックレンジ（ＨＤＲ）合成により合成されるＨＤＲ画像が知られている。露出を変えて同じ被写体を複数回撮像して生成される複数の画像データを用いて、ＨＤＲ合成が行なわれる（特許文献１参照）。
【０００６】
しかし、被写体を複数回撮像する必要があるため、動く被写体の撮像や動画像の撮像に対しては画像データ間にブレが発生するため、ＨＤＲ合成により鮮明な画像を表示することが難しかった。
【０００７】
また、従来のＨＤＲ合成では、複数の画像データのいずれを用いるかを特定の閾値と輝度を比較することにより判別されていた。このように特定の閾値を用いた判別では、表示画像において画像データが切替わる位置が境界として表示され得ることが問題であった。
【特許文献１】特開２００８−１０４００９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
したがって、本発明では、単一の画像データに基づいて、ＨＤＲ合成された合成画像データを生成する画像処理ユニットの提供を目的とする。
【課題を解決するための手段】
【０００９】
本発明の画像処理ユニットは、離散化したデータレベルがｍ１段階（ｍ１は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する第１の画像データに基づいて離散化したデータレベルがｍ２段階（ｍ２は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する合成画像データを作成する画像処理ユニットであって、ｍ１がｍ２より小さい場合に第１の画像データをｍ３段階（ｍ３はｍ１より大きな整数）に離散化するデータレベルの画素データによって構成される画像データである第３の画像データに変換する階調拡大部と、ｍ１がｍ２より小さい場合には第３の画像データを原画像データに設定する原画像データ設定部と、第１の画像データに基づいてｍ４段階（ｍ４は正の整数）に離散化するデータレベルの画素データによって構成される画像データを基準画像データに設定する基準画像データ設定部と、原画像データにおいて第ｓ１段階（ｓ１は１≦ｓ１＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ１段階（ｕ１は１≦ｕ１を満たす整数）に変換し且つ第ｔ１段階（ｔ１はｓ１＜ｔ１≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ１段階（ｖ１はｕ１＜ｖ１≦ｍ２を満たす整数）に変換し且つ第ｓ１段階から第ｔ１段階までの前記画素データをデータレベルが大きくなるほど第ｕ１段階から第ｖ１段階に近付くデータレベルに変換することにより第１の部分画像データを生成し原画像データにおいて第ｓ２段階（ｓ２はｓ１＜ｓ２＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ２段階（ｕ２は１≦ｕ２を満たす整数）に変換し且つ第ｔ２段階（ｔ２はｓ２、ｔ１＜ｔ２≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ２段階（ｖ２はｕ２＜ｖ２≦ｍ２を満たす整数）に変換し且つ第ｓ２段階から第ｔ２段階までの画素データをデータレベルが大きくなるほど第ｕ２段階から第ｖ２段階に近付くデータレベルに変換することにより第２の部分画像データを生成する部分画像作成部と、基準画像データにおける画素データと比較するための第１の閾値を第１段階から第ｍ４段階までの間のいずれかのデータレベルに設定する閾値設定部と、基準画像データの画素データ毎にデータレベルが第１の閾値より小さい画素を第１の分類画素第１の閾値より大きい画素を第２の分類画素と分類する画素データ分類部と、基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と第１の分類画素と第２の分類画素とが切替わる位置である第１の比較輪郭位置とを抽出する輪郭抽出部と、基準輪郭の位置と第１の比較輪郭位置との第１の一致性を検出する輪郭比較部と、第１の一致性が最大になるまで閾値設定部による第１の閾値の変更画素データ判別部による第１、第２の分類画素であるかの分類基準輪郭の位置および第１の比較輪郭位置の抽出および基準輪郭の位置と第１の比較輪郭の位置との第１の一致性の検出とを繰返させ第１の一致性が最大となるときの第１の閾値を第１の確定閾値と決定する閾値決定部と、基準画像データにおいてデータレベルが第１の確定閾値より小さい画素データは第１の部分画像データにおける画素データに置換し基準画像データにおいてデータレベルが第１の確定閾値より大きい画素データは第２の部分画像データにおける画素データに置換することにより合成画像データを生成する画像合成部とを備えることを特徴としている。
【００１０】
なお、部分画像作成部は原画像データにおいて第ｓ３段階（ｓ３は１≦ｓ３＜ｓ１を満たす整数）より小さな画素データのデータレベルを第ｕ３段階（ｕ３は１≦ｕ３を満たす整数）に変換し且つ第ｔ３段階（ｔ３はｓ３＜ｔ３＜ｔ１を満たす整数）より大きな画素データのデータレベルを第ｖ３段階（ｖ３はｕ３＜ｖ３≦ｍ２を満たす整数）に変換し且つ第ｓ３段階から第ｔ３段階までの画素データをデータレベルが大きくなるほど第ｕ３段階から第ｖ３段階に近付くデータレベルに変換することにより第３の部分画像データを生成し、閾値設定部は基準画像データにおける画素データと比較するための第２の閾値を第１段階から第ｍ４段階までの間の第１の閾値より小さなデータレベルに設定し、データ判別部は基準画像データの画素データ毎にデータレベルが第２の閾値より小さい画素を第３の分類画素と分類し、輪郭抽出部は第３の分類画素と第１、第２の分類画素とが切替わる位置である第２の比較輪郭位置を抽出し、輪郭比較部は基準輪郭の位置と第２の比較輪郭位置との第２の一致性を検出し、閾値決定部は第２の一致性が最大になるまで閾値設定部による第２の閾値の変更画素データ判別部による第１〜第３の分類画素であるかの分類第２の比較輪郭位置の抽出および基準輪郭の位置と第２の比較輪郭の位置との第２の一致性の検出とを繰返させ第２の一致性が最大となるときの前記第２の閾値を第２の確定閾値と決定し、画像合成部は基準画像データにおいてデータレベルが第２の確定閾値より小さい画像データを第３の部分画像データにおける画素データに置換し基準画像データにおいてデータレベルが第２の確定閾値から第１の確定閾値の間の範囲に含まれる画素データを第１の部分画像データにおける画素データに置換し基準画像データにおいてデータレベルが第１の確定閾値より大きい画素データを第２の部分画像データにおける画素データに置換することにより合成画像データを生成することが好ましい。
【００１１】
また、部分画像作成部は原画像データにおいて第ｓ４段階（ｓ４はｓ２＜ｓ４＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ４段階（ｕ４は１≦ｕ４を満たす整数）に変換し且つ第ｔ４段階（ｔ４はｓ４、ｔ２＜ｔ４≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ４段階（ｖ４はｕ４＜ｖ４≦ｍ２を満たす整数）に変換し且つ第ｓ４段階から第ｔ４段階までの画素データをデータレベルが大きくなるほど第ｕ４段階から第ｖ４段階に近付くデータレベルに変換することにより第４の部分画像データを生成し、画像合成部による合成画像データの作成後、基準画像データ設定部は合成画像データを新しい基準画像データとして設定し、閾値設定部は基準画像データの画素データと比較するための第３の閾値を第１段階から第ｍ４段階までのいずれかのデータレベルに設定し、画素データ判別部は基準画像データの画素データ毎にデータレベルが第３の閾値より小さい画素を第４の分類画素第３の閾値より大きい画素を第５の分類画素と分類し、輪郭抽出部は基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と第４の分類画素と第５の分類画素とが切替わる位置である第３の比較輪郭位置とを抽出し、輪郭比較部は基準輪郭の位置と第３の比較輪郭位置との第３の一致性を検出し、閾値決定部は第３の一致性が最大になるまで閾値設定部による第３の閾値の変更画素データ判別部による第４、第５の分類画素であるかの分類基準輪郭の位置および第３の比較輪郭位置の抽出および基準輪郭の位置と第３の比較輪郭の位置との第３の一致性の検出とを繰返させ第３の一致性が最大となるときの第３の閾値を第３の確定閾値と決定し、画像合成部は基準画像データにおいてデータレベルが第３の確定閾値より小さい画素データは基準画像データにおける画素データを用い基準画像データにおいてデータレベルが第３の確定閾値より大きい画素データは第３の部分画像データにおける画素データに置換することにより合成画像データを生成することが好ましい。
【００１２】
また、合成画像データにおける画素データを、他の部分画像データにおける同一の画素の前記画素データを用いて平滑化する平滑化部を備えることが好ましい。
【００１３】
また、平滑化部は、基準画像データにおいてデータレベルが第１の確定閾値より小さい画素データに対応させた第１、第２の評価値をα（αは正の実数）、ゼロに設定し基準画像データにおいてデータレベルが第１の確定閾値より大きい画素データに対応させた第１、第２の評価値をゼロ、αに設定する評価部と、任意の画素である第１の注目画素の第１、第２の評価値をそれぞれ第１の注目画素の周囲の第１の周囲画素の第１、第２の評価値を用いて平均化させることにより第１、第２の平均化評価値を算出する平均化部と、合成画像データの画素データを第１の注目画素の第１、第２の平均化評価値をそれぞれ第１、第２の部分画像データにおける同一の画素の画素データに乗じて足すことにより算出される平滑化画素データに置換する置換部とを有することが好ましい。
【００１４】
また、平均化部は第１の注目画素の前記第１、第２の平均化評価値をそれぞれ第１の周囲画素の第１、第２の平均化評価値を用いた平均化を所定の回数だけ繰返すことが好ましい。
【００１５】
また、平均化部は第１、第２の平均化評価値を正規化し、正規化した第１、第２の平均化評価値を置換部に供給することが好ましい。
【００１６】
また、第１のフレームの前のフレームである第２のフレームの第１の画像データに基づいて決定した第１の確定閾値を記憶するメモリを備え、第１のフレームの第１の画像データに基づく合成画像データを生成するために閾値設定部はメモリに格納された第１の確定閾値に基づいて最初の第１の閾値の設定を実行することが好ましい。
【００１７】
また、メモリは第２のフレームの前のフレームである第３のフレームの第１の画像データに基づいて決定した第１の確定閾値を記憶し、閾値設定部は第１のフレームの第１の画像データに基づく合成画像データの生成のためにメモリに格納された第２、第３のフレームの第１の画像データに基づいて決定した第１の確定閾値に基づいて最初の第１の閾値の設定を実行することが好ましい。
【００１８】
また、閾値設定部はメモリに格納された第２、第３のフレームの第１の画像データに基づいて決定した第１の確定閾値に重み付けを施し、重み付けを施した第１の確定閾値に基づいて最初の第１の閾値の設定を実行することが好ましい。
【００１９】
また、階調拡大部は第１の画像データにおいて任意の画素である第２の注目画素に対応する画素データと第１の注目画素の周囲の第２の周囲画素の画素データとの平均値を算出し、平均値と第２の注目画素の画素データとの差に所定の増幅値を乗じることにより、第１の画像データを第３の画像データに変換することが好ましい。
【００２０】
また、輪郭比較部は基準輪郭の位置であり且つ第１の比較輪郭位置である画素の数を第１の一致性として検出することが好ましい。
【００２１】
また、原画像データ設定部はｍ１がｍ２より大きい場合には第１の画像データを原画像データに設定することが好ましい。
【００２２】
また、基準画像データ設定部は画素データをｍ４／ｍ１倍した第１の画像データまたは画素データをｍ４／ｍ３倍した第３の画像データを基準画像データに設定することが好ましい。
【００２３】
また、ｍ４＝ｍ２であることが好ましい。
【００２４】
また、ｕ１＝ｕ２＝１、ｖ１＝ｖ２＝ｍ２であることが好ましい。
【００２５】
本発明の撮像装置は、離散化したデータレベルがｍ１段階（ｍ１は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する第１の画像データに基づいて離散化したデータレベルがｍ２段階（ｍ２は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する合成画像データを作成する撮像装置であって、ｍ１がｍ２より小さい場合に第１の画像データをｍ３段階（ｍ３はｍ１より大きな整数）に離散化するデータレベルの画素データによって構成される画像データである第３の画像データに変換する階調拡大部とｍ１がｍ２より小さい場合には第３の画像データを原画像データに設定する原画像データ設定部と第１の画像データに基づいてｍ４段階（ｍ４は正の整数）に離散化するデータレベルの画素データによって構成される画像データを基準画像データに設定する基準画像データ設定部と原画像データにおいて第ｓ１段階（ｓ１は１≦ｓ１＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ１段階（ｕ１は１≦ｕ１を満たす整数）に変換し且つ第ｔ１段階（ｔ１はｓ１＜ｔ１≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ１段階（ｖ１はｕ１＜ｖ１≦ｍ２を満たす整数）に変換し且つ第ｓ１段階から第ｔ１段階までの前記画素データをデータレベルが大きくなるほど第ｕ１段階から第ｖ１段階に近付くデータレベルに変換することにより第１の部分画像データを生成し原画像データにおいて第ｓ２段階（ｓ２はｓ１＜ｓ２＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ２段階（ｕ２は１≦ｕ２を満たす整数）に変換し且つ第ｔ２段階（ｔ２はｓ２、ｔ１＜ｔ２≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ２段階（ｖ２はｕ２＜ｖ２≦ｍ２を満たす整数）に変換し且つ第ｓ２段階から第ｔ２段階までの画素データをデータレベルが大きくなるほど第ｕ２段階から第ｖ２段階に近付くデータレベルに変換することにより第２の部分画像データを生成する部分画像作成部と基準画像データにおける画素データと比較するための第１の閾値を第１段階から第ｍ４段階までの間のいずれかのデータレベルに設定する閾値設定部と基準画像データの画素データ毎にデータレベルが第１の閾値より小さい画素を第１の分類画素第１の閾値より大きい画素を第２の分類画素と分類する画素データ分類部と基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と第１の分類画素と第２の分類画素とが切替わる位置である第１の比較輪郭位置とを抽出する輪郭抽出部と基準輪郭の位置と第１の比較輪郭位置との第１の一致性を検出する輪郭比較部と第１の一致性が最大になるまで閾値設定部による第１の閾値の変更画素データ判別部による第１第２の分類画素であるかの分類基準輪郭の位置および第１の比較輪郭位置の抽出および基準輪郭の位置と第１の比較輪郭の位置との第１の一致性の検出とを繰返させ第１の一致性が最大となるときの第１の閾値を第１の確定閾値と決定する閾値決定部と基準画像データにおいてデータレベルが第１の確定閾値より小さい画素データは第１の部分画像データにおける画素データに置換し基準画像データにおいてデータレベルが第１の確定閾値より大きい画素データは第２の部分画像データにおける画素データに置換することにより合成画像データを生成する画像合成部とを有する画像処理ユニットを備えることを特徴としている。
【００２６】
本発明の合成画像作成プログラムは、離散化したデータレベルがｍ１段階（ｍ１は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する第１の画像データに基づいて離散化したデータレベルがｍ２段階（ｍ２は正の整数）であり画像を構成する複数の画素それぞれに対応する画素データを有する合成画像データを作成する合成画像作成プログラムであって、ｍ１がｍ２より小さい場合に第１の画像データをｍ３段階（ｍ３はｍ１より大きな整数）に離散化するデータレベルの画素データによって構成される画像データである第３の画像データに変換する階調拡大部と、ｍ１がｍ２より小さい場合には第３の画像データを原画像データに設定する原画像データ設定部と、第１の画像データに基づいてｍ４段階（ｍ４は正の整数）に離散化するデータレベルの画素データによって構成される画像データを基準画像データに設定する基準画像データ設定部と、原画像データにおいて第ｓ１段階（ｓ１は１≦ｓ１＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ１段階（ｕ１は１≦ｕ１を満たす整数）に変換し且つ第ｔ１段階（ｔ１はｓ１＜ｔ１≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ１段階（ｖ１はｕ１＜ｖ１≦ｍ２を満たす整数）に変換し且つ第ｓ１段階から第ｔ１段階までの前記画素データをデータレベルが大きくなるほど第ｕ１段階から第ｖ１段階に近付くデータレベルに変換することにより第１の部分画像データを生成し原画像データにおいて第ｓ２段階（ｓ２はｓ１＜ｓ２＜ｍ２を満たす整数）より小さな画素データのデータレベルを第ｕ２段階（ｕ２は１≦ｕ２を満たす整数）に変換し且つ第ｔ２段階（ｔ２はｓ２、ｔ１＜ｔ２≦ｍ２を満たす整数）より大きな画素データのデータレベルを第ｖ２段階（ｖ２はｕ２＜ｖ２≦ｍ２を満たす整数）に変換し且つ第ｓ２段階から第ｔ２段階までの画素データをデータレベルが大きくなるほど第ｕ２段階から第ｖ２段階に近付くデータレベルに変換することにより第２の部分画像データを生成する部分画像作成部と、基準画像データにおける画素データと比較するための第１の閾値を第１段階から第ｍ４段階までの間のいずれかのデータレベルに設定する閾値設定部と、基準画像データの画素データ毎にデータレベルが第１の閾値より小さい画素を第１の分類画素第１の閾値より大きい画素を第２の分類画素と分類する画素データ分類部と、基準画像データに相当する画像における被写体の輪郭である基準輪郭の位置と第１の分類画素と第２の分類画素とが切替わる位置である第１の比較輪郭位置とを抽出する輪郭抽出部と、基準輪郭の位置と第１の比較輪郭位置との第１の一致性を検出する輪郭比較部と、第１の一致性が最大になるまで閾値設定部による第１の閾値の変更画素データ判別部による第１、第２の分類画素であるかの分類基準輪郭の位置および第１の比較輪郭位置の抽出および基準輪郭の位置と第１の比較輪郭の位置との第１の一致性の検出とを繰返させ第１の一致性が最大となるときの第１の閾値を第１の確定閾値と決定する閾値決定部と、基準画像データにおいてデータレベルが第１の確定閾値より小さい画素データは第１の部分画像データにおける画素データに置換し基準画像データにおいてデータレベルが第１の確定閾値より大きい画素データは第２の部分画像データにおける画素データに置換することにより合成画像データを生成する画像合成部として画像処理装置を機能させることを特徴とする。
【発明の効果】
【００２７】
本発明によれば、単一の画像データに基づいて、ＨＤＲ合成した合成画像データを生成可能である。また、基準輪郭に基づいて、複数の部分画像データのいずれを用いるか決めるので、露出段階の切替わり位置における境界を不明瞭にすることが可能である。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施形態について図面を参照して説明する。
図１は、本発明の第１の実施形態を適用した画像処理ユニットを有するデジタルカメラの内部構成を概略的に示すブロック図である。
【００２９】
デジタルカメラ６０は、撮影光学系６１、撮像素子６２、Ａ／Ｄコンバータ６３、画像処理ユニット１０、システムコントローラ６４、モニタ６５、外部カードインターフェース６６、および入力部６７などによって構成される。
【００３０】
撮影光学系６１は、撮像素子６２に光学的に接続される。撮影光学系６１を透過する被写体の光学像が撮像素子６２の受光面に入射される。撮像素子６２は、例えばＣＣＤである。受光面において被写体の光学像が受光されることにより、光学像に相当するアナログの画像信号が生成される。
【００３１】
なお、撮像素子６２の受光面には行列状に多数の画素（図示せず）が配置される。それぞれの画素にはフォトダイオードが設けられ、各画素における受光量に応じた画素信号が生成される。１フレームの画像信号は配置された画素それぞれの画素信号によって構成される。
【００３２】
撮像素子６２はＡ／Ｄコンバータ６３に接続される。撮像素子６２により生成された画像信号はＡ／Ｄコンバータ６３に送信される。Ａ／Ｄコンバータ６３では、アナログの画像信号を８ビットのデジタルデータである画像データに変換する。なお、１フレームの画像信号を構成する画素信号がデジタルデータである画素データに変換されることにより、画像信号は画像データに変換される。
【００３３】
Ａ／Ｄコンバータ６３は、画像処理ユニット１０に接続される。デジタルデータに変換された画像データは画像処理ユニット１０に送信される。画像処理ユニット１０において、画像データには所定の画像処理が施される。なお、画像処理ユニット１０は、１６ビットのデジタルデータの演算が可能である。
【００３４】
画像処理ユニット１０は、モニタ６５および外部カードインターフェース６６に接続される。所定の画像処理の施された画像データはモニタ６５に送信される。さらには、外部カードインターフェース６６に着脱自在のメモリカード（図示せず）にも送信可能である。モニタ６５には画像データに相当する画像が表示される。画像データはカードメモリに格納される。
【００３５】
画像処理ユニット１０は、システムコントローラ６４に接続される。画像処理ユニット１０における画像処理はシステムコントローラ６４によって制御される。システムコントローラ６４は、デジタルカメラ６０の他の部位にも接続され、他の部位の動作も制御する。システムコントローラ６４は入力部６７に接続される。使用者による入力部６７へのコマンド入力に基づいて、システムコントローラ６４はデジタルカメラ６０の各部位を制御する。
【００３６】
なお、入力部６７への再生コマンド入力によって、撮像してメモリカードに格納した画像データを画像処理ユニット１０に読出して、モニタ６５に出力することにより画像をモニタ２５に表示することが可能である。
【００３７】
デジタルカメラ６０ではハイダイナミックレンジ（ＨＤＲ）合成を実行可能である。ＨＤＲ合成は、Ａ／Ｄコンバータ６３から送信された画像データおよびメモリカードから読出した画像データに対して画像処理ユニット１０において実行される。ＨＤＲ合成により生成した合成画像データはモニタ６５およびメモリカードに送信される。合成画像データに相当するＨＤＲ画像がモニタ６５に表示される。また、合成画像データはメモリカードに格納される。
【００３８】
画像処理ユニット１０の構成について図２を用いて説明する。画像処理ユニット１０は、前段処理回路１１、露出調整部２０、基準画像設定部３０、閾値設定部４０、合成部５０、および後段処理回路１２などによって構成される。
【００３９】
Ａ／Ｄコンバータ６３または外部カードインターフェース６６から送信される画像データは、前段処理回路１１に受信される。前段処理回路１１では、ホワイトバランス処理、色補間処理、輝度／色差変換処理などの所定のデータ処理が施される。
【００４０】
前段処理回路１１は、後段処理回路１２に接続される。ＨＤＲ合成を実行しない場合には、前段処理回路１１から後段処理回路１２に画像データが送信される。後段処理回路１２では、画像データに対してクランプ処理、ガンマ補正処理などの所定のデータ処理が施される。データ処理が施された画像データは、後段処理回路１２からモニタ６５または外部カードインターフェース６６に送信される。
【００４１】
前段処理回路１１は、露出調整部２０および基準画像設定部３０にも接続される。ＨＤＲ合成を実行する場合には、画像データの色差成分は後段処理回路１２に、画像データの輝度成分が露出調整部２０および基準画像設定部３０に送信される。
【００４２】
なお、以下の説明において、露出調整部２０、基準画像設定部３０、閾値設定部４０、および合成部５０においてデータ処理が施され、生成される画像データ、原画像データ、第１〜第５の露出段階画像データ、基準画像データ、合成画像データ、最終合成画像データは、画像の輝度に相当するデータ成分である。
【００４３】
露出調整部２０では、受信した画像データに基づいて、露出段階を切替えた画像に相当する第１〜第５の露出段階画像データが生成される。露出調整部２０は合成部５０に接続され、第１〜第５の露出段階画像データは合成部５０に送信される。
【００４４】
基準画像設定部３０では、後述するように、合成画像データの生成に用いられる基準画像データが設定される。基準画像設定部３０は、閾値設定部４０および合成部５０に接続される。設定された基準画像データが、閾値設定部４０および合成部５０に送信される。
【００４５】
閾値設定部４０では、基準画像データに基づいて、第１、第２の確定閾値が設定される。なお、後述するように、第１、第２の確定閾値を用いて、ＨＤＲ画像の一部の画像に第１〜第５の露出段階画像データの中のどの画像データを用いるかが判別される。閾値設定部４０は、合成部５０に接続される。設定した第１、第２の確定閾値に相当する第１、第２の確定閾値データが、合成部５０に送信される。
【００４６】
合成部５０では、受信した第１〜第５の露出段階画像データ、基準画像データ、および第１、第２の確定閾値データに基づいて、合成画像データが生成される。合成部５０は、後段処理回路１２に接続される。合成部５０から合成画像データが後段処理回路１２に送信される。
【００４７】
なお、前述のように、合成部５０において生成する合成画像データはＨＤＲ画像の輝度成分であって、ＨＤＲ画像の色差成分は前段処理回路１１から後段処理回路１２に送信される。後段処理回路１２では、合成部５０から送信される輝度成分と前段処理回路１１から送信される色差成分に基づく合成画像データに対して所定のデータ処理が施される。前述の通常の画像データと同様に、合成画像データがモニタ６５または外部カードインターフェース６６に送信される。
【００４８】
次に、露出調整部２０、基準画像設定部３０、閾値設定部４０、および合成部５０の更に詳細な構成および機能について説明する。
【００４９】
図３は、露出調整部２０の内部構成を示すブロック図である。露出調整部２０は、階調拡大回路２１、原画像データ設定回路２２、擬似露出変換回路２３によって構成される。階調拡大回路２１、原画像データ設定回路２２、および擬似露出変換回路２３は直列に接続される。
【００５０】
前段処理回路１１から送信される画像データは、階調拡大回路２１に受信される。階調拡大回路２１では、受信する画像データのビット数が検出される。Ａ／Ｄコンバータ６３から送信される画像データは８ビットであるが、メモリカードから送信される画像データのビット数は定められていない。それゆえ、受信する画像データのビット数が検出される。
【００５１】
受信した画像データのビット数が８より大きい場合には、画像データはそのまま原画像データ設定回路２２に送信される。受信した画像データのビット数が８未満である場合には、画像データに対して以下の階調拡大処理が施される。
【００５２】
階調拡大処理では、任意の画素データが注目画素データに選択される。単一の画素データが注目画素データとして選択されているときに、注目画素データに対応する注目画素の周囲５×５に配置された周囲画素の画素データと注目画素データとの局所平均値が算出される。局所平均値と注目画素データとの差に所定の増幅係数が乗じられ、強調値が算出される。局所平均値と強調値との合計値が注目画素データに置換される。
【００５３】
画像データを構成するすべての画素データが順番に注目画素データとして選択される。すべての画素データを局所平均値と強調値との合計値に置換させることにより、画像データのビット数が拡大される。なぜなら、局所平均値が算出されるため、データレベルの桁数が増加するからである。階調拡大処理が施された画像データは、原画像データ設定回路２２に送信される。
【００５４】
原画像データ設定回路２２では、階調拡大回路２１から送信された画像データが原画像データに設定される。原画像データは露出変換回路２３に送信される。
【００５５】
擬似露出変換回路２３では、原画像データから第１〜第５の露出段階画像データが生成される。以下に、原画像データから第１〜第５の露出段階画像データの生成方法について説明する。前述のように、生成された第１〜第５の露出段階画像データは、合成部５０に送信される。
【００５６】
原画像データのビット数は、前段処理回路１１が受信する画像データまたは階調拡大部２１の拡大処理によって変わる。原画像データを構成する画素データは、図４のヒストグラムに示すように、データレベルがゼロ〜最大値α（（α＋１）＝２＾（原画像データのビット数））の範囲に分布する。
【００５７】
α×２／５〜α×３／５のデータレベルがゼロ〜２５５（すなわち８ビット）のデータレベルに、ゼロ〜α×２／５のデータレベルはゼロのデータレベルに、およびα×３／５〜αのデータレベルが２５５になるように（図５参照）、原画像データの各画素データを変換することにより第１の露出段階画像データが生成される。
【００５８】
同様に、α×３／５〜α×４／５のデータレベルがゼロ〜２５５（すなわち８ビット）のデータレベルに、ゼロ〜α×３／５のデータレベルはゼロのデータレベルに、およびα×４／５〜αのデータレベルが２５５のデータレベルになるように（図６参照）、原画像データの各画素データを変換することにより第２の露出段階画像データが生成される。
【００５９】
同様に、α×１／５〜α×２／５のデータレベルがゼロ〜２５５（すなわち８ビット）のデータレベルに、ゼロ〜α×１／５のデータレベルはゼロのデータレベルに、およびα×２／５〜αのデータレベルが２５５のデータレベルになるように（図７参照）、原画像データの各画素データを変換することにより第３の露出段階画像データが生成される。
【００６０】
同様に、α×４／５〜αのデータレベルがゼロ〜２５５（すなわち８ビット）のデータレベルに、ゼロ〜α×４／５のデータレベルはゼロのデータレベルになるように（図８参照）、原画像データの各画素データを変換することにより第４の露出段階画像データが生成される。
【００６１】
同様に、ゼロ〜α×１／５のデータレベルがゼロ〜２５５（すなわち８ビット）のデータレベルに、α×１／５〜αのデータレベルは２５５のデータレベルになるように（図９参照）、原画像データの各画素データを変換することにより第５の露出段階画像データが生成される。
【００６２】
次に、基準画像設定部３０の構成について、図１０を用いて説明する。図１０は、基準画像設定部３０の内部構成を示すブロック図である。基準画像設定部３０は、８ビット変換回路３１と基準画像データ設定回路３２とによって構成される。なお、８ビット変換回路３１と基準画像データ設定回路３２とは直列に接続される。
【００６３】
前段処理回路１１から送信される画像データは、８ビット変換回路３１に受信される。８ビット変換回路３１では、画像データを構成する画素データに（２５６／２＾（画像データのビット数））を乗じることにより、８ビットの画像データに変換される。変換された画像データは基準画像データ設定回路３２に送信される。なお、元々、８ビットの画像データは、そのまま８ビット変換回路３１から基準画像データ設定回路３２に送信される。
【００６４】
基準画像データ設定回路３２では、受信した８ビットの画像データが閾値設定部４０および合成部５０において用いる基準画像データに設定される。なお、基準画像データ設定回路３２は合成部５０に接続されており、後述するように、合成部５０から合成画像データが基準画像データ設定回路３２に送信されることがある。基準画像データ設定回路３２が合成画像データを受信したときには、８ビット変換回路３１から送信された画像データではなく、受信した合成画像データが基準画像データに設定される。設定した基準画像データは、閾値設定部４０および合成部５０に送信される。
【００６５】
次に、閾値設定部４０の構成について、図１１を用いて説明する。図１１は、閾値設定部４０の内部構成を示すブロック図である。閾値設定部４０は、閾値仮設定回路４１、画素データ分類回路４２、輪郭抽出回路４３、輪郭比較回路４４、および閾値決定回路４５によって構成される。
【００６６】
基準画像データ設定回路３２は、画素データ分類回路４２に接続される。基準画像データ設定回路３２から送信される基準画像データは、画素データ分類回路４２に送信される。画素データ分類回路４２は閾値仮設定回路４１にも接続され、閾値仮設定回路４１から第１の閾値データを受信する。
【００６７】
なお、閾値仮設定回路４１では、１〜２５４のいずれかのデータレベルが選択され、第１の閾値として設定される。設定された第１の閾値データが画素データ分類回路４２に送信される。
【００６８】
画素データ分類回路４２では、画素データ毎に画素データと第１の閾値とが比較される。画素データのデータレベルが第１の閾値以下である画素データは第１の分類画素に分類される。画素データのデータレベルが第１の閾値より大きい画素データは第２の分類画素に分類される。画素毎の分類結果に対応する分類データが生成される。画素データ分類回路４２は輪郭抽出回路４３に接続され、分類データが輪郭抽出回路４３に送信される。
【００６９】
なお、基準画像データ設定回路３２は、輪郭抽出回路４３にも接続される。基準画像データ設定回路３２から送信される基準画像データは、輪郭抽出回路４３にも送信される。
【００７０】
輪郭回路４３では、基準画像データに相当する画像における被写体の輪郭が基準輪郭として抽出される（図１２参照）。なお、輪郭抽出は、公知のエッジ検出によって実行される。輪郭抽出回路４３では、基準輪郭として抽出された各画素の位置に相当する基準輪郭データが生成される。
【００７１】
また、輪郭抽出回路４３では、分類データに基づいて、第１の分類画素と第２の分類画素とが互いに隣合う位置が検出される。互いに隣合う第１、第２の分類画素によって境界線が形成される（図１３参照）。輪郭抽出回路４３では境界線が比較輪郭として検出される。輪郭抽出回路４３では、比較輪郭として抽出された各画素の位置に相当する比較輪郭データが生成される。
【００７２】
輪郭抽出回路４３は輪郭比較回路４４に接続され（図１１参照）、基準輪郭データと比較輪郭データとが輪郭比較回路４４に送信される。輪郭比較回路４４では、基準輪郭データと比較輪郭データとに基づいて、基準輪郭および比較輪郭両方に位置する画素の数が一致判定値として計測される。
【００７３】
輪郭抽出回路４４は閾値決定回路４５に接続され、一致判定値データが輪郭抽出回路４５から閾値決定回路４５に送信される。閾値決定回路４５は一致判定値データを受信すると、閾値仮設定回路４１から第１の閾値データが読出される。閾値決定回路４５はＲＡＭ（図示せず）を有しており、受信した一致判定値データと読出した第１の閾値データとが互いに関連付けられてＲＡＭに格納される。
【００７４】
閾値決定回路４５は一致判定値データと第１の閾値データとをＲＡＭに格納すると、ＲＡＭに格納した第１の閾値と異なるデータレベルを０〜２５５のいずれかから選択させ、新たな第１の閾値として、閾値仮設定部４１に設定させる。
【００７５】
さらに閾値決定回路４５は画素データ分類回路４２、輪郭抽出回路４３、および輪郭比較回路４４を機能させ、新たな第１の閾値に対する一致判定値データを生成させる。閾値決定回路４５では、新たに生成した一致判定値データがＲＡＭに格納された一致判定値データと比較される。
【００７６】
以後同様に、第１の閾値の再設定、一致判定値データの生成、生成された一致判定値とＲＡＭに格納された一致判定値データとの比較が繰返される。閾値設定部４５では、データレベルが１、２番目に大きい一致判定値データに対応する２つの第１の閾値が、確定閾値に設定される。なお、データレベルがより大きな確定閾値が第１の確定閾値、データレベルがより小さな確定閾値が第２の確定閾値に設定される。
【００７７】
閾値決定回路４５は合成部５０に接続される。第１、第２の確定閾値に相当する第１、第２の確定閾値データが合成部５０に送信される。
【００７８】
次に、合成部５０の構成について、図１４を用いて説明する。図１４は、合成部５０の内部構成を示すブロック図である。合成部５０は、ＤＲＡＭ５１と画像合成回路５２とによって構成される。
【００７９】
前述のように、合成部５０には擬似露出変換回路２３から第１〜第５の露出変換画像データが送信される。擬似露出変換回路２３はＤＲＡＭ５１に接続され、第１〜第５の露出変換画像データはＤＲＡＭ５１に送信される。ＤＲＡＭ５１は、受信した第１〜第５の露出変換画像を格納する。ＤＲＡＭ５１は画像合成回路５２に接続されており、ＤＲＡＭ５１に格納されたデータは画像合成回路５２に送信可能である。
【００８０】
前述のように、合成部５０には閾値決定回路４５から第１、第２の確定閾値データが、基準画像データ設定回路３２から基準画像データが送信される。閾値決定回路４５および基準画像データ設定回路３２は画像合成回路５２に接続され、第１、第２の確定閾値データおよび基準画像データが画像合成回路５２に受信される。
【００８１】
画像合成回路５２では、第１〜第３の評価値の算出、第１〜第３の評価値の平滑化、評価値の正規化、平滑化した第１〜第３の評価値に基づく合成画像データの生成が実行される。
【００８２】
最初に、第１〜第３の評価値の算出について説明する。基準画像データにおけるｘ列ｙ行の画素に対応した第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）が算出される。なお、第１〜第３の評価値はすべての画素に対して算出される。
【００８３】
第１〜第３の評価値を算出するために、基準画像データを構成する画素データのデータレベルＬｖと第１、第２の確定閾値ｔｈ１、ｔｈ２とが比較される。
【００８４】
Ｌｖ＜ｔｈ２の場合、以下の式（１）のように第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）が算出される。
【００８５】
【数１】
2010039886.tif 000003
【００８６】
ｔｈ２≦Ｌｖ≦ｔｈ１の場合、以下の式（２）のように第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）が算出される。
【００８７】
【数２】
2010039886.tif 000004
【００８８】
ｔｈ１＜Ｌｖの場合、以下の式（３）のように第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）が算出される。
【００８９】
【数３】
2010039886.tif 000005
【００９０】
すべての画素に対して第１〜第３の評価値が算出されると、第１〜第３の評価値が平滑化される。すべての画素が順番に注目画素に選択される。図１５に示すように、注目画素ＦＰの第１の評価値Ｅｖ（ｘ、ｙ、１）は、注目画素の周囲５行５列に配置された周囲画素の第１の評価値Ｅｖ（ｘ−２、ｙ−２、１）、Ｅｖ（ｘ−１、ｙ−２、１）、Ｅｖ（ｘ、ｙ−２、１）、Ｅｖ（ｘ＋１、ｙ−２、１）、Ｅｖ（ｘ＋２、ｙ−２、１）、Ｅｖ（ｘ−２、ｙ−１、１）Ｅｖ（ｘ−１、ｙ−１、１）、Ｅｖ（ｘ、ｙ−１、１）、Ｅｖ（ｘ＋１、ｙ−１、１）、Ｅｖ（ｘ＋２、ｙ−１、１）、Ｅｖ（ｘ−２、ｙ、１）、Ｅｖ（ｘ−１、ｙ、１）、Ｅｖ（ｘ＋１、ｙ、１）、Ｅｖ（ｘ＋２、ｙ、１）、Ｅｖ（ｘ−２、ｙ＋１、１）、Ｅｖ（ｘ−１、ｙ＋１、１）、Ｅｖ（ｘ、ｙ＋１、１）、Ｅｖ（ｘ＋１、ｙ＋１、１）、Ｅｖ（ｘ＋２、ｙ＋１、１）、Ｅｖ（ｘ−２、ｙ＋２、１）、Ｅｖ（ｘ−１、ｙ＋２、１）、Ｅｖ（ｘ、ｙ＋２、１）、Ｅｖ（ｘ＋１、ｙ＋２、１）、Ｅｖ（ｘ＋２、ｙ＋２、１）との平均値が、平滑化が１回行なわれた第１の評価値Ｅｖ１（ｘ、ｙ、１）として算出される。
【００９１】
第１〜第３の評価値の１回目の平滑化が終了すると、２回目の平滑化が実行される。再び、すべての画素が順番に注目画素に選択され、選択された注目画素について平滑化が１回行なわれた第１の評価値が、注目画素の周囲の５行５列に配置された周囲画素についての平滑化が１回行なわれた第１の評価値と平均化され、平滑化が２回行なわれた第１の評価値が算出される。
【００９２】
同様にして、平滑化が１０回行なわれる。１０回の平滑化が行なわれた第１の評価値が、第１の平滑化評価値として算出される。同様に、すべての画素に対して第２、第３の平滑化評価値が算出される。
【００９３】
すべての画素に対して第１〜第３の平滑化評価値が算出されると、評価値の正規化が行なわれる。画素毎の第１〜第３の平滑化評価値の合計が１になるように正規化される。例えば、任意の画素の第１、第２、第３の平滑化評価値が０．３、０．７、０．２である場合に、第１〜第３の平滑化評価値の合計値１．２で各評価値を割ることにより、第１〜第３の平滑化評価値は正規化され、第１、第２、第３の正規化評価値Ｅｖ’（ｘ、ｙ、１）、Ｅｖ’（ｘ、ｙ、２）、Ｅｖ’（ｘ、ｙ、３）が０．２５、０．５８、０．１７に算出される。
【００９４】
画像合成回路５２はすべての画素に対して第１〜第３の正規化評価値を算出すると、ＤＲＡＭ５１から第１〜第３の露出段階画像データを読出す。第１、第２、第３の露出段階画像データにおけるｘ列ｙ行の画素の画素データｆ（ｘ、ｙ、１）、ｆ（ｘ、ｙ、２）、ｆ（ｘ、ｙ、３）および第１、第２、第３の正規化評価値Ｅｖ’（ｘ、ｙ、１）、Ｅｖ’（ｘ、ｙ、２）、Ｅｖ’（ｘ、ｙ、３）を用いて、以下の式（４）を算出することにより、合成画像データを構成する画素データである合成画素データｆ（ｘ、ｙ）が算出される。なお、輝度成分ｆ（ｘ、ｙ）は小数点以下を切り捨て、または四捨五入することにより８ビットのデータとなるように計算される。
【００９５】
【数４】
2010039886.tif 000006
【００９６】
すべての画素に対して、合成画素データが算出される。すべての画素の合成画素データを生成することによって、合成画像データが生成される。生成された合成画像データはＤＲＡＭ５１に格納される。
【００９７】
合成画像データがＤＲＡＭ５１に格納されると、ＤＲＡＭ５１は合成画像データを基準画像データ設定回路３２に送信する。前述のように、基準画像データ設定回路３２は受信した合成画像データを新たな基準画像データに設定する。
【００９８】
新たに設定された基準画像データが閾値設定部４０に送信され、前述と同様のデータ処理を施すことにより、第１、第２の確定閾値データが生成される。前述と同様に、生成された第１、第２の確定閾値データが画像合成回路５２に送信される。また、基準画像データ設定回路３２から新たに設定された基準画像データも画像合成回路５２に送信される。
【００９９】
画像合成回路５２では、第１、第２の確定閾値と新たに設定された基準画像データとに基づいて、前述と同様にして、新たな第１〜第３の正規化評価値が算出される。第１〜第３の正規化評価値が算出されると、ＤＲＡＭ５１から第４、第５の露出段階画像データと合成画像データとが画像合成回路５２に読出される。
【０１００】
画像合成回路５２では、第１の露出段階画像データを合成画像データに置換し、第２の露出段階画像データを第４の露出段階画像データに置換し、さらに第３の露出段階画像データを第５の露出段階画像データに置換して上述の式（４）と同様の計算により、新たな合成画素データの輝度成分が算出される。
【０１０１】
すべての画素に対して、新たな合成画素データが生成される。すべての画素の合成画素データを新たに生成することによって、新たな合成画像データが最終合成画像データとして生成される。画像合成回路５２は後段処理回路１２に接続されており、最終合成画像データは後段処理回路１２に送信される。
【０１０２】
前述のように、後段処理回路１２では、前段処理回路１１から送信される元の画像データの色差成分と画像合成回路５２から送信される輝度成分である最終合成画像データとに対して所定のデータ処理が施される。データ処理が施された画像データは合成画像データとしてモニタ６５および外部カードインターフェース６６に送信される。
【０１０３】
次に、画像処理ユニット１０によって行われるＨＤＲ合成処理を、図１６〜図２２のフローチャートを用いて説明する。
【０１０４】
ＨＤＲ合成処理は、使用者による入力部６７へのＨＤＲ合成を実行するコマンドが入力されるとき、開始する。
【０１０５】
図１６に示すように、ステップＳ１００において、Ａ／Ｄコンバータ６３から画像データを受信する。ステップＳ１０１において、受信した画像データに対して輝度・色差変換処理を実行し、各画素に対応する画素データの輝度データ成分および色差データ成分を生成する。
【０１０６】
ステップＳ１０１において全画素に対して輝度データ成分を生成させるとステップＳ２００に進み、露出調整のサブルーチンＳ２００を実行する。ステップＳ２００では後述するように、輝度データ成分の集合である画像データに露出調整処理を施す。露出調整処理により、第１〜第５の露出段階画像データを生成する。
【０１０７】
第１〜第５の露出段階画像データを生成するとステップＳ３００に進み、基準画像設定のサブルーチンＳ３００を実行する。ステップＳ３００では後述するように、以後の処理において用いる基準画像データを設定する。
【０１０８】
基準画像データを設定するとステップＳ４００に進み、閾値設定のサブルーチンＳ４００を実行する。ステップＳ４００では後述するように、ステップＳ３００で設定した基準画像データに基づいて第１、第２の確定閾値を設定する。
【０１０９】
第１、第２の確定閾値を設定するとステップＳ５００に進み、画像合成のサブルーチンＳ５００を実行する。ステップＳ５００では後述するように、ステップＳ２００において生成した第１〜第５の露出段階画像データとステップＳ４００で設定した第１、第２の確定閾値とに基づいて合成画像データを生成する。
【０１１０】
合成画像データを生成するとステップＳ１０２に進む。ステップＳ１０２では、ステップＳ５００で生成した合成画像データが最終合成画像データであるか否かを判別する。最終合成画像データでない場合には、ステップＳ１０３に進む。最終合成画像データである場合には、ステップＳ１０５に進む。
【０１１１】
ステップＳ１０３では、合成画像データをＤＲＡＭ５１に格納する。ＤＲＡＭ５１への合成画像データの格納後、ステップＳ１０４に進む。ステップＳ１０４では、合成画像データを新たな基準画像データに設定する。
【０１１２】
基準画像データの設定後、ステップＳ４００に戻り、再びステップＳ４００、Ｓ５００を繰返す。ステップＳ５００では、最終合成画像データとして合成画像データを生成する。
【０１１３】
最終合成画像データの生成後、ステップＳ１０５において合成画像データである輝度データ成分と色差データ成分とをモニタ６５および外部カードインターフェース６６に送信する。合成画像データの送信後、ＨＤＲ合成処理は終了する。
【０１１４】
次に、前述の露出調整のサブルーチンについて図１７、図１８のフローチャートを用いて説明する。
【０１１５】
ステップＳ２０１では、画像データが８ビットより大きいか否かを判別する（図１７参照）。画像データが８ビットより大きい場合は、以下のステップＳ２０２〜ステップＳ２０７をスキップしてステップＳ２０８に進む。画像データが８ビット以下である場合は、ステップＳ２０２に進む。
【０１１６】
ステップＳ２０２では、画像データを構成する画素データを注目画素データとして選択する。次のステップＳ２０３では、選択した注目画素データに対応する注目画素の周囲５×５の範囲に配置された画素に対応する画素データを周囲画素データに設定する。
【０１１７】
周囲画素データの設定を終えると、ステップＳ２０４に進む。ステップＳ２０４では、注目画素データとすべての周囲画素データとのデータレベルの平均値を局所平均値として算出する。局所平均値の算出を終えると、ステップＳ２０５に進む。ステップＳ２０５では、注目画素データのデータレベルと局所平均値との差に増幅係数を乗じることにより、強調値を算出する。
【０１１８】
強調値を算出すると、ステップＳ２０６に進む。ステップＳ２０６では、強調値と局所平均値とを足した合計値を算出する。元の注目画素データを、算出した合計値をデータレベルとする注目画素データに置換させる。
【０１１９】
注目画素データを置換すると、ステップＳ２０７に進む。ステップＳ２０７では、画像データを構成する全画素に対応する画素データを置換したか否かを判別する。置換していない画素がある場合には、ステップＳ２０２に戻り全画素の画素データを置換するまでステップＳ２０２〜ステップＳ２０７の処理を繰返す。全画素の画素データを置換すると、ステップＳ２０８に進む。
【０１２０】
ステップＳ２０８では、ステップＳ２０１において８ビットより大きいと判別された画像データまたはステップＳ２０６で置換された画素データによって構成される画像データを原画像データとして設定する。
【０１２１】
原画像データの設定後ステップＳ２０９に進む（図１８参照）。ステップＳ２０９では、作成する露出段階画像データの露出段階ｎを１に設定する。
【０１２２】
露出段階ｎを設定するとステップＳ２１０に進む。ステップＳ２１０では、第ｎの露出段階画像データに対して定まる最小輝度レベルＬｍｉｎと最大輝度レベルＬｍａｘを設定する。最小、最大輝度レベルとは、第ｎの露出段階画像データにおける輝度レベルゼロ、２５５に対応する、原画像データにおける輝度レベルである。
【０１２３】
第１の露出段階画像データでは、α×２／５、α×３／５が最小、最大輝度レベルに定められる。また、第２の露出段階画像データでは、α×３／５、α×４／５が最小、最大輝度レベルに定められる。また、第３の露出段階画像データでは、α×１／５、α×２／５が最小、最大輝度レベルに定められる。また、第４の露出段階画像データでは、α×４／５、αが最小、最大輝度レベルに定められる。また、第５の露出段階画像データでは、ゼロ、α×１／５が最小、最大輝度レベルに定められる。
【０１２４】
最小、最大輝度レベルＬｍｉｎ、Ｌｍａｘを設定すると、ステップＳ２１１に進む。ステップＳ２１１では、原画像データから第ｎの露出画像データに変換するための変換係数Ｃｎ（＝（２５５／（α／５）））を算出する。
【０１２５】
変換係数Ｃｎを算出すると、ステップＳ２１２に進む。ステップＳ２１２では原画像データを構成する画素データを順番に選択する。
【０１２６】
画素データを選択すると、ステップＳ２１３に進む。ステップＳ２１３では、選択した画素データのデータレベルＬが最小輝度レベルＬｍｉｎより小さいか否かを判別する。データレベルＬが最小輝度レベルＬｍｉｎより小さい場合はステップＳ２１４に進む。データレベルＬが最小輝度レベルＬｍｉｎ以上である場合はステップＳ２１５に進む。
【０１２７】
ステップＳ２１４では、データレベルがゼロである画素データを、ステップＳ２１２で選択した画素データに対応する第ｎの露出段階画像データにおける画素データとして生成する。画素データの生成後ステップＳ２１８に進む。
【０１２８】
ステップＳ２１５では、選択した画素データのデータレベルＬが最大輝度レベルＬｍａｘより大きいか否かを判別する。データレベルＬが最大輝度レベルＬｍａｘより大きい場合はステップＳ２１６に進む。データレベルＬが最大輝度レベルＬｍａｘ以下である場合はステップＳ２１７に進む。
【０１２９】
ステップＳ２１６では、データレベルが２５５である画素データを、ステップＳ２１２で選択した画素データに対応する第ｎの露出段階画像データにおける画素データとして生成する。画素データの生成後ステップＳ２１８に進む。
【０１３０】
ステップＳ２１７では、ステップＳ２１２で選択した画素データのデータレベルＬから最小輝度レベルＬｍｉｎを減じて、変換係数Ｃｎが乗じられる。この計算により求められる（Ｌ−Ｌｍｉｎ）×Ｃｎをデータレベルとする画素データを、ステップＳ２１２で選択した画素データに対応する第ｎの露出段階画像データにおける画素データとして生成する。画素データの生成後ステップＳ２１８に進む。
【０１３１】
ステップＳ２１８では、原画像データを構成するすべての画素に対して、対応する第ｎの露出段階画像データの画素データを生成したか否かを判別する。すべての画素に対して画素データを生成していない場合には、ステップＳ２１２に戻る。以後、すべての画素に対して第ｎの露出段階画像データを構成する画素データを生成するまでステップＳ２１２〜ステップＳ２１８の処理を繰返す。すべての画素に対して画素データを生成すると第ｎの露出段階画像データの生成を終了し、ステップＳ２１９に進む。
【０１３２】
ステップＳ２１９では、露出段階ｎが５であるか否かを判別する。露出段階ｎが５でない場合はステップＳ２２０に進む。ステップＳ２２０では、露出段階ｎに１をインクリメントする。露出段階ｎに１をインクリメントした後、ステップＳ２１０に戻る。
【０１３３】
以後、ステップＳ２１９において露出段階ｎが５になるまでステップＳ２１０〜ステップＳ２２０の処理を繰返す。ステップＳ２１９において露出段階ｎが５である、すなわち第１〜第５の露出段階画像データの生成終了のときに、露出調整のサブルーチンを終了する。前述のように露出調整のサブルーチンの終了後、基準画像設定のサブルーチンを実行する（図１６参照）。
【０１３４】
次に、前述の基準画像設定のサブルーチンについて図１９のフローチャートを用いて説明する。
【０１３５】
ステップＳ３０１では、ステップＳ１０２で受信した輝度成分が８ビットであるか否かを判別する。８ビットでない場合には、ステップＳ３０２に進む。８ビットの場合には、ステップＳ３０２をスキップしてステップＳ３０３に進む。
【０１３６】
ステップＳ３０２では、ステップＳ１０１で生成した画素データの輝度成分を８ビットに変換する。なお、ステップＳ１０１で生成した画素データの最大のデータレベルをｍ１とすると、画素データの輝度成分に（２５６／ｍ１）を乗じて１を減じることにより、８ビットに変換する。全画素データの輝度成分を８ビットに変換すると、ステップＳ３０３に進む。
【０１３７】
ステップＳ３０３では、ステップＳ１０１で生成した８ビットの画像データまたはステップＳ３０２で８ビットに変換した画像データを基準画像データに設定する。基準画像データの設定の終了後、基準画像設定のサブルーチンは終了する。前述のように、基準画像設定のサブルーチンを終了すると、閾値設定のサブルーチンを実行する（図１６参照）。
【０１３８】
次に、前述の閾値設定のサブルーチンについて図２０のフローチャートを用いて説明する。
【０１３９】
ステップＳ４０１では、第１の閾値ｔｈ１’を１に設定する。第１の閾値ｔ１’の設定後ステップＳ４０２に進み、一致判定値Ｐを０にリセットする。一致判定値Ｐのリセット後ステップＳ４０３に進む。
【０１４０】
ステップＳ４０３では、基準画像データにおいて選択された画素データのデータレベルＬｖが第１の閾値ｔｈ１’以下であるか否かを判別する。データレベルＬｖが第１の閾値ｔｈ１’以下である場合にはステップＳ４０４に進む。データレベルＬｖが第１の閾値ｔｈ１’より大きい場合にはステップＳ４０５に進む。
【０１４１】
ステップＳ４０４では、選択された画素データに対応する画素を第１の分類画素に分類する。ステップＳ４０５では、選択された画素データに対応する画素を第２の分類画素に分類する。ステップＳ４０４またはステップＳ４０５における分類後、ステップＳ４０６に進む。
【０１４２】
ステップＳ４０６では、基準画像データを構成するすべての画素データに対応する画素に対して第１、第２の分類画素への分類が終了したか否かを判別する。すべての画素に対して分類が終了していない場合には、ステップＳ４０３に戻る。以後、すべての画素に対して分類するまでステップＳ４０３〜ステップＳ４０６の処理を繰返す。すべての画素に対する分類を終了、すなわち分類データの生成を完了するとステップＳ４０７に進む。
【０１４３】
ステップＳ４０７では、基準画像データに基づいて基準輪郭と、分類データに基づいて比較輪郭とを検出する。基準輪郭および比較輪郭の位置を検出すると、ステップＳ４０８に進む。
【０１４４】
ステップＳ４０８では、基準画像データを構成する画素データに対応する画素が基準輪郭および比較輪郭上に位置しているか否かを判別する。両輪郭上に位置する画素である場合にはステップＳ４０９に進む。両輪郭上に位置する画素でない場合にはステップＳ４０９をスキップしてステップＳ４１０に進む。
【０１４５】
ステップＳ４０９では、一致判定値Ｐに１をインクリメントしてステップＳ４１０に進む。ステップＳ４１０では、基準画像データを構成する画素データに対応する全画素に対して輪郭上にあるか否かの判別を終了したか否かを判別する。全画素に対する判別を終了していない場合には、ステップＳ４０８に戻る。以後、全画素に対する判別を終了するまでステップＳ４０８〜ステップＳ４１０の処理を繰返す。全画素に対する判別を終了するとステップＳ４１１に進む。
【０１４６】
ステップＳ４１１では、一致判定値Ｐを第１の閾値ｔｈ１’とともにＲＡＭに格納する。一致判定値Ｐの格納後ステップＳ４１２に進む。ステップＳ４１２では、第１の閾値ｔｈ１’が２５４であるか否かを判別する。第１の閾値ｔｈ１’が２５４でない場合にはステップＳ４１３に進む。ステップＳ４１３では第１の閾値ｔｈ１に１をインクリメントしてステップＳ４０２に戻る。以後、第１の閾値ｔｈ１’が２５４になるまでステップＳ４０２〜ステップＳ４１３の処理を繰返す。第１の閾値ｔｈ１’が２５４である場合にステップＳ４１４に進む。
【０１４７】
ステップＳ４１４では、ＲＡＭに格納した一致判定値Ｐの中で最大値である一致判定値と２番目に大きな一致判定値Ｐを検出する。一致判定値Ｐの検出後ステップＳ４１５に進む。
【０１４８】
ステップＳ４１５では、２つの一致判定値Ｐに対応する第１の閾値ｔｈ１’の中でデータレベルが大きな第１の閾値ｔｈ１’を第１の確定閾値ｔｈ１に設定する。また、データレベルが小さな第１の閾値ｔｈ１’を第２の確定閾値ｔｈ２に設定する。
【０１４９】
第１、第２の確定閾値ｔｈ１、ｔｈ２の設定終了後、閾値設定のサブルーチンを終了する。前述のように閾値設定のサブルーチンの終了後、画像合成のサブルーチンを実行する（図１６参照）。
【０１５０】
次に、前述の画像合成のサブルーチンについて図２２、図２３のフローチャートを用いて説明する。
【０１５１】
ステップＳ５０１では、基準画像データを構成する画素データのデータレベルＬｖが第２の確定閾値ｔｈ２未満であるか否かを判別する。データレベルＬｖが第２の確定閾値ｔｈ２未満である場合、ステップＳ５０２に進む。データレベルＬｖが第２の確定閾値ｔｈ２以上である場合ステップＳ５０３において、データレベルＬｖが第１の確定閾値を超えるか否かを判別する。データレベルＬｖが第１の確定閾値ｔｈ１を超える場合、ステップＳ５０４に進む。データレベルＬｖが第１の確定閾値ｔｈ１以下である場合、ステップＳ５０５に進む。
【０１５２】
ステップＳ５０２では、第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）を０、０、１に設定する。ステップＳ５０４では第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）を０、１、０に設定する。ステップＳ５０５では、第１、第２、第３の評価値Ｅｖ（ｘ、ｙ、１）、Ｅｖ（ｘ、ｙ、２）、Ｅｖ（ｘ、ｙ、３）を１、０、０に設定する。
【０１５３】
ステップＳ５０２、ステップＳ５０４、またはステップＳ５０５において第１〜第３の評価値の設定後、ステップＳ５０６に進む。ステップＳ５０６では、基準画像データを構成する画素データに対応する画素すべてに対して第１〜第３の評価値を設定されているか否かを判別する。すべての画素に対する評価値が設定されていない場合はステップＳ５０１に戻り、すべての画素に対する評価値を設定するまでステップＳ５０１〜ステップＳ５０６の処理を繰返す。すべての画素に対する評価値を設定している場合には、ステップＳ５０７に進む。
【０１５４】
ステップＳ５０７では、基準画像データを構成する画素データに対応する任意の画素を注目画素として選択する。注目画素を選択するとステップＳ５０８に進み、注目画素の周囲５×５に位置する画素が周囲画素として設定される。
【０１５５】
周囲画素の設定後、ステップＳ５０９に進む。ステップＳ５０９では、注目画素に対応する第１の評価値を周囲画素に対応する第１の評価値との平均値に置換することにより、注目画素の第１の評価値の平滑化を実行する。また、注目画素対応する第２の評価値を周囲画素に対応する第２の評価値との平均値に置換することにより、注目画素の第２の評価値の平滑化を実行する。また、注目画素対応する第３の評価値を周囲画素に対応する第３の評価値との平均値に置換することにより、注目画素の第３の評価値の平滑化を実行する。
【０１５６】
注目画素の第１〜第３の評価値の平滑化を終了すると、ステップＳ５１０に進む。ステップＳ５１０では、基準画像データを構成する画素データに対応するすべての画素に対して第１〜第３の評価値の平滑化を終了しているか否かを判別する。すべての画素に対する評価値の平滑化を終了していない場合には、ステップＳ５０７に戻る。以後、すべての画素に対する第１〜第３の評価値の平滑化を終了するまでステップＳ５０７〜ステップＳ５１０の処理を繰返す。すべての画素に対して第１〜第３の評価値を平滑化すると、ステップＳ５１１に進む。
【０１５７】
ステップＳ５１１では、評価値の平滑化を１０回行なっているか否かを判別する。平滑化を１０回行なっていない場合には、ステップＳ５０７に戻る。以後、平滑化を１０回行なうまでステップＳ５０７〜ステップＳ５１１の処理を繰返す。平滑化を１０回行なうと、ステップＳ５１２に進む。
【０１５８】
ステップＳ５１２では、基準画像データが合成画像データであるか否かを判別する。基準画像データが合成画像データでない場合には、ステップＳ５１３に進む。基準画像データが合成画像データである場合には、ステップＳ５１５に進む。
【０１５９】
ステップＳ５１３では、第１〜第３の露出段階画像データをＤＲＡＭ５１から読出す。続くステップＳ５１４では、第１の露出段階画像データを中間露出画像データ、第２の露出段階画像データを明露出画像データ、第３の露出画像データを暗露出画像データに設定する。中間、明、暗露出画像データの設定後、ステップＳ５１７に進む。
【０１６０】
ステップＳ５１５では、合成画像データおよび第４、第５の露出段階画像データをＤＲＡＭ５１から読出す。続くステップＳ５１６では、合成画像データを中間露出画像データ、第４の露出段階画像データを明露出画像データ、第５の露出画像データを暗露出画像データに設定する。中間、明、暗露出画像データの設定後、ステップＳ５１７に進む。
【０１６１】
ステップＳ５１７では、基準画像データを構成する画素データに対応する画素毎に第１の評価値と中間露出画像データにおける画素データとの積、第２の評価値と明露出画像データにおける画素データとの積、および第３の評価値と暗露出画像データにおける画素データとの積の合計値を算出する。
【０１６２】
合計値の算出後、ステップＳ５１８に進む。ステップＳ５１８では、合計値をデータレベルとする画素データを合成画像データの画素データとしてＤＲＡＭ５１に格納する。合成画素データの格納後、ステップＳ５１９に進む。
【０１６３】
ステップＳ５１９では、すべての画素に対して合計画素データを格納したか否かを判別する。すべての画素に対して合計画素データを格納していない場合には、ステップＳ５１７に戻る。以後、すべての画素に対して合計画素データを格納するまでステップＳ５１７〜ステップＳ５１９の処理を繰返す。すべての画素に対して合計画素データを格納、すなわち合成画像データの生成が完了すると画像合成のサブルーチンを終了し、ステップＳ１０２に戻る。
【０１６４】
以上のような構成である第１の実施形態の画像処理ユニットによれば、複数回の撮像をすること無くＨＤＲ合成を行うことが可能である。したがって、被写体が動いていてもＨＤＲ合成した画像のブレを低減化することが可能である。
【０１６５】
また、本実施形態では、注目画素と周囲画素の輝度成分との差にゲインを乗じて注目画素の輝度成分と周囲画素の輝度成分の差を拡大することにより、輝度成分の階調を拡大している。このような階調拡大によれば、画一的に輝度成分にゲインを乗じる場合に比べて、輝度レベルの変化を詳細化することが可能となり、撮像した画像全体の中の一部における暗い被写体および明るい被写体も鮮明に表示することが可能である。
【０１６６】
また、本実施形態では、ＨＤＲ画像を構成する一部の画像を第１〜第５の露出段階画像データのいずれを用いるかを判断するための閾値を、基準輪郭に基づいて設定する構成である。したがって、実際の輪郭と画像の切替わりとが重なるので、画像の切替わりの位置を不明瞭にすることが可能である。
【０１６７】
次に、本発明の第２の実施形態を適用した画像処理ユニットについて説明する。なお、第２の実施形態を適用した画像処理ユニットは内視鏡プロセッサに設けられ、動画像に対してＨＤＲ合成を実行する点において第１の実施形態と異なる。以下に、第１の実施形態と異なる点を中心に説明する。なお、第１の実施形態と同じ機能を有する部位には、同じ符号を付する。
【０１６８】
図２４は、第２の実施形態を適用した画像処理ユニットを有する内視鏡プロセッサを含む内視鏡システムの内部構成を概略的に示すブロック図である。内視鏡システム７０は、電子内視鏡７１、内視鏡プロセッサ７２、モニタ６５によって構成される。
【０１６９】
内視鏡プロセッサ７２の光源ユニット７３から出射される照明光が、ライトガイド７４を介して電子内視鏡７１の挿入管７５の先端まで伝達される。伝達された照明光が挿入管７５の先端付近の被写体に照射される。照明光の被写体における反射光が、挿入管７５の先端に設けられる撮像素子６２に受光される。
【０１７０】
撮像素子６２では、１／３０秒のサンプリングタイミングで受光した反射光に応じた画像信号が生成される。画像信号は、内視鏡プロセッサ７２に設けられるＡ／Ｄコンバータ６３により８ビットのデジタルデータである画素データに変換される。
【０１７１】
画素データは画像処理ユニット１００に送信される。画像処理ユニット１００では、所定の画像処理が施される。なお、第１の実施形態と同様に、画像処理ユニット１００はＨＤＲ合成も実行可能である。画像処理の施された画像データはモニタ６５に送信される。モニタ６５には、送信された画像データに相当する画像が表示される。画像データは１／３０秒毎に受信され、表示される画像が１／３０秒毎に切替えられることにより、モニタ６５に動画像が表示される。
【０１７２】
なお、画像処理ユニット１００は、システムコントローラ６４に接続される。画像処理ユニット１００における画像処理は、第１の実施形態と同様に、システムコントローラ６４によって制御される。システムコントローラ６４は内視鏡システム７０の他の部位にも接続され、他の部位の動作も制御する。また、第１の実施形態と同様に、システムコントローラ６４は入力部６７に接続される。使用者による入力部６７へのコマンド入力に基づいて、システムコントローラ６４は内視鏡システム７０の各部位を制御する。
【０１７３】
画像処理ユニット１００の構成について図２５を用いて説明する。画像処理ユニット１００は、前段処理回路１１、露出調整部２０、基準画像設定部３０、閾値設定部４００、合成部５０、および後段処理回路１２によって構成される。
【０１７４】
第１の実施形態同様、Ａ／Ｄコンバータ６３から送信される画像データは、前段処理回路１１に受信される。前段処理回路１１および後段処理回路１２の構成および機能は第１の実施形態と同じである。したがって、前段処理回路１１では、画像データに対して輝度／色差変換処理を含む所定のデータ処理が施される。また、ＨＤＲ合成を実行しない場合には、前段処理回路１１から後段処理回路１２に画像データが送信され、所定のデータ処理が施される。
【０１７５】
第１の実施形態と同様、前段処理回路１１は露出調整部２０および基準画像設定部３０にも接続される。ＨＤＲ合成を実行する場合には、前段処理回路１１からは画像データの色差成分が後段処理回路１２に送信され、画像データの輝度成分は露出調整部２０および基準画像設定部３０に送信される。
【０１７６】
第１の実施形態と同じく、露出調整部２０では、受信した画像データに基づいて、第１〜第５の露出段階画像データが生成される。また、第１の実施形態と同じく、露出調整部２０は合成部５０に接続され、第１〜第５の露出段階画像データは合成部５０に送信される。
【０１７７】
第１の実施形態と同じく、基準画像設定部３０では、基準画像データが設定される。第１の実施形態と同じく、基準画像設定部３０は閾値設定部４００および合成部５０に接続され、設定された基準画像データが閾値設定部４００および合成部５０に送信される。
【０１７８】
閾値設定部４００では、第１、第２の確定閾値が設定される。なお、後述するように、第１の実施形態と異なり、第１、第２の確定閾値は以前のフレームの画像データに対して定められる確定閾値に基づいて設定される。第１の実施形態と同じく、閾値設定部４００は合成部５０に接続され、設定した第１、第２の確定閾値データが合成部５０に送信される。
【０１７９】
第１の実施形態と同様に、合成部５０では受信した第１〜第５の露出段階画像データ、基準画像データ、および第１、第２の確定閾値データに基づいて、合成画像データが生成される。第１の実施形態と同じく、合成部５０は後段処理回路１２に接続され、合成画像データが後段処理部１２に送信される。
【０１８０】
次に、第１の実施形態と異なる閾値設定部４００の更に詳細な構成および機能について説明する。なお、露出調整部２０、基準画像設定部３０、および合成部５０の内部構成および機能は第１の実施形態と同じである。
【０１８１】
図２６は、閾値設定部４００の内部構成を示すブロック図である。第１の実施形態と同じく、閾値設定部４００には、閾値仮設定回路４１、画素データ分類回路４２、輪郭抽出回路４３、輪郭比較回路４４、および閾値決定回路４５が設けられる。第１の実施形態と異なり、閾値設定部４００には、閾値メモリ４６が設けられる。
【０１８２】
閾値メモリ４６は、閾値仮設定回路４１および閾値決定回路４５に接続される。閾値メモリ４６には、後述するように、第１〜第４の格納閾値データが格納される。第１〜第４の格納閾値データが閾値仮設定回路４１に送信される。なお、内視鏡プロセッサ７０の電源をＯＮにしたときに、画像メモリ４６はリセットされ、格納されるデータは消去される。
【０１８３】
閾値メモリ４６に格納閾値データが格納されていない場合には、第１の実施形態と同じく閾値仮設定部４１は１〜２５４のいずれかのデータレベルが選択され、第１の閾値として設定される。
【０１８４】
第１の実施形態と同じく、閾値仮設定部４１により設定された第１の閾値に基づいて、画素データ分類回路４２による第１、第２の分類画素への分類、輪郭抽出回路４３による基準輪郭および比較輪郭の抽出、輪郭比較回路４４による一致判定値の算出、閾値決定回路４５による第１、第２の確定閾値の決定が行なわれる。第１の実施形態と同じく、決定した第１、第２の確定閾値は合成部５０に送信される。
【０１８５】
第１の実施形態と異なり、閾値決定部４５が第１、第２の確定閾値を決定するときに、第１、第２の確定閾値データは閾値メモリ４６に送信され、第１、第２の格納閾値データとして閾値メモリ４６に格納される。
【０１８６】
また、基準画像データが合成画像データである場合には、閾値決定部４５が第１、第２の確定閾値を決定するときに、第１、第２の確定閾値データは閾値メモリ４６に送信され、第３、第４の格納閾値データとして閾値メモリ４６に格納される。
【０１８７】
なお、閾値メモリ４６には１〜５フレーム前の画像データに対して設定された第１〜第４の格納閾値データが格納される。
【０１８８】
閾値メモリ４６に格納閾値データが格納されている場合には、以下に説明するように第１の実施形態と異なる方法により第１、第２の確定閾値が決定される。
【０１８９】
８ビット変換回路３１から送信された画像データが基準画像データに設定されると、閾値メモリ４６からは１〜５フレーム前の画像データに対して設定された第１の格納閾値データが閾値仮設定部４１に送信される。閾値仮設定部４１では、直近のフレームほど大きな重み付けをした第１の格納閾値の平均値を第１の閾値ｔｈ１’として設定する。
【０１９０】
例えば、第１の閾値は、以下の式（５）により計算される。
【０１９１】
ｔｈ１’＝（ａ×ｔｈ１ｆ１＋ｂ×ｔｈ１ｆ２＋ｃ×ｔｈ１ｆ３＋ｄ×ｔｈ１ｆ４＋ｅ×ｔｈ１ｆ５）／（ａ＋ｂ＋ｃ＋ｄ＋ｅ）  （５）
【０１９２】
ｔｈ１ｆ１〜ｔｈ１ｆ５は、１〜５フレーム前の画像データに対して設定された第１の格納閾値である。また、ａ≧ｂ≧ｃ≧ｄ≧ｅとする。
【０１９３】
閾値仮設定部４１が第１の閾値を設定すると、設定された第１の閾値に基づいて、第１の実施形態と同様に、画素データ分類回路４２による第１、第２の分類画素への分類、輪郭抽出回路４３による基準輪郭および比較輪郭の抽出、輪郭比較回路４４による一致判定値の算出、および閾値決定回路４５による第１の閾値データと関連付けた一致判定値データのＲＡＭへの格納が行なわれる。
【０１９４】
第１の実施形態と異なり、閾値決定回路４５が一致判定値データと第１の閾値データとをＲＡＭに格納すると、ＲＡＭに格納した第１の閾値±５の範囲内のデータレベルを新たな第１の閾値として閾値仮設定部４１に設定させる。
【０１９５】
第１の実施形態と同様に、閾値決定回路４５は画素データ分類回路４２、輪郭抽出回路４３、および輪郭比較回路４４を機能させ、新たな第１の閾値に対する一致判定値データを生成させる。同様に、閾値決定回路４５は、最初に設定した第１の閾値±５の範囲内のデータレベルの第１の閾値に対して求められた一致判定値データを生成させる。
【０１９６】
閾値決定回路４５は、最大となる一致判定値に関連付けられた第１の閾値を第１の確定閾値に決定する。第１の確定閾値を決定すると第１の確定閾値データが合成部５０に送信される。また、第１の確定閾値データが閾値決定回路４５から閾値メモリ４６に送信され、第１の格納閾値として格納される。
【０１９７】
第１の確定閾値データの合成部５０への送信が終わると、閾値メモリ４６から１〜５フレーム前の画像データに対して設定された第２の格納閾値データが閾値仮設定部４１に送信される。以後、第１の確定閾値を決定するときと同様に、一致判定値が最大となる第１の閾値が第２の確定閾値に決定される。
【０１９８】
第２の確定閾値を決定すると第２の確定閾値データが合成部５０に送信される。また、第２の確定閾値データが閾値決定回路４５から閾値メモリ４６に送信され、第２の格納閾値として格納される。
【０１９９】
第１の実施形態と同じく、合成部５０において第１〜第３の露出段階画像データおよび第１、第２の確定閾値に基づいて合成画像データが生成され、生成された合成画像データが基準画像設定部３０に送信される。合成画像データが基準画像データに設定されると、合成画像データと第４、第５の露出段階画像データに基づく合成画像データを生成するための第１、第２の確定閾値が、閾値設定部４００により決定される。
【０２００】
合成画像データが基準画像データに設定されると、閾値メモリ４６からは１〜５フレーム前の画像データに対して設定された第３の格納閾値データが閾値仮設定部４１に送信される。以後、８ビット変換回路３１から送信される画像データが基準画像データとするときの第１の確定閾値を決定するときと同様に、一致判定値が最大となる第１の閾値が合成画像データを基準画像データとするときの第１の確定閾値に決定される。
【０２０１】
第１の確定閾値を決定すると第１の確定閾値データが合成部５０に送信される。また、第２の確定閾値データが閾値決定回路４５から閾値メモリ４６に送信され、第３の格納閾値として格納される。
【０２０２】
第１の確定閾値データの合成部５０への送信が終わると、閾値メモリ４６から１〜５フレーム前の画像データに対して設定された第４の格納閾値データが閾値仮設定部４１に送信される。以後、第１の確定閾値を決定するときと同様に、一致判定値が最大となる第１の閾値が第２の確定閾値に決定される。
【０２０３】
第２の確定閾値を決定すると第２の確定閾値データが合成部５０に送信される。また、第２の確定閾値データが閾値決定回路４５から閾値メモリ４６に送信され、第４の格納閾値として格納される。
【０２０４】
第１の実施形態と同じく、合成部  において合成画像データ、第４、第５の露出段階画像データ、および第１、第２の確定閾値に基づいて新たな合成画像データが最終合成画像データとして生成される。第１の実施形態と同じく、最終合成画像データが後段処理回路  に送信される。
【０２０５】
第１の実施形態と同じく、後段処理回路１２では、前段処理回路１１から送信される元の画像データの色差成分と画像合成回路５２から送信される輝度成分とに所定のデータ処理が施される。所定のデータ処理が施された画像データは合成画像データとしてモニタ６５に送信される。
【０２０６】
次に、画像処理ユニット４００によって行なわれるＨＤＲ合成処理を、図２７〜図３０のフローチャートを用いて説明する。
【０２０７】
ＨＤＲ合成処理は、内視鏡システム７０において被写体の観察モードであるときにＨＤＲ合成を実行するコマンドが入力されるときに、開始する。また、ＨＤＲ合成を解除するコマンド入力、または観察モードを終了するときに、ＨＤＲ合成処理を終了する。
【０２０８】
図２７に示すように、ステップＳ１００〜サブルーチンＳ３００までは、第１の実施形態と同じ処理を実行し、第１〜第５の露出段階画像データを生成し、基準画像データを設定する。基準画像データを設定すると、第２の実施形態では、第１の実施形態における閾値設定のサブルーチンＳ４００の代わりに、閾値設定のサブルーチンＳ６００を実行する。
【０２０９】
閾値設定のサブルーチンＳ６００において第１、第２の確定閾値を設定するとステップＳ５００に進む。ステップＳ５００では、第１の実施形態と同じ処理を実行し合成画像データを生成する。
【０２１０】
合成画像データ生成以後、第１の実施形態と同じステップＳ１０２〜ステップＳ１０５の処理を繰返す。第１の実施形態と異なり、合成画像データのモニタ６５への送信後、ステップＳ１００に戻り、前述のようにＨＤＲ合成処理が終了するまで、ステップＳ１００〜ステップＳ１０５の処理を繰返す。
【０２１１】
次に、閾値設定のサブルーチンＳ６００について、図２８〜図３０のフローチャートを用いて説明する。
【０２１２】
ステップＳ６０１では、閾値メモリ４６に第１〜第４の格納閾値すべてが格納されているか否かを判別する（図２８参照）。すべてが格納されていない場合には、ステップＳ６０２に進む。すべて格納されている場合には、ステップＳ６０４に進む。
【０２１３】
ステップＳ６０２では、格納判定フラッグＦｍを０に設定する。続くステップＳ６０３では、第１の閾値ｔｈ１’を１に設定する。第１の閾値ｔ１’の設定後、ステップＳ６１８に進む。
【０２１４】
ステップＳ６０４では、格納判定フラッグＦｍを１に設定する。格納判定フラッグの設定後、ステップＳ６０５に進む。
【０２１５】
ステップＳ６０５では、格納閾値番号フラッグＦｓが１であるか否かを判別する。格納閾値番号フラッグＦｓが１である場合には、ステップＳ６０６に進む。格納閾値番号フラッグＦｓが１でない場合には、ステップＳ６０８に進む。
【０２１６】
ステップＳ６０６では、閾値メモリ４６に格納した第１の格納閾値データを読出す。続くステップＳ６０７では、第１の格納閾値データに基づいて最初の第１の閾値ｔｈ１’を設定する。第１の閾値ｔｈ１’の設定後、ステップＳ６１７に進む。
【０２１７】
ステップＳ６０８では、格納閾値番号フラッグＦｓが２であるか否かを判別する。格納閾値番号フラッグＦｓが２である場合には、ステップＳ６０９に進む。格納閾値番号フラッグＦｓが２でない場合には、ステップＳ６１１に進む。
【０２１８】
ステップＳ６０９では、閾値メモリ４６に格納した第２の格納閾値データを読出す。続くステップＳ６１０では、第２の格納閾値データに基づいて最初の第１の閾値ｔｈ１’を設定する。第１の閾値ｔｈ１’の設定後、ステップＳ６１７に進む。
【０２１９】
ステップＳ６１１では、格納閾値番号フラッグＦｓが３であるか否かを判別する。格納閾値番号フラッグＦｓが３である場合には、ステップＳ６１２に進む。格納閾値番号フラッグＦｓが３でない場合には、ステップＳ６１４に進む。
【０２２０】
ステップＳ６１２では、閾値メモリ４６に格納した第３の格納閾値データを読出す。続くステップＳ６１３では、第３の格納閾値データに基づいて最初の第１の閾値ｔｈ１’を設定する。第１の閾値ｔｈ１’の設定後、ステップＳ６１７に進む。
【０２２１】
ステップＳ６１４では、閾値メモリ４６に格納した第４の格納閾値データを読出す。続くステップＳ６１５では、第４の格納閾値データに基づいて最初の第１の閾値ｔｈ１’を設定する。さらに、続くステップＳ６１６では、格納閾値番号フラッグＦｓを０にリセットする。格納番号フラッグＦｓのリセット後、ステップＳ６１７に進む。
【０２２２】
ステップＳ６０７、ステップＳ６１０、ステップＳ６１３、またはステップＳ６１６に続くステップＳ６１７では、格納閾値番号フラッグＦｓに１をインクリメントする。インクリメント完了後、ステップＳ６１８に進む。
【０２２３】
ステップＳ６０３またはステップＳ６１７に続くステップＳ６１８では、一致判定値Ｐを０にリセットする。一致判定値Ｐのリセット後ステップＳ６１９に進む。
【０２２４】
ステップＳ６１９では、基準画像データにおいて選択された画素データのデータレベルＬｖが第１の閾値ｔｈ１’以下であるか否かを判別する。データレベルＬｖが第１の閾値ｔｈ１’以下である場合にはステップＳ６２０に進む。データレベルＬｖが第１の閾値ｔｈ１’より大きい場合にはステップＳ６２１に進む。
【０２２５】
ステップＳ６２０では、選択された画素データに対応する画素を第１の分類画素に分類する。ステップＳ６２１では、選択された画素データに対応する画素を第２の分類画素に分類する。ステップＳ６２０またはステップＳ６２１における分類後、ステップＳ６２２に進む。
【０２２６】
ステップＳ６２２では、基準画像データを構成するすべての画素データに対応する画素に対して第１、第２の分類画素への分類が終了したか否かを判別する。すべての画素に対して分類が終了していない場合には、ステップＳ６１９に戻る。以後、すべての画素に対して分類するまでステップＳ６１９〜ステップＳ６２２の処理を繰返す。すべての画素に対する分類を終了、すなわち分類データの生成を完了するとステップＳ６２３に進む。
【０２２７】
ステップＳ６２３では、基準画像データに基づいて基準輪郭と、分類データに基づいて比較輪郭とを検出する。基準輪郭および比較輪郭の位置を検出すると、ステップＳ６２４に進む。
【０２２８】
ステップＳ６２４では、基準画像データを構成する画素データに対応する画素が基準輪郭および比較輪郭上に位置しているか否かを判別する。両輪郭上に位置する画素である場合にはステップＳ６２５に進む。両輪郭上に位置する画素でない場合にはステップＳ６２５をスキップしてステップＳ６２６に進む。
【０２２９】
ステップＳ６２５では、一致判定値Ｐに１をインクリメントしてステップＳ６２６に進む。ステップＳ６２６では、基準画像データを構成する画素データに対応する全画素に対して輪郭上にあるか否かの判別を終了したか否かを判別する。
【０２３０】
全画素に対する判別を終了していない場合には、ステップＳ６２４に戻る。以後、全画素に対する判別を終了するまでステップＳ６２４〜ステップＳ６２６の処理を繰返す。全画素に対する判別を終了するとステップＳ６２７に進む。ステップＳ６２７では、一致判定値Ｐを第１の閾値ｔｈ１’とともにＲＡＭに格納する。一致判定値Ｐの格納後ステップＳ６２８に進む。
【０２３１】
ステップＳ６２８では、格納判定フラッグＦｍが１であるか否かを判別する。格納判定フラッグＦｍが１でない場合には、ステップＳ６２９に進む。格納判定フラッグＦｍが１である場合には、ステップＳ６３３に進む。
【０２３２】
ステップＳ６２９では、第１の閾値ｔｈ１’が２５４であるか否かを判別する。第１の閾値ｔｈ１’が２５４でない場合にはステップＳ６３０に進む。ステップＳ６３０では第１の閾値ｔｈ１に１をインクリメントしてステップＳ６１８に戻る。以後、第１の閾値ｔｈ１’が２５４になるまでステップＳ６１８〜ステップＳ６３０の処理を繰返す。第１の閾値ｔｈ１’が２５４である場合にステップＳ６３１に進む。
【０２３３】
ステップＳ６３１では、ＲＡＭに格納した一致判定値Ｐの中で最大値である一致判定値と２番目に大きな一致判定値Ｐを検出する。一致判定値Ｐの検出後ステップＳ６３２に進む。
【０２３４】
ステップＳ６３２では、２つの一致判定値Ｐに対応する第１の閾値ｔｈ１’の中でデータレベルが大きな第１の閾値ｔｈ１’を第１の確定閾値ｔｈ１に設定する。また、データレベルが小さな第１の閾値ｔｈ１’を第２の確定閾値ｔｈ２に設定する。第１、第２の確定閾値ｔｈ１、ｔｈ２の設定後、ステップＳ６４０に進む。
【０２３５】
ステップＳ６２８からステップＳ６３３に進むと、ステップＳ６０７、ステップＳ６１０、ステップＳ６１３、またはステップＳ６１５において最初に設定した第１の閾値ｔｈ１’から±５の範囲内すべてのデータレベルを第１の閾値ｔｈ１’として設定したか否かを判別する。範囲内すべてにおいて第１の閾値ｔｈ１’を設定していない場合にはステップＳ６３４に進む。範囲内すべてにおいて第１の閾値ｔｈ１’を設定している場合にはステップＳ６３５に進む。
【０２３６】
ステップＳ６３４では、最初に設定した第１の閾値ｔｈ１’から±５の範囲内で、まだ設定していないデータレベルを第１の閾値ｔｈ１’に設定する。第１の閾値ｔｈ１’の設定後、ステップＳ６１８に戻る。以後、すべての範囲において第１の閾値ｔｈ１’に設定するまでステップＳ６１８〜ステップＳ６３４の処理を繰返す。
【０２３７】
ステップＳ６３５では、ＲＡＭに格納した一致判定値Ｐの中で最大値である一致判定値を検出する。続くステップＳ６３６では、格納閾値番号フラッグＦｓが２または４であるか否かを判別する。格納閾値番号フラッグＦｓが２または４である場合には、ステップＳ６３７に進む。格納閾値番号フラッグＦｓが２または４でない、すなわち１または３である場合には、ステップＳ６３８に進む。
【０２３８】
ステップＳ６３７では、ステップＳ６３５において検出した一致判定値Ｐに対応する第１の閾値ｔｈ１’を第１の確定閾値ｔｈ１に設定する。ステップＳ６３８では、ステップＳ６３５において検出した一致判定値Ｐに対応する第１の閾値ｔｈ１’を第２の確定閾値ｔｈ２に設定する。ステップＳ６３７またはステップＳ６３８の終了後、ステップＳ６３９に進む。
【０２３９】
ステップＳ６３９では、第１、第２の確定閾値ｔｈ１、ｔｈ２両方の設定が終わっているか否かを判別する。両方の設定が終わっていない場合には、ステップＳ６０５に戻る。以後、両方の設定が終わるまで、ステップＳ６０５〜ステップＳ６３９の処理を繰返す。両方の設定が終わっている場合には、ステップＳ６４０に進む。
【０２４０】
ステップＳ６３２の完了後、またはステップＳ６３９において第１、第２の確定閾値ｔｈ１、ｔｈ２の設定後のステップＳ６４０において、第１、第２の確定閾値をｔｈ１、ｔｈ２を閾値メモリ４６に格納する。閾値メモリ４６の格納終了後、閾値設定のサブルーチンＳ６００を終了する。第１の実施形態と同じく閾値設定のサブルーチンの終了後、画像合成のサブルーチンを実行する。
【０２４１】
以上のような構成である第２の実施形態の画像処理ユニットによれば、第１の実施形態と同じく複数回の撮像をすること無くＨＤＲ合成を行うことが可能である。したがって、本実施形態のように連続的に画像データが生成される動画像の撮像においてもＨＤＲ画像のブレを低減化することが可能である。
【０２４２】
また、第２の実施形態の画像処理ユニット１００によれば、第１の実施形態と同じく、画一的に輝度成分にゲインを乗じる場合に比べて、輝度レベルの変化を詳細化することが可能となり、撮像した画像全体の中の一部における暗い被写体および明るい被写体も鮮明に表示することが可能である。
【０２４３】
また、第２の実施形態の画像処理ユニット１００によれば、第１の実施形態と同じく閾値を基準輪郭に基づいて設定するので、実際の輪郭と画像の切替わりとが重なり、画像の切替わりの位置を不明瞭にすることが可能である。
【０２４４】
さらに、第２の実施形態の画像処理ユニット１００では、閾値仮設定部４１が、以前に生成された画像データに対して設定された閾値に基づいて、第１の閾値を設定するので、表示する画像の切替わり時に、任意の領域に対して用いられる露出段階画像データが急激に変化することが無い。したがって、動画像の表示時に、任意の領域において露出段階の急激な変化を防止することが可能である。
【０２４５】
なお、第１、第２の実施形態において、擬似露出変換回路２３は、原画像データのデータレベルの全段階をを５分割して、分割したそれぞれのデータレベルを最小、最大とする露出段階画像データを生成する構成であるが、５分割に限られない。２分割以上であれば何分割であってもよい。
【０２４６】
また、第１、第２の実施形態において、擬似露出変換回路２３は、原画像データの全データレベルに対していずれかの露出段階画像データにおける０〜２５５のいずれかのデータレベルに変換する構成であるが、原画像データの全データレベルに対して露出段階画像データに変換しなくてもよい。例えば、第１、第２の実施形態の原画像データにおけるα×２／５〜（α×３／５−１）のデータレベルを第１の露出段階画像データに変換し、原画像データにおける（α×３／５＋１）〜α×４／５のデータレベルを第２の露出段階画像データに変換する構成であってもよい。
【０２４７】
あるいは、原画像データの一部のデータレベルを重複して、別の露出段階画像データに変換してもよい。例えば、第１、第２の実施形態の原画像データにおけるα×２／５〜（α×３／５＋１）のデータレベルを第１の露出段階画像データに変換し、原画像データにおける（α×３／５−１）〜α×４／５のデータレベルを第２の露出段階画像データに変換する構成であってもよい。
【０２４８】
また、第１、第２の実施形態において、単一の露出段階画像データに変換される原画像データにおけるデータレベルの範囲は、α／５ですべての露出段階画像データに対して一定であるが、露出段階毎に異なっていてもよい。
【０２４９】
また、第１、第２の実施形態において、露出段階画像データのデータレベルは０〜２５５段階のいずれかになるように変換される構成であるが、最小段階が０でなくてもよく、最大段階は合成画像データの最大のデータレベル以下であればいかなる段階であってもよい。さらに、露出段階画像データ毎に最小段階および最大段階が異なっていてもよい。
【０２５０】
また、第１、第２の実施形態において、８ビット変換回路３１により８ビットに変換した画像データを基準画像データに設定する構成であるが、８ビットへの変換に限られない。任意の最大段階のデータレベルのデータに変換されてもよい。ただし、基準画像データの階調がｍ４である場合には閾値仮設定回路４１による第１の閾値は、データレベルの第１段階からｍ４段階までの範囲内で設定されることが好ましい。
【０２５１】
また、第１、第２の実施形態において、８ビットより大きな画像データを用いて８ビットの合成画像データを生成可能な構成であるが、少なくとも合成画像データのデータレベルの最大変化段階以下のデータレベルの画像データに基づいて、合成画像データを生成できれば、第１、第２の実施形態と同様の効果が得られる。
【０２５２】
また、第１、第２の実施形態において、Ａ／Ｄコンバータ６３により８ビット、すなわち２５６段階のデータレベルに変換される構成であるが何段階のデータレベルに変換されてもよい。
【０２５３】
また、第１、第２の実施形態において、合成画像データは８ビット、すなわち２５６段階のデータレベルであるが、２５６段階のデータレベルに限られず、ｍ２段階のデータレベルの合成画像データが生成されてもよい。合成画像データのデータレベルは、合成画像データを出力するモニタ６５などの外部機器の規格に応じて定めればよい。
【０２５４】
また、第１、第２の実施形態において、画像合成回路５２では、任意の注目画素における評価値を５×５の範囲にある周囲画素における評価値と１０回の平均化により、第１〜第３の評価値の平滑化を実行する構成であるが、注目画素の周囲のいずれの画素を周囲画素としてもよいし、平均化を何回行なってもよい。
【０２５５】
さらには、平滑化は他の方法により行ってもよい。注目画素における第１〜第３の評価値と周囲画素における第１〜第３の評価値の変化率を低下させるいかなる方法によって平滑化してもよい。
【０２５６】
さらには、平滑化をしなくてもよい。平滑化を行なわなくても、複数の撮像を行なうこと無くＨＤＲ画像を作成することが可能である。ただし、ＨＤＲ画像中の部分的な領域において異なる露出段階画像データを用いた境界を不明瞭にするためには、平滑化を行なうことが好ましい。
【０２５７】
また、第１、第２の実施形態において、平滑化した第１〜第３の評価値は合計が１に正規化される構成であるが、正規化をしなくてもよい。ただし、正規化により、単一の画素の表示に対する違和感が低減化される。
【０２５８】
また、第１、第２の実施形態において、階調拡大回路２１では、元の画像データのデータレベルの変化段階より、拡大後のデータレベルの段階が増加していればよく、特定の段階に拡大されなくてもよい。
【０２５９】
また、第１、第２の実施形態において、階調拡大回路２１を用いて、注目画素に対して定められる周囲画素との画素データの平均値と注目画素の画素データとの差分を増幅して平均値に足すことにより、データレベルを拡大する構成であるが、他の方法により拡大してもよい。
【０２６０】
また、第１、第２の実施形態において、基準画像データ設定部３２は、前段処理回路１１から送信される画像データを８ビットの画像データに変換する構成であるが、階調拡大回路２１から出力される画像データを受信して、８ビットの画像データに変換する構成であってもよい。
【０２６１】
また、第１、第２の実施形態において、輪郭比較回路４４は基準輪郭と比較輪郭との両方に位置する画素の数を一致判定値として計測する構成であるが、基準輪郭と比較輪郭との一致性を示す他のいかなる判定値を計測する構成であってもよい。
【０２６２】
また、第２の実施形態において、任意のフレームの画像データから合成画像データを生成させるときに、１〜５フレーム前の画像データから合成画像データを生成したとき確定閾値を用いて第１の閾値を設定する構成であるが、単一のフレームでもよく、また幾つ前のフレームに対応する確定閾値を用いてもよい。
【０２６３】
また、第２の実施形態において、１〜５フレーム前の合成画像データに対応する確定閾値に重み付けを施して平均化する構成であるが、重み付けを施さなくてもよい。ただし、重み付けを施すことにより、直近のフレームに対応する確定閾値がより大きく影響を及ぼすことが可能である。
【０２６４】
また、第１、第２の実施形態を適用した画像処理ユニットは、汎用の画像処理装置に合成画像作成プログラムを読込ませて構成することも可能である。
【図面の簡単な説明】
【０２６５】
【図１】本発明の第１の実施形態を適用した画像処理ユニットを有するデジタルカメラの内部構成を概略的に示すブロック図である。
【図２】第１の実施形態の画像処理ユニットの内部構成を概略的に示すブロック図である。
【図３】露出調整部の内部構成を概略的に示すブロック図である。
【図４】原画像データを構成する画素データの輝度成分に関するヒストグラムである。
【図５】原画像データから第１の露出段階画像データへの変換関係を示すヒストグラムである。
【図６】原画像データから第２の露出段階画像データへの変換関係を示すヒストグラムである。
【図７】原画像データから第３の露出段階画像データへの変換関係を示すヒストグラムである。
【図８】原画像データから第４の露出段階画像データへの変換関係を示すヒストグラムである。
【図９】原画像データから第５の露出段階画像データへの変換関係を示すヒストグラムである。
【図１０】基準画像設定部の内部構成を概略的に示すブロック図である。
【図１１】第１の実施形態の露出設定部の内部構成を概略的に示すブロック図である。
【図１２】基準画像データに相当する画像における基準輪郭を示す図である。
【図１３】分類データに相当する画像における第１、第２の分類画素の境界線を示す図である。
【図１４】合成部の内部構成を概略的に示すブロック図である。
【図１５】注目画素における第１の評価値を周囲画素における第１の評価値を用いて平滑化する概念を示す図である。
【図１６】第１の実施形態の画像処理ユニットが実行するＨＤＲ合成処理を説明するフローチャートである。
【図１７】露出調整のサブルーチンを示す第１のフローチャートである。
【図１８】露出調整のサブルーチンを示す第２のフローチャートである。
【図１９】基準画像設定のサブルーチンを示すフローチャートである。
【図２０】第１の実施形態における閾値設定のサブルーチンを示す第１のフローチャートである。
【図２１】第１の実施形態における閾値設定のサブルーチンを示す第２のフローチャートである。
【図２２】画像合成のサブルーチンを示す第１のフローチャートである。
【図２３】画像合成のサブルーチンを示す第２のフローチャートである。
【図２４】本発明の第２の実施形態を適用した画像処理ユニットを有する内視鏡プロセッサを含む内視鏡システムの内部構成を概略的に示すブロック図である。
【図２５】第２の実施形態の画像処理ユニットの内部構成を概略的に示すブロック図である。
【図２６】第２の実施形態の閾値設定部の内部構成を概略的に示すブロック図である。
【図２７】第２の実施形態の画像処理ユニットが実行するＨＤＲ合成処理を説明するフローチャートである。
【図２８】第２の実施形態における閾値設定のサブルーチンを示す第１のフローチャートである。
【図２９】第２の実施形態における閾値設定のサブルーチンを示す第２のフローチャートである。
【図３０】第２の実施形態における閾値設定のサブルーチンを示す第３のフローチャートである。
【符号の説明】
【０２６６】
１０  画像処理ユニット
１１  前段処理回路
１２  後段処理回路
２０  露出調整部
２１  階調拡大回路
２２  原画像データ設定回路
２３  擬似露出変換回路
３０  基準画像設定部
３１  ８ビット変換回路
３２  基準画像データ設定回路
４０、４００  閾値設定部
４１  閾値仮設定回路
４２  画素データ分類回路
４３  輪郭抽出回路
４４  輪郭比較回路
４５  閾値決定回路
４６  閾値メモリ
５０  合成部
５１  ＤＲＡＭ
５２  画像合成回路
６３  Ａ／Ｄコンバータ
６５  モニタ
６６  外部カードインターフェース
【図１】
2010039886.tif 000007
【図２】
2010039886.tif 000008
【図３】
2010039886.tif 000009
【図４】
2010039886.tif 000010
【図５】
2010039886.tif 000011
【図６】
2010039886.tif 000012
【図７】
2010039886.tif 000013
【図８】
2010039886.tif 000014
【図９】
2010039886.tif 000015
【図１０】
2010039886.tif 000016
【図１１】
2010039886.tif 000017
【図１２】
2010039886.tif 000018
【図１３】
2010039886.tif 000019
【図１４】
2010039886.tif 000020
【図１５】
2010039886.tif 000021
【図１６】
2010039886.tif 000022
【図１７】
2010039886.tif 000023
【図１８】
2010039886.tif 000024
【図１９】
2010039886.tif 000025
【図２０】
2010039886.tif 000026
【図２１】
2010039886.tif 000027
【図２２】
2010039886.tif 000028
【図２３】
2010039886.tif 000029
【図２４】
2010039886.tif 000030
【図２５】
2010039886.tif 000031
【図２６】
2010039886.tif 000032
【図２７】
2010039886.tif 000033
【図２８】
2010039886.tif 000034
【図２９】
2010039886.tif 000035
【図３０】
2010039886.tif 000036