Optimal brightness mapping for augmented reality devices

By adjusting image brightness based on nonlinear brightness perception and background brightness on augmented reality devices, the problem of poor image appearance in the prior art is solved, and a visual effect that is more in line with human perception is achieved.

CN112562089BActive Publication Date: 2024-12-20APPLE INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202011026382.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-09-11
Filing Date
2020-09-25
Publication Date
2024-12-20
Estimated Expiration
2040-09-25

AI Technical Summary

Technical Problem

Existing augmented reality devices have difficulty considering background physical environments and human perception, resulting in poor image appearance, especially the brightness adjustment is insufficient to meet nonlinear human perception characteristics.

Method used

By identifying the first brightness value corresponding to the image pixel, adjusting the second brightness value of the image pixel based on the nonlinear relationship between the brightness and perception (such as the brightness-brightness curve) and the background brightness of the physical environment to be used on the augmented reality device. Show images that are more consistent with human perception.

Benefits of technology

The appearance of the image on an augmented reality device is achieved closer to the perceived appearance in different contexts, improving the visual effect of the image, especially by taking into account the nonlinear perception of brightness and brightness of humans.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112562089B_ABST
    Figure CN112562089B_ABST
Patent Text Reader

Abstract

The present disclosure relates to optimal brightness mapping for augmented reality devices. Various implementations disclosed herein adjust brightness values ​​of an image to improve the appearance of the image on an augmented reality device. In some implementations, the brightness values ​​of an image are adjusted so that the image can be displayed on an augmented reality device (e.g., with background brightness) so that the image will be more similar to how the image would be perceived otherwise (e.g., on a device without background brightness). In some implementations, the image is adjusted based on an estimate of human perception of brightness, which is non-linear.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of U.S. Provisional Application Serial No. 62 / 905,509, filed September 25, 2019, which is incorporated herein by reference in its entirety. Technical Field

[0003] The present disclosure relates generally to displaying content on electronic devices, and in particular to systems, methods, and devices for adjusting images displayed on augmented reality (AR) devices to account for background physical environment and human perception. Background Art

[0004] Existing systems for delivering content on augmented reality devices may not adequately account for the background physical environment or human perception. Summary of the invention

[0005] A system for providing content on an electronic device may be configured to present an augmented reality (AR) environment. For example, an electronic system for presenting a CGR environment may have a display that enables a person to view a physical environment. The system may be configured to present an image on a display so that people use the system to perceive the content of the image superimposed on the physical environment. The image may be displayed on a background that includes light from the physical environment. The background may change the way people perceive the content of the image so that the content may be perceived as different from the content perceived on a device that does not have such a background. For example, the background brightness of the physical environment may be combined with the brightness of the displayed image to change the appearance of the displayed content. In addition, simply offsetting the brightness value of the content to take into account the background may not be able to fully adjust the appearance because doing so may not take into account human perception. For example, human perception of brightness may not be linearly related to changes in brightness.

[0006] Implementations disclosed herein adjust brightness values ​​of an image to improve the appearance of the image on an augmented reality device. In some implementations, the brightness values ​​of an image are adjusted so that the image can be displayed on an augmented reality device (e.g., with background brightness) so that the image will be more similar to how the image would be perceived otherwise (e.g., on a device without background brightness). In some implementations, the image is adjusted based on an estimate of nonlinear human perception of brightness.

[0007] Some specific implementations disclosed herein provide a method performed at an electronic device having a processor. The method involves identifying a first brightness value corresponding to a pixel of an image. The method determines a second brightness value corresponding to a pixel of the image that is adjusted to be displayed on an augmented reality device. The second brightness value is determined based on the first brightness value, a nonlinear relationship between brightness and perception (e.g., a brightness-brightness curve), and a third brightness associated with a physical environment (e.g., an estimated value of background brightness). The method uses the second brightness value to display an image on an augmented reality device. For example, an augmented reality device may be configured to provide a view including an image and a physical environment, for example, an image may be displayed in front of a view of the physical environment. Adjustment of the brightness value may provide an image that is perceived as being more similar to an expected appearance.

[0008] In some implementations, a human perception value is used to adjust the brightness value. For example, this may involve determining a first perception value (e.g., brightness value) based on a first brightness value and a nonlinear relationship between brightness and perception (e.g., based on a brightness-brightness curve). A second perception value (e.g., adjusted brightness value) corresponding to a pixel of an image may be determined by adjusting the first perception value based on a feature of the physical environment. For example, the range of brightness values ​​may be adjusted, for example, by increasing each of the first perception values ​​by adding a value corresponding to the background brightness of the physical environment, and thus all first perception values ​​are adjusted to account for the background brightness of the physical environment. The perception value may be adjusted linearly, such as by adding the same amount to each perception value. The second (e.g., adjusted) perception value may be used to determine a second (e.g., adjusted) brightness value based on the nonlinear relationship between brightness and perception. Based on how humans perceive brightness differences compared to brightness values ​​adjusted in other ways, the resulting brightness value may more accurately represent the brightness differences intended for the content.

[0009] According to some specific implementations, a device includes one or more processors, non-volatile memory, and one or more programs; the one or more programs are stored in the non-volatile memory and are configured to be executed by one or more processors, and the one or more programs include instructions for performing or causing the execution of any of the methods described herein. According to some specific implementations, a non-volatile computer-readable storage medium stores instructions that, when executed by one or more processors of the device, cause the device to perform or cause the execution of any of the methods described herein. According to some specific implementations, a device includes: one or more processors, non-volatile memory, and means for performing or causing the execution of any of the methods described herein. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] So that the present disclosure may be understood by those of ordinary skill in the art, a more detailed description may be obtained with reference to aspects of some exemplary implementations, some of which are illustrated in the accompanying drawings.

[0011] Figure 1 is a block diagram of an exemplary operating environment according to some implementations.

[0012] Figure 2 is a block diagram of an example controller according to some implementations.

