Techniques for determining the effective color space of a display

By generating a flat bitmap of the display and selecting the maximum color point, the expensive and time-consuming color space calibration problem in the existing technology is solved, and a fast and easy multi-dimensional color space representation is achieved.

CN113227961BActive Publication Date: 2025-09-19MICROSOFT TECHNOLOGY LICENSING LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN201980087243.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-12-31
Filing Date
2019-12-17
Publication Date
2025-09-19
Estimated Expiration
2039-12-17

AI Technical Summary

Technical Problem

Existing technologies require expensive and time-consuming equipment to calibrate the color space of a display, making it difficult to accurately characterize the color capabilities of the display in multiple color dimensions.

Method used

The effective color space of the display is determined by defining the intersection of the display's color volume and the two-dimensional parametric surface, generating a planar bitmap, and selecting the perceptually maximum color point.

Benefits of technology

This enables quick and easy determination of the effective color space of a display without the need for specialized equipment, improving the accuracy of multi-dimensional characterization of the color space.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113227961B_ABST
    Figure CN113227961B_ABST
Patent Text Reader

Abstract

A method and apparatus for determining an effective color space for a display performs the following steps. For at least one color volume vertex (202), a two-dimensional parametric surface intersecting a color volume defined for the display may be defined. For the at least one color volume vertex, a planar bitmap to which the two-dimensional parametric surface is mapped (204) may be displayed (208) on the display. For the at least one color volume vertex (210), a selection of a point on the planar bitmap corresponding to a perceived maximum color may be received. Based at least in part on the perceived maximum color selected for the at least one color volume vertex (212), an effective color space for the display may be determined.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Many modern displays are scene-referenced color space devices, where the video source expects the colors in the image on the display to be accurately reproduced on the display within a reasonable tolerance in a colorimetric sense. Such scene-referenced displays may require physical calibration to determine the effective color space, including luminance and chrominance, that is reported to the video source for displaying the image; the effective color space is defined based on the brightness and / or darkness that the display can achieve (e.g., peak and / or minimum luminance) and the saturation that colors can achieve (e.g., red, green, and blue primaries). The display device can be calibrated using a colorimeter external to the display to accurately measure the display's color output. For example, such calibration can be expensive and time-consuming and, therefore, impractical for many consumer-grade displays. Scene-referenced display devices can also be calibrated by displaying saturation color patches (where the display truncates the encoded colors to the closest physically possible color), allowing the user to adjust one patch to match another, and then determining the maximum possible signal along a single color dimension that the display can physically reproduce based on the adjustment. This calibration only allows characterization of the display along a single color dimension at a time, while the effective color space requires characterization across multiple color dimensions. Summary of the Invention

[0002] The following presents a simplified summary of one or more embodiments to provide a basic understanding of such embodiments. This summary is not an extensive overview of all contemplated embodiments and is neither intended to identify key or critical elements of all embodiments nor to delineate the scope of any or all embodiments. Its sole purpose is to present some concepts of one or more embodiments in a simplified form as a prelude to the more detailed description that is presented later.

[0003] In an example, a method for determining an effective color space of a display is provided. The method includes defining, for at least one color volume vertex, a two-dimensional parametric surface that intersects a color volume of the display; displaying, on the display and for at least one color volume vertex, a flat bitmap to which the two-dimensional parametric surface is mapped; receiving, for at least one color volume vertex, a selection of a point on the flat bitmap that corresponds to a perceived maximum color; and determining the effective color space of the display based at least in part on the perceived maximum color selected for the at least one color volume vertex.

[0004] In another example, a device for determining an effective color space of a display is provided, the device comprising a memory storing one or more parameters or instructions for determining the effective color space of the display, and at least one processor coupled to the memory. The at least one processor is configured to define, for at least one color volume vertex, a two-dimensional parametric surface that intersects a color volume of the display; display, on the display and for the at least one color volume vertex, a planar bitmap to which the two-dimensional parametric surface is mapped; receive, for the at least one color volume vertex, a selection of a point on the planar bitmap corresponding to a perceived maximum color; and determine the effective color space of the display based, at least in part, on the perceived maximum color selected for the at least one color volume vertex.

