JP2010520697A - ビデオ信号のデコーディング/エンコーディング方法及び装置 - Google Patents
ビデオ信号のデコーディング/エンコーディング方法及び装置 Download PDFInfo
- Publication number
- JP2010520697A JP2010520697A JP2009552582A JP2009552582A JP2010520697A JP 2010520697 A JP2010520697 A JP 2010520697A JP 2009552582 A JP2009552582 A JP 2009552582A JP 2009552582 A JP2009552582 A JP 2009552582A JP 2010520697 A JP2010520697 A JP 2010520697A
- Authority
- JP
- Japan
- Prior art keywords
- information
- view
- inter
- viewpoint
- picture
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
現在NALユニットのコーディングされたピクチャが視点間ピクチャグループであるか否かを表す識別情報を獲得し、該識別情報によって非視点間ピクチャグループの視点間参照情報を獲得し、該非視点間ピクチャグループの視点間参照情報によって動きベクトルを獲得し、該動きベクトルを用いて第1対応ブロックの位置を誘導し、該誘導された第1対応ブロックの動き情報を用いて現在ブロックをデコーディングすることを含み、視点間参照情報は、非視点間ピクチャグループの参照視点の個数情報を含むことを特徴とするビデオ信号デコーディング方法を提供する。
【選択図】図7
【選択図】図7
Description
本発明は、ビデオ信号のコーディングに関する技術である。
圧縮符号化とは、デジタル化した情報を通信回線を通じて送信したり、記憶媒体に適合した形態で記憶させたりする一連の信号処理技術のことを意味する。圧縮符号化の対象には、音声、映像、文字などがあり、特に、映像を対象にして圧縮符号化を行う技術をビデオ映像圧縮と称する。ビデオ映像の一般的な特徴は、空間的重複性、時間的重複性を有している点にある。
本発明の目的は、ビデオ信号のコーディング効率を向上させることにある。
視点間ピクチャの関連性に基づいて現在ピクチャのモーション情報を獲得することによって動き補償を行うことができるビデオ信号のデコーディング/エンコーディング方法及び装置を提供する。
現在ピクチャのモーション情報との類似性が高い参照視点のモーション情報を用いることによって、現在ピクチャの復元率を高めることができるビデオ信号デコーディング/エンコーディング方法及び装置を提供する。
ピクチャの視点を識別できる視点情報を定義することによってビデオ信号を效率的にコーディングする。
視点間予測に用いられる参照ピクチャを管理するための方法を提供することによってビデオ信号を效率的にコーディングする。
ビデオ信号の動き情報を予測する方法を提供することによってビデオ信号を效率的に処理する。
現在ブロックに対応するブロックを探す方法を提供することによってビデオ信号を效率的に処理する。
多視点ビデオコーディングにおいて空間直接モードを行う方法を提供することによってビデオ信号を效率的に処理する。
コーデック互換のためのシンタックスを定義することによって異なる種類のコーデック間の互換性を高める。
多視点ビデオコーディングされたビットストリームの再作成のためのシンタックスを定義することによってコーデック間の互換性を高める。
各視点ごとに独立したシーケンスパラメータセット情報を利用することによって、様々な拡張性に関する情報を各視点ごとに独立的に適用することができる。
本発明によれば、映像シーケンスの時間的、空間的相関関係を用いて動き情報を予測することによって信号処理効率を高めることができる。また、現在ブロックとの相関関係が高いピクチャのコーディング情報を用いて現在ブロックのコーディング情報を予測することによって、より正確な予測が可能であり、それによる誤差値送信量が減少するので、効率的なコーディングを行うことができる。そして、現在ブロックの動き情報が送信されなくても、現在ブロックの動き情報と非常に類似する動き情報を算出できるため、復元率が向上する効果がある。
また、視点間予測に用いられる参照ピクチャを管理するための方法を提供することによって、より効率的にコーディングを行うことが可能になる。本発明を用いて視点間予測(inter-view prediction)を行う時、DPB(Decoded Picture Buffer:復号ピクチャバッファ)の負担を減少させることによってコーディング速度を向上させることができる他、より正確な予測が可能なため、送信するビット数を減少させることができる。また、多視点映像に関する様々な属性情報を用いることによって、より効率的なコーディングが可能である。また、コーデック互換のためのシンタックスを定義することによって、異なる種類のコーデック間の互換性を高めることができる。また、様々な拡張性に関する情報を各視点ごとに独立して適用することによって、より効率的なコーディングを行うことができる。
本発明は、現在NALユニットのコーディングされたピクチャが視点間ピクチャグループに含まれているか否かを表す識別情報を獲得する段階と、該識別情報によって非視点間ピクチャグループの視点間参照情報を獲得する段階と、該非視点間ピクチャグループの視点間参照情報によって動きベクトルを獲得する段階と、該動きベクトルを用いて第1対応ブロックの位置を誘導する段階と、該誘導された第1対応ブロックの動き情報を用いて現在ブロックをデコーディングする段階と、を含み、ここで、視点間参照情報は、非視点間ピクチャグループの参照視点の個数情報を含むことを特徴とするビデオ信号デコーディング方法を提供する。
本発明は、第1対応ブロックのブロックタイプを確認する段階をさらに含み、該第1対応ブロックのブロックタイプに基づいて、該第1対応ブロックの視点と異なる参照視点に存在する第2対応ブロックの位置を誘導するか否かが決定されることを特徴とする。
本発明は、第1対応ブロック及び第2対応ブロックの位置が一定の順序に基づいて誘導されることを特徴とし、この一定の順序は、非視点間ピクチャグループのL0方向に対する参照視点を優先的に用い、その後、L1方向に対する参照視点を用いることを特徴とする。
本発明は、第1対応ブロックのブロックタイプがイントラブロックである場合、L1方向に対する参照視点を利用可能であることを特徴とする。
本発明は、L0/L1方向に対する参照視点が現在視点と最も近い順序に用いられることを特徴とする。
本発明は、現在ブロックの動き情報が誘導されるか否かを表すフラグ情報を獲得する段階をさらに含み、該フラグ情報に基づいて第1対応ブロックの位置を誘導することを特徴とする。
本発明は、第1対応ブロックの動き情報を獲得する段階と、該第1対応ブロックの動き情報に基づいて現在ブロックの動き情報を誘導する段階をさらに含み、ここで、現在ブロックの動き情報を用いて現在ブロックをデコーディングすることを特徴とする。
本発明は、動き情報が動きベクトル及び参照インデックスを含むことを特徴とする。
本発明は、動きベクトルが視点間ピクチャグループのグローバル動きベクトルであることを特徴とする。
本発明は、現在NALユニットのコーディングされたピクチャが視点間ピクチャグループであるかを表す識別情報によって、非視点間ピクチャグループの視点間参照情報を獲得する参照情報獲得部と、該非視点間ピクチャグループの視点間参照情報によって獲得された視点間ピクチャグループのグローバル動きベクトルを用いて対応ブロックの位置を誘導する対応ブロック探索部と、を含み、ここで、視点間参照情報は、非視点間ピクチャグループの参照視点の個数情報を含むことを特徴とするビデオ信号デコーディング装置を提供する。
本発明は、ビデオ信号が放送信号として受信されることを特徴とする。
本発明は、ビデオ信号がデジタル媒体を通じて受信されることを特徴とする。
本発明は、上記の特徴を実行させるためのプログラムを記録したコンピュータ読み取り可能媒体を提供する。
ビデオ信号データを圧縮符号化する技術は、空間的重複性、時間的重複性、スケーラブルな重複性、視点間に存在する重複性を考慮している。また、このような圧縮符号化過程で視点間に存在する相互重複性を考慮して圧縮コーディングをすることができる。視点間重複性を考慮する圧縮コーディングに対する技術は、本発明の実施例に過ぎず、本発明の技術的思想は、時間的重複性、スケーラブルな重複性などにも適用されることができる。また、本明細書でいうコーディングは、エンコーディングとデコーディングの両概念を含むことができ、本発明の技術的思想及び技術的範囲によって柔軟に解析すれば良い。
ビデオ信号のビット列構成について説明すると、動映像符号化処理そのものを扱うVCL(Video Coding Layer:ビデオ符号化階層)と、符号化された情報を送信して保存する下位システムとの間に在るNAL(Network Abstraction Layer:ネットワーク抽象階層)との分離された階層構造とされている。符号化過程の出力は、VCLデータであり、送信したり保存したりする前にNAL単位でマッピングされる。各NAL単位は、圧縮されたビデオデータまたはヘッダ情報に該当するデータであるRBSP(Raw Byte Sequence Payload:動映像圧縮の結果データ)を含む。
NAL単位は、基本的に、NALヘッダとRBSPの2部分で構成される。NALヘッダには、そのNAL単位の参照ピクチャとなるスライスが含まれているか否かを表すフラグ情報(nal_ref_idc)と、NAL単位の種類を表す識別子(nal_unit_type)が含まれている。RBSPには、圧縮された原本のデータを保存し、RBSPの長さを8ビットの倍数で表現するために、RBSPの末尾にRBSPトレイリングビット(trailing bit)を加える。このようなNAL単位の種類には、IDR(Instantaneous Decoding Refresh:瞬間復号リフラッシュ)ピクチャ、SPS(Sequence Parameter Set:シーケンスパラメータセット)、PPS(Picture Parameter Set:ピクチャパラメータセット)、SEI(Supplemental Enhancement Information:補充的付加情報)などがある。
また、規格では、対象製品を適当なコストで具現できるように種々のプロファイル及びレベルに制約しているが、復号器は、該当のプロファイル及びレベルで定められている制約を満たさなければならない。このように復号器がどのような圧縮映像の範囲まで対応できるかを表す機能またはパラメータを示すために「プロファイル」と「レベル」という2つの概念が定義された。ビットストリームがどんなプロファイルに基づくかは、プロファイル識別子(profile_idc)で識別可能である。プロファイル識別子とは、ビットストリームが基づけられているプロファイルを表すフラグを意味する。例えば、H.264/AVCでは、プロファイル識別子が66であれば、ベースラインプロファイルに基づくということを意味し、77なら、メインプロファイルに基づくということを意味し、88なら、拡張プロファイルに基づくということを意味する。該プロファイル識別子は、シーケンスパラメータセットに含まれることができる。
したがって、多視点(multiview)映像を扱うためには、入力されるビットストリームが多視点プロファイル(Multiview Profile)に関するものか否かを識別し、多視点プロファイルと識別されると、多視点に対する一つ以上の追加情報を送信できるようにシンタックスを追加する必要がある。ここで、多視点プロファイルとは、H.264/AVCの追加技術であり、多視点ビデオ(multiview video)を扱うプロファイルモード(profile mode)を表す。MVCは、既存AVC技術に対する追加技術であるから、無条件的なシンタックスよりはMVCモードである場合に対する追加情報としてシンタックスを追加することがより効率的でありうる。例えば、AVCのプロファイル識別子が多視点プロファイルを表す時、多視点映像に関する情報を追加すると符号化効率を高めることができる。
シーケンスパラメータセットとは、プロファイル、レベルのように、シーケンス全体の符号化にわたっている情報が含まれているヘッダ情報のことをいう。圧縮された動映像全体、すなわち、シーケンスは、必ずシーケンスヘッダから始めるべきなので、ヘッダ情報に相当するシーケンスパラメータセットは、そのパラメータセットを参照するデータよりも先に復号器に到着しなければならない。つまり、シーケンスパラメータセットRBSPは、動映像圧縮の結果データに対するヘッダ情報の役割を果たす。ビットストリームが入力されると、まず、プロファイル識別子は、入力されたビットストリームが複数個のプロファイルの中でどのプロファイルに基づくかを識別することとなる。したがって、入力されるビットストリームが多視点プロファイルに関するものか否かを判断する(例えば、“If(profile_idc==MULTI_VIEW_PROFILE)”)部分をシンタックス上に追加することによって、入力されたビットストリームが多視点プロファイルに関するものか否かを判別し、多視点プロファイルに関するものと認定される場合にのみ、種々の属性情報を追加可能になる。例えば、全体視点の個数、視点間参照ピクチャの個数、視点間参照ピクチャの視点識別番号などを追加することができる。また、復号ピクチャバッファでは、参照ピクチャリストを生成及び管理するために、視点間参照ピクチャに関する情報を用いることができる。
図1は、本発明が適用されるビデオ信号デコーディング装置の概略的なブロック図である。
図1aを参照すると、デコーディング装置は、パージング部100、エントロピーデコーディング部200、逆量子化/逆変換部300、イントラ予測部400、デブロッキングフィルタ部500、復号ピクチャバッファ部600、インター予測部700などを含むことができる。そして、復号ピクチャバッファ部600は、参照ピクチャ保存部610、参照ピクチャリスト生成部620、参照ピクチャ管理部630などを含むことができる。図1Bを参照すると、インター予測部700は、直接予測モード識別部710、空間直接予測実行部720などを含み、空間直接予測実行部720は、第1変数誘導部721、第2変数誘導部722及び動き情報予測部723を含むことができる。また、インター予測部700は、モーションスキップ判別部730、対応ブロック探索部731、動き情報誘導部732、動き補償部733及び動き情報獲得部740を含むことができる。
パージング部100では、受信したビデオ映像を復号するためにNAL単位でパージングを行う。一般に、一つまたはそれ以上のシーケンスパラメータセットとピクチャパラメータセットが、スライスヘッダとスライスデータがデコーディングされる前にデコーダに送信される。この時、NALヘッダ領域またはNALヘッダの拡張領域には、様々な属性情報が含まれることができる。MVCは、既存AVC技術に対する追加技術であるから、無条件的に追加するよりは、MVCビットストリームである場合にのみ様々な属性情報を追加する方がより効率的でありうる。例えば、NALヘッダ領域またはNALヘッダの拡張領域に、MVCビットストリームであるか否かを識別できるフラグ情報を追加することができる。該フラグ情報によって、入力されたビットストリームが多視点映像コーディングされたビットストリームである場合にのみ、多視点映像に対する属性情報を追加することができる。例えば、これらの属性情報は、視点識別(view identification)情報、視点間ピクチャグループ識別情報(inter-view picture group identification information)、視点間予測フラグ情報(inter-view prediction flag information)、時間的レベル(temporal level)情報、優先順位識別(priority identification)情報、視点に対する瞬間復号ピクチャであるか否かを表す識別情報などを含むことができる。これについては、図2で詳細に説明する。
パージングされたビットストリームは、エントロピーデコーディング部200でエントロピーデコーディングされ、各マクロブロックの係数、動きベクトルなどが抽出される。逆量子化/逆変換部300では、受信した量子化された値に所定の定数を乗じて、変換された係数値を獲得し、該係数値を逆変換して画素値を復元する。該復元された画素値を用いてイントラ予測部400では、現在ピクチャ内のデコーディングされたサンプルから画面内予測を行うこととなる。一方、デブロッキングフィルタ部500は、ブロック歪み現象を減少させるために、それぞれのコーディングされたマクロブロックに適用される。フィルタは、ブロックの縁部を滑らかにし、デコーディングされたフレームの画質を向上させる。フィルタリング過程の選択は、境界強度(boundary strenth)と境界周囲のイメージサンプルの勾配(gradient)により左右される。フィルタリングを経たピクチャは、出力される、または、参照ピクチャとして用いるために復号ピクチャバッファ部600に保存される。
復号ピクチャバッファ部600では、画面間予測を行うために、以前にコーディングされたピクチャを保存したり開放したりするなどの役割を果たす。この時、復号ピクチャバッファ部600に保存したり開放するために、各ピクチャのframe_numとPOC(Picture Order Count:ピクチャオーダカウンタ)が用いられる。したがって、MVCにおいて、以前にコーディングされたピクチャの中には、現在ピクチャと異なる視点にあるピクチャもあるので、このようなピクチャを参照ピクチャとして用いるためには、frame_numとPOCの他に、ピクチャの視点を識別する視点情報も共に用いることができる。復号ピクチャバッファ部600は、参照ピクチャ保存部610、参照ピクチャリスト生成部620、及び参照ピクチャ管理部630を含む。
参照ピクチャ保存部610は、現在ピクチャのコーディングのために参照とされるピクチャを保存する。参照ピクチャリスト生成部620は、画面間予測のための参照ピクチャのリストを生成する。多視点ビデオコーディングにおいては視点間予測がなされることができるので、現在ピクチャが他の視点にあるピクチャを参照するようになる場合、視点間予測のための参照ピクチャリストを生成する必要が生じうる。また、時間的予測及び視点間予測の両方を行うための参照ピクチャリストを生成することもできる。例えば、現在ピクチャが対角線方向にあるピクチャを参照する場合に、対角線方向の参照ピクチャリストを生成することもできる。この時、対角線方向の参照ピクチャリストを生成する方法には様々なものがありうる。例えば、参照ピクチャリストを識別する情報(ref_list_idc)を定義することができる。ref_list_idc=0なら、時間的予測のための参照ピクチャリストを表し、1なら、視点間予測のための参照ピクチャリスト、2なら、時間的予測及び視点間予測のための参照ピクチャリストを表すことができる。
また、この対角線方向の参照ピクチャリストは、時間的予測のための参照ピクチャリストまたは視点間予測のための参照ピクチャリストを用いて生成することもできる。例えば、時間的予測のための参照ピクチャリストに、対角線方向にある参照ピクチャを配列させることができる。または、視点間予測のための参照ピクチャリストに、対角線方向にある参照ピクチャを配列させても良い。このように、様々な方向へのリストを生成すると、より効率的なコーディングが可能になりうる。本明細書では、時間的予測のための参照ピクチャリストと視点間予測のための参照ピクチャリストについて主に説明するが、本発明のコンセプトは、対角線方向の参照ピクチャリストにも適用されることができる。
参照ピクチャリスト生成部620は、視点間予測のための参照ピクチャリストを生成するために視点に関する情報を用いることができる。例えば、視点間参照情報(inter-view reference information)を用いることができる。視点間参照情報とは、視点間依存関係を表すために用いられる情報のことをいう。例えば、全体視点の個数、視点識別番号、視点間参照ピクチャの個数、視点間参照ピクチャの視点識別番号などがある。
参照ピクチャ管理部630は、より柔軟に画面間予測を実現するために参照ピクチャを管理する。例えば、メモリ管理制御操作方法(Memory Management Control Operation Method)と移動ウィンド方法(Sliding Window Method)が用いられることができる。これは、参照ピクチャと非参照ピクチャのメモリを一つのメモリとして管理し、少ないメモリで效率的に管理するためである。多視点ビデオコーディングにおいて、視点方向のピクチャは、ピクチャオーダカウンタが同一なため、これらのマーキングのために各ピクチャの視点を識別する情報が用いられることができる。このような過程によって管理される参照ピクチャは、インター予測部(700)で用いられることができる。
図1bを参照すると、インター予測部700は、直接予測モード識別部710、空間直接予測実行部720及びモーションスキップ判別部730、対応ブロック探索部731、動き情報誘導部732、動き情報獲得部733、動き補償部740を含むことができる。
動き補償部740では、エントロピーデコーディング部200から送信された情報を用いて現在ブロックの動きを補償する。ビデオ信号から現在ブロックに隣接するブロックの動きベクトルを抽出し、現在ブロックの動きベクトル予測値を獲得する。獲得された動きベクトル予測値とビデオ信号から抽出される差分ベクトルとを用いて現在ブロックの動きを補償する。また、このような動き補償は、一つの参照ピクチャを用いて行われても良く、複数のピクチャを用いて行われても良い。多視点ビデオコーディングにおいて、現在ピクチャが異なる視点にあるピクチャを参照するようになる場合、復号ピクチャバッファ部600に保存されている視点間予測のための参照ピクチャリストに関する情報を用いて、動き補償を行うことができる。また、そのピクチャの視点を識別する視点情報を用いて動き補償を行うこともできる。
また、直接予測モード(direct prediction mode)は、符号化済みブロックの動き情報から現在ブロックの動き情報を予測する符号化モードである。このような方法は、動き情報を符号化する時に所要されるビット数を節約することができ、圧縮効率を向上させることができる。例えば、時間直接モード(temporal direct mode)は、時間方向の動き情報相関度を用いて現在ブロックの動き情報を予測することとなる。時間直接モードは、相異なる動きを含んでいる映像においてその動きの速度が一定な時に効果がある。このような時間直接モードが多視点ビデオコーディングで用いられる場合、視点間の動きベクトルを考慮しなければならない。
直接予測モードの他の例として、空間直接モード(spatial direct mode)は、空間方向の動き情報相関度を用いて現在ブロックの動き情報を予測する。空間直接モードは、互いに同一の動きを含んでいる映像においてその動きの速度が変わる時に効果がある。現在ピクチャの逆方向参照ピクチャリスト(List 1)において最も小さい参照インデックスを有する参照ピクチャ内で、現在ブロックと同一位置(co-located)にあるブロックの動き情報を用いて現在ブロックの動き情報を予測することができる。しかし、多視点ビデオコーディングにおいては、参照ピクチャが現在ピクチャと異なる視点上に存在することができる。したがって、このような場合、空間直接モードを適用するに当たり様々な実施例が用いられることができる。
上記のような過程により、インター予測されたピクチャとイントラ予測されたピクチャは予測モードによって選択されて、現在ピクチャを復元することとなる。
図2は、本発明の実施例による、多視点映像コーディングされたビットストリームに追加されうる多視点映像に関する属性情報を示す図である。
図2では、多視点映像に関する属性情報が追加されうるNAL単位の構成の一例を示す。主に、NALユニットは、NALユニットのヘッダとRBSPとで構成されることができる。そして、NALユニットのヘッダでは、NALユニットが参照ピクチャのスライスを含んでいるか否かを表す識別情報(nal_ref_idc)と、NALユニットのタイプを表す情報(nal_unit_type)を含むことができる。また、制限的に、NALユニットヘッダの拡張領域も含むことができる。例えば、NALユニットのタイプを表す情報が、スケーラブルビデオコーディングと関連している場合、または、プリフィックス(prefix)NALユニットを表す場合に、該NALユニットは、NALユニットヘッダの拡張領域も含むことができる。具体的な例として、nal_unit_type=20または14の時、NALユニットは、NALユニットヘッダの拡張領域も含むことができる。また、NALユニットヘッダの拡張領域内では、MVCビットストリームであるか否かを識別できるフラグ情報(svc_mvc_flag)によって多視点映像に対する属性情報を追加することができる。
他の例として、NALユニットのタイプを表す情報が、シーケンスパラメータセットを表す情報である場合、RBSPは、シーケンスパラメータセットに関する情報を含むことができる。具体的な例として、nal_unit_type=7の場合、RBSPは、シーケンスパラメータセットに関する情報を含むことができる。この時、プロファイル情報によって、シーケンスパラメータセットはシーケンスパラメータセットの拡張領域を含むことができる。例えば、プロファイル情報(profile_idc)が多視点ビデオコーディングに関連したプロファイルである場合、シーケンスパラメータセットは、シーケンスパラメータセットの拡張領域を含むことができる。または、プロファイル情報によって、サブセットシーケンスパラメータセットがシーケンスパラメータセットの拡張領域を含むことができる。シーケンスパラメータセットの拡張領域は、視点間依存関係を表す視点間参照情報を含むことができる。また、シーケンスパラメータセットの拡張領域は、コーデック互換(codec compatibility)のための特定のシンタックスを制限する制限フラグ情報(restriction flag information)を含むことができる。これについては、図4で詳細に説明する。
以下、多視点映像に関する様々な属性情報、例えば、NALユニットヘッダの拡張領域に含まれうる属性情報、または、シーケンスパラメータセットの拡張領域に含まれうる属性情報について具体的に説明する。
まず、視点識別情報(view identification information)とは、現在視点にあるピクチャと異なる視点にあるピクチャとを区別するための情報のことをいう。ビデオ映像信号がコーディングされる時、それぞれのピクチャを識別するためにPOCとframe_numが用いられる。多視点ビデオ映像の場合には視点間予測が行われるから、現在視点にあるピクチャと他の視点にあるピクチャとを区別するための識別情報が必要である。したがって、ピクチャの視点を識別する視点識別情報を定義する必要がある。この視点識別情報は、ビデオ信号のヘッダ領域から獲得されることができる。例えば、ヘッダ領域は、NALヘッダ領域またはNALヘッダの拡張領域であっても良く、スライスヘッダ領域であっても良い。視点識別情報を用いて現在ピクチャと異なる視点にあるピクチャの情報を獲得し、この異なる視点にあるピクチャの情報を用いてビデオ信号をデコーディングすることができる。
このような視点識別情報は、ビデオ信号のエンコーディング/デコーディング過程全般にわたって適用されることができる。例えば、視点識別情報は、視点間依存関係を表すために用いられることができる。視点間依存関係を表すためには、視点間参照ピクチャの個数情報、視点間参照ピクチャの視点識別情報などが必要とされうる。視点間参照ピクチャの個数情報、視点間参照ピクチャの視点識別情報のように、視点間依存関係を表すために用いられる情報を、視点間参照情報とする。ここで、視点間参照ピクチャの視点識別情報を表すのに視点識別情報が用いられることができる。ここで、視点間参照ピクチャとは、現在ピクチャに対して視点間予測を行う時に用いられる参照ピクチャのことを意味する。また、視点識別情報が、特定の視点識別子ではなく視点が考慮されたframe_numを用いて多視点ビデオコーディングに適用されることもできる。
視点間ピクチャグループ識別情報(inter-view picture group identification information)とは、現在NALユニットのコーディングされたピクチャが、視点間ピクチャグループに含まれるか否かを識別する情報のことをいう。そして、視点間ピクチャグループ(inter-view picture group)とは、全てのスライスが同一時間帯のフレームにあるスライスのみを参照する符号化されたピクチャを意味する。例えば、他の視点にあるスライスのみを参照し、現在視点にあるスライスは参照しない符号化されたピクチャのことをいう。多視点映像の復号化過程において、視点間のランダムアクセスは可能である。また、視点間予測のためには視点間参照情報が必要とされるが、視点間参照情報を獲得する時、視点間ピクチャグループ識別情報が用いられることができる。例えば、現在ピクチャが視点間ピクチャグループに該当する場合、視点間ピクチャグループに対する視点間参照情報を獲得することができる。現在ピクチャが非視点間ピクチャグループに該当する場合には、非視点間ピクチャグループに対する視点間参照情報を獲得することができる。
このように、視点間ピクチャグループ識別情報に基づいて視点間参照情報を獲得すると、より効率的に視点間のランダムアクセスを行うことが可能になる。これは、視点間ピクチャグループにおける各ピクチャ間の視点間参照関係が、非視点間ピクチャグループにおける視点間参照関係と異なりうるためである。また、視点間ピクチャグループの場合、複数個の視点にあるピクチャを参照することもできるためである。例えば、複数個の視点にあるピクチャから仮想視点のピクチャを生成し、該仮想視点のピクチャを用いて現在ピクチャを予測することができる。
また、参照ピクチャリストを生成する時、視点間ピクチャグループ識別情報が用いられることもできる。この場合、参照ピクチャリストは、視点間予測のための参照ピクチャリストを含むことができる。そして、視点間予測のための参照ピクチャリストは、参照ピクチャリストに追加されることができる。例えば、参照ピクチャリストを初期化する場合や参照ピクチャリストを修正する場合に、視点間ピクチャグループ識別情報が用いられることができる。そして、追加された視点間予測のための参照ピクチャを管理するためにも用いられることができる。例えば、参照ピクチャを視点間ピクチャグループと非視点間ピクチャグループとに区分し、視点間予測を行う時に用いられない参照ピクチャは使用しないというマーキングをすることができる。また、視点間ピクチャグループ識別情報は、仮想参照デコーダ(hypothetical reference decoder)でも適用されることができる。
視点間予測フラグ情報(inter-view prediction flag information)とは、現在NALユニットのコーディングされたピクチャが視点間予測のために用いられるか否かを表す情報のことをいう。視点間予測フラグ情報は、時間的予測または視点間予測が行われる部分において用いられることができる。この場合、NALユニットが参照ピクチャのスライスを含んでいるか否かを表す識別情報と一緒に用いられることができる。例えば、識別情報によって現在NALユニットが参照ピクチャのスライスを含んではいないが、視点間予測のために用いられる場合に、現在NALユニットは視点間予測にのみ用いられる参照ピクチャであっても良い。または、識別情報によって現在NALユニットが参照ピクチャのスライスを含んでおり、視点間予測のために用いられる場合に、現在NALユニットは時間的予測と視点間予測のために用いられることができる。また、識別情報によってNALユニットが参照ピクチャのスライスを含んでいないとしても、復号ピクチャバッファに保存されることができる。なぜなら、視点間予測フラグ情報によって現在NALユニットのコーディングされたピクチャが視点間予測のために用いられる場合には保存すべき必要があるためである。
フラグ情報と識別情報を共に用いる場合の他に、一つの識別情報は、現在NALユニットのコーディングされたピクチャが時間的予測または/及び視点間予測のために用いられるか否かを表すこともできる。
また、視点間予測フラグ情報は、シングルループデコーディング過程で用いられることもできる。視点間予測フラグ情報によって現在NALユニットのコーディングされたピクチャが視点間予測のために用いられない場合、部分的にデコーディングを行うことができる。例えば、イントラマクロブロックは完全にデコーディングを行い、インターマクロブロックはレジデュアル情報のみをデコーディングすることができる。これにより、デコーディング装置の複雑度を減少させることができる。これは、ユーザが全視点の映像を見るのではなくある特定視点の映像のみを見る時、異なる視点において特に動き補償を行って映像を復元する必要がない場合に効率的である。
本発明の一実施例を、図3を用いて説明する。
例えば、図3で、一部分のみを見ると、コーディングする順序は、S0、S2、S1になりうる。現在コーディングしようとするピクチャを、S1視点のT2時間帯にあるB3ピクチャとする。この場合、視点間予測のためにS0視点のT2時間帯にあるB2ピクチャと、S2視点のT2時間帯にあるB2ピクチャを用いることができる。もし、S0視点のT2時間帯にあるB2ピクチャが視点間予測に用いられるとすれば、視点間予測フラグ情報が1にセッティングされることができる。そして、もし、視点間予測に用いられないとすれば、0にセッティングされることができる。この場合、S0視点にある全てのスライスの視点間予測フラグ情報が0になると、このS0視点のスライスをいずれもデコーディングする必要がない。したがって、コーディング効率を高めることかできる。
他の例として、もし、S0視点にある全スライスの視点間予測フラグ情報が0でないとすれば、すなわち、一つでも1にセッティングされた場合があると、0にセッティングされたスライスであっても必ずデコーディングをしなければならない。もし、S0視点のT2時間帯にあるB2ピクチャが現在ピクチャのデコーディングに利用されず、視点間予測フラグ情報を0にセッティングし、デコーディングを行わないと仮定すれば、S0視点にあるスライスをデコーディングする時、S0視点のT2時間帯にあるB2ピクチャを参照ピクチャとして使用するS0視点のT1時間帯にあるB3ピクチャとS0視点のT3時間帯にあるB3ピクチャは復元できなくなるためである。したがって、視点間予測フラグ情報によらず必ず復元しなければならない。
さらに他の例として、視点間予測フラグ情報は復号ピクチャバッファ(DPB)に使用されることができる。もし、視点間予測フラグ情報がないとすれば、復号ピクチャバッファに無条件的にS0視点のT2時間帯にあるB2ピクチャなどを保存しておかなければならない。しかし、視点間予測フラグ情報が0ということがわかると、S0視点のT2時間帯にあるB2ピクチャは、復号ピクチャバッファに保存しなくても良い。したがって、復号ピクチャバッファのメモリを節約することができる。
時間的レベル情報(temporal level information)とは、ビデオ信号から時間的拡張性を提供するための階層的な構造に関する情報のことをいう。このような時間的レベル情報を用いてユーザに様々な時間帯の映像を提供可能である。
優先順位識別(priority identification)情報とは、NALユニットの優先順位を識別する情報のことを意味する。これを用いて視点拡張性を提供できる。例えば、優先順位識別情報を用いて視点レベル情報を定義することができる。ここで、視点レベル情報とは、ビデオ信号から視点拡張性を提供するための階層的な構造に関する情報のことをいう。多視点ビデオ映像では、ユーザに様々な時間及び視点の映像を提供するために時間及び視点に対するレベルを定義する必要がある。このようにレベル情報を定義する場合、時間及び視点に対する拡張性(scalability)を利用可能になる。したがって、ユーザは、所望の時間及び視点の映像のみを見ることもでき、他の制限条件に対する映像のみを見ることもできる。このレベル情報は、その基準条件によって様々な方法で別々に設定されることができる。例えば、カメラの位置によって別々に設定されることもでき、カメラの配列形態によって別々に設定されることもできる。また、レベル情報は、視点間参照情報を考慮して決定されることもでき、例えば、視点間ピクチャグループがIピクチャである視点には、レベルを0とし、視点間ピクチャグループがPピクチャである視点には、レベルを1とし、視点間ピクチャグループがBピクチャである視点には、レベルを2とする。このように、レベル値を優先順位情報に割り当てることもできる。また、レベル情報は、特別な基準によらず、任意に設定されても良い。
制限フラグ情報(restriction flag information)とは、コーデック互換のために多視点ビデオコーディングされたビットストリームの再作成のためのフラグ情報を意味する。既存コーデックとの互換のために、例えば、多視点ビデオコーディングされたビットストリームをAVCコーデックでデコーディングする場合、多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成する必要がある。この時、制限フラグ情報が、多視点ビデオコーディングされたビットストリームにのみ適用されるシンタックス情報を阻止することができる。これを阻止することによって、簡単な変換過程でAVCビットストリームに変換させることができる。例えば、これをmvc_to_avc_rewrite_flagで表すことができる。これについては、図4で詳細に説明する。
以下では、ビデオ信号の効率的なデコーディング方法を提供するための様々な実施例を説明する。
図3は、視点間ピクチャグループの概念を説明するための、本発明の実施例による多視点映像信号の全体的な予測構造を示す図である。
図3に示すように、横軸のT0〜T100はそれぞれ、時間によるフレームを表し、縦軸のS0〜S7はそれぞれ、視点によるフレームを表す。例えば、T0にあるピクチャは、同じ時間帯(T0)にそれぞれ異なるカメラで撮った映像を意味し、S0にあるピクチャは、1台のカメラで撮った異なる時間帯の映像を意味する。また、図中の矢印は、各ピクチャの予測方向と順序を表すもので、例えば、T0時間帯のS2視点にあるP0ピクチャは、I0から予測されたピクチャであり、これは、TO時間帯のS4視点にあるP0ピクチャの参照ピクチャとなる。また、S2視点のT4、T2時間帯にあるB1、B2ピクチャの参照ピクチャとなる。
多視点映像のデコーディング過程において、視点間のランダムアクセスが必要とされうる。したがって、デコーディング努力を最小化しながら任意視点に対するアクセスを可能にさせるべきである。ここで、効率的なランダムアクセスを実現するために視点間ピクチャグループの概念が必要とされうる。視点間ピクチャグループの定義は、上の図2で説明した通りである。例えば、図3で、T0時間帯のS0視点にあるI0ピクチャが視点間ピクチャグループに該当するとすれば、同じ時間帯にある、すなわち、T0時間帯の他の視点にある全てのピクチャも同様に視点間ピクチャグループに該当することができる。他の例として、T8時間帯のS0視点にあるI0ピクチャが視点間ピクチャグループに該当すると、同じ時間帯にある、すなわち、T8時間帯の他の視点にある全てのピクチャも同様、視点間ピクチャグループに該当することができる。同様に、T16,…,T96、T100にある全てのピクチャが視点間ピクチャグループの例になることができる。
他の実施例によれば、MVCの全般的な予測構造において、GOPはIピクチャから始まることができ、Iピクチャは、H.264/AVCと互換可能である。したがって、H.264/AVCと互換可能な全ての視点間ピクチャグループは、常にIピクチャになりうる。しかし、IピクチャをPピクチャに取り替えると、より効率的なコーディングが可能となる。すなわち、GOPがH.264/AVCと互換可能なPピクチャから始まるようにする予測構造を用いる場合、より効率的なコーディングが可能となる。
ここで、視点間ピクチャグループを再び定義すると、全てのスライスが同一時間帯のフレームにあるスライスだけでなく、同一視点の異なる時間帯にあるスライスも参照できる符号化されたピクチャとなる。ただし、同一視点の異なる時間帯にあるスライスを参照する場合は、H.264/AVCと互換可能な視点間ピクチャグループに限定されることができる。
視点間ピクチャグループがデコーディングされた後、順次にコーディングされた全てのピクチャは、出力順序上視点間ピクチャグループに先行してデコーディングされたピクチャからインター予測(inter-prediction)無しでデコーディングされる。
したがって、図3の多視点ビデオ映像の全般的なコーディング構造によると、視点間ピクチャグループと非視点間ピクチャグループの視点間参照情報が異なるため、視点間ピクチャグループ識別情報によって視点間ピクチャグループと非視点間ピクチャグループとを区別する必要がある。
視点間参照情報とは、視点間映像がいかなる構造で予測されたかを知らせる情報のことをいう。これはビデオ信号のデータ領域から獲得できるもので、例えば、シーケンスパラメータセット領域から獲得されることができる。また、視点間参照情報は、参照ピクチャの個数と参照ピクチャの視点情報を用いて把握できる。例えば、まず、全体視点の個数を獲得し、この全体視点の個数に基づいて各視点を区別する視点識別情報を把握できる。そして、各視点ごとに参照方向に対する参照ピクチャの個数を表す視点間参照ピクチャの個数情報を獲得できる。視点間参照ピクチャの個数情報によって各視点間参照ピクチャの視点識別情報を獲得することができる。
このような方式を通じて視点間参照情報が獲得されることができ、視点間参照情報は、視点間ピクチャグループの場合と非視点間ピクチャグループの場合とに区分して把握されることができる。これは、現在NALにあるコーディングされたスライスが視点間ピクチャグループに該当するか否かを表す視点間ピクチャグループ識別情報からわかる。このような視点間ピクチャグループ識別情報は、NALヘッダの拡張領域から獲得される、または、スライスレイヤー領域から獲得されることができる。
また、視点間ピクチャグループ識別情報によって獲得された視点間参照情報は、参照ピクチャリストの生成及び管理などに用いられることができる。
図4は、本発明の実施例による、多視点ビデオコーディングされたビットストリームをAVCコーデックでデコーディングする場合、多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成するためのシンタックス構造を示す図である。
コーデック互換性のために、異なるコーデックでコーディングされたビットストリームの情報を阻止できる他の情報が必要とされうる。または、ビットストリームのフォーマットを容易に変換させるために、異なるコーデックでコーディングされたビットストリームの情報を阻止できる他の情報が必要とされうる。例えば、コーデック互換のために多視点ビデオコーディングされたビットストリームの再作成のためのフラグ情報を定義することができる。
既存コーデックとの互換のために、例えば、多視点ビデオコーディングされたビットストリームをAVCコーデックでデコーディングする場合、多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成する必要がある。この時、制限フラグ情報が多視点ビデオコーディングされたビットストリームにのみ適用されるシンタックス情報を阻止することができる。ここで、制限フラグ情報(restriction flag information)とは、多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成するか否かを表すフラグ情報を意味する。多視点ビデオコーディングされたビットストリームにのみ適用されるシンタックス情報を阻止することで、簡単な変換過程でAVCビットストリームに変換させることができる。例えば、これをmvc_to_avc_rewrite_flagで表すことができる(S410)。この制限フラグ情報は、シーケンスパラメータセット、サブシーケンスパラメータセットまたはサブシーケンスパラメータセットの拡張領域から獲得されることができる。または、スライスヘッダから獲得されることができる。
この制限フラグ情報により特定コーデックにのみ用いられるシンタックス要素を制限することができる。または、デコーディングプロセスにおいて、特定プロセスのためのシンタックス要素を制限することができる。例えば、多視点ビデオコーディングにおいて、制限フラグ情報は、非視点間ピクチャグループにのみ適用されることができる。これにより、それぞれの視点は、完全に復元された隣接視点を必要とせず、単一視点でコーディングされることができる。
また、本発明が適用される他の実施例として、図4aを参照すると、制限フラグ情報に基づいて、制限フラグ情報がスライスヘッダでも用いられるか否かを表す適応的なフラグ情報が定義されることができる。例えば、制限フラグ情報によって多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成する場合(S420)、適応的なフラグ情報(adaptive_mvc_to_avc_rewrite_flag)を獲得できる(S430)。
また、他の実施例として、適応的なフラグ情報に基づいて(S440)、多視点ビデオコーディングされたビットストリームをAVCビットストリームに再作成するか否かを表すフラグ情報を獲得できる(S450)。例えば、これをrewrite_avc_flagで表すことができる。この時、上記の過程(S440,S450)は、基準視点以外の視点にのみ適用されることができる。そして、視点間ピクチャグループ識別情報によって現在スライスが非視点間ピクチャグループである場合にのみ適用されることができる。例えば、現在スライスのrewrite_avc_flag=1なら、現在視点が参照する視点に属するスライスのrewrite_avc_flagは1になる。すなわち、AVCで再作成しようとする現在視点が定められると、現在視点が参照する視点に属するスライスのrewrite_avc_flagは自動で1にセッティングされることができる。現在視点が参照する視点に属するスライスは、全てのピクセルデータを復元する必要はなく、現在視点のために必要な動き情報のみをデコーディングすればよい。該rewrite_avc_flagはスライスヘッダから獲得することができる。このスライスヘッダから獲得したフラグ情報は、多視点ビデオコーディングされたビットストリームのスライスヘッダをAVCコーデックでデコーディング可能なように、AVCビットストリームのヘッダと同一にする役割を果たすことができる。
図5は、本発明の実施例による、多視点ビデオコーディングにおいて参照ピクチャを管理するための方法を説明するための図である。
図1aを参照すると、参照ピクチャリスト生成部620は、変数誘導部(図示せず)、参照ピクチャリスト初期化部(図示せず)及び参照ピクチャリスト再配列部(図示せず)を含むことができる。
変数誘導部(図示せず)は、参照ピクチャリスト初期化に用いられる変数を誘導する。例えば、ピクチャの識別番号を表すframe_numを用いて当該変数を誘導できる。特に、それぞれの短期参照ピクチャには、変数FrameNumと変数FrameNumWrapが用いられることができる。まず、変数FrameNumは、シンタックス要素であるframe_num値と同一である。そして、変数FrameNumWrapは、復号ピクチャバッファ部600で参照ピクチャごとに小さい番号を割り当てるために用いられることができ、変数FrameNumから誘導されることができる。このように誘導された変数FrameNumWrapを用いて変数PicNumを誘導することができる。ここで、変数PicNumは、復号ピクチャバッファ部600で使用されるピクチャの識別番号を意味することができる。長期参照ピクチャを表す場合には、変数LongTermPicNumが用いられることができる。
また、視点間予測のための参照ピクチャリストを生成するためには、視点に関する情報を用いて視点間予測のための参照ピクチャリストを生成するように第1変数(例えば、ViewNum)を誘導することができる。例えば、ピクチャの視点を識別するview_idを用いて第2変数(例えば、ViewId)を誘導することができる。まず、第2変数は、シンタックス要素であるview_id値と同一でありうる。そして、第3変数(例えば、ViewIdWrap)は、復号ピクチャバッファ部600で参照ピクチャごとに小さい視点識別番号を割り当てるために用いられることができ、第2変数から誘導されることができる。ここで、第1変数(ViewNum)は、復号ピクチャバッファ部600で使用されるピクチャの視点識別番号を意味することができる。ただし、多視点ビデオコーディングでは、時間的予測に用いられる参照ピクチャの数に比べて視点間予測に用いられる参照ピクチャの数が相対的に小さいので、長期参照ピクチャの視点識別番号を表示するための別の変数を定義しなくても良い。
参照ピクチャリスト初期化部(図示せず)は、これらの変数を用いて参照ピクチャリストを初期化する。この時、参照ピクチャリストの初期化過程は、スライスタイプによってその方式が異なっくる。例えば、Pスライスをデコーディングする場合は、デコーディング順序に基づいて参照ピクチャ番号を割り当てることができ、Bスライスをデコーディングする場合は、ピクチャ出力順序に基づいて参照ピクチャ番号を割り当てることができる。また、視点間予測のための参照ピクチャリストを初期化する場合は、第1変数、すなわち、視点情報から誘導された変数に基づいて参照ピクチャに番号を割り当てることができる。
参照ピクチャリスト再配列部(図示せず)は、初期化された参照ピクチャリストにおいて頻繁に参照されたピクチャへより小さい番号を割り当てることによって、圧縮率を向上させる役割を果たす。参照ピクチャを指定する参照ピクチャ番号はブロック単位に符号化されるが、これは、参照ピクチャ番号の符号化のための参照ピクチャ番号が小さいほど小さいビット数の符号が割り当てられるためである。再配列過程が終了すると、参照ピクチャリストが生成される。
参照ピクチャ管理部630は、より柔軟に画面間予測を実現するために参照ピクチャを管理する。多視点ビデオコーディングにおいて、視点方向のピクチャはピクチャオーダカウンタが同一なため、これらのマーキングのためには各ピクチャの視点を識別する情報が用いられることができる。
参照ピクチャは、「非参照ピクチャ」、「短期参照ピクチャ」または「長期参照ピクチャ」とマーキングされることができる。多視点ビデオコーディングにおいて、参照ピクチャを短期参照ピクチャまたは長期参照ピクチャとマーキングする時、この参照ピクチャが時間方向の予測のための参照ピクチャなのか、視点方向の予測のための参照ピクチャなのかを区別付ける必要がある。
まず、現在NALが参照ピクチャであれば、デコーディングされたピクチャのマーキング過程を行うことができる。図1aで説明した通り、参照ピクチャを管理する方法としてメモリ管理制御操作方法と移動ウィンド方法が用いられることができる。これらの方法のうちいずれかの方法が用いられるかを表すフラグ情報を獲得できる(S510)。例えば、adaptive_ref_pic_marking_mode_flagが0であれば、移動ウィンド方法が用いられることができる。そして、adaptive_ref_pic_marking_mode_flagが1であれば、メモリ管理制御操作方法が用いられることができる。
本発明の実施例による、フラグ情報に基づくメモリ管理制御操作方法について、以下に説明する。まず、メモリを適応的に管理するために、参照ピクチャの保存、開放を制御する識別情報を獲得できる(S520)。例えば、memory_management_control_operationを獲得し、この識別情報(memory_management_control_operation)値によって参照ピクチャを保存または開放することができる。特に、例えば、図5bを参照すると、識別情報が1なら、時間方向予測のための短期参照ピクチャを「非参照ピクチャ」とマーキングすることができる(S580)。すなわち、時間方向予測のための参照ピクチャのうち、指定された短期参照ピクチャを開放し、非参照ピクチャに変更できる。識別情報が3なら、時間方向予測のための長期参照ピクチャを「短期参照ピクチャ」とマーキングすることができる(S581)。すなわち、時間方向予測のための参照ピクチャのうち、指定された短期参照ピクチャを長期参照ピクチャに変更できる。
また、多視点ビデオコーディングにおいては、参照ピクチャを短期参照ピクチャまたは長期参照ピクチャとしてマーキングする時、参照ピクチャが時間方向の予測のための参照ピクチャなのか、視点方向の予測のための参照ピクチャなのかによって、異なる識別情報を割り当てることができる。例えば、識別情報が7なら、視点方向予測のための短期参照ピクチャを「非参照ピクチャ」とマーキングできる(S582)。すなわち、視点方向予測のための参照ピクチャのうち、指定された短期参照ピクチャを開放し、非参照ピクチャに変更できる。識別情報が8なら、視点方向予測のための長期参照ピクチャを「短期参照ピクチャ」とマーキングできる(S583)。すなわち、視点方向予測のための参照ピクチャのうち、指定された短期参照ピクチャを長期参照ピクチャに変更できる。
識別情報が1、3、7または8の時(S530)、ピクチャ識別番号(PicNum)または視点識別番号(ViewNum)の差分値(difference_of_pic_nums_minus1)を獲得することができる(S540)。この 差分値は、長期参照ピクチャのフレームインデックスを短期参照ピクチャに割り当てるために用いられることができる。または、短期参照ピクチャを非参照ピクチャとしてマーキングするために用いられることができる。これらの参照ピクチャが時間方向の予測のための参照ピクチャである場合、ピクチャ識別番号が用いられることができ、これらの参照ピクチャが視点方向の予測のための参照ピクチャである場合は、視点識別番号が用いられることができる。
特に、識別情報が7の時に、短期参照ピクチャを非参照ピクチャとしてマーキングするために用いられることができる。そして、差分値は視点識別番号の差分値を意味することができる。短期参照ピクチャの視点識別番号は、下記の数学式1で示すことができる。
(式1)
ViewNum=現在視点のview_id - (difference_of_pic_nums_minus1 + 1)
ViewNum=現在視点のview_id - (difference_of_pic_nums_minus1 + 1)
視点識別番号(ViewNum)に該当する短期参照ピクチャは、非参照ピクチャとしてマーキングされることができる。
他の例として、識別情報が8の時に(S550)、差分値は長期参照ピクチャのフレームインデックスを短期参照ピクチャに割り当てるために用いられることができる(S560)。そして、差分値は、視点識別番号の差分値を意味することができる。この差分値を用いて上記の数学式1のように視点識別番号(ViewNum)を導き出すことができる。該視点識別番号は、短期参照ピクチャとしてマーキングされたピクチャを参照する。
このように、上記の識別情報によって参照ピクチャを保存、開放する動作を続けて実行する。識別情報が0値にコーディングされる視点で保存、開放動作が終了する。
図6には、本発明の実施例による、多視点ビデオコーディングにおける空間直接モードを説明するための予測構造を示す。
まず、空間直接モードが適用される実施例を説明するに先立ち、以降使用される用語についてあらかじめ定義する必要がある。例えば、直接予測モードでは、List1レファレンスピクチャのうち、最も小さい参照インデックス(reference index)を持つピクチャをアンカーピクチャと定義することができる。ピクチャオーダカウンタ上、現在ピクチャの逆方向に最も近い参照ピクチャ(2)がアンカーピクチャとなることができる。そして、現在ブロック(X)と同一位置(co-located)にあるアンカーピクチャのブロック(Y)をアンカーブロックと定義することができる。この時、アンカーブロックのList0方向の動きベクトルをmvColと定義することができる。アンカーブロックのList0方向の動きベクトルがなく、List1方向の動きベクトルがあるとすれば、List1方向の動きベクトルをmvColとすることができる。ここで、Bピクチャの場合、時間的または空間的前後にかかわらずに任意の2枚を参照ピクチャとして使用することができ、この時に用いられる予測をList0予測、List1予測という。例えば、List0予測は、順方向(時間的に先行する方向)に対する予測を意味し、List1予測は、逆方向に対する予測を意味することができる。直接予測モードでは、アンカーブロックの動き情報を用いて現在ブロックの動き情報を予測することができる。ここで、動き情報とは、動きベクトル(motion vector)、参照インデックス(reference index)などを意味することができる。
図1を参照すると、直接予測モード識別部710は、現在スライスの予測モードを識別する。例えば、現在スライスのスライスタイプがBスライスの場合、直接予測モードが用いられることができる。この時、直接予測モードのうち、時間直接モードが用いられるか、空間直接モードが用いられるかを表す直接予測モードフラグが用いられることができる。この直接予測モードフラグは、スライスヘッダから獲得されることができる。直接予測モードフラグによって空間直接モードが適用される場合、まず、現在ブロックに隣接するブロックの動き情報を獲得できる。例えば、現在ブロック(X)の左側にあるブロックを隣接ブロックA、上側にあるブロックを隣接ブロックB、右側上位にあるブロックを隣接ブロックCとすれば、これら隣接ブロックA、B、Cの動き情報を獲得できる。
第1変数誘導部721では、隣接ブロック等の動き情報を用いて現在ブロックのList0/1方向に対する参照インデックスを誘導できる。そして、現在ブロックの参照インデックスに基づいて第1変数を誘導できる。ここで、第1変数は、現在ブロックの動きベクトルを任意の値として予測するために用いられる変数(directZeroPredictionFlag)を意味することができる。例えば、現在ブロックのList0/1方向に対する参照インデックスは、隣接ブロックの参照インデックスのうち最も小さい値として誘導されるできる。この時、下記の数学式2が用いられることができる。
(式2)
refIdxL0 = MinPositive(refIdxL0A,MinPositive(refIdxL0B,refIdxL0C))
refIdxL1 = MinPositive(refIdxL1A,MinPositive(refIdxL1B,refIdxL1C))
ここで、MinPositive(x,y) = Min(x,y)(x≧0及びy≧0)
Max(x,y)(その外の場合)
refIdxL0 = MinPositive(refIdxL0A,MinPositive(refIdxL0B,refIdxL0C))
refIdxL1 = MinPositive(refIdxL1A,MinPositive(refIdxL1B,refIdxL1C))
ここで、MinPositive(x,y) = Min(x,y)(x≧0及びy≧0)
Max(x,y)(その外の場合)
特に、MinPositive(0,1)=0となる。すなわち、二つの有効なインデックスが存在する場合、小さい値を得ることができる。または、MinPositive(-1,0)=0となる。すなわち、一つの有効なインデックスが存在する場合、有効なインデックス値である大きい値を得ることができる。または、MinPositive(-1,-1)=−1となる。すなわち、両者がいずれも有効でないインデックスである場合、例えば、二つの隣接ブロックが両方ともイントラコーディングされたブロックである、または、利用できない場合は、大きい値である−1値を得ることになる。結局、結果値が有効でない値が出るには、一つでも有効な値があってはいけない。
まず、第1変数の初期値として、第1変数を0にセッティングすることができる。また、誘導されたList0/1方向に対する参照インデックスがいずれも0よりも小さい場合、現在ブロックのList0/1方向に対する参照インデックスは、0にセッティングされることができる。そして、第1変数は、現在ブロックの参照ピクチャが存在しないことを表すための値にセッティングされることができる。この時、誘導されたList0/1方向に対する参照インデックスがいずれも0よりも小さい場合とは、例えば、隣接ブロックがイントラコーディングされたブロックである場合、または、いかなる理由で隣接ブロックが利用不可能になる場合を意味することができる。このような場合、第1変数を1にセッティングすることによって現在ブロックの動きベクトルを0にセッティング可能になる。
第2変数誘導部722では、アンカーピクチャ内のアンカーブロックの動き情報を用いて第2変数を誘導できる。ここで、第2変数は、現在ブロックの動きベクトルを任意の値として予測するために用いられる変数(colZeroFlag)を意味することができる。例えば、アンカーブロックの動き情報が一定の条件を満たす場合に、第2変数を1にセッティングすることができる。そして、第2変数が1にセッティングされる場合、現在ブロックのList0/1方向に対する動きベクトルを0にセッティング可能になる。一定の条件は、次の通りである。第一に、List1方向に対する参照ピクチャの中で最も小さい参照インデックスを持つピクチャが、短期参照ピクチャでなければならない。第二に、アンカーブロックの参照するピクチャの参照インデックスが0でなければならない。第三に、アンカーブロックの動きベクトルの水平成分、垂直成分の大きさが±1画素以下でなければならない。すなわち、動きがほとんどない場合を意味することができる。このように、一定の条件を完全に満たすと、動きがほとんどない映像に近いと判断し、現在ブロックの動きベクトルを0にセッティングする。
動き情報予測部723では、誘導された第1変数及び第2変数に基づいて現在ブロックの動き情報を予測できる。例えば、第1変数が1にセッティングされる場合、現在ブロックのList0/1方向に対する動きベクトルを0にセッティングできる。また、第2変数を1にセッティングする場合、現在ブロックのList0/1方向に対する動きベクトルを0にセッティングできる。ここで、0または1にセッティングすることは、一実施例に過ぎず、第1変数または第2変数は他の一定の値にセッティングして用いることもできる。その外の場合、現在ピクチャ内の隣接ブロックの動き情報から現在ブロックの動き情報を予測できる。
本発明が適用される実施例では、視点方向を考慮すべきなので、前述した用語についてさらに説明する必要がある。例えば、アンカーピクチャとは、視点方向にList0/1レファレンスピクチャの中で最も小さい参照インデックスを持つピクチャのことを意味できる。そして、アンカーブロックは、時間方向においては現在ブロックと同じ空間位置にあるブロックを意味することができるが、視点方向においては視点間の変移差を考慮して視差ベクトル(disparity vector)だけ移動した対応ブロックを意味することができる。また、動きベクトルは、視点間の変移差を表す視差ベクトルの意味を含むことができる。ここで、視差ベクトルは、相異なる2視点間の客体間またはピクチャ間の変移差を意味することができ、または、グローバル視差ベクトル(global disparity vector)を意味することができる。ここで、動きベクトルは、一部領域(例:マクロブロック、ブロック、ピクセル等)に対応することができ、グローバル視差ベクトルは、この一部領域を含む全体領域に対応する動きベクトルを意味することができる。全体領域は、マクロブロック、スライス、ピクチャ、またはシーケンスに対応することもできる。場合によっては、ピクチャ中の一つ以上の客体(object)領域及び背景にそれぞれ対応しても良い。また、参照インデックスは、視点方向においてはピクチャの視点を識別できる視点識別情報を意味することができる。したがって、本明細書で、上記の用語は本発明の技術的思想及び技術的範囲内で柔軟に解析可能であろう。
まず、現在ブロック(X)が視点方向のピクチャを参照する場合、視点方向の参照ピクチャの中で最も小さい参照インデックスを持つピクチャ(3)を利用することができる。ここで、参照インデックスは、視点識別情報(Vn)を意味することができる。そして、視点方向の参照ピクチャ(3)内で視差ベクトルだけ移動した対応ブロック(corresponding block)(Z)の動き情報を利用することができる。この時、対応ブロックの動きベクトルをmvCorと定義することができる。
本発明の実施例による多視点ビデオコーディングにおける空間直接モードを、以下に説明する。まず、第1変数誘導部721で、隣接ブロックの動き情報を用いる時に、隣接ブロックの参照インデックスは視点識別情報を意味することができる。例えば、隣接ブロックの参照インデックスがいずれも視点方向にあるピクチャを指す場合、現在ブロックのList0/1方向に対する参照インデックスは、隣接ブロックの視点識別情報の中で最も小さい値として誘導されることができる。このような場合、第2変数誘導部722では、第2変数を誘導する過程で対応ブロックの動き情報を利用することができる。例えば、現在ブロックのList0/1方向に対する動きベクトルを0にセッティングするための条件が、次のように適用されることができる。第一に、List0/1方向に対する参照ピクチャの中で最も小さい参照インデックスを持つピクチャが短期参照ピクチャでなければならない。この場合、参照インデックスは視点識別情報でありうる。第二に、対応ブロックが参照するピクチャの参照インデックスが0でなければならない。この場合、参照インデックスは視点識別情報でありうる。第三に、対応ブロック(Z)の動きベクトル(mvCor)の水平成分、垂直成分の大きさが±1画素以下でなければならない。この場合、動きベクトルは視差ベクトルでありうる。
他の例として、隣接ブロックの参照インデックスがいずれも時間方向にあるピクチャを指す場合、上記で説明した方式を用いて空間直接モードを行うことができる。
本発明の他の実施例として、多視点ビデオコーディングにおいて第2変数を誘導する過程をより效率的に適用する必要がある。例えば、現在ブロックの動き情報とアンカーピクチャの対応ブロックの動き情報間の相関性を確認することによって、より効率的なコーディングが可能である。特に、まず、現在ブロックと対応ブロックとが同一視点上に存在するとする。現在ブロックの動き情報は同一視点上のブロックを指すが、対応ブロックの動き情報は異なる視点上のブロックを指す場合、両動き情報間には相関性が低下するといえよう。または、現在ブロックの動き情報は互いに異なる視点上のブロックを指すが、対応ブロックの動き情報は同一視点上のブロックを指す場合にも、両動き情報間には相関性が低下するといえよう。一方、現在ブロックと対応ブロックが相異なる視点上に存在するとする。同様に、現在ブロックの動き情報は同一視点上のブロックを指すが、対応ブロックの動き情報は異なる視点上のブロックを指す場合、両動き情報間には相関性が低下するといえよう。または、現在ブロックの動き情報は異なる視点上のブロックを指すが、対応ブロックの動き情報は同一視点上のブロックを指す場合にも、両動き情報間には相関性が低下するといえよう。
したがって、現在ブロックの動き情報と対応ブロックの動き情報とを比較し、相関性がある場合に第2変数を誘導することによって、より効率的なコーディングができる。動き情報予測部723では、誘導された第1変数及び第2変数に基づいて現在ブロックの動き情報を予測できる。例えば、第1変数が1にセッティングされる場合、現在ブロックのList0/1方向に対する動きベクトルを0にセッティングできる。また、第2変数を1にセッティングする場合、現在ブロックのList0/1方向に対する動きベクトルを0にセッティングすることができる。または、第2変数を1にセッティングし、参照インデックスが0であり、現在ブロックと対応ブロックの動き情報の相関性がある場合、現在ブロックの動きベクトルを0にセッティングすることができる。ここで、対応ブロックは、アンカーピクチャの同一位置にあるブロックとすることができる。そして、現在ブロックと対応ブロックの動き情報の相関性がある場合は、これらの動き情報が同じ方向を指す場合を意味することができる。例えば、現在ブロック及び対応ブロックとが同一視点上に存在するとする。現在ブロックの動き情報が同一視点上のブロックを指し、対応ブロックの動き情報も同一視点上のブロックを指す場合、両動き情報間には相関性があるとすることができる。または、現在ブロックの動き情報が異なる視点上のブロックを指し、対応ブロックの動き情報も異なる視点上のブロックを指す場合にも、両動き情報間には相関性があるとすることができる。同様に、現在ブロック及び対応ブロックが相異なる視点上に存在すると仮定する場合も、同じ方式で判断されることができる。
本発明が適用される他の実施例として、現在ブロックと対応ブロックの動き情報の相関性を判断する具体的な方法について説明する。
例えば、現在ブロックの動き情報(mvL0、mvL1)の予測タイプ(predTypeL0、predTypeL1)を定義することができる。すなわち、時間方向の動き情報なのか、視点方向の動き情報なのかを表す予測タイプを定義することができる。同様に、対応ブロックの動き情報(mvColL0、mvColL1)の予測タイプ(predTypeColL0、predTypeColL1)を定義することができる。そして、現在ブロックの動き情報の予測タイプと対応ブロックの動き情報の予測タイプとが同一であるか否かを判断できる。これらの予測タイプが同一の場合、誘導された第2変数を有効と判断できる。この時、誘導された第2変数が有効であるか否かを表す変数を定義することができる。これをcolZeroFlagValidLXとする時、これらの予測タイプが同一の場合、colZeroFlagValidLX=1とし、同一でない場合、colZeroFlagValidLX=0とすることができる。
また、本発明が適用される他の実施例として、L0方向に対する第2変数とL1方向に対する第2変数をそれぞれ定義することによって、各mvLX誘導時に用いることもできる。
図7は、本発明の実施例によって、モーションスキップ有無によって動き補償を行う方法を説明するための図である。
モーションスキップ判別部730では、現在ブロックの動き情報を誘導するか否かを判別する。例えば、モーションスキップフラグを利用できる。motion_skip_flag=1の場合、モーションスキップを行う。すなわち、現在ブロックの動き情報を誘導することとなる。一方、motion_skip_flag=0の場合は、モーションスキップを行わずに、送信されてきた動き情報を獲得する。ここで、動き情報とは、動きベクトル、レファレンスインデックス、ブロックタイプなどを含むことができる。モーションスキップ判別部730によりモーションスキップを行う場合、対応ブロック探索部731では対応ブロックを探索する。動き情報誘導部732では、対応ブロックの動き情報を用いて現在ブロックの動き情報を誘導することができる。このように誘導された動き情報を用いて動き補償部740では動き補償を行う。一方、モーションスキップ判別部730によりモーションスキップを行わない場合、動き情報獲得部733では、送信されてきた動き情報を獲得する。該獲得された動き情報を用いて動き補償部740では動き補償を行う。
本発明が適用される実施例として、第1ドメインブロックの第2ドメインに対するコーディング情報を用いて、現在ブロックの第2ドメインに対するコーディング情報を予測することができる。この場合、コーディング情報として、動き情報と一緒にブロック情報も獲得できる。例えば、スキップモードでは、現在ブロックよりも先にコーディングされたブロックの情報を用いて現在ブロックの情報に利用される。このようなスキップモードを適用するにあたり、相異なるドメインに存在する情報を利用できる。この具体的な実施例を以下に説明する。
第1の例として、時間Taで異なる二つの視点映像内の客体(または背景)の相対的な動き関係は、充分に近い時間Tbでも略同様に維持されるとすることができる。この場合、時間Taにおける視点方向コーディング情報及び時間Tbにおける視点方向コーディング情報は、高い相関度を有する。同一視点の異なる時間帯にある対応ブロックの動き情報をそのまま利用すると、高いコーディング効率を得ることができる。このような方式を用いるか否かを表すモーションスキップ情報を利用できる。該モーションスキップ情報によってモーションスキップモードが適用される場合、ブロックタイプ、動きベクトル、レファレンスインデックスのような動き情報を現在ブロックの対応ブロックから予測できる。したがって、このような動き情報をコーディングするのに必要なビット量を低減することができる。例えば、motion_skip_flagが0の時は、モーションスキップモードが適用されないし、1の時は、現在ブロックにモーションスキップモードが適用される。このモーションスキップ情報は、マクロブロックレイヤーに位置することができる。例えば、モーションスキップ情報がマクロブロックレイヤーの拡張領域に位置し、デコーダ側において動き情報をビットストリームから得るか否かを優先的に知らせることができる。
第2の例として、上記の例と同様に、アルゴリズム適用軸である第1ドメインと第2ドメインを変え、同じ方式を利用することができる。すなわち、同一時間TaにおけるVa視点内の客体(または背景)とそれに隣接するVb視点内の客体(または背景)は、類似の動き情報を有する確率が高い。この場合、同一時間帯の異なる視点にある対応ブロックの動き情報をそのまま利用すると、高いコーディング効率を奏することができる。このような方式を利用するか否かを表すモーションスキップ情報を利用することができる。
エンコーダでは、現在ブロックに隣接するブロックの動き情報を用いて、現在ブロックの動き情報を予測し、実際動きベクトルと予測された動きベクトルとの差分値を送信する。同様に、デコーダでは、現在マクロブロックが参照するピクチャの参照ピクチャ番号と隣接ブロックが参照するピクチャの参照ピクチャ番号とが同一か否かを判別し、それに基づいて動きベクトル予測値を獲得する。例えば、隣接ブロックにおいて現在マクロブロックと同じ参照ピクチャ番号を有するブロックが一つのみ存在する場合には、その隣接ブロックの動きベクトルをそのまま使用し、その他の場合は、隣接ブロックの動きベクトルの中間値(median value)を使用する。
また、多視点ビデオコーディングでは、参照ピクチャが時間軸だけでなく視点軸にも存在することができる。このような特性から、現在マクロブロックの参照ピクチャ番号と隣接ブロックの参照ピクチャ番号とが異なる場合、それらの動きベクトルは何の相関関係をも持たない可能性が高い。このような場合、動きベクトル予測値の正確度は非常に低下してしまう。したがって、本発明が適用される一実施例として、視点間の相関関係を利用した新しい動きベクトル予測方法を提案する。
例えば、視点間に生じうる動きベクトルは、各客体(object)の深さ(depth)に依存することができる。映像の深さが空間的にかなりの変化がなく、時間軸の変化に伴う映像の動き自体が過大でないと、各マクロブロック位置における深さ自体は著しく変わらない。ここで、深さとは、視点間の変移差を表しうる情報のことを意味することができる。また、基本的に、カメラ間にグローバル動きベクトルの影響が存在するため、深さがやや変わっても、グローバル動きベクトルが深さ変化に比べて十分に大きいとすれば、相関関係(correlation)のない隣接ブロックの時間方向動きベクトルを用いることよりは、当該グローバル動きベクトルを用いることがより効率的でありうる。
ここで、グローバル動きベクトルとは、一定領域に共通して適用できる動きベクトルを意味することができる。例えば、動きベクトルが一部領域(例:マクロブロック、ブロック、ピクセル等)に対応するものであれば、グローバル動きベクトルまたはグローバル視差ベクトルは、一部領域を含む全体領域に対応するモーションベクトルである。例えば、全体領域は一つのスライスに対応しても良く、一つのピクチャに対応しても良く、シーケンス全体に対応しても良い。または、ピクチャ中の一つ以上の客体、背景、または一定領域にそれぞれ対応しても良い。このようなグローバル動きベクトルは、ピクセル単位または1/4ピクセル単位の値にしても良く、4×4単位、8×8単位、またはマクロブロック単位の値にしても良い。
本発明が適用される実施例として、同一位置ブロックの視点間動き情報を用いて、現在ブロックの動きベクトルを予測することができる。ここで、同一位置ブロックとは、同一ピクチャに存在する現在ブロックに隣接しているブロックを意味する、または、異なるピクチャに含まれた現在ブロックと同じ位置に存在するブロックを意味することができる。例えば、異なる視点にある異なるピクチャである場合は、空間的同一位置(spatial co-located)のブロックになり得、同一視点にある異なるピクチャの場合は、時間的同一位置(temporal co-located)のブロックになり得る。
多視点ビデオコーディング構造では、一定の時間間隔に視点方向にのみ予測するピクチャを置くことによって、ランダムアクセス(random access)を実現することができる。このように視点方向にのみ動き情報を予測する二つのピクチャが復号化されると、時間的にその間にあるピクチャに対して新しい動きベクトル予測方法を適用することができる。例えば、視点方向にのみ予測するピクチャから視点方向動きベクトルを得ることができ、これを4×4ブロック単位として保存することができる。視点方向にのみ予測する時、かなりの照明差がある場合は、イントラ予測でコーディングがされる場合が多く発生する。この場合には、動きベクトルを0に設定できる。しかし、かなりの照明差なよってイントラ予測で多くコーディングされると、視点方向の動きベクトルに関する情報がわからないマクロブロックが多く生じることになる。これを補完するために、イントラ予測の場合には、隣接ブロックの動きベクトルを用いて仮想の視点間動きベクトル(inter-view motion vector)を計算することができる。そして、仮想の視点間動きベクトルを、イントラ予測でコーディングされたブロックの動きベクトルに設定できる。
このように復号化された2個のピクチャから視点間動き情報を獲得した後、その間に存在する階層的(hierarchical)Bピクチャをコーディングすることができる。この場合、復号化された2個のピクチャは、視点間ピクチャグループになりうる。ここで、視点間ピクチャグループとは、全スライスが同一時間帯のフレームにあるスライスのみを参照する符号化されたピクチャを意味する。例えば、異なる視点にあるスライスのみを参照し、現在視点にあるスライスは参照しない符号化されたピクチャのことをいう。
一方、現在ブロックの動きベクトルを予測する方法において、現在ブロックの視点と異なる視点に存在する対応ブロックを探し、該対応ブロックのコーディング情報を用いて現在ブロックのコーディング情報を予測することができる。まず、現在ブロックの視点と異なる視点に存在する対応ブロックを見つける方法について説明する。
例えば、対応ブロックは、現在ブロックの視点方向動きベクトルが指すブロックでありうる。ここで、視点方向の動きベクトルは、視点間の変移差を表すベクトルを意味する、または、グローバル動きベクトルを意味することができる。ここで、グローバル動きベクトルの意味は、既に説明した通りである。また、グローバル動きベクトルは、現在ブロックと同じ時間上にある隣接視点の対応するマクロブロック位置を指すことができる。図7を参照すると、ピクチャA、BはTa時間に、ピクチャC、DはTcurr時間に、ピクチャE、FはTb時間に存在する。この時、Ta、Tb時間にあるピクチャA、B、E、Fは視点間ピクチャグループであり、Tcurr時間にあるピクチャC、Dは非視点間ピクチャグループでありうる。そして、ピクチャA、C、Eは、同一視点(Vn)上に存在し、ピクチャB、D、Fも同一視点(Vm)上に存在する。ピクチャCが現在復号化しようとするピクチャであり、ピクチャDの対応マクロブロック(MB)は、現在ブロック(current MB)の視点方向のグローバル動きベクトル(GDVcurr)が指すブロックである。このグローバル動きベクトルは、現在ピクチャと隣接視点にあるピクチャとの間のマクロブロック単位で獲得されることができる。この時、隣接視点に関する情報は、視点間参照関係を表す情報からわかる。
視点間参照関係(view dependency)を表す情報とは、視点間映像がどのような構造で予測されたかがわかる情報のことをいう。これは、ビデオ信号のデータ領域から獲得でき、例えば、シーケンスパラメータセット領域から獲得されることができる。また、視点間参照情報は、参照ピクチャの個数と参照ピクチャの視点情報を用いて把握できる。例えば、まず、全体視点の個数を獲得し、この全体視点の個数に基づいて各視点を区別する視点情報を把握できる。そして、各視点ごとに参照方向に対する参照ピクチャの個数を獲得できる。参照ピクチャの個数によって各参照ピクチャの視点情報を獲得できる。このような方式によって視点間参照情報が獲得でき、視点間参照情報は、視点間ピクチャグループの場合と非視点間ピクチャグループの場合とに区分して把握されることができる。これは、現在NALにあるコーディングされたスライスが視点間ピクチャグループであるか否かを表す視点間ピクチャグループ識別情報からわかる。
視点間ピクチャグループ識別情報によってグローバル動きベクトルを獲得する方法が異なってくることができる。例えば、現在ピクチャが視点間ピクチャグループの場合には、受信されたビットストリームからグローバル動きベクトルを獲得できる。現在ピクチャが非視点間ピクチャグループの場合には、視点間ピクチャグループのグローバル動きベクトルから誘導できる。
この場合、視点間ピクチャグループのグローバル動きベクトルの他に、時間距離を表す情報も共に用いることができる。例えば、図7を参照すると、ピクチャAのグローバル動きベクトルをGDVaとし、ピクチャEのグローバル動きベクトルをGDVbとすれば、非視点間ピクチャグループである現在ピクチャCのグローバル動きベクトルは、視点間ピクチャグループであるピクチャA、Eのグローバル動きベクトルと時間距離情報を用いて獲得することができる。例えば、時間距離情報は、ピクチャ出力順序を表すPOCとすることができる。したがって、現在ピクチャのグローバル動きベクトルは、下記の数学式3により導き出すことができる。
このように導き出された現在ピクチャのグローバル動きベクトルが指すブロックを、現在ブロックのコーディング情報を予測するための対応ブロックとすることができる。
この対応ブロックの全ての動き情報とモード情報は、現在ブロックのコーディング情報を予測するために用いられることができる。このコーディング情報は、動き情報、照明補償(illumination compensation)に関する情報、重み値予測情報など、現在ブロックをコーディングするのに必要な様々な情報を含むことができる。現在マクロブロックにモーションスキップモードが適用される場合には、現在マクロブロックの動き情報をコーディングせずに、既にコーディングされた異なる視点にあるピクチャの動き情報を、現在マクロブロックの動き情報としてそのまま利用すると良い。ここで、モーションスキップモードは、隣接視点にある対応ブロックの動き情報に依存して現在ブロックの動き情報を獲得する場合を含むことができる。例えば、現在マクロブロックにモーションスキップモードが適用される場合、対応ブロックの全ての動き情報、例えば、マクロブロックタイプ、参照インデックス、動きベクトルなどをそのまま現在マクロブロックの動き情報として用いることができる。ただし、モーションスキップモードは次の場合には適用されなくて良い。例えば、現在ピクチャが既存コーデックと互換可能な基準視点にあるピクチャである場合、または、視点間ピクチャグループである場合が挙げられる。そして、モーションスキップモードは、隣接視点に対応ブロックが存在し、対応ブロックがインター予測モードでコーディングされた場合に適用されることができる。また、モーションスキップモードが適用される場合には、視点間参照情報によって、まず、List0参照ピクチャの動き情報を用い、必要に応じてList1参照ピクチャの動き情報も用いることができる。
本発明の実施例として、一つ以上の参照視点が用いられるような場合に、より効率的なモーションスキップを適用できる方法を説明する。
参照視点に関する情報は、エンコーダからビットストリームを通じて送信される明示的方式と、デコーダで任意に決定される黙示的方式がありうる。以下、明示的方式及び黙示的方式について説明する。
参照視点リストに含まれている視点のうち、いずれの視点を参照視点とするかに関する情報、すなわち、参照視点の視点識別情報を明示的に送信することができる。ここで、参照視点リストは、視点間参照関係に基づいて生成される参照視点のリストを意味することができる。
例えば、参照視点リストに属する視点のうち、現在視点と最も近い視点から参照視点になりうるか否かをチェックすると設定されている場合は、参照視点の視点識別情報を明示的に送信する必要はない。しかし、このような場合にも、L0、L1方向の参照視点リストは存在できるため、この両者のいずれからチェックするかを表すフラグ情報を明示的に送信することができる。例えば、フラグ情報によってL0方向の参照視点リストをまずチェックするか、それともL1方向の参照視点リストをまずチェックするかを判断できる。
他の例として、モーションスキップのために用いられる参照視点の個数情報を明示的に送信することができる。この時、参照視点の個数情報はシーケンスパラメータセットから獲得できる。また、エンコーダで計算された最も効率の良い複数個のグローバル動きベクトルを明示的に送信することができる。この場合、複数個のグローバル動きベクトルは、非視点間ピクチャグループのスライスヘッダから獲得できる。このように送信された複数個のグローバル動きベクトルを順次に適用すれば良い。例えば、最も効率の良いグローバル動きベクトルが指すブロックがイントラモードでコーディングされている、または、利用不可能な場合、2番目に効率の良いグローバル動きベクトルが指すブロックをチェックすれば良い。同一の方式で、明示的に送信された複数個のグローバル動きベクトルが指すブロックを全てチェックすることができる。
他の例として、シーケンスにおいてモーションスキップモードを適用するか否かを表すフラグ情報を定義することができる。例えば、motion_skip_flag_seqが1であれば、モーションスキップモードはシーケンスにおいて適用されることができる。motion_skip_flag_seqが0であれば、モーションスキップモードはシーケンスにおいて適用されない。このような場合は、スライスまたはマクロブロックレベルでモーションスキップモードが適用されるか否かを再び確認することができる。
フラグ情報によってシーケンスにおいてモーションスキップモードが適用される場合、モーションスキップモードで用いられる参照視点の全体個数を定義することができる。例えば、num_of_views_minus1_for_msは、モーションスキップモードで用いられる参照視点の全体個数を意味し、このnum_of_views_minus1_for_msは、シーケンスパラメータセットの拡張領域から獲得できる。この参照視点の全体個数だけグローバル動きベクトルを獲得することができる。この場合、グローバル動きベクトルはスライスヘッダから獲得できる。また、グローバル動きベクトルは、現在スライスが非視点間ピクチャグループに該当する場合にのみ獲得できる。このように獲得された複数個のグローバル動きベクトルは、上記の方式と同様に順次に適用可能である。
他の例として、グローバル動きベクトルは、参照視点の個数に基づいてシーケンスパラメータセットの拡張領域から獲得できる。例えば、グローバル動きベクトルは、L0方向に対するグローバル動きベクトルとL1方向に対するグローバル動きベクトルとに区分してそれぞれ獲得されることができる。この時、参照視点の個数は視点間参照情報から確認することができ、L0方向に対する参照視点の個数とL1方向に対する参照視点の個数とに区分して獲得できる。このような場合、スライス内の全てのブロックは、シーケンスパラメータセットの拡張領域から獲得された同一のグローバル動きベクトルを用いることになる。そして、マクロブロックレイヤーではそれぞれ異なるグローバル動きベクトルを利用することができる。この時、グローバル動きベクトルを指すインデックスは、既にコーディングされた視点間ピクチャグループのグローバル動きベクトルのインデックスと同一でありうる。また、グローバル動きベクトルの視点識別番号は、既にコーディングされた視点間ピクチャグループのグローバル動きベクトルが指す視点の識別番号と同一でありうる。
他の例として、エンコーダで計算された最も効率の良い対応ブロックの視点識別番号を送信することができる。すなわち、選択された参照視点の視点識別番号がマクロブロックレベルでコーディングされることができる。または、選択された参照視点の視点識別番号がスライスレベルでコーディングされることができる。または、スライスレベルまたはマクロブロックレベルのいずれかを選択できるフラグ情報をスライスレベルで定義することができる。例えば、フラグ情報がマクロブロックレベルでの利用を表す場合、参照視点の視点識別番号はマクロブロックレベルでパージングされることができる。または、フラグ情報がスライスレベルでの利用を表す場合、参照視点の視点識別番号は、スライスレベルでパージングされ、マクロブロックレベルではパージングされない。
一方、L0、L1方向の参照視点リストに含まれている参照視点のうちのいずれの視点を参照視点とするかに関する情報が送信されない場合がありうる。このような場合、各参照視点の対応ブロックにモーション情報が存在するか否かをチェックしながら、最終的な参照視点及び対応ブロックを決定することができる。L0、L1方向の参照視点リストのうちのいずれの参照視点リストに属する参照視点から最優先的にチェックをするか、その参照視点にモーション情報がない場合、その後にはどのような順番でチェックをするか、について様々な実施例が存在できる。
例えば、特定参照視点リストに属する参照視点間の優先順位において、まず、L0方向の参照視点リスト(または、L1方向の参照視点リスト)に含まれている参照視点のうち、参照視点を指すインデックスが低い順にチェックすることができる。ここで、参照視点を指すインデックスとは、エンコーダでビットストリームをコーディングする時に設定された参照視点の一連番号であり、例えば、シーケンス拡張情報(SPS extension)における非視点間ピクチャグループの参照視点をnon_anchor_ref_l0[i]またはnon_anchor_ref_l1[i]と表現する時、ここでiが参照視点を指すインデックスでありうる。エンコーダで、現在視点と近い順に低いインデックスを付与できるが、本発明はこれに限定されない。もし、インデックス「i」が0から始める場合、i=0の参照視点をチェックし、続いて、i=1の参照視点を、i=2の参照視点を順にチェックすることができる。
他の例として、L0方向の参照視点リスト(または、L1方向の参照視点リスト)に含まれている参照視点のうち、現在視点と近い順に参照視点をチェックすることができる。
他の例として、L0方向の参照視点リスト(または、L1方向の参照視点リスト)に含まれている参照視点のうち、基準視点(base view)と近い順に参照視点をチェックすることができる。
L0方向の参照視点リスト及びL1方向の参照視点リスト間の優先順位において、L1方向の参照視点リストよりはL0方向の参照視点リストに属する参照視点からチェックすると設定することができる。このような設定を前提とし、参照視点がL0方向の参照視点リスト及びL1方向の参照視点リストともに存在する場合、L0方向の参照視点リストにまたはL1方向の参照視点リストにのみ存在する場合のそれぞれについて以下に説明する。
図8及び図9は、本発明の実施例によって、現在視点に対する参照視点リストから参照視点及び対応ブロックを決定する方法の一例を示す図である。
図8及び図9を参照すると、現在視点(Vc)及び現在ブロック(MBc)を基準に、L0方向の参照視点リスト(RL1)及びL1方向の参照視点リスト(RL2)が両方とも存在することが分かる。L0方向の参照視点リスト(RL1)のうち、参照視点を表すインデックスが最も低い視点(VC-1=non_anchor_ref_l0[0])を第1参照視点(RV1)と決定し、現在視点(Vc)及び第1参照視点(RV1)間のグローバル動きベクトル(GDV_l0[0])が指すブロックを第1対応ブロック(CB1)と決定することができる(S310)。もし、第1対応ブロック(CB1)がイントラブロックでない場合、すなわち、モーション情報が存在する場合(S320)、第1対応ブロックを最終的に対応ブロックと決定し、第1対応ブロックからモーション情報を獲得することができる(S332)。
一方、第1対応ブロック(CB1)のブロックタイプが画面内予測ブロックである場合(S320)、L1方向の参照視点リスト(RL2)の中でインデックスの最も低い視点(VC+1=non_anchor_ref_l1[0])を第2参照視点(RV2)と決定し、現在視点(Vc)及び第2参照視点(RV2)間のグローバル動きベクトル(GDV_l1[0])が指すブロックを第2対応ブロック(CB2)と決定することができる(S334)。そして、上記のS320段階、S332段階、S334と同様に、第2対応ブロック(CB2)にモーション情報が存在しない場合、L0方向の参照視点リスト(RL1)のうち、インデックスが2番目に低い視点(VC-2=non_anchor_ref_l0[1])を第3参照視点(RV3)とし、L1方向の参照視点リスト(RL2)のうち、インデックスが2番目に低い視点(VC+2=non_anchor_ref_l1[1])を第4参照視点(RV4)として、第3対応ブロック(CB3)及び第4対応ブロック(CB4)について順次にチェックすることができる。すなわち、参照視点を表すインデックスを考慮して、L0方向の参照視点リスト(RL1)とL1方向の参照視点リスト(RL2)の各参照視点を交互にしながらモーション情報が存在するか否かをチェックする。
もし、現在視点に対する視点間参照情報において最も低いインデックスを持つ視点(例:non_anchor_ref_l0[i]、non_anchor_ref_l1[i]、i=0)が現在視点(Vc)と最も近い視点である場合、参照視点の候補(すなわち、第1参照視点、第2参照視点など)の選定基準は、現在視点(Vc)と最も近い順序になっても良い。一方、最も低いインデックスを持つ視点が基準視点(base view)と近い視点である場合、参照視点の候補選定基準は、基準視点(base view)または基準視点(base view)と最も近い順序になることもできるが、本発明はこれに限定されない。
他の例として、隣接ブロックの参照情報に基づいて参照視点を選択することができる。例えば、現在ブロックに隣接するブロックのうち、視点方向の参照情報が利用可能な隣接ブロックが存在しない場合、視点間参照関係に基づいて参照視点を選択できる。または、現在ブロックに隣接するブロックのうち、視点方向の参照情報が利用可能な隣接ブロックが一つ存在する場合、現在ブロックは一つの隣接ブロックの視点方向参照情報を利用できる。または、現在ブロックに隣接するブロックのうち、視点方向の参照情報が利用可能な隣接ブロックが2つ以上存在する場合、同一視点方向の参照情報を持つ隣接ブロックの視点方向参照情報を利用できる。
他の例として、現在ブロックと同一時間帯の異なる視点に存在するブロックのブロックタイプに基づいて参照視点を選択することができる。例えば、16×16マクロブロックをレベル0、16×8または8×16マクロブロックをレベル1、8×8マクロブロックをレベル2、8×4または4×8マクロブロックをレベル3、4×4マクロブロックをレベル4と仮定する。複数個の参照視点のうち、各対応ブロックのブロックタイプを比較することができる。ブロックタイプがいずれも同一の場合、上述した方式を適用してL0またはL1方向に対する参照視点リストから参照視点を選択することができる。一方、ブロックタイプが全て同一でない場合には、より上位レベルにあるブロックを含む参照視点を優先的に選択することができる。または、より下位レベルにあるブロックを含む参照視点を優先的に選択することができる。
図10〜図11は、本発明の実施例によって、多視点ビデオコーディングにおいて様々な拡張性を提供する例を説明するための図である。
図10(a)は空間拡張性(spatial scalability)を表し、図10(b)はフレーム/フィールド拡張性(frame/field scalability)を表し、図10(c)はビット深さ拡張性(bit depth scalability)を表し、図10(d)は色差フォーマット拡張性(chroma format scalability)を表す。
本発明の実施例として、多視点ビデオコーディングにおいて各視点ごとに独立したシーケンスパラメータセット情報を利用することができる。各視点ごとに独立したシーケンスパラメータセット情報を用いると、様々な拡張性に関する情報は各視点ごとに独立して適用されることができる。
他の実施例として、多視点ビデオコーディングにおいて全ての視点が只一つのシーケンスパラメータセット情報を利用することができる。全ての視点が一つのシーケンスパラメータセット情報のみを用いると、上記の様々な拡張性に関する情報は一つのシーケンスパラメータセット内で新しく定義される必要がある。以下、上記の様々な拡張性についてより詳細に説明する。
第一に、図10(a)の空間拡張性(spatial scalability)について説明する。様々な視点で撮った映像は、様々な要因によって空間解像度が異なりうる。例えば、カメラの特性差によって各視点の空間解像度が異なる。このような場合、より効率的なコーディングのために各視点ごとにそれぞれの空間解像度情報が必要とされうる。このために、空間解像度情報を表すシンタックス情報が定義されることができる(S1300)。
まず、全ての視点の空間解像度が同一であるか否かを表すフラグを定義することができる。例えば、図11cで、spatial_scalable_flag=0なら、全ての視点のコーディングされたピクチャの幅(width)と高さ(height)が同一であるということを意味することができる。
spatial_scalable_flag=1なら、各視点のコーディングされたピクチャの幅と高さが異なりうるということを意味できる。フラグ情報によって各視点の空間解像度が同一でない場合、空間解像度が基準視点(base view)と異なる視点の全体個数に関する情報を定義することができる。例えば、num_spatial_scalable_views_minus1値に1を加えた値は、空間解像度が基準視点(base view)と異なる視点の全体個数を意味できる。
このようにして獲得された全体個数によって、空間解像度が基準視点(base view)と異なる視点の視点識別情報を獲得することができる。例えば、spatial_scalable_view_id[i]は、全体個数による、空間解像度が基準視点(base view)と異なる視点の視点識別番号を意味することができる。
また、全体個数によって、視点識別番号を持つ視点のコーディングされたピクチャの幅を表す情報を獲得することができる。例えば、図11aと図11cで、pic_width_in_mbs_minus1[i]値に1を加えた値は、空間解像度が基準視点(base view)と異なる視点のコーディングされたピクチャの幅を意味することができる。ここで、幅を表す情報は、マクロブロック単位に関する情報でありうる。したがって、輝度成分に対するピクチャの幅は、pic_width_in_mbs_minus1[i]値に16を乗じた値でありうる。
また、全体個数によって、視点識別番号と同じ視点のコーディングされたピクチャの高さを表す情報を獲得することができる。例えば、pic_height_in_map_units_minus1[i]値に1を加えた値は、空間解像度が基準視点(base view)と異なる視点のコーディングされたフレーム/フィールドの高さを意味することができる。ここで、高さを表す情報は、スライスグループマップ単位に関する情報でありうる。したがって、ピクチャの大きさは、幅を表す情報と高さを表す情報とを乗じた値でありうる。
第二に、図10(b)のフレーム/フィールド拡張性(frame/field scalability)について説明する。様々な視点で撮った映像は、様々な要因によってコーディング方式が異なりうる。例えば、各視点映像は、フレーム符号化、フィールド符号化、ピクチャレベルフィールド/フレーム適応符号化またはマクロブロックレベルフィールド/フレーム適応符号化方式によりコーディングされることができる。このような場合、より効率的なコーディングのために、各視点ごとにそれぞれの符号化方式を知らせる必要がある。このために、当該符号化方式を表すシンタックス情報が定義されることができる(S1400)。
まず、全ての視点映像の符号化方式が同一であるか否かを表すフラグを定義することができる。例えば、図11cで、frame_field_scalable_flag=0なら、全ての視点のコーディング方式を表すフラグ情報が同一であるということを意味することができる。コーディング方式を表すフラグ情報の例には、図11a及び図11cを参照すると、frame_mbs_only_flag及びmbadaptive_frame_field_flagがありうる。frame_mbs_only_flagは、コーディングされたピクチャがフレームマクロブロックのみを含むか否かを表すフラグ情報を意味できる。mbadaptive_frame_field_flagは、フレーム内でフレームマクロブロックとフィールドマクロブロックとの間にスイッチングが起きるか否かを表すフラグ情報を意味できる。frame_field_scalable_flag=1なら、各視点ごとにコーディング方式を表すフラグ情報が異なるということを意味できる。
フラグ情報によって各視点のコーディング方式が同一でない場合、コーディング方式が基準視点(base view)と異なる視点の全体個数に関する情報を定義することができる。例えば、num_frame_field_scalable_views_minus1値に1を加えた値は、フレーム/フィールドコーディング方式が基準視点(base view)と異なる視点の全体個数を意味できる。
このようにして獲得された全体個数によって、コーディング方式が基準視点(base view)と異なる視点の視点識別情報を獲得することができる。例えば、frame_field_scalable_view_id[i]は、全体個数による、コーディング方式が基準視点(base view)と異なる視点の視点識別番号を意味することができる。
また、全体個数によって、視点識別番号と同じ視点のコーディングされたピクチャのコーディング方式を表す情報を獲得することができる。例えば、frame_mbs_only_flag[i]及びmbadaptive_frame_field_flag[i]がありうる。これについては、上述した通りである。
第三に、図10(c)のビット深さ拡張性(bit depth scalability)について説明する。様々な視点で撮った映像は、様々な要因により輝度信号及び色差信号のビット深さと量子化パラメータレンジオフセットが異なりうる。このような場合、より効率的なコーディングのために、各視点ごとにそれぞれのビット深さと量子化パラメータレンジオフセットを知らせる必要がある。このために、ビット深さと量子化パラメータレンジオフセットを表すシンタックス情報が定義されることができる(S1200)。
まず、全ての視点映像のビット深さと量子化パラメータレンジオフセットが同一であるか否かを表すフラグを定義することができる。例えば、bit_depth_scalable_flag=0なら、全ての視点のビット深さと量子化パラメータレンジオフセットが同一であるということを意味することができる。bit_depth_scalable_flag=1なら、各視点ごとにビット深さと量子化パラメータレンジオフセットが異なるということを意味できる。フラグ情報は、プロファイル識別子に基づいてシーケンスパラメータセットの拡張領域から獲得されることができる。
フラグ情報によって各視点のビット深さが同一でない場合、ビット深さが基準視点(base view)と異なる視点の全体個数に関する情報を定義することができる。例えば、num_bit_depth_scalable_views_minus1値に1を加えた値は、ビット深さが基準視点(base view)と異なる視点の全体個数を意味することができる。このようにして獲得された全体個数によって、ビット深さが基準視点(base view)と異なる視点の視点識別情報を獲得することができる。例えば、bit_depth_scalable_view_id[i]は、全体個数による、ビット深さが基準視点と異なる視点の視点識別番号を意味することができる。
また、全体個数によって、視点識別番号と同じ視点の輝度信号及び色差信号のビット深さと量子化パラメータレンジオフセットを表す情報を獲得することができる。例えば、図11a及び図11bで、bit_depth_luma_minus8[i]とbit_depth_chroma_minus8[i]がありうる。bit_depth_luma_minus8[i]は、ビット深さが基準視点と異なる視点のビット深さと量子化パラメータレンジオフセットを意味することができる。ここで、ビット深さは、輝度信号に関する情報でありうる。bit_depth_chroma_minus8[i]は、ビット深さが基準視点と異なる視点のビット深さと量子化パラメータレンジオフセットを意味することができる。ここで、ビット深さは、色差信号に関する情報でありうる。ビット深さ情報とマクロブロックの幅及び高さ情報を用いて、視点識別番号と同じ視点の元来マクロブロックのビット(RawMbBits[i])がわかる。
第四に、図10(d)の色差フォーマット拡張性(chroma format scalability)について説明する。様々な視点で撮った映像は、様々な要因によって各視点ごとに映像フォーマットが異なりうる。このような場合、より効率的なコーディングのために各視点の映像フォーマットを知らせる必要がある。このために、映像フォーマットを表すシンタックス情報が定義されることができる(S1100)。
まず、全ての視点の映像フォーマットが同一であるか否かを表すフラグを定義することができる。例えば、chroma_format_scalable_flag=0なら、全ての視点の映像フォーマットが同一であるということを意味できる。すなわち、輝度サンプル対比色差サンプルの割合が同一であるということを意味することができる。chroma_format_scalable_flag=1なら、各視点の映像フォーマットが異なりうるということを意味できる。フラグは、プロファイル識別子に基づいてシーケンスパラメータセットの拡張領域から獲得されることができる。
このフラグによって各視点の映像フォーマットが同一でない場合、映像フォーマットが基準視点と異なる視点の全体個数に関する情報を定義することができる。例えば、num_chroma_format_scalable_views_minus1値に1を加えた値は、映像フォーマットが基準視点と異なる視点の全体個数を意味することができる。
このようにして獲得された全体個数によって、映像フォーマットが基準視点(base view)と異なる視点の視点識別情報を獲得することができる。例えば、chroma_format_scalable_view_id[i]は、全体個数による、映像フォーマットが基準視点と異なる視点の視点識別番号を意味することができる。
また、全体個数によって、視点識別番号を持つ視点の映像フォーマットを表す情報を獲得することができる。例えば、図11bで、chroma_format_idc[i]は、映像フォーマットが基準視点と異なる視点の映像フォーマットを意味することができる。特に、4:4:4フォーマット、4:2:2フォーマットまたは4:2:0フォーマットを意味することができる。ここで、chroma_format_idc[i]が4:4:4フォーマットを表す場合には、レジデュアルカラー変換過程が適用されるか否かを表すフラグ(residual_colour_transform_flag[i])情報を獲得することができる。
以上の如く、本発明が適用されるデコーディング/エンコーディング装置は、DMB(Digital Multimedia Broadcasting)のようなマルチメディア放送送/受信装置に組み込まれ、ビデオ信号及びデータ信号などを復号化するのに使用されることができる。また、マルチメディア放送送/受信装置は、移動通信端末機を含むことができる。
また、本発明が適用されるデコーディング/エンコーディング方法は、コンピュータで実行されるためのプログラムとして製作され、コンピュータ読み取り可能記録媒体に記憶されることができ、本発明によるデータ構造を持つマルチメディアデータも、コンピュータ読み取り可能記録媒体に記憶されることができる。コンピュータ読み取り可能記録媒体は、コンピュータシステムで読み取りできるデータが記憶されるいずれの種類の保存装置をも含む。コンピュータ読み取り可能記録媒体の例には、ROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ記憶装置などがあり、さらに、キャリアウェーブ(例えば、インターネットを介した送信)の形態で具現されるものも含む。また、エンコーディング方法により生成されたビットストリームは、コンピュータ読み取り可能記録媒体に記憶されたり、有/無線通信網を用いて送信されることができる。
以上説明した本発明の好適な実施例は、本発明を例示するためのもので、添付された特許請求の範囲に開示された本発明の技術的思想及びその技術的範囲内で、様々な他の形態に改良、変更、代替または付加可能であるということは、当業者にとって自明である。
Claims (13)
- 現在NALユニットのコーディングされたピクチャが視点間ピクチャグループに含まれるか否かを表す識別情報を獲得し、
前記識別情報によって非視点間ピクチャグループの視点間参照情報を獲得し、
前記非視点間ピクチャグループの視点間参照情報によって動きベクトルを獲得し、
前記動きベクトルを用いて第1対応ブロックの位置を誘導し、
前記誘導された第1対応ブロックの動き情報を用いて現在ブロックをデコーディングする、ことを有し、
前記視点間参照情報は、非視点間ピクチャグループの参照視点の個数情報を含む、
ことを特徴とするビデオ信号デコーディング方法。 - 前記誘導された第1対応ブロックのブロックタイプを確認することをさらに有し、
前記第1対応ブロックのブロックタイプに基づいて、前記第1対応ブロックの視点と異なる参照視点に存在する第2対応ブロックの位置を誘導するか否かが決定される、請求項1に記載のビデオ信号デコーディング方法。 - 前記第1対応ブロック及び第2対応ブロックの位置は、一定の順序に基づいて誘導され、
前記一定の順序は、非視点間ピクチャグループのL0方向に対する参照視点を優先的に用い、その次にL1方向に対する参照視点を用いる、請求項2に記載のビデオ信号デコーディング方法。 - 前記第1対応ブロックのブロックタイプがイントラブロックである場合、前記L1方向に対する参照視点を利用可能である、請求項3に記載のビデオ信号デコーディング方法。
- 前記L0/L1方向に対する参照視点は、現在視点と最も近い順に用いられる、請求項3に記載のビデオ信号デコーディング方法。
- 前記現在ブロックの動き情報が誘導されるか否かを表すフラグ情報を獲得することをさらに有し、
前記フラグ情報に基づいて前記第1対応ブロックの位置を誘導する、請求項1に記載のビデオ信号デコーディング方法。 - 前記第1対応ブロックの動き情報を獲得し、
前記第1対応ブロックの動き情報に基づいて前記現在ブロックの動き情報を誘導することをさらに有し、
前記現在ブロックの動き情報を用いて前記現在ブロックをデコーディングする、請求項1に記載のビデオ信号デコーディング方法。 - 前記動き情報は、動きベクトル及び参照インデックスを含む、請求項1に記載のビデオ信号デコーディング方法。
- 前記動きベクトルは、視点間ピクチャグループのグローバル動きベクトルである、請求項1に記載のビデオ信号デコーディング方法。
- 現在NALユニットのコーディングされたピクチャが視点間ピクチャグループであるか否かを表す識別情報によって、非視点間ピクチャグループの視点間参照情報を獲得する参照情報獲得部と、
前記非視点間ピクチャグループの視点間参照情報によって獲得された視点間ピクチャグループのグローバル動きベクトルを用いて対応ブロックの位置を誘導する対応ブロック探索部と、を有し、
前記視点間参照情報は、非視点間ピクチャグループの参照視点の個数情報を含む、
ことを特徴とするビデオ信号デコーディング装置。 - 前記ビデオ信号は、放送信号として受信される、請求項1に記載のビデオ信号デコーディング方法。
- 前記ビデオ信号は、デジタル媒体を通じて受信される、請求項1に記載のビデオ信号デコーディング方法。
- 請求項1に記載の方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能媒体。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US89275307P | 2007-03-02 | 2007-03-02 | |
US90792607P | 2007-04-23 | 2007-04-23 | |
US94640207P | 2007-06-27 | 2007-06-27 | |
US94820107P | 2007-07-06 | 2007-07-06 | |
US94951607P | 2007-07-13 | 2007-07-13 | |
US95193607P | 2007-07-25 | 2007-07-25 | |
US99269307P | 2007-12-05 | 2007-12-05 | |
PCT/KR2008/001209 WO2008108566A1 (en) | 2007-03-02 | 2008-03-03 | A method and an apparatus for decoding/encoding a video signal |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010520697A true JP2010520697A (ja) | 2010-06-10 |
Family
ID=39738410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009552582A Pending JP2010520697A (ja) | 2007-03-02 | 2008-03-03 | ビデオ信号のデコーディング/エンコーディング方法及び装置 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2135454A4 (ja) |
JP (1) | JP2010520697A (ja) |
KR (1) | KR20090129412A (ja) |
WO (1) | WO2008108566A1 (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012121052A1 (ja) * | 2011-03-08 | 2012-09-13 | ソニー株式会社 | 画像処理装置、画像処理方法、及び、プログラム |
JP2014505398A (ja) * | 2010-12-14 | 2014-02-27 | サムスン エレクトロニクス カンパニー リミテッド | 多視点ビデオ符号化/復号化装置及び方法 |
JP2014512720A (ja) * | 2011-02-21 | 2014-05-22 | サムスン エレクトロニクス カンパニー リミテッド | 多視点ビデオの符号化方法及び装置、その復号化方法及び装置 |
JP2014514861A (ja) * | 2011-04-20 | 2014-06-19 | クゥアルコム・インコーポレイテッド | ビデオコード化における動きベクトル予測 |
JP2015509345A (ja) * | 2012-02-01 | 2015-03-26 | ノキア コーポレイション | ビデオ符号化方法および装置 |
JP2015526018A (ja) * | 2012-07-06 | 2015-09-07 | サムスン エレクトロニクス カンパニー リミテッド | 多階層ビデオ符号化方法及びその装置、並びに多階層ビデオ復号化方法及びその装置 |
JP2016513919A (ja) * | 2013-03-06 | 2016-05-16 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 3dビデオコーディングにおける導出視差ベクトル |
JP2016519504A (ja) * | 2013-04-11 | 2016-06-30 | エルジー エレクトロニクス インコーポレイティド | ビデオ信号処理方法及び装置 |
JP2016525319A (ja) * | 2013-07-17 | 2016-08-22 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | ビデオコード化における視差ベクトルを使用するブロック識別 |
US9503720B2 (en) | 2012-03-16 | 2016-11-22 | Qualcomm Incorporated | Motion vector coding and bi-prediction in HEVC and its extensions |
US10200709B2 (en) | 2012-03-16 | 2019-02-05 | Qualcomm Incorporated | High-level syntax extensions for high efficiency video coding |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5303556B2 (ja) | 2007-08-06 | 2013-10-02 | トムソン ライセンシング | 複数のインタービュー参照ピクチャを用いたモーションスキップモードのための方法及び装置 |
JP5298201B2 (ja) * | 2008-10-07 | 2013-09-25 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | メディアコンテナファイル |
KR101158491B1 (ko) * | 2008-12-08 | 2012-06-20 | 한국전자통신연구원 | 다시점 영상 부호화, 복호화 방법 및 그 장치. |
CN102131091B (zh) * | 2010-01-15 | 2013-01-23 | 联发科技股份有限公司 | 解码端运动向量导出方法 |
US20110176611A1 (en) * | 2010-01-15 | 2011-07-21 | Yu-Wen Huang | Methods for decoder-side motion vector derivation |
BR112013004454A2 (pt) * | 2010-09-03 | 2016-06-07 | Sony Corp | dispositivos e métodos de codificação e de decodificação |
AU2011296956A1 (en) * | 2010-09-03 | 2013-02-14 | Sony Corporation | Encoding device and encoding method, as well as decoding device and decoding method |
US8494294B2 (en) * | 2010-09-14 | 2013-07-23 | Samsung Electronics Co., Ltd. | Apparatus and method for multilayer picture encoding/decoding |
JP5664762B2 (ja) * | 2011-03-17 | 2015-02-04 | 富士通株式会社 | 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム |
KR20140011481A (ko) * | 2011-06-15 | 2014-01-28 | 미디어텍 인크. | 3d 비디오 코딩을 위한 움직임 벡터 및 변이 벡터의 예측과 보상 방법 및 장치 |
WO2012177052A2 (ko) * | 2011-06-21 | 2012-12-27 | 한국전자통신연구원 | 인터 예측 방법 및 그 장치 |
KR20120140592A (ko) | 2011-06-21 | 2012-12-31 | 한국전자통신연구원 | 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치 |
US9712819B2 (en) | 2011-10-12 | 2017-07-18 | Lg Electronics Inc. | Image encoding method and image decoding method |
US9762903B2 (en) * | 2012-06-01 | 2017-09-12 | Qualcomm Incorporated | External pictures in video coding |
JP6594773B2 (ja) * | 2012-10-07 | 2019-10-23 | エルジー エレクトロニクス インコーポレイティド | ビデオ信号処理方法及び装置 |
EP2966868B1 (en) | 2012-10-09 | 2018-07-18 | HFI Innovation Inc. | Method for motion information prediction and inheritance in video coding |
MX349110B (es) * | 2013-01-17 | 2017-07-12 | Samsung Electronics Co Ltd | Método para codificar video para un entorno de decodificador y dispositivo para el mismo y método para decodificar video con base en el entorno de decodificador y dispositivo para el mismo. |
CN103533361B (zh) * | 2013-10-21 | 2017-01-04 | 华为技术有限公司 | 多视点视差矢量的确定方法、编码设备及解码设备 |
EP3796652B1 (en) * | 2019-09-23 | 2022-05-18 | Axis AB | Video encoding method and method for reducing file size of encoded video |
JP7518204B2 (ja) * | 2020-05-22 | 2024-07-17 | バイトダンス インコーポレイテッド | 映像ビットストリーム処理におけるピクチャタイプの制約 |
CN116456100B (zh) * | 2023-06-16 | 2023-08-29 | 深流微智能科技(深圳)有限公司 | 一种帧间编码树单元划分方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050008240A1 (en) * | 2003-05-02 | 2005-01-13 | Ashish Banerji | Stitching of video for continuous presence multipoint video conferencing |
US20050201471A1 (en) * | 2004-02-13 | 2005-09-15 | Nokia Corporation | Picture decoding method |
KR100770704B1 (ko) * | 2005-08-04 | 2007-10-29 | 삼성전자주식회사 | 픽쳐 스킵 방법 및 장치 |
BRPI0921986A2 (pt) * | 2008-11-25 | 2018-06-05 | Thomson Licensing | métodos e aparelho para filtralçao por eliminação de artefatos à base de matrizes esparsas para codificação e decodificação de vídeo |
-
2008
- 2008-03-03 EP EP08723247A patent/EP2135454A4/en not_active Withdrawn
- 2008-03-03 KR KR1020097018359A patent/KR20090129412A/ko not_active Withdrawn
- 2008-03-03 JP JP2009552582A patent/JP2010520697A/ja active Pending
- 2008-03-03 WO PCT/KR2008/001209 patent/WO2008108566A1/en active Application Filing
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014505398A (ja) * | 2010-12-14 | 2014-02-27 | サムスン エレクトロニクス カンパニー リミテッド | 多視点ビデオ符号化/復号化装置及び方法 |
JP2014512720A (ja) * | 2011-02-21 | 2014-05-22 | サムスン エレクトロニクス カンパニー リミテッド | 多視点ビデオの符号化方法及び装置、その復号化方法及び装置 |
US9105076B2 (en) | 2011-03-08 | 2015-08-11 | Sony Corporation | Image processing apparatus, image processing method, and program |
CN103404154A (zh) * | 2011-03-08 | 2013-11-20 | 索尼公司 | 图像处理设备、图像处理方法以及程序 |
WO2012121052A1 (ja) * | 2011-03-08 | 2012-09-13 | ソニー株式会社 | 画像処理装置、画像処理方法、及び、プログラム |
JP2016026435A (ja) * | 2011-04-20 | 2016-02-12 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | ビデオコード化における動きベクトル予測 |
US9485517B2 (en) | 2011-04-20 | 2016-11-01 | Qualcomm Incorporated | Motion vector prediction with motion vectors from multiple views in multi-view video coding |
JP2014514862A (ja) * | 2011-04-20 | 2014-06-19 | クゥアルコム・インコーポレイテッド | ビデオコード化における動きベクトル予測 |
US9584823B2 (en) | 2011-04-20 | 2017-02-28 | Qualcomm Incorporated | Determining motion vectors for motion vector prediction based on motion vector type in video coding |
US9247249B2 (en) | 2011-04-20 | 2016-01-26 | Qualcomm Incorporated | Motion vector prediction in video coding |
JP2014514861A (ja) * | 2011-04-20 | 2014-06-19 | クゥアルコム・インコーポレイテッド | ビデオコード化における動きベクトル予測 |
US9479775B2 (en) | 2012-02-01 | 2016-10-25 | Nokia Technologies Oy | Method and apparatus for video coding |
JP2015509345A (ja) * | 2012-02-01 | 2015-03-26 | ノキア コーポレイション | ビデオ符号化方法および装置 |
US10397610B2 (en) | 2012-02-01 | 2019-08-27 | Nokia Technologies Oy | Method and apparatus for video coding |
US9503720B2 (en) | 2012-03-16 | 2016-11-22 | Qualcomm Incorporated | Motion vector coding and bi-prediction in HEVC and its extensions |
US10200709B2 (en) | 2012-03-16 | 2019-02-05 | Qualcomm Incorporated | High-level syntax extensions for high efficiency video coding |
JP2015526018A (ja) * | 2012-07-06 | 2015-09-07 | サムスン エレクトロニクス カンパニー リミテッド | 多階層ビデオ符号化方法及びその装置、並びに多階層ビデオ復号化方法及びその装置 |
US10116947B2 (en) | 2012-07-06 | 2018-10-30 | Samsung Electronics Co., Ltd. | Method and apparatus for coding multilayer video to include scalable extension type information in a network abstraction layer unit, and method and apparatus for decoding multilayer video |
JP2016513919A (ja) * | 2013-03-06 | 2016-05-16 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 3dビデオコーディングにおける導出視差ベクトル |
JP2016519504A (ja) * | 2013-04-11 | 2016-06-30 | エルジー エレクトロニクス インコーポレイティド | ビデオ信号処理方法及び装置 |
US10080030B2 (en) | 2013-04-11 | 2018-09-18 | Lg Electronics Inc. | Video signal processing method and device |
JP2016525319A (ja) * | 2013-07-17 | 2016-08-22 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | ビデオコード化における視差ベクトルを使用するブロック識別 |
Also Published As
Publication number | Publication date |
---|---|
WO2008108566A1 (en) | 2008-09-12 |
EP2135454A1 (en) | 2009-12-23 |
KR20090129412A (ko) | 2009-12-16 |
EP2135454A4 (en) | 2010-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010520697A (ja) | ビデオ信号のデコーディング/エンコーディング方法及び装置 | |
KR100949982B1 (ko) | 비디오 신호를 디코딩/인코딩하기 위한 방법 및 장치 | |
US8488677B2 (en) | Method and an apparatus for decoding/encoding a video signal | |
KR101619451B1 (ko) | 다시점 비디오 신호의 처리 방법 및 장치 | |
US8553073B2 (en) | Processing multiview video | |
JP5156088B2 (ja) | ビデオ信号のデコーディング/エンコーディング方法及び装置 | |
US20100266042A1 (en) | Method and an apparatus for decoding/encoding a video signal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121023 |