US20010017631A1 - Video line rate vertical scaler - Google Patents

Video line rate vertical scaler Download PDF

Info

Publication number
US20010017631A1
US20010017631A1 US09/815,771 US81577101A US2001017631A1 US 20010017631 A1 US20010017631 A1 US 20010017631A1 US 81577101 A US81577101 A US 81577101A US 2001017631 A1 US2001017631 A1 US 2001017631A1
Authority
US
United States
Prior art keywords
lines
video image
incoming
pixels
video
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
Application number
US09/815,771
Inventor
David Oakley
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.)
Semiconductor Components Industries LLC
Original Assignee
David Oakley
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 David Oakley filed Critical David Oakley
Priority to US09/815,771 priority Critical patent/US20010017631A1/en
Publication of US20010017631A1 publication Critical patent/US20010017631A1/en
Assigned to SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC reassignment SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FAIRCHILD SEMICONDUCTOR CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4023Decimation- or insertion-based scaling, e.g. pixel or line decimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/641Multi-purpose receivers, e.g. for auxiliary information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • H04N7/012Conversion between an interlaced and a progressive signal

Definitions

  • This invention relates to video processing and more particularly to a vertical scaling process and apparatus.
  • RGB video in this context includes VGA, SVGA and XVGA; these are examples of component video formats for personal computers.
  • RGB stands for the red, green and blue channels that comprise the complete RGB video signal.
  • Television refers to the NTSC, PAL and SECAM television timing standards which are used in television sets.
  • Common television data formats are composite video and S-video (Y/C).
  • RGB video from personal computers uses a non-interlaced (progressive) scan while television uses interlaced scan.
  • NTSC television there are 525 horizontal scan lines of analog video data per frame divided into even and odd interlaced fields of 262.5 lines each. Each NTSC television frame thus includes an odd field and an even field which are interlaced to form one frame.
  • the refresh rate for NTSC television is 30 frames per second (30 Hz) while the fields are refreshed at twice the frame rate which for NTSC is 60 Hz.
  • FIGS. 6 and 7A illustrate a filtering technique which provides vertical scaling, which means reducing the number of input lines to a fewer number of output lines in the output video signal.
  • Lines refers to video horizontal scan lines.
  • Keene et al. describes vertical scaling to reduce the 480 VGA lines to 400 lines for a television output signal. Note that in a typical NTSC television set (or monitor) a total of only 400 horizontal scan lines are available for the actual active video, allowing for the vertical blanking interval and overscan.
  • This disclosure is directed to a line rate vertical scaling process and apparatus.
  • the vertical scaling is the reduction of M active video lines to N active video lines by e.g. polyphase filtering and matching the active period of the M lines to the active period of the N lines.
  • the line rate vertical scaling includes: (1) A polyphase filter to reduce the number of lines. In one example, nine lines are filtered down to eight lines. It may be easier in other embodiments to filter eight lines to seven. Also the whole process may be programmable, for example, scaling with a range from ⁇ fraction (32/64) ⁇ to ⁇ fraction (63/64) ⁇ based upon repeating the scaling sequence every 64 lines. (2) Making the vertical active period of the incoming video source equal to the active video period of the outgoing TV signal. The horizontal scan rate is increased by ⁇ fraction (9/8) ⁇ in one example. If the scaling factor is 7 ⁇ 8, then the frequency is increased by ⁇ fraction (8/7) ⁇ . (3) Flicker filtering is inherent in one implementation because the filtering is low pass with polyphases.
  • a field buffer memory e.g. frame store
  • the field buffer memory is omitted and a much smaller FIFO (first in—first out) memory for only one or two lines is substituted. Therefore in this latter case while frame rate conversion is not available, the circuit may easily be implemented on a single integrated circuit. This latter embodiment requires that the incoming video frame rate equals the output video field rate and that the incoming active video period equals the outgoing active video period.
  • FIG. 1 shows a portion of a video image (in terms of numbered pixels) for a raster display.
  • FIG. 2 shows diagrammatically in accordance with the invention how nine incoming lines are filtered down to eight output lines.
  • FIG. 3 is a block diagram of a vertical scaling circuit in accordance with this invention.
  • FIG. 4 is a waveform diagram for the circuit of FIG. 3.
  • FIG. 5 is a block diagram of a second vertical scaling circuit in accordance with the invention which does not use a frame store, but substitutes a FIFO therefore.
  • FIG. 6 is a waveform diagram for the circuit of FIG. 5.
  • Underscan as described above to correct for overscan can be divided into two processes: horizontal and vertical scaling.
  • Horizontal scaling is conventional. Either the frequency of the incoming sampling clock ADCK is decreased or the frequency of the encoder pixel clock PXCK is increased. Reading pixels from memory in a shorter time moves them closer together on each scan line, thus horizontally scaling the image.
  • Vertical scaling is more complex, requiring line, field or frame stores and is the subject matter of this disclosure.
  • Images for PC displays are stored in frame buffer memory. Beginning at the top left-hand corner of the video picture (see FIG. 1) the pixels are stored in a linear sequence from left-to-right and from top-to-bottom. FIG. 1 thus shows the assignment of associated memory locations for the top left hand corner of the image, with each pixel numbered.
  • the first row of pixels starts at location 00 and continues to the last pixel of the first scan line, which would be number 639 for the 640 ⁇ 480 format. Other rows of pixels follow the first row. For the 640 ⁇ 480 format, the last row would be number 479.
  • FIG. 1 When such a raster image is digitized, the data format of FIG. 1 is retained. Vertical scaling is implemented by processing columns of pixels. For example, consider column 3. With a 640 ⁇ 480 image, to vertically scale down the image by 12% so as to eliminate overscan, the number of lines must be reduced from 480 to 426.
  • Such line reduction is implemented in accordance with the invention in the digital realm by re-sampling after low pass filtering a column of pixels to band limit the spatial frequencies.
  • a polyphase filter low pass filters and re-samples the column of pixels in one operation.
  • the basic frequency response is virtually unchanged by the values of the coefficients.
  • Changing the phase of the filter response by manipulating the filter coefficients sets the position of the interpolated samples.
  • one output pixel is generated by convolving the four shaded pixels 23 , 33 , 43 , 53 in FIG. 1 with an adaptive kernel with filter coefficients preset by the line count to correctly interpolate the outgoing line.
  • a polyphase filter used in accordance with this invention is a low-pass filter with a fixed cutoff frequency and a programmable delay.
  • the output can be time shifted by fractions of the clock period.
  • a useful property of a polyphase filter is that for a given cutoff frequercy, the output can be delayed in small increments. This is most important for vertical scaling because each output line is the weighted sum of a cluster of e.g., 2 or 4 of incoming lines.
  • Conversion of 480 incoming lines to 428 outgoing lines is executed e.g. module 9 , so for every nine incoming lines, eight lines are outputted. Each outgoing line is a weighted sum of the nearby incoming lines.
  • FIG. 2 shows graphically in accordance with the invention the mapping of nine incoming lines (left column) to eight outgoing lines (second column) and the derivation of the associated filter coefficients (right column).
  • the samples line up.
  • the position of each outgoing line lags the incoming index by 1 ⁇ 8 for each increment as explained above.
  • Each outgoing pixel is formed from the weighted sum of either three or four incoming pixels as indicated by the arrows.
  • Outgoing pixel zero is formed from incoming pixels IP 1 , IP 0 and IP 8 (previous 8) with weights (coefficients) 2, 4, 2, 0 in eighths.
  • Pixel OP 1 is formed from pixels IPO, IP 1 and IP 2 .
  • Each incoming line of pixels leads to an outgoing line of pixels, as indicated by the arrows, until line 4 is reached.
  • Line 4 does not initiate an output. Instead pixels OP 3 and OP 4 are formed from four nearby lines with 1, 3, 3, 1 weights.
  • This process is a convolution of incoming vertical data samples V(n) with a polyphase kernel, P n (k) which has coefficients set by the index n of the incoming data sample.
  • a frame store following such a polyphase filter is useful for three reasons: timing can be corrected for dropped lines; a range of incoming vertical refresh rates can be accepted; and output TV video timing is standard.
  • FIG. 3 is a block diagram of an exemplary circuit for performing this vertical scaling process. It is to be understood that typically this circuit is a portion of an integrated circuit which performs a number of other functions involved with VGA to NTSC/PAL television conversion, such as the Raytheon TMC2360 Flicker Free Video Encoder which is a commercially available product.
  • the various blocks shown in FIG. 3 are each conventional and hence not shown in any further detail.
  • the circuit shown on FIG. 3 is only for the function of vertical scaling and filtering and does not perform the horizontal scaling function or any of the other functions involved with VGA to television conversion.
  • the main input is digitized VGA video data input at port 10 .
  • port 10 is an P bit parallel port where P is equal to e.g. 8.
  • digitized VGA data refers to only one of the VGA components; the VGA components are typically R, G, B or Y, U, V. Therefore in actuality the circuit of FIG. 3 is replicated for instance three times for RGB, one for each of the R, G, and B VGA video components.
  • the other main signal input to the FIG. 3 circuit is the horizontal clock signal HCK which is input to a module 9 counter 12 .
  • a module 9 counter 12 Such a counter, as is well known, increments from 0 to 8 and then resets to 0 following the 8 count.
  • the digitized VGA data input at 10 is coupled into a first conventional line store (single horizontal scan line memory) 16 .
  • the output signal from line store 16 is then fed to the second line store 18 , the output signal from which is coupled to a third line store 20 .
  • the sampling clock signal SCK clocks each pixel, these circuits operates individually on each pixel. (Note that typically, for NTSC, there are 800 SCK ticks and one HCK tick per horizontal line.)
  • the line stores 16 , 18 and 20 are each outputting pixels 33 , 43 and 53 respectively while the digitized VGA data at port 10 is pixel 23 .
  • These four pixels 23 , 33 , 43 , 53 respectively, are then applied to an input terminal of each of four multipliers 24 , 26 , 28 and 30 .
  • Decoder 38 which operates in response to the count of counter 12 , outputs a set of filter coefficients to each of the multipliers 24 , 26 , 28 and 30 .
  • the value of these coefficients (weights) is thus dependent on the count of the counter 12 .
  • this circuit is a low pass filter with a fixed cut off frequency and a programmable delay, the delay being adaptively determined by decoder 38 which changes the coefficients between (2, 4, 2, 0) and (1, 3, 3, 1).
  • the output signal is time shifted by fractions of the clock signal HCK as described above.
  • the cutoff frequency is set by the filter coefficients.
  • the output signals (products) from each of the multipliers 24 , 26 , 28 , and 30 are summed by adder 40 which provides an n bit digital summed output signal which is input to a field memory (frame buffer) 44 .
  • Field buffer memory 44 operates in response to Four control signals, which are the write reset, read reset, sample clock (SCK) and pixel clock (PXCK) signals. Write reset sets the write pointer to memory location zero; read reset sets the read pointer to memory location zero; SCK is the incoming pixel clock; and PXCK is the outgoing pixel clock. At the beginning of each incoming frame the pointers are both reset.
  • Field buffer memory is e.g. a field memory, DRAM, SRAM, or other memory.
  • the output signal from field buffer memory 44 provided on port 48 is sent to an encoder which converts this digital data into analog data for display on a conventional television set.
  • This encoder being conventional, is not shown but is e.g. of the type of the Raytheon TMC2490 encoder. Besides modulating the UV components on the subcarrier and adding the color burst, encoders also add composite sync (synchronization pulses), including horizontal and vertical sync.
  • FIG. 4 Operation of the FIG. 3 circuit is illustrated by the waveforms in FIG. 4 which indicates processing of lines of data, each consisting of pixels clock by the SCK clock.
  • HVGA refers to the VGA horizontal sync.
  • HTV refers to the television horizontal sync.
  • Each group of nine incoming lines is scaled to eight by the polyphase filter to convert 480 lines to 428 lines.
  • An output line is generated for every incoming line.
  • lines 3 and 4 initiate redundant outputs allowing one of these lines to be dropped.
  • the dropped line is filled black on the “ ⁇ fraction (8/9) ⁇ lines” waveform.
  • the 428 lines are stored in the frame buffer in an uneven timing sequence during a 15.24 msec period.
  • the 428 lines are read out of the frame store in an even timing sequence over a 13.54 msec period, as shown in Table 1: TABLE 1 Frame Store Embodiment Process Timing Frame Buffer Unit VGA In Input Output Interlaced No. of 525 537 525 262.5 Lines/field Vertical Hz 60 60 60 60 Frequency Frame Period msec 16.67 16.67 16.67 Horizontal kHz 31.5 31.5 31.5 15.75 Frequency No. of Active 480 428 428 214 Lines Active Period msec 15.24 15.24 13.54 13.54 Blank Lines 45 45 98 49 Blank Period msec 1.428 3.12 3.12 3.12 Active Period msec 15.238 15.24 15.24 15.24 15.24
  • VGA Frame rate equals TV field rate
  • the VGA active video period equals the television active video period.
  • FIG. 5 shows a circuit very similar to that of FIG. 3 with similar elements identically labeled for this vertical scaling process without a frame buffer.
  • the only difference is that instead of the frame buffer memory 44 , a FIFO memory 50 is substituted.
  • the FIFO memory 50 stores only one or two lines.
  • the FIG. 5 circuit is more suitable for integration onto an integrated circuit, without external memory, than is the FIG. 3 circuit, since it is usually considered difficult (expensive) to put an entire frame store on a single integrated circuit device with other circuitry.
  • the FIFO memory 50 is timed by only two signals, the sampling clock signal SCK and the modified clock signal SCK* ⁇ fraction (8/9) ⁇ , which is the SCK clock signal multiplied by ⁇ fraction (8/9) ⁇ .
  • SCK is the FIFO input (write) clocking signal
  • SCK* ⁇ fraction (8/9) ⁇ is the FIFO output (read) clocking signal.
  • FIG. 6 Timing for the FIG. 5 circuit is shown in FIG. 6.
  • the 480 active lines are converted to 428 lines using the polyphase filter.
  • Nine incoming lines are mapped to eight outgoing lines, each a weighted sum of three or four incoming lines.
  • the one line FIFO memory 50 is provided in FIG. 5. Every outgoing eight lines are now evenly spaced over the period of nine incoming lines. Thus 425 lines are generated and 98 blank lines are appended to yield 525 lines per frame.
  • the active video is divided into 240 odd lines and 240 even lines. Odd and even lines are inserted into odd and even fields, each consisting of 262 1 ⁇ 2 lines for NTSC or 312.5 lines for PAL. To correct the line rate to 15.75 kHz, for NTSC TV or 15.625 kHz for PAL, the FIFO memory is extended to two lines.

