User interface camera effect

Efficient camera effect management methods on electronic devices address inefficiencies by enabling quick navigation and minimal input, conserving battery power and improving user experience.

JP2025165928APending Publication Date: 2025-11-05APPLE INC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2025110542
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2017-10-09
Filing Date
2025-06-30
Publication Date
2025-11-05

AI Technical Summary

Technical Problem

Existing techniques for manipulating camera effects on electronic devices are cumbersome, inefficient, and require significant user input, leading to wasted time and energy, particularly in battery-operated devices.

Method used

Faster and more efficient methods and interfaces for managing camera effects, including simultaneous display of a digital viewfinder and filter picker interface, allowing for quick navigation and minimal user input, and utilizing depth map information for enhanced image editing and lighting effects.

Benefits of technology

Reduces cognitive burden, conserves battery power, and enhances user experience by providing efficient image editing and navigation with minimal input, while maintaining visual quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025165928000001_ABST
    Figure 2025165928000001_ABST
Patent Text Reader

Abstract

To provide a technique that provides electronic devices with faster, more efficient methods and interfaces for managing camera effects.SOLUTION: The methods and interfaces optionally complement or replace other methods for managing camera effects, reduce the cognitive burden on a user and produce a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges. Such a technique provides simulated visual effects in camera viewfinders and captured images without requiring additional hardware components. An electronic device provides for transitioning between simulated lighting effects, applies a simulated lighting effect to an image, provides user interfaces for applying a filter to an image, provides a reduced filter interface, and provides a visual aid displayed in the viewfinder.SELECTED DRAWING: Figure 5D
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This application claims priority to U.S. Provisional Patent Application No. 15 / 728,147, entitled "USER INTERFACE CAMERA EFFECTS," filed October 9, 2017, which claims priority to U.S. Provisional Patent Application No. 62 / 556,414, entitled "USER INTERFACE CAMERA EFFECTS," filed September 9, 2017, and U.S. Provisional Patent Application No. 62 / 514,947, entitled "USER INTERFACE CAMERA EFFECTS," filed June 4, 2017. This application also claims priority to Danish Patent Application Nos. PA201770563, filed July 10, 2017, entitled "USER INTERFACE CAMERA EFFECTS," and PA201770719, filed September 22, 2017, entitled "USER INTERFACE CAMERA EFFECTS," the contents of which are incorporated herein by reference in their entirety for all purposes.

[0002] The present disclosure relates generally to computer user interfaces for electronic devices, and more particularly to devices with built-in cameras. [Background technology]

[0003] The use of electronic devices for recording video and taking photographs has increased significantly in recent years. Exemplary electronic devices for recording video and taking photographs include smartphones and handheld cameras. Such devices often include a viewfinder that a user can use to preview a photo or video before taking it. Summary of the Invention

[0004] However, some techniques for manipulating camera effects using electronic devices are generally cumbersome and inefficient. For example, changing the visual effect in the viewfinder so that captured images and recorded videos exhibit the visual effect often requires significant user input and is imprecise. Existing techniques take longer than necessary, wasting the user's time and the device's energy. The latter problem is particularly acute in battery-operated devices.

[0005] Thus, the present technology provides electronic devices with faster, more efficient methods and interfaces for managing camera effects. Such methods and interfaces optionally complement or replace other methods for managing camera effects. Such methods and interfaces reduce the cognitive burden on users and create a more efficient human-machine interface. For battery-operated computing devices, such methods and interfaces conserve power and increase the time between battery charges. In some embodiments, the technology provides simulated visual effects in camera viewfinders and captured images without requiring additional hardware components. In some embodiments, the technology provides the ability to quickly navigate between user interfaces with limited user input. In some embodiments, the technology efficiently provides enhanced image editing capabilities that produce visually pleasing results for displayed digital viewfinders and captured video. In some embodiments, the technology efficiently provides a user interface for navigating between different sets of options with minimal input. In some embodiments, the technology efficiently provides a user interface for providing additional functionality without requiring any direct input. Such a technology reduces the number of required user inputs and conserves battery power.

[0006] An example method includes, in an electronic device having one or more cameras, one or more input devices, and a display, simultaneously displaying on the display a camera application user interface including a digital viewfinder including a live preview of a field of view of the one or more cameras and a representation of a filter picker user interface overlaying the digital viewfinder; detecting a first input via the one or more input devices while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface starting at a position corresponding to a respective portion of the live preview; in response to detecting the first input, applying a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied when the first input is detected, the first criterion including a requirement that the filter picker user interface overlays a respective portion of the live preview; and performing a respective operation in the camera application without applying a preview of the first filter to the live preview in accordance with a determination that the filter picker user interface does not overlay a respective portion of the live preview when the first input is detected.

[0007] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including one or more cameras, one or more input devices, and a display, the one or more programs including instructions to simultaneously display on the display a camera application user interface including a digital viewfinder including a live preview of a field of view of the one or more cameras and a representation of a filter picker user interface overlaying the digital viewfinder, detect a first input via the one or more input devices while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface starting at a position corresponding to a respective portion of the live preview, and, in response to detecting the first input, apply a preview of a first filter to the live preview of the field of view of the cameras that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that the filter picker user interface overlay a respective portion of the live preview when the first input is detected, and perform respective operations in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface does not overlay a respective portion of the live preview when the first input is detected.

[0008] An exemplary temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including one or more cameras, one or more input devices, and a display, the one or more programs including instructions to simultaneously display on the display a camera application user interface including a digital viewfinder including a live preview of a field of view of one or more cameras and a representation of a filter picker user interface overlaying the digital viewfinder, detect a first input via the one or more input devices while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface starting at a position corresponding to a respective portion of the live preview, and, in response to detecting the first input, apply a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that the filter picker user interface overlay a respective portion of the live preview when the first input is detected, and perform respective operations in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface does not overlay a respective portion of the live preview when the first input is detected.

[0009] An exemplary electronic device comprises one or more cameras, one or more input devices, a display, one or more processors, and a memory storing one or more programs configured to be executed by the one or more processors, the one or more programs including instructions to simultaneously display on the display a camera application user interface including a digital viewfinder including a live preview of a field of view of one or more cameras and a representation of a filter picker user interface overlaying the digital viewfinder, detect a first input via the one or more input devices starting at a position corresponding to a respective portion of the live preview while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface, and in response to detecting the first input, apply a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that the filter picker user interface overlay the respective portion of the live preview when the first input is detected, and perform a respective operation in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface does not overlay the respective portion of the live preview when the first input is detected.

[0010] An exemplary electronic device comprises one or more cameras, one or more input devices, a display, and means for simultaneously displaying on the display a camera application user interface including a digital viewfinder including a live preview of the field of view of the one or more cameras and a representation of a filter picker user interface overlaying the digital viewfinder; means for detecting a first input via the one or more input devices while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface, the first input starting at a position corresponding to a respective portion of the live preview; and means for, in response to detecting the first input, adding a preview of the first filter to the live preview of the camera's field of view that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied that includes a requirement that the filter picker user interface overlays a respective portion of the live preview when the first input is detected, and performing a respective operation in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface does not overlay a respective portion of the live preview when the first input is detected.

[0011] An example method includes, in an electronic device having one or more input devices and a display, displaying on the display a representation of image data associated with depth map information; detecting a first input via the one or more input devices while displaying the representation of the image data on the display; and applying a first lighting effect based on the depth map information to the representation of the image data in accordance with detecting the first input; detecting a second input via the one or more input devices; and applying a second lighting effect based on the depth map information, different from the first lighting effect, to the representation of the image data in accordance with detecting the second input.

[0012] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device including one or more input devices and a display, the one or more programs including instructions for: displaying, on the display, a representation of image data associated with depth map information; detecting a first input via the one or more input devices while displaying the representation of the image data on the display, and applying a first lighting effect based on the depth map information to the representation of the image data in accordance with detecting the first input; detecting a second input via the one or more input devices, and applying a second lighting effect based on the depth map information that differs from the first lighting effect to the representation of the image data in accordance with detecting the second input.

[0013] An exemplary transient computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device including one or more input devices and a display, the one or more programs including instructions for displaying, on the display, a representation of image data associated with depth map information, detecting a first input via the one or more input devices while displaying the representation of the image data on the display, and applying a first lighting effect based on the depth map information to the representation of the image data in accordance with detecting the first input, and detecting a second input via the one or more input devices, and applying a second lighting effect based on the depth map information that differs from the first lighting effect to the representation of the image data in accordance with detecting the second input.

[0014] An exemplary electronic device comprises one or more input devices, a display, one or more processors, and a memory storing one or more programs configured to be executable by the one or more processors, the one or more programs including instructions to: display on the display a representation of image data associated with depth map information; detect a first input via the one or more input devices while displaying the representation of the image data on the display, and apply a first lighting effect based on the depth map information to the representation of the image data in accordance with detecting the first input; detect a second input via the one or more input devices, and apply a second lighting effect based on the depth map information, different from the first lighting effect, to the representation of the image data in accordance with detecting the second input.

[0015] An exemplary electronic device comprises one or more cameras, one or more input devices, a display, means for displaying a representation of image data associated with depth map information on the display, and means for detecting a first input via the one or more input devices while displaying the representation of the image data on the display and applying a first lighting effect based on the depth map information to the representation of the image data in accordance with detecting the first input, and detecting a second input via the one or more input devices and applying a second lighting effect based on the depth map information that is different from the first lighting effect to the representation of the image data in accordance with detecting the second input.

[0016] An exemplary method includes, in an electronic device having one or more input devices and a display, detecting, via the one or more input devices, a first input corresponding to selection of a first image filter of a representation of image data having a first appearance; in response to detecting the first input, in accordance with a determination that the image data is associated with depth information that makes foreground regions of the representation of the image data distinguishable from background regions of the representation of the image data, applying the first image filter to foreground regions of the representation of the image data with a first level of adjustment indicative of a first degree to which the first image filter alters the appearance of the representation of the image data, thereby altering the appearance of the foreground regions of the representation of the image data; applying the first image filter to background regions of the representation of the image data with a second level of adjustment indicative of a second degree to which the first image filter alters the appearance of the representation of the image data, different from the first level of adjustment, thereby altering the appearance of the background regions of the representation of the image data; and after applying the first image filter to the representation of the image data, displaying on the display a representation of each image having the first filter applied to the representation of the image data.

[0017] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device that includes one or more input devices and a display. The one or more programs include instructions for applying a first image filter to a representation of the image data, including: detecting, via one or more input devices, a first input corresponding to a selection of a first image filter of a representation of the image data having a first appearance; and, in response to detecting the first input, applying the first image filter to a foreground region of the representation of the image data with a first level of adjustment indicative of a first degree to which the first image filter alters the appearance of the representation of the image data in accordance with a determination that the image data is associated with depth information that makes foreground regions of the representation of the image data distinguishable from background regions of the representation of the image data, thereby altering the appearance of the foreground region of the representation of the image data; applying the first image filter to a background region of the representation of the image data with a second level of adjustment indicative of a second degree to which the first image filter alters the appearance of the representation of the image data, different from the first level of adjustment, thereby altering the appearance of the background region of the representation of the image data; and, after applying the first image filter to the representation of the image data, displaying on a display a representation of the respective image having the first filter applied to the representation of the image data.

[0018] An exemplary transitory computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices and a display. The one or more programs include instructions for applying a first image filter to a representation of the image data, including: detecting, via one or more input devices, a first input corresponding to a selection of a first image filter of a representation of the image data having a first appearance; and, in response to detecting the first input, in accordance with a determination that the image data is associated with depth information that renders foreground regions of the representation of the image data distinguishable from background regions of the representation of the image data, applying the first image filter to foreground regions of the representation of the image data with a first level of adjustment indicative of a first degree to which the first image filter alters the appearance of the representation of the image data to alter the appearance of the foreground regions of the representation of the image data; applying the first image filter to background regions of the representation of the image data with a second level of adjustment indicative of a second degree to which the first image filter alters the appearance of the representation of the image data, different from the first level of adjustment to alter the appearance of the background regions of the representation of the image data; and, after applying the first image filter to the representation of the image data, displaying on a display a representation of the respective image having the first filter applied to the representation of the image data.

[0019] An exemplary electronic device comprises one or more input devices, a display, one or more processors, and a memory storing one or more programs configured to be executable by the one or more processors, the one or more programs detecting, via the one or more input devices, a first input corresponding to a selection of a first image filter of a representation of image data having a first appearance, and, in response to detecting the first input, selecting the first image filter in accordance with a determination that the image data is associated with depth information that makes foreground regions of the representation of the image data distinguishable from background regions of the representation of the image data, where the first image filter changes the appearance of the representation of the image data. applying the first image filter to the representation of the image data, the instructions including: altering an appearance of the foreground regions of the representation of the image data in addition to the foreground regions of the representation of the image data with a first level of adjustment indicating a degree to which the first image filter alters the appearance of the representation of the image data; applying the first image filter to background regions of the representation of the image data with a second level of adjustment different from the first level of adjustment indicating a second degree to which the first image filter alters the appearance of the representation of the image data, to alter the appearance of the background regions of the representation of the image data; and displaying on a display a representation of the respective image having the first filter applied to the representation of the image data after applying the first image filter to the representation of the image data.

[0020] An exemplary electronic device comprises one or more input devices; a display; and means for detecting, via the one or more input devices, a first input corresponding to a selection of a first image filter of a representation of image data having a first appearance; and means for applying the first image filter to a representation of image data, including means for, in response to detecting the first input, applying the first image filter to a foreground region of the representation of image data with a first level of adjustment indicative of a first degree to which the first image filter alters the appearance of the representation of the image data in accordance with a determination that the image data is associated with depth information that renders foreground regions of the representation of the image data distinguishable from background regions of the representation of the image data, thereby altering the appearance of the foreground regions of the representation of the image data; applying the first image filter to a background region of the representation of the image data with a second level of adjustment indicative of a second degree to which the first image filter alters the appearance of the representation of the image data, different from the first level of adjustment, thereby altering the appearance of the background regions of the representation of the image data; and displaying, on the display, a representation of each image having the first filter applied to the representation of the image data after applying the first image filter to the representation of the image data.

[0021] An exemplary method includes, in an electronic device having one or more input devices and a display, displaying a filter selection interface on the display including representations of a plurality of filters in the series of filters; detecting a first input via the one or more input devices at a position corresponding to the filter selection interface while a first filter in the series of filters satisfies a selection criterion while simultaneously displaying a representation of image data and the filter selection interface on the display; in response to detecting the first input, stopping a first subset of representations of the plurality of filters in the series of filters including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter; and maintaining display of a second subset of representations of the plurality of filters including a representation of at least the first filter in the series of filters.

[0022] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executed by one or more processors of an electronic device having one or more input devices and a display, the one or more programs including instructions to: display, on the display, a filter selection interface including representations of a plurality of filters in a series of filters; detect, while simultaneously displaying the representation of the image data and the filter selection interface on the display, a first input via the one or more input devices at a position corresponding to the filter selection interface while a first filter in the series of filters satisfies a selection criterion; and, in response to detecting the first input, stop displaying a first subset of representations of the plurality of filters in the series of filters including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter, and maintain display of a second subset of representations of the plurality of filters including the representation of at least the first filter in the series of filters.

[0023] An exemplary transient computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices and a display, the one or more programs including instructions for: displaying, on the display, a filter selection interface including representations of a plurality of filters in a series of filters; detecting, while simultaneously displaying the representation of the image data and the filter selection interface on the display, a first input via the one or more input devices at a position corresponding to the filter selection interface while a first filter in the series of filters satisfies a selection criterion; and, in response to detecting the first input, stopping displaying a first subset of representations of the plurality of filters in the series of filters including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter, and maintaining display of a second subset of representations of the plurality of filters including the representation of at least the first filter in the series of filters.

[0024] An exemplary electronic device includes one or more input devices, a display, one or more processors, and a memory storing one or more programs configured to be executable by the one or more processors, the one or more programs including instructions to: display a filter selection interface on the display including representations of a plurality of filters in a series of filters; while simultaneously displaying a representation of the image data and the filter selection interface on the display, detect a first input via the one or more input devices at a position corresponding to the filter selection interface while a first filter in the series of filters satisfies a selection criterion; and, in response to detecting the first input, stop displaying a first subset of representations of the plurality of filters in the series of filters including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter, and maintain display of a second subset of representations of the plurality of filters including a representation of at least the first filter in the series of filters.

[0025] An exemplary electronic device comprises one or more input devices, a display, and means for displaying a filter selection interface on the display, the filter selection interface including representations of a plurality of filters in the series of filters; means for detecting a first input via the one or more input devices while simultaneously displaying a representation of the image data and the filter selection interface on the display, at a position corresponding to the filter selection interface where a first filter in the series of filters satisfies a selection criterion; and means for, in response to detecting the first input, canceling a first subset of representations of the plurality of filters in the series of filters, the first subset including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter, and maintaining display of a second subset of representations of the plurality of filters including a representation of at least the first filter in the series of filters.

[0026] An exemplary method includes, in an electronic device having a camera, a sensor, one or more input devices, and a display, displaying on the display a camera viewfinder for capturing media; while displaying the camera viewfinder, displaying on the display a positioning adjustment guide in the camera viewfinder that changes appearance when the orientation of the camera's focal plane changes relative to the predetermined orientation in accordance with a determination based on data from the sensor that the device satisfies positioning adjustment guide display criteria, including a requirement that the relative difference between the orientation of the camera's focal plane and a predetermined orientation be within a respective positioning threshold for the positioning adjustment guide display criteria to be satisfied; and ceasing to display the positioning adjustment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the positioning adjustment guide display criteria are not satisfied.

[0027] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device including a camera, a sensor, one or more input devices, and a display, the one or more programs including instructions for displaying, on the display, a camera viewfinder for capturing media, displaying, on the display, an alignment guide in the camera viewfinder that changes appearance as the orientation of the camera's focal plane changes relative to the predetermined orientation in accordance with a determination based on data from the sensor that the device satisfies alignment guide display criteria, including a requirement that a relative difference between an orientation of the camera's focal plane and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, and ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not satisfied.

[0028] An exemplary temporary computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device including a camera, a sensor, one or more input devices, and a display, the one or more programs including instructions for displaying, on the display, a camera viewfinder for capturing media, displaying, on the display, an alignment guide in the camera viewfinder that changes appearance as the orientation of the camera's focal plane changes relative to the predetermined orientation in accordance with a determination based on data from the sensor that the device satisfies alignment guide display criteria, including a requirement that a relative difference between the orientation of the camera's focal plane and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, and ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not satisfied.

[0029] An exemplary electronic device includes a camera, a sensor, one or more input devices, a display, one or more processors, and a memory storing one or more programs configured to be executable by the one or more processors, the one or more programs including instructions to: display on the display a camera viewfinder for capturing media; while displaying the camera viewfinder, display on the display a positioning guide in the camera viewfinder that changes appearance as the orientation of the camera's focal plane changes relative to the predetermined orientation in accordance with a determination based on data from the sensor that the device satisfies positioning guide display criteria including a requirement that the relative difference between the orientation of the camera's focal plane and a predetermined orientation be within a respective positioning threshold for the positioning guide display criteria to be satisfied; and cease displaying the positioning guide in the camera viewfinder in accordance with a determination based on data from the sensor that the positioning guide display criteria are not satisfied.

[0030] An exemplary electronic device comprises a camera, a sensor, one or more input devices, a display, means for displaying a camera viewfinder on the display for capturing media, and means for, while displaying the camera viewfinder, displaying an alignment guide in the camera viewfinder on the display, the alignment guide changing appearance as the orientation of the camera's focal plane changes relative to the predetermined orientation, in accordance with a determination based on data from the sensor that the device satisfies alignment guide display criteria including a requirement that the relative difference between the orientation of the camera's focal plane and the predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, and for ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not satisfied.

[0031] An exemplary method includes, in an electronic device having one or more input devices, one or more cameras, and a display, capturing image data corresponding to a field of view of one or more cameras, including: displaying a representation of image data associated with depth map information on the display; detecting a first input via the one or more input devices while displaying the representation of the image data on the display, selecting a filter for each of a plurality of lighting effects based on the depth map information; after detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; in response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information, different from the first lighting effect; and capturing image data corresponding to the field of view of the one or more cameras and associating the second lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a second lighting effect based on the depth map information that is different from the first lighting effect.

[0032] An exemplary non-transitory computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device that includes one or more input devices, one or more cameras, and a display. The one or more programs include instructions for capturing image data corresponding to the field of view of one or more cameras, including: displaying a representation of image data associated with the depth map information on a display; detecting a first input via one or more input devices while displaying the representation of the image data on the display, selecting a filter for each of a plurality of lighting effects based on the depth map information; after detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to the field of view of one or more cameras; in response to detecting the second input, capturing image data corresponding to the field of view of one or more cameras and associating the first lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information, different from the first lighting effect; and capturing image data corresponding to the field of view of one or more cameras and associating the second lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a second lighting effect based on the depth map information that is different from the first lighting effect.

[0033] An exemplary temporary computer-readable storage medium stores one or more programs configured to be executable by one or more processors of an electronic device including one or more input devices, one or more cameras, and a display, the one or more programs including instructions for capturing image data corresponding to a field of view of the one or more cameras, including: displaying, on the display, a representation of image data associated with depth map information; detecting, while displaying the representation of the image data on the display, a first input via the one or more input devices, selecting filters for each of a plurality of lighting effects based on the depth map information; detecting, after detecting the first input, a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; and, in response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of the image data in accordance with a determination that each lighting effect selected based on the first input is a first lighting effect based on the depth map information, different from the first lighting effect; and capturing image data corresponding to the field of view of the one or more cameras and associating the second lighting effect with the representation of the image data in accordance with a determination that each lighting effect selected based on the first input is a second lighting effect based on the depth map information that is different from the first lighting effect.

[0034] An exemplary electronic device includes one or more input devices, one or more cameras, a display, one or more processors, and a memory storing one or more programs configured to be executable by the one or more processors, the one or more programs including instructions for capturing image data corresponding to a field of view of one or more cameras, including: displaying a representation of image data associated with depth map information on the display; detecting a first input via the one or more input devices while displaying the representation of the image data on the display, selecting filters for each of a plurality of lighting effects based on the depth map information; detecting a second input corresponding to a request to capture image data corresponding to a field of view of one or more cameras after detecting the first input; and, in response to detecting the second input, capturing image data corresponding to the field of view of one or more cameras in accordance with a determination that each lighting effect selected based on the first input is a first lighting effect based on the depth map information and associating the first lighting effect with the representation of the image data; and capturing image data corresponding to the field of view of one or more cameras in accordance with a determination that each lighting effect selected based on the first input is a second lighting effect based on the depth map information that is different from the first lighting effect and associating the second lighting effect with the representation of the image data.

[0035] an exemplary electronic device comprising: one or more input devices; one or more cameras; a display; means for displaying a representation of image data associated with depth map information on the display while displaying the representation of the image data on the display; and means for capturing image data corresponding to a field of view of one or more cameras, including: displaying the representation of the image data associated with the depth map information on the display while displaying the representation of the image data on the display; detecting, via the one or more input devices, a first input selecting a filter for each of a plurality of lighting effects based on the depth map information while displaying the representation of the image data on the display; detecting, after detecting the first input, a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; and, in response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information, different from the first lighting effect; and capturing image data corresponding to the field of view of the one or more cameras and associating the second lighting effect with the representation of the image data in accordance with a determination that the respective lighting effect selected based on the first input is a second lighting effect based on the depth map information that is different from the first lighting effect.

[0036] Executable instructions to perform these functions are optionally contained in a non-transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors. Executable instructions to perform these functions are optionally contained in a transitory computer-readable storage medium or other computer program product configured to be executed by one or more processors.

[0037] This provides devices with faster, more efficient methods and interfaces for managing camera effects, thereby increasing the effectiveness, efficiency, and user satisfaction of such devices. Such methods and interfaces can complement or replace other methods for managing camera effects.

[0038] For a better understanding of the various described embodiments, reference should be made to the following Detailed Description of the Invention in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout: [Brief explanation of the drawings]

[0039] [Figure 1A] FIG. 1 is a block diagram illustrating a portable multifunction device having a touch-sensitive display in accordance with some embodiments. [Figure 1B] FIG. 1 is a block diagram illustrating exemplary components for event processing according to some embodiments. [Figure 2] 1 illustrates a portable multifunction device with a touch screen according to some embodiments. [Figure 3] FIG. 1 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface in accordance with some embodiments. [Figure 4A] 1 illustrates an exemplary user interface for a menu of applications on a portable multifunction device in accordance with some embodiments. [Figure 4B] 1 illustrates an exemplary user interface for a multifunction device having a touch-sensitive surface that is separate from the display in accordance with some embodiments. [Figure 5A] 1 illustrates a personal electronic device according to some embodiments. [Figure 5B] FIG. 1 is a block diagram illustrating a personal electronic device according to some embodiments. [Figure 5C] 1 illustrates exemplary components of a personal electronic device having a touch-sensitive display and intensity sensor in accordance with some embodiments. [Figure 5D] 1 illustrates exemplary components of a personal electronic device having a touch-sensitive display and intensity sensor in accordance with some embodiments. [Figure 5E]1 illustrates exemplary components and a user interface of a personal electronic device according to some embodiments. [Figure 5F] 1 illustrates exemplary components and a user interface of a personal electronic device according to some embodiments. [Figure 5G] 1 illustrates exemplary components and a user interface of a personal electronic device according to some embodiments. [Figure 5H] 1 illustrates exemplary components and a user interface of a personal electronic device according to some embodiments. [Figure 6A] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6B] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6C] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6D] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6E] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6F] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6G] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6H] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6I] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6J]1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6K] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6L] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6M] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 6N] 1 illustrates an exemplary device and user interface for managing camera lighting effects, according to some embodiments. [Figure 7A] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 7B] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 7C] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 7D] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 7E] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 7F] 1 is a flowchart illustrating a method for managing camera lighting effects, according to some embodiments. [Figure 8A] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8B] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8C]1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8D] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8E] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8F] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8G] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8H] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8I] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 8J] 1 illustrates an exemplary device and user interface for applying camera lighting effects, according to some embodiments. [Figure 9A] 1 is a flowchart illustrating a method for applying camera lighting effects, according to some embodiments. [Figure 9B] 1 is a flowchart illustrating a method for applying camera lighting effects, according to some embodiments. [Figure 9C] 1 is a flowchart illustrating a method for applying camera lighting effects, according to some embodiments. [Figure 9D] 1 is a flowchart illustrating a method for applying camera lighting effects, according to some embodiments. [Figure 10A] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10B]1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10C] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10D] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10E] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10F] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10G] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10H] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10I] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10J] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10K] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10L] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10M] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 10N] 1 illustrates an exemplary device and user interface for managing filter effects according to some embodiments. [Figure 11A]1 is a flowchart illustrating a method for managing filter effects, according to some embodiments. [Figure 11B] 1 is a flowchart illustrating a method for managing filter effects, according to some embodiments. [Figure 11C] 1 is a flowchart illustrating a method for managing filter effects, according to some embodiments. [Figure 12A] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12B] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12C] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12D] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12E] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12F] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12G] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12H] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12I] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12J]1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12K] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12L] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12M] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12N] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12O] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 12P] 1 illustrates an exemplary device and user interface for managing filter user interfaces, according to some embodiments. [Figure 13A] 1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 13B] 1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 13C] 1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 13D] 1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 13E] 1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 13F]1 is a flowchart illustrating a method for managing a filter user interface according to some embodiments. [Figure 14A] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14B] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14C] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14D] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14E] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14F] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14G] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14H] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14I] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14J] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 14K] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 15A] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 15B]1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 15C] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 15D] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 15E] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 16A] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16B] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16C] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16D] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16E] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16F] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16G] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16H] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16I] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 16J] 1 illustrates an exemplary device and user interface for capturing an image, according to some embodiments. [Figure 17A] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17B] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17C] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17D] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17E] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17F] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. [Figure 17G] 1 is a flowchart illustrating a method for capturing an image, according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0040] The following description describes example methods, parameters, etc. However, it should be recognized that such description is not intended as a limitation on the scope of the present disclosure, but is instead provided as a description of example embodiments.

[0041] Electronic devices are being designed and manufactured with more advanced camera features and sensors. However, due to the nature of their design, some electronic devices are unable to capture the richness of light point photography without additional hardware. Many light point photography techniques require multiple, expensive light sources positioned around the subject and a separate backdrop. However, many electronic devices only have a single flash that emits light in one direction. As a result, many light point photography techniques simply cannot be achieved through conventional electronic devices.

