特許第6073404号(P6073404)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サムスン エレクトロニクス カンパニー リミテッドの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6073404
(24)【登録日】2017年1月13日
(45)【発行日】2017年2月1日
(54)【発明の名称】映像復号化方法及び装置
(51)【国際特許分類】
   H04N 19/52 20140101AFI20170123BHJP
   H04N 19/46 20140101ALI20170123BHJP
   H04N 19/70 20140101ALI20170123BHJP
   H04N 19/105 20140101ALI20170123BHJP
   H04N 19/157 20140101ALI20170123BHJP
   H04N 19/176 20140101ALI20170123BHJP
   H04N 19/96 20140101ALI20170123BHJP
【FI】
   H04N19/52
   H04N19/46
   H04N19/70
   H04N19/105
   H04N19/157
   H04N19/176
   H04N19/96
【請求項の数】2
【全頁数】31
(21)【出願番号】特願2015-87004(P2015-87004)
(22)【出願日】2015年4月21日
(62)【分割の表示】特願2012-548896(P2012-548896)の分割
【原出願日】2011年1月14日
(65)【公開番号】特開2015-165694(P2015-165694A)
(43)【公開日】2015年9月17日
【審査請求日】2015年4月21日
(31)【優先権主張番号】10-2010-0003554
(32)【優先日】2010年1月14日
(33)【優先権主張国】KR
(73)【特許権者】
【識別番号】503447036
【氏名又は名称】サムスン エレクトロニクス カンパニー リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】リ,テミー
(72)【発明者】
【氏名】ハン,ウ−ジン
(72)【発明者】
【氏名】ミン,ジョン−ヘ
【審査官】 山▲崎▼ 雄介
(56)【参考文献】
【文献】 米国特許出願公開第2013/0128970(US,A1)
【文献】 国際公開第2010/002214(WO,A2)
【文献】 国際公開第2008/082158(WO,A1)
【文献】 国際公開第2008/027192(WO,A2)
【文献】 国際公開第2007/034918(WO,A1)
【文献】 特開2009−201112(JP,A)
【文献】 国際公開第2007/074543(WO,A1)
【文献】 Guillaume Laroche, et al.,RD Optimized Coding for Motion Vector Predictor Selection,IEEE Transactions on Circuits and Systems for Video Technology,IEEE,2008年 9月,vol.18, no.9,pp.1247-1257
【文献】 Joel Jung, Guillaume Laroche,Competition-Based Scheme for Motion Vector Selection and Coding,ITU - Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group (VCEG) 29th Meeting: Klagenfurt, Austria,2006年 7月13日,VCEG-AC06,pp.1-7,URL,http://wftp3.itu.int/av-arch/video-site/0607_Kla/
【文献】 Jaeil Kim, Taeyoung Na, Changhee Kim, Bumshik Lee, Munchurl Kim,Enlarging MB size for high fidelity video coding beyond HD,ITU - Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group (VCEG) 36th Meeting: San Diego, USA,2008年10月 5日,VCEG-AJ21,pp.1-6,URL,http://wftp3.itu.int/av-arch/video-site/0810_San/
【文献】 Jiali Xheng, et al.,Extended direct mode for hierarchical B picture coding,Image Processing, 2005. ICIP 2005. IEEE International Conference on,IEEE,2005年 9月14日,URL,http://ieeexplore.ieee.org/document/1530042/
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00−19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
ビットストリームから現在ブロックの時間的予測動きベクトル候補が含まれた時間的参照ピクチャが、現在ピクチから先行する方向の参照ピクチャなのか、あるいは後行する方向の参照ピクチなのかを示す指示情報を取得する段階と、
前記ビットストリームから前記現在ブロックの予測モード情報を獲得する段階と、
前記現在ブロックの予測モードがインター予測モードである場合、前記現在ブロックに隣接した周辺ブロックを用いて、前記現在ブロックの空間的予測動きベクトル候補を獲得する段階と、
前記現在ブロックの予測モードがインター予測モードである場合、時間方向の時間的参照ピクチャに含まれ前記現在ブロックと同一位置のブロックを用いて、前記現在ブロックの時間的予測動きベクトル候補を獲得する段階と、
前記現在ブロックに用いられた予測動きベクトルについての情報に基づいて、前記時間的及び空間的予測動きベクトル候補のうち前記現在ブロックの予測動きベクトルを獲得する段階と、
前記ビットストリームから獲得された差ベクトルと、前記現在ブロックの予測動きベクトルに基づいて前記現在ブロックの動きベクトルを獲得する段階とを含み、
前記現在ブロックの時間的予測動きベクトル候補を獲得する段階は、
同一位置のブロックが参照する参照ピクチャのPOC(Picture Order Count)と前記同一位置のブロックが含まれた参照ピクチャのPOCとの間の差値及び現在ピクチャのPOCと前記現在ブロックが参照する参照ピクチャのPOCとの間の差値に基づいて、前記現在ブロックと同一位置のブロックの動きベクトルをスケーリングして前記現在ブロックの予測動きベクトル候補を獲得し、
映像が最大符号化単位サイズ情報によって複数の最大符号化単位で分割され、最大符号化単位は深度を有する一つ以上の符号化単位で階層的に分割され、現在深度の符号化単位は上位深度の符号化単位から分割された正方形のデータ単位のうち一つであり、前記現在深度の符号化単位が予測復号化のために少なくとも一つの予測単位で分割された場合、前記現在ブロックは前記現在深度の符号化単位を分割した少なくとも一つの予測単位であることを特徴とする映像復号化方法。
【請求項2】
ビットストリームから現在ブロックの時間的予測動きベクトル候補が含まれた時間的参照ピクチャが現在ピクチから先行する方向の参照ピクチなのか、あるいは後行する方向の参照ピクチャなのかを示す指示情報及び前記現在ブロックの予測モード情報を獲得するエントロピー復号化部と、
前記現在ブロックの予測モードがインター予測モードである場合、前記現在ブロックに隣接した周辺ブロックを用いて、前記現在ブロックの空間的予測動きベクトル候補を獲得し、前記現在ブロックの予測モードがインター予測モードである場合、時間方向の時間的参照ピクチャに含まれ前記現在ブロックと同一位置のブロックを用いて、前記現在ブロックの時間的予測動きベクトル候補を獲得し、前記現在ブロックに用いられた予測動きベクトルについての情報に基づいて、前記時間的及び空間的予測動きベクトル候補のうち前記現在ブロックの予測動きベクトルを獲得し、前記ビットストリームから獲得された差ベクトルと、前記現在ブロックの予測動きベクトルに基づいて前記現在ブロックの動きベクトルを獲得する動きベクトル復元部とを備え、
前記動きベクトル復元部は、
同一位置のブロックが参照する参照ピクチャのPOC(Picture Order Count)と前記同一位置のブロックが含まれた参照ピクチャのPOCとの間の差値及び現在ピクチャのPOCと前記現在ブロックが参照する参照ピクチャのPOCとの間の差値に基づいて、前記現在ブロックと同一位置のブロックの動きベクトルをスケーリングして前記現在ブロックの予測動きベクトル候補を獲得し、
映像が最大符号化単位サイズ情報によって複数の最大符号化単位で分割され、最大符号化単位は深度を有する一つ以上の符号化単位で階層的に分割され、現在深度の符号化単位は上位深度の符号化単位から分割された正方形のデータ単位のうち一つであり、前記現在深度の符号化単位が予測復号化のために少なくとも一つの予測単位で分割された場合、前記現在ブロックは前記現在深度の符号化単位を分割した少なくとも一つの予測単位であることを特徴とする映像復号化装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動きベクトル符号化方法及び装置に係り、さらに詳細には、現在ブロックの動きベクトルを予測して符号化/復号化する方法及び装置に関する。
【背景技術】
【0002】
MPEG−4 H.264/MPEG−4 AVC(Advanced Video Coding)のようなコーデックでは、現在ブロックの動きベクトルを予測するために、現在ブロックに隣接している、以前に符号化されたブロックの動きベクトルを用いる。現在ブロックの左側上部及び右側上部に隣接している、以前に符号化されたブロックの動きベクトルの中央値(median)を、現在ブロックの予測動きベクトルとして用いる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明の実施形態は、動きベクトルを符号化/復号化する方法及び装置を提供し、前記方法を行うためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
【課題を解決するための手段】
【0004】
本発明の一実施形態による動きベクトルの符号化方法は、少なくとも一つの予測動きベクトルのうち一つの予測動きベクトルを指示する情報を符号化する第1モード、及び現在ブロックに隣接している、以前に符号化された領域に含まれたピクセルに基づいて予測動きベクトルの生成を指示する情報を符号化する第2モードのうち一つを選択する段階と、前記選択されたモードによって現在ブロックの予測動きベクトルを定め、前記現在ブロックの予測動きベクトルについての情報を符号化する段階と、前記現在ブロックの動きベクトルと前記現在ブロックの予測動きベクトルとの間の差ベクトルを符号化する段階と、を含み、前記第2モードは、前記少なくとも一つの予測動きベクトルに基づいて予測動きベクトルを検索する範囲を設定し、設定された検索範囲を、前記以前に符号化された領域に含まれたピクセルを用いて検索し、前記予測動きベクトルの生成を指示する情報を符号化するモードであることを特徴とする。
【0005】
本発明の他の実施形態によれば、前記第1モード及び第2モードのうち一つを選択する段階は、現在ピクチャーまたは現在スライスの最大符号化単位のサイズから現在ブロックのサイズに段階的に縮小した程度を示す深度に基づいて、前記第1モード及び前記第2モードのうち一つを選択する段階を含む。
【0006】
本発明のさらに他の実施形態によれば、前記第1モード及び第2モードのうち一つを選択する段階は、前記現在ブロックを含む現在ピクチャーまたは現在スライス単位で、前記第1モード及び前記第2モードのうち一つを選択する段階を含む。
【0007】
本発明のさらに他の実施形態によれば、前記第1モード及び第2モードのうち一つを選択する段階は、現在ブロックがスキップモードで符号化するかどうかに基づいて、前記第1モード及び前記第2モードのうち一つを選択する段階を含む。
【0008】
本発明のさらに他の実施形態によれば、前記少なくとも一つの予測動きベクトルは、現在ブロックの左側に隣接しているブロックの第1動きベクトル、上部に隣接しているブロックの第2動きベクトル、及び右側上部に隣接しているブロックの第3動きベクトルを含む。
【0009】
本発明のさらに他の実施形態によれば、前記少なくとも一つの予測動きベクトルは、前記第1動きベクトル、前記第2動きベクトル及び前記第3動きベクトルの中央値をさらに含む。
【0010】
本発明のさらに他の実施形態によれば、前記少なくとも一つの予測動きベクトルは、参照ピクチャーの前記現在ブロックと同じ位置(colocated)のブロックの動きベクトル、及び前記参照ピクチャーと前記現在ピクチャーとの間の時間的距離に基づいて生成された予測動きベクトルをさらに含む。
【0011】
本発明のさらに他の実施形態によれば、前記予測動きベクトルについての情報を符号化する段階は、前記同じ位置のブロックが前記現在ピクチャーより時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報を符号化する段階をさらに含むことを特徴とする。
【0012】
本発明のさらに他の実施形態によれば、前記同じ位置のブロックが、前記現在ピクチャーより時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報は、前記現在ブロックが含まれたスライスのヘッダーに挿入される情報であることを特徴とする。
【0013】
前記技術的課題を解決するための本発明の一実施形態による動きベクトルの符号化装置は、少なくとも一つの予測動きベクトルのうち一つの予測動きベクトルを指示する情報を符号化する第1モード、及び現在ブロックに隣接している、以前に符号化された領域に含まれたピクセルに基づいて予測動きベクトルの生成を指示する情報を符号化する第2モードのうち一つを選択し、前記選択されたモードに基づいて現在ブロックの予測動きベクトルを定める予測部と、前記選択されたモードに基づいて、前記定められた現在ブロックの予測動きベクトルについての情報を符号化する第1符号化部と、現在ブロックの動きベクトルと前記現在ブロックの予測動きベクトルとの間の差ベクトルを符号化する第2符号化部と、を備え、前記第2モードは、前記少なくとも一つの予測動きベクトルに基づいて予測動きベクトルを検索する範囲を設定し、設定された検索範囲を前記以前に符号化された領域に含まれたピクセルを用いて検索し、前記予測動きベクトルの生成を指示する情報を符号化するモードであることを特徴とする。
【0014】
前記技術的課題を解決するための本発明の一実施形態による動きベクトルの復号化方法は、第1モード及び第2モードのうち選択された一つのモードによって符号化された、現在ブロックの予測動きベクトルについての情報を復号化する段階と、現在ブロックの動きベクトルと前記現在ブロックの予測動きベクトルとの間の差ベクトルを復号化する段階と、前記復号化された現在ブロックの予測動きベクトルについての情報に基づいて、現在ブロックの予測動きベクトルを生成する段階と、前記予測動きベクトル及び前記差ベクトルに基づいて現在ブロックの動きベクトルを復元する段階と、を含み、前記第1モードは、少なくとも一つの予測動きベクトルのうち一つの予測動きベクトルを指示する情報を符号化するモードであり、前記第2モードは、前記少なくとも一つの予測動きベクトルに基づいて予測動きベクトルを検索する範囲を設定し、設定された検索範囲を、前記現在ブロックに隣接している、以前に復号化された領域に含まれたピクセルを用いて検索し、前記予測動きベクトルの生成を指示する情報を符号化するモードであることを特徴とする。
【0015】
前記技術的課題を解決するための本発明の一実施形態による動きベクトルの復号化装置は、第1モード及び第2モードのうち選択された一つのモードによって符号化された現在ブロックの予測動きベクトルについての情報を復号化する第1復号化部と、現在ブロックの動きベクトルと前記現在ブロックの予測動きベクトルとの間の差ベクトルを復号化する第2復号化部と、前記復号化された現在ブロックの予測動きベクトルについての情報に基づいて現在ブロックの予測動きベクトルを生成する予測部と、前記予測動きベクトル及び前記差ベクトルに基づいて現在ブロックの動きベクトルを復元する動きベクトル復元部と、を備え、前記第1モードは、少なくとも一つの予測動きベクトルのうち、現在ブロックの予測動きベクトルに用いられた一つの予測動きベクトルを指示する情報を符号化するモードであり、前記第2モードは、前記少なくとも一つの予測動きベクトルに基づいて予測動きベクトルを検索する範囲を設定し、設定された検索範囲を、前記現在ブロックに隣接している以前に復号化された領域に含まれたピクセルを用いて検索し、前記予測動きベクトルの生成を指示する情報を符号化するモードであることを特徴とする。
【0016】
前記技術的課題を解決するために本発明の一実施形態は、前記動きベクトル符号化/復号化方法を行うためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供する。
【発明の効果】
【0017】
本発明によれば、現在ブロックの動きベクトルをさらに正確に予測して符号化できる。
【図面の簡単な説明】
【0018】
図1】本発明の一実施形態による映像符号化装置を示す図面である。
図2】本発明の一実施形態による映像復号化装置を示す図面である。
図3】本発明の一実施形態による階層的符号化単位を示す図面である。
図4】本発明の一実施形態による符号化単位に基づいた映像符号化部を示す図面である。
図5】本発明の一実施形態による符号化単位に基づいた映像復号化部を示す図面である。
図6】本発明の一実施形態による最大符号化単位、サブ符号化単位及び予測単位を示す図面である。
図7】本発明の一実施形態による符号化単位及び変換単位を示す図面である。
図8A】本発明の一実施形態による符号化単位、予測単位及び周波数変換単位の分割形態を示す図面である。
図8B】本発明の一実施形態による符号化単位、予測単位及び周波数変換単位の分割形態を示す図面である。
図8C】本発明の一実施形態による符号化単位、予測単位及び周波数変換単位の分割形態を示す図面である。
図8D】本発明の一実施形態による符号化単位、予測単位及び周波数変換単位の分割形態を示す図面である。
図9】本発明の一実施形態による動きベクトルを符号化する装置を示す図面である。
図10A】本発明の一実施形態による明示モードの予測動きベクトル候補を示す図面である。
図10B】本発明の一実施形態による明示モードの予測動きベクトル候補を示す図面である。
図10C】本発明の一実施形態による現在ブロックに隣接している多様なサイズのブロックを示す図面である。
図10D】本発明の一実施形態による現在ブロックに隣接している多様なサイズのブロックを示す図面である。
図10E】本発明の一実施形態による現在ブロックに隣接している多様なサイズのブロックを示す図面である。
図11A】本発明のさらに他の実施形態による明示モードの予測動きベクトル候補を示す図面である。
図11B】本発明のさらに他の実施形態による明示モードの予測動きベクトル候補を示す図面である。
図11C】本発明のさらに他の実施形態による明示モードの予測動きベクトル候補を示す図面である。
図12A】本発明の一実施形態による暗示モードの予測動きベクトルを生成する方法を示す図面である。
図12B】本発明の一実施形態による暗示モードの予測動きベクトルを検索する方法を示す図面である。
図12C】本発明の一実施形態による予測動きベクトルを生成するために用いられるテンプレートを示す図面である。
図12D】本発明の一実施形態による予測動きベクトルを生成するために用いられるテンプレートを示す図面である。
図13】本発明の一実施形態による動きベクトルを復号化する装置を示す図面である。
図14】本発明の一実施形態による動きベクトルを符号化する方法を説明するためのフローチャートである。
図15】本発明の一実施形態による動きベクトルを復号化する方法を説明するためのフローチャートである。
【発明を実施するための形態】
【0019】
以下、図面を参照して本発明の望ましい実施形態を詳細に説明する。構成要素リストに先行する“少なくとも一つ”などの表現は、構成要素リスト全体を変更できるものであり、リスト上の構成要素を個別的に変更するものではない。本明細書で“映像(image)”は、ビデオの静止画または動画、すなわち、ビデオそのものを意味する。
【0020】
以下の説明で、互いに異なる図面であっても同じ図面参照番号が同じ構成要素に用いられうる。明細書に説明される具体的な構造や構成要素が、例示的な実施形態を幅広く理解するために提供される。しかし、例示的な実施形態は、具体的に定義されたところに限定されずに具現されうる。
【0021】
図1は、本発明の一実施形態による映像符号化装置を示す図面である。図1を参照すれば、本発明の一実施形態による映像符号化装置100は、最大符号化単位分割部110、符号化深度決定部120、映像データ符号化部130及び符号化情報符号化部140を備える。
【0022】
最大符号化単位分割部110は、最大サイズの符号化単位である最大符号化単位に基づいて現在ピクチャーまたは現在スライスを分割できる。現在ピクチャーまたは現在スライスを、少なくとも一つの最大符号化単位に分割できる。
【0023】
本発明の一実施形態によれば、最大符号化単位及び深度を用いて符号化単位が表現される。前述したように、最大符号化単位は、現在ピクチャーの符号化単位のうちサイズの最も大きい符号化単位を示し、深度は、符号化単位が階層的に縮小したサブ符号化単位のサイズを示す。深度が大きくなりつつ、符号化単位は、最大符号化単位から最小符号化単位まで縮小し、最大符号化単位の深度は最小深度と定義され、最小符号化単位の深度は最大深度と定義される。最大符号化単位は、深度が大きくなるにつれて深度別符号化単位のサイズは減少するので、k深度のサブ符号化単位は、(k+n)深度の複数のサブ符号化単位を含む(k、nは、1以上の定数)。
【0024】
符号化されるピクチャーのサイズが大きくなるにつれて、さらに大きい単位で映像を符号化すれば、さらに高い映像圧縮率で映像を符号化できる。しかし、符号化単位を大きくし、そのサイズを固定させれば、変り続ける映像の特性を反映して効率的に映像を符号化することが困難である。
【0025】
例えば、海または空などの平坦な領域を符号化する時には、符号化単位を大きくするほど圧縮率が向上するが、人間またはビルなどの複雑な領域を符号化する時には、符号化単位を小さくするほど圧縮率が向上する。
【0026】
このために、本発明の一実施形態は、ピクチャーまたはスライス毎に異なる最大映像符号化単位を設定し、最大深度を設定する。最大深度は、符号化単位が縮小されうる最大回数を意味するので、最大深度によって、最大映像符号化単位に含まれた最小符号化単位サイズを可変的に設定可能になる。
【0027】
符号化深度決定部120は、最大深度を定める。最大深度は、R−Dコスト(Rate−Distortion Cost)計算に基づいて定められる。最大深度は、ピクチャーまたはスライス毎に異なって定められるか、またはそれぞれの最大符号化単位ごとに異なって定められる。定められた最大深度は、符号化情報符号化部140に出力され、最大符号化単位別映像データは、映像データ符号化部130に出力される。
【0028】
最大深度は、最大符号化単位に含まれうる最も小さなサイズの符号化単位、すなわち、最小符号化単位を意味する。言い換えれば、最大符号化単位は、互いに異なる深度によって互いに異なるサイズのサブ符号化単位に分割される。図8A及び図8Bを参照して詳細に後述する。また、最大符号化単位に含まれた互いに異なるサイズのサブ符号化単位は、互いに異なるサイズの処理単位に基づいて予測または周波数変換される。言い換えれば、映像符号化装置100は、映像符号化のための複数の処理段階を、多様なサイズ及び多様な形態の処理単位に基づいて行える。映像データの符号化のためには、予測、周波数変換、エントロピー符号化などの処理段階を経るが、すべての段階にわたって同じサイズの処理単位が用いられてもよく、段階別に異なるサイズの処理単位を用いられる。
【0029】
例えば、映像符号化装置100は、符号化単位を予測するために符号化単位と異なる処理単位を選択する。
【0030】
符号化単位のサイズが2N×2N(ただし、Nは、正の定数)である場合、予測のための処理単位は、2N×2N、2N×N、N×2N、N×Nなどである。言い換えれば、符号化単位の高さまたは幅のうち少なくとも一つを半分する形態の処理単位に基づいて動き予測が行われてもよい。以下、予測の基礎になるデータ単位は‘予測単位’という。
【0031】
予測モードは、イントラモード、インタモード及びスキップモードのうち少なくとも一つであり、特定予測モードは、特定サイズまたは特定形態の予測単位に対してのみ行われる。例えば、イントラモードは、正方形の2N×2N、N×Nサイズの予測単位に対してのみ行われる。また、スキップモードは、2N×2Nサイズの予測単位に対してのみ行われる。符号化単位の内部に複数の予測単位があれば、それぞれの予測単位に対して予測を行って符号化誤差の最も小さな予測モードが選択される。
【0032】
また、映像符号化装置100は、符号化単位と異なるサイズの処理単位に基づいて映像データを周波数変換できる。符号化単位の周波数変換のために、符号化単位より小さいかまたは同じサイズのデータ単位に基づいて周波数変換が行われる。以下、周波数変換の基礎になる処理単位を‘変換単位’という。周波数変換は、離散コサイン変換(Discrete Cosine Transform:DCT)またはKarhunen−Loeve変換(KLT)になる。
【0033】
符号化深度決定部120は、ラグランジュ乗数基盤の率−歪曲最適化技法(Rate−Distortion Optimization)を用いて、最大符号化単位に含まれたサブ符号化単位を定められる。言い換えれば、最大符号化単位がいかなる形態の複数のサブ符号化単位に分割されるかを定められるが、ここで複数のサブ符号化単位は、深度によってそのサイズが異なる。次いで、映像データ符号化部130は、符号化深度決定部120で定められた分割形態に基づいて、最大符号化単位を符号化してビットストリームを出力する。
【0034】
符号化情報符号化部140は、符号化深度決定部120で最大符号化単位の符号化モードについての情報を符号化する。最大符号化単位の分割形態についての情報、最大深度についての情報及び深度別サブ符号化単位の符号化モードについての情報を符号化して、ビットストリームを出力する。サブ符号化単位の符号化モードに関する情報は、サブ符号化単位の予測単位についての情報、予測単位別予測モード情報、サブ符号化単位の変換単位についての情報などを含む。
【0035】
最大符号化単位の分割形態についての情報は、各符号化単位が分割されたかどうかを示すフラッグ情報でありうる。例えば、最大符号化単位が分割されて符号化された場合、最大符号化単位の分割如何を示す情報が符号化される。また、最大符号化単位からのサブ符号化単位が分割されて符号化された場合、サブ符号化単位の分割如何を示す情報が符号化される。
【0036】
最大符号化単位ごとに異なるサイズのサブ符号化単位が存在し、それぞれのサブ符号化単位ごとに符号化モードに関する情報が定められねばならないので、一つの最大符号化単位に対しては、少なくとも一つの符号化モードに関する情報が定められる。
【0037】
映像符号化装置100は、深度が大きくなるにつれて、最大符号化単位の高さ及び幅を半分してサブ符号化単位を生成する。すなわち、k深度の符号化単位のサイズが2N×2Nならば、k+1深度の符号化単位のサイズはN×Nである。
【0038】
したがって、一実施形態による映像復号化装置100は、映像の特性を考慮した最大符号化単位のサイズ及び最大深度に基づいて、それぞれの最大符号化単位ごとに最適の分割形態を定められる。映像特性を考慮して可変的に最大符号化単位のサイズを調節し、互いに異なる深度のサブ符号化単位に最大符号化単位を分割して映像を符号化することで、多様な解像度の映像をさらに効率的に符号化できる。
【0039】
図2は、本発明の一実施形態による映像復号化装置を示す図面である。図2を参照すれば、本発明の一実施形態による映像復号化装置200は、映像データ獲得部210、符号化情報抽出部220及び映像データ復号化部230を備える。
【0040】
映像関連データ獲得部210は、映像復号化装置200が受信したビットストリームをパージングして、最大符号化単位別に映像データを獲得して映像データ復号化部230に出力する。映像データ獲得部210は、現在ピクチャーまたはスライスに対するヘッダーから、現在ピクチャーまたはスライスの最大符号化単位についての情報を抽出する。言い換えれば、ビットストリームを最大符号化単位で分割して、映像データ復号化部230をして最大符号化単位ごとに映像データを復号化させる。
【0041】
符号化情報抽出部220は、映像復号化装置200が受信したビット列をパージングして、現在ピクチャーに対するヘッダーから、最大符号化単位、最大深度、最大符号化単位の分割形態、サブ符号化単位の符号化モードに関する情報を抽出する。分割形態及び符号化モードに関する情報は、映像データ復号化部230に出力される。
【0042】
最大符号化単位の分割形態についての情報は、最大符号化単位に含まれた深度によって異なるサイズのサブ符号化単位についての情報を含み、符号化モードに関する情報は、サブ符号化単位別予測単位についての情報、予測モードについての情報及び変換単位についての情報などを含む。
【0043】
映像データ復号化部230は、符号化情報抽出部220で抽出された情報に基づいて、それぞれの最大符号化単位の映像データを復号化して現在ピクチャーを復元する。最大符号化単位の分割形態についての情報に基づいて、映像データ復号化部230は、最大符号化単位に含まれたサブ符号化単位を復号化できる。復号化過程は、イントラ予測及び動き補償を含む動き予測過程、及び周波数逆変換過程を含む。
【0044】
映像データ復号化部230は、サブ符号化単位の予測のために、サブ符号化単位別予測単位についての情報及び予測モードについての情報に基づいて、イントラ予測またはインター予測を行える。また、映像データ復号化部230は、サブ符号化単位の変換単位についての情報に基づいて、サブ符号化単位ごとに周波数逆変換を行える。
【0045】
図3は、本発明の一実施形態による階層的符号化単位を示す図面である。図3を参照すれば、本発明による階層的符号化単位は、幅×高さが64×64である符号化単位から、32×32、16×16、8×8、4×4を含む。正方形の符号化単位以外にも、幅×高さが64×32、32×64、32×16、16×32、16×8、8×16、8×4、4×8である符号化単位が存在する。
【0046】
図3を参照すれば、解像度が1920×1080である映像データ310に対して、最大符号化単位のサイズは64×64、最大深度は2に設定されている。
【0047】
さらに他の解像度が1920×1080である映像データ320に対して、最大符号化単位のサイズは64×64、最大深度は3に設定されている。解像度が352×288であるビデオデータ330に対して、最大符号化単位のサイズは16×16、最大深度が1に設定されている。
【0048】
解像度が高いか、またはデータ量が多い場合、圧縮率向上だけではなく映像特性を正確に反映するために、符号化サイズの最大サイズが相対的に大きいことが望ましい。したがって、映像データ330に比べて解像度の高い映像データ310及び320は、最大符号化単位のサイズが64×64に選択されてもよい。
【0049】
最大深度は、階層的符号化単位で総階層数を示す。映像データ310の最大深度は2であるので、映像データ310の符号化単位315は、長軸サイズが64である最大符号化単位から、深度の増大につれて長軸サイズが32、16であるサブ符号化単位まで含む。
【0050】
一方、映像データ330の最大深度は1であるので、映像データ330の符号化単位335は、長軸サイズが16である最大符号化単位と、深度の増加につれて長軸サイズが8である符号化単位とを含む。
【0051】
映像データ320の最大深度は3であるので、ビデオデータ320の符号化単位325は、長軸サイズが64である最大符号化単位から、深度の増加につれて長軸サイズが32、16、8、4であるサブ符号化単位まで含む。深度が増加するほどさらに小さなサブ符号化単位に基づいて映像を符号化するので、さらに細密な場面を含めている映像の符号化に好適になる。
【0052】
図4は、本発明の一実施形態による符号化単位に基づいた映像符号化部を示す図面である。イントラ予測部410は、現在フレーム405のうちイントラモードの予測単位に対してイントラ予測を行い、動き推定部420及び動き補償部425は、インタモードの予測単位に対して現在フレーム405及び参照フレーム495を用い、インター予測及び動き補償を行う。
【0053】
イントラ予測部410、動き推定部420及び動き補償部425から出力された予測単位に基づいてレジデュアル値が生成され、生成されたレジデュアル値は、変換部430及び量子化部440を経て量子化された変換係数に出力される。
【0054】
量子化された変換係数は、逆量子化部460、逆変換部470を通じて再びレジデュアル値に復元され、復元されたレジデュアル値は、デブロッキング部480及びループフィルタリング部490を経て後処理されて参照フレーム495に出力される。量子化された変換係数は、エントロピー符号化部450を経てビットストリーム455に出力される。
【0055】
本発明の一実施形態による映像符号化方法によって符号化するために、映像符号化部400の構成要素であるイントラ予測部410、動き推定部420、動き補償部425、変換部430、量子化部440、エントロピー符号化部450、逆量子化部460、逆変換部470、デブロッキング部480及びループフィルタリング部490は、いずれも最大符号化単位、深度によるサブ符号化単位、予測単位及び変換単位に基づいて映像符号化過程を処理する。
【0056】
図5は、本発明の一実施形態による符号化単位に基づいた映像復号化部を示す図面である。ビットストリーム505がパージング部510を経て、復号化対象である符号化された映像データ及び復号化のために必要な符号化情報がパージングされる。符号化された映像データは、エントロピー復号化部520及び逆量子化部530を経て逆量子化されたデータに出力され、逆変換部540を経てレジデュアル値に復元される。レジデュアル値は、イントラ予測部550のイントラ予測の結果または動き補償部560の動き補償結果と加算されて、符号化単位別に復元される。復元された符号化単位は、デブロッキング部570及びループフィルタリング部580を経て、次の符号化単位または次のピクチャーの予測に用いられる。
【0057】
本発明の一実施形態による映像復号化方法によって復号化するために映像復号化部400の構成要素であるパージング部510、エントロピー復号化部520、逆量子化部530、逆変換部540、イントラ予測部550、動き補償部560、デブロッキング部570及びループフィルタリング部580は、いずれも最大符号化単位、深度によるサブ符号化単位、予測単位及び変換単位に基づいて映像復号化過程を処理する。
【0058】
特に、イントラ予測部550、動き補償部560は、最大符号化単位及び深度を考慮してサブ符号化単位内の予測単位及び予測モードを定め、逆変換部540は、変換単位のサイズを考慮して周波数逆変換を行う。
【0059】
図6は、本発明の一実施形態による最大符号化単位、サブ符号化単位及び予測単位を示す図面である。
【0060】
本発明の一実施形態による映像符号化装置100及び映像復号化装置200は、映像特性を考慮して符号化/復号化を行うために、階層的な符号化単位を用いる。最大符号化単位及び最大深度は、映像の特性によって適応的に設定されるか、またはユーザのニーズによって多様に設定される。
【0061】
本発明の一実施形態による符号化単位の階層構造600は、最大符号化単位610の高さ及び幅が64であり、最大深度が4である場合を示す図面である。符号化単位の階層構造600の縦軸に沿って深度が増加し、深度の増加によってサブ符号化単位620ないし650の高さ及び幅が縮小する。また、符号化単位の階層構造600の横軸に沿って、最大符号化単位610及びサブ符号化単位620ないし650の予測単位が図示されている。
【0062】
最大符号化単位610は深度が0であり、符号化単位のサイズ、すなわち、高さ及び幅が64×64である。縦軸に沿って深度が増加し、サイズ32×32である深度1のサブ符号化単位620、サイズ16×16である深度2のサブ符号化単位630、サイズ8×8である深度3のサブ符号化単位640、サイズ4×4である深度4のサブ符号化単位650が存在する。サイズ4×4である深度4のサブ符号化単位650は、最小符号化単位である。
【0063】
図6を参照すれば、それぞれの深度別に横軸に沿って予測単位の例示が図示されている。すなわち、深度0の最大符号化単位610の予測単位は、サイズ64×64の符号化単位610と同じか、または小さなサイズであるサイズ64×64の予測単位610、サイズ64×32の予測単位612、サイズ32×64の予測単位614、サイズ32×32の予測単位616である。
【0064】
深度1のサイズ32×32の符号化単位620の予測単位は、サイズ32×32の符号化単位620と同じか、または小さなサイズであるサイズ32×32の予測単位620、サイズ32×16の予測単位622、サイズ16×32の予測単位624、サイズ16×16の予測単位626である。
【0065】
深度2のサイズ16×16の符号化単位630の予測単位は、サイズ16×16の符号化単位630と同じか、または小さなサイズであるサイズ16×16の予測単位630、サイズ16×8の予測単位632、サイズ8×16の予測単位634、サイズ8×8の予測単位636である。
【0066】
深度3のサイズ8×8の符号化単位640の予測単位は、サイズ8×8の符号化単位640と同じか、または小さなサイズであるサイズ8×8の予測単位640、サイズ8×4の予測単位642、サイズ4×8の予測単位644、サイズ4×4の予測単位646である。
【0067】
最後に、深度4のサイズ4×4の符号化単位650は、最小符号化単位であり、かつ最大深度の符号化単位であり、予測単位は、サイズ4×4の予測単位650である。
【0068】
図7は、本発明の一実施形態による符号化単位及び変換単位を示す図面である。本発明の一実施形態による映像符号化装置100及び映像復号化装置200は、最大符号化単位そのまま符号化するとか、最大符号化単位より小さいか、同じであるサブ符号化単位に最大符号化単位を分割して符号化する。符号化過程中に周波数変換のための変換単位のサイズは、それぞれの符号化単位より大きくない変換単位と選択される。例えば、現在符号化単位710が64×64サイズである時、32×32サイズの変換単位720を用いて周波数変換が行われる。
【0069】
図8Aないし図8Dは、本発明の一実施形態による符号化単位810、予測単位960及び周波数変換単位870の分割形態を示す図面である。
【0070】
図8A及び図8Bは、本発明の一実施形態による符号化単位810、予測単位960を示す図面である。
【0071】
図8Aは、最大符号化単位810を符号化するために、本発明の一実施形態による映像符号化装置100が選択した分割形態を示す図面である。映像符号化装置100は、多様な形態に最大符号化単位810を分割して符号化した後、多様な分割形態の符号化結果をR−Dコストに基づいて比べて、最適の分割形態を選択する。最大符号化単位810をそのまま符号化することが最適である場合には、図8Aないし図8Dのように、最大符号化単位810を分割せずに最大符号化単位800を符号化してもよい。
【0072】
図8Aを参照すれば、深度0人最大符号化単位810を、深度1以上のサブ符号化単位に分割して符号化する。最大符号化単位810を、4つの深度1のサブ符号化単位に分割した後、全部または一部の深度1のサブ符号化単位を、再び深度2のサブ符号化単位814、816、818、828、850、852に分割する。
【0073】
深度1のサブ符号化単位のうち右側上部に位置しているサブ符号化単位及び左側下部に位置しているサブ符号化単位が、深度2以上のサブ符号化単位に分割された。深度2以上のサブ符号化単位のうち一部は、再び深度3以上のサブ符号化単位820、822、824、826、830、832、840、842、844、846、848に分割される。
【0074】
図8Bは、最大符号化単位810に対する予測単位860の分割形態を示す図面である。図8Bを参照すれば、最大符号化単位に対する予測単位860は、最大符号化単位810と異なって分割される。言い換えれば、サブ符号化単位それぞれに対する予測単位は、サブ符号化単位より小さい。
【0075】
例えば、深度1のサブ符号化単位のうち右側下部に位置しているサブ符号化単位854に対する予測単位は、サブ符号化単位854より小さい。深度2のサブ符号化単位814、816、818、828、850、852のうち一部のサブ符号化単位815、816、850、852に対する予測単位は、サブ符号化単位より小さい。また、深度3のサブ符号化単位822、832、848に対する予測単位は、サブ符号化単位より小さい。予測単位は、それぞれのサブ符号化単位を高さまたは幅方向に半分した形態であっても、高さ及び幅方向に4分した形態であってもよい。
【0076】
図8C及び図8Dは、本発明の一実施形態による予測単位及び変換単位を示す図面である。
【0077】
図8Cは、図8Bに示した最大符号化単位810に対する予測単位860の分割形態を図示し、図8Dは、最大符号化単位810の変換単位870の分割形態を図示する。
【0078】
図8Dを参照すれば、変換単位870の分割形態は、予測単位860と異なって設定される。
【0079】
例えば、深度1の符号化単位854に対する予測単位が高さを半分にした形態に選択されても、変換単位は、深度1の符号化単位854のサイズと同じサイズに選択されうる。同様に、深度2の符号化単位814、850に対する予測単位が深度2の符号化単位814、850の高さを半分にした形態に選択されても、変換単位は、深度2の符号化単位814、850の元のサイズと同じサイズに選択されうる。
【0080】
予測単位よりさらに小さなサイズに変換単位が選択されてもよい。例えば、深度2の符号化単位852に対する予測単位が幅を半分にした形態に選択された場合に、変換単位は、予測単位よりさらに小さなサイズである高さ及び幅を半分にした形態に選択されうる。
【0081】
図9は、本発明の一実施形態による動きベクトルを符号化する装置を示す図面である。
【0082】
図1に関して前述した映像符号化装置100、または図4に関して前述した映像符号化部400に含まれて動きベクトルを符号化する装置を詳細に図示する。図9を参照すれば、本発明の一実施形態による動きベクトル符号化装置900は、予測部910、第1符号化部920及び第2符号化部930を備える。
【0083】
インター予測、すなわち、ピクチャー間予測を用いて符号化されたブロックを復号化するためには、現在ブロックと参照ピクチャー内の類似したブロックとの位置差を示す動きベクトルについての情報が必要である。したがって、映像符号化時に動きベクトルについての情報を符号化してビットストリームに挿入するが、動きベクトルについての情報をそのまま符号化して挿入すれば、動きベクトルについての情報を符号化するためのオーバーヘッドが増加して、映像データの圧縮率が低くなる。
【0084】
したがって、映像符号化では現在ブロックの動きベクトルを予測し、予測の結果で生成された予測動きベクトルと原本動きベクトルとの差分ベクトルのみを符号化してビットストリームに挿入することで、動きベクトルについての情報も圧縮する。図9は、かかる予測動きベクトルを用いた動きベクトルを符号化する装置を示す図面である。
【0085】
図9を参照すれば、予測部910は、現在ブロックの予測動きベクトルが明示モード(explicit mode)及び暗示モード(implicit mode)のうちいかなるモードに基づいて予測符号化されるかを定める。
【0086】
前述したように、MPEG−4 H.264/MPEG−4 AVC(Advanced Video Coding)のようなコーデックでは、現在ブロックの動きベクトルを予測するために現在ブロックに隣接している、以前に符号化されたブロックの動きベクトルを用いる。現在ブロックの左側上部及び右側上部に隣接している、以前に符号化されたブロックの動きベクトルの中央値(median)を、現在ブロックの予測動きベクトルとして用いる。インター予測を用いて符号化されたすべてのブロックの動きベクトルが、同じ方法を用いて予測されるため、予測動きベクトルについての情報は別途に符号化する必要がない。しかし、本発明による映像符号化装置100または映像符号化部400は、動きベクトルをさらに正確に予測するために、前述した予測動きベクトルについての情報を別途に符号化しないモード、及び予測動きベクトルについての情報を符号化するモードをいずれも用いるところ、これについて詳細に後述する。
【0087】
(1)明示モード
予測部910が選択できる予測動きベクトルを符号化する方法のうち一つとして、現在ブロックの予測動きベクトルについての情報を明示的に符号化するモードがありうる。明示モードは、少なくとも一つの予測動きベクトル候補のうちいかなる予測動きベクトルを用いて現在ブロックの動きベクトルを予測するかを指示する情報を別途に符号化するモードである。図10A及び図10B図11Aないし図11Cを参照して本発明の予測動きベクトル候補を説明する。
【0088】
図10A及び図10Bは、本発明の一実施形態による明示モードの予測動きベクトル候補を示す図面である。
【0089】
図10Aを参照すれば、本発明の一実施形態による動きベクトル予測方法は、現在ブロックに隣接している、以前に符号化されたブロックの動きベクトルのうち一つを現在ブロックの予測動きベクトルとして用いる。現在ブロックの上部に隣接しているブロックのうち最左側のa0ブロック、左側に隣接している最上部のb0ブロック、右側上部に隣接しているcブロック、左側上部に隣接しているdブロック及び左側下部に隣接しているeブロックを、いずれも現在ブロックの予測動きベクトルとして用いる。
【0090】
本発明による映像符号化方法及び復号化方法は、深度によって区分される多様なサイズの符号化単位に基づいて映像符号化及び復号化を行うところ、左側下部に隣接しているeブロックの動きベクトルも、現在ブロックの予測動きベクトルとして用いる。
【0091】
図8Aを参照して説明すれば、現在ブロックが符号化単位820ならば、現在ブロックの上部、左側上部、右側上部、左側及び左側下部の符号化単位814、816、818、822は、現在ブロック以前に符号化される。したがって、現在ブロックの左側下部に隣接しているブロックの動きベクトルも、現在ブロックの予測動きベクトルとして用いられる。
【0092】
図10Bを参照すれば、現在ブロックに隣接しているすべてのブロックの動きベクトルを、現在ブロックの予測動きベクトルとして用いる。言い換えれば、上部に隣接しているブロックのうち最左側のa0ブロックだけでなく、上部に隣接しているすべてのブロックa0ないしaNの動きベクトルを、現在ブロックの予測動きベクトルとして用い、左側に隣接しているブルロックドルのうち最上部のb0ブロックだけでなく、左側に隣接しているすべてのブロックb0ないしbNの動きベクトルを、現在ブロックの予測動きベクトルとして用いる。
【0093】
また、隣接しているブロックの動きベクトルの中央値を予測動きベクトルとして用いる。言い換えれば、median(mv_a0、mv_b0、mv_c)を現在ブロックの予測動きベクトルとして用いる。ここで、mv_a0は、a0ブロックの動きベクトルであり、mv_b0は、b0ブロックの動きベクトルであり、mv_cは、cブロックの動きベクトルである。
【0094】
但し、現在ブロックのサイズ及び隣接しているブロックのサイズによって現在ブロックの予測動きベクトル候補を制限できるところ、図10Cないし図10Eを参照して詳細に説明する。
【0095】
図10Cないし図10Eは、本発明の一実施形態による現在ブロックに隣接している多様なサイズのブロックを図示する。
【0096】
前述したように、本発明による映像符号化方法及び復号化方法は、深度によって定められる多様なサイズの符号化単位及び予測単位を用いて映像を符号化する。したがって、現在ブロックに隣接しているブロックのサイズも多様なところ、現在ブロックのサイズと一部隣接しているブロックのサイズとが大きく異なれば、サイズの異なる一部隣接しているブロックの動きベクトルは、現在ブロックの予測動きベクトルとして用いない。
【0097】
図10Cを参照すれば、現在ブロック1010の上部に隣接しているブロック1014ないし1018は、現在ブロック1010のサイズより小さなブロックである。現在ブロック1010と同じサイズの隣接しているブロック1012の動きベクトルが、現在ブロック1010の動きベクトルと同一か、または類似している可能性が高いので、予測部910は、同じサイズの隣接しているブロック1012の動きベクトルのみを予測動きベクトルとして用いる。
【0098】
サイズが同一でなくても、所定サイズ以上の隣接しているブロックの動きベクトルのみ予測動きベクトルとして用いられる。例えば、現在ブロック1010のサイズと比較して、1/4サイズ以上のブロック1012及び1018の動きベクトルのみを予測動きベクトルとして用いられる。
【0099】
図10Dを参照すれば、現在ブロック1020の左側に隣接しているブロック1022のサイズは、現在ブロックの16倍であり、著しいサイズの差が存在する。著しいサイズの差によって、左側に隣接しているブロック1022の動きベクトルが現在ブロック1020の動きベクトルと同一か、または類似している可能性が低い。したがって、左側に隣接しているブロック1022の動きベクトルは、現在ブロック1020の予測動きベクトルとして用いず、上部に隣接しているブロック1024及び左側上部に隣接しているブロック1026の動きベクトルのみ用いる。
【0100】
図10Eを参照すれば、現在ブロック1030のサイズが、隣接しているすべてのブロック1031ないし1037のサイズより大きい。この時、隣接しているすべてのブロック1031ないし1037の動きベクトルを、いずれも現在ブロック1030の予測動きベクトルとして用いれば、現在ブロック1030の予測動きベクトル候補の数があまりにも多い。現在ブロック1030と隣接しているブロック1031ないし1037間のサイズ差が大きいほど、予測動きベクトル候補の数はさらに多くなる。したがって、本発明の一実施形態による予測部910は、隣接しているブロックのうち一部ブロックの動きベクトルを現在ブロック1030の予測動きベクトルとして用いない。
【0101】
例えば、図10Eに示した実施形態で、左側下部に隣接しているブロック1031及び右側上部に隣接しているブロック1037の動きベクトルは、現在ブロック1030の予測動きベクトルとして用いないこともある。
【0102】
これをさらに一般化して、現在ブロック1030のサイズが所定サイズ以上ならば、隣接しているブロックのうち特定方向に隣接しているブロックの動きベクトルは、現在ブロック1030の予測動きベクトルとして用いない。
【0103】
図11Aないし図11Cは、本発明のさらに他の実施形態による明示モードの予測動きベクトル候補を示す図面である。
【0104】
図11Aは、本発明の一実施形態によるBピクチャー(Bi−directional Predictive Picture)の予測動きベクトルを計算する方法を図示する。現在ブロックを含む現在ピクチャーが双方向予測を行うBピクチャーである場合、時間的距離に基づいて生成された動きベクトルが予測動きベクトル候補でありうる。
【0105】
現在ピクチャー1110の現在ブロック1100の予測動きベクトルmv_temporalは、時間的に先行するピクチャー1112の同じ位置のブロック1120の動きベクトルを用いて生成される。例えば、現在ブロック1100と同じ位置のブロック1120の動きベクトルmv_colAが、現在ピクチャー1110の時間的に後行するピクチャー1114の検索されたブロック1122に対して生成されれば、現在ブロック1100の予測動きベクトル候補であるmv_L0A及びmv_L1Aは、以下のように生成される。
【0106】
mv_L1A=(t1/t2)*mv_colA
mv_L0A=mv_L1A−mv_colA
ここで、mv_L0Aは、時間的に先行するピクチャー1112に対する現在ブロック1110の予測動きベクトルを意味し、mv_L1Aは、時間的に後行するピクチャー1114に対する現在ブロック1110の予測動きベクトルを意味する。
【0107】
図11Aに示した実施形態では、Bピクチャーである現在ピクチャー1110が、時間的に先行するピクチャー1112と時間的に後行するピクチャー1114との間に存在する。この時、同じ位置のブロック1120の動きベクトルmv_colAが、現在ピクチャー1110の時間的に後行するピクチャー1114に対して生成されれば、mv_L1Aに基づいて現在ブロック1100の動きベクトルをさらに正確に予測できる。言い換えれば、mv_colAが図11Aに示した方向と逆方向の動きベクトルである場合、すなわち、時間的に先行するピクチャー1112が以前の他のピクチャーに対して生成された場合より、mv_colAが図11Aに示した方向の動きベクトルである場合に、現在ブロック1100の動きベクトルをさらに正確に予測できる。
【0108】
したがって、現在ブロック1110から同じ位置のブロック1120への方向がList0方向ならば、同じ位置のブロック1120の動きベクトルmv_colAはList1方向であって初めて、図11Aに示したように、現在ピクチャー1110が先行するピクチャー1112と後行するピクチャー1114との間に存在する可能性が高くなって、mv_colAに基づいて現在ブロック1100の動きベクトルをさらに正確に予測できる。
【0109】
また、図11Aに図示されたピクチャー1110ないし1114は、時間手順によって配列されているので、POC(Picture Order Count)に基づいて現在ブロックの予測動きベクトルmv_temporalを生成できる。現在ブロックの参照するピクチャーが、図11Aにに図示されたピクチャー1112及び1114ではない他のピクチャーでありうるので、POCに基づいて現在ブロックの予測動きベクトルを生成する。
【0110】
例えば、現在ピクチャーのPOCをCurrPOCとし、現在ピクチャーが参照するピクチャーのPOCをCurrRefPOCとすれば、現在ブロックの予測動きベクトルは、次のように生成される。
【0111】
Scale=(CurrPOC−CurrRefPOC)/(ColPOC−ColRefPOC)
mv_temporal=Scale*mv_colA
ここでColPOCは、同じ位置のブロック1120が含まれている時間的に先行するピクチャー1112のPOCであり、ColRefPOCは、同じ位置のブロック1120が参照するブロック1122が含まれている、時間的に後行するピクチャー1114のPOCである。
【0112】
図11Bは、本発明のさらに他の実施形態によるBピクチャーの予測動きベクトルを生成する方法を示す図面である。図11Aに図示された方法と比べれば、時間的に後行するピクチャー1114に現在ブロック1100と同じ位置のブロックが存在するという点が異なる。
【0113】
図11Bを参照すれば、現在ピクチャー1110の現在ブロック1100の予測動きベクトルは、時間的に後行するピクチャー1114の同じ位置のブロック1130の動きベクトルを用いて生成される。例えば、現在ブロック1100と同じ位置のブロック1130の動きベクトルmv_colBが、現在ピクチャー1110の時間的に先行するピクチャー1112の検索されたブロック1132に対して生成されれば、現在ブロック1100の予測動きベクトル候補であるmv_L0B及びmv_L1Bは、以下のように生成される。
【0114】
mv_L0B=(t3/t4)*mv_colB
mv_L1B=mv_L0B−mv_colB
ここで、mv_L0Bは、時間的に先行するピクチャー1112に対する現在ブロック1110の予測動きベクトルを意味し、mv_L1Bは、時間的に後行するピクチャー1114に対する現在ブロック1100の予測動きベクトルを意味する。
【0115】
図11Aと同じく、図11Bに示した実施形態でも、Bピクチャーである現在ピクチャー1110が、時間的に先行するピクチャー1112と時間的に後行するピクチャー1114との間に存在する。したがって、同じ位置のブロック1130の動きベクトルmv_colBが時間的に先行するピクチャー1112に対して生成されれば、mv_L0Bに基づいて現在ブロック1100の動きベクトルをさらに正確に予測できる。言い換えれば、_colBが、図11Bに図示された方向と逆方向の動きベクトルである場合、すなわち、時間的に後行するピクチャー1114以後の他のピクチャーに対して生成された場合より、mv_colBが図11Bに図示された方向の動きベクトルである場合に、現在ブロック1100の動きベクトルをさらに正確に予測できる。
【0116】
したがって、現在ブロック1110から同じ位置のブロック1130への方向がList1方向ならば、同じ位置のブロック1130の動きベクトルmv_colBはList0方向であって初めて、図11Bに示したように、現在ピクチャー1110が先行するピクチャー1112と後行するピクチャー1114との間に存在する可能性が高くなり、mv_colBに基づいて現在ブロック1100の動きベクトルをさらに正確に予測できる。
【0117】
また、現在ブロックの参照するピクチャーが、図11Bに図示されたピクチャー1112及び1114ではない他のピクチャーでありうるので、POCに基づいて現在ブロックの予測動きベクトルを生成する。
【0118】
例えば、現在ピクチャーのPOCをCurrPOCとし、現在ピクチャーが参照するピクチャーのPOCをCurrRefPOCとすれば、現在ブロックの予測動きベクトルは次のように生成される。
【0119】
Scale=(CurrPOC−CurrRefPOC)/(ColPOC−ColRefPOC)
mv_temporal=Scale*mv_colB
ここでColPOCは、同じ位置のブロック1130が含まれている時間的に後行するピクチャー1114のPOCであり、ColRefPOCは、同じ位置のブロック1130が参照するブロック1132が含まれている、時間的に先行するピクチャー1112のPOCである。
【0120】
予測部910がBピクチャーの現在ブロック1100の予測動きベクトルを生成するに当って、図11Aに図示された方法及び図11Bに図示された方法のうち一つを用いられる。言い換えれば、現在ブロック1100と同じ位置のブロック1120または1130の動きベクトル、及び時間的距離を用いて予測動きベクトルを生成するので、同じ位置のブロック1120及び1130の動きベクトルが必ず存在して初めて、図11A及び図11Bに図示された方法を用いて予測動きベクトルを生成できる。したがって、本発明による予測部910は、同じ位置のブロック1120及び1130のうち該当ブロックに対する動きベクトルが存在するブロックのみを用いて、現在ブロック1100の予測動きベクトルを生成する。
【0121】
例えば、時間的に先行するピクチャー1112の同じ位置のブロック1120が、インター予測ではなくイントラ予測を用いて符号化された場合、該当ブロック1120の動きベクトルは存在しないので、図11Aに図示されたような予測動きベクトルを生成する方法を用いて現在ブロック1100の予測動きベクトルを生成することはできない。
【0122】
図11A及び図11Bに示したように、予測部910がBピクチャーの現在ブロック1100の予測動きベクトルを生成する時、時間的に先行するピクチャー1112の同じ位置のブロック1120、及び時間的に後行するピクチャー1114の同じ位置のブロック1130をいずれも用いられる。したがって、動きベクトルを復号化する側では、動きベクトル符号化装置900が複数の同じ位置のブロック1120及び1130のうちいかなるブロックを用いて予測動きベクトルmv_temporalを生成したかが分かって初めて、予測動きベクトルを復号化できる。
【0123】
このために、動きベクトル符号化装置900は、複数の同じ位置のブロック1120及び1130のうちいかなるブロックを予測動きベクトルの生成に用いるかを特定するための情報を符号化して、ブロックヘッダーまたはスライスヘッダーに挿入できる。
【0124】
図11Cは、本発明の一実施形態によるPピクチャー(Predictive Picture)の予測動きベクトルを生成する方法を示す図面である。図11Cを参照すれば、現在ピクチャー1110の現在ブロック1100の予測動きベクトルは、時間的に先行するピクチャー1112の同じ位置のブロック1140の動きベクトルを用いて生成される。例えば、現在ブロック1100と同じ位置のブロック1140の動きベクトルmv_colCが、さらに他の時間的に先行するピクチャー1116の検索されたブロック1142に対して生成されれば、現在ブロック1100の予測動きベクトル候補であるmv_L0Cは、次のように生成される。
【0125】
mv_L0C=(t6/t5)*mv_colC
図11A及び図11Bに関して前述したように、POCに基づいてmv_L0Cを生成してもよい。現在ピクチャー1110のPOC、現在ピクチャー1110が参照するピクチャーのPOC、時間的に先行するピクチャー1112のPOC及びさらに他の時間的に先行するピクチャー1116のPOCに基づいてmv_L0Cを生成できる。
【0126】
現在ピクチャー1110がPピクチャーであるので、現在ブロック1100の予測動きベクトル候補は、図11A及び図11Bと異なって一つのみ生成される。
【0127】
総合すれば、図10A及び図10B図11Aないし図11Cによって、予測動きベクトル候補の集合Cは、次のように生成される。
【0128】
C={median(mv_a0,mv_b0,mv_c),mv_a0,mv_a1,…,mv_aN,mv_b0,mv_b1,…,mv_bN,mv_c,mv_d,mv_e,mv_temporal}
または、予測動きベクトル候補の数を低減させて生成してもよい。
【0129】
C={median(mv_a’,mv_b’,mv_c’),mv_a’,mv_b’,mv_c’,mv_temporal}
ここで、mv_xは、xブロックの動きベクトルを意味し、median()は、中央値を意味し、mv_temporalは、図11Aないし図11Cに関して前述した時間的距離を用いて生成された予測動きベクトル候補を意味する。
【0130】
また、mv_a’は、mv_a0,mv_a1,…,mv_aNのうち有効な最初の動きベクトルを意味する。例えば、a0ブロックがイントラ予測を用いて符号化されたか、現在ブロックと異なるピクチャーを参照すれば、a0の動きベクトルであるmv_a0は有効でないので、mv_a’=mv_a1になり、a1ブロックの動きベクトルも有効でない場合には、mv_a’=mv_a2である。
【0131】
同様に、mv_b’は、mv_b0,mv_b1,…,mv_bNのうち有効な最初の動きベクトルを意味し、mv_c’は、mv_c,mv_d,mv_eのうち有効な最初の動きベクトルを意味する。
【0132】
現在ブロックに隣接しているブロックの動きベクトルのうち、現在ブロックと異なるピクチャーを参照するブロックの動きベクトルは、現在ブロックの動きベクトルを効率的に予測できない。したがって、予測動きベクトル候補の集合Cから、現在ブロックと異なるピクチャーを参照するブロックの動きベクトルを除外できる。
【0133】
明示モードは、前記C集合のうちいかなる動きベクトルを現在ブロックの予測動きベクトルとして用いたかを指示する情報を符号化するモードである。例えば、明示モードで動きベクトルを符号化する場合、C集合の元素、すなわち、予測動きベクトル候補にそれぞれに対応する二進数を割り当て、そのうち一つが現在ブロックの予測動きベクトルとして用いられる場合、対応する二進数を出力できる。
【0134】
C集合の元素のうち一つを特定するために、それぞれの予測動きベクトル候補に対応する二進数を割り当てて二進数を出力するため、C集合の元素の数が少ないほどさらに少ないビートの二進数でC集合の元素を特定できる。
【0135】
したがって、C集合で重複する予測動きベクトル候補があれば、重複する予測動きベクトル候補はC集合から除外して、二進数を割り当てる。例えば、C集合が、前述したように、C={median(mv_a’,mv_b’,mv_c’),mv_a’,mv_b’,mv_c’,mv_temporal}である時、mv_a’、mv_b’及びmv_c’がいずれも同じならば、C集合を、C={median(mv_a’,mv_b’、mv_c’),mv_a’,mv_temporal}のように3つの元素に定め、二進数を割り当てる。重複する予測動きベクトル候補を除外する前に、C集合の元素を3ビートを用いて特定できるならば、重複する予測動きベクトル候補を除いた後には、C集合の元素を、2ビートを用いて特定できる。
【0136】
重複する予測動きベクトル候補を除外する代わりに、重複する予測動きベクトル候補が現在ブロックの予測動きベクトルとして定められる確率を高めるために、所定の加重値(weight)を加えてもよい。前述した例でmv_a’、mv_b’及びmv_c’がいずれも同じく、mv_a’のみC集合に含まれているので、mv_a’に所定の加重値を加えて、mv_a’が現在ブロックの予測動きベクトルとして定められる確率を高める。
【0137】
また、予測動きベクトル候補が一つである場合には、明示モードにもかかわらず、予測動きベクトル候補のうち一つを特定するための二進数を符号化しなくてもよい。例えば、C集合がC={median(mv_a0,mv_b0,mv_c),mv_a0,mv_a1,…,mv_aN,mv_b0,mv_b1,…,mv_bN,mv_c,mv_d,mv_e,mv_temporal}であるが、a0ないしaNブロック、b0ないしbNブロック、cブロック、dブロック、eブロックがいずれもイントラ予測されたブロックであれば、C集合はC={mv_temporal}であるので、実質的に一つの元素しか含んでいない。したがって、この場合に動きベクトル符号化装置900は、明示モードにもかかわらず予測動きベクトル候補のうち一つを特定するための二進数を符号化しなくてもよい。
【0138】
明示モードに関して前述したすべての予測動きベクトル候補以外に、他の予測動きベクトル候補が用いられるということは、当業者ならば容易に理解できる。
【0139】
(2)暗示モード
予測部910が選択できる予測動きベクトルを符号化する方法のうちさらに他の一つは、現在ブロックの予測動きベクトルが、現在ブロックに隣接している、以前に符号化された領域に含まれたブロックまたはピクセルに基づいて生成されることを指示する情報のみ符号化するモードである。このモードは、明示モードとは異なって予測動きベクトルを特定するための情報を符号化せず、暗示モードで予測動きベクトルの生成を指示する情報のみ符号化するモードである。
【0140】
前述したように、MPEG−4 H.264/MPEG−4 AVC(Advanced Video Coding)などのコーデックでは、現在ブロックの動きベクトルを予測するために、現在ブロックに隣接している、以前に符号化されたブロックの動きベクトルを用いる。現在ブロックの左側上部及び右側上部に隣接している、以前に符号化されたブロックの動きベクトルの中央値を現在ブロックの予測動きベクトルとして用いるが、この場合、明示モードのように、予測動きベクトル候補のうち一つを選択するための情報を符号化しなくてもよい。
【0141】
言い換えれば、映像符号化過程では、現在ブロックの予測動きベクトルが暗示モードで符号化されたことを指示する情報さえ符号化すれば、映像復号化過程では、現在ブロックの左側上部及び右側上部に隣接している、以前に復号化されたブロックの動きベクトルの中央値を現在ブロックの予測動きベクトルとして用いられる。
【0142】
また、本発明による映像符号化方法は、現在ブロックに隣接している、以前に符号化されたピクセル値をテンプレートとして用いて、予測動きベクトルを生成する新たな暗示モードを提供する。図12を参照して詳細に説明する。
【0143】
図12Aは、本発明の一実施形態による暗示モードの予測動きベクトルを生成する方法を示す図面である。図12Aを参照すれば、現在ピクチャー1210の現在ブロック1200の予測動きベクトルの生成に当って、現在ブロックに隣接している、以前に符号化された領域1220に含まれたピクセル1222を用いる。隣接しているピクセル1222を用いて参照ピクチャー1212を検索し、対応するピクセル1224を定める。SAD(Sum of Absolute Difference)を計算して対応するピクセル1224を定められる。対応するピクセル1224が定められれば、隣接しているピクセル1222の動きベクトルmv_templateが生成され、mv_templateを現在ブロック1200の予測動きベクトルとして用いられる。
【0144】
mv_templateを参照ピクチャー1212から検索する時、前述した予測動きベクトル候補の集合Cを用いられる。図12Bを参照して詳細に説明する。
【0145】
図12Bは、本発明の一実施形態による暗示モードの予測動きベクトルを検索する方法を図示する。図12Bを参照すれば、予測部910が、現在ブロック1200に隣接しているピクセル1222を用いて参照ピクチャー1212を検索する時、所定の検索範囲1226を設定し、設定された検索範囲1226内のみで対応するピクセル1224を検索できる。
【0146】
検索範囲1226は、前述した予測動きベクトル候補に基づいて設定する。予測動きベクトル候補によって検索範囲1226の中心を定め、定められた検索範囲1226の中心から所定のピクセル範囲内に含まれる領域を、検索範囲1226と設定する。予測動きベクトル候補は複数でありうるので、複数の検索範囲1226が設定され、互いに異なるピクチャーに検索範囲1226が設定される。
【0147】
複数の検索範囲1226をいずれも検索して、SADの最も小さな対応するピクセル1224を定め、その決定に基づいてmv_templateを生成する。現在ブロック1200に隣接しているピクセル1222のサイズ及び形態は、実施形態によって多様であり、図12Cを参照して詳細に説明する。
【0148】
図12Cは、本発明の一実施形態による予測動きベクトルを生成するために用いられるテンプレートを図示する。図12Cを参照すれば、予測部910が現在ブロック1200の予測動きベクトルを図12Aに示したように生成するために用いる、隣接しているピクセル1222は、多様なサイズ及び形態である。
【0149】
現在ブロック1200のサイズが4×4である場合を例として説明すれば、現在ブロック1220に隣接しているピクセル1222を、図12Cのように9つのピクセルのみ含むように設定してもよく、さらに多いピクセルが含まれるように、隣接しているピクセル1228を設定してもよい。また、隣接しているピクセル1222の形態も、図12Aないし図12Cに示したように、‘Г’の形態ではない他の形態に設定してもよい。
【0150】
図12Dは、本発明のさらに他の実施形態による予測動きベクトルを生成するために用いられるテンプレートを図示する。
【0151】
SADの計算に当って、現在ブロックに隣接しているピクセル1222をいずれも用いず、現在ブロックに隣接しているピクセル1222のうち一部のみ用いてもよい。例えば、4×4サイズの現在ブロック1200に隣接している9個のピクセル1222のうち、3個または5個または7個のピクセルのみ用いてSADを計算できる。図12Dは、現在ブロックの左側上部に隣接しているピクセル、上部に隣接しているピクセルのうち最右側に位置しているピクセル、及び左側に隣接しているピクセルのうち最下部に位置しているピクセルのみ用いてSADを計算するためのテンプレートを図示する。
【0152】
図12Bないし図12Dに関して前述したテンプレートの多様なサイズ及び形態についての情報は、動きベクトルと別途に符号化されて、スライスパラメータとして符号化されてスライスヘッダーに挿入されても、シーケンスパラメータとして符号化されて、ビットストリームに挿入されてもよい。
【0153】
隣接しているブロックの動きベクトルの中央値を予測動きベクトルとして用いるモードを、implicit mode_1とし、現在ブロックに隣接しているピクセル1222を用いて予測動きベクトルを生成するモードを、implicit mode_2とすれば、映像符号化過程では、この2つの暗示モードのうち一つのモードについての情報を符号化し、映像復号化過程では、モードについての情報を参照して、implicit mode_1及びimplicit mode_2のうち一つを用いて予測動きベクトルを生成できる。
【0154】
(3)モードの選択
予測部910が前述した明示モード及び暗示モードのうち一つを選択する基準には、多様な基準がある。
【0155】
明示モードは、複数の予測動きベクトル候補のうち一つを選択するものであるので、現在ブロックの動きベクトルとさらに類似した予測動きベクトルを選択できる。その代わりに、複数の予測動きベクトル候補のうち一つを指示する情報を符号化するため、暗示モードよりさらに大きいオーバーヘッドが発生しうる。したがって、大きい符号化単位である場合に、明示モードで動きベクトルを符号化することが妥当である。サイズの大きい符号化単位が、サイズの小さな符号化単位より動きベクトルを間違って予測する場合に発生する誤差が大きくなる確率が高く、サイズが大きいため、単位ピクチャーごとにオーバーヘッドが発生する回数が少ないからである。
【0156】
例えば、m個の64×64サイズの符号化単位で均一に分割されたピクチャーを明示モードで符号化する場合、オーバーヘッドの発生する回数はm回であるが、同じサイズのピクチャーが4m個の32×32サイズの符号化単位で均一に分割されたピクチャーを明示モードで符号化する場合、オーバーヘッドの発生する回数は4m回である。
【0157】
したがって、本発明による予測部910が現在ブロックの動きベクトルを符号化するに当って、明示モード及び暗示モードのうち一つを、符号化単位のサイズに基づいて選択できる。
【0158】
図1ないし図8に関して前述した本発明による映像符号化/復号化方法において、符号化単位のサイズは深度によって表現されるので、予測部910は、現在ブロックの深度に基づいて、現在ブロックの動きベクトルを明示モードで符号化するか、または暗示モードで符号化するかを選択する。例えば、深度0及び深度1の符号化単位をインター予測する場合には、符号化単位の動きベクトルを明示モードで符号化し、深度2以上の符号化単位をインター予測する場合には、暗示モードで符号化する。
【0159】
本発明のさらに他の実施形態によれば、予測部910は、ピクチャーまたはスライス単位で明示モードまたは暗示モードを選択できる。ピクチャーまたはスライス単位ごとに映像特性が異なるので、これに鑑みて、ピクチャーまたはスライス単位で明示モードまたは暗示モードを選択できる。R−Dコストを考慮して明示モード及び暗示モードのうち最適のモードを選択して、現在ピクチャーまたはスライスに含まれた符号化単位の動きベクトルを予測符号化できる。
【0160】
例えば、明示モードを用いなくてもピクチャーまたはスライスに含まれた符号化単位の動きベクトルを正確に予測できるならば、ピクチャーまたはスライスに含まれたすべての符号化単位の動きベクトルを、暗示モードで予測符号化できる。
【0161】
また、本発明のさらに他の実施形態によれば、予測部910は、現在ブロックがスキップモードで符号化されたかどうかによって、明示モード及び暗示モードのうち一つを選択できる。スキップモードとは、現在ブロックがスキップモードで符号化されたことを指示するフラッグ情報のみ符号化し、ピクセル値は符号化しない符号化モードを意味する。
【0162】
スキップモードは、予測動きベクトルを現在ブロックの動きベクトルとして用いて動き補償して生成された予測ブロックが、現在ブロックと非常に類似しているならば、現在ブロックのピクセル値を符号化しないモードである。したがって、予測動きベクトルを現在ブロックの動きベクトルと類似して生成するほど、スキップモードで現在ブロックを符号化する確率が高くなる。したがって、スキップモードで符号化されるブロックは、明示モードで符号化できる。
【0163】
再び図9を参照すれば、予測部910で明示モード及び暗示モードのうち一つを選択し、選択されたモードによって予測動きベクトルを定めれば、第1符号化920及び第2符号化部930は、符号化モードについての情報及び動きベクトルを符号化する。
【0164】
まず、第1符号化部920は、現在ブロックの予測動きベクトルについての情報を符号化する。予測部910で、明示モードで現在ブロックの動きベクトルを符号化することを選択すれば、明示モードで予測動きベクトルが生成されたことを指示する情報、及び複数の予測動きベクトル候補のうちいかなる予測動きベクトルが現在ブロックの予測動きベクトルとして用いられたかを指示する情報を符号化する。
【0165】
また、複数の予測動きベクトル候補が、図11Aないし図11Cに関して前述したmv_temporalを含めば、mv_temporal生成の基礎になる同じ位置のブロック1200または1300が、現在ピクチャーに時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報も共に符号化する。
【0166】
一方、予測部910で、暗示モードで現在ブロックの動きベクトルを符号化することを選択すれば、暗示モードで、現在ブロックの予測動きベクトルの生成を指示する情報を符号化する。言い換えれば、現在ブロックに隣接しているブロックまたはピクセルを用いて、現在ブロックの予測動きベクトルの生成を指示する情報を符号化する。2つ以上の暗示モードがある場合、いかなる暗示モードを用いて現在ブロックの予測動きベクトルを生成したかを指示する情報を符号化してもよい。
【0167】
暗示モードは、現在ブロックの予測動きベクトル候補に基づいて検索範囲を設定し、図12Cに示したような現在ブロックに隣接している、以前に符号化された領域のピクセルに基づいて設定された検索範囲を検索して予測動きベクトルを生成するモードである。
【0168】
第2符号化部930は、予測部910で定められた予測動きベクトルに基づいて現在ブロックの動きベクトルを符号化する。動き補償結果で生成された現在ブロックの動きベクトルから、予測部910で生成された予測動きベクトルを減算して差ベクトルを生成する。次いで、差ベクトルについての情報を符号化する。
【0169】
図13は、本発明の一実施形態による動きベクトルを復号化する装置を図示する。
【0170】
図2に関して前述した映像符号化装置200、または図5に関して前述した映像符号化部500に含まれて動きベクトルを復号化する装置を詳細に図示する。図13を参照すれば、本発明の一実施形態による動きベクトル復号化装置1300は、第1復号化部1310、第2復号化部1320、予測部1330及び動きベクトル復元部1340を備える。
【0171】
第1復号化部1310は、ビットストリームに含まれている現在ブロックの予測動きベクトルについての情報を復号化する。現在ブロックの予測動きベクトルが明示モードまたは暗示モードのうちいかなるモードで符号化されたかを示す情報を復号化する。
【0172】
明示モードで現在ブロックの予測動きベクトルが符号化された場合には、複数の予測動きベクトル候補のうち現在ブロックの予測動きベクトルとして用いた一つの予測動きベクトルを指示する情報も復号化する。
【0173】
また、複数の予測動きベクトル候補が、図11Aないし図11Cに関して前述したmv_temporalを含めば、mv_temporal生成の基礎になる同じ位置のブロック1200または1300が、現在ピクチャーに時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報も共に復号化する。
【0174】
暗示モードで現在ブロックの予測動きベクトルが符号化された場合には、複数の暗示モードのうちいかなる暗示モードで現在ブロックの予測動きベクトルが符号化されたかを指示する情報も復号化できる。
【0175】
暗示モードは、現在ブロックの予測動きベクトル候補に基づいて検索範囲を設定し、図12Cに示したような現在ブロックに隣接している、以前に符号化された領域のピクセルに基づいて設定された検索範囲を検索して、予測動きベクトルを生成するモードでありうる。
【0176】
第2復号化部1310は、ビットストリームに含まれている現在ブロックの動きベクトルと予測動きベクトルとの間の差ベクトルを復号化する。
【0177】
予測部1330は、第1復号化部1310で復号化された現在ブロックの予測動きベクトルについての情報に基づいて、現在ブロックの予測動きベクトルを生成する。
【0178】
明示モードで符号化された現在ブロックの予測動きベクトルについての情報を復号化した場合には、図10A及び図10B図11Aないし図11Cに関して前述した予測動きベクトル候補のうち一つの予測動きベクトルを生成して、現在ブロックの予測動きベクトルとして用いる。
【0179】
暗示モードで符号化された現在ブロックの予測動きベクトルについての情報を復号化した場合には、現在ブロックに隣接している、以前に符号化された領域に含まれているブロックまたはピクセルを用いて現在ブロックの予測動きベクトルを生成する。現在ブロックに隣接しているブロックの動きベクトルの中央値を、現在ブロックの予測動きベクトルとして生成するか、または現在ブロックに隣接しているピクセルを用いて参照ピクチャーを検索して、現在ブロックの予測動きベクトルを生成する。
【0180】
動きベクトル復元部1340は、予測部1330で生成された予測動きベクトル及び第2復号化部320で復号化された差ベクトルを加算して、現在ブロックの動きベクトルを復元する。復元された動きベクトルは、現在ブロックの動き補償に用いられる。
【0181】
図14は、本発明の一実施形態による動きベクトルを符号化する方法を説明するためのフローチャートである。図14を参照すれば、本発明の一実施形態による動きベクトル符号化装置は、段階1410で、予測動きベクトルについての情報を符号化はモードとして、明示モード及び暗示モードのうち一つのモードを選択する。
【0182】
明示モードは、予測動きベクトルについての情報として、少なくとも一つの予測動きベクトル候補のうち一つの予測動きベクトル候補を指示する情報を符号化するモードであり、暗示モードは、予測動きベクトルについての情報として、現在ブロックに隣接している、以前に符号化された領域に含まれたブロックまたはピクセルに基づいて、予測動きベクトルの生成を指示する情報を符号化するモードである。詳細な説明は、図10Aないし図10E図11Aないし図11C図12Aないし図12Cに関して前述した。
【0183】
現在ブロックのサイズ、すなわち、現在ブロックの深度に基づいてモードを選択するか、または現在ブロックが含まれた現在ピクチャーまたは現在スライス単位でモードを選択できる。また、現在ブロックがスキップモードで符号化されたかどうかによってモードを選択してもよい。
【0184】
段階1420で動きベクトル符号化装置は、段階1410で選択されたモードによって予測動きベクトルを定める。段階1410で選択された明示モードまたは暗示モードに基づいて、現在ブロックの予測動きベクトルを定める。明示モードによって、少なくとも一つの予測動きベクトル候補のうち一つの予測動きベクトル候補を現在ブロックの予測動きベクトルとして定めるか、または暗示モードによって、現在ブロックに隣接しているブロックまたはピクセルに基づいて、現在ブロックの予測動きベクトルを定める。
【0185】
段階1430で動きベクトル符号化装置は、段階1420で定められた予測動きベクトルについての情報を符号化する。
【0186】
明示モードの場合、少なくとも一つの予測動きベクトル候補のうち一つの予測動きベクトルを指示する情報、及び現在ブロックの予測動きベクトルについての情報が、明示モードによって符号化されることを指示する情報を符号化する。
【0187】
また、複数の予測動きベクトル候補が、図11Aないし図11Cに関して前述したmv_temporalを含めば、mv_temporal生成の基礎になる同じ位置のブロック1200または1300が、現在ピクチャーに時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報も共に符号化する。
【0188】
暗示モードの場合、現在ブロックの予測動きベクトルが現在ブロックに隣接している、以前に符号化された領域に含まれたブロックまたはピクセルに基づいて生成されることを指示する情報を符号化する。複数の暗示モードがある場合、このうち一つの暗示モードを指示する情報も符号化される。
【0189】
暗示モードは、現在ブロックの予測動きベクトル候補に基づいて検索範囲を設定し、図12Cに示したような現在ブロックに隣接している、以前に符号化された領域のピクセルに基づいて設定された検索範囲を検索して、予測動きベクトルを生成するモードでありうる。
【0190】
段階1440で動きベクトル符号化装置は、段階1420で定められた予測動きベクトルを現在ブロックの動きベクトルから減算して生成された差ベクトルを符号化する。
【0191】
図15は、本発明の一実施形態による動きベクトルを復号化する方法を説明するためのフローチャートである。図15を参照すれば、本発明の一実施形態による動きベクトル復号化装置は、段階1510で、ビットストリームに含まれた現在ブロックの予測動きベクトルについての情報を復号化する。明示モード及び暗示モードのうち、現在ブロックの予測動きベクトルの符号化に用いられたモードについての情報を復号化する。
【0192】
明示モードの場合、現在ブロックの予測動きベクトルが明示モードによって符号化されたことを指示する情報、及び少なくとも一つの予測動きベクトル候補のうち一つの予測動きベクトル候補についての情報を復号化する。
【0193】
また、複数の予測動きベクトル候補が、図11Aないし図11Cに関して前述したmv_temporalを含めば、mv_temporal生成の基礎になる同じ位置のブロック1200または1300が、現在ピクチャーに時間的に先行するピクチャーのブロックであるか、または後行するピクチャーのブロックであるかを指示する情報も共に符号化する。
【0194】
暗示モードの場合、現在ブロックの予測動きベクトルが、現在ブロックに隣接している、以前に復号化された領域に含まれたブロックまたはピクセルに基づいて生成されることを指示する情報を復号化する。複数の暗示モードがある場合、複数の暗示モードのうち一つの暗示モードを指示する情報も共に復号化される。
【0195】
暗示モードは、現在ブロックの予測動きベクトル候補に基づいて検索範囲を設定し、図12Cに示したような現在ブロックに隣接している、以前に符号化された領域のピクセルに基づいて設定された検索範囲を検索して、予測動きベクトルを生成するモードでありうる。
【0196】
段階1520で動きベクトル復号化装置は、差ベクトルについての情報を復号化する。差ベクトルは、現在ブロックの予測動きベクトルと現在ブロックの動きベクトルとの差についてのベクトルである。
【0197】
段階1530で動きベクトル復号化装置は、段階1510で復号化された予測動きベクトルについての情報に基づいて、現在ブロックの予測動きベクトルを生成する。明示モードまたは暗示モードによって現在ブロックの予測動きベクトルを生成する。少なくとも一つの予測動きベクトル候補のうち一つの予測動きベクトルを選択するか、または、現在ブロックに隣接している、以前に復号化された領域に含まれたブロックまたはピクセルを用いて現在ブロックの予測動きベクトルを生成する。
【0198】
段階1540で動きベクトル符号化装置は、段階1520で復号化された差ベクトルと、段階1530で生成された予測動きベクトルとを加算して、現在ブロックの動きベクトルを復元する。
【0199】
以上のように、本発明はたとえ限定された実施形態及び図面によって説明されたとしても、本発明が前記の実施形態に限定されるものではなく、当業者ならば、かかる記載から多様な修正及び変形が可能であろう。したがって、本発明の思想は、特許請求の範囲のみによって把握されねばならず、これと均等または等価的な変形はいずれも本発明の思想の範ちゅうに属するといえる。また、本発明によるシステムは、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして具現できる。
【0200】
例えば、本発明の例示的な実施形態による映像符号化装置、映像復号化装置、映像符号化部、映像復号化部、動きベクトル符号化装置及び動きベクトル復号化装置は、図1、2、4、5、9及び13に示したような装置のそれぞれのユニットにカップリングされたバス、前記バスに結合された少なくとも一つのプロセッサーを備える。また、命令、受信されたメッセージまたは生成されたメッセージを保存するために前記バスに結合されて、前述したような命令を行うための少なくても一つのプロセッサーにカップリングされたメモリを含む。
【0201】
また、コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取られるデータが保存されるすべての記録装置を含む。記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などがある。またコンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散されて、分散方式でコンピュータで読み取り可能なコードが保存されて行われる。
図1
図2
図3
図4
図5
図6
図7
図8A
図8B
図8C
図8D
図9
図10A
図10B
図10C
図10D
図10E
図11A
図11B
図11C
図12A
図12B
図12C
図12D
図13
図14
図15