[0005] In another example, a non-transitory computer-readable medium including code executed by one or more processors for determining an effective color space for a display is provided. The code includes code for defining, for at least one color volume vertex, a two-dimensional parametric surface that intersects a color volume of the display; code for displaying, on the display and for at least one color volume vertex, a planar bitmap to which the two-dimensional parametric surface is mapped; code for receiving, for at least one color volume vertex, a selection of a point on the planar bitmap that corresponds to a perceived maximum color; and code for determining the effective color space for the display based at least in part on the perceived maximum color selected for the at least one color volume vertex.

[0006] To accomplish the foregoing and related ends, one or more embodiments include the features hereinafter fully described and particularly pointed out in the claims. The following description and the accompanying drawings set forth in detail certain illustrative features of one or more embodiments. However, these features are indicative of but a few of the various ways in which the principles of various embodiments may be employed, and this description is intended to include all such embodiments and their equivalents. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Figure 1 is a schematic diagram of an example of a device that can determine the effective color space of a display according to examples described herein.

[0008] Figure 2 is a flow chart of an example of a method for determining an effective color space for a display according to examples described herein.

[0009] Figure 3 is a monochrome representation of an example of a two-dimensional parametric surface for measuring the red primary color.

[0010] Figure 4 is a diagram of an example monochrome representation of a planar bitmap to be displayed for determining a maximum color volume vertex according to examples described herein.

[0011] Figure 5 is a diagram of an example monochrome representation of a planar bitmap to be displayed and a pixelated planar bitmap for determining a maximum color volume vertex according to examples described herein.

[0012] Figure 6 is a schematic diagram of an example of an apparatus for performing the functions described herein. DETAILED DESCRIPTION

[0013] The detailed description below, in conjunction with the accompanying drawings, is intended as an illustration of various configurations and is not intended to represent the only configurations in which the concepts described herein may be implemented. The detailed description includes specific details intended to provide a thorough understanding of the various concepts. However, it will be apparent to those skilled in the art that these concepts may be implemented without these specific details. In some examples, well-known components are shown in block diagram form to avoid confusion.

[0014] This disclosure describes various examples related to determining an effective color space for a display. In particular, the various examples allow for determining an effective color space in multiple dimensions without the use of specialized equipment. The effective color space may refer to the range of colors that a display can effectively display (e.g., the range of colors that a display can clearly display) and may be represented in multiple dimensions (e.g., a three-dimensional cube). For example, for one or more color volume vertices, a two-dimensional parametric surface intersecting a full three-dimensional color volume defined for the display may be determined, and a representative planar bitmap may be displayed. Color volume vertices may be defined to include color primaries (e.g., red, blue, green), a white point, a black point, or similar extremes on the outer surface of the color volume for the display. Additionally, color volume vertices may include points within the color volume that exhibit similar color behavior variations, such as a maximum 100% window white point, sometimes also referred to as the Society of Motion Picture and Television Engineers (SMPTE) standard (ST).2086 maximum frame average luminance level (MaxFALL). For a given color volume vertex, a selection of a point on the planar bitmap corresponding to the perceived maximum color may be received. Based on the selected point for each color volume vertex, an effective color space for the display may be determined. This allows users to quickly measure the effective color space for a display without special equipment by selecting (multiple) points on a (multiple) planar bitmap for one or more color volume vertices. The selected (multiple) points can be mapped back to (multiple) maximum color values ​​to determine the effective color space, which can be provided to the source to optimize one or more image displays based on the effective color space of the display. In addition, compared to the one-dimensional color scale method, the use of two parameterized dimensions for determining the effective color space can result in more differences in representation between color channels in this regard.

[0015] In an example, a color volume vertex can include at least one red primary, at least one green primary, at least one blue primary, at least one white point (e.g., for luminance), and / or at least one black point. Using multiple color volume vertices can allow for mapping a three-dimensional color volume for a display to multiple two-dimensional patterns that can be used to identify the associated saturation point for each color volume vertex. In a specific example, for each color volume vertex, a two-dimensional test pattern can be defined based on a parametric equation for the color volume vertex that holds one dimension constant (e.g., constant luminance for the red, green, and blue primaries). In a more complex example, a two-dimensional test pattern can be defined as a parametric equation that varies the correlated color temperature (CCT) in one dimension and varies luminance in another dimension for both the white point and the black point. Furthermore, the two-dimensional pattern can be mapped to a planar bitmap based on applying a filter to convert a set of adjacent pixels into discrete color blocks. A user can view each planar bitmap and select a point where colors appear to converge or be perceived as indistinguishable, which can represent the maximum color saturation achieved by the display. This selected point can be mapped back to the maximum color saturation for the given color volume vertex and can be used to determine and / or report the effective color space for the display.