[0042] The embodiments described herein include electronic devices that utilize depth map information to provide improved camera functionality. In some embodiments, the depth map information is used in applying filters to images. In some embodiments, visual aids are provided to assist a user in capturing a perfect image. The described embodiments also include complementary user interfaces that enable these improved camera functionality.

[0043] The described embodiments also enable efficient packaging and manufacturing of thin and lightweight devices while improving the performance of the device's camera optics. Using a fixed focal length camera is advantageous because it is thin and small.

[0044] Below, Figures 1A-1B, 2, 3, 4A-4B, and 5A-5H provide descriptions of example devices for performing techniques for managing event notifications. Figures 6A-6N show example user interfaces for managing user interfaces. Figure 7 is a flowchart illustrating a method for managing user interfaces, according to some embodiments. The user interfaces of Figures 6A-6G are used to illustrate processes described below, including the process of Figure 7.

[0045] 8A-8J illustrate exemplary user interfaces for applying simulated lighting effects. FIG. 9 is a flow diagram illustrating a method for simulating lighting effects, according to some embodiments. The user interfaces of FIGS. 8A-8D are used to illustrate processes described below, including the process of FIG. 9.

[0046] 10A-10N illustrate exemplary user interfaces for applying a filter to an image. FIG. 11 is a flowchart illustrating a method for applying a filter to an image, according to some embodiments. The user interfaces of FIGS. 10A-10D are used to illustrate processes described below, including the process of FIG. 11.

[0047] 12A-12P illustrate exemplary user interfaces for displaying a reduced filter user interface. FIG. 13 is a flowchart illustrating a method for displaying a reduced filter user interface according to some embodiments. The user interfaces of FIGS. 12A-12D are used to illustrate processes described below, including the process of FIG. 13.

[0048] 14A-14K show exemplary user interfaces for providing visual aid. FIG. 15 is a flowchart illustrating a method for providing visual aid, according to some embodiments. The user interfaces of FIGS. 14A-14D are used to illustrate processes described below, including the process of FIG. 15.

[0049] 16A-16J illustrate exemplary user interfaces for providing visual aids when applying simulated optical effects. FIG. 17 is a flowchart illustrating a method for providing visual aids when applying simulated optical effects, according to some embodiments. The user interfaces of FIGS. 16A-16J are used to illustrate processes described below, including the process of FIG. 17.

[0050] In the following description, terms such as "first" and "second" are used to describe various elements, but these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first touch can be referred to as a second touch, and similarly, a second touch can be referred to as a first touch, without departing from the scope of the various embodiments described. Although a first touch and a second touch are both touches, they are not the same touch.

[0051] The terminology used in the description of the various embodiments set forth herein is for the purpose of describing particular embodiments only and is not intended to be limiting. In the description of the various embodiments set forth and in the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. Also, as used herein, the term "and / or" should be understood to refer to and include any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms "includes," "including," "comprises," and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0052] The term "if" is interpreted, optionally, depending on the context, to mean "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrase "if it is determined" or "if [a stated condition or event] is detected" is interpreted, optionally, depending on the context, to mean "upon determining" or "in response to determining," or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event]."

[0053] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, that also includes other functions, such as PDA and / or music player functions. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc. of Cupertino, California. Optionally, other portable electronic devices, such as laptop or tablet computers with touch-sensitive surfaces (e.g., touchscreen displays and / or touchpads), are also used. It should also be understood that in some embodiments, the device is not a portable communication device, but rather a desktop computer with a touch-sensitive surface (e.g., touchscreen displays and / or touchpads).

[0054] In the following discussion, electronic devices are described that include a display and a touch-sensitive surface. However, it should be understood that the electronic device optionally includes one or more other physical user-interface devices, such as a physical keyboard, a mouse, and / or a joystick.

[0055] The device typically supports a variety of applications such as one or more of a drawing application, a presentation application, a word processing application, a website creation application, a disc authoring application, a spreadsheet application, a gaming application, a telephone application, a video conferencing application, an email application, an instant messaging application, a training support application, a photo management application, a digital camera application, a digital video camera application, a web browsing application, a digital music player application, and / or a digital video player application.

[0056] Various applications running on the device optionally use at least one common physical user-interface device, such as a touch-sensitive surface. One or more features of the touch-sensitive surface and corresponding information displayed on the device are optionally adjusted and / or changed for each application and / or within each application. In this way, the common physical architecture of the device (such as the touch-sensitive surface) optionally supports various applications with user interfaces that are intuitive and transparent to the user.

[0057] Attention now turns to embodiments of portable devices with touch-sensitive displays. FIG. 1A is a block diagram illustrating portable multifunction device 100 having touch-sensitive display system 112 according to some embodiments. Touch-sensitive display 112 may conveniently be referred to as a “touch screen” and may also be known or referred to as a “touch-sensitive display system.” Device 100 includes memory 102 (optionally including one or more computer-readable storage media), memory controller 122, one or more processing units (CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, input / output (I / O) subsystem 106, other input control devices 116, and external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 that detect the intensity of a contact on device 100 (e.g., a touch-sensitive surface such as touch-sensitive display system 112 of device 100). Device 100 optionally includes one or more tactile output generators 167 that generate tactile output on device 100 (e.g., generate tactile output on a touch-sensitive surface such as touch-sensitive display system 112 of device 100 or touchpad 355 of device 300). These components optionally communicate via one or more communication buses or signal lines 103.

[0058] As used herein and in the claims, the term “intensity” of a contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of a contact (e.g., a finger contact) on the touch-sensitive surface, or a proxy for the force or pressure of a contact on the touch-sensitive surface. The intensity of a contact has a range of values ​​that includes at least four distinct values ​​and more typically includes hundreds (e.g., at least 256) distinct values. The intensity of a contact is optionally determined (or measured) using various techniques and various sensors or combinations of sensors. For example, one or more force sensors under or adjacent to the touch-sensitive surface are optionally used to measure force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted average) to determine an estimated force of the contact. Similarly, a pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or change in the contact area detected on the touch-sensitive surface, the capacitance and / or change in the capacitance of the touch-sensitive surface proximate the contact, and / or the resistance and / or change in the capacitance of the touch-sensitive surface proximate the contact are optionally used as a surrogate for the force or pressure of the contact on the touch-sensitive surface. In some implementations, the surrogate measure for the force or pressure of the contact is used directly to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is described in units corresponding to the surrogate measure). In some implementations, the surrogate measure for the contact force or pressure is converted to an estimated force or pressure, and the estimated force or pressure is used to determine whether an intensity threshold has been exceeded (e.g., the intensity threshold is a pressure threshold measured in units of pressure). Using contact intensity as an attribute of user input allows a user to access additional device functionality that may not otherwise be accessible by a user on devices of reduced size that have limited area for displaying affordances (e.g., on a touch-sensitive display) and / or receiving user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical controls such as knobs or buttons).

[0059] As used herein and in the claims, the term “tactile output” refers to a physical displacement of a device relative to its previous position, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, that will be detected by a user with the user's sense of touch. For example, in a situation where a device or a component of a device is in contact with a touch-sensitive surface of a user (e.g., the fingers, palm, or other part of the user's hand), the tactile output produced by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in a physical property of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) is optionally interpreted by the user as a “downclick” or “upclick” of a physical actuator button. In some cases, a user feels a tactile sensation such as a “downclick” or “upclick” even when no movement of a physical actuator button associated with the touch-sensitive surface is physically pressed (e.g., displaced) by the user's action. As another example, movement of a touch-sensitive surface is optionally interpreted or perceived by a user as "roughness" of the touch-sensitive surface, even when there is no change in the smoothness of the touch-sensitive surface. While such user interpretation of touch depends on the user's personal sensory perception, there are many sensory perceptions of touch that are common to the majority of users. Thus, when a tactile output is described as corresponding to a particular sensory perception of a user (e.g., "upclick," "downclick," "roughness"), unless otherwise specified, the generated tactile output corresponds to a physical displacement of the device, or a component of the device, that produces the described sensory perception for a typical (or average) user.

[0060] It should be understood that device 100 is only one example of a portable multifunction device, and that device 100 optionally has more or fewer components than those shown, optionally combines two or more components, or optionally has a different configuration or arrangement of its components. The various components shown in Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application specific integrated circuits.

[0061] Memory 102 optionally includes high-speed random access memory, and optionally includes non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.

[0062] Peripheral interface 118 may be used to couple input and output peripherals of the device to CPU 120 and memory 102. One or more processors 120 operate or execute various software programs and / or instruction sets stored in memory 102 to perform various functions and process data for device 100. In some embodiments, peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.

[0063] RF (radio frequency) circuitry 108 transmits and receives RF signals, also called electromagnetic signals. RF circuitry 108 converts electrical signals to or from electromagnetic signals and communicates with communication networks and other communication devices via electromagnetic signals. RF circuitry 108 optionally includes well-known circuitry for performing these functions, including, but not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, a subscriber identity module (SIM) card, memory, etc. RF circuitry 108 optionally communicates wirelessly with networks, such as the Internet, also known as the World Wide Web (WWW), an intranet, and / or wireless networks, such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs), and with other devices. RF circuitry 108 optionally includes well-known circuitry for detecting near field communication (NFC) fields, such as by short-range radios. Wireless communication is optionally supported by, but is not limited to, Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPA), Long Term Evolution (LTE), and other standards.Wireless technology includes, but is not limited to, technology such as: LTE evolution (LTE), near field communications (NFC), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth®, Bluetooth Low Energy (BTLE®), Wireless Fidelity (Wi-Fi®) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX®, protocols for email (e.g., Internet message access protocol (IMAP) and / or post office protocol (POP)), instant messaging (e.g., extensible messaging and presence protocol), and the like. The present invention may use any of a number of communication standards, protocols, and technologies, including the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (XMPP), the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this application.

[0064] Audio circuit 110, speaker 111, and microphone 113 provide an audio interface between a user and device 100. Audio circuit 110 receives audio data from peripherals interface 118, converts the audio data into electrical signals, and transmits the electrical signals to speaker 111. Speaker 111 converts the electrical signals into sound waves audible to humans. Audio circuit 110 also receives electrical signals converted from sound waves by microphone 113. Audio circuit 110 converts the electrical signals into audio data and transmits the audio data to peripherals interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to memory 102 and / or RF circuit 108 by peripherals interface 118. In some embodiments, audio circuit 110 also includes a headset jack (e.g., 212 in FIG. 2 ). The headset jack provides an interface between audio circuitry 110 and a detachable audio input / output peripheral, such as an output-only headphone or a headset with both an output (e.g., mono or binaural headphones) and an input (e.g., a microphone).

[0065] I / O subsystem 106 couples input / output peripherals on device 100, such as touchscreen 112 and other input control devices 116, to peripheral interface 118. I / O subsystem 106 optionally includes display controller 156, light sensor controller 158, intensity sensor controller 159, haptic feedback controller 161, depth camera controller 169, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive / send electrical signals from / to other input control devices 116. Other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons, etc.), dials, slider switches, joysticks, click wheels, etc. In some alternative embodiments, input controller 160 is optionally coupled to any (or none) of a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. The one or more buttons (e.g., 208 in FIG. 2) optionally include up and down buttons for volume control of speaker 111 and / or microphone 113. The one or more buttons optionally include a push button (e.g., 206 in FIG. 2).

[0066] A quick press of a push button optionally disengages a lock on the touchscreen 112 or, optionally, initiates a process to unlock the device using a gesture on the touchscreen, as described in U.S. Patent Application Serial No. 11 / 322,549, filed December 23, 2005, "Unlocking a Device by Performing Gestures on an Unlock Image," U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety. A longer press of a push button (e.g., 206) optionally turns power on or off to the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.

[0067] Touch-sensitive display 112 provides an input and output interface between the device and a user. Display controller 156 receives and / or sends electrical signals to touchscreen 112. Touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, video, and any combination thereof (collectively "graphics"). In some embodiments, some or all of the visual output optionally corresponds to user-interface objects.

[0068] Touchscreen 112 has a touch-sensitive surface, sensor, or set of sensors that receive input from a user based on haptic and / or tactile contact. Touchscreen 112 and display controller 156 (along with any associated modules and / or instruction sets in memory 102) detects contacts (and any movement or disruption of contact) on touchscreen 112 and translates the detected contacts into interactions with user interface objects (e.g., one or more softkeys, icons, web pages, or images) displayed on touchscreen 112. In an exemplary embodiment, the point of contact between touchscreen 112 and the user corresponds to the user's finger.

[0069] Touchscreen 112 optionally uses LCD (liquid crystal display), LPD (light emitting polymer display), or LED (light emitting diode) technology, although other display technologies are used in other embodiments. Touchscreen 112 and display controller 156 optionally detect contact and any movement or disruption thereof using any of a number of now known or later developed touch sensing technologies, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with touchscreen 112. In an exemplary embodiment, projected mutual capacitance sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.

[0070] The touch-sensitive display in some embodiments of touchscreen 112 is optionally similar to the multi-touch-sensing touchpad described in U.S. Patent Nos. 6,323,846 (Westerman et al.), 6,570,557 (Westerman et al.), and / or 6,677,932 (Westerman), and / or U.S. Patent Publication No. 2002 / 0015024A1, each of which is incorporated by reference herein in its entirety. However, touchscreen 112 displays visual output from device 100, whereas touch-sensitive touchpads do not provide visual output.

[0071] The touch-sensitive display in some embodiments of touch screen 112 may be any of the touch-sensitive displays described in U.S. patent application Ser. No. 11 / 381,313, filed May 2, 2006, entitled "Multipoint Touch Surface Controller," (2) U.S. patent application Ser. No. 10 / 840,862, filed May 6, 2004, entitled "Multipoint Touchscreen," (3) U.S. patent application Ser. No. 10 / 903,964, filed July 30, 2004, entitled "Gestures For Touch Sensitive Input Devices," (4) U.S. patent application Ser. No. 11 / 048,264, filed January 31, 2005, entitled "Gestures For Touch Sensitive Input Devices," and (5) U.S. patent application Ser. No. 11 / 038,590, filed January 18, 2005, entitled "Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices." No. 11 / 228,758, filed September 16, 2005, entitled "Virtual Input Device Placement On A Touch Screen User Interface," (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, entitled "Operation Of A Computer With A Touch Screen Interface," (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, entitled "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard," and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, entitled "Multi-Functional Hand-Held Device," all of which are incorporated herein by reference in their entirety.

[0072] Touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. A user optionally contacts touchscreen 112 using any suitable object or accessory, such as a stylus, a finger, or the like. In some embodiments, the user interface is designed to primarily handle finger-based contacts and gestures, which may not be as precise as stylus-based input due to the larger contact area of ​​a finger on the touchscreen. In some embodiments, the device translates coarse finger-based input into precise pointer / cursor positions or commands to perform actions desired by the user.

[0073] In some embodiments, in addition to the touchscreen, device 100 optionally includes a touchpad (not shown) for activating or deactivating certain functions. In some embodiments, the touchpad is a touch-sensitive area of ​​the device that, unlike the touchscreen, does not display visual output. The touchpad is optionally a touch-sensitive surface that is separate from touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.

[0074] Device 100 also includes a power system 162 that provides power to the various components. Power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, power failure detection circuitry, power converters or inverters, power status indicators (e.g., light emitting diodes (LEDs)), and any other components associated with the generation, management, and distribution of electrical power within a portable device.

[0075] Device 100 also optionally includes one or more light sensors 164. FIG. 1A shows a light sensor coupled to light sensor controller 158 in I / O subsystem 106. Light sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. Light sensor 164 receives light from the environment projected through one or more lenses and converts the light into data representing an image. Light sensor 164 optionally interfaces with imaging module 143 (also referred to as a camera module) to capture still images or video. In some embodiments, the light sensor is located on the back of device 100, as opposed to touchscreen display 112, which is on the front of the device, so that the touchscreen display is effectively used as a viewfinder for capturing still and / or video images. In some embodiments, the light sensor is located on the front of the device so that an image of the user is obtained, optionally for video conferencing, and the user sees other video conference participants on the touchscreen display. In some embodiments, the position of the light sensor 164 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that a single light sensor 164 is used for both video conferencing and capturing still and / or video images, along with the touchscreen display.

[0076] Device 100 also optionally includes one or more contact intensity sensors 165. FIG. 1A shows contact intensity sensors coupled to intensity sensor controller 159 in I / O subsystem 106. Contact intensity sensors 165 optionally include one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, piezoelectric force sensors, optical force sensors, capacitive touch-sensitive surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of a contact on a touch-sensitive surface). Contact intensity sensors 165 receive contact intensity information (e.g., pressure information or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is juxtaposed with or proximate to the touch-sensitive surface (e.g., touch-sensitive display system 112). In some embodiments, at least one contact intensity sensor is located on the back side of device 100, as opposed to touchscreen display 112, which is located on the front side of device 100.

[0077] Device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows proximity sensor 166 coupled to peripherals interface 118. Alternatively, proximity sensor 166 is optionally coupled to input controller 160 within I / O subsystem 106. Proximity sensor 166 optionally functions as described in U.S. patent application Ser. Nos. 11 / 241,839, "Proximity Detector In Handheld Device," 11 / 240,788, "Proximity Detector In Handheld Device," 11 / 620,702, "Using Ambient Light Sensor To Augment Proximity Sensor Output," 11 / 586,862, "Automated Response To And Sensing Of User Activity In Portable Devices," and 11 / 638,251, "Methods And Systems For Automatic Configuration Of Peripherals," which are incorporated herein by reference in their entireties. In some embodiments, the proximity sensor turns off and disables touchscreen 112 when the multifunction device is placed near the user's ear (e.g., when the user is making a phone call).

[0078] Device 100 also optionally includes one or more tactile output generators 167. FIG. 1A shows tactile output generators coupled to haptic feedback controller 161 in I / O subsystem 106. Tactile output generator 167 optionally includes one or more electroacoustic devices, such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). Contact intensity sensor 165 receives tactile feedback generation instructions from haptic feedback module 133 and generates a tactile output on device 100 that can be sensed by a user of device 100. In some embodiments, at least one tactile output generator is located on or proximate to a touch-sensitive surface (e.g., touch-sensitive display system 112) and, optionally, generates a tactile output by moving the touch-sensitive surface vertically (e.g., in / out of the surface of device 100) or horizontally (e.g., back and forth in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, as opposed to touchscreen display 112 being located on the front of device 100.

[0079] Device 100 also optionally includes one or more accelerometers 168. FIG. 1A shows accelerometer 168 coupled to peripherals interface 118. Alternatively, accelerometer 168 is optionally coupled to input controller 160 within I / O subsystem 106. Accelerometer 168 optionally functions as described in U.S. Patent Publication No. 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Publication No. 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated herein by reference in their entireties. In some embodiments, information is displayed on the touchscreen display in portrait or landscape view based on analysis of data received from the one or more accelerometers. In addition to the accelerometer(s) 168, the device 100 optionally includes a magnetometer (not shown) and a GPS (or GLONASS or other global navigation system) receiver (not shown) for obtaining information regarding the location and orientation (e.g., portrait or landscape) of the device 100.

[0080] Device 100 also optionally includes one or more depth camera sensors 175. FIG. 1A shows a depth camera sensor coupled to depth camera controller 169 in I / O subsystem 106. Depth camera sensor 175 receives data from the environment projected through the sensor. Depth camera sensor 175, in conjunction with imaging module 143 (also referred to as a camera module), is optionally used to determine a depth map of different portions of an image captured by imaging module 143. In some embodiments, the depth camera sensor is located on the front of device 100 so that images of the user with depth information are optionally captured for videoconferencing and for capturing selfie images with depth map data while the user views other videoconference participants on a touchscreen display. In some embodiments, the position of depth camera sensor 175 can be changed by the user (e.g., by rotating the lens and sensor within the device housing), so that depth camera sensor 175 is used for both videoconferencing and capturing still and / or video images, along with the touchscreen display.

[0081] In some embodiments, software components stored in memory 102 include operating system 126, communications module (or instruction set) 128, touch / motion module (or instruction set) 130, graphics module (or instruction set) 132, text input module (or instruction set) 134, Global Positioning System (GPS) module (or instruction set) 135, and applications (or instruction set) 136. Additionally, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) stores device / global internal state 157, as shown in FIGS. 1A and 3. Device / global internal state 157 includes one or more of: active application state, which indicates which applications, if any, are currently active; display state, which indicates which applications, views, or other information occupy various regions of touchscreen display 112; sensor state, which includes information obtained from the device's various sensors and input control devices 116; and location information regarding the location and / or orientation of the device.

[0082] Operating system 126 (e.g., Darwin®, RTXC®, LINUX®, UNIX®, OS X®, iOS®, WINDOWS®, or an embedded operating system such as VxWorks®) includes various software components and / or drivers that control and manage normal system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware and software components.

[0083] Communications module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by RF circuitry 108 and / or external port 124. External port 124 (e.g., Universal Serial Bus (USB), FIREWIRE®, etc.) is adapted to couple to other devices directly or indirectly via a network (e.g., the Internet, wireless LAN, etc.). In some embodiments, the external port is a multi-pin (e.g., 30-pin) connector that is the same as, similar to, and / or compatible with the 30-pin connector used on iPod® (trademark of Apple Inc.) devices.

[0084] Contact / motion module 130, optionally in conjunction with display controller 156, detects contact with touchscreen 112 and other touch-sensing devices (e.g., a touchpad or physical click wheel). Contact / motion module 130 includes various software components that perform various operations related to detecting contact, such as determining whether contact has occurred (e.g., detecting a finger-down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a surrogate for the force or pressure of the contact), determining whether there is movement of the contact and tracking the movement across the touch-sensitive surface (e.g., detecting one or more finger-drag events), and determining whether the contact has stopped (e.g., detecting a finger-up event or an interruption of the contact). Contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact, as represented by the series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact. These actions are optionally applied to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, contact / motion module 130 and display controller 156 detect contacts on the touchpad.

[0085] In some embodiments, contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (e.g., whether a user has “clicked” on an icon). In some embodiments, at least a subset of the intensity thresholds are determined according to software parameters (e.g., the intensity thresholds are not determined by the activation threshold of a particular physical actuator, but can be adjusted without changing the physical hardware of device 100). For example, the mouse “click” threshold of a trackpad or touchscreen display can be set to any of a wide range of predetermined thresholds without changing the trackpad or touchscreen display hardware. Additionally, in some implementations, a device user is provided with a software setting to adjust one or more of the set of intensity thresholds (e.g., by adjusting individual intensity thresholds and / or multiple intensity thresholds at once via a system-level click “intensity” parameter).

[0086] Contact / motion module 130 optionally detects gesture input by a user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different movements, timing, and / or intensities of detected contacts). Thus, gestures are optionally detected by detecting particular contact patterns. For example, detecting a finger tap gesture includes detecting a finger down event, followed by detecting a finger up (lift off) event at the same location (or substantially the same location) as the finger down event (e.g., the location of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface includes detecting a finger down event, followed by one or more finger drag events, followed by detecting a finger up (lift off) event.

[0087] Graphics module 132 includes various known software components that render and display graphics on touchscreen 112 or other display, including components that vary the visual impact (e.g., brightness, transparency, saturation, contrast, or other visual characteristics) of the displayed graphics. As used herein, the term "graphic" includes any object that can be displayed to a user, including, but not limited to, characters, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.

[0088] In some embodiments, graphics module 132 stores data representing graphics to be used. Each graphic is optionally assigned a corresponding code. Graphics module 132 receives one or more codes specifying the graphics to be displayed, including coordinate data and other graphic characteristic data, as needed, from an application or the like, and then generates screen image data to output to display controller 156.

[0089] The tactile feedback module 133 includes various software components for generating instructions used by the tactile output generator(s) 167 to generate tactile outputs at one or more locations on the device 100 in response to user interaction with the device 100.

[0090] Text input module 134 is optionally a component of graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other application requiring text input).

[0091] The GPS module 135 determines the location of the device and provides this information for use in various applications (e.g., to the phone 138 for use in location-based dialing, to the camera 143 as image / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).

[0092] Application 136 optionally includes the following modules (or sets of instructions), or a subset or superset thereof: • a contacts module 137 (sometimes called an address book or contact list); ●Telephone module 138, ●Videoconferencing module 139, ● an email client module 140; ● Instant messaging (IM) module 141, ●Training support module 142, a camera module 143 for still and / or video images, ● Image management module 144; ●Video player module, ●Music player module, ● Browser module 147, ● Calendar module 148, • A widget module 149 optionally including one or more of a weather widget 149-1, a stock price widget 149-2, a calculator widget 149-3, an alarm clock widget 149-4, a dictionary widget 149-5, and other widgets obtained by the user, and a user-created widget 149-6; a widget creator module 150 that creates user-created widgets 149-6; ● Search module 151, A video and music player module 152 that integrates a video player module and a music player module; ● Memo module 153, Map module 154, and / or ●Online video module 155.

[0093] Examples of other applications 136 optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, JAVA-enabled applications, encryption, digital rights management, voice recognition, and voice duplication.

[0094] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, contacts module 137 is used to manage an address book or contact list (e.g., stored in memory 102 or in the application internal state 192 of contacts module 137 in memory 370), optionally including adding name(s) to the address book, deleting name(s) from the address book, associating phone number(s), email address(es), street address(es), or other information with names, associating images with names, categorizing and sorting names, providing phone numbers or email addresses to initiate and / or facilitate communication by phone 138, videoconferencing module 139, email 140, or IM 141, and the like.

[0095] Telephone module 138, in conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, is optionally used to enter character sequences corresponding to telephone numbers, access one or more telephone numbers in contacts module 137, modify entered telephone numbers, dial respective telephone numbers, conduct conversations, and terminate or hang up when the conversation is completed. As previously mentioned, wireless communication optionally uses any of a number of communication standards, protocols, and technologies.

[0096] In conjunction with RF circuitry 108, audio circuitry 110, speaker 111, microphone 113, touch screen 112, display controller 156, light sensor 164, light sensor controller 158, touch / motion module 130, graphics module 132, text input module 134, contacts module 137, and telephone module 138, videoconferencing module 139 includes executable instructions for initiating, conducting, and terminating a videoconference between a user and one or more other participants in accordance with user commands.

[0097] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, email client module 140 contains executable instructions for composing, sending, receiving, and managing emails in response to user commands. In conjunction with image management module 144, email client module 140 greatly facilitates the creation and sending of emails with still or video images captured by camera module 143.

[0098] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, instant messaging module 141 includes executable instructions for entering character sequences corresponding to instant messages, modifying previously entered characters, sending respective instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephony-based instant messaging, or XMPP, SIMPLE, or IMPS for Internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, sent and / or received instant messages optionally include graphics, photos, audio files, video files, and / or other attachments supported by MMS and / or Enhanced Messaging Service (EMS). As used herein, "instant messaging" refers to both telephony-based messages (e.g., messages sent using SMS or MMS) and Internet-based messages (e.g., messages sent using XMPP, SIMPLE, or IMPS).

[0099] In conjunction with the RF circuitry 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, the training support module 142 includes executable instructions for creating workouts (e.g., with time, distance, and / or calorie burn goals), communicating with training sensors (sports devices), receiving training sensor data, calibrating sensors used to monitor workouts, selecting and playing music for workouts, and displaying, storing, and transmitting workout data.

[0100] In conjunction with touch screen 112, display controller 156, light sensor 164, light sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144, camera module 143 contains executable instructions for capturing and storing still images or video (including video streams) in memory 102, modifying characteristics of the still images or video, or deleting the still images or video from memory 102.

[0101] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, and camera module 143, image management module 144 contains executable instructions for arranging, modifying (e.g., editing), or otherwise manipulating, labeling, deleting, presenting (e.g., in a digital slide show or album), and storing still and / or video images.

[0102] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, browser module 147 contains executable instructions for browsing the Internet according to user commands, including retrieving, linking to, receiving, and displaying web pages or portions thereof, as well as attachments and other files linked to web pages.

[0103] In conjunction with RF circuitry 108, touch screen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, email client module 140, and browser module 147, calendar module 148 includes executable instructions for creating, displaying, modifying, and storing calendars and data associated with calendars (e.g., calendar entries, to-do lists, etc.) in accordance with user commands.

[0104] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, widget module 149 is optionally a mini-application downloaded and used by a user (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5), or a mini-application created by a user (e.g., user-created widget 149-6). In some embodiments, a widget includes an HTML (Hypertext Markup Language) file, a CSS (Cascading Style Sheets) file, and a JavaScript file. In some embodiments, a widget includes an XML (Extensible Markup Language) file and a JavaScript file (e.g., Yahoo! Widgets).

