WO2004049726A1 - 動き補償方法、画像符号化方法および画像復号化方法 - Google Patents

動き補償方法、画像符号化方法および画像復号化方法 Download PDF

Info

Publication number
WO2004049726A1
WO2004049726A1 PCT/JP2003/010894 JP0310894W WO2004049726A1 WO 2004049726 A1 WO2004049726 A1 WO 2004049726A1 JP 0310894 W JP0310894 W JP 0310894W WO 2004049726 A1 WO2004049726 A1 WO 2004049726A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
motion
motion vector
image
motion compensation
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.)
Ceased
Application number
PCT/JP2003/010894
Other languages
English (en)
French (fr)
Inventor
Shinya Kadono
Satoshi Kondo
Kiyofumi Abe
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=32375820&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2004049726(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Priority to BRPI0307197-9A priority Critical patent/BRPI0307197B1/pt
Priority to BR0307197-9A priority patent/BR0307197A/pt
Priority to AU2003261780A priority patent/AU2003261780B8/en
Priority to US10/500,575 priority patent/US8009731B2/en
Priority to EP03811870.9A priority patent/EP1569460B1/en
Priority to CA2473897A priority patent/CA2473897C/en
Priority to EP18155063.3A priority patent/EP3349461B1/en
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of WO2004049726A1 publication Critical patent/WO2004049726A1/ja
Anticipated expiration legal-status Critical
Priority to US13/192,790 priority patent/US8660185B2/en
Priority to US14/046,042 priority patent/US8897367B2/en
Priority to US14/046,058 priority patent/US8861607B2/en
Priority to US14/311,524 priority patent/US9088795B2/en
Priority to US14/740,693 priority patent/US9241171B2/en
Priority to US14/740,660 priority patent/US9204153B2/en
Priority to US14/959,351 priority patent/US9473786B2/en
Priority to US14/960,896 priority patent/US9485516B2/en
Priority to US14/963,629 priority patent/US9554148B2/en
Priority to US15/369,014 priority patent/US10057595B2/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • 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/513Processing of motion vectors
    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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/557Motion estimation characterised by stopping computation or iteration based on certain criteria, e.g. error magnitude being too large or early exit
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/583Motion compensation with overlapping blocks
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Definitions

  • the present invention relates to a motion compensation method using a motion vector, an image encoding method and an image decoding method using the motion compensation.
  • a picture is a term representing one screen
  • a progressive image is a picture.
  • an interlaced image is an image in which one frame is composed of two fields at different times. In encoding and decoding of interlaced images, one frame is processed as a frame, two fields are processed, or each block in a frame is processed as a frame structure or a field structure. You can do it.
  • a picture that does not have a reference picture and performs intra prediction coding is called an I-picture.
  • a picture that refers to only one picture and performs inter prediction coding is called a P picture.
  • a picture that can perform inter-picture predictive coding by simultaneously referring to two pictures is called a B-picture.
  • a B picture can refer to two pictures as an arbitrary combination of display time from the front or back.
  • An appropriate reference picture (reference picture) can be selected for each block, which is the basic unit of encoding and decoding.
  • the reference picture described earlier in the encoded bitstream can be selected.
  • the picture is identified as the first reference picture, and the one described later is identified as the second reference picture.
  • the picture to be referred to must be already encoded and decoded.
  • Motion-compensated inter-picture prediction coding is used for coding P-pictures or B-pictures.
  • Motion-compensated inter-picture predictive coding is a coding scheme that applies motion compensation to inter-picture predictive coding. Motion compensation does not simply predict from the pixel value of the same coordinate position of the reference frame, but detects the amount of motion of each part in the picture (hereinafter, referred to as “motion vector”), and calculates the motion This is a method that improves the prediction accuracy by performing the prediction in consideration of the amount and reduces the amount of data. For example, the motion vector of the current picture The amount of data is reduced by encoding the prediction residual, which is the difference between the pixel value for each pixel between the predicted value shifted by the motion vector and the current picture. . In the case of this method, since motion vector information is required for decoding, the motion vector is also encoded and recorded or transmitted.
  • the motion vector is detected in blocks of a predetermined size. Specifically, for each block on the picture to be coded, the block is moved within the search range on the reference picture side, and the The motion vector is detected by finding the position of the reference block that is most similar to the target block.
  • FIG. 1 is a block diagram showing a configuration of a conventional image encoding device 100.
  • the image encoding device 100 includes a differentiator 101, an image encoding unit 102, a variable-length encoding unit 103, an image decoding unit 104, an adder 105, and an image memory 100.
  • a picture memory 107, a motion compensation unit 108, a motion vector detection unit 109, and a motion vector storage unit 110 are provided.
  • the size of the motion compensation block is 4 pixels X 4 pixels, 4 pixels X 8 pixels, 8 pixels X 4 'pixels, and ITU-TH.26 LTML 8, which is a draft standard currently under development. 8 pixels ⁇ 8 pixels, 8 pixels ⁇ 16 pixels, 16 pixels ⁇ 8 pixels, 16 pixels x 16 pixels Encoding ⁇ Used for decoding.
  • the picture memory 107 stores image data Img representing a moving image input in picture order in display time order.
  • the differentiator 101 calculates the difference between the image data Img read from the picture memory 107 and the predicted image data Pred input from the motion compensation unit 108, and calculates the prediction residual image data Res. Generate.
  • the image coding unit 102 performs coding processing such as frequency conversion and quantization on the input prediction residual image data Res, and generates a residual image code. Generate encoded data CodedRes. In the case of intra-picture coding, since the motion compensation between pictures is not performed, the value of the predicted image data Pred is considered to be “0”.
  • the motion vector detection unit 109 uses the reference image data Ref, which is encoded decoded image data stored in the image memory 106, as a reference picture, and optimizes the search area in the picture. Then, a motion vector indicating the predicted position is detected, and a motion parameter “MotionParam” representing the detected motion vector is output. At this time, the motion vector detection unit 109 switches the reference picture according to whether the current picture is a P picture or a B picture.
  • the coding mode Mod indicates how the block is to be motion compensated (for example, bi-prediction, uni-prediction, or direct mode). For example, in the direct mode, the motion vector detection unit 109 calculates the bi-prediction motion vector of the motion compensation target block using the motion vector derived from another block.
  • the picture referred to for deriving the direct mode motion vector is called a reference picture
  • the block of the reference picture at the same coordinate position as the target block is called a reference block.
  • the value of the motion vector in the direct mode is calculated and calculated in units of a macroblock of 16 pixels x 16 pixels, regardless of the block size that is actually the unit of motion compensation. No motion vector is encoded. Then, whether to use the calculated motion vector or to use the motion vector (0, 0) is switched in units of 4 pixels ⁇ 4 pixels.
  • the motion compensating unit 108 generates predicted image data Pred based on the coding mode Mod of the current block and the motion vector detected by the motion vector detecting unit 109.
  • the motion compensation unit 108 uses a low-pass filter if the motion vector points to a sub-decimal pixel position such as 1 2 pixels or 1 Z 4 pixels. Is used to interpolate and generate pixel values at sub-pel positions such as 1Z2 pixels and 1Z4 pixels.
  • the motion vector storage unit 110 stores the motion parameter MotionPanel output from the motion vector detection unit 109.
  • the variable-length encoding unit 103 performs variable-length encoding on the input residual image encoded data GodedRes and the motion parameter MotionParam output from the motion vector detecting unit 109. Then, a coding mode Bitstream is generated by adding a code mode Mod.
  • the image decoding unit 104 performs decoding processing such as inverse quantization and inverse frequency conversion on the input residual image encoded data CodedRes to generate decoded residual image data ReconRes.
  • the adder 105 adds the decoded residual image data ReconRes output from the image decoding unit 104 and the predicted image data Pred input from the motion compensation unit 108 to add a decoded image. Generate data Recon.
  • the image memory 106 stores the generated decoded image data Recon.
  • the prediction effect may be high if the prediction is performed with a motion smaller than the integer pixel unit.
  • pixel interpolation is used to calculate the pixel value of a predicted image having a motion smaller than an integer pixel unit. This pixel interpolation is performed by filtering the pixel values of the reference image with a linear filter (low-pass filter). Increasing the number of taps of this linear filter makes it easier to realize a filter with good frequency characteristics, and increases the prediction effect but increases the processing amount. On the other hand, if the number of taps of the filter is small, the frequency characteristics of the filter will be poor, and the prediction effect will be low, but the amount of calculation of the filter will be small.
  • FIG. 2 is a block diagram illustrating a configuration of a conventional image decoding device 200 that performs pixel interpolation.
  • the image decoding device 200 includes a variable-length decoding unit 201, an image decoding unit 202, an adder 203, an image memory 204, and a motion vector record.
  • a storage unit 205 and a motion compensation unit 206 are provided.
  • the variable length decoding unit 201 converts various data such as residual image encoded data GodedRes, motion parameter MotionParam, and information on the encoding mode Mod used at the time of encoding from the input encoded data B stream. Perform extraction.
  • the image decoding unit 202 decodes the input residual image encoded data GodedRes to generate residual image data Res.
  • the motion vector storage unit 205 stores the motion parameter MotionParam extracted by the variable length decoding unit 201.
  • the motion compensator 206 includes a pixel interpolator (not shown) that interpolates and generates pixel values at sub-pel positions such as 1Z 2 pixels and 1/4 pixel using a linear filter or the like.
  • predicted image data Pred which is motion-compensated image data
  • the motion compensation unit 206 uses the same block size as the motion compensation block size of the reference block of the reference picture read from the motion vector storage unit 205.
  • the adder 203 adds the residual image data Res output from the image decoding unit 202 to the predicted image data Pred which is the motion compensated image data output from the motion compensation unit 206, Generate the decoded image data Recon.
  • the image memory 204 stores the generated decoded image data Recon.
  • FIG. 3 is a diagram illustrating an example of a motion compensation target block that needs to read out pixel values in order to generate a predicted image when pixel interpolation is performed, and an example of pixels around the block.
  • FIG. 3 (a) is a diagram showing a motion compensation target block and its surrounding pixels when the motion compensation target block is small.
  • FIG. 3 (b) is a diagram showing the motion compensation target block and its surrounding pixels when the motion compensation target block is large.
  • the center rectangular part shows one motion compensation target block, and the hatched part around it is the area around which pixel values are read from the reference memory to perform pixel interpolation. The pixel is shown.
  • a filter with 9 taps (a pixel value of 9 pixels is required) is used as a low-pass filter, at least a pixel at the block boundary is subjected to low-pass filter processing.
  • the memory access amount is about half that of the four motion compensations in units of 4 pixels x 4 pixels.
  • a second object of the present invention is to provide an image encoding method and an image decoding method using the motion compensation method. Disclosure of the invention
  • a motion compensation method is a motion compensation method for encoding or decoding an image signal, wherein the encoded signal corresponding to an encoding target or a macroblock to be decoded is encoded.
  • the encoding target is determined in accordance with a motion vector of a block located at a corner of the encoded or decoded macro block.
  • It is characterized by including a compensation step.
  • a compensation step As a result, even when a group of coded or decoded blocks consisting of a plurality of blocks corresponds to one motion compensation target block, the block is located at the corner of the macro block including the block group. By judging the motion of one block, it is possible to select a motion vector generation method used for motion compensation of the motion compensation target block.
  • motion compensation is performed in units of a motion compensation target block having a larger size. It is possible to reduce overhead due to access to the image memory in encoding and decoding using the.
  • the present invention can be realized not only as such a motion compensation method, an image encoding method, and an image decoding method, but also as an image coding method using characteristic steps included in these methods. It can be realized as a decoding device or an image decoding device, or as a program that causes a computer to execute those steps. It goes without saying that the program can be distributed via a recording medium such as CD-ROM or a transmission medium such as the Internet.
  • FIG. 1 is a block diagram showing a configuration of a conventional image encoding device.
  • FIG. 2 is a block diagram illustrating a configuration of a conventional image decoding device that performs pixel interpolation.
  • FIG. 3 is a diagram showing an example of a motion compensation target block necessary to generate a predicted image when performing pixel interpolation, and neighboring pixels.
  • FIG. 4 is a block diagram showing a configuration of an embodiment of an image encoding device using the image encoding method according to the present invention.
  • FIG. 5 is a block diagram showing a configuration of an embodiment of an image decoding device using the image decoding method according to the present invention.
  • FIG. 7 is a diagram showing a method of determining a motion vector MV of the motion vector.
  • Figure 6 (b) shows the case where the macroblock to be coded or decoded and the macroblock at the same position in the rear are motion-compensated with the same block size. It is a figure showing the correspondence with a block.
  • FIG. 6 is a diagram illustrating a method for determining.
  • Fig. 8 shows a case where the current macroblock and the same macroblock at the same position are motion-compensated with the same block size, and the different motion vectors differ according to the motion of the reference block at the same position after the motion-compensation block.
  • 5 is a flowchart showing a processing procedure for motion-compensating a block for motion compensation using a vector.
  • FIG. 9 shows the correspondence between the motion compensation target block and a plurality of blocks located at the same position after the motion compensation block when the current macroblock and the subsequent macroblock at the same position are motion-compensated with different block sizes.
  • Figure 10 shows the case where the macroblock to be coded or decoded and the macroblock at the same position at the rear are motion compensated with different block sizes, and the motion of the block at the same position after the block to be motion compensated is 5 is a flowchart showing a processing procedure for motion-compensating a motion-compensation target block using different motion vectors.
  • FIG. 11 is a diagram illustrating a motion compensation target block and its backward co-located block when the encoding or decoding target MAC block and its subsequent co-located macroblock are motion-compensated with different block sizes in the second embodiment. It is a figure showing correspondence with a plurality of blocks in a position.
  • FIG. 12 shows a case where the macroblock to be coded or decoded and the macroblock at the same position in the rear in the second embodiment are motion-compensated with different block sizes, and are located at the same position after the motion-compensation target block.
  • 5 is a flowchart showing a processing procedure for motion-compensating a motion compensation target block with a different motion vector according to the motion of a block.
  • FIG. 13 (a) shows an example of a physical format of a flexible disk as a recording medium main body.
  • Fig. 13 (b) shows the appearance, cross-sectional structure, and flexible disk as viewed from the front of the flexible disk.
  • FIG. 13 (c) shows a configuration for recording and reproducing the program on the flexible disk FD.
  • FIG. 14 is a block diagram showing an overall configuration of a content supply system ex100 for realizing a content distribution service.
  • FIG. 15 is a diagram showing the mobile phone ex115 using the moving picture coding method and the moving picture decoding method described in the above embodiment.
  • FIG. 16 is a block diagram showing a configuration of a mobile phone.
  • FIG. 17 is a diagram illustrating an example of a digital broadcasting system. BEST MODE FOR CARRYING OUT THE INVENTION
  • FIG. 4 is a block diagram showing a configuration of an embodiment of an image encoding device 300 using the image encoding method according to the present invention.
  • the image coding apparatus 300 performs motion compensation with a block size larger than the block size of the motion compensation of a P picture when performing motion compensation of a B picture in which coding is performed with reference to two pictures.
  • An encoding device including a differentiator 101, an image encoding unit 102, a variable-length encoding unit 103, an image decoding unit 104, an adder 105, and an image memory 106. It includes a picture memory 107, a motion vector storage unit 110, a motion information conversion unit 310, a motion vector detection unit 302, and a motion compensation unit 303.
  • the picture memory 107 stores image data Img, which is input in the order of display time and represents a moving image, in units of pictures.
  • the differentiator 101 calculates a difference between the image data I mg read from the picture memory 107 and the predicted image data Pred input from the motion compensation unit 303, and calculates a prediction residual image. Generate data Res. In this case, in the case of intra-picture coding, since the motion compensation between pictures is not performed, the value of the predicted image data Pred is considered to be “0”.
  • the image encoding unit 102 performs encoding processing such as frequency conversion and quantization on the input prediction residual image data Res to generate encoded residual image data CodedRes.
  • the motion information converter 301 When the current picture to be coded is a B-picture, the motion information converter 301 performs a motion so as to perform motion compensation with a predetermined block size. It derives the vector and notifies it to the motion vector detection unit 302 and the motion compensation unit 303. That is, in the case of a B picture, unidirectional prediction, bi-prediction and direct mode are enabled, and bi-prediction and direct mode motion compensation are performed with a large block size (for example, less than 8 pixels x 8 pixels). It is prohibited to detect a motion vector with a block size), and in the case of a P picture, unidirectional prediction can be performed even with a small block size.
  • the motion information conversion unit 310 converts the motion parameters of the reference picture stored in the motion vector storage unit 110 into motion parameters (for example, 8 pixels ⁇ 8 pixels) of a predetermined block size.
  • the motion vector detecting unit 302 and the motion compensating unit 303 are instructed to convert the motion vector into a motion vector or to read the motion parameter corresponding to this conversion.
  • the motion vector detection unit 302 searches the reference picture using the reference image data Ref, which is the decoded image data of the encoded picture stored in the image memory 106, as a reference picture.
  • a motion vector indicating the position of a block predicted to be optimal in the region is detected, and a motion parameter MotionParam including the detected motion vector is output.
  • the motion vector storage unit 110 stores the motion parameter MotionParam output from the motion vector detection unit 302.
  • the motion vector detection unit 302 evaluates an error when motion compensation is performed in the encoding mode Mod according to whether the current picture to be encoded is a P-picture or a B-picture. Compare the motion compensation error of the motion vector derived in the direct mode with the search in the reference picture in prediction and bi-prediction. In other words, in the direct mode, the position is converted to the same position behind the motion compensation target block by the motion information conversion unit 301. Select a motion vector of a motion compensation target block from a plurality of motion vectors according to the motion vector of a motion-compensated block (for example, converting the motion into a block size of 8 pixels x 8 pixels or more). .
  • the direct mode is a bi-prediction mode in which the motion vector of the motion compensation target block is calculated using the motion vector derived from another block, and the motion vector of the motion compensation target block is not encoded.
  • Whether to use the derived motion vector or to use the motion vector (0, 0) is determined by the size of the motion vector of the block located at the same position in the rear.
  • the strong identification information is not encoded.
  • a block at the same position in the rear refers to a block (reference block) at the same position as a block in a picture to be coded in a picture (reference picture) immediately after the picture to be coded in display order (reference picture). , U.
  • the motion compensation unit 303 generates predicted image data Pred based on the encoding mode Mod and the motion vector detected by the motion vector detection unit 302.
  • the motion compensation unit 303 uses the motion vector calculated by the motion vector detection unit 302 for each 8 ⁇ 8 pixel motion compensation target block. To generate a predicted image.
  • the motion compensation unit 303 uses a linear filter (low-pass filter) or the like when the motion vector points to a sub-decimal pixel position, such as 1 pixel 2 pixels or 1/4 pixel. Interpolation and generation of pixel values at decimal pixel positions such as pixels and 14 pixels.
  • the motion compensation unit 303 since the motion vector detection unit 302 does not select a small block-size motion vector in the bi-prediction mode, the motion compensation unit 303 has many memory accesses in the bi-prediction mode. Motion compensation can be performed with a relatively large block size. In the unidirectional prediction mode, motion compensation is performed, which enables motion compensation with a small block size.
  • the variable-length coding unit 103 calculates the input residual image Variable-length coding is performed on the coded data GodedRes and the motion parameter MotionParam output from the motion vector detector 302, and the coded data Bitstream is generated by adding a coding mode Mod.
  • the image decoding unit 104 performs decoding processing such as inverse quantization and inverse frequency conversion on the input residual image encoded data GodedRes, and generates decoded residual image data ReconRes.
  • the adder 105 adds the decoded residual image data ReconRes output from the image decoding unit 104 and the predicted image data Pred input from the motion compensation unit 303 to the decoded image data ReconRes. Is generated.
  • the image memory 106 stores the generated decoded image data Recon.
  • FIG. 5 is a block diagram showing a configuration of an embodiment of an image decoding device 400 using the image decoding method according to the present invention.
  • the image decoding device 400 includes a variable-length decoding unit 201, an image decoding unit 202, an adder 203, an image memory 204, a motion vector storage unit 205, and motion information.
  • a conversion section 401 and a motion compensation section 402 are provided.
  • the variable-length decoding unit 201 converts the input coded data Bitstream into various data such as residual image coded data CodedRes, motion parameters MotionParam, and information on the coding mode Mod used during coding. Is extracted.
  • the image decoding unit 202 decodes the input residual image encoded data GodedRes to generate residual image data Res.
  • the motion information conversion unit 401 stores the reference picture motion parameters read from the motion vector storage unit 205 into motion parameters of a predetermined block size (for example, 8 pixels ⁇ 8 pixels). ) Or instructs the motion compensation unit 402 to read the motion parameter corresponding to this conversion.
  • the motion compensator 402 internally has 12 pixels, 1 It has a pixel interpolator (not shown) that interpolates and generates pixel values at sub-pel positions such as 4 pixels.
  • the image memory 2 is based on the encoding mode Mod and the motion parameters MotionParam at the time of encoding.
  • Predicted image data Pred which is motion compensated image data, is generated from the decoded image data Recon in 04. At this time, if the macroblock to be decoded is coded in the direct mode, the motion vector for generating the predicted image data Pred is not coded.
  • the motion compensating unit 402 converts the motion vector (for example, converted into a motion of a block size of 8 pixels ⁇ 8 pixels or more) converted by the motion information converting unit 401 and a macroblock to be decoded.
  • the motion vector of the block to be compensated for motion is calculated using the motion vector derived in the surrounding blocks of the block, and the motion compensation block of a size larger than the minimum block size of the P picture (for example, 8 pixels ⁇ 8 pixels) ) Generates predicted image data Pred in units of.
  • the motion vector storage unit 205 stores the motion parameter MotionPaRAM extracted by the variable-length decoding unit 201.
  • the adder 203 receives the residual image data Res output from the image decoding unit 202 and the predicted image data Pred which is the motion compensated image data output from the motion compensation unit 402. Is added to generate decoded image data Recon.
  • the image memory 204 stores the generated decoded image data Recon.
  • a motion vector used for motion compensation of the motion-compensation target block is selected from a plurality of motion vectors.
  • the motion vector detection unit 302 or the motion compensation unit 402 is the motion vector of the macroblock to be coded or decoded calculated using the motion vector of the peripheral block already coded or decoded in the picture to be coded or decoded.
  • the motion vector (0, 0) is selected as the motion vector of the motion compensation target block.
  • a peripheral block is a block that has already been coded or decoded in the same picture of the current picture, and is a block near the current macroblock to be coded or decoded.
  • a direct mode motion compensation method using the method of determining the motion vector of the motion compensation target block using the motion vector of the already determined neighboring block and the motion parameter of the subsequent reference picture will be described. First, processing in the image encoding device 300 will be described.
  • FIG. 6 (a) shows the case where the neighboring blocks are motion-compensated with the same block size of 16 pixels XI and 6 pixels as the macroblock to be coded or decoded.
  • FIG. 9 is a diagram illustrating a method of determining a motion vector MV of a macroblock to be encoded or decoded.
  • Fig. 6 (b) shows the correspondence between the motion compensation target block and the block located at the same position after the current or target macroblock is motion-compensated with the same block size.
  • FIG. Figure 7 shows the case where the surrounding block is motion-compensated with a block size smaller than the macroblock to be coded or decoded, and the motion vector of the surrounding block is used to calculate the coding or decoding target macroblock.
  • FIG. 6 is a diagram illustrating a method for determining a motion vector MV.
  • Fig. 8 shows the case where the macroblock to be coded or decoded and the macroblock at the same position after it are motion-compensated with the same block size, and according to the motion of the block at the same position after the block to be motion-compensated.
  • 5 is a flowchart showing a processing procedure for motion-compensating a block to be motion-compensated by a different method.
  • the block to be compensated for motion in the picture B 1 to be coded and the block located at the same position as the block to be motion compensated in the subsequent P picture P 2 have the same size and correspond one-to-one. The case will be described.
  • the motion information converter 310 determines whether or not the size of the motion compensation of the block located at the same position after the motion compensation block is the same as the size of the motion compensation block.
  • the motion vector detection unit 302 is instructed to calculate the motion vector of the motion compensation target block according to the procedure shown in the flowchart. As shown in the flowchart of FIG. 8, the motion vector detection unit 302 first sets a P picture (reference picture) after the current picture B 1 shown in FIG. In the P picture that is displayed temporally after B 1 and is close to the picture to be coded ⁇ B 1, the motion of the block (reference block) at the same position as the motion compensation block in the picture P 2 It is checked whether or not j is small j (S401).
  • the motion vector of the motion compensation target block is set to (0, 0) (S402).
  • motion compensation is performed using inter-frame prediction with the motion vector being (0, 0), where “J with small motion indicates that the block is the closest to the image.
  • Kibeku torr size refers to (absolute value) is gamma 1 "within.
  • the size of the motion vector is simply smaller than the predetermined value, “the motion is small j” may be used, and if a specific picture is used as the reference picture, “the motion is small” may be used.
  • the motion vector detector 302 detects the coding pair calculated from the motion vector of the peripheral block of the encoding target macroblock.
  • the motion vector MV of the elephant macroblock is set as the motion vector of the motion compensation target block (S404).
  • the pictures PO and P2 are assumed to be the pictures closest to the picture B1 for the sake of simplicity.
  • the motion vector detector 302 To calculate the motion vector MV of the current macroblock, the motion vector detector 302 first selects three coded blocks (peripheral blocks) near the current macroblock. I do. The criterion and method of selection are not important here and will not be described.
  • FIG. 6 (a) shows three peripheral blocks selected for the current macroblock. As shown in the figure, the motion vector MV2 is already determined for the macroblock located above the encoding target macroblock, and the motion vector MV3 is determined for the macroblock located at the upper right. ing. For a macroblock located to the left of the current macroblock to be coded, the motion vector MV1 is determined.
  • the motion vector detection unit 302 determines the motion vector MV of the encoding target macroblock using the motion vector MV 1, the motion vector MV 2, and the motion vector MV 3. I do.
  • a motion vector MV 1, a motion vector MV 2, and a motion vector MV 3 that refer to a temporally closest picture among the motion vectors MV 3 are set as motion vector MV candidates of the encoding target macroblock.
  • the temporally closest picture from the current picture to be coded means that when predicting a motion vector that refers to a preceding picture in the current macroblock to be coded, it is forward and latest from the current picture to be coded.
  • the motion vector detector 302 determines the motion vector MV of the encoding target macroblock using the motion vector MV 1, the motion vector MV 2, and the motion vector MV 3. I do.
  • the candidate is set as the motion vector MV of the current macroblock. Also,
  • the motion vector of the peripheral block that does not refer to the latest picture is (0, 0), and the three motions of the peripheral block are used.
  • the median of the vector is
  • the motion vector of P-soku is MV.
  • Fig. 7 shows the case where a motion vector is detected for each 16-pixel x 16-pixel macroblock to be coded in units of 4-pixel x 4-pixel blocks in the surrounding blocks. .
  • the motion vector detection unit 302 first determines three neighboring blocks (block A, block B, and block C). ) select.
  • the block A is, for example, a macroblock located on the left side of the encoding target macroblock, a block in contact with the upper left corner of the encoding target macroblock.
  • the block B is, for example, a block belonging to a macroblock located above the encoding target macroblock and in contact with the upper left corner of the encoding target macroblock.
  • the block C is, for example, a macroblock located at the upper right of the encoding target macroblock, and a block in contact with the upper right corner of the encoding target macroblock.
  • the motion vector MV 1 has already been determined for block A
  • the motion vector MV 2 has been determined for block B
  • the motion vector MV 3 has been determined for block C. ing.
  • the motion vector detection unit 302 applies (1), (2) and (3) above to the motion vector MV 1, the motion vector MV 2 and the motion vector MV 3, and
  • the motion vector MV of the current macroblock can be determined in the same manner as in the case where the macroblock and the peripheral block are motion-compensated with the same size.
  • the motion vector of each motion compensation block in the encoding target macroblock depends on whether or not the motion of the block located at the same position in the rear is small. ) Or motion compensation using the motion vector MV.
  • the motion compensation unit 303 uses the determined motion vector to perform prediction from the reference image data Ref in the image memory 106.
  • the image data Pred is generated (S403).
  • the motion compensation unit 303 and the motion vector detection unit 302 perform unidirectional prediction of a P picture or a B Motion compensation is performed on blocks of a fixed size (for example, 8 pixels x 8 pixels) that are larger than the smallest (4 pixels x 4 pixels) block that can be the motion compensation target block. Therefore, the reference picture after the picture that is motion compensated by bi-prediction is unidirectional.
  • a block at the same position after the motion compensation block may be motion compensated with a smaller block size than the motion compensation block.
  • FIG. 09 is the number of motion compensation blocks that are the same as those of the block to be motion-compensated when the macroblock to be coded or decoded and the macroblock at the same position after it are motion-compensated with different block sizes.
  • FIG. 3 is a diagram showing correspondence between blocks. On the left side of the figure, the macroblock to be coded in the B picture to be coded is shown. The right side of the figure shows a macroblock located at the same position after the current macroblock in the picture (P picture or B picture) immediately after the current B picture to be encoded. The size of each of the macroblocks is, for example, 16 pixels ⁇ 16 pixels. The backward co-located macroblock shown on the right is coded before the picture to be coded. For example, motion compensation has already been performed on a 4-pixel x 4-pixel block (minimum section in the figure) as a unit. It has been done.
  • Figure 10 shows the case where the macroblock to be coded or decoded and the macroblock at the same position at the rear are motion compensated with different block sizes, and the motion is dependent on the motion of the block at the same position at the rear of the motion compensation block.
  • 5 is a flowchart showing a processing procedure for motion-compensating a motion-compensation target block with different motion vectors.
  • the motion information converter 301 determines whether or not the block located at the same position after the motion compensation target block is motion compensated with the same block size as the motion compensation target block. If motion compensation has not been performed, the motion vector detecting unit 302 is instructed to calculate the motion vector of the motion compensation target block according to the procedure shown in the flowchart of FIG.
  • the size of the motion compensation target block is 8 pixels x 8 pixels, and the block located at the same position in the back is 4 pixels. Since motion is compensated for four pixels, the motion vector detector 302 calculates the motion vector of the motion compensation target block according to the flowchart shown in FIG.
  • step S501 is different from the process of step S401 shown in the flowchart of FIG.
  • one macro block to be encoded is subjected to motion compensation for every four motion compensation blocks.
  • they are a motion compensation target block a, a motion compensation target block b, a motion compensation target block c, and a motion compensation target block d.
  • Blocks a ', block b', block c ', and block d' correspond to these motion-compensated blocks in the backward co-located macroblock.
  • Each of these blocks a ′, b ′, c ′, and d ′ is further composed of four motion compensation blocks of 4 pixels ⁇ 4 pixels.
  • the motion vector detection unit 302 first examines a block a ′ corresponding to the motion compensation target block a in the encoding target macroblock in the backward co-located macroblock, and configures the block a ′. Check whether or not two or more of the four motion compensation blocks have “small motion” ( S501 ) o
  • the criterion for determining whether or not the motion compensation block j is small is the same as the criterion in step S401 of the flowchart shown in Fig. 8.
  • the two or more motion compensation blocks have the small motion j.
  • the motion vector detection unit 302 sets the motion vector of the motion compensation target block a in the encoding target macroblock to (0, 0) (S502), and performs motion compensation.
  • the unit 303 compensates for motion using the determined motion vector (0, 0) (S503).
  • the vector detection unit 302 determines the motion vector MV of the encoding target macroblock from the motion vector of the peripheral block of the encoding target macroblock (S504).
  • the process of determining the motion vector MV of the encoding target macro block from the motion vector of the peripheral block is the same as the process in step S404 in FIG.
  • the motion compensation unit 303 generates a motion compensation prediction pixel value of the motion compensation target block a using the motion vector MV determined in this way (S503).
  • the motion compensation unit 303, the motion vector detection unit 302, and the motion information conversion unit 310 execute the processing of the above steps S501 to S504 to perform the remaining motion compensation target block b, motion
  • the motion compensation block a and the motion compensation block b, the motion compensation block c and the motion compensation block d are all repetitively compensated for the compensation block c and the motion compensation block d. Then, the motion compensation of the encoding target macroblock is completed.
  • the encoded data B encoded by the image encoding device 300 decodes the stream.
  • the motion information conversion unit 401 performs a process corresponding to the motion information conversion unit 301 of the image coding device 300, and the motion compensation unit 402
  • the motion of each motion compensation target block is performed in the same manner as the image encoding device 300. Compensation can be provided.
  • the motion information conversion The unit 401 is the motion of the motion compensated block at the same position after the motion compensation target block. Judge whether the size of the compensation is the same as the size of the block to be compensated for motion, and if it is the same, use the procedure shown in the flowchart of Fig. 8 to calculate the motion vector of the block to be compensated for motion. Instruct part 402. In accordance with this instruction, the motion compensation unit 402 first determines the same as the motion compensation target block in the P picture (rear reference picture) P2 behind the decoding target picture B1 shown in FIG. 6 (b).
  • the motion compensation unit 402 determines the determined motion among the reference image data Ref in the image memory 204.
  • the block at the position indicated by the vector is read, and predicted image data Pred is generated (S403). In this way, even when the motion compensation target block and the motion-compensated block at the same position thereafter are motion-compensated with the same block size, the motion compensation unit 402
  • the motion vector can be determined for each motion compensation target block depending on whether the motion is “small” and motion compensation can be performed.
  • the motion information conversion unit 401 calculates the motion vector of the motion compensation target block according to the procedure shown in the flowchart of FIG. 0 Instruct 2
  • the motion compensation unit 402 corresponds to the motion compensation target block of 8 pixels ⁇ 8 pixels in the macroblock (in the P picture immediately following) of the macroblock to be decoded (in the picture to be decoded).
  • the motion of the four 4-pixel X 4-pixel motion-compensated blocks included in the 8-pixel-by-8-pixel block is examined.
  • the motion vector of the motion compensation target block is set to (0, 0) (S502), otherwise, the motion vector of the block to be decoded is calculated using the motion vector of the peripheral block of the macroblock to be decoded.
  • the motion vector MV of the macroblock to be decoded is set as the motion vector of the motion compensation target block (S504). In step S502 or step S504, the motion vector of the motion compensation target block is set.
  • the motion compensation unit 402 reads the block at the position indicated by the determined motion vector from the reference image data Ref in the image memory 204, and generates predicted image data Pred ( S 5 0 3) .Thus, even when the motion compensation target block and the motion-compensated block at the subsequent peer g are not motion-compensated with the same block size, It can be determined whether or not “the motion of the motion-compensated block at the same position in the rear is small”. Therefore, the motion compensation unit 402 can determine a motion vector for each motion compensation target block according to the determination result, and perform motion compensation for the motion compensation target block.
  • the image encoding apparatus 300 using the motion compensation method of the present invention According to the image decoding apparatus 400, in the motion compensation coding of the B picture, since the motion compensation is performed in units of a large size motion compensation target block in the conventional motion compensation target block, It is possible to reduce the load caused by accessing the image memory in encoding and decoding B pictures.
  • the size of the motion compensation target block of the B picture is 8 pixels ⁇ 8 pixels, and the size of the motion compensated block of the P picture is 4 pixels ⁇ 4 pixels.
  • the block size is not limited to this, and may be set to a different block size.
  • the motion vector of the motion compensation target block is set to (0, 0).
  • the number is not necessarily “2 or more”, and may be “1 or more j”, ⁇ 3 or more ”or“ all j ”. If the size of the block to be compensated is set to a value other than the above, the size may be determined appropriately according to the ratio of the block sizes, as in the following embodiments.
  • the motion vector determined based on the motion vector of the peripheral block is one encoding or decoding Since there is one for the current macroblock, the motion compensation target block in the same encoding or decoding target macroblock is checked.
  • the processing of step S404 or step S504 is executed, As a result, the same calculation processing is performed.
  • the present invention is not limited to this. For example, for each macroblock to be coded or decoded, a motion vector is determined in advance based on the motion vector of a peripheral block.
  • step S404 or step S504 performs the processing of step S404 or step S504 before the determination of step S504, and in step S404 or step S504, simply executes the "movement of peripheral block".
  • the value of the motion vector determined in advance based on the vector is used as the motion vector of the motion compensation target block. " In this way, if the block at the same position behind the motion compensation target block does not have “small motion”, the number of calculations of the motion vector based on the motion vector of the peripheral block is reduced, and There is an effect that the processing load on the motion vector detecting unit 302 and the motion compensating unit 402 can be reduced. The same applies to the following embodiments.
  • step S404 or step S504 is performed.
  • the calculated motion vector MV of the macroblock to be encoded or decoded may be held in a memory or the like.
  • the period during which the motion vector MV is held is a period during which the motion compensation target block in the same encoding or decoding target macroblock is processed.
  • the motion vector detecting unit 303 or the motion compensating unit 402 determines that “the motion is small” of the block located at the same position after the motion compensation target block in the encoding or decoding target macroblock.
  • the motion vector MV of the macroblock to be coded or decoded is calculated for the first time, and the coding or decoding is performed while the motion compensation block in the same macroblock to be coded or decoded is being processed.
  • the motion vector MV of the macroblock to be decoded may be retained. By doing so, the number of motion vector calculations performed by the motion vector detecting section 302 and the motion compensating section 402 can be further reduced, and the motion vector detecting section 302 and the motion compensating section can be further reduced.
  • the processing load of 402 can be further reduced. There is an effect that can be.
  • step S404 or step S504 of the flowchart in FIG. 8 or FIG. 10 the macro to be encoded or decoded by using the motion vector of the peripheral block.
  • the motion vector MV of the block is determined, it is not always necessary to determine the motion vector MV of the macroblock to be encoded or decoded by this method.
  • the motion information conversion unit 30 "I has been described assuming that the motion parameters of the reference picture are stored in the motion vector storage unit 110 and then converted to motion parameters of a predetermined block size.
  • the conversion may be performed before the motion parameters of the reference picture are stored in the motion vector storage unit 110. The same applies to the following embodiments.
  • each 16-pixel XI 6-pixel macroblock is divided into four For each of the 8 pixel x 8 pixel blocks, the motion vector values detected in the four 4 pixel x 4 pixel blocks included in that block (8 pixel x 8 pixel) are all calculated as 8 Pixel x 8 pixel block Then, the macro block is rewritten with the value of the motion vector detected in the motion compensation target block of 4 pixels x 4 pixels at the four corners of the macro block (16 pixels XI 6 pixels).
  • the 4-pixel x 4-pixel block obtained by further dividing the 8-pixel x 8-pixel block into four blocks is the block at the corner of the macroblock within the 8-pixel x 8-pixel block (4-pixel x 4-pixel ) Detected for You will have the same motion vector that was done.
  • the motion vector detection unit 302 can detect any of the blocks included in the block at the same position in the rear. By reading the motion vector of one of these 4-pixel by 4-pixel blocks, it is possible to easily determine the motion of the block located at the same position in the rear using this.
  • the motion information conversion unit 301 In 10 when the motion parameters of the reference picture are detected using a 4-pixel ⁇ 4-pixel block as a unit of motion compensation, the motion information conversion unit 301 In 10, only one motion vector may be stored in association with each block of 8 pixels ⁇ 8 pixels obtained by dividing a macroblock of 16 pixels ⁇ 16 pixels into four.
  • This motion vector is, for example, a motion vector detected for a block (4 pixels x 4 pixels) at the corner of a macroblock in an 8 pixel x 8 pixel block.
  • the motion vector detection unit 302 can calculate the motion parameters of the reference picture even if the motion parameters of the reference picture are detected using a block of 4 pixels X 4 pixels as the unit of motion compensation, as shown in FIG. Also, in the same manner as the processing shown in FIG. 8, it is possible to determine whether or not “the movement j of the block at the same position in the rear is small j”.
  • the motion information conversion unit 301 sets a macro within the block of 8 pixels ⁇ 8 pixels. From the motion vector detected for the block (4 pixels x 4 pixels) at the corner of the block, it is determined whether or not the block (4 pixels x 4 pixels) has "small motion", and that determination is made. A flag indicating the result may be stored in the motion vector storage unit 110 in association with each block of 8 pixels ⁇ 8 pixels in the encoding target macroblock. The same applies to the following embodiments. This allows The motion vector detection unit 302 eliminates the need to determine whether or not the block at the rear co-located is “small” in the motion compensation of the B picture. The effect is that the load can be reduced.
  • the motion vector of the motion compensation target block is calculated when the macroblock to be coded or decoded and the backward co-located macroblock are motion-compensated with different block sizes.
  • the determination method when selecting either (0, 0) or determination from the motion vector of the peripheral block is different from that of the first embodiment. If the current macroblock to be coded or decoded and the backward co-located macroblock have the same block size and motion compensation is omitted, the method described with reference to FIGS. 6 (a) to 8 in Embodiment 1 is used. The motion compensation of the motion compensation target block is performed.
  • the image coding apparatus and the image decoding apparatus according to the second embodiment are different from the image coding apparatus 300 and the image decoding apparatus 400 according to the first embodiment.
  • the main parts are a motion information converter and a motion vector detector of the image encoding device, and a motion information converter and a motion compensator of the image decoding device. Therefore, the description of the overlapping components will be omitted below.
  • FIG. 11 is a diagram illustrating a case where a macroblock to be coded or decoded and a macroblock located at the same position after it are motion-compensated with different block sizes according to the second embodiment.
  • FIG. 3 is a diagram showing correspondence with a plurality of blocks. As shown in FIG. 9, the macroblock to be coded or decoded in the B picture to be coded or decoded is shown on the left side of FIG. On the right side of the figure, as in Fig. 9, the macroblock at the same position after the current macroblock to be coded or decoded is shown. Have been. The rear-positioned macroblock shown on the side is a P-picture or a B-picture.
  • motion vector detection and motion are already performed in units of 4 pixel x 4 pixel blocks (the smallest section in the figure). Compensation has been made.
  • the motion vector is determined and the motion compensation is performed in units of an 8-pixel x 8-pixel block (the smallest section in the figure). Is performed.
  • one macroblock to be encoded or decoded is composed of four motion compensation blocks.
  • the motion compensation target block a, the motion compensation target block b, the motion compensation target block c, and the motion compensation target block d in the same position macro block, four pixels of 4 pixels ⁇ 4 pixels each Four 8 ⁇ 8 pixel blocks composed of motion compensated blocks correspond to the respective motion compensation target blocks.
  • FIG. 12 shows a case where the macroblock to be coded or decoded and the macroblock at the same position in the rear in the second embodiment are motion-compensated with different block sizes, and are located at the same position after the motion-compensation target block.
  • This is a flowchart showing a procedure for motion-compensating the motion-compensated block with different motion vectors according to the motion of the block.
  • the motion information converter determines whether or not the size of the motion compensation of the block located at the same position after the motion compensation target block is the same as the size of the motion compensation target block.
  • the motion vector is calculated to calculate the motion vector of the motion compensation target block. Instruct the detection unit or the motion compensation unit. Conversely, if motion compensation is not performed for the same block size, the motion vector detection unit or motion compensation unit is instructed to calculate the motion vector of the motion compensation target block according to the procedure shown in the flowchart of FIG. I do.
  • the motion vector detector or the motion compensator detects the motion compensation target block a in the macroblock to be coded or decoded, and the four motions that compose the corresponding block in the backward co-located macroblock. It is checked whether or not the motion-compensated block a 'located at the corner of the same macroblock at the rear of the compensated blocks is "small" (S701).
  • the criterion for determining whether or not “the motion of the motion-compensated block a ′ is small” is the same as the criterion in step S401 shown in FIG.
  • the motion vector detecting unit or the motion compensating unit determines the motion vector of the motion compensated block a in the coding or decoding target macroblock as (0 , 0) (S702).
  • the motion compensation unit performs motion compensation on the motion compensation target block a using the determined motion vector (0, 0) (S703).
  • the motion vector detection unit or the motion compensation unit calculates the target of the coding or decoding from the motion vector of the surrounding block of the macroblock to be coded or decoded.
  • the motion vector MV of the macroblock is determined (S704), and the process of determining the motion vector MV of the macroblock to be coded or decoded from the motion vector of the peripheral block is shown in FIG. This is the same as the processing in S404.
  • the motion compensation unit uses the motion vector MV of the macroblock to be encoded or decoded determined in this way to perform motion compensation prediction of the motion compensation target block a.
  • a pixel value is generated (S703) By the above processing, the motion compensation of one motion compensation target block a is completed.
  • the motion vector detecting unit, the motion compensating unit and the motion information converting unit, and the image decoding device include the motion compensating unit and the motion information converting unit.
  • S 701 to step S 704 are repeated for the remaining motion compensation target block b, motion compensation target block 0 , and motion compensation target block d, thereby forming one encoding or decoding target. Complete the motion compensation of the macroblock.
  • the block at the same position after the block b to be motion compensated and the motion compensation block located at the same position after the macro block to be coded or decoded Examine whether or not the motion of block b 'is "small", and select the motion vector (0, 0) if it is "small" in motion-compensated block b'. If the motion of the motion-compensated block b 'is not small, select the motion vector MV of the macroblock to be coded or decoded, which is calculated using the motion vector of the neighboring block.
  • the compensating unit performs motion compensation for the motion compensation target block b using the selected motion vector.
  • a motion vector is selected in accordance with the motion of the motion-compensated block c "and the motion-compensated block d ', and the selected motion vector is selected.
  • the motion compensation block c and the motion compensation target block d are motion-compensated by the vector In this manner, when the motion compensation of all the motion compensation blocks in the macroblock to be coded or decoded is performed, Complete the motion compensation for the macroblock to be coded or decoded.
  • the motion compensation of the motion compensation target block can be performed only by examining the motion of one motion-compensated block located at the corner of the same macroblock at the rear. Since the motion vector to be used can be selected, the motion vector can be selected more than the motion compensation method of the first embodiment. There is an effect that the processing load on the torque detection unit or the motion compensation unit can be reduced.
  • FIG. 13 is an explanatory diagram of a recording medium for storing a program for realizing the image encoding method and the image decoding method of Embodiments 1 and 2 by a computer system. .
  • Fig. 13 (b) shows the appearance, cross-sectional structure, and flexible disk viewed from the front of the flexible disk
  • Fig. 13 (a) shows an example of the physical format of the flexible disk, which is the recording medium body.
  • the flexible disk FD is built in the case F, and a plurality of tracks Tr are formed concentrically from the outer circumference toward the inner circumference on the surface of the disk, and each track has 16 sectors in the angular direction. Se has been split. Therefore, in the flexible disk storing the program, the image encoding method and the image decoding method as the program are recorded in the area allocated on the flexible disk FD.
  • FIG. 13 (c) shows a configuration for recording and reproducing the above program on the flexible disk FD.
  • the image encoding method and the image decoding method as the above program are written from the computer system Cs via the flexible disk drive.
  • the above-described image encoding method and image decoding method are computer-implemented by a program in a flexible disk.
  • the reprogram is read from the flexible disk by the flexible disk drive and transferred to the computer system.
  • the same explanation can be applied to the case where the force optical disk described above using the flexible disk as the recording medium is used.
  • the recording medium is not limited to this, and the present invention can be similarly implemented as long as it can record a program, such as a CD-ROM, a memory card, and a ROM cassette.
  • FIG. 14 is a block diagram showing an overall configuration of a content supply system ex100 for realizing a content distribution service.
  • a communication service providing area is divided into desired sizes, and base stations ex107 to ex110, which are fixed radio stations, are installed in each cell.
  • the content supply system ex100 is connected to the Internet ex101 via the Internet service provider ex102 and the telephone network ex104, and the base stations ex107 to ex110.
  • ex11 PDA (personal digital assistant) ex112, camera ex "I13, mobile phone ex114, mobile phone with camera ex115, etc.
  • the content supply system exl 00 is not limited to the combination as shown in FIG. 14, and may be connected in any combination. Also, each device may be directly connected to the telephone network exl 04 without going through the base stations exl 07 to ex 110 which are fixed wireless stations.
  • Camera ex l 13 is a device that can shoot moving images such as a digital video camera It is.
  • PDC Personal Digital Communications
  • CDA Code Division Multiple Access
  • W-CDMA Wide-band-Code Division Multiple Access
  • GSM Global System for obile Communications
  • PHS Persona I Handyphone System
  • streaming camera ex 103 is connected from camera ex 113 via base station ex 109 and telephone network ex104, and the coding transmitted by the user using camera ex 113 is used. Live distribution based on the processed data becomes possible.
  • the encoding process of the photographed data may be performed by the excel 13 or may be performed by a server or the like that performs the data transmission process.
  • the moving image data shot by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
  • Power camera ex 1 16 is a device such as a digital camera that can shoot still images and moving images. In this case, encoding of the moving image data may be performed by the camera exl 16 or the computer exl 11.
  • the encoding process is performed in the LSI e117 included in the computer exl 11 or the camera ex116.
  • the software for image encoding / decoding may be incorporated in any storage medium (CD-ROM, flexible disk, hard disk, etc.) that is a recording medium readable by a computer exl 11 or the like.
  • moving image data may be transmitted by a camera-equipped mobile phone exl 15. The moving image data at this time is data that has been encoded by the LSI included in the mobile phone exl15.
  • the content (for example, a video of a live music shot) captured by the user with the camera exl13, camera exl16, or the like is coded in the same manner as in the above embodiment.
  • Streaming The streaming server ex103 transmits the content data to the requesting client in a stream while transmitting to the client ex103.
  • a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, etc. capable of decoding the above-mentioned encoded data are available. is there.
  • the content supply system ex 100 can receive and reproduce the encoded data at the client, and further receive, decode, and reproduce the encoded data at the client in real time. This makes it possible to implement personal broadcasting.
  • each device constituting this system may be performed using the image encoding device or the image decoding device shown in each of the above embodiments.
  • a mobile phone will be described as an example.
  • FIG. 15 is a diagram illustrating the mobile phone ex115 using the image encoding method and the image decoding method described in the above embodiment.
  • the mobile phone exl15 is an antenna ex210 for transmitting and receiving radio waves to and from the base station ex110, a power camera ex2 that can take images and still images from CCD cameras and the like.
  • display section such as a liquid crystal display that displays decoded data of the video captured by the camera section ex203, the video received by the antenna ex201, etc.
  • operation keys ex 2 0 a body unit including a set of four groups, the audio output unit ex 2 0 8 of speaker power and the like for the audio output, audio input unit ex 2 0 5 such as a microphone for voice input, video shot or Recording media ex207 for storing encoded or decoded data such as still image data, received mail data, moving image data or still image data, and mobile phone exl1 5 has a slot ex200 to allow the recording media ex207 to be loaded. .
  • a flash memory device which is a kind of electrically erasable and programmable read-only memory (EEPROM), which is a nonvolatile memory that can be electrically rewritten and erased, is stored in a plastic case.
  • EEPROM electrically erasable and programmable read-only memory
  • the mobile phone ex 115 will be described with reference to FIG.
  • the mobile phone ex 1 15 is connected to a main control unit ex 3 11 1 that controls the respective parts of the main unit equipped with the display unit ex 202 and the operation keys ex 204 in an integrated manner.
  • Circuit part ex 310, operation input control part ex304, image encoding part ex310, camera interface part ex303, LCD (Liquid Crystal Display) control part ex302, image decoding part ex309, demultiplexing unit ex308, recording / reproducing unit ex307, modulation / demodulation circuit unit ex306, and audio processing unit ex305 are connected to each other via synchronous bus ex3 "I3. .
  • the power supply circuit ex310 is configured to supply power from a battery pack to each unit when a call is terminated and a power key is turned on by a user operation. Is activated.
  • the mobile phone ex115 based on the control of the main control unit ex311, consisting of a CPU, ROM, RAM, etc., converts the voice signal collected by the voice input unit ex205 in the voice call mode into a voice processing unit ex.
  • the digital audio data was converted into digital audio data by 105, which was subjected to spread spectrum processing by the modulation and demodulation circuit section ex306, and subjected to digital analog conversion processing and frequency conversion processing by the transmission and reception circuit section ex301. Later, transmission is performed via the antenna ex 201.
  • the mobile phone ex115 amplifies the received data received by the antenna ex201 in the voice call mode, performs frequency conversion processing and analog-to-digital conversion processing, and transmits and receives data through the modulation / demodulation circuit ex306.
  • the text data of the e-mail input by operating the operation keys ex 204 of the main unit is transmitted to the main control unit ex 3 via the operation input control unit ex 304.
  • 1 Sent to 1.
  • the main control unit ex311 performs the spread spectrum processing of the text data in the modulation / demodulation circuit unit ex306 and performs the digital / analog conversion processing and the frequency conversion processing in the transmission / reception circuit unit ex301.
  • the signal is transmitted to the base station ex 110 via the antenna ex 210.
  • the image data captured by the camera unit ex203 is supplied to the image encoding unit ex312 via the camera interface unit ex303.
  • the image data captured by the camera unit ex203 is displayed on the display unit ex203 via the camera interface unit ex303 and the LCD control unit ex302. It is also possible to display directly on 02.
  • the image encoding unit ex312 has a configuration including the image encoding device described in the present invention, and converts the image data supplied from the camera unit ex203 into the image encoding device described in the above embodiment.
  • the data is converted into encoded image data by performing compression encoding according to the encoding method used, and is transmitted to the demultiplexing unit ex308.
  • the mobile phone ex115 also converts the voice collected by the voice input unit ex205 during imaging by the camera unit ex203 into digital voice data via the voice processing unit ex305. And sends it to the demultiplexing unit ex308.
  • the demultiplexing unit ex308 multiplexes the encoded image data supplied from the image encoding unit ex312 and the audio data supplied from the audio processing unit ex305 in a predetermined manner, and obtains the result.
  • the multiplexed data is subjected to spread spectrum processing in the modulation and demodulation circuit section ex306, and is subjected to digital analog conversion processing and frequency conversion processing in the transmission and reception circuit section ex301, and then the antenna ex201 is connected to the antenna ex210. To send through.
  • the received data received from the base station ex110 via the antenna ex201 is scanned by the modem circuit ex306.
  • the despreading process is performed, and the resulting multiplexed data is sent to the demultiplexing unit ex308.
  • the demultiplexing unit ex308 demultiplexes the multiplexed data so that the bitstream of the re- And a bit stream of the audio data, and supplies the encoded image data to the image decoding unit ex309 via the synchronous bus ex313, and also transmits the audio data to the audio processing unit ex305. To supply.
  • the image decoding unit ex309 has a configuration provided with the image decoding device described in the present invention, and converts the bit stream of image data to the encoding method described in the above embodiment.
  • Reproduced moving image data is generated by decoding using the decoding method, and this is supplied to the display unit ex202 via the LCD control unit ex302, whereby, for example, a moving image file linked to a homepage Is displayed.
  • the voice processing unit ex305 converts the voice data into analog voice data, and then supplies this to the voice output unit ex208, thereby linking the data to, for example, a homepage.
  • the audio data included in the moving image file is reproduced.
  • the device or the image decoding device can be incorporated.
  • the bit stream of video information is transmitted via radio waves or broadcast It is transmitted to the star ex 4 10.
  • the broadcasting satellite ex410 receiving this transmits a radio wave for broadcasting, receives this radio wave with a home antenna ex406 equipped with satellite broadcasting receiving equipment, and sets a television (receiver) ex401 or a set.
  • a device such as a Top Pox (STB) ex 407 decrypts the bit stream and reproduces it.
  • STB Top Pox
  • the image decoding device described in the above embodiment is also mounted on a reproducing device ex403 that reads and decodes a bitstream recorded on a storage medium ex402, such as a CD or DVD, which is a recording medium. It is possible to do so. In this case, the reproduced video signal is displayed on the monitor ex404.
  • an image decoding device is mounted in a set-top box ex 407 connected to a cable TV cable ex 405 or a satellite terrestrial broadcasting antenna ex 406, and this is connected to a TV monitor ex 40 A configuration in which playback is performed with 8 is also conceivable. At this time, the image decoding device may be incorporated in the television instead of the set-top box.
  • a car ex4 1 2 having an antenna ex4 1 1 receives a signal from a satellite ex4 10 or a base station ex1 07 or the like, and displays a car navigation system ex4 13 or the like of the car ex4 1 2 etc. It is also possible to play moving images on the device.
  • an image signal can be encoded by the image encoding device described in the above embodiment and recorded on a recording medium.
  • the configuration of the force navigation ex4 13 is, for example, the configuration of the camera ex203, the camera interface ex303, the image A configuration excluding the encoding unit ex312 is conceivable, and the same is conceivable for the computer ex111 and the television (receiver) ex401.
  • terminals such as the above-mentioned mobile phone ex114, such as a transmission / reception terminal having both an encoder and a decoder, a transmission terminal having only an encoder, and a reception terminal having only a decoder. Is possible.
  • the image coding method or the image decoding method described in the above embodiment can be used in any of the above-described device systems, and by doing so, the effects described in the above embodiment can be obtained. Can be obtained. Further, the present invention is not limited to the above embodiment, and various changes or modifications can be made without departing from the scope of the present invention.
  • the image encoding device according to the present invention is useful as an image encoding device provided in a personal computer, a PDA, a digital broadcast station, a mobile phone, or the like having a communication function.
  • the image decoding apparatus is useful as an image decoding apparatus provided in a personal computer, a PDA, an STB for receiving digital broadcasting, a portable telephone, etc. having an efficiency function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

