JP5990600B2 - Color adjuster for color classification - Google Patents

Color adjuster for color classification Download PDF

Info

Publication number
JP5990600B2
JP5990600B2 JP2014560912A JP2014560912A JP5990600B2 JP 5990600 B2 JP5990600 B2 JP 5990600B2 JP 2014560912 A JP2014560912 A JP 2014560912A JP 2014560912 A JP2014560912 A JP 2014560912A JP 5990600 B2 JP5990600 B2 JP 5990600B2
Authority
JP
Japan
Prior art keywords
image
color
control
user
adjustment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014560912A
Other languages
Japanese (ja)
Other versions
JP2015518295A (en
Inventor
ティモシー, ディー. シャーナ,
ティモシー, ディー. シャーナ,
ランディ ウビロス,
ランディ ウビロス,
ギャレット, エム. ジョンソン,
ギャレット, エム. ジョンソン,
クリストファー, アール. カニンガム,
クリストファー, アール. カニンガム,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US13/629,417 external-priority patent/US9105121B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2015518295A publication Critical patent/JP2015518295A/en
Application granted granted Critical
Publication of JP5990600B2 publication Critical patent/JP5990600B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/62Retouching, i.e. modification of isolated colours only or in isolated picture areas only
    • H04N1/622Retouching, i.e. modification of isolated colours only or in isolated picture areas only with simulation on a subsidiary picture reproducer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Color Image Communication Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

デジタルグラフィックデザイン及び画像編集アプリケーション(以降では、画像編集アプリケーションと総称される)は、グラフィックデザイナー、メディアアーティスト、及び他のユーザに、画像を閲覧及び編集するために必要なツールを提供する。そのようなアプリケーションの例としては、iPhoto(登録商標)、Aperture(登録商標)、及びFinal Cut Pro(登録商標)が挙げられ、それら全てがApple,Inc.により販売されている。これらのアプリケーションは、様々な様式で画像を編集するための能力をユーザに与える。例えば、一部のアプリケーションは、画像又はビデオの種々の色値を調整するための種々の範囲スライダを提供する。   Digital graphic design and image editing applications (hereinafter collectively referred to as image editing applications) provide graphic designers, media artists, and other users with the tools necessary to view and edit images. Examples of such applications include iPhoto®, Aperture®, and Final Cut Pro®, all of which are available from Apple, Inc. It is sold by. These applications give the user the ability to edit images in various ways. For example, some applications provide various range sliders for adjusting various color values of an image or video.

しかしながら、多くの画像編集アプリケーションは、直感的な色調整コントロールを提供しない。例えば、ユーザは、既存の色調整ツールの殆どを有効に使用するためには、色編集についての幅広い知識を有することが必要とされる。更には、画像の色値の様々な特徴を調整するためのコントロールは、ユーザインターフェースの様々な場所に分散されている。これらの不備は、画像を編集する際に、不必要な不便を引き起こす。   However, many image editing applications do not provide intuitive color adjustment controls. For example, a user is required to have extensive knowledge about color editing in order to effectively use most of the existing color adjustment tools. Furthermore, controls for adjusting various features of the color values of the image are distributed at various locations on the user interface. These deficiencies cause unnecessary inconvenience when editing images.

画像編集アプリケーションにおける、画像を編集するための幾つかの新規のユーザインターフェース(UI)ツールの実施形態が説明される。一部の実施形態では、この画像編集アプリケーションは、特定の色範囲に関連付けられているコンテンツのタイプ(例えば、空、群葉など)に関連する、画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する。画像上の特定のコンテンツのタイプの色値を調整するためのUIコントロールを通じて、入力が受け取られると、このアプリケーションは、そのコンテンツのタイプに関連付けられている画像内の画素のセットを、自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。   Several novel user interface (UI) tool embodiments for editing images in an image editing application are described. In some embodiments, the image editing application is for adjusting color values of only a portion of the image associated with the type of content (eg, sky, foliage, etc.) associated with a particular color range. Provides a set of UI controls. When input is received through a UI control to adjust the color value of a particular content type on the image, the application automatically sets the set of pixels in the image associated with that content type. Identify. The application then adjusts only the color values of the identified set of pixels based on user input.

一部の実施形態では、各UIコントロールは、画像内の異なるコンテンツのタイプに関連する色値を調整するためのものである。一部の実施形態のアプリケーションは、コンテンツの各タイプに関して、色空間内部での色値の範囲を定義する。特定のUIコントロールを通じて入力が受け取られると、このアプリケーションは、画像内の画素を探索して、その特定のUIコントロールに対応するコンテンツのタイプに関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する。   In some embodiments, each UI control is for adjusting color values associated with different types of content in the image. The application of some embodiments defines a range of color values within the color space for each type of content. When input is received through a particular UI control, the application searches for a pixel in the image and has a color value that falls within the range of color values defined for the type of content corresponding to that particular UI control. Identify a set of pixels.

画像は、色空間内に定義される色値を有する、画素を含む。一部の実施形態では、画像の色値は、種々のコンテンツのタイプに関連付けられている色値の範囲が、定義される特定の色空間とは異なる色空間内で定義される。これらの実施形態では、アプリケーションは、画素のセットを特定する前に、画像の色値をそれらの本来の色空間から、色値の範囲が定義される特定の色空間に変換する。   The image includes pixels that have color values defined in a color space. In some embodiments, the color values of the image are defined in a color space that is different from the specific color space in which the range of color values associated with the various content types is defined. In these embodiments, the application converts the color values of the image from their original color space to a specific color space in which the range of color values is defined before specifying the set of pixels.

一部の実施形態では、各色調整は、画像に適用される調整の様々な程度を指定するための調整値の範囲を含む。これらの実施形態では、UIコントロールはまた、画像に適用される調整の程度を制御するための調整値を、ユーザが指定するための手段も提供する。種々の実施形態は、種々の技術を使用して、UIコントロールのセットを実装する。例えば、一部の実施形態のアプリケーションは、範囲スライダのセットとしてUIコントロールのセットを実装する。これらの実施形態では、ユーザは、範囲スライダ上の種々の位置を選択することによって、種々の調整値を指定することができる。   In some embodiments, each color adjustment includes a range of adjustment values for specifying various degrees of adjustment applied to the image. In these embodiments, the UI control also provides a means for the user to specify an adjustment value for controlling the degree of adjustment applied to the image. Various embodiments implement a set of UI controls using various techniques. For example, some embodiment applications implement a set of UI controls as a set of range sliders. In these embodiments, the user can specify various adjustment values by selecting various positions on the range slider.

一部の実施形態では、このアプリケーションは、特定のUIコントロールに対するユーザ入力に応答して、画像の色値に対する1つのタイプの調整(例えば、彩度調整)のみを実行する。しかしながら、一部の他の実施形態のアプリケーションは、特定のUIコントロールに対する単一のユーザ入力に応答して、画像の色値に対する2つ以上のタイプの調整を実行する。例えば、ユーザ入力に応答して、一部の実施形態のアプリケーションは、画像の色値に対する、彩度調整、コントラスト調整、及び明度調整を実行することができる。これらの実施形態では、アプリケーションは、単一のユーザ入力を使用して、各調整操作に関する調整値を決定し、これらの調整操作を画像に適用する。   In some embodiments, the application performs only one type of adjustment (eg, saturation adjustment) to the color values of the image in response to user input for a particular UI control. However, some other embodiments of the application perform more than one type of adjustment to the color values of the image in response to a single user input for a particular UI control. For example, in response to user input, an application of some embodiments can perform saturation adjustment, contrast adjustment, and brightness adjustment on image color values. In these embodiments, the application uses a single user input to determine adjustment values for each adjustment operation and applies these adjustment operations to the image.

一部の実施形態は、画像編集アプリケーションにおける、画像を編集するための別の新規なUIを提供する。これらの実施形態では、アプリケーションは、画像上の場所をユーザが選択することを可能にし、その画像上の選択された場所で、種々のコンテンツのタイプが検知される場合に、その画像に適用するための種々の画像編集操作に関連付けられている種々のUIコントロールを表示する画像編集ツールを提供する。これらの実施形態では、ユーザが画像上の場所を選択し、このアプリケーションの画像編集ツールが、画像上の選択された場所に対応する画素の色値を、その画像から取得する。次いで、色編集ツールは、それらの画素値に対する一連の分析を実行して、その選択された場所が、特定のコンテンツのタイプを表現するか否かを検出する。検出されたコンテンツのタイプに基づいて、色編集ツールは、画像編集操作のセットを決定し、その決定された画像編集操作に関連付けられているUIコントロールのセットを表示する。一部の実施形態では、UIコントロールは、画像の上に重ね合わされる。   Some embodiments provide another novel UI for editing images in an image editing application. In these embodiments, the application allows the user to select a location on the image and applies to the image when various content types are detected at the selected location on the image. An image editing tool for displaying various UI controls associated with various image editing operations is provided. In these embodiments, the user selects a location on the image, and the image editing tool of the application obtains the color value of the pixel corresponding to the selected location on the image from the image. The color editing tool then performs a series of analyzes on those pixel values to detect whether the selected location represents a particular type of content. Based on the type of content detected, the color editing tool determines a set of image editing operations and displays a set of UI controls associated with the determined image editing operations. In some embodiments, UI controls are superimposed on the image.

種々の実施形態は、取得された画像の色値に対して、種々の分析を実行する。一部の実施形態では、このアプリケーションは、その画像の選択された場所が予め定義されたコンテンツのタイプを表現するか否かを検出するための一連の分析を実行する。これらの実施形態では、アプリケーションは、種々のコンテンツのタイプに関する種々の色値の範囲を定義している。次いで、このアプリケーションは、取得された色値が、それらの色値の範囲のうちのいずれか1つの範囲内に収まるか否かを判定する。取得された色値が、特定の色値の範囲内に収まる場合、このアプリケーションは、取得された色値、並びに選択された場所を、対応するコンテンツのタイプと関連付ける。次いで、このアプリケーションは、検出されたコンテンツのタイプに基づいて、重ね合わせUIコントロールのセットを提供する。   Various embodiments perform various analyzes on the color values of the acquired image. In some embodiments, the application performs a series of analyzes to detect whether the selected location of the image represents a predefined content type. In these embodiments, the application defines different color value ranges for different content types. The application then determines whether the acquired color value falls within any one of those color value ranges. If the acquired color value falls within a specific color value range, the application associates the acquired color value, as well as the selected location, with the corresponding content type. The application then provides a set of overlay UI controls based on the type of content detected.

一部の実施形態では、UIコントロールのセットは、その選択された場所で、又は選択された場所の近傍で、画像の上に重ね合わされる。一部の実施形態では、この重ね合わせUIコントロールは、不透明か又は透明かの一方である。ユーザは、画像に対して入力を提供することによって、これらのUIコントロールを操作することができる。これらの実施形態の一部では、UIコントロールは、ユーザが、特定の方向入力を提供することによって、特定の画像編集操作を選択することができる、方向依存性UIコントロールである。ユーザが、画像に対して方向入力を提供すると、このアプリケーションは、入力の方向に基づいて、その入力をUIコントロールのうちの1つに関連付け、対応する調整を画像に適用する。   In some embodiments, the set of UI controls are superimposed on the image at or near the selected location. In some embodiments, this overlay UI control is either opaque or transparent. A user can manipulate these UI controls by providing input to the image. In some of these embodiments, the UI control is a direction-dependent UI control that allows the user to select a specific image editing operation by providing a specific direction input. When the user provides a directional input to the image, the application associates the input with one of the UI controls based on the direction of the input and applies the corresponding adjustment to the image.

一部の実施形態では、UIコントロールの重ね合わせを通じて画像に対して実行することが可能な、各画像編集操作は、画像に対して実行される編集の様々な程度を指定するための調整値の範囲を含む。これらの実施形態では、アプリケーションはまた、ユーザによって提供される方向入力に基づいて、大きさも特定する。次いで、このアプリケーションは、その特定された入力の大きさに基づいて、画像編集操作に関する調整値を計算し、その計算された調整値を使用して、画像に対して画像編集操作を実行する。   In some embodiments, each image editing operation that can be performed on an image through a superposition of UI controls allows adjustment values to be specified for varying degrees of editing performed on the image. Includes range. In these embodiments, the application also determines the size based on the directional input provided by the user. The application then calculates an adjustment value for the image editing operation based on the identified input magnitude, and performs the image editing operation on the image using the calculated adjustment value.

コンテンツ依存性UIコントロールに加えて、一部の実施形態のアプリケーションはまた、画像の色バランスを調整するための新規のUIも提供する。一部の実施形態では、このアプリケーションは、画像上の場所をユーザが選択することを可能にする、色バランスUIコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色(例えば、灰色、理想的な肌色など)に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。   In addition to content-dependent UI control, some embodiment applications also provide a new UI for adjusting the color balance of an image. In some embodiments, the application provides a color balance UI control that allows the user to select a location on the image. The application then obtains the color value of the pixel corresponding to the selected location and changes the color value of the pixel to a set reference color (eg, gray, ideal skin color, etc.) To decide. Based on this color adjustment, the application generates a color space transformation that maps each color in the image to a different color. The application then applies the color space transformation to every pixel in the image.

種々の実施形態は、この色バランス調整操作のための種々の基準色を提供する。基準色として灰色が設定される一部の実施形態では、ユーザは、灰色として現われる対象物を表示する画像内の場所を選択することによって、色バランスUIを通じて画像の色バランスを調整することができる。他の実施形態では、このアプリケーションは、理想的な肌色を基準色として設定することができる。これらの実施形態では、ユーザは、人の顔を表示する画像内の場所を選択することによって、色バランスUIを通じて画像の色バランスを調整する。   Various embodiments provide various reference colors for this color balance adjustment operation. In some embodiments where gray is set as the reference color, the user can adjust the color balance of the image through the color balance UI by selecting a location in the image that displays objects that appear as gray. . In other embodiments, the application can set the ideal skin color as the reference color. In these embodiments, the user adjusts the color balance of the image through the color balance UI by selecting a location in the image that displays a human face.

一部の実施形態では、このアプリケーションは、画像の色バランスを調整するために画像上に重ね合わされる色バランスUIコントロールを提供する。これらの実施形態の一部では、色バランスUIコントロールは、画像上で移動可能であり、ユーザが、色バランスUIコントロールを所望の場所に移動させることによって、画像上の場所を指定することを可能にする。   In some embodiments, the application provides a color balance UI control that is overlaid on the image to adjust the color balance of the image. In some of these embodiments, the color balance UI control is movable on the image, allowing the user to specify a location on the image by moving the color balance UI control to the desired location. To.

一部の実施形態では、色バランスUIコントロールは、ズーミング能力を提供することにより、ユーザが、ホワイトバランス操作のための場所を正確に選択することを可能にする。これらの実施形態では、色バランスUIコントロールは、閉じた境界線を含む。アプリケーションは、この色バランスUIコントロールの閉じた境界線内部の、画像の部分をズームインする(すなわち、拡大する)。色バランスUIコントロールの閉じた境界線内部の画像は、より大きくなるように現われるため、ユーザは、より正確に、画像上の場所を選び取ることができる。   In some embodiments, the color balance UI control provides a zooming capability to allow the user to accurately select a location for white balance operations. In these embodiments, the color balance UI control includes a closed border. The application zooms in (ie, enlarges) the portion of the image within the closed border of this color balance UI control. Since the image inside the closed border of the color balance UI control appears to be larger, the user can select a location on the image more accurately.

ズーミング能力に加えて、色バランスUIコントロールはまた、編集された画像のプレビューをユーザに提供することもできる。一部の実施形態では、このアプリケーションは、色バランスUIコントロールの閉じた境界線の外側にある画像の部分の、編集済みバージョンを表示すると共に、閉じた境界線の内側にある画像の部分の、未編集バージョンを表示する。   In addition to zooming capabilities, the color balance UI control can also provide the user with a preview of the edited image. In some embodiments, the application displays an edited version of the portion of the image that is outside the closed border of the color balance UI control and the portion of the image that is inside the closed border. Display the unedited version.

上記の「発明の概要」は、本明細書で説明される一部の実施形態の、簡潔な紹介としての役割を果たすことを意図するものである。本文書で開示される全ての発明主題の、序論又は概要であることを意味するものではない。以下の「発明を実施するための形態」、及び「発明を実施するための形態」で参照される図面は、この「発明の概要」で説明された実施形態、並びに他の実施形態を、更に説明するものである。したがって、本文書によって説明される全ての実施形態を理解するためには、「発明の概要」、「発明を実施するための形態」、及び図面の十分な検討が必要とされる。更には、特許請求される主題は、「発明の概要」、「発明を実施するための形態」、及び図面での、例示的な詳細によって限定されるものではなく、むしろ、特許請求される主題は、その主題の趣旨から逸脱することなく他の特定の形態で具体化することができるため、添付の特許請求の範囲によって定義されるものである。   The above "Summary of the Invention" is intended to serve as a concise introduction to some embodiments described herein. It is not meant to be an introduction or summary of all inventive subject matter disclosed in this document. The drawings referred to in the following “DETAILED DESCRIPTION OF THE INVENTION” and “MODE FOR CARRYING OUT THE INVENTION” further illustrate the embodiment described in this “Summary of the Invention” and other embodiments. Explain. Accordingly, in order to understand all of the embodiments described by this document, a thorough examination of the "Summary of Invention", "Mode for Carrying Out the Invention", and the drawings is required. Furthermore, the claimed subject matter is not limited by the exemplary details in the "Summary of Invention", "Mode for Carrying Out the Invention", and drawings, but rather is claimed subject matter. Can be embodied in other specific forms without departing from the spirit of the subject matter, and thus is defined by the appended claims.

本明細書で説明される新規の特徴は、添付の特許請求の範囲に記載される。しかしながら、説明の目的上、幾つかの実施形態が、以下の図に記載される。
画像上に選択された異なる場所に基づいて、異なる重ね合わせUIコントロールを提供する実施例を示す図である。 カスタム色バランスUIコントロールを使用して、画像の色バランスを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像の彩度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像の彩度を調整する別の実施例を示す図である。 肌の色調に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。 画像上の肌の色調に基づいて、画像の色温度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、空を表現する画像の一部分のみを調整する実施例を示す図である。 空の色に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、群葉を表現する画像の一部分のみを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、群葉を表現する画像の一部分のみを調整する別の実施例を示す図である。 群葉の色に関して定義された色値の範囲内に収まる色値を有する、画素のセットを特定する実施例を示す図である。 一部の実施形態の画像編集アプリケーションの異なるGUIを通じて、色調整ツールのセットを呼び出す実施例を示す図である。 一部の実施形態の画像編集アプリケーションの異なるGUIを通じて、色調整ツールのセットを選択解除する実施例を示す図である。 一部の実施形態の画像編集アプリケーションの異なるGUIを通じて、空を表現する画像の一部分のみを調整する別の実施例を示す図である。 一部の実施形態の画像編集アプリケーションの異なるGUIを通じて、群葉を表現する画像の一部分のみを調整する別の実施例を示す図である。 画像上の場所のユーザの選択に基づいて、画像の一部分のみを調整するための一部の実施形態のプロセスを概念的に示す図である。 単一のユーザ入力に基づいて、画像に対する複数の色調整を実行するための、一部の実施形態のプロセスを概念的に示す図である。 一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。 画像上に選択された異なる場所に基づいて、異なる画像上UIコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。 画像上に選択された異なる場所に基づいて、異なる画像上UIコントロールを提供する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像の彩度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像上の肌の色調に基づいて画像の色温度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、空を表現する画像の一部分のみを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、群葉を表現する画像の一部分のみを調整する実施例を示す図である。 画像上UIコントロールの2つの例示的実装を示す図である。 画像上に選択された異なる場所に基づいて、異なる色調整UIコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。 方向入力の方向及び大きさを特定する実施例を概念的に示す図である。 方向入力に基づいて、特定の色調整を決定するための、一部の実施形態のプロセスを概念的に示す図である。 一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。 画像上UIコントロールを使用する利益を示す図である。 画像上に選択された異なる場所に基づいて、異なる画像上UIコントロールを提供する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像のコントラストを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像のシャドウを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像のハイライトを調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像の明度を調整する実施例を示す図である。 画像上に選択された異なる場所に基づいて、異なる色調整UIコントロールを提供するための、一部の実施形態のプロセスを概念的に示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像に対してカスタムホワイトバランス操作を実行する実施例を示す図である。 カスタムホワイトバランス操作に関する色空間変換を生成する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、画像に対してカスタム顔バランス操作を実行する実施例を示す図である。 カスタム顔バランス操作に関する色空間変換を生成する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、平均の肌の色調に基づいて画像の色温度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションのGUIを通じて、理想的な肌の色調に基づいて画像の色温度を調整する実施例を示す図である。 一部の実施形態の画像編集アプリケーションの異なるGUIを通じて、色バランスツールのセットを呼び出す実施例を示す図である。 画像に対してカスタム色バランス操作を実行するための、一部の実施形態のプロセスを概念的に示す図である。 カスタム色バランス操作に関する色空間変換を生成するための一部の実施形態のプロセスを概念的に示す図である。 一部の実施形態の画像編集アプリケーションのソフトウェアアーキテクチャを概念的に示す図である。 一部の実施形態の画像編集アプリケーションの例示的なGUIを示す図である。 一部の実施形態の画像データ構造を概念的に示す図である。 画像編集アプリケーションが実行される、一部の実施形態の装置のハードウェアアーキテクチャを概念的に示す図である。 本発明の一部の実施形態が実装される、電子システムを概念的に示す図である。
The novel features described herein are set forth in the appended claims. However, for illustrative purposes, some embodiments are described in the following figures.
FIG. 6 illustrates an example of providing different overlay UI controls based on different locations selected on an image. FIG. 10 is a diagram illustrating an example in which the color balance of an image is adjusted using a custom color balance UI control. It is a figure which shows the Example which adjusts the saturation of an image through GUI of the image editing application of some embodiment. It is a figure which shows another Example which adjusts the saturation of an image through GUI of the image editing application of some embodiment. FIG. 5 is a diagram illustrating an example of identifying a set of pixels having color values that fall within a range of color values defined for skin tone. It is a figure which shows the Example which adjusts the color temperature of an image based on the color tone of the skin on an image. It is a figure which shows the Example which adjusts only the part of the image expressing the sky through GUI of the image editing application of some embodiment. FIG. 6 illustrates an example of identifying a set of pixels having color values that fall within a range of color values defined for a sky color. It is a figure which shows the Example which adjusts only a part of image which expresses a foliage through GUI of the image editing application of some embodiment. It is a figure which shows another Example which adjusts only the one part of the image expressing a foliage through GUI of the image editing application of some embodiment. FIG. 6 is a diagram illustrating an example of identifying a set of pixels having color values that fall within a range of color values defined for foliage colors. FIG. 6 is a diagram illustrating an example of calling a set of color adjustment tools through different GUIs of an image editing application of some embodiments. FIG. 6 is a diagram illustrating an example of deselecting a set of color adjustment tools through a different GUI of an image editing application of some embodiments. FIG. 6 is a diagram illustrating another example of adjusting only a portion of an image representing the sky through different GUIs of an image editing application of some embodiments. It is a figure which shows another Example which adjusts only the part of the image expressing a foliage through different GUI of the image editing application of some embodiment. FIG. 3 conceptually illustrates a process of some embodiments for adjusting only a portion of an image based on a user selection of a location on the image. FIG. 5 conceptually illustrates a process of some embodiments for performing multiple color adjustments on an image based on a single user input. It is a figure which shows notionally the software architecture of the image editing application of some embodiment. FIG. 3 conceptually illustrates a process of some embodiments for providing different on-image UI controls based on different locations selected on an image. FIG. 6 illustrates an example of providing different on-image UI controls based on different locations selected on an image. It is a figure which shows the Example which adjusts the saturation of an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts the color temperature of an image based on the color tone of the skin on an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts only the part of the image expressing the sky through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts only a part of image which expresses a foliage through GUI of the image editing application of some embodiment. FIG. 2 illustrates two example implementations of on-image UI control. FIG. 6 conceptually illustrates a process of some embodiments for providing different color adjustment UI controls based on different locations selected on an image. It is a figure which shows notionally the Example which specifies the direction and magnitude | size of a direction input. FIG. 6 conceptually illustrates a process of some embodiments for determining a particular color adjustment based on a direction input. It is a figure which shows notionally the software architecture of the image editing application of some embodiment. FIG. 6 illustrates the benefits of using UI controls on images. FIG. 6 illustrates an example of providing different on-image UI controls based on different locations selected on an image. It is a figure which shows the Example which adjusts the contrast of an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts the shadow of an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts the highlight of an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts the brightness of an image through GUI of the image editing application of some embodiment. FIG. 6 conceptually illustrates a process of some embodiments for providing different color adjustment UI controls based on different locations selected on an image. It is a figure which shows the Example which performs custom white balance operation with respect to an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which produces | generates the color space conversion regarding custom white balance operation. It is a figure which shows the Example which performs custom face balance operation with respect to an image through GUI of the image editing application of some embodiment. It is a figure which shows the Example which produces | generates the color space conversion regarding custom face balance operation. It is a figure which shows the Example which adjusts the color temperature of an image based on the color tone of an average skin through GUI of the image editing application of some embodiment. It is a figure which shows the Example which adjusts the color temperature of an image based on the ideal tone of the skin through GUI of the image editing application of some embodiment. FIG. 6 is a diagram illustrating an example of calling a set of color balance tools through different GUIs of an image editing application of some embodiments. FIG. 3 conceptually illustrates a process of some embodiments for performing a custom color balance operation on an image. FIG. 5 conceptually illustrates a process of some embodiments for generating a color space transformation for a custom color balance operation. It is a figure which shows notionally the software architecture of the image editing application of some embodiment. FIG. 3 illustrates an example GUI of an image editing application of some embodiments. It is a figure which shows notionally the image data structure of some embodiment. FIG. 2 conceptually illustrates a hardware architecture of an apparatus of some embodiments in which an image editing application is executed. FIG. 2 conceptually illustrates an electronic system in which some embodiments of the present invention are implemented.

以下の「発明を実施するための形態」では、画像編集ツール並びに画像編集アプリケーションの数多くの詳細、実施例、及び実施形態が記載され、説明される。しかしながら、本発明は、記載される実施形態に限定されるものではなく、論じられる具体的詳細及び実施例の一部を伴わずに、本発明を実践することができる点が、当業者には明確かつ明白となるであろう。   In the following Detailed Description, numerous details, examples, and embodiments of image editing tools and image editing applications are described and described. However, it will be apparent to those skilled in the art that the present invention is not limited to the described embodiments, and that the present invention may be practiced without some of the specific details and examples discussed. It will be clear and obvious.

画像編集アプリケーションにおける、画像を編集するための幾つかの新規のユーザインターフェース(UI)ツールの実施形態が、説明される。一部の実施形態では、この画像編集アプリケーションは、特定の色範囲に関連付けられているコンテンツのタイプ(例えば、空、群葉など)に関連する、画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する。画像上の特定のコンテンツのタイプの色値を調整するためのUIコントロールを通じて、入力が受け取られると、このアプリケーションは、そのコンテンツのタイプに関連付けられている画像内の画素のセットを、自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。   Several novel user interface (UI) tool embodiments for editing images in an image editing application are described. In some embodiments, the image editing application is for adjusting color values of only a portion of the image associated with the type of content (eg, sky, foliage, etc.) associated with a particular color range. Provides a set of UI controls. When input is received through a UI control to adjust the color value of a particular content type on the image, the application automatically sets the set of pixels in the image associated with that content type. Identify. The application then adjusts only the color values of the identified set of pixels based on user input.

一部の実施形態では、UIコントロールのセットは、画像内の空の色のみの色値を調整するためのUIコントロールを含む。これらの実施形態では、アプリケーションは、最初に、予め定義された空の色値の範囲内に収まる色値を有する、画像内の画素のセットを特定する。次いで、このアプリケーションは、その特定された画素のセットのみに、色調整を適用する。空の色の色値を調整することに加えて、一部の実施形態のUIコントロールのセットはまた、画像内の群葉の色のみの色値を調整するためのUIコントロールも含む。同様に、このアプリケーションは、予め定義された群葉の色値の範囲内に収まる色値を有する、画像内の画素のセットを特定し、その特定された画素のセットのみに、色調整を適用する。青空の色及び群葉の色を調整するための色調整操作は、以下のセクションIで、より詳細に説明される。   In some embodiments, the set of UI controls includes UI controls for adjusting color values of only the sky colors in the image. In these embodiments, the application first identifies a set of pixels in the image that have color values that fall within a predefined range of sky color values. The application then applies color adjustments only to the identified set of pixels. In addition to adjusting the color value of the sky color, the set of UI controls in some embodiments also includes a UI control for adjusting the color values of only the foliage colors in the image. Similarly, this application identifies a set of pixels in the image that have color values that fall within a predefined foliage color value range, and applies color adjustments only to that identified set of pixels. To do. The color adjustment operation for adjusting the blue sky color and foliage color is described in more detail in Section I below.

更には、一部の実施形態の画像編集アプリケーションはまた、画像上の場所をユーザが選択することを可能にし、その画像上の選択された場所から、種々のコンテンツのタイプが検出される場合に、その画像に適用するための種々の画像編集操作に関連付けられている種々のUIコントロールを表示する、画像編集ツールも提供する。これらの実施形態では、ユーザが画像上の場所を選択し、このアプリケーションの画像編集ツールが、画像上の選択された場所に対応する画素の色値を、その画像から取得する。次いで、このアプリケーションは、それらの画素値に対する一連の分析を実行して、その選択された場所が、特定のコンテンツのタイプを表現するか否かを検出する。検出されたコンテンツのタイプに基づいて、色編集ツールは、画像編集操作のセットを決定し、その決定された画像編集操作に関連付けられているUIコントロールのセットを表示する。コンテンツ依存性の画像上UIコントロールを提供する種々の実施形態は、以下のセクションIIで、より詳細に説明される。   Further, the image editing application of some embodiments also allows a user to select a location on the image, and when various content types are detected from the selected location on the image. An image editing tool is also provided that displays various UI controls associated with various image editing operations for application to the image. In these embodiments, the user selects a location on the image, and the image editing tool of the application obtains the color value of the pixel corresponding to the selected location on the image from the image. The application then performs a series of analyzes on those pixel values to detect whether the selected location represents a particular content type. Based on the type of content detected, the color editing tool determines a set of image editing operations and displays a set of UI controls associated with the determined image editing operations. Various embodiments for providing content-dependent on-image UI control are described in more detail in Section II below.

図1は、画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの、例示的なGUI100を示す。具体的には、図1は、UIコントロールの種々のセットをアクティブ化して操作する動作を、4つの異なるステージ105、110、115、及びステージ120で示す。これらのステージのそれぞれを、以下でより詳細に説明する。   FIG. 1 illustrates an exemplary GUI 100 of an image editing application of some embodiments that provides a set of UI controls for adjusting color values of only a portion of the image. Specifically, FIG. 1 illustrates the operation of activating and manipulating various sets of UI controls at four different stages 105, 110, 115, and stage 120. Each of these stages is described in more detail below.

図1に示すように、GUI100は、画像195、及び色調整UIコントロール125〜135のセットを含む。色調整UIコントロールのそれぞれは、この画像の異なる部分に関して、異なる色調整を開始するためのものである。例えば、UIコントロール125は、画像全体に「調整A」を適用するためのものであり、UIコントロール130は、画像の空領域に「調整B」を適用するためのものであり、UIコントロール135は、画像の群葉領域に「調整C」を適用するためのものである。   As shown in FIG. 1, the GUI 100 includes an image 195 and a set of color adjustment UI controls 125-135. Each of the color adjustment UI controls is for initiating different color adjustments for different parts of the image. For example, the UI control 125 is for applying “Adjustment A” to the entire image, the UI control 130 is for applying “Adjustment B” to the empty area of the image, and the UI control 135 is This is for applying “Adjustment C” to the foliage region of the image.

種々の実施形態は、種々の技術を使用して、UIコントロールのセットを実装する。この実施例では、アプリケーションは、UIコントロールのセットを、範囲スライダのセットとして実装する。これらの実施形態では、ユーザは、異なるUIコントロール125〜135を選択して操作することによって、画像に対する異なる調整操作を開始することができる。範囲スライダに加えて、GUI100はまた、ユーザが、UIコントロール125〜135のセットに対応する重ね合わせUIコントロール(画像上UIコントロールとも称される)のセットをアクティブ化することによって、調整操作を開始することも可能にする。   Various embodiments implement a set of UI controls using various techniques. In this example, the application implements a set of UI controls as a set of range sliders. In these embodiments, the user can initiate different adjustment operations on the image by selecting and manipulating different UI controls 125-135. In addition to the range slider, the GUI 100 also initiates an adjustment operation by the user activating a set of superimposed UI controls (also referred to as on-image UI controls) corresponding to the set of UI controls 125-135. It is also possible to do.

第2ステージ110は、ユーザが、重ね合わせUIコントロールのセットをアクティブ化した後の、GUI100を示す。一部の実施形態では、ユーザは、画像上の場所を選択することによって、重ね合わせUIコントロールのセットをアクティブ化することができる。これらの実施形態では、アプリケーションは、選択された場所に対応する画素の色値を取得して、その色値を、予め定義されたコンテンツのうちの1つと関連付ける。次いで、アプリケーションは、その関連付けられているコンテンツのタイプに関連する、重ね合わせUIコントロールのセットを提供する。図示のように、ユーザは、空を表示する、画像195上の場所を選択している。画像195上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。一実施形態では、ユーザは、画像の場所で指をタップするか、又は、その場所に指を置くことによって、場所を選択することができる。他の実施形態では、他のジェスチャを実行することにより、場所を選択することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、少なくとも1つの分析を実行して、その選択された場所を、予め定義されたコンテンツのタイプと関連付ける。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、その特定のコンテンツのタイプに関連付けられている画像上UIコントロールのセットを表示する。この実施例では、アプリケーションは、選択された場所が、青空に関連付けられていることを判定する。それゆえ、このアプリケーションは、画像の空領域に「調整B」を実行するためのUIコントロール140に対応する、画像上UIコントロール155及び画像上UIコントロール160(水平軸に沿った2つの方向の矢印として表示される)のセットを提供する。   The second stage 110 shows the GUI 100 after the user activates a set of superposition UI controls. In some embodiments, the user can activate a set of superimposed UI controls by selecting a location on the image. In these embodiments, the application obtains the color value of the pixel corresponding to the selected location and associates that color value with one of the predefined content. The application then provides a set of overlay UI controls that are associated with that associated content type. As shown, the user has selected a location on the image 195 that displays the sky. Selection of a location on the image 195 can be performed by performing a gesture at a location on the device that has the touch or near-touch sensitive screen that displays the image, or by placing the cursor at the location of the image and providing input ( For example, by clicking on the cursor control device, pressing a hot key, etc.). In one embodiment, the user can select a location by tapping the finger at the location of the image or placing the finger at that location. In other embodiments, the location can be selected by performing other gestures. As described above, after the user selects a location on the image, the image editing application of some embodiments performs at least one analysis to determine the selected location as a predefined content type. Associate with. Various embodiments use various techniques to determine the type of content associated with the selected location. The application of some embodiments initially defines a range of different color values associated with different types of content. The application then determines whether the color value of the set of pixels corresponding to the selected location in the image falls within the color value range associated with the particular content type, and the identification Displays a set of on-image UI controls associated with the content type. In this example, the application determines that the selected location is associated with a blue sky. Therefore, this application corresponds to the UI control 140 for performing “Adjust B” on the empty area of the image, and the UI control 155 on the image and the UI control 160 on the image (arrows in two directions along the horizontal axis). As a set).

このアプリケーションはまた、画像全体に「調整A」を実行するためのUIコントロール125に対応する、重ね合わせUIコントロール145及び重ね合わせUIコントロール150(垂直軸に沿った2つの方向の矢印として表示される)のセットも提供する。重ね合わせUIコントロール145及び重ね合わせUIコントロール150のセットは、コンテンツに依存しない。すなわち、アプリケーションは、画像上に選択された場所とは無関係に、この重ね合わせUIコントロール145及び重ね合わせUIコントロール150のセットを提供する。一部の実施形態では、このアプリケーションはまた、UIコントロール125及びUIコントロール130がアクティブ化されていることを示すために、UIコントロール125及びUIコントロール130を強調表示する。(UIコントロールが強調表示されていることを示すために、UIコントロールの境界線が太線にされている。)この図には示されないが、この第2ステージ110でのユーザは、画像に対して方向入力を提供することによって、特定の色調整(すなわち、「調整A」又は「調整B」)を選択することができる。逆に、調整Aを垂直方向で実行することが可能であり、調整Bを水平方向で実行することが可能である点を、理解されたい。   This application is also displayed as an overlay UI control 145 and an overlay UI control 150 (two direction arrows along the vertical axis) corresponding to the UI control 125 for performing “Adjust A” on the entire image. ) Set. The set of the overlay UI control 145 and the overlay UI control 150 does not depend on the content. That is, the application provides a set of this overlay UI control 145 and overlay UI control 150 regardless of the location selected on the image. In some embodiments, the application also highlights UI control 125 and UI control 130 to indicate that UI control 125 and UI control 130 are activated. (The UI control border is bolded to show that the UI control is highlighted.) Although not shown in this figure, the user at this second stage 110 can By providing a directional input, a particular color adjustment (ie, “Adjust A” or “Adjust B”) can be selected. Conversely, it should be understood that adjustment A can be performed in the vertical direction and adjustment B can be performed in the horizontal direction.

第3ステージ115は、ユーザが、画像195上の異なる場所を選択した後の、GUI100を示す。画像195上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。一実施形態では、ユーザは、画像の場所で指をタップするか、又は、その場所に指を置くことによって、場所を選択することができる。他の実施形態では、他のジェスチャを実行することにより、場所を選択することができる。図示のように、ユーザは、山を示す画像上の場所を選択している。この新たな場所の選択に基づいて、アプリケーションは、画像の群葉領域に「調整C」を実行するためのUIコントロール135に対応する、重ね合わせUIコントロール175及び重ね合わせUIコントロール180(水平軸に沿った2つの方向の矢印として表示される)の異なるセットを表示する。このアプリケーションはまた、UIコントロール130がアクティブ化されていることを示すために、UIコントロール135を強調表示する。一部の実施形態では、UIコントロール135は、そのUIコントロールを取り囲む形状上に、より太い境界線を有することによって、強調表示される。他の実施形態では、UIコントロール135は、GUI内に表示される他のUIコントロールよりも明るい色で表示されることによって、強調表示される。第2ステージ110と同様に、このアプリケーションはまた、画像に「調整A」を実行するためのUIコントロール125に対応する、重ね合わせUIコントロール145及び重ね合わせUIコントロール150のセットも提供するが、これは、この重ね合わせUIコントロールのセットが、コンテンツに依存しないためである。   The third stage 115 shows the GUI 100 after the user has selected a different location on the image 195. Selection of a location on the image 195 can be performed by performing a gesture at a location on the device that has the touch or near-touch sensitive screen that displays the image, or by placing the cursor at the location of the image and providing input ( For example, by clicking on the cursor control device, pressing a hot key, etc.). In one embodiment, the user can select a location by tapping the finger at the location of the image or placing the finger at that location. In other embodiments, the location can be selected by performing other gestures. As shown, the user has selected a location on the image showing the mountain. Based on the selection of this new location, the application can use the overlay UI control 175 and the overlay UI control 180 (on the horizontal axis) corresponding to the UI control 135 for performing “Adjustment C” on the foliage region of the image. Display different sets (displayed as arrows in two directions along). The application also highlights UI control 135 to indicate that UI control 130 is activated. In some embodiments, the UI control 135 is highlighted by having a thicker border on the shape surrounding the UI control. In other embodiments, the UI control 135 is highlighted by being displayed in a lighter color than other UI controls displayed in the GUI. Similar to the second stage 110, this application also provides a set of overlay UI control 145 and overlay UI control 150 corresponding to the UI control 125 for performing “Adjust A” on the image, This is because the superposition UI control set does not depend on the content.

第4ステージ120は、ユーザが、方向入力を提供することによって、画像に対する色調整を開始した後の、GUI100を示す。この方向入力は、実質的に水平方向に沿って、タッチ若しくはニアタッチ感応スクリーンを有する装置上で、ユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印140によって示されるように、画像の右にユーザの指をドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像195上で調整Cを実行するための画像上UIコントロール180と関連付ける。図示のように、画像195の群葉領域(例えば、山を表示する領域)は、画像195のその部分の全域にわたる斜線によって示されるように、調整されている。第4ステージ120はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール145及び画像上UIコントロール150が、ディスプレイから除去されて、対応するUIコントロール125が、もはや強調表示されないことも示す。一部の実施形態では、UIコントロール145及びUIコントロール150は、徐々に消失する。第4ステージ120はまた、ユーザが、異なる場所に指を移動させると、アクティブ化された重ね合わせUIコントロールが、その指を追従することも示す。換言すれば、表示された重ね合わせUIコントロールは、表示された画像の全域にわたって移動するようにアニメーション化され、その一方で画像が静止したまま維持されることにより、指に付着しているかのように、実質的にユーザの指の下に維持される。それゆえ、画像上UIコントロールは、常に指の場所の周囲に存在する。   The fourth stage 120 shows the GUI 100 after the user has started color adjustment on the image by providing direction input. This directional input can be provided by dragging the user's finger or dragging the cursor on a device having a touch or near-touch sensitive screen along a substantially horizontal direction. In this example, the user provides direction input by dragging the user's finger to the right of the image, as indicated by arrow 140. The application associates this direction input with an on-image UI control 180 for performing adjustment C on the image 195. As shown, the foliage region of image 195 (e.g., a region displaying a mountain) has been adjusted as indicated by the diagonal lines across that portion of image 195. The fourth stage 120 also removes the deactivated on-image UI control 145 and on-image UI control 150 from the display after the application associates the direction input with one set of on-image UI controls. The corresponding UI control 125 is also no longer highlighted. In some embodiments, UI control 145 and UI control 150 gradually disappear. The fourth stage 120 also shows that when the user moves the finger to a different location, the activated overlay UI control follows the finger. In other words, the displayed overlay UI control is animated to move across the displayed image, while the image remains stationary, as if it is attached to the finger. And substantially under the user's finger. Therefore, on-image UI controls are always around the location of the finger.

コンテンツ依存性UIコントロールに加えて、一部の実施形態のアプリケーションはまた、画像の色バランスを調整するための新規のUIも提供する。色バランス調整は、画像内の色を、画像内に取り込まれた瞬間の、景色及び対象物の色と一致させるための、色調整操作である。一部の実施形態では、このアプリケーションは、画像上の場所をユーザが選択することを可能にする、色バランスUIコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色(例えば、灰色、理想的な肌色など)に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。   In addition to content-dependent UI control, some embodiment applications also provide a new UI for adjusting the color balance of an image. The color balance adjustment is a color adjustment operation for making the colors in the image coincide with the colors of the scenery and the object at the moment when they are captured in the image. In some embodiments, the application provides a color balance UI control that allows the user to select a location on the image. The application then obtains the color value of the pixel corresponding to the selected location and changes the color value of the pixel to a set reference color (eg, gray, ideal skin color, etc.) To decide. Based on this color adjustment, the application generates a color space transformation that maps each color in the image to a different color. The application then applies the color space transformation to every pixel in the image.

図2は、画像の色バランスを調整するための色バランスUIコントロールを提供する、画像編集アプリケーションのGUI200を示す。具体的には、図2は、色バランス調整操作を、4つの異なるステージ205、210、215、及びステージ220で示す。これらのステージのそれぞれを、以下でより詳細に説明する。   FIG. 2 shows an image editing application GUI 200 that provides color balance UI control for adjusting the color balance of the image. Specifically, FIG. 2 illustrates the color balance adjustment operation with four different stages 205, 210, 215, and stage 220. Each of these stages is described in more detail below.

第1ステージ205で示すように、GUI200は、画像195、及び色バランス調整UIコントロールをアクティブ化するための選択可能UI項目225を含む。第2ステージ210は、ユーザが、選択可能UI項目225を選択した後の、GUI200を示す。選択可能UI項目225の選択は、選択可能UI項目225を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行することによって、又は、選択可能UI項目225にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。一実施形態では、ユーザは、選択可能UI項目225で指をタップするか、又は指を置くことによって、選択可能UI項目225を選択することができる。他の実施形態では、他のジェスチャを実行することにより、選択可能UI項目225を選択することができる。図示のように、ユーザは、選択可能UI項目225上で指をタップするか、又は指を置くことによって、選択可能UI項目225を選択している。   As shown by the first stage 205, the GUI 200 includes an image 195 and a selectable UI item 225 for activating the color balance adjustment UI control. The second stage 210 shows the GUI 200 after the user has selected the selectable UI item 225. Selection of the selectable UI item 225 may be performed by performing a gesture at a location on the device having a touch or near touch sensitive screen that displays the selectable UI item 225, or by placing the cursor on the selectable UI item 225, It can be performed by providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). In one embodiment, the user can select the selectable UI item 225 by tapping or placing a finger on the selectable UI item 225. In other embodiments, the selectable UI item 225 can be selected by performing other gestures. As shown, the user has selected the selectable UI item 225 by tapping or placing a finger on the selectable UI item 225.

一部の実施形態では、このアプリケーションは、画像の色バランスを調整するための画像上に表示される(例えば、上に重ね合わされる)色バランスUIコントロールを提供する。これらの実施形態の一部では、色バランスUIコントロールは、画像上で移動可能であり、ユーザが、色バランスUIコントロールを所望の場所に移動させる(又はドラッグする)ことによって、画像上の場所を指定することを可能にする。   In some embodiments, the application provides a color balance UI control that is displayed (eg, overlaid) on the image to adjust the color balance of the image. In some of these embodiments, the color balance UI control is movable on the image, and the user moves the color balance UI control to the desired location (or drags) to change the location on the image. Allows you to specify.

この第2ステージ210で示すように、選択可能UI項目225の選択の結果として、色バランスUIコントロール230が、画像上に出現する。この実施例では、色バランスUIコントロール230は、正方形の形状を有し、このコントロールの中央に十字線を有する。他の実施形態では、色バランスUIコントロールは、任意の他の形状にすることができる。これらの他の形状の非包括的なリストには、三角形、楕円形、矩形などが含まれる。この形状はまた、手、花などの不規則形状にすることもできる。更には、十字線は、中央に存在する場合もあれば、存在しない場合もある。あるいは、十字線以外の他の対象物を、円形、正方形、単一ドット、又は画像195内部の小領域を示すために使用される何らかの他の像などの形状で、表示することができる。   As shown in the second stage 210, as a result of selection of the selectable UI item 225, the color balance UI control 230 appears on the image. In this embodiment, the color balance UI control 230 has a square shape and has a crosshair in the center of the control. In other embodiments, the color balance UI control can be any other shape. A non-comprehensive list of these other shapes includes triangles, ellipses, rectangles, and the like. This shape can also be an irregular shape such as a hand or a flower. Furthermore, the cross hair may or may not exist in the center. Alternatively, objects other than crosshairs can be displayed in shapes such as circles, squares, single dots, or some other image used to show a small area within the image 195.

色バランスUIコントロール230の十字線により、ユーザは、画像195の色バランスを調整するための画像上の場所を指定することが可能となる。上述のように、ユーザが、色バランス操作のための場所を指定した後に、アプリケーションは、選択された場所に対応する少なくとも1つの画素の色値を取得して、その画素の色値を、設定された基準色(例えば、灰色、理想的な肌色など)に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。この第2ステージ210で示すように、選択された場所に基づく色バランス操作は、画像195の全域にわたる45度の斜線によって示されるように、画像195に対して実行されている。   The crosshairs of the color balance UI control 230 allow the user to specify a location on the image for adjusting the color balance of the image 195. As described above, after the user specifies a location for the color balance operation, the application obtains the color value of at least one pixel corresponding to the selected location and sets the color value of that pixel. The color adjustment to be changed to the selected reference color (for example, gray, ideal skin color, etc.) is determined. Based on this color adjustment, the application generates a color space transformation that maps each color in the image to a different color. The application then applies the color space transformation to every pixel in the image. As shown in the second stage 210, a color balance operation based on the selected location is performed on the image 195, as shown by the 45 degree diagonal lines across the image 195.

前述のように、一部の実施形態の色バランスUIコントロール230は、画像195内部で移動可能であることにより、ユーザが、色バランス操作のための異なる場所を選択することを可能にする。これらの実施形態では、ユーザは、色バランスUIコントロール230上でジェスチャを実行して(例えば、ユーザの指を置くか、又はタップして)、その指を異なる場所にドラッグすることによって、色バランスUIコントロール230を再配置することができる。第3ステージ215は、ユーザが、色バランスUIコントロール230を選択した後ではあるが、その色バランスUIコントロール230を異なる場所に移動させる前の、GUI200を示す、過渡的ステージである。   As described above, the color balance UI control 230 of some embodiments is movable within the image 195 to allow the user to select different locations for color balance operations. In these embodiments, the user performs a gesture on the color balance UI control 230 (eg, by placing or tapping the user's finger) and dragging the finger to a different location, thereby causing the color balance. The UI control 230 can be relocated. The third stage 215 is a transient stage showing the GUI 200 after the user selects the color balance UI control 230 but before moving the color balance UI control 230 to a different location.

第4ステージ220は、ユーザが、色バランスUIコントロール230を異なる場所に移動させた後の、GUI200を示す。図示のように、ユーザは、矢印235によって示されるように、画像の右上隅に向けて、ユーザの指をその方向にドラッグすることによって、色バランスUIコントロール230を移動させている。色バランスUIコントロール230を新たな場所に移動させた結果として、このアプリケーションは、画像の色バランスを再調整する。具体的には、このアプリケーションは、色バランスUIコントロール230を通じて、ユーザによって選択された新たな場所に対応する、少なくとも1つの画素の色値を取得する。次いで、このアプリケーションは、選択された場所の色を基準色に変更する、色調整を決定する。この色調整に基づいて、アプリケーションは、画像195内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像195内の全ての画素に、その色空間変換を適用する。この第4ステージ220で示されるように、新たに選択された場所に基づく色バランス操作は、画像195の全域にわたる135度の斜線によって示されるように、画像195に対して実行されている。   The fourth stage 220 shows the GUI 200 after the user has moved the color balance UI control 230 to a different location. As shown, the user moves the color balance UI control 230 by dragging the user's finger in that direction toward the upper right corner of the image, as indicated by arrow 235. As a result of moving the color balance UI control 230 to a new location, the application readjusts the color balance of the image. Specifically, the application obtains the color value of at least one pixel corresponding to the new location selected by the user through the color balance UI control 230. The application then determines a color adjustment that changes the color of the selected location to the reference color. Based on this color adjustment, the application generates a color space transformation that maps each color in image 195 to a different color. The application then applies the color space transformation to all pixels in the image 195. As shown in this fourth stage 220, a color balance operation based on the newly selected location has been performed on the image 195, as indicated by a 135 degree diagonal line across the image 195.

本発明の幾つかのより詳細な実施形態が、以下で提供される。これらの実施例の多くは、画像編集アプリケーションの一部であるスライダに言及する。一部の実施形態のこのアプリケーションは、装置のオペレーティングシステムの上で実行されるスタンドアローンのアプリケーションであるが、他の実施形態では、オペレーティングシステムの一部である。また、以下の実施例の多く(図3、4、6、7、9、14、15、20、21、22、23、24、31、32、33、34、35、37、39、41、及び図42で示されるものなど)では、アプリケーションが実行される装置は、タッチスクリーンを有し、このタッチスクリーンを通じて、ユーザは、その画像編集アプリケーションと対話することができる。しかしながら、当業者は、カーソル及びカーソルコントローラ、あるいは他の入力機構(例えば、音声制御)を使用して装置上で実行される他の実施形態に関しては、これらの実施例で示されるスライダ及びアプリケーションと対話するために、カーソルコントローラ又は他の入力装置を使用することができる点を、理解するであろう。   Some more detailed embodiments of the present invention are provided below. Many of these embodiments refer to sliders that are part of an image editing application. This application in some embodiments is a stand-alone application that runs on the device's operating system, while in other embodiments it is part of the operating system. Many of the following examples (FIGS. 3, 4, 6, 7, 9, 14, 15, 20, 21, 22, 23, 24, 31, 32, 33, 34, 35, 37, 39, 41, And the device on which the application is executed has a touch screen through which the user can interact with the image editing application. However, those skilled in the art will recognize the sliders and applications shown in these examples with respect to other embodiments implemented on a device using a cursor and cursor controller, or other input mechanism (eg, voice control). It will be appreciated that a cursor controller or other input device can be used to interact.

本発明の幾つかのより詳細な実施形態を、以下のセクションで説明する。具体的には、セクションIは、検出されたコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するための種々のUIコントロールを説明する。セクションIIは、画像上の選択場所からの、検出されたコンテンツのタイプに基づいて、画像上UIコントロールを提供する、種々の実施形態の詳細を説明する。セクションIIIは、画像の色バランスを調整するために、色バランスUIコントロールのセットを提供することを説明する。最後に、セクションVIは、本発明の一部の実施形態を実装する、電子システムを説明する。   Some more detailed embodiments of the invention are described in the following sections. Specifically, Section I describes various UI controls for adjusting the color value of only a portion of the image associated with the detected content type. Section II describes details of various embodiments that provide on-image UI control based on the type of content detected from a selected location on the image. Section III describes providing a set of color balance UI controls to adjust the color balance of the image. Finally, Section VI describes an electronic system that implements some embodiments of the present invention.

I.色コントロール
一部の実施形態の画像編集アプリケーションは、特定のコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する。一部の実施形態では、各UIコントロールは、画像内の異なるコンテンツのタイプに関連する色値を調整するためのものである。特定のUIコントロールを通じて入力が受け取られると、このアプリケーションは、その特定のUIコントロールによって制御されるコンテンツのタイプに関連する、画像内の画素のセットを自動的に特定する。次いで、このアプリケーションは、ユーザ入力に基づいて、その特定された画素のセットの色値のみを調整する。
I. Color Control The image editing application of some embodiments provides a set of UI controls for adjusting the color value of only a portion of the image associated with a particular content type. In some embodiments, each UI control is for adjusting color values associated with different types of content in the image. When input is received through a particular UI control, the application automatically identifies the set of pixels in the image that are associated with the type of content controlled by that particular UI control. The application then adjusts only the color values of the identified set of pixels based on user input.

一部の実施形態では、UIコントロールのセットは、異なるコンテンツのタイプに関連付けられている色値を調整するための異なるUIコントロールを含む。例えば、1つのUIコントロールは、肌の色調に関連付けられている色値を調整するためのものであり、別のUIコントロールは、空の色に関連付けられている色値を調整するためのものであり、更に別のUIコントロールは、群葉の色に関連付けられている色値を調整するためのものである。   In some embodiments, the set of UI controls includes different UI controls for adjusting color values associated with different content types. For example, one UI control is for adjusting the color value associated with the skin tone, and another UI control is for adjusting the color value associated with the sky color. There is yet another UI control for adjusting the color value associated with the foliage color.

図3は、特定のコンテンツのタイプに関連付けられている画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの例示的なGUI300を、5つの異なるステージ305、310、315、320、及びステージ325で示す。これらのステージのそれぞれを、以下でより詳細に説明する。   FIG. 3 illustrates an example GUI 300 of an image editing application of some embodiments that provides a set of UI controls for adjusting the color values of only a portion of the image associated with a particular content type. Shown with five different stages 305, 310, 315, 320 and stage 325. Each of these stages is described in more detail below.

図3に示すように、GUI300は、サムネイル表示領域330、ツールバー340、画像表示領域345、及びUIコントロール表示領域350を含む。サムネイル表示領域330は、ユーザが閲覧及び選択するための、アルバム内の画像のサムネイルのセットを表示する。画像のサムネイルは、解像度が低減された、画像の縮小サイズバージョンである。ユーザは、サムネイル表示領域330内の、画像に対応するサムネイルを選択することによって、画像表示領域345内に表示するための、1つ以上の画像を選択することができる。   As shown in FIG. 3, the GUI 300 includes a thumbnail display area 330, a toolbar 340, an image display area 345, and a UI control display area 350. The thumbnail display area 330 displays a set of thumbnails of images in the album for the user to browse and select. An image thumbnail is a reduced size version of an image with reduced resolution. The user can select one or more images to be displayed in the image display area 345 by selecting a thumbnail corresponding to the image in the thumbnail display area 330.

ツールバー340は、種々のタイプの画像調整コントロールに関連付けられている選択可能UI項目のセットを表示する。選択可能UI項目のセットは、画像クロップツールのセットに関連付けられている選択可能UI項目、露出調整ツールのセットに関連付けられている選択可能UI項目、及び色調整ツールのセットに関連付けられている選択可能UI項目342を含む。ユーザが、これらの選択可能UI項目のうちの1つを選択すると、選択されたUI項目に関連付けられているUIコントロールのセットが、UIコントロール表示領域350内に表示される。   The toolbar 340 displays a set of selectable UI items that are associated with various types of image adjustment controls. The set of selectable UI items includes a selectable UI item associated with the set of image crop tools, a selectable UI item associated with the set of exposure adjustment tools, and a selection associated with the set of color adjustment tools. A possible UI item 342 is included. When the user selects one of these selectable UI items, a set of UI controls associated with the selected UI item is displayed in the UI control display area 350.

ここで、5つのステージ305、310、315、320、325の間のGUI300の状態を参照して、画像編集操作を説明する。第1ステージ305は、ユーザが、画像表示領域345内に表示するために、アルバム「アルバム1」から画像355を選択した後の、画像編集アプリケーションのGUI300を示す。画像表示領域345内に表示するための画像の選択は、その画像のサムネイルを表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、その画像のサムネイルにカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、サムネイル335上で指をタップすることによって、画像表示領域345内に表示するための画像355を選択している。この選択はまた、サムネイル表示領域330内のサムネイル335の強調表示によっても示される。この選択の結果として、画像355が、画像表示領域345内に表示される。画像355は、山を背景にして海の傍らに立っている人物の写真である。   Here, the image editing operation will be described with reference to the state of the GUI 300 between the five stages 305, 310, 315, 320, and 325. The first stage 305 shows the GUI 300 of the image editing application after the user has selected an image 355 from the album “Album 1” for display in the image display area 345. Selecting an image to display in the image display area 345 is performed by performing a gesture (eg, placing a finger, pointing, Or by tapping a finger) or by placing the cursor on the thumbnail of the image and providing input (eg, clicking on a cursor control device, pressing a hotkey, etc.) . As illustrated, the user selects an image 355 to be displayed in the image display area 345 by tapping a finger on the thumbnail 335. This selection is also indicated by a highlighting of the thumbnail 335 in the thumbnail display area 330. As a result of this selection, the image 355 is displayed in the image display area 345. The image 355 is a photograph of a person standing beside the sea with a mountain in the background.

第2ステージ310は、ユーザが、ツールバー340内の選択可能UI項目のうちの1つを選択した後の、GUI300を示す。選択可能UI項目342の選択は、選択可能UI項目342を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、1つ以上の指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目342にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、選択可能UI項目342の強調表示によって示されるように、選択可能UI項目342上で指をタップすることによって、選択可能UI項目342を選択している。   The second stage 310 shows the GUI 300 after the user has selected one of the selectable UI items in the toolbar 340. Selection of the selectable UI item 342 includes performing a gesture (eg, placing one or more fingers, pointing, or By tapping a finger) or by placing the cursor on a selectable UI item 342 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.) . As shown, the user has selected the selectable UI item 342 by tapping a finger on the selectable UI item 342 as indicated by the highlighting of the selectable UI item 342.

選択可能UI項目342を選択した結果として、色調整UIコントロール352〜358のセットが、UIコントロール表示領域350内に表示される。種々の実施形態は、画像の色を調整するための種々のタイプの範囲関連UIコントロール(例えば、ダイヤル、ボタン、数値フィールドなど)を提供する。この実施例では、色調整UIコントロールは、範囲スライダである。ユーザは、それらのUIコントロールのうちのいずれか1つのつまみを、範囲スライダに沿って異なる位置にスライドさせることによって、画像に対する種々の色調整を開始することができる。これらのスライダは、つまみがスライダに沿ってスライドするため、視覚的な表示を提供することができる。   As a result of selecting the selectable UI item 342, a set of color adjustment UI controls 352-358 is displayed in the UI control display area 350. Various embodiments provide various types of range-related UI controls (eg, dials, buttons, numeric fields, etc.) for adjusting the color of the image. In this embodiment, the color adjustment UI control is a range slider. The user can initiate various color adjustments to the image by sliding the knob of any one of those UI controls to different positions along the range slider. These sliders can provide a visual indication because the knob slides along the slider.

色調整UIコントロール352〜358のそれぞれは、画像に関する異なるタイプの色調整を開始するためのものである。例えば、色調整UIコントロール352は、画像に対する彩度調整を開始するためのものである。色調整UIコントロール354は、画像に対する空調整を開始するためのものであり、空の色に関して定義された色値の範囲内に収まる色値のみを調整する。色調整UIコントロール356は、画像に対する群葉調整を開始するためのものであり、群葉の色に関して定義された色値の範囲内に収まる色値のみを調整する。色調整UIコントロール358は、画像に対する肌の色調調整を開始するためのものであり、肌の色調に関して定義された色値の範囲内に収まる色値のみを調整する。色調整UIコントロール352〜358に加えて、GUI300はまた、設定メニューを呼び出すための選択可能UI項目360も表示する。   Each of the color adjustment UI controls 352-358 is for initiating a different type of color adjustment for the image. For example, the color adjustment UI control 352 is for starting saturation adjustment for an image. The color adjustment UI control 354 is for starting the sky adjustment for the image, and adjusts only the color value that falls within the range of color values defined for the sky color. The color adjustment UI control 356 is for starting the foliage adjustment for the image, and adjusts only the color values that fall within the color value range defined for the foliage color. The color adjustment UI control 358 is for starting skin tone adjustment for an image, and adjusts only the color values that fall within the range of color values defined for the skin tone. In addition to the color adjustment UI controls 352-358, the GUI 300 also displays a selectable UI item 360 for invoking a settings menu.

第3ステージ315は、色調整UIコントロール352の強調表示によって示されるように、ユーザが、画像355に対して彩度調整を開始するための、色調整UIコントロール352を選択した後の、GUI300を示す。色調整UIコントロール352の選択は、色調整UIコントロール352を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、色調整UIコントロール352にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The third stage 315 displays the GUI 300 after the user has selected the color adjustment UI control 352 for the user to initiate saturation adjustment for the image 355, as indicated by the highlighting of the color adjustment UI control 352. Show. Selection of the color adjustment UI control 352 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device having a touch or near touch sensitive screen that displays the color adjustment UI control 352 Or by placing the cursor on the color adjustment UI control 352 and providing input (eg, clicking the cursor control device, pressing a hot key, etc.).

第4ステージ320は、ユーザが、矢印362によって示されるように、UIコントロール352のつまみを右に移動させることによって、画像355の彩度の調整を開始した後の、GUI300を示す。一部の実施形態では、ユーザは、ジェスチャを実行すること(例えば、ユーザの指を異なる場所にドラッグすること)によって、UIコントロール352のつまみを移動させることができる。この指の移動の結果として、画像355の全域にわたる斜線によって示されるように、画像355内の色の彩度が増大されている。一部の実施形態では、このアプリケーションは、画像内の色の強度を調整することによって、画像の色の彩度を調整する。これらの実施形態では、アプリケーションは、色調整UIコントロール352に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、画像の全ての画素値に、そのアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、画像の色値を定義する色空間(例えば、RGB色空間)から、輝度チャネルを含む色空間(例えば、YCrCb色空間、YIQ色空間、IPT色空間など)に、画像の色値を変換する。クロミナンス色チャネル(すなわち、輝度チャネル以外のチャネル)は、極座標系(例えば、動径値及び角度)内に表すことができ、この極座標系内では、動径値は、色の彩度を表し、角度は、種々の色合いを表す。この新たな色空間に、画像の色値が変換されると、アプリケーションは、画像内の各色の動径値を調整することによって、画像の彩度を調整することができる。   The fourth stage 320 shows the GUI 300 after the user has started adjusting the saturation of the image 355 by moving the knob of the UI control 352 to the right as indicated by the arrow 362. In some embodiments, the user can move the thumb of UI control 352 by performing a gesture (eg, dragging the user's finger to a different location). As a result of this finger movement, the saturation of the colors in the image 355 is increased, as indicated by the diagonal lines across the image 355. In some embodiments, the application adjusts the color saturation of the image by adjusting the intensity of the colors in the image. In these embodiments, the application determines an algorithm or mathematical equation for adjusting the color values of the image based on user input to the color adjustment UI control 352. The application then applies the algorithm or mathematical equation to all pixel values in the image. In some embodiments, the application may use a color space (eg, a YCrCb color space, a YIQ color space, an IPT color space, etc.) that includes a luminance channel from a color space that defines the color values of the image (eg, RGB color space). ) To convert the color value of the image. A chrominance color channel (ie, a channel other than a luminance channel) can be represented in a polar coordinate system (eg, radial value and angle), in which the radial value represents color saturation, The angle represents various shades. When the color value of the image is converted into this new color space, the application can adjust the saturation of the image by adjusting the radius value of each color in the image.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して彩度調整を実施した後の、第4ステージ320で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the fourth stage 320 after the user performs saturation adjustment on the image 355.

第5ステージ325は、ユーザが、矢印364によって示されるように、UIコントロール352のつまみを更に右に移動させることによって、画像355の彩度を更に調整した後の、GUI300を示す。図示のように、このステージ325での画像355内の色は、画像355の全域にわたる、より高密度の斜線によって示されるように、第4ステージ320での画像内の色よりも、更に彩度が増大されて示される。   The fifth stage 325 shows the GUI 300 after the user has further adjusted the saturation of the image 355 by moving the knob of the UI control 352 further to the right as indicated by the arrow 364. As shown, the colors in the image 355 at this stage 325 are more saturated than the colors in the image at the fourth stage 320, as indicated by the denser diagonal lines throughout the image 355. Is shown increased.

図3は、彩度UIコントロール352を通じて、画像全体の彩度を調整する実施例を示す。一部の実施形態の画像編集アプリケーションはまた、画像の一部分のみの彩度を調整する、色調整UIコントロールも提供する。例えば、このアプリケーションは、自然な彩度調整として既知である、肌の色調を維持しつつ画像の彩度を調整する(すなわち、肌の色調以外の、画像内の全ての色の彩度を調整する)彩度調整UIコントロールを提供することができる。   FIG. 3 shows an embodiment in which the saturation of the entire image is adjusted through the saturation UI control 352. The image editing application of some embodiments also provides a color adjustment UI control that adjusts the saturation of only a portion of the image. For example, this application adjusts the saturation of an image while maintaining the skin tone, known as natural saturation adjustment (ie, adjusting the saturation of all colors in the image except the skin tone) Yes) Saturation adjustment UI control can be provided.

種々の実施形態は、画像内の色の自然な彩度を調整するためのUIコントロールを提供する際に、種々の技術を提供する。一手法では、このアプリケーションは、ユーザが、アプリケーションの設定を修正することによって、彩度調整と自然な彩度調整とを切り替えることを可能にする。図4は、そのような手法の実施例を示す。具体的には、図4は、自然な彩度UIコントロールを呼び出して操作する実施例を、6つの異なるステージ405、410、415、420、425、及びステージ430で示す。   Various embodiments provide various techniques in providing UI controls for adjusting the natural saturation of colors in an image. In one approach, the application allows the user to switch between saturation adjustment and natural saturation adjustment by modifying application settings. FIG. 4 shows an example of such an approach. Specifically, FIG. 4 shows an embodiment for invoking and manipulating natural saturation UI controls, with six different stages 405, 410, 415, 420, 425, and stage 430.

第1ステージ405は、図3の第2ステージ310と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ410は、選択可能UI項目360の強調表示によって示されるように、ユーザが、アプリケーション設定ポップアップメニューを引き出すための選択可能UI項目360を選択した後の、GUI300を示す。選択可能UI項目360の選択は、選択可能UI項目360を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目360にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、選択可能UI項目360の選択は、ポップアップメニュー435を、UIコントロール表示領域350の上部に表示させる。ポップアップメニュー435は、彩度UIコントロール352の設定を切り替えるための、「肌の色調なし」と標識される選択可能項目440などの、このアプリケーションの設定を修正するための幾つかの選択可能項目を含む。   The first stage 405 is the same as the second stage 310 of FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 410 shows the GUI 300 after the user has selected the selectable UI item 360 to bring up the application settings pop-up menu, as indicated by the highlighting of the selectable UI item 360. Selection of the selectable UI item 360 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device that has a touch or near touch sensitive screen that displays the selectable UI item 360. Or by placing the cursor on the selectable UI item 360 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As illustrated, selection of the selectable UI item 360 causes a pop-up menu 435 to be displayed at the top of the UI control display area 350. Pop-up menu 435 provides a number of selectable items for modifying the settings of this application, such as selectable item 440 labeled “no skin tone” to toggle the setting of saturation UI control 352. Including.

第3ステージ415は、選択可能項目440の強調表示によって示されるように、ユーザが、「肌の色調なし」と標識される選択可能項目440を選択した後の、GUI300を示す。選択可能項目440の選択は、選択可能項目440を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能項目440にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。この選択の結果として、彩度UIコントロール352は、この時点で、画像に対する自然な彩度調整を制御するためのものである。前述のように、自然な彩度調整は、肌の色調を維持しつつ、画像355内の色の彩度のみを調整する。   The third stage 415 shows the GUI 300 after the user has selected the selectable item 440 that is labeled “no skin tone”, as indicated by the highlighting of the selectable item 440. Selection of selectable item 440 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device having a touch or near touch sensitive screen that displays selectable item 440. Or by placing the cursor on the selectable item 440 and providing input (eg, clicking a cursor control device, pressing a hot key, etc.). As a result of this selection, the saturation UI control 352 is for controlling the natural saturation adjustment for the image at this point. As described above, natural saturation adjustment adjusts only the saturation of the colors in the image 355 while maintaining the skin tone.

第4ステージ420は、彩度UIコントロール352の強調表示によって示されるように、ユーザが、彩度UIコントロール352を選択した後の、GUI300を示す。彩度UIコントロール352の選択は、彩度UIコントロール352を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、彩度UIコントロール352にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The fourth stage 420 shows the GUI 300 after the user has selected the saturation UI control 352, as indicated by the highlighting of the saturation UI control 352. Selection of the saturation UI control 352 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device having a touch or near-touch sensitive screen that displays the saturation UI control 352 Or by placing the cursor on the saturation UI control 352 and providing input (eg, clicking the cursor control device, pressing a hot key, etc.).

第5ステージ425は、ユーザが、矢印470によって示されるように、彩度UIコントロール352のつまみを右に移動させることによって、画像の自然な彩度を増大させ始めた後の、GUI300を示す。一部の実施形態では、ユーザは、範囲スライダに沿った異なる場所に、ユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、彩度UIコントロール352のつまみを移動させることができる。この指の移動の結果として、画像355の全域にわたる斜線によって示されるように、画像355内の(肌の色調以外の)色の彩度が増大されているが、その一方で、画像355内の人の顔の領域は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、画像の画素のクロミナンス値を調整することによって、画像の色の彩度を調整する。これらの実施形態では、アプリケーションは、彩度UIコントロール352に対するユーザの入力に基づいて、画像の画素値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、肌の色調として特定された、画像の全ての色値に、そのアルゴリズム又は数学的方程式を適用する。   The fifth stage 425 shows the GUI 300 after the user begins to increase the natural saturation of the image by moving the knob of the saturation UI control 352 to the right, as indicated by the arrow 470. In some embodiments, the user can move the knob of the saturation UI control 352 by dragging the user's finger (or dragging the cursor) to different locations along the range slider. . As a result of this finger movement, the saturation of the colors in the image 355 (other than the skin tone) is increased as shown by the diagonal lines across the image 355, while in the image 355 The human face area is maintained unaffected. In some embodiments, the application adjusts the color saturation of the image by adjusting the chrominance values of the image pixels. In these embodiments, the application determines an algorithm or mathematical equation for adjusting the pixel values of the image based on user input to the saturation UI control 352. The application then applies the algorithm or mathematical equation to all color values of the image, specified as skin tone.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して彩度調整を実施した後の、第4ステージ320で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the fourth stage 320 after the user performs saturation adjustment on the image 355.

第6ステージ430は、ユーザが、矢印475によって示されるように、彩度UIコントロール352のつまみを更に右に移動させることによって、画像の自然な彩度を更に増大させた後の、GUI300を示す。図示のように、このステージ430での画像355内の色は、画像355の全域にわたる、より高密度の斜線によって示されるように、第5ステージ425での画像内の色よりも、更に彩度が増大されて示されるが、その一方で、画像355内の人の顔の領域は、影響を受けないまま維持される。   The sixth stage 430 shows the GUI 300 after the user has further increased the natural saturation of the image by moving the knob of the saturation UI control 352 further to the right as indicated by arrow 475. . As shown, the colors in the image 355 at this stage 430 are more saturated than the colors in the image at the fifth stage 425, as indicated by the denser diagonal lines across the image 355. Is shown increased, while the human face region in the image 355 remains unaffected.

一部の実施形態では、このアプリケーションは、画像のコンテンツに基づいて、彩度UIコントロール352に関するデフォルト設定を選択する。例えば、一部の実施形態のアプリケーションは、画像に対して顔検出アルゴリズムを実行し、次いで、画像上に顔が検出されるか否かに基づいて、彩度UIコントロール352に関する設定を決定する。   In some embodiments, the application selects default settings for the saturation UI control 352 based on the content of the image. For example, the application of some embodiments performs a face detection algorithm on the image and then determines settings for the saturation UI control 352 based on whether a face is detected on the image.

種々の実施形態は、種々の技術を使用して、肌の色調を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、肌の色調を定義する。反対色空間は、一般的にはYCC色空間として既知の、3つの反対色チャネル(例えば、白/黒チャネル、赤/緑チャネル、及び黄/青チャネル)に依存する色空間である。反対色空間の幾つかの例としては、YIQ色空間、YcbCr色空間、及びIPT色空間が挙げられる。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、YCC色空間として説明される。しかしながら、YCC色空間は、上述の色空間のいずれかのうちの1つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、肌の色調の範囲を定義するために使用される色空間は、画像の色値が定義される色空間(例えば、RGB色空間)とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間(例えば、RGB色空間)から、肌の色調に関する範囲を定義するために使用されるYCC色空間に、画像を変換する。次いで、このアプリケーションは、肌の色調に関して定義される変換された色空間内の色値の範囲内に収まる色値を有する、その画像の画素を特定する。図5は、RGB色空間505からYCC色空間500への、例示的な変換を示す。   Various embodiments use various techniques to identify skin tone. For example, the image editing application of some embodiments defines the skin tone as a range of color values in the opposite color space. The opposite color space is a color space that depends on three opposite color channels (eg, white / black channel, red / green channel, and yellow / blue channel), commonly known as the YCC color space. Some examples of opposite color spaces include the YIQ color space, the YcbCr color space, and the IPT color space. In the following description, the color space used to define the range of color values for various content types is described as a YCC color space. However, those skilled in the art should know that the YCC color space can be any one of the color spaces described above. In some of these embodiments, the color space used to define the skin tone range is different from the color space (eg, RGB color space) where the color values of the image are defined. In these embodiments, some embodiment applications are initially used to define a range for skin tone from the original color space (eg, RGB color space) in which the image color values are defined. The image is converted to the YCC color space. The application then identifies the pixels of the image that have color values that fall within the range of color values in the transformed color space defined for the skin tone. FIG. 5 illustrates an exemplary conversion from the RGB color space 505 to the YCC color space 500.

図5に示すように、RGB色空間505は、3つの軸、すなわち、赤色成分値の範囲を表す軸525、緑色成分値の範囲を表す軸515、及び青色成分値の範囲を表す軸535に沿って定義される。それゆえ、画像355のあらゆる色は、RGB色空間505内部の場所によって表すことができる。   As shown in FIG. 5, the RGB color space 505 has three axes: an axis 525 representing the range of red component values, an axis 515 representing the range of green component values, and an axis 535 representing the range of blue component values. Defined along. Therefore, any color in the image 355 can be represented by a location within the RGB color space 505.

図5はまた、肌の色調を定義するために一部の実施形態と共に使用される、YCC色空間500も提示する。図示のように、このYCC色空間は、3つの軸、すなわち、赤及び緑の色値の範囲を表す軸520、青及び黄の色値の範囲を表す軸530、及び種々の濃淡の灰色の範囲(すなわち、輝度値の範囲)を表す垂直軸510に沿って定義され、底面の場所540は黒色を表し、上面の場所550は白色を表す。色が明るくなるほど、その色は、この色空間の円柱500の底面から遠くに出現する。   FIG. 5 also presents a YCC color space 500 that is used with some embodiments to define skin tone. As shown, this YCC color space has three axes: an axis 520 representing a range of red and green color values, an axis 530 representing a range of blue and yellow color values, and various shades of gray. Defined along a vertical axis 510 that represents a range (ie, a range of luminance values), the bottom location 540 represents black and the top location 550 represents white. The brighter the color, the farther the color appears from the bottom surface of the column 500 in this color space.

色の彩度に関しては、色の彩度が増大するほど、その色は、円筒の中心から遠くに出現する。中心はグレースケールを表すものであり、その最低地点540は、色を含まず(すなわち、黒色)、最高地点550は、全ての色がその最大強度で存在すること(すなわち、白色)を表し、この最高地点を最低地点に接続する垂直線に沿った全ての他の地点は、種々の濃淡の灰色を表す。各濃淡の灰色は、全ての色が等しく存在することを表すが、灰色が濃くなるほど、それらの色の強度が小さくなる。また、灰色が明るくなるほど、それらの色の強度が大きくなる。   With respect to color saturation, the greater the color saturation, the farther the color appears from the center of the cylinder. The center represents grayscale, its lowest point 540 does not contain color (ie, black), and highest point 550 represents that all colors are present at its maximum intensity (ie, white) All other points along the vertical line connecting this highest point to the lowest point represent various shades of gray. Each shade of gray represents that all colors are present equally, but the darker the gray, the lower the intensity of those colors. Also, the brighter the gray, the greater the intensity of those colors.

一部の実施形態では、肌の色調は、領域560などの、特定の彩度範囲及び特定の強度範囲を有する、赤色調の色相と黄色調の色相との間の、YCC色空間の円柱500の領域内部に定義される。一部の実施形態はまた、様々な人種及び/又は民族に関連付けられている肌の色調の範囲を対象とするように、肌の色調を広範に定義する。そのような広範な定義は、ユーザが肌の色調を手動で定義する必要性を取り除く。一部の実施形態は、アプリケーションによって認識される肌の色調の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。   In some embodiments, the skin tone is a cylinder 500 in the YCC color space between a red hue and a yellow hue having a specific saturation range and a specific intensity range, such as region 560. Defined within the region. Some embodiments also broadly define skin tone to cover a range of skin tones associated with various races and / or ethnicities. Such a broad definition eliminates the need for the user to manually define the skin tone. It should be apparent to those skilled in the art that some embodiments provide a threshold parameter to increase or decrease the range of skin tones perceived by the application.

一部の実施形態のアプリケーションは、RGB色空間505内の各色を、YCC色空間500内の別の色にマッピングすることによって、RGB色空間505からYCC色空間500に、画像を変換する。例えば、RGB色空間505内の色545は、YCC色空間500内の色570にマッピングされ、RGB色空間505内の色555は、YCC色空間500内の色580にマッピングされる。RGB色空間からYCC色空間に画像を変換することによって、このアプリケーションは、定義された肌の色調領域560の範囲内に収まる色(例えば、色555)及び、定義された肌の色調領域560の範囲内に収まらない色(例えば、色545)を特定することが可能である。   The application of some embodiments converts the image from the RGB color space 505 to the YCC color space 500 by mapping each color in the RGB color space 505 to another color in the YCC color space 500. For example, the color 545 in the RGB color space 505 is mapped to the color 570 in the YCC color space 500, and the color 555 in the RGB color space 505 is mapped to the color 580 in the YCC color space 500. By converting the image from the RGB color space to the YCC color space, the application allows colors that fall within the defined skin tone area 560 (eg, color 555) and the defined skin tone area 560 to be defined. It is possible to identify colors that do not fall within the range (eg, color 545).

図4は、画像の彩度を調整する例示的操作を示す。画像の彩度を調整する代わりに、一部の実施形態は、ユーザが画像の色温度を調整することを可能にする、肌の色調UIコントロールを提供する。色温度は、画像内の対象物から反射する可視光の特性である。画像内の対象物に当っている、より暖かい光は、その画像内の対象物の色に、より暖かい色調(すなわち、より多くの赤色及び黄色)を作り出し、その一方で、画像内の対象物に当っている、より冷たい光は、その画像内の対象物の色に、より冷たい色調(すなわち、より多くの青色及びシアン)を作り出す。それゆえ、画像の色温度を調整することは、画像に対して、より多くの赤色/黄色を追加すること、又はより多くの青色/シアンを追加することを意味する。   FIG. 4 illustrates an exemplary operation for adjusting the saturation of an image. Instead of adjusting the saturation of the image, some embodiments provide a skin tone UI control that allows the user to adjust the color temperature of the image. Color temperature is a characteristic of visible light reflected from an object in an image. The warmer light that strikes an object in the image creates a warmer tone (ie, more red and yellow) in the color of the object in the image, while the object in the image The cooler light that hits creates a cooler tone (ie, more blue and cyan) in the color of the object in the image. Therefore, adjusting the color temperature of the image means adding more red / yellow or more blue / cyan to the image.

図6は、そのような実施例を示す。具体的には、図6は、肌の色調UIコントロールを操作することによって画像の色温度を調整することにより、肌の色調を改善する操作を、4つの異なるステージ605、610、615、及びステージ620で示す。   FIG. 6 shows such an embodiment. Specifically, FIG. 6 illustrates four different stages 605, 610, 615, and stages for improving the skin tone by adjusting the color temperature of the image by operating the skin tone UI control. 620.

第1ステージ605は、図3の第2ステージ310と同一である。図示のように、ユーザは、画像355の色を調整するために、ツールバー340から選択可能UI項目342を選択している。第2ステージ610は、肌の色調UIコントロール356の強調表示によって示されるように、ユーザが肌の色調UIコントロール356を選択した後の、GUI300を示す。肌の色調UIコントロール356の選択は、肌の色調UIコントロール356を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、肌の色調UIコントロール356にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The first stage 605 is the same as the second stage 310 of FIG. As shown, the user has selected a selectable UI item 342 from the toolbar 340 to adjust the color of the image 355. The second stage 610 shows the GUI 300 after the user has selected the skin tone UI control 356, as indicated by the highlighting of the skin tone UI control 356. The selection of the skin tone UI control 356 is performed by performing a gesture (eg, placing a finger, pointing, or fingering) at a location on the device that has a touch or near-touch sensitive screen that displays the skin tone UI control 356. By tapping) or by placing the cursor on the skin tone UI control 356 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.).

第3ステージ615は、ユーザが、矢印625によって示されるように、肌の色調UIコントロール356のつまみを右に移動させることによって、画像の肌の色調の調整を開始した後の、GUI300を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、肌の色調UIコントロール356のつまみを移動させることができる。この指の移動の結果として、画像355の全域にわたる斜線によって示されるように、画像355内の色値が調整されている。一部の実施形態では、このアプリケーションは、肌の色調をより心地よいものにするために、画像の色温度を調整する。これらの実施形態の一部では、アプリケーションは、図5を参照して上述されたものと同じ、定義された肌の色調の範囲を使用して、その定義された肌の色調の範囲内に収まる画像内の色を、より心地よいものにするように、画像の色値を調整する。   The third stage 615 shows the GUI 300 after the user has started adjusting the skin tone of the image by moving the knob of the skin tone UI control 356 to the right as indicated by the arrow 625. In some embodiments, the user can move the knob of the skin tone UI control 356 by dragging the user's finger (or dragging the cursor) to a different location. As a result of this finger movement, the color values in the image 355 have been adjusted as indicated by the diagonal lines across the image 355. In some embodiments, the application adjusts the color temperature of the image to make the skin tone more pleasant. In some of these embodiments, the application fits within the defined skin tone range using the same defined skin tone range as described above with reference to FIG. Adjust the color value of the image to make the colors in the image more comfortable.

一部の実施形態では、このアプリケーションは、肌の色調UIコントロール356に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、画像の全ての画素に、そのアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、色値に調整を適用する前に、最初に、その画像の色値を異なる色空間(例えば、YCC色空間)に変換する。上述のように、YCC色空間は、黒/白の色成分、赤/緑の色成分、及び黄/青の色成分に沿って定義される。RGB色空間からYIQ色空間への変換は、最初に、RGB色空間内の色値に対して約1/4のgammaを適用し、次いで、3×3行列を適用して、その色値をYIQ色空間に変換することによって、実行することができる。これらの実施形態では、アプリケーションは、白/黒の成分に沿った値を変更することなく、赤/緑の色成分、及び黄/青の色成分に沿った値のみを調整することによって、YIQ色空間内の画像の色温度を調整する。一部の実施形態では、このアプリケーションは、YIQ色空間内の画像の色温度を調整するが、これは、その画像の色値の本来の色空間(例えば、RGB色空間)の代わりに、YIQ色空間内で調整を適用することが、より視覚的に心地よい結果を生み出すためである。更には、これらの実施形態でのアプリケーションは、調整が完了した後、画像の色値を、本来の色空間に変換して戻す。   In some embodiments, the application determines an algorithm or mathematical equation for adjusting the color values of the image based on user input to the skin tone UI control 356. The application then applies the algorithm or mathematical equation to every pixel of the image. In some embodiments, the application first converts the color value of the image to a different color space (eg, YCC color space) before applying the adjustment to the color value. As described above, the YCC color space is defined along the black / white color component, the red / green color component, and the yellow / blue color component. The conversion from the RGB color space to the YIQ color space first applies about 1/4 gamma to the color values in the RGB color space, and then applies a 3 × 3 matrix to convert the color values. This can be done by converting to the YIQ color space. In these embodiments, the application adjusts only the values along the red / green color component and the yellow / blue color component without changing the values along the white / black component. Adjust the color temperature of the image in the color space. In some embodiments, the application adjusts the color temperature of the image in the YIQ color space, which replaces the original color space of the image's color values (eg, RGB color space) instead of the YIQ. This is because applying the adjustment within the color space produces a more visually pleasing result. Furthermore, the applications in these embodiments convert the color values of the image back to the original color space after the adjustment is complete.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して肌の色調調整を実施した後の、第3ステージ615で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As shown in the drawing, a bar appears above the selectable UI item 342 in the third stage 615 after the user performs skin tone adjustment on the image 355.

第4ステージ620は、ユーザが、矢印630によって示されるように、肌の色調UIコントロール356のつまみを更に右に移動させることによって、画像の肌の色調を更に調整した後の、GUI300を示す。図示のように、このステージ620での画像355の色は、画像355の全域にわたる、より高密度の斜線によって示されるように、第3ステージ615での画像内の色よりも、更に調整されて示される。   The fourth stage 620 shows the GUI 300 after the user has further adjusted the skin tone of the image by moving the knob of the skin tone UI control 356 further to the right as indicated by the arrow 630. As shown, the color of the image 355 at this stage 620 is further adjusted than the color in the image at the third stage 615, as indicated by the denser diagonal lines throughout the image 355. Indicated.

図6によって示される上記の実施例では、一部の実施形態のアプリケーションは、肌の色調UIコントロール356に対するユーザの入力に応答して、画像全体の色温度を調整する。あるいは、他の実施形態のアプリケーションは、画像内の肌の色調のみの色温度を調整する。これらの実施形態では、アプリケーションは、肌の色調に関連付けられている予め定義された色値の範囲内に収まる色値を有する、画像内の画素を特定するために、上述のものと同じ技術を使用する。次いで、このアプリケーションは、画像内部の、その特定された画素の色温度のみを調整する。その効果は、図4に示すような、自然な彩度調整が画像に対して行うものの反対である。   In the above example illustrated by FIG. 6, some embodiment applications adjust the color temperature of the entire image in response to user input to the skin tone UI control 356. Or the application of other embodiment adjusts the color temperature of only the color tone of the skin in an image. In these embodiments, the application uses the same technique as described above to identify pixels in the image that have color values that fall within a predefined range of color values associated with the skin tone. use. The application then adjusts only the color temperature of the identified pixel within the image. The effect is the opposite of what natural saturation adjustment performs on the image as shown in FIG.

上述のように、一部の実施形態の画像編集アプリケーションはまた、画像の一部分(例えば、画像の空の色又は群葉の色)のみを調整するためのUIコントロールも提供する。図7は、画像の残余の色に影響を与えることなく、画像の空の色を調整又は強調する例示的操作を、4つの異なるステージ705、710、715、及びステージ720で示す。   As described above, the image editing application of some embodiments also provides UI controls for adjusting only a portion of the image (eg, the sky color or foliage color of the image). FIG. 7 illustrates an exemplary operation for adjusting or enhancing the sky color of an image at four different stages 705, 710, 715, and stage 720 without affecting the residual colors of the image.

第1ステージ705は、図3の第2ステージ310と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ710は、空UIコントロール354の強調表示によって示されるように、ユーザが空UIコントロール354を選択した後の、GUI300を示す。空UIコントロール354の選択は、空UIコントロール354を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、空UIコントロール354にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The first stage 705 is the same as the second stage 310 of FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 710 shows the GUI 300 after the user selects the empty UI control 354, as indicated by the highlighting of the empty UI control 354. Selection of the empty UI control 354 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device that has a touch or near touch sensitive screen that displays the empty UI control 354. Or by placing the cursor on an empty UI control 354 and providing input (eg, clicking a cursor control device, pressing a hot key, etc.).

第3ステージ715は、ユーザが、矢印725によって示されるように、空UIコントロール354のつまみを右に移動させることによって、画像の空の色を強調させ始めた後の、GUI300を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、空UIコントロール354のつまみを移動させることができる。この指の移動の結果として、画像355内の空の領域の全域にわたる斜線によって示されるように、画像355内の空の色が強調されているが、その一方で、画像355内の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、空の色の彩度を調整することによって、空の色を強調する。これらの実施形態では、アプリケーションは、空UIコントロール354に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、空の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。彩度を調整する代わりに、又はそれに加えて、一部の他の実施形態のアプリケーションはまた、画像内の空の色の明度及びコントラストも調整することにより、画像内の空の色に対する全体的な強調をもたらす。これらの実施形態では、アプリケーションは、ユーザの空UIコントロール354のつまみの移動によって提供される(単一の調整値を指定する)単一の調整を使用して、空の色を有するとして特定されている画像の画素に対する彩度、コントラスト、及び明度に関する調整を決定する。   The third stage 715 shows the GUI 300 after the user begins to enhance the sky color of the image by moving the knob of the sky UI control 354 to the right as indicated by the arrow 725. In some embodiments, the user can move the thumb of the empty UI control 354 by dragging the user's finger to a different location (or dragging the cursor). As a result of this finger movement, the sky color in image 355 is highlighted, as shown by the diagonal lines across the sky region in image 355, while the rest in image 355 is Maintained unaffected. In some embodiments, the application enhances the sky color by adjusting the saturation of the sky color. In these embodiments, the application determines an algorithm or mathematical equation for adjusting the color values of the image based on user input to the sky UI control 354. The application then applies the algorithm or mathematical equation to the pixels of the image that have been identified as having a sky color. Instead of or in addition to adjusting the saturation, some other embodiment applications may also adjust the overall brightness for the sky colors in the image by adjusting the brightness and contrast of the sky colors in the image. Emphasis. In these embodiments, the application is identified as having a sky color using a single adjustment (specifying a single adjustment value) provided by the thumb movement of the user's sky UI control 354. Determine the adjustments for saturation, contrast, and lightness for the pixels of the current image.

例えば、空UIコントロールにより、ユーザが−0.5〜0.5の調整値を指定することが可能となる場合、一部の実施形態のアプリケーションは、コントラスト調整値(すなわち、ゲイン値)が、1の値、又はその調整値に1を加えた値のいずれか大きい方になるように決定する。このアプリケーションはまた、明度調整値(すなわち、gamma)も、その調整値の絶対値に1を加えたものとなるように決定する。次いで、このアプリケーションは、RGB色空間内の画像に、これらの2つの調整を適用する。コントラスト及びgammaを使用して、各画素の色値を計算するための数式は、R=ゲイン*(colorvalue)gammaであり、式中、パラメータ「ゲイン」は、コントラスト調整値を表し、パラメータ「colorvalue」は、画像内の各画素の色値(すなわち、赤チャネル値、緑チャネル値、又は青チャネル値)を表し、パラメータgammaは、明度調整値を表す。 For example, if the sky UI control allows the user to specify an adjustment value between -0.5 and 0.5, the application of some embodiments may have a contrast adjustment value (ie, gain value) The value is determined to be the larger of the value of 1 or the value obtained by adding 1 to the adjustment value. The application also determines the lightness adjustment value (ie, gamma) to be the absolute value of the adjustment value plus one. The application then applies these two adjustments to the image in the RGB color space. The formula for calculating the color value of each pixel using contrast and gamma is R = gain * (colorvalue) gamma , where the parameter “gain” represents the contrast adjustment value and the parameter “colorvalue” “Represents the color value of each pixel in the image (ie, the red channel value, the green channel value, or the blue channel value), and the parameter gamma represents the brightness adjustment value.

画像の彩度を調整するために、一部の実施形態のアプリケーションは、R=colorvalue+(colorvalue−ave)*(gamma−1)*0.5、の数式を使用して、各画素の色値を計算し、式中、パラメータcolor valueは、画像内の各画素の色値(すなわち、赤チャネル値、緑チャネル値、又は青チャネル値)を表し、パラメータ「ave」は、各画素に関する3つの色成分値の平均(例えば、(赤チャネル値、緑チャネル値、青チャネル値)の合計を3で除算すること)を表し、パラメータ「gamma」は、明度調整値を表す。   In order to adjust the saturation of the image, the application of some embodiments uses the following formula: R = colorvalue + (colorvalue-ave) * (gamma-1) * 0.5 Where the parameter color value represents the color value of each pixel in the image (ie, the red channel value, the green channel value, or the blue channel value), and the parameter “ave” has three values for each pixel The average of the color component values (for example, the sum of (red channel value, green channel value, blue channel value) is divided by 3), and the parameter “gamma” represents the brightness adjustment value.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して空調整を実施した後の、第3ステージ715で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As shown in the figure, a bar appears above the selectable UI item 342 in the third stage 715 after the user performs the sky adjustment on the image 355.

第4ステージ720は、ユーザが、矢印730によって示されるように、空UIコントロール354のつまみを更に右に移動させることによって、画像の空の色を更に強調した後の、GUI300を示す。図示のように、このステージ720での画像355の空の色は、画像355内の空の領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ715での画像内の空の色よりも、更に強調されて示されるが、その一方で、画像355の残部は、影響を受けないまま維持される。   The fourth stage 720 shows the GUI 300 after the user has further enhanced the sky color of the image by moving the knob of the sky UI control 354 further to the right as indicated by the arrow 730. As shown, the sky color of the image 355 at this stage 720 is the sky color in the image at the third stage 715, as shown by the denser diagonal lines across the sky area in the image 355. Is shown with more emphasis than the color of, while the remainder of image 355 remains unaffected.

種々の実施形態は、種々の技術を使用して、空の色を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、空の色を定義する。反対色空間は、一般的にはYCC色空間として既知の、3つの反対色チャネル(例えば、白/黒チャネル、赤/緑チャネル、及び黄/青チャネル)に依存する色空間である。反対色空間の幾つかの例としては、YIQ色空間、YcbCr色空間、及びIPT色空間が挙げられる。一部の実施形態では、反対色空間は、特に青色領域での、その均一な知覚的挙動のために、空の色を定義するために好ましい。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、YCC色空間として説明される。しかしながら、YCC色空間は、上述の色空間のいずれかのうちの1つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、空の色の範囲を定義するために使用される色空間は、画像の色値が定義される色空間(例えば、RGB色空間)とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間(例えば、RGB色空間)から、空の色の範囲を定義するために使用されるYCC色空間に、画像を変換する。次いで、このアプリケーションは、その新たな色空間内で、空の色に関して定義される範囲内に収まる色値を有する、その画像の画素を特定する。図8は、RGB色空間805からYCC色空間800への、例示的な変換を示す。   Various embodiments use various techniques to identify the sky color. For example, the image editing application of some embodiments defines a sky color as a range of color values in the opposite color space. The opposite color space is a color space that depends on three opposite color channels (eg, white / black channel, red / green channel, and yellow / blue channel), commonly known as the YCC color space. Some examples of opposite color spaces include the YIQ color space, the YcbCr color space, and the IPT color space. In some embodiments, the opposite color space is preferred to define the sky color because of its uniform perceptual behavior, especially in the blue region. In the following description, the color space used to define the range of color values for various content types is described as a YCC color space. However, those skilled in the art should know that the YCC color space can be any one of the color spaces described above. In some of these embodiments, the color space used to define the sky color range is different from the color space (eg, RGB color space) in which the color values of the image are defined. In these embodiments, some embodiment applications are initially used to define a sky color range from the original color space (eg, RGB color space) in which the color values of the image are defined. The image is converted to the YCC color space. The application then identifies pixels of the image that have color values that fall within the range defined for the sky color within the new color space. FIG. 8 shows an exemplary conversion from the RGB color space 805 to the YCC color space 800.

図8に示すように、RGB色空間805は、3つの軸、すなわち、赤色成分値の範囲を表す軸825、緑色成分値の範囲を表す815、及び青色成分値の範囲を表す軸835に沿って定義される。それゆえ、画像355のあらゆる色は、RGB色空間805内部の場所によって表すことができる。   As shown in FIG. 8, the RGB color space 805 is along three axes: an axis 825 representing the range of red component values, 815 representing the range of green component values, and an axis 835 representing the range of blue component values. Defined. Therefore, any color in the image 355 can be represented by a location within the RGB color space 805.

図8はまた、空の色を定義するために一部の実施形態と共に使用される、YCC色空間800も提示する。図示のように、このYCC色空間は、3つの軸、すなわち、赤及び緑の色値の範囲を表す軸820、青及び黄の色値の範囲を表す軸830、及び種々の濃淡の灰色の範囲(すなわち、輝度値の範囲)を表す垂直軸810に沿って定義され、底面の場所840は黒色を表し、上面の場所850は白色を表す。色が明るくなるほど、その色は、この色空間の円柱800の底面から遠くに出現する。   FIG. 8 also presents a YCC color space 800 that is used with some embodiments to define sky colors. As shown, this YCC color space has three axes: an axis 820 representing a range of red and green color values, an axis 830 representing a range of blue and yellow color values, and various shades of gray. Defined along a vertical axis 810 that represents a range (ie, a range of luminance values), the bottom location 840 represents black and the top location 850 represents white. The brighter the color, the farther it appears from the bottom surface of the column 800 in this color space.

一部の実施形態では、空の色は、領域860などの、特定の黒/白の範囲を有する、青、赤、及び黄色の領域の周囲の、YCC色空間の円柱800の領域内部に定義される。それゆえ、この空の色値の範囲は、青空、雲、日の出、及び日没の色を含む。一部の実施形態は、アプリケーションによって認識される空の色の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。   In some embodiments, the sky color is defined within a region of a cylinder 800 in the YCC color space around a blue, red, and yellow region that has a specific black / white range, such as region 860. Is done. Therefore, this range of sky color values includes blue sky, clouds, sunrise, and sunset colors. It should be apparent to those skilled in the art that some embodiments provide a threshold parameter to increase or decrease the sky color range recognized by the application.

一部の実施形態のアプリケーションは、RGB色空間805内の各色を、YCC色空間800内の別の色にマッピングすることによって、RGB色空間805からYCC色空間800に、画像を変換する。例えば、RGB色空間805内の色845は、YCC色空間800内の色870にマッピングされ、RGB色空間805内の色855は、YCC色空間800内の色880にマッピングされる。RGB色空間からYCC色空間に画像を変換することによって、このアプリケーションは、定義された空の色の領域860の範囲内に収まる色(例えば、色855)及び、定義された空の色の領域860の範囲内に収まらない色(例えば、色845)を特定することが可能である。   The application of some embodiments converts the image from the RGB color space 805 to the YCC color space 800 by mapping each color in the RGB color space 805 to another color in the YCC color space 800. For example, the color 845 in the RGB color space 805 is mapped to the color 870 in the YCC color space 800, and the color 855 in the RGB color space 805 is mapped to the color 880 in the YCC color space 800. By converting the image from the RGB color space to the YCC color space, this application allows the color that falls within the defined sky color region 860 (eg, color 855) and the defined sky color region. A color that does not fall within the range of 860 (eg, color 845) can be identified.

画像の肌の色調又は青空の色のみを調整することに加えて、一部の実施形態の画像編集アプリケーションはまた、画像内の群葉(すなわち、緑樹)のみを調整するためのUIコントロールも提供する。図9は、画像の残余の色に影響を与えることなく、画像の群葉の色を調整又は強調する例示的操作を、4つの異なるステージ905、910、915、及びステージ920で示す。   In addition to adjusting only the skin tone or blue sky color of the image, the image editing application of some embodiments also provides UI controls for adjusting only the foliage (ie green trees) in the image. To do. FIG. 9 illustrates an exemplary operation at four different stages 905, 910, 915, and stage 920 for adjusting or enhancing the foliage color of the image without affecting the residual color of the image.

第1ステージ905は、図3の第2ステージ310と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ910は、群葉UIコントロール358の強調表示によって示されるように、ユーザが群葉UIコントロール358を選択した後の、GUI300を示す。群葉UIコントロール358の選択は、群葉UIコントロール358を表示する、タッチスクリーン装置上の場所で、指をタップすることによって、又は、群葉UIコントロール358にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The first stage 905 is the same as the second stage 310 of FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 910 shows the GUI 300 after the user selects the foliage UI control 358, as indicated by the highlight of the foliage UI control 358. Selection of the foliage UI control 358 can be done by tapping a finger at a location on the touch screen device that displays the foliage UI control 358 or by placing the cursor on the foliage UI control 358 and providing input. (E.g., clicking on a cursor control device, pressing a hot key, etc.).

第3ステージ915は、ユーザが、矢印925によって示されるように、群葉UIコントロール358のつまみを右に移動させることによって、画像の群葉の色を強調させ始めた後の、GUI300を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、群葉UIコントロール358のつまみを移動させることができる。この指の移動の結果として、画像355内の山の領域の全域にわたる斜線によって示されるように、画像355内の群葉の色(例えば、画像355の背景内の山の色)が強調されているが、その一方で、画像355の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、群葉の色の彩度、コントラスト、及び明度を調整することによって、群葉の色を強調する。これらの実施形態では、アプリケーションは、ユーザの群葉UIコントロール358のつまみの移動によって提供される単一の調整を使用して、群葉の色を有するとして特定されている画像の画素に対する彩度、コントラスト、及び明度に関する調整を決定する。空の調整と同様に、このアプリケーションは、群葉UIコントロール358に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、群葉の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。画像内の群葉の色の彩度、コントラスト、及び明度を調整することに加えて、一部の実施形態のアプリケーションはまた、枯れ草の茶色がかった色を、より純粋な緑色に向けて移動させるように、群葉の色全体もシフトする。   The third stage 915 shows the GUI 300 after the user begins to enhance the foliage color of the image by moving the knob of the foliage UI control 358 to the right as indicated by the arrow 925. In some embodiments, the user can move the knob of the foliage UI control 358 by dragging the user's finger (or dragging the cursor) to a different location. As a result of this finger movement, the color of the foliage in the image 355 (eg, the color of the mountain in the background of the image 355) is emphasized, as indicated by the diagonal lines across the mountain area in the image 355. On the other hand, the rest of the image 355 remains unaffected. In some embodiments, the application enhances the foliage color by adjusting the saturation, contrast, and brightness of the foliage color. In these embodiments, the application uses the single adjustment provided by the user's movement of the foliage UI control 358 knob to saturation the pixels of the image identified as having foliage color. Determine adjustments for contrast, brightness, and brightness. Similar to sky adjustment, this application determines an algorithm or mathematical equation for adjusting the color values of the image based on user input to the foliage UI control 358. The application then applies the algorithm or mathematical equation to the pixels of the image that have been identified as having foliage color. In addition to adjusting the color saturation, contrast, and brightness of foliage in the image, the application of some embodiments also moves the brownish color of dead grass towards a purer green color. In the same way, the color of the foliage also shifts.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して群葉調整を実施した後の、第3ステージ915で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the third stage 915 after the user performs the foliage adjustment on the image 355.

第4ステージ920は、ユーザが、矢印930によって示されるように、群葉UIコントロール358のつまみを更に右に移動させることによって、画像の群葉の色を更に強調した後の、GUI300を示す。図示のように、このステージ920での画像355の群葉の色は、画像355内の山の領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ915での画像内の群葉の色よりも、更に強調されて示されるが、その一方で、画像355の残部は、影響を受けないまま維持される。   The fourth stage 920 shows the GUI 300 after the user further enhances the foliage color of the image by moving the knob of the foliage UI control 358 further to the right as indicated by the arrow 930. As shown, the foliage color of image 355 at this stage 920 is shown in the image at third stage 915 as indicated by the denser diagonal lines across the mountain region in image 355. Although shown more emphasized than the foliage color, the rest of the image 355 remains unaffected.

図3、4、6、7、及び図9を参照して上述された実施例では、UIコントロールは、範囲スライダとして実装され、ユーザは、直線状のスライダに沿ってつまみをスライドさせることによって、入力を提供する。前述のように、種々の実施形態は、画像上の色値を調整するための種々のタイプのUIコントロールを使用する。一部の実施形態では、範囲スライダは、ユーザが、スライダの領域内のいずれの場所にもつまみを移動させることが可能な、異なる形状又はジオメトリにすることができる。他の実施形態では、このアプリケーションは、ダイヤルとして、UIコントロールを実装する。図10は、ダイヤルUIコントロールを使用して、画像の群葉の色を調整又は強調する操作の実施例を、4つの異なるステージ1005、1010、1015、及びステージ1020で示す。   In the embodiments described above with reference to FIGS. 3, 4, 6, 7, and 9, the UI control is implemented as a range slider, and the user slides the knob along the linear slider, Provide input. As described above, various embodiments use various types of UI controls for adjusting color values on an image. In some embodiments, the range slider can be a different shape or geometry that allows the user to move the thumb anywhere in the area of the slider. In other embodiments, the application implements UI control as a dial. FIG. 10 shows an example of an operation that uses the dial UI control to adjust or enhance the foliage color of the image at four different stages 1005, 1010, 1015, and stage 1020.

第1ステージ1005は、図9の第1ステージ905と同一であるが、ただし、画像に関する種々の色調整を開始するための種々のUIコントロールは、異なる外観を有する。前述のように、種々の実施形態は、画像上の色値を調整するための種々のタイプのUIコントロールを使用する。この実施例では、アプリケーションは、UIコントロール1052〜1058のセットを、ダイヤルとして実装する。範囲スライダと同様に、異なるダイヤルは、画像に対する異なる色調整操作を開始するためのものである。例えば、UIコントロール1052は、画像に対する彩度調整を開始するためのものであり、UIコントロール1054は、画像の空の色に対する色調整を開始するためのものであり、UIコントロール1058は、画像の群葉の色に対する色調整を開始するためのものであり、UIコントロール1056は、画像の肌の色調に対する色調整を開始するためのものである。ユーザは、これらのダイヤルのうちの1つを選択して、時計回り又は反時計回りの方向にダイヤルを回転させることによって、特定の色調整を開始することができる。   The first stage 1005 is the same as the first stage 905 of FIG. 9, except that the various UI controls for initiating various color adjustments on the image have different appearances. As described above, various embodiments use various types of UI controls for adjusting color values on an image. In this example, the application implements a set of UI controls 1052-1058 as a dial. Similar to the range slider, the different dials are for initiating different color adjustment operations on the image. For example, the UI control 1052 is for starting the saturation adjustment for the image, the UI control 1054 is for starting the color adjustment for the sky color of the image, and the UI control 1058 is for the image control. The UI control 1056 is for starting the color adjustment for the color of the foliage, and the UI control 1056 is for starting the color adjustment for the skin tone of the image. The user can initiate a specific color adjustment by selecting one of these dials and rotating the dial in a clockwise or counterclockwise direction.

第2ステージ1010は、群葉UIコントロール1058の強調表示によって示されるように、ユーザが群葉UIコントロール1058を選択した後の、GUI300を示す。群葉UIコントロール1058の選択は、群葉UIコントロー1058を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(指を置く、指さす、又は指をタップすること)によって、又は、群葉UIコントロール1058にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The second stage 1010 shows the GUI 300 after the user selects the foliage UI control 1058, as indicated by the highlight of the foliage UI control 1058. The selection of the foliage UI control 1058 is to perform a gesture (place a finger, point at it, or tap a finger) at a location on the device with a touch or near touch sensitive screen that displays the foliage UI controller 1058. Or by placing the cursor on the foliage UI control 1058 and providing input (eg, clicking a cursor control device, pressing a hot key, etc.).

第3ステージ1015は、ユーザが、矢印1025によって示されるように、群葉UIコントロール1058に対する円形入力を提供することによって、画像の群葉の色を強調させ始めた後の、GUI300を示す。一部の実施形態では、ユーザは、時計回り又は反時計回りの方向で、ユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、群葉UIコントロール358に対する円形入力を提供することができる。この指の移動の結果として、画像355内の山の領域の全域にわたる斜線によって示されるように、画像355内の群葉の色(例えば、画像355の背景内の山の色)が強調されているが、その一方で、画像355の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、群葉の色の彩度、コントラスト、及び明度を調整することによって、群葉の色を強調する。これらの実施形態では、アプリケーションは、群葉UIコントロール1058上でのユーザの移動によって指定される単一の調整値を使用して、群葉の色を有するとして特定されている画像の画素に対する、彩度、コントラスト、及び明度に関する調整を決定する。空の調整と同様に、このアプリケーションは、群葉UIコントロール1058に対するユーザの入力に基づいて、画像の色値を調整するためのアルゴリズム又は数学的方程式を決定する。次いで、このアプリケーションは、群葉の色を有するとして特定されている画像の画素に、そのアルゴリズム又は数学的方程式を適用する。   The third stage 1015 shows the GUI 300 after the user begins to enhance the foliage color of the image by providing a circular input to the foliage UI control 1058, as indicated by the arrow 1025. In some embodiments, the user provides circular input to the foliage UI control 358 by dragging the user's finger (or dragging the cursor) in a clockwise or counterclockwise direction. Can do. As a result of this finger movement, the color of the foliage in the image 355 (eg, the color of the mountain in the background of the image 355) is emphasized, as indicated by the diagonal lines across the mountain area in the image 355. On the other hand, the rest of the image 355 remains unaffected. In some embodiments, the application enhances the foliage color by adjusting the saturation, contrast, and brightness of the foliage color. In these embodiments, the application uses a single adjustment value specified by the user's movement on the foliage UI control 1058, for pixels of the image identified as having foliage color. Determine adjustments for saturation, contrast, and brightness. Similar to sky adjustment, this application determines an algorithm or mathematical equation for adjusting the color value of the image based on user input to the foliage UI control 1058. The application then applies the algorithm or mathematical equation to the pixels of the image that have been identified as having foliage color.

第4ステージ1020は、ユーザが、矢印1030によって示されるように、群葉UIコントロール1058の円形入力をより多く提供することによって、画像の群葉の色を更に強調した後の、GUI300を示す。図示のように、このステージ1020での画像355の群葉の色は、画像355内の山の領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ1015での画像内の群葉の色よりも、更に強調されて示されるが、その一方で、画像355の残部は、影響を受けないまま維持される。   The fourth stage 1020 shows the GUI 300 after the user has further enhanced the foliage color of the image by providing more circular input for the foliage UI control 1058, as indicated by the arrow 1030. As shown, the foliage color of the image 355 at this stage 1020 is shown in the image at the third stage 1015 as indicated by the denser diagonal lines across the mountain area in the image 355. Although shown more emphasized than the foliage color, the rest of the image 355 remains unaffected.

上記の図10は、UIコントロールに関する1つの代替的実装を示す。UIコントロールに関する、一部の他の例示的実装としては、ボタン(すなわち、ユーザは、そのボタンを押さえる期間によって、調整を適用する程度を指定することができる)、数値フィールド(すなわち、数値が高いほど、画像に対する調整が、より多く適用されることを表す)などが挙げられる。   FIG. 10 above shows one alternative implementation for UI control. Some other example implementations for UI controls include buttons (ie, the user can specify the degree to which adjustments are applied depending on how long the button is pressed), numeric fields (ie, high numeric values) This indicates that more adjustments to the image are applied).

種々の実施形態は、種々の技術を使用して、群葉の色を特定する。例えば、一部の実施形態の画像編集アプリケーションは、反対色空間内の色値の範囲として、群葉の色を定義する。反対色空間は、一般的にはYCC色空間として既知の、3つの反対色チャネル(例えば、白/黒チャネル、赤/緑チャネル、及び黄/青チャネル)に依存する色空間である。反対色空間の幾つかの例としては、YIQ色空間、YcbCr色空間、及びIPT色空間が挙げられる。一部の実施形態では、反対色空間は、その均一な知覚的挙動のために、空の色を定義するために好ましい。以下の説明では、種々のコンテンツのタイプに関する色値の範囲を定義するために使用される色空間は、YCC色空間として説明される。しかしながら、YCC色空間は、上述の色空間のいずれかのうちの1つであり得ることを、当業者は知るべきである。これらの実施形態の一部では、肌の色調の範囲を定義するために使用される色空間は、画像の色値が定義される色空間(例えば、RGB色空間)とは異なる。これらの実施形態では、一部の実施形態のアプリケーションは、最初に、画像の色値が定義される本来の色空間(例えば、RGB色空間)から、群葉の色の範囲を定義するために使用されるYCC色空間に、画像を変換する。次いで、このアプリケーションは、その新たな色空間内で、群葉の色に関して定義される範囲内に収まる色値を有する、その画像の画素を特定する。図11は、RGB色空間1105からYCC色空間1100への、例示的な変換を示す。   Various embodiments identify the foliage color using various techniques. For example, the image editing application of some embodiments defines the foliage color as a range of color values in the opposite color space. The opposite color space is a color space that depends on three opposite color channels (eg, white / black channel, red / green channel, and yellow / blue channel), commonly known as the YCC color space. Some examples of opposite color spaces include the YIQ color space, the YcbCr color space, and the IPT color space. In some embodiments, the opposite color space is preferred for defining sky colors because of its uniform perceptual behavior. In the following description, the color space used to define the range of color values for various content types is described as a YCC color space. However, those skilled in the art should know that the YCC color space can be any one of the color spaces described above. In some of these embodiments, the color space used to define the skin tone range is different from the color space (eg, RGB color space) where the color values of the image are defined. In these embodiments, the application of some embodiments first defines the foliage color range from the native color space (eg, RGB color space) in which the image color values are defined. Convert the image to the YCC color space used. The application then identifies pixels of the image that have color values that fall within the range defined for the foliage color within the new color space. FIG. 11 illustrates an exemplary conversion from the RGB color space 1105 to the YCC color space 1100.

図11に示すように、RGB色空間1105は、3つの軸、すなわち、赤色成分値の範囲を表す軸1125、緑色成分値の範囲を表す1115、及び青色成分値の範囲を表す軸1135に沿って定義される。それゆえ、画像355のあらゆる色は、RGB色空間1105内部の場所によって表すことができる。   As shown in FIG. 11, the RGB color space 1105 is along three axes: an axis 1125 representing a range of red component values, 1115 representing a range of green component values, and an axis 1135 representing a range of blue component values. Defined. Therefore, any color in the image 355 can be represented by a location within the RGB color space 1105.

図11はまた、群葉の色を定義するために一部の実施形態と共に使用される、YCC色空間1100も提示する。図示のように、このYCC色空間は、3つの軸、すなわち、赤及び緑の色値の範囲を表す軸1120、青及び黄の色値の範囲を表す軸1130、及び種々の濃淡の灰色の範囲(すなわち、輝度値の範囲)を表す垂直軸1110に沿って定義され、底面の場所1140は黒色を表し、上面の場所1150は白色を表す。色が明るくなるほど、その色は、この色空間の円柱1100の底面から遠くに出現する。   FIG. 11 also presents a YCC color space 1100 that is used with some embodiments to define foliage colors. As shown, this YCC color space has three axes: an axis 1120 representing a range of red and green color values, an axis 1130 representing a range of blue and yellow color values, and various shades of gray. Defined along a vertical axis 1110 representing a range (ie, a range of luminance values), the bottom location 1140 represents black and the top location 1150 represents white. The brighter the color, the farther the color appears from the bottom surface of the column 1100 in this color space.

一部の実施形態では、群葉の色は、領域1160などの、特定の黒/白の範囲を有する、緑色及び黄色の領域の周囲の、YCC色空間の円柱1100の領域内部に定義される。一部の実施形態は、アプリケーションによって認識される群葉の色の範囲を増大又は低減させるための、閾値パラメータを提供することが、当業者には明らかなはずである。   In some embodiments, the foliage color is defined within a region of a cylinder 1100 in the YCC color space around a green and yellow region having a specific black / white range, such as region 1160. . It should be apparent to those skilled in the art that some embodiments provide a threshold parameter to increase or decrease the foliage color range recognized by the application.

一部の実施形態のアプリケーションは、RGB色空間1105内の各色を、YCC色空間1100内の別の色にマッピングすることによって、RGB色空間1105からYCC色空間1100に、画像を変換する。例えば、RGB色空間1105内の色1145は、YCC色空間1100内の色1170にマッピングされ、RGB色空間1105内の色1155は、YCC色空間1100内の色1180にマッピングされる。RGB色空間からYCC色空間に画像を変換することによって、このアプリケーションは、定義された群葉の色の領域1160の範囲内に収まる色(例えば、色1155)及び、定義された群葉の色の領域1160の範囲内に収まらない色(例えば、色1145)を特定することが可能である。   The application of some embodiments converts the image from the RGB color space 1105 to the YCC color space 1100 by mapping each color in the RGB color space 1105 to another color in the YCC color space 1100. For example, color 1145 in RGB color space 1105 is mapped to color 1170 in YCC color space 1100, and color 1155 in RGB color space 1105 is mapped to color 1180 in YCC color space 1100. By converting the image from the RGB color space to the YCC color space, this application allows the color that falls within the defined foliage color region 1160 (eg, color 1155) and the defined foliage color. It is possible to specify a color that does not fall within the range of the area 1160 (for example, the color 1145).

上述の図で説明される画像編集アプリケーションのGUIは、その画像編集アプリケーションが実行される装置が、そのGUIを表示するための十分に大きい画面を有するという仮定の下で示されている。しかしながら、画像編集アプリケーションが実行される装置のうちの一部は、UI項目を、それらの項目がより大きい装置のより大きい画面内に表示される方式で表示するには、画面サイズが限定されている場合がある。また、より大きい装置のより大きい画面も、その装置が異なる向き(例えば、縦長式)で保持される場合、限定的であると見なされる恐れがある。一部の実施形態では、画像編集アプリケーションは、異なる時間インスタンスで異なるUI項目の異なるセットを表示することにより、この限定的な画面空間に適応する。   The GUI of the image editing application described in the above figure is shown under the assumption that the device on which the image editing application is executed has a sufficiently large screen to display the GUI. However, some of the devices on which image editing applications are executed have limited screen sizes to display UI items in a way that they are displayed in a larger screen on devices with larger items. There may be. Also, a larger screen of a larger device may be considered limited if the device is held in a different orientation (eg, portrait). In some embodiments, the image editing application adapts to this limited screen space by displaying different sets of different UI items at different time instances.

図12は、一部の実施形態のGUI1200を通じて、色調整ツールのセットを呼び出す実施例を、6つの異なるステージ1201〜1206で概念的に示す。図示のように、GUI1200は、制御ペイン1215、画像表示領域1216、サムネイル表示領域1220、及びツールナビゲーションペイン1225を含む。   FIG. 12 conceptually illustrates an example of invoking a set of color adjustment tools through the GUI 1200 of some embodiments, with six different stages 1201-1206. As illustrated, the GUI 1200 includes a control pane 1215, an image display area 1216, a thumbnail display area 1220, and a tool navigation pane 1225.

画像表示領域1216は、ユーザが画像編集アプリケーションを使用して編集することを望む画像を、この画像表示領域1216が表示するという点で、図3を参照して上述された画像表示領域345と同様である。サムネイル表示領域1215は、画像編集アプリケーションを使用して編集するために利用可能な画像のサムネイルのコレクションを、このサムネイル表示領域1215が表示するという点で、サムネイル表示領域330と同様である。一部の実施形態では、この画像編集アプリケーションは、ユーザが、異なるサムネイルを表示するために、上方及び下方あるいは左右にスクロールすることを可能にする。また、この画像編集アプリケーションは、サムネイル上に視覚的な表示(例えば、強調表示)も提供することにより、そのサムネイルが選択されており、かつ対応する画像が表示領域内に表示されていることを示す。更には、一部の実施形態の画像編集アプリケーションは、サムネイル上に視覚的な表示(例えば、ツールボックスアイコン)を提供することにより、対応する画像が編集されていることを示す。   The image display area 1216 is similar to the image display area 345 described above with reference to FIG. 3 in that the image display area 1216 displays an image that the user desires to edit using the image editing application. It is. The thumbnail display area 1215 is similar to the thumbnail display area 330 in that the thumbnail display area 1215 displays a collection of thumbnails of images that can be used for editing using an image editing application. In some embodiments, the image editing application allows the user to scroll up and down or left and right to display different thumbnails. The image editing application also provides a visual display (eg, highlighting) on the thumbnail so that the thumbnail is selected and the corresponding image is displayed in the display area. Show. Furthermore, the image editing application of some embodiments provides a visual display (eg, a toolbox icon) on the thumbnail to indicate that the corresponding image is being edited.

ツールナビゲーションペイン1225は、異なる時間インスタンスで、選択可能又は制御可能UI項目の異なるセットを表示する。一部の実施形態では、ツールナビゲーションペイン1225内に現在表示されるユーザインターフェース項目のセットは、ツールナビゲーションペイン1225内に従前に表示されていたUI項目のセットとの、ユーザの対話に応じて決定される。例えば、ユーザが、編集ツールのセットを表す特定のUI項目にタッチすると、その特定のUI項目に関連する編集ツールのセットに関する、UI項目のセットが、ツールナビゲーションペイン1225内の、その特定のUI項目を含む、UI項目のセットに取って代わる。図示のように、ツールナビゲーションペイン1225は、UI項目1230、及び他のUI項目のセット1292を表示する。   Tool navigation pane 1225 displays different sets of selectable or controllable UI items at different time instances. In some embodiments, the set of user interface items currently displayed in the tool navigation pane 1225 is determined in response to user interaction with the set of UI items previously displayed in the tool navigation pane 1225. Is done. For example, when a user touches a particular UI item that represents a set of editing tools, the set of UI items for that set of editing tools associated with that particular UI item is displayed in that particular UI in the tool navigation pane 1225. Replaces a set of UI items, including items. As shown, the tool navigation pane 1225 displays UI items 1230 and a set 1292 of other UI items.

この画像編集アプリケーションは、ツールナビゲーションペイン1225内に表示されるUI項目の第1のセットを、幾つもの異なる方式で、UI項目の第2のセットに置き換えることができる。例えば、この画像編集アプリケーションは、第1のセットをスライドさせて出すと同時に、第2のセットをスライドさせて入れる。この画像編集アプリケーションは、第2のセットがスライドして入って来る際に、第1のセットと第2のセットとを重ね合わせることができる。更には、第1のセット及び第2のセットによるスライドの方向は、任意の方向(上、下、左、右、斜めなど)とすることができる。   The image editing application can replace the first set of UI items displayed in the tool navigation pane 1225 with a second set of UI items in a number of different ways. For example, the image editing application slides out the first set and slides in the second set. The image editing application can superimpose the first set and the second set when the second set is slid in. Furthermore, the direction of sliding by the first set and the second set can be any direction (up, down, left, right, diagonal, etc.).

GUI1200を通じて色調整ツールを呼び出す例示的操作を、ここで説明する。第1ステージ1201では、画像編集アプリケーションは、画像表示領域1216内に画像1217を表示する。画像1217は、サムネイル表示領域1220内に表示されたサムネイル1235に対応する。すなわち、この画像編集アプリケーションは、ユーザのサムネイル1235の選択に応答して、画像表示領域1216内に画像1217を表示する。   An exemplary operation for invoking a color adjustment tool through the GUI 1200 will now be described. In the first stage 1201, the image editing application displays an image 1217 in the image display area 1216. The image 1217 corresponds to the thumbnail 1235 displayed in the thumbnail display area 1220. That is, this image editing application displays the image 1217 in the image display area 1216 in response to the user's selection of the thumbnail 1235.

第2ステージ1202は、ユーザが、ナビゲーションペイン1225内に表示されるUI項目の変更を開始し始めた後の、GUI1200を示す。一部の実施形態では、ツールボックスを示すアイコンである、UI項目1230の選択が、ナビゲーションペイン1225内に表示されるUI項目を、色調整ツールを含む画像編集ツールのセットを表す、UI項目のセットに変更する。図示のように、ユーザは、UI項目1230の強調表示によって示されるように、UI項目1230を選択している。   The second stage 1202 shows the GUI 1200 after the user begins to change the UI items displayed in the navigation pane 1225. In some embodiments, selection of a UI item 1230, which is an icon representing a toolbox, represents a UI item displayed in the navigation pane 1225 that represents a set of image editing tools including a color adjustment tool. Change to a set. As shown, the user has selected UI item 1230 as indicated by the highlighting of UI item 1230.

第3ステージ1203は、アプリケーションがツールナビゲーションペイン1225内に表示されるUI項目のセットを変更する際に、GUI1200が提供するアニメーションを示す、過渡的ステージである。上述のように、一部の実施形態のアプリケーションは、ツールナビゲーションペイン1225内のUI項目の1つのセットを、UI項目の別のセットに置き換えるアニメーションを提供する。この実施例では、GUIは、新たなUI項目のセット1226が、ツールナビゲーションペイン1225内に表示されていたUI項目のセット1292に取って代わる、アニメーションを表示する。図示のように、UI項目のセット1292は、UI項目1230の下から右へとスライドして入り、その過程で、UI項目のセット1292を覆う。   The third stage 1203 is a transitional stage showing the animation provided by the GUI 1200 when the application changes the set of UI items displayed in the tool navigation pane 1225. As described above, the application of some embodiments provides an animation that replaces one set of UI items in the tool navigation pane 1225 with another set of UI items. In this example, the GUI displays an animation where a new set of UI items 1226 replaces the set of UI items 1292 that were displayed in the tool navigation pane 1225. As shown, the UI item set 1292 slides in from the bottom of the UI item 1230 to the right and covers the UI item set 1292 in the process.

第4ステージ1204は、UI項目のセット1226が、UI項目のセット1292に完全に取って代わった後の、GUI1200を示す。図示のように、ツールナビゲーションペイン1225は、新たなUI項目のセット1226を表示する。この実施例でのUI項目のセット1226は、6つのUI項目1240、1245、1246、1247、1250、及びUI項目1255を含む。UI項目1245は、画像上クロップ及び角度補正ツールを表す。UI項目1246は、露出調整ツールのセットを表す。UI項目1247は、色調整ツールのセットを表す。UI項目1250は、画像上ブラシツールを表す。UI項目1255は、画像上効果ツールを表す。このステージでは、ユーザは、色調整ツールを呼び出すために、UI項目1247を選択する。   The fourth stage 1204 shows the GUI 1200 after the UI item set 1226 has been completely replaced by the UI item set 1292. As shown, the tool navigation pane 1225 displays a new set of UI items 1226. The set of UI items 1226 in this example includes six UI items 1240, 1245, 1246, 1247, 1250, and UI items 1255. UI item 1245 represents an on-image crop and angle correction tool. UI item 1246 represents a set of exposure adjustment tools. UI item 1247 represents a set of color adjustment tools. UI item 1250 represents a brush on image tool. The UI item 1255 represents an image effect tool. At this stage, the user selects UI item 1247 to invoke the color adjustment tool.

更には、UI項目のセットの置き換えにより、UI項目1230もまた、UI項目1240に置き換えられる。UI項目1240は、ツールナビゲーションペイン1225内で、新たなUI項目のセット1226を、別のUI項目のセットに置き換えるためのものである。UI項目1240はまた、ユーザが、そのUI項目のセットによって表される編集ツールを使用することを望まないことを示すために、ユーザがタッチするためのものでもある。   Furthermore, the UI item 1230 is also replaced with the UI item 1240 by replacing the set of UI items. The UI item 1240 is for replacing a new set of UI items 1226 with another set of UI items in the tool navigation pane 1225. UI item 1240 is also for the user to touch to indicate that the user does not want to use the editing tool represented by the set of UI items.

第4ステージ1204はまた、ユーザが、UI項目1247を選択することによって、色調整ツールの呼び出しを開始していることも示す。図示のように、ユーザは、UI項目1247の強調表示によって示されるように、UI項目1247上で指をタップしている。   The fourth stage 1204 also indicates that the user has begun calling the color adjustment tool by selecting the UI item 1247. As shown, the user has tapped a finger on the UI item 1247 as indicated by the highlighting of the UI item 1247.

第5ステージ1205は、ユーザのUI項目1247の選択に応答して、アプリケーションがツールナビゲーションペイン1225内のUI項目のセット1226を、色調整ツールのセット1260で置き換える際に、GUI1200が提供するアニメーションを示す、過渡的ステージである。図示のように、UI項目のセット1226は、UI項目1240内へと左にスライドを開始して、その過程中に、新たな色調整ツールのセット1260を露呈させる。   The fifth stage 1205 responds to the user's selection of the UI item 1247 with the animation provided by the GUI 1200 when the application replaces the set of UI items 1226 in the tool navigation pane 1225 with the set of color adjustment tools 1260. This is a transitional stage. As shown, the UI item set 1226 begins to slide left into the UI item 1240, exposing a new set of color adjustment tools 1260 during the process.

第6ステージ1206は、ツールナビゲーションペイン1225内で、色調整ツールのセット1260が、UI項目のセット1226に完全に取って代わった後の、GUI1200を示す。図示のように、この色調整ツールのセットは、彩度UIコントロールを呼び出すためのUI項目1271、空UIコントロールを呼び出すためのUI項目1272、群葉UIコントロールを呼び出すためのUI項目1273、肌色UIコントロールを呼び出すためのUI項目1274、及び色バランスUIコントロールのセットを呼び出すためのUI項目1275を含む。更には、UI項目のセット1226の置き換えはまた、UI項目1240を、色調整アイコンのように見えるUI項目1262に変更させる。ユーザは、終了させる(又は、色調整ツールのセットを選択解除する)ために、UI項目1262を選択することができる。   The sixth stage 1206 shows the GUI 1200 after the set of color adjustment tools 1260 has completely replaced the set of UI items 1226 in the tool navigation pane 1225. As shown in the figure, this set of color adjustment tools includes a UI item 1271 for calling the saturation UI control, a UI item 1272 for calling the empty UI control, a UI item 1273 for calling the foliage UI control, and a skin color UI. It includes a UI item 1274 for invoking controls, and a UI item 1275 for invoking a set of color balance UI controls. Furthermore, the replacement of the UI item set 1226 also causes the UI item 1240 to change to a UI item 1262 that looks like a color adjustment icon. The user can select UI item 1262 to exit (or deselect a set of color adjustment tools).

図12は、GUI1200を通じて色調整ツールのセットを呼び出す実施例を示す。図13は、GUI1200を通じて、色調整ツールのセットを選択解除する実施例を、6つの異なるステージで示す。   FIG. 12 shows an example of calling a set of color adjustment tools through the GUI 1200. FIG. 13 illustrates an example of deselecting a set of color adjustment tools through the GUI 1200 in six different stages.

第1ステージ1301は、図12の第6ステージ1206と同一であるが、ただし、ユーザは、色調整ツールのセット1260を選択解除するための、ツールナビゲーションペイン1225内のUI項目1262を選択したところである。   The first stage 1301 is the same as the sixth stage 1206 of FIG. 12 except that the user has selected the UI item 1262 in the tool navigation pane 1225 to deselect the color adjustment tool set 1260. is there.

第2ステージ1302は、アプリケーションが色調整ツールのセット1260をUI項目のセット1226で置き換える際に、GUI1200が提供するアニメーションを示す、過渡的ステージである。図示のように、UI項目のセット1226は、UI項目1262の下から、ツールナビゲーションペイン1225内にスライドを開始して、その過程で、色調整ツールのセット1260を覆う。   The second stage 1302 is a transitional stage showing the animation provided by the GUI 1200 when the application replaces the set of color adjustment tools 1260 with a set of UI items 1226. As shown, the UI item set 1226 begins to slide into the tool navigation pane 1225 from below the UI item 1262 and covers the color adjustment tool set 1260 in the process.

第3ステージ1303は、UI項目のセット1226が、色調整ツールのセット1260に完全に取って代わったことを示す。更には、UI項目1262もまた、UI項目1240に変更されている。上述のように、UI項目1240は、ユーザが、そのUI項目のセットによって表される編集ツールを使用することを望まないことを示すために、ユーザが選択するためのものである。   The third stage 1303 shows that the UI item set 1226 has completely replaced the color adjustment tool set 1260. Furthermore, UI item 1262 has also been changed to UI item 1240. As described above, the UI item 1240 is for the user to select to indicate that the user does not want to use the editing tool represented by the set of UI items.

第4ステージ1304は、ユーザが、UI項目1240を選択した場合のGUI1200を示す。第5ステージ1305は、ユーザのUI項目1240の選択に応答して、アプリケーションが、UI項目のセット1226をUI項目のセット1292で置き換えるアニメーションを示す、過渡的ステージである。図示のように、UI項目のセット1226は、UI項目1240内へと左にスライドを開始して、その過程中に、UI項目のセット1292を露呈させる。   The fourth stage 1304 shows the GUI 1200 when the user selects the UI item 1240. The fifth stage 1305 is a transitional stage that shows an animation in which the application replaces the UI item set 1226 with the UI item set 1292 in response to the user selecting the UI item 1240. As shown, UI item set 1226 begins to slide left into UI item 1240, exposing UI item set 1292 during the process.

第6ステージ1306は、ツールナビゲーションペイン1225内で、UI項目のセット1292が、UI項目のセット1226に完全に取って代わった後の、GUI1200を示す。更には、UI項目1240は、UI項目1230に変更されている。   The sixth stage 1306 shows the GUI 1200 after the set of UI items 1292 has completely replaced the set of UI items 1226 in the tool navigation pane 1225. Furthermore, the UI item 1240 is changed to a UI item 1230.

図14は、GUI1200を通じて、画像に対して空調整操作を実行する実施例を、6つのステージ1405、1410、1415、1420、1422、及びステージ1424で示す。図14に示すように、GUI1200は、ユーザが閲覧及び選択するための、画像のサムネイルバージョンのセットを含む、サムネイル表示領域1220を有する。ユーザは、サムネイル表示領域1220上で左又は右にスクロールすることによって(例えば、サムネイル表示領域1220上に指を置き、その指を左又は右にドラッグすることによって)、より多くのサムネイル画像を一通り閲覧することができる。GUI1200はまた、画像のセットを表示するための画像表示領域1216、ツールナビゲーションペイン1225、及びUIコントロール表示領域1450も含む。   FIG. 14 shows an example of performing an empty adjustment operation on an image through a GUI 1200 with six stages 1405, 1410, 1415, 1420, 1422, and stage 1424. As shown in FIG. 14, the GUI 1200 has a thumbnail display area 1220 that includes a set of thumbnail versions of an image for the user to view and select. By scrolling left or right on the thumbnail display area 1220 (for example, by placing a finger on the thumbnail display area 1220 and dragging the finger to the left or right), the user can view more thumbnail images. You can browse the street. The GUI 1200 also includes an image display area 1216 for displaying a set of images, a tool navigation pane 1225, and a UI control display area 1450.

第1ステージ1405は、ユーザが、画像表示領域1216内に表示される画像1470を選択した後の、GUI1200を示す。画像表示領域1216内に表示される画像の選択は、その画像の対応するサムネイル1475を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(指を置く、指さす、又は指をタップすること)によって、又は、その画像のサムネイル1475にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。この選択はまた、サムネイル表示領域1220内のサムネイル1475の強調表示によっても示される。   The first stage 1405 shows the GUI 1200 after the user has selected the image 1470 displayed in the image display area 1216. Selecting an image to be displayed in the image display area 1216 involves performing a gesture (place a finger, pointing at a location) on a device with a touch or near touch sensitive screen that displays a corresponding thumbnail 1475 of that image. Or by tapping a finger) or by placing the cursor on the thumbnail 1475 of the image and providing input (eg, clicking on a cursor control device, pressing a hotkey, etc.) it can. This selection is also indicated by a highlighting of the thumbnail 1475 in the thumbnail display area 1220.

第2ステージ1410は、ユーザが、サムネイル表示領域1220内でサムネイル画像をスクロールし始めた後の、GUI1200を示す。上述のように、ユーザは、サムネイル表示領域1220上で左又は右にスクロールすることによって、より多くのサムネイル画像を一通り閲覧することができる。このスクロールは、サムネイル表示領域1220を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上で、ジェスチャを実行して(例えば、指を置くか、指さすか、又は指をタップして)、その指を左又は右にドラッグすることによって、実行することができる。図示のように、ユーザは、指を左にドラッグすることによって、サムネイル画像をスクロールしている。   The second stage 1410 shows the GUI 1200 after the user has started scrolling thumbnail images within the thumbnail display area 1220. As described above, the user can browse a larger number of thumbnail images by scrolling left or right on the thumbnail display area 1220. This scrolling is performed on a device having a touch or near-touch sensitive screen that displays a thumbnail display area 1220 (eg, placing, pointing, or tapping a finger) and moving the finger. This can be done by dragging left or right. As shown, the user scrolls the thumbnail image by dragging his finger to the left.

第3ステージ1415は、ユーザが、サムネイル表示領域1220内のサムネイル画像のスクロールを完了して、画像表示領域1216内に表示される新たな画像を選択した後の、GUI1200を示す。図示のように、サムネイル表示領域1220は、この時点で、第1ステージ1405でサムネイル表示領域1220内に表示されていなかったサムネイル1435を含む。第3ステージ1415に示すように、ユーザはまた、画像表示領域1216内に表示される画像1455も選択している。画像表示領域1216内に表示される画像の選択は、その画像の対応するサムネイル1435を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(指を置く、指さす、又は指をタップすること)によって、又は、画像のサムネイル1435にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。この選択はまた、サムネイル表示領域1220内のサムネイル1435の強調表示によっても示される。   The third stage 1415 shows the GUI 1200 after the user has finished scrolling the thumbnail images in the thumbnail display area 1220 and selected a new image to be displayed in the image display area 1216. As illustrated, the thumbnail display area 1220 includes a thumbnail 1435 that has not been displayed in the thumbnail display area 1220 in the first stage 1405 at this time. As shown in the third stage 1415, the user has also selected an image 1455 displayed in the image display area 1216. Selecting an image to be displayed in the image display area 1216 includes performing a gesture (place a finger, pointing at a location) on a device with a touch or near-touch sensitive screen that displays a corresponding thumbnail 1435 of that image. Or by tapping a finger) or by placing the cursor on the thumbnail 1435 of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.) . This selection is also indicated by the highlighting of the thumbnail 1435 in the thumbnail display area 1220.

第3ステージ1415に示すように、ユーザはまた、色調整アイコン1442の強調表示によって示されるように、画像1455に対して色調整を実行することも選択している。結果として、選択可能UI項目1452〜1458のセットが、ツールナビゲーションペイン1225内に表示される。選択可能UI項目1452〜1458のそれぞれは、画像に対する異なる色調整を開始するためのものである。例えば、選択可能UI項目1452は、画像に関する彩度調整を開始するためのものであり、選択可能UI項目1454は、画像に関する空調整を開始するためのものであり、選択可能UI項目1458は、画像に関する群葉調整を開始するためのものであり、選択可能UI項目1456は、画像に関する肌の色調調整を開始するためのものである。これらの色調整は、図3、4、6、7、及び図9を参照して上述された種々の色調整と同一である。   As shown in the third stage 1415, the user has also chosen to perform color adjustment on the image 1455, as indicated by the highlighting of the color adjustment icon 1442. As a result, a set of selectable UI items 1452-1458 are displayed in the tool navigation pane 1225. Each of the selectable UI items 1452-1458 is for initiating a different color adjustment for the image. For example, the selectable UI item 1452 is for starting saturation adjustment for an image, the selectable UI item 1454 is for starting empty adjustment for an image, and the selectable UI item 1458 is The selection UI item 1456 is used to start skin tone adjustment related to an image. These color adjustments are the same as the various color adjustments described above with reference to FIGS. 3, 4, 6, 7 and 9.

第4ステージ1420は、ユーザが、ツールナビゲーションペイン1225内の選択可能UI項目1454を選択した後の、GUI1200を示す。選択可能UI項目1454の選択は、選択可能UI項目1454を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目1454にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、選択可能UI項目1454の強調表示によって示されるように、選択可能UI項目1454上で指をタップすることによって、選択可能UI項目1454を選択している。この選択の結果として、空調整UIコントロール1464が、UIコントロール表示領域1220内に出現している。   The fourth stage 1420 shows the GUI 1200 after the user selects a selectable UI item 1454 in the tool navigation pane 1225. Selection of selectable UI item 1454 involves performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device having a touch or near-touch sensitive screen that displays selectable UI item 1454 Or by placing the cursor on selectable UI item 1454 and providing input (eg, clicking on a cursor control device, pressing a hotkey, etc.). As shown, the user has selected the selectable UI item 1454 by tapping a finger on the selectable UI item 1454, as indicated by the highlighting of the selectable UI item 1454. As a result of this selection, an empty adjustment UI control 1464 appears in the UI control display area 1220.

種々の実施形態は、画像の色を調整するための種々のタイプのUIコントロールを提供する。この実施例では、空調整UIコントロールは、範囲スライダである。ユーザは、空UIコントロール1464のつまみを、範囲スライダに沿って異なる位置にスライドさせることによって、画像内の空の色を調整することができる。   Various embodiments provide various types of UI controls for adjusting the color of the image. In this embodiment, the empty adjustment UI control is a range slider. The user can adjust the sky color in the image by sliding the knob of the sky UI control 1464 to a different position along the range slider.

第5ステージ1422は、ユーザが空UIコントロール1464のつまみを選択しているが、画像内の空の色の調整を開始していないことを示す、過渡的ステージである。第6ステージ1424は、ユーザが、矢印1460によって示されるように、空UIコントロール1464のつまみを右に移動させることによって、画像の空の色の調整を開始した後の、GUI1200を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、空UIコントロール1464のつまみを移動させることができる。この指の移動の結果として、画像355内の空の領域の全域にわたる斜線によって示されるように、画像1455内の空の色が強調されているが、その一方で、画像1455の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、図7を参照して上述されたものと同じ方式で、画像内の空の色を調整する。   The fifth stage 1422 is a transitional stage indicating that the user has selected the knob of the sky UI control 1464 but has not started adjusting the sky color in the image. The sixth stage 1424 shows the GUI 1200 after the user has started adjusting the sky color of the image by moving the knob of the sky UI control 1464 to the right as indicated by the arrow 1460. In some embodiments, the user can move the knob of the empty UI control 1464 by dragging the user's finger (or dragging the cursor) to a different location. As a result of this finger movement, the sky color in image 1455 is enhanced, as shown by the diagonal lines across the sky region in image 355, while the rest of image 1455 is affected by It is maintained without receiving. In some embodiments, the application adjusts the sky color in the image in the same manner as described above with reference to FIG.

図14は、GUI1200を通じて空調整操作を実行する実施例を示す。ユーザは、種々の選択可能項目1452〜1458の選択を通じて、同様の方式で、他の種類の色調整操作(例えば、彩度調整、自然な彩度調整、群葉調整、肌の色調調整など)を実行することができる。図15は、GUI1200を通じて群葉調整操作を実行する実施例を、4つのステージ1505、1510、1515、及びステージ1520で提供する。   FIG. 14 shows an embodiment in which an empty adjustment operation is executed through the GUI 1200. The user selects other selectable items 1452 to 1458 in the same manner and selects other types of color adjustment operations (for example, saturation adjustment, natural saturation adjustment, foliage adjustment, skin tone adjustment, etc.). Can be executed. FIG. 15 provides an example of performing foliage adjustment operations through a GUI 1200 with four stages 1505, 1510, 1515, and stage 1520.

第1ステージ1505は、図14の第1ステージ1405と同一である。図示のように、ユーザは、画像表示領域1216内に表示される画像1455を選択している。第2ステージ1510は、ユーザが、ツールナビゲーションペイン1225内の選択可能UI項目1458を選択した後の、GUI1200を示す。選択可能UI項目1458の選択は、選択可能UI項目1458を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目1458にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、選択可能UI項目1458の強調表示によって示されるように、選択可能UI項目1458上で指をタップすることによって、選択可能UI項目1458を選択している。この選択の結果として、群葉調整UIコントロール1564が、UIコントロール表示領域1450内に出現している。   The first stage 1505 is the same as the first stage 1405 in FIG. As illustrated, the user has selected an image 1455 displayed in the image display area 1216. Second stage 1510 shows GUI 1200 after the user selects selectable UI item 1458 in tool navigation pane 1225. Selection of selectable UI item 1458 is performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device having a touch or near-touch sensitive screen that displays selectable UI item 1458. Or by placing the cursor on selectable UI item 1458 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown, the user has selected the selectable UI item 1458 by tapping a finger on the selectable UI item 1458 as indicated by the highlighting of the selectable UI item 1458. As a result of this selection, a foliage adjustment UI control 1564 appears in the UI control display area 1450.

第3ステージ1515は、ユーザが群葉UIコントロール1564のつまみを選択しているが、画像内の群葉の色の調整を開始していないことを示す、過渡的ステージである。第4ステージ1520は、ユーザが、矢印1560によって示されるように、群葉UIコントロール1564のつまみを右に移動させることによって、画像の群葉の色の調整を開始した後の、GUI1200を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、群葉UIコントロール1564のつまみを移動させることができる。この指の移動の結果として、画像1455内の山の領域の全域にわたる斜線によって示されるように、画像1455内の群葉の色が強調されているが、その一方で、画像1455の残部は、影響を受けないまま維持される。一部の実施形態では、このアプリケーションは、図9を参照して上述されたものと同じ方式で、画像内の群葉の色を調整する。   The third stage 1515 is a transitional stage indicating that the user has selected the knob of the foliage UI control 1564 but has not started adjusting the foliage color in the image. The fourth stage 1520 shows the GUI 1200 after the user has started adjusting the foliage color of the image by moving the foliage UI control 1564 knob to the right as indicated by the arrow 1560. In some embodiments, the user can move the knob of the foliage UI control 1564 by dragging the user's finger (or dragging the cursor) to a different location. As a result of this finger movement, the color of the foliage in image 1455 is enhanced, as shown by the diagonal lines across the mountain region in image 1455, while the rest of image 1455 is Maintained unaffected. In some embodiments, the application adjusts the foliage color in the image in the same manner as described above with reference to FIG.

図16は、色調整UIコントロールに対するユーザの入力に基づいて、画像の一部分の色値を調整するためのプロセス1600を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、画像に対するコンテンツ分析を(1605で)実行することによって開始する。種々の実施形態は、画像に対して種々のコンテンツ分析を実行する。例えば、一部の実施形態のアプリケーションは、画像に対して顔検出分析を実行することにより、その画像が、いずれかの人の顔を含むか否かを判定する。   FIG. 16 conceptually illustrates a process 1600 for adjusting a color value of a portion of an image based on a user input to a color adjustment UI control. In some embodiments, this process is performed by an image editing application. The process begins by performing content analysis on the image (at 1605). Various embodiments perform various content analysis on images. For example, an application of some embodiments performs face detection analysis on an image to determine whether the image includes any person's face.

次いで、このプロセスは、必要に応じて、コンテンツ分析からの結果に基づいて、画像調整UIコントロールのセットに関する、パラメータのセットを(1610で)定義する。一部の実施形態では、調整UIコントロールのうちの少なくとも1つは、アプリケーションの設定に基づいて、画像に対して種々の調整操作を実行するように、構成することができる。これらの実施形態の一部では、アプリケーションは、コンテンツ分析からの結果に基づいて、その画像に関するデフォルト設定を定義する。例えば、その画像が人の顔を含むことを、アプリケーションが検出する場合、アプリケーションは、画像全体の彩度を調整することよりも、自然な彩度調整(すなわち、肌の色調を維持しつつ画像の彩度を調整すること)を実行するように、彩度UIコントロールを構成する。   The process then defines (at 1610) a set of parameters for the set of image adjustment UI controls, as needed, based on the results from the content analysis. In some embodiments, at least one of the adjustment UI controls can be configured to perform various adjustment operations on the image based on application settings. In some of these embodiments, the application defines default settings for the image based on results from content analysis. For example, if the application detects that the image contains a human face, the application may adjust the natural saturation (i.e., maintain the skin tone) rather than adjusting the saturation of the entire image. The saturation UI control is configured to perform the following:

次に、このプロセスは、特定のUIコントロールに対するユーザ入力を(1615で)受け取る。上述のように、UIコントロールの一部は、画像の種々の部分の色値を調整するためのものである。一部の実施形態では、このアプリケーションは、それらのUIコントロールのための、予め定義された色値の範囲のセットを含む。例えば、このアプリケーションは、空UIコントロールのための、空の色に関連付けられている色値の範囲、群葉UIコントロールのための、群葉の色に関連付けられている色値の範囲、並びに、彩度UIコントロール及び肌の色調UIコントロールのための、肌の色調に関連付けられている色値の範囲を定義している。これらの実施形態の一部では、画像の色値は、これらの色値の範囲を定義するために使用される色空間とは異なる色空間内で定義される。それゆえ、特定のUIコントロールに対して、ユーザ入力が受け取られた後、このプロセスは、画像の色値を、色値の範囲を定義するために使用される色空間に(1620で)変換する。   The process then receives user input (at 1615) for a particular UI control. As described above, part of the UI control is for adjusting the color values of various parts of the image. In some embodiments, the application includes a set of predefined color value ranges for those UI controls. For example, the application may include a range of color values associated with a sky color for a sky UI control, a range of color values associated with a foliage color for a foliage UI control, and Defines a range of color values associated with skin tone for saturation UI control and skin tone UI control. In some of these embodiments, the color values of the image are defined in a color space that is different from the color space used to define the range of these color values. Thus, for a particular UI control, after user input is received, this process converts (at 1620) the image color values into the color space used to define the range of color values. .

次いで、このプロセスは、その特定のUIコントロールに関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを(1625で)特定する。一部の実施形態では、種々のコンテンツのタイプに関連付けられている色値の範囲が、メディア記憶装置内に記憶される。これらの実施形態では、このプロセスは、メディア記憶装置から、特定のUIコントロールに関連付けられている色値の範囲を取得して、その色値の範囲内に収まる色値を有する画素を特定する。他の実施形態では、色値の範囲は、色調整を実行するための実行可能コード内で定義される。これらの他の実施形態では、この特定操作は、画像に対する色調整をプロセスが実行する際に、同時に実行される。   The process then identifies (at 1625) the set of pixels in the image that have color values that fall within the range of color values associated with that particular UI control. In some embodiments, color value ranges associated with various content types are stored in the media storage device. In these embodiments, the process obtains a range of color values associated with a particular UI control from the media storage device and identifies pixels having color values that fall within that color value range. In other embodiments, the range of color values is defined in executable code for performing color adjustment. In these other embodiments, this particular operation is performed simultaneously as the process performs color adjustments on the image.

ユーザ入力に基づいて、次いで、このプロセスは、操作1625で特定された画素のセットの色値を(1630で)調整する。プロセス1600は、一部の実施形態では、このプロセスが、色値の範囲内に収まる画像内の画素のセットを最初に特定し、次いで、特定された画素のセットに対して調整を実行することを示す。しかしながら、一部の他の実施形態では、このプロセスは、調整操作を実行するときと同時に、調整のための画素を特定する。具体的には、画像内の各画素に関して、このプロセスは、その画素の色値が色値の範囲内に収まるか否かを反復的に判定し、その色値が範囲内である場合にのみ、調整を実行する。   Based on the user input, the process then adjusts (at 1630) the color value of the set of pixels identified in operation 1625. Process 1600, in some embodiments, the process first identifies a set of pixels in the image that fall within the range of color values, and then performs an adjustment on the identified set of pixels. Indicates. However, in some other embodiments, the process identifies pixels for adjustment at the same time as performing the adjustment operation. Specifically, for each pixel in the image, this process iteratively determines whether the color value of that pixel falls within the color value range, and only if the color value is within the range. Execute the adjustment.

一部の実施形態では、画像の色値を調整する前に、このアプリケーションは、画像の色値に適用することが可能なアルゴリズム又は数学的方程式を生成する。次いで、このアプリケーションは、操作1625で特定された画像内の各画素の色値に、そのアルゴリズム又は数学的方程式を適用する。   In some embodiments, prior to adjusting the color values of the image, the application generates an algorithm or mathematical equation that can be applied to the color values of the image. The application then applies the algorithm or mathematical equation to the color value of each pixel in the image identified in operation 1625.

次に、このプロセスは、UIコントロールのセットに対して、更に多くのユーザ入力が受け取られるか否かを(1635で)判定する。更に多くの入力が受け取られる場合には、このプロセスは、別の画素のセットを特定するために、1625に戻る。このプロセスは、UIコントロールのセットに対して、それ以上入力が受信されなくなるまで、操作1625〜1635を繰り返す。次いで、このプロセスは終了する。   The process then determines (at 1635) whether more user input is received for the set of UI controls. If more inputs are received, the process returns to 1625 to identify another set of pixels. This process repeats operations 1625-1635 until no more input is received for the set of UI controls. The process then ends.

種々の実施形態は、図16の操作1625で画素のセットを特定するために、種々の技術を使用する。一部の実施形態では、このアプリケーションは、図5、8、及び図11を参照して上述された技術を使用して、画素のセットを特定する。   Various embodiments use various techniques to identify the set of pixels at operation 1625 of FIG. In some embodiments, the application identifies a set of pixels using the techniques described above with reference to FIGS.

一部の実施形態では、このアプリケーションは、特定のUIコントロールに対するユーザ入力に応答して、画像の色値に対する1つのタイプの調整(例えば、彩度調整)のみを実行する。上述のように、一部の他の実施形態のアプリケーションは、特定のUIコントロールに対する単一のユーザ入力に応答して、画像の色値に対する2つ以上のタイプの調整を実行する。例えば、ユーザが、空UIコントロール354に入力を提供する場合、一部の実施形態のアプリケーションは、画像の一部分の色値に対する彩度調整、コントラスト調整、及び明度調整を実行する。これらの実施形態では、アプリケーションは、単一のユーザ入力を使用して、その画像に関する、コントラストを調整するための調整値、彩度を調整するための調整値、及び明度を調整するための調整値を決定し、これらの個別の調整値を、画像の色値に適用する。   In some embodiments, the application performs only one type of adjustment (eg, saturation adjustment) to the color values of the image in response to user input for a particular UI control. As described above, some other embodiment applications perform more than one type of adjustment to the color values of an image in response to a single user input for a particular UI control. For example, if the user provides input to the sky UI control 354, some embodiments of the application perform saturation adjustment, contrast adjustment, and brightness adjustment for the color values of a portion of the image. In these embodiments, the application uses a single user input to adjust an adjustment value for adjusting contrast, an adjustment value for adjusting saturation, and an adjustment for adjusting brightness for the image. The values are determined and these individual adjustment values are applied to the color values of the image.

図17は、色調整UIコントロールに対する単一のユーザの入力に基づいて、画像内の限定された色値の範囲に対して幾つかのタイプの調整を実行するためのプロセス1700を、概念的に示す。一部の実施形態では、このプロセスは、図16の操作1620〜1630の間に実行される。プロセス1700は、画像のコントラストを調整するためのコントラスト調整値を決定するために、UIコントロールに対するユーザ入力を(1705で)使用することによって開始する。一部の実施形態では、画像のコントラストは、その画像内の色値の範囲を表す。換言すれば、より高いコントラストを有する画像は、より低いコントラストを有する画像よりも、広い色値の範囲を有する。それゆえ、画像のコントラストを増大させることは、その画像内の色値の範囲を伸長させること(すなわち、画像の明るい色値と暗い色値との差を拡大すること)を伴い、画像のコントラストを減少させることは、その画像内の色値の範囲を低減する(すなわち、画像の明るい色値と暗い色値との差を縮小する)。それゆえ、コントラスト調整値は、画像内の色値の範囲をアプリケーションが調整する程度を決定する。   FIG. 17 conceptually illustrates a process 1700 for performing several types of adjustments on a limited range of color values in an image based on a single user input to a color adjustment UI control. Show. In some embodiments, this process is performed during operations 1620-1630 of FIG. Process 1700 begins by using (at 1705) user input to a UI control to determine a contrast adjustment value for adjusting the contrast of the image. In some embodiments, the contrast of an image represents a range of color values within the image. In other words, an image with higher contrast has a wider range of color values than an image with lower contrast. Therefore, increasing the contrast of an image involves extending the range of color values in the image (ie, increasing the difference between the bright and dark color values of the image) and increasing the contrast of the image. Reducing the range of color values in the image (ie, reducing the difference between the bright and dark color values of the image). Hence, the contrast adjustment value determines the extent to which the application adjusts the range of color values in the image.

次に、このプロセスは、UIコントロールに対する同じユーザ入力を(1710で)使用して、画像の彩度を調整するための彩度調整値を決定する。一部の実施形態では、画像の彩度は、その画像内の色値の強度を表す。それゆえ、画像の彩度を増大させることは、その画像の色値の強度を増大させることを伴う。それゆえ、彩度調整値は、画像内の色値の強度をアプリケーションが調整する程度を決定する。   The process then uses the same user input to the UI control (at 1710) to determine a saturation adjustment value for adjusting the saturation of the image. In some embodiments, the saturation of an image represents the intensity of color values in the image. Therefore, increasing the saturation of an image involves increasing the intensity of the color value of that image. Therefore, the saturation adjustment value determines the degree to which the application adjusts the intensity of the color values in the image.

次いで、このプロセスは、特定のUIコントロールに対する同じユーザ入力を(1715で)使用して、画像の明度を調整するための明度調整値を決定する。一部の実施形態では、画像の明度は、その画像内の明るさ又は輝度を表す。それゆえ、画像の明度を増大させることは、その画像内の色値の輝度値を増大させることを伴う。それゆえ、明度調整値は、画像内の色値の明るさ又は明度値をアプリケーションが調整する程度を決定する。   The process then uses the same user input for a particular UI control (at 1715) to determine a brightness adjustment value for adjusting the brightness of the image. In some embodiments, the brightness of an image represents the brightness or brightness within the image. Therefore, increasing the brightness of an image involves increasing the luminance value of the color values in the image. Therefore, the brightness adjustment value determines the degree to which the application adjusts the brightness or brightness value of the color values in the image.

画像のコントラスト、彩度、及び明度を調整するための3つの異なる調整値を決定した後、このプロセスは、操作1625で特定された画素のセットの色値に、それらのコントラスト調整値、彩度調整値、及び明度調整値を(1720で)適用する。一部の実施形態では、このアプリケーションは、画像の色値に適用するための種々の調整値に基づいて、アルゴリズムのセット、又は数学的方程式のセットを生成する。次いで、このアプリケーションは、操作1625で特定された画像内の各画素の色値に、そのアルゴリズムのセット、又は数学的方程式のセットを適用する。   After determining three different adjustment values for adjusting the contrast, saturation, and lightness of the image, the process converts the contrast adjustment value, saturation, to the color value of the set of pixels identified in operation 1625. Apply the adjustment value and the brightness adjustment value (at 1720). In some embodiments, the application generates a set of algorithms or a set of mathematical equations based on various adjustment values to apply to the color values of the image. The application then applies the set of algorithms, or set of mathematical equations, to the color values of each pixel in the image identified in operation 1625.

次に、このプロセスは、必要に応じて、画像の色値を、その本来の色空間に(1725で)変換して戻す。一部の実施形態では、変換された色空間(例えば、YCC色空間)内で、調整のための画素のセットを特定した後に、このアプリケーションは、その変換された色空間内で、画像の色値に対する調整を実行する。例えば、一部の実施形態のアプリケーションは、YCC色空間内で群葉調整を実行する。一部の実施形態では、特定のYCC色空間(例えば、IPT色空間)内で群葉調整を実行することが好ましいが、これは、その均一な知覚的挙動のためである。例えば、色の色相を、その色を黄色にすることなく、緑に向けて移行させることができる。これらの実施形態では、調整操作が完了すると、プロセスが画像の色値をその本来の色空間に変換して戻すことが必要である。他の実施形態では、調整のための画素のセットを特定した後に、このアプリケーションは、その本来の色空間内で、画像の色値に対する調整を実行する。例えば、一部の実施形態のアプリケーションは、その色値の本来の色空間(例えば、RGB色空間)内で、空調整を実行する。これらの実施形態では、この変換工程1720をプロセスが実行する必要はない。次いで、このプロセスは終了する。   The process then converts (at 1725) the color value of the image back to its original color space, if necessary. In some embodiments, after identifying a set of pixels for adjustment in a transformed color space (eg, YCC color space), the application may use the image color in the transformed color space. Perform adjustments to values. For example, some embodiments of the application perform foliage adjustments within the YCC color space. In some embodiments, it is preferable to perform foliar adjustments within a particular YCC color space (eg, IPT color space) because of its uniform perceptual behavior. For example, the hue of a color can be shifted toward green without making the color yellow. In these embodiments, once the adjustment operation is complete, the process needs to convert the color value of the image back to its original color space. In other embodiments, after identifying a set of pixels for adjustment, the application performs adjustments to the color values of the image within its native color space. For example, the application of some embodiments performs a sky adjustment within the original color space (eg, RGB color space) for that color value. In these embodiments, the process need not perform this conversion step 1720. The process then ends.

一部の実施形態は、全ての調整を同じ色空間内で実行するが、他の実施形態は、異なる色空間内で色調整を実行する。   Some embodiments perform all adjustments in the same color space, while other embodiments perform color adjustments in different color spaces.

図18は、画像の一部分のみの色値を調整するためのUIコントロールのセットを提供する、一部の実施形態の画像編集アプリケーション1800を示す。一部の実施形態では、画像編集アプリケーション1800は、プロセス1600及びプロセス1700を実行する。図18に示すように、画像編集アプリケーション1800は、画像プロセッサ1840、コンテンツ分析モジュール1845のセット、色空間変換モジュール1815、画素分離モジュール1810、及び色調整エンジン1820を含む。   FIG. 18 illustrates an image editing application 1800 of some embodiments that provides a set of UI controls for adjusting color values for only a portion of the image. In some embodiments, image editing application 1800 performs process 1600 and process 1700. As shown in FIG. 18, the image editing application 1800 includes an image processor 1840, a set of content analysis modules 1845, a color space conversion module 1815, a pixel separation module 1810, and a color adjustment engine 1820.

UIモジュール1805が、色調整UIコントロールのセットを呼び出すためのユーザ入力を受け取ると、UIモジュール1805は、そのリクエストを画像プロセッサ1840に渡す。画像プロセッサ1840は、メディア記憶装置1850から画像を取得して、コンテンツ分析モジュール1845のセットに、その画像に対して一連のコンテンツ分析を実行するようにリクエストする。一部の実施形態では、メディア記憶装置1850は、画像編集アプリケーション1800によって構成され、特定の記憶装置のセット上に記憶される、ファイルフォルダのセットである。この記憶装置は、このアプリケーションが動作する電子装置のブートドライブ、そのディスクの異なるパーティション、別個の内部又は外部ハードドライブ、フラッシュドライブ、SDカードなどを含み得る。   When UI module 1805 receives user input to invoke a set of color adjustment UI controls, UI module 1805 passes the request to image processor 1840. Image processor 1840 obtains an image from media storage device 1850 and requests a set of content analysis modules 1845 to perform a series of content analysis on the image. In some embodiments, media storage device 1850 is a set of file folders configured by image editing application 1800 and stored on a particular set of storage devices. The storage device may include a boot drive of the electronic device on which the application runs, a different partition of the disk, a separate internal or external hard drive, a flash drive, an SD card, etc.

コンテンツ分析モジュール1845のセットは、コンテンツ分析モジュールのセットを画像に対して実行する。種々の実施形態は、画像に対して種々のコンテンツ分析を実行する。例えば、一部の実施形態のアプリケーションは、人の顔が画像上に出現するか否かを判定するために、顔検出分析を実行する。次いで、コンテンツ分析モジュール1845のセットは、その分析の結果を画像プロセッサ1840に送り返す。その分析の結果に基づいて、一部の実施形態の画像プロセッサ1840は、UIコントロールのセットに関するパラメータのセットを定義する。例えば、画像上に人の顔が検出される場合には、画像プロセッサ1840は、彩度調整UIコントロールを、自然な彩度調整操作に関連付けられているように構成する。   The set of content analysis modules 1845 performs the set of content analysis modules on the image. Various embodiments perform various content analysis on images. For example, the application of some embodiments performs a face detection analysis to determine whether a human face appears on the image. The set of content analysis modules 1845 then sends the results of the analysis back to the image processor 1840. Based on the results of the analysis, the image processor 1840 of some embodiments defines a set of parameters for a set of UI controls. For example, if a human face is detected on the image, the image processor 1840 configures the saturation adjustment UI control to be associated with a natural saturation adjustment operation.

UIモジュール1805が、色調整操作を開始するための、UIコントロールのうちの1つに対するユーザ入力を受け取ると、UIモジュール1805は、そのユーザ入力を画像プロセッサ1840に渡す。次いで、画像プロセッサ1840は、そのユーザ入力を受け取るUIコントロールに関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを特定するように、画素分離モジュール1810にリクエストする。一部の実施形態では、画像の色値は、それらの色値の範囲を定義するために使用される色空間(例えば、YCC色空間)とは異なる色空間(例えば、RGB色空間)内で定義される。これらの実施形態では、画素のセットを特定するように画素分離モジュール1810にリクエストする前に、画像プロセッサ1840は、画像の色値を、それらの色値の範囲を定義するために使用される色空間に変換するように、色空間変換モジュール1815にリクエストする。   When UI module 1805 receives user input for one of the UI controls to initiate a color adjustment operation, UI module 1805 passes the user input to image processor 1840. The image processor 1840 then requests the pixel separation module 1810 to identify a set of pixels in the image that have color values that fall within the range of color values associated with the UI control that receives the user input. . In some embodiments, the color values of the image are in a color space (eg, RGB color space) that is different from the color space (eg, YCC color space) used to define the range of those color values. Defined. In these embodiments, before requesting the pixel separation module 1810 to identify a set of pixels, the image processor 1840 determines the color values of the image and the colors used to define the range of those color values. Requests the color space conversion module 1815 to convert to space.

画素のセットが特定された後に、画像プロセッサ1840は、その画像、及び特定された画素についての情報を、画像に対して一連の色調整を実行するための色調整エンジン1820に送る。色調整エンジン1820は、画像内の特定された画素に、種々の色調整を適用する。一部の実施形態では、色調整エンジン1820は、プロセス1700を実行して、画像の特定された画素に調整を適用する。図示のように、色調整エンジン1820は、画像にコントラスト調整を適用するためのコントラスト調整エンジン1825、画像に明度調整を適用するための明度調整エンジン1830、及び画像に彩度調整を適用するための彩度調整エンジン1835を含む。これらは、画像に対して実行することが可能な例示的な色調整に過ぎないものであり、色調整エンジン1820は、画像に対して更なるタイプの色調整を実行するための、更なる色調整エンジンを含み得ることが、当業者には明らかなはずである。例えば、明度調整エンジン1830は、ユーザ入力を使用して、画像の明度を調整するための明度調整値を決定し、コントラスト調整エンジン1825は、ユーザ入力を使用して、画像のコントラストを調整するためのコントラスト調整値を決定し、彩度調整エンジン1835は、ユーザ入力を使用して、画像の彩度を調整するための彩度調整値を決定する。次いで、種々の調整エンジン1825〜1835は、この明度調整、コントラスト調整、及び彩度調整を画像に適用して、編集された画像を作り出す。   After the set of pixels is identified, the image processor 1840 sends the image and information about the identified pixels to a color adjustment engine 1820 for performing a series of color adjustments on the image. The color adjustment engine 1820 applies various color adjustments to the identified pixels in the image. In some embodiments, the color adjustment engine 1820 performs a process 1700 to apply adjustments to identified pixels of the image. As shown, the color adjustment engine 1820 includes a contrast adjustment engine 1825 for applying contrast adjustment to the image, a brightness adjustment engine 1830 for applying brightness adjustment to the image, and a saturation adjustment for applying the saturation adjustment to the image. A saturation adjustment engine 1835 is included. These are merely exemplary color adjustments that can be performed on an image, and the color adjustment engine 1820 provides additional colors for performing additional types of color adjustments on the image. It should be apparent to those skilled in the art that a conditioning engine can be included. For example, the brightness adjustment engine 1830 uses a user input to determine a brightness adjustment value for adjusting the brightness of the image, and the contrast adjustment engine 1825 uses the user input to adjust the contrast of the image. The saturation adjustment engine 1835 uses a user input to determine a saturation adjustment value for adjusting the saturation of the image. Various adjustment engines 1825-1835 then apply this lightness adjustment, contrast adjustment, and saturation adjustment to the image to produce an edited image.

一部の実施形態では、色調整エンジン1820は、変換された色空間内で、画像の色値を調整する。これらの実施形態では、画像プロセッサ1840は、色空間変換モジュール1815に、調整された画像を送り、画像の色値を、その本来の色空間に変換して戻す。次いで、画像プロセッサ1840は、メディア記憶装置に、及び、表示のためのUIモジュール1805に、調整された画像を送る。   In some embodiments, the color adjustment engine 1820 adjusts the color values of the image within the converted color space. In these embodiments, the image processor 1840 sends the adjusted image to the color space conversion module 1815 and converts the color value of the image back to its original color space. The image processor 1840 then sends the adjusted image to the media storage device and to the UI module 1805 for display.

II.画像上コントロール
図1を参照して上述されたように、一部の実施形態の画像編集アプリケーションは、画像を編集するための、画像上に重ね合わされるUIコントロールのセットを提供する。画像上UIコントロールのセットのそれぞれは、異なる調整に関連付けられている。一部の実施形態では、ユーザは、画像上の場所を選択することによって、重ね合わせUIコントロール(画像上UIコントロールとも称される)のセットをアクティブ化することができる。これらの実施形態では、ユーザが、画像上の特定の場所を選択すると、アプリケーションは、一連の分析を実行して、その画像上の選択された場所に関連付けられている特定のコンテンツのタイプを判定する。次いで、このアプリケーションは、選択された場所が、異なるコンテンツのタイプに関連付けられていると、画像に適用するための異なる色調整機能に関連付けられている異なるUIコントロールのセットを表示する。一部の実施形態では、重ね合わせUIコントロールのセットは、不透明又は透明である。これらの画像上UIコントロールの幾つかの実施形態は、セクションII.A及びセクションII.Bで、より詳細に説明される。
II. On-Image Controls As described above with reference to FIG. 1, the image editing application of some embodiments provides a set of UI controls that are superimposed on the image for editing the image. Each set of on-image UI controls is associated with a different adjustment. In some embodiments, the user can activate a set of superimposed UI controls (also referred to as on-image UI controls) by selecting a location on the image. In these embodiments, when the user selects a particular location on the image, the application performs a series of analyzes to determine the specific content type associated with the selected location on the image. To do. The application then displays a different set of UI controls associated with different color adjustment functions for application to the image, as the selected location is associated with a different content type. In some embodiments, the set of superimposed UI controls is opaque or transparent. Some embodiments of these on-image UI controls are described in Section II. A and section II. B will be described in more detail.

図19は、画像上の場所のユーザ選択に基づいて、画像の色値を調整するための画像上UIコントロールのセットを提供するための、プロセス1900を概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、画像上の場所の選択を(1905で)受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を(1910で)取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。   FIG. 19 conceptually illustrates a process 1900 for providing a set of on-image UI controls for adjusting color values of an image based on a user selection of a location on the image. In some embodiments, this process is performed by an image editing application. The process begins by receiving (at 1905) a selection of a location on the image. The process then obtains (at 1910) the color value of the set of pixels corresponding to the selected location on the image. In some embodiments, this set of pixels is a pixel located near the selected location.

次に、このプロセスは、取得された色値に対する一連の分析を(1915で)実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、1つの分析は、選択された場所が肌の色調に関連付けられているか否かを判定するためのものであり、別の分析は、選択された場所が空に関連付けられているか否かを判定するためのものである。   The process then performs (at 1915) a series of analyzes on the acquired color values. In some embodiments, each analysis determines whether the selected location is associated with a particular content type based on the obtained color values. For example, one analysis is for determining whether a selected location is associated with skin tone, and another analysis is for determining whether a selected location is associated with the sky. It is for judging.

一連の分析からの結果に基づいて、このプロセスは、画像編集操作のセットを制御するための、UIコントロールのセットを(1920で)提供する。一部の実施形態では、このUIコントロールのセットは、画像上に表示される画像上コントロールである。これらの実施形態の一部では、画像上UIコントロールのセットは、方向依存性UIコントロールである。ユーザは、画像に対して方向入力を提供することによって、その画像に対する種々の画像編集操作を開始することができる。   Based on the results from the series of analyses, this process provides (at 1920) a set of UI controls to control the set of image editing operations. In some embodiments, this set of UI controls are on-image controls that are displayed on the image. In some of these embodiments, the set of on-image UI controls is a direction-dependent UI control. The user can initiate various image editing operations on the image by providing direction input to the image.

次に、このプロセスは、画像上に別の場所が選択されるか否かを(1930で)判定する。別の場所が選択される場合には、このプロセスは、その新たに選択された場所に対応する、別の画素のセットの色値を取得するために、1910に戻る。このプロセスは、それ以上場所が選択されなくなるまで、操作1910〜1925を繰り返す。次いで、このプロセスは終了する。   The process then determines (at 1930) whether another location is selected on the image. If another location is selected, the process returns to 1910 to obtain a color value for another set of pixels corresponding to the newly selected location. This process repeats operations 1910-1925 until no more locations are selected. The process then ends.

A.画像上色コントロール
一部の実施形態では、画像編集アプリケーションが提供する重ね合わせUIコントロールのセットは、画像に種々の色調整を適用するためのものである。図20は、ユーザによって選択された画像上の場所に基づいて、画像に色調整を適用するための画像上UIコントロールのセットを提供する、一部の実施形態の画像編集アプリケーションの、例示的なGUI300を示す。具体的には、図20は、種々の画像上UIコントロールのセットをアクティブ化する操作を、4つの異なるステージ2005、2010、2015、及びステージ2020で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
A. On-Image Color Control In some embodiments, the set of overlay UI controls provided by the image editing application is for applying various color adjustments to the image. FIG. 20 is an example of an image editing application of some embodiments that provides a set of on-image UI controls for applying color adjustments to an image based on a location on the image selected by the user. The GUI 300 is shown. Specifically, FIG. 20 illustrates the operation of activating various sets of on-image UI controls at four different stages 2005, 2010, 2015, and stage 2020. Each of these stages is described in more detail below.

第1ステージ2005は、図3の第2ステージ310と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。UIコントロール表示領域350は、画像の彩度を調整するためのUIコントロール352、画像内の空の色を調整するためのUIコントロール354、画像内の群葉の色を調整するためのUIコントロール358、及び画像内の肌の色調を調整するためのUIコントロール356を表示する。第2ステージ2010は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。図示のように、ユーザは、人の顔を表示する、画像上の場所を選択している。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、その選択された場所に関連付けられている特定のコンテンツのタイプを判定するために、一連の分析を実行する。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。例えば、一部の実施形態のアプリケーションは、肌の色調に関連付けられている色値の範囲、空の色に関連付けられている色値の範囲、及び群葉の色に関連付けられている色値の範囲を定義する。一部の実施形態では、このアプリケーションは、図5、8、及び図11を参照して上述されたものと同じ方式で、色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、その特定のコンテンツのタイプに関連付けられている画像上UIコントロールのセットを表示する。   The first stage 2005 is the same as the second stage 310 of FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The UI control display area 350 includes a UI control 352 for adjusting the saturation of the image, a UI control 354 for adjusting the sky color in the image, and a UI control 358 for adjusting the color of the foliage in the image. , And a UI control 356 for adjusting the skin tone in the image. The second stage 2010 shows the GUI 300 after the user has selected a location on the image 355. As illustrated, the user has selected a location on the image where a human face is displayed. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As described above, after the user selects a location on the image, some embodiments of the image editing application may use a series of steps to determine the type of specific content associated with the selected location. Perform analysis. Various embodiments use various techniques to determine the type of content associated with the selected location. The application of some embodiments initially defines a range of different color values associated with different types of content. For example, the application of some embodiments may include color value ranges associated with skin tones, color value ranges associated with sky colors, and color values associated with foliage colors. Define the range. In some embodiments, the application defines a range of color values in the same manner as described above with reference to FIGS. The application then determines whether the color value of the set of pixels corresponding to the selected location in the image falls within the color value range associated with the particular content type, and the identification Displays a set of on-image UI controls associated with the content type.

種々の実施形態は、画像上UIコントロールのセットを、種々の方式で実装する。例えば、一部の実施形態のアプリケーションは、画像上UIコントロールのセットを、方向依存性UIコントロールとして実装する。これらの実施形態の一部では、アプリケーションは、UIコントロールに関連付けられている色調整操作を開始するようにユーザを導くために、各UIコントロールに関する方向矢印を表示する。ユーザは、種々の方向入力を提供することによって、種々の色調整操作を開始する。この方向入力の方向に基づいて、アプリケーションは、画像に対して特定の色調整を実行する。第2ステージ2010では、ユーザは、人の顔を表示する画像上の場所を選択しているため、このアプリケーションは、選択された場所に対応する画素の色値が、肌の色調に関連付けられていることを判定する。結果として、このアプリケーションは、肌の色調を調整するための画像上UIコントロール2025及び画像上UIコントロール2030(水平軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール2025及び画像上UIコントロール2030のセットは、肌の色調UIコントロール356に対応する。一部の実施形態では、このアプリケーションはまた、肌の色調UIコントロール356がアクティブ化されていることを示すために、肌の色調UIコントロール356を強調表示する。肌の色調を調整するためのUIコントロールに加えて、一部の実施形態のアプリケーションはまた、画像全体に関する色値を調整するためのコンテンツに依存しないUIコントロールのセットも表示する。これらの実施形態では、コンテンツに依存しないUIコントロールのセットは、ユーザによって選択される場所とは無関係に、常に表示される。この実施例では、アプリケーションは、画像全体に関する彩度を調整するためのコンテンツに依存しないUIコントロール2035及びUIコントロール2040(垂直軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール2035及び画像上UIコントロール2040のセットは、彩度UIコントロール352に対応する。一部の実施形態では、このアプリケーションはまた、彩度UIコントロール352がアクティブ化されていることを示すために、彩度UIコントロール352を強調表示する。この図には示されないが、この第2ステージ2010でのユーザは、方向入力を提供することによって、特定の色調整(すなわち、画像全体に対する彩度調整、又は画像の肌の色調に対する色調整)を選択することができる。   Various embodiments implement a set of on-image UI controls in various ways. For example, some embodiments of the application implement a set of on-image UI controls as direction-dependent UI controls. In some of these embodiments, the application displays a directional arrow for each UI control to guide the user to initiate a color adjustment operation associated with the UI control. The user initiates various color adjustment operations by providing various direction inputs. Based on the direction of this direction input, the application performs a specific color adjustment on the image. In the second stage 2010, since the user has selected a place on the image where the person's face is to be displayed, the color value of the pixel corresponding to the selected place is related to the skin tone. Judge that there is. As a result, this application displays a set of on-image UI controls 2025 and on-image UI controls 2030 (displayed as two directional arrows along the horizontal axis) for adjusting the skin tone. The set of the on-image UI control 2025 and the on-image UI control 2030 corresponds to the skin tone UI control 356. In some embodiments, the application also highlights the skin tone UI control 356 to indicate that the skin tone UI control 356 is activated. In addition to UI controls for adjusting skin tone, some embodiment applications also display a set of content-independent UI controls for adjusting color values for the entire image. In these embodiments, the content independent set of UI controls is always displayed regardless of the location selected by the user. In this example, the application displays a set of content-independent UI controls 2035 and UI controls 2040 (displayed as two directional arrows along the vertical axis) to adjust the saturation for the entire image. . The set of the on-image UI control 2035 and the on-image UI control 2040 corresponds to the saturation UI control 352. In some embodiments, the application also highlights the saturation UI control 352 to indicate that the saturation UI control 352 is activated. Although not shown in this figure, the user at this second stage 2010 can provide a specific color adjustment (ie, saturation adjustment for the entire image, or color adjustment for the skin tone of the image) by providing a directional input. Can be selected.

一部の実施形態では、異なる色調整に関連付けられている異なる画像上UIコントロールのセットは、異なる外観を有する。例えば、画像上UIコントロール2025及び画像上UIコントロール2030は、ユーザへの区別を提供するために、画像上UIコントロール2035及び画像上UIコントロール2040とは異なる色を有し得る。   In some embodiments, different sets of on-image UI controls associated with different color adjustments have different appearances. For example, the on-image UI control 2025 and the on-image UI control 2030 may have different colors than the on-image UI control 2035 and the on-image UI control 2040 to provide a distinction to the user.

第3ステージ2015は、ユーザが、画像355上の異なる場所を選択した後の、GUI300を示す。図示のように、ユーザは、青空を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、空の色に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、空の色を調整するための画像上UIコントロール2045及び画像上UIコントロール2050(水平軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール2045及び画像上UIコントロール2050のセットは、空UIコントロール354に対応する。図示のように、このアプリケーションはまた、空UIコントロール354がアクティブ化されていることを示すために、空UIコントロール354を強調表示する。第2ステージ2010と同様に、空の色を調整するための画像上UIコントロールに加えて、このアプリケーションはまた、画像全体に関する彩度を調整するためのコンテンツに依存しないUIコントロール2035及びUIコントロール2040のセットも表示する。このアプリケーションはまた、彩度UIコントロール352がアクティブ化されていることを示すために、彩度UIコントロール352を強調表示する。この図には示されないが、この第3ステージ2015でのユーザは、方向入力を提供することによって、特定の色調整(すなわち、画像全体に対する彩度調整、又は画像の空の色に対する色調整)を選択することができる。   The third stage 2015 shows the GUI 300 after the user has selected a different location on the image 355. As shown, the user has selected a location on the image showing the blue sky. The application determines that the color value of the pixel corresponding to this newly selected location falls within the color value range defined for the sky color. As a result, the application displays a set of on-image UI controls 2045 and on-image UI controls 2050 (displayed as two directional arrows along the horizontal axis) for adjusting the sky color. The set of the on-image UI control 2045 and the on-image UI control 2050 corresponds to the empty UI control 354. As shown, the application also highlights the empty UI control 354 to indicate that the empty UI control 354 is activated. Similar to the second stage 2010, in addition to the on-image UI control for adjusting the sky color, this application also provides content-independent UI control 2035 and UI control 2040 for adjusting the saturation for the entire image. Also displays the set. The application also highlights the saturation UI control 352 to indicate that the saturation UI control 352 is activated. Although not shown in this figure, the user at this third stage 2015 may provide a specific color adjustment (ie, saturation adjustment for the entire image, or color adjustment for the sky color of the image) by providing a directional input. Can be selected.

第4ステージ2020は、ユーザが、画像355上の異なる場所を選択した後の、GUI300を示す。図示のように、ユーザは、山を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、群葉の色に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、群葉の色を調整するための画像上UIコントロール2055及び画像上UIコントロール2060(水平軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール2055及び画像上UIコントロール2060のセットは、群葉UIコントロール358に対応する。図示のように、このアプリケーションはまた、群葉UIコントロール358がアクティブ化されていることを示すために、群葉UIコントロール358を強調表示する。第2ステージ2010及び第3ステージ2015と同様に、群葉の色を調整するための画像上UIコントロールに加えて、このアプリケーションはまた、画像全体に関する彩度を調整するためのコンテンツに依存しないUIコントロール2035及びUIコントロール2040のセットも表示する。このアプリケーションはまた、彩度UIコントロール352がアクティブ化されていることを示すために、彩度UIコントロール352を強調表示する。この図には示されないが、この第4ステージ2020でのユーザは、方向入力を提供することによって、特定の色調整(すなわち、画像全体に対する彩度調整、又は画像の群葉の色に対する色調整)を選択することができる。   The fourth stage 2020 shows the GUI 300 after the user has selected a different location on the image 355. As shown, the user has selected a location on the image showing the mountain. The application determines that the color value of the pixel corresponding to this newly selected location falls within the color value range defined for the foliage color. As a result, this application displays a set of on-image UI controls 2055 and on-image UI controls 2060 (displayed as two directional arrows along the horizontal axis) to adjust the foliage color. The set of the on-image UI control 2055 and the on-image UI control 2060 corresponds to the foliage UI control 358. As shown, the application also highlights the foliage UI control 358 to indicate that the foliage UI control 358 is activated. Similar to the second stage 2010 and the third stage 2015, in addition to the on-image UI control for adjusting the foliage color, this application also provides a content-independent UI for adjusting the saturation for the entire image. A set of controls 2035 and UI controls 2040 is also displayed. The application also highlights the saturation UI control 352 to indicate that the saturation UI control 352 is activated. Although not shown in this figure, the user at this fourth stage 2020 can provide a direction input to provide a specific color adjustment (ie, saturation adjustment for the entire image, or color adjustment for the foliage color of the image). ) Can be selected.

図20は、画像に対して種々の色調整を実行するための、種々の画像上UIコントロールをアクティブ化する例示的操作を示す。図21、22、23、及び図24は、種々の画像上UIコントロールを操作することにより、画像に対して種々の色調整を実行する実施例を示す。具体的には、図21は、画像全体に関する彩度を調整するための画像上UIコントロールのセットを操作する例示的操作を、4つの異なるステージ2105、2110、2115、及びステージ2120で示す。   FIG. 20 illustrates an exemplary operation of activating various on-image UI controls to perform various color adjustments on the image. FIGS. 21, 22, 23, and 24 illustrate embodiments in which various color adjustments are performed on an image by manipulating various on-image UI controls. Specifically, FIG. 21 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust saturation for the entire image, at four different stages 2105, 2110, 2115, and stage 2120.

第1ステージ2105は、図20の第1ステージ2005と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ2110は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、人の顔を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール2025〜2040のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像全体に関する彩度を調整するための彩度UIコントロール352に対応する、画像上UIコントロール2035及び画像上UIコントロール2040のセット、並びに、画像の肌の色調を調整するための肌の色調UIコントロール356に対応する、画像上UIコントロール2025及び画像上UIコントロール2030のセットを含む。第2ステージ2110はまた、対応する彩度UIコントロール352及び肌の色調UIコントロール356が強調表示されることにより、これらの2つのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 2105 is the same as the first stage 2005 in FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 2110 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown in the figure, the user selects a place on the image 355 showing a person's face by tapping a finger at the place. As a result of this selection, a set of on-image UI controls 2025-2040 is displayed around the selected location on the image. This set of on-image UI controls corresponds to the saturation UI control 352 for adjusting the saturation on the entire image, and sets the on-image UI control 2035 and the on-image UI control 2040, and the skin tone of the image. It includes a set of on-image UI controls 2025 and on-image UI controls 2030 corresponding to skin tone UI controls 356 for adjustment. The second stage 2110 also shows that the corresponding saturation UI control 352 and skin tone UI control 356 are highlighted to indicate that these two UI controls are activated.

第3ステージ2115は、ユーザが、画像355に対する方向入力を提供することによって、画像355の彩度の調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印2125によって示されるように、画像の頂部に向けて、ユーザの指を上向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像全体に関する彩度を増大させるための画像上UIコントロール2035と関連付けて、画像355に対する彩度調整を実行する。図示のように、画像355内の色の彩度は、画像355の全域にわたる斜線によって示されるように、増大している。第3ステージ2115はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール2025及び画像上UIコントロール2030が、ディスプレイから除去されて、対応する肌の色調UIコントロール356が、もはや強調表示されないことも示す。一部の実施形態では、アクティブ化された画像上UIコントロール2035及び画像上UIコントロール2040は、方向入力に追従する。それゆえ、アクティブ化された画像上UIコントロールは、指(又はカーソル)が配置される画像上の場所の周囲に、常に存在する。更には、第3ステージ2115は、画像355内の色の彩度が、画像上UIコントロール2035によって増大されると、対応する彩度UIコントロール352のつまみが、右に移動していることを示す。   The third stage 2115 shows the GUI 300 after the user has started adjusting the saturation of the image 355 by providing directional input to the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger upwards toward the top of the image, as indicated by arrow 2125. The application associates this directional input with the on-image UI control 2035 to increase the saturation for the entire image and performs saturation adjustment on the image 355. As shown, the color saturation in image 355 has increased as indicated by the diagonal lines across image 355. The third stage 2115 also allows the deactivated on-image UI control 2025 and on-image UI control 2030 to be removed from the display after the application associates the direction input with one set of on-image UI controls. The corresponding skin tone UI control 356 also indicates that it is no longer highlighted. In some embodiments, the activated on-image UI control 2035 and on-image UI control 2040 follow a directional input. Therefore, an activated on-image UI control is always present around the location on the image where the finger (or cursor) is placed. Furthermore, the third stage 2115 indicates that when the saturation of the color in the image 355 is increased by the on-image UI control 2035, the knob of the corresponding saturation UI control 352 has moved to the right. .

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対する彩度調整を実施した後の、第3ステージ2115で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the third stage 2115 after the user performs saturation adjustment on the image 355.

第4ステージ2120は、ユーザが、矢印2130によって示されるように、ユーザの指を更に上向きにドラッグすることによって、画像355の彩度を更に調整した後の、GUI300を示す。図示のように、このステージ2120での画像355内の色は、画像355の全域にわたる、より高密度の斜線によって示されるように、第3ステージ2115での画像内の色よりも、更に彩度が増大されて示される。第4ステージ2120はまた、対応する彩度UIコントロール352のつまみが、更に右に移動していることも示す。一部の実施形態では、画像の彩度のユーザによる調整が、限界(例えば、画像に関する彩度の、可能な範囲の上端又は下端)に達すると、ユーザの指の方向の矢印は、徐々に消失するか、又は消滅する。例えば、ユーザが、このステージ2120で示される指の位置から更に上向きにユーザの指をドラッグすることによって、画像355の彩度を更にまた調整する場合には、矢印2035が徐々に消失するか、又は消滅する。また、対応する彩度UIコントロール352のつまみも右端に達して、更に右に移動することはない。一部の実施形態では、限界に達することに関する、この矢印の消失又は消滅は、本出願で説明される他のタイプの色調整に適用可能である。   The fourth stage 2120 shows the GUI 300 after the user has further adjusted the saturation of the image 355 by dragging the user's finger further upward as indicated by the arrow 2130. As shown, the colors in the image 355 at this stage 2120 are more saturated than the colors in the image at the third stage 2115, as indicated by the denser diagonal lines throughout the image 355. Is shown increased. The fourth stage 2120 also indicates that the corresponding chroma UI control 352 knob has moved further to the right. In some embodiments, when the user's adjustment of image saturation reaches a limit (eg, the upper or lower end of the possible range of saturation for the image), the arrow in the direction of the user's finger gradually Disappear or disappear. For example, when the user further adjusts the saturation of the image 355 by dragging the user's finger upward from the position of the finger indicated by the stage 2120, the arrow 2035 gradually disappears, Or disappear. Further, the knob of the corresponding saturation UI control 352 reaches the right end and does not move further to the right. In some embodiments, the disappearance or disappearance of this arrow with respect to reaching the limit is applicable to other types of color adjustments described in this application.

図21は、画像全体に関する彩度を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図22は、画像の色温度を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。色温度は、画像内の対象物から反射する可視光の特性である。画像内の対象物に当っている、より暖かい光は、その画像内の対象物の色に、より暖かい色調(すなわち、より多くの赤色及び黄色)を作り出し、その一方で、画像内の対象物に当っている、より冷たい光は、その画像内の対象物の色に、より冷たい色調(すなわち、より多くの青色及びシアン)を作り出す。それゆえ、画像の色温度を調整することは、画像に対して、より多くの赤色/黄色を追加すること、又はより多くの青色/シアンを追加することを意味する。具体的には、図22は、この色調整操作を、4つの異なるステージ2205、2210、2215、及びステージ2220で示す。   FIG. 21 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust saturation for the entire image. FIG. 22 shows an exemplary operation for operating a set of on-image UI controls to adjust the color temperature of the image. Color temperature is a characteristic of visible light reflected from an object in an image. The warmer light that strikes an object in the image creates a warmer tone (ie, more red and yellow) in the color of the object in the image, while the object in the image The cooler light that hits creates a cooler tone (ie, more blue and cyan) in the color of the object in the image. Therefore, adjusting the color temperature of the image means adding more red / yellow or more blue / cyan to the image. Specifically, FIG. 22 illustrates this color adjustment operation with four different stages 2205, 2210, 2215, and stage 2220.

第1ステージ2205は、図20の第1ステージ2005と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ2210は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、人の顔を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール2025〜2040のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像全体に関する彩度を調整するための彩度UIコントロール352に対応する、画像上UIコントロール2035及び画像上UIコントロール2040のセット、並びに、画像の肌の色調を調整するための肌の色調UIコントロール356に対応する、画像上UIコントロール2025及び画像上UIコントロール2030のセットを含む。第2ステージ2210はまた、対応する彩度UIコントロール352及び肌の色調UIコントロール356が強調表示されることにより、これらの2つのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 2205 is the same as the first stage 2005 in FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. Second stage 2210 shows GUI 300 after the user has selected a location on image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown in the figure, the user selects a place on the image 355 showing a person's face by tapping a finger at the place. As a result of this selection, a set of on-image UI controls 2025-2040 is displayed around the selected location on the image. This set of on-image UI controls corresponds to the saturation UI control 352 for adjusting the saturation on the entire image, and sets the on-image UI control 2035 and the on-image UI control 2040, and the skin tone of the image. It includes a set of on-image UI controls 2025 and on-image UI controls 2030 corresponding to skin tone UI controls 356 for adjustment. The second stage 2210 also shows that the corresponding saturation UI control 352 and skin tone UI control 356 are highlighted to indicate that these two UI controls are activated.

第3ステージ2215は、ユーザが、画像355に対する方向入力を提供することによって、画像355の色温度の調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印2225によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の肌の色調を改善するための画像上UIコントロール2025と関連付けて、画像355に対する色温度調整を実行する。図示のように、画像355の色温度は、画像355の全域にわたる斜線によって示されるように、上昇している。一部の実施形態では、このアプリケーションは、肌の色調をより心地よいものにするために、画像の色温度を調整する。これらの実施形態の一部では、アプリケーションは、図5を参照して上述されたものと同じである、定義された肌の色調の範囲を使用して、その定義された肌の色調の範囲内に収まる画像内の色を、より心地よいものにするように、画像の色値を調整する。   The third stage 2215 shows the GUI 300 after the user has started adjusting the color temperature of the image 355 by providing directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger to the right, as indicated by arrow 2225. The application associates this directional input with an on-image UI control 2025 to improve the skin tone in the image and performs a color temperature adjustment on the image 355. As shown, the color temperature of image 355 is rising as indicated by the diagonal lines across image 355. In some embodiments, the application adjusts the color temperature of the image to make the skin tone more pleasant. In some of these embodiments, the application uses the defined skin tone range, which is the same as described above with reference to FIG. 5, and is within that defined skin tone range. The color value of the image is adjusted so that the colors in the image that fall within the range are more comfortable.

第3ステージ2215はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール2035及び画像上UIコントロール2040が、ディスプレイから除去されて、対応する彩度UIコントロール352が、もはや強調表示されないことも示す。第3ステージ2215はまた、対応する肌の色調UIコントロール356のつまみが、右に移動していることも示す。   The third stage 2215 also allows the deactivated on-image UI control 2035 and on-image UI control 2040 to be removed from the display after the application associates the direction input with one set of on-image UI controls. The corresponding saturation UI control 352 also indicates that it is no longer highlighted. The third stage 2215 also indicates that the knob of the corresponding skin tone UI control 356 has moved to the right.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して肌の色調調整を実施した後の、第3ステージ2215で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the third stage 2215 after the user performs skin tone adjustment on the image 355.

第4ステージ2220は、ユーザが、矢印2230によって示されるように、ユーザの指を更に右にドラッグすることによって、画像355の色温度を更に調整した後の、GUI300を示す。図示のように、このステージ2220での画像355は、画像355の全域にわたる、より高密度の斜線によって示されるように、第3ステージ2215での画像よりも更に調整されて示される。第4ステージ2220はまた、対応する肌の色調UIコントロール356のつまみが、更に右に移動していることも示す。   The fourth stage 2220 shows the GUI 300 after the user has further adjusted the color temperature of the image 355 by dragging the user's finger further to the right as indicated by the arrow 2230. As shown, the image 355 at this stage 2220 is shown further adjusted than the image at the third stage 2215, as shown by the denser diagonal lines across the image 355. The fourth stage 2220 also indicates that the knob of the corresponding skin tone UI control 356 has moved further to the right.

図22は、画像に関する色温度を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図23は、画像内の空の色を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。具体的には、図23は、この色調整操作を、4つの異なるステージ2305、2310、2315、及びステージ2320で示す。   FIG. 22 shows an exemplary operation for operating a set of on-image UI controls to adjust the color temperature for the image. FIG. 23 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust the sky color in the image. Specifically, FIG. 23 illustrates this color adjustment operation with four different stages 2305, 2310, 2315, and stage 2320.

第1ステージ2305は、図22の第1ステージ2205と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ2310は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、空を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール2035〜2050のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像全体に関する彩度を調整するための彩度UIコントロール352に対応する、画像上UIコントロール2035及び画像上UIコントロール2040のセット、並びに、画像の空の色を調整するための空UIコントロール354に対応する、画像上UIコントロール2045及び画像上UIコントロール2050のセットを含む。第2ステージ2310はまた、対応する彩度UIコントロール352及び空UIコントロール354が強調表示されることにより、これらの2つのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 2305 is the same as the first stage 2205 in FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 2310 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As illustrated, the user has selected a place on the image 355 showing the sky by tapping a finger at the place. As a result of this selection, a set of on-image UI controls 2035-2050 is displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 2035 and on-image UI controls 2040 corresponding to a saturation UI control 352 for adjusting the saturation of the entire image, and the sky color of the image. It includes a set of on-image UI controls 2045 and on-image UI controls 2050 that correspond to empty UI controls 354 for adjustment. Second stage 2310 also shows that the corresponding saturation UI control 352 and empty UI control 354 are highlighted to indicate that these two UI controls are activated.

第3ステージ2315は、ユーザが、画像355に対する方向入力を提供することによって、画像355の空の色の調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印2325によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の空の色を調整するための画像上UIコントロール2045と関連付けて、画像355に対する空の色の調整を実行する。図示のように、画像355内の空の色は、画像355内の空を示す領域の全域にわたる斜線によって示されるように、強調されている。第3ステージ2315はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール2035及び画像上UIコントロール2040が、ディスプレイから除去されて、対応する彩度UIコントロール352が、もはや強調表示されないことも示す。第3ステージ2315はまた、対応する空UIコントロール354のつまみが、右に移動していることも示す。   The third stage 2315 shows the GUI 300 after the user has started adjusting the sky color of the image 355 by providing a directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger to the right as indicated by arrow 2325. The application associates this directional input with the on-image UI control 2045 to adjust the sky color in the image and performs sky color adjustment for the image 355. As shown, the sky color in the image 355 is enhanced as indicated by the diagonal lines across the sky-present region in the image 355. The third stage 2315 also allows the deactivated on-image UI control 2035 and on-image UI control 2040 to be removed from the display after the application associates the direction input with one set of on-image UI controls. The corresponding saturation UI control 352 also indicates that it is no longer highlighted. The third stage 2315 also indicates that the corresponding empty UI control 354 knob has moved to the right.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して空調整を実施した後の、第3ステージ2315で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As shown in the figure, a bar appears above the selectable UI item 342 in the third stage 2315 after the user performs the sky adjustment on the image 355.

第4ステージ2320は、ユーザが、矢印2330によって示されるように、ユーザの指を更に右にドラッグすることによって、画像355の空の色を更に調整した後の、GUI300を示す。図示のように、このステージ2320での画像355内の空の色は、画像355内の空を示す領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ2315での画像内の空の色よりも、更に強調されて示される。第4ステージ2320はまた、対応する空UIコントロール354のつまみが、更に右に移動していることも示す。   Fourth stage 2320 shows GUI 300 after the user has further adjusted the sky color of image 355 by dragging the user's finger further to the right as indicated by arrow 2330. As shown, the sky color in image 355 at this stage 2320 is shown in the image at third stage 2315 as indicated by the denser diagonal lines across the sky-indicating region in image 355. It is shown more emphasized than the sky color. The fourth stage 2320 also indicates that the corresponding empty UI control 354 knob has moved further to the right.

図23は、画像に関する空の色を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図24は、画像内の群葉の色を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。具体的には、図24は、この色調整操作を、4つの異なるステージ2405、2410、2415、及びステージ2420で示す。   FIG. 23 illustrates an exemplary operation for operating a set of on-image UI controls to adjust the sky color for an image. FIG. 24 shows an exemplary operation for manipulating a set of on-image UI controls to adjust the color of the foliage in the image. Specifically, FIG. 24 illustrates this color adjustment operation with four different stages 2405, 2410, 2415 and a stage 2420.

第1ステージ2405は、図23の第1ステージ2305と同一である。図示のように、ユーザは、画像355の色を調整するための選択可能UI項目342を選択している。第2ステージ2410は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、山を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール2035、2040、2055、及び画像上UIコントロール2060のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像全体に関する彩度を調整するための彩度UIコントロール352に対応する、画像上UIコントロール2035及び画像上UIコントロール2040のセット、並びに、画像の群葉の色を調整するための群葉UIコントロール358に対応する、画像上UIコントロール2055及び画像上UIコントロール2060のセットを含む。第2ステージ2410はまた、対応する彩度UIコントロール352及び群葉UIコントロール358が強調表示されることにより、これらの2つのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 2405 is the same as the first stage 2305 in FIG. As shown, the user has selected a selectable UI item 342 for adjusting the color of the image 355. The second stage 2410 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As illustrated, the user has selected a place on the image 355 showing the mountain by tapping a finger at the place. As a result of this selection, a set of on-image UI controls 2035, 2040, 2055 and an on-image UI control 2060 are displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 2035 and on-image UI controls 2040 corresponding to a saturation UI control 352 for adjusting the saturation of the entire image, and the color of the foliage of the image. A set of on-image UI controls 2055 and on-image UI controls 2060 corresponding to the foliage UI controls 358 for adjusting Second stage 2410 also shows that the corresponding saturation UI control 352 and foliage UI control 358 are highlighted to indicate that these two UI controls are activated.

第3ステージ2415は、ユーザが、画像355に対する方向入力を提供することによって、画像355の群葉の色の調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印2425によって示されるように、ユーザの指を右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内の群葉の色を調整するための画像上UIコントロール2055と関連付けて、画像355に対する群葉の色の調整を実行する。図示のように、画像355内の群葉の色は、画像355内の山を示す領域の全域にわたる斜線によって示されるように、強調されている。第3ステージ2415はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール2035及び画像上UIコントロール2040が、ディスプレイから除去されて、対応する彩度UIコントロール352が、もはや強調表示されないことも示す。   The third stage 2415 shows the GUI 300 after the user has started adjusting the foliage color of the image 355 by providing directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides direction input by dragging the user's finger to the right, as indicated by arrow 2425. The application associates this directional input with the on-image UI control 2055 for adjusting the color of the foliage in the image and performs the adjustment of the foliage color for the image 355. As shown, the foliage color in the image 355 is enhanced as shown by the diagonal lines across the region representing the mountain in the image 355. The third stage 2415 also removes the deactivated on-image UI control 2035 and on-image UI control 2040 from the display after the application associates the direction input with one set of on-image UI controls. The corresponding saturation UI control 352 also indicates that it is no longer highlighted.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して群葉調整を実施した後の、第3ステージ2415で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As shown in the figure, a bar appears above the selectable UI item 342 in the third stage 2415 after the user performs the foliage adjustment on the image 355.

第4ステージ2420は、ユーザが、矢印2430によって示されるように、ユーザの指を更に右にドラッグすることによって、画像355の群葉の色を更に調整した後の、GUI300を示す。図示のように、このステージ2420での画像355内の群葉の色は、画像355内の山を示す領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ2415での画像内の群葉の色よりも、更に強調されて示される。   The fourth stage 2420 shows the GUI 300 after the user has further adjusted the foliage color of the image 355 by dragging the user's finger further to the right as indicated by the arrow 2430. As shown, the foliage color in the image 355 at this stage 2420 is the image at the third stage 2415, as shown by the denser diagonal lines across the area representing the mountain in the image 355. It is shown more emphasized than the color of the inner foliage.

一部の実施形態では、ユーザが、画像上UIコントロールのセットに関連付けられている方向入力の提供を開始した後、その画像上UIコントロールのセットは常に、画像から完全に消滅するまで、徐々に消失し始める。第4ステージ2420は、ユーザが、更に右へと指を移動させた後に、画像上UIコントロール2055及び画像上UIコントロール2060が、徐々に消失したことを示す。   In some embodiments, after the user begins to provide directional input associated with a set of on-image UI controls, the set of on-image UI controls is always progressively disappeared completely from the image. It begins to disappear. The fourth stage 2420 indicates that the on-image UI control 2055 and the on-image UI control 2060 gradually disappear after the user moves the finger further to the right.

図20、21、22、23、及び図24に示される上記の実施例では、重ね合わせUIコントロール2025〜2060のセットは、4つの矢印として画像355上に表示されるが、他の実施形態では、重ね合わせUIコントロールのセットは、異なる外観を有し得る。図25は、重ね合わせUIコントロールに関する2つの他の実施例を示す。第1の実施例で示すように、重ね合わせUIコントロール2545、2550、2555、及び重ね合わせUIコントロール2560のセットは、ユーザによって選択された画像355上の場所2525から延びる、アームのセットを含む。各重ね合わせUIコントロールはまた、アニメーション化された方向矢印も含み、この矢印は、矢印によって示される方向で、アーム内部を横断する。更には、各重ね合わせUIコントロールは、その重ね合わせUIコントロールに対応する調整操作を表す色で、表示される。重ね合わせUIコントロール2545及び重ね合わせUIコントロール2550は、1つの色で(例えば、黒で)表示され、その一方で、重ね合わせUIコントロール2555及び重ね合わせUIコントロール2560は、別の色で(例えば、白で)表示されるが、これは、重ね合わせUIコントロールのこれらの2つのセットが、異なる調整を開始するためのものであるからである。第2の実施例は、重ね合わせUIコントロールに関する第2の代替的な外観を示す。具体的には、実施例(2)は、ユーザにサムネイルのプレビューを提供する、重ね合わせUIコントロール2543、2547、2553、及び重ね合わせUIコントロール2557のセットを示す。図示のように、サムネイル2570のセットが、各重ね合わせUIコントロール上に表示される。このサムネイルは、その重ね合わせUIコントロール上のサムネイルの場所に基づいて適用されるであろう編集に対応する、画像355のプレビューを提供する。例えば、サムネイル2585は、ユーザが、場所2580に基づく方向入力を提供した場合に、画像355がどのように見えることになるかの、プレビューを提供する。   In the above example shown in FIGS. 20, 21, 22, 23, and 24, the set of superimposed UI controls 2025-2060 is displayed on the image 355 as four arrows, but in other embodiments The set of superimposed UI controls can have different appearances. FIG. 25 shows two alternative embodiments for overlay UI control. As shown in the first embodiment, the set of superposition UI controls 2545, 2550, 2555, and superposition UI control 2560 includes a set of arms extending from a location 2525 on the image 355 selected by the user. Each superimposed UI control also includes an animated directional arrow that traverses the interior of the arm in the direction indicated by the arrow. Further, each overlay UI control is displayed in a color representing an adjustment operation corresponding to the overlay UI control. Overlay UI control 2545 and Overlay UI control 2550 are displayed in one color (eg, black), while Overlay UI control 2555 and Overlay UI control 2560 are in different colors (eg, Displayed (in white) because these two sets of superimposed UI controls are for initiating different adjustments. The second example shows a second alternative appearance for the overlay UI control. Specifically, Example (2) shows a set of overlay UI controls 2543, 2547, 2553, and overlay UI controls 2557 that provide a thumbnail preview to the user. As shown, a set of thumbnails 2570 is displayed on each overlay UI control. This thumbnail provides a preview of the image 355 corresponding to the edit that will be applied based on the location of the thumbnail on its overlay UI control. For example, the thumbnail 2585 provides a preview of how the image 355 will look if the user provides directional input based on the location 2580.

図26は、画像上の場所のユーザ選択に基づいて、画像内の彩度、肌の色調、空の色、及び群葉の色を調整するための画像上UIコントロールのセットを提供するためのプロセス2600を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。最初の3つの操作2605、2610、及び2615は、図19のプロセス1900の、最初の3つの操作1905、1910、及び1915と同一である。このプロセスは、画像上の場所の選択を(2605で)受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を(2610で)取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。   FIG. 26 provides a set of on-image UI controls for adjusting the saturation, skin tone, sky color, and foliage color in an image based on a user selection of a location on the image. Process 2600 is shown conceptually. In some embodiments, this process is performed by an image editing application. The first three operations 2605, 2610, and 2615 are identical to the first three operations 1905, 1910, and 1915 of the process 1900 of FIG. The process begins by receiving (at 2605) a location selection on the image. The process then obtains (at 2610) the color value of the set of pixels that corresponds to the selected location on the image. In some embodiments, this set of pixels is a pixel located near the selected location.

次に、このプロセスは、取得された色値に対する一連の分析を(2615で)実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、この一連の分析は、選択された場所が肌の色調に関連付けられているか否かを判定するための分析、選択された場所が空の色に関連付けられているか否かを判定するための分析、及び、選択された場所が群葉の色に関連付けられているか否かを判定するための分析を含む。   The process then performs (at 2615) a series of analyzes on the acquired color values. In some embodiments, each analysis determines whether the selected location is associated with a particular content type based on the obtained color values. For example, this series of analyzes can be used to determine whether a selected location is associated with a skin tone, and to determine whether a selected location is associated with a sky color. Analysis and analysis to determine whether the selected location is associated with the foliage color.

このプロセスは、一連の分析からの結果に基づいて、選択された場所が肌の色調に関連付けられているか否かを(2620で)判定する。選択された場所が肌の色調に関連付けられている場合には、このプロセスは、画像内の肌の色調を調整するためのUIコントロールのセットを(2625で)提供する。一部の実施形態では、この肌の色調を調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   This process determines (at 2620) whether the selected location is associated with a skin tone based on the results from the series of analyses. If the selected location is associated with a skin tone, the process provides (at 2625) a set of UI controls for adjusting the skin tone in the image. In some embodiments, this set of UI controls for adjusting the skin tone is displayed around a selected location on the image.

このプロセスは、一連の分析からの結果に基づいて、選択された場所が空の色に関連付けられているか否かを(2630で)判定する。選択された場所が空の色に関連付けられている場合には、このプロセスは、画像内の空の色を調整するためのUIコントロールのセットを(2635で)提供する。一部の実施形態では、この空の色を調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   This process determines (at 2630) whether the selected location is associated with a sky color based on the results from the series of analyses. If the selected location is associated with a sky color, the process provides (at 2635) a set of UI controls for adjusting the sky color in the image. In some embodiments, this set of UI controls for adjusting the sky color is displayed around a selected location on the image.

このプロセスは、一連の分析からの結果に基づいて、選択された場所が群葉の色に関連付けられているか否かを(2640で)判定する。選択された場所が群葉の色に関連付けられている場合には、このプロセスは、画像内の群葉の色を調整するためのUIコントロールのセットを(2645で)提供する。一部の実施形態では、この群葉の色を調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   This process determines (at 2640) whether the selected location is associated with a foliage color based on the results from the series of analyses. If the selected location is associated with the foliage color, the process provides (at 2645) a set of UI controls for adjusting the foliage color in the image. In some embodiments, this set of UI controls for adjusting the foliage color is displayed around a selected location on the image.

次に、このプロセスは、画像全体に関する彩度を調整するためのUIコントロールのセットを(2650で)提供する。一部の実施形態では、このプロセスは、ユーザによって選択される画像上の場所とは無関係に、この画像全体に関する彩度を調整するためのUIコントロールのセットを、常に提供する。   The process then provides (at 2650) a set of UI controls for adjusting the saturation for the entire image. In some embodiments, this process always provides a set of UI controls for adjusting the saturation for this entire image, regardless of the location on the image selected by the user.

次いで、このプロセスは、方向入力が受け取られるか否かを(2655で)判定する。方向入力が受け取られる場合には、このプロセスは、その方向入力に基づいて、画像に対する色調整操作を(2660で)実行する。次いで、このプロセスは、画像上UIコントロールが選択解除されるか否かを(2665で)判定する。一部の実施形態では、画像上UIコントロールのセットは、タッチ又はニアタッチ感応スクリーンを有する装置から、指を引き上げること(又は、ボタンを解除すること)によって、選択解除することができる。   The process then determines (at 2655) whether a directional input is received. If a direction input is received, the process performs (at 2660) a color adjustment operation on the image based on the direction input. The process then determines (at 2665) whether the on-image UI control is deselected. In some embodiments, the set of on-image UI controls can be deselected by lifting a finger (or releasing a button) from a device having a touch or near touch sensitive screen.

受け取られる方向入力が存在しないことを、このプロセスが(2655で)判定する場合には、このプロセスはまた、操作2665に進み、画像上UIコントロールが選択解除されるか否かを判定する。画像上UIコントロールのセットが選択解除されない場合には、このプロセスは、方向入力が受け取られるか否かを判定するために、2655に戻る。その一方で、画像上UIコントロールのセットが選択解除される場合には、このプロセスは終了する。   If the process determines (at 2655) that no directional input is received, the process also proceeds to operation 2665 to determine whether the on-image UI control is deselected. If the set of on-image UI controls is not deselected, the process returns to 2655 to determine whether a directional input is received. On the other hand, if the set of on-image UI controls is deselected, the process ends.

一部の実施形態では、画像上に表示されるUIコントロールのセットは、方向依存性UIコントロールである。これらの実施形態では、ユーザは、画像に対して方向入力(すなわち、ベクトル)を提供することによって、画像上の色調整操作のうちの1つをアクティブ化することができる。この方向入力は、方向及び大きさを含むベクトルである。図27は、画像内の場所2725をユーザが選択した後に表示され得る、例示的な方向依存性UIコントロールのセット2700を示す。UIコントロールのセット2700は、UIコントロール2705〜2720を含む。各UIコントロールは、異なる概ねの方向に対応する。例えば、UIコントロール2705は、画像の垂直軸に沿って概ね上向きの方向(すなわち、方向2730と方向2735との間)に対応し、UIコントロール2710は、画像の水平軸に沿って概ね右への方向(すなわち、方向2735と方向2740との間)に対応し、UIコントロール2715は、画像の垂直軸に沿って概ね下向きの方向(すなわち、方向2740と方向2745との間)に対応し、UIコントロール2720は、画像の水平軸に沿って概ね左への方向(すなわち、方向2745と方向2730との間)に対応する。ユーザが、ベクトル2750などの方向入力を提供すると、このアプリケーションは、ベクトル2750の方向が、特定のUIコントロールの概ねの方向の範囲内に収まるか否かを判定する。一部の実施形態では、ベクトル2750は、選択された場所2725から新たな場所2760への、タッチ若しくはニアタッチ感応スクリーンを有する装置上での指の移動、又はカーソルの移動によって作り出される。一部の実施形態では、ベクトル2750は、選択された場所2725から新たな場所2760への直線「c」であると判定される。   In some embodiments, the set of UI controls displayed on the image are direction-dependent UI controls. In these embodiments, the user can activate one of the color adjustment operations on the image by providing a directional input (ie, a vector) to the image. This direction input is a vector containing the direction and magnitude. FIG. 27 shows an exemplary set of direction-dependent UI controls 2700 that may be displayed after a user selects a location 2725 in the image. The UI control set 2700 includes UI controls 2705-2720. Each UI control corresponds to a different general direction. For example, UI control 2705 corresponds to a generally upward direction along the vertical axis of the image (ie, between direction 2730 and direction 2735), and UI control 2710 corresponds generally to the right along the horizontal axis of the image. Corresponding to a direction (ie, between direction 2735 and direction 2740), UI control 2715 corresponds to a generally downward direction (ie, between direction 2740 and direction 2745) along the vertical axis of the image, and UI Control 2720 corresponds to a direction generally to the left along the horizontal axis of the image (ie, between direction 2745 and direction 2730). When the user provides a directional input, such as vector 2750, the application determines whether the direction of vector 2750 falls within the general directional range of a particular UI control. In some embodiments, the vector 2750 is created by moving a finger on a device having a touch or near touch sensitive screen, or moving a cursor, from a selected location 2725 to a new location 2760. In some embodiments, the vector 2750 is determined to be a straight line “c” from the selected location 2725 to the new location 2760.

一部の実施形態では、ベクトルの方向は、軸に対する角度として表すことができる。例えば、一部の実施形態のアプリケーションは、水平軸に沿った方向2755を、0度として使用するように選択することができる。これらの実施形態では、各方向は、0度の方向2755から時計回りに進む角度の観点で、表すことができる。例えば、方向入力2750の方向は、角度「a」として表すことができる。これらの実施形態では、方向入力は、その方向入力の角度が、方向2735(45度)と方向2730(135度)との間である場合には、UIコントロール2705に関連付けられている。同様に、方向入力は、その方向入力の角度が、方向2730(135度)と方向2745(225度)との間である場合には、UIコントロール2720に関連付けられ、方向入力は、その方向入力の角度が、方向2730(225度)と方向2745(315度)との間である場合には、UIコントロール2715に関連付けられ、方向入力は、その方向入力の角度が、方向2740(315度)と方向2735(45度)との間である場合には、UIコントロール2710に関連付けられている。それゆえ、30度の方向を有する方向入力は、UIコントロール2710に関連付けられ、70度の方向を有する別の方向入力は、UIコントロール2705に関連付けられている。この実施例では、方向入力2750の角度(すなわち、角度「a」)は、315度と45度との間であるため、このアプリケーションは、UIコントロール2710の強調表示によって示されるように、方向入力2750をUIコントロール2710に関連付ける。   In some embodiments, the direction of the vector can be expressed as an angle with respect to the axis. For example, an application of some embodiments may choose to use direction 2755 along the horizontal axis as 0 degrees. In these embodiments, each direction can be expressed in terms of an angle that goes clockwise from a 0 degree direction 2755. For example, the direction of the direction input 2750 can be represented as an angle “a”. In these embodiments, the direction input is associated with UI control 2705 if the angle of the direction input is between direction 2735 (45 degrees) and direction 2730 (135 degrees). Similarly, the direction input is associated with the UI control 2720 when the angle of the direction input is between the direction 2730 (135 degrees) and the direction 2745 (225 degrees), and the direction input is the direction input. If the angle is between the direction 2730 (225 degrees) and the direction 2745 (315 degrees), it is associated with the UI control 2715, and the direction input is the direction 2740 (315 degrees). And the direction 2735 (45 degrees) is associated with the UI control 2710. Therefore, a directional input having a 30 degree direction is associated with UI control 2710 and another directional input having a 70 degree direction is associated with UI control 2705. In this example, the angle of the direction input 2750 (ie, angle “a”) is between 315 degrees and 45 degrees, so this application is directed to the direction input as indicated by the UI control 2710 highlighting. Associate 2750 with UI control 2710.

一部の実施形態では、各色調整操作は、画像に適用するための調整値の範囲に関連付けられている。すなわち、より大きい調整値は、より大きい程度(又は、度合)の色調整操作を画像に対して適用することを示し、より小さい調整値は、より小さい程度(又は、度合)の色調整操作を画像に対して適用することを示す。これらの実施形態では、アプリケーションは、方向入力の大きさに基づいて、色調整操作に関する調整値を決定する。種々の実施形態は、種々の技術を使用して、方向入力の大きさを計算する。一部の実施形態では、このアプリケーションは、方向入力2750の大きさを、選択された場所2725から新たな場所2760までのベクトルの距離「c」として判定する。他の実施形態では、各方向依存性UIコントロールは、対応する軸を有する。例えば、UIコントロール2710は、軸2755に対応する。これらの実施形態では、アプリケーションは、方向入力2750の大きさを、UIコントロール2710の対応する軸2755に沿って、ベクトル2750によってカバーされる距離である、距離「b」として判定する。いずれの場合にも、計算された大きさを使用して、画像に対して色調整操作を適用するための調整値を決定する。   In some embodiments, each color adjustment operation is associated with a range of adjustment values for application to the image. That is, a larger adjustment value indicates that a greater degree (or degree) of color adjustment operation is applied to the image, and a smaller adjustment value indicates a smaller degree (or degree) of color adjustment operation. Indicates application to an image. In these embodiments, the application determines an adjustment value related to the color adjustment operation based on the magnitude of the direction input. Various embodiments use various techniques to calculate the magnitude of the direction input. In some embodiments, the application determines the magnitude of the direction input 2750 as the vector distance “c” from the selected location 2725 to the new location 2760. In other embodiments, each direction-dependent UI control has a corresponding axis. For example, UI control 2710 corresponds to axis 2755. In these embodiments, the application determines the magnitude of the direction input 2750 as the distance “b”, which is the distance covered by the vector 2750 along the corresponding axis 2755 of the UI control 2710. In any case, the calculated magnitude is used to determine an adjustment value for applying a color adjustment operation to the image.

図27に示す方向依存性UIコントロールのセット2700は、4つの方向依存性UIコントロールを含むのみであるが、一部の実施形態は、画像に対する種々の調整を提供するための、4つよりも多いか又は4つよりも少ない方向依存性UIコントロールを、画像上に提供することが、当業者には明らかなはずである。   Although the set of direction-dependent UI controls 2700 shown in FIG. 27 only includes four direction-dependent UI controls, some embodiments are more than four to provide various adjustments to the image. It should be apparent to those skilled in the art that more or fewer than four direction-dependent UI controls are provided on the image.

図28は、ユーザから方向入力を受け取り、その入力の方向及び大きさに基づいて、対応する色調整操作を画像に適用するためのプロセス2800を、概念的に示す。一部の実施形態では、このアプリケーションは、アプリケーションが、画像上の場所の選択を受け取り、対応するUIコントロールのセットを画像上に提供した後に、プロセス2800を実行する。   FIG. 28 conceptually illustrates a process 2800 for receiving a directional input from a user and applying a corresponding color adjustment operation to the image based on the direction and magnitude of the input. In some embodiments, the application performs process 2800 after the application receives a selection of a location on the image and provides a corresponding set of UI controls on the image.

このプロセスは、画像に対する方向入力を(2805で)受け取ることによって開始する。一部の実施形態では、方向入力は、方向及び大きさを含む。次いで、このプロセスは、方向入力の方向を(2810で)判定する。一部の実施形態では、方向入力の方向を判定する操作は、画像の軸に対する方向入力の角度を判定することを伴う。   The process begins by receiving a directional input (at 2805) for the image. In some embodiments, the direction input includes direction and magnitude. The process then determines (at 2810) the direction of the direction input. In some embodiments, the operation of determining the direction of the direction input involves determining an angle of the direction input with respect to the image axis.

方向入力の方向を判定した後、このプロセスは、その方向をUIコントロールに(2815で)関連付ける。一部の実施形態では、このプロセスは、図27を参照して上述された技術を使用して、特定のUIコントロールに方向を関連付ける。これらの実施形態では、プロセスは、異なるUIコントロールに、異なる方向の範囲を割り当てる。次いで、このプロセスは、その入力の方向が、特定のUIコントロールに関連付けられている範囲内に収まるか否かを判定する。   After determining the direction of the direction input, the process associates the direction with the UI control (at 2815). In some embodiments, this process associates a direction with a particular UI control using the technique described above with reference to FIG. In these embodiments, the process assigns different directional ranges to different UI controls. The process then determines whether the direction of the input falls within the range associated with the particular UI control.

次に、このプロセスは、方向入力の大きさを(2820で)判定する。一部の実施形態では、このプロセスは、図27を参照して上述された技術を使用して、方向入力の大きさを判定する。次いで、このプロセスは、その方向入力の大きさに基づいて、(2825で)調整値を計算する。一部の実施形態では、より大きい大きさは、より大きい調整値に対応し、より小さい大きさは、より小さい調整値に対応する。   The process then determines (at 2820) the magnitude of the direction input. In some embodiments, this process determines the magnitude of the directional input using the technique described above with reference to FIG. The process then calculates (at 2825) an adjustment value based on the magnitude of the direction input. In some embodiments, a larger magnitude corresponds to a larger adjustment value and a smaller magnitude corresponds to a smaller adjustment value.

最終的に、このプロセスは、計算された調整値を使用して、関連付けられているUIコントロールに対応する色調整操作を、画像に適用する。一部の実施形態では、このプロセスは、ユーザ入力を受け取るUIコントロールに基づいて、画像の一部分にのみ色調整を適用する。更には、このプロセスは、画像の画素の特定のセットに、最大限の色調整を適用し、画像の画素の別のセットに、より少ない程度の色調整を適用することができる。次いで、このプロセスは終了する。   Finally, the process uses the calculated adjustment value to apply a color adjustment operation corresponding to the associated UI control to the image. In some embodiments, the process applies color adjustments to only a portion of the image based on UI controls that receive user input. Furthermore, this process can apply maximum color adjustments to a particular set of image pixels and a lesser degree of color adjustments to another set of image pixels. The process then ends.

図29は、画像の色値を編集するための、画像上UIコントロールのセットを提供する、一部の実施形態の画像編集アプリケーション2900を示す。一部の実施形態では、画像編集アプリケーション2900は、プロセス1900、2600、及びプロセス2800を実行する。画像編集アプリケーション2900は、画像編集アプリケーション1800と同一の、幾つかの構成要素を含む。例えば、画像編集アプリケーション2900は、コンテンツ分析モジュール1845のセット、色空間変換モジュール1815、画素分離モジュール1810、及び色調整エンジン1820を含む。図示のように、この画像編集アプリケーションはまた、画像プロセッサ2940も含む。   FIG. 29 illustrates an image editing application 2900 of some embodiments that provides a set of on-image UI controls for editing image color values. In some embodiments, the image editing application 2900 performs processes 1900, 2600, and process 2800. The image editing application 2900 includes several components that are the same as the image editing application 1800. For example, the image editing application 2900 includes a set of content analysis modules 1845, a color space conversion module 1815, a pixel separation module 1810, and a color adjustment engine 1820. As shown, the image editing application also includes an image processor 2940.

UIモジュール1805は、画像上の場所のユーザ選択を受け取り、その選択された場所についての情報を、画像プロセッサ2940に渡す。選択された場所を受け取ると、画像プロセッサ2940は、その画像上の選択された場所に対応する画素のセットの色値を取得し、その画素のセット、及びそれらの色値を、コンテンツ分析モジュール1845のセットに渡す。コンテンツ分析モジュール1845のセットは、それらの色値に対して、一連の様々な分析を実行する。   The UI module 1805 receives a user selection of a location on the image and passes information about the selected location to the image processor 2940. Upon receipt of the selected location, the image processor 2940 obtains the color values of the set of pixels corresponding to the selected location on the image, and the content analysis module 1845 obtains the set of pixels and their color values. Pass to the set. The set of content analysis modules 1845 performs a series of different analyzes on those color values.

一部の実施形態では、各コンテンツ分析モジュール1845は、受け取った色値に基づいて、選択された場所が異なるコンテンツのタイプに関連付けられているか否かを判定するために、異なる分析を実行する。例えば、特定のコンテンツ分析モジュールは、選択された場所が肌の色調に関連付けられているか否かを判定するための、色値に対する分析を実行し、別のコンテンツ分析モジュールは、選択された場所が空に関連付けられているか否かを判定するための、色値に対する別の分析を実行する。次いで、コンテンツ分析モジュール1845のセットは、それらの分析の結果(すなわち、選択された場所に関連付けられている判定された特定のコンテンツのタイプ)を、画像プロセッサ2940に渡す。   In some embodiments, each content analysis module 1845 performs a different analysis to determine whether the selected location is associated with a different content type based on the received color values. For example, a particular content analysis module performs an analysis on color values to determine whether the selected location is associated with skin tone, and another content analysis module determines whether the selected location is Perform another analysis on the color values to determine if they are associated with the sky. The set of content analysis modules 1845 then passes the results of those analyzes (ie, the determined specific content type associated with the selected location) to the image processor 2940.

コンテンツ分析モジュール1845から受け取った分析の結果に基づいて、画像プロセッサ2940は、画像上の表示のための、種々の色値を調整するための画像上UIコントロールのセットを選択する。次いで、画像プロセッサ2940は、その選択された画像上UIコントロールのセットを表示するように、UIモジュール1805にリクエストする。UIモジュール1805が、画像に対する入力を受け取ると、UIモジュール1805は、その受け取った入力を、画像プロセッサ2940に返す。一部の実施形態では、受け取られる入力は、方向入力である。   Based on the results of the analysis received from the content analysis module 1845, the image processor 2940 selects a set of on-image UI controls for adjusting various color values for display on the image. The image processor 2940 then requests the UI module 1805 to display the set of UI controls on the selected image. When the UI module 1805 receives input for the image, the UI module 1805 returns the received input to the image processor 2940. In some embodiments, the received input is a directional input.

画像プロセッサ2940は、その方向入力を、特定の色調整操作(例えば、彩度調整、自然な彩度調整、肌の色調調整など)に関連付ける。次いで、画像プロセッサ2940は、その特定の色調整操作に関連付けられている色値の範囲内に収まる色値を有する、画像内の画素のセットを特定するように、画素分離モジュール1810にリクエストする。一部の実施形態では、画像の色値は、それらの色値の範囲を定義するために使用される色空間(例えば、YCC色空間)とは異なる色空間(例えば、RGB色空間)内で定義される。これらの実施形態では、画素のセットを特定するように、画素分離モジュール1810にリクエストする前に、画像プロセッサ2940は、画像の色値を、それらの色値の範囲を定義するために使用される色空間に変換するように、色空間変換モジュール1815にリクエストする。   Image processor 2940 associates the direction input with a particular color adjustment operation (eg, saturation adjustment, natural saturation adjustment, skin tone adjustment, etc.). The image processor 2940 then requests the pixel separation module 1810 to identify a set of pixels in the image that have color values that fall within the range of color values associated with that particular color adjustment operation. In some embodiments, the color values of the image are in a color space (eg, RGB color space) that is different from the color space (eg, YCC color space) used to define the range of those color values. Defined. In these embodiments, before requesting the pixel separation module 1810 to identify a set of pixels, the image processor 2940 is used to define the color values of the image and the range of those color values. Requests the color space conversion module 1815 to convert to a color space.

画素のセットが特定された後に、画像プロセッサ2940は、その画像、及び特定された画素についての情報を、画像に対して一連の色調整を実行するための色調整エンジン1820に送る。色調整エンジン1820は、画像内の特定された画素に、種々の色調整を適用する。図示のように、色調整エンジン1820は、画像にコントラスト調整を適用するためのコントラスト調整エンジン1825、画像に明度調整を適用するための明度調整エンジン1830、及び画像に彩度調整を適用するための彩度調整エンジン1835を含む。これらは、画像に対して実行することが可能な例示的な色調整に過ぎず、色調整エンジン1820は、画像に対して更なるタイプの色調整を実行するための、更なる色調整エンジンを含み得ることが、当業者には明らかなはずである。例えば、明度調整エンジン1830は、ユーザ入力を使用して、画像の明度を調整するための明度調整値を決定し、コントラスト調整エンジン1825は、ユーザ入力を使用して、画像のコントラストを調整するためのコントラスト調整値を決定し、彩度調整エンジン1835は、ユーザ入力を使用して、画像の彩度を調整するための彩度調整値を決定する。次いで、種々の調整エンジン1825〜1835は、それらの明度調整、コントラスト調整、及び彩度調整を画像に適用して、編集された画像を作り出す。   After the set of pixels is identified, the image processor 2940 sends the image and information about the identified pixels to a color adjustment engine 1820 for performing a series of color adjustments on the image. The color adjustment engine 1820 applies various color adjustments to the identified pixels in the image. As shown, the color adjustment engine 1820 includes a contrast adjustment engine 1825 for applying contrast adjustment to the image, a brightness adjustment engine 1830 for applying brightness adjustment to the image, and a saturation adjustment for applying the saturation adjustment to the image. A saturation adjustment engine 1835 is included. These are only exemplary color adjustments that can be performed on an image, and the color adjustment engine 1820 provides additional color adjustment engines to perform additional types of color adjustments on the image. It should be apparent to those skilled in the art that it can be included. For example, the brightness adjustment engine 1830 uses a user input to determine a brightness adjustment value for adjusting the brightness of the image, and the contrast adjustment engine 1825 uses the user input to adjust the contrast of the image. The saturation adjustment engine 1835 uses a user input to determine a saturation adjustment value for adjusting the saturation of the image. The various adjustment engines 1825-1835 then apply those lightness adjustments, contrast adjustments, and saturation adjustments to the image to produce an edited image.

一部の実施形態では、色調整エンジン1820は、変換された色空間内で、画像の色値を調整する。これらの実施形態では、画像プロセッサ2940は、色空間変換モジュール1815に、調整された画像を送り、その画像の色値を、その本来の色空間に変換して戻す。次いで、画像プロセッサ2940は、メディア記憶装置に、及び、表示のためのUIモジュール1805に、その調整された画像を送る。   In some embodiments, the color adjustment engine 1820 adjusts the color values of the image within the converted color space. In these embodiments, the image processor 2940 sends the adjusted image to the color space conversion module 1815 and converts the color value of the image back to its original color space. The image processor 2940 then sends the adjusted image to the media storage device and to the UI module 1805 for display.

画像上にUIコントロールのセットを提供することは、多くの利益を有する。例えば、画像上UIコントロールは、ユーザが調整値の範囲内で調整値を指定することを可能にするための、範囲スライダよりも細かい粒度を有する、より大きいスケールを提供する。図30は、GUI300を通じた、そのような利益の例を示す。図30に示すように、画像355の空の色を調整するための空UIコントロール354、並びに対応する画像上UIコントロール2045及び画像上UIコントロール2050がアクティブ化されている図7及び図23を参照して上述されたように、ユーザは、空UIコントロール354を操作するか、あるいは画像上UIコントロール2045及び画像上UIコントロール2050を使用して、画像に対して方向入力を提供することによって、画像の空の色を調整することができる。この実施例では、空UIコントロール354は、範囲スライダとして実装されることにより、ユーザは、範囲スライダ354に沿ってつまみを移動させることによって、0〜100の間で調整値を指定することが可能となる。範囲スライダ354は、サイズが限定されているため、範囲スライダ354に沿ってユーザがつまみを移動させる各単位3005は、調整値を、大きい量(例えば、25)で増大又は減少させる。その一方で、ユーザが、画像に対して方向入力を提供することによって、画像上UIコントロールを使用する場合、ユーザは、選択された場所から画像の両端まで移動させることができる。それゆえ、画像上でユーザが移動させる各単位3010は、調整値を、小さい数値(例えば、2)でのみ増大又は減少させる。それゆえ、画像上UIコントロールは、調整値を指定するための、より細かい粒度を有する、遙かに大きいスケールをユーザに提供する。   Providing a set of UI controls on an image has many benefits. For example, the on-image UI control provides a larger scale with finer granularity than the range slider to allow the user to specify the adjustment value within the range of adjustment values. FIG. 30 shows an example of such benefits through the GUI 300. As shown in FIG. 30, see FIG. 7 and FIG. 23 in which the sky UI control 354 for adjusting the sky color of the image 355 and the corresponding on-image UI control 2045 and on-image UI control 2050 are activated. As described above, the user can either manipulate the empty UI control 354 or use the on-image UI control 2045 and the on-image UI control 2050 to provide directional input to the image. The sky color can be adjusted. In this embodiment, the empty UI control 354 is implemented as a range slider so that the user can specify an adjustment value between 0 and 100 by moving the knob along the range slider 354. It becomes. Since the range slider 354 is limited in size, each unit 3005 in which the user moves the knob along the range slider 354 increases or decreases the adjustment value by a large amount (eg, 25). On the other hand, when the user uses the on-image UI control by providing directional input to the image, the user can move from the selected location to both ends of the image. Therefore, each unit 3010 that the user moves on the image increases or decreases the adjustment value only by a small number (eg, 2). Therefore, the on-image UI control provides the user with a much larger scale with finer granularity for specifying adjustment values.

B.画像上露出コントロール
上記のセクションの図20、21、22、23、及び図24は、画像上UIコントロールの幾つかの実施例を説明するものであった。それらの実施例では、アプリケーションは、ユーザが、画像内の場所を選択することを可能にし、その選択された場所に関連付けられているコンテンツのタイプに応じて、画像の色を調整するための種々の画像上UIコントロールのセットを提供する。このセクションは、これらの画像上UIコントロールの、幾つかの更なる実施例を提供する。具体的には、図31は、選択された場所に関連付けられているコンテンツのタイプに応じて、画像の露出設定を調整するための種々の画像上UIコントロールのセットを提供する操作を示す。具体的には、図31は、GUI300を通じて、種々の画像上UIコントロールのセットをアクティブ化する操作を、4つの異なるステージ3105、3110、3115、及びステージ3120で示す。これらのステージのそれぞれを、以下でより詳細に説明する。
B. On-Image Exposure Control FIGS. 20, 21, 22, 23, and 24 in the above section described several examples of on-image UI control. In those embodiments, the application allows the user to select a location within the image and various to adjust the color of the image depending on the type of content associated with the selected location. Provides a set of UI controls on the image. This section provides some further examples of UI controls on these images. Specifically, FIG. 31 illustrates operations for providing various sets of on-image UI controls for adjusting image exposure settings depending on the type of content associated with the selected location. Specifically, FIG. 31 illustrates operations for activating various sets of on-image UI controls through the GUI 300 at four different stages 3105, 3110, 3115, and stage 3120. Each of these stages is described in more detail below.

第1ステージ3105は、図20の第1ステージ2005と同様であるが、ただし、ユーザは、選択可能UI項目3125の強調表示によって示されるように、画像355の露出設定を調整するための選択可能UI項目3125を選択している。選択可能UI項目3125の選択は、選択可能UI項目3125を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目3125にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図31に示すように、露出調整UIコントロール3130〜3150のセットが、UIコントロール表示領域350内に表示される。種々の実施形態は、画像の色を調整するための種々のタイプのUIコントロールを提供する。この実施例では、露出調整UIコントロールは、スライディング軌道に沿ってスライド可能な複数の制御つまみ3130〜3150を含む、統合型スライダコントロールである。   The first stage 3105 is similar to the first stage 2005 of FIG. 20, except that the user can select to adjust the exposure setting of the image 355, as indicated by the highlighting of the selectable UI item 3125. The UI item 3125 is selected. Selection of the selectable UI item 3125 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on the device that has a touch or near-touch sensitive screen that displays the selectable UI item 3125. Or by placing the cursor on the selectable UI item 3125 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown in FIG. 31, a set of exposure adjustment UI controls 3130 to 3150 is displayed in the UI control display area 350. Various embodiments provide various types of UI controls for adjusting the color of the image. In this embodiment, the exposure adjustment UI control is an integrated slider control that includes a plurality of control knobs 3130-3150 that are slidable along a sliding path.

一部の実施形態では、統合型スライダコントロールをメディア編集アプリケーションで使用することにより、ユーザは、スライディング軌道に沿って幾つかの異なる制御つまみを移動させることによって、画像の幾つかの異なる特性(例えば、明度、コントラストなど)を修正することが可能となる。このマルチスライダ上の各つまみ(3130〜3150)は、画像に対して実行することが可能な、異なる調整操作に対応する。UIコントロール3130(つまみ3130)は、画像のシャドウを調整するためのものであり、UIコントロール3135及びUIコントロール3140(つまみ3135及びつまみ3140)は、画像のコントラストを調整するためのものであり、UIコントロール3145(つまみ3145)は、画像の明度を調整するためのものであり、UIコントロール3150(つまみ3150)は、画像のハイライトを調整するためのものである。ユーザは、これらのつまみのうちの1つを選択して、マルチスライダに沿った異なる位置に移動させることによって、画像に対する種々の色調整を開始することができる。この統合型スライダコントロールの様々な操作は、米国仮出願第61/607,554号で説明されている。   In some embodiments, using the integrated slider control in a media editing application allows the user to move several different control knobs along the sliding trajectory, thereby moving several different characteristics of the image (eg, , Brightness, contrast, etc.) can be corrected. Each knob (3130 to 3150) on the multi-slider corresponds to a different adjustment operation that can be performed on the image. The UI control 3130 (knob 3130) is for adjusting the shadow of the image, and the UI control 3135 and UI control 3140 (knob 3135 and the knob 3140) are for adjusting the contrast of the image. The control 3145 (knob 3145) is for adjusting the brightness of the image, and the UI control 3150 (knob 3150) is for adjusting the highlight of the image. The user can initiate various color adjustments to the image by selecting one of these knobs and moving it to different positions along the multi-slider. Various operations of this integrated slider control are described in US Provisional Application No. 61 / 607,554.

第2ステージ3110は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。図示のように、ユーザは、海を表示する、画像上の場所を選択している。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。上述のように、ユーザが画像上の場所を選択した後、一部の実施形態の画像編集アプリケーションは、その選択された場所に関連付けられている特定のコンテンツのタイプを判定するために、一連の分析を実行する。種々の実施形態は、種々の技術を使用して、選択された場所に関連付けられているコンテンツのタイプを判定する。一部の実施形態のアプリケーションは、最初に、種々のコンテンツのタイプに関連付けられている種々の色値の範囲を定義する。例えば、一部の実施形態のアプリケーションは、シャドウに関連付けられている色値の範囲、中間色調に関連付けられている色値の範囲、及びハイライトに関連付けられている色値の範囲を定義する。次いで、このアプリケーションは、画像内の選択された場所に対応する画素のセットの色値が、特定のコンテンツのタイプに関連付けられている色値の範囲内に収まるか否かを判定し、次いで、その特定のコンテンツのタイプに関連付けられている画像上UIコントロールのセットを表示する。   The second stage 3110 shows the GUI 300 after the user has selected a location on the image 355. As shown, the user has selected a location on the image to display the sea. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As described above, after the user selects a location on the image, some embodiments of the image editing application may use a series of steps to determine the type of specific content associated with the selected location. Perform analysis. Various embodiments use various techniques to determine the type of content associated with the selected location. The application of some embodiments initially defines a range of different color values associated with different types of content. For example, the application of some embodiments defines a range of color values associated with a shadow, a range of color values associated with a midtone, and a range of color values associated with a highlight. The application then determines whether the color value of the set of pixels corresponding to the selected location in the image falls within the color value range associated with the particular content type, and then Displays a set of on-image UI controls associated with that particular content type.

種々の実施形態は、画像上UIコントロールのセットを、種々の方式で実装する。例えば、一部の実施形態のアプリケーションは、画像上UIコントロールのセットを、方向依存性UIコントロールとして実装する。これらの実施形態の一部では、アプリケーションは、UIコントロールに関連付けられている色調整操作を開始するようにユーザを導くために、各UIコントロールに関する方向矢印を表示する。ユーザは、種々の方向入力を提供することによって、種々の色調整操作を開始する。この方向入力の方向に基づいて、アプリケーションは、画像に対して特定の色調整を実行する。   Various embodiments implement a set of on-image UI controls in various ways. For example, some embodiments of the application implement a set of on-image UI controls as direction-dependent UI controls. In some of these embodiments, the application displays a directional arrow for each UI control to guide the user to initiate a color adjustment operation associated with the UI control. The user initiates various color adjustment operations by providing various direction inputs. Based on the direction of this direction input, the application performs a specific color adjustment on the image.

第2ステージ3110では、ユーザは、暗色(すなわち、低輝度値)を有する、海を表示する画面上の場所を選択しているため、このアプリケーションは、選択された場所に対応する画素の色値が、シャドウに関連付けられていることを判定する。結果として、このアプリケーションは、画像内のシャドウを調整するための画像上UIコントロール3165及び画像上UIコントロール3170(垂直軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール3165及び画像上UIコントロール3170のセットは、シャドウUIコントロール3130に対応する。一部の実施形態では、このアプリケーションはまた、シャドウUIコントロール3130がアクティブ化されていることを示すために、シャドウUIコントロール3130を強調表示する。シャドウを調整するためのUIコントロールに加えて、一部の実施形態のアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないUIコントロールのセットも表示する。これらの実施形態では、コンテンツに依存しないUIコントロールのセットは、ユーザによって選択される場所とは無関係に、常に表示される。この実施例では、アプリケーションは、画像に関するコントラストを調整するためのコンテンツに依存しないUIコントロール3155及びUIコントロール3160(水平軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール3155及び画像上UIコントロール3160のセットは、コントラストUIコントロール3135及びコントラストUIコントロール3140に対応する。一部の実施形態では、このアプリケーションはまた、コントラストUIコントロール3135及びコントラストUIコントロール3140がアクティブ化されていることを示すために、コントラストUIコントロール3135及びコントラストUIコントロール3140を強調表示する。この図には示されないが、この第2ステージ3110でのユーザは、画像に対して方向入力を提供することによって、露出調整(すなわち、コントラスト調整又はシャドウ調整)が可能である。   In the second stage 3110, the user has selected a location on the screen displaying the sea that has a dark color (i.e., a low brightness value), so that the application uses the color value of the pixel corresponding to the selected location. Determines that it is associated with the shadow. As a result, the application displays a set of on-image UI controls 3165 and on-image UI controls 3170 (displayed as two direction arrows along the vertical axis) for adjusting shadows in the image. A set of the on-image UI control 3165 and the on-image UI control 3170 corresponds to the shadow UI control 3130. In some embodiments, the application also highlights the shadow UI control 3130 to indicate that the shadow UI control 3130 is activated. In addition to the UI controls for adjusting shadows, some embodiment applications also display a set of content-independent UI controls for adjusting the contrast for the image. In these embodiments, the content independent set of UI controls is always displayed regardless of the location selected by the user. In this example, the application displays a set of content-independent UI controls 3155 and UI controls 3160 (displayed as two directional arrows along the horizontal axis) for adjusting the contrast for the image. The set of the on-image UI control 3155 and the on-image UI control 3160 corresponds to the contrast UI control 3135 and the contrast UI control 3140. In some embodiments, the application also highlights the contrast UI control 3135 and the contrast UI control 3140 to indicate that the contrast UI control 3135 and the contrast UI control 3140 are activated. Although not shown in this figure, the user at this second stage 3110 can adjust the exposure (ie, contrast adjustment or shadow adjustment) by providing a directional input to the image.

第3ステージ3115は、ユーザが、画像355上の異なる場所を選択した後の、GUI300を示す。図示のように、ユーザは、明色(すなわち、高輝度値)を有する、青空を示す画像上の場所を選択している。このアプリケーションは、この新たに選択された場所に対応する画素の色値が、ハイライトに関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、画像のハイライトを調整するための画像上UIコントロール3175及び画像上UIコントロール3180(垂直軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール3175及び画像上UIコントロール3180のセットは、ハイライトUIコントロール3150に対応する。図示のように、このアプリケーションはまた、ハイライトUIコントロール3150がアクティブ化されていることを示すために、ハイライトUIコントロール3150を強調表示する。第2ステージ3110と同様に、ハイライトを調整するための画像上UIコントロールに加えて、このアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないUIコントロール3155及びUIコントロール3160のセットも表示する。このアプリケーションはまた、コントラストUIコントロール3135及びコントラストUIコントロール3140がアクティブ化されていることを示すために、コントラストUIコントロール3135及びコントラストUIコントロール3140を強調表示する。この図には示されないが、この第3ステージ3115でのユーザは、画像に対して方向入力を提供することによって、特定の色調整(すなわち、コントラスト調整又はハイライト調整)を開始することができる。   The third stage 3115 shows the GUI 300 after the user has selected a different location on the image 355. As shown, the user has selected a location on the image showing a blue sky that has a bright color (ie, a high brightness value). The application determines that the color value of the pixel corresponding to this newly selected location falls within the color value range defined for the highlight. As a result, the application displays a set of on-image UI controls 3175 and on-image UI controls 3180 (displayed as two directional arrows along the vertical axis) for adjusting the highlights of the image. A set of the on-image UI control 3175 and the on-image UI control 3180 corresponds to the highlight UI control 3150. As shown, the application also highlights the highlight UI control 3150 to indicate that the highlight UI control 3150 is activated. Similar to the second stage 3110, in addition to the on-image UI control to adjust the highlights, this application also has a content-independent UI control 3155 and UI control 3160 set to adjust the contrast for the image. indicate. The application also highlights the contrast UI control 3135 and the contrast UI control 3140 to indicate that the contrast UI control 3135 and the contrast UI control 3140 are activated. Although not shown in this figure, the user at this third stage 3115 can initiate a specific color adjustment (ie, contrast adjustment or highlight adjustment) by providing a directional input to the image. .

第4ステージ3120は、ユーザが、画像355上の異なる場所を選択した後の、GUI300を示す。図示のように、ユーザは、中間色調(すなわち、中輝度値)を有する、山を示す画像上の場所を選択している。アプリケーションは、この新たに選択された場所に対応する画素の色値が、中間色調に関して定義される色値の範囲内に収まることを判定する。結果として、このアプリケーションは、画像の明度を調整するための画像上UIコントロール3185及び画像上UIコントロール3190(垂直軸に沿った2つの方向の矢印として表示される)のセットを表示する。画像上UIコントロール3185及び画像上UIコントロール3190のセットは、明度UIコントロール3145に対応する。図示のように、このアプリケーションはまた、明度UIコントロール3145がアクティブ化されていることを示すために、明度UIコントロール3145を強調表示する。第2ステージ3110及び第3ステージ3115と同様に、明度を調整するための画像上UIコントロールに加えて、このアプリケーションはまた、画像に関するコントラストを調整するためのコンテンツに依存しないUIコントロール3155及びUIコントロール3160のセットも表示する。このアプリケーションはまた、コントラストUIコントロール3135及びコントラストUIコントロール3140がアクティブ化されていることを示すために、コントラストUIコントロール3135及びコントラストUIコントロール3140を強調表示する。この図には示されないが、この第4ステージ3120でのユーザは、画像に対して方向入力を提供することによって、特定の露出調整(すなわち、コントラスト調整又は明度調整)を選択することができる。   The fourth stage 3120 shows the GUI 300 after the user has selected a different location on the image 355. As shown, the user has selected a location on the image showing a mountain that has a midtone (ie, a medium luminance value). The application determines that the color value of the pixel corresponding to this newly selected location falls within the color value range defined for the intermediate tone. As a result, this application displays a set of on-image UI controls 3185 and on-image UI controls 3190 (displayed as two directional arrows along the vertical axis) for adjusting the brightness of the image. The set of the on-image UI control 3185 and the on-image UI control 3190 corresponds to the lightness UI control 3145. As shown, the application also highlights the brightness UI control 3145 to indicate that the brightness UI control 3145 has been activated. Similar to the second stage 3110 and the third stage 3115, in addition to the on-image UI control for adjusting the brightness, this application also provides a content independent UI control 3155 and UI control for adjusting the contrast for the image. A set of 3160 is also displayed. The application also highlights the contrast UI control 3135 and the contrast UI control 3140 to indicate that the contrast UI control 3135 and the contrast UI control 3140 are activated. Although not shown in this figure, the user at this fourth stage 3120 can select a particular exposure adjustment (ie, contrast adjustment or brightness adjustment) by providing a directional input to the image.

図31は、画像に対して種々の露出調整を実行するための、種々の画像上UIコントロールをアクティブ化する例示的操作を示す。図32、33、34、及び図35は、種々の画像上UIコントロールを操作することにより、画像に対して種々の露出調整を実行する実施例を示す。具体的には、図32は、画像に関するコントラストを調整するための画像上UIコントロールのセットを操作する例示的操作を、4つの異なるステージ3205、3210、3215、及びステージ3220で示す。   FIG. 31 illustrates an exemplary operation of activating various on-image UI controls to perform various exposure adjustments on the image. FIGS. 32, 33, 34, and 35 illustrate embodiments in which various exposure adjustments are performed on an image by manipulating various on-image UI controls. Specifically, FIG. 32 shows an exemplary operation for manipulating a set of on-image UI controls to adjust the contrast for the image at four different stages 3205, 3210, 3215, and stage 3220.

第1ステージ3205は、図31の第1ステージ3105と同一である。図示のように、ユーザは、画像355の露出設定を調整するための選択可能UI項目3125を選択している。第2ステージ3210は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、暗色を有する、海を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール3155〜3170のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像に関するコントラストを調整するためのコントラストUIコントロール3135及びコントラストUIコントロール3140に対応する、画像上UIコントロール3155及び画像上UIコントロール3160のセット、並びに、画像のシャドウを調整するためのシャドウUIコントロール3130に対応する、画像上UIコントロール3165及び画像上UIコントロール3170のセットを含む。第2ステージ3210はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140、並びにシャドウUIコントロール3130が強調表示されることにより、これらのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 3205 is the same as the first stage 3105 in FIG. As shown, the user has selected a selectable UI item 3125 for adjusting the exposure setting of the image 355. The second stage 3210 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown in the figure, the user has selected a place on the image 355 showing the sea, which has a dark color, by tapping the finger at the place. As a result of this selection, a set of on-image UI controls 3155-3170 are displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 3155 and an on-image UI control 3160 corresponding to a contrast UI control 3135 and a contrast UI control 3140 for adjusting contrast on the image, and an image shadow. It includes a set of on-image UI controls 3165 and on-image UI controls 3170 corresponding to the shadow UI controls 3130 for adjustment. The second stage 3210 also shows that the corresponding contrast UI control 3135 and contrast UI control 3140 and the shadow UI control 3130 are highlighted to indicate that these UI controls are activated.

第3ステージ3215は、ユーザが、画像355に対する方向入力を提供することによって、画像355のコントラストの調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印3225によって示されるように、ユーザの指を画像355の右にドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像355に関するコントラストを増大させるための画像上UIコントロール3155及び画像上UIコントロール3160と関連付けて、画像355に対するコントラスト調整を実行する。図示のように、画像355内の色のコントラストは、増大されている。画像355の、より暗い領域(例えば、山の領域及び海の領域)は、それらのより暗い領域の全域にわたる斜線によって示されるように、暗色化され、画像355の、より明るい領域(例えば、雲及び太陽の領域)は、それらのより明るい領域の輪郭を描く破線によって示されるように、明色化される。第3ステージ3215はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール3165及び画像上UIコントロール3170が、ディスプレイから除去されて、対応するシャドウUIコントロール3130が、もはや強調表示されないことも示す。第3ステージ3215はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140が、互いに離れる方向に移動されていることも示す。   The third stage 3215 shows the GUI 300 after the user has started adjusting the contrast of the image 355 by providing directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger to the right of image 355 as indicated by arrow 3225. The application associates this directional input with an on-image UI control 3155 and an on-image UI control 3160 to increase the contrast for the image 355 to perform contrast adjustment for the image 355. As shown, the color contrast in image 355 is increased. Darker areas (eg, mountain areas and sea areas) of image 355 are darkened and lighter areas (eg, clouds) of image 355, as indicated by the diagonal lines across those darker areas. And the sun region) are lightened, as indicated by the dashed lines that outline their brighter regions. The third stage 3215 also allows the deactivated on-image UI control 3165 and on-image UI control 3170 to be removed from the display after the application associates the direction input with one set of on-image UI controls. The corresponding shadow UI control 3130 also indicates that it is no longer highlighted. The third stage 3215 also indicates that the corresponding contrast UI control 3135 and contrast UI control 3140 have been moved away from each other.

更には、GUI300はまた、画像に対して露出調整が実行された場合、選択可能UI項目3215の上部に、バーを表示する。この選択可能UI項目3215の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対してコントラスト調整を実施した後の、第3ステージ3215で、選択可能UI項目3215の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 3215 when exposure adjustment is performed on the image. The top bar of this selectable UI item 3215 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 3215 in the third stage 3215 after the user has performed contrast adjustment on the image 355.

第4ステージ3220は、ユーザが、矢印3230によって示されるように、ユーザの指を更に右にドラッグすることによって、画像355のコントラストを更に増大させた後の、GUI300を示す。図示のように、このステージ3220での画像355の暗色領域内の色は、画像355の暗色領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ3215での画像の暗色領域内の色よりも、更に暗色化されて示される。同様に、このステージ3220での画像355の明色領域内の色は、画像355の明色領域の輪郭を描く、更に細かい破線によって示されるように、第3ステージ3215での画像の明色領域内の色よりも、更に明色化されて示される。第4ステージ3320はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140が、互いに更に離れる方向に移動されていることも示す。   The fourth stage 3220 shows the GUI 300 after the user has further increased the contrast of the image 355 by dragging the user's finger further to the right as indicated by the arrow 3230. As shown, the colors in the dark area of the image 355 at this stage 3220 are dark areas of the image at the third stage 3215, as indicated by the denser diagonal lines across the dark area of the image 355. It is shown darker than the color inside. Similarly, the colors in the light color region of the image 355 at this stage 3220 outline the light color region of the image 355, as indicated by the finer dashed lines, the light color region of the image at the third stage 3215. It is shown with a lighter color than the inside color. The fourth stage 3320 also indicates that the corresponding contrast UI control 3135 and contrast UI control 3140 have been moved further away from each other.

図32は、画像のコントラストを調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図33は、画像のシャドウを調整するための画像上UIコントロールのセットを操作する例示的操作を示す。具体的には、図33は、この露出調整操作を、4つの異なるステージ3305、3310、3315、及びステージ3320で示す。   FIG. 32 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust image contrast. FIG. 33 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust image shadows. Specifically, FIG. 33 illustrates this exposure adjustment operation with four different stages 3305, 3310, 3315, and stage 3320.

第1ステージ3305は、図31の第1ステージ3105と同一である。図示のように、ユーザは、画像355の露出設定を調整するための選択可能UI項目3125を選択している。第2ステージ3310は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、暗色を有する、海を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール3155〜3170のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像のコントラストを調整するためのコントラストUIコントロール3135及びコントラストUIコントロール3140に対応する、画像上UIコントロール3155及び画像上UIコントロール3160のセット、並びに、画像のシャドウを調整するためのシャドウUIコントロール3130に対応する、画像上UIコントロール3165及び画像上UIコントロール3170のセットを含む。第2ステージ3310はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140、並びにシャドウUIコントロール3130が強調表示されることにより、これらのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 3305 is the same as the first stage 3105 in FIG. As shown, the user has selected a selectable UI item 3125 for adjusting the exposure setting of the image 355. Second stage 3310 shows GUI 300 after the user has selected a location on image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown in the figure, the user has selected a place on the image 355 showing the sea, which has a dark color, by tapping the finger at the place. As a result of this selection, a set of on-image UI controls 3155-3170 are displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 3155 and on-image UI controls 3160 corresponding to a contrast UI control 3135 and a contrast UI control 3140 for adjusting the contrast of the image, and an image shadow. It includes a set of on-image UI controls 3165 and on-image UI controls 3170 corresponding to the shadow UI controls 3130 for adjustment. The second stage 3310 also shows that the corresponding contrast UI control 3135 and contrast UI control 3140 and the shadow UI control 3130 are highlighted to indicate that these UI controls are activated.

第3ステージ3315は、ユーザが、画像355に対する方向入力を提供することによって、画像355のシャドウの調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印3325によって示されるように、画像355の底部に向けて、ユーザの指を下向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内のシャドウを暗色化するための画像上UIコントロール3170と関連付けて、画像355に対するシャドウ調整を実行する。図示のように、画像355内の暗色領域(例えば、海を示す領域)は、画像355内の海を示す領域の全域にわたる斜線によって示されるように、暗色化されている。第3ステージ3315はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール3155及び画像上UIコントロール3160が、ディスプレイから除去されて、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140が、もはや強調表示されないことも示す。第3ステージ3315はまた、対応するシャドウUIコントロール3130が、左に移動されていることも示す。   The third stage 3315 shows the GUI 300 after the user has started adjusting the shadow of the image 355 by providing a directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides direction input by dragging the user's finger downwards toward the bottom of the image 355, as indicated by arrow 3325. The application associates this direction input with an on-image UI control 3170 to darken the shadows in the image and perform a shadow adjustment on the image 355. As shown in the figure, a dark color region (for example, a region indicating the sea) in the image 355 is darkened as indicated by a diagonal line over the entire region indicating the sea in the image 355. The third stage 3315 also allows the deactivated on-image UI control 3155 and on-image UI control 3160 to be removed from the display after the application associates the direction input with one set of on-image UI controls. The corresponding contrast UI control 3135 and contrast UI control 3140 also indicate that they are no longer highlighted. The third stage 3315 also indicates that the corresponding shadow UI control 3130 has been moved to the left.

更には、GUI300はまた、画像に対して露出調整が実行された場合、選択可能UI項目3125の上部に、バーを表示する。この選択可能UI項目3125の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対してシャドウ調整を実施した後の、第3ステージ3315で、選択可能UI項目3125の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 3125 when exposure adjustment is performed on the image. The bar above this selectable UI item 3125 remains visible to indicate which type of adjustment the user has performed on the image. As shown, a bar appears above the selectable UI item 3125 in the third stage 3315 after the user performs shadow adjustment on the image 355.

第4ステージ3320は、ユーザが、矢印3330によって示されるように、ユーザの指を更に下向きにドラッグすることによって、画像355のシャドウを更に調整した後の、GUI300を示す。図示のように、このステージ3320での画像355の暗色領域(例えば、海及び山を示す領域)は、画像355内の暗色領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ3315での画像内の暗色領域内よりも、更に彩度が増大されて示される。第4ステージ3320はまた、対応するシャドウUIコントロール3130が、更に左に移動されていることも示す。   Fourth stage 3320 shows GUI 300 after the user has further adjusted the shadow of image 355 by dragging the user's finger further downward as indicated by arrow 3330. As shown, the dark area of the image 355 at this stage 3320 (eg, the area showing the sea and mountains) is third, as indicated by the denser diagonal lines across the dark area in the image 355. The saturation is shown to be further increased than in the dark area in the image at stage 3315. The fourth stage 3320 also indicates that the corresponding shadow UI control 3130 has been moved further to the left.

図33は、画像のシャドウを調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図34は、画像のハイライトを調整するための画像上UIコントロールのセットを操作する例示的操作を示す。具体的には、図34は、この露出調整操作を、4つの異なるステージ3405、3410、3415、及びステージ3420で示す。   FIG. 33 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust image shadows. FIG. 34 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust image highlights. Specifically, FIG. 34 illustrates this exposure adjustment operation with four different stages 3405, 3410, 3415 and a stage 3420.

第1ステージ3405は、図31の第1ステージ3105と同一である。図示のように、ユーザは、画像355の露出設定を調整するための選択可能UI項目3125を選択している。第2ステージ3410は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、明色を有する、空を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール3155、3160、3175、及び画像上UIコントロール3180のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像のコントラストを調整するためのコントラストUIコントロール3135及びコントラストUIコントロール3140に対応する、画像上UIコントロール3155及び画像上UIコントロール3160のセット、並びに、画像のハイライトを調整するためのハイライトUIコントロール3150に対応する、画像上UIコントロール3175及び画像上UIコントロール3180のセットを含む。第2ステージ3410はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140、並びにハイライトUIコントロール3150が強調表示されることにより、これらのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 3405 is the same as the first stage 3105 in FIG. As shown, the user has selected a selectable UI item 3125 for adjusting the exposure setting of the image 355. The second stage 3410 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown, the user has selected a location on the image 355 that has a light color and shows the sky by tapping the finger at that location. As a result of this selection, a set of on-image UI controls 3155, 3160, 3175 and on-image UI controls 3180 are displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 3155 and on-image UI controls 3160 corresponding to a contrast UI control 3135 and a contrast UI control 3140 for adjusting the contrast of the image, and an image highlight. A set of on-image UI controls 3175 and on-image UI controls 3180 corresponding to a highlight UI control 3150 for adjusting the image. The second stage 3410 also shows that the corresponding contrast UI control 3135 and contrast UI control 3140 and highlight UI control 3150 are highlighted to indicate that these UI controls are activated.

第3ステージ3415は、ユーザが、画像355に対する方向入力を提供することによって、画像355のハイライトの調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印3425によって示されるように、画像355の底部に向けて、ユーザの指を下向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像内のハイライトを暗色化するための画像上UIコントロール3180と関連付けて、画像355に対するハイライト調整を実行する。図示のように、画像355内の明色領域(例えば、太陽及び空を示す領域)は、画像355内の太陽及び空を示す領域の全域にわたる斜線によって示されるように、暗色化されている。第3ステージ3415はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール3155及び画像上UIコントロール3160が、ディスプレイから除去されて、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140が、もはや強調表示されないことも示す。第3ステージ3415はまた、対応するハイライトUIコントロール3150が、左に移動されていることも示す。   The third stage 3415 shows the GUI 300 after the user has started adjusting the highlights of the image 355 by providing directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger downwards toward the bottom of the image 355, as indicated by arrow 3425. The application associates this direction input with the on-image UI control 3180 for darkening the highlights in the image and performs highlight adjustment on the image 355. As shown, the light areas in the image 355 (eg, areas that show the sun and sky) are darkened, as indicated by the diagonal lines across the areas that show the sun and sky in the image 355. The third stage 3415 also removes the deactivated on-image UI control 3155 and the on-image UI control 3160 from the display after the application associates the direction input with one set of on-image UI controls. The corresponding contrast UI control 3135 and contrast UI control 3140 also indicate that they are no longer highlighted. The third stage 3415 also indicates that the corresponding highlight UI control 3150 has been moved to the left.

更には、GUI300はまた、画像に対して露出調整が実行された場合、選択可能UI項目3125の上部に、バーを表示する。この選択可能UI項目3125の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対してハイライト調整を実施した後の、第3ステージ3415で、選択可能UI項目3125の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 3125 when exposure adjustment is performed on the image. The bar above this selectable UI item 3125 remains visible to indicate which type of adjustment the user has performed on the image. As illustrated, a bar appears above the selectable UI item 3125 in the third stage 3415 after the user performs highlight adjustment on the image 355.

第4ステージ3420は、ユーザが、矢印3430によって示されるように、ユーザの指を更に下向きにドラッグすることによって、画像355のハイライトを更に調整した後の、GUI300を示す。図示のように、このステージ3420での画像355内の明色領域(例えば、太陽及び空を示す領域)は、画像355内の明色領域の全域にわたる、より高密度の斜線によって示されるように、第3ステージ3415での画像内の明色領域内よりも、更に暗色化されて示される。第4ステージ3420はまた、対応するハイライトUIコントロール3150が、更に左に移動されていることも示す。   The fourth stage 3420 shows the GUI 300 after the user has further adjusted the highlights of the image 355 by dragging the user's finger further downward as indicated by the arrow 3430. As shown, the light areas in the image 355 at this stage 3420 (eg, areas showing the sun and sky) as shown by the denser diagonal lines across the light areas in the image 355. In the third stage 3415, the image is further darkened than in the light color area in the image. The fourth stage 3420 also indicates that the corresponding highlight UI control 3150 has been moved further to the left.

図34は、画像のハイライトを調整するための画像上UIコントロールのセットを操作する例示的操作を示す。図35は、画像の全体的な明度を調整するための画像上UIコントロールのセットを操作する例示的操作を示す。具体的には、図35は、この露出調整操作を、4つの異なるステージ3505、3510、3515、及びステージ3520で示す。   FIG. 34 illustrates an exemplary operation for manipulating a set of on-image UI controls to adjust image highlights. FIG. 35 shows an exemplary operation for manipulating a set of on-image UI controls to adjust the overall brightness of the image. Specifically, FIG. 35 shows this exposure adjustment operation with four different stages 3505, 3510, 3515 and a stage 3520.

第1ステージ3505は、図31の第1ステージ3105と同一である。図示のように、ユーザは、画像355の露出設定を調整するための選択可能UI項目3125を選択している。第2ステージ3510は、ユーザが、画像355上の場所を選択した後の、GUI300を示す。画像355上の場所の選択は、画像を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、画像の場所にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、中間色調を有する、山を示す画像355上の場所を、その場所で指をタップすることによって選択している。この選択の結果として、画像上UIコントロール3155、3160、3185、及び画像上UIコントロール3190のセットが、画像上の選択された場所の周囲に表示される。この画像上UIコントロールのセットは、画像のコントラストを調整するためのコントラストUIコントロール3135及びコントラストUIコントロール3140に対応する、画像上UIコントロール3155及び画像上UIコントロール3160のセット、並びに、画像の全体的な明度を調整するための明度UIコントロール3145に対応する、画像上UIコントロール3185及び画像上UIコントロール3190のセットを含む。第2ステージ3510はまた、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140、並びに明度UIコントロール3145が強調表示されることにより、これらのUIコントロールがアクティブ化されていることを示す点も示す。   The first stage 3505 is the same as the first stage 3105 in FIG. As shown, the user has selected a selectable UI item 3125 for adjusting the exposure setting of the image 355. The second stage 3510 shows the GUI 300 after the user has selected a location on the image 355. Selection of a location on the image 355 can be performed by performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device with a touch or near touch sensitive screen that displays the image. Alternatively, it can be performed by placing the cursor at the location of the image and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown, the user has selected a location on the image 355 showing a mountain having an intermediate color tone by tapping the finger at that location. As a result of this selection, a set of on-image UI controls 3155, 3160, 3185, and on-image UI controls 3190 are displayed around the selected location on the image. This set of on-image UI controls includes a set of on-image UI controls 3155 and on-image UI controls 3160 corresponding to a contrast UI control 3135 and a contrast UI control 3140 for adjusting the contrast of the image, and the overall image. A set of on-image UI control 3185 and on-image UI control 3190 corresponding to the brightness UI control 3145 for adjusting the brightness. The second stage 3510 also shows that the corresponding contrast UI control 3135 and contrast UI control 3140 and the brightness UI control 3145 are highlighted to indicate that these UI controls are activated.

第3ステージ3515は、ユーザが、画像355に対する方向入力を提供することによって、画像355の全体的な明度の調整を開始した後の、GUI300を示す。この方向入力は、特定の方向に、タッチ若しくはニアタッチ感応スクリーンを有する装置上でユーザの指をドラッグすることによって、又はカーソルをドラッグすることによって、提供することができる。この実施例では、ユーザは、矢印3525によって示されるように、画像355の頂部に向けて、ユーザの指を上向きにドラッグすることによって、方向入力を提供する。アプリケーションは、この方向入力を、画像の明度を増大させる(すなわち、画像の画素の輝度値を増大させる)ための画像上UIコントロール3185と関連付けて、画像355に対する明度調整を実行する。図示のように、画像355の全体が、画像355内の対象物の輪郭を描く破線によって示されるように、明色化されている。第3ステージ3515はまた、アプリケーションが、方向入力を、画像上UIコントロールの1つのセットに関連付けた後には、非アクティブ化された画像上UIコントロール3155及び画像上UIコントロール3160が、ディスプレイから除去されて、対応するコントラストUIコントロール3135及びコントラストUIコントロール3140が、もはや強調表示されないことも示す。第3ステージ3515はまた、対応する明度UIコントロール3145が、左に移動されていることも示す。   The third stage 3515 shows the GUI 300 after the user has started adjusting the overall brightness of the image 355 by providing directional input for the image 355. This directional input can be provided by dragging the user's finger in a specific direction on a device having a touch or near touch sensitive screen, or by dragging a cursor. In this example, the user provides directional input by dragging the user's finger upwards toward the top of the image 355 as indicated by arrow 3525. The application associates this directional input with an on-image UI control 3185 to increase the brightness of the image (ie, increase the brightness value of the pixels of the image) and perform a brightness adjustment on the image 355. As shown, the entire image 355 is lightened as indicated by the dashed line that outlines the object in the image 355. The third stage 3515 also allows the deactivated on-image UI control 3155 and on-image UI control 3160 to be removed from the display after the application associates the directional input with one set of on-image UI controls. The corresponding contrast UI control 3135 and contrast UI control 3140 also indicate that they are no longer highlighted. The third stage 3515 also indicates that the corresponding brightness UI control 3145 has been moved to the left.

更には、GUI300はまた、画像に対して露出調整が実行された場合、選択可能UI項目3125の上部に、バーを表示する。この選択可能UI項目3125の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して明度調整を実施した後の、第3ステージ3415で、選択可能UI項目3125の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 3125 when exposure adjustment is performed on the image. The bar above this selectable UI item 3125 remains visible to indicate which type of adjustment the user has performed on the image. As illustrated, a bar appears above the selectable UI item 3125 in the third stage 3415 after the user performs brightness adjustment on the image 355.

第4ステージ3520は、ユーザが、矢印3530によって示されるように、ユーザの指を更に上向きにドラッグすることによって、画像355の明度を更に調整した後の、GUI300を示す。図示のように、このステージ3520での画像355は、画像355の対象物の輪郭を描く、更に細かい破線によって示されるように、第3ステージ3515での画像よりも、更に明色化されて示される。第4ステージ3520はまた、対応する明度UIコントロール3145が、更に左に移動されていることも示す。   The fourth stage 3520 shows the GUI 300 after the user has further adjusted the brightness of the image 355 by dragging the user's finger further upward, as indicated by the arrow 3530. As shown, the image 355 at this stage 3520 is shown to be lighter than the image at the third stage 3515, as shown by the finer dashed lines that outline the object of the image 355. It is. The fourth stage 3520 also indicates that the corresponding brightness UI control 3145 has been moved further to the left.

図36は、画像上の場所のユーザ選択に基づいて、画像内のコントラスト、明度、シャドウ、及びハイライトを調整するための画像上UIコントロールのセットを提供するためのプロセス3600を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。最初の3つの操作3605、3610、及び3615は、図19のプロセス1900の、最初の3つの操作1905、1910、及び1915と同一である。このプロセスは、画像上の場所の選択を(3605で)受け取ることによって開始する。次いで、このプロセスは、画像上の選択された場所に対応する、画素のセットの色値を(3610で)取得する。一部の実施形態では、この画素のセットは、選択された場所の近くに位置する画素である。   FIG. 36 conceptually illustrates a process 3600 for providing a set of on-image UI controls for adjusting contrast, brightness, shadows, and highlights in an image based on a user selection of a location on the image. Show. In some embodiments, this process is performed by an image editing application. The first three operations 3605, 3610, and 3615 are identical to the first three operations 1905, 1910, and 1915 of the process 1900 of FIG. The process begins by receiving (at 3605) a location selection on the image. The process then obtains (at 3610) the color value of the set of pixels corresponding to the selected location on the image. In some embodiments, this set of pixels is a pixel located near the selected location.

次に、このプロセスは、取得された色値に対する一連の分析を(3615で)実行する。一部の実施形態では、各分析は、取得された色値に基づいて、選択された場所が特定のコンテンツのタイプに関連付けられているか否かを判定する。例えば、この一連の分析は、選択された場所が暗色に関連付けられているか否かを判定するための分析、選択された場所が明色に関連付けられているか否かを判定するための分析、及び、選択された場所が中間色調に関連付けられているか否かを判定するための分析を含む。   The process then performs (at 3615) a series of analyzes on the acquired color values. In some embodiments, each analysis determines whether the selected location is associated with a particular content type based on the obtained color values. For example, the series of analyzes includes an analysis for determining whether a selected location is associated with a dark color, an analysis for determining whether a selected location is associated with a light color, and , Including an analysis to determine whether the selected location is associated with a midtone.

次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が暗色に関連付けられているか否かを(3620で)判定する。一部の実施形態では、このプロセスは、取得された色値が低い輝度(すなわち、明度)レベルを有する場合に、その選択された場所が暗色に関連付けられていることを判定する。選択された場所が暗色に関連付けられている場合には、このプロセスは、画像内のシャドウを調整するためのUIコントロールのセットを(3625で)提供する。一部の実施形態では、このシャドウを調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   The process then determines (at 3620) whether the selected location is associated with a dark color based on the results from the series of analyses. In some embodiments, the process determines that the selected location is associated with a dark color if the acquired color value has a low luminance (ie, lightness) level. If the selected location is associated with a dark color, this process provides (at 3625) a set of UI controls for adjusting shadows in the image. In some embodiments, a set of UI controls for adjusting this shadow is displayed around a selected location on the image.

次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が明色に関連付けられているか否かを(3630で)判定する。一部の実施形態では、このプロセスは、取得された色値が高い輝度(すなわち、明度)レベルを有する場合に、その選択された場所が明色に関連付けられていることを判定する。選択された場所が明色に関連付けられている場合には、このプロセスは、画像内のハイライトを調整するためのUIコントロールのセットを(3635で)提供する。一部の実施形態では、このハイライトを調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   The process then determines (at 3630) whether the selected location is associated with a light color based on the results from the series of analyses. In some embodiments, the process determines that the selected location is associated with a light color if the acquired color value has a high luminance (ie, lightness) level. If the selected location is associated with a light color, this process provides (at 3635) a set of UI controls for adjusting highlights in the image. In some embodiments, a set of UI controls for adjusting this highlight is displayed around a selected location on the image.

次いで、このプロセスは、一連の分析からの結果に基づいて、選択された場所が中間色調に関連付けられているか否かを(3640で)判定する。一部の実施形態では、このプロセスは、取得された色値が、平均又は中央値の輝度(すなわち、明度)レベルを有する場合に、その選択された場所が中間色調に関連付けられていることを判定する。選択された場所が中間色調に関連付けられている場合には、このプロセスは、画像内の明度を調整するためのUIコントロールのセットを(3645で)提供する。一部の実施形態では、この明度を調整するためのUIコントロールのセットは、画像上の選択された場所の周囲に表示される。   The process then determines (at 3640) whether the selected location is associated with a midtone based on the results from the series of analyses. In some embodiments, the process determines that the selected location is associated with a midtone when the acquired color value has an average or median luminance (ie, brightness) level. judge. If the selected location is associated with a midtone, this process provides (at 3645) a set of UI controls for adjusting the brightness in the image. In some embodiments, a set of UI controls for adjusting this brightness is displayed around a selected location on the image.

次に、このプロセスは、画像全体に関するコントラストを調整するためのUIコントロールのセットを(3650で)提供する。一部の実施形態では、このプロセスは、ユーザによって選択される画像上の場所とは無関係に、この画像全体に関するコントラストを調整するためのUIコントロールのセットを、常に提供する。   The process then provides (at 3650) a set of UI controls for adjusting the contrast for the entire image. In some embodiments, this process always provides a set of UI controls for adjusting the contrast for this entire image, regardless of the location on the image selected by the user.

次いで、このプロセスは、方向入力が受け取られるか否かを(3655で)判定する。方向入力が受け取られる場合には、このプロセスは、その方向入力に基づいて、画像に対する露出調整操作を(3660で)実行する。次いで、このプロセスは、画像上UIコントロールが選択解除されるか否かを(3665で)判定する。一部の実施形態では、画像上UIコントロールのセットは、タッチ又はニアタッチ感応スクリーンを有する装置から、指を引き上げること(又は、ボタンを解除すること)によって、選択解除することができる。   The process then determines (at 3655) whether a directional input is received. If a directional input is received, the process performs an exposure adjustment operation on the image (at 3660) based on the directional input. The process then determines (at 3665) whether the on-image UI control is deselected. In some embodiments, the set of on-image UI controls can be deselected by lifting a finger (or releasing a button) from a device having a touch or near touch sensitive screen.

受け取られる方向入力が存在しないことを、このプロセスが(3655で)判定する場合には、このプロセスはまた、操作3665に進み、画像上UIコントロールが選択解除されるか否かを判定する。画像上UIコントロールのセットが選択解除されない場合には、このプロセスは、方向入力が受け取られるか否かを判定するために、3655に戻る。その一方で、画像上UIコントロールのセットが選択解除される場合には、このプロセスは終了する。   If the process determines (at 3655) that there are no directional inputs to be received, the process also proceeds to operation 3665 to determine whether the on-image UI control is deselected. If the set of on-image UI controls is not deselected, the process returns to 3655 to determine if a directional input is received. On the other hand, if the set of on-image UI controls is deselected, the process ends.

III.色バランスコントロール
コンテンツのタイプに関連付けられている画像の一部分のみを調整するためのUIコントロールを提供することに加えて、一部の実施形態の画像編集アプリケーションはまた、画像の色バランスを調整するためのUIコントロールのセットも提供する。非常に多くの場合、種々の照明条件下で画像を取り込むことは、画像の品質に悪影響を及ぼす可能性がある。一般的なアーチファクトは、画像が取り込まれている照明条件によって作り出される、画像内の全体的な望ましくない色かぶりである。例えば、白熱灯の下で取り込まれる画像は、多くの場合、黄色味がかった色を有するため、中立的な照明条件下では白色に見えるはずの対象物は、その画像内では黄色に見える。それゆえ、色バランス調整(別名、ホワイトバランス調整)は、画像内の対象物が自然で心地よく見えるように、画像の全体的な色を補正するための操作である。
III. Color Balance Control In addition to providing UI controls for adjusting only the portion of the image associated with the type of content, the image editing application of some embodiments also adjusts the color balance of the image. It also provides a set of UI controls. Very often, capturing an image under various lighting conditions can adversely affect the quality of the image. A common artifact is the overall undesirable color cast in an image created by the lighting conditions in which the image is captured. For example, an image captured under an incandescent lamp often has a yellowish color, so an object that should appear white under neutral lighting conditions appears yellow in the image. Therefore, color balance adjustment (also known as white balance adjustment) is an operation for correcting the overall color of an image so that an object in the image looks natural and comfortable.

一部の実施形態では、このアプリケーションは、画面上の場所をユーザが選択することを可能にする、色バランスUIコントロールを提供する。次いで、このアプリケーションは、選択された場所に対応する画素の色値を取得して、その画素の色値を、設定された基準色(例えば、灰色、理想的な肌色など)に変更する色調整を決定する。この色調整に基づいて、アプリケーションは、画像内の各色を異なる色にマッピングする、色空間変換を生成する。次いで、このアプリケーションは、画像内の全ての画素に、その色空間変換を適用する。   In some embodiments, the application provides a color balance UI control that allows the user to select a location on the screen. The application then obtains the color value of the pixel corresponding to the selected location and changes the color value of the pixel to a set reference color (eg, gray, ideal skin color, etc.) To decide. Based on this color adjustment, the application generates a color space transformation that maps each color in the image to a different color. The application then applies the color space transformation to every pixel in the image.

種々の実施形態は、この色バランス調整操作のための種々の基準色を提供する。例えば、一部の実施形態のアプリケーションは、基準色として灰色を設定する。これらの実施形態では、ユーザは、実物では灰色として現われる対象物を表示する、画像内の場所を選択することによって、色バランスUIを通じて画像の色バランスを調整する。   Various embodiments provide various reference colors for this color balance adjustment operation. For example, the application of some embodiments sets gray as the reference color. In these embodiments, the user adjusts the color balance of the image through the color balance UI by selecting a location in the image that displays objects that appear to be gray in nature.

図37は、色バランスUIツールを通じて、画像の色バランスを調整する実施例を、4つの異なるステージ3705、3710、3715、及びステージ3720で示す。   FIG. 37 shows an example of adjusting the color balance of an image through a color balance UI tool, with four different stages 3705, 3710, 3715, and stage 3720.

第1ステージ3705は、図3の第2ステージ310と同様であるが、ただし、この第1ステージ3705でのユーザは、種々の色バランスツールのセットの表示をトリガするために、色バランス選択可能UI項目3725を選択したところである。図示のように、ユーザは、画像表示領域345内に表示するための画像355を選択している。一部の実施形態では、色バランスツールをトリガするための選択可能UI項目3725は、ユーザが(メニューバー340内の選択可能UI項目342を選択することによって)色調整ビューを選択した場合に、UIコントロール表示領域350内部に表示される。選択可能UI項目3725の選択は、選択可能UI項目3725を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目3725にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The first stage 3705 is similar to the second stage 310 of FIG. 3, except that the user at the first stage 3705 can select a color balance to trigger the display of a set of various color balance tools. The UI item 3725 has been selected. As shown, the user has selected an image 355 to be displayed in the image display area 345. In some embodiments, the selectable UI item 3725 for triggering the color balance tool is selected when the user selects the color adjustment view (by selecting the selectable UI item 342 in the menu bar 340). It is displayed inside the UI control display area 350. Selection of selectable UI item 3725 involves performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device having a touch or near-touch sensitive screen that displays selectable UI item 3725 Or by placing the cursor on selectable UI item 3725 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.).

図示のように、ユーザが選択可能UI項目3725を選択した後に、色バランスツール表示領域3730が、UIコントロール表示領域350の上部に出現する。色バランスツール表示領域3730は、種々の色バランスツールを開始するための、幾つかの選択可能UI項目を含む。例えば、色バランスツール表示領域3730は、「本来のホワイトバランス」ツールを開始するための、選択可能UI項目3735を含む。この「本来のホワイトバランス」ツールは、画像を取り込んだ装置のホワイトバランス設定を使用して、その画像のホワイトバランスを調整する。色バランスツール表示領域3730はまた、種々の事前設定ホワイトバランスツールを開始するための、選択可能UI項目のセットも含む。事前設定ホワイトバランスツールは、昼光、曇り、フラッシュ、日陰、白熱、及び蛍光照明条件などの、予め定義された種々の照明条件に基づいて、画像のホワイトバランスを調整する。更には、色バランスツール表示領域3730はまた、カスタムホワイトバランスツールを開始するための選択可能UI項目3745、及びカスタム肌色バランスツールを開始するための選択可能UI項目3740などの、2つのカスタム色バランスツールを開始するための選択可能UI項目も含む。   As illustrated, after the user selects a selectable UI item 3725, a color balance tool display area 3730 appears at the top of the UI control display area 350. The color balance tool display area 3730 includes a number of selectable UI items for initiating various color balance tools. For example, the color balance tool display area 3730 includes a selectable UI item 3735 for starting the “original white balance” tool. This “original white balance” tool uses the white balance settings of the device that captured the image to adjust the white balance of the image. The color balance tool display area 3730 also includes a set of selectable UI items for initiating various preset white balance tools. The preset white balance tool adjusts the white balance of the image based on various predefined lighting conditions, such as daylight, cloudy, flash, shade, incandescent, and fluorescent lighting conditions. Further, the color balance tool display area 3730 also includes two custom color balances, such as a selectable UI item 3745 for initiating a custom white balance tool and a selectable UI item 3740 for initiating a custom skin color balance tool. Also includes a selectable UI item to start the tool.

カスタムホワイトバランスツールは、ユーザが、中立的な照明条件下では白色又は灰色であると想定される、画像上の場所を選択することを可能にする。次いで、画像編集アプリケーションは、その色値が白色を表すようにその場所の色値を調整するためのアルゴリズム又は数学的方程式を定義する。次いで、このアプリケーションは、画像内の画素の残部に、同じアルゴリズム又は数学的方程式を適用する。   The custom white balance tool allows the user to select a location on the image that is assumed to be white or gray under neutral lighting conditions. The image editing application then defines an algorithm or mathematical equation for adjusting the color value of the location so that the color value represents white. The application then applies the same algorithm or mathematical equation to the rest of the pixels in the image.

第2ステージ3710は、ユーザが、カスタムホワイトバランスツールを開始するための選択可能UI項目3745を選択した後の、GUI300を示す。選択可能UI項目3745の選択は、選択可能UI項目3745を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目3745にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、選択可能UI項目3745の強調表示によって示されるように、選択可能UI項目3745を選択したところである。結果として、カスタムホワイトバランスUIコントロール3755が、画像上に表示される。   The second stage 3710 shows the GUI 300 after the user has selected a selectable UI item 3745 to start the custom white balance tool. Selection of selectable UI item 3745 involves performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device having a touch or near-touch sensitive screen that displays selectable UI item 3745 Or by placing the cursor on selectable UI item 3745 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown, the user has selected the selectable UI item 3745 as indicated by the highlighting of the selectable UI item 3745. As a result, a custom white balance UI control 3755 is displayed on the image.

カスタムホワイトバランスUIコントロール3755が、画像上に出現すると、このアプリケーションは、画像355の色値を調整することによって、ホワイトバランス操作を実行する。具体的には、このアプリケーションは、カスタムホワイトバランスUIコントロール3755を通じて選択された場所に対応するか、又はその場所の近傍の、画素のセットの色値のうちの1つ以上をサンプル抽出する。次いで、このアプリケーションは、その色値を最も近い灰色に変換するための、(パラメータのセットを入力として取得する)アルゴリズム又は数学的方程式を考案し、次いで、画像355内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。一部の実施形態では、このアプリケーションは、画像に色バランス調整を適用する前に、画像355の色値をYCC色空間(例えば、YIQ色空間)に変換する。   When custom white balance UI control 3755 appears on the image, the application performs a white balance operation by adjusting the color value of image 355. Specifically, the application samples one or more of the color values of the set of pixels corresponding to or near the location selected through the custom white balance UI control 3755. The application then devises an algorithm or mathematical equation (taking a set of parameters as input) to convert the color value to the nearest gray, and then for every pixel in the image 355, The same algorithm or mathematical equation is applied. In some embodiments, the application converts the color values of the image 355 to a YCC color space (eg, YIQ color space) before applying color balance adjustments to the image.

種々の実施形態は、カスタムホワイトバランスUIコントロールを、種々の方式で実装する。この実施例では、カスタムホワイトバランスUIコントロールは、円として出現し、その円の中央に十字線を有する。ユーザは、この十字線が、中立的な照明条件下では白色又は灰色であると想定される、画像355内の対象物の上に存在するように、カスタムホワイトバランスUIコントロール3755を画像355の領域内に配置することによって、画像355上の場所を選択することができる。   Various embodiments implement custom white balance UI control in various ways. In this example, the custom white balance UI control appears as a circle and has a crosshair in the center of the circle. The user moves the custom white balance UI control 3755 to a region of the image 355 so that this crosshair exists over an object in the image 355 that is assumed to be white or gray under neutral lighting conditions. By placing in, a location on the image 355 can be selected.

一部の実施形態では、このアプリケーションは、カスタムホワイトバランスUIコントロール3755の外側の画像の部分に関する、編集済みの(すなわち、カスタムホワイトバランスUIコントロール3755の現在の場所に基づいて、画像がホワイトバランス調整される場合の)バージョンを表示することによって、このホワイトバランス調整のプレビューを提供する。これらの実施形態では、カスタムホワイトバランスUIコントロール3755の内側にある画像の部分は、未編集のまま維持されることにより、ユーザは、編集済みバージョンと未編集バージョンとの差異を視認することが可能となる。この第2ステージ3710で示すように、カスタムホワイトバランスUIコントロール3755の外側にある画像355の部分のみにわたる斜線によって示されるように、カスタムホワイトバランスUIコントロール3755の外側にある画像355の部分は、調整されているが、その一方で、カスタムホワイトバランスUIコントロール3755の内側にある画像355の部分は、影響を受けないまま維持される。他の実施形態では、カスタムホワイトバランスUIコントロール3755の内側にある画像の部分のみが編集され、カスタムホワイトバランスUIコントロール3755の外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。   In some embodiments, the application may edit the white balance adjustment for the portion of the image outside the custom white balance UI control 3755 (ie, based on the current location of the custom white balance UI control 3755). Provide a preview of this white balance adjustment by displaying the version (if any). In these embodiments, the portion of the image inside the custom white balance UI control 3755 is left unedited so that the user can see the difference between the edited version and the unedited version. It becomes. As shown by this second stage 3710, the portion of the image 355 outside the custom white balance UI control 3755 is adjusted as indicated by the diagonal lines over only the portion of the image 355 outside the custom white balance UI control 3755. On the other hand, the portion of the image 355 that is inside the custom white balance UI control 3755 remains unaffected. In other embodiments, only the portion of the image inside the custom white balance UI control 3755 is edited, and the portion of the image outside the custom white balance UI control 3755 is left unedited. Furthermore, in other embodiments, the entire image is edited.

このプレビュー機能性に加えて、一部の実施形態のアプリケーションはまた、カスタムホワイトバランスUIコントロール3755の内側の画像の部分をズームインすることにより、画像内の白色又は灰色の場所をユーザが正確に選択することを支援する。図示のように、カスタムホワイトバランスUIコントロール3755の内側にある画像355の部分は、その領域が、第1ステージ3705で見えるものよりも遙かに大きい鳥を示すように、ズームインされている。   In addition to this preview functionality, some embodiment applications also allow the user to accurately select a white or gray location in the image by zooming in on the portion of the image inside the custom white balance UI control 3755. To help. As shown, the portion of the image 355 inside the custom white balance UI control 3755 has been zoomed in so that the area shows a bird that is much larger than what is visible on the first stage 3705.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像355に対して色バランス調整を実施した後の、第2ステージ320で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the second stage 320 after the user performs color balance adjustment on the image 355.

上述のように、一部の実施形態のアプリケーションは、ユーザが、カスタムホワイトバランスUIコントロール3755を、画像上の種々の場所に移動させることを可能にする。第3ステージ3715は、ユーザがカスタムホワイトバランスUIコントロール3755を選択しているが、カスタムホワイトバランスUIコントロール3755の移動を開始していないことを示す、過渡的ステージである。第4ステージ3720は、ユーザが、カスタムホワイトバランスUIコントロール3755を、画像上の異なる場所に移動させた後の、GUI300を示す。一部の実施形態では、ユーザは、画像上の異なる場所に、ユーザの指をドラッグするか、又はカーソルをドラッグすることによって、カスタムホワイトバランスUIコントロール3755を移動させることができる。図示のように、ユーザは、矢印によって示されるように、雲を示す画像355の領域に、カスタムホワイトバランスUIコントロール3755を移動させている。この新たな場所へのカスタムホワイトバランスUIコントロール3755の移動の結果として、アプリケーションは、画像の色値を再調整する。一部の実施形態では、アプリケーションは、このカスタムホワイトバランスUIコントロール3755を通じて選択された場所に対応する、別の画素のサンプルを採取する。次いで、このアプリケーションは、その色値を最も近い灰色に変換するための、(パラメータのセットを入力として取得する)アルゴリズム又は数学的方程式を考案し、次いで、画像355内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。図示のように、カスタムホワイトバランスUIコントロール3755の外側の画像の部分は、画像355のその部分の全域にわたる異なる斜線のセットによって示されるように、再調整されて示される。   As described above, some embodiments of the application allow the user to move the custom white balance UI control 3755 to various locations on the image. The third stage 3715 is a transitional stage indicating that the user has selected the custom white balance UI control 3755 but has not started moving the custom white balance UI control 3755. The fourth stage 3720 shows the GUI 300 after the user has moved the custom white balance UI control 3755 to a different location on the image. In some embodiments, the user can move the custom white balance UI control 3755 by dragging the user's finger or dragging the cursor to a different location on the image. As shown, the user has moved the custom white balance UI control 3755 to the area of the image 355 showing the cloud, as indicated by the arrow. As a result of the movement of the custom white balance UI control 3755 to this new location, the application will readjust the color values of the image. In some embodiments, the application samples another pixel corresponding to the location selected through this custom white balance UI control 3755. The application then devises an algorithm or mathematical equation (taking a set of parameters as input) to convert the color value to the nearest gray, and then for every pixel in the image 355, The same algorithm or mathematical equation is applied. As shown, the portion of the image outside of the custom white balance UI control 3755 is shown readjusted as indicated by the different set of diagonal lines across that portion of the image 355.

図37に示される上記の実施例では、このアプリケーションは、色バランスコントロール3755が画像上に出現した直後に、画像に対する色バランス操作を実行し、ユーザが色バランスUIコントロール3755を移動させるたびに、画像を再調整する。一部の他の実施形態では、このアプリケーションが実行される装置の処理能力を節約するために、このアプリケーションは、ユーザから更なる入力(例えば、「色バランス実行」選択可能UI項目の選択、画像上での追加タップなど)を受け取る際にのみ、画像に対する色バランス操作を実行する。このように、画像は、ユーザが色バランスUIコントロール3755を移動させるたびに調整されることがなく、ユーザが場所を確定して、更なる入力を提供する場合にのみ、調整される。   In the above example shown in FIG. 37, the application performs a color balance operation on the image immediately after the color balance control 3755 appears on the image, and whenever the user moves the color balance UI control 3755, Readjust the image. In some other embodiments, in order to save the processing power of the device on which the application is executed, the application may receive further input from the user (e.g. selection of “Run Color Balance” selectable UI item, image Perform color balance operations on images only when receiving additional taps, etc.). In this way, the image is not adjusted each time the user moves the color balance UI control 3755, but only when the user confirms the location and provides further input.

図38は、一部の実施形態の画像編集アプリケーションによって実行される、画像に関する例示的なホワイトバランス操作を示す。図示のように、色空間3800は、画像の色値が定義される色空間を表す。この特定の色空間は、3つの軸、すなわち、赤及び緑の色値の範囲を表す軸3820、青及び黄の色値の範囲を表す軸3830、及び種々の濃淡の灰色の範囲(すなわち、輝度値の範囲)を表す垂直軸3810に沿って定義され、底面の場所3840は黒色を表し、上面の場所3850は白色を表す。色が明るくなるほど、その色は、この色空間の円柱3800の底面から遠くに出現する。   FIG. 38 illustrates an example white balance operation for an image performed by the image editing application of some embodiments. As shown, color space 3800 represents a color space in which the color values of the image are defined. This particular color space has three axes: an axis 3820 representing a range of red and green color values, an axis 3830 representing a range of blue and yellow color values, and various shades of gray (i.e. Defined along the vertical axis 3810 representing the range of luminance values, where the bottom surface location 3840 represents black and the top surface location 3850 represents white. The brighter the color, the farther the color appears from the bottom surface of the column 3800 in this color space.

領域3860は、画像の全ての色値を表す。領域3860は、色空間3800内の1つの小さい領域内に位置するように示されるが、画像の色値は、色空間3800の、多くの異なる領域を占める場合がある。ユーザが、ホワイトバランスUIコントロールを使用して、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値を取得する。この図では、色3880は、ホワイトバランスUIコントロールによって特定された場所に対応する、画素の色を表す。次いで、このアプリケーションは、この色空間内部で、選択された色値に最も近い灰色(例えば、3890)の位置を特定し、選択された色値3880を灰色値3890に修正する色調整を決定する。次いで、このアプリケーションは、決定された色調整に基づいて、色空間変換を生成する。一部の実施形態では、この色空間変換は、決定された色調整に基づいて生成される、M×M行列(例えば、3×3行列)である。一部の実施形態では、この色空間変換は、色空間3800内の各色を、歪められた色空間内の別の色にマッピングする。図38の色空間3805は、この色空間変換によって色空間3800が変換された後の、色空間を表す。図示のように、色空間3800内の色3880は、色空間3805内の色3885にマッピングされ、色空間3800内の別の色3870は、色空間3805内の色3875にマッピングされる。一部の実施形態では、このアプリケーションは、この色空間変換を画像内の各画素に適用することによって、選択された場所に基づいて、画像のホワイトバランスを調整する。   Region 3860 represents all the color values of the image. Although region 3860 is shown as being located within one small region within color space 3800, the color values of the image may occupy many different regions of color space 3800. When the user selects a location on the image using the white balance UI control, the application obtains the color value of the pixel corresponding to the selected location. In this figure, color 3880 represents the color of the pixel corresponding to the location specified by the white balance UI control. The application then locates the gray (eg, 3890) closest to the selected color value within this color space and determines a color adjustment that modifies the selected color value 3880 to a gray value 3890. . The application then generates a color space transformation based on the determined color adjustment. In some embodiments, this color space transformation is an M × M matrix (eg, 3 × 3 matrix) that is generated based on the determined color adjustment. In some embodiments, this color space conversion maps each color in color space 3800 to another color in the distorted color space. A color space 3805 in FIG. 38 represents a color space after the color space 3800 is converted by this color space conversion. As shown, color 3880 in color space 3800 is mapped to color 385 in color space 3805 and another color 3870 in color space 3800 is mapped to color 3875 in color space 3805. In some embodiments, the application adjusts the white balance of the image based on the selected location by applying this color space transformation to each pixel in the image.

図37は、カスタムホワイトバランスUIコントロールを使用して、カスタムホワイトバランス操作を実行する、実施例を示す。カスタムホワイトバランス操作に加えて、一部の実施形態のアプリケーションはまた、カスタム肌色バランス操作も提供する。このカスタム肌色バランス操作は、カスタムホワイトバランス操作と同様であるが、ただし、中立の光の下で白い色であると想定される、画像上の場所を選択する代わりに、ユーザは、人の顔を表示する画像上の場所を選択する。これらの実施形態では、アプリケーションは、理想的な顔の色のセットを定義する。例えば、一部の実施形態のアプリケーションは、昼光の条件下での理想的な顔の色、及び人工光の条件での理想的な顔の色を定義することができる。ユーザが、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値をサンプル抽出し、その画素の色値を調整して理想的な顔の色にするための調整を定義する。次いで、このアプリケーションは、画像内の全ての画素に、その同じ調整を適用する。   FIG. 37 illustrates an example of performing a custom white balance operation using a custom white balance UI control. In addition to custom white balance operations, some embodiments of the application also provide custom skin color balance operations. This custom skin balance operation is similar to the custom white balance operation, except that instead of selecting a location on the image that is assumed to be white under neutral light, the user can Select a location on the image to display. In these embodiments, the application defines an ideal facial color set. For example, an application of some embodiments may define an ideal facial color under daylight conditions and an ideal facial color under artificial light conditions. When the user selects a location on the image, this application samples the color value of the pixel corresponding to the selected location and adjusts the color value of that pixel to the ideal facial color. Define adjustments. The application then applies that same adjustment to every pixel in the image.

図39は、カスタム肌色バランス操作を実行する実施例を、4つの異なるステージ3905、3910、3915、及びステージ3920で示す。   FIG. 39 shows an example of performing a custom flesh color balance operation with four different stages 3905, 3910, 3915, and stage 3920. FIG.

第1ステージ3905は、図37の第1ステージ3705と同様であるが、ただし、ユーザは、編集するための別の画像を選択している。図示のように、ユーザは、画像表示領域345内に表示するための画像3955を選択している。画像3955は、前景に立っている人物3930、及び背景に立っている別の人物3935の写真である。画像3955はまた、画像の右側に、山及び海も示す。図37の第1ステージ3705と同様に、ユーザは、選択可能UI項目3725を選択することにより、ホワイトバランスツール表示領域3730を開いている。   The first stage 3905 is similar to the first stage 3705 of FIG. 37 except that the user has selected another image for editing. As shown, the user has selected an image 3955 to be displayed in the image display area 345. Image 3955 is a photograph of a person 3930 standing in the foreground and another person 3935 standing in the background. Image 3955 also shows mountains and seas on the right side of the image. Similar to the first stage 3705 of FIG. 37, the user opens the white balance tool display area 3730 by selecting the selectable UI item 3725.

第2ステージ3910は、ユーザが、カスタム肌色バランスツールを開始するための選択可能UI項目3740を選択した後の、GUI300を示す。選択可能UI項目3740の選択は、選択可能UI項目3740を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、選択可能UI項目3740にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。図示のように、ユーザは、選択可能UI項目3740の強調表示によって示されるように、選択可能UI項目3740を選択したところである。結果として、カスタム肌色バランスUIコントロール3925が、画像上に表示される。   The second stage 3910 shows the GUI 300 after the user has selected a selectable UI item 3740 to start the custom skin color balance tool. Selection of selectable UI item 3740 includes performing a gesture (eg, placing a finger, pointing, or tapping a finger) at a location on a device having a touch or near-touch sensitive screen that displays selectable UI item 3740 Or by placing the cursor on selectable UI item 3740 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.). As shown, the user has selected selectable UI item 3740 as indicated by the highlighting of selectable UI item 3740. As a result, the custom skin color balance UI control 3925 is displayed on the image.

カスタム肌色バランスUIコントロール3925が、画像上に出現すると、このアプリケーションは、画像3955の色値を調整することによって、肌色バランス操作を実行する。具体的には、このアプリケーションは、カスタム肌色バランスUIコントロール3925を通じて選択された場所に対応するか、又はその場所の近傍の、画素のセットの色値のうちの1つ以上をサンプル抽出する。次いで、このアプリケーションは、その色値を予め定義された理想的な顔の色に変換するための、(パラメータのセットを入力として取得する)アルゴリズム又は数学的方程式を考案し、次いで、画像3955内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。   When the custom skin color balance UI control 3925 appears on the image, the application performs a skin color balance operation by adjusting the color value of the image 3955. Specifically, the application samples one or more of the color values of the set of pixels corresponding to or near the location selected through the custom skin color balance UI control 3925. The application then devises an algorithm or mathematical equation (taking a set of parameters as input) to convert that color value into a predefined ideal facial color, and then in image 3955 The same algorithm or mathematical equation is applied to all the pixels.

種々の実施形態は、カスタム肌色バランスUIコントロールを、種々の方式で実装する。この実施例では、カスタム肌色バランスUIコントロール3925は、円として出現し、その円の中央に十字線を有する。ユーザは、この十字線が画像3955内の人の顔の上に存在するように、カスタム肌色バランスUIコントロール3925を画像3955の領域内に配置する(又は移動させる)ことによって、画像3955上の場所を選択することができる。   Various embodiments implement custom skin color balance UI control in various ways. In this embodiment, the custom skin color balance UI control 3925 appears as a circle and has a crosshair in the center of the circle. The user places a location on the image 3955 by placing (or moving) the custom skin color balance UI control 3925 within the region of the image 3955 so that the crosshairs are on the person's face in the image 3955. Can be selected.

一部の実施形態では、このアプリケーションは、顔検出アルゴリズムを使用して、画像内の人の顔を検出し、その画像内に検出される第1の人の顔の上に、カスタム肌色バランスUIコントロール3925を配置する。この第2ステージ3910で示すように、カスタム肌色バランスUIコントロール3925は、背景に立っている人の顔の上に出現する。   In some embodiments, the application uses a face detection algorithm to detect a person's face in the image and places a custom skin color balance UI on the first person's face detected in the image. A control 3925 is arranged. As shown in the second stage 3910, the custom skin color balance UI control 3925 appears on the face of a person standing in the background.

カスタムホワイトバランスUIコントロールと同様に、一部の実施形態のアプリケーションは、カスタム肌色バランスUIコントロール3925の外側の画像の部分に関する、その画像の編集済みの(すなわち、カスタム肌色バランスUIコントロール3925の現在の場所に基づいて、画像が肌色バランス調整される場合の)バージョンを表示することによって、この肌色バランス調整のプレビューを提供する。これらの実施形態では、カスタム肌色バランスUIコントロール3925の内側にある画像の部分は、未編集のまま維持されることにより、ユーザは、編集済みバージョンと未編集バージョンとの差異を視認することが可能となる。この第2ステージ3910で示すように、カスタム肌色バランスUIコントロール3925の外側にある画像3955の部分のみにわたる斜線によって示されるように、カスタム肌色バランスUIコントロール3925の外側にある画像3955の部分は、調整されているが、その一方で、カスタム肌色バランスUIコントロール3925の内側にある画像3955の部分は、影響を受けないまま維持される。他の実施形態では、カスタム肌色バランスUIコントロール3925の内側にある画像の部分のみが編集され、カスタム肌色バランスUIコントロール3925の外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。   Similar to the custom white balance UI control, some embodiments of the application may have edited the image for that portion of the image outside of the custom skin color balance UI control 3925 (ie, the current skin of the custom skin balance UI control 3925). Provide a preview of this skin color balance adjustment by displaying the version (if the image is skin tone balanced) based on location. In these embodiments, the portion of the image inside the custom skin color balance UI control 3925 is kept unedited so that the user can see the difference between the edited version and the unedited version. It becomes. As shown in this second stage 3910, the portion of the image 3955 that is outside the custom skin color balance UI control 3925 is adjusted as indicated by the diagonal lines that span only the portion of the image 3955 that is outside the custom skin color balance UI control 3925. On the other hand, the portion of the image 3955 that is inside the custom skin color balance UI control 3925 remains unaffected. In other embodiments, only the portion of the image inside the custom skin color balance UI control 3925 is edited, and the portion of the image outside the custom skin color balance UI control 3925 remains unedited. Furthermore, in other embodiments, the entire image is edited.

このプレビュー機能性に加えて、一部の実施形態のアプリケーションはまた、カスタム肌色バランスUIコントロール3925の内側の画像の部分をズームインすることにより、人の顔を表示する画像内の場所を、ユーザが正確に選択することを支援する。図示のように、カスタム肌色バランスUIコントロール3925の内側にある画像355の部分は、その領域が、背景に立っている人の顔のより多くの詳細を示すように、ズームインされている。   In addition to this preview functionality, the application of some embodiments also allows the user to zoom in on the portion of the image inside the custom skin balance UI control 3925 so that the user can see where in the image the person's face is displayed. Help you make the right choice. As shown, the portion of the image 355 inside the custom flesh color balance UI control 3925 has been zoomed in so that the area shows more details of the face of the person standing in the background.

更には、GUI300はまた、画像に対して色調整が実行された場合、選択可能UI項目342の上部に、バーを表示する。この選択可能UI項目342の上部のバーは、ユーザが画像に対していずれのタイプの調整を実行したかを示すように、可視の状態のまま維持される。図示のように、ユーザが画像3955に対してカスタム肌色バランス操作を実施した後の、第2ステージ320で、選択可能UI項目342の上部に、バーが出現している。   Furthermore, the GUI 300 also displays a bar at the top of the selectable UI item 342 when color adjustment is performed on the image. The top bar of this selectable UI item 342 remains visible to indicate which type of adjustment the user has made to the image. As illustrated, a bar appears above the selectable UI item 342 in the second stage 320 after the user performs a custom skin color balance operation on the image 3955.

上述のように、一部の実施形態のアプリケーションは、ユーザが、カスタム肌色バランスUIコントロール3925を、画像上の種々の場所に移動させることを可能にする。顔検出アルゴリズムの助けにより、このアプリケーションは、画像内の人の顔の位置を特定することが可能である。しかしながら、画像が幾つかの顔を含む場合、ユーザは、アプリケーションによって選択された人物の顔に基づいて肌色バランス調整を行うことを、望まない可能性があり、むしろ、ユーザは、画像内の別の人物の顔に基づいて肌色バランス調整を行うことを望む可能性がある。第2ステージ3910は、アプリケーションが、背景の人物の顔(アプリケーションが、顔検出アルゴリズムを使用して検出した第1の顔)の上に、カスタム肌色バランスUIコントロール3925を自動的に配置することを示す。しかしながら、背景の人物ではなく、前景の人物が、この写真内での実際の対象点である。それゆえ、移動可能なカスタム肌色バランスUIコントロール3925は、対象となる顔の正しい場所を、ユーザが指定することを可能にする。   As described above, the application of some embodiments allows the user to move the custom skin color balance UI control 3925 to various locations on the image. With the help of a face detection algorithm, this application is able to locate a person's face in the image. However, if the image contains several faces, the user may not want to make a skin color balance adjustment based on the person's face selected by the application; rather, the user may not want to There is a possibility that skin color balance adjustment is desired based on the face of the person. The second stage 3910 allows the application to automatically place a custom skin color balance UI control 3925 on the background human face (the first face that the application has detected using the face detection algorithm). Show. However, the foreground person, not the background person, is the actual target point in the picture. Therefore, the movable custom skin color balance UI control 3925 allows the user to specify the correct location of the target face.

第3ステージ3915は、ユーザがカスタム肌色バランスUIコントロール3925を選択しているが、カスタム肌色バランスUIコントロール3925の移動を開始していないことを示す、過渡的ステージである。第4ステージ3920は、ユーザが、カスタム肌色バランスUIコントロール3925を、画像上の異なる場所に移動させた後の、GUI300を示す。一部の実施形態では、ユーザは、画像上の異なる場所に、ユーザの指をドラッグするか、又はカーソルをドラッグすることによって、カスタム肌色バランスUIコントロール3925を移動させることができる。図示のように、ユーザは、前景の人物の顔を表示する画像3955の領域に、カスタム肌色バランスUIコントロール3925を移動させている。この新たな場所へのカスタム肌色バランスUIコントロール3925の移動の結果として、アプリケーションは、画像の色値を再調整する。一部の実施形態では、アプリケーションは、このカスタム肌色バランスUIコントロール3925を通じて選択された場所に対応する、別の画素のサンプルを採取する。次いで、このアプリケーションは、その色値を予め定義された理想的な顔の色に変換するための、(パラメータのセットを入力として取得する)アルゴリズム又は数学的方程式を考案し、次いで、画像3955内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。図示のように、カスタム肌色バランスUIコントロール3925の外側の画像の部分は、画像3955のその部分の全域にわたる異なる斜線のセットによって示されるように、再調整されて示される。   The third stage 3915 is a transitional stage indicating that the user has selected the custom skin color balance UI control 3925 but has not started moving the custom skin color balance UI control 3925. The fourth stage 3920 shows the GUI 300 after the user has moved the custom skin color balance UI control 3925 to a different location on the image. In some embodiments, the user can move the custom skin color balance UI control 3925 by dragging the user's finger or dragging the cursor to a different location on the image. As shown, the user has moved the custom skin color balance UI control 3925 to the area of the image 3955 displaying the face of the foreground person. As a result of the movement of the custom skin color balance UI control 3925 to this new location, the application readjusts the color values of the image. In some embodiments, the application samples another pixel corresponding to the location selected through this custom skin balance UI control 3925. The application then devises an algorithm or mathematical equation (taking a set of parameters as input) to convert that color value into a predefined ideal facial color, and then in image 3955 The same algorithm or mathematical equation is applied to all the pixels. As shown, the portion of the image outside of the custom skin color balance UI control 3925 is shown readjusted as indicated by a different set of diagonal lines across that portion of the image 3955.

図39に示される上記の実施例では、このアプリケーションは、色バランスコントロール3925が画像上に出現した直後に、画像に対する色バランス操作を実行し、ユーザが色バランスUIコントロール3925を移動させるたびに、画像を再調整する。一部の他の実施形態では、このアプリケーションが実行される装置の処理能力を節約するために、このアプリケーションは、ユーザから更なる入力(例えば、「色バランス実行」選択可能UI項目の選択、画像上での追加タップなど)を受け取る際にのみ、画像に対する色バランス操作を実行する。このように、画像は、ユーザが色バランスUIコントロール3925を移動させるたびに調整されることがなく、ユーザが場所を確定して、更なる入力を提供する場合にのみ、調整される。   In the above example shown in FIG. 39, the application performs a color balance operation on the image immediately after the color balance control 3925 appears on the image, and whenever the user moves the color balance UI control 3925, Readjust the image. In some other embodiments, in order to save the processing power of the device on which the application is executed, the application may receive further input from the user (e.g. selection of “Run Color Balance” selectable UI item, image Perform color balance operations on images only when receiving additional taps, etc.). In this way, the image is not adjusted each time the user moves the color balance UI control 3925, but only when the user determines the location and provides further input.

図40は、一部の実施形態の画像編集アプリケーションによって実行される、画像に関する例示的な肌色バランス操作を示す。一部の実施形態では、このアプリケーションは、肌色バランス操作を実行する前に、最初に、色値が定義される色空間(例えば、RGB色空間)からYCC色空間(例えば、YIQ色空間)に、画像の色値を変換する。RGB色空間からYIQ色空間への変換は、最初に、RGB色空間内の色値に対して約1/4のgammaを適用し、次いで、3×3行列を適用して、その色値をYIG色空間に変換することによって、実行することができる。図示のように、色空間4000は、画像の色値が変換されるYCC色空間を表す。この特定の色空間は、3つの軸、すなわち、赤及び緑の色値の範囲を表す軸4020、青及び黄の色値の範囲を表す軸4030、及び種々の濃淡の灰色の範囲(すなわち、輝度値の範囲)を表す垂直軸4010に沿って定義され、底面の場所4040は黒色を表し、上面の場所4050は白色を表す。色が明るくなるほど、その色は、この色空間の円柱4000の底面から遠くに出現する。   FIG. 40 illustrates an exemplary skin color balance operation for an image performed by the image editing application of some embodiments. In some embodiments, the application first changes from a color space (eg, RGB color space) in which color values are defined to a YCC color space (eg, YIQ color space) before performing a skin color balance operation. , Convert the color value of the image. The conversion from the RGB color space to the YIQ color space first applies about 1/4 gamma to the color values in the RGB color space, and then applies a 3 × 3 matrix to convert the color values. This can be done by converting to the YIG color space. As illustrated, the color space 4000 represents a YCC color space in which the color values of the image are converted. This particular color space has three axes: an axis 4020 representing a range of red and green color values, an axis 4030 representing a range of blue and yellow color values, and various shades of gray ranges (ie, Brightness value range) is defined along the vertical axis 4010, where the bottom surface location 4040 represents black and the top surface location 4050 represents white. The brighter the color, the farther it appears from the bottom of the cylinder 4000 in this color space.

領域4060は、画像の全ての色値を表す。領域4060は、色空間4000内の1つの小さい領域内に位置するように示されるが、一部の他の画像の色値は、色空間4000の、多くの異なる領域を占める場合がある。ユーザが、肌色バランスUIコントロールを使用して、画像上の場所を選択すると、このアプリケーションは、選択された場所に対応する画素の色値を取得する。この図では、色4080は、ホワイトバランスUIコントロールによって特定された場所に対応する、画素の色を表す。   Region 4060 represents all the color values of the image. Although region 4060 is shown as being located within one small region within color space 4000, the color values of some other images may occupy many different regions of color space 4000. When the user selects a location on the image using the skin color balance UI control, the application obtains the color value of the pixel corresponding to the selected location. In this figure, color 4080 represents the color of the pixel corresponding to the location specified by the white balance UI control.

一部の実施形態では、このアプリケーションは、2つの異なる理想的な肌色を定義し、一方は、昼光の条件下で理想的な肌色であり、他方は、人工光の条件下で理想的な肌色である。一部の実施形態のアプリケーションは、画像が昼光の下で取り込まれていたか、又は人工光の下で取り込まれていたかを検出するために、画像に対して分析を実行し、この操作に関して、対応する理想的な肌色を選択する。   In some embodiments, this application defines two different ideal skin colors, one is ideal skin color under daylight conditions and the other is ideal under artificial light conditions. It is skin tone. The application of some embodiments performs an analysis on the image to detect whether the image was captured under daylight or artificial light, and for this operation, Select the corresponding ideal skin color.

このアプリケーションは、YCC色空間4000内部で、理想的な肌色4090を特定する。次いで、このアプリケーションは、理想的な肌色値4090と取得された色値4080との差異に基づいて、色空間変換を決定する。一部の実施形態では、この色空間変換は、色空間4000内の各色を、歪められた色空間内の別の色にマッピングする。この色空間変換は、全ての角度から白/黒の軸4010に向けて、本質的に色空間を圧縮する方式で、色値を調整する。換言すれば、このアプリケーションは、より高い彩度を有する色値(すなわち、白/黒の軸4010から、より遠く離れた色値)に対して、より大きい調整を実行し、より低い彩度を有する色値(すなわち、白/黒の軸4010に、より近接する色値)に対して、より小さい調整を実行する。一部の実施形態では、このアプリケーションは、白/黒の軸4010に沿って位置する色値(すなわち、種々の濃淡の灰色)を調整しない。   This application identifies an ideal skin color 4090 within the YCC color space 4000. The application then determines a color space conversion based on the difference between the ideal skin color value 4090 and the acquired color value 4080. In some embodiments, this color space conversion maps each color in color space 4000 to another color in the distorted color space. This color space conversion adjusts color values in a manner that essentially compresses the color space from all angles towards the white / black axis 4010. In other words, this application performs larger adjustments for color values with higher saturation (ie, color values farther away from the white / black axis 4010) and lower saturation. Make smaller adjustments to the color values you have (ie, color values that are closer to the white / black axis 4010). In some embodiments, the application does not adjust color values located along the white / black axis 4010 (ie, various shades of gray).

図40の色空間4005は、この色空間変換によって色空間4000が変換された後の、色空間を表す。図示のように、色空間4000内の色4080は、色空間4005内の色4085にマッピングされ、色空間4000内の色4070は、色空間4005内の色4075にマッピングされ、色空間4000内の別の色4062は、色空間4005内の色4065にマッピングされる。図示のように、色4062は、色空間4000内の色4070よりも、垂直軸4010から遠く離れている。それゆえ、色4062は、色4070よりも大きい距離(すなわち、より大きい色調整)で引き寄せられる。一部の実施形態では、このアプリケーションは、この色空間変換を画像内の各画素に適用することによって、選択された場所に基づいて、画像の肌色バランスを調整する。   A color space 4005 in FIG. 40 represents a color space after the color space 4000 is converted by this color space conversion. As shown, color 4080 in color space 4000 is mapped to color 4085 in color space 4005, color 4070 in color space 4000 is mapped to color 4075 in color space 4005, and color space 4000 is in color space 4000. Another color 4062 is mapped to color 4065 in color space 4005. As shown, color 4062 is farther from vertical axis 4010 than color 4070 in color space 4000. Therefore, color 4062 is drawn at a greater distance (ie, greater color adjustment) than color 4070. In some embodiments, the application adjusts the flesh color balance of the image based on the selected location by applying this color space transformation to each pixel in the image.

カスタム肌色バランスコントロール3925は、多くの利益を提供する。それらの利益のうちの1つは、ユーザが、肌色バランス操作の対象とするための、画像内の肌色の領域を(特に、画像内に2人以上の人物が存在する場合に)指定することにより、その選択された肌色が、理想的な肌色に調整されることを可能にする能力である。カスタム肌色バランスコントロール3925の別の利益は、図3を参照して上述された肌の色調UIコントロール356、並びに図20を参照して上述された画像上UIコントロール2025及び画像上UIコントロール2030に関連する。   Custom skin tone balance control 3925 offers many benefits. One of those benefits is that the user specifies a skin color region in the image (especially when there are two or more people in the image) that are intended for skin color balance operations. The ability to allow the selected skin color to be adjusted to the ideal skin color. Another benefit of the custom skin color balance control 3925 is related to the skin tone UI control 356 described above with reference to FIG. 3 and the on-image UI control 2025 and on-image UI control 2030 described above with reference to FIG. To do.

図6及び図20を参照して上述されたように、肌の色調UIコントロール356並びに画像上UIコントロール2025及び画像上UIコントロール2030は、定義された肌の色調に基づいて画像の色温度を調整することによって、肌の色調を改善する。一部の実施形態では、このアプリケーションは、肌の色調を、色空間内部の色値の範囲とするように定義する。上述のように、その色値の範囲は、人の平均の肌の色調を対象とするように、広範に定義される。しかしながら、画像が取り込まれた種々の条件(例えば、照明条件、色かぶりなど)により、画像内の対象となる人物の顔の色は、アプリケーションによって肌の色調として定義された色値の範囲内に、収まらない場合がある。対象となる人物とは、ユーザが、画像内の対象として考える人物である。その場合には、このアプリケーションは、幾つかの他の対象物(例えば、対象となる人物以外の人々の顔)の色に基づいて、画像の色値を調整することができる。カスタム肌色バランスUIコントロール3925は、画像内の対象となる人物の顔をユーザが指定することを可能にすることにより、ユーザが、肌の色調UIコントロール356あるいは画像上UIコントロール2025及び画像上UIコントロール2030を操作する場合、(1)対象となる人物の顔の色が、バランス調整され(すなわち、理想的な顔の色になるように調整され)、(2)画像の色温度が、対象となる人物の顔の色に基づいて調整される。具体的には、ユーザが、画像に対して肌色バランス操作を実行した後には、肌の色調として予め定義された色値の範囲を使用する代わりに、このアプリケーションは、画像上の全ての後続の肌の色調調整に関する肌の色調として、その理想的な肌色を使用する。   As described above with reference to FIGS. 6 and 20, the skin tone UI control 356, the image UI control 2025, and the image UI control 2030 adjust the color temperature of the image based on the defined skin tone. By improving the skin tone. In some embodiments, the application defines the skin tone to be a range of color values within the color space. As described above, the range of the color value is broadly defined so as to target the average skin tone of a person. However, due to various conditions in which the image is captured (for example, lighting conditions, color cast, etc.), the face color of the target person in the image is within the range of color values defined as the skin tone by the application. , May not fit. A target person is a person that a user considers as a target in an image. In that case, the application can adjust the color value of the image based on the color of some other object (eg, the faces of people other than the subject person). The custom skin color balance UI control 3925 allows the user to designate the face of the person to be targeted in the image, so that the user can specify the skin tone UI control 356 or the on-image UI control 2025 and the on-image UI control. When operating 2030, (1) the face color of the target person is adjusted in balance (ie, adjusted to be the ideal face color), and (2) the color temperature of the image is Is adjusted based on the face color of the person. Specifically, after the user performs a skin color balance operation on the image, instead of using a predefined color value range as the skin tone, the application The ideal skin color is used as the skin tone relating to the skin tone adjustment.

図41は、肌の色調UIコントロール356を使用して、画像内の全ての顔ではなく、一部のみの顔の色を調整する実施例を示す。具体的には、図41は、この肌の色調調整操作を、4つの異なるステージ4105、4110、4115、及びステージ4120で示す。   FIG. 41 illustrates an embodiment in which the skin tone UI control 356 is used to adjust the color of only a portion of the face rather than all of the faces in the image. Specifically, FIG. 41 illustrates this skin tone adjustment operation with four different stages 4105, 4110, 4115 and a stage 4120.

第1ステージ4105は、図39の第1ステージ3905と同一である。図示のように、ユーザは、画像表示領域345内に表示するための画像3955を選択している。上述のように、画像3955は、前景に立っている人物3930、及び背景に立っている別の人物3935の写真である。この実施例では、前景に立っている人物3930が、対象となる人物である。画像3955が取り込まれた条件(例えば、照明条件、色かぶりなど)により、2人の人物の顔の色は、極めて異なるように見える。具体的には、人物3935の顔色は、アプリケーションによって肌の色調として定義された色値の範囲内に収まるが、人物3930の顔色は、アプリケーションによって肌の色調として定義された色値の範囲から外れる。画像3955はまた、画像の右側に、山及び海も示す。   The first stage 4105 is the same as the first stage 3905 of FIG. As shown, the user has selected an image 3955 to be displayed in the image display area 345. As described above, the image 3955 is a photograph of a person 3930 standing in the foreground and another person 3935 standing in the background. In this embodiment, a person 3930 standing in the foreground is a target person. The colors of the faces of the two people appear to be very different depending on the conditions (for example, lighting conditions, color cast, etc.) in which the image 3955 is captured. Specifically, the face color of the person 3935 falls within the range of color values defined by the application as skin tone, but the face color of the person 3930 falls outside the range of color values defined by the application as skin tone. . Image 3955 also shows mountains and seas on the right side of the image.

図示のように、ユーザは、選択可能UI項目342の強調表示によって示されるように、画像3955の色を調整するために、ツールバー340から選択可能UI項目342を選択している。第2ステージ4110は、肌の色調UIコントロール356の強調表示によって示されるように、ユーザが肌の色調UIコントロール356を選択した後の、GUI300を示す。肌の色調UIコントロール356の選択は、肌の色調UIコントロール356を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、肌の色調UIコントロール356にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   As shown, the user has selected a selectable UI item 342 from the toolbar 340 to adjust the color of the image 3955 as indicated by the highlighting of the selectable UI item 342. The second stage 4110 shows the GUI 300 after the user has selected the skin tone UI control 356, as indicated by the highlighting of the skin tone UI control 356. The selection of the skin tone UI control 356 is performed by performing a gesture (eg, placing a finger, pointing, or fingering) at a location on the device that has a touch or near-touch sensitive screen that displays the skin tone UI control 356. By tapping) or by placing the cursor on the skin tone UI control 356 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.).

第3ステージ4115は、ユーザが、矢印4125によって示されるように、肌の色調UIコントロール356のつまみを右に移動させることによって、画像の肌の色調の改善を開始した後の、GUI300を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、肌の色調UIコントロール356のつまみを移動させることができる。この肌の色調UIコントロール356に対する調整に基づいて、アプリケーションは、画像3955の全域にわたる斜線によって示されるように、予め定義された肌の色調に基づいて、画像3955の色温度を調整する。   The third stage 4115 shows the GUI 300 after the user has started improving the skin tone of the image by moving the knob of the skin tone UI control 356 to the right as indicated by the arrow 4125. In some embodiments, the user can move the knob of the skin tone UI control 356 by dragging the user's finger (or dragging the cursor) to a different location. Based on this adjustment to the skin tone UI control 356, the application adjusts the color temperature of the image 3955 based on a predefined skin tone, as indicated by the diagonal lines across the image 3955.

第4ステージ4120は、ユーザが、矢印4130によって示されるように、肌の色調UIコントロール356のつまみを更に右に移動させることによって、画像の肌の色調を更に調整した後の、GUI300を示す。図示のように、このステージ4120での画像3955は、画像3955の全域にわたる、より高密度の斜線によって示されるように、第3ステージ4115での画像よりも、更に調整されて示される。   The fourth stage 4120 shows the GUI 300 after the user has further adjusted the skin tone of the image by moving the knob of the skin tone UI control 356 further to the right as indicated by the arrow 4130. As shown, the image 3955 at this stage 4120 is shown more adjusted than the image at the third stage 4115, as shown by the denser diagonal lines across the entire image 3955.

図41に示す実施例で示されるように、この画像の色は、対象となる人物の顔の色が、アプリケーションによって予め定義された色値の範囲内に収まり得ないため、単に肌の色調UIコントロール356あるいは画像上UIコントロール2025及び画像上UIコントロール2030を使用することのみによっては、対象となる人物の肌色に基づいて調整することができない。図42は、図41で実行されたものと同じ操作を示すが、ただし、ユーザは、画像の肌の色調を調整する前に、肌色バランスUIツール3925を使用して、前景の人物3930の顔を選択している。具体的には、図42は、この肌の色調調整操作を、4つの異なるステージ4205、4210、4215、及びステージ4220で示す。   As shown in the embodiment shown in FIG. 41, the color of this image is simply the skin tone UI because the face color of the subject person cannot fall within the color value range predefined by the application. Only using the control 356 or the on-image UI control 2025 and the on-image UI control 2030 cannot be adjusted based on the skin color of the target person. FIG. 42 shows the same operations performed in FIG. 41 except that the user uses the skin color balance UI tool 3925 to adjust the face of the foreground person 3930 before adjusting the skin tone of the image. Is selected. Specifically, FIG. 42 shows this skin tone adjustment operation with four different stages 4205, 4210, 4215, and a stage 4220.

第1ステージ4205は、図42の第4ステージ4120と同一である。図示のように、ユーザは、肌色バランスUIコントロール3925を使用することによって、肌色バランス操作を完了したところである。具体的には、ユーザは、肌色バランスUIコントロール3925を使用して、この肌色バランス操作のために、前景の人物3930の顔を選択した。結果として、人物3930の顔の色は、この画像によって定義される理想的な肌色に調整されている。   The first stage 4205 is the same as the fourth stage 4120 in FIG. As shown in the figure, the user has completed the skin color balance operation by using the skin color balance UI control 3925. Specifically, the user uses the skin color balance UI control 3925 to select the face of the foreground person 3930 for this skin color balance operation. As a result, the face color of the person 3930 is adjusted to the ideal skin color defined by this image.

第2ステージ4210は、肌の色調UIコントロール356の強調表示によって示されるように、ユーザが肌の色調UIコントロール356を選択した後の、GUI300を示す。肌の色調UIコントロール356の選択は、肌の色調UIコントロール356を表示する、タッチ若しくはニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、又は、肌の色調UIコントロール356にカーソルを置き、入力を提供すること(例えば、カーソル制御装置をクリックすること、ホットキーを押すことなど)によって、実行することができる。   The second stage 4210 shows the GUI 300 after the user has selected the skin tone UI control 356 as indicated by the highlighting of the skin tone UI control 356. The selection of the skin tone UI control 356 is performed by performing a gesture (eg, placing a finger, pointing, or fingering) at a location on the device that has a touch or near-touch sensitive screen that displays the skin tone UI control 356. By tapping) or by placing the cursor on the skin tone UI control 356 and providing input (eg, clicking on a cursor control device, pressing a hot key, etc.).

第3ステージ4215は、ユーザが、矢印4225によって示されるように、肌の色調UIコントロール356のつまみを右に移動させることによって、画像の肌の色調の調整を開始した後の、GUI300を示す。一部の実施形態では、ユーザは、異なる場所にユーザの指をドラッグすること(又は、カーソルをドラッグすること)によって、肌の色調UIコントロール356のつまみを移動させることができる。ユーザは、画像に対して肌色バランス操作を実行しているため、このアプリケーションは、画像3955の色温度を調整するために、通常の肌の色調として定義されている値の範囲を使用する代わりに、その理想的な肌の色調として定義された値の範囲を使用する。肌の色調UIコントロール356を通じたユーザの入力の結果として、画像の色値は、画像3955の全域にわたる45度の斜線によって示されるように、前景の人物の顔の色に基づいて調整されている。   Third stage 4215 shows GUI 300 after the user has started adjusting the skin tone of the image by moving the knob of skin tone UI control 356 to the right as indicated by arrow 4225. In some embodiments, the user can move the knob of the skin tone UI control 356 by dragging the user's finger (or dragging the cursor) to a different location. Since the user is performing a skin color balance operation on the image, this application instead of using the range of values defined as the normal skin tone to adjust the color temperature of the image 3955. Use a range of values defined as its ideal skin tone. As a result of user input through the skin tone UI control 356, the color value of the image has been adjusted based on the color of the face of the foreground person, as shown by the 45 degree diagonal lines across the image 3955. .

第4ステージ4220は、ユーザが、矢印4230によって示されるように、肌の色調UIコントロール356のつまみを更に右に移動させることによって、画像の肌の色調を更に改善した後の、GUI300を示す。図示のように、このステージ4220での画像3955は、画像3955の全域にわたる、より高密度の45度の斜線によって示されるように、第3ステージ4215での画像よりも、更に調整されて示される。   The fourth stage 4220 shows the GUI 300 after the user has further improved the skin tone of the image by moving the knob of the skin tone UI control 356 further to the right as indicated by the arrow 4230. As shown, the image 3955 at this stage 4220 is shown more adjusted than the image at the third stage 4215, as shown by the denser 45 degree diagonal lines across the image 3955. .

上述の図に示される画像編集アプリケーションのGUIは、その画像編集アプリケーションが実行される装置が、そのGUIを表示するための十分に大きい画面を有するという仮定の下で示されている。しかしながら、画像編集アプリケーションが実行される装置のうちの一部は、UI項目を、それらの項目がより大きい装置のより大きい画面内に表示される方式で表示するには、画面サイズが限定されている場合がある。また、より大きい装置のより大きい画面も、その装置が異なる向き(例えば、縦長式)で保持される場合、限定的であると見なされる可能性がある。一部の実施形態では、画像編集アプリケーションは、異なる時間インスタンスで異なるUI項目の異なるセットを表示することにより、この限定的な画面空間に適応する。   The GUI of the image editing application shown in the above figure is shown under the assumption that the device on which the image editing application is executed has a sufficiently large screen to display the GUI. However, some of the devices on which image editing applications are executed have limited screen sizes to display UI items in a way that they are displayed in a larger screen on devices with larger items. There may be. Also, a larger screen of a larger device may be considered limited if the device is held in a different orientation (eg, portrait). In some embodiments, the image editing application adapts to this limited screen space by displaying different sets of different UI items at different time instances.

図43は、一部の実施形態のGUI1200を通じて、色バランスツールのセットを呼び出す実施例を、3つの異なるステージ4301、4302、及びステージ4303で概念的に示す。第1ステージ4301は、図12の第6ステージ1206と同一である。図示のように、GUI1200内のツールナビゲーションペイン1225は、色調整ツールのセット1260を含む。この色調整ツールのセット1260は、色バランスツールのセットを呼び出すためのUI項目1275を含む。   FIG. 43 conceptually illustrates an example of calling a set of color balance tools through the GUI 1200 of some embodiments, with three different stages 4301, 4302, and stage 4303. The first stage 4301 is the same as the sixth stage 1206 of FIG. As shown, the tool navigation pane 1225 within the GUI 1200 includes a set of color adjustment tools 1260. This set of color adjustment tools 1260 includes a UI item 1275 for invoking a set of color balance tools.

第2ステージ4302は、ユーザがUI項目1275を選択していることを示す。一部の実施形態では、ユーザは、UI項目1275を表示する、タッチ又はニアタッチ感応スクリーンを有する装置上の場所で、ジェスチャを実行すること(例えば、指を置く、指さす、又は指をタップすること)によって、UI項目1275を選択することができる。この選択の結果として、第3ステージ4303で示すように、色バランスツールのセットを表すUI項目4315のセットが、GUI1200上に出現する。一部の実施形態では、それらのUI項目のセットは、この第3ステージ4303で示すように、GUI1200全体にわたって並べられる。他の実施形態では、UI項目4315のセットは、画面の一部分のみを占めることにより、ユーザは依然として、GUI上の画像を閲覧することができる。本明細書では示されないが、ユーザは、UI項目4315のうちの1つを選択することによって、(カスタムホワイトバランスツール及びカスタム顔バランスツールを含めた)色バランスツールのうちの、任意の1つを呼び出すことができる。   Second stage 4302 indicates that the user has selected UI item 1275. In some embodiments, the user performs a gesture (eg, puts a finger, points at, or taps a finger) at a location on a device that has a touch or near touch sensitive screen that displays a UI item 1275. ), The UI item 1275 can be selected. As a result of this selection, as indicated by the third stage 4303, a set of UI items 4315 representing a set of color balance tools appears on the GUI 1200. In some embodiments, the set of UI items is ordered throughout the GUI 1200, as shown in this third stage 4303. In other embodiments, the set of UI items 4315 occupies only a portion of the screen, allowing the user to still view images on the GUI. Although not shown herein, the user selects any one of the color balance tools (including the custom white balance tool and the custom face balance tool) by selecting one of the UI items 4315. Can be called.

図44は、図41及び図42で示されるように、画像に対して色バランス操作を実行するためのプロセス4400を、概念的に示す。一部の実施形態では、このプロセスは、画像編集アプリケーションによって実行される。このプロセスは、色バランスツールの選択を(4405で)受け取ることによって開始する。一部の実施形態では、この色バランスツールは、カスタムホワイトバランスツール又はカスタム肌色バランスツールとすることができる。他の実施形態は、更なる色バランスツールを提供することができる。   FIG. 44 conceptually illustrates a process 4400 for performing a color balance operation on an image, as shown in FIGS. In some embodiments, this process is performed by an image editing application. The process begins by receiving (at 4405) a color balance tool selection. In some embodiments, the color balance tool can be a custom white balance tool or a custom skin color balance tool. Other embodiments can provide additional color balance tools.

次に、このプロセスは、画像上の場所を選択するための色バランスUIコントロールを、画像上に(4410で)表示する。一部の実施形態では、このプロセスは、画像上のデフォルト領域(例えば、画像の中央)に、色バランスUIコントロールを表示する。一部の他の実施形態では、このプロセスは、検出アルゴリズム(例えば、顔検出アルゴリズム)を実行して、特定の特徴部(例えば、人の顔)に対応する、画像上の領域内に、色バランスUIコントロールを配置する。   The process then displays a color balance UI control on the image (at 4410) to select a location on the image. In some embodiments, this process displays a color balance UI control in a default area on the image (eg, the center of the image). In some other embodiments, the process performs a detection algorithm (e.g., a face detection algorithm) to create a color in an area on the image that corresponds to a particular feature (e.g., a human face). Place balance UI controls.

種々の実施形態は、色バランスUIコントロールを、種々の方式で実装する。一部の実施形態では、色バランスUIコントロールは、閉じた境界線(例えば、矩形、楕円形など)を含み、その閉じた境界線の内部に、画像上の場所を正確に示すための指標を有する。一部の実施形態では、色バランスUIコントロールは、図39の色バランスUIコントロール3925のように出現することができる。これらの実施形態の一部では、色バランスUIコントロールはまた、閉じた境界線内部にある画像の部分をズームインする(すなわち、拡大する)。このズームインされたバージョンは、画像上の場所を選択する際の、より優れた精度を提供する。   Various embodiments implement color balance UI control in various ways. In some embodiments, the color balance UI control includes a closed border (eg, rectangle, ellipse, etc.), and within the closed border is an indicator for accurately indicating the location on the image. Have. In some embodiments, the color balance UI control can appear like the color balance UI control 3925 of FIG. In some of these embodiments, the color balance UI control also zooms in (ie, enlarges) the portion of the image that is inside the closed border. This zoomed-in version provides better accuracy when selecting a location on the image.

次いで、このプロセスは、色バランスUIコントロールによって示される場所に基づいて、画像の色バランスを(4415で)調整する。一部の実施形態では、この調整は、選択された場所に対応する画素の色値を、予め定義された特定の色値のセット(例えば、白色に関する色値、灰色に関する色値、予め定義された理想的な肌の色調に関する色値)に変更するための、アルゴリズム又は数学的方程式を定義することを伴う。次いで、このプロセスは、画像内の全ての画素に、その同じアルゴリズム又は数学的方程式を適用する。   The process then adjusts (at 4415) the color balance of the image based on the location indicated by the color balance UI control. In some embodiments, this adjustment may result in a pixel color value corresponding to the selected location being set to a pre-defined set of specific color values (e.g., a color value for white, a color value for gray, a predefined color value). To define an algorithm or mathematical equation to change to a color value for the ideal skin tone. The process then applies the same algorithm or mathematical equation to every pixel in the image.

一部の実施形態では、このプロセスは、色バランスUIコントロールの閉じた境界線の外側にある画像の部分の、調整済みバージョンを表示することによって、調整された画像のプレビューを提供する。これらの実施形態では、色バランスUIコントロールの閉じた境界線の内側の画像の部分は、その画像の編集済みバージョンと未編集バージョンとの差異を示すために、未変更のままで維持される。   In some embodiments, this process provides a preview of the adjusted image by displaying an adjusted version of the portion of the image that is outside the closed border of the color balance UI control. In these embodiments, the portion of the image inside the closed border of the color balance UI control is kept unchanged to show the difference between the edited and unedited version of the image.

次に、このプロセスは、色バランスUIコントロールの、いずれかの移動が受け取られているか否かを(4420で)判定する。色バランスUIコントロールの移動が受け取られる場合には、このプロセスは、その色バランスUIコントロールの新たな場所に基づいて、画像の色バランスを(4425で)再調整する。このプロセスは、それ以上移動が受け取られなくなるまで、操作4420〜4425を繰り返す。色バランスUIコントロールに対する移動が受け取られない場合には、このプロセスは終了する。   The process then determines (at 4420) whether any movement of the color balance UI control has been received. If a color balance UI control move is received, the process re-adjusts (at 4425) the color balance of the image based on the new location of the color balance UI control. This process repeats operations 4420-4425 until no further movement is received. If no movement for the color balance UI control is received, the process ends.

図45は、画像に対して色バランス操作を実行するためのプロセス4500を、概念的に示す。一部の実施形態では、プロセス4500は、ユーザが色バランスUIコントロールを通じて画像上の場所を選択した後の、プロセス4400の操作4415及び操作4425の間に、画像編集アプリケーションによって実行される。このプロセスは、画像上の選択された場所に対応する画素を(4505で)取得することによって開始する。次いで、このプロセスは、取得された画素に関する、色空間内部の望ましい色を(4510で)特定する。一部の実施形態では、ユーザが、プロセス4400の操作4405でカスタムホワイトバランスコントロールツールを選択している場合、このプロセスは、色空間内部で、取得された画素の色に最も近い灰色を特定する。この灰色を特定する操作は、図38を参照して上述されている。ユーザが、プロセス4400の操作4405でカスタム肌色バランスツールを選択している場合、このプロセスは、色空間内の、取得された画素の色に最も近い、予め定義された理想的な肌色を特定する。一部の実施形態では、このアプリケーションは、種々の条件に関する、予め定義された理想的な肌色の幾つかのセット(例えば、昼光に関する理想的な肌色のセット、及び人工光に関する理想的な肌色のセット)を有する。これらの実施形態では、プロセスは、画像が取り込まれた条件を判定するための分析を実行し、対応する理想的な肌色を特定する。   FIG. 45 conceptually illustrates a process 4500 for performing a color balance operation on an image. In some embodiments, process 4500 is performed by the image editing application during operations 4415 and 4425 of process 4400 after the user selects a location on the image through the color balance UI control. This process begins by obtaining (at 4505) the pixel corresponding to the selected location on the image. The process then identifies (at 4510) the desired color within the color space for the acquired pixel. In some embodiments, if the user has selected a custom white balance control tool at operation 4405 of process 4400, this process identifies the gray closest to the color of the acquired pixel within the color space. . The operation of specifying the gray color is described above with reference to FIG. If the user has selected a custom skin color balance tool at operation 4405 of process 4400, this process identifies a predefined ideal skin color that is closest to the color of the acquired pixel in the color space. . In some embodiments, the application may have several sets of predefined ideal skin colors for various conditions (eg, ideal skin color set for daylight and ideal skin color for artificial light). Set). In these embodiments, the process performs an analysis to determine the conditions under which the image was captured and identifies the corresponding ideal skin color.

次に、このプロセスは、取得された画素の色及び特定された色に基づいて、色空間変換を(4515で)決定する。一部の実施形態では、この色調整操作は、特定の色変換アルゴリズム又は数学的方程式を伴う。色調整操作を決定した後、このプロセスは、画像の全ての画素に、その色空間変換を(4520で)適用する。次いで、このプロセスは終了する。   The process then determines (at 4515) a color space transformation based on the acquired pixel color and the identified color. In some embodiments, this color adjustment operation involves a specific color conversion algorithm or mathematical equation. After determining the color adjustment operation, the process applies (at 4520) the color space transformation to every pixel of the image. The process then ends.

図46は、画像の色バランス調整操作を実行する、一部の実施形態の画像編集アプリケーション4600を示す。一部の実施形態では、画像編集アプリケーション4600は、プロセス4400及びプロセス4500を実行する。図46に示すように、画像編集アプリケーション4600は、画像プロセッサ4610、画像プレビューモジュール4615、色空間変換ジェネレータ4625、コンテンツ分析モジュール4640、及び色調整モジュール4630を含む。   FIG. 46 illustrates an image editing application 4600 of some embodiments that performs an image color balance adjustment operation. In some embodiments, image editing application 4600 performs process 4400 and process 4500. As shown in FIG. 46, the image editing application 4600 includes an image processor 4610, an image preview module 4615, a color space conversion generator 4625, a content analysis module 4640, and a color adjustment module 4630.

UIモジュール4605が、色バランスツール(例えば、カスタムホワイトバランスツール、カスタム肌色バランスツールなど)のユーザの選択を受け取ると、UIモジュール4605は、その選択の情報を画像プロセッサ4610に渡す。次いで、この色バランスUIコントロールモジュール4610は、画像上に色バランスUIコントロールを表示する。一部の実施形態では、画像プロセッサ4610は、各画像に関するデフォルトの場所に(例えば、画像の中央に)、色バランスUIコントロールを表示する。一部の他の実施形態では、色バランスUIコントロールモジュール4610は、画像に対して特徴検出操作(例えば、顔検出操作)を実行するために、コンテンツ分析モジュール4640に画像を送り、特徴が検出される場所に(例えば、画像上の人の顔に)色バランスUIコントロールを表示する。次いで、画像プロセッサ4610は、その色バランスUIコントロールの場所に対応する画素の色値を取得し、その色値についての情報を、色空間変換ジェネレータ4625に渡す。   When the UI module 4605 receives a user selection of a color balance tool (eg, custom white balance tool, custom skin color balance tool, etc.), the UI module 4605 passes the selection information to the image processor 4610. Next, the color balance UI control module 4610 displays the color balance UI control on the image. In some embodiments, the image processor 4610 displays a color balance UI control in a default location for each image (eg, in the middle of the image). In some other embodiments, the color balance UI control module 4610 sends an image to the content analysis module 4640 to perform feature detection operations (eg, face detection operations) on the images, and features are detected. The color balance UI control is displayed at a location (for example, on the face of a person on the image). The image processor 4610 then obtains the color value of the pixel corresponding to the location of the color balance UI control and passes information about the color value to the color space conversion generator 4625.

一部の実施形態では、色空間変換ジェネレータ4625は、図45のプロセス4500を実行する。具体的には、色空間変換ジェネレータ4625は、色バランスUIコントロールの場所に対応する画素の色値を取得する。次いで、色空間変換ジェネレータは、ユーザによって選択された色バランスツールに関連付けられている設定された基準色(例えば、灰色、理想的な肌色など)を特定する。色空間変換ジェネレータ4625は、画像内の画素の色値を、その特定され設定された基準色に変更する色調整を決定する。次いで、色空間変換ジェネレータ4625は、決定された色調整に基づいて、色空間変換を生成する。一部の実施形態では、この色空間変換は、決定された色調整に基づいて生成される、M×M行列(例えば、3×3行列)である。一部の実施形態では、この色空間変換は、色空間内部で定義された各色を取得し、決定された色値調整を使用して異なる色を出力する。   In some embodiments, the color space conversion generator 4625 performs the process 4500 of FIG. Specifically, the color space conversion generator 4625 obtains the color value of the pixel corresponding to the location of the color balance UI control. The color space conversion generator then identifies a set reference color (eg, gray, ideal skin color, etc.) associated with the color balance tool selected by the user. The color space conversion generator 4625 determines a color adjustment that changes the color value of a pixel in the image to its specified and set reference color. The color space conversion generator 4625 then generates a color space conversion based on the determined color adjustment. In some embodiments, this color space transformation is an M × M matrix (eg, 3 × 3 matrix) that is generated based on the determined color adjustment. In some embodiments, this color space conversion takes each color defined within the color space and outputs a different color using the determined color value adjustment.

次いで、色空間変換ジェネレータ4625は、生成された色空間変換を、画像プロセッサ4610に渡す。次いで、画像プロセッサ4610は、画像及び色空間変換を、色調整エンジン4630に送る。この色調整エンジンは、画像内の全ての画素に色空間変換を適用し、その調整された画像を、画像プロセッサ4610に送り返す。画像プロセッサは、メディア記憶装置4635内に、その調整された画像を記憶させる。   The color space conversion generator 4625 then passes the generated color space conversion to the image processor 4610. The image processor 4610 then sends the image and color space conversion to the color adjustment engine 4630. The color adjustment engine applies color space conversion to all pixels in the image and sends the adjusted image back to the image processor 4610. The image processor stores the adjusted image in the media storage device 4635.

一部の実施形態では、この画像編集アプリケーションは、編集済み画像のリアルタイムのプレビューをユーザに提供する。これらの実施形態では、画像プロセッサ4610は、画像プレビューモジュール4615に、編集済み画像を送る。種々の実施形態は、種々の技術を使用して、ユーザにプレビューを提供する。一部の実施形態では、画像プレビューモジュール4615は、色バランスUIコントロールの外側の画像の部分の編集済みバージョンを表示する一方で、色バランスUIコントロールの内側の画像の部分の未編集バージョンを表示する。このように、ユーザは、編集済みバージョンと未編集バージョンとの差異を、リアルタイムで容易に視認することができる。他の実施形態では、色バランスUIコントロールの内側にある画像の部分のみが編集され、色バランスUIコントロールの外側の画像の部分は、未編集のまま維持される。更に、他の実施形態では、画像全体が編集される。   In some embodiments, the image editing application provides the user with a real-time preview of the edited image. In these embodiments, the image processor 4610 sends the edited image to the image preview module 4615. Various embodiments provide previews to the user using various techniques. In some embodiments, the image preview module 4615 displays an edited version of the portion of the image outside the color balance UI control while displaying an unedited version of the portion of the image inside the color balance UI control. . Thus, the user can easily visually recognize the difference between the edited version and the unedited version in real time. In other embodiments, only the portion of the image inside the color balance UI control is edited and the portion of the image outside the color balance UI control is kept unedited. Furthermore, in other embodiments, the entire image is edited.

ユーザが、色バランスUIコントロールの場所を変更すると、UIモジュール4605は、その色バランスUIコントロールの新たな場所についての情報を、画像プロセッサ4610に渡す。次いで、画像プロセッサ4610は、その新たな場所に対応する画素の色値を取得して、その色値を色空間変換ジェネレータ4625に渡す。色空間変換ジェネレータ4625は、取得された色値に基づいて新たな色空間変換を生成し、その生成された色空間変換を、画像プロセッサ4610に送り返す。次いで、画像プロセッサ4610は、画像を再調整するために、画像及び色空間変換を色調整エンジン4630に送る。色調整エンジン4630は、画像に色空間変換を適用し、その調整された画像を画像プロセッサ4610に送る。   When the user changes the location of the color balance UI control, the UI module 4605 passes information about the new location of the color balance UI control to the image processor 4610. The image processor 4610 then obtains the color value of the pixel corresponding to the new location and passes the color value to the color space conversion generator 4625. The color space conversion generator 4625 generates a new color space conversion based on the acquired color value, and sends the generated color space conversion back to the image processor 4610. The image processor 4610 then sends the image and color space transformations to the color adjustment engine 4630 to readjust the image. Color adjustment engine 4630 applies color space conversion to the image and sends the adjusted image to image processor 4610.

IV.画像閲覧、編集、及び構成アプリケーション
上述の図は、一部の実施形態の画像閲覧、編集、及び構成アプリケーションのGUIの様々な実施例を示したものである。図47は、画像を閲覧、編集、及び構成するための、一部の実施形態のGUI4700の詳細図を示す。GUI4700は、図48を部分的に参照して説明され、この図48は、一部の実施形態のアプリケーションによって記憶されるような画像に関する、データ構造4800を概念的に示す。
IV. Image Browsing, Editing, and Configuration Application The above-described figures illustrate various examples of image browsing, editing, and configuration application GUIs in some embodiments. FIG. 47 shows a detailed view of a GUI 4700 of some embodiments for viewing, editing and composing images. The GUI 4700 is described with reference in part to FIG. 48, which conceptually illustrates a data structure 4800 for an image as stored by an application of some embodiments.

データ構造4800は、画像ID4805、画像データ4810、編集命令4815、画像のキャッシュバージョン4840、及び画像に関する任意の追加データ4850を含む。画像ID4805は、一部の実施形態では、コレクション内に記憶された画像を参照するために、コレクションデータ構造によって使用される、画像に関する一意識別子である。画像データ4810は、画像を表示するための、実際のフルサイズの画素データ(例えば、画像又はその符号化バージョン内の各画素に関する、一連の色空間チャネル値)である。一部の実施形態では、このデータは、画像閲覧、編集、及び構成アプリケーションのデータベース内に記憶することができ、又は別のアプリケーションのデータと共に同じ装置上で記憶することができる。一部の実施形態では、この追加的アプリケーションは、この装置上で動作する別の画像構成アプリケーションであり、その上で画像閲覧、編集、及び構成が動作する。   The data structure 4800 includes an image ID 4805, image data 4810, editing instructions 4815, an image cache version 4840, and any additional data 4850 related to the image. The image ID 4805 is a unique identifier for the image that, in some embodiments, is used by the collection data structure to refer to images stored in the collection. Image data 4810 is the actual full-size pixel data (eg, a series of color space channel values for each pixel in the image or encoded version thereof) for displaying the image. In some embodiments, this data can be stored in a database of image viewing, editing, and configuration applications, or can be stored on the same device along with data of another application. In some embodiments, this additional application is another image composition application that runs on the device, on which image viewing, editing, and composition work.

それゆえ、このデータ構造は、そのアプリケーションに関連付けられているローカルファイルへのポインタ、又は別のアプリケーションのデータベースに問い合わせるために使用することが可能なIDを記憶することができる。一部の実施形態では、アプリケーションがジャーナル内の画像を使用するか、又は画像に対して編集を実施すると、アプリケーションは、その画像データを含む画像ファイルのローカルコピーを自動的に作成する。   This data structure can therefore store a pointer to a local file associated with the application, or an ID that can be used to query another application's database. In some embodiments, when an application uses an image in a journal or performs an edit on an image, the application automatically creates a local copy of the image file that includes the image data.

編集命令4815は、ユーザが画像に適用したあらゆる編集に関連する情報を含む。この方式で、アプリケーションは、そのアプリケーションが、画像の編集済みバージョンからオリジナルに、いつでも容易に戻ることができるように、非破壊形式で画像を記憶する。例えば、ユーザは、画像に彩度の効果を適用して、アプリケーションから退去し、次いで別の機会に、アプリケーションを再び開いて、その効果を除去することができる。これらの命令に記憶された編集は、クロップ及び回転、フル画像露出及び色調整、局所調整、及び特殊効果、並びに、画像の画素に影響を与える他の編集とすることができる。一部の実施形態は、ユーザが、特定の編集のセットのみが適用されている、その画像の種々のバージョンを閲覧することができるように、これらの編集命令を特定の順序で記憶する。   Edit instructions 4815 include information related to any edits that the user has applied to the image. In this manner, the application stores the image in a non-destructive manner so that the application can easily return from the edited version of the image to the original at any time. For example, a user can apply a saturation effect to an image, leave the application, and then reopen the application at another opportunity to remove the effect. The edits stored in these instructions can be cropping and rotation, full image exposure and color adjustments, local adjustments, and special effects, and other edits that affect the pixels of the image. Some embodiments store these editing instructions in a particular order so that the user can view different versions of the image to which only a particular set of edits have been applied.

一部の実施形態では、編集命令4815は、編集操作のリスト4860として実装される。リスト4860は、編集4861、4862、4863、及び編集4865などの編集操作を含む。リスト4860内の各編集操作は、その編集操作を実施するために必要なパラメータを指定する。例えば、リスト4860内の編集操作4865は、彩度の効果を適用する、画像に対する編集を、色選択パラメータθを使用して指定する。   In some embodiments, the edit instruction 4815 is implemented as a list 4860 of edit operations. List 4860 includes editing operations such as edits 4861, 4862, 4863, and edit 4865. Each editing operation in the list 4860 specifies parameters necessary for performing the editing operation. For example, an edit operation 4865 in the list 4860 specifies an edit to the image to which the saturation effect is applied using the color selection parameter θ.

一部の実施形態では、リスト4860は、最終的な編集済み画像を作成するためにユーザによって着手された、編集操作のシーケンスを記録する。一部の実施形態では、リスト4860は、一部の実施形態が、アプリケーションによって提供される種々の可能な編集に関する特定の順序を定義するため、画像編集アプリケーションが表示のための出力画像を生成するために画像に編集を適用する順序で、編集命令を記憶する。例えば、一部の実施形態は、彩度の効果を、クロップ及び回転、フル画像露出、及び色調整などの他の編集操作よりも遅れて適用されるべき編集操作のうちの1つとして定義する。これらの実施形態のうちの一部の、リスト4860は、彩度の効果に関する編集命令を、他の編集操作(例えば、編集4861〜1363)のうちの一部よりも遅れて適用される位置(すなわち、編集4865)に記憶する。   In some embodiments, list 4860 records a sequence of editing operations initiated by the user to create the final edited image. In some embodiments, the list 4860 provides the image editing application to generate an output image for display because some embodiments define a specific order for the various possible edits provided by the application. Therefore, the editing commands are stored in the order in which editing is applied to the image. For example, some embodiments define the saturation effect as one of editing operations that should be applied later than other editing operations such as crop and rotate, full image exposure, and color adjustment. . In some of these embodiments, the list 4860 is a location where editing instructions relating to saturation effects are applied later than some of the other editing operations (eg, edits 4861 to 1363) ( That is, it is stored in the edit 4865).

キャッシュ画像バージョン4840は、よくアクセス及び表示される画像のバージョンを格納するため、アプリケーションは、これらの画像をフルサイズの画像データ4810から繰り返し生成する必要がない。例えば、このアプリケーションは、多くの場合、画像に関するサムネイル、並びに表示解像度バージョン(例えば、画像表示領域用に適合されたバージョン)を記憶する。一部の実施形態のアプリケーションは、編集が適用されるたびに、その画像に関する新たなサムネイルを生成し、以前のサムネイルと置き換える。一部の実施形態は、オリジナルの画像、及び画像の1つ以上の編集済みバージョンを含めた、複数の表示解像度バージョンを記憶する。   Cache image version 4840 stores versions of images that are often accessed and displayed, so that the application does not need to repeatedly generate these images from full-size image data 4810. For example, the application often stores a thumbnail for the image as well as a display resolution version (eg, a version adapted for the image display area). In some embodiments, each time an edit is applied, it creates a new thumbnail for the image and replaces the previous thumbnail. Some embodiments store multiple display resolution versions, including the original image and one or more edited versions of the image.

最後に、画像データ構造4800は、このアプリケーションが画像と共に記憶することが可能な追加データ4850(例えば、顔の場所及びサイズなど)を含む。一部の実施形態では、この追加データとしては、Exchangeable image file format(Exif)データ、キャプションデータ、共有画像データ、画像上のタグ、又は任意の他のタイプのデータを挙げることができる。Exifデータは、カメラ設定、GPSデータ、タイムスタンプなどの、画像を取り込んだカメラによって記憶される様々な情報を含む。キャプションとは、ユーザが入力した、その画像の説明である。タグとは、アプリケーションにより、ユーザが、お気に入り、フラグ付き、非表示などとして画像をマーク付けすることなどの、画像と関連付けることが可能となる、情報である。   Finally, the image data structure 4800 includes additional data 4850 (eg, face location and size, etc.) that the application can store with the image. In some embodiments, this additional data may include Exchangeable image file format (Exif) data, caption data, shared image data, tags on the image, or any other type of data. Exif data includes various information stored by the camera that captured the image, such as camera settings, GPS data, and time stamps. The caption is a description of the image input by the user. A tag is information that allows an application to associate with an image, such as marking an image as favorite, flagged, hidden, etc.

画像データ構造4800は、画像に関して必要とされる情報を記憶するためにアプリケーションが使用することができる、1つの可能なデータ構造に過ぎないことが、当業者には認識されるであろう。例えば、異なる実施形態では、更なる情報、又はより少ない情報を記憶する場合、異なる順番で情報を記憶する場合などがある。   One skilled in the art will recognize that the image data structure 4800 is just one possible data structure that an application can use to store the information needed for an image. For example, different embodiments may store more information or less information, store information in a different order, and so on.

図47に戻ると、GUI4700は、サムネイル表示領域4705、画像表示領域4710、第1のツールバー4715、第2のツールバー4720、及び第3のツールバー4725を含む。サムネイル表示領域4705は、選択されたコレクション内の画像のサムネイルを表示する。サムネイルは、フルサイズの画像の小さい表現であり、一部の実施形態では、画像の一部分のみを表す。例えば、サムネイル表示領域4705内のサムネイルは、フルサイズの画像のアスペクト比に関わりなく、全て正方形である。サムネイルに使用するための矩形画像の部分を決定するために、このアプリケーションは、その画像のより小さい寸法を特定し、より長い方向の、画像の中心部分を使用する。例えば、1600×1200画素の画像の場合、このアプリケーションは、4700×1200の正方形を使用する。サムネイルに関する選択部分を更に洗練させるために、一部の実施形態は、(顔検出アルゴリズムを使用して)画像内の全ての顔の中心を特定し、次いで、その場所を使用して、クリッピングされる方向のサムネイル部分の中心に置く。したがって、理論上1600×1200の画像内の顔が、全て画像の左側に位置する場合には、このアプリケーションは、両側で200列を切り捨てるのではなく、左端の4700列の画素を使用する。   Returning to FIG. 47, the GUI 4700 includes a thumbnail display area 4705, an image display area 4710, a first toolbar 4715, a second toolbar 4720, and a third toolbar 4725. A thumbnail display area 4705 displays thumbnails of images in the selected collection. A thumbnail is a small representation of a full-size image, and in some embodiments represents only a portion of the image. For example, the thumbnails in the thumbnail display area 4705 are all square regardless of the aspect ratio of the full-size image. To determine the portion of the rectangular image to use for the thumbnail, the application identifies the smaller dimensions of the image and uses the central portion of the image in the longer direction. For example, for an image of 1600 × 1200 pixels, this application uses a 4700 × 1200 square. In order to further refine the selection for thumbnails, some embodiments identify the center of all faces in the image (using a face detection algorithm) and are then clipped using that location. Place it at the center of the thumbnail in the direction Therefore, if all the faces in a 1600 × 1200 image are theoretically located on the left side of the image, this application uses the leftmost 4700 columns of pixels rather than truncating 200 columns on both sides.

サムネイルに使用するための画像の部分を決定した後に、画像閲覧アプリケーションは、(例えば、画素混合技術及び他の技術を使用して)その画像の低解像度バージョンを生成する。一部の実施形態のアプリケーションは、画像のキャッシュバージョン4840として、画像に関するサムネイルを記憶する。したがって、ユーザがコレクションを選択すると、このアプリケーションは、(コレクションデータ構造を通じて)そのコレクション内の画像の全てを特定して、サムネイル表示領域内での表示のために、各画像データ構造内のキャッシュされたサムネイルにアクセスする。   After determining the portion of the image to use for the thumbnail, the image viewing application generates a low resolution version of the image (eg, using pixel blending techniques and other techniques). Some embodiments of the application store thumbnails for images as a cached version 4840 of the image. Thus, when a user selects a collection, the application identifies all of the images in that collection (through the collection data structure) and is cached in each image data structure for display in the thumbnail display area. Access thumbnails.

ユーザは、(例えば、上述の様々なタッチ相互作用を通じて、又は他のユーザ入力相互作用を通じて)サムネイル表示領域内の1つ以上の画像を選択することができる。選択されたサムネイルは、強調表示、又は他の選択の表示を使用して表示される。サムネイル表示領域4705内で、サムネイル4730が選択される。更には、図示のように、一部の実施形態のサムネイル表示領域4705は、フラグ付けされた(例えば、「はい」に設定されたフラグに関するタグを有する)、コレクション内の幾つかの画像を示す。一部の実施形態では、このテキストは、フラグ付き画像のサムネイルのみを表示するために選択可能である。   The user can select one or more images in the thumbnail display area (eg, through the various touch interactions described above, or through other user input interactions). The selected thumbnail is displayed using highlighting or other selection display. In the thumbnail display area 4705, the thumbnail 4730 is selected. Further, as shown, the thumbnail display area 4705 of some embodiments shows several images in the collection that are flagged (eg, with a tag for the flag set to “Yes”). . In some embodiments, this text is selectable to display only flagged image thumbnails.

アプリケーションは、選択された画像を、対応するサムネイルよりも大きい解像度で、画像表示領域4710内に表示する。それらの画像は、ディスプレイ装置よりも高い解像度を有する場合が多いため、典型的には、画像のフルサイズでは表示されない。それゆえ、一部の実施形態のアプリケーションは、画像表示領域内に適合するように設計された、画像のキャッシュバージョン4840を記憶する。画像表示領域4710内の画像は、フルサイズの画像のアスペクト比で表示される。1つの画像が選択されると、このアプリケーションは、画像のいずれの部分も切り捨てることなく、画像表示領域以内に可能な限り大きく画像を表示する。複数の画像が選択される場合、このアプリケーションは、それらの画像が異なるアスペクト比を有する場合であっても、各画像に関してほぼ同じ画素数を使用することによって、それらの視覚的重み付けを維持するような方式で画像を表示する。   The application displays the selected image in the image display area 4710 with a resolution larger than the corresponding thumbnail. Since these images often have a higher resolution than the display device, they are typically not displayed at the full size of the image. Therefore, the application of some embodiments stores a cached version of the image 4840 that is designed to fit within the image display area. The image in the image display area 4710 is displayed with the aspect ratio of the full-size image. When one image is selected, the application displays the image as large as possible within the image display area without truncating any part of the image. If multiple images are selected, this application will maintain their visual weight by using approximately the same number of pixels for each image, even if they have different aspect ratios. Display images in various ways.

第1のツールバー4715は、タイトル情報(例えば、GUI内に示されるコレクションの名前、ユーザが現在選択されている画像に添付したキャプションなど)を表示する。更には、ツールバー4715は、GUI項目4735〜1238の第1のセット、及びGUI項目4740〜1243の第2のセットを含む。   The first toolbar 4715 displays title information (for example, the name of the collection shown in the GUI, the caption attached to the image currently selected by the user). Further, the toolbar 4715 includes a first set of GUI items 4735-1238 and a second set of GUI items 4740-1243.

GUI項目の第1のセットは、「戻る」ボタン4735、グリッドボタン4736、ヘルプボタン4737、及び取り消しボタン4738を含む。「戻る」ボタン4735により、ユーザは、コレクション構成GUIにナビゲートして戻ることが可能となり、このコレクション構成GUIから、ユーザは、画像の種々のコレクション(例えば、アルバム、イベント、ジャーナルなど)を選択することができる。グリッドボタン4736の選択により、アプリケーションは、(例えば、スライドアニメーションを介して)サムネイル表示領域を、GUI上に移動させるか、又はGUIから移動させる。一部の実施形態では、ユーザはまた、スワイプジェスチャを介して、サムネイル表示領域を、GUI上にスライドさせるか、又はGUIからスライドさせることもできる。ヘルプボタン4737は、ユーザに関してアクティブな現在のツールのセットを特定して、それらのツールを簡潔に説明する、それらのツールに関するヘルプ表示をユーザに提供する、コンテキストに応じたヘルプ機能をアクティブ化する。一部の実施形態では、このヘルプ表示は、ツールについての追加情報にアクセスするために選択可能である。取り消しボタン4738の選択により、このアプリケーションは、画像に対する最新の編集を、その編集がクロップ、色調整などであるか否かに関わらず除去する。この取り消しを実行するために、一部の実施形態は、画像と共に記憶された、編集命令4815のセットからの最新の命令を除去する。   The first set of GUI items includes a “back” button 4735, a grid button 4736, a help button 4737, and a cancel button 4738. A “back” button 4735 allows the user to navigate back to the collection configuration GUI, from which the user can select various collections of images (eg, albums, events, journals, etc.). can do. Depending on the selection of the grid button 4736, the application moves the thumbnail display area onto or out of the GUI (eg, via a slide animation). In some embodiments, the user can also slide the thumbnail display area onto or from the GUI via a swipe gesture. Help button 4737 activates a context-sensitive help function that identifies the current set of tools active for the user and provides the user with a help display for those tools that briefly describes those tools. . In some embodiments, this help display can be selected to access additional information about the tool. Selection of the cancel button 4738 causes the application to remove the latest edit to the image regardless of whether the edit is cropping, color adjustment, or the like. To perform this cancellation, some embodiments remove the latest instruction from the set of edit instructions 4815 stored with the image.

GUI項目の第2のセットは、共有ボタン4740、情報ボタン4741、「オリジナルを示す」ボタン4742、及び編集ボタン4743を含む。共有ボタン4740により、ユーザは、多種多様の方法で、画像を共有することが可能となる。一部の実施形態では、とりわけ、ユーザは、同じネットワーク(例えば、WiFi(登録商標)又はBluetooth(登録商標)ネットワーク)上の別の互換装置に、選択された画像を送信して、画像ホスティングウェブサイト又はソーシャルメディアウェブサイトに画像をアップロードし、選択された画像のセットから、ジャーナル(すなわち、追加のコンテンツを追加することが可能な、配置構成された画像の提示)を作成することができる。   The second set of GUI items includes a share button 4740, an information button 4741, a “show original” button 4742, and an edit button 4743. The share button 4740 allows the user to share images in a variety of ways. In some embodiments, among other things, the user can send the selected image to another compatible device on the same network (eg, WiFi® or Bluetooth® network) to create an image hosting web Images can be uploaded to a site or social media website and a journal (ie, a presentation of arranged images that can add additional content) can be created from the selected set of images.

情報ボタン4741は、1つ以上の選択された画像についての追加情報を表示する、表示領域をアクティブ化する。アクティブ化された表示領域内に表示される情報は、画像に関して記憶されたExifデータ(例えば、カメラ設定、タイムスタンプなど)の一部又は全てを含み得る。複数の画像が選択される場合、一部の実施形態は、選択された画像の全てに共通であるExifデータのみを表示する。一部の実施形態は、(i)GPSデータに従って(この情報が利用可能である場合には)、画像が取り込まれた場所を示すマップを表示するため、及び(ii)任意の写真共有ウェブサイト上の、画像に関するコメントストリームを表示するために、情報表示領域内に追加タブを含む。この情報をウェブサイトからダウンロードするために、アプリケーションは、共有画像データと共に画像に関して記憶された、画像に関するオブジェクトIDを使用し、この情報をウェブサイトに送信する。コメントストリーム、及び、場合によっては追加情報がウェブサイトから受信され、ユーザに表示される。   An information button 4741 activates a display area that displays additional information about one or more selected images. The information displayed in the activated display area may include some or all of the Exif data (eg, camera settings, time stamps, etc.) stored for the image. When multiple images are selected, some embodiments display only Exif data that is common to all of the selected images. Some embodiments (i) display a map showing where the image was captured according to GPS data (if this information is available), and (ii) any photo sharing website Above, an additional tab is included in the information display area to display the comment stream for the image. In order to download this information from the website, the application uses the object ID for the image stored with the shared image data for the image and sends this information to the website. A comment stream and possibly additional information is received from the website and displayed to the user.

「オリジナルを示す」ボタン4742により、ユーザは、画像のオリジナルバージョンと、その画像の現在の編集済みバージョンとを、切り替えることが可能となる。ユーザがこのボタンを選択すると、アプリケーションは、編集命令4815の一切が適用されていない、その画像のオリジナルバージョンを表示する。一部の実施形態では、適切なサイズの画像が、その画像のキャッシュバージョン4840のうちの1つとして記憶されることにより、その画像に素早くアクセス可能となる。ユーザが、ボタン4742を再び選択すると、このアプリケーションは、編集命令4815が適用されている、その画像の編集済みバージョンを表示する。   “Show original” button 4742 allows the user to switch between the original version of the image and the current edited version of the image. When the user selects this button, the application displays the original version of the image without any editing instructions 4815 applied. In some embodiments, an appropriately sized image is stored as one of the cached versions of the image 4840 so that the image can be quickly accessed. When the user selects button 4742 again, the application displays the edited version of the image to which edit instruction 4815 has been applied.

編集ボタン4743により、ユーザは、編集モードに入るか、又は編集モードから出ることが可能となる。ユーザが、ツールバー4720内の編集ツールのセットのうちの1つを選択している場合、図47に示されるように、編集ボタン4743は、閲覧及び構成モードにユーザを戻す。ユーザが、閲覧モードにある間に、編集ボタン4743を選択すると、このアプリケーションは、ツールバー4720内に示される順序で最後に使用された編集ツールのセットに戻る。すなわち、ツールバー4720内の項目は、特定の順序で配置構成され、編集ボタン4743は、選択された画像に対して編集が行われた、それらの項目の右端をアクティブ化する。   Edit button 4743 allows the user to enter or exit edit mode. If the user has selected one of the set of editing tools in the toolbar 4720, the edit button 4743 returns the user to view and configure mode, as shown in FIG. If the user selects edit button 4743 while in view mode, the application returns to the last set of editing tools used in the order shown in toolbar 4720. That is, the items in the toolbar 4720 are arranged and configured in a specific order, and the edit button 4743 activates the right end of those items that have been edited on the selected image.

ツールバー4720は、上述のように、左から右に特定の順序で配置構成された、5つの項目4745〜1249を含む。クロップ項目4745は、ユーザが、歪んだ画像を位置調整して、画像の不必要な部分を除去することを可能にする、クロップ及び回転ツールをアクティブ化する。露出項目4746は、ユーザが、画像の黒点、シャドウ、コントラスト、明度、ハイライト、及び白色点を修正することを可能にする、露出ツールのセットをアクティブ化する。一部の実施形態では、この露出ツールのセットは、種々の組み合わせで協働して画像の色調属性を修正する、スライダのセットである。色項目4747は、ユーザが、彩度及び自然な彩度、並びに、色別の彩度(例えば、青色画素又は緑色画素)及びホワイトバランスを修正することを可能にする、色ツールのセットをアクティブ化する。一部の実施形態では、これらのツールの一部は、スライダのセットとして提示される。ブラシ項目4748は、ユーザが、画像に対する修正を局所化することを可能にする、補正ツールのセットをアクティブ化する。このブラシを使用して、ユーザは、画像の上で擦るアクションを実行することによって、赤目及び汚点を除去し、画像の局所化された部分に、彩度及び他の特徴を適用するか、若しくは除去することができる。最後に、効果項目4749は、ユーザが画像に適用することが可能な、特殊効果のセットをアクティブ化する。これらの効果としては、デュオトーン効果、粗い粒子効果、グラデーション、ティルトシフト、非写実的彩度低下効果、グレースケール効果、様々なフィルタなどが挙げられる。一部の実施形態では、このアプリケーションは、ツールバー4725から扇形に展開する項目のセットとして、これらの効果を提示する。   Toolbar 4720 includes five items 4745 to 1249 arranged in a particular order from left to right as described above. Crop item 4745 activates a crop and rotate tool that allows the user to align the distorted image and remove unwanted portions of the image. Exposure item 4746 activates a set of exposure tools that allow the user to modify the black point, shadow, contrast, brightness, highlight, and white point of the image. In some embodiments, this set of exposure tools is a set of sliders that work together in various combinations to modify the tone attributes of the image. Color item 4747 activates a set of color tools that allow the user to modify saturation and natural saturation, as well as saturation by color (eg, blue or green pixels) and white balance. Turn into. In some embodiments, some of these tools are presented as a set of sliders. Brush item 4748 activates a set of correction tools that allow the user to localize modifications to the image. Using this brush, the user removes red eyes and spots by performing a rubbing action on the image, and applies saturation and other features to localized portions of the image, or Can be removed. Finally, effect item 4749 activates a set of special effects that the user can apply to the image. These effects include duotone effects, coarse grain effects, gradations, tilt shifts, non-realistic desaturation effects, gray scale effects, and various filters. In some embodiments, the application presents these effects as a set of items that fan out from the toolbar 4725.

上述のように、UI項目4745〜1249は、特定の順序で配置される。この順序は、ユーザが、これらの5つの異なるタイプの編集を最もよく適用する順序に従う。したがって、編集命令4815は、一部の実施形態では、この同じ順序で記憶される。ユーザが、項目4745〜1249のうちの1つを選択すると、一部の実施形態は、選択されたツールの左側のツールからの編集のみを、表示された画像に適用する(しかしながら、他の編集は、命令セット4815内に記憶されたまま維持される)。   As described above, the UI items 4745 to 1249 are arranged in a specific order. This order follows the order in which the user best applies these five different types of edits. Thus, the edit instructions 4815 are stored in this same order in some embodiments. When the user selects one of items 4745 to 1249, some embodiments apply only edits from the tool to the left of the selected tool to the displayed image (but other edits). Is kept stored in instruction set 4815).

ツールバー4725は、GUI項目4750〜1254のセット、並びに設定項目4755を含む。自動補正項目4750は、画像に対する補正編集(例えば、明らかな赤目の除去、色バランス調整など)を自動的に実行する。回転ボタン4751は、任意の選択された画像を回転させる。一部の実施形態では、この回転ボタンが押されるたびに、画像は、特定の方向に90度回転する。自動補正は、一部の実施形態では、命令セット4815内に置かれる、所定の編集命令のセットを含む。一部の実施形態は、画像の分析を実行し、次いで、その分析に基づいて命令のセットを定義する。例えば、自動補正ツールは、画像内の赤目を検出することを試みるが、赤目が検出されない場合には、赤目を補正するための命令が生成されることはない。同様に、自動色バランス調整は、画像の分析に基づくものとなる。回転ボタンによって生成される回転もまた、編集命令として記憶される。   Toolbar 4725 includes a set of GUI items 4750-1254 as well as setting items 4755. The automatic correction item 4750 automatically executes correction editing (for example, clear red-eye removal, color balance adjustment) on the image. A rotate button 4751 rotates any selected image. In some embodiments, each time this rotation button is pressed, the image rotates 90 degrees in a particular direction. The automatic correction includes a predetermined set of editing instructions that, in some embodiments, are placed in the instruction set 4815. Some embodiments perform an analysis of the image and then define a set of instructions based on the analysis. For example, the automatic correction tool attempts to detect red eyes in the image, but if no red eyes are detected, no instructions are generated to correct the red eyes. Similarly, automatic color balance adjustment is based on image analysis. The rotation generated by the rotation button is also stored as an edit command.

フラグボタン4752は、任意の選択された画像に、フラグ付きとしてタグを付ける。一部の実施形態では、コレクションのフラグ付き画像は、いずれのフラグなし画像も伴うことなく表示することができる。お気に入りボタン4753により、ユーザは、任意の選択された画像を、お気に入りとしてマーク付けすることが可能となる。一部の実施形態では、このことにより、その画像は、お気に入りとしてタグ付けされ、また、その画像は、お気に入り画像のコレクションにも追加される。非表示ボタン4754により、ユーザは、画像を非表示としてタグ付けすることが可能となる。一部の実施形態では、非表示画像は、サムネイル表示領域内には表示されず、かつ/又は、ユーザが画像表示領域内でコレクションの画像を循環させる際にも表示されない。図48を参照して上述されたように、これらの特徴のうちの多くは、画像データ構造内にタグとして記憶される。   The flag button 4752 tags any selected image as flagged. In some embodiments, collection flagged images can be displayed without any flagless images. Favorites button 4753 allows the user to mark any selected image as a favorite. In some embodiments, this tags the image as a favorite and also adds the image to the collection of favorite images. Hide button 4754 allows the user to tag an image as hidden. In some embodiments, the non-displayed image is not displayed in the thumbnail display area and / or is not displayed when the user cycles through the images in the collection in the image display area. As described above with reference to FIG. 48, many of these features are stored as tags in the image data structure.

最後に、設定ボタン4755は、現在アクティブであるツールセットに応じて異なるメニューオプションを提供する、コンテキストに応じたメニューをアクティブ化する。例えば、閲覧モードでは、一部の実施形態のメニューは、新たなアルバムを作成するためのオプション、アルバム用の主要写真を設定するためのオプション、写真間で設定をコピーするためのオプション、及び他のオプションを提供する。種々の編集ツールのセットがアクティブである場合、このメニューは、特定のアクティブなツールセットに関連するオプションを提供する。   Finally, settings button 4755 activates a context-sensitive menu that provides different menu options depending on the currently active toolset. For example, in browse mode, the menus in some embodiments include an option to create a new album, an option to set a primary photo for the album, an option to copy settings between photos, and others Provides options. If various editing tool sets are active, this menu provides options related to the particular active tool set.

画像閲覧及び編集GUI4700は、画像閲覧、編集及び構成アプリケーションに関する多くの可能なグラフィカルユーザインターフェースのうちの1つの実施例に過ぎないことが、当業者には認識されるであろう。例えば、様々な項目は、異なる領域内に、又は異なる順序で配置することが可能であり、一部の実施形態は、追加的な機能性又は異なる機能性を有する項目を含み得る。一部の実施形態のサムネイル表示領域は、対応するフルサイズの画像のアスペクト比に一致するサムネイルなどを表示することができる。   Those skilled in the art will recognize that the image viewing and editing GUI 4700 is just one example of many possible graphical user interfaces for image viewing, editing and composition applications. For example, the various items can be arranged in different regions or in different orders, and some embodiments can include items with additional functionality or different functionality. The thumbnail display area of some embodiments can display thumbnails that match the aspect ratio of the corresponding full-size image.

V.電子システム
上述の機能及びアプリケーションのうちの多くは、コンピュータ可読記憶媒体(コンピュータ可読媒体とも称される)上に記録される命令のセットとして指定される、ソフトウェアプロセスとして実装される。これらの命令が、1つ以上の計算又は処理ユニット(例えば、1つ以上のプロセッサ、プロセッサのコア、又は他の処理ユニット)によって実行される場合、それらの命令は、処理ユニットに、それらの命令で示されるアクションを実行させる。コンピュータ可読媒体の例としては、CD−ROM、フラッシュドライブ、ランダムアクセスメモリ(RAM)チップ、ハードドライブ、消去可能プログラム可能な読出し専用メモリ(EPROM)、電気的消去可能プログラム可能な読み出し専用メモリ(EEPROM)などが挙げられるが、これらに限定されない。コンピュータ可読媒体は、無線で、若しくは有線接続を介して伝達される、搬送波及び電子信号を含まない。
V. Electronic System Many of the functions and applications described above are implemented as a software process that is specified as a set of instructions recorded on a computer-readable storage medium (also referred to as a computer-readable medium). If these instructions are executed by one or more computing or processing units (eg, one or more processors, processor cores, or other processing units), the instructions are sent to the processing units by their instructions. The action indicated by is executed. Examples of computer readable media include CD-ROM, flash drive, random access memory (RAM) chip, hard drive, erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM) ) And the like, but is not limited thereto. Computer-readable media does not include carrier waves and electronic signals transmitted wirelessly or via wired connections.

本明細書では、用語「ソフトウェア」は、プロセッサによって処理するためにメモリ内に読み込むことが可能な、読み出し専用メモリ内に存在するファームウェア、又は磁気記憶装置内に記憶されたアプリケーションを含むものとする。また、一部の実施形態では、複数のソフトウェア発明は、別個のソフトウェア発明のまま維持しつつ、より大きいプログラムの下位区分として実装することもできる。一部の実施形態では、複数のソフトウェア発明はまた、個別のプログラムとして実装することもできる。最後に、本明細書で説明されるソフトウェア発明を一体となって実装する、個別のプログラムのいずれの組み合わせも、本発明の範囲内である。一部の実施形態では、ソフトウェアプログラムは、1つ以上の電子システム上で動作するようにインストールされる場合、そのソフトウェアプログラムの動作を遂行及び実行する、1つ以上の特定のマシン実装を定義する。   As used herein, the term “software” is intended to include firmware residing in read-only memory, or applications stored in magnetic storage, that can be loaded into memory for processing by a processor. Also, in some embodiments, multiple software inventions can be implemented as subdivisions of larger programs while maintaining separate software inventions. In some embodiments, multiple software inventions can also be implemented as separate programs. Finally, any combination of individual programs that together implement the software invention described herein is within the scope of the present invention. In some embodiments, a software program defines one or more specific machine implementations that, when installed to run on one or more electronic systems, perform and execute the operations of the software program. .

A.モバイル装置
一部の実施形態の画像編集及び閲覧アプリケーションは、モバイル装置上で動作する。図49は、そのようなモバイルコンピューティング装置のアーキテクチャ4900の実施例である。モバイルコンピューティング装置の例としては、スマートフォン、タブレット、ラップトップなどが挙げられる。図示のように、モバイルコンピューティング装置4900は、1つ以上の処理ユニット4905、メモリインターフェース4910、及び周辺装置インターフェース4915を含む。
A. Mobile Device The image editing and viewing application of some embodiments runs on a mobile device. FIG. 49 is an example of such a mobile computing device architecture 4900. Examples of mobile computing devices include smartphones, tablets, and laptops. As shown, mobile computing device 4900 includes one or more processing units 4905, a memory interface 4910, and a peripheral device interface 4915.

周辺装置インターフェース4915は、カメラサブシステム4920、無線通信サブシステム4925、オーディオサブシステム4930、I/Oサブシステム4935などを含めた、様々なセンサ及びサブシステムに結合される。周辺装置インターフェース4915は、処理ユニット4905と様々な周辺装置との間の通信を可能にする。例えば、方向センサ4945(例えば、ジャイロスコープ)及び加速度センサ4950(例えば、加速度計)は、方向及び加速度機能を容易にするために周辺装置インターフェース4915に結合される。   Peripheral device interface 4915 is coupled to various sensors and subsystems, including camera subsystem 4920, wireless communication subsystem 4925, audio subsystem 4930, I / O subsystem 4935, and the like. Peripheral device interface 4915 allows communication between processing unit 4905 and various peripheral devices. For example, a direction sensor 4945 (eg, a gyroscope) and an acceleration sensor 4950 (eg, an accelerometer) are coupled to the peripheral device interface 4915 to facilitate direction and acceleration functions.

カメラサブシステム4920は、1つ以上の光センサ4940(例えば、電荷結合素子(CCD)光センサ、相補型金属酸化膜半導体(CMOS)光センサなど)に結合される。光センサ4940と結合されたカメラサブシステム4920は、画像及び/又は映像データの取り込みなどの、カメラ機能を容易にする。無線通信サブシステム4925は、通信機能を容易にするために役立つ。一部の実施形態では、無線通信サブシステム4925は、無線周波数受信器及び送信器、並びに光受信器及び送信器(図49では図示せず)を含む。一部の実施形態のこれらの受信器及び送信器は、GSMネットワーク、Wi−Fiネットワーク、Bluetoothネットワークなどの1つ以上の通信ネットワークを介して動作するように実装される。オーディオサブシステム4930は、音声を出力するために、(例えば、種々の画像操作に関連付けられている種々の音響効果を出力するために)スピーカに結合される。更に、オーディオサブシステム4930は、音声認識、デジタル録音などの、音声対応機能を容易にするために、マイクロホンに結合される。   The camera subsystem 4920 is coupled to one or more photosensors 4940 (eg, charge coupled device (CCD) photosensors, complementary metal oxide semiconductor (CMOS) photosensors, etc.). A camera subsystem 4920 coupled with the optical sensor 4940 facilitates camera functions, such as capturing image and / or video data. The wireless communication subsystem 4925 serves to facilitate communication functions. In some embodiments, the wireless communication subsystem 4925 includes a radio frequency receiver and transmitter, and an optical receiver and transmitter (not shown in FIG. 49). In some embodiments, these receivers and transmitters are implemented to operate via one or more communication networks such as a GSM network, a Wi-Fi network, a Bluetooth network, and the like. Audio subsystem 4930 is coupled to a speaker (e.g., to output various acoustic effects associated with various image manipulations) to output audio. In addition, the audio subsystem 4930 is coupled to a microphone to facilitate voice-enabled functions such as voice recognition and digital recording.

I/Oサブシステム4935は、周辺装置インターフェース4915を通じて、ディスプレイ、タッチスクリーンなどの入出力周辺装置と処理ユニット4905のデータバスとの間の転送に関与する。I/Oサブシステム4935は、入出力周辺装置と処理ユニット4905のデータバスとの間の転送を容易にするために、タッチスクリーンコントローラ4955及び他の入力コントローラ4960を含む。図示のように、タッチスクリーンコントローラ4955は、タッチスクリーン4965に結合される。タッチスクリーンコントローラ4955は、複数のタッチ感応技術のいずれかを使用して、タッチスクリーン4965上の接触及び移動を検出する。他の入力コントローラ4960は、1つ以上のボタンなどの、他の入力/制御装置に結合される。一部の実施形態は、タッチ相互作用の代わりに、又はそれに加えて、ニアタッチ相互作用を検出することが可能な、ニアタッチ感応スクリーン及び対応するコントローラを含む。   The I / O subsystem 4935 is responsible for transfer between input / output peripherals such as displays, touch screens, etc., and the data bus of the processing unit 4905 through the peripheral interface 4915. The I / O subsystem 4935 includes a touch screen controller 4955 and other input controller 4960 to facilitate transfer between the input / output peripherals and the data bus of the processing unit 4905. As shown, touch screen controller 4955 is coupled to touch screen 4965. Touch screen controller 4955 detects touch and movement on touch screen 4965 using any of a plurality of touch sensitive techniques. The other input controller 4960 is coupled to other input / control devices, such as one or more buttons. Some embodiments include a near touch sensitive screen and corresponding controller capable of detecting near touch interaction instead of or in addition to touch interaction.

メモリインターフェース4910は、メモリ4970に結合される。一部の実施形態では、メモリ4970は、揮発性メモリ(例えば、高速ランダムアクセスメモリ)、不揮発性メモリ(例えば、フラッシュメモリ)、揮発性メモリと不揮発性メモリとの組み合わせ、及び/又は任意の他のタイプのメモリを含む。図49に示すように、メモリ4970は、オペレーティングシステム(OS)4972を記憶する。OS 4972は、基本システムサービスを処理するための命令、及び、ハードウェア依存タスクを実行するための命令を含む。   Memory interface 4910 is coupled to memory 4970. In some embodiments, the memory 4970 is volatile memory (eg, fast random access memory), non-volatile memory (eg, flash memory), a combination of volatile and non-volatile memory, and / or any other Including types of memory. As shown in FIG. 49, the memory 4970 stores an operating system (OS) 4972. The OS 4972 includes instructions for processing basic system services and instructions for executing hardware dependent tasks.

メモリ4970はまた、1つ以上の追加的装置との通信を容易にするための通信命令4974、グラフィカルユーザインターフェース処理を容易にするためのグラフィカルユーザインターフェース命令4976、画像関連の処理及び機能を容易にするための画像処理命令4978、入力関連(例えば、タッチ入力)の処理及び機能を容易にするための入力処理命令4980、オーディオ関連の処理及び機能を容易にするためのオーディオ処理命令4982、並びにカメラ関連の処理及び機能を容易にするためのカメラ命令4984も含む。上述の命令は、単なる例示であり、メモリ4970は、一部の実施形態では、更なる命令及び/又は他の命令を含む。例えば、スマートフォンに関するメモリは、電話関連のプロセス及び機能を容易にするための、電話命令を含み得る。上記で特定された命令は、個別のソフトウェアプログラム又はモジュールとして実装される必要はない。モバイルコンピューティング装置の様々な機能は、1つ以上の信号処理回路及び/又は特定用途向け集積回路を含めた、ハードウェア及び/又はソフトウェアとして実装することができる。   Memory 4970 also facilitates communication instructions 4974 to facilitate communication with one or more additional devices, graphical user interface instructions 4976 to facilitate graphical user interface processing, image-related processing and functions. Image processing instructions 4978, input processing instructions 4980 for facilitating input related (eg touch input) processing and functions, audio processing instructions 4982 for facilitating audio related processes and functions, and cameras Also included are camera instructions 4984 to facilitate related processing and functions. The instructions described above are merely exemplary, and memory 4970 includes additional instructions and / or other instructions in some embodiments. For example, memory for a smartphone may include telephone instructions to facilitate telephone related processes and functions. The instructions identified above need not be implemented as separate software programs or modules. Various functions of the mobile computing device can be implemented as hardware and / or software, including one or more signal processing circuits and / or application specific integrated circuits.

図49に示される構成要素は、個別の構成要素として示されるが、2つ以上の構成要素を1つ以上の集積回路内に統合することができる点が、当業者には認識されるであろう。更には、2つ以上の構成要素を、1つ以上の通信バス又は信号線によって、一体に結合することができる。また、これらの機能のうちの多くは、1つの構成要素によって実行されるとして説明されているが、図49に関連して説明される機能は、2つ以上の集積回路へと分割することができる点が、当業者には理解されるであろう。   The components shown in FIG. 49 are shown as separate components, but those skilled in the art will recognize that two or more components can be integrated into one or more integrated circuits. Let's go. Furthermore, two or more components can be coupled together by one or more communication buses or signal lines. Also, although many of these functions are described as being performed by one component, the functions described in connection with FIG. 49 may be divided into two or more integrated circuits. Those skilled in the art will understand what can be done.

B.コンピュータシステム
図50は、本発明の一部の実施形態が実装される、電子システム5000の別の実施例を概念的に示す。電子システム5000は、コンピュータ(例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータなど)、電話、PDA、又は任意の他の種類の電子装置若しくはコンピューティング装置とすることができる。そのような電子システムは、様々なタイプのコンピュータ可読媒体、及び様々な他のタイプのコンピュータ可読媒体のためのインターフェースを含む。電子システム5000は、バス5005、処理ユニット5010、グラフィック処理ユニット(GPU)5015、システムメモリ5020、ネットワーク5025、読み出し専用メモリ5030、永久記憶装置5035、入力装置5040、及び出力装置5045を含む。
B. Computer System FIG. 50 conceptually illustrates another example of an electronic system 5000 in which some embodiments of the present invention are implemented. The electronic system 5000 can be a computer (eg, desktop computer, personal computer, tablet computer, etc.), telephone, PDA, or any other type of electronic or computing device. Such electronic systems include various types of computer readable media and interfaces for various other types of computer readable media. The electronic system 5000 includes a bus 5005, a processing unit 5010, a graphics processing unit (GPU) 5015, a system memory 5020, a network 5025, a read only memory 5030, a permanent storage device 5035, an input device 5040, and an output device 5045.

バス5005は、電子システム5000の多数の内部装置を通信可能に接続する、全てのシステムバス、周辺装置バス、及びチップセットバスを、一括して表す。例えば、バス5005は、処理ユニット5010を、読み出し専用メモリ5030、GPU5015、システムメモリ5020、及び永久記憶装置5035と通信可能に結合する。   A bus 5005 collectively represents all system buses, peripheral device buses, and chipset buses that connect a large number of internal devices of the electronic system 5000 in a communicable manner. For example, bus 5005 communicatively couples processing unit 5010 to read only memory 5030, GPU 5015, system memory 5020, and permanent storage 5035.

これらの様々なメモリユニットから、処理ユニット5010は、本発明のプロセスを実行するために、実行するべき命令及び処理するべきデータを取得する。この処理ユニットは、異なる実施形態では、シングルプロセッサ又はマルチコアプロセッサとすることができる。一部の命令は、GPU5015に渡され、GPU5015によって実行される。GPU5015は、処理ユニット5010によって提供される、様々な計算をオフロードするか、又は画像処理を補完することができる。一部の実施形態では、そのような機能性は、CoreImageのカーネルシェーディング言語を使用して提供することができる。   From these various memory units, processing unit 5010 obtains instructions to execute and data to process in order to execute the process of the present invention. This processing unit may be a single processor or a multi-core processor in different embodiments. Some instructions are passed to the GPU 5015 and executed by the GPU 5015. The GPU 5015 can offload various computations provided by the processing unit 5010 or complement image processing. In some embodiments, such functionality may be provided using the CoreImage kernel shading language.

読み出し専用メモリ(ROM)5030は、処理ユニット5010、及び電子システムの他のモジュールによって必要とされる、静的データ並びに命令を記憶する。一方で、永久記憶装置5035は、読み出し及び書き込みメモリ装置である。この装置は、電子システム5000がオフの場合であっても、命令及びデータを記憶する、不揮発性メモリユニットである。本発明の一部の実施形態は、永久記憶装置5035として、大容量記憶装置(磁気若しくは光ディスク、及びその対応するディスクドライブなど)を使用する。   Read only memory (ROM) 5030 stores static data and instructions required by processing unit 5010 and other modules of the electronic system. On the other hand, the permanent storage device 5035 is a read / write memory device. This device is a non-volatile memory unit that stores instructions and data even when the electronic system 5000 is off. Some embodiments of the present invention use a mass storage device (such as a magnetic or optical disk and its corresponding disk drive) as the permanent storage device 5035.

他の実施形態は、永久記憶装置として、リムーバブル記憶装置(フロッピーディスク、フラッシュメモリ装置など、及びその対応するドライブ)を使用する。永久記憶装置5035と同様に、システムメモリ5020は、読み出し及び書き込みメモリ装置である。しかしながら、記憶装置5035とは異なり、システムメモリ5020は、ランダムアクセスメモリなどの、揮発性の読み出し及び書き込みメモリである。システムメモリ5020は、実行時にプロセッサが必要とする、命令及びデータのうちの一部を記憶する。一部の実施形態では、本発明のプロセスは、システムメモリ5020、永久記憶装置5035、及び/又は読み出し専用メモリ5030内に記憶される。例えば、一部の実施形態によれば、様々なメモリユニットは、マルチメディアクリップを処理するための命令を含む。これらの様々なメモリユニットから、処理ユニット5010は、一部の実施形態のプロセスを実行するために、実行するべき命令及び処理するべきデータを取得する。   Other embodiments use removable storage devices (floppy disks, flash memory devices, etc., and their corresponding drives) as permanent storage devices. Similar to permanent storage device 5035, system memory 5020 is a read and write memory device. However, unlike the storage device 5035, the system memory 5020 is a volatile read and write memory, such as a random access memory. System memory 5020 stores some of the instructions and data that the processor needs at runtime. In some embodiments, the processes of the present invention are stored in system memory 5020, permanent storage 5035, and / or read only memory 5030. For example, according to some embodiments, various memory units include instructions for processing multimedia clips. From these various memory units, processing unit 5010 obtains instructions to execute and data to process in order to execute the processes of some embodiments.

バス5005はまた、入力装置5040及び出力装置5045にも接続する。入力装置5040により、ユーザは、この電子システムに対して、情報を通信し、かつコマンドを選択することが可能となる。入力装置5040としては、英数字キーボード及びポインティング装置(「カーソル制御装置」とも称される)、カメラ(例えば、ウェブカメラ)、音声コマンドを受け取るためのマイクロホン又は同様の装置などが挙げられる。出力装置5045は、この電子システムによって生成された画像を表示するか、又は他の方式でデータを出力する。出力装置5045としては、プリンタ、及び陰極線管(CRT)若しくは液晶ディスプレイ(LCD)などのディスプレイ装置、並びにスピーカ又は同様のオーディオ出力装置が挙げられる。一部の実施形態は、入力装置及び出力装置の双方として機能する、タッチスクリーンなどの装置を含む。   Bus 5005 also connects to input device 5040 and output device 5045. The input device 5040 allows the user to communicate information and select commands to the electronic system. Input device 5040 may include an alphanumeric keyboard and pointing device (also referred to as a “cursor control device”), a camera (eg, a webcam), a microphone for receiving voice commands, or the like. The output device 5045 displays an image generated by the electronic system or outputs data in another manner. Examples of the output device 5045 include a printer, a display device such as a cathode ray tube (CRT) or a liquid crystal display (LCD), and a speaker or a similar audio output device. Some embodiments include devices such as touch screens that function as both input and output devices.

最後に、図50に示すように、バス5005はまた、ネットワークアダプタ(図示せず)を通じて、電子システム5000をネットワーク5025にも結合する。この方式で、コンピュータは、コンピュータのネットワーク(ローカルエリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、又はイントラネットなど)の一部、又は複数のネットワークのネットワーク(例えばインターネット)の一部とすることができる。電子システム5000のいずれか又は全ての構成要素を、本発明と共に使用することができる。   Finally, as shown in FIG. 50, bus 5005 also couples electronic system 5000 to network 5025 through a network adapter (not shown). In this manner, a computer is considered part of a network of computers (such as a local area network (“LAN”), a wide area network (“WAN”), or an intranet), or part of a network of networks (eg, the Internet) can do. Any or all of the components of the electronic system 5000 can be used with the present invention.

一部の実施形態は、マイクロプロセッサ、機械可読若しくはコンピュータ可読媒体(あるいは、コンピュータ可読記憶媒体、機械可読媒体、又は機械可読記憶媒体とも称される)内にコンピュータプログラム命令を記憶する記憶装置及びメモリなどの、電子構成要素を含む。そのようなコンピュータ可読媒体の一部の例としては、RAM、ROM、読み出し専用コンパクトディスク(CD−ROM)、記録可能コンパクトディスク(CD−R)、書換え可能コンパクトディスク(CD−RW)、読み出し専用デジタル多目的ディスク(例えば、DVD−ROM、2層DVD−ROM)、様々な記録可能/書換え可能DVD(例えば、DVD−RAM、DVD−RW、DVD+RWなど)、フラッシュメモリ(例えば、SDカード、ミニSDカード、マイクロSDカードなど)、磁気及び/又はソリッドステートハードドライブ、読み出し専用記録可能Blu−Ray(登録商標)ディスク、超高密度光ディスク、任意の他の光学若しくは磁気媒体、及びフロッピーディスクが挙げられる。コンピュータ可読媒体は、少なくとも1つの処理ユニットによって実行可能であり、かつ様々な操作を実行するための命令のセットを含む、コンピュータプログラムを記憶することができる。コンピュータプログラム又はコンピュータコードの例としては、コンパイラによって作成されるような機械コード、及び、インタープリタを使用して、コンピュータ、電子構成要素、若しくはマイクロプロセッサによって実行される高レベルコードを含むファイルが挙げられる。   Some embodiments include a storage device and memory for storing computer program instructions in a microprocessor, machine readable or computer readable medium (also referred to as computer readable storage medium, machine readable medium, or machine readable storage medium). Including electronic components. Some examples of such computer readable media include RAM, ROM, read-only compact disc (CD-ROM), recordable compact disc (CD-R), rewritable compact disc (CD-RW), read-only. Digital multipurpose disc (eg, DVD-ROM, dual layer DVD-ROM), various recordable / rewritable DVDs (eg, DVD-RAM, DVD-RW, DVD + RW, etc.), flash memory (eg, SD card, mini SD) Cards, micro SD cards, etc.), magnetic and / or solid state hard drives, read-only recordable Blu-Ray® disks, ultra high density optical disks, any other optical or magnetic media, and floppy disks. . The computer readable medium can store a computer program that is executable by at least one processing unit and includes a set of instructions for performing various operations. Examples of computer programs or computer code include machine code as created by a compiler and files containing high-level code that are executed by a computer, electronic component, or microprocessor using an interpreter. .

上記の考察は、主に、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサに言及しているが、一部の実施形態は、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)などの、1つ以上の集積回路によって実行される。一部の実施形態では、そのような集積回路は、その回路自体に記憶されている命令を実行する。更には、一部の実施形態は、プログラマブルロジックデバイス(PLD)、ROM、又はRAMデバイス内に記憶されたソフトウェアを実行する。   Although the above discussion primarily refers to microprocessors or multi-core processors executing software, some embodiments may include application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs), Performed by one or more integrated circuits. In some embodiments, such an integrated circuit executes instructions stored in the circuit itself. Further, some embodiments execute software stored in a programmable logic device (PLD), ROM, or RAM device.

本出願の本明細書及びいずれかの特許請求の範囲で使用されるとき、用語「コンピュータ」、「サーバ」、「プロセッサ」、及び「メモリ」は全て、電子装置又は他の技術装置を指す。これらの用語は、人々又は人々のグループを除外する。本明細書の目的上、用語「表示」又は「表示すること」は、電子装置上に表示することを意味する。本出願の本明細書及びいずれかの特許請求の範囲で使用されるとき、用語「コンピュータ可読媒体」及び「機械可読媒体」は、コンピュータによって読み出し可能な形式で情報を記憶する、有形の物理的実体に完全に限定される。これらの用語は、あらゆる無線信号、有線でダウンロードされる信号、及びあらゆる他の一過性の信号を除外する。   As used herein and in any claim, the terms “computer”, “server”, “processor”, and “memory” all refer to an electronic device or other technical device. These terms exclude people or groups of people. For the purposes of this specification, the term “display” or “displaying” means displaying on an electronic device. As used herein and in any claim, the terms “computer-readable medium” and “machine-readable medium” refer to tangible physical storage that stores information in a form readable by a computer. Fully limited to the entity. These terms exclude all wireless signals, signals downloaded over the wire, and any other transient signals.

本発明は、数多くの特定の詳細を参照して説明されているが、当業者には、本発明の趣旨から逸脱することなく、他の特定の形式で本発明を具体化することができる点が認識されるであろう。例えば、図の多くは、様々なタッチジェスチャ(例えば、タップ、ダブルタップ、スワイプジェスチャ、プレスアンドホールドジェスチャなど)を示す。しかしながら、図示される操作のうちの多くは、異なるタッチジェスチャ(例えば、タップの代わりのスワイプなど)を介して、又は非タッチ入力によって(例えば、カーソルコントローラ、キーボード、タッチパッド/トラックパッド、ニアタッチ感応スクリーンなどを使用して)実行することが可能である。更に、(図16、17、19、26、28、36、44、及び図45を含めた)幾つかの図は、プロセスを概念的に示す。これらのプロセスの具体的な操作は、図示及び説明された厳密な順序では、実行されない場合がある。特定の操作は、1つの連続系列の操作で実行されない場合があり、様々な特定の操作を、様々な実施形態で実行することができる。更には、このプロセスは、幾つかのサブプロセスを使用して、又はより大きいマクロプロセスの一部として、実施することが可能である。したがって、本発明は、前述の例示的な詳細によって限定されるものではなく、むしろ、添付の特許請求の範囲によって定義されるものであることが、当業者には理解されるであろう。   Although the invention has been described with reference to numerous specific details, those skilled in the art can embody the invention in other specific forms without departing from the spirit of the invention. Will be recognized. For example, many of the figures show various touch gestures (eg, tap, double tap, swipe gesture, press and hold gesture, etc.). However, many of the illustrated operations are performed via different touch gestures (eg, swipe instead of taps) or by non-touch input (eg, cursor controller, keyboard, touch pad / trackpad, near touch sensitive). (Using a screen etc.). In addition, some figures (including FIGS. 16, 17, 19, 26, 28, 36, 44, and 45) conceptually illustrate the process. The specific operations of these processes may not be performed in the exact order shown and described. Certain operations may not be performed in one continuous sequence of operations, and various specific operations may be performed in various embodiments. Furthermore, this process can be implemented using several sub-processes or as part of a larger macro process. Accordingly, it will be appreciated by one skilled in the art that the present invention is not limited by the foregoing illustrative details, but rather is defined by the appended claims.

更には、種々の画像編集操作を実行するために使用される、単一の調整値を設定するためのコントロールは、図3、4、6、7、9、14、15、20、21、22、23、24、31、32、33、34、及び図35では、スライダコントロールとして示される。そのような実施形態のスライダは、そのスライダに関する値を設定するためにスライダに沿ってつまみがスライドされるときに、設定値の視覚的な表示を提供する。しかしながら、一部の実施形態では、それらの図のいずれかで示されるスライダコントロールは、垂直式スライダコントロール、プルダウンメニュー、値エントリボックス、キーボードのキーによってアクティブ化されるインクリメンタルツール、他の範囲関連UIコントロール(例えば、ダイヤル、ボタン、数値フィールドなど)のような、値(例えば、単一の値)を受け取ることが可能な、任意の他のコントロールと置き換えることが可能である。同様に、それらの図のスライダコントロールは、タッチ感応スクリーン上での指ジェスチャ(例えば、1つ以上の指を置くこと、指さすこと、タップすること)で設定されるように表現されるか、又は、それらのスライダコントロールがどのように所定位置に移動されたかが表示されることなく、単純に特定の位置で表示される。図3、4、6、7、9、14、15、20、21、22、23、24、31、32、33、34、及び図35のコントロールはまた、一部の実施形態では、カーソル制御装置(例えば、マウス又はトラックボール)、スタイラス、キーボード、ニアタッチ感応スクリーン付近での指ジェスチャ(例えば、1つ以上の指を置くこと、指さすこと、タップすること)、又は任意の他の制御システムによっても、アクティブ化及び/又は設定することができる点が、当業者には理解されるであろう。したがって、本発明は、前述の例示的な詳細によって限定されるものではなく、むしろ、添付の特許請求の範囲によって定義されるものであることが、当業者には理解されるであろう。   Furthermore, the controls for setting a single adjustment value used to perform various image editing operations are shown in FIGS. 3, 4, 6, 7, 9, 14, 15, 20, 21, 22. , 23, 24, 31, 32, 33, 34 and FIG. 35 are shown as slider controls. The slider in such an embodiment provides a visual display of the set value when the knob is slid along the slider to set a value for that slider. However, in some embodiments, the slider controls shown in any of these figures may include vertical slider controls, pull-down menus, value entry boxes, incremental tools activated by keyboard keys, and other range-related UIs. Any other control that can receive a value (eg, a single value), such as a control (eg, a dial, button, numeric field, etc.) can be substituted. Similarly, the slider controls in those figures may be expressed as set by a finger gesture (eg, placing one or more fingers, pointing, tapping) on the touch-sensitive screen, or The slider control is simply displayed at a specific position without displaying how the slider control is moved to a predetermined position. The controls of FIGS. 3, 4, 6, 7, 9, 14, 15, 20, 21, 22, 23, 24, 31, 32, 33, 34, and FIG. 35 are also cursor control in some embodiments. By a device (eg, mouse or trackball), stylus, keyboard, finger gesture near the touch sensitive screen (eg, placing, pointing, tapping one or more fingers), or any other control system However, those skilled in the art will appreciate that they can also be activated and / or set. Accordingly, it will be appreciated by one skilled in the art that the present invention is not limited by the foregoing illustrative details, but rather is defined by the appended claims.

Claims (19)

少なくとも1つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムあって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記プログラムが、
複数のユーザインターフェース項目を表示することと、
ここでユーザインターフェース項目それぞれは、複数の予め定義されたコンテンツタイプ内において、異なるコンテンツタイプと関連付けられている;
画像の色値を調整するため、前記複数のユーザインターフェース項目における特定のユーザインターフェース項目に対する調整を受けとることと、
ここで、前記特定のユーザインターフェース項目は、前記複数の予め定義されたコンテンツタイプ内の、或る予め定義されたコンテンツタイプに関連付けられている;
前記特定のユーザインターフェース項目に対して受け付けた調整に基づき当該特定のユーザインターフェース項目に関連付けられた、予め定義されたコンテンツタイプに関連付けられた色値の範囲内にある画素値を持つ画素のサブセットを特定することと、
前記特定のユーザインターフェース項目に対して受け付けた調整に基づき、前記特定された画素のサブセットに対して、色調整操作を実行することと、
に関する命令のセットを含むことを特徴とするプログラム
Has a set of instructions to be executed by at least one processing unit, a program for adjusting the color values of an image represented by the color space, wherein said image includes a plurality of pixels, each pixel Has a set of color values,
The program is
Displaying multiple user interface items;
Where each user interface item is associated with a different content type within a plurality of predefined content types;
Receiving adjustments for specific user interface items in the plurality of user interface items to adjust color values of the image ;
Wherein the specific user interface item is associated with a predefined content type within the plurality of predefined content types;
A subset of pixels having pixel values within a range of color values associated with a predefined content type associated with the particular user interface item based on the adjustments received for the particular user interface item. To identify,
Performing a color adjustment operation on the identified subset of pixels based on the adjustments received for the specific user interface item ;
A program characterized by including a set of instructions for.
前記複数の予め定義されたコンテンツイプは、空、群葉、及び肌の色調であることを特徴とする請求項1に記載のプログラムWherein the plurality of predefined content type, empty, foliage, and program according to claim 1, which is a skin tone. 前記特定された画素が、前記画像内で連続的領域を形成しない、ことを特徴とする請求項1に記載のプログラムThe program according to claim 1, wherein the identified pixels do not form a continuous area in the image. 前記色調整操作が、前記特定された画素のサブセットの彩度を調整するための操作、前記特定された画素のサブセットの明度を調整するための操作、及び前記特定された画素のサブセットのコントラストを調整するための調整の1つを含む、ことを特徴とする請求項1に記載のプログラムThe color adjustment operation comprises: an operation for adjusting a saturation of the identified subset of pixels; an operation for adjusting a brightness of the identified subset of pixels; and a contrast of the identified subset of pixels. The program according to claim 1, comprising one of adjustments for adjustment. 前記色調整操作が、前記空間内で実行される、ことを特徴とする請求項1に記載のプログラムThe program according to claim 1, wherein the color adjustment operation is executed in the color space. 色空間内で表される画像の色値を調整するための装置であって、前記画像が画素のセットを含み、各画素が色値のセットを含み、前記装置が、
複数のユーザインターフェースコントロールと、
ここでユーザインターフェースコントロールそれぞれは、複数の予め定義されたコンテンツタイプ内において、異なるコンテンツタイプと関連付けられており、
ユーザインターフェースコントロールそれぞれは、対応する予め定義されたコンテンツイプに関連付けられた、前記画像の色値の調整するための入力を受け付けるためのもである;
前記入力を受け付けるユーザインターフェースコントロールに対して受け付けた調整に基づき、当該入力を受け付けたユーザインターフェースコントロールに関連付けられた予め定義されたコンテンツタイプに関連付けられた、予め定義された色値の範囲内の画素値を有する画素のサブセットを特定するための画素分離器と、
前記入力を受け付けたユーザインターフェースコントロールに対して受け付けた調整に基づいて、前記特定された画素のサブセットの前記色値を調整するための色調整器と、
を含む、ことを特徴とする装置。
An apparatus for adjusting color values of an image represented in a color space, wherein the image includes a set of pixels, each pixel includes a set of color values, and the apparatus includes:
Multiple user interface controls ,
Here, each of the user interface controls is associated with a different content type within a plurality of predefined content types,
Each user interface controls, associated with the corresponding predefined content type, by also to for receiving an input for adjusting the color values of the image;
Pixels within a predefined color value range associated with a predefined content type associated with the user interface control that received the input based on the adjustments received for the user interface control that receives the input A pixel separator for identifying a subset of pixels having values ;
A color adjuster for adjusting the color value of the identified subset of pixels based on an adjustment received for the user interface control that received the input ;
A device characterized by comprising.
記色値の範囲、前記画像の前記色値が定義される前記色空間とは異なる反対色空間内で定義され、前記装置が、前記画像の前記色値を前記反対色空間に変換するための色空間変換器を更に含む、ことを特徴とする請求項に記載の装置。 Range before Kiirochi, the said color space in which the color values of the image are defined as defined in different opponent color space, the device converts the color values of the image on the opposite color space further comprising, the apparatus of claim 6, wherein the color space converter for. 前記色調整器が、前記反対色空間内で、前記特定された画素のサブセットの前記色値を調整する、ことを特徴とする請求項に記載の装置。 The color regulator, said opposite color space, adjusting the color values of a subset of the identified pixels, that the device according to claim 7, characterized in. 少なくとも1つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムであって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記ログラムが、
タッチ入力を介して前記画像上の場所の選択を受け取ることと、
前記択された場所に基づき、前記画像上の前記選択された場所に関連付けられている特定のコンテンツイプを判定することと、
複数の異なるコンテンツタイプ用の複数の異なる方向画像編集コントロールのセットから、特定のコンテンツタイプ用の複数の異なる画像編集コントロールのセットを選択し、前記画像上に表示することと、
ここで、画像編集コントロールのセットのそれぞれは、前記画像編集コントロールのセット内のコントロールに沿った少なくとも2つの異なる方向に関連付けられた少なくとも2つの異なる画像編集操作を特定する;
前記タッチ入力が維持され、前記画像編集コントロールの特定のセットの方向における、1つの特定の方向に沿って当該タッチ入力が移動している間、前記特定の方向に関連付けられた画像編集操作を、前記画像に対して実行することと、
命令のセットを含む、ことを特徴とするプログラム
A program for adjusting a color value of an image represented in a color space, having an instruction set executed by at least one processing unit , wherein the image has a plurality of pixels, and each pixel Has a set of color values,
The program is,
Receiving a selection of locations on the image via touch input ;
And determining the specific content types associated with the selection on the basis of-option location, the selected location on the image,
Selecting a plurality of different sets of image editing controls for a particular content type from a plurality of sets of different directional image editing controls for a plurality of different content types , and displaying them on the image;
Here, each set of image editing controls identifies at least two different image editing operations associated with at least two different directions along the controls in said set of image editing controls;
While the touch input is maintained and the touch input is moving along one specific direction in a specific set of directions of the image editing control, an image editing operation associated with the specific direction is performed. Performing on the image;
A program comprising a set of instructions.
前記コンテンツイプ、人の肌色、空、及び群葉のうちの1つである、ことを特徴とする請求項に記載のプログラムThe content type is a human skin color, sky, and is one of the foliage, the program according to claim 9, characterized in that. 少なくとも1つの処理ユニットによって実行される命令セットを有し、色空間で表される画像の色値を調整するためのプログラムあって、ここで、前記画像は複数の画素を有し、各画素は色値のセットを持つ、
前記ログラムが、
タッチ入力を介した、表示された画像上の場所の選択に応じて、前記画像上の選択された場所に関連付けられた特定のコンテンツタイプを判定することと、
前記画像上に、方向画像編集コントロールの第1、第2のセットを表示することと、
ここで、画像編集コントロールのセットのそれぞれは、前記画像編集コントロールのセット内のコントロールに沿った少なくとも2つの異なる方向に関連付けられた少なくとも2つの異なる画像編集操作を特定する;
前記画像編集コントロールの前記第1のセットは、前記特定のコンテンツタイプに適用される画像編集操作用であり、
前記画像編集コントロールの前記第2のセットは、前記画像の全体に適用される画像編集操作用である;
前記タッチ入力が維持され、前記方向画像編集コントロールの前記第1、第2のセットにおける特定のコントロールに沿って当該タッチ入力が移動している間、前記特定の方向に関連付けられた画像編集操作を実行することと、
命令のセットを含む、ことを特徴とするプログラム
Has a set of instructions to be executed by at least one processing unit, a program for adjusting the color values of an image represented by the color space, wherein said image includes a plurality of pixels, each pixel Has a set of color values,
The program is,
Determining a specific content type associated with the selected location on the image in response to the selection of the location on the displayed image via touch input;
Displaying a first and second set of directional image editing controls on the image;
Here, each set of image editing controls identifies at least two different image editing operations associated with at least two different directions along the controls in said set of image editing controls;
The first set of image editing controls is for image editing operations applied to the specific content type;
The second set of image editing controls is for image editing operations applied to the entire image;
While the touch input is maintained and the touch input is moving along specific controls in the first and second sets of directional image editing controls, an image editing operation associated with the specific direction is performed. Running,
A program comprising a set of instructions.
前記プログラムが、前記特定のコントロールに沿った前記タッチ入力の移動に基づいて、適用するべき前記画像編集操作の量を決定するための命令のセットを更に含む、ことを特徴とする請求項11に記載のプログラムSaid program, based on the movement of the line with a specific control the touch input, further comprising a set of instructions for determining the amount of the image editing operation to be applied, that to claim 11, wherein The program described. 少なくとも1つの処理ユニットによって実行される命令セットを有し、色空間内で表される画像の色値に対して色バランス操作を実行するプログラムであって、
前記ログラムが、
複数の画素を含む前記画像上の場所の選択を受け取ることと、ここで各画素色値のセットを含む
前記画像の前記選択された場所に対応する画素のセットの色値のセットに基づいて、前記色値のセットを前記色バランス操作の特定のタイプに関連付けられた色値の所定セットへ修正するための色調整を特定することと、
前記特定された色調整に基づき、前記色空間を修正する色空間変換を生成することと、
前記画像の画素のサブセットに前記色空間変換を適用することで、前記画像に対し、前記色バランス操作の特定のタイプを実行することと、
命令のセットを含む、ことを特徴とするプログラム
Has a set of instructions to be executed by at least one processing unit, a program for executing a color balance operation on the color values of an image represented in the color space,
The program is,
Receiving a selection of locations on the image including a plurality of pixels, wherein each pixel includes a set of color values ;
Based on the set of color values of the set of pixels corresponding to the selected location of the image, to modify the set of color values to a predetermined set of color values associated with a particular type of color balance operation Identifying color adjustments for
Generating a color space transformation to modify the color space based on the identified color adjustment ;
Performing a particular type of the color balance operation on the image by applying the color space transformation to a subset of pixels of the image;
A program comprising a set of instructions.
前記生成された色空間変換が、前記画像内の画素のセットの各画素の色値を、異なる色値のセットにマッピングする、ことを特徴とする請求項13に記載のプログラムThe program according to claim 13 , wherein the generated color space conversion maps the color value of each pixel of a set of pixels in the image to a different set of color values. 前記色調整を特定するための前記命令のセットが、灰色の色値のセットを、前記色値の所定セットとして、使用するための命令のセットを含む、ことを特徴とする請求項13に記載のプログラムThe set of instructions for identifying the color adjustment, a set of gray color values, as a predetermined set of color values, according to claim 13 comprising a set of instructions for use, characterized in that Program . 前記色調整を特定するための前記命令のセットが、肌色の色値のセットを、前記色値の所定セットとして、使用するための命令のセットを含む、ことを特徴とする請求項13に記載のプログラムThe set of instructions for identifying the color adjustment, a set of color values of the skin color, as a predetermined set of color values, according to claim 13 comprising a set of instructions for use, it is characterized by Program . 前記プログラムが、前記画像上の前記選択された場所の周囲にユーザインターフェース項目を表示する命令のセットを更に含む、ことを特徴とする請求項13に記載のプログラムIt said program further comprises a program according to claim 13, wherein the set of instructions for displaying the user interface item around the selected location on the image. 前記色調整は第1の色調整であり、前記色空間変換は第1の色空間変換であって、
前記プログラムは、
前記ユーザインターフェース項目を、第1の場所から前記画像上の異なる第2の場所へ移動させることと、
前記画像の前記第2の場所に対応する、素のセットの色値のセットに基づいて、第2の色調整を特定することと、
前記第2の色調整に基づいて、前記色空間を修正する第2の色空間変換を生成することと、
前記第2の色空間変換を前記画像の画素のサブセットに適用することで、前記画像に対して別の色バランス操作を実行することと
命令のセットを更に含む、ことを特徴とする請求項17に記載のプログラム
The color adjustment is a first color adjustment, and the color space conversion is a first color space conversion;
The program is
Moving the user interface item from a first location to a different second location on the image;
And correspond to the second location of the image, based on a set of color values of a set of picture element, to identify the second color adjustment,
Generating a second color space transformation to modify the color space based on the second color adjustment;
By applying the second color space conversion to a subset of pixels of the image, and performing a different color balance operation on the image,
The program according to claim 17 , further comprising a set of instructions.
前記プログラムが、前記ユーザインターフェース項目によって特定される前記画像の領域の、ズーミングレベルを調整するための命令のセットを更に含む、ことを特徴とする請求項17に記載のプログラム。 The program according to claim 17 , further comprising a set of instructions for adjusting a zooming level of a region of the image specified by the user interface item.
JP2014560912A 2012-03-06 2013-01-08 Color adjuster for color classification Active JP5990600B2 (en)

Applications Claiming Priority (19)

Application Number Priority Date Filing Date Title
US201261607569P 2012-03-06 2012-03-06
US201261607525P 2012-03-06 2012-03-06
US201261607550P 2012-03-06 2012-03-06
US201261607554P 2012-03-06 2012-03-06
US201261607574P 2012-03-06 2012-03-06
US61/607,569 2012-03-06
US61/607,525 2012-03-06
US61/607,574 2012-03-06
US61/607,550 2012-03-06
US61/607,554 2012-03-06
US201261741768P 2012-05-15 2012-05-15
US61/741,768 2012-05-15
US13/629,417 US9105121B2 (en) 2012-03-06 2012-09-27 Image editing with user interface controls overlaid on image
US13/629,417 2012-09-27
US13/629,428 2012-09-27
US13/629,399 US9159144B2 (en) 2012-03-06 2012-09-27 Color adjustors for color segments
US13/629,399 2012-09-27
US13/629,428 US9299168B2 (en) 2012-03-06 2012-09-27 Context aware user interface for image editing
PCT/US2013/020703 WO2013133905A1 (en) 2012-03-06 2013-01-08 Color adjustors for color segments

Publications (2)

Publication Number Publication Date
JP2015518295A JP2015518295A (en) 2015-06-25
JP5990600B2 true JP5990600B2 (en) 2016-09-14

Family

ID=49117182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014560912A Active JP5990600B2 (en) 2012-03-06 2013-01-08 Color adjuster for color classification

Country Status (4)

Country Link
JP (1) JP5990600B2 (en)
CN (1) CN104221359B (en)
GB (1) GB2513499B (en)
WO (1) WO2013133905A1 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9299168B2 (en) 2012-03-06 2016-03-29 Apple Inc. Context aware user interface for image editing
US20130238747A1 (en) 2012-03-06 2013-09-12 Apple Inc. Image beaming for a media editing application
US9202433B2 (en) 2012-03-06 2015-12-01 Apple Inc. Multi operation slider
US9131192B2 (en) 2012-03-06 2015-09-08 Apple Inc. Unified slider control for modifying multiple image properties
US9041727B2 (en) 2012-03-06 2015-05-26 Apple Inc. User interface tools for selectively applying effects to image
EP2851900B1 (en) 2013-09-18 2017-08-23 Nxp B.V. Media content real time analysis and semi-automated summarization for capturing a fleeting event.
CN110174984B (en) * 2013-12-27 2021-07-16 联想(北京)有限公司 Information processing method and electronic equipment
JP5907196B2 (en) * 2014-02-28 2016-04-26 富士ゼロックス株式会社 Image processing apparatus, image processing method, image processing system, and program
JP2015166969A (en) * 2014-03-04 2015-09-24 株式会社ニコン Image processing apparatus and image processing program
CN104394320B (en) * 2014-11-26 2018-09-11 三星电子(中国)研发中心 Handle the method, apparatus and electronic equipment of image
JP6265145B2 (en) 2015-01-26 2018-01-24 ソニー株式会社 Information processing apparatus, information processing method, program, and display apparatus
EP3254283B1 (en) * 2015-03-27 2021-05-12 Google LLC User sliders for simplified adjustment of images
EP3264251B1 (en) 2016-06-29 2019-09-04 Dassault Systèmes Generation of a color of an object displayed on a gui
KR102630191B1 (en) * 2016-08-18 2024-01-29 삼성전자 주식회사 Electronic apparatus and method for controlling thereof
CN107817939B (en) * 2017-10-27 2023-02-07 维沃移动通信有限公司 Image processing method and mobile terminal
KR102075389B1 (en) * 2018-09-13 2020-02-10 인천대학교 산학협력단 Electronic device for painting characters in animation and operating method thereof
CN110554823B (en) * 2019-09-10 2021-04-20 腾讯科技(深圳)有限公司 Image processing method, device, equipment and storage medium
JP7558707B2 (en) * 2020-08-03 2024-10-01 キヤノン株式会社 Information processing device, information processing method, and program
CN112099680B (en) * 2020-09-01 2022-02-11 维沃移动通信有限公司 User interface adjusting method and device and electronic equipment
US11438484B2 (en) * 2021-01-27 2022-09-06 Dell Products L.P. Color temperature adjustment independent of scaler color space
CN113590065B (en) * 2021-07-28 2024-01-16 展讯通信(天津)有限公司 Color adjustment method and device, storage medium and display device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US607554A (en) 1898-07-19 Pyroxylin composition of matter
JP2000036042A (en) * 1998-07-17 2000-02-02 Sony Corp Picture processor, picture processing method and supply medium
US7215813B2 (en) * 2001-12-03 2007-05-08 Apple Computer, Inc. Method and apparatus for color correction
JP4203791B2 (en) * 2002-12-19 2009-01-07 ソニー株式会社 Imaging apparatus, color adjustment apparatus, and color adjustment method
US8243326B2 (en) * 2006-09-11 2012-08-14 Electronics For Imaging, Inc. Methods and apparatus for color profile editing
WO2008114436A1 (en) * 2007-03-20 2008-09-25 Pioneer Corporation Image processing device, display system, image processing method, its program, and recording medium with the program recorded therein
JP2008271096A (en) * 2007-04-19 2008-11-06 Mitsubishi Denki Micom Kiki Software Kk Method and device for correcting gray balance of image data, and storage medium
US8009177B2 (en) * 2008-02-11 2011-08-30 Apple Inc. User interfaces for managing image colors
JP2010211497A (en) * 2009-03-10 2010-09-24 Nikon Corp Digital camera and image processing program
JP5695335B2 (en) * 2009-05-22 2015-04-01 オリンパスイメージング株式会社 Imaging condition control device, camera, image quality control device, and program
US8468465B2 (en) * 2010-08-09 2013-06-18 Apple Inc. Two-dimensional slider control

Also Published As

Publication number Publication date
JP2015518295A (en) 2015-06-25
CN104221359A (en) 2014-12-17
GB201413675D0 (en) 2014-09-17
CN104221359B (en) 2018-01-12
GB2513499B (en) 2019-07-24
GB2513499A (en) 2014-10-29
WO2013133905A1 (en) 2013-09-12

Similar Documents

Publication Publication Date Title
JP5990600B2 (en) Color adjuster for color classification
US9159144B2 (en) Color adjustors for color segments
US11481097B2 (en) User interface tools for cropping and straightening image
JP6077020B2 (en) Integrated slider control for modifying multiple image properties
US9092893B2 (en) Method and interface for converting images to grayscale
US8823726B2 (en) Color balance
US8854370B2 (en) Color waveform
US7593603B1 (en) Multi-behavior image correction tool
US20150109323A1 (en) Interactive black and white image editing
JP2009278623A (en) Method and apparatus for performing touch-based adjustments within imaging device
US20140063047A1 (en) Duotone effect

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151030

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160210

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160725

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160815

R150 Certificate of patent or registration of utility model

Ref document number: 5990600

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250