[0105] In conjunction with RF circuitry 108, touch screen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and browser module 147, widget creator module 150 is optionally used by a user to create a widget (e.g., turn a user-specified portion of a web page into a widget).

[0106] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, search module 151 includes executable instructions for searching memory 102 for text, music, sound, images, video, and / or other files that match one or more search criteria (e.g., one or more user-specified search terms) in accordance with user commands.

[0107] In conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, and browser module 147, video and music player module 152 includes executable instructions that enable a user to download and play recorded music and other sound files stored in one or more file formats, such as MP3 or AAC files, as well as executable instructions for displaying, presenting, or otherwise playing videos (e.g., on touchscreen 112 or on an external display connected via external port 124). In some embodiments, device 100 optionally includes the functionality of an MP3 player, such as an iPod (a trademark of Apple Inc.).

[0108] In conjunction with touch screen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, notes module 153 contains executable instructions for creating and managing notes, to-do lists, and the like according to user commands.

[0109] In conjunction with RF circuitry 108, touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, GPS module 135, and browser module 147, map module 154 is optionally used to receive, display, modify, and store maps and data associated with maps (e.g., driving directions, data regarding businesses and other points of interest at or near a particular location, and other location-based data) in accordance with user instructions.

[0110] In conjunction with touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, audio circuitry 110, speaker 111, RF circuitry 108, text input module 134, email client module 140, and browser module 147, online video module 155 contains instructions that enable a user to access, browse for, receive (e.g., by streaming and / or downloading), and play (e.g., on the touchscreen or on an external display connected via external port 124) particular online videos, send emails with links to particular online videos, and otherwise manage online videos in one or more file formats, such as H.264. In some embodiments, instant messaging module 141 is used to send links to particular online videos, rather than email client module 140. Additional description of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, filed June 20, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," and U.S. Patent Application No. 11 / 968,067, filed December 31, 2007, entitled "Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos," the contents of which are incorporated herein by reference in their entireties.

[0111] Each of the above-identified modules and applications corresponds to a set of executable instructions that perform one or more of the functions described above and methods described herein (e.g., the computer-implemented methods and other information processing methods described herein). These modules (e.g., sets of instructions) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise rearranged. For example, a video player module is optionally combined with a music player module into a single module (e.g., video and music player module 152 of FIG. 1A). In some embodiments, memory 102 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 102 optionally stores additional modules and data structures not described above.

[0112] In some embodiments, device 100 is a device in which operation of a predetermined set of functions on the device is performed exclusively through a touchscreen and / or touchpad. Using the touchscreen and / or touchpad as the primary input control device for operation of device 100 optionally reduces the number of physical input control devices (push buttons, dials, etc.) on device 100.

[0113] The set of predetermined functions performed only through the touchscreen and / or touchpad optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by a user, navigates device 100 to a main menu, home menu, or root menu from any user interface displayed on device 100. In such embodiments, a "menu button" is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device rather than a touchpad.

[0114] 1B is a block diagram illustrating exemplary components for event processing according to some embodiments. In some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g., within operating system 126) and a respective application 136-1 (e.g., any of applications 137-151, 155, 380-390 described above).

[0115] Event sorter 170 receives the event information and determines application 136-1 and application view 191 of application 136-1 to which the event information is to be delivered. Event sorter 170 includes event monitor 171 and event dispatcher module 174. In some embodiments, application 136-1 includes application internal state 192 that indicates the current application view that is displayed on touch-sensitive display 112 when the application is active or running. In some embodiments, device / global internal state 157 is used by event sorter 170 to determine which application(s) is currently active, and application internal state 192 is used by event sorter 170 to determine application view 191 to which the event information is to be delivered.

[0116] In some embodiments, application internal state 192 includes additional information such as one or more of resume information used when application 136-1 resumes execution, user interface state information indicating information being displayed or ready to be displayed by application 136-1, a state queue that allows the user to return to a previous state or view of application 136-1, and a redo / undo queue of previous actions taken by the user.

[0117] Event monitor 171 receives event information from peripherals interface 118. The event information includes information about a sub-event (e.g., a user touch on touch-sensitive display 112 as part of a multi-touch gesture). Peripherals interface 118 transmits information it receives from I / O subsystem 106 or sensors such as proximity sensor 166, accelerometer(s) 168, and / or microphone 113 (via audio circuitry 110). The information that peripherals interface 118 receives from I / O subsystem 106 includes information from touch-sensitive display 112 or a touch-sensitive surface.

[0118] In some embodiments, event monitor 171 sends requests to peripherals interface 118 at predetermined intervals. In response, peripherals interface 118 transmits event information. In other embodiments, peripherals interface 118 transmits event information only when there is a significant event (e.g., receipt of an input above a predetermined noise threshold and / or for more than a predetermined duration).

[0119] In some embodiments, event sorter 170 also includes a hit view determination module 172 and / or an active event recognizer determination module 173 .

[0120] Hit view determination module 172 provides software procedures that determine where a sub-event occurred within one or more views when touch-sensitive display 112 displays more than one view. A view consists of the controls and other elements that a user can see on the display.

[0121] Another aspect of a user interface associated with an application is the set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of the respective application) in which the touch is detected optionally corresponds to a programmatic level within the application's programmatic or view hierarchy. For example, the lowest-level view in which the touch is detected is optionally referred to as the hit view, and the set of events that are recognized as appropriate inputs is optionally determined based at least in part on the hit view of the initial touch that initiates the touch gesture.

[0122] Hit view determination module 172 receives information related to sub-events of a touch-based gesture. When an application has multiple views organized in a hierarchy, hit view determination module 172 identifies the hit view as the lowest view in the hierarchy that should process the sub-events. In most situations, the hit view is the lowest-level view in which an initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. After a hit view is identified by hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source as the hit view.

[0123] Active event recognizer determination module 173 determines which view(s) in the view hierarchy should receive a particular sequence of sub-events. In some embodiments, active event recognizer determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, active event recognizer determination module 173 determines that all views that contain the physical location of the sub-events are actively participating views, and therefore determines that all actively participating views should receive a particular sequence of sub-events. In other embodiments, even if a touch sub-event is completely confined to an area associated with one particular view, views higher in the hierarchy still remain actively participating views.

[0124] Event dispatcher module 174 dispatches event information to event recognizers (e.g., event recognizer 180). In embodiments that include active event recognizer determination module 173, event dispatcher module 174 delivers the event information to the event recognizers determined by active event recognizer determination module 173. In some embodiments, event dispatcher module 174 stores event information obtained by each event receiver 182 in an event queue.

[0125] In some embodiments, operating system 126 includes event sorter 170. Alternatively, application 136-1 includes event sorter 170. In still other embodiments, event sorter 170 is a stand-alone module or part of another module stored in memory 102, such as contact / motion module 130.

[0126] In some embodiments, application 136-1 includes multiple event handlers 190 and one or more application views 191, each containing instructions for processing touch events that occur within a respective view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognizers 180. Typically, each application view 191 includes multiple event recognizers 180. In other embodiments, one or more of event recognizers 180 are part of a separate module, such as a user interface kit (not shown) or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, the corresponding event handler 190 includes one or more of data updater 176, object updater 177, GUI updater 178, and / or event data 179 received from event sorter 170. Event handler 190 optionally utilizes or invokes data updater 176, object updater 177, or GUI updater 178 to update application internal state 192. Alternatively, one or more of the application views 191 include one or more respective event handlers 190. Also, in some embodiments, one or more of the data updater 176, object updater 177, and GUI updater 178 are included in the corresponding application view 191.

[0127] Each event recognizer 180 receives event information (e.g., event data 179) from event sorter 170 and identifies an event from the event information. Event recognizer 180 includes an event receiver 182 and an event comparator 184. In some embodiments, event recognizer 180 also includes metadata 183 and at least a subset of event delivery instructions 188 (optionally including sub-event delivery instructions).

[0128] Event receiver 182 receives event information from event sorter 170. The event information includes information about a sub-event, e.g., information about a touch or a movement of a touch. Depending on the sub-event, the event information also includes additional information, such as the position of the sub-event. When the sub-event involves a movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, the event includes a rotation of the device from one orientation to another (e.g., from portrait to landscape or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's attitude).

[0129] The event comparator 184 compares the event information with predefined event or sub-event definitions and determines the event or sub-event, or determines or updates the state of the event or sub-event, based on the comparison. In some embodiments, the event comparator 184 includes an event definition 186. The event definition 186 includes a definition of an event (e.g., a sequence of predefined sub-events), such as Event 1 (187-1) and Event 2 (187-2). In some embodiments, sub-events within an event (187) include, for example, a touch start, a touch end, a touch movement, a touch cancellation, and multiple touches. In one example, the definition for Event 1 (187-1) is a double tap on a displayed object. The double tap includes, for example, a first touch on a displayed object relative to a predefined stage (touch start), a first lift-off (touch end) relative to the predefined stage, a second touch on a displayed object relative to the predefined stage (touch start), and a second lift-off (touch end) relative to the predefined stage. In another example, the definition for Event 2 (187-2) is a drag on a displayed object. A drag includes, for example, a touch (or contact) of a display object to a predetermined stage, a movement of the touch on the touch-sensitive display 112, and a lift-off of the touch (end of the touch). In some embodiments, the event also includes information about one or more associated event handlers 190.

[0130] In some embodiments, event definitions 187 include a definition of the event for each user interface object. In some embodiments, event comparator 184 performs a hit test to determine which user interface object is associated with the sub-event. For example, in an application view in which three user interface objects are displayed on touch-sensitive display 112, when a touch is detected on touch-sensitive display 112, event comparator 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with a corresponding event handler 190, event comparator 184 uses the results of the hit test to determine which event handler 190 to activate. For example, event comparator 184 selects the event handler associated with the sub-event and object that triggers the hit test.

[0131] In some embodiments, the definition for each event (187) also includes a delay action that delays transmission of the event information until after it has been determined whether the sub-event sequence corresponds to the event recognizer's event type.

[0132] If the respective event recognizer 180 determines that the sequence of sub-events does not match any event in the event definition 186, the respective event recognizer 180 enters an event disabled, event failed, or event finished state and thereafter ignores subsequent sub-events of the touch gesture. In this situation, any other event recognizers that remain active for the hit view continue to track and process sub-events of the ongoing touch gesture.

[0133] In some embodiments, corresponding event recognizers 180 include metadata 183 with configurable properties, flags, and / or lists that indicate to actively participating event recognizers how the event delivery system should perform sub-event delivery. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how event recognizers interact with each other or how event recognizers are enabled to interact with each other. In some embodiments, metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are delivered to various levels in the view or programmatic hierarchy.

[0134] In some embodiments, each event recognizer 180 activates an event handler 190 associated with an event when one or more specific sub-events of the event are recognized. In some embodiments, each event recognizer 180 delivers event information associated with the event to the event handler 190. Activating the event handler 190 is separate from sending (and deferring sending) sub-events to the respective hit view. In some embodiments, the event recognizer 180 pops a flag associated with the recognized event, and the event handler 190 associated with that flag captures the flag and performs a predetermined process.

[0135] In some embodiments, the event delivery instructions 188 include sub-event delivery instructions that deliver event information about a sub-event without activating an event handler. Instead, the sub-event delivery instructions deliver the event information to an event handler associated with a set of sub-events or to an actively participating view. The event handler associated with the set of sub-events or the actively participating view receives the event information and performs predetermined processing.

[0136] In some embodiments, data updater 176 creates and updates data used by application 136-1. For example, data updater 176 updates phone numbers used by contacts module 137 or stores video files used by a video player module. In some embodiments, object updater 177 creates and updates objects used by application 136-1. For example, object updater 177 creates new user interface objects or updates the positions of user interface objects. GUI updater 178 updates the GUI. For example, GUI updater 178 prepares display information and sends the display information to graphics module 132 for display on the touch-sensitive display.

[0137] In some embodiments, event handler(s) 190 include or have access to data updater 176, object updater 177, and GUI updater 178. In some embodiments, data updater 176, object updater 177, and GUI updater 178 are included in a single module of the respective application 136-1 or application view 191. In other embodiments, they are included in two or more software modules.

[0138] It will be understood that the above discussion regarding event processing of user touches on a touch-sensitive display also applies to other forms of user input for operating multifunction device 100 having input devices, not all of which are necessarily initiated on a touchscreen. For example, mouse movements and mouse button presses, touch movements such as tapping, dragging, scrolling on a touchpad, optionally coordinated with single or multiple keyboard presses or holds, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof, are optionally utilized as inputs corresponding to sub-events that define the recognized event.

[0139] FIG. 2 illustrates portable multifunction device 100 with touchscreen 112 according to some embodiments. The touchscreen optionally displays one or more graphics within user interface (UI) 200. In this embodiment, as well as other embodiments described below, a user may select one or more of the graphics by performing a gesture on the graphics, for example, using one or more fingers 202 (not drawn to scale) or one or more styluses 203 (not drawn to scale). In some embodiments, selection of one or more graphics is performed when the user breaks contact with the one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (left to right, right to left, upward, and / or downward), and / or a roll of a finger (right to left, left to right, upward, and / or downward) in contact with device 100. In some implementations or situations, accidental contact with a graphic does not select the graphic. For example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon optionally does not select the corresponding application.

[0140] Device 100 also optionally includes one or more physical buttons, such as a "home" button or menu button 204. As previously mentioned, menu button 204 is optionally used to navigate to any application 136, optionally within a set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key within a GUI displayed on touchscreen 112.

[0141] In some embodiments, device 100 includes touchscreen 112, menu button 204, pushbuttons 206 for powering the device on / off and locking the device, volume control buttons 208, subscriber identity module (SIM) card slot 210, headset jack 212, and external docking / charging port 124. Pushbutton 206 is optionally used to power the device on / off by pressing and holding the button down for a predetermined period of time, to lock the device by pressing and releasing the button before the predetermined period of time has elapsed, and / or to unlock the device or begin the unlocking process. In alternative embodiments, device 100 also accepts verbal input via microphone 113 for activating or deactivating some functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of a contact on touchscreen 112 and / or one or more tactile output generators 167 for generating a tactile output for a user of device 100.

[0142] FIG. 3 is a block diagram of an exemplary multifunction device having a display and a touch-sensitive surface according to some embodiments. Device 300 need not be portable. In some embodiments, device 300 is a laptop computer, a desktop computer, a tablet computer, a multimedia playback device, a navigation device, an educational device (such as a child's learning toy), a gaming system, or a control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 interconnecting these components. Communication bus 320 optionally includes circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes an input / output (I / O) interface 330 with a display 340, which is typically a touchscreen display. I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350, a touchpad 355, a tactile output generator 357 (e.g., similar to tactile output generator 167 described above with reference to FIG. 1A ) that generates tactile output on device 300, and sensors 359 (e.g., light, acceleration, proximity, touch-sensing, and / or contact intensity sensors similar to contact intensity sensor 165 described above with reference to FIG. 1A ). Memory 370 includes high-speed random-access memory such as DRAM, SRAM, DDR RAM, or other random-access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. Memory 370 optionally includes one or more storage devices located remotely from CPU 310. In some embodiments, memory 370 stores programs, modules, and data structures similar to, or a subset of, the programs, modules, and data structures stored in memory 102 of portable multifunction device 100 (FIG. 1A).Additionally, memory 370 optionally stores additional programs, modules, and data structures not present in memory 102 of portable multifunction device 100. For example, memory 370 of device 300 optionally stores drawing module 380, presentation module 382, ​​word processing module 384, website creation module 386, disc authoring module 388, and / or spreadsheet module 390, whereas memory 102 of portable multifunction device 100 (FIG. 1A) optionally does not store these modules.

[0143] Each of the above-identified elements of FIG. 3 is optionally stored in one or more of the memory devices mentioned above. Each of the above-identified modules corresponds to a set of instructions that perform the functions described above. The above-identified modules or programs (e.g., instruction sets) need not be implemented as separate software programs, procedures, or modules; thus, in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores a subset of the above-identified modules and data structures. Additionally, memory 370 optionally stores additional modules and data structures not described above.

[0144] Attention is now directed to user interface embodiments, optionally implemented on portable multifunction device 100, for example.

[0145] 4A shows an exemplary user interface for a menu of applications on portable multifunction device 100 according to some embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, user interface 400 includes the following elements, or a subset or superset thereof: signal strength indicator(s) 402 for wireless communication(s), such as cellular and Wi-Fi signals; ●Time 404, ●Bluetooth indicator 405, ● Battery status indicator 406, A tray 408 with icons of frequently used applications, such as: An icon 416 for the phone module 138, labeled "Phone," optionally including an indicator 414 of the number of missed calls or voicemail messages; icon 418 of the email client module 140, labeled "Mail," optionally including an indicator 410 of the number of unread emails; ○ An icon 420 for the browser module 147, labeled "Browser"; and ○ An icon 422 of the video and music player module 152, also called the iPod (trademark of Apple Inc.) module 152, labeled "iPod"; and ● Icons of other applications, such as: ○ Icon 424 of IM module 141, labeled "Messages"; icon 426 of the calendar module 148, labeled "Calendar"; ○ Icon 428 of the image management module 144, labeled "Photos" ○ An icon 430 of the camera module 143, labeled "camera"; ○ Icon 432 of the online video module 155, labeled "Online Video"; Icon 434 of Stocks widget 149-2, labeled "Stock Prices" ○ An icon 436 for the map module 154, labeled "Map"; Icon 438 of weather widget 149-1, labeled "Weather" ○ Icon 440 of alarm clock widget 149-4, labeled "Clock" ○ Icon 442 of Training Support Module 142, labeled "Training Support"; ○ An icon 444 of the Notes module 153 labeled "Notes," and ○ An icon 446 for a settings application or module labeled “Settings” that provides access to settings for the device 100 and its various applications 136.

[0146] 4A are merely exemplary. For example, icon 422 for video and music player module 152 may be labeled "Music" or "Music Player," although other labels are optionally used for various application icons. In some embodiments, the label for each application icon includes the name of the application corresponding to the respective application icon. In some embodiments, the label for a particular application icon is different from the name of the application corresponding to that particular application icon.

[0147] 4B shows an example user interface on a device (e.g., device 300 of FIG. 3 ) that has touch-sensitive surface 451 (e.g., tablet or touchpad 355 of FIG. 3 ) that is separate from display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) that detect the intensity of a contact on touch-sensitive surface 451, and / or one or more tactile output generators 357 that generate a tactile output for a user of device 300.

[0148] Although some of the following examples are given with reference to input on touchscreen display 112 (which combines a touch-sensitive surface and a display), in some embodiments, the device detects input on a touch-sensitive surface that is separate from the display shown in FIG. 4B . In some embodiments, the touch-sensitive surface (e.g., 451 in FIG. 4B ) has a primary axis (e.g., 452 in FIG. 4B ) that corresponds to a primary axis (e.g., 453 in FIG. 4B ) on the display (e.g., 450). According to these embodiments, the device detects contact with touch-sensitive surface 451 (e.g., 460 and 462 in FIG. 4B ) at locations that correspond to respective locations on the display (e.g., in FIG. 4B , 460 corresponds to 468 and 462 corresponds to 470). In this way, user input (e.g., contacts 460 and 462 and their movement) detected by the device on the touch-sensitive surface (e.g., 451 in FIG. 4B ) is used by the device to operate a user interface on the display (e.g., 450 in FIG. 4B ) of the multifunction device when the touch-sensitive surface is separate from the display. It should be understood that similar methods are optionally used for the other user interfaces described herein.

[0149] Additionally, while the following examples are given primarily with reference to finger input (e.g., finger contacts, finger tap gestures, finger swipe gestures), it should be understood that in some embodiments, one or more of the finger inputs are replaced with input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture is optionally replaced by a mouse click (e.g., instead of a contact) followed by movement of a cursor along the path of the swipe (e.g., instead of movement of the contact). As another example, a tap gesture is optionally replaced with a mouse click while the cursor is positioned over the location of the tap gesture (e.g., instead of detecting a contact and then ceasing contact detection). Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice are optionally used simultaneously, or a mouse and finger contacts are optionally used simultaneously.

[0150] FIG. 5A shows an exemplary personal electronic device 500. Device 500 includes a main body 502. In some embodiments, device 500 can include some or all of the features described with respect to devices 100 and 300 (e.g., FIGS. 1A-4B). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter touchscreen 504. Alternatively or in addition to touchscreen 504, device 500 has a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or the touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of an applied contact (e.g., a touch). The one or more intensity sensors of touchscreen 504 (or the touch-sensitive surface) can provide output data representing the intensity of the touch. A user interface of device 500 can respond to a touch based on the intensity of the touch, meaning that touches of different intensities can invoke different user interface actions on device 500.

[0151] Exemplary techniques for detecting and processing touch intensity can be found, for example, in International Patent Application No. PCT / US2013 / 040061, filed May 8, 2013, entitled "Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application," published as International Patent Application No. WO / 2013 / 169849, and related applications, including International Patent Application No. PCT / US2013 / 069483, filed November 11, 2013, entitled "Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships," published as International Patent Application No. WO / 2014 / 105276, each of which is incorporated herein by reference in its entirety.

[0152] In some embodiments, device 500 has one or more input mechanisms 506 and 508. Input mechanisms 506 and 508, if included, can be physical mechanisms. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, can allow device 500 to be attached to, for example, hats, eyewear, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, pants, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow a user to wear device 500.

[0153] FIG. 5B illustrates an exemplary personal electronic device 500. In some embodiments, device 500 can include some or all of the components described with respect to FIGS. 1A, 1B, and 3. Device 500 has a bus 512 that operably couples an I / O section 514 to one or more computer processors 516 and a memory 518. I / O section 514 can be connected to a display 504, which can have touch-sensing components 522 and, optionally, an intensity sensor 524 (e.g., a contact intensity sensor). Additionally, I / O section 514 can be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near-field communication (NFC), cellular, and / or other wireless communication techniques. Device 500 can include input mechanisms 506 and / or 508. Input mechanism 506 is optionally a rotatable input device or a depressible and rotatable input device, for example. In some examples, input mechanism 508 is optionally a button.

[0154] In some examples, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various sensors, such as a GPS sensor 532, an accelerometer 534, an orientation sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or combinations thereof, all of which may be operably connected to the I / O section 514.

[0155] The memory 518 of the personal electronic device 500 may include one or more non-transitory computer-readable storage media for storing computer-executable instructions that, when executed by one or more computer processors 516, can cause the computer processors to perform the techniques described below, including processes 700, 900, 1100, 1300, 1500, and 1700 (FIGS. 7, 9, 11, 13, 15, and 17). A computer-readable storage medium may be any medium that can tangibly contain or store computer-executable instructions for use by or in connection with an instruction execution system, apparatus, or device. In some examples, the storage medium is a transient computer-readable storage medium. In some examples, the storage medium is a non-transitory computer-readable storage medium. A non-transitory computer-readable storage medium may include, but is not limited to, magnetic, optical, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, optical disks based on CD, DVD, or Blu-ray technology, and resident solid-state memory such as flash, solid-state drives, etc. Personal electronic device 500 is not limited to the components and configuration of Figure 5B and may include other or additional components in multiple configurations.

[0156] As used herein, the term "affordance" refers to a user-interactive graphical user interface object that is optionally displayed on the display screen of device 100, 300, and / or 500 (FIGS. 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each optionally constitute an affordance.

[0157] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations involving a cursor or other location marker, the cursor acts as the “focus selector,” such that when input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 of FIG. 3 or touch-sensitive surface 451 of FIG. 4B ) while the cursor is positioned over a particular user interface element (e.g., a button, window, slider, or other user interface element), the particular user interface element is adjusted according to the detected input. In some implementations involving a touchscreen display (e.g., touch-sensitive display system 112 of FIG. 1A or touchscreen 112 of FIG. 4A ) that enables direct interaction with user interface elements on the touchscreen display, a detected contact on the touchscreen acts as the “focus selector,” such that when input (e.g., a press input by contact) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one region of the user interface to another region of the user interface without corresponding cursor movement or contact movement on the touchscreen display (e.g., by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves to follow the movement of focus between various regions of the user interface. Regardless of the particular form the focus selector takes, the focus selector is generally a user interface element (or contact on a touchscreen display) that is controlled by the user to communicate the user's intended interaction with the user interface (e.g., by indicating to the device the element of the user interface with which the user intends to interact).For example, while a press input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen), the position of a focus selector (e.g., a cursor, touch, or selection box) over a corresponding button indicates that the user intends to activate that corresponding button (and not other user interface elements shown on the device's display).

[0158] As used herein and in the claims, the term "characteristic intensity" of a contact refers to a characteristic of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on a plurality of intensity samples. The characteristic intensity is optionally based on a predetermined number of intensity samples, i.e., a set of intensity samples collected during a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detecting the contact, before detecting lift-off of the contact, before or after detecting the start of contact movement, before detecting the end of the contact, before or after detecting an increase in the intensity of the contact, and / or before or after detecting a decrease in the intensity of the contact). The characteristic intensity of the contact is optionally based on one or more of the maximum intensity of the contact, the mean intensity of the contact, the average intensity of the contact, the top 10 percentile intensity of the contact, half the maximum intensity of the contact, 90 percent of the maximum intensity of the contact, etc. In some embodiments, the duration of the contact is used in determining the characteristic intensity (e.g., when the characteristic intensity is an average of the intensity of the contact over time). In some embodiments, the characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an operation is performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this example, a contact having a characteristic intensity that does not exceed the first threshold results in a first action, a contact having a characteristic intensity that exceeds the first intensity threshold but not the second intensity threshold results in a second action, and a contact having a characteristic intensity that exceeds the second threshold results in a third action. In some embodiments, the comparison between the characteristic intensity and the one or more thresholds is not used to determine whether to perform the first action or the second action, but rather to determine whether to perform one or more actions (e.g., whether to perform the respective action or to refrain from performing the respective action).

[0159] FIG. 5C illustrates detecting multiple contacts 552A-552E on touch-sensitive display screen 504 by multiple intensity sensors 524A-524D. FIG. 5C additionally includes an intensity diagram illustrating the current intensity measurements of intensity sensors 524A-524D relative to intensity units. In this example, intensity sensors 524A and 524D each measure 9 intensity units, and intensity sensors 524B and 524C each measure 7 intensity units. In some implementations, the aggregate intensity is the sum of the intensity measurements of multiple intensity sensors 524A-524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned a respective intensity that is a fraction of the aggregate intensity. FIG. 5D illustrates assigning aggregate intensities to contacts 552A-552E based on their distance from center of force 554. In this example, contacts 552A, 552B, and 552E are each assigned a contact intensity of 8 intensity units of aggregate intensity, and contacts 552C and 552D are each assigned a contact intensity of 4 intensity units of aggregate intensity. More generally, in some implementations, each contact j is assigned a respective intensity Ij, which is a fraction of a total intensity A, according to a predetermined mathematical function Ij=A·(Dj / ΣDi), where Dj is the distance from the center of force to the respective contact j, and ΣDi is the sum of the distances from the center of force to all respective contacts (e.g., from i=1 to the end). The operations described with reference to FIGS. 5C-5D can be performed using electronic devices similar to or identical to device 100, 300, or 500. In some embodiments, the characteristic intensity of a contact is based on one or more intensities of the contact. In some embodiments, an intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). Note that the intensity diagrams are not part of the displayed user interface, but are included in FIGS. 5C-5D as an aid to the reader.

[0160] In some embodiments, a portion of the gesture is identified for purposes of identifying the characteristic intensity. For example, the touch-sensitive surface optionally receives successive swipe contacts that transition from a start location to an end location, at which point the intensity of the contacts increases. In this example, the characteristic intensity of the contacts at the end location is optionally based on only a portion of the successive swipe contacts (e.g., only the portion of the swipe contacts at the end location) rather than the entire swipe contact. In some embodiments, a smoothing algorithm is optionally applied to the intensity of the swipe contacts before determining the characteristic intensity of the contacts. For example, the smoothing algorithm optionally includes one or more of an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms eliminate small increases or decreases in the intensity of the swipe contacts for purposes of identifying the characteristic intensity.

[0161] The intensity of a contact on the touch-sensitive surface is optionally characterized with respect to one or more intensity thresholds, such as a contact-detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to an intensity at which the device performs an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, the deep press intensity threshold corresponds to an intensity at which the device performs an action different from an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact is detected having a characteristic intensity below the light press intensity threshold (e.g., above a nominal contact-detection intensity threshold below which the contact is not detected), the device moves the focus selector according to the movement of the contact on the touch-sensitive surface without performing an action associated with the light press intensity threshold or the deep press intensity threshold. In general, unless otherwise specified, these intensity thresholds are consistent across the various sets of user interface diagrams.