画像符号化装置(300)は、復号化対象マクロブロックに対応する復号化済みのマクロブロックを構成するブロック群のうちで、前記復号化済みのマクロブロックの隅に位置するブロックの動きベクトルに応じて、動き補償対象ブロックに対する動きベクトルの導出方法を選択し、選択された導出方法により動きベクトルを導出した動きベクトルを動きベクトル検出の候補とする検出部(302)と、検出された動きベクトルに基づいて動き補償対象ブロックの予測画像を生成する動き補償部(303)とを備える。

Description

明 細 動き補償方法、 画像符号化方法および画像復号化方法 技術分野
本発明は、 動きベク トルを用いた動き補償方法、 その動き補償を用い た画像符号化方法および画像復号化方法に関する。 背景技術
近年、 マルチメディアアプリケーショ ンの発展に伴い、 画像 - 音声 - テキス トなど、 あらゆるメディァの情報を統一的に扱うことが一般的に なってきた。 この時、 全てのメディアをディジタル化することにより、 統一的にメディアを扱うことが可能になる。 しかしながら、 ディジタル 化された画像は膨大なデータ量を持っため、 蓄積 ' 伝送のためには、 画 像の情報圧縮技術が不可欠である。 一方で、 圧縮した画像データを相互 運用するためには、 圧縮技術の標準化も重要である。 画像圧縮技術の標 準親格と しては、 I T U - T (国際電気通信連合 電気通信標準化部門) の H . 2 6 1 、 H . 2 6 3、 I S Oノ I E C (国際標準化機構 国際電 気標準会議) の M P E G (Moving Picture Experts Group) — 1 、 M P E G— 2、 M P E G— 4などがある。
一般に動画像の符号化では、 時間方向および空間方向の冗長性を削減 することによって情報量の圧縮を行う。 そこで時間的な冗長性の削減を 目的とする画面間予測符号化では、 前方または後方のピクチャを参照し てプロック単位で動きの検出および予測画像の作成を行い、 得られた予 測画像と符号化対象ピクチヤとの差分値に対して符号化を行う。ここで、 ピクチャとは 1 枚の画面を表す用語であり、 プログレッシブ画像ではフ レームを意味し、 インタ レース画像ではフレームもしくはフィールドを 意味する。 ここで、 インタ レース画像とは、 1 つのフレームが時刻の異 なる 2つのフィールドから構成される画像である。 インタ レース画像の 符号化や復号化処理においては、 1 つのフレームをフ レームのまま処理 したり、 2つのフィールドとして処理したり、 フレーム内のブロック毎 にフレーム構造またはフィ一ルド構造と して処理したりすることができ る。
参照画像を持たず画面内予測符号化を行うものを I ピクチャと呼ぶ。 また、 1 枚のピクチャのみを参照し画面間予測符号化を行うものを Pピ クチャと呼ぶ。 また、 同時に 2枚のピクチャを参照して画面間予測符号 化を行うことのできるものを Bピクチヤと呼ぶ。 Bピクチャは表示時間 が前方もしぐは後方から任意の組み合わせと して 2枚のピクチャを参照 することが可能である。 参照画像 (参照ピクチャ) は符号化および復号 化の基本単位であるプロックごとに適切なものを選択することができ、 符号化を行ったビッ トス トリ一ム中に先に記述される方の参照ピクチャ を第 1参照ピクチャ、 後に記述される方を第 2参照ピクチャとして区別 する。 ただし、 これらのピクチャを符号化および復号化する場合の条件 として、 参照するピクチャが既に符号化および復号化されている必要が ある。
Pピクチャ又は Bピクチャの符号化には、 動き補償画面間予測符号化 が用いられている。 動き補償画面間予測符号化とは、 画面間予測符号化 に動き補償を適用した符号化方式である。 動き補償とは、 単純に参照フ レームの同じ座標位置の画素値から予測するのではなく、 ピクチャ内の 各部の動き量 (以下、 これを 「動きベク トル」 と呼ぶ) を検出し、 当該 動き量を考慮した予測を行うことにより予測精度を向上すると共に、 デ 一タ量を減らす方式である。 例えば、 符号化対象ピクチャの動きべク ト ルを検出し、 その動きべク トルの分だけシフ トした予測値と符号化対象 ピクチャとの画素ごとの画素値の差分である予測残差を符号化すること によりデータ量を低減している。 この方式の場合には、 復号化の際に動 きべク トルの情報が必要になるため、 動きべク トルも符号化されて記録 又は伝送される。
動きべク トルは所定のサイズのプロック単位で検出されておリ、 具体 的には、 符号化対象ピクチャ側の各ブロックに対して、 参照ピクチャ側 でブロックを探索範囲内で移動させ、 符号化対象ブロックと最も似通つ た参照ブロックの位置を見つけることにより、 動きべク トルが検出され る。
図 1 は、従来の画像符号化装置.1 0 0の構成を示すブロック図である。 画像符号化装置 1 0 0は、 差分器 1 0 1 、 画像符号化部 1 0 2、 可変長 符号化部 1 0 3、 画像復号化部 1 0 4、 加算器 1 0 5、 画像メモリ 1 0 6、 ピクチャメモリ 1 07、 動き補償部 1 0 8、 動きべク トル検出部 1 0 9および動きべク トル記憶部 1 1 0を備えている。 なお、 動き補償の ブロックのサイズと しては、現在策定中の規格案である I T U— T H . 2 6 L T M L 8では、 4画素 X 4画素、 4画素 X 8画素、 8画素 X 4' 画素、 8画素 Χ 8画素、 8画素 Χ 1 6画素、 1 6画素 Χ 8画素、 1 6画 素 X 1 6画素の 7通リの動き補償のブロックサイズからマクロブロック 単位で適切なものを選択して符号化 ■ 復号化に使用する。
ピクチャメモリ 1 0 7は、 表示時間順にピクチャ単位で入力された、 動画像を表す画像データ Imgを格納する。 差分器 1 0 1 は、 ピクチヤメ モリ 1 0 7より読み出された画像データ Imgと、 動き補償部 1 0 8より 入力された予測画像データ Pred との差分を演算し、予測残差画像データ Res を生成する。 画像符号化部 1 0 2は、 入力された予測残差画像デ一 タ Resに対して周波数変換や量子化等の符号化処理を行い、 残差画像符 号化データ CodedResを生成する。画面内符号化の場合には、画面間の動 き補償を行わないので、 予測画像データ Pr edの値は 「 0」 と考える。 動きべク トル検出部 1 0 9は、 画像メモリ 1 0 6に記憶された符号化 済みの復号化画像データである参照画像データ Ref を参照ピクチャとし て用いて、 そのピクチャ内の探索領域において最適と予測される位置を 示す動きべク トルを検出し、 検出された動きべク トルを表す動きパラメ —タ Mot i onPa r amを出力する。 なお、 その際に動きべク トル検出部 1 0 9は、 符号化対象ピクチャが Pピクチャであるか Bピクチャであるかの いずれかに応じて、 参照ピクチャを切り替える。 符号化モード Modは、 ブロックをどのような方法 (例えば、 双予測、 片方向予測、 ダイ レク ト モードのいずれか) で動き補償するかを示すものである。 例えば、 ダイ レク トモ一ドでは、 動きべク トル検出部 1 0 9は、 他のブロックで導出 された動きべク トルを用いて、 当該動き補償対象ブロックの双予測動き ベク トルを算出する。 ここで、 ダイ レク トモー ドの動きベク トルを導出 するために参照するピクチャを基準ピクチャと呼び、 対象ブロックと同 じ座標位置の基準ピクチャのプロックを基準プロックと呼ぶことにする。 この場合、 ダイ レク 卜モードの動きベク トルの値は、 実際に動き補償の 単位となるブロックサイズにかかわらず、 1 6画素 X 1 6画素のマクロ ブロックを単位と して算出され、 算出された動きべク トルは符号化され ない。 そして、 算出した動きべク トルを使用するか、 もしくは動きべク トル ( 0, 0 ) を使用するかを 4画素 X 4画素単位で切り替える。 動き 補償部 1 0 8は、 符号化対象ブロックの符号化モー ド Mod と、 動きべク トル検出部 1 0 9で検出された動きべク トルとに基づいて予測画像デー タ Predを生成する。
さらに、 動き補償部 1 0 8では、 動きベク トルが 1 ノ 2画素、 1 Z 4 画素などの小数以下の画素位置を指す場合には、 低域通過フィルタなど を用いて 1 Z 2画素、 1 Z 4画素などの小数画素位置の画素値を補間生 成する。 動きべク トル記憶部 1 1 0は、 動きべク トル検出部 1 0 9から 出力された動きパラメータ Mot i onPa r amを記憶する。 可変長符号化部 1 0 3は、入力された残差画像符号化データ GodedResおよび動きべク トル 検出部 1 0 9から出力された動きパラメータ Mot i onPa r amに対して可変 長符号化等を行い、 さらに符号 モー ド Modを付加することにより符号 化 ·ϊ タ B i tst r eamを生成する。
画像復号化部 1 0 4は、 入力された残差画像符号化データ Cod edRes に対して逆量子化や逆周波数変換等の復号化処理を行い、 復号残差画像 データ ReconResを生成する。加算器 1 0 5は、画像復号化部 1 0 4より 出力された復号残差画像データ ReconRes と、動き補償部 1 0 8より入力 された予測画像データ P r ed とを加算し、復号化画像データ Recon を生成 する。 画像メモリ 1 0 6は、 生成された復号化画像データ Reconを格納 する。
被写体の移動量が整数画素単位より小さい場合は、 整数画素単位より 小さい動きで予測を行うと予測効果が高い場合がある。 一般に、 整数画 素単位よリ小さい単位の動きを伴う予測画像の画素値の計算には画素補 間を使用する。 この画素補間は、 参照画像の画素値に対して線形フィル タ (低域通過フィルタ) によるフィルタ リングを行うことにより実行さ れる。 この線形フィルタのタ ップ数を増やせば良好な周波数特性を持つ フィルタを実現しやすくなリ、 予測効果が高くなるが処理量は大きくな る。 一方、 フィルタのタップ数が少ないとフィルタの周波数特性は悪く なリ、 予測効果は低くなるがフィルタの演算量は小さくなる。
図 2は、 画素補間を行う従来の画像復号化装置 2 0 0の構成を示すブ ロック図である。 画像復号化装置 2 0 0は、 可変長復号化部 2 0 1 、 画 像復号化部 2 0 2、 加算器 2 0 3、 画像メモリ 2 0 4、 動きべク トル記 憶部 2 0 5および動き補償部 2 0 6を備えている。
可変長復号化部 2 0 1 は、 入力された符号化データ B streamから、 残差画像符号化データ GodedRes、動きパラメータ MotionParamおよび符 号化時に用いられた符号化モード Modの情報等の各種データの抽出を行 う。 画像復号化部 2 0 2は、 入力された残差画像符号化データ GodedRes の復号化を行い、 残差画像データ Res を生成する。 動きべク トル記憶部 2 0 5は、 可変長復号化部 2 0 1 によ り抽出された動きパラメータ MotionParam を格納する。 動き補償部 2 0 6は、 線形フィルタなどを用 いて 1 Z 2画素、 1 / 4画素などの小数画素位置の画素値を補間生成す る図示しない画素補間部を内部に備え、 符号化時の符号化モード Modお よび動きパラメ一タ MotionParam等に基づいて、 画像メモリ 2 0 4内の 復号化画像データ ReGonから動き補償画像データである予測画像データ Predを生成する。 この際に、 動き補償部 2 0 6は、 ダイ レク トモードの 場合に、 動きべク トル記憶部 2 0 5から読み出した基準ピクチヤの基準 ブロックの動き補償のブロックサイズと同じブロックサイズで動き補償 対象プロックの予測画像データ Predを生成する。加算器 2 0 3は、画像 復号化部 2 0 2から出力された残差画像データ Res と、 動き補償部 2 0 6から出力された動き補償画像データである予測画像データ Pred とを 加算し、 復号化画像データ Reconを生成する。 画像メモリ 2 0 4は、 生 成された復号化画像データ Reconを格納する。
【非特許文献】
M P E G— 4ビジュアル規格書(1 9 9 9年、 I S O/ I E C 1 4 4 9 6 - 2 :1999 Information technology -- Coding of aud i o-v i sua I objects -- Part2: Visual)
しかしながら、 小数精度の動き補償を行うためには、 動き補償対象ブ ロックのみならず、その周辺、数画素分の画素値が必要である。つまり、 補間処理によって小数画素精度の画素値を生成するために、 実際の予測 ブロックより大きな領域の画素値が必要となる。 補間処理で画素値を生 成するためには、 低域通過フィルタを用いるのが一般的であり、 低域フ ィルタを適用するためには対象画素の近傍数画素 (低域フィルタの係数 分の画素) をアクセスする (読み出す) 必要がある。 図 3は、 画素補間 を行う場合において予測画像を生成するために画素値を読み出すことが 必要な動き補償対象プロックとその周辺画素との一例を示す図である。 図 3 ( a ) は、 動き補償対象ブロックが小さい場合の動き補償対象ブロ ックとその周辺画素とを示す図である。 図 3 ( b ) は、 動き補償対象ブ 口ックが大きい場合の動き補償対象プロックとその周辺画素とを示す図 である。 図 3 ( a ) および図 3 ( b ) において、 中央の矩形部分は 1 つ の動き補償対象ブロックを示し、 その周囲の斜線部は画素補間を行うた めに参照メモリから画素値が読み出される周辺画素を示している。 ここ では、 例えば、 低域通過フィルタと して 9タップ (画素値が 9画素分必 要) のフィルタを用いるとすると、 ブロック境界部の画素に低域通過フ ィルタ処理を行うためには少なく ともブロック外の 4画素の画素値が必 要であり、 中央の動き補償対象ブロックに対して、 その周囲 4画素分の 画素値を含むメモリをアクセスしなければならない。 例えば、 4画素 X 4画素のブロックでは 1 ブロックで ( 4 + 4 + 4 ) X ( 4 + 4 + 4 ) = 1 4 4画素の画素値を読み出す必要がある。 8画素 X 8画素のブロック では ( 4 + 8 + 4 ) X ( 4 + 8 + 4 ) = 2 5 6画素の画素値を読み出す 必要がある。 1 6画素 Χ 1 6画素のマクロブロックを 8画素 Χ 8画素の 4ブロックで動き補償する場合には 2 5 6画素 X 4 = 1 0 2 4画素の画 素値を読み出すだけでよいが、 4画素 X 4画素のブロックを単位と して 1 6画素 X I 6画素を動き補償する場合には、 1 4 4画素 X 1 6 = 2 3 0 4画素の画素値を読み出さなければならない。 従って、 8 x 8画素単 位の動き補償の方が 4画素 x 4画素単位の動き補償 4回分に対して約半 分のメモリアクセス量になる。
以上の例から明らかなように、 1 つの動き補償対象ブロックに対して、 その周囲の画素値を同画素数分だけ余分に読み出すと した場合、 動き補 償対象ブロックの大きさが小さいほど、 参照メモリから読み出される画 素数に関して、 動き補償対象ブロックの画素数に対する周辺ブロックの 画素数の割合が大きくなる。 この結果、 参照メモリから動き補償対象ブ ロックの画素値を読み出す際に、 動き補償の対象でない周辺画素を参照 することによるメモリ ■ 読み出しアクセスの負荷が大きくなつてしまう という問題がある。 特に、 同時に 2つのピクチャを参照して符号化また は復号化対象ピクチャの動き補償画素値を計算する Bピクチヤの双予測 動き補償の場合には、 片方向予測動き補償と比べて参照メモリへのァク セスが約 2倍と多くなるため、 動き補償対象ブロックのサイズが小さい 場合には、 前記オーバへッ ドの問題がよリ顕著になってしまう。
本発明の目的は、 参照メモリへのアクセスを低減する動き補償方法を 提供することである。
また、 本発明は、 前記動き補償方法を用いた画像符号化方法および画 像復号化方法を提供することを第 2の目的としている。 発明の開示
この課題を解決するために、 本発明の動き補償方法は、 画像信号を符 号化または復号化するための動き補償方法であって、 符号化対象または 復号化対象マクロブロックに対応する符号化済みまたは復号化済みのマ クロブロックを構成するブロック群のうちで、 前記符号化済みまたは復 号化済みのマクロブロックの隅に位置するブロックの動きべク 卜ルに応 じて、 前記符号化対象または復号化対象マクロブロック内のブロックに 対する動きべク トルの生成方法を選択する選択ステップと、 選択された 方法により生成された動きベク トルに基づいて前記符号化対象または復 号化対象マクロブロック内のブロックの予測画像を生成する動き補償ス テツプとを含むことを特徴とする。 これにより、 1 つの動き補償対象ブ ロックに対して、 複数のブロックからなる符号化済みまたは復号化済み のブロック群が対応する場合であっても、 当該ブロック群を含むマクロ ブロックの隅に位置するブロック 1 つの動きを判定することにより、 動 き補償対象ブロックの動き補償に いられる動きべク トルの生成方法を 選択することができる。
また、 本発明の動き補償方法を用いた画像符号化装置および画像復号 化装置によれば、 より大きいサイズの動き補償対象ブロックを単位とし て動き補償を行うので、 例えば Bピクチャの双予測動き補償を用いた符 号化およぴ復号化における画像メモリへのアクセスによるオーバヘッ ド を低減することができる。
なお、 本発明は、 このような動き補償方法、 画像符号化方法および画 像復号化方法と して実現することができるだけでなく、 これらの方法に 含まれる特徴的なステップを手段とする画像符号化装置や画像復号化装 置として実現したり、 それらのステップをコンピュータに実行させるプ ログラムとして実現したりすることもできる。 そして、 そのプログラム は、 C D— R O M等の記録媒体やインターネッ ト等の伝送媒体を介して 配信させることができるのは言うまでもない。 図面の簡単な説明
図 1 は、 従来の画像符号化装置の構成を示すブロック図である。 図 2は、 画素補間を行う従来の画像復号化装置の構成を示すブロック 図である。 図 3は、 画素補間を行う場合において予測画像を生成するために必要 な動き補償対象ブロックとその周辺画素との一例を示す図である。
図 4は、 本発明に係る画像符号化方法を用いた画像符号化装置の一実 施の形態の構成を示すブロック図である。
図 5は、 本発明に係る画像復号化方法を用いた画像復号化装置の一実 施の形態の構成を示すブロック図である。
図 6 ( a ) は、 周辺ブロックが符号化または復号化対象マクロブロッ クと同じブロックサイズで動き補償されている場合に、 周辺ブロックの 動きべク トルを用いて符号化または復号化対象マクロブロックの動きべ ク トル M Vを決定する方法を示す図である。
図 6 ( b ) は、 符号化または復号化対象マクロブロックと後方同位置 マクロブロックとが同じブロックサイズで動き補償されている場合にお いて、 動き補償対象プロックとその ¾方同位置にある基準ブロックとの 対応を示す図である。
図 7は、 周辺ブロックが符号化または復号化対象マクロブロックより 小さいプロックサイズで動き補償されている場合に、 周辺ブロックの動 きベク トルを用いて符号化対象マクロブロックの動きべク トル M Vを決 定する方法を示す図である。
図 8は、 符号化対象マクロブロックと後方同位置マクロブロックとが 同じブロックサイズで動き補償されている場合において、 動き補償対象 ブロックの後方同位置にある基準ブロックの動きに応じて、 異なる動き べク トルで動き補償対象プロックを動き補償するための処理手順を示す フローチヤ一卜である。
図 9は、 符号化対象マクロブロックとその後方同位置マクロブロック とが異なるブロックサイズで動き補償されている場合において、 動き補 償対象ブロックとその後方同位置にある複数のブロックとの対応を示す 図である。
図 1 0は、 符号化または復号化対象マクロブロックと後方同位置マク ロブロックとが異なるブロックサイズで動き補償されている場合におい て、動き補償対象プロックの後方同位置にあるプロックの動きに応じて、 異なる動きべク トルで動き補償対象ブロックを動き補償するための処理 手順を示すフローチヤ一卜である。
図 1 1 は、 実施の形態 2において、 符号化または復号化対象マク口ブ ロックとその後方同位置マクロブロックとが異なるブロックサイズで動 き補償されている場合の動き補償対象ブロックとその後方同位置にある 複数のブロックとの対応を示す図である。
図 1 2は、 実施の形態 2において、 符号化または復号化対象マクロブ ロックと後方同位置マクロブロックとが異なるプロックサイズで動き補 償されている場合において、 動き補償対象ブロックの後方同位置にある ブロックの動きに応じて異なる動きベク トルで動き補償対象ブロックを 動き補償するための処理手順を示すフローチャー トである。
図 1 3 ( a ) は、 記録媒体本体であるフレキシブルディスクの物理フ ォ一マツ 卜の例を示している。
図 1 3 ( b ) は、 フレキシブルディスクの正面からみた外観、 断面構 造、 及びフレキシブルディスクを示す。
図 1 3 ( c ) は、 フレキシブルディスク F Dに上記プログラムの記録 再生を行うための構成を示す。
図 1 4は、 コンテンツ配信サービスを実現するコンテンツ供給システ ム ex 1 0 0の全体構成を示すブロック図である。
図 1 5は、 上記実施の形態で説明した動画像符号化方法と動画像復号 化方法を用いた携帯電話 ex 1 1 5を示す図である。
図 1 6は、 携帯電話の構成を示すブロック図である。 図 1 7は、 ディジタル放送用システムの一例を示す図である。 発明を実施するための最良の形態
以下、 本発明の実施の形態について、 図 4から図 1 7を用いて説明す る。
(実施の形態 1 )
以下、本発明の第 1 の実施形態について図面を用いて詳細に説明する。 図 4は、 本発明に係る画像符号化方法を用いた画像符号化装置 3 0 0 の一実施の形態の構成を示すブロック図である。 画像符号化装置 3 0 0 は、 2つのピクチャを参照して符号化が行われる Bピクチャの動き補償 を行う際に、 Pピクチャの動き補償のブロックサイズよりも大きいプロ ックサイズで動き補償を行う画像符号化装置であって、 差分器 1 0 1 、 画像符号化部 1 0 2、 可変長符号化部 1 0 3、 画像復号化部 1 0 4、 加 算器 1 0 5、 画像メモリ 1 0 6、 ピクチャメモリ 1 0 7、 動きべク トル 記憶部 1 1 0、 動き情報変換部 3 0 1 、 動きべク トル検出部 3 0 2およ び動き補償部 3 0 3を備えている。
ピクチャメモリ 1 0 7は、 表示時間順に入力された、 動画像を表す画 像データ I mgをピクチャ単位で格納する。 差分器 1 0 1 は、 ピクチヤメ モリ 1 0 7より読み出された画像データ I mgと、 動き補償部 3 0 3より 入力された予測画像データ P r ed との差分を演算し、予測残差画像データ Res を生成する。 これにおいて、 画面内符号化の場合には、 画面間の動 き補償を行わないので、 予測画像データ Pr edの値は 「0」 と考える。 画 像符号化部 1 0 2は、 入力された予測残差画像データ Resに対して周波 数変換や量子化等の符号化処理を行い、残差画像符号化データ CodedRes を生成する。 動き情報変換部 3 0 1 は、 符号化対象ピクチャが Bピクチ ャの場合には、 所定のプロックサイズで動き補償が行われるように動き べク トルを導出し、 動きべク トル検出部 3 0 2および動き補償部 3 0 3 に通知する。 すなわち、 B ピクチャの場合には片方向予測、 双予測とダ ィ レク トモ一ドを可能にして双予測およびダイ レク トモード動き補償を 大きなブロックサイズで行うようにし (例えば 8画素 X 8画素未満のブ ロックサイズで動きべク トルを検出することを禁止)、 P ピクチャの場合 には片方向予測を小さなブロックサイズでも可能にする。 これにより、 特にメモリへのアクセスが多い双予測モードにおいて、 小さいブロック サイズで参照ピクチャを参照する動きベク トルを選択できないようにす る。 また、 動き情報変換部 3 0 1 は、 動きべク トル記憶部 1 1 0に記憶 されている参照ピクチャの動きパラメータを、所定のブロックサイズ(例 えば 8画素 X 8画素) の動きパラメータ (動きベク トル等) に変換する か、 またはこの変換に相当する動きパラメータの読み替えを動きべク ト ル検出部 3 0 2および動き補償部 3 0 3に指示する。
動きべク トル検出部 3 0 2は、 画像メモリ 1 0 6に記憶された符号化 済みピクチャの復号化画像データである参照画像データ Ref を参照ピク チヤと して用いて、 参照ピクチャ内の探索領域において最適と予測され るブロックの位置を示す動きべク トルを検出し、 検出された動きべク 卜 ルを含む動きパラメータ Mot i onParamを出力する。 動きべク トル記憶部 1 1 0は、 動きベク トル検出部 3 0 2から出力された動きパラメータ Mot i onParamを記憶する。
また、 動きベク トル検出部 3 0 2は、 符号化対象ピクチャが Pピクチ ャか B ピクチャのいずれであるかに対応して、 符号化モード Modで動き 補償した場合の誤差を評価し、 片方向予測および双予測で参照ピクチャ 内の探索を行った場合とダイ レク トモ一ドで導出した動きべク トルの動 き補償誤差を比較する。 すなわち、 ダイレク トモードでは、 動き情報変 換部 3 0 1 によって変換された、 動き補償対象プロックの後方同位置に ある動き補償済みプロックの動きべク トル (例えば 8画素 X 8画素以上 のブロックサイズの動きに変換) に応じて、 動き補償対象ブロックの動 きベク トルを複数の動きベク トルのうちから選択する。 なお、 ダイレク トモードとは、 動き補償対象ブロックの動きべク トルを他のブロックで 導出された動きベク トルを用いて算出し、 当該動き補償対象ブロックの 動きべク トルを符号化しない双予測モードをいう。 導出した動きべク 卜 ルを使用するか、 動きベク トル ( 0, 0 ) を使うかは、 後方同位置にあ るブロックの動きべク トルの大きさによつて決定する (どちらを選択し たかの識別情報は符号化しない)。また、後方同位置にあるプロックとは、 表示順で符号化対象ピクチャの直近後方にあるピクチャ内 (基準ピクチ ャ) で符号化対象ピクチャ内のブロックと同位置にあるブロック (基準 ブロック) をし、う。
動き補償部 3 0 3は、 この符号化モー ド Mod と、 動きベク トル検出部 3 0 2で検出された動きベク トルとに基づいて予測画像データ Pr ed を 生成する。 Bピクチャのダイレク トモ一ドにおいては、 動き補償部 3 0 3は、 8画素 X 8画素の動き補償対象ブロックごとに、 動きベク トル検 出部 3 0 2によって算出された動きべク トルを用いて、 予測画像を生成 する。 なお、 動き補償部 3 0 3では、 動きベク トルが 1ノ 2画素、 1 / 4画素などの小数以下の画素位置を指す場合には、 線形フィルタ (低域 通過フィルタ) などを用いて 1 2画素、 1 4画素などの小数画素位 置の画素値を補間生成する。 この場合、 動きべク ル検出部 3 0 2では 双予測モードにおいて小さなプロックサイズの動きべク トルが選択され ないため、 動き補償部 3 0 3は、 双予測モー ドではメモリアクセスがあ まり多くない比較的大きなブロックサイズで動き補償を行うことができ る。 また、 片方向予測モードでは小さなブロックサイズでの動き補償も 可能な動き補償を行う。 可変長符号化部 1 0 3は、 入力された残差画像 符号化データ GodedRes および動きべク トル検出部 3 0 2から出力され た動きパラメータ MotionParamに対して可変長符号化等を行い、 さらに 符号化モード Modを付加することにより符号化データ Bitstreamを生成 する。
画像復号化部 1 0 4は、 入力された残差画像符号化データ GodedRes に対して逆量子化や逆周波数変換等の復号化処理を行い、 復号残差画像 データ ReconResを生成する。加算器 1 0 5は、画像復号化部 1 0 4より 出力された復号残差画像データ ReconRes と、動き補償部 3 0 3より入力 された予測画像データ Pred とを加算し、復号化画像データ Reconを生成 する。 画像メモリ 1 0 6は、 生成された復号化画像データ Reconを格納 する。
図 5は、 本発明に係る画像復号化方法を用いた画像復号化装置 4 0 0 の一実施の形態の構成を示すブロック図である。 画像復号化装置 4 0 0 は、 可変長復号化部 2 0 1 、 画像復号化部 2 0 2、 加算器 2 0 3、 画像 メモリ 2 0 4、 動きべク トル記憶部 2 0 5、 動き情報変換部 4 0 1 およ び動き補償部 4 0 2を備えている。
可変長復号化部 2 0 1 は、 入力された符号化データ Bitstreamから、 残差画像符号化データ CodedRes、動きパラメ一タ MotionParamおよび符 号化時に用いられた符号化モード Modの情報等の各種データの抽出を行 う。 画像復号化部 2 0 2は、 入力された残差画像符号化データ GodedRes の復号化を行い、 残差画像データ Resを生成する。 動き情報変換部 4 0 1 は、 動きべク トル記憶部 2 0 5から読み出した参照ピクチヤの動きパ ラメータを、 所定のブロックサイズ (例えば 8画素 X 8画素) の動きパ ラメータ (動きベク トル等) に変換するか、 またはこの変換に相当する 動きパラメータの読み替えを動き補償部 4 0 2に対して指示する。 動き 補償部 4 0 2は、 内部に、 線形フィルタなどを用いて 1 2画素、 1 4画素などの小数画素位置の画素値を補間生成する図示しない画素補間 部を備え、 符号化時の符号化モー ド Mod および動きパラ メ ータ Mot i onPa r am 等に基づいて、 画像メモリ 2 0 4内の復号化画像データ Reconから動き補償画像データである予測画像データ Pr ed を生成する。 この際に、 復号化対象マクロブ口ックがダイ レク トモ一ドで符号化され ている場合、予測画像データ P r edを生成するための動きべク トルは符号 化されていない。 このため、 動き補償部 4 0 2は、 動き情報変換部 4 0 1 で変換された動きべク トル (例えば 8画素 X 8画素以上のブロックサ ィズの動きに変換) および復号化対象マクロブロックの周辺ブロックで 導出されている動きベク トルを用いて、 動き補償対象ブロックの動きべ ク トルを算出し、 Pピクチャの最小ブロックサイズより大きいサイズの 動き補償対象ブロック (例えば、 8画素 X 8画素) の単位で予測画像デ —タ Pr edを生成する。動きべク トル記憶部 2 0 5は、可変長復号化部 2 0 1 により抽出された動きパラメータ Mot i onPa r amを格納する。 加算器 2 0 3は、 画像復号化部 2 0 2から出力された残差画像データ Res と、 動き補償部 4 0 2から出力された動き補償画像データである予測画像デ ータ P r ed とを加算し、復号化画像データ Reconを生成する。画像メモリ 2 0 4は、 生成された復号化画像データ Reconを格納する。
以下では、 上記のように構成された画像符号化装置 3 0 0および画像 復号化装置 4 0 0の動作について説明する。
本実施の形態では、 Bピクチャのダイ レク トモードにおいて、 画像符 号化装置 3 0 0においては動きべク トル検出部 3 0 2、 画像復号化装置 4 0 0においては動き補償部 4 0 2は、 動き補償対象ブロックの後方同 位置にある動き補償済みブロックの動きべク トルに応じて、 複数の動き べク トルのうちから動き補償対象ブロックの動き補償に用いる動きべク トルを選択する。 例えば、 動きベク トル検出部 3 0 2または動き補償部 4 0 2は、 符号化または復号化対象ピクチャ内ですでに符号化または復 号化されている周辺ブロックの動きベク トルを用いて算出される符号化 または復号化対象マクロブロックの動きべク トル、 または動きべク トル ( 0、 0 ) のいずれかを選択し、 動き補償対象ブロックの動きベク トル とする。周辺ブロックとは、符号化対象ピクチャの同一画面内において、 すでに符号化または復号化されているプロックであって、 符号化または 復号化対象マクロブロックの近傍のブロックをいう。 以下では、 すでに 決定された周辺ブロックの動きべク トルと、 後方の参照ピクチャの動き パラメータとを用いて動き補償対象ブロックの動きベク トルを決定する 方法による、 ダイレク トモー ドの動き補償方法について、 まず、 画像符 号化装置 3 0 0における処理を説明する。
図 6 ( a ) は、 周辺ブロックが符号化または復号化対象マクロブロッ クと同じ 1 6画素 X I 6画素のブロックサイズで動き補償されている場 合に、 周辺ブロックの動きべク トルを用いて符号化または復号化対象マ クロブロックの動きべク トル M Vを決定する方法を示す図である。 図 6 ( b ) は、 符号化または復号化対象マクロブロックと後方同位置マクロ ブロックとが同じブロックサイズで動き補償されている場合において、 動き補償対象ブロックとその後方同位置にあるブロックとの対応を示す 図である。 図 7は、 周辺ブロックが符号化または復号化対象マクロプロ ックより小さいブロックサイズで動き補償されている場合に、 周辺プロ ックの動きベク トルを用いて符号化または復号化対象マクロブロックの 動きべク トル M Vを決定する方法を示す図である。 図 8は、 符号化また は復号化対象マクロブロックと後方同位置マクロブロックとが同じプロ ックサイズで動き補償されている場合において、 動き補償対象ブロック の後方同位置にあるブロックの動きに応じて、 異なる方法で動き補償対 象ブロックを動き補償するための処理手順を示すフローチヤ一卜である。 まず、 符号化対象ピクチャ B 1 内の動き補償対象ブロックと、 後方の Pピクチャ P 2内で当該動き補償対象プロックと同位置にあるプロック とが同じ大きさであり、 一対一に対応している場合について説明する。 動き情報変換部 3 0 1 は、 動き補償対象ブロックの後方同位置にあるブ ロックの動き補償のサイズが動き補償対象プロックのサイズと同じか否 かを判断し、同じである場合、図 8のフローチャートに示される手順で、 動き補償対象ブロックの動きべク トルを算出するよう動きべク トル検出 部 3 0 2に指示する。 図 8のフローチャートに示すように、 動きべク ト ル検出部 3 0 2は、 まず、 図 6 ( b ) に示す符号化対象ピクチャ B 1 の 後方の Pピクチヤ (基準ピクチャ)、 すなわち、 対象ピクチャ B 1 よりも 時間的に後に表示される Pピクチャであって、 符号化対象ピクチ^ B 1 に近いピクチャ P 2内で、 動き補償対象ブロックと同位置にあるブロッ ク (基準ブロック) の 「動きが小さい j か否かを調べ (S 4 0 1 )、 「動 ぎが小さい J 場合、 動き補償対象ブロックの動きべク トルを ( 0、 0 ) とする ( S 4 0 2 )。 すなわち、 この動き補償対象ブロックについては、 動きベク トルを ( 0, 0 ) と して画面間予測を用いた動き補償を行う。 ここで、 「動きが小さい J とは、 そのブロックが画像と して最も近いピク チヤを参照して符号化されており、その動きべク トルの大きさ (絶対値) が Γ 1 」 以内であることをいう。 但し、 単に動きべク トルの大きさが所 定値以下である場合に 「動きが小さい j としてもよく、 また、 特定のピ クチャを参照ピクチャと した場合に 「動きが小さい」 としてもよい。 一方、 後方の Pピクチャ内で動き補償対象プロックと同位置にあるブ ロックの 「動きが小さく」 ない場合、 すなわち、 基準ブロックが最も近 ぃピクチャを参照して符号化されていないか、 または動きべク トルの大 きさが 「 1 」 を超える場合、 動きべク トル検出部 3 0 2は、 符号化対象 マクロブロックの周辺ブロックの動きベク トルから算出される符号化対 象マクロブロックの動きべク トル M Vを、 当該動き補償対象ブロックの 動きべク トルとする ( S 4 0 4 )。 なお、 以下の説明では、 説明を簡単に するためピクチャ P O、 ピクチャ P 2はそれぞれピクチャ B 1 に最も近 ぃピクチャとする。
符号化対象マクロブロックの動きベク トル M Vを算出するために、 動 きベク トル検出部 3 0 2は、 まず、 符号化対象マクロブロック近傍の符 号化済みのブロック (周辺ブロック) を 3つ選択する。 選択の基準およ び方法は、 ここでは重要ではないので説明を省略する。 図 6 ( a ) は、 符号化対象マクロブロックに対して選択された 3つの周辺ブロックを示 してし、る。 同図のように、 符号化対象マクロブロックの上に位置するマ クロブロックでは、 動きべク トル M V 2がすでに決定されており、 右上 に位置するマクロブロックでは、動きベク トル M V 3が決定されている。 また、 符号化対象マクロブロックの左に位置するマクロブロックについ ては、 動きベク トル M V 1 が決定されている。 動きベク トル検出部 3 0 2は、 これらの動きべク トル MV 1 、 動きべク トル M V 2および動きべ ク トル M V 3を用いて、 当該符号化対象マクロブロックの動きべク トル M Vを決定する。 例えば、 動きベク トル M V 1 、 動きベク トル M V 2お よび動きベク トル M V 3の中で時間的に直近のピクチャを参照したもの を当該符号化対象マクロブロックの動きべク トル M Vの候補とする。 こ こで、「符号化対象ピクチヤから時間的に直近のピクチャ」 とは、 符号化 対象マクロブロックにおいて前方のピクチャを参照した動きベク トルを 予測する場合には、 符号化対象ピクチャから前方かつ直近のピクチャを いい、 後方のピクチャを参照した動きべク 卜ルを予測する場合には、 後 方かつ直近のピクチャをいう。 これにおいて、 動きベク トル検出部 3 0 2は、
( 1 ) 符号化対象ピクチャから時間的に直近のピクチャを参照したもの がない場合、当該符号化対象マクロブロックの動きベク トル M Vを(0、
0 ) とする。
( 2 ) 直近のピクチャを参照しているものが 1 つの場合、 その候補を、 当該符号化対象マクロブロックの動きべク トル M Vとする。 また、
( 3 ) 直近のピクチャを参照しているものが 2つ以上の場合、 直近のピ クチャを参照していない周辺プロックの動きベク トルを ( 0、 0 ) と し て 、 周辺プロックの 3つの動きべク トルの中央値を符号化対象マクロブ
Pソクの動きべク 卜ル M Vとする。
以上では、 図 6 ( a ) を用いて符号化対象マクロブロックの周辺プロ ックが、 符号化対象マクロブロックと同じサイズで動き補償されている 場合について説明したが、 図 7に示すように、 周辺ブロックが符号化対 象マクロブロックとは異なる、 よリ小さいブロックサイズで動き補償さ れている場合でも、 同様にして符号化対象マクロブロックの動きべク ト ル M Vを算出することができる。 図 7は、 1 6画素 X 1 6画素の符号化 対象マクロブロックに対して、 周辺ブロックでは 4画素 X 4画素のブロ ックを単位として動きべク トルが検出されている場合を示している。 こ のような場合、 符号化対象マクロブロックの動きべク トル M Vを算出す るために、 動きベク トル検出部 3 0 2は、 まず周辺ブロックを 3つ (ブ ロック A、 ブロック Bおよびブロック C ) 選択する。
ブロック Aは、 例えば、 符号化対象マクロブロックの左に位置するマ クロブロック 【こ,禹し 、 符号化対象マク口フロックの左上の角に接するブ ロックである 。 また 、 ブロック Bは 、 例えば、 符号化対象マクロブロッ クの上に位置するマクロブロックに属し、 符号化対象マクロブロックの 左上の角に接するブ Pックである。 さらに、 ブロック Cは、 例えば、 符 号化対象マクロブ口ックの右上に位置するマクロブロックに し、 符 化対象マクロブ口ックの右上の角に接するブロックである。 ブロック Aに対しては動きべク トル M V 1 がすでに決定されており、 ブロック Bに対しては動きべク トル M V 2が、 ブロック Cに対しては動 きベク トル M V 3が、 すでに決定されている。 動きベク トル検出部 3 0 2は、 これらの動きベク トル MV 1 、 動きベク トル MV 2および動きべ ク トル MV 3に、 上記 ( 1 ) ( 2) および ( 3 ) を適用し、 符号化対象マ クロブロックと周辺ブロックとが同じサイズで動き補償されている場合 と同様にして、 符号化対象マクロブロックの動きべク トル MVを決定す ることができる。 符号化対象マクロブロック内の各動き補償対象ブロッ クについては、すでに説明したように、後方同位置にあるブロックの Γ動 きが小さい」 か否かに応じて、 動きベク トル.( 0、 0 ) を用いて動き補 償するか、 動きべク トル MVを用いて動き補償するかのいずれかを選択 する。
上記のようにして動き補償対象ブロックの動きベク トルが決定される と、 動き補償部 3 0 3は、 決定された動きべク トルを用いて画像メモリ 1 0 6内の参照画像データ Ref から予測画像データ Predを生成する( S 40 3 )。
以上では、 動き補償対象ブロックの後方同位置にあるブロックが、 動 き補償対象ブロックと同じブロックサイズで動き補償されている場合に ついて説明したが、 以下では、 後方同位置にあるブロックが、 動き補償 対象ブロックとは異なるプロックサイズで動き補償されている場合につ いて説明する。 画像符号化装置 3 00において、 動き補償部 3 0 3およ び動きべク トル検出部 3 0 2は、 Bピクチャの双予測動き補償を行う際 には、 Pピクチャや Bピケチヤの片方向予測動き補償対象ブロックとな リ うる最小 ( 4画素 X 4画素) のブロックよリも大きい、 一定サイズ(例 えば、 8画素 X 8画素) のブロックを対象と して動き補償を行う。 この ため、 双予測で動き補償されるピクチャの後方の参照ピクチャが片方向 予測で動き補償されている場合、 動き補償対象ブロックの後方同位置に あるブロックが動き補償対象ブロックより小さいブロックサイズで動き 補償されている場合が生じる。
0 9は、 符号化またほ復号化対象マクロブロックとその後方同位置マ クロブロックとが異なるブロックサイズで動き補償されている場合にお いて、 動き補償対象ブロックとその後方同位置にある複数のブロックと の対応を示す図である。 同図の左側には、 符号化対象 Bピクチャ内の符 号化対象マクロブロックが示されている。 同図の右側には、 符号化対象 Bピクチャの直近後方のピクチャ ( Pピクチャまたは Bピクチャ) にお ける符号化対象マクロブロックの後方同位置マクロブロックが示されて いる。 前記マクロブロックのサイズは、 いずれも、 例えば 1 6画素 X 1 6画素である。 右側に示される後方同位置マクロブロックは符号化対象 ピクチャよりも先に符号化されており、 例えば、 それぞれ 4画素 X 4画 素のブロック (図中の最小区画) を単位として、 すでに動き補償が行わ れているものとする。
図 1 0は、 符号化または復号化対象マクロブロックと後方同位置マク ロブロックとが異なるブロックサイズで動き補償されている場合におい て、動き補償対象プロックの後方同位置にあるブロックの動きに応じ 、 異なる動きべク トルで動き補償対象ブロックを動き補償するための処理 手順を示すフローチャー トである。 動き情報変換部 3 0 1 は、 まず、 動 き補償対象ブロックの後方同位置にあるブロックが動き補償対象ブロッ クと同じブロックサイズで動き補償されているか否かを判断し、 同じブ ロックサイズで動き補償されていない場合、 図 1 0のフローチャー トに 示される手順で動き補償対象ブロックの動きベク トルを算出するよう、 動きベク トル検出部 3 0 2に指示する。 ここでは、 動き補償対象ブロッ クのサイズが 8画素 X 8画素であリ、 後方同位置にあるブロックは 4画 素 X 4画素で動き補償されているので、 動きべク トル検出部 3 0 2は図 1 0に示すフローチャー トに従って動き補償対象ブロックの動きべク 卜 ルを算出する。
図 1 0のフローチャートではステップ S 5 0 1 の処理が、 図 8のフロ —チャートに示したステップ S 4 0 1 の処理と異なる。 図 9に示したよ うに、 本発明の動き補償方法では、 1 つの符号化対象マクロブロックは 4つの動き補償対象ブロックごとに動き補償が行われる。 それらを例え ば、 動き補償対象ブロック a、 動き補償対象ブロック b、 動き補償対象 ブロック cおよび動き補償対象ブロック d とする。 これらの動き補償対 象ブロックに対し、 後方同位置マクロブロック内では、 ブロック a '、 ブ ロック b '、 ブロック c 'およびブロック d 'がそれぞれ対応する。 これら のブロック a '、 ブロック b '、 ブロック c 'およびブロック d 'は、 それ ぞれがさらに、 4画素 X 4画素の 4つの動き補償ブロックから構成され ている。 動きベク トル検出部 3 0 2は、 まず、 後方同位置マクロブロッ ク内で、 符号化対象マクロブロック内の動き補償対象ブロック aに対応 するブロック a 'を調べ、 ブロック a 'を構成している 4つの動き補償ブ ロックのうち、 2つ以上の動き補償ブロックの 「動きが小さい」 か否か を調べる (S 5 0 1 )o
動き補償ブロックの 「動きが小さい j か否かを判定する基準は、 図 8 に示したフローチャートのステップ S 4 0 1 における判定基準と同様で ある。 2つ以上の動き補償ブロックの 「動きが小さい」 場合、 動きべク 卜ル検出部 3 0 2は、 符号化対象マクロブロック内の動き補償対象プロ ック aの動きベク トルを ( 0、 0 ) と し (S 5 0 2)、 動き補償部 3 0 3 は、 決定された動きベク トル ( 0、 0 ) を用いて動き補償する (S 5 0 3 )。 2つ以上の動き補償ブロックの 「動きが小さく」 ない場合、 すなわ ち、 「動きが小さい」 動き補償ブロックの数が 2つ未満である場合、 動き べク トル検出部 3 0 2は、 符号化対象マクロブロックの周辺ブロックの 動きべク トルから符号化対象マクロブロックの動きべク トル MVを決定 する (S 5 04 )。周辺ブロックの動きベク トルから符号化対象マクロブ ロックの動きべク トル MVを決定する処理は、 図 8のステップ S 404 における処理と同様である。 動き補償部 3 0 3は、 このよ うに決定され た動きベク トル MVを用いて動き補償対象ブロック aの動き補償予測画 素値を生成する (S 5 0 3 )。
動き補償部 3 0 3、 動きべク トル検出部 3 0 2および動き情報変換部 3 0 1 は、 上記ステップ S 5 0 1 〜ステップ S 5 04の処理を、 残りの 動き補償対象ブロック b、 動き補償対象ブロック c、 動き補償対象プロ ック dについて繰り返し、 動き補償対象ブロック a、 動き補償対象プロ ック b、 動き補償対象ブロック cおよび動き補償対象ブロック dのすベ ての動き補償を行うと、 当該符号化対象マクロブロックの動き補償を完 了する。
一方、 画像復号化装置 40 0では、 画像符号化装置 3 0 0によって符 号化された符号化データ Bは streamを復号化する。 ダイレク トモードに おいて、 画像復号化装置 40 0では、 動き情報変換部 4 0 1 が画像符号 化装置 3 00の動き情報変換部 3 0 1 に対応する処理を行い、 動き補償 部 4 0 2が画像符号化装置 3 00の動きべク トル検出部 3 02および動 き補償部 3 0 3に対応する処理を行うことによって、 画像符号化装置 3 00と同様にして、 各動き補償対象ブロックの動き補償を行うことがで きる。
可変長復号化部 2 0 1 によって符号化データ Bitstreamから抽出され た符号化モード Modに、 復号化対象マクロブロックがダイ レク トモード で符号化されていることが示されている場合、動ぎ情報変換部 4 0 1 は、 動き補償対象ブロックの後方同位置にある動き補償済みブロックの動き 補償のサイズが動き補償対象プロックのサイズと同じか否かを判断し、 同じである場合、 図 8のフローチャートに示される手順で、 動き補償対 象ブロックの動きべク トルを算出するよう動き補償部 40 2に指示する。 この指示に従って、 動き補償部 4 0 2は、 まず、 図 6 ( b ) に示す復 号化対象ピクチャ B 1 の後方の Pピクチャ (後方の参照ピクチャ) P 2 内で、動き補償対象ブロックと同位置にある動き補償済みブロックの「動 きが小さい」 か否かを調べ ( S 4 0 1 )、 「動きが小さい」 場合、 動き補 償対象ブロックの動きベク トルを ( 0、 0 ) とする (S 4 0 2 )。 すなわ ち、 この動き補償対象ブロックについては、 画面間予測を用いた動き補 償を行わない。 一方、 後方の Pピクチャ内で動き補償対象ブロックと同 位置にある動き補償済みブロックの 「動きが小さく」 ない場合、 動き補 償部 40 2は、 復号化対象マクロブロックの周辺プロックの動きべク ト ルから算出される復号化対象マクロブロックの動きべク トル MVを、 当 該動き補償対象ブロックの動きべク トルとする (S 404)。復号化済み の周辺ブロックの動きべク トルを用いて復号化対象マクロブロックの動 きベク トルを算出する方法は、 画像符号化装置 3 00の場合に説明した 方法と同じである。
ステップ S 40 2またはステップ S 4 04において動き補償対象プロ ックの動きベク トルが決定されると、 動き補償部 40 2は、 画像メモリ 20 4内の参照画像データ Ref のうち、 決定された動きべク トルで示さ れる位置のブロックを読み出し、予測画像データ Predを生成する (S 4 03 )。 このようにして、 動き補償部 40 2は、 動き補償対象ブロックと その後方同位置にある動き補償済みプロックとが同じプロックサイズで 動き補償されている場合においても、 後方同位置の動き補償済みブロッ クの 「動きが小さい」 か否かに応じて、 動き補償対象ブロックごとの動 きベク トルを決定し、 動き補償を行うことができる。 また、 抽出された符号化モード Modに、 復号化対象マクロブロックが ダイレク 卜モードで符号化されていることが示されている場合で、 動き 補償対象ブロックとその後方同位置にある動き補償済みプロックとが同 じブロックサイズで動き補償されていない場合、 動き情報変換部 4 0 1 は、 図 1 0のフローチャートに示される手順で動き補償対象ブロックの 動きべク トルを算出するよう動き補償部 4 0 2に指示する。 動き補儻部 4 0 2は、 (復号化対象ピクチャ内) 復号化対象マクロブロックの (直近 後方の Pピクチャ内) 後方同位置マクロブロックにおいて、 8画素 X 8 画素の動き補償対象ブロックに対応する 8画素 X 8画素のブロックに含 まれる、 4つの 4画素 X 4画素の動き補償済みブロックの動きを調べ、 4つのうち、 2つ以上の動き補償済みブロックの 「動きが小さい j 場合 には、 動き補償対象プロックの動きベク トルを ( 0、 0 ) とする (S 5 0 2 )。そうでない場合には、復号化対象マクロブロックの周辺ブロック の動きべク トルを用いて算出された、 復号化対象マクロブロックの動き べク トル M Vを動き補償対象プロックの動きべク トルとする(S 5 0 4 ) ステップ S 5 0 2またはステップ S 5 0 4において動き補償対象プロッ クの動きべク トルが決定されると、 動き補償部 4 0 2は、 画像メモリ 2 0 4内の参照画像データ Ref のうち、 決定された動きべク トルで示され る位置のブロックを読み出し、予測画像データ Predを生成する (S 5 0 3 )。 これによ り、 動き補償部 4 0 2は、 動き補償対象ブロックとその後 方同位 gにある動き補償済みプロックとが同じブロックサイズで動き補 償されていない場合においても、 後方同位置の動き補償済みブロックの Γ動きが小さい」 か否かを判定することができる。 従って、 動き補償部 4 0 2は、 この判定結果に応じて、 動き補償対象ブロックごとの動きべ ク トルを決定し、動き補償対象ブロックの動き補償を行うことができる。 以上のように本発明の動き補償方法を用いた画像符号化装置 3 0 0お よび画像復号化装置 4 0 0によれば、 Bピクチャの動き補償符号化にお いて、 従来の動き補償対象ブロックょリ大きいサイズの動き補償対象ブ ロックを単位と して動き補償を行うので、 Bピクチャの符号化および復 号化における画像メモリへのアクセスによる負荷を低減することができ る。
なお、 上記実施の形態 1 では、 Bピクチャの動き補償対象ブロックの サイズを 8画素 X 8画素、 Pピクチャの動き補償済みプロックのサイズ を 4画素 X 4画素と して説明したが、 本発明はこれに限定されず、 これ とは異なるブロックサイズに定めてもよい。 また、 直近後方ピクチャに おいて動き補償対象プロックに対応するブロックのうちの 2つ以上の動 き補償済みブロックの 「動きが小さい」 場合、 動き補償対象ブロックの 動きベク トルを ( 0、 0 ) としたが、 必ずしも 「 2つ以上」 である必要 はなく、丁 1 つ以上 j、 Γ 3つ以上」 または 「全部 j としてもよい。 また、 Bピクチャと Pピクチャとの動き補償対象ブロックおよび動き補償対象 ブロックのサイズを上記以外に定めた場合には、 それらのブロックサイ ズの比に応じて適当に定めればよい。 以下の実施の形態においても同様 である。
さらに、 上記実施の形態 1 において、 図 8または図 1 0に示したフロ —チャー トでは、 周辺ブロックの動きべク トルに基づいて決定される動 きベク トルは、 1 つの符号化または復号化対象マクロブロックについて 1 つであるので、 同一符号化または復号化対象マクロブロック内の動き 補償対象ブロックにっき、 ステップ S 4 0 4またはステップ S 5 0 4の 処理が実行される場合には、 毎回、 同じ計算処理をする結果となってい る。 しかし、 本発明はこれに限定されず、 例えば、 符号化または復号化 対象マクロブロックごとにあらかじめ周辺ブロックの動きべク トルに基 づいて動きベク トルを決定しておき、 すなわち、 ステップ S 4 0 1 また はステップ S 5 0 1 の判断の前にステップ S 4 0 4またはステップ S 5 0 4の処理を行っておき、 ステップ S 4 0 4またはステップ S 5 0 4で は、単に、「周辺ブロックの動きベク トルに基づいてあらかじめ決定され た動きべク トルの値を、 当該動き補償対象ブロックの動きべク トルとし て用いる」 と してもよい。 このようにすれば、 動き補償対象ブロックの 後方同位置にあるブロックの 「動きが小さく」 ない場合に、 周辺ブロッ クの動きべク トルに基づく動きべク トルの計算回数を、 より少なく し、 動きベク トル検出部 3 0 2および動ぎ補償部 4 0 2の処理負荷を低減す ることができるという効果がある。 以下の実施の形態においても同様で ある。
また、 ステップ S 4 0 1 またはステップ S 5 0 1 の判断の前にステツ プ S 4 0 4またはステップ S 5 0 4の処理を行っておく代わりに、 ステ ップ S 4 0 4またはステップ S 5 0 4の処理があった場合には、 算出さ れた符号化または復号化対象マクロブロックの動きベク トル M Vをメモ リなどに保持すると してもよい。 動きべク トル M Vを保持しておく期間 は、 同一符号化または復号化対象マクロブロック内の動き補償対象プロ ックを処理している期間である。 具体的には、 動きべク トル検出部 3 0 3または動き補償部 4 0 2は、 符号化または復号化対象マクロブロック において、 動き補償対象ブロックの後方同位置にあるブロックの 「動き が小さく」 ない場合に初めて符号化または復号化対象マクロブロックの 動きべク トル M Vを算出し、 同じ符号化または復号化対象マクロブロッ ク内の動き補償対象プロックの処理が行われている間、 符号化または復 号化対象マクロブロックの動きべク トル M Vを保持しているとしてもよ い。 このようにすれば、 動きベク トル検出部 3 0 2および動き補償部 4 0 2の動きべク トル算出回数をさらに低減することができ、 動きべク ト ル検出部 3 0 2および動き補償部 4 0 2の処理負荷をさらに低減するこ とができるという効果がある。
また、 上記実施の形態 1 において、 図 8または図 1 0のフローチヤ一 トのステツプ S 4 0 4またはステツプ S 5 0 4では、 周辺プロックの動 きベク トルを用いて符号化または復号化対象マクロブロックの動きべク トル M Vを決定するとしたが、 必ずしもこの方法で符号化または復号化 対象マクロブロッ の動きベク トル M Vを決定する必要はない。例えば、 動きべク トルがあらかじめ決定されている他のピクチャにおいて、 符号 化または復号化対象マクロブロックと同位置にあるブロックの動きベク トルを用いて符号化または復号化対象マクロブロックの動きべク トルを 決定するとしてもよい。 以下の実施の形態においても同様である。
なお、 上記実施の形態では、 動き情報変換部 3 0 "I は、 参照ピクチャ の動きパラメータが動きベク トル記憶部 1 1 0に格納された後、 所定の ブロックサイズの動きパラメータに変換すると説明しているが、 参照ピ クチャの動きパラメータが動きべク トル記憶部 1 1 0に格納される前に 変換するとしてもよい。 以下の実施の形態においても同様である。 例え ば、 動き情報変換部 3 0 1 は、 参照ピクチャの動きパラメータが、 4画 素 X 4画素のブロックを動き補償の単位と して検出されている場合、 そ れぞれ 1 6画素 X I 6画素のマクロブロックを 4分割した 8画素 X 8画 素のブロックごとに、 そのブロック ( 8画素 X 8画素) に含まれる 4つ の 4画素 X 4画素のブロックで検出された動きべク トルの値を、すべて、 その 8画素 X 8画素のブロック内でマクロブロック ( 1 6画素 X I 6画 素) の 4隅にあたる 4画素 X 4画素の動き補償対象ブロックで検出され た動きベク トルの値に書き換える。 これにより、 マクロブロックを 4分 割して得られる 8画素 X 8画素のブロックをさらに 4分割して得られる 4画素 X 4画素のブロックは、 いずれも、 8画素 X 8画素のブロック内 でマクロブロックの隅にあるブロック ( 4画素 X 4画素) に対して検出 された同じ動きべク トルを持つことになる。 このように変換された動き パラメータを動きべク 卜ル記憶部 1 1 0に格納しておく ことにより、 動 きべク トル検出部 3 0 2は、 後方同位置にあるブロックに含まれるいず れか 1 つの 4画素 X 4画素のブロックの動きべク トルを読み出せば、 そ れを用いて容易に後方同位置にあるブロックの動きを判定することがで きる。
また、 動き情報変換部 3 0 1 は、 例えば、 参照ピクチャの動きパラメ ータが、 4画素 X 4画素のブロックを動き補償の単位と して検出されて いる場合、 動きべク トル記憶部 1 1 0内において、 1 6画素 X 1 6画素 のマクロブロックを 4分割した 8画素 X 8画素の各ブロックに対応付け て、 1 つの動きベク トルだけを格納しておぐと してもよい。 以下の実施 の形態においても同様である。 この動きべク トルは、 8画素 X 8画素の ブロック内でマクロブロックの隅にあるブロック ( 4画素 X 4画素) に 対して検出された動きベク トルなどである。 これにより、 動きベク トル 検出部 3 0 2は、 参照ピクチャの動きパラメータが、 4画素 X 4画素の ブロックを動き補償の単位と して検出されている場合であっても、 図 6 ( b ) および図 8に示した処理と同様にして、 後方同位置にあるブロッ クの 「動きが小さい j か否かを判定することができる。
さらに、 動き情報変換部 3 0 1 は、 例えば、 参照ピクチャの動きパラ メータが、 4画素 X 4画素のブロックを動き補償の単位として検出され ている場合、 8画素 X 8画素のブロック内でマクロブロックの隅にある ブロック ( 4画素 X 4画素) に対して検出された動きベク トルから、 そ のブロック ( 4画素 X 4画素) の 「動きが小さい」 か否かを判定し、 そ の判定結果を示すフラグを、 符号化対象マクロブロック内の 8画素 X 8 画素の各ブロックに対応付けて動きべク トル記憶部 1 1 0に格納してお く と してもよい。以下の実施の形態においても同様である。これにより、 動きベク トル検出部 3 0 2は、 Bピクチャの動き補償の際に、 後方同位 置にあるブロックの「動きが小さい」か否かを判定する必要がなくなリ、 Bピクチャの動き補償における処理負荷を低減することができるという 効果がある。
(実施の形態 2 )
次に説明する本実施の形態 2は、 符号化または復号化対象マクロブ口 ックと後方同位置マクロブロックとが異なるブロックサイズで動き補償 されている場合において、動き補償対象ブロックの動きベク トルを( 0、 0 ) とするか、 周辺ブロックの動きべク トルから決定するかのいずれか を選択する際の判定方法が実施の形態 1 と異なる。 符号化または復号化 対象マクロブロックと後方同位置マクロブロックとが同じブロックサイ ズで動き補償ざれている場合には、 実施の形態 1 の図 6 ( a ) から図 8 で説明した方法によリ、 動き補償対象プロックの動き補償が行われる。 従って、 構成の点では、 本実施の形態 2の画像符号化装置および画像復 号化装置が、 実施の形態 1 に示した画像符号化装置 3 0 0および画像復 号化装置 4 0 0と異なる主たる部分は、 画像符号化装置の動き情報変換 部および動きべク トル検出部と、 画像復号化装置の動き情報変換部およ び動き補償部である。 よって、 以下では、 重複する構成要素の説明を省 略する。
図 1 1 は、 本実施の形態 2において、 符号化または復号化対象マクロ ブロックとその後方同位置マクロブロックとが異なるプロックサイズで 動き補償されている場合の動き補償対象ブロックとその後方同位置にあ る複数のブロックとの対応を示す図である。 同図の左側には、 図 9と同 様に、 符号化または復号化対象 Bピクチャ内の符号化または復号化対象 マクロブロックが示されている。 同図の右側には、 図 9と同様に、 符号 化または復号化対象マクロブロックの後方同位置マクロブロックが示さ れている。 お側に示される後方同位置マクロブロックは Pピクチヤまた は Bピクチヤであり、 例えば、 それぞれ 4画素 X 4画素のブロック (図 中の最小区画) を単位として、 すでに動きべク トルの検出および動き補 償が行われている。 左側に示される符号化または復号化対象マクロブ口 ックでは、 図 9 と同様に、 8画素 X 8画素のブロック (図中の最小区画) を単位と して動きべク トルの決定および動き補償が行われる。
図 1 1 に示すように、 1 つの符号化または復号化対象マクロブロック は 4つの動き補償対象ブロックから構成される。 それらを例えば、 動き 補償対象ブロック a、 動き補償対象ブロック b、 動き補償対象ブロック cおよび動き補償対象ブロック dとすると、 その後方同位置マクロプロ ック内では、 それぞれ 4画素 X 4画素の 4つの動き補償済みブロックか ら構成される 4つの 8 X 8画素のブロックが、 それぞれの動き補償対象 ブロックに対応する。
図 1 2は、 実施の形態 2において、 符号化または復号化対象マクロブ ロックと後方同位置マクロブロックとが異なるプロックサイズで動き補 償されている場合において、 動き補償対象ブロックの後方同位置にある プロックの動きに応じて、 異なる動きべク トルで動き補償対象プロック を動き補償するための 理手順を示すフ口一チャー トである。 すでに説 明したように、 本実施の形態 2の動き補償方法では、 動き補償対象プロ ックの動きべク トルを選択する際の判定方法が異なるだけであるので、 フローチャー トでは、 図 1 2のステップ S 7 0 1 の処理と、 図 1 0のス テツプ S 5 0 1 の処理とが異なるだけである。
まず、 動き情報変換部は、 動き補償対象ブロックの後方同位置にある プロックの動き補償のサイズが動き補償対象プロックのサイズと同じか 否かを判断し、 同じである場合、 図 8のフローチャートに示される手順 で、 動き補償対象ブロックの動きべク トルを算出するよう動きべク トル 検出部または動き補償部に指示する。 逆に、 同じブロックサイズで動き 補償されていない場合、 図 1 2のフローチャートに示される手順で動き 補償対象ブロックの動きべク トルを算出するよう、 動きべク トル検出部 または動き補償部に指示する。
動きべク トル検出部または動き補償部は、 符号化または復号化対象マ クロブロック内の動き補償対象ブロック aにっき、 後方同位置マクロブ 口ック内の対応するブロックを構成している 4つの動き補償済みプロッ クのうち、 後方同位置マクロブロックの隅に位置する動き補償済みプロ ック a 'の 「動きが小さい」 か否かを調べる ( S 7 0 1 )。
動き補償済みプロック a 'の Γ動きが小さし、」か否かを判定する基準は、 図 8に示したステップ S 4 0 1 における判定基準と同様である。 動き補 償済みブロック a 'の Γ動きが小さい」 場合、 動きベク トル検出部または 動き補償部は、 符号化または復号化対象マクロブロック内の動き補償対 象ブロック aの動きべク トルを ( 0、 0 ) とする (S 7 0 2 )。 動き補償 部は、 決定された動きべク トル ( 0、 0 ) を用いて動き補償対象ブロッ ク aを動き補償する ( S 7 0 3 )。
動き補償対象ブロック a 'の 「動きが小さく J ない場合、 動きべク トル 検出部または動き補償部は、 符号化または復号化対象マクロブロックの 周辺ブロックの動きベク トルから当該符号化または復号化対象マクロブ ロックの動きべク トル M Vを決定する (S 7 0 4 )。周辺ブロックの動き べク トルから符号化または復号化対象マクロブロックの動きべク トル M Vを決定する処理は、 図 8のステップ S 4 0 4における処理と同様であ る。 動き補償部は、 このように決定された符号化または復号化対象マク ロブロックの動きべク トル M Vを用いて動き補償対象ブロック aの動き 補償予測画素値を生成する (S 7 0 3 )。 以上の処理により、 1 つの動き 補償対象ブロック aの動き補償が完了する。 実施の形態 2の画像符号化装置において、 動きべク トル検出部、 動き 補償部および動き情報変換部と、 画像復号化装置において動き補償部お よび動き情報変換部とは、 続いて、 上記ステップ S 7 0 1 〜ステップ S 7 0 4の処理を、 残りの動き補償対象ブロック b、 動き補償対象ブロッ ク 0、 および動き補償対象ブロック d について繰り返すことによ り、 1 つの符号化または復号化対象マクロブロックの動き補償を完了する。 すなわち、 動き補償対象ブロック bについては、 動き補償対象ブロッ ク bの後方同位置にあるブロックにおいて、 符号化または復号化対象マ ク口プロックの後方同位置マクロブ口ックの隅に位置する動き補償済み ブロック b 'の 「動きが小さい」 か否かを調べ、 動き補償済みプロック b 'の 「動きが小さい」 場合には動きべク トル ( 0、 0 ) を選択する。 動き 補償済みブロック b 'の 「動きが小さく j ない場合には、 周辺ブロックの 動きべク トルを用いて算出される符号化または復号化対象マクロブロッ クの動きべク トル M Vを選択する。 動き補償部は、 選択された動きべク トルを用いて、 動き補償対象ブロック bの動き補償を行う。
また、 動き補償対象ブロック cおよび動き補償対象ブロック dについ ても同様に、 動き補償済みブロック c "および動き補償済みプロック d ' の動きに応じて動きべク トルを選択し、 選択された動きべク トルで動き 補償対象ブロック cおよび動き補償対象ブロック dを動き補償する。 こ のようにして、 符号化または復号化対象マクロブロック内のすべての動 き補償対象ブロックの動き補償を行うと、 当該符号化または復号化対象 マクロブロックの動き補償を完了する。
以上のように本実施の形態 2の動き補償方法によれば、 後方同位置マ クロブロックの隅に位置する 1 つの動き補償済みブロックの動きを調べ るだけで、 動き補償対象プロックの動き補償に用いる動きべク トルを選 択することができるので、 実施の形態 1 の動き補償方法よりも動きべク トル検出部または動き補償部の処理負荷を低減することができるという 効果がある。
(実施の形態 3 )
さらに、 上記各実施の形態で示した画像符号化方法および画像復号化 方法の構成を実現するためのプログラムを、 フレキシブルディスク等の 記録媒体に記録するようにすることにより、 上記各実施の形態で示した 処理を、 独立したコンピュータシステムにおいて簡単に実施することが 可能となる。
図 1 3は、 上記実施の形態 1 から実施の形態 2の画像符号化方法およ ぴ画像復号化方法をコンピュータシステムにより実現するためのプログ ラムを格納するための記録媒体についての説明図である。
図 1 3 ( b ) は、 フレキシブルディスクの正面からみた外観、 断面構 造、 及びフレキシブルディスクを示し、 図 1 3 ( a ) は、 記録媒体本体 であるフレキシブルディスクの物理フォーマツ 卜の例を示している。 フ レキシブルディスク F Dはケース F内に内蔵され、 該ディスクの表面に は、 同心円状に外周からは内周に向かって複数の トラック T rが形成さ れ、 各トラックは角度方向に 1 6のセクタ S eに分割されている。 従つ て、 上記プログラムを格納したフレキシブルディスクでは、 上記フレキ シブルディスク F D上に割り当てられた領域に、 上記プログラムと して の画像符号化方法および画像復号化方法が記録されている。
また、 図 1 3 ( c ) は、 フレキシブルディスク F Dに上記プログラム の記録再生を行うための構成を示す。 上記プログラムをフレキシブルデ イスク F Dに記録する場合は、 コンピュータシステム C sから上記プロ グラムと しての画像符号化方法および画像復号化方法を、 フレキシブル ディスク ドライブを介して書き込む。 また、 フレキシブルディスク内の プログラムによリ上記画像符号化方法および画像復号化方法をコンピュ —タシステム中に構築する場合は、 フレキシブルディスク ドライブによ リプログラムをフレキシブルディスクから読み出し、 コンピュータシス テムに転送する。
なお、 上記説明では、 記録媒体と してフレキシブルディスクを用いて 説明を行った力 光ディスクを用いても同様に行うことができる。また、 記録媒体はこれに限らず、 C D— R O M、 メモリカード、 R O Mカセッ 卜等、 プログラムを記録できるものであれば同様に実施することができ る。
(実施の形態 4 )
さらにここで、 上記実施の形態で示した画像符号化方法や画像復号化 方法の応用例とそれを用いたシステムを説明する。
図 1 4は、 コンテンツ配信サービスを実現するコンテンツ供給システ 厶 ex 1 0 0の全体構成を示すブロック図である。通信サービスの提供ェ リアを所望の大きさに分割し、 各セル内にそれぞれ固定無線局である基 地局 ex 1 0 7〜ex 1 1 0が設置されている。
このコンテンツ供給システム ex 1 0 0は、例えば、インターネッ ト ex 1 0 1 にインターネッ 卜サービスプロバイダ ex 1 0 2および電話網 ex 1 0 4、 および基地局 ex1 0 7〜ex1 1 0を介して、 コンピュータ ex 1 1 1 、 P D A (personal digital assistant) ex 1 1 2、 カメラ ex "I 1 3、携帯電話 ex 1 1 4、 カメラ付きの携帯電話 ex 1 1 5などの'各機器 が接続される。
しかし、 コンテンツ供給システム exl 0 0は図 1 4のような組合せに 限定されず、いずれかを組み合わせて接続するようにしてもよい。また、 固定無線局である基地局 exl 0 7〜ex 1 1 0を介さずに、各機器が電話 網 exl 04に直接接続されてもよい。
カメラ ex l 1 3はデジタルビデオカメラ等の動画撮影が可能な機器 である。 また、 携帯電話は、 P D C (Personal Digital Communications) 方式、 C D A (Code Division Multiple Access) 方式、 W— C D MA ( Wi deband- Code Division Multiple Access) 方式、 若しく は G S M (Global System for obi le Communications) 方式の携帯電話機、 また は P H S (Persona I Handyphone System) 等であり、 しゝずれでも構わな い。
また、 ス トリーミングサーノく ex 1 0 3は、 カメラ ex 1 1 3から基地局 ex 1 0 9、電話網 exl 0 4を通じて接続されており、 カメラ ex 1 1 3を 用いてユーザが送信する符号化処理されたデータに基づいたライブ配信 等が可能になる。撮影したデータの符号化処理は力メラ exl 1 3で行つ ても、 データの送信処理をするサーバ等で行ってもよい。 また、 カメラ ex 1 1 6で撮影した動画データはコンピュータ ex l 1 1 を介してス ト リ一ミングサーバ ex 1 0 3に送信されてもよい。力メラ ex 1 1 6はデジ タルカメラ等の静止画、 動画が撮影可能な機器である。 この場合、 動画 データの符号化はカメラ exl 1 6で行ってもコンピュータ exl 1 1 で 行ってもどちらでもよい。 また、 符号化処理はコンピュータ exl 1 1 や カメラ ex 1 1 6が有する L S I e 1 1 7において処理することになる。 なお、 画像符号化■復号化用のソフ トウエアをコンピュータ exl 1 1等 で読み取リ可能な記録媒体である何らかの蓄積メディア( C D— R OM、 フレキシブルディスク、 ハードディスクなど) に組み込んでもよい。 さ らに、 カメラ付きの携帯電話 exl 1 5で動画データを送信してもよい。 このときの動画データは携帯電話 exl 1 5が有する L S I で符号化処 理されたデータである。
このコンテンツ供給システム ex 1 00では、ユーザがカメラ exl 1 3、 カメラ exl 1 6等で撮影しているコンテンツ (例えば、 音楽ライブを撮 影した映像等) を上記実施の形態同様に符号化処理してス トリーミング サ一パ ex 1 0 3に送信する一方で、ス トリーミングサーバ ex 1 0 3は要 求のあったクライアントに対して上記コンテンツデータをス トリーム配 信する。 クライアントと しては、 上記符号化処理されたデータを復号化 することが可能な、 コンピュ一タ ex 1 1 1 、 P D A ex 1 1 2、 カメラ ex 1 1 3、 携帯電話 ex 1 1 4等がある。 このようにすることでコ ンテンツ 供給システム ex l 0 0は、符号化されたデータをクライアン トにおいて 受信して再生することができ、 さらにクライアントにおいてリアルタイ ムで受信して復号化し、 再生することにより、 個人放送をも実現可能に なるシステムである。
このシステムを構成する各機器の符号化、 復号化には上記各実施の形 態で示した画像符号化装置あるいは画像復号化装置を用いるようにすれ ばよい。
その一例と して携帯電話について説明する。
図 1 5は、 上記実施の形態で説明した画像符号化方法と画像復号化方 法を用いた携帯電話 ex 1 1 5を示す図である。携帯電話 ex l 1 5は、基 地局 ex 1 1 0との間で電波を送受信するためのアンテナ ex 2 0 1 、 C C Dカメラ等の映像、 静止画を撮ることが可能な力メラ部 ex 2 0 3、 カメ ラ部 ex 2 0 3で撮影した映像、アンテナ ex 2 0 1 で受信した映像等が復 号化されたデータを表示する液晶ディスプレイ等の表示部 ex 2 0 2、操 作キー ex 2 0 4群から構成される本体部、 音声出力をするためのスピー 力等の音声出力部 e x 2 0 8、音声入力をするためのマイク等の音声入力 部 ex 2 0 5、 撮影した動画もしくは静止画のデータ、 受信したメールの データ、 動画のデータもしくは静止画のデータ等、 符号化されたデータ または復号化されたデータを保存するための記録メディア ex 2 0 7、携 帯電話 ex l 1 5に記録メディア ex 2 0 7を装着可能とするためのス口 ッ ト部 ex 2 0 6を有している。記録メディア ex 2 0 7は S Dカード等の プラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリ である E E P R O M (Electrically Erasable and Programmable Read On I y Memory) の一種であるフラッシュメモリ素子を格納したものである。
さらに、 携帯電話 ex 1 1 5について図 1 6を用いて説明する。 携帯電 話 ex 1 1 5は表示部 ex 2 0 2及び操作キー ex 20 4を備えた本体部の 各部を統括的に制御するようになされた主制御部 ex 3 1 1 に対して、電 源回路部 ex 3 1 0、操作入力制御部 ex3 04、画像符号化部 ex3 1 2、 カメラインタ一フエ一ス部 ex3 0 3、 L C D (Liquid Crystal Display) 制 部 ex 3 0 2、 画像復号化部 ex 3 09、 多重分離部 ex 3 0 8、 記録 再生部 ex 3 07、 変復調回路部 ex 3 0 6及び音声処理部 ex 3 0 5が同 期バス ex3 "I 3を介して互いに接続されている。
電源回路部 ex3 1 0は、ユーザの操作によリ終話及び電源キーがオン 状態にされると、 バッテリパックから各部に対して電力を供給すること によリカメラ付ディジタル携帯電話 ex 1 1 5を動作可能な状態に起動 する。
携帯電話 ex 1 1 5は、 C P U、 R O M及び R A M等でなる主制御部 ex 3 1 1の制御に基づいて、音声通話モード時に音声入力部 ex2 0 5で集 音した音声信号を音声処理部 ex 3 0 5によってディジタル音声データ に変換し、 これを変復調回路部 ex3 0 6でスぺク トラ厶拡散処理し、 送 受信回路部 ex3 0 1 でディ ジタルアナログ変換処理及び周波数変換処 理を施した後にアンテナ ex 20 1 を介して送信する。また携帯電話機 ex 1 1 5は、音声通話モード時にアンテナ ex 2 0 1 で受信した受信データ を増幅して周波数変換処理及びアナログディジタル変換処理を施し、 変 復調回路部 ex 3 0 6でスぺク トラム逆拡散処理し、音声処理部 ex3 0 5 によってアナログ音声データに変換した後、 これを音声出力部 ex20 8 を介して出力する。 さらに、 データ通信モー ド時に電子メールを送信する場合、 本体部の 操作キー ex 20 4の操作によって入力された電子メールのテキス トデー タは操作入力制御部 ex 3 04を介して主制御部 ex 3 1 1 に送出される。 主制御部 ex 3 1 1 は、テキス トデータを変復調回路部 ex 3 0 6でスぺク 卜ラム拡散処理し、送受信回路部 ex 3 0 1 でディジタルアナログ変換処 理及び周波数変換処理を施した後にアンテナ ex 2 0 1 を介して基地局 ex 1 1 0へ送信する。
データ通信モード時に画像データを送信する場合、 カメラ部 ex 2 0 3 で撮像された画像データをカメラインタ一フェース部 ex3 0 3を介し て画像符号化部 ex3 1 2に供給する。 また、 画像データを送信しない場 合には、 カメラ部 ex 2 0 3で撮像した画像データをカメラインタ一フエ —ス部 ex3 0 3及ぴ L C D制御部 ex 3 0 2を介して表示部 ex 2 0 2に 直接表示することも可能である。
画像符号化部 ex 3 1 2は、本願発明で説明した画像符号化装置を備え た構成であり、 カメラ部 ex2 0 3から供給された画像データを上記実施 の形態で示した画像符号化装置に用いた符号化方法によって圧縮符号化 することにより符号化画像データに変換し、 これを多重分離部 ex3 0 8 に送出する。 また、 このとき同時に携帯電話機 ex 1 1 5は、 カメラ部 ex 20 3で撮像中に音声入力部 ex2 0 5で集音した音声を音声処理部 ex 3 0 5を介してディジタルの音声データ と して多重分離部 ex3 0 8に 送出す 。
多重分離部 ex3 0 8は、画像符号化部 ex3 1 2から供給された符号化 画像データと音声処理部 ex 3 0 5から供給された音声データとを所定 の方式で多重化し、その結果得られる多重化データを変復調回路部 ex 3 0 6でスぺク トラム拡散処理し、送受信回路部 ex 3 0 1 でディジタルァ ナログ変換処理及び周波数変換処理を施した後にアンテナ ex 2 0 1 を 介して送信する。
データ通信モード時にホームページ等にリンクされた動画像フアイル のデータを受信する場合、アンテナ ex 2 0 1 を介して基地局 ex 1 1 0か ら受信した受信データを変復調回路部 ex 3 0 6でスぺク トラム逆拡散 処理し、 その結果得られる多重化データを多重分離部 ex 3 0 8に送出す る。
また、アンテナ ex 2 0 1 を介して受信された多重化データを復号化す るには、 多重分離部 ex 3 0 8は、 多重化データを分離することによリ画 像データのビッ トス トリー厶と音声データのビッ トス トリー厶とに分け、 同期バス ex 3 1 3を介して当該符号化画像データを画像復号化部 ex 3 0 9に供給すると共に当該音声データを音声処理部 ex 3 0 5に供給す る。
次に、 画像復号化部 ex 3 0 9は、 本願発明で説明した画像復号化装置 を備えた構成であリ、 画像データのビッ トス トリームを上記実施の形態 で示した符号化方法に対応した復号化方法で復号することにより再生動 画像データを生成し、 これを L C D制御部 ex 3 0 2を介して表示部 ex 2 0 2に供給し、 これにより、 例えばホームページにリンクされた動画 像ファイルに含まれる動画データが表示される。 このとき同時に音声処 理部 ex 3 0 5は、 音声データをアナ口グ音声データに変換した後、 これ を音声出力部 ex 2 0 8に供給し、 これによリ、 例えばホームページにリ ンクされた動画像ファイルに含まる音声データが再生される。
なお、 上記システムの例に限られず、 最近は衛星、 地上波によるディ ジタル放送が話題となっており、 図 1 7に示すようにディジタル放送用 システムにも上記実施の形態の少なく とも画像符号化装置または画像復 号化装置のいずれかを組み込むことができる。 具体的には、 放送局 ex 4 0 9では映像情報のビッ トス トリ一厶が電波を介して通信または放送衛 星 ex 4 1 0に伝送される。 これを受けた放送衛星 ex 4 1 0は、放送用の 電波を発信し、 この電波を衛星放送受信設備をもつ家庭のアンテナ ex 4 0 6で受信し'、 テレビ (受信機) ex40 1 またはセッ ト トップポックス ( S T B ) ex 40 7などの装置によリ ビッ トス トリ一ムを復号化してこ れを再生する。 また、 記録媒体である C Dや D V D等の蓄積メディア ex 40 2に記録したビッ トス トリームを読み取リ、復号化する再生装置 ex 4 0 3にも上記実施の形態で示した画像復号化装置を実装することが可 能である。 この場合、 再生された映像信号はモニタ ex40 4に表示され る。 また、 ケーブルテレビ用のケーブル ex4 0 5または衛星 地上波放 送のアンテナ ex 40 6に接続されたセッ ト トップボックス ex 4 0 7内 に画像復号化装置を実装し、 これをテレビのモニタ ex 40 8で再生する 構成も考えられる。 このときセッ ト トップボックスではなく、 テレビ内 に画像復号化装置を組み込んでも良い。 また、 アンテナ ex4 1 1 を有す る車 ex4 1 2で衛星 ex4 1 0からまたは基地局 ex 1 0 7等から信号を 受信し、車 ex 4 1 2が有するカーナビゲ一シヨン ex4 1 3等の表示装置 に動画を再生することも可能である。
更に、画像信号を上記実施の形態で示した画像符号化装置で符号化し、 記録媒体に記録することもできる。 具体例と しては、 D V Dディスク ex 42 1 に画像信号を記録する D V Dレコーダや、 ハ一ドディスクに記録 するディスクレコーダなどのレコーダ ex 4 2 0がある。更に S Dカード ex4 2 2に記録することもできる。 レコーダ ex4 20が上記実施の形態 で示した画像復号化装置を備えていれば、 D V Dディスク ex 4 2 1 や SD カード ex4 2 2に記録した画像信号を再生し、モニタ ex4 0 8で表示す ることができる。
なお、 力一ナビゲーシヨン ex4 1 3の構成は例えば図 1 6に示す構成 のうち、 カメラ部 ex 20 3 とカメラインタ一フェース部 ex 3 0 3、画像 符号化部 ex 3 1 2を除いた構成が考えられ、 同様なことがコンピュータ ex 1 1 1 やテレビ (受信機) ex 4 0 1 等でも考えられる。
また、 上記携帯電話 ex 1 1 4等の端末は、 符号化器■復号化器を両方 持つ送受信型の端末の他に、 符号化器のみの送信端末、 復号化器のみの 受信端末の 3通りの実装形式が考えられる。
このように、 上記実施の形態で示した画像符号化方法あるいは画像復 号化方法を上述したいずれの機器 'システムに用いることは可能であり、 そうすることで、 上記実施の形態で説明した効果を得ることができる。 また、 本発明はかかる上記実施形態に限定されるものではなく、 本発 明の範囲を逸脱することなく種々の変形または修正が可能である。 産業上の利用の可能性
本発明に係る画像符号化装置は、 通信機能を備えるパーソナルコンビ ユータ、 P D A、 ディジタル放送の放送局および携帯電話機などに備え られる画像符号化装置と して有用である。
また、 本発明に係る画像復号化装置は、 ffi信機能を備えるパーソナル コンピュータ、 P D A、 ディジタル放送を受信する S T Bおよび携帯電 話機などに備えられる画像復号化装置として有用である。

