特許第5777080号(P5777080)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ ホアウェイ・テクノロジーズ・カンパニー・リミテッドの特許一覧
特許5777080合成ビデオのためのロスレス・コード化および関連するシグナリング方法
<>
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000002
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000003
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000004
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000005
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000006
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000007
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000008
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000009
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000010
  • 特許5777080-合成ビデオのためのロスレス・コード化および関連するシグナリング方法 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5777080
(24)【登録日】2015年7月17日
(45)【発行日】2015年9月9日
(54)【発明の名称】合成ビデオのためのロスレス・コード化および関連するシグナリング方法
(51)【国際特許分類】
   H04N 19/103 20140101AFI20150820BHJP
   H04N 19/13 20140101ALI20150820BHJP
   H04N 19/147 20140101ALI20150820BHJP
   H04N 19/176 20140101ALI20150820BHJP
   H04N 19/136 20140101ALI20150820BHJP
   H04N 19/70 20140101ALI20150820BHJP
【FI】
   H04N19/103
   H04N19/13
   H04N19/147
   H04N19/176
   H04N19/136
   H04N19/70
【請求項の数】38
【全頁数】24
(21)【出願番号】特願2014-519200(P2014-519200)
(86)(22)【出願日】2012年6月29日
(65)【公表番号】特表2014-520493(P2014-520493A)
(43)【公表日】2014年8月21日
(86)【国際出願番号】US2012045133
(87)【国際公開番号】WO2013003823
(87)【国際公開日】20130103
【審査請求日】2013年12月25日
(31)【優先権主張番号】61/503,534
(32)【優先日】2011年6月30日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】100146835
【弁理士】
【氏名又は名称】佐伯 義文
(74)【代理人】
【識別番号】100140534
【弁理士】
【氏名又は名称】木内 敬二
(72)【発明者】
【氏名】ウェン・ガオ
(72)【発明者】
【氏名】グレゴリー・クック
(72)【発明者】
【氏名】ミンユアン・ヤン
(72)【発明者】
【氏名】ハオピン・ユ
【審査官】 岩井 健二
(56)【参考文献】
【文献】 特表2009−533900(JP,A)
【文献】 特表2009−522968(JP,A)
【文献】 特表2009−505496(JP,A)
【文献】 特開平08−256341(JP,A)
【文献】 国際公開第2012/120908(WO,A1)
【文献】 国際公開第2010/002122(WO,A2)
【文献】 米国特許第7738714(US,B1)
【文献】 Shih-Tse Wei et al.,Adaptive Truncation Algorithm for Hadamard-Transformed H.264/AVC Lossless Video Coding,IEEE Transactions on Circuits and Systems for Video Technology,IEEE,2011年 5月 6日,Vol.21, No.5,pp.538 - 549
【文献】 Truong Cong Thang et al.,CE4: On signaling for ROI boundary handing,JVT-R059,Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6),2006年 1月,JVT-R059,pp.1 - 10
【文献】 Cuiling Lan et al.,Compress Compound Images in H.264/MPGE-4 AVC by Exploiting Spatial Correlation,Image Processing, IEEE Transactions on ,IEEE,2010年 4月,Vol.19, No.4,pp.946 - 957
【文献】 Wen Gao et al.,Near Lossless Coding for Screen Content,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,6th Meeting: Torino, Italy,2011年 7月,JCTVC-F564v3,pp.1 - 7
【文献】 Yung-Lyul Lee et al.,Improved lossless intra coding for H.264/MPEG-4 AVC,IEEE Transactions on Image Processing,IEEE,2006年 9月,Vol.15, No.9,pp.2610 - 2615
【文献】 Seishi Takamura and Yoshiyuki Yashima,H.264-based Lossless Video Coding Using Adaptive Transforms,Proceedings of IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP '05),IEEE,2005年 3月,Vol.2,pp.301 - 304
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 − 19/98
(57)【特許請求の範囲】
【請求項1】
量子符号化によらないビデオ符号化で使用する装置であって、
ビデオ・フレームを受信し、
前記ビデオ・フレームにおける少なくとも1つの領域を選択し、
前記少なくとも1つの領域内の現在のブロックに対して、
予測ブロックを生成し、
前記予測ブロックにより前記現在のブロックを取り去って残余ブロックを生成し、
前記残余ブロックの符号化における変換ステップを選択的にバイパスし、
少なくとも1つの変換バイパス・フラグを設定し、
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施して、少なくとも1つの符号化された変換バイパス・フラグを生成する
ように構成されたプロセッサ
を備え
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施するステップは、前記少なくとも1つの変換バイパス・フラグの各々に対して3つのコンテキスト・モデルを使用するステップであって、前記3つのコンテキスト・モデルは、前記現在のブロックの上側ブロックに属する第1の変換バイパス・フラグと前記現在のブロックの左側ブロックに属する第2の変換バイパス・フラグの合計に等しいインデックスを介して選択可能であるステップを含む、
装置。
【請求項2】
前記残余ブロックは複数の残余値を含み、
前記プロセッサはさらに、
前記変換ステップをバイパスする場合には、
前記複数の残余値の少なくとも一部に対してエントロピ符号化を実施して符号化残余値を生成し、
前記変換ステップをバイパスしない場合には、
複数の変換係数を含む変換行列へと前記残余ブロックを変換し、
前記複数の変換係数に対してエントロピ符号化を実施して、複数の符号化された変換係数を生成する
ように構成される、請求項1に記載の装置。
【請求項3】
前記プロセッサは、
ビット・ストリーム内の符号化された少なくとも1つの領域を送信し、
前記少なくとも1つの領域を特定する領域指示情報を前記ビット・ストリームのシンタックスに追加する
ようにさらに構成される、請求項2に記載の装置。
【請求項4】
前記プロセッサは、
前記少なくとも1つの符号化された変換バイパス・フラグを前記ビット・ストリームに追加する
ようにさらに構成される、請求項3に記載の装置。
【請求項5】
前記プロセッサは、
前記変換ステップをバイパスする場合には、前記変換バイパス・フラグを「1」に設定し、
前記変換ステップをバイパスしない場合には、前記変換バイパス・フラグを「0」に設定する
ようにさらに構成される、請求項4に記載の装置。
【請求項6】
前記現在のブロックは予測ユニット(PU)である、請求項に記載の装置。
【請求項7】
前記現在のブロックは変換ユニット(TU)である、請求項4に記載の装置。
【請求項8】
前記プロセッサは、
前記変換ステップをバイパスする場合には前記変換バイパス・フラグを「0」に設定し
前記変換ステップをバイパスしない場合には前記変換バイパス・フラグを「1」に設定する
ようにさらに構成される、請求項4に記載の装置。
【請求項9】
前記少なくとも1つの変換バイパス・フラグは、前記現在のブロックのルマ成分とクロマ成分に適用される単一の変換バイパス・フラグである、請求項4に記載の装置。
【請求項10】
前記シンタックスは、シーケンス・パラメータ・セット(SPS)または画像パラメータ・セット(PPS)を含み、前記領域指示情報は、
幾つかの1つまたは複数のロスレス符号化領域と、
前記1つまたは複数のロスレス符号化領域ごとの、前記ビデオ・フレーム内の前記1つまたは複数のロスレス符号化領域の位置を示す複数の座標と、
を含む、請求項3に記載の装置。
【請求項11】
前記シンタックスはSPSまたはPPSを含み、前記領域指示情報は、
幾つかの1つまたは複数のロッシー符号化領域と、
前記1つまたは複数のロッシー符号化領域ごとの、前記ビデオ・フレーム内の前記1つまたは複数のロッシー符号化領域の位置を示す複数の座標と、
を含む、請求項3に記載の装置。
【請求項12】
前記ビデオ・フレームは合成ビデオを含む、請求項2に記載の装置。
【請求項13】
前記変換行列は整数離散余弦変換(DCT)を用いて生成される、請求項2に記載の装置。
【請求項14】
量子符号化によらないビデオ符号化で使用する方法であって、
ビデオ・フレームを受信するステップと、
前記ビデオ・フレームにおける少なくとも1つの領域を選択するステップと、
前記少なくとも1つの領域内の現在のブロックに対して、
予測ブロックを生成し、
前記予測ブロックにより前記現在のブロックを取り去って残余ブロックを生成し、
前記残余ブロックの符号化における変換ステップを選択的にバイパスし、
少なくとも1つの変換バイパス・フラグを設定し、
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施して、少なくとも1つの符号化された変換バイパス・フラグを生成する
ステップと、
を含み
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施するステップは、前記少なくとも1つの変換バイパス・フラグの各々に対して3つのコンテキスト・モデルを使用するステップであって、前記3つのコンテキスト・モデルは、前記現在のブロックの上側ブロックに属する第1の変換バイパス・フラグと前記現在のブロックの左側ブロックに属する第2の変換バイパス・フラグの合計に等しいインデックスを介して選択可能であるステップを含む、
方法。
【請求項15】
前記残余ブロックは複数の残余値を含み、
前記方法はさらに、
前記変換ステップをバイパスする場合には、
前記複数の残余値の少なくとも一部に対してエントロピ符号化を実施して符号化残余値を生成するステップと、
前記変換ステップをバイパスしない場合には、
複数の変換係数を含む変換行列へと前記残余ブロックを変換し、
複数の変換係数を生成するための前記変換係数に対してエントロピ符号化を実施して、複数の符号化された変換係数を生成するステップと、
を含む、請求項14に記載の方法。
【請求項16】
ビット・ストリーム内の符号化された少なくとも1つの領域を送信するステップと、
前記少なくとも1つの領域を特定する領域指示情報を前記ビット・ストリームのシンタックスに追加するステップと、
さらに含む、請求項1に記載の方法。
【請求項17】
前記少なくとも1つの符号化された変換バイパス・フラグを前記ビット・ストリームに追加するステップと、
さらに含む、請求項1に記載の方法。
【請求項18】
前記変換ステップをバイパスする場合には、前記変換バイパス・フラグを「1」に設定するステップと、
前記変換ステップをバイパスしない場合には、前記変換バイパス・フラグを「0」に設定するステップと、
さらに含む、請求項1に記載の方法。
【請求項19】
前記現在のブロックは予測ユニット(PU)である、請求項14に記載の方法。
【請求項20】
前記現在のブロックは変換ユニット(TU)である、請求項17に記載の方法。
【請求項21】
前記変換ステップをバイパスする場合には、前記変換バイパス・フラグを「0」に設定するステップと、
前記変換ステップをバイパスしない場合には、前記変換バイパス・フラグを「1」に設定するステップと、
さらに含む、請求項17に記載の方法。
【請求項22】
前記少なくとも1つの変換バイパス・フラグは、前記現在のブロックのルマ成分とクロマ成分に適用される単一の変換バイパス・フラグである、請求項17に記載の方法。
【請求項23】
前記シンタックスは、シーケンス・パラメータ・セット(SPS)または画像パラメータ・セット(PPS)を含み、前記領域指示情報は、
幾つかの1つまたは複数のロスレス符号化領域と、
前記1つまたは複数のロスレス符号化領域ごとの、前記ビデオ・フレーム内の前記1つまたは複数のロスレス符号化領域の位置を示す複数の座標と、
を含む、請求項16に記載の方法。
【請求項24】
前記シンタックスはSPSまたはPPSを含み、前記領域指示情報は、
幾つかの1つまたは複数のロッシー符号化領域と、
前記1つまたは複数のロッシー符号化領域ごとの、前記ビデオ・フレーム内の前記1つまたは複数のロッシー符号化領域の位置を示す複数の座標と、
を含む、請求項16に記載の方法。
【請求項25】
前記ビデオ・フレームは合成ビデオを含む、請求項15に記載の方法。
【請求項26】
前記変換行列は整数離散余弦変換(DCT)を用いて生成される、請求項15に記載の方法。
【請求項27】
ビデオ復号化で使用する装置であって、
一連の符号化されたビデオ・フレームを含み、シンタックス内に領域指示情報をさらに含むビット・ストリームを受信し、
前記一連の符号化されたビデオ・フレームを復号化して、一連の復号化されたビデオ・フレームを生成する
ように構成されたプロセッサを備え、
復号化されたビデオ・フレームを生成するステップは、符号化されたビデオ・フレーム内の1つまたは複数のロスレス符号化領域を特定するステップと、前記1つまたは複数のロスレス符号化領域の復号化において逆量子化ステップをバイパスするステップを含み、
前記ビット・ストリームはさらに、ロスレス符号化領域におけるブロックごとに少なくとも1つの変換バイパス・フラグを含み、
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化が実施され、前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施するステップは、前記少なくとも1つの変換バイパス・フラグの各々に対して3つのコンテキスト・モデルを使用するステップであって、前記3つのコンテキスト・モデルは、現在のブロックの上側ブロックに属する第1の変換バイパス・フラグと前記現在のブロックの左側ブロックに属する第2の変換バイパス・フラグの合計に等しいインデックスを介して選択可能であるステップを含む、
装置。
【請求項28】
前記シンタックスは、シーケンス・パラメータ・セット(SPS)または画像パラメータ・セット(PPS)を含み、前記SPSまたは前記PPSは前記領域指示情報を含む、請求項27に記載の装置。
【請求項29】
前記プロセッサはさらに、ロスレス符号化領域内のブロックの復号化において逆変換ステップをバイパスするかどうかを前記少なくとも1つの変換バイパス・フラグに基づいて判定するように構成される、請求項28に記載の装置。
【請求項30】
前記少なくとも1つの変換バイパス・フラグが「1」の値を有する場合には前記逆変換ステップをバイパスし、前記少なくとも1つの変換バイパス・フラグが「0」の値を有する場合には前記逆変換ステップを含める、請求項29に記載の装置。
【請求項31】
前記ブロックは予測ユニット(PU)である、請求項29に記載の装置。
【請求項32】
前記ブロックは変換ユニット(TU)である、請求項29に記載の装置。
【請求項33】
前記少なくとも1つの変換バイパス・フラグが「0」の値を有する場合には前記逆変換ステップをバイパスし、前記少なくとも1つの変換バイパス・フラグが「1」の値を有する場合には前記逆変換ステップを含める、請求項29に記載の装置。
【請求項34】
ビデオ符号化で使用する装置であって、
現在のブロックに対する、複数の残余値を含む残余ブロックを生成し、
RDO(rate−distortion optimization)プロセスに基づいて、前記残余ブロックの符号化における変換ステップをバイパスするかどうかを判定し、
前記現在のブロックに対して少なくとも1つの変換バイパス・フラグを設定し、
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施して少なくとも1つの符号化された変換バイパス・フラグを生成し、
前記変換ステップをバイパスする場合には、前記複数の残余値の少なくとも一部に対してエントロピ符号化を実施して符号化残余値を生成し、
前記変換ステップをバイパスしない場合には、
前記残余ブロックを、複数の変換係数を含む変換行列に変換し、
前記複数の変換係数に対してエントロピ符号化を実施して複数の符号化された変換係数を生成する
ように構成されたプロセッサを備え、
前記少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施するステップは、前記少なくとも1つの変換バイパス・フラグの各々に対して3つのコンテキスト・モデルを使用するステップであって、前記3つのコンテキスト・モデルは、前記現在のブロックの上側ブロックに属する第1の変換バイパス・フラグと前記現在のブロックの左側ブロックに属する第2の変換バイパス・フラグの合計に等しいインデックスを介して選択可能であるステップを含む、
装置。
【請求項35】
前記プロセッサは、
前記変換ステップをバイパスする場合には前記変換バイパス・フラグを「1」に設定し、
前記変換ステップをバイパスしない場合には前記変換バイパス・フラグを「0」に設定する
ようにさらに構成され
請求項34に記載の装置。
【請求項36】
前記プロセッサは、
前記上側ブロックがどの変換バイパス・フラグも有さない場合には、「0」を前記第1の変換バイパス・フラグに割り当て、
前記左側ブロックがどの変換バイパス・フラグも有さない場合には、「0」を前記第2の変換バイパス・フラグに割り当てる、
ようにさらに構成される、請求項34に記載の装置。
【請求項37】
前記少なくとも1つの変換バイパス・フラグは、前記現在のブロックのルマ成分とクロマ成分に適用される単一の変換バイパス・フラグである、請求項35に記載の装置。
【請求項38】
前記少なくとも1つの変換バイパス・フラグは、前記現在のブロックのルマ成分に適用されるルマ変換バイパス・フラグと、前記現在のブロックのクロマ成分に適用されるクロマ変換バイパス・フラグとを含む、請求項35に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の記載
本出願は、発明の名称を「合成ビデオのためのロスレス・コード化ツール」とした、発明者がWen Gaoらである2011年6月30日出願の米国仮特許出願第61/503、534号に対する優先権を主張し、その全体をあたかも再度記載したかのように本明細書に取り込む。
【背景技術】
【0002】
比較的短い映画を表示するのに必要なビデオ・データの量が大量となることがあり、その結果、帯域幅の容量が限られた通信ネットワークでデータをストリーミングするかまたは通信するのが困難になりうる。したがって、ビデオ・データは、近年の電気通信ネットワークで通信される前に圧縮されるのが一般的である。ビデオ圧縮装置は、しばしば、送信前にソフトウェアおよび/またはハードウェアをソース側で使用してビデオ・データをコード化し、それにより、デジタル・ビデオ・イメージを表現するのに必要なデータの量を減らす。次に、圧縮されたデータはビデオ・データを復号化するビデオ解凍装置によって、宛先で受信される。ネットワークリソースが限られ、高いビデオ品質がますます要求され続けると、ビット・レートを増大させずに画像品質を高める改良された圧縮解凍技術が望まれる。
【発明の概要】
【課題を解決するための手段】
【0003】
1実施形態では、本開示は、ビデオ・フレームを受信し、当該ビデオ・フレーム内の少なくとも1つの領域を選択し、当該少なくとも1つの領域の符号化において量子化ステップをバイパスし、当該少なくとも1つの領域内の現在のブロックに対して、当該予測ブロックによって現在のブロックを取り去って残余ブロックを生成し、当該残余ブロックの符号化において変換ステップを選択的にバイパスするように構成されたプロセッサを備えた、ビデオ符号化で使用される装置を備える。
【0004】
別の実施形態では、本開示は、ビデオ・フレームを受信するステップと、当該ビデオ・フレーム内の少なくとも1つの領域を選択するステップと、当該少なくとも1つの領域の符号化において量子化ステップをバイパスするステップと、当該少なくとも1つの領域内の現在のブロックに対して、予測ブロックを生成するステップと、当該予測ブロックによって現在のブロックを取り去って残余ブロックを生成するステップと、当該残余ブロックの符号化において変換ステップを選択的にバイパスするステップとを含む、ビデオ符号化で使用される方法を含む。
【0005】
さらに別の実施形態では、本開示は、一連の符号化されたビデオ・フレームを含み、領域指示情報をシンタックスに含むビット・ストリームを受信し、当該一連の符号化されたビデオ・フレームでエントロピ復号化を実施して一連の復号化されたビデオ・フレームを生成するように構成されたプロセッサを備えたビデオ復号において使用される装置であって、復号化されたビデオ・フレームの生成には、符号化されたビデオ・フレームにおいて1つまたは複数のロスレス符号化領域を特定し、当該1つまたは複数のロスレス符号化領域のエントロピ復号化における逆量子化ステップをバイパスすることが含まれる装置を含む。
【0006】
さらに別の実施形態では、本開示は、現在のブロックに対する複数の残余値を含む残余ブロックを生成し、当該残余ブロックの符号化において変換ステップをバイパスするかどうかをRDO(rate−distortion optimization)プロセスに基づいて判定し、当該現在のブロックに対して少なくとも1つの変換バイパス・フラグを設定し、当該少なくとも1つの変換バイパス・フラグに対してエントロピ符号化を実施して少なくとも1つの符号化された変換バイパス・フラグを生成し、当該変換ステップをバイパスする場合には当該複数の残余値の少なくとも一部に対してエントロピ符号化を実施して、符号化された残余値を生成し、当該変換ステップをバイパスしない場合には、当該残余ブロックを複数の変換係数を含む変換行列に変換し、当該複数の変換係数に対してエントロピ符号化を実施して複数の符号化された変換係数を生成するように構成されたプロセッサを備えた、ビデオ符号化において使用される装置を含む。
【0007】
これらおよび他の特徴は、添付の図面と特許請求の範囲と関連して下記の詳細な説明からより明確に理解される。
【0008】
本開示をより十分に理解するために、添付図面と詳細な説明と関連して以下の簡単な説明を参照する。添付図面では、同様な参照番号は同様な部分を表す。
【図面の簡単な説明】
【0009】
図1】変換バイパス符号化機構の1実施形態の略図である。
図2】変換バイパス復号化機構の1実施形態の略図である。
図3】量子符号化機構なしの変換の1実施形態の略図である。
図4】量子復号化機構なしの変換の1実施形態の略図である。
図5】ロッシー符号化機構の1実施形態の略図である。
図6】ロッシー復号化機構の1実施形態の略図である。
図7】符号化方法の1実施形態の流れ図である。
図8】復号化方法の1実施形態の流れ図である。
図9】ネットワーク・ユニットの1実施形態の略図である。
図10】汎用目的コンピュータ・システムの略図である。
【発明を実施するための形態】
【0010】
最初に、1つまたは複数の実施形態の例示的な実装形態を以下で提供するが、開示したシステムおよび/または方法を、現在公知であるかまたは存在する任意数の技術を用いて実装してもよいことは理解される。本開示は、本明細書で図示および説明する例示的な設計および実装形態を含めて、後述する例示的な実装形態、図面、技法には決して限定されず、添付の特許請求の範囲においてその全範囲の均等物に沿って修正してもよい。
【0011】
一般に、ビデオ媒体では、一連の静止画像またはフレームを相対的に迅速な遷移で表示し、それにより視聴者が動きを認識できるようにする。各フレームは、複数の画素またはピクセルを含んでもよく、その各々がフレーム内の単一の参照点を表してもよい。デジタル処理の最中は、各ピクセルに、対応する参照点での輝度または色度のような画像品質または特性を表す整数値(例えば、0、1、・・・または255)を割り当ててもよい。使用中は、画像またはビデオ・フレームが大量のピクセル(例えば、1920×1080フレーム内に2,073,600個のピクセル)を含むことがあり、したがって、各ピクセルを独立に符号化し復号化する(以降、単純にコード化と称する)のは面倒であり非効率的であろう。コード化の効率を高めるために、ビデオ・フレームは通常は複数の長方形のブロックまたはマクロブロックに分割され、これらは予測、変換、および量子化のような処理の基本ユニットの役割を果たすことができる。例えば、典型的なN×NのブロックはN個のピクセルを含むことができる。ここで、Nは1より大きい整数であり、しばしば4の倍数である。
【0012】
ITU(International Telecommunication Union)ITU−T(Telecommunication Standardization Sector)およびISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)の作業草案では、HEVC(High Efficiency Video Coding)が、次のビデオ標準として提案されており、これには新たなブロックの概念が導入されている。例えば、コード化ユニット(CU)が、ビデオ・フレームを等しいサイズまたは可変サイズの長方形ブロックに細分割してもよい。HEVCでは、CUが以前の標準のマクロブロック構造を置き換えてもよい。インター予測またはイントラ予測のモードに応じて、CUが1つまたは複数の予測ユニット(PU)を備えてもよく、その各々が予測の基本ユニットの役割を果たしてもよい。例えば、イントラ予測について、64×64のCUを対称的に4つの32×32のPUに分割してもよい。別の例として、インター予測について、64×64のCUを16×64のPUと48×64のPUに非対称に分割してもよい。同様に、PUが1つまたは複数の変換ユニット(TU)を備えてもよく、その各々が変換および/または量子化のための基本ユニットの役割を果たしてもよい。例えば、32×32のPUを4つの16×16のTUに対称に分割してもよい。或るPUの複数のTUが、同一の予測モードを共有するが別々に変換されてもよい。ここで、ブロックという用語は一般にマクロブロック、CU、PU、またはTUのうち何れかを指してもよい。
【0013】
適用事例に応じて、ブロックをロスレス・モード(即ち、歪みも情報損失もない)またはロッシー・モード(即ち、歪みがある)の何れかでコード化することができる。使用中は、(例えば、4:4:4のYUVサブサンプリングを有する)高品質ビデオをロスレス・モードでコード化し、(例えば、4:2:0のYUVサブサンプリングを有する)低品質ビデオをロッシー・モードを用いてコード化してもよい。場合によっては、(例えば、4:4:4または4:2:0の何れかのYUVサブサンプリングを有する)単一のビデオ・フレームまたはスライスがロスレス・モードとロッシー・モードの両方を使用して複数の領域をコード化してもよい。当該複数の領域は、長方形または不定形であってもよい。各領域が複数のブロックを含んでもよい。例えば、合成ビデオがテキスト、コンピュータ・グラフィックス、および自然観のコンテンツ(例えば、カメラで取得したビデオ)のような様々な種類のコンテンツの組合せを含んでもよい。合成フレームでは、テキストおよびグラフィックスの領域をロスレス・モードでコード化し、自然観のコンテンツの領域をロッシー・モードでコード化してもよい。テキストおよびグラフィックスのロスレス符号化は、例えばコンピュータ画面を共有するアプリケーションにおいて望ましいかもしれない。なぜならば、ロッシー・コード化を行うとテキストおよびグラフィックスの品質または忠実度が貧弱になるおそれがあり、それが目の疲れの原因となりうるからである。HM3.0のような最新のHEVCテスト・モデル(HM)は、自然観のコンテンツを極めて効率的にコード化することができる。しかし、最新のHMにはロスレス符号化モードが欠けており、したがって特定のビデオ(例えば、合成ビデオ)に対してはコード化の効率性が限られるおそれがある。ゼロに設定した量子化パラメータ(QP)による最高品質の設定でも、コード化の効率は依然として満足できるものではないかもしれない。
【0014】
本明細書では、改善されたビデオ・コード化のためのシステムと方法を開示する。本開示ではロスレス符号化モードを提供する。ロスレス符号化モードは、合成ビデオのようなビデオのコード化においてロッシー・コード化モードを補完することができる。当該ロスレス・モードは、変換バイパス・コード化機構および量子コード化機構によらない変換を備えてもよい。変換バイパス機構では、変換ステップと量子化ステップの両方がスキップされ、したがって、残余ブロックがエントロピ符号器を用いて直接コード化される。量子化によらない変換機構では、変換は含まれるが量子化はバイパスされる。量子化によらない変換機構の1実施形態では、変換アルゴリズムが完全に可逆でない場合には、若干の歪みまたは情報損失が発生することがある。これをニア・ロスレスと称することもある。使用中は、ビデオ・フレームまたはスライスのコンテンツに基づいて、(例えば、テキストおよび/またはグラフィックスを含む)一部の領域をロスレス・モードでコード化してもよく、(例えば、自然観のコンテンツを含む)他の領域をロッシー・モードでコード化してもよい。符号化されたビデオ・フレームを正しく復号化できるようにするために、本開示は、ビット・ストリームの高レベルのシンタックスに対する領域指示情報を含んでもよい。当該情報は、1つまたは複数のロスレス符号化領域および/またはロッシー符号化領域を信号送信してもよい。さらに、ロスレス符号化領域内のブロック(例えば、PUまたはTU)に対して、本開示では、1つまたは2つの変換バイパス・フラグを輝度または色度のピクセルに対して設定し、符号化プロセスにおいて変換がバイパスされるかどうかを示してもよい。当該変換バイパス・フラグを、ビット・ストリームにエントロピ符号化し組み込んでもよい。ビット・ストリームに含まれる情報に基づいて、ビデオ復号器がそれに応じてビデオ・フレームを再構築してもよい。
【0015】
使用中は、ビデオ・フレームのコンテンツを分析し、ロスレス符号化が望ましい特定の領域(例えば、テキストおよび/またはグラフィックス領域)を特定するためのモジュールが符号器の前にあってもよい。どの領域をロスレス・モードで符号化すべきかに関する情報または命令を当該符号器に渡してもよい。当該情報に基づいて、当該符号器がロスレス・モードを用いて当該特定された領域を符号化してもよい。あるいは、ロスレス・モードを用いて符号化すべき特定の領域をユーザが手動で定義し、符号器にこれらの領域を特定する情報を提供してもよい。したがって、ビデオ(例えば、合成ビデオ)を、符号器が受信する情報に応じて、ロスレス・モードおよび/またはロッシー・モードで符号化してもよい。本明細書では、ロスレス符号化モードが変換バイパス符号化および量子符号化によらない変換を含んでもよい。これらの2つのロスレス符号化機構ならびにロッシー符号化機構を本明細書で説明する。
【0016】
同様に、受信したビット・ストリームに含まれる情報に基づいて、ビデオ復号器は、ロスレス・モードおよび/またはロッシー・モードを用いてビデオ・フレームを復号化してもよい。ロスレス復号化モードは、変換バイパス復号化および量子復号化によらない変換を含んでもよい。これらの2つのロスレス復号化機構ならびにロッシー復号化機構を本明細書で説明する。
【0017】
図1は変換バイパス符号化機構100の1実施形態を示す。変換バイパス符号化機構100をビデオ符号器で実装してもよい。変換バイパス符号化機構100は、図1に示すように配置したRDO(rate−distortion optimization)モジュール110、予測モジュール120、エントロピ符号器130、および再構築モジュール140を備えてもよい。動作中は、一連のビデオ・フレーム(またはスライス)を当該符号器によって受信してもよい。本明細書では、フレームとは、予測フレーム(P−フレーム)、イントラ・コード化フレーム(I−フレーム)、または双予測フレーム(B−フレーム)のうち任意のものを指してもよい。同様に、スライスとは、P−スライス、I−スライス、またはB−スライスのうち任意のものを指してもよい。
【0018】
RDOモジュール110を、1つまたは複数の他のモジュールに対して論理判定を行うように構成してもよい。1実施形態では、1つまたは複数の過去に符号化したフレームに基づいて、RDOモジュール110は、符号化されている現在のフレーム(またはスライス)をどのように複数のCUに分割するか、および、どのようにCUを1つまたは複数のPUおよびTUに分割するかを判定してもよい。例えば、現在のフレームの均一な領域(即ち、領域内のピクセル値に差異がないか若干の差異がある領域)を相対的に大きなブロックに分割してもよく、現在のフレームの詳細な領域(即ち、領域内のピクセル値の間に大幅な差異がある領域)を相対的に小さなブロックに分割してもよい。
【0019】
さらに、RDOモジュール110が、どのように現在のフレームを予測するかを判定することによって予測モジュール120を制御してもよい。当該現在のフレームを、インター予測および/またはイントラ予測を介して予測してもよい。インター予測(即ち、インター・フレーム予測)では、一連のフレームにおける時間的な冗長性、例えば、連続するフレームの対応するブロック間の類似性を利用して圧縮データを削減してもよい。インター予測では、RDOモジュール110は現在のフレーム内のブロックの動きベクトルを、1つまたは複数の参照フレーム内の対応するブロックに基づいて決定してもよい。他方、イントラ予測では、単一のフレーム内の空間的な冗長性、例えば、隣接ブロック間の類似性を利用して圧縮データを削減してもよい。イントラ予測では、現在のブロックに隣接する参照ピクセルを使用して予測ブロックを生成してもよい。イントラ予測(即ち、イントラ・フレーム予測)を、複数の利用可能な予測モードまたは方向(例えば、HEVCにおける輝度成分に対しては35個のモード)の何れかを利用して実現してもよく、これをRDOモジュール110により決定してもよい。例えば、RDOモジュール110は、予測モードごとに絶対誤差和(SAE)を計算し、最小のSAEとなる予測モードを選択してもよい。
【0020】
RDOモジュール110が行った論理判定に基づいて、予測モジュール120は1つまたは複数の参照フレーム(インター予測)または複数の参照ピクセル(イントラ予測)の何れかを利用して予測ブロックを生成してもよく、当該予測ブロックが現在のブロックを推定したものであってもよい。次に、現在のブロックを予測ブロックにより取り去り、残余ブロックを生成してもよい。当該残余ブロックは複数の残余値を含んでもよく、その各々が現在のブロック内のピクセルと予測ブロック内の対応するピクセルの間の差異を示してもよい。次に、残余ブロックの全ての値をスキャンして、エントロピ符号器130により、符号化ビット・ストリームに符号化してもよい。エントロピ符号器130は、CABAC(context−adaptive binary arithmetic coding)符号化、指数ゴロブ符号化、もしくは固定長符号化、またはそれらの任意の組合せのような任意のエントロピ符号化機構を使用してもよい。変換バイパス符号化機構100では、残余ブロックが変換ステップまたは量子化ステップによらずに符号化されるので、符号化プロセスには何ら情報損失が生じない。
【0021】
ビデオ・フレームの連続的な符号化を容易にするために、残余ブロックを再構築モジュール140に入力してもよい。再構築モジュール140は、将来のブロックのイントラ予測のための参照ピクセルまたは将来のフレームのインター予測のための参照フレームの何れかを生成してもよい。必要ならば、参照フレーム/ピクセルをインター予測/イントラ予測に使用する前に、参照フレーム/ピクセルに対してフィルタリングを行ってもよい。当業者は予測モジュール120と再構築モジュール140の機能に精通しており、したがって、これらのモジュールについてはこれ以上説明しない。図1はビデオ符号器の簡単な例示であり、したがって図1は符号器に存在するモジュールの一部のみを含む場合もあることに留意されたい。図1には示していないが、他のモジュール(例えば、フィルタ、スキャナ、および送信器)を具備してビデオ符号化を容易にしてもよい。符号器から送信する前に、符号化されたビット・ストリームを、ビデオ解像度、フレーム・レート、ブロック分割情報(サイズ、座標)、予測モード等のような他の情報を含むようにさらに構成して、一連の符号化されたビデオ・フレームを正しく復号化できるようにしてもよい。
【0022】
図2は、変換バイパス復号化機構200の1実施形態を示す。変換バイパス復号化機構200をビデオ復号器で実装してもよい。変換バイパス復号化機構200は変換バイパス符号化機構100に対応してもよく、図2に示す配置のようにエントロピ復号器210、予測モジュール220、再構築モジュール230を備えてもよい。動作中は、一連のビデオ・フレームの情報を含む符号化されたビット・ストリームをエントロピ復号器210によって受信してもよく、エントロピ復号器210が当該ビット・ストリームを未圧縮のフォーマットに復号化してもよい。エントロピ復号器210は、CABAC復号化、指数ゴロブ復号化、もしくは固定長符号化、またはそれらの任意の組合せのようなエントロピ復号化機構を使用してもよい。
【0023】
復号化されている現在のブロックに対して、残余ブロックを、エントロピ復号器210の実行後に生成してもよい。さらに、現在のブロックの予測モードを含む情報を、エントロピ復号器210によって復号化してもよい。次に、予測モードに基づいて、予測モジュール220が、現在のブロックに対する予測ブロックを、以前に復号化したブロックまたはフレームに基づいて生成してもよい。予測モードがインター・モードである場合には、1つまたは複数の以前に復号化した参照フレームを使用して予測ブロックを生成してもよい。予測モードがイントラ・モードである場合には、複数の以前に復号化した参照ピクセルを使用して予測ブロックを生成してもよい。次に、再構築モジュール230が残余ブロックを予測ブロックと合成して再構築ブロックを生成してもよい。さらに、ビデオ・フレームの連続的な復号化を容易にするために、再構築ブロックを参照フレームにおいて使用して、将来のフレームをインター予測してもよい。再構築ブロックの一部のピクセルが、同一フレーム内の将来のブロックをイントラ予測するための参照ピクセルの役割を担ってもよい。
【0024】
使用中は、元のブロックが、変換バイパス符号化機構100および変換バイパス復号化機構200のようなロスレス機構を用いて符号化および復号化される場合には、コード化プロセス全体に情報損失は生じないかもしれない。したがって、送信中に生ずる歪みを防止することによって、再構築ブロックを元のブロックと完全に同一とすることができる。この高忠実度のコード化により、テキストやグラフィックスのようなビデオ・コンテンツの視聴におけるユーザのエクスペリエンスを改善することができる。
【0025】
ビデオ・フレーム内の特定の領域のロスレス符号化の間に、場合によっては、変換ステップをコード化プロセスに含めることが望ましいかもしれない。例えば、テキスト領域の一部のブロックに対して、変換ステップを追加することにより、変換バイパス・コード化機構に比べてより短いビット・ストリームを生成することができる。1実施形態では、RDOモジュールを、当該変換ステップを含めるべきかどうかを判定するように構成してもよい。例えば、試験的な変換を実施して、残余ブロックを変換係数の行列に変換してもよい。変換係数を符号化するのに必要なビットの数が、残余ブロック内の残余値を符号化するのに必要なビットの数と比べて小さいかもしれない場合には、当該変換ステップを含めてもよい。そうでない場合には、当該変換ステップをバイパスしてもよい。図3は、量子符号化によらない変換機構300の1実施形態を示す。当該変換機構は、RDOモジュール310、予測モジュール320、変換モジュール330、エントロピ符号器340、逆変換モジュール350、および再構築モジュール360を備えてもよい。量子符号化によらない変換機構300の幾つかの態様は図1の変換バイパス符号化機構100と同一または類似であってもよく、したがって、同様な態様は明確さのためこれ以上は説明しない。
【0026】
量子符号化によらない変換機構300をビデオ符号器で実装してもよい。当該ビデオ符号器が、一連のビデオ・フレームを含む入力ビデオを受信してもよい。RDOモジュール310を、1つまたは複数の他のモジュールを制御するように構成してもよく、RDOモジュール310が、図1のRDOモジュール110と同一または類似であってもよい。RDOモジュール310による論理変換に基づいて、予測モジュール320は参照フレーム(インター予測)または参照ピクセル(イントラ予測)の何れかを利用して予測ブロックを生成してもよい。当該予測ブロックは現在のブロックを推定したものである。次に、当該現在のブロックを予測ブロックにより取り去って、残余ブロックを生成してもよい。予測モジュール320は、図1の予測モジュール120と同一または類似であってもよい。
【0027】
直接にエントロピ符号化を行うのではなく、量子符号化によらない変換機構300では残余ブロックを先ず変換モジュール330により空間領域から周波数領域に変換してもよい。変換モジュール330は、残余ブロックの値(即ち、残余値)を複数の変換係数を含む変換行列に変換してもよい。変換モジュール330を、離散余弦変換(DCT)、フラクタル変換(FT)、または離散ウェーブレット変換(DWT)のような任意の適切なアルゴリズムを用いて実装してもよい。使用中は、H.264/アドバンスト・ビデオ・コード化(AVC)で定義される4×4の整数変換のような幾つかのアルゴリズムでは情報損失が何ら生じないかもしれないが、HEVC作業草案で定義された8×8の整数DCT変換のような他のアルゴリズムでは若干の情報損失が生じるかもしれない。例えば、HEVCにおける8×8の整数DCT変換は完全に可逆でないことがあるので、逆変換モジュール350の後の残余ブロックの復元値は、変換モジュール330の前の残余ブロックの元の値から若干(例えば、高々±2)異なるかもしれない。若干の情報損失が生じるので、この符号化はロスレスではなくニア・ロスレスであるかもしれない。しかし、量子化ステップと比べると、当該変換ステップにより生ずる情報損失は大量ではないかまたは気づかないものであり、したがって、量子符号化によらない変換機構300を本明細書ではロスレス符号化機構とみなすこともある。
【0028】
変換モジュール330により生成された変換係数を、エントロピ符号器340によりスキャンし、符号化されたビット・ストリームに符号化してもよい。エントロピ符号器340は、エントロピ符号器130と同一または類似であってもよい。ビデオ・フレームの連続的な符号化を容易にするために、当該変換係数を逆変換モジュール350に入力してもよい。当該逆変換モジュールは、変換モジュール330の逆を行って、厳密なバージョン(即ち、ロスレス)の残余ブロックまたは残余ブロックの近似(即ち、ニア・ロスレス)を生成してもよい。次に、残余ブロックを再構築モジュール360に入力してもよい。再構築モジュール360は、将来のブロックのイントラ予測のための参照ピクセルまたは将来のフレームのインター予測のための参照フレームの何れかを生成することができる。再構築モジュール360は、図1の再構築モジュール140と同一または類似であってもよい。符号器から送信する前に、符号化されたビット・ストリームを、ビデオ解像度、フレーム・レート、ブロック分割情報(サイズ、座標)、予測モード等のような他の情報を含むようにさらに構成して、一連の符号化されたビデオ・フレームを正しく復号化してもよい。
【0029】
図4は、量子復号化によらない変換機構400の1実施形態を示す。量子復号化によらない変換機構400をビデオ復号器で実装してもよい。量子復号化によらない変換機構400は、量子符号化によらない変換機構300に対応してもよく、図4に示す配置のようにエントロピ復号器410、逆変換モジュール420、予測モジュール430、再構築モジュール440を備えてもよい。動作中は、一連のビデオ・フレームの情報を含む符号化されたビット・ストリームをエントロピ復号器410によって受信してもよく、エントロピ復号器410が当該ビット・ストリームを未圧縮のフォーマットに復号化してもよい。エントロピ復号器410は、図2のエントロピ復号器210と同一または類似であってもよい。
【0030】
エントロピ復号器410の実行後に、変換係数の行列を生成し、当該行列を逆変換モジュール420に入力してもよい。逆変換モジュール420が、周波数領域の変換係数を空間領域の残余ピクセル値に変換してもよい。使用中は、逆変換モジュール420が使用するアルゴリズムが完全に可逆かどうかに応じて、厳密なバージョン(即ち、ロスレス)の残余ブロックまたは残余ブロックの近似(即ち、ニア・ロスレス)を生成してもよい。逆変換モジュール420は、図3の逆変換モジュール350と同一または類似であってもよい。
【0031】
さらに、現在のブロックの予測モードを含む情報を、エントロピ復号器410により復号化してもよい。予測モードに基づいて、予測モジュール430が現在のブロックに対して予測ブロックを生成してもよい。予測モジュール430は、図2の予測モジュール220と同一または類似であってもよい。次に、再構築モジュール440は当該残余ブロックを当該予測ブロックと合成して再構築ブロックを生成してもよい。さらに、ビデオ・フレームの連続的な復号化をようにするために、再構築ブロックを参照フレームにおいて使用して、将来のフレームをインター予測してもよい。再構築ブロックの一部のピクセルが、同一フレーム内の将来のブロックのイントラ予測に対する参照ピクセルの役割を担ってもよい。
【0032】
使用中は、元のブロックを、量子符号化によらない変換機構300および量子復号化によらない変換機構400のようなニア・ロスレス機構を用いて符号化し復号化する場合には、若干の歪みのみがコード化プロセスに含まれることがある。したがって、送信中に生ずる歪みを防止することによって、再構築ブロックを元のブロックと完全に同一とすることができる。量子コード化機構によらない変換機構が場合によっては望まれることもある。なぜなら、当該変換機構により、目に見えるほどにコード化忠実度を犠牲することなく、変換バイパス機構よりも高い圧縮率を実現できるからであり、これによりリアルタイム符号化プロセスを大幅に促進することができる。
【0033】
場合によっては、ロスレス・モードを用いてビデオ・フレーム全体をコード化する必要がないこともある。例えば、合成ビデオ内の(例えばカメラでキャプチャした)自然観のコンテンツを含む領域にはロスレス符号化が必要でないこともある。なぜならば、元のビデオ品質は既に限られているか、または、ロッシー・コード化に起因する歪みが大量ではないかまたは気づかないものでありうるからである。図5は、ロッシー符号化機構500の1実施形態を示す。ロッシー符号化機構500は、現在のHMで使用されている符号化機構と同一または類似であってもよい。ロッシー符号化機構500は、RDOモジュール510、予測モジュール520、変換モジュール530、量子化モジュール540、エントロピ符号器550、逆量子化モジュール560、逆変換モジュール570、および再構築モジュール580を備えてもよい。ロッシー符号化機構500の一部の態様は、図3の量子符号化によらない変換機構300と同一または類似であってもよく、したがって明確さのため、この同様な態様についてはこれ以上は説明しない。
【0034】
ロッシー符号化機構500をビデオ符号器で実装してもよく、当該ビデオ符号器が一連のビデオ・フレームを受信してもよい。RDOモジュール510を、1つまたは複数の他のモジュールを制御するように構成してもよい。RDOモジュール510が行った論理判定に基づいて、予測モジュール520が参照フレームまたは参照ピクセルの何れかを利用して予測ブロックを生成してもよい。次に、入力ビデオの現在のブロックを予測ブロックにより取り去って、残余ブロックを生成してもよい。当該残余ブロックを変換モジュール530に入力してもよく、変換モジュール530が残余ピクセル値を変換係数の行列に変換してもよい。
【0035】
量子符号化によらない変換機構300と対照的に、ロッシー符号化機構500では、変換係数を、エントロピ符号器550に入力する前に量子化モジュール540により量子化してもよい。量子化モジュール540は変換係数の大きさを変更し、整数に丸めてもよい。これにより、非ゼロの係数の数を減らすことができる。結果として、情報損失を犠牲にして圧縮率を増大させることができる。
【0036】
量子化モジュール540が生成した量子化された変換係数をエントロピ符号器550によりスキャンして、符号化されたビット・ストリームへと符号化してもよい。当該量子化された変換係数を逆量子化モジュール560に入力して、変換係数の元の大きさを復元してもよい。次に、逆変換モジュール570が、変換モジュール530の逆を行って、雑音のあるバージョンの元の残余ブロックを生成してもよい。次に、当該ロッシー残余ブロックを再構築モジュール580に入力してもよく、再構築モジュール580が将来のブロックのイントラ予測に対する参照ピクセルかまたは将来のフレームのインター予測に対する参照フレームの何れかを生成してもよい。
【0037】
図6は、ロッシー復号化機構600の1実施形態を示す。ロッシー復号化機構600を、ビデオ復号器で実装してもよい。ロッシー復号化機構600がロッシー符号化機構500に対応してもよく、図6に示した配置のようにエントロピ復号器610、逆量子化モジュール620、逆変換モジュール630、予測モジュール640、および再構築モジュール650を備えてもよい。動作中は、一連のビデオ・フレーム情報を含む符号化されたビット・ストリームをエントロピ復号器610により受信してもよい。エントロピ復号器610は当該ビット・ストリームを未圧縮のフォーマットに復号化してもよい。量子化された変換係数の行列を生成してもよく、次いで当該行列を逆量子化モジュール620に入力してもよい。逆量子化モジュール620は図5の逆量子化モジュール560と同一または類似であってもよい。次に、逆量子化モジュール620の出力を逆変換モジュール630に入力してもよい。逆変換モジュール630は、変換係数を残余ブロックの残余値に変換してもよい。さらに、現在のブロックの予測モードを含む情報をエントロピ復号器610によって復号化してもよい。当該予測モードに基づいて、予測モジュール640は現在のブロックに対する予測ブロックを生成してもよい。次に、再構築モジュール650が残余ブロックを予測ブロックと合成して再構築ブロックを生成してもよい。さらに、連続的な復号化を容易にするために、当該再構築ブロックを参照フレームで使用して将来のフレームをインター予測してもよい。当該再構築ブロックの一部のピクセルが、同一フレーム内の将来のブロックのイントラ予測に対する参照ピクセルの役割を担ってもよい。
【0038】
1実施形態では、必要ならば、変換バイパス符号化機構100、量子符号化によらない変換機構300、およびロッシー符号化機構500を含む上述の符号化機構の全てを単一の符号器で実装してもよい。例えば、合成ビデオを符号化するとき、符号器が、どの領域をロスレス・モードで符号化すべきかおよび/またはどの領域をロッシー・モードで符号化すべきかに関する情報を受信してもよい。当該情報に基づいて、符号器が、ロッシー・モードを用いて特定の領域を符号化しロスレス・モードを用いて他の領域を符号化してもよい。ロスレス・モードでは、符号器のRDOモジュール(例えば、図1のRDOモジュール110)が、変換バイパス符号化機構100および量子符号化によらない変換機構300により生ずるビット・ストリームの長さを比較した後に、変換ステップをバイパスするかどうかを判定してもよい。同様に、必要ならば、変換バイパス復号化機構200、量子復号化によらない変換機構400、およびロッシー復号化機構600を含む上述の復号化機構の全てを単一の復号器で実装してもよい。
【0039】
復号器が符号化されたビデオ・フレームを正しく再構築するために、復号器は、ビデオ・フレームを符号化するのに使用された1つまたは複数の符号化機構を認識すべきである。ロスレス符号化をビデオ・フレームの一部の領域(以降、ロスレス符号化領域と称する)にのみ適用してもよいので、ロッシー符号化を他の領域(以降、ロッシー符号化領域または正常符号化領域と称する)に適用してもよい。ロスレス符号化領域および/またはロッシー符号化領域を信号送信する情報を、符号化されたビデオ・フレームを運搬するビット・ストリームで伝送してもよい。使用中は、かかる情報を、ビット・ストリームのシーケンス・パラメータ・セット(SPS)または画像パラメータ・セット(PPS)のような、高レベルのシンタックス構造にパックしてもよい。SPSまたはPPSがビット・ストリームの主要な基準となる部分であってもよく、SPSまたはPPSをビデオ・コード化標準により定義してもよい。ビット・ストリームを受信した後、復号器が領域指示情報をSPSまたはPPSから抽出し、次いで各領域をその符号化モードに従って再構築してもよい。1実施形態では、SPSまたはPPSが、幾つかの長方形のロスレス符号化領域と、ビデオ・フレーム内のそれらの位置(例えば、左上および右下の座標、または、右上および左下の座標)を特定する情報とを含んでもよい。別の実施形態では、SPSまたはPPSが、幾つかの長方形のロッシー符号化領域と、ビデオ・フレーム内のそれらの位置(例えば、左上および右下の座標、または、右上および左下の座標)を特定する情報とを含んでもよい。
【0040】
ビデオ会議中における画面の共有のような、幾つかのアプリケーションでは、ビデオの特定の領域が、複数のビデオ・フレームにわたってどのコンテンツも変化せずに安定に留まることがある。このケースでは、領域指示情報が、相対的に低い周波数(例えば、何十秒に1回)変化し、したがって、このシグナリング方法に起因するビット・レートのオーバヘッドは無視できるであろう。
【0041】
ロスレス符号化領域においては、変換バイパス機構および/または量子化によらない変換機構を使用してもよい。正しい復号化を可能とするために、ビット・ストリームが、どのブロックが変換バイパス機構を介して符号化されているかおよびどのブロックが量子化によらない変換機構を介して符号化されているかに関する情報を含んでもよい。1実施形態では、2つの変換バイパス・フラグをロスレス符号化領域内のPUごとに導入してもよい。輝度(ルマ)変換バイパス・フラグが、PUのルマ・ピクセルのコード化において変換ステップをバイパス(またはスキップ)するかどうかを示し、色度(クロマ)変換バイパス・フラグが、PUのクロマ・ピクセルのコード化において変換ステップをバイパスするかどうかを示してもよい。例えば、変換モジュール(例えば、図3の変換モジュール330)をルマ・ピクセルに対してバイパスする場合には、ルマ変換バイパス・フラグを「1」に設定してもよい。そうでなく、変換モジュールを使用して量子化モジュール(例えば、量子化モジュール540)をバイパスする場合には、ルマ変換バイパス・フラグを「0」に設定してもよい。あるいは、必要ならば、変換モジュールをバイパスする場合にはルマ変換バイパス・フラグを「0」に設定し、変換モジュールを使用する場合には「1」に設定してもよい。ルマ変換バイパス・フラグと同一または類似のアプローチを用いてクロマ変換バイパス・フラグを設定してもよい。
【0042】
ルマ変換バイパス・フラグとクロマ変換バイパス・フラグの両方を、エントロピ符号器(例えば、図1のエントロピ符号器130)により符号化してもよい。当該エントロピ符号器がCABACアルゴリズムを使用してもよい。CABACアルゴリズムでは、複数のコンテキスト・モデルを使用してもよい。1実施形態では、3つのコンテキスト・モデルをルマ変換バイパス・フラグとクロマ変換バイパス・フラグの各々に対して使用してもよい。コード化の効率を高めるために、当該エントロピ符号器はインデックスに基づいてコンテキスト・モデルを選択してもよい。当該インデックスは、隣接PUの変換バイパス・フラグに関連付けられてもよい。例えば、現在のPUに対するルマ変換バイパス・フラグが同一または類似の方法でコード化されると仮定して、現在のPUに対するルマ変換バイパス・フラグのコード化を考える。2つの隣接するPU、即ち、上側PUと左側PUがルマ変換バイパス・フラグを有してもよい。当該2つのルマ変換バイパス・フラグの和を、コンテキスト・モデルのインデックスであるように構成してもよい。上側PUまたは左側PUの何れかがルマ変換バイパス・フラグを有さない場合(例えば、現在のPUがロスレス符号化領域の境界にある場合)、「0」をルマ変換バイパス・フラグに割り当ててもよい。選択されたコンテキスト・モデルを用いたエントロピ符号化の後、符号化されたルマ変換フラグとクロマ変換フラグをビット・ストリームに含めてもよい。
【0043】
1実施形態では、PUのルマ成分とクロマ成分が同一のロスレス符号化機構を共有してもよく、双方の成分がそれらのコード化プロセスにおいて変換ステップをバイパスするかまたは具備してもよい。このケースでは、単一の変換バイパス・フラグを両方の成分に対して使用してもよい。ルマ成分とクロマ成分に対する別々の変換バイパス・フラグと比較して、単一の変換バイパス・フラグでは、ビット・ストリーム内の信号送信オーバヘッドは少ないかもしれない。さらに、変換バイパス・フラグ(ルマおよび/またはクロマ)が上述のようにPUレベルで設定されるが、必要ならば、変換バイパス・フラグを同様にTUレベルで設定してもよく、これにより粒度は細かくなるが信号送信オーバヘッドは増えるおそれがあることに留意されたい。
【0044】
図7は、符号化方法700の1実施形態の流れ図である。符号化方法700が、ビデオ符号器内の上述の符号化機構の一部または全部を実装してもよい。方法700はステップ702で開始してもよい。ステップ702では、一連のビデオ・フレームまたはスライスを含む入力ビデオを受信してもよい。フレームまたは1組のフレームごとに、1つまたは複数のロスレス符号化領域および/またはロッシー符号化領域を含む情報または命令を受信してもよい。次に、ステップ703で、領域指示情報を、圧縮されたビット・ストリームの高レベルのシンタックスに追加してもよい。当該情報は、当該ロスレス符号化領域および/またはロッシー符号化領域を特定してもよい。当該シンタックスをビット・ストリームのSPSまたはPPSに含めてもよい。1実施形態では、当該領域指示情報が、幾つかの長方形のロスレス符号化領域とビデオ・フレーム内のそれらの位置(例えば、左上および右下の座標、または右上および左下の座標)を含んでもよい。別の実施形態では、領域指示情報が、幾つかの長方形のロッシー符号化領域とビデオ・フレーム内のそれらの位置(例えば、左上および右下の座標、または右上および左下の座標)を含んでもよい。次に、ステップ704では、受信した情報に基づいて、方法700は、現在符号化されている領域(例えば、長方形)がロスレス符号化領域であるかどうかを判定してもよい。ブロック704の条件を満たす場合には、方法700はステップ706に進んで(例えば、変換バイパス符号化機構100および/または量子符号化によらない変換機構300を用いて)現在の領域をロスレス・モードで符号化してもよい。そうではない場合には、方法700はステップ730に進んで(例えば、ロッシー符号化機構500を用いて)現在の領域をロッシー・モードで符号化してもよい。
【0045】
次に、ステップ706で、残余ブロックを現在の領域のブロックごとに生成してもよい。残余ブロックを生成するために、RDOモジュール(例えば、図1のRDOモジュール110)が、現在の領域に対する最良のブロック分割機構の選択、ならびに現在のブロック(例えば、PU)に対する最良のインター予測モードまたはイントラ予測モードの判定といった、論理判定を行ってもよい。RDOモジュールの論理判定に基づいて、予測モジュール(例えば、予測モジュール120)は予測ブロックを生成し、次いで当該予測ブロックを現在のブロックから取り去って残余ブロックを取得してもよい。
【0046】
次に、ステップ708で、方法700は、現在のブロックのルマ成分および/またはクロマ成分に対して変換ステップをバイパスすべきかどうかを判定してもよい。これを、RDOモジュールにより実装してもよい。ブロック708の条件を満たす場合には、方法700はステップ710に進み、現在のブロックに対する1つまたは複数の変換バイパス・フラグを「1」に設定してもよい。そうでない場合には、方法700はステップ720に進み、1つまたは複数の変換バイパス・フラグを「0」に設定してもよい。当該バイナリ値を任意に設定してもよい。例えば、必要ならば、1つまたは複数の変換バイパス・フラグをステップ710では「0」に設定しステップ720では「1」に設定してもよい。使用中は、ルマ成分とクロマ成分が別々の変換バイパス・フラグを使用してもよい。当該2つの成分が常に同一の符号化機構を使用する場合には、これらの成分が変換バイパス・フラグを共有してもよい。
【0047】
ステップ710に続いてステップ712を実施してもよい。ステップ712では、エントロピ符号器(例えば、図1のエントロピ符号器130)を用いて残余ブロックを圧縮されたビット・ストリームに符号化してもよい。当該エントロピ符号器が、CABACアルゴリズムのような任意の適切なアルゴリズムを使用してもよい。さらに、1つまたは複数の「1」の変換バイパス・フラグを当該エントロピ符号器により符号化してもよい。1実施形態では、3つのコンテキスト・モデルをルマ成分とクロマ成分の各々に対して使用してもよい。
【0048】
ステップ720に続いてステップ722を実施してもよい。ステップ722では、残余ブロックを変換モジュール(例えば、図3の変換モジュール330)において2次元の変換係数の行列に変換してもよい。当該変換モジュールは、整数DCT変換および整数DCT風の変換のような、任意の適切な変換を使用してもよい。次に、ステップ724で、エントロピ符号器(例えば、図3のエントロピ符号器340)を用いて当該変換係数を圧縮されたビット・ストリームに符号化してもよい。さらに、1つまたは複数の「0」の変換バイパス・フラグをエントロピ符号器により符号化してもよい。
【0049】
ステップ704で現在の領域に対してロッシー符号化モードを選択した場合には、方法700はステップ730に進み、残余ブロックを現在の領域のブロックごとに生成してもよい。残余ブロックを生成するために、RDOモジュール(例えば、図5のRDOモジュール510)が現在の領域に対してブロック分割機構を選択し、現在のブロック(例えば、PU)に対してインター予測モードまたはイントラ予測モードを選択してもよい。RDOモジュールの論理判定に基づいて、予測モジュール(例えば、予測モジュール520)が予測ブロックを生成し、当該予測ブロックを現在のブロックから取り去って残余ブロックを取得してもよい。次に、ステップ732で、当該残余ブロックを変換モジュール(例えば、変換モジュール530)において変換係数の行列に変換してもよい。次に、ステップ734で、当該行列を量子化モジュール(例えば、量子化モジュール540)において別の量子化された変換係数の行列に量子化してもよい。次に、ステップ736で、エントロピ符号器(例えば、エントロピ符号器550)を用いて当該量子化された変換係数を、既に領域指示情報を有するかもしれないビット・ストリームに符号化してもよい。
【0050】
現在の領域の各ブロックを、ステップ702乃至736の一部を用いて符号化してもよい。1実施形態では、現在の領域内の全ブロックを符号化した後、ステップ740で、圧縮されたビット・ストリームを、例えばネットワークを介して復号器に送信してもよい。方法700が、全ての必要な符号化ステップの一部のみを含んでもよく、したがって、逆量子化や逆変換のような他のステップを必要に応じて符号化プロセスに組み込んでもよいことは理解される。
【0051】
図8は復号化方法800の1実施形態の流れ図である。復号化方法800は、符号化方法700に対応してもよく、ビデオ復号器における上述の復号化機構の一部または全部を実装してもよい。方法800はステップ802で開始してもよい。ステップ802では、一連のビデオ・フレームを含むビット・ストリームを受信してもよい。次に、ステップ804で、ビット・ストリームの高レベルのシンタックス(例えば、SPSまたはPPS)を領域指示情報に対してチェックしてもよい。当該領域指示情報は、フレームまたは1組のフレーム内のどの領域がロスレス・モードで符号化されているかを信号送信してもよい。次に、ステップ806で、当該領域指示情報に基づいて、方法800は、現在復号化されている領域(例えば、長方形)がロスレス・モードで符号化されているかどうかを判定してもよい。ブロック806の条件を満たす場合には、方法800はステップ808に進んで、(例えば、変換バイパス復号化機構200および/または量子復号化によらない変換機構400を用いて)現在の領域をロスレス・モードで復号化してもよい。そうでない場合には、方法800はステップ830に進んで、(例えば、ロッシー復号化機構500を用いて)現在の領域をロッシー・モードで復号化してもよい。
【0052】
現在の領域のブロックごとに、ステップ808で、1つまたは複数の符号化された変換バイパス・フラグをエントロピ復号器(例えば、図2のエントロピ復号器210)で復号化してもよい。当該エントロピ復号器は、エントロピ符号器の逆を実施してもよい。現在のブロックのルマ成分とクロマ成分が別々の変換バイパス・フラグを使用する場合には、2つのフラグを現在のブロックに対して復号化してもよい。あるいは、ルマ成分とクロマ成分が変換バイパス・フラグを共有する場合には、1つのフラグを復号化してもよい。次に、ステップ810で、方法800は、変換バイパス・フラグが「1」であるかどうかを判定してもよい。上述のように、「1」の変換バイパス・フラグが、変換ステップが現在のブロックの符号化プロセスにおいてバイパスされていることを示してもよく、「0」の変換バイパス・フラグが、変換ステップが量子化なしに使用されていることを示してもよい。ここでのバイナリ値は、対応する符号化方法(例えば、方法700)に基づいて解釈してもよいことは理解される。例えば、方法700が「1」と「0」の意味を反転する場合には、方法800もそれに応じて調節してもよい。ブロック810の条件を満たす場合には、方法800はステップ812に進み、エントロピ復号器を用いて現在のブロックの残余ブロックを未圧縮のフォーマットに復号化してもよい。そうでない場合には、方法800はステップ820に進み、エントロピ復号器を用いて変換係数の行列を復号化してもよい。ステップ820に続いてステップ822を実施してもよい。ステップ822では、逆変換モジュール(例えば、図4の逆変換モジュール420)を用いて、変換係数を現在のブロックの残余ブロックに変換してもよい。
【0053】
現在の領域をロッシー復号化モードで復号する必要がある場合(ブロック806で判定される)、方法800はステップ830に進み、量子化された変換係数の行列をエントロピ復号器(例えば、図6のエントロピ復号器610)で復号化してもよい。次に、ステップ832で、量子化された変換係数を逆量子化して、変換係数の元の大きさを復元してもよい。次に、ステップ834で、当該変換係数を現在のブロックの残余ブロックに逆変換してもよい。
【0054】
ロスレス復号化モードまたはロッシー復号化モードの何れかを用いて残余ブロックを取得した後、ステップ840で、予測ブロックを生成してもよい。当該予測ブロックが、予測モードを含む(エントロピ符号器を用いてビット・ストリームから復号化された)情報と、1つまたは複数の過去にコード化したフレームまたはブロックとに基づいてもよい。次に、ステップ842で、残余ブロックを予測ブロックに追加して、再構築ブロックを生成してもよい。使用する符号化機構と復号化機構に応じて、再構築ブロックは、厳密な、近似の、または雑音のあるバージョンの(符号化前の)元のブロックであってもよい。送信中に生ずる歪みを防止することによって、元のブロックからの全ての情報を変換バイパス・コード化において保存することができる。変換および逆変換の性質に応じて、全て(またはほぼ全て)の情報を、量子コード化なしの変換において保存することができる。ロッシー・コード化では特定の情報が紛失するおそれがあり、紛失の程度は大抵、量子化ステップおよび逆量子化ステップに依存しうる。ブロックの連続的な復号化を容易にするために、再構築ブロックの一部のピクセルが、将来のブロックの復号化のための参照ピクセルの役割を果たしてもよい。同様に、現在のフレームが将来のフレームの復号化のための参照フレームの役割を果たしてもよい。
【0055】
図9は、ネットワーク・ユニット900の1実施形態を示す。ネットワーク・ユニット900は、例えばネットワークまたはシステム内で上述のようにビデオ・フレームを処理する符号器および復号器を備えてもよい。ネットワークユニット900は、他のネットワーク・ユニットまたはコンポーネント、論理ユニットからデータを受信するための複数の入力ポート910および/もしくは受信器ユニット(Rx)912またはデータを処理しどのネットワーク・ユニットにデータを送信すべきかを判定するためのプロセッサ920、ならびにデータを他のネットワークユニットに送信するための複数の出力ポート930および/もしくは送信器ユニット(Tx)932を備えてもよい。当該論理ユニットまたはプロセッサ920を、変換バイパス符号化機構100、量子符号化によらない変換機構300、および/または符号化方法700もしくは復号化方法800のうち少なくとも1つのような、本明細書で説明した機構のうち何れかを実装するように構成してもよい。論理ユニット920を、ハードウェア、ソフトウェア、またはその両方を用いて実装してもよい。
【0056】
上述の機構を、課された必要な作業負荷を処理するのに十分な処理能力、メモリ・リソース・およびネットワーク・スループット容量を有する、コンピュータまたはネットワーク・コンポーネントのような、任意の汎用目的のネットワーク・コンポーネントで実装してもよい。図10は、符号化方法700および復号化方法800のような、本明細書で開示した方法の1つまたは複数の実施形態の実装に適した、典型的な汎用目的のネットワーク・コンポーネントまたはコンピュータ・システム1000の略図を示す。当該汎用目的のネットワークコンポーネントまたはコンピュータ・システム1000は、メモリ装置と通信するプロセッサ1002(中央演算装置またはCPUとも称してもよい)を備える。当該メモリ装置には、二次記憶部1004、ROM(read only memory)1006、RAM(random access memory)1008、入出力(I/O)装置1010、およびネットワーク接続装置1012が含まれる。単一のプロセッサとして示してあるけれども、プロセッサ1002はそのようには限定されず、複数のプロセッサを備えてもよい。プロセッサ1002を、1つまたは複数のCPUチップ、コア(例えば、マルチ・コア・プロセッサ)、FPGA(field−programmable gate array)、ASIC(application specific integrated circuit)、および/もしくはデジタル信号プロセッサ(DSP)として実装してもよく、かつ/または1つまたは複数のASICの一部であってもよい。プロセッサ1002を、本明細書の記載の機構の何れかを実装するように構成してもよい。当該機構には、変換バイパス符号化機構100、量子符号化によらない変換機構300、および/または少なくとも1つのof符号化方法700および復号化方法800が含まれる。プロセッサ1002を、ハードウェア、ソフトウェア、またはその両方を用いて実装してもよい。
【0057】
二次記憶部1004は、一般に、1つまたは複数のディスク・ドライブもしくはテープ・ドライブから成り、データの不揮発性記憶に対して使用され、RAM1008が全ての作業データを保持するには十分なほど大きくない場合にはオーバ・フローしたデータの記憶装置として使用される。二次記憶部1004を使用して、RAM1008にロードされるプログラムを、かかるプログラムが実行のために選択されたときに格納してもよい。ROM1006は、プログラムの実行中に読み出される命令および場合によってはデータを格納するために使用される。ROM1006は、一般に二次記憶部1004の大きなメモリ容量に比べて少ないメモリ容量を有する、不揮発性のメモリ装置である。RAM1008は、揮発性データを格納し場合によっては命令を格納するために使用される。ROM1006とRAM1008の両方に対するアクセスは一般に、二次記憶部1004よりも高速である。少なくとも1つの実施形態が開示されており、当業者により行われる、当該諸実施形態(複数可)の変形、組合せ、および/または修正、かつ/または当該諸実施形態(複数可)の特手用は本開示の範囲内にある。当該諸実施形態(複数可)の特徴の結合、統合、および/または省略から生ずる代替的な実施形態も本開示の範囲内にある。数的な範囲または限定が明示的に記載されている場合には、かかる明示的な範囲または限定は、明示的に記載した範囲内に入る規模のような反復的な範囲または限定を含むと理解すべきである(例えば、1から約10とは2、3、4等を含み、0.10より大きいとは、0.11、0.12、0.13を等を含む)。例えば、下限がRで上限がRである数値範囲が開示されるときは常に、当該範囲に入る任意の数が具体的に開示されている。特に、当該範囲内の以下の数が開示される。即ち、R=R+k*(R−R)である。ここで、kは1パーセントの増分で1パーセントから100パーセントまで変化する変数である。即ち、kは1パーセント、2パーセント、3パーセント、4パーセント、7パーセント、・・・、70パーセント、71パーセント、72パーセント、・・・、95パーセント、96パーセント、97パーセント、98パーセント、99パーセント、または100パーセントである。さらに、上で定義したように2つのRの数で定義される任意の数値範囲も具体的に開示されている。約という用語の使用は、特に明記しない限り、続く数の±10%を意味する。請求項の任意の要素に関して「場合によっては」という用語の使用は、当該要素が必要であるか、または、当該要素が必要でないことを意味し、両方の代替手段が当該請求項の範囲内にある。備える、含む、有するといったより広い用語の使用は、構成される、本質的に構成される、実質的に構成されるといったより狭い用語をサポートするように理解されるべきである。したがって、保護範囲は上述の説明によっては限定されず、添付の特許請求の範囲によって定義され、その範囲は諸請求項の発明特定事項の全ての均等物を含む。各請求項および全請求項は、さらなる開示として明細書に組み込まれ、諸請求項は本開示の実施形態(複数可)である。本開示における引用物の議論、特に発行日が本出願の優先日以降である任意の引用物は、それが先行技術であることを認めたものではない。本開示で引用した全ての特許、特許出願、および刊行物の開示は、それらが本開示を補完する例示的な、手続き上の、または他の詳細を提供する範囲で、引用により本明細書に組み込まれる。
【0058】
幾つかの実施形態を本開示では提供したが、開示したシステムおよび方法を、本開示の趣旨または範囲から逸脱しない他の多数の具体的な形で具体化してもよいことは理解されよう。これらの種々の例は例示的であって限定的ではないと考えるべきであり、本発明は本明細書で与えた詳細には限定されない。例えば、様々な要素またはコンポーネントを別のシステムに組み合わせるかもしくは統合してもよく、または、特定の特徴を省略するかもしくは実装しなくともよい。
【0059】
さらに、様々な実施形態で離散的または別個として説明し図示した技術、システム、サブシステム、および方法を、本開示の範囲から逸脱せずに、他のシステム、モジュール、技術、または方法と組み合わせるかまたは統合してもよい。互いに接続または直接接続または通信するとして図示または説明した他の項目を、電気的、機械的、または別の方法で幾つかのインタフェース、装置、または中間コンポーネントを介して間接的に接続または通信してもよい。他の修正、置換え、および変形の例は、本明細書で開示した趣旨と範囲から逸脱せずに、当業者により解明でき、構成することができる。
【符号の説明】
【0060】
110 速度歪み最適化
120 予測
130 エントロピ符号器
140 再構築
210 エントロピ復号器
220 予測
230 再構築
310 速度歪み最適化
320 予測
330 変換
340 エントロピ符号器
350 逆変換
360 再構築
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10