[go: up one dir, main page]

JP2007036887A - Coding method - Google Patents

Coding method Download PDF

Info

Publication number
JP2007036887A
JP2007036887A JP2005219590A JP2005219590A JP2007036887A JP 2007036887 A JP2007036887 A JP 2007036887A JP 2005219590 A JP2005219590 A JP 2005219590A JP 2005219590 A JP2005219590 A JP 2005219590A JP 2007036887 A JP2007036887 A JP 2007036887A
Authority
JP
Japan
Prior art keywords
motion vector
global
region
global motion
difference
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.)
Withdrawn
Application number
JP2005219590A
Other languages
Japanese (ja)
Inventor
Shigeyuki Okada
茂之 岡田
Masaru Matsuda
優 松田
Hideki Yamauchi
英樹 山内
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2005219590A priority Critical patent/JP2007036887A/en
Priority to US11/494,767 priority patent/US20070025444A1/en
Publication of JP2007036887A publication Critical patent/JP2007036887A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a coding technique for moving image which is high in coding efficiency and can perform high-accuracy motion prediction, and a decoding technique thereof. <P>SOLUTION: A local motion vector detector 66 obtains a local motion vector LMV by macroblock units for a coding target frame image. A region setting section 64 sets a plurality of global regions on a frame image, and a large-region vector calculator 68 calculates a global motion vector GMV indicating large region motion inside each global region. A local motion vector difference coder 72 obtains and codes a difference ΔLMV, between the local motion vector LMV and the global motion vector GMV in the global region by global regions. A large area motion vector difference coding section 74 obtains and codes a difference ΔGMV between the global motion vector GMV of each global region and a global motion vector GMV<SB>B</SB>that serves as a reference. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、動画像を符号化する符号化方法に関する。   The present invention relates to an encoding method for encoding a moving image.

ブロードバンドネットワークが急速に発展しており、高品質な動画像を利用したサービスに期待が集まっている。また、DVDなど大容量の記録媒体が利用されており、高画質の画像を楽しむユーザ層が広がっている。動画像を通信回線で伝送したり、記録媒体に蓄積するために不可欠な技術として圧縮符号化がある。動画像圧縮符号化技術の国際標準として、MPEG4の規格やH.264/AVC規格がある。また、1つのストリームにおいて高画質のストリームと低画質のストリームを併せもつSVCのような次世代画像圧縮技術がある。   Broadband networks are rapidly developing, and there are high expectations for services that use high-quality moving images. In addition, a large-capacity recording medium such as a DVD is used, and a user group who enjoys high-quality images is expanding. There is compression coding as an indispensable technique for transmitting moving images via a communication line or storing them in a recording medium. As an international standard for moving image compression coding technology, the MPEG4 standard and H.264 standard. There is a H.264 / AVC standard. There is a next-generation image compression technology such as SVC that has both a high-quality stream and a low-quality stream in one stream.

高解像度の動画像をストリーム配信したり、記録媒体に蓄積する場合、通信帯域を圧迫しないように、あるいは、記憶容量が大きくならないように、動画ストリームの圧縮率を高める必要がある。動画像の圧縮効果を高めるために、動き補償フレーム間予測符号化が行われる。動き補償フレーム間予測符号化では、符号化対象フレームをブロックに分割し、既に符号化された参照フレームからの動きをブロック毎に予測して動きベクトルを検出し、差分画像とともに動きベクトル情報を符号化する。   When streaming a high-resolution moving image or storing it in a recording medium, it is necessary to increase the compression rate of the moving image stream so as not to compress the communication band or increase the storage capacity. In order to enhance the compression effect of moving images, motion compensation interframe predictive coding is performed. In motion-compensated interframe predictive coding, the encoding target frame is divided into blocks, the motion from a reference frame that has already been encoded is predicted for each block, a motion vector is detected, and motion vector information is encoded along with the difference image. Turn into.

特許文献1には、フレーム内符号化、通常の動き補償、グローバル動きベクトルを用いた各種の動き補償の中から、最も符号化効率が高い方式を選択する動画像符号化技術が開示されている。
特開2003−299101号公報
Patent Document 1 discloses a moving image coding technique that selects a method with the highest coding efficiency from among various types of motion compensation using intra-frame coding, normal motion compensation, and global motion vectors. .
JP 2003-299101 A

H.264/AVC規格では、動き補償において、よりきめ細かな予測を行うために、動き補償のブロックサイズを可変にしたり、動き補償の画素精度を1/4画素精度まで細かくすることができるようになっており、動きベクトルに関する符号量が多くなる。また、次世代画像圧縮技術であるSVC(Scalable Video Coding)では、時間的スケーラビリティを高めるために、MCTF(Motion Compensated Temporal Filtering、動き補償時間方向フィルタ)技術が検討されている。これは、時間軸方向のサブバンド分割に動き補償を組み合わせたものであり、階層的な動き補償を行うため、動きベクトルの情報が非常に多くなる。このように最近の動画圧縮符号化技術では、動きベクトルに関する情報量が増えることにより動画ストリーム全体のデータ量が増大する傾向にあり、動きベクトル情報に起因する符号量を削減する技術が一層求められている。   H. In the H.264 / AVC standard, in order to perform more detailed prediction in motion compensation, the block size of motion compensation can be made variable, and the pixel accuracy of motion compensation can be reduced to ¼ pixel accuracy. Therefore, the amount of code related to the motion vector increases. In addition, in SVC (Scalable Video Coding), which is a next-generation image compression technology, MCTF (Motion Compensated Temporal Filtering) technology is being studied in order to improve temporal scalability. This is a combination of subband division in the time axis direction and motion compensation. Since hierarchical motion compensation is performed, information on motion vectors becomes very large. As described above, the recent video compression coding technology tends to increase the data amount of the entire video stream due to an increase in the amount of information related to motion vectors, and there is a further demand for a technology for reducing the amount of codes resulting from motion vector information. ing.

本発明はこうした状況に鑑みてなされたもので、その目的は、符号化効率が高く、また、精度の高い動き予測を行うことのできる動画像の符号化技術および復号技術を提供することにある。   The present invention has been made in view of such circumstances, and an object of the present invention is to provide a coding technique and a decoding technique for moving images that have high coding efficiency and can perform highly accurate motion prediction. .

上記課題を解決するために、本発明のある態様の符号化方法は、動画像を構成するピクチャであって、ピクチャ間予測符号化されるピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルの情報を前記動画像の符号化データに含める。   In order to solve the above-described problem, an encoding method according to an aspect of the present invention is a picture that configures a moving image, and includes at least one of a plurality of regions defined on a picture that is inter-picture prediction encoded. For one region, global motion vector information indicating the global motion in the region is included in the encoded data of the moving image.

「大域動きベクトル」は、領域全体の動きを表すベクトルである。   The “global motion vector” is a vector that represents the motion of the entire region.

「ピクチャ」は、フレーム、フィールド、VOP(Video Object Plane)などを含む符号化の単位である。   A “picture” is an encoding unit including a frame, a field, a VOP (Video Object Plane), and the like.

この態様によると、動画像の符号化に際し、動画像に定義された複数の領域の内、少なくとも1つの領域内で大域的な動きを捉えることができる。   According to this aspect, when a moving image is encoded, a global movement can be captured in at least one region among a plurality of regions defined in the moving image.

2つ以上の領域について大域動きベクトルが定義されている場合に、異なる領域の大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めてもよい。これによれば、領域毎に得られた大域動きベクトルについて領域間で差分を取ることで、大域動きベクトルの符号量を削減することができる。   When global motion vectors are defined for two or more regions, difference information between global motion vectors in different regions may be included in the encoded data of the moving image. According to this, the code amount of the global motion vector can be reduced by taking the difference between the regions for the global motion vector obtained for each region.

前記ピクチャ間予測符号化されるピクチャについて所定のブロック単位の局所動きベクトルが定義されている場合に、前記領域毎に前記大域動きベクトルと前記局所動きベクトルとの差分情報を前記動画像の前記符号化データに含めてもよい。これによれば、局所動きベクトルを符号化する際に、符号化対象ピクチャ上の領域毎に与えられた大域動きベクトルとの差分を取ることにより、局所動きベクトルの符号量を削減することができ、動画像の圧縮効率を高めることができる。   When a local motion vector in a predetermined block unit is defined for the picture to be subjected to the inter-picture predictive coding, difference information between the global motion vector and the local motion vector is obtained for each region by using the code of the moving image. May be included in the data. According to this, when the local motion vector is encoded, the amount of code of the local motion vector can be reduced by taking the difference from the global motion vector given for each region on the encoding target picture. The compression efficiency of moving images can be increased.

