WO2017154604A1 - 画像処理装置および方法 - Google Patents
画像処理装置および方法 Download PDFInfo
- Publication number
- WO2017154604A1 WO2017154604A1 PCT/JP2017/006986 JP2017006986W WO2017154604A1 WO 2017154604 A1 WO2017154604 A1 WO 2017154604A1 JP 2017006986 W JP2017006986 W JP 2017006986W WO 2017154604 A1 WO2017154604 A1 WO 2017154604A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- layer
- unit
- image
- decoding
- encoding
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Definitions
- the present disclosure relates to an image processing apparatus and method, and more particularly, to an image processing apparatus and method capable of reducing an encoding / decoding load.
- hierarchical image encoding / hierarchical image decoding in which image data is divided into a plurality of layers (hierarchized) and encoded so as to have scalability for predetermined parameters.
- hierarchical image encoding / hierarchical image decoding in which image data is divided into a plurality of layers (hierarchized) and encoded so as to have scalability for predetermined parameters.
- inter-layer prediction for generating a predicted image from an image of another layer is performed. There was something to be done.
- inter-layer prediction requires scalable parameter conversion so that images, motion information, and the like can be used in other layers.
- DRAM Dynamic Random Access Memory
- the amount of data written to DRAM increases, which may increase the required DRAM capacity (usage).
- access to the DRAM that is, bandwidth usage of the memory bus
- the encoding / decoding waiting time increases due to the conversion process, and the processing time may increase. That is, there is a possibility that the encoding / decoding load increases by performing the inter-layer prediction.
- the present disclosure has been made in view of such a situation, and is intended to reduce the load of encoding / decoding.
- An image processing apparatus performs inter-layer prediction using correlation between layers in encoding of the second layer of image data including a plurality of layers including a first layer and a second layer.
- the information related to the encoding of the first layer reference used for the inter-layer prediction is acquired, and the acquired information related to the encoding is converted from the first layer reference to the second layer reference.
- An inter-layer processing unit that performs the inter-layer prediction using information related to the encoding of the second layer reference obtained by conversion by the inter-layer processing unit, and uses the obtained predicted image data
- An image processing apparatus comprising: a first encoding unit that encodes the image data of the second layer.
- the inter-layer processing unit acquires the image data of the first layer used when generating a predicted image by the inter-layer prediction as information on the encoding of the first layer reference, and acquires the acquired Used in the prediction of motion information by the inter-layer prediction as information on up-sampling image data from the first layer reference to the second layer reference and information on the encoding of the first layer reference.
- the first layer motion information is acquired, and at least one of the processing of scaling the acquired motion information from the first layer reference to the second layer reference can be performed.
- a second encoding unit that encodes the image data of the first layer using prediction, and the second encoding unit obtained by encoding the image data of the first layer by the second encoding unit.
- a storage unit that stores information on the encoding of one layer reference, and the inter-layer processing unit acquires the information on the encoding of the first layer reference stored in the storage unit The acquired information on the encoding can be converted from the first layer reference to the second layer reference.
- the first encoding unit encodes the image data of the second layer in an encoding unit that is a variable size block obtained by recursively dividing a maximum encoding unit that is a fixed size block in sequence units.
- the inter-layer processing unit obtains information on the first layer-based coding for each prediction unit that is a block obtained by further dividing the coding unit, and obtains the obtained information on the coding in the first unit. Can be converted from the second layer reference to the second layer reference.
- inter-layer prediction using correlation between layers in the encoding of the second layer of image data including a plurality of layers including a first layer and a second layer is performed.
- the information related to the encoding of the first layer reference used for the inter-layer prediction is acquired, and the acquired information related to the encoding is converted from the first layer reference to the second layer reference.
- the inter-layer prediction is performed using information related to the encoding of the second layer reference obtained by the conversion, and the image of the second layer is obtained using the obtained predicted image data.
- An image processing apparatus uses correlation between layers in decoding encoded data of the second layer of image data including a plurality of layers including a first layer and a second layer.
- the inter-layer prediction is performed, the information related to the decoding of the first layer reference used for the inter-layer prediction is acquired, and the information related to the acquired decoding is acquired from the first layer reference to the second layer reference.
- An inter-layer processing unit that converts the information into the image, and the inter-layer prediction using the information related to the decoding of the second layer reference obtained by the conversion by the inter-layer processing unit, and the obtained predicted image data
- an image processing apparatus including a first decoding unit that decodes the encoded data of the second layer.
- the inter-layer processing unit acquires the image data of the first layer used when generating a predicted image by the inter-layer prediction as information related to the decoding of the first layer reference, and the acquired image
- the processing used for up-sampling data from the first layer reference to the second layer reference, and information relating to the decoding of the first layer reference, used when predicting motion information by the inter-layer prediction It is possible to perform at least one of processing for acquiring motion information of the first layer and scaling the acquired motion information from the first layer reference to the second layer reference.
- a second decoding unit that decodes encoded data of the image data of the first layer using prediction; and the first layer reference obtained by decoding the encoded data by the second decoding unit
- a storage unit that stores information related to the decoding of the first layer reference, and the inter-layer processing unit acquires the information related to the decoding of the first layer reference stored in the storage unit, and relates to the acquired decoding Information can be converted from the first layer reference to the second layer reference.
- the first decoding unit encodes the image data of the second layer in an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in a sequence unit.
- the inter-layer processing unit acquires information on the first layer-based decoding for each prediction unit, which is a block obtained by further dividing the coding unit, and the acquired decoding Can be converted from the first layer reference to the second layer reference.
- An image processing method uses correlation between layers in decoding encoded data of the second layer of image data including a plurality of layers including a first layer and a second layer.
- the inter-layer prediction is performed, the information related to the decoding of the first layer reference used for the inter-layer prediction is acquired, and the information related to the acquired decoding is acquired from the first layer reference to the second layer reference.
- the inter-layer prediction is performed using the information related to the decoding of the second layer criterion obtained by the conversion, and the predicted image data obtained is used to perform the inter-layer prediction.
- An image processing device configured to perform first encoding that encodes the first layer of image data including a plurality of layers including a first layer and a second layer using prediction. And an inter layer using correlation between layers in encoding the second layer of the image data obtained by encoding the image data of the first layer by the first encoding unit
- An image processing apparatus comprising: an inter-layer processing unit that converts information relating to encoding of the first layer reference used for prediction from the first layer reference to the second layer reference.
- the information related to the encoding includes image data of the first layer obtained by the first encoding unit used in generating a predicted image by the inter-layer prediction, and motion information by the inter-layer prediction.
- Including at least one of the first layer motion information obtained by the first encoding unit and used in the prediction, and the inter-layer processing unit includes the image data as the first layer At least one of a process of up-sampling from the layer reference to the second layer reference and a process of scaling the motion information from the first layer reference to the second layer reference. it can.
- the information processing apparatus may further include a second encoding unit that performs the inter-layer prediction using information and encodes the image data of the second layer using the obtained predicted image data.
- the first encoding unit encodes the image data of the first layer in an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in sequence units.
- the inter-layer processing unit can convert information on the coding from the first layer reference to the second layer reference for each prediction unit that is a block obtained by further dividing the coding unit.
- the image processing method encodes the first layer of image data including a plurality of layers including a first layer and a second layer using prediction, and the first layer Information on the first layer reference encoding used for inter-layer prediction using correlation between layers in the encoding of the second layer of the image data, obtained by encoding the image data of , An image processing method for converting from the first layer reference to the second layer reference.
- An image processing device includes a first decoding unit that decodes encoded data of the first layer of image data including a plurality of layers including a first layer and a second layer.
- the first decoding unit is used for inter-layer prediction using the correlation between layers in decoding of the encoded data of the second layer obtained by decoding the encoded data of the first layer.
- An image processing apparatus comprising: an inter-layer processing unit that converts information related to decoding of the first layer reference from the first layer reference to the second layer reference.
- the information related to the decoding includes the first layer image data obtained by the first decoding unit used when generating a predicted image by the inter-layer prediction, and motion information prediction by the inter-layer prediction.
- Including at least one of the motion information of the first layer obtained by the first decoding unit, and the inter-layer processing unit includes the image data as the first layer reference. To at least one of the process of up-sampling to the second layer reference and the process of scaling the motion information from the first layer reference to the second layer reference.
- a storage unit for storing information on the decoding of the second layer reference obtained by conversion by the interlayer processing unit; and information on the decoding of the second layer reference stored by the storage unit.
- a second decoding unit configured to decode the encoded data of the image data of the second layer using the predicted image data obtained by performing the inter-layer prediction.
- the first decoding unit is encoded data of the first layer encoded in an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in sequence units.
- the inter-layer processing unit may convert the decoding-related information from the first layer reference to the second layer reference for each prediction unit that is a block obtained by further dividing the coding unit. it can.
- the image processing method decodes encoded data of the first layer of image data including a plurality of layers including a first layer and a second layer, and the first layer Information regarding decoding of the first layer reference used for inter-layer prediction using correlation between layers in decoding of the encoded data of the second layer, obtained by decoding the encoded data of An image processing method for converting from a first layer reference to the second layer reference.
- an inter-layer that uses correlation between layers in encoding the second layer of image data including a plurality of layers including the first layer and the second layer.
- layer prediction information on the first layer reference encoding used for the inter-layer prediction is acquired, and the acquired encoding information is converted from the first layer reference to the second layer reference.
- inter-layer prediction is performed using the information on the second layer-based encoding obtained by the conversion, and the obtained predicted image data is used to encode the second layer image data. Is done.
- correlation between layers in decoding encoded data of the second layer of image data including a plurality of layers including the first layer and the second layer When inter-layer prediction using is performed, information related to the first layer reference decoding used for the inter-layer prediction is acquired, and the acquired information related to decoding is changed from the first layer reference to the second layer reference. And the inter-layer prediction is performed using the information on the second layer-based decoding obtained by the conversion, and the obtained predicted image data is used to obtain the encoded data of the second layer. Decrypted.
- a first layer of image data including a plurality of layers including a first layer and a second layer is encoded using prediction, and the first Information on the first layer reference encoding used for inter-layer prediction using the correlation between layers in the encoding of the second layer of the image data, obtained by encoding the image data of the layer of Conversion from the first layer reference to the second layer reference.
- encoded data of the first layer of the image data including a plurality of layers including the first layer and the second layer is decoded
- an image can be processed.
- the encoding / decoding load can be reduced.
- FIG. 1 It is a figure which shows the example in the case of encoding / decoding a hierarchy image using SHVC. It is a figure which shows the example in the case of performing an interlayer process as a process of an enhancement layer. It is a block diagram which shows the main structural examples of a hierarchy image coding 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 flowchart explaining the example of the flow of a hierarchy image coding process. It is a flowchart explaining the example of the flow of a base layer image coding process. It is a flowchart explaining the example of the flow of an enhancement layer image coding process.
- FIG. 20 is a block diagram illustrating a main configuration example of a computer. It is a block diagram which shows an example of a schematic structure of a television apparatus. It is a block diagram which shows an example of a schematic structure of a mobile telephone. It is a block diagram which shows an example of a schematic structure of a recording / reproducing apparatus. It is a block diagram which shows an example of a schematic structure of an imaging device. It is a block diagram which shows an example of a schematic structure of a video set. It is a block diagram which shows an example of a schematic structure of a video processor. It is a block diagram which shows the other example of the schematic structure of a video processor.
- Hierarchical image encoding / hierarchical image decoding 1.
- First encoding / decoding method First embodiment (hierarchical image encoding device) 4).
- Second embodiment hierarchical image decoding apparatus
- Second encoding / decoding method 6.
- Third embodiment hierarchical image encoding device
- Fourth embodiment (hierarchical image decoding apparatus) 8).
- Application example 9.
- Fifth embodiment (control information) 10.
- Hierarchical Image Coding / Hierarchical Image Decoding> ⁇ Image coding standardization process>
- AVC Advanced Video Coding
- ITU-T International Telecommunication Union Telecommunication Standardization Sector
- ISO / IEC International Organization for Standardization / JCTVC (Joint Collaboration Team-Video Coding)
- HEVC High Efficiency Video Coding
- encoding processing is executed in units of processing called macroblocks.
- the macro block is a block having a uniform size of 16 ⁇ 16 pixels.
- encoding processing is executed in processing units (coding units) called CU (Coding Unit).
- the CU is a block having a variable size formed by recursively dividing an LCU (Largest Coding Unit) that is a maximum coding unit.
- the maximum selectable CU size is 64x64 pixels.
- the minimum selectable CU size is 8x8 pixels.
- the minimum size CU is called a SCU (Smallest Coding Unit).
- Prediction processing for predictive coding is executed in a processing unit (prediction unit) called PU (Prediction Unit).
- PU processing unit
- a PU is formed by dividing a CU with one of several division patterns.
- the orthogonal transformation process is executed in a processing unit (transformation unit) called TU (Transform Unit).
- a TU is formed by dividing a CU or PU to a certain depth.
- FIG. 1 is an explanatory diagram for explaining an outline of recursive block division for a CU in HEVC.
- An entire quadtree is called a CTB (Coding Tree Block), and a logical unit corresponding to the CTB is called a CTU (Coding Tree Unit).
- C01 which is a CU having a size of 64 ⁇ 64 pixels
- the division depth of C01 is equal to zero. This means that C01 is the root of the CTU and corresponds to the LCU.
- the LCU size can be specified by a parameter encoded in SPS (Sequence Parameter Set) or PPS (Picture Parameter Set).
- C02 which is a CU is one of four CUs divided from C01 and has a size of 32 ⁇ 32 pixels.
- the division depth of C02 is equal to 1.
- C03 which is a CU, is one of four CUs divided from C02 and has a size of 16 ⁇ 16 pixels.
- the division depth of C03 is equal to 2.
- C04 which is a CU, is one of the four CUs divided from C03 and has a size of 8 ⁇ 8 pixels.
- the division depth of C04 is equal to 3.
- the CU is formed by recursively dividing an image to be encoded.
- the depth of division is variable. For example, a CU having a larger size (that is, a smaller depth) can be set in a flat image region such as a blue sky. On the other hand, a CU having a smaller size (that is, having a large depth) can be set in a steep image area including many edges.
- Each set CU is a processing unit of the encoding process.
- ⁇ Setting of PU to CU> PU is a processing unit of prediction processing including intra prediction and inter prediction.
- a PU is formed by dividing a CU with one of several division patterns.
- FIG. 2 is an explanatory diagram for describing setting of a PU to the CU illustrated in FIG. The right side of FIG. 2 shows eight types of division patterns, 2Nx2N, 2NxN, Nx2N, NxN, 2NxnU, 2NxnD, nLx2N, and nRx2N.
- two types of 2Nx2N and NxN can be selected in intra prediction (NxN can be selected only in the SCU).
- the inter prediction when the asymmetric motion division is enabled, all eight types of division patterns can be selected.
- TU is a processing unit of orthogonal transform processing.
- a TU is formed by dividing a CU (for an intra CU, each PU in the CU) to a certain depth.
- FIG. 3 is an explanatory diagram for explaining the setting of the TU to the CU shown in FIG.
- the right side of FIG. 3 shows one or more TUs that can be set to C02.
- T01 which is a TU
- T02 which is a TU
- T03 which is a TU, has a size of 8 ⁇ 8 pixels
- the depth of the TU division is equal to 2.
- the block division to be performed in order to set the blocks such as CU, PU, and TU described above to an image is typically determined based on a cost comparison that affects coding efficiency. For example, the encoder compares the cost between one 2Mx2M pixel CU and four MxM pixel CUs, and if the encoding efficiency is higher when four MxM pixel CUs are set, the encoder is 2Mx2M pixel CU. Is divided into 4 MxM pixel CUs.
- FIG. 4 is an explanatory diagram for explaining the scanning order of CU and PU.
- C10, C11, C12, and C13 which are four CUs that can be included in one CTB, are shown.
- the numbers in the frame of each CU express the order of processing.
- the encoding process is executed in the order of C10 which is the upper left CU, C11 which is the upper right CU, C12 which is the lower left CU, and C13 which is the lower right CU.
- the right side of FIG. 4 shows one or more PUs for inter prediction that can be set to C11 which is a CU.
- one or more PUs for intra prediction that can be set to C12 which is a CU are shown.
- the PUs are also scanned from left to right and from top to bottom.
- block may be used as a partial area or processing unit of an image (picture) (not a block of a processing unit).
- the “block” in this case indicates an arbitrary partial area in the picture, and its size, shape, characteristics, and the like are not limited.
- the “block” in this case includes an arbitrary partial area (processing unit) such as TU, PU, SCU, CU, LCU (CTB), sub-block, macroblock, tile, or slice.
- processing unit such as TU, PU, SCU, CU, LCU (CTB), sub-block, macroblock, tile, or slice.
- SHVC scalable high-efficiency video coding
- FIG. 5 SHVC encodes and decodes a plurality of hierarchized images (also referred to as “scalability”) with respect to predetermined parameters as shown in FIG. It is a standard.
- a base layer is a layer that is encoded and decoded without using information of other layers (closed in the base layer), and is a non-base layer (non base layer) ) Is a layer where encoding / decoding is performed using information of another layer (base layer or other non-base layer).
- This non-base layer is also referred to as an enhancement layer.
- the number of layers (number of layers) of the layer image is arbitrary, and may not be three layers as in the example of FIG. 5, may be two layers, or may be four or more layers.
- the hierarchical image includes one or more base layers.
- a parameter having scalability (scalable) in such a hierarchical image is arbitrary.
- the spatial resolution may be a scalable parameter (spatial scalability).
- spatial scalability a parameter having this spatial scalability
- the resolution of the image is different for each layer.
- temporal resolution may be applied as a scalable parameter (temporal scalability).
- temporal scalability temporary scalability
- the frame rate is different for each layer.
- a signal-to-noise ratio (Signal-to-Noise-ratio)
- SNR-scalability a signal-to-noise ratio
- the SN ratio is different for each layer.
- bit depth may be applied as a scalable parameter (bit-depth scalability).
- bit depth scalability bit depth scalability
- the bit depth of image data differs for each layer.
- the bit depth of the base layer image data may be 8 bits
- the bit depth of the enhancement layer image data may be 10 bits.
- a component especially color
- chroma scalability a scalable parameter
- the color format of the image data is different for each layer.
- the color format of the base layer image data may be 4: 2: 0 format
- the color format of the enhancement layer image data may be 4: 2: 2 format.
- ⁇ Independent encoding / decoding for each layer> a hierarchical image as shown in FIG. 5 can be encoded and decoded independently for each hierarchy.
- FIG. 6 shows an example of decoding in that case.
- a hierarchical image is composed of two layers of a base layer (BL) and an enhancement layer (EL).
- BL base layer
- EL enhancement layer
- each layer image is encoded in the same manner as in the case of a normal single-layer image.
- the base layer (BL) decoder 11 decodes the encoded data of the base layer, for example, by HEVC, AVC, or the like in the case of a normal single-layer image.
- the decoder 11 writes the base layer decoded image data (DPB (Decode Picture Buffer)) and motion information (MV Prm) obtained during the decoding process to a predetermined area 12-1 of the DRAM (Dynamic Random Access Memory) 12. If necessary, they are read out and used for decoding.
- DPB Decode Picture Buffer
- MV Prm Motion Information
- the enhancement layer (EL) decoder 13 decodes the enhancement layer encoded data using, for example, HEVC in the same manner as in the case of a normal single-layer image.
- the decoder 13 writes the enhancement layer decoded image data (DPB (Decode Picture Buffer)) and motion information (MV Prm) obtained during the decoding process to a predetermined area 12-2 of the DRAM 12, and stores them as necessary. Read and use for decryption.
- DPB Decode Picture Buffer
- MV Prm motion information
- hierarchical encoding is performed in the same manner as in the above-described hierarchical decoding.
- the processing of each layer is independent of each other. Therefore, when a plurality of processors are used or when a processor capable of parallel processing is used, encoding / decoding processing of each layer may be performed in parallel. it can. For example, in the case of performing such hierarchical encoding / decoding using one processor that cannot perform parallel processing such as the number of cores, the encoding processing / decoding processing of each layer is sequentially performed (in time division). ) Just do it.
- the images (at the same time) of each layer of such a hierarchical image are common images except for scalable parameters. That is, the hierarchical image has high redundancy between layers. Therefore, if each layer is encoded and decoded independently of each other as in the example of FIG. 6, there is a possibility that the encoding efficiency may be reduced.
- FIG. 7 shows an example of decoding in the case of SHVC.
- the base layer is a layer that can be encoded and decoded without using information (images, motion information, etc.) of other layers.
- the enhancement layer is a layer in which encoding / decoding is performed using information (images, motion information, etc.) of other layers.
- the other layer is, for example, a base layer.
- information on other enhancement layers can be used.
- SHVC for each frame (picture), first, after performing base layer encoding / decoding, an inter layer process (also referred to as an IL process) for converting base layer standard information into an enhancement layer standard is performed. Then, the enhancement layer is encoded / decoded.
- an inter layer process also referred to as an IL process
- the base layer (BL) decoder 21 decodes the encoded data of the base layer in the same manner as in the case of a normal single-layer image, for example, by HEVC or AVC.
- the decoder 21 writes the decoded image data (DPB (Decode Picture Buffer)) and motion information (MV Prm) of the base layer obtained during the decoding process to a predetermined area 22-1 of the DRAM 22, and stores them as necessary. Read and use for decryption. That is, the data written in the area 22-1 has scalable parameters set on the basis of the base layer.
- DPB Decode Picture Buffer
- MV Prm motion information
- the IL processing unit 23 that performs SHVC IL processing reads base layer decoded image data (DPB) and motion information (MV Prm) from the area 22-1 of the DRAM 22. Further, the IL processing unit 23 acquires information (BL information) related to the base layer from the BL decoder 21, and acquires information related to the enhancement layer (EL information), control information, and the like from the EL decoder 24. Based on such information, the IL processing unit 23 uses the base layer reference values for the scalable parameters included in the decoded image data (DPB) and motion information (MV Prm) of the base layer read from the DRAM 22. To convert to the enhancement layer standard. The IL processing unit 23 writes the converted decoded image data (DPB) and motion information (MV Prm) in a predetermined area 22-2 of the DRAM 22.
- the enhancement layer (EL) decoder 24 decodes the enhancement layer encoded data using, for example, HEVC (SHVC). At that time, the decoder 24 writes the enhancement layer decoded image data (DPB) and motion information (MV Prm) obtained during the decoding process in a predetermined area 22-3 of the DRAM 22. Further, the decoder 24, as indicated by the dotted frame, if necessary, decodes the enhancement layer decoded image data (DPB) and motion information (MV Prm) of the region 22-3 and the region 22-2 after conversion. Decoded image data (DPB) and motion information (MV Prm) are read and used for decoding.
- HEVC HEVC
- the decoder 24 can decode the enhancement layer using not only intra prediction (intraframe prediction) and inter prediction (interframe prediction) but also inter layer prediction (interlayer prediction).
- the decoder 24 can also use the base layer motion information when encoding the motion vector.
- Hierarchical encoding is performed in the same manner as in the above-described hierarchical decoding.
- the base layer process (BL0, BL1) and the enhancement layer process (EL0, EL1) were alternately repeated.
- the enhancement layer processing (EL0, EL1) starts until the interlayer processing (IL0, IL1) ends. Can not. That is, the enhancement layer processing is delayed by the amount of the double arrow 41-1 and the double arrow 41-2, which may increase the overall processing time.
- the encoding / decoding load may increase.
- First encoding / decoding method> ⁇ IL processing in the enhancement layer> Therefore, in hierarchical image coding / hierarchical image decoding using inter-layer prediction such as SHVC, when processing for the enhancement layer, scalable parameters of the base layer information are converted from the base layer criterion to the enhancement layer criterion. To.
- the base layer (BL) decoder 51 decodes base layer encoded data by HEVC, AVC, or the like basically in the same manner as a normal single-layer image.
- the decoder 51 writes the decoded image data (DPB) and motion information (MV (Prm) of the base layer obtained during the decoding process to a predetermined area 52-1 of the DRAM 52, and reads them for use for decoding. To do.
- the data written in the area 52-1 is data based on the base layer reference with scalable parameters.
- the enhancement layer (EL) decoder 53 decodes the enhancement layer encoded data using, for example, HEVC (SHVC).
- the decoder 53 writes the enhancement layer decoded image data (DPB) and motion information (MV Prm) obtained during the decoding process to a predetermined area 52-2 of the DRAM 52, and reads them for use for decoding. To do.
- the IL processing unit 61 When generating a prediction image by inter-layer prediction or using base layer motion information when decoding an encoded motion vector, the IL processing unit 61 stores the base stored in the area 52-1 of the DRAM 52. Layer information (decoded image data (DPB) and motion information (MV Prm)) is read. In addition, the IL processing unit 61 acquires BL information from the decoder 51. Further, the IL processing unit 61 acquires EL information, control information, and the like from the decoder 53. The IL processing unit 61 performs IL processing using these pieces of information, and obtains decoded image data (DPB) and motion information (MVrmPrm) obtained by converting scalable parameters into enhancement layer standards.
- DPB decoded image data
- MV Prm motion information
- the decoder 53 uses enhancement layer information (decoded image data (DPB) and motion information (MVrmPrm)) stored in the area 52-2 of the DRAM 52. read out.
- enhancement layer information decoded image data (DPB) and motion information (MVrmPrm)
- the selection unit 62 selects necessary information from these pieces of information according to the prediction mode and the like. For example, when a predicted image is generated by intra prediction or inter prediction, the selection unit 62 selects enhancement layer decoded image data (DPB) read from the DRAM 52. For example, when generating a predicted image by inter-layer prediction, the selection unit 62 selects the decoded image data (DPB) after conversion obtained by the IL processing unit 61. Further, for example, when decoding an encoded motion vector, the selection unit 62 includes enhancement layer motion information (MV Prm) read from the DRAM 52 or converted motion information obtained by the IL processing unit 61. Select (MV Prm) or both.
- MV Prm enhancement layer motion information
- the decoder 53 performs generation of a prediction image, decoding of an encoded motion vector, and the like using the selected information.
- the decoded image data (DPB) and the motion information (MVrmPrm) after conversion are not written to the DRAM 52, so that the amount of double-headed arrow 33 corresponds to that of the DRAM 52 compared to the SHVC shown in FIG. 7.
- the amount used can be reduced.
- the processing for the enhancement layer can be started without waiting for the end of the IL processing as in the case of SHVC shown in FIG. That is, unnecessary waiting time can be reduced, and the overall processing time can be reduced.
- the decoding load can be reduced.
- Hierarchical coding can also be performed in the same manner as in the case of hierarchical decoding described above. That is, the encoding load can be reduced.
- FIG. 10 is a block diagram illustrating an example of a configuration of a hierarchical image encoding device that is an aspect of an image processing device to which the present technology is applied.
- a hierarchical image encoding device 100 shown in FIG. 10 is an image processing device configured to encode a hierarchical image by the above-described first encoding method. That is, the hierarchical image encoding apparatus 100 can encode a hierarchical image by performing inter-layer prediction using the correlation between layers like SHVC. However, the hierarchical image encoding apparatus 100 performs an IL process when encoding an enhancement layer.
- the hierarchical image encoding device 100 includes a control unit 101, a base layer image encoding unit 102, an enhancement layer image encoding unit 103, and a multiplexing unit 104.
- FIG. 10 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 10 are not limited to all. That is, in the hierarchical image encoding apparatus 100, there may be a processing unit not shown as a block in FIG. 10, or there may be a process or data flow not shown as an arrow or the like in FIG.
- the control unit 101 performs processing related to information common to all layers. For example, the control unit 101 generates control information related to hierarchical coding such as a sequence parameter set (SPS (Sequence Parameter Set)) and supplies the control information to the multiplexing unit 104. For example, the control unit 101 generates control information related to the base layer, supplies the control information to the base layer image encoding unit 102, and controls the encoding of the base layer.
- SPS Sequence Parameter Set
- control unit 101 generates control information related to the enhancement layer, supplies the control information to the enhancement layer image encoding unit 103, and controls the encoding of the enhancement layer.
- control unit 101 supplies the enhancement layer image encoding unit 103 with BL information indicating a base layer standard for scalable parameters.
- control unit 101 supplies EL information indicating an enhancement layer standard for the scalable parameter to the enhancement layer image encoding unit 103.
- control unit 101 supplies control information regarding IL processing to the enhancement layer image encoding unit 103.
- the control unit 101 controls the IL processing by supplying such information.
- the BL information, EL information, and control information may be any information.
- the scalable parameter is an image size (resolution)
- the BL information may include information indicating the image size of the base layer
- the EL information includes information indicating the image size of the enhancement layer.
- the control information may include information indicating an offset for correcting the reference position.
- the base layer image encoding unit 102 is controlled by the control unit 101 to perform processing related to base layer encoding.
- the base layer image encoding unit 102 accepts base layer image data (also referred to as BL image data).
- the base layer image encoding unit 102 encodes the received base layer image data using prediction such as intra prediction or inter prediction without using information of other layers, and Encoded data (also referred to as BL encoded data) is generated. Further, the base layer image encoding unit 102 supplies the BL encoded data to the multiplexing unit 104.
- the base layer image encoding unit 102 responds to a request from the enhancement layer image encoding unit 103, and includes base layer decoded image data (also referred to as BL decoded image data) and motion information (also referred to as BL motion information). ) Is supplied to the enhancement layer image encoding unit 103 as information related to base layer encoding.
- the information related to the base layer encoding may be any information.
- the enhancement layer image encoding unit 103 is controlled by the control unit 101 to perform processing related to the enhancement layer encoding.
- the enhancement layer image encoding unit 103 accepts enhancement layer image data (also referred to as EL image data).
- the enhancement layer image encoding unit 103 encodes the received enhancement layer image data using intra prediction, inter prediction, inter layer prediction (inter-layer prediction), or the like, and encodes enhancement layer encoded data. (Also referred to as EL encoded data).
- the enhancement layer image encoding unit 103 performs IL processing on information related to base layer encoding acquired from the base layer image encoding unit 102, and appropriately uses the obtained information related to encoding after conversion to perform this encoding. I do.
- the enhancement layer image encoding unit 103 performs, for example, an IL process for converting a scalable parameter of information related to base layer encoding from a base layer reference to an enhancement layer reference at the time of the encoding.
- the enhancement layer image encoding unit 103 performs inter prediction and inter layer prediction using information related to encoding after conversion obtained by IL processing. Further, for example, the enhancement layer image encoding unit 103 supplies the generated EL encoded data to the multiplexing unit 104.
- the multiplexing unit 104 receives the control information supplied from the control unit 101, the BL encoded data supplied from the base layer image encoding unit 102, and the EL encoded data supplied from the enhancement layer image encoding unit 103. Multiplexed to generate hierarchical image encoded data.
- the hierarchical image encoded data is, for example, one bit stream.
- the multiplexing unit 104 outputs the hierarchical image encoded data.
- This hierarchical image encoded data is transmitted to the decoding side (for example, a hierarchical image decoding device described later) via, for example, an arbitrary recording medium, an arbitrary transmission medium, an arbitrary information processing device, or the like. That is, the multiplexing unit 104 is also a transmission unit that transmits hierarchical image encoded data.
- FIG. 11 is a block diagram illustrating a main configuration example of the base layer image encoding unit 102 of FIG.
- FIG. 11 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 11 are not limited to all. That is, in the base layer image encoding unit 102, there may be a processing unit that is not shown as a block in FIG. 11, or there may be a process or data flow that is not shown as an arrow or the like in FIG. .
- the base layer image encoding unit 102 includes a screen rearrangement buffer 111, a calculation unit 112, an orthogonal transformation unit 113, a quantization unit 114, an encoding unit 115, and a storage buffer 116. Further, the base layer image encoding unit 102 includes an inverse quantization unit 117, an inverse orthogonal transform unit 118, a calculation unit 119, a filter 120, a BL frame memory 121, an intra prediction unit 122, an inter prediction unit 123, and a predicted image selection unit 124. And a rate control unit 125.
- the screen rearrangement buffer 111 stores the images of each frame of the input BL image data in the display order, and encodes the images of the frames in the stored display order according to GOP (Group Of Picture). The images are rearranged in the order of the frames, and the image in which the order of the frames is rearranged is supplied to the calculation unit 112. In addition, the screen rearrangement buffer 111 also supplies the image in which the order of the frames is rearranged to the intra prediction unit 122 and the inter prediction unit 123.
- GOP Group Of Picture
- the calculation unit 112 subtracts the prediction image supplied from the intra prediction unit 122 or the inter prediction unit 123 via the prediction image selection unit 124 from the image read out from the screen rearrangement buffer 111, and the difference between them. Residual information (also referred to as residual data) is obtained. For example, in the case of an image on which intra coding is performed, the calculation unit 112 subtracts the prediction image supplied from the intra prediction unit 122 from the image read from the screen rearrangement buffer 111. For example, in the case of an image on which inter coding is performed, the calculation unit 112 subtracts the prediction image supplied from the inter prediction unit 123 from the image read from the screen rearrangement buffer 111. The calculation unit 112 supplies the obtained residual data to the orthogonal transform unit 113.
- the orthogonal transform unit 113 performs orthogonal transform on the residual data supplied from the calculation unit 112 by a predetermined method.
- the orthogonal transform unit 113 supplies residual data (also referred to as orthogonal transform coefficients) after the orthogonal transform to the quantization unit 114.
- the quantization unit 114 quantizes the orthogonal transform coefficient by a predetermined method.
- the quantization unit 114 sets a quantization parameter according to the target value (target_bitrate) of the code amount supplied from the rate control unit 125, and performs the quantization.
- the quantization unit 114 supplies the quantized residual data (also referred to as quantized data) to the encoding unit 115 and the inverse quantization unit 117.
- the encoding unit 115 encodes the quantized data supplied from the quantization unit 114. In addition, the encoding unit 115 acquires information related to the optimal prediction mode from the predicted image selection unit 124. Furthermore, the encoding unit 115 can acquire arbitrary information from an arbitrary processing unit. The encoding unit 115 encodes these various types of information. In this way, the encoding unit 115 encodes information about an image and generates BL encoded data. The encoding unit 115 supplies the obtained BL encoded data to the accumulation buffer 116 for accumulation.
- the accumulation buffer 116 temporarily holds the BL encoded data supplied from the encoding unit 115.
- the accumulation buffer 116 outputs the held BL encoded data to the outside of the base layer image encoding unit 102 as, for example, a bit stream at a predetermined timing. That is, the BL encoded data is supplied to the multiplexing unit 104 (FIG. 10). As described above, the BL encoded data supplied to the multiplexing unit 104 is transmitted to the decoding side as hierarchical image encoded data or the like. That is, the accumulation buffer 116 is also a transmission unit that transmits BL encoded data.
- the inverse quantization unit 117 inversely quantizes the quantized data supplied from the quantization unit 114 by a method corresponding to the quantization by the quantization unit 114.
- the inverse quantization unit 117 supplies the quantized data (also referred to as orthogonal transform coefficient) after inverse quantization to the inverse orthogonal transform unit 118.
- the inverse orthogonal transform unit 118 performs inverse orthogonal transform on the orthogonal transform coefficient by a method corresponding to the orthogonal transform processing by the orthogonal transform unit 113.
- the inverse orthogonal transform unit 118 supplies the orthogonal transform coefficient (also referred to as restored residual data) subjected to the inverse orthogonal transform to the calculation unit 119.
- the calculation unit 119 adds the predicted image supplied from the intra prediction unit 122 or the inter prediction unit 123 via the predicted image selection unit 124 to the restored residual data, and locally reconstructed image (also called a reconstructed image). For example, in the case of an image on which intra coding is performed, the calculation unit 119 adds the predicted image supplied from the intra prediction unit 122 to the restored residual data. For example, in the case of an image on which inter coding is performed, the calculation unit 119 adds the predicted image supplied from the inter prediction unit 123 to the restored residual data. The calculation unit 119 supplies the obtained reconstructed image to the filter 120 and the intra prediction unit 122.
- the filter 120 performs a filtering process such as a deblocking filter on the reconstructed image as appropriate.
- the filter 120 supplies the filter processing result (also referred to as BL decoded image data) to the BL frame memory 121 as information related to base layer encoding, and stores it.
- the BL frame memory 121 stores information related to base layer encoding.
- the BL frame memory 121 stores the BL decoded image data supplied from the filter 120 in its own storage area.
- the BL frame memory 121 supplies motion information (also referred to as BL motion information) such as a motion vector in an optimal prediction mode selected by the prediction image selection unit 124 supplied from the prediction image selection unit 124. In the storage area.
- the BL frame memory 121 supplies the stored information related to base layer encoding to other processing units.
- the BL frame memory 121 supplies the stored BL decoded image data to the inter prediction unit 123 as a reference image at a predetermined timing or based on a request.
- the BL frame memory 121 supplies the stored BL motion information to the inter prediction unit 123 at a predetermined timing or based on a request.
- the BL frame memory 121 supplies the stored BL decoded image data and BL motion information to the enhancement layer image encoding unit 103 based on a request from the enhancement layer image encoding unit 103 and the like.
- the BL frame memory 121 can store information for one frame or more.
- the intra prediction unit 122 performs intra prediction (intraframe prediction) using the reconstructed image supplied as a reference image from the calculation unit 119. For example, the intra prediction unit 122 generates a prediction image of the current block using pixel values around the current block that is the processing target. Further, the intra prediction unit 122 calculates a cost function value for the obtained predicted image by using the input image supplied from the screen rearrangement buffer 111 or the like. The intra prediction unit 122 performs such intra prediction for a plurality of intra prediction modes prepared in advance. And the intra estimation part 122 evaluates the cost function value of each candidate, and selects an optimal candidate as intra prediction mode. The intra prediction unit 122 supplies the intra prediction mode information including the identification information of the optimal intra prediction mode, the prediction image, the cost function value, and the like to the prediction image selection unit 124.
- intra prediction mode information including the identification information of the optimal intra prediction mode, the prediction image, the cost function value, and the like to the prediction image selection unit 124.
- the inter prediction unit 123 performs inter prediction (interframe prediction) using the input image supplied from the screen rearrangement buffer 111 and the reference image supplied from the BL frame memory 121. For example, the inter prediction unit 123 performs motion prediction to detect a motion vector, performs motion compensation processing according to the motion vector, and generates a predicted image using the reference image acquired from the BL frame memory 121. Further, the inter prediction unit 123 encodes the detected motion vector. For example, the inter prediction unit 123 generates a predicted motion vector using the motion vector of the reference image, and calculates the difference between the detected motion vector and the predicted motion vector, thereby encoding the motion vector.
- inter prediction inter prediction
- the inter prediction unit 123 calculates a cost function value for the obtained predicted image, motion information, and the like by using the input image supplied from the screen rearrangement buffer 111.
- the inter prediction unit 123 performs such inter prediction for each of a plurality of inter prediction mode candidates prepared in advance. Then, the inter prediction unit 123 evaluates the cost function value of each candidate and selects an optimal candidate as the inter prediction mode.
- the inter prediction unit 123 supplies the inter prediction mode information including the identification information of the optimal inter prediction mode, the prediction image, the motion information (including the encoded motion vector), the cost function value, and the like to the prediction image selection unit 124. To do.
- the prediction image selection unit 124 acquires information (intra prediction mode information and inter prediction mode information) related to the above prediction from the intra prediction unit 122 and the inter prediction unit 123.
- the predicted image selection unit 124 selects a prediction mode in the current block by selecting any one of them. That is, the predicted image selection unit 124 selects one of the intra prediction mode and the inter prediction mode as the optimal prediction mode.
- the predicted image selection unit 124 supplies the predicted image of the selected mode to the calculation unit 112 and the calculation unit 119. Also, the predicted image selection unit 124 supplies a part or all of information (intra prediction mode information or inter prediction mode information) related to prediction of the selected mode to the encoding unit 115 as information related to the optimal prediction mode.
- the prediction image selection unit 124 stores the BL motion information including the motion vector of the inter prediction mode in the BL frame memory 121 as information related to base layer encoding. Supply and memorize. This BL motion information is used, for example, for encoding motion vectors.
- the rate control unit 125 controls the rate of the quantization operation of the quantization unit 114 based on the code amount of the encoded data stored in the storage buffer 116 so that overflow or underflow does not occur.
- FIG. 12 is a block diagram illustrating a main configuration example of the enhancement layer image encoding unit 103 in FIG. 10.
- main components such as a processing unit and a data flow are shown, and the components shown in FIG. 12 are not limited to all. That is, in the enhancement layer image encoding unit 103, there may be a processing unit that is not shown as a block in FIG. 12, or there may be a process or data flow that is not shown as an arrow or the like in FIG. .
- the enhancement layer image encoding unit 103 includes a screen rearrangement buffer 161, a calculation unit 162, an orthogonal transformation unit 163, a quantization unit 164, an encoding unit 165, and an accumulation buffer 166. Further, the enhancement layer image encoding unit 103 includes an inverse quantization unit 167, an inverse orthogonal transform unit 168, a calculation unit 169, a filter 170, an intra prediction unit 172, an inter prediction unit 173, a predicted image selection unit 174, and a rate control unit. 175. Each of these processing units corresponds to each of the processing units of the screen rearrangement buffer 111 to the filter 120 and the intra prediction unit 122 to the rate control unit 125 (FIG. 11), has the same configuration, and the enhancement layer Basically, the same processing as that of the base layer is performed.
- the enhancement layer image encoding unit 103 includes an EL frame memory 171, an IL processing unit 181, and an inter layer prediction unit 182.
- the EL frame memory 171 stores information related to enhancement layer encoding.
- the EL frame memory 171 stores the filter processing result (also referred to as EL decoded image data) supplied from the filter 170 in its own storage area.
- the EL frame memory 171 supplies the motion information (also referred to as EL motion information) of the optimal prediction mode selected by the predicted image selection unit 174 supplied from the predicted image selection unit 174 in its own storage area.
- the EL motion information may include not only motion information indicating a reference relationship between frames but also motion information indicating a reference relationship between layers, that is, motion information obtained by inter-layer prediction.
- the information related to the enhancement layer encoding may be any information, and may include, for example, such EL decoded image data and EL motion information.
- the EL frame memory 171 supplies the stored information related to the enhancement layer encoding to other processing units. For example, the EL frame memory 171 supplies the stored EL decoded image data as a reference image to the inter prediction unit 173 at a predetermined timing or based on a request. In addition, the EL frame memory 171 supplies the stored EL motion information to the inter prediction unit 173 and the inter layer prediction unit 182 at a predetermined timing or based on a request.
- the EL frame memory 171 can store information for one frame or more.
- the IL processing unit 181 performs processing related to IL processing. For example, the IL processing unit 181 acquires BL information, EL information, control information, and the like supplied from the control unit 101 (FIG. 10). Further, for example, the IL processing unit 181 requests and obtains information related to base layer encoding (for example, BL decoded image data and BL motion information) from the BL frame memory 121 of the base layer image encoding unit 102. . Further, for example, the IL processing unit 181 performs IL processing on information related to base layer encoding based on BL information, EL information, control information, and the like, and sets the value of the scalable parameter as a base layer reference value. To the enhancement layer standard value.
- base layer encoding for example, BL decoded image data and BL motion information
- the IL processing unit 181 performs upsampling on the BL decoded image data so that the scalable parameter becomes the enhancement layer standard.
- the scalable parameter is the image size (resolution)
- the IL processing unit 181 determines the image size of the BL decoded image data according to the ratio between the image size of the base layer picture and the image size of the enhancement layer picture. Change (generally enlarge). Thereby, the image size of the BL decoded image data after conversion becomes a size based on the image size of the enhancement layer picture. This converted data is also referred to as IL image data.
- the IL processing unit 181 performs scaling on the BL motion information so that the scalable parameter becomes an enhancement layer reference.
- the scalable parameter is the image size (resolution)
- the IL processing unit 181 sets the size of the motion vector of the BL motion information to the ratio between the image size of the base layer picture and the image size of the enhancement layer picture. Change accordingly (generally expand).
- the size of the BL motion information after conversion becomes a size based on the image size of the enhancement layer picture.
- the converted data is also referred to as IL motion information.
- the IL processing unit 181 supplies information (for example, IL image data, IL motion information, etc.) relating to the encoded encoding obtained by such IL processing to the inter prediction unit 173 and the inter layer prediction unit 182.
- information for example, IL image data, IL motion information, etc.
- the IL processing unit 181 supplies the requested IL image data and IL motion information to the inter-layer prediction unit 182.
- the IL processing unit 181 supplies the requested IL motion information to the inter prediction unit 173.
- the inter layer prediction unit 182 performs processing related to the inter layer prediction. For example, the inter layer prediction unit 182 requests and acquires information (for example, IL image data, IL motion information, etc.) related to the encoded encoding of the position corresponding to the current block from the IL processing unit 181. The inter layer prediction unit 182 also requests and acquires information (for example, EL motion information) on the enhancement layer encoding at the position corresponding to the current block from the EL frame memory 171.
- information for example, IL image data, IL motion information, etc.
- the inter-layer prediction unit 182 performs inter-layer prediction using information regarding these encodings.
- the inter layer prediction unit 182 performs inter layer prediction using the input image supplied from the screen rearrangement buffer 161 and the IL image data acquired from the IL processing unit 181 to generate a prediction image and motion information.
- the motion information (motion vector) obtained by the inter prediction is different from the motion information (motion vector) indicating the inter-frame direction reference relationship (the positional relationship between the current block and the reference image) obtained by the inter prediction.
- This is information indicating the reference relationship in the inter-layer direction. That is, a predicted image obtained by the inter prediction is generated with reference to a picture (IL image data) of a picture in a layer different from that of the current block.
- the inter layer prediction unit 182 encodes a motion vector using IL motion information and EL motion information in the inter layer prediction.
- the interlayer prediction unit 182 calculates a cost function value for the obtained predicted image, motion information, and the like using the input image supplied from the screen rearrangement buffer 161, for example.
- the inter layer prediction unit 182 supplies inter layer prediction mode information including identification information of the inter layer prediction mode, a predicted image, motion information (including an encoded motion vector), a cost function value, and the like to the predicted image selection unit 174. To do.
- the inter prediction unit 173 requests the IL processing unit 181 for information (for example, IL motion information) on the encoded position at the position corresponding to the current block, and acquires the information.
- the inter prediction unit 173 requests and acquires information (for example, EL decoded image data and EL motion information) regarding the enhancement layer encoding at the position corresponding to the current block from the EL frame memory 171.
- the inter prediction unit 173 performs inter prediction basically in the same manner as in the case of the base layer, using information regarding these encodings.
- the inter prediction unit 173 supplies the obtained inter prediction mode information to the predicted image selection unit 174.
- the prediction image selection unit 174 obtains the information related to the prediction (intra prediction mode information, inter prediction mode information, inter layer prediction mode information, etc.) from the intra prediction unit 172, the inter prediction unit 173, and the inter layer prediction unit 182. .
- the predicted image selection unit 174 selects a prediction mode in the current block by selecting any one of them. That is, the predicted image selection unit 174 selects any one of the intra prediction mode, the inter prediction mode, and the inter layer prediction mode as the optimal prediction mode.
- the predicted image selection unit 174 supplies the predicted image of the selected mode to the calculation unit 162 and the calculation unit 169.
- the prediction image selection unit 174 encodes a part or all of information related to prediction of the selected mode (intra prediction mode information, inter prediction mode information, or inter layer prediction mode information) as information related to the optimal prediction mode. 165.
- the predicted image selection unit 174 uses the motion information (EL motion information) as the information related to the enhancement layer encoding as the EL frame memory 171. To supply and memorize.
- EL motion information the motion information related to the enhancement layer encoding
- step S101 the control unit 101 performs settings related to hierarchical image encoding, such as parameter set settings.
- step S102 the base layer image encoding unit 102 encodes BL image data according to the setting performed in step S101, and generates BL encoded data.
- step S103 the enhancement layer image encoding unit 103 encodes the EL image data in accordance with the setting performed in step S101, and generates EL encoded data.
- step S104 the multiplexing unit 104 multiplexes the encoded data of each layer (for example, BL encoded data, EL encoded data, control information, etc.) obtained in the processes of steps S101 to S103, Generate and output image encoded data.
- each layer for example, BL encoded data, EL encoded data, control information, etc.
- step S104 When the process of step S104 is completed, the hierarchical image encoding process is completed.
- step S121 the screen rearrangement buffer 111 stores the images of the frames (pictures) of the input moving image (BL image data) in the display order, Rearrangement from the display order of pictures to the encoding order is performed.
- step S122 the intra prediction unit 122 performs intra prediction.
- step S123 the inter prediction unit 123 performs inter prediction.
- step S124 the predicted image selection unit 124 selects an optimal prediction mode. That is, the predicted image selection unit 124 selects one of the intra prediction mode and the inter prediction mode as the optimal prediction mode. The predicted image selection unit 124 performs this selection based on the cost function value of each prediction mode.
- step S125 the predicted image selection unit 124 supplies the BL motion information of the selected prediction mode to the BL frame memory 121 as information related to base layer encoding, and stores it.
- step S126 the calculation unit 112 generates residual data between the input image and the predicted image.
- the residual data obtained in this way is reduced in data amount 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 113 performs orthogonal transform on the residual data obtained by the process in step S126.
- step S128 the quantization unit 114 quantizes the orthogonal transform coefficient obtained by the process in step S127 using the quantization parameter calculated by the rate control unit 125, for example.
- step S129 the inverse quantization unit 117 inversely quantizes the quantized data obtained by the process in step S128 with a characteristic corresponding to the quantization characteristic.
- step S130 the inverse orthogonal transform unit 118 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the process in step S127 by a method corresponding to the orthogonal transform.
- step S131 the calculation unit 119 adds image data of the reconstructed image by adding the prediction image of the optimal prediction mode obtained by the process of step S124 to the residual data restored by the process of step S130. Generate.
- step S132 the filter 120 performs a filtering process such as a deblocking filter on the image data of the reconstructed image.
- a filtering process such as a deblocking filter
- step S133 the filter 120 supplies the BL decoded image data to the BL frame memory 121 as information related to base layer encoding, and stores it.
- step S134 the encoding unit 115 encodes information about the image such as the quantized data obtained by the process in step S128.
- step S135 the accumulation buffer 116 accumulates the BL encoded data obtained by the encoding.
- the BL encoded data or the like stored in the storage buffer 116 is appropriately read as a bit stream, for example, and supplied to the multiplexing unit 104.
- step S136 the rate control unit 125 performs the quantization process in step S128 so that overflow or underflow does not occur based on the code amount (generated code amount) of the BL encoded data or the like stored in the storage buffer 116. Control the rate of
- step S136 When the process of step S136 is completed, the BL image encoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- step S151 the IL processing unit 181 acquires BL information, EL information, and control information supplied from the control unit 101 (FIG. 10).
- step S152 the screen rearrangement buffer 161 stores the images of the respective frames (pictures) of the input moving image (EL image data) in the display order, and the order from the display order of each picture to the encoding order. Sort.
- step S153 the intra prediction unit 172 performs intra prediction.
- step S154 the IL processing unit 181 uses the BL frame memory of the base layer image encoding unit 102 to generate BL decoded image data and BL motion information (information regarding base layer encoding) at a position corresponding to the current block to be processed. Request to 121 and obtain.
- step S155 the IL processing unit 181 performs IL processing on the BL decoded image data and BL motion information acquired in step S154 based on the BL information, EL information, control information, and the like acquired in step S151. Obtain image data and IL motion information (information related to encoding after conversion).
- step S156 the inter prediction unit 173 performs inter prediction using the IL motion information obtained in step S155.
- step S157 the inter layer prediction unit 182 performs inter layer prediction using the IL image data and the IL motion information obtained in step S155.
- step S158 the predicted image selection unit 174 selects an optimal prediction mode. That is, the predicted image selection unit 174 selects any one of the intra prediction mode, the inter prediction mode, and the inter layer prediction mode as the optimal prediction mode. The predicted image selection unit 174 performs this selection based on the cost function value of each prediction mode.
- step S159 the prediction image selection unit 174 supplies the EL motion information of the selected prediction mode to the EL frame memory 171 as information related to the enhancement layer encoding, and stores it.
- step S160 the calculation unit 162 generates residual data between the input image and the predicted image.
- the residual data obtained in this way is reduced in data amount 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 S161 the orthogonal transform unit 163 performs orthogonal transform on the residual data obtained by the process in step S160.
- step S162 the quantization unit 164 quantizes the orthogonal transform coefficient obtained by the process in step S161 using the quantization parameter calculated by the rate control unit 175, for example.
- step S163 the inverse quantization unit 167 inversely quantizes the quantized data obtained by the process in step S162 with a characteristic corresponding to the quantization characteristic.
- step S164 the inverse orthogonal transform unit 168 performs inverse orthogonal transform on the orthogonal transform coefficient obtained by the processing in step S161 by a method corresponding to the orthogonal transform.
- step S165 the calculation unit 169 generates image data of the reconstructed image by adding the prediction image obtained by the prediction process of step S158 to the residual data restored by the process of step S164.
- step S166 the filter 170 performs a filtering process such as a deblocking filter on the image data of the reconstructed image.
- a filtering process such as a deblocking filter
- step S167 the filter 170 supplies the EL decoded image data to the EL frame memory 171 as information related to the enhancement layer encoding, and stores it.
- step S168 the encoding unit 165 encodes information about the image such as the quantized data obtained by the process of step S162.
- step S169 the accumulation buffer 166 accumulates EL encoded data and the like obtained by the encoding.
- the EL encoded data or the like stored in the storage buffer 166 is appropriately read as a bit stream, for example, and supplied to the multiplexing unit 104.
- step S170 the rate control unit 175 performs the quantization process in step S162 so that overflow or underflow does not occur based on the code amount (generated code amount) of the BL encoded data or the like stored in the storage buffer 166. Control the rate of
- step S170 When the process of step S170 is completed, the EL image encoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- IL processing can be performed at the time of enhancement layer encoding.
- the BL frame memory 121 and the EL frame memory 171 need to store a large amount of data for one frame or more as described above. is necessary.
- each processing unit of the base layer image encoding unit 102 and the enhancement layer image encoding unit 103 also holds data to be processed. However, since the data amount is as small as several lines at most, these data are stored. The area may be a small capacity.
- DRAM Dynamic Random Access Memory
- SRAM Static Random Access Memory
- SRAM Static Random Access Memory
- SRAM Static Random Access Memory
- the memory access bandwidth is narrower than that of the SRAM, and the data read / write speed is slow.
- SRAM has a faster response speed and is formed inside the processing unit, so the memory access bandwidth is also thicker. Is expensive, and is suitable for a small-capacity storage area.
- the amount of memory access to the DRAM (EL frame memory 171) (the amount of memory bus bandwidth used) can be reduced compared to the case of SHVC shown in FIG. it can. Further, the amount of use of DRAM (EL frame memory 171) can also be reduced.
- the encoding load can be reduced as compared with the case of SHVC.
- the BL frame memory 121 and the EL frame memory 171 may be realized by using different DRAMs, or may be realized by using different areas of one DRAM as in the example of FIG. It may be.
- the DRAM is merely an example, and the BL frame memory 121 and the EL frame memory 171 may be realized using an arbitrary storage medium other than the DRAM.
- a plurality of processing units of the control unit 101 to the multiplexing unit 104 in FIG. 10 may be realized by a single processor (for example, a CPU (Central Processing Unit)).
- the processor may be time-divided to function as each processing unit.
- the base layer image encoding unit 102 and the enhancement layer image encoding unit 103 may be realized by one time-divided processor (for example, CPU). Note that if the processor can execute a plurality of processes in parallel, for example, having a plurality of cores, each processing unit may be realized in parallel.
- FIG. 16 is a block diagram illustrating an example of a configuration of a hierarchical image decoding device that is an aspect of an image processing device to which the present technology is applied.
- a hierarchical image decoding apparatus 200 shown in FIG. 16 is an image processing apparatus configured to decode a hierarchical image by the above-described first decoding method. That is, the hierarchical image decoding apparatus 200 can decode the encoded data of the hierarchical image encoded by performing the inter-layer prediction using the correlation between layers like SHVC. However, the hierarchical image decoding apparatus 200 performs an IL process when decoding the enhancement layer.
- the hierarchical image decoding device 200 includes a demultiplexing unit 201, a control unit 202, a base layer image decoding unit 203, and an enhancement layer image decoding unit 204.
- FIG. 16 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 16 are not limited to all. That is, in the hierarchical image decoding apparatus 200, there may be a processing unit that is not shown as a block in FIG. 16, or there may be a process or data flow that is not shown as an arrow or the like in FIG.
- the demultiplexer 201 receives hierarchical image encoded data. As described with reference to FIG. 10, this hierarchical image encoded data includes data obtained by multiplexing BL encoded data, EL encoded data, and control information related to hierarchical encoding (that is, hierarchical decoding) (for example, Bitstream).
- hierarchical decoding for example, Bitstream
- the demultiplexing unit 201 acquires the hierarchical image encoded data
- the demultiplexing unit 201 demultiplexes it and separates it into BL encoded data, EL encoded data, and control information regarding hierarchical decoding.
- the demultiplexing unit 201 supplies control information regarding hierarchical decoding to the control unit 202, supplies BL encoded data to the base layer image decoding unit 203, and supplies EL encoded data to the enhancement layer image decoding unit 204.
- control unit 202 When the control unit 202 acquires control information related to hierarchical decoding, the control unit 202 controls the base layer image decoding unit 203 and the enhancement layer image decoding unit 204 based on the control information.
- the control information regarding this hierarchical decoding is information set at the time of encoding, and includes information common to all layers such as SPS, for example.
- the control unit 202 extracts control information related to the base layer from the control information related to hierarchical decoding, and supplies the control information to the base layer image decoding unit 203 to control decoding of the base layer.
- control unit 202 extracts control information related to the enhancement layer from the control information related to hierarchical decoding, and supplies the control information to the enhancement layer image decoding unit 204 to control enhancement layer decoding.
- the control unit 202 supplies BL information, EL information, and control information related to IL processing to the enhancement layer image decoding unit 204 to control IL processing.
- the base layer image decoding unit 203 is controlled by the control unit 202 to perform processing related to decoding of the base layer.
- the base layer image decoding unit 203 receives BL encoded data supplied from the demultiplexing unit 201.
- the base layer image decoding unit 203 decodes the received BL encoded data using prediction such as intra prediction or inter prediction without using information of other layers, and converts the BL decoded image data into Generate and output to the outside of the hierarchical image decoding apparatus 200.
- the base layer image decoding unit 203 sends the BL decoded image data and the BL motion information to the enhancement layer image decoding unit 204 as information related to base layer decoding in response to a request from the enhancement layer image decoding unit 204. Supply.
- the information related to the decoding of the base layer may be any information.
- the base layer image decoding unit 203 performs processing based on the control information supplied from the control unit 202, these processes can be performed with settings corresponding to the settings at the time of encoding.
- the enhancement layer image decoding unit 204 is controlled by the control unit 202 to perform processing related to enhancement layer decoding.
- the enhancement layer image decoding unit 204 accepts EL encoded data supplied from the demultiplexing unit 201.
- the enhancement layer image decoding unit 204 uses the inter-layer prediction (layer) using the received EL-encoded data as information on the intra-prediction, inter-prediction, and base layer decoding acquired from the base layer image decoding unit 203. (Inter prediction) or the like to generate EL decoded image data.
- the enhancement layer image decoding unit 204 performs, for example, an IL process for converting a scalable parameter of information related to decoding of the base layer from the base layer standard to the enhancement layer standard at the time of decoding.
- the enhancement layer image decoding unit 204 performs inter prediction and inter layer prediction using information related to the encoded encoding obtained by IL processing. Further, for example, the enhancement layer image decoding unit 204 outputs the generated EL decoded image data to the outside of the hierarchical image decoding device 200.
- the enhancement layer image decoding unit 204 performs processing based on the control information supplied from the control unit 202, these processing can be performed with settings corresponding to the settings at the time of encoding.
- FIG. 17 is a block diagram illustrating a main configuration example of the base layer image decoding unit 203 in FIG. 16. Note that FIG. 17 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 17 are not limited to all. That is, in the base layer image decoding unit 203, there may be a processing unit not shown as a block in FIG. 17, or there may be a process or data flow not shown as an arrow or the like in FIG.
- the base layer image decoding unit 203 includes a storage buffer 211, a decoding unit 212, an inverse quantization unit 213, an inverse orthogonal transform unit 214, a calculation unit 215, a filter 216, and a screen rearrangement buffer 217.
- the base layer image decoding unit 203 includes a BL frame memory 218, an intra prediction unit 219, an inter prediction unit 220, and a predicted image selection unit 221.
- the accumulation buffer 211 accumulates the BL encoded data supplied from the demultiplexing unit 201 and supplies the BL encoded data to the decoding unit 212 at a predetermined timing.
- BL encoded data is encoded data of a base layer image of a hierarchical image.
- the decoding unit 212 decodes the BL encoded data supplied from the accumulation buffer 211 by a method corresponding to the encoding method.
- the decoding unit 212 supplies it to the inverse quantization unit 213.
- the decoding unit 212 supplies information regarding the optimal prediction mode obtained by decoding the BL encoded data to the intra prediction unit 219 or the inter prediction unit 220.
- the decoding unit 212 supplies intra prediction mode information to the intra prediction unit 219.
- the decoding unit 212 supplies inter prediction mode information to the inter prediction unit 220.
- the decoding unit 212 can appropriately supply various information obtained by decoding the BL encoded data to various processing units that require the information.
- the inverse quantization unit 213 performs inverse quantization on the quantized data supplied from the decoding unit 212 by a method corresponding to the quantization method.
- the inverse quantization unit 213 supplies the orthogonal transform coefficient obtained by the inverse quantization to the inverse orthogonal transform unit 214.
- the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the orthogonal transform coefficient supplied from the inverse quantization unit 213 using a method corresponding to the orthogonal transform method.
- the inverse orthogonal transform unit 214 supplies the residual data (reconstructed residual data) obtained by the inverse orthogonal transform process to the calculation unit 215.
- the filter 216 performs filter processing corresponding to the filter processing performed at the time of encoding (generation of BL encoded data) such as a deblocking filter.
- the filter 216 supplies the decoded image (BL decoded image data), which is the filter processing result, to the screen rearrangement buffer 217 and the BL frame memory 218 as information related to decoding of the base layer, and stores the information.
- the screen rearrangement buffer 217 rearranges the supplied decoded images. That is, the order of frames rearranged for the encoding order is rearranged in the original display order.
- the screen rearrangement buffer 217 outputs the decoded image (BL decoded image data) in which the frame order is rearranged to the outside of the base layer image decoding unit 203 (hierarchical image decoding apparatus 200).
- the BL frame memory 218 stores information related to base layer decoding.
- the BL frame memory 218 stores the decoded image (BL decoded image data) supplied from the filter 216 in its own storage area.
- the BL frame memory 218 stores the BL motion information supplied from the inter prediction unit 220 in its own storage area.
- the BL frame memory 218 supplies the stored information related to decoding of the base layer to other processing units.
- the BL frame memory 218 supplies the stored BL decoded image data as a reference image to the inter prediction unit 220 at a predetermined timing or based on a request.
- the BL frame memory 218 supplies the stored BL motion information to the inter prediction unit 220 at a predetermined timing or based on a request.
- the BL frame memory 218 supplies the stored BL decoded image data and BL motion information to the enhancement layer image decoding unit 204 based on a request from the enhancement layer image decoding unit 204 or the like.
- the BL frame memory 218 can store information for one frame or more.
- the intra prediction unit 219 performs intra prediction using the intra prediction mode information supplied from the decoding unit 212 and the reconstructed image supplied from the calculation unit 215, and generates a prediction image. That is, the intra prediction unit 219 generates a prediction image by a method basically similar to that used for encoding. However, the intra prediction unit 219 performs intra prediction only in the mode employed for encoding. The intra prediction unit 219 supplies the generated predicted image to the predicted image selection unit 221.
- the inter prediction unit 220 performs inter prediction in the mode employed for encoding based on the inter prediction mode information supplied from the decoding unit 212, and generates a prediction image. For example, the inter prediction unit 220 decodes the encoded motion vector included in the inter prediction mode information, and restores the motion vector of the processing target block (current block). At this time, the inter prediction unit 220 can acquire and use BL motion information from the BL frame memory 218 as necessary. Further, the inter prediction unit 220 acquires a decoded image (BL decoded image data) from the BL frame memory 218 as a reference image based on the restored motion vector and the like, and generates a predicted image of the current block using the acquired image. The inter prediction unit 220 supplies the generated predicted image to the predicted image selection unit 221. Also, the inter prediction unit 220 supplies BL motion information including the restored motion vector to the BL frame memory 218 as information related to base layer decoding, and stores the information.
- BL decoded image data BL decoded image data
- the predicted image selection unit 221 supplies the predicted image supplied from the intra prediction unit 219 or the inter prediction unit 220 to the calculation unit 215.
- FIG. 18 is a block diagram illustrating a main configuration example of the enhancement layer image decoding unit 204 of FIG. Note that FIG. 18 shows main components such as a processing unit and a data flow, and the ones shown in FIG. 18 are not limited to all. That is, in the enhancement layer image decoding unit 204, there may be a processing unit that is not shown as a block in FIG. 18, or there may be a process or data flow that is not shown as an arrow or the like in FIG.
- the enhancement layer image decoding unit 204 includes a storage buffer 261, a decoding unit 262, an inverse quantization unit 263, an inverse orthogonal transform unit 264, a calculation unit 265, a filter 266, and a screen rearrangement buffer 267.
- the enhancement layer image decoding unit 204 includes an intra prediction unit 269, an inter prediction unit 270, and a predicted image selection unit 271.
- Each of these processing units corresponds to each of the processing units of the accumulation buffer 211 to the screen rearrangement buffer 217 and the intra prediction unit 219 to the predicted image selection unit 221 (FIG. 17), has the same configuration, and serves as an enhancement layer. On the other hand, basically the same processing is performed as in the case of the base layer.
- the enhancement layer image decoding unit 204 includes an EL frame memory 268, an IL processing unit 281 and an inter layer prediction unit 282.
- the EL frame memory 268 stores information related to enhancement layer decoding.
- the EL frame memory 268 stores the filter processing result (also referred to as EL decoded image data) supplied from the filter 266 in its own storage area.
- the EL frame memory 268 stores motion information (also referred to as EL motion information) supplied from the inter prediction unit 270 or the inter layer prediction unit 282 in its own storage area.
- This motion information is motion information of a prediction mode that is adopted as an optimal prediction mode.
- the information related to enhancement layer decoding includes, for example, such EL decoded image data and EL motion information.
- the information related to the enhancement layer encoding may be any information.
- the EL frame memory 268 supplies the stored information related to enhancement layer decoding to the inter prediction unit 270 and the inter layer prediction unit 282 in response to a request.
- the EL frame memory 268 can store information for one frame or more.
- the IL processing unit 281 performs processing related to IL processing. For example, the IL processing unit 281 acquires BL information, EL information, control information, and the like supplied from the control unit 202 (FIG. 16). Further, for example, the IL processing unit 281 requests and acquires information related to base layer decoding (for example, BL decoded image data and BL motion information) from the BL frame memory 218 of the base layer image decoding unit 203. Further, for example, the IL processing unit 281 performs IL processing on information related to decoding of the base layer based on BL information, EL information, control information, and the like, and calculates the value of the scalable parameter from the value of the base layer reference. Convert to enhancement layer standard value.
- base layer decoding for example, BL decoded image data and BL motion information
- the IL processing unit 281 performs upsampling on the BL decoded image data so that the scalable parameter becomes the enhancement layer standard.
- the scalable parameter is the image size (resolution)
- the IL processing unit 281 determines the image size of the BL decoded image data according to the ratio between the image size of the base layer picture and the image size of the enhancement layer picture. Change (generally enlarge). Thereby, the image size of the BL decoded image data after conversion becomes a size based on the image size of the enhancement layer picture. This converted data is also referred to as IL image data.
- the IL processing unit 281 performs scaling so that the scalable parameter becomes the enhancement layer reference for the BL motion information.
- the scalable parameter is the image size (resolution)
- the IL processing unit 281 sets the size of the motion vector of the BL motion information to the ratio between the image size of the base layer picture and the image size of the enhancement layer picture. Change accordingly (generally expand).
- the size of the BL motion information after conversion becomes a size based on the image size of the enhancement layer picture.
- the converted data is also referred to as IL motion information.
- the IL processing unit 281 supplies information about the decoded decoding obtained by such IL processing to the inter prediction unit 270 and the inter layer prediction unit 282. For example, the IL processing unit 281 supplies the requested IL image data and IL motion information to the inter-layer prediction unit 282. For example, the IL processing unit 281 supplies the requested IL motion information to the inter prediction unit 270.
- the decoding unit 262 supplies information on the optimal prediction mode obtained by decoding the EL encoded data to the intra prediction unit 269, the inter prediction unit 270, or the inter layer prediction unit 282. For example, when intra prediction is performed, the decoding unit 262 supplies the intra prediction mode information to the intra prediction unit 269. For example, when the inter prediction is performed, the decoding unit 262 supplies the inter prediction mode information to the inter prediction unit 270. Further, for example, when the inter layer prediction is performed, the decoding unit 262 supplies the inter layer prediction mode information to the inter layer prediction unit 282.
- the inter layer prediction unit 282 performs inter layer prediction in the mode employed for encoding based on the inter layer prediction mode information supplied from the decoding unit 262, and generates a prediction image. For example, the inter layer prediction unit 282 decodes the encoded motion vector included in the inter layer prediction mode information, and restores the motion vector of the processing target block (current block). At that time, the inter-layer prediction unit 282 acquires EL motion information from the EL frame memory 268 as necessary, or acquires IL motion information from the IL processing unit 281 and uses the motion information. Can do.
- the inter-layer prediction unit 282 acquires a decoded image (IL decoded image data) at a position corresponding to the current block as a reference image from the IL processing unit 281 based on the reconstructed motion vector and the like, and uses it as a current block A predicted image is generated.
- the interlayer prediction unit 282 supplies the generated prediction image to the prediction image selection unit 271.
- the inter layer prediction unit 282 supplies the EL motion information including the reconstructed motion vector to the EL frame memory 268 as information related to enhancement layer decoding, and stores it.
- the inter prediction unit 270 performs inter prediction in the mode employed for encoding based on the inter prediction mode information supplied from the decoding unit 262, and generates a prediction image. For example, the inter prediction unit 270 decodes the encoded motion vector included in the inter prediction mode information, and restores the motion vector of the processing target block (current block). At that time, the inter prediction unit 270 may acquire the EL motion information from the EL frame memory 268 or the IL motion information from the IL processing unit 281 as necessary to use the motion information. it can.
- the inter prediction unit 270 obtains a decoded image (EL decoded image data) at a position corresponding to the current block from the EL frame memory 268 based on the restored motion vector and the like as a reference image, and uses it as a reference image. A prediction image is generated.
- the inter prediction unit 270 supplies the generated predicted image to the predicted image selection unit 271. Further, the inter prediction unit 270 supplies EL motion information including the restored motion vector to the EL frame memory 268 as information related to enhancement layer decoding, and stores the information.
- the prediction image selection unit 271 supplies the prediction image supplied from the intra prediction unit 269, the inter prediction unit 270, or the inter layer prediction unit 282 to the calculation unit 265.
- step S201 the demultiplexing unit 201 demultiplexes the hierarchical image encoded data, and encodes each layer's encoded data and control information (for example, BL encoded data, EL encoded). Data, control information, etc.).
- control information for example, BL encoded data, EL encoded. Data, control information, etc.
- step S202 the control unit 202 performs settings related to hierarchical decoding based on the control information (eg, parameter set) related to hierarchical decoding obtained in step S201.
- control information eg, parameter set
- step S203 the base layer image decoding unit 203 decodes the BL encoded data according to the setting performed in step S202, generates BL decoded image data, and outputs it.
- step S204 the enhancement layer image decoding unit 204 decodes the EL encoded data in accordance with the setting performed in step S202, generates EL decoded image data, and outputs it.
- step S204 When the process of step S204 is completed, the hierarchical image decoding process is completed.
- the accumulation buffer 211 accumulates the BL encoded data in step S221.
- step S222 the decoding unit 212 decodes the BL encoded data by a method corresponding to the encoding method to obtain quantized data.
- step S223 the inverse quantization unit 213 inversely quantizes the quantized data obtained in step S222 by a method corresponding to the quantization method to obtain orthogonal transform coefficients.
- step S224 the inverse orthogonal transform unit 214 performs inverse orthogonal transform on the orthogonal transform coefficient obtained in step S223 using a method corresponding to the orthogonal transform method, thereby restoring residual data.
- step S225 the intra prediction unit 219 or the inter prediction unit 220 generates a prediction image in the intra prediction mode or the inter prediction mode based on the information regarding the optimal prediction mode obtained in step S222. That is, for example, when intra prediction is employed at the time of encoding, the intra prediction unit 219 performs intra prediction to generate a predicted image. Further, for example, when inter prediction is employed in encoding, the inter prediction unit 220 performs inter prediction and generates a predicted image.
- step S226 the inter prediction unit 220 supplies BL motion information including the motion vector and the like restored in step S225 to the BL frame memory 218 as information related to base layer decoding. And memorize it.
- the process of this step S226 is abbreviate
- step S227 the calculation unit 215 adds the residual data restored in step S224 and the predicted image generated in step S225 to obtain a reconstructed image.
- step S229 the filter 216 supplies the obtained BL decoded image data to the BL frame memory 218 as information related to decoding of the base layer, and stores it.
- step S230 the screen rearrangement buffer 217 rearranges the decoded images obtained by the processing in step S228, and changes the frame order to the original display order (order before rearrangement at the time of encoding). Sort by.
- step S230 When the process of step S230 is completed, the BL image decoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- the IL processing unit 281 acquires BL information, EL information, and control information supplied from the control unit 202 (FIG. 16).
- step S252 the accumulation buffer 261 accumulates EL encoded data.
- step S253 the decoding unit 262 decodes the EL encoded data by a method corresponding to the encoding method to obtain quantized data.
- step S254 the inverse quantization unit 263 inversely quantizes the quantized data obtained in step S253 by a method corresponding to the quantization method to obtain an orthogonal transform coefficient.
- step S255 the inverse orthogonal transform unit 264 performs inverse orthogonal transform on the orthogonal transform coefficient obtained in step S254 using a method corresponding to the orthogonal transform method, and restores residual data.
- step S256 the decoding unit 262 determines whether the prediction mode employed as the optimal prediction mode at the time of encoding is the inter prediction mode or the inter prediction mode based on the information about the optimal prediction mode obtained in step S253. It is determined whether or not there is. When it is determined that the optimal prediction mode is the inter prediction mode or the inter layer prediction mode, the process proceeds to step S257.
- step S257 the IL processing unit 281 requests and acquires the BL decoded image data and the BL motion information at the position corresponding to the current block to be processed from the BL frame memory 218 of the base layer image decoding unit 203. .
- step S258 the IL processing unit 281 performs IL processing on the BL decoded image data and BL motion information acquired in step S257 based on the BL information, EL information, control information, and the like acquired in step S251. Obtain image data and IL motion information.
- the inter prediction unit 270 or the inter layer prediction unit 282 generates a prediction image in the inter prediction mode or the inter layer prediction mode. That is, for example, when inter prediction is employed in encoding, the inter prediction unit 270 performs inter prediction, restores the motion vector of the current block, and generates a prediction image of the current block using the motion vector. .
- the inter prediction unit 270 can acquire and use EL decoded image data, EL motion information, and the like from the EL frame memory 268 as necessary.
- the inter prediction unit 270 may use the IL motion information obtained in step S258 as necessary.
- the inter-layer prediction unit 282 when inter-layer prediction is employed in encoding, the inter-layer prediction unit 282 performs inter-layer prediction, restores the motion vector of the current block, and uses the motion vector to predict the current block prediction image. Is generated. At that time, the inter-layer prediction unit 282 can use the IL image data, the IL motion information, and the like obtained in step S258 as necessary. The inter layer prediction unit 282 can also acquire and use EL motion information and the like from the EL frame memory 268 as necessary.
- step S260 the inter prediction unit 270 or the inter layer prediction unit 282 supplies the EL motion information including the motion vector of the current block restored in step S259 to the EL frame memory 268 as information related to the enhancement layer decoding, and stores it therein.
- the inter prediction unit 270 supplies the EL motion information to the EL frame memory 268 and stores it in step S260.
- the inter layer prediction unit 282 supplies the EL motion information to the EL frame memory 268 to be stored in step S260.
- step S256 of FIG. 21 If it is determined in step S256 of FIG. 21 that the optimal prediction mode is the intra prediction mode, the process proceeds to step S261.
- step S261 the intra prediction unit 269 generates a prediction image in the intra prediction mode.
- the process proceeds to step S271 in FIG.
- step S271 of FIG. 22 the arithmetic unit 265 adds the residual data restored in step S255 of FIG. 21 and the predicted image generated in step S259 or step S261 of FIG. 21 to obtain a reconstructed image. .
- step S272 the filter 266 performs a filtering process on the reconstructed image obtained in step S271 to obtain a decoded image (EL decoded image data).
- step S273 the filter 216 supplies the obtained EL decoded image data to the EL frame memory 268 as information related to enhancement layer decoding, and stores it.
- step S274 the screen rearrangement buffer 267 rearranges the decoded images obtained by the processing in step S272, and changes the frame order to the original display order (order before rearrangement at the time of encoding). Sort by.
- step S274 When the process of step S274 is completed, the EL image decoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- IL processing can be performed at the time of enhancement layer decoding.
- the memory of each processing unit is realized by SRAM, but the BL frame memory 218 and the EL frame memory 268 are realized by using DRAM. It is common to be done.
- the IL processing By performing the IL processing at the time of enhancement layer decoding as described above, information (for example, IL image data and IL motion information) regarding decoding after conversion of scalable parameters from the base layer reference to the enhancement layer reference is performed. Processing can be performed without being stored in the EL frame memory 268. Therefore, as described with reference to FIG. 9, the amount of memory access to the DRAM (EL frame memory 268) (the amount of memory bus bandwidth used) can be reduced compared to the case of SHVC shown in FIG. it can. In addition, the amount of use of DRAM (EL frame memory 268) can be reduced.
- decoding it is only necessary to obtain information about decoding after conversion (IL image data and IL motion information) as much as is actually used for decoding, and information about decoding after conversion is necessarily prepared for the entire picture. There is no need.
- information related to decoding of the base layer for example, BL decoded image data and BL motion information
- the IL processing unit 281 when performing IL processing on each of a plurality of adjacent blocks, information related to decoding of the base layer (for example, BL decoded image data and BL motion information) once read by the IL processing unit 281 is stored in another block. In some cases, it can be reused for IL processing. In these cases, it is not necessary to read out information related to base layer decoding (for example, BL decoded image data and BL motion information) from the BL frame memory 218. That is, the amount of data read from the BL frame memory 218 can be reduced accordingly. That is, the amount of memory access to the DRAM (the amount of memory bus bandwidth used) can be reduced.
- processing for the enhancement layer can be started without waiting for the end of IL processing. That is, compared with the case of SHVC shown in FIG. 8, an unnecessary waiting time can be reduced and the entire processing time can be reduced.
- the decoding load can be reduced as compared with the case of SHVC.
- the BL frame memory 218 and the EL frame memory 268 may be realized using different DRAMs, or may be realized using different areas of one DRAM as in the example of FIG. It may be.
- the DRAM is an example, and the BL frame memory 218 and the EL frame memory 268 may be realized using any storage medium other than the DRAM.
- a plurality of processing units in the demultiplexing unit 201 to the enhancement layer image decoding unit 204 in FIG. 16 may be realized by one processor (for example, a CPU).
- the processor may be time-divided to function as each processing unit.
- the base layer image decoding unit 203 and the enhancement layer image decoding unit 204 may be realized by one time-divided processor (for example, CPU). Note that if the processor can execute a plurality of processes in parallel, for example, having a plurality of cores, each processing unit may be realized in parallel.
- Second encoding / decoding method> ⁇ IL processing in the base layer>
- the IL process has been described as being performed on the enhancement layer. However, the IL process may be performed on the base layer.
- the base layer (BL) decoder 51 decodes the base layer encoded data by HEVC, AVC, or the like basically in the same manner as in the case of an ordinary single layer image.
- the decoder 51 writes the decoded image data (DPB) and motion information (MV (Prm) of the base layer obtained during the decoding process to a predetermined area 52-1 of the DRAM 52, and reads them for use for decoding. To do.
- the data written in the area 52-1 is data based on the base layer reference with scalable parameters.
- the IL processing unit 61 acquires EL information, control information, and the like from the decoder 53. In addition, the IL processing unit 61 acquires BL information from the decoder 51. When the base layer decoded image data (DPB) and motion information (MV Prm) are obtained during the base layer decoding process, the IL processing unit 61 performs an IL process on the decoded data and enhances the scalable parameters. Decoded image data (DPB) and motion information (MV Prm) converted to the layer reference are obtained. The IL processing unit 61 writes the decoded image data (DPB) and motion information (MV Prm) after the conversion into a predetermined area 52-3 of the DRAM 52.
- the enhancement layer (EL) decoder 53 When the decoding process for the base layer is completed in this way, the enhancement layer (EL) decoder 53 then decodes the enhancement layer encoded data using, for example, HEVC (SHVC).
- the decoder 53 writes the enhancement layer decoded image data (DPB) and motion information (MV Prm) obtained during the decoding process in a predetermined area 52-2 of the DRAM 52.
- DPB enhancement layer decoded image data
- MV Prm motion information
- the decoder 53 converts the decoded image data (DPB) and motion information (MV Prm) of the enhancement layer in the area 52-2 and the conversion of the area 52-3 as indicated by the dotted frame.
- the subsequent decoded image data (DPB) and motion information (MV Prm) are read as necessary and used for decoding.
- the IL process can be started without waiting for the end of the process for the base layer as in the case of SHVC shown in FIG. That is, unnecessary waiting time can be reduced, and the overall processing time can be reduced.
- the decoding load can be reduced.
- Hierarchical coding can also be performed in the same manner as in the case of hierarchical decoding described above. That is, the encoding load can be reduced.
- FIG. 24 is a block diagram illustrating an example of a configuration of a hierarchical image encoding device that is an aspect of an image processing device to which the present technology is applied.
- a hierarchical image encoding device 300 shown in FIG. 24 is an image processing device configured to encode a hierarchical image by the above-described second encoding method. That is, the hierarchical image encoding apparatus 300 can encode a hierarchical image by performing inter-layer prediction using correlation between layers like SHVC. However, the hierarchical image encoding device 300 performs IL processing at the time of base layer encoding.
- the hierarchical image encoding apparatus 300 includes a control unit 301, a base layer image encoding unit 302, an enhancement layer image encoding unit 303, and a multiplexing unit 304.
- main components such as a processing unit and a data flow are shown, and what is shown in FIG. 24 is not all. That is, in the hierarchical image encoding apparatus 300, there may be a processing unit not shown as a block in FIG. 24, or there may be a process or data flow not shown as an arrow or the like in FIG.
- the control unit 301 performs processing related to information common to all layers in the same manner as the control unit 101.
- the control unit 301 supplies, to the base layer image encoding unit 302, for example, BL information indicating a base layer standard for scalable parameters.
- the control unit 301 supplies, for example, EL information indicating an enhancement layer standard for scalable parameters to the base layer image encoding unit 302.
- the control unit 301 supplies control information related to IL processing to the base layer image encoding unit 302, for example.
- the control unit 301 controls the IL processing by supplying such information.
- the base layer image encoding unit 302 is controlled by the control unit 301 to perform processing related to base layer encoding basically in the same manner as in the case of the base layer image encoding unit 102, and performs BL prediction on the BL image data. Then, using prediction such as inter prediction or the like, encoding is performed without using information of other layers to generate BL encoded data, which is supplied to the multiplexing unit 304.
- the base layer image encoding unit 302 performs IL processing at the time of the encoding, and converts the scalable parameter of the information related to the encoding of the base layer from the base layer standard to the enhancement layer standard.
- the base layer image encoding unit 302 supplies information related to encoding after conversion (for example, IL image data and IL motion information) obtained by the IL processing to the enhancement layer image encoding unit 303.
- the enhancement layer image encoding unit 303 is controlled by the control unit 301 to perform processing related to the enhancement layer encoding basically in the same manner as the enhancement layer image encoding unit 103, and the EL image data is converted into the intra prediction. Then, encoding is performed using inter prediction, inter layer prediction, or the like to generate EL encoded data, which is supplied to the multiplexing unit 304.
- the enhancement layer image encoding unit 303 performs this encoding by appropriately using information related to the encoded encoding acquired from the base layer image encoding unit 302.
- the multiplexing unit 304 multiplexes data basically in the same manner as the multiplexing unit 104.
- the multiplexing unit 304 includes control information supplied from the control unit 301, BL encoded data supplied from the base layer image encoding unit 302, and EL encoding supplied from the enhancement layer image encoding unit 303.
- the data is multiplexed to generate and output hierarchical image encoded data.
- this hierarchical image encoded data is also decoded by, for example, an arbitrary recording medium, an arbitrary transmission medium, an arbitrary information processing device, etc. Is transmitted to a decoding device. That is, the multiplexing unit 304 is also a transmission unit that transmits hierarchical image encoded data.
- FIG. 25 is a block diagram illustrating a main configuration example of the base layer image encoding unit 302 of FIG.
- main components such as a processing unit and a data flow are shown, and what is shown in FIG. 25 is not all. That is, in the base layer image encoding unit 302, there may be a processing unit that is not shown as a block in FIG. 25, or there may be a process or data flow that is not shown as an arrow or the like in FIG. .
- the base layer image encoding unit 302 includes a screen rearrangement buffer 311, a calculation unit 312, an orthogonal transform unit 313, a quantization unit 314, an encoding unit 315, and a storage buffer 316. Also, the base layer image encoding unit 302 includes an inverse quantization unit 317, an inverse orthogonal transform unit 318, a calculation unit 319, a filter 320, a BL frame memory 321, an intra prediction unit 322, an inter prediction unit 323, and a predicted image selection unit 324. And a rate control unit 325.
- These processing units correspond to the processing units of the screen rearranging buffer 111 to the rate control unit 125 (FIG. 11), have basically the same configuration, and basically perform the same processing.
- the base layer image encoding unit 302 includes an IL processing unit 331.
- the filter 320 supplies the filter processing result (BL decoded image data) not only to the BL frame memory 321 but also to the IL processing unit 331 as information related to base layer encoding.
- the prediction image selection unit 324 transmits the BL motion information including the motion vector of the inter prediction mode to the IL processing unit 331 in addition to the BL frame memory 121. Is also supplied as information on base layer encoding. This BL motion information is used, for example, for encoding motion vectors.
- the IL processing unit 331 performs processing related to IL processing. For example, the IL processing unit 331 acquires BL information, EL information, control information, and the like supplied from the control unit 301 (FIG. 24). Further, for example, the IL processing unit 331 performs IL processing on the supplied information related to base layer encoding, and converts the value of the scalable parameter from the base layer reference value to the enhancement layer reference value. That is, the IL processing unit 331 performs IL processing basically in the same manner as the IL processing unit 181, and generates information (for example, IL image data, IL motion information, and the like) regarding the encoded data after conversion. The IL processing unit 331 supplies information related to the encoded encoding to the enhancement layer image encoding unit 303.
- FIG. 26 is a block diagram illustrating a main configuration example of the enhancement layer image encoding unit 303 in FIG.
- main components such as a processing unit and a data flow are shown, and the components shown in FIG. 26 are not all. That is, in the enhancement layer image encoding unit 303, there may be a processing unit not shown as a block in FIG. 26, or there may be a processing or data flow not shown as an arrow or the like in FIG. .
- the enhancement layer image encoding unit 303 includes a screen rearrangement buffer 361, a calculation unit 362, an orthogonal transformation unit 363, a quantization unit 364, an encoding unit 365, and an accumulation buffer 366. Further, the enhancement layer image encoding unit 303 includes an inverse quantization unit 367, an inverse orthogonal transform unit 368, a calculation unit 369, a filter 370, an EL frame memory 371, an intra prediction unit 372, an inter prediction unit 373, and a predicted image selection unit 374. , A rate control unit 375, and an inter-layer prediction unit 382. Each of these processing units corresponds to each processing unit of the screen rearrangement buffer 161 to the rate control unit 175 and the inter-layer prediction unit 182 (FIG. 12), has basically the same configuration, and basically Similar processing is performed.
- the enhancement layer image encoding unit 303 does not have a processing unit corresponding to the IL processing unit 181.
- the IL processing is performed in the base layer image encoding unit 302.
- information for example, IL image data, IL motion information, and the like
- Information regarding the encoding after the conversion is supplied to the EL frame memory 371 and stored therein.
- the inter prediction unit 373 and the inter layer prediction unit 382 acquire not only information related to the enhancement layer encoding but also information related to the encoded encoding from the EL frame memory 371.
- the hierarchical image encoding processing by the hierarchical image encoding device 300 is executed basically in the same manner as in the hierarchical image encoding device 100, and the flow thereof is the same as the flowchart of FIG. .
- step S301 the IL processing unit 331 acquires BL information, EL information, and control information supplied from the control unit 301 (FIG. 24).
- step S302 to step S314 is basically performed in the same manner as each processing from step S121 to step S133 (FIG. 14).
- step S302 the screen rearrangement buffer 311 rearranges the images of the frames (pictures) of the input moving image (BL image data).
- step S303 the intra prediction unit 322 performs intra prediction.
- step S304 the inter prediction unit 323 performs inter prediction.
- step S305 the predicted image selection unit 324 selects an optimal prediction mode.
- step S306 the prediction image selection unit 324 supplies the BL motion information of the selected prediction mode to the BL frame memory 321 as information related to base layer encoding, and stores the information.
- step S307 the calculation unit 312 generates residual data between the input image and the predicted image.
- step S308 the orthogonal transform unit 313 performs orthogonal transform on the residual data to obtain an orthogonal transform coefficient.
- step S309 the quantization unit 314 quantizes the orthogonal transform coefficient by using the quantization parameter calculated by the rate control unit 325, and obtains quantized data.
- step S310 the inverse quantization unit 317 inversely quantizes the quantized data with a characteristic corresponding to the quantization characteristic, and restores the orthogonal transform coefficient.
- step S311 the inverse orthogonal transform unit 318 performs inverse orthogonal transform on the restored orthogonal transform coefficient by a method corresponding to the orthogonal transform, thereby restoring residual data.
- step S312 the calculation unit 319 generates the image data of the reconstructed image by adding the prediction image in the prediction mode selected in step S305 to the restored residual data.
- step S313 the filter 320 performs filter processing such as a deblocking filter on the image data of the reconstructed image to obtain BL decoded image data.
- step S314 the filter 320 supplies the BL decoded image data to the BL frame memory 321 as information related to base layer encoding, and stores it.
- step S315 the IL processing unit 331 performs an IL process on information related to base layer encoding, and obtains information related to the encoded encoding.
- the IL processing unit 331 uses the BL decoded image data obtained by the process of step S313 or the BL motion obtained by the process of step S305 based on the BL information, EL information, control information, etc. acquired in step S301.
- IL processing is performed on the information to obtain IL image data and IL motion information.
- step S316 the IL processing unit 331 supplies information related to the encoded encoding obtained in step S315 to the EL frame memory 371 (FIG. 26) and stores the information.
- the IL processing unit 331 supplies the IL image data and IL motion information obtained in step S315 to the EL frame memory 371 for storage.
- step S317 to step S319 is basically performed in the same manner as each processing from step S134 to step S136 (FIG. 14).
- step S317 the encoding unit 315 encodes information about the image such as the quantized data obtained by the process of step S309, and obtains BL encoded data.
- step S3108 the accumulation buffer 316 accumulates the BL encoded data and the like.
- the BL encoded data or the like stored in the storage buffer 316 is appropriately read as a bit stream, for example, and supplied to the multiplexing unit 304.
- step S319 the rate control unit 325 controls the rate of the quantization process in step S309.
- step S319 When the process of step S319 is completed, the BL image encoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- steps S331 to S347 are basically performed in the same manner as the processes in steps S152 and S153 and steps S156 to S170 in FIG.
- step S331 the screen rearrangement buffer 361 rearranges each frame (picture) of the input moving image (EL image data).
- the intra prediction unit 372 performs intra prediction.
- step S333 the inter prediction unit 373 performs inter prediction. Since information related to the enhancement layer encoding and information related to the encoded encoding are stored in the EL frame memory 371, the inter prediction unit 373 appropriately obtains information related to the required encoding from the EL frame memory 371 and performs inter Make a prediction.
- step S334 the inter layer prediction unit 382 performs inter layer prediction. As described above, since the information related to the encoded encoding is stored in the EL frame memory 371, the inter-layer prediction unit 382 acquires the necessary information related to the encoded encoding from the EL frame memory 371 to obtain the inter-layer. Make a prediction.
- step S335 the predicted image selection unit 374 selects an optimal prediction mode.
- step S336 the prediction image selection unit 374 supplies the EL motion information of the selected prediction mode to the EL frame memory 371 as information related to the enhancement layer encoding, and stores it.
- step S337 the calculation unit 362 generates residual data between the input image and the predicted image.
- step S3308 the orthogonal transform unit 363 performs orthogonal transform on the residual data to obtain an orthogonal transform coefficient.
- the quantization unit 364 quantizes the orthogonal transform coefficient by using the quantization parameter calculated by the rate control unit 375, and obtains quantized data.
- the inverse quantization unit 367 inversely quantizes the quantized data with characteristics corresponding to the characteristics of the quantization, and restores orthogonal transform coefficients.
- step S341 the inverse orthogonal transform unit 368 performs inverse orthogonal transform on the orthogonal transform coefficient by a method corresponding to the orthogonal transform to restore residual data.
- step S342 the calculation unit 369 adds the predicted image of the prediction mode selected in step S335 to the restored residual data, thereby generating image data of a reconstructed image.
- the filter 370 performs a filter process such as a deblocking filter on the image data of the reconstructed image. As a result, decoded image data (EL decoded image data) of the enhancement layer is obtained.
- the filter 370 supplies the EL decoded image data to the EL frame memory 371 for storage.
- step S345 the encoding unit 365 encodes information about the image such as the quantized data obtained by the process of step S339.
- step S346 the accumulation buffer 366 accumulates EL encoded data and the like obtained by the encoding.
- the EL encoded data or the like stored in the storage buffer 366 is appropriately read as a bit stream, for example, and supplied to the multiplexing unit 304.
- step S347 the rate control unit 375 controls the rate of the quantization process in step S339.
- step S347 When the process of step S347 is completed, the EL image encoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- IL processing can be performed at the time of base layer encoding.
- the memory of each processing unit is realized by SRAM, but the BL frame memory 321 and the EL frame memory 371 use DRAM. It is common to be realized.
- the amount of memory access to the DRAM (BL frame memory 321) (the amount of memory bus bandwidth used) can be reduced compared to the case of SHVC shown in FIG. it can.
- IL processing can be performed faster than in the case of SHVC that reads information related to base layer encoding from the DRAM. it can.
- the IL process can be started without waiting for the end of the process for the base layer as in the case of SHVC shown in FIG. That is, unnecessary waiting time can be reduced, and the overall processing time can be reduced.
- the encoding load can be reduced as compared with the case of SHVC.
- the BL frame memory 321 and the EL frame memory 371 may be realized using different DRAMs, or may be realized using different areas of one DRAM as in the example of FIG. It may be.
- the DRAM is merely an example, and the BL frame memory 321 and the EL frame memory 371 may be realized using an arbitrary storage medium other than the DRAM.
- a plurality of processing units in the control unit 301 to the multiplexing unit 304 in FIG. 24 may be realized by one processor (for example, CPU).
- the processor may be time-divided to function as each processing unit.
- the base layer image encoding unit 302 and the enhancement layer image encoding unit 303 may be realized by one time-divided processor (for example, CPU). Note that if the processor can execute a plurality of processes in parallel, for example, having a plurality of cores, each processing unit may be realized in parallel.
- FIG. 29 is a block diagram illustrating an example of a configuration of a hierarchical image decoding device that is an aspect of an image processing device to which the present technology is applied.
- a hierarchical image decoding apparatus 400 shown in FIG. 29 is an image processing apparatus configured to decode a hierarchical image by the above-described second decoding method. That is, the hierarchical image decoding apparatus 400 can decode the encoded data of the hierarchical image encoded by performing the inter-layer prediction using the correlation between layers like SHVC. However, the hierarchical image decoding apparatus 400 performs IL processing when decoding the base layer.
- the hierarchical image decoding apparatus 400 includes a demultiplexing unit 401, a control unit 402, a base layer image decoding unit 403, and an enhancement layer image decoding unit 404.
- FIG. 29 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 29 are not limited to all. That is, in the hierarchical image decoding apparatus 400, there may be a processing unit not shown as a block in FIG. 29, or there may be a process or data flow not shown as an arrow or the like in FIG.
- the demultiplexing unit 401 performs processing related to demultiplexing basically in the same manner as in the case of the demultiplexing unit 201.
- the demultiplexer 401 receives hierarchical image encoded data, demultiplexes it, and separates it into BL encoded data, EL encoded data, and control information related to hierarchical decoding.
- the demultiplexing unit 401 supplies control information related to hierarchical decoding to the control unit 402, supplies BL encoded data to the base layer image decoding unit 403, and supplies EL encoded data to the enhancement layer image decoding unit 404.
- the control unit 402 performs processing related to information common to all layers in the same manner as the control unit 202. However, the control unit 402 extracts, for example, control information related to the base layer from control information related to hierarchical decoding, and supplies the control information to the base layer image decoding unit 403 to control base layer decoding. For example, the control unit 402 supplies BL information, EL information, and control information related to IL processing to the base layer image decoding unit 403 to control the IL processing. Further, for example, the control unit 402 extracts control information related to the enhancement layer from control information related to hierarchical decoding, and supplies the control information to the enhancement layer image decoding unit 404 to control enhancement layer decoding.
- the base layer image decoding unit 403 is controlled by the control unit 402 to perform processing related to decoding of the base layer basically in the same manner as in the case of the base layer image decoding unit 203, and the BL encoded data is converted into intra prediction and inter prediction. Using prediction such as prediction, decoding is performed without using information of other layers to generate BL decoded image data, which is output to the outside of the hierarchical image decoding device 400.
- the base layer image decoding unit 403 performs, for example, IL processing at the time of decoding, and converts a scalable parameter of information related to decoding of the base layer from the base layer standard to the enhancement layer standard.
- the base layer image decoding unit 403 supplies information related to the decoded decoding obtained by the IL processing to the enhancement layer image encoding unit 404.
- the base layer image decoding unit 403 performs processing based on the control information supplied from the control unit 402, these processes can be performed with settings corresponding to the settings at the time of encoding.
- the enhancement layer image decoding unit 404 is controlled by the control unit 402 to perform processing related to enhancement layer decoding basically in the same manner as the enhancement layer image decoding unit 204, and the EL encoded data is converted into intra prediction and inter prediction. Decoding is performed using prediction, inter-layer prediction or the like to generate EL decoded image data, which is output to the outside of the hierarchical image decoding device 400.
- the enhancement layer image decoding unit 404 performs this decoding by appropriately using information regarding the encoded encoding obtained from the base layer image decoding unit 403.
- the enhancement layer image decoding unit 404 performs processing based on the control information supplied from the control unit 402, these processing can be performed with settings corresponding to the settings at the time of encoding.
- FIG. 30 is a block diagram illustrating an exemplary main configuration of the base layer image decoding unit 403 in FIG.
- FIG. 30 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 30 are not limited to all. That is, in the base layer image decoding unit 403, there may be a processing unit not shown as a block in FIG. 30, or there may be a process or data flow not shown as an arrow or the like in FIG.
- the base layer image decoding unit 403 includes a storage buffer 411, a decoding unit 412, an inverse quantization unit 413, an inverse orthogonal transform unit 414, a calculation unit 415, a filter 416, and a screen rearrangement buffer 417.
- the base layer image decoding unit 403 includes a BL frame memory 418, an intra prediction unit 419, an inter prediction unit 420, and a predicted image selection unit 421.
- These processing units correspond to the processing units of the accumulation buffer 211 to the predicted image selection unit 221 (FIG. 17), have basically the same configuration, and basically perform the same processing.
- the base layer image decoding unit 403 has an IL processing unit 431.
- the filter 416 supplies the filter processing result (BL decoded image data) not only to the BL frame memory 418 but also to the IL processing unit 431 as information regarding base layer decoding.
- the inter prediction unit 420 transmits BL motion information including a motion vector of the inter prediction mode to the IL processing unit 431 as well as the BL frame memory 418. , And supplied as information related to decoding of the base layer. This BL motion information is used, for example, for encoding motion vectors.
- the IL processing unit 431 performs processing related to IL processing. For example, the IL processing unit 431 acquires BL information, EL information, control information, and the like supplied from the control unit 402 (FIG. 29). In addition, for example, the IL processing unit 431 performs IL processing on the supplied information regarding decoding of the base layer, and converts the value of the scalable parameter from the value of the base layer reference to the value of the enhancement layer reference. That is, the IL processing unit 431 performs IL processing basically in the same manner as the IL processing unit 281, and generates information (for example, IL image data and IL motion information) related to the decoded decoding. The IL processing unit 431 supplies information regarding the decoded decoding to the enhancement layer image decoding unit 204.
- FIG. 31 is a block diagram illustrating a main configuration example of the enhancement layer image decoding unit 404 of FIG.
- FIG. 31 illustrates main components such as a processing unit and a data flow, and the components illustrated in FIG. 31 are not limited to all. That is, in the enhancement layer image decoding unit 404, there may be a processing unit not shown as a block in FIG. 31, or there may be a processing or data flow not shown as an arrow or the like in FIG.
- the enhancement layer image decoding unit 404 includes a storage buffer 461, a decoding unit 462, an inverse quantization unit 463, an inverse orthogonal transform unit 464, a calculation unit 465, a filter 466, and a screen rearrangement buffer 467. Also, the enhancement layer image decoding unit 404 includes an intra prediction unit 469, an inter prediction unit 470, a predicted image selection unit 471, and an inter layer prediction unit 482. Each of these processing units corresponds to each of the processing units of the storage buffer 261 to the predicted image selection unit 271 and the inter-layer prediction unit 282 (FIG. 18), has basically the same configuration, and basically the same. Perform the process.
- the enhancement layer image decoding unit 404 does not have a processing unit corresponding to the IL processing unit 281.
- the IL processing is performed in the base layer image decoding unit 403.
- information for example, IL image data, IL motion information, etc.
- Information regarding the decoded decoding is supplied to the EL frame memory 468 and stored therein.
- the inter prediction unit 470 and the inter layer prediction unit 482 obtain not only information related to enhancement layer decoding but also information related to decoded decoding from the EL frame memory 468.
- the hierarchical image decoding process by the hierarchical image decoding apparatus 400 is executed basically in the same manner as in the case of the hierarchical image decoding apparatus 200, and the flow thereof is the same as the flowchart of FIG.
- step S401 the IL processing unit 431 acquires BL information, EL information, and control information supplied from the control unit 402 (FIG. 29).
- step S402 to step S410 is basically performed in the same manner as each process of step S221 to step S229 (FIG. 20).
- step S402 the storage buffer 411 stores BL encoded data.
- step S403 the decoding unit 412 decodes the BL encoded data by a method corresponding to the encoding method to obtain quantized data.
- step S404 the inverse quantization unit 413 inversely quantizes the quantized data using a method corresponding to the quantization method to obtain orthogonal transform coefficients.
- step S405 the inverse orthogonal transform unit 414 performs inverse orthogonal transform on the orthogonal transform coefficient by a method corresponding to the orthogonal transform method to restore residual data.
- step S406 the intra prediction unit 419 or the inter prediction unit 420 generates a prediction image in the intra prediction mode or the inter prediction mode based on the information related to the optimal prediction mode obtained in step S403. That is, for example, when intra prediction is employed at the time of encoding, the intra prediction unit 419 performs intra prediction and generates a predicted image. For example, when inter prediction is adopted in encoding, the inter prediction unit 420 performs inter prediction and generates a predicted image.
- step S407 the inter prediction unit 420 uses the BL frame information including the motion vector and the like restored when the inter prediction is performed in step S406 as the information related to the base layer decoding. 418 for storage.
- the process of this step S407 is abbreviate
- step S408 the calculation unit 415 adds the residual data restored in step S405 and the predicted image generated in step S406 to obtain a reconstructed image.
- step S409 the filter 416 performs filter processing on the reconstructed image to obtain a decoded image (BL decoded image data).
- step S410 the filter 416 supplies the obtained BL decoded image data to the BL frame memory 418 as information relating to decoding of the base layer, and stores it.
- step S411 the IL processing unit 431 performs the BL decoded image data obtained in step S409 or the BL motion information obtained in step S406 based on the BL information, EL information, control information, etc. acquired in step S401. IL processing is performed to obtain IL image data and IL motion information.
- step S412 the IL processing unit 431 supplies information related to the decoded decoding obtained in step S411 to the EL frame memory 468 (FIG. 31) and stores it.
- the IL processing unit 431 supplies the IL image data and IL motion information obtained in step S411 to the EL frame memory 468 and stores them.
- step S413 the screen rearrangement buffer 417 rearranges the decoded images obtained by the processing in step S409, and changes the frame order to the original display order (order before rearrangement at the time of encoding). Sort by.
- step S413 When the process of step S413 is completed, the BL image decoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- step S431 to step S434 is basically performed in the same manner as each process from step S252 to step S255 (FIG. 21).
- step S431 the accumulation buffer 461 accumulates EL encoded data.
- step S432 the decoding unit 462 decodes the EL encoded data by a method corresponding to the encoding method to obtain quantized data.
- step S433 the inverse quantization unit 463 inversely quantizes the quantized data using a method corresponding to the quantization method to obtain orthogonal transform coefficients.
- step S434 the inverse orthogonal transform unit 464 performs inverse orthogonal transform on the orthogonal transform coefficient by a method corresponding to the orthogonal transform method, and restores residual data.
- step S435 the intra prediction unit 469, the inter prediction unit 470, or the inter layer prediction unit 482, based on the information regarding the optimal prediction mode obtained in step S432, the intra prediction mode, the inter prediction mode, or the inter layer prediction mode.
- the intra prediction unit 469 performs intra prediction and generates a predicted image.
- the inter prediction unit 470 performs inter prediction and generates a predicted image.
- the inter-layer prediction unit 482 performs inter-layer prediction and generates a predicted image.
- the inter prediction unit 470 performs information on enhancement layer decoding (for example, EL decoded image data and EL motion information) from the EL frame memory 468 and information on decoding after conversion (for example, IL motion information, etc.) as necessary. ) Can be obtained and used.
- the inter-layer prediction unit 482 also performs information on decoding (for example, IL decoded image data and IL motion information) after conversion from the EL frame memory 468 and information on enhancement layer decoding (for example, EL motion information) as necessary. Etc.) can be obtained and used.
- step S436 When inter prediction is performed in step S435, in step S436, the inter prediction unit 470 supplies the EL motion information including the motion vector and the like restored in the inter prediction to the EL frame memory 468 as information related to enhancement layer decoding. And memorize it. If inter-layer prediction is performed in step S435, in step S436, the inter-layer prediction unit 482 displays EL motion information including the motion vector restored in the inter-layer prediction as information related to enhancement layer decoding. This is supplied to the frame memory 468 and stored. In addition, when intra prediction is performed in step S435, the process of this step S436 is abbreviate
- step S437 to step S440 is basically performed in the same manner as each process from step S271 to step S274 (FIG. 22).
- step S437 the calculation unit 465 adds the residual data restored in step S434 and the predicted image generated in step S435 to obtain a reconstructed image.
- step S438, the filter 466 performs filter processing on the reconstructed image to obtain a decoded image (EL decoded image data).
- step S439 the filter 466 supplies the obtained EL decoded image data to the EL frame memory 468 as information relating to enhancement layer decoding, and stores it.
- step S440 the screen rearrangement buffer 467 rearranges the decoded images obtained by the processing in step S438, and changes the frame order to the original display order (order before rearrangement at the time of encoding). Sort by.
- step S440 When the process of step S440 is completed, the EL image decoding process is completed.
- processing unit of each of these processes is arbitrary and does not need to be the same. Therefore, the processing of each step can be executed in parallel with the processing of other steps, or the processing order can be changed as appropriate.
- IL processing can be performed at the time of base layer decoding.
- the memory of each processing unit is realized by SRAM, but the BL frame memory 418 and the EL frame memory 468 are realized by using DRAM. It is common to be done.
- the amount of memory access to the DRAM (BL frame memory 418) (the bandwidth usage of the memory bus) can be reduced compared to the case of SHVC shown in FIG. it can.
- IL processing can be performed at a higher speed than in the case of SHVC that reads information related to decoding of the base layer from the DRAM.
- IL processing can be started without waiting for the end of processing on the base layer as in the case of SHVC shown in FIG. That is, unnecessary waiting time can be reduced, and the overall processing time can be reduced.
- the decoding load can be reduced as compared with the case of SHVC.
- the BL frame memory 418 and the EL frame memory 468 may be realized using different DRAMs, or may be realized using different areas of one DRAM as in the example of FIG. It may be.
- the DRAM is merely an example, and the BL frame memory 418 and the EL frame memory 468 may be realized using an arbitrary storage medium other than the DRAM.
- a plurality of processing units in the demultiplexing unit 401 to the enhancement layer image decoding unit 404 in FIG. 29 may be realized by one processor (for example, a CPU).
- the processor may be time-divided to function as each processing unit.
- the base layer image decoding unit 403 and the enhancement layer image decoding unit 404 may be realized by one time-divided processor (for example, CPU). Note that if the processor can execute a plurality of processes in parallel, for example, having a plurality of cores, each processing unit may be realized in parallel.
- the specification of the encoded data generated in the first encoding method and the second encoding method can be made the same as that of SHVC. That is, the hierarchical image decoding device 200 and the hierarchical image decoding device 400 decode the hierarchical encoded data generated by the hierarchical image encoding device compliant with HVC by performing the same processing as the SHVC except for the part related to the IL processing. Can do. Further, the hierarchical image decoding device compliant with SHVC can decode the hierarchical encoded data generated by the hierarchical image encoding device 100 or the hierarchical image encoding device 300.
- the present technology can also be applied to encoding / decoding other than SHVC. That is, the configuration of the hierarchical image encoding device to which the present technology can be applied is not limited to the configuration examples of the hierarchical image encoding device 100 and the hierarchical image encoding device 300 described above.
- the rearrangement of the frames may be omitted.
- the screen rearrangement buffer 111 and the screen rearrangement buffer 161 in the hierarchical image encoding device 100 may be omitted.
- the screen rearrangement buffer 311 and the screen rearrangement buffer 361 in the hierarchical image encoding device 300 may be omitted.
- orthogonal transformation and inverse orthogonal transformation is arbitrary.
- orthogonal transformation / inverse orthogonal transformation such as discrete cosine transformation or Karhunen-Labe transformation may be performed.
- orthogonal transformation and inverse orthogonal transformation may be omitted.
- the orthogonal transform unit 113, the inverse orthogonal transform unit 118, the orthogonal transform unit 163, and the inverse orthogonal transform unit 168 (the orthogonal transform unit 313, the inverse orthogonal transform unit in the hierarchical image encoding device 300).
- the orthogonal transform unit 363, and the inverse orthogonal transform unit 368) may be omitted.
- the quantization and inverse quantization methods are arbitrary. Further, quantization and inverse quantization may be omitted. In this case, for example, the quantization unit 114, the inverse quantization unit 117, the quantization unit 164, and the inverse quantization unit 167 in the hierarchical image encoding device 100 (the quantization unit 314 and the inverse quantization unit in the hierarchical image encoding device 300). 317, the quantization unit 364, and the inverse quantization unit 367) may be omitted.
- accumulation of encoded data may be omitted.
- the accumulation buffer 116 and the accumulation buffer 166 (the accumulation buffer 316 and the accumulation buffer 366 in the hierarchical image encoding apparatus 300) may be omitted in the hierarchical image encoding apparatus 100.
- the content of the filtering process is arbitrary.
- the image quality may be improved by adaptive loop filter processing using a Wiener filter.
- a sample adaptive offset (SAO (Sample-Adaptive-Offset)) process may be used to reduce linking caused by a motion compensation filter, or to correct a pixel value shift that may occur on a decoding screen.
- filter processing other than these may be performed.
- a plurality of filter processes may be performed.
- the filtering process may be omitted. In this case, for example, the filter 120 and the filter 170 (the filter 320 and the filter 370 in the hierarchical image encoding device 300) may be omitted from the hierarchical image encoding device 100.
- the prediction processing method for generating the prediction image is arbitrary.
- a prediction image may be generated by a method other than intra prediction, inter prediction, and inter layer prediction.
- intra prediction may not be performed.
- the intra prediction unit 122 and the intra prediction unit 172 (the intra prediction unit 322 and the intra prediction unit 372 in the hierarchical image encoding device 300) may be omitted in the hierarchical image encoding device 100.
- variable length coding or arithmetic coding may be applied.
- variable length coding H.264 is used.
- CAVLC Context-Adaptive Variable Length Coding
- CABAC Context-Adaptive Binary Arithmetic Coding
- a plurality of encoding methods may be used in combination.
- the rate control may not be performed.
- the rate control unit 125 and the rate control unit 175 (the rate control unit 325 and the rate control unit 375 in the hierarchical image encoding device 300) may be omitted in the hierarchical image encoding device 100.
- the configuration of the hierarchical image decoding device to which the present technology can be applied is not limited to the configuration examples of the hierarchical image decoding device 200 and the hierarchical image decoding device 400 described above.
- accumulation of encoded data may be omitted.
- the accumulation buffer 211 and the accumulation buffer 261 in the hierarchical image decoding apparatus 200 may be omitted.
- the decoding method of the encoded data is arbitrary as long as it is a method corresponding to the encoding method. For example, you may make it decode by a reversible decoding system.
- variable length decoding or arithmetic decoding may be applied.
- H.264 is used as the variable length decoding
- CAVLC defined in the H.264 / AVC format may be applied.
- CABAC may be applied as the arithmetic decoding.
- a plurality of decoding methods may be used in combination.
- the inverse quantization method is arbitrary as long as it is a method corresponding to the quantization method at the time of encoding. Further, if quantization is not performed at the time of encoding, inverse quantization can be omitted. In this case, for example, the inverse quantization unit 213 and the inverse quantization unit 263 in the hierarchical image decoding device 200 (the inverse quantization unit 413 and the inverse quantization unit 463 in the hierarchical image decoding device 400) may be omitted.
- the inverse orthogonal transform method is arbitrary as long as it is a method corresponding to the orthogonal transform method at the time of encoding.
- inverse orthogonal transform such as discrete cosine transform and Karhunen-Loeve transform may be performed.
- orthogonal transform is not performed at the time of encoding, inverse orthogonal transform can be omitted.
- the inverse orthogonal transform unit 214 and the inverse orthogonal transform unit 264 (the inverse orthogonal transform unit 414 and the inverse orthogonal transform unit 464 in the layer image decoding device 400) may be omitted in the hierarchical image decoding device 200.
- the prediction method for generating the predicted image is arbitrary as long as it is a method corresponding to the prediction method for encoding. For example, predictions other than intra prediction, inter prediction, and inter layer prediction may be performed. Further, if intra prediction is not performed at the time of encoding, intra prediction can be omitted. In that case, for example, the intra prediction unit 219 and the intra prediction unit 269 in the hierarchical image decoding device 200 (the intra prediction unit 419 and the intra prediction unit 469 in the hierarchical image decoding device 400) may be omitted.
- the content of the filtering process is arbitrary as long as it corresponds to the filtering process performed at the time of encoding.
- an adaptive loop filter process using a Wiener filter, a sample adaptive offset (SAO (Sample Adaptive Offset)) process, or the like may be performed.
- filter processing other than these may be performed.
- a plurality of filter processes may be performed.
- the filtering process can be omitted. In that case, for example, the filter 216 and the filter 266 in the hierarchical image decoding device 200 (the filter 416 and the filter 466 in the hierarchical image decoding device 400) may be omitted.
- the rearrangement of the frames in the display order is not performed at the time of encoding, the rearrangement of the frames can be omitted at the time of decoding.
- the screen rearrangement buffer 217 and the screen rearrangement buffer 267 may be omitted in the hierarchical image decoding device 200.
- both the above-described first encoding / decoding method and the second encoding / decoding method may be applied.
- the first encoding / decoding method and the second encoding / decoding method may be switched in the middle of a sequence, a picture, a slice, or the like.
- the second encoding / decoding method is applied as an initial state and the processing delay of base layer encoding / decoding increases, the first encoding / decoding method is switched to the base layer encoding / decoding method.
- the decoding load may be reduced.
- the reverse switching may be performed to reduce the enhancement layer encoding / decoding load.
- the first encoding / decoding method and the second encoding / decoding method may be selected for each arbitrary processing unit (data unit) such as a sequence, a picture, a slice, a line, or a block. You may be able to do it.
- the present technology is applied to base layer encoding / decoding and enhancement layer encoding / decoding of the hierarchical encoding / decoding technology such as SHVC.
- hierarchical encoding / decoding it can be applied to encoding / decoding of any two hierarchies that refer to the other hierarchies when encoding / decoding one hierarchies.
- the present technology may be applied to encoding / decoding of an enhancement layer and encoding / decoding of another enhancement layer that refers to the enhancement layer.
- the present technology may be applied to encoding / decoding of layers other than the base layer and the enhancement layer.
- the first layer can be a base layer
- the second layer can be an enhancement layer that refers to the base layer
- control information may be supplied from the encoding side to the decoding side to control decoding.
- the hierarchical image encoding device may associate control information for controlling the decoding process with the hierarchical image encoded data as a parameter set, header information, or the like and supply the control information to the hierarchical image decoding device. Then, the hierarchical image decoding apparatus may execute decoding based on the control information.
- control information that specifies whether the hierarchical image decoding apparatus decodes the hierarchical image encoded data by the first decoding method or the second decoding method is transferred from the encoding side to the decoding side as described above. You may make it supply.
- control information may specify, for example, one of a first decoding method, a second decoding method, and another decoding method (for example, a decoding method compliant with SHVC).
- control information specifying whether or not to allow (or prohibit) switching of a decoding method and control information specifying a decoding method to be initially set are supplied from the encoding side to the decoding side. May be.
- control information related to the inter-layer is transferred from the encoding side to the decoding side as described above. You may make it supply.
- FIG. 34 shows an example of a multi-view image encoding method.
- the multi-viewpoint image includes images of a plurality of viewpoints (views).
- the multiple views of this multi-viewpoint image are encoded using the base view that encodes and decodes using only the image of its own view without using the information of other views, and the information of other views.
- -It consists of a non-base view that performs decoding.
- Non-base view encoding / decoding may use base view information or other non-base view information.
- the multi-viewpoint image has a structure similar to that of the above-described hierarchical image, and can be encoded / decoded in basically the same manner as the hierarchical image described above. That is, if “layer” in the above-described hierarchical image encoding / decoding is replaced with “view”, a multi-view image can be encoded / decoded similarly to the case of a hierarchical image.
- the present technology can be applied to the encoding / decoding of a multi-viewpoint image as in the case of the encoding / decoding of the hierarchical image described above. That is, by applying the present technology, it is possible to reduce the load of encoding / decoding multi-viewpoint images.
- ⁇ 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. 35 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 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 installed in the storage unit 813 via the input / output interface 810 by attaching the removable medium 821 to the drive 815.
- This program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting. In that case, the program can be received by the communication unit 814 and installed in the storage unit 813.
- a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be received by the communication unit 814 and installed in the storage unit 813.
- this program can be installed in advance in the ROM 802 or the storage unit 813.
- the hierarchical image encoding device 100 and the hierarchical image decoding device 200 are transmitters in, for example, satellite broadcasting, cable broadcasting such as cable TV, distribution on the Internet, and distribution to terminals by cellular communication. And a receiver, or a recording device that records an image on a medium such as an optical disk, a magnetic disk, and a flash memory, and a playback device that reproduces an image from the storage medium.
- the present technology can be applied to an image processing system in an arbitrary field such as traffic, medical care, crime prevention, agriculture, livestock industry, mining, beauty, factory, home appliance, weather, and nature monitoring.
- the present technology can also be applied to a system that captures an image for viewing using a digital camera, a portable device with a camera function, or the like.
- this technology monitors in-vehicle systems, traveling vehicles, and roads that photograph the front, rear, surroundings, and interiors of automobiles for safe driving such as automatic stop and recognition of the driver's condition.
- the present invention can also be applied to a system used for traffic, such as a surveillance camera system that performs a distance measurement between vehicles or the like.
- the present technology can also be applied to a system provided for security using a security camera for surveillance purposes, a camera for personal authentication purposes, or the like.
- the present technology can also be applied to a system provided for sports using various sensors that can be used for sports applications such as a wearable camera.
- the present technology can also be applied to a system used for agriculture using various sensors such as a camera for monitoring the state of a field or crop.
- the present technology can also be applied to a system used for livestock industry that uses various sensors for monitoring the state of livestock such as pigs and cows.
- the present technology can be applied to systems that monitor natural conditions such as volcanoes, forests, and oceans, meteorological observation systems that observe weather, temperature, humidity, wind speed, sunshine hours, and so on, such as birds, fish, and reptiles. It can also be applied to a system for observing the ecology of wildlife such as moss, amphibians, mammals, insects and plants. In the following, four specific application examples will be described.
- FIG. 36 illustrates an example of a schematic configuration of a television device 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 (I / F) unit 909, and a control unit. 910, a user interface (I / F) unit 911, and a bus 912.
- Tuner 902 extracts a signal of a desired channel from a broadcast signal received via 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 unit 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 unit 909 may be decoded by the decoder 904. That is, the external interface unit 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 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 controls the operation of the television device 900 according to an operation signal input from the user interface unit 911 by executing the program.
- the user interface unit 911 is connected to the control unit 910.
- the user interface unit 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 unit 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.
- the bus 912 connects the tuner 902, the demultiplexer 903, the decoder 904, the video signal processing unit 905, the audio signal processing unit 907, the external interface unit 909, and the control unit 910 to each other.
- the decoder 904 may have the function of the hierarchical image decoding apparatus 200 or the hierarchical image decoding apparatus 400 described above. That is, the decoder 904 may decode the encoded data by the method described in each of these embodiments. In this way, the television device 900 can reduce the decoding load.
- the video signal processing unit 905 encodes image data supplied from the decoder 904, for example, and the obtained encoded data is transmitted via the external interface unit 909. You may enable it to output to the exterior of the television apparatus 900.
- FIG. The video signal processing unit 905 may have the function of the hierarchical image encoding device 100 or the hierarchical image encoding device 300 described above. That is, the video signal processing unit 905 may encode the image data supplied from the decoder 904 by the method described in each of these embodiments. In this way, the television device 900 can reduce the encoding load.
- FIG. 37 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 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.
- the control unit 931 generates character data constituting the e-mail in response to an operation by the user via the operation unit 932.
- the control unit 931 causes the display unit 930 to display characters.
- 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.
- 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, supplies the electronic mail data to the recording / reproducing unit 929, and writes the data in the storage medium.
- the recording / reproducing unit 929 has an arbitrary readable / writable storage medium.
- the storage medium may be a built-in storage medium such as a RAM or a flash memory, or an externally mounted type such as a hard disk, magnetic disk, magneto-optical disk, optical disk, USB (Universal Serial Bus) 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, supplies the encoded stream to the recording / reproducing unit 929, and writes the encoded stream in the storage medium.
- the recording / reproducing unit 929 reads out the encoded stream recorded in the storage medium and outputs the encoded stream to the image processing unit 927.
- the image processing unit 927 decodes the encoded stream input from the recording / reproducing unit 929, supplies the image data to the display unit 930, and displays the image.
- 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 may have the function of the hierarchical image encoding device 100 or the hierarchical image encoding device 300 described above. That is, the image processing unit 927 may encode the image data by the method described in each of these embodiments. In this way, the cellular phone 920 can reduce the encoding load.
- the image processing unit 927 may have the function of the hierarchical image decoding device 200 or the hierarchical image decoding device 400 described above. That is, the image processing unit 927 may decode the encoded data by the method described in each of these embodiments. By doing so, the cellular phone 920 can reduce the load of this decoding.
- FIG. 38 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 (I / F) unit 942, an encoder 943, an HDD (Hard Disk Drive) unit 944, a disk drive 945, a selector 946, a decoder 947, and an OSD (On-Screen Display) unit 948.
- 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 unit 942 is an interface for connecting the recording / reproducing device 940 to an external device or a network.
- the external interface unit 942 may be, for example, an IEEE (Institute of Electrical and Electronic Engineers) 1394 interface, a network interface, a USB interface, or a flash memory interface.
- IEEE Institute of Electrical and Electronic Engineers 1394 interface
- a network interface e.g., a USB interface
- a flash memory interface e.g., a flash memory interface.
- video data and audio data received via the external interface unit 942 are input to the encoder 943. That is, the external interface unit 942 has a role as a transmission unit in the recording / reproducing apparatus 940.
- the encoder 943 encodes video data and audio data when the video data and audio data input from the external interface unit 942 are not encoded. Then, the encoder 943 outputs the encoded bit stream to the selector 946.
- the HDD unit 944 records an encoded bit stream, various programs, and other data in which content data such as video and audio is compressed in an internal hard disk. Further, the HDD unit 944 reads out these data from the hard disk when reproducing video and audio.
- the disk drive 945 performs recording and reading of data to and from the mounted recording medium.
- Recording media mounted on the disk drive 945 are, for example, DVD (Digital Versatile Disc) discs (DVD-Video, DVD-RAM (DVD -Random Access Memory), DVD-R (DVD-Recordable), DVD-RW (DVD-). Rewritable), DVD + R (DVD + Recordable), DVD + RW (DVD + Rewritable), etc.) or Blu-ray (registered trademark) disc.
- 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 unit 948. The decoder 947 outputs the generated audio data to an external speaker.
- the OSD unit 948 reproduces the video data input from the decoder 947 and displays the video. Further, the OSD unit 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 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 executes the program to control the operation of the recording / reproducing device 940 in accordance with, for example, an operation signal input from the user interface unit 950.
- the user interface unit 950 is connected to the control unit 949.
- the user interface unit 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 unit 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 may have the function of the hierarchical image encoding apparatus 100 or the hierarchical image encoding apparatus 300 described above. That is, the encoder 943 may encode the image data by the method described in each of these embodiments. By doing so, the recording / reproducing apparatus 940 can reduce the encoding load.
- the decoder 947 may have the function of the hierarchical image decoding apparatus 200 or the hierarchical image decoding apparatus 400 described above. That is, the decoder 947 may decode the encoded data by the method described in each of these embodiments. By doing so, the recording / reproducing apparatus 940 can reduce the load of decoding.
- FIG. 39 shows 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 (I / F) unit 966, a memory unit 967, a media drive 968, an OSD unit 969, and a control.
- 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 unit 971 is connected to the control unit 970.
- the bus 972 connects the image processing unit 964, the external interface unit 966, the memory unit 967, the media drive 968, the OSD unit 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 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 image processing unit 964 encodes the image data input from the signal processing unit 963 and generates encoded data. Then, the image processing unit 964 outputs the generated encoded data to the external interface unit 966 or the media drive 968. In addition, the image processing unit 964 decodes encoded data input from the external interface unit 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 unit 969 on an image output to the display unit 965.
- the OSD unit 969 generates a GUI image such as a menu, a button, or a cursor, and outputs the generated image to the image processing unit 964.
- the external interface unit 966 is configured as a USB input / output terminal, for example.
- the external interface unit 966 connects the imaging device 960 and a printer, for example, when printing an image.
- a drive is connected to the external interface unit 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 unit 966 may be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface unit 966 has a role as a transmission unit in the imaging device 960.
- the recording medium mounted on 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 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 unit 971 by executing the program.
- the user interface unit 971 is connected to the control unit 970.
- the user interface unit 971 includes, for example, buttons and switches for the user to operate the imaging device 960.
- the user interface unit 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 may have the function of the hierarchical image encoding device 100 or the hierarchical image encoding device 300 described above. That is, the image processing unit 964 may encode the image data by the method described in each of these embodiments. By doing so, the imaging device 960 can reduce the encoding load.
- the image processing unit 964 may have the function of the hierarchical image decoding device 200 or the hierarchical image decoding device 400 described above. That is, the image processing unit 964 may decode the encoded data by the method described in each of these embodiments. By doing so, the imaging device 960 can reduce the load of this decoding.
- HTTP streaming such as MPEG DASH, in which an appropriate one is selected from a plurality of encoded data having different resolutions prepared in advance and used in segment units. Can do. That is, information regarding encoding and decoding can be shared among a plurality of such encoded data.
- the present technology is not limited thereto, and any configuration mounted on a device constituting such a device or system, for example, a system Implemented as a processor such as LSI (Large Scale Integration), a module using multiple processors, a unit using multiple modules, etc., or a set with other functions added to the unit (ie, part of the device configuration) You can also
- FIG. 40 illustrates an example of a schematic configuration of a video set to which the present technology is applied.
- the video set 1300 shown in FIG. 40 has such a multi-functional configuration, and a device having a function related to image encoding and decoding (either or both of them) can be used for the function. It is a combination of devices having other related functions.
- the video set 1300 includes a module group such as a video module 1311, an external memory 1312, a power management module 1313, and a front-end module 1314, and an associated module 1321, a camera 1322, a sensor 1323, and the like. And a device having a function.
- a module is a component that has several functions that are related to each other and that has a coherent function.
- the specific physical configuration is arbitrary. For example, a plurality of processors each having a function, electronic circuit elements such as resistors and capacitors, and other devices arranged on a wiring board or the like can be considered. . It is also possible to combine the module with another module, a processor, or the like to form a new module.
- the video module 1311 is a combination of configurations having functions related to image processing, and includes an application processor, a video processor, a broadband modem 1333, and an RF module 1334.
- a processor is a configuration in which a configuration having a predetermined function is integrated on a semiconductor chip by a SoC (System On a Chip), and for example, there is a system LSI (Large Scale Integration).
- the configuration having the predetermined function may be a logic circuit (hardware configuration), a CPU, a ROM, a RAM, and the like, and a program (software configuration) executed using them. , Or a combination of both.
- a processor has a logic circuit and a CPU, ROM, RAM, etc., a part of the function is realized by a logic circuit (hardware configuration), and other functions are executed by the CPU (software configuration) It may be realized by.
- the 40 is a processor that executes an application relating to image processing.
- the application executed in the application processor 1331 not only performs arithmetic processing to realize a predetermined function, but also can control the internal and external configurations of the video module 1311 such as the video processor 1332 as necessary. .
- the video processor 1332 is a processor having a function related to image encoding / decoding (one or both of them).
- the broadband modem 1333 converts the data (digital signal) transmitted by wired or wireless (or both) broadband communication via a broadband line such as the Internet or a public telephone line network into an analog signal by digitally modulating the data.
- the analog signal received by the broadband communication is demodulated and converted into data (digital signal).
- the broadband modem 1333 processes arbitrary information such as image data processed by the video processor 1332, a stream obtained by encoding the image data, an application program, setting data, and the like.
- the RF module 1334 is a module that performs frequency conversion, modulation / demodulation, amplification, filter processing, and the like on an RF (Radio Frequency) signal transmitted / received via an antenna. For example, the RF module 1334 generates an RF signal by performing frequency conversion or the like on the baseband signal generated by the broadband modem 1333. Further, for example, the RF module 1334 generates a baseband signal by performing frequency conversion or the like on the RF signal received via the front end module 1314.
- RF Radio Frequency
- the application processor 1331 and the video processor 1332 may be integrated and configured as one processor.
- the external memory 1312 is a module that is provided outside the video module 1311 and has a storage device used by the video module 1311.
- the storage device of the external memory 1312 may be realized by any physical configuration, but is generally used for storing a large amount of data such as image data in units of frames. For example, it is desirable to realize it with a relatively inexpensive and large-capacity semiconductor memory such as DRAM (Dynamic Random Access Memory).
- the power management module 1313 manages and controls power supply to the video module 1311 (each component in the video module 1311).
- the front-end module 1314 is a module that provides the RF module 1334 with a front-end function (circuit on the transmitting / receiving end on the antenna side). As illustrated in FIG. 40, the front end module 1314 includes, for example, an antenna unit 1351, a filter 1352, and an amplification unit 1353.
- the antenna unit 1351 has an antenna for transmitting and receiving a radio signal and its peripheral configuration.
- the antenna unit 1351 transmits the signal supplied from the amplification unit 1353 as a radio signal, and supplies the received radio signal to the filter 1352 as an electric signal (RF signal).
- the filter 1352 performs a filtering process on the RF signal received via the antenna unit 1351 and supplies the processed RF signal to the RF module 1334.
- the amplifying unit 1353 amplifies the RF signal supplied from the RF module 1334 and supplies the amplified RF signal to the antenna unit 1351.
- Connectivity 1321 is a module having a function related to connection with the outside.
- the physical configuration of the connectivity 1321 is arbitrary.
- the connectivity 1321 has a configuration having a communication function other than the communication standard supported by the broadband modem 1333, an external input / output terminal, and the like.
- the communication 1321 is compliant with wireless communication standards such as Bluetooth (registered trademark), IEEE 802.11 (for example, Wi-Fi (Wireless Fidelity, registered trademark)), NFC (Near Field Communication), IrDA (InfraRed Data Association), etc. You may make it have a module which has a function, an antenna etc. which transmit / receive the signal based on the standard.
- the connectivity 1321 has a module having a communication function compliant with a wired communication standard such as USB (Universal Serial Bus), HDMI (registered trademark) (High-Definition Multimedia Interface), or a terminal compliant with the standard. You may do it.
- the connectivity 1321 may have other data (signal) transmission functions such as analog input / output terminals.
- the connectivity 1321 may include a data (signal) transmission destination device.
- the drive 1321 reads and writes data to and from a recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory (not only a removable medium drive, but also a hard disk, SSD (Solid State Drive) NAS (including Network Attached Storage) and the like.
- the connectivity 1321 may include an image or audio output device (a monitor, a speaker, or the like).
- the camera 1322 is a module having a function of capturing a subject and obtaining image data of the subject.
- Image data obtained by imaging by the camera 1322 is supplied to, for example, a video processor 1332 and encoded.
- the sensor 1323 includes, for example, a voice sensor, an ultrasonic sensor, an optical sensor, an illuminance sensor, an infrared sensor, an image sensor, a rotation sensor, an angle sensor, an angular velocity sensor, a velocity sensor, an acceleration sensor, an inclination sensor, a magnetic identification sensor, an impact sensor, It is a module having an arbitrary sensor function such as a temperature sensor.
- the data detected by the sensor 1323 is supplied to the application processor 1331 and used by an application or the like.
- the configuration described as a module in the above may be realized as a processor, or conversely, the configuration described as a processor may be realized as a module.
- the present technology can be applied to the video processor 1332 as described later. Therefore, the video set 1300 can be implemented as a set to which the present technology is applied.
- FIG. 41 illustrates an example of a schematic configuration of a video processor 1332 (FIG. 40) to which the present technology is applied.
- the video processor 1332 receives the video signal and the audio signal, encodes them in a predetermined method, decodes the encoded video data and audio data, A function of reproducing and outputting an audio signal.
- the video processor 1332 includes a video input processing unit 1401, a first image enlargement / reduction unit 1402, a second image enlargement / reduction unit 1403, a video output processing unit 1404, a frame memory 1405, and a memory control unit 1406.
- the video processor 1332 includes an encoding / decoding engine 1407, video ES (ElementaryElementStream) buffers 1408A and 1408B, and audio ES buffers 1409A and 1409B.
- the video processor 1332 includes an audio encoder 1410, an audio decoder 1411, a multiplexing unit (MUX (Multiplexer)) 1412, a demultiplexing unit (DMUX (Demultiplexer)) 1413, and a stream buffer 1414.
- MUX Multiplexing unit
- DMUX Demultiplexer
- the video input processing unit 1401 obtains a video signal input from, for example, the connectivity 1321 (FIG. 40) and converts it into digital image data.
- the first image enlargement / reduction unit 1402 performs format conversion, image enlargement / reduction processing, and the like on the image data.
- the second image enlargement / reduction unit 1403 performs image enlargement / reduction processing on the image data in accordance with the format of the output destination via the video output processing unit 1404, or is the same as the first image enlargement / reduction unit 1402. Format conversion and image enlargement / reduction processing.
- the video output processing unit 1404 performs format conversion, conversion to an analog signal, and the like on the image data and outputs the reproduced video signal to, for example, the connectivity 1321 or the like.
- the frame memory 1405 is a memory for image data shared by the video input processing unit 1401, the first image scaling unit 1402, the second image scaling unit 1403, the video output processing unit 1404, and the encoding / decoding engine 1407. .
- the frame memory 1405 is realized as a semiconductor memory such as a DRAM, for example.
- the memory control unit 1406 receives the synchronization signal from the encoding / decoding engine 1407, and controls the write / read access to the frame memory 1405 according to the access schedule to the frame memory 1405 written in the access management table 1406A.
- the access management table 1406A is updated by the memory control unit 1406 in accordance with processing executed by the encoding / decoding engine 1407, the first image enlargement / reduction unit 1402, the second image enlargement / reduction unit 1403, and the like.
- the encoding / decoding engine 1407 performs encoding processing of image data and decoding processing of a video stream that is data obtained by encoding the image data. For example, the encoding / decoding engine 1407 encodes the image data read from the frame memory 1405 and sequentially writes the data as a video stream in the video ES buffer 1408A. Further, for example, the video stream is sequentially read from the video ES buffer 1408B, decoded, and sequentially written in the frame memory 1405 as image data.
- the encoding / decoding engine 1407 uses the frame memory 1405 as a work area in the encoding and decoding. Also, the encoding / decoding engine 1407 outputs a synchronization signal to the memory control unit 1406, for example, at a timing at which processing for each macroblock is started.
- the video ES buffer 1408A buffers the video stream generated by the encoding / decoding engine 1407 and supplies the buffered video stream to the multiplexing unit (MUX) 1412.
- the video ES buffer 1408B buffers the video stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered video stream to the encoding / decoding engine 1407.
- the audio ES buffer 1409A buffers the audio stream generated by the audio encoder 1410 and supplies the buffered audio stream to the multiplexing unit (MUX) 1412.
- the audio ES buffer 1409B buffers the audio stream supplied from the demultiplexer (DMUX) 1413 and supplies the buffered audio stream to the audio decoder 1411.
- the audio encoder 1410 converts, for example, an audio signal input from the connectivity 1321 or the like, for example, into a digital format, and encodes it using a predetermined method such as an MPEG audio method or an AC3 (Audio Code number 3) method.
- the audio encoder 1410 sequentially writes an audio stream, which is data obtained by encoding an audio signal, in the audio ES buffer 1409A.
- the audio decoder 1411 decodes the audio stream supplied from the audio ES buffer 1409B, performs conversion to an analog signal, for example, and supplies the reproduced audio signal to, for example, the connectivity 1321 or the like.
- the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream.
- the multiplexing method (that is, the format of the bit stream generated by multiplexing) is arbitrary.
- the multiplexing unit (MUX) 1412 can also add predetermined header information or the like to the bit stream. That is, the multiplexing unit (MUX) 1412 can convert the stream format by multiplexing. For example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream to convert it into a transport stream that is a bit stream in a transfer format. Further, for example, the multiplexing unit (MUX) 1412 multiplexes the video stream and the audio stream, thereby converting the data into file format data (file data) for recording.
- the demultiplexing unit (DMUX) 1413 demultiplexes the bit stream in which the video stream and the audio stream are multiplexed by a method corresponding to the multiplexing by the multiplexing unit (MUX) 1412. That is, the demultiplexer (DMUX) 1413 extracts the video stream and the audio stream from the bit stream read from the stream buffer 1414 (separates the video stream and the audio stream). That is, the demultiplexer (DMUX) 1413 can convert the stream format by demultiplexing (inverse conversion of the conversion by the multiplexer (MUX) 1412).
- the demultiplexing unit (DMUX) 1413 obtains a transport stream supplied from, for example, the connectivity 1321 or the broadband modem 1333 via the stream buffer 1414 and demultiplexes the video stream and the audio stream. And can be converted to Further, for example, the demultiplexer (DMUX) 1413 obtains the file data read from various recording media by the connectivity 1321, for example, via the stream buffer 1414, and demultiplexes the video stream and the audio. Can be converted to a stream.
- Stream buffer 1414 buffers the bit stream.
- the stream buffer 1414 buffers the transport stream supplied from the multiplexing unit (MUX) 1412 and, for example, in the connectivity 1321 or the broadband modem 1333 at a predetermined timing or based on an external request or the like. Supply.
- MUX multiplexing unit
- the stream buffer 1414 buffers the file data supplied from the multiplexing unit (MUX) 1412 and supplies it to the connectivity 1321 at a predetermined timing or based on an external request, for example. It is recorded on various recording media.
- MUX multiplexing unit
- the stream buffer 1414 buffers a transport stream acquired through, for example, the connectivity 1321 or the broadband modem 1333, and performs a demultiplexing unit (DMUX) at a predetermined timing or based on a request from the outside. 1413.
- DMUX demultiplexing unit
- the stream buffer 1414 buffers file data read from various recording media in, for example, the connectivity 1321, and the demultiplexer (DMUX) 1413 at a predetermined timing or based on an external request or the like. To supply.
- DMUX demultiplexer
- a video signal input to the video processor 1332 from the connectivity 1321 or the like is converted into digital image data of a predetermined format such as 4: 2: 2Y / Cb / Cr format by the video input processing unit 1401 and stored in the frame memory 1405.
- This digital image data is read by the first image enlargement / reduction unit 1402 or the second image enlargement / reduction unit 1403, and format conversion to a predetermined method such as 4: 2: 0Y / Cb / Cr method and enlargement / reduction processing are performed. Is written again in the frame memory 1405.
- This image data is encoded by the encoding / decoding engine 1407 and written as a video stream in the video ES buffer 1408A.
- an audio signal input from the connectivity 1321 or the like to the video processor 1332 is encoded by the audio encoder 1410 and written as an audio stream in the audio ES buffer 1409A.
- the video stream of the video ES buffer 1408A and the audio stream of the audio ES buffer 1409A are read and multiplexed by the multiplexing unit (MUX) 1412 and converted into a transport stream, file data, or the like.
- the transport stream generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414 and then output to the external network via, for example, the connectivity 1321 or the broadband modem 1333.
- the file data generated by the multiplexing unit (MUX) 1412 is buffered in the stream buffer 1414, and then output to, for example, the connectivity 1321 and recorded on various recording media.
- a transport stream input from an external network to the video processor 1332 via the connectivity 1321 or the broadband modem 1333 is buffered in the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413.
- DMUX demultiplexer
- file data read from various recording media by the connectivity 1321 and input to the video processor 1332 is buffered by the stream buffer 1414 and then demultiplexed by the demultiplexer (DMUX) 1413. That is, the transport stream or file data input to the video processor 1332 is separated into a video stream and an audio stream by the demultiplexer (DMUX) 1413.
- the audio stream is supplied to the audio decoder 1411 via the audio ES buffer 1409B and decoded to reproduce the audio signal.
- the video stream is written to the video ES buffer 1408B, and then sequentially read and decoded by the encoding / decoding engine 1407, and written to the frame memory 1405.
- the decoded image data is enlarged / reduced by the second image enlargement / reduction unit 1403 and written to the frame memory 1405.
- the decoded image data is read out to the video output processing unit 1404, format-converted to a predetermined system such as 4: 2: 2Y / Cb / Cr system, and further converted into an analog signal to be converted into a video signal. Is played out.
- the present technology when the present technology is applied to the video processor 1332 configured as described above, the present technology according to each embodiment described above may be applied to the encoding / decoding engine 1407. That is, for example, the encoding / decoding engine 1407 has at least one of the functions of the hierarchical image encoding device 100, the hierarchical image decoding device 200, the hierarchical image encoding device 300, and the hierarchical image decoding device 400 described above. You may do it. By doing so, the video processor 1332 can obtain the same effects as those of the embodiments described above with reference to FIGS.
- At least one of the present technology (that is, the function of the hierarchical image encoding device 100, the function of the hierarchical image decoding device 200, the function of the hierarchical image encoding device 300, and the hierarchical image decoding device 400). Any one function) may be realized by hardware such as a logic circuit, may be realized by software such as an embedded program, or may be realized by both of them. Good.
- FIG. 42 illustrates another example of a schematic configuration of a video processor 1332 to which the present technology is applied.
- the video processor 1332 has a function of encoding / decoding video data by a predetermined method.
- the video processor 1332 includes a control unit 1511, a display interface 1512, a display engine 1513, an image processing engine 1514, and an internal memory 1515.
- the video processor 1332 includes a codec engine 1516, a memory interface 1517, a multiplexing / demultiplexing unit (MUX DMUX) 1518, a network interface 1519, and a video interface 1520.
- MUX DMUX multiplexing / demultiplexing unit
- the control unit 1511 controls the operation of each processing unit in the video processor 1332 such as the display interface 1512, the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the control unit 1511 includes, for example, a main CPU 1531, a sub CPU 1532, and a system controller 1533.
- the main CPU 1531 executes a program and the like for controlling the operation of each processing unit in the video processor 1332.
- the main CPU 1531 generates a control signal according to the program and supplies it to each processing unit (that is, controls the operation of each processing unit).
- the sub CPU 1532 plays an auxiliary role of the main CPU 1531.
- the sub CPU 1532 executes a child process such as a program executed by the main CPU 1531, a subroutine, or the like.
- the system controller 1533 controls operations of the main CPU 1531 and the sub CPU 1532 such as designating a program to be executed by the main CPU 1531 and the sub CPU 1532.
- the display interface 1512 outputs the image data to, for example, the connectivity 1321 under the control of the control unit 1511.
- the display interface 1512 converts image data of digital data into an analog signal, and outputs it to a monitor device or the like of the connectivity 1321 as a reproduced video signal or as image data of the digital data.
- the display engine 1513 Under the control of the control unit 1511, the display engine 1513 performs various conversion processes such as format conversion, size conversion, color gamut conversion, and the like so as to match the image data with hardware specifications such as a monitor device that displays the image. I do.
- the image processing engine 1514 performs predetermined image processing such as filter processing for improving image quality on the image data under the control of the control unit 1511.
- the internal memory 1515 is a memory provided in the video processor 1332 that is shared by the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the internal memory 1515 is used, for example, for data exchange performed between the display engine 1513, the image processing engine 1514, and the codec engine 1516.
- the internal memory 1515 stores data supplied from the display engine 1513, the image processing engine 1514, or the codec engine 1516, and stores the data as needed (eg, upon request). This is supplied to the image processing engine 1514 or the codec engine 1516.
- the internal memory 1515 may be realized by any storage device, but is generally used for storing a small amount of data such as image data or parameters in units of blocks. It is desirable to realize a semiconductor memory having a relatively small capacity but a high response speed (for example, as compared with the external memory 1312) such as “Static Random Access Memory”.
- the codec engine 1516 performs processing related to encoding and decoding of image data.
- the encoding / decoding scheme supported by the codec engine 1516 is arbitrary, and the number thereof may be one or plural.
- the codec engine 1516 may be provided with codec functions of a plurality of encoding / decoding schemes, and may be configured to perform encoding of image data or decoding of encoded data using one selected from them.
- the codec engine 1516 includes, for example, MPEG-2 video 1541, AVC / H.2641542, HEVC / H.2651543, HEVC / H.265 (Scalable) 1544, as function blocks for processing related to the codec.
- HEVC / H.265 (Multi-view) 1545 and MPEG-DASH 1551 are included.
- MPEG-2 Video1541 is a functional block that encodes and decodes image data in the MPEG-2 format.
- AVC / H.2641542 is a functional block that encodes and decodes image data using the AVC method.
- HEVC / H.2651543 is a functional block that encodes and decodes image data using the HEVC method.
- HEVC / H.265 (Scalable) 1544 is a functional block that performs scalable encoding and scalable decoding of image data using the HEVC method.
- HEVC / H.265 (Multi-view) 1545 is a functional block that multi-view encodes or multi-view decodes image data using the HEVC method.
- MPEG-DASH 1551 is a functional block that transmits and receives image data using the MPEG-DASH (MPEG-Dynamic Adaptive Streaming over HTTP) method.
- MPEG-DASH is a technology for streaming video using HTTP (HyperText Transfer Protocol), and selects and transmits appropriate data from multiple encoded data with different resolutions prepared in advance in segments. This is one of the features.
- MPEG-DASH 1551 generates a stream compliant with the standard, controls transmission of the stream, and the like.
- MPEG-2 Video 1541 to HEVC / H.265 (Multi-view) 1545 described above are used. Is used.
- the memory interface 1517 is an interface for the external memory 1312. Data supplied from the image processing engine 1514 or the codec engine 1516 is supplied to the external memory 1312 via the memory interface 1517. The data read from the external memory 1312 is supplied to the video processor 1332 (the image processing engine 1514 or the codec engine 1516) via the memory interface 1517.
- a multiplexing / demultiplexing unit (MUX DMUX) 1518 performs multiplexing and demultiplexing of various data related to images such as a bit stream of encoded data, image data, and a video signal.
- This multiplexing / demultiplexing method is arbitrary.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 can not only combine a plurality of data into one but also add predetermined header information or the like to the data.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 not only divides one data into a plurality of data but also adds predetermined header information or the like to each divided data. it can.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 can convert the data format by multiplexing / demultiplexing.
- the multiplexing / demultiplexing unit (MUX DMUX) 1518 multiplexes the bitstream, thereby transporting the transport stream, which is a bit stream in a transfer format, or data in a file format for recording (file data).
- the transport stream which is a bit stream in a transfer format, or data in a file format for recording (file data).
- file data file format for recording
- the network interface 1519 is an interface for a broadband modem 1333, connectivity 1321, etc., for example.
- the video interface 1520 is an interface for the connectivity 1321, the camera 1322, and the like, for example.
- the transport stream is supplied to the multiplexing / demultiplexing unit (MUX DMUX) 1518 via the network interface 1519.
- MUX DMUX multiplexing / demultiplexing unit
- codec engine 1516 the image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and is connected to, for example, the connectivity 1321 through the display interface 1512. And the image is displayed on the monitor.
- image data obtained by decoding by the codec engine 1516 is re-encoded by the codec engine 1516, multiplexed by a multiplexing / demultiplexing unit (MUX DMUX) 1518, converted into file data, and video
- MUX DMUX multiplexing / demultiplexing unit
- encoded data file data obtained by encoding image data read from a recording medium (not shown) by the connectivity 1321 or the like is transmitted through a video interface 1520 via a multiplexing / demultiplexing unit (MUX DMUX). ) 1518 to be demultiplexed and decoded by the codec engine 1516.
- Image data obtained by decoding by the codec engine 1516 is subjected to predetermined image processing by the image processing engine 1514, subjected to predetermined conversion by the display engine 1513, and supplied to, for example, the connectivity 1321 through the display interface 1512. The image is displayed on the monitor.
- image data and other data are exchanged between the processing units in the video processor 1332 using, for example, the internal memory 1515 or the external memory 1312.
- the power management module 1313 controls power supply to the control unit 1511, for example.
- the present technology when the present technology is applied to the video processor 1332 configured as described above, the present technology according to each embodiment described above may be applied to the codec engine 1516. That is, for example, the codec engine 1516 has at least one of the functions of the above-described hierarchical image encoding device 100, hierarchical image decoding device 200, hierarchical image encoding device 300, and hierarchical image decoding device 400. do it. By doing so, the video processor 1332 can obtain the same effects as those of the embodiments described above with reference to FIGS.
- the present technology (that is, the function of at least one of the hierarchical image encoding device 100, the hierarchical image decoding device 200, the hierarchical image encoding device 300, and the hierarchical image decoding device 400) is It may be realized by hardware such as a logic circuit, may be realized by software such as an embedded program, or may be realized by both of them.
- the configuration of the video processor 1332 is arbitrary and may be other than the two examples described above.
- the video processor 1332 may be configured as one semiconductor chip, but may be configured as a plurality of semiconductor chips. For example, a three-dimensional stacked LSI in which a plurality of semiconductors are stacked may be used. Further, it may be realized by a plurality of LSIs.
- Video set 1300 can be incorporated into various devices that process image data.
- the video set 1300 can be incorporated in the television device 900 (FIG. 36), the mobile phone 920 (FIG. 37), the recording / reproducing device 940 (FIG. 38), the imaging device 960 (FIG. 39), or the like.
- the apparatus can obtain the same effects as those of the embodiments described above with reference to FIGS.
- the video processor 1332 can implement as a structure to which this technique is applied.
- the video processor 1332 can be implemented as a video processor to which the present technology is applied.
- the processor or the video module 1311 indicated by the dotted line 1341 can be implemented as a processor or a module to which the present technology is applied.
- the video module 1311, the external memory 1312, the power management module 1313, and the front end module 1314 can be combined and implemented as a video unit 1361 to which the present technology is applied. Regardless of the configuration, the same effects as those of the embodiments described above with reference to FIGS. 1 to 33 can be obtained.
- any configuration including the video processor 1332 can be incorporated into various devices that process image data, as in the case of the video set 1300.
- a video processor 1332 a processor indicated by a dotted line 1341, a video module 1311, or a video unit 1361, a television device 900 (FIG. 36), a mobile phone 920 (FIG. 37), a recording / playback device 940 (FIG. 38), The imaging device 960 (FIG. 39) can be incorporated.
- the apparatus obtains the same effects as those of the embodiments described above with reference to FIGS. 1 to 33, as in the case of the video set 1300. be able to.
- ⁇ Others> In this specification, an example in which various types of information are multiplexed with encoded data (bitstream) and transmitted from the encoding side to the decoding side has been described. However, the method of transmitting such information is such an example. It is not limited. For example, these pieces of information may be transmitted or recorded as separate data associated with the encoded data without being multiplexed with the encoded data.
- the term “associate” means that, for example, an image (which may be a part of an image such as a slice or a block) included in encoded data and information corresponding to the image can be linked at the time of decoding.
- the information associated with the encoded data (image) may be transmitted on a different transmission path from the encoded data (image).
- the information associated with the encoded data (image) may be recorded on a recording medium different from the encoded data (image) (or another recording area of the same recording medium).
- the image and information corresponding to the image may be associated with each other in an arbitrary unit such as a plurality of frames, one frame, or a part of the frame.
- 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).
- the configurations described above as a plurality of devices (or processing units) may be combined into a single device (or processing unit).
- a configuration other than that described above may be added to the configuration of each device (or each processing unit).
- 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 and processed by a plurality of devices via a network.
- the above-described program can be executed in an arbitrary device.
- the device may have necessary functions (functional blocks and the like) so that necessary information can be obtained.
- each step described in the above flowchart can be executed by one device or can be executed by a plurality of devices. Further, when a plurality of processes are included in one step, 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.
- the program executed by the computer may be executed in a time series in the order described in this specification for the processing of the steps describing the program, or in parallel or called. It may be executed individually at a necessary timing. That is, as long as no contradiction occurs, the processing of each step may be executed in an order different from the order described above. Furthermore, the processing of the steps describing this program may be executed in parallel with the processing of other programs, or may be executed in combination with the processing of other programs.
- this technique can also take the following structures.
- (1) When inter-layer prediction using correlation between layers is performed in encoding of the second layer of image data including a plurality of layers including the first layer and the second layer, the inter-layer An inter-layer processing unit that acquires information related to the encoding of the first layer reference used for prediction, and converts the acquired information related to the encoding from the first layer reference to the second layer reference; The inter-layer prediction is performed using the information related to the encoding of the second layer reference obtained by being converted by the inter-layer processing unit, and the second image is obtained using the obtained predicted image data.
- An image processing apparatus comprising: a first encoding unit that encodes image data of a layer.
- the interlayer processing unit As the information related to the encoding of the first layer reference, the image data of the first layer used when generating a predicted image by the inter-layer prediction is acquired, and the acquired image data is the first image Processing to upsample from a layer reference to the second layer reference; As the information related to the encoding of the first layer reference, the motion information of the first layer used in the prediction of motion information by the inter-layer prediction is acquired, and the acquired motion information is the first information The image processing apparatus according to (1), wherein at least one of the process of scaling from a layer reference to the second layer reference is performed.
- the inter-layer processing unit acquires information on the encoding of the first layer reference stored in the storage unit, and acquires the acquired information on the encoding from the first layer reference to the second
- the image processing apparatus converts to a layer reference.
- the first encoding unit is an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in sequence units, and the image data of the second layer.
- the inter-layer processing unit obtains information on the first layer-based coding for each prediction unit that is a block obtained by further dividing the coding unit, and obtains the information on the obtained coding for the first unit.
- the image processing device according to any one of (1) to (3), wherein the image is converted from a layer reference to the second layer reference.
- the inter-layer prediction is performed using the information related to the encoding of the second layer reference obtained by the conversion, and the image data of the second layer is converted using the obtained predicted image data.
- An inter-layer processing unit that acquires information related to decoding of the first layer reference used for the inter-layer prediction, and converts the acquired information related to decoding from the first layer reference to the second layer reference;
- the inter-layer prediction is performed using information related to the decoding of the second layer reference obtained by being converted by the inter-layer processing unit, and the second layer is performed using the obtained predicted image data.
- An image processing apparatus comprising: a first decoding unit that decodes the encoded data.
- the interlayer processing unit As information about the decoding of the first layer reference, the first layer image data used when generating a predicted image by the inter-layer prediction is acquired, and the acquired image data is used as the first layer. Processing to upsample from a reference to the second layer reference; As the information related to the decoding of the first layer reference, the motion information of the first layer used in the prediction of motion information by the inter-layer prediction is acquired, and the acquired motion information is used as the first layer.
- the image processing apparatus according to (6) wherein at least any one of a process of scaling from a reference to the second layer reference is performed.
- the second decoding unit that decodes encoded data of the image data of the first layer using prediction;
- a storage unit that stores information on the decoding of the first layer reference obtained by the second decoding unit decoding the encoded data;
- the inter-layer processing unit acquires information on the decoding of the first layer reference stored in the storage unit, and acquires the acquired information on the decoding from the first layer reference to the second layer reference.
- the image processing apparatus according to (6) or (7).
- the first decoding unit is a coding unit in which the image data of the second layer is a variable-size block obtained by recursively dividing a maximum coding unit that is a fixed-size block in sequence units.
- the inter-layer processing unit obtains information on the decoding based on the first layer reference for each prediction unit that is a block obtained by further dividing the coding unit, and obtains the information on the obtained decoding on the first layer.
- the image processing device according to any one of (6) to (8), wherein the reference is converted into the second layer reference.
- a first encoding unit that encodes the first layer of image data including a plurality of layers including a first layer and a second layer using prediction; Used for inter-layer prediction using correlation between layers in the encoding of the second layer of the image data obtained by the first encoding unit encoding the image data of the first layer
- An image processing apparatus comprising: an inter-layer processing unit that converts the information related to the encoding of the first layer reference from the first layer reference to the second layer reference.
- Information on the encoding is as follows: Image data of the first layer obtained by the first encoding unit, which is used when generating a predicted image by the inter-layer prediction; Including at least one of the first layer motion information obtained by the first encoding unit, used when predicting motion information by the inter layer prediction, The interlayer processing unit Processing to upsample the image data from the first layer reference to the second layer reference; The image processing device according to (11), wherein at least one of the processing for scaling the motion information from the first layer reference to the second layer reference is performed.
- a storage unit that stores information on the encoding of the second layer reference obtained by being converted by the interlayer processing unit;
- the inter-layer prediction is performed using information related to the encoding of the second layer reference stored in the storage unit, and the image data of the second layer is obtained using the obtained predicted image data
- the image processing apparatus according to (11) or (12), further comprising: a second encoding unit that encodes.
- the first encoding unit is an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in sequence units, and image data of the first layer.
- the inter-layer processing unit converts the information on the coding from the first layer reference to the second layer reference for each prediction unit that is a block obtained by further dividing the coding unit.
- the image processing apparatus according to any one of 13).
- the first layer of the image data including a plurality of layers including the first layer and the second layer is encoded using prediction,
- a first decoding unit that decodes encoded data of the first layer of image data including a plurality of layers including a first layer and a second layer;
- the first decoding unit is used for inter-layer prediction using correlation between layers in decoding of the encoded data of the second layer obtained by decoding the encoded data of the first layer
- An image processing apparatus comprising: an inter-layer processing unit that converts information related to decoding based on a first layer reference from the first layer reference to the second layer reference.
- Information about the decoding is as follows: Image data of the first layer obtained by the first decoding unit, used when generating a predicted image by the inter-layer prediction; Including at least one of the first layer motion information obtained by the first decoding unit, used when predicting motion information by the inter layer prediction, The interlayer processing unit Processing to upsample the image data from the first layer reference to the second layer reference; The image processing device according to (16), wherein at least one of the processing for scaling the motion information from the first layer reference to the second layer reference is performed.
- a storage unit that stores information related to the decoding of the second layer reference obtained by being converted by the interlayer processing unit;
- the inter-layer prediction is performed using the information related to the decoding of the second layer reference stored in the storage unit, and the predicted image data obtained is used to calculate the image data of the second layer.
- the image processing apparatus according to (16) or (17), further comprising: a second decoding unit that decodes the encoded data.
- the first decoding unit includes the first layer encoded in a coding unit that is a variable-size block obtained by recursively dividing a maximum coding unit that is a fixed-size block in sequence units.
- the inter-layer processing unit converts the decoding-related information from the first layer reference to the second layer reference for each prediction unit which is a block obtained by further dividing the coding unit. (16) to (18 ). (20) Decoding the encoded data of the first layer of the image data composed of a plurality of layers including the first layer and the second layer; Decoding of the first layer reference used for inter-layer prediction using correlation between layers in decoding of the encoded data of the second layer obtained by decoding the encoded data of the first layer An image processing method for converting information relating to the first layer reference to the second layer reference.
- the interlayer processing unit As the information related to the encoding of the base layer reference, image data of a base layer used when generating a predicted image by the inter-layer prediction is acquired, and the acquired image data is converted from the base layer reference to the enhancement layer reference And up-sampling As the information related to the coding of the base layer reference, the base layer motion information used in the prediction of the motion information by the inter layer prediction is acquired, and the acquired motion information is converted from the base layer reference to the enhancement layer reference.
- the image processing apparatus according to (21), wherein at least one of the scaling processing and the scaling processing is performed.
- a base layer encoding unit that encodes base layer image data using prediction
- a base layer storage unit that stores information related to the encoding of the base layer reference obtained by encoding the base layer image data by the base layer encoding unit
- the inter-layer processing unit acquires information on the encoding of the base layer reference stored in the base layer storage unit, and converts the acquired information on the encoding from the base layer reference to an enhancement layer reference
- the image processing device according to (21) or (22).
- the enhancement layer encoding unit encodes enhancement layer image data in an encoding unit that is a variable-size block obtained by recursively dividing a maximum encoding unit that is a fixed-size block in sequence units,
- the inter-layer processing unit acquires information on the base layer reference encoding for each prediction unit that is a block obtained by further dividing the encoding unit, and the acquired information on the encoding is enhanced from the base layer reference.
- the image processing device according to any one of (21) to (23), wherein the image processing device converts to a layer reference.
- An inter-layer processing unit that converts the information relating to the decoding from the base layer standard to an enhancement layer standard;
- the inter-layer prediction is performed using information related to the enhancement layer-based decoding obtained by conversion by the inter-layer processing unit, and the encoded data of the enhancement layer is obtained using the obtained predicted image data.
- the interlayer processing unit includes: As information related to the decoding of the base layer reference, image data of a base layer used when generating a predicted image by the inter layer prediction is acquired, and the acquired image data is changed from the base layer reference to the enhancement layer reference.
- the base layer motion information used in the prediction of motion information by the inter layer prediction is acquired, and the acquired motion information is changed from the base layer reference to the enhancement layer reference.
- the image processing device wherein at least one of scaling processing is performed.
- a base layer decoding unit that decodes encoded data of base layer image data using prediction
- a base layer storage unit that stores information on the decoding of the base layer reference obtained by the base layer decoding unit decoding the encoded data
- the inter-layer processing unit acquires information on the decoding of the base layer reference stored in the base layer storage unit, and converts the acquired information on the decoding from the base layer reference to an enhancement layer reference.
- the enhancement layer image data is encoded in a coding unit that is a variable-size block obtained by recursively dividing a maximum coding unit that is a fixed-size block in a sequence unit.
- the inter-layer processing unit obtains information on the decoding based on the base layer reference for each prediction unit that is a block obtained by further dividing the coding unit, and obtains the information on the obtained decoding from the base layer reference based on an enhancement layer.
- the image processing device according to any one of (26) to (28), wherein the image processing device is converted into a reference.
- a base layer encoding unit that encodes base layer image data using prediction; Encoding based on a base layer used for inter-layer prediction using correlation between layers in encoding enhancement layer image data obtained by the base layer encoding unit encoding the base layer image data
- An image processing apparatus comprising: an inter-layer processing unit that converts information related to the base layer standard to the enhancement layer standard.
- Information on the encoding is as follows: Base layer image data obtained by the base layer encoding unit, used when generating a predicted image by the inter layer prediction; Including at least one of base layer motion information obtained by the base layer encoding unit, used when predicting motion information by the inter layer prediction, The interlayer processing unit Processing to upsample the image data from the base layer reference to the enhancement layer reference; The image processing apparatus according to (31), wherein at least one of the process of scaling the motion information from the base layer reference to the enhancement layer reference is performed.
- An enhancement layer storage unit that stores information related to the encoding of the enhancement layer reference obtained by being converted by the interlayer processing unit;
- the inter-layer prediction is performed using the information related to the enhancement layer-based encoding stored in the enhancement layer storage unit, and the enhancement layer image data is encoded using the obtained predicted image data
- the image processing apparatus according to (31) or (32), further comprising: an enhancement layer encoding unit.
- the base layer encoding unit encodes base layer image data in a coding unit that is a variable-size block obtained by recursively dividing a maximum coding unit that is a fixed-size block in sequence units
- the inter-layer processing unit converts the information related to the encoding from the base layer reference to the enhancement layer reference for each prediction unit that is a block obtained by further dividing the encoding unit.
- An image processing apparatus according to claim 1.
- An image processing method that converts standards to enhancement layer standards.
- An image processing apparatus comprising: an inter-layer processing unit that converts from a base layer standard to an enhancement layer standard.
- the information regarding the decoding is as follows: Base layer image data obtained by the base layer decoding unit, used when generating a predicted image by the inter layer prediction; Including at least one of base layer motion information obtained by the base layer decoding unit, used when predicting motion information by the inter layer prediction, The interlayer processing unit Processing to upsample the image data from the base layer reference to the enhancement layer reference; The image processing device according to (36), wherein at least one of processing for scaling the motion information from the base layer reference to the enhancement layer reference is performed.
- An enhancement layer storage unit that stores information related to the decoding of the enhancement layer reference obtained by conversion by the interlayer processing unit; Encoded data of enhancement layer image data using the predicted image data obtained by performing the inter-layer prediction using information related to the enhancement layer-based decoding stored in the enhancement layer storage unit
- the image processing apparatus according to (36) or (37), further comprising: an enhancement layer decoding unit that decodes.
- the base layer decoding unit may convert base layer encoded data encoded in a coding unit that is a variable-size block obtained by recursively dividing a maximum coding unit that is a fixed-size block in a sequence unit.
- the said inter-layer process part converts the information regarding the said decoding from the said base layer reference
- 100 layer image encoding device 101 control unit, 102 base layer image encoding unit, 103 enhancement layer image encoding unit, 104 multiplexing unit, 121 BL frame memory, 171 EL frame memory, 181 IL processing unit, 182 inter layer Prediction unit, 200 layer image decoding device, 201 demultiplexing unit, 202 control unit, 203 base layer image decoding unit, 204 enhancement layer image decoding unit, 218 BL frame memory, 268 EL frame memory, 281 IL processing unit, 282 inter Layer prediction unit, 300 hierarchical image encoding device, 301 control unit, 302 base layer image encoding unit, 303 enhancement layer image encoding unit, 304 multiplexing unit, 321 BL frame memory, 331 IL processing unit, 371 EL frame memory, 382 inter-layer prediction unit, 400 layer image decoding device, 401 demultiplexing unit, 402 control unit, 403 base layer image decoding unit, 404 enhancement layer image decoding unit, 418 BL frame memory, 431 IL processing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本開示は、符号化・復号の負荷を低減させることができるようにする画像処理装置および方法に関する。 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、第2のレイヤの符号化・復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、そのインターレイヤ予測に用いられる第1のレイヤ基準の符号化・復号に関する情報を取得し、その取得した符号化・復号に関する情報を第1のレイヤ基準から第2のレイヤ基準に変換するようにしてもよい。本開示は、例えば、画像処理装置、画像符号化装置、または画像復号装置等に適用することができる。
Description
本開示は、画像処理装置および方法に関し、特に、符号化・復号の負荷を低減させることができるようにした画像処理装置および方法に関する。
従来、画像の符号化・復号方式の1つとして、所定のパラメータについてスケーラビリティ(scalability)を備えるように、画像データを複数レイヤ化(階層化)して符号化する階層画像符号化・階層画像復号があった(例えば、非特許文献1参照)。
このような階層画像符号化・階層画像復号においては、階層間の相関性の高さを利用して符号化効率を向上させるために、他の階層の画像から予測画像を生成するインターレイヤ予測が行われるものがあった。
Jill Boyce, Jianle Chen, Ying Chen, David Flynn, Miska M. Hannuksela, Matteo Naccari, Chris Rosewarne, Karl Sharman, Joel Sole, Gary J. Sullivan, Teruhiko Suzuki, Gerhard Tech, Ye-Kui Wang, Krzysztof Wegner, Yan Ye, "Draft high efficiency video coding (HEVC) version 2, combined format range extensions (RExt), scalability (SHVC), and multi-view (MV-HEVC) extensions", JCTVC-R1013_v6, 2014.10.1
しかしながら、このようなインターレイヤ予測では、画像や動き情報等を他の階層で利用することができるように、スケーラブルなパラメータの変換が必要であった。そのために、DRAM(Dynamic Random Access Memory)に書き込むデータ量が増大し、必要なDRAMの容量(使用量)が増大するおそれがあった。また、DRAMへのアクセス(すなわち、メモリバスの帯域使用量)が増大するおそれがあった。また、この変換処理のために符号化・復号の待ち時間が増大し、処理時間が増大するおそれもあった。つまり、インターレイヤ予測を行うことにより、符号化・復号の負荷が増大するおそれがあった。
本開示は、このような状況に鑑みてなされたものであり、符号化・復号の負荷を低減させることができるようにするものである。
本技術の一側面の画像処理装置は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第1の符号化部とを備える画像処理装置である。
前記インターレイヤ処理部は、前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理との内、少なくともいずれか一方を行うことができる。
予測を用いて前記第1のレイヤの画像データを符号化する第2の符号化部と、前記第2の符号化部が前記第1のレイヤの画像データを符号化することにより得られる前記第1のレイヤ基準の前記符号化に関する情報を記憶する記憶部とをさらに備え、前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第2のレイヤの画像データを符号化し、前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
本技術の一側面の画像処理方法は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記画像データを符号化する画像処理方法である。
本技術の他の側面の画像処理装置は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する第1の復号部とを備える画像処理装置である。
前記インターレイヤ処理部は、前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理との内、少なくともいずれか一方を行うことができる。
予測を用いて前記第1のレイヤの画像データの符号化データを復号する第2の復号部と、前記第2の復号部が前記符号化データを復号することにより得られる前記第1のレイヤ基準の前記復号に関する情報を記憶する記憶部とをさらに備え、前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
前記第1の復号部は、前記第2のレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
本技術の他の側面の画像処理方法は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する画像処理方法である。
本技術のさらに他の側面の画像処理装置は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化する第1の符号化部と、前記第1の符号化部が前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部とを備える画像処理装置である。
前記符号化に関する情報は、前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの画像データと、前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの動き情報との内、少なくともいずれか一方を含み、前記インターレイヤ処理部は、前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理との内、少なくともいずれか一方を行うことができる。
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を記憶する記憶部と、前記記憶部により記憶されている前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第2の符号化部とをさらに備えることができる。
前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第1のレイヤの画像データを符号化し、前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
本技術のさらに他の側面の画像処理方法は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化し、前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する画像処理方法である。
本技術のさらに他の側面の画像処理装置は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号する第1の復号部と、前記第1の復号部が前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部とを備える画像処理装置である。
前記復号に関する情報は、前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの画像データと、前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの動き情報との内、少なくともいずれか一方を含み、前記インターレイヤ処理部は、前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理との内、少なくともいずれか一方を行うことができる。
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を記憶する記憶部と、前記記憶部により記憶されている前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データの符号化データを復号する第2の復号部とをさらに備えることができる。
前記第1の復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された前記第1のレイヤの符号化データを復号し、前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換することができる。
本技術のさらに他の側面の画像処理方法は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号し、前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する画像処理方法である。
本技術の一側面の画像処理装置および方法においては、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、その第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、そのインターレイヤ予測に用いられる第1のレイヤ基準の符号化に関する情報が取得され、その取得した符号化に関する情報が第1のレイヤ基準から第2のレイヤ基準に変換され、変換されて得られた第2のレイヤ基準の符号化に関する情報が利用されてインターレイヤ予測が行われ、得られた予測画像データが利用されて、第2のレイヤの画像データが符号化される。
本技術の他の側面の画像処理装置および方法においては、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、その第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、そのインターレイヤ予測に用いられる第1のレイヤ基準の復号に関する情報が取得され、取得された復号に関する情報が第1のレイヤ基準から第2のレイヤ基準に変換され、変換されて得られた第2のレイヤ基準の復号に関する情報が利用されてインターレイヤ予測が行われ、得られた予測画像データが利用されて、第2のレイヤの符号化データが復号される。
本技術のさらに他の側面の画像処理装置および方法においては、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの第1のレイヤが、予測を用いて符号化され、第1のレイヤの画像データを符号化することにより得られる、画像データの第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる第1のレイヤ基準の符号化に関する情報が、第1のレイヤ基準から第2のレイヤ基準に変換される。
本技術のさらに他の側面の画像処理装置および方法においては、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、その第1のレイヤの符号化データが復号され、その第1のレイヤの符号化データを復号することにより得られる、第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる第1のレイヤ基準の復号に関する情報が、第1のレイヤ基準から第2のレイヤ基準に変換される。
本開示によれば、画像を処理することができる。特に、符号化・復号の負荷を低減させることができる。
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.階層画像符号化・階層画像復号
2.第1の符号化・復号方法
3.第1の実施の形態(階層画像符号化装置)
4.第2の実施の形態(階層画像復号装置)
5.第2の符号化・復号方法
6.第3の実施の形態(階層画像符号化装置)
7.第4の実施の形態(階層画像復号装置)
8.応用例
9.第5の実施の形態(制御情報)
10.その他
1.階層画像符号化・階層画像復号
2.第1の符号化・復号方法
3.第1の実施の形態(階層画像符号化装置)
4.第2の実施の形態(階層画像復号装置)
5.第2の符号化・復号方法
6.第3の実施の形態(階層画像符号化装置)
7.第4の実施の形態(階層画像復号装置)
8.応用例
9.第5の実施の形態(制御情報)
10.その他
<1.階層画像符号化・階層画像復号>
<画像符号化の標準化の流れ>
近年、MPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。
<画像符号化の標準化の流れ>
近年、MPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO/IEC(International Organization for Standardization / International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている。
<ブロック分割>
ところで、MPEG2(Moving Picture Experts Group 2(ISO/IEC 13818-2))やAVCなどの旧来の画像符号化方式では、符号化処理は、マクロブロックと呼ばれる処理単位で実行される。マクロブロックは、16x16画素の均一なサイズを有するブロックである。これに対し、HEVCでは、符号化処理は、CU(Coding Unit)と呼ばれる処理単位(符号化単位)で実行される。CUは、最大符号化単位であるLCU(Largest Coding Unit)を再帰的に分割することにより形成される、可変的なサイズを有するブロックである。選択可能なCUの最大サイズは、64x64画素である。選択可能なCUの最小サイズは、8x8画素である。最小サイズのCUは、SCU(Smallest Coding Unit)と呼ばれる。
ところで、MPEG2(Moving Picture Experts Group 2(ISO/IEC 13818-2))やAVCなどの旧来の画像符号化方式では、符号化処理は、マクロブロックと呼ばれる処理単位で実行される。マクロブロックは、16x16画素の均一なサイズを有するブロックである。これに対し、HEVCでは、符号化処理は、CU(Coding Unit)と呼ばれる処理単位(符号化単位)で実行される。CUは、最大符号化単位であるLCU(Largest Coding Unit)を再帰的に分割することにより形成される、可変的なサイズを有するブロックである。選択可能なCUの最大サイズは、64x64画素である。選択可能なCUの最小サイズは、8x8画素である。最小サイズのCUは、SCU(Smallest Coding Unit)と呼ばれる。
このように、可変的なサイズを有するCUが採用される結果、HEVCでは、画像の内容に応じて画質及び符号化効率を適応的に調整することが可能である。予測符号化のための予測処理は、PU(Prediction Unit)と呼ばれる処理単位(予測単位)で実行される。PUは、CUをいくつかの分割パタンのうちの1つで分割することにより形成される。さらに、直交変換処理は、TU(Transform Unit)と呼ばれる処理単位(変換単位)で実行される。TUは、CU又はPUをある深さまで分割することにより形成される。
<再帰的なブロックの分割>
図1は、HEVCにおけるCUについての再帰的なブロック分割の概要を説明するための説明図である。CUのブロック分割は、1つのブロックの4(=2x2)個のサブブロックへの分割を再帰的に繰り返すことにより行われ、結果として四分木(Quad-Tree)状のツリー構造が形成される。1つの四分木の全体をCTB(Coding Tree Block)といい、CTBに対応する論理的な単位をCTU(Coding Tree Unit)という。
図1は、HEVCにおけるCUについての再帰的なブロック分割の概要を説明するための説明図である。CUのブロック分割は、1つのブロックの4(=2x2)個のサブブロックへの分割を再帰的に繰り返すことにより行われ、結果として四分木(Quad-Tree)状のツリー構造が形成される。1つの四分木の全体をCTB(Coding Tree Block)といい、CTBに対応する論理的な単位をCTU(Coding Tree Unit)という。
図1の上部には、一例として、64x64画素のサイズを有するCUであるC01が示されている。C01の分割の深さは、ゼロに等しい。これは、C01がCTUのルートでありLCUに相当することを意味する。LCUサイズは、SPS(Sequence Parameter Set)又はPPS(Picture Parameter Set)において符号化されるパラメータにより指定され得る。CUであるC02は、C01から分割される4つのCUのうちの1つであり、32x32画素のサイズを有する。C02の分割の深さは、1に等しい。CUであるC03は、C02から分割される4つのCUのうちの1つであり、16x16画素のサイズを有する。C03の分割の深さは、2に等しい。CUであるC04は、C03から分割される4つのCUのうちの1つであり、8x8画素のサイズを有する。C04の分割の深さは、3に等しい。このように、CUは、符号化される画像を再帰的に分割することにより形成される。分割の深さは、可変的である。例えば、青空のような平坦な画像領域には、より大きいサイズの(即ち、深さが小さい)CUが設定され得る。一方、多くのエッジを含む急峻な画像領域には、より小さいサイズの(即ち、深さが大きい)CUが設定され得る。そして、設定されたCUの各々が、符号化処理の処理単位となる。
<CUへのPUの設定>
PUは、イントラ予測及びインター予測を含む予測処理の処理単位である。PUは、CUをいくつかの分割パタンのうちの1つで分割することにより形成される。図2は、図1に示したCUへのPUの設定について説明するための説明図である。図2の右には、2Nx2N、2NxN、Nx2N、NxN、2NxnU、2NxnD、nLx2N及びnRx2Nという、8種類の分割パタンが示されている。これら分割パタンのうち、イントラ予測では、2Nx2N及びNxNの2種類が選択可能である(NxNはSCUでのみ選択可能)。これに対してインター予測では、非対称動き分割が有効化されている場合に、8種類の分割パタンの全てが選択可能である。
PUは、イントラ予測及びインター予測を含む予測処理の処理単位である。PUは、CUをいくつかの分割パタンのうちの1つで分割することにより形成される。図2は、図1に示したCUへのPUの設定について説明するための説明図である。図2の右には、2Nx2N、2NxN、Nx2N、NxN、2NxnU、2NxnD、nLx2N及びnRx2Nという、8種類の分割パタンが示されている。これら分割パタンのうち、イントラ予測では、2Nx2N及びNxNの2種類が選択可能である(NxNはSCUでのみ選択可能)。これに対してインター予測では、非対称動き分割が有効化されている場合に、8種類の分割パタンの全てが選択可能である。
<CUへのTUの設定>
TUは、直交変換処理の処理単位である。TUは、CU(イントラCUについては、CU内の各PU)をある深さまで分割することにより形成される。図3は、図2に示したCUへのTUの設定について説明するための説明図である。図3の右には、C02に設定され得る1つ以上のTUが示されている。例えば、TUであるT01は、32x32画素のサイズを有し、そのTU分割の深さはゼロに等しい。TUであるT02は、16x16画素のサイズを有し、そのTU分割の深さは1に等しい。TUであるT03は、8x8画素のサイズを有し、そのTU分割の深さは2に等しい。
TUは、直交変換処理の処理単位である。TUは、CU(イントラCUについては、CU内の各PU)をある深さまで分割することにより形成される。図3は、図2に示したCUへのTUの設定について説明するための説明図である。図3の右には、C02に設定され得る1つ以上のTUが示されている。例えば、TUであるT01は、32x32画素のサイズを有し、そのTU分割の深さはゼロに等しい。TUであるT02は、16x16画素のサイズを有し、そのTU分割の深さは1に等しい。TUであるT03は、8x8画素のサイズを有し、そのTU分割の深さは2に等しい。
上述したCU、PU及びTUといったブロックを画像に設定するためにどのようなブロック分割を行うかは、典型的には、符号化効率を左右するコストの比較に基づいて決定される。エンコーダは、例えば1つの2Mx2M画素のCUと、4つのMxM画素のCUとの間でコストを比較し、4つのMxM画素のCUを設定した方が符号化効率が高いならば、2Mx2M画素のCUを4つのMxM画素のCUへと分割することを決定する。
<CUとPUの走査順>
画像を符号化する際、画像(又はスライス、タイル)内に格子状に設定されるCTB(又はLCU)が、ラスタスキャン順に走査される。1つのCTBの中では、CUは、四分木を左から右、上から下に辿るように走査される。カレントブロックを処理する際、上及び左の隣接ブロックの情報が入力情報として利用される。図4は、CUとPUの走査順について説明するための説明図である。図4の左上には、1つのCTBに含まれ得る4つのCUである、C10、C11、C12及びC13が示されている。各CUの枠内の数字は、処理の順序を表現している。符号化処理は、左上のCUであるC10、右上のCUであるC11、左下のCUであるC12、右下のCUであるC13の順で実行される。図4の右には、CUであるC11に設定され得るインター予測のための1つ以上のPUが示されている。図4の下には、CUであるC12に設定され得るイントラ予測のための1つ以上のPUが示されている。これらPUの枠内の数字に示したように、PUもまた、左から右、上から下に辿るように走査される。
画像を符号化する際、画像(又はスライス、タイル)内に格子状に設定されるCTB(又はLCU)が、ラスタスキャン順に走査される。1つのCTBの中では、CUは、四分木を左から右、上から下に辿るように走査される。カレントブロックを処理する際、上及び左の隣接ブロックの情報が入力情報として利用される。図4は、CUとPUの走査順について説明するための説明図である。図4の左上には、1つのCTBに含まれ得る4つのCUである、C10、C11、C12及びC13が示されている。各CUの枠内の数字は、処理の順序を表現している。符号化処理は、左上のCUであるC10、右上のCUであるC11、左下のCUであるC12、右下のCUであるC13の順で実行される。図4の右には、CUであるC11に設定され得るインター予測のための1つ以上のPUが示されている。図4の下には、CUであるC12に設定され得るイントラ予測のための1つ以上のPUが示されている。これらPUの枠内の数字に示したように、PUもまた、左から右、上から下に辿るように走査される。
以下においては、画像(ピクチャ)の部分領域や処理単位として「ブロック」を用いて説明する場合がある(処理部のブロックではない)。この場合の「ブロック」は、ピクチャ内の任意の部分領域を示し、その大きさ、形状、および特性等は限定されない。つまり、この場合の「ブロック」には、例えば、TU、PU、SCU、CU、LCU(CTB)、サブブロック、マクロブロック、タイル、またはスライス等、任意の部分領域(処理単位)が含まれるものとする。
<階層画像>
ところで、このようなHEVCをスケーラブル拡張したSHVC(Scalable High-efficiency Video Coding)の標準化がすすめられている。SHVCは、例えば、図5に示されるような、所定のパラメータについて拡張性(スケーラビリティ(scalability)とも称する)を備えるようにして複数階層化された画像(階層画像とも称する)用の符号化・復号規格である。
ところで、このようなHEVCをスケーラブル拡張したSHVC(Scalable High-efficiency Video Coding)の標準化がすすめられている。SHVCは、例えば、図5に示されるような、所定のパラメータについて拡張性(スケーラビリティ(scalability)とも称する)を備えるようにして複数階層化された画像(階層画像とも称する)用の符号化・復号規格である。
なお、図5において、ベースレイヤ(base layer)は、他のレイヤの情報を用いずに(そのベースレイヤ内で閉じて)符号化・復号が行われるレイヤであり、ノンベースレイヤ(non base layer)は、他のレイヤ(ベースレイヤ若しくは他のノンベースレイヤ)の情報を用いて符号化・復号が行われるレイヤである。なお、このノンベースレイヤのことをエンハンスメントレイヤ(enhancement layer)とも称する。階層画像の階層数(レイヤ数)は任意であり、図5の例のように3階層でなくてもよく、2階層であってもよいし、4階層以上であってもよい。階層画像には1以上のベースレイヤが含まれる。
<スケーラブルなパラメータ>
このような階層画像におけるスケーラビリティを備える(スケーラブルな)パラメータは任意である。例えば、空間解像度をスケーラブルなパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)を備える階層画像の場合、レイヤ毎に画像の解像度が異なる。
このような階層画像におけるスケーラビリティを備える(スケーラブルな)パラメータは任意である。例えば、空間解像度をスケーラブルなパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)を備える階層画像の場合、レイヤ毎に画像の解像度が異なる。
また、スケーラブルなパラメータとして、例えば時間解像度を適用しても良い(temporal scalability)。このテンポラルスケーラビリティ(temporal scalability)を備える階層画像の場合、レイヤ毎にフレームレートが異なる。
さらに、スケーラブルなパラメータとして、例えば信号雑音比(SNR(Signal to Noise ratio))を適用してもよい(SNR scalability)。このSNRスケーラビリティ(SNR scalability)を備える階層画像の場合、レイヤ毎にSN比が異なる。
スケーラブルなパラメータは任意であり、上述した例以外であってもよい。例えば、スケーラブルなパラメータとしてビット深度を適用してもよい(bit-depth scalability)。このビット深度スケーラビリティ(bit-depth scalability)を備える階層画像の場合、レイヤ毎に画像データのビット深度が異なる。例えば、ベースレイヤの画像データのビット深度を8ビット(bit)とし、エンハンスメントレイヤの画像データのビット深度を10ビット(bit)としてもよい。
また、例えば、スケーラブルなパラメータとしてコンポーネント(特に色について)を適用してもよい(chroma scalability)。このクロマスケーラビリティ(chroma scalability)を備える階層画像の場合、レイヤ毎に画像データのカラーフォーマットが異なる。例えば、ベースレイヤの画像データのカラーフォーマットを4:2:0フォーマットとし、エンハンスメントレイヤの画像データのカラーフォーマットを4:2:2フォーマットとしてもよい。
なお、スケーラビリティ性を持たせるパラメータは、1つであってもよいし、複数であってもよい。
<階層毎に独立した符号化・復号の場合>
図5に示されるような階層画像は、例えば、階層毎に独立して符号化・復号を行うこともできる。図6は、その場合の復号の様子の例を示している。例えば階層画像がベースレイヤ(BL)とエンハンスメントレイヤ(EL)の2階層からなるとする。この場合、各レイヤの画像は、それぞれ、通常の単階層の画像の場合と同様に符号化されている。
図5に示されるような階層画像は、例えば、階層毎に独立して符号化・復号を行うこともできる。図6は、その場合の復号の様子の例を示している。例えば階層画像がベースレイヤ(BL)とエンハンスメントレイヤ(EL)の2階層からなるとする。この場合、各レイヤの画像は、それぞれ、通常の単階層の画像の場合と同様に符号化されている。
ベースレイヤ(BL)用のデコーダ11は、ベースレイヤの符号化データを、例えばHEVCやAVC等により、通常の単階層の画像の場合と同様に復号する。デコーダ11は、復号処理中に得られたベースレイヤの復号画像データ(DPB(Decode Picture Buffer))や動き情報(MV Prm)をDRAM(Dynamic Random Access Memory)12の所定の領域12-1に書き込み、必要に応じてそれらを読み出して復号に利用する。
同様に、エンハンスメントレイヤ(EL)用のデコーダ13は、エンハンスメントレイヤの符号化データを、例えばHEVC等により、通常の単階層の画像の場合と同様に復号する。デコーダ13は、復号処理中に得られたエンハンスメントレイヤの復号画像データ(DPB(Decode Picture Buffer))や動き情報(MV Prm)をDRAM12の所定の領域12-2に書き込み、必要に応じてそれらを読み出して復号に利用する。
なお、詳細な説明は省略するが、階層符号化も上述の階層復号の場合と同様の要領で行われる。以上のように各レイヤの処理は互いに独立しているので、複数のプロセッサを用いる場合や、並列処理が可能なプロセッサを用いる場合、各レイヤの符号化・復号の処理を並行して行うこともできる。例えば、コア数が1のような並列処理が不可能な1のプロセッサを用いてこのような階層符号化・階層復号を行う場合は、各階層の符号化処理・復号処理を順次(時分割で)行うようにすればよい。
ところで、このような階層画像の各レイヤの(同時刻の)画像は、スケーラブルなパラメータ以外は共通の画像である。つまり、階層画像はレイヤ間の冗長性が高い。そのため、図6の例のように各レイヤを互いに独立に符号化・復号すると、符号化効率が低減してしまうおそれがあった。
<SHVCによる符号化・復号の場合>
換言するに、階層画像はレイヤ間の相関性が高いので、SHVCでは、このレイヤ間の相関性の高さを利用して他のレイヤの画像を用いてインターレイヤ予測(レイヤ間予測とも称する)を行い、符号化効率を向上させることができる。また、SHVCでは、動きベクトルの符号化の際にも、このレイヤ間の相関性の高さを利用して他のレイヤの動き情報を用いて動きベクトルの予測を行い、符号化効率を向上させることができる。
換言するに、階層画像はレイヤ間の相関性が高いので、SHVCでは、このレイヤ間の相関性の高さを利用して他のレイヤの画像を用いてインターレイヤ予測(レイヤ間予測とも称する)を行い、符号化効率を向上させることができる。また、SHVCでは、動きベクトルの符号化の際にも、このレイヤ間の相関性の高さを利用して他のレイヤの動き情報を用いて動きベクトルの予測を行い、符号化効率を向上させることができる。
図7は、SHVCの場合の復号の様子の例を示している。ベースレイヤは、他のレイヤの情報(画像や動き情報等)を利用せずに符号化・復号することができるレイヤである。エンハンスメントレイヤは、他のレイヤの情報(画像や動き情報等)を利用して符号化・復号が行われるレイヤである。他のレイヤとは例えばベースレイヤである。階層数が3階層以上あり、エンハンスメントレイヤが複数存在する場合は、他のエンハンスメントレイヤの情報を利用することもできる。なお、他のレイヤの情報を利用するためには、その情報に含まれるスケーラブルなパラメータの値を、レイヤ間の比に応じて変換する必要がある。つまり、スケーラブルなパラメータの値は、他のレイヤにおいてそのレイヤの基準で設定されている。したがって、このパラメータの値を当該レイヤの基準に変換する必要がある。
そこで、SHVCでは、各フレーム(ピクチャ)について、まず、ベースレイヤの符号化・復号を行った後、ベースレイヤ基準の情報をエンハンスメントレイヤ基準に変換するインターレイヤ処理(IL処理とも称する)を行い、それからエンハンスメントレイヤの符号化・復号を行う。
例えば、復号の場合、ベースレイヤ(BL)用のデコーダ21は、ベースレイヤの符号化データを、例えばHEVCやAVC等により、通常の単階層の画像の場合と同様に復号する。デコーダ21は、復号処理中に得られたベースレイヤの復号画像データ(DPB(Decode Picture Buffer))や動き情報(MV Prm)をDRAM22の所定の領域22-1に書き込み、必要に応じてそれらを読み出して復号に利用する。つまり、領域22-1に書き込まれたデータは、スケーラブルなパラメータがベースレイヤ基準で設定されている。
次に、SHVCのIL処理を行うIL処理部23は、DRAM22の領域22-1からベースレイヤの復号画像データ(DPB)や動き情報(MV Prm)を読み出す。また、IL処理部23は、BL用のデコーダ21からベースレイヤに関する情報(BL情報)を取得し、EL用のデコーダ24からエンハンスメントレイヤに関する情報(EL情報)や制御情報等を取得する。IL処理部23は、それらの情報に基づいて、DRAM22から読み出したベースレイヤの復号画像データ(DPB)や動き情報(MV Prm)に対し、それらに含まれるスケーラブルなパラメータについて、値をベースレイヤ基準からエンハンスメントレイヤ基準に変換する処理を行う。IL処理部23は、変換後の復号画像データ(DPB)や動き情報(MV Prm)をDRAM22の所定の領域22-2に書き込む。
次に、エンハンスメントレイヤ(EL)用のデコーダ24は、エンハンスメントレイヤの符号化データを、例えばHEVC(SHVC)により復号する。その際、デコーダ24は、復号処理中に得られたエンハンスメントレイヤの復号画像データ(DPB)や動き情報(MV Prm)をDRAM22の所定の領域22-3に書き込む。また、デコーダ24は、必要に応じて、点線枠で示されるように、領域22-3のエンハンスメントレイヤの復号画像データ(DPB)や動き情報(MV Prm)と、領域22-2の変換後の復号画像データ(DPB)や動き情報(MV Prm)とを読み出して復号に利用する。つまり、デコーダ24は、イントラ予測(フレーム内予測)とインター予測(フレーム間予測)だけでなく、インターレイヤ予測(レイヤ間予測)も利用して、エンハンスメントレイヤの復号を行うことができる。また、デコーダ24は、動きベクトルの符号化の際にも、ベースレイヤの動き情報を利用することができる。
なお、説明は省略するが、階層符号化も上述の階層復号の場合と同様の要領で行われる。このようにSHVCを用いることにより、符号化効率を向上させることができる。
<負荷の増大>
図6と図7とを比較して明らかなように、SHVCの場合、DRAM22に対して、図7の矢印31や矢印32に示されるようなIL処理のためのデータの読み出しや書き込みが行われる。そのため、その分、DRAM22へのアクセス(メモリバスの帯域使用量)が増大するおそれがあった。また、IL処理部23が、1フレーム分の、変換後の復号画像データ(DPB)や動き情報(MV Prm)をDRAM22の所定の領域22-2に書き込むため、両矢印33に示される分だけ、DRAM22の使用量(必要な容量)が増大するおそれがあった。
図6と図7とを比較して明らかなように、SHVCの場合、DRAM22に対して、図7の矢印31や矢印32に示されるようなIL処理のためのデータの読み出しや書き込みが行われる。そのため、その分、DRAM22へのアクセス(メモリバスの帯域使用量)が増大するおそれがあった。また、IL処理部23が、1フレーム分の、変換後の復号画像データ(DPB)や動き情報(MV Prm)をDRAM22の所定の領域22-2に書き込むため、両矢印33に示される分だけ、DRAM22の使用量(必要な容量)が増大するおそれがあった。
さらに、図6の例の処理の場合、図8の上段に示されるように、ベースレイヤの処理(BL0、BL1)と、エンハンスメントレイヤの処理(EL0、EL1)とが交互に繰り返されていた。これに対して、図7のSHVCの場合、図8の下段に示されるように、エンハンスメントレイヤの処理(EL0、EL1)は、インターレイヤの処理(IL0、IL1)が終了するまで開始することができない。つまり、両矢印41-1および両矢印41-2の分だけエンハンスメントレイヤの処理に遅延が発生し、全体の処理時間が増大するおそれがあった。
つまり、以上のように、符号化・復号の負荷が増大するおそれがあった。
<2.第1の符号化・復号方法>
<エンハンスメントレイヤにおけるIL処理>
そこで、SHVCのようなインターレイヤ予測を利用する階層画像符号化・階層画像復号において、エンハンスメントレイヤに対する処理の際に、ベースレイヤの情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換するようにする。
<エンハンスメントレイヤにおけるIL処理>
そこで、SHVCのようなインターレイヤ予測を利用する階層画像符号化・階層画像復号において、エンハンスメントレイヤに対する処理の際に、ベースレイヤの情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換するようにする。
例えば復号の場合、図9に示されるようにIL処理を行うようにする。図9に示されるように、ベースレイヤ(BL)用のデコーダ51は、HEVCやAVC等により、ベースレイヤの符号化データを、通常の単階層の画像の場合と基本的に同様に復号する。デコーダ51は、復号処理中に得られたベースレイヤの復号画像データ(DPB)や動き情報(MV Prm)をDRAM52の所定の領域52-1に書き込み、必要に応じてそれらを読み出して復号に利用する。つまり、領域52-1に書き込まれたデータは、スケーラブルなパラメータがベースレイヤ基準のデータである。
次に、エンハンスメントレイヤ(EL)用のデコーダ53は、エンハンスメントレイヤの符号化データを、例えばHEVC(SHVC)等により復号する。デコーダ53は、復号処理中に得られたエンハンスメントレイヤの復号画像データ(DPB)や動き情報(MV Prm)をDRAM52の所定の領域52-2に書き込み、必要に応じてそれらを読み出して復号に利用する。
インターレイヤ予測により予測画像を生成する場合や符号化された動きベクトルの復号の際にベースレイヤの動き情報を利用する場合、IL処理部61は、DRAM52の領域52-1に記憶されているベースレイヤの情報(復号画像データ(DPB)や動き情報(MV Prm))を読み出す。また、IL処理部61は、デコーダ51からBL情報を取得する。さらに、IL処理部61は、デコーダ53からEL情報や制御情報等を取得する。IL処理部61は、これらの情報を用いてIL処理を行い、スケーラブルなパラメータをエンハンスメントレイヤ基準に変換した復号画像データ(DPB)や動き情報(MV Prm)を得る。
また、イントラ予測やインター予測により予測画像を生成する場合、デコーダ53は、DRAM52の領域52-2に記憶されているエンハンスメントレイヤの情報(復号画像データ(DPB)や動き情報(MV Prm))を読み出す。
選択部62は、予測モード等に応じてこれらの情報の中から必要な情報を選択する。例えばイントラ予測若しくはインター予測により予測画像を生成する場合、選択部62は、DRAM52から読み出されたエンハンスメントレイヤの復号画像データ(DPB)を選択する。また、例えばインターレイヤ予測により予測画像を生成する場合、選択部62は、IL処理部61により得られた変換後の復号画像データ(DPB)を選択する。さらに、例えば符号化された動きベクトルを復号する場合、選択部62は、DRAM52から読み出されたエンハンスメントレイヤの動き情報(MV Prm)、若しくは、IL処理部61により得られた変換後の動き情報(MV Prm)、またはその両方を選択する。
デコーダ53は、選択された情報を用いて予測画像の生成や、符号化された動きベクトルの復号等を行う。
図7と図9を比較して明らかなように、この場合、DRAM52に対して、図9の矢印71に示されるようなIL処理のためのデータの読み出しがあるものの、図7の矢印32に示されるような書き込みが行われない。また、データの読み出しも、図7の場合は画像全体について行われるが、図9の場合は、必要な場合のみ行われる。さらに、1度読み出したデータが他のブロックに対して再利用可能であればそのデータの読み出しを省略することも可能である。そのため、図9に示される方法の方が、図7に示されるSHVCの場合に比べてDRAM52へのアクセス(メモリバスの帯域使用量)を低減させることができる。
また、図9の場合、変換後の復号画像データ(DPB)や動き情報(MV Prm)がDRAM52に書き込まれないため、図7に示されるSHVCの場合に比べて両矢印33の分、DRAM52の使用量(必要な容量)を低減させることができる。
さらに、図9の場合、図8に示されるSHVCの場合のようにIL処理の終了を待たずに、エンハンスメントレイヤに対する処理を開始することができる。つまり、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように、復号の負荷を低減させることができる。なお、階層符号化も上述の階層復号の場合と同様の要領で行うことができる。つまり、符号化の負荷も低減させることができる。
<3.第1の実施の形態>
<階層画像符号化装置>
図10は、本技術を適用した画像処理装置の一態様である階層画像符号化装置の構成の一例を示すブロック図である。図10に示される階層画像符号化装置100は、上述した第1の符号化方法により階層画像を符号化するように構成される画像処理装置である。つまり、階層画像符号化装置100は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って階層画像を符号化することができる。ただし、階層画像符号化装置100は、エンハンスメントレイヤの符号化の際にIL処理を行う。
<階層画像符号化装置>
図10は、本技術を適用した画像処理装置の一態様である階層画像符号化装置の構成の一例を示すブロック図である。図10に示される階層画像符号化装置100は、上述した第1の符号化方法により階層画像を符号化するように構成される画像処理装置である。つまり、階層画像符号化装置100は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って階層画像を符号化することができる。ただし、階層画像符号化装置100は、エンハンスメントレイヤの符号化の際にIL処理を行う。
図10に示されるように、階層画像符号化装置100は、制御部101、ベースレイヤ画像符号化部102、エンハンスメントレイヤ画像符号化部103、および多重化部104を有する。なお、図10においては、処理部やデータの流れ等の主なものを示しており、図10に示されるものが全てとは限らない。つまり、階層画像符号化装置100において、図10においてブロックとして示されていない処理部が存在したり、図10において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
制御部101は、全レイヤ共通の情報に関する処理を行う。例えば、制御部101は、シーケンスパラメータセット(SPS(Sequence Parameter Set))等の階層符号化に関する制御情報を生成し、それを多重化部104に供給する。また、例えば、制御部101は、ベースレイヤに関する制御情報を生成し、それをベースレイヤ画像符号化部102に供給してベースレイヤの符号化を制御する。
また、例えば、制御部101は、エンハンスメントレイヤに関する制御情報を生成し、それをエンハンスメントレイヤ画像符号化部103に供給してエンハンスメントレイヤの符号化を制御する。例えば、制御部101は、スケーラブルなパラメータについてベースレイヤ基準を示すBL情報をエンハンスメントレイヤ画像符号化部103に供給する。また、例えば、制御部101は、スケーラブルなパラメータについてエンハンスメントレイヤ基準を示すEL情報をエンハンスメントレイヤ画像符号化部103に供給する。さらに、例えば、制御部101は、IL処理に関する制御情報をエンハンスメントレイヤ画像符号化部103に供給する。制御部101は、これらの情報を供給することにより、IL処理を制御する。
BL情報、EL情報、制御情報はどのような情報であってもよい。例えば、スケーラブルなパラメータが画像サイズ(解像度)の場合、BL情報にはベースレイヤの画像サイズを示す情報が含まれるようにしてもよいし、EL情報にはエンハンスメントレイヤの画像サイズを示す情報が含まれるようにしてもよいし、制御情報には参照位置の補正用のオフセットを示す情報が含まれるようにしてもよい。
ベースレイヤ画像符号化部102は、制御部101に制御されてベースレイヤの符号化に関する処理を行う。例えば、ベースレイヤ画像符号化部102は、ベースレイヤの画像データ(BL画像データとも称する)を受け付ける。また、例えば、ベースレイヤ画像符号化部102は、その受け付けたベースレイヤの画像データを、イントラ予測やインター予測等の予測を用いて、他のレイヤの情報を用いずに符号化し、ベースレイヤの符号化データ(BL符号化データとも称する)を生成する。さらに、ベースレイヤ画像符号化部102は、そのBL符号化データを多重化部104に供給する。また、例えば、ベースレイヤ画像符号化部102は、エンハンスメントレイヤ画像符号化部103からの要求に応じて、ベースレイヤの復号画像データ(BL復号画像データとも称する)や動き情報(BL動き情報とも称する)を、ベースレイヤの符号化に関する情報として、エンハンスメントレイヤ画像符号化部103に供給する。
なお、ベースレイヤの符号化に関する情報は、どのような情報であってもよい。
エンハンスメントレイヤ画像符号化部103は、制御部101に制御されてエンハンスメントレイヤの符号化に関する処理を行う。例えば、エンハンスメントレイヤ画像符号化部103は、エンハンスメントレイヤの画像データ(EL画像データとも称する)を受け付ける。また、例えば、エンハンスメントレイヤ画像符号化部103は、その受け付けたエンハンスメントレイヤの画像データを、イントラ予測、インター予測、インターレイヤ予測(レイヤ間予測)等を用いて符号化し、エンハンスメントレイヤの符号化データ(EL符号化データとも称する)を生成する。エンハンスメントレイヤ画像符号化部103は、ベースレイヤ画像符号化部102から取得したベースレイヤの符号化に関する情報をIL処理し、得られた変換後の符号化に関する情報を適宜利用して、この符号化を行う。
そして、エンハンスメントレイヤ画像符号化部103は、例えば、その符号化の際に、ベースレイヤの符号化に関する情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換するIL処理を行う。エンハンスメントレイヤ画像符号化部103は、IL処理により得られた変換後の符号化に関する情報を用いて、インター予測やインターレイヤ予測を行う。また、例えば、エンハンスメントレイヤ画像符号化部103は、生成したEL符号化データを多重化部104に供給する。
多重化部104は、制御部101から供給される制御情報、ベースレイヤ画像符号化部102から供給されるBL符号化データ、並びに、エンハンスメントレイヤ画像符号化部103から供給されるEL符号化データを多重化して、階層画像符号化データを生成する。この階層画像符号化データは、例えば、1本のビットストリームである。多重化部104は、その階層画像符号化データを出力する。この階層画像符号化データは、例えば、任意の記録媒体、任意の伝送媒体、任意の情報処理装置等を介して復号側(例えば、後述する階層画像復号装置)に伝送される。すなわち、多重化部104は、階層画像符号化データを伝送する伝送部でもある。
<ベースレイヤ画像符号化部>
図11は、図10のベースレイヤ画像符号化部102の主な構成例を示すブロック図である。なお、図11においては、処理部やデータの流れ等の主なものを示しており、図11に示されるものが全てとは限らない。つまり、ベースレイヤ画像符号化部102において、図11においてブロックとして示されていない処理部が存在したり、図11において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図11は、図10のベースレイヤ画像符号化部102の主な構成例を示すブロック図である。なお、図11においては、処理部やデータの流れ等の主なものを示しており、図11に示されるものが全てとは限らない。つまり、ベースレイヤ画像符号化部102において、図11においてブロックとして示されていない処理部が存在したり、図11において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図11に示されるようにベースレイヤ画像符号化部102は、画面並べ替えバッファ111、演算部112、直交変換部113、量子化部114、符号化部115、および蓄積バッファ116を有する。また、ベースレイヤ画像符号化部102は、逆量子化部117、逆直交変換部118、演算部119、フィルタ120、BLフレームメモリ121、イントラ予測部122、インター予測部123、予測画像選択部124、およびレート制御部125を有する。
画面並べ替えバッファ111は、入力されたBL画像データの各フレームの画像をその表示順に記憶し、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部112に供給する。また、画面並べ替えバッファ111は、フレームの順番を並び替えた画像を、イントラ予測部122およびインター予測部123にも供給する。
演算部112は、画面並べ替えバッファ111から読み出された画像から、予測画像選択部124を介してイントラ予測部122若しくはインター予測部123から供給される予測画像を減算し、それらの差分である残差情報(残差データとも称する)を得る。例えば、イントラ符号化が行われる画像の場合、演算部112は、画面並べ替えバッファ111から読み出された画像から、イントラ予測部122から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部112は、画面並べ替えバッファ111から読み出された画像から、インター予測部123から供給される予測画像を減算する。演算部112は、得られた残差データを直交変換部113に供給する。
直交変換部113は、演算部112から供給される残差データを所定の方法で直交変換する。直交変換部113は、その直交変換後の残差データ(直交変換係数とも称する)を量子化部114に供給する。
量子化部114は、その直交変換係数を所定の方法で量子化する。量子化部114は、レート制御部125から供給される符号量の目標値(target_bitrate)に応じて量子化パラメータを設定し、その量子化を行う。量子化部114は、量子化後の残差データ(量子化データとも称する)を符号化部115および逆量子化部117に供給する。
符号化部115は、量子化部114から供給された量子化データを符号化する。また、符号化部115は、最適な予測モードに関する情報を予測画像選択部124から取得する。さらに、符号化部115は、任意の処理部から任意の情報を取得することができる。符号化部115は、これらの各種情報を符号化する。このように、符号化部115は、画像に関する情報を符号化し、BL符号化データを生成する。符号化部115は、得られたBL符号化データを蓄積バッファ116に供給して蓄積させる。
蓄積バッファ116は、符号化部115から供給されたBL符号化データを、一時的に保持する。蓄積バッファ116は、所定のタイミングにおいて、保持しているBL符号化データを、例えばビットストリーム等としてベースレイヤ画像符号化部102の外部に出力する。つまり、このBL符号化データは、多重化部104(図10)に供給される。上述したように、多重化部104に供給されたBL符号化データは、階層画像符号化データ等として復号側に伝送される。すなわち、蓄積バッファ116は、BL符号化データを伝送する伝送部でもある。
逆量子化部117は、量子化部114から供給された量子化データを量子化部114による量子化に対応する方法で逆量子化する。逆量子化部117は、逆量子化後の量子化データ(直交変換係数とも称する)を、逆直交変換部118に供給する。
逆直交変換部118は、その直交変換係数を、直交変換部113による直交変換処理に対応する方法で逆直交変換する。逆直交変換部118は、逆直交変換された直交変換係数(復元された残差データとも称する)を演算部119に供給する。
演算部119は、その復元された残差データに、予測画像選択部124を介してイントラ予測部122若しくはインター予測部123から供給される予測画像を加算し、局所的に再構成された画像(再構成画像とも称する)を得る。例えば、イントラ符号化が行われる画像の場合、演算部119は、復元された残差データに、イントラ予測部122から供給される予測画像を加算する。また、例えば、インター符号化が行われる画像の場合、演算部119は、復元された残差データに、インター予測部123から供給される予測画像を加算する。演算部119は、得られた再構成画像をフィルタ120およびイントラ予測部122に供給する。
フィルタ120は、その再構成画像に対して、適宜、例えばデブロックフィルタ等のフィルタ処理を行う。フィルタ120は、フィルタ処理結果(BL復号画像データとも称する)をベースレイヤの符号化に関する情報としてBLフレームメモリ121に供給し、記憶させる。
BLフレームメモリ121は、ベースレイヤの符号化に関する情報を記憶する。例えば、BLフレームメモリ121は、フィルタ120から供給されるBL復号画像データを自身の記憶領域内に記憶する。また、例えば、BLフレームメモリ121は、予測画像選択部124から供給される、その予測画像選択部124により選択された最適な予測モードの動きベクトル等の動き情報(BL動き情報とも称する)を自身の記憶領域内に記憶する。
また、BLフレームメモリ121は、記憶しているベースレイヤの符号化に関する情報を他の処理部に供給する。例えば、BLフレームメモリ121は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているBL復号画像データを参照画像としてインター予測部123に供給する。また、例えば、BLフレームメモリ121は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているBL動き情報をインター予測部123に供給する。さらに、例えば、BLフレームメモリ121は、エンハンスメントレイヤ画像符号化部103等からの要求に基づいて、記憶しているBL復号画像データやBL動き情報を、エンハンスメントレイヤ画像符号化部103に供給する。
なお、BLフレームメモリ121は、1フレーム分以上の情報を記憶することができる。
イントラ予測部122は、演算部119から参照画像として供給される再構成画像を用いてイントラ予測(フレーム内予測)を行う。例えば、イントラ予測部122は、処理対象であるカレントブロック周辺の画素値を用いてカレントブロックの予測画像を生成する。さらに、イントラ予測部122は、画面並べ替えバッファ111から供給される入力画像を用いる等して、得られた予測画像についてコスト関数値を算出する。イントラ予測部122は、予め用意された複数のイントラ予測モードについて、このようなイントラ予測を行う。そして、イントラ予測部122は、各候補のコスト関数値を評価し、最適な候補をイントラ予測モードとして選択する。イントラ予測部122は、その最適なイントラ予測モードの識別情報、予測画像、コスト関数値等を含むイントラ予測モード情報を予測画像選択部124に供給する。
インター予測部123は、画面並べ替えバッファ111から供給される入力画像と、BLフレームメモリ121から供給される参照画像とを用いてインター予測(フレーム間予測)を行う。例えば、インター予測部123は、動き予測を行って動きベクトルを検出し、その動きベクトルに応じて動き補償処理を行い、BLフレームメモリ121から取得した参照画像を用いて予測画像を生成する。また、インター予測部123は、検出された動きベクトルの符号化を行う。例えば、インター予測部123は、参照画像の動きベクトルを用いて予測動きベクトルを生成し、検出された動きベクトルとその予測動きベクトルの差分を求めることにより、動きベクトルを符号化する。さらに、インター予測部123は、画面並べ替えバッファ111から供給される入力画像を用いる等して、得られた予測画像や動き情報等についてコスト関数値を算出する。インター予測部123は、予め用意された複数のインター予測モードの候補のそれぞれについて、このようなインター予測を行う。そして、インター予測部123は、各候補のコスト関数値を評価し、最適な候補をインター予測モードとして選択する。インター予測部123は、その最適なインター予測モードの識別情報、予測画像、動き情報(符号化された動きベクトルを含む)、コスト関数値等を含むインター予測モード情報を予測画像選択部124に供給する。
予測画像選択部124は、イントラ予測部122およびインター予測部123から上述した予測に関する情報(イントラ予測モード情報やインター予測モード情報)を取得する。予測画像選択部124は、それらの中からいずれか1つを選択することにより、カレントブロックにおける予測モードを選択する。つまり、予測画像選択部124は、最適な予測モードとして、イントラ予測モードとインター予測モードとの内、いずれか一方を選択する。予測画像選択部124は、選択したモードの予測画像を演算部112や演算部119に供給する。また、予測画像選択部124は、選択したモードの予測に関する情報(イントラ予測モード情報若しくはインター予測モード情報)の一部若しくは全部を最適な予測モードに関する情報として符号化部115に供給する。
なお、最適な予測モードとしてインター予測モードが選択された場合、予測画像選択部124は、そのインター予測モードの動きベクトル等を含むBL動き情報をベースレイヤの符号化に関する情報としてBLフレームメモリ121に供給し、記憶させる。このBL動き情報は、例えば、動きベクトルの符号化等に利用される。
レート制御部125は、蓄積バッファ116に蓄積された符号化データの符号量に基づいて、オーバフローあるいはアンダーフローが発生しないように、量子化部114の量子化動作のレートを制御する。
<エンハンスメントレイヤ画像符号化部>
図12は、図10のエンハンスメントレイヤ画像符号化部103の主な構成例を示すブロック図である。なお、図12においては、処理部やデータの流れ等の主なものを示しており、図12に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像符号化部103において、図12においてブロックとして示されていない処理部が存在したり、図12において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図12は、図10のエンハンスメントレイヤ画像符号化部103の主な構成例を示すブロック図である。なお、図12においては、処理部やデータの流れ等の主なものを示しており、図12に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像符号化部103において、図12においてブロックとして示されていない処理部が存在したり、図12において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図12に示されるようにエンハンスメントレイヤ画像符号化部103は、画面並べ替えバッファ161、演算部162、直交変換部163、量子化部164、符号化部165、および蓄積バッファ166を有する。また、エンハンスメントレイヤ画像符号化部103は、逆量子化部167、逆直交変換部168、演算部169、フィルタ170、イントラ予測部172、インター予測部173、予測画像選択部174、およびレート制御部175を有する。これらの各処理部は、画面並べ替えバッファ111乃至フィルタ120、イントラ予測部122乃至レート制御部125(図11)の各処理部にそれぞれ対応し、同様の構成を有し、エンハンスメントレイヤに対して、ベースレイヤの場合と基本的に同様の処理を行う。
また、エンハンスメントレイヤ画像符号化部103は、ELフレームメモリ171、IL処理部181、並びに、インターレイヤ予測部182を有する。
ELフレームメモリ171は、エンハンスメントレイヤの符号化に関する情報を記憶する。例えば、ELフレームメモリ171は、フィルタ170から供給されるフィルタ処理結果(EL復号画像データとも称する)を自身の記憶領域内に記憶する。また、例えば、ELフレームメモリ171は、予測画像選択部174から供給される、その予測画像選択部174により選択された最適な予測モードの動き情報(EL動き情報とも称する)を自身の記憶領域内に記憶する。なお、このEL動き情報には、フレーム間の参照関係を示す動き情報だけでなく、レイヤ間の参照関係を示す動き情報、すなわち、インターレイヤ予測により得られる動き情報も含まれていてもよい。
エンハンスメントレイヤの符号化に関する情報は、どのような情報であってもよく、例えば、このようなEL復号画像データやEL動き情報を含むようにしてもよい。
また、ELフレームメモリ171は、記憶しているエンハンスメントレイヤの符号化に関する情報を他の処理部に供給する。例えば、ELフレームメモリ171は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているEL復号画像データを参照画像としてインター予測部173に供給する。また、ELフレームメモリ171は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているEL動き情報を、インター予測部173やインターレイヤ予測部182に供給する。
なお、ELフレームメモリ171は、1フレーム分以上の情報を記憶することができる。
IL処理部181は、IL処理に関する処理を行う。例えば、IL処理部181は、制御部101(図10)から供給されるBL情報、EL情報、制御情報等を取得する。また、例えば、IL処理部181は、ベースレイヤ画像符号化部102のBLフレームメモリ121に対してベースレイヤの符号化に関する情報(例えばBL復号画像データやBL動き情報等)を要求し、取得する。さらに、例えば、IL処理部181は、BL情報、EL情報、制御情報等に基づいて、ベースレイヤの符号化に関する情報に対してIL処理を行い、そのスケーラブルなパラメータの値をベースレイヤ基準の値からエンハンスメントレイヤ基準の値に変換する。
例えば、IL処理部181は、BL復号画像データに対して、そのスケーラブルなパラメータがエンハンスメントレイヤ基準となるようにアップサンプルを行う。例えば、スケーラブルなパラメータが画像サイズ(解像度)である場合、IL処理部181は、BL復号画像データの画像サイズを、ベースレイヤのピクチャの画像サイズとエンハンスメントレイヤのピクチャの画像サイズとの比に応じて変更する(一般的には拡大する)。これにより、変換後のBL復号画像データの画像サイズは、エンハンスメントレイヤのピクチャの画像サイズを基準とするサイズになる。この変換後のデータをIL画像データとも称する。
また、例えば、IL処理部181は、BL動き情報に対して、そのスケーラブルなパラメータがエンハンスメントレイヤ基準となるようにスケーリングを行う。例えば、スケーラブルなパラメータが画像サイズ(解像度)である場合、IL処理部181は、BL動き情報の動きベクトルのサイズを、ベースレイヤのピクチャの画像サイズとエンハンスメントレイヤのピクチャの画像サイズとの比に応じて変更する(一般的には拡大する)。これにより、変換後のBL動き情報のサイズは、エンハンスメントレイヤのピクチャの画像サイズを基準とするサイズになる。この変換後のデータをIL動き情報とも称する。
IL処理部181は、このようなIL処理により得られた変換後の符号化に関する情報(例えばIL画像データやIL動き情報等)をインター予測部173やインターレイヤ予測部182に供給する。例えば、IL処理部181は、要求されたIL画像データやIL動き情報をインターレイヤ予測部182に供給する。また、例えば、IL処理部181は、要求されたIL動き情報をインター予測部173に供給する。
インターレイヤ予測部182は、インターレイヤ予測に関する処理を行う。例えば、インターレイヤ予測部182は、IL処理部181に対して、カレントブロックに対応する位置の、変換後の符号化に関する情報(例えばIL画像データやIL動き情報等)を要求し、取得する。インターレイヤ予測部182は、また、ELフレームメモリ171に対して、カレントブロックに対応する位置の、エンハンスメントレイヤの符号化に関する情報(例えば、EL動き情報等)を要求し、取得する。
インターレイヤ予測部182は、これらの符号化に関する情報を用いてインターレイヤ予測を行う。例えば、インターレイヤ予測部182は、画面並べ替えバッファ161から供給される入力画像と、IL処理部181から取得したIL画像データを用いてインターレイヤ予測を行い、予測画像や動き情報を生成する。なお、このインターレイヤ予測で得られる動き情報(動きベクトル)は、インター予測で得られるフレーム間方向の参照関係(カレントブロックと参照画像との位置関係)を示す動き情報(動きベクトル)と異なり、レイヤ間方向の参照関係を示す情報である。つまり、このインター予測で得られる予測画像は、カレントブロックと異なるレイヤのピクチャの画像(IL画像データ)を参照して生成される。また、インターレイヤ予測部182は、インターレイヤ予測において、IL動き情報やEL動き情報を用いて動きベクトルの符号化を行う。
インターレイヤ予測部182は、画面並べ替えバッファ161から供給される入力画像を用いる等して、得られた予測画像や動き情報等についてコスト関数値を算出する。インターレイヤ予測部182は、インターレイヤ予測モードの識別情報、予測画像、動き情報(符号化された動きベクトルを含む)、コスト関数値等を含むインターレイヤ予測モード情報を予測画像選択部174に供給する。
なお、インター予測部173は、IL処理部181に対して、カレントブロックに対応する位置の、変換後の符号化に関する情報(例えばIL動き情報等)を要求し、取得する。また、インター予測部173は、ELフレームメモリ171に対して、カレントブロックに対応する位置の、エンハンスメントレイヤの符号化に関する情報(例えばEL復号画像データやEL動き情報等)を要求し、取得する。インター予測部173は、これらの符号化に関する情報を用いてベースレイヤの場合と基本的に同様にインター予測を行う。インター予測部173は、得られたインター予測モード情報を予測画像選択部174に供給する。
予測画像選択部174は、イントラ予測部172、インター予測部173、およびインターレイヤ予測部182から上述した予測に関する情報(イントラ予測モード情報、インター予測モード情報、インターレイヤ予測モード情報等)を取得する。予測画像選択部174は、それらの中からいずれか1つを選択することにより、カレントブロックにおける予測モードを選択する。つまり、予測画像選択部174は、最適な予測モードとして、イントラ予測モード、インター予測モード、およびインターレイヤ予測モードの内、いずれか1つを選択する。予測画像選択部174は、選択したモードの予測画像を演算部162や演算部169に供給する。また、予測画像選択部174は、選択したモードの予測に関する情報(イントラ予測モード情報、インター予測モード情報、若しくはインターレイヤ予測モード情報)の一部若しくは全部を最適な予測モードに関する情報として符号化部165に供給する。
なお、最適な予測モードとしてインター予測モード若しくはインターレイヤ予測モードが選択された場合、予測画像選択部174は、その動き情報(EL動き情報)を、エンハンスメントレイヤの符号化に関する情報としてELフレームメモリ171に供給し、記憶させる。
<階層画像符号化処理の流れ>
次に、階層画像符号化装置100(図10)により実行される各処理の流れの例を説明する。最初に、階層画像符号化処理の流れの例を、図13のフローチャートを参照して説明する。
次に、階層画像符号化装置100(図10)により実行される各処理の流れの例を説明する。最初に、階層画像符号化処理の流れの例を、図13のフローチャートを参照して説明する。
階層画像符号化処理が開始されると、ステップS101において、制御部101は、例えばパラメータセットの設定等、階層画像符号化に関する設定を行う。
ステップS102において、ベースレイヤ画像符号化部102は、ステップS101において行われた設定に従って、BL画像データを符号化し、BL符号化データを生成する。
ステップS103において、エンハンスメントレイヤ画像符号化部103は、ステップS101において行われた設定に従って、EL画像データを符号化し、EL符号化データを生成する。
ステップS104において、多重化部104は、ステップS101乃至ステップS103の各処理において得られた、各レイヤの符号化データ(例えばBL符号化データ、EL符号化データ、制御情報等)を多重化し、階層画像符号化データを生成し、出力する。
ステップS104の処理が終了すると、階層画像符号化処理が終了する。
<ベースレイヤ画像符号化処理の流れ>
次に、図14のフローチャートを参照して、階層画像符号化処理(図13)のステップS102により実行されるベースレイヤ(BL)画像符号化処理の流れの例を説明する。
次に、図14のフローチャートを参照して、階層画像符号化処理(図13)のステップS102により実行されるベースレイヤ(BL)画像符号化処理の流れの例を説明する。
BL画像符号化処理が開始されると、ステップS121において、画面並べ替えバッファ111は、入力された動画像(BL画像データ)の各フレーム(ピクチャ)の画像をその表示する順番に記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
ステップS122において、イントラ予測部122は、イントラ予測を行う。
ステップS123において、インター予測部123は、インター予測を行う。
ステップS124において、予測画像選択部124は、最適な予測モードを選択する。つまり、予測画像選択部124は、イントラ予測モードとインター予測モードのどちらか一方を最適な予測モードとして選択する。予測画像選択部124は、各予測モードのコスト関数値に基づいてこの選択を行う。
ステップS125において、予測画像選択部124は、選択した予測モードのBL動き情報をベースレイヤの符号化に関する情報としてBLフレームメモリ121に供給し、記憶させる。
ステップS126において、演算部112は、入力画像と予測画像との残差データを生成する。このようにして求められた残差データは、元の画像データに比べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。
ステップS127において、直交変換部113は、ステップS126の処理により得られた残差データを直交変換する。
ステップS128において、量子化部114は、レート制御部125により算出された量子化パラメータを用いる等して、ステップS127の処理により得られた直交変換係数を量子化する。
ステップS129において、逆量子化部117は、ステップS128の処理により得られた量子化データを、その量子化の特性に対応する特性で逆量子化する。
ステップS130において、逆直交変換部118は、ステップS127の処理により得られた直交変換係数を、その直交変換に対応する方法で逆直交変換する。
ステップS131において、演算部119は、ステップS130の処理により復元された残差データに、ステップS124の処理により得られた最適な予測モードの予測画像を加算することにより、再構成画像の画像データを生成する。
ステップS132においてフィルタ120は、その再構成画像の画像データに対して、デブロッキングフィルタ等のフィルタ処理を行う。これによりベースレイヤの復号画像データ(BL復号画像データ)が得られる。
ステップS133において、フィルタ120は、そのBL復号画像データをベースレイヤの符号化に関する情報としてBLフレームメモリ121に供給し、記憶させる。
ステップS134において、符号化部115は、ステップS128の処理により得られた量子化データ等の画像に関する情報を符号化する。
ステップS135において蓄積バッファ116は、その符号化により得られたBL符号化データ等を蓄積する。蓄積バッファ116に蓄積されたBL符号化データ等は、例えばビットストリームとして適宜読み出され、多重化部104に供給される。
ステップS136において、レート制御部125は、蓄積バッファ116に蓄積されたBL符号化データ等の符号量(発生符号量)に基づいて、オーバフローあるいはアンダーフローが発生しないように、ステップS128の量子化処理のレートを制御する。
ステップS136の処理が終了すると、BL画像符号化処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<エンハンスメントレイヤ画像符号化処理の流れ>
次に、図15のフローチャートを参照して、階層画像符号化処理(図13)のステップS103により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
次に、図15のフローチャートを参照して、階層画像符号化処理(図13)のステップS103により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
EL画像符号化処理が開始されると、ステップS151において、IL処理部181は、制御部101(図10)から供給されるBL情報、EL情報、制御情報を取得する。
ステップS152において、画面並べ替えバッファ161は、入力された動画像(EL画像データ)の各フレーム(ピクチャ)の画像をその表示する順番に記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
ステップS153において、イントラ予測部172は、イントラ予測を行う。
ステップS154において、IL処理部181は、処理対象であるカレントブロックに対応する位置のBL復号画像データとBL動き情報(ベースレイヤの符号化に関する情報)をベースレイヤ画像符号化部102のBLフレームメモリ121に対して要求し、取得する。
ステップS155において、IL処理部181は、ステップS151において取得したBL情報、EL情報、制御情報等に基づいて、ステップS154において取得したBL復号画像データやBL動き情報に対してIL処理を行い、IL画像データやIL動き情報(変換後の符号化に関する情報)を得る。
ステップS156において、インター予測部173は、ステップS155において得られたIL動き情報を用いる等してインター予測を行う。
ステップS157において、インターレイヤ予測部182は、ステップS155において得られたIL画像データやIL動き情報を用いる等してインターレイヤ予測を行う。
ステップS158において、予測画像選択部174は、最適な予測モードを選択する。つまり、予測画像選択部174は、イントラ予測モード、インター予測モード、インターレイヤ予測モードの内のいずれか1つを最適な予測モードとして選択する。予測画像選択部174は、各予測モードのコスト関数値に基づいてこの選択を行う。
ステップS159において、予測画像選択部174は、選択した予測モードのEL動き情報をエンハンスメントレイヤの符号化に関する情報としてELフレームメモリ171に供給し、記憶させる。
ステップS160において、演算部162は、入力画像と予測画像との残差データを生成する。このようにして求められた残差データは、元の画像データに比べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。
ステップS161において、直交変換部163は、ステップS160の処理により得られた残差データを直交変換する。
ステップS162において、量子化部164は、レート制御部175により算出された量子化パラメータを用いる等して、ステップS161の処理により得られた直交変換係数を量子化する。
ステップS163において、逆量子化部167は、ステップS162の処理により得られた量子化データを、その量子化の特性に対応する特性で逆量子化する。
ステップS164において、逆直交変換部168は、ステップS161の処理により得られた直交変換係数を、その直交変換に対応する方法で逆直交変換する。
ステップS165において、演算部169は、ステップS164の処理により復元された残差データに、ステップS158の予測処理により得られた予測画像を加算することにより、再構成画像の画像データを生成する。
ステップS166においてフィルタ170は、その再構成画像の画像データに対して、デブロッキングフィルタ等のフィルタ処理を行う。これによりエンハンスメントレイヤの復号画像データ(EL復号画像データ)が得られる。
ステップS167において、フィルタ170は、そのEL復号画像データをエンハンスメントレイヤの符号化に関する情報としてELフレームメモリ171に供給し、記憶させる。
ステップS168において、符号化部165は、ステップS162の処理により得られた量子化データ等の画像に関する情報を符号化する。
ステップS169において蓄積バッファ166は、その符号化により得られたEL符号化データ等を蓄積する。蓄積バッファ166に蓄積されたEL符号化データ等は、例えばビットストリームとして適宜読み出され、多重化部104に供給される。
ステップS170において、レート制御部175は、蓄積バッファ166に蓄積されたBL符号化データ等の符号量(発生符号量)に基づいて、オーバフローあるいはアンダーフローが発生しないように、ステップS162の量子化処理のレートを制御する。
ステップS170の処理が終了すると、EL画像符号化処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<負荷の低減>
以上のように階層符号化を行うことにより、IL処理をエンハンスメントレイヤの符号化の際に行うことができる。
以上のように階層符号化を行うことにより、IL処理をエンハンスメントレイヤの符号化の際に行うことができる。
ところで、階層画像符号化装置100において、BLフレームメモリ121やELフレームメモリ171は、上述のように1フレーム分以上の大量のデータを記憶する必要があるため、これらには大容量の記憶領域が必要である。また、ベースレイヤ画像符号化部102やエンハンスメントレイヤ画像符号化部103の各処理部も処理するデータを保持するが、そのデータ量は多くても数ライン分程度と少量であるので、これらの記憶領域は小容量でもよい。
一般的に、揮発性の記憶媒体としてDRAMやSRAM(Static Random Access Memory)が用いられることが多い。DRAMは、SRAMと比較して、応答速度が低速であるが、安価に大容量を実現することができる。また、DRAMは処理部の外部に形成されてメモリバス等を介してアクセスするため、SRAMに比べてメモリアクセスの帯域が細く、データの読み出しや書き込みの速度が遅い。換言するに、SRAMはDRAMと比較して、応答速度が高速であり処理部の内部に形成されるためメモリアクセスの帯域も太いので、データの読み出しや書き込みの速度が高速であるものの、容量単価が高価であるため、小容量の記憶領域に向いている。
つまり、SRAMを使えばより高速なアクセスが可能になるが、BLフレームメモリ121やELフレームメモリ171のように大容量の記憶領域が必要なメモリにSRAMを適用するのは、コストが増大し、現実的ではない。したがって、各処理部のメモリはSRAMで実現するが、BLフレームメモリ121やELフレームメモリ171はDRAMを用いて実現されることが一般的である。
ただし、そうすると、SRAMを利用する場合に比べてデータの読み出しや書き込みが低速になるため、図7を参照して説明したように、BLフレームメモリ121やELフレームメモリ171へのアクセス量(読出しや書き込みの量)が増大すると、その分、全体の処理時間が増大するおそれがあった。また、安価とはいえ、書き込むデータ量が増大する程、DRAMの容量を増大させなければならず、コストが増大するおそれがあった。
上述したようにIL処理をエンハンスメントレイヤの符号化の際に行うようにすることにより、スケーラブルなパラメータがベースレイヤ基準からエンハンスメントレイヤ基準に変換された符号化に関する情報(例えばIL画像データやIL動き情報)をELフレームメモリ171に記憶させずに処理を行うことができる。したがって、図9を参照して説明したように、図7に示されるSHVCの場合に比べて、DRAM(ELフレームメモリ171)へのメモリアクセス量(メモリバスの帯域使用量)を低減させることができる。また、DRAM(ELフレームメモリ171)の使用量も低減させることができる。
さらに、このように符号化を行うことにより、IL処理の終了を待たずにエンハンスメントレイヤに対する処理を開始することができる。つまり、図8に示されるSHVCの場合に比べて、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように階層符号化を行うことにより、SHVCの場合に比べて符号化の負荷を低減させることができる。
なお、BLフレームメモリ121とELフレームメモリ171とは、互いに異なるDRAMを用いて実現するようにしてもよいし、図9の例のように、1つのDRAMの互いに異なる領域を用いて実現するようにしてもよい。もちろん、DRAMは一例であり、DRAM以外の任意の記憶媒体を用いてBLフレームメモリ121とELフレームメモリ171とを実現するようにしてもよい。
また、図10の制御部101乃至多重化部104のうち複数の処理部を1つのプロセッサ(例えばCPU(Central Processing Unit))により実現するようにしてもよい。その場合、例えば、そのプロセッサを時分割して、各処理部として機能するようにしてもよい。例えば、ベースレイヤ画像符号化部102とエンハンスメントレイヤ画像符号化部103とを、時分割した1つのプロセッサ(例えばCPU)により実現するようにしてもよい。なお、そのプロセッサが例えば複数のコアを有する等、複数の処理を並行して実行することができる場合は、各処理部を並行して実現するようにしてもよい。
<4.第2の実施の形態>
<階層画像復号装置>
図16は、本技術を適用した画像処理装置の一態様である階層画像復号装置の構成の一例を示すブロック図である。図16に示される階層画像復号装置200は、上述した第1の復号方法により階層画像を復号するように構成される画像処理装置である。つまり、階層画像復号装置200は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って符号化された階層画像の符号化データを復号することができる。ただし、階層画像復号装置200は、エンハンスメントレイヤの復号の際にIL処理を行う。
<階層画像復号装置>
図16は、本技術を適用した画像処理装置の一態様である階層画像復号装置の構成の一例を示すブロック図である。図16に示される階層画像復号装置200は、上述した第1の復号方法により階層画像を復号するように構成される画像処理装置である。つまり、階層画像復号装置200は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って符号化された階層画像の符号化データを復号することができる。ただし、階層画像復号装置200は、エンハンスメントレイヤの復号の際にIL処理を行う。
図16に示されるように、階層画像復号装置200は、逆多重化部201、制御部202、ベースレイヤ画像復号部203、およびエンハンスメントレイヤ画像復号部204を有する。なお、図16においては、処理部やデータの流れ等の主なものを示しており、図16に示されるものが全てとは限らない。つまり、階層画像復号装置200において、図16においてブロックとして示されていない処理部が存在したり、図16において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
逆多重化部201は、階層画像符号化データを受け付ける。この階層画像符号化データは、図10を参照して説明したように、BL符号化データ、EL符号化データ、並びに階層符号化(つまり階層復号)に関する制御情報等が多重化されたデータ(例えばビットストリーム)である。逆多重化部201は、階層画像符号化データを取得すると、それを逆多重化して、BL符号化データ、EL符号化データ、階層復号に関する制御情報に分離する。逆多重化部201は、階層復号に関する制御情報を制御部202に供給し、BL符号化データをベースレイヤ画像復号部203に供給し、EL符号化データをエンハンスメントレイヤ画像復号部204に供給する。
制御部202は、階層復号に関する制御情報を取得すると、その制御情報に基づいてベースレイヤ画像復号部203やエンハンスメントレイヤ画像復号部204を制御する。この階層復号に関する制御情報は、符号化の際に設定された情報であり、例えばSPS等のような全レイヤ共通の情報を含む。制御部202は、階層復号に関する制御情報からベースレイヤに関する制御情報を抽出し、それをベースレイヤ画像復号部203に供給してベースレイヤの復号を制御する。また、制御部202は、階層復号に関する制御情報からエンハンスメントレイヤに関する制御情報を抽出し、それをエンハンスメントレイヤ画像復号部204に供給してエンハンスメントレイヤの復号を制御する。例えば、制御部202は、BL情報、EL情報、IL処理に関する制御情報をエンハンスメントレイヤ画像復号部204に供給して、IL処理を制御する。
ベースレイヤ画像復号部203は、制御部202に制御されてベースレイヤの復号に関する処理を行う。例えば、ベースレイヤ画像復号部203は、逆多重化部201から供給されるBL符号化データを受け付ける。また、例えば、ベースレイヤ画像復号部203は、その受け付けたBL符号化データを、イントラ予測やインター予測等の予測を用いて、他のレイヤの情報を用いずに復号し、BL復号画像データを生成し、階層画像復号装置200の外部に出力する。また、例えば、ベースレイヤ画像復号部203は、エンハンスメントレイヤ画像復号部204からの要求に応じて、BL復号画像データやBL動き情報を、ベースレイヤの復号に関する情報として、エンハンスメントレイヤ画像復号部204に供給する。
なお、ベースレイヤの復号に関する情報は、どのような情報であってもよい。
ベースレイヤ画像復号部203は、制御部202から供給される制御情報に基づいて処理を行うため、これらの処理を、符号化の際の設定に対応する設定で行うことができる。
エンハンスメントレイヤ画像復号部204は、制御部202に制御されてエンハンスメントレイヤの復号に関する処理を行う。例えば、エンハンスメントレイヤ画像復号部204は、逆多重化部201から供給されるEL符号化データを受け付ける。また、例えば、エンハンスメントレイヤ画像復号部204は、その受け付けたEL符号化データを、イントラ予測、インター予測、ベースレイヤ画像復号部203から取得したベースレイヤの復号に関する情報を用いたインターレイヤ予測(レイヤ間予測)等を用いて復号し、EL復号画像データを生成する。
そして、エンハンスメントレイヤ画像復号部204は、例えば、その復号の際に、ベースレイヤの復号に関する情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換するIL処理を行う。エンハンスメントレイヤ画像復号部204は、IL処理により得られた変換後の符号化に関する情報を用いて、インター予測やインターレイヤ予測を行う。また、例えば、エンハンスメントレイヤ画像復号部204は、生成したEL復号画像データを階層画像復号装置200の外部に出力する。
エンハンスメントレイヤ画像復号部204は、制御部202から供給される制御情報に基づいて処理を行うため、これらの処理を、符号化の際の設定に対応する設定で行うことができる。
<ベースレイヤ画像復号部>
図17は、図16のベースレイヤ画像復号部203の主な構成例を示すブロック図である。なお、図17においては、処理部やデータの流れ等の主なものを示しており、図17に示されるものが全てとは限らない。つまり、ベースレイヤ画像復号部203において、図17においてブロックとして示されていない処理部が存在したり、図17において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図17は、図16のベースレイヤ画像復号部203の主な構成例を示すブロック図である。なお、図17においては、処理部やデータの流れ等の主なものを示しており、図17に示されるものが全てとは限らない。つまり、ベースレイヤ画像復号部203において、図17においてブロックとして示されていない処理部が存在したり、図17において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図17に示されるようにベースレイヤ画像復号部203は、蓄積バッファ211、復号部212、逆量子化部213、逆直交変換部214、演算部215、フィルタ216、画面並べ替えバッファ217を有する。また、ベースレイヤ画像復号部203は、BLフレームメモリ218、イントラ予測部219、インター予測部220、および予測画像選択部221を有する。
蓄積バッファ211は、逆多重化部201から供給されるBL符号化データを蓄積し、所定のタイミングにおいてそのBL符号化データを復号部212に供給する。BL符号化データは、階層画像のベースレイヤの画像の符号化データである。
復号部212は、蓄積バッファ211より供給されたBL符号化データを、その符号化方式に対応する方式で復号する。復号部212は、BL符号化データを復号して量子化データを得ると、それを逆量子化部213に供給する。また、復号部212は、BL符号化データを復号して得られた最適な予測モードに関する情報を、イントラ予測部219若しくはインター予測部220に供給する。例えば、イントラ予測が行われた場合、復号部212は、イントラ予測モード情報をイントラ予測部219に供給する。また、例えば、インター予測が行われた場合、復号部212は、インター予測モード情報をインター予測部220に供給する。さらに、復号部212は、BL符号化データを復号して得られた各種情報を、その情報を必要とする各種処理部に適宜供給することができる。
逆量子化部213は、復号部212から供給された量子化データを、その量子化方式に対応する方式で逆量子化する。逆量子化部213は、その逆量子化により得られた直交変換係数を逆直交変換部214に供給する。
逆直交変換部214は、逆量子化部213から供給された直交変換係数を、その直交変換方式に対応する方式で逆直交変換する。逆直交変換部214は、この逆直交変換処理により得られた残差データ(復元された残差データ)を演算部215に供給する。
演算部215は、逆直交変換部214から供給された、復元された残差データに予測画像選択部221から供給された予測画像を加算し、再構成画像を得る。演算部215は、その再構成画像をフィルタ216およびイントラ予測部219に供給する。
フィルタ216は、例えばデブロックフィルタ等、符号化(BL符号化データの生成)の際に行われたフィルタ処理に対応するフィルタ処理を行う。フィルタ216は、フィルタ処理結果である復号画像(BL復号画像データ)をベースレイヤの復号に関する情報として画面並べ替えバッファ217およびBLフレームメモリ218に供給し、記憶させる。
画面並べ替えバッファ217は、供給された復号画像の並べ替えを行う。すなわち、符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。画面並べ替えバッファ217は、フレームの順番を並べ替えた復号画像(BL復号画像データ)をベースレイヤ画像復号部203(階層画像復号装置200)の外部に出力する。
BLフレームメモリ218は、ベースレイヤの復号に関する情報を記憶する。例えば、BLフレームメモリ218は、フィルタ216から供給される復号画像(BL復号画像データ)を自身の記憶領域内に記憶する。また、例えば、BLフレームメモリ218は、インター予測部220から供給されるBL動き情報を自身の記憶領域内に記憶する。
また、BLフレームメモリ218は、記憶しているベースレイヤの復号に関する情報を他の処理部に供給する。例えば、BLフレームメモリ218は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているBL復号画像データを参照画像としてインター予測部220に供給する。また、例えば、BLフレームメモリ218は、所定のタイミングにおいて若しくは要求に基づいて、記憶しているBL動き情報をインター予測部220に供給する。さらに、例えば、BLフレームメモリ218は、エンハンスメントレイヤ画像復号部204等からの要求に基づいて、記憶しているBL復号画像データやBL動き情報を、エンハンスメントレイヤ画像復号部204に供給する。
なお、BLフレームメモリ218は、1フレーム分以上の情報を記憶することができる。
イントラ予測部219は、復号部212から供給されるイントラ予測モード情報と、演算部215から供給される再構成画像とを用いて、イントラ予測を行い、予測画像を生成する。つまり、イントラ予測部219は、符号化の際と基本的に同様の方法で予測画像を生成する。ただし、イントラ予測部219は、符号化に採用されたモードでのみイントラ予測を行う。イントラ予測部219は、生成した予測画像を予測画像選択部221に供給する。
インター予測部220は、復号部212から供給されるインター予測モード情報に基づいて、符号化に採用されたモードでインター予測を行い、予測画像を生成する。例えば、インター予測部220は、インター予測モード情報に含まれる符号化された動きベクトルを復号し、処理対象のブロック(カレントブロック)の動きベクトルを復元する。その際、インター予測部220は、必要に応じてBLフレームメモリ218からBL動き情報を取得し、利用することができる。また、インター予測部220は、復元した動きベクトル等に基づいてBLフレームメモリ218から復号画像(BL復号画像データ)を参照画像として取得し、それを用いてカレントブロックの予測画像を生成する。インター予測部220は、生成した予測画像を予測画像選択部221に供給する。また、インター予測部220は、復元した動きベクトルを含むBL動き情報をベースレイヤの復号に関する情報としてBLフレームメモリ218に供給し、記憶させる。
予測画像選択部221は、イントラ予測部219若しくはインター予測部220から供給された予測画像を演算部215に供給する。
<エンハンスメントレイヤ画像復号部>
図18は、図16のエンハンスメントレイヤ画像復号部204の主な構成例を示すブロック図である。なお、図18においては、処理部やデータの流れ等の主なものを示しており、図18に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像復号部204において、図18においてブロックとして示されていない処理部が存在したり、図18において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図18は、図16のエンハンスメントレイヤ画像復号部204の主な構成例を示すブロック図である。なお、図18においては、処理部やデータの流れ等の主なものを示しており、図18に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像復号部204において、図18においてブロックとして示されていない処理部が存在したり、図18において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図18に示されるようにエンハンスメントレイヤ画像復号部204は、蓄積バッファ261、復号部262、逆量子化部263、逆直交変換部264、演算部265、フィルタ266、画面並べ替えバッファ267を有する。また、エンハンスメントレイヤ画像復号部204は、イントラ予測部269、インター予測部270、および予測画像選択部271を有する。これらの各処理部は、蓄積バッファ211乃至画面並べ替えバッファ217、イントラ予測部219乃至予測画像選択部221(図17)の各処理部にそれぞれ対応し、同様の構成を有し、エンハンスメントレイヤに対して、ベースレイヤの場合と基本的に同様の処理を行う。
また、エンハンスメントレイヤ画像復号部204は、ELフレームメモリ268、IL処理部281、並びに、インターレイヤ予測部282を有する。
ELフレームメモリ268は、エンハンスメントレイヤの復号に関する情報を記憶する。例えば、ELフレームメモリ268は、フィルタ266から供給されるフィルタ処理結果(EL復号画像データとも称する)を自身の記憶領域内に記憶する。また、例えば、ELフレームメモリ268は、インター予測部270若しくはインターレイヤ予測部282から供給される動き情報(EL動き情報とも称する)を自身の記憶領域内に記憶する。
この動き情報は、最適な予測モードとして採用された予測モードの動き情報である。エンハンスメントレイヤの復号に関する情報は、例えば、このようなEL復号画像データやEL動き情報を含む。エンハンスメントレイヤの符号化に関する情報はどのような情報であってもよい。
また、ELフレームメモリ268は、要求に応じて、記憶しているエンハンスメントレイヤの復号に関する情報をインター予測部270やインターレイヤ予測部282に供給する。
なお、ELフレームメモリ268は、1フレーム分以上の情報を記憶することができる。
IL処理部281は、IL処理に関する処理を行う。例えば、IL処理部281は、制御部202(図16)から供給されるBL情報、EL情報、制御情報等を取得する。また、例えば、IL処理部281は、ベースレイヤ画像復号部203のBLフレームメモリ218に対してベースレイヤの復号に関する情報(例えばBL復号画像データやBL動き情報等)を要求し、取得する。さらに、例えば、IL処理部281は、BL情報、EL情報、制御情報等に基づいて、ベースレイヤの復号に関する情報に対してIL処理を行い、そのスケーラブルなパラメータの値をベースレイヤ基準の値からエンハンスメントレイヤ基準の値に変換する。
例えば、IL処理部281は、BL復号画像データに対して、そのスケーラブルなパラメータがエンハンスメントレイヤ基準となるようにアップサンプルを行う。例えば、スケーラブルなパラメータが画像サイズ(解像度)である場合、IL処理部281は、BL復号画像データの画像サイズを、ベースレイヤのピクチャの画像サイズとエンハンスメントレイヤのピクチャの画像サイズとの比に応じて変更する(一般的には拡大する)。これにより、変換後のBL復号画像データの画像サイズは、エンハンスメントレイヤのピクチャの画像サイズを基準とするサイズになる。この変換後のデータをIL画像データとも称する。
また、例えば、IL処理部281は、BL動き情報に対して、そのスケーラブルなパラメータがエンハンスメントレイヤ基準となるようにスケーリングを行う。例えば、スケーラブルなパラメータが画像サイズ(解像度)である場合、IL処理部281は、BL動き情報の動きベクトルのサイズを、ベースレイヤのピクチャの画像サイズとエンハンスメントレイヤのピクチャの画像サイズとの比に応じて変更する(一般的には拡大する)。これにより、変換後のBL動き情報のサイズは、エンハンスメントレイヤのピクチャの画像サイズを基準とするサイズになる。この変換後のデータをIL動き情報とも称する。
IL処理部281は、このようなIL処理により得られた変換後の復号に関する情報をインター予測部270やインターレイヤ予測部282に供給する。例えば、IL処理部281は、要求されたIL画像データやIL動き情報をインターレイヤ予測部282に供給する。また、例えば、IL処理部281は、要求されたIL動き情報をインター予測部270に供給する。
ところで、復号部262は、EL符号化データを復号して得られた最適な予測モードに関する情報を、イントラ予測部269、インター予測部270、若しくはインターレイヤ予測部282に供給する。例えば、イントラ予測が行われた場合、復号部262は、イントラ予測モード情報をイントラ予測部269に供給する。また、例えば、インター予測が行われた場合、復号部262は、インター予測モード情報をインター予測部270に供給する。さらに、例えば、インターレイヤ予測が行われた場合、復号部262は、インターレイヤ予測モード情報をインターレイヤ予測部282に供給する。
インターレイヤ予測部282は、復号部262から供給されるインターレイヤ予測モード情報に基づいて、符号化に採用されたモードでインターレイヤ予測を行い、予測画像を生成する。例えば、インターレイヤ予測部282は、インターレイヤ予測モード情報に含まれる符号化された動きベクトルを復号し、処理対象のブロック(カレントブロック)の動きベクトルを復元する。その際、インターレイヤ予測部282は、必要に応じてELフレームメモリ268からEL動き情報を取得したり、IL処理部281からIL動き情報を取得したりして、それらの動き情報を利用することができる。また、インターレイヤ予測部282は、復元した動きベクトル等に基づいてIL処理部281からカレントブロックに対応する位置の復号画像(IL復号画像データ)を参照画像として取得し、それを用いてカレントブロックの予測画像を生成する。インターレイヤ予測部282は、生成した予測画像を予測画像選択部271に供給する。また、インターレイヤ予測部282は、復元した動きベクトルを含むEL動き情報をエンハンスメントレイヤの復号に関する情報としてELフレームメモリ268に供給し、記憶させる。
なお、インター予測部270は、復号部262から供給されるインター予測モード情報に基づいて、符号化に採用されたモードでインター予測を行い、予測画像を生成する。例えば、インター予測部270は、インター予測モード情報に含まれる符号化された動きベクトルを復号し、処理対象のブロック(カレントブロック)の動きベクトルを復元する。その際、インター予測部270は、必要に応じてELフレームメモリ268からEL動き情報を取得したり、IL処理部281からIL動き情報を取得したりして、それらの動き情報を利用することができる。また、インター予測部270は、復元した動きベクトル等に基づいてELフレームメモリ268からカレントブロックに対応する位置の復号画像(EL復号画像データ)を参照画像として取得し、それを用いてカレントブロックの予測画像を生成する。インター予測部270は、生成した予測画像を予測画像選択部271に供給する。また、インター予測部270は、復元した動きベクトルを含むEL動き情報をエンハンスメントレイヤの復号に関する情報としてELフレームメモリ268に供給し、記憶させる。
予測画像選択部271は、イントラ予測部269、インター予測部270、若しくはインターレイヤ予測部282から供給された予測画像を演算部265に供給する。
<階層画像復号処理の流れ>
次に、階層画像復号装置200(図16)により実行される各処理の流れの例を説明する。最初に、階層画像復号処理の流れの例を、図19のフローチャートを参照して説明する。
次に、階層画像復号装置200(図16)により実行される各処理の流れの例を説明する。最初に、階層画像復号処理の流れの例を、図19のフローチャートを参照して説明する。
階層画像復号処理が開始されると、ステップS201において、逆多重化部201は、階層画像符号化データを逆多重化し、各レイヤの符号化データと制御情報(例えばBL符号化データ、EL符号化データ、制御情報等)に分離する。
ステップS202において、制御部202は、ステップS201において得られた階層復号に関する制御情報(例えばパラメータセット等)に基づいて、階層復号に関する設定を行う。
ステップS203において、ベースレイヤ画像復号部203は、ステップS202において行われた設定に従って、BL符号化データを復号し、BL復号画像データを生成し、出力する。
ステップS204において、エンハンスメントレイヤ画像復号部204は、ステップS202において行われた設定に従って、EL符号化データを復号し、EL復号画像データを生成し、出力する。
ステップS204の処理が終了すると、階層画像復号処理が終了する。
<ベースレイヤ画像復号処理の流れ>
次に、図20のフローチャートを参照して、階層画像符号化処理(図19)のステップS203において実行されるベースレイヤ(BL)画像復号処理の流れの例を説明する。
次に、図20のフローチャートを参照して、階層画像符号化処理(図19)のステップS203において実行されるベースレイヤ(BL)画像復号処理の流れの例を説明する。
BL画像復号処理が開始されると、ステップS221において、蓄積バッファ211は、BL符号化データを蓄積する。
ステップS222において、復号部212は、そのBL符号化データを、その符号化方式に対応する方式で復号し、量子化データを得る。
ステップS223において、逆量子化部213は、ステップS222において得られた量子化データを、その量子化方式に対応する方式で逆量子化し、直交変換係数を得る。
ステップS224において、逆直交変換部214は、ステップS223において得られた直交変換係数を、その直交変換方式に対応する方式で逆直交変換し、残差データを復元する。
ステップS225において、イントラ予測部219若しくはインター予測部220は、ステップS222において得られる最適な予測モードに関する情報に基づいて、イントラ予測モード若しくはインター予測モードで予測画像を生成する。つまり、例えば符号化の際にイントラ予測が採用された場合、イントラ予測部219がイントラ予測を行って予測画像を生成する。また、例えば符号化の際にインター予測が採用された場合、インター予測部220がインター予測を行って予測画像を生成する。
ステップS225においてインター予測が行われた場合、ステップS226において、インター予測部220は、ステップS225において復元された動きベクトル等を含むBL動き情報を、ベースレイヤの復号に関する情報としてBLフレームメモリ218に供給し、記憶させる。なお、ステップS225においてイントラ予測が行われた場合、このステップS226の処理は省略される。
ステップS227において、演算部215は、ステップS224において復元された残差データと、ステップS225において生成された予測画像とを加算し、再構成画像を得る。
ステップS228において、フィルタ216は、ステップS227において得られた再構成画像に対してフィルタ処理を行い、復号画像(BL復号画像データ)を得る。
ステップS229において、フィルタ216は、得られたBL復号画像データをベースレイヤの復号に関する情報としてBLフレームメモリ218に供給し、記憶させる。
ステップS230において、画面並べ替えバッファ217は、ステップS228の処理により得られた復号画像の並べ替えを行い、フレームの順序を、元の表示の順序(符号化の際に並べ替えられる前の順序)に並べ替える。
ステップS230の処理が終了すると、BL画像復号処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<エンハンスメントレイヤ画像復号処理の流れ>
次に、図21および図22のフローチャートを参照して、階層画像符号化処理(図19)のステップS204において実行されるエンハンスメントレイヤ(EL)画像復号処理の流れの例を説明する。
次に、図21および図22のフローチャートを参照して、階層画像符号化処理(図19)のステップS204において実行されるエンハンスメントレイヤ(EL)画像復号処理の流れの例を説明する。
EL画像復号処理が開始されると、図21のステップS251において、IL処理部281は、制御部202(図16)から供給されるBL情報、EL情報、制御情報を取得する。
ステップS252において、蓄積バッファ261は、EL符号化データを蓄積する。
ステップS253において、復号部262は、そのEL符号化データを、その符号化方式に対応する方式で復号し、量子化データを得る。
ステップS254において、逆量子化部263は、ステップS253において得られた量子化データを、その量子化方式に対応する方式で逆量子化し、直交変換係数を得る。
ステップS255において、逆直交変換部264は、ステップS254において得られた直交変換係数を、その直交変換方式に対応する方式で逆直交変換し、残差データを復元する。
ステップS256において、復号部262は、ステップS253において得られる最適な予測モードに関する情報に基づいて、符号化の際に最適な予測モードとして採用された予測モードが、インター予測モード若しくはインターレイヤ予測モードであるか否かを判定する。最適な予測モードがインター予測モード若しくはインターレイヤ予測モードであると判定された場合、処理はステップS257に進む。
ステップS257において、IL処理部281は、処理対象であるカレントブロックに対応する位置のBL復号画像データとBL動き情報を、ベースレイヤ画像復号部203のBLフレームメモリ218に対して要求し、取得する。
ステップS258において、IL処理部281は、ステップS251において取得したBL情報、EL情報、制御情報等に基づいて、ステップS257において取得したBL復号画像データやBL動き情報に対してIL処理を行い、IL画像データやIL動き情報を得る。
ステップS259において、インター予測部270若しくはインターレイヤ予測部282は、インター予測モード若しくはインターレイヤ予測モードで予測画像を生成する。つまり、例えば符号化の際にインター予測が採用された場合、インター予測部270がインター予測を行って、カレントブロックの動きベクトルを復元し、その動きベクトルを用いてカレントブロックの予測画像を生成する。その際、インター予測部270は、必要に応じて、ELフレームメモリ268からEL復号画像データやEL動き情報等を取得し、利用することができる。また、インター予測部270は、必要に応じて、ステップS258において得られたIL動き情報等を利用することもできる。また、例えば符号化の際にインターレイヤ予測が採用された場合、インターレイヤ予測部282がインターレイヤ予測を行って、カレントブロックの動きベクトルを復元し、その動きベクトルを用いてカレントブロックの予測画像を生成する。その際、インターレイヤ予測部282は、必要に応じて、ステップS258において得られたIL画像データやIL動き情報等を利用することができる。また、インターレイヤ予測部282は、必要に応じて、ELフレームメモリ268からEL動き情報等を取得し、利用することもできる。
ステップS260において、インター予測部270若しくはインターレイヤ予測部282は、ステップS259において復元したカレントブロックの動きベクトルを含むEL動き情報をエンハンスメントレイヤの復号に関する情報として、ELフレームメモリ268に供給し、記憶させる。例えば、ステップS259においてインター予測が行われた場合、ステップS260においてインター予測部270が、EL動き情報をELフレームメモリ268に供給し、記憶させる。また、例えば、ステップS259においてインターレイヤ予測が行われた場合、ステップS260においてインターレイヤ予測部282が、EL動き情報をELフレームメモリ268に供給し、記憶させる。
EL動き情報がELフレームメモリ268に記憶されると、処理は図22のステップS271に進む。
また、図21のステップS256において、最適な予測モードがイントラ予測モードであると判定された場合、処理はステップS261に進む。
ステップS261において、イントラ予測部269は、イントラ予測モードで予測画像を生成する。予測画像が生成されると処理は図22のステップS271に進む。
図22のステップS271において、演算部265は、図21のステップS255において復元された残差データと、図21のステップS259若しくはステップS261において生成された予測画像とを加算し、再構成画像を得る。
ステップS272において、フィルタ266は、ステップS271において得られた再構成画像に対してフィルタ処理を行い、復号画像(EL復号画像データ)を得る。
ステップS273において、フィルタ216は、得られたEL復号画像データをエンハンスメントレイヤの復号に関する情報としてELフレームメモリ268に供給し、記憶させる。
ステップS274において、画面並べ替えバッファ267は、ステップS272の処理により得られた復号画像の並べ替えを行い、フレームの順序を、元の表示の順序(符号化の際に並べ替えられる前の順序)に並べ替える。
ステップS274の処理が終了すると、EL画像復号処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<負荷の低減>
以上のように階層復号を行うことにより、IL処理をエンハンスメントレイヤの復号の際に行うことができる。
以上のように階層復号を行うことにより、IL処理をエンハンスメントレイヤの復号の際に行うことができる。
ところで、階層画像復号装置200の場合も、階層画像符号化装置100の場合と同様に、各処理部のメモリはSRAMで実現するが、BLフレームメモリ218やELフレームメモリ268はDRAMを用いて実現されることが一般的である。
ただし、そうすると、SRAMを利用する場合に比べてデータの読み出しや書き込みが低速になるため、図7を参照して説明したように、BLフレームメモリ218やELフレームメモリ268へのアクセス量(読出しや書き込みの量)が増大すると、その分、全体の処理時間が増大するおそれがあった。また、安価とはいえ、書き込むデータ量が増大する程、DRAMの容量を増大させなければならず、コストが増大するおそれがあった。
上述したようにIL処理をエンハンスメントレイヤの復号の際に行うようにすることにより、スケーラブルなパラメータがベースレイヤ基準からエンハンスメントレイヤ基準に変換後の復号に関する情報(例えばIL画像データやIL動き情報)をELフレームメモリ268に記憶させずに処理を行うことができる。したがって、図9を参照して説明したように、図7に示されるSHVCの場合に比べて、DRAM(ELフレームメモリ268)へのメモリアクセス量(メモリバスの帯域使用量)を低減させることができる。また、DRAM(ELフレームメモリ268)の使用量も低減させることができる。
また、復号の場合、変換後の復号に関する情報(IL画像データやIL動き情報)は、実際に復号に用いられる分だけ得られれば良く、必ずしも、ピクチャ全体について変換後の復号に関する情報を用意する必要はない。また、例えば隣接する複数のブロックのそれぞれに対してIL処理を行う場合など、IL処理部281が一度読み出したベースレイヤの復号に関する情報(例えばBL復号画像データやBL動き情報等)を他のブロックのIL処理に再利用することができる場合もある。これらのような場合、BLフレームメモリ218からのベースレイヤの復号に関する情報(例えばBL復号画像データやBL動き情報等)の読み出しが不要になる。つまり、その分、BLフレームメモリ218からのデータの読み出し量を低減させることができる。すなわち、DRAMへのメモリアクセス量(メモリバスの帯域使用量)を低減させることができる。
さらに、このように復号を行うことにより、IL処理の終了を待たずにエンハンスメントレイヤに対する処理を開始することができる。つまり、図8に示されるSHVCの場合に比べて、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように階層復号を行うことにより、SHVCの場合に比べて復号の負荷を低減させることができる。
なお、BLフレームメモリ218とELフレームメモリ268とは、互いに異なるDRAMを用いて実現するようにしてもよいし、図9の例のように、1つのDRAMの互いに異なる領域を用いて実現するようにしてもよい。もちろん、DRAMは一例であり、DRAM以外の任意の記憶媒体を用いてBLフレームメモリ218とELフレームメモリ268とを実現するようにしてもよい。
また、図16の逆多重化部201乃至エンハンスメントレイヤ画像復号部204のうち複数の処理部を1つのプロセッサ(例えばCPU)により実現するようにしてもよい。その場合、例えば、そのプロセッサを時分割して、各処理部として機能するようにしてもよい。例えば、ベースレイヤ画像復号部203とエンハンスメントレイヤ画像復号部204とを、時分割した1つのプロセッサ(例えばCPU)により実現するようにしてもよい。なお、そのプロセッサが例えば複数のコアを有する等、複数の処理を並行して実行することができる場合は、各処理部を並行して実現するようにしてもよい。
<5.第2の符号化・復号方法>
<ベースレイヤにおけるIL処理>
なお、以上においてはIL処理をエンハンスメントレイヤに対する処理の際に行うように説明したが、このIL処理をベースレイヤに対する処理の際に行うようにしてもよい。
<ベースレイヤにおけるIL処理>
なお、以上においてはIL処理をエンハンスメントレイヤに対する処理の際に行うように説明したが、このIL処理をベースレイヤに対する処理の際に行うようにしてもよい。
例えば復号の場合、図23に示されるようにIL処理を行うようにする。図23に示されるように、ベースレイヤ(BL)用のデコーダ51は、HEVCやAVC等により、ベースレイヤの符号化データを、通常の単階層の画像の場合と基本的に同様に復号する。デコーダ51は、復号処理中に得られたベースレイヤの復号画像データ(DPB)や動き情報(MV Prm)をDRAM52の所定の領域52-1に書き込み、必要に応じてそれらを読み出して復号に利用する。つまり、領域52-1に書き込まれたデータは、スケーラブルなパラメータがベースレイヤ基準のデータである。
IL処理部61は、デコーダ53からEL情報や制御情報等を取得する。また、IL処理部61は、デコーダ51からBL情報を取得する。そして、ベースレイヤの復号処理中にベースレイヤの復号画像データ(DPB)や動き情報(MV Prm)が得られると、IL処理部61は、それらに対してIL処理を行い、スケーラブルなパラメータをエンハンスメントレイヤ基準に変換した復号画像データ(DPB)や動き情報(MV Prm)を得る。IL処理部61は、その変換後の復号画像データ(DPB)や動き情報(MV Prm)をDRAM52の所定の領域52-3に書き込む。
このようにしてベースレイヤに対する復号処理が終了すると、次に、エンハンスメントレイヤ(EL)用のデコーダ53は、エンハンスメントレイヤの符号化データを、例えばHEVC(SHVC)等により復号する。デコーダ53は、復号処理中に得られたエンハンスメントレイヤの復号画像データ(DPB)や動き情報(MV Prm)をDRAM52の所定の領域52-2に書き込む。
また、デコーダ53は、SHVCの場合と同様に、点線枠で示されるように、領域52-2のエンハンスメントレイヤの復号画像データ(DPB)や動き情報(MV Prm)と、領域52-3の変換後の復号画像データ(DPB)や動き情報(MV Prm)とを必要に応じて読み出して復号に利用する。
図7と図23を比較して明らかなように、この場合、DRAM52に対して、図23の矢印72に示されるようなIL処理のためのデータの書き込みがあるものの、図7の矢印31に示されるような読み出しが行われない。そのため、図23に示される方法の方が、図7に示されるSHVCの場合に比べてDRAM52へのアクセス(メモリバスの帯域使用量)を低減させることができる。
また、図23の場合、図8に示されるSHVCの場合のようにベースレイヤに対する処理の終了を待たずに、IL処理を開始することができる。つまり、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように、復号の負荷を低減させることができる。なお、階層符号化も上述の階層復号の場合と同様の要領で行うことができる。つまり、符号化の負荷も低減させることができる。
<6.第3の実施の形態>
<階層画像符号化装置>
図24は、本技術を適用した画像処理装置の一態様である階層画像符号化装置の構成の一例を示すブロック図である。図24に示される階層画像符号化装置300は、上述した第2の符号化方法により階層画像を符号化するように構成される画像処理装置である。つまり、階層画像符号化装置300は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って階層画像を符号化することができる。ただし、階層画像符号化装置300は、ベースレイヤの符号化の際にIL処理を行う。
<階層画像符号化装置>
図24は、本技術を適用した画像処理装置の一態様である階層画像符号化装置の構成の一例を示すブロック図である。図24に示される階層画像符号化装置300は、上述した第2の符号化方法により階層画像を符号化するように構成される画像処理装置である。つまり、階層画像符号化装置300は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って階層画像を符号化することができる。ただし、階層画像符号化装置300は、ベースレイヤの符号化の際にIL処理を行う。
図24に示されるように、階層画像符号化装置300は、制御部301、ベースレイヤ画像符号化部302、エンハンスメントレイヤ画像符号化部303、および多重化部304を有する。なお、図24においては、処理部やデータの流れ等の主なものを示しており、図24に示されるものが全てとは限らない。つまり、階層画像符号化装置300において、図24においてブロックとして示されていない処理部が存在したり、図24において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
制御部301は、制御部101の場合と基本的に同様に、全レイヤ共通の情報に関する処理を行う。ただし、制御部301は、例えば、スケーラブルなパラメータについてベースレイヤ基準を示すBL情報をベースレイヤ画像符号化部302に供給する。また、制御部301は、例えば、スケーラブルなパラメータについてエンハンスメントレイヤ基準を示すEL情報をベースレイヤ画像符号化部302に供給する。さらに、制御部301は、例えば、IL処理に関する制御情報をベースレイヤ画像符号化部302に供給する。制御部301は、これらの情報を供給することにより、IL処理を制御する。
ベースレイヤ画像符号化部302は、制御部301に制御されて、ベースレイヤ画像符号化部102の場合と基本的に同様に、ベースレイヤの符号化に関する処理を行い、BL画像データを、イントラ予測やインター予測等の予測を用いて、他のレイヤの情報を用いずに符号化してBL符号化データを生成し、それを多重化部304に供給する。
ただし、ベースレイヤ画像符号化部302は、その符号化の際にIL処理を行い、ベースレイヤの符号化に関する情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換する。ベースレイヤ画像符号化部302は、そのIL処理により得られた変換後の符号化に関する情報(例えばIL画像データやIL動き情報)を、エンハンスメントレイヤ画像符号化部303に供給する。
エンハンスメントレイヤ画像符号化部303は、制御部301に制御されて、エンハンスメントレイヤ画像符号化部103の場合と基本的に同様に、エンハンスメントレイヤの符号化に関する処理を行い、EL画像データを、イントラ予測、インター予測、インターレイヤ予測等を用いて符号化してEL符号化データを生成し、それを多重化部304に供給する。エンハンスメントレイヤ画像符号化部303は、ベースレイヤ画像符号化部302から取得した変換後の符号化に関する情報を適宜利用してこの符号化を行う。
多重化部304は、多重化部104の場合と基本的に同様にデータの多重化を行う。例えば、多重化部304は、制御部301から供給される制御情報、ベースレイヤ画像符号化部302から供給されるBL符号化データ、並びに、エンハンスメントレイヤ画像符号化部303から供給されるEL符号化データを多重化して、階層画像符号化データを生成し、出力する。この階層画像符号化データも、階層画像符号化装置300の場合と同様に、例えば、任意の記録媒体、任意の伝送媒体、任意の情報処理装置等を介して復号側(例えば、後述する階層画像復号装置)に伝送される。すなわち、多重化部304は、階層画像符号化データを伝送する伝送部でもある。
<ベースレイヤ画像符号化部>
図25は、図24のベースレイヤ画像符号化部302の主な構成例を示すブロック図である。なお、図25においては、処理部やデータの流れ等の主なものを示しており、図25に示されるものが全てとは限らない。つまり、ベースレイヤ画像符号化部302において、図25においてブロックとして示されていない処理部が存在したり、図25において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図25は、図24のベースレイヤ画像符号化部302の主な構成例を示すブロック図である。なお、図25においては、処理部やデータの流れ等の主なものを示しており、図25に示されるものが全てとは限らない。つまり、ベースレイヤ画像符号化部302において、図25においてブロックとして示されていない処理部が存在したり、図25において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図25に示されるようにベースレイヤ画像符号化部302は、画面並べ替えバッファ311、演算部312、直交変換部313、量子化部314、符号化部315、および蓄積バッファ316を有する。また、ベースレイヤ画像符号化部302は、逆量子化部317、逆直交変換部318、演算部319、フィルタ320、BLフレームメモリ321、イントラ予測部322、インター予測部323、予測画像選択部324、およびレート制御部325を有する。
これらの各処理部は、画面並べ替えバッファ111乃至レート制御部125(図11)の各処理部にそれぞれ対応し、基本的に同様の構成を有し、基本的に同様の処理を行う。
また、ベースレイヤ画像符号化部302は、IL処理部331を有する。フィルタ320は、フィルタ処理結果(BL復号画像データ)を、BLフレームメモリ321だけでなく、このIL処理部331にも、ベースレイヤの符号化に関する情報として供給する。また、最適な予測モードとしてインター予測モードが選択された場合、予測画像選択部324は、そのインター予測モードの動きベクトル等を含むBL動き情報をBLフレームメモリ121だけでなく、IL処理部331にも、ベースレイヤの符号化に関する情報として供給する。このBL動き情報は、例えば、動きベクトルの符号化等に利用される。
IL処理部331は、IL処理に関する処理を行う。例えば、IL処理部331は、制御部301(図24)から供給されるBL情報、EL情報、制御情報等を取得する。また、例えば、IL処理部331は、供給されたベースレイヤの符号化に関する情報に対してIL処理を行い、そのスケーラブルなパラメータの値をベースレイヤ基準の値からエンハンスメントレイヤ基準の値に変換する。つまり、IL処理部331は、IL処理部181の場合と基本的に同様にIL処理を行い、変換後の符号化に関する情報(例えばIL画像データやIL動き情報等)を生成する。IL処理部331は、その変換後の符号化に関する情報をエンハンスメントレイヤ画像符号化部303に供給する。
<エンハンスメントレイヤ画像符号化部>
図26は、図24のエンハンスメントレイヤ画像符号化部303の主な構成例を示すブロック図である。なお、図26においては、処理部やデータの流れ等の主なものを示しており、図26に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像符号化部303において、図26においてブロックとして示されていない処理部が存在したり、図26において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図26は、図24のエンハンスメントレイヤ画像符号化部303の主な構成例を示すブロック図である。なお、図26においては、処理部やデータの流れ等の主なものを示しており、図26に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像符号化部303において、図26においてブロックとして示されていない処理部が存在したり、図26において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図26に示されるようにエンハンスメントレイヤ画像符号化部303は、画面並べ替えバッファ361、演算部362、直交変換部363、量子化部364、符号化部365、および蓄積バッファ366を有する。また、エンハンスメントレイヤ画像符号化部303は、逆量子化部367、逆直交変換部368、演算部369、フィルタ370、ELフレームメモリ371、イントラ予測部372、インター予測部373、予測画像選択部374、レート制御部375、およびインターレイヤ予測部382を有する。これらの各処理部は、画面並べ替えバッファ161乃至レート制御部175、並びにインターレイヤ予測部182(図12)の各処理部にそれぞれ対応し、基本的に同様の構成を有し、基本的に同様の処理を行う。
つまり、エンハンスメントレイヤ画像符号化部303は、IL処理部181に対応する処理部を有していない。上述したようにIL処理はベースレイヤ画像符号化部302において行われる。ベースレイヤ画像符号化部302からは、変換後の符号化に関する情報(例えば、IL画像データやIL動き情報等)が供給される。この変換後の符号化に関する情報は、ELフレームメモリ371に供給され、記憶される。
インター予測部373およびインターレイヤ予測部382は、エンハンスメントレイヤの符号化に関する情報だけでなく、変換後の符号化に関する情報も、このELフレームメモリ371から取得する。
<ベースレイヤ画像符号化処理の流れ>
階層画像符号化装置300による階層画像符号化処理は、階層画像符号化装置100の場合と基本的に同様に実行され、その流れは、図13のフローチャートと同様であるので、その説明は省略する。
階層画像符号化装置300による階層画像符号化処理は、階層画像符号化装置100の場合と基本的に同様に実行され、その流れは、図13のフローチャートと同様であるので、その説明は省略する。
次に、図27のフローチャートを参照して、階層画像符号化処理(図13)のステップS102により実行されるベースレイヤ(BL)画像符号化処理の流れの例を説明する。
BL画像符号化処理が開始されると、ステップS301において、IL処理部331は、制御部301(図24)から供給されるBL情報、EL情報、制御情報を取得する。
ステップS302乃至ステップS314の各処理は、ステップS121乃至ステップS133の各処理(図14)と基本的に同様に行われる。
つまり、ステップS302において、画面並べ替えバッファ311は、入力された動画像(BL画像データ)の各フレーム(ピクチャ)の画像の並べ替えを行う。ステップS303において、イントラ予測部322は、イントラ予測を行う。ステップS304において、インター予測部323は、インター予測を行う。ステップS305において、予測画像選択部324は、最適な予測モードを選択する。ステップS306において、予測画像選択部324は、選択した予測モードのBL動き情報をベースレイヤの符号化に関する情報としてBLフレームメモリ321に供給し、記憶させる。
ステップS307において、演算部312は、入力画像と予測画像との残差データを生成する。ステップS308において、直交変換部313は、その残差データを直交変換し、直交変換係数を得る。ステップS309において、量子化部314は、レート制御部325により算出された量子化パラメータを用いる等して、その直交変換係数を量子化し、量子化データを得る。ステップS310において、逆量子化部317は、その量子化データを、その量子化の特性に対応する特性で逆量子化し、直交変換係数を復元する。ステップS311において、逆直交変換部318は、その復元された直交変換係数を、その直交変換に対応する方法で逆直交変換し、残差データを復元する。
ステップS312において、演算部319は、その復元された残差データに、ステップS305において選択した予測モードの予測画像を加算することにより、再構成画像の画像データを生成する。ステップS313においてフィルタ320は、その再構成画像の画像データに対して、デブロッキングフィルタ等のフィルタ処理を行い、BL復号画像データを得る。ステップS314において、フィルタ320は、そのBL復号画像データをベースレイヤの符号化に関する情報としてBLフレームメモリ321に供給し、記憶させる。
ステップS315において、IL処理部331は、ベースレイヤの符号化に関する情報に対してIL処理を行い、変換後の符号化に関する情報を得る。例えば、IL処理部331は、ステップS301において取得したBL情報、EL情報、制御情報等に基づいて、ステップS313の処理により得られたBL復号画像データや、ステップS305の処理により得られたBL動き情報に対してIL処理を行い、IL画像データやIL動き情報を得る。
ステップS316において、IL処理部331は、ステップS315において得られた変換後の符号化に関する情報をELフレームメモリ371(図26)に供給し、記憶させる。例えば、IL処理部331は、ステップS315において得られたIL画像データやIL動き情報をELフレームメモリ371に供給し、記憶させる。
ステップS317乃至ステップS319の各処理は、ステップS134乃至ステップS136の各処理(図14)と基本的に同様に行われる。
つまり、ステップS317において、符号化部315は、ステップS309の処理により得られた量子化データ等の画像に関する情報を符号化し、BL符号化データを得る。ステップS318において蓄積バッファ316は、そのBL符号化データ等を蓄積する。蓄積バッファ316に蓄積されたBL符号化データ等は、例えばビットストリームとして適宜読み出され、多重化部304に供給される。ステップS319において、レート制御部325は、ステップS309の量子化処理のレートを制御する。
ステップS319の処理が終了すると、BL画像符号化処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<エンハンスメントレイヤ画像符号化処理の流れ>
次に、図28のフローチャートを参照して、階層画像符号化処理(図14)のステップS103により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
次に、図28のフローチャートを参照して、階層画像符号化処理(図14)のステップS103により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
この場合の、ステップS331乃至ステップS347の各処理は、図15のステップS152およびステップS153、並びに、ステップS156乃至ステップS170の各処理と基本的に同様に行われる。
例えば、ステップS331において、画面並べ替えバッファ361は、入力された動画像(EL画像データ)の各フレーム(ピクチャ)の並べ替えを行う。ステップS332において、イントラ予測部372は、イントラ予測を行う。
ステップS333において、インター予測部373は、インター予測を行う。エンハンスメントレイヤの符号化に関する情報も変換後の符号化に関する情報もELフレームメモリ371に記憶されているので、インター予測部373は、ELフレームメモリ371から必要な符号化に関する情報を適宜取得してインター予測を行う。
ステップS334において、インターレイヤ予測部382は、インターレイヤ予測を行う。上述したように変換後の符号化に関する情報はELフレームメモリ371に記憶されているので、インターレイヤ予測部382は、ELフレームメモリ371から必要な変換後の符号化に関する情報を取得してインターレイヤ予測を行う。
ステップS335において、予測画像選択部374は、最適な予測モードを選択する。ステップS336において、予測画像選択部374は、選択した予測モードのEL動き情報をエンハンスメントレイヤの符号化に関する情報としてELフレームメモリ371に供給し、記憶させる。ステップS337において、演算部362は、入力画像と予測画像との残差データを生成する。
ステップS338において、直交変換部363は、その残差データを直交変換し、直交変換係数を得る。ステップS339において、量子化部364は、レート制御部375により算出された量子化パラメータを用いる等して、その直交変換係数を量子化し、量子化データを得る。ステップS340において、逆量子化部367は、その量子化データを、その量子化の特性に対応する特性で逆量子化し、直交変換係数を復元する。ステップS341において、逆直交変換部368は、その直交変換係数を、その直交変換に対応する方法で逆直交変換し、残差データを復元する。
ステップS342において、演算部369は、その復元された残差データに、ステップS335において選択した予測モードの予測画像を加算することにより、再構成画像の画像データを生成する。ステップS343においてフィルタ370は、その再構成画像の画像データに対して、デブロッキングフィルタ等のフィルタ処理を行う。これによりエンハンスメントレイヤの復号画像データ(EL復号画像データ)が得られる。ステップS344において、フィルタ370は、そのEL復号画像データをELフレームメモリ371に供給し、記憶させる。
ステップS345において、符号化部365は、ステップS339の処理により得られた量子化データ等の画像に関する情報を符号化する。ステップS346において蓄積バッファ366は、その符号化により得られたEL符号化データ等を蓄積する。蓄積バッファ366に蓄積されたEL符号化データ等は、例えばビットストリームとして適宜読み出され、多重化部304に供給される。ステップS347において、レート制御部375は、ステップS339の量子化処理のレートを制御する。
ステップS347の処理が終了すると、EL画像符号化処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<負荷の低減>
以上のように階層符号化を行うことにより、IL処理をベースレイヤの符号化の際に行うことができる。
以上のように階層符号化を行うことにより、IL処理をベースレイヤの符号化の際に行うことができる。
ところで、階層画像符号化装置300の場合も、階層画像符号化装置100の場合と同様に、各処理部のメモリはSRAMで実現するが、BLフレームメモリ321やELフレームメモリ371はDRAMを用いて実現されることが一般的である。
ただし、そうすると、SRAMを利用する場合に比べてデータの読み出しや書き込みが低速になるため、図7を参照して説明したように、BLフレームメモリ321やELフレームメモリ371へのアクセス量(読出しや書き込みの量)が増大すると、その分、全体の処理時間が増大するおそれがあった。また、安価とはいえ、書き込むデータ量が増大する程、DRAMの容量を増大させなければならず、コストが増大するおそれがあった。
上述したようにIL処理をベースレイヤの符号化の際に行うようにすることにより、DRAMからベースレイヤの符号化に関する情報を読み出さずにIL処理を行うことができる。したがって、図23を参照して説明したように、図7に示されるSHVCの場合に比べて、DRAM(BLフレームメモリ321)へのメモリアクセス量(メモリバスの帯域使用量)を低減させることができる。
また、ベースレイヤの符号化に関する情報をSRAMから読み出してIL処理を行うことができるため、ベースレイヤの符号化に関する情報をDRAMから読み出すSHVCの場合に比べて、IL処理をより高速に行うことができる。
さらに、このように符号化を行うことにより、図8に示されるSHVCの場合のようにベースレイヤに対する処理の終了を待たずに、IL処理を開始することができる。つまり、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように階層符号化を行うことにより、SHVCの場合に比べて符号化の負荷を低減させることができる。
なお、BLフレームメモリ321とELフレームメモリ371とは、互いに異なるDRAMを用いて実現するようにしてもよいし、図23の例のように、1つのDRAMの互いに異なる領域を用いて実現するようにしてもよい。もちろん、DRAMは一例であり、DRAM以外の任意の記憶媒体を用いてBLフレームメモリ321とELフレームメモリ371とを実現するようにしてもよい。
また、図24の制御部301乃至多重化部304のうち複数の処理部を1つのプロセッサ(例えばCPU)により実現するようにしてもよい。その場合、例えば、そのプロセッサを時分割して、各処理部として機能するようにしてもよい。例えば、ベースレイヤ画像符号化部302とエンハンスメントレイヤ画像符号化部303とを、時分割した1つのプロセッサ(例えばCPU)により実現するようにしてもよい。なお、そのプロセッサが例えば複数のコアを有する等、複数の処理を並行して実行することができる場合は、各処理部を並行して実現するようにしてもよい。
<7.第4の実施の形態>
<階層画像復号装置>
図29は、本技術を適用した画像処理装置の一態様である階層画像復号装置の構成の一例を示すブロック図である。図29に示される階層画像復号装置400は、上述した第2の復号方法により階層画像を復号するように構成される画像処理装置である。つまり、階層画像復号装置400は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って符号化された階層画像の符号化データを復号することができる。ただし、階層画像復号装置400は、ベースレイヤの復号の際にIL処理を行う。
<階層画像復号装置>
図29は、本技術を適用した画像処理装置の一態様である階層画像復号装置の構成の一例を示すブロック図である。図29に示される階層画像復号装置400は、上述した第2の復号方法により階層画像を復号するように構成される画像処理装置である。つまり、階層画像復号装置400は、SHVCのようにレイヤ間の相関性を利用するインターレイヤ予測を行って符号化された階層画像の符号化データを復号することができる。ただし、階層画像復号装置400は、ベースレイヤの復号の際にIL処理を行う。
図29に示されるように、階層画像復号装置400は、逆多重化部401、制御部402、ベースレイヤ画像復号部403、およびエンハンスメントレイヤ画像復号部404を有する。なお、図29においては、処理部やデータの流れ等の主なものを示しており、図29に示されるものが全てとは限らない。つまり、階層画像復号装置400において、図29においてブロックとして示されていない処理部が存在したり、図29において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
逆多重化部401は、逆多重化部201の場合と基本的に同様に、逆多重化に関する処理を行う。例えば、逆多重化部401は、階層画像符号化データを受け付け、それを逆多重化して、BL符号化データ、EL符号化データ、階層復号に関する制御情報に分離する。逆多重化部401は、階層復号に関する制御情報を制御部402に供給し、BL符号化データをベースレイヤ画像復号部403に供給し、EL符号化データをエンハンスメントレイヤ画像復号部404に供給する。
制御部402は、制御部202の場合と基本的に同様に、全レイヤ共通の情報に関する処理を行う。ただし、制御部402は、例えば、階層復号に関する制御情報からベースレイヤに関する制御情報を抽出し、それをベースレイヤ画像復号部403に供給してベースレイヤの復号を制御する。例えば、制御部402は、BL情報、EL情報、IL処理に関する制御情報をベースレイヤ画像復号部403に供給して、IL処理を制御する。また、例えば、制御部402は、階層復号に関する制御情報からエンハンスメントレイヤに関する制御情報を抽出し、それをエンハンスメントレイヤ画像復号部404に供給してエンハンスメントレイヤの復号を制御する。
ベースレイヤ画像復号部403は、制御部402に制御されて、ベースレイヤ画像復号部203の場合と基本的に同様に、ベースレイヤの復号に関する処理を行い、BL符号化データを、イントラ予測やインター予測等の予測を用いて、他のレイヤの情報を用いずに復号し、BL復号画像データを生成し、それを階層画像復号装置400の外部に出力する。
ただし、ベースレイヤ画像復号部403は、例えば、その復号の際にIL処理を行い、ベースレイヤの復号に関する情報のスケーラブルなパラメータをベースレイヤ基準からエンハンスメントレイヤ基準に変換する。ベースレイヤ画像復号部403は、そのIL処理により得られた変換後の復号に関する情報をエンハンスメントレイヤ画像符号化部404に供給する。
ベースレイヤ画像復号部403は、制御部402から供給される制御情報に基づいて処理を行うため、これらの処理を、符号化の際の設定に対応する設定で行うことができる。
エンハンスメントレイヤ画像復号部404は、制御部402に制御されて、エンハンスメントレイヤ画像復号部204の場合と基本的に同様に、エンハンスメントレイヤの復号に関する処理を行い、EL符号化データを、イントラ予測、インター予測、インターレイヤ予測等を用いて復号してEL復号画像データを生成し、それを階層画像復号装置400の外部に出力する。エンハンスメントレイヤ画像復号部404は、ベースレイヤ画像復号部403から取得した変換後の符号化に関する情報を適宜利用してこの復号を行う。
エンハンスメントレイヤ画像復号部404は、制御部402から供給される制御情報に基づいて処理を行うため、これらの処理を、符号化の際の設定に対応する設定で行うことができる。
<ベースレイヤ画像復号部>
図30は、図29のベースレイヤ画像復号部403の主な構成例を示すブロック図である。なお、図30においては、処理部やデータの流れ等の主なものを示しており、図30に示されるものが全てとは限らない。つまり、ベースレイヤ画像復号部403において、図30においてブロックとして示されていない処理部が存在したり、図30において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図30は、図29のベースレイヤ画像復号部403の主な構成例を示すブロック図である。なお、図30においては、処理部やデータの流れ等の主なものを示しており、図30に示されるものが全てとは限らない。つまり、ベースレイヤ画像復号部403において、図30においてブロックとして示されていない処理部が存在したり、図30において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図30に示されるようにベースレイヤ画像復号部403は、蓄積バッファ411、復号部412、逆量子化部413、逆直交変換部414、演算部415、フィルタ416、画面並べ替えバッファ417を有する。また、ベースレイヤ画像復号部403は、BLフレームメモリ418、イントラ予測部419、インター予測部420、および予測画像選択部421を有する。
これらの各処理部は、蓄積バッファ211乃至予測画像選択部221(図17)の各処理部にそれぞれ対応し、基本的に同様の構成を有し、基本的に同様の処理を行う。
また、ベースレイヤ画像復号部403は、IL処理部431を有する。フィルタ416は、フィルタ処理結果(BL復号画像データ)を、BLフレームメモリ418だけでなく、このIL処理部431にも、ベースレイヤの復号に関する情報として供給する。また、最適な予測モードとしてインター予測モードが選択された場合、インター予測部420は、そのインター予測モードの動きベクトル等を含むBL動き情報をBLフレームメモリ418だけでなく、IL処理部431にも、ベースレイヤの復号に関する情報として供給する。このBL動き情報は、例えば、動きベクトルの符号化等に利用される。
IL処理部431は、IL処理に関する処理を行う。例えば、IL処理部431は、制御部402(図29)から供給されるBL情報、EL情報、制御情報等を取得する。また、例えば、IL処理部431は、供給されたベースレイヤの復号に関する情報に対してIL処理を行い、そのスケーラブルなパラメータの値をベースレイヤ基準の値からエンハンスメントレイヤ基準の値に変換する。つまり、IL処理部431は、IL処理部281の場合と基本的に同様にIL処理を行い、変換後の復号に関する情報(例えばIL画像データやIL動き情報等)を生成する。IL処理部431は、その変換後の復号に関する情報をエンハンスメントレイヤ画像復号部204に供給する。
<エンハンスメントレイヤ画像符号化部>
図31は、図29のエンハンスメントレイヤ画像復号部404の主な構成例を示すブロック図である。なお、図31においては、処理部やデータの流れ等の主なものを示しており、図31に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像復号部404において、図31においてブロックとして示されていない処理部が存在したり、図31において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図31は、図29のエンハンスメントレイヤ画像復号部404の主な構成例を示すブロック図である。なお、図31においては、処理部やデータの流れ等の主なものを示しており、図31に示されるものが全てとは限らない。つまり、エンハンスメントレイヤ画像復号部404において、図31においてブロックとして示されていない処理部が存在したり、図31において矢印等として示されていない処理やデータの流れが存在したりしてもよい。
図31に示されるようにエンハンスメントレイヤ画像復号部404は、蓄積バッファ461、復号部462、逆量子化部463、逆直交変換部464、演算部465、フィルタ466、画面並べ替えバッファ467を有する。また、エンハンスメントレイヤ画像復号部404は、イントラ予測部469、インター予測部470、予測画像選択部471、およびインターレイヤ予測部482を有する。これらの各処理部は、蓄積バッファ261乃至予測画像選択部271、並びにインターレイヤ予測部282(図18)の各処理部にそれぞれ対応し、基本的に同様の構成を有し、基本的に同様の処理を行う。
つまり、エンハンスメントレイヤ画像復号部404は、IL処理部281に対応する処理部を有していない。上述したようにIL処理はベースレイヤ画像復号部403において行われる。ベースレイヤ画像復号部403からは、変換後の復号に関する情報(例えば、IL画像データやIL動き情報等)が供給される。この変換後の復号に関する情報は、ELフレームメモリ468に供給され、記憶される。
インター予測部470およびインターレイヤ予測部482は、エンハンスメントレイヤの復号に関する情報だけでなく、変換後の復号に関する情報も、このELフレームメモリ468から取得する。
<ベースレイヤ画像復号処理の流れ>
階層画像復号装置400による階層画像復号処理は、階層画像復号装置200の場合と基本的に同様に実行され、その流れは、図19のフローチャートと同様であるので、その説明は省略する。
階層画像復号装置400による階層画像復号処理は、階層画像復号装置200の場合と基本的に同様に実行され、その流れは、図19のフローチャートと同様であるので、その説明は省略する。
次に、図32のフローチャートを参照して、階層画像復号処理(図19)のステップS203により実行されるベースレイヤ(BL)画像復号処理の流れの例を説明する。
BL画像復号処理が開始されると、ステップS401において、IL処理部431は、制御部402(図29)から供給されるBL情報、EL情報、制御情報を取得する。
ステップS402乃至ステップS410の各処理は、ステップS221乃至ステップS229の各処理(図20)と基本的に同様に行われる。
つまり、ステップS402において、蓄積バッファ411は、BL符号化データを蓄積する。ステップS403において、復号部412は、そのBL符号化データを、その符号化方式に対応する方式で復号し、量子化データを得る。ステップS404において、逆量子化部413は、その量子化データを、その量子化方式に対応する方式で逆量子化し、直交変換係数を得る。ステップS405において、逆直交変換部414は、その直交変換係数を、その直交変換方式に対応する方式で逆直交変換し、残差データを復元する。
ステップS406において、イントラ予測部419若しくはインター予測部420は、ステップS403において得られる最適な予測モードに関する情報に基づいて、イントラ予測モード若しくはインター予測モードで予測画像を生成する。つまり、例えば符号化の際にイントラ予測が採用された場合、イントラ予測部419がイントラ予測を行って予測画像を生成する。また、例えば符号化の際にインター予測が採用された場合、インター予測部420がインター予測を行って予測画像を生成する。
インター予測が行われた場合、ステップS407において、インター予測部420は、ステップS406においてインター予測を行った際に復元した動きベクトル等を含むBL動き情報を、ベースレイヤの復号に関する情報としてBLフレームメモリ418に供給し、記憶させる。なお、ステップS406においてイントラ予測が行われた場合、このステップS407の処理は省略される。
ステップS408において、演算部415は、ステップS405において復元された残差データと、ステップS406において生成された予測画像とを加算し、再構成画像を得る。ステップS409において、フィルタ416は、その再構成画像に対してフィルタ処理を行い、復号画像(BL復号画像データ)を得る。ステップS410において、フィルタ416は、得られたBL復号画像データを、ベースレイヤの復号に関する情報としてBLフレームメモリ418に供給し、記憶させる。
ステップS411において、IL処理部431は、ステップS401において取得したBL情報、EL情報、制御情報等に基づいて、ステップS409において得られたBL復号画像データやステップS406において得られたBL動き情報に対してIL処理を行い、IL画像データやIL動き情報を得る。
ステップS412において、IL処理部431は、ステップS411において得られた変換後の復号に関する情報をELフレームメモリ468(図31)に供給し、記憶させる。例えば、IL処理部431は、ステップS411において得られたIL画像データやIL動き情報をELフレームメモリ468に供給し、記憶させる。
ステップS413において、画面並べ替えバッファ417は、ステップS409の処理により得られた復号画像の並べ替えを行い、フレームの順序を、元の表示の順序(符号化の際に並べ替えられる前の順序)に並べ替える。
ステップS413の処理が終了すると、BL画像復号処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<エンハンスメントレイヤ画像復号処理の流れ>
次に、図33のフローチャートを参照して、階層画像復号処理(図19)のステップS204により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
次に、図33のフローチャートを参照して、階層画像復号処理(図19)のステップS204により実行されるエンハンスメントレイヤ(EL)画像符号化処理の流れの例を説明する。
ステップS431乃至ステップS434の各処理は、ステップS252乃至ステップS255の各処理(図21)と基本的に同様に行われる。
つまり、ステップS431において、蓄積バッファ461は、EL符号化データを蓄積する。ステップS432において、復号部462は、そのEL符号化データを、その符号化方式に対応する方式で復号し、量子化データを得る。ステップS433において、逆量子化部463は、その量子化データを、その量子化方式に対応する方式で逆量子化し、直交変換係数を得る。ステップS434において、逆直交変換部464は、その直交変換係数を、その直交変換方式に対応する方式で逆直交変換し、残差データを復元する。
ステップS435において、イントラ予測部469、インター予測部470、若しくはインターレイヤ予測部482は、ステップS432において得られる最適な予測モードに関する情報に基づいて、イントラ予測モード、インター予測モード、若しくはインターレイヤ予測モードで予測画像を生成する。つまり、例えば符号化の際にイントラ予測が採用された場合、イントラ予測部469がイントラ予測を行って予測画像を生成する。また、例えば符号化の際にインター予測が採用された場合、インター予測部470がインター予測を行って予測画像を生成する。さらに、例えば符号化の際にインターレイヤ予測が採用された場合、インターレイヤ予測部482がインターレイヤ予測を行って予測画像を生成する。
その際、インター予測部470は、必要に応じて、ELフレームメモリ468からエンハンスメントレイヤの復号に関する情報(例えばEL復号画像データやEL動き情報等)や変換後の復号に関する情報(例えばIL動き情報等)を取得し、利用することができる。同様に、インターレイヤ予測部482も、必要に応じて、ELフレームメモリ468から変換後の復号に関する情報(例えばIL復号画像データやIL動き情報等)やエンハンスメントレイヤの復号に関する情報(例えばEL動き情報等)を取得し、利用することができる。
ステップS435においてインター予測が行われた場合、ステップS436において、インター予測部470は、そのインター予測において復元した動きベクトル等を含むEL動き情報を、エンハンスメントレイヤの復号に関する情報としてELフレームメモリ468に供給し、記憶させる。また、ステップS435においてインターレイヤ予測が行われた場合、ステップS436において、インターレイヤ予測部482は、そのインターレイヤ予測において復元した動きベクトル等を含むEL動き情報を、エンハンスメントレイヤの復号に関する情報としてELフレームメモリ468に供給し、記憶させる。なお、ステップS435においてイントラ予測が行われた場合、このステップS436の処理は省略される。
ステップS437乃至ステップS440の各処理は、ステップS271乃至ステップS274の各処理(図22)と基本的に同様に行われる。
つまり、ステップS437において、演算部465は、ステップS434において復元された残差データと、ステップS435において生成された予測画像とを加算し、再構成画像を得る。ステップS438において、フィルタ466は、その再構成画像に対してフィルタ処理を行い、復号画像(EL復号画像データ)を得る。ステップS439において、フィルタ466は、得られたEL復号画像データを、エンハンスメントレイヤの復号に関する情報としてELフレームメモリ468に供給し、記憶させる。ステップS440において、画面並べ替えバッファ467は、ステップS438の処理により得られた復号画像の並べ替えを行い、フレームの順序を、元の表示の順序(符号化の際に並べ替えられる前の順序)に並べ替える。
ステップS440の処理が終了すると、EL画像復号処理が終了する。
なお、これらの各処理の処理単位は任意であり、互いに同一でなくてもよい。したがって、各ステップの処理は、適宜、他のステップの処理等と並行して、または、処理順を入れ替えて実行することもできる。
<負荷の低減>
以上のように階層復号を行うことにより、IL処理をベースレイヤの復号の際に行うことができる。
以上のように階層復号を行うことにより、IL処理をベースレイヤの復号の際に行うことができる。
ところで、階層画像復号装置400の場合も、階層画像符号化装置100の場合と同様に、各処理部のメモリはSRAMで実現するが、BLフレームメモリ418やELフレームメモリ468はDRAMを用いて実現されることが一般的である。
ただし、そうすると、SRAMを利用する場合に比べてデータの読み出しや書き込みが低速になるため、図7を参照して説明したように、BLフレームメモリ418やELフレームメモリ468へのアクセス量(読出しや書き込みの量)が増大すると、その分、全体の処理時間が増大するおそれがあった。また、安価とはいえ、書き込むデータ量が増大する程、DRAMの容量を増大させなければならず、コストが増大するおそれがあった。
上述したようにIL処理をベースレイヤの復号の際に行うようにすることにより、DRAMからベースレイヤの符号化に関する情報を読み出さずにIL処理を行うことができる。したがって、図23を参照して説明したように、図7に示されるSHVCの場合に比べて、DRAM(BLフレームメモリ418)へのメモリアクセス量(メモリバスの帯域使用量)を低減させることができる。
また、ベースレイヤの復号に関する情報をSRAMから読み出してIL処理を行うことができるため、ベースレイヤの復号に関する情報をDRAMから読み出すSHVCの場合に比べて、IL処理をより高速に行うことができる。
さらに、このように復号を行うことにより、図8に示されるSHVCの場合のようにベースレイヤに対する処理の終了を待たずに、IL処理を開始することができる。つまり、不要な待ち時間を低減させ、全体の処理時間を低減させることができる。
つまり、以上のように階層復号を行うことにより、SHVCの場合に比べて復号の負荷を低減させることができる。
なお、BLフレームメモリ418とELフレームメモリ468とは、互いに異なるDRAMを用いて実現するようにしてもよいし、図23の例のように、1つのDRAMの互いに異なる領域を用いて実現するようにしてもよい。もちろん、DRAMは一例であり、DRAM以外の任意の記憶媒体を用いてBLフレームメモリ418とELフレームメモリ468とを実現するようにしてもよい。
また、図29の逆多重化部401乃至エンハンスメントレイヤ画像復号部404のうち複数の処理部を1つのプロセッサ(例えばCPU)により実現するようにしてもよい。その場合、例えば、そのプロセッサを時分割して、各処理部として機能するようにしてもよい。例えば、ベースレイヤ画像復号部403とエンハンスメントレイヤ画像復号部404とを、時分割した1つのプロセッサ(例えばCPU)により実現するようにしてもよい。なお、そのプロセッサが例えば複数のコアを有する等、複数の処理を並行して実行することができる場合は、各処理部を並行して実現するようにしてもよい。
<8.応用例>
<符号化と復号の対応関係>
以上において第1の符号化・復号方法と、第2の符号化・復号方法について説明したが、これらの方法において生成される符号化データの仕様は同様であるので、符号化と復号において、これらの方法を統一しておく必要はない。つまり、階層画像符号化装置100により生成された階層画像符号化データは、階層画像復号装置200により復号することもできるし、階層画像復号装置400により復号することもできる。同様に、階層画像符号化装置300により生成された階層画像符号化データは、階層画像復号装置200により復号することもできるし、階層画像復号装置400により復号することもできる。
<符号化と復号の対応関係>
以上において第1の符号化・復号方法と、第2の符号化・復号方法について説明したが、これらの方法において生成される符号化データの仕様は同様であるので、符号化と復号において、これらの方法を統一しておく必要はない。つまり、階層画像符号化装置100により生成された階層画像符号化データは、階層画像復号装置200により復号することもできるし、階層画像復号装置400により復号することもできる。同様に、階層画像符号化装置300により生成された階層画像符号化データは、階層画像復号装置200により復号することもできるし、階層画像復号装置400により復号することもできる。
また、SHVCの符号化・復号に本技術を適用することにより、第1の符号化方法や第2の符号化方法において生成される符号化データの仕様をSHVCと同様とすることもできる。つまり、IL処理に関する部分以外をSHVCと同様に行うことにより、階層画像復号装置200や階層画像復号装置400は、HVCに準拠した階層画像符号化装置により生成された階層符号化データを復号することができる。また、SHVCに準拠した階層画像復号装置は、階層画像符号化装置100や階層画像符号化装置300により生成された階層符号化データを復号することができる。
<階層画像符号化装置の構成>
なお、本技術は、SHVC以外の符号化・復号に適用することもできる。つまり、本技術を適用することができる階層画像符号化装置の構成は、上述した階層画像符号化装置100や階層画像符号化装置300の構成例に限定されない。
なお、本技術は、SHVC以外の符号化・復号に適用することもできる。つまり、本技術を適用することができる階層画像符号化装置の構成は、上述した階層画像符号化装置100や階層画像符号化装置300の構成例に限定されない。
例えば、表示順のフレームが符号化順に並べかられて符号化されるように説明したが、このフレームの並べ替えは省略するようにしてもよい。その場合、例えば、階層画像符号化装置100において画面並べ替えバッファ111や画面並べ替えバッファ161(階層画像符号化装置300において画面並べ替えバッファ311や画面並べ替えバッファ361)を省略するようにしてもよい。
また、直交変換や逆直交変換の方法は任意である。例えば、離散コサイン変換やカルーネン・レーベ変換等の直交変換・逆直交変換が行われるようにしてもよい。また、直交変換や逆直交変換を省略するようにしてもよい。その場合、例えば、階層画像符号化装置100において直交変換部113、逆直交変換部118、直交変換部163、逆直交変換部168(階層画像符号化装置300において直交変換部313、逆直交変換部318、直交変換部363、逆直交変換部368)を省略するようにしてもよい。
また、量子化や逆量子化の方法も任意である。また、量子化や逆量子化を省略するようにしてもよい。その場合、例えば、階層画像符号化装置100において量子化部114、逆量子化部117、量子化部164、逆量子化部167(階層画像符号化装置300において量子化部314、逆量子化部317、量子化部364、逆量子化部367)を省略するようにしてもよい。
また、符号化データの蓄積を省略するようにしてもよい。その場合、例えば、階層画像符号化装置100において蓄積バッファ116、蓄積バッファ166(階層画像符号化装置300において蓄積バッファ316。蓄積バッファ366)を省略するようにしてもよい。
また、フィルタ処理の内容は任意である。例えば、ウィナーフィルタ(Wiener Filter)を用いた適応ループフィルタ処理により画質改善が行われるようにしてもよい。また例えば、サンプルアダプティブオフセット(SAO(Sample Adaptive Offset))処理により、動き補償フィルタに起因するリンキングの低減や、デコード画面に発生する場合のある画素値のずれの補正が行われるようにしてもよい。また、これら以外のフィルタ処理が行われるようにしてもよい。また、複数のフィルタ処理が行われるようにしてもよい。また、フィルタ処理を省略するようにしてもよい。その場合、例えば、階層画像符号化装置100においてフィルタ120、フィルタ170(階層画像符号化装置300においてフィルタ320、フィルタ370)を省略するようにしてもよい。
また、予測画像を生成する予測処理の方法は任意である。イントラ予測、インター予測、およびインターレイヤ予測以外の方法でも予測画像が生成されるようにしてもよい。また、イントラ予測が行われないようにしてもよい。その場合、例えば、階層画像符号化装置100においてイントラ予測部122、イントラ予測部172(階層画像符号化装置300においてイントラ予測部322、イントラ予測部372)を省略するようにしてもよい。
また、量子化データ等の画像に関する情報の符号化の方式は任意である。例えば、可逆な符号化方式により符号化するようにしてもよい。例えば、可変長符号化や算術符号化等を適用するようにしてもよい。例えば、その可変長符号化として、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)を適用するようにしてもよい。例えば、その算術符号化として、CABAC(Context-Adaptive Binary Arithmetic Coding)を適用するようにしてもよい。また、複数の符号化方法を組み合わせて用いるようにしてもよい。
また、レート制御を行わないようにしてもよい。その場合、例えば、階層画像符号化装置100においてレート制御部125、レート制御部175(階層画像符号化装置300においてレート制御部325、レート制御部375)を省略するようにしてもよい。
<階層画像復号装置の構成>
同様に、本技術を適用することができる階層画像復号装置の構成は、上述した階層画像復号装置200や階層画像復号装置400の構成例に限定されない。
同様に、本技術を適用することができる階層画像復号装置の構成は、上述した階層画像復号装置200や階層画像復号装置400の構成例に限定されない。
例えば、符号化データの蓄積を省略するようにしてもよい。その場合、例えば、階層画像復号装置200において蓄積バッファ211、蓄積バッファ261(階層画像復号装置400において蓄積バッファ411、蓄積バッファ461)を省略するようにしてもよい。
また、符号化データの復号の方式は、その符号化方式に対応する方法であれば任意である。例えば、可逆な復号方式により復号するようにしてもよい。例えば、可変長復号や算術復号等を適用するようにしてもよい。例えば、その可変長復号として、H.264/AVC方式で定められているCAVLCを適用するようにしてもよい。例えば、その算術復号として、CABACを適用するようにしてもよい。また、複数の復号方法を組み合わせて用いるようにしてもよい。
また、逆量子化の方法は、符号化の際の量子化の方法に対応する方法であれば任意である。また、符号化の際に量子化が行われていないのであれば、逆量子化を省略することもできる。その場合、例えば、階層画像復号装置200において逆量子化部213、逆量子化部263(階層画像復号装置400において逆量子化部413、逆量子化部463)を省略するようにしてもよい。
また、逆直交変換の方法は、符号化の際の直交変換の方法に対応する方法であれば任意である。例えば、離散コサイン変換やカルーネン・レーベ変換等の逆直交変換が行われるようにしてもよい。また、符号化の際に直交変換が行われていないのであれば、逆直交変換を省略することもできる。その場合、例えば、階層画像復号装置200において逆直交変換部214、逆直交変換部264(階層画像復号装置400において逆直交変換部414、逆直交変換部464)を省略するようにしてもよい。
また、予測画像を生成する際の予測方法は、符号化の際の予測方法に対応する方法であれば任意である。例えば、イントラ予測、インター予測、インターレイヤ予測以外の予測が行われるようにしてもよい。また、符号化の際にイントラ予測が行われないのであれば、イントラ予測を省略することもできる。その場合、例えば、階層画像復号装置200においてイントラ予測部219、イントラ予測部269(階層画像復号装置400においてイントラ予測部419、イントラ予測部469)を省略するようにしてもよい。
また、フィルタ処理の内容は、符号化の際に行われるフィルタ処理に対応するものであれば、任意である。例えば、ウィナーフィルタ(Wiener Filter)を用いた適応ループフィルタ処理、サンプルアダプティブオフセット(SAO(Sample Adaptive Offset))処理等が行われるようにしてもよい。また、これら以外のフィルタ処理が行われるようにしてもよい。また、複数のフィルタ処理が行われるようにしてもよい。さらに、符号化の際にフィルタ処理が行われないのであれば、フィルタ処理を省略することもできる。その場合、例えば、階層画像復号装置200においてフィルタ216、フィルタ266(階層画像復号装置400においてフィルタ416、フィルタ466)を省略するようにしてもよい。
また、符号化の際に表示順のフレームの並べ替えが行われないのであれば、復号の際もこのフレームの並べ替えを省略することができる。その場合、例えば、階層画像復号装置200において画面並べ替えバッファ217、画面並べ替えバッファ267(階層画像復号装置400において画面並べ替えバッファ417、画面並べ替えバッファ467)を省略するようにしてもよい。
<第1の方法と第2の方法の併用>
なお、上述した第1の符号化・復号方法と、第2の符号化・復号方法との両方を適用するようにしてもよい。例えば、シーケンス、ピクチャ、スライス等の途中において、第1の符号化・復号方法と、第2の符号化・復号方法とを切り替えることができるようにしてもよい。例えば、初期状態として第2の符号化・復号方法を適用し、ベースレイヤの符号化・復号の処理遅延が増大した場合に、第1の符号化・復号方法に切り替え、ベースレイヤの符号化・復号の負荷を低減させるようにしてもよい。もちろん、この逆の切り替えを行い、エンハンスメントレイヤの符号化・復号の負荷を低減させるようにしてもよい。
なお、上述した第1の符号化・復号方法と、第2の符号化・復号方法との両方を適用するようにしてもよい。例えば、シーケンス、ピクチャ、スライス等の途中において、第1の符号化・復号方法と、第2の符号化・復号方法とを切り替えることができるようにしてもよい。例えば、初期状態として第2の符号化・復号方法を適用し、ベースレイヤの符号化・復号の処理遅延が増大した場合に、第1の符号化・復号方法に切り替え、ベースレイヤの符号化・復号の負荷を低減させるようにしてもよい。もちろん、この逆の切り替えを行い、エンハンスメントレイヤの符号化・復号の負荷を低減させるようにしてもよい。
また、例えば、シーケンス、ピクチャ、スライス、ライン、ブロック等、任意の処理単位(データ単位)毎に、第1の符号化・復号方法と、第2の符号化・復号方法とを選択することができるようにしてもよい。
<階層>
以上においては、SHVCのような階層符号化・階層復号技術の、ベースレイヤの符号化・復号と、エンハンスメントレイヤの符号化・復号に、本技術を適用するように説明したが、本技術は、階層符号化・階層復号における、一方の階層の符号化・復号の際に他方の階層を参照する任意の2階層の符号化・復号に適用することができる。例えば、エンハンスメントレイヤの符号化・復号と、そのエンハンスメントレイヤを参照する他のエンハンスメントレイヤの符号化・復号とに本技術を適用するようにしてもよい。また、ベースレイヤおよびエンハンスメントレイヤ以外のレイヤの符号化・復号に本技術を適用するようにしてもよい。
以上においては、SHVCのような階層符号化・階層復号技術の、ベースレイヤの符号化・復号と、エンハンスメントレイヤの符号化・復号に、本技術を適用するように説明したが、本技術は、階層符号化・階層復号における、一方の階層の符号化・復号の際に他方の階層を参照する任意の2階層の符号化・復号に適用することができる。例えば、エンハンスメントレイヤの符号化・復号と、そのエンハンスメントレイヤを参照する他のエンハンスメントレイヤの符号化・復号とに本技術を適用するようにしてもよい。また、ベースレイヤおよびエンハンスメントレイヤ以外のレイヤの符号化・復号に本技術を適用するようにしてもよい。
つまり、本技術は、第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、第1のレイヤに対する符号化・復号と、その第1のレイヤを参照する第2のレイヤの符号化・復号とに適用することができる。例えば、上述したSHVCの場合、第1のレイヤをベースレイヤとし、第2のレイヤをそのベースレイヤを参照するエンハンスメントレイヤとすることができる。
<9.第5の実施の形態>
<制御情報>
以上においては、階層画像符号化装置と階層画像復号装置とが互いに独立に処理を行うように説明したが、符号化側から復号側に制御情報を供給し、復号を制御するようにしてもよい。例えば、階層画像符号化装置が、復号処理を制御する制御情報を、パラメータセットやヘッダ情報等として階層画像符号化データに関連付けて、階層画像復号装置に供給するようにしてもよい。そして、階層画像復号装置がその制御情報に基づいて復号を実行するようにしてもよい。
<制御情報>
以上においては、階層画像符号化装置と階層画像復号装置とが互いに独立に処理を行うように説明したが、符号化側から復号側に制御情報を供給し、復号を制御するようにしてもよい。例えば、階層画像符号化装置が、復号処理を制御する制御情報を、パラメータセットやヘッダ情報等として階層画像符号化データに関連付けて、階層画像復号装置に供給するようにしてもよい。そして、階層画像復号装置がその制御情報に基づいて復号を実行するようにしてもよい。
この制御情報の内容は任意である。例えば、階層画像復号装置が第1の復号方法と第2の復号方法のいずれの方法により階層画像符号化データを復号するかを指定する制御情報を、上述のように符号化側から復号側に供給するようにしてもよい。また、その制御情報が、例えば、第1の復号方法と、第2の復号方法と、その他の復号方法(例えばSHVCに準拠した復号方法)のいずれかの方法を指定するようにしてもよい。さらに、例えば、復号方法を切り替えることを許可(若しくは禁止)するか否かを指定する制御情報や、初期設定とする復号方法を指定する制御情報を、符号化側から復号側に供給するようにしてもよい。また、例えば、エンハンスメントレイヤの処理におけるインターレイヤ処理が許可(若しくは禁止)されているか否か、どの程度行われるか等の、インターレイヤに関する制御情報を、上述のように符号化側から復号側に供給するようにしてもよい。
<10.その他>
<多視点画像符号化・復号システムへの適用>
以上においては階層符号化・階層復号の場合について本技術を説明したが、上述した一連の処理は、多視点画像符号化・復号システムに適用することができる。図34は、多視点画像符号化方式の一例を示す。
<多視点画像符号化・復号システムへの適用>
以上においては階層符号化・階層復号の場合について本技術を説明したが、上述した一連の処理は、多視点画像符号化・復号システムに適用することができる。図34は、多視点画像符号化方式の一例を示す。
図34に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの情報を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの情報を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューの符号化・復号は、ベースビューの情報を利用するようにしても良いし、他のノンベースビューの情報を利用するようにしてもよい。
図34に示されるように多視点画像は、上述した階層画像と構造が似ており、上述した階層画像の場合と基本的に同様の方法で符号化・復号することができる。つまり、上述した階層画像符号化・階層画像復号における「レイヤ」を「ビュー」に置き換えれば、多視点画像も階層画像の場合と同様に符号化・復号することができる。
したがって、多視点画像の符号化・復号においても、上述した階層画像の符号化・復号の場合と同様に、本技術を適用することができる。つまり、本技術を適用することにより、多視点画像の符号化・復号の負荷を低減させることができる。
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図35は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図35に示されるコンピュータ800において、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804を介して相互に接続されている。
バス804にはまた、入出力インタフェース810も接続されている。入出力インタフェース810には、入力部811、出力部812、記憶部813、通信部814、およびドライブ815が接続されている。
入力部811は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部812は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部813は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部814は、例えば、ネットワークインタフェースよりなる。ドライブ815は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア821を駆動する。
以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部813に記憶されているプログラムを、入出力インタフェース810およびバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア821に記録して適用することができる。その場合、プログラムは、リムーバブルメディア821をドライブ815に装着することにより、入出力インタフェース810を介して、記憶部813にインストールすることができる。
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部814で受信し、記憶部813にインストールすることができる。
その他、このプログラムは、ROM802や記憶部813に、あらかじめインストールしておくこともできる。
<本技術の応用>
上述した実施形態に係る階層画像符号化装置100や階層画像復号装置200は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機や受信機、または、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置や、これら記憶媒体から画像を再生する再生装置などの、様々な電子機器に応用され得る。
上述した実施形態に係る階層画像符号化装置100や階層画像復号装置200は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機や受信機、または、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置や、これら記憶媒体から画像を再生する再生装置などの、様々な電子機器に応用され得る。
また、本技術は、例えば、交通、医療、防犯、農業、畜産業、鉱業、美容、工場、家電、気象、自然監視等、任意の分野の画像処理システムに適用することができる。例えば、本技術は、ディジタルカメラや、カメラ機能付きの携帯機器等を用いる、鑑賞の用に供される画像を撮影するシステムにも適用することができる。また、例えば、本技術は、自動停止等の安全運転や、運転者の状態の認識等のために、自動車の前方や後方、周囲、車内等を撮影する車載用システム、走行車両や道路を監視する監視カメラシステム、車両間等の測距を行う測距システム等の、交通の用に供されるシステムにも適用することができる。さらに、例えば、本技術は、防犯用途の監視カメラや、人物認証用途のカメラ等を用いる、セキュリティの用に供されるシステムにも適用することができる。また、例えば、本技術は、ウェアラブルカメラ等のようなスポーツ用途等向けに利用可能な各種センサ等を用いる、スポーツの用に供されるシステムにも適用することができる。さらに、例えば、本技術は、畑や作物の状態を監視するためのカメラ等の各種センサを用いる、農業の用に供されるシステムにも適用することができる。また、例えば、本技術は、豚や牛等の家畜の状態を監視するための各種センサを用いる、畜産業の用に供されるシステムにも適用することができる。さらに、本技術は、例えば火山、森林、海洋等の自然の状態を監視するシステムや、例えば天気、気温、湿度、風速、日照時間等を観測する気象観測システムや、例えば鳥類、魚類、ハ虫類、両生類、哺乳類、昆虫、植物等の野生生物の生態を観測するシステム等にも適用することができる。以下において、具体的な4つの応用例について説明する。
<第1の応用例:テレビジョン受像機>
図36は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース(I/F)部909、制御部910、ユーザインタフェース(I/F)部911、及びバス912を備える。
図36は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース(I/F)部909、制御部910、ユーザインタフェース(I/F)部911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース部909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904が、上述した階層画像復号装置200または階層画像復号装置400の機能を有するようにしてもよい。つまり、デコーダ904が、符号化データを、これらの各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、テレビジョン装置900は、復号の負荷を低減させることができる。
また、このように構成されたテレビジョン装置900において、映像信号処理部905が、例えば、デコーダ904から供給される画像データを符号化し、得られた符号化データを、外部インタフェース部909を介してテレビジョン装置900の外部に出力させることができるようにしてもよい。そして、その映像信号処理部905が、上述した階層画像符号化装置100または階層画像符号化装置300の機能を有するようにしてもよい。つまり、映像信号処理部905が、デコーダ904から供給される画像データを、これらの各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、テレビジョン装置900は、符号化の負荷を低減させることができる。
<第2の応用例:携帯電話機>
図37は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
図37は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929に供給し、その記憶媒体に書き込ませる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929に供給し、その記憶媒体に書き込ませる。
さらに、画像表示モードにおいて、記録再生部929は、記憶媒体に記録されている符号化ストリームを読み出して画像処理部927へ出力する。画像処理部927は、記録再生部929から入力される符号化ストリームを復号し、画像データを表示部930に供給し、その画像を表示させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、例えば画像処理部927が、上述した階層画像符号化装置100または階層画像符号化装置300の機能を有するようにしてもよい。つまり、画像処理部927が、画像データを、これらの各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、携帯電話機920は、この符号化の負荷を低減させることができる。
また、このように構成された携帯電話機920において、例えば画像処理部927が、上述した階層画像復号装置200または階層画像復号装置400の機能を有するようにしてもよい。つまり、画像処理部927が、符号化データを、これらの各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、携帯電話機920は、この復号の負荷を低減させることができる。
<第3の応用例:記録再生装置>
図38は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
図38は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース(I/F)部942、エンコーダ943、HDD(Hard Disk Drive)部944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)部948、制御部949、およびユーザインタフェース(I/F)部950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。
外部インタフェース部942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE(Institute of Electrical and Electronic Engineers)1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。即ち、外部インタフェース部942は、記録再生装置940における伝送部としての役割を有する。
エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD部944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD部944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVD(Digital Versatile Disc)ディスク(DVD-Video、DVD-RAM(DVD - Random Access Memory)、DVD-R(DVD - Recordable)、DVD-RW(DVD - Rewritable)、DVD+R(DVD + Recordable)、DVD+RW(DVD + Rewritable)等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像および音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD部948へ出力する。また、デコーダ947は、生成した音声データを外部のスピーカへ出力する。
OSD部948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD部948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置940を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、例えばエンコーダ943が、上述した階層画像符号化装置100または階層画像符号化装置300の機能を有するようにしてもよい。つまり、エンコーダ943が、画像データを、これらの各実施の形態において説明方法で符号化するようにしてもよい。このようにすることにより、記録再生装置940は、この符号化の負荷を低減させることができる。
また、このように構成された記録再生装置940において、例えばデコーダ947が、上述した階層画像復号装置200または階層画像復号装置400の機能を有するようにしてもよい。つまり、デコーダ947が、符号化データを、これらの各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、記録再生装置940は、この復号の負荷を低減させることができる。
<第4の応用例:撮像装置>
図39は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
図39は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース(I/F)部966、メモリ部967、メディアドライブ968、OSD部969、制御部970、ユーザインタフェース(I/F)部971、およびバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース部971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、および制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD部969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD部969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース部966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース部966は、撮像装置960における伝送部としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、例えば画像処理部964が、上述した階層画像符号化装置100または階層画像符号化装置300の機能を有するようにしてもよい。つまり、画像処理部964が、画像データを、これらの各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、撮像装置960は、この符号化の負荷を低減させることができる。
また、このように構成された撮像装置960において、例えば画像処理部964が、上述した階層画像復号装置200または階層画像復号装置400の機能を有するようにしてもよい。つまり、画像処理部964が、符号化データを、これらの各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、撮像装置960は、この復号の負荷を低減させることができる。
<その他の応用例>
なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
また、以上においては、本技術を適用する装置やシステム等の例を説明したが、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
<ビデオセット>
本技術をセットとして実施する場合の例について、図40を参照して説明する。図40は、本技術を適用したビデオセットの概略的な構成の一例を示している。
本技術をセットとして実施する場合の例について、図40を参照して説明する。図40は、本技術を適用したビデオセットの概略的な構成の一例を示している。
近年、電子機器の多機能化が進んでおり、その開発や製造において、その一部の構成を販売や提供等として実施する場合、1機能を有する構成として実施を行う場合だけでなく、関連する機能を有する複数の構成を組み合わせ、複数の機能を有する1セットとして実施を行う場合も多く見られるようになってきた。
図40に示されるビデオセット1300は、このような多機能化された構成であり、画像の符号化や復号(いずれか一方でもよいし、両方でも良い)に関する機能を有するデバイスに、その機能に関連するその他の機能を有するデバイスを組み合わせたものである。
図40に示されるように、ビデオセット1300は、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314等のモジュール群と、コネクティビティ1321、カメラ1322、およびセンサ1323等の関連する機能を有するデバイスとを有する。
モジュールは、互いに関連するいくつかの部品的機能をまとめ、まとまりのある機能を持った部品としたものである。具体的な物理的構成は任意であるが、例えば、それぞれ機能を有する複数のプロセッサ、抵抗やコンデンサ等の電子回路素子、その他のデバイス等を配線基板等に配置して一体化したものが考えられる。また、モジュールに他のモジュールやプロセッサ等を組み合わせて新たなモジュールとすることも考えられる。
図40の例の場合、ビデオモジュール1311は、画像処理に関する機能を有する構成を組み合わせたものであり、アプリケーションプロセッサ、ビデオプロセッサ、ブロードバンドモデム1333、およびRFモジュール1334を有する。
プロセッサは、所定の機能を有する構成をSoC(System On a Chip)により半導体チップに集積したものであり、例えばシステムLSI(Large Scale Integration)等と称されるものもある。この所定の機能を有する構成は、論理回路(ハードウエア構成)であってもよいし、CPU、ROM、RAM等と、それらを用いて実行されるプログラム(ソフトウエア構成)であってもよいし、その両方を組み合わせたものであってもよい。例えば、プロセッサが、論理回路とCPU、ROM、RAM等とを有し、機能の一部を論理回路(ハードウエア構成)により実現し、その他の機能をCPUにおいて実行されるプログラム(ソフトウエア構成)により実現するようにしてもよい。
図40のアプリケーションプロセッサ1331は、画像処理に関するアプリケーションを実行するプロセッサである。このアプリケーションプロセッサ1331において実行されるアプリケーションは、所定の機能を実現するために、演算処理を行うだけでなく、例えばビデオプロセッサ1332等、ビデオモジュール1311内外の構成を必要に応じて制御することもできる。
ビデオプロセッサ1332は、画像の符号化・復号(その一方若しくは両方)に関する機能を有するプロセッサである。
ブロードバンドモデム1333は、インターネットや公衆電話回線網等の広帯域の回線を介して行われる有線若しくは無線(またはその両方)の広帯域通信により送信するデータ(デジタル信号)をデジタル変調する等してアナログ信号に変換したり、その広帯域通信により受信したアナログ信号を復調してデータ(デジタル信号)に変換したりする。ブロードバンドモデム1333は、例えば、ビデオプロセッサ1332が処理する画像データ、画像データが符号化されたストリーム、アプリケーションプログラム、設定データ等、任意の情報を処理する。
RFモジュール1334は、アンテナを介して送受信されるRF(Radio Frequency)信号に対して、周波数変換、変復調、増幅、フィルタ処理等を行うモジュールである。例えば、RFモジュール1334は、ブロードバンドモデム1333により生成されたベースバンド信号に対して周波数変換等を行ってRF信号を生成する。また、例えば、RFモジュール1334は、フロントエンドモジュール1314を介して受信されたRF信号に対して周波数変換等を行ってベースバンド信号を生成する。
なお、図40において点線1341に示されるように、アプリケーションプロセッサ1331とビデオプロセッサ1332を、一体化し、1つのプロセッサとして構成されるようにしてもよい。
外部メモリ1312は、ビデオモジュール1311の外部に設けられた、ビデオモジュール1311により利用される記憶デバイスを有するモジュールである。この外部メモリ1312の記憶デバイスは、どのような物理構成により実現するようにしてもよいが、一般的にフレーム単位の画像データのような大容量のデータの格納に利用されることが多いので、例えばDRAM(Dynamic Random Access Memory)のような比較的安価で大容量の半導体メモリにより実現するのが望ましい。
パワーマネージメントモジュール1313は、ビデオモジュール1311(ビデオモジュール1311内の各構成)への電力供給を管理し、制御する。
フロントエンドモジュール1314は、RFモジュール1334に対してフロントエンド機能(アンテナ側の送受信端の回路)を提供するモジュールである。図40に示されるように、フロントエンドモジュール1314は、例えば、アンテナ部1351、フィルタ1352、および増幅部1353を有する。
アンテナ部1351は、無線信号を送受信するアンテナおよびその周辺の構成を有する。アンテナ部1351は、増幅部1353から供給される信号を無線信号として送信し、受信した無線信号を電気信号(RF信号)としてフィルタ1352に供給する。フィルタ1352は、アンテナ部1351を介して受信されたRF信号に対してフィルタ処理等を行い、処理後のRF信号をRFモジュール1334に供給する。増幅部1353は、RFモジュール1334から供給されるRF信号を増幅し、アンテナ部1351に供給する。
コネクティビティ1321は、外部との接続に関する機能を有するモジュールである。コネクティビティ1321の物理構成は、任意である。例えば、コネクティビティ1321は、ブロードバンドモデム1333が対応する通信規格以外の通信機能を有する構成や、外部入出力端子等を有する。
例えば、コネクティビティ1321が、Bluetooth(登録商標)、IEEE 802.11(例えばWi-Fi(Wireless Fidelity、登録商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等の無線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した信号を送受信するアンテナ等を有するようにしてもよい。また、例えば、コネクティビティ1321が、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)等の有線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した端子を有するようにしてもよい。さらに、例えば、コネクティビティ1321が、アナログ入出力端子等のその他のデータ(信号)伝送機能等を有するようにしてもよい。
なお、コネクティビティ1321が、データ(信号)の伝送先のデバイスを含むようにしてもよい。例えば、コネクティビティ1321が、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等の記録媒体に対してデータの読み出しや書き込みを行うドライブ(リムーバブルメディアのドライブだけでなく、ハードディスク、SSD(Solid State Drive)、NAS(Network Attached Storage)等も含む)を有するようにしてもよい。また、コネクティビティ1321が、画像や音声の出力デバイス(モニタやスピーカ等)を有するようにしてもよい。
カメラ1322は、被写体を撮像し、被写体の画像データを得る機能を有するモジュールである。カメラ1322の撮像により得られた画像データは、例えば、ビデオプロセッサ1332に供給されて符号化される。
センサ1323は、例えば、音声センサ、超音波センサ、光センサ、照度センサ、赤外線センサ、イメージセンサ、回転センサ、角度センサ、角速度センサ、速度センサ、加速度センサ、傾斜センサ、磁気識別センサ、衝撃センサ、温度センサ等、任意のセンサ機能を有するモジュールである。センサ1323により検出されたデータは、例えば、アプリケーションプロセッサ1331に供給されてアプリケーション等により利用される。
以上においてモジュールとして説明した構成をプロセッサとして実現するようにしてもよいし、逆にプロセッサとして説明した構成をモジュールとして実現するようにしてもよい。
以上のような構成のビデオセット1300において、後述するようにビデオプロセッサ1332に本技術を適用することができる。したがって、ビデオセット1300は、本技術を適用したセットとして実施することができる。
<ビデオプロセッサの構成例>
図41は、本技術を適用したビデオプロセッサ1332(図40)の概略的な構成の一例を示している。
図41は、本技術を適用したビデオプロセッサ1332(図40)の概略的な構成の一例を示している。
図41の例の場合、ビデオプロセッサ1332は、ビデオ信号およびオーディオ信号の入力を受けてこれらを所定の方式で符号化する機能と、符号化されたビデオデータおよびオーディオデータを復号し、ビデオ信号およびオーディオ信号を再生出力する機能とを有する。
図41に示されるように、ビデオプロセッサ1332は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、フレームメモリ1405、およびメモリ制御部1406を有する。また、ビデオプロセッサ1332は、エンコード・デコードエンジン1407、ビデオES(Elementary Stream)バッファ1408Aおよび1408B、並びに、オーディオESバッファ1409Aおよび1409Bを有する。さらに、ビデオプロセッサ1332は、オーディオエンコーダ1410、オーディオデコーダ1411、多重化部(MUX(Multiplexer))1412、逆多重化部(DMUX(Demultiplexer))1413、およびストリームバッファ1414を有する。
ビデオ入力処理部1401は、例えばコネクティビティ1321(図40)等から入力されたビデオ信号を取得し、デジタル画像データに変換する。第1画像拡大縮小部1402は、画像データに対してフォーマット変換や画像の拡大縮小処理等を行う。第2画像拡大縮小部1403は、画像データに対して、ビデオ出力処理部1404を介して出力する先でのフォーマットに応じて画像の拡大縮小処理を行ったり、第1画像拡大縮小部1402と同様のフォーマット変換や画像の拡大縮小処理等を行ったりする。ビデオ出力処理部1404は、画像データに対して、フォーマット変換やアナログ信号への変換等を行って、再生されたビデオ信号として例えばコネクティビティ1321等に出力する。
フレームメモリ1405は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、およびエンコード・デコードエンジン1407によって共用される画像データ用のメモリである。フレームメモリ1405は、例えばDRAM等の半導体メモリとして実現される。
メモリ制御部1406は、エンコード・デコードエンジン1407からの同期信号を受けて、アクセス管理テーブル1406Aに書き込まれたフレームメモリ1405へのアクセススケジュールに従ってフレームメモリ1405に対する書き込み・読み出しのアクセスを制御する。アクセス管理テーブル1406Aは、エンコード・デコードエンジン1407、第1画像拡大縮小部1402、第2画像拡大縮小部1403等で実行される処理に応じて、メモリ制御部1406により更新される。
エンコード・デコードエンジン1407は、画像データのエンコード処理、並びに、画像データが符号化されたデータであるビデオストリームのデコード処理を行う。例えば、エンコード・デコードエンジン1407は、フレームメモリ1405から読み出した画像データを符号化し、ビデオストリームとしてビデオESバッファ1408Aに順次書き込む。また、例えば、ビデオESバッファ1408Bからビデオストリームを順次読み出して復号し、画像データとしてフレームメモリ1405に順次書き込む。エンコード・デコードエンジン1407は、これらの符号化や復号において、フレームメモリ1405を作業領域として使用する。また、エンコード・デコードエンジン1407は、例えばマクロブロック毎の処理を開始するタイミングで、メモリ制御部1406に対して同期信号を出力する。
ビデオESバッファ1408Aは、エンコード・デコードエンジン1407によって生成されたビデオストリームをバッファリングして、多重化部(MUX)1412に供給する。ビデオESバッファ1408Bは、逆多重化部(DMUX)1413から供給されたビデオストリームをバッファリングして、エンコード・デコードエンジン1407に供給する。
オーディオESバッファ1409Aは、オーディオエンコーダ1410によって生成されたオーディオストリームをバッファリングして、多重化部(MUX)1412に供給する。オーディオESバッファ1409Bは、逆多重化部(DMUX)1413から供給されたオーディオストリームをバッファリングして、オーディオデコーダ1411に供給する。
オーディオエンコーダ1410は、例えばコネクティビティ1321等から入力されたオーディオ信号を例えばデジタル変換し、例えばMPEGオーディオ方式やAC3(AudioCode number 3)方式等の所定の方式で符号化する。オーディオエンコーダ1410は、オーディオ信号が符号化されたデータであるオーディオストリームをオーディオESバッファ1409Aに順次書き込む。オーディオデコーダ1411は、オーディオESバッファ1409Bから供給されたオーディオストリームを復号し、例えばアナログ信号への変換等を行って、再生されたオーディオ信号として例えばコネクティビティ1321等に供給する。
多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化する。この多重化の方法(すなわち、多重化により生成されるビットストリームのフォーマット)は任意である。また、この多重化の際に、多重化部(MUX)1412は、所定のヘッダ情報等をビットストリームに付加することもできる。つまり、多重化部(MUX)1412は、多重化によりストリームのフォーマットを変換することができる。例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームに変換する。また、例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、記録用のファイルフォーマットのデータ(ファイルデータ)に変換する。
逆多重化部(DMUX)1413は、多重化部(MUX)1412による多重化に対応する方法で、ビデオストリームとオーディオストリームとが多重化されたビットストリームを逆多重化する。つまり、逆多重化部(DMUX)1413は、ストリームバッファ1414から読み出されたビットストリームからビデオストリームとオーディオストリームとを抽出する(ビデオストリームとオーディオストリームとを分離する)。つまり、逆多重化部(DMUX)1413は、逆多重化によりストリームのフォーマットを変換(多重化部(MUX)1412による変換の逆変換)することができる。例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321やブロードバンドモデム1333等から供給されたトランスポートストリームを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。また、例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321により各種記録媒体から読み出されたファイルデータを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。
ストリームバッファ1414は、ビットストリームをバッファリングする。例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321やブロードバンドモデム1333等に供給する。
また、例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321等に供給し、各種記録媒体に記録させる。
さらに、ストリームバッファ1414は、例えばコネクティビティ1321やブロードバンドモデム1333等を介して取得したトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
また、ストリームバッファ1414は、例えばコネクティビティ1321等において各種記録媒体から読み出されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
次に、このような構成のビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321等からビデオプロセッサ1332に入力されたビデオ信号は、ビデオ入力処理部1401において4:2:2Y/Cb/Cr方式等の所定の方式のデジタル画像データに変換され、フレームメモリ1405に順次書き込まれる。このデジタル画像データは、第1画像拡大縮小部1402または第2画像拡大縮小部1403に読み出されて、4:2:0Y/Cb/Cr方式等の所定の方式へのフォーマット変換および拡大縮小処理が行われ、再びフレームメモリ1405に書き込まれる。この画像データは、エンコード・デコードエンジン1407によって符号化され、ビデオストリームとしてビデオESバッファ1408Aに書き込まれる。
また、コネクティビティ1321等からビデオプロセッサ1332に入力されたオーディオ信号は、オーディオエンコーダ1410によって符号化され、オーディオストリームとして、オーディオESバッファ1409Aに書き込まれる。
ビデオESバッファ1408Aのビデオストリームと、オーディオESバッファ1409Aのオーディオストリームは、多重化部(MUX)1412に読み出されて多重化され、トランスポートストリーム若しくはファイルデータ等に変換される。多重化部(MUX)1412により生成されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークに出力される。また、多重化部(MUX)1412により生成されたファイルデータは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
また、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからビデオプロセッサ1332に入力されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。また、例えばコネクティビティ1321等において各種記録媒体から読み出され、ビデオプロセッサ1332に入力されたファイルデータは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。つまり、ビデオプロセッサ1332に入力されたトランスポートストリームまたはファイルデータは、逆多重化部(DMUX)1413によりビデオストリームとオーディオストリームとに分離される。
オーディオストリームは、オーディオESバッファ1409Bを介してオーディオデコーダ1411に供給され、復号されてオーディオ信号が再生される。また、ビデオストリームは、ビデオESバッファ1408Bに書き込まれた後、エンコード・デコードエンジン1407により順次読み出されて復号されてフレームメモリ1405に書き込まれる。復号された画像データは、第2画像拡大縮小部1403によって拡大縮小処理されて、フレームメモリ1405に書き込まれる。そして、復号された画像データは、ビデオ出力処理部1404に読み出されて、4:2:2Y/Cb/Cr方式等の所定の方式にフォーマット変換され、さらにアナログ信号に変換されて、ビデオ信号が再生出力される。
このように構成されるビデオプロセッサ1332に本技術を適用する場合、エンコード・デコードエンジン1407に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、エンコード・デコードエンジン1407が、上述した階層画像符号化装置100、階層画像復号装置200、階層画像符号化装置300、並びに階層画像復号装置400の内の少なくともいずれか1つの機能を有するようにしてもよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、エンコード・デコードエンジン1407において、本技術(すなわち、階層画像符号化装置100の機能、階層画像復号装置200の機能、階層画像符号化装置300の機能、並びに階層画像復号装置400の内の少なくともいずれか1つの機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
<ビデオプロセッサの他の構成例>
図42は、本技術を適用したビデオプロセッサ1332の概略的な構成の他の例を示している。図42の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
図42は、本技術を適用したビデオプロセッサ1332の概略的な構成の他の例を示している。図42の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
より具体的には、図42に示されるように、ビデオプロセッサ1332は、制御部1511、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、および内部メモリ1515を有する。また、ビデオプロセッサ1332は、コーデックエンジン1516、メモリインタフェース1517、多重化・逆多重化部(MUX DMUX)1518、ネットワークインタフェース1519、およびビデオインタフェース1520を有する。
制御部1511は、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516等、ビデオプロセッサ1332内の各処理部の動作を制御する。
図42に示されるように、制御部1511は、例えば、メインCPU1531、サブCPU1532、およびシステムコントローラ1533を有する。メインCPU1531は、ビデオプロセッサ1332内の各処理部の動作を制御するためのプログラム等を実行する。メインCPU1531は、そのプログラム等に従って制御信号を生成し、各処理部に供給する(つまり、各処理部の動作を制御する)。サブCPU1532は、メインCPU1531の補助的な役割を果たす。例えば、サブCPU1532は、メインCPU1531が実行するプログラム等の子プロセスやサブルーチン等を実行する。システムコントローラ1533は、メインCPU1531およびサブCPU1532が実行するプログラムを指定する等、メインCPU1531およびサブCPU1532の動作を制御する。
ディスプレイインタフェース1512は、制御部1511の制御の下、画像データを例えばコネクティビティ1321等に出力する。例えば、ディスプレイインタフェース1512は、デジタルデータの画像データをアナログ信号に変換し、再生されたビデオ信号として、またはデジタルデータの画像データのまま、コネクティビティ1321のモニタ装置等に出力する。
ディスプレイエンジン1513は、制御部1511の制御の下、画像データに対して、その画像を表示させるモニタ装置等のハードウエアスペックに合わせるように、フォーマット変換、サイズ変換、色域変換等の各種変換処理を行う。
画像処理エンジン1514は、制御部1511の制御の下、画像データに対して、例えば画質改善のためのフィルタ処理等、所定の画像処理を施す。
内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516により共用される、ビデオプロセッサ1332の内部に設けられたメモリである。内部メモリ1515は、例えば、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516の間で行われるデータの授受に利用される。例えば、内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516から供給されるデータを格納し、必要に応じて(例えば、要求に応じて)、そのデータを、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516に供給する。この内部メモリ1515は、どのような記憶デバイスにより実現するようにしてもよいが、一般的にブロック単位の画像データやパラメータ等といった小容量のデータの格納に利用することが多いので、例えばSRAM(Static Random Access Memory)のような比較的(例えば外部メモリ1312と比較して)小容量だが応答速度が高速な半導体メモリにより実現するのが望ましい。
コーデックエンジン1516は、画像データの符号化や復号に関する処理を行う。このコーデックエンジン1516が対応する符号化・復号の方式は任意であり、その数は1つであってもよいし、複数であってもよい。例えば、コーデックエンジン1516は、複数の符号化・復号方式のコーデック機能を備え、その中から選択されたもので画像データの符号化若しくは符号化データの復号を行うようにしてもよい。
図42に示される例において、コーデックエンジン1516は、コーデックに関する処理の機能ブロックとして、例えば、MPEG-2 Video1541、AVC/H.2641542、HEVC/H.2651543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、およびMPEG-DASH1551を有する。
MPEG-2 Video1541は、画像データをMPEG-2方式で符号化したり復号したりする機能ブロックである。AVC/H.2641542は、画像データをAVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.2651543は、画像データをHEVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.265(Scalable)1544は、画像データをHEVC方式でスケーラブル符号化したりスケーラブル復号したりする機能ブロックである。HEVC/H.265(Multi-view)1545は、画像データをHEVC方式で多視点符号化したり多視点復号したりする機能ブロックである。
MPEG-DASH1551は、画像データをMPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式で送受信する機能ブロックである。MPEG-DASHは、HTTP(HyperText Transfer Protocol)を使ってビデオのストリーミングを行う技術であり、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択し伝送することを特徴の1つとする。MPEG-DASH1551は、規格に準拠するストリームの生成やそのストリームの伝送制御等を行い、画像データの符号化・復号については、上述したMPEG-2 Video1541乃至HEVC/H.265(Multi-view)1545を利用する。
メモリインタフェース1517は、外部メモリ1312用のインタフェースである。画像処理エンジン1514やコーデックエンジン1516から供給されるデータは、メモリインタフェース1517を介して外部メモリ1312に供給される。また、外部メモリ1312から読み出されたデータは、メモリインタフェース1517を介してビデオプロセッサ1332(画像処理エンジン1514若しくはコーデックエンジン1516)に供給される。
多重化・逆多重化部(MUX DMUX)1518は、符号化データのビットストリーム、画像データ、ビデオ信号等、画像に関する各種データの多重化や逆多重化を行う。この多重化・逆多重化の方法は任意である。例えば、多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、複数のデータを1つにまとめるだけでなく、所定のヘッダ情報等をそのデータに付加することもできる。また、逆多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、1つのデータを複数に分割するだけでなく、分割した各データに所定のヘッダ情報等を付加することもできる。つまり、多重化・逆多重化部(MUX DMUX)1518は、多重化・逆多重化によりデータのフォーマットを変換することができる。例えば、多重化・逆多重化部(MUX DMUX)1518は、ビットストリームを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームや、記録用のファイルフォーマットのデータ(ファイルデータ)に変換することができる。もちろん、逆多重化によりその逆変換も可能である。
ネットワークインタフェース1519は、例えばブロードバンドモデム1333やコネクティビティ1321等向けのインタフェースである。ビデオインタフェース1520は、例えばコネクティビティ1321やカメラ1322等向けのインタフェースである。
次に、このようなビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからトランスポートストリームを受信すると、そのトランスポートストリームは、ネットワークインタフェース1519を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、例えば、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてファイルデータに変換され、ビデオインタフェース1520を介して例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
さらに、例えば、コネクティビティ1321等により図示せぬ記録媒体から読み出された、画像データが符号化された符号化データのファイルデータは、ビデオインタフェース1520を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてトランスポートストリームに変換され、ネットワークインタフェース1519を介して例えばコネクティビティ1321やブロードバンドモデム1333等に供給され図示せぬ他の装置に伝送される。
なお、ビデオプロセッサ1332内の各処理部の間での画像データやその他のデータの授受は、例えば、内部メモリ1515や外部メモリ1312を利用して行われる。また、パワーマネージメントモジュール1313は、例えば制御部1511への電力供給を制御する。
このように構成されるビデオプロセッサ1332に本技術を適用する場合、コーデックエンジン1516に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、コーデックエンジン1516が、上述した階層画像符号化装置100、階層画像復号装置200、階層画像符号化装置300、並びに階層画像復号装置400の内の少なくともいずれか1つの機能を有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、コーデックエンジン1516において、本技術(すなわち、階層画像符号化装置100、階層画像復号装置200、階層画像符号化装置300、並びに階層画像復号装置400の内の少なくともいずれか1つの機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
以上にビデオプロセッサ1332の構成を2例示したが、ビデオプロセッサ1332の構成は任意であり、上述した2例以外のものであってもよい。また、このビデオプロセッサ1332は、1つの半導体チップとして構成されるようにしてもよいが、複数の半導体チップとして構成されるようにしてもよい。例えば、複数の半導体を積層する3次元積層LSIとしてもよい。また、複数のLSIにより実現されるようにしてもよい。
<装置への適用例>
ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図36)、携帯電話機920(図37)、記録再生装置940(図38)、撮像装置960(図39)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図36)、携帯電話機920(図37)、記録再生装置940(図38)、撮像装置960(図39)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、上述したビデオセット1300の各構成の一部であっても、ビデオプロセッサ1332を含むものであれば、本技術を適用した構成として実施することができる。例えば、ビデオプロセッサ1332のみを本技術を適用したビデオプロセッサとして実施することができる。また、例えば、上述したように点線1341により示されるプロセッサやビデオモジュール1311等を、本技術を適用したプロセッサやモジュール等として実施することができる。さらに、例えば、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314を組み合わせ、本技術を適用したビデオユニット1361として実施することもできる。いずれの構成の場合であっても、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
つまり、ビデオプロセッサ1332を含むものであればどのような構成であっても、ビデオセット1300の場合と同様に、画像データを処理する各種装置に組み込むことができる。例えば、ビデオプロセッサ1332、点線1341により示されるプロセッサ、ビデオモジュール1311、または、ビデオユニット1361を、テレビジョン装置900(図36)、携帯電話機920(図37)、記録再生装置940(図38)、撮像装置960(図39)等に組み込むことができる。そして、本技術を適用したいずれかの構成を組み込むことにより、その装置は、ビデオセット1300の場合と同様に、図1乃至図33を参照して上述した各実施の形態と同様の効果を得ることができる。
<その他>
なお、本明細書では、各種情報が、符号化データ(ビットストリーム)に多重化されて、符号化側から復号側へ伝送される例について説明したが、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化データに多重化されることなく、符号化データと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、例えば、符号化データに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。さらに、画像とその画像に対応する情報とが、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
なお、本明細書では、各種情報が、符号化データ(ビットストリーム)に多重化されて、符号化側から復号側へ伝送される例について説明したが、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化データに多重化されることなく、符号化データと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、例えば、符号化データに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。さらに、画像とその画像に対応する情報とが、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
また、上述したように、本明細書において、「合成する」、「多重化する」、「付加する」、「一体化する」、「含める」、「格納する」、「入れ込む」、「差し込む」、「挿入する」等の用語は、例えばフラグ情報と画像に関する情報の符号化データとを1つのデータにまとめるといった、複数の物を1つにまとめることを意味し、上述の「関連付ける」の1つの方法を意味する。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
また、例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
また、例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、例えば、上述したプログラムは、任意の装置において実行することができる。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
また、例えば、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
なお、本明細書において複数説明した本技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術を、他の実施の形態において説明した本技術と組み合わせて実施することもできる。また、上述した任意の本技術を、上述していない他の技術と併用して実施することもできる。
なお、本技術は以下のような構成も取ることができる。
(1) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第1の符号化部と
を備える画像処理装置。
(2) 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(1)に記載の画像処理装置。
(3) 予測を用いて前記第1のレイヤの画像データを符号化する第2の符号化部と、
前記第2の符号化部が前記第1のレイヤの画像データを符号化することにより得られる前記第1のレイヤ基準の前記符号化に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(1)または(2)に記載の画像処理装置。
(4) 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第2のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(1)乃至(3)のいずれかに記載の画像処理装置。
(5) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記画像データを符号化する
画像処理方法。
(6) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する第1の復号部と
を備える画像処理装置。
(7) 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(6)に記載の画像処理装置。
(8) 予測を用いて前記第1のレイヤの画像データの符号化データを復号する第2の復号部と、
前記第2の復号部が前記符号化データを復号することにより得られる前記第1のレイヤ基準の前記復号に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(6)または(7)に記載の画像処理装置。
(9) 前記第1の復号部は、前記第2のレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(6)乃至(8)のいずれかに記載の画像処理装置。
(10) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する
画像処理方法。
(11) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化する第1の符号化部と、
前記第1の符号化部が前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(12) 前記符号化に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(11)に記載の画像処理装置。
(13) 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第2の符号化部と
をさらに備える(11)または(12)に記載の画像処理装置。
(14) 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第1のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(11)乃至(13)のいずれかに記載の画像処理装置。
(15) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化し、
前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。
(16) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号する第1の復号部と、
前記第1の復号部が前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(17) 前記復号に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(16)に記載の画像処理装置。
(18) 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データの符号化データを復号する第2の復号部と
をさらに備える(16)または(17)に記載の画像処理装置。
(19) 前記第1の復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された前記第1のレイヤの符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(16)乃至(18)のいずれかに記載の画像処理装置。
(20) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号し、
前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。
(21) エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データを符号化するエンハンスメントレイヤ符号化部と
を備える画像処理装置。
(22) 前記インターレイヤ処理部は、
前記ベースレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられるベースレイヤの画像データを取得し、取得した前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記ベースレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられるベースレイヤの動き情報を取得し、取得した前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(21)に記載の画像処理装置。
(23) 予測を用いてベースレイヤの画像データを符号化するベースレイヤ符号化部と、
前記ベースレイヤ符号化部が前記ベースレイヤの画像データを符号化することにより得られる前記ベースレイヤ基準の前記符号化に関する情報を記憶するベースレイヤ記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記ベースレイヤ記憶部に記憶されている前記ベースレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(21)または(22)に記載の画像処理装置。
(24) 前記エンハンスメントレイヤ符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、エンハンスメントレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記ベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(21)乃至(23)のいずれかに記載の画像処理装置。
(25) エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換し、
変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記画像データを符号化する
画像処理方法。
(26) エンハンスメントレイヤの画像データの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記符号化データを復号するエンハンスメントレイヤ復号部と
を備える画像処理装置。
(27) 前記インターレイヤ処理部は、
前記ベースレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられるベースレイヤの画像データを取得し、取得した前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記ベースレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられるベースレイヤの動き情報を取得し、取得した前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(26)に記載の画像処理装置。
(28) 予測を用いてベースレイヤの画像データの符号化データを復号するベースレイヤ復号部と、
前記ベースレイヤ復号部が前記符号化データを復号することにより得られる前記ベースレイヤ基準の前記復号に関する情報を記憶するベースレイヤ記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記ベースレイヤ記憶部に記憶されている前記ベースレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(26)または(27)に記載の画像処理装置。
(29) 前記エンハンスメントレイヤ復号部は、エンハンスメントレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記ベースレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(26)乃至(28)のいずれかに記載の画像処理装置。
(30) エンハンスメントレイヤの画像データの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換し、
変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記符号化データを復号する
画像処理方法。
(31) 予測を用いてベースレイヤの画像データを符号化するベースレイヤ符号化部と、
前記ベースレイヤ符号化部が前記ベースレイヤの画像データを符号化することにより得られる、エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(32) 前記符号化に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記ベースレイヤ符号化部により得られるベースレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記ベースレイヤ符号化部により得られるベースレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(31)に記載の画像処理装置。
(33) 前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を記憶するエンハンスメントレイヤ記憶部と、
前記エンハンスメントレイヤ記憶部により記憶されている前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データを符号化するエンハンスメントレイヤ符号化部と
をさらに備える(31)または(32)に記載の画像処理装置。
(34) 前記ベースレイヤ符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、ベースレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準に変換する
(31)乃至(33)のいずれかに記載の画像処理装置。
(35) 予測を用いてベースレイヤの画像データを符号化し、
前記ベースレイヤの画像データを符号化することにより得られる、エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
画像処理方法。
(36) 予測を用いてベースレイヤの画像データの符号化データを復号するベースレイヤ復号部と、
前記ベースレイヤ復号部が前記符号化データを復号することにより得られる、エンハンスメントレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(37) 前記復号に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記ベースレイヤ復号部により得られるベースレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記ベースレイヤ復号部により得られるベースレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(36)に記載の画像処理装置。
(38) 前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を記憶するエンハンスメントレイヤ記憶部と、
前記エンハンスメントレイヤ記憶部により記憶されている前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データの符号化データを復号するエンハンスメントレイヤ復号部と
をさらに備える(36)または(37)に記載の画像処理装置。
(39) 前記ベースレイヤ復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化されたベースレイヤの符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準に変換する
(36)乃至(38)のいずれかに記載の画像処理装置。
(40) 予測を用いてベースレイヤの画像データの符号化データを復号し、
前記符号化データを復号することにより得られる、エンハンスメントレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
画像処理方法。
(1) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第1の符号化部と
を備える画像処理装置。
(2) 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(1)に記載の画像処理装置。
(3) 予測を用いて前記第1のレイヤの画像データを符号化する第2の符号化部と、
前記第2の符号化部が前記第1のレイヤの画像データを符号化することにより得られる前記第1のレイヤ基準の前記符号化に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(1)または(2)に記載の画像処理装置。
(4) 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第2のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(1)乃至(3)のいずれかに記載の画像処理装置。
(5) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記画像データを符号化する
画像処理方法。
(6) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する第1の復号部と
を備える画像処理装置。
(7) 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(6)に記載の画像処理装置。
(8) 予測を用いて前記第1のレイヤの画像データの符号化データを復号する第2の復号部と、
前記第2の復号部が前記符号化データを復号することにより得られる前記第1のレイヤ基準の前記復号に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(6)または(7)に記載の画像処理装置。
(9) 前記第1の復号部は、前記第2のレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(6)乃至(8)のいずれかに記載の画像処理装置。
(10) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する
画像処理方法。
(11) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化する第1の符号化部と、
前記第1の符号化部が前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(12) 前記符号化に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(11)に記載の画像処理装置。
(13) 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第2の符号化部と
をさらに備える(11)または(12)に記載の画像処理装置。
(14) 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第1のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(11)乃至(13)のいずれかに記載の画像処理装置。
(15) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化し、
前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。
(16) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号する第1の復号部と、
前記第1の復号部が前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(17) 前記復号に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(16)に記載の画像処理装置。
(18) 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データの符号化データを復号する第2の復号部と
をさらに備える(16)または(17)に記載の画像処理装置。
(19) 前記第1の復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された前記第1のレイヤの符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
(16)乃至(18)のいずれかに記載の画像処理装置。
(20) 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号し、
前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。
(21) エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データを符号化するエンハンスメントレイヤ符号化部と
を備える画像処理装置。
(22) 前記インターレイヤ処理部は、
前記ベースレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられるベースレイヤの画像データを取得し、取得した前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記ベースレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられるベースレイヤの動き情報を取得し、取得した前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(21)に記載の画像処理装置。
(23) 予測を用いてベースレイヤの画像データを符号化するベースレイヤ符号化部と、
前記ベースレイヤ符号化部が前記ベースレイヤの画像データを符号化することにより得られる前記ベースレイヤ基準の前記符号化に関する情報を記憶するベースレイヤ記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記ベースレイヤ記憶部に記憶されている前記ベースレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(21)または(22)に記載の画像処理装置。
(24) 前記エンハンスメントレイヤ符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、エンハンスメントレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記ベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(21)乃至(23)のいずれかに記載の画像処理装置。
(25) エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換し、
変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記画像データを符号化する
画像処理方法。
(26) エンハンスメントレイヤの画像データの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記符号化データを復号するエンハンスメントレイヤ復号部と
を備える画像処理装置。
(27) 前記インターレイヤ処理部は、
前記ベースレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられるベースレイヤの画像データを取得し、取得した前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記ベースレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられるベースレイヤの動き情報を取得し、取得した前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(26)に記載の画像処理装置。
(28) 予測を用いてベースレイヤの画像データの符号化データを復号するベースレイヤ復号部と、
前記ベースレイヤ復号部が前記符号化データを復号することにより得られる前記ベースレイヤ基準の前記復号に関する情報を記憶するベースレイヤ記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記ベースレイヤ記憶部に記憶されている前記ベースレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(26)または(27)に記載の画像処理装置。
(29) 前記エンハンスメントレイヤ復号部は、エンハンスメントレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記ベースレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
(26)乃至(28)のいずれかに記載の画像処理装置。
(30) エンハンスメントレイヤの画像データの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換し、
変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの前記符号化データを復号する
画像処理方法。
(31) 予測を用いてベースレイヤの画像データを符号化するベースレイヤ符号化部と、
前記ベースレイヤ符号化部が前記ベースレイヤの画像データを符号化することにより得られる、エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(32) 前記符号化に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記ベースレイヤ符号化部により得られるベースレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記ベースレイヤ符号化部により得られるベースレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(31)に記載の画像処理装置。
(33) 前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記符号化に関する情報を記憶するエンハンスメントレイヤ記憶部と、
前記エンハンスメントレイヤ記憶部により記憶されている前記エンハンスメントレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データを符号化するエンハンスメントレイヤ符号化部と
をさらに備える(31)または(32)に記載の画像処理装置。
(34) 前記ベースレイヤ符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、ベースレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準に変換する
(31)乃至(33)のいずれかに記載の画像処理装置。
(35) 予測を用いてベースレイヤの画像データを符号化し、
前記ベースレイヤの画像データを符号化することにより得られる、エンハンスメントレイヤの画像データの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の符号化に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
画像処理方法。
(36) 予測を用いてベースレイヤの画像データの符号化データを復号するベースレイヤ復号部と、
前記ベースレイヤ復号部が前記符号化データを復号することにより得られる、エンハンスメントレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。
(37) 前記復号に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記ベースレイヤ復号部により得られるベースレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記ベースレイヤ復号部により得られるベースレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にアップサンプルする処理と、
前記動き情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
(36)に記載の画像処理装置。
(38) 前記インターレイヤ処理部により変換されて得られた前記エンハンスメントレイヤ基準の前記復号に関する情報を記憶するエンハンスメントレイヤ記憶部と、
前記エンハンスメントレイヤ記憶部により記憶されている前記エンハンスメントレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、エンハンスメントレイヤの画像データの符号化データを復号するエンハンスメントレイヤ復号部と
をさらに備える(36)または(37)に記載の画像処理装置。
(39) 前記ベースレイヤ復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化されたベースレイヤの符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記ベースレイヤ基準から前記エンハンスメントレイヤ基準に変換する
(36)乃至(38)のいずれかに記載の画像処理装置。
(40) 予測を用いてベースレイヤの画像データの符号化データを復号し、
前記符号化データを復号することにより得られる、エンハンスメントレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられるベースレイヤ基準の復号に関する情報を、前記ベースレイヤ基準からエンハンスメントレイヤ基準に変換する
画像処理方法。
100 階層画像符号化装置, 101 制御部, 102 ベースレイヤ画像符号化部, 103 エンハンスメントレイヤ画像符号化部, 104 多重化部, 121 BLフレームメモリ, 171 ELフレームメモリ, 181 IL処理部, 182 インターレイヤ予測部, 200 階層画像復号装置, 201 逆多重化部, 202 制御部, 203 ベースレイヤ画像復号部, 204 エンハンスメントレイヤ画像復号部, 218 BLフレームメモリ, 268 ELフレームメモリ, 281 IL処理部, 282 インターレイヤ予測部, 300 階層画像符号化装置, 301 制御部, 302 ベースレイヤ画像符号化部, 303 エンハンスメントレイヤ画像符号化部, 304 多重化部, 321 BLフレームメモリ, 331 IL処理部, 371 ELフレームメモリ, 382 インターレイヤ予測部, 400 階層画像復号装置, 401 逆多重化部, 402 制御部, 403 ベースレイヤ画像復号部,404 エンハンスメントレイヤ画像復号部, 418 BLフレームメモリ, 431 IL処理部, 468 ELフレームメモリ, 482 インターレイヤ予測部
Claims (20)
- 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第1の符号化部と
を備える画像処理装置。 - 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記符号化に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
請求項1に記載の画像処理装置。 - 予測を用いて前記第1のレイヤの画像データを符号化する第2の符号化部と、
前記第2の符号化部が前記第1のレイヤの画像データを符号化することにより得られる前記第1のレイヤ基準の前記符号化に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項1に記載の画像処理装置。 - 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第2のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項1に記載の画像処理装置。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を取得し、取得した前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記画像データを符号化する
画像処理方法。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と、
前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する第1の復号部と
を備える画像処理装置。 - 前記インターレイヤ処理部は、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による予測画像の生成の際に用いられる前記第1のレイヤの画像データを取得し、取得した前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記第1のレイヤ基準の前記復号に関する情報として、前記インターレイヤ予測による動き情報の予測の際に用いられる前記第1のレイヤの動き情報を取得し、取得した前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
請求項6に記載の画像処理装置。 - 予測を用いて前記第1のレイヤの画像データの符号化データを復号する第2の復号部と、
前記第2の復号部が前記符号化データを復号することにより得られる前記第1のレイヤ基準の前記復号に関する情報を記憶する記憶部と
をさらに備え、
前記インターレイヤ処理部は、前記記憶部に記憶されている前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項6に記載の画像処理装置。 - 前記第1の復号部は、前記第2のレイヤの画像データが、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記第1のレイヤ基準の前記復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項6に記載の画像処理装置。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測が行われる際に、前記インターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を取得し、取得した前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換し、
変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの前記符号化データを復号する
画像処理方法。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化する第1の符号化部と、
前記第1の符号化部が前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。 - 前記符号化に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の符号化部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
請求項11に記載の画像処理装置。 - 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記符号化に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記符号化に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データを符号化する第2の符号化部と
をさらに備える請求項11に記載の画像処理装置。 - 前記第1の符号化部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で、前記第1のレイヤの画像データを符号化し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記符号化に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項11に記載の画像処理装置。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの前記第1のレイヤを、予測を用いて符号化し、
前記第1のレイヤの画像データを符号化することにより得られる、前記画像データの前記第2のレイヤの符号化においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の符号化に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号する第1の復号部と、
前記第1の復号部が前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換するインターレイヤ処理部と
を備える画像処理装置。 - 前記復号に関する情報は、
前記インターレイヤ予測による予測画像の生成の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの画像データと、
前記インターレイヤ予測による動き情報の予測の際に用いられる、前記第1の復号部により得られる前記第1のレイヤの動き情報と
の内、少なくともいずれか一方を含み、
前記インターレイヤ処理部は、
前記画像データを前記第1のレイヤ基準から前記第2のレイヤ基準にアップサンプルする処理と、
前記動き情報を前記第1のレイヤ基準から前記第2のレイヤ基準にスケーリングする処理と
の内、少なくともいずれか一方を行う
請求項16に記載の画像処理装置。 - 前記インターレイヤ処理部により変換されて得られた前記第2のレイヤ基準の前記復号に関する情報を記憶する記憶部と、
前記記憶部により記憶されている前記第2のレイヤ基準の前記復号に関する情報を利用して前記インターレイヤ予測を行い、得られた予測画像データを利用して、前記第2のレイヤの画像データの符号化データを復号する第2の復号部と
をさらに備える請求項16に記載の画像処理装置。 - 前記第1の復号部は、シーケンス単位で固定サイズのブロックである最大符号化単位を再帰的に分割した可変サイズのブロックである符号化単位で符号化された前記第1のレイヤの符号化データを復号し、
前記インターレイヤ処理部は、前記符号化単位をさらに分割したブロックである予測単位毎に、前記復号に関する情報を前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
請求項16に記載の画像処理装置。 - 第1のレイヤと第2のレイヤを含む複数レイヤからなる画像データの、前記第1のレイヤの符号化データを復号し、
前記第1のレイヤの符号化データを復号することにより得られる、前記第2のレイヤの符号化データの復号においてレイヤ間の相関を利用したインターレイヤ予測に用いられる前記第1のレイヤ基準の復号に関する情報を、前記第1のレイヤ基準から前記第2のレイヤ基準に変換する
画像処理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-047326 | 2016-03-10 | ||
JP2016047326 | 2016-03-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017154604A1 true WO2017154604A1 (ja) | 2017-09-14 |
Family
ID=59790360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/006986 WO2017154604A1 (ja) | 2016-03-10 | 2017-02-24 | 画像処理装置および方法 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2017154604A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4366306A4 (en) * | 2021-08-12 | 2024-08-07 | Huawei Tech Co Ltd | IMAGE ENCODING METHOD AND APPARATUS, AND IMAGE DECODING METHOD AND APPARATUS |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013003182A1 (en) * | 2011-06-30 | 2013-01-03 | Vidyo, Inc. | Scalable video coding techniques |
WO2014033255A1 (en) * | 2012-08-30 | 2014-03-06 | Canon Kabushiki Kaisha | Method and device for detetermining prediction information for encoding or decoding at least part of an image |
WO2014107577A1 (en) * | 2013-01-04 | 2014-07-10 | Intel Corporation | Inter layer motion data inheritance |
WO2014139431A1 (en) * | 2013-03-12 | 2014-09-18 | Mediatek Inc. | Inter-layer motion vector scaling for scalable video coding |
WO2014162954A1 (ja) * | 2013-04-04 | 2014-10-09 | シャープ株式会社 | 画像復号装置、および画像符号化装置 |
-
2017
- 2017-02-24 WO PCT/JP2017/006986 patent/WO2017154604A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013003182A1 (en) * | 2011-06-30 | 2013-01-03 | Vidyo, Inc. | Scalable video coding techniques |
WO2014033255A1 (en) * | 2012-08-30 | 2014-03-06 | Canon Kabushiki Kaisha | Method and device for detetermining prediction information for encoding or decoding at least part of an image |
WO2014107577A1 (en) * | 2013-01-04 | 2014-07-10 | Intel Corporation | Inter layer motion data inheritance |
WO2014139431A1 (en) * | 2013-03-12 | 2014-09-18 | Mediatek Inc. | Inter-layer motion vector scaling for scalable video coding |
WO2014162954A1 (ja) * | 2013-04-04 | 2014-10-09 | シャープ株式会社 | 画像復号装置、および画像符号化装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4366306A4 (en) * | 2021-08-12 | 2024-08-07 | Huawei Tech Co Ltd | IMAGE ENCODING METHOD AND APPARATUS, AND IMAGE DECODING METHOD AND APPARATUS |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6780761B2 (ja) | 画像符号化装置および方法 | |
KR102393150B1 (ko) | 화상 처리 장치 및 방법 | |
JP6911856B2 (ja) | 画像処理装置および方法 | |
WO2018061837A1 (ja) | 画像処理装置および方法 | |
KR102179087B1 (ko) | 복호 장치 및 복호 방법 | |
WO2019054200A1 (ja) | 画像処理装置および方法 | |
KR102407030B1 (ko) | 화상 부호화 장치 및 방법 및 화상 복호 장치 및 방법 | |
JPWO2018173798A1 (ja) | 画像処理装置および方法 | |
WO2017126333A1 (ja) | 画像処理装置および方法 | |
JP6652126B2 (ja) | 画像処理装置および方法 | |
JP6497562B2 (ja) | 画像符号化装置および方法 | |
WO2013137047A1 (ja) | 画像処理装置および方法 | |
WO2017073362A1 (ja) | 画像処理装置および方法 | |
US9930353B2 (en) | Image decoding device and method | |
WO2017073360A1 (ja) | 画像処理装置および方法 | |
WO2017212930A1 (ja) | 画像処理装置および方法 | |
KR102197557B1 (ko) | 화상 처리 장치 및 방법 | |
WO2015005024A1 (ja) | 画像処理装置及び画像処理方法 | |
WO2017154604A1 (ja) | 画像処理装置および方法 | |
KR102338669B1 (ko) | 화상 처리 장치 및 방법, 및 기록 매체 | |
WO2015098563A1 (ja) | 画像符号化装置および方法、並びに画像復号装置および方法 | |
WO2018037949A1 (ja) | 画像処理装置および方法 | |
WO2015064401A1 (ja) | 画像処理装置および方法 | |
WO2014162916A1 (ja) | 画像符号化装置および方法、並びに、画像復号装置および方法 | |
WO2017126331A1 (ja) | 画像処理装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17762944 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17762944 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |