WO2012096157A1 - Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image - Google Patents
Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image Download PDFInfo
- Publication number
- WO2012096157A1 WO2012096157A1 PCT/JP2012/000096 JP2012000096W WO2012096157A1 WO 2012096157 A1 WO2012096157 A1 WO 2012096157A1 JP 2012000096 W JP2012000096 W JP 2012000096W WO 2012096157 A1 WO2012096157 A1 WO 2012096157A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion vector
- target block
- decoding
- encoding
- 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/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/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
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Definitions
- the present invention relates to an image encoding method for encoding an image for each block and an image decoding method for decoding an image for each block.
- An image encoding apparatus generally compresses the amount of information using redundancy in the spatial direction and temporal direction of an image (including a still image and a moving image).
- redundancy in the spatial direction conversion to the frequency domain is used.
- Inter prediction is used as a method of using temporal redundancy. Inter prediction is also called inter-picture prediction.
- an image encoding apparatus using inter prediction encodes a certain picture
- a picture that has been encoded forward or backward in display order with respect to the encoding target picture is used as a reference picture.
- the image encoding device derives a motion vector by detecting the motion of the encoding target picture with respect to the reference picture.
- the image encoding device obtains predicted image data by performing motion compensation based on the motion vector.
- the image encoding device acquires a difference between the predicted image data and the image data of the encoding target picture.
- the image encoding device encodes the acquired difference. Thereby, the image coding apparatus removes redundancy in the time direction.
- the image coding apparatus calculates a difference value between a block to be coded in a coded picture and a block in a reference picture, and uses a block in the reference picture having the smallest difference value as a reference block. Determine as. Then, the image encoding device detects a motion vector using the encoding target block and the reference block.
- H.264 An image encoding apparatus according to a standardized image encoding method called H.264 (see Non-Patent Document 1) uses three types of pictures, ie, an I picture, a P picture, and a B picture, in order to compress the amount of information.
- This image encoding apparatus does not perform inter prediction on an I picture. That is, the image coding apparatus performs intra prediction on the I picture. Intra prediction is also called intra-picture prediction.
- the image coding apparatus performs inter prediction on the P picture with reference to one already coded picture in front of or behind the picture to be coded in display order. Also, the image encoding apparatus performs inter prediction on the B picture with reference to two already encoded pictures in front of or behind the encoding target picture in display order.
- An image coding apparatus can select a coding mode called temporal direct when deriving a motion vector in coding a B picture.
- a method of inter prediction in temporal direct will be described with reference to FIG.
- FIG. 31 is an explanatory diagram showing motion vectors in time direct.
- FIG. 31 illustrates a case where the image encoding apparatus encodes block a of picture B2 in time direct.
- the image coding apparatus uses the motion vector vb used when coding the block b at the same position as the block a in the picture P3 which is the reference picture behind the picture B2.
- the motion vector vb is a motion vector used when the block b is encoded, and refers to the picture P1.
- the image encoding device When encoding the block a, the image encoding device acquires a reference block from a picture P1 that is a forward reference picture and a picture P3 that is a backward reference picture by using a motion vector parallel to the motion vector vb. To do. Then, the image encoding apparatus performs bidirectional prediction and encodes block a. That is, the image coding apparatus codes the block a using the motion vector va1 for the picture P1 and the motion vector va2 for the picture P3.
- the field structure is a structure used when two fields in a block are encoded in order for each field.
- the frame structure is a structure used when a block is encoded without being separated into two fields. Coding with a field structure is called field coding, and coding with a frame structure is called frame coding.
- the motion vector vb is a field structure or a frame structure. If the structure of the motion vector vb is not properly determined, the position indicated by the motion vector vb is not properly specified.
- the present invention provides an image encoding method and image decoding for processing an image using the motion vector without determining whether the structure of the motion vector held in the memory is a frame structure or a field structure. It aims to provide a method.
- an image encoding method is an image encoding method for encoding an image for each block, and the structure of the first encoding target block is a field structure or a frame structure.
- the motion vector of the first encoding target block is written into a memory, and the structure of the first encoding target block is the predetermined structure.
- the writing step for writing the motion vector adjusted in the first adjustment step to the memory is written into a memory.
- the motion vector read in the reading step is the second A second adjustment step for adjusting the motion vector read in the reading step so as to conform to the structure of the encoding target block, and the structure of the second encoding target block is the same as the predetermined structure.
- An encoding step for encoding the second encoding target block using the motion vector adjusted in the second adjustment step It flops and may be an image coding method comprising.
- the motion vector is stored in the memory with a predetermined structure. Therefore, there is no need to hold motion vector structure information. Therefore, the memory capacity required to hold the motion vector structure information is reduced. Further, it is not necessary to determine whether the structure of the motion vector held in the memory is a frame structure or a field structure. Therefore, the processing amount is reduced.
- the motion vector of the first encoding target block is set in the vertical direction.
- the motion vector is adjusted by halving, and in the second adjustment step, if the structure of the second encoding target block is different from the predetermined structure, the motion vector is read in the reading step.
- the motion vector read in the reading step may be adjusted by doubling the motion vector structure in the vertical direction.
- the motion vector of the first encoding target block is set in the vertical direction.
- the motion vector is adjusted by doubling, and if the structure of the second encoding target block is different from the predetermined structure in the second adjustment step, the motion vector is read in the reading step.
- the motion vector read in the reading step may be adjusted by halving the structure of the motion vector in the vertical direction.
- the motion vector of the first encoding target block that matches the position of the second encoding target block may be read.
- the motion vector of the co-located block is read from the memory. That is, a motion vector that can be used as a temporal direct vector is appropriately read from the memory.
- a motion vector of the second encoding target block is calculated from the motion vector read in the read step or the motion vector adjusted in the second adjustment step.
- the second encoding target block may be encoded using the calculated motion vector.
- the motion vector read from the memory is used to calculate the motion vector of another encoding target block. That is, a motion vector used for encoding another encoding target block is efficiently derived.
- the motion vector read in the read step or the motion vector adjusted in the second adjustment step is used to predict the motion vector of the second encoding target block.
- the second prediction target block may be encoded using the calculated prediction vector.
- the motion vector read from the memory is used for calculating the prediction vector. Then, by using the calculated prediction vector for the coding of the motion vector, the block to be coded is efficiently coded.
- the image decoding method is an image decoding method for decoding an image on a block-by-block basis, wherein the structure of the first decoding target block is one of a field structure and a frame structure.
- the first decoding step of adjusting the motion vector so that the motion vector of the first decoding target block matches the predetermined structure, and the structure of the first decoding target block If the structure is the same as the predetermined structure, the motion vector of the first decoding target block is written into a memory, and if the structure of the first decoding target block is different from the predetermined structure, the first adjustment step A writing step for writing the motion vector adjusted in step (a) to the memory; and
- the motion vector read in the reading step is adapted to the structure of the second decoding target block.
- the second decoding step is read in the reading step.
- the motion vector adjusted in the second adjustment step is And an image decoding method including a decoding step of decoding the second decoding target block.
- the motion vector is stored in the memory with a predetermined structure. Therefore, there is no need to hold motion vector structure information. Therefore, the memory capacity required to hold the motion vector structure information is reduced. Further, it is not necessary to determine whether the structure of the motion vector held in the memory is a frame structure or a field structure. Therefore, the processing amount is reduced.
- the motion vector of the first decoding target block is The motion vector is adjusted to 2 to adjust the motion vector read in the read step when the second adjustment step has a structure of the second decoding target block different from the predetermined structure.
- the motion vector read in the reading step may be adjusted by doubling the vector structure in the vertical direction.
- the motion vector of the first decoding target block is doubled in the vertical direction.
- the motion vector read in the read step is read when the structure of the second decoding target block is different from the predetermined structure.
- the motion vector read in the reading step may be adjusted by halving the structure of 1 ⁇ 2 in the vertical direction.
- the motion vector of the first decoding target block that matches the block position may be read.
- the motion vector of the co-located block is read from the memory. That is, a motion vector that can be used as a temporal direct vector is appropriately read from the memory.
- the motion vector of the second decoding target block is calculated from the motion vector read in the reading step or the motion vector adjusted in the second adjustment step.
- the second decoding target block may be decoded using the motion vector.
- the motion vector read from the memory is used to calculate the motion vector of another decoding target block. That is, a motion vector used for decoding another decoding target block is efficiently derived.
- a vector may be calculated, and the second decoding target block may be decoded using the calculated prediction vector.
- the motion vector read from the memory is used for calculating the prediction vector. Then, the decoding target block is appropriately decoded by using the calculated prediction vector for decoding the motion vector.
- An image encoding apparatus is an image encoding apparatus that encodes an image for each block, and the structure of the first encoding target block is one of a field structure and a frame structure in advance.
- a first adjusting unit that adjusts the motion vector so that a motion vector of the first encoding target block matches the predetermined structure when the structure is different from the predetermined structure; and the first encoding target
- the motion vector of the first encoding target block is written in a memory, and the structure of the first encoding target block is the predetermined structure.
- a writing unit that writes the motion vector adjusted by the first adjusting unit to the memory, and the motion vector written to the memory
- the motion vector read by the reading unit matches the structure of the second encoding target block
- the reading unit reads If the second encoding target block is encoded using the motion vector that is output, and the structure of the second encoding target block is different from the predetermined structure, the second adjustment unit adjusts the second encoding target block.
- An image encoding device including an encoding unit that encodes the second encoding target block using the motion vector may be used.
- the image encoding method is realized as an image encoding apparatus.
- the image decoding apparatus is an image decoding apparatus that decodes an image block by block, and the structure of the first decoding target block is one of a field structure and a frame structure.
- the first decoding unit for adjusting the motion vector so that the motion vector of the first decoding target block matches the predetermined structure, and the structure of the first decoding target block
- the motion vector of the first decoding target block is written into a memory, and when the structure of the first decoding target block is different from the predetermined structure, the first adjustment unit A writing unit for writing the motion vector adjusted in step S1 to the memory, and a reading unit for reading the motion vector written in the memory from the memory.
- the motion vector read by the reading unit matches the structure of the second decoding target block.
- the second adjustment unit that adjusts the motion vector read by the reading unit and the structure of the second decoding target block are the same as the predetermined structure, the motion read by the reading unit
- the motion vector adjusted by the second adjustment unit is used to An image decoding apparatus including a decoding unit that decodes the second decoding target block may be used.
- the image decoding method is realized as an image decoding apparatus.
- An image encoding / decoding apparatus is an image encoding / decoding apparatus including an image encoding apparatus that encodes a first image for each block, and an image decoding apparatus that decodes a second image for each block.
- the image encoding device is configured to use the first encoding target block.
- a first adjustment unit that adjusts the first motion vector so that the first motion vector matches the predetermined first structure, and a structure of the first encoding target block is the predetermined first structure.
- the first motion vector of the first encoding target block is written to a first memory, and the structure of the first encoding target block is the predetermined first structure.
- the first writing unit that writes the first motion vector adjusted by the first adjusting unit to the first memory, and the first motion vector that is written to the first memory are read from the first memory.
- the first motion vector read by the first reading unit is the second encoding target.
- a second adjusting unit that adjusts the first motion vector read by the first reading unit and a structure of the second encoding target block so as to conform to a block structure, and a predetermined first structure.
- the second encoding target block is encoded using the first motion vector read by the first reading unit, and the structure of the second encoding target block is And an encoding unit that encodes the second block to be encoded using the first motion vector adjusted by the second adjustment unit, when the image decoding apparatus is different from the first structure to be obtained,
- the second motion vector of the first decoding target block is determined in advance.
- the third adjustment unit that adjusts the second motion vector so as to conform to the second structure and the structure of the first decoding target block are the same as the predetermined second structure
- the second adjusted by the third adjustment unit The structure of a second writing unit that writes a motion vector to the second memory, a second reading unit that reads the second motion vector written to the second memory from the second memory, and a second decoding target block If the second structure is different from the predetermined second structure, the second reading unit reads the second motion vector read by the second reading unit so that the second motion vector matches the structure of the second decoding target block.
- a fourth adjusting unit that adjusts the second motion vector, and a second decoding target block having the same structure as the second structure, the second read unit reads the second motion vector;
- the second adjustment target block is adjusted by the fourth adjustment unit. It may be an image coding and decoding apparatus and a decoding section for decoding the second decoding target block using the second motion vector.
- the image encoding device and the image decoding device are realized as an image encoding / decoding device.
- the memory capacity required to hold the motion vector structure information is reduced. Further, since it is not necessary to determine whether the structure of the motion vector held in the memory is a frame structure or a field structure, the amount of processing is reduced.
- FIG. 1 is a configuration diagram illustrating an image encoding device according to Embodiment 1.
- FIG. 2 is a conceptual diagram showing a read / write process to the memory according to the first embodiment.
- FIG. 3 is a conceptual diagram showing a motion vector having a frame structure.
- FIG. 4 is a conceptual diagram showing the motion vector of the field structure.
- FIG. 5 is a flowchart showing a write process to the memory according to the first embodiment.
- FIG. 6 is a flowchart showing a read process from the memory according to the first embodiment.
- FIG. 7 is a configuration diagram illustrating details of the inter prediction control unit of the image coding apparatus according to Embodiment 1.
- FIG. 8 is a flowchart showing a read / write process to the memory of the image coding apparatus according to the first embodiment.
- FIG. 9 is a configuration diagram illustrating the image decoding apparatus according to Embodiment 1.
- FIG. 10 is a configuration diagram illustrating details of the inter prediction control unit of the image decoding apparatus according to Embodiment 1.
- FIG. 11 is a flowchart showing a read / write process to the memory of the image decoding apparatus according to the first embodiment.
- FIG. 12 is an overall configuration diagram of a content supply system that realizes a content distribution service.
- FIG. 13 is an overall configuration diagram of a digital broadcasting system.
- FIG. 14 is a block diagram illustrating a configuration example of a television.
- FIG. 15 is a block diagram illustrating a configuration example of an information reproducing / recording unit that reads and writes information from and on a recording medium that is an optical disk.
- FIG. 16 is a diagram illustrating a structure example of a recording medium that is an optical disk.
- FIG. 17A is a diagram illustrating an example of a mobile phone.
- FIG. 17B is a block diagram illustrating a configuration example of a mobile phone.
- FIG. 18 is a diagram showing a structure of multiplexed data.
- FIG. 19 is a diagram schematically showing how each stream is multiplexed in the multiplexed data.
- FIG. 20 is a diagram showing in more detail how the video stream is stored in the PES packet sequence.
- FIG. 21 is a diagram showing the structure of TS packets and source packets in multiplexed data.
- FIG. 22 is a diagram illustrating a data structure of the PMT.
- FIG. 23 is a diagram showing an internal configuration of multiplexed data information.
- FIG. 24 shows the internal structure of stream attribute information.
- FIG. 25 is a diagram showing steps for identifying video data.
- FIG. 26 is a block diagram illustrating a configuration example of an integrated circuit that realizes the moving picture coding method and the moving picture decoding method according to each embodiment.
- FIG. 27 is a diagram illustrating a configuration for switching the driving frequency.
- FIG. 28 is a diagram illustrating steps for identifying video data and switching between driving frequencies.
- FIG. 29 is a diagram illustrating an example of a lookup table in which video data standards are associated with drive frequencies.
- FIG. 30A is a diagram illustrating an example of a configuration for sharing a module of a signal processing unit.
- FIG. 30B is a diagram illustrating another example of a configuration for sharing a module of a signal processing unit.
- FIG. 31 is a diagram for explaining a temporal direct vector according to the prior art.
- FIG. 1 is a configuration diagram illustrating an image encoding device according to Embodiment 1.
- the image encoding device shown in FIG. 1 includes an encoding unit 101, an inter prediction control unit 121, a picture type determination unit 124, and a colPic memory 125.
- the encoding unit 101 includes a subtraction unit 102, an orthogonal transformation unit 103, a quantization unit 104, a variable length coding unit 105, an inverse quantization unit 106, an inverse orthogonal transformation unit 107, an addition unit 108, a block memory 109, an intra A prediction unit 110, a frame memory 111, an inter prediction unit 112, and a switch 113 are provided.
- the subtraction unit 102 subtracts the predicted image data from the input image data and outputs prediction error data.
- the orthogonal transform unit 103 transforms the prediction error data from the image region (spatial region) to the frequency region.
- the quantization unit 104 performs a quantization process on the prediction error data converted into the frequency domain.
- the inverse quantization unit 106 performs inverse quantization processing on the prediction error data quantized by the quantization unit 104.
- the inverse orthogonal transform unit 107 performs transform from the frequency domain to the image domain on the prediction error data subjected to the inverse quantization process.
- the adder 108 adds the prediction error data and the prediction image data, and outputs reconstructed image data.
- the block memory 109 is a memory for storing the reconstructed image data in units of blocks.
- the frame memory 111 is a memory for storing the reconstructed image data in units of frames.
- the intra prediction unit 110 uses the reconstructed image data in units of blocks stored in the block memory 109 to encode the encoding target block by intra prediction, and generates predicted image data.
- the inter prediction unit 112 encodes the block to be encoded by inter prediction using the reconstructed image data in units of frames stored in the frame memory 111 and the motion vector derived by motion detection, and converts the predicted image data into Generate.
- the switch 113 switches the encoding mode to intra prediction or inter prediction.
- the picture type determination unit 124 determines which of the I picture, B picture, and P picture is used to encode the input image sequence, and generates picture type information.
- the colPic memory 125 is a memory for storing a motion vector for each block as colPic information.
- the inter prediction control unit 121 determines a prediction vector (also called a prediction motion vector). Moreover, the inter prediction control part 121 stores the motion vector used for the inter prediction as colPic information. The processing executed by the inter prediction control unit 121 will be described in detail later.
- the variable length coding unit 105 performs prediction error data subjected to quantization processing, a prediction vector index of a prediction vector (also referred to as a prediction motion vector index), prediction error information between a motion vector and a prediction vector (both a difference vector or a difference motion vector) Variable length coding processing is performed on the picture type information and the like. As a result, the variable length encoding unit 105 generates a bit stream.
- FIG. 2 is a conceptual diagram showing a read / write process to the colPic memory 125 shown in FIG.
- the motion vector mvCol of the co-located block in the co-located picture colPic is stored in the colPic memory 125.
- the co-located picture colPic is a picture that is later in the display order than the encoding target picture and is closest to the encoding target picture in the display order.
- the co-located block is a block in which the position in the co-located picture colPic matches the position of the encoding target block in the encoding target picture.
- the co-located picture colPic is not necessarily a picture that is later in display order than the picture to be encoded. That is, the co-located picture colPic may be a picture preceding the display target picture in display order. For example, whether the co-located picture colPic is behind or ahead of the encoding target picture may be switched by a flag stored in the picture header.
- the position of the co-located block may be determined by a combination of whether the encoding target picture and the co-located picture are encoded by field encoding or frame encoding.
- the motion vector stored in the colPic memory 125 is read, and the temporal direct vector TemporalMV is calculated.
- the calculated temporal direct vector TemporalMV is used for encoding the block to be encoded.
- motion vectors are always held in a field structure. Thereby, it is not necessary to determine whether the block read from the colPic memory 125 has a field structure or a frame structure when encoding the block to be encoded.
- the inter prediction control unit 121 halves the vertical component of the motion vector mvCol and stores it in the colPic memory 125.
- the inter prediction control unit 121 stores the motion vector mvCol in the colPic memory 125 as it is. Thereby, in the colPic memory 125, the motion vector is always held in the field structure.
- the inter prediction control unit 121 calculates the temporal direct vector TemporalMV by doubling the vertical direction component of the motion vector read from the colPic memory 125.
- the inter prediction control unit 121 calculates a temporal direct vector TemporalMV using the motion vector read from the colPic memory 125 as it is. Therefore, the inter prediction control unit 121 does not need to determine the structure of the read motion vector.
- FIG. 3 is a conceptual diagram showing the motion vector of the frame structure.
- FIG. 3 shows a frame-structured picture (also simply referred to as a frame), a frame-structured block, and a frame-structured motion vector.
- a frame-structured picture includes both odd fields (also called top fields) and even fields (also called bottom fields).
- FIG. 4 is a conceptual diagram showing the motion vector of the field structure.
- FIG. 4 shows a field structure picture (also simply referred to as a field), a field structure block, and a field structure motion vector.
- a frame-structured picture is either an odd field (also called a top field) or an even field (also called a bottom field).
- the size of the field structure picture is 1 ⁇ 2 in the vertical direction as compared with the size of the frame structure picture.
- the field structure block and the field structure motion vector are also halved in the vertical direction.
- the inter prediction control unit 121 adjusts the vertical component of the motion vector when storing the motion vector in the colPic memory 125.
- FIG. 5 is a flowchart showing a writing process to the colPic memory 125 shown in FIG.
- the inter prediction control unit 121 calculates a motion vector of an encoding target block (S101).
- the encoding target block here is the co-located block shown in FIG.
- the inter prediction control unit 121 calculates a motion vector by motion detection such as block matching. Note that this motion detection may be performed by a motion detection unit (not shown).
- the inter prediction control unit 121 determines whether the encoding target block has a frame structure or a field structure (S102). When the encoding target block has a frame structure (Yes in S102), the inter prediction control unit 121 adjusts the vertical direction component of the motion vector mvCol to 1 ⁇ 2 (S103). On the other hand, when the encoding target block has a field structure (No in S102), the inter prediction control unit 121 does not perform such adjustment.
- the inter prediction control unit 121 transfers the motion vector mvCol to the colPic memory 125 (S104). Thereby, the motion vector mvCol is always stored in the colPic memory 125 in a field structure.
- FIG. 6 is a flowchart showing a reading process from the colPic memory 125 shown in FIG.
- the inter prediction control unit 121 reads a motion vector mvCol from the colPic memory 125 (S201).
- the inter prediction control unit 121 determines whether the encoding target block has a frame structure or a field structure (S202).
- the encoding target block here is the encoding target block shown in FIG.
- the inter prediction control unit 121 adjusts the vertical direction component of the read motion vector mvCol by a factor of 2 (S203). On the other hand, when the encoding target block has a field structure (No in S202), the inter prediction control unit 121 does not perform such adjustment.
- the inter prediction control unit 121 calculates a temporal direct vector TemporalMV from the motion vector mvCol (S204). Thereby, the motion vector mvCol is adjusted according to the structure of the encoding target block.
- the image coding apparatus stores the motion vector in the colPic memory 125 in the field structure, and codes the block in the field structure or the frame structure using the motion vector stored in the colPic memory 125 in the field structure.
- the image encoding device does not have to hold the structure information indicating whether the motion vector has the field structure or the frame structure in the colPic memory 125.
- the capacity required for the colPic memory 125 is reduced. Further, since the motion vector having the field structure is always used, the processing amount of the determination process is reduced.
- the image encoding device can execute processing based only on the structure of the encoding target block. Thereby, the processing amount of the determination process is reduced.
- the image encoding apparatus always stores motion vectors in the colPic memory 125 with a field structure, but may store motion vectors in the colPic memory 125 with a frame structure. Also in this case, the image encoding device may not store the motion vector structure information in the colPic memory 125. Therefore, the capacity required for the colPic memory 125 is reduced, and the amount of determination processing is reduced.
- the image encoding apparatus can enhance the effect of reducing the capacity required for the colPic memory 125 when the motion vector is always held in the field structure than when the motion vector is always held in the frame structure. This is because the size of the motion vector of the field structure is relatively smaller than the size of the motion vector of the frame structure as shown in FIG. More specifically, the field structure motion vector is half as large as the frame structure motion vector in the vertical direction. Therefore, 1-bit information can be reduced for each motion vector.
- FIG. 7 is a configuration diagram showing details of the inter prediction control unit 121 of the image encoding device shown in FIG.
- the inter prediction control unit 121 illustrated in FIG. 7 includes a first adjustment unit 131, a writing unit 132, a reading unit 133, and a second adjustment unit 134. These processing units execute read / write processing on the colPic memory 125 when an image is encoded by the encoding unit 101.
- FIG. 8 is a flowchart showing a read / write process to the colPic memory 125 shown in FIG.
- the process of storing the motion vector of the first encoding target block in the colPic memory 125 and encoding the second encoding target block using the motion vector stored in the colPic memory 125 is performed. It is shown.
- the first adjustment unit 131 adjusts the first encoding target block so that the motion vector of the first encoding target block matches the predetermined structure.
- the motion vector of one encoding target block is adjusted (S301).
- the predetermined structure is either a frame structure or a field structure.
- the first adjustment unit 131 sets the motion vector of the first encoding target block to 2 in the vertical direction. By doubling, the motion vector of the first encoding target block is adjusted.
- the writing unit 132 writes the motion vector of the first encoding target block in the colPic memory 125 as it is. If the structure of the first encoding target block is different from the predetermined structure, the writing unit 132 writes the adjusted motion vector in the colPic memory 125 (S302). Thereby, the motion vector of the first encoding target block is written in the colPic memory 125 with a predetermined structure.
- the reading unit 133 reads the motion vector from the colPic memory 125 (S303).
- the second adjustment unit 134 adjusts the read motion vector to match the structure of the second encoding target block.
- the read motion vector is adjusted (S304). For example, when the predetermined structure is a frame structure and the second encoding target block is a field structure, the read motion vector is halved in the vertical direction to Adjust the motion vector.
- the encoding unit 101 encodes the second encoding target block using the read motion vector as it is. If the structure of the second encoding target block is different from the predetermined structure, the encoding unit 101 encodes the second encoding target block using the adjusted motion vector (S305).
- the encoding unit 101 may encode the second encoding target block using the read motion vector or the adjusted motion vector as the motion vector of the second encoding target block. Further, the encoding unit 101 may encode the second encoding target block using the read motion vector or the adjusted motion vector as a prediction vector of the second encoding target block. In this case, the encoding unit 101 subtracts the prediction vector from the motion vector specified by motion detection or the like, and encodes the difference vector obtained by the subtraction.
- the image coding apparatus stores the motion vector in the colPic memory 125 with a predetermined structure, and uses the motion vector stored in the colPic memory 125 with the predetermined structure.
- a block having a frame structure is encoded. That is, motion vectors are always stored in the colPic memory 125 in a predetermined structure. Therefore, the image encoding device does not have to hold the structure information indicating whether the motion vector has the field structure or the frame structure in the colPic memory 125.
- FIG. 9 is a configuration diagram illustrating the image decoding apparatus according to the first embodiment.
- the image decoding apparatus illustrated in FIG. 9 includes a decoding unit 201, an inter prediction control unit 221, and a colPic memory 225.
- the decoding unit 201 includes a variable length decoding unit 205, an inverse quantization unit 206, an inverse orthogonal transform unit 207, an addition unit 208, a block memory 209, an intra prediction unit 210, a frame memory 211, an inter prediction unit 212, and a switch 213.
- the variable length decoding unit 205 performs variable length decoding processing on the input bitstream, and decodes picture type information, prediction vector index, prediction error data, and the like.
- the inverse quantization unit 206 performs an inverse quantization process on the prediction error data.
- the inverse orthogonal transform unit 207 transforms the prediction error data subjected to the inverse quantization process from the frequency domain to the image domain.
- the adding unit 208 generates decoded image data by adding the predicted image data and the prediction error data.
- the block memory 209 is a memory for storing the decoded image data in units of blocks.
- the frame memory 211 is a memory for storing the decoded image data in units of frames.
- the intra prediction unit 210 generates predicted image data of the decoding target block by executing intra prediction using the decoded image data in units of blocks stored in the block memory 209.
- the inter prediction unit 212 generates the predicted image data of the decoding target block by performing inter prediction using the decoded image data in units of frames stored in the frame memory 211.
- the switch 213 switches the encoding mode (decoding mode) to intra prediction or inter prediction.
- the colPic memory 225 is a memory for storing a motion vector for each block as colPic information.
- the inter prediction control unit 221 determines a prediction vector. Also, the inter prediction control unit 221 stores the motion vector used for inter prediction as colPic information.
- the processing executed by the inter prediction control unit 221 is the same as the processing executed by the inter prediction control unit 121 on the encoding side.
- the colPic memory 225 is a component similar to the colPic memory 125 on the encoding side. That is, in the above encoding process, the inter prediction control unit 221 is realized by changing the encoding part to decoding.
- FIG. 10 is a configuration diagram showing details of the inter prediction control unit 221 of the image decoding apparatus shown in FIG.
- the inter prediction control unit 221 illustrated in FIG. 10 includes a first adjustment unit 231, a writing unit 232, a reading unit 233, and a second adjustment unit 234. These processing units execute read / write processing on the colPic memory 225 when an image is decoded by the decoding unit 201.
- FIG. 11 is a flowchart showing a read / write process to the colPic memory 225 shown in FIG.
- the flowchart shown in FIG. 11 shows a process of storing the motion vector of the first decoding target block in the colPic memory 225 and decoding the second decoding target block using the motion vector stored in the colPic memory 225. Yes.
- the first adjustment unit 231 performs the first decoding so that the motion vector of the first decoding target block matches the predetermined structure.
- the motion vector of the target block is adjusted (S401).
- the predetermined structure is either a frame structure or a field structure.
- the first adjustment unit 231 doubles the motion vector of the first decoding target block in the vertical direction. As a result, the motion vector of the first decoding target block is adjusted.
- the writing unit 232 writes the motion vector of the first decoding target block as it is in the colPic memory 225. If the structure of the first decoding target block is different from the predetermined structure, the writing unit 232 writes the adjusted motion vector in the colPic memory 225 (S402). Thereby, the motion vector of the first decoding target block is written in the colPic memory 225 with a predetermined structure.
- the reading unit 233 reads the motion vector from the colPic memory 225 (S403).
- the second adjustment unit 234 reads the motion vector so that the read motion vector matches the structure of the second decoding target block.
- the motion vector thus adjusted is adjusted (S404). For example, when the predetermined structure is a frame structure and the second decoding target block has a field structure, the read motion vector is halved with respect to the vertical direction to read out the motion vector. Adjust the motion vector.
- the decoding unit 201 decodes the second decoding target block using the read motion vector as it is. If the structure of the second decoding target block is different from the predetermined structure, the decoding unit 201 decodes the second decoding target block using the adjusted motion vector (S405).
- the decoding unit 201 may decode the second decoding target block using the read motion vector or the adjusted motion vector as the motion vector of the second decoding target block. Further, the decoding unit 201 may decode the second decoding target block using the read motion vector or the adjusted motion vector as the prediction vector of the second decoding target block. In this case, the decoding unit 201 acquires a motion vector by decoding the difference vector and adding the decoded difference vector and the prediction vector.
- the image decoding apparatus stores the motion vector in the colPic memory 225 with a predetermined structure, and uses the motion vector stored in the colPic memory 225 with the predetermined structure. Decode a block of structure. In other words, motion vectors are always stored in the colPic memory 225 in a predetermined structure. Therefore, the image decoding apparatus does not have to hold the structure information indicating whether the motion vector has the field structure or the frame structure in the colPic memory 225.
- the image encoding device and the image decoding device according to the present invention have been described based on the embodiments, but the present invention is not limited to the embodiments. Embodiments obtained by subjecting the embodiments to modifications conceivable by those skilled in the art and other embodiments realized by arbitrarily combining the components in the embodiments are also included in the present invention.
- another processing unit may execute a process executed by a specific processing unit.
- the order in which the processes are executed may be changed, or a plurality of processes may be executed in parallel.
- the image encoding device and the image decoding device according to the present invention may be realized as an image encoding / decoding device realized by combining arbitrary constituent elements included in them.
- the present invention can be realized not only as an image encoding device and an image decoding device, but also as a method using processing means constituting the image encoding device and the image decoding device as steps.
- the present invention can be realized as a program for causing a computer to execute the steps included in these methods.
- the present invention can be realized as a computer-readable recording medium such as a CD-ROM in which the program is recorded.
- a plurality of components included in the image encoding device and the image decoding device may be realized as an LSI (Large Scale Integration) that is an integrated circuit. These components may be individually made into one chip, or may be made into one chip so as to include a part or all of them. Although referred to here as an LSI, it may be referred to as an IC (Integrated Circuit), a system LSI, a super LSI, or an ultra LSI depending on the degree of integration.
- IC Integrated Circuit
- the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- the storage medium may be any medium that can record a program, such as a magnetic disk, an optical disk, a magneto-optical disk, an IC card, and a semiconductor memory.
- the system has an image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
- image encoding / decoding device including an image encoding device using an image encoding method and an image decoding device using an image decoding method.
- Other configurations in the system can be appropriately changed according to circumstances.
- FIG. 12 is a diagram showing an overall configuration of a content supply system ex100 that realizes a content distribution service.
- a communication service providing area is divided into desired sizes, and base stations ex106, ex107, ex108, ex109, and ex110, which are fixed wireless stations, are installed in each cell.
- This content supply system ex100 includes a computer ex111, a PDA (Personal Digital Assistant) ex112, a camera ex113, a mobile phone ex114, a game machine ex115 via the Internet ex101, the Internet service provider ex102, the telephone network ex104, and the base stations ex106 to ex110. Etc. are connected.
- PDA Personal Digital Assistant
- each device may be directly connected to the telephone network ex104 without going from the base station ex106, which is a fixed wireless station, to ex110.
- the devices may be directly connected to each other via short-range wireless or the like.
- the camera ex113 is a device that can shoot moving images such as a digital video camera
- the camera ex116 is a device that can shoot still images and movies such as a digital camera.
- the mobile phone ex114 is a GSM (registered trademark) (Global System for Mobile Communications) system, a CDMA (Code Division Multiple Access) system, a W-CDMA (Wideband-Code Division Multiple Access) system, or an LTE (Long Term Evolution). It is possible to use any of the above-mentioned systems, HSPA (High Speed Packet Access) mobile phone, PHS (Personal Handyphone System), or the like.
- the camera ex113 and the like are connected to the streaming server ex103 through the base station ex109 and the telephone network ex104, thereby enabling live distribution and the like.
- live distribution the content (for example, music live video) captured by the user using the camera ex113 is encoded as described in the above embodiments (that is, the image encoding of the present invention).
- Function as a device Function as a device) and transmit to the streaming server ex103.
- the streaming server ex103 stream-distributes the content data transmitted to the requested client. Examples of the client include a computer ex111, a PDA ex112, a camera ex113, a mobile phone ex114, and a game machine ex115 that can decode the encoded data.
- Each device that receives the distributed data decodes the received data and reproduces it (that is, functions as the image decoding device of the present invention).
- the captured data may be encoded by the camera ex113, the streaming server ex103 that performs data transmission processing, or may be shared with each other.
- the decryption processing of the distributed data may be performed by the client, the streaming server ex103, or may be performed in common with each other.
- still images and / or moving image data captured by the camera ex116 may be transmitted to the streaming server ex103 via the computer ex111.
- the encoding process in this case may be performed by any of the camera ex116, the computer ex111, and the streaming server ex103, or may be performed in a shared manner.
- these encoding / decoding processes are generally performed in the computer ex111 and the LSI ex500 included in each device.
- the LSI ex500 may be configured as a single chip or a plurality of chips.
- moving image encoding / decoding software is incorporated into some recording medium (CD-ROM, flexible disk, hard disk, etc.) that can be read by the computer ex111, etc., and encoding / decoding processing is performed using the software. May be.
- moving image data acquired by the camera may be transmitted.
- the moving image data at this time is data encoded by the LSI ex500 included in the mobile phone ex114.
- the streaming server ex103 may be a plurality of servers or a plurality of computers, and may process, record, and distribute data in a distributed manner.
- the encoded data can be received and reproduced by the client.
- the information transmitted by the user can be received, decrypted and reproduced by the client in real time, and personal broadcasting can be realized even for a user who does not have special rights or facilities.
- the digital broadcast system ex200 also includes at least the moving image encoding device (image encoding device) or the moving image decoding according to each of the above embodiments. Any of the devices (image decoding devices) can be incorporated.
- the broadcast station ex201 multiplexed data obtained by multiplexing music data and the like on video data is transmitted to a communication or satellite ex202 via radio waves.
- This video data is data encoded by the moving image encoding method described in the above embodiments (that is, data encoded by the image encoding apparatus of the present invention).
- the broadcasting satellite ex202 transmits a radio wave for broadcasting, and this radio wave is received by a home antenna ex204 capable of receiving satellite broadcasting.
- the received multiplexed data is decoded and reproduced by an apparatus such as the television (receiver) ex300 or the set top box (STB) ex217 (that is, functions as the image decoding apparatus of the present invention).
- a reader / recorder ex218 that reads and decodes multiplexed data recorded on a recording medium ex215 such as a DVD or a BD, or encodes a video signal on the recording medium ex215 and, in some cases, multiplexes and writes it with a music signal. It is possible to mount the moving picture decoding apparatus or moving picture encoding apparatus described in the above embodiments. In this case, the reproduced video signal is displayed on the monitor ex219, and the video signal can be reproduced in another device or system using the recording medium ex215 on which the multiplexed data is recorded.
- a moving picture decoding apparatus may be mounted in a set-top box ex217 connected to a cable ex203 for cable television or an antenna ex204 for satellite / terrestrial broadcasting and displayed on the monitor ex219 of the television.
- the moving picture decoding apparatus may be incorporated in the television instead of the set top box.
- FIG. 14 is a diagram showing a television (receiver) ex300 that uses the moving picture decoding method and the moving picture encoding method described in the above embodiments.
- the television ex300 obtains or outputs multiplexed data in which audio data is multiplexed with video data via the antenna ex204 or the cable ex203 that receives the broadcast, and demodulates the received multiplexed data.
- the modulation / demodulation unit ex302 that modulates multiplexed data to be transmitted to the outside, and the demodulated multiplexed data is separated into video data and audio data, or the video data and audio data encoded by the signal processing unit ex306 Is provided with a multiplexing / demultiplexing unit ex303.
- the television ex300 decodes each of the audio data and the video data, or encodes the respective information, the audio signal processing unit ex304, the video signal processing unit ex305 (function as the image encoding device or the image decoding device of the present invention). ), A speaker ex307 for outputting the decoded audio signal, and an output unit ex309 having a display unit ex308 such as a display for displaying the decoded video signal.
- the television ex300 includes an interface unit ex317 including an operation input unit ex312 that receives an input of a user operation.
- the television ex300 includes a control unit ex310 that performs overall control of each unit, and a power supply circuit unit ex311 that supplies power to each unit.
- the interface unit ex317 includes a bridge unit ex313 connected to an external device such as a reader / recorder ex218, a recording unit ex216 such as an SD card, and an external recording unit such as a hard disk.
- a driver ex315 for connecting to a medium, a modem ex316 for connecting to a telephone network, and the like may be included.
- the recording medium ex216 is capable of electrically recording information by using a nonvolatile / volatile semiconductor memory element to be stored.
- Each part of the television ex300 is connected to each other via a synchronous bus.
- the television ex300 receives a user operation from the remote controller ex220 or the like, and demultiplexes the multiplexed data demodulated by the modulation / demodulation unit ex302 by the multiplexing / demultiplexing unit ex303 based on the control of the control unit ex310 having a CPU or the like. Furthermore, in the television ex300, the separated audio data is decoded by the audio signal processing unit ex304, and the separated video data is decoded by the video signal processing unit ex305 using the decoding method described in each of the above embodiments.
- the decoded audio signal and video signal are output from the output unit ex309 to the outside. At the time of output, these signals may be temporarily stored in the buffers ex318, ex319, etc. so that the audio signal and the video signal are reproduced in synchronization. Also, the television ex300 may read multiplexed data from recording media ex215 and ex216 such as a magnetic / optical disk and an SD card, not from broadcasting. Next, a configuration in which the television ex300 encodes an audio signal or a video signal and transmits the signal to the outside or to a recording medium will be described.
- the television ex300 receives a user operation from the remote controller ex220 and the like, encodes an audio signal with the audio signal processing unit ex304, and converts the video signal with the video signal processing unit ex305 based on the control of the control unit ex310. Encoding is performed using the encoding method described in (1).
- the encoded audio signal and video signal are multiplexed by the multiplexing / demultiplexing unit ex303 and output to the outside. When multiplexing, these signals may be temporarily stored in the buffers ex320, ex321, etc. so that the audio signal and the video signal are synchronized.
- a plurality of buffers ex318, ex319, ex320, and ex321 may be provided as illustrated, or one or more buffers may be shared. Further, in addition to the illustrated example, data may be stored in the buffer as a buffer material that prevents system overflow and underflow, for example, between the modulation / demodulation unit ex302 and the multiplexing / demultiplexing unit ex303.
- the television ex300 has a configuration for receiving AV input of a microphone and a camera, and performs encoding processing on the data acquired from them. Also good.
- the television ex300 has been described as a configuration capable of the above-described encoding processing, multiplexing, and external output, but these processing cannot be performed, and only the above-described reception, decoding processing, and external output are possible. It may be a configuration.
- the decoding process or the encoding process may be performed by either the television ex300 or the reader / recorder ex218,
- the reader / recorder ex218 may share with each other.
- FIG. 15 shows a configuration of the information reproducing / recording unit ex400 when data is read from or written to an optical disk.
- the information reproducing / recording unit ex400 includes elements ex401, ex402, ex403, ex404, ex405, ex406, and ex407 described below.
- the optical head ex401 irradiates a laser spot on the recording surface of the recording medium ex215 that is an optical disk to write information, and detects reflected light from the recording surface of the recording medium ex215 to read the information.
- the modulation recording unit ex402 electrically drives a semiconductor laser built in the optical head ex401 and modulates the laser beam according to the recording data.
- the reproduction demodulator ex403 amplifies the reproduction signal obtained by electrically detecting the reflected light from the recording surface by the photodetector built in the optical head ex401, separates and demodulates the signal component recorded on the recording medium ex215, and is necessary To play back information.
- the buffer ex404 temporarily holds information to be recorded on the recording medium ex215 and information reproduced from the recording medium ex215.
- the disk motor ex405 rotates the recording medium ex215.
- the servo controller ex406 moves the optical head ex401 to a predetermined information track while controlling the rotational drive of the disk motor ex405, and performs a laser spot tracking process.
- the system control unit ex407 controls the entire information reproduction / recording unit ex400.
- the system control unit ex407 uses various kinds of information held in the buffer ex404, and generates and adds new information as necessary, and the modulation recording unit ex402, the reproduction demodulation unit This is realized by recording / reproducing information through the optical head ex401 while operating the ex403 and the servo control unit ex406 in a coordinated manner.
- the system control unit ex407 is composed of, for example, a microprocessor, and executes these processes by executing a read / write program.
- the optical head ex401 has been described as irradiating a laser spot.
- a configuration in which higher-density recording is performed using near-field light may be used.
- FIG. 16 shows a schematic diagram of a recording medium ex215 that is an optical disk.
- Guide grooves grooves
- address information indicating the absolute position on the disc is recorded in advance on the information track ex230 by changing the shape of the groove.
- This address information includes information for specifying the position of the recording block ex231 that is a unit for recording data, and the recording block is specified by reproducing the information track ex230 and reading the address information in a recording or reproducing apparatus.
- the recording medium ex215 includes a data recording area ex233, an inner peripheral area ex232, and an outer peripheral area ex234.
- the area used for recording user data is the data recording area ex233, and the inner circumference area ex232 and the outer circumference area ex234 arranged on the inner or outer circumference of the data recording area ex233 are used for specific purposes other than user data recording. Used.
- the information reproducing / recording unit ex400 reads / writes encoded audio data, video data, or multiplexed data obtained by multiplexing these data with respect to the data recording area ex233 of the recording medium ex215.
- an optical disk such as a single-layer DVD or BD has been described as an example.
- the present invention is not limited to these, and an optical disk having a multilayer structure and capable of recording other than the surface may be used.
- an optical disc with a multi-dimensional recording / reproducing structure such as recording information using light of different wavelengths in the same place on the disc, or recording different layers of information from various angles. It may be.
- the car ex210 having the antenna ex205 can receive data from the satellite ex202 and the like, and the moving image can be reproduced on a display device such as the car navigation ex211 that the car ex210 has.
- the configuration of the car navigation ex211 may be, for example, a configuration in which a GPS receiver is added in the configuration illustrated in FIG.
- FIG. 17A is a diagram showing the mobile phone ex114 using the moving picture decoding method and the moving picture encoding method described in the above embodiment.
- the mobile phone ex114 includes an antenna ex350 for transmitting and receiving radio waves to and from the base station ex110, a camera unit ex365 capable of capturing video and still images, a video captured by the camera unit ex365, a video received by the antenna ex350, and the like Is provided with a display unit ex358 such as a liquid crystal display for displaying the decrypted data.
- the mobile phone ex114 further includes a main body unit having an operation key unit ex366, an audio output unit ex357 such as a speaker for outputting audio, an audio input unit ex356 such as a microphone for inputting audio, a captured video,
- an audio input unit ex356 such as a microphone for inputting audio
- a captured video In the memory unit ex367 for storing encoded data or decoded data such as still images, recorded audio, received video, still images, mails, or the like, or an interface unit with a recording medium for storing data
- a slot ex364 is provided.
- the mobile phone ex114 has a power supply circuit part ex361, an operation input control part ex362, and a video signal processing part ex355 with respect to a main control part ex360 that comprehensively controls each part of the main body including the display part ex358 and the operation key part ex366.
- a camera interface unit ex363, an LCD (Liquid Crystal Display) control unit ex359, a modulation / demodulation unit ex352, a multiplexing / demultiplexing unit ex353, an audio signal processing unit ex354, a slot unit ex364, and a memory unit ex367 are connected to each other via a bus ex370. ing.
- the power supply circuit unit ex361 starts up the mobile phone ex114 in an operable state by supplying power from the battery pack to each unit.
- the cellular phone ex114 converts the audio signal collected by the audio input unit ex356 in the voice call mode into a digital audio signal by the audio signal processing unit ex354 based on the control of the main control unit ex360 having a CPU, a ROM, a RAM, and the like. Then, this is subjected to spectrum spread processing by the modulation / demodulation unit ex352, digital-analog conversion processing and frequency conversion processing are performed by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
- the mobile phone ex114 also amplifies the received data received via the antenna ex350 in the voice call mode, performs frequency conversion processing and analog-digital conversion processing, performs spectrum despreading processing by the modulation / demodulation unit ex352, and performs voice signal processing unit After being converted into an analog audio signal by ex354, this is output from the audio output unit ex357.
- the text data of the e-mail input by operating the operation key unit ex366 of the main unit is sent to the main control unit ex360 via the operation input control unit ex362.
- the main control unit ex360 performs spread spectrum processing on the text data in the modulation / demodulation unit ex352, performs digital analog conversion processing and frequency conversion processing in the transmission / reception unit ex351, and then transmits the text data to the base station ex110 via the antenna ex350.
- almost the reverse process is performed on the received data and output to the display unit ex358.
- the video signal processing unit ex355 compresses the video signal supplied from the camera unit ex365 by the moving image encoding method described in the above embodiments. Encode (that is, function as the image encoding apparatus of the present invention), and send the encoded video data to the multiplexing / demultiplexing unit ex353.
- the audio signal processing unit ex354 encodes the audio signal picked up by the audio input unit ex356 while the camera unit ex365 images a video, a still image, etc., and sends the encoded audio data to the multiplexing / separating unit ex353. To do.
- the multiplexing / demultiplexing unit ex353 multiplexes the encoded video data supplied from the video signal processing unit ex355 and the encoded audio data supplied from the audio signal processing unit ex354 by a predetermined method, and is obtained as a result.
- the multiplexed data is subjected to spread spectrum processing by the modulation / demodulation unit (modulation / demodulation circuit unit) ex352, digital-analog conversion processing and frequency conversion processing by the transmission / reception unit ex351, and then transmitted via the antenna ex350.
- the multiplexing / separating unit ex353 separates the multiplexed data into a video data bit stream and an audio data bit stream, and performs video signal processing on the video data encoded via the synchronization bus ex370.
- the encoded audio data is supplied to the audio signal processing unit ex354 while being supplied to the unit ex355.
- the video signal processing unit ex355 decodes the video signal by decoding using the video decoding method corresponding to the video encoding method shown in each of the above embodiments (that is, functions as the image decoding device of the present invention).
- video and still images included in the moving image file linked to the home page are displayed from the display unit ex358 via the LCD control unit ex359.
- the audio signal processing unit ex354 decodes the audio signal, and the audio is output from the audio output unit ex357.
- the terminal such as the mobile phone ex114 is referred to as a transmission terminal having only an encoder and a receiving terminal having only a decoder.
- a transmission terminal having only an encoder
- a receiving terminal having only a decoder.
- multiplexed data in which music data or the like is multiplexed with video data is received and transmitted, but data in which character data or the like related to video is multiplexed in addition to audio data It may be video data itself instead of multiplexed data.
- the moving picture encoding method or the moving picture decoding method shown in each of the above embodiments can be used in any of the above-described devices / systems. The described effect can be obtained.
- multiplexed data obtained by multiplexing audio data or the like with video data is configured to include identification information indicating which standard the video data conforms to.
- identification information indicating which standard the video data conforms to.
- FIG. 18 is a diagram showing a structure of multiplexed data.
- the multiplexed data is obtained by multiplexing one or more of a video stream, an audio stream, a presentation graphics stream (PG), and an interactive graphics stream.
- the video stream indicates the main video and sub-video of the movie
- the audio stream (IG) indicates the main audio portion of the movie and the sub-audio mixed with the main audio
- the presentation graphics stream indicates the subtitles of the movie.
- the main video indicates a normal video displayed on the screen
- the sub-video is a video displayed on a small screen in the main video.
- the interactive graphics stream indicates an interactive screen created by arranging GUI components on the screen.
- the video stream is encoded by the moving image encoding method or apparatus shown in the above embodiments, or the moving image encoding method or apparatus conforming to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1. ing.
- the audio stream is encoded by a method such as Dolby AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, or linear PCM.
- Each stream included in the multiplexed data is identified by PID. For example, 0x1011 for video streams used for movie images, 0x1100 to 0x111F for audio streams, 0x1200 to 0x121F for presentation graphics, 0x1400 to 0x141F for interactive graphics streams, 0x1B00 to 0x1B1F are assigned to video streams used for sub-pictures, and 0x1A00 to 0x1A1F are assigned to audio streams used for sub-audio mixed with the main audio.
- FIG. 19 is a diagram schematically showing how multiplexed data is multiplexed.
- a video stream ex235 composed of a plurality of video frames and an audio stream ex238 composed of a plurality of audio frames are converted into PES packet sequences ex236 and ex239, respectively, and converted into TS packets ex237 and ex240.
- the data of the presentation graphics stream ex241 and interactive graphics ex244 are converted into PES packet sequences ex242 and ex245, respectively, and further converted into TS packets ex243 and ex246.
- the multiplexed data ex247 is configured by multiplexing these TS packets into one stream.
- FIG. 20 shows in more detail how the video stream is stored in the PES packet sequence.
- the first level in FIG. 20 shows a video frame sequence of the video stream.
- the second level shows a PES packet sequence.
- a plurality of Video Presentation Units in a video stream are divided into pictures, stored in the payload of the PES packet.
- Each PES packet has a PES header, and a PTS (Presentation Time-Stamp) that is a display time of a picture and a DTS (Decoding Time-Stamp) that is a decoding time of a picture are stored in the PES header.
- PTS Presentation Time-Stamp
- DTS Decoding Time-Stamp
- FIG. 21 shows the format of the TS packet that is finally written in the multiplexed data.
- the TS packet is a 188-byte fixed-length packet composed of a 4-byte TS header having information such as a PID for identifying a stream and a 184-byte TS payload for storing data.
- the PES packet is divided and stored in the TS payload.
- a 4-byte TP_Extra_Header is added to a TS packet, forms a 192-byte source packet, and is written in multiplexed data.
- TP_Extra_Header information such as ATS (Arrival_Time_Stamp) is described.
- ATS indicates the transfer start time of the TS packet to the PID filter of the decoder.
- source packets are arranged as shown in the lower part of FIG. 21, and the number incremented from the head of the multiplexed data is called SPN (source packet number).
- TS packets included in the multiplexed data include PAT (Program Association Table), PMT (Program Map Table), PCR (Program Clock Reference), and the like in addition to each stream such as video / audio / caption.
- PAT indicates what the PID of the PMT used in the multiplexed data is, and the PID of the PAT itself is registered as 0.
- the PMT has the PID of each stream such as video / audio / subtitles included in the multiplexed data and the attribute information of the stream corresponding to each PID, and has various descriptors related to the multiplexed data.
- the descriptor includes copy control information for instructing permission / non-permission of copying of multiplexed data.
- the PCR corresponds to the ATS in which the PCR packet is transferred to the decoder. Contains STC time information.
- FIG. 22 is a diagram for explaining the data structure of the PMT in detail.
- a PMT header describing the length of data included in the PMT is arranged at the head of the PMT.
- a plurality of descriptors related to multiplexed data are arranged.
- the copy control information and the like are described as descriptors.
- a plurality of pieces of stream information regarding each stream included in the multiplexed data are arranged.
- the stream information includes a stream descriptor in which a stream type, a stream PID, and stream attribute information (frame rate, aspect ratio, etc.) are described to identify a compression codec of the stream.
- the multiplexed data is recorded together with the multiplexed data information file.
- the multiplexed data information file is management information of multiplexed data, has one-to-one correspondence with the multiplexed data, and includes multiplexed data information, stream attribute information, and an entry map.
- the multiplexed data information includes a system rate, a reproduction start time, and a reproduction end time.
- the system rate indicates a maximum transfer rate of multiplexed data to a PID filter of a system target decoder described later.
- the ATS interval included in the multiplexed data is set to be equal to or less than the system rate.
- the playback start time is the PTS of the first video frame of the multiplexed data
- the playback end time is set by adding the playback interval for one frame to the PTS of the video frame at the end of the multiplexed data.
- attribute information about each stream included in the multiplexed data is registered for each PID.
- the attribute information has different information for each video stream, audio stream, presentation graphics stream, and interactive graphics stream.
- the video stream attribute information includes the compression codec used to compress the video stream, the resolution of the individual picture data constituting the video stream, the aspect ratio, and the frame rate. It has information such as how much it is.
- the audio stream attribute information includes the compression codec used to compress the audio stream, the number of channels included in the audio stream, the language supported, and the sampling frequency. With information. These pieces of information are used for initialization of the decoder before the player reproduces it.
- the stream type included in the PMT is used.
- video stream attribute information included in the multiplexed data information is used.
- the video encoding shown in each of the above embodiments for the stream type or video stream attribute information included in the PMT.
- FIG. 25 shows steps of the moving picture decoding method according to the present embodiment.
- step exS100 the stream type included in the PMT or the video stream attribute information included in the multiplexed data information is acquired from the multiplexed data.
- step exS101 it is determined whether or not the stream type or the video stream attribute information indicates multiplexed data generated by the moving picture encoding method or apparatus described in the above embodiments. To do.
- step exS102 the above embodiments are performed. Decoding is performed by the moving picture decoding method shown in the form.
- the conventional information Decoding is performed by a moving image decoding method compliant with the standard.
- FIG. 26 shows the configuration of an LSI ex500 that is made into one chip.
- the LSI ex500 includes elements ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508, and ex509 described below, and each element is connected via a bus ex510.
- the power supply circuit unit ex505 is activated to an operable state by supplying power to each unit when the power supply is on.
- the LSI ex500 when performing the encoding process, performs the microphone ex117 and the camera ex113 by the AV I / O ex509 based on the control of the control unit ex501 including the CPU ex502, the memory controller ex503, the stream controller ex504, the drive frequency control unit ex512, and the like.
- the AV signal is input from the above.
- the input AV signal is temporarily stored in an external memory ex511 such as SDRAM.
- the accumulated data is divided into a plurality of times as appropriate according to the processing amount and the processing speed and sent to the signal processing unit ex507, and the signal processing unit ex507 encodes an audio signal and / or video. Signal encoding is performed.
- the encoding process of the video signal is the encoding process described in the above embodiments.
- the signal processing unit ex507 further performs processing such as multiplexing the encoded audio data and the encoded video data according to circumstances, and outputs the result from the stream I / Oex 506 to the outside.
- the output multiplexed data is transmitted to the base station ex107 or written to the recording medium ex215. It should be noted that data should be temporarily stored in the buffer ex508 so as to be synchronized when multiplexing.
- the memory ex511 is described as an external configuration of the LSI ex500.
- a configuration included in the LSI ex500 may be used.
- the number of buffers ex508 is not limited to one, and a plurality of buffers may be provided.
- the LSI ex500 may be made into one chip or a plurality of chips.
- control unit ex501 includes the CPU ex502, the memory controller ex503, the stream controller ex504, the drive frequency control unit ex512, and the like, but the configuration of the control unit ex501 is not limited to this configuration.
- the signal processing unit ex507 may further include a CPU.
- the CPU ex502 may be configured to include a signal processing unit ex507 or, for example, an audio signal processing unit that is a part of the signal processing unit ex507.
- the control unit ex501 is configured to include a signal processing unit ex507 or a CPU ex502 having a part thereof.
- LSI LSI
- IC system LSI
- super LSI ultra LSI depending on the degree of integration
- the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- FIG. 27 shows a configuration ex800 in the present embodiment.
- the drive frequency switching unit ex803 sets the drive frequency high when the video data is generated by the moving image encoding method or apparatus described in the above embodiments.
- the decoding processing unit ex801 that executes the moving picture decoding method described in each of the above embodiments is instructed to decode the video data.
- the video data is video data compliant with the conventional standard, compared to the case where the video data is generated by the moving picture encoding method or apparatus shown in the above embodiments, Set the drive frequency low. Then, it instructs the decoding processing unit ex802 compliant with the conventional standard to decode the video data.
- the drive frequency switching unit ex803 includes the CPU ex502 and the drive frequency control unit ex512 in FIG.
- the decoding processing unit ex801 that executes the moving picture decoding method described in each of the above embodiments and the decoding processing unit ex802 that complies with the conventional standard correspond to the signal processing unit ex507 in FIG.
- the CPU ex502 identifies which standard the video data conforms to. Then, based on the signal from the CPU ex502, the drive frequency control unit ex512 sets the drive frequency. Further, based on the signal from the CPU ex502, the signal processing unit ex507 decodes the video data.
- the identification of the video data for example, it is conceivable to use the identification information described in the third embodiment.
- the identification information is not limited to that described in Embodiment 3, and any information that can identify which standard the video data conforms to may be used. For example, it is possible to identify which standard the video data conforms to based on an external signal that identifies whether the video data is used for a television or a disk. In some cases, identification may be performed based on such an external signal. In addition, the selection of the driving frequency in the CPU ex502 may be performed based on, for example, a lookup table in which video data standards and driving frequencies are associated with each other as shown in FIG. The look-up table is stored in the buffer ex508 or the internal memory of the LSI, and the CPU ex502 can select the drive frequency by referring to the look-up table.
- FIG. 28 shows steps for executing the method of the present embodiment.
- the signal processing unit ex507 acquires identification information from the multiplexed data.
- the CPU ex502 identifies whether the video data is generated by the encoding method or apparatus described in each of the above embodiments based on the identification information.
- the CPU ex502 sends a signal for setting the drive frequency high to the drive frequency control unit ex512. Then, the drive frequency control unit ex512 sets a high drive frequency.
- step exS203 the CPU ex502 drives the signal for setting the drive frequency low. This is sent to the frequency control unit ex512. Then, in the drive frequency control unit ex512, the drive frequency is set to be lower than that in the case where the video data is generated by the encoding method or apparatus described in the above embodiments.
- the power saving effect can be further enhanced by changing the voltage applied to the LSI ex500 or the device including the LSI ex500 in conjunction with the switching of the driving frequency. For example, when the drive frequency is set low, it is conceivable that the voltage applied to the LSI ex500 or the device including the LSI ex500 is set low as compared with the case where the drive frequency is set high.
- the setting method of the driving frequency may be set to a high driving frequency when the processing amount at the time of decoding is large, and to a low driving frequency when the processing amount at the time of decoding is small. It is not limited to the method.
- the amount of processing for decoding video data compliant with the MPEG4-AVC standard is larger than the amount of processing for decoding video data generated by the moving picture encoding method or apparatus described in the above embodiments. It is conceivable that the setting of the driving frequency is reversed to that in the case described above.
- the method for setting the drive frequency is not limited to the configuration in which the drive frequency is lowered.
- the voltage applied to the LSIex500 or the apparatus including the LSIex500 is set high.
- the driving of the CPU ex502 is stopped.
- the CPU ex502 is temporarily stopped because there is room in processing. Is also possible. Even when the identification information indicates that the video data is generated by the moving image encoding method or apparatus described in each of the above embodiments, if there is a margin for processing, the CPU ex502 is temporarily driven. It can also be stopped. In this case, it is conceivable to set the stop time shorter than in the case where the video data conforms to the conventional standards such as MPEG-2, MPEG4-AVC, and VC-1.
- a plurality of video data that conforms to different standards may be input to the above-described devices and systems such as a television and a mobile phone.
- the signal processing unit ex507 of the LSI ex500 needs to support a plurality of standards in order to be able to decode even when a plurality of video data complying with different standards is input.
- the signal processing unit ex507 corresponding to each standard is used individually, there is a problem that the circuit scale of the LSI ex500 increases and the cost increases.
- a decoding processing unit for executing the moving picture decoding method shown in each of the above embodiments and a decoding conforming to a standard such as MPEG-2, MPEG4-AVC, or VC-1
- the processing unit is partly shared.
- An example of this configuration is shown as ex900 in FIG. 30A.
- the moving picture decoding method shown in each of the above embodiments and the moving picture decoding method compliant with the MPEG4-AVC standard are processed in processes such as entropy coding, inverse quantization, deblocking filter, and motion compensation. Some contents are common.
- the decoding processing unit ex902 corresponding to the MPEG4-AVC standard is shared, and for the other processing content unique to the present invention not corresponding to the MPEG4-AVC standard, the dedicated decoding processing unit ex901 is used.
- Configuration is conceivable.
- a dedicated decoding processing unit ex901 is used for inter prediction, and other entropy coding, deblocking filter, orthogonal transform, quantization, and the like. For any or all of these processes, it is conceivable to share the decoding processing unit.
- the decoding processing unit for executing the moving picture decoding method described in each of the above embodiments is shared, and the processing content specific to the MPEG4-AVC standard As for, a configuration using a dedicated decoding processing unit may be used.
- ex1000 in FIG. 30B shows another example in which processing is partially shared.
- a dedicated decoding processing unit ex1001 corresponding to processing content unique to the present invention
- a dedicated decoding processing unit ex1002 corresponding to processing content specific to other conventional standards
- a moving picture decoding method of the present invention A common decoding processing unit ex1003 corresponding to processing contents common to other conventional video decoding methods is used.
- the dedicated decoding processing units ex1001 and ex1002 are not necessarily specialized in the processing content specific to the present invention or other conventional standards, and may be capable of executing other general-purpose processing.
- the configuration of the present embodiment can be implemented by LSI ex500.
- the circuit scale of the LSI is reduced, and the cost is reduced. It is possible to reduce.
- the image encoding method and the image decoding method according to the present invention can be used for, for example, a television, a digital video recorder, a car navigation, a mobile phone, a digital camera, or a digital video camera.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
La présente invention porte sur un procédé de codage d'image dans lequel une image est codée au moyen d'un vecteur de mouvement conservé dans une mémoire sans évaluer si la structure du vecteur de mouvement est une structure de trame ou une structure de champ. Dans ce procédé de codage d'image : lorsque la structure d'un premier bloc à coder est différente d'une structure prédéterminée qui est soit la structure de champ ou la structure de trame, un vecteur de mouvement du premier bloc à coder est ajusté de sorte que le vecteur de mouvement corresponde à la structure prédéterminée (S301), le vecteur de mouvement est écrit dans une mémoire (S302), le vecteur de mouvement est lu à partir de la mémoire (S303) ; lorsque la structure d'un deuxième bloc à coder est différente d'une structure prédéterminée, le vecteur de mouvement de lecture est réglé de sorte que le vecteur de mouvement de lecture corresponde à la structure du deuxième bloc à coder (S304), et le deuxième bloc à coder est codé au moyen du vecteur de mouvement (S305).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161431920P | 2011-01-12 | 2011-01-12 | |
US61/431,920 | 2011-01-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012096157A1 true WO2012096157A1 (fr) | 2012-07-19 |
Family
ID=46507066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/000096 WO2012096157A1 (fr) | 2011-01-12 | 2012-01-10 | Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2012096157A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051081A1 (fr) * | 2012-09-28 | 2014-04-03 | 三菱電機株式会社 | Dispositif de codage vidéo, dispositif de décodage vidéo, procédé de codage vidéo, et procédé de décodage vidéo |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004194274A (ja) * | 2002-07-26 | 2004-07-08 | Matsushita Electric Ind Co Ltd | 動画像符号化方法、動画像復号化方法および記録媒体 |
JP2008048199A (ja) * | 2006-08-17 | 2008-02-28 | Fujitsu Ltd | 動き予測処理装置、画像符号化装置および画像復号化装置 |
JP2009522977A (ja) * | 2006-01-09 | 2009-06-11 | エルジー エレクトロニクス インコーポレイティド | 映像信号のエンコーディング/デコーディング方法 |
-
2012
- 2012-01-10 WO PCT/JP2012/000096 patent/WO2012096157A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004194274A (ja) * | 2002-07-26 | 2004-07-08 | Matsushita Electric Ind Co Ltd | 動画像符号化方法、動画像復号化方法および記録媒体 |
JP2009522977A (ja) * | 2006-01-09 | 2009-06-11 | エルジー エレクトロニクス インコーポレイティド | 映像信号のエンコーディング/デコーディング方法 |
JP2008048199A (ja) * | 2006-08-17 | 2008-02-28 | Fujitsu Ltd | 動き予測処理装置、画像符号化装置および画像復号化装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014051081A1 (fr) * | 2012-09-28 | 2014-04-03 | 三菱電機株式会社 | Dispositif de codage vidéo, dispositif de décodage vidéo, procédé de codage vidéo, et procédé de décodage vidéo |
US20150271502A1 (en) * | 2012-09-28 | 2015-09-24 | Mitsubishi Electric Corporation | Video encoding device, video decoding device, video encoding method, and video decoding method |
JPWO2014051081A1 (ja) * | 2012-09-28 | 2016-08-25 | 三菱電機株式会社 | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6112320B2 (ja) | 動画像復号化方法および動画像符号化方法 | |
JP6168365B2 (ja) | 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 | |
JP6394966B2 (ja) | 時間動きベクトル予測を用いた、符号化方法、復号方法、符号化装置、及び、復号装置 | |
JP6210248B2 (ja) | 動画像符号化方法及び動画像符号化装置 | |
JP6422011B2 (ja) | 動画像符号化方法、動画像復号化方法、動画像符号化装置および動画像復号化装置 | |
WO2012117728A1 (fr) | Procédé de codage d'images vidéo, procédé de décodage d'images vidéo, dispositif de codage d'images vidéo, dispositif de décodage d'images vidéo et dispositif de codage/décodage d'images vidéo | |
JP6112418B2 (ja) | 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置 | |
JP6414712B2 (ja) | 多数の参照ピクチャを用いる動画像符号化方法、動画像復号方法、動画像符号化装置、および動画像復号方法 | |
JP6156648B2 (ja) | 動画像符号化方法、動画像符号化装置、動画像復号化方法、および、動画像復号化装置 | |
JP6304571B2 (ja) | 動画像復号化方法および動画像復号化装置 | |
WO2012023281A1 (fr) | Procédé de décodage d'image vidéo, procédé de codage d'image vidéo, appareil de décodage d'image vidéo, appareil de codage d'image vidéo | |
JP2014512705A (ja) | 画像符号化方法、画像復号方法、画像符号化装置、及び、画像復号装置 | |
WO2013001749A1 (fr) | Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image, dispositif de décodage d'image et dispositif de codage/décodage d'image | |
JP6376470B2 (ja) | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 | |
WO2012120840A1 (fr) | Procédé de décodage d'image, procédé de codage d'image, dispositif de décodage d'image et dispositif de codage d'image | |
WO2013001813A1 (fr) | Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image | |
JP6365924B2 (ja) | 画像復号方法及び画像復号装置 | |
JP6187887B2 (ja) | 符号化方法および符号化装置 | |
WO2012096157A1 (fr) | Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image et dispositif de décodage d'image | |
WO2015001700A1 (fr) | Procédé de codage d'image et dispositif de codage d'image | |
WO2012042810A1 (fr) | Procédé de codage d'image, procédé de décodage d'image, dispositif de codage d'image, dispositif de décodage d'image et système de traitement d'image | |
WO2013046616A1 (fr) | Appareil de codage d'image, appareil de décodage d'image, procédé de codage d'image et procédé de décodage d'image | |
WO2012086166A1 (fr) | Procédé de codage d'image et procédé de décodage d'image |
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: 12734148 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12734148 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |