JP2015122606A - Image coding apparatus, image coding method, image decoding apparatus, and image decoding method - Google Patents

Image coding apparatus, image coding method, image decoding apparatus, and image decoding method Download PDF

Info

Publication number
JP2015122606A
JP2015122606A JP2013264961A JP2013264961A JP2015122606A JP 2015122606 A JP2015122606 A JP 2015122606A JP 2013264961 A JP2013264961 A JP 2013264961A JP 2013264961 A JP2013264961 A JP 2013264961A JP 2015122606 A JP2015122606 A JP 2015122606A
Authority
JP
Japan
Prior art keywords
image
unit
viewpoint
encoding
motion vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013264961A
Other languages
Japanese (ja)
Other versions
JP6273828B2 (en
Inventor
章弘 屋森
Akihiro Yamori
章弘 屋森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013264961A priority Critical patent/JP6273828B2/en
Publication of JP2015122606A publication Critical patent/JP2015122606A/en
Application granted granted Critical
Publication of JP6273828B2 publication Critical patent/JP6273828B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve coding efficiency in coding of multi-viewpoint moving images.SOLUTION: An image coding apparatus 10 comprises: a storage unit 11 which stores therein plural moving images 21 and 22 respectively corresponding to viewpoints #1 and #2; and an arithmetic unit 12 which detects, from among images included in the moving image 22, a target image CurrPic having inter-viewpoint motion information mvCol to refer to an image ColPic at the same time included in the moving image 21, and codes the image area of the target image CurrPic by using motion information basemvColand basemvColof the image ColPic at the same time.

Description

本発明は、画像符号化装置、画像符号化方法、画像復号装置、及び画像復号方法に関する。   The present invention relates to an image encoding device, an image encoding method, an image decoding device, and an image decoding method.

動画像の符号化には、例えば、ITU−T(International Telecommunication Union Telecommunication Standardization Sector)により勧告されたH.264と呼ばれる符号化方式が広く利用されている。国際標準化機構(ISO)及び国際電気標準会議(IEC)では、同じ技術がMPEG−4 AVC(MPEG-4 Part 10 Advanced Video Coding)と呼ばれている。これらの呼称はまとめてH.264/AVCと表記されることがある。H.264/AVC方式は、旧来のMPEG−2符号化方式などに比べて高い圧縮効率を実現している。   For encoding moving images, for example, H.264 recommended by ITU-T (International Telecommunication Union Telecommunication Standardization Sector). An encoding method called H.264 is widely used. In the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC), the same technique is called MPEG-4 AVC (MPEG-4 Part 10 Advanced Video Coding). These names are collectively referred to as H.264. H.264 / AVC. H. The H.264 / AVC system achieves higher compression efficiency than the conventional MPEG-2 encoding system.

H.264/AVC方式の符号化には、異なる動画フレームを参照して現在の動画フレームを予測するフレーム間予測(インター予測)と呼ばれる技術が利用される。時間的に前の動画フレームを参照して現在の動画フレームを予測する方法は前方向予測(Forward Prediction)と呼ばれる。また、時間的に後の動画フレームを参照して現在の動画フレームを予測する方法は後方向予測(Backward Prediction)と呼ばれる。さらに、時間的に前又は後にある複数の動画フレームを参照して現在の動画フレームを予測する方法は双方向予測(Bi-directive Prediction)と呼ばれる。   H. For encoding of the H.264 / AVC format, a technique called inter-frame prediction (inter prediction) in which a current moving image frame is predicted with reference to different moving image frames is used. A method of predicting a current video frame with reference to a temporally previous video frame is called forward prediction. A method of predicting the current video frame with reference to a temporal video frame is called backward prediction. Furthermore, a method of predicting the current moving image frame with reference to a plurality of moving image frames before or after in time is called bi-directional prediction (Bi-directive Prediction).

フレーム間予測を用いずに符号化される動画フレームはI(Intra-coded)ピクチャと呼ばれる。また、前方向予測だけを用いて符号化される動画フレームはP(Predicted)ピクチャと呼ばれる。さらに、前方向予測、後方向予測、双方向予測のいずれかを選択的に用いて符号化される動画フレームはB(Bi-directional Predicted)ピクチャと呼ばれる。   A moving image frame encoded without using inter-frame prediction is called an I (Intra-coded) picture. A moving picture frame encoded using only forward prediction is called a P (Predicted) picture. Furthermore, a moving picture frame that is encoded by selectively using any one of forward prediction, backward prediction, and bidirectional prediction is called a B (Bi-directional Predicted) picture.

H.264/AVC方式では、圧縮効率を高めるための工夫として、ダイレクトモード(Direct Mode)と呼ばれる予測モードが規定されている。ダイレクトモードは、Bピクチャに適用することができる。ダイレクトモードには、時間ダイレクトモードと空間ダイレクトモードという2種類のダイレクトモードがある。   H. In the H.264 / AVC format, a prediction mode called a direct mode is defined as a device for improving compression efficiency. The direct mode can be applied to B pictures. There are two types of direct modes: temporal direct mode and spatial direct mode.

時間ダイレクトモードは、あるBピクチャ内にある画素ブロックを予測する際に、符号化済みピクチャの同位置にある画素ブロックの動きベクトルを利用する予測モードである。また、空間ダイレクトモードは、Bピクチャ内にある画素ブロックを予測する際に、その周辺に位置する画素ブロックの動きベクトルを利用する予測モードである。いずれのダイレクトモードも符号化対象の画素ブロックについて動きベクトルの情報を復号側へと伝送せずに済む分だけ情報量を減らすことができる。   The temporal direct mode is a prediction mode that uses a motion vector of a pixel block at the same position of an encoded picture when predicting a pixel block in a certain B picture. The spatial direct mode is a prediction mode that uses a motion vector of a pixel block located in the vicinity when predicting a pixel block in a B picture. In any direct mode, the amount of information can be reduced by the amount that it is not necessary to transmit motion vector information to the decoding side for the pixel block to be encoded.

近年、立体視映像などの多視点動画像に上記の符号化方式を適用できるようにするため、MVC(Multi-view Video Coding)と呼ばれる拡張方式(以下、MVC方式と呼ぶ。)が規定された。MVC方式では、ある視点に対応する動画フレームの画素ブロックを符号化する際に、他の視点に対応する動画フレームの画素ブロックを参照する予測モード(以下、視点間予測と呼ぶ。)が追加された。但し、MVC方式では、視点間予測を用いる画素ブロックについては時間ダイレクトモードを適用しないこととされている。   In recent years, an extension method called MVC (Multi-view Video Coding) (hereinafter referred to as MVC method) has been defined so that the above encoding method can be applied to multi-view video such as stereoscopic video. . In the MVC method, when encoding a pixel block of a moving image frame corresponding to a certain viewpoint, a prediction mode (hereinafter referred to as inter-view prediction) that refers to a pixel block of a moving image frame corresponding to another viewpoint is added. It was. However, in the MVC method, the temporal direct mode is not applied to pixel blocks that use inter-view prediction.

なお、MVC方式に関し、参照先の動画フレームが視点間予測を用いて符号化されている場合に、他視点の動画フレームに設定された動きベクトルを用いて、参照元の動画フレームに時間ダイレクトモードを適用する方法(以下、提案方法)が提案されている。   In addition, regarding the MVC method, when the reference moving image frame is encoded using inter-view prediction, the motion vector set in the moving image frame of the other viewpoint is used to set the temporal direct mode to the reference moving image frame. Has been proposed (hereinafter, proposed method).

特開2012−182616号公報JP 2012-182616 A

上述した時間ダイレクトモードの適用は、情報量を効果的に低減するために有効な方法である。そのため、視点間予測を用いて符号化されるBピクチャに時間ダイレクトモードを適用できるようにすれば、符号化効率の向上に寄与すると考えられる。なお、ここではH.264/AVC方式の時間ダイレクトモードを例に挙げて説明したが、次世代規格であるH.265/HEVC(High Efficiency Video Coding)方式のマージモードについても同様である。   The application of the time direct mode described above is an effective method for effectively reducing the amount of information. For this reason, if the temporal direct mode can be applied to a B picture that is encoded using inter-view prediction, it is considered that it contributes to an improvement in encoding efficiency. Here, H. The time direct mode of the H.264 / AVC system has been described as an example. The same applies to the merge mode of the H.265 / HEVC (High Efficiency Video Coding) method.

そこで、1つの側面によれば、本発明の目的は、多視点動画符号化における符号化効率を向上させることが可能な画像符号化装置、画像符号化方法、画像復号装置、及び画像復号方法を提供することにある。   Therefore, according to one aspect, an object of the present invention is to provide an image encoding device, an image encoding method, an image decoding device, and an image decoding method capable of improving encoding efficiency in multi-view video encoding. It is to provide.

本開示の1つの側面によれば、複数の視点にそれぞれ対応する複数の動画像が格納される記憶部と、一の動画像に含まれる画像の中から、他の動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、同時刻の画像が有する動き情報を利用して対象画像の画像領域を符号化する演算部と、を有する、画像符号化装置が提供される。   According to one aspect of the present disclosure, a storage unit that stores a plurality of moving images respectively corresponding to a plurality of viewpoints, and the same time included in another moving image from among images included in one moving image An image encoding apparatus comprising: a calculation unit that detects a target image having inter-viewpoint motion information that refers to the image of the image and encodes an image region of the target image using the motion information of the image at the same time Provided.

また、本開示の他の1つの側面によれば、複数の視点にそれぞれ対応する複数の動画像が格納される記憶部から動画像を取得可能なコンピュータが、一の動画像に含まれる画像の中から、他の動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、同時刻の画像が有する動き情報を利用して対象画像の画像領域を符号化する画像符号化方法が提供される。   According to another aspect of the present disclosure, a computer that can acquire a moving image from a storage unit that stores a plurality of moving images respectively corresponding to a plurality of viewpoints is configured to store images of the images included in one moving image. A target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected, and an image area of the target image is encoded using the motion information of the image at the same time An image encoding method is provided.

また、本開示の他の1つの側面によれば、複数の視点にそれぞれ対応する複数の動画像を符号化した符号化データが格納される記憶部と、符号化データを復号する処理の中で、一の動画像に含まれる画像の中から、他の動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、同時刻の画像が有する動き情報を利用して対象画像の画像領域を復号する演算部と、を有する、画像復号装置が提供される。   Further, according to another aspect of the present disclosure, in a storage unit that stores encoded data obtained by encoding a plurality of moving images respectively corresponding to a plurality of viewpoints, and in a process of decoding the encoded data Detecting a target image having inter-viewpoint motion information referring to an image at the same time included in another moving image from images included in one moving image, and using the motion information included in the image at the same time An image decoding device is provided that includes an arithmetic unit that decodes an image area of a target image.

また、本開示の他の1つの側面によれば、複数の視点にそれぞれ対応する複数の動画像を符号化した符号化データが格納される記憶部から符号化データを取得可能なコンピュータが、符号化データを復号する処理の中で、一の動画像に含まれる画像の中から、他の動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、同時刻の画像が有する動き情報を利用して対象画像の画像領域を復号する画像復号方法が提供される。   According to another aspect of the present disclosure, a computer capable of acquiring encoded data from a storage unit that stores encoded data obtained by encoding a plurality of moving images respectively corresponding to a plurality of viewpoints In the process of decoding the digitized data, a target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected from images included in one moving image, and the same time There is provided an image decoding method for decoding an image area of a target image using motion information of the image.

本発明によれば、多視点動画符号化における符号化効率を向上させることが可能になる。   According to the present invention, it is possible to improve encoding efficiency in multi-view video encoding.

第1実施形態に係る画像符号化装置の一例を示した図である。It is the figure which showed an example of the image coding apparatus which concerns on 1st Embodiment. 時間ダイレクトモードについて説明するための図である。It is a figure for demonstrating time direct mode. 視点間予測と時間ダイレクトモードとの関係について説明するための第1の図である。It is a 1st figure for demonstrating the relationship between prediction between viewpoints and temporal direct mode. 視点間予測と時間ダイレクトモードとの関係について説明するための第2の図である。It is a 2nd figure for demonstrating the relationship between prediction between viewpoints, and the time direct mode. 視点間予測と時間ダイレクトモードとの関係について説明するための第3の図である。It is a 3rd figure for demonstrating the relationship between prediction between viewpoints, and the time direct mode. 第2実施形態に係るシステムの一例を示した図である。It is the figure which showed an example of the system which concerns on 2nd Embodiment. 第2実施形態に係る符号化装置が有する機能を実現することが可能なハードウェアの一例を示した図である。It is the figure which showed an example of the hardware which can implement | achieve the function which the encoding apparatus which concerns on 2nd Embodiment has. 第2実施形態に係る符号化装置が有する機能の一例を示した第1のブロック図である。It is the 1st block diagram which showed an example of the function which the encoding apparatus which concerns on 2nd Embodiment has. 第2実施形態に係る符号化装置が有する機能の一例を示した第2のブロック図である。It is the 2nd block diagram which showed an example of the function which the encoding apparatus which concerns on 2nd Embodiment has. 第2実施形態に係る符号化装置が有する機能の一例を示した第3のブロック図である。It is the 3rd block diagram which showed an example of the function which the encoding apparatus which concerns on 2nd Embodiment has. 第2実施形態に係る基準ベクトルの計算方法について説明するための第1の図である。It is a 1st figure for demonstrating the calculation method of the reference | standard vector which concerns on 2nd Embodiment. 第2実施形態に係る基準ベクトルの計算方法について説明するための第2の図である。It is a 2nd figure for demonstrating the calculation method of the reference | standard vector which concerns on 2nd Embodiment. 第2実施形態に係る基準ベクトルの補正方法について説明するための第1の図である。It is a 1st figure for demonstrating the correction method of the reference | standard vector which concerns on 2nd Embodiment. 第2実施形態に係る基準ベクトルの補正方法について説明するための第2の図である。It is a 2nd figure for demonstrating the correction method of the reference | standard vector which concerns on 2nd Embodiment. 第2実施形態に係る復号装置が有する機能の一例を示した第1のブロック図である。It is the 1st block diagram showing an example of the function which the decoding device concerning a 2nd embodiment has. 第2実施形態に係る復号装置が有する機能の一例を示した第2のブロック図である。It is the 2nd block diagram showing an example of the function which the decoding device concerning a 2nd embodiment has. 第2実施形態に係る復号装置が有する機能の一例を示した第3のブロック図である。It is the 3rd block diagram showing an example of the function which the decoding device concerning a 2nd embodiment has. 第2実施形態に係る符号化処理の流れを示した第1のフロー図である。It is the 1st flowchart which showed the flow of the encoding process which concerns on 2nd Embodiment. 第2実施形態に係る符号化処理の流れを示した第2のフロー図である。It is the 2nd flowchart which showed the flow of the encoding process which concerns on 2nd Embodiment. 第2実施形態に係る符号化処理の流れを示した第3のフロー図である。It is the 3rd flowchart which showed the flow of the encoding process which concerns on 2nd Embodiment. 第3実施形態に係る符号化方法について説明するための第1の図である。It is a 1st figure for demonstrating the encoding method which concerns on 3rd Embodiment. 第3実施形態に係る符号化方法について説明するための第2の図である。It is a 2nd figure for demonstrating the encoding method which concerns on 3rd Embodiment.

以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。   Embodiments of the present invention will be described below with reference to the accompanying drawings. In addition, about the element which has the substantially same function in this specification and drawing, duplication description may be abbreviate | omitted by attaching | subjecting the same code | symbol.

<1.第1実施形態>
図1を参照しながら、第1実施形態について説明する。図1は、第1実施形態に係る画像符号化装置の一例を示した図である。
<1. First Embodiment>
The first embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of an image encoding device according to the first embodiment.

図1に示すように、第1実施形態に係る画像符号化装置10は、記憶部11及び演算部12を有する。
なお、記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置、或いは、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置である。演算部12は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。但し、演算部12は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路であってもよい。演算部12は、例えば、記憶部11又は他のメモリに記憶されたプログラムを実行する。
As illustrated in FIG. 1, the image encoding device 10 according to the first embodiment includes a storage unit 11 and a calculation unit 12.
The storage unit 11 is a volatile storage device such as a RAM (Random Access Memory) or a non-volatile storage device such as an HDD (Hard Disk Drive) or a flash memory. The arithmetic unit 12 is a processor such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor). However, the arithmetic unit 12 may be an electronic circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). For example, the calculation unit 12 executes a program stored in the storage unit 11 or another memory.

記憶部11には、複数の視点#1、#2にそれぞれ対応する複数の動画像21、22が格納される。なお、図1の例では、2視点の場合が示されているが、視点の数が3以上の場合も同様である。また、図1の例では、視点#1に対応する動画像21がBase−Viewに設定され、視点#2に対応する動画像22が非Base−Viewに設定されている。以下、この例に沿って説明を進める。   The storage unit 11 stores a plurality of moving images 21 and 22 respectively corresponding to a plurality of viewpoints # 1 and # 2. In the example of FIG. 1, the case of two viewpoints is shown, but the same applies to the case where the number of viewpoints is three or more. Further, in the example of FIG. 1, the moving image 21 corresponding to the viewpoint # 1 is set to Base-View, and the moving image 22 corresponding to the viewpoint # 2 is set to non-Base-View. Hereinafter, the description will proceed along this example.

Base−Viewとは、他視点の画像を参照するインター予測を行う画像が含まれないことを意味する。つまり、視点#1に対応する動画像21の画像Pic10、…、Pic15を符号化及び復号する際に、視点#2に対応する動画像22の画像Pic20、…、Pic25が参照されない。画像Pic10、…、Pic15の情報だけを用いて動画像21が符号化及び復号されるため、視点#2に対応する動画像22の画像Pic20、…、Pic25に関する情報がなくとも動画像21を符号化及び復号することができる。 Base-View means that an image that performs inter prediction referring to an image of another viewpoint is not included. That is, when the images Pic 10 ,..., Pic 15 of the moving image 21 corresponding to the viewpoint # 1 are encoded and decoded, the images Pic 20 ,..., Pic 25 of the moving image 22 corresponding to the viewpoint # 2 are not referred to. . Image Pic 10, ..., since the moving image 21 is encoded and decoded using only information in Pic 15, image Pic 20 of the moving image 22 corresponding to the viewpoint # 2, ..., video without any information about Pic 25 Image 21 can be encoded and decoded.

一方、非Base−Viewとは、他視点の画像を参照するインター予測を行う画像が含まれることを意味する。つまり、視点#2に対応する動画像22の画像Pic20、…、Pic25を符号化及び復号する際に、視点#1に対応する動画像21の画像Pic10、…、Pic15の少なくとも1つが参照される。つまり、視点#1に対応する動画像21の画像Pic10、…、Pic15の少なくとも1つに関する情報が動画像22の符号化及び復号に用いられる。 On the other hand, non-Base-View means that an image that performs inter prediction referring to an image of another viewpoint is included. That is, the image Pic 20 of the moving image 22 corresponding to the viewpoint # 2, ..., in encoding and decoding Pic 25, image Pic 10 of the moving image 21 corresponding to the viewpoint # 1, ..., at least one of Pic 15 One is referenced. That is, information on at least one of the images Pic 10 ,..., Pic 15 of the moving image 21 corresponding to the viewpoint # 1 is used for encoding and decoding of the moving image 22.