Abstract

For conversion of component (VGA) video to television, a hardware efficient process implements line rate vertical scaling within a single integrated circuit without the support of external memory. Scaling and filtering are combined into a single process which is a polyphase filter. The polyphase filter is a low pass filter with a fixed cut off frequency and a programmable delay. By changing the coefficients of the kernel of the polyphase filter, the scaled video signal is time shifted by fractions of the pixel clock. In one example, for every nine incoming horizontal video scan lines, eight lines are outputted thus accomplishing the vertical scaling. The vertical scaling may include a field buffer memory for accommodating a range of incoming video refresh rates, or in concert with special timing of incoming video, may omit the field buffer memory and instead use a one or two line FIFO memory.

Description

    BACKGROUND
  • 1. Field of the Invention [0001]
  • This invention relates to video processing and more particularly to a vertical scaling process and apparatus. [0002]
  • 2. Description of the Prior Art [0003]
  • It is a well known problem to convert raster scanned RGB video to a television format. RGB video in this context includes VGA, SVGA and XVGA; these are examples of component video formats for personal computers. RGB stands for the red, green and blue channels that comprise the complete RGB video signal. Television refers to the NTSC, PAL and SECAM television timing standards which are used in television sets. Common television data formats are composite video and S-video (Y/C). Most commonly, RGB video from personal computers uses a non-interlaced (progressive) scan while television uses interlaced scan. In e.g. NTSC television there are 525 horizontal scan lines of analog video data per frame divided into even and odd interlaced fields of 262.5 lines each. Each NTSC television frame thus includes an odd field and an even field which are interlaced to form one frame. The refresh rate for NTSC television is 30 frames per second (30 Hz) while the fields are refreshed at twice the frame rate which for NTSC is 60 Hz. [0004]
  • Television sets use a technique known as overscan to insure that the picture fills the entire video display, (e.g. picture tube) framed within the bezel. Unfortunately, this overscan technique, when applied to the output video signal from a personal computer, may result in a display image having truncated upper and lower portions as well as truncated left and right portions. For a computer display image such truncation is not acceptable since useful information may appear in the truncated portions. Thus, in order to display a high resolution personal computer video image on a television set, the size of the image must be decreased to make the picture viewable within the bezel. For most commercially sold television sets, vertical overscan is about 12%. Thus if the personal computer output display image is vertically scaled to fit within 400 horizontal scan lines and the length of the active video scaled by 0.88, all of the display image would appear on a television without being truncated due to overscan. [0005]
  • Another problem encountered with displaying VGA video on a television set is caused by the lower frame rate of television, (50 Hz for PAL, 60 Hz for NTSC) contrasted with the relatively high refresh rates of VGA, is typically 60-75 Hz. [0006]
  • U.S. Pat. No. 5,510,843 issued to Keene et al., incorporated herein by reference, describes this situation and an attempted solution. Keene et al, FIGS. 6 and 7A illustrate a filtering technique which provides vertical scaling, which means reducing the number of input lines to a fewer number of output lines in the output video signal. (“Lines” refers to video horizontal scan lines.) Keene et al., describes vertical scaling to reduce the 480 VGA lines to 400 lines for a television output signal. Note that in a typical NTSC television set (or monitor) a total of only 400 horizontal scan lines are available for the actual active video, allowing for the vertical blanking interval and overscan. [0007]
  • Since therefore it is often desirable to scale down or shrink video frames in a horizontal or vertical direction, the scaling typically involves selectively reducing the number of pixels or rows in the frame. [0008]
  • Hence, while prior art solutions are available to the scaling problem, there is need for improvement, especially in vertical scaling, because most prior art vertical scaling methods require the support of external video memory, increasing cost and complexity. One prior approach, using linear interpolation does not include the flicker filter function. A decimating linear interpolator requires two line stores while the following flicker filter requires two line stores. Consequently, four line stores are needed. Also, certain prior implementations produce artifacts such as intensity modulation in the vertical direction when the incoming column of pixels has alternate pixels on/off. [0009]
  • SUMMARY
  • This disclosure is directed to a line rate vertical scaling process and apparatus. The vertical scaling is the reduction of M active video lines to N active video lines by e.g. polyphase filtering and matching the active period of the M lines to the active period of the N lines. [0010]
  • The line rate vertical scaling includes: (1) A polyphase filter to reduce the number of lines. In one example, nine lines are filtered down to eight lines. It may be easier in other embodiments to filter eight lines to seven. Also the whole process may be programmable, for example, scaling with a range from {fraction (32/64)} to {fraction (63/64)} based upon repeating the scaling sequence every 64 lines. (2) Making the vertical active period of the incoming video source equal to the active video period of the outgoing TV signal. The horizontal scan rate is increased by {fraction (9/8)} in one example. If the scaling factor is ⅞, then the frequency is increased by {fraction (8/7)}. (3) Flicker filtering is inherent in one implementation because the filtering is low pass with polyphases. [0011]
  • Thus in accordance with this invention, for line rate vertical scaling of video signals, scaling and filtering are combined into a single process, using a polyphase filter. The vertical scaling is implemented by processing columns of pixels. Only a few pixels, e.g. four, are processed at any one time. The actual processing involves taking four successive pixels which in the image are vertically adjacent and convolving them with an adaptive kernel with weights (filter coefficients) preset by the line count to correctly interpolate the outgoing video line. Conversion in this case of 480 incoming active video lines to e.g. 428 outgoing active video lines is executed [0012] modulo 9. Thus for every 9 (m) incoming lines, there are 8 (n) outgoing lines. Each outgoing line is thereby the weighted sum of the nearby incoming lines.
  • In one embodiment, a field buffer memory (e.g. frame store) is used in order to provide timing for dropped lines, and to accommodate a range of incoming vertical refresh rates and to accommodate standard VGA timing. In another embodiment the field buffer memory is omitted and a much smaller FIFO (first in—first out) memory for only one or two lines is substituted. Therefore in this latter case while frame rate conversion is not available, the circuit may easily be implemented on a single integrated circuit. This latter embodiment requires that the incoming video frame rate equals the output video field rate and that the incoming active video period equals the outgoing active video period. [0013]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 shows a portion of a video image (in terms of numbered pixels) for a raster display. [0014]
  • FIG. 2 shows diagrammatically in accordance with the invention how nine incoming lines are filtered down to eight output lines. [0015]
  • FIG. 3 is a block diagram of a vertical scaling circuit in accordance with this invention. [0016]
  • FIG. 4 is a waveform diagram for the circuit of FIG. 3. [0017]
  • FIG. 5 is a block diagram of a second vertical scaling circuit in accordance with the invention which does not use a frame store, but substitutes a FIFO therefore. [0018]
  • FIG. 6 is a waveform diagram for the circuit of FIG. 5. [0019]
  • DETAILED DESCRIPTION
  • Underscan as described above to correct for overscan can be divided into two processes: horizontal and vertical scaling. Horizontal scaling is conventional. Either the frequency of the incoming sampling clock ADCK is decreased or the frequency of the encoder pixel clock PXCK is increased. Reading pixels from memory in a shorter time moves them closer together on each scan line, thus horizontally scaling the image. Vertical scaling is more complex, requiring line, field or frame stores and is the subject matter of this disclosure. [0020]
  • As is well known, displays for PCs (personal computers) and television sets both use a raster scan format where the CRT (cathode ray tube) spot is scanned from left to right in a short period (e.g. 32 microseconds) and from top to bottom in a longer period (e.g. {fraction (1/60)} sec.). Each frame of the image consists of a collection of horizontal scan lines which are intensity modulated to form an image. For a 640×480 PC image (VGA), there are 480 visible (active) lines, each 640 pixels long. Other VGA resolutions such as 800×600, 1024×768 and 1280×1024 are frequently encountered. Common VGA vertical refresh rates are 60, 72 and 75 Hz. [0021]
  • Images for PC displays are stored in frame buffer memory. Beginning at the top left-hand corner of the video picture (see FIG. 1) the pixels are stored in a linear sequence from left-to-right and from top-to-bottom. FIG. 1 thus shows the assignment of associated memory locations for the top left hand corner of the image, with each pixel numbered. [0022]
  • The first row of pixels starts at [0023] location 00 and continues to the last pixel of the first scan line, which would be number 639 for the 640×480 format. Other rows of pixels follow the first row. For the 640×480 format, the last row would be number 479.
  • When such a raster image is digitized, the data format of FIG. 1 is retained. Vertical scaling is implemented by processing columns of pixels. For example, consider [0024] column 3. With a 640×480 image, to vertically scale down the image by 12% so as to eliminate overscan, the number of lines must be reduced from 480 to 426.
  • Such line reduction (vertical scaling) is implemented in accordance with the invention in the digital realm by re-sampling after low pass filtering a column of pixels to band limit the spatial frequencies. A polyphase filter low pass filters and re-samples the column of pixels in one operation. The basic frequency response is virtually unchanged by the values of the coefficients. Changing the phase of the filter response by manipulating the filter coefficients sets the position of the interpolated samples. Decimation occurs because n samples are reduced to m=n−1 samples by filtering. Only a few pixels need be processed at one time. For example, in one embodiment of this invention, one output pixel is generated by convolving the four [0025] shaded pixels 23, 33, 43, 53 in FIG. 1 with an adaptive kernel with filter coefficients preset by the line count to correctly interpolate the outgoing line.
  • Integral in this resampling filter process is flicker filtering, an important and well known function incorporated into PC-to-TV video converters. Flicker filtering is implemented in the polyphase filter. A low pass filter having a cut-off set to at most 25% of the lines per picture height will act as a flicker filter. For example, with 480 active lines, there are 240 maximum incoming cycles, so one sets the bandpass of the filter to 120 lines per picture height to comply with Nyquist requirements. [0026]
  • A polyphase filter used in accordance with this invention is a low-pass filter with a fixed cutoff frequency and a programmable delay. By changing the filter coefficients of the kernel, the output can be time shifted by fractions of the clock period. For example, a Gaussian filter with coefficients: [0027]
  • ¼, ½, ¼, 0 [0028]
  • has approximately the same response as a filter with coefficients: [0029]
  • ⅛, ⅜, ⅜, ⅛ [0030]
  • but the output is delayed by ½ clock period. A one clock delay can be implemented by the coefficients: [0031]
  • 0, ¼, ½, ¼ [0032]
  • A useful property of a polyphase filter is that for a given cutoff frequercy, the output can be delayed in small increments. This is most important for vertical scaling because each output line is the weighted sum of a cluster of e.g., 2 or 4 of incoming lines. [0033]
  • Conversion of 480 incoming lines to 428 outgoing lines is executed [0034] e.g. module 9, so for every nine incoming lines, eight lines are outputted. Each outgoing line is a weighted sum of the nearby incoming lines.
  • FIG. 2 shows graphically in accordance with the invention the mapping of nine incoming lines (left column) to eight outgoing lines (second column) and the derivation of the associated filter coefficients (right column). At [0035] line 0, the samples line up. As the line count increases, the position of each outgoing line lags the incoming index by ⅛ for each increment as explained above. Each outgoing pixel is formed from the weighted sum of either three or four incoming pixels as indicated by the arrows.
  • Outgoing pixel zero (OPO) is formed from incoming pixels IP[0036] 1, IP0 and IP8 (previous 8) with weights (coefficients) 2, 4, 2, 0 in eighths. Pixel OP1 is formed from pixels IPO, IP1 and IP2. Each incoming line of pixels leads to an outgoing line of pixels, as indicated by the arrows, until line 4 is reached. Line 4 does not initiate an output. Instead pixels OP3 and OP4 are formed from four nearby lines with 1, 3, 3, 1 weights.
  • This process is a convolution of incoming vertical data samples V(n) with a polyphase kernel, P[0037] n(k) which has coefficients set by the index n of the incoming data sample. For any column of pixels on a raster display: Y ( n ) = k = 0 3 v ( n - k ) p n ( k )
    Figure US20010017631A1-20010830-M00001
  • where: [0038]
  • P[0039] n(k)=2, 4, 2, 0 for n modulo 9= 0, 1, 2, 5, 6, 7 (lines 0-2, 5-7); and
  • 1, 3, 3, 1 for n modulo 9=3, 4 ([0040] lines 3, 4)
  • Based upon a ÷9 counter incremented after each line, counts 0, 1, 2, 5, 6 and 7 each assign [0041] weights 2, 4, 2, 0 to the kernel; counts 3, 4 each assign weights 1, 3, 3, 1.
  • A frame store following such a polyphase filter is useful for three reasons: timing can be corrected for dropped lines; a range of incoming vertical refresh rates can be accepted; and output TV video timing is standard. [0042]
  • Consider a VGA output consisting of 480 active lines and 525 total lines refreshed at 60 Hz for a progressive scan. Since interlacing is merely the discarding of alternate lines on alternate frames, consider first VGA to progressive scan conversion. A 12% underscan can be approximated by {fraction (8/9)}th scaling to yield 426.7 lines; one uses 428 lines to avoid edge effects. If one truncates the last line at the lower boundary of the picture, then a full intensity line could occur next to blank which is black. Adding the extra line allows fading of the last line, avoiding flicker effects. [0043]
  • FIG. 3 is a block diagram of an exemplary circuit for performing this vertical scaling process. It is to be understood that typically this circuit is a portion of an integrated circuit which performs a number of other functions involved with VGA to NTSC/PAL television conversion, such as the Raytheon TMC2360 Flicker Free Video Encoder which is a commercially available product. The various blocks shown in FIG. 3 are each conventional and hence not shown in any further detail. The circuit shown on FIG. 3 is only for the function of vertical scaling and filtering and does not perform the horizontal scaling function or any of the other functions involved with VGA to television conversion. In the FIG. 3 circuit the main input is digitized VGA video data input at [0044] port 10. It is to be understood that port 10 is an P bit parallel port where P is equal to e.g. 8. In this case digitized VGA data refers to only one of the VGA components; the VGA components are typically R, G, B or Y, U, V. Therefore in actuality the circuit of FIG. 3 is replicated for instance three times for RGB, one for each of the R, G, and B VGA video components.
  • The simplest but most expensive (circuitry intensive) implementation is to use RGB processing with eight bits per channel for a total of 24 bits. Each pixel would consist of 3×8 bits. Usually, one transcodes to the 16-bit YUV422 format where Y is the luma signal and chrcma signals: U=B−Y, V=R−Y. Y is sampled at full rate. U, V are sampled at half rate and multiplexed to form a full rate stream. With YUV422, one would use two parallel filters. Since data samples proceed: Y[0045] 0Y1Y2 and U0V0U2V2U4V4 etc., for each line, the columns of pixels always contain the correctly aligned Y, U or V data. So both filters act correctly although they are entirely ignorant of the incoming data format.
  • The other main signal input to the FIG. 3 circuit is the horizontal clock signal HCK which is input to a [0046] module 9 counter 12. Such a counter, as is well known, increments from 0 to 8 and then resets to 0 following the 8 count.
  • The digitized VGA data input at [0047] 10 is coupled into a first conventional line store (single horizontal scan line memory) 16. The output signal from line store 16 is then fed to the second line store 18, the output signal from which is coupled to a third line store 20. Thus one has three delayed video lines plus the original input video line at port 10. Since the sampling clock signal SCK clocks each pixel, these circuits operates individually on each pixel. (Note that typically, for NTSC, there are 800 SCK ticks and one HCK tick per horizontal line.) Hence the line stores 16, 18 and 20, with reference to FIG. 1, are each outputting pixels 33, 43 and 53 respectively while the digitized VGA data at port 10 is pixel 23. These four pixels 23, 33, 43, 53 respectively, are then applied to an input terminal of each of four multipliers 24, 26, 28 and 30.
  • [0048] Decoder 38, which operates in response to the count of counter 12, outputs a set of filter coefficients to each of the multipliers 24, 26, 28 and 30. The value of these coefficients (weights) is thus dependent on the count of the counter 12. Hence, as described above, for lines 0, 1 and 2 and 5 to 7 the coefficients are (2, 4, 2, 0) whereas for lines 3 and 4 the coefficients are (1, 3, 3, 1). Hence this circuit is a low pass filter with a fixed cut off frequency and a programmable delay, the delay being adaptively determined by decoder 38 which changes the coefficients between (2, 4, 2, 0) and (1, 3, 3, 1). By thus merely changing the coefficients of the kernel (filter), the output signal is time shifted by fractions of the clock signal HCK as described above. The cutoff frequency is set by the filter coefficients.
  • The output signals (products) from each of the [0049] multipliers 24, 26, 28, and 30 are summed by adder 40 which provides an n bit digital summed output signal which is input to a field memory (frame buffer) 44. Field buffer memory 44 operates in response to Four control signals, which are the write reset, read reset, sample clock (SCK) and pixel clock (PXCK) signals. Write reset sets the write pointer to memory location zero; read reset sets the read pointer to memory location zero; SCK is the incoming pixel clock; and PXCK is the outgoing pixel clock. At the beginning of each incoming frame the pointers are both reset. Field buffer memory is e.g. a field memory, DRAM, SRAM, or other memory.
  • The output signal from [0050] field buffer memory 44 provided on port 48 is sent to an encoder which converts this digital data into analog data for display on a conventional television set. This encoder, being conventional, is not shown but is e.g. of the type of the Raytheon TMC2490 encoder. Besides modulating the UV components on the subcarrier and adding the color burst, encoders also add composite sync (synchronization pulses), including horizontal and vertical sync.
  • Operation of the FIG. 3 circuit is illustrated by the waveforms in FIG. 4 which indicates processing of lines of data, each consisting of pixels clock by the SCK clock. HVGA refers to the VGA horizontal sync. HTV refers to the television horizontal sync. Each group of nine incoming lines is scaled to eight by the polyphase filter to convert 480 lines to 428 lines. An output line is generated for every incoming line. However, [0051] lines 3 and 4 initiate redundant outputs allowing one of these lines to be dropped. In FIG. 4, the dropped line is filled black on the “{fraction (8/9)} lines” waveform.
  • Since one line out of every nine has been dropped by the polyphase filter, the 428 lines are stored in the frame buffer in an uneven timing sequence during a 15.24 msec period. The 428 lines are read out of the frame store in an even timing sequence over a 13.54 msec period, as shown in Table 1: [0052]
    TABLE 1
    Frame Store Embodiment Process Timing
    Frame
    Buffer
    Unit VGA In Input Output Interlaced
    No. of 525 537 525 262.5
    Lines/field
    Vertical Hz
    60 60 60 60
    Frequency
    Frame Period msec 16.67 16.67 16.67 16.67
    Horizontal kHz 31.5 31.5 31.5 15.75
    Frequency
    No. of Active 480 428 428 214
    Lines
    Active Period msec 15.24 15.24 13.54 13.54
    Blank Lines 45 45 98 49
    Blank Period msec 1.428 3.12 3.12 3.12
    Active Period msec 15.238 15.24 15.24 15.24
  • At the input to the Frame Buffer Memory (“Frame Buffer Input”), the number of lines has been reduced but there are gaps where lines have been filtered away. [0053]
  • In another embodiment where frame rate conversion between VGA and television can be omitted, vertical scaling is implemented in accordance with the invention without a frame buffer (the field memory). Then the timing of the VGA image source is altered such that the number of visible VGA lines (e.g. 480) occurs in the same time period (e.g. 13.54 msec.) as the outgoing lines (e.g. 427) for the necessary scaling factor (e.g. 0.89). There are three necessary conditions to eliminate the frame buffer: [0054]
  • 1) VGA Frame rate equals TV field rate; [0055]
  • 2) 480 active lines; [0056]
  • 3) The VGA active video period equals the television active video period. [0057]
  • The third condition is key, because then no frame buffer memory is required to change the time scale of the active period; only a single line FIFO memory is needed to average the line rate. Parameters for this embodiment are shown in Table 2: [0058]
    TABLE 2
    FIFO Embodiment Process Timing
    VGA FIFO
    Unit In Input Output Interlaced
    No. of 591 537 525 262.5
    Lines/field
    Vertical Hz
    60 60 60 60
    Frequency
    Frame Period msec 16.67 16.67 16.67 16.67
    Horizontal kHz 35.44 35.44 31.5 15.75
    Frequency
    No. of Active 480 427 427 213.5
    Lines
    Active Period msec 13.54 13.54 13.54 13.54
    Blank Lines 111 111 98 49
    Blank Period msec 3.12 3.12 3.12 3.12
    Active Period msec 15.24 15.24 15.24 15.24
  • In the Table 2 embodiment, {fraction (8/9)} scaling is used, as in Table 1. To create 480 active lines in {fraction (8/9)} of the active time, the horizontal line rate is increased from 31.5 kHz to 35.44 kHz. Instead of 525 lines per VGA frame, there are 591. [0059]
  • FIG. 5 shows a circuit very similar to that of FIG. 3 with similar elements identically labeled for this vertical scaling process without a frame buffer. The only difference is that instead of the [0060] frame buffer memory 44, a FIFO memory 50 is substituted. The FIFO memory 50 stores only one or two lines. Hence the FIG. 5 circuit is more suitable for integration onto an integrated circuit, without external memory, than is the FIG. 3 circuit, since it is usually considered difficult (expensive) to put an entire frame store on a single integrated circuit device with other circuitry. The FIFO memory 50 is timed by only two signals, the sampling clock signal SCK and the modified clock signal SCK*{fraction (8/9)}, which is the SCK clock signal multiplied by {fraction (8/9)}. Hence SCK is the FIFO input (write) clocking signal and SCK*{fraction (8/9)} is the FIFO output (read) clocking signal.
  • Timing for the FIG. 5 circuit is shown in FIG. 6. The 480 active lines are converted to 428 lines using the polyphase filter. Nine incoming lines are mapped to eight outgoing lines, each a weighted sum of three or four incoming lines. [0061]
  • At the FIFO memory input, the horizontal frequency of the eight outgoing lines is still 35.44 kHz. Average line rate in equals average line rate out, but the incoming lines have shorter periods. One of every m lines missing equalizes the rates. At this point, the image has been vertically scaled but the occurrence of the lines is interrupted once every nine lines. [0062]
  • To convert this image to progressive scan for television, the one [0063] line FIFO memory 50 is provided in FIG. 5. Every outgoing eight lines are now evenly spaced over the period of nine incoming lines. Thus 425 lines are generated and 98 blank lines are appended to yield 525 lines per frame.
  • For interlacing, the active video is divided into 240 odd lines and 240 even lines. Odd and even lines are inserted into odd and even fields, each consisting of 262 ½ lines for NTSC or 312.5 lines for PAL. To correct the line rate to 15.75 kHz, for NTSC TV or 15.625 kHz for PAL, the FIFO memory is extended to two lines. [0064]
  • This disclosure is illustrative and not limiting. Further modifications will be apparent to one skilled in the art in light of this disclosure and are intended to fall within the scope of the appended claims. [0065]