2つ以上の領域について大域動きベクトルが定義されている場合に、少なくとも1つの大域動きベクトルを基準に選び、その基準となる大域動きベクトルと他の大域動きベクトルとの差分情報を前記動画像の前記符号化データに含めてもよい。これによれば、複数の領域の大域動きベクトルを符号化する際に、基準となる大域動きベクトルとの差分を取ることにより、大域動きベクトルの符号量を削減することができ、動画像の圧縮効率を高めることができる。   When global motion vectors are defined for two or more regions, at least one global motion vector is selected as a reference, and difference information between the reference global motion vector and another global motion vector is selected from the moving image. It may be included in the encoded data. According to this, when encoding global motion vectors of a plurality of regions, the difference from the reference global motion vector can be taken to reduce the amount of coding of the global motion vector and to compress the moving image. Efficiency can be increased.

本発明の別の態様は、符号化装置である。この装置は、動画像のピクチャ間予測符号化されるピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルを算出する大域動きベクトル算出部を含む。   Another aspect of the present invention is an encoding device. This apparatus calculates a global motion vector for calculating a global motion vector indicating a global motion in at least one area among a plurality of areas defined on a picture to be subjected to inter-picture prediction encoding of a moving image. Includes a vector calculator.

本発明のさらに別の態様は、動画像ストリームのデータ構造である。この動画像ストリームのデータ構造は、動画像のピクチャが符号化された動画像ストリームのデータ構造であって、ピクチャ間予測符号化されるピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルが動きベクトル情報として前記ピクチャ間予測符号化されるピクチャともに符号化されてなる。   Yet another aspect of the present invention is a data structure of a moving image stream. The data structure of the moving picture stream is a data structure of a moving picture stream in which a picture of a moving picture is encoded, and at least one of a plurality of areas defined on a picture to be inter-picture prediction encoded For a region, a global motion vector indicating a global motion in the region is encoded as motion vector information together with the picture to be inter-picture prediction encoded.

この態様によると、符号化対象ピクチャ上に設けられた各領域内の大域的な動きを示す大域動きベクトルが符号化されているため、動画像の領域別に大域的な動きを捉えた動画ストリームを提供することができる。   According to this aspect, since the global motion vector indicating the global motion in each region provided on the encoding target picture is encoded, a video stream that captures the global motion for each moving image region is generated. Can be provided.

この動画像ストリームのデータ構造は、各領域の大域動きベクトル間の差分が動きベクトル情報として前記符号化対象ピクチャともに符号化されてなるものであってもよい。これによれば、大域動きベクトルの符号量の少ない動画ストリームを提供することができる。   The data structure of the moving image stream may be obtained by encoding a difference between global motion vectors in each region as motion vector information together with the encoding target picture. According to this, it is possible to provide a moving image stream with a small global motion vector code amount.

また、この動画像ストリームのデータ構造は、各領域内の所定のブロック単位の局所動きベクトルを代表する大域動きベクトルと前記局所動きベクトルとの差分が動きベクトル情報として前記符号化対象ピクチャともに符号化されてなるものであってもよい。これによれば、符号化対象ピクチャ上に設けられた領域毎に局所動きベクトルが大域動きベクトルとの差分の形で符号化されているため、局所動きベクトルの符号量が少ない動画ストリームを提供することができる。   Further, the data structure of this moving image stream is such that a difference between a global motion vector representing a local motion vector in a predetermined block unit in each region and the local motion vector is encoded as motion vector information together with the encoding target picture. It may be made. According to this, since the local motion vector is encoded in the form of a difference from the global motion vector for each region provided on the encoding target picture, a moving image stream with a small amount of coding of the local motion vector is provided. be able to.

本発明のさらに別の態様は、復号装置である。この装置は、動画像のピクチャが符号化された動画像ストリームを復号する復号装置であって、ピクチャ間予測符号化されたピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルを前記動画像ストリームから取得する大域動きベクトル算出部を含む。前記大域動きベクトル算出部は、各領域の大域動きベクトル間の差分値を前記動画像ストリームから取得し、前記差分値を用いて各領域の大域動きベクトルを算出してもよい。   Yet another embodiment of the present invention is a decoding device. This apparatus is a decoding apparatus that decodes a moving picture stream in which a picture of a moving picture is encoded, and at least one area among a plurality of areas defined on a picture that has been inter-picture prediction encoded, A global motion vector calculating unit that acquires a global motion vector indicating global motion in the region from the moving image stream; The global motion vector calculation unit may acquire a difference value between global motion vectors of each region from the moving image stream, and calculate a global motion vector of each region using the difference value.

この態様によると、画像ピクチャ上に設けられた領域毎に大域動きベクトルが符号化された動画像ストリームから、大域動きベクトルを取得し、動画像の領域別に大域的な動きを捉えることができる。   According to this aspect, it is possible to acquire a global motion vector from a moving image stream in which a global motion vector is encoded for each region provided on an image picture, and to capture a global motion for each moving image region.

各領域内の局所的な動きを示す局所動きベクトルの差分値を前記動画像ストリームから取得し、領域毎に前記局所動きベクトルの前記差分値をその領域の前記大域動きベクトルに加算することにより、各領域内の局所動きベクトルを算出する局所動きベクトル算出部と、前記動画像ストリームから取得した差分画像に、算出された前記局所動きベクトルを加算することにより復号対象ピクチャを復元する画像復元部とをさらに含んでもよい。これによれば、画像ピクチャ上に設けられた領域毎に局所動きベクトルと大域動きベクトルの差分が符号化された動画像ストリームから、大域動きベクトルと局所動きベクトルの差分値とを取得し、領域毎に局所動きベクトルの差分値を大域動きベクトルに加算して局所動きベクトルを求めて、動き補償を行うことにより、動画像を高精度で再生することができる。   By obtaining a difference value of a local motion vector indicating local motion in each region from the moving image stream, and adding the difference value of the local motion vector for each region to the global motion vector of the region, A local motion vector calculation unit that calculates a local motion vector in each region, an image restoration unit that restores a decoding target picture by adding the calculated local motion vector to a difference image acquired from the moving image stream, and May further be included. According to this, the difference between the global motion vector and the local motion vector is acquired from the video stream in which the difference between the local motion vector and the global motion vector is encoded for each region provided on the image picture, By adding the difference value of the local motion vector to the global motion vector every time to obtain the local motion vector and performing motion compensation, the moving image can be reproduced with high accuracy.

本発明のさらに別の態様は、復号方法である。この方法は、動画像のピクチャ間予測符号化されたピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルを動画像のピクチャが符号化された動画像ストリームから取得し、前記大域動きベクトルの情報を前記ピクチャ間予測符号化されたピクチャの動き補償に利用する。各領域の大域的な動きを示す大域動きベクトルと、各領域内の局所的な動きを示す局所動きベクトルの差分値とを動画像ストリームから取得し、領域毎に前記局所動きベクトルの前記差分値をその領域の前記大域動きベクトルに加算することにより、各領域内の局所動きベクトルを算出し、算出された各領域内の前記局所動きベクトルを用いて、前記復号対象ピクチャの動き補償を行ってもよい。   Yet another embodiment of the present invention is a decoding method. In this method, a global motion vector indicating a global motion in a region of at least one region among a plurality of regions defined on an inter-picture predictive-coded picture of a moving image is used as a moving picture picture. Is obtained from the encoded video stream, and the global motion vector information is used for motion compensation of the inter-picture predictive encoded picture. A global motion vector indicating global motion in each region and a local motion vector difference value indicating local motion in each region are acquired from the video stream, and the difference value of the local motion vector for each region Is added to the global motion vector of the region to calculate a local motion vector in each region, and using the calculated local motion vector in each region, motion compensation of the decoding target picture is performed. Also good.

なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。   It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.

本発明によれば、動画像の符号化効率を向上することができる。   According to the present invention, it is possible to improve the encoding efficiency of moving images.

図1は、実施の形態に係る符号化装置100の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされた画像符号化機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。   FIG. 1 is a configuration diagram of an encoding apparatus 100 according to an embodiment. These configurations can be realized in hardware by a CPU, memory, or other LSI of an arbitrary computer, and in software, it is realized by a program having an image encoding function loaded in the memory. Here, functional blocks realized by the cooperation are depicted. Therefore, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.

