Some electronic devices include electronic circuitry for performing processing. As processing capabilities have expanded, electronic devices have been utilized to perform more functions. For example, a variety of electronic devices are used for work, communication, and entertainment. Electronic devices may be linked to other devices and may communicate with other devices.
Different computer monitors or display devices may not have a consistent color. For example, different display devices may not have matching color spaces rather than fluctuating color spaces. When a user has two monitors side-by-side, one monitor may appear to be more red, and the other monitor may appear to be more green. Depending on the manufacturer of the hardware involved, one monitor may appear to be more blue than another monitor. When the colors of computer monitors being used are not consistent, it may cause a poor user experience.
In some examples, when a computing device is running the Microsoft® Windows® operating system, a user may use the Color Management tool found in the Control Panel to manually adjust color profiles for computer monitors. A color profile is a set of data that characterizes a color input or output device. Generally speaking, a profile provides a mapping between the device source and a profile connection space and may define the color gamut that will be displayed by the device (or types of devices corresponding to the device classification).
A user may access the Color Management tool to try to fix color mismatches between monitors. Different color profiles may be installed or applied for a monitor to change how the monitor displays color. In one example, a color profile may be an International Color Consortium (ICC) profile. The user may view the monitors and manually change ICC profiles on the computing device until the user is satisfied with the color matching of the monitors.
As explained more fully below, techniques are described herein that provide a computing device that updates color profiles for a multiple monitor configuration to provide a more automated color match between the multiple monitors. The computing device obtains monitor identifications for the monitors and sends the identifications to a color profile server via a computer network. The server on the computer network receives the identifications and determines the new set of calibrated profiles for the monitors based on the specific monitor combination and sends the new set of profiles back to the computing device. The computing device then receives the new set of profiles from the server and installs them on the computing device.
Throughout the drawings, similar reference numbers may designate similar or identical elements. When an element is referred to without a reference number, this may refer to the element generally, with and/or without limitation to any particular drawing or figure. In some examples, the drawings are not to scale and/or the size of some parts may be exaggerated to more clearly illustrate the example shown. Moreover, the drawings provide examples in accordance with the description. However, the description is not limited to the examples provided in the drawings.
A computing device 102 is an electronic device that includes electronic circuitry (e.g., integrated circuitry, a chip(s), etc.). Examples of electronic devices may include computers, smartphones, tablet devices, game consoles, etc. Some examples of electronic devices may utilize circuitry (e.g., controller(s) and/or processor(s), etc.) to perform an operation or operations. In some examples, electronic devices may execute instructions stored in memory 104 to perform the operation(s). Instructions may be code and/or programming that specifies functionality or operation of the circuitry. In some examples, instructions may be stored in memory 104 (e.g., Read-Only Memory (ROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory, dynamic random-access memory (DRAM), synchronous DRAM (SDRAM), magnetoresistive random-access memory (MRAM), phase-change random-access memory (PCRAM), hard disk drive (HDD), solid state drive (SSD), optical drive, etc.). In some examples, different circuitries in an electronic device may store and/or utilize separate instructions for operation.
The processor 106 may be any of a central processing unit (CPU), a digital signal processor (DSP), a semiconductor-based microprocessor, graphics processing unit (GPU), field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), and/or other hardware device suitable for retrieval and execution of instructions stored in the memory 104. The processor 106 may fetch, decode, and/or execute instructions stored in the memory 104. In some examples, the processor 106 may include an electronic circuit or circuits that include electronic components for performing a function or functions of the instructions. In some examples, the processor 106 may perform one, some, or all of the operations, aspects, etc., described in connection with one, some, or all of
The memory 104 may be any electronic, magnetic, optical, or other physical storage device that contains or stores electronic information (e.g., instructions and/or data). The memory 104 may be, for example, Random-Access Memory (RAM), EEPROM, a storage device, an optical disc, and/or the like. In some examples, the memory 104 may be volatile and/or non-volatile memory, such as DRAM, EEPROM, MRAM, PCRAM, memristor, flash memory, and/or the like. In some implementations, the memory 104 may be a non-transitory tangible machine-readable storage medium, where the term “non-transitory” does not encompass transitory propagating signals. In some examples, the memory 104 may include multiple devices (e.g., a RAM card and a solid-state drive (SSD)). In some examples, the memory 104 of the computing device 102 may store instructions as shown.
The computing device 102 includes a first video interface 108 for connecting to a first monitor and a second video interface 110 for connecting to a second monitor. The processor 106 may be in electronic communication with the first video interface 108 and the second video interface 110. A computing device 102 may include additional components (not shown) and/or some of the components described herein may be removed and/or modified without departing from the scope of this disclosure.
In some examples, a video interface may be a video port, a video card, or any other communications port or link on the computing device 102 capable of interfacing with a computer monitor. For example, a computing device may be linked to another computing device or devices using a wired link. More specifically, a computing device may include a wired communication interface (e.g., connector or connectors) for connecting electronic devices such as display devices, monitors, televisions, etc. Connectors are structures that enable forming a physical and/or electrical connection. For instance, a connector may be a port, plug, and/or electrical interface, etc. A connector or connectors may allow electronic devices to be connected with a cable or cables. Examples of connectors include DisplayPort™ (DP) connectors, High-Definition Multimedia Interface (HDMI®) connectors, Universal Serial Bus (USB) connectors, Lightning® connectors, Digital Visual Interface (DVI) connectors, OCuLink connectors, Ethernet connectors, etc.
In some examples, a computing device 102 may be linked to another electronic device (such as a monitor or display device) with a wireless link. For instance, a computing device may include a wireless communication interface to send and/or receive wireless (e.g., radio frequency (RF)) signals. Examples of wireless communication interfaces may include an Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi) interfaces, Bluetooth interfaces, cellular (e.g., 3G, Long-Term Evolution (LTE), 4G, 5G, etc.) interfaces, etc.
A link between electronic devices may be a direct link (e.g., without an intervening device) or an indirect link (e.g., with an intervening device or devices). For instance, a link may be established between electronic devices over a network using a hub(s), repeater(s), splitter(s), router(s), and/or switch(es), etc.
The memory 104 may store a first monitor identification 112 that identifies the first monitor and a second monitor identification 114 that identifies the second monitor. The memory 104 may also store a first color profile 116 to be used with the first monitor and a second color profile 118 to be used with the second monitor. The first color profile 116 and the second color profile 118 are the color profiles received by the color database.
The memory 104 may store instructions to be executed by the processor 106. Obtaining instructions 120 cause, when executed by a processor 106, the obtaining of a monitor identification from a monitor. Sending instructions 122 cause, when executed by a processor 106, sending monitor identifications to a color profile server. Receiving instructions 124 cause, when executed by a processor 106, receiving color profiles from the color profile server. Causing instructions 126 cause, when executed by a processor 106, the installation of the color profiles on the computing device 102. Instructions causing installation may also include instructions causing activation of the color profiles so that they are actively being used by the computing device 102 with the monitors. By executing the instructions in the memory 104, the processor 106 obtains the first monitor identification 112 from the first monitor and obtains the second monitor identification 114 from the second monitor. The processor 106 then sends the first monitor identification 112 and the second monitor identification 114 to the color profile server. The processor 106 then receives the first color profile 116 and the second color profile 118 from the color profile server and causes the first color profile 116 and the second color profile 118 to be installed on the computing device 102.
The computing device 202 may be an example of the computing device 102 described in
The computing device 202 includes a first color profile 216 that is being used with the first monitor 228 and a second color profile 218 that is being used with the second monitor 230. In some examples, these color profiles may be ICC profiles. The combination of the first color profile 216 and the second color profile 218 may be referred to as a set of color profiles 244. Color profile synchronization instructions 238 cause, when executed by a processor, the synchronization of the color profiles on a computing device with color profiles from the color database device 246. In some examples, the color profile synchronization instructions 238 may be executed automatically without user interaction. In some examples, the color profile synchronization instructions 238 may be executed when a new monitor is detected, when an electrical connection is made with a monitor, in response to a calibration request, on a periodic basis, or a combination thereof. In further examples, when an unrecognized monitor is detected, the color profile synchronization instructions 238 may use a default identification for a generic monitor profile. In another example, the color database 246 may push updates of the color profiles down to the computing device 202 whenever updates are made to the color database device 246. The color profile synchronization instructions 238 cause, when executed by a processor, the computing device 202 to obtain or access the first panel identification 232 and the second panel identification 234 and may send this identification combination 240 to the color database interface device 256 via a computer network 242.
In some examples, the computing device 202 may include a network interface 236 through which the processor 206 may communicate with an external device or devices (e.g., remote device(s)). For example, the network interface 236 may be a network interface device to establish wireless or wired communication on a network. In some examples, the computing device 202 may be in communication with (e.g., have a communication link with) a remote computing device via a network. Examples of remote computing devices may include computing devices, server computers, desktop computers, laptop computers, smartphones, tablet devices, game consoles, etc. Examples of the network may include a local area network (LAN), wide area network (WAN), the Internet, cellular network, Long Term Evolution (LTE) network, 5G network, and/or combinations thereof, etc.
The color database interface device 256 is a computing device. The color database interface device 256 includes a processor 206 and memory 204. The processor 206 may be an example of the processor 106 described in
The color database interface device memory 204 may store the received panel combination 260 from the computing device 202. The panel combination may be data including the first panel identification 232 and the second panel identification 234. The color database interface device 256 uses this panel combination 260 to look up and find a matching or corresponding combination in the color database device 246. The color database device 246 is a computing device that includes a database storing information about different combinations of computer panels and color matching profiles. The color database may be any type of data storage structure. In some examples, the color database 246 may have an exact match for the panel combination 260. In other examples, there may not be an exact match but a closely matching combination. The panel combination 248 that is found or matched in the color database is the corresponding monitor combination. In operation, the color database interface device 256 receives a panel combination 260 from a remote computing device 202 and uses that panel combination 260 to look up a reference panel combination 262 in the color database device 246, which may be an exact match or it may be a close match. A close match may be a match that is not exact, but has been determined to include a substitute for a monitor that behaves similarly to the specific monitor identified.
The memory 204 may store receiving instructions 224 that cause, when executed by a processor 206, and the color database interface device 256 to receive the panel combination 260 via the network interface 258. The determining instructions 264 cause, when executed by a processor 206, the determination of a corresponding reference panel combination 262 from the panel combination 260 received. The corresponding panel combination 262 is determined by accessing the color database 246. Obtaining instructions 220 cause, when executed by a processor 206, the obtaining of color profiles from the color database based on the panel combination 260. The color database interface device 256 accesses the color database device 246. Sending instructions 222 cause, when executed by a processor 206, the color database interface device 256 to send the obtained color profiles to the remote computing device 202 via the computer network 242.
The color database device 246 is a computing device that includes a database storing information about different combinations of computer panels and color matching profiles. The color database includes multiple panel combination 248 records where each record includes calibrated color profiles 250. Panel combination 260 of the color database interface device 256 is the panel combination 260 received from the remote computing device 202, and the panel combination 248 records are the panel combination 248 records that reside in the color database device 246. The database may be indexed by the panel identifications and combinations so that the database may be accessed or searched using the panel identifications and combinations. When the matching panel combination 248 is found, the record may include reference color profiles for that monitor combination. The reference color profiles in the color database may have been color calibrated and color matched for those specific panels to provide a substantial color match between the panels in the panel combination 248. The reference color profiles in the database may have been selected manually or they may be selected automatically by a computing device based on known color information about each panel used. The color database may continue to grow over time as more panel combinations 248 are added with reference color profiles for each combination of panels added to the database (e.g., for each combination of panels of monitor combinations recognized by the system). In some examples, the color database includes many different panel combinations 248. As shown in
In some examples, the color calibrated profiles set 250 may be received by the computing device 202 based on a calibration operation between a first target profile and a second target color profile on the computing device. If color profiles are used to define the space of operation of the color, then target color profiles may be the overall color space to be achieved when combining monitors. The calibration of such target color profiles on the computing device 202 may initiate the synchronization of color profiles on the computing device 202 with color calibrated profiles from the color database device 246.
Monitors have an identification that may be provided to a computing device that is connected to the monitor. The identification provided by a monitor may include a number of different pieces of information including scaler model identifier, application-specific integrated circuit (ASIC) identification, panel identification, firmware identification, and the hardware manufacturer identification. The first computing device 302 obtains the identification information from the first monitor 328, which includes a scaler, application-specific integrated circuit (ASIC) identification (Scaler A 344), a display panel identification or identifier (Panel A 346), and a hardware (H/W) manufacturer identification (ID) (H/W ID A 348). The first computing device 302 also obtains the identification information from the second monitor 330, which is Scaler B 350, Panel B 352, and H/W ID B 354. The first computing device 302 uses the panel identifications for each of the monitors as the first combination 308. The first combination 308 includes the first panel identification and the second panel identification, which are the Panel A 346 and Panel B 352 identifiers in
The second computing device 304 is in communication with a third monitor 332 and a fourth monitor 334. The third monitor 332 identification information includes Scaler A 356, Panel C 358, and H/W ID C 360. The fourth monitor 334 identification information includes Scaler C 362, Panel A 364, and H/W ID D 366. The third monitor 332 has a panel identification as panel C 358 and the fourth monitor 334 has a panel identification as panel A 364. The second computing device 304 uses panel C 358 and panel A 364 as the second combination 310 of panels. This second combination 310 of panels is sent to the color database server 314 that uses the second combination 310 to search the color database 316 for a matching second panel combination 320. The second panel combination 320 is found in the color database 316, and the new color profiles (321, 323) from the color database 316 are provided to the second computing device 304 from the database server via the computer network 342. The second computing device 304 receives these new color profiles (321, 323) and installs them on the second computing device 304.
The third computing device 306 is connected to three monitors, a fifth monitor 336, a sixth monitor 338, and a seventh monitor 340. The fifth monitor 336 identification information includes Scaler D 368, Panel D 370, and H/W ID E 372. The sixth monitor 338 identification information includes Scaler B 374, Panel A 376, and H/W ID F 378. The seventh monitor 340 identification information includes Scaler C 380, Panel C 382, and H/W ID G 384. As shown, the fifth monitor 336 has a panel identification as panel D 370, the sixth monitor 338 has a panel identification as panel A 376, and the seventh monitor 340 has a panel identification as panel C 382. The third computer may use panel D 370, panel A 376, panel C 382 as the third combination 312 of panels that is sent to the color database server 314 and used to locate the matching panel combination 322 in the color database 316. The new color profiles (325, 327, 329) are obtained from the color database 316 and sent back to the third computing device 306 from the color database server 314. The third computer then installs these new color profiles (325, 327, 329) and activates them so that they are being used with the fifth monitor 336, the sixth monitor 338, and the seventh monitor 340. In some examples, the color database 316 may include additional panel combinations having calibrated color profiles that are not shown in
At 502, the computing device obtains a first monitor identification from the first monitor. At 504, the computing device obtains a second monitor identification from the second monitor. At 506, the computing device sends a first panel identification based on the first monitor identification and a second panel identification based on the second monitor identification to a color profile server. Examples of a color profile server are a color database interface device 256 and a color database device 246.
At 508, the color profile server receives the panel combination via a computer network. At 510, the server finds a corresponding panel combination in a color database. At 512, the server obtains color profiles from the found corresponding panel combination. At 514, the server sends the color profiles to the computing device via the computer network.
At 516, the computing device receives the first color profile and the second color profile from the color profile server. At 518, the computing device causes the first color profile and the second color to install on the computing device. Installing profiles on the computing device may include causing the processing pipeline of the monitor to use resources derived from the color profiles.
The computer-readable medium 602 may include data, executable instructions, and/or executable code. For example, the computer-readable medium 602 may include obtaining instructions 620, sending instructions 622, receiving instructions 624 and installing instructions 626.
The obtaining instructions 620 may be instructions that, when executed by a processor, cause the processor to obtain panel identifications from connected monitors. For example, obtaining instructions 620 cause, when executed by a processor, the processor to obtain a first panel identification from a first monitor and a second panel identification from a second monitor. The sending instructions 622 cause, when executed by a processor, the processor to send the first panel identification and the second panel identification to a remote color profile server. The receiving instructions 624 cause, when executed by a processor, the receiving of a new first color profile and a new second color profile from the color profile server. The installing instructions 626 cause, when executed by a processor, the processor to install or otherwise activate the new received color profiles on the computing device so that they will be used with the first monitor and the second monitor.
A technique or techniques, a method or methods (e.g., method(s) 400 and/or 500) and/or an operation or operations described herein may be performed by (and/or on) an electronic device and/or a computing device. In some examples, an electronic device and/or a computing device may include circuitry (e.g., a processor with instructions and/or connection interface circuitry) to perform a technique or techniques described herein.
As used herein, the term “and/or” may mean an item or items. For example, the phrase “A, B, and/or C” may mean any of: A (without B and C), B (without A and C), C (without A and B), A and B (but not C), B and C (but not A), A and C (but not B), or all of A, B, and C.
While various examples are described herein, the disclosure is not limited to the examples. Variations of the examples described herein may be within the scope of the disclosure. For example, aspects or elements of the examples described herein may be omitted or combined.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2021/050731 | 9/16/2021 | WO |