演算部12は、一の動画像22に含まれる画像の中から、他の動画像21に含まれる同時刻の画像ColPicを参照する視点間動き情報mvColを有する対象画像CurrPicを検出する。つまり、演算部12は、予測モードが視点間予測に設定された画像領域を含む対象画像CurrPicを検出する。図1の例では、対象画像CurrPicとして画像Pic24が検出されている。また、視点間動き情報mvColにより参照される画像ColPicは、画像Pic14である。 The computing unit 12 detects a target image CurrPic having inter-viewpoint motion information mvCol referring to an image ColPic at the same time included in another moving image 21 from images included in one moving image 22. That is, the calculation unit 12 detects the target image CurrPic including an image region in which the prediction mode is set to inter-view prediction. In the example of FIG. 1, the image Pic 24 is detected as the target image CurrPic. The image ColPic referenced by interview motion information mvCol is an image Pic 14.

演算部12は、対象画像CurrPicと同時刻の画像ColPicが有する動き情報basemvCol0、basemvCol1を利用して対象画像CurrPicの画像領域を符号化する。参照先の画像ColPicは、対象画像CurrPicより先に符号化されている。そのため、対象画像CurrPicを符号化する際に、画像ColPicの動き情報basemvCol0、basemvCol1を利用することができる。 The calculation unit 12 encodes the image area of the target image CurrPic using the motion information basemVCol 0 and basemvCol 1 included in the image ColPic at the same time as the target image CurrPic. The reference image ColPic is encoded before the target image CurrPic. Therefore, when encoding the target image CurrPic, the motion information basemvCol 0 and basemvCol 1 of the image ColPic can be used.

例えば、演算部12は、画像ColPicに含まれる画像領域のうち、視点間動き情報mvColにより対象画像CurrPicの画像領域に対応付けられる1つ又は複数の画像領域を特定する。そして、演算部12は、特定した画像領域の動き情報basemvCol0、basemvCol1に基づいて対象画像CurrPicの画像領域を符号化する。図1の例では、動き情報basemvCol0、basemvCol1に基づいて動き情報mvL0、mvL1が生成され、動き情報mvL0、mvL1を用いて対象画像CurrPicが符号化される。 For example, the calculation unit 12 specifies one or a plurality of image areas associated with the image area of the target image CurrPic by using the inter-viewpoint movement information mvCol among the image areas included in the image ColPic. Then, the calculation unit 12 encodes the image region of the target image CurrPic based on the motion information basemvCol 0 and basemvCol 1 of the specified image region. In the example of FIG. 1, the motion information basemvCol 0, basemvCol motion information mvL 0, mvL 1 based on 1 is generated, the target image CurrPic is coded using the motion information mvL 0, mvL 1.

例えば、画像Pic12、Pic14間の時間tbL0と、画像Pic22、Pic24間の時間tdL0とが異なる場合、演算部12は、比(tdL0/tbL0)により動き情報basemvCol0をスケーリングする。そして、演算部12は、スケーリング後の動き情報(tdL0/tbL0)*basemvCol0を動き情報mvL0とする。同様に、演算部12は、比(tdL1/tbL1)により動き情報basemvCol1をスケーリングし、スケーリング後の動き情報(tdL1/tbL1)*basemvCol1を動き情報mvL1とする。 For example, an image Pic 12, time TBL 0 between Pic 14, image Pic 22, when the time TDL 0 between Pic 24 are different, computing unit 12, by the ratio (tdL 0 / tbL 0) motion information BasemvCol 0 Scale. Then, the calculation unit 12 sets the motion information after scaling (tdL 0 / tbL 0 ) * basemvCol 0 as the motion information mvL 0 . Similarly, the operation unit 12 scales the motion information basemvCol 1 by the ratio (tdL 1 / tbL 1 ), and sets the scaled motion information (tdL 1 / tbL 1 ) * basemvCol 1 as the motion information mvL 1 .

上記のように、対象画像CurrPicの符号化に用いる動き情報mvL0、mvL1は、視点間動き情報mvColが指す画像ColPicの動き情報basemvCol0、basemvCol1から得られる。そのため、対象画像CurrPicの動き情報mvL0、mvL1がなくとも、画像ColPicの動き情報basemvCol0、basemvCol1があれば、対象画像CurrPicを復号することができる。つまり、復号用の情報(符号化データ)に動き情報mvL0、mvL1を含めずに済む分だけ符号化効率を向上させることが可能になる。なお、上記の技術は、非Base−Viewの動画像22を復号する際にも適用することができ、符号化効率の向上に寄与する。 As described above, the motion information mvL 0 and mvL 1 used for encoding the target image CurrPic is obtained from the motion information basemvCol 0 and basemvCol 1 of the image ColPic pointed to by the inter-viewpoint motion information mvCol. Therefore, even if there is no motion information mvL 0, mvL 1 of the target image CurrPic, if motion of the image ColPic information basemvCol 0, basemvCol 1 is able to decode the target picture CurrPic. That is, it is possible to improve the encoding efficiency by the amount that does not include the motion information mvL 0 and mvL 1 in the decoding information (encoded data). Note that the above technique can also be applied when decoding a non-Base-View moving image 22, which contributes to an improvement in encoding efficiency.

以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。なお、ここでは説明の都合上、MVC方式を例に挙げて説明を進めるが、第2実施形態に係る技術の適用範囲はこれに限定されない。
The first embodiment has been described above.
<2. Second Embodiment>
Next, a second embodiment will be described. Here, for convenience of explanation, the description will be given by taking the MVC method as an example, but the scope of application of the technology according to the second embodiment is not limited to this.

[2−1.時間ダイレクトモード]
図2を参照しながら、時間ダイレクトモードについて説明する。図2は、時間ダイレクトモードについて説明するための図である。
[2-1. Time direct mode]
The time direct mode will be described with reference to FIG. FIG. 2 is a diagram for explaining the time direct mode.

時間ダイレクトモードは、動画像の一連性に着目し、符号化対象のマクロブロック(以下、CurrMB)と時間的に隣接したマクロブロックの動きベクトルからCurrMBの動きベクトルを決定する方法である。時間ダイレクトモードを適用すると、動きの時間相関性が高まる上、CurrMBに関する動きベクトルの情報を復号側へと伝送せずに済む分だけ符号化効率が改善する。   The temporal direct mode is a method of determining a CurrMB motion vector from a motion vector of a macroblock temporally adjacent to a coding target macroblock (hereinafter, CurrMB), paying attention to a sequence of moving images. When the temporal direct mode is applied, the temporal correlation of motion increases, and the coding efficiency is improved to the extent that motion vector information relating to CurrMB is not transmitted to the decoding side.

H.264/AVC方式の双方向予測は、List0(L0)方向予測とList1(L1)方向予測とを組み合わせて実現される。L0方向は前方向に設定されることが多い。また、L1方向は後方向に設定されることが多い。但し、H.264/AVC方式の双方向予測は、異なる複数の前方向予測を組み合わせることや、異なる複数の後方向予測を組み合わせることが許容されている。そのため、予測方向はL0方向、L1方向と表現される。本稿においても同様の表現を用いる場合がある。   H. The H.264 / AVC system bidirectional prediction is realized by combining List0 (L0) direction prediction and List1 (L1) direction prediction. The L0 direction is often set to the forward direction. Further, the L1 direction is often set to the backward direction. However, H. In the H.264 / AVC system bidirectional prediction, it is allowed to combine a plurality of different forward predictions or to combine a plurality of different backward predictions. Therefore, the prediction directions are expressed as L0 direction and L1 direction. Similar expressions may be used in this paper.

参照方向は、ピクチャ毎にref_idxというパラメータを用いて表現される。例えば、L0方向のref_idxは、ref_idx_l0と表現される。また、L1方向のref_idxは、ref_idx_l1と表現される。時間ダイレクトモードでは、L1方向に最小のref_idxを有するIピクチャ又はPピクチャ内で、CurrMBと同位置にあるマクロブロックが特定され、そのマクロブロックが指す動きベクトルを基準にCurrMBの動きベクトルが決定される。なお、CurrMBの動きベクトルを決定する際に基準とする動きベクトルを基準ベクトルと呼ぶ場合がある。   The reference direction is expressed for each picture using a parameter called ref_idx. For example, ref_idx in the L0 direction is expressed as ref_idx_10. Further, ref_idx in the L1 direction is expressed as ref_idx_l1. In the temporal direct mode, a macroblock located at the same position as CurrMB is specified in the I picture or P picture having the smallest ref_idx in the L1 direction, and the motion vector of CurrMB is determined based on the motion vector pointed to by the macroblock. The A motion vector that is used as a reference when determining the CurrMB motion vector may be referred to as a reference vector.

図2の例では、BピクチャであるCurrPic内のCurrMBが時間ダイレクトモードによる符号化対象のマクロブロックである。時間ダイレクトモードでは、Bピクチャ内のCurrMBを予測する際に、既に符号化済のピクチャ(以下、ColPic)に注目し、ColPic内でCurrMBと同位置にあるマクロブロック(以下、ColMB)の動きベクトルbasemvColを利用する。なお、図2の例では、L1方向に位置するPピクチャ(ref_idx=0)がColPicである。また、動きベクトルbasemvColは基準ベクトルである。また、基準ベクトルbasemvColが指すピクチャをRefPicColと呼ぶ場合がある。   In the example of FIG. 2, CurrMB in CurrPic that is a B picture is a macroblock to be encoded in the temporal direct mode. In the temporal direct mode, when predicting CurrMB in a B picture, attention is paid to an already encoded picture (hereinafter referred to as ColPic), and a motion vector of a macroblock (hereinafter referred to as ColMB) located at the same position as CurrMB in ColPic. Use basemvCol. In the example of FIG. 2, the P picture (ref_idx = 0) located in the L1 direction is ColPic. The motion vector basemvCol is a reference vector. In addition, the picture indicated by the reference vector basemvCol may be referred to as RefPicCol.

時間ダイレクトモードでは、CurrPicからRefPicColへの動きベクトルmvL0、及びCurrPicからColPicへの動きベクトルmvL1が基準ベクトルbasemvColに基づいて計算される。例えば、ピクチャ間隔(例えば、POC(Picture Order Count)の差)の比率に基づいて基準ベクトルbasemvColをスケーリングすることでmvL0、mvL1が求められる。 In the temporal direct mode, a motion vector mvL 0 from CurrPic to RefPicCol and a motion vector mvL 1 from CurrPic to ColPic are calculated based on the reference vector basemvCol. For example, mvL 0 and mvL 1 are obtained by scaling the reference vector basemvCol based on the ratio of picture intervals (for example, the difference in POC (Picture Order Count)).

図2の例では、RefPicColとColPicとの間の時間がtdであり、RefPicColとCurrPicとの間の時間がtbである。この場合、基準ベクトルbasemvColを比率(tb/td)でスケーリングした動きベクトル(tb/td)*basemvColがmvL0となる。また、(mvL0−basemvCol)がmvL1となる。時間ダイレクトモードでは、このようにして求めた動きベクトルmvL0、mvL1をCurrMBの予測に用いる。この例では、動きベクトルmvL0、mvL1が基準ベクトルbasemvColから得られるため、動き情報mvL0、mvL1を復号側へと伝送せずに済む。 In the example of FIG. 2, the time between RefPicCol and ColPic is td, and the time between RefPicCol and CurrPic is tb. In this case, the motion vector (tb / td) * basemvCol obtained by scaling the reference vector basemvCol by the ratio (tb / td) is mvL 0 . In addition, (mvL 0 -basemvCol) becomes mvL 1 . In the temporal direct mode, the motion vectors mvL 0 and mvL 1 thus obtained are used for CurrMB prediction. In this example, since the motion vectors mvL 0 and mvL 1 are obtained from the reference vector basemvCol, it is not necessary to transmit the motion information mvL 0 and mvL 1 to the decoding side.

なお、ダイレクトモードに用いる動きベクトルの持ち方は、SPS(Sequence_parameter_set)のdirect_8x8_inference_flagの値によって決定される。direct_8x8_inference_flag=1の場合は、8x8単位でダイレクトモードに使用する動きベクトルを持つことになる。また、direct_8x8_inference_flag=0の場合は、4x4単位でダイレクトモードに使用する動きベクトルを持つことになる。   It should be noted that how to hold the motion vector used in the direct mode is determined by the value of direct_8 × 8_influence_flag of SPS (Sequence_parameter_set). When direct_8 × 8_influence_flag = 1, it has a motion vector used for the direct mode in units of 8 × 8. Further, when direct_8x8_influence_flag = 0, it has a motion vector used for the direct mode in units of 4x4.

以上、時間ダイレクトモードについて説明した。
[2−2.視点間予測と時間ダイレクトモード]
次に、図3〜図5を参照しながら、視点間予測と時間ダイレクトモードとの関係について説明する。図2に示した時間ダイレクトモードの例は、1視点に対応する動画像の符号化に時間ダイレクトモードを適用する方法であった。そのため、図2の例では視点間予測が考慮されていない。ここでは、視点間予測と時間ダイレクトモードとの関係について考察する。
The time direct mode has been described above.
[2-2. Inter-view prediction and temporal direct mode]
Next, the relationship between the inter-view prediction and the temporal direct mode will be described with reference to FIGS. The example of the temporal direct mode shown in FIG. 2 is a method in which the temporal direct mode is applied to encoding of a moving image corresponding to one viewpoint. Therefore, inter-view prediction is not considered in the example of FIG. Here, the relationship between inter-view prediction and temporal direct mode is considered.

図3は、視点間予測と時間ダイレクトモードとの関係について説明するための第1の図である。また、図4は、視点間予測と時間ダイレクトモードとの関係について説明するための第2の図である。また、図5は、視点間予測と時間ダイレクトモードとの関係について説明するための第3の図である。   FIG. 3 is a first diagram for explaining the relationship between the inter-view prediction and the temporal direct mode. FIG. 4 is a second diagram for explaining the relationship between the inter-view prediction and the temporal direct mode. FIG. 5 is a third diagram for explaining the relationship between the inter-view prediction and the temporal direct mode.

(2−2−1.視点間予測)
MVC方式は多視点動画像の符号化に関する。MVC方式では、L0方向予測やL1方向予測などの予測モードに加え、別視点に対応する動画像のピクチャを参照する新たな予測モード(視点間予測)が利用される。視点間予測では、符号化対象のピクチャと同一時刻(同一POC)の別視点ピクチャが参照される。
(2-2-1. Inter-view prediction)
The MVC method relates to encoding of a multi-view video. In the MVC scheme, in addition to prediction modes such as L0 direction prediction and L1 direction prediction, a new prediction mode (inter-view prediction) that refers to a moving picture corresponding to another viewpoint is used. In inter-view prediction, a different view picture at the same time (same POC) as the picture to be encoded is referred to.

ここで、図3の例について考える。図3には、視点#1(Base−View)に対応する動画像のピクチャと、視点#2(非Base−View)に対応する動画像のピクチャとが例示されている。   Now consider the example of FIG. FIG. 3 illustrates a moving picture picture corresponding to viewpoint # 1 (Base-View) and a moving picture picture corresponding to viewpoint # 2 (non-Base-View).

図3の例では、BピクチャPic#2内のマクロブロックMB#2が視点間予測に基づく符号化の対象である。視点#1に対応する動画像の各ピクチャは、視点#2に対応する動画像のピクチャを参照せずに符号化される。いま、視点#1に対応するピクチャPic#1は、既に符号化済みであるとする。この場合、マクロブロックMB#2の符号化に用いる動きベクトルは、視点#1(他視点)のBピクチャPic#1に含まれるマクロブロックMB#1を指す視点間動きベクトル(iMV)となる。   In the example of FIG. 3, the macroblock MB # 2 in the B picture Pic # 2 is a target for encoding based on inter-view prediction. Each picture of the moving picture corresponding to the viewpoint # 1 is encoded without referring to the picture of the moving picture corresponding to the viewpoint # 2. Now, it is assumed that the picture Pic # 1 corresponding to the viewpoint # 1 has already been encoded. In this case, the motion vector used for encoding the macroblock MB # 2 is the inter-viewpoint motion vector (iMV) indicating the macroblock MB # 1 included in the B picture Pic # 1 of the viewpoint # 1 (other viewpoint).

上記のように、視点間予測では、符号化対象のピクチャと同一時刻(同一POC)の別視点ピクチャが参照される。そのため、BピクチャPic#2を時間ダイレクトモードのCurrPicとし、視点間動きベクトルiMVが指すBピクチャPic#1をColPicとすると、CurrPicとColPicとの間でPOCの差が0となる。また、BピクチャPic#2をColPicとすると、BピクチャPic#1がRefPicColとなり、RefPicColとColPicとの間でPOCの差が0となる。そのため、スケーリングによりCurrPicの動きベクトルを求めることができない。   As described above, in the inter-view prediction, a different view picture at the same time (same POC) as the picture to be encoded is referred to. Therefore, if the B picture Pic # 2 is CurrPic in the temporal direct mode and the B picture Pic # 1 pointed to by the inter-viewpoint motion vector iMV is ColPic, the POC difference between CurrPic and ColPic becomes zero. If the B picture Pic # 2 is ColPic, the B picture Pic # 1 becomes RefPicCol, and the difference in POC between RefPicCol and ColPic becomes zero. Therefore, the CurrPic motion vector cannot be obtained by scaling.

H.264規格書(T−REC−H.264−200903−I!!PDF−E.pdf)のH.7.4.3には、ColPic内に視点間予測を行うブロックが存在する場合に適用可能なダイレクトモードを空間ダイレクトモードに限る旨が記載されている。しかし、単純に周辺ブロックの動きベクトルを使用する空間ダイレクトモードよりも、前後のピクチャを含めた動きベクトルの時間的な連続性を維持する時間ダイレクトモードの方がより大きな符号化効率の向上を見込める。こうした理由から、第2実施形態では、視点間予測と時間ダイレクトモードとの関係について考察し、多視点動画像の符号化に時間ダイレクトモードを適用できるようにする方法を提案する。   H. H.264 standard (T-REC-H.264-200903-I! PDF-E.pdf). 7.4.3 describes that the direct mode applicable when there is a block that performs inter-view prediction in ColPic is limited to the spatial direct mode. However, the temporal direct mode that maintains temporal continuity of motion vectors including the preceding and succeeding pictures can be expected to improve coding efficiency more than the spatial direct mode that simply uses the motion vectors of surrounding blocks. . For these reasons, the second embodiment considers the relationship between inter-view prediction and temporal direct mode, and proposes a method that allows temporal direct mode to be applied to multi-view video encoding.

(2−2−2.参照ブロックが視点間予測ブロックである場合)
図4を参照する。図4の例は、視点#2に対応するCurrPicのマクロブロックと同じ位置にあるColPicのマクロブロックが視点間動きベクトルiMVにより視点#2に対応するピクチャを参照する場合を示したものである。この場合、視点間動きベクトルiMVをスケーリングしてもCurrPicの符号化に用いる動きベクトルは得られない。
(2-2-2. When the reference block is an inter-view prediction block)
Please refer to FIG. The example of FIG. 4 illustrates a case where a ColPic macroblock at the same position as the CurrPic macroblock corresponding to the viewpoint # 2 refers to the picture corresponding to the viewpoint # 2 by the inter-view motion vector iMV. In this case, even if the inter-view motion vector iMV is scaled, a motion vector used for CurrPic encoding cannot be obtained.