本実施の形態の符号化装置100は、国際標準化機関であるISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)によって標準化されたMPEG(Moving Picture Experts Group)シリーズの規格(MPEG−1、MPEG−2およびMPEG−4)、電気通信に関する国際標準機関であるITU−T(International Telecommunication Union-Telecommunication Standardization Sector)によって標準化されたH.26xシリーズの規格(H.261、H.262およびH.263)、もしくは両方の標準化機関によって合同で標準化された最新の動画像圧縮符号化標準規格であるH.264/AVC(両機関における正式勧告名はそれぞれMPEG-4 Part 10: Advanced Video CodingとH.264)に準拠して動画像の符号化を行う。   The encoding apparatus 100 according to the present embodiment includes an MPEG (Moving Picture Experts Group) series standard (MPEG-1, MPEG, standardized by ISO (International Organization for Standardization) / IEC (International Electrotechnical Commission)). -2 and MPEG-4), standardized by ITU-T (International Telecommunication Union-Telecommunication Standardization Sector), which is an international standard organization for telecommunications. 26x series standards (H.261, H.262 and H.263), or H.264, the latest video compression coding standard standardized jointly by both standards organizations. H.264 / AVC (official recommendation names in both organizations are MPEG-4 Part 10: Advanced Video Coding and H.264 respectively).

MPEGシリーズの規格では、フレーム内符号化を行う画像フレームをI(Intra)フレーム、過去のフレームを参照画像として順方向のフレーム間予測符号化を行う画像フレームをP(Predictive)フレーム、過去と未来のフレームを参照画像として双方向のフレーム間予測符号化を行う画像フレームをBフレームという。   In the MPEG series standard, an image frame for intra-frame encoding is an I (Intra) frame, an image frame for forward inter-frame predictive encoding with a past frame as a reference image, a P (Predictive) frame, and past and future An image frame that performs bidirectional inter-frame predictive coding using this frame as a reference image is referred to as a B frame.

一方、H.264/AVCでは、参照画像として利用できるフレームは、時間の先後を問わず、過去の2枚のフレームを参照画像としてもよく、未来の2枚のフレームを参照画像としてもよい。また、参照画像として利用できるフレームの枚数も問わず、3枚以上のフレームを参照画像として用いることもできる。したがって、MPEG−1/2/4では、Bフレームは双方向予測(Bi-directional prediction)フレームのことを指していたが、H.264/AVCでは、Bフレームは、参照画像の時間の先後は問わないため、双予測(Bi-predictive prediction)フレームのことを指すことに留意する。   On the other hand, H. In H.264 / AVC, a frame that can be used as a reference image may be a past two frames as a reference image or a future two frames as a reference image regardless of the time. Further, three or more frames can be used as the reference image regardless of the number of frames that can be used as the reference image. Therefore, in MPEG-1 / 2/4, the B frame refers to a Bi-directional prediction frame. Note that in H.264 / AVC, the B frame refers to a bi-predictive prediction frame because the time of the reference image does not matter before and after.

なお、実施の形態では、符号化の単位としてフレームを例に挙げて説明するが、符号化の単位はフィールドであってもよい。また、符号化の単位はMPEG−4におけるVOPであってもよい。   In the embodiment, a frame is used as an example of the encoding unit, but the encoding unit may be a field. The unit of encoding may be a VOP in MPEG-4.

符号化装置100は、フレーム単位で動画像の入力を受け取り、動画像を符号化し、符号化ストリームを出力する。入力された動画フレームはフレームメモリ80に格納される。   The encoding apparatus 100 receives an input of a moving image in units of frames, encodes the moving image, and outputs an encoded stream. The input moving image frame is stored in the frame memory 80.

動き補償部60は、フレームメモリ80に格納されている過去または未来の画像フレームを参照画像として利用し、PフレームまたはBフレームのマクロブロック毎に動き補償を行い、動きベクトルと予測画像を生成する。動き補償部60は、符号化対象のPフレームまたはBフレームの画像と予測画像の差分を取り、差分画像をDCT部20に供給する。また、動き補償部60は、符号化された動きベクトル情報を多重化部92に供給する。   The motion compensation unit 60 uses a past or future image frame stored in the frame memory 80 as a reference image, performs motion compensation for each macroblock of the P frame or the B frame, and generates a motion vector and a predicted image. . The motion compensation unit 60 takes the difference between the P frame or B frame image to be encoded and the predicted image, and supplies the difference image to the DCT unit 20. In addition, the motion compensation unit 60 supplies the encoded motion vector information to the multiplexing unit 92.

DCT部20は、動き補償部60から供給された画像を離散コサイン変換(DCT)し、得られたDCT係数を量子化部30に与える。   The DCT unit 20 performs discrete cosine transform (DCT) on the image supplied from the motion compensation unit 60, and gives the obtained DCT coefficient to the quantization unit 30.

量子化部30は、DCT係数を量子化し、可変長符号化部90に与える。可変長符号化部90は、差分画像の量子化されたDCT係数を可変長符号化し、多重化部92に与える。多重化部92は、可変長符号化部90から与えられた符号化後のDCT係数と、動き補償部60から与えられた符号化後の動きベクトル情報とを多重化し、符号化ストリームを生成する。多重化部92は、符号化ストリームを生成する際、符号化されたフレームを時間順序に並べ替える処理を行う。   The quantization unit 30 quantizes the DCT coefficient and provides it to the variable length coding unit 90. The variable length coding unit 90 performs variable length coding on the quantized DCT coefficient of the difference image and supplies the result to the multiplexing unit 92. The multiplexing unit 92 multiplexes the encoded DCT coefficient given from the variable length coding unit 90 and the coded motion vector information given from the motion compensation unit 60 to generate an encoded stream. . When generating the encoded stream, the multiplexing unit 92 performs a process of rearranging the encoded frames in time order.

PフレームもしくはBフレームの符号化処理の場合は、上述のように動き補償部60が動作するが、Iフレームの符号化処理の場合は、動き補償部60は動作せず、ここでは図示しないが、Iフレームはフレーム内予測が行われた後、DCT部20に供給される。   In the case of P frame or B frame encoding processing, the motion compensation unit 60 operates as described above. However, in the case of I frame encoding processing, the motion compensation unit 60 does not operate and is not shown here. The I frame is supplied to the DCT unit 20 after intra prediction.

図2は、動き補償部60の構成を説明する図である。動き補償部60は、符号化対象フレームのマクロブロック単位の動きベクトル(以下、「ローカル動きベクトル」という)を検出するとともに、画像上に設けられた所定の領域毎に、その領域内の大域的な動きを示す動きベクトル(以下、「グローバル動きベクトル」という)を求める。グローバル動きベクトルは、その領域全体の動きを表すベクトルである。たとえば、各領域のグローバル動きベクトルは、その領域内の個々のマクロブロック単位のローカル動きベクトルを代表するものであってもよい。   FIG. 2 is a diagram illustrating the configuration of the motion compensation unit 60. The motion compensation unit 60 detects a motion vector (hereinafter referred to as a “local motion vector”) of a macroblock unit of an encoding target frame, and for each predetermined region provided on the image, A motion vector indicating a smooth motion (hereinafter referred to as “global motion vector”) is obtained. The global motion vector is a vector that represents the motion of the entire region. For example, the global motion vector in each region may represent a local motion vector in units of individual macroblocks in that region.

動き補償部60は、ローカル動きベクトルにもとづいて動き予測を行い、差分画像を出力するとともに、ローカル動きベクトルおよびグローバル動きベクトルの差分値を符号化して動きベクトル情報として出力する。   The motion compensation unit 60 performs motion prediction based on the local motion vector, outputs a difference image, encodes a difference value between the local motion vector and the global motion vector, and outputs it as motion vector information.

局所動きベクトル検出部66は、フレームメモリ80に保持された参照画像を参照し、符号化対象画像の対象マクロブロックに対して誤差の最も小さい予測マクロブロックを参照画像から検出し、対象マクロブロックから予測マクロブロックへの動きを示すローカル動きベクトルLMVを求める。動き検出は、対象マクロブロックとマッチングする参照画像における参照マクロブロックを整数画素単位または小数画素単位で探すことにより行われる。探索は通常、画素領域内で複数回にわたって繰り返し行われ、その複数回の探索の中で対象マクロブロックと最も適合する参照マクロブロックが予測マクロブロックとして選択される。   The local motion vector detection unit 66 refers to the reference image held in the frame memory 80, detects a prediction macroblock having the smallest error with respect to the target macroblock of the encoding target image from the reference image, and determines from the target macroblock. A local motion vector LMV indicating the motion to the predicted macroblock is obtained. Motion detection is performed by searching for a reference macroblock in a reference image matching the target macroblock in units of integer pixels or decimal pixels. The search is normally repeated a plurality of times within the pixel region, and the reference macroblock that best matches the target macroblock is selected as the predicted macroblock in the plurality of searches.