[0162] An increase in the characteristic intensity of a contact from an intensity below the light press intensity threshold to an intensity between the light press intensity threshold and the deep press intensity threshold may be referred to as inputting a "light press." An increase in the characteristic intensity of a contact from an intensity below the deep press intensity threshold to an intensity above the deep press intensity threshold may be referred to as inputting a "deep press." An increase in the characteristic intensity of a contact from an intensity below the contact-detection intensity threshold to an intensity between the contact-detection intensity threshold and the light press intensity threshold may be referred to as detecting a contact on the touch surface. A decrease in the characteristic intensity of a contact from an intensity above the contact-detection intensity threshold to an intensity below the contact-detection intensity threshold may be referred to as detecting a lift-off of the contact from the touch surface. In some embodiments, the contact-detection intensity threshold is zero. In some embodiments, the contact-detection intensity threshold is greater than zero.

[0163] In some embodiments described herein, one or more actions are performed in response to detecting a gesture including a respective press input or in response to detecting a respective press input performed by a respective contact (or multiple contacts), where the respective press inputs are detected based at least in part on detecting an increase in intensity of the contact (or multiple contacts) above a press input intensity threshold. In some embodiments, the respective actions are performed in response to detecting an increase in intensity of the respective contact above the press input intensity threshold (e.g., a “downstroke” of the respective press input). In some embodiments, the press input includes an increase in intensity of the respective contact above the press input intensity threshold followed by a decrease in intensity of the contact below the press input intensity threshold, and the respective actions are performed in response to detecting a subsequent decrease in intensity of the respective contact below the press input threshold (e.g., an “upstroke” of the respective press input).

[0164] Figures 5E-5H show the intensity thresholds of the light presses in Figure 5E (e.g., "IT L ") to the intensity threshold for deep depressions in Figure 5H (e.g., "IT D5 illustrates the detection of a gesture including a press input corresponding to an increase in the intensity of contact 562 to an intensity above a deep press intensity threshold (e.g., "IT 2"). The gesture performed by contact 562 is detected on touch-sensitive surface 560, and cursor 576 is displayed over application icon 572B corresponding to app2 on display user interface 570, which includes application icons 572A-572D displayed within predetermined region 574. In some embodiments, the gesture is detected on touch-sensitive display 504. An intensity sensor detects the intensity of the contact on touch-sensitive surface 560. The device detects when the intensity of contact 562 exceeds a deep press intensity threshold (e.g., "IT 2"). D Contact 562 is maintained on touch-sensitive surface 560. In response to detecting the gesture, a deep press intensity threshold (e.g., "IT") is exceeded during the gesture. D "), reduced-scale representations 578A-578C (e.g., thumbnails) of recently opened documents are displayed for App2, as shown in FIGS. 5F-5H. In some embodiments, this intensity, which is compared to one or more intensity thresholds, is the characteristic intensity of the contact. Note that the intensity diagrams for contact 562 are not part of the displayed user interface, but are included in FIGS. 5E-5H as an aid to the reader.

[0165] In some embodiments, the display of representations 578A-578C includes animation. For example, as shown in FIG. 5F, representation 578A is first displayed adjacent to application icon 572B. As the animation progresses, as shown in FIG. 5G, representation 578A moves upward and representation 578B is displayed adjacent to application icon 572B. Then, as shown in FIG. 5H, representation 578A moves upward and representation 578B moves upward toward representation 578A, and representation 578C is displayed adjacent to application icon 572B. Representations 578A-578C form an array above icon 572B. In some embodiments, the animation progresses according to the intensity of contact 562, as shown in FIGS. 5F-5G, as the intensity of contact 562 exceeds a deep press intensity threshold (e.g., "ITD "), representations 578A-578C appear and move upward. In some embodiments, the intensity on which the animation progression is based is a characteristic intensity of the contact. The operations described with reference to FIGS. 5E-5H can be performed using electronic devices similar to or identical to device 100, 300, or 500.

[0166] In some embodiments, the device employs intensity hysteresis to avoid accidental input, sometimes referred to as “jitter,” and the device defines or selects a hysteresis intensity threshold that has a predetermined relationship to the press input intensity threshold (e.g., the hysteresis intensity threshold is X intensity units below the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the press input intensity threshold). Thus, in some embodiments, the press input includes an increase in the intensity of each contact above the press input intensity threshold followed by a decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the press input intensity threshold, and a respective action is performed in response to detecting a subsequent decrease in the intensity of each contact below the hysteresis intensity threshold (e.g., an “upstroke” of each press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in the intensity of the contact from an intensity below the hysteresis intensity threshold to an intensity above the press input intensity threshold, and optionally a subsequent decrease in the intensity of the contact to an intensity below the hysteresis intensity, and a respective action is performed in response to detecting the press input (e.g., an increase in the intensity of the contact or a decrease in the intensity of the contact, as the case may be).

[0167] For ease of explanation, descriptions of operations performed in response to a press input associated with a press input intensity threshold, or a gesture including a press input, are optionally triggered in response to detecting any of: an increase in the intensity of the contact above the press input intensity threshold; an increase in the intensity of the contact from an intensity below a hysteresis intensity threshold to an intensity above the press input intensity threshold; a decrease in the intensity of the contact below the press input intensity threshold; and / or a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to the press input intensity threshold. Further, in examples where an operation is described as being performed in response to detecting a decrease in the intensity of the contact below a press input intensity threshold, the operation is optionally performed in response to detecting a decrease in the intensity of the contact below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.

[0168] Attention is now directed to embodiments of user interfaces (“UIs”) and related processes implemented on an electronic device such as portable multifunction device 100, device 300, or device 500.

[0169] 6A-6N show example user interfaces for managing camera effects, according to some embodiments. The user interfaces in these figures are used to illustrate processes described below, including the process in FIG.

[0170] FIG. 6A illustrates an electronic device 600 having multiple cameras 602 and 603 (e.g., on the back of the electronic device 600). In some embodiments, the device 600 includes one or more features of the devices 100, 300, and / or 500. In some examples, the electronic device (e.g., 600) has multiple cameras with fixed but different focal lengths. In some examples, the electronic device (e.g., 600) has multiple cameras with fixed but different focal lengths. In some embodiments, in addition to having different fixed focal lengths, the multiple cameras have different fixed fields of view and different fixed optical magnification characteristics. In some embodiments, a camera (e.g., 602) captures image data using multiple focal lengths. In some embodiments, one camera (e.g., 602) captures multiple focal lengths and therefore produces the same results as multiple cameras with fixed but different focal lengths. In some examples, the electronic device includes a depth camera, such as an infrared camera, a thermographic camera, or a combination thereof. In some examples, the device further includes a lighting device (e.g., a light projector), such as an IR flood light, a structured light projector, or a combination thereof. The lighting device is optionally used to illuminate the object during image capture by the visible light camera and the depth camera (e.g., the IR camera), and information from the depth camera and the visible light camera is used to determine a depth map of different portions of the object captured by the visible light camera. In some embodiments, the lighting effects described herein are displayed using discrepancy information from two cameras (e.g., two visible light cameras) for rear-facing images and depth information from the depth camera combined with image data from the visible light camera for front-facing images (e.g., selfie images). In some embodiments, the same user interface is used when determining depth information using two visible light cameras and when determining depth information using the depth camera, providing a consistent experience to the user even when using dramatically different techniques to determine the information used in generating the lighting effects.In some embodiments, while displaying a camera user interface with one of the lighting effects applied, the device detects selection of a camera switch affordance and switches from a front-facing camera (e.g., a depth camera and a visible-light camera) to a rear-facing camera (e.g., two visible-light cameras spaced apart from each other) (or vice versa), replacing the display from the front-facing camera's field of view to the rear-facing camera's field of view (or vice versa) while maintaining the display of the user interface controls for applying the lighting effects.

[0171] 6B, electronic device 600 includes a display 604 that is touch-sensitive (e.g., a touchscreen), and the display displays image data received from camera 602. In some embodiments, the display is different from the touch-sensitive surface.

[0172] Figure 6B further shows electronic device 600 displaying, on display 604, a camera application user interface 606 for capturing images with cameras 602 and / or 603. Camera application user interface 606 further includes a digital viewfinder 608 that includes a live preview of the field of view of camera 602. As shown in Figure 6B, the field of view of the camera includes foreground objects (e.g., a person) and background objects (e.g., a fence).

[0173] Further, in FIG. 6B , the camera application user interface includes a filter receptacle 610, which is represented as a hexagon overlaid on the digital viewfinder 608. In some embodiments, the filter receptacle (e.g., 610) is represented as a circle, a triangle, or any other geometric shape. In some embodiments, the filter receptacle (e.g., 610) is a picture, icon, or text representation that provides a user with an indication regarding the current filter. In the embodiment of FIG. 6B , the filter receptacle (e.g., 610) is a transparent representation of an object (e.g., a hexagon) that allows various filter representations to appear as if they are moving through the transparent object. In some embodiments, the filter receptacle can be displayed above, below, to the left, or to the right of the digital viewfinder (e.g., 608) (e.g., not overlaid on the viewfinder).

[0174] The user interface of FIG. 6B further illustrates a filter picker user interface 612 in a collapsed (e.g., minimized) state. The collapsed filter picker user interface 612 is positioned along an edge of the digital viewfinder 608. In some embodiments, the collapsed filter picker user interface is optionally displayed on the top, bottom, left, or right side of the digital viewfinder (e.g., 608). In some embodiments, the collapsed filter picker user interface (e.g., 612) includes one or more icons corresponding to multiple filter representations arranged in one or more rows and columns, or icons arranged in a circular orientation. In some embodiments, the collapsed filter picker user interface (e.g., 612) is displayed in any position corresponding to the digital viewfinder. In some embodiments, the collapsed filter picker user interface (e.g., 612) is outlined (e.g., bordered) to distinguish the filter picker user interface from the digital viewfinder (e.g., 608). In some embodiments, the collapsed filter picker user interface (e.g., 612) is translucent (or partially translucent) and has no visible border. As a result, in some examples, the border of the collapsed filter picker user interface blends in with (e.g., is indistinguishable from) the digital viewfinder (e.g., 608).

[0175] 6B , a collapsed filter picker user interface 612 includes one or more filter representations (e.g., 614A, 614B, 614C, 614D, 614E) that are displayed on the display 604. In some embodiments, the collapsed filter picker user interface (e.g., 612) optionally includes filter representations that are not displayed on the display (e.g., they are off-screen). Filter representations that are not displayed within the collapsed filter picker user interface (e.g., 612) are optionally displayed on a device that detects an input (e.g., a swipe gesture) that results in scrolling of the filter representations through the filter receptacle (e.g., 610).

[0176] As further shown in FIG. 6B , the electronic device 600 displays a filter representation (e.g., 614A) in a filter receptacle (e.g., 610) to indicate the filter applied to the live preview displayed in the digital viewfinder 608. In some embodiments, the filter representation 614A corresponds to a “natural light” lighting (e.g., filter) option. Thus, a subject (e.g., a person) in the digital viewfinder 608 is displayed without applying any additional lighting effects to the image. In some examples, the filter representation (e.g., 614A) corresponds to a “studio light” lighting effect filter, a “contour light” lighting effect filter, a “stage light” lighting effect filter, or a “stage light MONO” lighting effect filter. Each of the preceding lighting effect filters affects the visual characteristics of the image displayed in the digital viewfinder 608 (e.g., by simulating the effect of shining different constellations of light on the subject's face in the digital viewfinder based on a depth map of the subject's face). In some embodiments, the "natural light" lighting option includes modifying the image based on the depth information without applying additional lighting effects, for example, by blurring the background of the image without blurring at least a portion of the foreground of the image.

[0177] As further shown in FIG. 6B , when the filter picker is in a collapsed state, filter representations (e.g., 614B, 614C, 614D, 614E) that are not displayed in the filter receptacle are displayed using different visual characteristics (e.g., shading) than the filter representations (e.g., 614A) that are displayed in the filter receptacle. In some embodiments, the different visual characteristics include color, shape, and size. As further shown in FIG. 6B , filter representations (e.g., 614B, 614C, 614D, 614E) that are not displayed in the filter receptacle are displayed at different distances (e.g., progressively shorter, progressively longer) from each other based on their position in the list of filter representations of the collapsed filter picker user interface (e.g., 612). Thus, in some embodiments, the farther a filter representation (e.g., 614E) is from the filter receptacle (e.g., 610), the closer it is positioned on the display relative to the filter representation (e.g., 614D).

[0178] In some examples, in response to receiving an input (e.g., a tap) in a collapsed filter picker user interface (e.g., 612) at a location corresponding to one of the filter representations (e.g., 614B, 614C, 614D, 614E), the electronic device (e.g., 600) applies the filter corresponding to the filter representation corresponding to the input location. Thus, a user tap on one of the filters not in the filter receptacle causes the filter representation to be scrolled into the filter receptacle by the tap, and the electronic device 600 applies the filter corresponding to the filter representation in the filter receptacle (e.g., 610). In some examples, a swipe input causes a scroll input, and the filter representations scroll through the filter receptacles. Thus, when the filter in the filter receptacle changes, the electronic device applies the filter currently in the filter receptacle (e.g., 610).

[0179] 6C-6E illustrate user interfaces illustrating activation of an expanded filter picker user interface. As shown in FIG. 6C, the electronic device 600 receives a tap input 616 at the filter receptacle 610. In some embodiments, the tap input is over any area along the edge of the digital viewfinder 608. In some embodiments, the tap input is over any area corresponding to the collapsed filter picker user interface 612. In some embodiments, the input corresponds to a swipe gesture, a tap and hold gesture (e.g., tap and hold for a predetermined period of time), or an input having a characteristic intensity above a respective intensity threshold.

[0180] As shown in FIG. 6D , in response to receiving tap input 616, electronic device 600 displays a transformation of the previously collapsed (e.g., minimized) filter picker user interface (e.g., 612) of FIG. 6B into an expanded filter picker user interface 613. In some embodiments, the filter picker user interface displayed in a collapsed state in FIG. 6B begins to transform into an arc (e.g., wheel) shaped object in FIG. 6D . In some examples, as the expanded filter picker user interface (e.g., 613) expands on the display (e.g., overlapping the digital viewfinder), the filter picker user interface transforms into a wheel or rectangular shape. In some examples, as the expanded filter picker user interface (e.g., 613) expands from the edge of the digital viewfinder (e.g., 608) toward the center of the display 604, the filter picker user interface (e.g., 612) overlaps the digital viewfinder 608. In some examples, the expanded filter picker user interface (e.g., 613) is translucent, semi-translucent, transparent, or semi-transparent. In some embodiments, the expanded filter picker user interface (e.g., 613) is displayed opaque or semi-opaque. In Figure 6D, as the expanded filter picker user interface (e.g., 613) begins to expand, the filter container 610 shifts upward to accommodate the expanding filter picker user interface (e.g., 613).

[0181] 6E, when the expanded filter picker user interface (e.g., 613) is fully expanded, the filter receptacle 610 shifts upward to the top of the expanded filter picker user interface 613. In some embodiments, additional information (e.g., 618) about the filter corresponding to the filter representation (e.g., 614A) is displayed within the filter receptacle (e.g., 610). In some examples, the additional information is displayed within the expanded filter picker user interface. In some examples, the additional information (e.g., 618) is displayed in a location near (e.g., above, below) the filter picker user interface. In some examples, the additional information is displayed as an icon, text, or an image.

[0182] 6F , electronic device 600 receives an input (e.g., tap 620) at a location corresponding to one of the representations of the filter (e.g., 614B) that is not within the filter receptacle. In response to the tap input, in some embodiments, the electronic device applies a filter corresponding to the filter representation (e.g., 614B) that corresponds to the display 604 location of the tap input. In some examples, the input is optionally a swipe, a press and hold, or an input having a characteristic intensity above a respective intensity threshold. In some examples, an input having a characteristic intensity above a respective intensity threshold in one of the representations of the filter (614A-614F) optionally results in the display of additional functionality of the corresponding filter representation associated with the location of the input having the characteristic intensity above the respective intensity threshold.

[0183] 6G-6H illustrate the transition of filter receptacle 610 as a result of electronic device 600 receiving input (e.g., tap 620) in FIG. 6F. As shown in FIG. 6G, filter receptacle 610 is displayed such that filter representations (e.g., 614A-614E) appear to rotate as the filter representations scroll through filter receptacle 610. As shown in FIG. 6G, filter receptacle 610 appears as a three-dimensional object (e.g., a cube) during rotation. In some embodiments, when the filter receptacle (e.g., 610) is stationary, it is represented as a two-dimensional image (e.g., a hexagon). In some examples, the three-dimensional representation of the filter receptacle is, optionally, a sphere or a cone. In some examples, the filter receptacle appears to be two-dimensional as the filter representation moves through the filter receptacle. As further shown in FIG. 6G, electronic device 600 gradually applies a filter corresponding to filter representation 614B to a live preview displayed in a digital viewfinder as the filter representation scrolls through the filter receptacle.

[0184] As further shown in FIG. 6H , the filter receptacle visually changes when a new representation of the filter (e.g., 614B) is displayed within the receptacle. In some embodiments, the visual change of filter receptacle 610 is based on the type of filter within the receptacle (e.g., the type of visual / lighting effect added to the live preview in the digital viewfinder). In some examples, different sides (e.g., surfaces) of the filter receptacle (e.g., 610) reflect the visual (e.g., lighting) effect of the filter corresponding to filter representation 614B. In some examples, the volume (e.g., interior portion) of the filter receptacle (e.g., 610) reflects the visual effect of the filter corresponding to filter representation 614B.

[0185] In some embodiments, the filter representations (e.g., icons 614A-614E) correspond to filters that the electronic device 600 simulates by applying various lighting effects corresponding to light point sources. Accordingly, the visual characteristics of the filter receptacle (e.g., 610) change to simulate the light point source of the corresponding filter. In some embodiments, the filter displayed within the filter receptacle (e.g., 610) corresponds to a simulated studio light visual effect (e.g., 614B) that simulates multiple light point sources. Consequently, the filter receptacle is visually modified to simulate multiple light point sources corresponding to the studio light filter effect. In some embodiments, multiple light point sources are simulated and displayed on the surface of a three-dimensional object during a filter selection transition. In some embodiments, a light point source is displayed on the surface of a two-dimensional object (e.g., a hexagon) when the corresponding filter is displayed within the filter receptacle (e.g., 610). In some embodiments, the filter representation 614E is visually distinct (e.g., appears different) when it is within the boundary of the filter receptacle (e.g., 610) compared to when it is outside the boundary of the filter receptacle.

[0186] As further shown in Figures 6F-6H, in some embodiments, the electronic device 600 gradually applies the filter corresponding to the newly selected filter representation 614B to the digital viewfinder during the transition. As shown in Figure 6G, the electronic device 600 initially applies the filter corresponding to filter representation 614B to the digital viewfinder at 50% intensity. In Figure 6H, the filter corresponding to filter representation 614B is fully applied (e.g., 100% intensity) by the electronic device. In some embodiments, the electronic device applies the filter at increasing intensity (e.g., 10%, 25%, 50%, 75%) during the filter transition until the transition is complete.

[0187] As shown in FIGS. 6I-6J, input (e.g., swipe 622) received at the electronic device causes filter representations (614A-E) to scroll through the filter receptacle (e.g., 610). In some embodiments, in response to a swipe gesture (e.g., 622), the displayed filter representations scroll left across the top of the filter picker user interface. In some examples, a single swipe gesture results in incremental scrolling of the filter representations (e.g., moving one filter). In some embodiments, the number of filter representations scrolled depends on the magnitude of the swipe gesture. Thus, in some examples, a longer swipe causes more scrolling than a shorter swipe. FIG. 6J shows the result of the swipe gesture in FIG. 6I where a “Stage Light MONO” lighting filter has been applied to the live preview in the digital viewfinder (e.g., by simulating shining a set of lights corresponding to “Stage Light MONO” at the subject's face in the camera's field of view based on a depth map of the subject's face).

[0188] In some embodiments, the electronic device 600 detects contact with the filter picker user interface (e.g., 613) and should continue to maintain the filter picker user interface (e.g., 613) in the expanded mode. In some embodiments, when the electronic device detects the contact liftoff, the expanded filter picker user interface (e.g., 613) begins to collapse until it reaches (e.g., minimizes) the collapsed filter picker user interface state (e.g., 612). In some embodiments, the expanded filter picker user interface (e.g., 613) remains displayed in the expanded mode until a predetermined time is reached without further contact. When the electronic device 600 detects that the predetermined time has been reached, the expanded filter picker user interface is displayed in the collapsed state until it reaches (e.g., minimizes) the collapsed filter picker user interface state (e.g., 612).

[0189] In Figure 6K, the filter picker user interface is once again in a collapsed state (e.g., 612). As shown in Figure 6K, the electronic device receives an input (e.g., tap 624) at a location corresponding to the location where the enlarged filter picker user interface (e.g., 613) would be overlaid on the digital viewfinder. Because the enlarged filter picker user interface is not displayed, the electronic device interprets the input as a focus command, and a bounding box (e.g., 626) is displayed at a location corresponding to the location of the tap input (e.g., 624), as shown in Figure 6L. As shown in Figure 6L, processing of the focus command occurs without any change in filter application or presentation of the filter expression.

[0190] As shown in Figure 6M, the electronic device receives a swipe gesture 628 at a position where the enlarged filter picker user interface (e.g., 613) corresponds to the position where the enlarged filter picker user interface would be overlaid on the digital viewfinder. Because the enlarged filter picker user interface is not displayed, the electronic device interprets the swipe gesture 628 as a mode change command, and the electronic device (e.g., 600) changes the camera selection user interface (e.g., 606) to a different camera mode (e.g., a "square" camera mode 630, a video camera mode, a non-portrait camera mode, a slow-motion camera mode, a time-lapse camera mode, or a panoramic camera mode), as shown in Figure 6N.

[0191] 7A-7F are flowcharts illustrating a method of modifying simulated lighting effects in a representation of image data using an electronic device according to some embodiments. Method 900 is performed on a device (e.g., 100, 300, 500, 600) that includes one or more input devices (e.g., a touch-sensitive surface, a keyboard, a mouse) and a display. In some embodiments, the display is a touch-sensitive display. In some embodiments, the display is not a touch-sensitive display. In some embodiments, the electronic device includes multiple cameras. In some embodiments, the electronic device has only one camera. Some operations in method 700 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0192] As described below, method 700 provides an intuitive way to change simulated lighting effects into representations of image data. This method reduces the cognitive burden on the user to provide inputs corresponding to functions, thereby creating a more efficient human-machine interface. In the case of battery-operated computing devices, allowing users to initiate various functions faster and more efficiently conserves power and increases the time between battery charges.

[0193] In blocks 702-706, an electronic device (e.g., 600) simultaneously displays, on a display (e.g., 604), a camera application user interface (e.g., 606), including a digital viewfinder (e.g., 608) containing live previews (e.g., 602 and 603) of the fields of view of one or more cameras (e.g., including live or near-live preview images), and a representation of a filter picker user interface (e.g., 610, 612) (e.g., an image, icon, or textual representation indicating a respective filter currently applied to the live preview) overlaid (in a first position) on the digital viewfinder (e.g., 608). In some embodiments, the representation of the filter picker user interface (e.g., 610) is in the first position. In some embodiments, the representation of the filter picker user interface (e.g., 610) initially starts in the first position and transitions to the second position. In some embodiments, a filter picker user interface (e.g., 610) is for picking between filters that apply different lighting effects to an image based on depth map information (e.g., as described in more detail below with reference to method 900). Simultaneous display of a digital viewfinder (e.g., 608) and a filter picker user interface (e.g., 613) provides the user with visual feedback about objects in the field of view of the cameras (e.g., 602, 603) and applicable filters for a preview. Providing improved visual feedback to the user improves usability of the device and makes the user-device interface more effective (e.g., by helping the user achieve intended results and reducing user errors when operating or interacting with the device by providing feedback that indicates the input that will cause the device to produce the intended result), which further reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and effectively.

[0194] In some embodiments, in blocks 708-710, the representation of the filter picker user interface (e.g., 612) includes a representation of a first filter (e.g., 614A), a representation of a second filter (e.g., 614B), and a representation of a third filter (e.g., 614C), where the values ​​of visual characteristics (e.g., size, shade, color) of the representation of the first filter are different from the values ​​of the visual characteristics of the representation of the second filter and the values ​​of the visual characteristics of the representation of the third filter. In some embodiments, the filter representations are displayed within the filter picker user interface (e.g., 612) using different visual characteristics (e.g., they are smaller, are a different shade, are a different color) than the first filter displayed within the representation of the filter picker user interface (e.g., 612). In some embodiments, the second and third filters have the same values ​​of the visual characteristics. Making the various representations of the filters visually different provides the user with feedback as to which filter is currently selected or, additionally or alternatively, provides the user with feedback as to the type of filter effect each filter provides. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0195] In some embodiments, at block 712, the representation of the filter picker user interface (eg, 610) is a representation of a first three-dimensional object (eg, 610) having multiple faces.

[0196] At blocks 714-716, while simultaneously displaying the digital viewfinder (e.g., 608) and a representation of the filter picker user interface (e.g., 612), the electronic device (e.g., 600) detects a first input (e.g., 616) via one or more input devices beginning at a location (e.g., on or near a filter indicator icon) corresponding to a respective portion of the live preview (e.g., a swipe, a tap and hold, a button press). In some embodiments, the input can be at any location along the entire edge of the digital viewfinder (e.g., 608). In some embodiments, at block 718, the first input (e.g., 616) is a tap gesture.

[0197] In blocks 720-724, in response to detecting a first input (e.g., 616), in accordance with a determination that first criteria have been met (e.g., filter application criteria), including a requirement that the filter picker user interface overlap a respective portion of the live preview when the first input was detected (e.g., the filter picker user interface (e.g., 613) is in an extended mode of operation, where the filter picker user interface (e.g., 613) extends further into the live preview than when in a collapsed mode of operation), the electronic device (e.g., 600) applies a preview of the first filter to the live preview of the camera's (e.g., 602, 603) field of view that was not applied before the first input was detected (e.g., to indicate that the first filter is being applied to captured media while the first filter is the currently selected filter).

[0198] At blocks 720 and 726-728, in response to detecting a first input (e.g., 616), and in accordance with determining that the filter picker user interface (e.g., 613) does not overlap a respective portion of the live preview when the first input is detected (e.g., the filter picker user interface (e.g., 613) is in a collapsed mode of operation, where the filter picker user interface (e.g., 613) does not extend far into the live preview compared to an expanded state), the electronic device (e.g., 600) performs a respective operation in the camera application without applying a preview of the first filter to the live preview. Performing the operation (applying the filter to the preview or performing the respective operation without applying the filter) based on the first criterion being met provides the user with visual feedback (in the form of an update in the viewfinder) as to whether the image capture and / or video recording includes the filter. Providing improved visual feedback to the user improves usability of the device and makes the user-device interface more effective (e.g., by assisting the user in achieving an intended result by providing feedback that indicates the input that will cause the device to produce the intended result and by reducing user errors when operating or interacting with the device), which further reduces power usage and improves the device's battery life by allowing the user to use the device more quickly and effectively. When access to fewer or more filters is needed, collapsing or expanding the filter user interface removes obstruction from the viewfinder, thereby allowing the user to perform camera operations (e.g., switching focus, brightness, camera modes) on more of the viewfinder elements captured in the camera's field of view while still providing an interface for easily switching between filters.Expanding the filter user interface when the user is using it makes it easier for the user to operate the filters, and collapsing the filter user interface when the user is not using it makes it easier for the user to perform camera operations (e.g., focus, brightness, switching camera modes). Providing additional control while limiting interference with the user interface elements involved improves usability of the device and makes the user's interface with the device more efficient (e.g., by helping the user achieve their intended results and by reducing user failures when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and improves battery life.