そこで、本発明者は、図4に示すように、視点間動きベクトルiMVが指すブロックの動きベクトルを基準ベクトルbasemvColに設定する方法を提案した。この方法によれば、ピクチャI12、P15の間隔td(POC差分)とピクチャI22、B24の間隔tb(POC差分)とに基づいて基準ベクトルbasemvColをスケーリングすることにより、CurrPicの動きベクトルが得られる。従って、図4のような場合でも時間ダイレクトモードを適用することが可能になる。第2実施形態では、図4に示した方法による符号化も考慮する。 Therefore, the present inventor has proposed a method of setting the motion vector of the block indicated by the inter-viewpoint motion vector iMV as the reference vector basemCol, as shown in FIG. According to this method, by scaling the reference vector basemvCol based on the interval td (POC difference) between the pictures I 12 and P 15 and the interval tb (POC difference) between the pictures I 22 and B 24 , the motion vector of CurrPic Is obtained. Therefore, the time direct mode can be applied even in the case of FIG. In the second embodiment, encoding by the method shown in FIG. 4 is also considered.

(2−2−3.参照ブロックが他視点ブロックである場合)
図5を参照する。図5の例は、視点#2に対応するCurrPicのマクロブロックが視点間動きベクトルiMVにより視点#1に対応するピクチャを参照する場合を示したものである。この場合、CurrPicのインター予測に用いる動きベクトルの長さtb(POC差分)が0となる。そのため、基準ベクトルbasemvColの長さに相当する時間tdとtbとの比で基準ベクトルbasemvColをスケーリングすることができない。
(2-2-3. Reference block is another viewpoint block)
Please refer to FIG. The example of FIG. 5 shows a case where the CurrPic macroblock corresponding to the viewpoint # 2 refers to the picture corresponding to the viewpoint # 1 by the inter-view motion vector iMV. In this case, the length tb (POC difference) of the motion vector used for CurrPic inter prediction is zero. Therefore, the reference vector basemvCol cannot be scaled by the ratio of the times td and tb corresponding to the length of the reference vector basemvCol.

そこで、第2実施形態では、視点間動きベクトルiMVが指すブロックの動きベクトルを基準ベクトルbasemvColに設定し、視点間動きベクトルiMVの長さに相当する時間tbを用いずにCurrPicの動きベクトルを求める方法を提案する。例えば、図5の例では、基準ベクトルbasemvColの長さに相当する時間tdと、ピクチャI22、B24の間隔に相当する時間との比で基準ベクトルbasemvColをスケーリングする方法が考えられる。この方法によれば、図5のような場合でも時間ダイレクトモードを適用することが可能になる。 Therefore, in the second embodiment, the motion vector of the block indicated by the inter-view motion vector iMV is set as the reference vector basemvCol, and the CurrPic motion vector is obtained without using the time tb corresponding to the length of the inter-view motion vector iMV. Suggest a method. For example, in the example of FIG. 5, a method of scaling the reference vector basemvCol by the ratio of the time td corresponding to the length of the reference vector basemvCol and the time corresponding to the interval between the pictures I 22 and B 24 can be considered. According to this method, the time direct mode can be applied even in the case of FIG.

以上、視点間予測と時間ダイレクトモードとの関係について説明した。
[2−3.システム]
次に、図6を参照しながら、第2実施形態に係るシステムについて説明する。図6は、第2実施形態に係るシステムの一例を示した図である。
The relationship between the inter-view prediction and the temporal direct mode has been described above.
[2-3. system]
Next, a system according to the second embodiment will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of a system according to the second embodiment.

図6に示すように、第2実施形態に係るシステムは、符号化装置100及び復号装置200を含む。符号化装置100は、複数の視点にそれぞれ対応する複数の動画像を符号化する装置である。符号化装置100により符号化された複数の動画像に対応する符号化データは、復号装置200に伝送される。例えば、符号化データは、ネットワークや可搬記録媒体などを介して復号装置200に伝送される。復号装置200は、符号化装置100から取得した符号化データを復号して複数の動画像を復元する。   As illustrated in FIG. 6, the system according to the second embodiment includes an encoding device 100 and a decoding device 200. The encoding apparatus 100 is an apparatus that encodes a plurality of moving images respectively corresponding to a plurality of viewpoints. Encoded data corresponding to a plurality of moving images encoded by the encoding device 100 is transmitted to the decoding device 200. For example, the encoded data is transmitted to the decoding device 200 via a network or a portable recording medium. The decoding device 200 decodes the encoded data acquired from the encoding device 100 to restore a plurality of moving images.

なお、以下では、説明の都合上、2視点(Base−View、非Base−View)の動画像を符号化及び復号することを前提に説明する。但し、第2実施形態に係る技術の適用範囲はこれに限定されず、視点数が3以上の場合にも適用可能である。   In the following description, for convenience of explanation, description will be made on the assumption that a moving image of two viewpoints (Base-View, non-Base-View) is encoded and decoded. However, the scope of application of the technology according to the second embodiment is not limited to this, and the present invention can also be applied when the number of viewpoints is three or more.

以上、システムについて説明した。
[2−4.ハードウェアの例]
次に、図7を参照しながら、符号化装置100が有する機能を実現することが可能なハードウェアについて説明する。図7は、第2実施形態に係る符号化装置が有する機能を実現することが可能なハードウェアの一例を示した図である。
The system has been described above.
[2-4. Hardware example]
Next, hardware capable of realizing the functions of the encoding apparatus 100 will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of hardware capable of realizing the functions of the encoding apparatus according to the second embodiment.

符号化装置100が有する機能は、例えば、図7に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、符号化装置100が有する機能は、コンピュータプログラムを用いて図7に示すハードウェアを制御することにより実現される。   The functions of the encoding apparatus 100 can be realized using, for example, hardware resources of the information processing apparatus illustrated in FIG. That is, the functions of the encoding device 100 are realized by controlling the hardware shown in FIG. 7 using a computer program.

図7に示すように、このハードウェアは、主に、CPU902と、ROM(Read Only Memory)904と、RAM906と、ホストバス908と、ブリッジ910とを有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926とを有する。   As shown in FIG. 7, this hardware mainly includes a CPU 902, a ROM (Read Only Memory) 904, a RAM 906, a host bus 908, and a bridge 910. Further, this hardware includes an external bus 912, an interface 914, an input unit 916, an output unit 918, a storage unit 920, a drive 922, a connection port 924, and a communication unit 926.

CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。   The CPU 902 functions as, for example, an arithmetic processing unit or a control unit, and controls the overall operation of each component or a part thereof based on various programs recorded in the ROM 904, the RAM 906, the storage unit 920, or the removable recording medium 928. . The ROM 904 is an example of a storage device that stores a program read by the CPU 902, data used for calculation, and the like. The RAM 906 temporarily or permanently stores, for example, a program read by the CPU 902 and various parameters that change when the program is executed.

これらの要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。   These elements are connected to each other via, for example, a host bus 908 capable of high-speed data transmission. On the other hand, the host bus 908 is connected to an external bus 912 having a relatively low data transmission speed via a bridge 910, for example. As the input unit 916, for example, a mouse, a keyboard, a touch panel, a touch pad, a button, a switch, a lever, or the like is used. Furthermore, as the input unit 916, a remote controller capable of transmitting a control signal using infrared rays or other radio waves may be used.

出力部918としては、例えば、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、又はELD(Electro-Luminescence Display)などのディスプレイ装置が用いられる。また、出力部918として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部918は、情報を視覚的又は聴覚的に出力することが可能な装置である。   As the output unit 918, for example, a display device such as a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), or an ELD (Electro-Luminescence Display) is used. As the output unit 918, an audio output device such as a speaker or headphones, or a printer may be used. In other words, the output unit 918 is a device that can output information visually or audibly.

記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、HDDなどの磁気記憶デバイスが用いられる。また、記憶部920として、SSD(Solid State Drive)やRAMディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。   The storage unit 920 is a device for storing various data. As the storage unit 920, for example, a magnetic storage device such as an HDD is used. Further, as the storage unit 920, a semiconductor storage device such as an SSD (Solid State Drive) or a RAM disk, an optical storage device, a magneto-optical storage device, or the like may be used.

ドライブ922は、着脱可能な記録媒体であるリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。   The drive 922 is a device that reads information recorded on a removable recording medium 928 that is a removable recording medium or writes information on the removable recording medium 928. As the removable recording medium 928, for example, a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is used.

接続ポート924は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子など、外部接続機器930を接続するためのポートである。外部接続機器930としては、例えば、プリンタなどが用いられる。   The connection port 924 is a port for connecting an external connection device 930 such as a USB (Universal Serial Bus) port, an IEEE 1394 port, a SCSI (Small Computer System Interface), an RS-232C port, or an optical audio terminal. For example, a printer or the like is used as the external connection device 930.

通信部926は、ネットワーク932に接続するための通信デバイスである。通信部926としては、例えば、有線又は無線LAN(Local Area Network)用の通信回路、WUSB(Wireless USB)用の通信回路、光通信用の通信回路やルータ、ADSL(Asymmetric Digital Subscriber Line)用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークであり、例えば、インターネット、LAN、放送網、衛星通信回線などを含む。   The communication unit 926 is a communication device for connecting to the network 932. As the communication unit 926, for example, a communication circuit for wired or wireless LAN (Local Area Network), a communication circuit for WUSB (Wireless USB), a communication circuit or router for optical communication, an ADSL (Asymmetric Digital Subscriber Line) Communication circuits, routers, communication circuits for mobile phone networks, and the like are used. A network 932 connected to the communication unit 926 is a wired or wireless network, and includes, for example, the Internet, a LAN, a broadcast network, a satellite communication line, and the like.

以上、符号化装置100が有する機能を実現することが可能なハードウェアについて説明した。なお、復号装置200が有する機能も、図7に例示したハードウェアを利用して実現することが可能である。つまり、図7に示したハードウェアは、復号装置200が有する機能を実現することが可能なハードウェアの一例でもある。従って、復号装置200が有する機能を実現することが可能なハードウェアに関する詳細な説明を省略する。   Heretofore, the hardware capable of realizing the functions of the encoding device 100 has been described. Note that the functions of the decoding device 200 can also be realized using the hardware illustrated in FIG. That is, the hardware illustrated in FIG. 7 is an example of hardware that can realize the functions of the decoding device 200. Therefore, detailed description regarding hardware capable of realizing the functions of the decoding device 200 is omitted.

[2−5.符号化装置の機能]
次に、図8〜図10を参照しながら、符号化装置100が有する機能について説明する。
[2-5. Function of encoding apparatus]
Next, functions of the encoding device 100 will be described with reference to FIGS.

図8は、第2実施形態に係る符号化装置が有する機能の一例を示した第1のブロック図である。また、図9は、第2実施形態に係る符号化装置が有する機能の一例を示した第2のブロック図である。また、図10は、第2実施形態に係る符号化装置が有する機能の一例を示した第3のブロック図である。   FIG. 8 is a first block diagram illustrating an example of the functions of the encoding device according to the second embodiment. FIG. 9 is a second block diagram showing an example of the functions of the encoding apparatus according to the second embodiment. FIG. 10 is a third block diagram illustrating an example of functions of the encoding apparatus according to the second embodiment.

(2−5−1.全体)
図8に示すように、符号化装置100は、第1視点符号化部101、統計情報取得部102、及び第2視点符号化部103を有する。なお、符号化装置100は、第1視点符号化部101、統計情報取得部102、及び第2視点符号化部103の機能は、上述したCPU902などを用いて実現できる。
(2-5-1. Overall)
As illustrated in FIG. 8, the encoding device 100 includes a first viewpoint encoding unit 101, a statistical information acquisition unit 102, and a second viewpoint encoding unit 103. Note that in the encoding device 100, the functions of the first viewpoint encoding unit 101, the statistical information acquisition unit 102, and the second viewpoint encoding unit 103 can be realized using the above-described CPU 902 or the like.

第1視点符号化部101には、Base−Viewに対応する動画像のピクチャ(以下、Base−Viewピクチャ)が入力される。第1視点符号化部101は、入力されたBase−Viewピクチャを符号化する。第1視点符号化部101の機能については後段において詳述する。   The first viewpoint encoding unit 101 receives a moving picture corresponding to Base-View (hereinafter referred to as Base-View picture). The first viewpoint encoding unit 101 encodes the input Base-View picture. The function of the first viewpoint encoding unit 101 will be described in detail later.

統計情報取得部102は、第1視点符号化部101によるBase−Viewピクチャの符号化時に得られる統計情報を取得する。統計情報としては、例えば、量子化スケール値(以下、qP値)や差分係数の個数などがある。統計情報取得部102により取得された統計情報は、第2視点符号化部103に入力される。   The statistical information acquisition unit 102 acquires statistical information obtained when the first viewpoint encoding unit 101 encodes the Base-View picture. The statistical information includes, for example, a quantization scale value (hereinafter referred to as qP value) and the number of difference coefficients. The statistical information acquired by the statistical information acquisition unit 102 is input to the second viewpoint encoding unit 103.

第2視点符号化部103には、非Base−Viewに対応する動画像のピクチャ(以下、非Base−Viewピクチャ)が入力される。第2視点符号化部103は、第1視点符号化部101が符号化に用いた動きベクトルやピクチャに関する情報、及び統計情報を用いて非Base−Viewピクチャを符号化する。第2視点符号化部103の機能については後段において詳述する。   The second viewpoint encoding unit 103 receives a moving picture corresponding to non-Base-View (hereinafter, non-Base-View picture). The second viewpoint encoding unit 103 encodes the non-Base-View picture using the motion vector and the information about the picture used by the first viewpoint encoding unit 101 and the statistical information. The function of the second viewpoint encoding unit 103 will be described in detail later.

(2−5−2.第1視点符号化部101の細部)
ここで、図9を参照しながら、第1視点符号化部101の機能について、さらに説明する。
(2-5-2. Details of First View Coding Unit 101)
Here, the function of the first viewpoint encoding unit 101 will be further described with reference to FIG.

図9に示すように、第1視点符号化部101は、減算器111、直交変換・量子化部112、可変長符号化部113、逆直交変換・逆量子化部114、及び加算器115を有する。さらに、第1視点符号化部101は、フレームメモリ116、動き補償部117、動きベクトル検出部118、動きベクトルメモリ119、基準ベクトル取得部120、ダイレクトベクトル計算部121、及びモード判定部122を有する。   As shown in FIG. 9, the first viewpoint encoding unit 101 includes a subtractor 111, an orthogonal transformation / quantization unit 112, a variable length coding unit 113, an inverse orthogonal transformation / inverse quantization unit 114, and an adder 115. Have. Further, the first viewpoint encoding unit 101 includes a frame memory 116, a motion compensation unit 117, a motion vector detection unit 118, a motion vector memory 119, a reference vector acquisition unit 120, a direct vector calculation unit 121, and a mode determination unit 122. .

減算器111には、Base−Viewピクチャを16×16ピクセル(画素)のブロック(MB)に分割したマクロブロックのデータ(以下、MBデータ)が入力される。減算器111は、入力されたMBデータから、動き補償部117から出力される予測画像のMBデータを減算して予測誤差データを生成する。減算器111により生成された予測誤差データは、直交変換・量子化部112に入力される。   The subtractor 111 receives macroblock data (hereinafter referred to as MB data) obtained by dividing the Base-View picture into blocks (MB) of 16 × 16 pixels (pixels). The subtractor 111 subtracts the MB data of the predicted image output from the motion compensation unit 117 from the input MB data to generate prediction error data. Prediction error data generated by the subtractor 111 is input to the orthogonal transform / quantization unit 112.

直交変換・量子化部112は、入力された予測誤差データを8×8ピクセルのブロック又は4×4ピクセルのブロックを単位として直交変換する。適用可能な直交変換としては、例えば、DCT(Discrete Cosine Transform)変換やアダマール(Hadamard)変換などがある。このような直交変換により、予測誤差データは、水平方向の周波数成分及び垂直方向の周波数成分のデータに変換される。   The orthogonal transform / quantization unit 112 orthogonally transforms the input prediction error data in units of 8 × 8 pixel blocks or 4 × 4 pixel blocks. Examples of applicable orthogonal transforms include DCT (Discrete Cosine Transform) transform and Hadamard transform. Through such orthogonal transformation, the prediction error data is converted into data of a horizontal frequency component and a vertical frequency component.

また、直交変換・量子化部112は、直交変換により得られた周波数成分のデータを量子化して量子化データを生成する。直交変換・量子化部112により生成された量子化データは、可変長符号化部113及び逆直交変換・逆量子化部114に入力される。   The orthogonal transform / quantization unit 112 quantizes the frequency component data obtained by the orthogonal transform to generate quantized data. The quantized data generated by the orthogonal transform / quantization unit 112 is input to the variable length coding unit 113 and the inverse orthogonal transform / inverse quantization unit 114.

可変長符号化部113は、量子化データを可変長符号化して符号化データを生成する。可変長符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる符号化方法である。例えば、可変長符号化部113は、出現頻度の高い係数の組合せに短い符号を割り当て、出現頻度の低い係数の組合せに長い符号を割当てる。適用可能な可変長符号化としては、CAVLC(Context−Adaptive Variable Length Coding)やCABAC(Context−Adaptive Binary Arithmetic Coding)などがある。   The variable length encoding unit 113 performs variable length encoding on the quantized data to generate encoded data. The variable length coding is a coding method that assigns a variable length code according to the appearance frequency of a symbol. For example, the variable length coding unit 113 assigns a short code to a combination of coefficients having a high appearance frequency, and assigns a long code to a combination of coefficients having a low appearance frequency. Examples of applicable variable length coding include CAVLC (Context-Adaptive Variable Length Coding) and CABAC (Context-Adaptive Binary Arithmetic Coding).

逆直交変換・逆量子化部114は、量子化データを逆量子化して周波数成分のデータを復元する。また、逆直交変換・逆量子化部114は、周波数成分のデータに逆直交変換を施して予測誤差データを復元する。復元された予測誤差データは、加算器115に入力される。加算器115は、動き補償により動き補償部117で生成されたMBデータと、逆直交変換・逆量子化部114により復元された予測誤差データとを加算して局所復号画像を生成する。   The inverse orthogonal transform / inverse quantization unit 114 dequantizes the quantized data to restore the frequency component data. The inverse orthogonal transform / inverse quantization unit 114 performs inverse orthogonal transform on the frequency component data to restore the prediction error data. The restored prediction error data is input to the adder 115. The adder 115 adds the MB data generated by the motion compensation unit 117 by motion compensation and the prediction error data restored by the inverse orthogonal transform / inverse quantization unit 114 to generate a locally decoded image.

加算器115により生成された局所復号画像は、フレームメモリ116に入力される。なお、局所復号画像にデブロッキングフィルタが施されるようにしてもよい。フレームメモリ116には、加算器115により入力された局所復号画像が格納される。フレームメモリ116に格納された局所復号画像は、動き補償部117により参照される。また、フレームメモリ116に格納された局所復号画像は、第2視点符号化部103により非Base−Viewピクチャの符号化に利用される。   The locally decoded image generated by the adder 115 is input to the frame memory 116. A deblocking filter may be applied to the locally decoded image. The frame memory 116 stores the locally decoded image input by the adder 115. The locally decoded image stored in the frame memory 116 is referred to by the motion compensation unit 117. In addition, the locally decoded image stored in the frame memory 116 is used by the second viewpoint encoding unit 103 to encode a non-Base-View picture.

