US20050270302A1 - Method and apparatus for modifying graphics content prior to display for color blind use - Google Patents
Method and apparatus for modifying graphics content prior to display for color blind use Download PDFInfo
- Publication number
- US20050270302A1 US20050270302A1 US11/188,045 US18804505A US2005270302A1 US 20050270302 A1 US20050270302 A1 US 20050270302A1 US 18804505 A US18804505 A US 18804505A US 2005270302 A1 US2005270302 A1 US 2005270302A1
- Authority
- US
- United States
- Prior art keywords
- color
- data
- graphics
- modifying
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
Definitions
- the present invention relates generally to color blind systems and more particularly to filtering graphics to enable color-blind viewing.
- Computer graphics systems are commonly used for displaying graphical representations of objects on a two-dimensional video display screen.
- Current computer graphics systems provide highly detailed representations and are used in a variety of applications.
- Such systems typically come pre-installed with a plethora of accessibility tools for people with disabilities.
- providing color corrected graphics for people who suffer from color blindness still remains a challenge.
- each of the three types of cones, red cones, blue cones and green cones has a different range of light sensitivity.
- the cone population consists of approximately 74 percent red cones, 10 percent green cones and 16 percent blue cones.
- the stimulation of cones in various combinations accounts for the perception of colors. For example, the perception of yellow results from a combination of inputs from green and red cones, and relatively little input from blue cones. If all three cones are stimulated, white is perceived as the color. Defects in color vision occur when one of the three-cone cell coding structures fails to function properly. One of the visual pigments may be functioning abnormally, or it may be absent altogether. Most color-deficient individuals have varieties of red or green deficiency.
- FIG. 1 illustrates a block diagram of an embodiment for providing color corrected graphics for color-blind users.
- FIG. 2 illustrates a block diagram of an embodiment of a computer graphics system for implementing color corrected graphics for color-blind users.
- FIG. 3 illustrates a block diagram of an embodiment of a graphics pipeline including implementation of the color corrected graphics at the render and raster stages.
- FIG. 4 illustrates a block diagram of an embodiment of a graphics device including a color blind filter implemented in the render stage.
- FIG. 5 ( a ) illustrates a non-color corrected image as seen by a color-blind user.
- FIG. 5 ( b ) illustrates a color-corrected image as seen by a color-blind user.
- FIG. 5 ( c ) illustrates a color-corrected generated by overlaying a pattern on top of a difficult to see color.
- FIG. 6 illustrates a flow diagram of an embodiment of a process for providing color corrected graphics for color-blind users implemented at the render stage.
- FIG. 7 illustrates a block diagram of an embodiment of a graphics device including a color blind filter implemented in the raster stage.
- FIG. 8 illustrates a flow diagram of an embodiment of a process for providing color corrected graphics for color-blind users implemented at the raster stage.
- FIG. 1 illustrates a block diagram of an embodiment 10 for providing color corrected graphics for color-blind users.
- Embodiments of the present invention provide a method and apparatus for dynamically modifying computer graphics content for colors and/or patterns that are problematic for visually challenged, in particular color-blind viewers, prior to display.
- graphics content may be modified in various stages of the graphics pipeline, including but not limited to, the render or raster stage, such that images provided to the user are visible to color-blind viewers upon display without further modification.
- embodiments of the present invention may be implemented in hardware, software or a combination thereof.
- graphics content 12 in the form of an original screen image is provided to the color-blind filter 14 of the present invention.
- the color-blind filter 14 detects colors and modifies images.
- the color-blind filter analyzes computer graphics content in accordance with predefined color profiles that identify which graphics may be problematic for color challenged users. It then modifies problematic graphics content that falls within at least one of the predefined color profiles such that the graphics content is visible to color challenged users.
- Display technology 16 such as a graphics card or operating system video card driver displays the modified image.
- Embodiments of the present invention may be implemented in hardware or software, or a combination of both. However, embodiments of the invention may be implemented as computer programs executing on programmable systems comprising at least one processor, a data storage system (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Program code may be applied to input data to perform the functions described herein and generate output information. The output information may be applied to one or more output devices, in known fashion.
- a processing system includes any system that has a processor, such as, for example, a digital signal processor (DSP), a microcontroller, an application specific integrated circuit (ASIC), or a microprocessor.
- DSP digital signal processor
- ASIC application specific integrated circuit
- the programs may be implemented in a high level procedural or object oriented programming language to communicate with a processing system.
- the programs may also be implemented in assembly or machine language, if desired.
- the invention is not limited in scope to any particular programming language. In any case, the language may be a compiled or interpreted language.
- the programs may be stored on a storage media or device (e.g., hard disk drive, floppy disk drive, read only memory (ROM), CD-ROM device, flash memory device, digital versatile disk (DVD), or other storage device) readable by a general or special purpose programmable processing system, for configuring and operating the processing system when the storage media or device is read by the processing system to perform the procedures described herein.
- a storage media or device e.g., hard disk drive, floppy disk drive, read only memory (ROM), CD-ROM device, flash memory device, digital versatile disk (DVD), or other storage device
- ROM read only memory
- CD-ROM device compact disc-read only memory
- flash memory device e.g., compact flash memory
- DVD digital versatile disk
- Embodiments of the invention may also be considered to be implemented as a machine-readable storage medium, configured for use with a processing system, where the storage medium so configured causes the processing system to operate in a specific and predefined manner to perform the functions described herein.
- Sample system 100 may be used, for example, to execute the processing for methods in accordance with the present invention, such as the embodiment described herein.
- Sample system 100 is representative of processing systems based on the microprocessors available from Intel Corporation, although other systems (including personal computers (PCs) having other microprocessors, engineering workstations, set-top boxes and the like) may also be used.
- sample system 100 may be executing a version of the WINDOWS TM operating system available from Microsoft Corporation, although other operating systems and graphical user interfaces, for example, may also be used.
- FIG. 2 illustrates a block diagram of an embodiment of a computer graphics system for implementing color corrected graphics for color-blind users.
- the computer system 100 includes central processor 102 , graphics and memory controller 104 including graphics engine 106 , memory 108 and display device 114 .
- Processor 102 processes data signals and may be a complex instruction set computer (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a process implementing a combination of instruction sets, or other processor device, such as a digital signal processor, for example.
- CISC complex instruction set computer
- RISC reduced instruction set computing
- VLIW very long instruction word
- Processor 102 may be coupled to common bus 112 that transmits data signals between processor 102 and other components in the system 100 .
- FIG. 2 is for illustrative purposes only.
- the present invention can also be utilized in a discrete graphics configuration.
- the present invention can also be utilized in a discret
- Processor 102 issues signals over common bus 112 for communicating with memory 108 or graphics and memory controller in order to manipulate data as described herein. Processor 102 issues such signals in response to software instructions that it obtains from memory 108 .
- Memory 108 may be a dynamic random access memory (DRAM) device, a static random access memory (SRAM) device, or other memory device.
- Memory 108 may store instructions and/or data represented by data signals that may be executed by processor 102 , graphics engine 106 or some other device. The instructions and/or data may comprise code for performing any and/or all of the techniques of the present invention.
- Memory 108 may also contain software and/or data.
- An optional cache memory 110 may be used to speed up memory accesses by the graphics engine 106 by taking advantage of its locality of access. One skilled in the art will recognize that the cache memory 110 can reside internal or external to the processor 102 or graphics engine 106 .
- graphics engine 106 can offload from processor 102 many of the memory-intensive tasks required for rendering an image.
- Graphics engine 106 processes data signals and may be a complex instruction set computer (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a process implementing a combination of instruction sets, or other processor device, such as a digital signal processor, for example.
- Graphics engine 106 may be coupled to common bus 112 that transmits data signals between graphics engine 106 and other components in the system 100 , including display cache 110 and display device 114 .
- Graphics engine 106 includes rendering hardware that among other things writes specific attributes (e.g.
- Display device 114 may comprise a computer monitor, television set, flat panel display or other suitable display device.
- Memory 108 stores a host operating system that includes one or more rendering programs to build the images of graphics primitives for display.
- the method for providing color corrected graphics content to color-blind users may be stored in memory 108 .
- the graphics primitives produced are laid out or rendered in the buffer memory for display on display device 114 .
- System 100 includes graphics engine 106 , such as a graphics accelerator that uses customized hardware logic device or a co-processor 104 to improve the performance of rendering at least some portion of the graphics primitives otherwise handled by host rendering programs.
- the graphics engine 106 is controlled by the host operating system program and its host graphics application program interface (API) through a driver program.
- the graphics primitives produced thereby are laid out or rendered in the buffer memory for display on display device 114 .
- API application program interface
- FIG. 3 illustrates a block diagram of an embodiment 200 of a graphics pipeline including implementation of the color corrected graphics at the render and raster stage.
- Rendering is considered to be the entire process of taking models (usually 3D although could be 2D), performing lighting, viewing, clipping, composition and other activities to arrive at a final 2D image.
- Rasterization, or Rastering is considered to be a single stage process of determining a set of pixels values (based upon a current display mode color depth, etc.), for display on the screen.
- Rendering is typically a multi-stage process, whereas rasterization is typically a one-stage process. The result of a rendering pipeline is fed into the raster for display.
- Modern computer monitors are commonly called “raster display devices” for this reason—they display information on screen via a set of bytes that represent a series of pixels. This set of pixels is often called the refresh buffer, or more commonly the frame buffer. Pixels in the frame buffer are piped to the raster display (e.g. your monitor). For a very simple display that was just a single bit-mapped image, there is no rendering.
- the graphics engine simply rasters (i.e. BitBlt's) the image into the graphics card frame buffer, or directly to the display.
- the color-blind filter can be implemented anywhere along the graphics pipeline.
- a rendering engine 202 generates graphics data based upon the geometric primitives and associated rendering commands.
- a color-blind analyzer implemented via display controller or display device driver 204 , in communication with the rendering engine 202 analyzes graphics data generated by the rendering engine 202 and modifies selected graphics data into color corrected data suitable for a visually challenged viewer.
- the rendering engine 202 then concludes rendering of the color corrected data into a color corrected image for further processing 206 208 and display 210 .
- a scan-convert processor converts the geometric primitives to produce rasterized pixel data including color data for pixel locations in the image.
- a private memory area separate from the frame buffer stores the rasterized pixel data.
- a color-blind analyzer in communication with the private memory area analyzes the rasterized pixel data stored in the private memory area and modifies selected rasterized pixel data into color corrected pixel data for further processing 206 208 and display 210 .
- FIG. 4 illustrates a block diagram of an embodiment 300 of a graphics device 302 including a color blind filter 304 implemented in the render stage 306 .
- color-blind modification is implemented at the render stage of the graphics pipeline prior to rasterization of the image into the frame buffer.
- Rendering is the process of generating two-dimensional images of data for display on a monitor.
- rendering includes processing geometric primitives (e.g., points, lines and polygons) to determine component pixel values for the monitor display, a process often referred to specifically as rasterization.
- a control unit 308 supervises the operation of the graphics device 302 .
- the control unit 308 passes the graphics data associated with the graphics order on to a rendering pipeline 306 .
- the rendering pipeline 306 transforms the graphics data associated with the graphics order from the model coordinate system to a normalized device coordinate system designated the view coordinate system and clips the graphics data against a predetermined view volume.
- an illumination model is evaluated at various locations (i.e. the vertices of the primitives and/or the pixels covered by a given primitive).
- the transformed and clipped graphics data is then passed on to a rasterization stage 308 that converts the transformed primitives into pixels, and generally stores each primitive's contribution at each pixel.
- a rasterization stage 308 that converts the transformed primitives into pixels, and generally stores each primitive's contribution at each pixel.
- the rendering pipeline 306 may be organized in a variety of architectures and is not limited to the configuration described herein.
- the present invention provides a color correction mechanism with perspective correction that may be integrated into any stage of the rendering pipeline 306 .
- an example of a common graphics pipeline is set forth below.
- a common rendering pipeline 306 includes multiple stages, typically including one or more of the following: modeling 310 , lighting 312 , viewing 314 , clipping 316 , composition 318 and other stages.
- graphics content including but not limited to, images, constructs and shapes are analyzed to determine if there is any content (e.g. colors) that would be problematic for persons with color blindness. If any content is found to be problematic for color-blind users, the contents' properties (or individual pixels if at the raster stage) are modified to reflect adjusted color or pattern shapes that are suitable for color-blind users. For example, analysis of shade properties could indicate a grouping of two or more distinct colors arranged such that a color-bind person would be unable to detect the presence of two separate shades, and would instead see them as just one flat color. Embodiments of the present invention, upon detecting this pattern, would modify one or more of the colors to some other color that will provide contrast to the other shades, allowing the color-blind person to see the distinct color shades, where before there was but one prior to modification.
- content e.g. colors
- stock images, textures, or geometric shapes stored by application programs, as part of graphics libraries, or as part of the graphics subsystem itself could be modified per this invention earlier in the graphics pipeline (i.e. before pixel rasterization) using the same or similar methods.
- a JPEG image texture used in an application could be analyzed to determine if any pixel color patterns would obscure different shades of colors to the color-blind person. If such patterns are found, the individual image pixels could be modified so that when used in the future (e.g. as a texture), the analysis and modification had already been performed.
- the present invention may be implemented in the Graphics Display Interface (GDI) subsystem, some combinations of the GDI and graphics card device driver, or completely in the graphics device driver.
- GDI Graphics Display Interface
- the present invention could also be implemented in a graphics card that facilitates or has rendering capability. In graphics cards with rendering capability, the color-blind modifications can be executed internally on the graphics card.
- the following images result from graphics operands may be contained in either system memory or local memory to facilitate the color-blind modification process: a rendering operand that contains data forming a newly created 2D object 400 (could also be used to create a 3D object) ( FIG. 5 ( a )), a modification operand to analyze and modify the date if the color-blind filter is triggered by a user, a color modification operand 402 that is used to provide an alternative stream of graphics color data instead of the data problematic to a color-blind user ( FIG. 5 ( b )), an overlay operand 404 that is used to provide an alternative stream of graphics data instead of the data problematic to a color-blind user ( FIG. 5 ( c )), and a display operand that contains data used for displaying the modified 3D object. It is contemplated that other operands may be contained in system memory or local memory for color-blind modification such as commands and the like.
- FIG. 6 illustrates a flow diagram of an embodiment 500 of a process for providing color corrected graphics for color-blind users implemented at the render stage.
- the scene is passed to a rendering pipeline (step 502 ) where it is subjected to various processing stages (step 504 ), including one or more of the following: modeling, lighting, viewing, clipping, composition and other stages.
- the graphics content is analyzed to determine if there is any content that would be problematic to a color-blind user (step 506 ). If the content is not problematic for color-blind users (step 508 ), no modifications are made to the graphics content. If the content is problematic for color-blind users (step 508 ), the appropriate changes are made (step 510 ). Steps 506 - 510 are repeated until all of the graphics content is analyzed (step 512 ). The graphics content is then passed to the raster stage for further processing and display (step 514 ).
- FIG. 7 illustrates a block diagram of an embodiment 600 of a graphics device 610 including a color blind filter 602 implemented in the raster stage 604 of the graphics pipeline prior to the image being displayed 614 to a color-blind user.
- a control unit 612 supervises the operation of the graphics device 610 .
- graphics content including but not limited to, images, constructs and shapes are analyzed to determine if there content (e.g. colors) that would be problematic for persons with color blindness. If any content is found to be problematic for color-blind users, the contents' properties are modified to reflect adjusted color or pattern shapes that are suitable for color-blind users.
- content e.g. colors
- the color-blind filter for improving or modifying color images according to the invention can be implemented in many ways.
- One skilled in the art will recognize that the present invention is not limited to a particular implementation.
- simply changing the color can be used to generate an image amenable to a color-blind user.
- colors that are difficult to for color-blind users to discern such as red and green
- Graphics content including colors such as red and green are replaced with non-problematic colors.
- a pattern is overlaid on top any difficult to see colors to provide an image viewable to a color-blind user.
- graphics content is enhanced with underlined text or a black outline.
- colors can be positioned against a background where they can be more visible. If no visibility problems are detected, no modification is made to the graphics content.
- the analysis could be performed as follows: Moving through the from start to finish, take a block of (x 1 , y 1 ), (x 2 , y 2 ) pixels and perform per-pixel color analysis to find color patterns in the frame buffer that would affect the color blind person based upon their specific form of color blindness.
- the problem pixels are modified either individually (to a neutral color such as white or black), or as an aggregate grouping of pixels (create a new pattern overlaid on top of the problem pixel region).
- blocks of individual pixels could be analyzed to determine if color patterns would affect the color blind person based upon their specific form of color blindness.
- the blocks analyzed are not limited to a particular region or shape.
- the regions examined could be in any shape, including but not limited to circles, ovals, triangles and so forth.
- any and all pixels that fall within a specific color range simply be changed to some other neutral color. For example, if shades of the color blue (specified by a range of R,G,B values) are problematic for the color blind user, then all pixels falling within that range of R,G,B values are modified (in this case irrespective of whatever other pixel colors are surrounding them) to some other non-problem color (e.g. white, black, etc.).
- Rastering primitives to generate frame buffer data typically involves dividing the primitive into scan lines, single-pixel thick horizontal or vertical regions of the primitive. Scan lines are also referred to as spans, a term used interchangeably to refer to a scan line or the series of adjacent pixels which make up a scan line. Graphics content may be alternatively located in either of these two memories 606 608 based upon whether the graphics content needs to be analyzed and modified for color-blind users. If the color-blind filter 602 of the present invention is activated, graphics content may be moved to a private area memory 608 where it is analyzed and modified if needed prior to being made available for further processing and display.
- Private area memory 608 is preferably static allocated memory, either already on the graphics card, part of the GDI, or memory mapped to system memory.
- the individual rasterized pixels stored in the private memory area 608 are analyzed to determine if any color combinations exist that would be problematic for persons with color blindness. If so, the individual pixel values are modified accordingly, and the now modified set of scan lines in the private memory area 608 is made available for further processing and display.
- the modified set of scan lines is made available to the graphics card either by copying into the physical graphics card, or moving into the designated location in frame buffer memory 606 .
- the shape/image modifications are executed on the graphics card.
- BitBlitting could be used.
- the following images result from graphics operands may be contained in private area memory 608 to facilitate the color-blind modification process: a raster operand that contains data forming a newly created 2D object 400 (could also be used to create a 3D object) ( FIG. 5 ( a )), a modification operand to analyze and modify the date if the color-blind filter is triggered by a user, a color modification operand 402 that is used to provide an alternative stream of graphics color data instead of the data problematic to a color-blind user ( FIG.
- an overlay operand 404 that is used to provide an alternative stream of graphics data instead of the data problematic to a color-blind user ( FIG. 5 ( c )). It is contemplated that other operands may be contained in private area memory for color-blind modification such as commands and the like.
- the graphics controller processes the three-dimensional color corrected image to be displayed.
- the color corrected graphics content is transferred to the graphics card either by copying into the physical graphics card, or moving into the designated location in system memory.
- the shape/image modifications are executed on the graphics card.
- FIG. 8 illustrates a flow diagram of an embodiment 700 of a process for providing color corrected graphics for color-blind users implemented at the raster stage.
- the scene is passed from the rendering stage to the rasterization stage (step 702 ).
- Scan lines are generated based upon the graphics content received (step 704 ).
- the graphics content is moved to a private area memory (step 706 ) and analyzed to determine if there is any content that would be problematic to a color-blind user (step 708 ).
- step 708 If the content is not problematic for color-blind users (step 708 ), no modifications are made to the graphics content and it is made available for further processing and display (step 714 ) if there is no further graphics content to be processed (step 714 ). If the content is problematic for color-blind users (step 708 ), appropriate changes are made (step 710 ). Steps 708 - 710 are repeated until all of the graphics content is analyzed (step 712 ). The graphics content is then made available for further processing and display (step 714 ).
Abstract
Embodiments of the present invention provide a method and apparatus for dynamically modifying computer graphics content for colors and/or patterns that are problematic for color-blind viewers prior to display. In particular, graphics content may be modified in various stages of the graphics pipeline, including but not limited to, the render or raster stage, such that images provided to the user are visible to color-blind viewers upon display without further modification.
Description
- This Application is a Continuation of Ser. No. 09/991,629, filed on Nov. 21, 2001, entitled “Method and Apparatus for Modifying Graphics Content Prior to Display for Color Blind Users”.
- 1. Field
- The present invention relates generally to color blind systems and more particularly to filtering graphics to enable color-blind viewing.
- 2. Background Information
- Computer graphics systems are commonly used for displaying graphical representations of objects on a two-dimensional video display screen. Current computer graphics systems provide highly detailed representations and are used in a variety of applications. Such systems typically come pre-installed with a plethora of accessibility tools for people with disabilities. Yet, providing color corrected graphics for people who suffer from color blindness still remains a challenge.
- More than 20 million Americans, many of them computer users, experience some form of color blindness, which is the inability to distinguish certain colors. When light enters the eye, it passes through several structures before striking the light sensitive receptors in the retina at the back of the eye. These receptors are called rods and cones. Rod are responsible for night vision, and cones are responsible for color vision, functioning best under daylight conditions.
- Each of the three types of cones, red cones, blue cones and green cones, has a different range of light sensitivity. In an individual with normal color vision, the cone population consists of approximately 74 percent red cones, 10 percent green cones and 16 percent blue cones. The stimulation of cones in various combinations accounts for the perception of colors. For example, the perception of yellow results from a combination of inputs from green and red cones, and relatively little input from blue cones. If all three cones are stimulated, white is perceived as the color. Defects in color vision occur when one of the three-cone cell coding structures fails to function properly. One of the visual pigments may be functioning abnormally, or it may be absent altogether. Most color-deficient individuals have varieties of red or green deficiency.
- Since most color-blind people see black and white accurately, color is not an issue if images are in grayscale. However, most applications and web sites are heavily color reliant. Color is a particular problem with image maps in which clickable areas are delineated by color. Application and website designers have attempted to address this problem by enhancing areas by placing underlined text or a black outline in the image. Another technique is to place colors against an appropriate background where they can be more visible. Furthermore, considering that most color-blind people have a red-green color blindness, limiting using red and green together is another option. However, this limits the palette of acceptable colors. Consequently, very few application and web developers are willing to sacrifice having a flashier site to accommodate color-blind users.
- What is needed therefore is a method, apparatus and system for providing color corrected graphics for color-blind users.
-
FIG. 1 illustrates a block diagram of an embodiment for providing color corrected graphics for color-blind users. -
FIG. 2 illustrates a block diagram of an embodiment of a computer graphics system for implementing color corrected graphics for color-blind users. -
FIG. 3 illustrates a block diagram of an embodiment of a graphics pipeline including implementation of the color corrected graphics at the render and raster stages. -
FIG. 4 illustrates a block diagram of an embodiment of a graphics device including a color blind filter implemented in the render stage. -
FIG. 5 (a) illustrates a non-color corrected image as seen by a color-blind user. -
FIG. 5 (b) illustrates a color-corrected image as seen by a color-blind user. -
FIG. 5 (c) illustrates a color-corrected generated by overlaying a pattern on top of a difficult to see color. -
FIG. 6 illustrates a flow diagram of an embodiment of a process for providing color corrected graphics for color-blind users implemented at the render stage. -
FIG. 7 illustrates a block diagram of an embodiment of a graphics device including a color blind filter implemented in the raster stage. -
FIG. 8 illustrates a flow diagram of an embodiment of a process for providing color corrected graphics for color-blind users implemented at the raster stage. -
FIG. 1 illustrates a block diagram of anembodiment 10 for providing color corrected graphics for color-blind users. Embodiments of the present invention provide a method and apparatus for dynamically modifying computer graphics content for colors and/or patterns that are problematic for visually challenged, in particular color-blind viewers, prior to display. In particular, graphics content may be modified in various stages of the graphics pipeline, including but not limited to, the render or raster stage, such that images provided to the user are visible to color-blind viewers upon display without further modification. As illustrated and discussed in detail below, embodiments of the present invention may be implemented in hardware, software or a combination thereof. - In particular, referring to
FIG. 1 ,graphics content 12 in the form of an original screen image (e.g. in pixels or other format) is provided to the color-blind filter 14 of the present invention. The color-blind filter 14 detects colors and modifies images. In particular, the color-blind filter analyzes computer graphics content in accordance with predefined color profiles that identify which graphics may be problematic for color challenged users. It then modifies problematic graphics content that falls within at least one of the predefined color profiles such that the graphics content is visible to color challenged users.Display technology 16, such as a graphics card or operating system video card driver displays the modified image. - In the detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be understood by those skilled in the art that the present invention maybe practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have been described in detail so as not to obscure the present invention.
- Some portions of the detailed description that follow are presented in terms of algorithms and symbolic representations of operations on data bits or binary signals within a computer. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to convey the substance of their work to others skilled in the art. An algorithm is here, and generally, considered to be a self-consistent sequence of steps leading to a desired result. The steps include physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers or the like. It should be understood, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the specification, discussions utilizing such terms as “processing” or “computing” or “calculating” or “determining” or the like, refer to the action and processes of a computer or computing system, or similar electronic computing device, that manipulate and transform data represented as physical (electronic) quantities within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or display devices.
- Embodiments of the present invention may be implemented in hardware or software, or a combination of both. However, embodiments of the invention may be implemented as computer programs executing on programmable systems comprising at least one processor, a data storage system (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Program code may be applied to input data to perform the functions described herein and generate output information. The output information may be applied to one or more output devices, in known fashion. For purposes of this application, a processing system includes any system that has a processor, such as, for example, a digital signal processor (DSP), a microcontroller, an application specific integrated circuit (ASIC), or a microprocessor.
- The programs may be implemented in a high level procedural or object oriented programming language to communicate with a processing system. The programs may also be implemented in assembly or machine language, if desired. In fact, the invention is not limited in scope to any particular programming language. In any case, the language may be a compiled or interpreted language.
- The programs may be stored on a storage media or device (e.g., hard disk drive, floppy disk drive, read only memory (ROM), CD-ROM device, flash memory device, digital versatile disk (DVD), or other storage device) readable by a general or special purpose programmable processing system, for configuring and operating the processing system when the storage media or device is read by the processing system to perform the procedures described herein. Embodiments of the invention may also be considered to be implemented as a machine-readable storage medium, configured for use with a processing system, where the storage medium so configured causes the processing system to operate in a specific and predefined manner to perform the functions described herein.
- An example of one such type of processing system is shown in
FIG. 2 .Sample system 100 may be used, for example, to execute the processing for methods in accordance with the present invention, such as the embodiment described herein.Sample system 100 is representative of processing systems based on the microprocessors available from Intel Corporation, although other systems (including personal computers (PCs) having other microprocessors, engineering workstations, set-top boxes and the like) may also be used. In one embodiment,sample system 100 may be executing a version of the WINDOWSTM operating system available from Microsoft Corporation, although other operating systems and graphical user interfaces, for example, may also be used. -
FIG. 2 illustrates a block diagram of an embodiment of a computer graphics system for implementing color corrected graphics for color-blind users. Thecomputer system 100 includescentral processor 102, graphics andmemory controller 104 includinggraphics engine 106,memory 108 anddisplay device 114.Processor 102 processes data signals and may be a complex instruction set computer (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a process implementing a combination of instruction sets, or other processor device, such as a digital signal processor, for example.Processor 102 may be coupled tocommon bus 112 that transmits data signals betweenprocessor 102 and other components in thesystem 100.FIG. 2 is for illustrative purposes only. The present invention can also be utilized in a discrete graphics configuration. The present invention can also be utilized in a discrete or other graphics configuration. -
Processor 102 issues signals overcommon bus 112 for communicating withmemory 108 or graphics and memory controller in order to manipulate data as described herein.Processor 102 issues such signals in response to software instructions that it obtains frommemory 108.Memory 108 may be a dynamic random access memory (DRAM) device, a static random access memory (SRAM) device, or other memory device.Memory 108 may store instructions and/or data represented by data signals that may be executed byprocessor 102,graphics engine 106 or some other device. The instructions and/or data may comprise code for performing any and/or all of the techniques of the present invention.Memory 108 may also contain software and/or data. Anoptional cache memory 110 may be used to speed up memory accesses by thegraphics engine 106 by taking advantage of its locality of access. One skilled in the art will recognize that thecache memory 110 can reside internal or external to theprocessor 102 orgraphics engine 106. - In some embodiments,
graphics engine 106 can offload fromprocessor 102 many of the memory-intensive tasks required for rendering an image.Graphics engine 106 processes data signals and may be a complex instruction set computer (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, a process implementing a combination of instruction sets, or other processor device, such as a digital signal processor, for example.Graphics engine 106 may be coupled tocommon bus 112 that transmits data signals betweengraphics engine 106 and other components in thesystem 100, includingdisplay cache 110 anddisplay device 114.Graphics engine 106 includes rendering hardware that among other things writes specific attributes (e.g. colors) to specific pixels ofdisplay 114 and draw complicated primitives ondisplay device 114. Graphics andmemory controller 104 communicates withdisplay device 114 for displaying images rendered or otherwise processed by agraphics controller 104 for displaying images rendered or otherwise processed to a user.Display device 114 may comprise a computer monitor, television set, flat panel display or other suitable display device. -
Memory 108 stores a host operating system that includes one or more rendering programs to build the images of graphics primitives for display. In particular, the method for providing color corrected graphics content to color-blind users may be stored inmemory 108. The graphics primitives produced are laid out or rendered in the buffer memory for display ondisplay device 114.System 100 includesgraphics engine 106, such as a graphics accelerator that uses customized hardware logic device or a co-processor 104 to improve the performance of rendering at least some portion of the graphics primitives otherwise handled by host rendering programs. Thegraphics engine 106 is controlled by the host operating system program and its host graphics application program interface (API) through a driver program. The graphics primitives produced thereby are laid out or rendered in the buffer memory for display ondisplay device 114. -
FIG. 3 illustrates a block diagram of anembodiment 200 of a graphics pipeline including implementation of the color corrected graphics at the render and raster stage. Rendering is considered to be the entire process of taking models (usually 3D although could be 2D), performing lighting, viewing, clipping, composition and other activities to arrive at a final 2D image. Rasterization, or Rastering, is considered to be a single stage process of determining a set of pixels values (based upon a current display mode color depth, etc.), for display on the screen. Rendering is typically a multi-stage process, whereas rasterization is typically a one-stage process. The result of a rendering pipeline is fed into the raster for display. Modern computer monitors are commonly called “raster display devices” for this reason—they display information on screen via a set of bytes that represent a series of pixels. This set of pixels is often called the refresh buffer, or more commonly the frame buffer. Pixels in the frame buffer are piped to the raster display (e.g. your monitor). For a very simple display that was just a single bit-mapped image, there is no rendering. The graphics engine simply rasters (i.e. BitBlt's) the image into the graphics card frame buffer, or directly to the display. - The color-blind filter can be implemented anywhere along the graphics pipeline. For example, as discussed in detail below, in one embodiment, a
rendering engine 202 generates graphics data based upon the geometric primitives and associated rendering commands. A color-blind analyzer, implemented via display controller ordisplay device driver 204, in communication with therendering engine 202 analyzes graphics data generated by therendering engine 202 and modifies selected graphics data into color corrected data suitable for a visually challenged viewer. Therendering engine 202 then concludes rendering of the color corrected data into a color corrected image forfurther processing 206 208 anddisplay 210. - As discussed in detail below, in another embodiment, at the
raster stage 206, a scan-convert processor converts the geometric primitives to produce rasterized pixel data including color data for pixel locations in the image. A private memory area separate from the frame buffer stores the rasterized pixel data. A color-blind analyzer in communication with the private memory area analyzes the rasterized pixel data stored in the private memory area and modifies selected rasterized pixel data into color corrected pixel data forfurther processing 206 208 anddisplay 210. - Color Blind Modification Implemented At Render Stage
-
FIG. 4 illustrates a block diagram of anembodiment 300 of agraphics device 302 including a colorblind filter 304 implemented in the renderstage 306. Referring toFIG. 3 , color-blind modification is implemented at the render stage of the graphics pipeline prior to rasterization of the image into the frame buffer. Rendering is the process of generating two-dimensional images of data for display on a monitor. Typically, rendering includes processing geometric primitives (e.g., points, lines and polygons) to determine component pixel values for the monitor display, a process often referred to specifically as rasterization. - In particular, referring to
FIG. 4 , acontrol unit 308 supervises the operation of thegraphics device 302. Upon receiving a graphics order to render a scene, thecontrol unit 308 passes the graphics data associated with the graphics order on to arendering pipeline 306. Therendering pipeline 306 transforms the graphics data associated with the graphics order from the model coordinate system to a normalized device coordinate system designated the view coordinate system and clips the graphics data against a predetermined view volume. In addition, depending upon the shading algorithm to be applied, an illumination model is evaluated at various locations (i.e. the vertices of the primitives and/or the pixels covered by a given primitive). The transformed and clipped graphics data is then passed on to arasterization stage 308 that converts the transformed primitives into pixels, and generally stores each primitive's contribution at each pixel. One skilled in the art will recognize that therendering pipeline 306 may be organized in a variety of architectures and is not limited to the configuration described herein. The present invention provides a color correction mechanism with perspective correction that may be integrated into any stage of therendering pipeline 306. For the sake of description, an example of a common graphics pipeline is set forth below. - More specifically, as shown in
FIG. 4 , acommon rendering pipeline 306 includes multiple stages, typically including one or more of the following: modeling 310,lighting 312, viewing 314, clipping 316,composition 318 and other stages. - During or before the graphics content is rendered and prior to rasterization, graphics content, including but not limited to, images, constructs and shapes are analyzed to determine if there is any content (e.g. colors) that would be problematic for persons with color blindness. If any content is found to be problematic for color-blind users, the contents' properties (or individual pixels if at the raster stage) are modified to reflect adjusted color or pattern shapes that are suitable for color-blind users. For example, analysis of shade properties could indicate a grouping of two or more distinct colors arranged such that a color-bind person would be unable to detect the presence of two separate shades, and would instead see them as just one flat color. Embodiments of the present invention, upon detecting this pattern, would modify one or more of the colors to some other color that will provide contrast to the other shades, allowing the color-blind person to see the distinct color shades, where before there was but one prior to modification.
- If the original models contain complex color information suitable for modification, colors within a specific color blind range can be modified in the original model itself. Note that this process would probably best be performed after lighting, viewing, and composition are performed, as these stages may change the color properties of 3D models. One skilled in the art will recognize that color-blind modification can be performed prior to any one of these stages.
- Additionally, in another embodiment, stock images, textures, or geometric shapes stored by application programs, as part of graphics libraries, or as part of the graphics subsystem itself could be modified per this invention earlier in the graphics pipeline (i.e. before pixel rasterization) using the same or similar methods. For example, a JPEG image texture used in an application could be analyzed to determine if any pixel color patterns would obscure different shades of colors to the color-blind person. If such patterns are found, the individual image pixels could be modified so that when used in the future (e.g. as a texture), the analysis and modification had already been performed.
- For example, in a Windows-based operating system, the present invention may be implemented in the Graphics Display Interface (GDI) subsystem, some combinations of the GDI and graphics card device driver, or completely in the graphics device driver. The present invention could also be implemented in a graphics card that facilitates or has rendering capability. In graphics cards with rendering capability, the color-blind modifications can be executed internally on the graphics card.
- Referring to
FIG. 5 (a)-(c), the following images result from graphics operands may be contained in either system memory or local memory to facilitate the color-blind modification process: a rendering operand that contains data forming a newly created 2D object 400 (could also be used to create a 3D object) (FIG. 5 (a)), a modification operand to analyze and modify the date if the color-blind filter is triggered by a user, acolor modification operand 402 that is used to provide an alternative stream of graphics color data instead of the data problematic to a color-blind user (FIG. 5 (b)), anoverlay operand 404 that is used to provide an alternative stream of graphics data instead of the data problematic to a color-blind user (FIG. 5 (c)), and a display operand that contains data used for displaying the modified 3D object. It is contemplated that other operands may be contained in system memory or local memory for color-blind modification such as commands and the like. - Thus, according to the present invention, an efficient color correction mechanism is provided that may be integrated into the rendering pipeline of
FIG. 4 , or may be integrated into other rendering architectures.FIG. 6 illustrates a flow diagram of anembodiment 500 of a process for providing color corrected graphics for color-blind users implemented at the render stage. Assuming the color blind filter of the present invention is set as a default state or enabled by a user, the scene is passed to a rendering pipeline (step 502) where it is subjected to various processing stages (step 504), including one or more of the following: modeling, lighting, viewing, clipping, composition and other stages. During or before the graphics content is rendered and prior to rasterization, the graphics content is analyzed to determine if there is any content that would be problematic to a color-blind user (step 506). If the content is not problematic for color-blind users (step 508), no modifications are made to the graphics content. If the content is problematic for color-blind users (step 508), the appropriate changes are made (step 510). Steps 506-510 are repeated until all of the graphics content is analyzed (step 512). The graphics content is then passed to the raster stage for further processing and display (step 514). - Color Blind Filter Implemented At Rasterization
-
FIG. 7 illustrates a block diagram of anembodiment 600 of agraphics device 610 including a colorblind filter 602 implemented in theraster stage 604 of the graphics pipeline prior to the image being displayed 614 to a color-blind user. Acontrol unit 612 supervises the operation of thegraphics device 610. During theraster stage 604, graphics content, including but not limited to, images, constructs and shapes are analyzed to determine if there content (e.g. colors) that would be problematic for persons with color blindness. If any content is found to be problematic for color-blind users, the contents' properties are modified to reflect adjusted color or pattern shapes that are suitable for color-blind users. - The color-blind filter for improving or modifying color images according to the invention can be implemented in many ways. One skilled in the art will recognize that the present invention is not limited to a particular implementation. In some cases, simply changing the color can be used to generate an image amenable to a color-blind user. For example, colors that are difficult to for color-blind users to discern, such as red and green, are identified. Graphics content including colors such as red and green are replaced with non-problematic colors. In another embodiment, a pattern is overlaid on top any difficult to see colors to provide an image viewable to a color-blind user. In yet another embodiment, graphics content is enhanced with underlined text or a black outline. Furthermore, colors can be positioned against a background where they can be more visible. If no visibility problems are detected, no modification is made to the graphics content.
- In particular, the analysis could be performed as follows: Moving through the from start to finish, take a block of (x1, y1), (x2, y2) pixels and perform per-pixel color analysis to find color patterns in the frame buffer that would affect the color blind person based upon their specific form of color blindness. In each block, the problem pixels are modified either individually (to a neutral color such as white or black), or as an aggregate grouping of pixels (create a new pattern overlaid on top of the problem pixel region). In particular, referring to FIGS. 5 (a)-(c), blocks of individual pixels could be analyzed to determine if color patterns would affect the color blind person based upon their specific form of color blindness. The blocks analyzed are not limited to a particular region or shape. For example, the regions examined could be in any shape, including but not limited to circles, ovals, triangles and so forth.
- In another embodiment, any and all pixels that fall within a specific color range (based upon the persons specified form of color blindness) simply be changed to some other neutral color. For example, if shades of the color blue (specified by a range of R,G,B values) are problematic for the color blind user, then all pixels falling within that range of R,G,B values are modified (in this case irrespective of whatever other pixel colors are surrounding them) to some other non-problem color (e.g. white, black, etc.).
- Referring now to
FIG. 7 , an embodiment offrame buffer memory 606 andprivate area memory 608 is shown. Rastering primitives to generate frame buffer data typically involves dividing the primitive into scan lines, single-pixel thick horizontal or vertical regions of the primitive. Scan lines are also referred to as spans, a term used interchangeably to refer to a scan line or the series of adjacent pixels which make up a scan line. Graphics content may be alternatively located in either of these twomemories 606 608 based upon whether the graphics content needs to be analyzed and modified for color-blind users. If the color-blind filter 602 of the present invention is activated, graphics content may be moved to aprivate area memory 608 where it is analyzed and modified if needed prior to being made available for further processing and display.Private area memory 608 is preferably static allocated memory, either already on the graphics card, part of the GDI, or memory mapped to system memory. In a typical implementation, the individual rasterized pixels stored in theprivate memory area 608 are analyzed to determine if any color combinations exist that would be problematic for persons with color blindness. If so, the individual pixel values are modified accordingly, and the now modified set of scan lines in theprivate memory area 608 is made available for further processing and display. For example, in a software implementation, the modified set of scan lines is made available to the graphics card either by copying into the physical graphics card, or moving into the designated location inframe buffer memory 606. In a hardware implementation, the shape/image modifications are executed on the graphics card. In particular, instead of implementing the present invention using scan-lines, BitBlitting could be used. - Referring to
FIG. 5 (a)-(c), the following images result from graphics operands may be contained inprivate area memory 608 to facilitate the color-blind modification process: a raster operand that contains data forming a newly created 2D object 400 (could also be used to create a 3D object) (FIG. 5 (a)), a modification operand to analyze and modify the date if the color-blind filter is triggered by a user, acolor modification operand 402 that is used to provide an alternative stream of graphics color data instead of the data problematic to a color-blind user (FIG. 5 (b)), and anoverlay operand 404 that is used to provide an alternative stream of graphics data instead of the data problematic to a color-blind user (FIG. 5 (c)). It is contemplated that other operands may be contained in private area memory for color-blind modification such as commands and the like. - Thereafter, the graphics controller processes the three-dimensional color corrected image to be displayed. In a software implementation, during this processing stage, the color corrected graphics content is transferred to the graphics card either by copying into the physical graphics card, or moving into the designated location in system memory. In a hardware implementation, the shape/image modifications are executed on the graphics card.
-
FIG. 8 illustrates a flow diagram of anembodiment 700 of a process for providing color corrected graphics for color-blind users implemented at the raster stage. Assuming the color blind filter of the present invention is set as a default state or enabled by a user, the scene is passed from the rendering stage to the rasterization stage (step 702). Scan lines are generated based upon the graphics content received (step 704). The graphics content is moved to a private area memory (step 706) and analyzed to determine if there is any content that would be problematic to a color-blind user (step 708). If the content is not problematic for color-blind users (step 708), no modifications are made to the graphics content and it is made available for further processing and display (step 714) if there is no further graphics content to be processed (step 714). If the content is problematic for color-blind users (step 708), appropriate changes are made (step 710). Steps 708-710 are repeated until all of the graphics content is analyzed (step 712). The graphics content is then made available for further processing and display (step 714). - Having now described the invention in accordance with the requirements of the patent statutes, those skilled in the art will understand how to make changes and modifications to the present invention to meet their specific requirements or conditions. Such changes and modifications may be made without departing from the scope and spirit of the invention as set forth in the following claims.
Claims (14)
1. An apparatus, comprising:
a rendering engine to generate graphics data based upon geometric primitives and associated rendering commands; and
a color-challenged analyzer to analyze graphics data generated by the rendering engine and modify selected graphics data into color corrected data suitable by overlaying a pattern on top of color characteristics problematic for a viewer, wherein the rendering engine renders the color corrected data into a color corrected image for further processing and display.
2. The apparatus of claim 1 , wherein the color corrected data comprises modified color data.
3. The apparatus of claim 1 , wherein the color corrected data comprises modified pattern data.
4. The apparatus of claim 1 , wherein the graphics data's color characteristic is modified to a color characteristic suitable for the viewer.
5. The apparatus of claim 1 , further comprising:
a graphics memory for storing the graphics data.
6. A method, comprising:
generating graphics data based upon geometric primitives and associated rendering commands;
analyzing graphics data and modifying selected graphics data into color corrected data by overlaying a pattern on top of color characteristics problematic for a viewer; and
rendering the color corrected data into a color corrected image for further processing and display.
7. The method of claim 6 , wherein the color corrected data comprises modified color data.
8. The method of claim 6 , wherein the color corrected data comprises modified pattern data.
9. The method of claim 6 , wherein analyzing graphics data and modifying selected graphics data into color corrected data by overlaying a pattern on top of color characteristics problematic for a viewer further comprises:
analyzing intermediate graphics data and converting selected intermediate graphics data into color corrected data suitable for the viewer.
10. The method of claim 9 , wherein analyzing intermediate graphics data and converting selected intermediate graphics data into color corrected data suitable for the viewer further comprises:
modifying the intermediate graphics data's color characteristic to a color characteristic suitable for the viewer.
11. The method of claim 9 , wherein analyzing intermediate graphics data and converting selected intermediate graphics data into color corrected data suitable for a visually challenged viewer further comprises:
modifying the intermediate graphics data's pattern characteristic to a pattern characteristic suitable for a visually challenged viewer.
12. An article comprising a machine-accessible media having associated data, wherein the data, when accessed, results in a machine performing:
analyzing computer graphics content in accordance with predefined color profiles;
modifying graphics content that falls within at least one of the predefined color profiles by overlaying a pattern on top of color characteristics problematic to selected users; and
facilitating display of the modified graphics content.
13. The method of claim 12 , wherein modifying graphics content comprises modifying color data.
14. The method of claim 12 , wherein modifying graphics content comprises modifying pattern data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/188,045 US20050270302A1 (en) | 2001-11-21 | 2005-07-22 | Method and apparatus for modifying graphics content prior to display for color blind use |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/991,629 US6931151B2 (en) | 2001-11-21 | 2001-11-21 | Method and apparatus for modifying graphics content prior to display for color blind use |
US11/188,045 US20050270302A1 (en) | 2001-11-21 | 2005-07-22 | Method and apparatus for modifying graphics content prior to display for color blind use |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/991,629 Continuation US6931151B2 (en) | 2001-11-21 | 2001-11-21 | Method and apparatus for modifying graphics content prior to display for color blind use |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050270302A1 true US20050270302A1 (en) | 2005-12-08 |
Family
ID=25537405
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/991,629 Expired - Fee Related US6931151B2 (en) | 2001-11-21 | 2001-11-21 | Method and apparatus for modifying graphics content prior to display for color blind use |
US11/188,045 Abandoned US20050270302A1 (en) | 2001-11-21 | 2005-07-22 | Method and apparatus for modifying graphics content prior to display for color blind use |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/991,629 Expired - Fee Related US6931151B2 (en) | 2001-11-21 | 2001-11-21 | Method and apparatus for modifying graphics content prior to display for color blind use |
Country Status (1)
Country | Link |
---|---|
US (2) | US6931151B2 (en) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060203102A1 (en) * | 2003-07-21 | 2006-09-14 | Seung-Ji Yang | Method and apparatus for car equipped color compensation for color blindness |
US20070132753A1 (en) * | 2005-12-12 | 2007-06-14 | Microsoft Corporation | Alternative graphics pipe |
US7333117B2 (en) * | 2003-11-07 | 2008-02-19 | Lg Electronics Inc. | Method of compensating colors in image display device for users with color vision deficiency and device of the same |
US20090141040A1 (en) * | 2007-12-03 | 2009-06-04 | Jang Hye On | Apparatus and method for converting color of an image |
US20090299150A1 (en) * | 2008-06-03 | 2009-12-03 | General Electric Company | Patient monitoring system with health status indicator |
US20110018894A1 (en) * | 2007-06-26 | 2011-01-27 | Microsoft Corporation | Adaptive contextual filtering based on observer colorblindness characteristics |
US20130169647A1 (en) * | 2011-12-28 | 2013-07-04 | Target Brands, Inc. | Displaying partial logos |
US8615596B1 (en) | 2009-01-14 | 2013-12-24 | Sprint Communications Company L.P. | Communication method and system for providing content to a communication device according to a user preference |
USD701224S1 (en) | 2011-12-28 | 2014-03-18 | Target Brands, Inc. | Display screen with graphical user interface |
USD703687S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD703686S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD703685S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD705790S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD705792S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD705791S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD706794S1 (en) | 2011-12-28 | 2014-06-10 | Target Brands, Inc. | Display screen with graphical user interface |
USD706793S1 (en) | 2011-12-28 | 2014-06-10 | Target Brands, Inc. | Display screen with graphical user interface |
USD711400S1 (en) | 2011-12-28 | 2014-08-19 | Target Brands, Inc. | Display screen with graphical user interface |
USD711399S1 (en) | 2011-12-28 | 2014-08-19 | Target Brands, Inc. | Display screen with graphical user interface |
USD712417S1 (en) | 2011-12-28 | 2014-09-02 | Target Brands, Inc. | Display screen with graphical user interface |
USD715818S1 (en) | 2011-12-28 | 2014-10-21 | Target Brands, Inc. | Display screen with graphical user interface |
US9064447B2 (en) | 2011-12-13 | 2015-06-23 | Vmware, Inc. | Methods and devices for filtering and displaying data |
US20230098695A1 (en) * | 2021-09-30 | 2023-03-30 | Adobe Inc. | Systems for Generating Accessible Color Themes |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6931151B2 (en) * | 2001-11-21 | 2005-08-16 | Intel Corporation | Method and apparatus for modifying graphics content prior to display for color blind use |
US20040215444A1 (en) * | 2002-03-25 | 2004-10-28 | Patel Mukesh K. | Hardware-translator-based custom method invocation system and method |
EP1413930B1 (en) * | 2002-08-09 | 2015-01-07 | Brother Kogyo Kabushiki Kaisha | Method, apparatus, printer driver and program therefor, for modifying image data prior to print for color blind persons |
US20110229023A1 (en) * | 2002-11-01 | 2011-09-22 | Tenebraex Corporation | Technique for enabling color blind persons to distinguish between various colors |
US20050156942A1 (en) * | 2002-11-01 | 2005-07-21 | Jones Peter W.J. | System and method for identifying at least one color for a user |
US7145571B2 (en) * | 2002-11-01 | 2006-12-05 | Tenebraex Corporation | Technique for enabling color blind persons to distinguish between various colors |
US7916152B2 (en) * | 2002-11-01 | 2011-03-29 | Tenebraex Corporaton | Technique for enabling color blind persons to distinguish between various colors |
JP4155049B2 (en) * | 2003-02-14 | 2008-09-24 | 富士ゼロックス株式会社 | Document processing device |
JP4082591B2 (en) * | 2003-05-20 | 2008-04-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Data editing apparatus and program |
US7264356B2 (en) * | 2003-08-06 | 2007-09-04 | Tenebraex, Inc. | Techniques for diagnosing and aiding color vision |
US20050129308A1 (en) * | 2003-12-10 | 2005-06-16 | International Business Machines Corporation | Method, apparatus and program storage device for identifying a color of a displayed item using a non-color indicator |
KR100469820B1 (en) * | 2004-06-29 | 2005-02-03 | 엔에이치엔(주) | Method and system for renewing screen |
JP3867988B2 (en) * | 2004-11-26 | 2007-01-17 | 株式会社両備システムソリューションズ | Pixel processing device |
KR100707952B1 (en) * | 2005-05-10 | 2007-04-16 | 삼성전자주식회사 | Display apparatus and control method thereof |
KR100745758B1 (en) * | 2006-01-21 | 2007-08-02 | 삼성전자주식회사 | Ink-jet printhead adopting piezoelectric actuator |
JP4847184B2 (en) * | 2006-04-06 | 2011-12-28 | キヤノン株式会社 | Image processing apparatus, control method therefor, and program |
US20070273708A1 (en) * | 2006-05-24 | 2007-11-29 | Markus Andreasson | Reading glasses for the color blind |
US20080235564A1 (en) * | 2007-03-21 | 2008-09-25 | Ricoh Co., Ltd. | Methods for converting electronic content descriptions |
US8812969B2 (en) * | 2007-03-21 | 2014-08-19 | Ricoh Co., Ltd. | Methods for authoring and interacting with multimedia representations of documents |
US8584042B2 (en) * | 2007-03-21 | 2013-11-12 | Ricoh Co., Ltd. | Methods for scanning, printing, and copying multimedia thumbnails |
US7872651B2 (en) * | 2007-06-26 | 2011-01-18 | Microsoft Corporation | Error metrics for characters |
WO2009020115A1 (en) * | 2007-08-07 | 2009-02-12 | Konica Minolta Holdings, Inc. | Information converting method, information converting device, and information converting program |
JP2011250167A (en) * | 2010-05-27 | 2011-12-08 | Sony Corp | Color conversion apparatus, color conversion method and program |
US8542324B2 (en) * | 2010-05-28 | 2013-09-24 | Microsoft Corporation | Efficient image and video recoloring for colorblindness |
US20110321082A1 (en) * | 2010-06-29 | 2011-12-29 | At&T Intellectual Property I, L.P. | User-Defined Modification of Video Content |
US8526724B2 (en) | 2010-11-17 | 2013-09-03 | Microsoft Corporation | In-image accessibility indication |
US20120151320A1 (en) * | 2010-12-10 | 2012-06-14 | Mcclements Iv James Burns | Associating comments with playback of media content |
US9626798B2 (en) | 2011-12-05 | 2017-04-18 | At&T Intellectual Property I, L.P. | System and method to digitally replace objects in images or video |
US9418585B2 (en) | 2012-08-27 | 2016-08-16 | Tata Consultancy Services Limited | Dynamic image modification for a color deficient user |
US9370299B2 (en) | 2013-05-16 | 2016-06-21 | Successfactors, Inc. | Display accessibility for color vision impairment |
EP3020025B1 (en) * | 2013-07-08 | 2021-08-25 | Apple Inc. | Image processing method and system |
US10324593B2 (en) * | 2014-01-28 | 2019-06-18 | International Business Machines Corporation | Impairment-adaptive electronic data interaction system |
US9299020B2 (en) * | 2014-03-19 | 2016-03-29 | TheCARD LLC | Financial transaction card with cutout pattern representing symbolic information |
FR3026207B1 (en) * | 2014-09-22 | 2018-08-17 | Prove & Run | SECURE DISPLAY TERMINAL |
CN104636726B (en) * | 2015-02-05 | 2019-05-21 | 努比亚技术有限公司 | A kind of image color recognition methods, device and terminal |
US20170105030A1 (en) * | 2015-10-07 | 2017-04-13 | International Business Machines Corporation | Accessibility for live-streamed content |
CN105718283A (en) * | 2016-01-14 | 2016-06-29 | 广东小天才科技有限公司 | Method and apparatus for designing color of display interface of application |
US10043066B2 (en) * | 2016-08-17 | 2018-08-07 | Intel Corporation | Gesture masking in a video feed |
US11160688B2 (en) * | 2016-11-10 | 2021-11-02 | Samsung Electronics Co., Ltd. | Visual aid display device and method of operating the same |
US10885676B2 (en) * | 2016-12-27 | 2021-01-05 | Samsung Electronics Co., Ltd. | Method and apparatus for modifying display settings in virtual/augmented reality |
GB2562530A (en) * | 2017-05-18 | 2018-11-21 | Transp Systems Catapult | Methods and systems for viewing and editing 3D designs within a virtual environment |
US10726759B2 (en) | 2018-06-11 | 2020-07-28 | Gentex Corporation | Color modification system and methods for vehicle displays |
US11263982B2 (en) * | 2019-12-09 | 2022-03-01 | Rockwell Collins, Inc. | Advanced LEP display mode, architectures and methodologies for display compensation |
US11302287B1 (en) | 2020-11-10 | 2022-04-12 | Microsoft Technology Licensing, Llc | Color correction in computing systems for color vision deficiency |
IT202100001022A1 (en) | 2021-01-21 | 2022-07-21 | Univ Degli Studi Padova | DEVICE SUITABLE FOR BEING CONNECTED BETWEEN A COMPUTER AND A SCREEN FOR REAL-TIME MODIFICATION OF A DIGITAL VIDEO OUTPUT SIGNAL FROM SAID COMPUTER TO SAID SCREEN |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5521615A (en) * | 1989-05-08 | 1996-05-28 | Hewlett-Packard Company | Display system for instruments |
US5589898A (en) * | 1995-06-07 | 1996-12-31 | Reuters Limited | Method and system for color vision deficiency correction |
US20030095705A1 (en) * | 2001-11-21 | 2003-05-22 | Weast John C. | Method and apparatus for modifying graphics content prior to display for color blind use |
US6591008B1 (en) * | 2000-06-26 | 2003-07-08 | Eastman Kodak Company | Method and apparatus for displaying pictorial images to individuals who have impaired color and/or spatial vision |
US6624828B1 (en) * | 1999-02-01 | 2003-09-23 | Microsoft Corporation | Method and apparatus for improving the quality of displayed images through the use of user reference information |
-
2001
- 2001-11-21 US US09/991,629 patent/US6931151B2/en not_active Expired - Fee Related
-
2005
- 2005-07-22 US US11/188,045 patent/US20050270302A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5521615A (en) * | 1989-05-08 | 1996-05-28 | Hewlett-Packard Company | Display system for instruments |
US5589898A (en) * | 1995-06-07 | 1996-12-31 | Reuters Limited | Method and system for color vision deficiency correction |
US6624828B1 (en) * | 1999-02-01 | 2003-09-23 | Microsoft Corporation | Method and apparatus for improving the quality of displayed images through the use of user reference information |
US6591008B1 (en) * | 2000-06-26 | 2003-07-08 | Eastman Kodak Company | Method and apparatus for displaying pictorial images to individuals who have impaired color and/or spatial vision |
US20030095705A1 (en) * | 2001-11-21 | 2003-05-22 | Weast John C. | Method and apparatus for modifying graphics content prior to display for color blind use |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060203102A1 (en) * | 2003-07-21 | 2006-09-14 | Seung-Ji Yang | Method and apparatus for car equipped color compensation for color blindness |
US7333117B2 (en) * | 2003-11-07 | 2008-02-19 | Lg Electronics Inc. | Method of compensating colors in image display device for users with color vision deficiency and device of the same |
US7773096B2 (en) * | 2005-12-12 | 2010-08-10 | Microsoft Corporation | Alternative graphics pipe |
US20070132753A1 (en) * | 2005-12-12 | 2007-06-14 | Microsoft Corporation | Alternative graphics pipe |
US8013860B2 (en) * | 2007-06-26 | 2011-09-06 | Microsoft Corporation | Adaptive contextual filtering based on observer colorblindness characteristics |
US20110018894A1 (en) * | 2007-06-26 | 2011-01-27 | Microsoft Corporation | Adaptive contextual filtering based on observer colorblindness characteristics |
US20110018900A1 (en) * | 2007-06-26 | 2011-01-27 | Microsoft Corporation | Adaptive contextual filtering based on typographical characteristics |
US7969441B2 (en) | 2007-06-26 | 2011-06-28 | Microsoft Corporation | Adaptive contextual filtering based on typographical characteristics |
US20090141040A1 (en) * | 2007-12-03 | 2009-06-04 | Jang Hye On | Apparatus and method for converting color of an image |
US8451290B2 (en) * | 2007-12-03 | 2013-05-28 | Samsung Electronics Co., Ltd. | Apparatus and method for converting color of an image |
US20090299150A1 (en) * | 2008-06-03 | 2009-12-03 | General Electric Company | Patient monitoring system with health status indicator |
US8696565B2 (en) * | 2008-06-03 | 2014-04-15 | General Electric Company | Patient monitoring system with health status indicator |
US8615596B1 (en) | 2009-01-14 | 2013-12-24 | Sprint Communications Company L.P. | Communication method and system for providing content to a communication device according to a user preference |
US9049487B2 (en) | 2009-01-14 | 2015-06-02 | Sprint Communications Company L.P. | Communication method and system for providing content to a communication device according to a user preference |
US9064447B2 (en) | 2011-12-13 | 2015-06-23 | Vmware, Inc. | Methods and devices for filtering and displaying data |
USD703686S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD711399S1 (en) | 2011-12-28 | 2014-08-19 | Target Brands, Inc. | Display screen with graphical user interface |
USD703685S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD705790S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD705792S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD705791S1 (en) | 2011-12-28 | 2014-05-27 | Target Brands, Inc. | Display screen with graphical user interface |
USD706794S1 (en) | 2011-12-28 | 2014-06-10 | Target Brands, Inc. | Display screen with graphical user interface |
USD706793S1 (en) | 2011-12-28 | 2014-06-10 | Target Brands, Inc. | Display screen with graphical user interface |
USD711400S1 (en) | 2011-12-28 | 2014-08-19 | Target Brands, Inc. | Display screen with graphical user interface |
USD703687S1 (en) | 2011-12-28 | 2014-04-29 | Target Brands, Inc. | Display screen with graphical user interface |
USD712417S1 (en) | 2011-12-28 | 2014-09-02 | Target Brands, Inc. | Display screen with graphical user interface |
USD715818S1 (en) | 2011-12-28 | 2014-10-21 | Target Brands, Inc. | Display screen with graphical user interface |
US9024954B2 (en) * | 2011-12-28 | 2015-05-05 | Target Brands, Inc. | Displaying partial logos |
USD701224S1 (en) | 2011-12-28 | 2014-03-18 | Target Brands, Inc. | Display screen with graphical user interface |
US20130169647A1 (en) * | 2011-12-28 | 2013-07-04 | Target Brands, Inc. | Displaying partial logos |
US20230098695A1 (en) * | 2021-09-30 | 2023-03-30 | Adobe Inc. | Systems for Generating Accessible Color Themes |
US11645790B2 (en) * | 2021-09-30 | 2023-05-09 | Adobe Inc. | Systems for generating accessible color themes |
Also Published As
Publication number | Publication date |
---|---|
US20030095705A1 (en) | 2003-05-22 |
US6931151B2 (en) | 2005-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6931151B2 (en) | Method and apparatus for modifying graphics content prior to display for color blind use | |
US7970206B2 (en) | Method and system for dynamic, luminance-based color contrasting in a region of interest in a graphic image | |
US6972771B2 (en) | Image display device, image display method, and image display program | |
US6259461B1 (en) | System and method for accelerating the rendering of graphics in a multi-pass rendering environment | |
US9904971B2 (en) | Adaptive desampling in a graphics system with composited level of detail map | |
US7324118B2 (en) | Super imposed image display color selection system and method | |
JPH06309425A (en) | Equipment and method for graphic display | |
US20080074432A1 (en) | Method for acquiring a computer screen image | |
US20040100474A1 (en) | Apparatus for generating anti-aliased and stippled 3d lines, points and surfaces using multi-dimensional procedural texture coordinates | |
EP1306810A1 (en) | Triangle identification buffer | |
US20180150296A1 (en) | Graphics processing apparatus and method of processing texture in graphics pipeline | |
JP2003512653A (en) | Improving image display quality with adaptive sub-pixel rendering | |
US20030184563A1 (en) | Efficient digital map overlays | |
EP1746493A2 (en) | Defective pixel management for flat panel displays | |
US6567098B1 (en) | Method and apparatus in a data processing system for full scene anti-aliasing | |
US6927778B2 (en) | System for alpha blending and method thereof | |
US20020135587A1 (en) | System and method for implementing accumulation buffer operations in texture mapping hardware | |
US9530237B2 (en) | Interpolation circuitry and techniques for graphics processing | |
US7071950B2 (en) | Super imposed image display color selection system and method | |
US7969441B2 (en) | Adaptive contextual filtering based on typographical characteristics | |
US6943791B2 (en) | Z-slope test to optimize sample throughput | |
US6323870B1 (en) | Texture alpha discrimination a method and apparatus for selective texture modulation in a real time graphics pipeline | |
KR102005526B1 (en) | Method and apparatus for displaying augmented reality | |
US20160321835A1 (en) | Image processing device, image processing method, and display device | |
JP2017097729A (en) | Rendering calculation method and display device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |