WO2014051081A1 - 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 - Google Patents
動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 Download PDFInfo
- Publication number
- WO2014051081A1 WO2014051081A1 PCT/JP2013/076340 JP2013076340W WO2014051081A1 WO 2014051081 A1 WO2014051081 A1 WO 2014051081A1 JP 2013076340 W JP2013076340 W JP 2013076340W WO 2014051081 A1 WO2014051081 A1 WO 2014051081A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vector
- encoding
- picture
- prediction
- unit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/16—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/521—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/112—Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
Definitions
- the present invention relates to a moving image encoding apparatus and moving image encoding method for encoding a moving image with high efficiency, a moving image decoding apparatus and a moving image decoding method for decoding a moving image encoded with high efficiency, and It is about.
- FIG. 3 is an explanatory diagram showing the frame structure of the progressive format
- FIG. 4 is an explanatory diagram showing the frame structure of the interlace format.
- the acquisition time is different between even lines and odd lines. Specifically, when the difference in capture / display time between frames is “1”, even lines are captured at time ⁇ , and odd lines are captured at time ⁇ + 0.5.
- even lines in a frame in the interlace format are referred to as “top fields”, and odd lines are referred to as “bottom fields”.
- the method of encoding in frame units is a method of encoding a frame in which top and bottom fields are alternately arranged on even / odd lines, respectively, as a coding unit picture.
- the method of encoding in units of fields is a method of encoding by regarding the top field / bottom field as individual pictures.
- the coding efficiency can be improved if both coding methods can be switched adaptively. Can be improved.
- a situation may occur in which the encoding units differ between the current picture that is the encoding target picture and the reference picture.
- a process for matching the format of the reference picture to the format of the current picture is required.
- HEVC High Efficiency Video Coding
- the method for deriving the temporal motion vector in HEVC is as follows.
- motion vector information (reference vector) is also held for each reference picture in order to obtain a temporal prediction vector.
- reference vector When obtaining a temporal prediction vector in an encoding process of a certain block in the current picture, a reference vector at a specific position held in a pair with a reference picture is obtained as a prediction vector according to decoding semantics.
- the reference vector for each reference picture is divided into a lattice shape with blocks of a specific size (reference vector blocks), and is held in a structure of one reference vector for each reference vector block.
- a temporal prediction vector is converted from a reference vector. It is necessary to prepare a special mechanism for deriving. That is, since the encoding of the frame unit and the encoding of the field unit differ in the size of the picture that is the encoding unit and the position of the spatial coordinates, the encoding unit (frame / field of the frame / field) is different between the current picture and the reference picture. When the coding unit is different, a mechanism for aligning the position of the reference vector to be referred to when deriving the temporal prediction vector is required.
- the conventional moving picture coding apparatus does not include a mechanism for aligning the position of a reference vector to be referred to when deriving a temporal prediction vector, both frame-by-frame coding and field-by-field coding are mixed. In this case, there is a problem that cannot be applied to HEVC.
- the present invention has been made in order to solve the above-described problems, and is a moving picture coding apparatus that can be applied to HEVC even when frame-based coding and field-based coding are mixed, It is an object to obtain a moving picture decoding apparatus, a moving picture encoding method, and a moving picture decoding method.
- the moving picture coding apparatus derives a prediction vector from a reference vector held in a reference picture, searches for a motion vector using the prediction vector, and performs coding using the motion vector.
- Predictive image generation means for generating a prediction image by performing motion compensation prediction processing on the target picture, and the prediction image generation means holds the reference picture when the encoding target picture and the reference picture are different in encoding unit
- the prediction vector is derived from the corrected reference vector by correcting the corrected reference vector.
- the reference vector held in the reference picture is corrected, and the prediction vector is derived from the corrected reference vector. Therefore, there is an effect that can be applied to HEVC even when frame-based encoding and field-based encoding are mixed.
- (A) shows the distribution of partitions after division
- (b) is an explanatory diagram showing a situation in which a coding mode m (B n ) is assigned by hierarchical division in a quadtree graph.
- It is a flowchart which shows the processing content (moving image decoding method) of the moving image decoding apparatus by Embodiment 1 of this invention.
- It is explanatory drawing which shows the data structure of a reference vector map. It is explanatory drawing regarding the derivation
- FIG. 1 is a block diagram showing a moving picture coding apparatus according to Embodiment 1 of the present invention.
- the encoding control unit 1 selects a frame unit or a field unit as an encoding unit of the frame, and sets encoding unit information indicating the encoding unit as a frame. / The process which outputs to the field switching part 2, the motion compensation prediction part 6, and the variable length encoding part 15 is implemented.
- the encoding control unit 1 determines a coding block size and performs a process of determining a coding mode having the highest coding efficiency for the block to be coded output from the block dividing unit 3. In addition, when the coding mode with the highest coding efficiency is the intra coding mode, the coding control unit 1 sets the intra prediction parameter used when performing the intra prediction process on the current block in the intra coding mode. When the coding mode having the highest coding efficiency is determined to be the inter coding mode, the inter prediction parameter used when performing the inter prediction process for the current block in the inter coding mode is executed. To do.
- the encoding control unit 1 performs a process of determining a prediction difference encoding parameter to be given to the transform / quantization unit 8 and the inverse quantization / inverse transform unit 9. Note that the encoding control unit 1 constitutes an encoding unit selection unit.
- a current picture having a size of a coding unit indicated by the coding unit information output from the coding control unit 1 from each frame in the input image A process of generating an encoding target picture is performed. For example, if the encoding unit indicated by the encoding unit information output from the encoding control unit 1 is “frame unit”, each frame is divided into block dividing units without converting the format of each frame in the input image. 3 is output. On the other hand, if the coding unit indicated by the coding unit information is “field unit”, a picture having the size of the field unit is generated by changing the arrangement of each pixel constituting the input image, and the picture Is output to the block dividing unit 3.
- the frames constituting the input image are sequentially input, but it is also assumed that the fields constituting the input image are sequentially input. .
- the encoding unit indicated by the encoding unit information output from the encoding control unit 1 is “field unit”, without converting the format of each field in the input image, Each field is output to the block division unit 3.
- the coding unit indicated by the coding unit information is “frame unit”, a picture having a size in frame unit is generated by changing the arrangement of each pixel constituting the input image, and the picture Is output to the block dividing unit 3.
- the frame / field switching unit 2 constitutes an encoding target picture generating unit.
- the block dividing unit 3 divides the current picture generated by the frame / field switching unit 2 into blocks of the encoding block size determined by the encoding control unit 1 (blocks of prediction processing units). A process of outputting a certain encoding target block to the changeover switch 4 and the subtraction unit 7 is performed.
- the block dividing unit 3 constitutes block dividing means.
- the changeover switch 4 outputs the block to be coded output from the block dividing unit 3 to the intra prediction unit 5, and the coding control unit
- the coding mode determined by 1 is the inter coding mode
- a process of outputting the coding target block output from the block dividing unit 3 to the motion compensation prediction unit 6 is performed.
- the intra prediction unit 5 refers to the locally decoded image stored in the intra prediction memory 11 and uses the intra prediction parameter determined by the encoding control unit 1 to output the encoding target block output from the changeover switch 4.
- the intra-prediction process is performed to generate an intra-predicted image.
- the motion compensated prediction unit 6 searches for a motion vector by comparing the encoding target block output from the changeover switch 4 with one or more local decoded images stored in the motion compensated prediction frame memory 13, Using the inter prediction parameters determined by the encoding control unit 1, an inter prediction process (motion compensation prediction process) is performed on the encoding target block to generate an inter prediction image. However, when searching for a motion vector, the motion compensated prediction unit 6 derives a prediction vector from a reference vector stored in the reference vector memory 14 (a reference vector held in a reference picture), and uses the prediction vector.
- the motion vector is searched (details will be described later), but if the encoding unit of the current picture and the reference picture generated by the frame / field switching unit 2 is different, the reference vector held in the reference picture is corrected. Then, a prediction vector is derived from the corrected reference vector.
- the changeover switch 4, the motion compensation prediction unit 6, the motion compensation prediction frame memory 13, and the reference vector memory 14 constitute a predicted image generation unit.
- the subtraction unit 7 subtracts the intra prediction image generated by the intra prediction unit 5 or the inter prediction image generated by the motion compensation prediction unit 6 from the encoding target block output from the block division unit 3, A process of outputting a prediction difference signal (difference image) as a subtraction result to the transform / quantization unit 8 is performed.
- the transform / quantization unit 8 refers to the prediction difference encoding parameter determined by the encoding control unit 1 and performs orthogonal transform processing (for example, DCT (discrete cosine transform)) on the prediction difference signal output from the subtraction unit 7.
- orthogonal transform processing for example, DCT (discrete cosine transform)
- the inverse quantization / inverse transform unit 9 refers to the prediction difference encoding parameter determined by the encoding control unit 1 and inversely quantizes the compressed data output from the transform / quantization unit 8, and the prediction difference With reference to the encoding parameter, inverse orthogonal transform processing is performed on the transform coefficient, which is compressed data after inverse quantization, and a local decoded prediction difference signal corresponding to the prediction difference signal output from the subtraction unit 7 is calculated. Implement the process.
- the addition unit 10 includes a local decoded prediction difference signal calculated by the inverse quantization / inverse conversion unit 9, an intra prediction image generated by the intra prediction unit 5, or an inter prediction image generated by the motion compensation prediction unit 6. And a process of calculating a locally decoded image corresponding to the encoding target block output from the block dividing unit 3 is performed.
- the intra prediction memory 11 is a recording medium that stores the locally decoded image calculated by the adding unit 10.
- the loop filter unit 12 performs a predetermined filtering process on the local decoded image calculated by the adding unit 10 and performs a process of outputting the local decoded image after the filtering process.
- the motion compensated prediction frame memory 13 is a recording medium that stores a locally decoded image after filtering processing.
- the reference vector memory 14 is a recording medium that stores a reference vector used for deriving a temporal prediction vector when the next picture is encoded.
- variable length encoding unit 15 outputs the compressed data output from the transform / quantization unit 8 and the output signal of the encoding control unit 1 (encoding unit information, encoding mode, intra prediction parameter or inter prediction parameter, prediction difference code). Encoding parameter) and a difference value between the motion vector output from the motion compensated prediction unit 6 and the prediction vector (when the encoding mode is the inter encoding mode) and variable length encoding to generate a bitstream carry out.
- the variable length encoding unit 15 constitutes variable length encoding means.
- a coding control unit 1 a frame / field switching unit 2, a block division unit 3, a changeover switch 4, an intra prediction unit 5, a motion compensation prediction unit 6, and subtraction, which are components of the moving image coding apparatus.
- each of the units 15 is configured by dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, etc.), but the moving image encoding device is configured by a computer. May be.
- FIG. 5 is a flowchart showing the processing contents (moving image coding method) of the moving image coding apparatus according to Embodiment 1 of the present invention.
- the variable length decoding unit 21 compresses compressed data, coding unit information, coding mode, intra prediction parameters (in which the coding mode is the intra coding mode) from the bit stream generated by the moving picture coding apparatus in FIG. If present), inter prediction parameters (when the coding mode is the inter coding mode), prediction difference coding parameters and a difference value between the motion vector and the prediction vector (when the coding mode is the inter coding mode).
- a variable length decoding process is performed.
- the variable length decoding unit 21 constitutes variable length decoding means.
- the changeover switch 22 outputs the intra prediction parameter variable length decoded by the variable length decoding unit 21 to the intra prediction unit 23 if the encoding mode variable length decoded by the variable length decoding unit 21 is the intra coding mode. If the coding mode that has been variable-length decoded by the variable-length decoding unit 21 is the inter-coding mode, the motion compensation unit 24 uses the inter-prediction parameter, the difference value, and the coding unit information that have been variable-length decoded by the variable-length decoding unit 21. Execute the process to output to.
- the intra prediction unit 23 performs an intra prediction process on the decoding target block using the intra prediction parameter output from the changeover switch 22 while referring to the decoded image stored in the intra prediction memory 27, and performs the intra prediction image. The process to generate is performed.
- the motion compensation unit 24 derives a prediction vector from the reference vector (reference vector held in the reference picture) stored in the reference vector memory 30, and adds the prediction vector and the difference value output from the changeover switch 22 Decoding a motion vector, and using the motion vector and the inter prediction parameter output from the changeover switch 22, an inter prediction process (motion compensation prediction process) is performed on the decoding target block to generate an inter prediction image. carry out.
- the motion compensation unit 24 recognizes the decoding unit of the current picture (decoding target picture) with reference to the coding unit information output from the changeover switch 22, and if the decoding unit of the current picture differs from that of the reference picture, The reference vector held in the reference picture is corrected, and a prediction vector is derived from the corrected reference vector.
- the changeover switch 22, the motion compensation unit 24, the motion compensation prediction frame memory 29, and the reference vector memory 30 constitute a predicted image generation unit.
- the inverse quantization / inverse transform unit 25 refers to the prediction difference encoding parameter variable length decoded by the variable length decoding unit 21 and inversely quantizes the compressed data variable length decoded by the variable length decoding unit 21.
- a decoding prediction corresponding to the prediction difference signal output from the subtraction unit 7 in FIG. 1 is performed by referring to the prediction difference encoding parameter and performing an inverse orthogonal transform process on the transform coefficient which is the compressed data after the inverse quantization. Processing for calculating a difference signal (difference image before compression) is performed.
- the inverse quantization / inverse transform unit 25 constitutes a difference image generation unit.
- the addition unit 26 adds the decoded prediction difference signal calculated by the inverse quantization / inverse conversion unit 25 and the intra prediction image generated by the intra prediction unit 23 or the inter prediction image generated by the motion compensation unit 24. And the process which calculates the decoding image (image of a decoding object block) corresponded to the encoding object block output from the block division part 3 of FIG. 1 is implemented.
- the adding unit 26 constitutes a decoded image generating unit.
- the intra prediction memory 27 is a recording medium that stores the decoded image calculated by the adding unit 26.
- the loop filter unit 28 performs a predetermined filtering process on the decoded image calculated by the adding unit 26 and performs a process of outputting the decoded image after the filtering process.
- the motion compensated prediction frame memory 29 is a recording medium that stores the decoded image after the filtering process.
- the reference vector memory 30 is a recording medium that stores a reference vector used for deriving a temporal prediction vector when the next picture is decoded.
- the memory 27, the loop filter unit 28, the motion compensation prediction frame memory 29, and the reference vector memory 30 are each configured by dedicated hardware (for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, or the like).
- the moving picture decoding apparatus may be configured by a computer.
- FIG. 8 is a flowchart showing the processing contents (moving image decoding method) of the moving image decoding apparatus according to Embodiment 1 of the present invention.
- each frame image of a video is used as an input image, motion compensation prediction is performed between adjacent frames, and the obtained prediction difference signal is subjected to compression processing by orthogonal transformation / quantization, and then A moving picture coding apparatus that performs variable length coding to generate a bit stream and a moving picture decoding apparatus that decodes a bit stream output from the moving picture coding apparatus will be described.
- the video encoding apparatus in FIG. 1 performs adaptive intra-picture and inter-picture encoding by dividing a video signal into blocks of various sizes in response to local changes in the spatial and temporal directions of the video signal. It is characterized by that.
- a video signal has a characteristic that the complexity of the signal changes locally in space and time.
- a picture with uniform signal characteristics in a relatively wide image area such as the sky or a wall, or a small picture such as a picture containing a person or a fine texture.
- a pattern having a complicated texture pattern in the region may be mixed.
- the encoding process generates a prediction difference difference signal with small signal power and entropy by temporal and spatial prediction, and reduces the overall code amount. If it can be applied uniformly, the code amount of the parameter can be reduced. On the other hand, if the same prediction parameter is applied to a large image region with respect to an image signal pattern having a large temporal and spatial change, the number of prediction differential signals increases because prediction errors increase. .
- the block size for performing the prediction process by applying the same prediction parameter is reduced, the amount of parameter data used for prediction is increased, and the power and entropy of the prediction difference signal are increased. It is desirable to reduce In the first embodiment, in order to perform coding adapted to the general characteristics of such a video signal, first, prediction processing or the like is started from a predetermined maximum block size, and the video signal region is divided hierarchically. In addition, the prediction process and the encoding process of the prediction difference are adapted for each divided area.
- the video signal format to be processed by the moving image encoding apparatus of FIG. 1 is a color video signal in an arbitrary color space such as a YUV signal composed of a luminance signal and two color difference signals, or an RGB signal output from a digital image sensor.
- the video frame is an arbitrary video signal including a horizontal / vertical two-dimensional digital sample (pixel) sequence, such as a monochrome image signal or an infrared image signal.
- the gradation of each pixel may be 8 bits, or a gradation such as 10 bits or 12 bits.
- the video signal of the input image is a YUV signal
- the two color difference components U and V are subsampled with respect to the luminance component Y 4: 2: 0.
- the case of handling format signals will be described.
- one piece of image data serving as a unit for encoding such as a frame for encoding a video signal in units of frames and a field for encoding in units of fields is referred to as a “picture”.
- the video signal of the input image is a video signal obtained by interlaced scanning, and each frame of the signal has an even number of top fields and bottom fields.
- a case where still images are alternately arranged on / odd lines (or odd / even lines) will be described.
- a format in which the top field and the bottom field are arranged on even / odd lines is called a “frame format”.
- the input data may be a moving image signal that is sequentially scanned (progressive scan).
- a moving image signal in which a top field and a bottom field are alternately arranged on even / odd lines (or odd / even lines) in each frame may be used.
- a moving image signal in which the top field and the bottom field are alternately input as individual image data may be used.
- the encoding control unit 1 selects a frame unit or a field unit as an encoding unit of the frame, and an encoding unit indicating the encoding unit.
- the information is output to the frame / field switching unit 2, the motion compensation prediction unit 6 and the variable length coding unit 15.
- the same coding unit may be uniformly set for all frames, or encoding of each coding unit is performed by performing a preliminary coding process or the like. The efficiency may be estimated, and the coding unit with the better coding efficiency may be selected. Further, some characteristics of the input image, such as the amount of motion in the entire screen, may be quantified as parameters, and the encoding unit may be selected according to the parameters.
- the frame / field switching unit 2 When the frame / field switching unit 2 receives the coding unit information from the coding control unit 1, the frame / field switching unit 2 rearranges the pixels of the current frame according to the coding unit information, thereby encoding the coding unit information.
- a current picture (encoding target picture) having a unit size is generated (step ST1 in FIG. 5). That is, if the encoding unit indicated by the encoding unit information output from the encoding control unit 1 is “frame unit”, the frame / field switching unit 2, as shown in FIG. A picture in which bottom fields are arranged on even / odd lines is generated as a coding unit.
- the coding unit indicated by the coding unit information is “field unit”, the top field and the bottom field are generated as different pictures as shown in FIG.
- the encoding unit is “frame unit”, the current picture is encoded as one picture. If the encoding unit is “field unit”, the current picture is sequentially encoded as two pictures.
- the coding unit information is output to the variable length coding unit 15 and multiplexed into the bit stream. The processing of steps ST2 to ST14 described below is performed for each picture.
- the encoding control unit 1 determines the size of the maximum encoding block used for encoding the current picture and the upper limit of the number of hierarchies for dividing the maximum encoding block into hierarchies (step ST2).
- the size of the maximum coding block for example, the same size may be determined for all the pictures according to the resolution of the video signal of the input image, or the local motion of the video signal of the input image
- the size difference may be quantified as a parameter, and a small size may be determined for a picture with high motion, while a large size may be determined for a picture with little motion.
- the block division unit 3 divides the current picture by the maximum coding block size determined by the coding control unit 1 and is determined by the coding control unit 1.
- the divided current picture is hierarchically divided until the upper limit of the number of division hierarchies is reached, and each divided picture is output to the changeover switch 4 and the subtracting unit 7 as an encoding target block.
- FIG. 6 is an explanatory diagram illustrating an example in which the maximum coding block is hierarchically divided into a plurality of coding target blocks.
- the maximum coding block is a coding target block whose luminance component indicated as “0th layer” has a size of (L 0 , M 0 ).
- the encoding target block is obtained by hierarchically dividing the maximum encoding block as a starting point to a predetermined depth separately defined by a quadtree structure.
- the encoding target block is an image area of size (L n , M n ).
- the size of all color components is (L n , M n ), but 4: 2. : 0 when working with formatting, coding block size of the corresponding color difference component becomes (L n / 2, M n / 2).
- the encoding modes selectable by the encoding target block B n as represented by m (B n).
- the encoding mode m (B n ) may be configured to use an individual mode for each color component, or common to all color components. It may be configured to use a mode.
- description will be made assuming that it indicates a coding mode for a luminance component of a coding block of a YUV signal and 4: 2: 0 format.
- the encoding mode m (B n ) includes one or more intra encoding modes (collectively referred to as “INTRA”), one or more inter encoding modes (collectively referred to as “INTER”),
- the encoding control unit 1 selects an encoding mode having the highest encoding efficiency for the encoding target block Bn from all the encoding modes available for the picture or a subset thereof. select.
- the encoding target block B n is divided into one or a plurality of prediction processing units (partitions) by the block dividing unit 3 as shown in FIG.
- a partition belonging to the encoding target block B n is denoted as P i n (i is a partition number in the n-th layer). How the partitioning of the encoding target block B n is performed is included as information in the encoding mode m (B n ). All partitions P i n are subjected to prediction processing according to the encoding mode m (B n ), but individual prediction parameters can be selected for each partition P i n .
- the encoding control unit 1 generates a block division state as illustrated in FIG. 7 for the maximum encoding block, and identifies the encoding target block.
- the shaded portion in FIG. 7A shows the distribution of the partitions after the division
- FIG. 7B shows the situation in which the encoding mode m (B n ) is assigned by the hierarchical division in a quadtree graph. Yes. Nodes surrounded by ⁇ in FIG. 7B are nodes (encoding target blocks) to which the encoding mode m (B n ) is assigned.
- the changeover switch 4 is output from the block dividing unit 3 when the coding mode m (B n ) determined by the coding control unit 1 is an intra coding mode (when m (B n ) ⁇ INTRA).
- the encoding target block Bn is output to the intra prediction unit 5 (step ST4).
- the encoding mode m (B n ) determined by the encoding control unit 1 is the inter encoding mode (when m (B n ) ⁇ INTER)
- the block Bn is output to the motion compensation prediction unit 6 (step ST4).
- the intra prediction unit 5 is an encoding mode m (B n ) determined by the encoding control unit 1 (in the case of m (B n ) ⁇ INTRA), and the encoding target block is switched from the changeover switch 4.
- each intra-coding block B n in the encoding target block B n is referred to by using the intra prediction parameter determined by the encoding control unit 1 while referring to the local decoded image stored in the intra prediction memory 11. and implementing intra prediction processing for the partition P i n, generates an intra prediction image P INTRAi n (step ST5).
- intra prediction parameters used for generating the intra prediction image P INTRAi n from the coding controller 1
- the data is output to the variable length encoding unit 15 and multiplexed into the bit stream.
- the motion-compensated prediction unit 6 is the encoding mode m (B n ) determined by the encoding control unit 1 is an inter-coding mode (when m (B n ) ⁇ INTER), and the object to be encoded is selected from the changeover switch 4.
- receiving the block B n it searches a motion vector by comparing each partition P i n and the local decoded image after the filtering process stored in the motion compensated prediction frame memory 13 of the encoding target block B n, Using the motion vector and the inter prediction parameter determined by the encoding control unit 1, an inter prediction process is performed on each partition P i n in the encoding target block B n to obtain an inter predicted image P INTER i n . Generate (step ST6).
- the motion compensation prediction unit 6 derives a prediction vector from a reference vector (a reference vector held in a reference picture) stored in the reference vector memory 14 as will be described in detail later.
- the motion vector is searched using the prediction vector.
- the reference vector held in the reference picture is corrected to correct the reference vector.
- a prediction vector is derived from the reference vector.
- inter prediction parameters used for generating the inter prediction image P INTERi n from the coding controller 1
- the data is output to the variable length encoding unit 15 and multiplexed into the bit stream.
- the difference value between the motion vector searched by the motion compensation prediction unit 6 and the prediction vector is also output to the variable length encoding unit 15 and multiplexed into the bit stream. Details of processing contents of the motion compensation prediction unit 6 will be described later.
- Subtraction unit 7 receives the current block B n from the block dividing unit 3, from its partition P i n in the encoding target block B n, the intra prediction image P INTRAi n generated by the intra prediction unit 5, or subtracts the inter prediction image P INTERi n generated by the motion compensation prediction unit 6, and outputs the prediction difference signal e i n a subtraction result to the transform and quantization unit 8 (step ST7).
- the transform / quantization unit 8 Upon receiving the prediction difference signal e i n from the subtraction unit 7, the transform / quantization unit 8 refers to the prediction difference encoding parameter determined by the encoding control unit 1 and is orthogonal to the prediction difference signal e i n . Transformation processing (for example, DCT (discrete cosine transformation) or orthogonal transformation processing such as KL transformation in which a base design is made in advance for a specific learning sequence) is performed to calculate a transformation coefficient. In addition, the transform / quantization unit 8 refers to the prediction difference encoding parameter, quantizes the transform coefficient, and performs inverse quantization / inverse transform unit 9 and variable length on the compressed data that is the transform coefficient after quantization. It outputs to the encoding part 15 (step ST8).
- the inverse quantization / inverse transform unit 9 refers to the prediction difference encoding parameter determined by the encoding control unit 1 and dequantizes the compressed data. . Further, the inverse quantization / inverse transform unit 9 refers to the prediction differential encoding parameter, and performs inverse orthogonal transform processing (for example, inverse DCT, inverse KL transform) on the transform coefficient that is the compressed data after inverse quantization. And a local decoded prediction difference signal e i n hat corresponding to the prediction difference signal e i n output from the subtraction unit 7 is calculated and output to the addition unit 10 (step ST9).
- inverse orthogonal transform processing for example, inverse DCT, inverse KL transform
- the adding unit 10 Upon receiving the local decoded prediction difference signal e i n hat from the inverse quantization / inverse transform unit 9, the adding unit 10 receives the local decoded prediction difference signal e i n hat and the intra prediction image generated by the intra prediction unit 5. P INTRAi n or the inter prediction image P INTERi n generated by the motion compensated prediction unit 6 is added and output from the block dividing unit 3 as a local decoded partition image or a collection of the local decoded partition images. A local decoded image corresponding to the encoding target block Bn is calculated (step ST10). The adding unit 10 outputs the locally decoded image to the loop filter unit 12 and stores the locally decoded image in the intra prediction memory 11. This locally decoded image becomes an image signal for subsequent intra prediction.
- the loop filter unit 12 When receiving the local decoded image from the adding unit 10, the loop filter unit 12 performs a predetermined filtering process on the local decoded image, and stores the local decoded image after the filtering process in the motion compensated prediction frame memory 13. (Step ST11).
- the picture data stored in the motion compensated prediction frame memory 13 has a data format that allows not only the reference in the frame format but also the reference in the field-specific format. For example, it may be stored in a frame format in which the top field and the bottom field are alternately arranged on even / odd lines, or the top field and the bottom field are different picture data. You may store in the data format which can always refer the information which shows which field is. Moreover, you may hold
- Each storage format has a mechanism that can be referred to in any of the frame format and the field-specific format, including means for appropriately converting the format at the time of reference.
- the filtering process by the loop filter unit 12 may be performed in the maximum encoded block of the input local decoded image or in units of individual encoded blocks, or the local decoded image of the encoded block for one picture is obtained. It may be performed for one picture after input.
- Examples of the predetermined filtering process include a process of filtering the block boundary so that the discontinuity (block noise) of the encoded block boundary is not conspicuous, and the local decoded image so as to be close to the video signal of the original input image.
- filter processing that compensates for distortion may be used.
- the processing of steps ST4 to ST11 is repeatedly performed until the processing for all the encoding target blocks Bn divided hierarchically is completed. When the processing for all the encoding target blocks Bn is completed, the processing of step ST13 is performed. (Step ST12).
- the variable-length encoding unit 15 outputs the compressed data output from the transform / quantization unit 8 and the output signal of the encoding control unit 1 (encoding unit information, encoding mode m (B n ), prediction difference encoding parameter , Intra prediction parameters (when the coding mode is the intra coding mode), inter prediction parameters (when the coding mode is the inter coding mode), the motion vector output from the motion compensation prediction unit 6 and the prediction A difference value from the vector (when the encoding mode is the inter encoding mode) is variable-length encoded, and a bit stream indicating the encoding result is generated (step ST13).
- steps ST2 to ST13 is performed for all pictures constituting the current frame (one picture if the current frame processing unit is a frame unit, and two pictures if the current frame processing unit is a field unit). The process is repeated until completion, and when the process for all the pictures constituting the current frame is completed, the process for one frame of the input image is terminated.
- the motion-compensated prediction unit 6 uses the inter prediction output from the coding control unit 1 when the coding control unit 1 selects the inter coding mode as the coding mode (when m (B n ) ⁇ INTER). based on the parameters, to implement inter-frame motion estimation processing for each partition P i n, estimating a motion vector for P i n in each partition.
- the motion compensation prediction unit 6 When estimating the motion vector, the motion compensation prediction unit 6 generates an inter prediction image using the motion vector and the reference frame in the motion compensation prediction frame memory 13. There may be a plurality of reference frame candidates. When there are one or more reference frames, the reference frame is specified according to the reference frame index information included in the inter prediction parameter.
- the reference frame When the current picture is encoded in units of frames, the reference frame is referred to as a frame format. If the current picture is field-based encoding, the reference frame is referred to as a field-specific format. When the current picture is field-based encoding and the reference frame is referenced as a field-specific format, either the top field or the bottom field is referenced in the reference frame according to the field index information included in the inter prediction parameter. Select what to do.
- the inter prediction image generated by the motion compensation prediction unit 6 is output to the subtraction unit 7, but the inter prediction parameters used for generating the inter prediction image generate exactly the same inter prediction image on the video decoding device side. Therefore, it is output to the variable length coding unit 15 and multiplexed into the bit stream by the variable length coding unit 15.
- the motion vector of each partition P i n obtained by the inter-frame motion estimation process is used in the motion vector prediction process (described later) of the picture, and is stored in the reference vector memory 14 in a data structure called a reference vector map. Stored. The specification of the reference vector map will be described later.
- the motion compensation prediction unit 6 performs a motion vector prediction process to be described later using the fact that there is a correlation of motion vector information between adjacent frames.
- the motion vector search process can be used for lightening and high accuracy. It is possible to reduce the amount of information of motion vector information by obtaining a difference value (prediction difference motion vector information) between a motion vector and a prediction vector obtained as a search result and encoding the difference value as an inter prediction parameter. it can.
- prediction vectors There are two types of prediction vectors: spatial prediction vectors and temporal prediction vectors.
- spatial prediction vector a motion vector at a predetermined position near the space of the partition to be predicted is used.
- a plurality of candidates may exist in the spatial prediction vector.
- the temporal prediction vector is stored in the reference vector memory 14, and the reference vector in the reference vector map that structurally represents the motion vector of each screen area of each reference picture is located at the position of the target partition of the current picture. The corresponding reference vector is used.
- a reference frame that is an original image for generating pixel values for motion compensated prediction and a reference vector map for deriving a temporal prediction vector may be different frames, and a reference frame for deriving a temporal prediction vector is an interframe. Selection is made according to the reference vector map index included in the prediction parameter.
- a reference frame for pixel reference is referred to as a “pixel reference frame”
- a reference frame for reference vector reference is referred to as a “vector reference frame”.
- the temporal prediction vector there may be a plurality of candidates derived by a predetermined temporal prediction vector derivation algorithm.
- One prediction vector is selected according to the prediction vector index included in the inter prediction parameter from a plurality of candidates including the spatial prediction vector candidate and the temporal prediction vector candidate, and the prediction vector is selected from the encoding target partition. Let it be a prediction vector.
- the reference vector map has a structure in which a picture to be encoded is divided into blocks of a specific size called a reference vector block in a grid pattern, and motion vectors corresponding to each reference vector block are stored in raster order (FIG. 9). See).
- the motion vector has been one by one defined for each partition motion compensation prediction is selected P i n, the partition P i n that spatially corresponds to a reference vector block, reference vector block size And the shape may be different.
- a vector calculated by a specific means is stored in the reference vector block corresponding to the position of the intra-frame prediction partition.
- Examples of the calculation method include a method of storing a fixed value and a method of copying and storing a vector value of an adjacent reference vector block.
- the coordinates on the reference vector map corresponding to the coordinates (x, y) on the picture are represented by (R 1 (x), R 2 (x)).
- the frame has a single reference vector map, and the vector reference frame is encoded on a field basis.
- a reference vector map is provided for a total of two surfaces, one for each field. That is, if the current picture is encoded in units of frames, a one-side reference vector map is created, and if it is encoded in units of fields, a one-side reference vector map is created for each field. To do.
- the size of the reference vector block when creating the reference vector map is fixed regardless of the encoding in units of frames / encoding in units of fields. Therefore, the size of the one-side reference vector map differs between the case of encoding in frame units and the case of encoding in field units.
- FIG. 10 is an explanatory diagram relating to temporal prediction vector derivation processing when field-based encoding and frame-based encoding are mixed.
- C candidates for the reference destination coordinates of the temporal prediction vector of the encoding target partition in the current picture are represented by coordinates (x 1 , y 1 ), ( x 2 , y 2 ),..., (x c , y c ), (R 1 (x 1 ), R 2 (y 1 ) of the reference vector map of the vector reference frame in the current picture. )), (R 1 (x 2 ), R 2 (y 2 )),..., (R 1 (x c ), R 2 (y c )) are used as temporal prediction vector candidates.
- R 1 (x 2 ), R 2 (y 2 ) are used as temporal prediction vector candidates.
- [Pattern (2)] A pattern in which the current picture is field-based encoding and the vector reference frame is field-based encoding (see FIG. 10B)
- C candidates for the reference destination coordinates of the temporal prediction vector of the encoding target partition in the current picture are represented by coordinates (x 1 , y 1 ), ( x 2 , y 2 ),..., (x c , y c ), the reference vector map of the same field as the current picture among the two reference vector maps of the vector reference frame in the current picture (R 1 (x 1 ), R 2 (y 1 )), (reference vector map of top field if current picture is top field, reference vector map of bottom field if current picture is bottom field), (R 1 (x 2), R 2 (y 2)), ⁇ , (R 1 (x c), R 2 (y c Reference vector stored and the temporal prediction vector candidates).
- the stored reference vector is set as a temporal prediction vector candidate. It should be noted that the same field is always used or the field indicated by the temporal prediction vector reference field index is designated in accordance with the coding parameter output from the coding control unit 1 in sequence units, picture units, slice units, or the like. You may make it switchable.
- [Pattern (3)] A pattern in which the current picture is encoded in units of frames and the vector reference frame is encoded in units of fields (see FIG. 10C)
- C candidates for the reference destination coordinates of the temporal prediction vector of the encoding target partition in the current picture are represented by coordinates (x 1 , y 1 ), ( x 2 , y 2 ),..., (x c , y c ), it is output from the encoding control unit 1 out of the two reference vector maps of the vector reference frame in the current picture.
- the motion compensation prediction unit 6 calculates a vector obtained by scaling the obtained C temporal prediction vector candidates by the difference in picture numbers between the current picture and the vector reference frame. Let it be a final temporal prediction vector candidate.
- the inter prediction parameters used for generating the inter prediction image include the following information and the like. However, in order to generate the same inter prediction image on the moving image decoding apparatus side, the information and the like have variable lengths.
- the data is multiplexed into the bit stream by the encoding unit 15.
- Mode information describing partition division in the coding block B n (2) Prediction difference motion vector (difference value) of each partition (3)
- Vector reference frame indication index information that specifies the vector reference frame that is the reference destination of the temporal prediction vector
- Reference field indication index information A structure in which frames / fields are switched and encoded in units of frames, and when a vector reference frame is encoded in units of fields, reference to any field of the vector reference frames
- Vector reference field indication index information indicating whether to use a vector map (7)
- index information indicating which motion vector prediction value is selected and used
- Index information indicating whether to select and use a filter
- the motion vector of the partition can indicate a plurality of pixel accuracy (half pixel, 1/4 pixel, 1/8 pixel, etc.) Selection information indicating whether to use pixel accuracy
- (5) and (6) are both 1-bit signals that specify field parity (top field / bottom field).
- the following two patterns can be considered as means for configuring these signals.
- [Pattern 1] Fix the correspondence between the specified field parity and signal value. That is, for example, “0” is fixedly transmitted when the top field is specified, and “1” is fixedly transmitted when the bottom field is specified.
- [Pattern 2] The correspondence between the designated field parity and the signal value is changed according to the field parity to be encoded. For example, “0” is transmitted when the field parity to be encoded and the designated field parity are equal, and “1” is transmitted when they are different.
- field indication index information Since many “0” appear as signal values of, field indication index information can be compressed with high efficiency by arithmetic coding.
- variable length decoding unit 21 receives the bit stream generated by the moving picture encoding apparatus in FIG. 1, the variable length decoding unit 21 performs variable length decoding processing on the bit stream (step ST21 in FIG. 8), and a picture of one frame or more.
- the frame size information is decoded in sequence units or picture units. That is, the variable length decoding unit 21 decodes the encoding unit information (information indicating whether the encoding is performed in frame units or field units) multiplexed in the bitstream, and the encoding is performed. Based on the unit information, the current picture coding unit (decoding unit) is determined to be frame-based decoding or field-based decoding (step ST22).
- variable length decoding unit 21 determines the maximum encoding block size and the upper limit of the number of division layers in the same procedure as the moving picture encoding apparatus in FIG. 1 (step ST23). For example, when the maximum encoding block size is determined according to the resolution of the video signal, the maximum encoding block size is determined based on the decoded frame size information in the same procedure as the moving image encoding apparatus. When the maximum encoding block size and the upper limit of the number of division layers are multiplexed on the bit stream on the moving image encoding device side, values decoded from the bit stream are used. As shown in FIG.
- the moving image encoding apparatus is configured to encode an encoding mode or a conversion / conversion unit for each encoding target block obtained by hierarchically dividing a maximum encoding block into a plurality of encoding target blocks starting from a starting point.
- the compressed data obtained by quantization is multiplexed into a bit stream.
- the variable length decoding unit 21 that has received the bit stream decodes the division state of the maximum coding block as shown in FIG. 6 included in the coding mode, for each determined maximum coding block. Based on the decoded division state, a decoding target block (a block corresponding to the “encoding target block” of the moving image encoding apparatus in FIG. 1) is identified hierarchically (step ST24).
- the variable length decoding unit 21 decodes the encoding mode assigned to the decoding target block corresponding to the encoding target block. Based on the information included in the decoded encoding mode, the decoding target block corresponding to the encoding target block is further divided into one or more prediction processing units, and the prediction parameters assigned to the prediction processing units are decoded ( Step ST25).
- the encoding mode assigned to the decoding target block (encoding target block) is the intra encoding mode
- the variable length decoding unit 21 is included in the decoding target block (encoding target block) and performs prediction processing.
- the intra prediction parameter is decoded for each of one or more partitions as a unit.
- variable length decoding unit 21 divides the decoding target block (encoding target block) into one or a plurality of partitions that are conversion processing units based on the information of the conversion block size included in the prediction differential encoding parameter,
- the compressed data (conversion coefficient after conversion / quantization) is decoded for each partition serving as a conversion processing unit (step ST25).
- variable-length decoded by the variable-length decoding unit 21 is an intra-encoding mode (when m (B n ) ⁇ INTRA)
- the changeover switch 22 The intra prediction parameters subjected to variable length decoding are output to the intra prediction unit 23.
- variable length decoded coding mode m (B n) is if the inter coding mode by the variable length decoding unit 21, variable length decoding by the variable length decoding unit 21
- the inter prediction parameter, the difference value, and the coding unit information thus output are output to the motion compensation unit 24.
- the intra prediction unit 23 is an intra coding mode in which the coding mode m (B n ) variable-length decoded by the variable length decoding unit 21 is m (B n ) ⁇ INTRA, and the intra prediction is performed from the changeover switch 22.
- the intra prediction parameter output from the changeover switch 22 is referred to with reference to the local decoded image stored in the intra prediction memory 27 in the same procedure as the intra prediction unit 54 of FIG. using, by implementing the intra prediction process for each partition P i n the decoding target block B n, it generates an intra prediction image P INTRAi n (step ST27).
- the encoding mode m (B n ) variable-length decoded by the variable-length decoding unit 61 is the inter encoding mode (when m (B n ) ⁇ INTER), and the inter prediction is performed from the changeover switch 22
- the prediction vector is derived from the reference vector (reference vector held in the reference picture) stored in the reference vector memory 30, as will be described in detail later.
- the motion vector is decoded by adding the prediction vector and the difference value output from the changeover switch 22, and the inter prediction process for the decoding target block is performed using the motion vector and the inter prediction parameter output from the changeover switch 22.
- the motion compensation unit 24 refers to the coding unit information output from the changeover switch 22 to recognize the decoding unit of the current picture (decoding target picture), and when the decoding unit of the current picture differs from that of the reference picture, The reference vector held in the reference picture is corrected, and a prediction vector is derived from the corrected reference vector.
- the inverse quantization / inverse conversion unit 25 When receiving the compressed data and the prediction difference encoding parameter from the variable length decoding unit 21, the inverse quantization / inverse conversion unit 25 performs the prediction difference encoding in the same procedure as the inverse quantization / inverse conversion unit 9 of FIG. With reference to the parameters, the compressed data is inversely quantized, and with reference to the prediction differential encoding parameter, the inverse orthogonal transform process is performed on the transform coefficient that is the compressed data after the inverse quantization. The decoded prediction difference signal corresponding to the prediction difference signal output from the subtraction unit 7 is calculated (step ST29).
- Addition unit 26 decodes the prediction difference signal calculated by the inverse quantization and inverse transform unit 25, an intra prediction image P INTRAi n generated by the intra prediction unit 23 or, inter prediction generated by the motion compensation unit 24 by adding the image P INTERi n, as a collection of one or more of the decoded partition image included in the decoding target block, and outputs the decoded image to the loop filter 28, a memory 27 for intra prediction the decoded image (Step ST30). This decoded image becomes an image signal for subsequent intra prediction.
- the loop filter unit 28 performs a predetermined filtering process on the decoded image output from the adding unit 26,
- the decoded image after the filtering process is stored in the motion compensated prediction frame memory 29 (step ST32).
- the filtering process by the loop filter unit 28 may be performed in the maximum decoded block of the input decoded image or in units of individual decoded blocks, or after the local decoded image of the decoded block for one screen is input. One screen may be collectively displayed.
- Examples of the predetermined filtering process include a process of filtering the block boundary so that the discontinuity (block noise) of the encoded block boundary is not noticeable, and a filter process for compensating for the distortion of the decoded image.
- This decoded image becomes a reference image for motion compensation prediction and also becomes a reproduced image.
- the picture data stored in the motion compensated prediction frame memory 29 has a data format that allows not only the reference in the frame format but also the reference in the field-specific format. For example, it may be stored in a frame format in which the top field and the bottom field are alternately arranged on even / odd lines, or the top field and the bottom field are different picture data. You may store in the data format which can always refer the information which shows which field is. Moreover, you may hold
- steps ST23 to ST32 are performed for all pictures constituting the current frame (one picture if the current frame processing unit is a frame unit, and two pictures if the current frame processing unit is a field unit). The process is repeated until completion (step ST33), and when the processes for all the pictures constituting the current frame are completed, the decoding process for one frame of the encoded data multiplexed in the bit stream is terminated.
- the processing content of the motion compensation part 24 is demonstrated concretely.
- a motion vector prediction process is performed on each partition P i n to obtain a prediction vector.
- a candidate is selected and a prediction vector is determined from the prediction vector index based on the prediction vector index information included in the inter prediction parameter decoded by the variable length decoding unit 21, and is included in the inter prediction parameter.
- the motion vector of each partition P i n is decoded by adding the difference value and the prediction vector.
- an image in which the pixel reference frame indicated by the pixel reference frame index information included in the inter prediction parameter is motion-compensated with a motion vector is generated as an inter prediction image.
- the algorithm for deriving the prediction vector is the same as the processing performed by the motion compensated prediction unit 6 of the moving image encoding device in FIG. 1.
- the moving image encoding device and the moving image The same prediction vector candidate is always selected between image decoding apparatuses.
- the pixel reference from the pixel reference frame is changed as appropriate based on the coding unit of the current picture, as in the process performed by the motion compensation prediction unit 6 of the moving picture coding apparatus in FIG.
- processing such as changing the reference position from the reference vector map and the vector value of the reference vector according to the coding unit of the current picture and vector reference frame are performed in exactly the same manner as the processing performed by the motion compensation prediction unit 6 of the moving picture coding apparatus of FIG.
- a reference vector map for the current picture is generated by referring to the current picture coding unit in the same manner as the processing performed by the motion compensation prediction unit 6 of the moving picture coding apparatus in FIG. 30.
- the motion compensation prediction unit 6 corrects the reference vector held in the reference picture.
- the prediction vector is derived from the corrected reference vector, there is an effect that can be applied to HEVC even when encoding in units of frames and encoding in units of fields coexist. That is, even when the current picture and the reference picture have different coding units, an appropriate temporal prediction vector can be derived, so that it is possible to switch between frame-by-frame coding and field-by-field coding for each frame. As a result, the input image can be compressed and encoded with high efficiency.
- Embodiment 2 when the encoding unit of the current picture is field encoding, the reference vector map is configured to have a total of two reference vector maps, one for each field. However, in many image signals, since the top field and the bottom field have similar motion information, the reference vector information stored in the two-side reference vector map has a similar value (redundant information). I guess that. In addition, since one field of interlaced material is an image obtained by reducing the vertical direction of the capture source video, the inter-pixel correlation and the motion information correlation in the vertical direction are generally smaller than those in the horizontal direction. ing. Therefore, it is presumed that the accuracy of the prediction vector is improved by configuring the reference vector map so that the vector information can be stored with higher granularity than in the vertical direction.
- the second embodiment is configured so that the top field and the bottom field share one reference vector map.
- the size of the shared reference vector map is set to the same size as the picture to be frame-encoded, thereby increasing the vertical granularity for storing the reference vectors.
- the reference vector storing means for the reference vector map at the time of field coding in the case of such a configuration will be described below.
- a reference vector map is created for each top field / bottom field.
- a reference vector map having a size equivalent to one frame at the time of frame coding is created for each of the top field and the bottom field. That is, as shown in FIG. 12A, assuming that the reference vector block at the time of frame encoding corresponds to the V ⁇ V pixel block of the picture to be encoded, the reference vector block at the time of field encoding Corresponds to a V ⁇ (V / 2) block.
- V ⁇ (V / 2) block For the calculation of the reference vector stored in each reference vector block, a method similar to the method described in the first embodiment is used.
- each reference vector block after integration is calculated by specific means using the vector value stored in the reference vector block at the same position in the top field / bottom field. As a calculation means, for example, an average value may be used, or a vector having a higher correlation than the vector data stored in the adjacent reference vector block may be selected.
- the reference vector map is configured as described above, there is only one reference vector map per frame regardless of whether the encoding unit is a frame or a field, and the reference vector map is always the same size. Therefore, there is no reference pattern as shown in FIG. 10 (b) or FIG. 10 (d). Accordingly, a vector reference instruction index, which is one of inter prediction parameters, becomes unnecessary.
- the size of the reference vector map is unified in all frames, and the prediction vector reference method when the encoding target picture and the reference picture are different in encoding unit is simplified, An effect of improving the granularity in the vertical direction of reference vector storage can be obtained.
- Embodiment 3 when the picture to be encoded is encoded in units of fields, in addition to the pixel reference frame instruction index information for specifying a pixel reference frame for generating a predicted image as an inter prediction parameter, a pixel Of the pixel reference frames specified by the reference frame instruction index, a field to be a pixel reference destination is specified by transmitting pixel reference field instruction index information specifying which one of the top field and the bottom field is used.
- the first encoded field is F 1
- the second encoded field is F 2 . At this time, it is possible to refer to the field F 1 in the encoding of the field F 2 .
- this parameter transmission means uses the code of the inter prediction parameter to be transmitted. The amount will increase.
- the third embodiment a configuration in which the field F 2 can refer to the field F 1 in the above case will be described.
- the first embodiment Will be changed as follows.
- the moving picture coding apparatus corrects a reference vector held in a reference picture and encodes a prediction vector from the corrected reference vector when the coding units of the current picture and the reference picture are different. Since it is configured to derive, the present invention can be applied to HEVC even when both frame-based encoding and field-based encoding are mixed, and a moving image encoding apparatus that performs moving image encoding with high efficiency. Suitable for use.
- 1 encoding control unit (encoding unit selection unit), 2 frame / field switching unit (encoding target picture generation unit), 3 block division unit (block division unit), 4 changeover switch (predicted image generation unit), 5 intra Prediction unit, 6 motion compensation prediction unit (predicted image generation unit), 7 subtraction unit (image compression unit), 8 transform / quantization unit (image compression unit), 9 inverse quantization / inverse transform unit, 10 addition unit, 11 Intra prediction memory, 12 loop filter section, 13 motion compensated prediction frame memory (predicted image generating means), 14 reference vector memory (predicted image generating means), 15 variable length encoding section (variable length encoding means), 21 variable Long decoding unit (variable length decoding unit), 22 selector switch (predicted image generating unit), 23 intra prediction unit, 24 motion compensation unit (predicted image production) Means), 25 dequantization / inverse transform unit (difference image generation unit), 26 addition unit (decoded image generation unit), 27 intra prediction memory, 28 loop filter unit, 29 motion compensation prediction frame memory (pre
Abstract
Description
動画像を構成する1コマ1コマをフレームと呼称すると、インタレースフォーマットとプログレッシブフォーマットとでは、フレームの構造が異なっている。
ここで、図3はプログレッシブフォーマットのフレーム構造を示す説明図であり、図4はインタレースフォーマットのフレーム構造を示す説明図である。
一方、インタレースフォーマットでは、図4に示すように、偶数ラインと奇数ラインで取得時間が異なる構造となっている。
具体的には、フレーム間のキャプチャ/表示時刻の差が“1”である場合、偶数ラインについては時刻τでキャプチャされており、奇数ラインについては時刻τ+0.5でキャプチャされている。
以下、インタレースフォーマットにおけるフレーム内の偶数ラインを「トップフィールド」と称し、奇数ラインを「ボトムフィールド」と称する。
フレーム単位で符号化する手法は、トップフィールド/ボトムフィールドをそれぞれ偶数/奇数ラインに交互に配置したフレームを符号化単位のピクチャとして符号化する方法である。
フィールド単位で符号化する方法は、トップフィールド/ボトムフィールドを個別のピクチャとみなして符号化する方法である。
ただし、フレーム単位の符号化と、フィールド単位の符号化とを混在させた場合、符号化対象のピクチャであるカレントピクチャと、参照ピクチャの間で符号化単位が異なる状況が発生することがある。
カレントピクチャと参照ピクチャの間で符号化単位が異なる状況が発生する場合、参照ピクチャのフォーマットをカレントピクチャのフォーマットに合わせる処理が必要になる。
時間予測ベクトルは、動き情報の時間方向の相関を利用しており、動きベクトルの情報量を削減する効果がある。
HEVCでは、時間予測ベクトルを求めるために、参照ピクチャ毎に動きベクトル情報(参照ベクトル)も保持している。
カレントピクチャにおける或るブロックの符号化処理において、時間予測ベクトルを求める際には、復号のセマンティクスに応じて、参照ピクチャと組になって保持されている特定位置の参照ベクトルを予測ベクトルとして求める。
参照ピクチャ毎の参照ベクトルは、参照ピクチャを特定サイズのブロック(参照ベクトルブロック)で格子状に分割し、各参照ベクトルブロックに一つの参照ベクトルという構造で保持されている。
しかし、従来の動画像符号化装置では、時間予測ベクトルを導出する際に参照する参照ベクトルの位置を合わせる仕組みが搭載されていないため、フレーム単位の符号化と、フィールド単位の符号化とが混在する場合、HEVCに適用することができない課題があった。
実施の形態1.
図1はこの発明の実施の形態1による動画像符号化装置を示す構成図である。
図1において、符号化制御部1は入力画像を構成しているフレーム毎に、当該フレームの符号化単位として、フレーム単位又はフィールド単位を選択し、その符号化単位を示す符号化単位情報をフレーム/フィールド切替部2、動き補償予測部6及び可変長符号化部15に出力する処理を実施する。
また、符号化制御部1は符号化ブロックサイズを決定するとともに、ブロック分割部3から出力される符号化対象ブロックに対する符号化効率が最も高い符号化モードを決定する処理を実施する。
また、符号化制御部1は符号化効率が最も高い符号化モードがイントラ符号化モードである場合、そのイントラ符号化モードで符号化対象ブロックに対するイントラ予測処理を実施する際に用いるイントラ予測パラメータを決定し、符号化効率が最も高い符号化モードがインター符号化モードである場合、そのインター符号化モードで符号化対象ブロックに対するインター予測処理を実施する際に用いるインター予測パラメータを決定する処理を実施する。
さらに、符号化制御部1は変換・量子化部8及び逆量子化・逆変換部9に与える予測差分符号化パラメータを決定する処理を実施する。
なお、符号化制御部1は符号化単位選択手段を構成している。
例えば、符号化制御部1から出力された符号化単位情報が示す符号化単位が「フレーム単位」であれば、入力画像における各々のフレームのフォーマットを変換することなく、各々のフレームをブロック分割部3に出力する。
一方、符号化単位情報が示す符号化単位が「フィールド単位」であれば、入力画像を構成している各画素の配置を変更することで、フィールド単位のサイズを有するピクチャを生成し、そのピクチャをブロック分割部3に出力する。
このような場合には、例えば、符号化制御部1から出力された符号化単位情報が示す符号化単位が「フィールド単位」であれば、入力画像における各々のフィールドのフォーマットを変換することなく、各々のフィールドをブロック分割部3に出力する。
一方、符号化単位情報が示す符号化単位が「フレーム単位」であれば、入力画像を構成している各画素の配置を変更することで、フレーム単位のサイズを有するピクチャを生成し、そのピクチャをブロック分割部3に出力する。
なお、フレーム/フィールド切替部2は符号化対象ピクチャ生成手段を構成している。
イントラ予測部5はイントラ予測用メモリ11に格納されている局所復号画像を参照しながら、符号化制御部1により決定されたイントラ予測パラメータを用いて、切換スイッチ4から出力された符号化対象ブロックに対するイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
ただし、動き補償予測部6は動きベクトルを探索する際、参照ベクトルメモリ14に格納されている参照ベクトル(参照ピクチャに保持されている参照ベクトル)から予測ベクトルを導出し、その予測ベクトルを利用して動きベクトルを探索するが(詳細は後述する)が、フレーム/フィールド切替部2により生成されたカレントピクチャと参照ピクチャの符号化単位が異なる場合、その参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出する。
なお、切換スイッチ4、動き補償予測部6、動き補償予測フレームメモリ13及び参照ベクトルメモリ14から予測画像生成手段が構成されている。
変換・量子化部8は符号化制御部1により決定された予測差分符号化パラメータを参照して、減算部7から出力された予測差分信号に対する直交変換処理(例えば、DCT(離散コサイン変換)や、予め特定の学習系列に対して基底設計がなされているKL変換等の直交変換処理)を実施して変換係数を算出するとともに、その予測差分符号化パラメータを参照して、その変換係数を量子化し、量子化後の変換係数である圧縮データ(差分画像の量子化係数)を逆量子化・逆変換部9及び可変長符号化部15に出力する処理を実施する。
なお、減算部7及び変換・量子化部8から画像圧縮手段が構成されている。
加算部10は逆量子化・逆変換部9により算出された局所復号予測差分信号と、イントラ予測部5により生成されたイントラ予測画像、または、動き補償予測部6により生成されたインター予測画像とを加算して、ブロック分割部3から出力された符号化対象ブロックに相当する局所復号画像を算出する処理を実施する。
ループフィルタ部12は加算部10により算出された局所復号画像に対して、所定のフィルタリング処理を実施して、フィルタリング処理後の局所復号画像を出力する処理を実施する。
動き補償予測フレームメモリ13はフィルタリング処理後の局所復号画像を格納する記録媒体である。
参照ベクトルメモリ14は次のピクチャの符号化の際に、時間予測ベクトルの導出に用いる参照ベクトルを格納する記録媒体である。
なお、可変長符号化部15は可変長符号化手段を構成している。
動画像符号化装置がコンピュータで構成される場合、イントラ予測用メモリ11、動き補償予測フレームメモリ13及び参照ベクトルメモリ14をコンピュータのメモリ上に構成するとともに、フレーム/フィールド切替部2、ブロック分割部3、切換スイッチ4、イントラ予測部5、動き補償予測部6、減算部7、変換・量子化部8、逆量子化・逆変換部9、加算部10、ループフィルタ部12及び可変長符号化部15の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図5はこの発明の実施の形態1による動画像符号化装置の処理内容(動画像符号化方法)を示すフローチャートである。
図2において、可変長復号部21は図1の動画像符号化装置により生成されたビットストリームから圧縮データ、符号化単位情報、符号化モード、イントラ予測パラメータ(符号化モードがイントラ符号化モードである場合)、インター予測パラメータ(符号化モードがインター符号化モードである場合)、予測差分符号化パラメータ及び動きベクトルと予測ベクトルとの差分値(符号化モードがインター符号化モードである場合)を可変長復号する処理を実施する。
なお、可変長復号部21は可変長復号手段を構成している。
イントラ予測部23はイントラ予測用メモリ27に格納されている復号画像を参照しながら、切換スイッチ22から出力されたイントラ予測パラメータを用いて、復号対象ブロックに対するイントラ予測処理を実施してイントラ予測画像を生成する処理を実施する。
ただし、動き補償部24は切換スイッチ22から出力された符号化単位情報を参照して、カレントピクチャ(復号対象ピクチャ)の復号単位を認識し、カレントピクチャと参照ピクチャの復号単位が異なる場合、その参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出する。
なお、切換スイッチ22、動き補償部24、動き補償予測フレームメモリ29及び参照ベクトルメモリ30から予測画像生成手段が構成されている。
ループフィルタ部28は加算部26により算出された復号画像に対して、所定のフィルタリング処理を実施して、フィルタリング処理後の復号画像を出力する処理を実施する。
動き補償予測フレームメモリ29はフィルタリング処理後の復号画像を格納する記録媒体である。
参照ベクトルメモリ30は次のピクチャの復号の際に、時間予測ベクトルの導出に用いる参照ベクトルを格納する記録媒体である。
動画像復号装置がコンピュータで構成される場合、イントラ予測用メモリ27、動き補償予測フレームメモリ29及び参照ベクトルメモリ30をコンピュータのメモリ上に構成するとともに、可変長復号部21、切換スイッチ22、イントラ予測部23、動き補償部24、逆量子化・逆変換部25、加算部26及びループフィルタ部28の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにすればよい。
図8はこの発明の実施の形態1による動画像復号装置の処理内容(動画像復号方法)を示すフローチャートである。
この実施の形態1では、映像の各フレーム画像を入力画像として、近接フレーム間で動き補償予測を実施して、得られた予測差分信号に対して直交変換・量子化による圧縮処理を施し、その後、可変長符号化を行ってビットストリームを生成する動画像符号化装置と、その動画像符号化装置から出力されるビットストリームを復号する動画像復号装置について説明する。
一般的に、映像信号は、空間・時間的に信号の複雑さが局所的に変化する特性を有している。空間的に見ると、ある映像ピクチャ上では、例えば、空や壁などのような比較的広い画像領域中で均一な信号特性を有する絵柄もあれば、人物や細かいテクスチャを含む絵画など、小さい画像領域内で複雑なテクスチャパターンを有する絵柄も混在することがある。
符号化処理は、時間・空間的な予測によって、信号電力やエントロピーの小さい予測差分差信号を生成して、全体の符号量を削減する処理を行うが、予測に用いるパラメータをできるだけ大きな画像信号領域に均一に適用できれば、当該パラメータの符号量を小さくすることができる。
一方、時間的・空間的に変化の大きい画像信号パターンに対して、同一の予測パラメータを大きな画像領域に適用すると、予測の誤りが増えてしまうため、予測差分信号の符号量が増加してしまう。
この実施の形態1では、このような映像信号の一般的な性質に適応した符号化を行うため、最初に所定の最大ブロックサイズから予測処理等を開始し、階層的に映像信号の領域を分割し、分割した領域毎に予測処理や、その予測差分の符号化処理を適応化させる構成をとるようにしている。
ただし、各画素の諧調は、8ビットでもよいし、10ビットや12ビットなどの諧調でもよい。
また、映像信号をフレーム単位に符号化する際のフレームや、フィールド単位に符号化する際のフィールドなど、符号化の単位となる1枚の画像データを「ピクチャ」と称する。
ただし、入力データは順次走査(プログレッシブスキャン)された動画像信号であってもよい。また、入力データがインタレーススキャンされた動画像信号であった場合、各フレームにトップフィールドとボトムフィールドがそれぞれ偶数/奇数ライン(または奇数/偶数ライン)に交互に配置された動画像信号でもよいし、トップフィールドとボトムフィールドが個別の画像データとして交互に入力されるような動画像信号でもよい。
まず、符号化制御部1は、入力画像を構成しているフレーム(カレントフレーム)毎に、当該フレームの符号化単位として、フレーム単位又はフィールド単位を選択し、その符号化単位を示す符号化単位情報をフレーム/フィールド切替部2、動き補償予測部6及び可変長符号化部15に出力する。
符号化単位の選択方法として、例えば、全てのフレームに対して一律に同じ符号化単位を定めるようにしてもよいし、予備的な符号化処理などを実施することで各符号化単位の符号化効率を推定し、その符号化効率が良好な方の符号化単位を選択するようにしてもよい。
また、画面全体での動き量の大きさなど、入力画像の何らかの特徴をパラメータとして定量化し、そのパラメータに応じて符号化単位を選択するようにしてもよい。
即ち、フレーム/フィールド切替部2は、符号化制御部1から出力された符号化単位情報が示す符号化単位が「フレーム単位」であれば、図4(b)に示すように、トップフィールドとボトムフィールドがそれぞれ偶数/奇数ラインに配置されたピクチャを符号化単位として生成する。
一方、符号化単位情報が示す符号化単位が「フィールド単位」であれば、図4(c)に示すように、トップフィールドとボトムフィールドを別のピクチャとして生成する。
動画像復号装置では、全く同じ符号化単位によって復号処理を実施しなければならないため、符号化単位情報は可変長符号化部15に出力されて、ビットストリームに多重化される。
以下に説明するステップST2~ST14の処理は、ピクチャ単位に実施される。
最大符号化ブロックのサイズの決め方としては、例えば、入力画像の映像信号の解像度に応じて、すべてのピクチャに対して同一のサイズを定めてもよいし、入力画像の映像信号の局所的な動きの複雑さの違いをパラメータとして定量化して、動きの激しいピクチャには、小さいサイズを定める一方、動きが少ないピクチャには、大きいサイズを定めるようにしてもよい。
分割階層数の上限の決め方としては、例えば、入力画像の映像信号の動きが激しい場合には、階層数を深くして、より細かい動きが検出できるように設定し、動きが少ない場合には、階層数を抑えるように設定するなどの方法がある。
ここで、図6は最大符号化ブロックが階層的に複数の符号化対象ブロックに分割される例を示す説明図である。
図6において、最大符号化ブロックは、「第0階層」と記されている輝度成分が(L0,M0)のサイズを有する符号化対象ブロックである。
最大符号化ブロックを出発点として、4分木構造で別途定める所定の深さまで、階層的に分割を行うことによって符号化対象ブロックを得るようにしている。
深さnにおいては、符号化対象ブロックはサイズ(Ln,Mn)の画像領域である。
ただし、LnとMnは、同じであってもよいし、異なっていてもよいが、図6では、Ln=Mnのケースを示している。
4分木分割を行うため、常に、(Ln+1,Mn+1)=(Ln/2,Mn/2)が成立する。
なお、RGB信号など、全ての色成分が同一サンプル数を有するカラー映像信号(4:4:4フォーマット)では、全ての色成分のサイズが(Ln,Mn)になるが、4:2:0フォーマットを扱う場合、対応する色差成分の符号化ブロックサイズは(Ln/2,Mn/2)になる。
以降、第n階層の符号化対象ブロックをBnで表し、符号化対象ブロックBnで選択可能な符号化モードをm(Bn)で表すものとする。
符号化モードm(Bn)には、1つないし複数のイントラ符号化モード(総称して「INTRA」と称する)と、1つないし複数のインター符号化モード(総称して、「INTER」と称する)とがあり、符号化制御部1は、当該ピクチャで利用可能な全ての符号化モード、または、そのサブセットの中から、符号化対象ブロックBnに対する符号化効率が最も高い符号化モードを選択する。
以降、符号化対象ブロックBnに属するパーティションをPi n(iは、第n階層におけるパーティション番号)と表記する。
符号化対象ブロックBnのパーティション分割が、どのようになされているかは、符号化モードm(Bn)の中に情報として含まれる。
パーティションPi nは、すべて符号化モードm(Bn)に従って予測処理が行われるが、パーティションPi n毎に、個別の予測パラメータを選択することができる。
図7(a)の斜線部分は、分割後のパーティションの分布を示しており、図7(b)は階層分割によって符号化モードm(Bn)が割り当てられる状況を4分木グラフで示している。
図7(b)の□で囲まれているノードは、符号化モードm(Bn)が割り当てられたノード(符号化対象ブロック)である。
一方、符号化制御部1により決定された符号化モードm(Bn)がインター符号化モードである場合(m(Bn)∈INTERの場合)、ブロック分割部3から出力された符号化対象ブロックBnを動き補償予測部6に出力する(ステップST4)。
なお、動画像復号装置がイントラ予測画像PINTRAi nと全く同じイントラ予測画像を生成する必要があるため、イントラ予測画像PINTRAi nの生成に用いられたイントラ予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
このとき、フレーム/フィールド切替部2により生成されたカレントピクチャと参照ピクチャの符号化単位が異なる場合、詳細は後述するが、その参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出する。
なお、動画像復号装置がインター予測画像PINTERi nと全く同じインター予測画像を生成する必要があるため、インター予測画像PINTERi nの生成に用いられたインター予測パラメータは、符号化制御部1から可変長符号化部15に出力されて、ビットストリームに多重化される。
また、動き補償予測部6により探索された動きベクトルと予測ベクトルの差分値も可変長符号化部15に出力されて、ビットストリームに多重化される。
動き補償予測部6の処理内容の詳細は後述する。
また、変換・量子化部8は、その予測差分符号化パラメータを参照して、その変換係数を量子化し、量子化後の変換係数である圧縮データを逆量子化・逆変換部9及び可変長符号化部15に出力する(ステップST8)。
また、逆量子化・逆変換部9は、その予測差分符号化パラメータを参照して、逆量子化後の圧縮データである変換係数に対する逆直交変換処理(例えば、逆DCT、逆KL変換など)を実施して、減算部7から出力された予測差分信号ei nに相当する局所復号予測差分信号ei nハットを算出して加算部10に出力する(ステップST9)。
なお、加算部10は、その局所復号画像をループフィルタ部12に出力するとともに、その局所復号画像をイントラ予測用メモリ11に格納する。
この局所復号画像が、以降のイントラ予測用の画像信号になる。
なお、動き補償予測フレームメモリ13に格納されるピクチャデータは、フレームフォーマットでの参照だけでなく、フィールド別フォーマットでの参照も可能であるようなデータ形式になっている。
例えば、トップフィールドとボトムフィールドが偶数/奇数ラインに交互に配置されたフレームフォーマットで格納してもよいし、トップフィールドとボトムフィールドが別のピクチャデータであるが、どのピクチャデータが、どのフレームのどちらのフィールドであるかを示す情報が常に参照できるようなデータ形式で格納してもよい。また、その両方を保持しておいてもよい。
いずれの格納形式においても、参照時に適宜フォーマット変換するという手段も含め、フレームフォーマット及びフィールド別フォーマットのいずれのフォーマットでも参照できるような仕組みを持っている。
また、所定のフィルタリング処理の例としては、符号化ブロック境界の不連続性(ブロックノイズ)が目立たなくなるようにブロック境界をフィルタリングする処理、元の入力画像の映像信号に近づくように局所復号画像の歪みを補償するフィルタ処理などが挙げられる。
ステップST4~ST11の処理は、階層的に分割された全ての符号化対象ブロックBnに対する処理が完了するまで繰り返し実施され、全ての符号化対象ブロックBnに対する処理が完了すると、ステップST13の処理に移行する(ステップST12)。
動き補償予測部6は、符号化制御部1により符号化モードとして、インター符号化モードが選択された場合(m(Bn)∈INTERの場合)、符号化制御部1から出力されたインター予測パラメータに基づいて、各パーティションPi nに対するフレーム間動き推定処理を実施して、各パーティションにPi nに対する動きベクトルを推定する。
動き補償予測部6は、動きベクトルを推定すると、その動きベクトル及び動き補償予測フレームメモリ13内の参照フレームを用いて、インター予測画像を生成する。
なお、参照フレームの候補は複数あってもよく、1つ以上の参照フレームがある場合、インター予測パラメータに含まれている参照フレームインデックス情報にしたがって参照フレームを特定する。
カレントピクチャがフィールド単位の符号化であり、参照フレームをフィールド別フォーマットとして参照する場合、インター予測パラメータに含まれているフィールドインデックス情報にしたがって、参照フレームのうち、トップフィールドとボトムフィールドのどちらを参照するかを選択する。
フレーム間動き推定処理により求められた各パーティションPi nの動きベクトルは、その後のピクチャの動きベクトル予測処理(後述)に使用するため、参照ベクトルマップと呼称されるデータ構造で参照ベクトルメモリ14に格納される。参照ベクトルマップの仕様については後述する。
動きベクトル予測処理により導出された予測ベクトルを、動きベクトルを探索する際の探索開始点として用いることで、動きベクトルの探索処理の軽量化及び高精度化に利用することができる。
探索の結果として求められた動きベクトルと予測ベクトルの差分値(予測差分動きベクトル情報)を求め、この差分値をインター予測パラメータとして符号化することで、動きベクトル情報の情報量を削減することができる。
予測ベクトルには、空間予測ベクトルと時間予測ベクトルの2種類が存在する。空間予測ベクトルは、予測対象のパーティションの空間近傍の所定の位置の動きベクトルを用いるものである。空間予測ベクトルには複数個の候補が存在していてもよい。
時間予測ベクトルは、参照ベクトルメモリ14に保存されており、各参照ピクチャの各画面領域の動きベクトルを構造的に表現した参照ベクトルマップ内の参照ベクトルのうち、カレントピクチャの処理対象パーティションの位置に対応する参照ベクトルを用いるものである。
以下、画素参照のための参照フレームを「画素参照フレーム」と称し、参照ベクトル参照のための参照フレームを「ベクトル参照フレーム」と称する。
時間予測ベクトルについても、所定の時間予測ベクトル導出アルゴリズムにより導出される複数個の候補が存在していてもよい。
最初に、参照ベクトルマップのデータ構造について説明する。
参照ベクトルマップは、符号化対象ピクチャを参照ベクトルブロックと呼ばれる特定のサイズのブロックに格子状に分割し、各参照ベクトルブロックに対応する動きベクトルをラスタ順に格納された構造となっている(図9を参照)。
ここで、動きベクトルは、動き補償予測が選択されたパーティションPi n毎に一つずつ定義されているが、ある参照ベクトルブロックに空間的に対応するパーティションPi nは、参照ベクトルブロックとサイズや形状が異なる可能性がある。
このような場合、特定の手段により、参照ベクトルブロックとパーティションPi nの対応付けを行う。例えば、図11(a)に示すように、動き補償予測されたパーティションPi nが複数の参照ベクトルブロックに跨っていた場合は、パーティションPi nを含んでいる全ての参照ベクトルブロックにパーティションPi nのベクトルを格納する。図11(c)のように、一つの参照ベクトルブロックに複数のパーティションが含まれていた場合、参照ベクトルブロックに含まれる複数のパーティションのベクトルから、特定の手段で一つのベクトルを算出して当該参照ベクトルブロックに格納する。
算出の手法としては、例えば、参照ベクトルブロックに含まれる全てのベクトルの平均値や中間値を取ることが考えられる。または、常に参照ベクトルブロック内の特定の位置のパーティションの動きベクトルを代表値として使ってもよい。
なお、図11(b)のように、フレーム内予測パーティションの位置に対応する参照ベクトルブロックには、特定の手段で算出されたベクトルを格納する。
算出の手法としては、固定値を格納する手法や、隣接する参照ベクトルブロックのベクトル値をコピーして格納する手法などが挙げられる。
ベクトル参照フレームがフレーム単位で符号化されている場合、図9(a)に示すように、フレームにつき一面の参照ベクトルマップを持っており、ベクトル参照フレームがフィールド単位で符号化されている場合、図9(b)に示すように、フィールド別に1面ずつ、計2面の参照ベクトルマップを持っている。
即ち、カレントピクチャがフレーム単位で符号化されている場合は、1面の参照ベクトルマップを作成し、フィールド単位で符号化された場合は、フィールド別に1面ずつ、2面の参照ベクトルマップを作成する。
参照ベクトルマップを作成する際の参照ベクトルブロックのサイズは、フレーム単位の符号化/フィールド単位の符号化に依らず一定とする。
よって、フレーム単位の符号化の場合と、フィールド単位の符号化の場合とでは、1面の参照ベクトルマップのサイズが異なる。
ここでは、(1)カレントピクチャがフレーム単位の符号化であって、ベクトル参照フレームがフレーム単位の符号化である場合、(2)カレントピクチャがフィールド単位の符号化であって、ベクトル参照フレームがフィールド単位の符号化である場合、(3)カレントピクチャがフレーム単位の符号化であって、ベクトル参照フレームがフィールド単位の符号化である場合、(4)カレントピクチャがフィールド単位の符号化であって、ベクトル参照フレームがフレーム単位の符号化である場合の4パターンについて説明する。
[パターン(1)]
カレントピクチャがフレーム単位の符号化であって、ベクトル参照フレームがフレーム単位の符号化であるパターン(図10(a)を参照)
このパターンでは、カレントピクチャにおける符号化対象パーティションの時間予測ベクトルの参照先座標に関するC個の候補が、所定の時間予測ベクトル導出アルゴリズムによって、カレントピクチャ上の座標で(x1,y1),(x2,y2),・・・,(xc,yc)のように求められた場合、カレントピクチャにおけるベクトル参照フレームの参照ベクトルマップの(R1(x1),R2(y1)),(R1(x2),R2(y2)),・・・,(R1(xc),R2(yc))に格納されている参照ベクトルを時間予測ベクトル候補とする。
カレントピクチャがフィールド単位の符号化であって、ベクトル参照フレームがフィールド単位の符号化であるパターン(図10(b)を参照)
このパターンでは、カレントピクチャにおける符号化対象パーティションの時間予測ベクトルの参照先座標に関するC個の候補が、所定の時間予測ベクトル導出アルゴリズムによって、カレントピクチャ上の座標で(x1,y1),(x2,y2),・・・,(xc,yc)のように求められた場合、カレントピクチャにおけるベクトル参照フレームの2つの参照ベクトルマップのうち、カレントピクチャと同一フィールドの参照ベクトルマップ(カレントピクチャがトップフィールドであれば、トップフィールドの参照ベクトルマップ、カレントピクチャがボトムフィールドであれば、ボトムフィールドの参照ベクトルマップ)の(R1(x1),R2(y1)),(R1(x2),R2(y2)),・・・,(R1(xc),R2(yc))に格納されている参照ベクトルを時間予測ベクトル候補とする。
または、カレントピクチャにおけるベクトル参照フレームの2つの参照ベクトルマップのうち、符号化制御部1から出力されたインター予測パラメータに含まれている時間予測ベクトル参照フィールドインデックスが示すフィールドの参照ベクトルマップの(R1(x1),R2(y1)),(R1(x2),R2(y2)),・・・,(R1(xc),R2(yc))に格納されている参照ベクトルを時間予測ベクトル候補とする。
なお、シーケンス単位、ピクチャ単位、スライス単位などで、符号化制御部1から出力された符号化パラメータによる指示で、常に同一フィールドを用いるか、または、時間予測ベクトル参照フィールドインデックスが示すフィールドを指定するかを切り替えられるようにしてもよい。
カレントピクチャがフレーム単位の符号化であって、ベクトル参照フレームがフィールド単位の符号化であるパターン(図10(c)を参照)
このパターンでは、カレントピクチャにおける符号化対象パーティションの時間予測ベクトルの参照先座標に関するC個の候補が、所定の時間予測ベクトル導出アルゴリズムによって、カレントピクチャ上の座標で(x1,y1),(x2,y2),・・・,(xc,yc)のように求められた場合、カレントピクチャにおけるベクトル参照フレームの2つの参照ベクトルマップのうち、符号化制御部1から出力されたインター予測パラメータに含まれている時間予測ベクトル参照フィールドインデックスが示すフィールドの参照ベクトルマップの(R1(x1),R2(y1)/2),(R1(x2),R2(y2)/2),・・・,(R1(xc),R2(yc)/2)に格納されている参照ベクトルの垂直方向成分を2倍にしたベクトル(補正後の参照ベクトル)を時間予測ベクトル候補とする。
カレントピクチャがフィールド単位の符号化であって、ベクトル参照フレームがフレーム単位の符号化であるパターン(図10(d)を参照)
このパターンでは、カレントピクチャにおける符号化対象パーティションの時間予測ベクトルの参照先座標に関するC個の候補が、所定の時間予測ベクトル導出アルゴリズムによって、カレントピクチャ上の座標で(x1,y1),(x2,y2),・・・,(xc,yc)のように求められた場合、カレントピクチャにおけるベクトル参照フレームの2つの参照ベクトルマップのうち、符号化制御部1から出力されたインター予測パラメータに含まれている時間予測ベクトル参照フィールドインデックスが示すフィールドの参照ベクトルマップの(R1(x1),R2(y1)×2),(R1(x2),R2(y2)×2),・・・,(R1(xc),R2(yc)×2)に格納されている参照ベクトルの垂直方向成分を半分にしたベクトル(補正後の参照ベクトル)を時間予測ベクトル候補とする。
(1)符号化ブロックBn内のパーティション分割を記述するモード情報
(2)各パーティションの予測差分動きベクトル(差分値)
(3)動き補償予測フレームメモリ13内に複数の参照フレームが含まれている構成の場合、予測画像生成のための画素参照フレームを指定する画素参照フレーム指示インデックス情報
(4)参照ベクトルメモリ14内に複数の参照ベクトルマップが含まれている構成の場合、時間予測ベクトルの参照先となるベクトル参照フレームを指定するベクトル参照フレーム指示インデックス情報
(6)フレーム/フィールドをフレーム単位で切り替えて符号化する構成であって、ベクトル参照フレームがフィールド単位で符号化されている場合、ベクトル参照フレームのうち、いずれのフィールドの参照ベクトルマップを用いるかを示すベクトル参照フィールド指示インデックス情報
(7)複数の動きベクトル予測値候補がある場合、いずれの動きベクトル予測値を選択して使用するかを示すインデックス情報
(8)複数の動き補償内挿フィルタがある場合、いずれのフィルタを選択して使用するかを示すインデックス情報
(9)当該パーティションの動きベクトルが複数の画素精度(半画素、1/4画素、1/8画素など)を示すことが可能な場合、いずれの画素精度を使用するかを示す選択情報
[パターン1]
指定するフィールドパリティと信号値の対応を固定する。即ち、例えば、トップフィールドを指定する際は“0”、ボトムフィールドを指定する際は“1”を固定的に送信する。
[パターン2]
指定するフィールドパリティと信号値の対応を、符号化対象のフィールドパリティに応じて変更する。例えば、符号化対象のフィールドパリティと、指定するフィールドパリティが等しい場合は“0”を送信し、異なる場合は“1”を送信する。このように構成することで、例えば、静止画像など、符号化対象フィールドと参照フィールドのフィールドパリティが一致していた場合に符号化効率が高くなるという特性を持つ入力画像の場合、フィールド指示インデックス情報の信号値として“0”が多く出現するため、フィールド指示インデックス情報を算術符号化によって高い効率で圧縮することが可能になる。
可変長復号部21は、図1の動画像符号化装置により生成されたビットストリームを入力すると、そのビットストリームに対する可変長復号処理を実施して(図8のステップST21)、1フレーム以上のピクチャから構成されるシーケンス単位、あるいは、ピクチャ単位にフレームサイズの情報を復号する。
即ち、可変長復号部21は、ビットストリームに多重化されている符号化単位情報(フレーム単位の符号化であるか、フィールド単位の符号化であるかを示す情報)を復号し、その符号化単位情報に基づいて、カレントピクチャの符号化単位(復号単位)をフレーム単位の復号、または、フィールド単位の復号に決定する(ステップST22)。
例えば、最大符号化ブロックサイズが映像信号の解像度に応じて決められた場合には、復号したフレームサイズ情報に基づいて、動画像符号化装置と同様の手順で最大符号化ブロックサイズを決定する。
最大符号化ブロックサイズ及び分割階層数上限が、動画像符号化装置側でビットストリームに多重化された場合には、ビットストリームから復号した値を用いる。
動画像符号化装置は、図6で示されるように、最大符号化ブロックを出発点に階層的に複数の符号化対象ブロックに分割して得られる符号化対象ブロック単位に符号化モードや変換・量子化して得られる圧縮データをビットストリームに多重化する。
当該ビットストリームを受け取った可変長復号部21は、決定された最大符号化ブロック単位に、符号化モードに含まれる図6で示されるような最大符号化ブロックの分割状態を復号する。復号された分割状態に基づき、階層的に復号対象ブロック(図1の動画像符号化装置の「符号化対象ブロック」に相当するブロック)を特定する(ステップST24)。
可変長復号部21は、復号対象ブロック(符号化対象ブロック)に割り当てられている符号化モードがイントラ符号化モードである場合、復号対象ブロック(符号化対象ブロック)に含まれており、予測処理単位となる1つ以上のパーティション毎にイントラ予測パラメータを復号する。
さらに、可変長復号部21は、復号対象ブロック(符号化対象ブロック)を予測差分符号化パラメータに含まれる変換ブロックサイズの情報に基づき、変換処理単位となる1つないし複数のパーティションに分割され、変換処理単位となるパーティション毎に圧縮データ(変換・量子化後の変換係数)を復号する(ステップST25)。
一方、可変長復号部21により可変長復号された符号化モードm(Bn)がインター符号化モードであれば(m(Bn)∈INTERの場合)、可変長復号部21により可変長復号されたインター予測パラメータ、差分値及び符号化単位情報を動き補償部24に出力する。
ただし、動き補償部24は、切換スイッチ22から出力された符号化単位情報を参照して、カレントピクチャ(復号対象ピクチャ)の復号単位を認識し、カレントピクチャと参照ピクチャの復号単位が異なる場合、その参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出する。
この復号画像が、以降のイントラ予測用の画像信号になる。
なお、ループフィルタ部28によるフィルタリング処理は、入力される復号画像の最大復号ブロック、あるいは、個々の復号ブロック単位で行ってもよいし、1画面分の復号ブロックの局所復号画像が入力された後に1画面分まとめて行ってもよい。
また、所定のフィルタリング処理の例としては、符号化ブロック境界の不連続性(ブロックノイズ)が目立たなくなるようにブロック境界をフィルタリングする処理、復号画像の歪みを補償するフィルタ処理などが挙げられる。
この復号画像が、動き補償予測用の参照画像となり、また、再生画像となる。
例えば、トップフィールドとボトムフィールドが偶数/奇数ラインに交互に配置されたフレームフォーマットで格納してもよいし、トップフィールドとボトムフィールドが別のピクチャデータであるが、どのピクチャデータが、どのフレームのどちらのフィールドであるかを示す情報が常に参照できるようなデータ形式で格納してもよい。また、その両方を保持しておいてもよい。
いずれの格納形式においても、参照時に適宜フォーマット変換するという手段も含め、フレームフォーマット及びフィールド別フォーマットのいずれのフォーマットでも参照できるような仕組みを持っている。
図1の符号化制御部1において、インター符号化モードが選択された場合(m(Bn)∈INTERの場合)、各パーティションPi nに対して、動きベクトル予測処理が実施されて予測ベクトル候補が選出され、かつ、可変長復号部21により復号されたインター予測パラメータに含まれている予測ベクトルインデックス情報に基づいて予測ベクトル候補から予測ベクトルが定められるとともに、インター予測パラメータに含まれている差分値と予測ベクトルの加算によって、各パーティションPi nの動きベクトルが復号される。
また、インター予測パラメータに含まれている画素参照フレームインデックス情報が示す画素参照フレームを動きベクトルによって動き補償した画像がインター予測画像として生成される。ここで、予測ベクトルを導出するアルゴリズムは、図1の動画像符号化装置の動き補償予測部6が実施している処理と同様であり、同じフレームの同じパーティションでは、動画像符号化装置と動画像復号装置の間で、必ず同じ予測ベクトル候補が選出される。
また、ベクトル参照フレームの参照ベクトルマップからの時間予測ベクトルの取得においても、カレントピクチャとベクトル参照フレームの符号化単位に応じて参照ベクトルマップからの参照位置、参照ベクトルのベクトル値の変更などの処理を、図1の動画像符号化装置の動き補償予測部6が実施している処理と全く同様に実施する。
また、カレントピクチャの符号化単位に応じて、図1の動画像符号化装置の動き補償予測部6が実施している処理と全く同様に、カレントピクチャの参照ベクトルマップを作成して参照ベクトルメモリ30に格納する。
即ち、カレントピクチャと参照ピクチャの符号化単位が異なる場合でも、妥当な時間予測ベクトルを導出することができるため、フレーム毎に、フレーム単位の符号化とフィールド単位の符号化を切り替えることが可能になり、その結果、入力画像を高効率に圧縮符号化することができる効果を奏する。
上記実施の形態1では、カレントピクチャの符号化単位がフィールド符号化であった場合、フィールド別に1面ずつ、計2面の参照ベクトルマップを持っているように構成している。
ただし、多くの画像信号において、トップフィールドとボトムフィールドは類似した動き情報を持っているため、2面の参照ベクトルマップに格納されている参照ベクトル情報は類似した値(冗長な情報)になっていることが推測される。また、インタレース素材の片フィールドは、キャプチャ元の映像の垂直方向を縮小したような画像となっているため、垂直方向の画素間相関及び動き情報相関は、一般に水平方向と比較して小さくなっている。よって、参照ベクトルマップについても、垂直方向より高い粒度でベクトル情報を保存できるように構成した方が予測ベクトルの精度が向上することが推測される。
このように構成した場合におけるフィールド符号化時の参照ベクトルマップへの参照ベクトル格納手段を以下に説明する。
即ち、図12(a)に示すように、フレーム符号化の際の参照ベクトルブロックが、符号化対象ピクチャのV×V画素ブロックに対応しているとすると、フィールド符号化の場合の参照ベクトルブロックはV×(V/2)ブロックに対応している。各参照ベクトルブロックに格納する参照ベクトルの算出には、上記実施の形態1で説明した手法と同様の手法を用いる。
統合後の各参照ベクトルブロックに格納されるベクトル値は、トップフィールド/ボトムフィールドで同じ位置の参照ベクトルブロックに格納されたベクトル値を用いて、特定の手段で算出される。
算出の手段としては、例えば、平均値を用いてもよいし、隣接参照ベクトルブロックに格納されたベクトルデータより相関の高いベクトルを選択するようにしてもよい。
また、参照ベクトルマップを上記のように構成した場合、符号化単位がフレームである場合でも、フィールドである場合でも、参照ベクトルマップはフレームにつき1面しか存在せず、また、常に同じサイズとなるため、図10(b)や図10(d)のような参照パターンは存在しなくなる。また、それに伴って、インター予測パラメータの一つであるベクトル参照指示インデックスは不要となる。
上記実施の形態1では、符号化対象ピクチャがフィールド単位で符号化されている場合、インター予測パラメータとして、予測画像生成のための画素参照フレームを指定する画素参照フレーム指示インデックス情報に加えて、画素参照フレーム指示インデックスで指定される画素参照フレームのうち、トップフィールド/ボトムフィールドのいずれを用いるかを指定する画素参照フィールド指示インデックス情報を伝送することで、画素参照先となるフィールドを指定している。
ここで、フィールド単位符号化されるあるフレームにおいて、1番目に符号化されるフィールドをF1、2番目に符号化されるフィールドをF2とする。このとき、フィールドF2の符号化において、フィールドF1を参照することが可能である。
具体的には、上記実施の形態1で述べている「インター予測画像生成のために用いられると共に可変長符号化部15によってビットストリームに多重化されるインター予測パラメータ」について、上記実施の形態1から以下のように変更する。
(2)フィールド単位符号化の場合のフィールドF2の符号化においては、上記実施の形態1と同様のパラメータに、フィールドF1画素参照フラグ及びフィールドF1ベクトル参照フラグを追加する。これらのフラグがONである場合、フィールドF2の符号化においては、フィールドF1を画素参照や予測ベクトル参照で使用する。また、フィールドF1画素参照フラグがONである場合、画素参照フレーム指示インデックス情報および画素参照フィールド指示インデックス情報は伝送しない。同様に、フィールドF1ベクトル参照フラグがONである場合、ベクトル参照フレーム指示インデックス情報およびベクトル参照フィールド指示インデックス情報は伝送しない。
Claims (22)
- 参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルを利用して動きベクトルを探索し、上記動きベクトルを用いて、符号化対象ピクチャに対する動き補償予測処理を実施して予測画像を生成する予測画像生成手段を備え、
上記予測画像生成手段は、上記符号化対象ピクチャと上記参照ピクチャの符号化単位が異なる場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像符号化装置。 - 上記予測画像生成手段は、上記動きベクトルを符号化対象ピクチャの参照ベクトルマップとして保持するとともに、符号化対象ピクチャがフィールド単位符号化で符号化される場合、符号化対象ピクチャに対応する参照ベクトルマップを、フィールド別に、フレームで2面保持することを特徴とする請求項1記載の動画像符号化装置。
- 上記予測画像生成手段は、参照ピクチャがフィールド単位符号化で符号化されている場合、予測ベクトルの導出処理において、参照ピクチャが属するフレームのいずれのフィールドの参照ベクトルを用いるかを決定するとともに、いずれのフィールドの参照ベクトルを用いたかを示すベクトル参照フィールド指示インデックス情報を可変長符号化する可変長符号化手段を有することを特徴とする請求項2記載の動画像符号化装置。
- 上記予測画像生成手段は、上記動きベクトルを符号化対象ピクチャの参照ベクトルマップとして保持するとともに、符号化対象ピクチャがフィールド単位符号化で符号化される場合、符号化対象ピクチャが属するフレームの両フィールドの参照ベクトルマップを統合した1面の参照ベクトルマップを、符号化対象ピクチャが属するフレームの参照ベクトルマップとして保持することで、フレームがフィールド単位符号化されている場合の参照ベクトルマップとフレーム単位符号化されている場合の参照ベクトルマップが同じサイズとなるように構成されていることを特徴とする請求項1記載の動画像符号化装置。
- 上記予測画像生成手段は、符号化対象ピクチャがフィールド単位符号化で符号化されておりかつフレーム内で2番目に符号化されるフィールドである場合、同一フレーム内の1番目に符号化されたフィールドを参照ピクチャとして用いたか否かを示すフラグを可変長符号化する可変長符号化手段を有することを特徴とする請求項1記載の動画像符号化装置。
- 入力画像を構成しているフレーム毎に、当該フレームの符号化単位として、フレーム単位又はフィールド単位を選択する符号化単位選択手段と、
上記入力画像における各々のフレームから、上記符号化単位選択手段により選択された符号化単位のサイズを有する符号化対象ピクチャを生成する符号化対象ピクチャ生成手段と、
上記符号化対象ピクチャ生成手段により生成された符号化対象ピクチャを分割し、分割後の符号化対象ピクチャである符号化ブロックを出力するブロック分割手段と、
参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルを利用して動きベクトルを探索し、上記動きベクトルを用いて、上記ブロック分割手段から出力された符号化ブロックに対する動き補償予測処理を実施して予測画像を生成する予測画像生成手段と、
上記ブロック分割手段から出力された符号化ブロックと上記予測画像生成手段により生成された予測画像との差分画像を圧縮し、上記差分画像の圧縮データを出力する画像圧縮手段と、
上記画像圧縮手段から出力された圧縮データと、上記予測画像生成手段により探索された動きベクトルと上記予測画像生成手段により導出された予測ベクトルとの差分値と、上記符号化単位選択手段により選択された符号化単位を示す符号化単位情報とを可変長符号化して、上記圧縮データ、上記差分値及び上記符号化単位情報の符号化データが多重化されたビットストリームを生成する可変長符号化手段とを備え、
上記予測画像生成手段は、上記符号化対象ピクチャ生成手段により生成された符号化対象ピクチャと上記参照ピクチャの符号化単位が異なる場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像符号化装置。 - 参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルに対して、ビットストリームに多重化された動きベクトルと予測ベクトルとの差分値を加算して、動きベクトルを復号し、上記動きベクトルを用いて、復号対象ピクチャに対する動き補償予測処理を実施して予測画像を生成する予測画像生成手段を備え、
上記予測画像生成手段は、上記復号対象ピクチャと上記参照ピクチャが異なる符号化単位で符号化されている場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像復号装置。 - 上記予測画像生成手段は、上記動きベクトルを復号対象ピクチャに対応する参照ベクトルマップとしてメモリに格納するとともに、復号対象ピクチャがフィールド単位符号化で符号化されている場合、復号対象ピクチャが属するフレームに対応する参照ベクトルマップを、フィールド別に、フレームで2面保持することを特徴とする請求項7記載の動画像復号装置。
- 上記予測画像生成手段は、参照ピクチャがフィールド単位符号化で符号化されている場合、予測ベクトルの導出処理において、ビットストリームに多重化されたベクトル参照フィールド指示インデックス情報に基づき、参照ピクチャが属するフレームのいずれのフィールドの参照ベクトルを用いるかを切り換えることを特徴とする請求項8記載の動画像復号装置。
- 上記予測画像生成手段は、上記動きベクトルを復号対象ピクチャに対応する参照ベクトルマップとしてメモリに格納するとともに、復号対象ピクチャがフィールド単位符号化で符号化されている場合、復号対象ピクチャが属するフレームの両フィールドの参照ベクトルマップを統合した1面の参照ベクトルマップを、復号対象ピクチャが属するフレームの参照ベクトルマップとして保持することで、フレームがフィールド単位符号化されている場合の参照ベクトルマップとフレーム単位符号化されている場合の参照ベクトルマップが同じサイズとなるように構成されていることを特徴とする請求項7記載の動画像復号装置。
- 上記予測画像生成手段は、復号対象ピクチャがフィールド単位符号化で符号化されておりかつフレーム内で2番目に復号されるフィールドである場合、ビットストリームに多重化された、同一フレーム内の1番目に復号されたフィールドを参照ピクチャとして用いたか否かを示すフラグに基づいて、同一フレーム内の1番目に復号されたフィールドを参照ピクチャとして用いるか否かを切り換えること特徴とする請求項7記載の動画像復号装置。
- ビットストリームに多重化されている符号化データから各々の符号化ブロックに係る圧縮データ、差分値及び符号化単位情報を可変長復号する可変長復号手段と、
参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルと上記可変長復号手段により可変長復号された差分値を加算して動きベクトルを復号し、上記動きベクトルを用いて、上記符号化ブロックに対応する復号ブロックに対する動き補償予測処理を実施して予測画像を生成する予測画像生成手段と、
上記可変長復号手段により可変長復号された符号化ブロックに係る圧縮データから圧縮前の差分画像を生成する差分画像生成手段と、
上記差分画像生成手段により生成された差分画像と上記予測画像生成手段により生成された予測画像とを加算して復号画像を生成する復号画像生成手段とを備え、
上記予測画像生成手段は、上記可変長復号手段により可変長復号された符号化単位情報から復号対象ピクチャの復号単位を認識し、上記復号対象ピクチャと上記参照ピクチャの復号単位が異なる場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像復号装置。 - 予測画像生成手段が、参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルを利用して動きベクトルを探索し、上記動きベクトルを符号化対象ピクチャの参照ベクトルマップとして保持するとともに、上記動きベクトルを用いて、符号化対象ピクチャに対する動き補償予測処理を実施して予測画像を生成する予測画像生成処理ステップを備え、
上記予測画像生成処理ステップでは、上記符号化対象ピクチャと上記参照ピクチャの符号化単位が異なる場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像符号化方法。 - 上記予測画像生成処理ステップにおいて、符号化対象ピクチャがフィールド単位符号化で符号化される場合に、符号化対象ピクチャが属するフレームに対応する参照ベクトルマップを、フィールド別に、フレームで2面保持することを特徴とする請求項13記載の動画像符号化方法。
- 上記予測画像生成処理ステップにおいて、参照ピクチャがフィールド単位符号化で符号化されている場合、予測ベクトルの導出処理において参照ピクチャが属するフレームのいずれのフィールドの参照ベクトルを用いるかを決定することと、
いずれのフィールドの参照ベクトルを用いたかを示すベクトル参照フィールド指示インデックス情報を可変長符号化する可変長符号化ステップを備えることを特徴とする請求項13記載の動画像符号化方法。 - 上記予測画像生成処理ステップにおいて、符号化対象ピクチャがフィールド単位符号化で符号化される場合、符号化対象ピクチャが属するフレームの両フィールドの参照ベクトルマップを統合した1面の参照ベクトルマップを、符号化対象ピクチャが属するフレームの参照ベクトルマップとして保持することで、フレームがフィールド単位符号化されている場合の参照ベクトルマップとフレーム単位符号化されている場合の参照ベクトルマップを同じサイズとすることを特徴とする請求項13記載の動画像符号化方法。
- 上記予測画像生成処理ステップにおいて、符号化対象ピクチャがフィールド単位符号化で符号化されておりかつフレーム内で2番目に符号化されるフィールドである場合、同一フレーム内の1番目に符号化されたフィールドを参照ピクチャとして用いたか否かを示すフラグを可変長符号化する可変長符号化手段を有することを特徴とする請求項13記載の動画像符号化方法。
- 予測画像生成手段が、参照ピクチャに保持されている参照ベクトルから予測ベクトルを導出するとともに、上記予測ベクトルに対して、ビットストリームに多重化された動きベクトルと予測ベクトルとの差分値を加算して、動きベクトルを復号し、上記動きベクトルを復号対象ピクチャに対応する参照ベクトルマップとしてメモリに格納するとともに、上記動きベクトルを用いて、復号対象ピクチャに対する動き補償予測処理を実施して予測画像を生成する予測画像生成処理ステップを備え、
上記予測画像生成処理ステップでは、上記復号対象ピクチャと上記参照ピクチャが異なる符号化単位で符号化されている場合、上記参照ピクチャに保持されている参照ベクトルを補正して、補正後の参照ベクトルから予測ベクトルを導出することを特徴とする動画像復号方法。 - 上記予測画像生成処理ステップにおいて、復号対象ピクチャがフィールド単位符号化で符号化されている場合、復号対象フレームに対応する参照ベクトルマップを、フィールド別に、フレームで2面保持することを特徴とする請求項18記載の動画像復号方法。
- 上記予測画像生成手段は、参照ピクチャがフィールド単位符号化で符号化されている場合、予測ベクトルの導出処理において、ビットストリームに多重化されたベクトル参照フィールド指示インデックス情報に基づき、参照ピクチャが属するフレームのいずれのフィールドの参照ベクトルを用いるかを切り換えることを特徴とする請求項19記載の動画像復号方法。
- 上記予測画像生成処理ステップにおいて、復号対象ピクチャがフィールド単位符号化で符号化されている場合、復号対象ピクチャが属するフレームの両フィールドの参照ベクトルマップを統合した1面の参照ベクトルマップを、復号対象ピクチャが属するフレームの参照ベクトルマップとして保持することで、フレームがフィールド単位符号化されている場合の参照ベクトルマップとフレーム単位符号化されている場合の参照ベクトルマップが同じサイズとなるように構成されていることを特徴とする請求項18記載の動画像復号方法。
- 上記予測画像生成処理ステップにおいて、復号対象ピクチャがフィールド単位符号化で符号化されておりかつフレーム内で2番目に復号されるフィールドである場合、ビットストリームに多重化された、同一フレーム内の1番目に復号されたフィールドを参照ピクチャとして用いたか否かを示すフラグに基づいて、同一フレーム内の1番目に復号されたフィールドを参照ピクチャとして用いるか否かを切り換えること特徴とする請求項18記載の動画像復号方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014538643A JPWO2014051081A1 (ja) | 2012-09-28 | 2013-09-27 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
US14/432,168 US20150271502A1 (en) | 2012-09-28 | 2013-09-27 | Video encoding device, video decoding device, video encoding method, and video decoding method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012217089 | 2012-09-28 | ||
JP2012-217089 | 2012-09-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014051081A1 true WO2014051081A1 (ja) | 2014-04-03 |
Family
ID=50388474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/076340 WO2014051081A1 (ja) | 2012-09-28 | 2013-09-27 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150271502A1 (ja) |
JP (1) | JPWO2014051081A1 (ja) |
WO (1) | WO2014051081A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016055001A1 (en) * | 2014-10-08 | 2016-04-14 | Mediatek Inc. | Method of block vector clipping and coding for screen content coding and video coding |
US10856009B2 (en) | 2014-09-04 | 2020-12-01 | Mediatek Inc. | Method of block vector clipping and coding for screen content coding and video coding |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110572643B (zh) * | 2014-01-29 | 2021-11-16 | 联发科技股份有限公司 | 利用自适应运动向量精度的方法和装置 |
WO2015115644A1 (ja) * | 2014-02-03 | 2015-08-06 | 三菱電機株式会社 | 画像符号化装置、画像復号装置、符号化ストリーム変換装置、画像符号化方法、及び画像復号方法 |
CN113362233B (zh) * | 2020-03-03 | 2023-08-29 | 浙江宇视科技有限公司 | 图片处理方法、装置、设备、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008153907A (ja) * | 2006-12-18 | 2008-07-03 | Renesas Technology Corp | 画像符号化装置及びそれらを含む情報端末ならびに画像符号化方法 |
JP2009194617A (ja) * | 2008-02-14 | 2009-08-27 | Sony Corp | 画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体 |
JP2009272702A (ja) * | 2008-04-30 | 2009-11-19 | Canon Inc | 動きベクトル探索装置及びその制御方法 |
WO2012096157A1 (ja) * | 2011-01-12 | 2012-07-19 | パナソニック株式会社 | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2468086C (en) * | 2001-11-21 | 2013-08-20 | General Instrument Corporation | Picture level adaptive frame/field coding for digital video content |
JP2006313950A (ja) * | 2005-05-06 | 2006-11-16 | Hitachi Ltd | 画像符号化装置、及び画像符号化方法 |
-
2013
- 2013-09-27 JP JP2014538643A patent/JPWO2014051081A1/ja active Pending
- 2013-09-27 WO PCT/JP2013/076340 patent/WO2014051081A1/ja active Application Filing
- 2013-09-27 US US14/432,168 patent/US20150271502A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008153907A (ja) * | 2006-12-18 | 2008-07-03 | Renesas Technology Corp | 画像符号化装置及びそれらを含む情報端末ならびに画像符号化方法 |
JP2009194617A (ja) * | 2008-02-14 | 2009-08-27 | Sony Corp | 画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体 |
JP2009272702A (ja) * | 2008-04-30 | 2009-11-19 | Canon Inc | 動きベクトル探索装置及びその制御方法 |
WO2012096157A1 (ja) * | 2011-01-12 | 2012-07-19 | パナソニック株式会社 | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10856009B2 (en) | 2014-09-04 | 2020-12-01 | Mediatek Inc. | Method of block vector clipping and coding for screen content coding and video coding |
WO2016055001A1 (en) * | 2014-10-08 | 2016-04-14 | Mediatek Inc. | Method of block vector clipping and coding for screen content coding and video coding |
Also Published As
Publication number | Publication date |
---|---|
JPWO2014051081A1 (ja) | 2016-08-25 |
US20150271502A1 (en) | 2015-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6615287B2 (ja) | 画像復号装置 | |
JP6573689B2 (ja) | 画像符号化装置および画像符号化方法 | |
JP6261660B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
JP2020202590A (ja) | 動画像復号装置、動画像符号化装置、動画像復号方法及び動画像符号化方法 | |
JP7012809B2 (ja) | 画像符号化装置、動画像復号装置、動画像符号化データ及び記録媒体 | |
WO2013065402A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
WO2014051081A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JPWO2014049981A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2012080213A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2015008341A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2014168107A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2012186762A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2013098711A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2013098713A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2014135552A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法および動画像復号方法 | |
JP2013009164A (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JPWO2014049982A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
JP2013102269A (ja) | カラー動画像符号化装置、カラー動画像復号装置、カラー動画像符号化方法及びカラー動画像復号方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13841688 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014538643 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14432168 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13841688 Country of ref document: EP Kind code of ref document: A1 |