[0016] Now turn Figures 1 to 6 , reference is made to one or more components and one or more methods that can perform the actions or methods described herein to depict examples, where the components and / or actions / operations within the dashed lines may be optional. Figure 2 The operations described are performed in a particular sequence and / or by example components, and in some examples, the order of the actions and components performing the actions may vary depending on the implementation. Furthermore, in some examples, one or more of the actions, functions, and / or components described may be performed by a specially programmed processor, a processor executing specially programmed software or computer-readable media, or any other combination of hardware components and / or software components capable of performing the described actions or functions.

[0017] Figure 1is a schematic diagram of an example of a device 100 (e.g., a computing device) for determining an effective color space for a display. In an example, the device 100 may include a processor 102 and / or a memory 104 configured to execute or store instructions or parameters related to providing an operating system 106, which may execute one or more applications, services, etc. For example, the processor 102 and the memory 104 may be separate components communicatively coupled via a bus (e.g., on a motherboard or other portion of a computing device, on an integrated circuit such as a system on a chip (SoC), etc.), components integrated within each other (e.g., the processor 102 may include the memory 104 as an onboard component 101, etc.), and / or the like. The memory 104 may store instructions, parameters, data structures, etc. for use / implementation by the processor 102 to perform the functions described herein.

[0018] In addition, for example, the device 100 can be communicatively coupled to one or more displays (such as display 108), which can include a liquid crystal display (LCD) device, a light emitting diode (LED) LCD device (e.g., with an LED backlight), a digital light processing (DLP) display, or substantially any scene-referenced color space display having an effective color space determined, for example, based on luminance and chrominance values. As further described herein, the display 108 can display images generated and provided by the device 100 via the operating system 106, applications executed thereon, etc. In an example, the display 108 can be one or more displays in a display device, which can include additional hardware components (not shown) to facilitate displaying images, such as one or more display ports, memory, backlight, timing controller, etc.

[0019] One or more applications, services, etc. executing on the operating system 106 may include a color space determination component 112 for determining an effective color space for the display, an optional image source 114 for generating an image to be displayed on the display 108 based on the effective color space, and / or a display driver 116 for transmitting image data from the device 100 to the display 108 (e.g., via a display interface and / or a display port (not shown)). In an example, the color space determination component 112 may include a color volume determination component 120 for determining that the display 108 may be capable of displaying a three-dimensional color space (e.g., a color space at least as deep as the effective color space), a bitmap component 122 for generating a planar bitmap of a two-dimensional parametric surface representing the three-dimensional color space for display on the display 108, and a maximum color component 124 for determining a maximum color observed in the planar bitmap via the display 108. Using this information for a set of one or more color volume vertices, the color space determination component 112 can determine at least a portion of an effective color space for the display 108, as described herein.

[0020] Figure 2 2 is a flow chart of an example method for determining an effective color space for a display. For example, method 200 may be performed by device 100 and / or one or more components thereof to determine an effective color space for display 108. Furthermore, in an example, display 108 itself may also include color space determination component 112 and / or components thereof to determine its effective color space for reporting to device 100.

[0021] In method 200, at act 202, a two-dimensional parametric surface for a display that intersects a three-dimensional color space can be defined for at least one color volume vertex. In an example, color volume determination component 120 (e.g., in conjunction with processor 102, memory 104, operating system 106, color space determination component 112, etc.) can define, for at least one color volume vertex, a two-dimensional parametric surface that intersects a color volume defined for a display (e.g., display 108). For example, color space determination component 112 can determine a color volume for display 108, which can be based on information about display 108 available from display driver 116. For example, the information can indicate a color depth of the display used to display an image, such as a color volume or range and / or bit depth. For example, the display can be a high dynamic range (HDR) display, which can have an HDR color volume (e.g., an International Telecommunication Union Recommendation (ITU-R) BT.2020 color volume) and a 10-bit bit depth. Other color volumes and / or bit depths can be determined for various other types of displays.