[0013] Figure 3 is a block diagram of an exemplary device according to some implementations.

[0014] Figure 4 is a flowchart representation of an exemplary method for displaying an image using brightness values ​​adjusted for display on an augmented reality device.

[0015] Figure 5 is a flowchart representation of an exemplary method of adjusting brightness values ​​of an image for display on an augmented reality device.

[0016] Figure 6 is a graph showing an exemplary relationship between brightness and lightness.

[0017] Figure 7 is a block diagram illustrating an augmented reality device that provides a view of a computer generated reality (CGR) environment.

[0018] Figure 8 It shows the CGR environment Figure 8 A block diagram of another view of the device.

[0019] Fig. 9 is a block diagram illustrating the effect of background brightness on image perception.

[0020] Fig.10 is a graph showing a brightness map with increasing background brightness.

[0021] As is common practice, the various features shown in the drawings may not be drawn to scale. Therefore, the sizes of the various features may be arbitrarily expanded or reduced for clarity. In addition, some drawings may not depict all components of a given system, method, or device. Finally, throughout the specification and drawings, similar reference numerals may be used to represent similar features. DETAILED DESCRIPTION

[0022] Many details are described in order to provide a thorough understanding of the example implementations shown in the accompanying drawings. However, the accompanying drawings only illustrate some example aspects of the present disclosure and should not be considered limiting. One of ordinary skill in the art will appreciate that other effective aspects and / or variations do not include all of the specific details described herein. In addition, well-known systems, methods, components, devices, and circuits are not described in detail in order to avoid obscuring more relevant aspects of the exemplary implementations described herein.

[0023] Figure 1 1 is a block diagram of an exemplary operating environment 100 according to some implementations. Although relevant features are shown, one of ordinary skill in the art will recognize from this disclosure that various other features are not shown for the sake of brevity and so as not to obscure more relevant aspects of the exemplary implementations disclosed herein. To this end, as a non-limiting example, the operating environment 100 includes a controller 110 and a device 120.

[0024] In some implementations, the controller 110 is configured to manage and coordinate the user experience. In some implementations, the controller 110 includes a suitable combination of software, firmware, and / or hardware. Figure 2 Controller 110 is described in more detail. In some implementations, controller 110 is a computing device that is located locally or remotely relative to physical environment 105. In one example, controller 110 is a local server located within physical environment 105. In another example, controller 110 is a remote server (e.g., a cloud server, a central server, etc.) located outside of physical environment 105. In some implementations, controller 110 is communicatively coupled to device 120 via one or more wired or wireless communication channels 144 (e.g., Bluetooth, IEEE 802.11x, IEEE 802.16x, IEEE 802.3x, etc.).

[0025] In some implementations, the device 120 is configured to present an environment to a user. In some implementations, the device 120 includes a suitable combination of software, firmware, and / or hardware. Figure 3 Device 120 is described in further detail. In some implementations, the functionality of controller 110 is provided by and / or combined with device 120.

[0026] According to some specific implementations, when the user is located in the physical environment 105, the device 120 presents a computer generated reality (CGR) environment to the user. A CGR environment refers to a fully or partially simulated environment that people sense and / or interact with via an electronic system. In CGR, a subset of a person's physical movements, or a representation thereof, is tracked, and in response, one or more features of one or more virtual objects simulated in the CGR environment are adjusted in a manner that complies with at least one physical law. For example, a CGR system can detect a person's head rotation, and in response, adjust the graphical content and sound field presented to the person in a manner similar to the way such views and sounds change in a physical environment. In some cases (e.g., for accessibility reasons), the adjustment of features of virtual objects in the CGR environment can be performed in response to a representation of physical movement (e.g., a voice command).

[0027] A person may sense and / or interact with a CGR object using any of their senses, including vision, hearing, touch, taste, and smell. For example, a person may sense and / or interact with an audio object that creates a 3D or spatial audio environment that provides the perception of a point audio source in 3D space. As another example, an audio object may enable audio transparency that selectively introduces ambient sounds from the physical environment with or without computer-generated audio. In some CGR environments, a person may sense and / or interact only with an audio object.

[0028] Examples of CGR include virtual reality and mixed reality. A virtual reality (VR) environment refers to a simulated environment designed to be based entirely on computer-generated sensory input to one or more senses. A VR environment includes virtual objects that a person can sense and / or interact with. For example, trees, buildings, and computer-generated images representing avatars of people are examples of virtual objects. A person can sense and / or interact with virtual objects in a VR environment through a simulation of the person's presence within the computer-generated environment, and / or through a simulation of a subset of the person's physical movements within the computer-generated environment.

[0029] In contrast to VR environments, which are designed to be based entirely on computer-generated sensory input, a mixed reality (MR) environment refers to a simulated environment designed to include sensory input from the physical environment, or representations thereof, in addition to computer-generated sensory input (e.g., virtual objects). On the virtuality continuum, a mixed reality environment is anything between a fully physical environment at one end and a virtual reality environment at the other end, but not including both ends.

[0030] In some MR environments, computer-generated sensory input can respond to changes in sensory input from the physical environment. In addition, some electronic systems used to render the MR environment can track position and / or orientation relative to the physical environment to enable virtual objects to interact with real objects (i.e., physical items from the physical environment or representations thereof). For example, the system can cause motion so that virtual trees appear stationary relative to the physical ground.