[0199] In some embodiments, performing the respective operations in block 730 includes selecting a focal point for media capture at an object located in the field of view of a camera (e.g., 602, 603) in the respective portion of the live preview where the input is detected (e.g., and optionally updating the display of a digital viewfinder (e.g., 608) to focus (e.g., represented by box 626) a respective object representation of one or more objects in the field of view of one or more cameras (e.g., 602, 603). Receiving a tap gesture targeting an object for focusing provides the user with a precise targeting mechanism that selects an object for focus and changes focus until the desired object is located in focus, avoiding the need to provide multiple or extended inputs, thereby reducing the number of inputs required to select the focus. Reducing the number of inputs required to select a focus improves the usability of the device and provides a more effective interface between the user and the device (e.g., by providing feedback that indicates which inputs the device should make to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), which in turn allows the user to use the device more quickly and efficiently, and reduces the device's power usage and improves battery life.

[0200] In some embodiments, in blocks 732-734, while a filter picker user interface (e.g., 613) is displayed and overlaps a respective portion of the live preview (e.g., while the filter picker user interface (e.g., 613) is displayed in an expanded state), and while a first filter is applied to the live preview of the field of view of the camera (e.g., 602, 603), the electronic device (e.g., 600) detects a third input (e.g., 620) (e.g., a swipe or tap) beginning at a location corresponding to the filter picker user interface (e.g., 613).

[0201] In some embodiments, in response to detecting a third input (e.g., 620) at blocks 736-740, the electronic device (e.g., 600) moves a representation of a second filter (e.g., 614B) in the representation of the plurality of filters to a position on the display (e.g., 604) corresponding to the currently selected filter, and (e.g., when a different filter representation is displayed in the representation of the filter picker UI) the electronic device (e.g., 600) applies a preview of the second filter (e.g., 614B) to the live preview of the field of view (e.g., to indicate that the second filter will be applied to the captured media while the second filter is the currently selected filter). By moving the representation of the selected filter to a position corresponding to the currently selected filter, the user is provided with visual feedback about the device state, including the filter that is (or will be) applied to the live preview. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0202] In some embodiments, at block 742, the electronic device (e.g., 600) provides a tactile output (e.g., a tactile output is provided when switching the currently selected filter from one filter to another).

[0203] In some embodiments, at blocks 744-746, while a filter picker user interface (e.g., 613) is displayed and not overlaid on a respective portion of the live preview (e.g., while the filter picker is displayed in a collapsed state), the electronic device (e.g., 600) detects a second input (e.g., 616) that begins at a location corresponding to the filter picker user interface (e.g., 612). In some examples, the input corresponding to any displayed portion of the collapsed filter picker user interface causes the interface to expand.

[0204] In block 748, in response to detecting the second input, the electronic device (e.g., 600) expands a filter picker user interface (e.g., 613) to overlay a respective portion of the live preview. Expanding the filter picker user interface (e.g., 613) provides the user with the ability to more precisely target a desired filter, for example, by widening the filter's individual representation so that the desired target can be accurately selected using less precise input. Providing more precise targeting control improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback indicating the input that will cause the device to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), which further allows the user to use the device more quickly and efficiently, and reduces the device's power usage and improves battery life.

[0205] In some embodiments, in blocks 750-752, while the representation of the filter picker user interface (e.g., 610) is associated with a sixth representation of the plurality of filter representations, and while the representation of the filter picker user interface (e.g., 610) presents a first surface of the plurality of surfaces, a sixth input (e.g., 620) (e.g., a swipe or tap) is detected that begins at a location corresponding to the filter picker user interface (e.g., 613).

[0206] In some embodiments, in response to detecting a sixth input (e.g., 620) at blocks 754-760, the electronic device (e.g., 600) rotates the container object to present a second face of the plurality of faces that was not displayed before detecting the sixth input, switches from a first filter that is the currently selected filter to a second filter that is different from the first filter that is the currently selected filter, and applies a preview of the second filter to the live preview of the field of view. In some examples, the three-dimensional object (e.g., 610) appears as a two-dimensional object until an animation (e.g., spinning) begins. In some embodiments, if the amount of filters is greater than the amount of faces available on the three-dimensional object (e.g., 610), one face can be used to present two or more different filters. As an example, a first face of a cube (e.g., 610) displays a first filter, and after the cube rotates four times, the first face displays a fifth filter from the plurality of filters. Rotating the container object to present the currently selected filter provides the user with visual feedback about the device state, including that the applied filter is changing. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0207] In some embodiments, the filter picker user interface (e.g., 613) includes a representation of the filter picker user interface (e.g., 610) and a representation of multiple filters. In some embodiments, the filter picker user interface (e.g., 613) overlays the digital viewfinder (e.g., 608). In some embodiments, the filter picker user interface (e.g., 613) is displayed as a wheel, dial, half-dial, portion of a dial, or slider. In some embodiments, the filter picker user interface (e.g., 613) is rectangular.

[0208] In some embodiments, expanding the filter picker user interface (e.g., 613) to overlay the respective portion of the live preview occurs without applying a preview of a filter to the live preview of the camera's (e.g., 602, 603) field of view that was not applied before the second input was detected.

[0209] In some embodiments, the representation of the filter picker user interface (e.g., 610) when in a first state (e.g., moving, expanded) is a representation of a container object (e.g., 610) having multiple faces enclosing an interior volume containing a representation of a second three-dimensional object. In some embodiments, the representation of the filter picker user interface (e.g., 610) when not moving appears to be a 2D object (e.g., a pseudo-cube arranged to appear hexagonal). Representing the container object as having an interior volume containing a three-dimensional object when in the first state provides the user with feedback about placing sources, such as a light source, within the virtual three-dimensional environment corresponding to the environment being previewed. Providing improved visual feedback to the user improves device usability and makes the user-device interface more effective (e.g., by providing feedback that indicates which inputs the device should make to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), thereby further allowing the user to use the device more quickly and effectively, reducing power usage, and improving the device's battery life.

[0210] In some embodiments, the representation of the filter picker user interface (e.g., 610) is in a second state (e.g., static, minimized) different from the first state, and the representation of the container object is altered to remove shading and / or lighting effects (e.g., so that the representation of the container object appears flattened into a 2D object such as a hexagon). Altering the representation of the container object to remove shading and / or lighting effects reduces visual clutter to the user and helps to avoid drawing the user's attention away from the camera viewfinder. Furthermore, removing such effects when they are not needed reduces the amount of computational processing required. Reducing visual clutter and reducing computational processing improves device usability and makes the user's interface with the device more efficient (e.g., by helping the user achieve their intended results and by reducing user failures when operating / interacting with the device), and also reduces the device's power usage and improves battery life.

[0211] In some embodiments, the representation of the filter picker user interface (e.g., 610) is in a first state (e.g., moving, expanded) and one or more of the faces or interior volume have a visual appearance based on the presented, currently selected filter of the plurality of filters (e.g., showing lighting on the sides of a cube, showing lighting changes). In some embodiments, as the cube rotates, different filter representations are displayed within the representation of the filter picker UI. While in the first state, based on the visual appearance of the faces or the interior volume of the representation of the container object, in the currently selected filter, feedback is provided to the user about the positioning of sources, such as light sources, within the virtual three-dimensional environment corresponding to the environment being previewed. Feedback is provided to the user about the state (enabled, disabled, brightness level) of the light sources. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0212] According to some embodiments, the representation of the filter picker user interface (e.g., 610) is in a second state (e.g., static, minimized) different from the first state, and the visual appearance of the representation of the filter picker user interface (e.g., 610) is not based on a currently selected filter of multiple filters displayed within the interior volume. In some embodiments, when the representation for the filter picker UI is minimized or static, the effects of the filter are not displayed, but are displayed when the filter picker is displayed as an extension, a 3D representation.

[0213] In some embodiments, while the filter picker user interface (e.g., 613) is displayed and does not overlap respective portions of the live preview (e.g., while the filter picker is displayed in a collapsed state), the representation of the filter picker user interface (e.g., 610) and the representation of the plurality of filters are arranged along a line substantially parallel to the edge of the display (e.g., 604). Arranging the representation of the filter picker user interface (e.g., 610) and the representation of the plurality of filters along a line substantially parallel to the edge of the display (e.g., 604) increases the visibility of objects in the live preview and allows the user to more easily perform camera operations (e.g., focus, brightness, switching camera modes) on the viewfinder element, while remaining presenting the user with available lighting effects. Providing additional controls while maintaining visibility of the relevant viewfinder elements improves usability of the device and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and battery life. In some embodiments, the additional filter options are located along edges of the display (e.g., 604) extending in both directions away from the representation of the filter picker user interface (e.g., 610), and in some embodiments, the additional filter options are located along edges of the display (e.g., 604) extending in one direction from the representation of the filter picker user interface (e.g., 610). In some embodiments, the representation of the filter picker user interface (e.g., 610) is displayed near an edge of the live preview.

[0214] In some embodiments, while the filter picker user interface (e.g., 613) overlaps a respective portion of the live preview (while the filter picker user interface (e.g., 613) is displayed in an expanded state), the representation of the filter picker user interface (e.g., 610) and the representation of the multiple filters are positioned along a curve (e.g., a line that is not parallel to the edges of the display (e.g., 604)). In some embodiments, the shifted location appears as an arc or a wheel. In some embodiments, the interaction includes using a gesture (swipe or tap) anywhere along the bottom edge of the display (e.g., 604). Representing the shifted location as an arc or a wheel and using a gesture (swipe or tap) along the bottom edge of the display (e.g., 604) to interact with the arc or wheel provides a continuity in the user interface that reduces user confusion, allowing the user to provide less input and perform the desired operation. Reducing the number of inputs required to perform an operation improves the usability of the device and makes the user-device interface more efficient (e.g., by helping the user achieve their intended results and by reducing user failures when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and improves battery life.

[0215] In some embodiments, the first input is a tap gesture, and a location corresponding to the respective portion of the live preview is a location corresponding to a representation of the first filter in the representation of the plurality of filters. In some embodiments, the expanded filter picker UI is displayed in an expanded state. In some embodiments, the filter picker user interface (e.g., 613) is displayed in a collapsed state.

[0216] In some embodiments, the representation of the second filter is in a first direction from the representation of the first filter, the representation of the third filter is in a first direction from the representation of the second filter, and the value of the visual characteristic varies progressively (e.g., monotonically increasing or monotonically decreasing) in the first direction from the representation of the first filter to the representation of the second filter to the representation of the third filter (e.g., the representations of the filters become less and / or less opaque the further away they are from the representation of the currently selected filter). The progressive variation in the value of the visual characteristic from the representation of the first filter to the representation of the second filter to the representation of the third filter in the first direction reduces user distraction, improves visibility of the live preview, and provides a structured system that can facilitate identification and access to filters. Providing improved visual feedback improves usability of the device and makes the user-device interface more efficient (e.g., by helping the user achieve intended results and by reducing user failures when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently, and reduces power usage and improves battery life of the device. In some embodiments, the filter representations are displayed within a filter picker user interface (e.g., 613) and are displayed using different visual characteristics based on each corresponding filter representation from the representation in the filter picker user interface (e.g., 610).

[0217] In some embodiments, the filter picker user interface (e.g., 613) overlays a respective portion of the live preview (the filter picker user interface (e.g., 613) is displayed in an expanded state), and the filter picker user interface (e.g., 613) includes additional information about the first filter (e.g., an indication of the filter name) that is displayed in association with a representation of the first filter.

[0218] According to some embodiments, the first input is a swipe gesture (e.g., 628), and performing the respective action includes changing the camera capture mode of the electronic device (e.g., 600) (e.g., the mode changes to one of video, photo, portrait, rectangular, panorama, slow motion, or time lapse).

[0219] In some embodiments, applying the preview of the second filter includes gradually transitioning between applying the preview of the first filter and applying the preview of the second filter, hi some embodiments, the gradually transitioning includes 100% first, 0% second at a first time, 90% first, 10% second, etc. at a second time.

[0220] It should be noted that the details of the processes described above with respect to method 700 (e.g., FIGS. 7A-7F) are also applicable in an analogous manner to the methods described below. For example, methods 900, 1100, 1300, 1500, and 1700 optionally include one or more of the features of the various methods described above with respect to method 700. For example, elements of filter user interfaces, affordances, and controls may be combined from among the various methods. As another example, the viewfinder in method 700 is similar to the viewfinders of methods 900, 1100, 1300, 1500, and 1700. For the sake of brevity, these details will not be repeated below.

[0221] In some embodiments, electronic device 800 includes some or all of the features of device 600, as shown in FIG. 6A . In some embodiments, device 800 includes multiple cameras 602 and 603 (e.g., on the back of electronic device 800). In some embodiments, device 800 includes one or more features of devices 100, 300, and / or 500. In some examples, an electronic device (e.g., 800) has multiple cameras with fixed but different focal lengths. In some examples, the multiple cameras are on the front, back, or both sides of the electronic device (e.g., 800). In some embodiments, in addition to having different fixed focal lengths, the multiple cameras have different fixed fields of view and different fixed optical magnification characteristics. In some embodiments, a camera (e.g., 602) captures image data using multiple focal lengths. In some embodiments, a single camera (e.g., 602) captures multiple focal lengths and therefore produces the same results as multiple cameras with fixed but different focal lengths. In some examples, the electronic device (e.g., 800) includes a depth camera, such as an infrared camera, a self-thermometer camera, or a combination thereof. In some examples, the device further includes a light emitting device (e.g., a light projector), such as an IR flood light, a structured light projector, or a combination thereof. The light emitting device is optionally used to illuminate the object during image capture by the visible light camera and the depth camera (e.g., the IR camera), and information from the depth camera and the visible light camera is used to determine a depth map of different portions of the object captured by the visible light camera. In some embodiments, the lighting effects described herein are displayed using disparity information from two cameras (e.g., two visible light cameras) for rear-facing images and depth information from the depth camera combined with image data from the visible light camera for front-facing images (e.g., selfie images).In some embodiments, the same user interface is used when determining depth information using two visible-light cameras and when determining depth information using a depth camera, providing a consistent experience to the user even when using dramatically different techniques to determine the information used when generating lighting effects. In some embodiments, while displaying a camera user interface with one of the lighting effects applied, the device detects selection of a camera switch affordance and switches from a front-facing camera (e.g., a depth camera and a visible-light camera) to a rear-facing camera (e.g., two visible-light cameras spaced apart from each other) (or vice versa), transposing the display from the front-facing camera's field of view to the rear-facing camera's field of view (or vice versa) while maintaining display of the user interface controls for applying the lighting effects.

[0222] 8A, electronic device 800 includes a touch-sensitive display 804 (e.g., a touchscreen), which displays image data received from a camera (e.g., 602). In some embodiments, the display is different from the touch-sensitive surface. In some examples, multiple cameras (e.g., 602 and 603) are located on the front, back, or both sides of the electronic device (e.g., 800).

[0223] FIG. 8A further shows electronic device 800 displaying, on display 804, a camera application user interface 805 for capturing images with a camera (e.g., 602). The camera application user interface 805 further includes a digital viewfinder 810 that includes a live preview of the field of view of the camera (e.g., 602 or 603). In some embodiments, the camera captures depth information associated with image data in real time. FIG. 8A also shows a camera capturing different depth levels in the field of view, including an object (e.g., a woman) in the foreground region (e.g., 808) and a fence (e.g., 811) in the background region. In some embodiments, the camera (e.g., 602) captures 3, 4, 5, 10, 20, or more depth levels in the field of view. Electronic device 800 utilizes the various depth levels in applying filters to a representation of image data (e.g., 806) displayed in the digital viewfinder (e.g., 810), as discussed in more detail below.

[0224] 8A further shows electronic device 800 displaying a filter picker user interface 813 in an expanded state. The filter picker user interface 813 is disposed along an edge of the digital viewfinder 810. In some embodiments, the filter picker user interface (e.g., 813) is optionally displayed above, below, to the left, or to the right of the digital viewfinder (e.g., 810). In some embodiments, the filter picker user interface (e.g., 813) includes one or more representations of filters (e.g., representations of visual effects) arranged in one or more rows and columns, or arranged in a circular orientation.

[0225] In some embodiments, the filter picker user interface (e.g., 813) is displayed in any position corresponding to the digital viewfinder. In some embodiments, the filter picker user interface (e.g., 813) is outlined (e.g., bordered) to distinguish the filter picker user interface from the digital viewfinder. In some embodiments, when in the collapsed state, the filter picker user interface (e.g., 813) is translucent (or partially translucent) and has no visible border. As a result, in some embodiments, the filter picker user interface (e.g., 813) appears to blend in (e.g., be indistinguishable from) the digital viewfinder.

[0226] 8A , electronic device 800 displays a filter picker user interface 813 that includes one or more filter representations (e.g., 814A, 814B, 814C, 814D, 814E) that correspond to visual effects. In some examples, the filter picker user interface (e.g., 813) optionally includes filter representations that are not displayed on the display (e.g., they are off-screen). In some examples, the not-displayed filter representations are displayed when the electronic device receives input (e.g., a swipe gesture) that causes the filter representations to scroll through the filter container (e.g., 816).

[0227] As further shown in FIG. 8A , in some embodiments, the electronic device 800 displays a filter representation (e.g., 814A) within a filter picker user interface (e.g., 813) to indicate the currently selected visual effect. In some embodiments, the filter representation 814A corresponds to a “natural light” lighting effect filter. Thus, the foreground region 808 and the background region 809 are displayed using the “natural light” lighting effect filter (e.g., using natural light from the scene). Because the image representation of FIG. 8A is shown without any synthetic light, the natural light from the scene creates various shadows on the subjects (e.g., face, neck, and clothing). In some examples, possible filter representations (e.g., 814A-814E) corresponding to lighting effects include a “studio light” lighting effect, a “edge light” lighting effect, a “stage light” lighting effect, and a “stage light MONO” lighting effect. When applied to a representation of image data (e.g., 806), each preceding lighting effect affects the visual characteristics of the representation of the image data displayed on the display 804.

[0228] In some embodiments, when the electronic device 800 applies a natural lighting effect, no synthetic lighting is added to the image (e.g., the original image is displayed). In contrast, a studio lighting effect involves modeling multiple isolated point sources of light (e.g., lights in a photo studio) evenly spaced around a subject (e.g., creating a bright, full-light effect). A contour lighting effect involves modeling multiple isolated point sources of light positioned along the periphery of a subject (e.g., creating a slimming effect, creating shadows on the sides of the subject's face and / or on the subject's chin). A stage light lighting effect involves modeling a single isolated point light source positioned above a subject (e.g., creating a spotlight effect). A stage light mono lighting effect involves modeling a single isolated point light source positioned above a subject in monochrome (e.g., creating a monochrome spotlight effect).

[0229] In some embodiments, the electronic device (e.g., 800) detects a subject's face in a representation of the image data. Accordingly, the electronic device uses depth map information from the image data and corresponding facial features when applying lighting effects. As a result, lighting effects are applied more accurately around the subject's face, and certain facial features are illuminated differently based on the selected lighting effect (e.g., more or less shading around the subject's jaw and / or cheek bones). In some embodiments, the image data includes depth map information that includes depth contours of the object. As a result, the electronic device uses the contour data to more accurately apply lighting effects around the subject.

[0230] As shown in FIG. 8B , electronic device 800 receives an input (e.g., swipe 818) at a location corresponding to a filter picker user interface (e.g., 813). As shown in FIG. 8C , the input (e.g., swipe 818) causes filter representations (814A-E) to scroll through a filter receptacle (e.g., 816). In some embodiments, in response to the input (e.g., swipe 818), the filter representations cross the top boundary of the filter picker user interface (e.g., 813) and scroll to the left. In some examples, a single swipe gesture results in incremental scrolling of the filter representations. In some embodiments, the number of filter representations scrolled depends on the magnitude of the swipe gesture. Thus, in some examples, a longer swipe causes more scrolling than a shorter swipe.

[0231] In response to an input (e.g., 818 swipe), in some embodiments, electronic device 800 applies a lighting effect corresponding to a filter representation (e.g., 814B) that corresponds to the location on display 804 of the tap input. In some examples, the input is a swipe, a press and hold, or an input having a characteristic intensity above a respective intensity threshold. In some examples, an input detected in one representation of a filter (814A-814F) having a characteristic intensity above a respective intensity threshold optionally results in the display of additional functionality for the corresponding filter representation associated with the location of the input having a characteristic intensity above the respective intensity threshold.

[0232] In some embodiments, additional visual effects may be applied to the entire representation of the image data (e.g., 806) before applying the lighting effects corresponding to the filter representation (e.g., 814B). For example, applying a slight gradient fill to the representation of the image data (e.g., 806) before applying the stage lighting filter allows for a smoother transition from no filter to the lighting effects filter.

[0233] 8C-8D illustrate electronic device 800 gradually applying a lighting effect as a result of electronic device receiving an input (e.g., swipe 818) in FIG. 8B. In some embodiments, the lighting effect corresponding to newly selected filter representation 814B is gradually applied to a representation of image data (e.g., 806) in the live preview. Because the selected lighting effect is "studio light," the corresponding visual effect simulates multiple point light sources affecting objects in foreground region 808. Consequently, during the transition phase (FIG. 8C), the lighting effect corresponding to filter representation 814B is applied to the live preview at 50% intensity. The filter corresponding to filter representation 814B is fully applied (e.g., 100%) in FIG. 8D. In some embodiments, the filter is gradually applied (10%, 25%, 50%, 75%) while electronic device 800 applies the lighting effect until the transition is complete. In some embodiments, the background region (e.g., 809) is fully darkened when electronic device 800 applies the "studio light" light effect to the representation of image data. In some embodiments, when electronic device 800 applies a "studio light" light effect to a representation of image data, background areas (eg, 809) are completely darkened.

[0234] As shown in FIGS. 8C-8D, because image data captured by a camera (e.g., 602) includes depth map information associated with the image data, the electronic device can use the available depth map information to simulate the effects of various point light sources in the representation of the image data 806. In some embodiments, the same lighting effect is applied differently to background regions compared to foreground regions based on the depth map information associated with the image data. As a result, foreground objects may appear more prominent, while background objects may appear less prominent due to the darkening effect. Furthermore, as shown in FIG. 8D, the lighting effect uses the depth map information to cast various shadows on the subject's face in the foreground region (e.g., 808) to simulate a point light source. As shown in FIG. 8D, the "studio light" lighting effect simulates multiple point light sources, so the electronic device 800 uses the depth map information to cast less shadows on the subject's face compared to the "natural light" lighting effect.

[0235] As shown in FIGS. 8E-8F, electronic device 800 receives input (e.g., tap 820) to scroll representations of filters (814A-E) through filter receptacles (e.g., 816). In some embodiments, in response to a tap gesture (e.g., 820) corresponding to a filter representation (e.g., 814E), the representation of the filter scrolls left across the top periphery of the filter picker user interface (e.g., 813). FIG. 8F illustrates the result of the tap gesture (e.g., 820) of FIG. 8E in which electronic device 800 applies a "Stage Light MONO" filter to the digital viewfinder. The "Stage Light MONO" lighting effect simulates a single point light source, resulting in a spotlight effect. Using depth map information, electronic device 800 applies the "Stage Light MONO" effect from above the subject in the foreground region (e.g., 808). In some embodiments, the point light source may be simulated starting from any direction. In some embodiments, a "stage light MONO" effect is simulated starting from the front, resulting in an emphasis on a particular focal point (e.g., a face) while the remainder of the representation of the image data is darkened. As shown in Figure 8F, the simulated point light source starts from above the subject, allowing the electronic device to use depth map information in the image data to cast deeper shadows on the subject (e.g., face and neck). In some embodiments, the background of the image is removed and replaced with a solid color, such as black or white, or a color selected by the user, to further draw attention to the subject in the foreground and simulate a studio setting where the user can take a photo against a solid background.

[0236] As shown in FIG. 8G, the electronic device may not be in an appropriate state to capture depth information. FIG. 8G shows a user operating electronic device 800 after taking a few steps back from the position the user was in when operating the electronic device in FIG. 8F. As a result of the user stepping back, the electronic device can no longer capture depth information (e.g., the conditions for the camera to capture depth information are no longer detected). In some embodiments, when the conditions for capturing a depth effect are no longer met, the previously applied lighting effect gradually fades out. In some examples, when the conditions for capturing a depth effect are no longer met, the previously applied lighting effect disappears (e.g., the device returns to a state without the applied lighting filter without a transition). In some embodiments, a temporary filter (e.g., a gradient), optionally part of the lighting effect filter, is applied to the image representation when the filter disappears. The temporary filter helps to smooth (e.g., blend better) the transition when the lighting effect is re-applied.

[0237] In some embodiments, when the electronic device does not detect the conditions necessary to capture depth map data, the electronic device 800 displays a graphic indication (e.g., 822) to inform the user of what action the electronic device (e.g., 800) will take to capture depth map information. In some examples, the electronic device detects an object but the object is too far away (e.g., focus is between 2.5 m and 10 m), and the electronic device instructs the user (e.g., using a graphic indication) to move the camera closer (e.g., within 8 feet). In some examples, the electronic device determines that the light level is too low (e.g., below 400 lux) and instructs the user (e.g., using a graphic indication) to provide more light. In some examples, an affordance is displayed in the viewfinder to allow the user to disable or enable such instructions. In some examples, when the conditions for capturing a depth map are met, the electronic device 800 ceases displaying the graphic indication instructing the user. Thus, in some embodiments, electronic device 800 does not prompt the user when a user action would not be beneficial for applying a lighting effect.

[0238] 8H, the lighting effects disappear (e.g., without transitioning) when the user takes a few steps forward and the electronic device again detects the conditions necessary to capture depth map information. In some embodiments, the electronic device 800 gradually applies the lighting effects to the representation of the image data when the conditions for capturing depth map information are again met.

[0239] As shown in Figure 81, the electronic device detects an input (e.g., a tap 824) at a location corresponding to a photo viewer application (e.g., 826). In response to receiving the input (e.g., 826), the electronic device 800 switches to an image view mode (e.g., a mode for viewing previously captured images rather than a live preview of camera data), as shown in Figure 8J.

[0240] 8J shows a user interface for a photo viewer application. The photo viewer application includes a thumb strip of previously captured images (e.g., 828A-828D), with 828D being the last captured image. In some embodiments, the previously captured images were captured using a camera corresponding to the electronic device (e.g., 800). In some embodiments, the electronic device (e.g., 800) receives the previously captured images (e.g., 828A-828D) from a remote source (e.g., a server), and optionally, the previously captured images were captured by a different electronic device (e.g., not 800).

[0241] FIG. 8J further illustrates that the last captured image (e.g., 828D) was captured with a combination of visual effects (e.g., a simulated depth effect (bokeh) 830, which simulates taking a photo with a shallow depth of field, where the background is blurred and part of the foreground is not blurred and the foreground is in the plane of focus, and lighting effects 832). In some embodiments, the electronic device displays a “portrait” visual indicator (e.g., 834) at the top of the display as an indication to the user that the previously captured image data includes depth map information. In some examples, the electronic device (e.g., 800) receives an input at a location corresponding to the visual indicator to toggle the simulated depth effect (e.g., bokeh) on and off. In some embodiments, when the simulated depth effect is switched off, the lighting effect remains. In some examples, the visual indicator toggles both the simulated depth effect and the lighting effect when activated. In some embodiments, the electronic device optionally receives input to change the lighting effect to a different lighting effect within a photo viewer application using a filter picker user interface (described above). In some embodiments, if the previously captured image data does not have depth map information, the electronic device (e.g., 800) does not provide an option to apply simulated depth or lighting effects. In some embodiments, if the previously captured image data does not have depth map information associated with the image data, the electronic device does not display a visual indicator (e.g., 834).

[0242] In some examples, the electronic device (e.g., 800) stores the depth map information and the image data in a single file. In some examples, the electronic device (e.g., 800) stores the depth map information separately from the image data. In some embodiments, if the electronic device stores the image with the depth map information as a flat image (e.g., without the depth map information), the electronic device (e.g., 800) will not be able to apply lighting effects to the representation of the image data.

[0243] 9A-9D are flowcharts illustrating a method for applying simulated lighting effects to a representation of image data using an electronic device according to some embodiments. Method 900 is performed on a device (e.g., 100, 300, 500, 800) that includes one or more input devices (e.g., a touch-sensitive surface, a keyboard, a mouse) and a display. In some embodiments, the display is a touch-sensitive display. In some embodiments, the display is not a touch-sensitive display. In some embodiments, the electronic device includes multiple cameras. In some embodiments, the electronic device has only one camera. Some operations of method 900 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0244] As described below, method 900 provides an intuitive way to apply simulated lighting effects to representations of image data. This method reduces the cognitive burden on a user to provide inputs corresponding to functions, thereby creating a more efficient human-machine interface. In the case of battery-operated computing devices, allowing users to initiate various functions faster and more efficiently conserves power and increases the time between battery charges.

[0245] In some embodiments, before displaying a representation of the image data (e.g., 806) at block 902, the electronic device (e.g., 800) receives image data and depth map information associated with the image data at the device (e.g., from a camera, from memory, or from a server). In some embodiments, the image data includes RGB and depth map values. In some embodiments, the image data and depth map are received from a source external to the electronic device (e.g., 800) (e.g., the data is received from a server). In some embodiments, the image is saved in a file format that allows for separation of the depth information (e.g., the depth map) and the RGB data within a single file. In some embodiments, the image data includes the depth map information. In some embodiments, the depth map information and the depth map information are separate. Receiving image data and depth map information corresponding to the image data (e.g., 806) before displaying a representation of the image data enables the device to provide visual feedback to a user via the representation of the image data (e.g., 806) about the content of the depth map information, such as whether an item is in the background (e.g., 809) or foreground (e.g., 808) of a scene. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0246] In block 904, the electronic device (e.g., 800) displays a representation of the image data associated with the depth map information on a display (e.g., 804). In some embodiments, an image or photograph is displayed on the device's display (e.g., 804). In some embodiments, a live preview of the image data is displayed in a digital viewfinder (e.g., 810). Displaying a live preview of the image data in the digital viewfinder (e.g., 810) allows a user to quickly and efficiently frame a photograph without having to repeatedly capture photographs, thereby reducing the number of inputs required to capture a desired photograph, reducing memory requirements for storing photographs, and providing a more efficient user interface. Reducing the number of inputs required to capture a desired image and reducing memory requirements improves device usability and provides a more efficient user-device interface (e.g., by helping the user achieve their intended results and by reducing user errors when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and battery life.

[0247] In some embodiments, at block 906, the electronic device (e.g., 800) further includes one or more cameras (e.g., 602 and / or 603), and the representation of the image data (e.g., 806) is a live preview of the image data captured within the field of view of the one or more cameras (e.g., 602 and / or 603) displayed in a digital viewfinder (e.g., 810). In some embodiments, the device includes multiple cameras (e.g., 602 and / or 603) with different focal lengths.

[0248] In some embodiments, in block 908, the depth map information associated with the image data includes information corresponding to at least three different depth levels. For example, the image data includes information corresponding to at least a background depth level, a foreground depth level, and an intermediate depth level. Depth map information including three or more different depth levels provides the user with a framework for applying depth-specific filters and provides the user with more accurate feedback about the depth positioning of objects in the field of view of the camera(s) (e.g., 602 and / or 603). Providing improved visual feedback to the user improves device usability and makes the user-device interface more effective (e.g., by providing feedback that indicates the input that will cause the device to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), thereby further allowing the user to use the device more quickly and effectively, reducing power usage, and improving the device's battery life.

[0249] In some embodiments, at block 910, depth map information associated with the image data includes information-specific depth contours of objects in the representation of the image data (eg, 806).

[0250] At block 912, while displaying a representation of image data (e.g., 806) on a display (e.g., 804), the electronic device (e.g., 800) optionally performs the techniques of blocks 914 through 936. At block 914, the electronic device (e.g., 800) detects a first input (e.g., 818) via one or more input devices (e.g., swipe, tap and hold, tap, button press; the gesture can be over an icon representing a lighting filter, or can be another user interface system used to select a filter).

[0251] In some embodiments, in block 916, the first input (e.g., 818) is an input received while a first criterion (e.g., a set of lighting effect application criteria) is met, where the first criterion satisfies the requirement that an object be detected in the field of view within a predetermined distance from the electronic device (e.g., 800) (e.g., a set of other conditions may include: the focal length of the first camera (e.g., 602 or 603) exceeds a minimum distance threshold; the focal length of the first camera (e.g., 602 or 603) does not exceed a maximum distance threshold; the object is detected beyond a predetermined minimum distance from the device; the amount of light detected exceeds a minimum light threshold; and the amount of light detected does not exceed a maximum light threshold). In some embodiments, if the first criterion is not met, applying the first lighting effect or the second lighting effect is canceled. When a first input (e.g., 818) is received, applying a lighting effect when it is determined that the object is within a predetermined distance provides the user with visual feedback that the object is properly positioned so that an optimal (or near-optimal) effect can be achieved by the filter. Similarly, not applying a lighting effect when the object is not within the predetermined distance provides the user with feedback that the object is not properly positioned, indicating to the user that corrective action is necessary. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that indicates the input that will cause the device to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), thereby further allowing the user to use the device more quickly and effectively, reducing power usage, and improving the device's battery life.

