Image processing device and image processing method
Abstract
FIELD: physics, computer engineering.SUBSTANCE: invention relates to video data dencoding/decoding techniques. Image processing device is disclosed. Device comprises a receive module adapted to obtain setting information for setting the motion vector to the second prediction unit at the second level corresponding to the first prediction unit in the first image level containing the first level and the second level which is higher than the first level. Setting information relates to the motion vector set in the first prediction unit, and includes predictor information indicating predictor used to predict the motion vector of the first prediction unit, wherein the predictor is a spatial predictor or a time predictor.EFFECT: invention provides increased efficiency of image processing by optimizing the correlation of the motion vector between image layers.15 cl, 33 dwg

Term
Projected expiry 24 May 2032.
- Priority
- Filed
- Granted
- Today
- Projected expiry
37 claims: 37 independent, 0 dependent
- 1An image processing apparatus comprising:1. Устройство обработки изображения, содержащее:
- 2acquiring module information, adapted to obtain setup information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the locating information includes a motion vector set in the first prediction block, wherein the installation information includes information predictor indicating predictor used for predsk Azania first motion vector prediction block, wherein the predictor is a spatial predictor or a predictor of time;модуль получения информации, выполненный с возможностью получения установочной информации для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информации относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя информацию предиктора, указывающую предиктор, используемый для предсказания вектора движения первого блока предсказания, причем предиктор является либо пространственным предиктором, либо временным предиктором;
- 3wherein the information receiving module is further adapted to receive a differential motion vector indicating a difference between the motion vector set in the second prediction block and the predicted motion vector. при этом модуль получения информации дополнительно выполнен с возможностью получения информации разностного вектора движения, указывающей разность между вектором движения, установленным во второй блок предсказания, и предсказанным вектором движения.
- 42. Image processing apparatus, comprising:2. Устройство обработки изображения, содержащее:
- 5receive unit configured to acquire setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to motion vector set in the first prediction block, wherein the installation information includes information predictor indicating predictor used for predsk Azania second motion vector prediction block, wherein the predictor is selected from the plurality of candidate predictor are either spatial predictor or a predictor of time;модуль получения информации, выполненный с возможностью получения установочной информации для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя информацию предиктора, указывающую предиктор, используемый для предсказания вектора движения второго блока предсказания, при этом предиктор выбран из множества кандидатов предиктора, являющихся либо пространственным предиктором, либо временным предиктором;
- 6wherein the information receiving module is further adapted to receive a differential motion vector indicating a difference between the motion vector set in the second prediction block and the predicted motion vector;and при этом модуль получения информации дополнительно выполнен с возможностью получения информации разностного вектора движения, указывающей разность между вектором движения, установленным во второй блок предсказания, и предсказанным вектором движения;и
- 7Fitting motion vector module adapted to be mounted in the second motion vector prediction unit using the mounting information and the information of the difference motion vector obtained module information. модуль установки вектора движения, выполненный с возможностью установки вектора движения во второй блок предсказания с использованием установочной информации и информации разностного вектора движения, получаемой модулем получения информации.
- 83. The image processing apparatus according to claim. 2, in which the smallest code amount is selected from a plurality of inter-layer predictor predictor candidates. 3. Устройство обработки изображения по п. 2, в котором наименьший объем кода выделен межуровневому предиктору из множества кандидатов предиктора.
- 94. The image processing apparatus, comprising:4. Устройство обработки изображения, содержащее:
- 10receive unit configured to acquire setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to motion vector set in the first prediction block, wherein the installation information includes information association, indicating whether the specified vector motion common to the first prediction block and a prediction block adjacent to the first block prediction;модуль получения информации, выполненный с возможностью получения установочной информации для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя информацию объединения, указывающую, является ли установленный вектор движения общим для первого блока предсказания и блока предсказания, прилегающего к первому блоку предсказания;
- 11Fitting motion vector module adapted to be mounted in the second motion vector prediction unit using the mounting information obtained by the information obtaining module, модуль установки вектора движения, выполненный с возможностью установки вектора движения во второй блок предсказания с использованием установочной информации, получаемой модулем получения информации,
- 12wherein the motion vector setting unit configured to set the motion vector common to the second prediction block and a prediction block adjacent to the second prediction block, in accordance with the association information, and при этом модуль установки вектора движения выполнен с возможностью установки вектора движения, общего для второго блока предсказания и блока предсказания, прилегающего ко второму блоку предсказания, в соответствии с информацией объединения, и
- 13compensation unit operable to generate predicted image data of the second prediction block using a motion vector set in the second block prediction module setting the motion vector and the reference image data from the frame memory. модуль компенсации, выполненный с возможностью генерировать предсказанные данные изображения второго блока предсказания с использованием вектора движения, установленного во второй блок предсказания модулем установки вектора движения, и данных опорного изображения из памяти кадров.
- 145. The image processing apparatus, comprising:5. Устройство обработки изображения, содержащее:
- 15receive unit configured to acquire setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to motion vector set in the first prediction block, wherein the installation information includes combining a flag indicating whether the motion vector set Ia common to the second prediction block and another prediction block, and combining information indicating whether the motion vector is set common to all of the prediction blocks from one or more neighboring blocks in the prediction region adjacent to the first prediction block and second prediction block;модуль получения информации, выполненный с возможностью получения установочной информации для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя флаг объединения, указывающий, является ли установленный вектор движения общим для второго блока предсказания и другого блока предсказания, и информацию объединения, указывающую, является ли установленный вектор движения общим для любых из блоков предсказания из одного или более соседних блоков предсказания в области, прилегающей к первому блоку предсказания и второму блоку предсказания;
- 16Fitting motion vector module adapted to be mounted in the second motion vector prediction unit using the mounting information obtained by the information obtaining module. модуль установки вектора движения, выполненный с возможностью установки вектора движения во второй блок предсказания с использованием установочной информации, получаемой модулем получения информации.
- 176. The image processing apparatus according to claim. 2, wherein the motion vector setting unit configured to increase the motion vector set in the first prediction block, in accordance with the ratio of the spatial resolution of the first layer and second layer and subsequent execution of the installation process of the motion vector in the second prediction unit. 6. Устройство обработки изображения по п. 2, в котором модуль установки вектора движения выполнен с возможностью увеличения вектора движения, установленного в первый блок предсказания, в соответствии с отношением пространственного разрешения первого уровня и второго уровня, и последующего выполнения процесса установки вектора движения во второй блок предсказания.
- 187. The image processing apparatus according to claim. 6, wherein the increase in the motion vector set in the first prediction block, the motion vector setting unit is configured to rounding larger motion vector in accordance with the motion vector accuracy. 7. Устройство обработки изображения по п. 6, в котором при увеличении вектора движения, установленного в первый блок предсказания, модуль установки вектора движения выполнен с возможностью округления увеличенного вектора движения в соответствии с точностью вектора движения.
- 198. The image processing apparatus according to Claim. 1, wherein the first layer and second layer are layers having mutually different spatial resolutions. 8. Устройство обработки изображения по п. 1, в котором первый уровень и второй уровень являются уровнями, имеющими взаимно различные пространственные разрешения.
- 209. The image processing apparatus according to Claim. 1, wherein the first layer and second layer are layers having mutually different noise ratio. 9. Устройство обработки изображения по п. 1, в котором первый уровень и второй уровень являются уровнями, имеющими взаимно различные шумовые отношения.
- 2110. The image processing apparatus according to Claim. 1, wherein the first block prediction is a prediction unit at a first level having a pixel corresponding to a pixel in a predetermined position in the second prediction block. 10. Устройство обработки изображения по п. 1, в котором первый блок предсказания является блоком предсказания на первом уровне, имеющим пиксель, соответствующий пикселю в заданной позиции во втором блоке предсказания.
- 2211. The image processing apparatus according to Claim. 1, wherein the first prediction block is a prediction block among the first level of prediction blocks overlapping the second prediction block which has the most overlap. 11. Устройство обработки изображения по п. 1, в котором первый блок предсказания является блоком предсказания среди блоков предсказания на первом уровне, перекрывающих второй блок предсказания, который имеет наибольшее перекрытие.
- 2312. An image processing method comprising the steps of:12. Способ обработки изображения, содержащий этапы, на которых:
- 24obtained by the block information, setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to the motion vector, set in the first prediction block, and includes information predictor indicating predictor used to predict the motion vector of the first block of predictions Ia, the predictor is either spatial or temporal predictor, and получают, посредством блока получения информации, установочную информацию для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, и включает в себя информацию предиктора, указывающую предиктор, используемый для предсказания вектора движения первого блока предсказания, причем предиктор является либо пространственным, либо временным предиктором, и
- 25further comprising obtaining, by the module information, motion vector difference information indicating a difference between the motion vector set in the second prediction block and the predicted motion vector. дополнительно получают, посредством модуля получения информации, информацию разностного вектора движения, указывающую разность между вектором движения, установленным во второй блок предсказания, и предсказанным вектором движения.
- 2613. An image processing method comprising the steps of:13. Способ обработки изображения, содержащий этапы, на которых:
- 27is obtained by the module information, setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to the motion vector, set in the first prediction block, wherein the installation information includes information predictor indicating predictor used to predict a vector The motion of the second prediction block, wherein the predictor is selected from a plurality of candidate predictor are either spatial predictor or a predictor of time;получают, посредством модуля получения информации, установочную информацию для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя информацию предиктора, указывающую предиктор, используемый для предсказания вектора движения второго блока предсказания, при этом предиктор выбирают из множества кандидатов предиктора, являющихся либо пространственным предиктором, либо временным предиктором;
- 28is obtained by the module information, motion vector difference information indicating a difference between the motion vector set in the second prediction block and the predicted motion vector;and получают, посредством модуля получения информации, информацию разностного вектора движения, указывающую разность между вектором движения, установленным во второй блок предсказания, и предсказанным вектором движения;и
- 29is set by setting unit motion vector, the motion vector in the second prediction unit using the mounting information and the information of the difference motion vector obtained module information. устанавливают, посредством модуля установки вектора движения, вектор движения во второй блок предсказания с использованием установочной информации и информации разностного вектора движения, получаемой модулем получения информации.
- 3014. An image processing method comprising the steps of:14. Способ обработки изображения, содержащий этапы, на которых:
- 31is obtained by the module information, setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to the motion vector, set in the first prediction block, wherein the installation information includes information of association indicating whether the motion vector common set for the first prediction block and a prediction block adjacent to the first block prediction;получают, посредством модуля получения информации, установочную информацию для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя информацию объединения, указывающую, является ли установленный вектор движения общим для первого блока предсказания и блока предсказания, прилегающего к первому блоку предсказания;
- 32is set by setting unit motion vector, the motion vector in the second prediction unit using the mounting information obtained by the information obtaining module, устанавливают, посредством модуля установки вектора движения, вектор движения во второй блок предсказания с использованием установочной информации, получаемой модулем получения информации,
- 33is set by setting unit motion vector, the motion vector common to the second prediction block and a prediction block adjacent to the second prediction block, in accordance with the association information, and устанавливают, посредством модуля установки вектора движения, вектор движения, общий для второго блока предсказания и блока предсказания, прилегающего ко второму блоку предсказания, в соответствии с информацией объединения, и
- 34generating, by the compensation unit, the predicted image data of the second prediction block using a motion vector set in the second block prediction module setting the motion vector and the reference image data from the frame memory. генерируют, посредством модуля компенсации, предсказанные данные изображения второго блока предсказания с использованием вектора движения, установленного во второй блок предсказания модулем установки вектора движения, и данных опорного изображения из памяти кадров.
- 3515. An image processing method comprising the steps of:15. Способ обработки изображения, содержащий этапы, на которых:
- 36is obtained by the module information, setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level image comprising a first level and a second level which is higher than the first level, wherein the installation information relates to the motion vector, set in the first prediction block, wherein the installation information includes combining a flag indicating whether the motion vector is set common for Mo cerned prediction block and another prediction block, and combining information indicating whether the motion vector is set common to all of the prediction blocks from one or more neighboring blocks in the prediction region adjacent to the first prediction block and second prediction block;получают, посредством модуля получения информации, установочную информацию для установки вектора движения во второй блок предсказания на втором уровне, соответствующий первому блоку предсказания на первом уровне изображения, содержащего первый уровень и второй уровень, который выше первого уровня, причем установочная информация относится к вектору движения, установленному в первый блок предсказания, при этом установочная информация включает в себя флаг объединения, указывающий, является ли установленный вектор движения общим для второго блока предсказания и другого блока предсказания, и информацию объединения, указывающую, является ли установленный вектор движения общим для любых из блоков предсказания из одного или более соседних блоков предсказания в области, прилегающей к первому блоку предсказания и второму блоку предсказания;
- 37is set by setting unit motion vector, the motion vector in the second prediction unit using the mounting information obtained by the information obtaining module. устанавливают, посредством модуля установки вектора движения, вектор движения во второй блок предсказания с использованием установочной информации, получаемой модулем получения информации.
Independent claims37
389 paragraphs in 4 sections, as filed
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus and image processing method.
BACKGROUND
Data compression technology, such as H.26X standards (ITU-T Q6 / 16VCEG) standard and MPEG (moving picture compression algorithm developed by this group), compresses the image data using redundancy, which is specific to the image, which is widely used for efficient transmission or storage of digital images. In the Joint Model advanced compression video encoding, as part of MPEG4 functions were described international standard called H.264 and MPEG4 Part 10 (Advanced Video Coding; AVC), capable of implementing a high compression rate by the inclusion of new functions under standard N. 26x.
One important technology in these methods is an image encoding interframe prediction. In the interframe prediction image content to be encoded is predicted by using the reference image and only a difference between the predicted image and an actual image is encoded. Implemented code size compression. When the subject carries a significant displacement in the image sequence, however, the difference between the predicted image and the actual image is increased, and a high degree of compression can not be achieved simply by inter-frame prediction. Thus, attempts to reduce the prediction error in the interframe prediction by recognizing movement of the object as a motion vector, and compensating a pixel value in a region where there is movement in accordance with the motion vector. This technique is called motion compensation.
HEVC (high performance video coding), is now in process of standardization, is considered as a method for the next generation picture coding, going on H.264 / AVC shift, each cell (CU) additionally encoding the image is divided into one or more blocks (PU) prediction and a motion vector may be mounted on each block of prediction. The size and shape of the prediction block in HEVC vary more than a block in H.264 / AVC, and object motion can be reflected in the motion compensation more correctly (see. Non-Patent Document 1 below). Non-Patent Document 2 listed below proposes a technology that predicts a motion vector using a spatial correlation or temporal correlation of motion and encodes only the difference between the predicted motion vector and an actual motion vector to reduce the amount of motion vector code. Non-Patent Document 3 listed below proposes to reduce the amount of code data of moving by combining blocks having the general data on the movement of neighboring blocks in an image.
Another important technology in the above image encoding method is a scalable video coding (SVC). Scalable video coding is a technology that encodes a hierarchy of levels of the hierarchical structure, the transmitting signal a blurry image and the level of transmitting signal of high resolution images. Typical attributes are arranged in a hierarchical order, the implementation of scalable video coding technology mainly includes the following three:
- spatial scalability: spatial resolution and image size, located in a hierarchical order;
- temporal scalability: the frame rate is hierarchically;
- SNR (signal / noise ratio) scalability: the signal / noise ratio arranged in a hierarchical order.
Additionally, although not yet accepted as standard, bit depth scalability and chroma format scalability are also discussed.
List of references
non-patent literature
Non-Patent Literature 1: JCTVC - B205, "Test Model under Consideration", Joint Collaborative Team on Video Coding Meeting: Geneva, CH, 21-28 July 2010.
Non-patent literature 2: VCEG - AI22 "Motion Vector Coding with Optimal PMV Selection", Jungyoup Yang et al, July 2008.
Non-patent Litera Tour 3: JCTVC - A116, «Video Coding Technology Proposal by Fraunhofer HHI», M. Winken et al, April, 2010.
SUMMARY OF THE iNVENTION
Technical Problem
The method proposed in patent literature 2, and the method proposed in the patent literature 3 described above are not intended to scalable video coding. In applying such methods to the existing level of each image to be encoded with a scalable video, the amount of code can be reduced to some extent. However, depending on the type of scalable video coding the motion correlation between the levels noticeable. Thus, it would be useful to improve encoding efficiency by optimizing a correlation between the levels of traffic.
technology object of the present invention is to improve coding efficiency by utilizing motion correlation between the levels of the image to be scalable video coding.
The solution of the problem
According to the present invention, there is provided an image processing apparatus including a module information, which receives setting information for setting a motion vector in the second prediction block to a second level corresponding to the first block prediction of the first layer of a scalable video decoding, comprising a first level and a second level, which is higher than the first level, wherein the installation information is linked with the motion vector set in the first unit etc. edskazaniya and setting the motion vector module that sets a second motion vector prediction unit using the mounting information obtained module information.
The image processing device mentioned above may be typically realized as an image decoding device which decodes the image.
In accordance with the present invention there is provided an image processing method comprising receiving setup information for setting a motion vector in the second prediction block to a second level corresponding to the first block prediction in the first level of a scalable video decoding, comprising a first level and a second level which is higher, than the first level, wherein the installation information is linked with the motion vector set in the first prediction unit and the vector unit Navigating Nia second prediction block using the obtained setting information.
According to the present invention, there is provided an image processing apparatus including an information generating unit that generates setting information for setting a motion vector in the second prediction block to a second level corresponding to the first block prediction in the first level of a scalable video decoding, comprising a first level and a second level, It is higher than the first level, wherein the installation information is linked with the motion vector set in the first Lok prediction and an encoding module which encodes the setting information generated by the information generating section.
The image processing device mentioned above may be typically realized as an image encoding device that encodes an image.
In accordance with the present invention, there is provided an image processing method including generating setting information for setting a motion vector in the second prediction block to a second level corresponding to the first block prediction in the first level of a scalable video decoding, comprising a first level and a second level which is higher than the first level, wherein the installation information is associated with the motion vector set in the first prediction block, and coding sge nerirovannoy installation information.
Advantageous Effects of Invention
In accordance with the present invention, encoding efficiency is further increased by optimizing the correlation between levels of motion image which is encoded scalable manner.
BRIEF DESCRIPTION OF DRAWINGS
1 is a block diagram showing a configuration of an image encoding apparatus in accordance with an embodiment.
2 is an explanatory view illustrating spatial scalability.
3 is an explanatory view illustrating SNR scalability.
4 is a block diagram showing an example of a detailed configuration section motion estimation parameters according to the first embodiment.
5 is a first explanatory view illustrating an example of the candidate predictor to predict a motion vector.
6 is a second explanatory view illustrating an example of the candidate predictor to predict a motion vector.
7 is a flowchart showing an example of realization of the sequence, the motion estimation process section motion estimation parameters according to the first embodiment.
8 is a block diagram showing an example of a detailed configuration section motion estimation parameters according to the second example.
9 is an explanatory view illustrating an example of inter-layer predictor.
10 is a flowchart showing an example of realization of the sequence, the motion estimation process section motion estimation parameters according to the second example.
11 is a block diagram showing an example of a detailed configuration section motion estimation parameters according to the third example.
12A is an explanatory view showing a first example of association information.
12B is an explanatory view showing a second example of association information.
12C is an explanatory view illustrating a third example of the association information.
13 is a flowchart showing an example of realization of the sequence, the motion estimation process section motion estimation parameters according to the third example.
14 is a block diagram showing an example of a detailed configuration section motion estimation parameters according to the fourth example.
15A is an explanatory view showing a first example of association information.
15B is an explanatory view showing a second example of association information.
15C is an explanatory view illustrating a third example of the association information.
16 is a flowchart illustrating an exemplary sequence of the section of the motion estimation process of the motion estimation parameters according to the fourth example.
17 is a block diagram showing a configuration example of an image decoding apparatus according to an embodiment.
18 is a block diagram showing an example of a detailed configuration of the motion compensation section in accordance with the first embodiment.
19 is a flowchart showing an example sequence implementing motion compensation process the motion compensation section in accordance with the first embodiment.
20 is a block diagram showing an example of a detailed configuration of the motion compensation section in accordance with a second embodiment.
21 is a flowchart showing an example sequence implementing motion compensation process the motion compensation section in accordance with a second embodiment.
22 is a block diagram showing an example of a detailed configuration of the motion compensation section in accordance with the third embodiment.
23 is a flowchart showing an example sequence implementing motion compensation process the motion compensation section in accordance with the third embodiment.
24 is a block diagram showing an example of a detailed configuration of the motion compensation section in accordance with the fourth embodiment.
25 is a block diagram illustrating an exemplary sequence implementing motion compensation process, the motion compensation section in accordance with the fourth embodiment.
26 is a block diagram showing an example of a schematic configuration of a television receiver.
27 is a block diagram showing an example of a schematic configuration of a mobile phone.
28 is a block diagram showing an example of a schematic configuration of a recording / reproducing apparatus.
29 is a block diagram showing an example of a schematic configuration of an image capturing device.
EMBODIMENTS
Further, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. It should be noted that in this specification and the drawings, elements that have substantially the same function and structure are denoted with the same reference numerals and repetition of explanation is omitted.
The description will be presented in the following order:
1. Example Configuration of the image encoding device
2. Example of a detailed configuration of the motion estimation section parameters
2-1. The first example
2-2. The second example
2-3. third example
2-4. fourth example
Example 3. The image decoding device configuration
4. EXAMPLE detailed configuration of the motion compensation section
4-1. The first example
4-2. The second example
4-3. third example
4-4. fourth example
5. Application Example
6. Conclusion
1. Configuration example of an image encoding apparatus according to an embodiment
1 is a block diagram showing an example of the image encoding device 10 in the configuration according to the embodiment. As shown in Figure 1, an apparatus 10 for image encoding includes A / D (analog-digital) conversion section 11, a sorting buffer 12, subtraction section 13, section 14, the orthogonal transform, a quantization section 15, section 16 of the lossless encoding, accumulation buffer 17, a section 18, transmission rate control section 21, an inverse quantization section 22. The inverse orthogonal transform, addition section 23, deblochny filter 24, frame memory 25, switches 26 and 27, section 30 and the intra prediction section 40 estimates parameters movement.
A / D conversion section 11 converts input image signal in an analog format into image data in digital format and generates a sequence of digital image data in the sorting buffer 12.
The sorting buffer 12 sorts the images included in the sequence of the input image data transmitted from the A / D conversion section 11. After sorting the images in accordance with GOP (Group of Pictures) structure in accordance with an encoding process, a sorting buffer 12 produces the image data that has been sorted, a subtraction section 13 in the intra prediction section 30 and section 40 of the motion estimation parameters.
Input image data from the sorting buffer 12 and the predicted image data input from the intra prediction section 30 or section 40 estimates the motion parameters to be described below, are supplied to the section 13 of subtraction. Subtracting section 13 calculates the prediction error data, which represents the difference between the input image data from the sorting buffer 12 and the predicted image data, and generates data calculated prediction error to the orthogonal transform section 14.
Orthogonal transformation section 14 performs orthogonal transformation data of the prediction error obtained from the subtraction section 13. The orthogonal transformation section 14 carried out an orthogonal transformation may be discrete cosine transform (DCT) or Karhunen-Loeve transform, for example. Orthogonal transform section 14 generates a transform coefficient data obtained in the orthogonal transformation process, a quantization section 15.
The conversion coefficient input from orthogonal transform section 14 and the signal transmission rate control section 18 of the transmission rate control, which will be described below, are supplied to the quantization section 15. Quantizing section 15 quantizes the transform coefficient data and generates quantized data conversion coefficient (hereinafter referred to as quantized data) in the section 16 and the lossless encoding section 21, an inverse quantization. Furthermore, the quantization unit 15 switches quantization parameter (quantization scale) on the basis of the speed control section 18, transmission rate control signal for changing the transmission bit rate for the quantized data input section 16 in the lossless coding.
The section 16 generates a lossless encoding the encoded stream by performing lossless coding process of the input quantized data from the quantization section 15. Lossless encoding section 16 carried out the lossless encoding may be variable-length encoding or arithmetic encoding, for example. Moreover, the section 16 multiplexes the lossless encoding information on intra-prediction or inter-prediction information of the switch 27 to the header of the encoded stream. Then 16 lossless coding unit generates the coded stream generated in the accumulation buffer 17.
Accumulation buffer 17 temporarily accumulates the encoded input stream coming from the unit 16 lossless encoding. Then, the accumulation buffer 17 supplies the coded stream accumulated in a transmission section (not shown) (e.g., communication interface or peripheral device) at a rate according to a channel transmission band.
Speed control section 18 monitors the presence of free storage space of buffer 17. Then, rate control unit 18 generates a rate control signal depending on the space available in the buffer storage 17 and generates a rate control signal generated in the quantization section 15. For example, when there is no more free space in the accumulation buffer 17, control section 18 generates a transmission rate of the rate control signal to reduce the bit rate of the quantized data. Furthermore, for example, if a free space in the storage buffer 17 is sufficiently large, the control section 18 generates a transmission rate control signal transmission rate to increase the bit rate of the quantized data.
Inverse quantization section 21 performs a process for inverse quantization of the quantized input data received from the quantization section 15. Then, the inverse quantization section 21 generates a transform coefficient data obtained in the inverse quantization section 22 in the inverse orthogonal transform.
Section 22 performs inverse orthogonal transformation process of the inverse orthogonal transform of the input data transformation coefficient supplied from the inverse quantization section 21, to thereby restore the predicted error data. Then, the section 22 generates an inverse orthogonal transform restored predicted error data in the adding section 23.
Furthermore, addition section 23 adds the restored predicted error data supplied to the input of section 22. The inverse orthogonal transformation and the predicted image data supplied to the input of section 30 to the intra prediction or section 40 of the motion estimation parameters, thereby to generate decoded image data . Then, the addition section 23 generates the decoded image data generated in deblochny filter 24 and frame memory 25.
Deblochny filter 24 performs a filtering process for reducing blockiness visible image structure occurring during the image encoding. Deblochny filter 24 filters the decoded image data input to the input from the addition section 23 to remove blockiness visible image structure, and generates the decoded image data after filtering in the frame memory 25.
The memory 25 stores the frames from the storage medium, the decoded image data input to the input from the addition section 23, and the decoded image data after filtering, received at the input of filter 24 deblochnogo.
Switch 26 reads the decoded image data after filtering, to be used for inter prediction of the frame memory 25, and supplies the decoded image data that have been read in section 40 of the motion estimation parameters as reference image data. Moreover, the switch 26 reads the decoded image data before filtering, to be used for the intra prediction of the frame memory 25, and supplies the decoded image data that have been read, in the intra prediction section 30 as reference image data.
The inter prediction mode, the switch 27 generates predicted image data as a result of the inter prediction section 40 estimates motion parameters into section 13 as subtraction and generates data in the inter prediction section 16 a lossless coding. The intra prediction mode, the switch 27 generates predicted image data as a result of intra prediction section 30 supplied from the intra prediction section 13 in the subtraction, and also generates the data in the intra prediction section 16, the lossless encoding. The switch 27 switches the mode of inter prediction and intra prediction mode in accordance with the value of a cost function, the set of sections 30 of the inner section 40 or the prediction motion estimation parameters.
Intra prediction section 30 carries out intra prediction process for each block within the image based on the image data to be coded (raw image data) directed to the input of the sorting buffer 12 and the decoded image data as reference image data, supplied from the frame memory 25. Then, the intra prediction section 30 generates a data intra prediction comprising the prediction mode data indicating the optimum prediction mode, the value of cost function and the predicted image data to the switch 27.
Section 40 performs motion estimation parameters of the process of motion estimation parameters for inter-prediction (interframe prediction) based on the original image data supplied from the sorting buffer 12 and decoded image data supplied through switch 26. The process of motion estimation section 40 estimates the parameters of motion parameters in accordance with the present embodiment, the expansion is implemented method described in non-patent literature 2 or the method described in non-patent literature 3. The p asshirennom method described above in the non-patent literature 2, the motion estimation section 40 may generate parameter predictor information showing the optimum predictor for each prediction block. In the extended mode, the above-described non-patent literature 3, the motion estimation section 40 may generate parameter association information indicating association optimal prediction mode for each block. Then, the motion estimation section 40 generates information predictor parameters or information associations, inter prediction information comprising information on the motion vector information and reference image, the value of cost function and the predicted image data to the switch 27. In the next section, four examples will be described in more configuration section 40 estimates the motion parameters.
The image encoding device 10 repeats the series of encoding processes described herein for each of the plurality of image layers which encodes scalable video. The first level is a level coded, called base level and representing a fuzzy image. The encoded base layer stream can be independently decoded without decoding encoded streams of other levels. Levels other than the core layer are called enhancement layers, representing the high resolution image. The information contained in the coded base layer stream, the encoded stream is used for enhanced layer for enhancing the coding efficiency. Therefore, to reproduce the image enhancement layer, encoded streams of both base layer and enhancement layer are decoded. The number of levels treated in a scalable video coding, may be three or more. In this case, the bottom level is a base level and other levels are improved levels. For an encoded stream of a higher enhancement layer, the information contained in the encoded streams of lower enhancement layers and base layer may be used for encoding and decoding. In this description, at least two levels, independent of each other, which depends on the level called the lower level and the level on the side defining the dependence is called an upper layer.
In scalable video coding using the image encoding device 10, the motion correlation between the levels is used for efficient encoding of information of the external prediction. That is, in block inter prediction motion vector is set to an upper layer based on the setting information about the motion vector that is installed on the lower level. More specifically, unit 40 estimates the motion parameters, as shown in Figure 1, includes a buffer to temporarily store information received during the inter prediction in the lower level and uses the information stored in the buffer for setting the motion vector for the upper layer. The correlation between the levels of movement is clearly visible in particular in a scalable video coding based on spatial scalability or SNR scalability.
2 is an explanatory view illustrating an example of spatial scalability. Figure 2, illustrates a scalable video encoding technology in the three levels L1, L2, L3. L1 level is a base level and levels L2, L3 are improved levels. The ratio of the spatial resolution level to level L2 L1 = 2: 1. The ratio of the spatial resolution of level L3 to level L1 is 4: 1. Even if the resolution values differ from each other as described above, the motion prediction in the block B1 to L1 level is likely to appear in the corresponding block B2 prediction level L2 and the corresponding prediction block B2 at the level L3 in the same manner. This is the correlation between levels of motion when spatial scalability.
3 is an explanatory view showing an example of scalability SNR. 3 shows three levels L1, L2, L3 for scalable video encoding. L1 level is a base level and levels L2, L3 are improved levels. The levels L1, L2, L3 equal spatial scalability with respect to each other. Nevertheless, as an example, the minimum quantization scale level L1 is equal to 25 and the bit rate of the encoded stream may be set around 2 Mbps quantization orthogonal transform coefficient. On the other hand, for example, the minimum level L2 quantization scale is 12 and the bit rate of the encoded stream becomes about 5 Mbps. Furthermore, for example, the minimum quantization scale level L3 is 0 and the bit rate of the encoded stream becomes about 10 Mbps. Thus, even if the value of the bit rate different from each other, the movement appearing in the block B1 L1 prediction level probably appear in the corresponding block B2 L2 level prediction and B3 corresponding block prediction level L3 in the same manner. This represents a correlation between the levels of traffic at SNR scalability.
The image encoding apparatus 10 according to the present embodiment efficiently encodes active inter prediction information using a motion correlation between levels.
Instead, the prediction unit of the lower layer corresponding to the block top level prediction may be, for example, the prediction block among the prediction blocks in the lower layer overlap (sharing pixels in the same position) of the top level prediction block having the largest overlap (having the largest number shared pixels). According to this definition, a prediction unit, where the motion correlation is likely to appear, may be regarded as "an appropriate prediction block."
2. Example of a detailed configuration of the motion estimation section parameters
In this section, four examples of a detailed configuration of the motion estimation section 40 will be described parameters, as shown in Figure 1. Of these four examples, the first and second examples are examples to extend the method described in Nonpatent Literature 2, as described above. On the other hand, in the third and fourth examples are examples of extensions of the method described in Nonpatent Literature 3, as described previously.
2-1. The first example
4 is a block diagram showing an example of a detailed configuration of section 40 of the motion estimation parameters according to the first embodiment. Referring to Figure 4, unit 40 estimates the motion parameter includes a control section 141 evaluation section 142 calculate the motion vector prediction unit 143 the motion vector buffer 144 of the motion vector, the mode selecting section 145, generation section 146 information and buffer information predictor 147 .
(1) Baseline
In assessing the base layer motion parameter estimation control section 141 has at least one block in the prediction encoding cell and initiates the calculation section 142 for calculating a motion vector for each motion vector prediction block. The value of the motion vector calculating section 142 calculated motion vector is supplied to the prediction section 143 and the motion vector is also stored in the buffer 144 of the motion vector. Section 143 generates a prediction motion vector predicted motion vector using the motion vectors (reference vectors called motion) the other blocks stored in the buffer 144 of the motion vector corresponding to each of a plurality of predictor candidates. Then the motion vector prediction section 143 calculates a delta motion vector as the difference between the motion vector calculating section 142 calculated motion vector and the predicted motion vector. Mode selection section 145 generates predicted image data using the motion vector calculation section 142 calculate the motion vector, and estimates a value based on the value calculated function of the comparison data generated predicted image and the original image data. Then, the mode selection unit 145 selects the optimum location of the prediction block that minimizes the value of the cost function and the optimal predictor for each prediction block. Generating section 146 generates information data indicating the optimal predictor for each block of prediction and inter prediction information comprising information delta motion vector indicating a delta motion vector. For example, the information may comprise predictor index for identifying a reference motion vector. Information predictor may also include a parameter for identification of formula predictions. Then, the information generating section 146 generates information inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27. In addition, information predictor generated information generation section 146 is temporarily stored in the buffer 147 information predictor for use in the process upper layer.
Figures 5 and 6 are first explanatory views illustrating examples of predictor candidates for a prediction motion vector. 5 shows a block PTe prediction for predicting a predicted vector and the motion PMVe PTe prediction block. The predicted vector PMVe PTe motion prediction block can be predicted using, e.g., vectors MBa, MVb, MVc motion prediction blocks adjacent to the block prediction PTe as reference motion vectors. The reference motion vector MVa is a motion vector set for the adjacent block prediction PTe left of the prediction block. The reference motion vector MVb is a motion vector set for the neighboring block from the prediction top PTe prediction block. The reference vector is the motion vector MVc of movement set for the adjacent prediction block from the top right PTe prediction block. The predicted motion vector PMVe prepared according to the following formula using these prediction reference vectors MBA, MVb, MVC movement.
<img file="00000001.jpg" he="9" wi="101" img-format="jpg" img-content="undefined" />
Formula (1) it is a formula based on the prediction of the spatial correlation of motion. Med in formula (1) is an operation of averaging. That is, according to the formula (1), the predicted motion vector is a vector PMVe having an average value of the horizontal components and vertical components of the average value of reference vectors MBa, MVb, MVc motion as components. The predicted motion vector PMVe formed by the formula (1) is an example of the candidate predictor. The predicted motion vector calculated by the formula, the prediction on the basis of spatial correlation of motion, is called spatial predictor.
Incidentally, the formula (1) is only an example of formula predictions. When, for example, it lacks one of the vectors MBa, MVb, MVc motion, e.g., when a prediction block intended for prediction, located at the edge of the image, the missing vector can be omitted when implementing the averaging operation. Furthermore, according to formulas (2) to (4), as shown below, a simple spatial predictor can be used as candidate predictors.
<img file="00000002.jpg" he="8" wi="59" img-format="jpg" img-content="undefined" />
<img file="00000003.jpg" he="7" wi="57" img-format="jpg" img-content="undefined" />
<img file="00000004.jpg" he="7" wi="57" img-format="jpg" img-content="undefined" />
On the other hand, as the predicted temporal predictor motion vector calculated at the predictive formula based on the temporal correlation of motion, it may also be used as candidate predictors. 6 shows the image IM01, comprising PTe prediction block for prediction and the reference image IM02. Bcol block in the reference image IM02 is combined unit PTe prediction block. prediction formula using the temporal correlation of motion, for example, uses a motion vector for block alignment Bcol or block adjacent to the block's integrated Bcol, as a reference motion vector.
For example, the motion vector of the combined unit is set as Bcol MVcol. Moreover, motion vectors of the upper, left, bottom, right, upper left, lower left, lower right and upper right blocks combined Bcol unit installed on both MVt0 MVt7, respectively. Then, the predicted motion vector PMVe may be generated from the reference motion vector and MVcol MVt0 MVt7 by using Formula (5) or (6) predictions, as shown below.
<img file="00000005.jpg" he="9" wi="108" img-format="jpg" img-content="undefined" />
<img file="00000006.jpg" he="9" wi="110" img-format="jpg" img-content="undefined" />
After generating the predicted vector PMVe movements for each of a plurality of predictor candidates section 143 the prediction motion vector calculated as shown in the following equation, delta vector MVDe motion representing the difference between the vector MVe motion calculated section 142 calculate the motion vector and the predicted vector PMVe movement.
<img file="00000007.jpg" he="7" wi="78" img-format="jpg" img-content="undefined" />
Then the optimal predictor (e.g., with the highest accuracy predictor prediction) is selected for each block of prediction mode selecting section 145 and the predictor information showing the optimal predictor, and delta information of the motion vector indicating a corresponding delta motion vector generated by the generation section 146 information. Instead information delta motion vector, motion vector information indicating a motion vector calculation section 142 calculating the motion vector can be generated for a prediction block for which a motion vector is not predicted. The information thus obtained can be encoded coding section 16 as the information lossless inter prediction. Predictor information is temporarily stored in the buffer 147 information predictor for use in the upper layer.
(2) Superior level
In the process parameter estimates enhancement layer motion prediction motion vector predictor based on lower level information stored in the buffer 147 information predictor.
Firstly, sektsiya141 control section 142 initiates the estimation of the motion vector calculation for calculating a motion vector for each prediction block, located in the coding cell. Then, the control unit 141 initiates operation evaluation prediction section 143 of the motion vector for generating a predicted motion vector for each prediction block. The predicted motion vector in the enhancement layer section 143 generates prediction motion vector predictors using the information as the setting information stored in the buffer 147 information predictor. More specifically, for example, when the information predictor prediction block in the lower level corresponding to a certain prediction unit in the upper stage shows a spatial predictor, as shown in formula (1), the section 143 the prediction motion vector takes counterbalanced motion vectors of adjacent prediction blocks in the upper layer from the buffer 144 of the motion vector. Then, the prediction section 143 replaces the motion vector obtained by the reference motion vector from the formula (1) in order to generate predicted motion vector. When, for example, information predictor prediction block in the lower level corresponding to a certain prediction unit in the upper stage indicates the temporal predictor, as shown in formula (5), the section 143 the prediction motion vector takes support vector combined motion block in the reference image and the adjacent the combined block units from the buffer 144 of the motion vector. Then, the prediction section 143 replaces the motion vector obtained by the reference motion vector from the formula (5) for generating a predicted motion vector. Furthermore, the section 143 calculates a prediction motion vector delta motion vector representing the difference between the motion vector calculating section 142 calculated motion vector and the predicted motion vector. Mode selection section 145 generates predicted image data using the motion vector calculation section 142 calculate the motion vector, and calculates a value of the cost function. Generating section 146 generates information data delta motion vector indicating a delta motion vector is calculated for each prediction block. Then, the information generating section 146 generates the inter prediction information comprising information delta motion vector value of the cost function and the predicted image data to the switch 27.
(3) The sequence of a process
7 is a flowchart showing an example of a process of motion estimation section 40 estimates the parameters of motion parameters in accordance with the present example. Referring to Figure 7, section 40 performs motion estimation parameters of the process parameter estimates motion base layer (step S110). As a result, the prediction set occupancy encoding blocks in each cell, and selects the optimum predictor for each prediction block. Data buffer 147 buffers the information predictor predictor showing the optimum predictor for each prediction block as the installation information.
Processes in steps S111 to S117 are the process of motion estimation parameters improved levels. Of these processes, processes in steps S111 to S116 are repeated for each prediction block (hereinafter referred to as signal PU) of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level located below the level for prediction.
Firstly, the calculation section 142 calculates the motion vector of the motion vector signal PU top level on the basis of the original image pixel values and the pixel values of the reference image frame from the memory 25 (step S111) .3atem, calculation section 142 generates the motion vector calculated by the motion vector in the section 143 prediction motion vector and the motion vector buffer 144.
Next, the prediction unit 143 generates a predicted motion vector for motion vector signal PU by using the information corresponding predictor PU in the lower level, the stored information in the buffer 147 of the predictor and the reference motion vector is obtained in accordance with the information predictor (step S112). Next, the prediction section 143 calculates a motion vector delta motion vector by substituting a predicted motion vector from a motion vector (step S113). Then, unit 143 produces a prediction motion vector of a motion vector and a motion vector delta signal PU section 145 in the selection mode.
Further, mode selecting section 145 generates the predicted image data and the value of the signal PU cost function (step S114). Generating section 146 generates information data delta motion vector indicating a delta motion vector signal relative to PU (step S115).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S111 (step S116). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S117). If the presence is established level, the level that was predicted, is set as the lower level and the next level is set as the upper layer processing to step S111 and thereafter is repeated. Information predictor showing predictors selected for the lower layer continues to accumulate data in buffer 147 of the predictor. If no level, the process of motion estimation parameters shown in Figure 7 terminates. Predicted image data and inter prediction information (which may contain information delta motion vector) generated here is output to the subtraction section 13 and section 16 of the lossless encoding via the switch 27.
Thus, in the first example, the information as the information of the external predictor predicting an upper level is not encoded, and information predictor lower layer is reused, and therefore, the amount of code information inter prediction can be reduced.
2-2. The second example
8 is a block diagram showing an example of a detailed configuration of section 40 estimates the motion parameters according to the second example. As shown in Figure 8, the motion estimation section 40 of parameters comprises the control section 241 evaluation section 242 calculate the motion vector prediction section 243 of the motion vector buffer 244 of the motion vector, the mode selecting section 245, generation section 246 information.
(1) Baseline
The process parameter estimation motion base layer according to the present example may be the same parameter estimation process baseline movement described in the first example. In the present example, however, information predictor base layer can not be buffered, and information of motion vector of the base layer is buffered, extending through the levels. In assessing the base layer motion parameter estimation control section 241 has at least one block in the prediction encoding cell and initiates the calculation section 242 for calculating a motion vector for each motion vector prediction block. The value of the motion vector calculated by calculating section 242 of the motion vector is supplied to the prediction section 243 and the motion vector is also stored in the buffer 244 of the motion vector. Section 243 generates a prediction motion vector predicted motion vector using reference motion vectors stored in the motion vector buffer 244 in accordance with each of a plurality of predictor candidates. Then, the prediction section 243 calculates a motion vector delta motion vector as the difference between the motion vector calculating section 242 is calculated motion vector and the predicted motion vector. Section 245 generates the mode selection data predicted image using the motion vector calculation section 242 calculate the motion vector, and estimates the value of the cost function calculated on the basis of comparison data generated by the predicted image and the original image data. Then, the mode selecting section 245 selects the optimum location of the prediction block that minimizes the value of the cost function and the optimal predictor for each prediction block. Section 246 information generation predictor generates information showing the optimum predictor for each block of prediction and inter prediction information comprising information delta motion vector indicating a delta motion vector. Then, the information generating section 246 generates information inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27.
(2) Superior level
A candidate predictor estimated parameter during the evaluation of the base level of traffic in accordance with the present example, may comprise one or both of the above spatial and temporal predictors. Further, additional predictor candidates are entered in the evaluation parameters enhancement layer motion in accordance with the present example. Applicants predictor introduced herein are predictor candidates using a motion vector, a prediction block corresponding to the specified lower level, as a reference motion vector. Such an inter-layer predictor predictor hereinafter.
9 is an explanatory view illustrating an example of inter-layer predictor. 9 shows a block PTe prediction level L12 as an upper layer and a predicted vector PMVe PTe block motion prediction. PTbase prediction unit in L11 level as the lower level represents the prediction block corresponding to the block prediction PTe. Reference MVbase motion vector is a motion vector prediction block PTbase. An interlayer predictor can be represented, for example, the following formula (8).
<img file="00000008.jpg" he="8" wi="59" img-format="jpg" img-content="undefined" />
When the spatial resolution of the lower layer and the upper layer is different, then the motion vector is increased as shown in the following formula, in accordance with the spatial resolution ratio N between the lower layer and upper layer may be used as an inter-layer predictor. In this case, the values of the vertical component and the horizontal component of the inter-layer predictor rounded to match exactly (e.g., 1/4 pixel accuracy value and the like) the top-level motion vector.
<img file="00000009.jpg" he="9" wi="76" img-format="jpg" img-content="undefined" />
In the present example, unlike the first example, the optimal predictor predictor is selected from the plurality of candidates in the process of motion estimation parameters improved levels.
Firstly, the estimation control section 241 initiates the calculation section 242 for calculating a motion vector for each motion vector prediction unit in the coding cell. The motion vector calculating section 242 is calculated motion vector is generated in section 243 and the prediction motion vector is also stored in the buffer 244 of the motion vector. The motion vector buffer 244, stored as motion vectors (motion vectors bearing) calculated for each of the prediction blocks of the lower level. Section 243 generates a prediction motion vector predicted from a motion vector using reference motion vectors stored in the motion vector buffer 244, in accordance with each of a plurality of predictor candidates. The set of predictor candidates here contains the above-mentioned interlayer predictor. Then, the section 243 calculates a prediction motion vector delta motion vector as the difference between the motion vector calculation section 242 calculating the motion vector and the predicted motion vector. Section 245 generates the mode selection data predicted image using the motion vector calculation section 242 calculate the motion vector, and estimates the value of the cost function calculated on the basis of comparison data generated by the predicted image and the original image data. Then, selecting section 245 selects an optimum predictor mode for each prediction block. Section 246 information generation predictor generates information showing the optimum predictor for each block of prediction and inter prediction information that includes information delta motion vector indicating a delta motion vector. When the above-mentioned interlayer predictor is selected as the optimum predictor predictor information can contain an index that identifies a reference motion vector of the lower level. Then, the generation section 246 generates information informatsii246 inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27.
(3) The sequence of a process
10 is a flowchart showing an example of a process of motion estimation section 40 estimates the parameters of motion parameters in accordance with the present example. Referring to Figure 10, the section 40 performs motion estimation parameters of the process parameter estimates motion base layer (step S120). As a result, the prediction set occupancy encoding blocks in each cell, and selects the optimum predictor for each prediction block. The buffer 247 buffers the information data predictor predictor calculated for each prediction block.
Processes in steps S121 to S127 are the process of motion estimation parameters improved levels. Of these processes, processes in steps S121 to S126 are repeated for each of the signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level located below the level for prediction.
Firstly, the calculation section 242 calculates the motion vector of the motion vector signal PU top level on the basis of the original image pixel values and the pixel values of the reference image is input from the frame memory 25 (step S121). Then, the calculation section 242 generates the motion vector calculated in the motion vector prediction section 243 and the motion vector buffer 244 of the motion vector.
Next, the prediction unit 243 generates a predicted motion vector for motion vector signal PU using reference motion vectors stored in the motion vector buffer 244, according to each of a plurality of predictor candidates (step S122). The set of predictor candidates here contains an interlayer predictor. Next, the motion vector prediction section 243 calculates a delta motion vector for each of a plurality of predictor candidates (step S123). Then, unit 243 produces a prediction motion vector of a motion vector and a motion vector delta each predictor candidate selecting section 245 mode.
Further, mode selecting section 245 generates predicted image data for each candidate predictor and evaluates the value of the cost function to select the optimum predictor (step S124). Section 246 information generation predictor generates information indicating the selected optimal predictor information and delta motion vector indicating a corresponding delta motion vector (step S125).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S121 (step S126). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S127), and if a presence level, the processes in step S121 and after are repeated after a set level, which was predicted to the lower level and the next level as the highest level. The motion vector calculated for each signal PU lower layer continues to accumulate in the buffer 244 of the motion vector. If no level, the process of motion estimation parameters shown in Figure 10, ends. Predicted image data and inter prediction information (which may contain information and information predictor motion vector delta) generated here is output to the subtraction section 13 and section 16 of the lossless encoding via the switch 27.
In the second example, as described above, the predictor information indicating that interlayer predictor based on motion vector of the lower level is used as the external information is a top-level predictions and can be encoded. Thus, it becomes possible to predicting the motion vector corresponding to the lower layer prediction block having a clear correlation movement. Consequently, increased prediction accuracy leads to the fact that the number-kodadelta motion vector can be reduced.
Incidentally, unit 16 lossless coding which encodes information predictor may allocate the least amount of code for the inter prediction among a plurality of candidate predictors when coding the information of the upper-level predictor. Typically, motion correlation between the levels of strong spatial correlation or temporal correlation of motion. Thus, the smallest code amount allocation for the inter-layer predictor may use more frequent shorter codewords in the encoded stream after variable length coding, so that the code amount is further reduced.
2-3. third example
11 is a block diagram showing an example of a detailed configuration of section 40 estimates the motion parameters according to the third example. As shown in Figure 11, unit 40 estimates the motion parameter includes a control section 341 evaluation section 342 calculate the motion vector buffer 344 of the motion vector, the mode selecting section 345, generating section 346 and buffer 347 information association information.
(1) Baseline
In assessing the base layer motion parameter estimation control section 341 has at least one block in the prediction encoding cell and initiates the calculation section 342 for calculating a motion vector for each motion vector prediction block. The value of the motion vector calculated by calculating section 342 of the motion vector is supplied to the mode selection section 345 and also stored in the buffer 344 of the motion vector. When a motion vector calculated section 342 calculating the movement vector for a specific prediction block, is characteristic for the reference motion vector set, at least for one of the adjacent prediction block, the mode selecting section 345 sets the prediction mode data merge units. In accordance with the method proposed in the patent literature 3 described above, a certain prediction unit may be combined with the upper adjacent block prediction or prediction block located on the left. Thus, the mode selecting section 345 may select, for example, one of the joint with the upper adjacent block prediction, the combined prediction block located on the left and combined as combine mode. Further, mode selecting section 345 generates predicted image data for each block, and calculates a prediction value of the cost function based on the comparison of the generated predicted image data and the original image data. Generating section 346 generates information association information indicating association mode for each block of prediction and inter prediction information including a motion vector information prediction block which has not been combined with other blocks of prediction. Then, the information generating section 346 generates information inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27.
Combining information obtained in this example may comprise «MergeFlag» and «MergeLeftFlag». «MergeFlag», which is a flag indicating whether a motion vector signal PU general motion vector for the at least one adjacent PU. When, for example, MergeFlag = 1, then the motion vector signal PU is common for the motion vector of at least one adjacent PU. When MergeFlag = 0, the PU motion vector signal different from the motion vector of any adjacent PU. When MergeFlag = 0, then MergeLeftFlag not encoded, and instead, a motion vector (motion information and the information of the reference image and the like) encoded signal PU. When MergeFlag = 1 and two neighboring PUs have a common motion vector, then MergeLeftFlag may not be encoded.
MergeLeftFlag is a flag indicating whether a motion vector signal PU common to the vector of the left neighboring PU movement. When, for example, MergeLeftFlag = 1, then the motion vector signal PU is common to the vector of the left neighboring PU movement. When MergeLeftFlag = 0, the motion vector signal PU is different from the vector of the left neighboring PU and motion vector common to the upper adjacent PU movement.
Figures 12A-12C show examples of combining information obtained in the present example. In these three Figures shows a block B20 as a prediction signal on PU L21 level. Blocks B21, B22 are adjacent prediction block B20 prediction as prediction left block and the upper block prediction, respectively. The motion vector MV20 represents a motion vector calculated section 342 for calculating a motion vector prediction unit B20. The vectors MV21, MV22 motion are reference motion vectors set for blocks B21, B22 prediction, respectively.
In the example of Figure 12A, the motion vector MV20 is common to both reference vectors MV21, MV22 movement. In this case, the generation section 346 generates information MergeFlag = 1 as association information. MergeLeftFlag not included in the association information. decoding side, received information such association may establish a common motion vector for the motion vector of a block B21 or B22 prediction with respect to a block B20 MergeLeftFlag prediction without decoding.
In the example of Figure 12B, the motion vector MV20 is common to the reference motion vector MV21 and differs from the reference motion vector MV22. In this case, the generation section 346 generates information MergeFlag = 1 and MergeLeftFlag = 1 as the association information. decoding side, received information such association may establish a common motion vector for the motion vector of a block B21 and block B20 prediction prediction.
In the example of 12C, the motion vector MV20 is common to the reference motion vector MV22 and differs from the reference motion vector MV21. In this case, the generation section 346 generates information MergeFlag = MergeLeftFlag = 1 and 0 as the association information. decoding side, received information such association may establish a common motion vector for the motion vector of a block B22 and block B20 prediction prediction.
(2) Superior level
In assessing the enhancement layer parameters of motion, a motion vector set for each prediction block using information combining the lower layer stored in the buffer 347 information association.
Firstly, the estimation control section 341 receives information on lower-level combining the prediction block corresponding to each prediction unit in the coding cell lower layer from the buffer 347 information association. Then, if the association information obtained indicates that no association (e.g., MergeFlag = 0), then the control section 341 initiates the estimation calculation section 342 to calculate the motion vector of the motion vector corresponding to the top level prediction block. The motion vector determination section 342 calculating the motion vector produced in the mode selection section 345 and also stored in the buffer 344 of the motion vector. On the other hand, if the received association information indicates a prediction association with another unit, then the control section 341 does not originate estimation operation section 342 for calculating a motion vector calculating a motion vector for the corresponding higher-level prediction block. Instead, a mode selecting section 345 generates the data predicted image using the motion vector (e.g., if MergeLeftFlag = 1, the motion vector prediction block adjacent to the left side) (the prediction block for combining) obtained from the buffer 344 of the motion vector to the prediction block, which will be merged with another prediction unit, and calculates the value of the cost function. On the other hand, for the prediction blocks which are not combined with another prediction unit, a mode selecting section 345 generates the predicted image data using the motion vector delivered from the calculation section 342 of the motion vector, and calculates a value of the cost function. Generating section 346 generates information inter prediction information included in the motion vector information for prediction blocks which must not be combined with another prediction unit. Then, the information generating section 346 sends the generated information inter prediction, the value of the cost function and the predicted image data to the switch 27.
(3) The sequence of a process
13 is a flowchart showing an example of a process of motion estimation section 40 estimates the parameters of motion parameters in accordance with the present example. Referring to Figure 13, the section 40 performs motion estimation parameters of the process parameter estimates motion base layer (step S130). As a result, the prediction set placement unit in each coding cell and combining selected mode for each prediction block. Buffer 344 buffers the motion vector the motion vector calculated for each prediction block. The buffer 347 buffers the information association information association showing combining the selected mode for each prediction block as the installation information.
Processes in steps S131 to S136 are the process of motion estimation parameters improved levels. Of these processes, processes in steps S131 to S135 are repeated for each of the signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level located below the level for prediction.
Firstly, the estimation control section 341 determines whether the signal level of the corresponding upper PU PU lower level for combination with the other PU, based on the association information stored in the association information buffer 347 (step S131). If the corresponding PU lower layer combined with another PU, the subsequent process in step S132 is skipped.
At step S132 calculation section 342 calculates the motion vector of the motion vector signal PU, which is not combined with another PU on the basis of pixel values of the original image and the pixel values of the reference image is input from the frame memory 25 (step S132). Then, the calculation section 342 generates the motion vector calculated by the motion vector to the mode selection section 345 and a buffer 344 of the motion vector.
Further, mode selecting section 345 generates the predicted image data using the motion vector calculation section 342 calculating the motion vector or obtained from the motion vector buffer 344, and calculates the cost function (step S133). Then, the information generating section 346 generates information of motion vector signal PU, which is not combined with another PU (step S134).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S131 (step S135). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S136), and if a presence level, the processes in step S131 and after are repeated after a set level, which was predicted to the lower level and the next level as the highest level. The motion vector calculated for each signal PU lower layer continues to accumulate in the buffer 344 of the motion vector. Information continues to accumulate in the combining buffer 347 information association. If no level, the process of motion estimation parameters shown in Figure 13, ends. Predicted image data and inter prediction information generated here is output to the subtraction section 13 and section 16 of the lossless encoding via the switch 27.
Thus, in the third example, the information association information as a top-level inter prediction is not encoded, and information combining the lower layer is reused, and therefore, the amount of code information inter prediction can be reduced.
2-4.Chetverty example
14 is a block diagram showing an example of a detailed configuration of the motion estimation section 40 according to the fourth example. As shown in Figure 14, the motion estimation section 40 includes a section 441 estimates control section 442 calculate the motion vector buffer 444 the motion vector selecting section 445 and mode information generation section 446.
(1) Baseline
The process parameter estimation motion base layer according to the present example may be the same as the parameter estimation process is the base layer motion in accordance with the third example. In this example, however, the information association of the core layer may not be buffered. In assessing the base layer motion parameter estimation control section 441 locates the at least one block in the prediction encoding cell and initiates the calculation section 442 for calculating a motion vector for each motion vector prediction block. The motion vector calculated section 442 calculate the motion vector produced in the mode selection section 445 and also stored in the buffer 444 of the motion vector. When a motion vector calculated section 442 calculate a motion vector for a certain prediction unit, is a common reference for the motion vector of at least one neighboring prediction block, the mode selecting section 445 decides to combine these prediction blocks. Mode selection section 445 generates predictive image data for each prediction block and calculates cost function value based on the comparison of the generated predicted image data and the original image data. Generating section 346 generates information association information indicating the association mode for each block of prediction and inter prediction information comprising information of the motion vector prediction block, which is not combined with other blocks of prediction. Then, the information generating section 346 generates information inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27.
(2) Superior level
Combining information generated during parameter estimation motion base layer according to the present example, may contain two flags "MergeFlag" and "MergeLeftFlag", as in the third example. In contrast, association information generated in the process of motion estimation parameters improved levels may further comprise a new flag "MergeBaseFlag". MergeBaseFlag, that is a flag indicating the motion vector signal on PU, which is common for the motion vector corresponding to the lower level PU. When, for example, MergeBaseFlag = 1, then the motion vector signal PU is common for the motion vector corresponding to the lower level PU.
FIG. 15A-15C show examples of combining information obtained in this example. In these three Figures shows a block B30 as the prediction signal PU in the level L30. Blocks B31, B32 predictions are adjacent to block B30 as the left prediction a prediction block and the upper block prediction, respectively. The motion vector MV30 represents a motion vector calculated section 442 for calculating a motion vector prediction block ISA. The vectors MV31, MV32 are reference motion vectors motion blocks B31, B32 prediction, respectively. Also shown is a block B20 as a prediction signal corresponding to the PU PU L21 in the lower level. Motion vector MV20 is a reference motion vector buffered in block B20 prediction.
In the example of Figure 15A, the motion vector MV30 is common for all reference vectors MV31, MV32, MV20 movement. In this case, the generation section 446 generates information MergeFlag = 1 as the association information. MergeBaseFlag and MergeLeftFlag not include information association. decoding side, received information such association may establish the global motion vector blocks B20, B31 or B32 to ISA prediction block without decoding and MergeBaseFlag MergeLeftFlag.
In the example of Figure 15B, the motion vector MV30 is common to the reference motion vector MV20 and different from the reference vectors MV31, MV32 movement. In this case, the generation section 446 generates information MergeFlag = 1 and MergeBaseFlag = 1 as association information. decoding side, received information such association may establish the global motion vector to the prediction vector unit B20 movement in the lower level L21 for B30 L30 prediction block in the upper level.
In the example of 15C, the motion vector MV30 is common to the reference motion vector MV31 and differs from the support vectors MV20, MV32 movement. In this case, the generation section 446 generates information MergeFlag = 1, MergeBaseFlag = 0 and MergeLeftFlag = 1 as the association information. decoding side having received such information association may establish a common motion vector for the motion vector of a block B31 and block B30 prediction prediction.
In the process parameter estimates enhancement layer motion control unit 441 estimates the control section 442 initiates the calculation of the motion vector to compute a motion vector for each prediction unit in the coding cell. The motion vector calculated section 442 calculate the motion vector produced in the mode selection section 445 and also stored in the buffer 444 of the motion vector. Also stored in the buffer 444 the motion vector of the motion vectors (reference motion vectors) calculated for each of the prediction blocks of the lower level. When a motion vector calculated section 442 calculating the motion vector for the determined prediction block it is common for the reference motion vector of the neighboring prediction block or the corresponding prediction block in the lower layer selecting section 445 decides the mode to combine these prediction blocks. That is, the mode selecting section 445 may select, for example, a combine mode to a lower level, the union with the upper adjacent block prediction, the association with the left adjacent block and the prediction unmerged as combining mode. Further, mode selecting section 445 generates predicted image data for each prediction block and calculates cost function value based on the comparison of the generated predicted image data and the original image data. Generating section 346 generates information association information indicating association mode for each block of prediction and inter prediction information comprising information of the motion vector prediction block, which is not combined with other blocks of prediction. Then, the information generating section 346 generates information inter prediction, the value of the cost function and the predicted image data that were generated in the switch 27.
(3) The sequence of a process
16 is a flowchart showing an example of a process of motion estimation section 40 estimates the parameters of motion parameters in accordance with the present example. Referring to Figure 16, the section 40 performs motion estimation parameters of the process parameter estimates motion base layer (step S140). As a result, the prediction set placement unit in each coding cell and combining selected mode for each prediction block. Buffer 444 buffers the motion vector the motion vector calculated for each prediction block.
Processes in steps S141 to S146 are the process of motion estimation parameters improved levels. Of these processes, processes in steps S141 to S145 are repeated for each of the signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level located below the level for prediction.
First, the calculation section 442 calculates the motion vector of the motion vector signal PU top level on the basis of pixel values of the original image and the pixel values of the reference image is input from the frame memory 25 (step S141). Then, the calculation section 442 generates the motion vector calculated by the motion vector to the mode selection section 445 and the motion vector buffer 444.
Further, mode selecting section 445 selects the mode of association calculated by comparing the motion vector calculating section 442 of the motion vector to the reference motion vectors stored in the motion vector buffer 444 (step S142). If, for example, a motion vector calculated for the signal PU, is common to the reference motion vector stored in the buffer for the corresponding PU in the lower level, the association with the lower level can be selected.
Then, the mode selecting section 445 generates the predicted image data using the motion vector for the signal PU and candidate values of cost function (step S144). Then, the information generating section 446 generates the setting information including the association information (motion vector information and signaling PUs, which are not combined with other PU) for signal PU (step S144).
Then, if any remains untreated PU in the level for the prediction, then the process returns to step S141 (step S145). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S146), and if a presence level, the processes in step S141 and after are repeated after a set level, which was predicted to the lower level and the next level as the highest level. The motion vector calculated for each signal PU lower layer continues to accumulate in the buffer 444 of the motion vector. If no level, the process of motion estimation parameters of FIG.16 is finished. Predicted image data and inter prediction information generated here is output to the subtraction section 13 and section 16 of the lossless encoding via the switch 27.
Thus, in the fourth example, external information predicting an upper-level association information indicating that the PU signal is combined with the corresponding PU lower level (that is set global motion vector) can be coded. Consequently, combining the prediction block with the lower level having a clear correlation movement becomes possible and the motion vector prediction block to combine in an upper layer is not coded, and thus the amount of code can be effectively reduced.
Example 3. The image decoding device configuration
17 is a block diagram showing an example of the image decoding device 60 in the configuration according to the embodiment. As shown in Figure 17, the image decoding device 60 includes a storage buffer 61, decoding section 62 lossless section 63 Inverse quantization section 64 inverse orthogonal transform section 65 addition, deblochny filter 66, the sorting buffer 67, D / A (digital-analog) converter 68, frame memory 69, switches 70 and 71, the intra prediction section 80 and a section 90 of motion compensation.
Accumulation buffer 61 temporarily stores the input encoded stream supplied to the input of the transmission line.
Decoding section 62 decodes the lossless encoded stream applied to the input of the buffer storage 61, according to the encoding method used during encoding. Furthermore, the decoding section 62 losslessly decodes information multiplexed in an encoded stream header. The information in the multiplexed coded stream header may include information inter prediction and intra prediction information, as described previously, for example. Decoding section 62 generates information lossless inter prediction section 90 in the motion compensation. Furthermore, the decoding section 62 generates information lossless intra prediction in the intra prediction section 80.
The section 63 inversely quantizes the inverse quantization of the quantized data that has been decoded by the decoding section 62 without loss. 64 an inverse orthogonal transformation section generates a prediction error data by performing an inverse orthogonal transform the transform coefficient data received at input from the inverse quantization section 63, in accordance with the method of orthogonal transform, applied during encoding. Then, the inverse orthogonal transform section 64 generates a prediction error data generated in the section 65 addition.
Adding section 65 adds the prediction error data received from the input section 64 an inverse orthogonal transformation and the predicted image data received from the input switch 71, to thereby generate decoded image data. Then, the addition section 65 generates the decoded image data generated in deblochny filter 66 and frame memory 69.
Deblochny filter 66 removes blocking artifacts filtering the decoded image data supplied to the input of the adding section 65, and generates the decoded image data after filtering in the sorting buffer 67 and the memory 69 frames.
sorting buffer 67 generates a series of image data in a time sequence of input images sorting deblochnogo filter 66. Then, the sorting buffer 67 develops the generated image data to the D / A converter 68.
D / A converter 68 converts the image data into digital format, coming from the sorting buffer 67, an image signal in an analog format. Then, D / A converter 68 initiates the display of the image by outputting the analog image signal to the display (not shown) connected to the image decoding apparatus 60, for example.
The memory 69 stores the frames from the storage medium, the decoded image data before filtering, input to the addition section 65, and the decoded image data input at the input, after filtering of the filter 66 deblochnogo.
Switch 70 switches the output destination of image data from the frame memory 69 between the section 80 and the intra prediction section 90 motion compensation for each block in the image, in accordance with mode information obtained by decoding section 62. When, for example, the intra prediction mode is set, the switch 70 outputs the decoded image data before filtering, supplied from the frame memory 69 in the intra prediction section 80 as reference image data. When the inter prediction mode is set, the switch 70 outputs the decoded image data after filtering set of frame memory 69, a motion compensation section 90 as reference image data.
Switch 71 switches the output source of the predicted image data for supply to the addition section 65, a section 80 between the intra prediction section 90 and the motion compensation in accordance with mode information obtained by the decoding section 62 without loss. When, for example, the intra prediction mode is set, the switch 71 supplies the predicted image data, developed by the intra prediction section 80, section 65 in addition. When the specified inter prediction mode, the switch 71 supplies the predicted image data, developed by the motion compensation section 90, section 65 in addition.
Section 80 executes the intra prediction process The intra prediction based on the intra prediction information coming from the input section 62 and lossless decoding the reference image data from the frame memory 69 to generate predicted image data. Then, the intra prediction section 80 generates predicted image data generated in the switch 71.
Section 90 performs the motion compensation process based on the motion compensation inter prediction information supplied from the decoding section 62 without loss and the reference image data from the frame memory 69 to generate predicted image data. The process of the motion compensation section 90 motion compensation in accordance with the present embodiment, is realized by expanding the method described in Nonpatent Literature 2, or the method described in Non-Patent Literature 3. Then, the motion compensation section 90 generates predicted image data generated as a result of the process motion compensation in the switch 71. in the next section, four examples of the detailed configuration section 90 motion compensation will be described.
The apparatus 60 for decoding the series repeats the image decoding processes described herein for each of the plurality of scalable video coding levels. The first level is for decoding the base layer. After decoding core layer decoded one or more enhancement layers. When an enhancement layer is decoded, the information obtained by decoding the base layer or the lower layer used as other improved levels.
The scalable video decoding apparatus 60 picture decoding, the motion vector is set for a specific prediction block at the upper level by using the setting information about the motion vector set in the corresponding block in the lower layer prediction. Installation information may include, for example, the above information predictor, the information association information or motion vector.
4. Detailed configuration example of a motion compensation Section
In this section, four examples of a detailed configuration of the motion compensation section 90 will be described in FIG.17. Four examples correspond to the four examples section 40 estimates the parameters of the above-mentioned image encoding device 10 movement. The first and second examples are examples of the use of the extended process, as described in Nonpatent Literature 2, as previously described. On the other hand, in the third and fourth examples are examples of using the extended process described in non-patent literature 3 described above.
4-1. The first example
18 is a block diagram showing an example of a detailed configuration of the motion compensation section 90 according to the first example. As shown in Figure 18, motion compensation section 90 includes a section obtaining information 191, setting section 192 motion vector predictor information buffer 193, buffer 194 and the motion vector compensation section 195.
(1) Baseline
The compensation process base layer motion information obtaining section 191 obtains information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, the information may comprise inter prediction information and the predictor motion vector delta information (motion vector information for prediction blocks for which the motion vector is not predicted). Information predictor obtained here indicates, for example, that among the aforementioned various candidate predictor predictor is selected for each prediction block for coding. Fitting section 192 sets a motion vector for each motion vector of the prediction block. Then, a motion vector set for each prediction unit installation section 192 of the motion vector is output to compensation section 195 and also stored in the buffer 194 of the motion vector. Furthermore, information predictor for each prediction block is temporarily stored in the buffer 193 to process information predictor in the upper layer. Parameters motion vector set setting section 192 of the motion vector may be created using a predictor shown predictor information, for each block of prediction and the delta motion vector information shown delta motion vector. For example, when the information is the predictor for the determined prediction block indicates a spatial predictor, according to formula (1), the setting section 192 receives the motion vector counterbalanced motion vectors of adjacent prediction blocks for the prediction block of motion vector buffer 194. Then, setting section 192 replaces the motion vector obtained by the reference motion vector from the formula (1) for generating a predicted motion vector. Further, the installation section 192 restores the motion vector the motion vector by adding a delta motion vector generated by the predicted motion vector. The motion vector thus recovered, is mounted on each block of prediction. Compensation section 195 generates predicted image data of each prediction block using a motion vector set for each prediction unit, the installation section 192 of the motion vector, and reference image data is input from the frame memory 69. Then, the section 195 generates a compensation data generated predicted image to the addition section 65 through the switch 71.
(2) Superior level
The compensation process enhancement layer motion prediction is carried out based on the motion vector predictor lower layer information stored in the buffer 193 information predictor.
Firstly, the section 191 receives receive information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, external information predicting the enhancement layer information may comprise a delta motion vector (motion vector information for prediction blocks for which the motion vector is not predicted). Furthermore, since setting information sets the motion vector for each prediction block in the lower layer receive section 191 receives information predictor showing predictor used to predict the motion vector corresponding to the prediction block in the lower layer from the buffer 193 information predictor. Information predictor obtained here indicates, for example, one of the above spatial and temporal predictor predictor. Fitting section 192 restores the motion vector using the motion vector information, the delta information, and motion vector predictor derived information section 191, and sets the reconstructed motion vector to each block of prediction. The motion vector set for each prediction unit installation section 192 of the motion vector is output to compensation section 195 and also stored in the buffer 194 of the motion vector. Compensation section 195 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 192 of the motion vector and the reference image data received from the input frame memory 69. Then, the section 195 generates a compensation data generated predicted image to the addition section 65 through the switch 71.
(3) The sequence of a process
19 is a block diagram illustrating an exemplary flowchart of the process of the motion compensation section 90 motion compensation in accordance with the present example. Referring to Figure 19, motion compensation section 90 performs the process of motion compensation of the base layer (step S210). At this point, the buffer 193 buffers the information data predictor predictor showing predictor selected for coding each prediction block as the installation information.
Processes in steps S211 to S218 is a process of motion compensation improved levels. Of these processes, the processes of steps S211 to S217 are repeated for each signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level below the level for prediction.
Firstly, the section 191 receive sets one upper level PU, PU as a signal, and obtains information PU predictor in the lower layer corresponding to the signal from the buffer 193 PU predictor information (step S211). Section 191 also receives information information delta motion vector signal regarding PU (step S212). Fitting section 192 decodes motion vector information delta motion vector (step S213).
Further, the installation section 192 generates the motion vector predicted movement vector signal PU predictor using information obtained information section 191, and the reference motion vectors (step S214). Further, the installation section 192 restores the motion vector the motion vector by adding a delta motion vector generated by the predicted motion vector (step S215). Restored so the motion vector is set to the signal PU. Furthermore, the recovered motion vector are temporarily stored in the buffer 194 to process a motion vector in the upper layer. For prediction blocks for which the vector is predicted, predicts information instead delta motion vector, motion vector information may be obtained from the coded stream by decoding the motion vector based on motion vector information.
Further, the compensation unit 195 generates predicted image data signal PU, using the motion vector signal set on PU section 192 setting the motion vector and the reference image data is input from the frame memory 69 (step S216).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S211 (step S217). On the other hand, if no unprocessed PU, it is further determined presence level (any higher level) (step S218) .If the presence set level, the processes in step S211 and after are repeated after a set level, which was predicted to lower the level and the next level as a high level. Information predictor showing the predictors selected for the lower level, continue to be buffered in the buffer 193 information predictor. If no level, the motion compensation process shown in Figure 19, ends. Predicted image data generated here is output to the adding section 65 via the switch 71.
In the first example, as previously described, information predictor lower layer can be re-used for decoding the upper layer and, therefore, no need to redundantly encode predictor information for the upper level. Accordingly, the amount of code information inter prediction can be reduced.
4-2. The second example
20 is a block diagram showing an example of a detailed configuration of the motion compensation section 90 according to the second example. As shown in Figure 20, motion compensation section 90 includes a section obtaining information 291, setting section 292 of the motion vector, the motion vector buffer 294, and section 295 compensation.
(1) Baseline
Process base layer motion compensation in accordance with the present example may be the same as the process of motion compensation of the base layer according to the first example. In this example, however, information predictor base layer can not be buffered and information of motion vector of the base layer is buffered by levels of proliferation. The compensation process base layer motion information obtaining section 291 obtains information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, inter prediction information may comprise information and information predictor delta motion vector (motion vector information for prediction blocks for which no motion vector is predicted). Information predictor obtained here indicates, for example, among the candidate predictor may comprise the above spatial and temporal predictor predictor predictor selected for each prediction block for coding. Fitting section 292 sets a motion vector for each motion vector of the prediction block. Then, a motion vector set for each prediction unit installation section 292 of the motion vector is generated in compensation section 295 and also stored in the buffer 294 of the motion vector. Fitting motion vector setting section 292 of the motion vector can be implemented using a predictor shown predictor information, for each block of prediction and the delta motion vector information shown delta motion vector. Compensation section 295 generates predicted image data of each prediction block using a motion vector set for each prediction unit, the installation section 292 of the motion vector, and reference image data is input from the frame memory 69. Then, the section 295 generates a compensation data generated predicted image to the addition section 65 through the switch 71.
(2) Superior level
The compensation process enhancement layer motion prediction can be performed using a motion vector predictor based on the inter-layer reference movement vectors of the lower level, stored in the buffer 294 of the motion vector.
Firstly, the section 291 receives receive information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, external information prediction improved level may comprise, in addition to information delta motion vector predictor information showing the predictor selected for the encoding of a plurality of predictor candidates, which includes an interlayer predictor as the installation information. Information predictor, indicating that the selected interlayer predictor, use the least amount of code from a set of predictor candidates. Fitting section 292 restores the motion vector using the motion vector information, the delta information, and motion vector predictor derived information section 291, and sets the reconstructed motion vector prediction for each block. When the information showing an interlayer predictor predictor setting section 292 may set a motion vector of a reference motion vector, enlarged by a factor of spatial resolution between levels, by formula (9), as a predicted motion vector. In this case, the installation section 292 of the motion vector may be rounded value of the predicted motion vector in accordance with the motion vector accuracy. The motion vector set for each prediction unit installation section 292 of the motion vector is generated in compensation section 295 and also stored in the buffer 294 of the motion vector. Compensation section 295 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 292 of the motion vector, and reference image data is input from the frame memory 69. Then, the section 295 generates a compensation data generated predicted image to the addition section 65 through the switch 71.
(3) The sequence of a process
21 is a flowchart showing an exemplary flowchart of the process of the motion compensation section 90 motion compensation in accordance with the present example. As shown in Figure 21, motion compensation section 90 first performs the process of motion compensation of the base layer (step S220). At this point, the buffer 294 buffers the motion vector the motion vector set to each prediction block.
Processes in steps S221 to S218 is a process of motion compensation improved levels. Of these processes, the processes of steps S221 to S228 are repeated for each signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level below the level for prediction.
Firstly, the section 291 receive sets one upper level PU, PU as signal and obtains a delta motion vector predictor information regarding PU signal from the coded stream (step S221). Fitting section 292 decodes motion vector information delta motion vector (step S222). Fitting section 292 uses the motion vector predictor information for identifying the predictor, which is used for generating a predicted motion vector signal PU (step S223).
Further, the installation section 292 generates a predicted motion vector for motion vector signal PU using reference buffered motion vectors of the motion vector buffer 294, according to the identified predictor (step S224). If, for example, identified inter-layer predictor predictor is, the motion vector is mounted on PU in the lower layer corresponding to the signal PU, is used as a reference motion vector MVbase in the above formula (8) or (9). Further, the installation section 292 restores the motion vector the motion vector by adding a delta motion vector generated by the predicted motion vector (step S225). The motion vector restored thus set for the signal PU. Furthermore, the recovered motion vector are temporarily stored in the buffer 294 to process a motion vector in the upper layer. For prediction blocks for which no prediction vector predicted, instead of the information delta motion vector, motion vector information may be obtained from the coded stream for decoding motion vector information in the motion vector.
Further, the compensation unit 295 generates predicted image data signal PU, using the motion vector signal set on PU section 292 setting the motion vector and the reference image data received from the input memory 69 frames (step S226).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S221 (step S227). On the other hand, if no unprocessed PU, it is further determined presence level (any higher level) (step S228) .If the presence set level, the processes in step S221 and after are repeated after a set level, which was predicted to lower the level and the next level as a high level. If there is no level, the motion compensation process shown in Figure 21 ends. Predicted image data generated here is output to the adding section 65 via the switch 71.
In the second example, as described above, the motion vector used for motion compensation the top level can be predicted in accordance with the inter-layer predictor based on motion vector set in the lower level. Therefore, increasing the accuracy of the prediction motion vector will lead to a decrease in the number kodadelta-motion vector.
4-3. third example
22 is a block diagram showing an example of a detailed configuration of the motion compensation section 90, in accordance with the third embodiment. As shown in Figure 22, motion compensation section 90 includes a section obtaining information 391, setting section 392 of the motion vector buffer 393 information combining buffer 394 and the motion vector compensation section 395.
(1) Baseline
The compensation process base layer motion information obtaining section 391 obtains information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, inter prediction information may comprise information association and motion vector information. Information Association, adopted herein may include, for example, MergeFlag and MergeLeftFlag, as shown in FIG. 12A to 12C and according to indicate among the plurality of combining mode candidates selected combination mode for each prediction block for coding. Fitting section 392 sets a motion vector for each motion vector of the prediction block. Then, a motion vector set for each prediction unit installation section 392 of the motion vector is generated in compensation section 395 and also stored in the buffer 394 of the motion vector. Furthermore, the information association for each prediction block stored in the buffer 393 for data combining process in the upper layer. If, for example, the information association indicates that a certain prediction unit combined with the adjacent prediction block adjacent to the block prediction (set global motion vector for that prediction block), the section 392 setting the motion vector gets the motion vector is mounted on an adjacent block prediction from the buffer 394 and sets the motion vector obtained by the motion vector for the above-mentioned prediction block. On the other hand, if the association information indicates that a certain prediction unit is not combined with another prediction unit, setting section 392 sets the motion vector reconstructed motion vector decoding motion vector information obtained by the information obtaining section 391 in the above-mentioned prediction block. Compensation section 395 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 392 of the motion vector and the reference image data received from the input frame memory 69. Then, the compensation unit 395 generates predicted image data generated in the adding section 65 via the switch 71.
(2) Superior level
During motion compensation the enhancement layer, motion vector is set for each prediction block, according to the information combining the lower layer stored in the buffer 393 information association.
Firstly, the section 391 receives information setting information for setting the motion vector for each prediction block at the upper level corresponding to each block of prediction buffer 393 information association. Section 391 receives the information of the motion vector information contained in the information unit for inter prediction prediction prediction unintegrated with another unit. Combining information received by the information receiving section 391 may comprise, for example, MergeFlag and MergeLeftFlag, described with reference to FIGS 12A at 12C. Fitting section 392 sets the motion vector a motion vector for each prediction unit in accordance with the association information received by the information receiving section 391. The motion vector set for each prediction unit installation section 392 of the motion vector is generated in compensation section 395 and also stored in the buffer 394 of the motion vector. Fitting section 392 may set the motion vector the motion vector restored by decoding motion vector information in prediction unit, which is not combined with another prediction unit. Compensation section 395 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 392 of the motion vector and the reference image data received from the input frame memory 69. Then, the compensation unit 395 generates predicted image data generated in the adding section 65 via the switch 71.
(3) The sequence of a process
23 is a flowchart showing an exemplary flowchart of the process of the motion compensation section 90 motion compensation in accordance with the present example. As shown in Figure 23, motion compensation section 90 first performs the process of motion compensation of the base layer (step S230). At this point, the buffer 393 buffers the information data association association, showing association mode selected for coding each prediction block as the setting information.
Processes in steps S231 to S238 is a process of motion compensation improved levels. Of these processes, the processes of steps S231 to S237 are repeated for each signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level below the level for prediction.
Firstly, the section 391 receive sets one PU top level as a signal PU and PU receives information combining the lower level corresponding to the signal PU, from association information buffer 393 (step S231). Further, section 391 information determines whether to combine with other signal PU PU based on the received association information (step S232). When, for example, the corresponding PU in the lower layer is combined with left adjacent PU, the PU signal may also be determined for association with the left neighboring PU. Similarly, when the corresponding PU in the lower layer is combined with the upper adjacent PU, the PU signal may also be determined for association with the upper neighboring PU. In these cases, the process proceeds to step S233. On the other hand, when the corresponding PU in the lower layer is not combined with the adjacent PU, the PU signal also can be defined as not to be combined with the adjacent PU. In this case, the process proceeds to step S234.
In step S233, the section 392 receives the motion vector of establishing a motion vector determined according to the association information from the buffer 394 and sets the motion vector obtained in the motion vector signal PU (step S233). In step S234, on the other hand, receive section 391 receives the information signal PU motion vector (step S234). Then, setting section 392 decodes the motion vector obtained in the motion vector information, and sets the motion vector decoded in the motion vector signal PU (step S235).
Further, the compensation unit 395 generates predicted image data signal PU, using the motion vector signal set on PU section 392 setting the motion vector and the reference image data are input to the frame memory 69 (step S236).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S231 (step S237). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S238). If the presence is established level, the processes in step S231 and after are repeated after a set level, which has been predicted as a lower level and the next level as the highest level. Association information indicating association mode selected for the lower layer, the buffer 393 continues to be buffered information association. If there is no level, the motion compensation process shown in Figure 23, ends. Predicted image data generated here is output to the adding section 65 via the switch 71.
In the third example, as described above, the information association the lower layer is reused for decoding of the upper level, and thus, there is no need for redundant coding association information for the upper level. Thus, the magnitude of the external code information prediction can be reduced.
4-4. fourth example
24 is a block diagram showing an example of a detailed configuration of the motion compensation section 90, in accordance with the fourth embodiment. As shown in Figure 24, motion compensation section 90 includes a section obtaining information 491, setting section 492 of the motion vector, the motion vector buffer 494, and section 495 compensation.
(1) Baseline
The compensation process base layer motion information obtaining section 491 obtains information inter prediction decoded by decoding section 62 from the lossless encoded stream. In the present example, inter prediction information may comprise information association and motion vector information. Combining information obtained for the core layer may comprise, for example, MergeFlag and MergeLeftFlag, as described using FIG. 12A to 12C and according to indicate among the plurality of combining mode candidates selected combine mode for each block predsk Azania for encoding. Fitting section 492 sets a motion vector for each motion vector of the prediction block. Then, a motion vector set for each prediction unit installation section 492 of the motion vector supplied compensation section 495 and also stored in the buffer 494 of the motion vector. If, for example, the information association indicates that a certain prediction unit combined with the adjacent prediction block adjacent to the block prediction, the section 492 setting the motion vector gets the motion vector set in the adjacent block prediction from the buffer 494 the motion vector, and sets the obtained vector movement in the above-mentioned prediction block. On the other hand, if the association information indicates that a certain prediction unit is not combined with another prediction unit, the setting section 492 sets a motion vector of a motion vector restored by decoding the motion vector information obtained by block 491 to obtain information in the above-mentioned prediction block. Compensation section 495 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 492 of the motion vector, and reference image data are input from the frame memory 69. Then, the section 495 generates a compensation data generated predicted image to the addition section 65 through the selector 71.
(2) Superior level
During the motion compensation enhancement layer, the information association, comprising MergeBaseFlag, shows that the association with the corresponding prediction block in the lower layer may be used.
Firstly, the section 491 receives information inter prediction information decoded by decoding section 62 from the lossless encoded stream. Information inter prediction of an enhanced layer can contain information of association and motion vector information association information may comprise, for example, MergeFlag, MergeBaseFlag and MergeLeftFlag, as described using FIG. 15A to 15C on and shows association among a plurality of candidate modes, the selected mode of association for each prediction block for coding. Fitting section 492 sets the motion vector a motion vector for each prediction unit in accordance with the association information received by the information receiving section 491. When combined prediction units between levels, setting section 492 may set a motion vector of a motion vector increased support after expansion, according to the above formula (9), the buffered motion vector in accordance with the ratio between the levels of spatial resolution. In this case, the installation section 492 of the motion vector may be rounded value of the extended motion vector in accordance with the magnitude of the motion vector accuracy. The motion vector set for each prediction unit installation section 492 of the motion vector is generated in compensation section 495 and also stored in the buffer 494 of the motion vector. Fitting section 492 may set the motion vector the motion vector restored by decoding motion vector information in prediction unit, which is not combined with another prediction unit. Compensation section 495 generates predicted image data of each prediction block using a motion vector set for each prediction unit installation section 492 of the motion vector, and reference image data is input from the frame memory 69. Then, the compensation unit 495 generates predicted image data generated in the adding section 65 via the switch 71.
(3) The sequence of a process
25 is a block diagram illustrating an exemplary flowchart of the process of the motion compensation section 90 motion compensation in accordance with the present example. As shown in Figure 25, motion compensation section 90 first performs the process of motion compensation of the base layer (step S240). At this point, the buffer 494 buffers the motion vector the motion vector set to each prediction block.
Processes in steps S241 to S248 are a process for motion compensation improved levels. Of these processes, the processes of steps S241 to S247 are repeated for each signal PU of each enhancement layer. In the following description, "upper layer" is a layer for prediction and "lower level" is the level below the level for prediction.
Section 491 receives the information first information combining one top-level signal PU (step S241). Further, section 491 information determines whether to combine with other signal PU PU based on the received association information (step S242). For example, signal PU can be combined with the corresponding PU in the lower layer or the adjacent PU in the upper layer. When the signal is combined with other PU PU, the process proceeds to step S243. On the other hand, when the signal PU is not combined with another PU, the process proceeds to step S244.
In step S243, setting section 492 receives the motion vector the motion vector determined in accordance with the association information of the motion vector buffer 494, and sets the obtained motion vector signal on PU (step S243). Ha step S244, on the other hand, receive section 491 receives the information signal PU motion vector (step S244). Then, setting section 492 decodes the motion vector obtained in the motion vector information, and sets the motion vector decoded in the motion vector signal PU (step S245).
Further, the compensation unit 495 generates predicted image data signal PU, using the motion vector signal set on PU section 492 setting the motion vector and the reference image data received from the input memory 69 frames (step S246).
Then, if remains any unprocessed PU in level to the prediction, the process returns to step S241 (step S247). On the other hand, if no unprocessed PU, it is further determined level of presence (any higher level) (step S248). If the presence is established level, the processes in step S241 and after are repeated after a set level, which has been predicted as a lower level and the next level as the highest level. The motion vector set for each prediction block lower layer is buffered with buffer 494 by the motion vector. If there is no level, the motion compensation process, shown in Figure 25 ends. Predicted image data generated here is output to the adding section 65 via the switch 71.
In a fourth example, as described above, the motion vector set to each block of the enhanced layer prediction using the association information indicating association mode selected from a plurality of candidates of combination mode including a prediction block association between levels. Thus, the motion vector prediction block in the upper layer is combined with the corresponding prediction block in the lower layer having a clear correlation of motion, without coding, and therefore the code amount can be effectively reduced.
5. Application Example
Apparatus 10 The image encoding device 60 decoding an image according to the embodiment described above can be applied to various electronic instruments such as a transmitter and a receiver for satellite broadcasting, cable broadcasting, when used in cable television, for Internet broadcasting, broadcasting via cellular communication and the like, a recording apparatus that records images on a recording medium such as an optical disc, magnetic disc or flash memory, playback device tions, which reproduces the image of such a carrier and the like. Next, four examples of application are described.
5-1. The first example of application
26 is a block diagram illustrating an example of the schematic configuration of a television apparatus used in the above embodiment. The television apparatus 900 includes an antenna 901, a tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, display 906, audio processing unit 907, a speaker 908, an external interface 909, a control unit 910, a user interface 911 and a bus 912.
The tuner 902 selects a desired channel signal from a broadcast signal received via antenna 901, and demodulates the extracted signal. The tuner 902 then supplies the encoded bit stream obtained by the demodulation to a demultiplexer 903. That is, in the television device 900 tuner 902 plays a role of transmission means by taking the encoded stream, wherein the encoded image.
The demultiplexer 903 separates the video stream and audio stream in a program for viewing from the encoded bit stream and sends each of the isolated streams to the decoder 904. The demultiplexer 903 also extracts auxiliary data such as EPG (Electronic Program Guide Programs) from the encoded bit stream and supplies the extracted data to the control unit 910. Here, the demultiplexer 903 may decode the encoded bit stream when it is encoded.
The decoder 904 decodes the video stream and audio stream are received from demultiplexer 903. Decoder 904 then sends the video data obtained in the decoding process in the video signal processing unit 905. Furthermore, the decoder 904 sends the audio data obtained in the decoding process in the audio signal processing unit 907.
Video signal processing unit 905 reproduces video data received at the input of the decoder 904, and displays the video on the display 906. The video processing unit 905 can also display a screen application supplied via a network to the display 906. The video processing unit 905 may further perform an additional process such as noise suppression in video data according to the setting. In addition, the video processing unit 905 may generate a GUI image (graphical user interface), such as a menu, button or a cursor and superimpose the generated image on the output image.
Display 906 is controlled by the control signal supplied from the video signal processing unit 905, and displays a video image on a video monitor or display device (e.g., liquid crystal display, plasma display or OELD (Organic Electroluminescence Display)).
Block 907 performs audio signal processing reproducing process such as D / A conversion and amplification of audio data received at the input of the decoder 904, and reproduces the sound through an audio signal processing 908.Blok speaker 907 may also perform an additional process such as noise suppression.
The external interface 909 is an interface that connects a television device 900 to an external device or network. For example, decoder 904 may decode the video stream and an audio stream received via the external interface 909. This means that in a television device 900 external interface 909 also plays an important role as a transmission medium, the received encoded stream, wherein the encoded image.
The control unit 910 includes a processor such as a CPU and a memory device such as RAM and ROM. The storage device stores a program executed by a processor, program data, EPG data, and data received through the network. The program stored in the memory is read out via CPU when television apparatus 900 is turned on and then runs, for example. When the program runs, the CPU controls the operation of the television device 900 according to a control signal which is supplied from the user interface 911, for example.
The user interface 911 is connected to the control unit 910. The user interface 911 includes buttons and switches for control of the television device 900 by the user and also a receiving portion that receives a signal from a remote control, for example. The user interface 911 detects a user control signal from the respective components, generates a control signal and supplies the generated control signal to the control unit 910.
Bus 912 interconnects the tuner 902, a demultiplexer 903, a decoder 904, a video signal processing unit 905, the processing unit 907 of the audio signal, the external interface 909 and control unit 910.
The decoder 904 in the television device 900 configured in accordance with the method described above, has the function of the image decoding apparatus 60 according to the aforementioned embodiment. Accordingly, for scalable video coding and decoding images television apparatus 900, the encoding efficiency can be further improved by using the correlation between levels of motion.
5-2. A second example of application
27 is a block diagram illustrating an example of a schematic configuration of a mobile phone used in the above embodiment. Mobile telefon920 includes an antenna 921, a block 922 connection, an audio codec 923, speaker 924, microphone 925, a block 926 the camera unit 927 image processing unit 928 demultiplexing unit 929 Recording / reproduction display 930, the control unit 931, operation unit 932 and a bus 933.
Antenna 921 is connected to the communication unit 922. The speaker 924 and microphone 925 connected to audio codec 923. The operation unit 932 is connected to the control unit 931. Bus 931 interconnects 933 communication unit 922, an audio codec 923, the camera unit 926, image processing unit 927, a demultiplexing unit 928, a block 929 a recording / reproducing display 930 and control unit 931.
The mobile phone 920 performs transmission / reception of an audio signal, transmission / reception of e-mail or image data, visualization, image or recording of data in various modes, including audio call mode, the transmission mode, photographing mode, and a videophone mode.
In the audio call mode, an analog audio signal generated by microphone 925 is supplied to the audio codec 923. The audio codec 923 then converts the analog audio signal into audio data, performs A / D conversion of the converted audio data and compresses the data. The audio codec 923 then generates compressed audio data 922 in the communication unit. The communication unit 922 encodes and modulates audio data to generate a transmission signal. The communication unit 922 then transmits the generated transmission signal to the base station (not shown) via the antenna 921. Furthermore, the communication unit 922 amplifies a radio signal received by the antenna 921, converts the frequency signal and receives a reception signal. The communication unit 922 then demodulates and decodes the reception signal to generate the audio data, and generates the generated audio data to the audio codec 923. The audio codec 923 expands the audio data, performing D / A conversion of data and generates an analog audio signal. The audio codec 923 then supplies the generated audio signal to the speaker 924.
In the data transmission mode, for example, the control unit 931 generates character data configuring an email in accordance with the actions of the user through the operation unit 932. The control unit 931 additionally displays the character on the display 930. Furthermore, the control unit 931 generates electronic mail data according with user commands transmitted via the operation unit 932 and generates the generated electronic mail data to the communication unit 922. The communication unit 922 encodes and modulates the electronic mail data to generate a transmission signal. Then, the communication device 922 transmits the generated transmission signal to the base station (not shown) through antenna 921. Communication unit 922 further amplifies the radio signal received by the antenna 921, converts the frequency signal and receives a reception signal. The communication unit 922 then demodulates and decodes the reception signal, restores the electronic mail data and generates the reconstructed e-mail data to the control unit 931. The control unit 931 displays the email content on the display 930, and also stores email data on the media recording / reproducing unit 929 of data.
Block 929 a recording / reproducing apparatus includes an arbitrary storage medium for reading and writing. For example, the recording medium may be integral to the data recording medium, such as RAM or flash memory, or may be an external recording medium such as a hard disk, a magnetic disk, a magneto-optical disc, optical disc, USB (bit mapping unused space) in memory or memory card.
In the photographing mode, for example, the camera block 926 performs the mapping of the object, generates image data and outputs the generated image data to the image processing unit 927. Block 927 encodes the input image processing the image data from the camera unit 96 and stores the coded stream on a storage medium recording / reproducing unit 929 of data.
The videophone mode, e.g., the demultiplexing unit 928 multiplexes the video stream encoded by the image processing unit 927 and the audio stream received at input from the audio codec 923, and generates a multiplexed stream to the communication unit 922. The communication unit 922 encodes and modulates the stream to generate a transmission signal. Communication unit 922 accordingly transmits the generated transmission signal to the base station (not shown) via the antenna 921. Furthermore, the communication unit 922 amplifies a radio signal received by the antenna 921, converts the frequency signal and receives a reception signal. transmission signal and the reception signal may include an encoded bit stream. Then, the communication unit 922 demodulates and decodes the reception signal for the restoration stream and produces reconstructed stream demultiplexing unit 928. Demultiplexing unit 928 separates a video stream and an audio stream from an input stream and produces a video stream and audio streams in the image processing unit 927 and audio codec 923, respectively. Block 927 The image processing decodes the video stream to generate video data. The video data is then provided to a display 930 that displays a series of images. Audio codec 923 expands and performs D / A conversion of the audio stream to generate an analog audio signal. The audio codec 923 then transmits the generated audio signal to the speaker 924 for sound reproduction.
Block 927 The image processing in the mobile phone 920 is configured in accordance with the above method and has the function of the device 10 for image encoding and image decoding apparatus 60 according to the aforementioned embodiment. Accordingly, when the scalable encoding and decoding video images mobile phone 920, the coding efficiency can be further improved by using movement correlation between levels.
5-3.Trety application example
28 is a block diagram illustrating an example schematic configuration of a recording / reproducing apparatus used in the above embodiment. The apparatus 940 recording / reproducing audio data and encodes the video data received broadcast program, and records data on the recording medium, for example. 940 a recording / reproducing apparatus may also encode audio data and video data obtained from another device, and write data on the recording medium, for example. In response to user commands, for example, 940 recording / playback reproduces the data recorded on the recording medium on the monitor and the speaker. The apparatus 940 recording / reproduction at the time decodes audio data and video data.
940 a recording / reproducing apparatus includes a tuner 941, an external interface 942, an encoder 943, HDD (hard disk drive) 944, disk driver 945, a selector 946, a decoder 947, OSD (onscreen display) 948, a control unit 949 and user interface 950.
Tuner 941 extracts a signal of the desired channel from the broadcast signal received by an antenna (not shown), and demodulates the extracted signal. The tuner 941 then generates a coded bit stream obtained by the demodulation to the selector 946. That is, the tuner 941 plays an important role as a means of transmitting apparatus 940 in the recording / playback.
The external interface 942 is an interface that connects the device 940 the recording / reproduction with an external device or network. External interface 942 may be, for example, IEEE 1394, a network interface, USB interface or the flash memory interface. The video data and audio data received via the external interface 942 are input to the encoder 943, for example. That is, the external interface 942 plays an important role as a means of transmission in the 940 recording / playback.
The encoder 943 encodes video data and audio data when video data and audio data input to the input from the external interface 942 are not coded. The encoder 943 then produces an encoded bit stream to the selector 946.
HDD 944 records to an internal hard disk an encoded bit stream, wherein the data content such as video and audio is compressed, various programs and other data. HDD 944 reads the data from the hard drive when playing video and audio.
Disk driver 945 writes and reads data to / from a recording medium which is installed in the disk driver. The recording medium mounted on the disk drive 945 may be, for example, disc DVD (e.g., DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD + R or DVD + RW) or Blu-ray (registered trademark mark) disk.
The selector 946 selects the coded bit stream applied to the input of the tuner 941 or the encoder 943, when the recorded video and audio, and generates selected encoded bit stream 944 on the HDD 945 or the driver disk. Playing the video and audio on the other hand, the selector 946 generates a coded bit stream arriving on input from the HDD 944 or disk driver 945 to the decoder 947.
The decoder 947 decodes the encoded bit stream to generate video data and audio data. The decoder 904 then generates the generated video data to the OSD 948 and the generated audio data to the external speaker.
OSD 948 reproduces the video data received from the decoder 947, and displays the video. OSD 948 may also superimpose GUI images such as a menu, button or a cursor on the displayed video.
The control unit 949 includes a processor such as a CPU and a memory device such as RAM and ROM. The storage device stores a program executed by the CPU, and program data. The program stored in the memory is read out via CPU 940 when the unit recording / playback, is executed, for example. When the program runs, the CPU 940 controls the operation of the device the recording / reproducing in accordance with a control signal which is supplied from the user interface 950, for example.
The user interface 950 is connected to the control unit 949. The user interface 950 includes a button and a switch for providing the user control device 940 the recording / playback, and a receiving part which receives the remote control signal, for example. The user interface 950 detects a user action from the respective components, generates a control signal and generates a generated control signal to the control unit 949.
The encoder 943 in the device 940 the recording / reproducing configured in accordance with the above method has a function of the image encoding apparatus 10 according to the aforementioned embodiment. On the other hand, the decoder 947 has a function of image decoding device 60 according to the aforementioned embodiment. Accordingly, in scalable video encoding and decoding image apparatus 940 recording / reproduction, coding efficiency can be further improved by using the correlation between levels of motion.
5-4. A fourth example of application
29 is a block diagram illustrating an example schematic configuration of an image processing apparatus according to the above embodiment. The image processing apparatus 960 displays an object, generates an image, codes the image data, and records data on the recording medium.
The apparatus 960 of image processing includes an optical unit 961, a display unit 962, unit 963 signal processing unit 964 of image processing, a display 965, an external interface 966, memory 967, disk drive 968, OSD 969, a control unit 970, a user interface 971 and bus 972.
The optical unit 961 is connected to the display unit 962. The display unit 962 is connected to the signal processing unit 963. The display 965 is connected to the image processing unit 964. The user interface 971 is connected to the control unit 970. Bus 972 interconnects unit 964 of image processing, the external interface 966, memory 967, disk drive 968, OSD control unit 969 and 970.
The optical unit 961 includes a focus lens and aperture setting mechanism. The optical unit 961 forms the optical image of the object on the image forming surface of the display unit 962. Display unit 962 includes an image sensor such as a CCD (charge coupled device) or CMOS (complementary MOS), and performs photoelectric conversion to convert the optical image formed on the image surface in the image signal as an electric signal. Further, the display unit 962 generates an image signal to the signal processing unit 963.
Block 963 performs various signal processing of image processing processes, such as adjusting the dynamic range of contrast, tone gradation correction on the image and color correction of the image signal supplied to the input of the display unit 962. Block 963 generates an image signal processing data processed in the image processing in the image processing unit 964.
Block 964 encodes the image processing the image data received from the input signal processing unit 963 generates encoded data. Block 964 then generates processing image generated encoded data to the external interface 966 or the drive 968. The image processing unit 964 also decodes the coded data received on the input from the external interface 966 or the drive 968, to generate image data. Block 964 then produces image processing the generated image data to the display 965. In addition, the image processing unit 964 can output to the display 965 the image data received from the input signal processing unit 963 for displaying an image. Moreover, the image processing unit 964 may apply a display data received from the OSD image 969 which is displayed on the display 965.
OSD 969 generates a GUI image such as a menu, button, or pointer, and outputs the generated image to the image processing unit 964.
The external interface 966 is configured as a USB input / output terminal, for example. The external interface 966 connects the image 960obrabotki device to the printer when printing an image, for example. In addition, the drive is connected to the external interface 966 as necessary. The removable recording medium such as a magnetic disk or optical disk, is set in the drive, for example, so that the program read from the removable medium may be installed in the image processing device 960. The external interface 966 can also be configured as a network interface connected to a network such as a LAN or the Internet. That is, the external interface 966 plays an important role as a transmission means in the image processing device 960.
the information recording medium mounted in the drive 968 may be an arbitrary removable medium for reading and writing, such as a magnetic disk, a magnetooptical disk, an optical disk or a semiconductor memory. Bol order information recording medium may be fixedly attached to the drive 968, and be formed as a built-in HDD or SSD (Solid State Drive), for example.
The control unit 949 includes a processor such as a CPU and a memory device such as RAM and ROM. The storage device stores a program executed by the CPU, and program data. The program stored in the memory is read out via CPU when the display device 960, and then executed. When the program runs, the CPU controls the operation of the image processing apparatus 960 according to a control signal which is supplied from the user interface 971, for example.
The user interface 971 is connected to the control unit 970. The user interface 971 includes a button and a switch for providing the user control device 960 of image processing, for example. The user interface 971 detects a user action from the respective components, generates a control signal and generates a generated control signal to the control unit 970.
Block 964 The image processing device 960 in the image processing is executed in accordance with the above method and has the function of the image encoding device 10 and the image decoding apparatus 60 according to the aforementioned embodiment. Accordingly, in scalable video encoding and decoding images using the image processing apparatus 960, the encoding efficiency can be further improved by using the correlation between levels of motion.
6. Conclusion
Four Example 10 An image encoding apparatus and image decoding apparatus 60 have been described the embodiment using figures 1 to 29. In accordance with these examples, in scalable video encoding and decoding, setup information for setting the second motion vector prediction of a block in the upper layer corresponding to the first prediction block in the lower level and the corresponding motion vector is set in the first prediction block is used to set the moving vector I am for the second prediction block. Thus, the motion vector may be set for each top level prediction unit using the motion correlation between levels. Thus, it can avoid redundant coding information, motion vector information delta motion vector predictor information or association information and, thus, increase the coding efficiency.
In accordance with a first embodiment, for example, the predictor information showing a predictor used to predict the motion vector prediction unit in the lower layer is reused when the predicted motion vector prediction block in the upper layer. Accordingly, redundant coding information predictor can be avoided.
In accordance with a second embodiment, for example, an interlayer predictor for the prediction block in the upper layer based on the motion vector set in the corresponding prediction block in the lower layer is represented as a new candidate predictor. Thus, the prediction accuracy of the motion vector to the prediction block in the upper layer can be improved and the amount of code required for encoding motion vector delta can be reduced.
In accordance with the third embodiment, for example, association information indicating association of the selected mode to the prediction block in the lower layer is re-used for a prediction block in the upper layer. Thus, it can avoid redundant coding information association.
In accordance with the fourth embodiment, for example, applies a new combine mode for combining the prediction block in the upper layer with the corresponding prediction block in the lower level. Thus, it is possible to prevent redundant coding information for the motion vector prediction block in the upper layer.
The description herein is an example in which various pieces of information, such as information related to intra-prediction and information relating to the external prediction coded stream in multiplexed header, and transmitted from the encoding side to the decoding side. A method of transmitting these pieces of information, however, is not limited to this example. For example, these pieces of information can be transmitted or recorded as individual data associated with the encoded bit stream without multiplexing a coded bit stream. Here, the term "association" means that the possibility of finding the image in the bit stream (can be part of the image, such as a section or block), and information corresponding to the displayed image for establishing communications in decoding. Namely, the image information 25 may be transmitted on different transmission channels (or bitstream). This image information can be recorded on various information recording media (or different portions of the same records in the information recording medium) (or bit stream). Furthermore, the information and the image 30 (or bit stream) may be associated with each other arbitrary unit such as a plurality of frames, one frame or intra-frame part.
Preferred embodiments of the present invention have been described above with reference to the accompanying drawings, while the present invention is not limited to the above examples, of course. One skilled in the art will appreciate that there are various changes and modifications within the scope of the appended claims and should be understood that they will naturally fall within the technical scope of the present invention.
Additionally, the present technology may also be configured as shown below.
(1)
An image processing apparatus comprising:
acquiring module information, adapted to obtain setup information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level scalable decoded video image having a first level and a second level which is higher than the first level, wherein the locating information is related to motion vector set in the first prediction block; and
Fitting motion vector module configured to install the second motion vector prediction unit using the mounting information obtained by the information obtaining module.
(2)
The image processing apparatus according to claim. (1)
wherein the installation information includes information predictor indicating predictor used to predict the motion vector of the first prediction block,
wherein the motion vector setting unit configured to predict a motion vector to be installed in the second prediction block using a predictor indicating information predictor.
(3)
The image processing apparatus according to claim. (1)
wherein the installation information includes information predictor indicating predictor used to predict the motion vector of the second prediction block,
wherein the predictor is selected from the plurality of predictor candidates including the candidate predictor based on motion vector set in the first prediction block.
(4)
The image processing apparatus according to claim. (3), wherein the candidate predictor based on motion vector set in the first prediction block is assigned the lowest number of the plurality of code predictor candidates.
(5)
The image processing apparatus according to any one of (2) - (4)
wherein the information module is further adapted to receive a differential motion vector indicating a difference between the motion vector set in the second prediction block and the predicted motion vector,
wherein the motion vector setting unit configured to set a second block prediction motion vector generated by adding difference information indicates the difference motion vector to the prediction motion vector predicted predictor.
(6)
The image processing apparatus according to claim. (1)
wherein the installation information includes information association, indicating whether the specified motion vector common to the first prediction block and a prediction block adjacent to the first block prediction
wherein the motion vector setting unit configured to set a general motion vector for the second prediction block and a prediction block adjacent to the second prediction block, in accordance with the association information.
(7)
The image processing apparatus according to claim. (1)
wherein the installation information includes information association, indicating whether the specified motion vector common to the first prediction block and second prediction block, and
wherein when the information indicates association setup, general motion vector for prediction of the first block and second prediction block, the motion vector setting unit configured to set the motion vector common to the first prediction block, the second prediction block.
(8)
The image processing apparatus according to any one of (3), (4) and (7), wherein the setting the motion vector module is operable to increase the motion vector set in the first prediction block, in accordance with the ratio of the spatial resolution between the first level and the second level and subsequently carrying out a process for setting a motion vector of the second prediction block.
(9)
The image processing apparatus according to claim. (8), wherein with increasing motion vector set in the first prediction block, the motion vector setting unit is configured to rounding larger motion vector in accordance with the motion vector accuracy.
(10)
The image processing apparatus according to any one of (1) - (7), wherein the first layer and second layer are layers having mutually different spatial resolution.
(eleven)
The image processing apparatus according to any one of (1) - (7), wherein the first layer and second layer are layers having mutually different noise ratio.
(12)
The image processing apparatus according to any one of (1) - (11), wherein the first block prediction is a prediction unit at a first level having a pixel corresponding to a pixel in a predetermined position in the second prediction block.
(13)
The image processing apparatus according to any one of (1) - (11), wherein the inter prediction on the first level, the second block overlapping prediction blocks, the prediction block is a first prediction block having the greatest amount of overlap.
(14)
An image processing method comprising the steps of:
receive the setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level decoded scalable video comprising a first level and a second level which is higher than the first level, wherein the installation information relates to the motion vector set in the first block predictions and
establish a second motion vector prediction unit using the obtained setting information.
(15)
An image processing apparatus comprising:
information generating unit configured to generate setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level decoded scalable video comprising a first level and a second level which is higher than the first level, wherein the installation information relates to motion vector set to the first prediction unit, and
a coding unit configured to encode the setup information generated by the information generation unit.
(16)
An image processing method comprising the steps of:
generate setting information for setting a motion vector in the second prediction block at a second level, corresponding to the first block prediction in the first level decoded scalable video comprising a first level and a second level which is higher than the first level, wherein the installation information corresponds to the motion vector set in the first prediction block and
encode the generated setting information.
List of Reference Symbols
10 - image coding apparatus (image processing device)
146, 246, 346, 446 - information generation section
16 - coding section
60 - image decoding apparatus (image processing device)
191, 291, 391, 491 - receive section
192, 246, 392, 492 - a motion vector setting section
Contents4
41 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| EP0644695A2 | Cites | European Patent Office (EPO) | Search report |
| EP1659797A2 | Cites | European Patent Office (EPO) | Search report |
| US2002106019A1 | Cites | United States of America | Search report |
| US2008095238A1 | Cites | United States of America | Search report |
| RU2009130154A | Cites | Russian Federation | Search report |
| US20020106019A1 | Cites | United States of America | – |
| US20080095238A1 | Cites | United States of America | – |
20 members in 8 offices
Priority claims9
| Document | Office | Kind | Date |
|---|---|---|---|
| 2011155414 | Japan | – | |
| 2011155414 | Japan | A | |
| 2011155414 | Japan | A | |
| 2012063321 | Japan | W | |
| 2012063321 | Japan | W | |
| 2011155414 | – | – | – |
| JP2012063321 | – | – | – |
| JP20110155414 | – | – | – |
| WO2012JP63321 | – | – | – |
Members20
| Document | Office | Kind | |
|---|---|---|---|
| WO2013008538A1 | World Intellectual Property Organization (WIPO) | A1 | |
| JP2013021629A | Japan | A | |
| US2014037013A1 | United States of America | A1 | |
| CN103650494A | China | A | |
| KR20140036214A | Republic of Korea | A | |
| EP2733943A1 | European Patent Office (EPO) | A1 | |
| EP2733943A4 | European Patent Office (EPO) | A4 | |
| RU2013157386A | Russian Federation | A | |
| JP5830993B2 | Japan | B2 | |
| BR112014000348A2 | Brazil | A2 | |
| RU2620719C2This record | Russian Federation | C2 | |
| CN107105287A | China | A | |
| US9749625B2 | United States of America | B2 | |
| US2017339424A1 | United States of America | A1 | |
| CN103650494B | China | B | |
| RU2668056C1 | Russian Federation | C1 | |
| EP2733943B1 | European Patent Office (EPO) | B1 | |
| KR102066291B1 | Republic of Korea | B1 | |
| US10623761B2 | United States of America | B2 | |
| CN107105287B | China | B |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| The patent is invalid due to non-payment of feesMM4A | MM4A |
Numbers
- Publication
- 0002620719
- Publication, DOCDB
- 2620719
- Publication, EPODOC
- RU2620719
- Application
- 2013157386
- Application, DOCDB
- 2013157386
- Application, EPODOC
- RU20130157386
Titles2
- Russian
- УСТРОЙСТВО ОБРАБОТКИ ИЗОБРАЖЕНИЯ И СПОСОБ ОБРАБОТКИ ИЗОБРАЖЕНИЯ
- English
- IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD
Classification
- CPC, 10
- H04N19/103
- H04N19/187
- H04N19/52
- H04N19/51
- H04N19/139
- H04N19/176
- H04N19/30
- H04N19/46
- H04N19/36
- H04N19/513
- IPC, 21
- H04N19 52
- H04N19 102
- H04N19 105
- H04N19 134
- H04N19 139
- H04N19 146
- H04N19 176
- H04N19 196
- H04N19 33
- H04N19 36
- H04N19 46
- H04N19 463
- H04N19 50
- H04N19 503
- H04N19 51
- H04N19 513
- H04N19 593
- H04N19 61
- H04N19 625
- H04N19 70
- H04N19 90