[0031] Examples of mixed reality include augmented reality and augmented virtuality. An augmented reality (AR) environment refers to a simulated environment in which one or more virtual objects are superimposed on a physical environment or a representation thereof. For example, an electronic system for presenting an AR environment may have a transparent or translucent display through which a person can directly view the physical environment. The system may be configured to present virtual objects on a transparent or translucent display so that a person uses the system to perceive virtual objects superimposed on a physical environment. Alternatively, the system may have an opaque display and one or more imaging sensors that capture images or videos of a physical environment that are representations of the physical environment. The system combines the image or video with the virtual object and presents the composition on an opaque display. People use the system to indirectly view the physical environment via an image or video of the physical environment and perceive virtual objects superimposed on the physical environment. As used herein, a video of a physical environment displayed on an opaque display is referred to as a "transparent video," meaning that the system uses one or more image sensors to capture images of the physical environment and uses those images when presenting an AR environment on an opaque display. Further alternatively, the system may have a projection system that projects virtual objects into a physical environment, for example as a hologram or on a physical surface, so that a person using the system perceives the virtual objects superimposed on the physical environment.

[0032] An augmented reality environment also refers to a simulated environment in which a representation of a physical environment is transformed by computer-generated sensory information. For example, in providing a pass-through video, the system may transform one or more sensor images to apply a selected perspective (e.g., a viewpoint) that is different from the perspective captured by the imaging sensor. For another example, a representation of a physical environment may be transformed by graphically modifying (e.g., enlarging) portions thereof so that the modified portions may be representative but not true versions of the original captured images. For another example, a representation of a physical environment may be transformed by graphically eliminating portions thereof or blurring portions thereof.

[0033] An augmented virtual (AV) environment is a simulated environment in which a virtual or computer-generated environment combines one or more sensory inputs from a physical environment. The sensory input may be a representation of one or more characteristics of the physical environment. For example, an AV park may have virtual trees and virtual buildings, but the faces of people are realistically reproduced from images taken of physical people. For another example, a virtual object may take the shape or color of a physical object imaged by one or more imaging sensors. For another example, a virtual object may take a shadow that conforms to the position of the sun in the physical environment.

[0034] There are many different types of electronic systems that enable people to sense and / or interact with various CGR environments. Examples include head-mounted devices (HMDs), projection-based systems, head-up displays (HUDs), vehicle windshields integrated with display capabilities, windows integrated with display capabilities, displays formed as lenses designed to be placed on people's eyes (e.g., similar to contact lenses), headphones / earpieces, speaker arrays, input systems (e.g., wearable or handheld controllers with or without tactile feedback), smart phones, tablets, and desktop / laptop computers. The HMD may have one or more speakers and one or more displays. The HMD may incorporate one or more imaging sensors to capture images or videos of the physical environment, and / or engage one or more microphones to capture audio of the physical environment. The HMD may have one or more transparent or translucent displays. The transparent or translucent display may have a medium through which light representing the image is directed to the eyes of the person. The display may utilize digital light projection, OLED, LED, uLED, liquid crystal on silicon, laser scanning light sources, or any combination of these technologies. The medium may be an optical waveguide, a hologram medium, an optical combiner, an optical reflector, or any combination thereof. In one implementation, a transparent or translucent display may be configured to selectively become opaque. Projection-based systems may employ retinal projection techniques that project graphic images onto a person's retina. Projection systems may also be configured to project virtual objects into a physical environment, such as a hologram or onto a physical surface.

[0035] In some implementations, the user wears device 120 on his / her head. Device 120 may include one or more displays provided for displaying content. For example, device 120 may encompass the user's field of view. In some implementations, device 120 is a handheld electronic device (e.g., a smart phone or tablet) configured to present content to the user. In some implementations, device 120 is replaced with a chamber, housing, or chamber configured to present content, wherein the user does not wear or hold the device 120.

[0036] Figure 2is a block diagram of an example of a controller 110 according to some implementations. While some specific features are shown, those skilled in the art will recognize from this disclosure that various other features are not shown for the sake of brevity and so as not to obscure more relevant aspects of the implementations disclosed herein. To this end, as a non-limiting example, in some specific implementations, the controller 110 includes one or more processing units 202 (e.g., a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a graphics processing unit (GPU), a central processing unit (CPU), a processing core, etc.), one or more input / output (I / O) devices 206, one or more communication interfaces 208 (e.g., a universal serial bus (USB), FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Global Positioning System (GPS), infrared (IR), Bluetooth, ZIGBEE and / or similar type interfaces), one or more programming (e.g., I / O) interfaces 210, a memory 220, and one or more communication buses 204 for interconnecting these components and various other components.

[0037] In some implementations, the one or more communication buses 204 include circuits for interconnecting system components and controlling communications between system components. In some implementations, the one or more I / O devices 206 include at least one of a keyboard, a mouse, a touch pad, a joystick, one or more microphones, one or more speakers, one or more image sensors, one or more displays, and the like.

[0038] The memory 220 includes a high-speed random access memory, such as a dynamic random access memory (DRAM), a static random access memory (SRAM), a double data rate random access memory (DDR RAM), or other random access solid-state memory devices. In some specific implementations, the memory 220 includes a 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. The memory 220 optionally includes one or more storage devices located away from the one or more processing units 202. The memory 220 includes a non-transitory computer-readable storage medium. In some specific implementations, the memory 220 or the non-transitory computer-readable storage medium of the memory 220 stores the following programs, modules, and data structures or a subset thereof, which includes an optional operating system 230 and a presentation module 240.

[0039] Operating system 230 includes processes for handling various basic system services and for performing hardware-related tasks.

[0040] In some implementations, the presentation module 240 is configured to manage and coordinate one or more experiences of one or more users (e.g., a single experience of one or more users, or multiple experiences of corresponding groups of one or more users). To this end, in various implementations, the presentation module 240 includes a content unit 242, a background detector 244, and a brightness adjuster 246.

[0041] In some implementations, the content unit 242 is configured to provide images or other image-based content for presentation. In some implementations, a 3D model of a real or virtual environment is maintained and used to render the content. The content may be generated and stored locally or received from an external source. To this end, in various implementations, the content unit 242 includes instructions and / or logic components for instructions, a configured neural network, and heuristics and metadata for the heuristics.

[0042] In some implementations, the background detector 244 is configured to detect one or more characteristics of the physical environment. For example, the background detector 244 may receive data from sensors in the physical environment and use the data to determine the background brightness level in the physical environment. To this end, in various implementations, the background detector 244 includes instructions and / or logic for instructions and heuristics and metadata for the heuristics.