局所動きベクトル検出部66は、求めたローカル動きベクトルLMVを大域動きベクトル算出部68、動き補償予測部70、および局所動きベクトル差分符号化部72に与える。   The local motion vector detection unit 66 gives the obtained local motion vector LMV to the global motion vector calculation unit 68, the motion compensation prediction unit 70, and the local motion vector difference encoding unit 72.

動き補償予測部70は、ローカル動きベクトルLMVを用いて対象マクロブロックを動き補償して、予測画像を生成し、符号化対象画像と予測画像の差分画像をDCT部20に出力する。   The motion compensation prediction unit 70 performs motion compensation on the target macroblock using the local motion vector LMV, generates a prediction image, and outputs a difference image between the encoding target image and the prediction image to the DCT unit 20.

領域設定部64は、フレーム画像上にグローバル動きベクトルGMVを求めるための領域(以下、「グローバル領域」という)を設定する。グローバル領域は、画像内に複数設けられる。たとえば、領域設定部64は、フレーム画像の中央付近を一つのグローバル領域とし、その周辺を別のグローバル領域に設定するなど、あらかじめ定められた領域をグローバル領域に設定してもよい。また、グローバル領域はユーザによって設定されてもよい。   The region setting unit 64 sets a region (hereinafter referred to as “global region”) for obtaining the global motion vector GMV on the frame image. A plurality of global areas are provided in the image. For example, the region setting unit 64 may set a predetermined region as the global region, such as setting the vicinity of the center of the frame image as one global region and setting the periphery thereof as another global region. The global area may be set by the user.

また、領域設定部64は、画像に人物等のオブジェクトが写っている場合、そのオブジェクトが写っている領域を自動抽出し、グローバル領域に設定してもよい。   In addition, when an object such as a person is captured in the image, the region setting unit 64 may automatically extract a region where the object is captured and set it as a global region.

領域設定部64は、局所動きベクトル検出部66により検出された画像内のローカル動きベクトルLMVを参照して、動きがある程度共通するマクロブロックが占める領域を自動抽出し、その領域をグローバル領域に設定してもよい。   The region setting unit 64 refers to the local motion vector LMV in the image detected by the local motion vector detection unit 66, automatically extracts a region occupied by a macroblock having a certain amount of motion, and sets the region as a global region. May be.

領域設定部64は、設定されたグローバル領域の情報を大域動きベクトル算出部68および大域動きベクトル差分符号化部74に与える。   The region setting unit 64 provides information on the set global region to the global motion vector calculation unit 68 and the global motion vector difference encoding unit 74.

大域動きベクトル算出部68は、領域設定部64により設定された各グローバル領域内の大域的な動きを示すグローバル動きベクトルGMVを算出する。たとえば、大域動きベクトル算出部68は、領域内のローカル動きベクトルLMVの平均を求め、グローバル動きベクトルGMVとする。   The global motion vector calculation unit 68 calculates a global motion vector GMV indicating a global motion in each global region set by the region setting unit 64. For example, the global motion vector calculation unit 68 obtains the average of local motion vectors LMV in the region and sets it as the global motion vector GMV.

また、大域動きベクトル算出部68は、各グローバル領域内の大域的な動きに関する情報を取得し、その情報をもとに各グローバル領域のグローバル動きベクトルGMVを算出してもよい。たとえば、カメラのズームやパン、画面のスクロールなどが行われた場合に、画面全体の動きに関する情報から、各グローバル領域内の大域的な動きを判断し、グローバル動きベクトルGMVを算出することができる。また、大域動きベクトル算出部68は、画面上の人物等のオブジェクトの動きを自動抽出し、オブジェクトの動きから各グローバル領域内の大域的な動きを判断し、グローバル動きベクトルGMVを算出することもできる。   Further, the global motion vector calculation unit 68 may acquire information on global motion in each global region and calculate a global motion vector GMV for each global region based on the information. For example, when the camera is zoomed or panned, the screen is scrolled, etc., the global motion in each global region can be determined from the information regarding the motion of the entire screen, and the global motion vector GMV can be calculated. . The global motion vector calculation unit 68 may automatically extract the motion of an object such as a person on the screen, determine a global motion in each global region from the motion of the object, and calculate a global motion vector GMV. it can.

大域動きベクトル算出部68は、求めたグローバル動きベクトルGMVを局所動きベクトル差分符号化部72と大域動きベクトル差分符号化部74に与える。   The global motion vector calculation unit 68 gives the obtained global motion vector GMV to the local motion vector difference encoding unit 72 and the global motion vector difference encoding unit 74.

局所動きベクトル差分符号化部72は、局所動きベクトル検出部66からローカル動きベクトルLMV、大域動きベクトル算出部68からグローバル動きベクトルGMVの入力をそれぞれ受け取り、グローバル領域毎に、グローバル領域内のローカル動きベクトルLMVとグローバル動きベクトルGMVの差分ΔLMV=LMV−GMVを算出し、このローカル動きベクトル差分ΔLMVを可変長符号化する。局所動きベクトル差分符号化部72は、符号化後のローカル動きベクトル差分ΔLMVを動きベクトル情報として多重化部92に与える。   The local motion vector differential encoding unit 72 receives the input of the local motion vector LMV from the local motion vector detection unit 66 and the input of the global motion vector GMV from the global motion vector calculation unit 68, respectively, and local motion in the global region for each global region. A difference ΔLMV = LMV−GMV between the vector LMV and the global motion vector GMV is calculated, and the local motion vector difference ΔLMV is variable-length encoded. The local motion vector difference encoding unit 72 supplies the encoded local motion vector difference ΔLMV to the multiplexing unit 92 as motion vector information.

大域動きベクトル差分符号化部74は、大域動きベクトル算出部68から各領域のグローバル動きベクトルGMVの入力を受け取り、少なくとも1つの領域のグローバル動きベクトルGMVを基準に選ぶ。基準となるグローバル動きベクトルGMVを基準グローバル動きベクトルGMVと呼ぶ。大域動きベクトル差分符号化部74は、基準グローバル動きベクトルGMV以外の各グローバル領域のグローバル動きベクトルGMVと基準グローバル動きベクトルGMVの差分ΔGMV=GMV−GMVを算出し、基準グローバル動きベクトルGMVとグローバル動きベクトル差分ΔGMVを可変長符号化する。 The global motion vector differential encoding unit 74 receives an input of the global motion vector GMV of each region from the global motion vector calculation unit 68 and selects it based on the global motion vector GMV of at least one region. The reference global motion vector GMV is referred to as a reference global motion vector GMV B. Global motion vector difference coding unit 74 calculates a difference ΔGMV = GMV-GMV B of the global motion vector GMV and the reference global motion vector GMV B reference global motion each global region other than the vector GMV B, the reference global motion vector GMV Variable length coding is performed on B and the global motion vector difference ΔGMV.

大域動きベクトル差分符号化部74は、符号化後の基準グローバル動きベクトルGMVと各グローバル領域のグローバル動きベクトル差分ΔGMVを動きベクトル情報として多重化部92に与える。このとき、大域動きベクトル差分符号化部74は、領域設定部64により設定されたグローバル領域についての領域情報を動きベクトル情報の一部に付加する。 The global motion vector difference encoding unit 74 gives the encoded reference global motion vector GMV B and the global motion vector difference ΔGMV of each global region to the multiplexing unit 92 as motion vector information. At this time, the global motion vector difference encoding unit 74 adds the region information about the global region set by the region setting unit 64 to a part of the motion vector information.

多重化部92には、動きベクトル情報として、基準グローバル動きベクトルGMV、グローバル動きベクトル差分ΔGMV、ローカル動きベクトル差分ΔLMVが与えられることになる。 The multiplexing unit 92 is provided with the reference global motion vector GMV B , the global motion vector difference ΔGMV, and the local motion vector difference ΔLMV as motion vector information.