Claims (13)

I claim:
1. A method for vertical scaling of an incoming video image, the video image being an array of pixels, the method comprising the steps of:
selecting at least four vertically adjacent pixels,
convolving the selected pixels adaptively by predetermined weights;
outputting a video image having n−1 vertical lines for every n lines of the incoming video image.
2. The method of
claim 1
, where n=9.
3. The method of
claim 1
, wherein the step of convolving forms each pixel in the output video image selectively from three or four pixels of the original video image.
4. The method of
claim 1
, wherein the step of convolving uses exactly two sets of predetermined weights.
5. The method of
claim 1
, further comprising the step of storing an entire frame of the output video image, thereby to accommodate a plurality of refresh rates of the incoming video image.
6. The method of
claim 1
, further comprising the step of storing two or less lines of the output video image.
7. The method of
claim 1
, wherein the step of convolving includes multiplying each of the selected pixels by one of the predetermined weights, and adding the resulting products to arrive at a pixel in the output video image.
8. An apparatus for vertical scaling of an incoming video image, comprising:
an input port for receiving the incoming video image;
at least three series-connected line stores being coupled to the input port;
at least three multipliers, each multiplier having a first input port coupled to an output port of one of the line stores;
a modulo n counter having an input terminal coupled to receive a video line clock signal;
a decoder coupled to receive a count from the counter and storing at least two sets of coefficients, having one coefficient in each set for each multipliers, the decoder being coupled to a second input terminal of each multiplier;
an adder coupled to receive a product from the multipliers and to sum all the products; and
a memory to receive the summed products.
9. The apparatus of
claim 8
, wherein the memory is a field buffer memory.
10. The apparatus of
claim 8
, wherein the memory is a FIFO memory.
11. The apparatus of
claim 8
, wherein n=9.
12. The apparatus of
claim 8
, wherein the coefficients are such as to selectively convolve three or four pixels of the original video image.
13. An apparatus for vertical scaling of an incoming video image, comprising:
a port for receiving digitized incoming video data;
a terminal for receiving a horizontal line clock signal; and
a polyphase filter coupled to received the digitized video data and the clock signal and which convolves either three or four vertically adjacent pixels of the video data, using at least two different sets of coefficients, the set of coefficients for each output pixel being selected depending on a count of the horizontal line.
US09/815,771 1997-10-09 2001-03-23 Video line rate vertical scaler Abandoned US20010017631A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/815,771 US20010017631A1 (en) 1997-10-09 2001-03-23 Video line rate vertical scaler

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/948,196 US6281873B1 (en) 1997-10-09 1997-10-09 Video line rate vertical scaler
US09/815,771 US20010017631A1 (en) 1997-10-09 2001-03-23 Video line rate vertical scaler

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US08/948,196 Continuation US6281873B1 (en) 1997-10-09 1997-10-09 Video line rate vertical scaler

