IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ エルジー エレクトロニクス インコーポレイティドの特許一覧

特許7273845動きベクトルに基づく映像コーディング方法およびその装置
<>
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図1
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図2
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図3
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図4
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図5
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図6
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図7
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図8
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図9
  • 特許-動きベクトルに基づく映像コーディング方法およびその装置 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-02
(45)【発行日】2023-05-15
(54)【発明の名称】動きベクトルに基づく映像コーディング方法およびその装置
(51)【国際特許分類】
   H04N 19/463 20140101AFI20230508BHJP
   H04N 19/70 20140101ALI20230508BHJP
【FI】
H04N19/463
H04N19/70
【請求項の数】 8
(21)【出願番号】P 2020554261
(86)(22)【出願日】2019-03-20
(65)【公表番号】
(43)【公表日】2021-07-29
(86)【国際出願番号】 KR2019003251
(87)【国際公開番号】W WO2019194436
(87)【国際公開日】2019-10-10
【審査請求日】2020-11-02
(31)【優先権主張番号】62/651,648
(32)【優先日】2018-04-02
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/665,456
(32)【優先日】2018-05-01
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100165191
【弁理士】
【氏名又は名称】河合 章
(74)【代理人】
【識別番号】100114018
【弁理士】
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100159259
【弁理士】
【氏名又は名称】竹本 実
(72)【発明者】
【氏名】シータル パルリ
(72)【発明者】
【氏名】キム スンファン
【審査官】清山 昂平
(56)【参考文献】
【文献】特表2014-509479(JP,A)
【文献】特開2017-200215(JP,A)
【文献】特表2017-508349(JP,A)
【文献】特開2013-005168(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
デコード装置により実行されるピクチャデコード方法であって、
動きベクトル圧縮(motion vector compression)に関連する情報を導出するステップと、
現ピクチャにおける現ブロックに対する動きベクトルを導出するステップと、
前記現ブロックに対する前記動きベクトルに基づいて前記現ブロックに対する予測されたブロックを導出するステップと、
前記動きベクトル圧縮に関連する情報に基づいてスケーリングされた動きベクトルを導出するステップであって、前記スケーリングされた動きベクトルを表すためのビット数が前記動きベクトルを表すためのビット数より小さいステップと、
記現ブロックに対する前記動きベクトルに関する情報を記憶するステップであって、前記動きベクトルに関する情報は、前記動きベクトルに対する前記スケーリングされた動きベクトルに関する情報を有するステップと、
前記現ブロックに対する前記予測されたブロックに基づいて前記現ピクチャに対する復元ピクチャを生成するステップと、を有し、
前記動きベクトル圧縮に関連する情報は、前記スケーリングされた動きベクトルを表すためのビット数に関連する情報を有し、
前記スケーリングされた動きベクトルを表すためのビット数に関連する情報は、前記スケーリングされた動きベクトルを表すために何個のビットが使用されるかを特定し、
前記スケーリングされた動きベクトルを表すためのビット数は、16より小さい、方法。
【請求項2】
前記動きベクトル圧縮に関連する情報は、前記動きベクトルに対するスケールファクタに関する情報、前記動きベクトルに対する符号おび動きデータに関する情報と、を有し、
前記符号および前記動きデータに関する情報は、6ビットによって表される、請求項1に記載の方法。
【請求項3】
前記動きベクトルに対する前記スケールファクタ、前記動きベクトルに対する前記符号、および前記動きベクトルに対する前記動きデータの値掛けられる場合、前記動きベクトルに対する前記スケーリングされた動きベクトルが導出される、請求項2に記載の方法。
【請求項4】
前記動きベクトル圧縮に関連する情報は、前記動きベクトル圧縮方式(compression method)に基づいて表されるかどうかをすフラグ情報を有し、
前記フラグ情報が1を指示する場合、前記動きベクトル圧縮に関する情報は、前記動きベクトルに対する前記スケールファクタに関する情報、前記動きベクトルに対する前記符号おび前記動きデータに関する情報と、を有する、請求項2に記載の方法。
【請求項5】
エンコード装置により実行されるピクチャエンコード方法であって、
現ブロックに対する動きベクトルを導出するステップと、
前記現ブロックに対する前記動きベクトルに基づいて前記現ブロックに対する予測されたブロックを導出するステップと、
動きベクトル圧縮に関連する情報を導出するステップと、
前記動きベクトル圧縮に関連する情報に基づいてスケーリングされた動きベクトルを導出するステップであって、前記スケーリングされた動きベクトルを表すためのビット数が前記動きベクトルを表すためのビット数より小さいステップと、
記現ブロックに対する前記動きベクトルに関する情報を記憶するステップであって、前記動きベクトルに関する情報は、前記動きベクトルに対する前記スケーリングされた動きベクトルに関する情報を有するステップと、
前記現ブロックに対する前記予測されたブロックに基づいて前記現ブロックに対する残差サンプルを導出するステップと、
前記残差サンプルに関する情報を有する画像情報をエンコードするステップと、を有し、
前記動きベクトル圧縮に関連する情報は、前記スケーリングされた動きベクトルを表すためのビット数に関連する情報を有し、
前記スケーリングされた動きベクトルを表すためのビット数に関連する情報は、前記スケーリングされた動きベクトルを表すために何個のビットが使用されるかを特定し、
前記スケーリングされた動きベクトルを表すためのビット数は、16より小さい、方法。
【請求項6】
前記動きベクトル圧縮に関連する情報は、前記動きベクトルに対するスケールファクタに関する情報と、前記動きベクトルに対する符号および動きデータに関する情報と、を有し、
前記符号および前記動きデータに関する情報は、6ビットによって表される、請求項5に記載の方法。
【請求項7】
画像に関するデータの送信方法であって、
現ブロックに対する動きベクトルを導出するステップと、
前記現ブロックに対する前記動きベクトルに基づいて前記現ブロックに対する予測されたブロックを導出するステップと、
動きベクトル圧縮に関連する情報を導出するステップと、
前記動きベクトル圧縮に関連する情報に基づいてスケーリングされた動きベクトルを導出するステップであって、前記スケーリングされた動きベクトルを表すためのビット数が前記動きベクトルを表すためのビット数より小さいステップと、
前記現ブロックに対する前記動きベクトルに関する情報を記憶するステップであって、前記動きベクトルに関する情報は、前記動きベクトルに対する前記スケーリングされた動きベクトルに関する情報を有するステップと、
前記現ブロックに対する前記予測されたブロックに基づいて前記現ブロックに対する残差サンプルを導出するステップと、
前記残差サンプルに関する情報を有する画像情報をエンコードすることによってビットストリームを生成するステップと、を実行することによって生成された前記ビットストリームを取得するステップと、
前記ビットストリームを有する前記データを送信するステップと、を有し、
前記動きベクトル圧縮に関連する情報は、前記スケーリングされた動きベクトルを表すためのビット数に関連する情報を有し、
前記スケーリングされた動きベクトルを表すためのビット数に関連する情報は、前記スケーリングされた動きベクトルを表すために何個のビットが使用されるかを特定し、
前記スケーリングされた動きベクトルを表すためのビット数は、16より小さい、方法。
【請求項8】
前記動きベクトル圧縮に関連する情報は、前記動きベクトルに対するスケールファクタに関する情報と、前記動きベクトルに対する符号および動きデータに関する情報と、を有し、
前記符号および前記動きデータに関する情報は、6ビットによって表される、請求項7に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像コーディング技術に関し、より詳しくは、映像コーディングシステムにおける動きベクトル(Motion Vector)に基づく映像コーディング方法およびその装置に関する。
【背景技術】
【0002】
最近、HD(High Definition)画像およびUHD(Ultra High Definition)画像のような高解像度、高品質の画像に対する需要が多様な分野で増加している。画像データが高解像度、高品質になるほど、既存の画像データに比べて相対的に送信される情報量またはビット量が増加するため、既存の有無線広帯域回線のような媒体を利用して画像データを送信するか、または既存の記憶(格納)媒体を利用して画像データを記憶する場合、送信コスト(費用)および記憶コストが増加する。
【0003】
これによって、高解像度、高品質画像の情報を効果的に送信または記憶し、再生するために高効率の画像圧縮技術が要求される。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の技術的課題は、映像コーディング効率を上げる方法および装置を提供することにある。
【0005】
本発明の他の技術的課題は、動きベクトルに基づくインター予測の効率を上げる方法および装置を提供することにある。
【0006】
本発明の他の技術的課題は、動きベクトルに基づくインター予測過程で動きベクトル圧縮(コンプレッション)(motion vector compression)に基づいて動きベクトルに関する情報を記憶する方法および装置を提供することにある。
【0007】
本発明の他の技術的課題は、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって映像コーディング効率を上げる方法および装置を提供することにある。
【0008】
本発明の他の技術的課題は、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって動きベクトルに関する情報を記憶するために要求されるビットの個数を減らす方法および装置を提供することにある。
【課題を解決するための手段】
【0009】
本発明の一実施例によると、デコード装置により実行されるピクチャデコード方法が提供される。当該方法は、動きベクトル圧縮(motion vector compression)に関する情報を受信するステップと、現ピクチャに有されている現ブロックに対する動きベクトルを導出するステップと、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出するステップと、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶するステップと、現ブロックに対する予測されたブロックに基づいて現ピクチャに対する復元ピクチャを生成するステップと、を有することを特徴とする。
【0010】
本発明の他の一実施例によると、ピクチャデコーディングを実行するデコード装置が提供される。当該デコード装置は、動きベクトル圧縮に関する情報を受信し、現ピクチャに有されている現ブロックに対する動きベクトルを導出し、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出する予測部と、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶するメモリと、現ブロックに対する予測されたブロックに基づいて現ピクチャに対する復元ピクチャを生成する加算部と、を有することを特徴とする。
【0011】
本発明の他の一実施例によると、エンコード装置により実行されるピクチャエンコード方法が提供される。当該方法は、現ブロックに対する動きベクトルを導出するステップと、動きベクトル圧縮に関する情報を生成するステップと、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出するステップと、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶するステップと、現ブロックに対する予測されたブロックに基づいて現ブロックに対する残差(レジデュアル)サンプルを導出するステップと、残差サンプルに関する情報および動きベクトル圧縮に関する情報を有する映像情報をエンコードするステップと、を有することを特徴とする。
【0012】
本発明の他の一実施例によると、ピクチャエンコーディングを実行するエンコード装置が提供される。当該エンコード装置は、現ブロックに対する動きベクトルを導出し、動きベクトル圧縮に関する情報を生成し、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出する予測部と、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶するメモリと、現ブロックに対する予測されたブロックに基づいて現ブロックに対する残差サンプルを導出する残差処理部と、残差サンプルに関する情報および動きベクトル圧縮に関する情報を有する映像情報をエンコードするエントロピ符号化(エンコーディング)部と、を有することを特徴とする。
【発明の効果】
【0013】
本発明によると、全般的な映像/ビデオ圧縮効率を上げることができる。
【0014】
本発明によると、動きベクトルに基づくインター予測の効率を上げることができる。
【0015】
本発明によると、動きベクトルに基づくインター予測過程で動きフィールドストレージに記憶される動きベクトルを制限することによって、映像コーディング効率を上げることができる。
【0016】
本発明によると、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって、映像コーディング効率を上げることができる。
【0017】
本発明によると、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって、動きベクトルに関する情報を記憶するために要求されるビットの個数を減らすことができる。
【図面の簡単な説明】
【0018】
図1】一実施例に係るエンコード装置の構成を概略的に説明する図である。
図2】一実施例に係るデコード装置の構成を概略的に説明する図である。
図3】一実施例に係るTMVP候補を説明する図である。
図4】一実施例に係る動きベクトルに関する情報を示す図である。
図5】一実施例によって動き情報を導出する現ブロック内の位置を示す図である。
図6】一実施例に係る現ブロック内の関心領域を示す図である。
図7】一実施例に係るエンコード装置の動作を示す流れ図である。
図8】一実施例に係るエンコード装置の構成を示すブロック図である。
図9】一実施例に係るデコード装置の動作を示す流れ図である。
図10】一実施例に係るデコード装置の構成を示すブロック図である。
【発明を実施するための形態】
【0019】
〔発明を実施するための最善の形態〕
本発明の一実施例によると、デコード装置により実行されるピクチャデコード方法が提供される。上記方法は、動きベクトル圧縮(コンプレッション)(motion vector compression)に関する情報を受信するステップと、現ピクチャに有されている現ブロックに対する動きベクトルを導出するステップと、上記現ブロックに対する上記動きベクトルに基づいて上記現ブロックに対する予測されたブロックを導出するステップと、上記動きベクトル圧縮に関する情報に基づいて上記現ブロックに対する上記動きベクトルに関する情報を記憶(格納)するステップと、上記現ブロックに対する予測されたブロックに基づいて上記現ピクチャに対する復元ピクチャを生成するステップと、を有することを特徴とする。
【0020】
〔発明を実施するための形態〕
本発明は、多様な変更を加えることができ、様々な実施例を有することができ、特定の実施例を図面に例示して詳細に説明する。しかしながら、これは、本発明を特定の実施例に限定するものではない。本明細書で使用する用語は、単に特定の実施例を説明するために使われたものであり、本発明の技術的思想を限定しようとする意図に使われるものではない。単数の表現は、文脈上明白に異なる意味ではない限り、複数の表現を含む。本明細書において、“含む”または“有する”などの用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品またはそれらを組合せたものが存在することを指定するものであり、一つもしくは複数の他の特徴や数字、段階、動作、構成要素、部品またはそれらを組合せたものの存在または付加の可能性を予め排除しないと理解しなければならない。
【0021】
一方、本発明で説明される図面上の各構成は、互いに異なる特徴的な機能に関する説明の便宜のために独立して図示されたものであり、各構成が互いに別個のハードウェアや別個のソフトウェアで具現されることを意味しない。例えば、各構成のうちの二つ以上の構成が合わせられて一つの構成をなすこともあり、一つの構成が複数の構成に分けられることもある。各構成が統合および/または分離された実施例も、本発明の本質から外れない限り、本発明の権利範囲に含まれる。
【0022】
以下の説明は、ビデオ、イメージまたは映像について扱う技術分野で適用されることができる。例えば、以下の説明で開示された方法または実施例は、VVC(Versatile Video Coding)標準(ITU-T Rec.H.266)、VVC以後の次世代ビデオ/イメージコーディング標準、またはVVC以前の標準(例えば、HEVC(High Efficiency Video Coding)標準(ITU-T Rec.H.265)など)の開示内容と関連することができる。
【0023】
以下、添付図面を参照し、本発明の好ましい実施例をより詳細に説明する。以下、図面上の同一の構成要素については同一の参照符号を使用し、同一の構成要素について重複する説明は省略する。
【0024】
本明細書において、ビデオ(video)は、時間の流れによる一連の映像(image)の集合を意味する。ピクチャ(picture)は、一般的に特定時間帯の一つの映像を示す単位を意味し、スライス(slice)は、コーディングにおいてピクチャの一部を構成する単位である。一つのピクチャは、複数のスライスで構成されることができ、必要によって、ピクチャおよびスライスは、互いに混用されて使われることができる。
【0025】
ピクセル(pixel)またはペル(pel)は、一つのピクチャ(または画像)を構成する最小の単位を意味することができる。また、ピクセルに対応する用語として「サンプル(sample)」が使用されることができる。サンプルは、一般的にピクセルまたはピクセルの値を示し、輝度(ルマ)成分のピクセル/ピクセルの値のみを示してもよく、彩度(クロマ)成分のピクセル/ピクセルの値のみを示してもよい。
【0026】
ユニット(unit)は、画像処理の基本単位を示す。ユニットは、ピクチャの特定領域および該当領域に関する情報のうちの少なくとも一つを含むことができる。ユニットは、場合によってブロック(block)または領域(area)などの用語と混用されてもよい。一般的な場合、MxNのブロックは、M個の列およびN個の行からなるサンプルまたは変換係数(transform coefficient)の集合を示すことができる。
【0027】
図1は、本発明が適用されることができるエンコード装置(video encoding apparatus)の構成を概略的に説明する図面である。以下、エンコード/デコード装置は、ビデオエンコード/デコード装置および/または映像エンコード/デコード装置を含むことができ、ビデオエンコード/デコード装置が映像エンコード/デコード装置を含む概念で使われることができ、または映像エンコード/デコード装置がビデオエンコード/デコード装置を含む概念で使われることもできる。
【0028】
図1を参照すると、ビデオエンコード装置100は、ピクチャ分割部(picture partitioning module)105、予測部(prediction module)110、残差(レジデュアル)処理部(residual processing module)120、エントロピ符号化(エンコーディング)部(entropy encoding module)130、加算部(adder)140、フィルタ部(filtering module)150、およびメモリ(memory)160を含むことができる。残差処理部120は、減算部(substractor)121、変換部(transform module)122、量子化部(quantization module)123、再整列部(rearrangement module)124、逆量子化部(dequantization module)125、および逆変換部(inverse transform module)126を含むことができる。
【0029】
ピクチャ分割部105は、入力されたピクチャを少なくとも一つの処理ユニット(processing unit)に分割できる。
【0030】
一例として、処理ユニットは、コーディングユニット(Coding Unit、CU)と呼ばれる。この場合、コーディングユニットは、最大コーディングユニット(Largest Coding Unit、LCU)からQTBT(Quad-Tree Binary-Tree)構造によって再帰的に(recursively)分割されることができる。例えば、一つのコーディングユニットは、四分木(クアッドツリー)構造、二分木(バイナリツリー)構造および/または三分木(ターナリ(ternary)ツリー)構造に基づいて下位デプスの(deeper)複数のコーディングユニットに分割されることができる。この場合、例えば、四分木構造が先に適用され、二分木構造および三分木構造が後に適用されることができる。あるいは、二分木構造/三分木構造が先に適用されることもできる。それ以上分割されない最終コーディングユニットに基づいて、本発明によるコーディング手順が実行されることができる。この場合、映像特性によるコーディング効率などに基づいて、最大コーディングユニットが最終コーディングユニットとして使われることができ、または、必要によって、コーディングユニットは、再帰的に(recursively)より下位デプスのコーディングユニットに分割されて最適なサイズのコーディングユニットが最終コーディングユニットとして使われることができる。ここで、コーディング手順とは、後述する予測、変換、および復元などの手順を含むことができる。
【0031】
他の例として、処理ユニットは、コーディングユニット(Coding Unit、CU)、予測ユニット(Prediction Unit、PU)または変換ユニット(Transform Unit、TU)を含むこともできる。コーディングユニットは、最大コーディングユニット(Largest Coding Unit、LCU)から四分木構造によって下位(deeper)デプスのコーディングユニットに分割(split)されることができる。この場合、映像特性によるコーディング効率などに基づいて、最大コーディングユニットが最終コーディングユニットとして使われることができ、または、必要によって、コーディングユニットは、再帰的に(recursively)より下位デプスのコーディングユニットに分割されて、最適なサイズのコーディングユニットが最終コーディングユニットとして使われることができる。最小コーディングユニット(Smallest Coding Unit、SCU)が設定された場合、コーディングユニットは、最小コーディングユニットより小さいコーディングユニットに分割されることができない。ここで、最終コーディングユニットとは、予測ユニットまたは変換ユニットへのパーティショニングまたは分割のベース(基盤)となるコーディングユニットを意味する。予測ユニットは、コーディングユニットからパーティショニング(partitioning)されるユニットであって、サンプル予測のユニットである。このとき、予測ユニットは、サブブロック(subblock)に分けられることもできる。変換ユニットは、コーディングユニットから四分木構造によって分割されることができ、変換係数を導出(誘導)するユニットおよび/または変換係数から残差信号(residual signal)を導出するユニットである。以下、コーディングユニットはコーディングブロック(Coding Block、CB)、予測ユニットは予測ブロック(Prediction Block、PB)、変換ユニットは変換ブロック(Transform Block、TB)とも呼ばれる。予測ブロックまたは予測ユニットは、ピクチャ内でブロック形態の特定領域を意味し、予測サンプルのアレイ(配列)(array)を含むことができる。また、変換ブロックまたは変換ユニットは、ピクチャ内におけるブロック形態の特定領域を意味し、変換係数または残差サンプルのアレイを含むことができる。
【0032】
予測部110は、処理対象ブロック(以下、現(現在)ブロックまたは残差ブロックを意味することもある)に対する予測を実行し、上記現ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部110で実行される予測の単位は、コーディングブロック、または変換ブロック、または予測ブロックである。
【0033】
予測部110は、現ブロックにイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができる。一例として、予測部110は、CU単位でイントラ予測またはインター予測が適用されることを決定することができる。
【0034】
イントラ予測の場合、予測部110は、現ブロックが属するピクチャ(以下、現ピクチャ)内の現ブロックの外部の参照サンプルに基づいて現ブロックに対する予測サンプルを導出することができる。このとき、予測部110は、(i)現ブロックの隣接(neighboring)参照サンプルの平均(average)または補間(interpolation)に基づいて予測サンプルを導出することができ、(ii)現ブロックの隣接参照サンプルのうち、予測サンプルに対して特定(予測)方向に存在する参照サンプルに基づいて上記予測サンプルを導出することもできる。(i)の場合は、非方向性モードまたは非角度モードと呼ばれ、(ii)の場合は、方向性(directional)モードまたは角度(angular)モードと呼ばれる。イントラ予測における予測モードは、例えば、33個の方向性予測モードおよび少なくとも2個以上の非方向性モードを有することができる。非方向性モードは、DC予測モードおよび平面(プラナー)モード(Planarモード)を含むことができる。予測部110は、隣接ブロックに適用された予測モードを利用して、現ブロックに適用される予測モードを決定することもできる。
【0035】
インター予測の場合、予測部110は、参照ピクチャ上で動きベクトルにより特定されるサンプルに基づいて、現ブロックに対する予測サンプルを導出することができる。予測部110は、スキップ(skip)モード、マージ(merge)モード、およびMVP(Motion Vector Prediction)モードのうちのいずれか一つを適用して現ブロックに対する予測サンプルを導出することができる。スキップモードおよびマージモードの場合、予測部110は、隣接ブロックの動き情報を現ブロックの動き情報として利用できる。スキップモードの場合、マージモードと違って予測サンプルとオリジナル(原本)サンプルとの間の差(残差)が送信されない。MVPモードの場合、隣接ブロックの動きベクトルを動きベクトル予測子(Motion Vector Predictor)として利用して現ブロックの動きベクトル予測子として利用して、現ブロックの動きベクトルを導出することができる。
【0036】
インター予測の場合、隣接ブロックは、現ピクチャ内に存在する空間的隣接ブロック(spatial neighboring block)と参照ピクチャ(reference picture)に存在する時間的隣接ブロック(temporal neighboring block)とを含むことができる。上記時間的隣接ブロックを含む参照ピクチャは、コロケート(同一位置)ピクチャ(collocated picture、colPic)とも呼ばれる。動き情報(motion information)は、動きベクトルおよび参照ピクチャインデックスを含むことができる。予測モード情報および動き情報などの情報は、(エントロピ)エンコードされてビットストリーム形態で出力されることができる。
【0037】
スキップモードおよびマージモードで時間的隣接ブロックの動き情報が利用される場合、参照ピクチャリスト(reference picture list)上の最上位ピクチャが参照ピクチャとして利用されることもできる。参照ピクチャリスト(Picture Order Count)に含まれる参照ピクチャは、現ピクチャと該当参照ピクチャとの間のPOC(Picture Order Count)の差に基づいて整列されることができる。POCは、ピクチャの表示(ディスプレイ)順序に対応し、コーディング順序と区分されることができる。
【0038】
減算部121は、オリジナルサンプルと予測サンプルとの間の差である残差サンプルを生成する。スキップモードが適用される場合には、前述したように残差サンプルを生成しない。
【0039】
変換部122は、変換ブロック単位に残差サンプルを変換して変換係数(transform coefficient)を生成する。変換部122は、該当変換ブロックのサイズと、該当変換ブロックと空間的に重なるコーディングブロックまたは予測ブロックに適用された予測モードと、によって変換を実行することができる。例えば、上記変換ブロックと重なる上記コーディングブロックまたは上記予測ブロックにイントラ予測が適用され、上記変換ブロックが4×4の残差アレイ(array)である場合、残差サンプルは、DST(Discrete Sine Transform)変換カーネルを利用して変換され、その他の場合、残差サンプルは、DCT(Discrete Cosine Transform)変換カーネルを利用して変換できる。
【0040】
量子化部123は、変換係数を量子化し、量子化された変換係数を生成することができる。
【0041】
再整列部124は、量子化された変換係数を再整列する。再整列部124は、係数スキャン(scanning)方法を介してブロック形態の量子化された変換係数を1次元ベクトル形態で再整列できる。ここで、再整列部124は、別途の構成で説明したが、量子化部123の一部であってもよい。
【0042】
エントロピ符号化部130は、量子化された変換係数に対するエントロピ符号化を実行することができる。エントロピ符号化は、例えば、指数ゴロム(exponential golomb)、CAVLC(Context-Adaptive Variable Length Coding)、CABAC(Context-Adaptive Binary Arithmetic Coding)などのエンコード方法を含むことができる。エントロピ符号化部130は、量子化された変換係数以外にビデオ復元に必要な情報(例えば、シンタックス要素(syntax element)の値など)を、共にまたは別途にエントロピ符号化または予め設定された方法によってエンコードすることもできる。エンコードされた情報は、ビットストリーム形態でNAL(Network Abstraction Layer)ユニット単位で送信または記憶されることができる。上記ビットストリームは、ネットワークを介して送信されることができ、またはデジタル記憶媒体に記憶されることができる。ここで、ネットワークは、放送網および/または通信網などを含むことができ、デジタル記憶媒体は、USB、SD、CD、DVD、ブルーレイ、HDD、SSDなど、多様な記憶媒体を含むことができる。
【0043】
逆量子化部125は、量子化部123で量子化された値(量子化された変換係数)を逆量子化し、逆変換部126は、逆量子化部125で逆量子化された値を逆変換して残差サンプルを生成する。
【0044】
加算部140は、残差サンプルと予測サンプルとを加算してピクチャを復元する。残差サンプルと予測サンプルとは、ブロック単位に加算されて復元ブロックが生成されることができる。ここで、加算部140は、別途の構成で説明したが、予測部110の一部であってもよい。一方、加算部140は、復元部(reconstruction module)または復元ブロック生成部とも呼ばれる。
【0045】
復元されたピクチャ(reconstructed picture)に対して、フィルタ部150は、デブロッキングフィルタおよび/またはサンプル適応オフセット(sample adaptive offset)を適用することができる。デブロックフィルタリングおよび/またはサンプル適応オフセットを介して、復元ピクチャ内のブロック境界のアーチファクトや量子化過程における歪曲が補正されることができる。サンプル適応オフセットは、サンプル単位に適用されることができ、デブロックフィルタリングの過程が完了した後に適用されることができる。フィルタ部150は、ALF(Adaptive Loop Filter)を復元されたピクチャに適用することもできる。ALFは、デブロッキングフィルタおよび/またはサンプル適応オフセットが適用された後の復元されたピクチャに対して適用されることができる。
【0046】
メモリ160は、復元ピクチャ(デコードされたピクチャ)またはエンコーディング/デコーディングに必要な情報を記憶することができる。ここで、復元ピクチャは、上記フィルタ部150によりフィルタリング手順が完了した復元ピクチャである。上記記憶された復元ピクチャは、他のピクチャの(インター)予測のための参照ピクチャとして活用されることができる。例えば、メモリ160は、インター予測に使われる(参照)ピクチャを記憶することができる。このとき、インター予測に使われるピクチャは、参照ピクチャセット(reference picture set)または参照ピクチャリスト(reference picture list)により指定されることができる。
【0047】
図2は、本発明が適用されることができるビデオ/映像デコード装置(video decoding apparatus)の構成を概略的に説明する図面である。以下、ビデオデコード装置とは、映像デコード装置を含むことができる。
【0048】
図2を参照すると、ビデオデコード装置200は、エントロピ復号(デコーディング)部(entropy decoding module)210、残差処理部(residual processing module)220、予測部(prediction module)230、加算部(adder)240、フィルタ部(filtering module)250、およびメモリ(memory)260を含むことができる。ここで、残差処理部220は、再整列部(rearrangement module)221、逆量子化部(dequantization module)222、逆変換部(inverse transform module)223を含むことができる。また、図示されていないが、ビデオデコード装置200は、ビデオ情報を含むビットストリームを受信する受信部を含むことができる。上記受信部は、別途のモジュールで構成されることもでき、またはエントロピ復号部210に含まれることもできる。
【0049】
ビデオ/映像情報を含むビットストリームが入力されると、ビデオデコード装置200は、ビデオエンコード装置でビデオ/映像情報が処理されたプロセスに対応してビデオ/映像/ピクチャを復元することができる。
【0050】
例えば、ビデオデコード装置200は、ビデオエンコード装置で適用された処理ユニットを利用してビデオデコーディングを実行することができる。したがって、ビデオデコーディングの処理ユニットブロックは、一例としてコーディングユニットであり、他の例としてコーディングユニット、予測ユニットまたは変換ユニットである。コーディングユニットは、最大コーディングユニットから四分木構造、二分木構造および/または三分木構造によって分割されることができる。
【0051】
予測ユニットおよび変換ユニットが場合によってさらに使用されることができ、この場合、予測ブロックは、コーディングユニットから導出またはパーティショニングされるブロックであって、サンプル予測のユニットである。このとき、予測ユニットは、サブブロックに分けられることもできる。変換ユニットは、コーディングユニットから四分木構造によって分割されることができ、変換係数を導出するユニットまたは変換係数から残差信号を導出するユニットである。
【0052】
エントロピ復号部210は、ビットストリームをパージングしてビデオ復元またはピクチャ復元に必要な情報を出力することができる。例えば、エントロピ復号部210は、指数ゴロム符号化、CAVLCまたはCABACなどのコーディング方法に基づいてビットストリーム内の情報をデコードし、ビデオ復元に必要なシンタックスエレメントの値、残差に対する変換係数の量子化された値を出力することができる。
【0053】
より詳細には、CABACエントロピ復号方法は、ビットストリームで各シンタックス要素に該当するBINを受信し、デコーディング対象シンタックス要素情報と隣接およびデコーディング対象ブロックのデコーディング情報または以前のステップでデコードされたシンボル/BINの情報とを利用してコンテキスト(context)モデルを決定し、決定されたコンテキストモデルによってBINの発生確率を予測してBINの算術復号(デコーディング)(arithmetic decoding)を実行することで、各シンタックス要素の値に該当するシンボルを生成することができる。このとき、CABACエントロピ復号方法は、コンテキストモデルの決定後、次のシンボル/BINのコンテキストモデルのためにデコードされたシンボル/BINの情報を利用してコンテキストモデルをアップデートすることができる。
【0054】
エントロピ復号部210でデコードされた情報のうちの予測に関する情報は、予測部230に提供され、エントロピ復号部210でエントロピ復号が実行された残差値、すなわち、量子化された変換係数は、再整列部221に入力されることができる。
【0055】
再整列部221は、量子化されている変換係数を2次元のブロック形態で再整列できる。再整列部221は、エンコード装置で実行された係数スキャンに対応して再整列を実行することができる。ここで、再整列部221は、別途の構成で説明したが、逆量子化部222の一部であってもよい。
【0056】
逆量子化部222は、量子化されている変換係数を(逆)量子化パラメータに基づいて逆量子化して変換係数を出力することができる。このとき、量子化パラメータを導出するための情報は、エンコード装置からシグナリングされることができる。
【0057】
逆変換部223は、変換係数を逆変換して残差サンプルを導出することができる。
【0058】
予測部230は、現ブロックに対する予測を実行し、上記現ブロックに対する予測サンプルを含む予測されたブロック(predicted block)を生成することができる。予測部230で実行される予測の単位は、コーディングブロック、または変換ブロック、または予測ブロックである。
【0059】
予測部230は、上記予測に関する情報に基づいて、イントラ予測を適用するか、またはインター予測を適用するかを決定することができる。このとき、イントラ予測およびインター予測のうちのいずれかを適用するかを決定する単位と予測サンプルを生成する単位とは異なる。併せて、インター予測とイントラ予測とにおいて、予測サンプルを生成する単位も異なる。例えば、インター予測およびイントラ予測のうちのいずれを適用するかは、CU単位に決定できる。また、例えば、インター予測において、PU単位に予測モードを決定して予測サンプルを生成することができ、イントラ予測において、PU単位に予測モードを決定し、TU単位に予測サンプルを生成することもできる。
【0060】
イントラ予測の場合、予測部230は、現ピクチャ内の隣接参照サンプルに基づいて現ブロックに対する予測サンプルを導出することができる。予測部230は、現ブロックの隣接参照サンプルに基づいて方向性モードまたは非方向性モードを適用して現ブロックに対する予測サンプルを導出することができる。このとき、隣接ブロックのイントラ予測モードを利用して現ブロックに適用する予測モードが決定されることもできる。
【0061】
インター予測の場合、予測部230は、参照ピクチャ上で動きベクトルにより参照ピクチャ上で特定されるサンプルに基づいて、現ブロックに対する予測サンプルを導出することができる。予測部230は、スキップ(skip)モード、マージ(merge)モード、およびMVPモードのうちのいずれか一つを適用して現ブロックに対する予測サンプルを導出することができる。このとき、ビデオエンコード装置で提供された現ブロックのインター予測に必要な動き情報、例えば、動きベクトル、参照ピクチャインデックスなどに関する情報は、上記予測に関する情報に基づいて取得または導出されることができる。
【0062】
スキップモードおよびマージモードの場合、隣接ブロックの動き情報が現ブロックの動き情報として利用されることができる。このとき、隣接ブロックは、空間的隣接ブロックおよび時間的隣接ブロックを含むことができる。
【0063】
予測部230は、使用可能(可用)な隣接ブロックの動き情報でマージ候補リストを構成し、マージインデックスがマージ候補リスト上で指示する情報を現ブロックの動きベクトルとして使用することができる。マージインデックスは、エンコード装置からシグナリングされることができる。動き情報は、動きベクトルおよび参照ピクチャを含むことができる。スキップモードおよびマージモードで時間的隣接ブロックの動き情報が利用される場合、参照ピクチャリスト上の最上位ピクチャが参照ピクチャとして利用されることができる。
【0064】
スキップモードの場合、マージモードと違って予測サンプルとオリジナルサンプルとの間の差(残差)が送信されない。
【0065】
MVPモードの場合、隣接ブロックの動きベクトルを動きベクトル予測子(motion vector predictor)として利用して現ブロックの動きベクトルが導出されることができる。このとき、隣接ブロックは、空間的隣接ブロックおよび時間的隣接ブロックを含むことができる。
【0066】
一例として、マージモードが適用される場合、復元された空間的隣接ブロックの動きベクトルおよび/または時間的隣接ブロックであるColブロックに対応する動きベクトルを利用して、マージ候補リストが生成されることができる。マージモードでは、マージ候補リストから選択された候補ブロックの動きベクトルが現ブロックの動きベクトルとして使われる。上記予測に関する情報は、上記マージ候補リストに含まれている候補ブロックの中から選択された最適な動きベクトルを有する候補ブロックを指示するマージインデックスを含むことができる。このとき、予測部230は、上記マージインデックスを利用して、現ブロックの動きベクトルを導出することができる。
【0067】
他の例として、MVP(Motion Vector Prediction)モードが適用される場合、復元された空間的隣接ブロックの動きベクトルおよび/または時間的隣接ブロックであるColブロックに対応する動きベクトルを利用して、動きベクトル予測子候補リストが生成されることができる。すなわち、復元された空間的隣接ブロックの動きベクトルおよび/または時間的隣接ブロックであるColブロックに対応する動きベクトルは、動きベクトル候補として使われることができる。上記予測に関する情報は、上記リストに含まれている動きベクトル候補の中から選択された最適な動きベクトルを指示する予測動きベクトルインデックスを含むことができる。このとき、予測部230は、上記動きベクトルインデックスを利用し、動きベクトル候補リストに含まれている動きベクトル候補の中から、現ブロックの予測動きベクトルを選択することができる。エンコード装置の予測部は、現ブロックの動きベクトルと動きベクトル予測子との間の動きベクトル差分(MVD)を求めることができ、これをエンコードしてビットストリーム形態で出力できる。すなわち、MVDは、現ブロックの動きベクトルから上記動きベクトル予測子を引いた値として求められる。このとき、予測部230は、上記予測に関する情報に含まれている動きベクトル差分を取得し、上記動きベクトル差分と上記動きベクトル予測子との加算を介して現ブロックの上記動きベクトルを導出することができる。また、予測部は、参照ピクチャを指示する参照ピクチャインデックスなどを上記予測に関する情報から取得または導出できる。
【0068】
加算部240は、残差サンプルと予測サンプルとを加算して現ブロックまたは現ピクチャを復元することができる。加算部240は、残差サンプルと予測サンプルとをブロック単位に加算して現ピクチャを復元することもできる。スキップモードが適用された場合には、残差が送信されないため、予測サンプルが復元サンプルになることができる。ここで、加算部240は、別途の構成で説明したが、予測部230の一部であってもよい。一方、加算部240は、復元部(reconstruction module)または復元ブロック生成部とも呼ばれる。
【0069】
フィルタ部250は、復元されたピクチャにデブロックフィルタリングサンプル適応オフセット、および/またはALFなどを適用することができる。このとき、サンプル適応オフセットは、サンプル単位に適用されることができ、デブロックフィルタリング以後に適用されることもできる。ALFは、デブロックフィルタリングおよび/またはサンプル適応オフセット以後に適用されることもできる。
【0070】
メモリ260は、復元ピクチャ(デコードされたピクチャ)またはデコーディングに必要な情報を記憶することができる。ここで、復元ピクチャは、上記フィルタ部250によりフィルタリング手順が完了した復元ピクチャである。例えば、メモリ260は、インター予測に使われるピクチャを記憶することができる。このとき、インター予測に使われるピクチャは、参照ピクチャセットまたは参照ピクチャリストにより指定されることもできる。復元されたピクチャは、他のピクチャに対する参照ピクチャとして利用されることができる。また、メモリ260は、復元されたピクチャを出力順序によって出力することもできる。
【0071】
一方、前述したように、ビデオコーディングを実行するにあたって圧縮効率を上げるために予測を実行する。それによって、コーディング対象ブロックである現ブロックに対する予測サンプルを含む予測されたブロックを生成することができる。ここで、上記予測されたブロックは、空間領域(ドメイン)(または、ピクセル領域)における予測サンプルを含む。上記予測されたブロックは、エンコード装置とデコード装置とで同じように導出され、上記エンコード装置は、オリジナルブロックのオリジナルサンプル値自体ではなく、上記オリジナルブロックと上記予測されたブロックとの間の残差に関する情報(残差情報)をデコード装置にシグナリングすることで映像コーディング効率を上げることができる。デコード装置は、上記残差情報に基づいて残差サンプルを含む残差ブロックを導出し、上記残差ブロックと上記予測されたブロックとを加算して復元サンプルを含む復元ブロックを生成することができ、復元ブロックを含む復元ピクチャを生成することができる。
【0072】
上記残差情報は、変換および量子化手順を介して生成されることができる。例えば、エンコード装置は、上記オリジナルブロックと上記予測されたブロックとの間の残差ブロックを導出し、上記残差ブロックに含まれている残差サンプル(残差サンプルアレイ)に変換手順を実行して変換係数を導出し、上記変換係数に量子化手順を実行して量子化された変換係数を導出することで、関連する残差情報を(ビットストリームを介して)デコード装置にシグナリングできる。ここで、上記残差情報は、上記量子化された変換係数の値情報、位置情報、変換技法、変換カーネル、量子化パラメータなどの情報を含むことができる。デコード装置は、上記残差情報に基づいて逆量子化/逆変換手順を実行して残差サンプル(または、残差ブロック)を導出することができる。デコード装置は、予測されたブロックおよび上記残差ブロックに基づいて復元ピクチャを生成することができる。また、エンコード装置は、以後、ピクチャのインター予測のための参照のために量子化された変換係数を逆量子化/逆変換して残差ブロックを導出し、これに基づいて復元ピクチャを生成することができる。
【0073】
図3は、一実施例に係るTMVP候補を説明する図である。
【0074】
一実施例において、TMVPは、エンコード装置100またはデコード装置200のインター予測において、MVP候補またはマージ候補として含まれることができる。より具体的には、デコード装置200は、現ブロックの空間的隣接ブロックおよび/または時間的隣接ブロックに基づいて動き情報候補リスト(例えば、MVP候補リスト)を導出することができ、受信した選択情報(例えば、merge index、MVPフラグまたはMVPインデックス)に基づいて上記動き情報候補リストに含まれている候補の中から一つを選択することができ、上記選択された候補に基づいて上記現ブロックの動き情報を導出することができる。デコード装置200は、上記導出された動き情報に基づいて予測サンプルを生成することができる。ここで、例えば、デコード装置200は、上記選択された候補を上記現ブロックのMVPとして導出することができる。また、上記時間的隣接ブロックは、上記現ブロックに対応する参照ピクチャ内のcollocated blockを示すことができ、TMVP methodは、上記時間的隣接ブロック(collocated block)の動きベクトルを上記動き情報候補リストの時間的候補(temporal candidate)として導出し、上記collocated blockの動きベクトルから導出された時間的候補を上記現ブロックのMVPとして使用する方法を示すことができる。
【0075】
図3を参照すると、TMVPでは、現ブロックの右(上)下端(Right-bottom)位置に該当する参照ピクチャ(reference picture)内のブロックをcollocatedブロックC0と定義し、該当ブロックの動きベクトルをMVPとして使用することができる。このとき、Right-bottom位置(C0)のブロックがイントラ(INTRA)予測にのみ利用されることができ、またはピクチャ境界(picture boundary)を外れるなどの理由で使用不可能な場合(unavailable)、現ブロックのCenter位置(C1)に対応するブロックがcollocatedブロックとして利用されることができる。ここで、center位置とは、センタ右下側位置を示すことができる。すなわち、上記center位置は、現ブロックのセンタに4個のサンプルが位置する場合において、上記4個のサンプルのうちの右下側のサンプル位置を示すことができる。一例において、上記RB位置は、ColBrと呼ばれることができ、上記C1位置は、ColCtrと呼ばれることができる。一方、collocatedブロックを含むピクチャは、collocatedピクチャまたはcollocatedフレームという。
【0076】
一実施例において、ブロックのサイズが増加する場合、TMVP候補を導出するにあたって、C0よりC1が優先的に考慮されることができる。あるいは、C0およびC1以外の他の位置のcollocatedブロックが現ブロックの動き情報をよりよく示す場合、TMVP候補を導出するにあたって、C0およびC1以外の他の位置のcollocatedブロックが利用されることができる。
【0077】
他の一実施例において、ブロックの形態(shape)が正方形でない(non-square)場合も、TMVP候補を導出するにあたってC0よりC1が優先的に考慮され、またはC0、C1もしくは左上側コーナピクセル(top-left corner pixel)位置以外の他の位置のcollocatedブロックに基づいてTMVP候補を導出することができる。正方形でないブロック形態は、例えば、長方形形態などを含むことができる。
【0078】
他の一実施例において、TMVP候補を導出する過程で左上側コーナピクセル(top-left corner pixel)位置でなく、シグナリングされたブロック内の変更(変形)ピクセル位置(modified pixel location)が利用されることができる。本実施例を説明するためのシンタックスの例は、以下の表1の通りである。
【0079】
[表1]
【表1】
【0080】
表1において、adaptive_pixel_loc_flagが活性化される場合、adaptive_pix_idxがデコード装置でパージングされることができる。すなわち、adaptive_pixel_loc_flagの値が1である場合、追加的にadaptive_pix_idxがシグナリングされることができ、adaptive_pixel_loc_flagの値が0である場合、TMVPを導出する過程で現ブロックの左上側コーナピクセル位置が利用されることができる。adaptive_pix_idxは、現ブロック内の特定ピクセル位置を、ラスタスキャンオーダ(raster scan order)を基準として示すためのインデックスを意味することができる。
【0081】
表1による例示は、上記シンタックスがSPS(Sequence Parameter Set)レベルでシグナリングされると開示されているが、例示は、これに限定されるものではない。例えば、TMVP候補を導出する過程で左上側コーナピクセル(top-left corner pixel)位置でなく、シグナリングされたブロック内の変更ピクセル位置(modified pixel location)が利用されることを示すために、PPS(Picture Parameter Set)レベル、CUレベルまたはPUヘッダレベルでシンタックスがシグナリングされることもできる。
【0082】
図4は、一実施例に係る動きベクトルに関する情報を示す図である。
【0083】
インター予測が実行される間に、各コーディングユニットまたは予測ユニットの動きベクトルがデコードされ、各コーディングユニットまたは予測ユニットに対する動きベクトルフィールド(Motion Vector Field、MVF)がアップデートされることができる。MVFに記憶された情報は、動きベクトル、参照インデックス、リスト情報、予測モード情報などを含むことができる。MVFに記憶された情報を表現するためにビット(bit)が必要であり、したがって、多数のMVFの動き情報を動きフィールドストレージ(motion field storage)に記憶する場合、動きフィールドストレージに過負荷(overhead)がかかることができる。
【0084】
一実施例において、-215ないし215-1の範囲の動きベクトルを示すために、例えば、16個、18個、20個のビットなどが利用されることができる。動きベクトルを示すために、必要なビットの個数は、サブペル(sub-pel)の種類によって多様である。より具体的な例において、-215ないし215-1の範囲の動きベクトルがクォーターペル(quarter-pel)単位で記憶される場合、18個のビットが利用されることができる。このとき、動きベクトルの符号を示すために1ビットが利用されることができ、15桁の二進数を示すために15個のビットが利用されることができる。本例示の方法に基づいて動きベクトルを示すことを以下で“動きベクトル非圧縮(ノンコンプレッション)(non-compression)”と命名する。
【0085】
本発明の一実施例では、動きベクトルを記憶するときに必要なビットの個数を減少させるために、すなわち、動きベクトル圧縮(compression)を増加させるために、16個より少ない数のビットを利用する方法を提案する。以下、動きベクトルを記憶するときに必要な情報、例えば、ビットの個数を減少させるものを“動きベクトル圧縮(motion vector compression)”という。
【0086】
図4は、動きベクトル圧縮の一例に該当する。動きベクトル圧縮は、該当ビデオコーディングシステムと関連して既に定義された動きベクトル解像度(レゾリューション)(resolution)とは独立して適用されることができる。動きベクトル解像度(レゾリューション)は、例えば、クォーターペル(quarter-pel)、ハーフペル(half-pel)、1/16ペル(one-sixteenth pel)などが存在できる。
【0087】
図4の動きベクトル構造(structure)は、スケールファクタ(scale factor)、符号(sign)、および動きデータ(motion data)で構成されている。一実施例において、動きベクトルは、以下の数式1に基づいて導出されることができる。
【0088】
[数式1]
MV=(Scale Factor×Motion Data)×Sign
【0089】
数式1において、動きベクトルは、スケールファクタ、符号、および動きデータの積を介して導出されることを確認することができる。
【0090】
-215ないし215-1の範囲の動きベクトルを示すとき、本発明の一実施例によると、スケールファクタを示すためのビット数であるsf、動きデータを示すためのビット数であるk、および符号を示すためのビット数であるb=1は、以下の数式2を満たすことができる。
【0091】
[数式2]
sf+k+b<16
【0092】
一例において、sf=2である場合、スケールファクタは、以下の表2のように導出されることができる。
【0093】
[表2]
【表2】
【0094】
表2を参照すると、スケールファクタに関する情報のバイナリコード00は、スケールファクタ1を示し、バイナリコード01はスケールファクタ2を示し、バイナリコード10はスケールファクタ4を示し、バイナリコード11はスケールファクタ8を示すことを確認することができる。
【0095】
一例において、sf=4である。sf=4である場合、スケールファクタは、例えば、以下の表3のように導出されることができる。
【0096】
[表3]
【表3】
【0097】
表3に示すsfバイナリコード、スケールファクタの数値、および対応関係は、一例に過ぎず、これと類似する方式で多様に表現されることができる。
【0098】
一例において、動きデータを示すためにk=5ビットが利用されることができる。動きデータは、例えば、ペイロード情報(payload information)を含むことができる。このとき、動きベクトルの符号を示すためにb=1ビットが利用されることができ、スケールファクタを示すためにsf=4ビットが利用されることができる。
【0099】
他の一実施例において、動きベクトルは、動きベクトルの指数値(exponent value)および動きベクトルの仮数値(mantissa value)に基づいて表現されることができる。ここで、動きベクトルの仮数値は、前述された動きデータおよび符号に関する情報を含むことができる。また、動きベクトルの指数値は、前述されたスケールファクタと対応することができる。すなわち、動きベクトルは、動きデータ、符号、およびスケールファクタに基づいて表現されることもでき、または動きベクトルの指数値および動きベクトルの仮数値に基づいて表現されることもできる。
【0100】
一例において、動きベクトルを指数値および仮数値に基づいて表現するとき、動きベクトルの指数値は4ビットで表現され、動きベクトルの仮数値は6ビットで表現されることができる。同じ例において、動きベクトルを、動きデータ、符号、およびスケールファクタに基づいて表現しようとする場合、動きデータは5ビットで表現され、符号は1ビットで表現され、スケールファクタは4ビットで表現されることができる。動きデータと符号とが合わせられて動きベクトルの仮数値と対応する情報を示すことができることは、前述の通りである。
【0101】
本発明の一実施例に係る動きベクトル圧縮を適用するために、動きベクトルに対するスケールファクタを示すためのビット数に関する情報、動きベクトルに対する符号を示すためのビット数に関する情報、動きベクトルに対する動きデータを示すためのビット数に関する情報、動きベクトル圧縮を適用するかどうかに関する情報のうちの少なくとも一つが動きベクトル圧縮に関する情報に含まれてシグナリングされることができる。動きベクトル圧縮に関する情報がSPS(Sequence Parameter Set)レベルでシグナリングされる一例は、以下の表3の通りである。
【0102】
[表4]
【表4】
【0103】
表4において、compress_motion_flagは、動きベクトル圧縮を適用するかどうかに関する情報(または、動きベクトル圧縮に関するパラメータのシグナリングが可能か否かに関する情報)を示し、num_bits_for_scaling_factorは、動きベクトルに対するスケールファクタを示すためのビット数に関する情報を示し、num_bits_for_motion_payloadは、動きベクトルに対する動きデータを示すためのビット数に関する情報を示し、sign_bit_infoは、動きベクトルに対する符号を示すためのビット数に関する情報を各々示すことができる。
【0104】
compress_motion_flagの値が1である場合、動きベクトル圧縮に関する情報を示すパラメータがSPSに含まれてシグナリングされることができる。compress_motion_flagの値が0である場合、動きベクトル圧縮に関する情報を示すパラメータがシグナリングされないこともある。
【0105】
一例において、1/16ペルの動きベクトル解像度下で動きベクトルの大きさが27である場合、動きベクトル非圧縮に基づくとき、動きデータ(motion data)が27×16=211になり、したがって、動きベクトルを示すために、動きデータを示すための11個のビットと、符号を示すための1個のビットとの和である12個のビットが必要である。
【0106】
それに対し、上記の例示における動きベクトル圧縮に基づくとき、スケールファクタが8である場合、動きデータは27×16/8=28になる。したがって、動きベクトルを示すために、動きデータを示すための8個のビットと、スケールファクタを示すための2個のビット(ただし、スケールファクタを示すために2個のビットが必要であるということは例に過ぎず、スケールファクタを示すためのビット数は2個に限定されない)と、符号を示すための1個のビットとの和である11個のビットが必要である。本例示を参照すると、動きベクトル圧縮を適用する場合、動きベクトル圧縮を適用しない場合と比較するとき、1個のビットが節約されることを確認することができる。これは、上記数式2の結果とも一致する。すなわち、本発明の一実施例によって動きベクトル圧縮を適用する場合、動きベクトルを動きフィールドストレージに記憶するとき、ビット数を節約して動きフィールドストレージの過負荷(overhead)を防止し、映像コーディングシステムの全般的なコーディング効率を向上させることができる。
【0107】
一方、表4を参照すると、動きベクトル圧縮に関する情報がSPSレベルでシグナリングされると例示されているが、例はこれに限定されるものではない。例えば、動きベクトル圧縮に関する情報は、PPS(Picture Parameter Set)、スライスセグメントヘッダ、タイルグループヘッダ(tile group header)、コーディングユニット(CU)または予測ユニット(PU)レベルでシグナリングされることもできる。また、表3に示されていないが、動きベクトル圧縮を示すために追加的な条件付きフラグ情報(conditional flag information)がシグナリングされることもできる。
【0108】
図5は、一実施例によって動き情報を導出する現ブロック内の位置を示す図である。
【0109】
一実施例において、ブロックに対する動き情報は、4×4ブロックの左上側ピクセル位置以外のピクセル位置に基づいて記憶されることができる。例えば、上記ブロックのMVFを導出するために、i)予測モード、ii)ブロック大きさ、iii)ブロック形態および/またはiv)使われる動きモデルによって異なるピクセル位置が利用されることができる。
【0110】
図5は、4×16長方形ブロックに対する動き情報がA位置に基づいて記憶される例に関する図である。図5のA位置以外にも、多様な位置が上記予測モード、上記ブロック大きさ、上記ブロック形態および/または上記使われる動きモデルによって多様に決定されることができる。
【0111】
他の一例において、上記動きモデルによって異なるピクセル位置が利用されることができる。より具体的な例において、アフィン予測(affine prediction)の場合、4-パラメータ動きモデル(4-parameter motion model)または6-パラメータ動きモデル(6-parameter motion model)を利用するため、4-パラメータ動きモデルか、または6-パラメータ動きモデルかによって、ピクセル位置を適応的に決定できる。本例示は、SPS、PPSまたは他のヘッダ情報に基づいて送信されるシンタックスを利用することによって実行されることができる。
【0112】
図6は、一実施例に係る現ブロック内の関心領域(Region Of Interest、ROI)を示す図である。
【0113】
一実施例において、一つのピクチャまたはフレーム内でMVFを導出するために利用される領域が制限されることができる。一例において、固定されたマップ(fixed map)に基づいてピクチャ内における特定制限領域を示すことができ、またはピクチャごとに可変であるマップに基づいてピクチャ内で特定制限領域を示すことができる。図6のROI(Region Of Interest)は、一つのピクチャまたはフレーム内でMVFを導出するために利用される制限領域を示すことができる。以下の表5は、ROIに関する情報がSPSレベルでシグナリングされる一例を示している。
【0114】
[表5]
【表5】
【0115】
表5において、roi_window_flagの値が1である場合、SPS内にROIクロッピングウィンドウオフセットパラメータが続いて含まれることを示すことができる。roi_window_flagの値が0である場合、ROIクロッピングウィンドウオフセットパラメータがSPS内に存在しないことを示すことができる。roi_window_flagは、ROIに基づいてブロックのMVFを導出するかどうかを示すROIフラグ情報の一例に該当できる。
【0116】
roi_win_left_offset、roi_win_right_offset、roi_win_top_offset、およびroi_win_bottom_offsetは、デコーディング過程で出力されたCVS(Coded Video Sequence)内のピクチャのサンプルを出力するためのピクチャ座標(コーディネート)において具体化された長方形領域の観点で示すことができる。例えば、roi_win_left_offset、roi_win_right_offset、roi_win_top_offset、およびroi_win_bottom_offsetは、ROIの座標情報を示すことができる。すなわち、roi_win_left_offset、roi_win_right_offset、roi_win_top_offset、およびroi_win_bottom_offsetは、各々、ROIの左側オフセット値、ROIの右側オフセット値、ROIの上側オフセット値、およびROIの下側オフセット値を示すことができる。roi_window_flagの値が0である場合、roi_win_left_offset、roi_win_right_offset、roi_win_top_offset、およびroi_win_bottom_offsetの値は、全て0と推定されることができる。
【0117】
表5は、SPSヘッダのシンタックスの例を示すが、上記シンタックスは、デコーディング過程において、PPS、スライスヘッダ、タイルグループヘッダまたは他のヘッダを介してもシグナリングされることができる。
【0118】
図7は、一実施例に係るエンコード装置の動作を示す流れ図であり、図8は、一実施例に係るエンコード装置の構成を示すブロック図である。
【0119】
図7および図8によるエンコード装置は、後述する図9および図10によるデコード装置と対応する動作を実行することができる。したがって、図9および図10で後述される内容は、図7および図8によるエンコード装置にも同様に適用されることができる。
【0120】
図7に示す各ステップは、図1に示すエンコード装置100により実行されることができる。より具体的には、S700ないしS720は、図1に示す予測部110により実行されることができ、S730は、図1に示すメモリ160または予測部110により実行されることができ、S740は、図1に示す残差処理部120により実行されることができ、S750は、図1に示すエントロピ符号化部130により実行されることができる。併せて、S700ないしS750による動作は、図3ないし図6で前述された内容のうちの一部に基づいて行われる。したがって、図1図3ないし図6で前述された内容と重複する具体的な内容は、説明を省略し、または簡単にする。
【0121】
図8に示すように、一実施例に係るエンコード装置は、予測部110、残差(レジデュアル)処理部120、およびエントロピ符号化(エンコーディング)部130を含むことができる。しかしながら、場合によっては、図8に示す構成要素の全てがエンコード装置の必須構成要素でなく、エンコード装置は、図8に示す構成要素より多いまたは少ない構成要素により具現されることができる。例えば、エンコード装置は、メモリ160をさらに含むこともできる。
【0122】
一実施例に係るエンコード装置において、予測部110、残差処理部120、およびエントロピ符号化部130は、各々、別途のチップ(chip)で具現され、または少なくとも二つ以上の構成要素が一つのチップを介して具現されることもできる。
【0123】
一実施例に係るエンコード装置は、現ブロックに対する動きベクトルを導出することができる(S700)。より具体的には、エンコード装置の予測部110は、現ブロックに対する動きベクトルを導出することができる。
【0124】
一実施例に係るエンコード装置は、動きベクトル圧縮に関する情報を生成することができる(S710)。より具体的には、エンコード装置の予測部110は、動きベクトル圧縮に関する情報を生成することができる。
【0125】
一実施例に係るエンコード装置は、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出することができる(S720)。より具体的には、エンコード装置の予測部110は、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出することができる。
【0126】
一実施例に係るエンコード装置は、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶することができる(S730)。より具体的には、エンコード装置のメモリ160(図8には示されていない)または予測部110は、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶することができる。
【0127】
一実施例に係るエンコード装置は、現ブロックに対する予測されたブロックに基づいて現ブロックに対する残差サンプルを導出することができる(S740)。より具体的には、エンコード装置の残差処理部120は、現ブロックに対する予測されたブロックに基づいて現ブロックに対する残差サンプルを導出することができる。
【0128】
一実施例に係るエンコード装置は、残差サンプルに関する情報および動きベクトル圧縮に関する情報を含む映像情報をエンコードすることができる(S750)。より具体的には、エンコード装置のエントロピ符号化部130は、残差サンプルに関する情報および動きベクトル圧縮に関する情報を含む映像情報をエンコードすることができる。
【0129】
図7および図8に示すエンコード装置およびエンコード装置の動作方法によると、エンコード装置は、現ブロックに対する動きベクトルを導出し(S700)、動きベクトル圧縮に関する情報を生成し(S710)、上記現ブロックに対する動きベクトルに基づいて上記現ブロックに対する予測されたブロックを導出し(S720)、上記動きベクトル圧縮に関する情報に基づいて上記現ブロックに対する上記動きベクトルに関する情報を記憶し(S730)、上記現ブロックに対する上記予測されたブロックに基づいて上記現ブロックに対する残差サンプルを導出し(S740)、上記残差サンプルに関する情報および上記動きベクトル圧縮に関する情報を含む映像情報をエンコードする(S750)ことができる。すなわち、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって映像コーディング効率を上げることができる。
【0130】
図9は、一実施例に係るデコード装置の動作を示す流れ図であり、図10は、一実施例に係るデコード装置の構成を示すブロック図である。
【0131】
図9に示す各ステップは、図2に示すデコード装置200により実行されることができる。より具体的には、S900ないしS920は、図2に示す予測部230により実行されることができ、S930は、図2に示すメモリ260により実行されることができ、S940は、図2に示す加算部240により実行されることができる。併せて、S900ないしS940による動作は、図3ないし図6で前述された内容のうちの一部に基づいて行われる。したがって、図2ないし図6で前述された内容と重複する具体的な内容は、説明を省略し、または簡単にする。
【0132】
図10に示すように、一実施例に係るデコード装置は、予測部230、加算部240、およびメモリ260を含むことができる。しかしながら、場合によっては、図10に示す構成要素の全てがデコード装置の必須構成要素でなく、デコード装置は、図10に示す構成要素より多いまたは少ない構成要素により具現されることができる。
【0133】
一実施例に係るデコード装置において、予測部230、加算部240、およびメモリ260は、各々、別途のチップ(chip)で具現され、または少なくとも二つ以上の構成要素が一つのチップを介して具現されることもできる。
【0134】
一実施例に係るデコード装置は、動きベクトル圧縮に関する情報を受信することができる(S900)。より具体的には、デコード装置の予測部230は、動きベクトル圧縮に関する情報を受信またはデコードすることができる。
【0135】
一実施例において、動きベクトル圧縮に関する情報は、動きベクトルに対するスケールファクタを示すためのビット数に関する情報、上記動きベクトルに対する符号を示すためのビット数に関する情報、および上記動きベクトルに対する動きデータを示すためのビット数に関する情報のうちの少なくとも一つを含むことができる。一例において、動きベクトル圧縮に関する情報は、動きベクトルに対するスケールファクタを示すためのビット数に関する情報、上記動きベクトルに対する符号を示すためのビット数に関する情報、および上記動きベクトルに対する動きデータを示すためのビット数に関する情報を全て含むことができる。
【0136】
他の一実施例において、動きベクトル圧縮に関する情報は、上記動きベクトルに対する指数値(exponent value)を示すためのビット数に関する情報および上記動きベクトルに対する仮数値(mantissa value)を示すためのビット数に関する情報のうちの少なくとも一つを含むことができる。一例において、動きベクトル圧縮に関する情報は、上記動きベクトルに対する指数値(exponent value)を示すためのビット数に関する情報および上記動きベクトルに対する仮数値(mantissa value)を示すためのビット数に関する情報を全て含むことができる。
【0137】
一例において、上記動きベクトルに対する指数値を示すための上記ビット数は、4である。このとき、上記動きベクトルに対する仮数値を示すためのビット数は、6である。
【0138】
一実施例において、上記スケールファクタを示すための上記ビット数は2であり、上記スケールファクタに関する情報のバイナリコード00はスケールファクタ1を示し、バイナリコード01はスケールファクタ2を示し、バイナリコード10はスケールファクタ4を示し、バイナリコード11はスケールファクタ8を示すことができる。
【0139】
他の一実施例において、上記動きベクトル圧縮に関する情報は、上記動きベクトルを圧縮方式(compression method)に基づいて示すかどうかを示すフラグ情報を含み、上記フラグ情報が1を指示する場合、上記動きベクトル圧縮に関する情報は、上記動きベクトルに対する上記スケールファクタを示すためのビット数に関する情報、上記動きベクトルに対する上記符号を示すためのビット数に関する情報、および上記動きベクトルに対する上記動きデータを示すためのビット数に関する情報のうちの少なくとも一つを含むことができる。
【0140】
一実施例において、上記動きベクトル圧縮に関する情報は、SPSレベル、PPS(Picture Parameter Set)レベル、VPS(Video Parameter Set)レベル、スライスヘッダレベル、およびコーディングユニット(CU)レベルのうちの少なくとも一つのレベルでシグナリングされることができる。
【0141】
一実施例において、上記動きベクトル圧縮に関する情報は、上記現ピクチャ内で動きベクトルフィールド(Motion Vector Field、MVF)を導出するための関心領域(Region On Interest、ROI)に関する情報を含むことができる。上記ROIに関する情報は、上記ROIに基づいて上記MVFを導出するかどうかを示すROIフラグ情報を含み、上記ROIフラグ情報が1を指示する場合、上記ROIに関する情報は、上記ROIの座標情報をさらに含むことができる。一例において、上記ROIの座標情報は、上記ROIの左側オフセット値、上記ROIの右側オフセット値、上記ROIの上側オフセット値、および上記ROIの下側オフセット値を含むことができる。
【0142】
一実施例において、上記ROIに関する情報は、SPSレベルでシグナリングされることができる。ただし、例は、SPSに限定されるものではなく、例えば、SPSレベル、PPSレベル、VPSレベル、スライスヘッダレベル、およびコーディングユニットレベルのうちの少なくとも一つのレベルでシグナリングされることができる。
【0143】
一実施例に係るデコード装置は、現ピクチャに含まれている現ブロックに対する動きベクトルを導出することができる(S910)。より具体的には、デコード装置の予測部230は、現ピクチャに含まれている現ブロックに対する動きベクトルを導出することができる。
【0144】
一実施例に係るデコード装置は、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロック(predicted block)を導出することができる(S920)。より具体的には、デコード装置の予測部230は、現ブロックに対する動きベクトルに基づいて現ブロックに対する予測されたブロックを導出することができる。
【0145】
一実施例に係るデコード装置は、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶することができる(S930)。より具体的には、デコード装置のメモリ260は、動きベクトル圧縮に関する情報に基づいて現ブロックに対する動きベクトルに関する情報を記憶することができる。
【0146】
一実施例において、上記動きベクトルに関する情報は、上記動きベクトルに対するスケーリングされた動きベクトルに関する情報を含むことができる。また、上記動きベクトルに関する情報は、上記動きベクトルに対する上記スケールファクタに関する情報、上記動きベクトルに対する上記符号に関する情報、および上記動きベクトルに対する上記動きデータに関する情報を含むことができる。一例において、上記動きベクトルに対する上記スケールファクタ、上記動きベクトルに対する上記符号、および上記動きベクトルに対する上記動きデータの値を掛ける場合、上記動きベクトルに対する上記スケーリングされた動きベクトルが導出されることができる。
【0147】
他の一実施例において、上記動きベクトルに関する情報は、上記動きベクトルに対する上記スケールファクタに関する情報、上記動きベクトルに対する上記符号に関する情報、および上記動きベクトルに対する上記動きデータに関する情報のうちの少なくとも一つを含むことができる。デコード装置は、上記現ブロックの上記動きベクトルおよび上記スケールファクタに基づいて上記動きデータ(scaled motion data)を導出し、上記動きデータに関する情報を含む上記動きベクトルに関する情報を記憶することができる。
【0148】
一実施例に係るデコード装置は、現ブロックに対する予測されたブロックに基づいて現ピクチャに対する復元ピクチャを生成することができる(S940)。より具体的には、デコード装置の加算部240は、現ブロックに対する予測されたブロックに基づいて現ピクチャに対する復元ピクチャを生成することができる。
【0149】
一実施例において、デコード装置は、単一リストからの情報のみを記憶することができる。例えば、双方向予測(bi-prediction)で二つのリストが同じピクチャを参照する場合、デコード装置は、上記二つのリストのうちの一つのリストからの情報のみを記憶することができる。本実施例は、SPS、PPSまたは他のヘッダにおける条件付きパージングに基づいて実行されることができる。条件付きパージングは、例えば、シンタックス要素に基づいて単一リストがMVFのアップデートのために利用されることができるかどうかを指示することを意味することができる。
【0150】
一実施例において、MVFを記憶するための決定は、適応的に実行されることができ、上記決定は、CTU、スライスまたはタイルグループに基づいて実行されることができる。上記MVFを記憶するための決定を適応的に実行することは“適応的MVF記憶(adaptive MVF storage)”といい、上記適応的MVF記憶のためのシグナリングの例は、以下の表6の通りである。
【0151】
[表6]
【表6】
【0152】
表6において、store_mvf_dataの値が0である場合、適応的MVF記憶が利用されないこともある。store_mvf_dataの値が1である場合、適応的MVF記憶が利用されることができる。store_mvf_dataの値が1である場合、mvf_storage_idxがシグナリングされることができる。
【0153】
mvf_storage_idxの値が0である場合、適応的MVF記憶がフレームレベルで考慮されることができ、mvf_storage_idxの値が1である場合、適応的MVF記憶がCTUレベルで考慮されることができ、mvf_storage_idxの値が1である場合、適応的MVF記憶がスライスレベルまたはタイルグループレベルで考慮されることができる。上記表5に基づいて、適応的MVF記憶を実行するかどうかを、全体フレームレベル、全体CTUレベル、全体スライスレベルまたは全体タイルグループレベルで考慮することができる。
【0154】
図9および図10のデコード装置およびデコード装置の動作方法によると、デコード装置は、動きベクトル圧縮(motion vector compression)に関する情報を受信し(S900)、現ピクチャに含まれている現ブロックに対する動きベクトルを導出し(S910)、上記現ブロックに対する上記動きベクトルに基づいて上記現ブロックに対する予測されたブロックを導出し(S920)、上記動きベクトル圧縮に関する情報に基づいて上記現ブロックに対する上記動きベクトルに関する情報を記憶し(S930)、上記現ブロックに対する予測されたブロックに基づいて上記現ピクチャに対する復元ピクチャを生成(S940)することができる。すなわち、動きベクトルに基づくインター予測過程で動きベクトル圧縮に基づいて動きベクトルに関する情報を記憶することによって映像コーディング効率を上げることができる。
【0155】
前述した本発明による方法は、ソフトウェア形態で具現されることができ、本発明によるエンコード装置および/またはデコード装置は、例えば、TV、コンピュータ、スマートフォン、セットトップボックス、ディスプレイ装置などの映像処理を実行する装置に含まれることができる。
【0156】
前述した各々のパート、モジュールまたはユニットは、メモリ(または、記憶ユニット)に記憶された連続する実行過程を実行するプロセッサまたはハードウェア部品(パート)である。前述した実施例に記述された各ステップは、プロセッサまたはハードウェアパートにより実行されることができる。前述した実施例に記述された各モジュール/ブロック/ユニットは、ハードウェア/プロセッサとして動作できる。また、本発明が提示する方法は、コードとして実行されることができる。このコードは、プロセッサが読み取ることができる記憶媒体に書き込まれることができ、したがって、装置(apparatus)が提供するプロセッサにより読み取られることができる。
【0157】
前述した実施例において、方法は、一連のステップまたはブロックで流れ図に基づいて説明されているが、本発明は、ステップの順序に限定されるものではなく、あるステップは、前述と異なるステップと、異なる順序でまたは同時に発生し得る。また、当業者であれば、流れ図に示すステップが排他的でなく、他のステップが含まれ、または流れ図の一つもしくは複数のステップが本発明の範囲に影響を及ぼさずに削除可能であることを理解することができる。
【0158】
本発明で実施例がソフトウェアで具現されるとき、前述した方法は、前述した機能を行うモジュール(過程、機能など)で具現されることができる。モジュールは、メモリに記憶され、プロセッサにより実行されることができる。メモリは、プロセッサの内部または外部にあり、よく知られた多様な手段でプロセッサと連結されることができる。プロセッサは、ASIC(Application-Specific Integrated Circuit)、他のチップセット、論理回路および/またはデータ処理装置を含むことができる。メモリは、ROM(Read-Only Memory)、RAM(Random Access Memory)、フラッシュメモリ、メモリカード、記憶媒体および/または他の記憶装置を含むことができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10