図3は、動き補償部60による動きベクトルの差分符号化の手順を説明するフローチャートである。図4および図5の例を適宜参照しながら符号化の手順を説明する。   FIG. 3 is a flowchart for explaining the procedure of motion vector differential encoding by the motion compensation unit 60. The encoding procedure will be described with reference to the examples of FIGS. 4 and 5 as appropriate.

符号化装置100のフレームメモリ80に符号化対象画像が入力される(S10)。動き補償部60の局所動きベクトル検出部66は、符号化対象画像においてマクロブロック単位でローカル動きベクトルLMVを検出する(S12)。   An encoding target image is input to the frame memory 80 of the encoding apparatus 100 (S10). The local motion vector detection unit 66 of the motion compensation unit 60 detects the local motion vector LMV for each macroblock in the encoding target image (S12).

次に、領域設定部64は、画像上にグローバル領域を設定し(S14)、大域動きベクトル算出部68は、グローバル領域毎にグローバル動きベクトルGMVを算出する(S16)。   Next, the region setting unit 64 sets a global region on the image (S14), and the global motion vector calculation unit 68 calculates a global motion vector GMV for each global region (S16).

局所動きベクトル差分符号化部72は、グローバル領域毎にローカル動きベクトル差分ΔLMVを算出して符号化する(S18)。大域動きベクトル差分符号化部74は、グローバル領域毎にグローバル動きベクトル差分ΔGMVを算出して符号化する(S20)。   The local motion vector difference encoding unit 72 calculates and encodes the local motion vector difference ΔLMV for each global region (S18). The global motion vector difference encoding unit 74 calculates and encodes the global motion vector difference ΔGMV for each global region (S20).

図4(a)〜(c)は、グローバル領域の例を説明する図である。図4(a)の例では、領域設定部64は、符号化対象画像200上に第1グローバル領域211および第2グローバル領域212を設定する。大域動きベクトル算出部68は、第1グローバル領域211において第1グローバル動きベクトルGMV1を求め、第2グローバル領域212において第2グローバル動きベクトルGMV2を求める。この例では、第1グローバル領域211および第2グローバル領域212以外の背景部分には、グローバル動きベクトルを求めるための領域は設定されていない。   4A to 4C are diagrams illustrating an example of the global area. In the example of FIG. 4A, the region setting unit 64 sets the first global region 211 and the second global region 212 on the encoding target image 200. The global motion vector calculation unit 68 obtains the first global motion vector GMV1 in the first global area 211 and obtains the second global motion vector GMV2 in the second global area 212. In this example, no area for obtaining a global motion vector is set in the background portion other than the first global area 211 and the second global area 212.

図4(a)の場合、局所動きベクトル差分符号化部72は、第1グローバル領域211内のマクロブロック毎のローカル動きベクトルLMVを符号化する際、第1グローバル動きベクトルGMV1との差分ΔLMV=LMV−GMV1を求めて符号化する。同様に、局所動きベクトル差分符号化部72は、第2グローバル領域212内では、マクロブロック毎にローカル動きベクトルLMVと第2グローバル動きベクトルGMV2の差分ΔLMV=LMV−GMV2を求めて符号化する。   In the case of FIG. 4A, when the local motion vector difference encoding unit 72 encodes the local motion vector LMV for each macroblock in the first global region 211, the difference ΔLMV from the first global motion vector GMV1 = LMV-GMV1 is obtained and encoded. Similarly, the local motion vector difference encoding unit 72 obtains and encodes the difference ΔLMV = LMV−GMV2 between the local motion vector LMV and the second global motion vector GMV2 for each macroblock in the second global region 212.

図4(a)の例では、第1グローバル領域211および第2グローバル領域212以外の背景領域については、グローバル動きベクトルGMVは求められていないため、局所動きベクトル差分符号化部72は、背景領域内ではローカル動きベクトルLMVを、差分を求めることなくそのまま符号化する。   In the example of FIG. 4A, since the global motion vector GMV is not obtained for the background regions other than the first global region 211 and the second global region 212, the local motion vector difference encoding unit 72 The local motion vector LMV is encoded as it is without obtaining the difference.

図4(b)の例では、図4(a)の例とは違って、領域設定部64は、第1グローバル領域211および第2グローバル領域212以外の背景部分を第3グローバル領域210として設定し、大域動きベクトル算出部68は、第3グローバル領域210において第3グローバル動きベクトルGMV0を求める。局所動きベクトル差分符号化部72は、第3グローバル領域210内で、マクロブロック毎にローカル動きベクトルLMVと第3グローバル動きベクトルGMV0の差分ΔLMV=LMV−GMV0を求めて符号化する。   In the example of FIG. 4B, unlike the example of FIG. 4A, the region setting unit 64 sets the background portion other than the first global region 211 and the second global region 212 as the third global region 210. Then, the global motion vector calculation unit 68 obtains the third global motion vector GMV0 in the third global region 210. The local motion vector difference encoding unit 72 obtains and encodes the difference ΔLMV = LMV−GMV0 between the local motion vector LMV and the third global motion vector GMV0 for each macroblock in the third global region 210.

図4(c)は、符号化対象画像200上で複数のグローバル領域が互いに包含関係を有する例を示す。この例では、第1グローバル領域211の内部に第2グローバル領域212が包含されており、第1グローバル領域211および第2グローバル領域212は、その全体が第3グローバル領域210に包含されている。   FIG. 4C shows an example in which a plurality of global regions have an inclusion relationship with each other on the encoding target image 200. In this example, the second global area 212 is included in the first global area 211, and the first global area 211 and the second global area 212 are entirely included in the third global area 210.

局所動きベクトル差分符号化部72は、第2グローバル領域212の内側では、マクロブロック毎にローカル動きベクトルLMVと第2グローバル動きベクトルGMV2の差分を符号化し、第2グローバル領域212よりも外側で第1グローバル領域211の内側では、マクロブロック毎にローカル動きベクトルLMVと第1グローバル動きベクトルGMV1の差分を符号化する。また、第1グローバル領域211よりもさらに外側の第3グローバル領域210内では、マクロブロック毎にローカル動きベクトルLMVと第3グローバル動きベクトルGMV0の差分を符号化する。   The local motion vector difference encoding unit 72 encodes the difference between the local motion vector LMV and the second global motion vector GMV2 for each macro block inside the second global region 212, and the second outside the second global region 212. Inside the one global area 211, the difference between the local motion vector LMV and the first global motion vector GMV1 is encoded for each macroblock. Further, in the third global area 210 further outside the first global area 211, the difference between the local motion vector LMV and the third global motion vector GMV0 is encoded for each macroblock.

図5(a)〜(c)は、大域動きベクトル差分符号化部74によりグローバル動きベクトル差分を算出する例を説明する図である。ここでは、図4(b)あるいは図4(c)のように、3つのグローバル領域が設定され、各グローバル領域のグローバル動きベクトルGMV0、GMV1、GMV2が得られた場合に、それら3つのグローバル動きベクトルGMV0、GMV1、GMV2を符号化する例を説明する。   FIGS. 5A to 5C are diagrams illustrating an example in which a global motion vector difference is calculated by the global motion vector difference encoding unit 74. FIG. Here, as shown in FIG. 4 (b) or FIG. 4 (c), when three global areas are set and global motion vectors GMV0, GMV1, and GMV2 of the respective global areas are obtained, these three global movements are obtained. An example in which the vectors GMV0, GMV1, and GMV2 are encoded will be described.

図5(a)は、3つのグローバル動きベクトルGMV0、GMV1、GMV2の間に階層構造を設けない場合を示す。この場合、大域動きベクトル差分符号化部74は、3つのグローバル動きベクトルGMV0、GMV1、GMV2をすべて基準グローバル動きベクトルとして扱い、グローバル動きベクトル差分を求めることなく、それぞれ9ビットのグローバル動きベクトルGMV0、GMV1、GMV2をそのまま符号化し、出力する。   FIG. 5A shows a case where no hierarchical structure is provided between the three global motion vectors GMV0, GMV1, and GMV2. In this case, the global motion vector difference encoding unit 74 treats all three global motion vectors GMV0, GMV1, and GMV2 as reference global motion vectors, and obtains 9-bit global motion vectors GMV0, GMV1 and GMV2 are encoded as they are and output.

