Method and apparatus for color space conversion, clipping,...

Computer graphics processing and selective visual display system – Computer graphics processing – Graph generating

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06307559

ABSTRACT:

FIELD OF THE INVENTION
This invention relates to a method and apparatus for performing color conversion, clipping, and scaling of an image in a data processing system.
BACKGROUND OF THE INVENTION
FIG. 1
illustrates the system architecture for a conventional computer system, such as an IBM PS/2® computer. The exemplary computer system of
FIG. 1
is for descriptive purposes only. Though the description below may refer to terms commonly used in describing particular computer systems, such as an IBM PS/2 computer, the description and concepts equally apply to other systems, including systems having architectures dissimilar to FIG.
1
.
The exemplary computer
100
includes a central processing unit (CPU)
105
, which may include a conventional microprocessor; a system random access memory (RAM)
110
for temporary storage of information and a read only memory (ROM)
115
for permanent storage of information. A memory controller
120
is provided for controlling system RAM
110
. A bus controller
125
is provided for controlling bus
130
. An interrupt controller
135
is used for receiving and processing various interrupt signals.
Mass storage may be provided by a diskette
142
, a CD-ROM disk
147
or a hard disk
152
. The diskette
142
can be inserted into a diskette drive
141
, which is, in turn, connected to bus
130
by a controller
140
. Similarly, the CD-ROM disk
147
can be inserted into a CD-ROM drive
146
, which is also connected by a controller
145
to bus
130
. Finally, hard disks
152
are part of a fixed disk drive
151
, which is connected to bus
130
by controller
150
.
Data input and output to computer system
100
is provided by a number of devices. For example, a keyboard and mouse controller
155
connects to bus
130
for controlling a keyboard input device
156
and a mouse input device
157
. A DMA controller
160
is provided for performing direct memory access to system RAM
110
. A visual display is generated by a video controller
165
, which controls a video output display
170
. As will be further described below, video controller
165
may include a graphics engine
175
, a frame buffer
180
, and off-screen VRAM
185
. Under the control of the computer system
100
, display
170
presents a two dimensional array of picture elements (pixels), which may be independently controlled to form an image. Other input and output devices, such as an audio subsystem
191
, may be connected to the system through expansion slot
190
.
The computer
100
is generally controlled and coordinated by operating system software, such as the OS/2® operating system, available from the International Business Machines Corporation (IBM), Boca Raton, Fla. Conventional operating systems typically control and schedule computer processes for execution, perform memory management, provide a file system, networking capabilities, and I/O services, and provide a user interface, such as a graphical user interface (GUI), among other things. User applications, such as editors and spread sheets, directly or indirectly, rely on these and other capabilities of the operating system.
Computer systems are increasingly using sophisticated techniques to present information to a user. Modern computers use graphics capabilities to produce various graphical items, such as lines, boxes, and circles, on a display
170
, typically in color. These graphics capabilities are used, for example, by GUIs and other computer applications.
In addition to graphics, modern computers are increasingly using multimedia techniques, which store, organize, and present various forms of data, including textual data, digital audio data, digital video data, and digital music data (e.g., MIDI). For example, a computer using multimedia techniques may play back video data and audio data to produce a movie clip video sequence on display
170
with synchronized audio output from audio subsystem
191
.
Graphical and video images are conventionally produced by storing data for each pixel in a corresponding location of a frame buffer
180
. These data are placed in the frame buffer
180
by graphics engines
175
or, as is further discussed below, by software. A frame buffer
180
is typically, although not necessarily, constructed from special memory chips called VRAMs, which allow conventional read and write operations to be performed to memory cells of the VRAM on one port, while allowing data to be scanned out from the cells via a second, scan port. The video controller
165
typically scans the data out and uses the data to cause corresponding pixels of the display
170
to be energized in accordance with the data. The size of a frame buffer
180
depends upon the number of pixels of the display
170
and the amount of data required for each pixel.
The display data may indicate whether or not a pixel should be illuminated, or if color images are involved, may indicate the desired luminance and chrominance for a pixel. Moreover, color data may be implemented according to a variety of formats, such as YUV, RGB, RBG, etc., which require many bits of data per pixel. Modern color formats, for example, may require up to three bytes, or twenty four bits, of information per pixel.
Producing graphical and video images requires a substantial amount of system resources. Even seemingly simple graphical items, such as lines and circles, may require considerable computation to determine which pixels should be illuminated to yield a high quality graphical item. Animated video usually requires a substantial amount of storage resources and bandwidth from system bus
130
. A typical image may involve tens of thousands of pixels, and each pixel may involve several bytes of data. Moreover, video typically involves displaying a sequence of images at a playback rate approximately 15 to 45 images per second.
To help alleviate the computational burdens, various graphics engines have been developed to off-load the computational burden from the CPU
105
of producing graphical items. Graphic engines are known in the art and will not be further discussed.
To help alleviate the storage and bandwidth burdens, compression and decompression techniques are often utilized. With such systems, compressed video data are retrieved from system RAM
110
. There, the compressed data may be decompressed by a software decompression routine. Afterwards, the decompressed data may be placed in frame buffer
180
, or the decompressed data may be further operated upon by software, as described below.
Often, the image data, i.e., either the graphical or the decompressed video image data, need to be operated upon to provide a desired image. In some cases, the source image data may need to be stretched or scaled by a predefined amount. For example, an image may need to be scaled because a user has resized the image on the display
170
using the mouse
157
. Scaling is conventionally performed by a software scaling routine. Referring to
FIG. 2
, for example, a source image
205
may be stored as a 160×120 pixel image, and the to-be-displayed, or target, image
210
may be 200×150 pixels. In this example, both the horizontal and the vertical dimensions of the source image
205
are scaled at a 5:4 ratio. That is, every 4 pixels of source image
205
in the horizontal dimension must yield 5 pixels of target image
210
in that direction, and every 4 rows of the source image
205
must yield 5 rows of target image
210
. Often, this is achieved by copying certain bits and replicating other bits according to known scaling techniques. In the example of
FIG. 2
, a conventional technique would copy the first three pixels of the source image
205
and replicate a fourth pixel. In cases where an image must be scaled down, certain bits or rows would be excluded from the copying.
In other cases, the source image
205
may need to be color converted. For example, color conversion may be necessary, because the color format of the source image
205
may be unsupported by the display
170
(FIG.
1
). For instance, the source image
205
may be stored in a RGB

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and apparatus for color space conversion, clipping,... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for color space conversion, clipping,..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for color space conversion, clipping,... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2594043

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.