[0043] In some implementations, the brightness adjuster 246 is configured to adjust the brightness value of one or more pixels of the image or image content provided by the content unit 242. For example, the brightness adjuster can perform methods according to various implementations disclosed herein to determine a brightness adjustment that takes into account the physical environment (e.g., the background brightness of the augmented reality device determined by the background detector 244) and / or human perception (e.g., taking into account the brightness-luminance curve). To this end, in various implementations, the brightness adjuster 246 includes instructions and / or logic components for instructions and heuristics and metadata for the heuristics.

[0044] also, Figure 2 It is more of a functional description of various features present in a particular implementation, as opposed to a schematic diagram of the implementations described herein. As one of ordinary skill in the art will recognize, items shown separately may be combined, and some items may be separated. For example, Figure 2 Some functional modules shown separately in the figure may be implemented in a single module, and the various functions of a single functional block may be implemented by one or more functional blocks in various specific implementations. The actual number of modules and the division of specific functions and how the features are distributed among them will vary depending on the specific implementation, and in some specific implementations, it depends in part on the specific combination of hardware, software and / or firmware selected for a particular embodiment.

[0045] Figure 3 is a block diagram of an example of a device 120 according to some implementations. While some specific features are shown, those skilled in the art will appreciate from this disclosure that various other features are not shown for the sake of brevity and so as not to obscure more relevant aspects of the implementations disclosed herein. To this end, as a non-limiting example, in some embodiments, the device 120 includes one or more processing units 302 (e.g., microprocessors, ASICs, FPGAs, GPUs, CPUs, processing cores, etc.), one or more input / output (I / O) devices and sensors 306, one or more communication interfaces 308 (e.g., USB, FIREWIRE, THUNDERBOLT, IEEE 802.3x, IEEE 802.11x, IEEE 802.16x, GSM, CDMA, TDMA, GPS, IR, BLUETOOTH, ZIGBEE, SPI, I2C, or similar types of interfaces), one or more programming (e.g., I / O) interfaces 310, one or more displays 312, one or more internally or externally facing image sensors 314, a memory 320, and one or more communication buses 304 for interconnecting these and various other components.

[0046] In some implementations, the one or more communication buses 304 include circuits for interconnecting and controlling communications between system components. In some implementations, the one or more I / O devices and sensors 306 include at least one of the following: an inertial measurement unit (IMU), an accelerometer, a magnetometer, a gyroscope, a thermometer, one or more physiological sensors (e.g., a blood pressure monitor, a heart rate monitor, a blood oxygen sensor, a blood glucose sensor, etc.), one or more microphones, one or more speakers, a haptic engine, and / or one or more depth sensors (e.g., structured light, time of flight, etc.), etc.

[0047] In some implementations, one or more displays 312 are configured to present an experience to a user. In some implementations, one or more displays 312 correspond to holographic, digital light processing (DLP), liquid crystal display (LCD), liquid crystal on silicon (LCoS), organic light emitting field effect transistor (OLET), organic light emitting diode (OLED), surface conduction electron emitter display (SED), field emission display (FED), quantum dot light emitting diode (QD-LED), microelectromechanical system (MEMS), and / or similar display types. In some implementations, one or more displays 312 correspond to diffractive, reflective, polarized, holographic, etc. waveguide displays. For example, device 120 includes a single display. As another example, device 120 includes a display for each eye of the user.

[0048] In some implementations, the one or more image sensor systems 314 are configured to acquire image data corresponding to at least a portion of a user's face including the user's eyes. For example, the one or more image sensor systems 314 include one or more RGB cameras (e.g., with complementary metal oxide semiconductor (CMOS) image sensors or charge coupled device (CCD) image sensors), monochrome cameras, IR cameras, event-based cameras, etc. In various implementations, the one or more image sensor systems 314 also include an illumination source that emits light on the portion of the user's face, such as a flash or strobe light source.

[0049] The memory 320 includes a high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid-state memory devices. In some specific implementations, the memory 320 includes a 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. The memory 320 optionally includes one or more storage devices located away from the one or more processing units 302. The memory 320 includes a non-transitory computer-readable storage medium. In some specific implementations, the memory 320 or the non-transitory computer-readable storage medium of the memory 320 stores the following programs, modules and data structures or their subsets, including an optional operating system 330 and a rendering module 340.

[0050] Operating system 330 includes processes for handling various basic system services and for performing hardware-related tasks.

[0051] In some implementations, the presentation module 340 is configured to manage and coordinate one or more experiences of one or more users (e.g., a single experience of one or more users, or multiple experiences of corresponding groups of one or more users). To this end, in various implementations, the presentation module 340 includes a content unit 342, a background detector 344, and a brightness adjuster 346.

[0052] In some implementations, the content unit 342 is configured to provide images or other image-based content for presentation. In some implementations, a 3D model of a real or virtual environment is maintained and used to render the content. The content may be generated and stored locally or received from an external source. To this end, in various implementations, the content unit 342 includes instructions and / or logic for instructions, a configured neural network, and heuristics and metadata for the heuristics.

[0053] In some implementations, the background detector 344 is configured to detect one or more characteristics of the physical environment. For example, the background detector 344 may receive data from sensors in the physical environment and use the data to determine the background brightness level in the physical environment. To this end, in various implementations, the background detector 344 includes instructions and / or logic for instructions and heuristics and metadata for the heuristics.

[0054] In some implementations, the brightness adjuster 346 is configured to adjust the brightness value of one or more pixels of the image or image content provided by the content unit 342. For example, the brightness adjuster can perform methods according to various implementations disclosed herein to determine a brightness adjustment that takes into account the physical environment (e.g., the background brightness of the augmented reality device determined by the background detector 344) and / or human perception (e.g., taking into account the brightness-luminance curve). To this end, in various implementations, the brightness adjuster 346 includes instructions and / or logic components for instructions and heuristics and metadata for the heuristics.