図5(b)は、3つのグローバル動きベクトルGMV0、GMV1、GMV2の間に階層構造を設ける場合であり、GMV0は上位の階層に位置し、GMV1とGMV2はGMV0のすぐ下の階層に位置する。このとき、大域動きベクトル差分符号化部74は、上位階層にあるグローバル動きベクトルGMV0を基準グローバル動きベクトルとして、下位階層にある各グローバル動きベクトルGMV1、GMV2と基準グローバル動きベクトルGMV0の差分ΔGMV1=GMV1−GMV0、ΔGMV2=GMV2−GMV0を符号化する。これにより、9ビットあった下位階層にある各グローバル動きベクトルGMV1、GMV2の符号量が、上位階層にあるグローバル動きベクトルGMV0との差分をとることでそれぞれ3ビット、4ビットに減っている。   FIG. 5B shows a case where a hierarchical structure is provided between the three global motion vectors GMV0, GMV1, and GMV2, where GMV0 is located in the upper hierarchy, and GMV1 and GMV2 are located in the hierarchy immediately below GMV0. . At this time, the global motion vector differential encoding unit 74 uses the global motion vector GMV0 in the upper layer as the reference global motion vector, and the difference ΔGMV1 = GMV1 between the global motion vectors GMV1 and GMV2 in the lower layer and the reference global motion vector GMV0. -Encode GMV0, [Delta] GMV2 = GMV2-GMV0. Thereby, the code amount of each of the global motion vectors GMV1 and GMV2 in the lower layer, which has 9 bits, is reduced to 3 bits and 4 bits by taking the difference from the global motion vector GMV0 in the upper layer.

図5(c)は、3つのグローバル動きベクトルGMV0、GMV1、GMV2の間に別の階層関係を設ける場合で、GMV0は最上位の階層に位置し、GMV1はGMV0の次の階層に位置し、GMV2はGMV1のさらに下の階層に位置する。このとき、大域動きベクトル差分符号化部74は、第1階層のグローバル動きベクトルGMV0を基準グローバル動きベクトルとして、第2階層のグローバル動きベクトルGMV1と第1階層のグローバル動きベクトルGMV0の差分ΔGMV1=GMV1−GMV0を符号化する。9ビットあった第2階層のグローバル動きベクトルGMV1の符号量が、第1階層のグローバル動きベクトルGMV0との差分をとることで3ビットに減っている。   FIG. 5C shows a case where another hierarchical relationship is provided between the three global motion vectors GMV0, GMV1, and GMV2, where GMV0 is located in the highest hierarchy, GMV1 is located in the next hierarchy of GMV0, GMV2 is located in a layer below GMV1. At this time, the global motion vector differential encoding unit 74 uses the first-layer global motion vector GMV0 as a reference global motion vector, and the difference ΔGMV1 = GMV1 between the second-layer global motion vector GMV1 and the first-layer global motion vector GMV0. -Encode GMV0. The code amount of the global motion vector GMV1 in the second layer, which was 9 bits, is reduced to 3 bits by taking the difference from the global motion vector GMV0 in the first layer.

次に、大域動きベクトル差分符号化部74は、第3階層のグローバル動きベクトルGMV2と第2階層のグローバル動きベクトルGMV1の差分ΔGMV2=GMV2−GMV1を符号化する。9ビットあった第3階層のグローバル動きベクトルGMV2の符号量が、第2階層のグローバル動きベクトルGMV1との差分をとることで2ビットに減っている。   Next, the global motion vector difference encoding unit 74 encodes the difference ΔGMV2 = GMV2−GMV1 between the global motion vector GMV2 in the third hierarchy and the global motion vector GMV1 in the second hierarchy. The code amount of the third-layer global motion vector GMV2 that is 9 bits is reduced to 2 bits by taking the difference from the global motion vector GMV1 of the second layer.

図5(b)、(c)のいずれの場合でも、大域動きベクトル差分符号化部74は、動きベクトル情報として、基準グローバル動きベクトルGMV0、および2つのグローバル動きベクトル差分ΔGMV1、ΔGMV2を出力する。このとき、3つのグローバル動きベクトルGMV0、GMV1、GMV2の間の階層構造を示す情報が動きベクトル情報の一部として付加される。   5B and 5C, the global motion vector difference encoding unit 74 outputs the reference global motion vector GMV0 and the two global motion vector differences ΔGMV1 and ΔGMV2 as motion vector information. At this time, information indicating a hierarchical structure between the three global motion vectors GMV0, GMV1, and GMV2 is added as a part of the motion vector information.

図5(b)、(c)の例で示したように、グローバル動きベクトルの間に適宜、階層構造を設け、隣り合う階層間で差分を取ることにより、グローバル動きベクトルの符号量を削減することができる。なお、上記の例では、階層構造の上位にあるグローバル動きベクトルを基準として、下位にあるグローバル動きベクトルと上位の基準グローバル動きベクトルとの差分を符号化したが、逆に、階層構造の下位にあるグローバル動きベクトルを基準として、上位にあるグローバル動きベクトルと下位の基準グローバル動きベクトルとの差分を符号化してもよい。   As shown in the examples of FIGS. 5B and 5C, a hierarchical structure is appropriately provided between global motion vectors, and the difference between adjacent layers is taken to reduce the code amount of the global motion vector. be able to. In the above example, the difference between the global motion vector at the lower level and the reference global motion vector at the higher level is encoded using the global motion vector at the higher level of the hierarchical structure as a reference. A difference between an upper global motion vector and a lower reference global motion vector may be encoded with a certain global motion vector as a reference.

グローバル動きベクトルの階層構造は、グローバル領域の包含関係とは無関係に決めてもよく、グローバル領域の包含関係の順序にしたがってグローバル動きベクトルの階層構造の順位を決めてもよい。   The global motion vector hierarchical structure may be determined regardless of the global region inclusion relationship, or the order of the global motion vector hierarchical structure may be determined according to the order of the global region inclusion relationship.

たとえば、図4(b)のように、第1グローバル領域211および第2グローバル領域212が第3グローバル領域210に包含されている場合、大域動きベクトル差分符号化部74は、そのグローバル領域の包含関係を利用して、図5(b)のように、第3グローバル領域210のグローバル動きベクトルGMV0を上位階層とし、第1グローバル領域211、第2グローバル領域212のグローバル動きベクトルGMV1、GMV2をそのすぐ下の階層とする階層構造を設けて、グローバル動きベクトルの差分符号化を行う。   For example, as shown in FIG. 4B, when the first global region 211 and the second global region 212 are included in the third global region 210, the global motion vector differential encoding unit 74 includes the global region. Using the relationship, as shown in FIG. 5B, the global motion vector GMV0 of the third global region 210 is set as the upper layer, and the global motion vectors GMV1 and GMV2 of the first global region 211 and the second global region 212 are used as the upper layer. A differential structure of the global motion vector is performed by providing a hierarchical structure immediately below.

また、図4(c)のように、第2グローバル領域212が第1グローバル領域211に含まれ、第1グローバル領域211および第2グローバル領域212が全体として第3グローバル領域210に含まれるという包含関係がある場合、大域動きベクトル差分符号化部74は、第3グローバル領域210のグローバル動きベクトルGMV0を最上位階層とし、第1グローバル領域211のグローバル動きベクトルGMV1を第2階層とし、第2グローバル領域212のグローバル動きベクトルGMV2を第3階層とする階層構造を設けて、グローバル動きベクトルの差分符号化を行う。   Further, as shown in FIG. 4C, the second global region 212 is included in the first global region 211, and the first global region 211 and the second global region 212 are included in the third global region 210 as a whole. When there is a relationship, the global motion vector differential encoding unit 74 sets the global motion vector GMV0 of the third global region 210 as the highest layer, the global motion vector GMV1 of the first global region 211 as the second layer, and the second global A hierarchical structure having the global motion vector GMV2 in the region 212 as the third hierarchy is provided, and differential encoding of the global motion vector is performed.

このように領域設定部64により設定されたグローバル領域の包含関係をグローバル動きベクトルの階層構造にそのまま用いるなら、グローバル領域の包含関係に関する情報が動きベクトル情報の一部に含まれていれば、グローバル動きベクトルの階層構造に関する情報を動きベクトル情報に別途含める必要はなく、ヘッダ情報のデータ量を削減することができる。   In this way, if the inclusion relation of the global area set by the area setting unit 64 is used as it is in the global motion vector hierarchical structure, if information on the inclusion relation of the global area is included in a part of the motion vector information, the global area It is not necessary to separately include information on the hierarchical structure of the motion vector in the motion vector information, and the data amount of the header information can be reduced.