Publications (1)

Publication Number Publication Date
US20010017631A1 true US20010017631A1 (en) 2001-08-30

Family

ID=25487459

Family Applications (2)

Application Number Title Priority Date Filing Date
US08/948,196 Expired - Fee Related US6281873B1 (en) 1997-10-09 1997-10-09 Video line rate vertical scaler
US09/815,771 Abandoned US20010017631A1 (en) 1997-10-09 2001-03-23 Video line rate vertical scaler

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US08/948,196 Expired - Fee Related US6281873B1 (en) 1997-10-09 1997-10-09 Video line rate vertical scaler

Country Status (1)

Country Link
US (2) US6281873B1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020030659A1 (en) * 2000-02-22 2002-03-14 Kopin Corporation Timing of fields of video
US20030103166A1 (en) * 2001-11-21 2003-06-05 Macinnis Alexander G. Method and apparatus for vertical compression and de-compression of progressive video data
US20050052703A1 (en) * 2000-02-24 2005-03-10 Pettitt Gregory S. Parallel dithering contour mitigation
US20050078126A1 (en) * 2003-09-29 2005-04-14 Samsung Electronics Co., Ltd. Method and apparatus for scaling image in horizontal and vertical directions
US20050195203A1 (en) * 2004-03-02 2005-09-08 Ittiam Systems (P) Ltd. Method and apparatus for high rate concurrent read-write applications
US20050243109A1 (en) * 2002-09-06 2005-11-03 Andrew Stevens Method and apparatus for converting a color image
US20060077288A1 (en) * 2004-10-12 2006-04-13 Jen-Shi Wu System for format conversion using clock adjuster and method of the same
US7538783B2 (en) * 1998-11-09 2009-05-26 Broadcom Corporation Graphics display system with video scaler
EP2207161A2 (en) * 2009-01-12 2010-07-14 MediaTek Inc. Display apparatus, video generation apparatus, and method thereof
US20140028267A1 (en) * 2012-07-26 2014-01-30 Samsung Sdl Co., Ltd. Battery charging method and battery pack utilizing the same

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3820026B2 (en) * 1998-03-09 2006-09-13 パイオニア株式会社 Scan line interpolation method
US6587158B1 (en) * 1998-07-23 2003-07-01 Dvdo, Inc. Method and apparatus for reducing on-chip memory in vertical video processing
TW522354B (en) * 1998-08-31 2003-03-01 Semiconductor Energy Lab Display device and method of driving the same
US6636222B1 (en) 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US7982740B2 (en) 1998-11-09 2011-07-19 Broadcom Corporation Low resolution graphics mode support using window descriptors
US6853385B1 (en) * 1999-11-09 2005-02-08 Broadcom Corporation Video, audio and graphics decode, composite and display system
US6573905B1 (en) 1999-11-09 2003-06-03 Broadcom Corporation Video and graphics system with parallel processing of graphics windows
US6768774B1 (en) 1998-11-09 2004-07-27 Broadcom Corporation Video and graphics system with video scaling
US6661422B1 (en) 1998-11-09 2003-12-09 Broadcom Corporation Video and graphics system with MPEG specific data transfer commands
JP2001100710A (en) * 1999-07-23 2001-04-13 Seiko Epson Corp Electrooptical device, its driving method, its scanning line driving circuit and electronic equipment
US9668011B2 (en) 2001-02-05 2017-05-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Single chip set-top box system
US6876339B2 (en) * 1999-12-27 2005-04-05 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and driving method thereof
US7119815B1 (en) * 2000-10-31 2006-10-10 Intel Corporation Analyzing alpha values for flicker filtering
US6803917B2 (en) * 2001-02-15 2004-10-12 Sony Corporation Checkerboard buffer using memory bank alternation
US6828977B2 (en) * 2001-02-15 2004-12-07 Sony Corporation Dynamic buffer pages
US7379069B2 (en) * 2001-02-15 2008-05-27 Sony Corporation Checkerboard buffer using two-dimensional buffer pages
US7440030B2 (en) * 2001-09-24 2008-10-21 Broadcom Corporation Method and apparatus for interlaced display of progressive video content
US20030080981A1 (en) * 2001-10-26 2003-05-01 Koninklijke Philips Electronics N.V. Polyphase filter combining vertical peaking and scaling in pixel-processing arrangement
US6765622B2 (en) * 2001-10-26 2004-07-20 Koninklijke Philips Electronics N.V. Line-buffer reuse in vertical pixel-processing arrangement
US7262806B2 (en) * 2001-11-21 2007-08-28 Broadcom Corporation System and method for aligned compression of interlaced video
US6747630B2 (en) * 2002-07-31 2004-06-08 Texas Instruments Incorporated Method to up-sample frequency rich images without significant loss of image sharpness
US20040183948A1 (en) * 2003-03-19 2004-09-23 Lai Jimmy Kwok Lap Real time smart image scaling for video input
KR20060006062A (en) * 2003-04-24 2006-01-18 코닌클리케 필립스 일렉트로닉스 엔.브이. Combined sampling rate conversion and gain-controlled filtering
KR20040100735A (en) 2003-05-24 2004-12-02 삼성전자주식회사 Image interpolation apparatus, and method of the same
US8063916B2 (en) 2003-10-22 2011-11-22 Broadcom Corporation Graphics layer reduction for video composition
KR100519776B1 (en) * 2003-11-24 2005-10-07 삼성전자주식회사 Method and apparatus for converting resolution of video signal
JP4286124B2 (en) * 2003-12-22 2009-06-24 三洋電機株式会社 Image signal processing device
JP2007529821A (en) * 2004-03-15 2007-10-25 トムソン ライセンシング Efficient video resampling method
US20080284793A1 (en) * 2004-04-15 2008-11-20 Young Wayne D Hue and saturation control module
US7050065B1 (en) 2004-04-15 2006-05-23 Nvidia Corporation Minimalist color space converters for optimizing image processing operations
US7411628B2 (en) * 2004-05-07 2008-08-12 Micronas Usa, Inc. Method and system for scaling, filtering, scan conversion, panoramic scaling, YC adjustment, and color conversion in a display controller
US7408590B2 (en) * 2004-05-07 2008-08-05 Micronas Usa, Inc. Combined scaling, filtering, and scan conversion
US20080309817A1 (en) * 2004-05-07 2008-12-18 Micronas Usa, Inc. Combined scaling, filtering, and scan conversion
US7259796B2 (en) * 2004-05-07 2007-08-21 Micronas Usa, Inc. System and method for rapidly scaling and filtering video data
US20060083305A1 (en) * 2004-10-15 2006-04-20 James Dougherty Distributed motion detection event processing
US20060126725A1 (en) * 2004-12-10 2006-06-15 Weimin Zeng Automated test vector generation for complicated video system verification
US7310785B2 (en) * 2004-12-10 2007-12-18 Micronas Usa, Inc. Video processing architecture definition by function graph methodology
US20060126726A1 (en) * 2004-12-10 2006-06-15 Lin Teng C Digital signal processing structure for decoding multiple video standards
US7430238B2 (en) * 2004-12-10 2008-09-30 Micronas Usa, Inc. Shared pipeline architecture for motion vector prediction and residual decoding
US20060126744A1 (en) * 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process
US7380036B2 (en) * 2004-12-10 2008-05-27 Micronas Usa, Inc. Combined engine for video and graphics processing
US20060129729A1 (en) * 2004-12-10 2006-06-15 Hongjun Yuan Local bus architecture for video codec
US20060125835A1 (en) * 2004-12-10 2006-06-15 Li Sha DMA latency compensation with scaling line buffer
US20060130149A1 (en) * 2004-12-10 2006-06-15 Shuhua Xiang Digital rights management microprocessing architecture
US20070008323A1 (en) * 2005-07-08 2007-01-11 Yaxiong Zhou Reference picture loading cache for motion prediction
US20070014367A1 (en) * 2005-07-13 2007-01-18 Yaxiong Zhou Extensible architecture for multi-standard variable length decoding
KR100707268B1 (en) * 2005-10-08 2007-04-16 삼성전자주식회사 Image interpolation apparatus and method thereof
JP2007127972A (en) * 2005-11-07 2007-05-24 Toshiba Corp Image display adjusting device
US7660486B2 (en) * 2006-07-10 2010-02-09 Aten International Co., Ltd. Method and apparatus of removing opaque area as rescaling an image
US8073282B2 (en) * 2007-07-23 2011-12-06 Qualcomm Incorporated Scaling filter for video sharpening
US8154556B1 (en) * 2007-11-06 2012-04-10 Nvidia Corporation Multiple simultaneous unique outputs from a single display pipeline

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2342907A1 (en) 1973-08-24 1975-05-15 Sun Chemical Corp Alpha phase quinacridone pigment - useful for colouration of paints, printing inks, polymeric materials etc
US4088506A (en) 1976-12-08 1978-05-09 E. I. Du Pont De Nemours And Company Process for preparing pigmentary quinacridone using low-salt milling
CA1144927A (en) 1978-12-10 1983-04-19 Wilfried G. Holtje Light stable quinacridonequinone yellow pigment
US4247695A (en) 1979-02-26 1981-01-27 E. I. Du Pont De Nemours And Company Process for preparation of quinacridone pigments using moderately concentrated acid
US4322750A (en) * 1979-05-08 1982-03-30 British Broadcasting Corporation Television display system
US4298398A (en) 1980-08-28 1981-11-03 E. I. Du Pont De Nemours And Company Process for converting premilled crude quinacridone to pigmentary form
US4455173A (en) 1981-07-07 1984-06-19 E. I. Du Pont De Nemours And Company Preparation of pigmentary form of quinacridone pigments
CA1199026A (en) 1982-06-21 1986-01-07 Edward E. Jaffe Preparation of pigmentary grade pigment from crude pigment
JPS6276547A (en) * 1985-09-28 1987-04-08 Hitachi Ltd Solid-state image pickup element
JPH0778179B2 (en) 1986-12-11 1995-08-23 住友化学工業株式会社 Method for producing dioxazine violet pigment
US4895949A (en) 1988-06-20 1990-01-23 Ciba-Geigy Corporation Process for preparation of quinacridone solid solutions
US4987373A (en) 1989-09-01 1991-01-22 Chrontel, Inc. Monolithic phase-locked loop
US5453846A (en) 1992-01-31 1995-09-26 Matsushita Graphic Communication Systems Image convertion method
US5274372A (en) * 1992-10-23 1993-12-28 Tektronix, Inc. Sampling rate conversion using polyphase filters with interpolation
US5646696A (en) * 1992-12-23 1997-07-08 Intel Corporation Continuously changing image scaling performed by incremented pixel interpolation
US5469222A (en) * 1992-12-23 1995-11-21 Intel Corporation Non-linear pixel interpolator function for video and graphic processing
US5638467A (en) 1993-05-14 1997-06-10 Industrial Technology Research Institute Bit-reversing method and system for linear image scaling
US5682179A (en) 1993-07-01 1997-10-28 Intel Corporation Horizontally scaling image signals according to a selected scaling mode
US5815143A (en) * 1993-10-13 1998-09-29 Hitachi Computer Products (America) Video picture display device and method for controlling video picture display
US5473342A (en) 1993-10-19 1995-12-05 Chrontel, Inc. Method and apparatus for on-the-fly multiple display mode switching in high-resolution bitmapped graphics system
US5517612A (en) * 1993-11-12 1996-05-14 International Business Machines Corporation Device for scaling real-time image frames in multi-media workstations
DE4403231A1 (en) 1994-02-03 1995-08-10 Hoechst Ag Process for the production of quinacridone pigments
NO942080D0 (en) * 1994-06-03 1994-06-03 Int Digital Tech Inc Picture Codes
AU698055B2 (en) * 1994-07-14 1998-10-22 Johnson-Grace Company Method and apparatus for compressing images
US5574572A (en) 1994-09-07 1996-11-12 Harris Corporation Video scaling method and device
US5510843A (en) * 1994-09-30 1996-04-23 Cirrus Logic, Inc. Flicker reduction and size adjustment for video controller with interlaced video output
JPH08147478A (en) * 1994-11-17 1996-06-07 Hitachi Ltd Moving image decoding device
US5671018A (en) * 1995-02-07 1997-09-23 Texas Instruments Incorporated Motion adaptive vertical scaling for interlaced digital image data
GB9513658D0 (en) * 1995-07-05 1995-09-06 Philips Electronics Uk Ltd Autostereoscopic display apparatus
US5825367A (en) * 1995-07-26 1998-10-20 Winbond Electronics Corp. Apparatus for real time two-dimensional scaling of a digital image
US5905536A (en) * 1997-06-05 1999-05-18 Focus Enhancements, Inc. Video signal converter utilizing a subcarrier-based encoder
US6061094A (en) * 1997-11-12 2000-05-09 U.S. Philips Corporation Method and apparatus for scaling and reducing flicker with dynamic coefficient weighting

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7538783B2 (en) * 1998-11-09 2009-05-26 Broadcom Corporation Graphics display system with video scaler
US7920151B2 (en) 1998-11-09 2011-04-05 Broadcom Corporation Graphics display system with video scaler
US8493415B2 (en) 1998-11-09 2013-07-23 Broadcom Corporation Graphics display system with video scaler
US6999057B2 (en) * 2000-02-22 2006-02-14 Kopin Corporation Timing of fields of video
US20020030659A1 (en) * 2000-02-22 2002-03-14 Kopin Corporation Timing of fields of video
US7576759B2 (en) * 2000-02-24 2009-08-18 Texas Instruments Incorporated Parallel dithering contour mitigation
US20050052703A1 (en) * 2000-02-24 2005-03-10 Pettitt Gregory S. Parallel dithering contour mitigation
EP1322114A3 (en) * 2001-11-21 2003-11-12 Broadcom Corporation Method and apparatus for vertical compression and decompression of progressive video data
EP1322114A2 (en) * 2001-11-21 2003-06-25 Broadcom Corporation Method and apparatus for vertical compression and decompression of progressive video data
US20030103166A1 (en) * 2001-11-21 2003-06-05 Macinnis Alexander G. Method and apparatus for vertical compression and de-compression of progressive video data
US20050243109A1 (en) * 2002-09-06 2005-11-03 Andrew Stevens Method and apparatus for converting a color image
US7643039B2 (en) 2002-09-06 2010-01-05 Koninklijke Philips Electronics N.V. Method and apparatus for converting a color image
US20050078126A1 (en) * 2003-09-29 2005-04-14 Samsung Electronics Co., Ltd. Method and apparatus for scaling image in horizontal and vertical directions
US20050195203A1 (en) * 2004-03-02 2005-09-08 Ittiam Systems (P) Ltd. Method and apparatus for high rate concurrent read-write applications
US7511713B2 (en) * 2004-03-02 2009-03-31 Ittiam Systems (P) Ltd. Method and apparatus for high rate concurrent read-write applications
US7359007B2 (en) 2004-10-12 2008-04-15 Mediatek Inc. System for format conversion using clock adjuster and method of the same
US20060077288A1 (en) * 2004-10-12 2006-04-13 Jen-Shi Wu System for format conversion using clock adjuster and method of the same
US20100178037A1 (en) * 2009-01-12 2010-07-15 Te-Wei Chen Display apparatus, video generation apparatus, and method thereof
EP2207161A2 (en) * 2009-01-12 2010-07-14 MediaTek Inc. Display apparatus, video generation apparatus, and method thereof
EP2207161A3 (en) * 2009-01-12 2011-04-13 MediaTek Inc. Display apparatus, video generation apparatus, and method thereof
US20140028267A1 (en) * 2012-07-26 2014-01-30 Samsung Sdl Co., Ltd. Battery charging method and battery pack utilizing the same
US9312712B2 (en) * 2012-07-26 2016-04-12 Samsung Sdi Co., Ltd. Method and system for controlling charging parameters of a battery using a plurality of temperature ranges and counters and parameter sets

