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

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

▶ 華為技術有限公司の特許一覧

特許7618820スケーラブルな符号化及び復号方法及び装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-10
(45)【発行日】2025-01-21
(54)【発明の名称】スケーラブルな符号化及び復号方法及び装置
(51)【国際特許分類】
   H04N 19/115 20140101AFI20250114BHJP
   H04N 19/192 20140101ALI20250114BHJP
【FI】
H04N19/115
H04N19/192
【請求項の数】 43
(21)【出願番号】P 2023543103
(86)(22)【出願日】2022-01-19
(65)【公表番号】
(43)【公表日】2024-01-26
(86)【国際出願番号】 CN2022072627
(87)【国際公開番号】W WO2022156688
(87)【国際公開日】2022-07-28
【審査請求日】2023-08-22
(31)【優先権主張番号】202110071775.8
(32)【優先日】2021-01-19
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】マオ,ジュエ
(72)【発明者】
【氏名】ヤン,ハイタオ
(72)【発明者】
【氏名】ワン,ジン
(72)【発明者】
【氏名】ツォイ,ゼ
【審査官】田中 純一
(56)【参考文献】
【文献】国際公開第2020/238603(WO,A1)
【文献】特表2021-535689(JP,A)
【文献】米国特許出願公開第2021/0266565(US,A1)
【文献】特表2019-512938(JP,A)
【文献】米国特許出願公開第2017/0264902(US,A1)
【文献】特開平08-079748(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/12
H04N 19/00 - 19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
ビデオ信号符号化方法であって
ビデオ信号の第1信号成分の制御信号を前記第1信号成分の第1特徴マップに適用して、前記第1信号成分の第2特徴マップを取得するステップであり、前記第1信号成分の前記制御信号は学習を通じて取得される、ステップと、
前記ビデオ信号の第2信号成分の制御信号を前記第2信号成分の第1特徴マップに適用して、前記第2信号成分の第2特徴マップを取得するステップであり、前記第2信号成分の前記制御信号は学習を通じて取得される、ステップと、
前記第1信号成分の前記第2特徴マップと前記第2信号成分の前記第2特徴マップとに基づいて、前記ビデオ信号のビットストリームを取得するステップと、
を有する方法。
【請求項2】
当該方法は更に、
前記第1信号成分の品質係数に基づいて、N個の候補第1制御信号から前記第1信号成分の前記制御信号を取得するステップであり、Nは1より大きい整数である、ステップと、
前記第2信号成分の品質係数に基づいて、M個の候補第2制御信号から前記第2信号成分の前記制御信号を取得するステップであり、Mは1より大きい整数である、ステップと、
を有する、請求項1に記載の方法。
【請求項3】
前記第1信号成分の前記第2特徴マップと前記第2信号成分の前記第2特徴マップとに基づいて、前記ビデオ信号のビットストリームを前記取得するステップは、
前記第1信号成分の前記第2特徴マップと、前記第2信号成分の前記第2特徴マップと、に対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
前記第1信号成分の前記第2特徴マップと、ニューラルネットワークによって処理された前記第2信号成分の前記第2特徴マップと、に対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
ニューラルネットワークによって処理された前記第1信号成分の前記第2特徴マップと、前記第2信号成分の前記第2特徴マップと、に対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、又は
ニューラルネットワークによって処理された前記第1信号成分の前記第2特徴マップと、ニューラルネットワークによって処理された前記第2信号成分の前記第2特徴マップと、に対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
を有する、請求項1又は2に記載の方法。
【請求項4】
前記第1信号成分の前記第2特徴マップと前記第2信号成分の前記第2特徴マップとに基づいて、前記ビデオ信号のビットストリームを前記取得するステップは、
前記第1信号成分の前記第2特徴マップと、前記第2信号成分の前記第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
前記第1信号成分の前記第2特徴マップと、ニューラルネットワークによって処理された前記第2信号成分の前記第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
ニューラルネットワークによって処理された前記第1信号成分の前記第2特徴マップと、前記第2信号成分の前記第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、又は
ニューラルネットワークによって処理された前記第1信号成分の前記第2特徴マップと、ニューラルネットワークによって処理された前記第2信号成分の前記第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、前記ビデオ信号の前記ビットストリームを取得すること、
を有する、請求項1又は2に記載の方法。
【請求項5】
前記第1信号成分はY成分であり、前記第2信号成分はUV成分、U成分、又はV成分である、請求項1乃至4のいずれか一項に記載の方法。
【請求項6】
前記第2信号成分が前記UV成分である場合、当該方法は、
学習を通じて、前記Y成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}と、前記UV成分の制御信号行列{quv1,quv2,…,quvj,…,quvM}とを生成するステップであり、N及びMは1より大きい整数である、ステップと、
前記Y成分の品質係数のインデックスiに基づいて、前記第1信号成分の制御信号qyiを取得するステップと、
前記UV成分の品質係数のインデックスjに基づいて、前記第2信号成分の制御信号quvjを取得するステップと、
を有する、請求項5に記載の方法。
【請求項7】
前記ビデオ信号の前記ビットストリームは、前記Y成分の前記品質係数の前記インデックスi及び前記UV成分の前記品質係数の前記インデックスjを含む、請求項6に記載の方法。
【請求項8】
前記第2信号成分が前記UV成分である場合、当該方法は、
学習を通じて、前記ビデオ信号の制御信号行列{qc1,qc2,…,qci,…,qcN}を生成するステップであり、cは2であって前記Y成分及び前記UV成分を表し、Nは1より大きい整数である、ステップと、
前記ビデオ信号の品質係数のインデックスiに基づいて、前記第1信号成分及び前記第2信号成分を有する制御信号qciを取得するステップと、
を有する、請求項5に記載の方法。
【請求項9】
前記ビデオ信号の前記ビットストリームは、前記ビデオ信号の前記品質係数の前記インデックスiを含む、請求項に記載の方法。
【請求項10】
前記第2信号成分が前記UV成分である場合、当該方法は、
前記Y成分の品質係数を全結合型ネットワークへの入力として使用し、前記Y成分の制御信号を出力するステップと、
前記UV成分の品質係数を前記全結合型ネットワークへの入力として使用し、前記UV成分の制御信号を出力するステップと、
を有する、請求項5に記載の方法。
【請求項11】
前記ビデオ信号の前記ビットストリームは、前記Y成分の前記品質係数及び前記UV成分の前記品質係数を含む、請求項10に記載の方法。
【請求項12】
前記第2信号成分が前記U成分又は前記V成分である場合、当該方法は更に、
前記ビデオ信号の第3信号成分の制御信号を前記第3信号成分の第1特徴マップに適用して、前記第3信号成分の第2特徴マップを取得するステップであり、前記第3信号成分の前記制御信号は学習を通じて取得され、前記第2信号成分が前記U成分である場合、前記第3信号成分は前記V成分であり、前記第2信号成分が前記V成分である場合、前記第3信号成分は前記U成分である、ステップ、
を有する、請求項5に記載の方法。
【請求項13】
当該方法は更に、
学習を通じて、前記Y成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}と、前記U成分の制御信号行列{qu1,qu2,…,quj,…,quM}と、前記V成分の制御信号行列{qv1,qv2,…,qvk,…,qvL}とを生成するステップであり、N、M、及びLは1より大きい整数である、ステップと、
前記Y成分の品質係数のインデックスiに基づいて、前記第1信号成分の制御信号qyiを取得するステップと、
前記U成分の品質係数のインデックスjに基づいて、前記第2信号成分の制御信号qujを取得するステップと、
前記V成分の品質係数のインデックスkに基づいて、前記第3信号成分の制御信号qvkを取得するステップと、
を有する、請求項12に記載の方法。
【請求項14】
前記ビデオ信号の前記ビットストリームは、前記Y成分の前記品質係数の前記インデックスi、前記U成分の前記品質係数の前記インデックスj、及び前記V成分の前記品質係数の前記インデックスkを含む、請求項13に記載の方法。
【請求項15】
当該方法は更に、
学習を通じて、前記ビデオ信号の制御信号行列{qc1,qc2,…,qci,…,qcN}を生成するステップであり、cは3であって前記Y成分、前記U成分、及び前記V成分を表し、Nは1より大きい整数である、ステップと、
前記ビデオ信号の品質係数のインデックスiに基づいて、前記第1信号成分、前記第2信号成分、及び前記第3信号成分を有する制御信号qciを取得するステップと、
を有する、請求項12に記載の方法。
【請求項16】
前記ビデオ信号の前記ビットストリームは、前記ビデオ信号の前記品質係数の前記インデックスiを含む、請求項15に記載の方法。
【請求項17】
当該方法は更に、
前記Y成分の品質係数を全結合型ネットワークへの入力として使用し、前記Y成分の制御信号を出力するステップと、
前記U成分の品質係数を前記全結合型ネットワークへの入力として使用し、前記U成分の制御信号を出力するステップと、
前記V成分の品質係数を前記全結合型ネットワークへの入力として使用し、前記V成分の制御信号を出力するステップと、
を有する、請求項12に記載の方法。
【請求項18】
前記ビデオ信号の前記ビットストリームは、前記Y成分の前記品質係数、前記U成分の前記品質係数、及び前記V成分の前記品質係数を含む、請求項17記載の方法。
【請求項19】
前記制御信号が制御ベクトルを有する場合、当該方法は、
前記第1信号成分の制御ベクトルに前記第1信号成分の前記第1特徴マップを乗算して、前記第1信号成分の前記第2特徴マップを取得するステップと、
前記第2信号成分の制御ベクトルに前記第信号成分の前記第特徴マップを乗算して、前記第2信号成分の前記第2特徴マップを取得するステップと、
を有する、請求項1乃至18のいずれか一項に記載の方法。
【請求項20】
前記制御信号が制御ベクトルとオフセットベクトルとを有する場合、当該方法は、
前記第1信号成分の制御ベクトルに前記第1信号成分の前記第1特徴マップを乗算し、次いで、前記第1信号成分のオフセットベクトルを加算して、前記第1信号成分の前記第2特徴マップを取得するステップと、
前記第2信号成分の制御ベクトルに前記第信号成分の前記第特徴マップを乗算し、次いで、前記第2信号成分のオフセットベクトルを加算して、前記第2信号成分の前記第2特徴マップを取得するステップと、
を有する、請求項1乃至18のいずれか一項に記載の方法。
【請求項21】
前記第1信号成分の前記第1特徴マップは、少なくとも1つの畳み込み層において、及び/又は少なくとも1つの非線形層において、前記第1信号成分を処理することによって取得され、
前記第2信号成分の前記第1特徴マップは、少なくとも1つの畳み込み層において、及び/又は少なくとも1つの非線形層において、前記第2信号成分を処理することによって取得される、
請求項1乃至20のいずれか一項に記載の方法。
【請求項22】
前記第1信号成分の前記第1特徴マップは、2のダウンサンプリング係数を各々が持つ2つの畳み込み層において、及び2つの非線形層において、前記第1信号成分を処理することによって取得され、
前記第2信号成分の前記第1特徴マップは、ダウンサンプリング処理なしの1つの畳み込み層において、2のダウンサンプリング係数を持つ1つの畳み込み層において、及び2つの非線形層において、前記第2信号成分を処理することによって取得される、
請求項21に記載の方法。
【請求項23】
ビデオ信号復号方法であって、
ビデオ信号のビットストリームを取得するステップと、
前記ビットストリームに対してエントロピー復号を実行して、前記ビデオ信号の第1信号成分の特徴マップと、前記ビデオ信号の第2信号成分の特徴マップとを取得するステップと、
前記第1信号成分の応答信号と前記第1信号成分の前記特徴マップとに基づいて、前記第1信号成分の再構成マップを取得するステップであり、前記第1信号成分の前記応答信号は学習を通じて取得される、ステップと、
前記第2信号成分の応答信号と前記第2信号成分の前記特徴マップとに基づいて、前記第2信号成分の再構成マップを取得するステップであり、前記第2信号成分の前記応答信号は学習を通じて取得される、ステップと、
前記第1信号成分の前記再構成マップと前記第2信号成分の前記再構成マップとに基づいて、前記ビデオ信号を再構成するステップと、
を有する方法。
【請求項24】
前記ビットストリームは更に、前記第1信号成分の品質係数情報及び前記第2信号成分の品質係数情報を含み、前記第1信号成分の前記品質係数情報は、前記第1信号成分の品質係数、又は前記第1信号成分の前記品質係数のインデックスであり、前記第2信号成分の前記品質係数情報は、前記第2信号成分の品質係数、又は前記第2信号成分の前記品質係数のインデックスであり、当該方法は、
前記第1信号成分の前記品質係数情報に基づいて、前記第1信号成分の前記応答信号を取得するステップと、
前記第2信号成分の前記品質係数情報に基づいて、前記第2信号成分の前記応答信号を取得するステップと、
を有する、請求項23に記載の方法。
【請求項25】
前記第1信号成分の前記品質係数情報が前記第1信号成分の前記品質係数である場合、前記第1信号成分の前記品質係数の値はNのうちの1つであり、前記第1信号成分の前記品質係数情報が前記第1信号成分の前記品質係数の前記インデックスである場合、前記第1信号成分の前記品質係数の前記インデックスの値域は0からN-1又は1からNであり、Nは1より大きい整数であり、
前記第2信号成分の前記品質係数情報が前記第2信号成分の前記品質係数である場合、前記第2信号成分の前記品質係数の値はMのうちの1つであり、前記第2信号成分の前記品質係数情報が前記第2信号成分の前記品質係数の前記インデックスである場合、前記第2信号成分の前記品質係数の前記インデックスの値域は0からM-1又は1からMであり、Mは1より大きい整数である、
請求項24に記載の方法。
【請求項26】
前記ビットストリームはジョイント特徴マップを含み、当該方法は、
前記ジョイント特徴マップに対してエントロピー復号を実行し、ニューラルネットワークによる処理を通じて、前記第1信号成分の前記特徴マップ及び前記第2信号成分の前記特徴マップを取得するステップ、
を有する、請求項23乃至25のいずれか一項に記載の方法。
【請求項27】
前記第1信号成分はY成分であり、前記第2信号成分はUV成分、U成分、又はV成分である、請求項23乃至26のいずれか一項に記載の方法。
【請求項28】
前記第2信号成分が前記UV成分である場合において、前記ビットストリームが前記Y成分の品質係数のインデックスi及び前記UV成分の品質係数のインデックスjを含む場合、当該方法は、
学習を通じて、前記第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}と、前記第2信号成分の応答信号行列{guv1,guv2,…,guvj,…,guvM}とを生成するステップであり、N及びMは1より大きい整数である、ステップと、
前記Y成分の前記品質係数の前記インデックスiに基づいて、前記第1信号成分の応答信号gyiを取得するステップと、
前記UV成分の前記品質係数の前記インデックスjに基づいて、前記第2信号成分の応答信号guvjを取得するステップと、
を有する、請求項27に記載の方法。
【請求項29】
前記第2信号成分が前記UV成分である場合において、前記ビットストリームが前記ビデオ信号の品質係数のインデックスiを含む場合、当該方法は、
学習を通じて、前記ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成するステップであり、cは2であって前記Y成分及び前記UV成分を表し、Nは1より大きい整数である、ステップと、
前記ビデオ信号の前記品質係数の前記インデックスiに基づいて、前記第1信号成分及び前記第2信号成分を有する応答信号gciを取得するステップと、
を有する、請求項27に記載の方法。
【請求項30】
前記第2信号成分が前記UV成分である場合において、前記ビットストリームが前記第1信号成分の品質係数及び前記第2信号成分の品質係数を含む場合、当該方法は、
前記Y成分の前記品質係数を全結合型ネットワークへの入力として使用し、前記Y成分の応答信号を出力するステップと、
前記UV成分の前記品質係数を前記全結合型ネットワークへの入力として使用し、前記UV成分の応答信号を出力するステップと、
を有する、請求項27に記載の方法。
【請求項31】
前記第2信号成分が前記U成分又は前記V成分である場合、当該方法は更に、
前記ビットストリームに対してエントロピー復号を実行して、前記ビデオ信号の第3信号成分の特徴マップを取得するステップと、
前記第3信号成分の応答信号と前記第3信号成分の前記特徴マップとに基づいて、前記第3信号成分の再構成マップを取得するステップであり、前記第3信号成分の前記応答信号は学習を通じて取得され、前記第2信号成分が前記U成分である場合、前記第3信号成分は前記V成分であり、前記第2信号成分が前記V成分である場合、前記第3信号成分は前記U成分である、ステップと、
を有し、
前記ビデオ信号を前記再構成するステップは、
前記第1信号成分の前記再構成マップと、前記第2信号成分の前記再構成マップと、前記第3信号成分の前記再構成マップとに基づいて、前記ビデオ信号を再構成すること、
を有する、
請求項27に記載の方法。
【請求項32】
前記ビットストリームは更に、前記第3信号成分の品質係数情報を含み、前記第3信号成分の前記品質係数情報は、前記第3信号成分の品質係数、又は前記第3信号成分の前記品質係数のインデックスであり、前記第3信号成分の前記品質係数の値はLのうちの1つであり、前記第3信号成分の前記品質係数の前記インデックスの値域は0からL-1又は1からLであり、Lは1より大きい整数であり、当該方法は更に、
前記第3信号成分の前記品質係数情報に基づいて、前記第3信号成分の前記応答信号を取得するステップ、
を有する、請求項31に記載の方法。
【請求項33】
前記ビットストリームが、前記Y成分の品質係数のインデックスi、前記U成分の品質係数のインデックスj、及び前記V成分の品質係数のインデックスkを含む場合、当該方法は、
学習を通じて、前記第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}と、前記第2信号成分の応答信号行列{gu1,gu2,…,guj,…,guM}と、前記第3信号成分の応答信号行列{gv1,gv2,…,gvk,…,gvL}とを生成するステップであり、N、M、及びLは1より大きい整数である、ステップと、
前記Y成分の前記品質係数の前記インデックスiに基づいて、前記第1信号成分の応答信号gyiを取得するステップと、
前記U成分の前記品質係数の前記インデックスjに基づいて、前記第2信号成分の応答信号gujを取得するステップと、
前記V成分の前記品質係数の前記インデックスkに基づいて、前記第3信号成分の応答信号gvkを取得するステップと、
を有する、請求項32に記載の方法。
【請求項34】
前記ビットストリームが前記ビデオ信号の品質係数のインデックスiを含む場合、当該方法は、
学習を通じて、前記ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成するステップであり、cは3であって前記Y成分、前記U成分、及び前記V成分を表し、Nは1より大きい整数である、ステップと、
前記ビデオ信号の前記品質係数の前記インデックスiに基づいて、前記第1信号成分、前記第2信号成分、及び前記第3信号成分を有する応答信号gciを取得するステップと、
を有する、請求項31に記載の方法。
【請求項35】
前記ビットストリームが前記第1信号成分の品質係数、前記第2信号成分の品質係数、及び前記第3信号成分の品質係数を含む場合、当該方法は、
前記Y成分の前記品質係数を全結合型ネットワークへの入力として使用し、前記Y成分の応答信号を出力するステップと、
前記U成分の前記品質係数を前記全結合型ネットワークへの入力として使用し、前記U成分の応答信号を出力するステップと、
前記V成分の前記品質係数を前記全結合型ネットワークへの入力として使用し、前記V成分の応答信号を出力するステップと、
を有する、請求項31に記載の方法。
【請求項36】
前記応答信号が応答ベクトルを有する場合、前記第1信号成分の応答信号と前記第1信号成分の前記特徴マップとに基づいて、前記第1信号成分の再構成マップを前記取得するステップは、
前記第1信号成分の応答ベクトルに前記第1信号成分の前記特徴マップを乗算して、前記第1信号成分の前記再構成マップを取得すること、又は、前記第1信号成分の前記応答ベクトルに前記第1信号成分の前記特徴マップを乗算し、次いで、ニューラルネットワークによる処理を通じて、前記第1信号成分の前記再構成マップを取得すること、
を有し、
前記第2信号成分の応答信号と前記第2信号成分の前記特徴マップとに基づいて、前記第2信号成分の再構成マップを前記取得するステップは、
前記第2信号成分の応答ベクトルに前記第2信号成分の前記特徴マップを乗算して、前記第2信号成分の前記再構成マップを取得すること、又は、前記第2信号成分の前記応答ベクトルに前記第2信号成分の前記特徴マップを乗算し、次いで、ニューラルネットワークによる処理を通じて、前記第2信号成分の前記再構成マップを取得すること、
を有する、
請求項23乃至35のいずれか一項に記載の方法。
【請求項37】
前記応答信号が応答ベクトルとオフセットベクトルとを有する場合、前記第1信号成分の応答信号と前記第1信号成分の前記特徴マップとに基づいて、前記第1信号成分の再構成マップを前記取得するステップは、
前記第1信号成分の応答ベクトルに前記第1信号成分の前記特徴マップを乗算し、次いで、前記第1信号成分のオフセットベクトルを加算して、前記第1信号成分の前記再構成マップを取得すること、又は、前記第1信号成分の前記応答ベクトルに前記第1信号成分の前記特徴マップを乗算し、前記第1信号成分の前記オフセットベクトルを加算し、次いで、ニューラルネットワークによる処理を通じて、前記第1信号成分の前記再構成マップを取得すること、
を有し、
前記第2信号成分の応答信号と前記第2信号成分の前記特徴マップとに基づいて、前記第2信号成分の再構成マップを前記取得するステップは、
前記第2信号成分の応答ベクトルに前記第2信号成分の前記特徴マップを乗算し、次いで、前記第2信号成分のオフセットベクトルを加算して、前記第2信号成分の前記再構成マップを取得すること、又は、前記第2信号成分の前記応答ベクトルに前記第2信号成分の前記特徴マップを乗算し、前記第2信号成分の前記オフセットベクトルを加算し、次いで、ニューラルネットワークによる処理を通じて、前記第2信号成分の前記再構成マップを取得すること、
を有する、
請求項23乃至35のいずれか一項に記載の方法。
【請求項38】
請求項1乃至22のいずれか一項に記載の方法を実行するように構成された処理回路を有するエンコーダ。
【請求項39】
請求項23乃至37のいずれか一項に記載の方法を実行するように構成された処理回路を有するデコーダ。
【請求項40】
エンコーダであって、
1つ以上のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラムを格納した、非一時的コンピュータ読み取り可能記憶媒体であり、前記プログラムは、前記プロセッサによって実行されるときに、請求項1乃至22のいずれか一項に記載の方法を実行するように前記エンコーダを構成する、非一時的コンピュータ読み取り可能記憶媒体と、
を有するエンコーダ。
【請求項41】
デコーダであって、
1つ以上のプロセッサと、
前記プロセッサに結合され、前記プロセッサによる実行のためのプログラムを格納した、非一時的コンピュータ読み取り可能記憶媒体であり、前記プログラムは、前記プロセッサによって実行されるときに、請求項23乃至37のいずれか一項に記載の方法を実行するように前記デコーダを構成する、非一時的コンピュータ読み取り可能記憶媒体と、
を有するデコーダ。
【請求項42】
プログラムコードを有した非一時的コンピュータ読み取り可能記憶媒体であって、前記プログラムコードがコンピュータデバイスによって実行されるときに、前記プログラムコードを用いて請求項1乃至22のいずれか一項に記載の方法が実行される、非一時的コンピュータ読み取り可能記憶媒体。
【請求項43】
プログラムコードを有した非一時的コンピュータ読み取り可能記憶媒体であって、前記プログラムコードがコンピュータデバイスによって実行されるときに、前記プログラムコードを用いて請求項23乃至37のいずれか一項に記載の方法が実行される、非一時的コンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、人工知能(AI)ベースのビデオ又はピクチャ圧縮技術の分野に関し、特に、スケーラブルな符号化及び復号方法及び装置に関する。
【背景技術】
【0002】
ビデオ圧縮符号化及び復号技術は、例えば、放送デジタルテレビジョン、インターネット及びモバイルネットワーク上でのビデオ伝送、例えばビデオチャット及びビデオ会議などのリアルタイム会話アプリケーション、DVD及びBlu-rayディスク、ビデオコンテンツ収集・編集システム、並びにセキュリティ用途のビデオカメラといった、マルチメディアサービス、放送、ビデオ通信、ストレージ、及びこれらに類するものの分野において広く使用されている。
【0003】
短い映像であってもそれを描写するために大量のビデオデータが必要とされる。これは、限られた帯域幅容量を持つネットワーク上でデータがストリーミングされる又はその他の方法で通信されるときに困難をもたらし得る。従って、ビデオデータは一般に、今日の遠隔通信ネットワーク上で通信される前に圧縮される。ビデオのサイズはまた、メモリリソースが限られ得るために、ビデオがストレージ装置に格納されるときにも懸念となり得る。ビデオ圧縮装置は、しばしば、伝送又は記憶に先立って、ソースにてソフトウェア及び/又はハードウェアを用いてビデオデータを符号化して、デジタルビデオピクチャを表すのに必要なデータの量を減少させる。そして、圧縮されたデータが、送り先でビデオ解凍装置によって受信される。限られたネットワークリソースと、増加の一途をたどるいっそう高いビデオ品質の要求とに伴い、ピクチャ品質の犠牲を殆ど乃至は全く伴わずに圧縮比を向上させるために、圧縮及び解凍技術を改善する必要がある。
【0004】
近年、エンドツーエンドピクチャ符号化及び復号技術の分野にディープラーニングを適用することが徐々にトレンドとなっている。ハイブリッドアーキテクチャを使用するビデオエンコーダ及びビデオデコーダでは、特徴マップに対してエントロピー符号化が実行されるときに、特徴値がゼロ平均ガウス分布を満たすと仮定され、超事前分布(hyperprior)構造を用いることによってガウス分布の分散を推定して、特徴値の確率分布モデルを取得し、そして、算術符号化モジュールが、推定された確率分布に基づいて、特徴マップに対してエントロピー符号化を実行する。デコーダサイドが特徴マップの確率分布を正確に推定することを可能にするために、超事前分布構造内のモジュールが、推定された確率分布の隠れ変数を抽出し、該隠れ変数が、量子化及び算術符号化を通じて副次的な情報として、デコーダサイドに伝達される。このメカニズムにおいて、YUVフォーマットの入力ピクチャでは、Y、U、及びV成分のビットレートの比が固定されている。しかしながら、ピクチャはコンテンツにおいて異なる色特性を持つので、Y、U、及びV成分のビットレートの固定された比は、符号化されたピクチャにおいて大きな歪みを生じさせる。
【発明の概要】
【0005】
この出願は、異なる色特性を持つピクチャコンテンツに適応するためのスケーラブルな符号化及び復号方法及び装置を提供する。
【0006】
この出願において、スケーラブルな符号化及び復号は、ビデオ信号が第1信号成分及び第2信号成分に分割されること、又はビデオ信号が第1信号成分、第2信号成分、及び第3信号成分に分割されることを示す。第1信号成分はY成分であり、第2信号成分はUV成分、U成分、又はV成分である。第2信号成分がU成分である場合、第3信号成分はV成分である。代わりに、第2信号成分がV成分である場合、第3信号成分はU成分である。
【0007】
第1態様によれば、この出願は符号化方法を提供する。当該符号化方法は、ビデオ信号の第1信号成分の制御信号を第1信号成分の第1特徴マップに適用して、第1信号成分の第2特徴マップを取得し、第1信号成分の制御信号は学習を通じて取得され、ビデオ信号の第2信号成分の制御信号を第2信号成分の第1特徴マップに適用して、第2信号成分の第2特徴マップを取得し、第2信号成分の制御信号は学習を通じて取得され、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得する、ことを含む。
【0008】
取り得る一実装において、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得することは、第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップとに対して、第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップとに対して、ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップとに対して、又は、ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップとに対して、エントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、を含む。
【0009】
取り得る一実装において、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得することは、第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、又は、ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、を含む。
【0010】
取り得る一実装において、当該方法は、第1信号成分の品質係数に基づいて、N個の候補第1制御信号から第1信号成分の制御信号を取得し、Nは1より大きい整数であり、第2信号成分の品質係数に基づいて、M個の候補第2制御信号から第2信号成分の制御信号を取得し、Mは1より大きい整数である、ことを含む。NとMは等しくてもよいし、等しくなくてもよい。これはこの出願において限定されることではない。
【0011】
取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がUV成分である場合、当該方法は、学習を通じて、Y成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}と、UV成分の制御信号行列{quv1,quv2,…,quvj,…,quvM}とを生成し、N及びMは1より大きい整数であり、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御信号qyiを取得し、UV成分の品質係数のインデックスjに基づいて、第2信号成分の制御信号quvjを取得する、ことを含む。この場合、ビデオ信号のビットストリームは、Y成分の品質係数のインデックスi及びUV成分の品質係数のインデックスjを含む。
【0012】
あるいは、他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がUV成分である場合、当該方法は、学習を通じて、ビデオ信号の制御信号行列{qc1,qc2,…,qci,…,qcN}を生成し、cは2であってY成分及びUV成分を表し、Nは1より大きい整数であり、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分及び第2信号成分を含む制御信号qciを取得する、ことを含む。この場合、ビデオ信号のビットストリームは、ビデオ信号の品質係数のインデックスiを含む。
【0013】
あるいは、全結合型ネットワークを用いることによって実装される更なる他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がUV成分である場合、当該方法は、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の制御信号を出力し、UV成分の品質係数を全結合型ネットワークへの入力として使用し、UV成分の制御信号を出力する、ことを含む。この場合、ビデオ信号のビットストリームは、Y成分の品質係数及びUV成分の品質係数を含む。
【0014】
取り得る一実装において、第2信号成分がU成分又はV成分である場合、当該方法は更に、ビデオ信号の第3信号成分の制御信号を第3信号成分の第1特徴マップに適用して、第3信号成分の第2特徴マップを取得することを含む。第3信号成分の制御信号は学習を通じて取得される。第2信号成分がU成分である場合、第3信号成分はV成分である。代わりに、第2信号成分がV成分である場合、第3信号成分はU成分である。
【0015】
取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、当該方法は更に、学習を通じて、Y成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}と、U成分の制御信号行列{qu1,qu2,…,quj,…,quM}と、V成分の制御信号行列{qv1,qv2,…,qvk,…,qvL}とを生成し、N、M、及びLは1より大きい整数であり、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御信号qyiを取得し、U成分の品質係数のインデックスjに基づいて、第2信号成分の制御信号qujを取得し、V成分の品質係数のインデックスkに基づいて、第3信号成分の制御信号qvkを取得する、ことを含む。この場合、ビデオ信号のビットストリームは、Y成分の品質係数のインデックスi、U成分の品質係数のインデックスj、及びV成分の品質係数のインデックスkを含む。
【0016】
あるいは、他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、当該方法は更に、学習を通じて、ビデオ信号の制御信号行列{qc1,qc2,…,qci,…,qcN}を生成し、cは3であってY成分、U成分、及びV成分を表し、Nは1より大きい整数であり、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分、第2信号成分、及び第3信号成分を含む制御信号qciを取得する、ことを含む。この場合、ビデオ信号のビットストリームは、ビデオ信号の品質係数のインデックスiを含む。
【0017】
あるいは、全結合型ネットワークを用いることによって実装される更なる他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、当該方法は更に、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の制御信号を出力し、U成分の品質係数を全結合型ネットワークへの入力として使用し、U成分の制御信号を出力し、V成分の品質係数を全結合型ネットワークへの入力として使用し、V成分の制御信号を出力する、ことを含む。この場合、ビデオ信号のビットストリームは、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数を含む。
【0018】
第2態様によれば、この出願は復号方法を提供する。当該復号方法は、ビデオ信号のビットストリームを取得し、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第1信号成分の特徴マップと、ビデオ信号の第2信号成分の特徴マップとを取得し、第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得し、第1信号成分の応答信号は学習を通じて取得され、第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得し、第2信号成分の応答信号は学習を通じて取得され、第1信号成分の再構成マップと第2信号成分の再構成マップとに基づいて、ビデオ信号を再構成する、ことを含む。
【0019】
なお、この出願において、デコーダサイドでの応答信号はエンコーダサイドでの制御信号と同様である。区別を容易にするために、デコーダサイドでの信号を応答信号として参照し、エンコーダサイドでの信号を制御信号として参照する。デコーダサイドでの応答信号は、応答ベクトルを含み、あるいは、応答ベクトルとオフセットベクトルとを含む。
【0020】
取り得る一実装において、ビットストリームは更に、第1信号成分の品質係数情報及び第2信号成分の品質係数情報を含む。第1信号成分の品質係数情報は、第1信号成分の品質係数、又は第1信号成分の品質係数のインデックスである。第2信号成分の品質係数情報は、第2信号成分の品質係数、又は第2信号成分の品質係数のインデックスである。当該方法は更に、第1信号成分の品質係数情報に基づいて、第1信号成分の応答信号を取得し、第2信号成分の品質係数情報に基づいて、第2信号成分の応答信号を取得する、ことを含む。
【0021】
第1信号成分の品質係数情報が第1信号成分の品質係数である場合、第1信号成分の品質係数の値はNのうちの1つである。あるいは、第1信号成分の品質係数情報が第1信号成分の品質係数のインデックスである場合、第1信号成分の品質係数のインデックスの値域は0からN-1又は1からNであり、Nは1より大きい整数である。
【0022】
第2信号成分の品質係数情報が第2信号成分の品質係数である場合、第2信号成分の品質係数の値はMのうちの1つである。あるいは、第2信号成分の品質係数情報が第2信号成分の品質係数のインデックスである場合、第2信号成分の品質係数のインデックスの値域は0からM-1又は1からMであり、Mは1より大きい整数である。
【0023】
取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がUV成分である場合において、ビットストリームがY成分の品質係数のインデックスi及びUV成分の品質係数のインデックスjを含む場合、当該方法は、学習を通じて、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}と、第2信号成分の応答信号行列{guv1,guv2,…,guvj,…,guvM}とを生成し、N及びMは1より大きい整数であり、Y成分の品質係数のインデックスiに基づいて、第1信号成分の応答信号gyiを取得し、UV成分の品質係数のインデックスjに基づいて、第2信号成分の応答信号guvjを取得する、ことを含む。
【0024】
あるいは、他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がUV成分である場合において、ビットストリームがビデオ信号の品質係数のインデックスiを含む場合、当該方法は、学習を通じて、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成し、cは2であってY成分及びUV成分を表し、Nは1より大きい整数であり、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分及び第2信号成分を含む応答信号gciを取得する、ことを含む。
【0025】
あるいは、全結合型ネットワークを用いることによって実装される更なる他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合において、ビットストリームが第1信号成分の品質係数及び第2信号成分の品質係数を含む場合、当該方法は、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の応答信号を出力し、UV成分の品質係数を全結合型ネットワークへの入力として使用し、UV成分の応答信号を出力する、ことを含む。
【0026】
取り得る一実装において、第2信号成分がU成分又はV成分である場合、当該方法は更に、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第3信号成分の特徴マップを取得し、第3信号成分の応答信号と第3信号成分の特徴マップとに基づいて、第3信号成分の再構成マップを取得する、ことを含む。第3信号成分の応答信号は学習を通じて取得される。第2信号成分がU成分である場合、第3信号成分はV成分である。代わりに、第2信号成分がV成分である場合、第3信号成分はU成分である。ビデオ信号を再構成することは、第1信号成分の再構成マップと、第2信号成分の再構成マップと、第3信号成分の再構成マップとに基づいて、ビデオ信号を再構成することを含む。
【0027】
取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、そして、ビットストリームが、Y成分の品質係数のインデックスi、U成分の品質係数のインデックスj、及びV成分の品質係数のインデックスkを含む場合に、当該方法は、学習を通じて、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}と、第2信号成分の応答信号行列{gu1,gu2,…,guj,…,guM}と、第3信号成分の応答信号行列{gv1,gv2,…,gvk,…,gvL}とを生成し、N、M、及びLは1より大きい整数であり、Y成分の品質係数のインデックスiに基づいて、第1信号成分の応答信号gyiを取得し、U成分の品質係数のインデックスjに基づいて、第2信号成分の応答信号gujを取得し、V成分の品質係数のインデックスkに基づいて、第3信号成分の応答信号gvkを取得する、ことを含む。
【0028】
あるいは、他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、そして、ビットストリームがビデオ信号の品質係数のインデックスiを含む場合に、当該方法は、学習を通じて、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成し、cは3であってY成分、U成分、及びV成分を表し、Nは1より大きい整数であり、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分、第2信号成分、及び第3信号成分を含む応答信号gciを取得する、ことを含む。
【0029】
あるいは、全結合型ネットワークを用いることによって実装される更なる他の取り得る一実装において、第1信号成分がY成分であり、且つ第2信号成分がU成分である場合、第3信号成分はV成分であり、そして、ビットストリームが第1信号成分の品質係数、第2信号成分の品質係数、及び第3信号成分の品質係数を含む場合に、当該方法は、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の応答信号を出力し、U成分の品質係数を全結合型ネットワークへの入力として使用し、U成分の応答信号を出力し、V成分の品質係数を全結合型ネットワークへの入力として使用し、V成分の応答信号を出力する、ことを含む。
【0030】
第3態様によれば、この出願は、第1態様及び第1態様の実装のうちのいずれか一に従った方法を実行するように構成された処理回路を含むエンコーダを提供する。
【0031】
第4態様によれば、この出願は、第2態様及び第2態様の実装のうちのいずれか一に従った方法を実行するように構成された処理回路を含むデコーダを提供する。
【0032】
第5態様によれば、この出願は、プログラムコードを含んだコンピュータプログラムプロダクトを提供する。プログラムコードがコンピュータ又はプロセッサ上で実行されるときに、当該コンピュータプログラムプロダクトは、第1態様及び第2の態様並びに第1態様及び第2の態様の実装のうちのいずれか一に従った方法を実行するように構成される。
【0033】
第6態様によれば、この出願は、1つ以上のプロセッサと、プロセッサに結合され、プロセッサによる実行のためのプログラムを格納した、非一時的コンピュータ読み取り可能記憶媒体と、を含むエンコーダを提供する。プログラムが、プロセッサによって実行されるときに、第1態様及び第1態様の実装のうちのいずれか一に従った方法を実行するように当該エンコーダを構成する。
【0034】
第7態様によれば、この出願は、1つ以上のプロセッサと、プロセッサに結合され、プロセッサによる実行のためのプログラムを格納した、非一時的コンピュータ読み取り可能記憶媒体と、を含むデコーダを提供する。プログラムが、プロセッサによって実行されるときに、第2態様及び第2態様の実装のうちのいずれか一に従った方法を実行するように当該デコーダを構成する。
【0035】
第8態様によれば、この出願は、プログラムコードを含んだ非一時的コンピュータ読み取り可能記憶媒体を提供する。プログラムコードがコンピュータデバイスによって実行されるときに、プログラムコードを用いて、第1態様及び第2の態様並びに第1態様及び第2の態様の実装のうちのいずれか一に従った方法が実行される。
【0036】
第9態様によれば、本発明は符号化装置に関し、第1態様及び第1態様の実装のうちのいずれか一に従った方法実施形態における動作を実装する機能を持つ。機能は、ハードウェアによって実装されてもよいし、対応するソフトウェアをハードウェアが実行することによって実装されてもよい。ハードウェア又はソフトウェアは、上述の機能に対応する1つ以上のモジュールを含む。取り得る一設計において、符号化装置は、ビデオ信号の第1信号成分の制御信号を第1信号成分の第1特徴マップに適用して、第1信号成分の第2特徴マップを取得するように構成された第1の制御モジュールであり、第1信号成分の制御信号は学習を通じて取得される、第1の制御モジュールと、ビデオ信号の第2信号成分の制御信号を第2信号成分の第1特徴マップに適用して、第2信号成分の第2特徴マップを取得するように構成された第2の制御モジュールであり、第2信号成分の制御信号は学習を通じて取得される、第2の制御モジュールと、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得するように構成された符号化モジュールと、を含む。これらのモジュールは、第1態様及び第1態様の実装のうちのいずれか一に従った方法例における対応する機能を実行し得る。詳細については、方法例における詳細な説明を参照されたい。詳細をここで再び説明することはしない。
【0037】
第10態様によれば、本発明は復号装置に関し、第2態様及び第2態様の実装のうちのいずれか一に従った方法実施形態における動作を実装する機能を持つ。機能は、ハードウェアによって実装されてもよいし、対応するソフトウェアをハードウェアが実行することによって実装されてもよい。ハードウェア又はソフトウェアは、上述の機能に対応する1つ以上のモジュールを含む。取り得る一設計において、復号装置は、ビデオ信号のビットストリームを取得し、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第1信号成分の特徴マップと、ビデオ信号の第2信号成分の特徴マップとを取得するように構成された復号モジュールと、第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得するように構成された第1の制御モジュールであり、第1信号成分の応答信号は学習を通じて取得される、第1の制御モジュールと、第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得するように構成された第2の制御モジュールであり、第2信号成分の応答信号は学習を通じて取得される、第2の制御モジュールと、第1信号成分の再構成マップと第2信号成分の再構成マップとに基づいて、ビデオ信号を再構成するように構成された再構成モジュールと、を含む。これらのモジュールは、第2態様及び第2態様の実装のうちのいずれか一に従った方法例における対応する機能を実行し得る。詳細については、方法例における詳細な説明を参照されたい。詳細をここで再び説明することはしない。
【0038】
従来のエンドツーエンドピクチャコーディングでは、特定のネットワークの学習及び最適化において、Y、U、及びV成分の固定された重み値に基づいて最適化が行われる。従って、Y、U、及びV成分のビットレートの比が固定されている。異なるピクチャは異なる色特性を持つので、固定のビットレート割り当ては、一部のビデオピクチャの乏しい符号化性能を引き起こす。この出願の上述の態様においては、各信号成分の制御信号を用いて、対応する信号成分の特徴マップを制御することで、Y、U、及びV成分の間でのビットレート割り当てをサポートし、異なる色特性を持つピクチャコンテンツに適応する。
【0039】
1つ以上の実施形態の詳細が、添付の図面及び以下の説明に記載される。他の特徴、目的、及び利点が、明細書、添付の図面、及び特許請求の範囲から明らかになる。
【図面の簡単な説明】
【0040】
以下にて、この出願の実施形態で使用される添付の図面を説明する。
図1A】本発明の実施形態を実装するように構成されたビデオコーディングシステムの一例を示すブロック図であり、当該システムは、ディープラーニングに基づいてビデオピクチャを符号化したり復号したりする。
図1B】本発明の実施形態を実装するように構成されたビデオコーディングシステムの他の一例を示すブロック図であり、当該システムは、ディープラーニングに基づいてビデオピクチャを符号化したり復号したりする。
図1C】本発明の実施形態を実装するように構成されたビデオコーディングシステムの更なる他の一例を示すブロック図であり、ビデオエンコーダ及び/又はビデオデコーダが、ディープラーニングに基づいてビデオピクチャを符号化したり復号したりする。
図2】本発明の実施形態を実装するように構成されたビデオエンコーダの一例を示すブロック図であり、当該ビデオエンコーダ20は、ディープラーニングに基づいてビデオピクチャを符号化する。
図3】本発明の実施形態を実装するように構成されたビデオデコーダの一例を示すブロック図であり、当該ビデオデコーダ30は、ディープラーニングに基づいてビデオピクチャを復号する。
図4】本発明の実施形態を実装するように構成されたビデオコーディング装置の概略ブロック図である。
図5】本発明の実施形態を実装するように構成された他のビデオコーディング装置の概略ブロック図である。
図6】YUVフォーマットの概略図である。
図7A】この出願の一実施形態に従ったスケーラブルな符号化及び復号構造の概略図である。
図7B図7Aに基づく符号化方法の一実施形態である。
図7C図7Aに基づく復号方法の一実施形態である。
図7D】この出願の一実施形態に従ったスケーラブルな符号化及び復号構造の他の概略図である。
図8A】この出願の一実施形態に従った他のスケーラブルな符号化及び復号構造の概略図である。
図8B図8Aの一実施形態である。
図9A】この出願の一実施形態に従った更なる他のスケーラブルな符号化及び復号構造の概略図である。
図9B図9Aの一実施形態である。
図10】この出願の一実施形態に従った符号化装置1000の構造の概略図である。
図11】この出願の一実施形態に従った復号装置1100の構造の概略図である。
【発明を実施するための形態】
【0041】
この出願の実施形態は、AIベースのビデオピクチャ圧縮技術を提供し、具体的には、従来のエンドツーエンドハイブリッドビデオコーディングシステムを改善するために、スケーラブルな符号化及び復号方法及び装置を提供する。
【0042】
ビデオコーディングは、典型的に、一連のピクチャの処理を指し、該一連のピクチャがビデオ又はビデオシーケンスを形成する。ビデオコーディングの分野では、用語“ピクチャ(picture)”、“フレーム(frame)”、及び“画像(image)”が同義語として使用されることがある。ビデオコーディング(又は、一般に、コーディング)は、ビデオ符号化及びビデオ復号という2つの部分を含む。ビデオ符号化は、ソースにて実行され、典型的に、(より効率的なストレージ及び/又は伝送のために)ビデオピクチャを表現するのに必要なデータの量を減らすように、元のビデオピクチャを(例えば圧縮によって)処理することを含む。ビデオ復号は、デスティネーションにて実行され、典型的に、ビデオピクチャを再構成するためにエンコーダの処理に対して逆の処理を含む。ビデオピクチャ(又は、一般に、ピクチャ)の“コーディング”を参照する実施形態は、ビデオピクチャ又はそれぞれのビデオシーケンスの“符号化”又は“復号”に関係するように理解されるものとする。符号化部分と復号部分との組み合わせはコーデック(encoding and decoding,CODEC)とも呼ばれている。
【0043】
可逆ビデオコーディングの場合、元のビデオピクチャを再構成することができる。換言すれば、再構成されたビデオピクチャが、(ストレージ又は伝送の間に伝送損失又は他のデータ損失がないと仮定して)元のビデオピクチャと同じ品質を持つ。非可逆ビデオコーディングの場合には、ビデオピクチャを表現するのに必要なデータの量を減らすために、例えば量子化を通じて、更なる圧縮が行われ、デコーダでビデオピクチャを完全に再構成することはできない。換言すれば、再構成されたビデオピクチャの品質が、元のビデオピクチャの品質よりも低い又は乏しいものとなる。
【0044】
幾つかのビデオコーディング標準は、“非可逆ハイブリッドビデオコーディング”(すなわち、ピクセルドメインにおける空間及び時間予測が、変換ドメインにおいて量子化を適用する2D変換コーディングと組み合わされる)に使用される。ビデオシーケンスの各ピクチャは典型的に一組の重なり合わないブロックに分割され、コーディングは典型的にブロックレベルで実行される。具体的には、エンコーダで、ビデオは、通常、ブロック(ビデオブロック)レベルで処理及び符号化される。例えば、空間(イントラ)予測及び時間(インター)予測を通じて予測ブロックが生成され、該予測ブロックが現在ブロック(処理されている又は処理されるべきブロック)から減算されて残差ブロックが取得され、該残差ブロックが変換ドメインで変換され且つ量子化されて、伝送されるデータの量が削減される(圧縮される)。デコーダでは、表現用に現在ブロックを再構成するために、符号化されたブロック又は圧縮されたブロックに、エンコーダに対して逆の処理部分が適用される。さらに、後続ブロックを処理すなわちコーディングするためにエンコーダとデコーダが同じ予測(例えば、イントラ予測及びインター予測)及び/又は再構成ピクセルを生成するように、エンコーダはデコーダ処理ステップを複製する必要がある。
【0045】
ビデオコーディングシステム10の以下の実施形態にて、エンコーダ20及びデコーダ30を図1B図3に基づいて説明する。
【0046】
図1Aは、コーディングシステムの一例を示す概略ブロック図である。図1Aに示すように、ビデオキャプチャデバイスがビデオをキャプチャした後、一連の前処理が実行され、次いで、処理されたビデオが圧縮及び符号化されて符号化ビットストリームが得られる。ビットストリームは、送信モジュールによって、伝送ネットワーク上で受信モジュールに送られ、デコーダによって復号された後にレンダリングされて表示されることができる。また、ビデオ符号化ビットストリームを直接格納することもできる。
【0047】
図1Bは、この出願の技術を利用し得るコーディングシステム10の一例、例えばビデオコーディングシステム10(又は略してコーディングシステム10)、を示す概略ブロック図である。ビデオコーディングシステム10のビデオエンコーダ20(又は略してエンコーダ20)及びビデオデコーダ30(又は略してデコーダ30)は、この出願に記載される様々な例に従った技術を実行するように構成され得る装置の例を表す。
【0048】
図1Bに示すように、コーディングシステム10はソース装置12を含む。ソース装置12は、例えば符号化ピクチャといった符号化ピクチャデータ21を、符号化ピクチャデータ21を復号するように構成されたデスティネーション装置14に提供するように構成される。
【0049】
ソース装置12は、エンコーダ20を含んでおり、付加的に、すなわち、オプションで、ピクチャ源16と、例えばピクチャプリプロセッサといったプリプロセッサ(又は前処理ユニット)18と、通信インタフェース(又は通信ユニット)22とを含み得る。
【0050】
ピクチャ源16は、例えば実世界ピクチャをキャプチャするための、任意のタイプのピクチャキャプチャデバイス、及び/又は、例えばコンピュータアニメーションピクチャを生成するためのコンピュータグラフィックスプロセッサといった任意のタイプのピクチャ生成デバイス、又は、実世界ピクチャ、コンピュータ生成ピクチャ(例えば、スクリーンコンテンツ、仮想現実(virtual reality,VR)ピクチャ)及び/又はそれらの任意の組み合わせ(例えば、拡張現実(augmented reality,AR)ピクチャ)を取得及び/又は提供するための任意のタイプの他のデバイスを含むことができ、あるいはそれであることができる。ピクチャ源は、上述のピクチャのうちのいずれかを格納する任意のタイプのメモリ又はストレージとし得る。
【0051】
プリプロセッサ(又は前処理ユニット)によって実行される処理中のピクチャと区別するため、ピクチャ(又はピクチャデータ)17を元ピクチャ(又は元ピクチャデータ)17とも称することがある。
【0052】
プリプロセッサ18は、(元)ピクチャデータ17を受け取り、ピクチャデータ17上で前処理を行って、前処理済みピクチャ(又は前処理済みピクチャデータ)19を得るように構成される。プリプロセッサ18によって実行される前処理は、例えば、トリミング、カラーフォーマット変換(例えば、RGBからYCbCrへ)、カラー補正、又はノイズ除去を含み得る。理解され得ることには、前処理ユニット18はオプションコンポーネントとし得る。
【0053】
ビデオエンコーダ(又はエンコーダ)20は、前処理済みピクチャデータ19を受け取り、符号化ピクチャデータ21を提供するように構成される(更なる詳細については、例えば図2に基づいて後述する)。
【0054】
ソース装置12の通信インタフェース22は、符号化ピクチャデータ21を受け取り、符号化ピクチャデータ21(又はその更に処理した任意のバージョン)を、ストレージ又は直接的な再構成のために、通信チャネル13を介して、例えばデスティネーション装置14又は任意の他の装置といった他の装置に送信するように構成され得る。
【0055】
デスティネーション装置14は、デコーダ30を含んでおり、付加的に、すなわち、オプションで、通信インタフェース(又は通信ユニット)28と、ポストプロセッサ(又は後処理ユニット)32と、表示デバイス34とを含み得る。
【0056】
デスティネーション装置14の通信インタフェース28は、符号化ピクチャデータ21(又はその更に処理した任意のバージョン)を、例えば、ソース装置12から直接的に、あるいは例えば符号化ピクチャデータストレージ装置などのストレージ装置といった任意の他のソース装置から、受信して、符号化ピクチャデータ21をデコーダ30に提供するように構成される。
【0057】
通信インタフェース22及び通信インタフェース28は、ソース装置12とデスティネーション装置14との間の例えば直接的な有線若しくは無線接続といった直接的な通信リンク上で、あるいは、例えば、有線若しくは無線ネットワーク又はこれらの任意の組み合わせ、又は任意のタイプの私的及び公的ネットワーク、又はこれらの任意の種類の組み合わせといった任意のタイプのネットワーク上で、符号化ピクチャデータ(又は符号化データ)21を送信又は受信するように構成され得る。
【0058】
通信インタフェース22は、例えば、符号化ピクチャデータ21を例えばパケットといった適切なフォーマットにパッケージ化し、且つ/或いは、任意のタイプの伝送符号化又は通信リンク若しくは通信ネットワーク上での伝送のための処理を通じて符号化ピクチャデータを処理するように構成され得る。
【0059】
通信インタフェース28は、通信インタフェース22に対応して、例えば、伝送されたデータを受信し、任意のタイプの対応する伝送復号若しくは処理及び/又は脱パッケージ化を通じて伝送データを処理して、符号化ピクチャデータ21を得るように構成され得る。
【0060】
通信インタフェース22及び通信インタフェース28は各々、ソース装置12からデスティネーション装置14を指す図1Bの通信チャネル13に関する矢印によって示される単方向通信インタフェースとして構成されてもよいし、あるいは、双方向通信インタフェースとして構成されて、例えば、通信リンク及び/又は例えば符号化ピクチャデータ伝送といったデータ伝送に関係する他の情報を受信確認及び交換するために接続をセットアップするためなどで、メッセージを送受信するように構成されてもよい。
【0061】
ビデオデコーダ(又はデコーダ)30は、符号化ピクチャデータ21を受け取り、復号ピクチャ(又は復号ピクチャデータ)31を提供するように構成される(更なる詳細については、例えば図3に基づいて後述する)。
【0062】
ポストプロセッサ32は、例えば復号ピクチャといった復号ピクチャデータ31(再構成ビデオデータとしても参照する)を後処理して、例えば後処理済みピクチャといった後処理済みのピクチャデータ33を得るように構成される。後処理ユニット32によって実行される後処理は、例えば、カラーフォーマット変換(例えば、YCbCrからRGBへ)、カラー補正、トリミング、若しくはリサンプリング、又は、例えば表示デバイス34による表示のために復号ピクチャデータ31を準備するためなどの任意の他の処理を有し得る。
【0063】
表示デバイス34は、ピクチャを例えばユーザ又は視聴者に表示するために、後処理済みピクチャデータ33を受け取るように構成される。表示デバイス34は、例えば一体化された又は外付けのディスプレイ又はモニタといった、再構成ピクチャを表現するための任意のタイプのディスプレイとすることができ、あるいはそれを含むことができる。例えば、ディスプレイは、液晶ディスプレイ(liquid crystal display,LCD)、有機発光ダイオード(organic light emitting diode,OLED)ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、液晶・オン・シリコン(liquid crystal on silicon,LCoS)、デジタルライトプロセッサ(digital light processor,DLP)、又は任意のタイプの他のディスプレイを含み得る。
【0064】
コーディングシステム10は更にトレーニングエンジン25を含んでいる。トレーニングエンジン25は、再構成されるピクチャに対してスケーラブルな符号化及び復号を実行するようにエンコーダ20又はデコーダ30をトレーニングするように構成される。
【0065】
この出願のこの実施形態において、トレーニングデータはトレーニング行列セットを含む。トレーニング行列セットは、ピクチャブロックの、フィルタリング前ルマ行列、量子化ステップ行列、及びフィルタリング後ルマ行列を含む。フィルタリング前ルマ行列内の対応する位置のピクセルが、対応するピクチャブロック内の対応する位置のピクセルのフィルタリング前のルマ値に対応する。量子化ステップ行列内の対応する位置のピクセルが、対応するピクチャブロック内の対応する位置のピクセルのルマ値に対応する。フィルタリング後ルマ行列内の対応する位置のピクセルが、対応するピクチャブロック内の対応する位置のピクセルのフィルタリング後のルマ値に対応する。
【0066】
例えば、トレーニング行列セット内の複数の行列が、図6a-図6cに示すやり方でトレーニングエンジン25に入力され得る。図6aに示すように、トレーニング行列セット内の複数の行列がトレーニングエンジン25に直接入力され、該複数の行列は全て2次元行列である。図6bに示すように、トレーニング行列セット内の複数の行列の一部又は全てが組み合わせのために選択されて多次元行列が取得され、そして、該多次元行列がトレーニングエンジン25に入力される。図6cに示すように、トレーニング行列セット内の複数の行列の一部又は全てが加算(又は乗算)のために選択されて2次元行列が取得され、そして、該2次元行列がトレーニングエンジン25に入力される。
【0067】
トレーニングデータは、データベース(図には示さず)に格納されることができ、トレーニングエンジン25は、トレーニングデータに基づくトレーニングを通じてターゲットモデル(例えば、スケーラブルな符号化及び復号のためのニューラルネットワークとし得る)を取得する。なお、トレーニングデータのソースはこの出願のこの実施形態において限定されるものではない。例えば、クラウド又は他の場所からトレーニングデータを取得してモデルトレーニングを行ってもよい。
【0068】
トレーニングエンジン25は、フィルタリング前のピクセルが元のピクセル値に近くなるようにターゲットモデルをトレーニングする。各トレーニングプロセスにおいて、小バッチサイズを64ピクチャとすることができ、初期学習レートを1e-4とすることができ、ステップサイズを10とすることができる。トレーニングデータは、異なるQP量子化パラメータ設定に基づいてエンコーダによって生成されたデータとし得る。ターゲットモデルは、この出願のこの実施形態で提供されるスケーラブルな符号化及び復号方法を実施するために使用されることができる。具体的には、再構成されるピクチャ又はピクチャブロックが、関連する前処理の後にターゲットモデルに入力されて、フィルタリングされたピクチャ又はピクチャブロックが取得される。この出願のこの実施形態におけるターゲットモデルは具体的に、フィルタリングネットワークとし得る。以下にて、図7A図7Dを参照して、ターゲットモデルを詳細に説明する。
【0069】
トレーニングエンジン25によるトレーニングを通じて取得されたターゲットモデルをコーディングシステム10に適用することができ、例えば、図1Bに示したソース装置12(例えば、エンコーダ20)又はデスティネーション装置14(例えば、デコーダ30)に適用することができる。トレーニングエンジン25は、クラウド上でのトレーニングを通じてターゲットモデルを取得してもよく、コーディングシステム10は、クラウドからターゲットモデルをダウンロードして、ターゲットモデルを使用する。あるいは、トレーニングエンジン25は、クラウド上でのトレーニングを通じてターゲットモデルを取得し且つターゲットモデルを使用してもよく、コーディングシステム10は、クラウドから処理結果を直接取得する。
【0070】
図1Bは、ソース装置12及びデスティネーション装置14を別々の装置として描いているが、装置の実施形態はまた、ソース装置12とデスティネーション装置14、又はソース装置12とデスティネーション装置14の機能を含んでもよく、すなわち、ソース装置12又は対応する機能と、デスティネーション装置14又は対応する機能とを含んでもよい。そのような実施形態において、ソース装置12又は対応する機能と、デスティネーション装置14又は対応する機能は、同一のハードウェア及び/又はソフトウェアを用いることによって、又は別々のハードウェア及び/又はソフトウェアによって、又はこれらの任意の組み合わせによって実装され得る。
【0071】
該説明に従って、図1Bに示したようなソース装置12及び/又はデスティネーション装置14内の複数の異なるユニット又は機能の存在及び(正確な)分割は、実際の装置及び用途に応じて変わり得る。
【0072】
エンコーダ20(例えば、ビデオエンコーダ20)若しくはデコーダ30(例えば、ビデオデコーダ30)、又はエンコーダ20とデコーダ30との両方は、例えば、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processor,DSP)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array,FPGA)、ディスクリートロジック、ハードウェア、ビデオコーディング専用プロセッサ、又はこれらの任意の組み合わせなどの、図1Cに示すような処理回路によって実装され得る。エンコーダ20は、図2に示すエンコーダ20及び/又はここに記載されるいずれかの他のエンコーダシステム若しくはサブシステムに関して説明されるような様々なモジュールを具体化するように、処理回路46によって実装され得る。デコーダ30は、図3に示すデコーダ30及び/又はここに記載されるいずれかの他のデコーダシステム若しくはサブシステムに関して説明されるような様々なモジュールを具体化するように、処理回路46によって実装され得る。処理回路は、後述する様々な演算を実行するように構成され得る。図5に示すように、一部の技術がソフトウェアで実装される場合、装置が、好適な非一時的なコンピュータ読み取り可能記憶媒体にソフトウェアの命令を格納し、それらの命令を、1つ以上のプロセッサを用いることによってハードウェアにて実行することで、本発明の技術を実行することができる。ビデオエンコーダ20及びビデオデコーダ30のいずれかが、例えば図1Cに示すように、単一の装置内の結合されたエンコーダ/デコーダ(encoder/decoder,CODEC)の部分として一体化されてもよい。
【0073】
ソース装置12及びデスティネーション装置14は、例えば、ノートブック若しくはラップトップコンピュータ、携帯電話、スマートフォン、タブレット若しくはタブレットコンピュータ、カメラ、デスクトップコンピュータ、セットトップボックス、テレビジョン、ディスプレイ装置、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミング装置(例えばコンテンツサービスサーバ又はコンテンツ配信サーバなど)、放送受信器装置、放送送信器装置など、又はこれらに類するものといった、任意のタイプのハンドヘルド装置又は固定装置を含め、広範囲の装置うちのいずれかを含むことができ、また、オペレーティングシステムを使用しなくてもよいし、あるいは任意のタイプのオペレーティングシステムを使用してもよい。一部のケースにおいて、ソース装置12及びデスティネーション装置14は無線通信のためのコンポーネントを備え得る。従って、ソース装置12及びデスティネーション装置14は無線通信装置であってもよい。
【0074】
一部のケースにおいて、図1Bに示したビデオコーディングシステム10は、単に一例に過ぎず、この出願の技術は、必ずしも符号化装置と復号装置との間で如何なるデータ通信も含まないビデオコーディング設定(例えば、ビデオ符号化又はビデオ復号)に適用可能である。他の例において、データがローカルメモリから取り出されてネットワーク上でストリーミングされるなどする。ビデオ符号化装置が、データを符号化して符号化データをメモリに格納することができ、且つ/或いはビデオ復号装置が、メモリからデータを取り出してデータを復号することができる。一部の例において、符号化及び復号は、互いに通信せずに単にデータをメモリにエンコードする及び/又はメモリからデータを取り出してデータを復号する装置によって実行される。
【0075】
図1Cは、一実施形態例に従った、図2のビデオエンコーダ20及び/又は図3のビデオデコーダ30を含むビデオコーディングシステム40の一例を示す例示的な図である。ビデオコーディングシステム40は、撮像デバイス41、ビデオエンコーダ20、ビデオデコーダ30(及び/又は、処理回路46によって実装されるビデオエンコーダ/デコーダ)、アンテナ42、1つ以上のプロセッサ43、1つ以上のメモリ44、及び/又は表示デバイス45を含み得る。
【0076】
図1Cに示すように、撮像デバイス41、アンテナ42、処理回路46、ビデオエンコーダ20、ビデオデコーダ30、プロセッサ43、メモリ44、及び/又は表示デバイス45は、互いに通信することができる。ビデオコーディングシステム40は、異なる例においてビデオエンコーダ20のみ又はビデオデコーダ30のみを含んでもよい。
【0077】
一部の例において、アンテナ42は、ビデオデータの符号化ビットストリームを送信又は受信するように構成され得る。また、一部の例において、表示デバイス45は、ビデオデータを提示するように構成され得る。処理回路46は、特定用途向け集積回路(application-specific integrated circuit,ASIC)ロジック、グラフィックス処理ユニット、汎用プロセッサ、又はこれらに類するものを含み得る。ビデオコーディングシステム40はまた、オプションのプロセッサ43を含み得る。オプションのプロセッサ43は、同様に、特定用途向け集積回路(application-specific integrated circuit,ASIC)ロジック、グラフィックスプロセッサ、汎用プロセッサ、又はこれらに類するものを含み得る。また、メモリ44は、例えば、揮発性メモリ(例えば、スタティックランダムアクセスメモリ(static random access memory,SRAM)若しくはダイナミックランダムアクセスメモリ(dynamic random access memory,DRAM))又は不揮発性メモリ(例えば、フラッシュメモリ)といった、任意のタイプのメモリとし得る。非限定的な一例において、メモリ44は、キャッシュメモリによって実装されてもよい。他の例において、処理回路46は、画像バッファを実装するためのメモリ(例えば、キャッシュ)を含んでいてもよい。
【0078】
一部の例において、論理回路を用いることによって実装されるビデオエンコーダ20は、ピクチャバッファ(これは、例えば、処理回路46又はメモリ44によって実装される)及びグラフィックス処理ユニット(これは、例えば、処理回路46によって実装される)を含み得る。グラフィックス処理ユニットは、ピクチャバッファに通信可能に結合され得る。グラフィックス処理ユニットは、図2に関して説明される様々なモジュール及び/又はここで説明される何らかの他のエンコーダシステム若しくはサブシステムを具現化するように処理回路46によって実装されるビデオエンコーダ20を含み得る。論理回路は、この明細書中で説明される様々な動作を実行するように構成され得る。
【0079】
一部の例において、ビデオデコーダ30は、図3のビデオデコーダ30を参照して説明される様々なモジュール及び/又はこの明細書中で説明される何らかの他のデコーダシステム若しくはサブシステムを実装するよう、同様にして処理回路46によって実装され得る。一部の例において、論理回路を用いることによって実装されるビデオデコーダ30は、ピクチャバッファ(これは、処理回路46又はメモリ44によって実装される)及びグラフィックス処理ユニット(これは、例えば、処理回路46によって実装される)を含み得る。グラフィックス処理ユニットは、ピクチャバッファに通信可能に結合され得る。グラフィックス処理ユニットは、図3を参照して説明される様々なモジュール及び/又はここで説明される何らかの他のデコーダシステム若しくはサブシステムを具現化するように処理回路46によって実装されるビデオデコーダ30を含み得る。
【0080】
一部の例において、アンテナ42は、ビデオデータの符号化ビットストリームを受信するように構成され得る。説明するように、符号化ビットストリームは、例えば、コーディング分割(例えば、変換係数又は量子化された変換係数、オプションのインジケータ(説明する)、及び/又はコーディング分割を定めるデータ)に関係するデータといった、この明細書中で説明されるビデオフレーム符号化に関係するデータ、インジケータ、インデックス値、モード選択データ、又はこれらに類するものを含み得る。ビデオコーディングシステム40は更に、アンテナ42に結合され且つ符号化ビットストリームを復号するように構成されたビデオデコーダ30を含み得る。表示デバイス45は、ビデオフレームを提示するように構成される。
【0081】
理解されるべきことには、この出願のこの実施形態において、ビデオエンコーダ20を参照して説明される例に対して、ビデオデコーダ30は逆のプロセスを実行するように構成され得る。シグナリングシンタックス要素に関して、ビデオデコーダ30は、そのようなシンタックス要素を受信して解析し、それに対応して、関係するビデオデータを復号するように構成され得る。一部の例において、ビデオエンコーダ20は、シンタックス要素を符号化ビデオビットストリームにエントロピー符号化し得る。そのような例において、ビデオデコーダ30は、そのようなシンタックス要素を解析し、それに従って、関係するビデオデータを復号し得る。
【0082】
説明の便宜上、本発明の実施形態は、ここでは、例えば、ITU-Tビデオコーディングエキスパートグループ(Video Coding Experts Group,VCEG)とISO/IECムービングピクチャエキスパートグループ(Moving Picture Experts Group,MPEG)とのジョイントコラボラティブチーム・オン・ビデオコーディング(Joint Collaborative Team on Video Coding,JCT-VC)によって開発されたバーサタイルビデオコーディング(Versatile Video Coding,VVC)又はハイエフィシェンシビデオコーディング(High-Efficiency Video Coding,HEVC)のリファレンスソフトウェアを参照して説明される。当業者が理解し得ることには、本発明の実施形態はHEVC又はVVCに限定されるものではない。
【0083】
エンコーダ及び符号化方法
図2は、この出願の技術を実装するように構成されたビデオエンコーダ20の一例を示す概略ブロック図である。図2の例において、ビデオエンコーダ20は、入力(又は入力インタフェース)201、残差計算ユニット204、変換処理ユニット206、量子化ユニット208、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(DPB)230、モード選択ユニット260、エントロピー符号化ユニット270、及び出力(又は出力インタフェース)272を含んでいる。モード選択ユニット260は、インター予測ユニット244、イントラ予測ユニット254、及び分割ユニット262を含み得る。インター予測ユニット244は、動き推定ユニット及び動き補償ユニット(図示せず)を含み得る。図2に示すビデオエンコーダ20は、ハイブリッドビデオエンコーダ、又はハイブリッドビデオコーデックに基づくビデオエンコーダとしても参照され得る。
【0084】
残差計算ユニット204、変換処理ユニット206、量子化ユニット208、及びモード選択ユニット260は、エンコーダ20の前方信号経路を形成する。逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、バッファ216、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer,DPB)230、インター予測ユニット244、及びイントラ予測ユニット254は、エンコーダの後方信号経路を形成する。エンコーダ20の後方信号経路は、デコーダ(図3のデコーダ30を参照)の信号経路に対応する。逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ230、インター予測ユニット244、及びイントラ予測ユニット254は、ビデオエンコーダ20の“内蔵デコーダ”を形成する。
【0085】
量子化
量子化ユニット208は、例えばスカラー量子化又はベクトル量子化を通じて、変換係数207を量子化して、量子化された変換係数209を得るように構成され得る。量子化された変換係数209は、量子化された残差係数209としても参照され得る。
【0086】
量子化プロセスは、変換係数207の一部又は全てに関係するビット深度を減少させ得る。例えば、nはmより大きいとして、nビットの変換係数が量子化の間にmビットの変換係数に丸められ得る。量子化の程度は、量子化パラメータ(quantization parameter,QP)を調節することによって変更され得る。例えば、スカラー量子化では、より細かい又はより粗い量子化を達成するために、異なるスケールが適用され得る。より小さい量子化ステップは、より細かい量子化に対応し、より大きい量子化ステップは、より粗い量子化に対応する。適切な量子化ステップが、量子化パラメータ(quantization parameter,QP)によって指し示され得る。例えば、量子化パラメータは、予め定められた一組の適切な量子化ステップに対するインデックスとし得る。例えば、より小さい量子化パラメータがより細かい量子化(より小さい量子化ステップ)に対応することができるとともに、より大きい量子化パラメータがより粗い量子化(より大きい量子化ステップ)に対応するとすることができ、その逆もまた然りである。量子化は、量子化ステップによる除算を含むことができ、そして、例えば逆量子化ユニット210によって実行される、対応する又は逆の量子化解除は、量子化ステップによる乗算を含むことができる。例えばHEVCなどの一部の標準に従った実施形態は、量子化パラメータを用いて量子化ステップを決定し得る。一般に、量子化ステップは、除算を含む式の固定小数点近似を用いることによって、量子化パラメータに基づいて計算され得る。残差ブロックのノルムを復元するために、他のスケール係数が量子化及び量子化解除に対して導入されてもよい。残差ブロックのノルムは、量子化ステップ及び量子化パラメータについての式の固定小数点近似に使用されるスケールに起因して変更され得る。一実装例において、逆変換のスケールが量子化解除のスケールと組み合わされてもよい。あるいは、カスタマイズされた量子化テーブルを使用し、それをエンコーダからデコーダへ例えばビットストリーム内でシグナリングしてもよい。量子化は、非可逆演算であり、より大きい量子化ステップは、より大きい損失を示す。
【0087】
一実施形態において、ビデオエンコーダ20(対応して、量子化ユニット208)は、例えばビデオデコーダ30が復号のために量子化パラメータを受信して適用することができるように、量子化パラメータ(quantization parameter,QP)を、例えば、直接、又はエントロピー符号化ユニット270によって実行される符号化後に、又は圧縮後に出力するように構成され得る。
【0088】
逆量子化
逆量子化ユニット210は、例えば、量子化ユニット208の量子化ステップと同じ量子化ステップに基づいて又はそれを用いて、量子化ユニット208によって実行された量子化スキームの逆を適用することによって、量子化された係数に対して量子化ユニット208の逆量子化を実行して、量子化解除された係数211を得るように構成される。量子化解除された係数211は、量子化解除された残差係数211として参照されることもあり、変換係数207に対応するが、通常は、量子化によって発生する損失に起因して変換係数と完全に同じではない。
【0089】
再構成
再構成ユニット214(例えば、加算器214)は、例えば再構成残差ブロック213のピクセル値と予測ブロック265のピクセル値とを足し合わせることによって、変換ブロック213(すなわち、再構成残差ブロック213)を予測ブロック265に足し合わせて、ピクセルドメインにおける再構成ブロック215を得るように構成される。
【0090】
フィルタリング
ループフィルタユニット220(又は略して“ループフィルタ”220)は、再構成ブロック215をフィルタリングして、フィルタリングされたブロック221を得るように構成され、又は通常、再構成ピクセルをフィルタリングして、フィルタリングされたピクセル値を得るように構成される。ループフィルタユニットは、例えば、ピクセル変換を平滑化するように構成され、又はその他の方法でビデオ品質を向上させるように構成される。ループフィルタユニット220は、例えば、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset,SAO)フィルタ、又は例えば適応ループフィルタ(adaptive loop filter,ALF)、ノイズ抑制フィルタ(noise suppression filter,NSF)若しくはこれらの任意の組み合わせといった1つ以上の他のフィルタなどの、1つ以上のループフィルタを含み得る。一例において、ループフィルタユニット220は、デブロッキングフィルタ、SAOフィルタ、及びALFフィルタを含み得る。フィルタリングプロセスの順序は、デブロッキングフィルタ、SAOフィルタ、そして、ALFフィルタとし得る。他の一例において、ルママッピング・ウィズ・クロマスケーリング(luma mapping with chroma scaling,LMCS)として参照されるプロセス(すなわち、適応インループリシェイパ)が追加される。このプロセスは、デブロッキングの前に実行される。他の一例において、デブロッキングフィルタリングプロセスは、例えば、アフィンサブブロックエッジ、ATMVPサブブロックエッジ、サブブロック変換(sub-block transform,SBT)エッジ、及びイントラサブパーティション(intra sub-partition,ISP)エッジといった、内部のサブブロックエッジにも適用され得る。ループフィルタユニット220は、図2ではループフィルタとして示されているが、他の構成では、ループフィルタユニット220は、ポストループフィルタとして実装されてもよい。フィルタリングされたブロック221は、フィルタリングされた再構成ブロック221として参照され得る。
【0091】
一実施形態において、ビデオエンコーダ20(対応して、ループフィルタユニット220)は、例えばデコーダ30が復号のために同じ又は異なるループフィルタパラメータを受信して適用することができるように、ループフィルタパラメータ(例えばSAOフィルタパラメータ、ALFフィルタパラメータ、又はLMCSパラメータなど)を、例えば、直接、又はエントロピー符号化ユニット270によって実行されるエントロピー符号化の後に出力するように構成され得る。
【0092】
デコーダ及び復号方法
図3は、この出願の技術を実装するように構成されたビデオデコーダ30の一例を示している。ビデオデコーダ30は、例えば、エンコーダ20によって符号化された符号化ピクチャデータ21(例えば、符号化ビットストリーム21)を受信して、復号ピクチャ331を得るように構成される。符号化ピクチャデータ又はビットストリームは、例えば符号化ビデオスライス(及び/又はタイルグループ若しくはタイル)のピクチャブロックを表すデータといった符号化ピクチャデータと、関係するシンタックス要素とを復号するための情報を含む。
【0093】
図3の例において、デコーダ30は、エントロピー復号ユニット304、逆量子化ユニット310、逆変換処理ユニット312、再構成ユニット314(例えば、加算器314)、ループフィルタ320、復号ピクチャバッファ(DBP)330、モード適用ユニット360、インター予測ユニット344、及びイントラ予測ユニット354を含んでいる。インター予測ユニット344は、動き補償ユニットとすることができ、あるいはそれを含むことができる。ビデオデコーダ30は、一部の例において、図2のビデオエンコーダ20に関して説明した符号化プロセスを実質的に逆にしたものである復号プロセスを実行し得る。
【0094】
エンコーダ20に関して説明したように、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(DPB)230、インター予測ユニット344、及びイントラ予測ユニット354はまた、ビデオエンコーダ20の“内蔵デコーダ”を形成する。従って、逆量子化ユニット310は、機能において逆量子化ユニット110に同じであるとすることができ、逆変換処理ユニット312は、機能において逆変換処理ユニット212に同じであるとすることができ、再構成ユニット314は、機能において再構成ユニット214に同じであるとすることができ、ループフィルタ320は、機能においてループフィルタ220に同じであるとすることができ、復号ピクチャバッファ330は、機能において復号ピクチャバッファ230に同じであるとすることができる。従って、ビデオエンコーダ20のそれぞれのユニット及び機能についての説明は、対応して、ビデオデコーダ30のそれぞれのユニット及び機能に当てはまる。
【0095】
逆量子化
逆量子化ユニット310は、符号化ピクチャデータ21から量子化パラメータ(quantization parameter,QP)(又は、一般に、逆量子化に関する情報)及び量子化された係数を受け取り(例えばエントロピー復号ユニット304によって、例えば解析及び/又は復号することによって)、復号した量子化された係数309に対して、量子化パラメータに基づいて逆量子化を実行して、変換係数311としても参照され得るものである量子化解除された係数311を得るように構成され得る。逆量子化プロセスは、ビデオスライス内の各ビデオブロックに対してビデオエンコーダ20によって計算された量子化パラメータに基づいて量子化の程度を決定することと、同様に、実行されるべき逆量子化の程度を決定することとを含み得る。
【0096】
再構成
再構成ユニット314(例えば、加算器314)は、例えば再構成残差ブロック313のピクセル値と予測ブロック365のピクセル値とを足し合わせることによって、再構成残差ブロック313を予測ブロック365に足し合わせて、ピクセルドメインにおける再構成ブロック315を得るように構成され得る。
【0097】
フィルタリング
ループフィルタユニット320(コーディングループ内又はコーディングループ後のいずれか)は、例えば、ピクセル変換を平滑化するため又はビデオ品質を向上させるために、再構成ブロック315をフィルタリングして、フィルタリングされたブロック321を得るように構成される。ループフィルタユニット320は、例えば、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset,SAO)フィルタ、又は例えば適応ループフィルタ(adaptive loop filter,ALF)、ノイズ抑制フィルタ(noise suppression filter,NSF)若しくはこれらの任意の組み合わせといった1つ以上の他のフィルタなどの、1つ以上のループフィルタを含み得る。一例において、ループフィルタユニット320は、デブロッキングフィルタ、SAOフィルタ、及びALFフィルタを含み得る。フィルタリングプロセスの順序は、デブロッキングフィルタ、SAOフィルタ、そして、ALFフィルタとし得る。他の一例において、ルママッピング・ウィズ・クロマスケーリング(luma mapping with chroma scaling,LMCS)として参照されるプロセス(すなわち、適応インループリシェイパ)が追加される。このプロセスは、デブロッキングの前に実行される。他の一例において、デブロッキングフィルタリングプロセスは、例えば、アフィンサブブロックエッジ、ATMVPサブブロックエッジ、サブブロック変換(sub-block transform,SBT)エッジ、及びイントラサブパーティション(intra sub-partition,ISP)エッジといった、内部のサブブロックエッジにも適用され得る。ループフィルタユニット320は、図3ではループフィルタとして示されているが、他の構成では、ループフィルタユニット320は、ポストループフィルタとして実装されてもよい。
【0098】
デコーダ30は、ユーザへの提示又はユーザによる視聴のために、例えば出力332を介して、復号ピクチャ331を出力するように構成される。
【0099】
上述の実施形態は主にビデオコーディングに基づいて説明されているが、留意されるべきことには、コーディングシステム10、エンコーダ20、及びデコーダ30の実施形態、並びにここで説明される他の実施形態は、静止画処理又はコーディング、すなわち、ビデオコーディングにおける先行又は連続したピクチャとは独立した個々のピクチャの処理又はコーディングにも適用可能である。一般に、ピクチャ処理が単一のピクチャ17に限られる場合、インター予測ユニット244(エンコーダ)及びインター予測ユニット344(デコーダ)は利用不可能とし得る。例えば、残差計算204/304、変換206、量子化208、逆量子化210/310、(逆)変換212/312、分割262/362、イントラ予測254/354、及び/又はループフィルタリング220/320、エントロピー符号化270、並びにエントロピー復号304といった、ビデオエンコーダ20及びビデオデコーダ30の他の機能(ツール又は技術とも称される)は全て、静止画処理に等しく使用され得る。
【0100】
図4は、本発明の一実施形態に従ったビデオコーディング装置400の概略図である。ビデオコーディング装置400は、ここに記載される開示実施形態を実装するのに適用可能である。一実施形態において、ビデオコーディング装置400は、例えば図1Bのビデオデコーダ30などのデコーダ又は例えば図1Bのビデオエンコーダ20などのエンコーダとし得る。
【0101】
ビデオコーディング装置400は、データを受信するための入口ポート410(又は入力ポート410)及び受信器ユニット(receiver unit,Rx)420と、データを処理するためのプロセッサ、論理ユニット、又は中央処理ユニット(CPU)430(例えば、プロセッサ430はニューラルネットワーク処理ユニット430とし得る)と、データを送信するための送信器ユニット(transmitter unit,Tx)440及び出口ポート450(又は出力ポート450)と、データを格納するためのメモリ460とを含んでいる。ビデオコーディング装置400はまた、入口ポート410、受信器ユニット420、送信器ユニット440、及び出口ポート450に結合されて光信号又は電気信号の出口又は入口として構成される光-電気(optical-to-electrical,OE)コンポーネント及び電気-光(electrical-to-optical,EO)コンポーネントを含み得る。
【0102】
プロセッサ430は、ハードウェア及びソフトウェアによって実装される。プロセッサ430は、1つ以上の、CPUチップ、コア(例えば、マルチコアプロセッサ)、FPGA、ASIC、及びDSPとして実装され得る。プロセッサ430は、入口ポート410、受信器ユニット420、送信器ユニット440、出口ポート450、及びメモリ460と連通している。プロセッサ430は、コーディングモジュール470(例えば、ニューラルネットワーク(neural network,NN)ベースのコーディングモジュール470)を含んでいる。コーディングモジュール470は、上述の開示実施形態を実装する。例えば、コーディングモジュール470は、様々なコーディング演算を実装し、処理し、準備し、又は提供する。従って、コーディングモジュール470を含むことは、ビデオコーディング装置400の機能への実質的な改良を提供し、異なる状態へのビデオコーディング装置400の切り替えに作用する。あるいは、コーディングモジュール470は、メモリ460に格納されてプロセッサ430によって実行される命令に基づいて実装される。
【0103】
メモリ460は、1つ以上のディスク、テープドライブ、及びソリッドステートドライブを含むことができ、また、オーバーフローデータストレージデバイスとして使用されて、プログラムが実行のために選択されるときにそのようなプログラムを格納するとともに、プログラム実行中に読み出される命令及びデータを格納し得る。メモリ460は、揮発性及び/又は不揮発性とすることができ、読み出し専用メモリ(read-only memory,ROM)、ランダムアクセスメモリ(random access memory,RAM)、三値連想メモリ(ternary content-addressable memory,TCAM)、及び/又はスタティックランダムアクセスメモリ(static random-access memory,SRAM)とし得る。
【0104】
図5は、一実施形態例に従った装置500の簡略ブロック図である。装置500は、図1Bのソース装置12及びデスティネーション装置14のいずれか又は双方として使用され得る。
【0105】
装置500内のプロセッサ502は、中央処理ユニットとし得る。あるいは、プロセッサ502は、現存の又は今後開発される情報を制御又は処理することが可能な任意の他のタイプのデバイス又は複数のデバイスであってもよい。開示される実装は、例えばプロセッサ502といった、図示のような単一のプロセッサで実施され得るものの、2つ以上のプロセッサを用いることによって、より高速なスピード及びより高い効率を達成することができる。
【0106】
装置500内のメモリ504は、一実装において、読み出し専用メモリ(ROM)デバイス又はランダムアクセスメモリ(RAM)デバイスとし得る。任意の他の好適タイプのストレージデバイスがメモリ504として使用されてもよい。メモリ504は、バス512を介してプロセッサ502によってアクセスされることが可能なコード及びデータ506を含み得る。メモリ504は更に、オペレーティングシステム508及びアプリケーションプログラム510を含み得る。アプリケーションプログラム510は、ここに記載される方法をプロセッサ502が実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム510はアプリケーション1乃至Nを含むことができ、さらに、ここに記載される方法を実行するビデオコーディングアプリケーションを含むことができる。
【0107】
装置500は更に、例えばディスプレイ518などの1つ以上の出力装置を含み得る。ディスプレイ518は、一例において、タッチ入力をセンシングするように構成されたタッチ感知素子とディスプレイを組み合わせたタッチ感知ディスプレイとし得る。ディスプレイ518は、バス512を介してプロセッサ502に結合され得る。
【0108】
ここでは単一のバスとして描かれているが、装置500のバス512は複数のバスを含んでいてもよい。さらに、補助的なストレージが、装置500の他のコンポーネントに直接的に結合されたり、ネットワーク上でアクセスされたりすることができ、それが、例えばメモリカードなどの単一の集積ユニット、又は例えば複数のメモリカードなどの複数のユニットを含み得る。装置500は、従って、広範な多様な構成で実装され得る。
【0109】
本発明の実施形態は、カラー成分ビットレート割り当て向けの非可逆AIピクチャコーディング方式に関し、図1A図5で説明したビデオコーディングシステム、エンコーダ、及びデコーダに適用可能である。
【0110】
なお、この出願で提供される方法は主に、Y、U、及びV成分向けのビットレート割り当てプロセスに適用される。このプロセスは主として、エンコーダサイドによって制御される。デコーダサイドをいっそう適応的にするために、対応する制御ユニットをデコーダにも追加し得る。
【0111】
ビデオピクチャ信号は、通常、1つのルマ成分と2つのクロマ成分とを含む。ルマ成分は、通常、記号Yによって表され、クロマ成分は、通常、記号U又はVによって表される。図の(a)-(c)に示すように、一般的に使用されるYUVフォーマットは、以下のフォーマットを含む。図において、×印はルマ成分のサンプリングポイントを表し、〇印は各クロマ成分のサンプリングポイントを表す。
【0112】
4:4:4フォーマット:クロマ成分がダウンサンプリングされない。
【0113】
4:2:2フォーマット:対ルマ成分でクロマ成分について2:1の水平ダウンサンプリングが実行され、垂直ダウンサンプリングは実行されない。2つのUサンプリングポイント又はVサンプリングポイントごとに、走査される各行が4つのYサンプリングポイントを含む。
【0114】
4:2:0フォーマット:対ルマ成分でクロマ成分について2:1の水平ダウンサンプリングが実行され、且つ2:1の垂直ダウンサンプリングが実行される。
【0115】
ビデオピクチャがYUV4:2:0フォーマットである場合において、ピクチャブロックのルマ成分が2N×2Nピクチャブロックである場合、該ピクチャブロックのクロマ成分はN×Nピクチャブロックである。本発明のこの実施形態では、4:2:0フォーマットの例を用いて本発明の技術的ソリューションを説明する。しかしながら、理解され得ることには、本発明の技術的ソリューションは、YUV4:2:0フォーマットに加えて、他のYUVフォーマット又は例えばRGBフォーマットといった他のビデオピクチャフォーマットにおける異なる成分間での相互予測にも適用可能である。一方、現在ブロックは、正方形ブロックであってもよいし、非正方形の長方形ブロック又は他の形状の領域であってもよく、本発明の実施形態で提供される技術的ソリューションがこれまた適用可能である。
【0116】
説明を容易にするために、第1信号成分及び第2信号成分を使用することによって本発明のこの実施形態を説明する。ピクチャ信号がルマ信号成分とクロマ信号成分とを含む場合、第1信号成分はクロマ成分とすることができ、第2信号成分はルマ成分とすることができる。ピクチャ信号が3つの信号成分R、G、及びBを含む場合、第1信号成分は、3つの信号成分R、G、及びBのうち任意の1つとすることができ、第2信号成分は、3つの信号成分R、G、及びBのうち、第1信号成分とは異なる1つとすることができる。その他のやり方でピクチャ信号が複数の信号成分に分解される場合、同様の方法を用いて第1信号成分及び第2信号成分を指定し得る。
【0117】
以下で説明するように、この出願のこの実施形態では、品質係数がビットレート制御モジュール(又はビットレート割り当て制御モジュールとして参照する)に入力され得る。該モジュールが各成分の特徴マップの制御信号を生成する。各成分の制御信号の制御ベクトルに、対応する特徴マップを乗算することで、量子化された特徴値、すなわち、符号化対象の特徴値を取得する。
【0118】
図7Aは、本発明の一実施形態に従ったYUVビットレート割り当てのためのAIピクチャコーディングシステム700を示している。AIピクチャコーディングシステム700は、ビデオピクチャエンコーダ及びデコーダに適用可能である。図7Aに示すように、ピクチャコーディングシステム700は、エンコーダサイドの、第1信号成分処理モジュール(例えば、Y成分処理モジュール)、第2信号成分処理モジュール(例えば、UV成分処理モジュール)、ビットレート割り当て制御モジュール、及びエントロピー符号化モジュールと、デコーダサイドの、第1信号成分処理モジュール(Y成分処理モジュール2)、第2信号成分処理モジュール(例えば、UV成分処理モジュール2)、及びエントロピー復号モジュールと、を含んでいる。ピクチャコーディングシステム700は、オプションで、ジョイント処理モジュール、ジョイント処理モジュール2、及び品質応答モジュール(ビットレート割り当て制御モジュール2又はビットレート制御モジュール2としても参照する)を含む。ピクチャコーディングシステム700では、Y成分の品質係数及びUV成分の品質係数がビットレート割り当て制御モジュールに入力される。該モジュールが、Y成分処理モジュールによって出力されたY成分の特徴マップ及びUV成分処理モジュールによって出力されたUV成分の特徴マップ(これらは別々に第1特徴マップとして参照され得る)にそれぞれ適用される制御信号を出力するとともに、各信号成分の第2特徴マップを出力して、Y成分及びUV成分のビットレートを割り当てる。そして、これらの信号成分の第2特徴マップに基づいてビデオ信号のビットストリームが取得される。例えば、Y成分処理モジュール及びUV成分処理モジュールによって出力された特徴マップが共に直接連結され、あるいは、Y成分処理モジュール及びUV成分処理モジュールによって出力された特徴マップが共に直接足し合わされて、エンコーダによって最終的に出力される特徴マップを形成し、該最終的に出力される特徴マップに対してエントロピー符号化が実行される。オプションで、Y成分処理モジュール及びUV成分処理モジュールによって出力された特徴マップがジョイント処理モジュールに入力されて、エンコーダによって最終的に出力される特徴マップが取得され、該最終的に出力される特徴マップに対してエントロピー符号化が実行される。
【0119】
図7Aに示すアーキテクチャにおいて、図7Bは符号化方法の一実施形態である。ステップ701:第1信号成分の品質係数に基づいて第1信号成分の制御信号を取得する。ステップ702:第2信号成分の品質係数に基づいて第2信号成分の制御信号を取得する。例えば、図7Bに示す実施形態において、第1信号成分の制御信号は、第1信号成分の品質係数に基づいてN個の候補第1制御信号から取得されることができ、Nは1より大きい整数である。第2信号成分の制御信号は、第2信号成分の品質係数に基づいてM個の候補第2制御信号から取得されることができ、Mは1より大きい整数である。NとMは等しくてもよいし、等しくなくてもよい。これはこの出願において限定されることではない。
【0120】
ステップ703:第1信号成分の制御信号を第1信号成分の第1特徴マップに適用して、第1信号成分の第2特徴マップを取得する。ステップ704:第2信号成分の制御信号を第2信号成分の第1特徴マップに適用して、第2信号成分の第2特徴マップを取得する。
【0121】
例えば、一実施形態において、制御信号は、ネットワークによる学習を通じて生成され、Y成分処理モジュール及びUV成分処理モジュールの各々におけるネットワークの少なくとも1つの層によって出力された特徴マップ(これは第1特徴マップとして参照され得る)に適用されて、第2特徴マップが出力される。例えば、制御信号は、ネットワークの最後の層によって出力された特徴マップに適用される。
【0122】
ステップ705:第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得する。
【0123】
Y成分処理モジュール及びUV成分処理モジュールの各々におけるネットワークの任意の層によって出力される第1特徴マップに制御信号が適用され得るので、第2特徴マップが出力された後に、ニューラルネットワークによる処理は、第2特徴マップに対して実行され続け得る。それに対応して、Y成分の第2特徴マップとUV成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得することは、
第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、又は
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、を含む。
【0124】
ピクチャコーディングシステム700がジョイント処理モジュールを含む場合、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得することは、
第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、又は
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、に対してジョイント処理を実行して、ジョイント特徴マップを取得し、該ジョイント特徴マップに対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、を含む。
【0125】
詳細は以下の通りである。
【0126】
制御信号がY及びUV特徴マップの制御ベクトルを含む場合、ビットレート割り当て制御モジュールは、学習を通じて、第1信号成分のN個の候補第1制御信号(例えば、制御ベクトル行列{qy1,qy2,…,qyi,…,qyN})と、第2信号成分のM個の候補第2制御信号(例えば、制御ベクトル行列{quv1,quv2,…,quvj,…,quvM})とを生成する。使用時に、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御信号qyiが取得され、UV成分の品質係数のインデックスjに基づいて、第2信号成分の制御信号quvjが取得される。N及びMは1より大きい整数である。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算される。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、Y成分の品質係数のインデックスi及びUV成分の品質係数のインデックスjを含む。
【0127】
制御信号がY及びUV特徴マップの制御ベクトルとオフセットベクトルとを含む場合、上述の方法で説明したように、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御ベクトルqyi及びオフセットベクトルbyiが取得され、UV成分の品質係数のインデックスjに基づいて、第2信号成分の制御ベクトルquvj及びオフセットベクトルbuviが取得される。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算され、且つ対応するオフセットベクトルが加算される。
【0128】
他の一実施形態において、Y成分の制御信号及びUV成分の制御信号が2タプルとして使用される。ビットレート割り当て制御モジュールは、学習を通じて、ビデオ信号のN個の候補制御信号(例えば、制御信号行列{qc1,qc2,…,qci,…,qcN}を生成する。この場合、cは2であり、各制御ベクトルqciが、第1信号成分の制御ベクトル及び第2信号成分の制御ベクトルの両方を含む。次いで、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分及び第2信号成分を含む制御信号qciが取得される。オフセットベクトルは同様にして実装される。具体的には、ビデオ信号の各オフセットベクトルが、第1信号成分のオフセットベクトル及び第2信号成分のオフセットベクトルの両方を含む。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、ビデオ信号の品質係数のインデックスiを含む。
【0129】
更なる他の一実施形態において、Y成分の品質係数及びUV成分の品質係数が、全結合型ネットワークへの入力として使用され、制御ベクトルqyi及び制御ベクトルquvjが出力される。異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算される。Y成分の品質係数及びUV成分の品質係数が全結合型ネットワークへの入力として使用され、オフセットベクトルbyi及びオフセットベクトルbuvjが更に出力され得る。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算され、且つ各オフセットベクトルがチャネルごとに対応する特徴マップに加算される。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、Y成分の品質係数及びUV成分の品質係数を含む。
【0130】
デコーダサイドは、受信したビットストリームに対してエントロピー復号を実行して特徴マップを取得し、該特徴マップが、Y成分の特徴マップとUV成分の特徴マップとに分解される。オプションで、エントロピー復号を通じて取得された特徴マップが最初にジョイント処理サブモジュール2に入力されて、Y成分の特徴マップ及びUV成分の特徴マップが取得される。
【0131】
Y成分の特徴マップ及びUV成分の特徴マップが、それぞれ、Y成分処理モジュール2及びUV成分処理モジュール2に入力されて、Y成分の再構成マップ及びUV成分の再構成マップが出力される。オプションで、Y成分の品質係数及びUV成分の品質係数が品質応答モジュールに入力される。該モジュールが、Y成分及びUV成分の適応品質応答を実装するために、Y成分処理モジュールによって出力されるY成分の特徴マップ及びUV成分処理モジュールによって出力されるUV成分の特徴マップにそれぞれ適用される応答信号を出力する。品質応答は、品質制御として参照されることもあり、単に、エンコーダサイドでの品質制御から区別するために、デコーダサイドでは品質応答として参照される。
【0132】
具体的には、一例として図7Cに示すように、ステップ711:デコーダサイドが、エンコーダサイドからビデオ信号のビットストリームを取得し、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第1信号成分(例えば、Y成分)の特徴マップ及びビデオ信号の第2信号成分(例えば、UV成分)の特徴マップを取得する。
【0133】
デコーダサイドは更に、ビットストリームから、第1信号成分の品質係数情報及び第2信号成分の品質係数情報を取得する。第1信号成分の品質係数情報は、第1信号成分の品質係数、又は第1信号成分の品質係数のインデックスである。第2信号成分の品質係数情報は、第2信号成分の品質係数、又は第2信号成分の品質係数のインデックスである。そして、第1信号成分の品質係数情報に基づいて、第1信号成分の応答信号が取得され、第2信号成分の品質係数情報に基づいて、第2信号成分の応答信号が取得される。第1信号成分の品質係数情報が第1信号成分の品質係数である場合、第1信号成分の品質係数の値はNのうちの1つである。あるいは、第1信号成分の品質係数情報が第1信号成分の品質係数のインデックスである場合、第1信号成分の品質係数のインデックスの値域は0からN-1又は1からNであり、Nは1より大きい整数である。同様に、第2信号成分の品質係数情報が第2信号成分の品質係数である場合、第2信号成分の品質係数の値はMのうちの1つである。あるいは、第2信号成分の品質係数情報が第2信号成分の品質係数のインデックスである場合、第2信号成分の品質係数のインデックスの値域は0からM-1又は1からMであり、Mは1より大きい整数である。
【0134】
ジョイント特徴マップがエンコーダサイドから伝達される場合、デコーダサイドは更に、ジョイント特徴マップに対してエントロピー復号を実行し、ニューラルネットワークによる処理を通じて、第1信号成分の特徴マップ及び第2信号成分の特徴マップを取得する必要がある。
【0135】
ステップ712:第1信号成分の品質係数情報に基づいて、第1信号成分の応答信号を取得する。ステップ713:第2信号成分の品質係数情報に基づいて、第2信号成分の応答信号を取得する。
【0136】
一実施形態において、ビットストリームがY成分の品質係数のインデックスi及びUV成分の品質係数のインデックスjを含む場合、デコーダサイドは、学習を通じて、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}と、第2信号成分の応答信号行列{guv1,guv2,…,guvj,…,guvM}とを生成する必要があり、N及びMは1より大きい整数である。オプションで、エンコーダサイドでの第1信号成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}の逆数をとることによって、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}が取得され、エンコーダサイドでの第2信号成分の制御信号行列{quv1,quv2,…,quvj,…,quvM}の逆数をとることによって、第2信号成分の応答信号行列{guv1,guv2,…,guvj,…,guvM}が取得され、N及びMは1より大きい整数である。Y成分の品質係数のインデックスiに基づいて、第1信号成分の応答信号gyiが取得される。UV成分の品質係数のインデックスjに基づいて、第2信号成分の応答信号guvjが取得される。
【0137】
他の一実施形態において、ビットストリームがビデオ信号の品質係数のインデックスiを含む場合、デコーダサイドは、学習を通じて、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成する必要があり、cは2であってY成分及びUV成分を表し、Nは1より大きい整数である。オプションで、エンコーダサイドでのビデオ信号の制御信号行列{qc1,qc2,…,qci,…,qcN}の逆数をとることによって、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}が取得され、cは2であってY成分及びUV成分を表し、Nは1より大きい整数である。ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分及び第2信号成分を含む応答信号gciが取得される。
【0138】
更なる他の一実施形態において、ビットストリームが第1信号成分の品質係数及び第2信号成分の品質係数を含む場合、デコーダサイドは、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の応答信号を出力し、UV成分の品質係数を全結合型ネットワークへの入力として使用し、UV成分の応答信号を出力する。
【0139】
ステップ714:第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得する。ステップ715:第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得する。
【0140】
応答信号が応答ベクトルを含む場合、第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得することは、
第1信号成分の応答ベクトルに第1信号成分の特徴マップを乗算して、第1信号成分の再構成マップを取得すること、又は、第1信号成分の応答ベクトルに第1信号成分の特徴マップを乗算し、次いで、ニューラルネットワークによる処理を通じて、第1信号成分の再構成マップを取得することを含む。
【0141】
第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得することは、
第2信号成分の応答ベクトルに第2信号成分の特徴マップを乗算して、第2信号成分の再構成マップを取得すること、又は、第2信号成分の応答ベクトルに第2信号成分の特徴マップを乗算し、次いで、ニューラルネットワークによる処理を通じて、第2信号成分の再構成マップを取得することを含む。
【0142】
応答信号が応答ベクトルとオフセットベクトルとを含む場合、第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得することは、
第1信号成分の応答ベクトルに第1信号成分の特徴マップを乗算し、次いで、第1信号成分のオフセットベクトルを加算して、第1信号成分の再構成マップを取得すること、又は、第1信号成分の応答ベクトルに第1信号成分の特徴マップを乗算し、第1信号成分のオフセットベクトルを加算し、次いで、ニューラルネットワークによる処理を通じて、第1信号成分の再構成マップを取得することを含む。
【0143】
第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得することは、
第2信号成分の応答ベクトルに第2信号成分の特徴マップを乗算し、次いで、第2信号成分のオフセットベクトルを加算して、第2信号成分の再構成マップを取得すること、又は、第2信号成分の応答ベクトルに第2信号成分の特徴マップを乗算し、第2信号成分のオフセットベクトルを加算し、次いで、ニューラルネットワークによる処理を通じて、第2信号成分の再構成マップを取得することを含む。
【0144】
ステップ716:第1信号成分の再構成マップと第2信号成分の再構成マップとに基づいてビデオ信号を再構成する。
【0145】
図7Dは、本発明の一実施形態に従ったYUVビットレート割り当てのためのAIピクチャコーディングシステム710を示している。AIピクチャコーディングシステム710は、ビデオピクチャエンコーダ及びデコーダに適用可能である。図7Dに示すように、ピクチャコーディングシステム710は、エンコーダサイドの、第1信号成分処理モジュール(例えば、Y成分処理モジュール)、第2信号成分処理モジュール(例えば、U成分処理モジュール)、第3信号成分処理モジュール(例えば、V成分処理モジュール)、ビットレート割り当て制御モジュール、及びエントロピー符号化モジュールと、デコーダサイドの、第1信号成分処理モジュール(Y成分処理モジュール2)、第2信号成分処理モジュール(例えば、U成分処理モジュール2)、第3信号成分処理モジュール(例えば、V成分処理モジュール2)、及びエントロピー復号モジュールと、を含んでいる。ピクチャコーディングシステム710は、オプションで、ジョイント処理モジュール、ジョイント処理モジュール2、及び品質応答モジュール(ビットレート割り当て制御モジュール2又はビットレート制御モジュール2としても参照する)を含む。ピクチャコーディングシステム710では、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数がビットレート割り当て制御モジュールに入力される。該モジュールが、Y成分処理モジュールによって出力されたY成分の特徴マップ、U成分処理モジュールによって出力されたU成分の特徴マップ、及びV成分処理モジュールによって出力されたV成分の特徴マップ(これらは別々に第1特徴マップとして参照され得る)にそれぞれ適用される制御信号を出力するとともに、各信号成分の第2特徴マップを出力して、Y成分、U成分、及びV成分のビットレートを割り当てる。そして、これらの信号成分の第2特徴マップに基づいてビデオ信号のビットストリームが取得される。例えば、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールによって出力された特徴マップが共に直接連結され、あるいは、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールによって出力された特徴マップが共に直接足し合わされて、エンコーダによって最終的に出力される特徴マップを形成し、該最終的に出力される特徴マップに対してエントロピー符号化が実行される。オプションで、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールによって出力された特徴マップがジョイント処理モジュールに入力されて、エンコーダによって最終的に出力される特徴マップが取得され、該最終的に出力される特徴マップに対してエントロピー符号化が実行される。
【0146】
図7Dに示す実施形態において、第1信号成分の制御信号は、第1信号成分(Y成分)の品質係数に基づいてN個の候補第1制御信号から取得されることができる。第2信号成分の制御信号は、第2信号成分(U成分)の品質係数に基づいてM個の候補第2制御信号から取得されることができる。第3信号成分の制御信号は、第3信号成分(V成分)の品質係数に基づいてL個の候補第3制御信号から取得されることができる。N、M、及びLは、1より大きい整数であり、等しくてもよいし、等しくなくてもよい。これはこの出願において限定されることではない。
【0147】
図7Dに示すアーキテクチャにおいて、符号化及び復号方法は、図7B及び図7Cにおけるものと同様である。詳細は以下の通りである。
【0148】
例えば、一実施形態において、制御信号は、ネットワークによる学習を通じて生成され、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールの各々におけるネットワークの少なくとも1つの層によって出力された特徴マップ(これは第1特徴マップとして参照され得る)に適用されて、第2特徴マップが出力される。例えば、制御信号は、ネットワークの最後の層によって出力された特徴マップに適用される。Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールの各々におけるネットワークの任意の層によって出力される第1特徴マップに制御信号が適用され得るので、第2特徴マップが出力された後に、ニューラルネットワークによる処理は、第2特徴マップに対して実行され続け得る。それに対応して、Y成分の第2特徴マップと、U成分の第2特徴マップと、V成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得することは、
第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、ニューラルネットワークによって処理された第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、ニューラルネットワークによって処理された第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、ニューラルネットワークによって処理された第2信号成分の第2特徴マップと、ニューラルネットワークによって処理された第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、又は
ニューラルネットワークによって処理された第1信号成分の第2特徴マップと、第2信号成分の第2特徴マップと、ニューラルネットワークによって処理された第3信号成分の第2特徴マップと、に対してエントロピー符号化を実行して、ビデオ信号のビットストリームを取得すること、を含む。
【0149】
ピクチャコーディングシステム710がジョイント処理モジュールを含む場合、取得された第2特徴マップ、又は処理された特徴マップと組み合わせに対して、更にジョイント処理を実行して、ジョイント特徴マップを取得することができ、該ジョイント特徴マップに対してエントロピー符号化が実行されて、ビデオ信号のビットストリームが取得される。
【0150】
詳細は以下の通りである。
【0151】
制御信号がY、U、及びV特徴マップの制御ベクトルを含む場合、ビットレート割り当て制御モジュールは、学習を通じて、第1信号成分のN個の候補第1制御信号(例えば、制御ベクトル行列{qy1,qy2,…,qyi,…,qyN})と、第2信号成分のM個の候補第2制御信号(例えば、制御ベクトル行列{qu1,qu2,…,quj,…,quM})と、第3信号成分のL個の候補第3制御信号(例えば、制御ベクトル行列{qv1,qv2,…,qvk,…,qvL})とを生成する。使用時に、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御信号qyiが取得される。U成分の品質係数のインデックスjに基づいて、第2信号成分の制御信号qujが取得される。V成分の品質係数のインデックスkに基づいて、第3信号成分の制御信号qvkが取得される。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算される。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、Y成分の品質係数のインデックスi、U成分の品質係数のインデックスj、及びV成分の品質係数のインデックスkを含む。
【0152】
制御信号がY、U、及びV特徴マップの制御ベクトルとオフセットベクトルとを含む場合、上述の方法で説明したように、使用時に、Y成分の品質係数のインデックスiに基づいて、第1信号成分の制御ベクトルqyi及びオフセットベクトルbyiが取得され、UV成分の品質係数のインデックスjに基づいて、第2信号成分の制御ベクトルquj及びオフセットベクトルbuiが取得され、V成分の品質係数のインデックスkに基づいて、第3信号成分の制御ベクトルqvk及びオフセットベクトルbviが取得される。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算され、且つ対応するオフセットベクトルが加算される。
【0153】
他の一実施形態において、Y成分の制御信号、U成分の制御信号、及びV成分の制御信号が3タプルとして使用される。ビットレート割り当て制御モジュールは、学習を通じて、ビデオ信号のN個の候補制御信号(例えば、制御ベクトル行列{qc1,qc2,…,qci,…,qcN}を生成する。この場合、cは3であり、各制御ベクトルqciが、第1信号成分の制御ベクトル、第2信号成分の制御ベクトル、及び第3信号成分の制御ベクトルを含む。次いで、ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分、第2信号成分、及び第3信号成分を含む制御信号qciが取得される。オフセットベクトルは同様にして実装される。具体的には、ビデオ信号の各オフセットベクトルが、第1信号成分のオフセットベクトル、第2信号成分のオフセットベクトル、及び第3信号成分のオフセットベクトルを含む。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、ビデオ信号の品質係数のインデックスiを含む。
【0154】
更なる他の一実施形態において、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数が、全結合型ネットワークへの入力として使用され、制御ベクトルqyi、制御ベクトルquj、及び制御ベクトルqvkが出力される。異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算される。Y成分の品質係数、U成分の品質係数、及びV成分の品質係数が全結合型ネットワークへの入力として使用され、オフセットベクトルbyi、オフセットベクトルbuj、及びオフセットベクトルbvkが更に出力され得る。次いで、異なる成分の特徴マップを制御するために、各制御ベクトルにチャネルごとに対応する特徴マップが乗算され、且つ各オフセットベクトルがチャネルごとに対応する特徴マップに加算される。この場合、デコーダサイドに送られるビデオ信号のビットストリームは、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数を含む。
【0155】
デコーダサイドは、受信したビットストリームに対してエントロピー復号を実行して特徴マップを取得し、該特徴マップが、Y成分の特徴マップと、U成分の特徴マップと、V成分の特徴マップとに分解される。オプションで、エントロピー復号を通じて取得された特徴マップが最初にジョイント処理サブモジュール2に入力されて、Y成分の特徴マップ、U成分の特徴マップ、及びV成分の特徴マップが取得される。
【0156】
Y成分の特徴マップ、U成分の特徴マップ、及びV成分の特徴マップが、それぞれ、Y成分処理モジュール2、U成分処理モジュール2、及びV成分処理モジュール2に入力されて、Y成分の再構成マップ、U成分の再構成マップ、及びV成分の再構成マップが出力される。オプションで、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数が品質応答モジュールに入力される。該モジュールが、Y、U、及びV成分の適応品質応答を実装するために、Y成分処理モジュールによって出力されるY成分の特徴マップ、U成分処理モジュールによって出力されるU成分の特徴マップ、及びV成分処理モジュールによって出力されるV成分の特徴マップにそれぞれ適用される制御信号を出力する。
【0157】
応答信号は、制御信号のやり方と同様のやり方で生成される。区別を容易にするために、エンコーダサイドの信号を制御信号として参照し、デコーダサイドの信号を応答信号として参照する。
【0158】
具体的には、デコーダサイドは、エンコーダサイドからビデオ信号のビットストリームを取得し、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第1信号成分(例えば、Y成分)の特徴マップ、ビデオ信号の第2信号成分(例えば、U成分)の特徴マップ、及びビデオ信号の第信号成分(例えば、V成分)の特徴マップを取得し、学習を通じて取得された第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得し、学習を通じて取得された第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得し、学習を通じて取得された第3信号成分の応答信号と第3信号成分の特徴マップとに基づいて、第3信号成分の再構成マップを取得し、第1信号成分の再構成マップと、第2信号成分の再構成マップと、第3信号成分の再構成マップとに基づいて、ビデオ信号を再構成する。
【0159】
デコーダサイドは更に、ビットストリームから、第1信号成分の品質係数情報、第2信号成分の品質係数情報、及び第3信号成分の品質係数情報を取得する。第1信号成分の品質係数情報及び第2信号成分の品質係数情報は、図7Aに示した実施形態におけるものと同様である。同様に、第3信号成分の品質係数情報は、第3信号成分の品質係数、又は第3信号成分の品質係数のインデックスとし得る。そして、第3信号成分の品質係数情報に基づいて、第3信号成分の応答信号が取得される。第3信号成分の品質係数情報が第3信号成分の品質係数である場合、第3信号成分の品質係数の値はLのうちの1つである。あるいは、第3信号成分の品質係数情報が第3信号成分の品質係数のインデックスである場合、第3信号成分の品質係数のインデックスの値域は0からL-1又は1からLであり、Lは1より大きい整数である。L、M、及びNは等しくてもよいし、等しくなくてもよい。これはこの出願において限定されることではない。
【0160】
ジョイント特徴マップがエンコーダサイドから伝達される場合、デコーダサイドは更に、ジョイント特徴マップに対してエントロピー復号を実行し、ニューラルネットワークによる処理を通じて、第1信号成分の特徴マップ、第2信号成分の特徴マップ、及び第3信号成分の特徴マップを取得する必要がある。
【0161】
一実施形態において、ビットストリームがY成分の品質係数のインデックスi、U成分の品質係数のインデックスj、及びV成分の品質係数のインデックスkを含む場合、デコーダサイドは、学習を通じて、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}、第2信号成分の応答信号行列{gu1,gu2,…,guj,…,guM}、及び第3信号成分の応答信号行列{gv1,gv2,…,gvk,…,gvL}を生成する必要があり、N、M、及びLは1より大きい整数である。オプションで、エンコーダサイドでの第1信号成分の制御信号行列{qy1,qy2,…,qyi,…,qyN}の逆数をとることによって、第1信号成分の応答信号行列{gy1,gy2,…,gyi,…,gyN}が取得され、エンコーダサイドでの第2信号成分の制御信号行列{qu1,qu2,…,quj,…,quM}の逆数をとることによって、第2信号成分の応答信号行列{gu1,gu2,…,guj,…,guM}が取得され、エンコーダサイドでの第3信号成分の制御信号行列{qv1,qv2,…,qvk,…,qvL}の逆数をとることによって、第3信号成分の応答信号行列{gv1,gv2,…,gvk,…,gvL}が取得され、N、M、及びLは1より大きい整数である。Y成分の品質係数のインデックスiに基づいて、第1信号成分の応答信号gyiが取得される。U成分の品質係数のインデックスjに基づいて、第2信号成分の応答信号gujが取得される。V成分の品質係数のインデックスkに基づいて、第3信号成分の応答信号gvkが取得される。
【0162】
他の一実施形態において、ビットストリームがビデオ信号の品質係数のインデックスiを含む場合、デコーダサイドは、学習を通じて、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}を生成する必要があり、cは3であってY成分、U成分、及びV成分を表し、Nは1より大きい整数である。オプションで、エンコーダサイドでのビデオ信号の制御ベクトル行列{qc1,qc2,…,qci,…,qcN}の逆数をとることによって、ビデオ信号の応答信号行列{gc1,gc2,…,gci,…,gcN}が取得され、cは3であってY成分、U成分、及びV成分を表し、Nは1より大きい整数である。ビデオ信号の品質係数のインデックスiに基づいて、第1信号成分、第2信号成分、及び第3信号成分を含む応答信号gciが取得される。
【0163】
更なる他の一実施形態において、ビットストリームが第1信号成分の品質係数、第2信号成分の品質係数、及び第3信号成分の品質係数を含む場合、デコーダサイドは、Y成分の品質係数を全結合型ネットワークへの入力として使用し、Y成分の応答信号を出力し、U成分の品質係数を全結合型ネットワークへの入力として使用し、U成分の応答信号を出力し、V成分の品質係数を全結合型ネットワークへの入力として使用し、V成分の応答信号を出力する。
【0164】
第1信号成分及び第2信号成分の再構成マップが、図7Aに示したのと同様にして取得される。詳細をここで再び説明することはしない。
【0165】
一実施形態において、応答信号が応答ベクトルを含む場合、第3信号成分の応答信号と第3信号成分の特徴マップとに基づいて、第3信号成分の再構成マップを取得することは、
第3信号成分の応答ベクトルに第3信号成分の特徴マップを乗算して、第3信号成分の再構成マップを取得すること、又は、第3信号成分の応答ベクトルに第3信号成分の特徴マップを乗算し、次いで、ニューラルネットワークによる処理を通じて、第3信号成分の再構成マップを取得することを含む。
【0166】
他の一実施形態において、応答信号が応答ベクトルとオフセットベクトルとを含む場合、第3信号成分の応答信号と第3信号成分の特徴マップとに基づいて、第3信号成分の再構成マップを取得することは、
第3信号成分の応答ベクトルに第3信号成分の特徴マップを乗算し、次いで、第3信号成分のオフセットベクトルを加算して、第3信号成分の再構成マップを取得すること、又は、第3信号成分の応答ベクトルに第3信号成分の特徴マップを乗算し、第3信号成分のオフセットベクトルを加算し、次いで、ニューラルネットワークによる処理を通じて、第3信号成分の再構成マップを取得することを含む。
【0167】
図7Aの実施形態では、UV成分がコンビネーションとして処理される。図7Dにおいて、Y、U、及びV成分は、別々に処理されることができ、あるいは、例えば、Y成分とUV成分とのコンビネーション、又はY、U、及びV成分の別のコンビネーションとして処理されることができる。
【0168】
図8A及び図8Bは共に、具体的な一実施形態を提供する。図8Aは、この実施形態に従った技術的スキームの全体ブロック図である。Y成分の品質係数及びUV成分の品質係数が、ビットレート割り当て制御モジュールに入力される。該モジュールが、Y成分処理モジュールによって出力されたY成分の特徴マップ及びUV成分処理モジュールによって出力されたUV成分の特徴マップにそれぞれ適用される制御ベクトルqyi及び制御ベクトルquviを出力して、Y成分及びUV成分のビットレートを割り当てる。
【0169】
デコーダサイドは、Y成分の品質係数及びUV成分の品質係数を品質応答モジュールに入力する。該モジュールが、Y成分の特徴マップ及びUV成分の特徴マップにそれぞれ適用される制御ベクトルgyi及び制御ベクトルguviを出力して、Y成分及びUV成分のそれぞれの品質利得応答を実装する。
【0170】
この実施形態において、図8Bに示す具体例の理解を容易にするために、Y成分処理モジュール、UV成分処理モジュール、ジョイント処理モジュール、確率推定モジュール、Y成分処理モジュール2、UV成分処理モジュール2、及びジョイント処理モジュール2の具体的なネットワーク構造に限定は課されない。
【0171】
ステップ1:Y成分及びUV成分の特徴マップを取得する。
【0172】
Y成分及びUV成分が、それぞれ、Y成分処理モジュール及びUV成分処理モジュールに入力され、ネットワークがY成分及びUV成分の特徴マップを出力する。図8Bに示す例において、Y成分処理モジュールは、2つの畳み込み層及び2つの非線形層を含む。該2つの畳み込み層において水平方向及び垂直方向のダウンサンプリング係数は2であり、Y成分処理モジュールはY成分の特徴マップを出力する。UV成分処理モジュールは、2つの畳み込み層及び2つの非線形層を含む。1つめの畳み込み層における水平方向及び垂直方向のダウンサンプリング係数は1であり、すなわち、ダウンサンプリング処理は実行されない。UV成分処理モジュール内の2つめの畳み込み層において水平方向及び垂直方向のダウンサンプリング係数は2である。UV成分処理モジュールはUV成分の特徴マップを出力する。ネットワークによる上述の処理の後、YUV420データフォーマットでは、Y成分の特徴マップの幅及び高さは、UV成分の特徴マップのそれらと同じである。
【0173】
YUV420データフォーマットの処理方式と同様に、YUV444データフォーマット及びYUV422データフォーマットでも、Y成分の特徴マップの幅及び高さがUV成分の特徴マップのそれらと同じになるように、畳み込み層の数並びに水平方向及び垂直方向のダウンサンプリング係数が制御される。
【0174】
ステップ2:Y成分の品質係数及びUV成分の品質係数をビットレート割り当てモジュールに入力して、制御ベクトルqyi及び制御ベクトルquviを取得し、制御ベクトルqyi及び制御ベクトルquviにチャネルごとにY成分及びUV成分の特徴マップを乗算し、て、Y成分及びUV成分の処理済み特徴マップを取得し、足し合わせた又は連結した処理済み特徴マップをジョイント処理モジュールに入力し、符号化対象の特徴マップを出力する。
【0175】
ビットレート割り当てモジュールは、制御行列Q及びQuvを含んでおり、Y成分の品質係数及びUV成分の品質係数を制御行列Q及びQuvのインデックス値として用いて、Q及びQuvのインデックスから制御ベクトルqyi及び制御ベクトルquviを取得する。制御行列Q及びQuvは、ネットワークによる学習を通じて取得される。Y成分の品質係数及びUV成分の品質係数は任意の設定値である。
【0176】
図8Bに示す例において、制御行列Qは、K×Nのサイズを持つ2次元行列であり、制御行列Quvは、L×Mのサイズを持つ2次元行列であり、これら2つの行列内の各要素は、ネットワークによって学習可能なパラメータである。Kは、Y成分の特徴マップの数を表し、Lは、UV成分の特徴マップの数を表し、Nは、Y成分の品質係数の候補値のN個のグループを表し、Mは、UV成分の品質係数の候補値のM個のグループを表す。例えば、Nが4であり且つMが4である場合、Y成分の品質係数の候補値は{0.5,0.7,0.8,1.0}であり、UV成分の品質係数の候補値は{0.15,0.2,0.25,0.3}である。
【0177】
ステップ3:符号化対象の特徴マップをエントロピー符号化モジュールに入力し、ビットストリームを出力する。図8Bに示す例では、符号化対象の特徴マップが符号化特徴マップハイパーエントロピーモジュールに入力されて、符号化対象のシンボルの確率分布が出力される。符号化対象のシンボルの確率分布に基づいて算術符号化が実行され、ビットストリームが出力される。また、Y成分の品質係数及びUV成分の品質係数に関する情報がビットストリームに書き込まれる。
【0178】
Y成分の品質係数及びUV成分の品質係数に関する情報は、以下の3つの方式で表現されてビットストリームに書き込まれ得る。
【0179】
方式1:Y成分の品質係数の候補値の数及び候補値、並びにUV成分の候補値の数及び候補値が予め定められ、Y成分の品質係数及びUV成分の品質係数のそれぞれの候補リストにおけるインデックス番号がデコーダサイドに伝達される。例えば、Nが4であり且つMが3である場合、Y成分の品質係数の候補値は{0.5,0.7,0.8,1.0}であり、UV成分の品質係数の候補値は{0.15,0.2,0.25}である。Y成分のインデックス番号i及びUV成分のインデックス番号jがビットストリームに書き込まれ、i及びjの値は、0、1、2、及び3である。iが1であるとき、それはY成分の品質係数が0.7であることを示し、jが0であるとき、それはUV成分の品質係数が0.15であることを示す。
【0180】
方式2:Y成分の品質係数及びUV成分の品質係数が組み合わされた後の候補値の数及び候補値が予め定められる。例えば、Y成分及びUV成分の品質係数のコンビネーション値の候補値の数は6であり、候補リストは{(0.5,0.25),(0.7,0.15),(0.7,0.25),(0.8,0.1),(0.8,0.2),及び(1.0,0.2)}である。インデックス番号iがビットストリームに書き込まれ、iの値は0、1、2、3、4、及び5である。iが1である場合、それはY成分及びUV成分の品質係数が(0.7,0.15)であることを示す。
【0181】
方式3:Y成分の品質係数及びUV成分の品質係数が直接、ビットストリームに書き込まれてデコーダサイドに伝達される。例えば、(1.0,0.2)がビットストリームに書き込まれる。
【0182】
ステップ4:ビットストリームをエントロピー復号モジュールに入力し、算術復号を実行して、特徴マップ、Y成分の品質係数、及びUV成分の品質係数を取得する。図8Bに示す例では、ハイパーエントロピーモジュールによって推定される確率分布に基づいて算術復号が実行される。
【0183】
ステップ5:復号を通じて特徴マップを取得し、該特徴マップをジョイント処理モジュール2に入力し、そのチャネルの数がMである特徴マップを出力し、そのチャネルの数がMである特徴マップを、そのチャネルの数がKであるY成分の特徴マップと、そのチャネルの数がLであるUV成分の特徴マップとに分割する。この分割スキームでは、K≦M且つL≦Mである。K=L=Mであるとき、それは、Y成分の特徴マップがUV成分の特徴マップと同じであり、且つどちらもM個のチャネルを持つ特徴マップであることを示す。図8Bに示す例において、ジョイント処理モジュール2は、2つの畳み込み層及び1つの非線形層を含む。
【0184】
ステップ6:Y成分の品質係数及びUV成分の品質係数を品質応答モジュールに入力して、応答ベクトルgyi及び応答ベクトルguviを取得し、応答ベクトルgyi及び応答ベクトルguviにチャネルごとにY成分及びUV成分の特徴マップを乗算して、品質利得後のY成分及びUV成分の特徴マップを取得する。品質利得後のY成分及びUV成分の特徴マップが、それぞれ、Y成分処理モジュール2及びUV成分処理モジュール2に入力され、Y成分の再構成マップ及びUV成分の再構成マップが出力される。
【0185】
品質応答モジュールは、応答行列G及びGuvを含んでおり、復号を通じて得られたY成分の品質係数及びUV成分の品質係数を応答行列G及びGuvのインデックス値として用いて、G及びGuvのインデックスから応答ベクトルgyi及び応答ベクトルguviを取得する。
【0186】
応答行列G及びGuvは、ネットワークによる学習を通じて取得される。図8Bに示す例において、応答行列Gは、K×Nのサイズを持つ2次元行列であり、応答行列Guvは、L×Mのサイズを持つ2次元行列であり、これら2つの行列内の各要素は、ネットワークによって学習可能なパラメータである。Kは、Y成分の特徴マップの数を表し、Lは、UV成分の特徴マップの数を表し、Nは、Y成分の品質係数の候補値のN個のグループを表し、Mは、UV成分の品質係数の候補値のM個のグループを表す。
【0187】
オプションで、応答行列G及びGuvは、それぞれ、制御行列Q及びQuvの逆数をとることによって取得される。
【0188】
この実施形態では、ステップ1からステップでネットワークモジュール及び制御行列パラメータに対してトレーニング及び学習が実行される。具体的には、この出願では、ニューラルネットワークに対して最適化トレーニングを実行するために適応モーメント推定(Adaptive Moment Estimation,Adam)最適化アルゴリズムが使用され、ImgeNetデータセットがトレーニングデータセットである。このネットワーク構造はピクチャコーディングを志向しているので、トレーニング最適化の目的は、ビットレート-歪み結合損失関数を最小化することであり、関数の関数式は次の通りである:
【数1】
【0189】
p(y)は、確率推定器によって推定される確率分布を表し、xはY成分の元の値であり、x’はY成分の再構成マップであり、xはU成分の元の値であり、x’はU成分の再構成マップであり、xはV成分の元の値であり、x’はV成分の再構成マップであり、wはY成分の品質係数であり、wはU成分の品質係数であり、wはV成分の品質係数である。λは定数であり、ターゲットビットレートに合致する。
【0190】
例えば、Nは4であり、Y、U、及びV成分の品質係数(w,w,w)の候補値は、{(0.5,0.25,0.25),(0.7,0.4,0.4),(0.8,0.1,0.1),(1.0,0.2,0.2)}である。ネットワークによるトレーニング中に、重みグループのインデックス番号iが{0,1,2,3}からランダムに選択される。iに基づいて、重み値グループ(wyi,wui,wvi)、学習対象の制御ベクトルqyi、及び学習対象の制御ベクトルquviが決定され、トレーニング目的に基づいてネットワークモジュール及び制御行列パラメータに対してトレーニング及び学習が実行される。
【0191】
ジョイント処理モジュール及び/又はジョイント処理モジュール2及び/又は品質応答モジュールが、この実施形態で提供されるコーデックから除去される場合、これは、この出願の他の実施形態に対して依然として適用可能である。
【0192】
この実施形態は、Y、U、及びV成分がY成分とUV成分とに組み合わされる技術的ソリューションを提供する。Y、U、及びV成分の他のコンビネーション、例えば、{YU,V}及び{YV,U}に対して、この出願の解決案は依然として適用可能である。
【0193】
同様に、処理のためにUV成分は更にU成分とV成分とに分割され、この出願の解決案は依然として適用可能である。
【0194】
従来のエンドツーエンドピクチャコーディングでは、特定のネットワークの学習及び最適化において、Y、U、及びV成分の固定された重み値に基づいて最適化が行われる。従って、Y、U、及びV成分のビットレートの比が固定されている。異なるピクチャは異なる色特性を持つので、固定のビットレート割り当ては、一部のビデオピクチャの乏しい符号化性能を引き起こす。Y、U、及びV成分のビットレートの異なる割り当てを実施するために、単純に複数のモデルがY、U、及びV成分の複数グループの異なる重み値に基づいてトレーニングされることがあるかもしれない。しかしながら、これはモデルの数を増加させ、複数のモデルをトレーニングすることは、大量のコンピューティングリソース及び時間を消費する。従来技術と比較して、この出願では、Y、U、及びV成分の導出された重み値に基づいてネットワークによる学習を通じて制御ベクトルが取得され、該制御ベクトルに基づいて、Y成分及びUV成分の特徴マップに対して異なる程度まで歪み制御が行われて、Y成分及びUV成分のビットレート割り当てを実施する。従って、この出願は以下の利点を有する。
【0195】
(1)Y、U、及びV成分間でのビットレート割り当てが、異なる色特性を持つピクチャに適応することがサポートされる。
【0196】
(2)複数のモデルをトレーニングするのに必要な時間、及びモデルの新たなネットワークパラメータの数が減少される。
【0197】
図9A及び図9Bは共に、具体的な一実施形態を提供する。この実施形態では、図9A及び図9Bに示すように、U成分処理モジュール及びV成分処理モジュールを使用して、U成分データ及びV成分データをそれぞれ処理する。この実施形態では、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数が、ビットレート割り当て制御モジュールへの入力として用いられ、制御信号が出力されて、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のいずれか層において特徴マップを処理することで、Y、U、及びV成分間でのビットレート割り当てを実施する。デコーダサイドは、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数を品質応答モジュールへの入力として用い、制御信号が出力されて、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のいずれかの層において特徴マップに対する品質利得応答を実行する。この出願において、図9Aに示す具体例の理解を容易にするために、ビットレート割り当て制御モジュール、品質応答モジュール、Y成分処理モジュール、U成分処理モジュール、ジョイント処理モジュール、Y成分処理モジュール2、U成分処理モジュール2、V成分処理モジュール2、ジョイント処理モジュール2、エントロピー符号化モジュール、及びエントロピー復号モジュールの具体的なネットワーク構造に限定は課されない。
【0198】
図9Bに示す例において、ステップ1:Y成分の品質係数、U成分の品質係数、及びV成分の品質係数をビットレート割り当て制御モジュールに入力する。該モジュールは全結合型ネットワークを含んでおり、制御ベクトル及びオフセットベクトルである制御信号を出力する。
【0199】
ステップ2:符号化対象のY、U、及びV信号を、それぞれ、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールに入力する。例えば、Y成分処理モジュール内で、各畳み込み層で出力される特徴マップにチャネルごとにその特徴マップに対応する制御ベクトルが乗算され、次いで、チャネルごとにその特徴マップに対応するオフセットベクトルが加算される。該モジュール内の非線形層で出力される特徴マップにチャネルごとに対応する制御ベクトルが乗算される。Y成分処理モジュール内のネットワークの各層で出力される特徴マップは、ビットレート制御モジュールによって出力される制御信号に基づいて処理される。U及びV成分の処理は、Y成分のそれと同様である。
【0200】
図9Bは、具体的なネットワーク構造の概略図である。Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュールのネットワーク構造は、1つめの畳み込み層を除いて同じである。YUV422フォーマットでは、Y成分処理モジュール内の1つめの畳み込み層において、水平方向及び垂直方向のダウンサンプリング係数は2である。U成分処理モジュール及びV成分処理モジュール内の1つめの畳み込み層において、水平方向のダウンサンプリング係数は1であり、すなわち、ダウンサンプリング処理は実行されない。垂直方向ではダウンサンプリング係数は2である。YUV420フォーマットでは、Y成分処理モジュール内の1つめの畳み込み層において、水平方向及び垂直方向のダウンサンプリング係数は2である。U成分処理モジュール及びV成分処理モジュール内の1つめの畳み込み層において、水平方向及び垂直方向のダウンサンプリング係数は1であり、すなわち、ダウンサンプリング処理は実行されない。
【0201】
ステップ3:Y成分の特徴マップ、U成分の特徴マップ、及びV成分の特徴マップを連結してスティッチングして符号化対象の特徴マップを形成し、該符号化対象の特徴マップをエントロピー符号化モジュールに入力し、ビットストリームを出力する。図9Bに示す例では、符号化対象の特徴マップが符号化特徴マップハイパーエントロピーモジュールに入力されて、符号化対象のシンボルの確率分布が出力される。符号化対象のシンボルの確率分布に基づいて算術符号化が実行され、ビットストリームが出力される。また、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数に関する情報がビットストリームに書き込まれる。
【0202】
ステップ4:ビットストリームをエントロピー復号モジュールに入力し、算術復号を実行して、特徴マップと、Y成分の品質係数、U成分の品質係数、及びV成分の品質係数に関する情報とを取得する。図9Bに示す例では、ハイパーエントロピーモジュールによって推定される確率分布に基づいて算術復号が実行される。
【0203】
ステップ:復号を通じて得られた特徴マップをジョイント処理モジュール2に入力し、特徴マップを出力する。
【0204】
ステップ:Y成分の品質係数、U成分の品質係数、及びV成分の品質係数を品質応答モジュールに入力して、応答ベクトルgyi、応答ベクトルgui、及び応答ベクトルgviを取得する。応答ベクトルgyiにチャネルごとにY成分処理モジュール2内の2つめの畳み込み層で出力された特徴マップが乗算されて、品質利得後の特徴マップが取得される。U及びV成分に対する処理プロセスは同様である。Y成分処理モジュール2、U成分処理モジュール2、及びV成分処理モジュール2は、Y、U、及びV成分の再構成マップを出力する。
【0205】
Y成分の品質係数、U成分の品質係数、及びV成分の品質係数が品質応答モジュールに入力される。該モジュールは、全結合型ネットワークを含んでおり、応答ベクトルgyi、応答ベクトルgui、及び応答ベクトルgviを出力する。
【0206】
オプションで、実施形態1における応答ベクトル取得方式と同様に、品質応答モジュールは、応答行列G、G、及びGを含み、復号を通じて得られたY成分の品質係数、U成分の品質係数、及びV成分の品質係数を、応答行列G、G、及びGのインデックス値として用いて、応答ベクトルgyi、応答ベクトルgui、及び応答ベクトルgviを取得する。応答行列G、G、及びGは、ネットワークによる学習を通じて取得される。
【0207】
ネットワークのトレーニングプロセスは、図8A及び図8Bの実施形態におけるものと同様であり、詳細を再び説明することはしない。
【0208】
この実施形態では、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のネットワークの各層で出力される特徴マップに制御信号が適用される。オプションで、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のネットワークによって出力される一部の特徴マップのみに制御信号が適用される。
【0209】
この実施形態では、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のネットワークの中間層で出力される特徴マップのみに応答信号が適用される。オプションで、Y成分処理モジュール、U成分処理モジュール、及びV成分処理モジュール内のネットワークのいずれか1つ以上の層で出力される特徴マップに制御信号が適用される。
【0210】
ジョイント処理モジュール2及び/又は品質応答モジュールが、この実施形態で提供されるコーデックから除去される場合、この出願の技術は依然として適用可能である。
【0211】
ジョイント処理モジュールがこの実施形態で提供されるコーデックに追加される場合、この出願の技術は依然として適用可能である。
【0212】
この実施形態は、Y、U、及びV成分が3つの成分として別々に処理される技術的ソリューションを提供する。Y、U及びV成分の他のコンビネーション、例えば{YU,V}、{YV,U}及び{Y,UV}に対して、この出願の技術の解決案は依然として適用可能である。
【0213】
上述の実施形態における説明に従って、この出願では、本発明において、Y、U、及びV成分の品質係数がビットレート割り当て制御モジュールに入力され、該モジュールによって出力される制御信号が異なる成分の特徴マップに別々に適用されて、異なる成分のビットレート割り当てを実施する。異なる成分は、3つの成分:Y、U、及びV成分、又は2つの成分:Y及びUV成分、又はY、U、及びV成分の別のコンビネーションを指し得る。
【0214】
オプションで、制御信号は、制御ベクトルqを示し、各異なる成分の品質係数に基づいて生成される。同一成分の重み行列{qc1,qc2,…,qcN}が、ネットワークによる学習を通じて取得され、cは2又は3であり、異なる成分の数を表し、Nは品質係数の候補値の数である。使用時、各異なる成分の品質係数のインデックスに基づいて、各異なる成分に対応する制御ベクトルqciが取得される。
【0215】
オプションで、制御信号は、制御ベクトルqとオフセットベクトルbとを示す。各異なる成分の品質係数が全結合型ネットワークへの入力として使用され、該異なる成分に対応する制御ベクトルq及びオフセットベクトルbが出力される。
【0216】
従って、この出願で提供される実施形態は:
(1)異なる色特性を持つピクチャに適応し、制御ベクトルに基づいてY、U、及びV成分間でのビットレート割り当てをサポートすることができ;
(2)複数のモデルをトレーニングするのに必要な時間、及びモデルの新たなネットワークパラメータの数を減少させることができる。
【0217】
図10は、この出願の一実施形態に従った符号化装置1000の構造の概略図である。当該符号化装置はビデオエンコーダ20に相当し得る。符号化装置1000は、第1の制御モジュール1001、第の制御モジュール1002、及び符号化モジュール1003を含む。第1の制御モジュール1001は、ビデオ信号の第1信号成分の制御信号を第1信号成分の第1特徴マップに適用して、第1信号成分の第2特徴マップを取得するように構成され、第1信号成分の制御信号は学習を通じて取得される。第2の制御モジュール1002は、ビデオ信号の第2信号成分の制御信号を第2信号成分の第1特徴マップに適用して、第2信号成分の第2特徴マップを取得するように構成され、第2信号成分の制御信号は学習を通じて取得される。符号化モジュール1003は、第1信号成分の第2特徴マップと第2信号成分の第2特徴マップとに基づいて、ビデオ信号のビットストリームを取得するように構成される。符号化装置1000は更に、上述の実施形態で説明されたビットレート割り当て制御モジュールを含み得る。符号化装置1000は、上述の実施形態で説明された符号化方法を実装するように構成される。詳細な機能については、上述の実施形態における説明を参照されたく、詳細をここで再び説明することはしない。
【0218】
図11は、この出願の一実施形態に従った復号装置1100の構造の概略図である。復号装置1100はビデオデコーダ30に相当し得る。復号装置1100は、復号モジュール1101、第1の制御モジュール1102、第の制御モジュール1103、及び再構成モジュール1104を含む。復号モジュール1101は、ビデオ信号のビットストリームを取得し、ビットストリームに対してエントロピー復号を実行して、ビデオ信号の第1信号成分の特徴マップと、ビデオ信号の第2信号成分の特徴マップとを取得するように構成される。第1の制御モジュール1102は、第1信号成分の応答信号と第1信号成分の特徴マップとに基づいて、第1信号成分の再構成マップを取得するように構成され、第1信号成分の応答信号は学習を通じて取得される。第2の制御モジュール1103は、第2信号成分の応答信号と第2信号成分の特徴マップとに基づいて、第2信号成分の再構成マップを取得するように構成され、第2信号成分の応答信号は学習を通じて取得される。再構成モジュール1104は、第1信号成分の再構成マップと第2信号成分の再構成マップとに基づいて、ビデオ信号を再構成するように構成される。復号装置1100は更に、上述の実施形態で説明された品質応答モジュールを含み得る。復号装置1100は、上述の実施形態で説明された復号方法を実装するように構成される。詳細な機能については、上述の実施形態における説明を参照されたく、詳細をここで再び説明することはしない。
【0219】
当業者が理解し得ることには、ここに開示及び記載された様々な例示的な論理ブロック、モジュール、及びアルゴリズムステップを参照して説明された機能は、ハードウェア、ソフトウェア、ファームウェア、又はこれらの任意の組み合わせによって実装されることができる。ソフトウェアによって実装される場合、それら例示的な論理ブロック、モジュール、及びステップを参照して説明された機能は、1つ以上の命令又はコードとして、コンピュータ読み取り可能媒体に格納され又はそれ上で伝送され、そして、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ読み取り可能媒体は、例えばデータ記憶媒体などの有形媒体に対応するものであるコンピュータ読み取り可能記憶媒体を含むことができ、あるいは、(例えば通信プロトコルに従った)1つの場所から別の場所へのコンピュータプログラムの伝送を支援する任意の通信媒体を含むことができる。斯くして、コンピュータ読み取り可能媒体は、一般に、(1)非一時的な有形のコンピュータ読み取り可能記憶媒体、又は(2)例えば信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、この出願に記載された技術を実装するための命令、コード及び/又はデータ構造を取り出すために1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセスされることができる任意の使用可能な媒体とし得る。コンピュータプログラムプロダクトがコンピュータ読み取り可能媒体を含み得る。
【0220】
例として、限定ではなく、そのようなコンピュータ読み取り可能記憶媒体は、RAM、ROM、EEPROM、CD-ROM若しくは他の光ディスクストレージ装置、磁気ディスクストレージ装置若しくは他の磁気ストレージ装置、フラッシュメモリ、又は、命令若しくはデータ構造の形態で必要なプログラムコードを格納することができ且つコンピュータによってアクセスされることができる任意の他の媒体を含み得る。また、任意の接続が適切にコンピュータ読み取り可能媒体として参照される。例えば、命令が、ウェブサイト、サーバ、又は他のリモートソースから、同軸ケーブル、光ファイバ、ツイストペア、デジタル加入者回線(DSL)、又は例えば赤外線、無線、若しくはマイクロ波などの無線技術を介して伝送される場合、その同軸ケーブル、光ファイバ、ツイストペア、DSL、又は例えば赤外線、無線、若しくはマイクロ波などの無線技術は、媒体の定義に含まれる。しかしながら、理解されるべきことには、コンピュータ読み取り可能記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時的媒体を含まず、実際には、非一時的で有形の記憶媒体を意味する。この明細書で使用されるディスク(disk及びdisc)は、コンパクトディスク(CD)、レーザディスク、光ディスク、デジタル多用途ディスク(DVD)、及びBlu-rayディスクを含む。diskは、通常、磁気的にデータを再生し、discはレーザを用いることによって光学的にデータを再生する。上述のアイテムの組み合わせも、コンピュータ読み取り可能媒体の範囲内に含まれるべきである。
【0221】
命令は、例えば1つ以上のデジタル信号プロセッサ(DSP)、一般的なマイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は他の同等の集積回路若しくはディスクリート論理回路などの、1つ以上のプロセッサによって実行され得る。従って、この明細書で使用される用語“プロセッサ”は、上述の構造、又はこの明細書に記載された技術の実装に適用され得る任意の他の構造を指し得る。さらに、一部の態様において、この明細書に記載された例示的な論理ブロック、モジュール、及びステップを参照して説明された機能は、符号化及び復号のために構成された専用のハードウェア及び/又はソフトウェアモジュール内で提供されてもよいし、あるいは、組み合わされたコーデックに組み込まれてもよい。また、これらの技術は、1つ以上の回路又は論理素子にて完全に実装されてもよい。
【0222】
この出願における技術は、無線ハンドセット、集積回路(IC)、又は一組のIC(例えば、チップセット)を含め、様々な装置又はデバイスにて実装され得る。この出願では、開示された技術を実行するように構成された装置の機能的側面を強調するために、様々なコンポーネント、モジュール、又はユニットが説明されているが、必ずしも、複数の異なるハードウェアユニットによる実現を必要とするわけではない。実際には、上述のように、様々なユニットが、適切なソフトウェア及び/又はファームウェアと組み合わせてコーデックハードウェアユニットへと結合されてもよいし、あるいは、相互運用可能な複数のハードウェアユニット(上述の1つ以上のプロセッサを含む)によって提供されてもよい。
【0223】
以上の説明は、単にこの出願の特定の実装の例であり、この出願の保護範囲を限定することを意図するものではない。この出願にて開示された技術的範囲内で当業者が容易に考え付く如何なる変更又は置換もこの出願の保護範囲に入るものである。従って、この出願の保護範囲は請求項の保護範囲に従うものである。
図1A
図1B
図1C
図2
図3
図4
図5
図6
図7A
図7B
図7C
図7D
図8A
図8B
図9A
図9B
図10
図11