US7236527B2 - Motion vector search apparatus and method - Google Patents

Motion vector search apparatus and method Download PDF

Info

Publication number
US7236527B2
US7236527B2 US10/431,784 US43178403A US7236527B2 US 7236527 B2 US7236527 B2 US 7236527B2 US 43178403 A US43178403 A US 43178403A US 7236527 B2 US7236527 B2 US 7236527B2
Authority
US
United States
Prior art keywords
search
motion vector
frame
blocks
specific blocks
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.)
Expired - Fee Related, expires
Application number
US10/431,784
Other languages
English (en)
Other versions
US20030215015A1 (en
Inventor
Tadashi Ohira
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Assigned to CANON KABUSHIKI KAISHA reassignment CANON KABUSHIKI KAISHA ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OHIRA, TADASHI
Publication of US20030215015A1 publication Critical patent/US20030215015A1/en
Application granted granted Critical
Publication of US7236527B2 publication Critical patent/US7236527B2/en
Adjusted expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation

Definitions

  • the present invention relates to motion vector search apparatus and method that favorably search for motion vectors between frames of digital moving pictures.
  • the block matching method is a method in which a block in a reference frame in the same position as a motion search target block (N ⁇ N pixel area) is used as a center to calculate matching evaluation functions with blocks that shifted in units of pixels within a search range of ⁇ M ⁇ M pixels, the best matching block is searched, and the amount and direction of the shift to the matching block is used as the motion vector.
  • a difference evaluation value a sum of absolute values of differences between pixel values calculated on a pixel to pixel basis for all pixels within the block (i.e., a difference evaluation value) may be used, for example.
  • the block matching method has a problem in that searches must be conducted a great number of times, which requires an enormous amount of calculation when this system is realized. For this reason, various simplification techniques such as a method of searching with multiple steps, such as, for example, a 3-step search method have been suggested.
  • a search is made at rough search-point intervals as the first step, and then the second search is made at search-point intervals each of which is a half of the interval for the first step around the best matching position as a center, instead of the all-pixel position search.
  • the same process is repeated in a plurality of steps to narrow the coarse search-point intervals to close ones, thereby searching for a motion vector.
  • the amount of calculation can be significantly reduced with the 3-step search method than with the block matching method that performs the all-pixel position search described above.
  • the 3-step search method entails a possibility of finding a motion vector completely different from the search direction sought if an erroneous search is made in the first step.
  • the present invention takes the circumstances described above into consideration and relates to a motion vector search apparatus and a motion vector search method that can reduce the number of searches in block matching and search for the motion vector at higher speed and more appropriately.
  • a motion vector search apparatus that searches for an inter-frame motion vector of motion pictures
  • the motion vector search apparatus comprising: a target frame input component to input a search target frame to be coded; a reference frame input component to input as a reference frame a frame on which a motion vector search has been performed; a search pattern determination component that uses specific blocks set within the search target frame and reference blocks set within the reference frame to perform a block matching within a predetermined range of the reference frame and determine a search pattern for a motion vector for the entire frame; and a motion vector search component that uses the search pattern determined by the search pattern determination component to execute a block matching in predetermined units of blocks on the inputted search target frame to be coded and generate a motion vector.
  • a motion vector search method to search for an inter-frame motion vector of a motion picture, the motion vector search method comprising the steps of: a target frame input step of inputting a search target frame; a reference frame input step of inputting as a reference frame a frame on which a motion vector search has been performed; a search pattern determination step of performing a block matching within a predetermined range of the reference frame and determining a search pattern for a motion vector for the entire frame by using a specific blocks set within the search target frame and a reference blocks set within the reference frame; and a motion vector searching step of executing a block matching in predetermined units of blocks on the inputted search target frame to be coded and generate a motion vector by using the search pattern determined in the search pattern determination step.
  • FIG. 1 is a block diagram of a configuration of a motion vector search apparatus according to a first embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a frame configuration including I-VOPs and P-VOPs according to the present embodiment.
  • FIG. 3 is a diagram illustrating the positions of eight encoding target macro blocks set within a frame according to the present embodiment.
  • FIG. 4 is a diagram of one example of a search sequence pattern with an omnidirectional search sequence.
  • FIGS. 5( a )- 5 ( h ) are diagrams of search sequence pattern examples with eight directivities in search sequences.
  • FIG. 6 is a flowchart for describing an operation procedure of the motion vector search apparatus according to the present invention.
  • FIG. 7 is a flowchart for describing a procedure performed by a general motion vector search unit 103 in FIG. 1 to search for a motion vector for each macro block.
  • FIG. 8 is a flowchart for describing a procedure performed by the general motion vector search unit 103 in FIG. 1 to determine a search sequence pattern.
  • FIG. 9 is a block diagram of a structure of an encoding apparatus with the motion vector search apparatus in FIG. 1 .
  • FIG. 10 is a diagram for describing sub-sampled macro blocks.
  • FIG. 11 is a block diagram of a structure of a computer that realizes the motion vector search apparatus.
  • FIG. 12 is a flowchart for describing an operation of the computer with the structure shown in FIG. 11 .
  • a method to realize the present invention using the MPEG-4 encoding method (ISO/IEC 14496-2) will be described.
  • a natural picture is called a video object (VO).
  • the VO is made up of a plurality of video object planes (VOP) photographed at given times.
  • VOP video object planes
  • Each VOP corresponds to a frame, and is a basic unit of picture data treated in the MPEG-4.
  • Each VOP is divided into macro blocks (MB), which are basic process units.
  • the macro blocks are units that determine the encoding mode, as well as processing units to find a motion vector.
  • MPEG-4 version 1 supports a 4:2:0 picture format, and each macro block consequently consists of four luminance blocks and two color difference blocks, each made up of 8 ⁇ 8 pixels.
  • I-VOP intra-encoded VOP
  • P-VOP inter-encoded encoding
  • a plurality of frames forming a group is called a GOV (Group of VOPs), which always contains an I-VOP by a single frame only.
  • FIG. 1 is a block diagram of a configuration of a motion vector search apparatus according to the first embodiment of the present invention.
  • a motion vector search apparatus 1 includes frame memories 100 and 101 , a motion vector memory 102 , a general motion vector search unit 103 , a motion vector search unit 104 , and a search sequence table 105 .
  • the frame memory 100 is a memory that stores an encoding target frame, which is a frame that is to be encoded and inputted into the apparatus.
  • the frame memory 101 is a memory that stores a reference frame that is referred to when performing a motion vector search, e.g., a previous frame for which a motion vector has been searched immediately preceding the current processing.
  • a reference frame is a previous frame that precedes the encoding target frame.
  • the motion vector memory 102 is a memory that stores the motion vector searched at the immediately preceding frame.
  • FIG. 2 is a diagram of a frame configuration including I-VOPs and P-VOPs according to the present embodiment.
  • an I-VOP appears every 15 frames, with 14 frames of P-VOPs in between.
  • the search sequence table 105 stores a plurality of search sequence patterns indicating motion vector search sequences.
  • the search sequence patterns used in the present embodiment are determined by concentrating on specifying the sequence or direction of a search in view of the fact that motion vectors often indicate a certain direction when the camera pans as it photographs pictures. The details of the search sequence patterns will be described later.
  • Predetermined specific macro blocks are inputted in the general motion vector search unit 103 from the encoding target frame stored in the frame memory 100 . By comparing these macro blocks with the reference frame stored in the frame memory 101 , a motion vector for each specific macro block can be searched. Furthermore, based on each of the motion vectors searched, the general motion vector search unit 103 outputs search sequence pattern number information for search sequence pattern stored in the search sequence table 105 .
  • FIG. 3 is a diagram indicating the positions of eight specific macro blocks set within a frame according to the present embodiment.
  • specific macro blocks 31 - 38 each having a predetermined size are set at eight locations in one frame according to the present embodiment.
  • the motion vector search unit 104 Based on the search sequence pattern number information outputted from the general motion vector search unit 103 , the motion vector search unit 104 refers to search sequence patterns that are stored in the search sequence table 105 and that correspond to the search sequence pattern number information, and performs a motion vector search for all encoding target macro blocks. The motion vector search unit 104 outputs prediction macro blocks that are obtained as a result of the motion vector search, as well as their motion vectors.
  • each circle in the figures represents one pixel and a search takes place in the order indicated by the arrows on the pixels.
  • FIG. 4 is a diagram of one example of a search sequence pattern with an omnidirectional search sequence.
  • the search sequence pattern indicates a search whose sequence begins at the center and spirals outward.
  • FIGS. 5( a )- 5 ( h ) show search sequence pattern examples with eight directivities in search sequences. It is assumed that the search sequence pattern in FIG. 4 has a search sequence pattern number “0,” the search sequence pattern in FIG. 5( a ) has a search sequence pattern number “1,” the search sequence pattern in FIG. 5( b ) has a search sequence pattern number “2,” the search sequence pattern in FIG. 5( c ) has a search sequence pattern number “3,” the search sequence pattern in FIG.
  • FIG. 5 (d) has a search sequence pattern number “4”
  • the search sequence pattern in FIG. 5( e ) has a search sequence pattern number “5”
  • the search sequence pattern in FIG. 5( f ) has a search sequence pattern number “6”
  • the search sequence pattern in FIG. 5( g ) has a search sequence pattern number “7”
  • the search sequence pattern in FIG. 5( h ) has a search sequence pattern number “8.” It is assumed that a predetermined search range is set for each of the search sequence patterns.
  • FIG. 6 is a flowchart that describes the operation procedure of the motion vector search apparatus according to the present invention.
  • the encoding target frame (P-VOP) is stored in the frame memory 100 of the motion vector search apparatus 1 , while the reference frame (I-VOP) is stored in the frame memory 101 (step S 61 ).
  • the general motion vector search unit 103 refers to the reference frame stored in the frame memory 101 and executes a motion vector search for the eight specific macro blocks 31 - 38 that are stored in the frame memory 100 (step S 62 ). Based on the motion vector searched for each of the specific macro blocks 31 - 38 , the general motion vector search unit 103 determines and outputs search sequence pattern numbers. The procedure to determine the search sequence pattern number is described in detail later.
  • the motion vector search unit 104 refers to the search sequence patterns in the search sequence table 105 that correspond to the numbers, and performs a motion vector search according to the search sequences of the search sequence patterns. Lastly, the motion vector search unit 104 outputs prediction macro blocks selected as a result of the search, as well as the motion vectors for the prediction macro blocks (step S 63 ).
  • the encoding target frame (P-VOP) is stored in the frame memory 100 of the motion vector search apparatus 1
  • the reference frame (P-VOP) is stored in the frame memory 101
  • the motion vectors of the preceding frame are stored in the motion vector memory 102 (step S 61 ).
  • the general motion vector search unit 103 refers to the reference frame stored in the frame memory 101 and executes a motion vector search for each of the eight predetermined specific macro blocks 31 - 38 that are stored in the frame memory 100 (step S 62 ). Based on the motion vector searched for each of the specific macro blocks 31 - 38 , the general motion vector search unit 103 determines and outputs search sequence pattern numbers. The procedure to determine the search sequence pattern numbers is described in detail later.
  • the motion vector search unit 104 determines the beginning position of the search based on the motion vector, which is stored in the motion vector memory 102 , of the macro block that is set at the same position in the preceding frame. Next, based on the search sequence pattern number from the general motion vector search unit 103 , the motion vector search unit 104 refers to the search sequence pattern in the search sequence table 105 and performs a motion vector search according to the search sequence of the search sequence pattern. Lastly, the motion vector search unit 104 outputs prediction macro blocks selected as a result of the search, as well as the motion vectors for the prediction macro blocks (step S 63 ).
  • FIG. 7 is a flowchart that describes a procedure performed by the general motion vector search unit 103 in FIG. 1 to search for a motion vector for each macro block.
  • FIG. 8 is a flowchart that describes a procedure performed by the general motion vector search unit 103 in FIG. 1 to determine a search sequence pattern.
  • the processing in the two flowcharts in FIGS. 7 and 8 corresponds to step S 62 in the flowchart in FIG. 6 .
  • a motion vector search is performed for each of the eight specific macro blocks shown in FIG. 3 .
  • this motion vector search starts with a search sequence pattern shown in FIG. 4 whose search sequence pattern number registered in the search sequence table 105 is “0”.
  • a specific macro block is inputted (step S 200 )
  • a reference macro block in the position of the reference frame that corresponds to the specific macro block is inputted (step S 201 ).
  • an absolute value of difference mae between the two frames at the search point (0, 0) of the search sequence pattern “0” for the specific macro block and the reference macro block inputted is calculated, and the value is substituted for min_mae (step S 202 ). This value becomes the initial value of min_mae.
  • the specific macro block is retained in the general motion vector search unit 103 .
  • the pixel value of the specific macro block of the next search point (i, j) according to the search sequence pattern “0” is inputted (step S 203 ).
  • the pixel value of the same position in the reference macro block is inputted (step S 204 ).
  • step S 205 the absolute value of difference mae between the pixel value of the reference macro block and the pixel value of the specific macro block is calculated.
  • step S 206 The sizes of min_mae and mae are compared. If min_mae is found, as a result of the comparison, to be larger than mae (YES), (i, j) is substituted for the motion vector (mvx, mvy) and mae is substituted for min_mae (step S 207 ).
  • Steps S 203 through S 207 are repeated until the search sequence reaches outside the search range (step S 208 ).
  • the motion vector retained (mvx, mvy) is outputted (step S 209 ).
  • the reference macro block (mvx, mvy) is outputted as a prediction macro block (step S 210 ).
  • a general motion vector (gmvx, gmvy) is obtained from the deviation among the eight motion vectors found (dev_mvx, dev_mvy) and the average of the eight motion vectors (avg_mvx, avg_mvy) (step S 300 ).
  • a search pattern number that defines a pattern of the search sequence is found from the direction of the general motion vector.
  • step S 303 If the result of the determination made in step S 303 is true (YES), the search sequence pattern number is set to “1” (step S 304 ). On the other hand, if the determination result is false (NO), whether gmvx>0 and gmvy ⁇ 0 are true or false is determined (step S 305 ).
  • step S 307 If the result of the determination made in step S 307 is true (YES), the search sequence pattern number becomes “3” (step S 308 ). On the other hand, if the determination result is false (NO), whether gmvx ⁇ 0 and gmvy ⁇ 0 are true or false is determined (step S 309 ).
  • step S 311 If the result of the determination made in step S 311 is true (YES), the search sequence pattern number becomes “5” (step S 312 ). On the other hand, if the determination result is false (NO), whether gmvx ⁇ 0 and gmvy>0 are true or false is determined (step S 313 ).
  • step S 315 If the result of the determination made in step S 315 is true (YES), the search sequence pattern number becomes “7” (step S 316 ). On the other hand, if the determination result is false (NO), the search sequence pattern number becomes “8” (step S 317 ).
  • the motion vector search procedure performed by the motion vector search unit 104 in FIG. 1 is similar to the procedure shown in FIG. 7 .
  • FIG. 9 is a block diagram of the structure of an encoding apparatus provided with the motion vector search apparatus in FIG. 1 .
  • an MB dividing device 900 divides a frame picture inputted into units of MBs.
  • An encoder 901 predictively encodes current MBs based on a predictive MB obtained from a motion vector search device 902 .
  • the encoder 901 also encodes a motion vector obtained from the motion vector search device 902 .
  • the motion vector search device 902 corresponds to the motion vector search apparatus in FIG. 1 .
  • a frame that is the target of encoding is inputted, and the inputted frame picture is divided into MBs by the MB dividing device 900 .
  • the encoder 901 encodes the inputted MBs according to the MPEG-4 encoding method (ISO/IEC 14496-2).
  • MBs that have undergone localized decoding are transferred from the encoder 901 and stored in the motion vector search device 902 as a reference frame to be used when encoding the next frame.
  • motion vector searches as described earlier are performed based on the MBs of the reference frame stored in the motion vector search device 902 and of the current frame inputted, and prediction MBs and their motion vectors are outputted. This operation is repeated.
  • the MPEG-4 encoding method is used as an example of the application of the motion vector search apparatus, but the application of the present invention is not limited to this encoding method and can be applied to a motion compensation inter-picture prediction encoding method as well.
  • the general motion vector search can be executed at an appropriate frame cycle, such as at an interval of a few frames.
  • the number of specific macro blocks is eight according to the present embodiment, the number is not limited to this and may be other numbers.
  • the positions of the specific macro blocks are indicated in FIG. 3 , but the positions may be otherwise.
  • a spiral search sequence is applied to the motion vector search according to the present embodiment, other search sequences may be used.
  • a difference evaluation value that evaluates the similarity between the encoding target macro block and the reference macro block is used as the difference absolute value when searching for a motion vector, values that use other evaluation functions can be used.
  • Blocks resulting from sub-sampling a target block and a reference block used in the first embodiment may be used (see FIG. 10 ).
  • a motion vector for a frame as a whole is detected according to the present embodiment by targeting a limited number of macro blocks.
  • a motion vector search method with reduced number of searches but that is high-speed and appropriate can be provided.
  • FIG. 11 is a block diagram of the detailed structure of a computer that realizes the motion vector search apparatus described above.
  • a central processing unit (CPU) 500 controls and performs various processing of the entire computer.
  • a memory 501 provides storage regions required for software, data and an operating system (OS) and operations, which are required to control the computer.
  • OS operating system
  • the memory 501 is also used as a work area when the CPU 500 performs various processing.
  • the memory 501 stores the OS to control the entire computer and to operate various software, as well as software to be operated; it also has an area to read video data to be encoded, an encoding area to temporarily store encoding data, and a working area to store parameters for various operations.
  • a storage apparatus (a storage medium) 503 stores various software, and a storage apparatus (a storage medium) 504 stores moving picture data.
  • a monitor 505 displays pictures and system messages from the computer.
  • a communications interface (I/F) 507 transmits encoding data to a communications circuit 508 , not shown.
  • the communications I/F 507 is connected to a LAN, public telephone line, wireless communications or broadcast airwave external to the motion vector search apparatus realized with the computer.
  • a terminal 506 is used to activate the computer and set various conditions, such as bit rate.
  • the CPU 500 , the memory 501 , the terminal 506 , the storage apparatuses (storage media) 503 and 504 , the monitor 505 and the communications I/F 507 are mutually connected via a bus 502 , which allows the various elements to exchange data and control signals with each other.
  • FIG. 12 is a flowchart that describes the operations of the computer configured as shown in FIG. 11 .
  • moving picture data to be encoded is selected through the terminal 506 from among moving picture data stored in the storage apparatus 504 , and the computer is instructed to be activated (step S 101 ).
  • the software stored in the storage apparatus 503 is developed in the memory 501 via the bus 502 and activated (step S 102 ).
  • the CPU 500 encodes the moving picture data stored in the storage apparatus 504 by executing program codes (i.e., the software) according to the flowcharts shown in FIGS. 7 and 8 (step S 103 ).
  • program codes i.e., the software
  • FIGS. 7 and 8 step S 103 .
  • the computer according to the present embodiment can function as a motion vector search apparatus that realizes the motion vector search according to the first embodiment.
  • the present invention may be applicable to a system that is composed of a plurality of apparatuses (for example, a host computer, interface devices, readers, printers and the like), or to a unit that is composed of a single apparatus (for example, a copy machine, a facsimile machine or the like).
  • a host computer for example, a host computer, interface devices, readers, printers and the like
  • a unit that is composed of a single apparatus for example, a copy machine, a facsimile machine or the like.
  • the present invention can be achieved by having a storage medium that stores program codes of software that realize the functions of the embodiments described above supplied to a system or an apparatus, and by having a computer (or a CPU or an MPU) of the system or the apparatus read and execute the program codes stored in the storage medium.
  • the program codes themselves that are read from the storage medium realize the functions of the embodiment of the present invention
  • the storage medium that stores the program codes constitute the present invention.
  • the present invention is applicable not only when the program codes read by a computer are executed to realize the functions of the embodiments, but also when an operating system that operates on the computer performs a part or all of the actual processing based on the instructions contained in the program codes and thereby realizes the functions of the embodiments.
  • the present invention is also applicable when the program codes that are read from the storage medium are written on a memory of an expansion board inserted into a computer or of an expansion unit connected to a computer, and a CPU provided on the expansion board or on the expansion unit performs a part or all of the actual processing based on the instructions contained in the program codes and thereby realizes the functions of the embodiments.
  • synchronization control information appended to media data and synchronization control information appended to IPMP information are synchronized, and information that indicates timings to start processings that are defined by the IPMP information are generated in association with the respective synchronization control information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
US10/431,784 2002-05-08 2003-05-08 Motion vector search apparatus and method Expired - Fee Related US7236527B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP132839/2002 2002-05-08
JP2002132839A JP2003324743A (ja) 2002-05-08 2002-05-08 動きベクトル探索装置及び動きベクトル探索方法

Publications (2)

Publication Number Publication Date
US20030215015A1 US20030215015A1 (en) 2003-11-20
US7236527B2 true US7236527B2 (en) 2007-06-26

Family

ID=29416651

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/431,784 Expired - Fee Related US7236527B2 (en) 2002-05-08 2003-05-08 Motion vector search apparatus and method

Country Status (2)

Country Link
US (1) US7236527B2 (enrdf_load_stackoverflow)
JP (1) JP2003324743A (enrdf_load_stackoverflow)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050265447A1 (en) * 2004-05-25 2005-12-01 Industry Academic Cooperation Foundation Kyunghee Univ. Prediction encoder/decoder, prediction encoding/decoding method, and computer readable recording medium having recorded thereon program for implementing the prediction encoding/decoding method
US20060062305A1 (en) * 2004-09-17 2006-03-23 Primax Electronics Ltd. Method for block-matching motion estimation with effective computation while small motion movement
US20070086525A1 (en) * 2004-10-18 2007-04-19 Wataru Asano Motion vector detection method and device of the same
US9113164B1 (en) 2012-05-15 2015-08-18 Google Inc. Constant bit rate control using implicit quantization values
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
US9247251B1 (en) 2013-07-26 2016-01-26 Google Inc. Right-edge extension for quad-tree intra-prediction
US9350988B1 (en) 2012-11-20 2016-05-24 Google Inc. Prediction mode-based block ordering in video coding
US9407915B2 (en) 2012-10-08 2016-08-02 Google Inc. Lossless video coding with sub-frame level optimal quantization values
US9510019B2 (en) 2012-08-09 2016-11-29 Google Inc. Two-step quantization and coding method and apparatus
US9681128B1 (en) 2013-01-31 2017-06-13 Google Inc. Adaptive pre-transform scanning patterns for video and image compression
US9826229B2 (en) 2012-09-29 2017-11-21 Google Technology Holdings LLC Scan pattern determination from base layer pixel information for scalable extension
US20190188861A1 (en) * 2017-12-19 2019-06-20 Canon Europa N.V. Method and apparatus for detecting motion deviation in a video sequence
US20190188864A1 (en) * 2017-12-19 2019-06-20 Canon Europa N.V. Method and apparatus for detecting deviation from a motion pattern in a video
US11216957B2 (en) 2017-12-19 2022-01-04 Canon Kabushiki Kaisha Method and apparatus for detecting motion deviation in a video

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100694050B1 (ko) 2004-06-11 2007-03-12 삼성전자주식회사 움직임 예측 방법 및 그 장치
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
US8019000B2 (en) * 2005-02-24 2011-09-13 Sanyo Electric Co., Ltd. Motion vector detecting device
KR100924641B1 (ko) 2007-11-23 2009-11-02 한양대학교 산학협력단 움직임 추정을 위한 고속 블록 정합 방법
CN112104871B (zh) * 2020-11-13 2021-03-02 腾讯科技(深圳)有限公司 一种数据编码方法、装置以及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5161247A (en) * 1988-12-16 1992-11-03 Mitsubishi Denki Kabushiki Kaisha Digital signal processor matching data blocks against a reference block and replacing the reference block when a new minimum distortion block is calculated
US5818969A (en) * 1995-05-12 1998-10-06 Intel Corporation Intelligent start for motion estimation search
US6269174B1 (en) * 1997-10-28 2001-07-31 Ligos Corporation Apparatus and method for fast motion estimation
US20030123550A1 (en) * 2001-12-31 2003-07-03 Chung-Neng Wang Fast motion estimation using N-queen pixel decimation
US20030161400A1 (en) * 2002-02-27 2003-08-28 Dinerstein Jonathan J. Method and system for improved diamond motion search
US20050238103A1 (en) * 2002-08-06 2005-10-27 Raghavan Subramaniyan Method and apparatus for performing high quality fast predictive motion search

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5161247A (en) * 1988-12-16 1992-11-03 Mitsubishi Denki Kabushiki Kaisha Digital signal processor matching data blocks against a reference block and replacing the reference block when a new minimum distortion block is calculated
US5818969A (en) * 1995-05-12 1998-10-06 Intel Corporation Intelligent start for motion estimation search
US6269174B1 (en) * 1997-10-28 2001-07-31 Ligos Corporation Apparatus and method for fast motion estimation
US20030123550A1 (en) * 2001-12-31 2003-07-03 Chung-Neng Wang Fast motion estimation using N-queen pixel decimation
US20030161400A1 (en) * 2002-02-27 2003-08-28 Dinerstein Jonathan J. Method and system for improved diamond motion search
US20050238103A1 (en) * 2002-08-06 2005-10-27 Raghavan Subramaniyan Method and apparatus for performing high quality fast predictive motion search

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050265447A1 (en) * 2004-05-25 2005-12-01 Industry Academic Cooperation Foundation Kyunghee Univ. Prediction encoder/decoder, prediction encoding/decoding method, and computer readable recording medium having recorded thereon program for implementing the prediction encoding/decoding method
US20060062305A1 (en) * 2004-09-17 2006-03-23 Primax Electronics Ltd. Method for block-matching motion estimation with effective computation while small motion movement
US20070086525A1 (en) * 2004-10-18 2007-04-19 Wataru Asano Motion vector detection method and device of the same
US7852939B2 (en) * 2004-10-18 2010-12-14 Kabushiki Kaisha Toshiba Motion vector detection method and device of the same
US9185429B1 (en) 2012-04-30 2015-11-10 Google Inc. Video encoding and decoding using un-equal error protection
US9113164B1 (en) 2012-05-15 2015-08-18 Google Inc. Constant bit rate control using implicit quantization values
US9510019B2 (en) 2012-08-09 2016-11-29 Google Inc. Two-step quantization and coding method and apparatus
US9826229B2 (en) 2012-09-29 2017-11-21 Google Technology Holdings LLC Scan pattern determination from base layer pixel information for scalable extension
US9407915B2 (en) 2012-10-08 2016-08-02 Google Inc. Lossless video coding with sub-frame level optimal quantization values
US9350988B1 (en) 2012-11-20 2016-05-24 Google Inc. Prediction mode-based block ordering in video coding
US9681128B1 (en) 2013-01-31 2017-06-13 Google Inc. Adaptive pre-transform scanning patterns for video and image compression
US9247251B1 (en) 2013-07-26 2016-01-26 Google Inc. Right-edge extension for quad-tree intra-prediction
US20190188861A1 (en) * 2017-12-19 2019-06-20 Canon Europa N.V. Method and apparatus for detecting motion deviation in a video sequence
US20190188864A1 (en) * 2017-12-19 2019-06-20 Canon Europa N.V. Method and apparatus for detecting deviation from a motion pattern in a video
US10916017B2 (en) * 2017-12-19 2021-02-09 Canon Kabushiki Kaisha Method and apparatus for detecting motion deviation in a video sequence
US10922819B2 (en) * 2017-12-19 2021-02-16 Canon Kabushiki Kaisha Method and apparatus for detecting deviation from a motion pattern in a video
US11216957B2 (en) 2017-12-19 2022-01-04 Canon Kabushiki Kaisha Method and apparatus for detecting motion deviation in a video

Also Published As

Publication number Publication date
JP2003324743A (ja) 2003-11-14
US20030215015A1 (en) 2003-11-20

Similar Documents

Publication Publication Date Title
US7236527B2 (en) Motion vector search apparatus and method
JP7088606B2 (ja) 動画処理方法、画像処理装置、プログラム、符号化デバイス、及び復号化デバイス
US20250159188A1 (en) Method for predicting subblock-based temporal motion vector and apparatus therefor
EP1430724B1 (en) Motion estimation and/or compensation
US6542642B2 (en) Image coding process and motion detecting process using bidirectional prediction
US7796824B2 (en) Video coding device, video decoding device and video encoding method
EP1779662B1 (en) Method and device for motion estimation and compensation for panorama image
US5764803A (en) Motion-adaptive modelling of scene content for very low bit rate model-assisted coding of video sequences
EP1389016B1 (en) Improved motion estimation and block matching pattern
US6798977B2 (en) Image data encoding and decoding using plural different encoding circuits
US9948944B2 (en) Image coding apparatus and image coding method
JP2001507541A (ja) スプライトベースによるビデオ符号化システム
US20020015513A1 (en) Motion vector detecting method, record medium on which motion vector calculating program has been recorded, motion detecting apparatus, motion detecting method, picture encoding apparatus, picture encoding method, motion vector calculating method, record medium on which motion vector calculating program has been recorded
US20080002774A1 (en) Motion vector search method and motion vector search apparatus
WO2000045340A1 (en) Efficient motion estimation for an arbitrarily-shaped object
US5883674A (en) Method and apparatus for setting a search range for detecting motion vectors utilized for encoding picture data
US5699129A (en) Method and apparatus for motion vector determination range expansion
US12137211B2 (en) Picture coding device, picture coding method, and picture coding program, picture decoding device, picture decoding method, and picture decoding program
US20080219348A1 (en) Data embedding apparatus, data extracting apparatus, data embedding method, and data extracting method
US20120177115A1 (en) Encoding and decoding a video image sequence by image areas
US8509303B2 (en) Video descriptor generation device
KR100895725B1 (ko) 비디오 비트스트림 디코딩 방법 및 비디오 디코더
JP2000069469A (ja) 動画像符号化方法とシステム及び動画像復号方法とシステム
CA2812890C (en) Mesh based frame processing and applications
Peng et al. Hash-based line-by-line template matching for lossless screen image coding

Legal Events

Date Code Title Description
AS Assignment

Owner name: CANON KABUSHIKI KAISHA, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OHIRA, TADASHI;REEL/FRAME:014061/0388

Effective date: 20030506

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20190626