Source: http://www.google.com/patents/US5903313?ie=ISO-8859-1&dq=6,064,942
Timestamp: 2014-07-24 11:31:51
Document Index: 30481163

Matched Legal Cases: ['art 1', 'art 1', 'art 1', 'art 1', 'art 1', 'art 1']

Patent US5903313 - Method and apparatus for adaptively performing motion compensation in a ... - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign in<nobr>Advanced Patent Search</nobr>PatentsA method of adaptively performing motion compensation in a video processing apparatus is provided. The video processing apparatus processes macroblocks of compressed video information. Some of these macroblocks have motion vectors associated therewith. The method is conveniently implemented on a general...http://www.google.com/patents/US5903313?utm_source=gb-gplus-sharePatent US5903313 - Method and apparatus for adaptively performing motion compensation in a video processing apparatusAdvanced Patent SearchPublication numberUS5903313 APublication typeGrantApplication numberUS 08/424,019Publication dateMay 11, 1999Filing dateApr 18, 1995Priority dateApr 18, 1995Fee statusPaidPublication number08424019, 424019, US 5903313 A, US 5903313A, US-A-5903313, US5903313 A, US5903313AInventorsMichael R. Tucker, Geoffrey S. Strongin, Yi LiuOriginal AssigneeAdvanced Micro Devices, Inc.Export CitationBiBTeX, EndNote, RefManPatent Citations (26), Non-Patent Citations (20), Referenced by (42), Classifications (8), Legal Events (5) External Links: USPTO, USPTO Assignment, EspacenetMethod and apparatus for adaptively performing motion compensation in a video processing apparatusUS 5903313 AAbstract A method of adaptively performing motion compensation in a video processing apparatus is provided. The video processing apparatus processes macroblocks of compressed video information. Some of these macroblocks have motion vectors associated therewith. The method is conveniently implemented on a general purpose computer in one embodiment. In accordance with the disclosed method, the performance of the processor in the computer is monitored and a measurement of this performance is made. A threshold dependent on the measured processor performance is then set. For those macroblocks which have motion vectors associated therewith, the magnitude of the motion vector is determined. If the magnitude of the motion vector of a particular macroblock exceeds the threshold, then motion compensation is performed on that macroblock. However, if the magnitude of the motion vectors or motion vectors associated with a particular macroblock do not exceed the threshold, then no motion compensation is performed. The processor is thus relieved from the computational burden of performing motion compensation on a significant number of macroblocks.
We claim: 1. A method of motion compensation in a video processing system which processes a compressed video data stream including a plurality of macroblocks of which some of the macroblocks have a motion vector associated therewith, the method being implemented in a computer, the method comprising the steps of:determining a measure of the performance of the computer including a substep selected from a group including the substeps of:checking a clock speed of the computer; checking a bus speed associated with the computer; benchmark testing performance of the computer; and checking a desired frame rate against an actual achieved frame rate; selecting a threshold which is dependent on performance determined in the determining step; selecting macroblocks in the compressed video data stream whose motion vectors exhibit a magnitude greater than the threshold thus designating selected macroblocks and remaining macroblocks; and motion compensating the selected macroblocks whose motion vectors are greater than the threshold, the remaining macroblocks not being motion compensated thus relieving the computer from a computational burden. 2. A method of motion compensation in a video processing system which processes a compressed video data stream including a plurality of macroblocks of which some of the macroblocks have a motion vector associated therewith, the method being implemented in a computer, the method comprising the steps of:determining a measure of the performance of the computer including a substep selected from a group including the substeps of:checking a clock speed of the computer; checking a bus speed associated with the computer; benchmark testing performance of the computer; and checking a desired frame rate against an actual achieved frame rate; selecting a threshold which is dependent on the performance determined in the determining step; testing a macroblock, N, in the video data stream to determine if a motion vector associated with the first macroblock exhibits a magnitude greater than the threshold, motion compensating macroblock N if the motion vector associated with macroblock N is greater than the threshold, otherwise not motion compensating macroblock N to relieve the computer from a computational burden, repeating the determining, selecting, testing and motion compensating steps on subsequent macroblocks N+1, N+2, . . . such that motion compensation is performed on the subsequent macroblocks dependent on a threshold which varies dynamically with present computer performance. 3. A video processing system comprising:a processor; and a motion compensation apparatus including:an input stream decoder for generating a compressed video data stream including a plurality of macroblocks of which some of the macroblocks have an associated motion vector; a processor performance monitor for predetermining a threshold value as a function of a measure of performance of a processor in the video processing system, the processor performance monitor including a monitor selected from a group of monitors including:a processor clock speed monitor; a processor bus speed monitor; a processor benchmark testing monitor; and a frame rate monitor; a comparator coupled to the input stream decoder and coupled to the processor performance monitor for selecting macroblocks in the compressed video data stream having motion vectors with a magnitude greater than the predetermined threshold value thus designating selected macroblocks; and a motion compensator coupled to the comparator for motion compensating the selected macroblocks having motion vectors that are greater than the threshold predetermined value. 4. A method of motion compensation in a video processing system which processes a compressed video data stream including I, P and B macroblocks, of which an I macroblock has no motion vector associated therewith, of which a P macroblock has a motion vector associated therewith, of which a B macroblock has multiple motion vectors associated therewith, the method being implemented in a computer, the method comprising the steps of:determining a measure of performance of the computer including a substep selected from a group including the substeps of:checking a clock speed of the computer; checking a bus speed associated with the computer; benchmark testing performance of the computer; and checking a desired frame rate against an actual achieved frame rate; selecting a threshold which is dependent on the performance determined in the determining step; selecting P macroblocks in the compressed video data stream whose motion vectors exhibit a magnitude greater than the threshold thus designating selected P macroblocks and remaining P macroblocks; motion compensating the selected P macroblocks whose motion vectors are greater than the threshold, the remaining P macroblocks not being motion compensated thus relieving the computer from a computational burden, selecting B macroblocks in the compressed video data stream whose multiple motion vectors exhibit a magnitude greater than the threshold thus designating selected B macroblocks and remaining B macroblocks; and motion compensating the selected B macroblocks whose multiple motion vectors are greater than the threshold, the remaining B macroblocks not being motion compensated thus relieving the computer from a computational burden. 5. A video processing apparatus including a processor for processing a compressed video data stream including a plurality of macroblocks of which some of the macroblocks have a motion vector associated therewith, said video processing apparatus comprising:a processor performance monitor for determining a measure of performance of the processor and for predetermining a threshold value based on the measure of performance, the processor performance monitor including a monitor selected from a group of monitors including:a processor clock speed monitor; a processor bus speed monitor; a processor benchmark testing monitor; and a frame rate monitor; a motion vector magnitude testing circuit for determining which macroblocks in the compressed video data stream have motion vectors exhibiting a magnitude greater than the predetermined threshold value thus designating selected macroblocks; and a motion compensation circuit, coupled to the motion vector magnitude determining circuit, for motion compensating the selected macroblocks whose motion vectors exhibit greater than the predetermined threshold value. 6. A video processing apparatus for processing a compressed video data stream including a plurality of macroblocks of which some of the macroblocks have a motion vector associated therewith, said video processing apparatus including a host processor, said video processing apparatus comprising:a performance monitor for determining a measure of performance of the host processor, the processor performance monitor including a monitor selected from a group of monitors including:a processor clock speed monitor; a processor bus speed monitor; a processor benchmark testing monitor; and a frame rate monitor; a threshold setting circuit coupled to the performance monitor for setting a threshold which is dependent on the measure of performance determined by the performance monitor; a motion vector magnitude testing circuit responsive to the compressed video data stream and coupled to the threshold setting circuit for determining which macroblocks in the compressed video data stream have motion vectors exhibiting a magnitude greater than the threshold value thus designating selected macroblocks, any remaining macroblocks being designated as remaining macroblocks; and a motion compensating circuit coupled to the motion vector magnitude testing circuit for motion compensating the selected macroblocks whose motion vectors exhibit a magnitude greater than the threshold value, the remaining macroblocks not being motion compensated thus relieving the host processor from a computational burden. Description
CROSS REFERENCE TO RELATED PATENT APPLICATIONS This patent application is related to the commonly assigned copending patent application entitled "SYSTEM FOR OPTIMIZING STORAGE OF VIDEO DATA ARRAYS IN MEMORY" by Rita O'Brien, (Ser. No. 08/423,769, filed on Apr. 18, 1995) the disclosure of which is incorporated herein by reference.
SUMMARY OF THE INVENTION Conventional video decoders or decompressing systems typically decode a macroblock of a present P frame by performing motion compensation with a motion vector applied to a corresponding macroblock of a past reference frame. Such video decoders also decode a macroblock of a B frame by performing motion compensation with motion vectors applied to respective past and future reference frames.
DETAILED DESCRIPTION OF THE INVENTION The frame buffer of a video decoding system is used to reconstruct each frame of a video image prior to display of the frame on a display. In one embodiment, a frame buffer used to build the current P frame or current B frame is initialized with pixel values already determined for the previous frame, rather than starting with a new frame buffer or with a frame buffer which has been cleared. More particularly, pixels for a given P macroblock within the current P frame, reuse the pixel values from a previous P or I frame if the magnitude of the motion vector associated with the P macroblock with the current P frame is less than a predetermined threshold value. When the current frame is a current B frame, pixels for a given B macroblock within the current B frame reuse the pixel values from a previous I or P or B frame if the magnitudes of the two motion vectors associated with the B macroblock within the current B frame are less than a predetermined threshold value.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5150210 *Dec 3, 1991Sep 22, 1992Canon Kabushiki KaishaImage signal restoring apparatusUS5164828 *Feb 21, 1991Nov 17, 1992Sony CorporationVideo signal transmission and method and apparatus for coding video signal used in thisUS5247363 *Mar 2, 1992Sep 21, 1993Rca Thomson Licensing CorporationError concealment apparatus for hdtv receiversUS5287420 *Apr 8, 1992Feb 15, 1994Supermac TechnologyMethod for image compression on a personal computerUS5315670 *Nov 12, 1991May 24, 1994General Electric CompanyDigital data compression system including zerotree coefficient codingUS5329318 *May 13, 1993Jul 12, 1994Intel CorporationMethod for optimizing image motion estimationUS5353062 *Sep 16, 1993Oct 4, 1994Canon Kabushiki KaishaMethod and apparatus for decoding moving images encoded by inter-frame prediction and displaying itUS5357282 *Sep 30, 1993Oct 18, 1994Goldstar Co., Ltd.Video decoder with parallel implementationUS5369438 *May 17, 1993Nov 29, 1994Goldstar Co., Ltd.Apparatus for processing image motion compensation information for an image processing systemUS5371547 *May 20, 1993Dec 6, 1994General Electric CompanyApparatus for excising (and reinserting) specific data from a compressed video data stream to reduce its transmission bandwidthUS5371611 *Aug 17, 1993Dec 6, 1994Kokusai Denshin Denwa Kabushiki KaishaMethod for and system of decoding compressed continuous-tone digital image dataUS5375070 *Mar 1, 1993Dec 20, 1994International Business Machines CorporationInformation collection architecture and method for a data communications networkUS5386232 *Jun 16, 1993Jan 31, 1995Intel CorporationMethod and apparatus for encoding images using a specified data formatUS5408269 *May 24, 1993Apr 18, 1995Sony CorporationMoving picture encoding apparatus and methodUS5410553 *Jul 24, 1992Apr 25, 1995Goldstar Co., Ltd.Error concealment control method and device of digital video signalUS5418568 *Aug 1, 1994May 23, 1995Intel CorporationMethod and apparatus for scalable compression and decompression of a digital motion video signalUS5446492 *Jan 19, 1993Aug 29, 1995Wolf; StephenPerception-based video quality measurement systemUS5461679 *May 14, 1993Oct 24, 1995Apple Computer, Inc.Method and apparatus for encoding/decoding image dataUS5481364 *Nov 10, 1993Jan 2, 1996Fuji Photo Film Co., Ltd.Apparatus for adaptively generating a decoder table for variable-length codes using a stored coding tableUS5481727 *Nov 15, 1993Jan 2, 1996Mitsubishi Denki Kabushiki KaishaBus control for a plurality of digital signal processors connected to a common memoryUS5488419 *Mar 15, 1993Jan 30, 1996Matsushita Electric Industrial Co., Ltd.Video compression coding and decoding with automatic sub-pixel frame/field motion compensationUS5502493 *May 19, 1994Mar 26, 1996Matsushita Electric Corporation Of AmericaVariable length data decoder for use with MPEG encoded video dataUS5510840 *May 15, 1995Apr 23, 1996Sony CorporationMethods and devices for encoding and decoding frame signals and recording medium thereforUS5523847 *Oct 9, 1992Jun 4, 1996International Business Machines CorporationDigital image processor for color image compressionUS5543846 *Sep 22, 1992Aug 6, 1996Sony CorporationMotion picture encoding systemUS5563928 *May 15, 1995Oct 8, 1996Lsi Logic CorporationMethod and apparatus for optimizing the performance of digital systems* Cited by examinerNon-Patent CitationsReference1Andy C. Hung, et al, "A Comparison of Fast Inverse Discrete Cosine Transform Algorithms", Multimedia Systems, �1994, pp. 204-217.2 *Andy C. Hung, et al, A Comparison of Fast Inverse Discrete Cosine Transform Algorithms , Multimedia Systems, 1994, pp. 204 217.3Dr. Richard Baker "Standards Dominate Videoconferencing Implementataions", Computer Design, Dec. 1994, pp. 66-70.4 *Dr. Richard Baker Standards Dominate Videoconferencing Implementataions , Computer Design, Dec. 1994, pp. 66 70.5 *ISO/IEC 11172 1, Information Technology Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to about 1,5 Mbit/s Part 1: Systems, Aug. 1, 1993, pp. i vi, 1 53.6 *ISO/IEC 11172 2, Information Technology Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to about 1,5 Mbit/s Part 1: Video, Aug. 1, 1993, pp. i ix, 1 112.7 *ISO/IEC 11172 3, Information Technology Coding of Moving Pictures and Associated Audio For Digital Storage Media at up to about 1,5 Mbit/s Part 1: Audio, Aug. 1, 1993, pp. i vi, 1 150.8ISO/IEC 11172-1, Information Technology-Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to about 1,5 Mbit/s --Part 1: Systems, Aug. 1, 1993, pp. i-vi, 1-53.9ISO/IEC 11172-2, Information Technology-Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to about 1,5 Mbit/s -Part 1: Video, Aug. 1, 1993, pp. i-ix, 1-112.10ISO/IEC 11172-3, Information Technology-Coding of Moving Pictures and Associated Audio For Digital Storage Media at up to about 1,5 Mbit/s --Part 1: Audio, Aug. 1, 1993, pp. i-vi, 1-150.11Kevin L. Gong, et al., "Parallel MPEG-1 Video Encoding", Report, University of California, Berkeley, Computer Science Division, 1994, pp. 1-14.12 *Kevin L. Gong, et al., Parallel MPEG 1 Video Encoding , Report, University of California, Berkeley, Computer Science Division, 1994, pp. 1 14.13Lawrence A. Rowe, et al., "MPEG Video in Software: Representation, Transmission, and Playback", High Speed Networking and Multimedia Computing, Symp. on Elec. Imaging Sci. & Tech., San Jose, CA, Feb. 1994, pp. 1-11.14 *Lawrence A. Rowe, et al., MPEG Video in Software: Representation, Transmission, and Playback , High Speed Networking and Multimedia Computing, Symp. on Elec. Imaging Sci. & Tech., San Jose, CA, Feb. 1994, pp. 1 11.15P1180/D1, "Draft Standard Specification for the Implementations of 8�8 Inverse Descrete Cosine Transform", May, 29, 1990, pp. 1-9.16 *P1180/D1, Draft Standard Specification for the Implementations of 8 8 Inverse Descrete Cosine Transform , May, 29, 1990, pp. 1 9.17Peng H. Ang, et al., "Video Compression Makes Big Gains", IEEE Spectrum, Oct. 1991, pp. 16-19.18 *Peng H. Ang, et al., Video Compression Makes Big Gains , IEEE Spectrum, Oct. 1991, pp. 16 19.19 *Stephen ohr digital Video Spearheads TV and Videoconferencing Applications , Computer Design, Dec. 1994, 59 64.20Stephen ohr"digital Video Spearheads TV and Videoconferencing Applications", Computer Design, Dec. 1994, 59-64.* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS5974185 *Jun 19, 1998Oct 26, 1999Hitachi America, Ltd.Methods and apparatus for encoding video data using motion vectors for decoding by regular or downconverting decodersUS6025879 *Aug 11, 1997Feb 15, 2000Kokusai Denshin Denwa Kabushiki KaishaSystem for moving object detection in moving pictureUS6389071 *Oct 9, 1998May 14, 2002Matsushita Electric Industrial Co., Ltd.Method for reducing processing power requirements of a video decoderUS6456337 *Mar 4, 1998Sep 24, 2002Fujitsu General LimitedMoving image correcting circuit for display deviceUS6850568 *Jan 12, 2000Feb 1, 2005Sony CorporationMethod and apparatus for decoding mpeg video signalsUS6859500Jan 30, 2002Feb 22, 2005Telefonaktiebolaget Lm EricssonRun-length coding of non-coded macroblocksUS6873655Aug 31, 2001Mar 29, 2005Thomson Licensing A.A.Codec system and method for spatially scalable video dataUS6876703Apr 27, 2001Apr 5, 2005Ub Video Inc.Method and apparatus for video codingUS6907071May 21, 2002Jun 14, 2005Telefonaktiebolaget Lm Ericsson (Publ)Selective prediction for intra-coding video data blockUS7054540 *Feb 2, 2001May 30, 2006Sony CorporationInformation processing apparatus and method, and program storage mediumUS7113545Aug 27, 2001Sep 26, 2006Thomson LicensingMethod and apparatus for motion compensated temporal interpolation of video sequencesUS7177889Jan 23, 2002Feb 13, 2007General Instrument Corp.Methods and systems for efficient filtering of digital signalsUS7203372May 19, 2003Apr 10, 2007Cisco Technology, Inc.Extension of two-dimensional variable length coding for image compressionUS7212681 *Jan 15, 2003May 1, 2007Cisco Technology, Inc.Extension of two-dimensional variable length coding for image compressionUS7248631 *Feb 1, 2002Jul 24, 2007Matsushita Electric Industrial Co., Ltd.Method for reducing processing power requirements of a video decoderUS7324699Feb 15, 2007Jan 29, 2008Cisco Technology, Inc.Extension of two-dimensional variable length coding for image compressionUS7599437 *Mar 13, 2007Oct 6, 2009Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7636497Dec 27, 2005Dec 22, 2009Advanced Micro Devices, Inc.Video rotation in a media acceleration engineUS7636746Aug 29, 2005Dec 22, 2009General Instrument CorporationMethods and systems for efficient filtering of digital signalsUS7792385Jan 25, 2005Sep 7, 2010Globalfoundries Inc.Scratch pad for storing intermediate loop filter dataUS7885332 *Sep 3, 2009Feb 8, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7885333 *Sep 3, 2009Feb 8, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7903740 *Sep 3, 2009Mar 8, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7944972 *Sep 3, 2009May 17, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7944973 *Sep 3, 2009May 17, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7949048 *Sep 3, 2009May 24, 2011Kabushiki Kaisha ToshibaVideo encoding/decoding method and apparatusUS7965773Jun 30, 2005Jun 21, 2011Advanced Micro Devices, Inc.Macroblock cacheUS7991813Aug 29, 2005Aug 2, 2011General Instrument CorporationMethods and systems for efficient filtering of digital signalsUS8009731 *Aug 28, 2003Aug 30, 2011Panasonic CorporationMotion compensation method, picture coding method and picture decoding methodUS8111934Mar 21, 2007Feb 7, 2012Cisco Technology, Inc.Extension of two-dimensional variable length coding for image compressionUS8233539 *Oct 23, 2007Jul 31, 2012Samsung Electronics Co., Ltd.Method and apparatus for transmitting packet-based image frameUS8355442 *Nov 7, 2007Jan 15, 2013Broadcom CorporationMethod and system for automatically turning off motion compensation when motion vectors are inaccurateUS8548051 *Feb 3, 2010Oct 1, 2013Microsoft CorporationMedia coding for loss recovery with remotely predicted data unitsUS8576924Jan 25, 2005Nov 5, 2013Advanced Micro Devices, Inc.Piecewise processing of overlap smoothing and in-loop deblockingUS8634413Dec 30, 2004Jan 21, 2014Microsoft CorporationUse of frame caching to improve packet loss recoveryUS8660185Jul 28, 2011Feb 25, 2014Panasonic CorporationPicture decoding apparatus and method for decoding a picture using motion compensationUS20050100099 *Oct 29, 2004May 12, 2005Takahiro NishiImage decoding method, image decoding apparatus, and data storage mediumUS20080002773 *Jun 21, 2007Jan 3, 2008Texas Instruments IncorporatedVideo decoded picture bufferUS20100027663 *Oct 9, 2008Feb 4, 2010Qualcomm IncorporatedIntellegent frame skipping in video coding based on similarity metric in compressed domainUS20100135412 *Feb 3, 2010Jun 3, 2010Microsoft CorporationMedia coding for loss recovery with remotely predicted data unitsCN101141651BAug 28, 2003Nov 10, 2010松下电器产业株式会社Motion compensation method, picture coding method and picture decoding methodWO2002076104A2 *Mar 20, 2002Sep 26, 2002Ericsson Telefon Ab L MRun-length coding of non-coded macroblocks* Cited by examinerClassifications U.S. Classification375/240.15, 348/720, 375/E07.256, 348/699, 375/240.25International ClassificationH04N7/36Cooperative ClassificationH04N19/00587European ClassificationH04N7/36CLegal EventsDateCodeEventDescriptionOct 25, 2010FPAYFee paymentYear of fee payment: 12Sep 26, 2006FPAYFee paymentYear of fee payment: 8Sep 24, 2002FPAYFee paymentYear of fee payment: 4Feb 15, 2000CCCertificate of correctionJun 5, 1995ASAssignmentOwner name: ADVANCED MICRO DEVICES, INC., CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TUCKER, MICHAEL R.;STRONGIN, GEOFFREY S.;LIU, YI;REEL/FRAME:007503/0534Effective date: 19950601RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google