動き補償部117は、動きベクトルメモリ119に格納されている動きベクトルを用いて、フレームメモリ116に格納されている局所復号画像の動き補償を実行し、動き補償後のMBデータ(参照ピクチャのMBデータ)を生成する。動きベクトル検出部118は、入力されたBase−ViewピクチャのMBデータ(対象ピクチャのMBデータ)と参照ピクチャのMBデータとを用いて動き探索を実行し、動きベクトルを生成する。   The motion compensation unit 117 performs motion compensation of the locally decoded image stored in the frame memory 116 using the motion vector stored in the motion vector memory 119, and performs MB data after motion compensation (MB of the reference picture). Data). The motion vector detection unit 118 performs motion search using the input MB data of the Base-View picture (MB data of the target picture) and the MB data of the reference picture, and generates a motion vector.

動き探索の方法としては、例えば、ブロックマッチング法などがある。なお、動き探索には、画素の差分絶対値和の大きさなどが利用される。例えば、動き補償に用いる評価値costは、差分絶対値SAD_cost、動きベクトルの符号量に相当する評価値MV_costを用いて下記の式(1)のように表現できる。なお、SADは、Sum Absolute Differenceの略である。また、MVは、Motion Vectorの略である。   As a motion search method, for example, there is a block matching method. Note that the magnitude of the sum of absolute differences of pixels is used for motion search. For example, the evaluation value cost used for motion compensation can be expressed as the following equation (1) using the difference absolute value SAD_cost and the evaluation value MV_cost corresponding to the code amount of the motion vector. Note that SAD is an abbreviation for Sum Absolute Difference. MV is an abbreviation for Motion Vector.

cost = SAD_cost + MV_cost
…(1)
動きベクトル検出部118は、例えば、上記の評価値costが最小となるような動きベクトルを検出する。動きベクトル検出部118により検出された動きベクトルは、動きベクトルメモリ119及びモード判定部122に入力される。動きベクトルメモリ119には、動きベクトル検出部118により検出された動きベクトルが格納される。
cost = SAD_cost + MV_cost
... (1)
The motion vector detection unit 118 detects, for example, a motion vector that minimizes the evaluation value cost. The motion vector detected by the motion vector detection unit 118 is input to the motion vector memory 119 and the mode determination unit 122. The motion vector memory 119 stores a motion vector detected by the motion vector detection unit 118.

基準ベクトル取得部120は、符号化対象のマクロブロック(CurrMB)が双方向予測を用いるマクロブロックであるか否かを判定する。CurrMBが双方向予測を用いるマクロブロックである場合、基準ベクトル取得部120は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定し、ColMBの動きベクトルを動きベクトルメモリ119から取得する(図2を参照)。基準ベクトル取得部120により取得された動きベクトルは、基準ベクトルbasemvColとしてダイレクトベクトル計算部121に入力される。   The reference vector acquisition unit 120 determines whether or not the encoding target macroblock (CurrMB) is a macroblock using bi-directional prediction. When the CurrMB is a macroblock using bi-directional prediction, the reference vector acquisition unit 120 specifies a ColPic macroblock (ColMB) that is in the same position as the CurrMB, and acquires a motion vector of the ColMB from the motion vector memory 119 ( (See FIG. 2). The motion vector acquired by the reference vector acquisition unit 120 is input to the direct vector calculation unit 121 as a reference vector basemvCol.

ダイレクトベクトル計算部121は、基準ベクトルbasemvColを時間配分でスケーリングし、CurrMBの動きベクトル(ダイレクトベクトル)を生成する。例えば、図2の例では、基準ベクトルbasemvColが時間tb、tdの比に基づいてスケーリングされ、ダイレクトベクトルmvL0、mvL1が生成されている。このようにしてダイレクトベクトル計算部121により生成されたダイレクトベクトルは、モード判定部122に入力される。 The direct vector calculation unit 121 scales the reference vector basemCol with time distribution to generate a CurrMB motion vector (direct vector). For example, in the example of FIG. 2, the reference vector basemvCol is scaled based on the ratio of the times tb and td, and the direct vectors mvL 0 and mvL 1 are generated. The direct vector generated by the direct vector calculation unit 121 in this way is input to the mode determination unit 122.

モード判定部122は、5つの予測モード(イントラ予測モード、前方向予測モード、後方向予測モード、双方向予測モード、ダイレクトモード)のうち、符号化コストが最も小さい予測モードを選択する。例えば、モード判定部122は、予測モード毎に、下記の式(2)〜式(6)に示す符号化コストを計算する。   The mode determination unit 122 selects a prediction mode with the lowest coding cost among the five prediction modes (intra prediction mode, forward prediction mode, backward prediction mode, bidirectional prediction mode, and direct mode). For example, the mode determination unit 122 calculates the encoding cost shown in the following equations (2) to (6) for each prediction mode.

cost_directは、ダイレクトモードの符号化コストである。cost_forwardは、前方向予測モードの符号化コストである。cost_backwardは、後方向予測モードの符号化コストである。cost_bidirectionは、双方向予測モードの符号化コストである。cost_intraは、イントラ予測モードの符号化コストである。*orgは、対象ピクチャのMBデータを表す。*refは、参照ピクチャのMBデータを表す。*mvは、CurrMBが用いる動きベクトルの候補である。*prevmvは、CurrMBの周辺に位置するマクロブロックに基づく予測ベクトルを表す。   cost_direct is the encoding cost of the direct mode. cost_forward is the coding cost of the forward prediction mode. cost_backward is the encoding cost of the backward prediction mode. cost_biddirection is the encoding cost of the bidirectional prediction mode. cost_intra is the coding cost of the intra prediction mode. * Org represents MB data of the target picture. * Ref represents the MB data of the reference picture. * Mv is a motion vector candidate used by CurrMB. * Prevmv represents a prediction vector based on a macroblock located around CurrMB.

cost_direct = SAD(*org,*ref)
…(2)
cost_forward = SAD(*org,*ref) + MV_COST(*mv,*prevmv)
…(3)
cost_backward = SAD(*org,*ref) + MV_COST(*mv,*prevmv)
…(4)
cost_bidirection = SAD(*org,*ref) + MV_COST(*mv,*prevmv)
…(5)
cost_intra = ACT(*org)
…(6)
なお、SAD(・)は、下記の式(7)に示すように、画素差分絶対値和を計算する関数である。H.264/AVC方式では、1つのマクロブロックを複数のサブブロックに分割することができる。例えば、1つのマクロブロックが4つの8×8のサブブロックに分かれている場合、サブブロック毎に計算される4つの差分絶対値和が、SAD(・)の計算結果となる。サブブロックの単位を8×16ピクセル、16×8ピクセル、4×8ピクセル、8×4ピクセル、4×4ピクセルにした場合も同様である。
cost_direct = SAD (* org, * ref)
... (2)
cost_forward = SAD (* org, * ref) + MV_COST (* mv, * prevmv)
... (3)
cost_backward = SAD (* org, * ref) + MV_COST (* mv, * prevmv)
... (4)
cost_bidirection = SAD (* org, * ref) + MV_COST (* mv, * prevmv)
... (5)
cost_intra = ACT (* org)
(6)
SAD (·) is a function for calculating the sum of pixel difference absolute values as shown in the following equation (7). H. In the H.264 / AVC format, one macro block can be divided into a plurality of sub blocks. For example, when one macroblock is divided into four 8 × 8 sub-blocks, four sums of absolute differences calculated for each sub-block are the calculation results of SAD (•). The same applies when the unit of the sub-block is 8 × 16 pixels, 16 × 8 pixels, 4 × 8 pixels, 8 × 4 pixels, and 4 × 4 pixels.

SAD(*org,*ref) = Σ|*org − *ref|
…(7)
MV_COST(・)は、動きベクトルの符号量に比例した評価値を計算する関数である。MV_COST(・)は、下記の式(8)のように表現される。なお、λは、符号化コストへの影響度を調整するための重み定数である。また、Table[・]は、ベクトル差分の大きさを符号量相当に変換するテーブルである。これらは予め設定される。
SAD (* org, * ref) = Σ | * org− * ref |
... (7)
MV_COST (·) is a function for calculating an evaluation value proportional to the code amount of the motion vector. MV_COST (•) is expressed as in the following Expression (8). Note that λ is a weighting constant for adjusting the degree of influence on the coding cost. Table [·] is a table for converting the magnitude of the vector difference into the code amount. These are preset.

MV_COST = λ*(Table[*mv−*prevmv])
…(8)
上記の式(6)に示すように、イントラ予測モードの符号化コストは、アクティビティと呼ばれる関数ACT(・)により表現される。イントラ予測モードの場合、CurrMBそのものが直交変換される。そのため、CurrMBに含まれる各画素の画素値が平均値(AveMB)から離れている度合い(アクティビティ)を用いて符号化コストが求められる。アクティビティを求める関数ACT(・)は、下記の式(9)で表現される。
MV_COST = λ * (Table [* mv− * prevmv])
... (8)
As shown in the above equation (6), the coding cost of the intra prediction mode is expressed by a function ACT (•) called an activity. In the intra prediction mode, CurrMB itself is orthogonally transformed. Therefore, the encoding cost is obtained using the degree (activity) that the pixel value of each pixel included in CurrMB is away from the average value (AveMB). The function ACT (·) for obtaining the activity is expressed by the following equation (9).

ACT(*org,*ref) = Σ|*org − AveMB|
…(9)
なお、上記の式(2)〜式(6)から明らかなように、ダイレクトモードの符号化コストにはMV_COSTが含まれない。そのため、予測が的中して全ての予測モードでSADが同等で比較的小さい値となった場合には、ダイレクトモードの符号化コストが低くなり、ダイレクトモードが選択されやすくなる。
ACT (* org, * ref) = Σ | * org−AveMB |
... (9)
As is clear from the above equations (2) to (6), MV_COST is not included in the coding cost of the direct mode. Therefore, when the prediction is correct and the SAD is equal and relatively small in all prediction modes, the encoding cost of the direct mode is reduced and the direct mode is easily selected.

さて、上記のような方法で予測モード毎に符号化コストを計算したモード判定部122は、符号化コストが最小となる予測モードを選択する。また、モード判定部122は、選択した予測モードによる符号化に用いる動きベクトルを動きベクトルメモリ119に格納する。さらに、モード判定部122は、選択した予測モードを動き補償部117に通知する。   Now, the mode determination part 122 which calculated the encoding cost for every prediction mode with the above methods selects the prediction mode with the minimum encoding cost. The mode determination unit 122 also stores a motion vector used for encoding in the selected prediction mode in the motion vector memory 119. Furthermore, the mode determination unit 122 notifies the motion compensation unit 117 of the selected prediction mode.

上記のように、Base−Viewピクチャの符号化は、非Base−Viewピクチャの符号化とは独立して実行される。
(2−5−3.第2視点符号化部103の細部)
ここで、図10を参照しながら、第2視点符号化部103の機能について、さらに説明する。
As described above, the coding of the Base-View picture is performed independently of the coding of the non-Base-View picture.
(2-5-3. Details of Second View Encoding Unit 103)
Here, the function of the second viewpoint encoding unit 103 will be further described with reference to FIG.

図10に示すように、第2視点符号化部103は、減算器131、直交変換・量子化部132、可変長符号化部133、逆直交変換・逆量子化部134、及び加算器135を有する。また、第2視点符号化部103は、フレームメモリ136、動き補償部137、動きベクトル検出部138、及び動きベクトルメモリ139を有する。さらに、第2視点符号化部103は、基準ベクトル取得部140、基準ベクトル補正部141、ダイレクトベクトル計算部142、及びモード判定部143を有する。   As shown in FIG. 10, the second viewpoint encoding unit 103 includes a subtractor 131, an orthogonal transform / quantization unit 132, a variable length encoding unit 133, an inverse orthogonal transform / inverse quantization unit 134, and an adder 135. Have. The second viewpoint encoding unit 103 includes a frame memory 136, a motion compensation unit 137, a motion vector detection unit 138, and a motion vector memory 139. Furthermore, the second viewpoint encoding unit 103 includes a reference vector acquisition unit 140, a reference vector correction unit 141, a direct vector calculation unit 142, and a mode determination unit 143.

減算器131には、非Base−ViewピクチャのMBデータが入力される。減算器131は、第1視点符号化部101と同様に、入力されたMBデータから、動き補償部137から出力される予測画像のMBデータを減算して予測誤差データを生成する。減算器131により生成された予測誤差データは、直交変換・量子化部132に入力される。   The subtracter 131 receives MB data of a non-Base-View picture. Similar to the first viewpoint encoding unit 101, the subtractor 131 subtracts the MB data of the prediction image output from the motion compensation unit 137 from the input MB data to generate prediction error data. The prediction error data generated by the subtracter 131 is input to the orthogonal transform / quantization unit 132.

直交変換・量子化部132は、入力された予測誤差データを8×8ピクセルのブロック又は4×4ピクセルのブロックを単位として直交変換する。適用可能な直交変換としては、例えば、DCT変換やアダマール変換などがある。このような直交変換により、予測誤差データは、水平方向の周波数成分及び垂直方向の周波数成分のデータに変換される。   The orthogonal transform / quantization unit 132 orthogonally transforms the input prediction error data in units of 8 × 8 pixel blocks or 4 × 4 pixel blocks. Examples of applicable orthogonal transform include DCT transform and Hadamard transform. Through such orthogonal transformation, the prediction error data is converted into data of a horizontal frequency component and a vertical frequency component.

また、直交変換・量子化部132は、直交変換により得られた周波数成分のデータを量子化して量子化データを生成する。直交変換・量子化部132により生成された量子化データは、可変長符号化部133及び逆直交変換・逆量子化部134に入力される。可変長符号化部133は、量子化データを可変長符号化して符号化データを生成する。適用可能な可変長符号化としては、CAVLCやCABACなどがある。   The orthogonal transform / quantization unit 132 quantizes the frequency component data obtained by the orthogonal transform to generate quantized data. The quantized data generated by the orthogonal transform / quantization unit 132 is input to the variable length coding unit 133 and the inverse orthogonal transform / inverse quantization unit 134. The variable length encoding unit 133 performs variable length encoding on the quantized data to generate encoded data. Examples of applicable variable length coding include CAVLC and CABAC.

逆直交変換・逆量子化部134は、量子化データを逆量子化して周波数成分のデータを復元する。また、逆直交変換・逆量子化部134は、周波数成分のデータに逆直交変換を施して予測誤差データを復元する。復元された予測誤差データは、加算器135に入力される。加算器135は、動き補償により動き補償部137で生成されたMBデータと、逆直交変換・逆量子化部134により復元された予測誤差データとを加算して局所復号画像を生成する。   The inverse orthogonal transform / inverse quantization unit 134 dequantizes the quantized data to restore the frequency component data. The inverse orthogonal transform / inverse quantization unit 134 performs inverse orthogonal transform on the frequency component data to restore the prediction error data. The restored prediction error data is input to the adder 135. The adder 135 adds the MB data generated by the motion compensation unit 137 by motion compensation and the prediction error data restored by the inverse orthogonal transform / inverse quantization unit 134 to generate a locally decoded image.

加算器135により生成された局所復号画像は、フレームメモリ136及び動き補償部137に入力される。なお、局所復号画像にデブロッキングフィルタが施されるようにしてもよい。フレームメモリ136には、加算器135により入力された局所復号画像が格納される。フレームメモリ136に格納された局所復号画像は、動き補償部137により参照される。   The locally decoded image generated by the adder 135 is input to the frame memory 136 and the motion compensation unit 137. A deblocking filter may be applied to the locally decoded image. The frame memory 136 stores the locally decoded image input by the adder 135. The locally decoded image stored in the frame memory 136 is referred to by the motion compensation unit 137.

動き補償部137は、動きベクトルメモリ139に格納されている動きベクトルを用いて、フレームメモリ136に格納されている局所復号画像の動き補償を実行し、動き補償後のMBデータ(参照ピクチャのMBデータ)を生成する。動きベクトル検出部138は、入力された非Base−ViewピクチャのMBデータ(対象ピクチャのMBデータ)と参照ピクチャのMBデータとを用いて動き探索を実行し、動きベクトルを生成する。   The motion compensation unit 137 performs motion compensation of the locally decoded image stored in the frame memory 136 using the motion vector stored in the motion vector memory 139, and performs MB data after motion compensation (MB of the reference picture). Data). The motion vector detection unit 138 performs motion search using the input MB data of the non-Base-View picture (MB data of the target picture) and the MB data of the reference picture, and generates a motion vector.

なお、動きベクトル検出部138は、他視点(この例ではBase−View)の参照ピクチャを利用できる場合、第1視点符号化部101のフレームメモリ116から参照ピクチャを取得する。そして、動きベクトル検出部138は、取得した参照ピクチャのMBデータを用いて動き探索を実行し、動きベクトルを生成する。   Note that the motion vector detection unit 138 acquires a reference picture from the frame memory 116 of the first viewpoint encoding unit 101 when a reference picture of another viewpoint (Base-View in this example) can be used. Then, the motion vector detection unit 138 performs a motion search using the acquired MB data of the reference picture to generate a motion vector.

動きベクトル検出部138により検出された動きベクトルは、動きベクトルメモリ139及びモード判定部143に入力される。動きベクトルメモリ139には、動きベクトル検出部138により検出された動きベクトルが格納される。   The motion vector detected by the motion vector detection unit 138 is input to the motion vector memory 139 and the mode determination unit 143. The motion vector memory 139 stores a motion vector detected by the motion vector detection unit 138.

基準ベクトル取得部140は、符号化対象のマクロブロック(CurrMB)が双方向予測を用いるマクロブロックであるか否かを判定する。CurrMBが双方向予測を用いるマクロブロックである場合、基準ベクトル取得部140は、CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVであるか否かを判定する。   The reference vector acquisition unit 140 determines whether or not the encoding target macroblock (CurrMB) is a macroblock using bidirectional prediction. When CurrMB is a macroblock using bi-directional prediction, reference vector acquisition section 140 determines whether or not the motion vector used for CurrMB prediction is inter-viewpoint motion vector iMV.

CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVである場合、基準ベクトル取得部140は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定する。そして、基準ベクトル取得部140は、第1視点符号化部101の動きベクトルメモリ119からColMBの動きベクトルを取得する(図5を参照)。なお、ColPicは、CurrPicと同じ時刻(同POC)のBase−Viewピクチャである。この場合、基準ベクトル取得部140により取得された動きベクトルは、基準ベクトル補正部141に入力される。   When the motion vector used for CurrMB prediction is the inter-viewpoint motion vector iMV, the reference vector acquisition unit 140 identifies a ColPic macroblock (ColMB) located at the same position as the CurrMB. Then, the reference vector acquisition unit 140 acquires a ColMB motion vector from the motion vector memory 119 of the first viewpoint encoding unit 101 (see FIG. 5). Note that ColPic is a Base-View picture at the same time (same POC) as CurrPic. In this case, the motion vector acquired by the reference vector acquisition unit 140 is input to the reference vector correction unit 141.