[0252] In some embodiments, in block 918, the first input (e.g., 818) is an input received while a first criterion (e.g., a set of lighting effect application criteria) is not met, where the first criterion includes a requirement that is met when an object is detected in the field of view within a predetermined distance from the electronic device (e.g., 800) (e.g., a set of other conditions / criteria may include: the focal length of the first camera (e.g., 602 or 603) exceeds a minimum distance threshold; the focal length of the first camera (e.g., 602 or 603) does not exceed a maximum distance threshold; the object is detected beyond a predetermined minimum distance from the device; the amount of light detected exceeds a minimum light threshold; the amount of light detected does not exceed a maximum light threshold). In some embodiments, if the first criterion is not met, the electronic device (e.g., 800) refrains from applying the first lighting effect or the second lighting effect.

[0253] In some embodiments, at block 920, in response to the first input (e.g., 818), the electronic device (e.g., 800) applies a placeholder filter to the live preview (e.g., blurring or desaturating the background (e.g., 809)) without applying the first lighting effect to the live preview. In some embodiments, in response to detecting that the first criterion is met, the electronic device (e.g., 800) applies the first lighting effect to the live preview while continuing to apply the placeholder filter to the live preview (e.g., the placeholder filter is a part of the first lighting effect that does not take depth map information into account and is therefore displayed regardless of whether the first criterion is met). Applying the placeholder filter regardless of whether the first criterion is met provides the user with visual feedback about the depth map related to the viewfinder (e.g., 810) content, e.g., which portions of the image correspond to portions of the depth map in the background (e.g., 809) compared to the foreground (e.g., 808). Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0254] In some embodiments, after displaying the live preview without applying the first lighting effect to the live preview at block 922, the electronic device (e.g., 800) detects that a first criterion has been met. In response to detecting that the first criterion has been met, the electronic device (e.g., 800) applies the first lighting effect to the live preview. Applying the lighting effect when the first criterion has been met provides the user with visual feedback that the first criterion has been met (e.g., the subject is properly positioned) and that an optimal (or near-optimal) effect is achievable using the filter. Similarly, not applying the lighting effect when the first criterion has not been met provides the user with feedback that the first criterion has not been met, indicating to the user that corrective action is required. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0255] In block 924, in response to detecting a first input (e.g., 818), the electronic device (e.g., 800) applies a first lighting effect (e.g., natural light, studio light, edge light, stage light, stage light MONO) to the representation of the image data (e.g., 806), where the first lighting effect is based on the depth map information (e.g., based on depth sensor measurements or based on mapping differences between two images captured simultaneously at different positions). Displaying the lighting effect based on the depth map information provides the user with visual feedback about the depth map information. For example, placing (or emphasizing) or removing (or fading) shading provides the user with feedback about a particular orientation of the object that corresponds to the depth map information. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by assisting the user in achieving an intended result by providing feedback that directs the device to inputs that will produce the intended result, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0256] In some embodiments, applying the first lighting effect in block 926 includes applying a placeholder filter (e.g., blurring or desaturating the background (e.g., 809)) to the representation of the image data (e.g., 806) displayed in the digital viewfinder (e.g., 810), where the placeholder filter is selected (e.g., based on the first lighting effect) and is applied regardless of whether the first criterion is met. Applying the placeholder filter provides a smoother / comfortable transition to the lighting filter. Applying the placeholder filter regardless of whether the first criterion is met provides the user with visual feedback about the depth map related to the viewfinder (e.g., 810) content, e.g., which portions of the image correspond to portions of the depth map in the background (e.g., 809) compared to the foreground (e.g., 808). Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0257] In some embodiments, applying the first lighting effect in block 928 includes applying a simulation of one or more point light sources in space to a representation of the image data (e.g., 806) displayed in the viewfinder (e.g., 810) based on depth map information associated with the image data. Lighting options include natural light, studio light, contour light, stage light, and stage light MONO. Each of the lighting effects models (e.g., simulates) the effect of one or more point light sources in space based on the depth map of the image data. The natural lighting option does not add synthetic lighting to the image (e.g., the original image is displayed, or a portion of the original image is displayed, and blur is applied to different portions of the original effect to simulate a bokeh effect). The studio lighting effect includes modeling multiple distinct point light sources positioned around a subject (e.g., creating a shiny fill of the light effect). The contour lighting effect includes modeling multiple distinct point light sources positioned at fewer points around a subject to create shadows on the subject's face (e.g., creating a slimming effect, creating shadows on the sides of the subject's face, and / or on the subject's chin). A stage light lighting effect involves modeling a single distinct point light source positioned above an object (e.g., creating a spotlight effect). A stage light MONO lighting effect involves modeling a single distinct point light source positioned above and around an object in monochrome (e.g., creating a monochrome spotlight effect). In some embodiments, a lighting filter simulates the point light source. In some embodiments, the lighting effect disappears the first time (e.g., when the lighting effect application criteria are met), as detailed above. In some embodiments, when the system detects a face, facial features are taken into account when applying the lighting effect. Consequently, the lighting effect changes the appearance of the representation of the image data (e.g., 806) based on the subject's specific facial features and facial shape. Applying a simulation of a point light source provides the user with a visual representation of the contents of the depth map information, enabling the device to provide the user with visual feedback about the shape and depth positioning of objects in the field of view of the camera(s) (e.g., 602 and / or 603).Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively. Furthermore, applying the simulation of point light sources without the need for actual physical studio lights allows electronic devices to be cheaper and smaller than if actual studio lights and backgrounds were required, increasing device portability and reducing manufacturing costs.

[0258] In block 930, the electronic device (e.g., 800) detects a second input (e.g., swipe, tap and hold, tap; button press, gesture can be on top of an icon representing a lighting filter (e.g., 814A) or another user interface used to select a filter) via one or more input devices.

[0259] In block 932, in response to detecting the second input, the electronic device (e.g., 800) applies a second lighting effect (e.g., natural light, studio light, contour light, stage light, stage light MONO) different from the first lighting effect to the representation of the image data (e.g., 806), where the second lighting effect is based on the depth map information (e.g., based on depth sensor measurements or based on mapping differences between two images captured simultaneously at different positions). Displaying the second lighting effect based on the depth map information provides the user with additional visual feedback about the depth map information. For example, the second lighting effect may include one or more light sources at different positions, intensities, or types (directional, ambient, point) that provide the user with feedback about a particular orientation of the object corresponding to the depth map information. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by assisting the user in achieving an intended result by providing feedback that directs the device to inputs that will produce the intended result, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0260] In some embodiments, applying the second lighting effect in block 934 includes applying a simulation of one or more point light sources in space to a representation of the image data (e.g., 806) displayed in the digital viewfinder (e.g., 810) based on depth map information associated with the image data. Lighting options include natural light, studio light, contour light, stage light, and stage light MONO. Each of the lighting effects models (e.g., simulates) the effect of one or more point light sources in space based on the depth map of the image data. The natural lighting option does not add synthetic lighting to the image (e.g., the original image is displayed, or a portion of the original image is displayed, and blur is applied to different portions of the original effect to simulate a bokeh effect). The studio lighting effect includes modeling multiple distinct point light sources positioned around a subject (e.g., creating a shiny fill of the light effect). The contour lighting effect includes modeling multiple distinct point light sources positioned at fewer points around a subject to create shadows on the subject's face (e.g., creating a slimming effect, creating shadows on the sides of the subject's face, and / or on the subject's chin). The stage light lighting effect involves modeling a single distinct point light source positioned above the subject (e.g., creating a spotlight effect). The stage light MONO lighting effect involves modeling a single distinct point light source positioned above and around the subject in monochrome (e.g., creating a monochrome spotlight effect). In some embodiments, a lighting filter simulates the point light source. In some embodiments, the lighting effect disappears when a first criterion is met, as detailed above. In some embodiments, when the system detects a face, facial features are taken into account when applying the lighting effect. Consequently, the lighting effect alters the appearance of a representation of the image data (e.g., 806) based on the subject's specific facial features and facial shape. Applying a simulation of the point light source provides the user with a visual representation of the contents of the depth map information, enabling the device to provide the user with visual feedback about the shape and depth positioning of objects in the field of view of the camera(s) (e.g., 602 and / or 603).Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0261] In some embodiments, in block 936, lighting effects change the appearance of the representation of the image data (e.g., 806) based on the location and curvature of the object's contour. Including the object's depth contour in the depth map information allows the device to provide the user with more accurate visual feedback about the object's shape and depth positioning in the field of view of the camera(s) (e.g., 602 or 603). Providing the user with improved visual feedback improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that indicates the input that will cause the device to produce the intended result, by assisting the user in achieving the intended result, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively. Furthermore, including the object's depth contour in the depth map information allows for the preview and application of light source simulations without the need for actual physical studio lights, increasing device portability and lowering manufacturing costs because electronic devices can be cheaper and smaller than if actual studio lights and backgrounds were required.

[0262] In some embodiments, while the first lighting effect (or second filter) is being applied, the electronic device (e.g., 800) determines that the first criterion is not met, and in response to determining that the first criterion is not met (e.g., no object is detected in the field of view within a predetermined distance from the electronic device (e.g., 800)), ceases applying the first (or second) lighting effect to the representation of the image data (e.g., 806) (in some embodiments, the visual effect of the filter is reduced, but the filter remains applied), displays on the display (e.g., 804) the representation of the image data without the first lighting effect applied (e.g., the unaltered image with no filter or with a partial filter applied), and displays on the display (e.g., 804) a graphical indication (e.g., 822) (e.g., text, icon, image) of the first criterion (e.g., lighting condition application criterion) that has not been met. In some embodiments, the filter is reapplied when the condition is again met.

[0263] In some embodiments, the representation of the image data is previously captured image data (e.g., an image retrieved from memory / storage rather than a live preview of image data captured by one or more cameras (e.g., 602 and / or 603)). In some embodiments, depth map information is saved for the stored image so that lighting effects added to the image can be changed and / or removed after the image is captured. Storing depth map information for the stored image reduces the number of photographs a user must take to achieve a desired effect by providing the ability to modify lighting after the image is captured, thereby reducing the number of inputs required to capture a desired photograph, reducing memory requirements for storing photographs, and providing a more efficient user interface. Reducing the number of inputs required to capture a desired image and reducing memory requirements improves device usability and provides a more efficient user-device interface (e.g., by helping the user achieve their intended results and by reducing user errors when operating / interacting with the device), which in turn allows the user to use the device more quickly and efficiently and reduces device power usage and battery life.

[0264] In some embodiments, while displaying a representation of the image data (e.g., 806), the electronic device (e.g., 800) displays a visual indication (e.g., 834) on the display (e.g., 804) that the image data includes depth map information (e.g., a "portrait mode" badge is optionally displayed to indicate the availability of depth map information).

[0265] In some embodiments, while the first lighting effect is being applied, the electronic device (e.g., 800) maintains the value of at least one previously applied visual effect (e.g., bokeh, lighting). Thus, it is possible to achieve lighting and bokeh effects in one representation of the image data.

[0266] In some embodiments, the previously applied visual effect is a color filter.

[0267] In some embodiments, the second input is an input received while the first lighting effect is being applied to the representation of the image data (e.g., 806), and applying the second lighting effect includes gradually transitioning between applying the first lighting effect and the second lighting effect (in some embodiments, the gradually transitioning includes 100% first, 0% second at a first time, 90% first, 10% second, etc. at a second time). Gradually transitioning between lighting effects reduces user distraction created by the filter flickering on and off, thereby focusing the user on taking the desired photograph, thereby reducing the number of inputs required to capture the desired photograph and reducing memory requirements for storing the photograph. Reducing the number of inputs required to capture the desired image and reducing memory requirements improves device usability and provides a more efficient user-device interface (e.g., by helping the user achieve intended results and by reducing user errors when operating / interacting with the device), which further allows the user to use the device more quickly and efficiently and reduces device power usage and battery life.

[0268] It should be noted that the details of the processes described above with respect to method 900 (e.g., FIGS. 9A-9D) are also applicable in an analogous manner to the methods described below and above. For example, methods 700, 1100, 1300, 1500, and 1700 optionally include one or more of the features of the various methods described above and with reference to method 900. For example, filter user interface, affordance, and control elements may be combined from among the various methods. As another example, the viewfinder of method 900 is similar to the viewfinder of methods 900, 1100, 1300, 1500, and 1700. For the sake of brevity, these details will not be repeated below.

[0269] In some embodiments, electronic device 1000 includes some or all of the components of device 600 shown in FIG. 6A . In some embodiments, device 1000 includes multiple cameras 602 and 603 (e.g., on the back of electronic device 1000). In some embodiments, device 1000 includes one or more features of devices 100, 300, and / or 500. In some examples, electronic device (e.g., 1000) has multiple cameras 602 and 603 with fixed but different focal lengths. In some examples, the multiple cameras are on the front, back, or both sides of electronic device (e.g., 1000). In some embodiments, in addition to having different fixed focal lengths, the multiple cameras have different fixed fields of view and different fixed optical magnification characteristics. In some embodiments, camera (e.g., 602) captures image data using multiple focal lengths. In some embodiments, camera (e.g., 602) capturing multiple focal lengths produces the same results as multiple (e.g., two or more) cameras with fixed but different focal lengths. In some examples, the electronic device (e.g., 1000) includes a depth camera, such as an infrared camera, a self-thermometer camera, or a combination thereof. In some examples, the device further includes a light emitting device (e.g., a light projector), such as an IR flood light, a structured light projector, or a combination thereof. The light emitting device is optionally used to illuminate the object during image capture by the visible light camera and the depth camera (e.g., the IR camera), and information from the depth camera and the visible light camera is used to determine a depth map of different portions of the object captured by the visible light camera. In some embodiments, the lighting effects described herein are displayed using disparity information from two cameras (e.g., two visible light cameras) for rear-facing images and depth information from the depth camera combined with image data from the visible light camera for front-facing images (e.g., selfie images).In some embodiments, the same user interface is used when determining depth information using two visible-light cameras and when determining depth information using a depth camera, providing a consistent experience to the user even when using dramatically different techniques to determine the information used in generating lighting effects. In some embodiments, while displaying a camera user interface with one of the filters applied, the device detects selection of a camera switch affordance and switches from a front-facing camera (e.g., a depth camera and a visible-light camera) to a rear-facing camera (e.g., two visible-light cameras spaced apart from each other) (or vice versa), transposing the display from the front-facing camera's field of view to the rear-facing camera's field of view (or vice versa) while maintaining display of user interface controls for applying the filters.

[0270] 10A , electronic device 1000 includes a touch-sensitive display 1004 (e.g., a touchscreen), which displays information received from a camera (e.g., 602). In some embodiments, the display is different from the touch-sensitive surface. In some examples, the camera (e.g., 602) is located on the front, back, or both sides of the electronic device (e.g., 1000).

[0271] As shown in FIG. 10A , electronic device 1000 displays on display 1004 a camera application user interface for capturing images with a camera (e.g., 602). The camera application user interface further includes a representation of image data (e.g., 1006) including a live preview of the field of view of the camera (e.g., 602). In some embodiments, including the embodiment of FIG. 10A , the camera's field of view captures depth information associated with the image data in real time. FIG. 10A further illustrates the camera capturing depth levels of a field of view that includes an object (e.g., a woman) in a foreground region (e.g., 1008) and an object (e.g., a woman) with trees surrounding the object in a background region (e.g., 1010). In some embodiments, the representation of image data 1006 consists of the background regions (e.g., 1008 and 1006) and the foreground region. As can be seen in FIG. 10A, because the image data includes depth map information, the electronic device 1000 applies simulated depth effects (e.g., bokeh) (exemplified by the representation of objects and trees) to a representation of the image data (e.g., 1006) before any other filters are applied.

[0272] 10A , electronic device 1000 displays filter selection interface 1012 below the representation of image data 1006. In some embodiments, the filter selection interface overlays the representation of the image data. In some embodiments, filter selection interface 1012 is positioned along an edge of the representation of image data 1006. In some examples, the filter selection interface is displayed by electronic device 1000 above, below (as seen in FIG. 10A ), to the left, or to the right of the representation of the image data (e.g., 1006). As seen in FIG. 10A , the filter selection interface (e.g., 1012) includes one or more representations (e.g., visual effects) of filters (e.g., 1014A-1014C) arranged in any one or more of rows and columns, or arranged in a circular orientation.

[0273] In some embodiments, the filter selection interface is outlined (e.g., bordered) to distinguish it from the representation of the image data. In some embodiments, the filter selection interface (e.g., 1012) is translucent, semi-translucent, transparent, or semi-transparent and is displayed with no visible border. As a result, in some embodiments, the filter selection interface (e.g., 1012) appears to blend in (e.g., be indistinguishable from) the representation of the image data (e.g., 1006) on the display 1004.

[0274] 10A , filter selection interface 1012 includes one or more filter representations (e.g., 1014A, 1014B, 1014C, 1014D) displayed on display 1004 that correspond to a visual effect. In some embodiments, filter selection interface (e.g., 1012) optionally includes non-displayed filter representations (e.g., that are off-screen). The non-displayed filter representations optionally filter the displayed representations upon input (e.g., a swipe gesture), which results in scrolling through the filter selection position of filter selection interface (e.g., 1012) in the filter representations.

[0275] As shown in Figure 10B, the electronic device 1000 receives an input (e.g., tap 1016) that corresponds to the position of one of the filter representations in the filter selection interface 1012. In Figure 10B, the filter that corresponds to the position of the tap input is "Vivid Warm." In response to receiving the input, the electronic device 1000 applies the corresponding filter (e.g., "Vivid Warm") to a representation of the image data (e.g., 1006), as shown in Figure 10.

[0276] 10C, using the depth map information, electronic device 1000 applies a selected filter (e.g., 1014C) differently to the background regions (e.g., 1010) than to the foreground regions (e.g., 1008). Foreground region 1008 (including the woman in the foreground) is modified using different filter values ​​than background region 1010 (e.g., the woman and the tree). As can be seen in FIG. 10C, electronic device 1000 displays the background region using warmer (drawn as blacker) shades than the foreground region.

[0277] As further shown in FIG. 10C , the selected filter (e.g., “Vivid Warm”) includes a color tone preservation algorithm. The electronic device 1000 uses depth map information associated with the image to minimize deviations from a predetermined color (or a predetermined range of colors) when the filter is applied. For example, in the foreground region (1008) without a color tone preservation algorithm, the skin tones of a subject potentially deviate drastically from their original colors after application of the Vivid Warm filter. To address the undesired color tone deviations, the electronic device 1000 applies a filter to the image representation, but limits the changes to a predetermined color tone (or a predetermined range of colors). Thus, in some embodiments, colors corresponding to skin tones may remain within a certain predetermined range. In contrast, colors not associated with skin (e.g., blue or green) may be more significantly modified by the selected filter.

[0278] FIG. 10C further illustrates that the color tone protection algorithm applies the algorithm differently to color tones in both background and foreground regions. For example, an object in a background region (e.g., 1010) appears to have a similar skin tone to an object in the foreground, and applying a “vivid warm” filter without any color correction would potentially result in a drastic deviation from the original skin tone (making the image appear unrealistic). To correct for the color tone deviation, the electronic device 1000 applies a filter to the image representation, but the change is limited to a predetermined color tone. Thus, in some embodiments, the color tone corresponding to the skin tone may remain within a certain predetermined range. However, the acceptable range of color tone protection in the background is different from the acceptable range of color protection in the foreground (e.g., less or no color tone protection is provided for tones in the background because they are not the focus). Thus, as shown in FIG. 10C, the skin tone of the object in the background region 1010 is changed to a warmer tone than the skin tone of the object in the foreground region 1008.

[0279] As shown in Figure 10D, the electronic device detects a tap 1018 at location 1020, which corresponds to a photo viewer application. In response to receiving the tap 1018, the electronic device switches to an image view mode, as shown in Figure 10E.

[0280] FIG. 10E illustrates a user interface displayed for a photo viewer application. The photo viewer application includes a thumbstrip of representations of previously captured images (e.g., 1020A-1020D), with 1020D being the last captured image. A representation of image data (e.g., 1006) corresponding to the last captured image (1020D) is displayed on display 1004. In some embodiments, the previously captured images were captured using a camera corresponding to the electronic device (e.g., 1000). In some embodiments, the electronic device receives the previously captured images (e.g., 1020A-1020D) from a remote source (e.g., a server). In some embodiments, the previously captured images are captured by a different electronic device (e.g., not 1000). FIG. 10E further illustrates that the last captured image does not have any depth map information associated with it (e.g., there is no visual indicator representing a depth map, there is no visible bokeh effect).

[0281] As shown in Figure 10F, the electronic device detects tap 1022 at location 1024, which corresponds to a photo viewer editing mode (e.g., 1024). In response to receiving tap 1022, the electronic device switches to an image viewing mode, as shown in Figure 10G.

[0282] 10G illustrates that a filter selection interface 1012 is displayed below the representation of image data 1006, as described above with respect to FIG. 10A. In some embodiments, the filter selection interface (e.g., 1012) includes any one or more of the filter representations (e.g., 1014A-1014C) (e.g., visual effects) arranged in one or more rows and columns, or arranged in a circular orientation.

[0283] As shown in Figure 10H, device 1000 detects the location of tap 1026, the "Vivid Warm" filter representation 1014C. In response to receiving tap 1026, the electronic device applies the Vivid Warm filter, which corresponds filter representation 1014C to the image representation, and displays the result in Figure 10I.

[0284] As shown in FIG. 10I, because the image data does not have associated depth information, the electronic device applies the "vivid warm filter" uniformly to the background region 1010 and the foreground region 1008. Furthermore, even if the image data does not have depth information associated with the image, the color protection algorithm still applies the algorithm to the color tones present in the image (e.g., applying the color protection algorithm non-uniformly across the image). For example, the electronic device 1000 applies the color protection algorithm to both skin tones (e.g., foreground and background) of the subject using the same value. Thus, as shown in FIG. 10C, after the electronic device applies the filter to the image data reorientation, in some embodiments, the skin tones (e.g., in the foreground and background) of the subject are displayed using the same filter value, which is different from the filter value applied to the rest of the image.

[0285] As shown in FIG. 10J, the electronic device 1000 displays a color wheel indicator affordance 1028 superimposed on the representation of the image data 1006.

[0286] As shown in Figure 10K, device 1000 detects a tap 1030 at the location of color wheel indicator affordance 1028. In response to detecting tap 1030, the electronic device displays an expanded color wheel over a representation of the image data, as shown in Figure 10L. The color wheel allows a user to swipe to rotate the wheel and tap any of the colors represented within the wheel, thereby applying the selected color filter to the representation of the image data.

[0287] As shown in Figure 10M, device 1000 detects tap 1034 at a position corresponding to the representation of the color in the color wheel. In response to receiving tap 1032, electronic device 1000 applies the selected color filter to the representation of image data 1006, as shown in Figure 10N. As shown in Figure 10N, visual indicator 1034 is displayed over the selected color filter to indicate the currently selected filter.

[0288] 11A-11C are flowcharts illustrating a method for applying simulated visual effects to a representation of image data using an electronic device according to some embodiments. Method 1100 is performed on a device (e.g., 100, 300, 500, 1000) having one or more input devices (e.g., a touch-sensitive surface, a mouse, a keyboard) and a display (e.g., 1004). (In some embodiments, the device has one camera. In some embodiments, the device has multiple cameras, each with a different focal length.) Some operations of method 1100 are optionally combined, the order of some operations is optionally changed, and some operations are optionally omitted.

[0289] As described below, method 1100 provides an intuitive way to apply simulated visual effects to representations of image data. This method reduces the cognitive burden on a user to provide inputs corresponding to functions, thereby creating a more efficient human-machine interface. In the case of battery-operated computing devices, allowing users to initiate various functions faster and more efficiently conserves power and increases the time between battery charges.