[0022] In addition, HDR10 displays also support SMPTE ST 2086 "Controlling Display Color Volume" static metadata to send color calibration data that controls the display, such as MaxFALL, Maximum Content Luminance Level (MaxCLL), and / or other static values ​​encoded as Supplemental Enhancement Information (SEI) messages in the video stream. In one example, as described herein, determining the effective color space for the display can be used as metadata, or as an alternative to metadata, for this standard or related SEI messages.

[0023] In any case, to display a plurality of colors corresponding to a color volume vertex, the color volume determination component 120 can define a two-dimensional parametric surface for a given color volume vertex based on the color volume. For example, the color volume determination component 120 can define the two-dimensional parametric surface based on at least selecting a constant value for one dimension of the three-dimensional color volume and varying values ​​in the other two dimensions. Thus, for example, where the color volume can be represented as a three-dimensional "cube," the color volume determination component 120 can define the two-dimensional parametric surface as a planar "slice" of the "cube," where the slice can be a two-dimensional layer along the third dimension. For example, the selected slice can additionally or alternatively be an off-axis angle in the "cube," a curved or otherwise uneven "slice," a higher-detail selection of the "cube," or substantially any portion of the "cube" that can be reduced to its parametric equation.

[0024] In one example, the color volume can use the Commission d'Illumination (CIE) xyY coordinate system: r(u, v) = (x, y, Y). In this example, the color space determination component 112 can define a two-dimensional parameter surface to have one or more of the following properties: the input parameters (u, v) can be defined on the range [0, 1], and thus the parameter surface can have four vertices (e.g., corners) and four edges corresponding to the extreme values ​​of the input parameters (u, v); the vertices of the parameter surface can contain as many colors as possible that correspond to the colors that a display can have at a selected color volume vertex of a given color volume - in one example, this can be done by, for example, investigating that the color volume vertex values ​​for displays on the market correspond to a set of reasonable display primary color values ​​selected empirically, and no vertex can exceed the display's signal color space (e.g., HDR10). That is, it is possible to encode every point within the parameter surface in the display signal color volume. In addition, for example, the parameter surface may not contain all colors of the color volume vertices in the three-dimensional color space volume. Thus, for example, the color volume determination component 120 can rely on the observation that the color volume vertices of displays within the market vary primarily in two independent dimensions, which can be represented by a parametric surface. In one example, as further described herein, a two-dimensional parametric surface for one or more color volume vertices can be determined offline and provided to the color volume determination component 120 for generating a planar bitmap for display.

[0025] In one specific example, the color volume determination component may define Figure 3 Parametric surface for the red primary shown. Figure 32020 color space boundary); vertex 312 (projection of the blue to red line in the BT.709 color space on the BT.2020 color space boundary); and vertex 314 (red in the BT.2020 color space). In one example, the parameter surface may contain the actual red primary in a known HDR10 marketed display. The color volume determination component 120 can similarly define parametric surfaces for other color volume vertices, such as at least one green primary, at least one blue primary, at least one white point, and / or at least one black point, etc. For example, at least one white primary can be typically characterized as two dimensions of a parametric surface by luminance (cd / m2) and correlated color temperature (CCT, e.g., degrees Kelvin).

[0026] In method 200, a planar bitmap can optionally be generated at act 204 for at least one color volume vertex by mapping color space parameters corresponding to a two-dimensional parametric surface to pixel locations of a planar bitmap via a parametric equation. In an example, bitmap component 122 (e.g., in conjunction with processor 102, memory 104, operating system 106, color space determination component 112, etc.) can generate the planar bitmap for at least one color volume vertex by mapping color space parameters corresponding to the two-dimensional parametric surface to pixel locations of the planar bitmap via a parametric equation. In an example, as described above, although the two-dimensional parametric surface can have another shape, bitmap component 122 can generate the planar bitmap as a rectangle. In an example, as further described herein, a parametric equation can be used to map the color space parameters of the two-dimensional parametric surface to the planar bitmap and also map selected points to corresponding color values ​​in the color space. In an example, the parametric equation can be obtained from memory 104 by bitmap component 122 and can be defined for a given color volume vertex. For example, the parametric equation can be defined to select a surface that maximizes the color dimension from a larger color volume. Similarly, a corresponding parametric surface may be defined to encompass all reasonably valid color values ​​for the color volume vertices and / or two independent dimensions may be chosen (eg, by observation / common knowledge) that are highly variable between individual displays and models.