一方、CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVでない場合、基準ベクトル取得部140は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定する。この場合、ColPicは、非Base−Viewピクチャである。また、基準ベクトル取得部140は、ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVであるか否かを判定する。   On the other hand, when the motion vector used for CurrMB prediction is not the inter-viewpoint motion vector iMV, the reference vector acquisition unit 140 identifies a ColPic macroblock (ColMB) located at the same position as CurrMB. In this case, ColPic is a non-Base-View picture. In addition, the reference vector acquisition unit 140 determines whether or not the motion vector used for the prediction of ColMB is the inter-viewpoint motion vector iMV.

ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVである場合、基準ベクトル取得部140は、ColMBの予測に用いる視点間動きベクトルiMVが指すBase−Viewピクチャのマクロブロック(RefMB)を特定する。そして、基準ベクトル取得部140は、第1視点符号化部101の動きベクトルメモリ119からRefMBの動きベクトルを取得する(図4を参照)。この場合、基準ベクトル取得部140により取得された動きベクトルは、基準ベクトル補正部141に入力される。   When the motion vector used for the prediction of ColMB is the inter-view motion vector iMV, the reference vector acquisition unit 140 specifies the macro block (RefMB) of the Base-View picture indicated by the inter-view motion vector iMV used for the prediction of ColMB. Then, the reference vector acquisition unit 140 acquires the RefMB motion vector from the motion vector memory 119 of the first viewpoint encoding unit 101 (see FIG. 4). In this case, the motion vector acquired by the reference vector acquisition unit 140 is input to the reference vector correction unit 141.

一方、ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVでない場合、基準ベクトル取得部140は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定し、ColMBの動きベクトルを動きベクトルメモリ139から取得する(図2を参照)。この場合、基準ベクトル取得部140により取得された動きベクトルは、基準ベクトルbasemvColとしてダイレクトベクトル計算部141に入力される。   On the other hand, when the motion vector used for the prediction of ColMB is not the inter-viewpoint motion vector iMV, the reference vector acquisition unit 140 identifies a ColPic macroblock (ColMB) at the same position as CurrMB, and stores the motion vector of ColMB in the motion vector memory. 139 (see FIG. 2). In this case, the motion vector acquired by the reference vector acquisition unit 140 is input to the direct vector calculation unit 141 as the reference vector basemvCol.

基準ベクトル補正部141は、統計情報取得部102から入力された統計情報に基づき、基準ベクトル取得部140から入力された動きベクトルを補正して基準ベクトルbasemvColを生成する。基準ベクトルbasemvColを生成する際に行う補正方法については後述する。基準ベクトル補正部141により生成された基準ベクトルbasemvColは、ダイレクトベクトル計算部142に入力される。   The reference vector correction unit 141 corrects the motion vector input from the reference vector acquisition unit 140 based on the statistical information input from the statistical information acquisition unit 102 to generate a reference vector basemvCol. A correction method performed when generating the reference vector basemvCol will be described later. The reference vector basemCol generated by the reference vector correction unit 141 is input to the direct vector calculation unit 142.

ダイレクトベクトル計算部142は、基準ベクトルbasemvColを時間配分でスケーリングし、CurrMBの動きベクトル(ダイレクトベクトル)を生成する。ダイレクトベクトル計算部142により生成されたダイレクトベクトルは、モード判定部143に入力される。   The direct vector calculation unit 142 scales the reference vector basemCol with time distribution, and generates a CurrMB motion vector (direct vector). The direct vector generated by the direct vector calculation unit 142 is input to the mode determination unit 143.

モード判定部143は、5つの予測モード(イントラ予測モード、前方向予測モード、後方向予測モード、双方向予測モード、ダイレクトモード)のうち、符号化コストが最も小さい予測モードを選択する。また、モード判定部143は、選択した予測モードによる符号化に用いる動きベクトルを動きベクトルメモリ139に格納する。さらに、モード判定部143は、選択した予測モードを動き補償部137に通知する。   The mode determination unit 143 selects a prediction mode with the lowest coding cost among the five prediction modes (intra prediction mode, forward prediction mode, backward prediction mode, bidirectional prediction mode, and direct mode). Further, the mode determination unit 143 stores a motion vector used for encoding in the selected prediction mode in the motion vector memory 139. Furthermore, the mode determination unit 143 notifies the motion compensation unit 137 of the selected prediction mode.

上記のように、非Base−Viewピクチャの符号化は、Base−Viewピクチャの符号化に用いた情報を適宜利用して実行される。
(2−5−4.基準ベクトルの計算に関する補足説明)
ここで、図11〜図14を参照しながら、CurrMBの動きベクトルが視点間動きベクトルiMVである場合の基準ベクトルbasemvColの計算について説明を補足する。また、ダイレクトベクトルの計算についても説明を補足する。
As described above, the encoding of the non-Base-View picture is performed by appropriately using the information used for encoding the Base-View picture.
(2-5-4. Supplementary explanation on calculation of reference vector)
Here, with reference to FIGS. 11 to 14, a supplementary explanation will be given for the calculation of the reference vector basemvCol when the motion vector of CurrMB is the inter-viewpoint motion vector iMV. Further, the explanation will be supplemented for the calculation of the direct vector.

図11は、第2実施形態に係る基準ベクトルの計算方法について説明するための第1の図である。また、図12は、第2実施形態に係る基準ベクトルの計算方法について説明するための第2の図である。また、図13は、第2実施形態に係る基準ベクトルの補正方法について説明するための第1の図である。また、図14は、第2実施形態に係る基準ベクトルの補正方法について説明するための第2の図である。   FIG. 11 is a first diagram for explaining a reference vector calculation method according to the second embodiment. FIG. 12 is a second diagram for explaining the reference vector calculation method according to the second embodiment. FIG. 13 is a first diagram for explaining a reference vector correction method according to the second embodiment. FIG. 14 is a second diagram for explaining the reference vector correction method according to the second embodiment.

(基準ベクトル及びダイレクトベクトルの計算)
図11を参照する。図11の例では、視点#2(非Base−View)のピクチャB24が符号化対象のマクロブロック(CurrMB)を含むCurrPicである。また、CurrMBの予測に用いる動きベクトルは視点間動きベクトルiMVである。この場合、視点#1(Base−View)のピクチャB14がColPicとなる。
(Calculation of reference vector and direct vector)
Please refer to FIG. In the example of FIG. 11, the picture B24 of viewpoint # 2 (non-Base-View) is CurrPic including a macroblock (CurrMB) to be encoded. The motion vector used for CurrMB prediction is the inter-viewpoint motion vector iMV. In this case, the picture B14 at the viewpoint # 1 (Base-View) is ColPic.

CurrPicとColPicとは、類似度の高いピクチャである。しかし、撮影位置や角度などが異なるため、CurrPicとColPicとが完全に同じピクチャとはならない。そのため、視点間動きベクトルiMVが有限の長さを有する。そして、視点間動きベクトルiMVにより参照されるブロックiMBがColMBとなる。   CurrPic and ColPic are pictures with high similarity. However, since the shooting position and angle are different, CurrPic and ColPic are not completely the same picture. Therefore, the inter-viewpoint motion vector iMV has a finite length. The block iMB referred to by the inter-viewpoint motion vector iMV is ColMB.

CurrPicがBピクチャである場合、CurrPicと同じ時刻(同POC)のColPicはBピクチャである。そのため、図11に示すように、ColMBの予測にはL0方向及びL1方向の動きベクトルが用いられる。   When CurrPic is a B picture, ColPic at the same time (same POC) as CurrPic is a B picture. Therefore, as shown in FIG. 11, motion vectors in the L0 direction and the L1 direction are used for prediction of ColMB.

基準ベクトル補正部141は、基準ベクトル取得部140が取得したL0方向の動きベクトルを基準ベクトルbasemvCol0とし、L1方向の動きベクトルを基準ベクトルbasemvCol1とする。このとき、基準ベクトル補正部141は、視点間動きベクトルiMVを用いて基準ベクトルbasemvCol0、basemvCol1を補正する。この補正方法については後述する。 The reference vector correction unit 141 sets the motion vector in the L0 direction acquired by the reference vector acquisition unit 140 as the reference vector basemvCol 0 and sets the motion vector in the L1 direction as the reference vector basemvCol 1 . At this time, the reference vector correction unit 141 corrects the reference vectors basemvCol 0 and basemvCol 1 using the inter-viewpoint motion vector iMV. This correction method will be described later.

基準ベクトルbasemvCol0、basemvCol1が得られると、ダイレクトベクトル計算部142は、基準ベクトルbasemvCol0、basemvCol1をスケーリングしてダイレクトベクトルmvL0、mvL1を計算する。 When the reference vector basemvCol 0, basemvCol 1 is obtained, the direct vector calculation unit 142 calculates a direct vector mvL 0, mvL 1 by scaling the reference vector basemvCol 0, basemvCol 1.

図11の例では、ピクチャI12、B14の間隔tbL0(POC差分)と、ピクチャI22、B24の間隔tdL0(POC差分)との比率を用いて基準ベクトルbasemvCol0がスケーリングされる。また、ピクチャB14、P15の間隔tbL1(POC差分)と、ピクチャB24、P25の間隔tdL1(POC差分)との比率を用いて基準ベクトルbasemvCol1がスケーリングされる。 In the example of FIG. 11, the reference vector basemvCol 0 is scaled using the ratio of the interval tbL 0 (POC difference) between the pictures I 12 and B 14 and the interval tdL 0 (POC difference) between the pictures I 22 and B 24. . In addition, the reference vector basemvCol 1 is scaled using the ratio of the interval tbL 1 (POC difference) between the pictures B 14 and P 15 and the interval tdL 1 (POC difference) between the pictures B 24 and P 25 .

つまり、非Base−Viewにおけるref_idx_l0が最小のピクチャとCurrPicとの間隔tdL0、Base−Viewにおけるref_idx_l0が最小のピクチャとColPicとの間隔tbL0がスケーリングに利用される。さらに、非Base−Viewにおけるref_idx_l1が最小のピクチャとCurrPicとの間隔tdL1、Base−Viewにおけるref_idx_l1が最小のピクチャとColPicとの間隔tbL1がスケーリングに利用される。この場合、ダイレクトベクトルmvL0、mvL1は、下記の式(10)及び式(11)により得られる。 That is, the spacing TBL 0 of ref_idx_l0 and minimum picture and ColPic in intervals tdL 0, Base-View of ref_idx_l0 in non Base-View is the smallest picture and CurrPic are used for scaling. Further, the interval TBL 1 of ref_idx_l1 is ref_idx_l1 is the interval tdL 1, Base-View of the minimum picture and CurrPic the smallest picture and ColPic in non Base-View is used for scaling. In this case, the direct vectors mvL 0 and mvL 1 are obtained by the following equations (10) and (11).

