(57)【特許請求の範囲】
【請求項１】
少なくとも１つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムであって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記プログラムが、
複数のユーザインターフェース項目を表示することと、
ここでユーザインターフェース項目それぞれは、複数の予め定義されたコンテンツタイプ内において、異なるコンテンツタイプと関連付けられている；
画像の色値を調整するため、前記複数のユーザインターフェース項目における特定のユーザインターフェース項目に対する調整を受けとることと、
ここで、前記特定のユーザインターフェース項目は、前記複数の予め定義されたコンテンツタイプ内の、或る予め定義されたコンテンツタイプに関連付けられている；
前記特定のユーザインターフェース項目に対して受け付けた調整に基づき当該特定のユーザインターフェース項目に関連付けられた、予め定義されたコンテンツタイプに関連付けられた色値の範囲内にある画素値を持つ画素のサブセットを特定することと、
前記特定のユーザインターフェース項目に対して受け付けた調整に基づき、前記特定された画素のサブセットに対して、色調整操作を実行することと、
に関する命令のセットを含むことを特徴とするプログラム。
【請求項２】
前記複数の予め定義されたコンテンツタイプは、空、群葉、及び肌の色調であることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記特定された画素が、前記画像内で連続的領域を形成しない、ことを特徴とする請求項１に記載のプログラム。
【請求項４】
前記色調整操作が、前記特定された画素のサブセットの彩度を調整するための操作、前記特定された画素のサブセットの明度を調整するための操作、及び前記特定された画素のサブセットのコントラストを調整するための調整の１つを含む、ことを特徴とする請求項１に記載のプログラム。
【請求項５】
前記色調整操作が、前記色空間内で実行される、ことを特徴とする請求項１に記載のプログラム。
【請求項６】
色空間内で表される画像の色値を調整するための装置であって、前記画像が画素のセットを含み、各画素が色値のセットを含み、前記装置が、
複数のユーザインターフェースコントロールと、
ここでユーザインターフェースコントロールそれぞれは、複数の予め定義されたコンテンツタイプ内において、異なるコンテンツタイプと関連付けられており、
ユーザインターフェースコントロールそれぞれは、対応する予め定義されたコンテンツタイプに関連付けられた、前記画像の色値の調整するための入力を受け付けるためのもである；
前記入力を受け付けるユーザインターフェースコントロールに対して受け付けた調整に基づき、当該入力を受け付けたユーザインターフェースコントロールに関連付けられた予め定義されたコンテンツタイプに関連付けられた、予め定義された色値の範囲内の画素値を有する画素のサブセットを特定するための画素分離器と、
前記入力を受け付けたユーザインターフェースコントロールに対して受け付けた調整に基づいて、前記特定された画素のサブセットの前記色値を調整するための色調整器と、
を含む、ことを特徴とする装置。
【請求項７】
前記色値の範囲は、前記画像の前記色値が定義される前記色空間とは異なる反対色空間内で定義され、前記装置が、前記画像の前記色値を前記反対色空間に変換するための色空間変換器を更に含む、ことを特徴とする請求項６に記載の装置。
【請求項８】
前記色調整器が、前記反対色空間内で、前記特定された画素のサブセットの前記色値を調整する、ことを特徴とする請求項７に記載の装置。
【請求項９】
少なくとも１つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムであって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記プログラムが、
タッチ入力を介して前記画像上の場所の選択を受け取ることと、
前記選択された場所に基づき、前記画像上の前記選択された場所に関連付けられている特定のコンテンツタイプを判定することと、
複数の異なるコンテンツタイプ用の複数の異なる方向画像編集コントロールのセットから、特定のコンテンツタイプ用の複数の異なる画像編集コントロールのセットを選択し、前記画像上に表示することと、
ここで、画像編集コントロールのセットのそれぞれは、前記画像編集コントロールのセット内のコントロールに沿った少なくとも２つの異なる方向に関連付けられた少なくとも２つの異なる画像編集操作を特定する；
前記タッチ入力が維持され、前記画像編集コントロールの特定のセットの方向における、１つの特定の方向に沿って当該タッチ入力が移動している間、前記特定の方向に関連付けられた画像編集操作を、前記画像に対して実行することと、
の命令のセットを含む、ことを特徴とするプログラム。
【請求項１０】
前記コンテンツタイプは、人の肌色、空、及び群葉のうちの１つである、ことを特徴とする請求項９に記載のプログラム。
【請求項１１】
少なくとも１つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムであって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記プログラムが、
タッチ入力を介した、表示された画像上の場所の選択に応じて、前記画像上の選択された場所に関連付けられた特定のコンテンツタイプを判定することと、
前記画像上に、方向画像編集コントロールの第１、第２のセットを表示することと、
ここで、画像編集コントロールのセットのそれぞれは、前記画像編集コントロールのセット内のコントロールに沿った少なくとも２つの異なる方向に関連付けられた少なくとも２つの異なる画像編集操作を特定する；
前記画像編集コントロールの前記第１のセットは、前記特定のコンテンツタイプに適用される画像編集操作用であり、
前記画像編集コントロールの前記第２のセットは、前記画像の全体に適用される画像編集操作用である；
前記タッチ入力が維持され、前記方向画像編集コントロールの前記第１、第２のセットにおける特定のコントロールに沿って当該タッチ入力が移動している間、前記特定の方向に関連付けられた画像編集操作を実行することと、
の命令のセットを含む、ことを特徴とするプログラム。
【請求項１２】
前記プログラムが、前記特定のコントロールに沿った前記タッチ入力の移動に基づいて、適用するべき前記画像編集操作の量を決定するための命令のセットを更に含む、ことを特徴とする請求項１１に記載のプログラム。
【請求項１３】
少なくとも１つの処理ユニットによって実行される命令セットを有し、色空間内で表される画像の色値に対して色バランス操作を実行するプログラムであって、
前記プログラムが、
複数の画素を含む前記画像上の場所の選択を受け取ることと、ここで各画素は色値のセットを含む、
前記画像の前記選択された場所に対応する画素のセットの色値のセットに基づいて、前記色値のセットを前記色バランス操作の特定のタイプに関連付けられた色値の所定セットへ修正するための色調整を特定することと、
前記特定された色調整に基づき、前記色空間を修正する色空間変換を生成することと、
前記画像の画素のサブセットに前記色空間変換を適用することで、前記画像に対し、前記色バランス操作の特定のタイプを実行することと、
の命令のセットを含む、ことを特徴とするプログラム。
【請求項１４】
前記生成された色空間変換が、前記画像内の画素のセットの各画素の色値を、異なる色値のセットにマッピングする、ことを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記色調整を特定するための前記命令のセットが、灰色の色値のセットを、前記色値の所定セットとして、使用するための命令のセットを含む、ことを特徴とする請求項１３に記載のプログラム。
【請求項１６】
前記色調整を特定するための前記命令のセットが、肌色の色値のセットを、前記色値の所定セットとして、使用するための命令のセットを含む、ことを特徴とする請求項１３に記載のプログラム。
【請求項１７】
前記プログラムが、前記画像上の前記選択された場所の周囲にユーザインターフェース項目を表示する命令のセットを更に含む、ことを特徴とする請求項１３に記載のプログラム。
【請求項１８】
前記色調整は第１の色調整であり、前記色空間変換は第１の色空間変換であって、
前記プログラムは、
前記ユーザインターフェース項目を、第１の場所から前記画像上の異なる第２の場所へ移動させることと、
前記画像の前記第２の場所に対応する、画素のセットの色値のセットに基づいて、第２の色調整を特定することと、
前記第２の色調整に基づいて、前記色空間を修正する第２の色空間変換を生成することと、
前記第２の色空間変換を前記画像の画素のサブセットに適用することで、前記画像に対して別の色バランス操作を実行することと、
の命令のセットを更に含む、ことを特徴とする請求項１７に記載のプログラム。
【請求項１９】
前記プログラムが、前記ユーザインターフェース項目によって特定される前記画像の領域の、ズーミングレベルを調整するための命令のセットを更に含む、ことを特徴とする請求項１７に記載のプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
デジタルグラフィックデザイン及び画像編集アプリケーション（以降では、画像編集アプリケーションと総称される）は、グラフィックデザイナー、メディアアーティスト、及び他のユーザに、画像を閲覧及び編集するために必要なツールを提供する。そのようなアプリケーションの例としては、ｉＰｈｏｔｏ（登録商標）、Ａｐｅｒｔｕｒｅ（登録商標）、及びＦｉｎａｌ  Ｃｕｔ  Ｐｒｏ（登録商標）が挙げられ、それら全てがＡｐｐｌｅ，Ｉｎｃ．により販売されている。これらのアプリケーションは、様々な様式で画像を編集するための能力をユーザに与える。例えば、一部のアプリケーションは、画像又はビデオの種々の色値を調整するための種々の範囲スライダを提供する。
【０００２】
しかしながら、多くの画像編集アプリケーションは、直感的な色調整コントロールを提供しない。例えば、ユーザは、既存の色調整ツールの殆どを有効に使用するためには、色編集についての幅広い知識を有することが必要とされる。更には、画像の色値の様々な特徴を調整するためのコントロールは、ユーザインターフェースの様々な場所に分散されている。これらの不備は、画像を編集する際に、不必要な不便を引き起こす。
【発明の概要】
【０００３】
画像編集アプリケーションにおける、画像を編集するための幾つかの新規のユーザインターフェース（ＵＩ）ツールの実施形態が説明される。一部の実施形態では、この画像編集アプリケーションは、特定の色範囲に関連付けられているコンテンツのタイプ（例えば、空、群葉など）に関連する、画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する。画像上の特定のコンテンツのタイプの色値を調整するためのＵＩコントロールを通じて、入力が受け取られると、このアプリケーションは、そのコンテンツのタイプに関連付けられている画像内の画素のセットを、自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。
【０００４】
一部の実施形態では、各ＵＩコントロールは、画像内の異なるコンテンツのタイプに関連する色値を調整するためのものである。一部の実施形態のアプリケーションは、コンテンツの各タイプに関して、色空間内部での色値の範囲を定義する。特定のＵＩコントロールを通じて入力が受け取られると、このアプリケーションは、画像内の画素を探索して、その特定のＵＩコントロールに対応するコンテンツのタイプに関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する。
【０００５】
画像は、色空間内に定義される色値を有する、画素を含む。一部の実施形態では、画像の色値は、種々のコンテンツのタイプに関連付けられている色値の範囲が、定義される特定の色空間とは異なる色空間内で定義される。これらの実施形態では、アプリケーションは、画素のセットを特定する前に、画像の色値をそれらの本来の色空間から、色値の範囲が定義される特定の色空間に変換する。
【０００６】
一部の実施形態では、各色調整は、画像に適用される調整の様々な程度を指定するための調整値の範囲を含む。これらの実施形態では、ＵＩコントロールはまた、画像に適用される調整の程度を制御するための調整値を、ユーザが指定するための手段も提供する。種々の実施形態は、種々の技術を使用して、ＵＩコントロールのセットを実装する。例えば、一部の実施形態のアプリケーションは、範囲スライダのセットとしてＵＩコントロールのセットを実装する。これらの実施形態では、ユーザは、範囲スライダ上の種々の位置を選択することによって、種々の調整値を指定することができる。
【０００７】
一部の実施形態では、このアプリケーションは、特定のＵＩコントロールに対するユーザ入力に応答して、画像の色値に対する１つのタイプの調整（例えば、彩度調整）のみを実行する。しかしながら、一部の他の実施形態のアプリケーションは、特定のＵＩコントロールに対する単一のユーザ入力に応答して、画像の色値に対する２つ以上のタイプの調整を実行する。例えば、ユーザ入力に応答して、一部の実施形態のアプリケーションは、画像の色値に対する、彩度調整、コントラスト調整、及び明度調整を実行することができる。これらの実施形態では、アプリケーションは、単一のユーザ入力を使用して、各調整操作に関する調整値を決定し、これらの調整操作を画像に適用する。
【０００８】
一部の実施形態は、画像編集アプリケーションにおける、画像を編集するための別の新規なＵＩを提供する。これらの実施形態では、アプリケーションは、画像上の場所をユーザが選択することを可能にし、その画像上の選択された場所で、種々のコンテンツのタイプが検知される場合に、その画像に適用するための種々の画像編集操作に関連付けられている種々のＵＩコントロールを表示する画像編集ツールを提供する。これらの実施形態では、ユーザが画像上の場所を選択し、このアプリケーションの画像編集ツールが、画像上の選択された場所に対応する画素の色値を、その画像から取得する。次いで、色編集ツールは、それらの画素値に対する一連の分析を実行して、その選択された場所が、特定のコンテンツのタイプを表現するか否かを検出する。検出されたコンテンツのタイプに基づいて、色編集ツールは、画像編集操作のセットを決定し、その決定された画像編集操作に関連付けられているＵＩコントロールのセットを表示する。一部の実施形態では、ＵＩコントロールは、画像の上に重ね合わされる。
【０００９】
種々の実施形態は、取得された画像の色値に対して、種々の分析を実行する。一部の実施形態では、このアプリケーションは、その画像の選択された場所が予め定義されたコンテンツのタイプを表現するか否かを検出するための一連の分析を実行する。これらの実施形態では、アプリケーションは、種々のコンテンツのタイプに関する種々の色値の範囲を定義している。次いで、このアプリケーションは、取得された色値が、それらの色値の範囲のうちのいずれか１つの範囲内に収まるか否かを判定する。取得された色値が、特定の色値の範囲内に収まる場合、このアプリケーションは、取得された色値、並びに選択された場所を、対応するコンテンツのタイプと関連付ける。次いで、このアプリケーションは、検出されたコンテンツのタイプに基づいて、重ね合わせＵＩコントロールのセットを提供する。
【００１０】
一部の実施形態では、ＵＩコントロールのセットは、その選択された場所で、又は選択された場所の近傍で、画像の上に重ね合わされる。一部の実施形態では、この重ね合わせＵＩコントロールは、不透明か又は透明かの一方である。ユーザは、画像に対して入力を提供することによって、これらのＵＩコントロールを操作することができる。これらの実施形態の一部では、ＵＩコントロールは、ユーザが、特定の方向入力を提供することによって、特定の画像編集操作を選択することができる、方向依存性ＵＩコントロールである。ユーザが、画像に対して方向入力を提供すると、このアプリケーションは、入力の方向に基づいて、その入力をＵＩコントロールのうちの１つに関連付け、対応する調整を画像に適用する。
【００１１】
一部の実施形態では、ＵＩコントロールの重ね合わせを通じて画像に対して実行することが可能な、各画像編集操作は、画像に対して実行される編集の様々な程度を指定するための調整値の範囲を含む。これらの実施形態では、アプリケーションはまた、ユーザによって提供される方向入力に基づいて、大きさも特定する。次いで、このアプリケーションは、その特定された入力の大きさに基づいて、画像編集操作に関する調整値を計算し、その計算された調整値を使用して、画像に対して画像編集操作を実行する。
【００１２】
コンテンツ依存性ＵＩコントロールに加えて、一部の実施形態のアプリケーションはまた、画像の色バランスを調整するための新規のＵＩも提供する。一部の実施形態では、このアプリケーションは、画像上の場所をユーザが選択することを可能にする、色バランスＵＩコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色（例えば、灰色、理想的な肌色など）に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。
【００１３】
種々の実施形態は、この色バランス調整操作のための種々の基準色を提供する。基準色として灰色が設定される一部の実施形態では、ユーザは、灰色として現われる対象物を表示する画像内の場所を選択することによって、色バランスＵＩを通じて画像の色バランスを調整することができる。他の実施形態では、このアプリケーションは、理想的な肌色を基準色として設定することができる。これらの実施形態では、ユーザは、人の顔を表示する画像内の場所を選択することによって、色バランスＵＩを通じて画像の色バランスを調整する。
【００１４】
一部の実施形態では、このアプリケーションは、画像の色バランスを調整するために画像上に重ね合わされる色バランスＵＩコントロールを提供する。これらの実施形態の一部では、色バランスＵＩコントロールは、画像上で移動可能であり、ユーザが、色バランスＵＩコントロールを所望の場所に移動させることによって、画像上の場所を指定することを可能にする。
【００１５】
一部の実施形態では、色バランスＵＩコントロールは、ズーミング能力を提供することにより、ユーザが、ホワイトバランス操作のための場所を正確に選択することを可能にする。これらの実施形態では、色バランスＵＩコントロールは、閉じた境界線を含む。アプリケーションは、この色バランスＵＩコントロールの閉じた境界線内部の、画像の部分をズームインする（すなわち、拡大する）。色バランスＵＩコントロールの閉じた境界線内部の画像は、より大きくなるように現われるため、ユーザは、より正確に、画像上の場所を選び取ることができる。
【００１６】
ズーミング能力に加えて、色バランスＵＩコントロールはまた、編集された画像のプレビューをユーザに提供することもできる。一部の実施形態では、このアプリケーションは、色バランスＵＩコントロールの閉じた境界線の外側にある画像の部分の、編集済みバージョンを表示すると共に、閉じた境界線の内側にある画像の部分の、未編集バージョンを表示する。
【００１７】
上記の「発明の概要」は、本明細書で説明される一部の実施形態の、簡潔な紹介としての役割を果たすことを意図するものである。本文書で開示される全ての発明主題の、序論又は概要であることを意味するものではない。以下の「発明を実施するための形態」、及び「発明を実施するための形態」で参照される図面は、この「発明の概要」で説明された実施形態、並びに他の実施形態を、更に説明するものである。したがって、本文書によって説明される全ての実施形態を理解するためには、「発明の概要」、「発明を実施するための形態」、及び図面の十分な検討が必要とされる。更には、特許請求される主題は、「発明の概要」、「発明を実施するための形態」、及び図面での、例示的な詳細によって限定されるものではなく、むしろ、特許請求される主題は、その主題の趣旨から逸脱することなく他の特定の形態で具体化することができるため、添付の特許請求の範囲によって定義されるものである。
【図面の簡単な説明】
【００１８】
本明細書で説明される新規の特徴は、添付の特許請求の範囲に記載される。しかしながら、説明の目的上、幾つかの実施形態が、以下の図に記載される。
【図１】画像上に選択された異なる場所に基づいて、異なる重ね合わせＵＩコントロールを提供する実施例を示す図である。
【図２】カスタム色バランスＵＩコントロールを使用して、画像の色バランスを調整する実施例を示す図である。
【図３】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像の彩度を調整する実施例を示す図である。
【図４】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像の彩度を調整する別の実施例を示す図である。
【図５】肌の色調に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。
【図６】画像上の肌の色調に基づいて、画像の色温度を調整する実施例を示す図である。
【図７】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、空を表現する画像の一部分のみを調整する実施例を示す図である。
【図８】空の色に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。
【図９】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、群葉を表現する画像の一部分のみを調整する実施例を示す図である。
【図１０】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、群葉を表現する画像の一部分のみを調整する別の実施例を示す図である。
【図１１】群葉の色に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。
【図１２】一部の実施形態の画像編集アプリケーションの異なるＧＵＩを通じて、色調整ツールのセットを呼び出す実施例を示す図である。
【図１３】一部の実施形態の画像編集アプリケーションの異なるＧＵＩを通じて、色調整ツールのセットを選択解除する実施例を示す図である。
【図１４】一部の実施形態の画像編集アプリケーションの異なるＧＵＩを通じて、空を表現する画像の一部分のみを調整する別の実施例を示す図である。
【図１５】一部の実施形態の画像編集アプリケーションの異なるＧＵＩを通じて、群葉を表現する画像の一部分のみを調整する別の実施例を示す図である。
【図１６】画像上の場所のユーザの選択に基づいて、画像の一部分のみを調整するための一部の実施形態のプロセスを概念的に示す図である。
【図１７】単一のユーザ入力に基づいて、画像に対する複数の色調整を実行するための、一部の実施形態のプロセスを概念的に示す図である。
【図１８】一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。
【図１９】画像上に選択された異なる場所に基づいて、異なる画像上ＵＩコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。
【図２０】画像上に選択された異なる場所に基づいて、異なる画像上ＵＩコントロールを提供する実施例を示す図である。
【図２１】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像の彩度を調整する実施例を示す図である。
【図２２】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像上の肌の色調に基づいて画像の色温度を調整する実施例を示す図である。
【図２３】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、空を表現する画像の一部分のみを調整する実施例を示す図である。
【図２４】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、群葉を表現する画像の一部分のみを調整する実施例を示す図である。
【図２５】画像上ＵＩコントロールの２つの例示的実装を示す図である。
【図２６】画像上に選択された異なる場所に基づいて、異なる色調整ＵＩコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。
【図２７】方向入力の方向及び大きさを特定する実施例を概念的に示す図である。
【図２８】方向入力に基づいて、特定の色調整を決定するための、一部の実施形態のプロセスを概念的に示す図である。
【図２９】一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。
【図３０】画像上ＵＩコントロールを使用する利益を示す図である。
【図３１】画像上に選択された異なる場所に基づいて、異なる画像上ＵＩコントロールを提供する実施例を示す図である。
【図３２】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像のコントラストを調整する実施例を示す図である。
【図３３】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像のシャドウを調整する実施例を示す図である。
【図３４】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像のハイライトを調整する実施例を示す図である。
【図３５】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像の明度を調整する実施例を示す図である。
【図３６】画像上に選択された異なる場所に基づいて、異なる色調整ＵＩコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。
【図３７】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像に対してカスタムホワイトバランス操作を実行する実施例を示す図である。
【図３８】カスタムホワイトバランス操作に関する色空間変換を生成する実施例を示す図である。
【図３９】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、画像に対してカスタム顔バランス操作を実行する実施例を示す図である。
【図４０】カスタム顔バランス操作に関する色空間変換を生成する実施例を示す図である。
【図４１】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、平均の肌の色調に基づいて画像の色温度を調整する実施例を示す図である。
【図４２】一部の実施形態の画像編集アプリケーションのＧＵＩを通じて、理想的な肌の色調に基づいて画像の色温度を調整する実施例を示す図である。
【図４３】一部の実施形態の画像編集アプリケーションの異なるＧＵＩを通じて、色バランスツールのセットを呼び出す実施例を示す図である。
【図４４】画像に対してカスタム色バランス操作を実行するための、一部の実施形態のプロセスを概念的に示す図である。
【図４５】カスタム色バランス操作に関する色空間変換を生成するための一部の実施形態のプロセスを概念的に示す図である。
【図４６】一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。
【図４７】一部の実施形態の画像編集アプリケーションの例示的なＧＵＩを示す図である。
【図４８】一部の実施形態の画像データ構造を概念的に示す図である。
【図４９】画像編集アプリケーションが実行される、一部の実施形態の装置のハードウェアアーキテクチャを概念的に示す図である。
【図５０】本発明の一部の実施形態が実装される、電子システムを概念的に示す図である。
【発明を実施するための形態】
【００１９】
以下の「発明を実施するための形態」では、画像編集ツール並びに画像編集アプリケーションの数多くの詳細、実施例、及び実施形態が記載され、説明される。しかしながら、本発明は、記載される実施形態に限定されるものではなく、論じられる具体的詳細及び実施例の一部を伴わずに、本発明を実践することができる点が、当業者には明確かつ明白となるであろう。
【００２０】
画像編集アプリケーションにおける、画像を編集するための幾つかの新規のユーザインターフェース（ＵＩ）ツールの実施形態が、説明される。一部の実施形態では、この画像編集アプリケーションは、特定の色範囲に関連付けられているコンテンツのタイプ（例えば、空、群葉など）に関連する、画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する。画像上の特定のコンテンツのタイプの色値を調整するためのＵＩコントロールを通じて、入力が受け取られると、このアプリケーションは、そのコンテンツのタイプに関連付けられている画像内の画素のセットを、自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。
【００２１】
一部の実施形態では、ＵＩコントロールのセットは、画像内の空の色のみの色値を調整するためのＵＩコントロールを含む。これらの実施形態では、アプリケーションは、最初に、予め定義された空の色値の範囲内に収まる色値を有する、画像内の画素のセットを特定する。次いで、このアプリケーションは、その特定された画素のセットのみに、色調整を適用する。空の色の色値を調整することに加えて、一部の実施形態のＵＩコントロールのセットはまた、画像内の群葉の色のみの色値を調整するためのＵＩコントロールも含む。同様に、このアプリケーションは、予め定義された群葉の色値の範囲内に収まる色値を有する、画像内の画素のセットを特定し、その特定された画素のセットのみに、色調整を適用する。青空の色及び群葉の色を調整するための色調整操作は、以下のセクションＩで、より詳細に説明される。
【００２２】
更には、一部の実施形態の画像編集アプリケーションはまた、画像上の場所をユーザが選択することを可能にし、その画像上の選択された場所から、種々のコンテンツのタイプが検出される場合に、その画像に適用するための種々の画像編集操作に関連付けられている種々のＵＩコントロールを表示する、画像編集ツールも提供する。これらの実施形態では、ユーザが画像上の場所を選択し、このアプリケーションの画像編集ツールが、画像上の選択された場所に対応する画素の色値を、その画像から取得する。次いで、このアプリケーションは、それらの画素値に対する一連の分析を実行して、その選択された場所が、特定のコンテンツのタイプを表現するか否かを検出する。検出されたコンテンツのタイプに基づいて、色編集ツールは、画像編集操作のセットを決定し、その決定された画像編集操作に関連付けられているＵＩコントロールのセットを表示する。コンテンツ依存性の画像上ＵＩコントロールを提供する種々の実施形態は、以下のセクションＩＩで、より詳細に説明される。
【００２３】
図１は、画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの、例示的なＧＵＩ１００を示す。具体的には、図１は、ＵＩコントロールの種々のセットをアクティブ化して操作する動作を、４つの異なるステージ１０５、１１０、１１５、及びステージ１２０で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
【００２４】
図１に示すように、ＧＵＩ１００は、画像１９５、及び色調整ＵＩコントロール１２５〜１３５のセットを含む。色調整ＵＩコントロールのそれぞれは、この画像の異なる部分に関して、異なる色調整を開始するためのものである。例えば、ＵＩコントロール１２５は、画像全体に「調整Ａ」を適用するためのものであり、ＵＩコントロール１３０は、画像の空領域に「調整Ｂ」を適用するためのものであり、ＵＩコントロール１３５は、画像の群葉領域に「調整Ｃ」を適用するためのものである。
【００２５】
種々の実施形態は、種々の技術を使用して、ＵＩコントロールのセットを実装する。この実施例では、アプリケーションは、ＵＩコントロールのセットを、範囲スライダのセットとして実装する。これらの実施形態では、ユーザは、異なるＵＩコントロール１２５〜１３５を選択して操作することによって、画像に対する異なる調整操作を開始することができる。範囲スライダに加えて、ＧＵＩ１００はまた、ユーザが、ＵＩコントロール１２５〜１３５のセットに対応する重ね合わせＵＩコントロール（画像上ＵＩコントロールとも称される）のセットをアクティブ化することによって、調整操作を開始することも可能にする。
【００２６】
第２ステージ１１０は、ユーザが、重ね合わせＵＩコントロールのセットをアクティブ化した後の、ＧＵＩ１００を示す。一部の実施形態では、ユーザは、画像上の場所を選択することによって、重ね合わせＵＩコントロールのセットをアクティブ化することができる。これらの実施形態では、アプリケーションは、選択された場所に対応する画素の色値を取得して、その色値を、予め定義されたコンテンツのうちの１つと関連付ける。次いで、アプリケーションは、その関連付けられているコンテンツのタイプに関連する、重ね合わせＵＩコントロールのセットを提供する。図示のように、ユーザは、空を表示する、画像１９５上の場所を選択している。画像１９５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。一実施形態では、ユーザは、画像の場所で指をタップするか、又は、その場所に指を置くことによって、場所を選択することができる。他の実施形態では、他のジェスチャを実行することにより、場所を選択することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、少なくとも１つの分析を実行して、その選択された場所を、予め定義されたコンテンツのタイプと関連付ける。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、その特定のコンテンツのタイプに関連付けられている画像上ＵＩコントロールのセットを表示する。この実施例では、アプリケーションは、選択された場所が、青空に関連付けられていることを判定する。それゆえ、このアプリケーションは、画像の空領域に「調整Ｂ」を実行するためのＵＩコントロール１４０に対応する、画像上ＵＩコントロール１５５及び画像上ＵＩコントロール１６０（水平軸に沿った２つの方向の矢印として表示される）のセットを提供する。
【００２７】
このアプリケーションはまた、画像全体に「調整Ａ」を実行するためのＵＩコントロール１２５に対応する、重ね合わせＵＩコントロール１４５及び重ね合わせＵＩコントロール１５０（垂直軸に沿った２つの方向の矢印として表示される）のセットも提供する。重ね合わせＵＩコントロール１４５及び重ね合わせＵＩコントロール１５０のセットは、コンテンツに依存しない。すなわち、アプリケーションは、画像上に選択された場所とは無関係に、この重ね合わせＵＩコントロール１４５及び重ね合わせＵＩコントロール１５０のセットを提供する。一部の実施形態では、このアプリケーションはまた、ＵＩコントロール１２５及びＵＩコントロール１３０がアクティブ化されていることを示すために、ＵＩコントロール１２５及びＵＩコントロール１３０を強調表示する。（ＵＩコントロールが強調表示されていることを示すために、ＵＩコントロールの境界線が太線にされている。）この図には示されないが、この第２ステージ１１０でのユーザは、画像に対して方向入力を提供することによって、特定の色調整（すなわち、「調整Ａ」又は「調整Ｂ」）を選択することができる。逆に、調整Ａを垂直方向で実行することが可能であり、調整Ｂを水平方向で実行することが可能である点を、理解されたい。
【００２８】
第３ステージ１１５は、ユーザが、画像１９５上の異なる場所を選択した後の、ＧＵＩ１００を示す。画像１９５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。一実施形態では、ユーザは、画像の場所で指をタップするか、又は、その場所に指を置くことによって、場所を選択することができる。他の実施形態では、他のジェスチャを実行することにより、場所を選択することができる。図示のように、ユーザは、山を示す画像上の場所を選択している。この新たな場所の選択に基づいて、アプリケーションは、画像の群葉領域に「調整Ｃ」を実行するためのＵＩコントロール１３５に対応する、重ね合わせＵＩコントロール１７５及び重ね合わせＵＩコントロール１８０（水平軸に沿った２つの方向の矢印として表示される）の異なるセットを表示する。このアプリケーションはまた、ＵＩコントロール１３０がアクティブ化されていることを示すために、ＵＩコントロール１３５を強調表示する。一部の実施形態では、ＵＩコントロール１３５は、そのＵＩコントロールを取り囲む形状上に、より太い境界線を有することによって、強調表示される。他の実施形態では、ＵＩコントロール１３５は、ＧＵＩ内に表示される他のＵＩコントロールよりも明るい色で表示されることによって、強調表示される。第２ステージ１１０と同様に、このアプリケーションはまた、画像に「調整Ａ」を実行するためのＵＩコントロール１２５に対応する、重ね合わせＵＩコントロール１４５及び重ね合わせＵＩコントロール１５０のセットも提供するが、これは、この重ね合わせＵＩコントロールのセットが、コンテンツに依存しないためである。
【００２９】
第４ステージ１２０は、ユーザが、方向入力を提供することによって、画像に対する色調整を開始した後の、ＧＵＩ１００を示す。この方向入力は、実質的に水平方向に沿って、タッチ若しくはニアタッチ感応スクリーンを有する装置上で、ユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印１４０によって示されるように、画像の右にユーザの指をドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像１９５上で調整Ｃを実行するための画像上ＵＩコントロール１８０と関連付ける。図示のように、画像１９５の群葉領域（例えば、山を表示する領域）は、画像１９５のその部分の全域にわたる斜線によって示されるように、調整されている。第４ステージ１２０はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール１４５及び画像上ＵＩコントロール１５０が、ディスプレイから除去されて、対応するＵＩコントロール１２５が、もはや強調表示されないことも示す。一部の実施形態では、ＵＩコントロール１４５及びＵＩコントロール１５０は、徐々に消失する。第４ステージ１２０はまた、ユーザが、異なる場所に指を移動させると、アクティブ化された重ね合わせＵＩコントロールが、その指を追従することも示す。換言すれば、表示された重ね合わせＵＩコントロールは、表示された画像の全域にわたって移動するようにアニメーション化され、その一方で画像が静止したまま維持されることにより、指に付着しているかのように、実質的にユーザの指の下に維持される。それゆえ、画像上ＵＩコントロールは、常に指の場所の周囲に存在する。
【００３０】
コンテンツ依存性ＵＩコントロールに加えて、一部の実施形態のアプリケーションはまた、画像の色バランスを調整するための新規のＵＩも提供する。色バランス調整は、画像内の色を、画像内に取り込まれた瞬間の、景色及び対象物の色と一致させるための、色調整操作である。一部の実施形態では、このアプリケーションは、画像上の場所をユーザが選択することを可能にする、色バランスＵＩコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色（例えば、灰色、理想的な肌色など）に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。
【００３１】
図２は、画像の色バランスを調整するための色バランスＵＩコントロールを提供する、画像編集アプリケーションのＧＵＩ２００を示す。具体的には、図２は、色バランス調整操作を、４つの異なるステージ２０５、２１０、２１５、及びステージ２２０で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
【００３２】
第１ステージ２０５で示すように、ＧＵＩ２００は、画像１９５、及び色バランス調整ＵＩコントロールをアクティブ化するための選択可能ＵＩ項目２２５を含む。第２ステージ２１０は、ユーザが、選択可能ＵＩ項目２２５を選択した後の、ＧＵＩ２００を示す。選択可能ＵＩ項目２２５の選択は、選択可能ＵＩ項目２２５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、選択可能ＵＩ項目２２５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。一実施形態では、ユーザは、選択可能ＵＩ項目２２５で指をタップするか、又は指を置くことによって、選択可能ＵＩ項目２２５を選択することができる。他の実施形態では、他のジェスチャを実行することにより、選択可能ＵＩ項目２２５を選択することができる。図示のように、ユーザは、選択可能ＵＩ項目２２５上で指をタップするか、又は指を置くことによって、選択可能ＵＩ項目２２５を選択している。
【００３３】
一部の実施形態では、このアプリケーションは、画像の色バランスを調整するための画像上に表示される（例えば、上に重ね合わされる）色バランスＵＩコントロールを提供する。これらの実施形態の一部では、色バランスＵＩコントロールは、画像上で移動可能であり、ユーザが、色バランスＵＩコントロールを所望の場所に移動させる（又はドラッグする）ことによって、画像上の場所を指定することを可能にする。
【００３４】
この第２ステージ２１０で示すように、選択可能ＵＩ項目２２５の選択の結果として、色バランスＵＩコントロール２３０が、画像上に出現する。この実施例では、色バランスＵＩコントロール２３０は、正方形の形状を有し、このコントロールの中央に十字線を有する。他の実施形態では、色バランスＵＩコントロールは、任意の他の形状にすることができる。これらの他の形状の非包括的なリストには、三角形、楕円形、矩形などが含まれる。この形状はまた、手、花などの不規則形状にすることもできる。更には、十字線は、中央に存在する場合もあれば、存在しない場合もある。あるいは、十字線以外の他の対象物を、円形、正方形、単一ドット、又は画像１９５内部の小領域を示すために使用される何らかの他の像などの形状で、表示することができる。
【００３５】
色バランスＵＩコントロール２３０の十字線により、ユーザは、画像１９５の色バランスを調整するための画像上の場所を指定することが可能となる。上述のように、ユーザが、色バランス操作のための場所を指定した後に、アプリケーションは、選択された場所に対応する少なくとも１つの画素の色値を取得して、その画素の色値を、設定された基準色（例えば、灰色、理想的な肌色など）に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。この第２ステージ２１０で示すように、選択された場所に基づく色バランス操作は、画像１９５の全域にわたる４５度の斜線によって示されるように、画像１９５に対して実行されている。
【００３６】
前述のように、一部の実施形態の色バランスＵＩコントロール２３０は、画像１９５内部で移動可能であることにより、ユーザが、色バランス操作のための異なる場所を選択することを可能にする。これらの実施形態では、ユーザは、色バランスＵＩコントロール２３０上でジェスチャを実行して（例えば、ユーザの指を置くか、又はタップして）、その指を異なる場所にドラッグすることによって、色バランスＵＩコントロール２３０を再配置することができる。第３ステージ２１５は、ユーザが、色バランスＵＩコントロール２３０を選択した後ではあるが、その色バランスＵＩコントロール２３０を異なる場所に移動させる前の、ＧＵＩ２００を示す、過渡的ステージである。
【００３７】
第４ステージ２２０は、ユーザが、色バランスＵＩコントロール２３０を異なる場所に移動させた後の、ＧＵＩ２００を示す。図示のように、ユーザは、矢印２３５によって示されるように、画像の右上隅に向けて、ユーザの指をその方向にドラッグすることによって、色バランスＵＩコントロール２３０を移動させている。色バランスＵＩコントロール２３０を新たな場所に移動させた結果として、このアプリケーションは、画像の色バランスを再調整する。具体的には、このアプリケーションは、色バランスＵＩコントロール２３０を通じて、ユーザによって選択された新たな場所に対応する、少なくとも１つの画素の色値を取得する。次いで、このアプリケーションは、選択された場所の色を基準色に変更する、色調整を決定する。この色調整に基づいて、アプリケーションは、画像１９５内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像１９５内の全ての画素に、その色空間変換を適用する。この第４ステージ２２０で示されるように、新たに選択された場所に基づく色バランス操作は、画像１９５の全域にわたる１３５度の斜線によって示されるように、画像１９５に対して実行されている。
【００３８】
本発明の幾つかのより詳細な実施形態が、以下で提供される。これらの実施例の多くは、画像編集アプリケーションの一部であるスライダに言及する。一部の実施形態のこのアプリケーションは、装置のオペレーティングシステムの上で実行されるスタンドアローンのアプリケーションであるが、他の実施形態では、オペレーティングシステムの一部である。また、以下の実施例の多く（図３、４、６、７、９、１４、１５、２０、２１、２２、２３、２４、３１、３２、３３、３４、３５、３７、３９、４１、及び図４２で示されるものなど）では、アプリケーションが実行される装置は、タッチスクリーンを有し、このタッチスクリーンを通じて、ユーザは、その画像編集アプリケーションと対話することができる。しかしながら、当業者は、カーソル及びカーソルコントローラ、あるいは他の入力機構（例えば、音声制御）を使用して装置上で実行される他の実施形態に関しては、これらの実施例で示されるスライダ及びアプリケーションと対話するために、カーソルコントローラ又は他の入力装置を使用することができる点を、理解するであろう。
【００３９】
本発明の幾つかのより詳細な実施形態を、以下のセクションで説明する。具体的には、セクションＩは、検出されたコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するための種々のＵＩコントロールを説明する。セクションＩＩは、画像上の選択場所からの、検出されたコンテンツのタイプに基づいて、画像上ＵＩコントロールを提供する、種々の実施形態の詳細を説明する。セクションＩＩＩは、画像の色バランスを調整するために、色バランスＵＩコントロールのセットを提供することを説明する。最後に、セクションＶＩは、本発明の一部の実施形態を実装する、電子システムを説明する。
【００４０】
Ｉ．色コントロール
一部の実施形態の画像編集アプリケーションは、特定のコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する。一部の実施形態では、各ＵＩコントロールは、画像内の異なるコンテンツのタイプに関連する色値を調整するためのものである。特定のＵＩコントロールを通じて入力が受け取られると、このアプリケーションは、その特定のＵＩコントロールによって制御されるコンテンツのタイプに関連する、画像内の画素のセットを自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。
【００４１】
一部の実施形態では、ＵＩコントロールのセットは、異なるコンテンツのタイプに関連付けられている色値を調整するための異なるＵＩコントロールを含む。例えば、１つのＵＩコントロールは、肌の色調に関連付けられている色値を調整するためのものであり、別のＵＩコントロールは、空の色に関連付けられている色値を調整するためのものであり、更に別のＵＩコントロールは、群葉の色に関連付けられている色値を調整するためのものである。
【００４２】
図３は、特定のコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの例示的なＧＵＩ３００を、５つの異なるステージ３０５、３１０、３１５、３２０、及びステージ３２５で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
【００４３】
図３に示すように、ＧＵＩ３００は、サムネイル表示領域３３０、ツールバー３４０、画像表示領域３４５、及びＵＩコントロール表示領域３５０を含む。サムネイル表示領域３３０は、ユーザが閲覧及び選択するための、アルバム内の画像のサムネイルのセットを表示する。画像のサムネイルは、解像度が低減された、画像の縮小サイズバージョンである。ユーザは、サムネイル表示領域３３０内の、画像に対応するサムネイルを選択することによって、画像表示領域３４５内に表示するための、１つ以上の画像を選択することができる。
【００４４】
ツールバー３４０は、種々のタイプの画像調整コントロールに関連付けられている選択可能ＵＩ項目のセットを表示する。選択可能ＵＩ項目のセットは、画像クロップツールのセットに関連付けられている選択可能ＵＩ項目、露出調整ツールのセットに関連付けられている選択可能ＵＩ項目、及び色調整ツールのセットに関連付けられている選択可能ＵＩ項目３４２を含む。ユーザが、これらの選択可能ＵＩ項目のうちの１つを選択すると、選択されたＵＩ項目に関連付けられているＵＩコントロールのセットが、ＵＩコントロール表示領域３５０内に表示される。
【００４５】
ここで、５つのステージ３０５、３１０、３１５、３２０、３２５の間のＧＵＩ３００の状態を参照して、画像編集操作を説明する。第１ステージ３０５は、ユーザが、画像表示領域３４５内に表示するために、アルバム「アルバム１」から画像３５５を選択した後の、画像編集アプリケーションのＧＵＩ３００を示す。画像表示領域３４５内に表示するための画像の選択は、その画像のサムネイルを表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、その画像のサムネイルにカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、サムネイル３３５上で指をタップすることによって、画像表示領域３４５内に表示するための画像３５５を選択している。この選択はまた、サムネイル表示領域３３０内のサムネイル３３５の強調表示によっても示される。この選択の結果として、画像３５５が、画像表示領域３４５内に表示される。画像３５５は、山を背景にして海の傍らに立っている人物の写真である。
【００４６】
第２ステージ３１０は、ユーザが、ツールバー３４０内の選択可能ＵＩ項目のうちの１つを選択した後の、ＧＵＩ３００を示す。選択可能ＵＩ項目３４２の選択は、選択可能ＵＩ項目３４２を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、１つ以上の指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３４２にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、選択可能ＵＩ項目３４２の強調表示によって示されるように、選択可能ＵＩ項目３４２上で指をタップすることによって、選択可能ＵＩ項目３４２を選択している。
【００４７】
選択可能ＵＩ項目３４２を選択した結果として、色調整ＵＩコントロール３５２〜３５８のセットが、ＵＩコントロール表示領域３５０内に表示される。種々の実施形態は、画像の色を調整するための種々のタイプの範囲関連ＵＩコントロール（例えば、ダイヤル、ボタン、数値フィールドなど）を提供する。この実施例では、色調整ＵＩコントロールは、範囲スライダである。ユーザは、それらのＵＩコントロールのうちのいずれか１つのつまみを、範囲スライダに沿って異なる位置にスライドさせることによって、画像に対する種々の色調整を開始することができる。これらのスライダは、つまみがスライダに沿ってスライドするため、視覚的な表示を提供することができる。
【００４８】
色調整ＵＩコントロール３５２〜３５８のそれぞれは、画像に関する異なるタイプの色調整を開始するためのものである。例えば、色調整ＵＩコントロール３５２は、画像に対する彩度調整を開始するためのものである。色調整ＵＩコントロール３５４は、画像に対する空調整を開始するためのものであり、空の色に関して定義された色値の範囲内に収まる色値のみを調整する。色調整ＵＩコントロール３５６は、画像に対する群葉調整を開始するためのものであり、群葉の色に関して定義された色値の範囲内に収まる色値のみを調整する。色調整ＵＩコントロール３５８は、画像に対する肌の色調調整を開始するためのものであり、肌の色調に関して定義された色値の範囲内に収まる色値のみを調整する。色調整ＵＩコントロール３５２〜３５８に加えて、ＧＵＩ３００はまた、設定メニューを呼び出すための選択可能ＵＩ項目３６０も表示する。
【００４９】
第３ステージ３１５は、色調整ＵＩコントロール３５２の強調表示によって示されるように、ユーザが、画像３５５に対して彩度調整を開始するための、色調整ＵＩコントロール３５２を選択した後の、ＧＵＩ３００を示す。色調整ＵＩコントロール３５２の選択は、色調整ＵＩコントロール３５２を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、色調整ＵＩコントロール３５２にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００５０】
第４ステージ３２０は、ユーザが、矢印３６２によって示されるように、ＵＩコントロール３５２のつまみを右に移動させることによって、画像３５５の彩度の調整を開始した後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、ジェスチャを実行すること（例えば、ユーザの指を異なる場所にドラッグすること）によって、ＵＩコントロール３５２のつまみを移動させることができる。この指の移動の結果として、画像３５５の全域にわたる斜線によって示されるように、画像３５５内の色の彩度が増大されている。一部の実施形態では、このアプリケーションは、画像内の色の強度を調整することによって、画像の色の彩度を調整する。これらの実施形態では、アプリケーションは、色調整ＵＩコントロール３５２に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、画像の全ての画素値に、そのアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、画像の色値を定義する色空間（例えば、ＲＧＢ色空間）から、輝度チャネルを含む色空間（例えば、ＹＣｒＣｂ色空間、ＹＩＱ色空間、ＩＰＴ色空間など）に、画像の色値を変換する。クロミナンス色チャネル（すなわち、輝度チャネル以外のチャネル）は、極座標系（例えば、動径値及び角度）内に表すことができ、この極座標系内では、動径値は、色の彩度を表し、角度は、種々の色合いを表す。この新たな色空間に、画像の色値が変換されると、アプリケーションは、画像内の各色の動径値を調整することによって、画像の彩度を調整することができる。
【００５１】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して彩度調整を実施した後の、第４ステージ３２０で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【００５２】
第５ステージ３２５は、ユーザが、矢印３６４によって示されるように、ＵＩコントロール３５２のつまみを更に右に移動させることによって、画像３５５の彩度を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ３２５での画像３５５内の色は、画像３５５の全域にわたる、より高密度の斜線によって示されるように、第４ステージ３２０での画像内の色よりも、更に彩度が増大されて示される。
【００５３】
図３は、彩度ＵＩコントロール３５２を通じて、画像全体の彩度を調整する実施例を示す。一部の実施形態の画像編集アプリケーションはまた、画像の一部分のみの彩度を調整する、色調整ＵＩコントロールも提供する。例えば、このアプリケーションは、自然な彩度調整として既知である、肌の色調を維持しつつ画像の彩度を調整する（すなわち、肌の色調以外の、画像内の全ての色の彩度を調整する）彩度調整ＵＩコントロールを提供することができる。
【００５４】
種々の実施形態は、画像内の色の自然な彩度を調整するためのＵＩコントロールを提供する際に、種々の技術を提供する。一手法では、このアプリケーションは、ユーザが、アプリケーションの設定を修正することによって、彩度調整と自然な彩度調整とを切り替えることを可能にする。図４は、そのような手法の実施例を示す。具体的には、図４は、自然な彩度ＵＩコントロールを呼び出して操作する実施例を、６つの異なるステージ４０５、４１０、４１５、４２０、４２５、及びステージ４３０で示す。
【００５５】
第１ステージ４０５は、図３の第２ステージ３１０と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ４１０は、選択可能ＵＩ項目３６０の強調表示によって示されるように、ユーザが、アプリケーション設定ポップアップメニューを引き出すための選択可能ＵＩ項目３６０を選択した後の、ＧＵＩ３００を示す。選択可能ＵＩ項目３６０の選択は、選択可能ＵＩ項目３６０を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３６０にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、選択可能ＵＩ項目３６０の選択は、ポップアップメニュー４３５を、ＵＩコントロール表示領域３５０の上部に表示させる。ポップアップメニュー４３５は、彩度ＵＩコントロール３５２の設定を切り替えるための、「肌の色調なし」と標識される選択可能項目４４０などの、このアプリケーションの設定を修正するための幾つかの選択可能項目を含む。
【００５６】
第３ステージ４１５は、選択可能項目４４０の強調表示によって示されるように、ユーザが、「肌の色調なし」と標識される選択可能項目４４０を選択した後の、ＧＵＩ３００を示す。選択可能項目４４０の選択は、選択可能項目４４０を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能項目４４０にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。この選択の結果として、彩度ＵＩコントロール３５２は、この時点で、画像に対する自然な彩度調整を制御するためのものである。前述のように、自然な彩度調整は、肌の色調を維持しつつ、画像３５５内の色の彩度のみを調整する。
【００５７】
第４ステージ４２０は、彩度ＵＩコントロール３５２の強調表示によって示されるように、ユーザが、彩度ＵＩコントロール３５２を選択した後の、ＧＵＩ３００を示す。彩度ＵＩコントロール３５２の選択は、彩度ＵＩコントロール３５２を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、彩度ＵＩコントロール３５２にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００５８】
第５ステージ４２５は、ユーザが、矢印４７０によって示されるように、彩度ＵＩコントロール３５２のつまみを右に移動させることによって、画像の自然な彩度を増大させ始めた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、範囲スライダに沿った異なる場所に、ユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、彩度ＵＩコントロール３５２のつまみを移動させることができる。この指の移動の結果として、画像３５５の全域にわたる斜線によって示されるように、画像３５５内の（肌の色調以外の）色の彩度が増大されているが、その一方で、画像３５５内の人の顔の領域は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、画像の画素のクロミナンス値を調整することによって、画像の色の彩度を調整する。これらの実施形態では、アプリケーションは、彩度ＵＩコントロール３５２に対するユーザの入力に基づいて、画像の画素値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、肌の色調として特定された、画像の全ての色値に、そのアルゴリズム又は数学的方程式を適用する。
【００５９】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して彩度調整を実施した後の、第４ステージ３２０で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【００６０】
第６ステージ４３０は、ユーザが、矢印４７５によって示されるように、彩度ＵＩコントロール３５２のつまみを更に右に移動させることによって、画像の自然な彩度を更に増大させた後の、ＧＵＩ３００を示す。図示のように、このステージ４３０での画像３５５内の色は、画像３５５の全域にわたる、より高密度の斜線によって示されるように、第５ステージ４２５での画像内の色よりも、更に彩度が増大されて示されるが、その一方で、画像３５５内の人の顔の領域は、影響を受けないまま維持される。
【００６１】
一部の実施形態では、このアプリケーションは、画像のコンテンツに基づいて、彩度ＵＩコントロール３５２に関するデフォルト設定を選択する。例えば、一部の実施形態のアプリケーションは、画像に対して顔検出アルゴリズムを実行し、次いで、画像上に顔が検出されるか否かに基づいて、彩度ＵＩコントロール３５２に関する設定を決定する。
【００６２】
種々の実施形態は、種々の技術を使用して、肌の色調を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、肌の色調を定義する。反対色空間は、一般的にはＹＣＣ色空間として既知の、３つの反対色チャネル（例えば、白／黒チャネル、赤／緑チャネル、及び黄／青チャネル）に依存する色空間である。反対色空間の幾つかの例としては、ＹＩＱ色空間、ＹｃｂＣｒ色空間、及びＩＰＴ色空間が挙げられる。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、ＹＣＣ色空間として説明される。しかしながら、ＹＣＣ色空間は、上述の色空間のいずれかのうちの１つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、肌の色調の範囲を定義するために使用される色空間は、画像の色値が定義される色空間（例えば、ＲＧＢ色空間）とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間（例えば、ＲＧＢ色空間）から、肌の色調に関する範囲を定義するために使用されるＹＣＣ色空間に、画像を変換する。次いで、このアプリケーションは、肌の色調に関して定義される変換された色空間内の色値の範囲内に収まる色値を有する、その画像の画素を特定する。図５は、ＲＧＢ色空間５０５からＹＣＣ色空間５００への、例示的な変換を示す。
【００６３】
図５に示すように、ＲＧＢ色空間５０５は、３つの軸、すなわち、赤色成分値の範囲を表す軸５２５、緑色成分値の範囲を表す軸５１５、及び青色成分値の範囲を表す軸５３５に沿って定義される。それゆえ、画像３５５のあらゆる色は、ＲＧＢ色空間５０５内部の場所によって表すことができる。
【００６４】
図５はまた、肌の色調を定義するために一部の実施形態と共に使用される、ＹＣＣ色空間５００も提示する。図示のように、このＹＣＣ色空間は、３つの軸、すなわち、赤及び緑の色値の範囲を表す軸５２０、青及び黄の色値の範囲を表す軸５３０、及び種々の濃淡の灰色の範囲（すなわち、輝度値の範囲）を表す垂直軸５１０に沿って定義され、底面の場所５４０は黒色を表し、上面の場所５５０は白色を表す。色が明るくなるほど、その色は、この色空間の円柱５００の底面から遠くに出現する。
【００６５】
色の彩度に関しては、色の彩度が増大するほど、その色は、円筒の中心から遠くに出現する。中心はグレースケールを表すものであり、その最低地点５４０は、色を含まず（すなわち、黒色）、最高地点５５０は、全ての色がその最大強度で存在すること（すなわち、白色）を表し、この最高地点を最低地点に接続する垂直線に沿った全ての他の地点は、種々の濃淡の灰色を表す。各濃淡の灰色は、全ての色が等しく存在することを表すが、灰色が濃くなるほど、それらの色の強度が小さくなる。また、灰色が明るくなるほど、それらの色の強度が大きくなる。
【００６６】
一部の実施形態では、肌の色調は、領域５６０などの、特定の彩度範囲及び特定の強度範囲を有する、赤色調の色相と黄色調の色相との間の、ＹＣＣ色空間の円柱５００の領域内部に定義される。一部の実施形態はまた、様々な人種及び／又は民族に関連付けられている肌の色調の範囲を対象とするように、肌の色調を広範に定義する。そのような広範な定義は、ユーザが肌の色調を手動で定義する必要性を取り除く。一部の実施形態は、アプリケーションによって認識される肌の色調の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。
【００６７】
一部の実施形態のアプリケーションは、ＲＧＢ色空間５０５内の各色を、ＹＣＣ色空間５００内の別の色にマッピングすることによって、ＲＧＢ色空間５０５からＹＣＣ色空間５００に、画像を変換する。例えば、ＲＧＢ色空間５０５内の色５４５は、ＹＣＣ色空間５００内の色５７０にマッピングされ、ＲＧＢ色空間５０５内の色５５５は、ＹＣＣ色空間５００内の色５８０にマッピングされる。ＲＧＢ色空間からＹＣＣ色空間に画像を変換することによって、このアプリケーションは、定義された肌の色調領域５６０の範囲内に収まる色（例えば、色５５５）及び、定義された肌の色調領域５６０の範囲内に収まらない色（例えば、色５４５）を特定することが可能である。
【００６８】
図４は、画像の彩度を調整する例示的操作を示す。画像の彩度を調整する代わりに、一部の実施形態は、ユーザが画像の色温度を調整することを可能にする、肌の色調ＵＩコントロールを提供する。色温度は、画像内の対象物から反射する可視光の特性である。画像内の対象物に当っている、より暖かい光は、その画像内の対象物の色に、より暖かい色調（すなわち、より多くの赤色及び黄色）を作り出し、その一方で、画像内の対象物に当っている、より冷たい光は、その画像内の対象物の色に、より冷たい色調（すなわち、より多くの青色及びシアン）を作り出す。それゆえ、画像の色温度を調整することは、画像に対して、より多くの赤色／黄色を追加すること、又はより多くの青色／シアンを追加することを意味する。
【００６９】
図６は、そのような実施例を示す。具体的には、図６は、肌の色調ＵＩコントロールを操作することによって画像の色温度を調整することにより、肌の色調を改善する操作を、４つの異なるステージ６０５、６１０、６１５、及びステージ６２０で示す。
【００７０】
第１ステージ６０５は、図３の第２ステージ３１０と同一である。図示のように、ユーザは、画像３５５の色を調整するために、ツールバー３４０から選択可能ＵＩ項目３４２を選択している。第２ステージ６１０は、肌の色調ＵＩコントロール３５６の強調表示によって示されるように、ユーザが肌の色調ＵＩコントロール３５６を選択した後の、ＧＵＩ３００を示す。肌の色調ＵＩコントロール３５６の選択は、肌の色調ＵＩコントロール３５６を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、肌の色調ＵＩコントロール３５６にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００７１】
第３ステージ６１５は、ユーザが、矢印６２５によって示されるように、肌の色調ＵＩコントロール３５６のつまみを右に移動させることによって、画像の肌の色調の調整を開始した後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、肌の色調ＵＩコントロール３５６のつまみを移動させることができる。この指の移動の結果として、画像３５５の全域にわたる斜線によって示されるように、画像３５５内の色値が調整されている。一部の実施形態では、このアプリケーションは、肌の色調をより心地よいものにするために、画像の色温度を調整する。これらの実施形態の一部では、アプリケーションは、図５を参照して上述されたものと同じ、定義された肌の色調の範囲を使用して、その定義された肌の色調の範囲内に収まる画像内の色を、より心地よいものにするように、画像の色値を調整する。
【００７２】
一部の実施形態では、このアプリケーションは、肌の色調ＵＩコントロール３５６に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、画像の全ての画素に、そのアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、色値に調整を適用する前に、最初に、その画像の色値を異なる色空間（例えば、ＹＣＣ色空間）に変換する。上述のように、ＹＣＣ色空間は、黒／白の色成分、赤／緑の色成分、及び黄／青の色成分に沿って定義される。ＲＧＢ色空間からＹＩＱ色空間への変換は、最初に、ＲＧＢ色空間内の色値に対して約１／４のｇａｍｍａを適用し、次いで、３×３行列を適用して、その色値をＹＩＱ色空間に変換することによって、実行することができる。これらの実施形態では、アプリケーションは、白／黒の成分に沿った値を変更することなく、赤／緑の色成分、及び黄／青の色成分に沿った値のみを調整することによって、ＹＩＱ色空間内の画像の色温度を調整する。一部の実施形態では、このアプリケーションは、ＹＩＱ色空間内の画像の色温度を調整するが、これは、その画像の色値の本来の色空間（例えば、ＲＧＢ色空間）の代わりに、ＹＩＱ色空間内で調整を適用することが、より視覚的に心地よい結果を生み出すためである。更には、これらの実施形態でのアプリケーションは、調整が完了した後、画像の色値を、本来の色空間に変換して戻す。
【００７３】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して肌の色調調整を実施した後の、第３ステージ６１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【００７４】
第４ステージ６２０は、ユーザが、矢印６３０によって示されるように、肌の色調ＵＩコントロール３５６のつまみを更に右に移動させることによって、画像の肌の色調を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ６２０での画像３５５の色は、画像３５５の全域にわたる、より高密度の斜線によって示されるように、第３ステージ６１５での画像内の色よりも、更に調整されて示される。
【００７５】
図６によって示される上記の実施例では、一部の実施形態のアプリケーションは、肌の色調ＵＩコントロール３５６に対するユーザの入力に応答して、画像全体の色温度を調整する。あるいは、他の実施形態のアプリケーションは、画像内の肌の色調のみの色温度を調整する。これらの実施形態では、アプリケーションは、肌の色調に関連付けられている予め定義された色値の範囲内に収まる色値を有する、画像内の画素を特定するために、上述のものと同じ技術を使用する。次いで、このアプリケーションは、画像内部の、その特定された画素の色温度のみを調整する。その効果は、図４に示すような、自然な彩度調整が画像に対して行うものの反対である。
【００７６】
上述のように、一部の実施形態の画像編集アプリケーションはまた、画像の一部分（例えば、画像の空の色又は群葉の色）のみを調整するためのＵＩコントロールも提供する。図７は、画像の残余の色に影響を与えることなく、画像の空の色を調整又は強調する例示的操作を、４つの異なるステージ７０５、７１０、７１５、及びステージ７２０で示す。
【００７７】
第１ステージ７０５は、図３の第２ステージ３１０と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ７１０は、空ＵＩコントロール３５４の強調表示によって示されるように、ユーザが空ＵＩコントロール３５４を選択した後の、ＧＵＩ３００を示す。空ＵＩコントロール３５４の選択は、空ＵＩコントロール３５４を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、空ＵＩコントロール３５４にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００７８】
第３ステージ７１５は、ユーザが、矢印７２５によって示されるように、空ＵＩコントロール３５４のつまみを右に移動させることによって、画像の空の色を強調させ始めた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、空ＵＩコントロール３５４のつまみを移動させることができる。この指の移動の結果として、画像３５５内の空の領域の全域にわたる斜線によって示されるように、画像３５５内の空の色が強調されているが、その一方で、画像３５５内の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、空の色の彩度を調整することによって、空の色を強調する。これらの実施形態では、アプリケーションは、空ＵＩコントロール３５４に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、空の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。彩度を調整する代わりに、又はそれに加えて、一部の他の実施形態のアプリケーションはまた、画像内の空の色の明度及びコントラストも調整することにより、画像内の空の色に対する全体的な強調をもたらす。これらの実施形態では、アプリケーションは、ユーザの空ＵＩコントロール３５４のつまみの移動によって提供される（単一の調整値を指定する）単一の調整を使用して、空の色を有するとして特定されている画像の画素に対する彩度、コントラスト、及び明度に関する調整を決定する。
【００７９】
例えば、空ＵＩコントロールにより、ユーザが−０．５〜０．５の調整値を指定することが可能となる場合、一部の実施形態のアプリケーションは、コントラスト調整値（すなわち、ゲイン値）が、１の値、又はその調整値に１を加えた値のいずれか大きい方になるように決定する。このアプリケーションはまた、明度調整値（すなわち、ｇａｍｍａ）も、その調整値の絶対値に１を加えたものとなるように決定する。次いで、このアプリケーションは、ＲＧＢ色空間内の画像に、これらの２つの調整を適用する。コントラスト及びｇａｍｍａを使用して、各画素の色値を計算するための数式は、Ｒ＝ゲイン＊（ｃｏｌｏｒｖａｌｕｅ）ｇａｍｍａであり、式中、パラメータ「ゲイン」は、コントラスト調整値を表し、パラメータ「ｃｏｌｏｒｖａｌｕｅ」は、画像内の各画素の色値（すなわち、赤チャネル値、緑チャネル値、又は青チャネル値）を表し、パラメータｇａｍｍａは、明度調整値を表す。
【００８０】
画像の彩度を調整するために、一部の実施形態のアプリケーションは、Ｒ＝ｃｏｌｏｒｖａｌｕｅ＋（ｃｏｌｏｒｖａｌｕｅ−ａｖｅ）＊（ｇａｍｍａ−１）＊０．５、の数式を使用して、各画素の色値を計算し、式中、パラメータｃｏｌｏｒ  ｖａｌｕｅは、画像内の各画素の色値（すなわち、赤チャネル値、緑チャネル値、又は青チャネル値）を表し、パラメータ「ａｖｅ」は、各画素に関する３つの色成分値の平均（例えば、（赤チャネル値、緑チャネル値、青チャネル値）の合計を３で除算すること）を表し、パラメータ「ｇａｍｍａ」は、明度調整値を表す。
【００８１】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して空調整を実施した後の、第３ステージ７１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【００８２】
第４ステージ７２０は、ユーザが、矢印７３０によって示されるように、空ＵＩコントロール３５４のつまみを更に右に移動させることによって、画像の空の色を更に強調した後の、ＧＵＩ３００を示す。図示のように、このステージ７２０での画像３５５の空の色は、画像３５５内の空の領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ７１５での画像内の空の色よりも、更に強調されて示されるが、その一方で、画像３５５の残部は、影響を受けないまま維持される。
【００８３】
種々の実施形態は、種々の技術を使用して、空の色を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、空の色を定義する。反対色空間は、一般的にはＹＣＣ色空間として既知の、３つの反対色チャネル（例えば、白／黒チャネル、赤／緑チャネル、及び黄／青チャネル）に依存する色空間である。反対色空間の幾つかの例としては、ＹＩＱ色空間、ＹｃｂＣｒ色空間、及びＩＰＴ色空間が挙げられる。一部の実施形態では、反対色空間は、特に青色領域での、その均一な知覚的挙動のために、空の色を定義するために好ましい。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、ＹＣＣ色空間として説明される。しかしながら、ＹＣＣ色空間は、上述の色空間のいずれかのうちの１つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、空の色の範囲を定義するために使用される色空間は、画像の色値が定義される色空間（例えば、ＲＧＢ色空間）とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間（例えば、ＲＧＢ色空間）から、空の色の範囲を定義するために使用されるＹＣＣ色空間に、画像を変換する。次いで、このアプリケーションは、その新たな色空間内で、空の色に関して定義される範囲内に収まる色値を有する、その画像の画素を特定する。図８は、ＲＧＢ色空間８０５からＹＣＣ色空間８００への、例示的な変換を示す。
【００８４】
図８に示すように、ＲＧＢ色空間８０５は、３つの軸、すなわち、赤色成分値の範囲を表す軸８２５、緑色成分値の範囲を表す８１５、及び青色成分値の範囲を表す軸８３５に沿って定義される。それゆえ、画像３５５のあらゆる色は、ＲＧＢ色空間８０５内部の場所によって表すことができる。
【００８５】
図８はまた、空の色を定義するために一部の実施形態と共に使用される、ＹＣＣ色空間８００も提示する。図示のように、このＹＣＣ色空間は、３つの軸、すなわち、赤及び緑の色値の範囲を表す軸８２０、青及び黄の色値の範囲を表す軸８３０、及び種々の濃淡の灰色の範囲（すなわち、輝度値の範囲）を表す垂直軸８１０に沿って定義され、底面の場所８４０は黒色を表し、上面の場所８５０は白色を表す。色が明るくなるほど、その色は、この色空間の円柱８００の底面から遠くに出現する。
【００８６】
一部の実施形態では、空の色は、領域８６０などの、特定の黒／白の範囲を有する、青、赤、及び黄色の領域の周囲の、ＹＣＣ色空間の円柱８００の領域内部に定義される。それゆえ、この空の色値の範囲は、青空、雲、日の出、及び日没の色を含む。一部の実施形態は、アプリケーションによって認識される空の色の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。
【００８７】
一部の実施形態のアプリケーションは、ＲＧＢ色空間８０５内の各色を、ＹＣＣ色空間８００内の別の色にマッピングすることによって、ＲＧＢ色空間８０５からＹＣＣ色空間８００に、画像を変換する。例えば、ＲＧＢ色空間８０５内の色８４５は、ＹＣＣ色空間８００内の色８７０にマッピングされ、ＲＧＢ色空間８０５内の色８５５は、ＹＣＣ色空間８００内の色８８０にマッピングされる。ＲＧＢ色空間からＹＣＣ色空間に画像を変換することによって、このアプリケーションは、定義された空の色の領域８６０の範囲内に収まる色（例えば、色８５５）及び、定義された空の色の領域８６０の範囲内に収まらない色（例えば、色８４５）を特定することが可能である。
【００８８】
画像の肌の色調又は青空の色のみを調整することに加えて、一部の実施形態の画像編集アプリケーションはまた、画像内の群葉（すなわち、緑樹）のみを調整するためのＵＩコントロールも提供する。図９は、画像の残余の色に影響を与えることなく、画像の群葉の色を調整又は強調する例示的操作を、４つの異なるステージ９０５、９１０、９１５、及びステージ９２０で示す。
【００８９】
第１ステージ９０５は、図３の第２ステージ３１０と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ９１０は、群葉ＵＩコントロール３５８の強調表示によって示されるように、ユーザが群葉ＵＩコントロール３５８を選択した後の、ＧＵＩ３００を示す。群葉ＵＩコントロール３５８の選択は、群葉ＵＩコントロール３５８を表示する、タッチスクリーン装置上の場所で、指をタップすることによって、又は、群葉ＵＩコントロール３５８にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００９０】
第３ステージ９１５は、ユーザが、矢印９２５によって示されるように、群葉ＵＩコントロール３５８のつまみを右に移動させることによって、画像の群葉の色を強調させ始めた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、群葉ＵＩコントロール３５８のつまみを移動させることができる。この指の移動の結果として、画像３５５内の山の領域の全域にわたる斜線によって示されるように、画像３５５内の群葉の色（例えば、画像３５５の背景内の山の色）が強調されているが、その一方で、画像３５５の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、群葉の色の彩度、コントラスト、及び明度を調整することによって、群葉の色を強調する。これらの実施形態では、アプリケーションは、ユーザの群葉ＵＩコントロール３５８のつまみの移動によって提供される単一の調整を使用して、群葉の色を有するとして特定されている画像の画素に対する彩度、コントラスト、及び明度に関する調整を決定する。空の調整と同様に、このアプリケーションは、群葉ＵＩコントロール３５８に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、群葉の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。画像内の群葉の色の彩度、コントラスト、及び明度を調整することに加えて、一部の実施形態のアプリケーションはまた、枯れ草の茶色がかった色を、より純粋な緑色に向けて移動させるように、群葉の色全体もシフトする。
【００９１】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して群葉調整を実施した後の、第３ステージ９１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【００９２】
第４ステージ９２０は、ユーザが、矢印９３０によって示されるように、群葉ＵＩコントロール３５８のつまみを更に右に移動させることによって、画像の群葉の色を更に強調した後の、ＧＵＩ３００を示す。図示のように、このステージ９２０での画像３５５の群葉の色は、画像３５５内の山の領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ９１５での画像内の群葉の色よりも、更に強調されて示されるが、その一方で、画像３５５の残部は、影響を受けないまま維持される。
【００９３】
図３、４、６、７、及び図９を参照して上述された実施例では、ＵＩコントロールは、範囲スライダとして実装され、ユーザは、直線状のスライダに沿ってつまみをスライドさせることによって、入力を提供する。前述のように、種々の実施形態は、画像上の色値を調整するための種々のタイプのＵＩコントロールを使用する。一部の実施形態では、範囲スライダは、ユーザが、スライダの領域内のいずれの場所にもつまみを移動させることが可能な、異なる形状又はジオメトリにすることができる。他の実施形態では、このアプリケーションは、ダイヤルとして、ＵＩコントロールを実装する。図１０は、ダイヤルＵＩコントロールを使用して、画像の群葉の色を調整又は強調する操作の実施例を、４つの異なるステージ１００５、１０１０、１０１５、及びステージ１０２０で示す。
【００９４】
第１ステージ１００５は、図９の第１ステージ９０５と同一であるが、ただし、画像に関する種々の色調整を開始するための種々のＵＩコントロールは、異なる外観を有する。前述のように、種々の実施形態は、画像上の色値を調整するための種々のタイプのＵＩコントロールを使用する。この実施例では、アプリケーションは、ＵＩコントロール１０５２〜１０５８のセットを、ダイヤルとして実装する。範囲スライダと同様に、異なるダイヤルは、画像に対する異なる色調整操作を開始するためのものである。例えば、ＵＩコントロール１０５２は、画像に対する彩度調整を開始するためのものであり、ＵＩコントロール１０５４は、画像の空の色に対する色調整を開始するためのものであり、ＵＩコントロール１０５８は、画像の群葉の色に対する色調整を開始するためのものであり、ＵＩコントロール１０５６は、画像の肌の色調に対する色調整を開始するためのものである。ユーザは、これらのダイヤルのうちの１つを選択して、時計回り又は反時計回りの方向にダイヤルを回転させることによって、特定の色調整を開始することができる。
【００９５】
第２ステージ１０１０は、群葉ＵＩコントロール１０５８の強調表示によって示されるように、ユーザが群葉ＵＩコントロール１０５８を選択した後の、ＧＵＩ３００を示す。群葉ＵＩコントロール１０５８の選択は、群葉ＵＩコントロー１０５８を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（指を置く、指さす、又は指をタップすること）によって、又は、群葉ＵＩコントロール１０５８にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【００９６】
第３ステージ１０１５は、ユーザが、矢印１０２５によって示されるように、群葉ＵＩコントロール１０５８に対する円形入力を提供することによって、画像の群葉の色を強調させ始めた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、時計回り又は反時計回りの方向で、ユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、群葉ＵＩコントロール３５８に対する円形入力を提供することができる。この指の移動の結果として、画像３５５内の山の領域の全域にわたる斜線によって示されるように、画像３５５内の群葉の色（例えば、画像３５５の背景内の山の色）が強調されているが、その一方で、画像３５５の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、群葉の色の彩度、コントラスト、及び明度を調整することによって、群葉の色を強調する。これらの実施形態では、アプリケーションは、群葉ＵＩコントロール１０５８上でのユーザの移動によって指定される単一の調整値を使用して、群葉の色を有するとして特定されている画像の画素に対する、彩度、コントラスト、及び明度に関する調整を決定する。空の調整と同様に、このアプリケーションは、群葉ＵＩコントロール１０５８に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、群葉の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。
【００９７】
第４ステージ１０２０は、ユーザが、矢印１０３０によって示されるように、群葉ＵＩコントロール１０５８の円形入力をより多く提供することによって、画像の群葉の色を更に強調した後の、ＧＵＩ３００を示す。図示のように、このステージ１０２０での画像３５５の群葉の色は、画像３５５内の山の領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ１０１５での画像内の群葉の色よりも、更に強調されて示されるが、その一方で、画像３５５の残部は、影響を受けないまま維持される。
【００９８】
上記の図１０は、ＵＩコントロールに関する１つの代替的実装を示す。ＵＩコントロールに関する、一部の他の例示的実装としては、ボタン（すなわち、ユーザは、そのボタンを押さえる期間によって、調整を適用する程度を指定することができる）、数値フィールド（すなわち、数値が高いほど、画像に対する調整が、より多く適用されることを表す）などが挙げられる。
【００９９】
種々の実施形態は、種々の技術を使用して、群葉の色を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、群葉の色を定義する。反対色空間は、一般的にはＹＣＣ色空間として既知の、３つの反対色チャネル（例えば、白／黒チャネル、赤／緑チャネル、及び黄／青チャネル）に依存する色空間である。反対色空間の幾つかの例としては、ＹＩＱ色空間、ＹｃｂＣｒ色空間、及びＩＰＴ色空間が挙げられる。一部の実施形態では、反対色空間は、その均一な知覚的挙動のために、空の色を定義するために好ましい。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、ＹＣＣ色空間として説明される。しかしながら、ＹＣＣ色空間は、上述の色空間のいずれかのうちの１つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、肌の色調の範囲を定義するために使用される色空間は、画像の色値が定義される色空間（例えば、ＲＧＢ色空間）とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間（例えば、ＲＧＢ色空間）から、群葉の色の範囲を定義するために使用されるＹＣＣ色空間に、画像を変換する。次いで、このアプリケーションは、その新たな色空間内で、群葉の色に関して定義される範囲内に収まる色値を有する、その画像の画素を特定する。図１１は、ＲＧＢ色空間１１０５からＹＣＣ色空間１１００への、例示的な変換を示す。
【０１００】
図１１に示すように、ＲＧＢ色空間１１０５は、３つの軸、すなわち、赤色成分値の範囲を表す軸１１２５、緑色成分値の範囲を表す１１１５、及び青色成分値の範囲を表す軸１１３５に沿って定義される。それゆえ、画像３５５のあらゆる色は、ＲＧＢ色空間１１０５内部の場所によって表すことができる。
【０１０１】
図１１はまた、群葉の色を定義するために一部の実施形態と共に使用される、ＹＣＣ色空間１１００も提示する。図示のように、このＹＣＣ色空間は、３つの軸、すなわち、赤及び緑の色値の範囲を表す軸１１２０、青及び黄の色値の範囲を表す軸１１３０、及び種々の濃淡の灰色の範囲（すなわち、輝度値の範囲）を表す垂直軸１１１０に沿って定義され、底面の場所１１４０は黒色を表し、上面の場所１１５０は白色を表す。色が明るくなるほど、その色は、この色空間の円柱１１００の底面から遠くに出現する。
【０１０２】
一部の実施形態では、群葉の色は、領域１１６０などの、特定の黒／白の範囲を有する、緑色及び黄色の領域の周囲の、ＹＣＣ色空間の円柱１１００の領域内部に定義される。一部の実施形態は、アプリケーションによって認識される群葉の色の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。
【０１０３】
一部の実施形態のアプリケーションは、ＲＧＢ色空間１１０５内の各色を、ＹＣＣ色空間１１００内の別の色にマッピングすることによって、ＲＧＢ色空間１１０５からＹＣＣ色空間１１００に、画像を変換する。例えば、ＲＧＢ色空間１１０５内の色１１４５は、ＹＣＣ色空間１１００内の色１１７０にマッピングされ、ＲＧＢ色空間１１０５内の色１１５５は、ＹＣＣ色空間１１００内の色１１８０にマッピングされる。ＲＧＢ色空間からＹＣＣ色空間に画像を変換することによって、このアプリケーションは、定義された群葉の色の領域１１６０の範囲内に収まる色（例えば、色１１５５）及び、定義された群葉の色の領域１１６０の範囲内に収まらない色（例えば、色１１４５）を特定することが可能である。
【０１０４】
上述の図で説明される画像編集アプリケーションのＧＵＩは、その画像編集アプリケーションが実行される装置が、そのＧＵＩを表示するための十分に大きい画面を有するという仮定の下で示されている。しかしながら、画像編集アプリケーションが実行される装置のうちの一部は、ＵＩ項目を、それらの項目がより大きい装置のより大きい画面内に表示される方式で表示するには、画面サイズが限定されている場合がある。また、より大きい装置のより大きい画面も、その装置が異なる向き（例えば、縦長式）で保持される場合、限定的であると見なされる恐れがある。一部の実施形態では、画像編集アプリケーションは、異なる時間インスタンスで異なるＵＩ項目の異なるセットを表示することにより、この限定的な画面空間に適応する。
【０１０５】
図１２は、一部の実施形態のＧＵＩ１２００を通じて、色調整ツールのセットを呼び出す実施例を、６つの異なるステージ１２０１〜１２０６で概念的に示す。図示のように、ＧＵＩ１２００は、制御ペイン１２１５、画像表示領域１２１６、サムネイル表示領域１２２０、及びツールナビゲーションペイン１２２５を含む。
【０１０６】
画像表示領域１２１６は、ユーザが画像編集アプリケーションを使用して編集することを望む画像を、この画像表示領域１２１６が表示するという点で、図３を参照して上述された画像表示領域３４５と同様である。サムネイル表示領域１２１５は、画像編集アプリケーションを使用して編集するために利用可能な画像のサムネイルのコレクションを、このサムネイル表示領域１２１５が表示するという点で、サムネイル表示領域３３０と同様である。一部の実施形態では、この画像編集アプリケーションは、ユーザが、異なるサムネイルを表示するために、上方及び下方あるいは左右にスクロールすることを可能にする。また、この画像編集アプリケーションは、サムネイル上に視覚的な表示（例えば、強調表示）も提供することにより、そのサムネイルが選択されており、かつ対応する画像が表示領域内に表示されていることを示す。更には、一部の実施形態の画像編集アプリケーションは、サムネイル上に視覚的な表示（例えば、ツールボックスアイコン）を提供することにより、対応する画像が編集されていることを示す。
【０１０７】
ツールナビゲーションペイン１２２５は、異なる時間インスタンスで、選択可能又は制御可能ＵＩ項目の異なるセットを表示する。一部の実施形態では、ツールナビゲーションペイン１２２５内に現在表示されるユーザインターフェース項目のセットは、ツールナビゲーションペイン１２２５内に従前に表示されていたＵＩ項目のセットとの、ユーザの対話に応じて決定される。例えば、ユーザが、編集ツールのセットを表す特定のＵＩ項目にタッチすると、その特定のＵＩ項目に関連する編集ツールのセットに関する、ＵＩ項目のセットが、ツールナビゲーションペイン１２２５内の、その特定のＵＩ項目を含む、ＵＩ項目のセットに取って代わる。図示のように、ツールナビゲーションペイン１２２５は、ＵＩ項目１２３０、及び他のＵＩ項目のセット１２９２を表示する。
【０１０８】
この画像編集アプリケーションは、ツールナビゲーションペイン１２２５内に表示されるＵＩ項目の第１のセットを、幾つもの異なる方式で、ＵＩ項目の第２のセットに置き換えることができる。例えば、この画像編集アプリケーションは、第１のセットをスライドさせて出すと同時に、第２のセットをスライドさせて入れる。この画像編集アプリケーションは、第２のセットがスライドして入って来る際に、第１のセットと第２のセットとを重ね合わせることができる。更には、第１のセット及び第２のセットによるスライドの方向は、任意の方向（上、下、左、右、斜めなど）とすることができる。
【０１０９】
ＧＵＩ１２００を通じて色調整ツールを呼び出す例示的操作を、ここで説明する。第１ステージ１２０１では、画像編集アプリケーションは、画像表示領域１２１６内に画像１２１７を表示する。画像１２１７は、サムネイル表示領域１２２０内に表示されたサムネイル１２３５に対応する。すなわち、この画像編集アプリケーションは、ユーザのサムネイル１２３５の選択に応答して、画像表示領域１２１６内に画像１２１７を表示する。
【０１１０】
第２ステージ１２０２は、ユーザが、ナビゲーションペイン１２２５内に表示されるＵＩ項目の変更を開始し始めた後の、ＧＵＩ１２００を示す。一部の実施形態では、ツールボックスを示すアイコンである、ＵＩ項目１２３０の選択が、ナビゲーションペイン１２２５内に表示されるＵＩ項目を、色調整ツールを含む画像編集ツールのセットを表す、ＵＩ項目のセットに変更する。図示のように、ユーザは、ＵＩ項目１２３０の強調表示によって示されるように、ＵＩ項目１２３０を選択している。
【０１１１】
第３ステージ１２０３は、アプリケーションがツールナビゲーションペイン１２２５内に表示されるＵＩ項目のセットを変更する際に、ＧＵＩ１２００が提供するアニメーションを示す、過渡的ステージである。上述のように、一部の実施形態のアプリケーションは、ツールナビゲーションペイン１２２５内のＵＩ項目の１つのセットを、ＵＩ項目の別のセットに置き換えるアニメーションを提供する。この実施例では、ＧＵＩは、新たなＵＩ項目のセット１２２６が、ツールナビゲーションペイン１２２５内に表示されていたＵＩ項目のセット１２９２に取って代わる、アニメーションを表示する。図示のように、ＵＩ項目のセット１２９２は、ＵＩ項目１２３０の下から右へとスライドして入り、その過程で、ＵＩ項目のセット１２９２を覆う。
【０１１２】
第４ステージ１２０４は、ＵＩ項目のセット１２２６が、ＵＩ項目のセット１２９２に完全に取って代わった後の、ＧＵＩ１２００を示す。図示のように、ツールナビゲーションペイン１２２５は、新たなＵＩ項目のセット１２２６を表示する。この実施例でのＵＩ項目のセット１２２６は、６つのＵＩ項目１２４０、１２４５、１２４６、１２４７、１２５０、及びＵＩ項目１２５５を含む。ＵＩ項目１２４５は、画像上クロップ及び角度補正ツールを表す。ＵＩ項目１２４６は、露出調整ツールのセットを表す。ＵＩ項目１２４７は、色調整ツールのセットを表す。ＵＩ項目１２５０は、画像上ブラシツールを表す。ＵＩ項目１２５５は、画像上効果ツールを表す。このステージでは、ユーザは、色調整ツールを呼び出すために、ＵＩ項目１２４７を選択する。
【０１１３】
更には、ＵＩ項目のセットの置き換えにより、ＵＩ項目１２３０もまた、ＵＩ項目１２４０に置き換えられる。ＵＩ項目１２４０は、ツールナビゲーションペイン１２２５内で、新たなＵＩ項目のセット１２２６を、別のＵＩ項目のセットに置き換えるためのものである。ＵＩ項目１２４０はまた、ユーザが、そのＵＩ項目のセットによって表される編集ツールを使用することを望まないことを示すために、ユーザがタッチするためのものでもある。
【０１１４】
第４ステージ１２０４はまた、ユーザが、ＵＩ項目１２４７を選択することによって、色調整ツールの呼び出しを開始していることも示す。図示のように、ユーザは、ＵＩ項目１２４７の強調表示によって示されるように、ＵＩ項目１２４７上で指をタップしている。
【０１１５】
第５ステージ１２０５は、ユーザのＵＩ項目１２４７の選択に応答して、アプリケーションがツールナビゲーションペイン１２２５内のＵＩ項目のセット１２２６を、色調整ツールのセット１２６０で置き換える際に、ＧＵＩ１２００が提供するアニメーションを示す、過渡的ステージである。図示のように、ＵＩ項目のセット１２２６は、ＵＩ項目１２４０内へと左にスライドを開始して、その過程中に、新たな色調整ツールのセット１２６０を露呈させる。
【０１１６】
第６ステージ１２０６は、ツールナビゲーションペイン１２２５内で、色調整ツールのセット１２６０が、ＵＩ項目のセット１２２６に完全に取って代わった後の、ＧＵＩ１２００を示す。図示のように、この色調整ツールのセットは、彩度ＵＩコントロールを呼び出すためのＵＩ項目１２７１、空ＵＩコントロールを呼び出すためのＵＩ項目１２７２、群葉ＵＩコントロールを呼び出すためのＵＩ項目１２７３、肌色ＵＩコントロールを呼び出すためのＵＩ項目１２７４、及び色バランスＵＩコントロールのセットを呼び出すためのＵＩ項目１２７５を含む。更には、ＵＩ項目のセット１２２６の置き換えはまた、ＵＩ項目１２４０を、色調整アイコンのように見えるＵＩ項目１２６２に変更させる。ユーザは、終了させる（又は、色調整ツールのセットを選択解除する）ために、ＵＩ項目１２６２を選択することができる。
【０１１７】
図１２は、ＧＵＩ１２００を通じて色調整ツールのセットを呼び出す実施例を示す。図１３は、ＧＵＩ１２００を通じて、色調整ツールのセットを選択解除する実施例を、６つの異なるステージで示す。
【０１１８】
第１ステージ１３０１は、図１２の第６ステージ１２０６と同一であるが、ただし、ユーザは、色調整ツールのセット１２６０を選択解除するための、ツールナビゲーションペイン１２２５内のＵＩ項目１２６２を選択したところである。
【０１１９】
第２ステージ１３０２は、アプリケーションが色調整ツールのセット１２６０をＵＩ項目のセット１２２６で置き換える際に、ＧＵＩ１２００が提供するアニメーションを示す、過渡的ステージである。図示のように、ＵＩ項目のセット１２２６は、ＵＩ項目１２６２の下から、ツールナビゲーションペイン１２２５内にスライドを開始して、その過程で、色調整ツールのセット１２６０を覆う。
【０１２０】
第３ステージ１３０３は、ＵＩ項目のセット１２２６が、色調整ツールのセット１２６０に完全に取って代わったことを示す。更には、ＵＩ項目１２６２もまた、ＵＩ項目１２４０に変更されている。上述のように、ＵＩ項目１２４０は、ユーザが、そのＵＩ項目のセットによって表される編集ツールを使用することを望まないことを示すために、ユーザが選択するためのものである。
【０１２１】
第４ステージ１３０４は、ユーザが、ＵＩ項目１２４０を選択した場合のＧＵＩ１２００を示す。第５ステージ１３０５は、ユーザのＵＩ項目１２４０の選択に応答して、アプリケーションが、ＵＩ項目のセット１２２６をＵＩ項目のセット１２９２で置き換えるアニメーションを示す、過渡的ステージである。図示のように、ＵＩ項目のセット１２２６は、ＵＩ項目１２４０内へと左にスライドを開始して、その過程中に、ＵＩ項目のセット１２９２を露呈させる。
【０１２２】
第６ステージ１３０６は、ツールナビゲーションペイン１２２５内で、ＵＩ項目のセット１２９２が、ＵＩ項目のセット１２２６に完全に取って代わった後の、ＧＵＩ１２００を示す。更には、ＵＩ項目１２４０は、ＵＩ項目１２３０に変更されている。
【０１２３】
図１４は、ＧＵＩ１２００を通じて、画像に対して空調整操作を実行する実施例を、６つのステージ１４０５、１４１０、１４１５、１４２０、１４２２、及びステージ１４２４で示す。図１４に示すように、ＧＵＩ１２００は、ユーザが閲覧及び選択するための、画像のサムネイルバージョンのセットを含む、サムネイル表示領域１２２０を有する。ユーザは、サムネイル表示領域１２２０上で左又は右にスクロールすることによって（例えば、サムネイル表示領域１２２０上に指を置き、その指を左又は右にドラッグすることによって）、より多くのサムネイル画像を一通り閲覧することができる。ＧＵＩ１２００はまた、画像のセットを表示するための画像表示領域１２１６、ツールナビゲーションペイン１２２５、及びＵＩコントロール表示領域１４５０も含む。
【０１２４】
第１ステージ１４０５は、ユーザが、画像表示領域１２１６内に表示される画像１４７０を選択した後の、ＧＵＩ１２００を示す。画像表示領域１２１６内に表示される画像の選択は、その画像の対応するサムネイル１４７５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（指を置く、指さす、又は指をタップすること）によって、又は、その画像のサムネイル１４７５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。この選択はまた、サムネイル表示領域１２２０内のサムネイル１４７５の強調表示によっても示される。
【０１２５】
第２ステージ１４１０は、ユーザが、サムネイル表示領域１２２０内でサムネイル画像をスクロールし始めた後の、ＧＵＩ１２００を示す。上述のように、ユーザは、サムネイル表示領域１２２０上で左又は右にスクロールすることによって、より多くのサムネイル画像を一通り閲覧することができる。このスクロールは、サムネイル表示領域１２２０を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上で、ジェスチャを実行して（例えば、指を置くか、指さすか、又は指をタップして）、その指を左又は右にドラッグすることによって、実行することができる。図示のように、ユーザは、指を左にドラッグすることによって、サムネイル画像をスクロールしている。
【０１２６】
第３ステージ１４１５は、ユーザが、サムネイル表示領域１２２０内のサムネイル画像のスクロールを完了して、画像表示領域１２１６内に表示される新たな画像を選択した後の、ＧＵＩ１２００を示す。図示のように、サムネイル表示領域１２２０は、この時点で、第１ステージ１４０５でサムネイル表示領域１２２０内に表示されていなかったサムネイル１４３５を含む。第３ステージ１４１５に示すように、ユーザはまた、画像表示領域１２１６内に表示される画像１４５５も選択している。画像表示領域１２１６内に表示される画像の選択は、その画像の対応するサムネイル１４３５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（指を置く、指さす、又は指をタップすること）によって、又は、画像のサムネイル１４３５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。この選択はまた、サムネイル表示領域１２２０内のサムネイル１４３５の強調表示によっても示される。
【０１２７】
第３ステージ１４１５に示すように、ユーザはまた、色調整アイコン１４４２の強調表示によって示されるように、画像１４５５に対して色調整を実行することも選択している。結果として、選択可能ＵＩ項目１４５２〜１４５８のセットが、ツールナビゲーションペイン１２２５内に表示される。選択可能ＵＩ項目１４５２〜１４５８のそれぞれは、画像に対する異なる色調整を開始するためのものである。例えば、選択可能ＵＩ項目１４５２は、画像に関する彩度調整を開始するためのものであり、選択可能ＵＩ項目１４５４は、画像に関する空調整を開始するためのものであり、選択可能ＵＩ項目１４５８は、画像に関する群葉調整を開始するためのものであり、選択可能ＵＩ項目１４５６は、画像に関する肌の色調調整を開始するためのものである。これらの色調整は、図３、４、６、７、及び図９を参照して上述された種々の色調整と同一である。
【０１２８】
第４ステージ１４２０は、ユーザが、ツールナビゲーションペイン１２２５内の選択可能ＵＩ項目１４５４を選択した後の、ＧＵＩ１２００を示す。選択可能ＵＩ項目１４５４の選択は、選択可能ＵＩ項目１４５４を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目１４５４にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、選択可能ＵＩ項目１４５４の強調表示によって示されるように、選択可能ＵＩ項目１４５４上で指をタップすることによって、選択可能ＵＩ項目１４５４を選択している。この選択の結果として、空調整ＵＩコントロール１４６４が、ＵＩコントロール表示領域１２２０内に出現している。
【０１２９】
種々の実施形態は、画像の色を調整するための種々のタイプのＵＩコントロールを提供する。この実施例では、空調整ＵＩコントロールは、範囲スライダである。ユーザは、空ＵＩコントロール１４６４のつまみを、範囲スライダに沿って異なる位置にスライドさせることによって、画像内の空の色を調整することができる。
【０１３０】
第５ステージ１４２２は、ユーザが空ＵＩコントロール１４６４のつまみを選択しているが、画像内の空の色の調整を開始していないことを示す、過渡的ステージである。第６ステージ１４２４は、ユーザが、矢印１４６０によって示されるように、空ＵＩコントロール１４６４のつまみを右に移動させることによって、画像の空の色の調整を開始した後の、ＧＵＩ１２００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、空ＵＩコントロール１４６４のつまみを移動させることができる。この指の移動の結果として、画像３５５内の空の領域の全域にわたる斜線によって示されるように、画像１４５５内の空の色が強調されているが、その一方で、画像１４５５の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、図７を参照して上述されたものと同じ方式で、画像内の空の色を調整する。
【０１３１】
図１４は、ＧＵＩ１２００を通じて空調整操作を実行する実施例を示す。ユーザは、種々の選択可能項目１４５２〜１４５８の選択を通じて、同様の方式で、他の種類の色調整操作（例えば、彩度調整、自然な彩度調整、群葉調整、肌の色調調整など）を実行することができる。図１５は、ＧＵＩ１２００を通じて群葉調整操作を実行する実施例を、４つのステージ１５０５、１５１０、１５１５、及びステージ１５２０で提供する。
【０１３２】
第１ステージ１５０５は、図１４の第１ステージ１４０５と同一である。図示のように、ユーザは、画像表示領域１２１６内に表示される画像１４５５を選択している。第２ステージ１５１０は、ユーザが、ツールナビゲーションペイン１２２５内の選択可能ＵＩ項目１４５８を選択した後の、ＧＵＩ１２００を示す。選択可能ＵＩ項目１４５８の選択は、選択可能ＵＩ項目１４５８を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目１４５８にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、選択可能ＵＩ項目１４５８の強調表示によって示されるように、選択可能ＵＩ項目１４５８上で指をタップすることによって、選択可能ＵＩ項目１４５８を選択している。この選択の結果として、群葉調整ＵＩコントロール１５６４が、ＵＩコントロール表示領域１４５０内に出現している。
【０１３３】
第３ステージ１５１５は、ユーザが群葉ＵＩコントロール１５６４のつまみを選択しているが、画像内の群葉の色の調整を開始していないことを示す、過渡的ステージである。第４ステージ１５２０は、ユーザが、矢印１５６０によって示されるように、群葉ＵＩコントロール１５６４のつまみを右に移動させることによって、画像の群葉の色の調整を開始した後の、ＧＵＩ１２００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、群葉ＵＩコントロール１５６４のつまみを移動させることができる。この指の移動の結果として、画像１４５５内の山の領域の全域にわたる斜線によって示されるように、画像１４５５内の群葉の色が強調されているが、その一方で、画像１４５５の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、図９を参照して上述されたものと同じ方式で、画像内の群葉の色を調整する。
【０１３４】
図１６は、色調整ＵＩコントロールに対するユーザの入力に基づいて、画像の一部分の色値を調整するためのプロセス１６００を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、画像に対するコンテンツ分析を（１６０５で）実行することによって開始する。種々の実施形態は、画像に対して種々のコンテンツ分析を実行する。例えば、一部の実施形態のアプリケーションは、画像に対して顔検出分析を実行することにより、その画像が、いずれかの人の顔を含むか否かを判定する。
【０１３５】
次いで、このプロセスは、必要に応じて、コンテンツ分析からの結果に基づいて、画像調整ＵＩコントロールのセットに関する、パラメータのセットを（１６１０で）定義する。一部の実施形態では、調整ＵＩコントロールのうちの少なくとも１つは、アプリケーションの設定に基づいて、画像に対して種々の調整操作を実行するように、構成することができる。これらの実施形態の一部では、アプリケーションは、コンテンツ分析からの結果に基づいて、その画像に関するデフォルト設定を定義する。例えば、その画像が人の顔を含むことを、アプリケーションが検出する場合、アプリケーションは、画像全体の彩度を調整することよりも、自然な彩度調整（すなわち、肌の色調を維持しつつ画像の彩度を調整すること）を実行するように、彩度ＵＩコントロールを構成する。
【０１３６】
次に、このプロセスは、特定のＵＩコントロールに対するユーザ入力を（１６１５で）受け取る。上述のように、ＵＩコントロールの一部は、画像の種々の部分の色値を調整するためのものである。一部の実施形態では、このアプリケーションは、それらのＵＩコントロールのための、予め定義された色値の範囲のセットを含む。例えば、このアプリケーションは、空ＵＩコントロールのための、空の色に関連付けられている色値の範囲、群葉ＵＩコントロールのための、群葉の色に関連付けられている色値の範囲、並びに、彩度ＵＩコントロール及び肌の色調ＵＩコントロールのための、肌の色調に関連付けられている色値の範囲を定義している。これらの実施形態の一部では、画像の色値は、これらの色値の範囲を定義するために使用される色空間とは異なる色空間内で定義される。それゆえ、特定のＵＩコントロールに対して、ユーザ入力が受け取られた後、このプロセスは、画像の色値を、色値の範囲を定義するために使用される色空間に（１６２０で）変換する。
【０１３７】
次いで、このプロセスは、その特定のＵＩコントロールに関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを（１６２５で）特定する。一部の実施形態では、種々のコンテンツのタイプに関連付けられている色値の範囲が、メディア記憶装置内に記憶される。これらの実施形態では、このプロセスは、メディア記憶装置から、特定のＵＩコントロールに関連付けられている色値の範囲を取得して、その色値の範囲内に収まる色値を有する画素を特定する。他の実施形態では、色値の範囲は、色調整を実行するための実行可能コード内で定義される。これらの他の実施形態では、この特定操作は、画像に対する色調整をプロセスが実行する際に、同時に実行される。
【０１３８】
ユーザ入力に基づいて、次いで、このプロセスは、操作１６２５で特定された画素のセットの色値を（１６３０で）調整する。プロセス１６００は、一部の実施形態では、このプロセスが、色値の範囲内に収まる画像内の画素のセットを最初に特定し、次いで、特定された画素のセットに対して調整を実行することを示す。しかしながら、一部の他の実施形態では、このプロセスは、調整操作を実行するときと同時に、調整のための画素を特定する。具体的には、画像内の各画素に関して、このプロセスは、その画素の色値が色値の範囲内に収まるか否かを反復的に判定し、その色値が範囲内である場合にのみ、調整を実行する。
【０１３９】
一部の実施形態では、画像の色値を調整する前に、このアプリケーションは、画像の色値に適用することが可能なアルゴリズム又は数学的方程式を生成する。次いで、このアプリケーションは、操作１６２５で特定された画像内の各画素の色値に、そのアルゴリズム又は数学的方程式を適用する。
【０１４０】
次に、このプロセスは、ＵＩコントロールのセットに対して、更に多くのユーザ入力が受け取られるか否かを（１６３５で）判定する。更に多くの入力が受け取られる場合には、このプロセスは、別の画素のセットを特定するために、１６２５に戻る。このプロセスは、ＵＩコントロールのセットに対して、それ以上入力が受信されなくなるまで、操作１６２５〜１６３５を繰り返す。次いで、このプロセスは終了する。
【０１４１】
種々の実施形態は、図１６の操作１６２５で画素のセットを特定するために、種々の技術を使用する。一部の実施形態では、このアプリケーションは、図５、８、及び図１１を参照して上述された技術を使用して、画素のセットを特定する。
【０１４２】
一部の実施形態では、このアプリケーションは、特定のＵＩコントロールに対するユーザ入力に応答して、画像の色値に対する１つのタイプの調整（例えば、彩度調整）のみを実行する。上述のように、一部の他の実施形態のアプリケーションは、特定のＵＩコントロールに対する単一のユーザ入力に応答して、画像の色値に対する２つ以上のタイプの調整を実行する。例えば、ユーザが、空ＵＩコントロール３５４に入力を提供する場合、一部の実施形態のアプリケーションは、画像の一部分の色値に対する彩度調整、コントラスト調整、及び明度調整を実行する。これらの実施形態では、アプリケーションは、単一のユーザ入力を使用して、その画像に関する、コントラストを調整するための調整値、彩度を調整するための調整値、及び明度を調整するための調整値を決定し、これらの個別の調整値を、画像の色値に適用する。
【０１４３】
図１７は、色調整ＵＩコントロールに対する単一のユーザの入力に基づいて、画像内の限定された色値の範囲に対して幾つかのタイプの調整を実行するためのプロセス１７００を、概念的に示す。一部の実施形態では、このプロセスは、図１６の操作１６２０〜１６３０の間に実行される。プロセス１７００は、画像のコントラストを調整するためのコントラスト調整値を決定するために、ＵＩコントロールに対するユーザ入力を（１７０５で）使用することによって開始する。一部の実施形態では、画像のコントラストは、その画像内の色値の範囲を表す。換言すれば、より高いコントラストを有する画像は、より低いコントラストを有する画像よりも、広い色値の範囲を有する。それゆえ、画像のコントラストを増大させることは、その画像内の色値の範囲を伸長させること（すなわち、画像の明るい色値と暗い色値との差を拡大すること）を伴い、画像のコントラストを減少させることは、その画像内の色値の範囲を低減する（すなわち、画像の明るい色値と暗い色値との差を縮小する）。それゆえ、コントラスト調整値は、画像内の色値の範囲をアプリケーションが調整する程度を決定する。
【０１４４】
次に、このプロセスは、ＵＩコントロールに対する同じユーザ入力を（１７１０で）使用して、画像の彩度を調整するための彩度調整値を決定する。一部の実施形態では、画像の彩度は、その画像内の色値の強度を表す。それゆえ、画像の彩度を増大させることは、その画像の色値の強度を増大させることを伴う。それゆえ、彩度調整値は、画像内の色値の強度をアプリケーションが調整する程度を決定する。
【０１４５】
次いで、このプロセスは、特定のＵＩコントロールに対する同じユーザ入力を（１７１５で）使用して、画像の明度を調整するための明度調整値を決定する。一部の実施形態では、画像の明度は、その画像内の明るさ又は輝度を表す。それゆえ、画像の明度を増大させることは、その画像内の色値の輝度値を増大させることを伴う。それゆえ、明度調整値は、画像内の色値の明るさ又は明度値をアプリケーションが調整する程度を決定する。
【０１４６】
画像のコントラスト、彩度、及び明度を調整するための３つの異なる調整値を決定した後、このプロセスは、操作１６２５で特定された画素のセットの色値に、それらのコントラスト調整値、彩度調整値、及び明度調整値を（１７２０で）適用する。一部の実施形態では、このアプリケーションは、画像の色値に適用するための種々の調整値に基づいて、アルゴリズムのセット、又は数学的方程式のセットを生成する。次いで、このアプリケーションは、操作１６２５で特定された画像内の各画素の色値に、そのアルゴリズムのセット、又は数学的方程式のセットを適用する。
【０１４７】
次に、このプロセスは、必要に応じて、画像の色値を、その本来の色空間に（１７２５で）変換して戻す。一部の実施形態では、変換された色空間（例えば、ＹＣＣ色空間）内で、調整のための画素のセットを特定した後に、このアプリケーションは、その変換された色空間内で、画像の色値に対する調整を実行する。例えば、一部の実施形態のアプリケーションは、ＹＣＣ色空間内で群葉調整を実行する。一部の実施形態では、特定のＹＣＣ色空間（例えば、ＩＰＴ色空間）内で群葉調整を実行することが好ましいが、これは、その均一な知覚的挙動のためである。例えば、色の色相を、その色を黄色にすることなく、緑に向けて移行させることができる。これらの実施形態では、調整操作が完了すると、プロセスが画像の色値をその本来の色空間に変換して戻すことが必要である。他の実施形態では、調整のための画素のセットを特定した後に、このアプリケーションは、その本来の色空間内で、画像の色値に対する調整を実行する。例えば、一部の実施形態のアプリケーションは、その色値の本来の色空間（例えば、ＲＧＢ色空間）内で、空調整を実行する。これらの実施形態では、この変換工程１７２０をプロセスが実行する必要はない。次いで、このプロセスは終了する。
【０１４８】
一部の実施形態は、全ての調整を同じ色空間内で実行するが、他の実施形態は、異なる色空間内で色調整を実行する。
【０１４９】
図１８は、画像の一部分のみの色値を調整するためのＵＩコントロールのセットを提供する、一部の実施形態の画像編集アプリケーション１８００を示す。一部の実施形態では、画像編集アプリケーション１８００は、プロセス１６００及びプロセス１７００を実行する。図１８に示すように、画像編集アプリケーション１８００は、画像プロセッサ１８４０、コンテンツ分析モジュール１８４５のセット、色空間変換モジュール１８１５、画素分離モジュール１８１０、及び色調整エンジン１８２０を含む。
【０１５０】
ＵＩモジュール１８０５が、色調整ＵＩコントロールのセットを呼び出すためのユーザ入力を受け取ると、ＵＩモジュール１８０５は、そのリクエストを画像プロセッサ１８４０に渡す。画像プロセッサ１８４０は、メディア記憶装置１８５０から画像を取得して、コンテンツ分析モジュール１８４５のセットに、その画像に対して一連のコンテンツ分析を実行するようにリクエストする。一部の実施形態では、メディア記憶装置１８５０は、画像編集アプリケーション１８００によって構成され、特定の記憶装置のセット上に記憶される、ファイルフォルダのセットである。この記憶装置は、このアプリケーションが動作する電子装置のブートドライブ、そのディスクの異なるパーティション、別個の内部又は外部ハードドライブ、フラッシュドライブ、ＳＤカードなどを含み得る。
【０１５１】
コンテンツ分析モジュール１８４５のセットは、コンテンツ分析モジュールのセットを画像に対して実行する。種々の実施形態は、画像に対して種々のコンテンツ分析を実行する。例えば、一部の実施形態のアプリケーションは、人の顔が画像上に出現するか否かを判定するために、顔検出分析を実行する。次いで、コンテンツ分析モジュール１８４５のセットは、その分析の結果を画像プロセッサ１８４０に送り返す。その分析の結果に基づいて、一部の実施形態の画像プロセッサ１８４０は、ＵＩコントロールのセットに関するパラメータのセットを定義する。例えば、画像上に人の顔が検出される場合には、画像プロセッサ１８４０は、彩度調整ＵＩコントロールを、自然な彩度調整操作に関連付けられているように構成する。
【０１５２】
ＵＩモジュール１８０５が、色調整操作を開始するための、ＵＩコントロールのうちの１つに対するユーザ入力を受け取ると、ＵＩモジュール１８０５は、そのユーザ入力を画像プロセッサ１８４０に渡す。次いで、画像プロセッサ１８４０は、そのユーザ入力を受け取るＵＩコントロールに関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを特定するように、画素分離モジュール１８１０にリクエストする。一部の実施形態では、画像の色値は、それらの色値の範囲を定義するために使用される色空間（例えば、ＹＣＣ色空間）とは異なる色空間（例えば、ＲＧＢ色空間）内で定義される。これらの実施形態では、画素のセットを特定するように画素分離モジュール１８１０にリクエストする前に、画像プロセッサ１８４０は、画像の色値を、それらの色値の範囲を定義するために使用される色空間に変換するように、色空間変換モジュール１８１５にリクエストする。
【０１５３】
画素のセットが特定された後に、画像プロセッサ１８４０は、その画像、及び特定された画素についての情報を、画像に対して一連の色調整を実行するための色調整エンジン１８２０に送る。色調整エンジン１８２０は、画像内の特定された画素に、種々の色調整を適用する。一部の実施形態では、色調整エンジン１８２０は、プロセス１７００を実行して、画像の特定された画素に調整を適用する。図示のように、色調整エンジン１８２０は、画像にコントラスト調整を適用するためのコントラスト調整エンジン１８２５、画像に明度調整を適用するための明度調整エンジン１８３０、及び画像に彩度調整を適用するための彩度調整エンジン１８３５を含む。これらは、画像に対して実行することが可能な例示的な色調整に過ぎないものであり、色調整エンジン１８２０は、画像に対して更なるタイプの色調整を実行するための、更なる色調整エンジンを含み得ることが、当業者には明らかなはずである。例えば、明度調整エンジン１８３０は、ユーザ入力を使用して、画像の明度を調整するための明度調整値を決定し、コントラスト調整エンジン１８２５は、ユーザ入力を使用して、画像のコントラストを調整するためのコントラスト調整値を決定し、彩度調整エンジン１８３５は、ユーザ入力を使用して、画像の彩度を調整するための彩度調整値を決定する。次いで、種々の調整エンジン１８２５〜１８３５は、この明度調整、コントラスト調整、及び彩度調整を画像に適用して、編集された画像を作り出す。
【０１５４】
一部の実施形態では、色調整エンジン１８２０は、変換された色空間内で、画像の色値を調整する。これらの実施形態では、画像プロセッサ１８４０は、色空間変換モジュール１８１５に、調整された画像を送り、画像の色値を、その本来の色空間に変換して戻す。次いで、画像プロセッサ１８４０は、メディア記憶装置に、及び、表示のためのＵＩモジュール１８０５に、調整された画像を送る。
【０１５５】
ＩＩ．画像上コントロール
図１を参照して上述されたように、一部の実施形態の画像編集アプリケーションは、画像を編集するための、画像上に重ね合わされるＵＩコントロールのセットを提供する。画像上ＵＩコントロールのセットのそれぞれは、異なる調整に関連付けられている。一部の実施形態では、ユーザは、画像上の場所を選択することによって、重ね合わせＵＩコントロール（画像上ＵＩコントロールとも称される）のセットをアクティブ化することができる。これらの実施形態では、ユーザが、画像上の特定の場所を選択すると、アプリケーションは、一連の分析を実行して、その画像上の選択された場所に関連付けられている特定のコンテンツのタイプを判定する。次いで、このアプリケーションは、選択された場所が、異なるコンテンツのタイプに関連付けられていると、画像に適用するための異なる色調整機能に関連付けられている異なるＵＩコントロールのセットを表示する。一部の実施形態では、重ね合わせＵＩコントロールのセットは、不透明又は透明である。これらの画像上ＵＩコントロールの幾つかの実施形態は、セクションＩＩ．Ａ及びセクションＩＩ．Ｂで、より詳細に説明される。
【０１５６】
図１９は、画像上の場所のユーザ選択に基づいて、画像の色値を調整するための画像上ＵＩコントロールのセットを提供するための、プロセス１９００を概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、画像上の場所の選択を（１９０５で）受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を（１９１０で）取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。
【０１５７】
次に、このプロセスは、取得された色値に対する一連の分析を（１９１５で）実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、１つの分析は、選択された場所が肌の色調に関連付けられているか否かを判定するためのものであり、別の分析は、選択された場所が空に関連付けられているか否かを判定するためのものである。
【０１５８】
一連の分析からの結果に基づいて、このプロセスは、画像編集操作のセットを制御するための、ＵＩコントロールのセットを（１９２０で）提供する。一部の実施形態では、このＵＩコントロールのセットは、画像上に表示される画像上コントロールである。これらの実施形態の一部では、画像上ＵＩコントロールのセットは、方向依存性ＵＩコントロールである。ユーザは、画像に対して方向入力を提供することによって、その画像に対する種々の画像編集操作を開始することができる。
【０１５９】
次に、このプロセスは、画像上に別の場所が選択されるか否かを（１９３０で）判定する。別の場所が選択される場合には、このプロセスは、その新たに選択された場所に対応する、別の画素のセットの色値を取得するために、１９１０に戻る。このプロセスは、それ以上場所が選択されなくなるまで、操作１９１０〜１９２５を繰り返す。次いで、このプロセスは終了する。
【０１６０】
Ａ．画像上色コントロール
一部の実施形態では、画像編集アプリケーションが提供する重ね合わせＵＩコントロールのセットは、画像に種々の色調整を適用するためのものである。図２０は、ユーザによって選択された画像上の場所に基づいて、画像に色調整を適用するための画像上ＵＩコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの、例示的なＧＵＩ３００を示す。具体的には、図２０は、種々の画像上ＵＩコントロールのセットをアクティブ化する操作を、４つの異なるステージ２００５、２０１０、２０１５、及びステージ２０２０で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
【０１６１】
第１ステージ２００５は、図３の第２ステージ３１０と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。ＵＩコントロール表示領域３５０は、画像の彩度を調整するためのＵＩコントロール３５２、画像内の空の色を調整するためのＵＩコントロール３５４、画像内の群葉の色を調整するためのＵＩコントロール３５８、及び画像内の肌の色調を調整するためのＵＩコントロール３５６を表示する。第２ステージ２０１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、人の顔を表示する、画像上の場所を選択している。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、その選択された場所に関連付けられている特定のコンテンツのタイプを判定するために、一連の分析を実行する。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。例えば、一部の実施形態のアプリケーションは、肌の色調に関連付けられている色値の範囲、空の色に関連付けられている色値の範囲、及び群葉の色に関連付けられている色値の範囲を定義する。一部の実施形態では、このアプリケーションは、図５、８、及び図１１を参照して上述されたものと同じ方式で、色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、その特定のコンテンツのタイプに関連付けられている画像上ＵＩコントロールのセットを表示する。
【０１６２】
種々の実施形態は、画像上ＵＩコントロールのセットを、種々の方式で実装する。例えば、一部の実施形態のアプリケーションは、画像上ＵＩコントロールのセットを、方向依存性ＵＩコントロールとして実装する。これらの実施形態の一部では、アプリケーションは、ＵＩコントロールに関連付けられている色調整操作を開始するようにユーザを導くために、各ＵＩコントロールに関する方向矢印を表示する。ユーザは、種々の方向入力を提供することによって、種々の色調整操作を開始する。この方向入力の方向に基づいて、アプリケーションは、画像に対して特定の色調整を実行する。第２ステージ２０１０では、ユーザは、人の顔を表示する画像上の場所を選択しているため、このアプリケーションは、選択された場所に対応する画素の色値が、肌の色調に関連付けられていることを判定する。結果として、このアプリケーションは、肌の色調を調整するための画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０（水平軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０のセットは、肌の色調ＵＩコントロール３５６に対応する。一部の実施形態では、このアプリケーションはまた、肌の色調ＵＩコントロール３５６がアクティブ化されていることを示すために、肌の色調ＵＩコントロール３５６を強調表示する。肌の色調を調整するためのＵＩコントロールに加えて、一部の実施形態のアプリケーションはまた、画像全体に関する色値を調整するためのコンテンツに依存しないＵＩコントロールのセットも表示する。これらの実施形態では、コンテンツに依存しないＵＩコントロールのセットは、ユーザによって選択される場所とは無関係に、常に表示される。この実施例では、アプリケーションは、画像全体に関する彩度を調整するためのコンテンツに依存しないＵＩコントロール２０３５及びＵＩコントロール２０４０（垂直軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０のセットは、彩度ＵＩコントロール３５２に対応する。一部の実施形態では、このアプリケーションはまた、彩度ＵＩコントロール３５２がアクティブ化されていることを示すために、彩度ＵＩコントロール３５２を強調表示する。この図には示されないが、この第２ステージ２０１０でのユーザは、方向入力を提供することによって、特定の色調整（すなわち、画像全体に対する彩度調整、又は画像の肌の色調に対する色調整）を選択することができる。
【０１６３】
一部の実施形態では、異なる色調整に関連付けられている異なる画像上ＵＩコントロールのセットは、異なる外観を有する。例えば、画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０は、ユーザへの区別を提供するために、画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０とは異なる色を有し得る。
【０１６４】
第３ステージ２０１５は、ユーザが、画像３５５上の異なる場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、青空を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、空の色に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、空の色を調整するための画像上ＵＩコントロール２０４５及び画像上ＵＩコントロール２０５０（水平軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール２０４５及び画像上ＵＩコントロール２０５０のセットは、空ＵＩコントロール３５４に対応する。図示のように、このアプリケーションはまた、空ＵＩコントロール３５４がアクティブ化されていることを示すために、空ＵＩコントロール３５４を強調表示する。第２ステージ２０１０と同様に、空の色を調整するための画像上ＵＩコントロールに加えて、このアプリケーションはまた、画像全体に関する彩度を調整するためのコンテンツに依存しないＵＩコントロール２０３５及びＵＩコントロール２０４０のセットも表示する。このアプリケーションはまた、彩度ＵＩコントロール３５２がアクティブ化されていることを示すために、彩度ＵＩコントロール３５２を強調表示する。この図には示されないが、この第３ステージ２０１５でのユーザは、方向入力を提供することによって、特定の色調整（すなわち、画像全体に対する彩度調整、又は画像の空の色に対する色調整）を選択することができる。
【０１６５】
第４ステージ２０２０は、ユーザが、画像３５５上の異なる場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、山を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、群葉の色に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、群葉の色を調整するための画像上ＵＩコントロール２０５５及び画像上ＵＩコントロール２０６０（水平軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール２０５５及び画像上ＵＩコントロール２０６０のセットは、群葉ＵＩコントロール３５８に対応する。図示のように、このアプリケーションはまた、群葉ＵＩコントロール３５８がアクティブ化されていることを示すために、群葉ＵＩコントロール３５８を強調表示する。第２ステージ２０１０及び第３ステージ２０１５と同様に、群葉の色を調整するための画像上ＵＩコントロールに加えて、このアプリケーションはまた、画像全体に関する彩度を調整するためのコンテンツに依存しないＵＩコントロール２０３５及びＵＩコントロール２０４０のセットも表示する。このアプリケーションはまた、彩度ＵＩコントロール３５２がアクティブ化されていることを示すために、彩度ＵＩコントロール３５２を強調表示する。この図には示されないが、この第４ステージ２０２０でのユーザは、方向入力を提供することによって、特定の色調整（すなわち、画像全体に対する彩度調整、又は画像の群葉の色に対する色調整）を選択することができる。
【０１６６】
図２０は、画像に対して種々の色調整を実行するための、種々の画像上ＵＩコントロールをアクティブ化する例示的操作を示す。図２１、２２、２３、及び図２４は、種々の画像上ＵＩコントロールを操作することにより、画像に対して種々の色調整を実行する実施例を示す。具体的には、図２１は、画像全体に関する彩度を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を、４つの異なるステージ２１０５、２１１０、２１１５、及びステージ２１２０で示す。
【０１６７】
第１ステージ２１０５は、図２０の第１ステージ２００５と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ２１１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、人の顔を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール２０２５〜２０４０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像全体に関する彩度を調整するための彩度ＵＩコントロール３５２に対応する、画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０のセット、並びに、画像の肌の色調を調整するための肌の色調ＵＩコントロール３５６に対応する、画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０のセットを含む。第２ステージ２１１０はまた、対応する彩度ＵＩコントロール３５２及び肌の色調ＵＩコントロール３５６が強調表示されることにより、これらの２つのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０１６８】
第３ステージ２１１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５の彩度の調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印２１２５によって示されるように、画像の頂部に向けて、ユーザの指を上向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像全体に関する彩度を増大させるための画像上ＵＩコントロール２０３５と関連付けて、画像３５５に対する彩度調整を実行する。図示のように、画像３５５内の色の彩度は、画像３５５の全域にわたる斜線によって示されるように、増大している。第３ステージ２１１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０が、ディスプレイから除去されて、対応する肌の色調ＵＩコントロール３５６が、もはや強調表示されないことも示す。一部の実施形態では、アクティブ化された画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０は、方向入力に追従する。それゆえ、アクティブ化された画像上ＵＩコントロールは、指（又はカーソル）が配置される画像上の場所の周囲に、常に存在する。更には、第３ステージ２１１５は、画像３５５内の色の彩度が、画像上ＵＩコントロール２０３５によって増大されると、対応する彩度ＵＩコントロール３５２のつまみが、右に移動していることを示す。
【０１６９】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対する彩度調整を実施した後の、第３ステージ２１１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０１７０】
第４ステージ２１２０は、ユーザが、矢印２１３０によって示されるように、ユーザの指を更に上向きにドラッグすることによって、画像３５５の彩度を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ２１２０での画像３５５内の色は、画像３５５の全域にわたる、より高密度の斜線によって示されるように、第３ステージ２１１５での画像内の色よりも、更に彩度が増大されて示される。第４ステージ２１２０はまた、対応する彩度ＵＩコントロール３５２のつまみが、更に右に移動していることも示す。一部の実施形態では、画像の彩度のユーザによる調整が、限界（例えば、画像に関する彩度の、可能な範囲の上端又は下端）に達すると、ユーザの指の方向の矢印は、徐々に消失するか、又は消滅する。例えば、ユーザが、このステージ２１２０で示される指の位置から更に上向きにユーザの指をドラッグすることによって、画像３５５の彩度を更にまた調整する場合には、矢印２０３５が徐々に消失するか、又は消滅する。また、対応する彩度ＵＩコントロール３５２のつまみも右端に達して、更に右に移動することはない。一部の実施形態では、限界に達することに関する、この矢印の消失又は消滅は、本出願で説明される他のタイプの色調整に適用可能である。
【０１７１】
図２１は、画像全体に関する彩度を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図２２は、画像の色温度を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。色温度は、画像内の対象物から反射する可視光の特性である。画像内の対象物に当っている、より暖かい光は、その画像内の対象物の色に、より暖かい色調（すなわち、より多くの赤色及び黄色）を作り出し、その一方で、画像内の対象物に当っている、より冷たい光は、その画像内の対象物の色に、より冷たい色調（すなわち、より多くの青色及びシアン）を作り出す。それゆえ、画像の色温度を調整することは、画像に対して、より多くの赤色／黄色を追加すること、又はより多くの青色／シアンを追加することを意味する。具体的には、図２２は、この色調整操作を、４つの異なるステージ２２０５、２２１０、２２１５、及びステージ２２２０で示す。
【０１７２】
第１ステージ２２０５は、図２０の第１ステージ２００５と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ２２１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、人の顔を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール２０２５〜２０４０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像全体に関する彩度を調整するための彩度ＵＩコントロール３５２に対応する、画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０のセット、並びに、画像の肌の色調を調整するための肌の色調ＵＩコントロール３５６に対応する、画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０のセットを含む。第２ステージ２２１０はまた、対応する彩度ＵＩコントロール３５２及び肌の色調ＵＩコントロール３５６が強調表示されることにより、これらの２つのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０１７３】
第３ステージ２２１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５の色温度の調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印２２２５によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の肌の色調を改善するための画像上ＵＩコントロール２０２５と関連付けて、画像３５５に対する色温度調整を実行する。図示のように、画像３５５の色温度は、画像３５５の全域にわたる斜線によって示されるように、上昇している。一部の実施形態では、このアプリケーションは、肌の色調をより心地よいものにするために、画像の色温度を調整する。これらの実施形態の一部では、アプリケーションは、図５を参照して上述されたものと同じである、定義された肌の色調の範囲を使用して、その定義された肌の色調の範囲内に収まる画像内の色を、より心地よいものにするように、画像の色値を調整する。
【０１７４】
第３ステージ２２１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０が、ディスプレイから除去されて、対応する彩度ＵＩコントロール３５２が、もはや強調表示されないことも示す。第３ステージ２２１５はまた、対応する肌の色調ＵＩコントロール３５６のつまみが、右に移動していることも示す。
【０１７５】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して肌の色調調整を実施した後の、第３ステージ２２１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０１７６】
第４ステージ２２２０は、ユーザが、矢印２２３０によって示されるように、ユーザの指を更に右にドラッグすることによって、画像３５５の色温度を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ２２２０での画像３５５は、画像３５５の全域にわたる、より高密度の斜線によって示されるように、第３ステージ２２１５での画像よりも更に調整されて示される。第４ステージ２２２０はまた、対応する肌の色調ＵＩコントロール３５６のつまみが、更に右に移動していることも示す。
【０１７７】
図２２は、画像に関する色温度を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図２３は、画像内の空の色を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。具体的には、図２３は、この色調整操作を、４つの異なるステージ２３０５、２３１０、２３１５、及びステージ２３２０で示す。
【０１７８】
第１ステージ２３０５は、図２２の第１ステージ２２０５と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ２３１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、空を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール２０３５〜２０５０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像全体に関する彩度を調整するための彩度ＵＩコントロール３５２に対応する、画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０のセット、並びに、画像の空の色を調整するための空ＵＩコントロール３５４に対応する、画像上ＵＩコントロール２０４５及び画像上ＵＩコントロール２０５０のセットを含む。第２ステージ２３１０はまた、対応する彩度ＵＩコントロール３５２及び空ＵＩコントロール３５４が強調表示されることにより、これらの２つのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０１７９】
第３ステージ２３１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５の空の色の調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印２３２５によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の空の色を調整するための画像上ＵＩコントロール２０４５と関連付けて、画像３５５に対する空の色の調整を実行する。図示のように、画像３５５内の空の色は、画像３５５内の空を示す領域の全域にわたる斜線によって示されるように、強調されている。第３ステージ２３１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０が、ディスプレイから除去されて、対応する彩度ＵＩコントロール３５２が、もはや強調表示されないことも示す。第３ステージ２３１５はまた、対応する空ＵＩコントロール３５４のつまみが、右に移動していることも示す。
【０１８０】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して空調整を実施した後の、第３ステージ２３１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０１８１】
第４ステージ２３２０は、ユーザが、矢印２３３０によって示されるように、ユーザの指を更に右にドラッグすることによって、画像３５５の空の色を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ２３２０での画像３５５内の空の色は、画像３５５内の空を示す領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ２３１５での画像内の空の色よりも、更に強調されて示される。第４ステージ２３２０はまた、対応する空ＵＩコントロール３５４のつまみが、更に右に移動していることも示す。
【０１８２】
図２３は、画像に関する空の色を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図２４は、画像内の群葉の色を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。具体的には、図２４は、この色調整操作を、４つの異なるステージ２４０５、２４１０、２４１５、及びステージ２４２０で示す。
【０１８３】
第１ステージ２４０５は、図２３の第１ステージ２３０５と同一である。図示のように、ユーザは、画像３５５の色を調整するための選択可能ＵＩ項目３４２を選択している。第２ステージ２４１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、山を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール２０３５、２０４０、２０５５、及び画像上ＵＩコントロール２０６０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像全体に関する彩度を調整するための彩度ＵＩコントロール３５２に対応する、画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０のセット、並びに、画像の群葉の色を調整するための群葉ＵＩコントロール３５８に対応する、画像上ＵＩコントロール２０５５及び画像上ＵＩコントロール２０６０のセットを含む。第２ステージ２４１０はまた、対応する彩度ＵＩコントロール３５２及び群葉ＵＩコントロール３５８が強調表示されることにより、これらの２つのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０１８４】
第３ステージ２４１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５の群葉の色の調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印２４２５によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の群葉の色を調整するための画像上ＵＩコントロール２０５５と関連付けて、画像３５５に対する群葉の色の調整を実行する。図示のように、画像３５５内の群葉の色は、画像３５５内の山を示す領域の全域にわたる斜線によって示されるように、強調されている。第３ステージ２４１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール２０３５及び画像上ＵＩコントロール２０４０が、ディスプレイから除去されて、対応する彩度ＵＩコントロール３５２が、もはや強調表示されないことも示す。
【０１８５】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して群葉調整を実施した後の、第３ステージ２４１５で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０１８６】
第４ステージ２４２０は、ユーザが、矢印２４３０によって示されるように、ユーザの指を更に右にドラッグすることによって、画像３５５の群葉の色を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ２４２０での画像３５５内の群葉の色は、画像３５５内の山を示す領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ２４１５での画像内の群葉の色よりも、更に強調されて示される。
【０１８７】
一部の実施形態では、ユーザが、画像上ＵＩコントロールのセットに関連付けられている方向入力の提供を開始した後、その画像上ＵＩコントロールのセットは常に、画像から完全に消滅するまで、徐々に消失し始める。第４ステージ２４２０は、ユーザが、更に右へと指を移動させた後に、画像上ＵＩコントロール２０５５及び画像上ＵＩコントロール２０６０が、徐々に消失したことを示す。
【０１８８】
図２０、２１、２２、２３、及び図２４に示される上記の実施例では、重ね合わせＵＩコントロール２０２５〜２０６０のセットは、４つの矢印として画像３５５上に表示されるが、他の実施形態では、重ね合わせＵＩコントロールのセットは、異なる外観を有し得る。図２５は、重ね合わせＵＩコントロールに関する２つの他の実施例を示す。第１の実施例で示すように、重ね合わせＵＩコントロール２５４５、２５５０、２５５５、及び重ね合わせＵＩコントロール２５６０のセットは、ユーザによって選択された画像３５５上の場所２５２５から延びる、アームのセットを含む。各重ね合わせＵＩコントロールはまた、アニメーション化された方向矢印も含み、この矢印は、矢印によって示される方向で、アーム内部を横断する。更には、各重ね合わせＵＩコントロールは、その重ね合わせＵＩコントロールに対応する調整操作を表す色で、表示される。重ね合わせＵＩコントロール２５４５及び重ね合わせＵＩコントロール２５５０は、１つの色で（例えば、黒で）表示され、その一方で、重ね合わせＵＩコントロール２５５５及び重ね合わせＵＩコントロール２５６０は、別の色で（例えば、白で）表示されるが、これは、重ね合わせＵＩコントロールのこれらの２つのセットが、異なる調整を開始するためのものであるからである。第２の実施例は、重ね合わせＵＩコントロールに関する第２の代替的な外観を示す。具体的には、実施例（２）は、ユーザにサムネイルのプレビューを提供する、重ね合わせＵＩコントロール２５４３、２５４７、２５５３、及び重ね合わせＵＩコントロール２５５７のセットを示す。図示のように、サムネイル２５７０のセットが、各重ね合わせＵＩコントロール上に表示される。このサムネイルは、その重ね合わせＵＩコントロール上のサムネイルの場所に基づいて適用されるであろう編集に対応する、画像３５５のプレビューを提供する。例えば、サムネイル２５８５は、ユーザが、場所２５８０に基づく方向入力を提供した場合に、画像３５５がどのように見えることになるかの、プレビューを提供する。
【０１８９】
図２６は、画像上の場所のユーザ選択に基づいて、画像内の彩度、肌の色調、空の色、及び群葉の色を調整するための画像上ＵＩコントロールのセットを提供するためのプロセス２６００を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。最初の３つの操作２６０５、２６１０、及び２６１５は、図１９のプロセス１９００の、最初の３つの操作１９０５、１９１０、及び１９１５と同一である。このプロセスは、画像上の場所の選択を（２６０５で）受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を（２６１０で）取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。
【０１９０】
次に、このプロセスは、取得された色値に対する一連の分析を（２６１５で）実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、この一連の分析は、選択された場所が肌の色調に関連付けられているか否かを判定するための分析、選択された場所が空の色に関連付けられているか否かを判定するための分析、及び、選択された場所が群葉の色に関連付けられているか否かを判定するための分析を含む。
【０１９１】
このプロセスは、一連の分析からの結果に基づいて、選択された場所が肌の色調に関連付けられているか否かを（２６２０で）判定する。選択された場所が肌の色調に関連付けられている場合には、このプロセスは、画像内の肌の色調を調整するためのＵＩコントロールのセットを（２６２５で）提供する。一部の実施形態では、この肌の色調を調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０１９２】
このプロセスは、一連の分析からの結果に基づいて、選択された場所が空の色に関連付けられているか否かを（２６３０で）判定する。選択された場所が空の色に関連付けられている場合には、このプロセスは、画像内の空の色を調整するためのＵＩコントロールのセットを（２６３５で）提供する。一部の実施形態では、この空の色を調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０１９３】
このプロセスは、一連の分析からの結果に基づいて、選択された場所が群葉の色に関連付けられているか否かを（２６４０で）判定する。選択された場所が群葉の色に関連付けられている場合には、このプロセスは、画像内の群葉の色を調整するためのＵＩコントロールのセットを（２６４５で）提供する。一部の実施形態では、この群葉の色を調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０１９４】
次に、このプロセスは、画像全体に関する彩度を調整するためのＵＩコントロールのセットを（２６５０で）提供する。一部の実施形態では、このプロセスは、ユーザによって選択される画像上の場所とは無関係に、この画像全体に関する彩度を調整するためのＵＩコントロールのセットを、常に提供する。
【０１９５】
次いで、このプロセスは、方向入力が受け取られるか否かを（２６５５で）判定する。方向入力が受け取られる場合には、このプロセスは、その方向入力に基づいて、画像に対する色調整操作を（２６６０で）実行する。次いで、このプロセスは、画像上ＵＩコントロールが選択解除されるか否かを（２６６５で）判定する。一部の実施形態では、画像上ＵＩコントロールのセットは、タッチ又はニアタッチ感応スクリーンを有する装置から、指を引き上げること（又は、ボタンを解除すること）によって、選択解除することができる。
【０１９６】
受け取られる方向入力が存在しないことを、このプロセスが（２６５５で）判定する場合には、このプロセスはまた、操作２６６５に進み、画像上ＵＩコントロールが選択解除されるか否かを判定する。画像上ＵＩコントロールのセットが選択解除されない場合には、このプロセスは、方向入力が受け取られるか否かを判定するために、２６５５に戻る。その一方で、画像上ＵＩコントロールのセットが選択解除される場合には、このプロセスは終了する。
【０１９７】
一部の実施形態では、画像上に表示されるＵＩコントロールのセットは、方向依存性ＵＩコントロールである。これらの実施形態では、ユーザは、画像に対して方向入力（すなわち、ベクトル）を提供することによって、画像上の色調整操作のうちの１つをアクティブ化することができる。この方向入力は、方向及び大きさを含むベクトルである。図２７は、画像内の場所２７２５をユーザが選択した後に表示され得る、例示的な方向依存性ＵＩコントロールのセット２７００を示す。ＵＩコントロールのセット２７００は、ＵＩコントロール２７０５〜２７２０を含む。各ＵＩコントロールは、異なる概ねの方向に対応する。例えば、ＵＩコントロール２７０５は、画像の垂直軸に沿って概ね上向きの方向（すなわち、方向２７３０と方向２７３５との間）に対応し、ＵＩコントロール２７１０は、画像の水平軸に沿って概ね右への方向（すなわち、方向２７３５と方向２７４０との間）に対応し、ＵＩコントロール２７１５は、画像の垂直軸に沿って概ね下向きの方向（すなわち、方向２７４０と方向２７４５との間）に対応し、ＵＩコントロール２７２０は、画像の水平軸に沿って概ね左への方向（すなわち、方向２７４５と方向２７３０との間）に対応する。ユーザが、ベクトル２７５０などの方向入力を提供すると、このアプリケーションは、ベクトル２７５０の方向が、特定のＵＩコントロールの概ねの方向の範囲内に収まるか否かを判定する。一部の実施形態では、ベクトル２７５０は、選択された場所２７２５から新たな場所２７６０への、タッチ若しくはニアタッチ感応スクリーンを有する装置上での指の移動、又はカーソルの移動によって作り出される。一部の実施形態では、ベクトル２７５０は、選択された場所２７２５から新たな場所２７６０への直線「ｃ」であると判定される。
【０１９８】
一部の実施形態では、ベクトルの方向は、軸に対する角度として表すことができる。例えば、一部の実施形態のアプリケーションは、水平軸に沿った方向２７５５を、０度として使用するように選択することができる。これらの実施形態では、各方向は、０度の方向２７５５から時計回りに進む角度の観点で、表すことができる。例えば、方向入力２７５０の方向は、角度「ａ」として表すことができる。これらの実施形態では、方向入力は、その方向入力の角度が、方向２７３５（４５度）と方向２７３０（１３５度）との間である場合には、ＵＩコントロール２７０５に関連付けられている。同様に、方向入力は、その方向入力の角度が、方向２７３０（１３５度）と方向２７４５（２２５度）との間である場合には、ＵＩコントロール２７２０に関連付けられ、方向入力は、その方向入力の角度が、方向２７３０（２２５度）と方向２７４５（３１５度）との間である場合には、ＵＩコントロール２７１５に関連付けられ、方向入力は、その方向入力の角度が、方向２７４０（３１５度）と方向２７３５（４５度）との間である場合には、ＵＩコントロール２７１０に関連付けられている。それゆえ、３０度の方向を有する方向入力は、ＵＩコントロール２７１０に関連付けられ、７０度の方向を有する別の方向入力は、ＵＩコントロール２７０５に関連付けられている。この実施例では、方向入力２７５０の角度（すなわち、角度「ａ」）は、３１５度と４５度との間であるため、このアプリケーションは、ＵＩコントロール２７１０の強調表示によって示されるように、方向入力２７５０をＵＩコントロール２７１０に関連付ける。
【０１９９】
一部の実施形態では、各色調整操作は、画像に適用するための調整値の範囲に関連付けられている。すなわち、より大きい調整値は、より大きい程度（又は、度合）の色調整操作を画像に対して適用することを示し、より小さい調整値は、より小さい程度（又は、度合）の色調整操作を画像に対して適用することを示す。これらの実施形態では、アプリケーションは、方向入力の大きさに基づいて、色調整操作に関する調整値を決定する。種々の実施形態は、種々の技術を使用して、方向入力の大きさを計算する。一部の実施形態では、このアプリケーションは、方向入力２７５０の大きさを、選択された場所２７２５から新たな場所２７６０までのベクトルの距離「ｃ」として判定する。他の実施形態では、各方向依存性ＵＩコントロールは、対応する軸を有する。例えば、ＵＩコントロール２７１０は、軸２７５５に対応する。これらの実施形態では、アプリケーションは、方向入力２７５０の大きさを、ＵＩコントロール２７１０の対応する軸２７５５に沿って、ベクトル２７５０によってカバーされる距離である、距離「ｂ」として判定する。いずれの場合にも、計算された大きさを使用して、画像に対して色調整操作を適用するための調整値を決定する。
【０２００】
図２７に示す方向依存性ＵＩコントロールのセット２７００は、４つの方向依存性ＵＩコントロールを含むのみであるが、一部の実施形態は、画像に対する種々の調整を提供するための、４つよりも多いか又は４つよりも少ない方向依存性ＵＩコントロールを、画像上に提供することが、当業者には明らかなはずである。
【０２０１】
図２８は、ユーザから方向入力を受け取り、その入力の方向及び大きさに基づいて、対応する色調整操作を画像に適用するためのプロセス２８００を、概念的に示す。一部の実施形態では、このアプリケーションは、アプリケーションが、画像上の場所の選択を受け取り、対応するＵＩコントロールのセットを画像上に提供した後に、プロセス２８００を実行する。
【０２０２】
このプロセスは、画像に対する方向入力を（２８０５で）受け取ることによって開始する。一部の実施形態では、方向入力は、方向及び大きさを含む。次いで、このプロセスは、方向入力の方向を（２８１０で）判定する。一部の実施形態では、方向入力の方向を判定する操作は、画像の軸に対する方向入力の角度を判定することを伴う。
【０２０３】
方向入力の方向を判定した後、このプロセスは、その方向をＵＩコントロールに（２８１５で）関連付ける。一部の実施形態では、このプロセスは、図２７を参照して上述された技術を使用して、特定のＵＩコントロールに方向を関連付ける。これらの実施形態では、プロセスは、異なるＵＩコントロールに、異なる方向の範囲を割り当てる。次いで、このプロセスは、その入力の方向が、特定のＵＩコントロールに関連付けられている範囲内に収まるか否かを判定する。
【０２０４】
次に、このプロセスは、方向入力の大きさを（２８２０で）判定する。一部の実施形態では、このプロセスは、図２７を参照して上述された技術を使用して、方向入力の大きさを判定する。次いで、このプロセスは、その方向入力の大きさに基づいて、（２８２５で）調整値を計算する。一部の実施形態では、より大きい大きさは、より大きい調整値に対応し、より小さい大きさは、より小さい調整値に対応する。
【０２０５】
最終的に、このプロセスは、計算された調整値を使用して、関連付けられているＵＩコントロールに対応する色調整操作を、画像に適用する。一部の実施形態では、このプロセスは、ユーザ入力を受け取るＵＩコントロールに基づいて、画像の一部分にのみ色調整を適用する。更には、このプロセスは、画像の画素の特定のセットに、最大限の色調整を適用し、画像の画素の別のセットに、より少ない程度の色調整を適用することができる。次いで、このプロセスは終了する。
【０２０６】
図２９は、画像の色値を編集するための、画像上ＵＩコントロールのセットを提供する、一部の実施形態の画像編集アプリケーション２９００を示す。一部の実施形態では、画像編集アプリケーション２９００は、プロセス１９００、２６００、及びプロセス２８００を実行する。画像編集アプリケーション２９００は、画像編集アプリケーション１８００と同一の、幾つかの構成要素を含む。例えば、画像編集アプリケーション２９００は、コンテンツ分析モジュール１８４５のセット、色空間変換モジュール１８１５、画素分離モジュール１８１０、及び色調整エンジン１８２０を含む。図示のように、この画像編集アプリケーションはまた、画像プロセッサ２９４０も含む。
【０２０７】
ＵＩモジュール１８０５は、画像上の場所のユーザ選択を受け取り、その選択された場所についての情報を、画像プロセッサ２９４０に渡す。選択された場所を受け取ると、画像プロセッサ２９４０は、その画像上の選択された場所に対応する画素のセットの色値を取得し、その画素のセット、及びそれらの色値を、コンテンツ分析モジュール１８４５のセットに渡す。コンテンツ分析モジュール１８４５のセットは、それらの色値に対して、一連の様々な分析を実行する。
【０２０８】
一部の実施形態では、各コンテンツ分析モジュール１８４５は、受け取った色値に基づいて、選択された場所が異なるコンテンツのタイプに関連付けられているか否かを判定するために、異なる分析を実行する。例えば、特定のコンテンツ分析モジュールは、選択された場所が肌の色調に関連付けられているか否かを判定するための、色値に対する分析を実行し、別のコンテンツ分析モジュールは、選択された場所が空に関連付けられているか否かを判定するための、色値に対する別の分析を実行する。次いで、コンテンツ分析モジュール１８４５のセットは、それらの分析の結果（すなわち、選択された場所に関連付けられている判定された特定のコンテンツのタイプ）を、画像プロセッサ２９４０に渡す。
【０２０９】
コンテンツ分析モジュール１８４５から受け取った分析の結果に基づいて、画像プロセッサ２９４０は、画像上の表示のための、種々の色値を調整するための画像上ＵＩコントロールのセットを選択する。次いで、画像プロセッサ２９４０は、その選択された画像上ＵＩコントロールのセットを表示するように、ＵＩモジュール１８０５にリクエストする。ＵＩモジュール１８０５が、画像に対する入力を受け取ると、ＵＩモジュール１８０５は、その受け取った入力を、画像プロセッサ２９４０に返す。一部の実施形態では、受け取られる入力は、方向入力である。
【０２１０】
画像プロセッサ２９４０は、その方向入力を、特定の色調整操作（例えば、彩度調整、自然な彩度調整、肌の色調調整など）に関連付ける。次いで、画像プロセッサ２９４０は、その特定の色調整操作に関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを特定するように、画素分離モジュール１８１０にリクエストする。一部の実施形態では、画像の色値は、それらの色値の範囲を定義するために使用される色空間（例えば、ＹＣＣ色空間）とは異なる色空間（例えば、ＲＧＢ色空間）内で定義される。これらの実施形態では、画素のセットを特定するように、画素分離モジュール１８１０にリクエストする前に、画像プロセッサ２９４０は、画像の色値を、それらの色値の範囲を定義するために使用される色空間に変換するように、色空間変換モジュール１８１５にリクエストする。
【０２１１】
画素のセットが特定された後に、画像プロセッサ２９４０は、その画像、及び特定された画素についての情報を、画像に対して一連の色調整を実行するための色調整エンジン１８２０に送る。色調整エンジン１８２０は、画像内の特定された画素に、種々の色調整を適用する。図示のように、色調整エンジン１８２０は、画像にコントラスト調整を適用するためのコントラスト調整エンジン１８２５、画像に明度調整を適用するための明度調整エンジン１８３０、及び画像に彩度調整を適用するための彩度調整エンジン１８３５を含む。これらは、画像に対して実行することが可能な例示的な色調整に過ぎず、色調整エンジン１８２０は、画像に対して更なるタイプの色調整を実行するための、更なる色調整エンジンを含み得ることが、当業者には明らかなはずである。例えば、明度調整エンジン１８３０は、ユーザ入力を使用して、画像の明度を調整するための明度調整値を決定し、コントラスト調整エンジン１８２５は、ユーザ入力を使用して、画像のコントラストを調整するためのコントラスト調整値を決定し、彩度調整エンジン１８３５は、ユーザ入力を使用して、画像の彩度を調整するための彩度調整値を決定する。次いで、種々の調整エンジン１８２５〜１８３５は、それらの明度調整、コントラスト調整、及び彩度調整を画像に適用して、編集された画像を作り出す。
【０２１２】
一部の実施形態では、色調整エンジン１８２０は、変換された色空間内で、画像の色値を調整する。これらの実施形態では、画像プロセッサ２９４０は、色空間変換モジュール１８１５に、調整された画像を送り、その画像の色値を、その本来の色空間に変換して戻す。次いで、画像プロセッサ２９４０は、メディア記憶装置に、及び、表示のためのＵＩモジュール１８０５に、その調整された画像を送る。
【０２１３】
画像上にＵＩコントロールのセットを提供することは、多くの利益を有する。例えば、画像上ＵＩコントロールは、ユーザが調整値の範囲内で調整値を指定することを可能にするための、範囲スライダよりも細かい粒度を有する、より大きいスケールを提供する。図３０は、ＧＵＩ３００を通じた、そのような利益の例を示す。図３０に示すように、画像３５５の空の色を調整するための空ＵＩコントロール３５４、並びに対応する画像上ＵＩコントロール２０４５及び画像上ＵＩコントロール２０５０がアクティブ化されている図７及び図２３を参照して上述されたように、ユーザは、空ＵＩコントロール３５４を操作するか、あるいは画像上ＵＩコントロール２０４５及び画像上ＵＩコントロール２０５０を使用して、画像に対して方向入力を提供することによって、画像の空の色を調整することができる。この実施例では、空ＵＩコントロール３５４は、範囲スライダとして実装されることにより、ユーザは、範囲スライダ３５４に沿ってつまみを移動させることによって、０〜１００の間で調整値を指定することが可能となる。範囲スライダ３５４は、サイズが限定されているため、範囲スライダ３５４に沿ってユーザがつまみを移動させる各単位３００５は、調整値を、大きい量（例えば、２５）で増大又は減少させる。その一方で、ユーザが、画像に対して方向入力を提供することによって、画像上ＵＩコントロールを使用する場合、ユーザは、選択された場所から画像の両端まで移動させることができる。それゆえ、画像上でユーザが移動させる各単位３０１０は、調整値を、小さい数値（例えば、２）でのみ増大又は減少させる。それゆえ、画像上ＵＩコントロールは、調整値を指定するための、より細かい粒度を有する、遙かに大きいスケールをユーザに提供する。
【０２１４】
Ｂ．画像上露出コントロール
上記のセクションの図２０、２１、２２、２３、及び図２４は、画像上ＵＩコントロールの幾つかの実施例を説明するものであった。それらの実施例では、アプリケーションは、ユーザが、画像内の場所を選択することを可能にし、その選択された場所に関連付けられているコンテンツのタイプに応じて、画像の色を調整するための種々の画像上ＵＩコントロールのセットを提供する。このセクションは、これらの画像上ＵＩコントロールの、幾つかの更なる実施例を提供する。具体的には、図３１は、選択された場所に関連付けられているコンテンツのタイプに応じて、画像の露出設定を調整するための種々の画像上ＵＩコントロールのセットを提供する操作を示す。具体的には、図３１は、ＧＵＩ３００を通じて、種々の画像上ＵＩコントロールのセットをアクティブ化する操作を、４つの異なるステージ３１０５、３１１０、３１１５、及びステージ３１２０で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
【０２１５】
第１ステージ３１０５は、図２０の第１ステージ２００５と同様であるが、ただし、ユーザは、選択可能ＵＩ項目３１２５の強調表示によって示されるように、画像３５５の露出設定を調整するための選択可能ＵＩ項目３１２５を選択している。選択可能ＵＩ項目３１２５の選択は、選択可能ＵＩ項目３１２５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３１２５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図３１に示すように、露出調整ＵＩコントロール３１３０〜３１５０のセットが、ＵＩコントロール表示領域３５０内に表示される。種々の実施形態は、画像の色を調整するための種々のタイプのＵＩコントロールを提供する。この実施例では、露出調整ＵＩコントロールは、スライディング軌道に沿ってスライド可能な複数の制御つまみ３１３０〜３１５０を含む、統合型スライダコントロールである。
【０２１６】
一部の実施形態では、統合型スライダコントロールをメディア編集アプリケーションで使用することにより、ユーザは、スライディング軌道に沿って幾つかの異なる制御つまみを移動させることによって、画像の幾つかの異なる特性（例えば、明度、コントラストなど）を修正することが可能となる。このマルチスライダ上の各つまみ（３１３０〜３１５０）は、画像に対して実行することが可能な、異なる調整操作に対応する。ＵＩコントロール３１３０（つまみ３１３０）は、画像のシャドウを調整するためのものであり、ＵＩコントロール３１３５及びＵＩコントロール３１４０（つまみ３１３５及びつまみ３１４０）は、画像のコントラストを調整するためのものであり、ＵＩコントロール３１４５（つまみ３１４５）は、画像の明度を調整するためのものであり、ＵＩコントロール３１５０（つまみ３１５０）は、画像のハイライトを調整するためのものである。ユーザは、これらのつまみのうちの１つを選択して、マルチスライダに沿った異なる位置に移動させることによって、画像に対する種々の色調整を開始することができる。この統合型スライダコントロールの様々な操作は、米国仮出願第６１／６０７，５５４号で説明されている。
【０２１７】
第２ステージ３１１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、海を表示する、画像上の場所を選択している。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、その選択された場所に関連付けられている特定のコンテンツのタイプを判定するために、一連の分析を実行する。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。例えば、一部の実施形態のアプリケーションは、シャドウに関連付けられている色値の範囲、中間色調に関連付けられている色値の範囲、及びハイライトに関連付けられている色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、次いで、その特定のコンテンツのタイプに関連付けられている画像上ＵＩコントロールのセットを表示する。
【０２１８】
種々の実施形態は、画像上ＵＩコントロールのセットを、種々の方式で実装する。例えば、一部の実施形態のアプリケーションは、画像上ＵＩコントロールのセットを、方向依存性ＵＩコントロールとして実装する。これらの実施形態の一部では、アプリケーションは、ＵＩコントロールに関連付けられている色調整操作を開始するようにユーザを導くために、各ＵＩコントロールに関する方向矢印を表示する。ユーザは、種々の方向入力を提供することによって、種々の色調整操作を開始する。この方向入力の方向に基づいて、アプリケーションは、画像に対して特定の色調整を実行する。
【０２１９】
第２ステージ３１１０では、ユーザは、暗色（すなわち、低輝度値）を有する、海を表示する画面上の場所を選択しているため、このアプリケーションは、選択された場所に対応する画素の色値が、シャドウに関連付けられていることを判定する。結果として、このアプリケーションは、画像内のシャドウを調整するための画像上ＵＩコントロール３１６５及び画像上ＵＩコントロール３１７０（垂直軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール３１６５及び画像上ＵＩコントロール３１７０のセットは、シャドウＵＩコントロール３１３０に対応する。一部の実施形態では、このアプリケーションはまた、シャドウＵＩコントロール３１３０がアクティブ化されていることを示すために、シャドウＵＩコントロール３１３０を強調表示する。シャドウを調整するためのＵＩコントロールに加えて、一部の実施形態のアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないＵＩコントロールのセットも表示する。これらの実施形態では、コンテンツに依存しないＵＩコントロールのセットは、ユーザによって選択される場所とは無関係に、常に表示される。この実施例では、アプリケーションは、画像に関するコントラストを調整するためのコンテンツに依存しないＵＩコントロール３１５５及びＵＩコントロール３１６０（水平軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０のセットは、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０に対応する。一部の実施形態では、このアプリケーションはまた、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０がアクティブ化されていることを示すために、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０を強調表示する。この図には示されないが、この第２ステージ３１１０でのユーザは、画像に対して方向入力を提供することによって、露出調整（すなわち、コントラスト調整又はシャドウ調整）が可能である。
【０２２０】
第３ステージ３１１５は、ユーザが、画像３５５上の異なる場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、明色（すなわち、高輝度値）を有する、青空を示す画像上の場所を選択している。このアプリケーションは、この新たに選択された場所に対応する画素の色値が、ハイライトに関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、画像のハイライトを調整するための画像上ＵＩコントロール３１７５及び画像上ＵＩコントロール３１８０（垂直軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール３１７５及び画像上ＵＩコントロール３１８０のセットは、ハイライトＵＩコントロール３１５０に対応する。図示のように、このアプリケーションはまた、ハイライトＵＩコントロール３１５０がアクティブ化されていることを示すために、ハイライトＵＩコントロール３１５０を強調表示する。第２ステージ３１１０と同様に、ハイライトを調整するための画像上ＵＩコントロールに加えて、このアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないＵＩコントロール３１５５及びＵＩコントロール３１６０のセットも表示する。このアプリケーションはまた、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０がアクティブ化されていることを示すために、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０を強調表示する。この図には示されないが、この第３ステージ３１１５でのユーザは、画像に対して方向入力を提供することによって、特定の色調整（すなわち、コントラスト調整又はハイライト調整）を開始することができる。
【０２２１】
第４ステージ３１２０は、ユーザが、画像３５５上の異なる場所を選択した後の、ＧＵＩ３００を示す。図示のように、ユーザは、中間色調（すなわち、中輝度値）を有する、山を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、中間色調に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、画像の明度を調整するための画像上ＵＩコントロール３１８５及び画像上ＵＩコントロール３１９０（垂直軸に沿った２つの方向の矢印として表示される）のセットを表示する。画像上ＵＩコントロール３１８５及び画像上ＵＩコントロール３１９０のセットは、明度ＵＩコントロール３１４５に対応する。図示のように、このアプリケーションはまた、明度ＵＩコントロール３１４５がアクティブ化されていることを示すために、明度ＵＩコントロール３１４５を強調表示する。第２ステージ３１１０及び第３ステージ３１１５と同様に、明度を調整するための画像上ＵＩコントロールに加えて、このアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないＵＩコントロール３１５５及びＵＩコントロール３１６０のセットも表示する。このアプリケーションはまた、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０がアクティブ化されていることを示すために、コントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０を強調表示する。この図には示されないが、この第４ステージ３１２０でのユーザは、画像に対して方向入力を提供することによって、特定の露出調整（すなわち、コントラスト調整又は明度調整）を選択することができる。
【０２２２】
図３１は、画像に対して種々の露出調整を実行するための、種々の画像上ＵＩコントロールをアクティブ化する例示的操作を示す。図３２、３３、３４、及び図３５は、種々の画像上ＵＩコントロールを操作することにより、画像に対して種々の露出調整を実行する実施例を示す。具体的には、図３２は、画像に関するコントラストを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を、４つの異なるステージ３２０５、３２１０、３２１５、及びステージ３２２０で示す。
【０２２３】
第１ステージ３２０５は、図３１の第１ステージ３１０５と同一である。図示のように、ユーザは、画像３５５の露出設定を調整するための選択可能ＵＩ項目３１２５を選択している。第２ステージ３２１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、暗色を有する、海を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール３１５５〜３１７０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像に関するコントラストを調整するためのコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０に対応する、画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０のセット、並びに、画像のシャドウを調整するためのシャドウＵＩコントロール３１３０に対応する、画像上ＵＩコントロール３１６５及び画像上ＵＩコントロール３１７０のセットを含む。第２ステージ３２１０はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０、並びにシャドウＵＩコントロール３１３０が強調表示されることにより、これらのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０２２４】
第３ステージ３２１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５のコントラストの調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印３２２５によって示されるように、ユーザの指を画像３５５の右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像３５５に関するコントラストを増大させるための画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０と関連付けて、画像３５５に対するコントラスト調整を実行する。図示のように、画像３５５内の色のコントラストは、増大されている。画像３５５の、より暗い領域（例えば、山の領域及び海の領域）は、それらのより暗い領域の全域にわたる斜線によって示されるように、暗色化され、画像３５５の、より明るい領域（例えば、雲及び太陽の領域）は、それらのより明るい領域の輪郭を描く破線によって示されるように、明色化される。第３ステージ３２１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール３１６５及び画像上ＵＩコントロール３１７０が、ディスプレイから除去されて、対応するシャドウＵＩコントロール３１３０が、もはや強調表示されないことも示す。第３ステージ３２１５はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０が、互いに離れる方向に移動されていることも示す。
【０２２５】
更には、ＧＵＩ３００はまた、画像に対して露出調整が実行された場合、選択可能ＵＩ項目３２１５の上部に、バーを表示する。この選択可能ＵＩ項目３２１５の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対してコントラスト調整を実施した後の、第３ステージ３２１５で、選択可能ＵＩ項目３２１５の上部に、バーが出現している。
【０２２６】
第４ステージ３２２０は、ユーザが、矢印３２３０によって示されるように、ユーザの指を更に右にドラッグすることによって、画像３５５のコントラストを更に増大させた後の、ＧＵＩ３００を示す。図示のように、このステージ３２２０での画像３５５の暗色領域内の色は、画像３５５の暗色領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ３２１５での画像の暗色領域内の色よりも、更に暗色化されて示される。同様に、このステージ３２２０での画像３５５の明色領域内の色は、画像３５５の明色領域の輪郭を描く、更に細かい破線によって示されるように、第３ステージ３２１５での画像の明色領域内の色よりも、更に明色化されて示される。第４ステージ３３２０はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０が、互いに更に離れる方向に移動されていることも示す。
【０２２７】
図３２は、画像のコントラストを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図３３は、画像のシャドウを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。具体的には、図３３は、この露出調整操作を、４つの異なるステージ３３０５、３３１０、３３１５、及びステージ３３２０で示す。
【０２２８】
第１ステージ３３０５は、図３１の第１ステージ３１０５と同一である。図示のように、ユーザは、画像３５５の露出設定を調整するための選択可能ＵＩ項目３１２５を選択している。第２ステージ３３１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、暗色を有する、海を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール３１５５〜３１７０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像のコントラストを調整するためのコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０に対応する、画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０のセット、並びに、画像のシャドウを調整するためのシャドウＵＩコントロール３１３０に対応する、画像上ＵＩコントロール３１６５及び画像上ＵＩコントロール３１７０のセットを含む。第２ステージ３３１０はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０、並びにシャドウＵＩコントロール３１３０が強調表示されることにより、これらのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０２２９】
第３ステージ３３１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５のシャドウの調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印３３２５によって示されるように、画像３５５の底部に向けて、ユーザの指を下向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内のシャドウを暗色化するための画像上ＵＩコントロール３１７０と関連付けて、画像３５５に対するシャドウ調整を実行する。図示のように、画像３５５内の暗色領域（例えば、海を示す領域）は、画像３５５内の海を示す領域の全域にわたる斜線によって示されるように、暗色化されている。第３ステージ３３１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０が、ディスプレイから除去されて、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０が、もはや強調表示されないことも示す。第３ステージ３３１５はまた、対応するシャドウＵＩコントロール３１３０が、左に移動されていることも示す。
【０２３０】
更には、ＧＵＩ３００はまた、画像に対して露出調整が実行された場合、選択可能ＵＩ項目３１２５の上部に、バーを表示する。この選択可能ＵＩ項目３１２５の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対してシャドウ調整を実施した後の、第３ステージ３３１５で、選択可能ＵＩ項目３１２５の上部に、バーが出現している。
【０２３１】
第４ステージ３３２０は、ユーザが、矢印３３３０によって示されるように、ユーザの指を更に下向きにドラッグすることによって、画像３５５のシャドウを更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ３３２０での画像３５５の暗色領域（例えば、海及び山を示す領域）は、画像３５５内の暗色領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ３３１５での画像内の暗色領域内よりも、更に彩度が増大されて示される。第４ステージ３３２０はまた、対応するシャドウＵＩコントロール３１３０が、更に左に移動されていることも示す。
【０２３２】
図３３は、画像のシャドウを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図３４は、画像のハイライトを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。具体的には、図３４は、この露出調整操作を、４つの異なるステージ３４０５、３４１０、３４１５、及びステージ３４２０で示す。
【０２３３】
第１ステージ３４０５は、図３１の第１ステージ３１０５と同一である。図示のように、ユーザは、画像３５５の露出設定を調整するための選択可能ＵＩ項目３１２５を選択している。第２ステージ３４１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、明色を有する、空を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール３１５５、３１６０、３１７５、及び画像上ＵＩコントロール３１８０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像のコントラストを調整するためのコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０に対応する、画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０のセット、並びに、画像のハイライトを調整するためのハイライトＵＩコントロール３１５０に対応する、画像上ＵＩコントロール３１７５及び画像上ＵＩコントロール３１８０のセットを含む。第２ステージ３４１０はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０、並びにハイライトＵＩコントロール３１５０が強調表示されることにより、これらのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０２３４】
第３ステージ３４１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５のハイライトの調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印３４２５によって示されるように、画像３５５の底部に向けて、ユーザの指を下向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内のハイライトを暗色化するための画像上ＵＩコントロール３１８０と関連付けて、画像３５５に対するハイライト調整を実行する。図示のように、画像３５５内の明色領域（例えば、太陽及び空を示す領域）は、画像３５５内の太陽及び空を示す領域の全域にわたる斜線によって示されるように、暗色化されている。第３ステージ３４１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０が、ディスプレイから除去されて、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０が、もはや強調表示されないことも示す。第３ステージ３４１５はまた、対応するハイライトＵＩコントロール３１５０が、左に移動されていることも示す。
【０２３５】
更には、ＧＵＩ３００はまた、画像に対して露出調整が実行された場合、選択可能ＵＩ項目３１２５の上部に、バーを表示する。この選択可能ＵＩ項目３１２５の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対してハイライト調整を実施した後の、第３ステージ３４１５で、選択可能ＵＩ項目３１２５の上部に、バーが出現している。
【０２３６】
第４ステージ３４２０は、ユーザが、矢印３４３０によって示されるように、ユーザの指を更に下向きにドラッグすることによって、画像３５５のハイライトを更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ３４２０での画像３５５内の明色領域（例えば、太陽及び空を示す領域）は、画像３５５内の明色領域の全域にわたる、より高密度の斜線によって示されるように、第３ステージ３４１５での画像内の明色領域内よりも、更に暗色化されて示される。第４ステージ３４２０はまた、対応するハイライトＵＩコントロール３１５０が、更に左に移動されていることも示す。
【０２３７】
図３４は、画像のハイライトを調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。図３５は、画像の全体的な明度を調整するための画像上ＵＩコントロールのセットを操作する例示的操作を示す。具体的には、図３５は、この露出調整操作を、４つの異なるステージ３５０５、３５１０、３５１５、及びステージ３５２０で示す。
【０２３８】
第１ステージ３５０５は、図３１の第１ステージ３１０５と同一である。図示のように、ユーザは、画像３５５の露出設定を調整するための選択可能ＵＩ項目３１２５を選択している。第２ステージ３５１０は、ユーザが、画像３５５上の場所を選択した後の、ＧＵＩ３００を示す。画像３５５上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、画像の場所にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、中間色調を有する、山を示す画像３５５上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上ＵＩコントロール３１５５、３１６０、３１８５、及び画像上ＵＩコントロール３１９０のセットが、画像上の選択された場所の周囲に表示される。この画像上ＵＩコントロールのセットは、画像のコントラストを調整するためのコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０に対応する、画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０のセット、並びに、画像の全体的な明度を調整するための明度ＵＩコントロール３１４５に対応する、画像上ＵＩコントロール３１８５及び画像上ＵＩコントロール３１９０のセットを含む。第２ステージ３５１０はまた、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０、並びに明度ＵＩコントロール３１４５が強調表示されることにより、これらのＵＩコントロールがアクティブ化されていることを示す点も示す。
【０２３９】
第３ステージ３５１５は、ユーザが、画像３５５に対する方向入力を提供することによって、画像３５５の全体的な明度の調整を開始した後の、ＧＵＩ３００を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印３５２５によって示されるように、画像３５５の頂部に向けて、ユーザの指を上向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像の明度を増大させる（すなわち、画像の画素の輝度値を増大させる）ための画像上ＵＩコントロール３１８５と関連付けて、画像３５５に対する明度調整を実行する。図示のように、画像３５５の全体が、画像３５５内の対象物の輪郭を描く破線によって示されるように、明色化されている。第３ステージ３５１５はまた、アプリケーションが、方向入力を、画像上ＵＩコントロールの１つのセットに関連付けた後には、非アクティブ化された画像上ＵＩコントロール３１５５及び画像上ＵＩコントロール３１６０が、ディスプレイから除去されて、対応するコントラストＵＩコントロール３１３５及びコントラストＵＩコントロール３１４０が、もはや強調表示されないことも示す。第３ステージ３５１５はまた、対応する明度ＵＩコントロール３１４５が、左に移動されていることも示す。
【０２４０】
更には、ＧＵＩ３００はまた、画像に対して露出調整が実行された場合、選択可能ＵＩ項目３１２５の上部に、バーを表示する。この選択可能ＵＩ項目３１２５の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して明度調整を実施した後の、第３ステージ３４１５で、選択可能ＵＩ項目３１２５の上部に、バーが出現している。
【０２４１】
第４ステージ３５２０は、ユーザが、矢印３５３０によって示されるように、ユーザの指を更に上向きにドラッグすることによって、画像３５５の明度を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ３５２０での画像３５５は、画像３５５の対象物の輪郭を描く、更に細かい破線によって示されるように、第３ステージ３５１５での画像よりも、更に明色化されて示される。第４ステージ３５２０はまた、対応する明度ＵＩコントロール３１４５が、更に左に移動されていることも示す。
【０２４２】
図３６は、画像上の場所のユーザ選択に基づいて、画像内のコントラスト、明度、シャドウ、及びハイライトを調整するための画像上ＵＩコントロールのセットを提供するためのプロセス３６００を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。最初の３つの操作３６０５、３６１０、及び３６１５は、図１９のプロセス１９００の、最初の３つの操作１９０５、１９１０、及び１９１５と同一である。このプロセスは、画像上の場所の選択を（３６０５で）受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を（３６１０で）取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。
【０２４３】
次に、このプロセスは、取得された色値に対する一連の分析を（３６１５で）実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、この一連の分析は、選択された場所が暗色に関連付けられているか否かを判定するための分析、選択された場所が明色に関連付けられているか否かを判定するための分析、及び、選択された場所が中間色調に関連付けられているか否かを判定するための分析を含む。
【０２４４】
次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が暗色に関連付けられているか否かを（３６２０で）判定する。一部の実施形態では、このプロセスは、取得された色値が低い輝度（すなわち、明度）レベルを有する場合に、その選択された場所が暗色に関連付けられていることを判定する。選択された場所が暗色に関連付けられている場合には、このプロセスは、画像内のシャドウを調整するためのＵＩコントロールのセットを（３６２５で）提供する。一部の実施形態では、このシャドウを調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０２４５】
次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が明色に関連付けられているか否かを（３６３０で）判定する。一部の実施形態では、このプロセスは、取得された色値が高い輝度（すなわち、明度）レベルを有する場合に、その選択された場所が明色に関連付けられていることを判定する。選択された場所が明色に関連付けられている場合には、このプロセスは、画像内のハイライトを調整するためのＵＩコントロールのセットを（３６３５で）提供する。一部の実施形態では、このハイライトを調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０２４６】
次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が中間色調に関連付けられているか否かを（３６４０で）判定する。一部の実施形態では、このプロセスは、取得された色値が、平均又は中央値の輝度（すなわち、明度）レベルを有する場合に、その選択された場所が中間色調に関連付けられていることを判定する。選択された場所が中間色調に関連付けられている場合には、このプロセスは、画像内の明度を調整するためのＵＩコントロールのセットを（３６４５で）提供する。一部の実施形態では、この明度を調整するためのＵＩコントロールのセットは、画像上の選択された場所の周囲に表示される。
【０２４７】
次に、このプロセスは、画像全体に関するコントラストを調整するためのＵＩコントロールのセットを（３６５０で）提供する。一部の実施形態では、このプロセスは、ユーザによって選択される画像上の場所とは無関係に、この画像全体に関するコントラストを調整するためのＵＩコントロールのセットを、常に提供する。
【０２４８】
次いで、このプロセスは、方向入力が受け取られるか否かを（３６５５で）判定する。方向入力が受け取られる場合には、このプロセスは、その方向入力に基づいて、画像に対する露出調整操作を（３６６０で）実行する。次いで、このプロセスは、画像上ＵＩコントロールが選択解除されるか否かを（３６６５で）判定する。一部の実施形態では、画像上ＵＩコントロールのセットは、タッチ又はニアタッチ感応スクリーンを有する装置から、指を引き上げること（又は、ボタンを解除すること）によって、選択解除することができる。
【０２４９】
受け取られる方向入力が存在しないことを、このプロセスが（３６５５で）判定する場合には、このプロセスはまた、操作３６６５に進み、画像上ＵＩコントロールが選択解除されるか否かを判定する。画像上ＵＩコントロールのセットが選択解除されない場合には、このプロセスは、方向入力が受け取られるか否かを判定するために、３６５５に戻る。その一方で、画像上ＵＩコントロールのセットが選択解除される場合には、このプロセスは終了する。
【０２５０】
ＩＩＩ．色バランスコントロール
コンテンツのタイプに関連付けられている画像の一部分のみを調整するためのＵＩコントロールを提供することに加えて、一部の実施形態の画像編集アプリケーションはまた、画像の色バランスを調整するためのＵＩコントロールのセットも提供する。非常に多くの場合、種々の照明条件下で画像を取り込むことは、画像の品質に悪影響を及ぼす可能性がある。一般的なアーチファクトは、画像が取り込まれている照明条件によって作り出される、画像内の全体的な望ましくない色かぶりである。例えば、白熱灯の下で取り込まれる画像は、多くの場合、黄色味がかった色を有するため、中立的な照明条件下では白色に見えるはずの対象物は、その画像内では黄色に見える。それゆえ、色バランス調整（別名、ホワイトバランス調整）は、画像内の対象物が自然で心地よく見えるように、画像の全体的な色を補正するための操作である。
【０２５１】
一部の実施形態では、このアプリケーションは、画面上の場所をユーザが選択することを可能にする、色バランスＵＩコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色（例えば、灰色、理想的な肌色など）に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。
【０２５２】
種々の実施形態は、この色バランス調整操作のための種々の基準色を提供する。例えば、一部の実施形態のアプリケーションは、基準色として灰色を設定する。これらの実施形態では、ユーザは、実物では灰色として現われる対象物を表示する、画像内の場所を選択することによって、色バランスＵＩを通じて画像の色バランスを調整する。
【０２５３】
図３７は、色バランスＵＩツールを通じて、画像の色バランスを調整する実施例を、４つの異なるステージ３７０５、３７１０、３７１５、及びステージ３７２０で示す。
【０２５４】
第１ステージ３７０５は、図３の第２ステージ３１０と同様であるが、ただし、この第１ステージ３７０５でのユーザは、種々の色バランスツールのセットの表示をトリガするために、色バランス選択可能ＵＩ項目３７２５を選択したところである。図示のように、ユーザは、画像表示領域３４５内に表示するための画像３５５を選択している。一部の実施形態では、色バランスツールをトリガするための選択可能ＵＩ項目３７２５は、ユーザが（メニューバー３４０内の選択可能ＵＩ項目３４２を選択することによって）色調整ビューを選択した場合に、ＵＩコントロール表示領域３５０内部に表示される。選択可能ＵＩ項目３７２５の選択は、選択可能ＵＩ項目３７２５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３７２５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【０２５５】
図示のように、ユーザが選択可能ＵＩ項目３７２５を選択した後に、色バランスツール表示領域３７３０が、ＵＩコントロール表示領域３５０の上部に出現する。色バランスツール表示領域３７３０は、種々の色バランスツールを開始するための、幾つかの選択可能ＵＩ項目を含む。例えば、色バランスツール表示領域３７３０は、「本来のホワイトバランス」ツールを開始するための、選択可能ＵＩ項目３７３５を含む。この「本来のホワイトバランス」ツールは、画像を取り込んだ装置のホワイトバランス設定を使用して、その画像のホワイトバランスを調整する。色バランスツール表示領域３７３０はまた、種々の事前設定ホワイトバランスツールを開始するための、選択可能ＵＩ項目のセットも含む。事前設定ホワイトバランスツールは、昼光、曇り、フラッシュ、日陰、白熱、及び蛍光照明条件などの、予め定義された種々の照明条件に基づいて、画像のホワイトバランスを調整する。更には、色バランスツール表示領域３７３０はまた、カスタムホワイトバランスツールを開始するための選択可能ＵＩ項目３７４５、及びカスタム肌色バランスツールを開始するための選択可能ＵＩ項目３７４０などの、２つのカスタム色バランスツールを開始するための選択可能ＵＩ項目も含む。
【０２５６】
カスタムホワイトバランスツールは、ユーザが、中立的な照明条件下では白色又は灰色であると想定される、画像上の場所を選択することを可能にする。次いで、画像編集アプリケーションは、その色値が白色を表すようにその場所の色値を調整するためのアルゴリズム又は数学的方程式を定義する。次いで、このアプリケーションは、画像内の画素の残部に、同じアルゴリズム又は数学的方程式を適用する。
【０２５７】
第２ステージ３７１０は、ユーザが、カスタムホワイトバランスツールを開始するための選択可能ＵＩ項目３７４５を選択した後の、ＧＵＩ３００を示す。選択可能ＵＩ項目３７４５の選択は、選択可能ＵＩ項目３７４５を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３７４５にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、選択可能ＵＩ項目３７４５の強調表示によって示されるように、選択可能ＵＩ項目３７４５を選択したところである。結果として、カスタムホワイトバランスＵＩコントロール３７５５が、画像上に表示される。
【０２５８】
カスタムホワイトバランスＵＩコントロール３７５５が、画像上に出現すると、このアプリケーションは、画像３５５の色値を調整することによって、ホワイトバランス操作を実行する。具体的には、このアプリケーションは、カスタムホワイトバランスＵＩコントロール３７５５を通じて選択された場所に対応するか、又はその場所の近傍の、画素のセットの色値のうちの１つ以上をサンプル抽出する。次いで、このアプリケーションは、その色値を最も近い灰色に変換するための、（パラメータのセットを入力として取得する）アルゴリズム又は数学的方程式を考案し、次いで、画像３５５内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、画像に色バランス調整を適用する前に、画像３５５の色値をＹＣＣ色空間（例えば、ＹＩＱ色空間）に変換する。
【０２５９】
種々の実施形態は、カスタムホワイトバランスＵＩコントロールを、種々の方式で実装する。この実施例では、カスタムホワイトバランスＵＩコントロールは、円として出現し、その円の中央に十字線を有する。ユーザは、この十字線が、中立的な照明条件下では白色又は灰色であると想定される、画像３５５内の対象物の上に存在するように、カスタムホワイトバランスＵＩコントロール３７５５を画像３５５の領域内に配置することによって、画像３５５上の場所を選択することができる。
【０２６０】
一部の実施形態では、このアプリケーションは、カスタムホワイトバランスＵＩコントロール３７５５の外側の画像の部分に関する、編集済みの（すなわち、カスタムホワイトバランスＵＩコントロール３７５５の現在の場所に基づいて、画像がホワイトバランス調整される場合の）バージョンを表示することによって、このホワイトバランス調整のプレビューを提供する。これらの実施形態では、カスタムホワイトバランスＵＩコントロール３７５５の内側にある画像の部分は、未編集のまま維持されることにより、ユーザは、編集済みバージョンと未編集バージョンとの差異を視認することが可能となる。この第２ステージ３７１０で示すように、カスタムホワイトバランスＵＩコントロール３７５５の外側にある画像３５５の部分のみにわたる斜線によって示されるように、カスタムホワイトバランスＵＩコントロール３７５５の外側にある画像３５５の部分は、調整されているが、その一方で、カスタムホワイトバランスＵＩコントロール３７５５の内側にある画像３５５の部分は、影響を受けないまま維持される。他の実施形態では、カスタムホワイトバランスＵＩコントロール３７５５の内側にある画像の部分のみが編集され、カスタムホワイトバランスＵＩコントロール３７５５の外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。
【０２６１】
このプレビュー機能性に加えて、一部の実施形態のアプリケーションはまた、カスタムホワイトバランスＵＩコントロール３７５５の内側の画像の部分をズームインすることにより、画像内の白色又は灰色の場所をユーザが正確に選択することを支援する。図示のように、カスタムホワイトバランスＵＩコントロール３７５５の内側にある画像３５５の部分は、その領域が、第１ステージ３７０５で見えるものよりも遙かに大きい鳥を示すように、ズームインされている。
【０２６２】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３５５に対して色バランス調整を実施した後の、第２ステージ３２０で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０２６３】
上述のように、一部の実施形態のアプリケーションは、ユーザが、カスタムホワイトバランスＵＩコントロール３７５５を、画像上の種々の場所に移動させることを可能にする。第３ステージ３７１５は、ユーザがカスタムホワイトバランスＵＩコントロール３７５５を選択しているが、カスタムホワイトバランスＵＩコントロール３７５５の移動を開始していないことを示す、過渡的ステージである。第４ステージ３７２０は、ユーザが、カスタムホワイトバランスＵＩコントロール３７５５を、画像上の異なる場所に移動させた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、画像上の異なる場所に、ユーザの指をドラッグするか、又はカーソルをドラッグすることによって、カスタムホワイトバランスＵＩコントロール３７５５を移動させることができる。図示のように、ユーザは、矢印によって示されるように、雲を示す画像３５５の領域に、カスタムホワイトバランスＵＩコントロール３７５５を移動させている。この新たな場所へのカスタムホワイトバランスＵＩコントロール３７５５の移動の結果として、アプリケーションは、画像の色値を再調整する。一部の実施形態では、アプリケーションは、このカスタムホワイトバランスＵＩコントロール３７５５を通じて選択された場所に対応する、別の画素のサンプルを採取する。次いで、このアプリケーションは、その色値を最も近い灰色に変換するための、（パラメータのセットを入力として取得する）アルゴリズム又は数学的方程式を考案し、次いで、画像３５５内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。図示のように、カスタムホワイトバランスＵＩコントロール３７５５の外側の画像の部分は、画像３５５のその部分の全域にわたる異なる斜線のセットによって示されるように、再調整されて示される。
【０２６４】
図３７に示される上記の実施例では、このアプリケーションは、色バランスコントロール３７５５が画像上に出現した直後に、画像に対する色バランス操作を実行し、ユーザが色バランスＵＩコントロール３７５５を移動させるたびに、画像を再調整する。一部の他の実施形態では、このアプリケーションが実行される装置の処理能力を節約するために、このアプリケーションは、ユーザから更なる入力（例えば、「色バランス実行」選択可能ＵＩ項目の選択、画像上での追加タップなど）を受け取る際にのみ、画像に対する色バランス操作を実行する。このように、画像は、ユーザが色バランスＵＩコントロール３７５５を移動させるたびに調整されることがなく、ユーザが場所を確定して、更なる入力を提供する場合にのみ、調整される。
【０２６５】
図３８は、一部の実施形態の画像編集アプリケーションによって実行される、画像に関する例示的なホワイトバランス操作を示す。図示のように、色空間３８００は、画像の色値が定義される色空間を表す。この特定の色空間は、３つの軸、すなわち、赤及び緑の色値の範囲を表す軸３８２０、青及び黄の色値の範囲を表す軸３８３０、及び種々の濃淡の灰色の範囲（すなわち、輝度値の範囲）を表す垂直軸３８１０に沿って定義され、底面の場所３８４０は黒色を表し、上面の場所３８５０は白色を表す。色が明るくなるほど、その色は、この色空間の円柱３８００の底面から遠くに出現する。
【０２６６】
領域３８６０は、画像の全ての色値を表す。領域３８６０は、色空間３８００内の１つの小さい領域内に位置するように示されるが、画像の色値は、色空間３８００の、多くの異なる領域を占める場合がある。ユーザが、ホワイトバランスＵＩコントロールを使用して、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値を取得する。この図では、色３８８０は、ホワイトバランスＵＩコントロールによって特定された場所に対応する、画素の色を表す。次いで、このアプリケーションは、この色空間内部で、選択された色値に最も近い灰色（例えば、３８９０）の位置を特定し、選択された色値３８８０を灰色値３８９０に修正する色調整を決定する。次いで、このアプリケーションは、決定された色調整に基づいて、色空間変換を生成する。一部の実施形態では、この色空間変換は、決定された色調整に基づいて生成される、Ｍ×Ｍ行列（例えば、３×３行列）である。一部の実施形態では、この色空間変換は、色空間３８００内の各色を、歪められた色空間内の別の色にマッピングする。図３８の色空間３８０５は、この色空間変換によって色空間３８００が変換された後の、色空間を表す。図示のように、色空間３８００内の色３８８０は、色空間３８０５内の色３８８５にマッピングされ、色空間３８００内の別の色３８７０は、色空間３８０５内の色３８７５にマッピングされる。一部の実施形態では、このアプリケーションは、この色空間変換を画像内の各画素に適用することによって、選択された場所に基づいて、画像のホワイトバランスを調整する。
【０２６７】
図３７は、カスタムホワイトバランスＵＩコントロールを使用して、カスタムホワイトバランス操作を実行する、実施例を示す。カスタムホワイトバランス操作に加えて、一部の実施形態のアプリケーションはまた、カスタム肌色バランス操作も提供する。このカスタム肌色バランス操作は、カスタムホワイトバランス操作と同様であるが、ただし、中立の光の下で白い色であると想定される、画像上の場所を選択する代わりに、ユーザは、人の顔を表示する画像上の場所を選択する。これらの実施形態では、アプリケーションは、理想的な顔の色のセットを定義する。例えば、一部の実施形態のアプリケーションは、昼光の条件下での理想的な顔の色、及び人工光の条件での理想的な顔の色を定義することができる。ユーザが、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値をサンプル抽出し、その画素の色値を調整して理想的な顔の色にするための調整を定義する。次いで、このアプリケーションは、画像内の全ての画素に、その同じ調整を適用する。
【０２６８】
図３９は、カスタム肌色バランス操作を実行する実施例を、４つの異なるステージ３９０５、３９１０、３９１５、及びステージ３９２０で示す。
【０２６９】
第１ステージ３９０５は、図３７の第１ステージ３７０５と同様であるが、ただし、ユーザは、編集するための別の画像を選択している。図示のように、ユーザは、画像表示領域３４５内に表示するための画像３９５５を選択している。画像３９５５は、前景に立っている人物３９３０、及び背景に立っている別の人物３９３５の写真である。画像３９５５はまた、画像の右側に、山及び海も示す。図３７の第１ステージ３７０５と同様に、ユーザは、選択可能ＵＩ項目３７２５を選択することにより、ホワイトバランスツール表示領域３７３０を開いている。
【０２７０】
第２ステージ３９１０は、ユーザが、カスタム肌色バランスツールを開始するための選択可能ＵＩ項目３７４０を選択した後の、ＧＵＩ３００を示す。選択可能ＵＩ項目３７４０の選択は、選択可能ＵＩ項目３７４０を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、選択可能ＵＩ項目３７４０にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。図示のように、ユーザは、選択可能ＵＩ項目３７４０の強調表示によって示されるように、選択可能ＵＩ項目３７４０を選択したところである。結果として、カスタム肌色バランスＵＩコントロール３９２５が、画像上に表示される。
【０２７１】
カスタム肌色バランスＵＩコントロール３９２５が、画像上に出現すると、このアプリケーションは、画像３９５５の色値を調整することによって、肌色バランス操作を実行する。具体的には、このアプリケーションは、カスタム肌色バランスＵＩコントロール３９２５を通じて選択された場所に対応するか、又はその場所の近傍の、画素のセットの色値のうちの１つ以上をサンプル抽出する。次いで、このアプリケーションは、その色値を予め定義された理想的な顔の色に変換するための、（パラメータのセットを入力として取得する）アルゴリズム又は数学的方程式を考案し、次いで、画像３９５５内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。
【０２７２】
種々の実施形態は、カスタム肌色バランスＵＩコントロールを、種々の方式で実装する。この実施例では、カスタム肌色バランスＵＩコントロール３９２５は、円として出現し、その円の中央に十字線を有する。ユーザは、この十字線が画像３９５５内の人の顔の上に存在するように、カスタム肌色バランスＵＩコントロール３９２５を画像３９５５の領域内に配置する（又は移動させる）ことによって、画像３９５５上の場所を選択することができる。
【０２７３】
一部の実施形態では、このアプリケーションは、顔検出アルゴリズムを使用して、画像内の人の顔を検出し、その画像内に検出される第１の人の顔の上に、カスタム肌色バランスＵＩコントロール３９２５を配置する。この第２ステージ３９１０で示すように、カスタム肌色バランスＵＩコントロール３９２５は、背景に立っている人の顔の上に出現する。
【０２７４】
カスタムホワイトバランスＵＩコントロールと同様に、一部の実施形態のアプリケーションは、カスタム肌色バランスＵＩコントロール３９２５の外側の画像の部分に関する、その画像の編集済みの（すなわち、カスタム肌色バランスＵＩコントロール３９２５の現在の場所に基づいて、画像が肌色バランス調整される場合の）バージョンを表示することによって、この肌色バランス調整のプレビューを提供する。これらの実施形態では、カスタム肌色バランスＵＩコントロール３９２５の内側にある画像の部分は、未編集のまま維持されることにより、ユーザは、編集済みバージョンと未編集バージョンとの差異を視認することが可能となる。この第２ステージ３９１０で示すように、カスタム肌色バランスＵＩコントロール３９２５の外側にある画像３９５５の部分のみにわたる斜線によって示されるように、カスタム肌色バランスＵＩコントロール３９２５の外側にある画像３９５５の部分は、調整されているが、その一方で、カスタム肌色バランスＵＩコントロール３９２５の内側にある画像３９５５の部分は、影響を受けないまま維持される。他の実施形態では、カスタム肌色バランスＵＩコントロール３９２５の内側にある画像の部分のみが編集され、カスタム肌色バランスＵＩコントロール３９２５の外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。
【０２７５】
このプレビュー機能性に加えて、一部の実施形態のアプリケーションはまた、カスタム肌色バランスＵＩコントロール３９２５の内側の画像の部分をズームインすることにより、人の顔を表示する画像内の場所を、ユーザが正確に選択することを支援する。図示のように、カスタム肌色バランスＵＩコントロール３９２５の内側にある画像３５５の部分は、その領域が、背景に立っている人の顔のより多くの詳細を示すように、ズームインされている。
【０２７６】
更には、ＧＵＩ３００はまた、画像に対して色調整が実行された場合、選択可能ＵＩ項目３４２の上部に、バーを表示する。この選択可能ＵＩ項目３４２の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像３９５５に対してカスタム肌色バランス操作を実施した後の、第２ステージ３２０で、選択可能ＵＩ項目３４２の上部に、バーが出現している。
【０２７７】
上述のように、一部の実施形態のアプリケーションは、ユーザが、カスタム肌色バランスＵＩコントロール３９２５を、画像上の種々の場所に移動させることを可能にする。顔検出アルゴリズムの助けにより、このアプリケーションは、画像内の人の顔の位置を特定することが可能である。しかしながら、画像が幾つかの顔を含む場合、ユーザは、アプリケーションによって選択された人物の顔に基づいて肌色バランス調整を行うことを、望まない可能性があり、むしろ、ユーザは、画像内の別の人物の顔に基づいて肌色バランス調整を行うことを望む可能性がある。第２ステージ３９１０は、アプリケーションが、背景の人物の顔（アプリケーションが、顔検出アルゴリズムを使用して検出した第１の顔）の上に、カスタム肌色バランスＵＩコントロール３９２５を自動的に配置することを示す。しかしながら、背景の人物ではなく、前景の人物が、この写真内での実際の対象点である。それゆえ、移動可能なカスタム肌色バランスＵＩコントロール３９２５は、対象となる顔の正しい場所を、ユーザが指定することを可能にする。
【０２７８】
第３ステージ３９１５は、ユーザがカスタム肌色バランスＵＩコントロール３９２５を選択しているが、カスタム肌色バランスＵＩコントロール３９２５の移動を開始していないことを示す、過渡的ステージである。第４ステージ３９２０は、ユーザが、カスタム肌色バランスＵＩコントロール３９２５を、画像上の異なる場所に移動させた後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、画像上の異なる場所に、ユーザの指をドラッグするか、又はカーソルをドラッグすることによって、カスタム肌色バランスＵＩコントロール３９２５を移動させることができる。図示のように、ユーザは、前景の人物の顔を表示する画像３９５５の領域に、カスタム肌色バランスＵＩコントロール３９２５を移動させている。この新たな場所へのカスタム肌色バランスＵＩコントロール３９２５の移動の結果として、アプリケーションは、画像の色値を再調整する。一部の実施形態では、アプリケーションは、このカスタム肌色バランスＵＩコントロール３９２５を通じて選択された場所に対応する、別の画素のサンプルを採取する。次いで、このアプリケーションは、その色値を予め定義された理想的な顔の色に変換するための、（パラメータのセットを入力として取得する）アルゴリズム又は数学的方程式を考案し、次いで、画像３９５５内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。図示のように、カスタム肌色バランスＵＩコントロール３９２５の外側の画像の部分は、画像３９５５のその部分の全域にわたる異なる斜線のセットによって示されるように、再調整されて示される。
【０２７９】
図３９に示される上記の実施例では、このアプリケーションは、色バランスコントロール３９２５が画像上に出現した直後に、画像に対する色バランス操作を実行し、ユーザが色バランスＵＩコントロール３９２５を移動させるたびに、画像を再調整する。一部の他の実施形態では、このアプリケーションが実行される装置の処理能力を節約するために、このアプリケーションは、ユーザから更なる入力（例えば、「色バランス実行」選択可能ＵＩ項目の選択、画像上での追加タップなど）を受け取る際にのみ、画像に対する色バランス操作を実行する。このように、画像は、ユーザが色バランスＵＩコントロール３９２５を移動させるたびに調整されることがなく、ユーザが場所を確定して、更なる入力を提供する場合にのみ、調整される。
【０２８０】
図４０は、一部の実施形態の画像編集アプリケーションによって実行される、画像に関する例示的な肌色バランス操作を示す。一部の実施形態では、このアプリケーションは、肌色バランス操作を実行する前に、最初に、色値が定義される色空間（例えば、ＲＧＢ色空間）からＹＣＣ色空間（例えば、ＹＩＱ色空間）に、画像の色値を変換する。ＲＧＢ色空間からＹＩＱ色空間への変換は、最初に、ＲＧＢ色空間内の色値に対して約１／４のｇａｍｍａを適用し、次いで、３×３行列を適用して、その色値をＹＩＧ色空間に変換することによって、実行することができる。図示のように、色空間４０００は、画像の色値が変換されるＹＣＣ色空間を表す。この特定の色空間は、３つの軸、すなわち、赤及び緑の色値の範囲を表す軸４０２０、青及び黄の色値の範囲を表す軸４０３０、及び種々の濃淡の灰色の範囲（すなわち、輝度値の範囲）を表す垂直軸４０１０に沿って定義され、底面の場所４０４０は黒色を表し、上面の場所４０５０は白色を表す。色が明るくなるほど、その色は、この色空間の円柱４０００の底面から遠くに出現する。
【０２８１】
領域４０６０は、画像の全ての色値を表す。領域４０６０は、色空間４０００内の１つの小さい領域内に位置するように示されるが、一部の他の画像の色値は、色空間４０００の、多くの異なる領域を占める場合がある。ユーザが、肌色バランスＵＩコントロールを使用して、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値を取得する。この図では、色４０８０は、ホワイトバランスＵＩコントロールによって特定された場所に対応する、画素の色を表す。
【０２８２】
一部の実施形態では、このアプリケーションは、２つの異なる理想的な肌色を定義し、一方は、昼光の条件下で理想的な肌色であり、他方は、人工光の条件下で理想的な肌色である。一部の実施形態のアプリケーションは、画像が昼光の下で取り込まれていたか、又は人工光の下で取り込まれていたかを検出するために、画像に対して分析を実行し、この操作に関して、対応する理想的な肌色を選択する。
【０２８３】
このアプリケーションは、ＹＣＣ色空間４０００内部で、理想的な肌色４０９０を特定する。次いで、このアプリケーションは、理想的な肌色値４０９０と取得された色値４０８０との差異に基づいて、色空間変換を決定する。一部の実施形態では、この色空間変換は、色空間４０００内の各色を、歪められた色空間内の別の色にマッピングする。この色空間変換は、全ての角度から白／黒の軸４０１０に向けて、本質的に色空間を圧縮する方式で、色値を調整する。換言すれば、このアプリケーションは、より高い彩度を有する色値（すなわち、白／黒の軸４０１０から、より遠く離れた色値）に対して、より大きい調整を実行し、より低い彩度を有する色値（すなわち、白／黒の軸４０１０に、より近接する色値）に対して、より小さい調整を実行する。一部の実施形態では、このアプリケーションは、白／黒の軸４０１０に沿って位置する色値（すなわち、種々の濃淡の灰色）を調整しない。
【０２８４】
図４０の色空間４００５は、この色空間変換によって色空間４０００が変換された後の、色空間を表す。図示のように、色空間４０００内の色４０８０は、色空間４００５内の色４０８５にマッピングされ、色空間４０００内の色４０７０は、色空間４００５内の色４０７５にマッピングされ、色空間４０００内の別の色４０６２は、色空間４００５内の色４０６５にマッピングされる。図示のように、色４０６２は、色空間４０００内の色４０７０よりも、垂直軸４０１０から遠く離れている。それゆえ、色４０６２は、色４０７０よりも大きい距離（すなわち、より大きい色調整）で引き寄せられる。一部の実施形態では、このアプリケーションは、この色空間変換を画像内の各画素に適用することによって、選択された場所に基づいて、画像の肌色バランスを調整する。
【０２８５】
カスタム肌色バランスコントロール３９２５は、多くの利益を提供する。それらの利益のうちの１つは、ユーザが、肌色バランス操作の対象とするための、画像内の肌色の領域を（特に、画像内に２人以上の人物が存在する場合に）指定することにより、その選択された肌色が、理想的な肌色に調整されることを可能にする能力である。カスタム肌色バランスコントロール３９２５の別の利益は、図３を参照して上述された肌の色調ＵＩコントロール３５６、並びに図２０を参照して上述された画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０に関連する。
【０２８６】
図６及び図２０を参照して上述されたように、肌の色調ＵＩコントロール３５６並びに画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０は、定義された肌の色調に基づいて画像の色温度を調整することによって、肌の色調を改善する。一部の実施形態では、このアプリケーションは、肌の色調を、色空間内部の色値の範囲とするように定義する。上述のように、その色値の範囲は、人の平均の肌の色調を対象とするように、広範に定義される。しかしながら、画像が取り込まれた種々の条件（例えば、照明条件、色かぶりなど）により、画像内の対象となる人物の顔の色は、アプリケーションによって肌の色調として定義された色値の範囲内に、収まらない場合がある。対象となる人物とは、ユーザが、画像内の対象として考える人物である。その場合には、このアプリケーションは、幾つかの他の対象物（例えば、対象となる人物以外の人々の顔）の色に基づいて、画像の色値を調整することができる。カスタム肌色バランスＵＩコントロール３９２５は、画像内の対象となる人物の顔をユーザが指定することを可能にすることにより、ユーザが、肌の色調ＵＩコントロール３５６あるいは画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０を操作する場合、（１）対象となる人物の顔の色が、バランス調整され（すなわち、理想的な顔の色になるように調整され）、（２）画像の色温度が、対象となる人物の顔の色に基づいて調整される。具体的には、ユーザが、画像に対して肌色バランス操作を実行した後には、肌の色調として予め定義された色値の範囲を使用する代わりに、このアプリケーションは、画像上の全ての後続の肌の色調調整に関する肌の色調として、その理想的な肌色を使用する。
【０２８７】
図４１は、肌の色調ＵＩコントロール３５６を使用して、画像内の全ての顔ではなく、一部のみの顔の色を調整する実施例を示す。具体的には、図４１は、この肌の色調調整操作を、４つの異なるステージ４１０５、４１１０、４１１５、及びステージ４１２０で示す。
【０２８８】
第１ステージ４１０５は、図３９の第１ステージ３９０５と同一である。図示のように、ユーザは、画像表示領域３４５内に表示するための画像３９５５を選択している。上述のように、画像３９５５は、前景に立っている人物３９３０、及び背景に立っている別の人物３９３５の写真である。この実施例では、前景に立っている人物３９３０が、対象となる人物である。画像３９５５が取り込まれた条件（例えば、照明条件、色かぶりなど）により、２人の人物の顔の色は、極めて異なるように見える。具体的には、人物３９３５の顔色は、アプリケーションによって肌の色調として定義された色値の範囲内に収まるが、人物３９３０の顔色は、アプリケーションによって肌の色調として定義された色値の範囲から外れる。画像３９５５はまた、画像の右側に、山及び海も示す。
【０２８９】
図示のように、ユーザは、選択可能ＵＩ項目３４２の強調表示によって示されるように、画像３９５５の色を調整するために、ツールバー３４０から選択可能ＵＩ項目３４２を選択している。第２ステージ４１１０は、肌の色調ＵＩコントロール３５６の強調表示によって示されるように、ユーザが肌の色調ＵＩコントロール３５６を選択した後の、ＧＵＩ３００を示す。肌の色調ＵＩコントロール３５６の選択は、肌の色調ＵＩコントロール３５６を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、肌の色調ＵＩコントロール３５６にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【０２９０】
第３ステージ４１１５は、ユーザが、矢印４１２５によって示されるように、肌の色調ＵＩコントロール３５６のつまみを右に移動させることによって、画像の肌の色調の改善を開始した後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、肌の色調ＵＩコントロール３５６のつまみを移動させることができる。この肌の色調ＵＩコントロール３５６に対する調整に基づいて、アプリケーションは、画像３９５５の全域にわたる斜線によって示されるように、予め定義された肌の色調に基づいて、画像３９５５の色温度を調整する。
【０２９１】
第４ステージ４１２０は、ユーザが、矢印４１３０によって示されるように、肌の色調ＵＩコントロール３５６のつまみを更に右に移動させることによって、画像の肌の色調を更に調整した後の、ＧＵＩ３００を示す。図示のように、このステージ４１２０での画像３９５５は、画像３９５５の全域にわたる、より高密度の斜線によって示されるように、第３ステージ４１１５での画像よりも、更に調整されて示される。
【０２９２】
図４１に示す実施例で示されるように、この画像の色は、対象となる人物の顔の色が、アプリケーションによって予め定義された色値の範囲内に収まり得ないため、単に肌の色調ＵＩコントロール３５６あるいは画像上ＵＩコントロール２０２５及び画像上ＵＩコントロール２０３０を使用することのみによっては、対象となる人物の肌色に基づいて調整することができない。図４２は、図４１で実行されたものと同じ操作を示すが、ただし、ユーザは、画像の肌の色調を調整する前に、肌色バランスＵＩツール３９２５を使用して、前景の人物３９３０の顔を選択している。具体的には、図４２は、この肌の色調調整操作を、４つの異なるステージ４２０５、４２１０、４２１５、及びステージ４２２０で示す。
【０２９３】
第１ステージ４２０５は、図４２の第４ステージ４１２０と同一である。図示のように、ユーザは、肌色バランスＵＩコントロール３９２５を使用することによって、肌色バランス操作を完了したところである。具体的には、ユーザは、肌色バランスＵＩコントロール３９２５を使用して、この肌色バランス操作のために、前景の人物３９３０の顔を選択した。結果として、人物３９３０の顔の色は、この画像によって定義される理想的な肌色に調整されている。
【０２９４】
第２ステージ４２１０は、肌の色調ＵＩコントロール３５６の強調表示によって示されるように、ユーザが肌の色調ＵＩコントロール３５６を選択した後の、ＧＵＩ３００を示す。肌の色調ＵＩコントロール３５６の選択は、肌の色調ＵＩコントロール３５６を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、又は、肌の色調ＵＩコントロール３５６にカーソルを置き、入力を提供すること（例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど）によって、実行することができる。
【０２９５】
第３ステージ４２１５は、ユーザが、矢印４２２５によって示されるように、肌の色調ＵＩコントロール３５６のつまみを右に移動させることによって、画像の肌の色調の調整を開始した後の、ＧＵＩ３００を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること（又は、カーソルをドラッグすること）によって、肌の色調ＵＩコントロール３５６のつまみを移動させることができる。ユーザは、画像に対して肌色バランス操作を実行しているため、このアプリケーションは、画像３９５５の色温度を調整するために、通常の肌の色調として定義されている値の範囲を使用する代わりに、その理想的な肌の色調として定義された値の範囲を使用する。肌の色調ＵＩコントロール３５６を通じたユーザの入力の結果として、画像の色値は、画像３９５５の全域にわたる４５度の斜線によって示されるように、前景の人物の顔の色に基づいて調整されている。
【０２９６】
第４ステージ４２２０は、ユーザが、矢印４２３０によって示されるように、肌の色調ＵＩコントロール３５６のつまみを更に右に移動させることによって、画像の肌の色調を更に改善した後の、ＧＵＩ３００を示す。図示のように、このステージ４２２０での画像３９５５は、画像３９５５の全域にわたる、より高密度の４５度の斜線によって示されるように、第３ステージ４２１５での画像よりも、更に調整されて示される。
【０２９７】
上述の図に示される画像編集アプリケーションのＧＵＩは、その画像編集アプリケーションが実行される装置が、そのＧＵＩを表示するための十分に大きい画面を有するという仮定の下で示されている。しかしながら、画像編集アプリケーションが実行される装置のうちの一部は、ＵＩ項目を、それらの項目がより大きい装置のより大きい画面内に表示される方式で表示するには、画面サイズが限定されている場合がある。また、より大きい装置のより大きい画面も、その装置が異なる向き（例えば、縦長式）で保持される場合、限定的であると見なされる可能性がある。一部の実施形態では、画像編集アプリケーションは、異なる時間インスタンスで異なるＵＩ項目の異なるセットを表示することにより、この限定的な画面空間に適応する。
【０２９８】
図４３は、一部の実施形態のＧＵＩ１２００を通じて、色バランスツールのセットを呼び出す実施例を、３つの異なるステージ４３０１、４３０２、及びステージ４３０３で概念的に示す。第１ステージ４３０１は、図１２の第６ステージ１２０６と同一である。図示のように、ＧＵＩ１２００内のツールナビゲーションペイン１２２５は、色調整ツールのセット１２６０を含む。この色調整ツールのセット１２６０は、色バランスツールのセットを呼び出すためのＵＩ項目１２７５を含む。
【０２９９】
第２ステージ４３０２は、ユーザがＵＩ項目１２７５を選択していることを示す。一部の実施形態では、ユーザは、ＵＩ項目１２７５を表示する、タッチ又はニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること（例えば、指を置く、指さす、又は指をタップすること）によって、ＵＩ項目１２７５を選択することができる。この選択の結果として、第３ステージ４３０３で示すように、色バランスツールのセットを表すＵＩ項目４３１５のセットが、ＧＵＩ１２００上に出現する。一部の実施形態では、それらのＵＩ項目のセットは、この第３ステージ４３０３で示すように、ＧＵＩ１２００全体にわたって並べられる。他の実施形態では、ＵＩ項目４３１５のセットは、画面の一部分のみを占めることにより、ユーザは依然として、ＧＵＩ上の画像を閲覧することができる。本明細書では示されないが、ユーザは、ＵＩ項目４３１５のうちの１つを選択することによって、（カスタムホワイトバランスツール及びカスタム顔バランスツールを含めた）色バランスツールのうちの、任意の１つを呼び出すことができる。
【０３００】
図４４は、図４１及び図４２で示されるように、画像に対して色バランス操作を実行するためのプロセス４４００を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、色バランスツールの選択を（４４０５で）受け取ることによって開始する。一部の実施形態では、この色バランスツールは、カスタムホワイトバランスツール又はカスタム肌色バランスツールとすることができる。他の実施形態は、更なる色バランスツールを提供することができる。
【０３０１】
次に、このプロセスは、画像上の場所を選択するための色バランスＵＩコントロールを、画像上に（４４１０で）表示する。一部の実施形態では、このプロセスは、画像上のデフォルト領域（例えば、画像の中央）に、色バランスＵＩコントロールを表示する。一部の他の実施形態では、このプロセスは、検出アルゴリズム（例えば、顔検出アルゴリズム）を実行して、特定の特徴部（例えば、人の顔）に対応する、画像上の領域内に、色バランスＵＩコントロールを配置する。
【０３０２】
種々の実施形態は、色バランスＵＩコントロールを、種々の方式で実装する。一部の実施形態では、色バランスＵＩコントロールは、閉じた境界線（例えば、矩形、楕円形など）を含み、その閉じた境界線の内部に、画像上の場所を正確に示すための指標を有する。一部の実施形態では、色バランスＵＩコントロールは、図３９の色バランスＵＩコントロール３９２５のように出現することができる。これらの実施形態の一部では、色バランスＵＩコントロールはまた、閉じた境界線内部にある画像の部分をズームインする（すなわち、拡大する）。このズームインされたバージョンは、画像上の場所を選択する際の、より優れた精度を提供する。
【０３０３】
次いで、このプロセスは、色バランスＵＩコントロールによって示される場所に基づいて、画像の色バランスを（４４１５で）調整する。一部の実施形態では、この調整は、選択された場所に対応する画素の色値を、予め定義された特定の色値のセット（例えば、白色に関する色値、灰色に関する色値、予め定義された理想的な肌の色調に関する色値）に変更するための、アルゴリズム又は数学的方程式を定義することを伴う。次いで、このプロセスは、画像内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。
【０３０４】
一部の実施形態では、このプロセスは、色バランスＵＩコントロールの閉じた境界線の外側にある画像の部分の、調整済みバージョンを表示することによって、調整された画像のプレビューを提供する。これらの実施形態では、色バランスＵＩコントロールの閉じた境界線の内側の画像の部分は、その画像の編集済みバージョンと未編集バージョンとの差異を示すために、未変更のままで維持される。
【０３０５】
次に、このプロセスは、色バランスＵＩコントロールの、いずれかの移動が受け取られているか否かを（４４２０で）判定する。色バランスＵＩコントロールの移動が受け取られる場合には、このプロセスは、その色バランスＵＩコントロールの新たな場所に基づいて、画像の色バランスを（４４２５で）再調整する。このプロセスは、それ以上移動が受け取られなくなるまで、操作４４２０〜４４２５を繰り返す。色バランスＵＩコントロールに対する移動が受け取られない場合には、このプロセスは終了する。
【０３０６】
図４５は、画像に対して色バランス操作を実行するためのプロセス４５００を、概念的に示す。一部の実施形態では、プロセス４５００は、ユーザが色バランスＵＩコントロールを通じて画像上の場所を選択した後の、プロセス４４００の操作４４１５及び操作４４２５の間に、画像編集アプリケーションによって実行される。このプロセスは、画像上の選択された場所に対応する画素を（４５０５で）取得することによって開始する。次いで、このプロセスは、取得された画素に関する、色空間内部の望ましい色を（４５１０で）特定する。一部の実施形態では、ユーザが、プロセス４４００の操作４４０５でカスタムホワイトバランスコントロールツールを選択している場合、このプロセスは、色空間内部で、取得された画素の色に最も近い灰色を特定する。この灰色を特定する操作は、図３８を参照して上述されている。ユーザが、プロセス４４００の操作４４０５でカスタム肌色バランスツールを選択している場合、このプロセスは、色空間内の、取得された画素の色に最も近い、予め定義された理想的な肌色を特定する。一部の実施形態では、このアプリケーションは、種々の条件に関する、予め定義された理想的な肌色の幾つかのセット（例えば、昼光に関する理想的な肌色のセット、及び人工光に関する理想的な肌色のセット）を有する。これらの実施形態では、プロセスは、画像が取り込まれた条件を判定するための分析を実行し、対応する理想的な肌色を特定する。
【０３０７】
次に、このプロセスは、取得された画素の色及び特定された色に基づいて、色空間変換を（４５１５で）決定する。一部の実施形態では、この色調整操作は、特定の色変換アルゴリズム又は数学的方程式を伴う。色調整操作を決定した後、このプロセスは、画像の全ての画素に、その色空間変換を（４５２０で）適用する。次いで、このプロセスは終了する。
【０３０８】
図４６は、画像の色バランス調整操作を実行する、一部の実施形態の画像編集アプリケーション４６００を示す。一部の実施形態では、画像編集アプリケーション４６００は、プロセス４４００及びプロセス４５００を実行する。図４６に示すように、画像編集アプリケーション４６００は、画像プロセッサ４６１０、画像プレビューモジュール４６１５、色空間変換ジェネレータ４６２５、コンテンツ分析モジュール４６４０、及び色調整モジュール４６３０を含む。
【０３０９】
ＵＩモジュール４６０５が、色バランスツール（例えば、カスタムホワイトバランスツール、カスタム肌色バランスツールなど）のユーザの選択を受け取ると、ＵＩモジュール４６０５は、その選択の情報を画像プロセッサ４６１０に渡す。次いで、この色バランスＵＩコントロールモジュール４６１０は、画像上に色バランスＵＩコントロールを表示する。一部の実施形態では、画像プロセッサ４６１０は、各画像に関するデフォルトの場所に（例えば、画像の中央に）、色バランスＵＩコントロールを表示する。一部の他の実施形態では、色バランスＵＩコントロールモジュール４６１０は、画像に対して特徴検出操作（例えば、顔検出操作）を実行するために、コンテンツ分析モジュール４６４０に画像を送り、特徴が検出される場所に（例えば、画像上の人の顔に）色バランスＵＩコントロールを表示する。次いで、画像プロセッサ４６１０は、その色バランスＵＩコントロールの場所に対応する画素の色値を取得し、その色値についての情報を、色空間変換ジェネレータ４６２５に渡す。
【０３１０】
一部の実施形態では、色空間変換ジェネレータ４６２５は、図４５のプロセス４５００を実行する。具体的には、色空間変換ジェネレータ４６２５は、色バランスＵＩコントロールの場所に対応する画素の色値を取得する。次いで、色空間変換ジェネレータは、ユーザによって選択された色バランスツールに関連付けられている設定された基準色（例えば、灰色、理想的な肌色など）を特定する。色空間変換ジェネレータ４６２５は、画像内の画素の色値を、その特定され設定された基準色に変更する色調整を決定する。次いで、色空間変換ジェネレータ４６２５は、決定された色調整に基づいて、色空間変換を生成する。一部の実施形態では、この色空間変換は、決定された色調整に基づいて生成される、Ｍ×Ｍ行列（例えば、３×３行列）である。一部の実施形態では、この色空間変換は、色空間内部で定義された各色を取得し、決定された色値調整を使用して異なる色を出力する。
【０３１１】
次いで、色空間変換ジェネレータ４６２５は、生成された色空間変換を、画像プロセッサ４６１０に渡す。次いで、画像プロセッサ４６１０は、画像及び色空間変換を、色調整エンジン４６３０に送る。この色調整エンジンは、画像内の全ての画素に色空間変換を適用し、その調整された画像を、画像プロセッサ４６１０に送り返す。画像プロセッサは、メディア記憶装置４６３５内に、その調整された画像を記憶させる。
【０３１２】
一部の実施形態では、この画像編集アプリケーションは、編集済み画像のリアルタイムのプレビューをユーザに提供する。これらの実施形態では、画像プロセッサ４６１０は、画像プレビューモジュール４６１５に、編集済み画像を送る。種々の実施形態は、種々の技術を使用して、ユーザにプレビューを提供する。一部の実施形態では、画像プレビューモジュール４６１５は、色バランスＵＩコントロールの外側の画像の部分の編集済みバージョンを表示する一方で、色バランスＵＩコントロールの内側の画像の部分の未編集バージョンを表示する。このように、ユーザは、編集済みバージョンと未編集バージョンとの差異を、リアルタイムで容易に視認することができる。他の実施形態では、色バランスＵＩコントロールの内側にある画像の部分のみが編集され、色バランスＵＩコントロールの外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。
【０３１３】
ユーザが、色バランスＵＩコントロールの場所を変更すると、ＵＩモジュール４６０５は、その色バランスＵＩコントロールの新たな場所についての情報を、画像プロセッサ４６１０に渡す。次いで、画像プロセッサ４６１０は、その新たな場所に対応する画素の色値を取得して、その色値を色空間変換ジェネレータ４６２５に渡す。色空間変換ジェネレータ４６２５は、取得された色値に基づいて新たな色空間変換を生成し、その生成された色空間変換を、画像プロセッサ４６１０に送り返す。次いで、画像プロセッサ４６１０は、画像を再調整するために、画像及び色空間変換を色調整エンジン４６３０に送る。色調整エンジン４６３０は、画像に色空間変換を適用し、その調整された画像を画像プロセッサ４６１０に送る。
【０３１４】
ＩＶ．画像閲覧、編集、及び構成アプリケーション
上述の図は、一部の実施形態の画像閲覧、編集、及び構成アプリケーションのＧＵＩの様々な実施例を示したものである。図４７は、画像を閲覧、編集、及び構成するための、一部の実施形態のＧＵＩ４７００の詳細図を示す。ＧＵＩ４７００は、図４８を部分的に参照して説明され、この図４８は、一部の実施形態のアプリケーションによって記憶されるような画像に関する、データ構造４８００を概念的に示す。
【０３１５】
データ構造４８００は、画像ＩＤ４８０５、画像データ４８１０、編集命令４８１５、画像のキャッシュバージョン４８４０、及び画像に関する任意の追加データ４８５０を含む。画像ＩＤ４８０５は、一部の実施形態では、コレクション内に記憶された画像を参照するために、コレクションデータ構造によって使用される、画像に関する一意識別子である。画像データ４８１０は、画像を表示するための、実際のフルサイズの画素データ（例えば、画像又はその符号化バージョン内の各画素に関する、一連の色空間チャネル値）である。一部の実施形態では、このデータは、画像閲覧、編集、及び構成アプリケーションのデータベース内に記憶することができ、又は別のアプリケーションのデータと共に同じ装置上で記憶することができる。一部の実施形態では、この追加的アプリケーションは、この装置上で動作する別の画像構成アプリケーションであり、その上で画像閲覧、編集、及び構成が動作する。
【０３１６】
それゆえ、このデータ構造は、そのアプリケーションに関連付けられているローカルファイルへのポインタ、又は別のアプリケーションのデータベースに問い合わせるために使用することが可能なＩＤを記憶することができる。一部の実施形態では、アプリケーションがジャーナル内の画像を使用するか、又は画像に対して編集を実施すると、アプリケーションは、その画像データを含む画像ファイルのローカルコピーを自動的に作成する。
【０３１７】
編集命令４８１５は、ユーザが画像に適用したあらゆる編集に関連する情報を含む。この方式で、アプリケーションは、そのアプリケーションが、画像の編集済みバージョンからオリジナルに、いつでも容易に戻ることができるように、非破壊形式で画像を記憶する。例えば、ユーザは、画像に彩度の効果を適用して、アプリケーションから退去し、次いで別の機会に、アプリケーションを再び開いて、その効果を除去することができる。これらの命令に記憶された編集は、クロップ及び回転、フル画像露出及び色調整、局所調整、及び特殊効果、並びに、画像の画素に影響を与える他の編集とすることができる。一部の実施形態は、ユーザが、特定の編集のセットのみが適用されている、その画像の種々のバージョンを閲覧することができるように、これらの編集命令を特定の順序で記憶する。
【０３１８】
一部の実施形態では、編集命令４８１５は、編集操作のリスト４８６０として実装される。リスト４８６０は、編集４８６１、４８６２、４８６３、及び編集４８６５などの編集操作を含む。リスト４８６０内の各編集操作は、その編集操作を実施するために必要なパラメータを指定する。例えば、リスト４８６０内の編集操作４８６５は、彩度の効果を適用する、画像に対する編集を、色選択パラメータθを使用して指定する。
【０３１９】
一部の実施形態では、リスト４８６０は、最終的な編集済み画像を作成するためにユーザによって着手された、編集操作のシーケンスを記録する。一部の実施形態では、リスト４８６０は、一部の実施形態が、アプリケーションによって提供される種々の可能な編集に関する特定の順序を定義するため、画像編集アプリケーションが表示のための出力画像を生成するために画像に編集を適用する順序で、編集命令を記憶する。例えば、一部の実施形態は、彩度の効果を、クロップ及び回転、フル画像露出、及び色調整などの他の編集操作よりも遅れて適用されるべき編集操作のうちの１つとして定義する。これらの実施形態のうちの一部の、リスト４８６０は、彩度の効果に関する編集命令を、他の編集操作（例えば、編集４８６１〜１３６３）のうちの一部よりも遅れて適用される位置（すなわち、編集４８６５）に記憶する。
【０３２０】
キャッシュ画像バージョン４８４０は、よくアクセス及び表示される画像のバージョンを格納するため、アプリケーションは、これらの画像をフルサイズの画像データ４８１０から繰り返し生成する必要がない。例えば、このアプリケーションは、多くの場合、画像に関するサムネイル、並びに表示解像度バージョン（例えば、画像表示領域用に適合されたバージョン）を記憶する。一部の実施形態のアプリケーションは、編集が適用されるたびに、その画像に関する新たなサムネイルを生成し、以前のサムネイルと置き換える。一部の実施形態は、オリジナルの画像、及び画像の１つ以上の編集済みバージョンを含めた、複数の表示解像度バージョンを記憶する。
【０３２１】
最後に、画像データ構造４８００は、このアプリケーションが画像と共に記憶することが可能な追加データ４８５０（例えば、顔の場所及びサイズなど）を含む。一部の実施形態では、この追加データとしては、Ｅｘｃｈａｎｇｅａｂｌｅ  ｉｍａｇｅ  ｆｉｌｅ  ｆｏｒｍａｔ（Ｅｘｉｆ）データ、キャプションデータ、共有画像データ、画像上のタグ、又は任意の他のタイプのデータを挙げることができる。Ｅｘｉｆデータは、カメラ設定、ＧＰＳデータ、タイムスタンプなどの、画像を取り込んだカメラによって記憶される様々な情報を含む。キャプションとは、ユーザが入力した、その画像の説明である。タグとは、アプリケーションにより、ユーザが、お気に入り、フラグ付き、非表示などとして画像をマーク付けすることなどの、画像と関連付けることが可能となる、情報である。
【０３２２】
画像データ構造４８００は、画像に関して必要とされる情報を記憶するためにアプリケーションが使用することができる、１つの可能なデータ構造に過ぎないことが、当業者には認識されるであろう。例えば、異なる実施形態では、更なる情報、又はより少ない情報を記憶する場合、異なる順番で情報を記憶する場合などがある。
【０３２３】
図４７に戻ると、ＧＵＩ４７００は、サムネイル表示領域４７０５、画像表示領域４７１０、第１のツールバー４７１５、第２のツールバー４７２０、及び第３のツールバー４７２５を含む。サムネイル表示領域４７０５は、選択されたコレクション内の画像のサムネイルを表示する。サムネイルは、フルサイズの画像の小さい表現であり、一部の実施形態では、画像の一部分のみを表す。例えば、サムネイル表示領域４７０５内のサムネイルは、フルサイズの画像のアスペクト比に関わりなく、全て正方形である。サムネイルに使用するための矩形画像の部分を決定するために、このアプリケーションは、その画像のより小さい寸法を特定し、より長い方向の、画像の中心部分を使用する。例えば、１６００×１２００画素の画像の場合、このアプリケーションは、４７００×１２００の正方形を使用する。サムネイルに関する選択部分を更に洗練させるために、一部の実施形態は、（顔検出アルゴリズムを使用して）画像内の全ての顔の中心を特定し、次いで、その場所を使用して、クリッピングされる方向のサムネイル部分の中心に置く。したがって、理論上１６００×１２００の画像内の顔が、全て画像の左側に位置する場合には、このアプリケーションは、両側で２００列を切り捨てるのではなく、左端の４７００列の画素を使用する。
【０３２４】
サムネイルに使用するための画像の部分を決定した後に、画像閲覧アプリケーションは、（例えば、画素混合技術及び他の技術を使用して）その画像の低解像度バージョンを生成する。一部の実施形態のアプリケーションは、画像のキャッシュバージョン４８４０として、画像に関するサムネイルを記憶する。したがって、ユーザがコレクションを選択すると、このアプリケーションは、（コレクションデータ構造を通じて）そのコレクション内の画像の全てを特定して、サムネイル表示領域内での表示のために、各画像データ構造内のキャッシュされたサムネイルにアクセスする。
【０３２５】
ユーザは、（例えば、上述の様々なタッチ相互作用を通じて、又は他のユーザ入力相互作用を通じて）サムネイル表示領域内の１つ以上の画像を選択することができる。選択されたサムネイルは、強調表示、又は他の選択の表示を使用して表示される。サムネイル表示領域４７０５内で、サムネイル４７３０が選択される。更には、図示のように、一部の実施形態のサムネイル表示領域４７０５は、フラグ付けされた（例えば、「はい」に設定されたフラグに関するタグを有する）、コレクション内の幾つかの画像を示す。一部の実施形態では、このテキストは、フラグ付き画像のサムネイルのみを表示するために選択可能である。
【０３２６】
アプリケーションは、選択された画像を、対応するサムネイルよりも大きい解像度で、画像表示領域４７１０内に表示する。それらの画像は、ディスプレイ装置よりも高い解像度を有する場合が多いため、典型的には、画像のフルサイズでは表示されない。それゆえ、一部の実施形態のアプリケーションは、画像表示領域内に適合するように設計された、画像のキャッシュバージョン４８４０を記憶する。画像表示領域４７１０内の画像は、フルサイズの画像のアスペクト比で表示される。１つの画像が選択されると、このアプリケーションは、画像のいずれの部分も切り捨てることなく、画像表示領域以内に可能な限り大きく画像を表示する。複数の画像が選択される場合、このアプリケーションは、それらの画像が異なるアスペクト比を有する場合であっても、各画像に関してほぼ同じ画素数を使用することによって、それらの視覚的重み付けを維持するような方式で画像を表示する。
【０３２７】
第１のツールバー４７１５は、タイトル情報（例えば、ＧＵＩ内に示されるコレクションの名前、ユーザが現在選択されている画像に添付したキャプションなど）を表示する。更には、ツールバー４７１５は、ＧＵＩ項目４７３５〜１２３８の第１のセット、及びＧＵＩ項目４７４０〜１２４３の第２のセットを含む。
【０３２８】
ＧＵＩ項目の第１のセットは、「戻る」ボタン４７３５、グリッドボタン４７３６、ヘルプボタン４７３７、及び取り消しボタン４７３８を含む。「戻る」ボタン４７３５により、ユーザは、コレクション構成ＧＵＩにナビゲートして戻ることが可能となり、このコレクション構成ＧＵＩから、ユーザは、画像の種々のコレクション（例えば、アルバム、イベント、ジャーナルなど）を選択することができる。グリッドボタン４７３６の選択により、アプリケーションは、（例えば、スライドアニメーションを介して）サムネイル表示領域を、ＧＵＩ上に移動させるか、又はＧＵＩから移動させる。一部の実施形態では、ユーザはまた、スワイプジェスチャを介して、サムネイル表示領域を、ＧＵＩ上にスライドさせるか、又はＧＵＩからスライドさせることもできる。ヘルプボタン４７３７は、ユーザに関してアクティブな現在のツールのセットを特定して、それらのツールを簡潔に説明する、それらのツールに関するヘルプ表示をユーザに提供する、コンテキストに応じたヘルプ機能をアクティブ化する。一部の実施形態では、このヘルプ表示は、ツールについての追加情報にアクセスするために選択可能である。取り消しボタン４７３８の選択により、このアプリケーションは、画像に対する最新の編集を、その編集がクロップ、色調整などであるか否かに関わらず除去する。この取り消しを実行するために、一部の実施形態は、画像と共に記憶された、編集命令４８１５のセットからの最新の命令を除去する。
【０３２９】
ＧＵＩ項目の第２のセットは、共有ボタン４７４０、情報ボタン４７４１、「オリジナルを示す」ボタン４７４２、及び編集ボタン４７４３を含む。共有ボタン４７４０により、ユーザは、多種多様の方法で、画像を共有することが可能となる。一部の実施形態では、とりわけ、ユーザは、同じネットワーク（例えば、ＷｉＦｉ（登録商標）又はＢｌｕｅｔｏｏｔｈ（登録商標）ネットワーク）上の別の互換装置に、選択された画像を送信して、画像ホスティングウェブサイト又はソーシャルメディアウェブサイトに画像をアップロードし、選択された画像のセットから、ジャーナル（すなわち、追加のコンテンツを追加することが可能な、配置構成された画像の提示）を作成することができる。
【０３３０】
情報ボタン４７４１は、１つ以上の選択された画像についての追加情報を表示する、表示領域をアクティブ化する。アクティブ化された表示領域内に表示される情報は、画像に関して記憶されたＥｘｉｆデータ（例えば、カメラ設定、タイムスタンプなど）の一部又は全てを含み得る。複数の画像が選択される場合、一部の実施形態は、選択された画像の全てに共通であるＥｘｉｆデータのみを表示する。一部の実施形態は、（ｉ）ＧＰＳデータに従って（この情報が利用可能である場合には）、画像が取り込まれた場所を示すマップを表示するため、及び（ｉｉ）任意の写真共有ウェブサイト上の、画像に関するコメントストリームを表示するために、情報表示領域内に追加タブを含む。この情報をウェブサイトからダウンロードするために、アプリケーションは、共有画像データと共に画像に関して記憶された、画像に関するオブジェクトＩＤを使用し、この情報をウェブサイトに送信する。コメントストリーム、及び、場合によっては追加情報がウェブサイトから受信され、ユーザに表示される。
【０３３１】
「オリジナルを示す」ボタン４７４２により、ユーザは、画像のオリジナルバージョンと、その画像の現在の編集済みバージョンとを、切り替えることが可能となる。ユーザがこのボタンを選択すると、アプリケーションは、編集命令４８１５の一切が適用されていない、その画像のオリジナルバージョンを表示する。一部の実施形態では、適切なサイズの画像が、その画像のキャッシュバージョン４８４０のうちの１つとして記憶されることにより、その画像に素早くアクセス可能となる。ユーザが、ボタン４７４２を再び選択すると、このアプリケーションは、編集命令４８１５が適用されている、その画像の編集済みバージョンを表示する。
【０３３２】
編集ボタン４７４３により、ユーザは、編集モードに入るか、又は編集モードから出ることが可能となる。ユーザが、ツールバー４７２０内の編集ツールのセットのうちの１つを選択している場合、図４７に示されるように、編集ボタン４７４３は、閲覧及び構成モードにユーザを戻す。ユーザが、閲覧モードにある間に、編集ボタン４７４３を選択すると、このアプリケーションは、ツールバー４７２０内に示される順序で最後に使用された編集ツールのセットに戻る。すなわち、ツールバー４７２０内の項目は、特定の順序で配置構成され、編集ボタン４７４３は、選択された画像に対して編集が行われた、それらの項目の右端をアクティブ化する。
【０３３３】
ツールバー４７２０は、上述のように、左から右に特定の順序で配置構成された、５つの項目４７４５〜１２４９を含む。クロップ項目４７４５は、ユーザが、歪んだ画像を位置調整して、画像の不必要な部分を除去することを可能にする、クロップ及び回転ツールをアクティブ化する。露出項目４７４６は、ユーザが、画像の黒点、シャドウ、コントラスト、明度、ハイライト、及び白色点を修正することを可能にする、露出ツールのセットをアクティブ化する。一部の実施形態では、この露出ツールのセットは、種々の組み合わせで協働して画像の色調属性を修正する、スライダのセットである。色項目４７４７は、ユーザが、彩度及び自然な彩度、並びに、色別の彩度（例えば、青色画素又は緑色画素）及びホワイトバランスを修正することを可能にする、色ツールのセットをアクティブ化する。一部の実施形態では、これらのツールの一部は、スライダのセットとして提示される。ブラシ項目４７４８は、ユーザが、画像に対する修正を局所化することを可能にする、補正ツールのセットをアクティブ化する。このブラシを使用して、ユーザは、画像の上で擦るアクションを実行することによって、赤目及び汚点を除去し、画像の局所化された部分に、彩度及び他の特徴を適用するか、若しくは除去することができる。最後に、効果項目４７４９は、ユーザが画像に適用することが可能な、特殊効果のセットをアクティブ化する。これらの効果としては、デュオトーン効果、粗い粒子効果、グラデーション、ティルトシフト、非写実的彩度低下効果、グレースケール効果、様々なフィルタなどが挙げられる。一部の実施形態では、このアプリケーションは、ツールバー４７２５から扇形に展開する項目のセットとして、これらの効果を提示する。
【０３３４】
上述のように、ＵＩ項目４７４５〜１２４９は、特定の順序で配置される。この順序は、ユーザが、これらの５つの異なるタイプの編集を最もよく適用する順序に従う。したがって、編集命令４８１５は、一部の実施形態では、この同じ順序で記憶される。ユーザが、項目４７４５〜１２４９のうちの１つを選択すると、一部の実施形態は、選択されたツールの左側のツールからの編集のみを、表示された画像に適用する（しかしながら、他の編集は、命令セット４８１５内に記憶されたまま維持される）。
【０３３５】
ツールバー４７２５は、ＧＵＩ項目４７５０〜１２５４のセット、並びに設定項目４７５５を含む。自動補正項目４７５０は、画像に対する補正編集（例えば、明らかな赤目の除去、色バランス調整など）を自動的に実行する。回転ボタン４７５１は、任意の選択された画像を回転させる。一部の実施形態では、この回転ボタンが押されるたびに、画像は、特定の方向に９０度回転する。自動補正は、一部の実施形態では、命令セット４８１５内に置かれる、所定の編集命令のセットを含む。一部の実施形態は、画像の分析を実行し、次いで、その分析に基づいて命令のセットを定義する。例えば、自動補正ツールは、画像内の赤目を検出することを試みるが、赤目が検出されない場合には、赤目を補正するための命令が生成されることはない。同様に、自動色バランス調整は、画像の分析に基づくものとなる。回転ボタンによって生成される回転もまた、編集命令として記憶される。
【０３３６】
フラグボタン４７５２は、任意の選択された画像に、フラグ付きとしてタグを付ける。一部の実施形態では、コレクションのフラグ付き画像は、いずれのフラグなし画像も伴うことなく表示することができる。お気に入りボタン４７５３により、ユーザは、任意の選択された画像を、お気に入りとしてマーク付けすることが可能となる。一部の実施形態では、このことにより、その画像は、お気に入りとしてタグ付けされ、また、その画像は、お気に入り画像のコレクションにも追加される。非表示ボタン４７５４により、ユーザは、画像を非表示としてタグ付けすることが可能となる。一部の実施形態では、非表示画像は、サムネイル表示領域内には表示されず、かつ／又は、ユーザが画像表示領域内でコレクションの画像を循環させる際にも表示されない。図４８を参照して上述されたように、これらの特徴のうちの多くは、画像データ構造内にタグとして記憶される。
【０３３７】
最後に、設定ボタン４７５５は、現在アクティブであるツールセットに応じて異なるメニューオプションを提供する、コンテキストに応じたメニューをアクティブ化する。例えば、閲覧モードでは、一部の実施形態のメニューは、新たなアルバムを作成するためのオプション、アルバム用の主要写真を設定するためのオプション、写真間で設定をコピーするためのオプション、及び他のオプションを提供する。種々の編集ツールのセットがアクティブである場合、このメニューは、特定のアクティブなツールセットに関連するオプションを提供する。
【０３３８】
画像閲覧及び編集ＧＵＩ４７００は、画像閲覧、編集及び構成アプリケーションに関する多くの可能なグラフィカルユーザインターフェースのうちの１つの実施例に過ぎないことが、当業者には認識されるであろう。例えば、様々な項目は、異なる領域内に、又は異なる順序で配置することが可能であり、一部の実施形態は、追加的な機能性又は異なる機能性を有する項目を含み得る。一部の実施形態のサムネイル表示領域は、対応するフルサイズの画像のアスペクト比に一致するサムネイルなどを表示することができる。
【０３３９】
Ｖ．電子システム
上述の機能及びアプリケーションのうちの多くは、コンピュータ可読記憶媒体（コンピュータ可読媒体とも称される）上に記録される命令のセットとして指定される、ソフトウェアプロセスとして実装される。これらの命令が、１つ以上の計算又は処理ユニット（例えば、１つ以上のプロセッサ、プロセッサのコア、又は他の処理ユニット）によって実行される場合、それらの命令は、処理ユニットに、それらの命令で示されるアクションを実行させる。コンピュータ可読媒体の例としては、ＣＤ−ＲＯＭ、フラッシュドライブ、ランダムアクセスメモリ（ＲＡＭ）チップ、ハードドライブ、消去可能プログラム可能な読出し専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）などが挙げられるが、これらに限定されない。コンピュータ可読媒体は、無線で、若しくは有線接続を介して伝達される、搬送波及び電子信号を含まない。
【０３４０】
本明細書では、用語「ソフトウェア」は、プロセッサによって処理するためにメモリ内に読み込むことが可能な、読み出し専用メモリ内に存在するファームウェア、又は磁気記憶装置内に記憶されたアプリケーションを含むものとする。また、一部の実施形態では、複数のソフトウェア発明は、別個のソフトウェア発明のまま維持しつつ、より大きいプログラムの下位区分として実装することもできる。一部の実施形態では、複数のソフトウェア発明はまた、個別のプログラムとして実装することもできる。最後に、本明細書で説明されるソフトウェア発明を一体となって実装する、個別のプログラムのいずれの組み合わせも、本発明の範囲内である。一部の実施形態では、ソフトウェアプログラムは、１つ以上の電子システム上で動作するようにインストールされる場合、そのソフトウェアプログラムの動作を遂行及び実行する、１つ以上の特定のマシン実装を定義する。
【０３４１】
Ａ．モバイル装置
一部の実施形態の画像編集及び閲覧アプリケーションは、モバイル装置上で動作する。図４９は、そのようなモバイルコンピューティング装置のアーキテクチャ４９００の実施例である。モバイルコンピューティング装置の例としては、スマートフォン、タブレット、ラップトップなどが挙げられる。図示のように、モバイルコンピューティング装置４９００は、１つ以上の処理ユニット４９０５、メモリインターフェース４９１０、及び周辺装置インターフェース４９１５を含む。
【０３４２】
周辺装置インターフェース４９１５は、カメラサブシステム４９２０、無線通信サブシステム４９２５、オーディオサブシステム４９３０、Ｉ／Ｏサブシステム４９３５などを含めた、様々なセンサ及びサブシステムに結合される。周辺装置インターフェース４９１５は、処理ユニット４９０５と様々な周辺装置との間の通信を可能にする。例えば、方向センサ４９４５（例えば、ジャイロスコープ）及び加速度センサ４９５０（例えば、加速度計）は、方向及び加速度機能を容易にするために周辺装置インターフェース４９１５に結合される。
【０３４３】
カメラサブシステム４９２０は、１つ以上の光センサ４９４０（例えば、電荷結合素子（ＣＣＤ）光センサ、相補型金属酸化膜半導体（ＣＭＯＳ）光センサなど）に結合される。光センサ４９４０と結合されたカメラサブシステム４９２０は、画像及び／又は映像データの取り込みなどの、カメラ機能を容易にする。無線通信サブシステム４９２５は、通信機能を容易にするために役立つ。一部の実施形態では、無線通信サブシステム４９２５は、無線周波数受信器及び送信器、並びに光受信器及び送信器（図４９では図示せず）を含む。一部の実施形態のこれらの受信器及び送信器は、ＧＳＭネットワーク、Ｗｉ−Ｆｉネットワーク、Ｂｌｕｅｔｏｏｔｈネットワークなどの１つ以上の通信ネットワークを介して動作するように実装される。オーディオサブシステム４９３０は、音声を出力するために、（例えば、種々の画像操作に関連付けられている種々の音響効果を出力するために）スピーカに結合される。更に、オーディオサブシステム４９３０は、音声認識、デジタル録音などの、音声対応機能を容易にするために、マイクロホンに結合される。
【０３４４】
Ｉ／Ｏサブシステム４９３５は、周辺装置インターフェース４９１５を通じて、ディスプレイ、タッチスクリーンなどの入出力周辺装置と処理ユニット４９０５のデータバスとの間の転送に関与する。Ｉ／Ｏサブシステム４９３５は、入出力周辺装置と処理ユニット４９０５のデータバスとの間の転送を容易にするために、タッチスクリーンコントローラ４９５５及び他の入力コントローラ４９６０を含む。図示のように、タッチスクリーンコントローラ４９５５は、タッチスクリーン４９６５に結合される。タッチスクリーンコントローラ４９５５は、複数のタッチ感応技術のいずれかを使用して、タッチスクリーン４９６５上の接触及び移動を検出する。他の入力コントローラ４９６０は、１つ以上のボタンなどの、他の入力／制御装置に結合される。一部の実施形態は、タッチ相互作用の代わりに、又はそれに加えて、ニアタッチ相互作用を検出することが可能な、ニアタッチ感応スクリーン及び対応するコントローラを含む。
【０３４５】
メモリインターフェース４９１０は、メモリ４９７０に結合される。一部の実施形態では、メモリ４９７０は、揮発性メモリ（例えば、高速ランダムアクセスメモリ）、不揮発性メモリ（例えば、フラッシュメモリ）、揮発性メモリと不揮発性メモリとの組み合わせ、及び／又は任意の他のタイプのメモリを含む。図４９に示すように、メモリ４９７０は、オペレーティングシステム（ＯＳ）４９７２を記憶する。ＯＳ  ４９７２は、基本システムサービスを処理するための命令、及び、ハードウェア依存タスクを実行するための命令を含む。
【０３４６】
メモリ４９７０はまた、１つ以上の追加的装置との通信を容易にするための通信命令４９７４、グラフィカルユーザインターフェース処理を容易にするためのグラフィカルユーザインターフェース命令４９７６、画像関連の処理及び機能を容易にするための画像処理命令４９７８、入力関連（例えば、タッチ入力）の処理及び機能を容易にするための入力処理命令４９８０、オーディオ関連の処理及び機能を容易にするためのオーディオ処理命令４９８２、並びにカメラ関連の処理及び機能を容易にするためのカメラ命令４９８４も含む。上述の命令は、単なる例示であり、メモリ４９７０は、一部の実施形態では、更なる命令及び／又は他の命令を含む。例えば、スマートフォンに関するメモリは、電話関連のプロセス及び機能を容易にするための、電話命令を含み得る。上記で特定された命令は、個別のソフトウェアプログラム又はモジュールとして実装される必要はない。モバイルコンピューティング装置の様々な機能は、１つ以上の信号処理回路及び／又は特定用途向け集積回路を含めた、ハードウェア及び／又はソフトウェアとして実装することができる。
【０３４７】
図４９に示される構成要素は、個別の構成要素として示されるが、２つ以上の構成要素を１つ以上の集積回路内に統合することができる点が、当業者には認識されるであろう。更には、２つ以上の構成要素を、１つ以上の通信バス又は信号線によって、一体に結合することができる。また、これらの機能のうちの多くは、１つの構成要素によって実行されるとして説明されているが、図４９に関連して説明される機能は、２つ以上の集積回路へと分割することができる点が、当業者には理解されるであろう。
【０３４８】
Ｂ．コンピュータシステム
図５０は、本発明の一部の実施形態が実装される、電子システム５０００の別の実施例を概念的に示す。電子システム５０００は、コンピュータ（例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータなど）、電話、ＰＤＡ、又は任意の他の種類の電子装置若しくはコンピューティング装置とすることができる。そのような電子システムは、様々なタイプのコンピュータ可読媒体、及び様々な他のタイプのコンピュータ可読媒体のためのインターフェースを含む。電子システム５０００は、バス５００５、処理ユニット５０１０、グラフィック処理ユニット（ＧＰＵ）５０１５、システムメモリ５０２０、ネットワーク５０２５、読み出し専用メモリ５０３０、永久記憶装置５０３５、入力装置５０４０、及び出力装置５０４５を含む。
【０３４９】
バス５００５は、電子システム５０００の多数の内部装置を通信可能に接続する、全てのシステムバス、周辺装置バス、及びチップセットバスを、一括して表す。例えば、バス５００５は、処理ユニット５０１０を、読み出し専用メモリ５０３０、ＧＰＵ５０１５、システムメモリ５０２０、及び永久記憶装置５０３５と通信可能に結合する。
【０３５０】
これらの様々なメモリユニットから、処理ユニット５０１０は、本発明のプロセスを実行するために、実行するべき命令及び処理するべきデータを取得する。この処理ユニットは、異なる実施形態では、シングルプロセッサ又はマルチコアプロセッサとすることができる。一部の命令は、ＧＰＵ５０１５に渡され、ＧＰＵ５０１５によって実行される。ＧＰＵ５０１５は、処理ユニット５０１０によって提供される、様々な計算をオフロードするか、又は画像処理を補完することができる。一部の実施形態では、そのような機能性は、ＣｏｒｅＩｍａｇｅのカーネルシェーディング言語を使用して提供することができる。
【０３５１】
読み出し専用メモリ（ＲＯＭ）５０３０は、処理ユニット５０１０、及び電子システムの他のモジュールによって必要とされる、静的データ並びに命令を記憶する。一方で、永久記憶装置５０３５は、読み出し及び書き込みメモリ装置である。この装置は、電子システム５０００がオフの場合であっても、命令及びデータを記憶する、不揮発性メモリユニットである。本発明の一部の実施形態は、永久記憶装置５０３５として、大容量記憶装置（磁気若しくは光ディスク、及びその対応するディスクドライブなど）を使用する。
【０３５２】
他の実施形態は、永久記憶装置として、リムーバブル記憶装置（フロッピーディスク、フラッシュメモリ装置など、及びその対応するドライブ）を使用する。永久記憶装置５０３５と同様に、システムメモリ５０２０は、読み出し及び書き込みメモリ装置である。しかしながら、記憶装置５０３５とは異なり、システムメモリ５０２０は、ランダムアクセスメモリなどの、揮発性の読み出し及び書き込みメモリである。システムメモリ５０２０は、実行時にプロセッサが必要とする、命令及びデータのうちの一部を記憶する。一部の実施形態では、本発明のプロセスは、システムメモリ５０２０、永久記憶装置５０３５、及び／又は読み出し専用メモリ５０３０内に記憶される。例えば、一部の実施形態によれば、様々なメモリユニットは、マルチメディアクリップを処理するための命令を含む。これらの様々なメモリユニットから、処理ユニット５０１０は、一部の実施形態のプロセスを実行するために、実行するべき命令及び処理するべきデータを取得する。
【０３５３】
バス５００５はまた、入力装置５０４０及び出力装置５０４５にも接続する。入力装置５０４０により、ユーザは、この電子システムに対して、情報を通信し、かつコマンドを選択することが可能となる。入力装置５０４０としては、英数字キーボード及びポインティング装置（「カーソル制御装置」とも称される）、カメラ（例えば、ウェブカメラ）、音声コマンドを受け取るためのマイクロホン又は同様の装置などが挙げられる。出力装置５０４５は、この電子システムによって生成された画像を表示するか、又は他の方式でデータを出力する。出力装置５０４５としては、プリンタ、及び陰極線管（ＣＲＴ）若しくは液晶ディスプレイ（ＬＣＤ）などのディスプレイ装置、並びにスピーカ又は同様のオーディオ出力装置が挙げられる。一部の実施形態は、入力装置及び出力装置の双方として機能する、タッチスクリーンなどの装置を含む。
【０３５４】
最後に、図５０に示すように、バス５００５はまた、ネットワークアダプタ（図示せず）を通じて、電子システム５０００をネットワーク５０２５にも結合する。この方式で、コンピュータは、コンピュータのネットワーク（ローカルエリアネットワーク（「ＬＡＮ」）、広域ネットワーク（「ＷＡＮ」）、又はイントラネットなど）の一部、又は複数のネットワークのネットワーク（例えばインターネット）の一部とすることができる。電子システム５０００のいずれか又は全ての構成要素を、本発明と共に使用することができる。
【０３５５】
一部の実施形態は、マイクロプロセッサ、機械可読若しくはコンピュータ可読媒体（あるいは、コンピュータ可読記憶媒体、機械可読媒体、又は機械可読記憶媒体とも称される）内にコンピュータプログラム命令を記憶する記憶装置及びメモリなどの、電子構成要素を含む。そのようなコンピュータ可読媒体の一部の例としては、ＲＡＭ、ＲＯＭ、読み出し専用コンパクトディスク（ＣＤ−ＲＯＭ）、記録可能コンパクトディスク（ＣＤ−Ｒ）、書換え可能コンパクトディスク（ＣＤ−ＲＷ）、読み出し専用デジタル多目的ディスク（例えば、ＤＶＤ−ＲＯＭ、２層ＤＶＤ−ＲＯＭ）、様々な記録可能／書換え可能ＤＶＤ（例えば、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷなど）、フラッシュメモリ（例えば、ＳＤカード、ミニＳＤカード、マイクロＳＤカードなど）、磁気及び／又はソリッドステートハードドライブ、読み出し専用記録可能Ｂｌｕ−Ｒａｙ（登録商標）ディスク、超高密度光ディスク、任意の他の光学若しくは磁気媒体、及びフロッピーディスクが挙げられる。コンピュータ可読媒体は、少なくとも１つの処理ユニットによって実行可能であり、かつ様々な操作を実行するための命令のセットを含む、コンピュータプログラムを記憶することができる。コンピュータプログラム又はコンピュータコードの例としては、コンパイラによって作成されるような機械コード、及び、インタープリタを使用して、コンピュータ、電子構成要素、若しくはマイクロプロセッサによって実行される高レベルコードを含むファイルが挙げられる。
【０３５６】
上記の考察は、主に、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサに言及しているが、一部の実施形態は、特定用途向け集積回路（ＡＳＩＣ）又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）などの、１つ以上の集積回路によって実行される。一部の実施形態では、そのような集積回路は、その回路自体に記憶されている命令を実行する。更には、一部の実施形態は、プログラマブルロジックデバイス（ＰＬＤ）、ＲＯＭ、又はＲＡＭデバイス内に記憶されたソフトウェアを実行する。
【０３５７】
本出願の本明細書及びいずれかの特許請求の範囲で使用されるとき、用語「コンピュータ」、「サーバ」、「プロセッサ」、及び「メモリ」は全て、電子装置又は他の技術装置を指す。これらの用語は、人々又は人々のグループを除外する。本明細書の目的上、用語「表示」又は「表示すること」は、電子装置上に表示することを意味する。本出願の本明細書及びいずれかの特許請求の範囲で使用されるとき、用語「コンピュータ可読媒体」及び「機械可読媒体」は、コンピュータによって読み出し可能な形式で情報を記憶する、有形の物理的実体に完全に限定される。これらの用語は、あらゆる無線信号、有線でダウンロードされる信号、及びあらゆる他の一過性の信号を除外する。
【０３５８】
本発明は、数多くの特定の詳細を参照して説明されているが、当業者には、本発明の趣旨から逸脱することなく、他の特定の形式で本発明を具体化することができる点が認識されるであろう。例えば、図の多くは、様々なタッチジェスチャ（例えば、タップ、ダブルタップ、スワイプジェスチャ、プレスアンドホールドジェスチャなど）を示す。しかしながら、図示される操作のうちの多くは、異なるタッチジェスチャ（例えば、タップの代わりのスワイプなど）を介して、又は非タッチ入力によって（例えば、カーソルコントローラ、キーボード、タッチパッド／トラックパッド、ニアタッチ感応スクリーンなどを使用して）実行することが可能である。更に、（図１６、１７、１９、２６、２８、３６、４４、及び図４５を含めた）幾つかの図は、プロセスを概念的に示す。これらのプロセスの具体的な操作は、図示及び説明された厳密な順序では、実行されない場合がある。特定の操作は、１つの連続系列の操作で実行されない場合があり、様々な特定の操作を、様々な実施形態で実行することができる。更には、このプロセスは、幾つかのサブプロセスを使用して、又はより大きいマクロプロセスの一部として、実施することが可能である。したがって、本発明は、前述の例示的な詳細によって限定されるものではなく、むしろ、添付の特許請求の範囲によって定義されるものであることが、当業者には理解されるであろう。
【０３５９】
更には、種々の画像編集操作を実行するために使用される、単一の調整値を設定するためのコントロールは、図３、４、６、７、９、１４、１５、２０、２１、２２、２３、２４、３１、３２、３３、３４、及び図３５では、スライダコントロールとして示される。そのような実施形態のスライダは、そのスライダに関する値を設定するためにスライダに沿ってつまみがスライドされるときに、設定値の視覚的な表示を提供する。しかしながら、一部の実施形態では、それらの図のいずれかで示されるスライダコントロールは、垂直式スライダコントロール、プルダウンメニュー、値エントリボックス、キーボードのキーによってアクティブ化されるインクリメンタルツール、他の範囲関連ＵＩコントロール（例えば、ダイヤル、ボタン、数値フィールドなど）のような、値（例えば、単一の値）を受け取ることが可能な、任意の他のコントロールと置き換えることが可能である。同様に、それらの図のスライダコントロールは、タッチ感応スクリーン上での指ジェスチャ（例えば、１つ以上の指を置くこと、指さすこと、タップすること）で設定されるように表現されるか、又は、それらのスライダコントロールがどのように所定位置に移動されたかが表示されることなく、単純に特定の位置で表示される。図３、４、６、７、９、１４、１５、２０、２１、２２、２３、２４、３１、３２、３３、３４、及び図３５のコントロールはまた、一部の実施形態では、カーソル制御装置（例えば、マウス又はトラックボール）、スタイラス、キーボード、ニアタッチ感応スクリーン付近での指ジェスチャ（例えば、１つ以上の指を置くこと、指さすこと、タップすること）、又は任意の他の制御システムによっても、アクティブ化及び／又は設定することができる点が、当業者には理解されるであろう。したがって、本発明は、前述の例示的な詳細によって限定されるものではなく、むしろ、添付の特許請求の範囲によって定義されるものであることが、当業者には理解されるであろう。
【図１】
0005990600.tif 000002
【図２】
0005990600.tif 000003
【図３】
0005990600.tif 000004
【図４】
0005990600.tif 000005
【図５】
0005990600.tif 000006
【図６】
0005990600.tif 000007
【図７】
0005990600.tif 000008
【図８】
0005990600.tif 000009
【図９】
0005990600.tif 000010
【図１０】
0005990600.tif 000011
【図１１】
0005990600.tif 000012
【図１２】
0005990600.tif 000013
【図１３】
0005990600.tif 000014
【図１４】
0005990600.tif 000015
【図１５】
0005990600.tif 000016
【図１６】
0005990600.tif 000017
【図１７】
0005990600.tif 000018
【図１８】
0005990600.tif 000019
【図１９】
0005990600.tif 000020
【図２０】
0005990600.tif 000021
【図２１】
0005990600.tif 000022
【図２２】
0005990600.tif 000023
【図２３】
0005990600.tif 000024
【図２４】
0005990600.tif 000025
【図２５】
0005990600.tif 000026
【図２６】
0005990600.tif 000027
【図２７】
0005990600.tif 000028
【図２８】
0005990600.tif 000029
【図２９】
0005990600.tif 000030
【図３０】
0005990600.tif 000031
【図３１】
0005990600.tif 000032
【図３２】
0005990600.tif 000033
【図３３】
0005990600.tif 000034
【図３４】
0005990600.tif 000035
【図３５】
0005990600.tif 000036
【図３６】
0005990600.tif 000037
【図３７】
0005990600.tif 000038
【図３８】
0005990600.tif 000039
【図３９】
0005990600.tif 000040
【図４０】
0005990600.tif 000041
【図４１】
0005990600.tif 000042
【図４２】
0005990600.tif 000043
【図４３】
0005990600.tif 000044
【図４４】
0005990600.tif 000045
【図４５】
0005990600.tif 000046
【図４６】
0005990600.tif 000047
【図４７】
0005990600.tif 000048
【図４８】
0005990600.tif 000049
【図４９】
0005990600.tif 000050
【図５０】
0005990600.tif 000051