Claims

請 求 の 範 囲
1 . 画像信号を符号化または復号化するための動き補償方法であって、 符号化対象または復号化対象マクロブロックに対応する符号化済みま たは復号化済みのマクロブロックを構成するブロック群のうちで、 前記 符号化済みまたは復号化済みのマクロブ口ックの隅に位置するプロック の動きべク トルに応じて、 前記符号化対象または復号化対象マクロプロ ック内のブロックに対する動きベク トルの生成方法を選択する選択ステ ップと、
選択された方法により生成された動きべク トルに基づいて前記符号化 対象または復号化対象マクロブロック内のブロックの予測画像を生成す る動き補償ステップと
を含むことを特徴とする動き補償方法。
2. 前記ブロック群の各ブロックの大きさは (N x ) 画素 X ( N y ) 画素 (ただし、 N x、 N yは自然数) であり、 前記符号化対象または復 号化対象マクロブロック内のブロックの大きさは(K x Ν X )画素 X (Κ y N y ) 画素 (ただし、 K x、 K yは自然数) である
ことを特徴とする請求の範囲 1 記載の動き補償方法。
3. 前記動き補償方法において、 N Xおよび N yのいずれか一方は他 方の倍数であり、 K x N x≥ 8かつ K y N y≥ 8である
ことを特徴とする請求の範囲 2記載の動き補償方法。
4. 前記動きべク トルの生成方法の 1 つは、 動きべク トルを 「 0」 と する方法である
ことを特徴とする請求の範囲 1 記載の動き補償方法。
5. 前記動きベク トルの生成方法の 1 つは、 前記符号化対象または復 号化対象マクロブロックが属するピクチャにおいて前記符号化対象また は復号化対象マクロブロックの周辺に位置する符号化済みまたは復号化 済みブロックの動きべク トルを参照して動きべク トルを生成する方法で ある
ことを特徴とする請求項 1記載の動き補償方法。
6. 前記動き補償方法では、 複数の符号化済みまたは復号化済みピク チヤを参照して前記各符号化対象または復号化対象マクロブロック内の ブロックの予測画像を生成する
ことを特徴とする請求の範囲 1 記載の動き補償方法。
7. 画像信号を符号化する画像符号化方法であって、
符号化対象マクロブロックに対応する符号化済みのマクロブロックを 構成するブロック群のうちで、 前記符号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記符号化対象マクロブ口 ック内のブロックに対する動きベク トルの生成方法を選択する選択ステ ップと、
選択された方法により生成された動きべク トルに基づいて前記符号化 対象マクロブロック内のブロックの予測画像を生成する動き補償ステツ プと
前記画像信号と前記予測画像との差分を符号化する符号化ステツプ とを含むことを特徴とする画像符号化方法。
8. 前記ブロック群の各ブロックの大きさは ( N x ) 画素 X ( N y ) 画素 (ただし、 N x、 N yは自然数) であり、 前記符号化対象または復 号化対象マクロブロック内のブロックの大きさは( K x Ν X )画素 X ( Κ y N y ) 画素 (ただし、 K x、 K yは自然数) である
ことを特徴とする請求の範囲 7記載の画像符号化方法。
9. 前記動き補償方法において、 N Xおよび N yのいずれか一方は他 方の倍数であり、 K x N x ≥ 8かつ K y N y ≥ 8である ことを特徴とする請求の範囲 8記載の動き補償方法。
1 0. ス トリ一厶を復号化し復号化画像を得るための画像復号化方法 であって、
復号化 ¾象マクロブロックに対応する復号化済みのマクロブロックを 構成するブロック群のうちで、 前記復号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記復号化対象マクロプロ ック内のブロックに対する動きベク トルの生成方法を選択する選択ス亍 ップと、
選択された方法により生成された動きべク トルに基づいて前記復号化 対象マクロブロック内のブロックの予測画像を生成する動き補償ステツ プと、
前記ス 卜リ一厶を復号化した差分画像と前記予測画像とを加算して復 号化画像とする復号化ステップと
を含むことを特徴とする画像復号化方法。
1 1 . 前記ブロック群の各ブロックの大きさは (N X ) 画素 X ( N y ) 画素 (ただし、 N X、 N yは自然数) であり、 前記符号化対象または復 号化対象マクロブロック内のブロックの大きさは( K x N X )画素 X (K y N y ) 画素 (ナこだし、 K x、 K yは自然数) である
ことを特徴とする請求の範囲 1 0記載の画像復号化方法。
1 2. 前記動き補償方法において、 N Xおよび N yのいずれか一方は 他方の倍数であり、 K x N x≥ 8かつ K y N y≥ 8である
ことを特徴とする請求の範囲 1 1 記載の動き補償方法。
1 3. 画像信号を動き補償するためのプログラムであって、
符号化対象または復号化対象マクロブロックに対応する符号^済みま たは復号化済みのマクロブロックを構成するブロック群のうちで、 前記 符号化済みまたは復号化済みのマクロブロックの隅に位置するブロック の動きべク トルに応じて、 前記符号化対象または復号化対象マクロプロ ック内のブロックに対する動きベクトルの生成方法を選択する選択ステ ップと、
選択された方法によリ生成された動きべク トルに基づいて前記符号化 対象または復号化対象マクロブ口ック内のプロックの予測画像を生成す る動き補償ステップと
をコンピュータに実行させるプログラム。
1 4 . 画像信号を符号化するためのプログラムであって、
符号化対象マクロブロックに対応する符号化済みのマクロブロックを 構成するブロック群のうちで、 前記符号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記符号化対象マクロプロ ック内のブロックに対する動きベク トルの生成方法を選択する選択ステ ップと、
選択された方法により生成された動きベク トルに基づいて前記符号化 対象マクロブロック内のプロック,の予測画像を生成する動き補償ステツ プと、
前記画像信号と前記予測画像との差分を符号化する符号化ステップ をコンピュータに実行させるプログラム。
1 5 . ス トリームを復号化し復号化画像を得るためのプログラムであ つて、
復号化対象マクロブロックに対応する復号化済みのマクロブロックを 構成するブロック群のうちで、 前記復号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記復号化対象マクロプロ ック内のブロックに対する動きベク トルの生成方法を選択する選択ステ ップと、
選択された方法により生成された動きベク トルに基づいて前記復号化 対象マクロブロック内のブロックの予測画像を生成する動き補償ステツ プと、
前記ス トリームを復号化した差分画像と前記予測画像とを加算して復 号化画像とする復号化ス亍ップと
をコンピュータに実行させるプログラム。
1 6 . 画像信号を符号化する画像符号化装置であって、
符号化対象マクロブロックに対応する符号化済みのマクロブロックを 構成するブロック群のうちで、 前記符号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記符号化対象マクロプロ ック内のブロックに対する動きべク トルの生成方法を選択する選択手段 選択された方法により生成された動きベク トルに基づいて前記符号化 対象マクロブロック内のブロックの予測画像を生成する動き補償手段と、 前記画像信号と前記予測画像との差分を符号化する符号化手段と を備えることを特徴とする画像符号化装置。
1 7 . ス トリームを復号化し復号化画像を得るための画像復号化装置 であって、
復号化対象マクロブロックに対応する復号化済みのマクロブロックを 構成するブロック群のうちで、 前記復号化済みのマクロブロックの隅に 位置するブロックの動きべク トルに応じて、 前記復号化対象マクロプロ ック内のブロックに対する動きべク トルの生成方法を選択する選択手段 選択された方法によリ生成された動きべク トルに基づいて前記復号化 対象マクロブロック内のプロックの予測画像を生成する動き補償手段と、 前記ス トリームを復号化した差分画像と前記予測画像とを加算して復 号化画像とする復号化手段と を備えることを特徴とする画像復号化装置
PCT/JP2003/010894 2002-11-25 2003-08-28 動き補償方法、画像符号化方法および画像復号化方法 Ceased WO2004049726A1 (ja)