[0290] In some embodiments, at block 1102, the electronic device (e.g., 1000) simultaneously displays on a display (e.g., 1104) a representation of the image data (e.g., 1006) (e.g., an image or photograph displayed on the device's display (e.g., 1104)) and a filter selection interface (e.g., 1012).

[0291] In block 1104, the electronic device (e.g., 1000) detects, via one or more input devices, a first input (e.g., 1016) corresponding to the selection of a first image filter (e.g., 1014C) of a representation of image data (e.g., 1006) having a first appearance (e.g., a swipe, tap and hold, tap, button press at (e.g., on, near) a location corresponding to the first image filter (e.g., 1014C) (e.g., lighting filter, vivid, vivid warm, vivid cool, dramatic, dramatic warm, dramatic cool, mono, silverstone, noir).

[0292] In some embodiments, at block 1106, the electronic device (e.g., 1000) further includes one or more cameras (e.g., 602 and / or 603), and the representation of the image data (e.g., 1006) is a live preview of the image data captured within the field of view of the one or more cameras. In some embodiments, the device includes multiple cameras with different focal lengths. In some embodiments, the image data and depth information are captured by one or more cameras at the electronic device (e.g., 1000). In some embodiments, the device includes multiple cameras with different focal lengths.

[0293] In some embodiments, at block 1108, a first input is detected while displaying a filter selection user interface (eg, 1012).

[0294] In some embodiments, at block 1110, the filter selection user interface (e.g., 1012) includes a plurality of filter representations (e.g., 1014A-1014D), including a representation of a first image filter (e.g., 1014C), where the first input corresponds to selecting the representation of the first image filter (e.g., 1014C). The first filter is displayed as part of a series of one or more filter representations arranged in a row along an edge of the display (e.g., 1004). In some embodiments, the series of one or more filter representations (e.g., 1014A-1014D) directly abuts the edge of the display (e.g., 1004). In some embodiments, the filter representations (e.g., 1014A-1014D) are close to, but not adjacent to, the edge of the display (e.g., 1004). In some embodiments, the row is arranged along a short edge of the display (e.g., 1004). In some embodiments, the row is arranged along a long edge of the display (e.g., 1004). Displaying multiple filter representations provides the user with visual feedback that different selectable filters are available to apply to the representation of the image data (e.g., 1006), and optionally the different filters provide different techniques for visualizing depth map information corresponding to the representation of the image data (e.g., 1006), thereby providing the user with additional information about the shape and positioning of objects in the representation of the image data (e.g., 1006). Providing improved visual feedback to the user improves usability of the device and makes the user interface with the device more effective (e.g., by providing feedback that indicates inputs that will cause the device to produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the battery life of the device by allowing the user to use the device more quickly and effectively.

[0295] In block 1112, in response to detecting a first input, the electronic device (e.g., 1000) applies a first image filter (e.g., 1014C) to a representation of the image data (e.g., 1006), optionally including the techniques of blocks 1114-1126.

[0296] In accordance with a determination at block 1114 that the image data has been associated with depth information that enables foreground regions (e.g., 1008) of a representation of the image data (e.g., 1006) to be distinguishable from background regions (e.g., 1010) of a representation (e.g., a depth map) of the image data (e.g., 1006), the techniques of blocks 1116-1120 are optionally performed. In some embodiments, the depth information is stored as a separate track in the image file. In some embodiments, the depth information is calculated using image data received from at least two cameras having different focal lengths.

[0297] At block 1116, the electronic device (e.g., 1000) applies a first image filter (e.g., 1014C) to a foreground region of the representation of the image data (e.g., 1006) at a first level of adjustment to alter the appearance of the foreground region (e.g., 1008) of the representation of the image data (e.g., 1006), where the first level of adjustment indicates a first degree to which the first image filter (e.g., 1014C) alters the appearance of the representation of the image data (e.g., 1006). In some embodiments, the filter alters any one or more of color warmth, desaturation, color tilt, light intensity, contrast, hue shift, and brightness.

[0298] In some embodiments, applying a first image filter (e.g., 1014C) to the foreground region (e.g., 1008) at block 1118 further includes, in accordance with a determination that the image data corresponding to the foreground region (e.g., 1008) includes a first color value (e.g., a hue value, a tone value, one or more colors associated with a skin tone) and that the image data corresponding to the background includes the first color value, shifting (e.g., changing, modifying, replacing) the first color value of the background region (e.g., 1010) using a first level color value adjustment, and shifting (e.g., changing, modifying, replacing) the first color value of the foreground region (e.g., 1008) using a second level color value adjustment that is different from the first level color value adjustment. In some embodiments, skin color in the background is colored differently from skin color in the foreground. In some examples, the skin tone color is modified to not dramatically change the appearance of the skin color. In some examples, the skin tone is not modified at all. In some embodiments, the filter is applied uniformly to the background, even if the background region has a color tone corresponding to skin tones. Applying the filter differently includes removing filter constraints from the foreground or background (e.g., removing the requirement for skin protection in the background). Applying different levels of color adjustment to objects of similar (or identical) color based on whether they are in the foreground or background provides the user with visual feedback about depth information corresponding to the image data, such as indicating that a particular object is in the foreground and a different object is in the background, and provides the user with visual feedback to distinguish foreground objects from similar objects in the background.Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that directs the device to inputs that will produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively.

[0299] At block 1120, the electronic device (e.g., 1000) applies a first image filter (e.g., 1014C) to a background region (e.g., 1010) of the representation of the image data (e.g., 1006) at a second level of adjustment to alter the appearance of the background region (e.g., 1010) of the representation of the image data (e.g., 1006). The second level of adjustment indicates a second degree to which the first image filter (e.g., 1014C) alters the appearance of the representation of the image data (e.g., 1006), and the first level of adjustment and the second level of adjustment are different.

[0300] At block 1122, after applying the first image filter (e.g., 1014C) to the representation of the image data (e.g., 1006), the electronic device (e.g., 1000) displays on the display (e.g., 1004) a representation of each image with the first filter applied to the representation of the image data (e.g., 1006). In some embodiments, the results are displayed on the display (e.g., 1004). In some embodiments, the electronic device (e.g., 1000) displays the results in response to receiving a request to apply the first image filter (e.g., 1014C) to each image. By applying image filters with different levels of adjustment to the foreground and background and displaying the updated representation of the image data (e.g., 1006), the user is provided with visual feedback regarding depth information, particularly regarding which objects have been identified as foreground and which objects have been identified as background. Providing improved visual feedback to the user improves usability of the device and makes the user-device interface more effective (e.g., by assisting the user in achieving an intended result by providing feedback that directs the device to inputs that will produce the intended result and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively. Furthermore, applying image filters with different levels of adjustment to the foreground and background and displaying a representation of the updated image data (e.g., 1006) allows the electronic device to automatically apply the filter and create more dramatic effects without distorting the subject's skin tones in the viewfinder, which would otherwise require the user to manually correct after applying the filter.By applying the filter to the relevant portions of the image and automatically avoiding distorting the subject's skin tone without further user input, the device's usability is improved and the user-device interface is more efficient (e.g., by helping the user achieve the intended result and by reducing the number of user inputs), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and improves battery life.

[0301] In some embodiments, applying a first image filter (e.g., 1014C) to the representation of the image data (e.g., 1006) at block 1124 further includes, in accordance with a determination that the image data includes third color values ​​(e.g., hue values, tone values, one or more colors associated with skin tones), shifting (e.g., changing, modifying, replacing) the third color values ​​using a third level of color value adjustment (e.g., specific colors for skin tone protection). In some embodiments, the skin color is colored a different color than the rest of the image. In some embodiments, the skin tone color is modified to not dramatically change the appearance of the skin color. In some embodiments, the skin tone is not modified at all. In some embodiments, applying a different filter includes removing a filter constraint from the image (e.g., removing a skin protection requirement in the background). For example, when depth information is not available, the device optionally applies a skin protection algorithm when adjusting the color of the image throughout the entire image rather than just the foreground of the image. Therefore, some features in the background of the image that are close to the skin tones protected by the skin protection algorithm are not color shifted. By shifting the color of portions of the image data using a different technique (e.g., third-level color adjustment), the user is provided with visual feedback as to which portions of the image do not correspond to (or, alternatively, do correspond to) a particular color, such as by shifting the color of skin tones that differ from the background so that people with particular skin tones are more easily distinguishable compared to other objects. Providing improved visual feedback to the user improves device usability and makes the user-device interface more effective (e.g., by providing feedback that indicates the input that will cause the device to produce the intended result, by helping the user achieve the intended result, and by reducing user errors when operating or interacting with the device), thereby further allowing the user to use the device more quickly and effectively, reducing power usage, and improving the device's battery life.Furthermore, shifting the color of a portion of the image data using a different technique (e.g., third-level color adjustment) allows for more dramatic effects for the filter when depth information is available, while still avoiding distorting the subject's skin tones regardless of whether depth information is available, thereby avoiding the need for the user to manually correct the skin tones afterward. Applying the filter to the relevant portion of the image and automatically avoiding distorting the subject's skin tones without further user input improves device usability and makes the user-device interface more efficient (e.g., by helping the user achieve the intended result and by reducing the number of user inputs), which further allows the user to use the device more quickly and efficiently and reduces the device's power usage and improves battery life.

[0302] In some embodiments, in response to detecting a first input and applying a first image filter (e.g., 1014C) to the representation of the image data (e.g., 1006) in accordance with a determination that the image data is not associated with depth information at block 1126, the electronic device (e.g., 1000) uniformly applies the first image filter (e.g., 1014C) to the representation of the image data (e.g., 1006) at a first level of adjustment (e.g., thereby uniformly changing the appearance of foreground regions (e.g., 1008) of the representation of the image data (e.g., 1006) and background regions (e.g., 1010) of the representation of the image data (e.g., 1006). Applying the image filter uniformly to the representation of the image data (e.g., 1006) provides visual feedback to the user about the state of the device, and in particular, that depth information is not available for the image data. Providing improved visual feedback to the user improves the usability of the device and makes the user-device interface more effective (e.g., by providing feedback that indicates which inputs to make the device produce the intended results, by assisting the user in achieving the intended results, and by reducing user errors when operating or interacting with the device), thereby further reducing power usage and improving the device's battery life by allowing the user to use the device more quickly and effectively. Furthermore, applying the image filter uniformly to a representation of the image data (e.g., 1006) allows for more dramatic effects for the filter when depth information is available, while still avoiding distorting the subject's skin tones regardless of whether depth information is available, thereby avoiding the need for the user to manually correct skin tones after the fact.By applying the filter to the relevant portions of the image and automatically avoiding distorting the subject's skin tone without further user input, the device's usability is improved and the user-device interface is more efficient (e.g., by helping the user achieve the intended result and by reducing the number of user inputs), which in turn allows the user to use the device more quickly and efficiently and reduces the device's power usage and improves battery life.

[0303] In some embodiments, prior to detecting the first input, the electronic device (e.g., 1000) receives image data (e.g., from a camera, from memory, from a server) represented by a representation of the image data (e.g., 1006) at the electronic device (e.g., 1000). In some embodiments, the image data includes RGB and depth map values. In some embodiments, the image data and depth information are received from a source external to the electronic device (e.g., 1000) (e.g., the data is received from a server).

[0304] In some embodiments, when the first image filter (e.g., 1014C) is applied, the electronic device (e.g., 1000) maintains at least one value of a previously applied visual effect (e.g., blur, lighting). Thus, it is possible to achieve photohardening and bokeh effects in one representation of the image data (e.g., 1006). By maintaining at least one value of a previously applied visual effect (e.g., blur, lighting) while the first image filter (e.g., 1014C) is applied, the need for bulky lenses and devices to create the bokeh effect is eliminated.

[0305] In some embodiments, an electronic device (e.g., 1000) displays on a display (e.g., 1004) a camera application user interface, where the camera application user interface includes a digital viewfinder (e.g., textual representations showing images, icons, filters) that includes a live preview of the field of view of one or more cameras in a first position overlaid with the digital viewfinder (including a live or near-live preview image), and a representation (e.g., icon, affordance, button) of a color wheel user interface (e.g., 1028). In some embodiments, the representation of the color wheel interface is displayed in response to user input (e.g., a tap on the color wheel affordance or a touch-and-hold gesture detected on the color wheel affordance).

[0306] In some embodiments, in response to detecting a second user input (e.g., 1030) corresponding to a representation of a color wheel user interface, the electronic device (e.g., 1000) ceases displaying (e.g., 1004) the representation of the color wheel user interface (e.g., 1030) and displays, on the display (e.g., 1004), a color wheel user interface (e.g., 1031) displaying a representation of a plurality of color filters. In some embodiments, the color wheel is displayed as an arc, a wheel, a partial / full oval, or a circle.

[0307] In some embodiments, in response to detecting a third user input corresponding to an area corresponding to at least one of the representations of the color filters displayed within the color wheel user interface, the electronic device (e.g., 1000) applies the corresponding color filter to the image data to modify the color appearance of the representation (background, foreground, or both background and foreground) of the image data (e.g., 1006).

[0308] For example, methods 700, 900, 1300, 1500, and 1700 optionally include one or more of the features of the various methods described above with respect to method 1100. For example, elements of filter user interfaces, affordances, and controls may be combined from among the various methods. As another example, the viewfinder in method 1100 is similar to the viewfinder in methods 700, 900, 1300, 1500, and 1700. For the sake of brevity, these details will not be repeated below.

[0309] As shown in FIG. 12A , in some embodiments, electronic device 1200 includes a touch-sensitive display 1204 (e.g., a touchscreen), which displays information received from a camera (e.g., 1202). In some embodiments, device 1200 includes one or more features of devices 100, 300, and / or 500. In some embodiments, the display is different from the touch-sensitive surface. In some examples, the camera (e.g., 1202) is located on the front, back, or both sides of the electronic device (e.g., 1200). In some embodiments, electronic device 1200 includes some or all of the components of device 600 shown in FIG. 6A . In some embodiments, device 1200 includes multiple cameras 602 and 603 (e.g., on the back of electronic device 1200).

[0310] In some examples, an electronic device (e.g., 1200) has multiple cameras with fixed but different focal lengths. In some examples, the multiple cameras are on the front, back, or both sides of the electronic device (e.g., 1200). In some embodiments, in addition to having different fixed focal lengths, the multiple cameras have different fixed fields of view and different fixed optical magnification characteristics. In some embodiments, a camera (e.g., 1202) captures image data using multiple focal lengths. In some embodiments, a camera (e.g., 1202) captures at multiple focal lengths at a time, producing the same results as two or more cameras with fixed but different focal lengths.

[0311] 12A further shows electronic device 1200 displaying a camera application user interface for capturing an image with a camera (e.g., 1202). The camera application user interface further includes a representation of image data 1210 that includes a live preview of the camera's field of view. In some embodiments, the camera's field of view captures depth information associated with the image data in real time. FIG. 12A further shows the electronic device applying a "dramatic" filter to the representation of the image data.

[0312] FIG. 12A further illustrates that electronic device 1200 displays filter selection interface 1206 below the representation of the image (e.g., 1210). In some embodiments, filter selection interface (e.g., 1206) overlaps the representation of the image data (e.g., 1210). In some embodiments, filter selection interface (e.g., 1206) is displayed along an edge of the representation of the image da...

Claims

1. An electronic device having one or more cameras, one or more input devices, and a display, On the display, a digital viewfinder containing a live preview of the field of view of one or more cameras; a representation of a filter picker user interface overlaid on the digital viewfinder; simultaneously displaying a camera application user interface including: detecting, while simultaneously displaying the representations of the digital viewfinder and the filter picker user interface, a first input via the one or more input devices beginning at a location corresponding to a respective portion of the live preview; In response to detecting the first input, applying a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that a filter picker user interface overlap the respective portion of the live preview when the first input is detected; performing a respective operation in the camera application without applying the preview of the first filter to the live preview according to a determination that the filter picker user interface is not overlapping the respective portion of the live preview when the first input is detected; A method comprising:

2. detecting a second input beginning at a location corresponding to the filter picker user interface while the filter picker user interface is displayed and does not overlap the respective portion of the live preview; In response to detecting the second input, expanding the filter picker user interface to overlay the respective portion of the live preview; The method of claim 1 further comprising:

3. The method of claim 1 or 2, wherein the filter picker user interface includes the representation of the filter picker user interface and a representation of a plurality of filters.

4. 3. The method of claim 2, wherein expanding the filter picker user interface to overlay the respective portion of the live preview occurs without applying a preview of a filter to the live preview of the field of view of the camera that was not applied before the second input was detected.

5. The method of claim 2 , wherein when in a first state, the representation of the filter picker user interface is a representation of a container object having a plurality of faces enclosing an interior volume containing a representation of a first three-dimensional object.

6. The method of claim 5 , wherein the representation of the container object changes to remove shading and / or lighting effects when the representation of the filter picker user interface is in a second state different from the first state.

7. 6. The method of claim 5, wherein while the representation of the filter picker user interface is in the first state, any one or more of the surfaces or the interior volume of the plurality of surfaces has a visual appearance based on a represented currently selected filter of the plurality of filters.

8. 6. The method of claim 5, wherein when the representation of the filter picker user interface is in a second state different from the first state, the visual appearance of the representation of the filter picker user interface is not based on the currently selected filter of the plurality of filters displayed within the interior volume.

9. 9. The method of claim 1, wherein while the filter picker user interface is displayed and does not overlap the respective portions of the live preview, the representation of the filter picker user interface and the representations of a plurality of filters are arranged along a line substantially parallel to an edge of the display.

10. The method of claim 3 , wherein the representation of the filter picker user interface and the representations of the plurality of filters are arranged along a curve while the filter picker user interface overlaps the respective portions of the live preview.

11. The method of claim 3 , wherein the first input is a tap gesture and the location corresponding to the respective portion of the live preview is a location corresponding to a representation of the first filter in the representation of the plurality of filters.

12. the representation of the filter picker user interface includes a representation of the first filter, a representation of a second filter, and a representation of a third filter; The method of claim 3 , wherein a value of a visual characteristic of the representation of the first filter is different from a value of the visual characteristic of the representation of the second filter and from a value of the visual characteristic of the representation of the third filter.

13. the representation of the second filter is in a first direction from the representation of the first filter; the representation of the third filter is in the first direction from the representation of the second filter; The method of claim 12 , wherein the value of the visual characteristic varies progressively in a first direction from the representation of the first filter to the representation of the second filter to the representation of the third filter.

14. 14. The method of claim 13, wherein the filter picker user interface includes additional information about the first filter that is displayed in association with the representation of the first filter when the filter picker user interface overlaps the respective portion of the live preview.

15. 15. The method of claim 1, wherein the first input is a tap gesture, and performing the respective action includes selecting a focal point for media capture at an object located in the field of view of the camera in the respective portion of the live preview when the input is detected.

16. The method of claim 1 , wherein the first input is a swipe gesture and performing the respective action includes changing a camera capture mode of the electronic device.

17. detecting a third input beginning at a location corresponding to the filter picker user interface while the filter picker user interface is displayed and overlapping the respective portion of the live preview and while the first filter is being applied to the live preview of the field of view of the camera; In response to detecting the third input, moving a representation of a second filter in the representation of the plurality of filters to a position on the display corresponding to a currently selected filter; applying a preview of the second filter to the live preview of the field of view; 17. The method of any one of claims 1 to 16, further comprising:

18. the representation of the filter picker user interface is a representation of a second three-dimensional object having multiple faces, and the method further comprises: detecting a sixth input beginning at a location corresponding to the filter picker user interface while the representation of the filter picker user interface is associated with a sixth one of the representations of the plurality of filters and while the representation of the filter picker user interface presents a first surface of the plurality of surfaces; In response to detecting the sixth input, rotating the container object to present a second face of the plurality of faces that was not displayed before detecting the sixth input; switching from the first filter, which is the currently selected filter, to a second filter, different from the first filter, which is also the currently selected filter; applying a preview of the second filter to the live preview of the field of view; 20. The method of claim 17, further comprising:

19. Applying the preview of the second filter includes: The method of claim 17 , comprising gradually transitioning between applying the preview of the first filter and applying the preview of the second filter.

20. 18. The method of claim 17, further responsive to detecting the third input to provide a tactile output.

21. 21. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising one or more cameras, one or more input devices, and a display, the one or more programs including instructions for performing the method of any one of claims 1 to 20.

22. 1. An electronic device comprising: one or more cameras; one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 21. An electronic device comprising:

23. 1. An electronic device comprising: one or more cameras; one or more input devices; The display and means for carrying out the method according to any one of claims 1 to 20; An electronic device comprising:

24. 1. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device having one or more cameras, one or more input devices, and a display, the one or more programs comprising: On the display, a digital viewfinder containing a live preview of the field of view of one or more cameras; a representation of a filter picker user interface overlaid on the digital viewfinder; simultaneously displaying a camera application user interface including detecting, while simultaneously displaying the representations of the digital viewfinder and the filter picker user interface, a first input via the one or more input devices beginning at a location corresponding to a respective portion of the live preview; In response to detecting the first input, applying a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that a filter picker user interface overlap the respective portion of the live preview when the first input is detected; performing a respective operation in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface is not overlapping the respective portion of the live preview when the first input is detected. A non-transitory computer-readable storage medium containing instructions.

25. 1. An electronic device comprising: one or more cameras; one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: On the display, a digital viewfinder containing a live preview of the field of view of one or more cameras; a representation of a filter picker user interface overlaid on the digital viewfinder; simultaneously displaying a camera application user interface including detecting, while simultaneously displaying the representations of the digital viewfinder and the filter picker user interface, a first input via the one or more input devices beginning at a location corresponding to a respective portion of the live preview; In response to detecting the first input, applying a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that a filter picker user interface overlap the respective portion of the live preview when the first input is detected; performing a respective operation in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface is not overlapping the respective portion of the live preview when the first input is detected. An electronic device containing instructions.

26. 1. An electronic device comprising: one or more cameras; one or more input devices; The display and On the display, a digital viewfinder containing a live preview of the field of view of one or more cameras; a representation of a filter picker user interface overlaid on the digital viewfinder; means for simultaneously displaying a camera application user interface including: means for detecting, via the one or more input devices, a first input beginning at a location corresponding to a respective portion of the live preview while simultaneously displaying the digital viewfinder and the representation of the filter picker user interface; In response to detecting the first input, applying a preview of a first filter to the live preview of the field of view of the camera that was not applied before the first input was detected in accordance with a determination that a first criterion is satisfied, the first criterion including a requirement that a filter picker user interface overlap the respective portion of the live preview when the first input is detected; means for performing a respective operation in the camera application without applying the preview of the first filter to the live preview in accordance with a determination that the filter picker user interface is not overlapping the respective portion of the live preview when the first input is detected; An electronic device comprising:

27. An electronic device comprising one or more input devices and a display, displaying on said display a representation of image data associated with depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices; applying a first lighting effect based on the depth map information to the representation of image data in accordance with detecting the first input; detecting a second input via the one or more input devices; applying a second lighting effect based on the depth map information to the representation of image data in response to detecting the second input, the second lighting effect being different from the first lighting effect; A method comprising:

28. 28. The method of claim 27, wherein the electronic device further includes one or more cameras, and the representation of the image data is a live preview of image data captured within the field of view of the one or more cameras displayed in a digital viewfinder.

29. 30. The method of claim 28, wherein the first input is an input received while first criteria are met, the first criteria including a requirement that an object be detected in the field of view within a predetermined distance from the electronic device.

30. applying the first lighting effect; 30. The method of claim 29, comprising applying a placeholder filter to the representation of the image data displayed in the viewfinder, the placeholder filter being applied based on the first lighting effect and regardless of whether the first criterion is met.

31. While the first lighting effect is being applied, determining that the first criterion is not met; and In response to the determination that the first criterion is not met, ceasing to apply the first lighting effect to the representation of image data; and displaying on the display the representation of image data without applying a first lighting effect; displaying on the display a graphical indication of the first criterion not being met; 31. The method of claim 30, further comprising:

32. applying a placeholder filter to the live preview in response to the first input without applying the first lighting effect to the live preview; responsive to detecting that the first criterion is met, applying the first lighting effect to the live preview while continuing to apply the placeholder filter to the live preview; 30. The method of claim 29, comprising:

33. the first input is an input received while first criteria are not met, the first criteria including a requirement that an object be detected in the field of view within a predetermined distance from the electronic device; The method comprises: detecting that the first criterion is met after displaying the live preview without applying the first lighting effect to the live preview; applying the first lighting effect to the live preview in response to detecting that the first criterion is met; and 29. The method of claim 28, comprising:

34. 28. The method of claim 27, wherein the representation of image data is previously captured image data.

35. 35. The method of any one of claims 27 to 34, further comprising receiving, at the device, the image data and the depth map information associated with the representation of image data prior to displaying the representation of image data.

36. displaying, while displaying the representation of image data, a visual indication on the display that the image data includes depth map information.

36. The method of claim 35, further comprising:

37. 37. A method according to any one of claims 27 to 36, wherein the depth map information associated with the image data includes information corresponding to at least three different depth levels.

38. the depth map information associated with the image data includes information specific depth contours of objects in the representation of the image data; 38. The method of any one of claims 27 to 37, wherein the lighting effects vary the appearance of the representation of the image data based on the position and curvature of the contour of the object.

39. Applying the first lighting effect or the second lighting effect includes:

39. A method according to any one of claims 27 to 38, comprising applying to the representation of the image data displayed on the digital viewfinder a simulation of one or more point sources of light in space based on the depth map information associated with the image data.

40. 40. The method of any one of claims 27 to 39, further comprising maintaining at least one value of a previously applied visual effect while the first lighting effect is being applied.

41. 41. The method of claim 40, wherein the previously applied visual effect is a color filter.

42. the second input is an input received while the first lighting effect is being applied to the representation of image data, and applying the second lighting effect comprises:

41. The method of any one of claims 27 to 40, comprising gradually transitioning between applying the first lighting effect and the second lighting effect.

43. 43. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising one or more input devices and a display, the one or more programs comprising instructions for performing the method of any one of claims 27 to 42.

44. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 43. An electronic device comprising: said one or more programs comprising instructions for performing the method of any one of claims 27 to 42.

45. 1. An electronic device comprising: one or more input devices; The display and means for carrying out the method of any one of claims 27 to 42; An electronic device comprising:

46. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices and a display, the one or more programs comprising: displaying on said display a representation of the image data associated with the depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices; applying a first lighting effect based on depth map information to the representation of image data in response to detecting the first input; detecting a second input via the one or more input devices; applying a second lighting effect based on the depth map information to the representation of image data in response to detecting the second input, the second lighting effect being different from the first lighting effect; A non-transitory computer-readable storage medium containing instructions.

47. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: displaying on said display a representation of the image data associated with the depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices; applying a first lighting effect based on depth map information to the representation of image data in response to detecting the first input; detecting a second input via the one or more input devices; applying a second lighting effect based on the depth map information to the representation of image data in response to detecting the second input, the second lighting effect being different from the first lighting effect; An electronic device containing instructions.

48. 1. An electronic device comprising: one or more cameras; one or more input devices; The display and means for displaying, on said display, a representation of image data associated with depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices; applying a first lighting effect based on the depth map information to the representation of image data in response to detecting the first input; detecting a second input via the one or more input devices; means for applying a second lighting effect based on the depth map information to the representation of image data in response to detecting the second input, the second lighting effect being different from the first lighting effect; An electronic device comprising:

49. An electronic device comprising one or more input devices and a display, detecting a first input via the one or more input devices corresponding to a selection of a first image filter for a representation of image data having a first appearance; In response to detecting the first input, in response to a determination that the image data is associated with depth information that enables foreground regions of the representation of image data to be distinguished from background regions of the representation of image data; applying the first image filter to the foreground region of the representation of image data with a first level of adjustment indicating a first degree to which the first image filter alters the appearance of the representation of image data, thereby altering the appearance of the foreground region of the representation of image data; applying the first image filter to the background region of the representation of image data with a second level of adjustment that indicates a second degree to which the first image filter alters the appearance of the background region of the representation of image data and that is different from the first level of adjustment to alter the appearance of the background region of the representation of image data; applying the first image filter to the representation of image data, including displaying on the display a representation of the respective image with the first filter applied to the representation of image data after applying the first image filter to the representation of image data; A method comprising:

50. 50. The method of claim 49, wherein the electronic device further comprises one or more cameras, and the representation of the image data is a live preview of image data captured within the field of view of the one or more cameras.

51. 51. The method of claim 49 or 50, wherein the first input is detected while displaying a filter selection user interface.

52. On the display, said representation of image data; the filter selection interface; 52. The method of claim 51, further comprising simultaneously displaying:

53. 52. The method of claim 51, wherein the filter selection user interface includes a plurality of filter representations including a representation of the first image filter, and the first input corresponds to a selection of the representation of the first image filter.

54. 54. The method of any one of claims 49 to 53, further comprising receiving, at the electronic device, image data represented by the representation of image data before detecting the first input.

55. applying the first image filter to the representation of image data in response to detecting the first input; applying the first image filter uniformly to the representation of image data having the first level of adjustment in accordance with a determination that the image data is not associated with depth information; 55. The method of any one of claims 49 to 54, further comprising:

56. applying the first image filter to the representation of image data 55. The method of any one of claims 49 to 54, further comprising, in accordance with a determination that the image data includes a third color value, shifting the third color value using a third level color value adjustment.

57. applying the first image filter to the foreground region 57. The method of claim 49, further comprising: in accordance with a determination that the image data corresponding to the foreground region includes a first color value and the image data corresponding to the background includes the first color value, shifting the first color value of the background region using a first level color value adjustment and shifting the first color value of the foreground region using a second level color value adjustment different from the first level color value adjustment.

58. 58. A method according to any one of claims 49 to 57, wherein the value of at least one previously applied visual effect is maintained while the first image filter is being applied.

59. and displaying a camera application user interface on the display, the camera application user interface comprising: a digital viewfinder containing a live preview of the field of view of one or more cameras; a representation of a color wheel user interface in a first position overlaid on the digital viewfinder; 50. The method of claim 49, comprising:

60. in response to detecting a second user input corresponding to the representation of the color wheel user interface; ceasing to display the representation of the color wheel user interface; and displaying, on the display, a color wheel user interface displaying a plurality of representations of color filters; 60. The method of claim 59, further comprising:

61. in response to detecting a third user input corresponding to an area corresponding to at least one of the representations of color filters displayed within the color wheel user interface; 61. The method of claim 60, further comprising applying the corresponding color filter to the image data to modify the color appearance of the representation of image data.

62. 62. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising one or more input devices and a display, the one or more programs comprising instructions for performing the method of any one of claims 49 to 61.

63. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 62. An electronic device comprising:

64. 1. An electronic device comprising: one or more input devices; The display and and means for performing the method of any one of claims 49 to 61.

65. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices and a display, the one or more programs comprising: detecting a first input via the one or more input devices corresponding to a selection of a first image filter for a representation of image data having a first appearance; In response to detecting the first input, in response to a determination that the image data is associated with depth information that enables foreground regions of the representation of image data to be distinguished from background regions of the representation of image data; applying the first image filter to the foreground region of the representation of image data with a first level of adjustment indicating a first degree to which the first image filter alters the appearance of the representation of image data, thereby altering the appearance of the foreground region of the representation of image data; applying the first image filter to the background region of the representation of image data with a second level of adjustment, different from the first level of adjustment, indicating a second degree to which the first image filter alters the appearance of the background region of the representation of image data; and and after applying the first image filter to the representation of image data, displaying on the display the representation of the respective image with the first filter applied to the representation of image data. A non-transitory computer-readable storage medium containing instructions.

66. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: detecting a first input via the one or more input devices corresponding to a selection of a first image filter for a representation of image data having a first appearance; In response to detecting the first input, in response to a determination that the image data is associated with depth information that enables foreground regions of the representation of image data to be distinguished from background regions of the representation of image data; applying the first image filter to the foreground region of the representation of image data with a first level of adjustment indicating a first degree to which the first image filter alters the appearance of the representation of image data, thereby altering the appearance of the foreground region of the representation of image data; applying the first image filter to the background region of the representation of image data with a second level of adjustment that indicates a second degree to which the first image filter alters the appearance of the background region of the representation of image data and that is different from the first level of adjustment to alter the appearance of the background region of the representation of image data; applying the first image filter to the representation of image data, including displaying on the display a representation of each of the images with the first filter applied to the representation of image data after applying the first image filter to the representation of image data. An electronic device containing instructions.

67. 1. An electronic device comprising: one or more input devices; The display and means for detecting, via the one or more input devices, a first input corresponding to a selection of a first image filter for a representation of image data having a first appearance; means for applying the first image filter to the representation of image data in response to detecting the first input, in response to a determination that the image data is associated with the depth information that enables foreground regions of the representation of image data to be distinguished from background regions of the representation of image data; applying the first image filter to the foreground region of the representation of image data with a first level of adjustment indicating a first degree to which the first image filter alters the appearance of the representation of image data, thereby altering the appearance of the foreground region of the representation of image data; applying the first image filter to the background region of the representation of image data with a second level of adjustment, different from the first level of adjustment, indicating a second degree to which the first image filter alters the appearance of the background region of the representation of image data, to alter the appearance of the background region of the representation of image data; means for applying the first image filter to the representation of image data and then displaying on the display the representation of the respective image with the first filter applied to the representation of image data; An electronic device comprising:

68. An electronic device comprising one or more input devices and a display, displaying on the display a filter selection interface including a representation of a plurality of filters in a series of filters; While simultaneously displaying on the display a representation of image data and the filter selection interface, detecting, via the one or more input devices, a first input at a position corresponding to the filter selection interface while a first filter of the series of filters satisfies a selection criterion; In response to detecting the first input, ceasing to display a first subset of representations of a plurality of filters in the set of filters, the first subset including one or more filters in a first direction from the representation of the first filter in the filter selection user interface and one or more filters in a second direction from the representation of the first filter; maintaining a representation of a second subset of representations of filters in the set of filters, the representation including the representation of at least the first filter; A method comprising:

69. 69. The method of claim 68, wherein the first filter satisfies the selection criteria when the first input is detected at a location corresponding to the first filter.

70. 69. The method of claim 68, wherein the first filter satisfies the selection criteria when the representation of the first filter is in a selected position when the first input is detected.

71. 71. The method of any one of claims 68 to 70, further comprising receiving, at the electronic device, image data corresponding to the representation of image data prior to displaying the representation of the image data.

72. 71. The method of any one of claims 68 to 70, wherein the electronic device includes a touch-sensitive display, the first input corresponding to a contact on the touch-sensitive display, the contact having a characteristic intensity greater than a first intensity threshold.

73. The electronic device includes a touch-sensitive display, the first input corresponds to a first contact on the touch-sensitive display, and the method includes: after detecting the first input, while continuing to detect the first contact on the display; Detecting movement of the first contact; displaying on the display a representation of the image data with a visual effect corresponding to the second filter applied; 73. The method of claim 72, comprising:

74. further in response to detecting movement of the contact; 74. The method of claim 73, providing a tactile output indicating that the filter applied to the image data has been changed.

75. detecting a movement of a second contact on the touch-sensitive display while a third filter is in the second selection position and while displaying the first subset of representations prior to detecting the first input; In response to detecting movement of the second contact, ceasing to display a representation of a third filter at the second selection position; and displaying a representation of a fourth filter at the second selection location; and applying a visual effect corresponding to the fourth filter to the image data; and displaying on the display a representation of the image data with the applied visual effect; 74. The method of claim 73, further comprising: wherein the first contact is the second contact.

76. the electronic device includes a touch-sensitive display; the first input corresponds to an increase in a characteristic intensity of a contact on the touch-sensitive display; 69. The method of claim 68, further comprising dynamically shifting the location of the first filtered representation on the display toward the focal point in response to detecting the increase in the characteristic intensity of the contact.

77. detecting a decrease in the characteristic intensity of the contact while continuing to detect the contact on the touch-sensitive display; In response to detecting the decrease in the characteristic intensity of the contact, maintaining display of the second subset of representations of filters without displaying the first subset of representations of filters pursuant to a determination that the characteristic intensity of the contact has reached a respective intensity threshold prior to detecting the decrease in the characteristic intensity of the contact; dynamically shifting the location of the first filtered representation on the display away from the focal point in accordance with a determination that the characteristic intensity of the contact did not reach the respective intensity threshold prior to detecting the decrease in the characteristic intensity of the contact; 77. The method of claim 76, comprising:

78. The electronic device includes a touch-sensitive display, the first input corresponds to a contact on the touch-sensitive display, and the method comprises: detecting a lift-off of the contact while maintaining display of the second subset of filter representations without displaying the first subset of filter representations; Restoring a display of the first subset of the representation of the filter in response to detecting lift-off of the contact; 78. The method of any one of claims 68 to 77, further comprising:

79. the electronic device includes a touch-sensitive display, and the method comprises: detecting an input comprising an increase in intensity of contact while not displaying the first subset of representations of filters and while maintaining display of the second subset of representations of filters; In response to detecting the input, recovering a display of the first subset of filter representations in accordance with a determination that the input included an increase in a characteristic intensity of the contact from a characteristic intensity below a fourth intensity threshold to a characteristic intensity above the fourth intensity threshold contact having the characteristic intensity above the fourth intensity threshold; maintaining display of the second subset of representations of filters without displaying the first subset of representations of filters in accordance with a determination that the input did not include an increase in a characteristic intensity of the contact from a characteristic intensity below the fourth intensity threshold to a characteristic intensity above the fourth intensity threshold contact having the characteristic intensity above the fourth intensity threshold; 79. The method of any one of claims 68 to 78, further comprising:

80. the representation of the first filter in the filter selection interface includes a live preview of the field of view of the one or more cameras of the device with the first filter applied; the representation of the second filter in the filter selection interface includes a live preview of the field of view of the one or more cameras of the device with the second filter applied.

80. The method of any one of claims 68 to 79.

81. ceasing to display the first subset of representations of the filter; gradually reducing the size of the representation of the first filter while the representation of the first filter continues to display at least a portion of a live preview of the field of view of the one or more cameras of the device to which the first filter has been applied; gradually reducing the size of the representation of the second filter while the representation of the second filter continues to display at least a portion of a live preview of the field of view of the one or more cameras of the device to which the second filter has been applied; 81. The method of any one of claims 68 to 80, further comprising:

82. further in response to detecting movement of the second contact; generating a corresponding tactile output in response to determining that the fourth filter is a first type filter; and ceasing to generate the corresponding tactile output in accordance with determining that the fourth filter is a second type filter; and 82. The method of claim 81, further comprising:

83. 69. The method of claim 68, wherein the electronic device includes a touch-sensitive display, and the first input corresponds to a contact maintained on the touch-sensitive display for a predetermined period of time.

84. 84. The method of any one of claims 68 to 83, the method further comprising providing a tactile output at the electronic device in response to detecting the first input.

85. 69. The method of claim 68, wherein the representations of the plurality of filters in the series of filters include a third subset of representations of filters that are not displayed on the display while detecting the first input.

86. 86. The method of any one of claims 68 to 85, wherein the filter selection interface further includes a visual indicator identifying a representation of a third filter, the third filter being a most recently used filter.

87. 87. The method of any one of claims 68 to 86, wherein the representation of the first filter corresponds to no filter option, and the first subset of filter representations includes two or more filters of the plurality of filters, excluding the representation of the first filter and a representation of a fourth filter corresponding to a most recently applied filter.

88. 88. The method of any one of claims 68 to 87, wherein the representation of the first filter corresponds to a most recently used filter option, and the first subset of filter representations includes two or more filters of the plurality of filters, excluding the representation of the first filter and a representation of a fifth filter corresponding to no filter option.

89. 89. The method of any one of claims 68 to 88, wherein the representation of the first filter does not correspond to the most recently applied filter and does not correspond to a no filter option, and the first subset of filter representations includes two or more filters of the plurality of filters excluding the representation of the first filter, the representation of a sixth filter corresponding to the most recently applied filter, and the representation of a seventh filter corresponding to a no filter option.

90. 90. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising one or more input devices and a display, the one or more programs comprising instructions for performing the method of any one of claims 68 to 89.

91. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 90. An electronic device comprising:

92. 1. An electronic device comprising: one or more input devices; The display and means for carrying out the method of any one of claims 68 to 89; An electronic device comprising:

93. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices and a display, the one or more programs comprising: displaying on the display a filter selection interface including a representation of a plurality of filters in the set of filters; While simultaneously displaying on the display a representation of the image data and the filter selection interface, detecting, via the one or more input devices, a first input at a position corresponding to the filter selection interface while a first filter of the series of filters satisfies a selection criterion; In response to detecting the first input, ceasing to display a first subset of representations of filters in the set of filters in the filter selection user interface, the first subset including one or more filters in a first direction from the representation of the first filter and one or more filters in a second direction from the representation of the first filter; maintaining a representation of a second subset of representations of filters in the set of filters, the representation including the representation of at least the first filter; A non-transitory computer-readable storage medium containing instructions.

94. 1. An electronic device comprising: one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: displaying on the display a filter selection interface including a representation of a plurality of filters in the set of filters; While simultaneously displaying on the display a representation of the image data and the filter selection interface, detecting, via the one or more input devices, a first input at a position corresponding to the filter selection interface while a first filter of the series of filters satisfies a selection criterion; In response to detecting the first input, ceasing to display a first subset of representations of filters in the set of filters in the filter selection user interface, the first subset including one or more filters in a first direction from the representation of the first filter and one or more filters in a second direction from the representation of the first filter; maintaining a representation of a second subset of representations of filters in the set of filters, the representation including the representation of at least the first filter; An electronic device containing instructions.

95. 1. An electronic device comprising: one or more input devices; The display and means for displaying on said display a filter selection interface including a representation of a plurality of filters in a series of filters; means for detecting a first input via the one or more input devices at a location corresponding to the filter selection interface where a first filter in the series of filters satisfies a selection criterion while simultaneously displaying a representation of image data and the filter selection interface on the display; In response to detecting the first input, ceasing to display a first subset of representations of filters in the set of filters in the filter selection user interface, the first subset including one or more filters in a first direction from the representation of the first filter and one or more filters in a second direction from the representation of the first filter; means for maintaining a representation of a second subset of representations of filters in the set of filters, the representation including the representation of at least the first filter; Electronic devices including:

96. An electronic device comprising a camera, a sensor, one or more input devices, and a display, displaying on the display a camera viewfinder for capturing media; While displaying the camera viewfinder, pursuant to a determination based on the data from the sensor that the device satisfies the alignment guide display criteria, including a requirement that the relative difference between an orientation of the plane of focus of the camera and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, displaying on the display an alignment guide in the camera viewfinder that changes appearance as the orientation of the plane of focus of the camera changes relative to the predetermined orientation; ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not met; and A method comprising:

97. 97. The method of claim 96, wherein the alignment guide display criteria include a requirement that the relative difference between the orientation of the plane of focus of the camera and the predetermined orientation be maintained within the respective alignment threshold for at least a threshold time for the alignment guide display criteria to be satisfied.

98. 97. The method of claim 96, wherein the alignment guide display criteria include a requirement that the orientation of the device does not change by more than a threshold amount for a threshold time while the relative difference between the orientation of the plane of focus of the camera and the predetermined orientation is maintained within the respective alignment threshold for the alignment guide display criteria to be satisfied.

99. 97. The method of claim 96, wherein the predetermined orientation corresponds to a horizontal orientation.

100. 97. The method of claim 96, wherein the predetermined orientation is a vertical orientation.

101. 101. The method of any one of claims 96 to 100, wherein the alignment guide includes at least two visual indicators.

102. 102. The method of claim 101, wherein at least one of the at least two visual indicators remains stationary as the orientation of the plane of focus of the camera changes relative to the predetermined orientation.

103. 103. The method of claim 101 or 102, wherein at least one of the at least two visual indicators is displayed proximate to the center of the camera viewfinder.

104. 104. The method of any one of claims 101 to 103, wherein the distance between the two visual indicators is dynamically based on the relative difference between the orientation of the plane of focus of the camera and the predetermined orientation.

105. detecting a change in orientation of the plane of focus of the camera from the first orientation to a second orientation based on data from the sensor while displaying the alignment guide and while the orientation of the plane of focus of the camera is in a first orientation; changing a display location of a first visual indicator of the at least two visual indicators in response to detecting the change in orientation of the plane of focus of the camera from the first orientation to the second orientation, wherein the display location of the first visual indicator is changed based on the relative difference between the first orientation and the second orientation; 105. The method of any one of claims 101 to 104, further comprising:

106. further in response to detecting the change in orientation of the plane of focus of the camera from the first orientation to the second orientation; displaying the first visual indicator at the updated display location in accordance with a determination that the relative difference between the second orientation of the plane of focus of the camera and the predetermined orientation is not at a first visual indicator position adjustment threshold; and displaying the first visual indicator at a predetermined display location in accordance with a determination that the relative difference between the second orientation of the plane of focus of the camera and the predetermined orientation is within the first visual indicator position adjustment threshold; 106. The method of claim 105, further comprising:

107. 107. The method of claim 106, wherein displaying the first visual indicator at the predetermined display location comprises displaying a corresponding animation at one or more locations of the visual indicator.

108. detecting, based on data from the sensor, a change in orientation of the plane of focus of the camera from a third orientation to a fourth orientation having a relative difference from the predetermined orientation that is within the first visual indicator position adjustment threshold while the first visual indicator is displayed at the predetermined display location; in response to detecting a change in orientation of the plane of focus of the camera from the third orientation to the fourth orientation; maintaining display of the first visual indicator at the predetermined display location in accordance with a determination that the relative difference between the fourth orientation of the plane of focus of the camera and the predetermined orientation is not outside the second visual indicator position adjustment threshold; and displaying the first visual indicator at a second updated display location based on the relative difference between the orientation of the plane of focus of the camera and the predetermined orientation in accordance with a determination that the relative difference between the fourth orientation of the plane of focus of the camera and the predetermined orientation is outside the second visual indicator position adjustment threshold; 108. The method of claim 106 or 107, further comprising:

109. detecting a change in orientation of the plane of focus of the camera from the fifth orientation to a sixth orientation based on data from the sensor while the orientation of the plane of focus of the camera is at a fifth orientation having a relative difference from the predetermined orientation that is within the respective alignment threshold and while a second visual indicator of the at least two visual indicators is displayed with a first value of a visual characteristic; displaying the second visual indicator having a second value of the visual characteristic different from the first value in response to detecting the change in orientation of the plane of focus of the camera from the fifth orientation to the sixth orientation; and wherein the relative difference between the sixth orientation and the predetermined orientation of the plane of focus of the camera is within the visual indicator position adjustment threshold.

110. the fifth orientation of the plane of focus of the camera has a first relative difference between an orientation of the plane of focus of the camera and a predetermined orientation; the sixth orientation of the plane of focus of the camera has a second relative difference between the orientation of the plane of focus of the camera and a predetermined orientation, the second relative difference being greater than the first relative difference; 110. The method of claim 109, wherein the visual characteristic is display intensity, and the first value is greater than the second value.

111. detecting a change in orientation of the plane of focus of the camera from the seventh orientation to an eighth orientation based on data from the sensor while the orientation of the plane of focus of the camera is at a seventh orientation having a relative difference from the predetermined orientation that is within the respective alignment threshold and while a third visual indicator of the at least two visual indicators is displayed; in response to detecting a change in orientation of the plane of focus of the camera from the seventh orientation to the eighth orientation, maintaining display of the third visual indicator in accordance with a determination that a relative difference between the eighth orientation of the plane of focus of the camera and the predetermined orientation is within the visual indicator position adjustment threshold; and ceasing display of the third visual indicator in response to a determination that the relative difference between the eighth orientation of the plane of focus of the camera and the predetermined orientation is not within the visual indicator position adjustment threshold; and 109. The method of any one of claims 101 to 108, further comprising:

112. 112. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising a camera, a sensor, one or more input devices, and a display, the one or more programs comprising instructions for performing the method of any one of claims 96 to 111.

113. 1. An electronic device comprising: A camera and A sensor, one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 112. An electronic device comprising:

114. 1. An electronic device comprising: A camera and A sensor, one or more input devices; The display and means for carrying out the method of any one of claims 96 to 111; An electronic device comprising:

115. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device including a camera, a sensor, one or more input devices, and a display, the one or more programs comprising: displaying on said display a camera viewfinder for capturing media; While displaying the camera viewfinder, pursuant to a determination based on the data from the sensor that the device satisfies the alignment guide display criteria, including a requirement that a relative difference between an orientation of the plane of focus of the camera and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, displaying on the display an alignment guide in the camera viewfinder, the alignment guide changing in appearance as the orientation of the plane of focus of the camera changes relative to the predetermined orientation; ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not met. A non-transitory computer-readable storage medium containing instructions.

116. 1. An electronic device comprising: A camera and A sensor, one or more input devices; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: displaying on said display a camera viewfinder for capturing media; While displaying the camera viewfinder, pursuant to a determination based on the data from the sensor that the device satisfies the alignment guide display criteria, including a requirement that a relative difference between an orientation of the plane of focus of the camera and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, displaying on the display an alignment guide in the camera viewfinder, the alignment guide changing in appearance as the orientation of the plane of focus of the camera changes relative to the predetermined orientation; ceasing to display the alignment guide in the camera viewfinder in accordance with a determination based on data from the sensor that the alignment guide display criteria are not met. An electronic device containing instructions.

117. 1. An electronic device comprising: A camera and A sensor, one or more input devices; The display and means for displaying on said display a camera viewfinder for capturing media; While displaying the camera viewfinder, pursuant to a determination based on the data from the sensor that the device satisfies the alignment guide display criteria, including a requirement that a relative difference between an orientation of the plane of focus of the camera and a predetermined orientation be within a respective alignment threshold for the alignment guide display criteria to be satisfied, displaying on the display an alignment guide in the camera viewfinder, the alignment guide changing in appearance as the orientation of the plane of focus of the camera changes relative to the predetermined orientation; means for ceasing to display the alignment guide within the camera viewfinder in response to a determination based on data from the sensor that the alignment guide display criteria are not met; An electronic device comprising:

118. An electronic device comprising one or more input devices, one or more cameras, and a display, displaying on said display a representation of image data associated with depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices to select a filter for each of a plurality of lighting effects based on the depth map information; after detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; In response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras according to a determination that the respective lighting effect selected based on the first input is a second lighting effect different from the first lighting effect, and associating the second lighting effect with the representation of the image data based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras, A method comprising:

119. 119. The method of claim 118, wherein the representation of the image data is a live preview of image data captured within the field of view of the one or more cameras displayed in a digital viewfinder.

120. 120. The method of claim 119, wherein the first input is an input received while first criteria are met, the first criteria including a requirement that an object be detected in the field of view within a predetermined distance from the electronic device for the first criteria to be met.

121. In response to detecting the first input, displaying a capture user interface for the first lighting effect, the capture user interface causing a first change in appearance of a portion of the representation of image data when an object within the field of view of the one or more cameras meets the first criterion in accordance with a determination that the corresponding lighting effect is the first lighting effect; displaying a capture user interface for the second lighting effect, the capture user interface causing a second change in appearance of a portion of the representation of the image data when an object within the field of view of the one or more cameras meets the first criterion in accordance with a determination that the corresponding lighting effect is the second lighting effect; 121. The method of any one of claims 118 to 120, comprising preparing to capture the image data using the corresponding filter, the corresponding filter comprising:

122. Displaying the capture user interface for the first lighting effect includes: the representation of the image data; and an alignment guide displayed in a first region within the representation of the image data; 122. The method of claim 121, comprising simultaneously displaying a representation of the subject's face displayed in the representation of the image data, wherein the first criterion comprises a requirement that a representation of the subject's face displayed in the representation of the image data be within the alignment guide in order to satisfy the first criterion.

123. the first criterion includes a requirement that a facial representation of the subject be detected in a first region within the representation of the image data for the first criterion to be met; 123. The method of claim 121 or 122, wherein applying the first change in appearance to the image data comprises changing the appearance of the representation of the image data displayed in a second region within the representation of the image data compared to the appearance of the representation of the image data displayed in a first region within the representation of the image data, the second region being different from the first region.

124. Displaying the capture user interface for the first lighting effect includes:

124. A method according to any one of claims 121 to 123, comprising applying a placeholder filter to the representation of the image data displayed in the digital viewfinder, the placeholder filter being applied based on the first lighting effect and regardless of whether the first criterion is met.

125. Displaying the capture user interface for the first lighting effect while the first change in appearance of the representation of image data is being applied includes: determining that the first criterion is not met; and In response to the determination that the first criterion is not met, ceasing to apply said first change in appearance to said representation of image data; and displaying on the display the representation of the image data without the first change in appearance applied; displaying on the display a graphical indication of the first criterion not being met; 125. The method of claim 124, comprising:

126. applying a placeholder filter to the live preview in response to the first input without applying the first change in appearance to the live preview; responsive to detecting that the first criterion is met, applying the first change in appearance to the live preview while continuing to apply the placeholder filter to the live preview; 122. The method of claim 121, comprising:

127. the first input is an input received while the first criterion is not satisfied, the first criterion including a requirement that an object be detected in the field of view within a predetermined distance from the electronic device for the first criterion to be satisfied; The method comprises: detecting that the first criterion is met after displaying the live preview without applying the first change in appearance to the live preview; applying the first change in appearance to the live preview in response to detecting that the first criterion is met; 122. The method of claim 121, comprising:

128. receiving, after capturing image data corresponding to the field of view of the one or more cameras, a request to display the captured image data in response to the second input; In response to receiving the request to display image data captured in response to the second input, displaying the representation of the image data with the first lighting effect applied according to a determination that the image data was captured while the first lighting effect was selected; displaying the representation of the image data with the second lighting effect applied in accordance with a determination that the image data was captured while the second lighting effect was selected; and 119. The method of claim 118, comprising:

129. displaying, while displaying the representation of image data, a visual indication on the display that the image data includes depth map information.

129. The method of claim 128, further comprising:

130. 130. A method according to any one of claims 118 to 129, wherein the depth map information associated with the image data includes information corresponding to at least three different depth levels.

131. the depth map information associated with the image data includes information specific depth contours of objects in the representation of the image data; 131. A method according to any one of claims 118 to 130, wherein the lighting effects vary the appearance of the representation of the image data based on the position and curvature of the contour of the object.

132. Applying the first lighting effect or the second lighting effect includes:

132. A method according to any one of claims 118 to 131, comprising applying a simulation of one or more point sources of light in space to the representation of the image data displayed in the viewfinder based on the depth map information associated with the image data.

133. 133. The method of any one of claims 118 to 132, further comprising maintaining at least one value of a previously applied visual effect while the first lighting effect is being applied.

134. 134. The method of any one of claims 118 to 133, wherein the previously applied visual effect is a color filter.

135. the second input is an input received while the first lighting effect is being applied to the representation of image data, and applying the second lighting effect comprises:

135. The method of any one of claims 118 to 134, comprising gradually transitioning between applying the first lighting effect and the second lighting effect.

136. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device comprising one or more input devices, one or more cameras, and a display, the one or more programs including instructions for performing the method of any one of claims 118 to 135.

137. 1. An electronic device comprising: one or more input devices; one or more cameras; The display and one or more processors; a memory storing one or more programs configured to be executable by the one or more processors; 136. An electronic device comprising:

138. 1. An electronic device comprising: one or more input devices; one or more cameras; The display and and means for performing the method of any one of claims 118 to 135.

139. 1. A non-transitory computer-readable storage medium storing one or more programs configured to be executable by one or more processors of an electronic device having one or more input devices, one or more cameras, and a display, the one or more programs comprising: displaying on said display a representation of the image data associated with the depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices to select a filter for each of a plurality of lighting effects based on the depth map information; After detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; In response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras according to a determination that the respective lighting effect selected based on the first input is a second lighting effect different from the first lighting effect, and associating the second lighting effect with the representation of the image data based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras, A non-transitory computer-readable storage medium containing instructions.

140. 1. An electronic device comprising: one or more input devices; one or more cameras; The display and one or more processors; a memory storing one or more programs configured to be executed by the one or more processors; an electronic device comprising: displaying on said display a representation of the image data associated with the depth map information; while displaying the representation of the image data on the display; detecting a first input via the one or more input devices to select a filter for each of a plurality of lighting effects based on the depth information; After detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; In response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras according to a determination that the respective lighting effect selected based on the first input is a second lighting effect different from the first lighting effect, and associating the second lighting effect with the representation of the image data based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras, An electronic device containing instructions.

141. 1. An electronic device comprising: one or more input devices; one or more cameras; The display and means for displaying, on said display, a representation of image data associated with depth map information; While displaying the representation of the image data on a display, detecting a first input via the one or more input devices to select a filter for each of a plurality of lighting effects based on the depth information; After detecting the first input, detecting a second input corresponding to a request to capture image data corresponding to a field of view of the one or more cameras; In response to detecting the second input, capturing image data corresponding to the field of view of the one or more cameras and associating the first lighting effect with the representation of image data in accordance with a determination that the respective lighting effect selected based on the first input is a first lighting effect based on the depth map information; capturing image data corresponding to the field of view of the one or more cameras according to a determination that the respective lighting effect selected based on the first input is a second lighting effect different from the first lighting effect, and associating the second lighting effect with the representation of the image data based on the depth map information; means for capturing image data corresponding to the field of view of the one or more cameras, including: An electronic device comprising:

Citation Information

Patent Citations

  • Electronic camera

    JP2002271654A

  • Photographing device

    JP2005128437A

  • Image pickup device, posture adjustment method for image, display control method, and program

    JP2006165941A

  • Imaging device

    JP2009094987A