[0027] Figure 5An example of a planar bitmap 500 for deriving a two-dimensional parametric surface from a three-dimensional color volume is shown. For example, the bitmap 500 may represent a two-dimensional "slice" of a three-dimensional color volume "cube" to present a test pattern focused on a blue primary color. In this example, the bitmap component 122 may generate the planar bitmap 500 representing the two-dimensional parametric surface by stretching the surface to fit the resolution of the display 108.

[0028] In method 200, a planar bitmap is generated at act 204, and optionally at act 206, one or more filters may be applied to convert a set of pixels into discrete blocks of color. In an example, the bitmap component 122 (e.g., in conjunction with the processor 102, the memory 104, the operating system 106, the color space determination component 112, etc.) may apply one or more filters to convert the set of pixels into discrete blocks of color. For example, the bitmap component 122 may determine the set of pixels as N×M blocks of pixels, where N may or may not be equal to M, starting at a top corner or a bottom corner of the bitmap and continuing vertically and / or horizontally. For each given set, in one example, the bitmap component 122 may apply a single color to all pixels in the set. As described herein, this may enable pixelization of the planar bitmap, which may allow for easier detection of specific attributes in the planar bitmap, such as pixels or sets of pixels where color volume vertices converge.

[0029] In one example, to enhance the human eye's ability to distinguish differences between colors, the bitmap component 122 may apply a pixelation filter and / or a quantization filter as follows: each block of N×N pixels (e.g., 16×16) is filled with an average color for the block, and the color value may be quantized to the nearest color value P. In one example, the bitmap component 122 may adjust the parameters N and P to balance between improving accuracy (e.g., smaller blocks with smaller color differences between blocks) and ease of identifying color differences (e.g., larger blocks with larger color differences between blocks). Figure 5 The illustrated example also depicts the planar bitmap 502 as pixelated to facilitate easier identification of attributes of the blue primary color in the planar bitmap, such as the pixel or set of pixels where the color volume vertices converge.

[0030] In method 200, at act 208, a planar bitmap can be displayed on a display and for at least one color volume vertex, to which the two-dimensional parametric surface is mapped. In an example, on a display (e.g., display 108) and for at least one color volume vertex, a bitmap component 122 (e.g., in conjunction with processor 102, memory 104, operating system 106, color space determination component 112, etc.) can display the planar bitmap to which the two-dimensional parametric surface is mapped. For example, as described, the planar bitmap can be stretched to fit the resolution of display 108 and can be displayed in a pixelated form to facilitate detection of one or more properties of the planar bitmap. In addition, the bitmap component 122 can display the planar bitmap as part of a calibration process performed on the display, which process can be performed by device 100 based on an application or operating system 106 process, performed by display 108 when activated on display 108, and / or the like.

[0031] In method 200, at act 210, a selection of a point on a planar bitmap corresponding to a perceived maximum color may be received for at least one color volume vertex. In an example, maximum color component 124 (e.g., in conjunction with processor 102, memory 104, operating system 106, color space determination component 112, etc.) may receive the selection of a point on a planar bitmap corresponding to the perceived maximum color for at least one color volume vertex. For example, maximum color component 124 may receive a user selection for each planar bitmap representing each color volume vertex (e.g., by navigating to a pixel or set of pixels representing the maximum color using a mouse, by selecting a pixel or set of pixels representing the maximum color by touch using a touch panel, etc.).

[0032] For example, a bitmap displayed on display 108 can appear as a spectrum of different hues, similar to a color selection tool in a paint or drawing application. However, due to the saturation behavior described above, the user may observe that some portions of the bitmap appear as flat / constant color scales, which may represent colors that exceed the physical capabilities of display 108 and are therefore saturated / truncated to the same (nearest) color. In this example, the user can select a point on the flat bitmap, such as using a cursor or touch, that is the visual boundary between the saturated / flat portion and the normal / spectral portion. This boundary point may represent the maximum possible color corresponding to the current color volume vertex.