Priority Applications (17)

Application Number Priority Date Filing Date Title
BRPI0307197-9A BRPI0307197B1 (pt) 2002-11-25 2003-08-28 Método de compensação de movimento, método de codificação de imagem e método de decodificação de imagem
BR0307197-9A BR0307197A (pt) 2002-11-25 2003-08-28 Método de compensação de movimento, método de codificação de imagem e método de decodificação de imagem
AU2003261780A AU2003261780B8 (en) 2002-11-25 2003-08-28 Motion compensation method, picture coding method and picture decoding method
US10/500,575 US8009731B2 (en) 2002-11-25 2003-08-28 Motion compensation method, picture coding method and picture decoding method
EP03811870.9A EP1569460B1 (en) 2002-11-25 2003-08-28 Motion compensation method, image encoding method, and image decoding method
CA2473897A CA2473897C (en) 2002-11-25 2003-08-28 Motion compensation method, picture coding method and picture decoding method
EP18155063.3A EP3349461B1 (en) 2002-11-25 2003-08-28 Method for coding and decoding b pictures in direct mode
US13/192,790 US8660185B2 (en) 2002-11-25 2011-07-28 Picture decoding apparatus and method for decoding a picture using motion compensation
US14/046,058 US8861607B2 (en) 2002-11-25 2013-10-04 Motion compensation method, picture coding method and picture decoding method
US14/046,042 US8897367B2 (en) 2002-11-25 2013-10-04 Motion compensation method, picture coding method and picture decoding method
US14/311,524 US9088795B2 (en) 2002-11-25 2014-06-23 Picture coding and decoding system for coding and decoding macroblocks in direct mode
US14/740,660 US9204153B2 (en) 2002-11-25 2015-06-16 Motion compensation method, picture coding method and picture decoding method
US14/740,693 US9241171B2 (en) 2002-11-25 2015-06-16 Motion compensation method, picture coding method and picture decoding method
US14/959,351 US9473786B2 (en) 2002-11-25 2015-12-04 Coding and decoding system for coding and decoding a picture in direct mode
US14/960,896 US9485516B2 (en) 2002-11-25 2015-12-07 Picture decoding apparatus and picture decoding method for decoding a current picture in direct mode
US14/963,629 US9554148B2 (en) 2002-11-25 2015-12-09 Picture coding method and picture coding apparatus for coding a current picture in direct mode
US15/369,014 US10057595B2 (en) 2002-11-25 2016-12-05 Motion compensation method, picture coding method and picture decoding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002340390 2002-11-25
JP2002-340390 2002-11-25