また、グローバル領域の包含関係が、画像の中央付近と背景領域、あるいは特定のオブジェクトの領域とその背景などといった画像の動き量の相対的な違いを反映するものとなっている場合、グローバル領域の包含関係をそのままグローバル動きベクトルの階層構造に反映させ、その階層構造にしたがってグローバル動きベクトル差分を求めることで、差分を取ったときのビット数が少なくなることが一般的に期待できる。   In addition, if the inclusion relationship of the global area reflects the relative difference in the amount of motion of the image, such as near the center of the image and the background area, or the area of the specific object and its background, etc. It is generally expected that the number of bits when the difference is taken is reduced by reflecting the inclusion relationship as it is in the hierarchical structure of the global motion vector and obtaining the global motion vector difference according to the hierarchical structure.

図6は、実施の形態に係る復号装置300の構成図である。これらの機能ブロックもハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現することができる。   FIG. 6 is a configuration diagram of the decoding device 300 according to the embodiment. These functional blocks can also be realized in various forms by hardware only, software only, or a combination thereof.

復号装置300は、符号化ストリームの入力を受け取り、符号化ストリームを復号して出力画像を生成する。入力された符号化ストリームはフレームメモリ380に格納される。   The decoding apparatus 300 receives an input of the encoded stream, decodes the encoded stream, and generates an output image. The input encoded stream is stored in the frame memory 380.

可変長復号部310は、フレームメモリ380に格納された符号化ストリームを可変長復号し、復号された画像データを逆量子化部320に供給し、復号された動きベクトル情報を動き補償部360に供給する。   The variable length decoding unit 310 performs variable length decoding on the encoded stream stored in the frame memory 380, supplies the decoded image data to the inverse quantization unit 320, and supplies the decoded motion vector information to the motion compensation unit 360. Supply.

逆量子化部320は、可変長復号部310により復号された画像データを逆量子化し、逆DCT部330に供給する。逆量子化部320により逆量子化された画像データはDCT係数である。逆DCT部330は、逆量子化部320により逆量子化されたDCT係数を逆離散コサイン変換(IDCT)することにより、元の画像データを復元する。逆DCT部330により復元された画像データは、動き補償部360に供給される。   The inverse quantization unit 320 inversely quantizes the image data decoded by the variable length decoding unit 310 and supplies the image data to the inverse DCT unit 330. The image data inversely quantized by the inverse quantization unit 320 is a DCT coefficient. The inverse DCT unit 330 restores the original image data by performing inverse discrete cosine transform (IDCT) on the DCT coefficients inversely quantized by the inverse quantization unit 320. The image data restored by the inverse DCT unit 330 is supplied to the motion compensation unit 360.

動き補償部360は、過去または未来の画像フレームを参照画像として利用し、可変長復号部310から供給される動きベクトル情報を用いて予測画像を生成し、逆DCT部330から供給される差分画像と加算することにより、元の画像データを復元し、出力する。   The motion compensation unit 360 uses a past or future image frame as a reference image, generates a prediction image using the motion vector information supplied from the variable length decoding unit 310, and a difference image supplied from the inverse DCT unit 330. Is added to restore and output the original image data.

図7は、動き補償部360の構成を説明する図である。復号装置300に入力される符号化ストリームは、図1の符号化装置100により符号化されたものであり、動き補償部360に供給される動きベクトル情報として、基準グローバル動きベクトルGMV、グローバル動きベクトル差分ΔGMV、ローカル動きベクトル差分ΔLMVがある。動き補償部360は、これらの動きベクトル情報を参照して、復号対象フレームのローカル動きベクトルLMVを求め、動き補償を行う。 FIG. 7 is a diagram illustrating the configuration of the motion compensation unit 360. The encoded stream input to the decoding apparatus 300 is encoded by the encoding apparatus 100 of FIG. 1, and the reference global motion vector GMV B , global motion is the motion vector information supplied to the motion compensation unit 360. There are a vector difference ΔGMV and a local motion vector difference ΔLMV. The motion compensation unit 360 obtains a local motion vector LMV of the decoding target frame with reference to the motion vector information, and performs motion compensation.

大域動きベクトル算出部362は、可変長復号部310から基準グローバル動きベクトルGMVと各グローバル領域のグローバル動きベクトル差分ΔGMVの入力を受け取り、グローバル領域毎にグローバル動きベクトルGMV=ΔGMV+GMVを求め、局所動きベクトル算出部364に与える。 The global motion vector calculation unit 362 receives the input of the reference global motion vector GMV B and the global motion vector difference ΔGMV of each global region from the variable length decoding unit 310, obtains the global motion vector GMV = ΔGMV + GMV B for each global region, This is given to the motion vector calculation unit 364.

局所動きベクトル算出部364は、可変長復号部310からローカル動きベクトル差分ΔLMVの入力、大域動きベクトル算出部362から各グローバル領域のグローバル動きベクトルGMVの入力をそれぞれ受け取り、グローバル領域毎にローカル動きベクトルLMV=ΔLMV+GMVを求める。局所動きベクトル算出部364は、各グローバル領域内のローカル動きベクトルLMVを画像復元部366に与える。   The local motion vector calculation unit 364 receives the input of the local motion vector difference ΔLMV from the variable length decoding unit 310 and the input of the global motion vector GMV of each global region from the global motion vector calculation unit 362, and the local motion vector for each global region. LMV = ΔLMV + GMV is obtained. The local motion vector calculation unit 364 gives the local motion vector LMV in each global region to the image restoration unit 366.

画像復元部366は、参照画像と各グローバル領域内のマクロブロック単位のローカル動きベクトルLMVを用いて予測画像を生成し、逆DCT部330から与えられた差分画像と予測画像を加算して元の画像を復元し、出力する。   The image restoration unit 366 generates a prediction image using the reference image and the local motion vector LMV for each macroblock in each global region, adds the difference image given from the inverse DCT unit 330 and the prediction image, and adds the original image Restore and output the image.

以上述べたように、本実施の形態の符号化装置100によれば、動きベクトルを符号化する際に、空間領域内の動きベクトル情報をその領域のグローバル動きベクトルとの差分値で表すことにより、動きベクトル情報自体のデータ量を削減し、動画像ストリーム全体の符号量を減らして圧縮効率を高めることができる。また、各空間領域のグローバル動きベクトルの間に階層構造をもたせて、グローバル動きベクトルの差分を求めて符号化することにより、さらに動きベクトル情報の符号量を削減することができる。   As described above, according to encoding apparatus 100 of the present embodiment, when encoding a motion vector, motion vector information in a spatial region is represented by a difference value from the global motion vector of that region. In addition, the data amount of the motion vector information itself can be reduced, and the code amount of the entire moving image stream can be reduced to increase the compression efficiency. In addition, by providing a hierarchical structure between the global motion vectors of each spatial region and obtaining and encoding the difference between the global motion vectors, the amount of code of the motion vector information can be further reduced.

また、本実施の形態の復号装置300によれば、符号化装置100により符号化された圧縮効率の高い動画ストリームから、ローカル動きベクトルの差分値を取得し、空間領域毎にローカル動きベクトルの差分値をグローバル動きベクトルに加算してローカル動きベクトルを求め、動き補償を行うことにより、画質の高い動画像を復元することができる。   Also, according to decoding apparatus 300 of the present embodiment, a local motion vector difference value is acquired from a moving image stream with high compression efficiency encoded by encoding apparatus 100, and the difference between local motion vectors for each spatial region. A moving image with high image quality can be restored by adding a value to a global motion vector to obtain a local motion vector and performing motion compensation.

以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。   The present invention has been described based on the embodiments. The embodiments are exemplifications, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are within the scope of the present invention. .

上記の説明では、符号化装置100および復号装置300は、MPEGシリーズの規格(MPEG−1、MPEG−2およびMPEG−4)、H.26xシリーズの規格(H.261、H.262およびH.263)、もしくはH.264/AVCに準拠して動画像の符号化および復号を行ったが、本発明は、時間的スケーラビリティをもつ階層的な動画像の符号化および復号を行う場合にも適用することができる。特にMCTF技術を用いた場合の動きベクトルの符号化において、動きベクトルの符号量を削減するために本発明は有効である。   In the above description, the encoding device 100 and the decoding device 300 are MPEG series standards (MPEG-1, MPEG-2, and MPEG-4), H.264, and H.264. 26x series standards (H.261, H.262 and H.263), or H.264 Although video encoding and decoding are performed in accordance with H.264 / AVC, the present invention can also be applied to the case of hierarchical video encoding and decoding with temporal scalability. In particular, the present invention is effective in reducing the amount of motion vector codes in the encoding of motion vectors when the MCTF technique is used.