Also Published As

Publication number Publication date
US6281873B1 (en) 2001-08-28

Similar Documents

Publication Publication Date Title
US6281873B1 (en) Video line rate vertical scaler
US5574572A (en) Video scaling method and device
EP0651577B1 (en) Digital television system
US5459528A (en) Video signal processor and method for secondary images
US6320619B1 (en) Flicker filter circuit
US5914753A (en) Apparatus and method to convert computer graphics signals to television video signals with vertical and horizontal scaling requiring no frame buffers
US5621470A (en) Interpixel and interframe interpolation of television pictures with conversion from interlaced to progressive scanning
US4733300A (en) Contour signal correction circuit for television receiver
EP0647070A2 (en) Improvements in or relating to digital television
JPH04138494A (en) Video display device
EP0735755A2 (en) Universal video format sample size converter
JPH07121085B2 (en) Video signal processor
JP2001320679A (en) Device and method for concealing interpolation artifact in video interlaced to progressive scan converter
JPH07118787B2 (en) Video signal processor
US5729297A (en) Scanning line interpolator using gamma correction memory
JPH06217229A (en) Method and apparatus for processing picture-in-picture signal in high picture quality tv
US6023262A (en) Method and apparatus in a computer system to generate a downscaled video image for display on a television system
US6084568A (en) System and methods for both 2-tap and 3-tap flicker filtering of non-interlaced computer graphics to interlaced lines for television display
US5381182A (en) Flat panel image reconstruction interface for producing a non-interlaced video signal
EP0710016A2 (en) Television receiver for broadcast systems with a multiple of display formats
JP3251487B2 (en) Image processing device
KR100480569B1 (en) Video decoder having multi-function
CA2171468C (en) Simplified image reconstruction interface
US7061537B2 (en) Adaptive deflicker method and adaptive deflicker filter
US7440030B2 (en) Method and apparatus for interlaced display of progressive video content

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: SEMICONDUCTOR COMPONENTS INDUSTRIES, LLC, ARIZONA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FAIRCHILD SEMICONDUCTOR CORPORATION;REEL/FRAME:057694/0374

Effective date: 20210722