mvL0 = basemvCol0・(tbL0 / tdL0
…(10)
mvL1 = basemvCol1・(tbL1 / tdL1
…(11)
上記のように、tbL0、tdL0、tbL1、tdL1を用いてスケーリングすることにより、CurrMBの予測時に他視点のピクチャが参照される場合でも基準ベクトルからダイレクトベクトルを得ることができる。つまり、CurrMBが視点間参照を利用する場合でも時間ダイレクトモードを適用することが可能になる。なお、1つの基準ベクトルを選択的に利用する方法や、1つ又は複数のダイレクトベクトルを選択して利用する方法など、様々な変形例が考えられる。
mvL 0 = basemvCol 0 · (tbL 0 / tdL 0 )
(10)
mvL 1 = basemvCol 1 (tbL 1 / tdL 1 )
... (11)
As described above, by scaling with tbL 0, tdL 0, tbL 1 , tdL 1, it is possible to obtain a direct vector from the reference vector even if other viewpoint picture when predicting the CurrMB is referred to. That is, the temporal direct mode can be applied even when CurrMB uses inter-viewpoint reference. Various modification examples such as a method of selectively using one reference vector and a method of selecting and using one or a plurality of direct vectors are conceivable.

図12の例は、基準ベクトルbasemvCol0、basemvCol1からダイレクトベクトルmvL0、mvL1を計算し、1つのダイレクトベクトルを選択して利用する方法を示している。ダイレクトベクトルmvL0は、ピクチャ間隔tbL0、tdを利用して基準ベクトルbasemvCol0をスケーリングしたものである。一方、ダイレクトベクトルmvL1は、基準ベクトルbasemvCol1をL0方向に反転させたものである(mvL1=−basemvCol1)。ダイレクトベクトルの選択は、例えば、符号化コストに基づいて行われる。 Example of FIG. 12, the direct vector mvL 0, mvL 1 from the reference vector basemvCol 0, basemvCol 1 calculates, shows how to select and use one of the direct vector. The direct vector mvL 0 is obtained by scaling the reference vector basemvCol 0 using the picture intervals tbL 0 and td. On the other hand, the direct vector mvL 1 is obtained by inverting the reference vector basemvCol 1 in the L0 direction (mvL 1 = −basemvCol 1 ). The selection of the direct vector is performed based on the encoding cost, for example.

なお、図12の例では、ピクチャB23を指すダイレクトベクトルを計算しているが、ダイレクトベクトルが指すピクチャの情報は、例えば、SEI(Supplemental Enhancement Information)で指定することができる。SEIはヘッダ情報の一例である。図12の例では、ref_idx_l0=2のピクチャを指すダイレクトベクトルが指定されている。 In the example of FIG. 12, the direct vector indicating the picture B 23 is calculated. However, the information of the picture indicated by the direct vector can be specified by SEI (Supplemental Enhancement Information), for example. SEI is an example of header information. In the example of FIG. 12, a direct vector indicating a picture of ref_idx_I0 = 2 is specified.

上記のような方法を適用することで、基準ベクトルからダイレクトベクトルを得ることができる。以下、基準ベクトルの補正方法について述べる。
(基準ベクトルの補正#1:最大面積)
第1の補正方法について述べる。
By applying the above method, a direct vector can be obtained from a reference vector. The reference vector correction method will be described below.
(Reference vector correction # 1: Maximum area)
A first correction method will be described.

図13を参照する。既に述べたように、視点の異なるピクチャは、撮影位置や角度の違いから、完全に同じピクチャとはならない。そのため、視点間動きベクトルiMVは有限の長さを有する。つまり、視点間動きベクトルiMVが指すブロックiMBは、ColPicに含まれるマクロブロックのいずれかと完全に一致しない可能性が高い。例えば、ColPicのマクロブロックMB#1、…、#4と、視点間動きベクトルiMVが指すブロックiMBとが図13に例示した位置関係にある場合について考える。なお、マクロブロックMB#1、…、#4は周辺ブロックの一例である。   Please refer to FIG. As already described, pictures with different viewpoints are not completely the same because of differences in shooting position and angle. Therefore, the inter-viewpoint motion vector iMV has a finite length. That is, there is a high possibility that the block iMB pointed to by the inter-viewpoint motion vector iMV does not completely match any of the macroblocks included in the ColPic. For example, consider the case where the ColPic macroblocks MB # 1,..., # 4 and the block iMB pointed to by the inter-viewpoint motion vector iMV are in the positional relationship illustrated in FIG. Macro blocks MB # 1,..., # 4 are examples of peripheral blocks.

マクロブロックMB#1、…、#4、ブロックiMBのサイズはそれぞれN×Mであるとする。図13の例では、マクロブロックMB#1、#2とブロックiMBとが重なる面積は0である。また、マクロブロックMB#3とブロックiMBとが重なる面積は、numy×(N−numx)である。そして、マクロブロックMB#4とブロックiMBとが重なる面積は、numy×numxである。図13の例では、(N−numx)よりもnumxの方が大きい。従って、マクロブロックMB#4とブロックiMBとの重なり面積が最大となる。 Assume that the sizes of the macroblocks MB # 1,..., # 4, and the block iMB are N × M. In the example of FIG. 13, the area where the macro blocks MB # 1, # 2 and the block iMB overlap is zero. Furthermore, the overlapping area and the macro-block MB # 3 and the block iMB is num y × (N-num x ). Then, the overlapping area and the macro-block MB # 4 and the block iMB is num y × num x. In the example of FIG. 13, num x is larger than (N-num x ). Therefore, the overlapping area between the macro block MB # 4 and the block iMB is maximized.

第1の補正方法は、重なり面積が最大となるマクロブロックMB#4を求め、重なり面積が最大となるマクロブロックMB#4の予測に用いる動きベクトルを基準ベクトルbasemvColに設定する方法である。つまり、第1の補正方法を採用する場合、基準ベクトル補正部141は、ブロックiMBと周辺ブロックとの重なり面積を計算し、重なり面積が最大となるマクロブロックの予測に用いる動きベクトルを基準ベクトルbasemvColに設定する。第1の補正方法によれば、演算負荷の増大を抑制しつつ、視点間動きベクトルiMVを考慮して基準ベクトルbasemvColの設定が可能になる。   The first correction method is a method of obtaining the macro block MB # 4 having the maximum overlap area and setting a motion vector used for prediction of the macro block MB # 4 having the maximum overlap area as the reference vector basemvCol. That is, when the first correction method is employed, the reference vector correction unit 141 calculates the overlap area between the block iMB and the peripheral blocks, and uses the motion vector used for prediction of the macroblock with the maximum overlap area as the reference vector basemvCol. Set to. According to the first correction method, the reference vector basemvCol can be set in consideration of the inter-viewpoint motion vector iMV while suppressing an increase in calculation load.

(基準ベクトルの補正#2:加重平均)
第2の補正方法について述べる。ここでは、ColPicのマクロブロックMB#1、…、#4と、視点間動きベクトルiMVが指すブロックiMBとが図14に例示した位置関係にある場合について考える。また、マクロブロックMB#1、…、#4、ブロックiMBのサイズはそれぞれN×Mであるとする。第2の補正方法は、ブロックiMBの周辺に位置するマクロブロックMB#1、…、#4の動きベクトルを加重平均し、加重平均で得られたベクトルを基準ベクトルbasemvColに設定するものである。以下、加重平均の計算方法について2通りの例(例1、例2)を示す。
(Reference vector correction # 2: weighted average)
A second correction method will be described. Here, consider the case where the ColPic macroblocks MB # 1,..., # 4 and the block iMB pointed to by the inter-viewpoint motion vector iMV are in the positional relationship illustrated in FIG. Also, it is assumed that the sizes of the macro blocks MB # 1,... In the second correction method, the motion vectors of the macroblocks MB # 1,..., # 4 located around the block iMB are weighted and averaged, and the vector obtained by the weighted average is set as the reference vector basemvCol. Hereinafter, two examples (Example 1 and Example 2) of the calculation method of the weighted average are shown.

(例1:重なる面積に基づく加重平均の計算について)
図14の例では、マクロブロックMB#1とブロックiMBとが重なる面積S1は、dxA×dyAである。また、マクロブロックMB#2とブロックiMBとが重なる面積S2は、dxB×dyAである。また、マクロブロックMB#3とブロックiMBとが重なる面積S3は、dxA×dyBである。また、マクロブロックMB#4とブロックiMBとが重なる面積S4は、dxB×dyBである。なお、dxA、dxB、dyA、dyBは画素数の単位で表現される。
(Example 1: Calculation of weighted average based on overlapping area)
In the example of FIG. 14, the area S 1 where the macro block MB # 1 and the block iMB overlap is dx A × dy A. The area S 2 where the macro block MB # 2 and the block iMB overlap is dx B × dy A. The area S 3 where the macro block MB # 3 and the block iMB overlap is dx A × dy B. The area S 4 where the macro block MB # 4 and the block iMB overlap is dx B × dy B. Note that dx A , dx B , dy A , and dy B are expressed in units of the number of pixels.

例1では、加重平均の計算に用いる評価値Costxyが上記の重なる面積S1、…、S4に基づいて計算される。評価値Costxyは、下記の式(12)で与えられる。但し、Kは、予め設定された重み係数である。さらに、評価値Costxyを重みとする加重平均の計算により基準ベクトルbasemvColが計算される。例えば、基準ベクトルbasemvColは、下記の式(13)に従って計算される。但し、basemvColx、basemvColyは、それぞれ基準ベクトルbasemvColのx成分、y成分である。また、MVxi、MVyiは、それぞれマクロブロックMB#iの予測に用いる動きベクトルのx成分、y成分である。 In Example 1, the evaluation value Costxy used for calculating the weighted average is calculated based on the overlapping areas S 1 ,..., S 4 . The evaluation value Costxy is given by the following equation (12). Here, K is a weighting factor set in advance. Further, the reference vector basemvCol is calculated by calculating a weighted average using the evaluation value Costxy as a weight. For example, the reference vector basemvCol is calculated according to the following equation (13). Here, basemvCol x and basemvCol y are the x component and the y component of the reference vector basemvCol, respectively. Further, MVx i and MVy i are the x component and y component of the motion vector used for prediction of the macroblock MB # i, respectively.

Costxyi = K×Si (i=1,…,4)
…(12)
Costxy i = K × S i (i = 1,..., 4)
(12)

Figure 2015122606
Figure 2015122606

(例2:重なる面積及び量子化値に基づく加重平均の計算について)
例2では、加重平均の計算に用いる評価値Costxyが上記の重なる面積S1、…、S4、符号化に用いた量子化値(量子化スケール値:qP値)、及び有効係数の数に基づいて計算される。qP値及び有効係数の数は統計情報取得部102により取得される。なお、符号化に用いた有効係数の個数や成分の絶対値が小さければ、予測結果の信頼度が高いと判断できる。また、有効係数が同程度であれば、使用したqP値が小さいほど予測結果の信頼度が高いと判断できる。そのため、例2では、これらの値を利用する。
(Example 2: Calculation of weighted average based on overlapping area and quantized value)
In Example 2, the evaluation value Costxy used for the calculation of the weighted average is the above-described overlapping area S 1 ,..., S 4 , the quantization value (quantization scale value: qP value) used for encoding, and the number of effective coefficients. Calculated based on. The qP value and the number of effective coefficients are acquired by the statistical information acquisition unit 102. If the number of effective coefficients used for encoding and the absolute values of the components are small, it can be determined that the reliability of the prediction result is high. Moreover, if the effective coefficient is comparable, it can be judged that the reliability of a prediction result is so high that the used qP value is small. Therefore, in Example 2, these values are used.

評価値Costxyは、下記の式(14)で与えられる。但し、Kは、予め設定された重み係数である。qPiは、マクロブロックMB#iの符号化に用いたqP値である。numCoefiは、マクロブロックMB#iの符号化に用いた有効係数の数である。下記の式(14)から明らかなように、重なる面積が大きいほど評価値Costxyは大きくなる。また、qP値が大きいほど評価値Costxyは大きくなる。さらに、有効係数の数が小さいほど、評価値Costxyは大きくなる。 The evaluation value Costxy is given by the following equation (14). Here, K is a weighting factor set in advance. qP i is a qP value used for encoding the macroblock MB # i. numCoef i is the number of effective coefficients used for encoding the macroblock MB # i. As is clear from the following formula (14), the evaluation value Costxy increases as the overlapping area increases. The evaluation value Costxy increases as the qP value increases. Furthermore, the evaluation value Costxy increases as the number of effective coefficients decreases.

このようにして与えられた評価値Costxyを重みとする加重平均の計算により基準ベクトルbasemvColが計算される。例えば、基準ベクトルbasemvColは、上記の式(13)に従って計算される。但し、basemvColx、basemvColyは、それぞれ基準ベクトルbasemvColのx成分、y成分である。また、MVxi、MVyiは、それぞれマクロブロックMB#iの予測に用いる動きベクトルのx成分、y成分である。 The reference vector basemvCol is calculated by calculating a weighted average using the evaluation value Costxy given in this way as a weight. For example, the reference vector basemvCol is calculated according to the above equation (13). Here, basemvCol x and basemvCol y are the x component and the y component of the reference vector basemvCol, respectively. Further, MVx i and MVy i are the x component and y component of the motion vector used for prediction of the macroblock MB # i, respectively.

Figure 2015122606
Figure 2015122606

上記の方法により基準ベクトルbasemvColは補正され、CurrMBの予測に利用可能なダイレクトベクトルが得られる。
以上、符号化装置100が有する機能について説明した。
The reference vector basemCol is corrected by the above method, and a direct vector that can be used for the prediction of CurrMB is obtained.
In the above, the function which the encoding apparatus 100 has was demonstrated.

[2−6.復号装置の機能]
次に、図15〜図17を参照しながら、復号装置200が有する機能について説明する。
[2-6. Function of Decoding Device]
Next, functions of the decoding device 200 will be described with reference to FIGS.

図15は、第2実施形態に係る復号装置が有する機能の一例を示した第1のブロック図である。また、図16は、第2実施形態に係る復号装置が有する機能の一例を示した第2のブロック図である。また、図17は、第2実施形態に係る復号装置が有する機能の一例を示した第3のブロック図である。   FIG. 15 is a first block diagram illustrating an example of functions of the decoding device according to the second embodiment. FIG. 16 is a second block diagram illustrating an example of the functions of the decoding device according to the second embodiment. FIG. 17 is a third block diagram illustrating an example of functions of the decoding device according to the second embodiment.

(2−6−1.全体)
図15に示すように、復号装置200は、第1視点復号部201、統計情報取得部202、及び第2視点復号部203を有する。なお、復号装置200は、第1視点復号部201、統計情報取得部202、及び第2視点復号部203の機能は、上述したCPU902などを用いて実現できる。
(2-6-1. Overall)
As illustrated in FIG. 15, the decoding device 200 includes a first viewpoint decoding unit 201, a statistical information acquisition unit 202, and a second viewpoint decoding unit 203. Note that in the decoding device 200, the functions of the first viewpoint decoding unit 201, the statistical information acquisition unit 202, and the second viewpoint decoding unit 203 can be realized using the above-described CPU 902 or the like.

第1視点復号部201には、Base−Viewピクチャを符号化した符号化データ(以下、Base−View符号化データ)が入力される。第1視点復号部201は、入力されたBase−View符号化データを復号する。第1視点復号部201の機能については後段において詳述する。   The first viewpoint decoding unit 201 receives encoded data obtained by encoding a Base-View picture (hereinafter referred to as Base-View encoded data). The first viewpoint decoding unit 201 decodes the input Base-View encoded data. The function of the first viewpoint decoding unit 201 will be described in detail later.

統計情報取得部202は、第1視点復号部201によるBase−View符号化データの復号時に得られる統計情報を取得する。統計情報としては、例えば、qP値や差分有効係数の個数などがある。統計情報取得部202により取得された統計情報は、第2視点復号部203に入力される。   The statistical information acquisition unit 202 acquires statistical information obtained when the first viewpoint decoding unit 201 decodes Base-View encoded data. The statistical information includes, for example, the qP value and the number of differential effective coefficients. The statistical information acquired by the statistical information acquisition unit 202 is input to the second viewpoint decoding unit 203.

第2視点復号部203には、非Base−Viewピクチャを符号化した符号化データ(以下、非Base−View符号化データ)が入力される。第2視点復号部203は、第1視点復号部201が復号に用いた動きベクトルやピクチャに関する情報、及び統計情報を用いて非Base−View符号化データを復号する。第2視点復号部203の機能については後段において詳述する。   The second viewpoint decoding unit 203 receives encoded data obtained by encoding a non-Base-View picture (hereinafter, non-Base-View encoded data). The second viewpoint decoding unit 203 decodes the non-Base-View encoded data using the motion vector and the information related to the picture used by the first viewpoint decoding unit 201 and the statistical information. The function of the second viewpoint decoding unit 203 will be described in detail later.

(2−6−2.第1視点復号部201の細部)
ここで、図16を参照しながら、第1視点復号部201の機能について、さらに説明する。
(2-6-2. Details of First View Decoding Unit 201)
Here, the function of the first viewpoint decoding unit 201 will be further described with reference to FIG.

図16に示すように、第1視点復号部201は、可変長復号部211、逆直交変換・逆量子化部212、予測モード取得部213、スイッチ214、及びイントラ予測部215を有する。また、第1視点復号部201は、動きベクトル取得部216、フレームメモリ217、動き補償部218、スイッチ219、及び加算器220を有する。さらに、第1視点復号部201は、動きベクトルメモリ221、基準ベクトル取得部222、及びダイレクトベクトル計算部223を有する。   As illustrated in FIG. 16, the first viewpoint decoding unit 201 includes a variable length decoding unit 211, an inverse orthogonal transform / inverse quantization unit 212, a prediction mode acquisition unit 213, a switch 214, and an intra prediction unit 215. The first viewpoint decoding unit 201 includes a motion vector acquisition unit 216, a frame memory 217, a motion compensation unit 218, a switch 219, and an adder 220. Furthermore, the first viewpoint decoding unit 201 includes a motion vector memory 221, a reference vector acquisition unit 222, and a direct vector calculation unit 223.

可変長復号部211には、Base−View符号化データ(Base−View側のビットストリーム)が入力される。Base−View符号化データが入力された可変長復号部211は、符号化装置100が用いた可変長符号化に対応する方式でBase−View符号化データに対する可変長復号を実行し、量子化データなどの情報を復元する。このとき、可変長復号部211は、SPS(Sequence Parameter Set)やPPS(Picture Parameter Set)などのヘッダ情報、マクロブロック毎の予測モードや動きベクトル、及び、差分係数などの情報も復元する。   The variable-length decoding unit 211 receives Base-View encoded data (Base-View side bit stream). The variable-length decoding unit 211 to which the Base-View encoded data is input performs variable-length decoding on the Base-View encoded data in a scheme corresponding to the variable-length encoding used by the encoding device 100, and the quantized data Restore information such as. At this time, the variable length decoding unit 211 also restores header information such as SPS (Sequence Parameter Set) and PPS (Picture Parameter Set), information such as prediction mode and motion vector for each macroblock, and difference coefficient.

可変長復号部211により復元された予測モードなどの情報は、予測モード取得部213に入力される。また、可変長復号部211により復元されたヘッダ情報や差分係数などの情報は、統計情報取得部202に入力される。また、可変長復号部211により復元された量子化データは、逆直交変換・逆量子化部212に入力される。   Information such as the prediction mode restored by the variable length decoding unit 211 is input to the prediction mode acquisition unit 213. Information such as header information and difference coefficients restored by the variable length decoding unit 211 is input to the statistical information acquisition unit 202. The quantized data restored by the variable length decoding unit 211 is input to the inverse orthogonal transform / inverse quantization unit 212.

逆直交変換・逆量子化部212は、可変長復号部211から入力された量子化データを逆量子化して周波数成分のデータを復元する。また、逆直交変換・逆量子化部212は、周波数成分のデータに逆直交変換を施して予測誤差データを復元する。復元された予測誤差データは、加算器220に入力される。加算器220は、スイッチ219を介して入力されたMBデータと、逆直交変換・逆量子化部212により復元された予測誤差データとを加算して復号画像を生成する。   The inverse orthogonal transform / inverse quantization unit 212 dequantizes the quantized data input from the variable length decoding unit 211 to restore the frequency component data. The inverse orthogonal transform / inverse quantization unit 212 performs inverse orthogonal transform on the frequency component data to restore the prediction error data. The restored prediction error data is input to the adder 220. The adder 220 adds the MB data input via the switch 219 and the prediction error data restored by the inverse orthogonal transform / inverse quantization unit 212 to generate a decoded image.

加算器220により生成された復号画像は、フレームメモリ217に入力されると共に、復号結果として出力される。なお、復号画像にデブロッキングフィルタが施されるようにしてもよい。フレームメモリ217には、加算器220により入力された復号画像が格納される。フレームメモリ217に格納された復号画像は、動き補償部218により参照される。   The decoded image generated by the adder 220 is input to the frame memory 217 and output as a decoding result. Note that a deblocking filter may be applied to the decoded image. The frame memory 217 stores the decoded image input by the adder 220. The decoded image stored in the frame memory 217 is referred to by the motion compensation unit 218.

予測モード取得部213は、マクロブロック毎に予測モード(イントラ予測モード、前方向予測モード、後方向予測モード、双方向予測モード、ダイレクトモード)を判定する。なお、ブロック分割サイズが予測モードに付加されていてもよい。なお、スイッチ214は、予測モードの判定結果に応じて切り替えられる。予測モードがイントラ予測モードである場合、イントラ予測部215が、イントラ予測を用いて対象のマクロブロックを復号する。予測モードが前方向予測モード、後方向予測モード、双方向予測モードのいずれかである場合、動きベクトル取得部216が、可変長復号部211により復元された動きベクトルの情報を取得する。   The prediction mode acquisition unit 213 determines a prediction mode (intra prediction mode, forward prediction mode, backward prediction mode, bidirectional prediction mode, direct mode) for each macroblock. Note that the block division size may be added to the prediction mode. The switch 214 is switched according to the determination result of the prediction mode. When the prediction mode is the intra prediction mode, the intra prediction unit 215 decodes the target macroblock using the intra prediction. When the prediction mode is any one of the forward prediction mode, the backward prediction mode, and the bidirectional prediction mode, the motion vector acquisition unit 216 acquires information on the motion vector restored by the variable length decoding unit 211.

予測モードがダイレクトモードである場合、基準ベクトル取得部222が、ColPicの復号時に用いた動きベクトルを動きベクトルメモリ221から取得する。また、基準ベクトル取得部222は、取得した動きベクトルを基準ベクトルbasemvColに設定する。基準ベクトル取得部222により設定された基準ベクトルbasemvColは、ダイレクトベクトル計算部223に入力される。ダイレクトベクトル計算部223は、基準ベクトルbasemvColをスケーリングしてダイレクトベクトルを計算する。   When the prediction mode is the direct mode, the reference vector acquisition unit 222 acquires the motion vector used at the time of decoding ColPic from the motion vector memory 221. In addition, the reference vector acquisition unit 222 sets the acquired motion vector as the reference vector basemvCol. The reference vector basemCol set by the reference vector acquisition unit 222 is input to the direct vector calculation unit 223. The direct vector calculation unit 223 calculates a direct vector by scaling the reference vector basemCol.

ダイレクトベクトル計算部223により計算されたダイレクトベクトルは、動きベクトルメモリ221に格納される。動きベクトルメモリ221に格納されたダイレクトベクトルは、動き補償部218により参照される。動き補償部218は、ダイレクトベクトル、又は、動きベクトル取得部216により取得された動きベクトルを用いて、フレームメモリ217に格納されている復号画像(参照ピクチャ)の動き補償を実行し、動き補償後のMBデータを生成する。動き補償後のMBデータは、スイッチ219を介して加算器220に入力される。   The direct vector calculated by the direct vector calculation unit 223 is stored in the motion vector memory 221. The direct vector stored in the motion vector memory 221 is referred to by the motion compensation unit 218. The motion compensation unit 218 performs motion compensation of the decoded image (reference picture) stored in the frame memory 217 using the direct vector or the motion vector acquired by the motion vector acquisition unit 216, and after motion compensation MB data is generated. The MB data after motion compensation is input to the adder 220 via the switch 219.

上記のように、Base−View符号化データの復号は、非Base−View符号化データの復号とは独立して実行される。
(2−6−3.第2視点復号部203の細部)
ここで、図17を参照しながら、第2視点復号部203の機能について、さらに説明する。
As described above, decoding of Base-View encoded data is performed independently of decoding of non-Base-View encoded data.
(2-6-3. Details of second viewpoint decoding unit 203)
Here, the function of the second viewpoint decoding unit 203 will be further described with reference to FIG.

図17に示すように、第2視点復号部203は、可変長復号部231、逆直交変換・逆量子化部232、予測モード取得部233、スイッチ234、及びイントラ予測部235を有する。また、第2視点復号部203は、動きベクトル取得部236、動き補償部237、フレームメモリ238、スイッチ239、及び加算器240を有する。さらに、第2視点復号部203は、動きベクトルメモリ241、基準ベクトル取得部242、基準ベクトル補正部243、及びダイレクトベクトル計算部244を有する。   As illustrated in FIG. 17, the second viewpoint decoding unit 203 includes a variable length decoding unit 231, an inverse orthogonal transform / inverse quantization unit 232, a prediction mode acquisition unit 233, a switch 234, and an intra prediction unit 235. The second viewpoint decoding unit 203 includes a motion vector acquisition unit 236, a motion compensation unit 237, a frame memory 238, a switch 239, and an adder 240. Further, the second viewpoint decoding unit 203 includes a motion vector memory 241, a reference vector acquisition unit 242, a reference vector correction unit 243, and a direct vector calculation unit 244.

可変長復号部231には、非Base−View符号化データ(非Base−View側のビットストリーム)が入力される。非Base−View符号化データが入力された可変長復号部231は、符号化装置100が用いた可変長符号化に対応する方式で非Base−View符号化データに対する可変長復号を実行し、量子化データなどの情報を復元する。このとき、可変長復号部231は、SPSやPPSなどのヘッダ情報、マクロブロック毎の予測モードや動きベクトル、及び、差分係数などの情報も復元する。   Non-Base-View encoded data (non-Base-View side bit stream) is input to the variable length decoding unit 231. The variable length decoding unit 231 to which the non-Base-View encoded data is input performs variable length decoding on the non-Base-View encoded data in a scheme corresponding to the variable length encoding used by the encoding apparatus 100, Information such as data. At this time, the variable length decoding unit 231 also restores information such as header information such as SPS and PPS, prediction modes and motion vectors for each macroblock, and difference coefficients.

可変長復号部231により復元された予測モードなどの情報は、予測モード取得部233に入力される。また、可変長復号部231により復元された量子化データは、逆直交変換・逆量子化部232に入力される。   Information such as the prediction mode restored by the variable length decoding unit 231 is input to the prediction mode acquisition unit 233. The quantized data restored by the variable length decoding unit 231 is input to the inverse orthogonal transform / inverse quantization unit 232.

逆直交変換・逆量子化部232は、可変長復号部231から入力された量子化データを逆量子化して周波数成分のデータを復元する。また、逆直交変換・逆量子化部232は、周波数成分のデータに逆直交変換を施して予測誤差データを復元する。復元された予測誤差データは、加算器240に入力される。加算器240は、スイッチ239を介して入力されたMBデータと、逆直交変換・逆量子化部232により復元された予測誤差データとを加算して復号画像を生成する。   The inverse orthogonal transform / inverse quantization unit 232 dequantizes the quantized data input from the variable length decoding unit 231 to restore the frequency component data. Further, the inverse orthogonal transform / inverse quantization unit 232 performs inverse orthogonal transform on the frequency component data to restore the prediction error data. The restored prediction error data is input to the adder 240. The adder 240 adds the MB data input via the switch 239 and the prediction error data restored by the inverse orthogonal transform / inverse quantization unit 232 to generate a decoded image.

加算器240により生成された復号画像は、フレームメモリ238に入力されると共に、復号結果として出力される。なお、復号画像にデブロッキングフィルタが施されるようにしてもよい。フレームメモリ238には、加算器240により入力された復号画像が格納される。フレームメモリ238に格納された復号画像は、動き補償部237により参照される。   The decoded image generated by the adder 240 is input to the frame memory 238 and output as a decoding result. Note that a deblocking filter may be applied to the decoded image. The frame memory 238 stores the decoded image input by the adder 240. The decoded image stored in the frame memory 238 is referred to by the motion compensation unit 237.

予測モード取得部233は、マクロブロック毎に予測モード(イントラ予測モード、前方向予測モード、後方向予測モード、双方向予測モード、ダイレクトモード)を判定する。なお、ブロック分割サイズが予測モードに付加されていてもよい。なお、スイッチ234は、予測モードの判定結果に応じて切り替えられる。予測モードがイントラ予測モードである場合、イントラ予測部235が、イントラ予測を用いて対象のマクロブロックを復号する。予測モードが前方向予測モード、後方向予測モード、双方向予測モードのいずれかである場合、動きベクトル取得部236が、可変長復号部231により復元された動きベクトルの情報を取得する。   The prediction mode acquisition unit 233 determines a prediction mode (intra prediction mode, forward prediction mode, backward prediction mode, bidirectional prediction mode, direct mode) for each macroblock. Note that the block division size may be added to the prediction mode. The switch 234 is switched according to the determination result of the prediction mode. When the prediction mode is the intra prediction mode, the intra prediction unit 235 decodes the target macroblock using the intra prediction. When the prediction mode is any one of the forward prediction mode, the backward prediction mode, and the bidirectional prediction mode, the motion vector acquisition unit 236 acquires information on the motion vector restored by the variable length decoding unit 231.

予測モードがダイレクトモードである場合、基準ベクトル取得部242が、CurrMBの予測に用いる動きベクトルを動きベクトルメモリ241から取得する。また、基準ベクトル取得部242は、CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVであるか否かを判定する。   When the prediction mode is the direct mode, the reference vector acquisition unit 242 acquires a motion vector used for CurrMB prediction from the motion vector memory 241. The reference vector acquisition unit 242 determines whether the motion vector used for CurrMB prediction is the inter-viewpoint motion vector iMV.

CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVである場合、基準ベクトル取得部242は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定する。そして、基準ベクトル取得部242は、第1視点復号部201の動きベクトルメモリ221からColMBの動きベクトルを取得する(図5を参照)。なお、ColPicは、CurrPicと同じ時刻(同POC)のBase−Viewピクチャである。この場合、基準ベクトル取得部242により取得された動きベクトルは、基準ベクトル補正部243に入力される。   When the motion vector used for CurrMB prediction is the inter-viewpoint motion vector iMV, the reference vector acquisition unit 242 identifies a ColPic macroblock (ColMB) located at the same position as CurrMB. Then, the reference vector acquisition unit 242 acquires a ColMB motion vector from the motion vector memory 221 of the first viewpoint decoding unit 201 (see FIG. 5). Note that ColPic is a Base-View picture at the same time (same POC) as CurrPic. In this case, the motion vector acquired by the reference vector acquisition unit 242 is input to the reference vector correction unit 243.

一方、CurrMBの予測に用いる動きベクトルが視点間動きベクトルiMVでない場合、基準ベクトル取得部242は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定する。この場合、ColPicは、非Base−Viewピクチャである。また、基準ベクトル取得部242は、ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVであるか否かを判定する。   On the other hand, when the motion vector used for CurrMB prediction is not the inter-viewpoint motion vector iMV, the reference vector acquisition unit 242 identifies a ColPic macroblock (ColMB) that is in the same position as CurrMB. In this case, ColPic is a non-Base-View picture. Further, the reference vector acquisition unit 242 determines whether or not the motion vector used for the prediction of ColMB is the inter-viewpoint motion vector iMV.

ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVである場合、基準ベクトル取得部242は、ColMBの予測に用いる視点間動きベクトルiMVが指すBase−Viewピクチャのマクロブロック(RefMB)を特定する。そして、基準ベクトル取得部242は、第1視点復号部201の動きベクトルメモリ221からRefMBの動きベクトルを取得する(図4を参照)。この場合、基準ベクトル取得部242により取得された動きベクトルは、基準ベクトル補正部243に入力される。   When the motion vector used for the prediction of ColMB is the inter-view motion vector iMV, the reference vector acquisition unit 242 specifies the macro block (RefMB) of the Base-View picture pointed to by the inter-view motion vector iMV used for the prediction of ColMB. Then, the reference vector acquisition unit 242 acquires the RefMB motion vector from the motion vector memory 221 of the first viewpoint decoding unit 201 (see FIG. 4). In this case, the motion vector acquired by the reference vector acquisition unit 242 is input to the reference vector correction unit 243.

一方、ColMBの予測に用いる動きベクトルが視点間動きベクトルiMVでない場合、基準ベクトル取得部242は、CurrMBと同位置にあるColPicのマクロブロック(ColMB)を特定し、ColMBの動きベクトルを動きベクトルメモリ241から取得する(図2を参照)。この場合、基準ベクトル取得部242により取得された動きベクトルは、基準ベクトルbasemvColとしてダイレクトベクトル計算部244に入力される。   On the other hand, when the motion vector used for the prediction of ColMB is not the inter-viewpoint motion vector iMV, the reference vector acquisition unit 242 specifies a ColPic macroblock (ColMB) at the same position as CurrMB, and stores the motion vector of ColMB in the motion vector memory. 241 (see FIG. 2). In this case, the motion vector acquired by the reference vector acquisition unit 242 is input to the direct vector calculation unit 244 as the reference vector basemvCol.

基準ベクトル補正部243は、統計情報取得部202から入力された統計情報に基づき、基準ベクトル取得部242から入力された動きベクトルを補正して基準ベクトルbasemvColを生成する。基準ベクトルbasemvColを生成する際に行う補正方法は、符号化装置100が符号化の際に行った補正方法と同じ方法である。基準ベクトル補正部243により生成された基準ベクトルbasemvColは、ダイレクトベクトル計算部244に入力される。   The reference vector correction unit 243 corrects the motion vector input from the reference vector acquisition unit 242 based on the statistical information input from the statistical information acquisition unit 202 and generates a reference vector basemvCol. The correction method performed when generating the reference vector basemvCol is the same as the correction method performed by the encoding device 100 when encoding. The reference vector basemCol generated by the reference vector correction unit 243 is input to the direct vector calculation unit 244.

ダイレクトベクトル計算部244は、基準ベクトルbasemvColを時間配分でスケーリングし、CurrMBの動きベクトル(ダイレクトベクトル)を生成する。なお、スケーリングの方法は、符号化装置100が符号化の際に行ったスケーリング方法と同じ方法である。ダイレクトベクトル計算部244により生成されたダイレクトベクトルは、動きベクトルメモリ241に格納される。動きベクトルメモリ241に格納されたダイレクトベクトルは、動き補償部237により参照される。   The direct vector calculation unit 244 scales the reference vector basemvCol with time distribution to generate a CurrMB motion vector (direct vector). The scaling method is the same as the scaling method performed by the encoding device 100 during encoding. The direct vector generated by the direct vector calculation unit 244 is stored in the motion vector memory 241. The direct vector stored in the motion vector memory 241 is referred to by the motion compensation unit 237.

動き補償部237は、ダイレクトベクトル、又は、動きベクトル取得部236により取得された動きベクトルを用いて、フレームメモリ238に格納されている復号画像(参照ピクチャ)の動き補償を実行し、動き補償後のMBデータを生成する。動き補償後のMBデータは、スイッチ239を介して加算器240に入力される。   The motion compensation unit 237 performs motion compensation of the decoded image (reference picture) stored in the frame memory 238 using the direct vector or the motion vector acquired by the motion vector acquisition unit 236, and after motion compensation MB data is generated. The MB data after motion compensation is input to the adder 240 via the switch 239.

上記のように、非Base−View符号化データの復号は、Base−View符号化データの復号結果を利用して実行される。
以上、復号装置200が有する機能について説明した。
As described above, the decoding of the non-Base-View encoded data is performed using the decoding result of the Base-View encoded data.
In the above, the function which the decoding apparatus 200 has was demonstrated.

[2−7.処理フロー]
次に、図18〜図20を参照しながら、符号化装置100が実行する符号化処理の流れについて説明する。
[2-7. Processing flow]
Next, the flow of the encoding process executed by the encoding device 100 will be described with reference to FIGS.

図18は、第2実施形態に係る符号化処理の流れを示した第1のフロー図である。また、図19は、第2実施形態に係る符号化処理の流れを示した第2のフロー図である。また、図20は、第2実施形態に係る符号化処理の流れを示した第3のフロー図である。   FIG. 18 is a first flowchart showing the flow of the encoding process according to the second embodiment. FIG. 19 is a second flowchart showing the flow of the encoding process according to the second embodiment. FIG. 20 is a third flowchart showing the flow of the encoding process according to the second embodiment.

(2−7−1.全体)
図18を参照しながら、符号化処理の全体的な流れについて説明する。
なお、符号化対象のピクチャをCurrPic、符号化対象のマクロブロックをCurrMB、CurrMBの予測に用いる動きベクトルmvColが指すピクチャをColPicと表記する。また、視点間動きベクトルをiMV、基準ベクトルをbasemvCol、ダイレクトベクトルをmvL0、mvL1と表記する。また、CurrMBと同位置にあるColPic内のマクロブロックをColMB、ColMBの予測に用いる動きベクトルをmvRef、mvRefが指すピクチャをRefPicCol、iMVが指すブロックをiMBと表記する。
(2-7-1. Overall)
The overall flow of the encoding process will be described with reference to FIG.
The picture to be encoded is referred to as CurrPic, the macroblock to be encoded is referred to as CurrMB, and the picture pointed to by the motion vector mvCol used for CurrMB prediction is referred to as ColPic. Also, the inter-viewpoint motion vector is represented as iMV, the reference vector is represented as basemvCol, and the direct vector is represented as mvL 0 and mvL 1 . Also, a macroblock in ColPic located at the same position as CurrMB is denoted as ColMB, a motion vector used for prediction of ColMB is denoted as mvRef, a picture pointed to by mvRef is denoted as RefPicCol, and a block pointed to by iMV is denoted as iMB.

(S101)符号化装置100は、符号化方式がMVC方式であり、かつ、CurrPicが双方向予測を用いて符号化されるピクチャ(Bピクチャ)であるか否かを判定する。符号化方式がMVC方式であり、かつ、CurrPicがBピクチャである場合、処理はS102へと進む。一方、符号化方式がMVC方式でないか、CurrPicがBピクチャでない場合、処理はS108へと進む。   (S101) The encoding apparatus 100 determines whether or not the encoding method is the MVC method and CurrPic is a picture (B picture) encoded using bi-directional prediction. If the encoding method is the MVC method and CurrPic is a B picture, the process proceeds to S102. On the other hand, if the encoding method is not the MVC method or CurrPic is not the B picture, the process proceeds to S108.

(S102)符号化装置100は、ColPicが他視点のピクチャであるか否かを判定する。ColPicが他視点のピクチャである場合(つまり、mvColが視点間動きベクトルiMVである場合)、処理はS103へと進む。一方、ColPicが他視点のピクチャでない場合、処理はS105へと進む。   (S102) The encoding apparatus 100 determines whether ColPic is a picture of another viewpoint. When ColPic is a picture of another viewpoint (that is, when mvCol is the inter-viewpoint motion vector iMV), the process proceeds to S103. On the other hand, if ColPic is not a picture of another viewpoint, the process proceeds to S105.

(S103)符号化装置100は、視点間動きベクトルiMV(mvCol)を用いて基準ベクトルbasemvColを計算する。なお、基準ベクトルbasemvColの計算処理については後段において詳述する。   (S103) The encoding apparatus 100 calculates the reference vector basemvCol using the inter-viewpoint motion vector iMV (mvCol). The calculation process of the reference vector basemvCol will be described in detail later.

(S104)符号化装置100は、基準ベクトルbasemvColをスケーリングしてダイレクトベクトルmvL0、mvL1を計算する。例えば、符号化装置100は、図11、図12に示すような方法で基準ベクトルbasemvColをスケーリングする。S104の処理が完了すると、処理は、S108へと進む。 (S104) The encoding apparatus 100 calculates the direct vectors mvL 0 and mvL 1 by scaling the reference vector basemvCol. For example, the encoding apparatus 100 scales the reference vector basemvCol by a method as illustrated in FIGS. When the process of S104 is completed, the process proceeds to S108.

(S105)符号化装置100は、RefPicColが他視点のピクチャであるか否かを判定する。RefPicColが他視点のピクチャである場合(つまり、mvRefが視点間動きベクトルiMVである場合)、処理はS106へと進む。一方、RefPicColが他視点のピクチャでない場合、処理はS108へと進む。   (S105) The encoding apparatus 100 determines whether RefPicCol is a picture of another viewpoint. When RefPicCol is a picture of another viewpoint (that is, when mvRef is an inter-viewpoint motion vector iMV), the process proceeds to S106. On the other hand, if RefPicCol is not a picture of another viewpoint, the process proceeds to S108.

(S106)符号化装置100は、視点間動きベクトルiMV(mvRef)を用いて基準ベクトルbasemvColを計算する。なお、基準ベクトルbasemvColの計算処理については後段において詳述する。   (S106) The encoding apparatus 100 calculates the reference vector basemvCol using the inter-view motion vector iMV (mvRef). The calculation process of the reference vector basemvCol will be described in detail later.

(S107)符号化装置100は、基準ベクトルbasemvColをスケーリングしてダイレクトベクトルmvL0、mvL1を計算する。例えば、符号化装置100は、図4に示すような方法で基準ベクトルbasemvColをスケーリングする。 (S107) The encoding apparatus 100 calculates the direct vectors mvL 0 and mvL 1 by scaling the reference vector basemvCol. For example, the encoding apparatus 100 scales the reference vector basemVCol by a method as illustrated in FIG.

(S108)符号化装置100は、CurrMBの予測に用いる好適な予測モードを判定する。例えば、符号化装置100は、5つの予測モード(イントラ予測モード、前方向予測モード、後方向予測モード、双方向予測モード、ダイレクトモード)のうち、符号化コストが最も小さくなる予測モードを選択して判定結果とする。   (S108) The encoding apparatus 100 determines a suitable prediction mode used for CurrMB prediction. For example, the encoding apparatus 100 selects a prediction mode with the lowest encoding cost among five prediction modes (intra prediction mode, forward prediction mode, backward prediction mode, bidirectional prediction mode, and direct mode). To determine the result.

(S109)符号化装置100は、S108の処理で選択した予測モードを用いてCurrPicを符号化する。
(S110)符号化装置100は、CurrPicに含まれる全てのマクロブロック(1ピクチャ分)について符号化処理が終了したか否かを判定する。CurrPicに含まれる全てのマクロブロックについて符号化処理が終了した場合、図18に示した一連の処理は終了する。一方、CurrPicに含まれる全てのマクロブロックについて符号化処理が終了していない場合、処理はS102へと進む。
(S109) The encoding apparatus 100 encodes CurrPic using the prediction mode selected in the process of S108.
(S110) The encoding apparatus 100 determines whether or not the encoding process has been completed for all macroblocks (for one picture) included in the CurrPic. When the encoding process is completed for all the macroblocks included in CurrPic, the series of processes illustrated in FIG. 18 ends. On the other hand, if the encoding process has not been completed for all the macroblocks included in CurrPic, the process proceeds to S102.

(2−7−2.基準ベクトルの計算)
ここで、図19を参照しながら、S103、S106の処理について、さらに説明する。
(2-7-2. Calculation of reference vector)
Here, the processing of S103 and S106 will be further described with reference to FIG.

(S121)符号化装置100は、視点間動きベクトルiMVが指すブロックiMBと、ブロックiMBの周辺に位置する周辺ブロックとの重なり面積を計算する。
(S122)符号化装置100は、S121の処理で計算した重なり面積が最も大きい周辺ブロックを選択するか否かを判定する。つまり、符号化装置100は、図13に示した基準ベクトルbasemvColの補正方法を採用するか否かを判定する。なお、採用する補正方法は予め設定されているものとする。重なり面積が最も大きい周辺ブロックを選択する場合、処理はS123へと進む。一方、重なり面積が最も大きい周辺ブロックを選択しない場合、処理はS124へと進む。
(S121) The encoding apparatus 100 calculates an overlap area between the block iMB indicated by the inter-viewpoint motion vector iMV and the peripheral blocks located around the block iMB.
(S122) The encoding apparatus 100 determines whether to select a peripheral block having the largest overlap area calculated in the process of S121. That is, the encoding apparatus 100 determines whether or not to adopt the correction method for the reference vector basemvCol illustrated in FIG. Note that the correction method to be adopted is set in advance. When the peripheral block with the largest overlap area is selected, the process proceeds to S123. On the other hand, when the peripheral block having the largest overlap area is not selected, the process proceeds to S124.

(S123)符号化装置100は、ブロックiMBの中心座標を含む周辺ブロックを特定する。そして、符号化装置100は、特定した周辺ブロックの動きベクトルを基準ベクトルbasemvColに設定する。なお、図13に関する説明では、周辺ブロック毎に重なり面積を計算し、重なり面積の最大値に対応する周辺ブロックを選択する方法を紹介したが、ブロックiMBの中心座標を含む周辺ブロックを特定する方法でも同様の結果を得ることができる。S123の処理が完了すると、図19に示した一連の処理は終了する。   (S123) The encoding apparatus 100 specifies a peripheral block including the center coordinates of the block iMB. Then, the encoding apparatus 100 sets the motion vector of the identified peripheral block as the reference vector basemvCol. In the description related to FIG. 13, the method of calculating the overlapping area for each peripheral block and selecting the peripheral block corresponding to the maximum value of the overlapping area has been introduced. But you can get similar results. When the process of S123 is completed, the series of processes shown in FIG.

(S124)符号化装置100は、iMBと周辺ブロックとの重なり面積に基づいて周辺ブロックの動きベクトルを加重平均する。例えば、符号化装置100は、上記の式(12)〜式(14)に基づいて加重平均を計算する。なお、加重平均の計算処理については後段において詳述する。   (S124) The encoding apparatus 100 performs weighted averaging of the motion vectors of the peripheral blocks based on the overlapping area between the iMB and the peripheral blocks. For example, the encoding apparatus 100 calculates a weighted average based on the above equations (12) to (14). The weighted average calculation process will be described in detail later.

(S125)符号化装置100は、周辺ブロックの動きベクトルを加重平均して得られたベクトルを基準ベクトルbasemvColに設定する。S125の処理が完了すると、図19に示した一連の処理は終了する。   (S125) The encoding apparatus 100 sets a vector obtained by weighted averaging of the motion vectors of the neighboring blocks as the reference vector basemvCol. When the process of S125 is completed, the series of processes shown in FIG.

(2−7−3.加重平均の計算)
ここで、図20を参照しながら、S124の処理について、さらに説明する。
(S131)符号化装置100は、ブロックiMBと重なる周辺ブロックの1つを選択する。
(2-7-3. Calculation of weighted average)
Here, the processing of S124 will be further described with reference to FIG.
(S131) The encoding apparatus 100 selects one of the peripheral blocks overlapping the block iMB.

(S132)符号化装置100は、S131の処理で選択した周辺ブロックとブロックiMBとに関する重なり面積を取得する。
(S133)符号化装置100は、S132の処理で取得した重なり面積に基づいて評価値を計算する。例えば、符号化装置100は、上記の式(12)又は式(14)に基づいて評価値Costxyを計算する。
(S132) The encoding apparatus 100 acquires an overlapping area related to the peripheral block selected in the process of S131 and the block iMB.
(S133) The encoding apparatus 100 calculates an evaluation value based on the overlapping area acquired in the process of S132. For example, the encoding apparatus 100 calculates the evaluation value Costxy based on the above formula (12) or formula (14).

(S134)符号化装置100は、ブロックiMBと重なる周辺ブロックの全てを選択し、各周辺ブロックに関する評価値Costxyを計算したか否かを判定する。ブロックiMBと重なる周辺ブロックの全てを選択し終えている場合、処理はS135へと進む。一方、ブロックiMBと重なる周辺ブロックの全てを選択し終えていない場合、処理はS131へと進む。   (S134) The encoding apparatus 100 selects all the peripheral blocks that overlap the block iMB, and determines whether or not the evaluation value Costxy for each peripheral block has been calculated. If all of the neighboring blocks that overlap the block iMB have been selected, the process proceeds to S135. On the other hand, if all the peripheral blocks overlapping the block iMB have not been selected, the process proceeds to S131.

(S135)符号化装置100は、S133の処理で計算した各周辺ブロックの評価値Costxyを用いて各周辺ブロックの予測に用いる動きベクトルの加重平均を計算する。例えば、符号化装置100は、上記の式(13)に基づいて加重平均を計算する。S135の処理が完了すると、図20に示した一連の処理は終了する。   (S135) The encoding apparatus 100 calculates a weighted average of motion vectors used for prediction of each neighboring block using the evaluation value Costxy of each neighboring block calculated in the process of S133. For example, the encoding apparatus 100 calculates a weighted average based on the above equation (13). When the process of S135 is completed, the series of processes shown in FIG.

以上、符号化装置100が実行する符号化処理の流れについて説明した。
以上説明したように、第2実施形態に係る技術を適用すれば、CurrPic及びColPicに視点間予測が適用されている場合であっても、時間ダイレクトモードを利用することが可能になる。その結果、多視点動画符号化における符号化効率の更なる向上に寄与する。
The flow of the encoding process executed by the encoding device 100 has been described above.
As described above, if the technique according to the second embodiment is applied, the temporal direct mode can be used even when inter-view prediction is applied to CurrPic and ColPic. As a result, this contributes to further improvement in encoding efficiency in multi-view video encoding.

以上、第2実施形態について説明した。
<3.第3実施形態>
次に、図21及び図22を参照しながら、第3実施形態について説明する。図21は、第3実施形態に係る符号化方法について説明するための第1の図である。図22は、第3実施形態に係る符号化方法について説明するための第2の図である。第3実施形態は、H.265/HEVC方式への適用例に相当し、視点間予測とマージモードとを組み合わせる仕組みを提供する。なお、H.265/HEVC方式では、予測符号化の単位としてPU(Prediction Unit)が用いられる。
The second embodiment has been described above.
<3. Third Embodiment>
Next, a third embodiment will be described with reference to FIGS. 21 and 22. FIG. 21 is a first diagram for describing an encoding method according to the third embodiment. FIG. 22 is a second diagram for describing the encoding method according to the third embodiment. The third embodiment is described in H.264. This corresponds to an application example to the H.265 / HEVC scheme, and provides a mechanism for combining inter-view prediction and merge mode. H. In the H.265 / HEVC scheme, a PU (Prediction Unit) is used as a predictive coding unit.

マージモードとは、符号化対象のPU(以下、CurrPU)の時間近傍及び空間近傍に位置するPUの中から、そのまま流用可能な動きパラメータを有するPUを選択し、選択したPUの動きパラメータを共通化する方法である。マージモードを適用すると、選択したPUの位置を示すインデックスだけを符号化すれば済むため、符号化効率の向上に寄与する。以下、H.265/HEVC方式で採用されている空間近傍予測、時間近傍予測、及びこれらの予測方法と視点間予測との関係などについて述べる。   In merge mode, a PU having a motion parameter that can be used as it is is selected from PUs located near the time and near the space of the encoding target PU (hereinafter referred to as CurrPU), and the motion parameters of the selected PU are shared. It is a method to convert. When the merge mode is applied, only the index indicating the position of the selected PU needs to be encoded, which contributes to improvement in encoding efficiency. Hereinafter, H.C. The spatial neighborhood prediction, temporal neighborhood prediction employed in the H.265 / HEVC scheme, and the relationship between these prediction methods and inter-viewpoint prediction will be described.

H.265/HEVC方式では、AMVP(Adaptive Motion Vector Prediction)と呼ばれる動きベクトルの予測技術が採用されている。AMVPでは、予測値の候補として、同一ピクチャ上にある空間近傍の動きベクトルだけでなく、符号化済みの参照ピクチャ上にある時間近傍の動きベクトルも考慮される。   H. In the H.265 / HEVC scheme, a motion vector prediction technique called AMVP (Adaptive Motion Vector Prediction) is employed. In AMVP, not only a spatial motion vector on the same picture but also a temporal motion vector on an encoded reference picture is considered as a prediction value candidate.

例えば、図21の(A)に示した画素A0、A1、B0、B1、B2のそれぞれを含むPUの動きベクトル(mvLA0、mvLA1、mvLB0、mvLB1、mvLB2)が空間近傍における予測値の候補となる。また、図21の(B)に示した画素C0、C1のそれぞれを含むPUの動きベクトル(mvLC0、mvLC1)が時間近傍における動きベクトルの候補となる。さらに、mvLA0、mvLA1から選ばれたmvLA、mvLB0、mvLB1、mvLB2から選ばれたmvLB、mvLC0、mvLC1から選ばれたmvLC、及びゼロベクトルの中から予測値の候補が絞り込まれる。 For example, the motion vector (mvL A0 , mvL A1 , mvL B0 , mvL B1 , mvL B2 ) of the PU including each of the pixels A 0 , A 1 , B 0 , B 1 , B 2 shown in FIG. Are candidates for predicted values near the space. Further, the motion vector (mvL C0 , mvL C1 ) of the PU including each of the pixels C 0 and C 1 shown in (B) of FIG. 21 is a motion vector candidate in the vicinity of time. Furthermore, mvL A0, mvL A selected from mvL A1, the mvL B0, mvL B1, mvL selected from mvL B2 B, mvL C0, mvL selected from mvL C1 C, and the predicted value from the zero vector Candidates are narrowed down.

このようにして絞り込まれた予測値の候補を利用してCurrPUの予測が行われる。ここで、時間近傍予測値の導出方法に注目する。H.265/HEVC方式では、時間近傍予測値(CurrPUの動きベクトル)の導出時に、H.264/AVC方式の時間ダイレクトモードと同様のスケーリング処理が行われる。   CurrPU prediction is performed using prediction value candidates narrowed down in this way. Here, attention is focused on the method for deriving the temporal neighborhood prediction value. H. In the H.265 / HEVC method, the H.264 / HEVC method is used when the temporal neighborhood prediction value (CurrPU motion vector) is derived. The same scaling process as in the H.264 / AVC time direct mode is performed.

例えば、CurrPUと同位置(画素C1を含む位置)にある時間近傍ピクチャ(ColPic)内のPUを予測する動きベクトルmvColをスケーリングする処理が行われる。このとき、ColPicの対象PU(例えば、画素C1を含むPU)が参照する参照ピクチャとColPicとの距離td、CurrPUが参照する参照ピクチャとCurrPUを含むピクチャ(CurrPic)との距離tbが利用される。スケーリングの方法は、図2に例示した時間ダイレクトモードと同様である。 For example, the process of scaling a motion vector mvCol predicting the PU in time near the picture in CurrPU the same position (position including the pixel C 1) (ColPic) is performed. At this time, colPic the target PU (e.g., PU including the pixel C 1) the distance between the reference picture and colPic which refers td, the distance tb between the picture (CurrPic) including a reference picture and CurrPU which CurrPU references are utilized The The scaling method is the same as in the time direct mode illustrated in FIG.

CurrPUに視点間予測を適用する場合、図22のような状況が生じると考えられる。つまり、非Base−View(Dependent View)側のCurrPUが視点間動きベクトルiMVによりBase−ViewピクチャのColPU(例えば、画素D1を含むPU)を参照する。この場合、上記のスケーリング処理はできない。しかし、図11に例示した方法を適用すればスケーリング処理が可能になるため、時間近傍予測値を利用してCurrPUの動きベクトルを予測することが可能になる。その結果、H.265/HEVC方式においても符号化効率の向上が期待できる。 When applying inter-view prediction to CurrPU, the situation shown in FIG. 22 is considered to occur. That is, referring to non-Base-View (Dependent View) CurrPU is by interview motion vector iMV of Base-View picture side ColPU (e.g., PU including the pixel D 1). In this case, the above scaling process cannot be performed. However, since the scaling process can be performed by applying the method illustrated in FIG. 11, the CurrPU motion vector can be predicted using the temporal neighborhood prediction value. As a result, H.C. In the H.265 / HEVC system, an improvement in encoding efficiency can be expected.

以上、第3実施形態について説明した。
以上、添付図面を参照しながら好適な実施形態について説明したが、本発明は係る例に限定されない。当業者であれば、特許請求の範囲に記載された範疇内において、様々な変形例や修正例に想到し得ることは明らかであり、こうした変形例や修正例についても当然に本発明の技術的範囲に属することは言うまでもない。
The third embodiment has been described above.
As mentioned above, although preferred embodiment was described referring an accompanying drawing, this invention is not limited to the example which concerns. It is obvious for a person skilled in the art that various variations and modifications can be conceived within the scope of the claims, and such variations and modifications are naturally understood by the technical scope of the present invention. It goes without saying that it belongs to a range.

10 画像符号化装置
11 記憶部
12 演算部
21、22 動画像
Pic10、Pic11、Pic12、Pic13、Pic14、Pic15、Pic20、Pic21、Pic22、Pic23、Pic24、Pic25、ColPic 画像
CurrPic 対象画像
basemvCol0、basemvCol1、mvL0、mvL1 動き情報
mvCol 視点間動き情報
tbL0、tbL1、tdL0、tdL1 時間
10 image encoding device 11 storage unit 12 operation unit 21 moving picture Pic 10, Pic 11, Pic 12 , Pic 13, Pic 14, Pic 15, Pic 20, Pic 21, Pic 22, Pic 23, Pic 24, Pic 25 , ColPic image CurrPic target image basemvCol 0 , basemvCol 1 , mvL 0 , mvL 1 motion information mvCol inter-viewpoint motion information tbL 0 , tbL 1 , tdL 0 , tdL 1 time

Claims (8)

複数の視点にそれぞれ対応する複数の動画像が格納される記憶部と、
一の前記動画像に含まれる画像の中から、他の前記動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、前記同時刻の画像が有する動き情報を利用して前記対象画像の画像領域を符号化する演算部と、
を有する、画像符号化装置。
A storage unit storing a plurality of moving images respectively corresponding to a plurality of viewpoints;
A target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected from images included in the one moving image, and the motion information included in the image at the same time is detected. A calculation unit that encodes an image region of the target image using,
An image encoding device.
前記演算部は、前記同時刻の画像に含まれる画像領域のうち、前記視点間動き情報により前記対象画像の画像領域に対応付けられる1つ又は複数の画像領域を特定し、特定した前記画像領域の動き情報に基づいて前記対象画像の画像領域を符号化する
請求項1に記載の画像符号化装置。
The calculation unit specifies one or a plurality of image areas associated with the image area of the target image based on the inter-viewpoint movement information among the image areas included in the image at the same time, and the specified image area The image encoding device according to claim 1, wherein an image region of the target image is encoded based on the motion information of the target image.
前記演算部は、前記視点間動き情報により前記対象画像の画像領域に対応付けられる画像領域が複数ある場合、特定した複数の前記画像領域の中でサイズが最大となる前記画像領域を選択し、選択した前記画像領域の動き情報に基づいて前記対象画像の画像領域を符号化する
請求項2に記載の画像符号化装置。
When there are a plurality of image regions associated with the image region of the target image based on the inter-viewpoint movement information, the calculation unit selects the image region having the maximum size among the plurality of identified image regions, The image encoding device according to claim 2, wherein the image region of the target image is encoded based on the motion information of the selected image region.
前記演算部は、前記視点間動き情報により前記対象画像の画像領域に対応付けられる画像領域が複数ある場合、特定した前記画像領域のサイズに基づいて前記画像領域の動き情報に重みを設定し、設定した前記重みを考慮して前記動き情報の統計情報を生成し、前記統計情報に基づいて前記対象画像の画像領域を符号化する
請求項2に記載の画像符号化装置。
When there are a plurality of image areas associated with the image area of the target image based on the inter-viewpoint motion information, the calculation unit sets a weight on the motion information of the image area based on the specified size of the image area, The image encoding device according to claim 2, wherein statistical information of the motion information is generated in consideration of the set weight, and an image region of the target image is encoded based on the statistical information.
前記演算部は、前記視点間動き情報により前記対象画像の画像領域に対応付けられる画像領域が複数ある場合、特定した前記画像領域のサイズ及び量子化情報に基づいて前記画像領域の動き情報に重みを設定し、設定した前記重みを考慮して前記動き情報の統計情報を生成し、前記統計情報に基づいて前記対象画像の画像領域を符号化する
請求項2に記載の画像符号化装置。
When there are a plurality of image areas associated with the image area of the target image based on the inter-viewpoint motion information, the arithmetic unit weights the motion information of the image area based on the specified size and quantization information of the image area. The image encoding device according to claim 2, wherein statistical information of the motion information is generated in consideration of the set weight, and an image region of the target image is encoded based on the statistical information.
複数の視点にそれぞれ対応する複数の動画像が格納される記憶部から前記動画像を取得可能なコンピュータが、
一の前記動画像に含まれる画像の中から、他の前記動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、前記同時刻の画像が有する動き情報を利用して前記対象画像の画像領域を符号化する
画像符号化方法。
A computer capable of acquiring the moving image from a storage unit storing a plurality of moving images respectively corresponding to a plurality of viewpoints,
A target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected from images included in the one moving image, and the motion information included in the image at the same time is detected. An image encoding method for encoding an image region of the target image using the image encoding method.
複数の視点にそれぞれ対応する複数の動画像を符号化した符号化データが格納される記憶部と、
前記符号化データを復号する処理の中で、一の前記動画像に含まれる画像の中から、他の前記動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、前記同時刻の画像が有する動き情報を利用して前記対象画像の画像領域を復号する演算部と、
を有する、画像復号装置。
A storage unit that stores encoded data obtained by encoding a plurality of moving images respectively corresponding to a plurality of viewpoints;
In the process of decoding the encoded data, a target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected from images included in one moving image. A calculation unit that decodes the image area of the target image using motion information of the image at the same time;
An image decoding apparatus.
複数の視点にそれぞれ対応する複数の動画像を符号化した符号化データが格納される記憶部から前記符号化データを取得可能なコンピュータが、
前記符号化データを復号する処理の中で、一の前記動画像に含まれる画像の中から、他の前記動画像に含まれる同時刻の画像を参照する視点間動き情報を有する対象画像を検出し、前記同時刻の画像が有する動き情報を利用して前記対象画像の画像領域を復号する
画像復号方法。
A computer capable of acquiring the encoded data from a storage unit in which encoded data obtained by encoding a plurality of moving images respectively corresponding to a plurality of viewpoints is stored.
In the process of decoding the encoded data, a target image having inter-viewpoint motion information that refers to an image at the same time included in another moving image is detected from images included in one moving image. An image decoding method for decoding an image area of the target image using motion information included in the image at the same time.
JP2013264961A 2013-12-24 2013-12-24 Image coding apparatus, image coding method, image decoding apparatus, and image decoding method Active JP6273828B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013264961A JP6273828B2 (en) 2013-12-24 2013-12-24 Image coding apparatus, image coding method, image decoding apparatus, and image decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013264961A JP6273828B2 (en) 2013-12-24 2013-12-24 Image coding apparatus, image coding method, image decoding apparatus, and image decoding method

Publications (2)

Publication Number Publication Date
JP2015122606A true JP2015122606A (en) 2015-07-02
JP6273828B2 JP6273828B2 (en) 2018-02-07

Family

ID=53533893

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013264961A Active JP6273828B2 (en) 2013-12-24 2013-12-24 Image coding apparatus, image coding method, image decoding apparatus, and image decoding method

Country Status (1)

Country Link
JP (1) JP6273828B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019088923A (en) * 2019-03-15 2019-06-13 株式会社三洋物産 Game machine

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012182616A (en) * 2011-03-01 2012-09-20 Fujitsu Ltd Moving image decoding method, moving image coding method, moving image decoding apparatus, and moving image decoding program
WO2012144829A2 (en) * 2011-04-19 2012-10-26 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector of multi-view video

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012182616A (en) * 2011-03-01 2012-09-20 Fujitsu Ltd Moving image decoding method, moving image coding method, moving image decoding apparatus, and moving image decoding program
WO2012144829A2 (en) * 2011-04-19 2012-10-26 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector of multi-view video

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LI ZHANG QUALCOMM INCORPORATED: "Test Model 6 of 3D-HEVC and MV-HEVC[online]", JCT3V-F JCT3V-F1005, JPN6017014426, pages 16 - 18 *
志水 信哉: "デプスマップを用いた三次元映像符号化の国際標準化動向", 情報処理学会 研究報告 オーディオビジュアル複合情報処理(AVM) 2013−AVM−082 [ON, JPN6017014428, JP, pages 1 - 6 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019088923A (en) * 2019-03-15 2019-06-13 株式会社三洋物産 Game machine

Also Published As

Publication number Publication date
JP6273828B2 (en) 2018-02-07

Similar Documents

Publication Publication Date Title
KR102620624B1 (en) Method for video decoding and computer readable redording meduim thereof
CN111385569B (en) Coding and decoding method and equipment thereof
JP5747559B2 (en) Moving picture decoding method, moving picture encoding method, moving picture decoding apparatus, and moving picture decoding program
WO2019079206A2 (en) Various improvements to fruc template matching
KR102550448B1 (en) Method of encoding/decoding motion vector for multi-view video and apparatus thereof
JP2017041898A (en) Apparatus for encoding moving picture
KR20220027157A (en) Image encoding/decoding method using motion information candidate, apparatus, and method of transmitting a bitstream
KR101390620B1 (en) Power efficient motion estimation techniques for video encoding
JP2005244503A (en) Apparatus and method for coding image information
TWI738081B (en) Methods and apparatuses of combining multiple predictors for block prediction in video coding systems
KR20180081716A (en) Adaptive Image Prediction Method and Apparatus Using Threshold in Image Coding System
JP5248632B2 (en) Techniques for motion estimation
JP2022548704A (en) Image encoding/decoding method, apparatus and method for transmitting bitstream with PROF
JP2022505578A (en) Video signal processing methods and equipment with subblock-based motion compensation
TWI702828B (en) Methods and apparatuses of generating average candidates in video coding systems
CN114845102A (en) Early termination of optical flow modification
WO2011070730A1 (en) Video coding device and video decoding device
US11949874B2 (en) Image encoding/decoding method and device for performing prof, and method for transmitting bitstream
Kamp et al. Fast decoder side motion vector derivation for inter frame video coding
WO2020137126A1 (en) Image decoding device, image encoding device, image decoding method, and program
JP6191296B2 (en) Moving image processing apparatus, moving image processing method, and program
JP6273828B2 (en) Image coding apparatus, image coding method, image decoding apparatus, and image decoding method
JP5407974B2 (en) Video encoding apparatus and motion vector detection method
JP2022547988A (en) Image encoding/decoding method, apparatus, and method for transmitting bitstream with BDOF
JP7299362B2 (en) Image decoding device, image encoding device, image decoding method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170626

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171225

R150 Certificate of patent or registration of utility model

Ref document number: 6273828

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150