実施の形態に係る符号化装置の構成図である。It is a block diagram of the encoding apparatus which concerns on embodiment. 図1の動き補償部の構成を説明する図である。It is a figure explaining the structure of the motion compensation part of FIG. 図2の動き補償部による動きベクトルの差分符号化の手順を説明するフローチャートである。3 is a flowchart illustrating a procedure for differential encoding of a motion vector by a motion compensation unit in FIG. 2. 図2の領域設定部により画像上に設定される領域の例を説明する図である。It is a figure explaining the example of the area | region set on an image by the area | region setting part of FIG. 図2の大域動きベクトル差分符号化部によりグローバル動きベクトル差分を算出する例を説明する図である。It is a figure explaining the example which calculates a global motion vector difference by the global motion vector difference encoding part of FIG. 実施の形態に係る復号装置の構成図である。It is a block diagram of the decoding apparatus which concerns on embodiment. 図6の動き補償部の構成を説明する図である。It is a figure explaining the structure of the motion compensation part of FIG.

符号の説明Explanation of symbols

20 DCT部、 30 量子化部、 60 動き補償部、 64 領域設定部、 66 局所動きベクトル検出部、 68 大域動きベクトル算出部、 70 動き補償予測部、 72 局所動きベクトル差分符号化部、 74 大域動きベクトル差分符号化部、 80 フレームメモリ、 90 可変長符号化部、 92 多重化部、 100 符号化装置、 300 復号装置、 310 可変長復号部、 320 逆量子化部、 330 逆DCT部、 360 動き補償部、 362 大域動きベクトル算出部、 364 局所動きベクトル算出部、 366 画像復元部、 380 フレームメモリ。   20 DCT section, 30 quantization section, 60 motion compensation section, 64 area setting section, 66 local motion vector detection section, 68 global motion vector calculation section, 70 motion compensation prediction section, 72 local motion vector differential encoding section, 74 global Motion vector differential encoding unit, 80 frame memory, 90 variable length encoding unit, 92 multiplexing unit, 100 encoding device, 300 decoding device, 310 variable length decoding unit, 320 inverse quantization unit, 330 inverse DCT unit, 360 Motion compensation unit, 362 global motion vector calculation unit, 364 local motion vector calculation unit, 366 image restoration unit, 380 frame memory.

Claims (7)

動画像を構成するピクチャであって、ピクチャ間予測符号化されるピクチャ上に定義された複数の領域の内、少なくとも1つの領域について、その領域内の大域的な動きを示す大域動きベクトルの情報を前記動画像の符号化データに含めることを特徴とする符号化方法。   Global motion vector information indicating a global motion in at least one area of a plurality of areas defined on a picture that is a moving picture and is inter-picture prediction encoded Is included in the encoded data of the moving image. 2つ以上の領域について大域動きベクトルが定義されている場合に、異なる領域の大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項1に記載の符号化方法。   The code according to claim 1, wherein when global motion vectors are defined for two or more regions, difference information between global motion vectors of different regions is included in the encoded data of the moving image. Method. 2つ以上の領域について大域動きベクトルが定義されている場合に、少なくとも1つの大域動きベクトルを基準に選び、その基準となる大域動きベクトルと他の大域動きベクトルとの差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項1に記載の符号化方法。   When global motion vectors are defined for two or more regions, at least one global motion vector is selected as a reference, and difference information between the reference global motion vector and another global motion vector is selected from the moving image. The encoding method according to claim 1, wherein the encoding method is included in the encoded data. 2つ以上の領域について大域動きベクトルが定義されている場合に、各領域の大域動きベクトル間に階層構造をもたせ、異なる階層の大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項1に記載の符号化方法。   When global motion vectors are defined for two or more regions, a hierarchical structure is provided between the global motion vectors of each region, and difference information between the global motion vectors of different layers is included in the encoded data of the moving image. The encoding method according to claim 1, wherein the encoding method is included. 前記複数の領域が互いに包含関係を有する場合、その包含関係の順序にしたがった各領域の大域動きベクトル間の差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項2から4のいずれかに記載の符号化方法。   The difference information between global motion vectors of each region according to the order of the inclusion relationship when the plurality of regions have an inclusion relationship with each other is included in the encoded data of the moving image. 5. The encoding method according to any one of 4. 前記包含関係の上位にある領域の大域動きベクトルを基準とした包含関係の下位にある大域動きベクトルとの差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項5に記載の符号化方法。   6. The encoded data of the moving image includes difference information with respect to a global motion vector at a lower level of an inclusion relationship based on a global motion vector of a region at an upper level of the inclusion relationship. Encoding method. 前記ピクチャ間予測符号化されるピクチャについて所定のブロック単位の局所動きベクトルが定義されている場合に、前記領域毎に前記大域動きベクトルと前記局所動きベクトルとの差分情報を前記動画像の前記符号化データに含めることを特徴とする請求項1から6のいずれかに記載の符号化方法。   When a local motion vector in a predetermined block unit is defined for the picture to be subjected to the inter-picture predictive coding, difference information between the global motion vector and the local motion vector is obtained for each region by using the code of the moving image. The encoding method according to claim 1, wherein the encoding method is included in encoded data.
JP2005219590A 2005-07-28 2005-07-28 Coding method Withdrawn JP2007036887A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005219590A JP2007036887A (en) 2005-07-28 2005-07-28 Coding method
US11/494,767 US20070025444A1 (en) 2005-07-28 2006-07-28 Coding Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005219590A JP2007036887A (en) 2005-07-28 2005-07-28 Coding method

Publications (1)

Publication Number Publication Date
JP2007036887A true JP2007036887A (en) 2007-02-08

Family

ID=37795556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005219590A Withdrawn JP2007036887A (en) 2005-07-28 2005-07-28 Coding method

Country Status (1)

Country Link
JP (1) JP2007036887A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007102356A1 (en) 2006-02-22 2007-09-13 Ricoh Company, Ltd. Image processing method, recorded matter, program, image processing apparatus, image forming apparatus, image forming system and ink
JP2011512766A (en) * 2008-02-21 2011-04-21 フランス・テレコム Coding and decoding of an image or a sequence of images divided into pixel blocks

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007102356A1 (en) 2006-02-22 2007-09-13 Ricoh Company, Ltd. Image processing method, recorded matter, program, image processing apparatus, image forming apparatus, image forming system and ink
JP2011512766A (en) * 2008-02-21 2011-04-21 フランス・テレコム Coding and decoding of an image or a sequence of images divided into pixel blocks
US8787685B2 (en) 2008-02-21 2014-07-22 France Telecom Encoding and decoding an image or image sequence divided into pixel blocks
US8917945B2 (en) 2008-02-21 2014-12-23 Orange Encoding and decoding an image or image sequence divided into pixel blocks
US8971648B2 (en) 2008-02-21 2015-03-03 Orange Encoding and decoding an image or image sequence divided into pixel blocks

Similar Documents

Publication Publication Date Title
US20250080775A1 (en) System and method for video encoding using constructed reference frame
US7310371B2 (en) Method and/or apparatus for reducing the complexity of H.264 B-frame encoding using selective reconstruction
JP2008011455A (en) Coding method
JP5061179B2 (en) Illumination change compensation motion prediction encoding and decoding method and apparatus
JP4703449B2 (en) Encoding method
US20070025444A1 (en) Coding Method
US20070025442A1 (en) Coding method for coding moving images
US20070047649A1 (en) Method for coding with motion compensated prediction
JP2009532979A (en) Method and apparatus for encoding and decoding an FGS layer using a weighted average
WO2006103844A1 (en) Encoder and encoding method, decoder and decoding method
JP2007266749A (en) Encoding method
WO2012098845A1 (en) Image encoding method, image encoding device, image decoding method, and image decoding device
JP2007235314A (en) Coding method
JP4401336B2 (en) Encoding method
JP4660408B2 (en) Encoding method
JP2007081720A (en) Coding method
US6697430B1 (en) MPEG encoder
JP2007325024A (en) Image coding apparatus and image coding method
JP2007036888A (en) Coding method
JP2007036889A (en) Coding method
JP2007266750A (en) Encoding method
JP2007088922A (en) Encoding apparatus and encoding method
JP4243286B2 (en) Encoding method
JP4401341B2 (en) Encoding method
JP4169767B2 (en) Encoding method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080428

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090709