JP2005510985A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2005510985A5 JP2005510985A5 JP2003548553A JP2003548553A JP2005510985A5 JP 2005510985 A5 JP2005510985 A5 JP 2005510985A5 JP 2003548553 A JP2003548553 A JP 2003548553A JP 2003548553 A JP2003548553 A JP 2003548553A JP 2005510985 A5 JP2005510985 A5 JP 2005510985A5
- Authority
- JP
- Japan
- Prior art keywords
- block
- macroblock
- field
- mode
- frame
- 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.)
- Pending
Links
- 230000002457 bidirectional Effects 0.000 claims description 8
- 241000122133 Panicum mosaic virus Species 0.000 description 48
- 230000002123 temporal effect Effects 0.000 description 28
- 238000007906 compression Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 238000001914 filtration Methods 0.000 description 5
- 238000010187 selection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000006011 modification reaction Methods 0.000 description 4
- 230000003044 adaptive Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000875 corresponding Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- JLQFVGYYVXALAG-CFEVTAHFSA-N Yasmin 28 Chemical compound OC1=CC=C2[C@H]3CC[C@](C)([C@](CC4)(O)C#C)[C@@H]4[C@@H]3CCC2=C1.C([C@]12[C@H]3C[C@H]3[C@H]3[C@H]4[C@@H]([C@]5(CCC(=O)C=C5[C@@H]5C[C@@H]54)C)CC[C@@]31C)CC(=O)O2 JLQFVGYYVXALAG-CFEVTAHFSA-N 0.000 description 1
- 230000001174 ascending Effects 0.000 description 1
- 229920003045 dextran sodium sulfate Polymers 0.000 description 1
- 235000019329 dioctyl sodium sulphosuccinate Nutrition 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000750 progressive Effects 0.000 description 1
Description
本発明は、デジタルビデオコンテンツの符号化及び復号に関し、より具体的には、本発明は、MPEG−4 Part 10 AVC/H.264ビデオ符号化規格において使用され、デジタルビデオコンテンツのマクロブロックレベルにおけるフレームモード符号化及びフィールドモード符号化に関する。
ビデオ圧縮は、多くの既存の製品及び新規の製品において使用されている。ビデオ圧縮は、デジタルテレビジョンセットトップボックス(set-top boxes:STB)、デジタル衛星放送システム(digital satellite systems:DSS)、高精細度テレビジョン(high definition television:HDTV)デコーダ、デジタルバーサタイルディスク(digital versatile disk:DVD)プレーヤ、テレビ会議、インターネットビデオ及びマルチメディアコンテンツ、及び他のデジタルビデオの用途において重要である。デジタルビデオコンテンツは、ビデオ圧縮しなければ、非常にデータ量が大きいため、効率よく保存し、伝送し、表示することは不可能又は困難である。
デジタルビデオコンテンツは、テレビジョン受像機、コンピュータモニタ又はデジタルビデオコンテンツを表示可能な他の電子機器に画像として表示されるピクチャのストリームからなる。特定のピクチャの前に表示されるピクチャは、この特定のピクチャの「前方」にある。また、この特定のピクチャの後に表示されるピクチャは、この特定のピクチャの「後方」にある。
ビデオ圧縮は、各ピクチャを1つのフレーム又は2つのフィールドとして符号化するビデオ符号化処理、すなわちコーディング処理において行われる。各フレームは、空間情報の数多くのラインからなる。例えば、一般的なフレームは、480本の水平ラインを含む。各フィールドは、1フレームの半分のラインを含んでいる。例えば、フレームが480水平ラインからなるときには、各フィールドは240水平ラインからなる。代表的な構成では、一方のフィールドは、フレーム内の奇数ラインからなり、他方のフィールドは、フレーム内の偶数ラインからなる。以下及び特許請求の範囲では、特別に定義する場合を除いて、奇数ラインからなるフィールドを「トップ」フィールドと呼ぶ。また、以下及び特許請求の範囲では、特別に定義する場合を除いて、偶数ラインからなるフィールドを「ボトム」フィールドと呼ぶ。2つのフィールドは、互いにインタレースされ、インタレースされたフレーム(以下、インタレースフレームという。)が形成される。
包括的に言えば、ビデオ符号化は、デジタルビデオコンテンツデータから「必須でない(non-essential)」データを除去することによって行われる。データ量を削減することにより、放送又は伝送時に必要とされる帯域幅が削減される。圧縮されたビデオデータは、伝送された後、復号又は伸長する必要がある。この処理では、伝送されてきたビデオデータを処理して、符号化処理において除去された「必須でない」データに代えてビデオデータに組み込むための近似データを生成する。
ビデオ符号化は、圧縮されていないデジタルビデオコンテンツよりも少ない容量で保存できるように、又は狭い帯域幅で伝送できるように、デジタルビデオコンテンツを圧縮された形式に変換する。圧縮は、ビデオコンテンツのピクチャにおける時間的及び空間的な冗長を利用している。デジタルビデオコンテンツは、例えばハードディスク、DVD、他の不揮発性記憶装置等のストレージ媒体に格納することができる。
デジタルビデオコンテンツを圧縮するビデオ符号化方法には数多くのものがある。そのため、ビデオエンコーダ及びビデオデコーダの大半が認識できる形式で圧縮デジタルビデオコンテンツを表現するように、様々なデジタルビデオ符号化方法を標準化するビデオ符号化規格が開発されている。例えば、モーションピクチャエキスパートグループ(Motion Picture Experts Group:以下、MPEGという。)及び国際電気通信連合(International Telecommunication Union:以下、ITU−Tという。)は、広く使われているビデオ符号化規格を開発している。これらの規格の例として、MPEG−1規格、MPEG−2規格、MPEG−4規格、ITU−T勧告H.261、ITU−T勧告H.263がある。
MPEG及びITU−Tによって開発された規格を始めとる大部分の最新のビデオ符号化規格は、1つには、動き補償(motion compensation:以下、MCという。)アルゴリズムを有する時間的予測に基づいてる。動き補償を有する時間的予測は、デジタルビデオ放送における連続するピクチャ間の時間的冗長を削減するために、用いられる。
動き補償アルゴリズムを有する時間的予測では、通常、個々のピクチャを符号化するために1つ又は2つの参照ピクチャを用いる。参照ピクチャは、既に符号化されたピクチャである。動き補償アルゴリズムを有する時間的予測では、符号化する特定のピクチャと参照ピクチャとを比較することによって、参照ピクチャと符号化する特定のピクチャ間の時間的冗長を利用し、仮に動き補償アルゴリズムを有する時間的予測を用いなかった場合と比べ、より高い圧縮率でピクチャを符号化することができる。参照ピクチャの一方は、符号化する特定のピクチャの後方にある。他方の参照ピクチャは、符号化する特定のピクチャの前方にある。
しかしながら、より高い解像度、より複雑な画像コンテンツ、より速い伝送速度を実現する要求に応じて、より優れたビデオ圧縮方法が望まれている。このために、現在、国際標準化機構(International Organization for Standardization:以下、ISOという。)及び国際電気通信連合(International Telecommunication Union:以下、ITU−Tという。)が協力して新たなビデオ符号化規格を開発している。この新たなビデオ符号化規格は、MPEG−4 Part10 アドバンストビデオ符号化(Advanced Video Coding:以下、AVCという。)/H.264規格と呼ばれている。
可能な数多くの実施例の1つとして、本発明は、デジタルビデオコンテンツのビットストリームを符号化、復号及び生成する方法を提供する。デジタルビデオコンテンツは、イントラピクチャ、前方予測ピクチャ又は両方向予測ピクチャとすることができるピクチャのストリームからなる。各ピクチャは、マクロブロックからなり、マクロブロックは更により小さく分割することができる。本発明に係る符号化又は復号方法は、イントラピクチャ、前方予測ピクチャ又は両方向予測ピクチャとすることができる、マクロブロックを含むピクチャのストリームからなるデジタルビデオコンテンツを符号化又は復号する符号化又は復号方法において、フレームモード又はフィールドモードの隣接したマクロブロックのグループを、符号化又は復号するために選択するステップと、選択したフレームモード又はフィールドモードのマクロブロックに基づいて、隣接したマクロブロックのグループを、フレームマクロブロック又はフィールドマクロブロックで処理するために配列するステップと、フレームマクロブロック又はフィールドマクロブロックを符号化又は復号するステップとを有する。上記隣接したマクロブロックのグループを、フレームマクロブロック又はフィールドマクロブロックで処理するために配列するステップでは、フレームモードにおいては、隣接したマクロブロックのグループを、トップフィールド画素とボトムフィールド画素の両方を含むフレームマクロブロックに分割し、隣接したマクロブロックのグループの2つフィールドを一緒に処理し、フィールドモードにおいては、隣接したマクロブロックのグループを、トップフィールド画素とボトムフィールド画素のどちらかを含むフィールドマクロブロックに分割し、隣接したマクロブロックのグループの2つフィールドを別々に処理する。上記フレームマクロブロックと上記フィールドマクロブロックは、同じサイズである。
本発明は、複数のピクチャのストリーム(以下、ピクチャストリームという。)からなるデジタルビデオコンテンツのマクロブックレベルでの適応フレーム/フィールド(以下、AFFという。)符号化方法を提供する。本発明は、ピクチャレベルのAFF符号化の概念をマクロブロックに拡張する。ピクチャレベルでのAFF符号化において、符号化するピクチャストリームの各ピクチャは、他のピクチャがフレームモード又はフィールドモードの何れで符号化されているかにかかわらずフレームモード又はフィールドモードで符号化される。ピクチャをフレームモードで符号化する場合、インタレースされたフレームを構成する2つのフィールドを一緒に符号化する。一方、ピクチャをフィールドモードで符号化する場合、インタレースされたフレームを構成する2つのフィールドを別々に符号化する。エンコーダは、フレームモード符号化とフィールドモード符号化のうちの、どちらのタイプが各ピクチャに対してより有利であるかを判定し、ピクチャの符号化タイプを選択する。フレームモードとフィールドモードとから選択する完全な方法は、本発明において重要でないので、詳細は省略する。
上述のように、MPEG−4 Part10 AVC/H.264規格は、デジタルビデオコンテンツを符号化して圧縮する新たな規格である。引用により本願に援用されるMPEG−4 Part10 AVC/H.264規格を制定している勧告書は、ジョイントビデオチーム(Joint Video Team:JVT)によって2002年8月10日に発行された「ジョイントビデオ仕様の共同最終委員会草案(Joint Final Committee Draft (JFCD) of Joint Video Specification)」を包含している(ITU−T勧告H.264&ISO/IEC 14496−10 AVC)。JVTは、ISO又はMPEG及びITU−Tの専門家らによって構成されている。MPEG−4 Part10 AVC/H.264規格は公に知られているため、本明細書では、MPEG−4 Part10 AVC/H.264ビデオ符号化規格の特徴を全て詳細に記載することはしないが、本発明は、この規格の仕様に基づいて実現される。
ここに説明するAFF符号化方法は、MPEG−4 Part10 AVC/H.264規格の定めるガイドラインと互換性があり、これに則した説明を行うが、このAFF符号化方法は、特定の規格又は用途に応じて、適宜変更することができる。
以下、図面を参照して、本発明の好ましい実施例について説明する。
図1は、本発明を実現するために用いることができる3種類のピクチャのシーケンスの具体例を示しており、これらは、MPEG−4 Part10 AVC/H.264規格を始めとする代表的なビデオ符号化方法において定義されている。上述のように、エンコーダはピクチャを符号化し、デコーダはピクチャを復号する。エンコーダ又はデコーダは、プロセッサ、特定用途向け集積回路(application specific integrated circuit:ASIC)、フィールドプログラマブルゲートアレー(field programmable gate array:FPGA)、エンコーダ/デコーダ(coder/decoder:CODEC)、デジタルシグナルプロセッサ(digital signal processor:DSP)、又はピクチャストリームを符号化できる他の電子回路等の何れであってもよいが、以下及び特許請求の範囲において、特別に定義する場合を除き、「エンコーダ」という用語は、ピクチャストリームからなるデジタルビデオコンテンツを符号化する全ての電子回路を含むものとする。また、「デコーダ」という用語は、ピクチャストリームからなるデジタルビデオコンテンツを復号する全ての電子回路を含むものとする。
ビデオ符号化方法に用いることができるピクチャの3つのタイプを図1に示す。3つのピクチャタイプは、記憶されているデジタルビデオコンテンツのランダムアクセスをサポートし、動き補償を有する時間的予測を用いて、最大の冗長抑圧(the maximum redundancy reduction)を探索するよう定義されている。3つのピクチャタイプには、イントラピクチャ(intra picture:以下、Iピクチャという。)(100)と、前方予測ピクチャ(predicted picture:以下、Pピクチャという。)(102a、102b)と、両方向予測ピクチャ(bi-predicted picture:以下、Bピクチャという。)(101a〜101d)とがある。Iピクチャ(100)は、記憶されているデジタルビデオコンテンツにランダムアクセスするためのアクセスポイントになっており、低い圧縮率で符号化される。イントラピクチャ(100)は、参照ピクチャを参照することなく符号化される。
前方予測ピクチャ(102a,102b)は、既に符号化されたI、P、Bピクチャを参照ピクチャとして用いて符号化される。符号化するPピクチャに対して時間的に前方又は後方のピクチャの何れも参照ピクチャとして用いることができる。前方予測ピクチャ(102a、102b)は、イントラピクチャ(100)よりも高い圧縮率で符号化することができる。
両方向予測ピクチャ(101a〜101d)は、前方参照ピクチャと後方参照ピクチャとの2つの時間的な参照ピクチャを用いて符号化される。前方参照ピクチャは過去参照ピクチャと呼ばれることもあり、後方参照ピクチャは未来参照ピクチャと呼ばれることもある。本発明の実施例では、前方参照ピクチャ及び後方参照ピクチャは、符号化するBピクチャに対して時間的に同一方向にあってもよい。両方向予測ピクチャ(101a〜101d)は、3つのピクチャタイプのうちで最も高い圧縮率で符号化することができる。
図1は、3つのピクチャタイプの間の参照関係(103)を示している。例えば、Pピクチャ(102a)は、符号化されたIピクチャ(100)を参照ピクチャとして用いて符号化することができる。Bピクチャ(101a〜101d)は、図1に示すように、符号化されたIピクチャ(100)及び/又は符号化されたPピクチャ(102a)を参照ピクチャとして用いて符号化することができる。本発明の原理に基づけば、符号化されたBピクチャ(101a〜101d)は、符号化する他のBピクチャの参照ピクチャとして用いることもできる。例えば、図1に示すBピクチャ(101c)は、他の2つのBピクチャ(101b、101d)を参照ピクチャとしている。
図1に示すIピクチャ(100)、Bピクチャ(101a〜101d)、Pピクチャ(102a、102b)の各番号及び順序は、ピクチャの配置の一例を示しているに過ぎず、本発明を実現する上で必須要件ではない。特定の用途に応じて、どのような数のIピクチャ、Bピクチャ、Pピクチャをどのような順序で用いてもよい。MPEG−4 Part 10 AVC/H.264規格は、2つの参照ピクチャ間のBピクチャの数又は2つのIピクチャ間のピクチャの数に関して何の制約も課していない。
図2に示すように、各ピクチャ(200)は、好ましくは複数のスライス(202)に分割される。各スライス(202)は、一群のマクロブロック(201)を含んでいる。マクロブロック(201)は、一群の画素である。図2に示すように、好ましいマクロブロック(201)のサイズは、16×16画素である。
図3(a)〜図3(f)は、マクロブロックが更により小さいブロックに分割できることを示している。例えば、図3(a)〜図3(f)に示すように、マクロブロックは、更に16×8画素(図3a;300)、8×16画素(図3b;301)、8×8画素(図3c;302)、8×4画素(図3d;303)、4×8画素(図3e;304)、4×4画素(図3f;305)等のブロックサイズに分割することができる。これらのより小さなブロックサイズは、好ましくは、動き補償アルゴリズムを有する時間的予測を行う幾つかの用途において用いられる。
図4は、本発明の実施例として示す動き補償を有する時間的予測を用いたピクチャ構造の一例を示している。動き補償を有する時間的予測では、現在のピクチャであるピクチャN(400)は、他のピクチャN−1(401)を移動することによって局所的に作る(model)ことができるとみなされる。ピクチャN−1(401)は、ピクチャN(400)を符号化するための参照ピクチャであり、ピクチャN(400)に対して時間的に前方にあっても後方にあってもよい。
図4に示すように、各ピクチャは、好ましくは、マクロブロック(201a、201b)を含むスライスに分割されている。ピクチャN−1(401)は、ピクチャN(400)に示される画像(403)を含んでいる。図4に示すように、画像(403)は、ピクチャN(400)では、ピクチャN−1(401)における位置とは異なる時間的位置(402)にある。ピクチャN(400)の各マクロブロック(201a)の画像内容は、画像(403)がピクチャN(400)における新たな時間的位置(402)に移動するために必要とされるピクチャN−1(401)の各マクロブロック(201b)の画像内容の時間的動き量を推測することによって、ピクチャN−1(401)の対応するマクロブロック(201b)の画像内容から予測符号化される。実際には、符号化している元の画像(402)ではなく、画像(402)とこの画像の予測画像(403)との間の予測誤差(404)が符号化され、伝送される。
ピクチャN(400)内の各画像(402)に対して、時間的予測は、画像(403)がピクチャN(400)内の新たな時間的位置(402)に移動するときに必要とされる時間的動き量を示す動きベクトルによって表すことができる。動き補償を有する時間的予測に使用される動きベクトル(406)は、符号化及び伝送される必要がある。
図4は、ピクチャN(400)内の画像(402)が、画像とこの画像の予測値間の予測誤差(404)と、関連する動きベクトル(406)とによって表現されることを示している。動きベクトルを用いた符号化の完全な方法は、特定の用途に応じて変更することができ、この変更は、当業者にとって容易である。
マクロブロックレベルのAFF符号化に関する理解を得るために、まず、ピクチャストリームにおけるピクチャレベルのAFF符号化の概要について説明する。インタレースシーケンスのフレームは、トップフィールドとボトムフィールドの2つのフィールドを含み、トップフィールドとボトムフィールドは、インタリーブされており、フィールド周期に対応する時間離れている。フィールド周期は、フレーム周期の半分である。ピクチャレベルのAFF符号化では、インタレースフレームの2つのフィールドを一緒に符号化してもよく、別々に符号化してもよい。これらの2つのフィールドを一緒に符号化する場合、フレームモード符号化を用いる。一方、これらの2つのフィールドを別々に符号化する場合は、フィールドモード符号化を用いる。
一方、固定フレーム/フィールド符号化では、ピクチャストリーム内のピクチャを1つのモードのみで符号化する。このモードは、フレームモードであってもフィールドモードであってもよい。多くの用途において、ピクチャレベルのAFF符号化では、エンコーダが、デジタルビデオ素材の内容に基づいて、フレームモード又はフィールドモードを選択して、ピクチャストリーム内の各ピクチャを符号化できるので、ピクチャレベルのAFF符号化は、固定フレーム/フィールド符号化よりも優れている。多くの場合、AFF符号化は、固定フレーム/フィールド符号化に比べて、より良好な圧縮率を実現できる。
本発明の実施例では、ピクチャにおけるより小さい部分に対して、AFF符号化を行う。この小さい部分は、マクロブロックであってもよく、マクロブロックの対であってもよく、マクロブロックのグループであってもよい。各マクロブロック、マクロブロックの対、又はマクロブロックのグループ、若しくはスライスは、ピクチャ内の他のマクロブロックがどのようなモードで符号化されるかにかかわらず、フレームモードでもフィールドモードでも符号化することができる。これらの各ケースのAFF符号化について、以下に詳細に説明する。
第1のケースでは、AFF符号化を単一のマクロブロックに対して行う。マクロブロックをフレームモードで符号化する場合、マクロブロック内の2つのフィールドが一緒に符号化される。マクロブロックは、一旦フレームとして符号化されると、動き補償アルゴリズムを有する時間的予測に用いるために、図3a〜図3fに示すようなより小さなブロックに更に分割される。
なお、マクロブロックをフィールドモードで符号化する場合、図5に示すように、マクロブロック(500)は、トップフィールド(501)とボトムフィールド(502)とに分割される。これらの2つのフィールドは、別々に符号化される。図5に示すマクロブロック(500)は、N列M行の画素を有する。N及びMの好ましい値は16であり、この場合、マクロブロック(500)は、16×16画素を含む。図5では、1行おきの画素にハッチングを施している。ハッチングされた領域は、マクロブロック(500)のトップフィールドの画素の行を示し、ハッチングされていない領域は、マクロブロック(500)のボトムフィールドの画素の行を示している。
図6a〜図6dに示すように、フィールドモードで符号化する画素は、4つの更なるブロックに分割することができる。1つのブロックは、単一のパリティを有する必要がある。この単一のパリティの要件のために、ブロックをトップフィールドとボトムフィールドから構成することができない。すなわち、ブロックは、単一のパリティのフィールドを含む必要がある。したがって、図6a〜図6dに示すように、フィールドモードマクロブロックは、16×8画素(図6a:600)、8×8画素(図6b:601)、4×8画素(図6c:602)、4×4画素(図6d:603)に分割することができる。図6a〜図6dは、各ブロックが単一のパリティのフィールドを含んでいることを示している。
次に、マクロブロックの対に対するAFF符号化について説明する。マクロブロックの対に対するAFF符号化は、対ベースのAFF符号化(pair based AFF coding)と呼ばれることもある。図6a〜図6dに示すブロックサイズと、図3a〜図3fに示すブロックサイズとを比較することにより、フィールドモードによって符号化するブロックは、フレームモードによって符号化するマクロブロックより、分割できるブロックパターンが少ないことがわかる。単一のパリティの要件のために、フィールドモードで符号化するマクロブロックでは、16×16画素、8×16画素、8×4画素のブロックサイズを用いることができない。これは、単一マクロブロックベースのAFF符号化は、フィールドモード符号化が強く望まれる幾つかのシーケンス又は用途においては、好ましくないことを意味している。フィールドモードでのマクロブロックの符号化の性能を保証するために、幾つかの用途では、フィールドモードで符号化するマクロブロックが、フレームモードで符号化するマクロブロックと同じブロックサイズを有することが望まれる。これは、単一のマクロブロックに対してではなく、マクロブロックの対に対してAFF符号化を行うことによって実現することができる。
図7は、本発明の実施例に基づき、一対のマクロブックに対するAFF符号化において用いることができる、マクロブロックの対(700)を示している。マクロブロックの対(700)をフレームモードで符号化する場合、この対(700)は、2つのフレームベースのマクロブロックとして符号化される。ここでは、各マクロブロックにおいて、各マクロブロックの2つのフィールドを一緒に符号化する。マクロブロックは、一旦フレームとして符号化された後、動き補償アルゴリズムを有する時間的予測に用いるために図3a〜図3fに示すより小さなブロックに更に分割される。
一方、マクロブロックの対(700)をフィールドモードで符号化する場合、図8に示すように、マクロブロックの対(700)は、16×16画素のブロックである1つのトップフィールド(800)と、16×16画素のブロックである1つのボトムフィールド(801)とに分割される。そして、2つのフィールドは、別々に符号化される。図8に示すように、マクロブロックの対(700)における各マクロブロックは、それぞれN=16の列とM=16の行を有する。したがって、マクロブロックの対(700)のサイズは、16×32画素となる。図8では、1行おきの画素にハッチングを施している。ハッチングされた領域は、マクロブロックのトップフィールド内の画素の行を示し、ハッチングされていない領域は、マクロブロックのボトムフィールド内の画素の行を示している。トップフィールドブロック(800)と、ボトムフィールドブロック(801)は、図3a〜図3fに示すブロックサイズの何れかに分割することができる。
本発明の実施例では、マクロブロックの対(700)のAFF符号化において、2つのスキャンパス(scanning path)が可能である。スキャンパスは、ピクチャにおけるマクロブロックの対(700)に対する符号化の順序を決定する。図9は、マクロブロックの対(700)に対するAFF符号化のための2つの可能なスキャンパスを示している。スキャンパスの1つは、水平スキャンパス(900)である。水平スキャンパス(900)では、ピクチャ(200)のマクロブロックの対(700)は、図9に示すように、まず、左から右へ、そして上から下へ符号化される。もう1つのスキャンパスは、垂直スキャンパス(901)である。垂直スキャンパス(901)では、ピクチャ(200)のマクロブロックの対(700)は、図9に示すように、まず、上から下へ、そして左から右へ符号化される。フレームモード符号化では、まず、マクロブロックの対(700)のトップマクロブロックが符号化され、次に、ボトムマクロブロックが符号化される。フィールドモード符号化では、マクロブロックの対(700)のトップフィールドマクロブロックが符号化され、次に、ボトムフィールドマクロブロックが符号化される。
本発明の他の実施例では、一対のマクロブロックに対するAFF符号化を、図10に示すように、4個以上の隣り合うマクロブロックのグループ(902)のAFF符号化に拡張する。マクロブロックのグループに対するAFF符号化は、グループベースのAFF符号化(pair based AFF coding)と呼ばれることもある。ここでは、マクロブロックの対のスキャンに用いたものと同様のスキャンパスである水平スキャンパス(900)と垂直スキャンパス(901)を用いて、隣り合うマクロブロックのグループ(902)を符号化する。なお、図10に示す実施例では、4個のマクロブロックを示しているが、これより多いマクロブロックによりマクロブロックのグループを構成してもよい。
4個のマクロブロックのグループ(902)をフレームモードで符号化する場合、マクロブロックのグループは、4フレームベースのマクロブロック(four frame-based macroblocks)として符号化される。各マクロブロックにおいて、各マクロブロック内の2つのフィールドは一緒に符号化される。マクロブロックは、フレームとして符号化された後、動き補償アルゴリズムを有する時間的予測に用いるために図3a〜図3fに示すより小さなブロックに更に分割される。
一方、例えば、4個のマクロブロックのグループ(902)をフィールドモードで符号化する場合、マクロブロックのグループ(902)は、32×16画素のブロックである1つのトップフィールドと、32×16画素のブロックである1つのボトムフィールドとに分割される。そして、2つのフィールドは、別々に符号化される。これにより、トップフィールドブロック及びボトムフィールドブロックは、マクロブロックに分割できるようになる。各マクロブロックは、図3a〜図3fに示す可能なブロックサイズの1つに分割することができる。この処理は、図8に示す処理と同様であるので、この実施例を説明する図は省略する。
マクロブロックレベルのAFF符号化において、好ましくは、ピクチャのビットストリームに、フレーム/フィールドフラグビットを設け、各マクロブロックを符号化する際に、フレームモードとフィールドモードの何れのモードを用いたかを示すようにする。このビットストリームは、図11に示すように、各マクロブロックに関する情報をビットストリーム内に含んでいる。例えば、ビットストリームには、ピクチャヘッダ(110)と、ラン情報(111)と、マクロブロックタイプ情報(113)とを含ませることができる。AFF符号化を個々のマクロブロックに対して行う場合は、ビットストリームにおける各マクロブロックの前にフレーム/フィールドフラグ(112)を設けることが好ましい。マクロブロックの対に対してAFF符号化を行う場合は、フレーム/フィールドフラグ(112)は、ビットストリームにおけるマクロブロックの各対の前に設けることが好ましい。そして、マクロブロックのグループに対してAFF符号化を行う場合は、フレーム/フィールドフラグ(112)は、ビットストリームにおけるマクロブロックの各グループの前に設けることが好ましい。一実施例においては、フレームモードを用いる場合、フレーム/フィールドフラグ(112)ビットを0とし、フィールドモードを用いる場合は、これを1とする。他の実施例として、フレームモードを用いる場合、フレーム/フィールドフラグ(112)ビットを1とし、フィールドモードを用いる場合は、これを0としてもよい。
本発明の他の実施例として、マクロブロックレベルのAFF符号化において、エンコーダがマクロブロックを分割するためのブロックサイズを決定する方法を説明する。理想的なブロックサイズを決定する方法は、以下に限定されるものではないが、好ましくは、バイアス又はレート歪み(rate distortion:以下、RDという。)による又はよらない予測誤差の絶対値和(sum absolute difference:以下、SADという。)に基づいて行う。例えば、SADにより、可能なブロックサイズの性能を調べ、その結果に基づいて理想的なブロックサイズを選択する。バイアス又はRDによるSADに基づく決定を行うことは、当業者には容易である。
本発明の実施例では、フレーム及びフィールドベースの各マクロブロックは、マクロブロックレベルのAFF符号化において、イントラ符号化又はインター符号化することができる。イントラ符号化では、マクロブロックは、他のマクロブロックを時間的に参照することなく符号化される。一方、インター符号化では、動き補償を有する時間的予測を用いて、マクロブロックを符号化する。
インター符号化を用いる場合、16×16画素、16×8画素、8×16画素又は8×8画素のサイズのブロックは、それ自体の参照ピクチャを有することができる。ブロックは、フレームベースのマクロブロックであっても、フィールドベースのマクロブロックであってもよい。MPEG−4 Part 10 AVC/H.264規格では、2つの参照ピクチャではなく、複数の参照ピクチャを用いることができる。複数の参照ピクチャを用いることによって、エンコーダは、符号化するブロックに最も一致した参照ピクチャのブロックを検出することができ、動き補償アルゴリズムを有する時間的予測の性能を向上させることができる。参照ピクチャは、フレームバッファ及びフィールドバッファに記憶され、符号化する現在のピクチャからの時間的距離に基づいて、参照フレーム番号及び参照フィールド番号が割り当てられている。記憶されている参照ピクチャが現在のピクチャに近い程、その参照ピクチャが選択される可能性が高い。フィールドモード符号化では、ブロック用の参照ピクチャは、参照フレームバッファ又は参照フィールドバッファの何れかにおける、いかなる参照ピクチャのトップフィールド及びボトムフィールドの何れであってもよい。
フレーム又はフィールドベースのマクロブロック内の各ブロックは、それ自体の動きベクトルを有することができる。動きベクトルは、空間的に予測符号化される。本発明の実施例では、インター符号化において、各ブロックに対して予測動きベクトル(prediction motion vector:以下、PMVという。)も算出する。そして、各ブロックのPMV間の代数的な差分と、そのブロックに関連した動きベクトルが算出され、符号化される。これにより、動きベクトルの圧縮ビットが生成される。
図12を用いて、マクロブロック内のブロックに関するPMVの様々な好ましい算出法を説明する。図12に示す現在のブロックEは、隣接するブロックA、B、C、Dと同様に、インター符号化される。以後、特に明示する場合を除いて、ブロックEを現在のブロックと呼び、ブロックA、B、C、Dをこれに隣接するブロックと呼ぶ。ブロックEのPMVは、隣接するブロックの動きベクトルから導出される。図12に示す実施例では、隣接するブロックは、ブロックA、B、C、Dである。ブロックEのPMVを算出する好ましい方法としては、ブロックA、B、C、Dの動きベクトルのメジアンを算出する方法、これらの動きベクトルの平均値を算出する方法、これらの動きベクトルの加重平均値を算出する方法等がある。ブロックA、B、C、Dの各ブロックは、フレームモードであってもフィールドモードであってもよい。
ブロックEのPMVを算出する他の好ましい方法として、YES/NO法がある。YES/NO法の原理では、ブロックEのPMVの計算にその動きベクトルを含ませるために、ブロックは、ブロックEと同じフレームモード又はフィールドモードである必要がある。例えば、図12に示すブロックEがフレームモードである場合、ブロックEのPMVの計算にブロックAの動きベクトルを含ませるためには、ブロックAもフレームモードである必要がある。ブロックEに隣接するブロックの1つがブロックEと異なる符号化モードで符号化されている場合は、そのブロックの動きベクトルは、ブロックEのPMVの計算においては用いられない。
また、ブロックEのPMVの計算には、「常時法(always method)」を用いることもできる。常時法では、ブロックA、B、C、Dは、フレームモード又はフィールドモードの何れによって符号化されているかにかかわらず、常にブロックEのPMVの計算に用いられる。ブロックEがフレームモードであり、隣接するブロックがフィールドモードである場合、ブロックEのPMVの計算を行う前に、隣接するブロックの垂直成分を2倍にする。逆に、ブロックEがフィールドモードであり、隣接するブロックがフレームモードである場合、ブロックEのPMVの計算を行う前に、隣接するブロックの垂直成分を2で除算する。
また、マクロブロックが対ベースのAFF符号化又はグループベースのAFF符号化を用いて符号化されている場合は、「選択法(selective method)」を用いて、ブロックEのPMVの計算を行うことができる。選択法では、フレームベースのブロックは、参照フレームを指すフレームベースの動きベクトルを有する。ブロックには、参照フィールドを指すフィールドベースの動きベクトルも割り当てられている。フィールドベースの動きベクトルは、そのブロックのフレームベースの動きベクトルの垂直動きベクトル成分を2で除算したものである。参照フィールド番号は、参照フレーム番号を2倍にしたものである。フィールドベースのブロックは、参照フィールドを指すフィールドベースの動きベクトルを有する。このブロックには、参照フレームを指すフレームベースの動きベクトルも割り当てられている。フレームベースの動きベクトルは、そのブロックのフィールドベースのベクトルの垂直動きベクトル成分を2倍にしたものである。参照フレーム番号は、参照フィールド番号を2で除算したものである。
選択法によってブロックのPMVを算出する方法について、図12を用いて説明する。マクロブロックの対ベースのAFF符号化において、マクロブロック内の各ブロックは、マクロブロックの対における第2のマクロブロック内の同じ幾何学的位置にある相手方のブロック(companion block)に関連している。図12において、ブロックEに隣接するブロック(A、B、C、D)は、ブロックEと同じフレームモード又はフィールドモードで符号化されている場合もあり、そうでない場合もある。したがって、次のような規則が適用される。
ブロックEがフレームモードであり、隣接するブロックもフレームモードである場合、隣接するブロックのフレームベースの動きベクトルがそのままブロックEのPMVの算出に用いられる。
ブロックEがフレームモードであり、隣接するブロックがフィールドモードである場合、ブロックEのPMVの算出には、次のような規則が適用される。隣接するブロック(例えば、ブロックA)及びその相手方のフィールドベースのブロックが同じ参照フィールドを有する場合、ブロックEのPMVの算出には、これらの2つのブロックに割り当てられたフレームベースの動きベクトルの平均値を用いる。PMVの算出に用いられる参照フレーム番号は、隣接するブロックの参照フィールド番号を2で除算したものである。一方、隣接するブロック及びその相手方のフィールドベースのブロックが異なる参照フィールドを有する場合、隣接するブロックは、ブロックEのPMVの算出には用いることができない。
ブロックEがフィールドモードであり、隣接するブロックがフレームモードである場合、ブロックEのPMVの算出には、次のような規則を適用することができる。隣接するブロック(例えば、ブロックA)及びその相手方のフレームベースのブロックが同じ参照フレームを有する場合、ブロックEのPMVの算出には、これらの2つのブロックに割り当てられたフィールドベースの動きベクトルの平均値を用いる。PMVの算出に用いられる参照フィールド番号は、隣接するブロックの参照フレーム番号を2倍にしたものである。一方、隣接するブロック及びその相手方のフィールドベースのブロックが異なる参照フレームを有する場合、隣接するブロックは、ブロックEのPMVの算出には用いることができない。
ブロックEがフィールドモードであり、隣接するブロックもフィールドモードである場合、隣接するブロックのフィールドベースの動きベクトルがそのままブロックEのPMVの算出に用いられる。
ブロックのPMVの算出に選択法を用いる場合、別の好ましいオプションを用いることもできる。図12において、ブロックEに隣接するブロック(A、B、C、D)は、ブロックEと同じフレームモード又はフィールドモードで符号化されている場合もあり、そうでない場合もある。したがって、選択法における別の好ましいオプションでは、次のような規則が適用される。
ブロックEがフレームモードであり、隣接するブロックもフレームモードである場合、隣接するブロックのフレームベースの動きベクトルがそのままブロックEのPMVの算出に用いられる。
ブロックEがフレームモードであり、隣接するブロックがフィールドモードである場合、ブロックEのPMVの算出には、隣接するブロック及びその相手方のフレームベースのブロックの加重平均値を用いる。重み係数は、隣接するブロック及びその相手方のフィールドの参照フィールド番号に基づいて決定される。
ブロックEがフィールドモードであり、隣接するブロックがフレームモードである場合、ブロックEのPMVの算出には、隣接するブロック及びその相手方のフレームベースのブロックの加重平均値を用いる。重み係数は、隣接するブロック及びその相手方のフィールドの参照フィールド番号に基づいて決定される。
ブロックEがフィールドモードであり、隣接するブロックもフィールドモードである場合、隣接するブロックのフィールドベースの動きベクトルがそのままブロックEのPMVの算出に用いられる。
ブロックのPMVを算出する他の好ましい方法としては、「代替選択法(alt selective method)」がある。この方法は、単一のマクロブロックに対するAFF符号化、対ベースのAFF符号化、グループベースのAFF符号化の何れにも適用することができる。この方法では、各ブロックに対し、そのブロックの水平座標及び垂直座標を表す水平インデックス番号及び垂直インデックス番号を割り当てる。各ブロックには、水平フィールド座標及び垂直フィールド座標も割り当てられる。ブロックの水平フィールド座標は、そのブロックの水平座標と同じである。また、トップフィールドマクロブロック内のブロックについては、垂直フィールド座標は、ブロックの垂直座標の1/2であり、トップフィールド極性(top field polarity)が割り当てられる。ボトムフィールドマクロブロック内のブロックについては、垂直フィールド座標は、ブロックの垂直座標から4を減算し、結果を2で除算することにより得られる。このブロックには、ボトムフィールド極性(bottom field polarity)も割り当てられる。2つのブロックに異なるフィールド極性を割り当てることにより、同じ水平フィールド座標及び垂直フィールド座標を有するがフィールド極性が異なる2つのブロックが存在することになる。したがって、所定のブロックの座標から、フィールド座標及びそのフィールド極性を算出でき、この逆の演算も行うことができる。
代替選択法について、図12を用いて説明する。ここでは、ブロックEのPMVを算出する。この具体例におけるブロックのサイズであるブロックEの水平サイズを4で割った値をbxとする。ブロックEがフレームモードであるかフィールドモードであるかに応じて、ブロックEのPMVは、次のようにして算出される。
ブロックEがフレームモードであるとし、ブロックEの水平座標及び垂直座標を(x,y)とする。ブロックEに隣接するブロックは、次のように定義することができる。ブロックAは、座標(x−1,y)を有するブロックである。ブロックBは、座標(x,y−1)を有するブロックである。ブロックDは、座標(x−1,y−1)を有するブロックである。ブロックCは、座標(x+bx+1,y−1)を有するブロックである。ブロックA、B、C、Dの何れかがフィールドモードである場合、その垂直動きベクトルは、予測に用いる前に2倍され、その参照フレーム番号は、その参照フィールド番号を2で除算することによって算出される。
ここで、ブロックEをトップフィールドモード又はボトムフィールドモードとし、ブロックEの水平フィールド座標及び垂直フィールド座標を(xf,yf)と表すとする。この場合、ブロックEに隣接するブロックは、次のように定義することができる。ブロックAは、座標(xf−1,yf)を有するブロックである。ブロックBは、座標(xf,yf−1)を有するブロックである。ブロックDは、座標(xf−1,yf−1)を有するブロックである。ブロックCは、座標(xf+bx+1,yf−1)を有するブロックである。ブロックA、B、C、Dの何れかがフレームモードである場合、その垂直動きベクトルは、予測に用いる前に2で除算され、その参照フィールド番号は、その参照フレーム番号を2倍にすることによって算出される。
ブロックのPMVを決定する上述した全ての方法においては、スキャンパスは、水平スキャンパスである。なお、スキャンパスは、垂直スキャンパスであってもよい。この場合、現在のブロックEに隣接するブロックは、図13に示すような構成となる。垂直スキャンパスでは、現在のブロックEのPMVの算出に隣接する全てのブロックの情報を用いることができるので、幾つかの用途においては、垂直スキャンパスを用いることが望ましい。
本発明の他の実施例として、方向分割予測(directional segmentation prediction)を説明する。方向分割予測では、16×8画素ブロック及び8×16画素ブロックのみがそのPMVの算出に適用されるという規則を有する。これらの規則は、全てのPMVの算出法において、これらのブロックサイズに対して適用される。これらの規則について、図12を用いて説明する。これらの規則のそれぞれにおいて、現在のブロックEのPMVが算出される。
まず、16×16画素のブロックは、上ブロック(upper block)と下ブロック(lower block)とから構成される。上ブロックは、上側の8行の画素を含む。下ブロックは、下側の8行の画素を含む。以下の説明では、図12に示すブロックEは、16×8画素のブロックであるとする。16×8画素ブロックを有する上ブロックについては、ブロックBがブロックEと同じ参照ピクチャを有している場合は、このブロックBを用いて、ブロックEのPMVを予測する。これ以外の場合は、メジアン予測を用いて、ブロックEのPMVを予測する。16×8画素ブロックを有する下ブロックについては、ブロックAがブロックEと同じ参照ピクチャを有している場合は、このブロックAを用いて、ブロックEのPMVを予測する。これ以外の場合は、メジアン予測を用いて、ブロックEのPMVを予測する。
8×16画素のブロックは、右ブロック(right block)と左ブロックに(left block)に分割されている。右ブロック及び左ブロックは、何れも8×16画素から構成される。以下での説明では、図12に示すブロックEは、8×16画素のブロックであるとする。左ブロックについては、ブロックAがブロックEと同じ参照ピクチャを有している場合は、このブロックAを用いて、ブロックEのPMVを予測する。これ以外の場合は、メジアン予測を用いて、ブロックEのPMVを予測する。右ブロックについては、ブロックCがブロックEと同じ参照ピクチャを有している場合は、このブロックCを用いて、ブロックEのPMVを予測する。これ以外の場合は、メジアン予測を用いて、ブロックEのPMVを予測する。
16×8画素ブロック及び8×16画素ブロックの両方について、ブロックA、B、Cは、現在のブロックEとは異なる符号化モード(フレームモード又はフィールドモード)を有している可能性がある。両方のブロックサイズに対して、次のような規則が適用される。ブロックEがフレームモードであり、ブロックA、B、Cの何れかがフィールドモードである場合、ブロックA、B、Cの何れかの参照フレーム番号は、その参照フィールド番号を2で除算することによって算出される。ブロックEがフィールドモードであり、ブロックA、B、Cの何れかがフレームモードである場合、ブロックA、B、Cの何れかの参照フィールド番号は、その参照フレーム番号を2倍にすることによって算出される。
本発明の他の実施例では、Pピクチャ内のマクロブロックは、AFF符号化においてはスキップすることができる。マクロブロックをスキップすると、そのデータは、ピクチャの符号化では、伝送されない。Pピクチャ内のスキップされたマクロブロックは、フレームとして時間的に最も近く符号化された参照ピクチャの同じ位置(co-located)のマクロブロックをコピーすることによって復元される。同じ位置のマクロブロックは、上述したPMVを用いた動き補償により、又は動きベクトルを用いずに定義されたマクロブロックである。Pピクチャ内のスキップされるマクロブロックには、次のような規則が適用される。AFF符号化がマクロブロック毎に実行されている場合、スキップされるマクロブロックは、フレームモードである。AFF符号化がマクロブロック対に対して行われている場合、及びこの対の両方のマクロブロックがスキップされる場合、これらのマクロブロックはフレームモードである。また、マクロブロック対における一方のマクロブロックのみがスキップされる場合、このブロックの符号化モードは、同じマクロブロック対におけるスキップされないマクロブロックと同じフレームモード又はフィールドモードである。AFF符号化がマクロブロックのグループに対して行われ、グループ内の全てのマクロブロックがスキップされる場合、これらの全てのマクロブロックはフレームモードである。また、少なくとも1つのスキップされないマクロブロックがある場合、マクロブロックのグループ内のスキップされるマクロブロックは、同じグループ内のスキップされないマクロブロックと同じフレームモード又はフィールドモードである。
マクロブロックのスキップに関する他の方法を説明する。マクロブロック対をスキップする場合、これをフレームモードにするかフィールドモードにするかは、左側に隣接するマクロブロック対の符号化モードに従う。左側のマクロブロック対を用いることができない場合は、上側のマクロブロック対の符号化モードに従う。左側のマクロブロック対も上側のマクロブロック対も用いることができない場合は、スキップされるマクロブロックは、フレームモードに設定される。
本発明の他の実施例では、Bピクチャ内のマクロブロックに対してダイレクトモード符号化(direct mode coding)を行う。ダイレクトモード符号化では、Bピクチャは、前方動きベクトル及び後方動きベクトルの2つの動きベクトルを有する。各動きベクトルは、参照ピクチャを指している。前方動きベクトルと後方動きベクトルの2つの動きベクトルは、同じ時間的方向を指すこともできる。Bピクチャ内のマクロブロックに対するダイレクトモード符号化では、マクロブロックの前方動きベクトル及び後方動きベクトルは、後方参照ピクチャにおいて同じ位置とされたブロックから算出される。後方参照ピクチャにおいて同じ位置とされたブロックは、フレームモードで符号化されていても、フィールドモードで符号化されていてもよい。Bピクチャ内のマクロブロックに対するダイレクトモード符号化では、次のような規則が適用される。
同じ位置とされたブロックがフレームモードであり、現在のダイレクトモードマクロブロックもフレームモードである場合、ダイレクトモードマクロブロック内のブロックに関する2つの動きベクトルは、この同じ位置とされたブロックから算出される。前方参照フレームは、同じ位置とされたブロックによって使用されるフレームの1つである。後方参照フレームは、同じ位置とされたブロックが存在するフレームと同じフレームである。
同じ位置とされたブロックがフレームモードであり、現在のダイレクトモードマクロブロックがフィールドモードである場合、現在のダイレクトモードマクロブロックに関する2つの動きベクトルは、同じ位置とされたブロックの動きベクトルの垂直成分を2で除算することによって算出される。前方参照フィールドは、同じ位置とされたブロックによって用いられる参照フレームにおける同じパリティのフィールドである。後方参照フィールドは、同じ位置とされたブロックが存在する後方参照フレームにおける同じパリティのフィールドである。
同じ位置とされたブロックがフィールドモードであり、現在のダイレクトモードマクロブロックもフィールドモードである場合、現在のダイレクトモードマクロブロックに関する2つの動きベクトルは、同じフィールドのパリティを有する同じ位置とされたブロックから算出される。前方参照フィールドは、同じ位置とされたブロックによって用いられるフィールドである。後方参照フィールドは、同じ位置とされたブロックが存在する同じフィールドである。
同じ位置とされたブロックがフィールドモードであり、現在のダイレクトモードマクロブロックがフレームモードである場合、現在のダイレクトモードマクロブロックに関する2つの動きベクトルは、同じ位置とされたブロックの動きベクトルの垂直成分を2倍にすることによって算出される。前方参照フレームは、同じ位置とされたブロックによって用いられるフィールドを含むフレームである。後方参照フィールドは、同じ位置とされたブロックが存在するフィールドを含むフレームである。
変形例として、ダイレクトモードブロックの符号化モードを、強制的に、同じ位置とされたブロックのフレームモード又はフィールドモードと同じ符号化モードにしてもよい。この場合、ダイレクトモードブロックについて同じ位置とされたブロックがフレームモードである場合は、ダイレクトモードブロックも同様にフレームモードにされる。ダイレクトモードブロックのフレームベースの2つの動きベクトルは、同じ位置とされたブロックのフレームベースの前方動きベクトルから導出される。前方参照フレームは、同じ位置とされたブロックによって用いられる。後方参照フレームは、同じ位置とされたブロックが存在するフレームである。
ここで、ダイレクトモードブロックについて同じ位置とされたブロックがフィールドモードである場合、ダイレクトモードブロックもフィールドモードにされる。ダイレクトモードブロックのフィールドベースの2つの動きベクトルは、同じ位置とされたブロックのフィールドベースの前方動きベクトルから導出される。前方参照フィールドは、同じ位置とされたブロックによって用いられる。後方参照フィールドは、同じ位置とされたブロックが存在するフィールドである。
本発明の他の実施例においては、AFF符号化において、Bピクチャ内のマクロブロックをスキップすることもできる。Bピクチャ内のスキップされるマクロブロックは、符号化変換係数情報を用いることなく、通常のダイレクトモードマクロブロックとして復元される。Bピクチャにおいてスキップされるマクロブロックには、次のような規則が適用される。AFF符号化がマクロブロック毎に実行される場合、スキップされるマクロブロックは、フレームモードで符号化してもよく、そのブロックの後方参照ピクチャにおいて同じ位置とされたブロックと同じフィールドモード又はフレームモードで符号化してもよい。AFF符号化がマクロブロック対に対して行われている場合、及びこの対の両方のマクロブロックがスキップされる場合、これらのマクロブロックは、フレームモードで符号化してもよく、そのブロックの後方参照ピクチャにおいて同じ位置とされたマクロブロックの対と同じフィールドモード又はフレームモードで符号化してもよい。また、マクロブロック対における一方のマクロブロックのみがスキップされる場合、このブロックの符号化モードは、同じマクロブロック対におけるスキップされないマクロブロックと同じフレームモード又はフィールドモードである。AFF符号化がマクロブロックのグループに対して行われ、グループ内の全てのマクロブロックがスキップされる場合、これらの全てのマクロブロックはフレームモードで符号化してもよく、そのブロックの後方参照ピクチャにおいて同じ位置とされたマクロブロックのグループと同じフィールドモード又はフレームモードで符号化してもよい。また、少なくとも1つのスキップされないマクロブロックがある場合、マクロブロックのグループ内のスキップされるマクロブロックは、同じグループ内のスキップされないマクロブロックと同じフレームモード又はフィールドモードである。また、少なくとも1つのスキップされないマクロブロックがある場合、マクロブロックのグループ内のスキップされるマクロブロックは、同じグループ内のスキップされないマクロブロックと同じフレームモード又はフィールドモードである。
上述のように、ブロックは、イントラ符号化(intra coded)することもできる。イントラブロックは、空間予測符号化される。マクロブロックレベルのAFF符号化においては、マクロブロックについて2つの可能なイントラ符号化モードがある。第1のモードは、イントラ4×4モードであり、第2のモードは、イントラ16×16モードである。何れの場合も、各画素値は、隣接するブロックから実際に復元された画素値を用いて予測される。画素値を予測することにより、より高度な圧縮が実現できる。イントラ4×4モード及びイントラ16×16モードのそれぞれについて、以下に詳細に説明する。
イントラ4×4モードでは、図14に示すように、4×4画素ブロック内の画素の予測は、その画素の左側及び上側の画素に基づいて行われる。図14では、4×4画素ブロック内の16個の画素にa〜pのラベルを付している。更に、図14では、隣接する画素にA〜Pのラベルを付している。すなわち、隣接する画素は、大文字で表している。図15に示すように、イントラ4×4符号化においては、9個の異なる予測方向が存在する。これらは、垂直方向(0)、水平方向1(1)、DC予測(モード2)、対角左下方向(3)、対角右下方向(4)、垂直寄り左方向(5)、水平寄り下方向(6)垂直寄り右方向(7)、及び水平寄り上方向(8)である。DC予測では、隣接する画素の全てを平均して、特定の画素値を予測する。
一方、イントラ16×16モードでは、4個の異なる予測方向が存在する。予測方向は、予測モードとも呼ばれる。これらの予測方向とは、垂直予測(0)、水平予測(1)、DC予測、及び平面予測である。平面予測については、ここでは説明しない。
イントラブロック及びその隣接するブロックは、フレームモードで符号化してもフィールドモードで符号化してもよい。復元されたブロックに対しては、イントラ予測が実行される。復元されたブロックは、ブロックが実際にフレームモードで符号化されているか、フィールドモードで符号化されているかにかかわらず、フレームモードでもフィールドモードでも表現できる。イントラ予測では、復元されたブロックの画素のみが用いられるため、次のような規則が適用される。
4×4画素のブロック又は16×16画素のブロックがフレームモードである場合、そのブロックの画素値の予測に用いる隣接する画素は、フレーム構造内にある。4×4画素のブロック又は16×16画素のブロックがフィールドモードである場合、そのブロックの画素値の予測に用いる隣接する画素は、同じフィールドパリティを有するフィールド行成である。
4×4画素ブロックの選択されたイントラ予測モード(intra_prediction_mode)は、隣接したブロックの予測モードに対し、高い相関性を有している。これを図16Aに示す。図16Aでは、ブロックA及びブロックBがブロックCに隣接している。ここでは、ブロックCの予測モードを決定しようとしている。図16Bは、ビットストリーム内のイントラ予測情報の順序を示している。ブロックA及びブロックBの予測モードが既知である(ブロックA又はブロックB、若しくはこの両方がスライスの外側(outside)にある場合を含む。)場合、ブロックCの最も可能性が高い予測モード(most_probable_prediction mode)が与えられる。ブロックA又はブロックBの何れかが「外側(outside)」にある場合、最も可能性が高い予測モードは、DC予測(モード2)である。これ以外の場合は、最も可能性が高い予測モードは、ブロックA及びブロックBに用いた予測モードの最小値(minimum)である。隣接するブロックが16×16イントラモードで符号化されている場合、予測モードは、DC予測モードである。隣接するブロックがイントラマクロブロックではない場合、通常及び制約されたイントラ更新(constrained intra update)では、予測モードは「モード2:DC予測」である。
4×4画素ブロックのための予測モード番号を伝えるために、第1のパラメータuse_most_probable_modeが伝送される。このパラメータは、1ビットのコードワードによって表され、0又は1の値をとる。use_most_probable_modeが1の場合、最も可能性が高いモードが用いられる。これ以外の場合、0〜7の値をとることができる更なるパラメータremaining_mode_selectorが3ビットコードワードとして伝送される。このコードワードは、remaining_mode_selector値のバイナリ表現である。予測モード番号は、次のようにして算出される。
if(remaining_mode_selector < most_probable_mode)
intra_pred_mode = remaining_mode_selector ;
else
intra_pred_mode = remaining_mode_selector+1 ;
したがって、ブロックCに割り当てられる予測モードの順序は、まず、最も可能性が高いモードであり、次に残りのモードが昇順(ascending order)に割り当てられる。
if(remaining_mode_selector < most_probable_mode)
intra_pred_mode = remaining_mode_selector ;
else
intra_pred_mode = remaining_mode_selector+1 ;
したがって、ブロックCに割り当てられる予測モードの順序は、まず、最も可能性が高いモードであり、次に残りのモードが昇順(ascending order)に割り当てられる。
本発明の実施例では、4×4画素ブロックのイントラ予測モード及び16×16画素ブロックのイントラ予測モードについて、次のような規則をイントラモード予測に適用する。ブロックC及びこれに隣接するブロックA、Bは、フレームモードであってもフィールドモードであってもよい。次の規則のうちの1つが適用される。以下に示す規則の説明では、図16A及び図16Bを用いる。
規則1:ブロックA又はブロックBがブロックCと同じフレーム/フィールドモードである場合に限って、ブロックA又はブロックBをブロックCに隣接するブロックとして用いる。これ以外の場合、ブロックA及びブロックBは、外側にあるとみなされる。
規則2:ブロックCがフィール/フレーム符号化モードの何れであるかにかかわらず、ブロックA及びブロックBをブロックCに隣接するブロックとして用いる。
規則3:ブロックCがフレームモードで符号化され、座標(x,y)を有する場合、ブロックAを座標(x,y−1)のブロックとし、ブロックBを座標(x−1,y)のブロックとする。一方、ブロックCがフィールドモードで符号化され、座標(x,y)を有する場合、ブロックAを座標(x,y−1)を有し、ブロックCと同じフィールド極性を有するフィールドとし、ブロックBを座標(x−1,y)を有し、ブロックCと同じフィールド極性を有するフィールドとする。
規則4:この規則は、マクロブロック対のみに適用される。図16Bに示す符号3,6,7,9,12,13,11,14,15が付されたブロックの予測モードを復号する場合、上側及び左側に接するブロックは、現在のブロックEと同じマクロブロック内にある。一方、符号1,4,5が付されたブロックの予測モードを復号する場合、上側のブロック(ブロックA)は、現在のマクロブロック対とは異なるマクロブロック対内にある。また、ブロック2,8,10が付されたブロックの予測モードを復号する場合、左側のブロック(ブロックB)は、異なるマクロブロック対内にある。符号0が付されたブロックの予測モードを復号する場合、上側のブロックも左側のブロックも異なるマクロブロック対内にある。フィールド復号モードにおけるマクロブロックについては、符号0,1,4,5,2,8,10が付されたブロックに隣接するブロックは、次のように定義される。
図17Aに示すように、上側のマクロブロック対(170)がフィールドモードで復号されている場合、トップフィールドマクロブロック(173)における符号0,1,4,5が付されたブロックについては、上側のマクロブロック対(170)のトップフィールドマクロブロック(173)における符号10,11,14,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の上側に隣接するブロックとみなす。また、図17Aに示すように、ボトムフィールドマクロブロック(174)における符号0,1,4,5が付されたブロックについては、上側のマクロブロック対(170)のボトムフィールドマクロブロック内の符号10,11,14,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の上側に隣接するブロックとみなす。
また、上側のマクロブロック対(170)がフレームモードで復号されている場合、図17Bに示すように、トップフィールドマクロブロック(173)における符号0,1,4,5が付されたブロックについては、上側のマクロブロック対(170)のボトムフレームマクロブロック(176)における符号10,11,14,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の上側に隣接するブロックとみなす。また、図17Bに示すように、ボトムフィールドマクロブロック(174)における符号0,1,4,5が付されたブロックについては、上側のマクロブロック対(170)のボトムフレームマクロブロック(176)内の符号10,11,14,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の上側に隣接するブロックとみなす。
マクロブロック対(172)がフィールドモードで復号されている場合、図17Cに示すように、トップフィールドマクロブロック(173)における符号0,2,8,10が付されたブロックについては、左側のマクロブロック対(172)のトップフィールドマクロブロック(173)における符号5,7,13,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の左側に隣接するブロックとみなす。また、図17Cに示すように、ボトムフィールドマクロブロック(174)における符号0,2,8,10が付されたブロックについては、左側のマクロブロック対(172)のボトムフィールドマクロブロック(174)における符号5,7,13,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の左側に隣接するブロックとみなす。
左側のマクロブロック対(172)がフレームモードで復号されている場合、図17Dに示すように、トップフィールドマクロブロック(173)における符号0,2,8,10が付されたブロックについては、左側のマクロブロック対(172)のトップフレームマクロブロック(175)における符号5,7,13,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の左側に隣接するブロックとみなす。また、図17Dに示すように、ボトムフィールドマクロブロック(174)における符号0,2,8,10が付されたブロックについては、左側のマクロブロック対(172)のボトムフレームマクロブロック(176)における符号5,7,13,15が付されたブロックのそれぞれを現在のマクロブロック対(171)の左側に隣接するブロックとみなす。
スライスの上側の境界におけるマクロブロック対については、左側のマクロブロック対(172)がフレーム復号モードである場合、フィールドマクロブロックを予測するために用いられるイントラモード予測値は、DC予測に設定される。
上述したイントラ符号化及びイントラモード予測に関する説明は、適応ブロック変換に拡張することができる。
本発明の他の実施例では、復元されたブロックに対し、ループフィルタリングを行う。復元されたブロックは、ブロックのフレーム/フィールド符号化モードにかかわらず、フレーム構造でもフィールド構造でも表すことができる。ループ(逆ブロック化)フィルタリングは、隣接するブロックの画素の加重平均を求める処理である。図12を用いて、ループフィルタリングを説明する。図12に示すブロックEを復元されたブロックとし、ブロックA、B、C、Dを隣接する復元されたブロックとし、これらのブロック全てがフレーム構造で表されているとする。ブロックA、B、C、D、Eは、それぞれフレーム符号化されていてもフィールド符号化されていてもよいため、次のような規則が適用される。
規則1:ブロックEがフレーム符号化されている場合、ループフィルタリングは、ブロックE及びこれに隣接するブロックA、B、C、Dの画素に亘って実行される。
規則2:ブロックEがフィールド符号化されている場合、ループフィルタリングは、ブロックE及びこれに隣接するブロックA、B、C、Dのトップフィールド画素及びボトムフィールド画素に対して別々に実行される。
本発明の他の実施例として、境界の画素を繰り返すことにより、復元されたフレームに対してパディング処理(Padding)を施すこともできる。境界ブロックは、フレームモードで符号化されいてもフィールドモードで符号化されていてもよいため、次のような規則が適用される。
規則1:境界ブロックの左側の垂直ライン又は右側の垂直ライン上の画素を必要に応じて繰り返す。
規則2:境界ブロックがフレーム符号化されている場合、境界ブロックの上側の水平ライン又は下側の水平ライン上の画素を繰り返す。
規則3:境界ブロックがフィールド符号化されている場合、境界ブロックの2つの上側の又は2つの下側の水平ライン(2つのフィールド)の画素を交互に繰り返す。
本発明の他の実施例では、エントロピ符号化の前に、2次元変換係数を1次元の一連の係数に変換する。スキャンパスは、ジグザグ状であっても非ジグザグ状であってもよい。ジグザグスキャンは、プログレッシブシーケンスに用いることが好ましいが、これを遅い動きでインタレースシーケンスに用いてもよい。非ジグザグスキャンは、インタレースシーケンスに用いることが好ましい。マクロブロックレベルのAFF符号化では、次のようなオプションを使用できる。
オプション1:フレームモードのマクロブロックにジグザグスキャンを用い、フィールドモードのマクロブックには非ジグザグスキャンを用いる。
オプション2:フィールドモード及びフレームモードの両方のマクロブロックにジグザグスキャンを用いる。
オプション3:フィールドモード及びフレームモードの両方のマクロブロックにジグザグスキャンを用いる。
上述の説明は、本発明の実施の形態の一例を例示的に示したものであって、発明を完全に包括し限定することを意図したものではない。上述した記載に基づいて、多くの変形及び変更が可能である。
上述の実施の形態は、本発明の原理及び幾つかの実際的な用途を例示的に示すために選択されたものである。上述の説明により、当業者は、様々な形態で本発明を利用することができ、個々の用途に応じて様々な変形例を想到することができる。本発明は、特許請求の範囲によって定義される。
Claims (8)
- イントラピクチャ、前方予測ピクチャ又は両方向予測ピクチャとすることができる、マクロブロックを含むピクチャのストリームからなるデジタルビデオコンテンツを符号化又は復号する符号化又は復号方法において、
フレームモード又はフィールドモードの隣接したマクロブロックのグループを、符号化又は復号するために選択するステップと、
上記選択したフレームモード又はフィールドモードのマクロブロックに基づいて、上記隣接したマクロブロックのグループを、フレームマクロブロック又はフィールドマクロブロックで処理するために配列するステップと、
上記フレームマクロブロック又はフィールドマクロブロックを符号化又は復号するステップとを有し、
上記隣接したマクロブロックのグループを、フレームマクロブロック又はフィールドマクロブロックで処理するために配列するステップでは、
フレームモードにおいては、上記隣接したマクロブロックのグループを、トップフィールド画素とボトムフィールド画素の両方を含むフレームマクロブロックに分割し、該隣接したマクロブロックのグループの2つフィールドを一緒に処理し、
フィールドモードにおいては、上記隣接したマクロブロックのグループを、トップフィールド画素とボトムフィールド画素のどちらかを含むフィールドマクロブロックに分割し、該隣接したマクロブロックのグループの2つフィールドを別々に処理し、
上記フレームマクロブロックと上記フィールドマクロブロックは、同じサイズであることを特徴する符号化又は復号方法。 - 上記フレームマクロブロック又は上記フィールドマクロブロックは、16×16画素、16×8画素、8×16画素、8×8画素、8×4画素、4×8画素又は4×4画素からなるブロックに分割することができることを特徴とする請求項1記載の符号化又は復号方法。
- 上記各ブロックの予測動きベクトルを算出するステップを更に有する請求項2記載の符号化又は復号方法。
- 前方予測ピクチャの上記フレームマクロブロック又は上記フィールドマクロブロックをスキップするステップを更に有し、該スキップされたフレームマクロブロック又はフィールドマクロブロックのデータは伝送されないことを特徴とする請求項1記載の符号化又は復号方法。
- 両方向予測ピクチャの上記フレームマクロブロック又は上記フィールドマクロブロックをスキップするステップを更に有し、該スキップされたフレームマクロブロック又はフィールドマクロブロックのデータは伝送されないことを特徴とする請求項1記載の符号化又は復号方法。
- 両方向予測ピクチャの上記フレームマクロブロック又は上記フィールドマクロブロックをダイレクトモードで符号化するステップを更に有する請求項1記載の符号化又は復号方法。
- 上記イントラピクチャ、前方予測ピクチャ又は両方向予測ピクチャの上記フレームマクロブロック又は上記フィールドマクロブロックの画素値を空間的に予測するステップを更に有する請求項1記載の符号化又は復号方法。
- 上記イントラピクチャ、前方予測ピクチャ又は両方向予測ピクチャの上記フレームマクロブロック又は上記フィールドマクロブロックの画素値を時間的に予測するステップを更に有する請求項1記載の符号化又は復号方法。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US33300401P | 2001-11-21 | 2001-11-21 | |
US33392101P | 2001-11-27 | 2001-11-27 | |
US39573402P | 2002-07-12 | 2002-07-12 | |
US39816102P | 2002-07-23 | 2002-07-23 | |
US10/301,290 US6980596B2 (en) | 2001-11-27 | 2002-11-20 | Macroblock level adaptive frame/field coding for digital video content |
PCT/US2002/037739 WO2003047272A2 (en) | 2001-11-21 | 2002-11-21 | Macroblock level adaptive frame/field coding for digital video content |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008234061A Division JP2008295111A (ja) | 2001-11-21 | 2008-09-11 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005510985A JP2005510985A (ja) | 2005-04-21 |
JP2005510985A5 true JP2005510985A5 (ja) | 2007-11-22 |
Family
ID=27540869
Family Applications (9)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003548553A Pending JP2005510985A (ja) | 2001-11-21 | 2002-11-21 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2008234061A Pending JP2008295111A (ja) | 2001-11-21 | 2008-09-11 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2009244955A Expired - Lifetime JP5320254B2 (ja) | 2001-11-21 | 2009-10-23 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2012014662A Expired - Lifetime JP5697614B2 (ja) | 2001-11-21 | 2012-01-26 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2014240175A Pending JP2015062314A (ja) | 2001-11-21 | 2014-11-27 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055783A Expired - Lifetime JP6507114B2 (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055782A Expired - Lifetime JP6681758B2 (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055781A Pending JP2016106504A (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2018110961A Pending JP2018139452A (ja) | 2001-11-21 | 2018-06-11 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
Family Applications After (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008234061A Pending JP2008295111A (ja) | 2001-11-21 | 2008-09-11 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2009244955A Expired - Lifetime JP5320254B2 (ja) | 2001-11-21 | 2009-10-23 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2012014662A Expired - Lifetime JP5697614B2 (ja) | 2001-11-21 | 2012-01-26 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2014240175A Pending JP2015062314A (ja) | 2001-11-21 | 2014-11-27 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055783A Expired - Lifetime JP6507114B2 (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055782A Expired - Lifetime JP6681758B2 (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2016055781A Pending JP2016106504A (ja) | 2001-11-21 | 2016-03-18 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
JP2018110961A Pending JP2018139452A (ja) | 2001-11-21 | 2018-06-11 | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 |
Country Status (10)
Country | Link |
---|---|
EP (1) | EP1449385B1 (ja) |
JP (9) | JP2005510985A (ja) |
KR (1) | KR101033398B1 (ja) |
AU (1) | AU2002365338A1 (ja) |
CA (1) | CA2468087C (ja) |
DK (1) | DK1449385T3 (ja) |
ES (5) | ES2545177T3 (ja) |
MX (1) | MXPA04004724A (ja) |
PT (5) | PT2268039E (ja) |
WO (1) | WO2003047272A2 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5914671A (en) | 1997-02-27 | 1999-06-22 | Micron Communications, Inc. | System and method for locating individuals and equipment, airline reservation system, communication system |
WO2003041385A2 (en) | 2001-11-06 | 2003-05-15 | Matsushita Electric Industrial Co., Ltd. | Moving image coding method, and moving image decoding method |
AU2002351389A1 (en) | 2001-12-17 | 2003-06-30 | Microsoft Corporation | Skip macroblock coding |
US7003035B2 (en) | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
JP2004088722A (ja) | 2002-03-04 | 2004-03-18 | Matsushita Electric Ind Co Ltd | 動画像符号化方法および動画像復号化方法 |
CN101018329B (zh) * | 2002-04-19 | 2014-05-14 | 松下电器产业株式会社 | 图像解码方法及图像解码装置 |
HUE044582T2 (hu) | 2002-04-19 | 2019-11-28 | Panasonic Ip Corp America | Mozgásvektor-számítási eljárás |
US20040001546A1 (en) | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
KR100693669B1 (ko) * | 2003-03-03 | 2007-03-09 | 엘지전자 주식회사 | 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법 |
ES2343410T3 (es) * | 2003-06-25 | 2010-07-30 | Thomson Licensing | Codificacion intertramas con decision rapida de modo. |
US20050013498A1 (en) | 2003-07-18 | 2005-01-20 | Microsoft Corporation | Coding of motion vector information |
WO2005011286A1 (ja) * | 2003-07-24 | 2005-02-03 | Matsushita Electric Industrial Co., Ltd. | 符号化モード決定装置、画像符号化装置、符号化モード決定方法、および符号化モード決定プログラム |
KR101050828B1 (ko) | 2003-08-26 | 2011-07-21 | 톰슨 라이센싱 | 하이브리드 인트라-인터 코딩된 블록을 디코딩하기 위한 방법 및 장치 |
US7599438B2 (en) * | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
US7567617B2 (en) * | 2003-09-07 | 2009-07-28 | Microsoft Corporation | Predicting motion vectors for fields of forward-predicted interlaced video frames |
US8064520B2 (en) * | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
US8085846B2 (en) | 2004-08-24 | 2011-12-27 | Thomson Licensing | Method and apparatus for decoding hybrid intra-inter coded blocks |
KR100679031B1 (ko) * | 2004-12-03 | 2007-02-05 | 삼성전자주식회사 | 다 계층 기반의 비디오 인코딩 방법, 디코딩 방법 및 상기방법을 이용한 장치 |
KR100667806B1 (ko) * | 2005-07-07 | 2007-01-12 | 삼성전자주식회사 | 영상 부호화 및 복호화 방법 및 장치 |
US9077960B2 (en) | 2005-08-12 | 2015-07-07 | Microsoft Corporation | Non-zero coefficient block pattern coding |
KR100750128B1 (ko) | 2005-09-06 | 2007-08-21 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
KR100727972B1 (ko) * | 2005-09-06 | 2007-06-14 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
FR2894423A1 (fr) | 2005-12-05 | 2007-06-08 | Thomson Licensing Sas | Procede de prediction de donnees mouvement et de texture |
FR2897213A1 (fr) * | 2006-02-08 | 2007-08-10 | Thomson Licensing Sas | Procede de codage par blocs d'images d'une sequence d'images video |
JP4789719B2 (ja) * | 2006-07-06 | 2011-10-12 | キヤノン株式会社 | 動きベクトル検出装置、動きベクトル検出方法、コンピュータプログラム及び記憶媒体 |
JP4763549B2 (ja) | 2006-08-18 | 2011-08-31 | 富士通セミコンダクター株式会社 | フレーム間予測処理装置、画像符号化装置、及び画像復号化装置 |
KR101365574B1 (ko) * | 2007-01-29 | 2014-02-20 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
JP4786612B2 (ja) * | 2007-08-14 | 2011-10-05 | Kddi株式会社 | 動画像符号化装置の予測動きベクトル生成装置 |
KR101452859B1 (ko) * | 2009-08-13 | 2014-10-23 | 삼성전자주식회사 | 움직임 벡터를 부호화 및 복호화하는 방법 및 장치 |
KR101522850B1 (ko) | 2010-01-14 | 2015-05-26 | 삼성전자주식회사 | 움직임 벡터를 부호화, 복호화하는 방법 및 장치 |
JP5341786B2 (ja) * | 2010-01-20 | 2013-11-13 | 株式会社メガチップス | 画像符号化装置及び画像変換装置 |
KR20110113561A (ko) * | 2010-04-09 | 2011-10-17 | 한국전자통신연구원 | 적응적인 필터를 이용한 인트라 예측 부호화/복호화 방법 및 그 장치 |
US8923395B2 (en) | 2010-10-01 | 2014-12-30 | Qualcomm Incorporated | Video coding using intra-prediction |
JP7145822B2 (ja) * | 2019-07-18 | 2022-10-03 | ヤフー株式会社 | 情報提供装置、情報提供方法、および情報提供プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3125145B2 (ja) * | 1990-08-29 | 2001-01-15 | 日立電子株式会社 | 画像データの高能率符号化方法及びその装置 |
DE4113505A1 (de) | 1991-04-25 | 1992-10-29 | Thomson Brandt Gmbh | Verfahren zur bildsignalcodierung |
US6226327B1 (en) * | 1992-06-29 | 2001-05-01 | Sony Corporation | Video coding method and apparatus which select between frame-based and field-based predictive modes |
ES2159553T3 (es) * | 1993-03-24 | 2001-10-16 | Sony Corp | Metodo y aparato para codificar/descodificar un vector de movimiento, y metodo y aparato para codificar/descodificar una señal de imagen. |
US5974184A (en) * | 1997-03-07 | 1999-10-26 | General Instrument Corporation | Intra-macroblock DC and AC coefficient prediction for interlaced digital video |
JP3559419B2 (ja) * | 1997-03-18 | 2004-09-02 | 松下電器産業株式会社 | 画像圧縮データの伸張方法及び装置 |
JP2001251627A (ja) * | 2000-03-03 | 2001-09-14 | Matsushita Electric Ind Co Ltd | 符号化装置、符号化方法及びプログラムを記録した記録媒体 |
FR2806570B1 (fr) * | 2000-03-15 | 2002-05-17 | Thomson Multimedia Sa | Procede et dispositif de codage d'images video |
-
2002
- 2002-11-21 PT PT101826246T patent/PT2268039E/pt unknown
- 2002-11-21 PT PT101826295T patent/PT2285121E/pt unknown
- 2002-11-21 ES ES02804054.1T patent/ES2545177T3/es not_active Expired - Lifetime
- 2002-11-21 ES ES10182654.3T patent/ES2545394T3/es not_active Expired - Lifetime
- 2002-11-21 ES ES10182629.5T patent/ES2548385T3/es not_active Expired - Lifetime
- 2002-11-21 KR KR1020047007762A patent/KR101033398B1/ko active IP Right Grant
- 2002-11-21 PT PT2804054T patent/PT1449385E/pt unknown
- 2002-11-21 DK DK02804054.1T patent/DK1449385T3/en active
- 2002-11-21 AU AU2002365338A patent/AU2002365338A1/en not_active Abandoned
- 2002-11-21 WO PCT/US2002/037739 patent/WO2003047272A2/en active Application Filing
- 2002-11-21 PT PT101827269T patent/PT2268040E/pt unknown
- 2002-11-21 ES ES10182726.9T patent/ES2545213T3/es not_active Expired - Lifetime
- 2002-11-21 ES ES10182624.6T patent/ES2548384T3/es not_active Expired - Lifetime
- 2002-11-21 EP EP02804054.1A patent/EP1449385B1/en not_active Expired - Lifetime
- 2002-11-21 JP JP2003548553A patent/JP2005510985A/ja active Pending
- 2002-11-21 CA CA2468087A patent/CA2468087C/en not_active Expired - Lifetime
- 2002-11-21 PT PT101826543T patent/PT2271115E/pt unknown
-
2004
- 2004-05-19 MX MXPA04004724A patent/MXPA04004724A/es active IP Right Grant
-
2008
- 2008-09-11 JP JP2008234061A patent/JP2008295111A/ja active Pending
-
2009
- 2009-10-23 JP JP2009244955A patent/JP5320254B2/ja not_active Expired - Lifetime
-
2012
- 2012-01-26 JP JP2012014662A patent/JP5697614B2/ja not_active Expired - Lifetime
-
2014
- 2014-11-27 JP JP2014240175A patent/JP2015062314A/ja active Pending
-
2016
- 2016-03-18 JP JP2016055783A patent/JP6507114B2/ja not_active Expired - Lifetime
- 2016-03-18 JP JP2016055782A patent/JP6681758B2/ja not_active Expired - Lifetime
- 2016-03-18 JP JP2016055781A patent/JP2016106504A/ja active Pending
-
2018
- 2018-06-11 JP JP2018110961A patent/JP2018139452A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5320254B2 (ja) | デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化 | |
JP2005510985A5 (ja) | ||
US6980596B2 (en) | Macroblock level adaptive frame/field coding for digital video content | |
KR101076506B1 (ko) | 복수의 픽쳐를 갖는 영상 시퀀스의 엔코딩 및 디코딩 방법 | |
JP2005510984A5 (ja) |