EP1092217A1 - Vorrichtung und verfahren zum erkennen und erzeugen grafischer elemente - Google Patents

Vorrichtung und verfahren zum erkennen und erzeugen grafischer elemente

Info

Publication number
EP1092217A1
EP1092217A1 EP99932125A EP99932125A EP1092217A1 EP 1092217 A1 EP1092217 A1 EP 1092217A1 EP 99932125 A EP99932125 A EP 99932125A EP 99932125 A EP99932125 A EP 99932125A EP 1092217 A1 EP1092217 A1 EP 1092217A1
Authority
EP
European Patent Office
Prior art keywords
graphics
display
objects
vector
stroke
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.)
Granted
Application number
EP99932125A
Other languages
English (en)
French (fr)
Other versions
EP1092217B1 (de
Inventor
Kent Douglas Riley
Anthony Edward Sabatino
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honeywell Inc
Original Assignee
Honeywell Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honeywell Inc filed Critical Honeywell Inc
Publication of EP1092217A1 publication Critical patent/EP1092217A1/de
Application granted granted Critical
Publication of EP1092217B1 publication Critical patent/EP1092217B1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/14Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible
    • G09G1/16Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam tracing a pattern independent of the information to be displayed, this latter determining the parts of the pattern rendered respectively visible and invisible the pattern of rectangular co-ordinates extending over the whole area of the screen, i.e. television type raster
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/07Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows with combined raster scan and calligraphic display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Definitions

  • the present invention relates generally to the field of a rendering engine architecture for computer graphic displays and displays information processing technology. More specifically, the present invention relates generally to a method of and system for a rendering engine architecture wherein graphics or other objects are detected and rendered for display to a user independent of the source of the graphics to be rendered.
  • the two most common forms of display systems are stroke display systems and raster display systems.
  • Stroke display systems include stroke deflection processors and Cathode Ray Tube (CRT) stroke-type displays.
  • Stroke display systems are capable of high-quality symbology with inherent anti-aliasing, due to the ability to position the electron beam in very fine increments and the Gaussian distribution of electrons within the beam.
  • stroke display systems are now virtually obsolete and are plagued with problems. For example, CRT stroke-type displays experience high failure rates, high costs, low supply, and diminishing number of suppliers.
  • Raster display systems include raster image processors and raster-type CRT or flat panel displays. Raster display images are typically more quantized than those of stroke images, either in terms of the number of horizontal lines in the image, or in the case of mosaic displays such as LCDs, the pixel resolution. Raster display images often require special processing techniques, such as anti-aliasing, to approach the symbol quality level available in legacy stroke systems. Raster-mode flat panel displays exhibit lower failure rates, lower costs, are readily available and represent the state of the art.
  • a bit map image can include graphics that have been rendered for a specific display resolution and size.
  • the bit map image is converted using bilinear interpolation under conventional methods.
  • the process can also involve converting stroke information to a bit map image (e.g., by sampling deflection, intensity, color, etc.) and then processing the image with software. Information is distorted as well as lost during this process, yielding a bit map which indeed can be rendered on the new display (e.g., flat panel displays) but with lower quality than if the bit map had been rendered directly for the new display. Further, the conversion process does not handle overlapping symbols and is not performed in real-time.
  • a conventional method For a hybrid stroke/raster display system using a flat panel display, a conventional method includes over-sampling stroke deflection, color and intensity information from a stroke deflection processor in order to create a stroke symbology bit map with color and intensity for each pixel, then processing the stroke symbology bit map and merging the processed stroke symbology bit map with digitized raster video from a raster image processor. The merged stroke/raster images are then provided to a flat panel display. Stroke symbology bit map processing can include anti-aliasing, edge detection, image smoothing, and contrast enhancement.
  • FIG. 1 which represents stroke symbology image digitized into a bit map before image processing, illustrates why this is a problem for some conventional approaches.
  • the image-processing component in conventional approaches must process this bit map without the benefit of information lost when symbols intersect or overlap.
  • the reference numeral 2 represents the two green lines connecting two small circles; the reference numeral 4 represents a red circle in the upper left corner of the figure; and the reference numeral 6 represents a blue line (extending from the upper left corner to the lower right comer).
  • the intersection appears on a display to include a dot with diameter larger than the width of either line. Small circles may also appear as dots when processed using conventional methods. Thus symbology becomes ambiguous.
  • Another example involves a method where vector graphics are rendered into a bit map image intended for a flat panel display.
  • the graphics When viewed on the display, the graphics contain artifacts such as aliasing (for example, stair stepping of lines drawn at angles other than 0 degrees or 90 degrees).
  • aliasing for example, stair stepping of lines drawn at angles other than 0 degrees or 90 degrees.
  • Conventional systems include methods for post-processing the bit map image using techniques which detect lines and edges, then alter the bit map by blurring the detected lines and edges.
  • the effects of aliasing appear diminished, but at the expense of graphics resolution and quality.
  • a method for detecting graphic objects that have been created for a first display (e.g., stroke-type display), the graphic objects representing an image, and re-rendering the graphic objects in a form adapted for a different display (e.g., raster-type flat panel display).
  • the method includes the steps of: receiving formatted graphics from a source, e.g., video, that have been formatted for the first display; detecting a plurality of graphic objects within the formatted graphics; creating a graphics array that represents the original image, which contains information in a predetermined, prioritized manner; and re-formatting or re-rendering the plurality of graphics objects for the different type of display.
  • the re-rendered graphics objects are then stored for later use or displayed on the different type of display.
  • the objects within the graphics array are then manipulated by anti-aliasing in order to smooth lines, texturing to enhance the appearance of graphics objects, alpha blending to combine graphics objects and maintain correct color perception, haloing to increase contrast between graphics objects and the background scene, interpolation for scaling and smoothing graphics objects, fogging to provide the perception of depth, fills in order to color graphics objects, merging with other graphics information and sources, and other functions.
  • the step of detecting includes the step of detecting start and end points of vectors present in the graphics objects along with color and intensity. Also, the length, direction, color, and draw rate of each individual vector within the graphics objects are detected.
  • an apparatus for detecting graphic objects that have been created for a first display, the graphic objects representing an image, and re-rendering the graphic objects in a form adapted for a different display.
  • the apparatus includes means for receiving formatted graphics from a source, the formatted graphics having formatted for the first display; detecting means, in communication with said receiving means, for detecting a plurality of graphic objects within the formatted graphics; generation means, in communication with said detecting means, for creating a graphics array from the plurality of graphics objects that represents the image based on the formatted graphics; and re-rendering means, in communication with said generation means, for re- rendering the plurality of graphics objects formatted for the different display.
  • the apparatus further includes means to digitize the graphics objects.
  • the present invention also combines the re- rendered graphics objects with other information including imagery, video, or graphics from another source in order to provide a more comprehensive display format to view.
  • FIG. 1 (prior art) is a bit map illustrating colors, small circles, intersections, and overlap.
  • FIG. 2 is a block diagram illustration of an embodiment 10 of the overall system components in accordance with the present invention.
  • FIG. 3 is a block diagram illustration of the Graphics Detection Processor 200 in accordance with the present invention.
  • FIG. 4 is a block diagram illustration of the Encode Processor 300 in accordance with the present invention.
  • FIG. 5 is a block diagram illustration of the Graphics Rendering Processor 400 in accordance with the present invention.
  • FIG. 6 is a block diagram illustration of the Display 600 in accordance with the present invention.
  • FIG. 7 is a block diagram illustration of an alternate embodiment 800 of the information detection and regeneration process in accordance with the present invention.
  • FIG. 8 is a block diagram illustration of a more specific implementation 20 of the alternate embodiment 800 of the overall system components in accordance with the present invention.
  • FIG. 9 is a block diagram illustration of the Graphics Rendering Processor 1000 in accordance with the alternate embodiment 20 of the present invention.
  • FIG. 10 is a block diagram illustration of the Display Formatter 1100 in accordance with the alternate embodiment 20 of the present invention.
  • FIG. 11 is a diagram illustration of the Merge Processor 500 in accordance with the alternate embodiment 20 of the present invention.
  • FIG. 12 is a block diagram illustration of an implementation of the alternate embodiment 20 of the present invention to solve the problem of displaying high-quality, anti-aliased color stroke symbology along with high- quality color raster video on a color flat panel display
  • FIG. 13 is a block diagram illustration of the stroke vector detection function of the alternate embodiment of the present invention.
  • FIG. 14 is a block diagram illustration of the stroke vector rendering function of the alternate embodiment of the present invention.
  • FIG. 15 is a block diagram illustration of the raster formatter function of the alternate embodiment of the present invention.
  • Stroke deflections and video are digitized through over-sampling. Instead of creating a bit map as in conventional approaches, the present invention detects start and end points for individual vectors within specific symbols, along with their color and intensity. Individual vectors are distinguished through a change in direction, a change in color, a change in intensity, a change in draw rate, or by the assertion or de-assertion of the symbology blanking signal. This effectively recreates the original vector display list used by the original stroke deflection processor. Once the original display list is recreated, stroke symbology can be re-rendered without the errors experienced in conventional approaches.
  • occlusion is typically accomplished for a stroke display system by setting the stroke video signal for zero beam intensity while the deflection is in the occlusion area.
  • occlusion areas are precisely maintained as a result of re-rendering only those vectors present simultaneously with stroke video. The smallest symbols as well as intersections and arcs are accurately rendered with the highest possible quality.
  • Both conventional approaches and the present invention over sample the stroke video inputs for analog to digital conversion. Both conventional approaches and the present invention perform a merge of stroke symbology with digitized raster video in similar manners.
  • conventional approaches have the problem of performing bit map or image processing in the presence of arcs and intersections of varying colors to a degree which typically has been performed in non-real time systems or in systems with parallel digital signal processing components.
  • the present invention shifts the problem from that of processing bit maps in real time (see discussion above with respect to FIG. 1) to one of detecting the beginning and end of individual vectors, which can be performed in real time.
  • the present invention removes the effects of lost and distorted stroke symbology information, and re-renders the stroke symbols in a manner optimized for a high resolution, color flat panel display. Unlike conventional approaches, which must process a bit map, the present invention processes a display list of individual vectors. The display list represents each and every vector rendered for the stroke symbology with no loss of information.
  • analog stroke video A/D is performed by oversampling relative to write rate and display pixel resolution.
  • Digitized stroke video data processing is performed by first creating a bit map.
  • Rendering of symbology with anti-aliasing is performed by post processing the bit map using edge detection, image smoothing, contrast enhancement, nearest neighbor analysis (pseudo anti-aliasing) and other graphics and image processing techniques well understood by those skilled in the art.
  • the analog raster video A/D is performed by oversampling relative to the input resolution and display pixel resolution.
  • the stroke symbology and raster video are merged through digital summation with symbology precedence or priority.
  • the end-to-end effect of this conventional approach is that the quality of the symbology is compromised while not fully realizing the capabilities of a high-resolution color, flat panel display.
  • analog stroke deflection and video A/D is performed by over-sampling relative to write rate and display pixel resolution.
  • Digitized stroke video data processing is performed by creating a display list.
  • Rendering of symbology with anti-aliasing and alpha blending is performed by graphics rendering of simple vectors (true anti-aliasing) with sub-pixel positioning of the end points, using algorithms using anti-aliasing and alpha blending algorithms well known and understood by those skilled in the art.
  • Anti-aliasing algorithms have the capability to modulate pixels along and around a vector in a manner that makes the line appear straight and smooth when viewed on a display.
  • Alpha blending enables overlapping vectors to be rendered in a manner which ensures that the highest priority vector is not obscured by lower priority vectors.
  • Alpha blending algorithms modify pixel colors along and around vectors in order to ensure that vectors of differing colors that are rendered in close proximity or in an overlapping manner do not present a third (false) color when viewed.
  • the analog raster video A/D is performed by oversampling relative to input resolution and display pixel resolution.
  • the stroke symbology and raster video are merged through digital summation with symbology precedence.
  • the end-to-end effect of this approach of the present invention is that maximum quality of symbology is realized using fullest capabilities of a high-resolution, color flat panel display.
  • graphics objects includes all information that is present in a graphics display system.
  • the present invention enables one to render graphics for display purposes in an optimal manner without regard for the source of the graphics to be rendered.
  • graphics already rendered in a manner that may not be the desired method can be re-rendered using the desired method.
  • the present invention can convert analog stroke symbology inputs to high-quality, anti-aliased symbology with background raster video, for example, display on a color flat panel display.
  • the Graphics Detection Processor 200 detects the individual vectors rendered by the original source, such as stroke (vector) video input for each video frame. To accomplish this, the Graphics Detection Processor 200 first digitizes the horizontal deflection (x display position) and vertical deflection (y display position) signals, color signals, intensity signals, symbology blanking signal and other signals from the stroke (vector) video using analog to digital converters (A/D) to form a digital sample of a vector in a manner well known to those skilled in the art.
  • A/D analog to digital converters
  • the start and end points of a vector are determined from changes in vector direction, from changes in color, from changes in intensity, from changes in draw rate (distance between two digital samples of a vector divided by the sample period), or from changes in other digitized signals in a digital sample of a vector. Also, the present invention determines whether a plurality of small samples combine to result in one large vector (i.e., many small vectors can appear to be one vector). It is noted that vectors can be detected by determining end points from stroke-like video, by recognition of vectors in a raster image, or by parsing vector draw commands in a graphics array or display list in a manner known to those skilled in the art.
  • the present invention declares a change in vector direction when a measured change in direction exceeds a predetermined static or dynamic threshold value (which is affected by noise or the processor characteristics) in a manner that will be apparent to those skilled in the art.
  • the length of a vector is determined from the distance between the start and end points in accordance with the following equation: sqrt((x 2 - x.,) 2 + (y 2 - y 2 ).
  • the intensity of a vector is determined from the digitized intensity signal in a digital sample of a vector and from the draw rate for a digital sample of a vector. A slower draw rate corresponds to a higher intensity for the vector.
  • a vector primitive is then formed by combining the start and end points, length, direction, color, and intensity of a vector.
  • Vector primitives are added to a vector array (Graphics Array 260) for each image or video frame of vectors to be rendered on, for example, a color flat panel display 630.
  • the beginning and end of a video frame of vectors is determined directly from stroke video signals or other synchronizing information, by detecting a vector primitive already in the vector (graphics) array 260, by a timer, or by other means. Changes in other vector measurements are declared in a similar manner and will become apparent to those skilled in the art.
  • the Graphics Detection Processor 200 can be programmable in order to accept multiple forms of Rendered Graphics 220 as input.
  • Rendered Graphics 220 can be imagery, video, graphics, graphics commands, or other appropriate input that are generated by a particular source such as stroke deflection processor, raster image processor, image scanner, still or motion camera, or a graphics application.
  • the ability to program the Graphics Detection Processor 200 provides for optimization for input types, input content, performance, security, transmission, storage, image quality, specific display characteristics, and other purposes as will become apparent to those skilled in the art. Programming can be based on defaults or dynamically assigned values for optimization in a manner known to those skilled in the art. Whereas conventional systems provide as output a bit map from
  • Rendered Graphics 220 the Graphics Detection Processor 200 provides as output a Graphics Array 260 that represents the graphics information provided in Rendered Graphics 220.
  • the generation of a Graphics Array 260 is one novel component of the present invention.
  • a Graphics Array 260 is also referred to herein as a display list. Those skilled in the art can render graphics with a Graphics Array 260 in an optimal manner for a given display.
  • Acquisition 230 module converts Rendered Graphics 220 to a form suitable for processing. For example, if Rendered Graphics 220 is in the form of analog stroke video, Acquisition 230 can convert Rendered Graphics 220 to digital samples which can then be processed by a digital processor.
  • Recognition 240 module identifies graphics objects within Rendered Graphics 220. For example, Recognition 240 can determine start and end points of vectors, position and type for graphics objects such as circles and spheres, or position, type, and font for characters in the digital samples provided by Acquisition 230.
  • Array Generator 250 collects the information for each graphics object identified by Recognition 240 module and creates a Graphics Array 260 with information for each graphics object or primitive.
  • Graphics Array 260 can be a display list of vectors where each entry in the display list includes the following information: start point (x, y), end point (x, y), color (red level, green level, blue level), intensity (voltage or relative brightness level), draw rate (inches/second).
  • the order of appearance in an array can be used to determine graphics object precedence or other processing functions.
  • the Encode Processor 300 receives Graphics Array 260 as input.
  • the Encode Processor 300 provides as output an Optimized Graphics Array 330 that represents the graphics information in Graphics Array 260.
  • the Encode Processor 300 can be optimized for input types, input content, performance, security, transmission, storage, image quality, specific display characteristics, and other purposes.
  • the Encode Processor 300 can perform vector quantization, data compression, data encryption, graphics object sorting, alpha value assignment (e.g., precedence or transparency), or other processing functions.
  • the Encode Processor 300 can filter each vector in a Graphics Array 260 to ensure that all vectors are of reasonable length, color, and intensity in order to optimize their appearance on the color flat panel display.
  • Encode Processor 300 can encode Graphics Array 260 as an array of graphics commands or graphics routine calls such as those supported by OpenGL® computer software available from Silicon Graphics, Inc.
  • Encode Processor 300 can encode a chain of vectors which form a circle as a single draw circle command, which is also the case for Recognition 240.
  • the output from the Encode Processor 300 is the Optimized Graphics Array 330. Referring to FIG. 5, there is shown a Graphics Rendering Processor 400 in accordance with the present invention.
  • the Graphics Rendering Processor 400 receives as input a Graphics Array 260 or an Optimized Graphics Array 330 from the Encode Processor 300.
  • the Graphics Rendering Processor 400 provides as output Display Data 530 which is a rendering (processing/formatting) of the graphics information contained within a Graphics Array 260 or an Optimized Graphics Array 330.
  • Display Data 530 is appropriately formatted for a graphics display.
  • Display Data 530 can contain any or all of the following types of information: bit map, texture map, raster graphics, vector graphics, holographies and other graphics formats.
  • the Graphics Rendering Processor 400 can perform graphics processing functions including anti-aliasing in order to smooth lines, texturing to enhance the appearance of graphics objects, alpha blending to combine graphics objects and maintain correct color perception, haloing to increase contrast between graphics objects and the background scene, interpolation for scaling and smoothing graphics objects, fogging to provide the perception of depth, fills in order to color graphics objects, merging with other graphics information and sources, and other functions.
  • the Graphics Rendering Processor 400 can be optimized for input types, input content, performance, security, transmission, storage, image quality, specific display characteristics, and other purposes.
  • the Graphics Rendering Processor 400 can also be optimized for a color flat panel display 600.
  • the Graphics Rendering Processor 400 processes the Graphics Array 260 or Optimized Graphics Array 330 by carrying out a graphics render command for each object or primitive in the array.
  • Priority for vector primitive rendering is determined by the position of a vector primitive in the array, where the first primitive (or other predetermined value) has the highest priority. Priority can also be assigned based on the type of graphics object recognized by Recognition 240.
  • the Graphics Rendering Processor 400 operates in the raster domain and applies anti-aliasing, texturing, alpha blending, haloing, interpolation, fogging, shading, fills, other rendering techniques, and combinations thereof, as it renders individual primitives.
  • Display Data 530 contains formatted visual information ready for transmission to a display or other device (e.g., storage device).
  • Display Data 530 can be a bit map formatted for a color flat panel display.
  • Display Data 530 is transmitted over, for example, a pixel bus to a color flat panel Display 600 in a manner well known to those skilled in the art where it can be viewed by a person. Those skilled in the art will recognize, however, that any means of transmitting information from one location to another will operate in the present invention.
  • a Display 600 receives as input Display Data 530.
  • a Display 600 provides as output a Display Surface/Volume 630 which is a representation of Rendered Graphics 220.
  • Display Surface/Volume 630 represents the desired presentation of Rendered Graphics 220.
  • the representation of Display Surface ⁇ /olume 630 can be viewable information, transmitted information, stored information, or other appropriate form of information.
  • a Display Surface Volume 630 can be a cathode ray tube device, flat panel device, liquid crystal display device, projection device, holographic device, retinal projection device, storage device, printer, transmitter, or any other device or method for presenting, storing, transmitting, conveying, or making graphics information viewable, accessible, or usable.
  • FIG. 7 there is shown an alternate embodiment 800 of the present invention for this purpose.
  • Information Detection Processor 820 is a more generalized form of the Graphics Detection Processor 200.
  • Encode Processor 830 in FIG. 7 is a more generalized form of the Encode Processor 300 described earlier.
  • Information Processor 840 in FIG. 7 is a more generalized form of the Graphics Rendering Processor 400.
  • Other Information 810 in FIG. 7 is a more generalized form of the Display Formatter 1100 (FIG. 10).
  • Merge Processor 850 in FIG. 7 is a more generalized form of the Merge Processor 500 described herein.
  • Information Storage/Transmission 860 in FIG. 7 is a more generalized form of the Display 600 of FIG. 6.
  • FIG. 8 where there is shown an alternate embodiment 20 of the present invention represented by its major components.
  • the block diagram of FIG. 8 represents an alternate embodiment of the invention shown in FIG. 7.
  • the discussion of the Graphics Detection Processor 200 and of Encode Processor 300 is the same as that provided earlier with respect to FIG. 3 and 4, respectively, and, accordingly, will not be discussed again.
  • the Graphics Processor 420 accepts as input a Graphics Array 260 or an Optimized Graphics Array 330.
  • the Graphics Processor 420 provides as output Frame Buffer 430 which is a rendering of the graphics information contained within a Graphics Array 260 or an Optimized Graphics Array 330.
  • Frame Buffer 430 can be a memory device for display systems that scan out of frame buffer memory, or a stream of information provided directly to Merge Processor 500 or Display 600 for display systems that employ a flow-through method.
  • Frame Buffer 430 is appropriately formatted for a particular type of a graphics display.
  • Frame Buffer 430 can contain any or all of the following types of information: bit map, texture map, raster graphics, vector graphics, holographies, and other graphics formats.
  • the Graphics Processor 420 can perform certain graphics processing functions including anti-aliasing, texturing, alpha blending, haloing, interpolation, fogging, fills, merging with other graphics information and sources, and other functions.
  • the Graphics Rendering Processor 1000 can be optimized for input types, input content, performance, security, transmission, storage, image quality, specific display characteristics, and other purposes. Referring to FIG. 10, there is shown a Display Formatter 1100 in accordance with the alternate embodiment 800 of the present invention.
  • the Acquisition 135 accepts as input 110 imagery, video, graphics, or graphics commands.
  • the Formatter 130 receives the information from Acquisition 135 and provides as output Frame Buffer 140.
  • Frame Buffer 140 includes a rendering of the imagery, video, graphics, or graphics commands appropriately formatted for a graphics display.
  • the Merge Processor 500 accepts as input rendered graphics in multiple frame buffers 1 through n (510 and 540), combines the contents of the frame buffers in Combine 520, and provides as output Display Data 530.
  • Display Data 530 is a combined rendering of graphics from any or all frame buffers appropriately formatted for a graphics display (display data 530).
  • the Merge Processor 500 provides maximum flexibility in combining graphics information from many sources for a graphics display.
  • the Merge Processor 500 can perform other graphics functions including anti-aliasing, texturing, alpha blending, haloing, interpolation, fogging, fills, merging with other graphics information and sources, and other functions.
  • the Merge processor 500 is an optional component of the present invention in accordance with the alternate embodiment.
  • Display 600 for use in the alternate embodiment.
  • the output, Display Surface/Volume 630 is a representation of Rendered Graphics 220 combined with input 110.
  • Display 630 represents the desired presentation of Rendered Graphics 220 combined with input 110.
  • FIG. 8 shows functionally an implementation of the present invention to solve the problem of displaying high-quality, anti-aliased color stroke symbology along with high-quality color raster video on a color flat panel display.
  • the Graphics Detection Processor 200 detects the individual vectors provided by a legacy stroke (vector) video interface for each video frame.
  • the Graphics Detection Processor 200 digitizes the horizontal and vertical deflection signals, color signals, intensity signals, symbology blanking signals and other signals from the stroke (vector) video using analog to digital converters to form digital samples of vectors.
  • the direction of a vector is determined by comparing the digitized horizontal and vertical deflection signals in a digital sample of a vector to the digitized horizontal and vertical deflection signals in the previous digital sample of a vector.
  • the start and end points of a vector are determined from changes in vector direction, from changes in color, from changes in intensity, from changes in draw rate, or from changes in other digitized signals in a digital sample of a vector.
  • a change in vector direction is declared when a measured change in direction exceeds a static or dynamic threshold value. Changes in other vector measurements are declared in a similar manner.
  • the length of a vector is determined from the distance between the start and end points.
  • the intensity of a vector is determined from the digitized intensity signal in a digital sample of a vector and from the draw rate for a digital sample of a vector. A slower draw rate corresponds to a higher intensity for the vector.
  • a vector primitive is formed by combining the start and end points, length, direction, color, draw rate, and intensity of a vector.
  • Vector primitives are added to a vector (graphics) array 260 for each video frame of vectors and prioritized to be rendered on a color flat panel display 630.
  • the beginning and end of a video frame of vectors is determined directly from stroke video signals or other synchronizing information, by detecting a vector primitive already in the vector (graphics) array 260, by a timer, or by other means.
  • the Encode Processor 300 filters each vector in the vector array 260 to ensure that all vectors are of reasonable length, color, and intensity in order to optimize their appearance on the color flat panel display.
  • the measured color for a vector primitive can be encoded as a color optimized for presentation on the color flat panel display and for other considerations like night vision equipment compatibility.
  • the intensity of a vector primitive can be encoded to take into account the effects of draw rate or the desire to assign discrete intensity levels based on precedence or other criteria.
  • the Encode Processor 300 can format information associated with each vector primitive in a manner optimized for the creation of a graphics rendering command. The output from the Encode Processor 300 is the optimized vector (graphics) array 330.
  • the Graphics Rendering Processor 1000 is optimized for a color flat panel display 600.
  • the Graphics Rendering Processor 1000 processes the optimized vector (graphics) array 330 by issuing a vector (graphic) render command to a Graphics Processor 400 for each vector primitive.
  • Priority for vector primitive rendering is determined by the position of a vector primitive in the optimized vector (graphics) array 330, where the first vector primitive in the optimized vector (graphics) array 330 has the highest priority.
  • the graphics processor operates in the raster domain and applies anti- aliasing, texturing, alpha blending, haloing, interpolation, fogging, and fills as it renders individual vector primitives.
  • the output from the Graphics Rendering Processor 400 is rendered vectors (Frame Buffer) 430.
  • the Display Formatter 1100 accepts input 110 analog raster video requiring minimal processing by Acquisition 135 for the purpose of rendering on the color flat panel display 630.
  • Acquisition 135 can perform functions like analog to digital conversion, intensity and display size scaling, and other functions well understood by those skilled in the art.
  • the output from the Formatter 130 is formatted raster video (Frame Buffer) 140.
  • the Merge Processor 500 combines the rendered vectors (Frame Buffer) 530 from the Graphics Rendering Processor 400 with the formatted raster video (Frame Buffer) 140 from the Display Formatter 1100 in order to provide a more comprehensive display format to view.
  • the output from Merge Processor 500 is Display Data 530.
  • FIG. 12 shows functionally an implementation of the alternate embodiment 20 of the present invention to solve the problem of displaying high-quality, anti-aliased color stroke symbology along with high- quality color raster video on a color flat panel display.
  • the present invention detects the individual vectors drawn by the stroke generator, for example, a Multipurpose Display Indicator (MDI) or display computer, with the Stroke Vector Detector. This function effectively creates the original symbology display list used by the stroke generator.
  • MDI Multipurpose Display Indicator
  • Detector the Stroke Vector Detector
  • Stroke symbology vectors are then rendered and anti-aliased by Vector Rendering.
  • This function takes advantage of off-the-shelf graphics rendering components using commercially available, state-of-the-art rendering algorithms.
  • the combination of display list recreation and vector rendering by Stroke Vector Detector and Stroke Vector Rendering, respectively, is a novel component of the present invention. Indeed, the present invention is capable of displaying stroke symbology with far greater quality and accuracy than any currently- available stroke generator is capable of providing it.
  • Raster video is digitized and scaled by Raster Digitize/Scaling. This function is equivalent to that found in most flat panel displays and displays processing systems with analog video. Rendered stroke symbology and digitized raster video are merged in Merge. Finally, the merged video is displayed on the Display.
  • the stroke vector detection function performed by the Stroke Module are shown in FIG. 13. Deflection and bright up signals (Stroke Video) are switched by Stroke Switching. Stroke Switching also provides a repeater function for Stroke Video.
  • the selected Stroke Video input is digitized by the Analog To Digital Converter at a, for example, 48 MHz sample rate. This sample rate corresponds to a minimum of 4 samples per display increment rendered at the fastest writing rate, or about 7 samples per pixel on the display.
  • the digitization of stroke signals provides an effective symbology resolution of at least, for example, 4800 by 4800 pixels with a 12 bit A/D, and possibly, for example, 9500 by 9500 pixels with a 13 bit A D.
  • Vector Recognition determines the start and end points, color, and intensity of each vector within Stroke Video symbology and places this vector information into Display List. Symbology quality is maximized by ensuring that the same point is used for the end point of one vector and the start point of the next vector in a vector sequence, like that in an arc. Variability in symbology writing rates are automatically accounted for with this method. In addition, variability in draw rate can be used to modify symbology intensity is required.
  • the Stroke Vector Detector can be contained in a single programmable logic device, array, or application specific integrated circuit (ASIC).
  • ASIC application specific integrated circuit
  • Stroke symbology vectors are then rendered and anti-aliased from the Display List by Vector Rendering under control from the Display Control module described herein (not shown).
  • the Frame Buffer is filled with high-quality, anti-aliased symbology ready for display.
  • Stroke symbols drawn first in a frame are typically the highest priority symbols and could be rendered accordingly through alpha blending and other graphics functions.
  • the Stroke Module enables the present invention to render stroke symbology with unprecedented accuracy and quality. This is possible because Vector (Graphics) Rendering enables the present invention to process stroke symbology with anti-aliasing using an array of 16 by 16 color sub-pixels per display pixel.
  • Raster video signals are switched by Raster Switching.
  • Raster Switching also provides a repeater function for Raster Video.
  • the selected Raster Video input is digitized by the Analog To Digital Converter.
  • a Sync Detect and phase locked loop (PLL) apparatus (not shown) performs synchronization detection on the incoming Raster Video and generates Raster Module clocks.
  • a commercially-available, off-the-shelf integrated circuit and low cost field memory can be used to perform vertical/temporal de-interlacing, image scaling, and gamma correction.
  • the present invention can be also adapted to provide a growth provision for zoom in a manner that will become apparent to those skilled in the art.
  • the Display Controller (not shown) performs processing functions and controls all modules of the present invention with plenty of available processing and throughput overhead.
  • One important task performed by this module is the execution of built in tests.
  • Another important task performed by this module is accessing the Display List created by the Stroke Module in order to form graphics commands for Vector (Graphics) Rendering on the Stroke Module.
  • a Liquid Crystal Display (LCD) assembly suitable for use in the present invention can be, for example, a high-resolution, state-of-the-art design with a 600 by 600 color pixel Active Matrix Liquid Crystal Display (AMLCD) having 120 color groups per inch.
  • AMLCD Active Matrix Liquid Crystal Display
  • Other raster-type displays can be used as will become apparent to those skilled in the art.
  • the present invention has multiple applications, including raster scanned or caligraphically-generated cathode ray tube (CRT) displays, X-Y plotters, numerically-controlled machines, robotics, etc.
  • CTR cathode ray tube
  • a video display generator retrieves the digital data from memory to create a digital signal.
  • the display generator then creates an analog signal from the digital signal with a digital-to-analog (D/A) converter.
  • the analog signal is then amplified and displayed as a video image.
  • D/A digital-to-analog
  • the analog amplifier which functions differently at different signal frequencies, creates further distortion in the analog output. Because of the non-linearity introduced by the elements of the video display generator, the output analog signal is not a completely accurate representation of the digital data from which it was created. Although perfectly accurate video images cannot be expected, it is often necessary to ensure that the displayed image is as accurate a representation of the digital data as possible. Therefore, an all digital interface is preferred between the frame buffer and the display surface/volume, eliminating the conversion errors and distortions discussed herein.
  • a digital map analog or digital interface can be added as an additional raster input in order to enable the system to overlay symbology onto digital map video.
  • the resulting combination of the symbology with digital map is then provided through an analog or digital repeater.
  • a digital map rendering module can be embedded in order to enable the system to overlay symbology onto an internally rendered digital map.
  • the resulting combination of symbology with digital map is then provided through an analog or digital repeater.
  • An interface to a digital map mass memory unit can also be added.
  • the modular design of the present invention along with available processing and throughput overhead provide for maximum flexibility for future growth. For example, a modification to the Status/Control interface or the addition of a new data interface, along with Display Controller software modifications, would enable the system to become a smart display.
  • a smart display enables raster symbology to be rendered in manner optimized for the display.
  • Other functions and features such as zoom, alpha blending, and rendering stroke symbology with halos can also be accommodated in a manner that will become apparent to those skilled in the art.
  • text from books or other printed media can be converted to other fonts or even other languages.
  • Graphics can be re-rendered and their quality improved upon.
  • Two-dimensional pictures of three-dimensional objects can be converted to three-dimensional virtual reality images.
  • a system for converting books to electronic media can completely re-render all information in the book with the target media in mind.
  • a single video source can be used to drive multiple display types, even simultaneously, where rendering is performed to optimize the video presentation for each display type.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)
EP99932125A 1998-06-29 1999-06-29 Vorrichtung und verfahren zum erkennen und erzeugen grafischer elemente Expired - Lifetime EP1092217B1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US9113598P 1998-06-29 1998-06-29
US91135P 1998-06-29
PCT/US1999/014874 WO2000000951A1 (en) 1998-06-29 1999-06-29 Method of and system for detecting and rendering of graphic elements

Publications (2)

Publication Number Publication Date
EP1092217A1 true EP1092217A1 (de) 2001-04-18
EP1092217B1 EP1092217B1 (de) 2005-09-14

Family

ID=22226257

Family Applications (1)

Application Number Title Priority Date Filing Date
EP99932125A Expired - Lifetime EP1092217B1 (de) 1998-06-29 1999-06-29 Vorrichtung und verfahren zum erkennen und erzeugen grafischer elemente

Country Status (7)

Country Link
EP (1) EP1092217B1 (de)
JP (1) JP2002519793A (de)
KR (1) KR100576973B1 (de)
CA (1) CA2335889A1 (de)
DE (1) DE69927269T2 (de)
IL (1) IL140611A0 (de)
WO (1) WO2000000951A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100817998B1 (ko) * 2001-11-01 2008-03-31 이스트맨 코닥 캄파니 발광 픽셀을 가진 디스플레이 장치에 의해 사용되는 전력을 감소시키는 방법
WO2019081885A1 (en) * 2017-10-23 2019-05-02 Bae Systems Plc METHOD FOR OPERATING AN IMAGE GENERATOR, IMAGE GENERATOR, METHOD FOR GENERATING COLOR IMAGE DIGITAL DATA, AND DISPLAY SYSTEM

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6330023B1 (en) * 1994-03-18 2001-12-11 American Telephone And Telegraph Corporation Video signal processing systems and methods utilizing automated speech analysis
AUPS134202A0 (en) 2002-03-25 2002-05-09 Canon Kabushiki Kaisha System and method for optimizing halftoning printer performance
US7352374B2 (en) * 2003-04-07 2008-04-01 Clairvoyante, Inc Image data set with embedded pre-subpixel rendered image
ATE383627T1 (de) 2004-11-19 2008-01-15 Ericsson Telefon Ab L M Verfahren und vorrichtung zur erzeugung dreidimensionaler bilder
US11481834B2 (en) * 2006-07-07 2022-10-25 Joseph R. Dollens Method and system for managing and displaying product images with progressive resolution display with artificial realities
CN101842813A (zh) * 2007-05-22 2010-09-22 天宝导航有限公司 处理栅格图像3d对象
TWI386863B (zh) * 2008-10-03 2013-02-21 Alpha Imaging Technology Corp 多媒體處理器、手持式電子通訊裝置及其影像處理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748947A (en) * 1993-02-25 1998-05-05 Ricoh Company, Ltd. Information processing system for switchably processing data associated with straight line vectors
US5969699A (en) * 1996-10-08 1999-10-19 Kaiser Aerospace & Electronics Company Stroke-to-stroke

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0000951A1 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100817998B1 (ko) * 2001-11-01 2008-03-31 이스트맨 코닥 캄파니 발광 픽셀을 가진 디스플레이 장치에 의해 사용되는 전력을 감소시키는 방법
WO2019081885A1 (en) * 2017-10-23 2019-05-02 Bae Systems Plc METHOD FOR OPERATING AN IMAGE GENERATOR, IMAGE GENERATOR, METHOD FOR GENERATING COLOR IMAGE DIGITAL DATA, AND DISPLAY SYSTEM

Also Published As

Publication number Publication date
CA2335889A1 (en) 2000-01-06
KR20010085276A (ko) 2001-09-07
DE69927269D1 (de) 2005-10-20
JP2002519793A (ja) 2002-07-02
EP1092217B1 (de) 2005-09-14
WO2000000951A9 (en) 2000-10-26
IL140611A0 (en) 2002-02-10
KR100576973B1 (ko) 2006-05-10
DE69927269T2 (de) 2006-06-29
WO2000000951A1 (en) 2000-01-06

Similar Documents

Publication Publication Date Title
CA1207927A (en) Three-dimensional display system
EP3129974B1 (de) Gradientenanpassung für die texturkartierung auf nicht orthonormalen gittern
US5909219A (en) Embedding a transparency enable bit as part of a resizing bit block transfer operation
US7253820B2 (en) Method and system for dynamically allocating a frame buffer for efficient anti-aliasing
US6833835B1 (en) Method and apparatus for antialiased imaging of graphical objects
US5528740A (en) Conversion of higher resolution images for display on a lower-resolution display device
US7884825B2 (en) Drawing method, image generating device, and electronic information apparatus
US20060203005A1 (en) System and method for multi-sampling primitives to reduce aliasing
EP1345205A1 (de) Verfahren zur Beschleuinigung der Bildwiedergabe von auf Bildpunkt-Teilkomponeneten abgebildeten Bildern
KR20050010846A (ko) 비디오 신호의 적응 스케일링
WO2001029817A1 (en) Improving image display quality by adaptive subpixel rendering
US6496160B1 (en) Stroke to raster converter system
EP1092217B1 (de) Vorrichtung und verfahren zum erkennen und erzeugen grafischer elemente
JP4129444B2 (ja) 2次元グラフィックス・ウィンドウが3次元グラフィックス・ウィンドウと共に利用されるときに高解像度ディスプレイ上で使用可能なイメージを提供する方法およびシステム
US6597365B1 (en) Indicating device with and without antialiasing
US20010048771A1 (en) Image processing method and system for interpolation of resolution
EP0951694B1 (de) Verfahren und gerät zur verwendung von interpolationszeilenpuffern als pixeltabellen
JPH1074263A (ja) コンピュータ・グラフィックス・システム
US6867778B2 (en) End point value correction when traversing an edge using a quantized slope value
US6718072B1 (en) Image conversion method, image processing apparatus, and image display apparatus
US6529196B1 (en) Efficient stroking of vectors with arbitrary endpoints
CN1555027A (zh) 一种在计算机屏幕上显示图形的新方法
JP3493745B2 (ja) 図形描画装置
JP3000855B2 (ja) 文字図形処理装置及び情報処理装置
EP0439714A2 (de) Antialiasingverfahren für eine graphische Anzeige

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20001219

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): BE DE FR GB IT LU NL

17Q First examination report despatched

Effective date: 20030210

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): BE DE FR GB IT LU NL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20050914

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20050914

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20050914

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 69927269

Country of ref document: DE

Date of ref document: 20051020

Kind code of ref document: P

NLV1 Nl: lapsed or annulled due to failure to fulfill the requirements of art. 29p and 29m of the patents act
ET Fr: translation filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20060505

Year of fee payment: 8

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20060605

Year of fee payment: 8

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20060630

Year of fee payment: 8

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20060615

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20070629

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

Effective date: 20080229

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20080101

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20070629

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20060629

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20070702

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230525