[0033] Figure 4 The diagram shows Figure 3 A monochrome representation of an example of a pixelated planar bitmap 400 corresponding to the two-dimensional parametric surface defined in . Figure 4In the example of FIG4 , pixel 402 can be selected as the maximum color pixel at the vertex of the effective color volume before the color saturates to the same or similar color in different dimensions. For example, as described above, color space determination component 112 can prompt the user to select an image area where the color blocks appear to be the same or begin to appear the same, and the user can select a point or area on the image based on the prompt. Conceptually, the selected point 402 can correspond to the intersection of areas A, B, C, and D in the figure.

[0034] For example, the color space determination component 112 can map the selected region or pixel (or set of pixels) to a displayed color value based on a parametric function, which can be considered to be a maximum red color value. In another example, the selection of a pixel or set of pixels can cause the bitmap component 122 to create another planar bitmap that focuses on the set of pixels corresponding to the selection (e.g., and / or one or more adjacent sets of pixels) for more refined determination of the maximum color value. In any case, once the maximum color value is selected for one or more expected color volume vertices, the color space determination component 112 can determine an effective color space based on the various maximum vertices.

[0035] In method 200, at act 212, an effective color space for the display can be determined based at least in part on the perceived maximum color selected for at least one color volume vertex. In an example, a color space determination component 112 (e.g., in conjunction with processor 102, memory 104, operating system 106, etc.) can determine the effective color space for the display based at least in part on the perceived maximum color selected for at least one color volume vertex. For example, color space determination component 112 can determine the effective color space based at least on the maximum colors selected for at least one red primary, at least one green primary, at least one blue primary, at least one white primary, and at least one black primary. Furthermore, in one example, at least one white primary can include a white point at 10 percent of a window and a white point at 100 percent of a window. In any case, color space determination component 112 can determine the effective color space for display 108, or at least a portion of the effective color space (e.g., luminance, chromaticity, etc.), as a percentage of the actual color value representing the maximum color volume vertex compared to the color value within the color volume defined for display 108.

[0036] In method 200, optionally at act 214, an effective color space can be reported to a source for rendering an image based on the effective color space. In an example, color space determination component 112, for example in conjunction with processor 102, memory 104, operating system 106, etc., can report the effective color space of a display (e.g., display 108) to a source (e.g., image source 114) for rendering an image based on the effective color space. This can include transmitting the effective color space to the source (e.g., an application executing on device 100). In this regard, image source 114 can consider the effective color space when rendering an image for display on display 108, thereby minimizing the use of saturated colors when rendering the image. For example, the image source can render or otherwise create an image or instructions for displaying the image based on the effective color space that does not exceed a maximum color based on the effective color space. In one example, image source 114 can truncate colors determined to be outside the effective color space or can adjust the colors based on a percentage of the effective color volume and the determined color space. In another example, image source 114 may adjust colors via tone mapping or gamut mapping operations used in this regard to more accurately render the image for a particular display.

[0037] Figure 6 An example of a device 600 is shown, which is similar to the device 100 ( Figure 1 ) similar or identical, including Figure 1 Additional optional component details are shown. In one embodiment, device 600 may include a processor 602, which may be similar to processor 102, for performing processing functions associated with one or more components and functions described herein. Processor 602 may include one or more processor groups or multi-core processors. In addition, processor 602 may be implemented as an integrated processing system and / or a distributed processing system.

[0038] The device 600 may also include a memory 604, which is similar to the memory 104 and is used to store local versions of applications executed by the processor 602, such as the color space determination component 112, the operating system (or other components thereof), applications, related instructions, parameters, etc. The memory 604 may include computer-usable memory types, such as random access memory (RAM), read-only memory (ROM), tape, magnetic disk, optical disk, volatile memory, non-volatile memory, and any combination thereof.

[0039] Further, the device 600 may include a communication component 606 that provides for establishing and maintaining communications with one or more devices, parties, entities, etc. utilizing the hardware, software, and services described herein. The communication component 606 may facilitate communications between components on the device 600 (e.g., the display 108) and between the device 600 and external devices, such as devices located on a communication network and / or devices serially or locally connected to the device 600. For example, the communication component 606 may include one or more buses and may also include transmit chain components and receive chain components associated with wireless or wired transmitters and receivers, respectively, operable to interface with external devices.

[0040] Additionally, the device 600 may include a data store 608, which may be any suitable combination of hardware and / or software that provides mass storage for information, databases, or programs for use with the embodiments described herein. For example, the data store 608 may be or may include a data repository for applications and / or related parameters not currently being executed by the processor 602 (e.g., the color space determination component 112, the operating system (or other components thereof), applications, etc.). Furthermore, the data store 608 may be a data repository for the color space determination component 112, the operating system (or other components thereof), applications, and / or one or more other components of the device 600.

[0041] Device 600 may include a user interface component 610 that is operable to receive user input of device 600 and further operate to generate output for presentation to the user. User interface component 610 may include one or more input devices, including but not limited to a keyboard, a numeric keypad, a mouse, a touch-sensitive display, navigation keys, function keys, a microphone, a voice recognition component, a gesture recognition component, a depth sensor, a gaze tracking sensor, a switch / button, any other device capable of receiving input from a user, or any combination thereof. Further, user interface component 610 may include one or more output devices, including but not limited to a display, a speaker, a tactile feedback device, a printer, any other device capable of presenting output to a user, or any combination thereof.

[0042] As described herein, device 600 may additionally include and / or be communicatively coupled with one or more display devices (such as display 108 ) and / or a color space determination component 112 for determining an effective color volume.

[0043] For example, a "processing system" comprising one or more processors can be utilized to implement an element, or a portion of any element, or a combination of elements. Processor examples include microprocessors, microcontrollers, digital signal processors (DSPs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), state machines, gated logic, discrete hardware circuits, and other hardware configured to perform the various functions described throughout this disclosure. One or more processors in a processing system can execute software. Software should be broadly interpreted as instructions, instruction sets, codes, code segments, program codes, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable code, execution threads, processes, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description languages, or other.

[0044] Therefore, in one or more embodiments, one or more of the functions described can be implemented with hardware, software, firmware or any combination thereof. If implemented in software, these functions can be stored in or encoded as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media. Storage media can be any available medium that a computer can access. As an example and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, disk storage or other magnetic storage device, or any other medium that can be used to carry or store required program code in the form of an instruction or data structure, and can be accessed by a computer. Disks or optical disks used herein include compact disks (CDs), laser disks, optical disks, digital versatile disks (DVD-disks) and floppy disks, wherein disks usually reproduce data magnetically, and optical disks use lasers to reproduce data optically. The above combination should also be included in the scope of computer-readable media.

[0045] The above description provided enables those skilled in the art to implement the various embodiments described herein. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments. Therefore, the claims are not intended to be limited to the implementations shown herein, but rather should conform to the full scope consistent with the language claims, wherein, unless explicitly stated so, reference to an element in the singular is not intended to mean "one and only one", but rather "one or more". Unless otherwise specifically stated, the term "some" refers to one or more. All structural and functional equivalents of the elements of the various embodiments described herein that are known or will later be known to those of ordinary skill in the art are intended to be covered by the claims. Furthermore, nothing disclosed herein is intended to be specifically for public use, regardless of whether such disclosure is explicitly cited in the claims. Claim elements should not be interpreted as parts plus function unless the phrase "parts for..." is used to expressly describe the element.

Claims

1. A method for determining an effective color space of a display, comprising: acquiring information of the display, and determining a color volume of the display based on the information; defining, for at least one color volume vertex, a two-dimensional parametric surface that intersects the color volume of the display; for the at least one color volume vertex, mapping the two-dimensional parametric surface to a planar bitmap at least in part by mapping color space parameters corresponding to the two-dimensional parametric surface to pixel locations of the planar bitmap via a parametric equation, and applying one or more filters to convert a set of adjacent pixels into a discrete color block; displaying the planar bitmap on the display and for at least one color volume vertex; displaying on the display a prompt for: selecting a point on the planar bitmap at which the color blocks appear to be the same or begin to appear to be the same; receiving, for at least one color volume vertex and based on the hint, the selection by the user of the point on the planar bitmap corresponding to the perceived maximum color; determining the effective color space of the display as a range of colors that the display is capable of displaying based at least in part on the perceived maximum color selected for the at least one color volume vertex; as well as The effective color space of the display is transmitted to a source for use in rendering an image based on the effective color space.

