以下に、添付図面を参照して本発明を実施するための最良の形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
[第1の実施形態]本実施形態は、RAW画像データに対して3つの調整項目(「露出補正」、「トーンカーブ」、「コントラスト」)を、1:「露出補正」、2:「トーンカーブ」、3:「コントラスト」の順番で処理を行い、JPEG画像データとして保存する例である。RAW画像データとは、撮影機器独自のフォーマットで保存されている画像データである。本実施形態では、起動時に指定されたフォルダ内のRAW画像データを一覧表示し、ユーザ操作により選択されたRAW画像データを調整対象画像とする。なお、本実施形態では、起動時にフォルダが指定されていることを前提とするが、起動中にフォルダを選択するようにしても良い。また、本実施形態では、起動中のユーザ操作によって、調整対象画像(元画像)を選択しているが、起動時に既に調整対象画像が設定されている構成であっても良い。
図2は、本発明に係る実施形態の画像処理装置の構成を示すブロック図である。図2において、100は画像処理プログラムを実行する演算処理装置(CPU)である。110は、OS、アプリケーションプログラムや画像データなどのデジタルデータを記録するハードディスクである。ハードディスク110は、後述する画像処理プログラムをCPU100に読み取り可能なプログラムコードとして記録しており、このプログラムコードをCPU100が実行する構成となっている。120は、プログラムコードなどを記憶する記憶部である。130は、ネットワークを介して画像データを収集し、収集した画像データを公開する外部機器と接続するためのネットワーク接続部である。140は、CRTやLCDパネルなどの表示部(ディスプレイ)である。150は、オーディオ出力用のスピーカーである。160は、キーボードやポインティングデバイスなどからなる操作部である。
170は、外部記録媒体180に格納されたデータを読み込むための記録媒体ドライブである。180は、CD−ROMやDVDなどの外部記録媒体である。190は、PCIバスなどのコンピュータ内部の各処理部を相互に接続するための内部バスである。本実施形態では、画像データやプログラムがハードディスク110に保存されているが、CD−ROMやDVDなどの外部記録媒体180に記録し、記録媒体ドライブ170を介してCPU100に実行させる形態でも良い。同様に、ネットワーク上に画像データ及びプログラムが記録されており、ネットワーク接続部130を介して、CPU100に実行させる形態でも良い。
図1は、図2の画像処理装置により実行される画像処理プログラムの手順を示すフローチャートである。ここで、本実施形態の画像処理装置は、起動時にRAW画像データの存在するフォルダパスを引数として実行される。また、図4に示すように調整項目ごとの複数のパラメータが設定された調整項目パラメータテーブルを持つ。本実施形態では、ユーザ操作の手順を下記の通りとし、図5乃至図11に示すUI画面に遷移する場合を例として説明するが、本発明はこれに限定されないことは言うまでもない。
(1)起動
(2)調整対象画像選択
(3)「露出補正」パラメータ選択
(4)「露出補正」パラメータ再選択
(5)「トーンカーブ」パラメータ選択
(6)「コントラスト」パラメータ選択
(7)保存
(8)「露出補正」パラメータ再々選択
図1において、先ず初期画面である図5に示す画像調整画面1100を表示し(S100)、ユーザの操作入力を待つ。
図5の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400とから構成される。RAW画像選択領域1200は、調整対象となるRAW画像データ形式の画像データを一覧表示し、ユーザ操作により調整対象画像を選択可能に表示する領域である。画像表示領域1300は、現在処理中の画像データを画面内に表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、ユーザ操作により画像処理の全調整項目に関するパラメータを決定可能にする領域である。図5の初期画面では、RAW画像選択領域1200内の調整対象画像が選択されていないため調整対象画像が未定である。この状態では、調整中の項目名1310と、対象画像表示領域1320は非表示とし、調整画像保存ボタン1330は使用禁止となる。また、調整項目一覧表示領域1400は非表示となる。
図5の初期画面表示後の入力待ち中に、ユーザ操作によりRAW画像選択領域1200内のいずれかの画像データがクリックされ選択された場合は(S110でYes)、選択された画像データを選択状態で表示する。選択された画像データを読み込み(S120)、対象画像データを図5の対象画像表示領域1320へ表示する(S130)。また、調整画像保存ボタン1330を操作可能にする。更に図4のパラメータテーブルから全調整項目名「露出補正」、「トーンカーブ」、「コントラスト」を取得し、図5の調整項目一覧表示領域1400へ一覧表示する(S140)。次に、調整項目を取得するための“調整項目ID”を0に設定し(S150)、“調整項目ID”のカウントを1Upする(S160)。1つの調整項目に対して複数のサムネイル(縮小画像データ)を作成するための、図3のサムネイル作成処理プログラムを実行する(S170)。
図3は、図1のS170におけるサムネイル作成処理プログラムの手順を示すフローチャートである。図3において、1つの調整項目における複数の処理パラメータを“調整項目ID”をもとに、図4のパラメータテーブルから取得する(S300)。次に、パラメータ値を取得するための“パラメータIndex”を「Param1」に設定し(S310)、“パラメータIndex”に対応する“パラメータ値”を取得する(S320)。取得した“パラメータ値”で対象画像データに画像処理を施し(S330)、サムネイルを作成する(S340)。“パラメータIndex”が「Param1」〜「Param5」の間(S360でYes)、画像処理(S330)とサムネイル作成処理(S340)を繰り返す。全ての処理パラメータの値での複数のサムネイルを作成後(S360でNo)、図3のサムネイル作成処理を終了し、図1のS180へ移行する。図1のS180において、図3の処理により作成された複数のサムネイルを“調整項目ID”に対応する調整項目のサムネイル表示領域に表示する(S180)。
ここでは、図5において、ユーザ操作によりRAW画像選択領域1200内に表示された上から2番目の画像データが選択された例について説明する。RAW画像選択領域1200内の画像データが選択されると、図1のS110でYesとなり、RAW画像選択領域1200内に表示中の上から2番目の画像データを読み込む(S120)。読み込んだ画像データを対象画像表示領域1320に表示する(S130)。更に図4のパラメータテーブルから全調整項目名「露出補正」、「トーンカーブ」、「コントラスト」を取得し、調整項目一覧表示領域1400へ設定処理順に一覧表示する(S140)。次に、調整項目を取得するための“調整項目ID”を「0」に設定し(S150)、“調整項目ID”のカウントを1Upする(S160)。“調整項目ID”が「1」に対応する複数のサムネイルを作成するための、図3のサムネイル作成処理を実行する(S170)。
図3において、“調整項目ID”が「1」に対する、5つの“パラメータ値”「−5」「−3」「0」「+3」「+5」を図4のパラメータテーブルから取得する(S300)。次に、対象画像データに対して、“調整項目ID”が「1」に対応する調整項目「露出補正」を、取得した5つの“パラメータ値”にて画像処理の実施(S330)とサムネイルの作成(S340)を繰り返す。5つの“パラメータ値”の各サムネイルを作成後(S360でNo)、図3の処理を終了し、図1のS170へ戻る。図3の処理により作成された5つのサムネイルを“調整項目ID”が「1」に対応する「露出補正」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「2」以降に対応する調整項目「トーンカーブ」「コントラスト」欄にサムネイルが表示中か判定する。図5においては、非表示である(S190でNo)ため、ユーザの入力操作を待つ。この時、UI画面は、図6に示す調整対象画像が選択された直後の状態となる。
図6の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400から構成される。RAW画像選択領域1200内の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目1410と、調整項目1410の複数パラメータでの複数サムネイルを一覧表示し所定のサムネイルを選択可能にするサムネイル表示領域1420と、各パラメータによる画像処理後のサムネイル1430からなる。更に第2調整項目1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450から構成される。
図6のUI画面表示後の入力待ち中に、ユーザ操作にてサムネイル表示領域内のいずれかのサムネイルがクリックされ選択された場合は(S210でYes)、選択されたサムネイルを選択状態で表示する。次に、選択されたサムネイルに対応付けられている“調整項目ID”と“パラメータ値”を取得する(図1のS220)。図4のパラメータテーブル内に取得した“調整項目ID”に対応付けられている”VALUE”へ“パラメータ値”を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1Up以降の”VALUE”を削除する(図1のS230)。図4のパラメータテーブルの“調整項目ID”が「1」に対応する調整項目から、図1のS220にて取得した“調整項目ID”に対応する調整項までの“パラメータ値”となる”VALUE”を順に取得し、対象画像データに対して画像処理を実施する。画像処理を実施した処理後画像を図5の対象画像表示領域1320へ表示し(S240)、調整画像保存ボタン1330を操作可能にする。図1のS220で取得した“調整項目ID”を保持し(S250)、“調整項目ID”に対応する調整項目名を調整項目名1310へ表示する。更に“調整項目ID”が最終処理項目か判定し、最終処理項目でない場合は(図1のS260でNo)、“調整項目ID”のカウントを1Upする(図1のS160)。1つの調整項目に対する複数のサムネイルを作成するための、図3のサムネイル作成処理プログラムを実行する(S170)。図3のサムネイル作成処理プログラムは、前述した通りである。
ここでは、図6において、ユーザ操作により第1調整項目1410「露出補正」のサムネイル表示領域1420内に表示中の左から2番目のサムネイルが選択された例について説明する。第1調整項目1410「露出補正」のサムネイル表示領域1420に表示中の複数のサムネイルにおいて、左から2番目のサムネイルがクリックされると、図1のS210でYesとなる。クリックされたサムネイルを選択状態で表示し、選択されたサムネイルに対応付けられている“調整項目ID”「1」と“パラメータ値”「−3」を取得する(図1のS220)。図4のパラメータテーブルに対して、取得した“調整項目ID”「1」に対応付けられている”VALUE”へ、“パラメータ値”「−3」を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1upした「2」、「3」に対応付けられている”VALUE”の“パラメータ値”を削除する(図1のS230)。次に図4のパラメータテーブルの“調整項目ID”「1」に設定されている“パラメータ値”「−3」を取得し、対象画像データに、“調整項目ID”「1」である「露出補正」を“パラメータ値”「−3」にて、画像処理を実施する。この例では、選択されたサムネイルが第1調整項目であるため、ここで画像処理を終了し、図6の対象画像表示領域1320へ処理後画像を表示し(S240)、調整画像保存ボタン1330を操作可能にする。次に、調整項目を取得するための“調整項目ID”にS220にて取得した「1」に設定し(S250)、“調整項目ID”のカウントを1Upする(S160)。“調整項目ID”が「2」に対応する調整項目「トーンカーブ」の複数サムネイルを作成するための、図3のサムネイル作成処理プログラムを実行する(S170)。図3にて、“調整項目ID”が「2」に対する、5つのパラメータ「0:0」「80:128」「128:128」「128:200」「255:255」を図4のパラメータテーブルから取得する(S300)。「トーンカーブ」の画像処理は、入力値、出力値の2つの値が必要となる。本実施形態では、“:”で区切って図4のパラメータテーブルに保持されている。図1のS240にて作成した“画像データ”に対して、“調整項目ID”「2」に対応する調整項目「トーンカーブ」を5つの処理パラメータの値にて画像処理の実施(S330)とサムネイルの作成(S340)を繰り返す。5つの処理パラメータでのサムネイルの作成後(S360でNo)、図3の処理を終了し、図1のS170へ戻る。図3の処理により作成された5つのサムネイルを“調整項目ID”が「2」に対応する「トーンカーブ」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「3」以降に対応する調整項目「コントラスト」欄にサムネイルが表示中か判定する。図6の画面では非表示である(S190でNo)ため、ユーザの入力操作を待つ。この時、UI画面は、図7に示す調整対象画像が選択された直後の状態となる。
図7の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400から構成される。RAW画像選択領域1200内の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、調整項目1410の複数のパラメータでのサムネイル表示領域1420と、各パラメータによる画像処理後のサムネイル1430からなる。また、ユーザ操作により決定された第1調整項目「露出補正」1410の決定パラメータサムネイル1470を持つ。更に第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、調整項目1440の複数パラメータでのサムネイル1460から構成される。
図7のUI画面表示後の入力待ち中に、ユーザ操作によりサムネイル表示領域内のいずれかのサムネイルがクリックされ選択された場合は(S210でYes)、既に選択状態のサムネイルの選択を解除する。そして、新たに選択されたサムネイルを選択状態にする。以降の動作は、図6のUI画面表示後の入力待ち中に、サムネイル表示領域内のいずれかのサムネイルが選択された場合と同様であるため説明を省略する。
ここでは、図7において、ユーザ操作により第1調整項目1410「露出補正」のサムネイル表示領域1420内に表示中の左から2番目のサムネイルが選択状態の場合に、左から4番目のサムネイルが選択された例について説明する。第1調整項目1410「露出補正」のサムネイル表示領域1420の左から2番目のサムネイル選択中において、左から4番目のサムネイルがクリックされると、図1のS210でYesとなる。この時、第1調整項目1410「露出補正」の左から2番目のサムネイルの選択状態を解除する。次に、クリックされたサムネイルを選択状態にし、選択されたサムネイルに対応付けられている“調整項目ID”「1」と“パラメータ値”「+3」を取得する(図1のS220)。図4のパラメータテーブルへ、取得した“調整項目ID”「1」に対応付けられている”VALUE”へ、“パラメータ値”「+3」を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1upした「2」、「3」に対応付けられている”VALUE”の“パラメータ値”を削除する(図1のS230)。次に、図4のパラメータテーブルの“調整項目ID”「1」に設定されている“パラメータ値”「+3」を取得し、対象画像データに対して、“調整項目ID”「1」である「露出補正」を“パラメータ値”「+3」にて画像処理を実施する。この例では、選択されたサムネイルが第1調整項目であるため、ここで画像処理を終了し、図7の対象画像表示領域1320へ処理後画像を表示し(S240)、調整画像保存ボタン1330を操作可能にする。次に、調整項目を取得するための“調整項目ID”にS220にて取得した「1」に設定し(S250)、“調整項目ID”のカウントを1Upする(S160)。“調整項目ID”が「2」に対応する調整項目「トーンカーブ」の複数サムネイルを作成するための、図3のサムネイル作成処理プログラムを実行する(S170)。図3にて、“調整項目ID”が「2」に対する、5つのパラメータ「0:0」「80:128」「128:128」「128:200」「255:255」を図4のパラメータテーブルから取得する(S300)。次に、図1のS240にて作成した“画像データ”に対して、“調整項目ID”が“2”に対応する調整項目「トーンカーブ」を取得した5つのパラメータにて画像処理の実施(S330)とサムネイルの作成(S340)を繰り返す。5つのパラメータにて各サムネイルを作成後(S360でNo)、図3の処理を終了し、図1のS170へ戻る。図3の処理により作成された5つのサムネイルを“調整項目ID”が「2」に対応する「トーンカーブ」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「3」以降に対応する調整項目「コントラスト」欄にサムネイルが表示中か判定する。図7の画面では非表示である(S190でNo)ため、ユーザの入力操作を待つ。この時、UI画面は、図8に示す調整対象画像が選択された直後の状態となる。
図8の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400とから構成される。RAW画像選択領域1200の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、ユーザ操作により決定した第1調整項目「露出補正」1410の決定パラメータサムネイル1470を持つ。また、第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、調整項目1440の複数パラメータでのサムネイル1460から構成される。更に第3調整項目「コントラスト」1480と、調整項目1480の複数パラメータでのサムネイル表示領域1490と、調整項目1480の複数パラメータでのサムネイルから構成される。
図8の画面表示後の入力待ち中に、ユーザ操作によりサムネイル表示領域1450のいずれかのサムネイルがクリックされ選択された場合は(S210でYes)、既に選択状態のサムネイルの選択を解除する。そして、選択されたサムネイルを選択状態にする。以降の動作は、図6の画面表示後の入力待ち中に、サムネイル表示領域のいずれかのサムネイルが選択された場合と同様であるため説明を省略する。
ここでは、図8において、ユーザ操作により第1調整項目1410「露出補正」の左から4番目のサムネイルが選択状態の場合に、第2調整項目1440「トーンカーブ」の左から3番目のサムネイルがクリックされた例を説明する。第2調整項目1440「トーンカーブ」のサムネイル表示領域1450の左から3番目のサムネイルがクリックされると、図1のS210でYesとなる。この時、第1調整項目1410「露出補正」の左から4番目のサムネイルの選択状態を解除する。
次に、クリックされたサムネイルを選択状態にし、選択されたサムネイルに対応付けられている“調整項目ID”「2」と“パラメータ値”「128:128」を取得する(図1のS220)。図4のパラメータテーブルに対して、取得した“調整項目ID”「2」に対応付けられている”VALUE”へ、“パラメータ値”「128:128」を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1upした「3」に対応付けられている”VALUE”の“パラメータ値”を削除する(図1のS230)。次に図4のパラメータテーブルの“調整項目ID”「1」に設定されている“パラメータ値”「+3」を取得し、対象画像データに対して、“調整項目ID”「1」である「露出補正」を“パラメータ値”「+3」にて画像処理を実施する。この画像データに、図4のパラメータテーブルの“調整項目ID”「2」に設定されている“パラメータ値”「128:128」を取得し、“調整項目ID”「2」である「トーンカーブ」を“パラメータ値”「128:128」にて、画像処理を実施する。この例では、図1のS220にて取得した“調整項目ID”が「2」あるため、ここで画像処理を終了し、図8の対象画像表示領域1320へ処理後画像を表示し(S240)、調整画像保存ボタン1330を操作可能にする。次に、調整項目を取得するための“調整項目ID”にS220にて取得した「1」に設定し(S250)、“調整項目ID”のカウントを1Upする(S160)。“調整項目ID”が「3」に対応する調整項目「コントラスト」の複数サムネイルを作成するための、図3のサムネイル作成処理プログラムを実行する(S170)。図3にて、“調整項目ID”が「3」に対する、5つのパラメータ「1」「2」「3」「4」「5」を図4のパラメータテーブルから取得する(S300)。次に、図1のS240にて作成した“画像データ”に対して、“調整項目ID”が「3」に対応する調整項目「コントラスト」を取得した5つのパラメータにて画像処理の実施(S330)とサムネイルの作成(S340)を繰り返す。5つのパラメータの各サムネイルを作成後(S360でNo)、図3の処理を終了し、図1のS170へ戻る。図3の処理により作成された5つのサムネイルを“調整項目ID”が「3」に対応する「コントラスト」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「4」以降に対応する調整項目欄にサムネイルが表示中か判定するが、「コントラスト」が最終調整項目のため、図1のS190でNoとなり、ユーザの入力操作を待つ。この時、UI画面は、図9に示す調整対象画像が選択された直後の状態となる。
図9の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400とから構成される。RAW画像選択領域1200の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、ユーザ操作にて決定された第1調整項目「露出補正」1410の決定パラメータサムネイル1510を持つ。また、第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、現在選択中の調整項目1440の決定パラメータでのサムネイル1470から構成される。さらに、第3調整項目「コントラスト」1480と、調整項目1480の複数パラメータでのサムネイル表示領域1490と、調整項目1480の複数パラメータでのサムネイル1500から構成される。
図9の画面表示後の入力待ち中に、ユーザ操作によりサムネイル表示領域1490内のいずれかのサムネイルがクリックされ選択された場合は(S210でYes)、現在の選択状態にあるサムネイルを選択解除する。次に、新たに選択されたサムネイルを選択状態にする。更に選択されたサムネイルに対応付けられている“調整項目ID”と“パラメータ値”を取得する(図1のS220)。図4のパラメータテーブルに取得した“調整項目ID”に対応付けられている”VALUE”へ“パラメータ値”を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”が「1」に対応する調整項目から、図1のS220にて取得した“調整項目ID”に対応する調整項までの“パラメータ値”となる”VALUE”を順に取得し、対象画像データに対して画像処理を実施する。画像処理を実施した処理後画像を図5の対象画像表示領域1320へ表示し(S240)、調整画像保存ボタン1330を操作可能にする。図1のS220にて取得した“調整項目ID”を保持し(S250)、“調整項目ID”に対応する調整項目名を調整項目名1310へ表示する。更に“調整項目ID”が最終処理項目か判定し、最終処理項目の場合は(図1のS260でYes)、ユーザの入力操作を待つ。
ここでは、図9において、ユーザ操作により第2調整項目1440「トーンカーブ」の左から3番目のサムネイルが選択状態の場合に、第3調整項目1480「コントラスト」の左から1番目のサムネイルがクリックされた例を説明する。第3調整項目1480「コントラスト」のサムネイル表示領域1490の左から1番目のサムネイルがクリックされると、図1のS210でYesとなる。この時、第2調整項目1440「トーンカーブ」の左から3番目のサムネイルの選択状態を解除する。次に、クリックされたサムネイルを選択状態にし、選択されたサムネイルに対応付けられている“調整項目ID”「3」と“パラメータ値”「1」を取得する(図1のS220)。図4のパラメータテーブルに対して、取得した“調整項目ID”「3」に対応付けられている”VALUE”へ、“パラメータ値”「1」を設定する(図1のS225)。この例では、図4のパラメータテーブルの“調整項目ID”のカウントを1upした値に対応付けられている”VALUE”が存在しないため、“パラメータ値”を削除は行わず、S240へ移行する。図4のパラメータテーブルの“調整項目ID”「1」に設定されている“パラメータ値”「+3」を取得し、対象画像データに対して、“調整項目ID”「1」である「露出補正」を“パラメータ値”「+3」にて画像処理を実施する。この画像データに対して、図4のパラメータテーブルの“調整項目ID”「2」に設定されている“パラメータ値”「128:128」を取得し、“調整項目ID”「2」である「トーンカーブ」を“パラメータ値”「128:128」にて画像処理を実施する。更にこの画像データに、図4のパラメータテーブルの“調整項目ID”「3」に設定されている“パラメータ値”「1」を取得し、“調整項目ID”「3」である「コントラスト」を“パラメータ値”「1」にて画像処理を実施する。この例では、図1のS220にて取得した“調整項目ID”が「3」あるため、ここで画像処理を終了し、図9の対象画像表示領域1320へ処理後画像を表示し(S240)、調整画像保存ボタン1330を操作可能にする。次に、調整項目を取得するための“調整項目ID”に図1のS220にて取得した「3」に設定し(S250)、最終項目の“調整項目ID”かどうか判定する。図4のパラメータテーブルにおいて、“調整項目ID”「3」が最終調整項目のため、図1のS190でNoとなり、ユーザの入力操作を待つ。この時、UI画面は、図10に示す調整対象画像が選択された直後の状態となる。
図10の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400とから構成される。RAW画像選択領域1200内の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、ユーザ操作により決定された第1調整項目「露出補正」1410の決定パラメータサムネイル1510を持つ。また、第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、ユーザ操作により決定された第2調整項目「トーンカーブ」1440の決定パラメータサムネイル1520を持つ。更に第3調整項目「コントラスト」1480と、調整項目1480の複数パラメータでのサムネイル表示領域1490と、現在選択中の調整項目1480の決定パラメータでのサムネイル1470から構成される。
図10の画面表示後の入力待ち中に、ユーザ操作により調整画像保存ボタン1330がクリックされ選択された場合は(S270でYes)、保存するファイルパスをユーザ操作により指定させるための、図12の出力ファイルパス指定画面を表示する。ユーザ操作によりファイル名の入力後、各調整項目で設定されたパラメータ値で画像処理を実施し、JPEGファイル形式で出力する(S280)。図4のパラメータテーブルの“調整項目ID”に設定されている“パラメータ値”を取得し、対象画像データに対して、“調整項目ID”の順に取得した“パラメータ値”にて画像処理を実施する。図4のパラメータテーブルに設定されている全ての調整項目にて画像処理を実施した後、画像処理結果をユーザ指定のファイルパスにJPEG形式で保存し、ユーザの入力操作を待つ。この入力待ち中に、ユーザ操作により終了ボタン1110がクリックされた場合は(S290でYes)、本画像処理プログラムを終了する。
ここでは、図10において、ユーザ操作により調整画像保存ボタン1330がクリックされた例を説明する。調整画像保存ボタン1330がクリックされた場合は(S270でYes)、保存するファイルパスをユーザ操作により指定させるための、図12の保存ファイルパス指定画面を表示する。ユーザのファイルパスの設定完了後、図4のパラメータテーブルに設定されている“調整項目ID”に対応する“パラメータ値”となる”VALUE”を順に取得する。図10において、先ず“調整項目ID”「1」に設定されている“パラメータ値”「+3」を取得する。対象画像データに対して、“調整項目ID”「1」に対応付けられている「露出補正」の調整項目を“パラメータ値”「+3」にて画像処理を実施する。次に、“調整項目ID”「2」に設定されている“パラメータ値”「128:128」を取得する。「露出補正」処理された画像データに対して、“調整項目ID”「2」に対応付けられている「トーンカーブ」の調整項目を“パラメータ値”「128:128」にて画像処理を実施する。更に“調整項目ID”「3」に設定されている“パラメータ値”「1」を取得する。「露出補正」「トーンカーブ」処理された画像データに、“調整項目ID”「3」に対応付けられている「コントラスト」の調整項目を“パラメータ値”「1」にて画像処理を実施する。画像処理結果をユーザ指定のファイルパスにJPEG形式で保存し、ユーザの入力操作を待つ。
一方、図10の画面表示後の入力待ち中に、ユーザ操作によりサムネイル表示領域内のいずれかのサムネイルがクリックされ選択された場合は(S210でYes)、既に選択状態のサムネイルの選択を解除する。そして、選択されたサムネイルを選択状態にする。次に、選択されたサムネイルに対応付けられている“調整項目ID”と“パラメータ値”を取得する(図1のS220)。図4のパラメータテーブルに取得した“調整項目ID”に対応付けられている”VALUE”へ“パラメータ値”を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1Up以降の”VALUE”を削除する(図1のS230)。図4のパラメータテーブルの“調整項目ID”が「1」に対応する調整項目から、図1のS220にて取得した“調整項目ID”に対応する調整項目までの“パラメータ値”となる”VALUE”を順に取得し、対象画像データに対して画像処理を実施する。画像処理を実施した処理後画像を図10の対象画像表示領域1320へ表示し(S240)、調整画像保存ボタン1330を操作可能にする。図1のS220取得した“調整項目ID”を保持し(S250)、“調整項目ID”に対応する調整項目名を調整項目名1310へ表示する。更に“調整項目ID”が最終処理項目か判定し、最終処理項目でない場合は(図1のS260でNo)、“調整項目ID”のカウントを1Upする(図1のS160)。1つの調整項目に対する複数のサムネイルを作成するための図3のサムネイル作成処理プログラムを実行する(S170)。図3のサムネイル作成処理プログラムは、前述した通りであるため説明を省略する。図3のサムネイル作成処理プログラム終了後、図1のS180へ移行する。図1のS180において、図3の処理により作成された複数のサムネイルを“調整項目ID”に対応する調整項目のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントを1Up以降の調整項目欄にサムネイルが表示されているか判定する。“調整項目ID”のカウントを1Up以降の“調整項目ID”に対応する調整項目のサムネイル表示領域に、サムネイルが表示されている場合は(図1のS190でYes)、複数の全サムネイルを非表示とする(図1のS200)。
ここでは、図10において、ユーザ操作により第3調整項目1480「コントラスト」のサムネイル表示領域1490に表示中のサムネイルが選択状態の場合に、第1調整項目1410「露出補正」の左から3番目のサムネイルがクリックされた例を説明する。図10において、第1調整項目1410「露出補正」のサムネイルがクリックされると、図1のS210でYesとなる。第3調整項目1480「コントラスト」のサムネイルの選択状態を解除し、クリックされたサムネイルを選択状態にする。次に、選択されたサムネイルに対応付けられている“調整項目ID”「1」と“パラメータ値”「0」を取得する(図1のS220)。図4のパラメータテーブルに対して、取得した“調整項目ID”「1」に対応付けられている”VALUE”へ、“パラメータ値”「0」を設定する(図1のS225)。図4のパラメータテーブルの“調整項目ID”のカウントを1upした「2」、「3」に対応付けられている”VALUE”の“パラメータ値”を削除する(図1のS230)。次に、図4のパラメータテーブルの“調整項目ID”「1」に設定されている“パラメータ値”「0」を取得し、対象画像データに対して、“調整項目ID”「1」である「露出補正」を“パラメータ値”「0」にて画像処理を実施する。この例では、選択されたサムネイルが第1調整項目であるため、ここで画像処理を終了し、図10の対象画像表示領域1320へ処理後画像を表示し(S240)、調整画像保存ボタン1330を操作可能にする。次に、調整項目を取得するための“調整項目ID”に図1のS220にて取得した「1」に設定し(図1のS250)、“調整項目ID”のカウントを1Upする(図1のS160)。“調整項目ID”が「2」に対応する調整項目「トーンカーブ」の複数サムネイルを作成するための、図3のサムネイル作成処理プログラムを実行する(図1のS170)。図3にて、“調整項目ID”が「2」に対する、5つのパラメータ「0:0」「80:128」「128:128」「128:200」「255:255」を図4のパラメータテーブルから取得する(図1のS300)。次に、図1のS240にて作成した画像データに対して、“調整項目ID”が“2”に対応する調整項目「トーンカーブ」を取得した5つのパラメータにて画像処理の実施(S330)とサムネイルの作成(S340)を繰り返す。5つのパラメータの各サムネイルを作成後(S360でNo)、図3の処理を終了し、図1のS170へ戻る。図3の処理により作成された5つのサムネイルを“調整項目ID”が「2」に対応する「トーンカーブ」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「3」以降に対応する調整項目「コントラスト」欄にサムネイルが表示中か判定する。図10においては、「コントラスト」欄に表示中である(S190でYes)ため、「コントラスト」欄に表示中の全サムネイルを削除する(S200)。この時、UI画面は、図11に示す調整対象画像が選択された直後の状態となる。
図11の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400から構成される。RAW画像選択領域1200の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、ユーザ操作により決定された第1調整項目「露出補正」1410の決定パラメータサムネイル1470を持つ。また、第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、調整項目1440の複数パラメータでのサムネイル1460から構成される。更に第3調整項目「コントラスト」1480と、調整項目1480の複数パラメータでのサムネイル表示領域1490から構成される。
以上説明したように、本実施形態では、複数の調整項目に画像処理を施す場合は、調整項目の設定処理を実施する順番があり、その設定処理の順番に基づいて調整項目を表示する。そして、ユーザ操作により設定されたパラメータによる処理結果と次調整項目の複数パラメータによる処理結果をサムネイルにて一覧表示する。ユーザは、現調整項目のパラメータにおける次調整項目の処理結果をサムネイルとして確認しながら、調整項目のサムネイル選択を繰り返すことによって、画像調整を進めることが可能となる。これにより、初心者であっても、複数の調整項目の設定処理手順に困惑することなく、所望の画像データへと処理を導くことができる。
[第2の実施形態]第2の実施形態は、第1の実施形態の機能に加えて、画像処理を施した画像データについて、白とびや黒つぶれなどの色の飽和の発生を検出可能とした例である。色の飽和が発生した場合は、ユーザに通知する。本実施形態の画像処理装置の構成は、図2と同様であるため説明を省略する。また、本実施形態では、図1のS170におけるサムネイル作成処理が第1の実施形態と異なる。図1のサムネイル作成処理(S170)以外は、第1の実施形態と同様であるため説明を省略する。
図13は、図1のS170において実行される、色の飽和をユーザに通知するサムネイル作成処理の手順を示すフローチャートである。図13が実行されると、対象画像データの黒“0”と白“255”の総和を求め、“閾値”に設定する。1つの調整項目における複数のパラメータを“調整項目ID”をもとに、図4のパラメータテーブルから取得する(S510)。次に、パラメータ値を取得するための“パラメータIndex”を「Param1」に設定し(S520)、“パラメータIndex”に対応する“パラメータ値”を取得する(S530)。取得した“パラメータ値”で画像処理を施し(S540)、サムネイルを作成する(S550)。S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”に設定する。求めた“閾値”と“調整値”を比較する(S560)。“閾値”と“調整値”の比較の結果、同じである場合には、色の飽和なしと判定し(S570のNo)、次のサムネイル作成へ移行する(図13のS620)。
一方、S560の比較の結果、“閾値”よりも“調整値”が多い場合は、色の飽和ありと判定し(S570のYes)、色の飽和の発生割合を算出する(S580)。“調整値”から“閾値”を引いた値の、対象画像データの全体における割合を算出し、算出結果が、1%〜30%の場合は(S580の1%〜30%)、S550にて作成したサムネイルに小アイコンを合成する(S590)。算出結果が、31%〜70%の場合は(S580の31%〜70%)、S550にて作成したサムネイルに中アイコンを合成する(S600)。算出結果が、71%〜100%の場合は(S580の71%〜100%)、S550にて作成したサムネイルに大アイコンを合成する(S610)。色の飽和の発生割合による、サムネイルの合成処理が終了した場合は、次のサムネイル作成処理へ移行する(S620)。“パラメータIndex”が「Param1」〜「Param5」の間(S630でYes)では、S530からS620の処理を繰り返す。全パラメータの各サムネイルを作成後(S630でNo)、図13の複数のサムネイル作成処理を終了し、図1のS180へ移行する。図1のS180において、図13の処理により作成された複数のサムネイルを“調整項目ID”に対応する調整項目のサムネイル表示領域に表示する(図1のS180)。
本実施形態では、色の飽和の発生と考えられる閾値を対象画像データの黒“0”と白“255”の総和としているが、閾値を予め保持している構成であっても良い。また、ユーザに色の飽和の度合いを示すために、サムネイルに大、中、小のアイコンを合成させたが、サムネイル内に色の飽和部分を変化させたり、飽和の度合いによるアイコンを変化させる構成であっても良い。ここでは、図6において、ユーザ操作により第1調整項目1410「露出補正」のサムネイル表示領域1420に表示中の左から5番目のサムネイルが選択された時に、色の飽和が発生した例について説明する。第1調整項目1410「露出補正」のサムネイル表示領域1420に表示中の複数のサムネイルにおいて、左から5番目のサムネイルがクリックされると、図1のS210でYesとなる。図1のS210からS160への処理は、第1の実施形態と同様であるため説明を省略する。
図1のS170において、“調整項目ID”が「2」に対応する調整項目「トーンカーブ」の複数のサムネイルを作成するための、図13のサムネイル作成処理プログラムを実行する。図13にて、先ず対象画像データの黒“0”と白“255”の総和を求め、“閾値”に設定する(S500)。ここでは、“閾値”を「20」とする。“調整項目ID”が「2」に対する、5つのパラメータ「0:0」「80:128」「128:128」「128:200」「255:255」を図4のパラメータテーブルから取得する(S510)。「トーンカーブ」の画像処理は、入力値、出力値の2つの値が必要となる。本実施形態では、“:”で区切って図4のパラメータテーブルに保持されている。次に、図1のS240にて作成した画像データに対して、“調整項目ID”が“2”に対応する調整項目「トーンカーブ」を取得した1つ目の“パラメータ値”「0:0」にて画像処理の実施(S540)とサムネイルの作成(S550)を行う。
次に、S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”とする。ここでは、求めた“調整値”を「95」とする。求めた“閾値”と“調整値”を比較する(S560)。S560の比較の結果、“閾値”「20」よりも“調整値”「95」が多いため、色の飽和ありと判定し(S570のYes)、色の飽和の発生割合を算出する(S580)。“調整値”から“閾値”を引いた値「75」にて、対象画像データの全体における割合を算出する。ここでは、算出結果を「75%」とする。算出結果が「75%」の場合、“71%〜100%”となるため(S580の71%〜100%)、S550にて作成したサムネイルに大アイコンを合成する(S610)。その後、S620に移行し、次の“パラメータ”「Param2」を処理する。
2つ目の“パラメータ値”「80:128」にて画像処理の実施(S540)とサムネイルの作成(S550)を行う。次に、S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”とする。ここでは、求めた“調整値”を「60」とする。求めた“閾値”と“調整値”を比較する(S560)。S560の比較の結果、“閾値”「20」よりも“調整値”「60」が多いため、色の飽和ありと判定し(S570のYes)、色の飽和の発生割合を算出する(S580)。“調整値”から“閾値”を引いた値「40」にて、対象画像データの全体における割合を算出する。ここでは、算出結果を「40%」とする。算出結果が、「40%」の場合、“31%〜70%”となるため(S580の31%〜70%)、S550にて作成したサムネイルに中アイコンを合成する(S600)。S620に移行し、次の“パラメータ”「Param3」を処理する。
3つ目の“パラメータ値”「128:128」にて画像処理の実施(S540)とサムネイルの作成(S550)を行う。次に、S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”とする。ここでは、求めた“調整値”を「40」とする。求めた“閾値”と“調整値”を比較する(S560)。S560の比較の結果、“閾値”「20」よりも“調整値”「40」が多いため、色の飽和ありと判定し(S570のYes)、色の飽和の発生割合を算出する(S580)。“調整値”から“閾値”を引いた値「20」にて、対象画像データの全体における割合を算出する。ここでは、算出結果を「20%」とする。算出結果が「20%」の場合、“1%〜30%”となるため(S580の1%〜30%)、S550にて作成したサムネイルに小アイコンを合成する(S590)。その後、S620に移行し、次の“パラメータ”「Param4」を処理する。
4つ目の“パラメータ値”「128:200」にて画像処理の実施(S540)とサムネイルの作成(S550)を行う。次に、S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”とする。ここでは、求めた“調整値”を「20」とする。求めた“閾値”と“調整値”を比較する(S560)。S560の比較の結果、“閾値”「20」と“調整値”「20」が同じであるため、色の飽和なしと判定し(S570のNo)、S620に移行し、次の“パラメータ”「Param5」を処理する。
5つ目の“パラメータ値”「255:255」にて画像処理の実施(S540)とサムネイルの作成(S550)を処理する。次に、S540での画像処理後の画像データから、黒“0”と白“255”の総和を求め、“調整値”とする。ここでは、求めた“調整値”を「20」とする。求めた“閾値”と“調整値”を比較する(S560)。S560の比較の結果、“閾値”「20」と“調整値”「20」が同じであるため、色の飽和なしと判定し(S570のNo)、S620に移行し、未処理パラメータがない場合は、図13の処理を終了し、図1のS170へ戻る。
次に、図13の処理により作成された5つのサムネイルを“調整項目ID”が「2」に対応する「トーンカーブ」のサムネイル表示領域に表示する(S180)。次に、“調整項目ID”のカウントUpした「3」以降に対応する調整項目「コントラスト」欄にサムネイルが表示中か判定する。図6においては、非表示である(S190でNo)ため、ユーザの入力操作を待つ。この時、画面は、図14に示す色の飽和が発生した際の第1調整項目のサムネイル選択直後の状態となる。
図14の画像調整画面1100は、プログラム終了ボタン1110と、RAW画像選択領域1200と、画像表示領域1300と、調整項目一覧表示領域1400とから構成される。RAW画像選択領域1200の画像データ1210は、画像処理の対象となるRAW画像データ形式の画像データである。画像表示領域1300は、現在処理中の画像データを表示する領域である。この画像表示領域1300は、調整中の項目名1310と、対象画像表示領域1320と、調整画像保存ボタン1330からなる。調整項目一覧表示領域1400は、第1調整項目「露出補正」1410と、ユーザ操作により決定された第1調整項目「露出補正」1410の決定パラメータサムネイル1470を持つ。また、第2調整項目「トーンカーブ」1440と、調整項目1440の複数パラメータでのサムネイル表示領域1450と、調整項目1440の複数パラメータでのサムネイル1460から構成される。更に第2調整項目「トーンカーブ」1440において、複数パラメータでの処理結果が、色の飽和の発生割合大サムネイル1600、色の飽和の発生割合中サムネイル1610、色の飽和の発生割合小サムネイル1590から構成される。
以上説明したように、本実施形態では、複数の調整項目の設定処理の順番に従い、調整項目を表示する。ユーザ操作により設定されたパラメータでの処理結果と次調整項目の複数パラメータでの処理結果を、サムネイルにて一覧表示する。処理結果に対して色の飽和が発生したと判定した場合は、サムネイル上又は近傍に色の飽和の発生率に応じたサイズのアイコンで識別可能に表示する(飽和度表示)。これにより、ユーザは、画像処理の際に、調整項目の処理パラメータ値による色の飽和の発生を認識することが可能となる。
[第3の実施形態]本実施形態では、RAW画像データ形式の原画像データに対して、5種類の調整項目(「ホワイトバランス」、「露出補正」、「トーンカーブ」、「コントラスト」、「色の濃さ」)について調整された値を利用して画像処理を行い、JPEGなどの圧縮形式の画像データを生成して保存する。本実施形態では、原画像データの特性に応じて、調整項目のパラメータ値の設定の順番を変更する場合について説明する。本実施形態の画像処理装置の構成は、図2に示した通りである。
本実施形態において画像処理装置が実行する動作を、図1を参照して説明する。以下の動作は、画像処理装置の制御部(CPU)100がハードディスク110に記憶された画像処理プログラムやOS読み出して起動し、これらにしたがって、各種モジュールを制御することにより実現される。まず、制御部100は図5に示す初期画面をディスプレイ140に表示し、ハードディスク110に記憶された原画像データと対応するサムネイル画像の一覧をRAW画像選択領域1200に表示する(S100)。ユーザの操作に応答して、制御部100は、処理対象となる原画像データと対応するサムネイル画像が選択されたか否か判定する(S110)。処理対象となる原画像データが選択されると、制御部100は、処理対象となる原画像データをハードディスク110から読み込み(S120)、描画処理を行い、画像表示領域1300に表示する(S130)。そして、制御部100は後述する図15のフローチャートで示す通りの動作を実行することにより、複数の調整項目ごとに区分したパラメータ値設定領域を調整項目一覧表示領域1400に表示する(S140)。
次に制御部100は、調整項目IDに“0”を代入し(S150)、調整項目IDのカウントに“1”を加算する(S160)。制御部100は、図3のフローチャートに示す通りの動作を実行することにより、調整項目IDと対応する調整項目について、異なるパラメータ値で処理した結果を示すサムネイル画像を作成する(S170)。そして、制御部100は、作成されたサムネイル画像を調整項目一覧表示領域1400の該当する調整項目の領域に表示する(S180)。また、制御部100は、現在の調整項目IDのカウントにさらに“1”以上を加算した調整項目IDとそれぞれ対応する調整項目の領域に既にサムネイル画像が表示されているか否か判定する(S190)。そして、表示されていると判定された調整項目の領域のサムネイル画像を削除し(S200)、非表示にする。
制御部100は、ユーザの操作に応答して、調整項目一覧表示領域1400に表示されたサムネイル画像が選択されたか否か判定する(S210)。サムネイル画像が選択されると、制御部100は、当該サムネイル画像が属する調整項目と対応する調整項目IDおよび当該サムネイル画像と対応するパラメータ値を取得する(S220)。そして、当該パラメータ値を当該調整項目のVALUEへ設定して保持する(S225)。制御部100は、ステップS220にて取得された調整項目ID のカウントにさらに“1”以上を加算した調整項目IDとそれぞれ対応する調整項目のVALUEに設定された値を消去する(S230)。制御部100は、VALUEに値が設定されている調整項目について、VALUEに設定された値を利用して原画像データのコピーに対して画像処理を実行することにより表示用画像データを生成し、処理結果として画像表示領域1300に表示する(S240)。
制御部100は、調整項目IDをステップS220にて取得された調整項目IDとし(S250)、当該調整項目IDと最大の調整項目IDとを比較し、当該調整項目が最終調整項目であるか否か判定する(S260)。比較の結果、当該調整項目IDが最大の調整項目IDより小さければ、ステップS160へ遷移し、当該調整項目IDが最大の調整項目IDと一致すれば最終処理項目であると判断してステップS270へ遷移する。
制御部100はユーザの操作に応答して、画像処理結果の保存の指示を受けたか否かを判定する(S270)。保存の指示を受けたと判定すると、制御部100は、各調整項目のVALUEに設定された値を利用して原画像データのコピーに対して画像処理を実行することにより保存用画像データを生成する(S280)。生成された保存用画像データは、所定の圧縮形式、例えばJPEG形式を持ち、原画像データとは異なるファイル名を付与されて、ハードディスク110の所定の記憶領域に保存される。その後、制御部100はユーザの操作に応答して終了の指示を受けたか否かを判定し(S290)、終了の指示を受けると、本動作を終了する。
次に、図3のフローチャートを参照し、本実施形態において、ステップS170で制御部100が実行する動作について説明する。まず、制御部100は画像タイプおよび処理項目IDと対応する調整項目名に基づき、図16Bに示すようなテーブルで管理されたパラメータテーブル1620から、当該調整項目名のレコードを取得する(S300)。制御部100はパラメータIndexに“Param1”を設定し(S310)、レコードの中から“Param1”に相当する値を読み出し、パラメータ値として設定する(S320)。制御部100は、パラメータ値に設定された値を利用して、原画像データのコピーに画像処理を実行し(S330)、処理結果からサムネイル画像データを作成する(S340)。制御部100は、パラメータIndexに“1”を加算し(S350)、レコードに未処理の値があるか否かを判定する(S360)。ここで制御部100は、パラメータIndexが最大値に達しているか否かで判定する。制御部100は、レコードに未処理の値があれば、ステップS320に遷移し、レコードに未処理の値がなければ、本動作を終了する。
次に、図15のフローチャートを参照し、本実施形態において、ステップS140で制御部100が実行する動作について説明する。以下では、原画像データを解析して色データの割合を原画像データの特性として求め、その特性に応じて、原画像データを所定の画像タイプに分類し、複数の調整項目の設定の順番を決定する。まず、制御部100は画像タイプに「Type1」を設定する(S710)。次に、制御部100は原画像データを解析して、横軸を輝度、縦軸を画素とするヒストグラムを作成する(S720)。制御部100は、黒に近い値、すなわち輝度が“0〜50”の画素の数を取得し(S730)、全画素数に対する割合を算出し、所定の割合より大きいか否か判定する(S740)。本実施形態では所定の割合を70%として説明する。黒に近い値を持つ画素の割合が、画像全体の71%〜100%の場合は(S740でYes)、黒っぽい画像であると判断して画像タイプに「Type2」を設定する(S750)。一方、黒に近い値を持つ画素の割合が、画像全体の0%〜70%の場合は(S740で、No)、白に近い値、すなわち輝度が“200〜255”の画素の数を取得する(S760)。そして、全画素数に対する割合を算出し、所定の割合より大きいか否か判定する(S770)。白に近い値を持つ画素の割合が、画像全体の71%〜100%の場合は(S770で、Yes)、白っぽい画像であると判断して画像タイプに「Type3」を設定する(S780)。一方、白に近い値を持つ画素の割合が、画像全体の0%〜70%の場合は(S770で、No)、黒に近い値、すなわち輝度が“0〜50”の画素の数と白に近い値、すなわち輝度が“200〜255”の画素の数の和を取得する(S790)。更に、全画素数に対する割合を算出し、所定の割合より大きいか否か判定する(S800)。黒に近い値を持つ画素の数と白に近い値を持つ画素の数の和の割合が、画像全体の71%〜100%の場合は(S800で、Yes)、はっきりしている画像であると判断して画像タイプに「Type4」を設定する(S810)。一方、黒に近い値を持つ画素の数と白に近い値を持つ画素の数の和の割合が、画像全体の0%〜70%の場合は(S800で、No)、画像タイプは「Type1」に設定したままとなる。
制御部100は、以上のようにして設定された画像タイプと対応する調整項目の設定順を図16Aに示すような調整項目テーブルから取得する(S830)。図16Aでは画像タイプ別に、処理項目IDが小さいものから順に、対応する処理項目の値を設定することを示す情報が格納されている。制御部100は調整項目ごとに区分したパラメータ値設定領域を、取得した調整項目の設定の順番にしたがって並べて調整項目一覧表示領域1400に表示する(S840)。ステップS840で表示される調整項目一覧表示領域1400の一例を図17に示す。図17では、サムネイル画像1210が選択されている。そして、制御部100が当該サムネイル画像1210と対応する原画像データを解析した結果、画像タイプとして“Type1”を設定し、図16Aを参照して得た設定順にしたがい、各調整項目を上から順に表示している様子を示している。
以上説明したように、本実施形態では、原画像データのカラーバランスを解析し、その解析結果によって、複数の調整項目の設定処理の順番を決定する。これにより、色の飽和が発生しにくい順番で調整項目の設定処理を実施できるようになり、画像処理の結果に黒ツブレや白トビが発生することを防ぎ、ユーザの所望する画像処理の結果が速やかに得られるように、ユーザの操作を導くことができる。
なお、本実施形態では、原画像データのカラーバランスを解析する場合について説明したが、原画像データの他の特性を解析し、その解析結果に応じて複数の調整項目の設定処理の順番を決定するようにしてもよい。例えば、原画像データの明るさを解析し、明るさの偏よりが大きい場合には、「露出」、「ホワイトバランス」、「その他の調整項目」の順になるように画像タイプを設定する。あるいは、原画像データの色合いを解析し、色合いの偏りが大きい場合には、「ホワイトバランス」、「露出」、「その他の調整項目」の順になるように画像タイプを設定する。あるいは、原画像データのノイズ量を解析し、ノイズが多い場合には、「ノイズリダクション」、「その他の調整項目」の順になるように画像タイプを設定する。これらのようにすることにより、原画像データの特性に最適な順番で調整項目の設定を、ユーザに行わせることができるようになり、ユーザは所望とする画像処理結果をより一層、得られ易くなる。
また、本実施形態ではステップS140で全ての調整項目と対応する値設定領域を同時に並べて表示する場合について説明した。この場合、ユーザが調整項目の設定の手順の全容を把握し易くなる。しかしながら、これに限らず、設定の順番にしたがって、調整項目と対応する値設定領域を順に追加しながら表示するようにしてもよい。例えば、最初は1番目の調整項目の値設定領域を表示し、その設定が行われると、2番目の調整項目の値設定領域を追加して表示する。これにより、ユーザはいずれかの調整項目の設定を欠いてしまうことなく、確実に各調整項目の設定を行えるようになる。なお、上記各実施形態では、RAW画像データの形式を持つ原画像データに対して画像処理を行う例を説明したが、JPEGやBMPなどの他の形式を持つ画像ファイルに対して「トーンカーブ」「コントラスト」「シャープネス」などの調整項目について画像処理を実施する場合にも本発明を同様に適用できる。
[他の実施形態]本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給しても達成可能である。すなわち、そのシステムあるいは装置のコンピュータ(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性の半導体メモリカード、ROM等を用いることができる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合もある。
しかし、さらにプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる場合も有得る。その後、プログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。