[0055] Although these elements are shown as residing on a single device (e.g., device 120), it should be understood that in other implementations, any combination of the elements may be located in separate computing devices. Figure 3 It is more of a functional description of various features present in a particular implementation, as opposed to a schematic diagram of the implementations described herein. As one of ordinary skill in the art will recognize, items shown separately may be combined, and some items may be separated. For example, Figure 3 Some functional modules shown separately in the figure may be implemented in a single module, and the various functions of a single functional block may be implemented by one or more functional blocks in various specific implementations. The actual number of modules and the division of specific functions and how the features are distributed among them will vary depending on the specific implementation, and in some specific implementations, it depends in part on the specific combination of hardware, software and / or firmware selected for a particular embodiment.

[0056] Exemplary method of displaying an image

[0057] Implementations disclosed herein adjust brightness values ​​of an image to improve the appearance of the image on an augmented reality device. In one example, the augmented reality device is an optical see-through device. In some implementations, the brightness values ​​of an image are adjusted so that the image can be displayed on a device (e.g., with background brightness) so that the image will be more similar to how the image would otherwise be perceived (e.g., on a device with little or no background brightness). In some implementations, the image is adjusted based on an estimate of human perception of brightness, which is nonlinear.

[0058] Figure 44 is a flowchart representation of an exemplary method 400 for displaying an image using brightness values ​​adjusted for display on an augmented reality device. In some implementations, the method 400 is performed by a device (e.g., Figure 1 and Figure 2 The method 400 may be performed on the augmented reality device itself (e.g., Figure 1 and Figure 3 The method 400 is performed on a device 120 of the present invention. The device may be a head mounted device (HMD) and may be an optical see-through device. In some implementations, the method 400 is performed by a processing logic component (including hardware, firmware, software, or a combination thereof). In some embodiments, the method 400 is performed by a processor executing code stored in a non-transitory computer readable medium (e.g., a memory).

[0059] At block 402, method 400 identifies a first brightness value corresponding to a pixel of an image. In some implementations, each pixel of the image has a defined brightness according to a color scheme used to define the image. In other implementations, the brightness of each pixel is determined by an interpreted color value that defines the appearance of each pixel according to the color scheme. In some implementations, the image includes a view of virtual content to be displayed on an augmented reality device in front of a physical environment. The image may include content having an expected appearance that exhibits zero background brightness, for example, the first brightness value may be a pixel brightness value of an image having an appearance that was originally created for or otherwise adapted for display on a different device that does not have background brightness.

[0060] At block 404, method 400 determines a second brightness value corresponding to a pixel of an image adjusted for display on an augmented reality device based on a nonlinear relationship between brightness and perception (e.g., a brightness-luminance curve) and a third brightness associated with the physical environment (e.g., background brightness). The first brightness value may be a pixel-specific brightness value of an image intended to be displayed on a device without background brightness. The nonlinear relationship may correspond to a nonlinear brightness-luminance curve.

[0061] Figure 5 is a flowchart representation of an exemplary method 500 for adjusting the brightness value of an image for display on an augmented reality device. At block 502, the method 500 determines a first perceptual value (e.g., a brightness value) based on a first brightness value and a non-linear relationship between brightness and perception (e.g., based on a brightness-brightness curve). For example, this may involve determining a perceptual value corresponding to each brightness value of each pixel of the image according to a brightness-brightness curve that defines such a relationship. The brightness-brightness curve may have been determined based on a scientific assessment of a population and / or a specific user involved in an experience.

[0062] At block 504, method 500 generates a second perceived value (e.g., an adjusted brightness value) corresponding to a pixel of the image by adjusting the first perceived value based on a characteristic of the physical environment. For example, this may involve adjusting a range of brightness values ​​to account for background brightness of the physical environment. In some implementations, the perceived value is a brightness value corresponding to a difference in perceived light intensity contrast. The second perceived value may be generated by adjusting the first perceived value to account for background brightness of the physical environment. The second perceived value is generated by increasing each of the first perceived values ​​by adding a value corresponding to the background brightness of the physical environment.

[0063] At block 506, method 500 determines a second brightness value based on the second perceived value and the nonlinear relationship between brightness and perception. For example, this may involve determining a brightness value corresponding to each second perceived value for each pixel of the image according to a brightness-luminance curve that defines such a relationship.

[0064] The second brightness value may be further adjusted (eg, reduced) to account for background brightness of the physical environment.

[0065] return Figure 4 After determining the second brightness value, at block 406, method 400 uses the second brightness value to display the image on the augmented reality device. For example, the device may be configured to provide a view including the image and the physical environment, such as the image being displayed in front of an optical see-through view of the physical environment. The image may be displayed in front of the view of the physical environment on the device. Some or all pixels of the image may be presented on the optical see-through portion of the display so that the brightness of each pixel seen by the viewer is a combination of the display brightness of the pixel and the brightness of the background behind the pixel seen through the pixel.

[0066] Exemplary Techniques Considering Human Perception

[0067] In some computer generated realities (CGR), the additional nature (e.g., augmentation) of displayed content may present significant challenges. Little or no background physical environment in front of which the displayed content is displayed may be removed, and thus the brightness that interferes with the perception of the content displayed thereon may be increased. The lowest intensity color in the displayed content may be the color of the wall of other objects in front of which the displayed content is displayed. Thus, a black spot may not be a color of zero intensity or any other very low intensity color as in the case of a non-perspective display, but rather may be a potentially very high intensity background color. Specific implementations disclosed herein address this and other issues by optimizing or otherwise adjusting the displayed content using the physical environment and human perception as a guide.

[0068] Some embodiments disclosed herein perform brightness mapping that compensates for human perception shifts that occur due to the additive properties of some displays. In some embodiments, this is done using a grayscale image of the background brightness without any color contribution and physical surroundings. To sense the background brightness, a camera or other sensor can be used to record the background and set parameters for brightness mapping.

[0069] Perceptually uniform color space

[0070] Many perceptually uniform color spaces (UCS) are available. For example, a commonly used color space is the CIE L*a*b* (abbreviated as Lab) color space. Other perceptual color spaces include, but are not limited to, CIE CAM02 UCS, CIE CAM16 UCS, IPT, IctCp, UCS, RLab, LLab, and Hunt models. The goal of perceptually uniform color spaces may be to linearize human perception so that distances in those spaces correspond to perceived color differences. In order to avoid redefining the Lab color space, several modified distance metrics have been developed to mitigate the shortcomings of the original Lab space that effectively defines a modified Lab UCS space. In addition, J z a z b z It is a proposed modified UCS that builds on the previous properties of other UCSs (CIE CAM16 UCS and ICtCp). z a z b z Explicitly models high dynamic range and wide color gamut. Compared to many other perceptual color spaces, J z a z b z Relative to the absolute brightness value (cd / m 2 ). The UCS color space divides the components into a lightness (or related measure) axis and two chromaticity (or related measure) axes. The chromaticity axes are usually defined along the yellow-blue and red-green components.

[0071] In the following example, J z a z b z Color Spaces. It should be understood that alternative implementations are possible using the techniques disclosed herein using existing and future color spaces.

[0072] Luminance and brightness in UCS color space

[0073] As used herein, "brightness" refers to a measure of perceived color intensity. Human perception of brightness can be nonlinear, e.g., roughly following a square root form. At low intensities, very small differences in brightness can be perceived, and for larger brightness values, the ability to distinguish brightness levels can diminish, e.g., it may be easier for humans to distinguish between brightness levels 1 and 2 than between brightness levels 101 and 102.

[0074] Figure 6 is a graph showing an exemplary relationship between brightness and lightness. Specifically, Figure 6 Shown in J z a z b z The luminance-brightness mapping curve 600 is defined in the color space. Here, the mapping of the luminance-brightness mapping curve 600 is defined as J(L), where J is the value of J z a z b z The color space is defined between 0 and 1 ( Figure 6 0.6) and L is a value between 0 and 10,000 ( Figure 6 The reciprocal L(J) = (J(L)) -1 are defined separately.

[0075] Luminance Mapping in Gamut Mapping

[0076] As used herein, the phrase "color gamut" is used to refer to the colors that a given device is capable of producing. Since human perception can be trichromatic, a color gamut can be defined as a volume in a three-dimensional color space. Due to differences between different color spaces, the form of a color gamut in a particular space can be complex.

[0077] Gamut mapping is the process of mapping the gamut of one device to the gamut of another device to be able to reproduce the content of the device on the other device. The luminance range of the source gamut can be linearly mapped to the luminance range of the target gamut. This has the following consequences: relative luminance differences do not change perceptually, only the range as a whole changes, and luminance differences increase or decrease isotropically across the range. This can be calculated as:

[0078]

[0079] Among them J t is the target brightness, J s is the source brightness, and min / max are the corresponding minimum and maximum values ​​of the brightness range of the source color gamut and the target color gamut. This operation can be marked as M(J s ).

[0080] Example display of CGR environment on the device

[0081] Figure 7 and Figure 8 A device providing a view of a computer generated reality (CGR) environment is shown. In this example, a user 715 uses a device 120 to view the CGR environment. The CGR environment includes a background, which is captured, for example, based on a camera on the device 120, including an image of an object 710 and other background objects. An image 810 is displayed in front of a see-through view of the background on the device 120. Due to the background brightness of the physical environment, the image may not be perceived as having its intended appearance unless adjusted according to the techniques disclosed herein.

[0082] Brightness Mapping

[0083] For some devices, such as Figure 1 , Figure 3 , Figure 7 and Figure 8 The device 120 may define a reference / source display and the corresponding color gamut and luminance and associated brightness range by assuming that the image content is displayed on a pure black background. This may correspond to a standard display and may have a defined maximum brightness L s,max and zero value black dots.

[0084] Fig. 9 is a block diagram illustrating the effect of background brightness on perception.

[0085] In this example, this portion of curve 910 corresponds to a reference luminance and brightness range for displaying content on a black background. Content 920 shows the perceived appearance of an image on a black background. 0 to 500 cd / m 2 The exemplary brightness ranges of are for exemplary purposes but may vary depending on the specific implementation.

[0086] This portion of curve 930 corresponds to a background brightness of 600 cd / m 2 content on a background of 600 to 1100 cd / m 2 940 shows the perceived appearance of the image against the background of the physical environment.

[0087] A reference display (e.g., content 920) assuming a pure black background definition may be used to define source values ​​for the variables to be used in the above formulas. In some implementations, the non-black background luminance L b The enhanced content or other display content is defined as a target color gamut with a corresponding luminance / brightness range. Since the luminance range (as opposed to the brightness range) is additive, J t,min = J(L b) is determined by the background brightness L b is limited, and the maximum value is limited to J t,max = J(L b +L s,max )). Fig. 9 An exemplary L b =600cd / m 2 The range of enhanced content or other displayed content on a non-black background.

[0088] Although for a given device, the maximum brightness L s,max It may not change, but the background brightness L b Can change rapidly and constantly, and is therefore a variable input in this technology.

[0089] Brightness Mapping Algorithm

[0090] In some implementations, the brightness mapping algorithm uses a brightness-luminance relationship (e.g., the J equation discussed above) to adjust the brightness value. In some implementations, the following brightness mapping algorithm can be used: (1) calculate pixel brightness; (2) convert the brightness value to a brightness value using a brightness-luminance curve; (3) map the brightness value to a target range; (4) convert the brightness value back to a brightness value; and (5) further adjust the brightness value to remove added background brightness.

[0091] In step 1, in order to reproduce the brightness difference of a given image on a reference / source display with a black background, the algorithm first calculates the brightness produced by each pixel. This can be a device-dependent operation, which may depend on the maximum brightness and transfer characteristics of the device's display. In some specific implementations, the device display characteristics follow a standard color space definition. In such embodiments, the operation may be to linearize a given value to reach the source brightness L by applying a transfer function (e.g., a gamma curve) of the corresponding color space. s In some implementations, the device display characteristics follow the sRGB color space definition. In such implementations, the operation may be to linearize the given value by exponentiating it with 2.2 and multiplying the result by the maximum brightness of the display to obtain the source brightness L s .

[0092] In step 2, the algorithm uses the brightness-luminance curve J(L) to convert the brightness value to its corresponding brightness value J s .

[0093] In step 3, the algorithm converts the brightness value J into s Mapped to the background brightness L b Defined target rangeJ t,min To J t,max In order to determine the range of J t =M(Js )value.

[0094]

[0095] In step 4, to obtain the mapping value, the algorithm uses L(J t ) t The value is converted back to brightness L t .

[0096] In step 5, the algorithm subtracts L b to prepare the values ​​for transformation back into the native space of the display. In the case of a display conforming to a standard color space, this may involve dividing the maximum luminance and inverting the transfer function of the corresponding color space. For example, for a display with sRGB characteristics, this may involve dividing by the maximum display luminance and raising it to the power of 1 / 2.2.

[0097] Direct Luminance Mapping

[0098] The exemplary algorithm described above includes shifting the brightness and the z a z b z Color space conversion. In some implementations, the brightness mapping can be pre-computed (e.g., before displaying the image), thereby avoiding explicit color space conversion. Mapping content to brightness can be device-dependent and may need to be done for each device. In some implementations, it is assumed that the display is driven for brightness, and the reference / source brightness is mapped to the target brightness independent of the display characteristics.

[0099] Lt=L(M(J(L s )))-L b

[0100] In the case of a fixed display brightness, the only variable parameter may be the background brightness L b . Any given / potential background brightness L can be pre-calculated b The above equation shows that the source brightness L s With its target brightness L t Note that the minimum and maximum values ​​of M(J) depend on L b .

[0101] Fig.10 is shown as the background brightness L b Graph 1000 of an increased brightness map. Line 1010 shows L b = 0. The mapping resembles an exponentially increasing γ curve. This may be because human perception can become more linear with higher background brightness. In addition, as human perception becomes linear, the mapping converges to the limit curve, which shows that at high background brightness L bThe changes are small.

[0102] Sensor input from camera

[0103] To properly use the model with a device's display, implementations disclosed herein can estimate the background brightness as perceived by the device's user using various techniques. In some implementations, this is accomplished by mounting a camera on or in an optical see-through device that captures images of the user's field of view. The camera can be calibrated, for example, using its spectral response function and exposure time to deliver images in cd / m 2 The brightness value in units of L b In some implementations, only brightness is needed, so the camera can be a grayscale camera.

[0104] Numerous specific details are set forth herein to provide a comprehensive understanding of the claimed subject matter. However, those skilled in the art will appreciate that the claimed subject matter may be practiced without these specific details. In other instances, methods, devices, or systems known to those of ordinary skill are not described in detail so as not to obscure the claimed subject matter.

[0105] Unless otherwise specifically noted, it should be understood that throughout the specification, discussions utilizing terms such as "process," "compute," "calculate," "determine," and "identify" refer to the actions or processes of a computing device, such as one or more computers or similar electronic computing devices, that manipulate or transform data represented as physical electronic or magnetic quantities within a memory, register, or other information storage device, transmission device, or display device of a computing platform.

[0106] The one or more systems discussed herein are not limited to any particular hardware architecture or configuration. A computing device may include any suitable arrangement of components that provide results conditioned on one or more inputs. Suitable computing devices include multi-purpose microprocessor-based computer systems that access stored software that programs or configures the computing system from a general-purpose computing device to a dedicated computing device that implements one or more specific implementations of the subject matter of the present invention. Any suitable programming, scripting, or other type of language or combination of languages ​​may be used to implement the teachings contained herein in software for programming or configuring a computing device.

[0107] The specific implementation of the method disclosed herein can be performed in the operation of such a computing device. The order of the blocks presented in the above examples can be changed, for example, the blocks can be reordered, combined and / or divided into sub-blocks. Some blocks or processes can be executed in parallel.

[0108] The use of "suitable for" or "configured to" herein is meant to be open and inclusive language that does not exclude devices that are suitable for or configured to perform additional tasks or steps. In addition, the use of "based on" is meant to be open and inclusive, as a process, step, calculation, or other action "based on" one or more of the stated conditions or values ​​may in practice be based on additional conditions or values ​​beyond those stated. The headings, lists, and numbers included herein are for ease of explanation only and are not intended to be limiting.

[0109] It will also be understood that, although the terms "first", "second", etc. may be used to describe various elements in this article, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, a first node may be referred to as a second node, and similarly, a second node may be referred to as a first node, which changes the meaning of the description, as long as all occurrences of the "first node" are consistently renamed and all occurrences of the "second node" are consistently renamed. Both the first node and the second node are nodes, but they are not the same node.

[0110] The terms used herein are only for describing specific implementations and are not intended to limit the claims. As used in the description of this specific implementation and the appended claims, the singular forms of "a" and "the" are intended to also cover the plural forms, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" used herein refers to and covers any and all possible combinations of one or more items in the associated listed items. It will also be understood that the term "comprising" when used in this specification specifies the presence of stated features, integers, steps, operations, elements and / or parts, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, parts, and / or their grouping.

[0111] As used herein, the term “if” may be interpreted to mean “when the antecedent is true” or “when the antecedent is true” or “in response to determining” or “upon determining” or “in response to detecting” that the antecedent is true, depending on the context. Similarly, the phrase “if it is determined that [the antecedent is true]” or “if [the antecedent is true]” or “when [the antecedent is true]” is interpreted to mean “upon determining that the antecedent is true” or “in response to determining” or “upon determining” that the antecedent is true or “when detecting that the antecedent is true” or “in response to detecting” that the antecedent is true, depending on the context.

[0112] The foregoing description and summary of the present invention should be understood to be illustrative and exemplary in every aspect, rather than restrictive, and the scope of the present invention disclosed herein is determined not only by the detailed description of the exemplary specific implementations, but by the full breadth allowed by the patent law. It should be understood that the specific implementations shown and described herein are only illustrative of the principles of the present invention, and that various modifications can be implemented by those skilled in the art without departing from the scope and essence of the present invention.

Claims

1. A method for displaying an image, comprising: At an electronic device having a processor: identifying a first luminance value corresponding to a pixel of the image, wherein the first luminance value is a luminance value specific to a pixel of the image and results in a human perception of a relative brightness difference between the pixels; determining a second luminance value corresponding to the pixel of the image that is adjusted for display on an augmented reality device, wherein the second luminance value is determined based on the first luminance value, a non-linear relationship between luminance and perception, and a third luminance associated with a physical environment, wherein the second luminance value is determined such that the second luminance value is different from the first luminance value and results in a perception of a relative brightness difference between the pixels that is the same as the perception of the relative brightness difference between the pixels caused by the first luminance value; and The image is displayed on the augmented reality device using the second brightness value, wherein the augmented reality device is configured to provide a view including the image and the physical environment.

2. The method of claim 1 , wherein determining the second brightness value comprises: determining a first perceptual value based on the first brightness value and a non-linear relationship between brightness and perception; generating a second perception value corresponding to the pixel of the image by adjusting the first perception value based on a characteristic of the physical environment; as well as The second brightness value is determined based on the second perceptual value and the non-linear relationship between brightness and perception.

3. The method of claim 2, wherein the perceived value is a brightness value corresponding to a difference in perceived light intensity contrast. 4 . The method of claim 2 , wherein the second perception value is generated by adjusting the first perception value to account for background brightness of the physical environment. 5 . The method of claim 2 , wherein the second perception value is generated by increasing each of the first perception values ​​by adding a value corresponding to background brightness of the physical environment. The method of claim 1 , wherein the first brightness value is a pixel-specific brightness value of an image intended for display without background brightness. The method of claim 1 , wherein the non-linear relationship corresponds to a non-linear brightness-luminance curve. The method according to claim 1 , wherein the third brightness is background brightness.

9. The method of claim 1, wherein the image is displayed in front of a view of the physical environment on the augmented reality device.

10. The method of claim 1, wherein the augmented reality device is a head mounted device (HMD).

11. The method of claim 1 , wherein the view of the augmented reality device comprises an optical see-through view.

12. A device for displaying an image, comprising: a non-transitory computer-readable storage medium; and One or more processors, the one or more processors coupled to the non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium includes program instructions, and when the program instructions are executed on the one or more processors, the system performs operations including: identifying a first luminance value corresponding to a pixel of the image, wherein the first luminance value is a luminance value specific to a pixel of the image and results in a human perception of a relative brightness difference between the pixels; determining a second luminance value corresponding to the pixel of the image that is adjusted for display on an augmented reality device, wherein the second luminance value is determined based on the first luminance value, a non-linear relationship between luminance and perception, and a third luminance associated with a physical environment, wherein the second luminance value is determined such that the second luminance value is different from the first luminance value and results in a perception of a relative brightness difference between the pixels that is the same as the perception of the relative brightness difference between the pixels caused by the first luminance value; and The image is displayed on the augmented reality device using the second brightness value, wherein the augmented reality device is configured to provide a view including the image and the physical environment.

13. The apparatus of claim 12, wherein determining the second brightness value comprises: determining a first perceptual value based on the first brightness value and a non-linear relationship between brightness and perception; generating a second perception value corresponding to the pixel of the image by adjusting the first perception value based on a characteristic of the physical environment; as well as The second brightness value is determined based on the second perceptual value and the non-linear relationship between brightness and perception.

14. The apparatus of claim 13, wherein the perceived values ​​are brightness values ​​corresponding to differences in perceived light intensity contrast.

15. The apparatus of claim 13, wherein the second perception value is generated by adjusting the first perception value to account for background brightness of the physical environment. 16 . The apparatus of claim 13 , wherein the second perception value is generated by increasing each of the first perception values ​​by adding a value corresponding to background brightness of the physical environment.

17. The apparatus of claim 12, wherein the non-linear relationship corresponds to a non-linear luminance-brightness curve.

18. The device of claim 12, wherein the augmented reality device is a head mounted device (HMD).

19. A non-transitory computer-readable storage medium storing program instructions executable on a computer to perform operations comprising: identifying a first luminance value corresponding to a pixel of an image, wherein the first luminance value is a luminance value specific to a pixel of the image and results in a human perception of a relative brightness difference between the pixels; determining a second luminance value corresponding to the pixel of the image that is adjusted for display on an augmented reality device, wherein the second luminance value is determined based on the first luminance value, a non-linear relationship between luminance and perception, and a third luminance associated with a physical environment, wherein the second luminance value is determined such that the second luminance value is different from the first luminance value and results in a perception of a relative brightness difference between the pixels that is the same as the perception of the relative brightness difference between the pixels caused by the first luminance value; and The image is displayed on the augmented reality device using the second brightness value, wherein the augmented reality device is configured to provide a view including the image and the physical environment.

20. The non-transitory computer-readable storage medium of claim 19, wherein determining the second brightness value comprises: determining a first perceptual value based on the first brightness value and a non-linear relationship between brightness and perception; generating a second perception value corresponding to the pixel of the image by adjusting the first perception value based on a characteristic of the physical environment; as well as The second brightness value is determined based on the second perceptual value and the non-linear relationship between brightness and perception.