2. The method of claim 1 , wherein applying the one or more filters comprises at least one of: selecting, for each discrete color block, an average color for the discrete color block, or quantizing the average color for the discrete color block to the nearest color value. 3 . The method of claim 1 , wherein the two-dimensional parametric surface for the at least one color volume vertex is defined to include a slice of the color space along a two-dimensional chromaticity axis at constant brightness. 4 . The method of claim 1 , wherein the two-dimensional parametric surface for the at least one color volume vertex being a white point is characterized by luminance and correlated color temperature. 5 . The method of claim 1 , wherein the at least one color volume vertex comprises at least one red primary, at least one green primary, at least one blue primary, at least one white point, and at least one black point.

6. The method of claim 5, wherein the at least one white point comprises a white point of a ten percent window and a white point of a one hundred percent window. The method of claim 1 , wherein the source comprises an application executing on a computing device coupled to the display.

8. An apparatus for determining an effective color space of a display, comprising: a memory storing one or more parameters or instructions for determining the effective color space of the display; as well as at least one processor coupled to the memory, wherein the at least one processor is configured to: acquiring information of the display, and determining a color volume of the display based on the information; defining, for at least one color volume vertex, a two-dimensional parametric surface that intersects the color volume of the display; for the at least one color volume vertex, mapping the two-dimensional parametric surface to a planar bitmap at least in part by mapping color space parameters corresponding to the two-dimensional parametric surface to pixel locations of the planar bitmap via a parametric equation, and applying one or more filters to convert a set of adjacent pixels into a discrete color block; displaying the planar bitmap on the display and for the at least one color volume vertex; displaying on the display a prompt for: selecting a point on the planar bitmap at which the color blocks appear to be the same or begin to appear to be the same; receiving, for the at least one color volume vertex and based on the hint, the selection by the user of the point on the planar bitmap corresponding to the perceived maximum color; determining the effective color space of the display as a range of colors that the display is capable of displaying based at least in part on the perceived maximum color selected for the at least one color volume vertex; as well as The effective color space of the display is transmitted to a source for use in rendering an image based on the effective color space.

9. The apparatus of claim 8 , wherein the at least one processor is configured to apply the one or more filters at least in part by at least one of: selecting, for each discrete color block, an average color for the discrete color block, or quantizing the average color to a nearest color value for the discrete color block.

10. The apparatus of claim 8, wherein the two-dimensional parametric surface for the at least one color volume vertex is defined to include a slice of the color space along a two-dimensional chromaticity axis at constant luminance.

11. The apparatus of claim 8, wherein the two-dimensional parametric surface for the at least one color volume vertex being a white point is characterized by luminance and correlated color temperature.

12. The apparatus of claim 8, wherein the at least one color volume vertex comprises at least one red primary, at least one green primary, at least one blue primary, at least one white point, and at least one black point.

13. The apparatus of claim 12, wherein the at least one white point comprises a white point of a ten percent window and a white point of a one hundred percent window.

14. The apparatus of claim 8, wherein the source comprises an application executed by the at least one processor.

15. A non-transitory computer-readable medium comprising code executable by one or more processors for determining an effective color space for a display, the code comprising code for: acquiring information of the display, and determining a color volume of the display based on the information; defining, for at least one color volume vertex, a two-dimensional parametric surface that intersects the color volume of the display; for the at least one color volume vertex, mapping the two-dimensional parametric surface to a planar bitmap at least in part by mapping color space parameters corresponding to the two-dimensional parametric surface to pixel locations of the planar bitmap via a parametric equation, and applying one or more filters to convert a set of adjacent pixels into a discrete color block; displaying the planar bitmap on the display and for the at least one color volume vertex; displaying on the display a prompt for: selecting a point on the planar bitmap at which the color blocks appear to be the same or begin to appear to be the same; receiving, for the at least one color volume vertex and based on the hint, the selection by the user of the point on the planar bitmap corresponding to the perceived maximum color; determining the effective color space of the display as a range of colors that the display is capable of displaying based at least in part on the perceived maximum color selected for the at least one color volume vertex; as well as The effective color space of the display is transmitted to a source for use in rendering an image based on the effective color space.

Citation Information

Patent Citations

  • Color image display accuracy using green-locked gray balance estimate

    US20020015044A1

  • Dynamic generation of test images for ambient light testing

    US20140184648A1

  • Graphical user interface for controlling color gamut clipping

    US5416890A