Related Child Applications (3)

Application Number Title Priority Date Filing Date
US10/500,575 A-371-Of-International US8009731B2 (en) 2002-11-25 2003-08-28 Motion compensation method, picture coding method and picture decoding method
US10500575 A-371-Of-International 2003-08-28
US13/192,790 Division US8660185B2 (en) 2002-11-25 2011-07-28 Picture decoding apparatus and method for decoding a picture using motion compensation

Publications (1)

Publication Number Publication Date
WO2004049726A1 true WO2004049726A1 (ja) 2004-06-10

Family

ID=32375820

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/010894 Ceased WO2004049726A1 (ja) 2002-11-25 2003-08-28 動き補償方法、画像符号化方法および画像復号化方法

Country Status (12)

Country Link
US (11) US8009731B2 (ja)
EP (5) EP2249579B1 (ja)
KR (2) KR100985236B1 (ja)
CN (4) CN101141651B (ja)
AU (1) AU2003261780B8 (ja)
BR (2) BRPI0307197B1 (ja)
CA (1) CA2473897C (ja)
ES (1) ES2788382T3 (ja)
MX (1) MXPA04007021A (ja)
MY (1) MY138540A (ja)
TW (3) TWI331877B (ja)
WO (1) WO2004049726A1 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8780957B2 (en) * 2005-01-14 2014-07-15 Qualcomm Incorporated Optimal weights for MMSE space-time equalizer of multicode CDMA system
JP4736456B2 (ja) * 2005-02-15 2011-07-27 株式会社日立製作所 走査線補間装置、映像表示装置、映像信号処理装置
US8019000B2 (en) * 2005-02-24 2011-09-13 Sanyo Electric Co., Ltd. Motion vector detecting device
KR20070117660A (ko) * 2005-03-10 2007-12-12 콸콤 인코포레이티드 컨텐트 적응적 멀티미디어 처리
US8879635B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Methods and device for data alignment with time domain boundary
US8948260B2 (en) * 2005-10-17 2015-02-03 Qualcomm Incorporated Adaptive GOP structure in video streaming
US20070206117A1 (en) * 2005-10-17 2007-09-06 Qualcomm Incorporated Motion and apparatus for spatio-temporal deinterlacing aided by motion compensation for field-based video
US8654848B2 (en) 2005-10-17 2014-02-18 Qualcomm Incorporated Method and apparatus for shot detection in video streaming
US20070171280A1 (en) * 2005-10-24 2007-07-26 Qualcomm Incorporated Inverse telecine algorithm based on state machine
US7783184B2 (en) * 2006-02-15 2010-08-24 Lg Electronics Inc. Optical zoom tracking apparatus and method, and computer-readable recording medium for performing the optical zoom tracking method
EP1835749A1 (en) * 2006-03-16 2007-09-19 THOMSON Licensing Method for coding video data of a sequence of pictures
US9131164B2 (en) * 2006-04-04 2015-09-08 Qualcomm Incorporated Preprocessor method and apparatus
WO2009040904A1 (ja) * 2007-09-26 2009-04-02 Fujitsu Microelectronics Limited ビデオデコーダおよびデジタル放送受信装置
KR100939917B1 (ko) * 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
WO2009123248A1 (en) * 2008-04-01 2009-10-08 Canon Kabushiki Kaisha Moving image encoding apparatus and moving image encoding method
US8675738B2 (en) * 2008-08-06 2014-03-18 Mediatek Inc. Video decoding method without using additional buffers for storing scaled frames and system thereof
WO2011004551A1 (ja) * 2009-07-07 2011-01-13 パナソニック株式会社 動画像復号化装置、動画像復号化方法、動画像復号化システム、集積回路およびプログラム
CN104954799B (zh) 2009-10-21 2018-04-03 Sk电信有限公司 视频编码方法
CN102131091B (zh) * 2010-01-15 2013-01-23 联发科技股份有限公司 解码端运动向量导出方法
US20110176611A1 (en) * 2010-01-15 2011-07-21 Yu-Wen Huang Methods for decoder-side motion vector derivation
US20120082228A1 (en) 2010-10-01 2012-04-05 Yeping Su Nested entropy encoding
US10104391B2 (en) 2010-10-01 2018-10-16 Dolby International Ab System for nested entropy encoding
WO2012074344A2 (ko) * 2010-12-03 2012-06-07 엘지전자 주식회사 움직임 정보 리스트 인덱싱 방법 및 이러한 방법을 사용하는 장치
RU2719308C2 (ru) 2011-04-12 2020-04-17 Сан Пэтент Траст Способ кодирования движущихся изображений, устройство кодирования движущихся изображений, способ декодирования движущихся изображений, устройство декодирования движущихся изображений и устройство кодирования и декодирования движущихся изображений
ES2673180T3 (es) 2011-05-24 2018-06-20 Velos Media International Limited Procedimiento de codificación de imágenes, aparato de codificación de imágenes, procedimiento de decodificación de imágenes, aparato de decodificación de imágenes y aparato de codificación/decodificación de imágenes
BR112013027344B1 (pt) 2011-05-27 2022-05-10 Sun Patent Trust Método de codificação de imagem, aparelho de codificação de imagem, método de decodificação de imagem, aparelho de decodificação de imagem, e aparelho de codificação e decodificação de imagem
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
KR101889582B1 (ko) * 2011-05-31 2018-08-20 선 페이턴트 트러스트 동화상 부호화 방법, 동화상 부호화 장치, 동화상 복호화 방법, 동화상 복호화 장치, 및, 동화상 부호화 복호화 장치
KR101590733B1 (ko) * 2011-06-17 2016-02-01 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램, 및 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
KR101753551B1 (ko) * 2011-06-20 2017-07-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램을 저장한 기록매체
WO2012177052A2 (ko) * 2011-06-21 2012-12-27 한국전자통신연구원 인터 예측 방법 및 그 장치
KR20120140592A (ko) 2011-06-21 2012-12-31 한국전자통신연구원 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치
CN108282659B (zh) 2011-06-28 2022-02-25 三星电子株式会社 用于使用帧内预测进行图像编码和解码的方法和设备
MY181718A (en) 2011-06-30 2021-01-05 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
US9819963B2 (en) 2011-07-12 2017-11-14 Electronics And Telecommunications Research Institute Inter prediction method and apparatus for same
US9456214B2 (en) 2011-08-03 2016-09-27 Sun Patent Trust Moving picture coding method, moving picture coding apparatus, moving picture decoding method, moving picture decoding apparatus, and moving picture coding and decoding apparatus
JP2013085096A (ja) * 2011-10-07 2013-05-09 Sony Corp 画像処理装置および方法
CN103858428B (zh) 2011-10-19 2018-07-03 太阳专利托管公司 图像编码方法、图像编码装置、图像解码方法及图像解码装置
WO2013108690A1 (ja) * 2012-01-19 2013-07-25 ソニー株式会社 画像処理装置および方法
US9906786B2 (en) * 2012-09-07 2018-02-27 Qualcomm Incorporated Weighted prediction mode for scalable video coding
JP6052319B2 (ja) * 2015-03-25 2016-12-27 Nttエレクトロニクス株式会社 動画像符号化装置
US9998745B2 (en) 2015-10-29 2018-06-12 Microsoft Technology Licensing, Llc Transforming video bit streams for parallel processing
CN109155856B (zh) * 2016-06-09 2023-10-24 英特尔公司 用于视频编解码的利用近邻块模式的运动估计的方法和系统
CN116233416A (zh) * 2017-01-16 2023-06-06 世宗大学校产学协力团 影像编码/解码方法
GB2588004B (en) 2018-06-05 2023-03-01 Beijing Bytedance Network Tech Co Ltd Interaction between IBC and affine
WO2019244117A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Unified constrains for the merge affine mode and the non-merge affine mode
WO2019244119A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Sub-block mv inheritance between color components
CN110944193B (zh) * 2018-09-24 2023-08-11 北京字节跳动网络技术有限公司 视频编码和解码中的加权双向预测
WO2020094151A1 (en) 2018-11-10 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Rounding in pairwise average candidate calculations
US11070816B2 (en) * 2019-06-18 2021-07-20 Tencent America LLC Conversion of decoded block vector for intra picture block compensation
BR112022000158A2 (pt) 2019-07-08 2022-02-22 Huawei Tech Co Ltd Restrições de imagem de unidade de nal mista em codificação de vídeo
FR3106910B1 (fr) 2020-01-31 2022-02-18 St Microelectronics Grenoble 2 Circuit intégré configuré pour réaliser des opérations de chiffrement symétrique sans transmission de clé secrète
FR3106909B1 (fr) 2020-01-31 2022-02-18 St Microelectronics Grenoble 2 Circuit intégré configuré pour réaliser des opérations de chiffrement symétrique avec protection de clé secrète
WO2021188527A1 (en) * 2020-03-17 2021-09-23 Bytedance Inc. Using video parameter set in video coding
US12034949B2 (en) 2021-01-14 2024-07-09 Samsung Electronics Co., Ltd. Video decoding apparatus and video decoding method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000253407A (ja) * 1999-02-26 2000-09-14 Matsushita Electric Ind Co Ltd 動きベクトル検出方法および画像符号化方法
JP2000308066A (ja) * 1999-04-23 2000-11-02 Toshiba Corp 動画像符号化装置および動画像符号化方法
JP2001251627A (ja) * 2000-03-03 2001-09-14 Matsushita Electric Ind Co Ltd 符号化装置、符号化方法及びプログラムを記録した記録媒体

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272529A (en) * 1992-03-20 1993-12-21 Northwest Starscan Limited Partnership Adaptive hierarchical subband vector quantization encoder
KR100198986B1 (ko) * 1995-03-15 1999-06-15 전주범 블록킹 현상방지용 움직임 보상장치
US5903313A (en) * 1995-04-18 1999-05-11 Advanced Micro Devices, Inc. Method and apparatus for adaptively performing motion compensation in a video processing apparatus
US5883678A (en) * 1995-09-29 1999-03-16 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus for reducing an alpha-map signal at a controlled reduction ratio
JP3183155B2 (ja) 1996-03-18 2001-07-03 株式会社日立製作所 画像復号化装置、及び、画像復号化方法
KR100191318B1 (ko) * 1996-03-26 1999-06-15 윤종용 고속의 동벡터 복호회로
DE69718687T2 (de) * 1996-05-28 2003-05-22 Matsushita Electric Industrial Co., Ltd. Vorrichtung und verfahren zur bildvorhersage und -codierung/ -decodierung.
JP3263807B2 (ja) * 1996-09-09 2002-03-11 ソニー株式会社 画像符号化装置および画像符号化方法
CN1474604A (zh) 1996-12-06 2004-02-11 ���µ�����ҵ��ʽ���� 图像信号传送、编码和解码方法和装置以及光盘记录和再现方法
DE69736661D1 (de) 1997-01-31 2006-10-26 Victor Company Of Japan Vorrichtung zur Videocodierung und -decodierung mit Bewegungskompensation
US6370276B2 (en) * 1997-04-09 2002-04-09 Matsushita Electric Industrial Co., Ltd. Image predictive decoding method, image predictive decoding apparatus, image predictive coding method, image predictive coding apparatus, and data storage media
US6862320B1 (en) * 1997-10-23 2005-03-01 Mitsubishi Denki Kabushiki Kaisha Image decoder, image encoder, image communication system, and encoded bit stream converter
KR100523908B1 (ko) * 1997-12-12 2006-01-27 주식회사 팬택앤큐리텔 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법
US6512537B1 (en) * 1998-06-03 2003-01-28 Matsushita Electric Industrial Co., Ltd. Motion detecting apparatus, motion detecting method, and storage medium storing motion detecting program for avoiding incorrect detection
US6483874B1 (en) * 1999-01-27 2002-11-19 General Instrument Corporation Efficient motion estimation for an arbitrarily-shaped object
JP4280353B2 (ja) * 1999-03-19 2009-06-17 キヤノン株式会社 符号化装置、画像処理装置、符号化方法、及び記録媒体
US6618439B1 (en) 1999-07-06 2003-09-09 Industrial Technology Research Institute Fast motion-compensated video frame interpolator
EP1120976A4 (en) * 1999-07-29 2006-03-29 Mitsubishi Electric Corp PROCESS FOR MOTION VECTOR ORDER
US6671319B1 (en) * 1999-12-28 2003-12-30 Sony Corporation Methods and apparatus for motion estimation using neighboring macroblocks
US6483876B1 (en) * 1999-12-28 2002-11-19 Sony Corporation Methods and apparatus for reduction of prediction modes in motion estimation
EP1404135B1 (en) * 2000-01-21 2016-12-14 Nokia Technologies Oy A motion estimation method and a system for a video coder
US6647061B1 (en) 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US7116372B2 (en) 2000-10-20 2006-10-03 Matsushita Electric Industrial Co., Ltd. Method and apparatus for deinterlacing
KR100360893B1 (ko) 2001-02-01 2002-11-13 엘지전자 주식회사 영상 움직임 보상 장치 및 방법
FR2824988B1 (fr) * 2001-05-21 2003-08-01 Thomson Licensing Sa Procede et dispositif de codage video utilisant la norme mpeg4
US6975680B2 (en) * 2001-07-12 2005-12-13 Dolby Laboratories, Inc. Macroblock mode decision biasing for video compression systems
US6980596B2 (en) * 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
US20030202603A1 (en) * 2002-04-12 2003-10-30 William Chen Method and apparatus for fast inverse motion compensation using factorization and integer approximation
CN1992895B (zh) * 2002-04-19 2010-12-08 松下电器产业株式会社 图像编码方法及图像编码装置
US7813429B2 (en) * 2002-08-13 2010-10-12 Lsi Corporation System and method for segmentation of macroblocks
US7020200B2 (en) * 2002-08-13 2006-03-28 Lsi Logic Corporation System and method for direct motion vector prediction in bi-predictive video frames and fields
US6771210B2 (en) 2002-10-08 2004-08-03 Visteon Global Technologies, Inc. Sensor alignment method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000253407A (ja) * 1999-02-26 2000-09-14 Matsushita Electric Ind Co Ltd 動きベクトル検出方法および画像符号化方法
JP2000308066A (ja) * 1999-04-23 2000-11-02 Toshiba Corp 動画像符号化装置および動画像符号化方法
JP2001251627A (ja) * 2000-03-03 2001-09-14 Matsushita Electric Ind Co Ltd 符号化装置、符号化方法及びプログラムを記録した記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"H.26L test model long term number 6 (TML-6) draft0", VIDEO CODING EXPERTS GROUP (VCEG), 2001, pages 01 - 36, XP002971811, Retrieved from the Internet <URL:http://kbs.cs.tu-berlin.de/stewe/vceg/archive.htm#TML6> [retrieved on 20030801] *
See also references of EP1569460A4 *

