WO2014103774A1 - 画像処理装置および方法 - Google Patents
画像処理装置および方法 Download PDFInfo
- Publication number
- WO2014103774A1 WO2014103774A1 PCT/JP2013/083598 JP2013083598W WO2014103774A1 WO 2014103774 A1 WO2014103774 A1 WO 2014103774A1 JP 2013083598 W JP2013083598 W JP 2013083598W WO 2014103774 A1 WO2014103774 A1 WO 2014103774A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion information
- unit
- block
- encoding
- image
- 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/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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/187—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
Definitions
- the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of suppressing a reduction in encoding efficiency.
- MPEG2 (ISO / IEC 13818-2) is defined as a general-purpose image encoding system, and is a standard that covers both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images.
- MPEG2 is currently widely used in a wide range of applications for professional and consumer applications.
- a code amount (bit rate) of 4 to 8 Mbps is assigned to an interlaced scanned image having a standard resolution of 720 ⁇ 480 pixels.
- a high resolution interlaced scanned image having 1920 ⁇ 1088 pixels is assigned a code amount (bit rate) of 18 to 22 Mbps.
- bit rate code amount
- MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but did not support encoding methods with a lower code amount (bit rate) than MPEG1, that is, a higher compression rate.
- bit rate code amount
- MPEG4 encoding system has been standardized accordingly.
- the standard was approved as an international standard in December 1998 as ISO / IEC 14496-2.
- H.26L International Telecommunication Union Telecommunication Standardization Sector
- Q6 / 16 VCEG Video Coding Expert Group
- H.26L is known to achieve higher encoding efficiency than the conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of calculation is required for encoding and decoding.
- Joint ⁇ ⁇ ⁇ ⁇ Model of Enhanced-Compression Video Coding has been implemented based on this H.26L and incorporating functions not supported by H.26L to achieve higher coding efficiency. It was broken.
- AVC Advanced Video Coding
- HEVC High Efficiency Video Video Coding
- JCTVC Joint Collaboration Collaboration Team Video Coding
- ISO / IEC ISO / IEC
- the standardization of the encoding method called is being advanced.
- CommitteeCommitdraft which is the first draft version specification, was issued in February 2012 (see Non-Patent Document 1, for example).
- the conventional image encoding methods such as MPEG-2 and AVC have a scalability function for encoding an image by layering it into a plurality of layers.
- a mobile phone or other low-processing-capacity terminal transmits image compression information of only the base layer (base layer), and reproduces a moving image with low spatiotemporal resolution or poor image quality.
- base layer the image compression information of the enhancement layer is transmitted, and the space-time resolution is high.
- AMVP Advanced Motion Vector Prediction
- Merge Merge
- This disclosure has been made in view of such a situation, and is intended to suppress a reduction in encoding efficiency.
- One aspect of the present technology provides hierarchical image encoded data obtained by encoding a plurality of hierarchized image data, and motion information encoded data obtained by encoding the motion information used for encoding the image data.
- the motion information encoding received by the receiving unit using the motion information of the peripheral block of a different layer from the current block when the motion information of the receiving unit and the peripheral block of the same layer as the current block is unavailable A motion information decoding unit that decodes data, and the motion information obtained by decoding the motion information encoded data by the motion information decoding unit, to decode the hierarchical image encoded data received by the receiving unit
- An image processing apparatus including a decoding unit.
- the motion information decoding unit uses the motion information of the peripheral block to encode the motion information used for encoding the image data when the motion information of the peripheral block in the same layer as the current block is available. Reconstructing the predicted motion information used, using the reconstructed predicted motion information, decoding the motion information encoded data, and when motion information of neighboring blocks in the same layer as the current block is unavailable, Using the motion information of peripheral blocks in a layer different from the current block, the predicted motion information used for encoding the motion information used for encoding the image data is reconstructed, and the reconstructed predicted motion information is used. Thus, the motion information encoded data can be decoded.
- the motion information decoding unit corresponds to the peripheral block in a layer different from the current block, instead of unavailable motion information of the peripheral block in the same layer as the current block in AMVP (Advanced Motion Vector Prediction) mode. Available motion information of neighboring blocks can be used as a candidate for the predicted motion information.
- AMVP Advanced Motion Vector Prediction
- the motion information decoding unit corresponds to the peripheral block in a layer different from the current block, instead of the unusable motion information in which the scaling process in the time axis direction of the peripheral block in the same layer as the current block is performed.
- Available motion information that is subjected to scaling processing in the time axis direction of peripheral blocks is used as a candidate for the predicted motion information, and unavailable data that is not subjected to scaling processing in the time axis direction of peripheral blocks in the same layer as the current block.
- available motion information of a peripheral block corresponding to the peripheral block in a layer different from the current block and not subjected to scaling processing in the time axis direction can be used as a candidate for the predicted motion information. .
- the motion information decoding unit can perform the scaling process in the spatial direction on the motion information of peripheral blocks in a layer different from the current block according to the resolution ratio between layers.
- the motion information decoding unit compensates for a missing number in the prediction motion information candidate list in the merge mode with available motion information of a peripheral block corresponding to the peripheral block in a layer different from the current block. Can do.
- the receiving unit further receives, in the candidate list, control information that specifies whether to use motion information of a block in the same layer as the current block and to use motion information of a block in a layer different from the current block. be able to.
- the motion information decoding unit based on the control information received by the receiving unit, when using motion information of blocks in the same layer as the current block for the candidate list, to compensate for missing numbers in the candidate list,
- the candidate list is compensated for missing numbers in the same layer as the current block.
- Block motion information can be used.
- the motion information decoding unit can compensate for the missing number in the candidate list by using motion information of a block different from the neighboring block that is a collocated block in a layer different from the current block.
- One aspect of the present technology also includes hierarchical image encoded data obtained by encoding a plurality of hierarchized image data, and motion information encoded data obtained by encoding the motion information used for encoding the image data.
- the received motion information encoded data is decoded using the motion information of the peripheral block in a layer different from the current block, It is an image processing method for decoding received hierarchical image encoded data using motion information obtained by decoding the motion information encoded data.
- an encoding unit that encodes image data that has been hierarchized using motion information, and the motion information of peripheral blocks in the same layer as the current block are unavailable, the current block A motion information encoding unit that encodes the motion information used for encoding the image data by the encoding unit using motion information of peripheral blocks in a different layer from the encoding unit, and the image data by the encoding unit
- An image processing apparatus comprising: a transmission unit that transmits hierarchical image encoded data obtained by encoding the motion information and the motion information encoded data obtained by encoding the motion information by the motion information encoding unit It is.
- the motion information encoding unit generates predicted motion information using the motion information of the peripheral block when the motion information of the peripheral block in the same layer as the current block is available, and uses the generated predicted motion information
- predicted motion information is generated using motion information of a neighboring block in a layer different from the current block
- the motion information can be encoded using the predicted motion information.
- the motion information encoding unit corresponds to the peripheral block in a layer different from the current block, instead of the unusable motion information of the peripheral block in the same layer as the current block in AMVP (Advanced Motion Vector Prediction) mode.
- Available motion information of neighboring blocks to be used can be a candidate for the predicted motion information.
- the motion information encoding unit corresponds to the peripheral block in a layer different from the current block, instead of the unusable motion information in which the temporal block scaling process is performed on the peripheral block in the same layer as the current block.
- An available motion information that is subjected to scaling processing in the time axis direction of the peripheral block to be used as a candidate for the predicted motion information, and that is not subjected to scaling processing in the time axis direction of the peripheral block in the same layer as the current block instead of such motion information, available motion information that is not subjected to scaling processing in the time axis direction of peripheral blocks corresponding to the peripheral blocks in a layer different from that of the current block may be used as the predicted motion information candidates. it can.
- the motion information encoding unit can perform the scaling process in the spatial direction on the motion information of peripheral blocks in a layer different from the current block according to the resolution ratio between layers.
- the motion information encoding unit compensates for a missing number in the prediction motion information candidate list in the merge mode with available motion information of a peripheral block corresponding to the peripheral block in a layer different from the current block. be able to.
- the transmission unit further transmits, to the candidate list, control information that specifies whether to use motion information of a block in the same layer as the current block or to use motion information of a block in a layer different from the current block. can do.
- the motion information encoding unit uses the motion information of a block in a layer different from the current block to compensate for the missing number in the candidate list.
- motion information of a block having a layer different from that of the current block is used in the candidate list, motion information of a block of the same layer as the current block can be used to compensate for a missing number in the candidate list.
- the motion information encoding unit can compensate for the missing number in the candidate list by using motion information of a block different from the neighboring block that is a collocated block in a layer different from the current block.
- a layer different from the current block is used.
- the motion information used for encoding the image data is encoded using the motion information of the peripheral blocks of the image, the hierarchical image encoded data obtained by encoding the image data, and the motion information is encoded.
- This is an image processing method for transmitting motion information encoded data obtained by converting into motion information.
- hierarchical image encoded data obtained by encoding multiple hierarchized image data and motion information encoded data obtained by encoding motion information used for encoding the image data include: When the motion information of the peripheral block in the same layer as the current block is unavailable, the motion information of the peripheral block in a layer different from the current block is used, the received motion information encoded data is decoded, and the motion information The received hierarchical image encoded data is decoded using the motion information obtained by decoding the encoded data.
- the peripheral of a layer different from the current block is used, the motion information used to encode the image data is encoded, the hierarchical image encoded data obtained by encoding the image data, and the motion information are encoded.
- the motion information encoded data thus transmitted is transmitted.
- an image can be encoded and decoded.
- a reduction in encoding efficiency can be suppressed.
- FIG. 12 It is a figure explaining the structural example of a coding unit. It is a figure explaining the example of spatial scalable encoding. It is a figure explaining the example of temporal scalable encoding. It is a figure explaining the example of the scalable encoding of a signal noise ratio. It is a figure explaining AMVP. It is a figure explaining merge (Merge). It is a figure explaining encoding of ID of a candidate list. It is a figure explaining filling of a missing number list. It is a figure explaining the case of cropping. It is a figure explaining utilization of the motion information of a base layer. It is a figure which shows the example of the syntax of a sequence parameter set.
- FIG. 12 is a diagram subsequent to FIG.
- FIG. 11 illustrating an example of the syntax of the sequence parameter set. It is a figure which shows the example of a slice header. It is a figure following FIG. 13 which shows the example of a slice header. It is a figure following FIG. 14 which shows the example of a slice header. It is a block diagram which shows the main structural examples of a scalable encoding apparatus. It is a block diagram which shows the main structural examples of a base layer image coding part. It is a block diagram which shows the main structural examples of an enhancement layer image coding part. It is a block diagram which shows the main structural examples of a motion information encoding part. It is a flowchart explaining the example of the flow of an encoding process.
- FIG. 26 It is a flowchart explaining the example of the flow of a base layer encoding process. It is a flowchart explaining the example of the flow of an enhancement layer encoding process. It is a flowchart explaining the example of the flow of a motion prediction and compensation process. It is a flowchart explaining the example of the flow of a motion information encoding process. It is a flowchart explaining the example of the flow of AMVP processing. It is a flowchart explaining the example of the flow of a spatial prediction motion information search process. It is a flowchart following FIG. 26 for explaining an example of the flow of the spatial prediction motion information search process. It is a flowchart explaining the other example of the flow of a spatial prediction motion information search process.
- FIG. 26 for explaining an example of the flow of the spatial prediction motion information search process.
- FIG. 29 is a flowchart following FIG. 28 for explaining another example of the flow of the spatial prediction motion information search process. It is a flowchart explaining the example of the flow of a time prediction motion information search process. It is a flowchart explaining the example of the flow of a merge process. It is a flowchart explaining the example of the flow of a base layer motion information selection process. It is a flowchart explaining the example of the flow of a layer control process. It is a block diagram which shows the main structural examples of a scalable decoding apparatus. It is a block diagram which shows the main structural examples of a base layer image decoding part. It is a block diagram which shows the main structural examples of an enhancement layer image decoding part.
- FIG. 20 is a block diagram which shows the main structural examples of a motion information decoding part. It is a flowchart explaining the example of the flow of a decoding process. It is a flowchart explaining the example of the flow of a base layer decoding process. It is a flowchart explaining the example of the flow of an enhancement layer decoding process. It is a flowchart explaining the example of the flow of a prediction process. It is a flowchart explaining the example of the flow of a motion information decoding process. It is a figure which shows the example of a hierarchy image coding system. It is a figure which shows the example of a multiview image encoding system. And FIG. 20 is a block diagram illustrating a main configuration example of a computer.
- ⁇ Coding unit> In the AVC (Advanced Video Coding) method, a hierarchical structure is defined by macroblocks and sub-macroblocks. However, a macroblock of 16 pixels ⁇ 16 pixels is not optimal for a large image frame such as UHD (Ultra High Definition; 4000 pixels ⁇ 2000 pixels), which is a target of the next generation encoding method.
- UHD Ultra High Definition
- a coding unit (Coding Unit)) is defined.
- CU also called Coding Tree Block (CTB)
- CTB Coding Tree Block
- the maximum size (LCU (Largest Coding Unit)) and the minimum size (SCU (Smallest Coding Unit)) are specified.
- the LCU size is 128 and the maximum hierarchical depth is 5.
- split_flag is “1”
- the 2N ⁇ 2N size CU is divided into N ⁇ N size CUs that are one level below.
- the CU is divided into prediction units (Prediction Units (PU)) that are regions (partial regions of images in units of pictures) that are processing units of intra or inter prediction, and are regions that are processing units of orthogonal transformation It is divided into transform units (Transform Unit (TU)), which is (a partial area of an image in units of pictures).
- Prediction Units PU
- transform Unit Transform Unit
- a macro block in the AVC method corresponds to an LCU
- a block (sub block) corresponds to a CU. Then you can think.
- a motion compensation block in the AVC method can be considered to correspond to a PU.
- the size of the LCU of the highest hierarchy is generally set larger than the macro block of the AVC method, for example, 128 ⁇ 128 pixels.
- the LCU also includes a macroblock in the AVC scheme
- the CU also includes a block (sub-block) in the AVC scheme.
- “block” used in the following description indicates an arbitrary partial area in the picture, and its size, shape, characteristics, and the like are not limited. That is, the “block” includes an arbitrary area (processing unit) such as a TU, PU, SCU, CU, LCU, sub-block, macroblock, or slice. Of course, other partial areas (processing units) are also included. When it is necessary to limit the size, processing unit, etc., it will be described as appropriate.
- JM Job Model
- JM JM
- High Complexity Mode Low Complexity Mode.
- a cost function value for each prediction mode Mode is calculated, and a prediction mode that minimizes the cost function value is selected as the optimum mode for the block or macroblock.
- ⁇ is a whole set of candidate modes for encoding the block or macroblock
- D is a difference energy between the decoded image and the input image when encoded in the prediction mode.
- ⁇ is a Lagrange undetermined multiplier given as a function of the quantization parameter.
- R is the total code amount when encoding is performed in this mode, including orthogonal transform coefficients.
- D is the difference energy between the predicted image and the input image, unlike the case of High Complexity Mode.
- QP2Quant QP
- HeaderBit is a code amount related to information belonging to Header, such as a motion vector and mode, which does not include an orthogonal transform coefficient.
- Scalable encoding is a scheme in which an image is divided into a plurality of layers (hierarchical) and encoded for each layer.
- one image is divided into a plurality of images (layers) based on predetermined parameters.
- each layer is composed of difference data so that redundancy is reduced.
- a base layer and an enhancement layer an image with lower quality than the original image can be obtained with only the base layer data, and the base layer data and the enhancement layer data are combined.
- the original image that is, a high quality image
- image compression information of only the base layer (base layer) is transmitted, and a moving image with low spatiotemporal resolution or poor image quality is played
- base layer For terminals with high processing power, such as televisions and personal computers, in addition to the base layer (base layer), image enhancement information of the enhancement layer (enhancement layer) is transmitted.
- Image compression information corresponding to the capabilities of the terminal and the network can be transmitted from the server without performing transcoding processing, such as playing a moving image with high image quality.
- spatial scalability As a parameter for giving such scalability, for example, there is a spatial resolution as shown in FIG. 2 (spatial scalability). In the case of this spatial scalability (spatial scalability), the resolution is different for each layer. That is, as shown in FIG. 2, enhancement in which each picture is synthesized with a base layer having a spatially lower resolution than the original image and the base layer image to obtain the original image (original spatial resolution). Layered into two layers. Of course, this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
- temporal resolution as shown in FIG. 3 (temporal scalability).
- the frame rate is different for each layer. That is, in this case, as shown in FIG. 3, layers are layered at different frame rates, and by adding a high frame rate layer to a low frame rate layer, a higher frame rate moving image is obtained. By adding all the layers, the original moving image (original frame rate) can be obtained.
- This number of hierarchies is an example, and can be hierarchized to an arbitrary number of hierarchies.
- each picture has two layers of enhancement layers in which the original image (original SNR) is obtained by combining the base layer with a lower SNR than the original image and the base layer image. Is layered.
- the base layer image compression information information related to the low PSNR image is transmitted, and the enhancement layer (enhancement layer) image compression information is added to this to reconstruct a high PSNR image. It is possible.
- this number of hierarchies is an example, and the number of hierarchies can be hierarchized.
- the base layer (base layer) consists of an 8-bit (bit) image, and by adding an enhancement layer (enhancement layer) to this, the bit-depth scalability (bit-depth scalability) can be obtained. is there.
- base layer (base ⁇ ⁇ layer) consists of component images in 4: 2: 0 format, and by adding the enhancement layer (enhancement layer) to this, chroma scalability (chroma) scalability).
- inter-picture prediction is adopted as one of the methods for generating a predicted image.
- AMVP Two methods are defined: Advanced (Motion) Vector (Prediction) and Merge.
- a predicted value (also referred to as predicted motion information) of motion information in the current block is generated from motion information in a peripheral block (peripheral PU) located around the current block (PU) to be processed.
- a difference value between the predicted motion information and the motion information of the current block is calculated, and the difference value is included in the bit stream of the image data and transmitted as the motion information encoding result.
- predicted motion information generated from the neighboring blocks is used as motion information for the current block. Then, index information indicating the predicted motion information is included in the bit stream of the image data and transmitted.
- the predicted motion information includes motion information of a temporal peripheral block that is a peripheral block in the time direction of the current block (also referred to as temporal peripheral motion information), and a spatial peripheral block that is a peripheral block in the spatial direction.
- Motion information also referred to as spatial direction peripheral motion information.
- spatial direction peripheral motion information is the motion information of peripheral block A0, peripheral block B0, peripheral block C, peripheral block D, and peripheral block E. is there.
- the temporal direction peripheral motion information is the peripheral block CR and the peripheral block H of the picture of the collocated block (Co-located-PU).
- one of the peripheral block A0 and the peripheral block E in FIG. 5 is selected as a predicted motion information candidate.
- One of block C, peripheral block B0, and peripheral block D is selected.
- VEC1 is the motion information of the current block
- ref_idx and list are the same motion information
- VEC2 is the motion information of the current block
- ref_idx is the same, but the list is different motion information
- VEC3 is The motion information of the current block is different from ref_idx but the list is the same
- VEC4 is the motion information of the current block
- ref_idx and list are different motion information.
- the candidates for the spatial direction peripheral motion information are searched (scanned) in the following order.
- Scan VEC1 of peripheral block E and peripheral block A0 (1) Scan VEC1 of peripheral block E and peripheral block A0. (2) Scan VEC2, 3, and 4 of peripheral block E and peripheral block A0. (3) Scan VEC1 of peripheral block C, peripheral block B0, and peripheral block D. (4) Scan VEC2, 3, and 4 of peripheral block C, peripheral block B0, and peripheral block D.
- the scanning process ends when the corresponding motion information is detected.
- the motion information of the peripheral block CR is used as a candidate for predicted motion information. Used.
- the spatial peripheral motion information is the motion information of the peripheral blocks 1 to 5.
- the temporal direction peripheral motion information is the peripheral block CR6 and the peripheral block H6 of the picture of the collocated block (Co-located PU).
- the motion information of the peripheral blocks 1 to 4 in FIG. 6 is used as a predicted motion information candidate, and a candidate list is generated. Is done. If at least one piece of motion information of the peripheral blocks 1 to 4 is unavailable, the motion information of the peripheral block 5 is used.
- the number of prediction motion information candidates in the merge mode (the size of the candidate list) is always fixed to five. That is, as shown in FIG. 7, the list size (List Size) of the index (Merge_idx) is fixed to 5. Thereby, CABAC and motion prediction can be processed independently.
- this candidate list may be missing. If missing numbers are generated in the candidate list, the encoding efficiency may be reduced. Therefore, in order to prevent missing numbers from appearing in the candidate list, for example, as shown in FIG. 8, a compensation method such as combined merge (Combined bi-directional merge) or zero vector merge (Zero vector merge) has been considered.
- Zero vector merging is a method of generating a new candidate using a zero vector and filling it.
- an enhancement layer that refers to information of the base layer (Baselayer) during encoding
- a part of the whole image can be cropped and encoded.
- the motion information of the neighboring blocks that are available in the base layer is not available (not available) (not available) in the enhancement layer. It is also conceivable that
- motion information has a high correlation between a base layer and an enhancement layer.
- the available peripheral motion information of the base layer is used instead of the unusable peripheral motion information in the enhancement layer.
- the upper side shows an enhancement layer block
- the lower side shows a base layer block.
- the large block (Curr PU) at the upper left of FIG. 10 shows the enhancement layer current block (the block to be processed), and the blocks with the peripheral numbers are the peripheral blocks in the spatial direction of the enhancement layer current block.
- the large block in the upper right of FIG. 10 indicates a block at the same position in a picture different from the current block of the enhancement layer.
- the block with CR and the block with H are peripheral blocks in the temporal direction of the current block of the enhancement layer ( This block can be a collocated block.
- the large block (Curr PU) at the bottom left of Fig. 10 shows the current block of the base layer.
- this block is a block corresponding to the current block of the enhancement layer that exists at the same position as the current block of the enhancement layer.
- the blocks to which the peripheral numbers are attached are the peripheral blocks in the spatial direction of the current block of the base layer.
- the large block in the lower right of FIG. 10 shows a block at the same position in a picture different from the current block of the base layer, and a block with CR and a block with H are peripheral blocks in the time direction of the current block of the base layer ( This block can be a collocated block.
- the motion information of the block 2 of the base layer is applied as substitute information of the motion information of the block 2 of the enhancement layer.
- the enhancement layer depends on the scalability ratio (resolution ratio) between the base layer and the enhancement layer.
- the base layer motion information to be applied instead of the motion information may be scaled.
- the base layer motion information applied instead of the enhancement layer motion information is also scaled in the time axis direction when the current block motion information is different from the reference index. ) Processing may be performed.
- unscaled motion information in the base layer is used as alternative information for unscaled motion information in the enhancement layer
- base layer is used as alternative information in scaled motion information in the enhancement layer.
- Scaled motion information at may be used.
- ⁇ In merge mode> if there is a missing number in the prediction motion information candidate list in the enhancement layer, the base layer available motion information is supplemented in the candidate list. In other words, if there is a missing number in the candidate list, the motion information of the current block in the base layer corresponding to the current block in the enhancement layer is supplemented in the candidate list.
- the peripheral block CR6 in FIG. 6 when the peripheral block CR6 in FIG. 6 is a collocated block and the motion information is used as collocated motion information, a compensation process is performed using the motion information of the peripheral block H6.
- the compensation process may be performed using the motion information of the peripheral block CR6.
- the compensation process by combined merge cannot be applied, and only the compensation by zero vector merge can be applied. For this reason, particularly when the current picture is a P picture, the conventional compensation method may not be able to improve the encoding efficiency.
- the above-described method for compensating for the base layer motion information can be compensated for even if the enhancement layer current picture is a P picture, if the base layer motion information is available. Therefore, even if the current picture is a P picture, the encoding efficiency can be improved.
- this compensation method may be used in combination with other compensation methods such as combined merge (also referred to as Combined Merge-Candidate) and zero vector merge (also referred to as Zero Merge-Candidate).
- combined merge also referred to as Combined Merge-Candidate
- zero vector merge also referred to as Zero Merge-Candidate
- a base layer predictor may be used instead of a temporal predictor in a single-layer HEVC. That is, instead of using base layer motion information for missing number compensation, base layer motion information may be used instead of motion information of neighboring blocks in the time direction when generating a candidate list.
- a base layer predictor may be used to compensate for the missing number list. Further, when a base layer predictor is designated as collocated motion information, a temporal predictor may be used to compensate for the missing number list.
- information (for example, a flag) that specifies which of the temporal predictor and the base layer predictor is used as collocated motion information is transmitted in a slice header (SliceHeader) of encoded data obtained by encoding image data. You may make it do.
- sliceHeader slice header
- information may be transmitted as information (for example, an indicator) specifying a predictor to be used for the candidate flag.
- FIG. 11 to FIG. 15 show specific examples of syntax in the case of transmitting such an indicator.
- 11 and 12 are diagrams illustrating an example of the syntax of the sequence parameter set.
- 13 to 15 are diagrams illustrating examples of syntax of slice segment headers.
- a parameter sps_col_mvp_indicator that designates a predictor used for the candidate list is transmitted for the current sequence to be processed.
- a parameter slice_col_mvp_indicator that designates a predictor used in the candidate list is transmitted.
- a candidate list is created only by a spatial predictor that is motion information of peripheral blocks in the spatial direction.
- a candidate list is created only by the spatial predictor and the motion information (col_baselayer_mv) of the base layer.
- the value of the parameter sps_col_mvp_indicator is “2”, a candidate list is created based on the spatial predictor (spatial predictor) and the motion information (col_tmvp) of the peripheral blocks in the time direction.
- a candidate list is created based on the spatial predictor (spatial predictor), the motion information of the base layer (col_baselayer_mv), and the motion information of the neighboring blocks in the time direction (col_tmvp). .
- the base layer image encoding / decoding may be based on the AVC encoding method.
- the encoding efficiency in the enhancement layer can be improved.
- FIG. 16 is a block diagram illustrating a main configuration example of a scalable encoding device.
- a scalable encoding device 100 shown in FIG. 16 is an image information processing device that encodes image data in a scalable manner, and encodes each layer of image data layered into a base layer and an enhancement layer.
- the parameters used as the criteria for this hierarchization are arbitrary.
- the scalable encoding device 100 includes a common information generation unit 101, an encoding control unit 102, a base layer image encoding unit 103, a motion information encoding unit 104, and an enhancement layer image encoding unit 105.
- the common information generation unit 101 acquires information related to encoding of image data that is stored in, for example, a NAL unit. In addition, the common information generation unit 101 acquires necessary information from the base layer image encoding unit 103, the motion information encoding unit 104, the enhancement layer image encoding unit 105, and the like as necessary. The common information generation unit 101 generates common information that is information regarding all layers based on the information. The common information includes, for example, a video parameter set. The common information generation unit 101 outputs the generated common information to the outside of the scalable encoding device 100, for example, as a NAL unit. Note that the common information generation unit 101 also supplies the generated common information to the encoding control unit 102. Furthermore, the common information generation unit 101 supplies part or all of the generated common information to the base layer image encoding unit 103 to the enhancement layer image encoding unit 105 as necessary.
- the encoding control unit 102 controls the encoding of each layer by controlling the base layer image encoding unit 103 to the enhancement layer image encoding unit 105 based on the common information supplied from the common information generation unit 101. To do.
- the base layer image encoding unit 103 acquires base layer image information (base layer image information).
- the base layer image encoding unit 103 encodes the base layer image information without using information of other layers, generates base layer encoded data (base layer encoded data), and outputs the encoded data. Further, the base layer image encoding unit 103 supplies the motion information obtained at the time of encoding to the motion information encoding unit 104.
- the heel motion information encoding unit 104 encodes motion information obtained by motion prediction in the enhancement layer image encoding unit 105.
- the motion information encoding unit 104 generates predicted motion information that is a predicted value of the motion information of the current block, using the motion information of the peripheral blocks located around the current block to be processed as the peripheral motion information.
- the motion information encoding unit 104 uses the motion information acquired from the enhancement layer image encoding unit 105 as peripheral motion information.
- the motion information encoding unit 104 uses the available motion information acquired from the base layer image encoding unit 103 as peripheral motion information instead of the unavailable motion information.
- the motion information encoding unit 104 encodes the motion information of the current block using the predicted motion information generated in this way, and returns the encoding result to the enhancement layer image encoding unit 105.
- the enhancement layer image encoding unit 105 acquires enhancement layer image information (enhancement layer image information).
- the enhancement layer image encoding unit 105 encodes the enhancement layer image information.
- the enhancement layer image encoding unit 105 supplies the motion information of the current block to the motion information encoding unit 104 in order to encode the motion information of the current block. Further, the enhancement layer image encoding unit 105 acquires the motion information encoding result of the current block from the motion information encoding unit 104.
- the enhancement layer image encoding unit 105 generates and outputs enhancement layer encoded data (enhancement layer encoded data) through such encoding.
- FIG. 17 is a block diagram illustrating a main configuration example of the base layer image encoding unit 103 in FIG. 16.
- the base layer image encoding unit 103 includes an A / D conversion unit 111, a screen rearrangement buffer 112, a calculation unit 113, an orthogonal transformation unit 114, a quantization unit 115, a lossless encoding unit 116, The storage buffer 117, the inverse quantization unit 118, and the inverse orthogonal transform unit 119 are included.
- the base layer image encoding unit 103 includes a calculation unit 120, a loop filter 121, a frame memory 122, a selection unit 123, an intra prediction unit 124, a motion prediction / compensation unit 125, a predicted image selection unit 126, and a rate control unit 127.
- the A / D conversion unit 111 performs A / D conversion on the input image data (base layer image information), and supplies the converted image data (digital data) to the screen rearrangement buffer 112 for storage.
- the screen rearrangement buffer 112 rearranges the images of the frames in the stored display order in the order of frames for encoding according to the GOP (Group Of Picture), and rearranges the images in the order of the frames. It supplies to the calculating part 113.
- the screen rearrangement buffer 112 also supplies the image in which the frame order is rearranged to the intra prediction unit 124 and the motion prediction / compensation unit 125.
- the calculation unit 113 subtracts the predicted image supplied from the intra prediction unit 124 or the motion prediction / compensation unit 125 via the predicted image selection unit 126 from the image read from the screen rearrangement buffer 112, and the difference information Is output to the orthogonal transform unit 114. For example, in the case of an image on which intra coding is performed, the calculation unit 113 subtracts the prediction image supplied from the intra prediction unit 124 from the image read from the screen rearrangement buffer 112. For example, in the case of an image on which inter coding is performed, the calculation unit 113 subtracts the prediction image supplied from the motion prediction / compensation unit 125 from the image read from the screen rearrangement buffer 112.
- the orthogonal transform unit 114 performs orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform on the difference information supplied from the computation unit 113.
- the orthogonal transform unit 114 supplies the transform coefficient to the quantization unit 115.
- the quantization unit 115 quantizes the transform coefficient supplied from the orthogonal transform unit 114.
- the quantization unit 115 sets a quantization parameter based on the information regarding the target value of the code amount supplied from the rate control unit 127, and performs the quantization.
- the quantization unit 115 supplies the quantized transform coefficient to the lossless encoding unit 116.
- the lossless encoding unit 116 encodes the transform coefficient quantized by the quantization unit 115 using an arbitrary encoding method. Since the coefficient data is quantized under the control of the rate control unit 127, the code amount becomes the target value set by the rate control unit 127 (or approximates the target value).
- the lossless encoding unit 116 acquires information indicating the intra prediction mode from the intra prediction unit 124, and acquires information indicating the inter prediction mode, difference motion vector information, and the like from the motion prediction / compensation unit 125. Furthermore, the lossless encoding unit 116 appropriately generates a base layer NAL unit including a sequence parameter set (SPS), a picture parameter set (PPS), and the like.
- SPS sequence parameter set
- PPS picture parameter set
- the lossless encoding unit 116 encodes these various types of information by an arbitrary encoding method, and uses (multiplexes) a part of the encoded data (also referred to as an encoded stream).
- the lossless encoding unit 116 supplies the encoded data obtained by encoding to the accumulation buffer 117 for accumulation.
- Examples of the encoding method of the lossless encoding unit 116 include variable length encoding or arithmetic encoding.
- Examples of variable length coding include H.264.
- CAVLC Context-Adaptive Variable Length Coding
- Examples of arithmetic coding include CABAC (Context-Adaptive Binary Arithmetic Coding).
- the cocoon accumulation buffer 117 temporarily holds the encoded data (base layer encoded data) supplied from the lossless encoding unit 116.
- the accumulation buffer 117 outputs the stored base layer encoded data to, for example, a recording device (recording medium) (not shown) or a transmission path at a later stage at a predetermined timing. That is, the accumulation buffer 117 is also a transmission unit that transmits encoded data.
- the transform coefficient quantized by the quantization unit 115 is also supplied to the inverse quantization unit 118.
- the inverse quantization unit 118 inversely quantizes the quantized transform coefficient by a method corresponding to the quantization by the quantization unit 115.
- the inverse quantization unit 118 supplies the obtained transform coefficient to the inverse orthogonal transform unit 119.
- the inverse orthogonal transform unit 119 performs inverse orthogonal transform on the transform coefficient supplied from the inverse quantization unit 118 by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 114.
- the inversely orthogonal transformed output (restored difference information) is supplied to the calculation unit 120.
- the calculation unit 120 uses the prediction image selection unit 126 to perform prediction from the intra prediction unit 124 or the motion prediction / compensation unit 125 on the restored difference information, which is the inverse orthogonal transform result supplied from the inverse orthogonal transform unit 119.
- the images are added to obtain a locally decoded image (decoded image).
- the decoded image is supplied to the loop filter 121 or the frame memory 122.
- the loop filter 121 includes a deblocking filter, an adaptive loop filter, and the like, and appropriately performs a filtering process on the reconstructed image supplied from the calculation unit 120.
- the loop filter 121 removes block distortion of the reconstructed image by performing deblocking filter processing on the reconstructed image.
- the loop filter 121 improves the image quality by performing loop filter processing using a Wiener filter on the deblock filter processing result (reconstructed image from which block distortion has been removed). I do.
- the loop filter 121 supplies a filter processing result (hereinafter referred to as a decoded image) to the frame memory 122.
- the loop filter 121 may further perform other arbitrary filter processing on the reconstructed image. Further, the loop filter 121 can supply information such as filter coefficients used for the filter processing to the lossless encoding unit 116 and encode the information as necessary.
- the frame memory 122 stores the reconstructed image supplied from the calculation unit 120 and the decoded image supplied from the loop filter 121, respectively.
- the frame memory 122 supplies the stored reconstructed image to the intra prediction unit 124 via the selection unit 123 at a predetermined timing or based on a request from the outside such as the intra prediction unit 124.
- the frame memory 122 also stores the decoded image stored at a predetermined timing or based on a request from the outside such as the motion prediction / compensation unit 125 via the selection unit 123. 125.
- the kite frame memory 122 stores the supplied decoded image, and supplies the stored decoded image as a reference image to the selection unit 123 at a predetermined timing.
- the eyelid selection unit 123 selects a supply destination of the reference image supplied from the frame memory 122. For example, in the case of intra prediction, the selection unit 123 supplies the reference image (pixel value in the current picture) supplied from the frame memory 122 to the motion prediction / compensation unit 125. For example, in the case of inter prediction, the selection unit 123 supplies the reference image supplied from the frame memory 122 to the motion prediction / compensation unit 125.
- the intra prediction unit 124 performs intra prediction (intra-screen prediction) that generates a predicted image using a pixel value in a current picture that is a reference image supplied from the frame memory 122 via the selection unit 123.
- the intra prediction unit 124 performs this intra prediction in a plurality of intra prediction modes prepared in advance.
- the intra prediction unit 124 generates prediction images in all candidate intra prediction modes, evaluates the cost function value of each prediction image using the input image supplied from the screen rearrangement buffer 112, and selects the optimum mode. select. When the optimal intra prediction mode is selected, the intra prediction unit 124 supplies the predicted image generated in the optimal mode to the predicted image selection unit 126.
- the intra prediction unit 124 appropriately supplies the intra prediction mode information indicating the adopted intra prediction mode to the lossless encoding unit 116 for encoding.
- the heel motion prediction / compensation unit 125 performs motion prediction (inter prediction) using the input image supplied from the screen rearrangement buffer 112 and the reference image supplied from the frame memory 122 via the selection unit 123.
- the motion prediction / compensation unit 125 performs a motion compensation process according to the detected motion vector, and generates a prediction image (inter prediction image information).
- the motion prediction / compensation unit 125 performs such inter prediction in a plurality of inter prediction modes prepared in advance.
- the heel motion prediction / compensation unit 125 generates a prediction image in all candidate inter prediction modes.
- the motion prediction / compensation unit 125 evaluates the cost function value of each predicted image using the input image supplied from the screen rearrangement buffer 112 and information on the generated differential motion vector, and selects an optimal mode. .
- the motion prediction / compensation unit 125 supplies the predicted image generated in the optimal mode to the predicted image selection unit 126.
- the motion prediction / compensation unit 125 supplies information indicating the employed inter prediction mode, information necessary for performing processing in the inter prediction mode, and the like to the lossless encoding unit 116 when decoding the encoded data. And encoding.
- the necessary information includes, for example, information on the generated differential motion vector and a flag indicating an index of the predicted motion vector as predicted motion vector information.
- the predicted image selection unit 126 selects a supply source of the predicted image to be supplied to the calculation unit 113 or the calculation unit 120.
- the prediction image selection unit 126 selects the intra prediction unit 124 as a supply source of the prediction image, and supplies the prediction image supplied from the intra prediction unit 124 to the calculation unit 113 and the calculation unit 120.
- the predicted image selection unit 126 selects the motion prediction / compensation unit 125 as a supply source of the predicted image, and calculates the predicted image supplied from the motion prediction / compensation unit 125 as the calculation unit 113.
- the rate control unit 127 controls the rate of the quantization operation of the quantization unit 115 based on the code amount of the encoded data stored in the storage buffer 117 so that no overflow or underflow occurs.
- the motion prediction / compensation unit 125 supplies the motion information of the current block detected by motion prediction to the motion information encoding unit 104 as the motion information of the base layer.
- FIG. 18 is a block diagram illustrating a main configuration example of the enhancement layer image encoding unit 105 in FIG. 16. As shown in FIG. 18, the enhancement layer image encoding unit 105 has basically the same configuration as the base layer image encoding unit 103 of FIG.
- each unit of the enhancement layer image encoding unit 105 performs processing for encoding enhancement layer image information, not the base layer. That is, the A / D conversion unit 111 of the enhancement layer image encoding unit 105 performs A / D conversion on the enhancement layer image information, and the accumulation buffer 117 of the enhancement layer image encoding unit 105 converts the enhancement layer encoded data into, for example, Then, the data is output to a recording device (recording medium), a transmission path, etc., not shown.
- the enhancement layer image encoding unit 105 includes a motion prediction / compensation unit 135 instead of the motion prediction / compensation unit 125.
- the heel motion prediction / compensation unit 135 uses the motion information encoding unit 104 to encode motion information. That is, the motion prediction / compensation unit 125 encodes the motion information of the current block using only the peripheral motion information of the base layer, whereas the motion prediction / compensation unit 135 uses only the peripheral motion information of the enhancement layer. Alternatively, the motion information of the current block can be encoded using the peripheral motion information of the base layer.
- the ⁇ ⁇ ⁇ motion prediction / compensation unit 135 supplies the motion information of the current block detected by motion prediction for each mode to the motion information encoding unit 104 as enhancement layer motion information.
- the motion prediction / compensation unit 135 acquires a coding result for each supplied motion information.
- the motion prediction / compensation unit 135 calculates a cost function value using the encoding result and determines an optimal inter prediction mode.
- FIG. 19 is a block diagram illustrating a main configuration example of the motion information encoding unit 104 of FIG.
- the motion information encoding unit 104 includes a motion information scaling unit 151, a base layer motion information buffer 152, an enhancement layer motion information buffer 153, an AMVP processing unit 154, a merge processing unit 155, and an optimal predictor setting. Part 156.
- the motion information scaling unit 151 acquires the base layer motion information from the motion prediction / compensation unit 125 of the base layer image encoding unit 103, and according to the spatial direction scaling ratio (eg, resolution ratio) of the base layer and the enhancement layer. Then, the motion information is subjected to scaling processing (conversion processing (enlargement or reduction)) in the spatial direction.
- the motion information scaling unit 151 supplies the scaled motion information to the base layer motion information buffer 152.
- the base layer motion information buffer 152 stores the scaled base layer motion information supplied from the motion information scaling unit 151.
- the base layer motion information buffer 152 uses the stored base layer motion information as base layer motion information, as appropriate, for the AMVP processing unit 154 (candidate setting unit 161) and the merge processing unit 155 (candidate list generation unit 171). To supply.
- the enhancement layer motion information buffer 153 acquires and stores the motion information of the current block supplied from the motion prediction / compensation unit 135 of the enhancement layer image encoding unit 105.
- the enhancement layer motion information buffer 153 uses the stored enhancement layer motion information as the enhancement layer peripheral motion information, as appropriate, for the AMVP processing unit 154 (candidate setting unit 161) and the merge processing unit 155 (candidate list generation unit 171). ).
- AMVP processing section 154 sets prediction motion information candidates corresponding to the motion information of the current block in the enhancement layer in AMVP mode. At that time, the AMVP processing unit 154 acquires the motion information of the enhancement layer stored in the enhancement layer motion information buffer 153 as peripheral motion information as necessary. In addition, the AMVP processing unit 154 acquires base layer motion information stored in the base layer motion information buffer 152 as peripheral motion information as necessary. The AMVP processing unit 154 uses these peripheral motion information to set prediction motion information candidates. The AMVP processing unit 154 supplies the set predictive motion information candidates to the optimal predictor setting unit 156.
- the merge processing unit 155 generates a candidate list of predicted motion information corresponding to the motion information of the current block of the enhancement layer in the merge mode. At that time, the merge processing unit 155 acquires enhancement layer motion information stored in the enhancement layer motion information buffer 153 as peripheral motion information as necessary. In addition, the merge processing unit 155 acquires the base layer motion information stored in the base layer motion information buffer 152 as peripheral motion information as necessary. The merge processing unit 155 generates a candidate list using the peripheral motion information. The merge processing unit 155 supplies the generated candidate list to the optimal predictor setting unit 156.
- the optimal predictor setting unit 156 uses the prediction motion information candidates supplied from the AMVP processing unit 154 and the candidate list supplied from the merge processing unit 155 to perform the motion prediction / compensation unit of the enhancement layer image encoding unit 105.
- An optimal predictor for the motion information of the current block of the enhancement layer supplied from 135 is set. That is, the optimal predictor setting unit 156 calculates the cost function value of the encoding result for each obtained candidate, and selects the candidate having the smallest value as the optimal predictor.
- the optimal predictor setting unit 156 encodes the motion information of the current block supplied from the motion prediction / compensation unit 135 using the optimal predictor. More specifically, the optimal predictor setting unit 156 obtains a difference (difference motion information) between the motion information and the predicted motion information.
- the optimal predictor setting unit 156 obtains the encoding result (difference motion information) in this way for each mode, and supplies the obtained encoding result to the motion prediction / compensation unit 135.
- the AMVP processing unit 154 includes a candidate setting unit 161, an availability determination unit 162, a spatial scaling unit 163, a time scaling unit 164, and a base layer motion information selection unit 165.
- the haze candidate setting unit 161 sets prediction motion information candidates of the motion information of the current block obtained by the motion prediction / compensation unit 135 for the enhancement layer encoding performed by the enhancement layer image encoding unit 105.
- the candidate setting unit 161 acquires enhancement layer peripheral motion information from the enhancement layer motion information buffer 153, and uses the peripheral motion information as a candidate for predicted motion information.
- the haze candidate setting unit 161 supplies the peripheral layer motion information of the enhancement layer to the availability determination unit 162, determines the availability of the peripheral motion information, and acquires the determination result.
- the candidate setting unit 161 acquires the peripheral motion information of the base layer from the base layer motion information buffer 152, and uses the peripheral motion information of the base layer instead of the motion information of the enhancement layer. Are candidates for the predicted motion information.
- the eyelid candidate setting unit 161 supplies the peripheral motion information to the spatial scaling unit 163, performs the scaling process in the spatial direction, and acquires the scaled peripheral motion information.
- the eyelid candidate setting unit 161 supplies the peripheral motion information to the time scaling unit 164, performs the scaling process in the time direction, and acquires the scaled peripheral motion information.
- the eyelid candidate setting unit 161 uses the base layer motion information selected by the base layer motion information selection unit 165.
- the eyelid candidate setting unit 161 supplies the set predicted motion information candidates to the optimum predictor setting unit 156.
- the heel availability determination unit 162 determines the availability of the motion information supplied from the candidate setting unit 161 and supplies the determination result to the candidate setting unit 161.
- the eaves space scaling unit 163 performs a scaling process in the spatial direction of the motion information supplied from the candidate setting unit 161 and supplies the scaled motion information to the candidate setting unit 161.
- the heel time scaling unit 164 performs a time direction scaling process on the motion information supplied from the candidate setting unit 161 and supplies the motion information subjected to the scaling process to the candidate setting unit 161.
- the base layer motion information selection unit 165 selects the base layer motion information used as the collocated motion information by the candidate setting unit 161 according to the base layer encoding result by the base layer image encoding unit 103. More specifically, the base layer motion information selection unit 165 selects base layer motion information that is not used as collocated motion information in base layer coding, as enhancement layer collocated motion information. For example, when the motion information of the peripheral block CR6 of the base layer is used as the collocated motion information in the base layer encoding, the base layer motion information selection unit 165 converts the motion information of the peripheral block H6 of the base layer into the enhancement layer. Is selected as collocated motion information in the encoding of.
- the base layer motion information selection unit 165 when the motion information of the peripheral block H6 of the base layer is used as the collocated motion information, the base layer motion information selection unit 165, the motion information of the peripheral block CR6 of the base layer, Selected as collocated motion information in enhancement layer coding.
- the base layer motion information selection unit 165 is used as described above.
- the motion information of the base layer selected by is used.
- the merge processing unit 155 includes a candidate list generation unit 171, a layer control information setting unit 172, a layer control unit 173, an availability determination unit 174, and a base layer motion information selection unit 175.
- the candidate list generation unit 171 generates a merge mode candidate list for obtaining predicted motion information of the motion information of the current block obtained in the motion prediction / compensation unit 135 for the enhancement layer coding by the enhancement layer image coding unit 105. Generate.
- the number of candidates (the length of the candidate list) is arbitrary, but is preferably a predetermined number so that CABAC and motion prediction can be processed independently. In the following description, the number of candidates is five.
- the wrinkle candidate list generation unit 171 acquires enhancement layer peripheral motion information from the enhancement layer motion information buffer 153, and generates a candidate list using the peripheral motion information.
- the candidate list generation unit 171 acquires the peripheral motion information of the base layer from the base layer motion information buffer 152, and A candidate list is generated using the peripheral motion information. For example, when generating a candidate list using a base layer predictor instead of a temporal predictor under the control of the layer control unit 173, the candidate list generating unit 171 acquires base layer peripheral motion information from the base layer motion information buffer 152. .
- the wrinkle candidate list generation unit 171 supplies the peripheral layer motion information of the enhancement layer to the availability determination unit 174, determines the availability of the peripheral motion information, and acquires the determination result.
- the candidate list generation unit 171 acquires the peripheral motion information of the base layer from the base layer motion information buffer 152, and compensates the base layer peripheral motion information for the missing number of the candidate list. To do.
- the eyelid candidate list generation unit 171 uses the base layer motion information selected by the base layer motion information selection unit 175.
- the cocoon candidate list generation unit 171 supplies the generated candidate list to the optimal predictor setting unit 156.
- Layer control information setting unit 172 sets information (layer control information) for selecting a predictor used for generating a candidate list. For example, the layer control information setting unit 172 sets layer control information (for example, sps_col_mvp_indicator or slice_col_mvp_indicator) for selecting whether to use a temporal predictor and whether to use a base layer predictor. The layer control information setting unit 172 supplies the layer control information set in this way to the layer control unit 173. Also, the layer control information setting unit 172 supplies the layer control information set in this way to the lossless encoding unit 116 of the enhancement layer image encoding unit 105 and transmits it to the decoding side.
- layer control information setting unit 172 sets information (layer control information) for selecting a predictor used for generating a candidate list. For example, the layer control information setting unit 172 sets layer control information (for example, sps_col_mvp_indicator or slice_col_mvp_indicator) for selecting whether to use
- the heel layer control unit 173 controls the layer of the peripheral motion information used by the candidate list generation unit 171 to generate the candidate list. More specifically, the layer control unit 173 controls whether the peripheral motion information of the enhancement layer or the peripheral motion information of the base layer is used for generating the candidate list. As described above, the candidate list generation unit 171 acquires peripheral motion information according to the control of the layer control unit 173.
- the heel availability determination unit 174 determines the availability of the motion information supplied from the candidate list generation unit 171 and supplies the determination result to the candidate list generation unit 171.
- the base layer motion information selection unit 175 selects the base layer motion information used as the collocated motion information by the candidate list generation unit 171 according to the base layer encoding result by the base layer image encoding unit 103. More specifically, the base layer motion information selection unit 175 selects base layer motion information that is not used as collocated motion information in base layer encoding, as enhancement layer collocated motion information. For example, when the motion information of the peripheral block CR6 of the base layer is used as the collocated motion information in the base layer encoding, the base layer motion information selection unit 175 converts the motion information of the peripheral block H6 of the base layer into the enhancement layer. Is selected as collocated motion information in the encoding of.
- the candidate list generation unit 171 uses the base layer motion information instead of the enhancement layer motion information as the collocated motion information in the enhancement layer encoding, the base layer motion information selection unit in this way.
- the motion information of the base layer selected by 175 is used.
- the scalable coding apparatus 100 when the peripheral motion information of the enhancement layer is unavailable, instead of the motion information of the enhancement layer, Since the predicted motion information is obtained using the peripheral motion information, it is possible to suppress a decrease in prediction accuracy and a decrease in encoding efficiency. Thereby, the scalable encoding device 100 can suppress a reduction in image quality due to encoding / decoding.
- step S101 the encoding control unit 102 of the scalable encoding device 100 sets the first layer as a processing target.
- step S102 the encoding control unit 102 determines whether or not the current layer to be processed is a base layer. If it is determined that the current layer is the base layer, the process proceeds to step S103.
- step S103 the base layer image encoding unit 103 performs base layer encoding processing.
- step S103 the process proceeds to step S106.
- step S102 If it is determined in step S102 that the current layer is an enhancement layer, the process proceeds to step S104.
- step S104 the encoding control unit 102 determines a base layer corresponding to the current layer (that is, a reference destination).
- step S105 the enhancement layer image encoding unit 105 performs an enhancement layer encoding process.
- the process of step S105 ends, the process proceeds to step S106.
- step S106 the encoding control unit 102 determines whether all layers have been processed. If it is determined that there is an unprocessed layer, the process proceeds to step S107.
- step S107 the encoding control unit 102 sets the next unprocessed layer as a processing target (current layer).
- the process of step S107 ends, the process returns to step S102.
- the processing from step S102 to step S107 is repeatedly executed, and each layer is encoded.
- step S106 If it is determined in step S106 that all layers have been processed, the encoding process ends.
- step S121 the A / D conversion unit 111 of the base layer image encoding unit 103 performs A / D conversion on the input base layer image information (image data).
- step S122 the screen rearrangement buffer 112 stores the A / D converted base layer image information (digital data), and rearranges the pictures from the display order to the encoding order.
- step S123 the intra prediction unit 124 performs an intra prediction process in the intra prediction mode.
- step S124 the motion prediction / compensation unit 125 performs a motion prediction / compensation process for performing motion prediction or motion compensation in the inter prediction mode.
- step S ⁇ b> 125 the predicted image selection unit 126 determines an optimum mode based on the cost function values output from the intra prediction unit 124 and the motion prediction / compensation unit 125. That is, the predicted image selection unit 126 selects one of the predicted image generated by the intra prediction unit 124 and the predicted image generated by the motion prediction / compensation unit 125.
- step S126 the calculation unit 113 calculates the difference between the image rearranged by the process of step S122 and the predicted image selected by the process of step S125. The data amount of the difference data is reduced compared to the original image data. Therefore, the data amount can be compressed as compared with the case where the image is encoded as it is.
- step S127 the orthogonal transform unit 114 performs an orthogonal transform process on the difference information generated by the process in step S126.
- step S1208 the quantization unit 115 quantizes the orthogonal transform coefficient obtained by the process of step S127, using the quantization parameter calculated by the rate control unit 127.
- the difference information quantized by the processing in step S128 is locally decoded as follows. That is, in step S129, the inverse quantization unit 118 inversely quantizes the quantized coefficient (also referred to as a quantization coefficient) generated by the process in step S128 with characteristics corresponding to the characteristics of the quantization unit 115. . In step S130, the inverse orthogonal transform unit 119 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process of step S127. In step S131, the calculation unit 120 adds the predicted image to the locally decoded difference information, and generates a locally decoded image (an image corresponding to the input to the calculation unit 113).
- step S132 the loop filter 121 filters the image generated by the process in step S131. Thereby, block distortion and the like are removed.
- step S133 the frame memory 122 stores an image from which block distortion has been removed by the process of step S132. Note that an image that has not been filtered by the loop filter 121 is also supplied to the frame memory 122 from the computing unit 120 and stored therein. The image stored in the frame memory 122 is used for the processing in step S123 and the processing in step S124.
- step S134 the motion information scaling unit 151 of the motion information encoding unit 104 performs the scaling process on the base layer motion information obtained by the process of step S124 according to the scaling ratio of the base layer and the enhancement layer in the spatial direction.
- step S135 the base layer motion information buffer 152 of the motion information encoding unit 104 stores the base layer motion information scaled in step S134.
- step S136 the lossless encoding unit 116 of the base layer image encoding unit 103 encodes the coefficient quantized by the process of step S128. That is, lossless encoding such as variable length encoding or arithmetic encoding is performed on the data corresponding to the difference image.
- the lossless encoding unit 116 encodes information on the prediction mode of the prediction image selected by the process of step S125, and adds the encoded information to the encoded data obtained by encoding the difference image. That is, the lossless encoding unit 116 encodes and encodes the optimal intra prediction mode information supplied from the intra prediction unit 124 or the information corresponding to the optimal inter prediction mode supplied from the motion prediction / compensation unit 125. Append to data.
- step S137 the accumulation buffer 117 accumulates the base layer encoded data obtained by the process in step S136.
- the base layer encoded data stored in the storage buffer 117 is appropriately read and transmitted to the decoding side via a transmission path or a recording medium.
- step S138 the rate control unit 127 determines the quantum of the quantization unit 115 so that no overflow or underflow occurs based on the code amount (generated code amount) of the encoded data accumulated in the accumulation buffer 117 in step S137. Control the rate of activation.
- the base layer encoding process is executed in units of pictures, for example. That is, the base layer encoding process is executed for each picture in the current layer. However, each process in the base layer encoding process is performed for each processing unit.
- Steps S151 to S153 of the enhancement layer encoding process and steps S155 to S166 are the same as steps S121 to S123, step S125 to S133, and steps S136 to S136 of the base layer encoding process of FIG. It is executed in the same manner as each process in step S138. However, each process of the enhancement layer encoding process is performed on the enhancement layer image information by each processing unit of the enhancement layer image encoding unit 105.
- step S154 the motion prediction / compensation unit 135 of the enhancement layer image encoding unit 105 performs a motion prediction / compensation process on the enhancement layer image information. Details of the motion prediction / compensation processing will be described later.
- the enhancement layer encoding process ends, and the process returns to FIG.
- the enhancement layer encoding process is executed in units of pictures, for example. That is, the enhancement layer encoding process is executed for each picture in the current layer. However, each process in the enhancement layer encoding process is performed for each processing unit.
- step S181 the motion prediction / compensation unit 135 of the enhancement layer image encoding unit 105 performs a motion search process for each mode.
- step S182 the motion prediction / compensation unit 135 performs a motion information encoding process on the motion information in each mode obtained by the process in step S181. Details of the motion information encoding process will be described later.
- step S183 the motion prediction / compensation unit 135 calculates a cost function value for each mode based on the processing results in steps S181 and S182.
- step S184 the motion prediction / compensation unit 135 determines an optimal inter prediction mode based on the cost function value of each mode calculated in step S183.
- step S185 the motion prediction / compensation unit 135 performs motion compensation in the optimal inter prediction mode selected in step S184, and generates a predicted image.
- the generated predicted image is supplied to the predicted image selection unit 126 together with information about the optimal inter prediction mode.
- step S186 the enhancement layer motion information buffer 153 of the motion information encoding unit 104 stores the motion information of the current block in the optimal inter prediction mode selected in step S184 as enhancement layer motion information.
- step S186 When the process of step S186 ends, the motion prediction / compensation process ends, and the process returns to FIG.
- the AMVP processing unit 154 of the motion information encoding unit 104 performs AMVP processing in step S201, and sets a candidate for predicted motion information in AMVP mode. Details of the AMVP process will be described later.
- step S202 the merge processing unit 155 of the motion information encoding unit 104 performs a merge process and generates a candidate list of predicted motion information in the merge mode. Details of the merge process will be described later.
- step S203 the optimal predictor setting unit 156 of the motion information encoding unit 104 calculates a cost function value for each predicted motion information candidate set in step S201 and step S202.
- step S204 the optimum predictor setting unit 156 obtains the optimum predictor based on the cost function value obtained in step S203.
- step S205 the optimal predictor setting unit 156 encodes the motion information of the current block in the enhancement layer using the optimal predictor obtained in step S204.
- the optimal predictor setting unit 156 supplies the motion information encoding result (difference between the motion information and the predicted motion information) to the motion prediction / compensation unit 135.
- step S205 When the process of step S205 is finished, the motion information encoding process is finished, and the process returns to FIG.
- the AMVP processing unit 154 searches for the spatial prediction motion information that is the prediction motion information using the motion information of the peripheral blocks in the spatial direction for the peripheral block E and the peripheral block A0 in step S221. .
- step S222 the AMVP processing unit 154 searches the spatial prediction motion information for the peripheral block C, the peripheral block B0, and the peripheral block D. This process is the same as step S221 except that the blocks to be processed are different.
- step S223 the AMVP processing unit 154 searches for temporal prediction motion information that is prediction motion information using motion information of neighboring blocks in the temporal direction.
- step S223 ends, the AMVP process ends, and the process returns to FIG.
- the candidate setting unit 161 of the AMVP processing unit 154 has the same ref_idx and list as the motion information of the current block from the enhancement layer motion information buffer 153 in step S241 in FIG.
- the enhancement layer searches for unscaled peripheral motion information (VEC1) in the same direction.
- step S242 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S241. If it is determined that unscaled peripheral motion information (VEC1) in the same direction has not been detected in the enhancement layer, the process proceeds to step S243.
- VEC1 unscaled peripheral motion information
- step S243 the candidate setting unit 161 acquires, from the base layer motion information buffer 152, base layer peripheral motion information that has the same ref_idx and list as the current block motion information, and causes the availability determination unit 162 to determine availability.
- the base layer searches for unscaled peripheral motion information (VEC1) in the same direction.
- step S244 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S243. If it is determined that unscaled peripheral motion information (VEC1) in the same direction has not been detected in the base layer, the process proceeds to step S245.
- VEC1 unscaled peripheral motion information
- step S245 the candidate setting unit 161 acquires peripheral motion information of an enhancement layer that has the same motion information of the current block and ref_idx but a different list from the enhancement layer motion information buffer 153, and provides the availability determination unit 162 with availability. By making the determination, the unscaled peripheral motion information (VEC2) in the reverse direction is searched in the enhancement layer.
- VEC2 the unscaled peripheral motion information
- step S246 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S245. When it is determined that the unscaled peripheral motion information (VEC2) in the reverse direction has not been detected in the enhancement layer, the process proceeds to step S247.
- VEC2 unscaled peripheral motion information
- step S247 the candidate setting unit 161 acquires, from the base layer motion information buffer 152, peripheral motion information of the base layer that has the same ref_idx but different list from the current block motion information, and provides the availability determination unit 162 with availability.
- the base layer searches for unscaled peripheral motion information (VEC2) in the reverse direction.
- step S248 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S247. If it is determined that the unscaled peripheral motion information (VEC2) in the reverse direction has not been detected in the base layer, the process proceeds to step S251 in FIG.
- step S251 of FIG. 27 the candidate setting unit 161 acquires, from the enhancement layer motion information buffer 153, peripheral layer motion information of an enhancement layer having the same list but different motion information and ref_idx of the current block, and the availability determination unit 162. By searching for availability, the scaled peripheral motion information (VEC3) in the same direction is searched in the enhancement layer.
- step S252 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S251. If it is determined that scaled peripheral motion information (VEC3) in the same direction has not been detected in the enhancement layer, the process proceeds to step S253.
- VEC3 scaled peripheral motion information
- step S ⁇ b> 253 the candidate setting unit 161 acquires, from the base layer motion information buffer 152, base layer peripheral motion information that has the same list but different motion information and ref_idx of the current block, and provides the availability determination unit 162 with availability. By making the determination, the base layer searches for scaled peripheral motion information (VEC3) in the same direction.
- VEC3 scaled peripheral motion information
- step S254 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S253. If it is determined that scaled peripheral motion information (VEC3) in the same direction has not been detected in the base layer, the process proceeds to step S255.
- VEC3 scaled peripheral motion information
- step S ⁇ b> 255 the candidate setting unit 161 acquires, from the enhancement layer motion information buffer 153, enhancement layer peripheral motion information that is different from the current block motion information and ref_idx and list, and causes the availability determination unit 162 to determine availability.
- step S256 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S255. If it is determined that the scaled peripheral motion information (VEC4) in the reverse direction has not been detected in the enhancement layer, the process proceeds to step S257.
- VEC4 scaled peripheral motion information
- step S257 the candidate setting unit 161 acquires, from the base layer motion information buffer 152, base layer peripheral motion information that is different from the current block motion information and ref_idx and list, and causes the availability determination unit 162 to determine availability.
- the scaled peripheral motion information (VEC4) in the reverse direction is searched.
- step S258 the candidate setting unit 161 determines whether or not motion information is detected by the search in step S257. When it is determined that the scaled peripheral motion information (VEC4) in the reverse direction has not been detected in the base layer, the process proceeds to step S260.
- VEC4 scaled peripheral motion information
- step S242 in FIG. 26 If it is determined in step S242 in FIG. 26 that unscaled peripheral motion information (VEC1) in the same direction is detected in the enhancement layer, unscaled peripheral in the same direction in the base layer in step S244 in FIG. If it is determined that motion information (VEC1) has been detected, if it is determined in step S246 in FIG. 26 that reverse unscaled peripheral motion information (VEC2) has been detected in the enhancement layer, or If it is determined in step S248 that the unscaled peripheral motion information (VEC2) in the reverse direction is detected in the base layer, the process proceeds to step S260 in FIG.
- step S252 in FIG. 27 If it is determined in step S252 in FIG. 27 that the same direction of scaled peripheral motion information (VEC3) has been detected in the enhancement layer, in step S254 of FIG. 27, the base layer in the same direction of scaled peripheral motion information. If it is determined that (VEC3) has been detected, if it is determined in step S256 in FIG. 27 that scaled peripheral motion information (VEC4) in the reverse direction has been detected in the enhancement layer, or in step S258 in FIG. If it is determined that the scaled peripheral motion information (VEC4) in the reverse direction is detected in the base layer, the process proceeds to step S259 in FIG.
- step S259 the temporal scaling unit 164 performs a scaling process on the detected spatial prediction motion information in the temporal direction.
- the process of step S259 ends, the process proceeds to step S260.
- step S260 the candidate setting unit 161 sets the spatial prediction motion information detected as described above as the AMVP mode predictor candidate and supplies it to the optimal predictor setting unit 156.
- step S260 When the process of step S260 is finished, the spatial prediction motion information search process is finished, and the process returns to FIG.
- the search order of the peripheral motion information may be changed as shown in the flowcharts of FIGS. 28 and 29, for example. That is, unscaled peripheral motion information (VEC1 and VEC2) is searched for the enhancement layer (steps S281 and S283 in FIG. 28), and unscaled peripheral motion information (VEC1 and VEC2) is searched for the base layer (FIG. 28). Step S285 and step S287), the scaled peripheral motion information (VEC3 and VEC4) is searched for the enhancement layer (step S291 and step S293 in FIG. 29), and the scaled peripheral motion information (VEC3 and VEC4) is searched for the base layer. (Steps S295 and S297 in FIG. 29) may be performed.
- the temporal prediction motion information search process in the example shown in the flowcharts of FIGS. 28 and 29 is executed in the same manner as the example shown in the flowcharts of FIGS. 26 and 27 except that the search order of the peripheral motion information is different.
- the candidate setting unit 161 acquires the motion information of the peripheral block H of the enhancement layer from the enhancement layer motion information buffer 153 in step S321, and provides the availability determination unit 162 with availability. By making the determination, it is determined whether or not the motion information of the peripheral block H is unavailable. If it is determined that the motion information of the peripheral block H is available, the process proceeds to step S322.
- step S322 the candidate setting unit 161 sets the motion information of the peripheral block H as a predictor candidate in the AMVP mode and supplies it to the optimal predictor setting unit 156.
- the temporal prediction motion information search process ends, and the process returns to FIG.
- step S321 in FIG. 30 determines whether the motion information of the peripheral block H is unavailable.
- step S323 the candidate setting unit 161 acquires the motion information of the peripheral block CR of the enhancement layer from the enhancement layer motion information buffer 153, and causes the availability determination unit 162 to determine the availability, so that the motion information of the peripheral block CR is obtained. It is determined whether or not it is unavailable. If it is determined that the motion information of the peripheral block CR is available, the process proceeds to step S324.
- step S324 the candidate setting unit 161 sets the motion information of the peripheral block CR as a candidate for the predictor in the AMVP mode and supplies it to the optimal predictor setting unit 156.
- the temporal motion prediction information search process ends, and the process returns to FIG.
- step S323 in FIG. 30 when it is determined in step S323 in FIG. 30 that the motion information of the peripheral block CR is unavailable, the process proceeds to step S325.
- step S325 the base layer motion information selection unit 165 determines whether or not the motion information of the peripheral block CR is used as collocated motion information in the base layer. If it is determined that the motion information of the peripheral block CR is used as collocated motion information in the base layer, the process proceeds to step S326.
- step S326 the base layer motion information selection unit 165 selects the peripheral block H of the base layer. Based on the selection, candidate setting section 161 sets base layer H motion information as a candidate for a predictor in AMVP mode, and supplies it to optimal predictor setting section 156.
- step S326 ends, the temporal prediction motion information search process ends, and the process returns to FIG.
- step S325 of FIG. 30 determines whether the motion information of the peripheral block H is used as collocated motion information in the base layer. If it is determined in step S325 of FIG. 30 that the motion information of the peripheral block H is used as collocated motion information in the base layer, the process proceeds to step S327.
- step S327 the base layer motion information selection unit 165 selects the peripheral block CR of the base layer. Based on the selection, candidate setting section 161 sets base layer CR motion information as a candidate for a predictor in AMVP mode, and supplies it to optimal predictor setting section 156.
- step S327 ends, the temporal prediction motion information search process ends, and the process returns to FIG.
- the availability determination unit 162 of the merge processing unit 155 determines the availability of the peripheral layer motion information of the enhancement layer read from the enhancement layer motion information buffer 153 by the candidate list generation unit 171 in step S341. judge.
- step S342 the candidate list generation unit 171 generates a merge mode candidate list using the peripheral motion information of the enhancement layer determined to be available in step S341.
- step S343 the candidate list generation unit 171 determines whether or not there is a missing number in the candidate list generated as described above. If it is determined that it exists, the process proceeds to step S344.
- step S344 the candidate list generation unit 171 reads the base layer peripheral motion information from the base layer motion information buffer 152, causes the availability determination unit 174 to determine the availability, and uses the available base layer peripheral motion information in the candidate list. To compensate.
- step S344 ends, the merge process ends, and the process returns to FIG. If it is determined in step S343 in FIG. 31 that there is no missing number in the candidate list, the process in step S344 is omitted, the merge process ends, and the process returns to FIG.
- the scalable encoding device 100 can suppress a reduction in encoding efficiency and an image quality due to encoding / decoding.
- ⁇ Flow of base layer motion information selection processing> As described above, in the base layer, when the peripheral block CR6 in FIG. 6 is a collocated block and the motion information is used as collocated motion information, the motion information of the peripheral block H6 is used. When the motion information of the peripheral block H6 is used as the collocated motion information in the base layer, the compensation processing may be performed using the motion information of the peripheral block CR6.
- the base layer motion information selection unit 175 performs base layer motion information selection processing.
- the base layer motion information selection unit 175 determines whether or not the motion information of the peripheral block CR6 is used as collocated motion information in the base layer in step S361. In the base layer encoding, when it is determined that the motion information of the neighboring block CR6 is used as collocated motion information, the process proceeds to step S362.
- step S362 the base layer motion information selection unit 175 sets the motion information of the peripheral block H6 to be supplemented to the candidate list when the candidate list generation unit 171 supplements the temporal motion information of the base layer in the time direction.
- step S362 ends, the base layer motion information selection process ends.
- step S361 If it is determined in step S361 that the motion information of the neighboring block H6 has been used as collocated motion information in base layer encoding, the process proceeds to step S363.
- step S363 the base layer motion information selection unit 175 sets the motion information of the peripheral block CR6 to be supplemented in the candidate list when the candidate list generation unit 171 supplements the peripheral motion information in the time direction of the base layer.
- the base layer motion information selection process ends.
- step S344 of the merge process in FIG. 31 the candidate list generation unit 171 performs the base layer motion information selection process step in the peripheral block CR6 and the peripheral block H6 when supplementing the peripheral motion information in the time direction of the base layer.
- the motion information set in step S362 or step S363 is compensated.
- the scalable encoding device 100 can suppress a reduction in encoding efficiency and suppress a reduction in image quality due to encoding / decoding.
- a base layer predictor may be used instead of the temporal predictor in the single-tier HEVC.
- the layer control information setting unit 172 sets layer control information for controlling whether a temporal predictor or a base layer predictor is used for generating a candidate list in step S381.
- step S382 the candidate list generation unit 171 sets the motion information of the spatial peripheral blocks of the enhancement layer in the candidate list. At that time, the candidate list generation unit 171 sets the motion information of the spatial peripheral blocks in the candidate list by performing a merge process as described with reference to the flowchart of FIG. 31, for example.
- step S383 the layer control unit 173 determines whether or not to generate a candidate list using the base layer motion information instead of the temporal predictor, based on the layer control information set in step S381. For example, if the value of the parameter sps_col_mvp_indicator or the parameter slice_col_mvp_indicator is “1” or “3” and it is determined that the candidate list is generated using the motion information of the base layer, the process proceeds to step S384.
- step S384 the candidate list generating unit 171 sets the base layer motion information as collocated motion information in the candidate list.
- a temporal predictor may be used to compensate for the missing number list.
- step S384 When the process of step S384 ends, the process proceeds to step S385. If it is determined in step S383 that a candidate list is generated without using base layer motion information, the process proceeds to step S385.
- step S385 the layer control unit 173 determines whether to generate a candidate list using a temporal predictor based on the layer control information set in step S381. For example, if the value of the parameter sps_col_mvp_indicator or the parameter slice_col_mvp_indicator is “2” or “3” and it is determined that the candidate list is generated using the temporal predictor, the process proceeds to step S386.
- step S386 the candidate list generation unit 171 sets the temporal predictor as the collocated motion information in the candidate list.
- base layer motion information may be used to compensate for the missing number list.
- step S386 When the process of step S386 ends, the process proceeds to step S387. If it is determined in step S385 that the candidate list is generated without using the temporal predictor, the process proceeds to step S387.
- step S387 the layer control information setting unit 172 supplies the layer control information set in step S381 to the lossless encoding unit 116 of the enhancement layer image encoding unit 105 for transmission to the decoding side.
- step S387 ends, the layer control process ends.
- the scalable encoding device 100 can suppress a reduction in encoding efficiency and suppress a reduction in image quality due to encoding / decoding.
- FIG. 34 is a block diagram illustrating a main configuration example of a scalable decoding device corresponding to the scalable encoding device 100 of FIG.
- the scalable decoding device 200 shown in FIG. 34 performs scalable decoding on encoded data obtained by scalable encoding of image data by the scalable encoding device 100 by a method corresponding to the encoding method, for example.
- the scalable decoding device 200 includes a common information acquisition unit 201, a decoding control unit 202, a base layer image decoding unit 203, a motion information decoding unit 204, and an enhancement layer image decoding unit 205.
- the common information acquisition unit 201 acquires common information (for example, a video parameter set (VPS)) transmitted from the encoding side.
- the common information acquisition unit 201 extracts information related to decoding from the acquired common information and supplies it to the decoding control unit 202.
- the common information acquisition unit 201 supplies part or all of the common information to the base layer image decoding unit 203 to the enhancement layer image decoding unit 205 as appropriate.
- the decoding control unit 202 acquires information about decoding supplied from the common information acquisition unit 201, and controls the base layer image decoding unit 203 to the enhancement layer image decoding unit 205 based on the information, thereby Control decryption.
- the base layer image decoding unit 203 is an image decoding unit corresponding to the base layer image encoding unit 103, and for example, base layer encoded data obtained by encoding base layer image information by the base layer image encoding unit 103. To get.
- the base layer image decoding unit 203 decodes the base layer encoded data without using the information of other layers, reconstructs the base layer image information, and outputs it. Further, the base layer image decoding unit 203 supplies the motion information obtained at the time of decoding to the motion information decoding unit 204.
- the heel motion information decoding unit 204 decodes the motion information transmitted from the encoding side, which is used in the motion compensation processing in the enhancement layer image decoding unit 205. From the encoding side, a difference between motion information and predicted motion information is transmitted. The motion information decoding unit 204 generates predicted motion information using peripheral motion information, and obtains motion information from the difference transmitted from the encoding side using the predicted motion information. When generating such predicted motion information, the motion information decoding unit 204 uses the motion information acquired from the enhancement layer image decoding unit 205 as peripheral motion information. However, when the motion information is unavailable, the motion information decoding unit 204 uses the available motion information acquired from the base layer image decoding unit 203 as the peripheral motion information instead of the unavailable motion information. The motion information decoding unit 204 decodes the motion information of the current block using the predicted motion information generated in this way, and returns the encoding result to the enhancement layer image decoding unit 205.
- the enhancement layer image decoding unit 205 is an image decoding unit corresponding to the enhancement layer image encoding unit 105, for example, enhancement layer encoded data obtained by encoding enhancement layer image information by the enhancement layer image encoding unit 105. To get.
- the enhancement layer image decoding unit 205 decodes the enhancement layer encoded data.
- the enhancement layer image decoding unit 205 causes the motion information decoding unit 204 to decode the encoded data of motion information (difference between motion information and predicted motion information) transmitted from the encoding side.
- the enhancement layer image decoding unit 205 performs motion compensation using the motion information obtained by such decoding, generates a prediction image, reconstructs the enhancement layer image information using the prediction image, and outputs it. .
- FIG. 35 is a block diagram illustrating an exemplary main configuration of the base layer image decoding unit 203 of FIG.
- the base layer image decoding unit 203 includes a storage buffer 211, a lossless decoding unit 212, an inverse quantization unit 213, an inverse orthogonal transform unit 214, a calculation unit 215, a loop filter 216, a screen rearrangement buffer 217, And a D / A converter 218.
- the base layer image decoding unit 203 includes a frame memory 219, a selection unit 220, an intra prediction unit 221, a motion compensation unit 222, and a selection unit 223.
- Accumulation buffer 211 is also a receiving unit that receives transmitted base layer encoded data.
- the accumulation buffer 211 receives and accumulates the transmitted base layer encoded data, and supplies the encoded data to the lossless decoding unit 212 at a predetermined timing.
- Information necessary for decoding such as prediction mode information is added to the base layer encoded data.
- the lossless decoding unit 212 decodes the information supplied from the accumulation buffer 211 and encoded by the lossless encoding unit 116 by a method corresponding to the encoding method of the lossless encoding unit 116.
- the lossless decoding unit 212 supplies the quantized coefficient data of the difference image obtained by decoding to the inverse quantization unit 213.
- the lossless decoding unit 212 appropriately extracts and acquires NAL units including a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), and the like included in the base layer encoded data.
- the lossless decoding unit 212 extracts information on the optimum prediction mode from the information, determines whether the intra prediction mode or the inter prediction mode is selected as the optimum prediction mode based on the information, and Information regarding the optimal prediction mode is supplied to the mode determined to be selected from the intra prediction unit 221 and the motion compensation unit 222. That is, for example, when the intra prediction mode is selected as the optimal prediction mode in the base layer image encoding unit 103, information regarding the optimal prediction mode is supplied to the intra prediction unit 221. For example, when the inter prediction mode is selected as the optimal prediction mode in the base layer image encoding unit 103, information regarding the optimal prediction mode is supplied to the motion compensation unit 222.
- the lossless decoding unit 212 extracts information necessary for inverse quantization, such as a quantization matrix and a quantization parameter, from the NAL unit or the like, and supplies it to the inverse quantization unit 213.
- the inverse quantization unit 213 inversely quantizes the quantized coefficient data obtained by decoding by the lossless decoding unit 212 using a method corresponding to the quantization method of the quantization unit 115.
- the inverse quantization unit 213 is a processing unit similar to the inverse quantization unit 118. That is, the description of the inverse quantization unit 213 can be applied to the inverse quantization unit 118. However, the data input / output destinations and the like need to be changed appropriately according to the device.
- the inverse quantization unit 213 supplies the obtained coefficient data to the inverse orthogonal transform unit 214.
- the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the coefficient data supplied from the inverse quantization unit 213 using a method corresponding to the orthogonal transform method of the orthogonal transform unit 114.
- the inverse orthogonal transform unit 214 is a processing unit similar to the inverse orthogonal transform unit 119. That is, the description of the inverse orthogonal transform unit 214 can be applied to the inverse orthogonal transform unit 119. However, the data input / output destinations and the like need to be changed appropriately according to the device.
- the inverse orthogonal transform unit 214 obtains decoded residual data corresponding to the residual data before being orthogonally transformed by the orthogonal transform unit 114 by the inverse orthogonal transform process.
- the decoded residual data obtained by the inverse orthogonal transform is supplied to the calculation unit 215.
- a prediction image is supplied to the calculation unit 215 from the intra prediction unit 221 or the motion compensation unit 222 via the selection unit 223.
- the calculating unit 215 adds the decoded residual data and the predicted image, and obtains decoded image data corresponding to the image data before the predicted image is subtracted by the calculating unit 113.
- the arithmetic unit 215 supplies the decoded image data to the loop filter 216.
- the loop filter 216 appropriately performs filtering processing including a deblocking filter and an adaptive loop filter on the supplied decoded image, and supplies it to the screen rearranging buffer 217 and the frame memory 219.
- the loop filter 216 removes block distortion of the decoded image by performing a deblocking filter process on the decoded image.
- the loop filter 216 performs image quality improvement by performing loop filter processing using a Wiener filter on the deblock filter processing result (decoded image from which block distortion has been removed). Do.
- the loop filter 216 is a processing unit similar to the loop filter 121.
- the decoded image output from the calculation unit 215 can be supplied to the screen rearrangement buffer 217 and the frame memory 219 without passing through the loop filter 216. That is, part or all of the filter processing by the loop filter 216 can be omitted.
- the screen rearrangement buffer 217 rearranges the decoded images. That is, the order of frames rearranged for the encoding order by the screen rearrangement buffer 112 is rearranged in the original display order.
- the D / A conversion unit 218 performs D / A conversion on the image supplied from the screen rearrangement buffer 217, and outputs and displays the image on a display (not shown).
- the frame memory 219 stores the supplied decoded image, and uses the stored decoded image as a reference image at a predetermined timing or based on an external request such as the intra prediction unit 221 or the motion compensation unit 222. This is supplied to the selection unit 220.
- the eyelid selection unit 220 selects a reference image supply destination supplied from the frame memory 219.
- the selection unit 220 supplies the reference image supplied from the frame memory 219 to the intra prediction unit 221 when decoding an intra-coded image.
- the selection unit 220 supplies the reference image supplied from the frame memory 219 to the motion compensation unit 222 when decoding an inter-encoded image.
- the intra prediction unit 221 is appropriately supplied with information indicating the intra prediction mode obtained by decoding the header information from the lossless decoding unit 212.
- the intra prediction unit 221 performs intra prediction using the reference image acquired from the frame memory 219 in the intra prediction mode used in the intra prediction unit 124, and generates a predicted image.
- the intra prediction unit 221 supplies the generated predicted image to the selection unit 223.
- the eyelid motion compensation unit 222 acquires information (optimum prediction mode information, reference image information, etc.) obtained by decoding the header information from the lossless decoding unit 212.
- the heel motion compensation unit 222 performs motion compensation using the reference image acquired from the frame memory 219 in the inter prediction mode indicated by the optimal prediction mode information acquired from the lossless decoding unit 212, and generates a predicted image.
- the eyelid motion compensation unit 222 supplies the generated predicted image to the selection unit 223.
- the motion compensation unit 222 supplies motion information of the current block used for generating a predicted image (motion compensation) to the motion information decoding unit 204.
- the eyelid selection unit 223 supplies the prediction image from the intra prediction unit 221 or the prediction image from the motion compensation unit 222 to the calculation unit 215.
- the arithmetic unit 215 adds the predicted image generated using the motion vector and the decoded residual data (difference image information) from the inverse orthogonal transform unit 214 to decode the original image.
- FIG. 36 is a block diagram illustrating a main configuration example of the enhancement layer image decoding unit 205 of FIG. As shown in FIG. 36, the enhancement layer image decoding unit 205 has basically the same configuration as the base layer image decoding unit 203 in FIG.
- each unit of the enhancement layer image decoding unit 205 performs a process for decoding enhancement layer encoded data, not the base layer. That is, the accumulation buffer 211 of the enhancement layer image decoding unit 205 stores the enhancement layer encoded data, and the D / A conversion unit 218 of the enhancement layer image decoding unit 205 displays the enhancement layer image information, for example, in the subsequent stage. Output to a recording device (recording medium) or transmission path.
- the enhancement layer image decoding unit 205 includes a motion compensation unit 232 instead of the motion compensation unit 222.
- the heel motion compensation unit 232 uses the motion information decoding unit 204 to decode the encoded motion information transmitted from the encoding side. That is, while the motion compensation unit 222 decodes the motion information encoded in the current block using only the peripheral motion information of the base layer, the motion compensation unit 232 uses only the peripheral motion information of the enhancement layer. In addition, the encoded motion information of the current block can be decoded using the peripheral motion information of the base layer.
- the heel motion information is transmitted from the encoding side as a difference (difference motion information) of predicted motion information.
- the motion compensation unit 232 supplies the difference motion information to the motion information decoding unit 204 to reconstruct the motion information.
- the motion compensation unit 232 acquires the reconstructed motion information and performs motion compensation using the motion information.
- FIG. 37 is a block diagram illustrating a main configuration example of the motion information decoding unit 204 of FIG.
- the motion information decoding unit 204 includes a motion information scaling unit 251, a base layer motion information buffer 252, an enhancement layer motion information buffer 253, an AMVP processing unit 254, a merge processing unit 255, and a predictor decoding unit 256.
- the motion information scaling unit 251 acquires the motion information of the base layer from the motion compensation unit 222 of the base layer image decoding unit 203, and the motion information scaling unit 251 performs the motion according to the scaling ratio (for example, resolution ratio) between the base layer and the enhancement layer in the spatial direction. The information is scaled in the spatial direction.
- the motion information scaling unit 251 supplies the scaled motion information to the base layer motion information buffer 252.
- the base layer motion information buffer 252 stores the scaled base layer motion information supplied from the motion information scaling unit 251.
- the base layer motion information buffer 252 uses the stored base layer motion information as base layer motion information, as appropriate, for the AMVP processing unit 254 (candidate setting unit 261) and the merge processing unit 255 (candidate list generation unit 271). To supply.
- the enhancement layer motion information buffer 253 acquires and stores the motion information of the current block supplied from the motion compensation unit 232 of the enhancement layer image decoding unit 205.
- the enhancement layer motion information buffer 253 uses the stored enhancement layer motion information as the enhancement layer peripheral motion information, as appropriate, for the AMVP processing unit 254 (candidate setting unit 261) and the merge processing unit 255 (candidate list generation unit 271). ).
- AMVP processing section 254 sets a prediction motion information candidate corresponding to the motion information of the current block of the enhancement layer in AMVP mode. At this time, the AMVP processing unit 254 acquires enhancement layer motion information stored in the enhancement layer motion information buffer 253 as peripheral motion information as necessary. In addition, the AMVP processing unit 254 acquires the base layer motion information stored in the base layer motion information buffer 252 as peripheral motion information as necessary. The AMVP processing unit 254 sets prediction motion information candidates using the peripheral motion information. The AMVP processing unit 254 supplies the set prediction motion information candidates to the predictor decoding unit 256.
- the merge processing unit 255 generates a candidate list of predicted motion information corresponding to the motion information of the current block of the enhancement layer in the merge mode. At that time, the merge processing unit 255 acquires enhancement layer motion information stored in the enhancement layer motion information buffer 253 as peripheral motion information as necessary. In addition, the merge processing unit 255 acquires the base layer motion information stored in the base layer motion information buffer 252 as peripheral motion information as necessary. The merge processing unit 255 generates a candidate list using the peripheral motion information. The merge processing unit 255 supplies the generated candidate list to the predictor decoding unit 256.
- the predictor decoding unit 256 receives the prediction motion information candidates supplied from the AMVP processing unit 254 and the merge processing unit 255 based on the information related to inter prediction supplied from the motion compensation unit 232 of the enhancement layer image decoding unit 205. From the supplied candidate list, the prediction motion information of the current block of the enhancement layer supplied from the motion compensation unit 232 of the enhancement layer image decoding unit 205 is reconstructed, and the reconstructed prediction motion information is used as the enhancement layer. The motion information is reconstructed by adding to the difference motion information supplied from the motion compensation unit 232 of the image decoding unit 205.
- the predictor decoding unit 256 supplies the motion information of the current block of the enhancement layer obtained in this way to the motion compensation unit 232.
- the AMVP processing unit 254 includes a candidate setting unit 261, an availability determination unit 262, a spatial scaling unit 263, a time scaling unit 264, and a base layer motion information selection unit 265.
- the cocoon candidate setting unit 261 sets a candidate for predicted motion information of the current block of the enhancement layer.
- the candidate setting unit 261 acquires the peripheral motion information of the enhancement layer from the enhancement layer motion information buffer 253, and sets the peripheral motion information as a candidate for predicted motion information.
- the eyelid candidate setting unit 261 supplies the peripheral layer motion information of the enhancement layer to the availability determination unit 262, determines the availability of the peripheral motion information, and acquires the determination result.
- the candidate setting unit 261 acquires the base layer peripheral motion information from the base layer motion information buffer 252 and substitutes the base layer peripheral motion information for the enhancement layer motion information. Are candidates for the predicted motion information.
- the eyelid candidate setting unit 261 supplies the peripheral motion information to the spatial scaling unit 263, performs the scaling process in the spatial direction, and acquires the scaled peripheral motion information.
- the eyelid candidate setting unit 261 supplies the peripheral motion information to the time scaling unit 264, performs the scaling process in the time direction, and acquires the scaled peripheral motion information.
- the heel candidate setting unit 261 uses the base layer motion information selected by the base layer motion information selection unit 265 when using the base layer motion information instead of the enhancement layer motion information for the collocated motion information.
- the cocoon candidate setting unit 261 supplies the set prediction motion information candidates to the predictor decoding unit 256.
- the heel availability determination unit 262 determines the availability of the motion information supplied from the candidate setting unit 261, and supplies the determination result to the candidate setting unit 261.
- the eaves space scaling unit 263 performs a scaling process in the spatial direction of the motion information supplied from the candidate setting unit 261 and supplies the motion information subjected to the scaling process to the candidate setting unit 261.
- the heel time scaling unit 264 performs a time-direction scaling process on the motion information supplied from the candidate setting unit 261 and supplies the scaled motion information to the candidate setting unit 261.
- the base layer motion information selection unit 265 selects base layer motion information used by the candidate setting unit 261 as collocated motion information according to the decoding result of the base layer by the base layer image decoding unit 203. More specifically, the base layer motion information selection unit 265 selects base layer motion information that is not used as collocated motion information in base layer decoding, as enhancement layer collocated motion information. For example, when base layer peripheral block CR6 motion information is used as collocated motion information in base layer decoding, base layer motion information selection section 265 converts base layer peripheral block H6 motion information into enhancement layer Select as collocated motion information in decoding.
- the base layer motion information selection unit 265 adds the motion information of the base layer peripheral block CR6 to the enhancement. Select as collocated motion information in layer decoding.
- the candidate setting unit 261 uses the base layer motion information selecting unit 265 as described above.
- the motion information of the selected base layer is used.
- the merge processing unit 255 includes a candidate list generation unit 271, a layer control information acquisition unit 272, a layer control unit 273, an availability determination unit 274, and a base layer motion information selection unit 275.
- the cocoon candidate list generation unit 271 generates a merge mode candidate list for obtaining prediction motion information of the current block of the enhancement layer by the enhancement layer image decoding unit 205.
- the eyelid candidate list generation unit 271 acquires enhancement layer peripheral motion information from the enhancement layer motion information buffer 253, and generates a candidate list using the peripheral motion information.
- the candidate list generation unit 271 acquires the peripheral motion information of the base layer from the base layer motion information buffer 252; A candidate list is generated using the peripheral motion information.
- the candidate list generation unit 271 acquires base layer peripheral motion information from the base layer motion information buffer 252 when generating a candidate list using a base layer predictor instead of a temporal predictor according to the control of the layer control unit 273. .
- the haze candidate list generation unit 271 supplies the peripheral layer motion information of the enhancement layer to the availability determination unit 274, determines the availability of the peripheral motion information, and acquires the determination result.
- the candidate list generation unit 271 acquires the peripheral motion information of the base layer from the base layer motion information buffer 152, and compensates the base layer peripheral motion information for the missing number of the candidate list. To do.
- the wrinkle candidate list generation unit 271 uses the base layer motion information selected by the base layer motion information selection unit 275.
- the cocoon candidate list generation unit 271 supplies the generated candidate list to the predictor decoding unit 256.
- the layer control information acquisition unit 272 acquires layer control information (for example, sps_col_mvp_indicator, slice_col_mvp_indicator, etc.) transmitted from the encoding side from the lossless decoding unit 212.
- the layer control information acquisition unit 272 supplies the layer control information acquired in this way to the layer control unit 273.
- the heel layer control unit 273 controls the layer of the peripheral motion information used by the candidate list generation unit 271 to generate the candidate list based on the layer control information supplied from the layer control information acquisition unit 272. More specifically, the layer control unit 273 controls whether the peripheral motion information of the enhancement layer or the peripheral motion information of the base layer is used for generating the candidate list. As described above, the candidate list generation unit 271 acquires peripheral motion information according to the control of the layer control unit 273.
- the heel availability determination unit 274 determines the availability of the motion information supplied from the candidate list generation unit 271 and supplies the determination result to the candidate list generation unit 271.
- the base layer motion information selection unit 275 selects the base layer motion information used as the collocated motion information by the candidate list generation unit 271 according to the decoding result of the base layer by the base layer image decoding unit 203. More specifically, the base layer motion information selection unit 275 selects base layer motion information that is not used as collocated motion information in base layer decoding, as enhancement layer collocated motion information. For example, when base layer peripheral block CR6 motion information is used as collocated motion information in the base layer decoding, the base layer motion information selection unit 275 converts the motion information of the base layer peripheral block H6 into the enhancement layer Select as collocated motion information in decoding.
- the base layer motion information selection unit 275 performs the enhancement of the motion information of the peripheral block CR6 of the base layer. Select as collocated motion information in layer decoding.
- the base layer motion information selecting unit 275 is used in this way.
- the motion information of the base layer selected by is used.
- the scalable decoding device 200 when the enhancement layer peripheral motion information is unavailable, instead of the enhancement layer motion information, the peripheral motion information of the base layer Therefore, the motion information can be correctly decoded. Thereby, the scalable decoding apparatus 200 can suppress a reduction in prediction accuracy and a reduction in encoding efficiency. Therefore, the scalable encoding device 100 can suppress a reduction in image quality due to encoding / decoding.
- step S401 the decoding control unit 202 of the scalable decoding device 200 sets the first layer as a processing target.
- step S402 the decoding control unit 202 determines whether or not the current layer to be processed is a base layer. If it is determined that the current layer is the base layer, the process proceeds to step S403.
- step S403 the base layer image decoding unit 203 performs base layer decoding processing.
- step S403 ends, the process proceeds to step S406.
- step S402 If it is determined in step S402 that the current layer is an enhancement layer, the process proceeds to step S404.
- step S404 the decoding control unit 202 determines a base layer corresponding to the current layer (that is, a reference destination).
- step S405 the enhancement layer image decoding unit 205 performs enhancement layer decoding processing.
- step S405 ends, the process proceeds to step S406.
- step S406 the decoding control unit 202 determines whether all layers have been processed. If it is determined that there is an unprocessed layer, the process proceeds to step S407.
- step S407 the decoding control unit 202 sets the next unprocessed layer as a processing target (current layer).
- the process of step S407 ends, the process returns to step S402.
- the processing from step S402 to step S407 is repeatedly executed, and each layer is decoded.
- step S406 If it is determined in step S406 that all layers have been processed, the decoding process ends.
- step S421 the accumulation buffer 211 of the base layer image decoding unit 203 accumulates the base layer bit stream transmitted from the encoding side.
- step S422 the lossless decoding unit 212 decodes the base layer bitstream (encoded difference image information) supplied from the accumulation buffer 211. That is, the I picture, P picture, and B picture encoded by the lossless encoding unit 116 are decoded. At this time, various information other than the difference image information included in the bit stream such as header information is also decoded.
- step S423 the inverse quantization unit 213 inversely quantizes the quantized coefficient obtained by the process in step S422.
- step S424 the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the current block (current TU).
- step S425 the intra prediction unit 221 or the motion compensation unit 222 performs a prediction process to generate a predicted image. That is, the prediction process is performed in the prediction mode that is determined in the lossless decoding unit 212 and applied at the time of encoding. More specifically, for example, when intra prediction is applied at the time of encoding, the intra prediction unit 221 generates a prediction image in the intra prediction mode that is optimized at the time of encoding. For example, when inter prediction is applied at the time of encoding, the motion compensation unit 222 generates a prediction image in an inter prediction mode that is optimized at the time of encoding.
- step S426 the calculation unit 215 adds the predicted image generated in step S425 to the difference image information generated by the inverse orthogonal transform process in step S424. As a result, the original image is decoded.
- step S427 the loop filter 216 appropriately performs loop filter processing on the decoded image obtained in step S426.
- step S428 the screen rearrangement buffer 217 rearranges the images filtered in step S427. That is, the order of frames rearranged for encoding by the screen rearrangement buffer 112 is rearranged in the original display order.
- step S429 the D / A conversion unit 218 performs D / A conversion on the image in which the frame order is rearranged in step S428. This image is output to a display (not shown), and the image is displayed.
- step S430 the frame memory 219 stores the image subjected to the loop filter process in step S427.
- step S431 the motion information scaling unit 251 of the motion information decoding unit 204 performs the scaling process on the base layer motion information obtained by the prediction process in step S425 according to the spatial direction scaling ratio of the base layer and the enhancement layer.
- step S432 the base layer motion information buffer 252 of the motion information decoding unit 204 stores the base layer motion information scaled in step S431.
- the base layer decoding process ends, and the process returns to FIG.
- the base layer decoding process is executed in units of pictures, for example. That is, the base layer decoding process is executed for each picture in the current layer. However, each process in the base layer decoding process is performed for each processing unit.
- Steps S451 to S454 of the enhancement layer decoding process and steps S456 to S460 are executed in the same manner as the steps S421 to S424 and steps S426 to S430 of the base layer decoding process. .
- each process of the enhancement layer decoding process is performed on the enhancement layer encoded data by each processing unit of the enhancement layer image decoding unit 205.
- step S455 the intra prediction unit 221 and the motion compensation unit 232 perform prediction processing on the enhancement layer encoded data.
- the enhancement layer decoding process ends, and the process returns to FIG.
- the enhancement layer decoding process is executed in units of pictures, for example. That is, the enhancement layer decoding process is executed for each picture in the current layer. However, each process in the enhancement layer decoding process is performed for each processing unit.
- the motion compensation unit 232 determines in step S481 whether or not the prediction mode is inter prediction. When it determines with it being inter prediction, a process progresses to step S482.
- step S482 the motion information decoding unit 204 performs motion information decoding processing to reconstruct the motion information of the current block.
- step S483 the motion compensation unit 232 performs motion compensation using the motion information obtained by the process in step S482, and generates a predicted image.
- the prediction process ends, and the process returns to FIG.
- step S481 when it is determined in step S481 that the prediction is intra prediction, the process proceeds to step S484.
- step S484 the intra prediction unit 221 generates a prediction image in the optimal intra prediction mode that is the intra prediction mode employed at the time of encoding.
- the predictor decoding unit 256 transmits the predictor information, which is information related to the encoding / decoding of motion information in the enhancement layer, transmitted from the encoding side in step S501, to the lossless decoding unit 212. Get from.
- step S502 the predictor decoding unit 256 determines whether the employed predicted motion information is in the AMVP mode based on the predictor information. If it is determined that the AMVP mode is set, the process proceeds to step S503.
- step S503 the AMVP processing unit 254 performs AMVP processing similar to that on the encoding side as described with reference to the flowcharts of FIGS. 25 to 30 to set AMVP prediction motion information candidates.
- the process proceeds to step S505.
- step S502 If it is determined in step S502 that the mode is not AMVP mode, the process proceeds to step S504.
- step S504 the merge processing unit 255 performs merge processing similar to that on the encoding side as described with reference to the flowchart of FIG. When the merge process ends, the process proceeds to step S505.
- step S505 the predictor decoding unit 256 reconstructs the predicted motion information of the current block using the processing result in step S503 or step S504.
- step S506 the predictor decoding unit 256 reconstructs the motion information of the current block using the prediction motion information obtained in step S505 and the difference motion information acquired from the lossless decoding unit 212.
- the predictor decoding unit 256 supplies the motion information to the motion compensation unit 232 to generate a predicted image.
- the enhancement layer motion information buffer 253 stores the motion information of the current block of the enhancement layer.
- step S507 When the process of step S507 ends, the motion information decoding process ends, and the process returns to FIG.
- the scalable decoding device 200 can suppress a reduction in encoding efficiency and suppress a reduction in image quality due to encoding / decoding.
- image data is hierarchized into a plurality of layers by scalable coding, but the number of layers is arbitrary. Further, for example, as shown in the example of FIG. 43, some pictures may be hierarchized.
- the enhancement layer in the encoding / decoding, the enhancement layer has been described as being processed using the information of the base layer. However, the enhancement layer is not limited to this, and other enhancement layers that have been processed are processed. Processing may be performed using information.
- the layers described above include views in multi-view image encoding / decoding. That is, the present technology can be applied to multi-view image encoding / multi-view image decoding.
- FIG. 44 shows an example of a multi-view image encoding method.
- a multi-viewpoint image includes images of a plurality of viewpoints (views), and a predetermined one viewpoint image among the plurality of viewpoints is designated as a base-view image.
- Each viewpoint image other than the base view image is treated as a non-base view image.
- each view image is encoded / decoded.
- the above-described method may be applied to the encoding / decoding of each view. Good. That is, motion information or the like may be shared among a plurality of views in such multi-viewpoint encoding / decoding.
- prediction motion information candidates are generated using only the motion information of the own view, and for the non-base view, the motion information of the base view is also used to generate the prediction motion information.
- the application range of the present technology can be applied to any image encoding device and image decoding device based on a scalable encoding / decoding method.
- the present technology is disclosed in, for example, MPEG, H.264, and the like.
- image information compressed by orthogonal transformation such as discrete cosine transformation and motion compensation, such as 26x
- network media such as satellite broadcasting, cable television, the Internet, or mobile phones.
- the present invention can be applied to an image encoding device and an image decoding device used in the above.
- the present technology can be applied to an image encoding device and an image decoding device that are used when processing on a storage medium such as an optical, magnetic disk, and flash memory.
- Third Embodiment> ⁇ Computer>
- the series of processes described above can be executed by hardware or can be executed by software.
- a program constituting the software is installed in the computer.
- the computer includes, for example, a general-purpose personal computer that can execute various functions by installing a computer incorporated in dedicated hardware and various programs.
- FIG. 45 is a block diagram showing an example of the hardware configuration of a computer that executes the above-described series of processing by a program.
- a CPU Central Processing Unit
- ROM Read Only Memory
- RAM Random Access Memory
- An input / output interface 810 is also connected to the bus 804.
- An input unit 811, an output unit 812, a storage unit 813, a communication unit 814, and a drive 815 are connected to the input / output interface 810.
- the bag input unit 811 includes, for example, a keyboard, a mouse, a microphone, a touch panel, an input terminal, and the like.
- the output unit 812 includes, for example, a display, a speaker, an output terminal, and the like.
- the storage unit 813 includes, for example, a hard disk, a RAM disk, a nonvolatile memory, and the like.
- the communication unit 814 includes a network interface, for example.
- the drive 815 drives a removable medium 821 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 801 loads the program stored in the storage unit 813 into the RAM 803 via the input / output interface 810 and the bus 804 and executes the program, for example. Is performed.
- the RAM 803 also appropriately stores data necessary for the CPU 801 to execute various processes.
- the program executed by the computer (CPU 801) can be recorded and applied to, for example, a removable medium 821 as a package medium or the like.
- the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the storage unit 813 via the input / output interface 810 by attaching the removable medium 821 to the drive 815.
- the program can be received by the communication unit 814 via a wired or wireless transmission medium and installed in the storage unit 813.
- the program can be installed in the ROM 802 or the storage unit 813 in advance.
- the program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
- the step of describing the program recorded on the recording medium is not limited to the processing performed in chronological order according to the described order, but may be performed in parallel or It also includes processes that are executed individually.
- the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Accordingly, a plurality of devices housed in separate housings and connected via a network and a single device housing a plurality of modules in one housing are all systems. .
- the configuration described as one device (or processing unit) may be divided and configured as a plurality of devices (or processing units). Conversely, the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit). Of course, a configuration other than that described above may be added to the configuration of each device (or each processing unit). Furthermore, if the configuration and operation of the entire system are substantially the same, a part of the configuration of a certain device (or processing unit) may be included in the configuration of another device (or other processing unit). .
- the present technology can take a configuration of cloud computing in which one function is shared by a plurality of devices via a network and is jointly processed.
- each step described in the above flowchart can be executed by one apparatus or can be shared by a plurality of apparatuses.
- the plurality of processes included in the one step can be executed by being shared by a plurality of apparatuses in addition to being executed by one apparatus.
- An image encoding device and an image decoding device include a transmitter or a receiver in optical broadcasting, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication, etc.
- the present invention can be applied to various electronic devices such as a recording device that records an image on a medium such as a magnetic disk and a flash memory, or a playback device that reproduces an image from these storage media.
- a recording device that records an image on a medium such as a magnetic disk and a flash memory
- a playback device that reproduces an image from these storage media.
- FIG. 46 shows an example of a schematic configuration of a television apparatus to which the above-described embodiment is applied.
- the television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, a display unit 906, an audio signal processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911, And a bus 912.
- the tuner 902 extracts a signal of a desired channel from a broadcast signal received via the antenna 901, and demodulates the extracted signal. Then, the tuner 902 outputs the encoded bit stream obtained by the demodulation to the demultiplexer 903. That is, the tuner 902 has a role as a transmission unit in the television device 900 that receives an encoded stream in which an image is encoded.
- the demultiplexer 903 separates the video stream and audio stream of the viewing target program from the encoded bit stream, and outputs each separated stream to the decoder 904. Further, the demultiplexer 903 extracts auxiliary data such as EPG (Electronic Program Guide) from the encoded bit stream, and supplies the extracted data to the control unit 910. Note that the demultiplexer 903 may perform descrambling when the encoded bit stream is scrambled.
- EPG Electronic Program Guide
- the decoder 904 decodes the video stream and audio stream input from the demultiplexer 903. Then, the decoder 904 outputs the video data generated by the decoding process to the video signal processing unit 905. In addition, the decoder 904 outputs audio data generated by the decoding process to the audio signal processing unit 907.
- the video signal processing unit 905 reproduces the video data input from the decoder 904 and causes the display unit 906 to display the video.
- the video signal processing unit 905 may cause the display unit 906 to display an application screen supplied via a network.
- the video signal processing unit 905 may perform additional processing such as noise removal on the video data according to the setting.
- the video signal processing unit 905 may generate a GUI (Graphical User Interface) image such as a menu, a button, or a cursor, and superimpose the generated image on the output image.
- GUI Graphic User Interface
- the display unit 906 is driven by a drive signal supplied from the video signal processing unit 905, and displays an image on a video screen of a display device (for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
- a display device for example, a liquid crystal display, a plasma display, or an OELD (Organic ElectroLuminescence Display) (organic EL display)). Or an image is displayed.
- the audio signal processing unit 907 performs reproduction processing such as D / A conversion and amplification on the audio data input from the decoder 904, and outputs audio from the speaker 908.
- the audio signal processing unit 907 may perform additional processing such as noise removal on the audio data.
- the external interface 909 is an interface for connecting the television device 900 to an external device or a network.
- a video stream or an audio stream received via the external interface 909 may be decoded by the decoder 904. That is, the external interface 909 also has a role as a transmission unit in the television apparatus 900 that receives an encoded stream in which an image is encoded.
- the bag control unit 910 includes a processor such as a CPU and memories such as a RAM and a ROM.
- the memory stores a program executed by the CPU, program data, EPG data, data acquired via a network, and the like.
- the program stored in the memory is read and executed by the CPU when the television apparatus 900 is activated.
- the CPU executes the program to control the operation of the television device 900 according to an operation signal input from the user interface 911, for example.
- the user interface 911 is connected to the control unit 910.
- the user interface 911 includes, for example, buttons and switches for the user to operate the television device 900, a remote control signal receiving unit, and the like.
- the user interface 911 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 910.
- a bus 912 connects a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, an audio signal processing unit 907, an external interface 909, and a control unit 910 to each other.
- the decoder 904 has the function of the scalable decoding device 200 according to the above-described embodiment. Accordingly, when decoding an image with the television device 900, it is possible to achieve a reduction in encoding efficiency and to suppress a reduction in image quality due to encoding / decoding.
- FIG. 47 shows an example of a schematic configuration of a mobile phone to which the above-described embodiment is applied.
- a cellular phone 920 includes an antenna 921, a communication unit 922, an audio codec 923, a speaker 924, a microphone 925, a camera unit 926, an image processing unit 927, a demultiplexing unit 928, a recording / reproducing unit 929, a display unit 930, a control unit 931, an operation A portion 932 and a bus 933.
- the cage antenna 921 is connected to the communication unit 922.
- the speaker 924 and the microphone 925 are connected to the audio codec 923.
- the operation unit 932 is connected to the control unit 931.
- the bus 933 connects the communication unit 922, the audio codec 923, the camera unit 926, the image processing unit 927, the demultiplexing unit 928, the recording / reproducing unit 929, the display unit 930, and the control unit 931 to each other.
- the mobile phone 920 has various operation modes including a voice call mode, a data communication mode, a shooting mode, and a videophone mode, and is used for sending and receiving voice signals, sending and receiving e-mail or image data, taking images, and recording data. Perform the action.
- the analog voice signal generated by the microphone 925 is supplied to the voice codec 923.
- the audio codec 923 converts an analog audio signal into audio data, A / D converts the compressed audio data, and compresses it. Then, the audio codec 923 outputs the compressed audio data to the communication unit 922.
- the communication unit 922 encodes and modulates the audio data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
- the communication unit 922 demodulates and decodes the received signal to generate audio data, and outputs the generated audio data to the audio codec 923.
- the audio codec 923 decompresses the audio data and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
- control unit 931 in the data communication mode, for example, the control unit 931 generates character data constituting an e-mail in response to an operation by the user via the operation unit 932. In addition, the control unit 931 causes the display unit 930 to display characters. In addition, the control unit 931 generates e-mail data in response to a transmission instruction from the user via the operation unit 932, and outputs the generated e-mail data to the communication unit 922.
- the communication unit 922 encodes and modulates email data and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921. In addition, the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
- the communication unit 922 demodulates and decodes the received signal to restore the email data, and outputs the restored email data to the control unit 931.
- the control unit 931 displays the content of the electronic mail on the display unit 930 and stores the electronic mail data in the storage medium of the recording / reproducing unit 929.
- the recording / reproducing unit 929 has a readable / writable arbitrary storage medium.
- the storage medium may be a built-in storage medium such as RAM or flash memory, and is externally mounted such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Unallocated Space Space Bitmap) memory, or memory card. It may be a storage medium.
- the camera unit 926 images a subject to generate image data, and outputs the generated image data to the image processing unit 927.
- the image processing unit 927 encodes the image data input from the camera unit 926 and stores the encoded stream in the storage medium of the storage / playback unit 929.
- the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream input from the audio codec 923, and the multiplexed stream is the communication unit 922. Output to.
- the communication unit 922 encodes and modulates the stream and generates a transmission signal. Then, the communication unit 922 transmits the generated transmission signal to a base station (not shown) via the antenna 921.
- the communication unit 922 amplifies a radio signal received via the antenna 921 and performs frequency conversion to acquire a received signal.
- These transmission signal and reception signal may include an encoded bit stream.
- the communication unit 922 demodulates and decodes the received signal to restore the stream, and outputs the restored stream to the demultiplexing unit 928.
- the demultiplexing unit 928 separates the video stream and the audio stream from the input stream, and outputs the video stream to the image processing unit 927 and the audio stream to the audio codec 923.
- the image processing unit 927 decodes the video stream and generates video data.
- the video data is supplied to the display unit 930, and a series of images is displayed on the display unit 930.
- the audio codec 923 decompresses the audio stream and performs D / A conversion to generate an analog audio signal. Then, the audio codec 923 supplies the generated audio signal to the speaker 924 to output audio.
- the image processing unit 927 has the functions of the scalable encoding device 100 and the scalable decoding device 200 according to the above-described embodiment. Accordingly, when encoding and decoding an image with the mobile phone 920, it is possible to suppress a reduction in encoding efficiency and to suppress a reduction in image quality due to encoding / decoding.
- FIG. 48 shows an example of a schematic configuration of a recording / reproducing apparatus to which the above-described embodiment is applied.
- the recording / reproducing device 940 encodes audio data and video data of a received broadcast program and records the encoded data on a recording medium.
- the recording / reproducing device 940 may encode audio data and video data acquired from another device and record them on a recording medium, for example.
- the recording / reproducing device 940 reproduces data recorded on the recording medium on a monitor and a speaker, for example, in accordance with a user instruction. At this time, the recording / reproducing device 940 decodes the audio data and the video data.
- the recording / reproducing apparatus 940 includes a tuner 941, an external interface 942, an encoder 943, an HDD (Hard Disk Drive) 944, a disk drive 945, a selector 946, a decoder 947, an OSD (On-Screen Display) 948, a control unit 949, and a user interface. 950.
- Tuner 941 extracts a signal of a desired channel from a broadcast signal received via an antenna (not shown), and demodulates the extracted signal. Then, the tuner 941 outputs the encoded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 serves as a transmission unit in the recording / reproducing apparatus 940.
- the external interface 942 is an interface for connecting the recording / reproducing device 940 to an external device or a network.
- the external interface 942 may be, for example, an IEEE1394 interface, a network interface, a USB interface, or a flash memory interface.
- video data and audio data received via the external interface 942 are input to the encoder 943. That is, the external interface 942 serves as a transmission unit in the recording / reproducing device 940.
- Encoder 943 encodes video data and audio data when video data and audio data input from external interface 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
- the HDD 944 records an encoded bit stream in which content data such as video and audio are compressed, various programs, and other data on an internal hard disk. Further, the HDD 944 reads out these data from the hard disk when reproducing video and audio.
- the disk drive 945 records and reads data to and from the mounted recording medium.
- the recording medium mounted on the disk drive 945 is, for example, a DVD disk (DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R, DVD + RW, etc.) or a Blu-ray (registered trademark) disk. It may be.
- the selector 946 selects an encoded bit stream input from the tuner 941 or the encoder 943 when recording video and audio, and outputs the selected encoded bit stream to the HDD 944 or the disk drive 945. In addition, the selector 946 outputs the encoded bit stream input from the HDD 944 or the disk drive 945 to the decoder 947 during video and audio reproduction.
- the decoder 947 decodes the encoded bit stream and generates video data and audio data. Then, the decoder 947 outputs the generated video data to the OSD 948. The decoder 904 outputs the generated audio data to an external speaker.
- the OSD 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD 948 may superimpose a GUI image such as a menu, a button, or a cursor on the video to be displayed.
- a GUI image such as a menu, a button, or a cursor
- the bag control unit 949 includes a processor such as a CPU and memories such as a RAM and a ROM.
- the memory stores a program executed by the CPU, program data, and the like.
- the program stored in the memory is read and executed by the CPU when the recording / reproducing apparatus 940 is activated, for example.
- the CPU controls the operation of the recording / reproducing apparatus 940 in accordance with an operation signal input from the user interface 950, for example, by executing the program.
- the user interface 950 is connected to the control unit 949.
- the user interface 950 includes, for example, buttons and switches for the user to operate the recording / reproducing device 940, a remote control signal receiving unit, and the like.
- the user interface 950 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 949.
- the encoder 943 has the function of the scalable encoding apparatus 100 according to the above-described embodiment.
- the decoder 947 has the function of the scalable decoding device 200 according to the above-described embodiment.
- FIG. 49 illustrates an example of a schematic configuration of an imaging apparatus to which the above-described embodiment is applied.
- the imaging device 960 images a subject to generate an image, encodes the image data, and records it on a recording medium.
- the imaging device 960 includes an optical block 961, an imaging unit 962, a signal processing unit 963, an image processing unit 964, a display unit 965, an external interface 966, a memory 967, a media drive 968, an OSD 969, a control unit 970, a user interface 971, and a bus. 972.
- the optical block 961 is connected to the imaging unit 962.
- the imaging unit 962 is connected to the signal processing unit 963.
- the display unit 965 is connected to the image processing unit 964.
- the user interface 971 is connected to the control unit 970.
- the bus 972 connects the image processing unit 964, the external interface 966, the memory 967, the media drive 968, the OSD 969, and the control unit 970 to each other.
- the optical block 961 includes a focus lens and a diaphragm mechanism.
- the optical block 961 forms an optical image of the subject on the imaging surface of the imaging unit 962.
- the imaging unit 962 includes an image sensor such as a CCD (Charge-Coupled Device) or a CMOS (Complementary Metal-Oxide Semiconductor), and converts an optical image formed on the imaging surface into an image signal as an electrical signal by photoelectric conversion. Then, the imaging unit 962 outputs the image signal to the signal processing unit 963.
- CCD Charge-Coupled Device
- CMOS Complementary Metal-Oxide Semiconductor
- the eyelid signal processing unit 963 performs various camera signal processing such as knee correction, gamma correction, and color correction on the image signal input from the imaging unit 962.
- the signal processing unit 963 outputs the image data after the camera signal processing to the image processing unit 964.
- the haze image processing unit 964 encodes the image data input from the signal processing unit 963 to generate encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface 966 or the media drive 968. The image processing unit 964 also decodes encoded data input from the external interface 966 or the media drive 968 to generate image data. Then, the image processing unit 964 outputs the generated image data to the display unit 965. In addition, the image processing unit 964 may display the image by outputting the image data input from the signal processing unit 963 to the display unit 965. Further, the image processing unit 964 may superimpose display data acquired from the OSD 969 on an image output to the display unit 965.
- the OSD 969 generates a GUI image such as a menu, a button, or a cursor, for example, and outputs the generated image to the image processing unit 964.
- the external interface 966 is configured as a USB input / output terminal, for example.
- the external interface 966 connects the imaging device 960 and a printer, for example, when printing an image.
- a drive is connected to the external interface 966 as necessary.
- a removable medium such as a magnetic disk or an optical disk is attached to the drive, and a program read from the removable medium can be installed in the imaging device 960.
- the external interface 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 has a role as a transmission unit in the imaging device 960.
- the recording medium loaded in the media drive 968 may be any readable / writable removable medium such as a magnetic disk, a magneto-optical disk, an optical disk, or a semiconductor memory.
- a recording medium may be fixedly mounted on the media drive 968, and a non-portable storage unit such as an internal hard disk drive or an SSD (Solid State Drive) may be configured.
- the bag control unit 970 includes a processor such as a CPU and memories such as a RAM and a ROM.
- the memory stores a program executed by the CPU, program data, and the like.
- the program stored in the memory is read and executed by the CPU when the imaging device 960 is activated, for example.
- the CPU controls the operation of the imaging device 960 according to an operation signal input from the user interface 971 by executing the program.
- the user interface 971 is connected to the control unit 970.
- the user interface 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
- the user interface 971 detects an operation by the user via these components, generates an operation signal, and outputs the generated operation signal to the control unit 970.
- the image processing unit 964 has the functions of the scalable encoding device 100 and the scalable decoding device 200 according to the above-described embodiment. Therefore, when encoding and decoding an image by the imaging device 960, it is possible to suppress a reduction in encoding efficiency and to suppress a reduction in image quality due to encoding / decoding.
- scalable coding> ⁇ First system> Next, a specific usage example of scalable encoded data that has been subjected to scalable encoding (hierarchical encoding) will be described.
- the scalable coding is used for selection of data to be transmitted, for example, as in the example shown in FIG.
- the distribution server 1002 reads the scalable encoded data stored in the scalable encoded data storage unit 1001, and via the network 1003, the personal computer 1004, the AV device 1005, the tablet This is distributed to the terminal device such as the device 1006 and the mobile phone 1007.
- the distribution server 1002 selects and transmits encoded data of appropriate quality according to the capability of the terminal device, the communication environment, and the like. Even if the distribution server 1002 transmits high-quality data unnecessarily, a high-quality image is not always obtained in the terminal device, which may cause a delay or an overflow. Moreover, there is a possibility that the communication band is unnecessarily occupied or the load on the terminal device is unnecessarily increased. On the other hand, even if the distribution server 1002 transmits unnecessarily low quality data, there is a possibility that an image with sufficient image quality cannot be obtained in the terminal device. Therefore, the distribution server 1002 appropriately reads and transmits the scalable encoded data stored in the scalable encoded data storage unit 1001 as encoded data having an appropriate quality with respect to the capability and communication environment of the terminal device. .
- the scalable encoded data storage unit 1001 stores scalable encoded data (BL + EL) 1011 encoded in a scalable manner.
- the scalable encoded data (BL + EL) 1011 is encoded data including both a base layer and an enhancement layer, and is a data that can be decoded to obtain both a base layer image and an enhancement layer image. It is.
- Distribution server 1002 selects an appropriate layer according to the capability of the terminal device that transmits data, the communication environment, and the like, and reads the data of that layer. For example, the distribution server 1002 reads high-quality scalable encoded data (BL + EL) 1011 from the scalable encoded data storage unit 1001 and transmits it to the personal computer 1004 and the tablet device 1006 with high processing capability as they are. . On the other hand, for example, the distribution server 1002 extracts base layer data from the scalable encoded data (BL + EL) 1011 for the AV device 1005 and the cellular phone 1007 having a low processing capability, and performs scalable encoding. Although it is data of the same content as the data (BL + EL) 1011, it is transmitted as scalable encoded data (BL) 1012 having a lower quality than the scalable encoded data (BL + EL) 1011.
- BL scalable encoded data
- scalable encoded data By using scalable encoded data in this way, the amount of data can be easily adjusted, so that the occurrence of delays and overflows can be suppressed, and unnecessary increases in the load on terminal devices and communication media can be suppressed. be able to.
- scalable encoded data (BL + EL) 1011 since scalable encoded data (BL + EL) 1011 has reduced redundancy between layers, the amount of data can be reduced as compared with the case where encoded data of each layer is used as individual data. . Therefore, the storage area of the scalable encoded data storage unit 1001 can be used more efficiently.
- the hardware performance of the terminal device varies depending on the device.
- the application which a terminal device performs is also various, the capability of the software is also various.
- the network 1003 serving as a communication medium can be applied to any communication network including wired, wireless, or both, such as the Internet and a LAN (Local Area Network), and has various data transmission capabilities. Furthermore, there is a risk of change due to other communications.
- the distribution server 1002 communicates with the terminal device that is the data transmission destination before starting data transmission, and the hardware performance of the terminal device, the performance of the application (software) executed by the terminal device, etc. Information regarding the capability of the terminal device and information regarding the communication environment such as the available bandwidth of the network 1003 may be obtained. The distribution server 1002 may select an appropriate layer based on the information obtained here.
- the layer extraction may be performed by the terminal device.
- the personal computer 1004 may decode the transmitted scalable encoded data (BL + EL) 1011 and display a base layer image or an enhancement layer image. Further, for example, the personal computer 1004 extracts the base layer scalable encoded data (BL) 1012 from the transmitted scalable encoded data (BL + EL) 1011 and stores it or transfers it to another device. The base layer image may be displayed after decoding.
- the data transmission system 1000 may be any system as long as it transmits a scalable encoded data to a terminal device by selecting an appropriate layer according to the capability of the terminal device or a communication environment. Can be applied to the system.
- the present technology is applied in the same manner as the application to the hierarchical encoding / decoding described above in the first embodiment and the second embodiment. Effects similar to those described above in the first embodiment and the second embodiment can be obtained.
- scalable coding is used for transmission via a plurality of communication media, for example, as in the example shown in FIG.
- a broadcasting station 1101 transmits base layer scalable encoded data (BL) 1121 by terrestrial broadcasting 1111. Also, the broadcast station 1101 transmits enhancement layer scalable encoded data (EL) 1122 via an arbitrary network 1112 including a wired or wireless communication network or both (for example, packetized transmission).
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded data
- Terminal device 1102 has a reception function of terrestrial broadcast 1111 broadcasted by broadcast station 1101 and receives base layer scalable encoded data (BL) 1121 transmitted via terrestrial broadcast 1111.
- the terminal apparatus 1102 further has a communication function for performing communication via the network 1112, and receives enhancement layer scalable encoded data (EL) 1122 transmitted via the network 1112.
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded data
- the terminal device 1102 decodes the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 according to, for example, a user instruction, and obtains or stores a base layer image. Or transmit to other devices.
- BL base layer scalable encoded data
- the terminal device 1102 for example, in response to a user instruction, the base layer scalable encoded data (BL) 1121 acquired via the terrestrial broadcast 1111 and the enhancement layer scalable encoded acquired via the network 1112 Data (EL) 1122 is combined to obtain scalable encoded data (BL + EL), or decoded to obtain an enhancement layer image, stored, or transmitted to another device.
- BL base layer scalable encoded data
- EL enhancement layer scalable encoded acquired via the network 1112 Data
- the scalable encoded data can be transmitted via, for example, different communication media for each layer. Therefore, the load can be distributed, and the occurrence of delay and overflow can be suppressed.
- a communication medium used for transmission may be selected for each layer.
- scalable encoded data (BL) 1121 of a base layer having a relatively large amount of data is transmitted via a communication medium having a wide bandwidth
- scalable encoded data (EL) 1122 having a relatively small amount of data is transmitted. You may make it transmit via a communication medium with a narrow bandwidth.
- the communication medium for transmitting the enhancement layer scalable encoded data (EL) 1122 is switched between the network 1112 and the terrestrial broadcast 1111 according to the available bandwidth of the network 1112. May be.
- the number of layers is arbitrary, and the number of communication media used for transmission is also arbitrary.
- the number of terminal devices 1102 serving as data distribution destinations is also arbitrary.
- broadcasting from the broadcasting station 1101 has been described as an example, but the usage example is not limited to this.
- the data transmission system 1100 can be applied to any system as long as it is a system that divides scalable encoded data into a plurality of layers and transmits them through a plurality of lines.
- the present technology is applied in the same manner as the application to the hierarchical encoding / decoding described above in the first and second embodiments. Effects similar to those described above in the first embodiment and the second embodiment can be obtained.
- scalable encoding is used for storing encoded data as in the example shown in FIG. 52, for example.
- the imaging device 1201 performs scalable coding on image data obtained by imaging the subject 1211, and as scalable coded data (BL + EL) 1221, a scalable coded data storage device 1202. To supply.
- the scalable encoded data storage device 1202 stores the scalable encoded data (BL + EL) 1221 supplied from the imaging device 1201 with quality according to the situation. For example, in the normal case, the scalable encoded data storage device 1202 extracts base layer data from the scalable encoded data (BL + EL) 1221, and the base layer scalable encoded data ( BL) 1222. On the other hand, for example, in the case of attention, the scalable encoded data storage device 1202 stores scalable encoded data (BL + EL) 1221 with high quality and a large amount of data.
- the scalable encoded data storage device 1202 can store an image with high image quality only when necessary, so that an increase in the amount of data can be achieved while suppressing a reduction in the value of the image due to image quality degradation. And the use efficiency of the storage area can be improved.
- the imaging device 1201 is a surveillance camera.
- the monitoring target for example, an intruder
- the content of the captured image is likely to be unimportant, so reduction of the data amount is given priority, and the image data (scalable coding) Data) is stored in low quality.
- the image quality is given priority and the image data (scalable) (Encoded data) is stored with high quality.
- the imaging apparatus 1201 may make a determination, and the determination result may be transmitted to the scalable encoded data storage device 1202.
- the criterion for determining whether the time is normal or noting is arbitrary, and the content of the image as the criterion is arbitrary. Of course, conditions other than the contents of the image can also be used as the criterion. For example, it may be switched according to the volume or waveform of the recorded sound, may be switched at every predetermined time, or may be switched by an external instruction such as a user instruction.
- the number of states is arbitrary, for example, normal, slightly attention, attention, very attention, etc.
- three or more states may be switched.
- the upper limit number of states to be switched depends on the number of layers of scalable encoded data.
- the imaging apparatus 1201 may determine the number of layers for scalable coding according to the state. For example, in a normal case, the imaging apparatus 1201 may generate base layer scalable encoded data (BL) 1222 with low quality and a small amount of data, and supply the scalable encoded data storage apparatus 1202 to the scalable encoded data storage apparatus 1202. For example, when attention is paid, the imaging device 1201 generates scalable encoded data (BL + EL) 1221 having a high quality and a large amount of data, and supplies the scalable encoded data storage device 1202 to the scalable encoded data storage device 1202. May be.
- BL base layer scalable encoded data
- BL + EL scalable encoded data
- the surveillance camera has been described as an example.
- the use of the imaging system 1200 is arbitrary and is not limited to the surveillance camera.
- the first technique and the second embodiment are applied in the same manner as the application to the hierarchical encoding / decoding described above, whereby the first technique is applied. Effects similar to those described above in the second embodiment and the second embodiment can be obtained.
- the present technology can also be applied to HTTP streaming such as MPEGASHDASH, for example, by selecting an appropriate piece of data from a plurality of encoded data with different resolutions prepared in advance. Can do. That is, information regarding encoding and decoding can be shared among a plurality of such encoded data.
- the method for transmitting such information is not limited to such an example.
- these pieces of information may be transmitted or recorded as separate data associated with the encoded bitstream without being multiplexed into the encoded bitstream.
- the term “associate” means that an image (which may be a part of an image such as a slice or a block) included in the bitstream and information corresponding to the image can be linked at the time of decoding. Means. That is, information may be transmitted on a transmission path different from that of the image (or bit stream).
- Information may be recorded on a recording medium (or another recording area of the same recording medium) different from the image (or bit stream). Furthermore, the information and the image (or bit stream) may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
- this technique can also take the following structures.
- a receiving unit that receives hierarchical image encoded data obtained by encoding image data that has been formed into a plurality of hierarchies, and motion information encoded data obtained by encoding motion information used for encoding the image data; , A motion for decoding the motion information encoded data received by the receiving unit using motion information of a peripheral block of a layer different from that of the current block when motion information of a peripheral block of the same layer as the current block is unavailable;
- An information decoding unit An image processing apparatus comprising: a decoding unit that decodes the hierarchical image encoded data received by the receiving unit using motion information obtained by decoding the motion information encoded data by the motion information decoding unit.
- the motion information decoding unit includes: When the motion information of the peripheral block in the same layer as the current block is available, the motion information of the peripheral block is used to re-predict the predicted motion information used for encoding the motion information used for encoding the image data. Using the predicted motion information constructed and reconstructed, the motion information encoded data is decoded, When motion information of peripheral blocks in the same layer as the current block is unavailable, motion information used for encoding the image data is encoded using motion information of peripheral blocks in a layer different from the current block.
- the image processing device according to any one of (1), (3) to (9), wherein the predicted motion information used is reconstructed, and the motion information encoded data is decoded using the reconstructed predicted motion information .
- the motion information decoding unit in AMVP (Advanced Motion Vector Prediction) mode, instead of the unavailable motion information of the peripheral block in the same layer as the current block, the peripheral block in a layer different from the current block
- AMVP Advanced Motion Vector Prediction
- the image processing device according to any one of (1), (2), and (4) to (9), wherein available motion information of a peripheral block corresponding to is a candidate for the predicted motion information.
- the motion information decoding unit The time axis direction of the peripheral block corresponding to the peripheral block in a layer different from the current block, instead of the unusable motion information in which the scaling process in the time axis direction of the peripheral block in the same layer as the current block is performed
- the available motion information that is subjected to the scaling process is used as the predicted motion information candidate
- the time axis of the peripheral block corresponding to the peripheral block in a layer different from the current block instead of the unusable motion information that is not subjected to scaling processing in the time axis direction of the peripheral block in the same layer as the current block
- the image processing apparatus according to any one of (1) to (3) and (5) to (9), wherein available motion information that is not subjected to direction scaling processing is used as a candidate for the predicted motion information.
- the motion information decoding unit performs a scaling process in a spatial direction on motion information of peripheral blocks in a layer different from the current block according to a resolution ratio between layers.
- (1) to (4), (6) The image processing device according to any one of (9) to (9).
- the motion information decoding unit may identify a missing number of the candidate list of the predicted motion information in the merge mode based on available motion information of a peripheral block corresponding to the peripheral block in a layer different from the current block.
- the image processing apparatus according to any one of (1) to (5) and (7) to (9).
- the control unit further specifies, in the candidate list, whether motion information of a block in the same layer as the current block is used, and whether motion information of a block in a layer different from the current block is used.
- the image processing apparatus according to any one of (1) to (6), (8), and (9).
- the motion information decoding unit is based on the control information received by the receiving unit, When using motion information of blocks in the same layer as the current block for the candidate list, motion information of blocks in a layer different from the current block is used to compensate for missing numbers in the candidate list, When motion information of a block of a different layer from the current block is used for the candidate list, motion information of a block of the same layer as the current block is used to compensate for the missing number of the candidate list (1) to (7), The image processing apparatus according to any one of (9).
- the motion information decoding unit compensates for a missing number in the candidate list by using motion information of a block different from a neighboring block that is a collocated block in a layer different from the current block.
- an encoding unit that encodes image data that has been hierarchized using motion information;
- the motion used for encoding the image data by the encoding unit using the motion information of the peripheral block of a layer different from the current block A motion information encoding unit that encodes information;
- the encoded image data obtained by encoding the image data by the encoding unit and the motion information encoded data obtained by encoding the motion information by the motion information encoding unit are transmitted.
- An image processing apparatus comprising: a transmission unit.
- the motion information encoding unit may When motion information of a peripheral block in the same layer as the current block is available, predicted motion information is generated using the motion information of the peripheral block, and the motion information is encoded using the generated predicted motion information, When motion information of a neighboring block in the same layer as the current block is unavailable, predicted motion information is generated using motion information of a neighboring block in a layer different from the current block, and the generated predicted motion information is used to generate the motion information.
- the image processing apparatus according to any one of (11) and (13) to (19), wherein the motion information is encoded.
- the motion information encoding unit replaces the peripheral information in a layer different from the current block in place of the unavailable motion information of the peripheral block in the same layer as the current block.
- the image processing device according to any one of (11), (12), and (14) to (19), wherein available motion information of a peripheral block corresponding to a block is used as a candidate for the predicted motion information.
- the motion information encoding unit includes: The time axis direction of the peripheral block corresponding to the peripheral block in a layer different from the current block, instead of the unusable motion information in which the scaling process in the time axis direction of the peripheral block in the same layer as the current block is performed
- the available motion information that is subjected to the scaling process is used as the predicted motion information candidate
- the time axis of the peripheral block corresponding to the peripheral block in a layer different from the current block instead of the unusable motion information that is not subjected to scaling processing in the time axis direction of the peripheral block in the same layer as the current block
- the image processing apparatus according to any one of (11) to (13) and (15) to (19), wherein available motion information that is not subjected to direction scaling processing is used as the predicted motion information candidate.
- the motion information encoding unit performs scaling processing on the motion information of peripheral blocks in a layer different from the current block in a spatial direction according to a resolution ratio between layers. (11) to (14), (16 ) To (19). (16) In the merge mode, the motion information encoding unit uses the motion number of the prediction block of the candidate list of the prediction motion information as the available motion information of the peripheral block corresponding to the peripheral block in a layer different from the current block.
- the image processing apparatus according to any one of (11) to (15) and (17) to (19).
- the transmission unit further controls whether to use motion information of a block in the same layer as the current block and motion information of a block in a layer different from the current block in the candidate list.
- the image processing apparatus according to any one of (11) to (16), (18), and (19), which transmits information.
- the motion information encoding unit may When using motion information of blocks in the same layer as the current block for the candidate list, motion information of blocks in a layer different from the current block is used to compensate for missing numbers in the candidate list, When motion information of a block in a layer different from that of the current block is used in the candidate list, motion information of a block in the same layer as the current block is used to compensate for the missing number in the candidate list (11) to (17), (19) The image processing apparatus according to any one of (19).
- the motion information encoding unit compensates for a missing number in the candidate list by using motion information of a block different from a neighboring block that is a collocated block in a layer different from the current block.
- (11) to (18) An image processing apparatus according to any one of the above. (20) Encode the multi-layered image data using motion information, When the motion information of the peripheral block of the same layer as the current block is unavailable, the motion information used for encoding the image data is encoded using the motion information of the peripheral block of a layer different from the current block, An image processing method for transmitting hierarchical image encoded data obtained by encoding the image data and motion information encoded data obtained by encoding the motion information.
- 100 scalable encoding device 101 common information generation unit, 102 encoding control unit, 103 base layer image encoding unit, 104 motion information encoding unit, 105 enhancement layer image encoding unit, 116 lossless encoding unit, 125 motion prediction ⁇ Compensator, 135 motion prediction / compensation unit, 151 motion information scaling unit, 152 base layer motion information buffer, 153 enhancement layer motion information buffer, 154 AMVP processing unit, 155 merge processing unit, 156 optimal predictor setting unit, 161 candidate setting 162 availability determination unit, 163 space scaling unit, 164 time scaling unit, 165 base layer motion information selection unit, 171 Candidate list generation unit, 172 layer control information setting unit, 173 layer control unit, 174 availability determination unit, 175 base layer motion information selection unit, 200 scalable decoding device, 201 common information acquisition unit, 202 decoding control unit, 203 base layer image Decoding unit, 204 ⁇ ⁇ motion information decoding unit, 205 enhancement layer image decoding unit, 212 lossless decoding unit, 222 motion compensation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
0.概要
1.第1の実施の形態(画像符号化装置)
2.第2の実施の形態(画像復号装置)
3.その他
4.第3の実施の形態(コンピュータ)
5.応用例
6.スケーラブル符号化の応用例
<符号化方式>
以下においては、HEVC(High Efficiency Video Coding)方式の画像符号化・復号に適用する場合を例に、本技術を説明する。
AVC(Advanced Video Coding)方式においては、マクロブロックとサブマクロブロックによる階層構造が規定されている。しかしながら、16画素×16画素のマクロブロックでは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対して最適ではない。
ところで、AVCそしてHEVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
ところで、これまでの、MPEG2、AVCといった画像符号化方式は、図2乃至図4に示されるような、スケーラビリティ(scalability)機能を有していた。スケーラブル符号化(階層符号化)とは、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化する方式である。
HEVCにおいて定められている動き情報の符号化方式について述べる。
(2)周辺ブロックEおよび周辺ブロックA0のVEC2,3,4のスキャンを行う。
(3)周辺ブロックC、周辺ブロックB0、および周辺ブロックDのVEC1のスキャンを行う。
(4)周辺ブロックC、周辺ブロックB0、および周辺ブロックDのVEC2,3,4のスキャンを行う。
ところで、スケーラブル符号化・スケーラブル復号の場合、一般的に、ベースレイヤとエンハンスメントレイヤとの間で、動き情報は高い相関性を有する。
図10において、上側がエンハンスメントレイヤ(Enhancementlayer)のブロックを示し、下側がベースレイヤ(Baselayer)のブロックを示している。
また、マージモードの場合、エンハンスメントレイヤにおいて予測動き情報の候補リストに欠番があった場合、ベースレイヤのアベイラブルな動き情報を候補リストに補填する。すなわち、候補リストに欠番があった場合、エンハンスメントレイヤのカレントブロックに対応する、ベースレイヤのカレントブロックの動き情報を候補リストに補填する。
<スケーラブル符号化装置>
図16は、スケーラブル符号化装置の主な構成例を示すブロック図である。
図17は、図16のベースレイヤ画像符号化部103の主な構成例を示すブロック図である。図17に示されるように、ベースレイヤ画像符号化部103は、A/D変換部111、画面並べ替えバッファ112、演算部113、直交変換部114、量子化部115、可逆符号化部116、蓄積バッファ117、逆量子化部118、および逆直交変換部119を有する。また、ベースレイヤ画像符号化部103は、演算部120、ループフィルタ121、フレームメモリ122、選択部123、イントラ予測部124、動き予測・補償部125、予測画像選択部126、およびレート制御部127を有する。
図18は、図16のエンハンスメントレイヤ画像符号化部105の主な構成例を示すブロック図である。図18に示されるように、エンハンスメントレイヤ画像符号化部105は、図17のベースレイヤ画像符号化部103と基本的に同様の構成を有する。
図19は、図16の動き情報符号化部104の主な構成例を示すブロック図である。
次に、以上のようなスケーラブル符号化装置100により実行される各処理の流れについて説明する。最初に、図20のフローチャートを参照して、符号化処理の流れの例を説明する。スケーラブル符号化装置100は、ピクチャ毎にこの符号化処理を実行する。
次に、図21のフローチャートを参照して、図20のステップS103において実行されるベースレイヤ符号化処理の流れの例を説明する。
次に、図22のフローチャートを参照して、図20のステップS105において実行されるエンハンスメントレイヤ符号化処理の流れの例を説明する。
次に、図23のフローチャートを参照して、図22のステップS154において実行される動き予測・補償処理の流れの例を説明する。
次に、図24のフローチャートを参照して、図23のステップS182において実行される動き情報符号化処理の流れの例を説明する。
次に、図25のフローチャートを参照して、図24のステップS201において実行されるAMVP処理の流れの例を説明する。
次に、図26および図27のフローチャートを参照して、図25のステップS221やステップS222において実行される空間予測動き情報探索処理の流れの例を説明する。
次に、図30のフローチャートを参照して、図25のステップS223において実行される時間予測動き情報探索処理の流れの例を説明する。
次に、図31のフローチャートを参照して、図24のステップS202において実行されるマージ処理の流れの例を説明する。
なお、上述したように、ベースレイヤにおいて、図6の周辺ブロックCR6が、コロケーテッドブロックとされ、その動き情報がコロケーテッド(Collocated)動き情報として用いられた場合、周辺ブロックH6の動き情報を用いて補填処理を行い、ベースレイヤにおいて、周辺ブロックH6の動き情報がコロケーテッド動き情報として用いられた場合、周辺ブロックCR6の動き情報を用いて補填処理を行うようにしてもよい。
また、上述したように、候補リストにおいて、単一階層のHEVCにおけるテンポラルプレディクタの代わりに、ベースレイヤプレディクタを用いるようにしても良い。
<スケーラブル復号装置>
次に、以上のようにスケーラブル符号化(階層符号化)された符号化データ(ビットストリーム)の復号について説明する。図34は、図16のスケーラブル符号化装置100に対応するスケーラブル復号装置の主な構成例を示すブロック図である。図34に示されるスケーラブル復号装置200は、例えばスケーラブル符号化装置100により画像データがスケーラブル符号化されて得られた符号化データを、その符号化方法に対応する方法でスケーラブル復号する。
図35は、図34のベースレイヤ画像復号部203の主な構成例を示すブロック図である。図35に示されるようにベースレイヤ画像復号部203は、蓄積バッファ211、可逆復号部212、逆量子化部213、逆直交変換部214、演算部215、ループフィルタ216、画面並べ替えバッファ217、およびD/A変換部218を有する。また、ベースレイヤ画像復号部203は、フレームメモリ219、選択部220、イントラ予測部221、動き補償部222、および選択部223を有する。
図36は、図34のエンハンスメントレイヤ画像復号部205の主な構成例を示すブロック図である。図36に示されるように、エンハンスメントレイヤ画像復号部205は、図35のベースレイヤ画像復号部203と基本的に同様の構成を有する。
図37は、図34の動き情報復号部204の主な構成例を示すブロック図である。
次に、以上のようなスケーラブル復号装置200により実行される各処理の流れについて説明する。最初に、図38のフローチャートを参照して、復号処理の流れの例を説明する。スケーラブル復号装置200は、ピクチャ毎にこの復号処理を実行する。
次に、図39のフローチャートを参照して、図38のステップS403において実行されるベースレイヤ復号処理の流れの例を説明する。
次に、図40のフローチャートを参照して、図38のステップS405において実行されるエンハンスメントレイヤ復号処理の流れの例を説明する。
次に、図41のフローチャートを参照して、図40のステップS455において実行される予測処理の流れの例を説明する。
次に、図42のフローチャートを参照して、図41のステップS482において実行される動き情報復号処理の流れの例を説明する。
以上においては、スケーラブル符号化により画像データが階層化されて複数レイヤ化されるように説明したが、そのレイヤ数は任意である。また、例えば、図43の例に示されるように、一部のピクチャが階層化されるようにしてもよい。また、以上においては、符号化・復号において、エンハンスメントレイヤは、ベースレイヤの情報を利用して処理されるように説明したが、これに限らず、エンハンスメントレイヤが、処理済の他のエンハンスメントレイヤの情報を利用して処理されるようにしてもよい。
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
<第1の応用例:テレビジョン受像機>
図46は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
図47は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
図48は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
図49は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
<第1のシステム>
次に、スケーラブル符号化(階層符号化)されたスケーラブル符号化データの具体的な利用例について説明する。スケーラブル符号化は、例えば、図50に示される例のように、伝送するデータの選択のために利用される。
また、スケーラブル符号化は、例えば、図51に示される例のように、複数の通信媒体を介する伝送のために利用される。
また、スケーラブル符号化は、例えば、図52に示される例のように、符号化データの記憶に利用される。
(1) 複数階層化された画像データが符号化された階層画像符号化データと、前記画像データの符号化に用いられた動き情報が符号化された動き情報符号化データとを受け取る受け取り部と、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記受け取り部により受け取られた前記動き情報符号化データを復号する動き情報復号部と、
前記動き情報復号部により前記動き情報符号化データが復号されて得られた動き情報を用いて、前記受け取り部による受け取られた前記階層画像符号化データを復号する復号部と
を備える画像処理装置。
(2) 前記動き情報復号部は、
前記カレントブロックと同階層の周辺ブロックの動き情報がアベイラブルな場合、前記周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた動き情報の符号化に用いた予測動き情報を再構築し、再構築した前記予測動き情報を用いて、前記動き情報符号化データを復号し、
前記カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた動き情報の符号化に用いた予測動き情報を再構築し、再構築した前記予測動き情報を用いて、前記動き情報符号化データを復号する
(1)、(3)乃至(9)のいずれかに記載の画像処理装置。
(3) 前記動き情報復号部は、AMVP(Advanced Motion Vector Prediction)モードにおける、前記カレントブロックと同階層の周辺ブロックのアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報を前記予測動き情報の候補とする
(1)、(2)、(4)乃至(9)のいずれかに記載の画像処理装置。
(4) 前記動き情報復号部は、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われるアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われるアベイラブルな動き情報を前記予測動き情報の候補とし、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われないアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われないアベイラブルな動き情報を前記予測動き情報の候補とする
(1)乃至(3)、(5)乃至(9)のいずれかに記載の画像処理装置。
(5) 前記動き情報復号部は、階層間の解像度比に応じて、前記カレントブロックと異なる階層の周辺ブロックの動き情報を、空間方向にスケーリング処理する
(1)乃至(4)、(6)乃至(9)のいずれかに記載の画像処理装置。
(6) 前記動き情報復号部は、マージ(Merge)モードにおける、前記予測動き情報の候補リストの欠番を、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報により補填する
(1)乃至(5)、(7)乃至(9)のいずれかに記載の画像処理装置。
(7) 前記受け取り部は、さらに、前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いるか、並びに、前記カレントブロックと異なる階層のブロックの動き情報を用いるかを指定する制御情報を受け取る
(1)乃至(6)、(8)、(9)のいずれかに記載の画像処理装置。
(8) 前記動き情報復号部は、前記受け取り部により受け取られた前記制御情報に基づいて、
前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと異なる階層のブロックの動き情報を用い、
前記候補リストに、前記カレントブロックと異なる階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと同階層のブロックの動き情報を用いる
(1)乃至(7)、(9)のいずれかに記載の画像処理装置。
(9) 前記動き情報復号部は、前記カレントブロックと異なる階層においてコロケーテッドブロックとされた周辺ブロックと異なるブロックの動き情報により、前記候補リストの欠番を補填する
(1)乃至(8)のいずれかに記載の画像処理装置。
(10) 複数階層化された画像データが符号化された階層画像符号化データと、前記画像データの符号化に用いられた動き情報が符号化された動き情報符号化データとを受け取り、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、受け取られた前記動き情報符号化データを復号し、
前記動き情報符号化データが復号されて得られた動き情報を用いて、受け取られた前記階層画像符号化データを復号する
画像処理方法。
(11) 複数階層化された画像データを、動き情報を用いて符号化する符号化部と、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記符号化部による前記画像データの符号化に用いられた前記動き情報を符号化する動き情報符号化部と、
前記符号化部により前記画像データが符号化されて得られた階層画像符号化データと、前記動き情報符号化部により前記動き情報が符号化されて得られた動き情報符号化データとを伝送する伝送部と
を備える画像処理装置。
(12) 前記動き情報符号化部は、
前記カレントブロックと同階層の周辺ブロックの動き情報がアベイラブルな場合、前記周辺ブロックの動き情報を用いて予測動き情報を生成し、生成した前記予測動き情報を用いて前記動き情報を符号化し、
前記カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて予測動き情報を生成し、生成した前記予測動き情報を用いて前記動き情報を符号化する
(11)、(13)乃至(19)のいずれかに記載の画像処理装置。
(13) 前記動き情報符号化部は、AMVP(Advanced Motion Vector Prediction)モードにおける、前記カレントブロックと同階層の周辺ブロックのアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報を前記予測動き情報の候補とする
(11)、(12)、(14)乃至(19)のいずれかに記載の画像処理装置。
(14) 前記動き情報符号化部は、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われるアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われるアベイラブルな動き情報を前記予測動き情報の候補とし、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われないアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われないアベイラブルな動き情報を前記予測動き情報の候補とする
(11)乃至(13)、(15)乃至(19)のいずれかに記載の画像処理装置。
(15) 前記動き情報符号化部は、階層間の解像度比に応じて、前記カレントブロックと異なる階層の周辺ブロックの動き情報を、空間方向にスケーリング処理する
(11)乃至(14)、(16)乃至(19)のいずれかに記載の画像処理装置。
(16) 前記動き情報符号化部は、マージ(Merge)モードにおける、前記予測動き情報の候補リストの欠番を、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報により補填する
(11)乃至(15)、(17)乃至(19)のいずれかに記載の画像処理装置。
(17) 前記伝送部は、さらに、前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いるか、並びに、前記カレントブロックと異なる階層のブロックの動き情報を用いるかを指定する制御情報を伝送する
(11)乃至(16)、(18)、(19)のいずれかに記載の画像処理装置。
(18) 前記動き情報符号化部は、
前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと異なる階層のブロックの動き情報を用い、
前記候補リストに、前記カレントブロックと異なる階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと同階層のブロックの動き情報を用いる
(11)乃至(17)、(19)のいずれかに記載の画像処理装置。
(19) 前記動き情報符号化部は、前記カレントブロックと異なる階層においてコロケーテッドブロックとされた周辺ブロックと異なるブロックの動き情報により、前記候補リストの欠番を補填する
(11)乃至(18)のいずれかに記載の画像処理装置。
(20) 複数階層化された画像データを、動き情報を用いて符号化し、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた前記動き情報を符号化し、
前記画像データが符号化されて得られた階層画像符号化データと、前記動き情報が符号化されて得られた動き情報符号化データとを伝送する
画像処理方法。
Claims (20)
- 複数階層化された画像データが符号化された階層画像符号化データと、前記画像データの符号化に用いられた動き情報が符号化された動き情報符号化データとを受け取る受け取り部と、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記受け取り部により受け取られた前記動き情報符号化データを復号する動き情報復号部と、
前記動き情報復号部により前記動き情報符号化データが復号されて得られた動き情報を用いて、前記受け取り部による受け取られた前記階層画像符号化データを復号する復号部と
を備える画像処理装置。 - 前記動き情報復号部は、
前記カレントブロックと同階層の周辺ブロックの動き情報がアベイラブルな場合、前記周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた動き情報の符号化に用いた予測動き情報を再構築し、再構築した前記予測動き情報を用いて、前記動き情報符号化データを復号し、
前記カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた動き情報の符号化に用いた予測動き情報を再構築し、再構築した前記予測動き情報を用いて、前記動き情報符号化データを復号する
請求項1に記載の画像処理装置。 - 前記動き情報復号部は、AMVP(Advanced Motion Vector Prediction)モードにおける、前記カレントブロックと同階層の周辺ブロックのアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報を前記予測動き情報の候補とする
請求項2に記載の画像処理装置。 - 前記動き情報復号部は、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われるアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われるアベイラブルな動き情報を前記予測動き情報の候補とし、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われないアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われないアベイラブルな動き情報を前記予測動き情報の候補とする
請求項3に記載の画像処理装置。 - 前記動き情報復号部は、階層間の解像度比に応じて、前記カレントブロックと異なる階層の周辺ブロックの動き情報を、空間方向にスケーリング処理する
請求項2に記載の画像処理装置。 - 前記動き情報復号部は、マージ(Merge)モードにおける、前記予測動き情報の候補リストの欠番を、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報により補填する
請求項2に記載の画像処理装置。 - 前記受け取り部は、さらに、前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いるか、並びに、前記カレントブロックと異なる階層のブロックの動き情報を用いるかを指定する制御情報を受け取る
請求項6に記載の画像処理装置。 - 前記動き情報復号部は、前記受け取り部により受け取られた前記制御情報に基づいて、
前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと異なる階層のブロックの動き情報を用い、
前記候補リストに、前記カレントブロックと異なる階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと同階層のブロックの動き情報を用いる
請求項7に記載の画像処理装置。 - 前記動き情報復号部は、前記カレントブロックと異なる階層においてコロケーテッドブロックとされた周辺ブロックと異なるブロックの動き情報により、前記候補リストの欠番を補填する
請求項6に記載の画像処理装置。 - 複数階層化された画像データが符号化された階層画像符号化データと、前記画像データの符号化に用いられた動き情報が符号化された動き情報符号化データとを受け取り、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、受け取られた前記動き情報符号化データを復号し、
前記動き情報符号化データが復号されて得られた動き情報を用いて、受け取られた前記階層画像符号化データを復号する
画像処理方法。 - 複数階層化された画像データを、動き情報を用いて符号化する符号化部と、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記符号化部による前記画像データの符号化に用いられた前記動き情報を符号化する動き情報符号化部と、
前記符号化部により前記画像データが符号化されて得られた階層画像符号化データと、前記動き情報符号化部により前記動き情報が符号化されて得られた動き情報符号化データとを伝送する伝送部と
を備える画像処理装置。 - 前記動き情報符号化部は、
前記カレントブロックと同階層の周辺ブロックの動き情報がアベイラブルな場合、前記周辺ブロックの動き情報を用いて予測動き情報を生成し、生成した前記予測動き情報を用いて前記動き情報を符号化し、
前記カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて予測動き情報を生成し、生成した前記予測動き情報を用いて前記動き情報を符号化する
請求項11に記載の画像処理装置。 - 前記動き情報符号化部は、AMVP(Advanced Motion Vector Prediction)モードにおける、前記カレントブロックと同階層の周辺ブロックのアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報を前記予測動き情報の候補とする
請求項12に記載の画像処理装置。 - 前記動き情報符号化部は、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われるアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われるアベイラブルな動き情報を前記予測動き情報の候補とし、
前記カレントブロックと同階層の周辺ブロックの、時間軸方向のスケーリング処理が行われないアンアベイラブルな動き情報の代わりに、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックの、時間軸方向のスケーリング処理が行われないアベイラブルな動き情報を前記予測動き情報の候補とする
請求項13に記載の画像処理装置。 - 前記動き情報符号化部は、階層間の解像度比に応じて、前記カレントブロックと異なる階層の周辺ブロックの動き情報を、空間方向にスケーリング処理する
請求項12に記載の画像処理装置。 - 前記動き情報符号化部は、マージ(Merge)モードにおける、前記予測動き情報の候補リストの欠番を、前記カレントブロックと異なる階層の、前記周辺ブロックに対応する周辺ブロックのアベイラブルな動き情報により補填する
請求項12に記載の画像処理装置。 - 前記伝送部は、さらに、前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いるか、並びに、前記カレントブロックと異なる階層のブロックの動き情報を用いるかを指定する制御情報を伝送する
請求項16に記載の画像処理装置。 - 前記動き情報符号化部は、
前記候補リストに、前記カレントブロックと同階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと異なる階層のブロックの動き情報を用い、
前記候補リストに、前記カレントブロックと異なる階層のブロックの動き情報を用いる場合、前記候補リストの欠番の補填に、前記カレントブロックと同階層のブロックの動き情報を用いる
請求項17に記載の画像処理装置。 - 前記動き情報符号化部は、前記カレントブロックと異なる階層においてコロケーテッドブロックとされた周辺ブロックと異なるブロックの動き情報により、前記候補リストの欠番を補填する
請求項16に記載の画像処理装置。 - 複数階層化された画像データを、動き情報を用いて符号化し、
カレントブロックと同階層の周辺ブロックの動き情報がアンアベイラブルな場合、前記カレントブロックと異なる階層の周辺ブロックの動き情報を用いて、前記画像データの符号化に用いられた前記動き情報を符号化し、
前記画像データが符号化されて得られた階層画像符号化データと、前記動き情報が符号化されて得られた動き情報符号化データとを伝送する
画像処理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/648,350 US20150304678A1 (en) | 2012-12-26 | 2013-12-16 | Image processing device and method |
CN201380066967.3A CN104885464A (zh) | 2012-12-26 | 2013-12-16 | 图像处理装置和方法 |
JP2014554329A JPWO2014103774A1 (ja) | 2012-12-26 | 2013-12-16 | 画像処理装置および方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012283613 | 2012-12-26 | ||
JP2012-283613 | 2012-12-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014103774A1 true WO2014103774A1 (ja) | 2014-07-03 |
Family
ID=51020862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/083598 WO2014103774A1 (ja) | 2012-12-26 | 2013-12-16 | 画像処理装置および方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150304678A1 (ja) |
JP (1) | JPWO2014103774A1 (ja) |
CN (1) | CN104885464A (ja) |
WO (1) | WO2014103774A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017201678A1 (zh) * | 2016-05-24 | 2017-11-30 | 华为技术有限公司 | 图像预测方法和相关设备 |
CN106027538A (zh) * | 2016-05-30 | 2016-10-12 | 东软集团股份有限公司 | 加载图片的方法及装置、发送图片资源的方法及装置 |
JP7323641B2 (ja) * | 2019-05-21 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | アフィンモードのための適応動きベクトル差分分解 |
WO2021027774A1 (en) | 2019-08-10 | 2021-02-18 | Beijing Bytedance Network Technology Co., Ltd. | Subpicture dependent signaling in video bitstreams |
CN114631317B (zh) | 2019-10-18 | 2024-03-15 | 北京字节跳动网络技术有限公司 | 子图片的参数集信令中的语法约束 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012191513A (ja) * | 2011-03-11 | 2012-10-04 | Sony Corp | 画像処理装置および方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002315004A (ja) * | 2001-04-09 | 2002-10-25 | Ntt Docomo Inc | 画像符号化方法及び装置、画像復号方法及び装置、並びに画像処理システム |
JP2006211304A (ja) * | 2005-01-28 | 2006-08-10 | Matsushita Electric Ind Co Ltd | 映像符号化装置、映像復号化装置、映像符号化方法、映像復号化方法、映像符号化プログラムおよび映像復号化プログラム |
KR20070075267A (ko) * | 2006-01-10 | 2007-07-18 | 엘지전자 주식회사 | 영상 신호를 인코딩 및 디코딩 하는 방법 |
-
2013
- 2013-12-16 JP JP2014554329A patent/JPWO2014103774A1/ja active Pending
- 2013-12-16 WO PCT/JP2013/083598 patent/WO2014103774A1/ja active Application Filing
- 2013-12-16 US US14/648,350 patent/US20150304678A1/en not_active Abandoned
- 2013-12-16 CN CN201380066967.3A patent/CN104885464A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012191513A (ja) * | 2011-03-11 | 2012-10-04 | Sony Corp | 画像処理装置および方法 |
Non-Patent Citations (1)
Title |
---|
KIRAN MISRA ET AL.: "Description of scalable video coding technology proposal by Sharp (proposal 1", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP3 AND ISO/IEC JTC1/SC29/WG11 11TH MEETING, 10 October 2012 (2012-10-10), SHANGHAI, CN, pages 15 , 16 , 18 - 21 * |
Also Published As
Publication number | Publication date |
---|---|
US20150304678A1 (en) | 2015-10-22 |
JPWO2014103774A1 (ja) | 2017-01-12 |
CN104885464A (zh) | 2015-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6508554B2 (ja) | 画像処理装置および方法、並びに、プログラム | |
JP6296179B2 (ja) | 画像処理装置および方法、記録媒体、並びに、プログラム | |
JP2018164300A (ja) | 画像復号装置および方法 | |
JP6300046B2 (ja) | 画像処理装置および方法 | |
WO2013108689A1 (ja) | 画像処理装置および方法 | |
WO2014050731A1 (ja) | 画像処理装置および方法 | |
US9961366B2 (en) | Image processing apparatus and method that prohibits bi-prediction based on block size | |
JPWO2014050676A1 (ja) | 画像処理装置および方法 | |
JPWO2013108688A1 (ja) | 画像処理装置および方法 | |
WO2014103774A1 (ja) | 画像処理装置および方法 | |
WO2014156708A1 (ja) | 画像復号装置および方法 | |
WO2013157308A1 (ja) | 画像処理装置及び画像処理方法 | |
WO2014103764A1 (ja) | 画像処理装置および方法 | |
WO2013084775A1 (ja) | 画像処理装置および方法 | |
WO2014141899A1 (ja) | 画像処理装置および方法 | |
WO2015098563A1 (ja) | 画像符号化装置および方法、並びに画像復号装置および方法 | |
JPWO2014002900A1 (ja) | 画像処理装置および画像処理方法 | |
WO2015064401A1 (ja) | 画像処理装置および方法 | |
WO2013002105A1 (ja) | 画像処理装置および方法 | |
WO2014141964A1 (ja) | 画像処理装置および方法 | |
WO2014156707A1 (ja) | 画像符号化装置および方法、並びに、画像復号装置および方法 | |
WO2014156705A1 (ja) | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13867043 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014554329 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14648350 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13867043 Country of ref document: EP Kind code of ref document: A1 |