(57)【要約】      （修正有）【課題】例えば画像データのゲイン調整を行う際に、ゲイン調整作業を効率的に実施できるようにする。【解決手段】表示部に画像を表示し、その画像データを調整処理する画像処理装置であって、ゲイン調整処理のゲイン調整量を入力するためのゲイン調整スライダー２２を表示部に表示する表示制御手段と、画像データをゲイン調整処理したときに飽和画素が検出されるゲイン調整量を算出する算出手段と、算出手段により算出されたゲイン調整量をゲイン調整スライダー２２に反映させて警告表示を行う警告表示手段と、ゲイン調整量に従って画像データをゲイン調整処理するゲイン調整処理手段と、ゲイン調整処理手段により画像データをゲイン調整処理したときに飽和画素の有無を検出する検出手段とを備えている。【選択図】図２
2008134851.tif 000002
【特許請求の範囲】
【請求項１】
表示手段に画像を表示し、その画像データを調整処理する画像処理装置であって、
前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御手段と、
画像データを調整処理したときに飽和画素が検出される調整量を算出する算出手段と、
前記算出手段により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示手段とを備えたことを特徴とする画像処理装置。
【請求項２】
調整量に従って画像データを調整処理する調整処理手段と、
前記調整処理手段により画像データを調整処理したときに飽和画素の有無を検出する検出手段とを備えたことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記表示制御手段は、前記調整量入力部に調整量の範囲を表示し、
前記算出手段は、画像データを調整処理したときに飽和画素が検出される最小の調整量を算出し、
前記警告表示手段は前記調整量入力部の範囲のうち前記算出手段により算出された最小の調整量以上の範囲の色を変えて表示することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記警告表示手段は、飽和画素数に応じて警告表示の態様を異ならせることを特徴とする請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
前記算出手段は、飽和画素が検出される調整量を算出する際に、画像データを調整処理する前から存在する飽和画素を除くことを特徴とする請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
前記表示手段に表示される画像の任意の領域を指定できるようにし、前記算出手段は、前記指定された領域において飽和画素が検出される調整量を算出することを特徴とする請求項１〜５のいずれか１項に記載の画像処理装置。
【請求項７】
前記調整処理が複数あることを特徴とする請求項１〜６のいずれか１項に記載の画像処理装置。
【請求項８】
表示手段に画像を表示し、その画像データを調整処理する画像処理装置の制御方法であって、
前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御手順と、
画像データを調整処理したときに飽和画素が検出される調整量を算出する算出手順と、
前記算出手順により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示手順とを有することを特徴とする画像処理装置の制御方法。
【請求項９】
表示手段に画像を表示し、その画像データを調整処理するためのコンピュータプログラムであって、
前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御処理と、
画像データを調整処理したときに飽和画素が検出される調整量を算出する算出処理と、
前記算出処理により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示処理とをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば画像データのゲイン調整を行うのに用いて好適な画像処理装置、その制御方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
画像が全体に暗い（輝度が小さい）場合、まず画像を画面表示し、操作者がゲインアップ量を指定することで輝度調整を行い、調整後の画像を再度画面表示するという対話的なゲイン調整が行われてきた。
【０００３】
【特許文献１】特開平１１−７５０７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
画像データのゲイン調整を行う際、ゲインアップ量が大きすぎると画素データが飽和してしまうことがある。この場合、当該画像中の飽和した画素を赤色等の警告色に置き換えて画面表示することで、操作者に飽和を通知、警告する技術が特許文献１に開示されており、また、Adobe社のPhotoShop等において行われてきた。この警告色表示を見て操作者がゲインアップ量をより少なくするという作業を繰り返すことで、適正なゲイン調整を行う。
【０００５】
しかしながら、飽和した画素を警告色に置き換える方法では、実際にゲイン調整を行ってみるまでは飽和するかどうかが操作者にわからないため、作業の効率が悪いという問題があった。
【０００６】
本発明は上記のような点に鑑みてなされたものであり、例えば画像データのゲイン調整作業を効率的に実施できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の画像処理装置は、表示手段に画像を表示し、その画像データを調整処理する画像処理装置であって、前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御手段と、画像データを調整処理したときに飽和画素が検出される調整量を算出する算出手段と、前記算出手段により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示手段とを備えたことを特徴とする。
本発明の画像処理装置の制御方法は、表示手段に画像を表示し、その画像データを調整処理する画像処理装置の制御方法であって、前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御手順と、画像データを調整処理したときに飽和画素が検出される調整量を算出する算出手順と、前記算出手順により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示手順とを有することを特徴とする。
本発明のコンピュータプログラムは、表示手段に画像を表示し、その画像データを調整処理するためのコンピュータプログラムであって、前記調整処理の調整量を入力するための調整量入力部を前記表示手段に表示する表示制御処理と、画像データを調整処理したときに飽和画素が検出される調整量を算出する算出処理と、前記算出処理により算出された調整量を前記調整量入力部に反映させて警告表示を行う警告表示処理とをコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、上記本発明のコンピュータプログラムを格納したことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、例えば画像データのゲイン調整を行う際に、操作者が事前に画像データの飽和を視覚的に予見することができるので、ゲイン調整作業を効率的に実施することが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
（第１の実施形態）
図１は、本発明の画像処理装置として機能するコンピュータシステムの構成例を示すブロック図である。図１において、１０１はＣＰＵであり、システム全体の制御を行う。１０２はキーボード、１０２ａはマウスであり、これらキーボード１０２やマウス１０２ａにより入力装置を構成する。１０３は表示手段としての表示部であり、ＣＲＴやＬＣＤ等で構成される。１０４はＲＯＭ、１０５はＲＡＭであり、コンピュータシステムの記憶装置を構成し、コンピュータシステムが実行するプログラムやコンピュータシステムが利用するデータを記憶する。１０６はハードディスク装置、１０７はフレキシブルディスク装置であり、コンピュータシステムのファイルシステムに使用される外部記憶装置を構成する。１０８はプリンタである。
【００１０】
図２に、表示部１０３に表示されるアプリケーションソフトウェアの画面例を示す。２１は画像表示領域である。２２はゲイン調整スライダー（調整量入力部）である。コンピュータシステムは、ＨＤＤ１０６に格納された画像データをデコードし、画像表示領域２１に表示する。ゲイン調整スライダー２２は、マウス１０２ａでツマミの部分を押さえてドラッグすることにより、０を中心に±１０の範囲（２１段階）でゲイン調整量を指定できるようになっている。コンピュータシステムは、操作者によりゲイン調整スライダー２２でゲイン調整量が指定されると、後述するアルゴリズムに従って画像データをゲイン調整処理し、調整後画像を画像表示領域２１に表示する（表示制御手段）。
【００１１】
ここで、コンピュータシステムは、ゲイン調整スライダー２２上でゲイン調整量が＋６以上の部分を赤色で警告表示している（警告表示手段）。これは、画像データに対して後述するアルゴリズムに従って最大非飽和ゲイン調整量を算出し、その最大非飽和ゲイン調整量をゲイン調整スライダー２２に反映させて警告表示したものであり、画像に応じて自動的に変化する。なお、後述するアルゴリズムからも理解されるように、最大非飽和ゲイン調整量とは、２１段階のゲイン調整量のうち飽和画素が検出される最小のゲイン調整量を意味する。
【００１２】
操作者がゲイン調整を行う際に、ゲイン調整スライダー２２上に表示されている警告表示を見ることで、実際にゲイン調整を行うよりも前に飽和する限界を知ることができ、ゲイン調整作業を効率的に実施することが可能となる。なお、飽和する画素があっても必ずしも画像が破綻するわけではなく、これは警告表示がされているだけであって、＋６〜＋１０のゲイン調整量を指定することもできる。
【００１３】
［ゲイン調整処理］（調整処理手段及び検出手段）
図３に示すフローチャートを参照して、ゲイン調整処理を詳細に説明する。なお、処理対象の画像データは幅Ｗ画素、縦Ｈ画素の大きさを持つＲＧＢ画像であり、左上を起点として（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ(ｉ，ｊ)、Ｇ(ｉ，ｊ)、Ｂ(ｉ，ｊ)として扱うものとする。同様に、ゲイン調整処理後の（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ'(ｉ，ｊ)、Ｇ'(ｉ，ｊ)、Ｂ'(ｉ，ｊ)と表記する。また、操作者によりゲイン調整スライダー２２で指定されたゲイン調整量をＳ（−１０≦Ｓ≦１０）とする。
【００１４】
ステップＳ３０１で、飽和画素の有無を表わす変数Ｆを０で初期化するとともに、変数Ｔを次式に従って初期化する。これにより変数Ｔは、操作者のゲイン調整スライダー２２による指定に従って０.５〜１.５の間の値をとる。
Ｔ←１.０＋Ｓ／２０.０
【００１５】
ステップＳ３０２で、変数ｊを値０で初期化する。ステップＳ３０３で、変数ｉを値０で初期化する。
【００１６】
ステップＳ３０４で、変数Ｖを次式に従って計算する。
Ｖ←Ｒ(ｉ，ｊ)*Ｔ
【００１７】
ステップＳ３０５で、変数Ｖと定数Ｖmaxとを比較する。Ｖmaxは、画像データが８ｂｉｔのとき２５５、１６ｂｉｔのとき６５５３５とする。Ｖ≦ＶmaxであればステップＳ３０６へ、そうでなければステップＳ３０７へ進む。
【００１８】
ステップＳ３０６では、Ｒ'(ｉ，ｊ)にＶを代入し、ステップＳ３０８へ進む。一方、ステップＳ３０７では、Ｒ'(ｉ，ｊ)'にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ３０８へ進む。
【００１９】
ステップＳ３０８で、変数Ｖを次式に従って計算する。
Ｖ←Ｇ(ｉ，ｊ)*Ｔ
【００２０】
ステップＳ３０９で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ３１０へ、そうでなければステップＳ３１１へ進む。
【００２１】
ステップＳ３１０では、Ｇ'(ｉ，ｊ)にＶを代入し、ステップＳ３１２へ進む。一方、ステップＳ３１１では、Ｇ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ３１２へ進む。
【００２２】
ステップＳ３１２で、変数Ｖを次式に従って計算する。
Ｖ←Ｂ(ｉ，ｊ)*Ｔ
【００２３】
ステップＳ３１３で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ３１４へ、そうでなければステップＳ３１５へ進む。
【００２４】
ステップＳ３１４では、Ｂ'(ｉ，ｊ)にＶを代入し、ステップＳ３１６へ進む。一方、ステップＳ３１５では、Ｂ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ３１６へ進む。
【００２５】
ステップＳ３１６で、変数ｉを値１だけインクリメントする。ステップＳ３１７で、ｉとＷとを比較し、等しければステップＳ３１８へ進み、そうでなければステップＳ３０４に戻る。
【００２６】
ステップＳ３１８で、変数ｊを値１だけインクリメントする。ステップＳ３１９で、ｊとＨとを比較し、等しければ処理を完了し、そうでなければステップＳ３０３に戻る。
【００２７】
以上の処理により、操作者によるゲイン調整スライダー２２での指定に基づいて画像データのゲイン調整処理を行うことができる。また、変数Ｆの値が飽和画素が存在するときに１、存在しないときに０になっているので、ゲイン調整処理の際に飽和が発生したかどうかを判別することができる。
【００２８】
［最大非飽和ゲイン調整量の算出処理］（算出手段）
図４に示すフローチャートを参照して、最大非飽和ゲイン調整量の算出処理を詳細に説明する。ステップＳ４０１で、ゲイン調整量を表わす変数Ｓを値１で初期化する。ステップＳ４０２で、既述したゲイン調整処理に従って、ゲイン調整量Ｓでゲイン調整処理を行う。
【００２９】
ステップＳ４０３で、飽和画素があるかどうかの判定を行う。これは、既述した変数Ｆを参照して、Ｆが１であれば飽和画素があると判断する。飽和画素があるときはステップＳ４０４へ、ないときはステップＳ４０５へ進む。
【００３０】
ステップＳ４０４で、Ｓの値に基づいてゲイン調整スライダー２２上に警告表示を行う。例えばＳ＝６とすると、ゲイン調整スライダー２２を＋６以上に設定すると飽和画素が発生するということを意味する。そこで、図２に示したように、ゲイン調整スライダー２２上においてＳ以上の範囲、すなわち＋６〜＋１０の範囲を赤色で警告表示し、処理を終了する。
【００３１】
ステップＳ４０５で、変数Ｓを値１だけインクリメントする。ステップＳ４０６で、変数Ｓを値１０と比較し、Ｓ＞１０であれば処理を終了し、そうでなければステップＳ４０２に戻る。
【００３２】
以上の処理により、ゲイン調整スライダー２２上に飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながらゲイン調整を行うことができるので、ゲイン調整作業の効率を向上させることができる。
【００３３】
以上説明したように、ＨＤＤ１０６に格納されるアプリケーションソフトウェアがＲＡＭ１０５にロードされ、それをＣＰＵ１０４が実行することにより、ゲイン調整処理のゲイン調整量を入力するためのゲイン調整スライダー２２を表示部１０３に表示する表示制御手段、画像データをゲイン調整処理したときに飽和画素が検出されるゲイン調整量を算出する算出手段、算出手段により算出されたゲイン調整量をゲイン調整スライダー２２に反映させて警告表示を行う警告表示手段、ゲイン調整量に従って画像データをゲイン調整処理するゲイン調整処理手段、ゲイン調整処理手段により画像データをゲイン調整処理したときに飽和画素の有無を検出する検出手段が実現される。
【００３４】
（第２の実施形態）
次に、本発明の第２の実施形態を説明する。第２の実施形態は、飽和画素数に応じて警告表示の態様を異ならせる例である。なお、コンピュータシステムの構成は図１で説明したとおりであり、ここではその詳細な説明は省略する。
【００３５】
図５に、表示部１０３に表示されるアプリケーションソフトウェアの画面例を示す。５１は画像表示領域である。５２はゲイン調整スライダーである。５３は飽和許容量設定スライダーである。ＨＤＤ１０６に格納された画像データをデコードし、画像表示領域５１に表示する。ゲイン調整スライダー５２は、０を中心に±１０の範囲でゲイン調整量を指定できるようになっている。コンピュータシステムは、操作者によりゲイン調整スライダー５２でゲイン調整量が指定されると、後述するアルゴリズムに従って画像データをゲイン調整処理し、調整後画像を画像表示領域５１に表示する。
【００３６】
ここで、コンピュータシステムは、ゲイン調整スライダー５２上でゲイン調整量が＋６〜＋７の範囲を黄色、＋７以上の部分を赤色で警告表示している。これは、画像データに対して後述するアルゴリズムに従って最大非飽和ゲイン調整量及び許容飽和ゲイン調整量を算出して警告表示したものであり、画像に応じて自動的に変化するものである。
【００３７】
上記第１の実施形態では、１画素でも飽和画素があれば警告表示を行っていたが、ゲイン調整においては一部のハイライト部分を故意に飽和させてくっきりした画像に調整したい場合がある。そこで、第２の実施形態では、画像全体の画素のうち、予め指定した比率（パーセンテージ）の画素が飽和しても警告表示（赤色）とせず、準警告表示（黄色）を行うようにする。飽和許容量設定スライダー５３を用いて、その比率を指定する。図中では０.５％としており、すなわち、画像中で１画素も飽和しない範囲は警告を行わず、画像中の画素数の０.５％未満の画素数が飽和する範囲を黄色表示し、０.５％以上の数の画素が飽和する範囲を赤色表示する。赤色と黄色の比率は飽和許容量設定スライダー５３の操作により変化し、飽和許容量設定スライダー５３で０％を指定すると、第１の実施形態と同様に警告表示が全て赤色になり、飽和許容量設定スライダー５３の指定比率が大きいほど黄色部分（準警告）が増大する。
【００３８】
操作者はゲイン調整を行う際に、ゲイン調整スライダー５２上に表示されている警告表示を見ることで、実際にゲイン調整を行うよりも前に飽和する限界を知ることができ、ゲイン調整作業を効率的に実施することが可能となる。なお、飽和する画素があっても必ずしも画像が破綻するわけではなく、これは警告表示がされているだけであって、＋６〜＋１０のゲイン調整量を指定することもできる。
【００３９】
［ゲイン調整処理］
図６に示すフローチャートを参照して、ゲイン調整処理を詳細に説明する。なお、処理対象の画像データは幅Ｗ画素、縦Ｈ画素の大きさを持つＹＵＶ画像であり、左上を起点として（ｉ，ｊ）の位置のＹ，Ｕ，Ｖ成分を各々Ｙ(ｉ，ｊ)、Ｕ(ｉ，ｊ)、Ｖ(ｉ，ｊ)として扱うものとする。同様に、ゲイン調整処理後の（ｉ，ｊ）の位置のＹ，Ｕ，Ｖ成分を各々Ｙ'(ｉ，ｊ)、Ｕ'(ｉ，ｊ)、Ｖ'(ｉ，ｊ)と表記する。なお、本実施形態ではＹＵＶ画像を対象とするが、周知の方法でＹＵＶ空間からＲＧＢ空間に画像を変換できるので、ＲＧＢ画像に対しても同等の処理を行うことができることは言うまでも無い。また、操作者によりゲイン調整スライダー５２で指定された調整量をＳ（−１０≦Ｓ≦１０）とする。
【００４０】
ステップＳ６０１で、飽和画素の数を表わす変数Ｆを０で初期化するとともに、変数Ｔを次式に従って初期化する。これにより変数Ｔは、操作者のゲイン調整スライダー５２による指定に従って０.５〜１.５の間の値をとる。
Ｔ←１.０＋Ｓ／２０.０
【００４１】
ステップＳ６０２で、変数ｊを値０で初期化する。ステップＳ６０３で、変数ｉを値０で初期化する。
【００４２】
ステップＳ６０４で、変数Ｖを次式に従って計算する。
Ｖ←Ｙ(ｉ，ｊ)*Ｔ
【００４３】
ステップＳ６０５で、変数Ｖと定数Ｖmaxとを比較する。Ｖmaxは、画像データが８ｂｉｔのとき２５５、１６ｂｉｔのとき６５５３５とする。Ｖ≦ＶmaxであればステップＳ６０６へ、そうでなければステップＳ６０７へ進む。
【００４４】
ステップＳ６０６では、Ｙ'(ｉ，ｊ)にＶを代入し、ステップＳ６０８へ進む。一方、ステップＳ６０７では、Ｙ'(ｉ，ｊ)'にＶmaxを代入するとともに、変数Ｆを値１だけインクリメントし、ステップＳ６０８へ進む。
【００４５】
ステップＳ６０８で、Ｕ'(ｉ，ｊ)にＵ(ｉ，ｊ)を、Ｖ'(ｉ，ｊ)にＶ(ｉ，ｊ)をそれぞれ代入する。ゲイン調整では彩度は変化せず、輝度成分のみ変更すればよいためである。
【００４６】
ステップＳ６０９で、変数ｉを値１だけインクリメントする。ステップＳ６１０で、ｉとＷとを比較し、等しければステップＳ６１１へ進み、そうでなければステップＳ６０４に戻る。
【００４７】
ステップＳ６１１で、変数ｊを値１だけインクリメントする。ステップＳ６１２で、ｊとＨとを比較し、等しければ処理を完了し、そうでなければステップＳ６０３に戻る。
【００４８】
以上の処理により、操作者によるゲイン調整スライダー５２での指定に基づいて画像データのゲイン調整処理を行うことができる。また、飽和画素の数が変数Ｆに格納されているので、続く処理において飽和画素数に応じた処理を行うことができる。
【００４９】
［最大非飽和ゲイン調整量及び許容飽和ゲイン調整量の算出処理］
図７に示すフローチャートを参照して、最大非飽和ゲイン調整量及び許容飽和ゲイン調整量の算出処理を詳細に説明する。操作者により飽和許容量設定スライダー５３で指定された飽和許容量をＱ（０.１≦Ｑ≦１.０）とする。
【００５０】
ステップＳ７０１で、ゲイン調整量を表わす変数Ｓを値１で、変数ｐ，ｑを値０で初期化する。ステップＳ７０２で、既述したゲイン調整処理に従って、ゲイン調整量Ｓでゲイン調整処理を行う。
【００５１】
ステップＳ７０３で、飽和画素数Ｆと値０とを比較する。Ｆ＞０であらばステップＳ７０４へ、そうでなければステップＳ７０８へ進む。
【００５２】
ステップＳ７０４で、変数ｐと値０とを比較する。ｐ＝０であればステップＳ７０５へ、そうでなければステップＳ７０６へ進む。
【００５３】
ステップＳ７０５で、変数ｐにＳを代入する。ステップＳ７０６で、ＦとＷ*Ｈ*Ｑ／１００を比較する。Ｆ＞Ｗ*Ｈ*Ｑ／１００であればステップＳ７０７へ、そうでなければステップＳ７０８へ進む。
【００５４】
ステップＳ７０７で、変数ｑにＳを代入し、ステップＳ７１０へ進む。ステップＳ７０８で、変数Ｓを値１だけインクリメントする。ステップＳ７０９で、変数Ｓを値１０と比較し、Ｓ＞１０であればステップＳ７１０へ進み、そうでなければステップＳ７０２に戻る。
【００５５】
ステップＳ７１０で、変数ｐ，ｑに基づいてゲイン調整スライダー５２上に警告表示を行う。変数ｐには最大非飽和ゲイン調整量（これを超えると黄色表示）、変数ｑには許容飽和ゲイン調整量（これを超えると赤色表示）が格納されている。また、該当するゲイン調整量の値が存在しない場合はそれぞれ値０が格納されている。
【００５６】
以上の処理により、ゲイン調整スライダー５２上に、飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながらゲイン調整を行うことができるので、ゲイン調整作業の効率を向上させることができる。
【００５７】
（第３の実施形態）
次に、本発明の第３の実施形態を説明する。なお、コンピュータシステムの構成は図１で説明したとおりであり、ここではその詳細な説明は省略する。
【００５８】
図８に、表示部１０３に表示されるアプリケーションソフトウェアの画面例を示す。８１は画像表示領域である。８２はゲイン調整スライダーである。ＨＤＤ１０６に格納された画像データをデコードし、画像表示領域８１に表示する。ゲイン調整スライダー８２は、０を中心に±１０の範囲でゲイン調整量を指定できるようになっている。コンピュータシステムは、操作者によりゲイン調整量が指定されると、後述するアルゴリズムに従って画像データをゲイン調整処理し、調整後画像を画像表示領域８１に表示する。
【００５９】
ここで、コンピュータシステムは、ゲイン調整スライダー８２上でゲイン調整量が＋６以上の部分を赤色で警告表示している。これは、画像データに対して後述するアルゴリズムに従って最大非飽和ゲイン調整量を算出して警告表示したものであり、画像に応じて自動的に変化するものである。
【００６０】
操作者はゲイン調整を行う際に、ゲイン調整スライダー８２上に表示されている警告表示を見ることで、実際にゲイン調整を行うよりも前に飽和する限界を知ることができ、ゲイン調整作業を効率的に実施することが可能となる。なお、飽和する画素があっても必ずしも画像が破綻するわけではなく、これは警告表示がされているだけであって、＋６〜＋１０の調整を指定することもできる。
【００６１】
８３は画像中に写っている太陽である。８４は画像撮影時のＣＣＤセンサの傷やゴミに起因するノイズである。太陽８３やノイズ８４の画素値はゲイン調整する前から飽和していることがある。これは、ここでの主被写体である人物の補正とは本来無関係であるし、最初から飽和しているのであるから、これら画素値を含んだ画像に対して最大非飽和ゲイン調整量を算出しても意味がない。そこで、第３の実施形態では、ゲイン調整する前から存在する飽和画素を除いて、最大非飽和ゲイン調整量を算出するようにしている。
【００６２】
［ゲイン調整処理］
図９に示すフローチャートを参照して、ゲイン調整処理を詳細に説明する。なお、処理対象の画像データは幅Ｗ画素、縦Ｈ画素の大きさを持つＲＧＢ画像であり、左上を起点として（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ(ｉ，ｊ)、Ｇ(ｉ，ｊ)、Ｂ(ｉ，ｊ)として扱うものとする。同様に、ゲイン調整処理後の（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ'(ｉ，ｊ)、Ｇ'(ｉ，ｊ)、Ｂ'(ｉ，ｊ)と表記する。また、操作者によりゲイン調整スライダー８２で指定された調整量をＳ（−１０≦Ｓ≦１０）とする。
【００６３】
ステップＳ９０１で、飽和画素の有無を表わす変数Ｆを０で初期化するとともに、変数Ｔを次式に従って初期化する。これにより変数Ｔは、操作者のゲイン調整スライダー８２による指定に従って０.５〜１.５の間の値をとる。
Ｔ←１.０＋Ｓ／２０.０
【００６４】
ステップＳ９０２で、変数ｊを値０で初期化する。ステップＳ９０３で、変数ｉを値０で初期化する。
【００６５】
ステップＳ９０４で、変数Ｖを次式に従って計算する。
Ｖ←Ｒ(ｉ，ｊ)*Ｔ
【００６６】
ステップＳ９０５で、変数Ｖと定数Ｖmaxとを比較する。Ｖmaxは、画像データが８ｂｉｔのとき２５５、１６ｂｉｔのとき６５５３５とする。Ｖ≦ＶmaxであればステップＳ９０６へ、そうでなければステップＳ９０７へ進む。
【００６７】
ステップＳ９０６では、Ｒ'(ｉ，ｊ)にＶを代入し、ステップＳ９１０へ進む。一方、ステップＳ９０７では、Ｒ'(ｉ，ｊ)'にＶmaxを代入し、ステップＳ９０８へ進む。ステップＳ９０８で、Ｒ(ｉ，ｊ)とＶmaxとを比較し、Ｒ(ｉ，ｊ)＜ＶmaxであればステップＳ９０９へ、そうでなければステップＳ９１０へ進む。ステップＳ９０９で、変数Ｆに値１を代入し、ステップＳ９１０へ進む。
【００６８】
ステップＳ９１０で、変数Ｖを次式に従って計算する。
Ｖ←Ｇ(ｉ，ｊ)*Ｔ
【００６９】
ステップＳ９１１で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ９１２へ、そうでなければステップＳ９１３へ進む。
【００７０】
ステップＳ９１２では、Ｇ'(ｉ，ｊ)にＶを代入し、ステップＳ９１６へ進む。一方、ステップＳ９１３では、Ｇ'(ｉ，ｊ)にＶmaxを代入し、ステップＳ９１４へ進む。ステップＳ９１４で、Ｇ(ｉ，ｊ)とＶmaxとを比較し、Ｇ(ｉ，ｊ)＜ＶmaxであればステップＳ９１５へ、そうでなければステップＳ９１６へ進む。ステップＳ９１５で、変数Ｆに値１を代入し、ステップＳ９１６へ進む。
【００７１】
ステップＳ９１６で、変数Ｖを次式に従って計算する。
Ｖ←Ｂ(ｉ，ｊ)*Ｔ
【００７２】
ステップＳ９１７で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ９１８へ、そうでなければステップＳ９１０へ進む。
【００７３】
ステップＳ９１８では、Ｂ'(ｉ，ｊ)にＶを代入し、ステップＳ９２２へ進む。一方、ステップＳ９１９では、Ｂ'(ｉ，ｊ)にＶmaxを代入し、ステップＳ９２０へ進む。ステップＳ９２０で、Ｂ(ｉ，ｊ)とＶmaxとを比較し、Ｂ(ｉ，ｊ)＜ＶmaxであればステップＳ９２１へ、そうでなければステップＳ９２２へ進む。ステップＳ９２１で、変数Ｆに値１を代入し、ステップＳ９２２へ進む。
【００７４】
ステップＳ９２２で、変数ｉを値１だけインクリメントする。ステップＳ９２３で、ｉとＷとを比較し、等しければステップＳ９２４へ進み、そうでなければステップＳ９０４に戻る。
【００７５】
ステップＳ９２４で、変数ｊを値１だけインクリメントする。ステップＳ９２５で、ｊとＨとを比較し、等しければ処理を完了し、そうでなければステップＳ９０３に戻る。
【００７６】
以上の処理により、操作者によるゲイン調整スライダー８２での設定に基づいて画像データのゲイン調整処理を行うことができる。また、変数Ｆの値が、処理前に飽和していなかった画素であって、ゲイン調整処理により飽和してしまう画素が存在するときに１、存在しないときに０になっているので、ゲイン補正処理の際に飽和が発生したかどうかを判別することができる。
【００７７】
［最大非飽和ゲイン調整量の算出処理］
図１０に示すフローチャートを参照して、最大非飽和ゲイン調整量の算出処理を詳細に説明する。ステップＳ１００１で、ゲイン調整量を表わす変数Ｓを値１で初期化する。ステップＳ１００２で、既述したゲイン調整処理に従って、ゲイン調整量Ｓで画像をゲイン調整する。
【００７８】
ステップＳ１００３で、飽和画素があるかどうかの判定を行う。これは、既述した変数Ｆを参照して、Ｆが１であれば飽和画素があると判断する。飽和画素があるときはステップＳ１００４へ、ないときはステップＳ１００５へ進む。
【００７９】
ステップＳ１００４で、Ｓの値に基づいてゲイン調整スライダー８２上に警告表示を行う。例えばＳ＝６とすると、ゲイン調整スライダー８２を＋６以上に設定すると飽和画素が発生するということを意味する。そこで、図８に示したように、ゲイン調整スライダー８２においてＳ以上の範囲、すなわち＋６〜＋１０の範囲を赤色で警告表示し、処理を終了する。
【００８０】
ステップＳ１００５で、変数Ｓを値１だけインクリメントする。ステップＳ１００６で、変数Ｓを値１０と比較し、Ｓ＞１０であれば処理を終了し、そうでなければステップＳ１００２に戻る。
【００８１】
以上の処理により、ゲイン調整スライダー８２上に飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながらゲイン調整作業を行うことができるので、ゲイン調整作業の効率を向上させることができる。また、最初から飽和していた画素については警告が行われないので、太陽、受光センサの傷やゴミによる誤情報に左右されずに適切なゲイン調整を行うことができる。
【００８２】
（第４の実施形態）
次に、本発明の第４の実施形態を説明する。なお、コンピュータシステムの構成は図１で説明したとおりであり、ここではその詳細な説明は省略する。
【００８３】
図１１に、表示部１０３に表示されるアプリケーションソフトウェアの画面例を示す。１１１は画像表示領域である。１１２はゲイン調整スライダーである。ＨＤＤ１０６に格納された画像データをデコードし、画像表示領域１１１に表示する。ゲイン調整スライダー１１２は、０を中心に±１０の範囲でゲイン調整量を指定できるようになっている。コンピュータシステムは、操作者によりゲイン調整スライダー１１２でゲイン調整量が指定されと、後述するアルゴリズムに従って画像データをゲイン調整処理し、調整後画像を画像表示領域１１１に表示する。
【００８４】
ここで、コンピュータシステムは、ゲイン調整スライダー１１２上でゲイン調整量が＋６以上の部分を赤色で警告表示している。これは、画像データに対して後述するアルゴリズムに従って最大非飽和ゲイン調整量を算出して警告表示したものであり、画像に応じて自動的に変化するものである。
【００８５】
１１３は着目領域を指定するためのラバーバンドであり、操作者はマウス１０２ａを用いて対話的に着目領域を指定する。例えば太陽１１４等が画像内に存在する場合、太陽の内側に存在する画素については飽和するかどうかがあまり問題にならない。すなわち、ゲイン調整の過程で太陽の画素が飽和することがあっても、それに基づいた警告表示は必ずしも役に立たない。そこで、第４の実施形態では、まず操作者がラバーバンド１１３を用いて飽和判定を行うべき着目領域を指定し、着目領域の内側に存在する画素のみについて飽和警告を行うことで、適切な飽和警告を行うものである。
【００８６】
操作者はゲイン調整を行う際に、ゲイン調整スライダー１１２上に表示されている警告表示を見ることで、実際にゲイン調整を行うよりも前に飽和する限界を知ることができ、ゲイン調整作業を効率的に実施することが可能となる。なお、飽和する画素があっても必ずしも画像が破綻するわけではなく、これは警告表示がされているだけであって、＋６〜＋１０の調整を指定することもできる。
【００８７】
［ゲイン調整処理］
図１３に示すフローチャートを参照して、ゲイン調整処理を詳細に説明する。なお、図１２に示すように、処理対象の画像データは幅Ｗ画素、縦Ｈ画素の大きさを持つＲＧＢ画像であり、左上を起点として（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ(ｉ，ｊ)、Ｇ(ｉ，ｊ)、Ｂ(ｉ，ｊ)として扱うものとする。同様に、ゲイン調整処理後の（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々はＲ'(ｉ，ｊ)、Ｇ'(ｉ，ｊ)、Ｂ'(ｉ，ｊ)と表記する。また、ラバーバンド１１３により指定された矩形領域の左上頂点座標を（ｘ，ｙ）、ラバーバンド１１３により指定された矩形領域の幅をｗ、高さをｈとする。また、操作者によりゲイン調整スライダー１１２で指定されたゲイン調整量をＳ（−１０≦Ｓ≦１０）とする。
【００８８】
ステップＳ１３０１で、飽和画素の有無を表わす変数Ｆを０で初期化するとともに、変数Ｔを次式に従って初期化する。これにより変数Ｔは、操作者のスライダー１１２による指定に従って０.５〜１.５の間の値をとる。
Ｔ←１.０＋Ｓ／２０.０
【００８９】
ステップＳ１３０２で、変数ｊを値０で初期化する。ステップＳ１３０３で、変数ｉを値ｘで初期化する。
【００９０】
ステップＳ１３０４で、変数Ｖを次式に従って計算する。
Ｖ←Ｒ(ｉ，ｊ)*Ｔ
【００９１】
ステップＳ１３０５で、変数Ｖと定数Ｖmaxとを比較する。Ｖmaxは、画像データが８ｂｉｔのとき２５５、１６ｂｉｔのとき６５５３５とする。Ｖ≦ＶmaxであればステップＳ１３０６へ、そうでなければステップＳ１３０７へ進む。
【００９２】
ステップＳ１３０６では、Ｒ'(ｉ，ｊ)にＶを代入し、ステップＳ１３０８へ進む。一方、ステップＳ１３０７では、Ｒ'(ｉ，ｊ)'にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１３０８へ進む。
【００９３】
ステップＳ１３０８で、変数Ｖを次式に従って計算する。
Ｖ←Ｇ(ｉ，ｊ)*Ｔ
【００９４】
ステップＳ１３０９で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ１３１０へ、そうでなければステップＳ１３１１へ進む。
【００９５】
ステップＳ１３１０では、Ｇ'(ｉ，ｊ)にＶを代入し、ステップＳ１３１２へ進む。一方、ステップＳ１３１１では、Ｇ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１３１２へ進む。
【００９６】
ステップＳ１３１２で、変数Ｖを次式に従って計算する。
Ｖ←Ｂ(ｉ，ｊ)*Ｔ
【００９７】
ステップＳ１３１３で、変数Ｖと定数Ｖmaxとを比較する。Ｖ≦ＶmaxであればステップＳ１３１４へ、そうでなければステップＳ１３１５へ進む。
【００９８】
ステップＳ１３１４では、Ｂ'(ｉ，ｊ)にＶを代入し、ステップＳ１３１６へ進む。一方、ステップＳ１３１５では、Ｂ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１３１６へ進む。
【００９９】
ステップＳ１３１６で、変数ｉを値１だけインクリメントする。ステップＳ１３１７で、ｉと着目領域のエンド画素位置ｘ＋ｗとを比較し、等しければステップＳ１３１８へ進み、そうでなければステップＳ１３０４に戻る。
【０１００】
ステップＳ１３１８で、変数ｊを値１だけインクリメントする。ステップＳ１３１９で、ｊと着目領域のエンド画素位置ｙ＋ｈとを比較し、等しければ処理を完了し、そうでなければステップＳ１３０３に戻る。
【０１０１】
以上の処理により、操作者によるゲイン調整スライダー１１２での設定に基づいて画像データのゲイン調整処理を行うことができる。また、変数Ｆの値が飽和画素が存在するときに１、存在しないときに０になっているので、ゲイン調整処理の際に飽和が発生したかどうかを判別することができる。
【０１０２】
［最大非飽和ゲイン調整量の算出処理］
図１４に示すフローチャートを参照して、最大非飽和ゲイン調整量の算出処理を詳細に説明する。ステップＳ１４０１で、ゲイン調整量を表わす変数Ｓを値１で初期化する。ステップＳ１４０２で、既述したゲイン調整処理に従って、ゲイン調整量Ｓでゲイン調整処理を行う。
【０１０３】
ステップＳ１４０３で、飽和画素があるかどうかの判定を行う。これは、既述した変数Ｆを参照して、Ｆが１であれば飽和画素があると判断する。飽和画素があるときはステップＳ１４０４へ、ないときはステップＳ１４０５へ進む。
【０１０４】
ステップＳ１４０４で、Ｓの値に基づいてゲイン調整スライダー１１２上に警告表示を行う。例えばＳ＝６とすると、ゲイン調整スライダー１１２を＋６以上に設定すると飽和画素が発生するということを意味する。そこで、図１１に示したように、ゲイン調整スライダー１１２上においてＳ以上の範囲、すなわち＋６〜＋１０の範囲を赤色で警告表示し、処理を終了する。
【０１０５】
ステップＳ１４０５で、変数Ｓを値１だけインクリメントする。ステップＳ１４０６で、変数Ｓを値１０と比較し、Ｓ＞１０であれば処理を終了し、そうでなければステップＳ１４０２に戻る。
【０１０６】
以上の処理により、ゲイン調整スライダー１１２上に飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながらゲイン調整を行うことができるので、ゲイン調整作業の効率を向上させることができる。また、指定領域外であるラバーバンド１１３の外側の画素については警告を行わないので、著しく輝度の異なる物体に煩わされることがなくなる。
【０１０７】
なお、着目領域を指定するためにラバーバンド１１３を用いたが、これに限られるものではなく、例えば楕円形等のプリミティブを用いて指定するようにしてもよい。
【０１０８】
また、例えば周知の人物画像抽出処理等と組み合わせることで、人物の形状を人物画像抽出処理によって選択し、画像中の人物の部分のみについて飽和警告を行いながらゲイン調整を行うようにしてもよい。
【０１０９】
（第５の実施形態）
次に、本発明の第５の実施形態を説明する。第５の実施形態は、調整処理が複数ある例である。なお、コンピュータシステムの構成は図１で説明したとおりであり、ここではその詳細な説明は省略する。
【０１１０】
図１５に、表示部１０３に表示されるアプリケーションソフトウェアの画面例を示す。１５１は画像表示領域である。１５２はゲイン調整スライダーである。１５３は彩度調整スライダーである。ＨＤＤ１０６に格納された画像データをデコードし、画像表示領域１５１に表示する。ゲイン調整スライダー１５２は、０を中心に±１０の範囲でゲイン調整量を指定できるようになっている。コンピュータシステムは、操作者によりゲイン調整スライダー１５２でゲイン調整量が指定されると、後述するアルゴリズムに従って画像データをゲイン調整処理し、調整後画像を画像表示領域１５１に表示する。
【０１１１】
ここで、コンピュータシステムは、ゲイン調整スライダー１５２上でゲイン調整量が＋６以上の部分を赤色で警告表示している。これは、画像データに対して後述するアルゴリズムに従って最大非飽和ゲイン調整量を算出して警告表示したものであり、画像に応じて自動的に変化するものである。また、彩度の調整量に応じて最大非飽和ゲイン調整量も変化するので、操作者が彩度を調整するたびに表示を更新する。
【０１１２】
彩度調整スライダー１５３は、０を中心に±１０の範囲で彩度調整量を指定できるようになっている。コンピュータシステムは、操作者により彩度調整スライダー１５３で彩度調整量が指定されると、後述するアルゴリズムに従って画像データを彩度調整処理し、調整後画像を画像表示領域１５１に表示する。
【０１１３】
ここで、コンピュータシステムは、彩度調整スライダー１５３上で彩度調整量が＋４以上の部分を赤色で警告表示している。これは、画像データに対して後述するアルゴリズムに従って最大非飽和彩度調整量を算出して警告表示したものであり、画像に応じて自動的に変化するものである。また、ゲイン調整量に応じて最大非飽和彩度調整量も変化するので、操作者がゲインを調整するたびに表示を更新する。
【０１１４】
操作者はゲイン調整又は彩度調整を行う際に、スライダー１５２、１５３上に表示されている警告表示を見ることで、実際にゲイン調整又は彩度調整を行うよりも前に飽和する限界を知ることができ、作業を効率的に実施することが可能となる。なお、飽和する画素があっても必ずしも画像が破綻するわけではなく、これは警告表示がされているだけであって、警告されている範囲の調整量を指定することもできる。
【０１１５】
［ゲイン及び彩度調整処理］
図１６に示すフローチャートを参照して、ゲイン及び彩度調整処理を詳細に説明する。なお、処理対象の画像データは幅Ｗ画素、縦Ｈ画素の大きさを持つＲＧＢ画像であり、左上を起点として（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ(ｉ，ｊ)、Ｇ(ｉ，ｊ)、Ｂ(ｉ，ｊ)として扱うものとする。同様に、処理後の（ｉ，ｊ）の位置のＲ，Ｇ，Ｂ成分を各々Ｒ'(ｉ，ｊ)、Ｇ'(ｉ，ｊ)、Ｂ'(ｉ，ｊ)と表記する。また、操作者によりゲイン調整スライダー１５２で指定された調整量をＳ１（−１０≦Ｓ１≦１０）、彩度調整スライダー１５３で指定された調整量をＳ１（−１０≦Ｓ２≦１０）とする。
【０１１６】
ステップＳ１６０１で、飽和画素の有無を表わす変数Ｆを０で初期化するとともに、変数Ｔ１、Ｔ２を次式に従って初期化する。これにより変数Ｔ１及びＴ２は、操作者のスライダー１５２、１５３による指定に従って０.５〜１.５の間の値をとる。
Ｔ１←１.０＋Ｓ１／２０.０
Ｔ２←１.０＋Ｓ２／２０.０
【０１１７】
ステップＳ１６０２で、変数ｊを値０で初期化する。ステップＳ１６０３で、変数ｉを値０で初期化する。ステップＳ１６０４で、次式に従ってＲ(ｉ，ｊ)、Ｇ(ｉ，ｊ)、Ｂ(ｉ，ｊ)をＹｕｖ空間に変換する。
Ｙ←０.２９９*Ｒ(ｉ，ｊ)＋０.５８７*Ｇ(ｉ，ｊ)＋０.１１４*Ｂ(ｉ，ｊ)
ｕ←−０.１６８７*Ｒ(ｉ，ｊ)−０.３３１３*Ｇ(ｉ，ｊ)＋０.５００*Ｂ(ｉ，ｊ)
ｖ←０.５００*Ｒ(ｉ，ｊ)−０.４１８７*Ｇ(ｉ，ｊ)−０.０８１３*Ｂ(ｉ，ｊ)
【０１１８】
ステップＳ１６０５で、次式に従って彩度調整を行う。
ｕ←ｕ*Ｔ２
ｖ←ｖ*Ｔ２
【０１１９】
ステップＳ１６０６で、次式に従ってＹｕｖ値をＲＧＢ値（Ｖｒ，Ｖｇ，Ｖｂ）に変換する。
Ｖｒ←Ｙ＋１.４０２００*ｖ
Ｖｇ←Ｙ−０.３４４１４*ｕ−０.７１４１４*ｖ
Ｖｂ←Ｙ＋１.７７２００*ｕ
【０１２０】
ステップＳ１６０７で、次式に従ってゲイン調整を行う。
Ｖｒ←Ｖｒ*Ｔ１
Ｖｇ←Ｖｇ*Ｔ１
Ｖｂ←Ｖｂ*Ｔ１
【０１２１】
ステップＳ１６０８で、Ｖｒと定数Ｖmaxとを比較する。Ｖmaxは、画像データが８ｂｉｔのとき２５５、１６ｂｉｔのとき６５５３５とする。Ｖｒ≦ＶmaxであればステップＳ１６０９へ、そうでなければステップＳ１６１０へ進む。
【０１２２】
ステップＳ１６０９では、Ｒ'(ｉ，ｊ)にＶｒを代入し、ステップＳ１６１１へ進む。一方、ステップＳ１６１０では、Ｒ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１６１１へ進む。
【０１２３】
ステップＳ１６１１で、Ｖｇと定数Ｖmaxとを比較する。Ｖｇ≦ＶmaxであればステップＳ１６１２へ、そうでなければステップＳ１６１３へ進む。
【０１２４】
ステップＳ１６１２では、Ｇ'(ｉ，ｊ)にＶｇを代入し、ステップＳ１６１４へ進む。一方、ステップＳ１６１３では、Ｇ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１６１４へ進む。
【０１２５】
ステップＳ１６１４で、Ｖｂと定数Ｖmaxとを比較する。Ｖｂ≦ＶmaxであればステップＳ１６１５へ、そうでなければステップＳ１６１６へ進む。
【０１２６】
ステップＳ１６１５では、Ｂ'(ｉ，ｊ)にＶｂを代入し、ステップＳ１６１７へ進む。一方、ステップＳ１６１６では、Ｂ'(ｉ，ｊ)にＶmaxを代入するとともに、変数Ｆに値１を代入し、ステップＳ１６１７へ進む。
【０１２７】
ステップＳ１６１７で、変数ｉを値１だけインクリメントする。ステップＳ１６１８で、ｉとＷとを比較し、等しければステップＳ１６１９へ進み、そうでなければステップＳ１６０４に戻る。
【０１２８】
ステップＳ１６１９で、変数ｊを値１だけインクリメントする。ステップＳ１６２０で、ｊとＨとを比較し、等しければ処理を完了し、そうでなければステップＳ１６０３に戻る。
【０１２９】
以上の処理により、操作者によるスライダー１５２、１５３での設定に基づいて画像データのゲイン及び彩度調整処理を行うことができる。また、変数Ｆの値が飽和画素が存在するときに１、存在しないときに０になっているので、ゲイン及び彩度調整処理の際に飽和が発生したかどうかを判別することができる。
【０１３０】
［最大非飽和ゲイン調整量の算出処理］
図１７に示すフローチャートを参照して、最大非飽和ゲイン調整量の算出処理を詳細に説明する。ステップＳ１７０１で、ゲイン調整量を表わす変数Ｓ１を値１で初期化する。ステップＳ１７０２で、既述したゲイン及び彩度調整処理に従って、ゲイン調整量Ｓ１、現在の彩度調整量スライダー１５３で指定されている彩度調整量Ｓ２でゲイン及び彩度調整を行う。
【０１３１】
ステップＳ１７０３で、飽和画素があるかどうかの判定を行う。これは、既述した変数Ｆを参照して、Ｆが１であれば飽和画素があると判断する。飽和画素があるときはステップＳ１７０４へ、ないときはステップＳ１７０５へ進む。
【０１３２】
ステップＳ１７０４で、Ｓ１の値に基づいてゲイン調整スライダー１５２上に警告表示を行う。例えばＳ１＝６とすると、ゲイン調整スライダー１５２を＋６以上に設定すると飽和画素が発生するということを意味する。そこで、図１５に示したように、ゲイン調整スライダー１５２上においてＳ１以上の範囲、すなわち＋６〜＋１０の範囲を赤色で警告表示し、処理を終了する。
【０１３３】
ステップＳ１７０５で、変数Ｓ１を値１だけインクリメントする。ステップＳ１７０６で、変数Ｓ１を値１０と比較し、Ｓ１＞１０であれば処理を終了し、そうでなければステップＳ１７０２に戻る。
【０１３４】
以上の処理により、ゲイン調整スライダー１５２上に、飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながらゲイン調整を行うことができるので、ゲイン調整作業の効率を向上させることができる。また、上記処理は彩度調整スライダー１５３の位置にも依存しているので、彩度調整スライダー１５３を操作者が調整すると、それに連動してゲイン調整スライダー１５２上の警告表示が変化する。
【０１３５】
［最大非飽和彩度調整量の算出処理］
図１８に示すフローチャートを参照して、最大非飽和彩度調整量の算出処理を詳細に説明する。ステップＳ１８０１で、彩度調整量を表わす変数Ｓ２を値１で初期化する。ステップＳ１８０２で、既述したゲイン及び彩度調整処理に従って、現在のゲイン調整量スライダー１５２で指定されているゲイン調整量Ｓ１、彩度調整量Ｓ２で画像をゲイン及び彩度調整を行う。
【０１３６】
ステップＳ１８０３で、飽和画素があるかどうかの判定を行う。これは、既述した変数Ｆを参照して、Ｆが１であれば飽和画素があると判断する。飽和画素があるときはステップＳ１８０４へ、ないときはステップＳ１８０５へ進む。
【０１３７】
ステップＳ１８０４で、Ｓ２の値に基づいて彩度調整スライダー１５３上に警告表示を行う。例えばＳ２＝４とすると、彩度調整スライダー１５３を＋４以上に設定すると飽和画素が発生するということを意味する。そこで、図１５に示したように、彩度調整スライダー１５３上においてＳ２以上の範囲、すなわち＋４〜＋１０の範囲を赤色で警告表示し、処理を終了する。
【０１３８】
ステップＳ１８０５で、変数Ｓ２を値１だけインクリメントする。ステップＳ１８０６で、変数Ｓ２を値１０と比較し、Ｓ２＞１０であれば処理を終了し、そうでなければステップＳ１８０２に戻る。
【０１３９】
以上の処理により、彩度調整スライダー１５３上に、飽和が発生することを示す警告表示を行うことができる。操作者はこれを見ながら彩度調整を行うことができるので、彩度調整作業の効率を向上させることができる。また、上記処理はゲイン調整スライダー１５２の位置にも依存しているので、ゲイン調整スライダー１５２を操作者が調整すると。それに連動して彩度調整スライダー１５３上の警告表示が変化する。
【０１４０】
（その他の実施形態）
上述した各実施形態では、ゲイン調整スライダーを−１０〜＋１０の２１段階としたが、これに限られるものではなく、任意の段階数を設けるようにしてもよいことは言うまでもない。また、ゲイン調整スライダーのメモリ（ゲイン調整量）Ｓと調整パラメータＴの関係もステップＳ３０１等に示すものでなく、任意の式に基づくものでよい。
【０１４１】
また、上記実施形態では、ＲＧＢ色空間上でゲイン調整を行い、Ｒ，Ｇ，Ｂのいずれかの値が値域を超える場合に画素が飽和したと判断したが、これに限らない。例えばＲＧＢ値が３つとも値域を超えた場合を飽和したとしてもよい。
【０１４２】
また、上記実施形態では値域（８ｂｉｔなら２５５まで）を超えたかどうかで飽和の判断を行っていたが、予め定めた任意の飽和閾値（例えば２５０）を超えたときを飽和と定義してもよいし、飽和閾値を操作者が対話的に指定できるようにしてもよい。
【０１４３】
また、上記実施形態では、ＲＧＢ画像やＹＵＶ画像についてゲイン調整をする例を示したが、これに限られるものではなく、ＬａｂやＸＹＺ等他の色空間の画像に対しても同様の処理が行えるのは言うまでも無い。また、例えばＲＧＢ画像であれば直接ＲＧＢ空間上でゲイン調整をしてもよいし、周知の方法でいったんＹＵＶ画像に変換してから、ＹＵＶ空間上でゲイン調整をするようにしてもよい。
【０１４４】
なお、本発明の目的は、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【０１４５】
この場合、記録媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１４６】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１４７】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４８】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１４９】
【図１】本発明の画像処理装置として機能するコンピュータシステムの構成例を示すブロック図である。
【図２】第１の実施形態における画面例を示す図である。
【図３】第１の実施形態におけるゲイン調整処理の流れを説明するフローチャートである。
【図４】第１の実施形態における最大非飽和ゲイン調整量の算出処理の流れを説明するフローチャートである。
【図５】第２の実施形態における画面例を示す図である。
【図６】第２の実施形態におけるゲイン調整処理の流れを説明するフローチャートである。
【図７】第２の実施形態における最大非飽和ゲイン調整量及び許容飽和ゲイン調整量の算出処理の流れを説明するフローチャートである。
【図８】第３の実施形態における画面例を示す図である。
【図９】第３の実施形態におけるゲイン調整処理の流れを説明するフローチャートである。
【図１０】第３の実施形態における最大非飽和ゲイン調整量の算出処理の流れを説明するフローチャートである。
【図１１】第４の実施形態における画面例を示す図である。
【図１２】画像データとラバーバンドより指定された矩形領域とを説明するための図である。
【図１３】第４の実施形態におけるゲイン調整処理の流れを説明するフローチャートである。
【図１４】第４の実施形態における最大非飽和ゲイン調整量の算出処理の流れを説明するフローチャートである。
【図１５】第５の実施形態における画面例を示す図である。
【図１６】第５の実施形態におけるゲイン及び彩度調整処理の流れを説明するフローチャートである。
【図１７】第５の実施形態における最大非飽和ゲイン調整量の算出処理の流れを説明するフローチャートである。
【図１８】第５の実施形態における最大非飽和彩度調整量の算出処理の流れを説明するフローチャートである。
【符号の説明】
【０１５０】
１０１  ＣＰＵ
１０２  キーボード
１０３  表示部
１０４  ＲＯＭ
１０５  ＲＡＭ
１０６  ハードディスク装置
１０７  フレキシブルディスク装置
１０８  プリンタ
【図１】
2008134851.tif 000003
【図２】
2008134851.tif 000004
【図３】
2008134851.tif 000005
【図４】
2008134851.tif 000006
【図５】
2008134851.tif 000007
【図６】
2008134851.tif 000008
【図７】
2008134851.tif 000009
【図８】
2008134851.tif 000010
【図９】
2008134851.tif 000011
【図１０】
2008134851.tif 000012
【図１１】
2008134851.tif 000013
【図１２】
2008134851.tif 000014
【図１３】
2008134851.tif 000015
【図１４】
2008134851.tif 000016
【図１５】
2008134851.tif 000017
【図１６】
2008134851.tif 000018
【図１７】
2008134851.tif 000019
【図１８】
2008134851.tif 000020