Also Published As

Publication number Publication date
AU2003261780B2 (en) 2009-08-13
EP1569460A1 (en) 2005-08-31
CN101827265A (zh) 2010-09-08
TWI331877B (en) 2010-10-11
TWI353182B (en) 2011-11-21
CN101141651B (zh) 2010-11-10
CA2473897C (en) 2012-10-16
US8897367B2 (en) 2014-11-25
US20110286527A1 (en) 2011-11-24
US20160088311A1 (en) 2016-03-24
US20140301472A1 (en) 2014-10-09
US9473786B2 (en) 2016-10-18
EP1909505A2 (en) 2008-04-09
US20150312585A1 (en) 2015-10-29
US20140037009A1 (en) 2014-02-06
EP2249579A2 (en) 2010-11-10
US20160094858A1 (en) 2016-03-31
US8861607B2 (en) 2014-10-14
CN101141651A (zh) 2008-03-12
KR20100007935A (ko) 2010-01-22
US9554148B2 (en) 2017-01-24
EP2249579A3 (en) 2010-12-08
US20170085905A1 (en) 2017-03-23
EP2249579B1 (en) 2015-06-17
EP3349461B1 (en) 2020-02-19
EP1909505B1 (en) 2013-06-19
KR100985366B1 (ko) 2010-10-04
KR20050084750A (ko) 2005-08-29
US9485516B2 (en) 2016-11-01
CN101141650A (zh) 2008-03-12
AU2003261780A1 (en) 2004-06-18
US10057595B2 (en) 2018-08-21
CN1623333A (zh) 2005-06-01
US20140037003A1 (en) 2014-02-06
EP1569460B1 (en) 2013-05-15
TW200715872A (en) 2007-04-16
MXPA04007021A (es) 2004-10-11
US9241171B2 (en) 2016-01-19
MY138540A (en) 2009-06-30
EP2919465A1 (en) 2015-09-16
US20150288968A1 (en) 2015-10-08
EP1909505A3 (en) 2010-07-21
US20160094857A1 (en) 2016-03-31
US9204153B2 (en) 2015-12-01
US9088795B2 (en) 2015-07-21
CA2473897A1 (en) 2004-06-10
TW200417248A (en) 2004-09-01
US8009731B2 (en) 2011-08-30
US8660185B2 (en) 2014-02-25
EP1569460A4 (en) 2007-06-20
EP2919465B1 (en) 2018-03-21
BR0307197A (pt) 2005-08-23
CN100591138C (zh) 2010-02-17
CN100589576C (zh) 2010-02-10
TWI283534B (en) 2007-07-01
CN101827265B (zh) 2012-11-21
ES2788382T3 (es) 2020-10-21
KR100985236B1 (ko) 2010-10-04
TW200723889A (en) 2007-06-16
AU2003261780B8 (en) 2010-03-25
BRPI0307197B1 (pt) 2018-06-19
EP3349461A1 (en) 2018-07-18
US20050062885A1 (en) 2005-03-24

Similar Documents

Publication Publication Date Title
WO2004049726A1 (ja) 動き補償方法、画像符号化方法および画像復号化方法
JP4718578B2 (ja) 画像復号化方法および画像復号化装置
JP2004096705A (ja) 動きベクトル符号化方法および動きベクトル復号化方法
CN101031082B (zh) 移动向量解码方法和移动向量解码装置
JP4495013B2 (ja) 動画符号化装置
JP2004215215A (ja) 動きベクトル検出方法
JP2005142986A (ja) 動画像符号化方法、動画像符号化装置および動画像符号化プログラム
JP4406239B2 (ja) 動き補償方法および動き補償装置
JP2004040512A (ja) 画像符号化方法および画像復号方法
JP4503959B2 (ja) 画像符号化方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

WWE Wipo information: entry into national phase

Ref document number: 1020047009357

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2003811870

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10500575

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2003261780

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: PA/a/2004/007021

Country of ref document: MX

Ref document number: 2473897

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 1604/CHENP/2004

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 20038027283

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 2003811870

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020097024814

Country of ref document: KR