(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-21
(54)【発明の名称】復号方法、符号化方法及び装置
(51)【国際特許分類】
H04N 19/126 20140101AFI20241114BHJP
H04N 19/176 20140101ALI20241114BHJP
H04N 19/186 20140101ALI20241114BHJP
H04N 19/136 20140101ALI20241114BHJP
H04N 19/156 20140101ALI20241114BHJP
H04N 19/154 20140101ALI20241114BHJP
【FI】
H04N19/126
H04N19/176
H04N19/186
H04N19/136
H04N19/156
H04N19/154
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024527665
(86)(22)【出願日】2022-11-10
(85)【翻訳文提出日】2024-07-10
(86)【国際出願番号】 CN2022131068
(87)【国際公開番号】W WO2023083245
(87)【国際公開日】2023-05-19
(31)【優先権主張番号】202111334223.8
(32)【優先日】2021-11-11
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】508219313
【氏名又は名称】杭州海康威視数字技術股▲フン▼有限公司
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】魏 ▲亮▼
(72)【発明者】
【氏名】▲陳▼ 方▲棟▼
(72)【発明者】
【氏名】王 莉
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159MA05
5C159MA21
5C159MA23
5C159MC01
5C159MC11
5C159ME01
5C159PP16
5C159TA46
5C159TB08
5C159TC02
5C159TC04
5C159TC08
5C159TC42
5C159TC51
5C159TD03
5C159TD12
5C159UA02
5C159UA05
5C159UA16
(57)【要約】
画像復号方法、符号化方法及び装置であり、ビデオ符号化及び復号の分野に関する。該復号方法は、まず、ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数のCUを含む、ステップと、次に、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数のQGを含み、1つのQGは1つのQP値に対応する、ステップと、最後に、前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む。
【特許請求の範囲】
【請求項1】
復号側によって実行される画像復号方法であって、
ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数の符号化ユニットCUを含む、ステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の量子化グループQGを含み、1つのQGは1つのQP値に対応する、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む、
ことを特徴とする画像復号方法。
【請求項2】
前記1つのCUは複数の残差係数を含み、前記1つのQGは前記複数の残差係数のうちの一部の残差係数を含み、前記一部の残差係数は前記1つのQP値を共有する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記1つのQGに対応する1つのQP値は、輝度QP値と色度QP値とを含み、
前記1つの画像フレームの複数のQP値を決定するステップは、
前記1つのQGの輝度QP値と色度QP値とをそれぞれ取得するステップ、
又は、
前記1つのQGの輝度QP値を取得し、
前記輝度QP値に基づいて前記1つのQGの色度QP値を取得するステップを含む、
ことを特徴とする請求項1又は2に記載の方法。
【請求項4】
前記1つの画像フレームの複数のQP値を決定するステップは、
前記1つのQGの予測QP値を取得するステップと、
前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップと、を含み、
前記導出情報は、前記1つのQGの平坦度情報又はテクスチャ情報、ビットストリームバッファの残りスペース、又は歪み制約情報のうちのいずれか1つ又は複数の組み合わせである、
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記導出情報が前記歪み制約情報であり、前記歪み制約情報は、前記複数のQGのうちのいずれか1つのQGの歪み閾値を指示する場合、
前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップは、
前記予測QP値に対応する予測歪みを決定するステップと、
前記予測歪みが前記歪み閾値以下である場合、前記予測QP値を前記QGのQP値として決定するステップと、
前記予測歪みが前記歪み閾値より大きい場合、前記歪み閾値によって決定されたQP値を前記QGのQP値として決定するステップと、を含む、
ことを特徴とする請求項4に記載の方法。
【請求項6】
前記導出情報が前記1つのQGの平坦度情報又はテクスチャ情報、又は前記ビットストリームバッファの残りスペースである場合、
前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップは、
前記導出情報に基づいて前記1つのQGのQPオフセットを決定するステップと、
前記1つのQGの予測QP値と前記QPオフセットとの和を前記1つのQGのQP値として決定するステップと、を含む、
ことを特徴とする請求項4に記載の方法。
【請求項7】
前記1つのQGの予測QP値を取得するステップは、
前記1つのQGに隣接する、前記1つのCU内の少なくとも1つの他のQGのQP値を取得し、
前記少なくとも1つの他のQGのQP値に基づいて、前記1つのQGの予測QP値を決定するステップ、
又は、
前記1つのCUのQP値を前記1つのQGの予測QP値として決定するステップを含む、
ことを特徴とする請求項4~6のいずれか1項に記載の方法。
【請求項8】
前記複数のQP値に基づいて前記1つの画像フレームを復号するステップは、
前記複数のQP値の各QP値について、前記QP値に対応する量子化ステップQstepを取得するステップと、
前記QP値に対応するQGに含まれるレベル値を取得するステップと、
選択された量子化器の組み合わせに基づいて、前記QGのレベル値を逆量子化するステップと、を含み、
前記量子化器の組み合わせは、1つ又は複数の量子化器を含む、
ことを特徴とする請求項1に記載の方法。
【請求項9】
前記量子化器は、均一量子化器又は非均一量子化器である、
ことを特徴とする請求項8に記載の方法。
【請求項10】
前記1つのQGは、前記1つの画像フレームの1つ又は複数の画素点を含む、
ことを特徴とする請求項1に記載の方法。
【請求項11】
前記複数のQGのうちの少なくとも2つのQGに対応するQP値が異なる、
ことを特徴とする請求項1に記載の方法。
【請求項12】
復号側によって実行される画像復号方法であって、
ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数の符号化ユニットCUを含む、ステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なる、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む、
ことを特徴とする画像復号方法。
【請求項13】
前記1つの画像フレームの複数のQP値を決定するステップは、
前記1つの画素点の予測QP値を取得するステップと、
前記1つの画素点の予測QP値及び導出情報に基づいて、前記1つの画素点のQP値を決定するステップと、を含み、
前記導出情報は、前記1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報である、
ことを特徴とする請求項12に記載の方法。
【請求項14】
前記1つの画素点の予測QP値は、前記1つの画素点が位置するCU又はQGのQP値であり、又は前記1つの画素点の周囲の1つ又は複数の再構成済み画素点のQP値に基づいて導出され、導出方法は、平均値、中央値、又は最頻値のうちの少なくとも1つを計算することを含む、
ことを特徴とする請求項13に記載の方法。
【請求項15】
前記再構成済み画素点は、前記1つの画素点を中心とする、辺の長さが3又は5の正方形領域内の画素点、又は対角線の長さが3又は5の菱形領域内の画素点である、
ことを特徴とする請求項13又は14に記載の方法。
【請求項16】
前記再構成済み画素点の情報は、
画素値、平坦度情報又はテクスチャ情報、背景輝度、コントラストのうちのいずれか1つ又は複数の組み合わせを含む、
ことを特徴とする請求項13に記載の方法。
【請求項17】
前記1つの画素点の予測QP値及び導出情報に基づいて、前記1つの画素点のQP値を決定するステップは、
前記1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報に基づいて、前記画素点の指示情報を決定するステップと、
前記指示情報が第1の閾値以下であり、且つ前記予測QP値が人間の目がちょうど知覚できる歪みに対応するQP値以上である場合、人間の目がちょうど知覚できる歪みに対応するQP値を前記画素点のQP値として決定するステップと、を含み、
前記人間の目がちょうど知覚できる歪みに対応するQP値は予め設定された値であり、又は、ビットストリームから解析して得られ、又は、周囲の再構成済みCUの平坦度情報又はテクスチャ情報、背景輝度、コントラスト情報に基づいて導出される、
ことを特徴とする請求項13に記載の方法。
【請求項18】
符号化側によって実行される画像符号化方法であって、
1つの画像フレームを1つ又は複数の符号化ユニットCUに分割するステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の量子化グループQGを含み、1つのQGは1つのQP値に対応する、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む、
ことを特徴とする画像符号化方法。
【請求項19】
符号化側によって実行される画像符号化方法であって、
1つの画像フレームを1つ又は複数の符号化ユニットCUに分割するステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なる、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む、
ことを特徴とする画像符号化方法。
【請求項20】
ビットストリーム解析ユニットと、QP決定ユニットと、画像復号ユニットと、を含む画像復号装置であって、
前記ビットストリーム解析ユニット、前記QP決定ユニット、及び前記画像復号ユニットは、請求項1~17のいずれか1項に記載の方法を実施するために用いられる、
ことを特徴とする画像復号装置。
【請求項21】
画像分割ユニットと、QP決定ユニットと、画像符号化ユニットと、を含む画像符号化装置であって、
前記画像分割ユニット、前記QP決定ユニット、及び前記画像符号化ユニットは、請求項18又は19に記載の方法を実施するために用いられる、
ことを特徴とする画像符号化装置。
【請求項22】
符号化側と復号側とを含むビデオコーディングシステムであって、
前記符号化側と前記復号側とが通信可能に接続され、前記復号側は請求項1~17のいずれか1項に記載の方法を実施するために用いられ、前記符号化側は請求項18又は19に記載の方法を実施するために用いられる、
ことを特徴とするビデオコーディングシステム。
【請求項23】
プロセッサとメモリとを含む電子デバイスであって、
前記メモリは、コンピュータ命令を記憶するために用いられ、前記プロセッサは、メモリから前記コンピュータ命令を呼び出して実行し、請求項1~19のいずれか1項に記載の方法を実施するために用いられる、
ことを特徴とする電子デバイス。
【請求項24】
コンピュータプログラム又は命令が記憶されたコンピュータ可読記憶媒体であって、前記コンピュータプログラム又は命令が電子デバイスによって実行されると、請求項1~19のいずれか1項に記載の方法が実施される、
ことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2021年11月11日に提出された、出願番号が202111334223.8の中国特許出願の優先権を主張し、該出願は引用の方式で本明細書に組み込まれる。
【0002】
本発明は、ビデオ符号化及び復号の分野に関し、特に、画像復号方法、符号化方法、及び装置に関する。
【背景技術】
【0003】
ビデオ符号化及び復号技術において、ビデオ圧縮技術は特に重要である。ビデオ圧縮技術は、ビデオシーケンスにおける固有の冗長な情報を削減又は除去するために、空間(画像内)予測及び/又は時間(画像間)予測を実行する。ビデオ圧縮の基本原理は、空間領域と時間領域とコードワードとの間の相関性を量子化し、冗長性をできるだけ除去することである。量子化(quantization)とは、信号の連続値(又は大量の離散値)を有限の複数の離散振幅(discrete amplitudes)にマッピングし、信号値の多対一のマッピングを実現するプロセスである。
【0004】
現在のやり方では、1フレームの画像に含まれる1つ又は複数の符号化ユニット(coding unit、CU)について、符号化側は、各CUの量子化パラメータ(quantization parameter、QP)を取得し、該QPに基づいてCUを符号化してビットストリームを取得し、それに応じて、復号側は、ビットストリームを逆量子化(dequantization)してCUのQPを取得し、該QPに基づいてCUを復号する。CUは画像コンテンツに基づいて分割されるものであり、符号化側及び復号側は、1つのCUに対応する画像コンテンツを量子化するために同じQPを使用するため、画像符号化及び復号プロセスの量子化歪みが大きくなる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、画像符号化及び復号プロセスにおける量子化歪みが大きいという問題を解決する、画像復号方法、符号化方法及び装置を提供する。
【課題を解決するための手段】
【0006】
本発明は以下の技術案を採用する。
【0007】
第1の態様によれば、本発明は画像復号方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる復号側に適用されてもよく、例えば、該復号側はビデオデコーダを含む。前記方法は、まず、ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数のCUを含む、ステップと、次に、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数のQGを含み、1つのQGは1つのQP値に対応する、ステップと、最後に、前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む。
【0008】
1つのCU内の全ての残差係数(residual coefficient)が同じQP値を使用することによって引き起こされる大きい画像歪みと比較して、本実施例において提供されるビデオ画像の復号プロセスでは、1つのCUは複数のQGに分割されてもよく、各QG内の1つ又は複数の残差係数は1つのQP値を共有するため、ビデオデコーダは、画像フレームに対応する1つ又は複数のCUに対してより細かい粒度のQP決定を行うことができ、一定の圧縮率を保証しながら、画像フレームの復号歪みを低減し、ビデオ画像復号の真実性及び正確性を向上させる。
【0009】
1つのオプション的な実施形態において、前記1つのCUは複数の残差係数を含み、前記1つのQGは前記複数の残差係数のうちの一部の残差係数を含み、前記一部の残差係数は前記1つのQP値を共有する。
【0010】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定する前に、前記方法は、第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップをさらに含み、前記第1のルールは分割領域と分割方式とを含み、前記分割領域は変換領域又は画素領域であり、前記分割方式は均一分割と非均一分割とのうちの少なくとも1つを含む。
【0011】
1つのオプション的な実施形態において、前記1つのCUは複数の残差係数を含み、前記複数の残差係数の位置は座標でマークされ、前記座標は横座標と縦座標とを含む。前記分割領域が変換領域である場合、第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップは、前記複数の残差係数のうち、座標和が第1の座標閾値に達していない残差係数を第1のQGに分割し、前記座標和が前記第1の座標閾値に達している残差係数を第2のQGに分割するステップを含み、前記座標和は、残差係数の横座標と縦座標との和である。
【0012】
又は、前記複数の残差係数のうち、座標和が第1の座標閾値に達していない残差係数を第1のQGに分割し、前記座標和が前記第1の座標閾値に達しているが、第2の座標閾値に達していない残差係数を第2のQGに分割し、前記座標和が前記第2の座標閾値に達している残差係数を第3のQGに分割し、前記第2の座標閾値は前記第1の座標閾値より大きい。
【0013】
1つのオプション的な実施形態において、前記1つのCUは複数の残差係数を含み、前記分割領域が変換領域である場合、第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップは、
前記複数の残差係数をソートし、前記複数の残差係数のうち、第1の比例閾値に達していない残差係数を第1のQGに分割し、前記第1の比例閾値に達している残差係数を第2のQGに分割するステップを含み、前記複数の残差係数のソート方式は、ジグザグ(zig-zag)、逆ジグザグ(reverse zig-zag)のいずれかである。
【0014】
又は、前記複数の残差係数をソートし、前記複数の残差係数のうち、第1の比例閾値に達していない残差係数を第1のQGに分割し、前記第1の比例閾値に達しているが、第2の比例閾値に達していない残差係数を第2のQGに分割し、前記第2の比例閾値に達している残差係数を第3のQGに分割し、前記第2の比例閾値は前記第1の比例閾値より大きい。
【0015】
1つのオプション的な実施形態において、前記1つのCUは複数の残差係数を含み、前記分割領域が画素領域である場合、第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップは、前記複数の残差係数に対して水平又は垂直方向の対称分割を行い、同じ数の残差係数を含む2つのQGを取得するステップを含む。
【0016】
又は、前記複数の残差係数に対して水平又は垂直方向の対称分割を行い、3つのQGを取得し、前記3つのQGのうち、2つの隣接しないQGに含まれる残差係数の数が一致し、もう1つのQGに含まれる残差係数の数が前記2つの隣接しないQGに含まれる残差係数の数の和と一致する。
【0017】
又は、前記複数の残差係数に対して水平又は垂直方向の分割を行い、一致しない数の残差係数を含む2つのQGを取得する。
【0018】
又は、前記複数の残差係数に対して水平又は垂直方向の分割を行い、3つのQGを取得し、前記3つのQGに含まれる残差係数は対称関係を有しない。
【0019】
1つのオプション的な実施形態において、前記1つのQGに対応する1つのQP値は、輝度QP値と色度QP値とを含む。前記1つの画像フレームの複数のQP値を決定するステップは、前記1つのQGの輝度QP値と色度QP値とをそれぞれ取得するステップを含む。
【0020】
又は、前記1つのQGの輝度QP値を取得し、前記輝度QP値に基づいて前記1つのQGの色度QP値を取得する。
【0021】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、前記ビットストリームを解析して前記1つの画像フレームのマーク情報を取得するステップであって、前記マーク情報は前記1つのQGのQP値を指示するために用いられ、及び/又は、前記マーク情報は前記1つのCUのQP値を指示するために用いられる、ステップを含む。
【0022】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、第1に、前記ビットストリームを解析して前記1つの画像フレームのマーク情報を取得するステップであって、前記マーク情報は前記1つのQGのQPオフセットを指示するために用いられる、ステップと、第2に、前記1つのQGの予測QP値及び前記マーク情報に基づいて前記1つのQGのQP値を決定するステップと、を含む。
【0023】
1つのオプション的な実施形態において、前記1つのQGの予測QP値及び前記マーク情報に基づいて前記1つのQGのQP値を決定するステップは、前記1つのQGの予測QP値を取得し、前記1つのQGの予測QP値と前記QPオフセットとの和を前記1つのQGのQP値として決定するステップを含む。
【0024】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、前記1つのQGの予測QP値を取得するステップと、前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップと、を含み、前記導出情報は、前記1つのQGの平坦度情報又はテクスチャ情報、ビットストリームバッファの残りスペース、又は歪み制約情報のうちのいずれか1つ又は複数の組み合わせである。
【0025】
1つのオプション的な実施形態において、前記導出情報が前記歪み制約情報であり、前記歪み制約情報は、前記複数のQGのうちのいずれか1つのQGの歪み閾値を指示する場合、前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップは、前記予測QP値に対応する予測歪みを決定するステップと、前記予測歪みが前記歪み閾値以下である場合、前記予測QP値を前記QGのQP値として決定するステップと、前記予測歪みが前記歪み閾値より大きい場合、前記歪み閾値によって決定されたQP値を前記QGのQP値として決定するステップと、を含む。
【0026】
1つのオプション的な実施形態において、前記導出情報が前記1つのQGのコンテンツ情報、又は前記ビットストリームバッファの残りスペースである場合、前記1つのQGの予測QP値及び導出情報に基づいて、前記1つのQGのQP値を決定するステップは、前記導出情報に基づいて前記1つのQGのQPオフセットを決定するステップと、前記1つのQGの予測QP値と前記QPオフセットとの和を前記1つのQGのQP値として決定するステップと、を含む。
【0027】
1つのオプション的な実施形態において、前記1つのQGの予測QP値を取得するステップは、前記1つのQGに隣接する、前記1つのCU内の少なくとも1つの他のQGのQP値を取得し、前記少なくとも1つの他のQGのQP値に基づいて、前記1つのQGの予測QP値を決定するステップを含む。
【0028】
又は、前記1つのCUのQP値を前記1つのQGの予測QP値として決定する。
【0029】
1つのオプション的な実施形態において、前記1つの画像フレームは少なくとも第1部分のCUと第2部分のCUとを含み、前記第1部分のCUと前記第2部分のCUとは重なる領域を有さず、前記第1部分のCUと前記第2部分のCUとのQP値の取得方法が異なる。
【0030】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、前記ビットストリームを解析して前記1つの画像フレームのマーク情報を取得するステップであって、前記マーク情報は前記第1部分のCUのQPオフセットを含む、ステップと、前記マーク情報に基づいて前記第1部分のCUのQP値を決定するステップと、前記第2部分のCUについて、前記第2部分のCUの予測QP値を取得するステップと、前記第2部分のCUの予測QP値及び導出情報に基づいて、前記第2部分のCUのQP値を決定するステップと、を含み、前記導出情報は、前記第2部分のCUの平坦度情報又はテクスチャ情報、ビットストリームバッファの残りスペース、又は歪み制約情報のうちのいずれか1つ又は複数の組み合わせである。
【0031】
1つのオプション的な実施形態において、前記複数のQP値に基づいて前記1つの画像フレームを復号するステップは、まず、前記複数のQP値の各QP値について、前記QP値に対応する量子化ステップQstepを取得するステップと、次に、前記QP値に対応するQGに含まれるレベル値を取得するステップと、最後に、選択された量子化器の組み合わせに基づいて、前記QGのレベル値を逆量子化するステップと、を含み、前記量子化器の組み合わせは、1つ又は複数の量子化器を含む。例示的に、前記量子化器は、均一量子化器又は非均一量子化器である。
【0032】
1つのオプション的な実施形態において、前記量子化器の組み合わせは、前記ビットストリームに付加されたマーク情報、又は前記QG内の残差係数の分布によって決定される。
【0033】
1つのオプション的な実施形態において、前記QGのレベル値を逆量子化するステップは、まず、前記QGの分割領域タイプを決定するステップと、次に、前記QGの分割領域タイプが変換領域である場合、前記復号側の行列テンプレートライブラリから、前記QGのパラメータ情報にマッチングする量子化行列を選択するステップであって、前記行列テンプレートライブラリは、複数のタイプの量子化行列テンプレートを含み、前記パラメータ情報は、前記QGのサイズ、前記QGが位置するCUのサイズ、輝色度チャネル情報及び平坦度情報のうちのいずれか1つ又は複数の組み合わせを含む、ステップと、最後に、前記QGの量子化行列を用いて前記QGにおけるレベル値を逆量子化して前記QGの残差係数を取得するステップと、を含む。
【0034】
1つのオプション的な実施形態において、前記複数のタイプの量子化行列テンプレートは、平坦ブロックテンプレートとテクスチャブロックテンプレートとを含み、前記平坦ブロックテンプレートにおける、周波数が周波数閾値より高い残差係数のQstepは、前記平坦ブロックテンプレートにおける、周波数が前記周波数閾値に達していない残差係数のQstep以上であり、前記テクスチャブロックテンプレートにおける、周波数が周波数閾値より高い残差係数のQstepは、前記テクスチャブロックテンプレートにおける、周波数が前記周波数閾値に達していない残差係数のQstep以下である。
【0035】
1つのオプション的な実施形態において、前記行列テンプレートライブラリに含まれる量子化行列テンプレートは、離散コサイン変換(discrete cosine transform、DCT)、離散サイン変換(discrete sine transform、DST)、整数変換又は離散ウェーブレット変換(discrete wave transform、DWT)のうちのいずれか1つ又は複数の変換方式によって取得される。
【0036】
1つのオプション的な実施形態において、前記1つのQGは、前記1つの画像フレームの1つ又は複数の画素点を含む。
【0037】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、前記ビットストリームを解析して前記1つのCU内の1つ又は複数のマークされたQGを決定するステップであって、復号プロセスにおいて前記1つ又は複数のマークされたQGは逆量子化される必要があり、前記1つのCU内のマークされていないQGは逆量子化されない、ステップと、前記1つ又は複数のマークされたQGの各QGについて、前記各QGのQP値を取得するステップと、を含む。
【0038】
又は、前記1つのCUに含まれる全てのQGの走査順序を決定し、前記走査順序は、上から下、左から右、ジグザグ又は逆ジグザグの順序のうちのいずれか1つ又は複数の組み合わせを含み、前記全てのQGの各QGについて、前記走査順序に従って前記各QGのQP値を取得する。
【0039】
1つのオプション的な実施形態において、前記複数のQGのうちの少なくとも2つのQGに対応するQP値が異なる。
【0040】
第2の態様によれば、本発明は画像復号方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる復号側に適用されてもよく、前記方法は復号側によって実行され、前記方法は、ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数のCUを含む、ステップと、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なる、ステップと、前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む。
【0041】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定するステップは、前記1つの画素点の予測QP値を取得するステップと、前記1つの画素点の予測QP値及び導出情報に基づいて、前記1つの画素点のQP値を決定するステップと、を含み、前記導出情報は、前記1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報である。
【0042】
別のオプション的な実施形態において、前記1つの画素点の予測QP値は、前記1つの画素点が位置するCU又はQGのQP値であり、又は前記1つの画素点の周囲の1つ又は複数の再構成済み画素点のQP値に基づいて導出され、導出方法は、平均値、中央値、又は最頻値のうちの少なくとも1つを計算することを含む。
【0043】
別のオプション的な実施形態において、前記再構成済み画素点は、前記1つの画素点を中心とする、辺の長さが3又は5の正方形領域内の画素点、又は対角線の長さが3又は5の菱形領域内の画素点である。
【0044】
別のオプション的な実施形態において、前記再構成済み画素点の情報は、画素値、平坦度情報又はテクスチャ情報、背景輝度、コントラストのうちのいずれか1つ又は複数の組み合わせを含む。
【0045】
別のオプション的な実施形態において、前記1つの画素点の予測QP値及び導出情報に基づいて、前記1つの画素点のQP値を決定するステップは、前記1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報に基づいて、前記画素点の指示情報を決定するステップと、前記指示情報が第1の閾値以下であり、且つ前記予測QP値が人間の目がちょうど知覚できる歪みに対応するQP値以上である場合、人間の目がちょうど知覚できる歪みに対応するQP値を前記画素点のQP値として決定するステップと、を含む。ここで、人間の目がちょうど知覚できる歪みに対応するQP値は予め設定された値(例えば、符号化側又は復号側において予め設定された画像レベル又はCUレベル情報)であり、又は、前記人間の目がちょうど知覚できる歪みに対応するQP値はビットストリームから解析して得られ(画像レベル又はCUレベル伝送)、又は、人間の目がちょうど知覚できる歪みに対応するQP値は周囲の再構成済みCUの平坦度情報又はテクスチャ情報、背景輝度、コントラスト情報に基づいて導出される。
【0046】
第3の態様によれば、本発明は画像符号化方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる符号化側に適用されてもよく、前記方法は符号化側によって実行され、前記方法は、1つの画像フレームを1つ又は複数のCUに分割するステップと、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数のQGを含み、1つのQGは1つのQP値に対応する、ステップと、前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む。
【0047】
第4の態様によれば、本発明は画像符号化方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる符号化側に適用されてもよく、前記方法は符号化側によって実行され、前記方法は、1つの画像フレームを1つ又は複数のCUに分割するステップと、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なる、ステップと、前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む。
【0048】
第5の態様によれば、本発明は画像復号装置を提供し、復号装置は復号側に適用され、該復号装置は、第1の態様又は第2の態様の可能な実施形態のいずれかにおける方法を実施するための各モジュールを含む。例えば、ビットストリーム解析ユニット、QP決定ユニット及び画像復号ユニットである。
【0049】
有益な効果については、第1の態様又は第2の態様のいずれかの説明に記載されているので、ここでは繰り返さない。前記復号装置は、第1の態様又は第2の態様のいずれかの方法の例における動作を実現する機能を有する。前記機能は、ハードウェアによって実現されてもよく、ハードウェアが対応するソフトウェアを実行することによって実現されてもよい。前記ハードウェア又はソフトウェアは、上記の機能に対応する1つ又は複数のモジュールを含む。
【0050】
第6の態様によれば、本発明は画像符号化装置を提供し、符号化装置は符号化側に適用され、該符号化装置は、第3の態様又は第4の態様の可能な実施形態のいずれかにおける方法を実施するための各モジュールを含む。例えば、前記符号化装置は、画像分割ユニット、QP決定ユニット及び画像符号化ユニットを含む。有益な効果については、第3の態様又は第4の態様のいずれかの説明に記載されているので、ここでは繰り返さない。前記符号化装置は、第3の態様又は第4の態様のいずれかの方法の例における動作を実現する機能を有する。前記機能は、ハードウェアによって実現されてもよく、ハードウェアが対応するソフトウェアを実行することによって実現されてもよい。前記ハードウェア又はソフトウェアは、上記の機能に対応する1つ又は複数のモジュールを含む。
【0051】
第7の態様によれば、本発明は、プロセッサとメモリとを含む電子デバイスを提供し、前記メモリは、コンピュータ命令を記憶するために用いられ、前記プロセッサは、メモリから前記コンピュータ命令を呼び出して実行し、第1の態様~第4の態様のいずれかの実施形態における方法を実施するために用いられる。
【0052】
例えば、該電子デバイスは、ビデオエンコーダ、又はビデオエンコーダを含む符号化側を指してもよい。
【0053】
また、例えば、該電子デバイスは、ビデオデコーダ、又はビデオデコーダを含む復号側を指してもよい。
【0054】
第8の態様によれば、本発明は、コンピュータプログラム又は命令が記憶されたコンピュータ可読記憶媒体を提供し、コンピュータプログラム又は命令がコンピューティングデバイス、又はコンピューティングデバイスが位置するストレージシステムによって実行されると、第1の態様~第4の態様のいずれかの実施形態における方法が実施される。
【0055】
第9の態様によれば、本発明は、命令を含むコンピュータプログラム製品を提供し、コンピュータプログラム製品がコンピューティングデバイス又はプロセッサ上で実行されると、コンピューティングデバイス又はプロセッサに該命令を実行させ、第1の態様~第4の態様のいずれかの実施形態における方法が実施される。
【0056】
第10の態様によれば、本発明はビデオコーディングシステムを提供し、該ビデオコーディングシステムは符号化側と復号側とを含み、復号側は第1の態様~第2の態様のいずれかの実施形態における方法を実施するために用いられ、符号化側は第3の態様~第4の態様のいずれかの実施形態における方法を実施するために用いられる。
【0057】
本発明は、上記の各態様において提供される実施形態に基づいて、さらに組み合わせてより多くの実施形態を提供することも可能である。
【図面の簡単な説明】
【0058】
【
図1】本発明によるビデオコーディングシステムの例示的なブロック図である。
【
図2】本発明によるビデオエンコーダの例示的なブロック図である。
【
図3】本発明によるビデオデコーダの例示的なブロック図である。
【
図4】本発明によるビデオ符号化/復号の概略フローチャートである。
【
図5】本発明による画像復号方法の概略フローチャートである。
【
図8】本発明による予測符号化方式でQPを取得する概略フローチャートである。
【
図10】本発明による画像フレーム復号の概略フローチャートである。
【
図11】本発明による量子化行列テンプレートの概略図である。
【
図12】本発明による画像符号化方法の概略フローチャートである。
【
図13】本発明による復号装置の概略構造図である。
【
図14】本発明による符号化装置の概略構造図である。
【
図15】本発明による電子デバイスの概略構造図である。
【発明を実施するための形態】
【0059】
以下の各実施例の説明を明確且つ簡潔にするために、まず関連技術について簡単に説明する。
【0060】
図1は、本発明によるビデオコーディングシステムの例示的なブロック図であり、本明細書で使用されるように、用語「ビデオコーダ」は、一般的に、ビデオエンコーダ及びビデオデコーダの両方を指す。本発明において、「ビデオコーディング」又は「コーディング」という用語は、一般的に、ビデオ符号化又はビデオ復号を指してもよい。ビデオコーディングシステム1のビデオエンコーダ100及びビデオデコーダ200は、本発明において提供される複数の新しいフレーム間予測モードのうちのいずれか1つにおいて説明される様々な方法の例に従って、現在コーディングされている画像ブロック又はそのサブブロックの動き情報、例えば動きベクトルを予測するために用いられ、予測された動きベクトルが、動き推定方法を使用して得られた動きベクトルにできるだけ近くなるようにし、それによって、符号化中に差分動きベクトルを伝送する必要がなく、符号化及び復号性能をさらに改善する。
【0061】
図1に示すように、ビデオコーディングシステム1は、符号化側10と復号側20とを含む。符号化側10は、符号化済みビデオデータを生成する。従って、符号化側10は、ビデオ符号化装置と呼ばれてもよい。復号側20は、符号化側10によって生成された符号化済みビデオデータを復号することができる。従って、復号側20は、ビデオ復号装置と呼ばれてもよい。符号化側10、復号側20、又は両方の各実施形態は、1つ又は複数のプロセッサと、前記1つ又は複数のプロセッサに結合されたメモリとを含んでもよい。本明細書に記載されるように、前記メモリは、RAM、ROM、EEPROM、フラッシュメモリ、又はコンピュータによってアクセス可能な命令もしくはデータ構造の形で所望のプログラムコードを記憶するために使用され得る任意の他の媒体を含んでもよいが、これらに限定されない。
【0062】
符号化側10及び復号側20は、デスクトップコンピュータ、モバイルコンピューティングデバイス、ノートブック(例えば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの携帯電話、テレビ、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲーム機、車載コンピュータ、又はそれらの類似のものを含む様々な装置を含んでもよい。
【0063】
復号側20は、リンク30を介して符号化側10から符号化済みビデオデータを受信することができる。リンク30は、符号化済みビデオデータを符号化側10から復号側20に移動させることができる1つ又は複数の媒体又は装置を含んでもよい。一例では、リンク30は、符号化側10が符号化済みビデオデータを復号側20にリアルタイムで直接送信することを可能にする1つ又は複数の通信媒体を含んでもよい。この例では、符号化側10は、通信規格(例えば、無線通信プロトコル)に従って符号化済みビデオデータを変調し、変調されたビデオデータを復号側20に送信してもよい。前記1つ又は複数の通信媒体は、無線周波数(radio frequency、RF)スペクトル又は1つ又は複数の物理伝送線路などの無線及び/又は有線通信媒体を含んでもよい。前記1つ又は複数の通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はグローバルネットワーク(例えば、インターネット)などのパケットベースのネットワークの一部を形成してもよい。前記1つ又は複数の通信媒体は、ルータ、スイッチ、基地局、又は符号化側10から復号側20への通信を容易にする別のデバイスを含んでもよい。
【0064】
別の例では、符号化済みデータは、出力インタフェース140から記憶装置40に出力されてもよい。同様に、符号化済みデータは、入力インタフェース240を介して記憶装置40からアクセスされてもよい。記憶装置40は、ハードディスクドライブ、ブルーレイディスク、デジタルビデオディスク(digital video disc、DVD)、コンパクトディスク読み取り専用メモリ(compact disc read-only memory、CD-ROM)、フラッシュメモリ、揮発性又は不揮発性メモリ、又は符号化済みビデオデータを記憶するための任意の他の適切なデジタル記憶媒体などの、分散型又はローカルアクセス可能な複数のデータ記憶媒体のうちのいずれか1つを含んでもよい。
【0065】
別の例では、記憶装置40は、ファイルサーバ又は符号化側10によって生成された符号化済みビデオを保持できる別の中間記憶装置に対応してもよい。復号側20は、ストリーミング伝送又はダウンロードによって、記憶装置40から記憶されたビデオデータにアクセスしてもよい。ファイルサーバは、符号化済みビデオデータを記憶し、符号化済みビデオデータを復号側20に送信することができる任意のタイプのサーバであってもよい。一例では、ファイルサーバは、ネットワークサーバ(例えば、ウェブサイト用)、ファイル転送プロトコル(file transfer protocol、FTP)サーバ、ネットワーク接続ストレージ(network attached storage、NAS)装置、又はローカルディスクドライブを含む。復号側20は、任意の標準的なデータ接続(インターネット接続を含む)を介して符号化済みビデオデータにアクセスしてもよい。これは、無線チャネル(例えば、ワイヤレスフィデリティ(wireless-fidelity、Wi-Fi)接続)、有線接続(例えば、デジタル加入者回線(digital subscriber line、DSL)、ケーブルモデムなど)、又はファイルサーバに記憶された符号化済みビデオデータにアクセスするのに適した両方の組み合わせを含んでもよい。記憶装置40からの符号化済みビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、又は両方の組み合わせであってもよい。
【0066】
本発明による画像復号方法は、例えば、地上波テレビ放送、ケーブルテレビ送信、衛星テレビ送信、ストリーミングビデオ送信(例えば、インターネット経由)、データ記憶媒体に記憶するためのビデオデータの符号化、データ記憶媒体に記憶するためのビデオデータの復号、又は他のアプリケーションをサポートするためのビデオ符号化及び復号に適用されてもよい。いくつかの例では、ビデオコーディングシステム1は、例えば、ビデオストリーミング伝送、ビデオ再生、ビデオ放送及び/又はビデオ電話などのアプリケーションをサポートするために、一方向又は双方向ビデオ伝送をサポートするために用いられてもよい。
【0067】
図1に示したビデオコーディングシステム1は一例に過ぎず、本発明の技術は、符号化装置と復号装置との間のいかなるデータ通信を必ずしも含まないビデオコーディング設定(例えば、ビデオ符号化又はビデオ復号)に適用することができる。他の例では、データは、ローカルメモリから検索され、ネットワーク上でストリーミングされるなどである。ビデオ符号化装置は、データを符号化してメモリに記憶してもよく、及び/又は、ビデオ復号装置は、メモリからデータを取り出して復号してもよい。多くの例において、符号化及び復号は、互いに通信することなく、データをメモリに符号化し、及び/又は、データをメモリから取り出して復号するだけの装置によって実行される。
【0068】
図1の例では、符号化側10は、ビデオソース120、ビデオエンコーダ100、及び出力インタフェース140を含む。いくつかの例では、出力インタフェース140は、変調器/復調器(モデム)及び/又は送信機を含んでもよい。ビデオソース120は、ビデオキャプチャデバイス(例えば、カメラ)、前にキャプチャされたビデオデータを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオデータを受信するためのビデオフィードインタフェース、及び/又はビデオデータを生成するためのコンピュータグラフィックスシステム、又はビデオデータのこれらのソースの組み合わせを含んでもよい。
【0069】
ビデオエンコーダ100は、ビデオソース120からのビデオデータを符号化することができる。いくつかの実施例では、符号化側10は、出力インタフェース140を介して、符号化済みビデオデータを復号側20に直接送信する。他の例では、符号化済みビデオデータは、復号側20が復号及び/又は再生のためにアクセスするために、記憶装置40に記憶されてもよい。
【0070】
図1の例では、復号側20は、入力インタフェース240と、ビデオデコーダ200と、表示装置220とを含む。いくつかの例では、入力インタフェース240は、受信機及び/又はモデムを含む。入力インタフェース240は、リンク30を介して、及び/又は記憶装置40から符号化済みビデオデータを受信してもよい。表示装置220は、復号側20と一体化されてもよいし、復号側20の外部に設けられてもよい。一般的に、表示装置220は、復号済みビデオデータを表示する。表示装置220は、様々な表示装置、例えば、液晶ディスプレイ(liquid crystal display、LCD)、プラズマディスプレイ、有機発光ダイオード(organic light-emitting diode、OLED)ディスプレイ又は他のタイプの表示装置を含んでもよい。
【0071】
図1には示されていないが、いくつかの態様では、ビデオエンコーダ100及びビデオデコーダ200は、それぞれ、オーディオエンコーダ及びデコーダと一体化されてもよく、共通のデータストリーム又は個別のデータストリームにおけるオーディオ及びビデオの両方の符号化に対応するために、適切なマルチプレクサ-デマルチプレクサユニット又は他のハードウェア及びソフトウェアを含んでもよい。いくつかの例では、適用可能である場合、デマルチプレクサ(MUX-DEMUX)ユニットは、ITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(user datagram protocol、UDP)などの他のプロトコルに準拠してもよい。
【0072】
ビデオエンコーダ100及びビデオデコーダ200の各々は、例えば、1つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application-specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、ディスクリートロジック、ハードウェア、又はそれらの任意の組み合わせとして実現されてもよい。本発明が部分的にソフトウェアで実施される場合、装置は、ソフトウェア用の命令を適切な不揮発性コンピュータ可読記憶媒体に記憶し、1つ又は複数のプロセッサを使用してハードウェアにおいて前記命令を実行することによって本発明の技術を実施してもよい。上記の内容(ハードウェア、ソフトウェア、ハードウェアとソフトウェアとの組み合わせなどを含む)のいずれかは、1つ又は複数のプロセッサと見なされてもよい。ビデオエンコーダ100及びビデオデコーダ200の各々は、1つ又は複数のエンコーダ又はデコーダに含まれてもよく、前記エンコーダ又はデコーダのいずれかは、対応する装置内の複合エンコーダ/デコーダ(コーデック)の一部として一体化されてもよい。
【0073】
本発明では、ビデオエンコーダ100は、概して、例えばビデオデコーダ200に、特定の情報を「シグナリング」又は「送信」する別の装置と呼ばれてもよい。「シグナリング」又は「送信」という用語は、概して、圧縮されたビデオデータを復号するためのシンタックス要素及び/又は他のデータの伝送を指してもよい。この伝送は、リアルタイム又はほぼリアルタイムで発生してもよい。代わりに、この通信は、一定期間にわたって発生してもよく、例えば、符号化中に、符号化済みビットストリームにおいてシンタックス要素をコンピュータ可読記憶媒体に記憶する時に発生してもよく、復号装置は、前記シンタックス要素がこの媒体に記憶された後、いつでも前記シンタックス要素を検索してもよい。
【0074】
JCT-VCは、H.265(HEVC)規格を開発した。HEVC標準化は、HEVCテストモデル(HEVC model、HM)と呼ばれるビデオ復号装置の進化モデルに基づく。H.265の最新の標準文書は、http://www.itu.int/rec/T-REC-H.265から取得することができ、最新バージョンの標準文書はH.265(12/16)であり、該標準文書は全文引用により本明細書に組み込まれる。HMは、ITU-TH.264/AVCの既存のアルゴリズムに対して、ビデオ復号装置がいくつかの追加の能力を有すると仮定する。例えば、H.264は9つのフレーム内予測符号化モードを提供し、HMは最大35つのフレーム内予測符号化モードを提供することができる。
【0075】
JVETは、H.266規格の開発に取り組んでいる。H.266標準化のプロセスは、H.266テストモデルと呼ばれるビデオ復号装置の進化モデルに基づく。H.266のアルゴリズム記述は、http:/phenix.int-evry.fr/jvetから取得することができ、最新のアルゴリズム記述はJVET-F1001-v2に含まれ、該アルゴリズム記述文書は全文引用により本明細書に組み込まれる。同時に、https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/からJEMテストモデルの参考ソフトウェアを取得することができ、同様に全文引用により本明細書に組み込まれる。
【0076】
一般的に、HMの動作モデル記述は、ビデオフレーム又は画像を、輝度及び色度サンプルの両方を含むツリーブロック又は最大符号化ユニット(largest coding unit、LCU)のシーケンスに分割することができ、LCUはコーディングツリーユニット(coding tree unit、CTU)とも呼ばれる。ツリーブロックは、H.264規格のマクロブロックと類似の目的を有する。スライスは、復号順順序で連続するいくつかのツリーブロックを含む。ビデオフレーム又は画像を1つ又は複数のストライプに分割してもよい。四分木に基づいて各ツリーブロックを符号化ユニット(coding unit、CU)に分割してもよい。例えば、四分木のルートノードであるツリーブロックを4つの子ノードに分割し、各子ノードを親ノードとして他の4つの子ノードにさらに分割してもよい。四分木のリーフノードとしての最終的に分割できない子ノードは、復号済みビデオブロックなどの復号ノードを含む。復号済みビットストリームに関連するシンタックスデータは、ツリーブロックが分割され得る最大回数を定義することができ、復号ノードの最小サイズを定義することもできる。
【0077】
CUのサイズは、復号ノードのサイズに対応し、形状は正方形でなければならない。CUのサイズの範囲は、8×8画素から最大64×64画素、又はそれ以上のツリーブロックのサイズまで可能である。
【0078】
ビデオシーケンスは、通常、一連のビデオフレーム又は画像を含む。画像グループ(group of picture、GOP)は例示的に、一連の、1つ、又は複数のビデオ画像を含む。GOPは、GOPのヘッダ情報、1つ又は複数の画像のヘッダ情報、又はその他の場所に、GOPに含まれる画像の数を記述するシンタックスデータを含んでもよい。画像の各スライスは、対応する画像の符号化モードを記述するスライスシンタックスデータを含んでもよい。ビデオエンコーダ100は、通常、ビデオデータを符号化するために個別のビデオスライス内のビデオブロックを操作する。ビデオブロックは、CU内の復号ノードに対応してもよい。ビデオブロックは、固定又は可変のサイズを有してもよく、指定された復号規格に応じてサイズが異なってもよい。
【0079】
本発明において、「N×N」と「NかけるN」は同じ意味で使うことができ、垂直次元及び水平次元に従ったビデオブロックの画素サイズを指し、例えば、16×16画素又は16かける16画素である。一般に、16×16ブロックは、垂直方向に16画素(y=16)、水平方向に16画素(x=16)を有する。同様に、N×Nブロックは、垂直方向にN個の画素を有し、水平方向にN個の画素を有し、Nは非負の整数値を表す。ブロック内の画素は、行及び列に配列されてもよい。また、ブロックは、必ずしも水平方向と垂直方向に同じ数の画素を有する必要はない。例えば、ブロックはN×M個の画素を含み、Mは必ずしもNに等しくない。
【0080】
CUのフレーム内/フレーム間予測復号が行われた後、ビデオエンコーダ100は、CUの残差データを計算してもよい。CUは、空間領域(画素領域とも呼ばれる)内の画素データを含んでもよく、CUは、残差ビデオデータに変換(例えば、離散コサイン変換(discrete cosine transform、DCT)、整数変換、離散ウェーブレット変換、又は概念的に類似した変換)を適用した後の変換領域内の係数を含んでもよい。残差データは、符号化されていない画像の画素とCUに対応する予測値との画素差に対応してもよい。ビデオエンコーダ100は、残差データを含むCUを形成し、CUの変換係数を生成してもよい。
【0081】
任意の変換により変換係数を生成した後、ビデオエンコーダ100は、変換係数の量子化を実行してもよい。量子化とは、例示的に、係数を量子化して、係数を表すためのデータ量を削減することによってさらに圧縮するプロセスである。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減することができる。例えば、量子化中にnビット値をmビット値に切り捨ててもよく、nはmより大きい。
【0082】
いくつかの可能な実施形態において、ビデオエンコーダ100は、量子化済み変換係数を予め定義された走査順序で走査して、エントロピー符号化され得るシリアライズベクトル(serialized vector)を生成してもよい。他の可能な実施形態において、ビデオエンコーダ100は、適応走査を実行してもよい。量子化済み変換係数を走査して1次元ベクトルを形成した後、ビデオエンコーダ100は、コンテキストベース適応型可変長符号化(context-based adaptive variable-length code、CAVLC)、コンテキストベース適応型バイナリ算術符号化(context-based adaptive binary arithmetic coding、CABAC)、シンタックスベース適応型バイナリ算術符号化(syntax-based adaptive binary arithmetic coding、SBAC)、確率間隔分割エントロピー(probability interval partitioning entropy、PIPE)符号化、又は他のエントロピー符号化方法に基づいて1次元ベクトルをエントロピー符号化してもよい。ビデオエンコーダ100は、ビデオデコーダ200がビデオデータを復号するために使用するように、符号化済みビデオデータに関連するシンタックス要素をエントロピー符号化してもよい。
【0083】
CABACを実行するために、ビデオエンコーダ100は、コンテキストモデル内のコンテキストを伝送されるシンボルに割り当ててもよい。コンテキストは、シンボルの隣接値が非ゼロであるか否かに関連してもよい。CAVLCを実行するために、ビデオエンコーダ100は、伝送されるシンボルの可変長符号を選択してもよい。可変長符号化(variable-length code、VLC)におけるコードワードは、比較的短い符号が可能性の高いシンボルに対応し、長い符号が可能性の低いシンボルに対応するように構成され得る。このように、VLCを使用することで、送信される各シンボルに等しい長さのコードワードを使用する場合と比較して、ビットレートを節約することができる。シンボルに割り当てられたコンテキストに基づいて、CABACにおける確率を決定することができる。
【0084】
本発明の実施形態において、ビデオエンコーダは、画像間の時間的冗長性を低減するためにフレーム間予測を実行してもよい。本発明では、ビデオデコーダによって現在復号されているCUは、現在のCUと呼ばれ得る。本発明では、ビデオデコーダによって現在復号されている画像は、現在の画像と呼ばれ得る。
【0085】
図2は、本発明によるビデオエンコーダの例示的なブロック図である。ビデオエンコーダ100は、ビデオを後処理エンティティ41に出力するために用いられる。後処理エンティティ41は、ビデオエンコーダ100からの符号化済みビデオデータを処理することができるビデオエンティティの例を表し、例えば、媒体認識ネットワーク素子(MANE)又はスティッチング/編集装置である。いくつかの例では、後処理エンティティ41は、ネットワークエンティティの例であってもよい。いくつかのビデオ符号化システムにおいて、後処理エンティティ41及びビデオエンコーダ100は、別々の装置のいくつかの部分であってもよく、他の場合、後処理エンティティ41に関して説明された機能は、ビデオエンコーダ100を含む同じ装置によって実行されてもよい。一例では、後処理エンティティ41は、
図1の記憶装置40の例である。
【0086】
図2の例では、ビデオエンコーダ100は、予測処理ユニット108、フィルタユニット106、復号済み画像バッファ(decoded picture buffer、DPB)107、加算器112、変換器101、量子化器102、及びエントロピーエンコーダ103を含む。予測処理ユニット108は、フレーム間予測器110及びフレーム内予測器109を含む。画像ブロック再構成のために、ビデオエンコーダ100は、逆量子化器104、逆変換器105、及び加算器111をさらに含む。フィルタユニット106は、1つ又は複数のループフィルタ、例えば、デブロッキングフィルタ、適応ループフィルタ(adaptive loop filter、ALF)及びサンプル適応オフセット(sample adaptive offset、SAO)フィルタを表すことを意図している。
図2では、フィルタユニット106をインループフィルタとして示しているが、他の実施形態において、フィルタユニット106をアフターループフィルタ(after-loop filter)として実施してもよい。一例では、ビデオエンコーダ100は、ビデオデータメモリ、分割ユニット(図示せず)をさらに含んでもよい。
【0087】
ビデオデータメモリは、ビデオエンコーダ100のコンポーネントによって符号化されるべきビデオデータを記憶してもよい。ビデオデータメモリに記憶されたビデオデータは、ビデオソース120から取得することができる。DPB 107は、参照画像メモリであってもよく、ビデオエンコーダ100がフレーム内、フレーム間コーディングモードでビデオデータを符号化するための参照ビデオデータを記憶する。ビデオデータメモリ及びDPB 107は、複数のメモリ装置のうちの任意の1つ、例えば、シンクロナスダイナミックランダムアクセスメモリ(synchronous dynamic random access memory、SDRAM)を含むダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、磁気RAM(magnetic random access memory、MRAM)、抵抗RAM(resistive random access memory、RRAM)、又は他のタイプのメモリ装置によって形成されてもよい。ビデオデータメモリ及びDPB 107は、同一のメモリ装置又は別々のメモリ装置によって提供されてもよい。
【0088】
図2に示すように、ビデオエンコーダ100は、ビデオデータを受信し、前記ビデオデータをビデオデータメモリに記憶する。分割ユニットは、ビデオデータをいくつかの画像ブロックに分割し、これらの画像ブロックは、例えば、四分木構造又は二分木構造に基づく画像ブロック分割などのように、より小さいブロックにさらに分割されてもよい。この分割は、スライス(slice)、タイル(tile)又はその他のより大きなユニットへの分割を含んでもよい。ビデオエンコーダ100は、通常、符号化されるべきビデオスライス内の画像ブロックを符号化するコンポーネントを示す。前記スライスは、複数の画像ブロックに分割されてもよい(スライスと呼ばれる画像ブロックセットに分割されてもよい)。予測処理ユニット108は、現在の画像ブロックに使用される複数の可能なコーディングモードのうちの1つ、例えば、複数のフレーム内コーディングモードのうちの1つ又は複数のフレーム間コーディングモードのうちの1つを選択してもよい。予測処理ユニット108は、フレーム内、フレーム間コーディングされたブロックを、残差ブロックを生成するために加算器112に提供し、参照画像として使用される符号化済みブロックを再構成するために加算器111に提供してもよい。
【0089】
予測処理ユニット108内のフレーム内予測器109は、空間的冗長性を除去するために、符号化される現在のブロックと同じフレーム又はスライス内の1つ又は複数の隣接ブロックに対して現在の画像ブロックのフレーム内予測符号化を実行してもよい。予測処理ユニット108内のフレーム間予測器110は、時間的冗長性を除去するために、1つ又は複数の参照画像内の1つ又は複数の予測ブロックに対して現在の画像ブロックのフレーム間予測符号化を実行してもよい。
【0090】
具体的には、フレーム間予測器110は、現在の画像ブロックを符号化するために使用されるフレーム間予測モードを決定するために用いられてもよい。例えば、フレーム間予測器110は、ビットレート-歪み分析により、候補フレーム間予測モードセットにおける各フレーム間予測モードのビットレート-歪み値を計算し、その中から最適なビットレート-歪み特性を有するフレーム間予測モードを選択してもよい。ビットレート-歪み分析は、通常、符号化済みブロックと、前記符号化済みブロックを生成するために符号化される元の符号化されていないブロックとの間の歪み(又は誤差)の量、及び符号化済みブロックを生成するためのビットコードレート(即ち、ビット数)を決定する。例えば、フレーム間予測器110は、候補フレーム間予測モードセットにおける、前記現在の画像ブロックを符号化するためのビットレート歪みコストが最も小さいフレーム間予測モードを、現在の画像ブロックに対してフレーム間予測を行うためのフレーム間予測モードとして決定してもよい。
【0091】
フレーム間予測器110は、決定されたフレーム間予測モードに基づいて、現在の画像ブロック内の1つ又は複数のサブブロックの動き情報(例えば、動きベクトル)を予測し、現在の画像ブロック内の1つ又は複数のサブブロックの動き情報(例えば、動きベクトル)を用いて現在の画像ブロックの予測ブロックを取得又は生成するために用いられる。フレーム間予測器110は、参照画像リストのうちの1つにおいて、前記動きベクトルが指す予測ブロックを位置決めしてもよい。フレーム間予測器110はさらに、ビデオデコーダ200がビデオスライスの画像ブロックを復号するときに使用するように、画像ブロック及びビデオスライスに関連するシンタックス要素を生成してもよい。又は、一例では、フレーム間予測器110は、各サブブロックの動き情報を使用して動き補償プロセスを実行して、各サブブロックの予測ブロックを生成することによって現在の画像ブロックの予測ブロックを取得する。なお、ここで、フレーム間予測器110は、動き推定及び動き補償プロセスを実行する。
【0092】
具体的には、現在の画像ブロックに対してフレーム間予測モードを選択した後、フレーム間予測器110は、エントロピーエンコーダ103が、選択されたフレーム間予測モードを指示する情報を符号化するように、現在の画像ブロックの選択されたフレーム間予測モードを指示する情報をエントロピーエンコーダ103に提供してもよい。
【0093】
フレーム内予測器109は、現在の画像ブロックに対してフレーム内予測を実行してもよい。具体的には、フレーム内予測器109は、現在のブロックを符号化するためのフレーム内予測モードを決定してもよい。例えば、フレーム内予測器109は、ビットレート-歪み分析を使用して各テスト対象のフレーム内予測モードのビットレート-歪み値を計算し、テスト対象のモードから最適なビットレート-歪み特性を有するフレーム内予測モードを選択してもよい。いずれの場合であっても、画像ブロックに対してフレーム内予測モードを選択した後、フレーム内予測器109は、エントロピーエンコーダ103が、選択されたフレーム内予測モードを指示する情報を符号化するように、現在の画像ブロックの選択されたフレーム内予測モードを指示する情報をエントロピーエンコーダ103に提供してもよい。
【0094】
予測処理ユニット108がフレーム間予測、フレーム内予測によって現在の画像ブロックの予測ブロックを生成した後、ビデオエンコーダ100は、符号化される現在の画像ブロックから前記予測ブロックを減算して残差画像ブロックを形成する。加算器112は、この減算を実行する1つ又は複数のコンポーネントを表す。前記残差ブロック内の残差ビデオデータは、1つ又は複数の伝送ユニット(transform unit、TU)に含まれてもよく、変換器101に適用される。変換器101は、例えば離散コサイン変換(discrete cosine transform、DCT)又は概念的に類似した変換などの変換を用いて残差ビデオデータを残差変換係数に変換する。変換器101は、残差ビデオデータを画素値領域から変換領域、例えば周波数領域に変換することができる。
【0095】
変換器101は、得られた変換係数を量子化器102に送信してもよい。量子化器102は、前記変換係数を量子化してビットコードレートをさらに低減する。いくつかの例では、量子化器102は、その後、量子化済み変換係数を含む行列に対する走査を実行してもよい。又は、エントロピーエンコーダ103が走査を実行してもよい。
【0096】
量子化後、エントロピーエンコーダ103は、量子化済み変換係数をエントロピー符号化する。例えば、エントロピーエンコーダ103は、コンテキスト適応型可変長符号化(CAVLC)、コンテキスト適応型バイナリ算術符号化(CABAC)、シンタックスベース適応型バイナリ算術符号化(SBAC)、確率間隔分割エントロピー(PIPE)符号化、又は他のエントロピー符号化方法もしくは技術を実行してもよい。エントロピーエンコーダ103によってエントロピー符号化された後、符号化済みビットストリームは、ビデオデコーダ200に送信されるか、後で送信される又はビデオデコーダ200によって検索されるためにアーカイブされてもよい。エントロピーエンコーダ103は、符号化される現在の画像ブロックのシンタックス要素をエントロピー符号化してもよい。
【0097】
逆量子化器104及び逆変換器105は、それぞれ逆量子化及び逆変換を適用して、例えば、後で参照画像として使用する参照ブロックを提供するために、画素領域において残差ブロックを再構成する。加算器111は、再構成済み残差ブロックを、フレーム間予測器110又はフレーム内予測器109によって生成された予測ブロックに追加して、再構成済み画像ブロックを生成する。フィルタユニット106は、ブロック効果(block artifacts)などの歪みを低減するために、再構成済み画像ブロックに適用されてもよい。その後、該再構成済み画像ブロックは参照ブロックとして復号済み画像バッファ107に記憶され、後続のビデオフレーム又は画像におけるブロックに対してフレーム間予測を行うために、フレーム間予測器110によって参照ブロックとして用いられてもよい。
【0098】
なお、ビデオエンコーダ100の他の構造変化は、ビデオストリームを符号化するために用いられてもよい。例えば、いくつかの画像ブロック又は画像フレームについて、変換器101によって処理される必要がなく、ビデオエンコーダ100は残差信号を直接量子化してもよく、それに応じて、逆変換器105によって処理される必要もなく、又は、いくつかの画像ブロック又は画像フレームについて、ビデオエンコーダ100は、残差データを生成せず、それに応じて、変換器101、量子化器102、逆量子化器104、及び逆変換器105によって処理される必要がなく、又は、ビデオエンコーダ100は、フィルタユニット106によって処理される必要がなく、再構成済み画像ブロックを参照ブロックとして直接記憶してもよく、又は、ビデオエンコーダ100内の量子化器102及び逆量子化器104は組み合わされてもよい。
【0099】
図3は、本発明によるビデオデコーダ200の例示的なブロック図である。
図3の例では、ビデオデコーダ200は、エントロピーデコーダ203、予測処理ユニット208、逆量子化器204、逆変換器205、加算器211、フィルタユニット206、及びDPB 207を含む。予測処理ユニット208は、フレーム間予測器210及びフレーム内予測器209を含んでもよい。いくつかの例では、ビデオデコーダ200は、
図2のビデオエンコーダ100について説明した符号化プロセスとほぼ逆の復号プロセスを実行してもよい。
【0100】
復号プロセスにおいて、ビデオデコーダ200は、ビデオエンコーダ100から、符号化済みビデオスライスの画像ブロック及び関連するシンタックス要素を表す符号化済みビデオビットストリームを受信する。ビデオデコーダ200は、ネットワークエンティティ42からビデオデータを受信してもよく、オプションで、前記ビデオデータをビデオデータメモリ(図示せず)に記憶してもよい。ビデオデータメモリは、ビデオデコーダ200のコンポーネントによって復号されるビデオデータ、例えば、符号化済みビデオビットストリームを記憶してもよい。ビデオデータメモリに記憶されたビデオデータは、例えば、記憶装置40、カメラなどのローカルビデオソース、ビデオデータを介した有線又は無線ネットワーク通信、又は物理データ記憶媒体にアクセスすることによって取得され得る。ビデオデータメモリは、符号化済みビデオビットストリームからの符号化済みビデオデータを記憶するための復号済み画像バッファ(CPB)として機能することができる。従って、ビデオデータメモリは、
図3には示されていないが、ビデオデータメモリ及びDPB 207は、同一のメモリであってもよいし、別々に設けられたメモリであってもよい。ビデオデータメモリ及びDPB 207は、例えば、複数のメモリ装置のうちの任意の1つ、例えば、シンクロナスDRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気RAM(MRAM)、抵抗RAM(RRAM)、又は他のタイプのメモリ装置によって形成されてもよい。
【0101】
ネットワークエンティティ42は、サーバ、MANE、ビデオエディタ/カッター(cutter)、又は上述した技術の1つ又は複数を実施するための他の装置であってもよい。ネットワークエンティティ42は、ビデオエンコーダ、例えば、ビデオエンコーダ100を含んでもよいし、含まなくてもよい。ネットワークエンティティ42が符号化済みビデオビットストリームをビデオデコーダ200に送信する前に、ネットワークエンティティ42は、本発明で説明される技術の一部を実施してもよい。いくつかのビデオ復号システムにおいて、ネットワークエンティティ42及びビデオデコーダ200は、別々の装置の部分であってもよく、他の場合、ネットワークエンティティ42に関して説明された機能は、ビデオデコーダ200を含む同じ装置によって実行されてもよい。いくつかの場合、ネットワークエンティティ42は、
図1の記憶装置40の例であってもよい。
【0102】
ビデオデコーダ200のエントロピーデコーダ203は、量子化済み係数及びいくつかのシンタックス要素を生成するために、ビットストリームをエントロピー復号する。エントロピーデコーダ203は、シンタックス要素を予測処理ユニット208に転送する。ビデオデコーダ200は、ビデオスライスレベル及び/又は画像ブロックレベルでのシンタックス要素を受信してもよい。
【0103】
ビデオスライスがフレーム内復号済み(I)スライスとして復号された場合、予測処理ユニット208のフレーム内予測器209は、シグナリングによって通知されたフレーム内予測モード、及び現在のフレーム又は画像の以前の復号済みブロックからのデータに基づいて、現在のビデオスライスの画像ブロックの予測ブロックを生成してもよい。ビデオスライスがフレーム間復号済み(即ち、B又はP)スライスとして復号された場合、予測処理ユニット208のフレーム間予測器210は、エントロピーデコーダ203から受信したシンタックス要素に基づいて、現在のビデオスライスの現在の画像ブロックを復号するためのフレーム間予測モードを決定し、決定されたフレーム間予測モードに基づいて、前記現在の画像ブロックを復号してもよい(例えば、フレーム間予測を実行する)。具体的に、フレーム間予測器210は、現在のビデオスライスの現在の画像ブロックを予測するために新しいフレーム間予測モードを使用するか否かを決定してもよく、シンタックス要素が、現在の画像ブロックを予測するために新しいフレーム間予測モードを使用することを指示する場合、新しいフレーム間予測モード(例えば、シンタックス要素によって指定される新しいフレーム間予測モード又はデフォルトの新しいフレーム間予測モード)に基づいて現在のビデオスライスの現在の画像ブロック又は現在の画像ブロックのサブブロックの動き情報を予測し、それによって、動き補償プロセスによって予測された現在の画像ブロック又は現在の画像ブロックのサブブロックの動き情報を使用して現在の画像ブロック又は現在の画像ブロックのサブブロックの予測ブロックを取得又は生成してもよい。ここで、動き情報は、参照画像情報及び動きベクトルを含んでもよく、参照画像情報は、一方向/双方向予測情報、参照画像リスト番号及び参照画像リストに対応する参照画像インデックスを含んでもよいが、これらに限定されない。フレーム間予測について、参照画像リストの1つ内の参照画像の1つから予測ブロックを生成してもよい。ビデオデコーダ200は、DPB 207に記憶された参照画像に基づいて、参照画像リスト、即ちリスト0及びリスト1を構築してもよい。現在の画像の参照フレームインデックスは、参照フレームリスト0及びリスト1のうちの1つ又は複数に含まれてもよい。いくつかの例では、ビデオエンコーダ100は、特定のブロックの特定のシンタックス要素を復号するために新しいフレーム間予測モードを使用するか否かを指示する通知をシグナリングしてもよく、又は、新しいフレーム間予測モードを使用するか否か、及び特定のブロックの特定のシンタックス要素を復号するために具体的にどの新しいフレーム間予測モードを使用するかを指示する通知をシグナリングしてもよい。なお、ここで、フレーム間予測器210は動き補償プロセスを実行する。
【0104】
逆量子化器204は、ビットストリームに提供され、エントロピーデコーダ203によって復号された量子化済み変換係数を逆量子化する、即ち量子化を解除する。逆量子化プロセスは、ビデオスライス内の各画像ブロックについてビデオエンコーダ100によって計算された量子化パラメータを用いて、加えられるべき量子化の程度を決定することと、及び加えられるべき逆量子化の程度を同様に決定することとを含んでもよい。逆変換器205は、逆DCT、逆整数変換、又は概念的に類似した逆変換プロセスなどの逆変換を変換係数に適用して、画素領域内の残差ブロックを生成する。
【0105】
フレーム間予測器210が現在の画像ブロック又は現在の画像ブロックのサブブロックのための予測ブロックを生成した後、ビデオデコーダ200は、逆変換器205からの残差ブロックと、フレーム間予測器210によって生成された対応する予測ブロックとを加算して再構成されたブロック、即ち復号済み画像ブロックを得る。加算器211は、この加算を実行するコンポーネントを表す。必要に応じて、ループフィルタ(復号ループ内又は復号ループの後)を使用して画素変換を平滑化してもよく、又は他の方式でビデオ品質を改善してもよい。フィルタユニット206は、1つ又は複数のループフィルタ、例えば、デブロッキングフィルタ、適応ループフィルタ(ALF)及びサンプル適応オフセット(SAO)フィルタを表してもよい。
図3では、フィルタユニット206をインループフィルタとして示しているが、他の実施形態において、フィルタユニット206をアフターループフィルタとして実施してもよい。一例では、フィルタユニット206は、ブロック歪みを低減するためにブロック再構成に適用され、その結果は復号済みビデオストリームとして出力される。また、所定のフレーム又は画像内の復号済み画像ブロックを復号済み画像バッファ207に記憶し、DPB 207を介して後続の動き補償のための参照画像を記憶してもよい。DPB 207は、後で表示装置(例えば、
図1の表示装置220)に表示するための復号済みビデオを記憶してもよいメモリの一部であってもよいし、このようなメモリと分離されてもよい。
【0106】
なお、ビデオデコーダ200の他の構造変化は、符号化済みビデオビットストリームを復号するために用いられてもよい。例えば、ビデオデコーダ200は、フィルタユニット206によって処理されずに出力ビデオストリームを生成してもよく、又は、いくつかの画像ブロック又は画像フレームについて、ビデオデコーダ200のエントロピーデコーダ203は量子化済み係数を復号しなかった場合、それに応じて逆量子化器204及び逆変換器205によって処理される必要がない。
【0107】
本発明の技術は、
図1から
図3に示され説明されたビデオエンコーダ100及びビデオデコーダ200のような、本発明において説明されたビデオエンコーダ又はビデオデコーダのいずれか1つによって実行されてもよい。即ち、1つの可能な実施形態において、
図2において説明されたビデオエンコーダ100は、ビデオデータのブロックの符号化中にフレーム間予測を実行するときに、以下に説明される特定の技術を実行してもよい。別の可能な実施形態において、
図3において説明されたビデオデコーダ200は、ビデオデータのブロックの復号中にフレーム間予測を実行するときに、以下に説明される特定の技術を実行してもよい。従って、一般的な「ビデオエンコーダ」又は「ビデオデコーダ」への引用は、ビデオエンコーダ100、ビデオデコーダ200、又は別のビデオ符号化又は復号ユニットを含んでもよい。
【0108】
図1~
図3は、本発明において提供される例に過ぎず、いくつかの例では、ビデオエンコーダ100、ビデオデコーダ200、及びビデオコーディングシステムは、より多くの又はより少ない構成要素又はユニットを含んでもよい。
【0109】
以下、
図1~
図3に示すビデオコーディングシステムに基づいて、本発明は、ビデオ符号化/復号の可能な実施形態を提供し、
図4に示すように、
図4は、本発明によるビデオ符号化/復号の概略フローチャートであり、該ビデオ符号化/復号の実施形態は、プロセス(1)~(5)を含み、プロセス(1)~(5)は、上記の符号化側10、ビデオエンコーダ100、復号側20、又はビデオデコーダ200のうちのいずれか1つ又は複数によって実行されてもよい。
【0110】
プロセス(1):1フレームの画像を1つ又は複数の互いに重ならない並列符号化ユニットに分割する。該1つ又は複数の並列符号化ユニットは、
図4に示す並列符号化ユニット1及び並列符号化ユニット2のように、互いに依存せず、完全に並列に/独立して符号化及び復号することができる。
【0111】
プロセス(2):各並列符号化ユニットについて、それをさらに1つ又は複数の互いに重ならない独立符号化ユニットに分割してもよく、各独立符号化ユニットは互いに依存しなくてもよいが、いくつかの並列符号化ユニットヘッダ情報を共有してもよい。
【0112】
例えば、独立符号化ユニットの幅はw_lcuであり、高さはh_lcuである。並列符号化ユニットが1つの独立符号化ユニットに分割される場合、独立符号化ユニットのサイズは並列符号化ユニットと完全に同じであり、そうでない場合、独立符号化ユニットの幅は高さより大きくなければならない(エッジ領域の場合を除く)。
【0113】
通常、独立符号化ユニットは、固定のw_lcu×h_lcuであってもよく、w_lcu及びh_lcuがいずれも2のN乗(N≧0)であり、例えば、独立符号化ユニットのサイズは、128×4、64×4、32×4、16×4、8×4、32×2、16×2又は8×2などである。
【0114】
1つの可能な例として、独立符号化ユニットは、固定の128×4であってもよい。並列符号化ユニットのサイズが256×8である場合、並列符号化ユニットを4つの独立符号化ユニットに均等に分割してもよく、並列符号化ユニットのサイズが288×10である場合、並列符号化ユニットは、第1/2行の2つの128×4+1つの32×4の独立符号化ユニット、及び第3行の2つの128×2+1つの32×2の独立符号化ユニットに分割される。
【0115】
なお、独立符号化ユニットは、輝度Y、色度Cb、色度Crの3つの成分、又は赤(red、R)、緑(green、G)、青(blue、B)の3つの成分を含んでもよいし、これらの成分のうちのいずれか1つのみを含んでもよい。独立符号化ユニットが3つの成分を含む場合、これら3つの成分のサイズは完全に同じであってもよいし、異なってもよく、具体的には画像の入力フォーマットに関連する。
【0116】
プロセス(3):各独立符号化ユニットについて、それをさらに1つ又は複数の互いに重ならない符号化ユニットに分割してもよく、独立符号化ユニット内の各符号化ユニットは互いに依存してもよく、例えば、複数の符号化ユニットは、相互参照して事前符号化及び事前復号を行ってもよい。
【0117】
符号化ユニットと独立符号化ユニットとのサイズが同じである場合(即ち、独立符号化ユニットが1つの符号化ユニットのみに分割される場合)、そのサイズは、プロセス(2)に記載の全てのサイズであってもよい。
【0118】
独立符号化ユニットが互いに重ならない複数の符号化ユニットに分割される場合、その可能な分割例として、水平均等分割(符号化ユニットの高さが独立符号化ユニットと同じであるが、幅が異なり、その1/2、1/4、1/8、1/16などであってもよい)、垂直均等分割(符号化ユニットの幅が独立符号化ユニットと同じであるが、高さが異なり、その1/2、1/4、1/8、1/16などであってもよい)、水平及び垂直均等分割(四分木分割)などがあり、水平等分が好ましい。
【0119】
符号化ユニットの幅がw_cuであり、高さがh_cuである場合、その幅は高さより大きくなければならない(エッジ領域の場合を除く)。通常、符号化ユニットは、固定のw_cu×h_cuであってもよく、w_cu及びh_cuがいずれも2のN乗(Nは0以上)であり、例えば、16×4、8×4、16×2、8×2、8×1、4×1などである。
【0120】
1つの可能な例として、符号化ユニットは固定の16×4であってもよい。独立符号化ユニットのサイズが64×4である場合、独立符号化ユニットを4つの符号化ユニットに均等に分割してもよく、独立符号化ユニットのサイズが72×4である場合、4つの16x4+1つの8×4の符号化ユニットに分割される。
【0121】
なお、符号化ユニットは、輝度Y、色度Cb、色度Crの3つの成分(又は赤R、緑G、青Bの3つの成分)を含んでもよいし、これらの成分のうちのいずれか1つの成分のみを含んでもよい。3つの成分を含む場合、これらの成分のサイズは完全に同じであってもよいし、異なってもよく、具体的には画像の入力フォーマットに関連する。
【0122】
なお、プロセス(3)は、ビデオ符号化/復号方法におけるオプション的なステップであり、ビデオエンコーダ/デコーダは、プロセス(2)で得られた独立符号化ユニットの残差係数(又は残差値)に対して符号化/復号を行ってもよい。
【0123】
プロセス(4):符号化ユニットについて、それをさらに1つ又は複数の互いに重ならない予測グループ(Prediction Group、PG)に分割してもよく、PGをGroupと略称してもよく、各PGを選択された予測モードに従って符号化及び復号し、PGの予測値を取得して符号化ユニット全体の予測値を構成し、予測値及び符号化ユニットのオリジナル値に基づいて、符号化ユニットの残差値を取得する。
【0124】
プロセス(5):符号化ユニットの残差値に基づいて、符号化ユニットをグループ分けし、1つ又は複数の互いに重ならない残差ブロック(residual block、RB)を取得し、各RBの残差係数を選択されたモードに従って符号化及び復号し、残差係数ストリームを形成する。具体的には、残差係数に対して変換を行うものと、変換を行わないものとに分けることができる。
【0125】
ここで、プロセス(5)における残差係数の符号化、復号方法の選定されたモードは、半固定長符号化方式(semi-fixed-length coding mode)、指数ゴロム(Golomb)符号化方法、Golomb-Rice符号化方法、トランケーテッドユーナリ(truncated unary)符号化方法、ランレングス(run-length)符号化方法、オリジナル残差値を直接符号化する方法などのいずれかを含んでもよいが、これらに限定されない。
【0126】
例えば、ビデオエンコーダは、RB内の係数を直接符号化してもよい。
【0127】
また、例えば、ビデオエンコーダは、残差ブロックに対してDCT、DST、Hadamard変換などの変換を行ってから、変換後の係数を符号化してもよい。
【0128】
1つの可能な例として、RBが比較的小さい場合、ビデオエンコーダは、直接にRB内の各係数に対して統一的な量子化を行ってから、バイナリ符号化を行ってもよい。RBが比較的大きい場合、さらに複数の係数グループ(coefficient group、CG)に分割し、各CGに対して統一的な量子化を行ってから、バイナリ符号化を行ってもよい。本発明のいくつかの実施例では、係数グループ(CG)と量子化グループ(QG)は同じであってもよい。
【0129】
以下、半固定長符号化方式で残差係数の符号化の部分を例示的に説明する。まず、1つのRBブロック内の残差絶対値の最大値を修正最大値(modified maximum、mm)として定義する。次に、該RBブロック内の残差係数の符号化ビット数を決定する(同一のRBブロック内の残差係数の符号化ビット数は一致する)。例えば、現在のRBブロックの重要限界値(critica llimit、CL)が2であり、現在の残差係数が1である場合、残差係数1を符号化するのに2ビットが必要であり、01と表される。現在のRBブロックのCLが7である場合、これは、8-bitの残差係数及び1-bitの符号ビットを符号化することを表す。CLの決定は、現在のサブブロックの全ての残差が[-2^(M-1),2^(M-1)]の範囲内にあることを満たす最小のM値を見つけることである。-2^(M-1)と2^(M-1)の2つの境界値が同時に存在する場合、Mを1増加させる必要があり、即ち、現在のRBブロックの全ての残差を符号化するのにM+1ビットが必要であり、-2^(M-1)と2^(M-1)の2つの境界値のうちの1つのみが存在する場合、該境界値が-2^(M-1)であるか2^(M-1)であるかを決定するために1つのTrailingビットを符号化する必要があり、全ての残差に-2^(M-1)と2^(M-1)のいずれも存在しない場合、該Trailingビットを符号化する必要がない。
【0130】
また、いくつかの特殊な場合について、ビデオエンコーダは、残差値ではなく、直接に画像のオリジナル値を符号化してもよい。
【0131】
以下、図面を参照しながら本発明の実施例の実施形態を詳細に説明する。
【0132】
図5は、本発明による画像復号方法の概略フローチャートであり、該画像復号方法は、
図1に示すビデオコーディングシステムに適用されてもよく、該画像復号方法は、復号側20によって実行されてもよく、具体的に、該復号方法は、復号側20に含まれるビデオデコーダ200によって実行されてもよく、
図5を参照し、本実施例による復号方法は、以下のステップを含む。
【0133】
S510、ビデオデコーダ200は、取得されたビットストリームを解析して1つ又は複数の画像フレームを取得する。
【0134】
ここで、上記の1つの画像フレームは1つ又は複数のCUを含む。
【0135】
図5に示すように、1つの画像フレームは、3×5=15個のCUを含んでもよい。なお、1つの画像フレームは、20個のCUなどのより多くのCUを含んでもよく、1つの画像フレームは、1つのCU又は2つのCUなどのより少ないCUを含んでもよい。
【0136】
S520、ビデオデコーダ200は、1つの画像フレームの複数のQP値を決定する。
【0137】
ここで、1つのCUは複数のQGを含み、1つのQGは1つのQP値に対応する。
【0138】
上記の1つのCUは複数の残差係数を含み、該1つのQGは前述の複数の残差係数のうちの一部の残差係数を含み、該一部の残差係数は1つのQP値を共有する。
【0139】
なお、符号化プロセスにおいて、ビデオエンコーダが該残差係数を量子化した後、該残差係数はレベル値とも呼ばれる。本分野において、残差係数及びレベル値は、残差係数と総称されてもよく、本実施例では、いずれも残差係数で表され、本発明に対する限定として理解されるべきではない。
【0140】
1つのCU内の全ての残差係数が同じQP値を使用することによって引き起こされる大きい画像歪みと比較して、本実施例において提供されるビデオ画像の復号プロセスでは、1つのCUは複数のQGに分割されてもよく、各QG内の1つ又は複数の残差係数は1つのQP値を共有するため、ビデオデコーダは、画像フレームに対応する1つ又は複数のCUに対してより細かい粒度のQP決定を行うことができ、一定の圧縮率を保証しながら、画像フレームの復号歪みを低減し、ビデオ画像復号の真実性及び正確性を向上させる。
【0141】
1つのオプション的な実施形態において、1つのQGは1つの画素点又は複数の画素点を含んでもよく、各画素点はいずれも対応する残差係数を有する。
【0142】
第1の可能なケースでは、1つのQGが1つの画素点を含む場合、QGの量子化プロセスは、画像フレームの適応的ポイントバイポイント量子化とも呼ばれてもよく、該ポイントバイポイント量子化は、QG分割を行わないCUに適用されてもよい。ポイントバイポイント量子化の特徴は、各画素点が異なるQPを使用することを許可することであり、QPの粒度を画素レベルまで精細化することに相当する。このように、ポイントバイポイント量子化の方法を用いて画像フレームを逆量子化することによって、画像フレームの圧縮率を変えることなく、画像フレームの主観品質を大幅に向上させることができる。
【0143】
第2の可能なケースでは、1つのQGが複数の画素点を含む場合、1つのQGに含まれる複数の画素点に対応する残差係数は、1つのQP値を共有してもよい。
【0144】
別のオプション的な実施形態において、CUは、ビデオデコーダ200が、第1のルールに従って1つの画像フレームに含まれる1つのCUを分割し、複数のQGを取得することによって決定されてもよい。
【0145】
該第1のルールは分割領域と分割方式とを含み、該分割領域は変換領域又は画素領域であり、該割方式は均一分割と非均一分割とのうちの少なくとも1つを含む。
【0146】
1つのCUに含まれる複数の残差係数の位置は座標でマークされ、該マークは横座標と縦座標をと含んでもよい。例えば、残差係数の位置座標は(i,j)であり、iは横座標であり、jは縦座標である。以下、いくつかの可能な例を提供し、第1のルール及びCU内のQGの分割を説明する。
【0147】
第1の可能な例では、分割領域のタイプが変換領域である場合、ビデオデコーダ200が1つのCUを分割して複数のQGを取得するプロセスは、複数の残差係数のうち、座標和が第1の座標閾値に達していない残差係数を第1のQGに分割し、座標和が第1の座標閾値に達している残差係数を第2のQGに分割することを含む。該座標和は、残差係数の横座標と縦座標との和である。
【0148】
図6は、本発明による変換領域分割の概略図であり、1つのCUは、16個の残差係数に対応する領域を含み、左上隅の残差係数の座標は(1,1)であり、右下隅の残差係数の座標は(4、4)である。
【0149】
QG(2-1)は、変換領域のQG二分割方式を示し、(i,j)位置の残差係数について、「i+j≦閾値1」を満たす残差係数が第1のQGであり、その他が第2のQGであり、例えば、該閾値1は5.5である。また、「i+j<閾値1」を満たす残差係数が第1のQGであり、その他が第2のQGであってもよい。
【0150】
第2の可能な例では、分割領域のタイプが変換領域である場合、ビデオデコーダ200が1つのCUを分割して複数のQGを取得するプロセスは、複数の残差係数のうち、座標和が第1の座標閾値に達していない残差係数を第1のQGに分割し、座標和が第1の座標閾値に達しているが、第2の座標閾値に達していない残差係数を第2のQGに分割し、座標和が第2の座標閾値に達している残差係数を第3のQGに分割することを含む。該第2の座標閾値は、該第1の座標閾値より大きい。
【0151】
図6に示すように、QG(3-1)は、変換領域のQG三分割方式を示し、(i,j)位置の残差係数について、「i+j<閾値1」を満たす残差係数が第1のQGであり、「閾値1≦i+j<閾値2」を満たす残差係数が第2のQGであり、「i+j≧閾値2」を満たす残差係数が第3のQGであり、閾値2は閾値1より大きく、例えば、閾値1=5.5、閾値2=6.5である。
【0152】
また、「i+j≦閾値1」を満たす残差係数が第1のQGであり、「閾値1<i+j≦閾値2」を満たす残差係数が第2のQGであり、「i+j>閾値2」を満たす残差係数が第3のQGであってもよく、閾値2が閾値1より大きく、例えば、閾値1=5、閾値2=6である。
【0153】
第3の可能な例では、分割領域のタイプが変換領域である場合、ビデオデコーダ200が1つのCUを分割して複数のQGを取得するプロセスは、複数の残差係数をソートし、複数の残差係数のうち、第1の比例閾値に達していない残差係数を第1のQGに分割し、第1の比例閾値に達している残差係数を第2のQGに分割することを含む。複数の残差係数のソート方式は、ジグザグ、逆ジグザグのいずれかである。
【0154】
例えば、
図6に示すように、QG(2-2)は、変換領域のQGジグザグ二分割方式を示し、最初の7/16(43.75%)の残差係数が第1のQGに分割され、残りの残差係数が第2のQGに分割される。
【0155】
また、例えば、
図6に示すように、QG(2-3)は、変換領域のQG逆ジグザグ二分割方式を示し、最初の7/16(43.75%)の残差係数が第1のQGに分割され、残りの残差係数が第2のQGに分割される。
【0156】
第4の可能な例では、分割領域のタイプが変換領域である場合、ビデオデコーダ200が1つのCUを分割して複数のQGを取得するプロセスは、複数の残差係数をソートし、複数の残差係数のうち、第1の比例閾値に達していない残差係数を第1のQGに分割し、第1の比例閾値に達しているが、第2の比例閾値に達していない残差係数を第2のQGに分割し、第2の比例閾値に達している残差係数を第3のQGに分割することを含む。該第2の比例閾値は第1の比例閾値より大きい。
【0157】
例えば、
図6に示すように、QG(3-2)は、変換領域のQGジグザグ三分割方式を示し、最初の5/16(31.25%)の残差係数が第1のQGに分割され、最後の3/16(18.75%)の残差係数が第2のQGに分割され、残りの残差係数が第3のQGに分割される。
【0158】
また、例えば、
図6に示すように、QG(3-3)は、変換領域のQG逆ジグザグ三分割方式を示し、最初の5/16(31.25%)の残差係数が第1のQGに分割され、最後の3/16(18.75%)の残差係数が第2のQGに分割され、残りの残差係数が第3のQGに分割される。
【0159】
上記の第1~第4の可能な例は、本実施例がCU内の変換領域の分割を説明するために提供した例に過ぎず、本発明に対する限定として理解されるべきではない。分割領域のタイプが変換領域である場合、座標閾値、比例閾値の選択は、CUの画像コンテンツ又はビデオ符号化及び復号のニーズに応じて決定されてもよく、本発明はこれについて限定しない。また、1つのCU内のQP決定精度を向上させるために、変換領域は、4、5、10、又はそれ以上などのより多くのQGに分割されてもよく、本発明はこれについて限定しない。
【0160】
分割領域のタイプが画素領域である場合、以下、いくつかの可能な例を提供し、第1のルール及びCU内のQGの分割を説明する。
【0161】
第5の可能な例では、ビデオデコーダ200が、複数の残差係数に対して水平又は垂直方向の対称分割を行い、同じ数の残差係数を含む2つのQGを取得する。これら2つのQGに含まれる残差係数の比は、1:1である。
【0162】
図7は、本発明による画素領域分割の概略図であり、QG_画素(pixel、P)(2-1)は、CUの垂直方向に対称二分割を行う例を示し、QG_P(2-4)は、CUの水平方向に対称二分割を行う例を示す。
【0163】
第6の可能な例では、ビデオデコーダ200が、複数の残差係数に対して水平又は垂直方向の対称分割を行い、3つのQGを取得する。3つのQGのうち、2つの隣接しないQGに含まれる残差係数の数が一致し、もう1つのQGに含まれる残差係数の数が2つの隣接しないQGに含まれる残差係数の数の和と一致する。
【0164】
図7に示すように、QG_P(3-1)は、CUの垂直方向に対称三分割を行う例を示し、両側のQGに含まれる残差係数の数は同じであり、これら3つのQGに含まれる残差係数の数の比は1:2:1である。QG_P(3-4)は、CUの水平方向に対称三分割を行う例を示し、これら3つのQGに含まれる残差係数の数の比は1:2:1である。
【0165】
第7の可能な例では、ビデオデコーダ200が、複数の残差係数に対して水平又は垂直方向の分割を行い、一致しない数の残差係数を含む2つのQGを取得する。
【0166】
例えば、
図7に示すQG_P(2-2)は、CUの垂直方向に二分割を行う例を示し、これら2つのQGに含まれる残差係数の比は1:3である。
【0167】
また、例えば、QG_P(2-3)は、CUの垂直方向に二分割を行う例を示し、これら2つのQGに含まれる残差係数の比は3:1である。
【0168】
また、例えば、QG_P(2-5)は、CUの水平方向に二分割を行う例を示し、これら2つのQGに含まれる残差係数の比は1:3である。
【0169】
また、例えば、QG_P(2-6)は、CUの水平方向に二分割を行う例を示し、これら2つのQGに含まれる残差係数の比は3:1である。
【0170】
第8の可能な例では、ビデオデコーダ200が、複数の残差係数に対して水平又は垂直方向の分割を行い、3つのQGを取得する。これら3つのQGに含まれる残差係数は対称関係を有しない。
【0171】
例えば、
図7に示すQG_P(3-2)は、CUの垂直方向に三分割を行う例を示し、これら3つのQGに含まれる残差係数の比は1:1:2である。
【0172】
また、例えば、QG_P(3-3)は、CUの垂直方向に三分割を行う例を示し、これら3つのQGに含まれる残差係数の比は2:1:1である。
【0173】
また、例えば、QG_P(3-5)は、CUの水平方向に三分割を行う例を示し、これら3つのQGに含まれる残差係数の比は1:1:2である。
【0174】
また、例えば、QG_P(3-6)は、CUの水平方向に三分割を行う例を示し、これら3つのQGに含まれる残差係数の比は2:1:1である。
【0175】
上記の第5~第8の可能な例は、本実施例がCU内の画素領域の分割を説明するために提供した例に過ぎず、本発明に対する限定として理解されるべきではない。分割領域のタイプが画素領域である場合、QGに含まれる残差係数の比は、CUの画像コンテンツ又はビデオ符号化及び復号のニーズに応じて決定されてもよく、本発明はこれについて限定しない。また、1つのCU内のQP決定精度を向上させるために、画素領域は、4、5、10、又はそれ以上などのより多くのQGに分割されてもよく、本発明はこれについて限定しない。
【0176】
このように、ビデオデコーダ200は、画素領域と変換領域の残差係数に対して異なるQG分割方式を採用し、QP量子化プロセスも異なるため、画像復号の歪みを低減する。QP量子化プロセスについては、本明細書におけるQP値の取得プロセスの説明に記載されているので、ここでは繰り返さない。
【0177】
引き続き
図5を参照し、ビデオデコーダ200が1つの画像フレームの複数のQP値を取得した後、本実施例による画像復号方法は、以下のステップS530をさらに含む。
【0178】
S530、ビデオデコーダ200は、複数のQP値に基づいて1つの画像フレームを復号する。
【0179】
例えば、ビデオデコーダ200は、複数のQP値に基づいて1つの画像フレームを復号した後、復号済み画像を取得する。ビデオデコーダ200が複数の画像フレームを復号した後、ビットストリームを復号した後のビデオを取得する。
【0180】
このように、本実施例では、ビデオデコーダは、QGを粒度として画像復号のQP量子化を行うことができ、1つのCUは複数のQGに分割されてもよく、1つのQGが1つのQP値に対応するため、1つのCU内の全ての残差係数が同じQP値を使用することによって引き起こされる大きい画像歪みと比較して、本実施例では、ビデオデコーダは、画像フレームに対応する1つ又は複数のCUに対してより細かい粒度のQP決定を行うことができ、一定の圧縮率を保証しながら、画像フレームの復号歪みを低減し、ビデオ画像復号の真実性及び正確性を向上させる。
【0181】
本発明において提供される技術に基づいて、ビデオ符号化/復号プロセスにおいて、ビデオエンコーダ/ビデオデコーダは、各QG(又はCU)のQP値を取得し、ここでは、いくつかの可能な実施形態を提供する。
【0182】
1つの可能な実施形態において、1つのQGに対応する1つのQP値は、輝度QP値と色度QP値とを含む。輝度QP値(QP_Y)とは、画像フレームの輝度(Luminance又はLuma)を量子化又は逆量子化するために必要なQP値であり、色度QP値とは、画像フレームの色度(Chrominance又はChroma)を量子化又は逆量子化するために必要なQP値である。例示的に、上記のS520について、ビデオデコーダ200が1つの画像フレームの複数のQP値を決定することは、以下の2つの可能なケースを含んでもよい。
【0183】
第1の可能なケースでは、ビデオデコーダ200が、1つのQGの輝度QP値と色度QP値とをそれぞれ取得する。
【0184】
第2の可能なケースでは、まず、ビデオデコーダ200が、1つのQGの輝度QP値を取得し、次に、ビデオデコーダ200が、輝度QP値に基づいて1つのQGの色度QP値を決定する。例えば、色度QP値は、QP_Yに画像パラメータセット(picture parameter set、PPS)レイヤ及びSliceレイヤのQPオフセット値を加算した値である。
【0185】
例示的に、上記の輝度QP値及び色度QP値は、ビデオデコーダ200がビットストリームを解析することによって取得されてもよい。
【0186】
CUに含まれるQGに対してQP決定(又はQP量子化と呼ばれる)を行う際に、ビデオデコーダ200は、まずCUレベルのQP値を取得し、次に該CU内のQGレベルのQP値を取得してもよい。
【0187】
以下、1つの画像フレームの複数のQP値を決定するための2つの可能な実施形態を提供する。
【0188】
第1の可能な実施形態、直接符号化/復号:ビデオデコーダ200は、ビットストリームを解析して1つの画像フレームのマーク情報を取得し、該マーク情報は1つのQGのQP値を指示するために用いられ、及び/又は、マーク情報は1つのCUのQP値を指示するために用いられる。
【0189】
例えば、ニアロスレス(near-lossless)圧縮において、小さいQP値が出現する確率が大きいQP値より高いため、ビデオデコーダ200は、トランケーテッドユーナリ符号、トランケーテッドライス符号(truncated Rice code)、又は指数ゴロム符号などの方式で、ビットストリームに付加されたマーク情報に含まれるQP値を用いて、QGに含まれる残差係数(レベル値)を逆量子化してもよい。
【0190】
このように、ビデオエンコーダ200が1つのCUに対してQP決定を行う際に、該マーク情報には該CUのQP値が付加されてもよい。CU内のQGに対してQP決定を行う必要がない場合、ビデオデコーダ200は、ビットストリームに付加されたマーク情報に基づいてCUのQP値を決定してもよく、ビデオデコーダがCUのQP値を取得するために、ビットストリーム内の画像フレームを推論することを回避し、ビデオデコーダの計算リソースの消費を低減し、画像復号の効率を向上させる。
【0191】
また、例えば、ビデオエンコーダ200が1つのCU内の複数のQGに対してQP決定を行う際に、該マーク情報には、該複数のQGのうちのいずれか1つのQGのQP値が付加されてもよい。
【0192】
また、例えば、該マーク情報には、CUのQP値と、該CU内のいずれかのQGのQP値とが付加されてもよい。
【0193】
このように、ビデオエンコーダ200が1つのQGに対してQP決定を行う際に、該マーク情報には該QGのQP値が付加されてもよく、ビデオデコーダがCUのQG値を取得するために、ビットストリーム内の画像フレームを推論することを回避し、ビデオデコーダの計算リソースの消費を低減し、画像復号の効率を向上させる。
【0194】
第2の可能な実施形態、予測符号化/復号:ビデオデコーダ200が、実際の(符号化された)QP値と予測QP(predict QP、predQP)値との差(deltaQP)を符号化し、これは、まず、現在のブロック(CU又はQG)のpredQPを取得するステップと、次に、現在のブロックのdeltaQPを決定するステップと、最後に、実際の(符号化された)QP値がQP=predQP+deltaQPであると決定するステップと、を含む。
【0195】
以下、ビデオデコーダ200が1つの画像フレーム内の1つのQGのQP値を決定することを例として詳細に説明し、
図8に示すように、
図8は、本発明による予測符号化方式でQPを取得する概略フローチャートであり、該QPの取得プロセスは、ビデオデコーダ又はビデオエンコーダによって実現されてもよく、ここでは、ビデオデコーダ200を例として説明し、該QPの取得プロセスは、以下のステップを含む。
【0196】
S810、ビデオデコーダ200は、QGの予測QP値を取得する。
【0197】
1つの可能な実施形態において、ビデオデコーダ200は、QGが位置するCUのQP値を該QGの予測QP値として決定する。例示的に、該CUのQP値は、ビデオデコーダ200がビットストリームのマーク情報を解析することによって決定されてもよい。
【0198】
別の可能な実施形態において、ビデオデコーダ200は、まず、QGが位置するCU内の、該QGに隣接する少なくとも1つの他のQGのQP値を取得し、該少なくとも1つの他のQGのQP値に基づいて、前述のQGの予測QP値を決定してもよい。例えば、ビデオデコーダ200は、該QGに隣接する他のQGのQP値を該QGの予測QP値として決定する。
【0199】
S820、ビデオデコーダ200は、QGのQPオフセットを取得する。
【0200】
本明細書において、QPオフセットは、deltaQPで表されてもよい。
【0201】
引き続き
図8を参照し、S820について、本実施例は2つの可能な実施形態を提供する。
【0202】
第1のオプション的な実施形態において、
図8に示すS820Aのように、ビデオデコーダ200は、ビットストリームに付加されたマーク情報を用いてQGのQPオフセットを決定してもよい。
【0203】
S820A、ビデオデコーダ200は、ビットストリームを解析して、QGのQPオフセットを指示するマーク情報を取得する。
【0204】
例えば、ビットストリームを取得した後、ビデオデコーダ200は、該ビットストリームを解析して、QGが位置する画像フレームのマーク情報を取得し、該マーク情報は、該QGのQPオフセット(deltaQP)を指示するために用いられる。
【0205】
第2のオプション的な実施形態において、
図8に示すS820Bのように、ビデオデコーダ200は、導出情報を用いてQGのQPオフセットを決定してもよい。
【0206】
S820B、ビデオデコーダ200は、QGの導出情報に基づいてQGのQPオフセットを決定する。
【0207】
該導出情報は、該QGの平坦度情報(flatness information)又はテクスチャ情報(texture information)、ビットストリームバッファの残りスペース、又は歪み制約情報(distortion constraint information)のうちのいずれか1つ又は複数の組み合わせであってもよい。ここで、平坦度情報又はテクスチャ情報は、QGの画像勾配を指示するために用いられ、歪み制約情報は、1つの画像フレームに含まれる複数のQGのうちのいずれか1つのQGの歪み閾値を指示し、ビットストリームバッファの残りスペースは、ビットストリームバッファ(例えば、bufferスペース)の利用可能な残りのスペースを指示するために用いられる。
【0208】
第1のケースでは、導出情報は平坦度情報又はテクスチャ情報であり、ビデオデコーダ200は、該平坦度情報又はテクスチャ情報に基づいてQGのQPオフセットを導出してもよい。例えば、ビデオデコーダ200は、現在のブロック(QG)のテクスチャ複雑度を計算し、テクスチャ複雑度が高い(例えば、テクスチャ複雑度閾値に達している)QGに対して、大きいQP(例えば、20)を使用し、テクスチャ複雑度が低い(例えば、テクスチャ複雑度閾値に達していない)QGに対して、小さいQP(例えば、5)を使用する。
【0209】
第2のケースでは、導出情報はビットストリームバッファの残りスペースであり、ビデオデコーダ200は、画像全体の全ての画素の平均ビット数BPPtotal、及び残りの符号化されていない画素の平均ビット数BPPleftを計算し、BPPleft>BPPtotalの場合、QPを減少させ、そうでない場合、QPを増加させる。ここで、BPPtotal及びBPPleftは、以下の式で取得されてもよい。
【数1】
【0210】
第3のケースでは、導出情報が歪み制約情報である場合、Dで量子化歪み(逆量子化後の再構成値と量子化前の残差との間の差)を表し、任意の行列Aについて、
【数2】
と記す。
【0211】
(1)画素領域の残差を量子化する場合、画素領域の最大歪みが△を超えないことの必要十分条件は、
【数3】
であり、これにより画素領域のQP値を導出することができる。
【0212】
(2)変換領域の残差を量子化する場合、Rで画素領域の残差を表し、U、Vで水平変換行列及び垂直変換行列で表すと、画素領域の最大歪みと変換領域の最大歪みとの間に下記式が満たされる。従って、画素領域の最大歪みが△を超えないことの十分条件は、変換領域の最大歪みが、
【数4】
を満たすことであり、これにより変換領域のQP値を導出することである。
【数5】
【0213】
引き続き
図8を参照し、本実施例において提供されるQPの取得プロセスは、以下のステップをさらに含む。
【0214】
S830、ビデオデコーダ200は、QGの予測QP値及びQPオフセットに基づいてQGのQP値を決定する。
【0215】
例えば、ビデオデコーダ200は、QGの予測QP値とQPオフセットとの和を、該QGのQP値として決定する。
【0216】
なお、S820Bで提供される第3のケースにおいて、ビデオデコーダ200がQGのQP値を取得する場合、以下のケースが存在する可能性がある。
【0217】
ビデオデコーダ200は、QGの参照QP値に基づいて対応する予測歪みを決定し、予測歪みが歪み閾値以下である場合、該参照QP値をQGのQP値として決定し、予測歪みが歪み閾値より大きい場合、歪み閾値によって決定されたQP値をQGのQP値として決定する。
【0218】
例1において、導出情報が歪み制約情報のみを含む場合、該参照QP値は、S810で決定されたQGの予測QP値である。
【0219】
例2において、導出情報が歪み制約情報とテクスチャ情報(又は平坦度情報)とを含む場合、該参照QP値は、テクスチャ情報(又は平坦度情報)によって決定されたdeltaQPとS810で決定された予測QP値とを加算して得られたQP値であってもよい。
【0220】
例3において、導出情報が歪み制約情報とビットストリームバッファの残りスペースとを含む場合、該参照QP値は、ビットストリームバッファの残りスペースによって決定されたdeltaQPとS810で決定された予測QP値とを加算して得られたQP値であってもよい。
【0221】
即ち、上記の導出情報は、QGを決定するためのdeltaQPであってもよいし、QGを直接決定するための実際の符号化されたQP値であってもよく、導出情報の具体的な使用プロセスは、ビデオ符号化及び復号におけるQP量子化/逆量子化のニーズに応じて決定されてもよく、上記の3つのケース及び3つの例は、本発明に対する限定として理解されるべきではない。
【0222】
前述の例1~例3は、本実施例がビデオデコーダ200が導出情報を用いてQGのQP値を決定することを説明するための例に過ぎず、本発明に対する限定として理解されるべきではなく、他の例において、導出情報は、歪み制約情報、テクスチャ情報(又は平坦度情報)及びビットストリームバッファの残りスペースを同時に含んでもよく、本発明はこれについて限定しない。
【0223】
なお、上記の色度/輝度QP値、直接符号化/予測符号化、ビットストリーム付加/導出情報解析は、本発明において提供されるいくつかの例に過ぎず、本発明に対する限定として理解されるべきではない。
【0224】
1つのオプション的な実施形態において、1つの画像フレームは少なくとも第1部分のCUと第2部分のCUとを含み、第1部分のCUと第2部分のCUとは重なる領域を有さず、第1部分のCUと第2部分のCUとのQP値の取得方法が異なる。例えば、第1部分のCUのQP値の取得方式はビットストリームのマーク情報に付加することであり、第2部分のCUのQP値の取得方式はビデオデコーダ200によって導出することである。
【0225】
具体的に、上記のビデオデコーダ200が1つの画像フレームの複数のQP値を決定するプロセスは、第1に、ビデオデコーダ200がビットストリームを解析して1つの画像フレームのマーク情報を取得するプロセスであって、該マーク情報は第1部分のCUのQPオフセットを含む、プロセスと、ビデオデコーダ200がマーク情報に基づいて第1部分のCUのQP値を決定するプロセスと、第2に、ビデオデコーダ200が第2部分のCUについて、第2部分のCUの予測QP値を取得するプロセスと、ビデオデコーダ200が第2部分のCUの予測QP値及び導出情報に基づいて、第2部分のCUのQP値を決定するプロセスとを含んでもよい。導出情報の関連内容については、前述のQGの導出情報に対する説明に記載されているので、その中のQGをCUに置き換えればよく、ここでは繰り返さない。
【0226】
例えば、ビデオデコーダ200は、1枚の画像を複数の領域に分割し、異なる領域のCUに対して異なるQP処理方式を使用する。画像レベルで異なる領域の基準QP値を伝送し、CUレベルで異なる領域のマーク情報を伝送する。異なる領域のCUレベルQPは、ビットストリーム伝送の方式によって取得されてもよく、復号側導出の方式によって取得されてもよい。例えば、ビデオデコーダは、画像を関心領域(region of interset、ROI)と非ROI領域とに分割し、ROI領域のCU(第1部分のCU)について、ビットストリーム伝送の方式(例えば、上記のマーク情報)によってQP値を取得し、非ROI領域のCU(第2部分のCU)について、復号側導出(例えば、上記の導出情報)の方式によってQP値を取得する。
【0227】
1つのオプション的な実施形態として、1つの画像フレームの1つのCUは、複数のQGを含んでもよく、これら複数のQGは、部分的にQP量子化されてもよく、全てQP量子化されてもよい。
【0228】
例えば、S520のプロセスにおいて、1つの画像フレームの1つのCUに含まれる全てのQGが符号化プロセスにおいて量子化された場合、ビデオデコーダ200は、まず、該1つの画像フレームの1つのCUに含まれる全てのQGの走査順序を決定してもよい。そして、ビデオデコーダ200は、全てのQGの各QGについて、走査順序に従って各QGのQP値を取得する。ここで、走査順序は、上から下、左から右、ジグザグ又は逆ジグザグの順序のうちのいずれか1つを含む。
【0229】
具体的に、一部のQGのみを量子化し、他のQGを量子化しない場合、量子化されたQGの位置をマークし、これらのQGに対応するQPを取得する必要がある。例えば、これらのQGのそれぞれについて1つのQPオフセットを符号化してもよい。
【0230】
また、例えば、S520のプロセスにおいて、1つの画像フレームの1つのCUに含まれる一部のQGが符号化プロセスにおいて量子化された場合、ビデオデコーダ200は、ビットストリームを解析して1つの画像フレームの1つのCU内のマークされた1つ又は複数のQGを決定してもよく、復号プロセスにおいて該1つ又は複数のマークされたQGはQP逆量子化される必要があり、さらに、ビデオデコーダ200は、マークされた1つ又は複数のQGの各QGについて、各QGのQP値を取得する。
【0231】
具体的に、全てのQGを量子化する場合、ある走査順序に従って各QGに対応するQPを順次取得する必要があり、その走査順序は分割方式に関連し、上から下、左から右、ジグザグ又は逆ジグザグの順序であってもよい。例えば、これらのQGのそれぞれについて1つのQPオフセットを符号化してもよい。
【0232】
このように、1つの画像フレームの1つのCU内の全てのQGについて、ビットストリームに付加されるマーク情報を用いて該全てのQGのQP量子化方式(一部量子化又は全部量子化)を区別することができ、ビデオデコーダが無差別にQP量子化を行うことを回避し、ビデオデコーダがQP量子化を行うために必要な計算リソース及び画像歪みを低減し、ビデオの復号効率及び正確性を向上させる。
【0233】
また、1つのQGが1つの画像フレーム内の1つの画素点のみを含む場合、1つの画素点は1つのQP値に対応し、1つの画像フレームに含まれる全ての画素点のうちの少なくとも2つの画素点のQP値が異なるとき、該画素点のQP値量子化プロセス(ポイント予測モード)はポイントバイポイント量子化技術を使用してもよく、例えば、該ポイントバイポイント量子化技術は、ビデオデコーダ200が現在の画素点の周囲の再構成済み画素情報に基づいて現在の画素点のQP値を適応的に調整するプロセスを含む。ここで、再構成済み画素情報は、画素値、平坦度情報又はテクスチャ情報、背景輝度、コントラストなどを含むが、これらに限定されない。
【0234】
なお、適応的ポイントバイポイント量子化技術は、QGに適用されてもよいし、QG分割を行わないCUに適用されてもよい。ポイントバイポイント量子化技術の特徴は、1つの画像フレーム内の各画素点が異なるQP値を使用することを許可することであり、QP値量子化の粒度を画素レベルまで精細化することに相当する。
【0235】
ポイントバイポイント量子化技術の1つの実施形態は、QP
predで現在のCU又はQGのQP値を表し、QP
JND≧0で人間の目がちょうど知覚できる歪み(Just Noticeable Distortion、JND)に対応するQP値を表し、offset>0でQPオフセット値(ビットストリームで伝送されてもよいし、予め設定されてもよい)を表すと、現在の画素のQP値が以下のように調整される。
【数6】
ここで、閾値2>閾値1である。又は、
【数7】
である。
【0236】
上記の2つの現在の画素のQP値の決定方式は、本実施例において提供される例に過ぎず、本発明に対する限定として理解されるべきではない。
【0237】
このように、ビデオデコーダがポイントバイポイント量子化技術を使用することによって、画像フレームの圧縮率を変えることなく、画像フレームの主観品質を大幅に向上させ、画像フレームの歪みを低減することができる。
【0238】
以下、画像フレーム内の画素点のQP量子化プロセスを説明するための1つの可能な実施形態を提供する。
【0239】
例示的に、ビデオデコーダ200は、1つの画素点の予測QP値を取得し、1つの画素点の予測QP値及び導出情報に基づいて、1つの画素点のQP値を決定する。
【0240】
1つの可能なケースでは、1つの画素点の予測QP値は、該画素点が位置するCU又はQGのQP値である。別の可能なケースでは、1つの画素点の予測QP値は、該画素点の周囲の1つ又は複数の再構成済み画素点のQP値に基づいて導出され、導出方法は、平均値(例えば、複数の画素点のQP値の平均値)、中央値(例えば、複数の画素点のQP値の中央値)、又は最頻値(例えば、複数の画素点のQP値のうち、出現頻度が最も高いQP値)のうちの少なくとも1つを計算することを含む。
【0241】
上記の画素点の導出情報は、該画素点の周囲の1つ又は複数の再構成済み画素点の情報であってもよい。ここで、該再構成済み画素点の情報は、画素値、平坦度情報又はテクスチャ情報、背景輝度、コントラストのうちのいずれか1つ又は複数の組み合わせを含む。なお、前述のいくつかの情報は、本実施例において提供される例に過ぎず、本発明に対する限定として理解されるべきではない。
【0242】
また、上記の「周囲」の意味は、QP値が決定される画素点の近傍画素点であると理解してもよく、ここで、いくつかの可能な例を提供して説明する。
図9に示すように、
図9は本発明による画素点の分布の概略図であり、
図9における(A)は、現在の画素点を中心とする正方形領域の分割の例を示し、ここで2つの可能なケースを提供し、ケース1において、再構成済み画素点は、
図9の(A)に示す周囲画素点1のような、現在の画素点を中心とする、辺の長さが3の正方形領域内の画素点であり、ケース2において、再構成済み画素点は、
図9の(A)に示す周囲画素点2のような、現在の画素点を中心とする、辺の長さが5の正方形領域内の画素点である。
【0243】
図9における(B)は、現在の画素点を中心とする菱形領域の分割の例を示し、ここで2つの可能なケースを提供し、ケース1、再構成済み画素点は、
図9の(B)に示す周囲画素点1のような、現在の画素点を中心とする、対角線の長さが3の菱形領域内の画素点であり、ケース2、再構成済み画素点は、
図9の(B)に示す周囲画素点2のような、現在の画素点を中心とする、対角線の長さが5の菱形領域内の画素点である。
【0244】
図9は、本実施例が現在の画素点の周囲の再構成済み画素点を説明するための例に過ぎず、本発明に対する限定として理解されるべきではない。他のいくつかの可能な例では、現在の画素点の周囲の再構成済み画素点は、現在の画素点に上下に隣接するか、又は左右に隣接する1つ又は2つの画素点であってもよい。
【0245】
1つのオプション的な実施形態として、1つの画素点の予測QP値及び導出情報に基づいて、1つの画素点のQP値を決定するステップは、1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報に基づいて、画素点の指示情報を決定するステップと、指示情報が第1の閾値以下であり、且つ予測QP値が人間の目がちょうど知覚できる歪みに対応するQP値以上である場合、人間の目がちょうど知覚できる歪みに対応するQP値を画素点のQP値として決定するステップと、を含む。
【0246】
第1の閾値は、予め設定されてもよく、ビデオ符号化及び復号の圧縮率又は歪み率要件に基づいて決定されてもよい。また、第1閾値は、ユーザの入力情報に基づいて決定されてもよい。
【0247】
なお、人間の目がちょうど知覚できる歪み対応するQP値は画像レベル又はCUレベル情報である。
【0248】
例えば、人間の目がちょうど知覚できる歪みに対応するQP値はビットストリームから解析して得られ、例えば、該ビットストリームに人間の目がちょうど知覚できる歪みに対応するQP値、例えば20が付加されている。
【0249】
また、例えば、人間の目がちょうど知覚できる歪みに対応するQP値は周囲の再構成済みCUの平坦度情報又はテクスチャ情報、背景輝度、コントラスト情報に基づいて導出される。QP値を導出するプロセスについては、
図9の関連内容に記載されているので、ここでは繰り返さない。
【0250】
また、人間の目がちょうど知覚できる歪みに対応するQP値は、ビデオエンコーダ又はビデオデコーダによって予め設定された値、例えば15であってもよい。即ち、人間の目がちょうど知覚できる歪みに対応するQP値は、ビットストリームのマーク情報に付加されるだけでなく、ビデオエンコーダ又はビデオデコーダがビデオ符号化/復号中に解析したものであってもよいし、予め設定されたQP値であってもよい。本実施例では、人間の目がちょうど知覚できる歪みに対応するQP値を現在の画素点のQP値決定に導入することによって、各画素点が人間の目がちょうど知覚できる歪みに対応する判断情報を満たし、画像歪みを低減し、画像の主観品質を向上させる。
【0251】
ここで、1つの可能な具体例を提供して画素点のQP値決定プロセスを説明し、表3に示すように、表3は現在の画素点の区間二分割のQP値決定の概略を示す。
【表1】
【0252】
ここで、offset>0は、QPオフセット値(ビットストリームで伝送されてもよいし、予め設定されてもよい)である。
【0253】
方式1:指示情報が閾値以下である場合、QPpredとQPJNDとのうちの小さい方を現在の画素点のQP値として決定し、指示情報が閾値より大きい場合、画素点の予測QP値(QPpred)を現在の画素点のQP値として決定する。
【0254】
方式2:指示情報が閾値以下である場合、QPpredとQPJNDとのうちの小さい方を現在の画素点のQP値として決定し、指示情報が閾値より大きい場合、QPpredとQPオフセット(offset)との和を現在の画素点のQP値として決定する。
【0255】
方式3:指示情報が閾値以下であるとき、QPpredを現在の画素点のQP値として決定し、指示情報が閾値より大きい場合、画素点のQPpredとQPオフセット(offset)との和を現在の画素点のQP値として決定する。
【0256】
なお、上記の例及び表3は、本実施例において提供される現在の画素点のQP値の可能な取得方式に過ぎず、本発明に対する限定として理解されるべきではない。
【0257】
このように、人間の目がちょうど知覚できる歪みに対応するQP値を現在の画素点のQP値決定プロセスに導入することによって、各画素点が人間の目がちょうど知覚できる歪みに対応する判断情報を満たし、画像歪みを低減し、画像の主観品質を向上させる。
【0258】
ビデオデコーダ200が1つの画像フレームのQP値を取得した後、上記のS530について、本発明は1つの可能な実施形態を提供し、
図10は、本発明による画像フレーム復号の概略フローチャートであり、S530は、以下のステップS1010~S1030を含んでもよい。
【0259】
S1010、複数のQP値の各QP値について、QP値に対応する量子化ステップ(Qstep)を取得する。
【0260】
ビデオデコーダは、QP値に基づいて、数式導出とテーブルルックアップとのうちの少なくとも1つによってQstepを取得してもよく、以下、4つの可能な実現方法を提供する。
【0261】
方法1:Qstep=2×QP+1。
【0262】
方法2:octaveでQPのビットオーダー(bit order)を表し、即ちQPの1octaveが増加するたびに、Qstepが2倍になり、通常、octaveは6又は8に選ばれる。offsetで1つの整数オフセット値を表すと、
【数8】
となる。
【0263】
方法3:octaveでQPのビットオーダーを表し、即ちQPの1octaveが増加するたびに、Qstepが2倍になり、通常、octaveは6又は8に選ばれる。offsetで1つの整数オフセット値を表し、
【数9】
でそれぞれ切り上げ及び切り捨てを表す。
【数10】
とすると、量子化ステップは、
【数11】
となる。
【0264】
方法4:以下、量子化と逆量子化の例を提供する。
【数12】
ここで、cは量子化される残差係数(変換領域又は画素領域)であり、lは量子化後のレベル値であり、c’は逆量子化後の再構成値であり、Qstepは量子化ステップであり、f∈[0,1)は丸めを制御するパラメータであり、[0,1-f)は量子化デッドゾーン(レベル値が0である区間)である。
【0265】
f∈[0,1)で丸めを制御するパラメータを表し、{c
i}は現在のQG又はCU内の全ての量子化される残差係数であり、Tは方法3の式で取得でき、
【数13】
とする。
【0266】
T<Mの場合、Qstepは下記の式で与えられ、そうでない場合、量子化係数と再構成値はいずれもゼロである。
【数14】
【0267】
該方法4の1つの可能な実施形態は、a=f*2T-M又はa=2T-Mとすることであり、Mはビットストリームで伝送されてもよく、ビット深度として直接取得されてもよい。
【0268】
画素領域の残差を量子化する場合、方法3では、量子化係数を「M-T」ビットで表現できるようにするためにclip操作を必要とするが、方法4の量子化係数はclipなしで自然に「M-T」ビットで表現できる。
【0269】
また、JPEG-XSにおける均一量子化の方式は、方法4においてf=0.5とし、Mをビットストリームで伝送する。
【0270】
なお、QP値が大きいほど、Qstepが大きくなり、量子化が粗くなり、量子化歪みが大きくなり、係数符号化のビットレートが小さくなる。パラメータfは量子化デッドゾーンの長さに関連し、fが小さいほど、量子化デッドゾーンが長くなり、量子化後のレベル値がゼロ点に近づく。f=0.5の場合、上記の方法4で提供される量子化及び逆量子化の式は、四捨五入に相当し、量子化歪みは最小である。f<0.5の場合、fが小さいほど、量子化歪みが大きくなり、係数符号化のビットレートが小さくなる。H.265では、I画像f=1/3とし、B/P画像f=1/6とする。
【0271】
引き続き
図8を参照し、上記のS530は、以下のステップをさらに含んでもよい。
【0272】
S1020、QP値に対応するQGに含まれるレベル値を取得する。
【0273】
S1030、選択された量子化器の組み合わせに基づいて、QGのレベル値を逆量子化する。
【0274】
該量子化器の組み合わせは、1つ又は複数の量子化器を含み、該量子化器は、均一量子化器又は非均一量子化器である。
【0275】
例えば、均一量子化器とは、均一スカラ量子化器(uniform scalar quantizer)を指し、その量子化又は逆量子化の式は、上記のS1010の方法4において提供される量子化及び逆量子化の式を参照することができ、パラメータf∈[0,1)は、以下のように設定される。
【0276】
方法1:fを0.5又は他の固定値にする。
【0277】
方法2:fは、QP値、予測モード及び変換を行うか否かに基づいて適応的に決定することができる。
【0278】
また、例えば、非均一量子化器とは、非均一スカラ量子化器(non-uniform scalar quantizer)を指し、量子化レベル値と、量子化区間と、逆量子化の再構成値との間の対応関係は、テーブルルックアップにより取得されてもよい。1つの可能な実施形態を以下の表1に示す。
【表2】
【0279】
ここで、0≦x0<x1<x2<x3<…であり、再構成値と量子化区間は不均一であり、再構成値は、位置する量子化区間の確率重心(probability centroid)である。
【0280】
量子化器の組み合わせは、1つの非均一スカラ量子化器を使用してもよいし、複数の非均一スカラ量子化器を使用してもよい。
【0281】
例えば、量子化器の組み合わせは、ビットストリームに付加されたマーク情報によって決定される。
【0282】
また、例えば、量子化器の組み合わせは、QG内の残差係数の分布によって決定される。例えば、ビデオデコーダは、どの量子化器を使用するかを適応的に選択し、選択の根拠はモード情報又は変換情報であってもよく、モード情報又は変換情報はQG内の残差係数の分布に関連する。
【0283】
上記のS1030について、QGのレベル値を逆量子化することは、以下のプロセスを含んでもよい。
【0284】
まず、QGの分割領域タイプを決定する。
【0285】
次に、QGの分割領域タイプが変換領域である場合、復号側の行列テンプレートライブラリから、QGのパラメータ情報にマッチングする量子化行列を選択する。
【0286】
行列テンプレートライブラリは、複数のタイプの量子化行列テンプレートを含み、該パラメータ情報は、QGのサイズ、QGが位置するCUのサイズ、輝色度チャネル情報及び平坦度情報のうちのいずれか1つ又は複数の組み合わせを含む。
【0287】
最後に、QGの量子化行列を用いてQGにおけるレベル値を逆量子化してQGの残差係数を取得する。
【0288】
画素領域内の異なる位置の残差係数は同様に重要であるため、量子化行列を使用しない。変換領域の係数は低周波数係数と高周波数係数に分けられ、量子化行列によって、高低周波数係数が異なる量子化ステップを使用するようになり、一定の圧縮率を保証しながら画像の主観品質を向上させることができる。
【0289】
量子化行列の要素分布には、特定のテンプレートがあり、本発明では、異なるサイズの符号化ブロックが異なる量子化行列テンプレートを使用することが可能であり、大きいサイズの量子化行列は、1つ又は複数の小さいサイズの量子化行列をアップサンプリングすることによって取得されてもよい。行列テンプレートライブラリに含まれる量子化行列テンプレートは、離散コサイン変換(DCT)、離散サイン変換(DST)、整数変換又は離散ウェーブレット変換(DWT)のうちのいずれか1つ又は複数の変換方式によって取得されてもよい。
図11に示すように、
図11は本発明による量子化行列テンプレートの概略図であり、量子化行列テンプレートは具体的に以下を含む。
【0290】
(1)水平及び垂直方向がいずれもDCT/DST変換である場合(
図11における(1)を参照)、同じ逆対角線(anti-diagonal)上の係数は同じ周波数を有し、同じ量子化ステップを採用し、異なる逆対角線上の係数は異なる量子化ステップを採用してもよい。
【0291】
(2)水平及び垂直方向がいずれもウェーブレット変換である場合(
図11における(2)を参照)、四分木テンプレートを採用し、4つのサブブロックはそれぞれ低/中/高周波に対応し、同じ周波数帯域のサブブロックは同じ量子化ステップを採用し、異なる周波数帯域のサブブロックは異なる量子化ステップを採用してもよい。
【0292】
(3)垂直方向がDCT/DST変換、水平方向がウェーブレット変換である場合(
図11における(3)を参照)、まず垂直方向に均等に二分割し、左側のサブブロックはウェーブレット変換の低周波であり、右側のサブブロックはウェーブレット変換の高周波である。各サブブロック内部の上側はDCT/DST変換の低周波であり、下側はDCT/DST変換の高周波である。行列要素A’/B’/C’/D’を、それぞれA/B/C/Dに同じオフセット値を加えたものにしてもよい。
【0293】
(4)水平方向がDCT/DST変換、垂直方向がウェーブレット変換である場合(
図11における(4)を参照)、まず水平方向に均等に二分割し、上側のサブブロックはウェーブレット変換の低周波であり、下側のサブブロックはウェーブレット変換の高周波である。各サブブロック内部の左側はDCT/DST変換の低周波であり、右側はDCT/DST変換の高周波である。行列要素A’/B’/C’/D’を、それぞれA/B/C/Dに同じオフセット値を加えたものにしてもよい。
【0294】
オプションで、行列テンプレートライブラリに含まれる複数のタイプの量子化行列テンプレートは、平坦ブロックテンプレート(flat block templates)とテクスチャブロックテンプレート(texture block templates)とを含んでもよい。平坦ブロックテンプレートにおける、周波数が周波数閾値より高い残差係数のQstepは、平坦ブロックテンプレートにおける、周波数が周波数閾値に達していない残差係数のQstep以上である。テクスチャブロックテンプレートにおける、周波数が周波数閾値より高い残差係数のQstepは、テクスチャブロックテンプレートにおける、周波数が周波数閾値に達していない残差係数のQstep以下である。
【0295】
例えば、ビデオデコーダは、平坦度情報に基づいて現在のブロックを平坦ブロック又はテクスチャブロックとしてマークし、テクスチャマスキング効果(texture masking effect)に従って量子化行列テンプレートを設計する。(1)、現在のブロック(QG)が平坦ブロックである場合、量子化行列における高周波数係数のQstepは低周波数係数のQstep以上であり、人間の目は平坦ブロックの低周波数歪みに対して高周波数歪みより敏感であるため、高周波数係数はより大きな損失を許容する。(2)現在のブロック(QG)がテクスチャブロックである場合、量子化行列における高周波数係数のQstepは低周波数係数のQstep以下であり、人間の目はテクスチャブロックの高周波数歪みに対して低周波数歪みより敏感であるため、テクスチャブロックの高周波数係数を優先的に保護する。
【0296】
即ち、画像復号方法では、ビデオデコーダは、まずQGのQPとQstepとを取得し、ビットストリームからレベル値を解析し、次に量子化器を適応的に選択し、レベル値を逆量子化し、再構成値を得ることによって、画像フレームの復号を実現する。
【0297】
結論として、1つのCU内の全ての残差係数が同じQP値を使用することによって引き起こされる大きい画像歪みと比較して、本実施例において提供されるビデオ画像の復号プロセスでは、1つのCUは複数のQGに分割されてもよく、各QG内の1つ又は複数の残差係数は1つのQP値を共有するため、ビデオデコーダは、画像フレームに対応する1つ又は複数のCUに対してより細かい粒度のQP決定を行うことができ、一定の圧縮率を保証しながら、画像フレームの復号歪みを低減し、ビデオ画像復号の真実性及び正確性を向上させる。
【0298】
それに対応して、画像符号化方法において、ビデオエンコーダは、まずQGのQP、Qstep及び残差係数を取得し、量子化器を適応的に選択し、残差係数を量子化し、最後に量子化係数を調整し、最終的なレベル値を得ることによって、画像フレームの符号化を実現する。
【0299】
図2に示すビデオエンコーダ100に基づいて、本発明は、画像符号化方法をさらに提供し、
図12に示すように、
図12は、本発明による画像符号化方法の概略フローチャートであり、該画像符号化方法は、ビデオエンコーダ100によって実行されてもよいし、ビデオエンコーダ100の機能をサポートする符号化側(例えば、
図1に示す符号化側10)によって実行されてもよく、ここでは、ビデオエンコーダ100が符号化方法を実現することを例として説明し、該画像符号化方法は、以下のステップを含む。
【0300】
S1210、ビデオエンコーダ100は、1つの画像フレームを1つ又は複数のCUに分割する。
【0301】
S1220、ビデオエンコーダ100は、1つの画像フレームの複数のQP値を決定する。
【0302】
一例では、1つのCUは複数のQGを含み、1つのQGは1つのQP値に対応する。
【0303】
別の例では、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、複数の画素点のうちの少なくとも2つの画素点のQP値が異なる。
【0304】
S1230、ビデオエンコーダ100は、複数のQP値に基づいて1つの画像フレームを符号化する。
【0305】
符号化方法におけるQP値の量子化については、上記の
図4~
図11の復号方法における対応するプロセスに記載されているので、ここでは繰り返さない。
【0306】
このように、1つのCU内の全ての残差係数が同じQP値を使用することによって引き起こされる大きい画像歪みと比較して、本実施例において提供されるビデオ画像の符号化プロセスでは、1つのCUは複数のQG(又は画素点)に分割されてもよく、各QG内の1つ又は複数の残差係数は1つのQP値を共有するため、ビデオエンコーダは、画像フレームに対応する1つ又は複数のCUに対してより細かい粒度のQP決定を行うことができ、一定の圧縮率を保証しながら、画像フレームの符号化歪みを低減し、ビデオ画像符号化の真実性及び正確性を向上させる。
【0307】
なお、上記の実施例における機能を実現するために、ビデオエンコーダ/ビデオデコーダは、各機能を実行するための対応するハードウェア構造及び/又はソフトウェアモジュールを含む。当業者であれば容易に理解できるように、本発明に開示された実施例において説明された各例のユニット及び方法のステップを参照して、本発明は、ハードウェア、又はハードウェアとコンピュータソフトウェアとの組み合わせの形で実現され得る。ある機能がハードウェアで実行されるか、コンピュータソフトウェアがハードウェアを駆動する方式で実行されるかは、技術案の特定の適用シナリオ及び設計制約条件に依存する。
【0308】
図13は、本発明による復号装置の概略構造図であり、該復号装置1300は、ビットストリーム解析ユニット1310と、QP決定ユニット1320と、画像復号ユニット1330とを含む。復号装置1300は、上記の復号方法の実施例におけるビデオデコーダ又は復号側の機能を実施するために用いられてもよく、従って、上記の復号方法の実施例の有益な効果を実現することもできる。本発明の実施例において、該復号装置1300は、
図1に示す復号側20又はビデオデコーダ200であってもよく、
図3に示すビデオデコーダ200であってもよく、復号側20又はビデオデコーダ200に適用されるモジュールであってもよい。
【0309】
ビットストリーム解析ユニット1310、QP決定ユニット1320、及び画像復号ユニット1330は、
図4~
図11におけるいずれかの実施例において提供される復号方法を実施するために用いられる。上記のビットストリーム解析ユニット1310、QP決定ユニット1320、及び画像復号ユニット1330に関するより詳細な説明は、
図4~
図11に示す方法の実施例における関連する説明を直接参照することによって直接得ることができるため、ここでは繰り返さない。
【0310】
図14は、本発明による符号化装置の概略構造図であり、該符号化装置1400は、画像分割ユニット1410と、QP決定ユニット1420と、画像符号化ユニット1430とを含む。符号化装置1400は、上記の復号方法の実施例におけるビデオエンコーダ又は符号化側の機能を実施するために用いられてもよく、従って、上記の符号化方法の実施例の有益な効果を実現することもできる。本発明の実施例において、該符号化装置1400は、
図1に示す符号化側10又はビデオエンコーダ100であってもよく、
図2に示すビデオエンコーダ100であってもよく、符号化側10又はビデオエンコーダ100に適用されるモジュールであってもよい。
【0311】
画像分割ユニット1410、QP決定ユニット1420、及び画像符号化ユニット1430は、
図12において提供される符号化方法を実施するために用いられる。上記の画像分割ユニット1410、QP決定ユニット1420、及び画像符号化ユニット1430に関するより詳細な説明は、
図4~
図12に示す方法の実施例における関連する説明を直接参照することによって直接得ることができるため、ここでは繰り返さない。
【0312】
本発明は電子デバイスをさらに提供し、
図15に示すように、
図15は本発明による電子デバイスの概略構造図であり、電子デバイス1500はプロセッサ1510とインタフェース回路1520とを含む。プロセッサ1510とインタフェース回路1520とは互いに結合される。なお、インタフェース回路1520は、トランシーバ又は入出力インタフェースであってもよい。オプションで、電子デバイス1500は、プロセッサ1510によって実行される命令を記憶するため、又はプロセッサ1510が命令を実行するために必要な入力データを記憶するため、又はプロセッサ1510が命令を実行した後に生成されるデータを記憶するためのメモリ1530をさらに含んでもよい。
【0313】
該電子デバイス1500は、プロセッサ1510と通信インタフェース1520とを含む。プロセッサ1510と通信インタフェース1520とは互いに結合される。なお、通信インタフェース1520は、トランシーバ又は入出力インタフェースであってもよい。オプションで、電子デバイス1500は、プロセッサ1510によって実行される命令を記憶するため、又はプロセッサ1510が命令を実行するために必要な入力データを記憶するため、又はプロセッサ1510が命令を実行した後に生成されるデータを記憶するためのメモリ1530をさらに含んでもよい。
【0314】
電子デバイス1500が
図4~
図11に示す方法を実施するために用いられる場合、プロセッサ1510及びインタフェース回路1520は、上記のビットストリーム解析ユニット1310、QP決定ユニット1320、及び画像復号ユニット1350の機能を実行するために用いられる。
【0315】
電子デバイス1500が
図12に示す方法を実施するために用いられる場合、プロセッサ1510及びインタフェース回路1520は、上記の画像分割ユニット1410、QP決定ユニット1420、及び画像符号化ユニット1430の機能を実行するために用いられる。
【0316】
本発明の実施例では、上記の通信インタフェース1520、プロセッサ1510、及びメモリ1530の間の具体的な接続媒体を限定しない。本発明の実施例では、
図15において、通信インタフェース1520、プロセッサ1510、及びメモリ1530は、バス1540を介して接続され、バスは、
図15において太線で示され、他の構成要素間の接続方式は、例示的なものに過ぎず、これについて特に限定しない。前記バスは、アドレスバス、データバス、制御バスなどに分けることができる。表現を容易にするために、
図15には、1本の太線のみが示されているが、バスが1本のみ、又はバスの種類が1種類のみであることを意味するものではない。
【0317】
メモリ1530は、本発明の実施例において提供される復号方法又は符号化方法に対応するプログラム命令/モジュールのようなソフトウェアプログラム及びモジュールを記憶するために用いられてもよく、プロセッサ1510は、メモリ1530に記憶されたソフトウェアプログラム及びモジュールを実行することによって、様々な機能アプリケーション及びデータ処理を実行する。該通信インタフェース1520は、他のデバイスとのシグナリングやデータの通信に用いられてもよい。本発明では、該電子デバイス1500は、複数の通信インタフェース1520を有してもよい。
【0318】
なお、本発明の実施例におけるプロセッサは、中央処理装置(central processing Unit、CPU)、ニューラル処理ユニット(neural processing unit、NPU)、又はグラフィック処理ユニット(graphic processing unit、GPU)であってもよく、他の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、又は他のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェアコンポーネント、又はそれらの任意の組み合わせであってもよい。汎用プロセッサは、マイクロプロセッサであってもよく、任意の従来のプロセッサであってもよい。
【0319】
本発明の実施例における方法のステップは、ハードウェアによって実現されてもよく、プロセッサがソフトウェア命令を実行することによって実現されてもよい。ソフトウェア命令は、対応するソフトウェアモジュールから構成されてもよく、ソフトウェアモジュールは、ランダムアクセスメモリ(random access memory、RAM)、フラッシュメモリ、読み取り専用メモリ(read-only memory、ROM)、プログラマブル読み取り専用メモリ(programmable ROM、PROM)、消去可能プログラマブル読み取り専用メモリ(erasable PROM、EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(electrically EPROM、EEPROM)、レジスタ、ハードディスク、リムーバブルハードディスク、CD-ROM、又は当技術分野で周知の任意の他の形態の記憶媒体に記憶されてもよい。例示的な記憶媒体は、プロセッサが該記憶媒体から情報を読み取り、該記憶媒体に情報を書き込むことができるように、プロセッサに結合される。もちろん、記憶媒体は、プロセッサの構成要素であってもよい。プロセッサ及び記憶媒体は、ASIC内に配置されてもよい。また、該ASICは、ネットワークデバイス又は端末デバイス内に配置されてもよい。もちろん、プロセッサ及び記憶媒体は、独立したコンポーネントとしてネットワークデバイス又は端末デバイス内に存在してもよい。
【0320】
上記の実施例において、その全部又は一部は、ソフトウェア、ハードウェア、ファームウェア又はそれらの任意の組み合わせによって実現してもよい。ソフトウェアを用いて実現する場合、その全部又は一部はコンピュータプログラム製品の形態で実現されてもよい。前記コンピュータプログラム製品は、1つ又は複数のコンピュータプログラム又は命令を含む。前記コンピュータプログラム又は命令がコンピュータ上でロードされ、実行されると、本発明の実施例に記載のプロセス又は機能の全部又は一部が実行される。前記コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、ネットワークデバイス、ユーザ機器、又は他のプログラマブル装置であってもよい。前記コンピュータプログラム又は命令は、コンピュータ可読記憶媒体に記憶されてもよく、又は1つのコンピュータ可読記憶媒体から他のコンピュータ可読記憶媒体に伝送されてもよく、例えば、前記コンピュータプログラム又は命令は、1つのウェブサイト、コンピュータ、サーバ又はデータセンターから有線又は無線で他のウェブサイト、コンピュータ、サーバ又はデータセンターに伝送されてもよい。前記コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の利用可能な媒体、又は1つもしくは複数の利用可能な媒体を集積したサーバやデータセンターなどのデータ記憶デバイスであってもよい。前記利用可能な媒体は、フロッピーディスク、ハードディスク、又は磁気テープなどの磁気媒体であってもよく、又はデジタルビデオディスク(digital video disc、DVD)などの光学媒体であってもよく、又はソリッドステートドライブ(solid state drive、SSD)などの半導体媒体であってもよい。
【0321】
本発明の各実施例において、特別な説明及び論理的な矛盾がなければ、異なる実施例間の用語及び/又は説明は一貫しており、互いに引用することができ、異なる実施例における技術的特徴は、その内部の論理関係に従って組み合わせて新しい実施例を形成することができる。本発明において、「少なくとも1つ」は1つ又は複数を指し、「複数」は2つ以上を指す。「及び/又は」は、関連対象の関連関係を説明し、3種類の関係が存在してもよいことを表し、例えば、A及び/又はBは、Aが単独で存在する場合、AとBが同時に存在する場合、Bが単独で存在する場合を表すことができ、A、Bは単数又は複数であってもよい。本発明の文字による説明において、文字「/」は、一般的に、前後の関連対象が「又は」の関係であることを表し、本発明の式において、文字「/」は、前後の関連対象が「除算」の関係であることを表す。
【0322】
なお、本発明の実施例に関わる様々な数字の番号は、説明の便宜のために付けられたものに過ぎず、本発明の実施例の範囲を限定するためのものではない。上記の各プロセスの番号の大きさは、実行順序を意味するものではなく、各プロセスの実行順序は、その機能及び内部ロジックによって決定されるべきである。
【符号の説明】
【0323】
1300 復号装置
1310 ビットストリーム解析ユニット
1320 QP決定ユニット
1330 画像復号ユニット
1400 符号化装置
1410 画像分割ユニット
1420 QP決定ユニット
1430 画像符号化ユニット
1500 電子デバイス
1510 プロセッサ
1520 通信インタフェース
1530 メモリ
【手続補正書】
【提出日】2024-07-10
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0010
【補正方法】変更
【補正の内容】
【0010】
1つのオプション的な実施形態において、前記1つの画像フレームの複数のQP値を決定する前に、前記方法は、第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップをさらに含み、前記第1のルールは分割領域と分割方式とを含み、前記分割領域は画素領域であり、前記分割方式は均一分割を含む。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0040
【補正方法】変更
【補正の内容】
【0040】
第2の態様によれば、本発明は画像復号方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる復号側に適用されてもよく、前記方法は復号側によって実行され、前記方法は、ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数のCUを含む、ステップと、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なり、1つの画素点のQP値は、現在の画素点の周囲の再構成済み画素情報に基づいて適応的に調整することによって決定される、ステップと、前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0042
【補正方法】変更
【補正の内容】
【0042】
別のオプション的な実施形態において、前記1つの画素点の予測QP値は、前記1つの画素点が位置するCU又はQGのQP値であり、又は前記1つの画素点の周囲の1つ又は複数の再構成済み画素点のQP値に基づいて導出され、導出方法は、平均値、中央値、又は最頻値のうちの少なくとも1つを計算することを含む。1つの実施形態において、QGはCB(coding block、コーディングブロック)のサブブロックである。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0043
【補正方法】変更
【補正の内容】
【0043】
別のオプション的な実施形態において、前記再構成済み画素点は、前記1つの画素点を中心とする正方形領域内の画素点、又は菱形領域内の画素点である。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0045
【補正方法】変更
【補正の内容】
【0045】
別のオプション的な実施形態において、前記1つの画素点の予測QP値及び導出情報に基づいて、前記1つの画素点のQP値を決定するステップは、前記1つの画素点の周囲の1つ又は複数の再構成済み画素点の情報に基づいて、前記画素点の指示情報を決定するステップと、前記指示情報と、人間の目がちょうど知覚できる歪みに対応するQP値とに基づいて予測QP値を調整し、調整されたQP値を前記画素点のQP値として決定するステップと、を含む。ここで、人間の目がちょうど知覚できる歪みに対応するQP値は予め設定された値(例えば、符号化側又は復号側において予め設定された画像レベル又はCUレベル情報)であり、又は、前記人間の目がちょうど知覚できる歪みに対応するQP値はビットストリームから解析して得られ(画像レベル又はCUレベル伝送)、又は、人間の目がちょうど知覚できる歪みに対応するQP値は周囲の再構成済みCUの平坦度情報又はテクスチャ情報、背景輝度、コントラスト情報に基づいて導出される。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0047
【補正方法】変更
【補正の内容】
【0047】
第4の態様によれば、本発明は画像符号化方法を提供し、前記方法は、ビデオコーディングシステムに適用されてもよく、又は、該方法は、該方法を実現するためにビデオコーディングをサポートすることができる符号化側に適用されてもよく、前記方法は符号化側によって実行され、前記方法は、1つの画像フレームを1つ又は複数のCUに分割するステップと、前記1つの画像フレームの複数のQP値を決定するステップであって、1つのCUは複数の画素点を含み、1つの画素点は1つのQP値に対応し、前記複数の画素点のうちの少なくとも2つの画素点のQP値が異なり、1つの画素点のQP値は、現在の画素点の周囲の再構成済み画素情報に基づいて適応的に調整することによって決定される、ステップと、前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む。
【手続補正7】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
復号側によって実行される画像復号方法であって、
ビットストリームを解析して1つ又は複数の画像フレームを取得するステップであって、1つの画像フレームは1つ又は複数の符号化ユニットCUを含む、ステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の量子化グループQGを含み、1つのQGは1つのQP値に対応する、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを復号するステップと、を含む、
ことを特徴とする画像復号方法。
【請求項2】
前記1つのCUは複数の残差係数を含み、前記1つのQGは前記複数の残差係数のうちの一部の残差係数を含み、前記一部の残差係数は前記1つのQP値を共有する、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記1つの画像フレームの複数のQP値を決定する前に、
第1のルールに従って前記1つの画像フレームに含まれる1つのCUを分割し、前記複数のQGを取得するステップをさらに含み、
前記第1のルールは分割領域と分割方式とを含み、前記分割領域は画素領域であり、前記分割方式は均一分割を含む、
ことを特徴とする請求項1に記載の方法。
【請求項4】
前記1つのQGに対応する1つのQP値は、輝度QP値と色度QP値とを含み、
前記1つの画像フレームの複数のQP値を決定するステップは、
前記1つのQGの輝度QP値と色度QP値とをそれぞれ取得するステップ、
又は、
前記1つのQGの輝度QP値を取得し、
前記輝度QP値に基づいて前記1つのQGの色度QP値を取得するステップを含む、
ことを特徴とする請求項
1に記載の方法。
【請求項5】
前記複数のQP値に基づいて前記1つの画像フレームを復号するステップは、
前記複数のQP値の各QP値について、前記QP値に対応する量子化ステップQstepを取得するステップと、
前記QP値に対応するQGに含まれるレベル値を取得するステップと、
選択された量子化器の組み合わせに基づいて、前記QGのレベル値を逆量子化するステップと、を含み、
前記量子化器の組み合わせは、1つ又は複数の量子化器を含む、
ことを特徴とする請求項1に記載の方法。
【請求項6】
前記量子化器の組み合わせは、前記ビットストリームに付加されたマーク情報によって決定され、又は、
前記量子化器の組み合わせは、前記QG内の残差係数の分布によって決定される、
ことを特徴とする請求項5に記載の方法。
【請求項7】
前記量子化器は、均一量子化器又は非均一量子化器である、
ことを特徴とする請求項
5に記載の方法。
【請求項8】
前記1つのQGは、前記1つの画像フレームの1つ又は複数の画素点を含む、
ことを特徴とする請求項1に記載の方法。
【請求項9】
前記複数のQGのうちの少なくとも2つのQGに対応するQP値が異なる、
ことを特徴とする請求項1に記載の方法。
【請求項10】
符号化側によって実行される画像符号化方法であって、
1つの画像フレームを1つ又は複数の符号化ユニットCUに分割するステップと、
前記1つの画像フレームの複数の量子化パラメータQP値を決定するステップであって、1つのCUは複数の量子化グループQGを含み、1つのQGは1つのQP値に対応する、ステップと、
前記複数のQP値に基づいて前記1つの画像フレームを符号化するステップと、を含む、
ことを特徴とする画像符号化方法。
【請求項11】
ビットストリーム解析ユニットと、QP決定ユニットと、画像復号ユニットと、を含む画像復号装置であって、
前記ビットストリーム解析ユニット、前記QP決定ユニット、及び前記画像復号ユニットは、請求項1~
9のいずれか1項に記載の方法を実施するために用いられる、
ことを特徴とする画像復号装置。
【請求項12】
画像分割ユニットと、QP決定ユニットと、画像符号化ユニットと、を含む画像符号化装置であって、
前記画像分割ユニット、前記QP決定ユニット、及び前記画像符号化ユニットは、請求項
10に記載の方法を実施するために用いられる、
ことを特徴とする画像符号化装置。
【請求項13】
符号化側と復号側とを含むビデオコーディングシステムであって、
前記符号化側と前記復号側とが通信可能に接続され、前記復号側は請求項1~
9のいずれか1項に記載の方法を実施するために用いられ、前記符号化側は請求項
10に記載の方法を実施するために用いられる、
ことを特徴とするビデオコーディングシステム。
【請求項14】
プロセッサとメモリとを含む電子デバイスであって、
前記メモリは、コンピュータ命令を記憶するために用いられ、前記プロセッサは、メモリから前記コンピュータ命令を呼び出して実行し、請求項1~
10のいずれか1項に記載の方法を実施するために用いられる、
ことを特徴とする電子デバイス。
【請求項15】
コンピュータプログラム又は命令が記憶されたコンピュータ可読記憶媒体であって、前記コンピュータプログラム又は命令が電子デバイスによって実行されると、請求項1~
10のいずれか1項に記載の方法が実施される、
ことを特徴とするコンピュータ可読記憶媒体。
【国際調査報告】