The present description relates generally to electronic devices with displays, and more particularly, but not exclusively, to ambient light color compensation systems and methods for electronic device displays.
Electronic devices are often provided with displays such as organic light-emitting diode (OLED) displays or liquid crystal displays (LCDs). Particularly for portable electronic devices with displays, the displays are often operated and viewed in different ambient lighting conditions, which can affect the appearance of images displayed on the display.
Certain features of the subject technology are set forth in the appended claims. However, for purpose of explanation, several embodiments of the subject technology are set forth in the following figures.
The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configurations in which the subject technology may be practiced. The appended drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details for the purpose of providing a thorough understanding of the subject technology. However, it will be clear and apparent to those skilled in the art that the subject technology is not limited to the specific details set forth herein and may be practiced without these specific details. In some instances, well-known structures and components are shown in block diagram form in order to avoid obscuring the concepts of the subject technology.
The subject disclosure provides electronic devices such as cellular telephones, media players, computers, set-top boxes, wireless access points, and other electronic equipment that may include displays. Displays may be used to present visual information and status data and/or may be used to gather user input data. A display may include an array of display pixels. Each display pixel may include one or more colored subpixels for displaying color images. For example, each display pixel may include a red subpixel, a green subpixel, and blue subpixel.
Each display pixel or subpixel generates light based on display data for generating images representing pictures, text, video, or other display content on the front of the display. The colored subpixels of the display are operated to generate images having a particular color at each pixel. However, in some scenarios, ambient light from the environment surrounding the device can be reflected from the display. This reflected light is added to the light generated by the display and can affect the visual appearance of the images generated on the front of the display.
One aspect of a displayed image that can be changed by reflected ambient light, is the color of the displayed image. This color change can be particularly problematic when the device is operated outdoors and the display is exposed to direct and/or indirect sunlight. Typically, a user of a device will orient the device to avoid specular reflections that are directly reflected from the front surface of the display. However, even in these orientations, portions of the ambient light can pass through the front surface of the display and be reflected by one or more structures within the display, before passing again through the front of the display in an outward direction, in combination with the display-generated light. These diffuse reflections can be scattered and/or reflected among one or more different layers beneath the surface of the display before being re-emitted through the front of the display.
These diffuse reflections can cause images generated by the display to appear washed out due to a decrease in the color gamut of the observed image caused by the addition of non-negligible reflected light to the display-generated light coming out of the display. This effect is referred to herein as a physical reduction in the colorfulness of the displayed image.
Moreover, the human eye itself responds differently to display light when the eye is exposed to different ambient light conditions. In particular, high levels of brightness reduce the efficiencies of the cone cells in the human retina, which can cause a further, physiological reduction in the colorfulness of a displayed image.
In accordance with various aspects of the subject disclosure, systems and methods are provided for mitigating physical and/or physiological reductions in the apparent colorfulness of an image displayed on an electronic device display, in various ambient lighting conditions. In particular, electronic devices are provided that include a display and an ambient light sensor. Images to be displayed on the device display are modified, prior to display, based on ambient light measurements obtained using the ambient light sensor. Further details of these modifications to images for display, which can compensate for a potential of loss in colorfulness due to high ambient brightness while preserving image quality, are described hereinafter.
Display 110 may be a touch screen that incorporates capacitive touch electrodes or other touch sensor components or may be a display that is not touch-sensitive. Display 110 may include display pixels (see, e.g., light-emitting elements 516 of
As indicated, device 100 includes one or more ambient light sensors, which may be implemented as display-integrated ambient light sensors 113 or ambient light sensors 103 that are separate from the display. Display 110 may have a transparent cover layer such as a glass cover layer that allows ambient light from the environment surrounding device 100 to reach one or more of ambient light sensors 103 or 113.
Housing 106, which may sometimes be referred to as a case, may be formed of plastic, glass, ceramics, fiber composites, metal (e.g., stainless steel, aluminum, etc.), other suitable materials, or a combination of any two or more of these materials.
The configuration of electronic device 100 of
For example, in some implementations, housing 106 may be formed using a unibody configuration in which some or all of housing 106 is machined or molded as a single structure or may be formed using multiple structures (e.g., an internal frame structure, one or more structures that form exterior housing surfaces, etc.). Although housing 106 of
Ambient light sensors 103 may be disposed in a common plane with display 110, as in
Display 110 may be implemented as a liquid crystal display (LCD), a light-emitting diode (LED) display such as an organic light-emitting diode (OLED) display, or another type of display such as a plasma cell display, or a display that includes electrophoretic display elements, electrowetting display elements or other suitable display pixel structures.
Displays such as LCDs and OLED displays typically include various layers of materials, structures, and electronic components arranged to generate display light for displaying images. Ambient light that is incident on the display can pass into and through some of the display layers and can be reflected by some of the display layers. Examples in which display 110 is implemented as an LCD and as an OLED display are shown in
In the example of
Backlight assembly 200 may be a two-dimensional array of light-emitting diodes (LEDs) arranged in one or more layers such as layer 208 or backlight assembly may be an edge-lit backlight as in the example of
As shown in
Color filter layer 218 includes color filter material 222 for each pixel 233. Color filter material 222 of one color (e.g., red, green, or blue resin materials) for one pixel (or subpixel) may be separated from the color filter material 222 of one or more adjacent pixels (or subpixels) by an opaque masking material (e.g., a black paint, ink, or resin). Red, green, and blue color filter elements 222 are configured such that light passing through will have primarily red, green, or blue wavelengths, respectively. Masking material 224 may be a light-opaque mask or matrix which defines a red, green, or blue pixel (or subpixel) area and prevents light transmitted through color filter elements 222 from diffusing or “bleeding” into adjacent pixels.
When TFT layer 214 arranges the liquid crystals of a particular display pixel 233 to cause the polarization of some or all of the light 226 passing through that pixel to rotate to match the polarization of top polarizer 220, that portion of light 226 is filtered by color filter layer 218 and passes through top polarizer 220 and cover layer 204 to exit the display as display light. When TFT layer 214 arranges the liquid crystals of a particular display pixel 233 to allow the polarization of the light 227 passing through that pixel to remain the same as the polarization of bottom polarizer 212, that light 227 is prevent from exiting the display to form dark or black pixel of a displayed image.
However,
OLED assembly 306 includes various structures and layers for generating display light 226 responsive to control signals in TFT layer 302. In the example of
TFT layers 302 include various circuit layers (e.g., including transistor structures for transistors, gate lines, and data lines, gate insulation layers, shield metal layers, conductive vias, and buffer layers) and may be formed on one or more substrate layers 304. Substrate layers 304 may include one or more polymer layers such as a polyimide layer and/or a polyethylene terephthalate (PET) layer. TFT layers 302 may also include a planarization layer formed over transistors therein to provide a planar surface on which pixel structures such as the anode and pixel definition layer 420 are formed. OLED layers 306 may include additional layers such as a thin-film-encapsulation layer and a polarizer layer.
Because the layers, materials, structures, and/or electronic components can be polarizing, and/or color filtering upon transmission or reflection, reflected light 230 in either of the display implementations of
During manufacturing of device 100 and/or display 110 (in an LCD, OLED, or other implementation), display reflectance data may be measured that describes the color distribution of reflected light 230 under various types of ambient illumination 228 (e.g., direct sunlight, reflected sunlight, filtered sunlight, polarized sunlight, fluorescent light, incandescent light, firelight, or other forms of ambient light). This display reflectance data may be stored (e.g., in memory of each device 100 or remotely accessible memory) so that, when ambient light is measured by one or more of ambient light sensors 103 and/or 113, the amount, distribution, and color of the portion of that light that is reflected from the display can be determined (e.g., by looking up or calculating the properties of the reflected light by modifying the measured incident ambient light with the known display reflectance properties in the stored display reflectance data).
The display reflectance data may include for example, a two-dimensional distribution of intensities and colors expected for each of several types of ambient light. During operation, the two-dimensional distribution of intensities and colors that will be reflected by the display can be selected from the display reflectance data based on an identification of the type of ambient light in the environment around the device. The type of ambient light may be identified based on a measured intensity and/or a measured spectral distribution of the ambient light.
Any color generated by a display such as display 110 may therefore be represented by a point (e.g., a point corresponding to a pair of chromaticity values x and y) on a chromaticity diagram such as the diagram shown in
However, due to the addition of reflected light 230 to display light 226, the color gamut of the displayed image is reduced from intended gamut 402 to physically reduced gamut 404. Moreover, due to the physiological changes in the user's eye due to the presence of the ambient light that causes reflected light 230, the gamut of the observed image is further reduced to observed gamut 406.
In order to correct observed gamut 406 to more closely match intended gamut 402, processing circuitry of device 100 generates and applies a color compensation to the image to be displayed based on the measured ambient light and the known display reflectance properties stored in the display reflectance data.
Color compensation operations may be performed by display control circuitry 518 and/or processing circuitry 528 (e.g., a central processing unit or other integrated circuit) for device 100 based on ambient light data generated by ambient light sensors 113 that are integrated with display 110 and/or ambient light sensors 103 that are separate from the display.
As shown, device 100 includes processing circuitry 528 and memory 530. Memory 530 may include one or more different types of storage such as hard disk drive storage, nonvolatile memory (e.g., flash memory or other electrically-programmable-read-only memory), volatile memory (e.g., static or dynamic random-access-memory), magnetic or optical storage, permanent or removable storage and/or other non-transitory storage media configure to store static data, dynamic data, and/or computer readable instructions for processing circuitry 528. Processing circuitry 528 may be used in controlling the operation of device 100. Processing circuitry 528 may sometimes be referred to as system circuitry or a system-on-chip (SOC) for device 100.
Processing circuitry 528 may include a processor such as a microprocessor and other suitable integrated circuits, multi-core processors, one or more application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs) that execute sequences of instructions or code, as examples. In one suitable arrangement, processing circuitry 528 may be used to run software for device 100, such as, display content generation functions, color compensation operations, display data conversion operations, internet browsing applications, email applications, media playback applications, operating system functions, software for capturing and processing images, software implementing functions associated with gathering and processing sensor data, and/or software that controls audio, visual, and/or haptic functions.
As shown in
In the example of
The colorfulness compensation described herein is performed in a perceptually uniform manner that provides improved control of the colorfulness without affecting image brightness levels. In particular, the compensation operations described herein are performed in a perceptually uniform color appearance space. Although various perceptually uniform color appearance spaces are available, compensation operations in the IPT color space are described herein as an example. The dimensions of the IPT color space are “I”—corresponding to perceptual brightness, “P”—corresponding to redness-greenness, and “T”—corresponding to “yellowness-blueness”.
A brightness statistic for an image or for a distribution of ambient light may be the mean or median of a histogram of I values. A colorfulness statistic for an image or for a distribution of ambient light may be a mean or median of a histogram of colorfulness values, the colorfulness given by the square root of the sum of the squares of I and P.
A colorfulness compensation factor, for compensating for the presence of ambient light, may be implemented as a multiplicative color compensation factor “B” to the color channels P and T. As indicated in
In particular,
As shown in
One or more image transformations 716 are performed for input (original) image 700. As shown in
At block 730, the bleaching effect of the ambient light may be determined by computing tristimulus values of an expected bleached image (e.g., by vector addition of the tristimulus values of the original image from block 718 and the tristimulus values of the reflected light).
At block 730, the tristimulus values of the bleached image are also transformed into IPT values for the bleached image. The IPT values of the bleached image are combined with the IPT values of the original image from block 722 to generate the compensation values BP and BT as described above in connection with
Color compensation values such as BP, BT, and a strength are provided to combiner 732, which combines the compensation values with the P and T values of the original image to generate compensated IPT values. For example, combiner 732 may generate the compensated IPT values by vector addition of the original P and T values and the computed BP and BT values. The product of the addition may be modified (e.g., multiplied) by the strength parameter to generate the compensated IPT values.
The strength value may be generated at block 730 to ensure that the compensated IPT values do not extend beyond a desired range (e.g., beyond gamut 400 or a display-specific sub-region gamut of 400 of
As shown in
As shown, ambient light estimation operations may include combining a spectral power distribution 806 determined based on ambient light measurements from one or more ambient light sensors 103/113 with color matching data 532 and display spectral reflectance data 534 (e.g., via a convolution or integration) to form expected reflection data such as reflected light tristimulus values 808 (denoted XYZR) of a portion of the ambient light that is reflected by the display. However, it should be appreciated that in some scenarios reflected light tristimulus values 808 may be determined directly from one or more channel readings of ambient light sensor(s) 103/113 (e.g., without first computing the spectral power distribution).
As shown, bleaching computation operations 802 include a combination of reflected light tristimulus values 808 with image tristimulus values 812 of the original (input) image (denoted XYZORIG and derived from the original image RGB values 810). The combination may be an addition of XYZR and XYZORIG, representing the addition of the display-generated light and the reflected light.
As shown, compensation operations 804 include a combination (e.g., vector subtraction or ratio) of IPT values 816 of the original image (sometimes referred to as image perceptually uniform color space values and denoted IPTORIG) and color bleaching data (e.g., IPT values 818 of the bleached image (denoted IPTbleach) determined from a transformation of the tristimulus values 814 of the bleached image (denoted XYZbleach)) to determine the compensation factor 820. Compensation operations 804 may also include a determination of the strength parameter 822 for the color compensation based on the ambient light sensor data. Compensation operations 804 may also include a combination of the original IPT values 816, the compensation factor 820 (factor B), and the strength factor 822 to generate compensated IPT values 824 (denoted IPTCOMP).
The compensated IPT values 824 are then inverse transformed (e.g., at blocks 736 and 738 of
The operations of
The systems and method disclosed herein provide a color compensation for images displayed on an electronic device display under ambient light from an environment external to the device. It should also be appreciated that the systems and method described herein can be used to employ diffuse reflections of ambient light from the display as a portion of the light emitted by the display (e.g., to reduce the amount of light the display generates for each displayed image, which can reduce power consumption by the display). It should also be appreciated that the color compensation methods and systems disclosed herein can be applied in combination with operations to boost the overall visibility of displayed images by modifying the overall brightness of the display responsive to changes in the measured ambient light brightness.
The operations described above in connection with
In accordance with various aspects of the subject disclosure, an electronic device is provided that includes a display having an array of display pixels configured to emit colored display light, an ambient light sensor, and processing circuitry. The processing circuitry is configured to transform an image to be displayed with the display to a perceptually uniform color space, obtain an ambient light measurement from the ambient light sensor, determine a color compensation factor based on the transformed image and the ambient light measurement, apply the color compensation factor to the transformed image, perform an inverse transform of the transformed image with the color compensation applied to obtain a compensated image, and provide the compensated image to the display, for display by the array of display pixels.
In accordance with other aspects of the subject disclosure, an electronic device is provided that includes a display having an array of display pixels configured to emit colored display light, an ambient light sensor, and processing circuitry. The processing circuitry is configured to obtain an ambient light measurement from the ambient light sensor, obtain an input image to be displayed by the display, determine expected reflection data based on the ambient light measurement and display spectral reflectance data, determine color bleaching data based on the expected reflection data and a transformation of the input image, determine a color correction factor based on the color bleaching data and the transformation of the input image, apply the color correction factor to the transformation of the input image, and generate a compensated output image for display based on the transformation of the input image with the color correction factor applied.
In accordance with other aspects of the subject disclosure, a method for operating an electronic device having a display is provided, the method including obtaining an image to be displayed by the display, obtaining a measurement of ambient light in an environment around the electronic device, transforming the image to a perceptually uniform color space, determining a color correction for the image based on the measurement of the ambient light and the transformed image, and generating a compensated image based on the transformed image and the color correction.
In accordance with other aspects of the subject disclosure, a method for operating an electronic device having a display is provided, the method including obtaining an image to be displayed by the display, obtaining a measurement of ambient light in an environment around the electronic device, obtaining reflected light tristimulus values, determining a color correction for the image based on the reflected light tristimulus values and a color transformation of the image, and generating a compensated image based on the color transformation of the image and the color correction.
Various functions described above can be implemented in digital electronic circuitry, in computer software, firmware or hardware. The techniques can be implemented using one or more computer program products. Programmable processors and computers can be included in or packaged as mobile devices. The processes and logic flows can be performed by one or more programmable processors and by one or more programmable logic circuitry. General and special purpose computing devices and storage devices can be interconnected through communication networks.
Some implementations include electronic components, such as microprocessors, storage and memory that store computer program instructions in a machine-readable or computer-readable medium (alternatively referred to as computer-readable storage media, machine-readable media, or machine-readable storage media). Some examples of such computer-readable media include RAM, ROM, read-only compact discs (CD-ROM), recordable compact discs (CD-R), rewritable compact discs (CD-RW), read-only digital versatile discs (e.g., DVD-ROM, dual-layer DVD-ROM), a variety of recordable/rewritable DVDs (e.g., DVD-RAM, DVD-RW, DVD+RW, etc.), flash memory (e.g., SD cards, mini-SD cards, micro-SD cards, etc.), magnetic and/or solid state hard drives, ultra density optical discs, any other optical or magnetic media, and floppy disks. The computer-readable media can store a computer program that is executable by at least one processing unit and includes sets of instructions for performing various operations. Examples of computer programs or computer code include machine code, such as is produced by a compiler, and files including higher-level code that are executed by a computer, an electronic component, or a microprocessor using an interpreter.
While the above discussion primarily refers to microprocessor or multi-core processors that execute software, some implementations are performed by one or more integrated circuits, such as application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs). In some implementations, such integrated circuits execute instructions that are stored on the circuit itself.
As used in this specification and any claims of this application, the terms “computer”, “processor”, and “memory” all refer to electronic or other technological devices. These terms exclude people or groups of people. For the purposes of the specification, the terms “display” or “displaying” means displaying on an electronic device. As used in this specification and any claims of this application, the terms “computer readable medium” and “computer readable media” are entirely restricted to tangible, physical objects that store information in a form that is readable by a computer. These terms exclude any wireless signals, wired download signals, and any other ephemeral signals.
To provide for interaction with a user, implementations of the subject matter described in this specification can be implemented on a computer having a display device as described herein for displaying information to the user and a keyboard and a pointing device, such as a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.
Many of the above-described features and applications are implemented as software processes that are specified as a set of instructions recorded on a computer readable storage medium (also referred to as computer readable medium). When these instructions are executed by one or more processing unit(s) (e.g., one or more processors, cores of processors, or other processing units), they cause the processing unit(s) to perform the actions indicated in the instructions. Examples of computer readable media include, but are not limited to, CD-ROMs, flash drives, RAM chips, hard drives, EPROMs, etc. The computer readable media does not include carrier waves and electronic signals passing wirelessly or over wired connections.
In this specification, the term “software” is meant to include firmware residing in read-only memory or applications stored in magnetic storage, which can be read into memory for processing by a processor. Also, in some implementations, multiple software aspects of the subject disclosure can be implemented as sub-parts of a larger program while remaining distinct software aspects of the subject disclosure. In some implementations, multiple software aspects can also be implemented as separate programs. Finally, any combination of separate programs that together implement a software aspect described here is within the scope of the subject disclosure. In some implementations, the software programs, when installed to operate on one or more electronic systems, define one or more specific machine implementations that execute and perform the operations of the software programs.
A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a standalone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
It is understood that any specific order or hierarchy of blocks in the processes disclosed is an illustration of example approaches. Based upon design preferences, it is understood that the specific order or hierarchy of blocks in the processes may be rearranged, or that all illustrated blocks be performed. Some of the blocks may be performed simultaneously. For example, in certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.
The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects. Thus, the claims are not intended to be limited to the aspects shown herein, but are to be accorded the full scope consistent with the language claims, wherein reference to an element in the singular is not intended to mean “one and only one” unless specifically so stated, but rather “one or more.” Unless specifically stated otherwise, the term “some” refers to one or more. Pronouns in the masculine (e.g., his) include the feminine and neuter gender (e.g., her and its) and vice versa. Headings and subheadings, if any, are used for convenience only and do not limit the subject disclosure.
The predicate words “configured to”, “operable to”, and “programmed to” do not imply any particular tangible or intangible modification of a subject, but, rather, are intended to be used interchangeably. For example, a processor configured to monitor and control an operation or a component may also mean the processor being programmed to monitor and control the operation or the processor being operable to monitor and control the operation. Likewise, a processor configured to execute code can be construed as a processor programmed to execute code or operable to execute code
A phrase such as an “aspect” does not imply that such aspect is essential to the subject technology or that such aspect applies to all configurations of the subject technology. A disclosure relating to an aspect may apply to all configurations, or one or more configurations. A phrase such as an aspect may refer to one or more aspects and vice versa. A phrase such as a “configuration” does not imply that such configuration is essential to the subject technology or that such configuration applies to all configurations of the subject technology. A disclosure relating to a configuration may apply to all configurations, or one or more configurations. A phrase such as a configuration may refer to one or more configurations and vice versa.
The word “example” is used herein to mean “serving as an example or illustration.” Any aspect or design described herein as “example” is not necessarily to be construed as preferred or advantageous over other aspects or design
All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the claims. Moreover, nothing disclosed herein is intended to be dedicated to the public regardless of whether such disclosure is explicitly recited in the claims. No claim element is to be construed under the provisions of 35 U.S.C. § 112, sixth paragraph, unless the element is expressly recited using the phrase “means for” or, in the case of a method claim, the element is recited using the phrase “step for.” Furthermore, to the extent that the term “include,” “have,” or the like is used in the description or the claims, such term is intended to be inclusive in a manner similar to the term “comprise” as “comprise” is interpreted when employed as a transitional word in a claim.
The present application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/657,646, entitled “AMBIENT LIGHT COLOR COMPENSATION SYSTEMS AND METHODS FOR ELECTRONIC DEVICE DISPLAYS” filed on Apr. 13, 2018, which is hereby incorporated by reference in its entirety for all purposes.
Number | Date | Country | |
---|---|---|---|
62657646 | Apr 2018 | US |