(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-29
(54)【発明の名称】画像フィルタリング方法、装置、機器及びプログラム
(51)【国際特許分類】
H04N 19/117 20140101AFI20240822BHJP
H04N 19/159 20140101ALI20240822BHJP
【FI】
H04N19/117
H04N19/159
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024516555
(86)(22)【出願日】2022-12-09
(85)【翻訳文提出日】2024-03-13
(86)【国際出願番号】 CN2022137882
(87)【国際公開番号】W WO2023151365
(87)【国際公開日】2023-08-17
(31)【優先権主張番号】202210126411.X
(32)【優先日】2022-02-10
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
【氏名又は名称原語表記】TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
【住所又は居所原語表記】35/F,Tencent Building,Kejizhongyi Road,Midwest District of Hi-tech Park,Nanshan District, Shenzhen,Guangdong 518057,CHINA
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100229448
【氏名又は名称】中槇 利明
(72)【発明者】
【氏名】王力▲強▼
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159TA68
5C159TC24
5C159TC27
(57)【要約】
本願は、クラウド技術、人工知能、スマート交通、運転支援、ビデオなどの様々なシーンに適用可能な画像フィルタリング方法、装置、機器及びプログラムを提供する。当該方法は、フィルタリング対象画像の符号化情報を決定するステップであって、符号化情報は分類情報を含み、当該分類情報は、フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、ステップと、フィルタリング対象画像及び分類情報をフィルタリングモデルに入力して、分類情報に基づいてフィルタリング対象画像をフィルタリングして、フィルタリング後の画像を得るステップと、を含む。
【特許請求の範囲】
【請求項1】
画像フィルタリング方法であって、
フィルタリング対象画像の符号化情報を決定するステップであって、前記符号化情報は、前記フィルタリング対象画像の分類情報を含み、前記分類情報は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、ステップと、
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力し、前記フィルタリングモデルに、前記符号化情報に基づいて前記フィルタリング対象画像をフィルタリングさせて、フィルタリング後の画像を得るステップと、を含む、画像フィルタリング方法。
【請求項2】
前記符号化画像タイプは、フルフレーム内符号化画像及びフレーム間符号化可能画像を含み、前記分類情報が前記フィルタリング対象画像の符号化画像タイプを指示する場合、前記フィルタリング対象画像の符号化情報を決定するステップは、
前記フィルタリング対象画像内の複数の画像領域に対応する符号化画像タイプを取得するステップと、
前記複数の画像領域がいずれも前記フルフレーム内符号化画像に属する場合、前記分類情報の値は第1の値であると決定するステップと、
前記複数の画像領域がいずれも前記フレーム間符号化可能画像に属する場合、前記分類情報の値は第2の値であると決定するステップと、
前記フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、前記分類情報の値は第3の値であると決定し、又は前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域及び前記フレーム間符号化可能画像に属する画像領域の前記フィルタリング対象画像におけるそれぞれの割合に基づいて、前記分類情報の値を決定するステップと、を含む、
請求項1に記載の画像フィルタリング方法。
【請求項3】
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域及び前記フレーム間符号化可能画像に属する画像領域の前記フィルタリング対象画像におけるそれぞれの割合に基づいて、前記分類情報を決定するステップは、
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が第1閾値より大きいか等しい場合、前記分類情報の値は前記第1の値であると決定するステップと、
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第1閾値より小さい場合、前記分類情報の値は前記第2の値であると決定するステップと、を含む、
請求項2に記載の画像フィルタリング方法。
【請求項4】
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域及び前記フレーム間符号化可能画像に属する画像領域の前記フィルタリング対象画像におけるそれぞれの割合に基づいて、前記分類情報の値を決定するステップは、
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が第1閾値より大きいか等しい場合、前記分類情報の値は前記第1の値であると決定するステップと、
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第1閾値より小さく、且つ第2閾値より大きいか等しい場合、前記分類情報の値は前記第2の値であると決定するステップと、
前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第2閾値より小さい場合、前記分類情報の値は前記第3の値であると決定するステップと、を含む、
請求項2に記載の画像フィルタリング方法。
【請求項5】
前記分類情報は、スライスレベル、画像ブロックレベル、又は画像ヘッダレベルで指示される、
請求項2に記載の画像フィルタリング方法。
【請求項6】
前記符号化モードは、フレーム内符号化モード及びフレーム間符号化モードを含み、前記分類情報がフィルタリング対象画像の符号化モードを指示する場合、前記分類情報は、第1分類情報及び第2分類情報のうちの少なくとも1つを含み、
前記第1分類情報は、前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを指示し、前記第2分類情報は、前記フィルタリング対象画像内の所定サイズ領域に対応する符号化モードを指示する、
請求項1に記載の画像フィルタリング方法。
【請求項7】
前記分類情報が前記第1分類情報を含む場合、前記フィルタリング対象画像の符号化情報を決定するステップは、
前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを取得するステップと、
前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードに基づいて、前記符号化情報内の第1分類情報を決定するステップと、を含み、
前記第1分類情報は、複数の要素からなる行列であり、前記行列内の各要素は、前記フィルタリング対象画像内の1つ又は複数のピクセルの符号化モードに対応する、
請求項6に記載の画像フィルタリング方法。
【請求項8】
前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードに基づいて、前記第1分類情報を決定するステップは、
前記フィルタリング対象画像内のすべてのピクセルに対応する符号化モードが前記フレーム内符号化モードである場合、前記第1分類情報内の各行列要素の値は第1の値であると決定するステップと、
前記フィルタリング対象画像内のすべてのピクセルに対応する符号化モードが前記フレーム間符号化モードである場合、前記第1分類情報内の各行列要素の値は第2の値であると決定するステップと、
前記フィルタリング対象画像における第1画像領域内の1つ又は複数のピクセルに対応する符号化モードが前記フレーム内符号化モードであり、第2画像領域内の1つ又は複数のピクセルに対応する符号化モードが前記フレーム間符号化モードである場合、前記第1分類情報における前記第1画像領域内の1つ又は複数のピクセルに対応する行列要素の値は前記第1の値であり、前記第2画像領域内の1つ又は複数のピクセルに対応する行列要素の値は前記第2の値であると決定するステップと、を含む、
請求項7に記載の画像フィルタリング方法。
【請求項9】
前記分類情報が前記第2分類情報を含む場合、前記フィルタリング対象画像の符号化情報を決定するステップは、
前記フィルタリング対象画像内の異なる符号化モードに対応する画像領域の前記フィルタリング対象画像における割合に基づいて、前記第2分類情報を決定するステップを含む、
請求項6に記載の画像フィルタリング方法。
【請求項10】
前記フィルタリング対象画像内の異なる符号化モードに対応する画像領域の前記フィルタリング対象画像における割合に基づいて、前記第2分類情報を決定するステップは、
前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、前記第2分類情報の値は第1の値であると決定するステップと、
前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第1所定閾値より小さい場合、前記第2分類情報の値は第2の値であると決定するステップと、を含む、
請求項9に記載の画像フィルタリング方法。
【請求項11】
前記フィルタリング対象画像内の異なる符号化モードに対応する画像領域の前記フィルタリング対象画像における割合に基づいて、前記第2分類情報を決定するステップは、
前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第1所定閾値より大きいか等しい場合、前記第2分類情報の値は第1の値であると決定するステップと、
前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第1所定閾値より小さく、且つ第2所定閾値より大きいか等しい場合、前記第2分類情報の値は第2の値であると決定するステップと、
前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第2所定閾値より小さい場合、前記第2分類情報の値は第3の値であると決定するステップと、を含む、
請求項9に記載の画像フィルタリング方法。
【請求項12】
前記分類情報は、ブロックレベルで指示される、
請求項6に記載の画像フィルタリング方法。
【請求項13】
前記符号化モードは、通常のフレーム内符号化モード、行列重み付けフレーム内予測(MIP)モード、フレーム内ブロック複製(IBC)モード、フレーム内文字列予測(ISP)モード、パレット(PLT)モード、通常のフレーム間符号化モード、スキップ(Skip)モード、モーションマージ(Merge)モード、フレーム間とフレーム内との複合予測(CIIP)モードのうちの少なくとも1つを含み、
前記分類情報が前記フィルタリング対象画像の符号化モードを指示する場合、前記フィルタリング対象画像の符号化情報を決定するステップは、
前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードを取得するステップと、
前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードに基づいて、前記符号化情報内の分類情報を決定するステップと、を含む、
請求項1に記載の画像フィルタリング方法。
【請求項14】
前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードに基づいて、前記符号化情報内の分類情報を決定するステップは、
前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスを決定するステップと、
前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスに基づいて、前記分類情報を決定するステップと、を含む、
請求項13に記載の画像フィルタリング方法。
【請求項15】
1つの符号化モードが1つのインデックスに対応し、又は複数の符号化モードが1つのインデックスに対応する、
請求項14に記載の画像フィルタリング方法。
【請求項16】
前記分類情報は、ブロックレベルで指示される、
請求項13に記載の画像フィルタリング方法。
【請求項17】
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力するステップは、
前記フィルタリング対象画像及び前記分類情報のうちの少なくとも1つを前処理した後、前記フィルタリングモデルに入力するステップを含む、
請求項1に記載の画像フィルタリング方法。
【請求項18】
前記フィルタリング対象画像及び前記分類情報のうちの少なくとも1つを前処理した後、前記フィルタリングモデルに入力するステップは、
前記フィルタリング対象画像と前記分類情報とをレイヤのマージをした後、前記フィルタリングモデルに入力するステップを含む、
請求項17に記載の画像フィルタリング方法。
【請求項19】
前記フィルタリング対象画像及び前記分類情報のうちの少なくとも1つを前処理した後、前記フィルタリングモデルに入力するステップは、
前記フィルタリング対象画像と前記分類情報とを乗算してから第1特徴抽出ユニットに入力して、前記フィルタリング対象画像と前記分類情報とを融合した後の第1特征情報を得るステップと、
前記フィルタリング対象画像を第2特徴抽出ユニットに入力して特徴抽出を行って、前記フィルタリング対象画像の第2特征情報を得るステップと、
前記第1特征情報及び前記第2特征情報を前記フィルタリングモデルに入力するステップと、を含む、
請求項17に記載の画像フィルタリング方法。
【請求項20】
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力するステップは、
前記フィルタリング対象画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、前記フィルタリング対象画像及び前記分類情報とを、前記フィルタリングモデルに入力するステップを含む、
請求項1に記載の画像フィルタリング方法。
【請求項21】
前記フィルタリング対象画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、前記フィルタリング対象画像及び前記分類情報とを、前記フィルタリングモデルに入力するステップは、
前記予測画像を第1処理ユニットに入力して、前記予測画像の特徴情報を得るステップと、
前記フィルタリング対象画像を第2処理ユニットに入力して、前記フィルタリング対象画像の特徴情報を得るステップと、
前記予測画像の特徴情報、前記量子化パラメータ、及び前記ブロック分割情報のうちの少なくとも1つと、前記フィルタリング対象画像の特徴情報及び前記分類情報とを、前記フィルタリングモデルに入力するステップと、を含む、
請求項20に記載の画像フィルタリング方法。
【請求項22】
前記量子化パラメータは、シーケンスレベル量子化パラメータ及びスライスレベル量子化パラメータのうちの少なくとも1つを含む、
請求項20に記載の画像フィルタリング方法。
【請求項23】
前記フィルタリングモデルは、N個の残差ブロックを含み、前記Nは正の整数である、
請求項1に記載の画像フィルタリング方法。
【請求項24】
前記N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は同じであり、又は、前記N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は異なる、
請求項23に記載の画像フィルタリング方法。
【請求項25】
前記N個の残差ブロックのうちの少なくとも1つの残差ブロックは、注目層を含む、
請求項23に記載の画像フィルタリング方法。
【請求項26】
前記フィルタリング後の画像は後続の画像の参照画像として使用され、又は、前記フィルタリング後の画像は表示に使用され、且つ後続の画像の参照画像としては使用されない、
請求項1に記載の画像フィルタリング方法。
【請求項27】
画像フィルタリング装置であって、
フィルタリング対象画像の符号化情報を決定するように構成される決定ユニットであって、前記符号化情報は、前記フィルタリング対象画像の分類情報を含み、前記分類情報は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、決定ユニットと、
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力して、前記分類情報に基づいて前記フィルタリング対象画像をフィルタリングして、フィルタリング後の画像を得るように構成されるフィルタリングユニットと、を備える、画像フィルタリング装置。
【請求項28】
電子機器であって、
プロセッサと、メモリと、を備え、前記メモリは、コンピュータプログラムを記憶するように構成され、前記プロセッサは、前記メモリに記憶されたコンピュータプログラムを呼び出して実行することにより、請求項1~26のいずれか一項に記載の方法を実行する、電子機器。
【請求項29】
電子機器で実行されるときに、前記電子機器に、請求項1~26のいずれか一項に記載の方法を実行させるコンピュータプログラム命令を含む、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
本願は、2022年02月10日に中国特許局に提出された、出願番号が202210126411.Xである中国特許出願の優先権を主張し、その内容の全てが引用により本願に組み込まれる。
【0002】
本願の実施例は、画像処理技術分野に関し、特に、画像フィルタリング方法、装置、機器及びプログラムに関するものである。
【背景技術】
【0003】
関連技術におけるループフィルタは、デブロッキングフィルタ(DBF:deblocking filter)、サンプル適応オフセット(SAO:Sample Adaptive Offset)、及び適応ループフィルタ(ALF:Adaptive Loop Filter)を含み、主に、再構成画像に対してフィルタリングを行うことで、ブロッキング効果、リンギング効果などを低減し、それにより、再構成画像の品質を向上させる。理想的には、フィルタによって再構成画像をオリジナル画像に復元することである。関連技術におけるフィルタのフィルタリング係数の多くは手動で設計されているため、最適化の余地が大きい。画像処理における深層学習ツールの優れた性能に鑑み、深層学習ベースのループフィルタは、ループフィルタモジュールに適用されている。しかしながら、関連技術における深層学習ベースのループフィルタは、依然として性能の最適化に欠陥があり、フィルタの性能をさらに向上させる必要がある。
【発明の概要】
【0004】
本願の実施例は、モデルパラメータの記憶コストを低減しつつ、画像フィルタリング効果を向上させる画像フィルタリング方法、装置、機器及びプログラムを提供する。
【0005】
本願の実施例は、画像フィルタリング方法を提供し、前記方法は、
フィルタリング対象画像の符号化情報を決定するステップであって、前記符号化情報は、前記フィルタリング対象画像の分類情報を含み、前記分類情報は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、ステップと、
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力し、前記フィルタリングモデルに、前記分類情報に基づいて前記フィルタリング対象画像をフィルタリングさせて、フィルタリング後の画像を得るステップと、を含む。
【0006】
本願の実施例は、画像フィルタリング装置を提供し、前記装置は、
フィルタリング対象画像の符号化情報を決定するように構成される決定ユニットであって、前記符号化情報は、前記フィルタリング対象画像の分類情報を含み、前記分類情報は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、決定ユニットと、
前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力し、前記フィルタリングモデルに、前記分類情報に基づいて前記フィルタリング対象画像をフィルタリングさせて、フィルタリング後の画像を得るように構成されるフィルタリングユニットと、を含む。
【0007】
本願の実施例は、電子機器を提供し、前記電子機器は、プロセッサと、メモリと、を備え、前記メモリは、コンピュータプログラムを記憶するように構成され、前記プロセッサは、前記メモリに記憶されたコンピュータプログラムを呼び出して実行することにより、上記の方法を実行する。
【0008】
本願の実施例は、コンピュータ可読記憶媒体を提供し、前記コンピュータ可読記憶媒体は、コンピュータプログラムを記憶するように構成され、前記コンピュータプログラムは、電子機器に上記の方法を実行させる。
【0009】
本願の実施例は、チップを提供し、前記チップは、プロセッサを含み、前記プロセッサは、メモリからコンピュータプログラムを呼び出して実行することにより、前記チップが搭載された電子機器に上記の方法を実行させる。
【0010】
本願の実施例は、コンピュータプログラム製品を提供し、前記コンピュータプログラム製品は、電子機器で実行されるときに、前記電子機器に上記の方法を実行させるコンピュータプログラム命令を含む。
【0011】
本願の実施例は、コンピュータプログラムを提供し、前記コンピュータプログラムは、電子機器で実行されるときに、前記電子機器に上記の方法を実行させる。
【0012】
本願の実施例のフィルタリングモデルは、フレーム内符号化モードにおけるフィルタリング対象画像に対するフィルタリングを実現することができ、フレーム間符号化モードにおけるフィルタリング対象画像に対するフィルタリングを実現することもできる。これは、異なるモードにおけるフィルタリング対象画像としての汎用フィルタリングモデルに相当し、異なるモードに対して対応するフィルタリングモデルをそれぞれ構築することに比べて、モデルパラメータの記憶空間の占有率が大幅に低減され、モデルパラメータの記憶コストが低い。また、フィルタリングモデルに分類情報を結合し、フィルタリング対象画像に対して差別化フィルタリングを行うことにより、異なるモードにおけるフィルタリング対象画像を適用でき、フィルタリング対象画像のフィルタリング効果を向上させることができる。
【図面の簡単な説明】
【0013】
【
図1】本願の実施例に係るビデオコーデックシステムの例示的なブロック図である。
【
図2】本願の実施例によるビデオエンコーダの例示的なブロック図である。
【
図3】本願の実施例によるビデオデコーダの例示的なブロック図である。
【
図4】本願の実施例による画像フィルタリング方法のフローチャートである。
【
図5A】本願の実施例に係る適用シーンの模式図である。
【
図5B】本願の実施例に係る適用シーンの模式図である。
【
図5C】本願の実施例に係る適用シーンの模式図である。
【
図7A】本願の実施例に係るフィルタリング方式の模式図である。
【
図7B】本願の実施例に係るフィルタリング方式の模式図である。
【
図7C】本願の実施例に係るフィルタリング方式の模式図である。
【
図8A】本願の実施例に係る残差ブロックの模式図である。
【
図8B】本願の実施例に係る残差ブロックの模式図である。
【
図8C】本願の実施例に係る残差ブロックの模式図である。
【
図8D】本願の実施例に係る残差ブロックの模式図である。
【
図9】本願の実施例に係るモデルトレーニングの模式図である。
【
図10】本願の実施例による画像フィルタリング装置の構成を示す模式図である。
【
図11】本願の実施例による電子機器の例示的なブロック図である。
【発明を実施するための形態】
【0014】
本願の実施例の技術的解決策をより明確に説明するために、下記において、実施例の説明で使用される図面について簡単に紹介する。明らかに、上記の図面は、本願のいくつかの実施例に過ぎず、当業者にとっては、創造的な労力を払わなくても、これらの図面に基づいて他の関連図面を得ることもできる。
【0015】
下記において、本願実施例における図面を参照して、本願実施例の技術的解決策について、明確且つ完全に説明するが、明らかに、説明される実施例は、本願実施例の一部のみであり、全部の実施例ではない。本願の実施例に基づいて、創造的な作業なしに当業者によって得られた他のすべての実施例は、本願の保護範囲に含まれる。
【0016】
なお、本願の実施例の明細書、特許請求の範囲及び上記の図面における「第1」、「第2」などの用語は、特定の順番又は前後順番を限定するものではなく、類似する対象を区別するものである。なお、このように使用されるデータは、適切な場合に交換できるため、本明細書で説明される本願の実施例は、本明細書で図示又は説明されるもの以外の順序で実施できる。さらに、「含む」、「有する」という用語、及びその任意の変形は、非排他的な包含を意図している。例えば、一連のステップ又はユニットを組み込んだプロセス、方法、システム、製品、又はサーバは、明確に列挙されているそれらのステップ又はユニットに限定される必要はないが、明確に列挙されていない又はそれらのプロセス、方法、製品、又は装置に固有の他のステップ又はユニットを含んでもよい。
【0017】
なお、下記における「及び/又は」は、少なくとも一方を表し、例えば、A及び/又はBは、A及びBのうちの少なくとも一方を表す。
【0018】
本願の実施例の理解を容易にするために、まず、本願の実施例に関わる関連概念について以下に簡単に説明する。
【0019】
人工知能(AI:Artificial Intelligence)は、デジタルコンピュータ又はデジタルコンピュータによって制御される機械を使用して、人間の知性をシミュレート、拡張及び拡大し、環境を知覚し、知識を取得し、知識を使用して最適な結果を得る理論、方法、技術、及びアプリケーションシステムである。言い換えれば、人工知能は、知能の実体を理解しようとし、人間の知能と類似した方式で反応できる新しい知能機械を生産しようとする、コンピュータ科学の総合技術である。人工知能は、機械に知覚、推理、意思決定の機能を持たせるように、様々な知能機械の設計原理及び実現方法を研究する。
【0020】
人工知能技術は、ハードウェア技術とソフトウェア技術の両方を含む幅広い分野を含む総合的な学科である。人工知能の基本技術に、一般的に、センサ、専用の人工知能チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理技術、操作/インタラクションシステム、メカトロニクス化などの技術が含まれる。人工知能ソフトウェア技術に、主に、コンピュータビジョン技術、音声処理技術、自然言語処理技術及び機械学習/深層学習などのいくつかの大きな方向が含まれる。
【0021】
機械学習(ML:Machine Learning)は、多分野の学際的で、確率論、統計学、近似理論、凸解析、アルゴリズム複雑性理論などの多分野の学科に関する。機械学習は、コンピュータが人間の学習行動をシミュレート又は実現して、新しい知識やスキルを取得し、既存の知識構造を再構成して性能を継続的に向上させる方法を専門的に研究する。機械学習は人工知能のコアであり、コンピュータに知能を持たせるための根本的な手段であり、その適用は人工知能の各分野に及んでいる。機械学習及び深層学習に、通常、人工ニューラルネットワーク、信頼ネットワーク、強化学習、転移学習、帰納的学習(inductive learning)、デモンストレーション学習(Learning from Demonstration)などの技術が含まれる。
【0022】
本願の実施例は、画像コーデック分野、ビデオコーデック分野、ハードウェアビデオコーデック分野、専用回路用ビデオコーデック分野、リアルタイムビデオコーデック分野などに適用され得る。例えば、本願の実施例における解決策は、H.264/オーディオビデオコーディング(AVC:Audio Video Coding)規格、H.265/高効率ビデオコーディング(HEVC:High Efficiency Video Coding)規格、H.266/バーサタイルビデオコーディング(VVC:Versatile Video Coding)規格などのオーディオビデオコーディング規格(AVS:Audio Video coding Standard)と組み合わせることができる。又は、本願の実施例における技術案は、動作のために他の独自規格又は業界規格と組み合わせてもよい。前記規格には、ITU-TH.261、ISO/IECMPEG-1 Visual、ITU-TH.262又はISO/IECMPEG-2 Visual、ITU-TH.263、ISO/IECMPEG-4 Visual、及びITU-TH.264(ISO/IEC MPEG-4AVCとも呼ばれる)が含まれ、スケーラブルビデオ符号化(SVC:Scalable Video Coding)及びマルチビュービデオ符号化(MVC:Multiview Video Coding)拡張を含む。なお、本願の実施例の技術は、特定のコーデック規格や技術に限定されない。
【0023】
理解を容易にするために、まず、
図1を参照して、本願の実施例に係るビデオコーデックシステムについて説明する。
【0024】
図1は、本願の実施例に係るビデオコーデックシステムの例示的なブロック図である。なお、
図1は一例に過ぎず、本願の実施例のビデオコーデックシステムは、
図1に示すものを含むがこれに限定されない。
図1に示すように、前記ビデオコーデックシステム100は、符号化機器110及び復号化機器120を含む。ここで、符号化機器は、ビデオデータを符号化(圧縮と理解できる)してコードストリームを生成し、コードストリームを復号化機器に伝送する。復号化機器は、符号化機器の符号化により生成されるコードストリームを復号化して、復号化後のビデオデータを得る。
【0025】
本願の実施例の符号化機器110は、ビデオ符号化機能を有する機器として理解でき、復号化機器120は、ビデオ復号化機能を有する機器として理解でき、即ち、本願の実施例の符号化機器110及び復号化機器120は、スマートフォン、デスクトップコンピュータ、モバイルコンピューティングデバイス、ノートパソコン(ラップトップなど)、タブレットコンピュータ、セットトップボックス、テレビ、カメラ、表示装置、デジタルメディアプレーヤ、ゲームコンソール、車載コンピュータなどのより幅広い装置を含む。
【0026】
いくつかの実施例では、符号化機器110は、チャネル130を介して、符号化後のビデオデータ(例えば、コードストリーム)を復号化機器120に伝送することができる。チャネル130は、符号化後のビデオデータを符号化機器110から復号化機器120に伝送できる1つ又は複数の媒体及び/又は装置を含み得る。
【0027】
一例では、チャネル130は、符号化機器110が符号化後のビデオデータを復号化機器120にリアルタイムで直接送信できるようにする1つ又は複数の通信媒体を含む。この例では、符号化機器110は、通信規格に従って符号化後のビデオデータを変調し、変調したビデオデータを復号化機器120に送信することができる。ここで、通信媒体は、無線周波数スペクトルなどの無線通信媒体を含み、いくつかの実施例では、通信媒体は、1つ又は複数の物理的な伝送線路などの有線通信媒体も含み得る。
【0028】
別の例では、チャネル130は、コンピュータ可読記憶媒体を含み、前記コンピュータ可読記憶媒体は、符号化機器110によって符号化されたビデオデータを記憶することができる。コンピュータ可読記憶媒体は、光ディスク、DVD、フラッシュメモリなどの複数のローカルアクセス型データ記憶媒体を含む。この例では、復号化機器120は、前記コンピュータ可読記憶媒体から符号化後のビデオデータを取得することができる。
【0029】
別の例では、チャネル130は、符号化機器110によって符号化されたビデオデータを記憶可能な記憶サーバを含み得る。この例では、復号化機器120は、記憶された符号化後のビデオデータを前記記憶サーバからダウンロードすることができる。いくつかの実施例では、前記記憶サーバは、符号化後のビデオデータを記憶し、前記符号化後のビデオデータを、Webサーバ(Webサイト用など)、ファイル転送プロトコル(FTP)サーバなどの復号化機器120に送信することができる。
【0030】
いくつかの実施例では、符号化機器110は、ビデオエンコーダ112及び出力インターフェース113を含む。ここで、出力インターフェース113は、変調器/復調器(モデム)及び/又は送信機を含み得る。
【0031】
いくつかの実施例では、符号化機器110は、ビデオエンコーダ112及び出力インターフェース113に加えて、さらにビデオソース111を含み得る。
【0032】
ビデオソース111は、ビデオ収集装置(ビデオカメラなど)、ビデオアーカイブ、ビデオ入力インターフェース、コンピュータグラフィックスシステムのうちの少なくとも1つを含み得、ここで、ビデオ入力インターフェースは、ビデオコンテンツプロバイダからビデオデータを受信するように構成され、コンピュータグラフィックスシステムは、ビデオデータを生成するように構成される。
【0033】
ビデオエンコーダ112は、ビデオソース111からのビデオデータを符号化して、コードストリームを生成する。ビデオデータは、1つ又は複数の画像(picture)又は画像シーケンス(sequence of pictures)を含み得る。コードストリームは、ビットストリームの形式で画像又は画像シーケンスの符号化情報を含む。符号化情報は、符号化画像データ及び関連データを含み得る。関連データは、シーケンスパラメータセット(SPS:sequence parameter set)、画像パラメータセット(PPS:picture parameter set)、及び他の構文構造を含み得る。SPSは、1つ又は複数のシーケンスに適用されるパラメータを含み得る。PPSは、1つ又は複数の画像に適用されるパラメータを含み得る。構文構造とは、コードストリームにおいて指定された順序で配置されたゼロ個又は複数の構文要素のセットを指す。
【0034】
ビデオエンコーダ112は、出力インターフェース113を介して、符号化後のビデオデータを復号化機器120に直接伝送する。符号化後のビデオデータは、復号化機器120が後で読み出すように、記憶媒体又は記憶サーバに記憶されてもよい。
【0035】
いくつかの実施例では、復号化機器120は、入力インターフェース121及びビデオデコーダ122を含む。
【0036】
いくつかの実施例では、復号化機器120は、入力インターフェース121及びビデオデコーダ122に加えて、表示装置123も含み得る。
【0037】
ここで、入力インターフェース121は、受信機及び/又はモデムを含む。入力インターフェース121は、チャネル130を介して符号化後のビデオデータを受信することができる。
【0038】
ビデオデコーダ122は、符号化後のビデオデータを復号化して、復号化後のビデオデータを得、復号化後のビデオデータを表示装置123に伝送するように構成される。
【0039】
表示装置123は、復号化後のビデオデータを表示する。表示装置123は、復号化機器120と一体化されてもよいし、復号化機器120の外部に設けられてもよい。表示装置123は、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、又はその他のタイプの表示装置などの様々な表示装置を含み得る。
【0040】
また、
図1は一例のみであり、本願の実施例の技術方案は、
図1に限定されるものではなく、本願の実施例の技術は、片側のビデオ符号化や片側のビデオ復号化にも適用することができる。
【0041】
下記において、本願の実施例に係るビデオ符号化フレームワークについて説明する。
【0042】
図2は、本願の実施例に係るビデオエンコーダの例示的なブロック図である。なお、前記ビデオエンコーダ200は、画像の非可逆圧縮(lossy compression)を行うように構成されてもよいし、画像の可逆圧縮(lossless compression)を行うように構成されてもよい。前記可逆圧縮は、視覚的な可逆圧縮(visually lossless compression)であってもよいし、数学的な可逆圧縮(mathematically lossless compression)であってもよい。
【0043】
前記ビデオエンコーダ200は、ルミナンス及びクロミナンス(YCbCr,YUV)フォーマットの画像データに適用することができる。
【0044】
例えば、前記ビデオエンコーダ200は、ビデオデータを読み出し、ビデオデータ内の各フレーム画像について、1フレームの画像を複数の符号化ツリーユニット(CTU:Coding Tree Unit)に分割する。いくつかの例では、CTBは、「ツリーブロック」、「最大符号化ユニット」(LCU:Largest Coding unit)又は「符号化ツリーブロック」(CTB:Coding Tree Block)と呼ばれ得る。各CTUは、画像内の等しいサイズのピクセルブロックに関連付けられ得る。各ピクセルは、1つのルミナンス(luminance又はluma)サンプル及び2つのクロミナンス(chrominance又はchroma)サンプルに対応することができる。したがって、各CTUは、1つのルミナンスサンプルブロック及び2つのクロミナンスサンプルブロックに関連付けられ得る。1つのCTUのサイズは、例えば、128×128、64×64、32×32などである。1つのCTUは、符号化のために複数の符号化ユニット(CU:Coding Unit)にさらに分割することができ、CUは、矩形ブロック又は四角形ブロックであってもよい。CUは、さらに予測ユニット(PU:Prediction Unit)及び変換ユニット(TU:Transform Unit)に分割され得、これにより、符号化、予測、変換を分離し、処理の柔軟性を向上させることができる。一例では、CTUは、4分木方式でCUに分割され、CUは、4分木方式でTU、PUに分割される。
【0045】
ビデオエンコーダ及びビデオデコーダは、様々なPUサイズをサポートできる。特定のCUのサイズが2N×2Nであると仮定すると、ビデオエンコーダ及びビデオデコーダは、フレーム内予測のために2N×2N又はN×NのPUサイズをサポートし、且つフレーム間予測のために2N×2N、2N×N、N×2N、N×N又は同様のサイズの対称PUをサポートすることができる。ビデオエンコーダ及びビデオデコーダは、フレーム間予測のために2N×nU、2N×nD、nL×2N及びnR×2Nの非対称PUをさらにサポートすることができる。
【0046】
いくつかの実施例では、
図2に示すように、前記ビデオエンコーダ200は、予測ユニット210、残差ユニット220、変換/量子化ユニット230、逆変換/量子化ユニット240、再構成ユニット250、ループフィルタリングユニット260、復号化画像キャッシュ270、及びエントロピー符号化ユニット280を含み得る。なお、ビデオエンコーダ200は、より多い、より少ない、又は異なる機能コンポーネントを含み得る。
【0047】
いくつかの実施例では、本願では、現在のブロック(current block)は、現在の符号化ユニット(CU)又は現在の予測ユニット(PU)などと呼ばれ得る。予測ブロックは、予測画像ブロック又は画像予測ブロックとも呼ばれ得、再構成画像ブロックは、再構成ブロック又は画像再構成画像ブロックとも呼ばれ得る。
【0048】
いくつかの実施例では、予測ユニット210は、フレーム間予測ユニット211及びフレーム内予測ユニット212を含む。ビデオの1つのフレーム内の隣接するピクセル間には強い相関性があるため、ビデオコーデック技術におけるフレーム内予測を使用すると、隣接するピクセル間の空間的冗長性を排除することができる。ビデオ内の隣接するフレーム間には強い相関性があるため、ビデオコーデック技術におけるフレーム間予測方法を使用すると、隣接するフレーム間の時間的冗長性を排除し、それにより、符号化効率を向上させることができる。
【0049】
フレーム間予測ユニット211は、フレーム間予測を行うするように構成され、フレーム間予測は、異なるフレームの画像情報を参照でき、フレーム間予測は、モーション情報を使用して参照フレームから参照ブロックを見つけ、参照ブロックに基づいて予測ブロックを生成し、時間的な冗長性を排除するものであり、フレーム間予測に使用されるフレームは、Pフレーム及び/又はBフレームであってもよい。Pフレームとは、順方向予測フレームを指し、Bフレームとは、双方向予測フレームを指す。モーション情報は、参照フレームが位置する参照フレームリスト、参照フレームインデックス、及びモーションベクトルを含む。モーションベクトルは、全ピクセルのものでもサブピクセルのものでもよい。モーションベクトルがサブピクセルのものである場合、参照フレームで補間フィルタリングを使用して、必要なサブピクセルのブロックを作成する必要がある。ここで、モーションベクトルに基づいて見つけられる参照フレーム内の全ピクセル又はサブピクセルのブロックを参照ブロックと呼ぶ。参照ブロックを予測ブロックとして直接使用する技術もあれば、参照ブロックに基づいて再処理して予測ブロックを生成する技術もある。参照ブロックに基づいて再処理して予測ブロックを生成することは、参照ブロックを予測ブロックとして使し、次に、予測ブロックに基づいて処理して新しい予測ブロックを生成することと理解できる。
【0050】
フレーム内予測ユニット212は、同一フレーム画像の情報のみを参照して、現在の符号化画像ブロック内のピクセル情報を予測して、空間的な冗長性を排除する。フレーム内予測に使用されるフレームはIフレームであってもよい。
【0051】
HEVCで使用されるフレーム内予測モードは、平面モード(Planar)、DC、及び33種類の角度モードで、合計35種類の予測モードを有する。VVCで使用されるフレーム内モードは、Planar、DC、及び65種類の角度モードで、合計67種類の予測モードを有する。AVS3で使用されるフレーム内モードは、DC、Plane、Bilinear、及び63種類の角度モードで、合計66種類の予測モードを有する。
【0052】
いくつかの実施例では、フレーム内予測ユニット212は、フレーム内ブロック複製技術及びフレーム内文字列複製技術を採用して実装され得る。
【0053】
残差ユニット220は、CUのピクセルブロック及びCUのPUの予測ブロックに基づいて、CUの残差ブロックを生成することができる。例えば、残差ユニット220はCUの残差ブロックを生成でき、これにより、残差ブロック内の各サンプルは、CUのピクセルブロック内のサンプルと、CUのPUの予測ブロック内の対応するサンプルとの間の差に等しい値を有するようになる。
【0054】
変換/量子化ユニット230は、変換係数を量子化することができる。残差ビデオ信号は、DFT、DCTなどの変換動作によって、変換信号を変換ドメインに変換し、変換係数と呼ばれる。変換ドメイン内の信号は、更なる非可逆量子化動作によって、特定の情報が失われるため、量子化後の信号が圧縮表現に有利になる。いくつかのビデオ符号化規格では、複数の変換方式が選択できるため、符号化側も現在の符号化CUに対して1つの変換を選択し、復号化側に通知する必要がある。量子化の精細度は、通常、量子化パラメータ(QP)によって決定され、QPの値が大きいと、より広い範囲の係数が同じ出力として量子化されることを意味するため、通常、より大きい歪みとなり、ビットレートが低下する。逆に、QPの値が小さいと、より小さい範囲の値の係数が同じ出力として量子化されることを意味するため、通常、より少ない歪みとなり、ビットレートが高くなる。
【0055】
逆変換/量子化ユニット240は、逆量子化及び逆変換を量子化後の変換係数にそれぞれ適用して、量子化後の変換係数から残差ブロックを再構成することができる。
【0056】
再構成ユニット250は、再構成後の残差ブロックのサンプルを、予測ユニット210によって生成された1つ又は複数の予測ブロックの対応するサンプルに加算して、TUに関連付けられた再構成画像ブロックを生成することができる。このようにCUの各TUのサンプルブロックを再構成することにより、ビデオエンコーダ200は、CUのピクセルブロックを再構成することができる。
【0057】
ループフィルタリングユニット260は、デブロッキングフィルタリング動作を実行して、CUに関連付けられたピクセルブロックのブロッキング効果を低減することができる。オリジナル画像に比べて、再構成画像は、量子化の影響があるため、情報の一部がオリジナル画像と異なって、歪み(Distortion)が生成する。再構成画像に対して、例えば、DBF、SAO又はALFなどのフィルタを使用してフィルタリング動作を行って、量子化による歪みの程度を効果的に低減することができる。これらのフィルタリングされた再構成画像は、後続の符号化画像の参照として将来の信号を予測するため、上記のフィルタリング動作は、ループフィルタリング、即ち、符号化ループ内のフィルタリング動作とも呼ばれる。
【0058】
復号化画像キャッシュ270は、再構成後のピクセルブロックを記憶することができる。フレーム間予測ユニット211は、再構成後のピクセルブロックを含む参照画像を使用して、他の画像のPUに対してフレーム間予測を実行することができる。さらに、フレーム内予測ユニット212は、復号化画像キャッシュ270内の再構成後のピクセルブロックを使用して、CUと同じ画像内の他のPUに対してフレーム内予測を実行することができる。
【0059】
エントロピー符号化ユニット280は、変換/量子化ユニット230からの量子化後の変換係数を受信することができる。量子化後の変換ドメイン信号は、各値の出現頻度に従って統計的に圧縮符号化され、最終的に、2値化(0又は1)の圧縮コードストリームが出力される。また、符号化によって、例えば、選択されたモード、モーションベクトルデータなどの他の情報が生成され、ビットレートを低下させるためにエントロピー符号化を行う必要もある。統計的符号化は、可逆的符号化方式であり、同じ信号を表現するのに必要なビットレートを効果的に削減することができる。一般的な統計的符号化方式は、可変長符号化(VLC:Variable Length Coding)又はコンテキスト適応型2進算術符号化(CABAC:Content Adaptive Binary Arithmetic Coding)である。
【0060】
図3は、本願の実施例によるビデオデコーダの例示的なブロック図である。
【0061】
図3に示すように、ビデオデコーダ300は、エントロピー復号化ユニット310、予測ユニット320、逆量子化/変換ユニット330、再構成ユニット340、ループフィルタリングユニット350、及び復号化画像キャッシュ360を含む。なお、ビデオデコーダ300は、より多い、より少ない、又は異なる機能コンポーネントを含み得る。
【0062】
ビデオデコーダ300は、コードストリームを受信することができる。エントロピー復号化ユニット310は、コードストリームを解析して、コードストリームから構文要素を抽出することができる。コードストリームの解析の一部として、エントロピー復号化ユニット310は、コードストリームにおけるエントロピー符号化後の構文要素を解析することができる。予測ユニット320、逆量子化/変換ユニット330、再構成ユニット340及びループフィルタリングユニット350は、コードストリームから抽出した構文要素に基づいてビデオデータを復号化して、復号化後のビデオデータを生成することができる。
【0063】
いくつかの実施例では、予測ユニット320は、フレーム間予測ユニット321及びフレーム内予測ユニット322を含む。
【0064】
フレーム間予測ユニット321は、フレーム内予測を実行してPUの予測ブロックを生成することができる。フレーム間予測ユニット321は、フレーム内予測モードを使用して、空間的に隣接するPUのピクセルブロックに基づいてPUの予測ブロックを生成することができる。フレーム間予測ユニット321は、コードストリームから解析された1つ又は複数の構文要素に基づいて、PUのフレーム内予測モードを決定することもできる。
【0065】
フレーム内予測ユニット322は、コードストリームから解析された構文要素に基づいて、第1参照画像リスト(リスト0)及び第2参照画像リスト(リスト1)を構築することができる。さらに、PUがフレーム間予測符号化を使用する場合、エントロピー復号化ユニット310は、PUのモーション情報を解析することができる。フレーム内予測ユニット322は、PUのモーション情報に基づいて、PUの1つ又は複数の参照ブロックを決定することができる。フレーム内予測ユニット322は、PUの1つ又は複数の参照ブロックに基づいて、PUの予測ブロックを生成することができる。
【0066】
逆量子化/変換ユニット330は、TUに関連付けられた変換係数を逆量子化(即ち、非量子化)することができる。逆量子化/変換ユニット330は、TUのCUに関連付けられたQP値を使用して量子化の度合いを決定することができる。
【0067】
変換係数を逆量子化した後、逆量子化/変換ユニット330は、1つ又は複数の逆変換を逆量子化変換係数に適用して、TUに関連付けられた残差ブロックを生成することができる。
【0068】
再構成ユニット340は、CUのTUに関連付けられた残差ブロック及びCUのPUの予測ブロックを使用して、CUのピクセルブロックを再構成する。例えば、再構成ユニット340は、残差ブロックのサンプルを予測ブロックの対応するサンプルに加算してCUのピクセルブロックを再構成して、再構成画像ブロックを得ることができる。
【0069】
ループフィルタリングユニット350は、デブロッキングフィルタリング動作を実行して、CUに関連付けられたピクセルブロックのブロッキング効果を低減することができる。
【0070】
ビデオデコーダ300は、CUの再構成画像を復号化画像キャッシュ360に格納することができる。ビデオデコーダ300は、復号化画像キャッシュ360内の再構成画像を参照画像として後続の予測に使用したり、再構成画像を表示装置に伝送して呈示したりすることができる。
【0071】
ビデオコーデックの基本プロセスは以下の通りである。即ち、符号化側で、1フレームの画像をブロックに分割し、現在のブロックに対して、予測ユニット210は、フレーム内予測又はフレーム間予測を使用して現在のブロックの予測ブロックを生成する。残差ユニット220は、予測ブロックと現在のブロックのオリジナルブロックとに基づいて、残差ブロック、即ち、予測ブロックと現在のブロックのオリジナルブロックとの差分を計算することができ、前記残差ブロックは残差情報とも呼ばれ得る。前記残差ブロックは、変換/量子化ユニット230による変換及び量子化などのプロセスによって、人間の目に鈍感な情報を除去して、視覚的な冗長性を除去することができる。いくつかの実施例では、変換/量子化ユニット230による変換及び量子化前の残差ブロックは、時間ドメイン残差ブロックと呼ばれ得、変換/量子化ユニット230による変換及び量子化後の時間ドメイン残差ブロックは、周波数残差ブロック又は周波数ドメイン残差ブロックと呼ばれ得る。エントロピー符号化ユニット280は、変換/量子化ユニット230から出力される量子化後の変換係数を受信し、前記量子化後の変換係数をエントロピー符号化して、コードストリームを出力することができる。例えば、エントロピー符号化ユニット280は、目標コンテキストモデル及びバイナリコードストリームの確立情報に基づいて文字の冗長性を除去することができる。
【0072】
復号化側では、エントロピー復号化ユニット310は、コードストリームを解析して現在のブロックの予測情報、量子化係数行列などを得ることができ、予測ユニット320は、予測情報に基づいて現在のブロックに対してフレーム内予測又はフレーム間予測を使用して現在のブロックの予測ブロックを生成する。逆量子化/変換ユニット330は、コードストリームから得られた量子化係数行列を使用して、量子化係数行列に対して逆量子化、逆変換を行って、残差ブロックを得る。再構成ユニット340は、予測ブロックと残差ブロックとを加算して再構成ブロックを得る。再構成ブロックは再構成画像を構成し、ループフィルタリングユニット350は、画像に基づいて、又はブロックに基づいて、再構成画像をループフィルタリングして、復号化画像を得る。符号化側も、復号化画像を取得するために復号化側と同様の操作が必要である。前記復号化画像は、再構成画像とも呼ばれ、再構成画像は、後続のフレームであり得、フレーム間予測の参照フレームとして使用される。
【0073】
なお、符号化側で決定されたブロック分割情報や、予測、変換、量子化、エントロピー符号化、ループフィルタリングなどのモード情報、又はパラメータ情報などは、必要に応じてコードストリームで搬送される。復号化側は、コードストリームを解析し、既存の情報に基づいて分析することにより、符号化側と同じブロック分割情報や、予測、変換、量子化、エントロピー符号化、ループフィルタリングなどのモード情報、又はパラメータ情報を決定し、それにより、符号化側で取得した復号化画像と復号化側で取得した復号化画像とが同じであることが保証される。
【0074】
前述したのは、ブロックベースのハイブリッド符号化フレームワークでのビデオコーデックの基本プロセスであり、技術の発展に伴い、前記フレームワーク又はプロセスの一部のモジュール又はステップが最適化される可能性がある。本願は、前記ブロックベースのハイブリッド符号化フレームワークでのビデオコーデックの基本プロセスに適用されるが、前記フレームワーク又はプロセスに限定されるものではない。
【0075】
いくつかの実施例では、本願の実施例は、クラウド技術、人工知能、スマート交通、運転支援などを含むがこれらに限定されない様々な画像処理シーンに適用され得る。
【0076】
以下では、いくつかの実施例によって、本願の実施例の技術的解決策について詳細に説明する。以下のいくつかの実施例は、相互に組み合わせることができ、同一又は類似の概念又はプロセスについては、いくつかの実施例では繰り返して説明しない場合がある。
【0077】
図4は、本願の実施例による画像フィルタリング方法のフローチャートであり、
図4に示すように、前記方法は以下のステップを含む。
【0078】
ステップS401において、フィルタリング対象画像の符号化情報を決定し、符号化情報は、フィルタリング対象画像の分類情報を含み、前記分類情報は、フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する。
【0079】
いくつかの実施例では、本願の実施例は、符号化側及び復号化側の両方に適用され得る。つまり、本願の実施例の実行主体は、上記の
図1及び
図2におけるエンコーダであってもよいし、
図1及び
図3におけるデコーダであってもよい。
【0080】
いくつかの実施例では、本願の実施例は、他の表示機器にも適用され得る。例えば、デコーダは、復号化後の再構成画像を表示機器に送信し、前記表示機器は、本願の実施例の画像フィルタリング方法を採用して再構成画像をフィルタリングし、フィルタリング後の画像を表示する。
【0081】
つまり、本願の実施例の実行主体は、画像フィルタリング装置などの画像フィルタリング機能を備える装置である。前記画像フィルタリング装置は、電子機器であり得、又は電子機器内のプロセッサなどの電子機器内の一部である。前記電子機器は、エンコーダ、デコーダ、コーデック、表示機器などであり得る。
【0082】
説明の便宜上、以下では、実行主体が電子機器である場合を例として、本願の実施例の方法について説明する。
【0083】
本願の実施例に係るフィルタは、ニューラルネットワークフィルタ、即ち、フィルタリングモデルである。いくつかの実施例では、前記フィルタリングモデルは、ニューラルネットワークに基づくループ内フィルタ(NNLF:Neural Network in-Loop Filter)とも呼ばれる。
【0084】
本願の実施例のフィルタリングモデルは、フレーム内符号化画像のフィルタリングを実現するだけでなく、フレーム間符号化画像のフィルタリングを実現することもできる。つまり、本願の実施例のフィルタリングモデルは、汎用フィルタリングモデルであり、モデルパラメータの記憶コストを低減することができる。
【0085】
本願の実施例の適用シーンは、以下のいくつかのシーンを含むが、これらに限定されない。
【0086】
シーン1:
図5Aに示すように、上記のフィルタリング対象画像は、上記の再構成ユニットによって再構成された画像である。つまり、本願の実施例のループフィルタリングユニットは、前記フィルタリングモデルであり、
図2における再構成ユニット250は、再構成画像をループフィルタリングユニット260内のフィルタリングモデルに入力してフィルタリングを行って、フィルタリング後の画像を得、前記フィルタリング後の画像を復号化画像キャッシュに格納する。又は、
図3における再構成ユニット340は、再構成画像をループフィルタリングユニット350内のフィルタリングモデルに入力してフィルタリングを行って、フィルタリング後の画像を得、前記フィルタリング後の画像を復号化画像キャッシュに格納したり、表示したりする。
【0087】
シーン2:
図5Bに示すように、上記のフィルタリング対象画像は、DBF、SAO、ALFのうちの少なくとも1つによってフィルタリングされた画像である。つまり、本願の実施例のループフィルタリングユニットは、DBF、SAO、及びALFのうちの少なくとも1つのような従来のフィルタだけでなく、フィルタリングモデルも含む。
図2における再構成ユニット250は、再構成画像をループフィルタリングユニット260内の従来のフィルタに入力してフィルタリングを行い、フィルタリング後の画像をさらにフィルタリングモデルに入力してフィルタリングを行って、フィルタリング後の画像を得、前記フィルタリング後の画像を復号化画像キャッシュに格納する。又は、
図3における再構成ユニット340は、再構成画像をループフィルタリングユニット350内の従来のフィルタに入力してフィルタリングを行い、フィルタリング後の画像をさらにフィルタリングモデルに入力してフィルタリングを行って、フィルタリング後の画像を得、前記フィルタリング後の画像を復号化画像キャッシュに格納したり、表示したりする。
【0088】
なお、上記の
図5Bは、従来のフィルタと本願の実施例のフィルタリングモデルとを組み合わせて使用した一例のみを示している。いくつかのシーンでは、従来のフィルタと本願の実施例のフィルタリングモデルとの組み合わせ方式は、最初にフィルタリングモデルを使用してフィルタリングし、次に、従来のフィルタを使用してフィルタリングする方式、又は最初に従来のフィルタを使用してフィルタリングし、次に、フィルタリングモデルを使用してフィルタリングし、次に、従来のフィルタを使用してフィルタリングする方式、又は他の組み合わせ方式を含むが、これらに限定されず、本願はこれらを限定しない。
【0089】
シーン3:
図5Cに示すように、上記のフィルタリング対象画像は表示対称画像である。例えば、
図3における再構成ユニット340は、再構成画像をループフィルタリングユニット350に入力してフィルタリングを行い、フィルタリング後の画像を復号化画像キャッシュに格納する。復号化画像キャッシュ内の画像は、後続の図の参照画像として予測される。例えば、予測ユニット320は、復号化画像キャッシュから参照画像を読み出して予測を行う。また、復号化画像キャッシュ内の画像は表示にも使用されるが、表示に使用される前に、まず、本願の実施例のフィルタリングモデルを使用してフィルタリングを行ってから、フィルタリング後の画像を表示する。
【0090】
上記の
図5A及び
図5Bに示すように、いくつかの実施例では、本願の実施例のフィルタリング後の画像は後続の画像の参照画像として使用される。
【0091】
上記の
図5Cに示すように、いくつかの実施例では、本願の実施例のフィルタリング後の画像は表示に使用され、且つ後続の画像の参照画像としては使用されない。
【0092】
本願の実施例のフィルタリングモデルは、汎用フィルタリングモデルであり、フレーム内符号化された画像のフィルタリングに使用されてもよいし、フレーム間符号化された画像のフィルタリングに使用されてもよい。しかしながら、フレーム内符号化とフレーム間符号化との違いにより、フィルタリング精度を向上させるために、本願の実施例では、フィルタリングモデルにフィルタリング対象画像を入力する。前記入力は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードなどの分類情報を指示する。
【0093】
本願の実施例では、フィルタリング対象画像の符号化情報は、特に限定されず、フィルタリング対象画像の符号化プロセスに関与する符号化タイプ情報であり得る。
【0094】
いくつかの実施例では、フィルタリング対象画像の符号化情報は分類情報を含み、前記分類情報は、フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する。
【0095】
本願の実施例に係る符号化画像タイプは、フルフレーム内符号化画像及びフレーム間符号化可能画像を含む。
【0096】
ここで、フルフレーム内符号化画像とは、前記画像の符号化タイプがすべてフレーム内符号化方式であることを指し、つまり、フルフレーム内符号化画像の予測のための参照情報がすべて本画像の空間ドメイン情報からのものであることを意味する。
【0097】
フレーム間符号化可能画像とは、前記画像の符号化タイプがフレーム間符号化方式である可能性があることを指し、つまり、フレーム間符号化可能画像の予測プロセスでは、他の参照フレームの時間ドメイン参照情報を参照することができることを意味する。
【0098】
いくつかの実施例では、符号化モードの分類は、符号化総モードを含み、例えば、フレーム間符号化モード及びフレーム内符号化モードの2つのタイプを含む。
【0099】
符号化側では、符号化総モードは、フィルタリング対象画像に対応するすべての予測ユニットによって使用される予測モードに基づいて決定され得る。例えば、前記フィルタリング対象画像の符号化プロセスでは、フィルタリング対象画像に対応するすべての予測ユニットがフレーム内予測モードを使用して予測する場合、前記フィルタリング対象画像の符号化総モードは、フレーム内符号化モードであると決定し、フィルタリング対象画像に対応するすべての予測ユニットがフレーム間予測モードを使用して予測する場合、前記フィルタリング対象画像の符号化総モードは、フレーム間符号化モードであると決定する。
【0100】
復号化側では、前記フィルタリング対象画像の符号化総モードを取得する方式は、少なくとも以下の2つの方式を含む。
【0101】
方式1:コードストリームには、前記フィルタリング対象画像の符号化総モードが含まれ、このように、復号化側は、コードストリームを復号化して、前記フィルタリング対象画像の符号化総モードを得る。
【0102】
方式2:復号化側は、フィルタリング対象画像に対応するすべての予測ユニットによって使用される予測モードに基づいて前記フィルタリング対象画像の符号化総モードを決定する。例えば、前記フィルタリング対象画像の復号化プロセスでは、フィルタリング対象画像に対応するすべての予測ユニットがフレーム内予測モードを使用して予測する場合、前記フィルタリング対象画像の符号化総モードはフレーム内符号化モードであると決定し、フィルタリング対象画像に対応するすべての予測ユニットがフレーム間予測モードを使用して予測する場合、前記フィルタリング対象画像の符号化総モードはフレーム間符号化モードであると決定する。
【0103】
いくつかの実施例では、符号化モードの分類は、符号化サブモードに具体化することもできる。符号化サブモードは、フィルタリング対象画像の具体的な符号化方式として理解でき、例えば、フレーム内符号化モードにおいて具体的にどのサブモードであるか、又はフレーム間符号化モデルにおいて具体的にどのサブモードであるかである。
【0104】
一般的なフレーム内符号化技術は、通常のフレーム内符号化モード、MIPモード(MIP:Matrix weighted Intra Prediction)、フレーム内ブロック複製技術(IBC:Intra Block Copy)、フレーム内文字列予測技術(ISP:Intra String Prediction)、パレット技術(PLT:Palette)などを含む。
【0105】
一般的なフレーム間符号化技術は、通常のフレーム間符号化モード、モーションマージモード(Mergeモード)、モーションマージ及び残差スキップモード(Skipモード)、フレーム間とフレーム内との複合予測モード(CIIP:Combined Inter and Intra Prediction)などを含む。
【0106】
符号化側では、符号化サブモードは、フィルタリング対象画像に対応するすべての予測ユニットによって使用される予測モードに基づいて決定され得る。例えば、前記フィルタリング対象画像の符号化プロセスでは、フィルタリング対象画像に対応するすべての予測ユニットが通常のフレーム内符号化モードを使用して予測する場合、前記フィルタリング対象画像の符号化サブモードは通常のフレーム内符号化モードであると決定し、フィルタリング対象画像に対応するすべての予測ユニットがMergeモードを使用して予測する場合、前記フィルタリング対象画像の符号化サブモードはMergeモードであると決定する。
【0107】
復号化側では、前記フィルタリング対象画像の符号化サブモードを取得する方式は、少なくとも以下の2つの方式を含む。
【0108】
方式1:コードストリームには、前記フィルタリング対象画像の符号化サブモードが含まれ、このように、復号化側は、コードストリームを復号化して、前記フィルタリング対象画像の符号化サブモードを得る。
【0109】
方式2:復号化側は、フィルタリング対象画像に対応するすべての予測ユニットによって使用される予測モードに基づいて、前記フィルタリング対象画像の符号化サブモードを決定する。例えば、前記フィルタリング対象画像の復号化プロセスでは、フィルタリング対象画像に対応するすべての予測ユニットが通常のフレーム内符号化モードを使用して予測する場合、前記フィルタリング対象画像の符号化サブモードは通常のフレーム内符号化モードであると決定し、フィルタリング対象画像に対応するすべての予測ユニットがMergeモードを使用して予測する場合、前記フィルタリング対象画像の符号化サブモードはMergeモードであると決定する。
【0110】
本願の実施例では、フィルタリング時に、フィルタリング対象画像と、フィルタリング対象画像の符号化画像タイプ、符号化モードの少なくとも一方を指示する分類情報をフィルタリングモデルに入力して、フィルタリング対象画像のフィルタリング後の画像を得る。
【0111】
いくつかの実施例では、フィルタリング対象画像の分類情報は、複数の要素を含む行列であってもよい。
【0112】
いくつかの実施例では、フィルタリング対象画像の分類情報は、1つの要素のデータである。
【0113】
以下では、具体的な例を参照して、本願の実施例におけるフィルタリング対象画像の符号化情報を決定するプロセスについて詳細に説明する。
【0114】
ケース一:分類情報がフィルタリング対象画像の符号化画像タイプを指示する場合、上記のステップS401において、フィルタリング対象画像の符号化情報を決定するプロセスは、以下のステップを含む。
【0115】
ステップS401-A1において、フィルタリング対象画像内の複数の画像領域に対応する符号化画像タイプを取得し、前記複数の画像領域がすべてフルフレーム内符号化画像に属する場合、分類情報の値は第1の値であると決定する。
【0116】
ステップS401-A2において、前記複数の画像領域がすべてフレーム間符号化可能画像に属する場合、分類情報の値は第2の値であると決定する。
【0117】
ステップS401-A3において、フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、分類情報の値は第3の値であると決定し、又は前記複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域及びフレーム間符号化可能画像に属する画像領域のフィルタリング対象画像におけるそれぞれの割合に基づいて、分類情報を決定する。
【0118】
具体的には、本願の実施例の符号化画像は、フルフレーム内符号化画像及びフレーム間符号化可能画像に分けられ、ここで、
図6A~
図6Cに示すように、画像は、フレーム(frame)、スライス(slice)、タイル(tile)を含む。分類情報が符号化画像タイプを表す場合、前記分類情報は、スライスレベル、タイルレベル、又はフレームヘッダレベルのうちの1つで指示され得る。
【0119】
実際にフィルタリングモデルを使用する場合、1つのフレーム全体を直接入力してフィルタリングするのではなく、画像をサブ画像に分割し、次に、サブ画像をフィルタリングモデルに順次入力してフィルタリングを行うのが一般的である。サブ画像のサイズには大小があるため、フィルタリングモデルに入力されるフィルタリング対象画像がスライス/タイル境界を横切る場合がある。本願の実施例のフィルタリング対象画像は、1つのサブ画像として理解することができる。
【0120】
これに基づき、本願の実施例では、フィルタリング対象画像の符号化画像タイプ及びフィルタリング対象画像がスライス境界又はタイル境界を横切るか否かに基づいて、フィルタリング対象画像の分類情報を決定する。
【0121】
上記のフィルタリング対象画像内の複数の画像領域は、フィルタリング対象画像内のすべての画像領域であってもよいし、フィルタリング対象画像内の画像領域の一部、例えば、フィルタリング対象画像の画像領域の80%であってもよい。
【0122】
具体的には、フィルタリング対象画像の複数の画像領域内のすべての画像領域がフルフレーム内符号化画像に属する場合、分類情報の値は第1の値であると決定し、フィルタリング対象画像の複数の画像領域内のすべての画像領域がフレーム間符号化可能画像に属する場合、分類情報の値は第2の値であると決定する。
【0123】
本願の実施例は、第1の値及び第2の値の具体的な値を限定しない。
【0124】
いくつかの実施例では、第1の値は0である。
【0125】
いくつかの実施例では、第2の値は1である。
【0126】
一例では、本願の実施例の分類情報は1つの要素のデータである。例えば、フィルタリング対象画像の複数の画像領域内のすべての画像領域がフルフレーム内符号化画像に属する場合、分類情報の値は1であると決定し、フィルタリング対象画像の複数の画像領域内のすべての画像領域がフレーム間符号化可能画像に属する場合、フィルタリング対象画像の分類情報の値は0であると決定する。
【0127】
別の例では、本願の実施例の分類情報は行列であり、前記行列は、フィルタリング対象画像のサイズと一致してもよいし、フィルタリング対象画像のサイズと異なってもよい。例えば、現在のフィルタリング対象画像の複数の画像領域のすべてがフルフレーム内符号化画像に属する場合、分類情報はオールゼロ行列であると決定する。現在のフィルタリング対象画像の複数の画像領域のすべてがフレーム間符号化可能画像に属する場合、分類情報はオール1行列であると決定する。
【0128】
フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、以下の2つの方式に基づいて、フィルタリング対象画像の分類情報を決定することができる。
【0129】
方式1:フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、分類情報の値は第3の値であると決定する。
【0130】
本願の実施例では、第3の値の具体的な値は、上記の第1の値及び第2の値と異なる値であれば限定されない。
【0131】
一例では、上記の分類情報が1つの要素のデータである場合、例えば、フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、分類情報は2であると決定する。
【0132】
別の例では、上記の分類情報が1つの行列である場合、例えば、フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、分類情報はオール2行列であると決定する。
【0133】
方式2:フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域及びフレーム間符号化可能画像に属する画像領域のフィルタリング対象画像におけるそれぞれの割合に基づいて、分類情報を決定する。
【0134】
上記の方式2において、フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域及びフレーム間符号化可能画像に属する画像領域のフィルタリング対象画像におけるそれぞれの割合に基づいて、分類情報を決定する実施形態は、以下のいくつかの例を含むが、これらに限定されない。
【0135】
例1:フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域のフィルタリング対象画像における割合が第1閾値より大きいか等しい場合、分類情報の値は第1の値であると決定し、フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域のフィルタリング対象画像における割合が第1閾値より小さい場合、分類情報の値は第2の値であると決定する。
【0136】
例2:フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域のフィルタリング対象画像における割合が第1閾値より大きいか等しい場合、分類情報の値は第1の値であると決定し、フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域のフィルタリング対象画像における割合が第1閾値より小さく、且つ第2閾値より大きいか等しい場合、分類情報の値は第2の値であると決定し、フィルタリング対象画像の複数の画像領域のうち、フルフレーム内符号化画像に属する画像領域のフィルタリング対象画像における割合が第2閾値より小さい場合、分類情報の値は第3の値であると決定する。
【0137】
本願の実施例では、第1閾値及び第2閾値の具体的な値は限定されず、第1閾値は第2閾値より大きい。
【0138】
いくつかの実施例では、第1閾値は50%より大きく、且つ100%より小さい。
【0139】
上記のケース一では、分類情報は、フィルタリング対象画像の符号化画像タイプを指示し、前記分類情報がフィルタリングモデルに入力された後、フィルタリングモデルは、フィルタリング対象画像の符号化画像タイプに基づいて、フィルタリング対象画像を正確にフィルタリングすることができる。
【0140】
ケース二:符号化モードは、フレーム内符号化モード及びフレーム間符号化モードを含み、上記の分類情報は、フィルタリング対象画像の符号化モードを指示し、前記分類情報は、第1分類情報及び第2分類情報のうちの少なくとも1つを含む。この実施例では、前記分類情報は、ブロックレベルで指示される。
【0141】
第1分類情報は、フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを指示する。
【0142】
第2分類情報は、フィルタリング対象画像内の所定サイズ領域に対応する符号化モードを指示する。
【0143】
第1分類情報及び第2分類情報に対して、前記ケース二におけるフィルタリング対象画像の符号化情報を決定するプロセスは、ケース1及びケース2のサブケースを含む。ここで、ケース1は、第1分類情報を決定するプロセスであり、ケース2は、第2分類情報を決定するプロセスである。
【0144】
ケース1:分類情報が第1分類情報を含み、前記第1分類情報が複数の要素からなる行列であり、各要素がフィルタリング対象画像内の1つ又は複数のピクセルの符号化モードに対応する場合、上記のステップS401におけるフィルタリング対象画像の符号化情報を決定するプロセスは、以下のステップを含む。
【0145】
ステップS401-Bにおいて、フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを取得し、フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードに基づいて、第1分類情報を決定する。
【0146】
前記ケース1では、フィルタリング対象画像内の1つ又は複数のピクセルの符号化モードに基づいて、第1分類情報を決定する。例えば、フィルタリング対象画像内の各ピクセルの符号化モードがフレーム内符号化モードである場合、前記第1分類情報内の各行列要素の値は第1の値であると決定する。
【0147】
いくつかの実施例では、上記のステップS401-Bの実施形態は以下のいくつかの例を含むが、これらに限定されない。
【0148】
例1:フィルタリング対象画像内のすべてのピクセルに対応する符号化モードがフレーム内符号化モードである場合、第1分類情報内の各行列要素の値は第1の値であると決定する。
【0149】
例2:フィルタリング対象画像内のすべてのピクセルに対応する符号化モードがフレーム間符号化モードである場合、第1分類情報内の各行列要素の値は第2の値であると決定する。
【0150】
例3:フィルタリング対象画像内の第1画像領域内の1つ又は複数のピクセルに対応する符号化モードがフレーム内符号化モードであり、第2画像領域内の1つ又は複数のピクセルに対応する符号化モードがフレーム間符号化モードである場合、第1分類情報における第1画像領域内の1つ又は複数のピクセルに対応する行列要素の値は第1の値であり、第2画像領域内の1つ又は複数のピクセルに対応する行列要素の値は第2の値であると決定する。
【0151】
本願の実施例は、第1の値及び第2の値の具体的な値を限定しない。
【0152】
いくつかの実施例では、第1の値は0である。
【0153】
いくつかの実施例では、第2の値は1である。
【0154】
一可能な実施形態では、第1分類情報のサイズは、フィルタリング対象画像のサイズと一致し、つまり、第1分類情報内の各行列要素は、フィルタリング対象画像内の各ピクセルと1対1に対応する。このようにして、フィルタリング対象画像内の各ピクセルに対応する符号化モードに基づいて、第1分類情報の値を決定することができる。例えば、フィルタリング対象画像内の各ピクセルに対応する符号化モードがフレーム内符号化モードである場合、第1分類情報内の各行列要素の値はいずれも第1の値(例えば、0)であると決定する。フィルタリング対象画像内の各ピクセルに対応する符号化モードがフレーム間符号化モードである場合、第1分類情報内の各行列要素の値はいずれも第2の値(例えば、いずれも1)であると決定する。フィルタリング対象画像内の第1部分のサブピクセルに対応する符号化モードがフレーム内符号化モードであり、第2部分のサブピクセルに対応する符号化モードがフレーム間符号化モードである場合、第1分類情報内の第1部分のサブピクセルに対応する行列要素の値はいずれも第1の値(例えば、いずれも0)であり、第2部分のサブピクセルに対応する行列要素の値はいずれも第2の値であると決定する。
【0155】
別の可能な実施形態では、第1分類情報のサイズは、フィルタリング対象画像のサイズと一致しない。例えば、第1分類情報のサイズは、フィルタリング対象画像のサイズより小さい。例示的に、フィルタリング対象画像のサイズが64×64である場合、第1分類情報のサイズは64/n×64/mであり、ここで、n、mは両方とも正の整数である。例えば、第1分類情報のサイズは32×32であり、第1分類情報内の1つの行列要素は、フィルタリング対象画像内の4つのピクセルに対応する。このように、フィルタリング対象画像内の4つのピクセルごとに対応する符号化モードに基づいて、第1分類情報内の対応する行列要素の値を決定することができる。
【0156】
例えば、フィルタリング対象画像内のピクセル1、ピクセル2、ピクセル3、及びピクセル4は、第1分類情報内の行列要素1に対応する。ピクセル1、ピクセル2、ピクセル3、及びピクセル4に対応する符号化モードがいずれもフレーム内符号化モードである場合、第1分類情報内の行列要素1の値は第1の値であると決定する。ピクセル1、ピクセル2、ピクセル3、及びピクセル4に対応する符号化モードがいずれもフレーム間符号化モードである場合、第1分類情報内の行列要素1の値は第2の値であると決定する。ピクセル1、ピクセル2、ピクセル3、及びピクセル4のほとんどのピクセルに対応する符号化モードがフレーム間符号化モードである場合、第1分類情報内の行列要素1の値は第2の値であると決定する。ピクセル1、ピクセル2、ピクセル3、及びピクセル4のほとんどのピクセルに対応する符号化モードがフレーム内符号化モードである場合、第1分類情報内の行列要素1の値は第1の値であると決定する。
【0157】
ケース2:分類情報が第2分類情報を含む場合、上記のステップS401におけるフィルタリング対象画像の符号化情報を決定するプロセスは以下のステップを含む。
【0158】
ステップS401-Cにおいて、フィルタリング対象画像内の異なる符号化モードに対応する画像領域のフィルタリング対象画像における割合に基づいて、第2分類情報を決定する。
【0159】
前記ケース2では、フィルタリング対象画像内の異なる符号化モードに対応する画像領域のフィルタリング対象画像における割合(又は比率)に基づいて、第2分類情報を決定することができる。例えば、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフレーム間符号化モードに対応する画像領域より大きい場合、第2分類情報の値は第1の値であると決定する。
【0160】
いくつかの実施例では、上記のステップS401-Cの実施形態は以下のいくつかの形態を含むが、これらに限定されない。
【0161】
形態1:フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、第2分類情報の値は第1の値であると決定し、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より小さい場合、第2分類情報の値は第2の値であると決定する。
【0162】
いくつかの実施例では、第2分類情報は、1つの要素の値、例えば、0又は1である。例えば、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、第2分類情報の値は0であると決定し、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、第2分類情報の値は1であると決定する。
【0163】
いくつかの実施例では、第2分類情報は行列である。例えば、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、第2分類情報はオール0行列であると決定し、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より小さい場合、第2分類情報はオール1行列であると決定する。
【0164】
本願の実施例は、第1閾値の具体的な値を限定しない。
【0165】
いくつかの実施例では、第1所定閾値は80%である。
【0166】
例えば、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフィルタリング対象画像サイズの80%より大きいか等しい場合、第2分類情報の値は0であると決定する(第2分類情報が行列である場合、第2分類情報内の各要素の値はいずれも0である)。フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフィルタリング対象画像サイズの80%より小さい場合、第2分類情報の値は1であると決定する(第2分類情報が行列である場合、第2分類情報内の各要素の値はいずれも1である)。
【0167】
形態2:フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、第2分類情報の値は第1の値であると決定し、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第1所定閾値より小さく、且つ第2所定閾値(第2所定閾値は第1所定閾値より小さい)より大きいか等しい場合、第2分類情報の値は第2の値であると決定し、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域のフィルタリング対象画像における割合が第2所定閾値より小さい場合、第2分類情報の値は第3の値であると決定する。
【0168】
本願の実施例は、第1の値、第2の値、及び第3の値の具体的な値を限定しない。
【0169】
いくつかの実施例では、第1の値は0である。
【0170】
いくつかの実施例では、第2の値は1である。
【0171】
いくつかの実施例では、第3の値は2である。
【0172】
本願の実施例は、第1所定閾値及び第2所定閾値の具体的な値を限定しない。
【0173】
いくつかの実施例では、第1所定閾値は80%である。
【0174】
いくつかの実施例では、第2所定閾値は60%である。
【0175】
例えば、フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフィルタリング対象画像サイズの80%より大きいか等しい場合、第2分類情報の値は0であると決定する(第2分類情報が行列である場合、第2分類情報内の各要素の値はいずれも0である)。フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフィルタリング対象画像サイズの80%より小さく、且つフィルタリング対象画像サイズの60%より大きいか等しい場合、第2分類情報の値は1であると決定する(第2分類情報が行列である場合、第2分類情報内の各要素の値はいずれも1である)。フィルタリング対象画像において、フレーム内符号化モードに対応する画像領域がフィルタリング対象画像サイズの60%より小さい場合、第2分類情報の値は2であると決定する(第2分類情報が行列である場合、第2分類情報内の各要素の値はいずれも2である)。
【0176】
前記ケース二では、分類情報は、フィルタリング対象画像の符号化モードを指示する。前記符号化モードは、フレーム内符号化モード又はフレーム間符号化モードなどのフィルタリング対象画像の符号化総モードとして理解できる。前記分類情報がフィルタリングモデルに入力された後、フィルタリングモデルは、フィルタリング対象画像の符号化モードに基づいて、フィルタリング対象画像を正確にフィルタリングして、フィルタリング効果を向上させることができる。
【0177】
ケース三:フィルタリング対象画像の符号化モードは、通常のフレーム内符号化モード、MIPモード、IBCモード、ISPモード、PLTモード、通常のフレーム間符号化モード、Skipモード、Mergeモード、CIIPモードのうちの少なくとも1つを含む。この場合、分類情報がフィルタリング対象画像の符号化モードを指示する場合、前記分類情報は、ブロックレベルで指示される。前記分類情報が前記フィルタリング対象画像の符号化モードを指示する場合、上記のステップS401におけるフィルタリング対象画像の符号化情報を決定するプロセスは以下のステップを含む。
【0178】
ステップS401-Dにおいて、前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードを取得し、フィルタリング対象画像内の各画像領域に対応する符号化モードに基づいて、分類情報を決定する。
【0179】
本願の実施例では、フィルタリング対象画像の1つの画像領域は1つのピクセルであってもよいし、いくつかの連続するピクセルであってもよいし、1つの符号化ブロックであってもよい。本願の実施例では、フィルタリング対象画像内の複数の画像領域に対応する符号化モードを取得することにより、フィルタリング対象画像内の複数の画像領域に対応する符号化モードに基づいて、フィルタリング対象画像の分類情報を決定する。例えば、フィルタリング対象画像内の複数の画像領域に対応する符号化モードが通常のフレーム内符号化モードである場合、分類情報の値は第1の値であると決定する。
【0180】
いくつかの実施例では、符号化モードのインデックスに基づいて、分類情報を決定することができる。即ち、上記のステップS401-Dは、いかのステップを含む。ステップS401-D1において、フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスを決定する。ステップS401-D2において、フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスに基づいて、分類情報を決定する。
【0181】
いくつかの実施例では、1つの符号化モードは1つのインデックスに対応し、通常のフレーム内符号化モード、MIPモード、IBCモード、ISPモード、PLTモード、通常のフレーム間符号化モード、skipモード、mergeモード、CIIPモードに対して、異なるのインデックス値を事前に設定する。これに基づき、フィルタリング対象画像内の各画像領域に対応する符号化モードのインデックスに基づいて、分類情報を決定することができる。例えば、フィルタリング対象画像内の各画像領域に対応する符号化モードがいずれも通常のフレーム内符号化モードであり、通常のフレーム内符号化モードのインデックス値が0である場合、分類情報は0値又はオール0の行列であると決定する。
【0182】
いくつかの実施例では、複数の符号化モードが1つのインデックスに対応する。例えば、通常のフレーム内符号化モードのインデックス値は0であり、MIPモード、IBCモード、ISPモード、及びPLTモードのインデックス値は1であり、通常のフレーム間符号化モードのインデックス値は2であり、skipモード及びmergeモードのインデックス値は3であり、CIIPモードのインデックス値は4である。これに基づき、フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスに基づいて、分類情報を決定することができる。例えば、フィルタリング対象画像内の第1領域に対応する符号化モードは、skipモード及びmergeモードであり、第2領域に対応する符号化モードは、通常のフレーム間符号化モードである。このように、分類情報内の第1領域に対応する要素の値は3であり、符号化モード指示情報内の第2領域に対応する要素の値は2である。この場合、前記分類情報は、1つの行列である。
【0183】
上記のケース一~ケース三では、それぞれ、分類情報によって指示されるフィルタリング対象画像の符号化画像タイプ及び符号化方式について説明した。
【0184】
いくつかの実施例では、分類情報は、3つの行列によって、上記のケース一~ケース三で説明した符号化画像タイプ及び符号化モードを指示することができる。例示的に、行列Aは、フィルタリング対象画像の符号化画像タイプを指示し、具体的には、上記のケース一の記述に従って、行列Aの値を決定する。行列Bは、フィルタリング対象画像の符号化モードがフレーム内符号化モードであるか、フレーム間符号化モードであるか、又はフレーム内符号化モードとフレーム間符号化モードとの共存であるかを指示し、具体的には、上記のケース二の記述に従って、行列Bの値を決定する。行列Cは、フィルタリング対象画像に使用される符号化モード、例えば、フレーム内符号化モード又はフレーム間符号化モードのいずれが使用されるかを指示し、具体的には、上記のケース三の記述に従って、行列Cの値を決定する。
【0185】
分類指示情報が符号化画像タイプ及び符号化モードの両方を指示する場合、分類情報は、行列A、行列B、及び行列Cのうちの少なくとも1つを含む。
【0186】
例示的に、分類指示情報が符号化画像タイプを指示し、符号化モードを指示しない場合、分類情報は、行列B及び行列Cを含まず、行列Aのみを含んでもよい。
【0187】
例示的に、分類指示情報が符号化画像タイプを指示しないが、符号化モードを指示する場合、分類情報は行列Aを含まず、行列B及び行列Cのうちの少なくとも一方を含む。
【0188】
いくつかの実施例では、実際の状況に応じて、上記の行列は、1つの要素のみを有するデータであってもよい。
【0189】
本願の実施例では、上記の方法によれば、フィルタリング対象画像の分類情報を決定した後、以下のステップS402を実行する。
【0190】
ステップS402において、フィルタリング対象画像及びフィルタリング対象画像の分類情報を深層学習ベースの同一のフィルタリングモデルに入力し、フィルタリングモデルに、分類情報に基づいてフィルタリング対象画像をフィルタリングさせて、フィルタリング後の画像を得る。
【0191】
本願の実施例のフィルタリングモデルは、深層学習ベースの一般的なモデルであり、モデルの予測精度を向上させるために、
図7Aに示すように、フィルタリング対象画像をフィルタリングモデルに入力することに加えて、さらに、フィルタリング対象画像の分類情報をフィルタリングモデルに入力する。即ち、符号化タイプの補助情報をフィルタリングモデルの入力として導入することで、同じフィルタを使用して特徴量の多い画像を処理(フレーム内符号化モード及びフレーム間符号化モードを含む画像を同時処理)することによるフィルタリング性能の低下を回避し、より精緻な画像情報を画像に提供することができる。これにより、フィルタリング対象画像の分類情報に基づいて、フィルタリング対象画像の各画像領域をフィルタリングするときに、フィルタリング効果を向上させることができる。
【0192】
本願の実施例は、フィルタリングモデルの具体的なネットワーク構造を限定するものではなく、
図7Aは例示に過ぎない。
【0193】
いくつかの実施例では、上記のステップS402において、フィルタリング対象画像及びフィルタリング対象画像の分類情報を深層学習ベースの同一のフィルタリングモデルに入力するプロセスは、以下のステップを含む。ステップS402-Aにおいて、フィルタリング対象画像及び分類情報のうちの少なくとも1つを前処理した後、フィルタリングモデルに入力する。
【0194】
前処理の例1:フィルタリング対象画像と分類情報とをレイヤのマージをした後、フィルタリングモデルに入力する。
【0195】
一例として、レイヤのマージは、DenseNetの連結(concatenate)動作によって実現され、DenseNetはチャネルのマージに使用される。レイヤのマージの例として、フィルタリング対象画像に含まれる3つのチャネル(赤、緑、青)のグレースケール・データに基づいて、1つの分類情報チャネルを新たに追加して分類情報を記録する。それにより、マージ後のフィルタリング対象画像は、4つのチャネルのデータを含む。
【0196】
前処理の例2:フィルタリング対象画像と分類情報とを乗算した後、フィルタリングモデルに入力する。
【0197】
乗算の例として、ドット乗算によって実現することができる。即ち、フィルタリング対象画像の各ピクセルのチャネル(赤、緑、青)のグレースケール・データは、それぞれ分類情報の埋め込みベクトル表現と乗算され、乗算して得られる3つのチャネルのグレースケール・データを、フィルタリングモデルの入力として使用する。
【0198】
前処理の例3:
図7Bに示すように、フィルタリング対象画像と分類情報とを乗算(例えば、上記の点乗算)してから第1特徴抽出ユニットに入力して、フィルタリング対象画像と分類情報とを融合した後の第1特征情報を得、フィルタリング対象画像を第2特徴抽出ユニットに入力して特徴抽出を行って、フィルタリング対象画像の第2特征情報を得、第1特征情報及び第2特征情報フィルタリングモデルに入力して、フィルタリング対象画像のフィルタリング後の画像を得る。
【0199】
本願の実施例は、フィルタリングモデルの具体的なネットワーク構造を限定するものではなく、
図7Bは例示に過ぎない。本願の実施例は、第1特徴抽出ユニット及び第2特徴抽出ユニットの具体的なネットワーク構造を限定するものではない。例示的に、
図7Bに示すように、第1特徴抽出ユニットは、1つの畳み込み層conv(ステップ長S=1)及び1つの活性化関数(prelu活性化関数)を含み、第2特徴抽出ユニットも、1つの畳み込み層(ステップ長S=1)及び1つの活性化関数(prelu関数)を含む。いくつかの実施例では、活性化関数は、
図7Bに示すprelu活性化関数に加えて、relu活性化関数などの他のタイプの活性化関数であってもよく、本願の実施例はこれらを限定しない。第2特徴抽出ユニットの構造は、第1特徴抽出ユニットと同じであってもよい。
【0200】
いくつかの実施例では、上記のステップS402において、フィルタリング対象画像及びフィルタリング対象画像の分類情報を深層学習ベースの同一のフィルタリングモデルに入力するプロセスは、以下のステップを含む。ステップS402-Bにおいて、フィルタリング対象画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、フィルタリング対象画像及び分類情報とを、フィルタリングモデルに入力する。ここで、予測画像は、現在のフィルタリング対象画像に対応する予測画像であり、各予測ブロックをスティッチングすることによって形成される。
【0201】
ブロック分割情報は、現在のフィルタリング対象画像に対応するブロック分割画像である。2つの生成方法を有する。第1の方法は、ブロック分割境界及び非ブロック分割境界に異なるの値を割り当てることであり、第2の方法は、各ブロック分割境界内の領域(符号化ユニット)を、現在の領域内のフィルタリング対象画像の平均値で埋めることである。
【0202】
量子化パラメータは、シーケンスレベル量子化パラメータ及びスライスレベル量子化パラメータのうちの少なくとも1つを含む。シーケンスレベル量子化パラメータは、現在のシーケンス(すべてのフレーム、スライス、及びタイルなど)に作用する量子化パラメータであり、他の量子化パラメータは、これに基づいてオフセットを加算することによって得られる。スライスレベル量子化パラメータは、現在のスライスに作用する量子化パラメータである。
【0203】
一例では、フィルタリング対象画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、フィルタリング対象画像及び分類情報とを融合した後、フィルタリングモデルに入力して、フィルタリング対象画像のフィルタリング後の画像を得る。
【0204】
別の例では、ステップS402-Bは以下のステップを含む。ステップS402-B1において、予測画像を第1処理ユニットに入力して、予測画像の特徴情報を得る。ステップS402-B2において、フィルタリング対象画像を第2処理ユニットに入力して、フィルタリング対象画像の特徴情報を得る。ステップS402-B3において、予測画像の特徴情報、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、フィルタリング対象画像の特徴情報及び分類情報とを、フィルタリングモデルに入力して、フィルタリング対象画像のフィルタリング後の画像を得る。
【0205】
本願の実施例では、まず、フィルタリング対象画像に対応する予測画像を第1処理ユニットに入力して、予測画像の特徴情報を得る。フィルタリング対象画像を第2処理ユニットに入力して、フィルタリング対象画像の特徴情報を得る。
図7Cに示すように、予測画像の特徴情報、量子化パラメータ及びブロック分割情報のうちの少なくとも1つと、フィルタリング対象画像の特徴情報及び分類情報とをフィルタリングモデルに入力して、フィルタリング対象画像のフィルタリング後の画像を得る。
【0206】
本願の実施例は、第1処理ユニット、第2処理ユニット、及びフィルタリングモデルの具体的なネットワーク構造を限定するものではない。例示的に、
図7Cに示すように、第1処理ユニットは、1つの畳み込み層及び1つの活性化関数を含む。例示的に、
図7Cに示すように、第2処理ユニットは、1つの畳み込み層及び1つの活性化関数を含む。
【0207】
いくつかの実施例では、上記の活性化関数は、
図7Cに示すprelu活性化関数に加えて、他のたタイプの活性化関数であってもよく、本願の実施例はこれらを限定しない。
【0208】
本願の実施例のフィルタリングモデルのネットワーク構造は、
図7A~
図7Cに示す構造に加えて、他の構造であってもよく、本願は、フィルタリングモデルの具体的なネットワーク構造を限定するものではない。
【0209】
いくつかの実施例では、予測画像の特徴情報、量子化パラメータ及びブロック分割情報のうちの少なくとも1つと、フィルタリング対象画像の特徴情報及び分類情報とを融合した後、フィルタリングモデルに入力する。
【0210】
例えば、
図7Cでは、予測画像の特徴情報、量子化パラメータ、フィルタリング対象画像の特徴情報及び分類情報をマージした後、フィルタリングモデルに入力する。
【0211】
別の例では、
図7Cでは、予測画像の特徴情報、量子化パラメータ、フィルタリング対象画像の特徴情報及び分類情報を乗算した後、フィルタリングモデルに入力する。
【0212】
いくつかの実施例では、
図7A~
図7Cを参照すると、本願の実施例のフィルタリングモデルは、フィルタリングモデルのネットワーク構造を含み、順次接続される以下の構造、即ち、畳み込み層(ステップ長s=1)、活性化関数(prelu活性化関数)、N個の残差ブロック(Nは正の整数である)、畳み込み層(ステップ長s=1)及びアップサンプリング層を含む。上記のN個の残差ブロックのネットワーク構造は、同じでも異なってもよい。
【0213】
いくつかの実施例では、N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は同じである。
【0214】
例示的に、
図8Aに示すように、N個の残差ブロックのうちの少なくとも1つ残差ブロックは、1つの1x1畳み込み層及び3x3畳み込み層を含み、前記1x1畳み込み層及び3x3畳み込み層の入力チャネル数は、出力チャネル数に等しい。
【0215】
いくつかの実施例では、
図8Aに示す残差ブロックに基づいて注目層を追加してもよい。例えば、
図8Bに示すように、畳み込みブロック注目モジュール(CBAM:Convolutional Block Attention Module)を追加する。
【0216】
いくつかの実施例では、N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は異なる。
【0217】
例示的に、
図8Cに示すように、N個の残差ブロックのうちの少なくとも1つ残差ブロックは、1つの1x1畳み込み層及び3x3畳み込み層を含み、前記1x1畳み込み層及び3x3畳み込み層の入力チャネル数は、出力チャネル数と等しくない。例えば、活性化関数の前にチャネル数を増加し、活性化関数の後にチャネル数を減らすように設定してもよい。即ち、最初の1x1畳み込み層の入力チャネル数及び出力チャネル数はそれぞれ64及び192であり、2番目の1x1畳み込み層の成入力チャネル数及び出力チャネル数はそれぞれ192及び64であり、3番目の3x3畳み込み層の入力チャネル数及び出力チャネル数はそれぞれ64及び64である。
【0218】
いくつかの実施例では、
図8Cに示す残差ブロックに基づいて注目層を追加してもよい。例えば、
図8Dに示すように、畳み込みブロック注目モジュール(CBAM:Convolutional Block Attention Module)を追加する。
【0219】
なお、上記の
図7A~
図8Dは、本願に係るフィルタリングモデルのネットワーク構造の模式図に過ぎない。本願の実施例のフィルタリングモデルのネットワーク構造は、上記の
図7A~
図8Dに示すものを含むがこれらに限定されない。上記の
図7A~
図8Dに示す具体的なネットワークパラメータも一例に過ぎず、本願の実施例はこれらに限定されない。
【0220】
本願の実施例のフィルタリングモデルは、フレーム内符号化モードにおけるフィルタリング対象画像に対するフィルタリングを実現することができ、フレーム間符号化モードにおけるフィルタリング対象画像に対するフィルタリングを実現することもできる。これは、異なるモードにおけるフィルタリング対象画像としての汎用フィルタリングモデルに相当し、異なるモードに対して対応するフィルタリングモデルをそれぞれ構築することに比べて、モデルパラメータの記憶空間の占有率が大幅に低減され、モデルパラメータの記憶コストが低い。また、フィルタリングモデルに分類情報を結合し、フィルタリング対象画像に対して差別化フィルタリングを行うことにより、異なるモードにおけるフィルタリング対象画像を適用でき、フィルタリング対象画像のフィルタリング効果を向上させることができる。
【0221】
以上により、本願の実施例に係る画像フィルタリング方法について詳細に説明した。フィルタリングモデルを使用して上記の画像フィルタリングを行う前に、まず、フィルタリングモデルをトレーニングする必要がある。下記において、フィルタリングモデルのトレーニングプロセスについて説明する。
【0222】
図9に示すように、本願の実施例のフィルタリングモデルのトレーニングプロセスは以下のステップを含む。
【0223】
ステップ901:データセットの生成。
【0224】
(コーデック)ソフトウェアを使用してトレーニングセットを生成する。
【0225】
なお、前記トレーニングセットに含まれるトレーニング画像は、フレーム内符号化モードにおける画像を含み、フレーム間符号化モードにおける画像も含む。
【0226】
また、前記トレーニングセットには、各トレーニング画像の符号化情報がさらに含まれ、ここで、符号化情報は分類情報を含み、前記分類情報は、トレーニング画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する。
【0227】
ステップ902:モデルのトレーニング。
【0228】
トレーニングセットを使用してフィルタリングモデルをトレーニングする。具体的には、上記のトレーニング画像及びトレーニング画像の分類情報フィルタリングモデルに入力して、フィルタリングモデルをトレーニングして、トレーニング後のフィルタリングモデルを得る。
【0229】
モデルトレーニングプロセスでは、損失関数が使用される。損失関数は、予測値と実測値の差を測定する。損失値(loss)が大きいほど、差が大きいことを表し、トレーニングの目的は、lossを減らすことである。本願の実施例の損失関数には、L1ノルム損失関数、L2ノルム損失関数、及びsmooth L1損失関数がある。
【0230】
実際にフィルタリングモデルを使用する場合、1つのフレーム全体を直接入力してフィルタリングするのではなく、画像をサブ画像に分割し、次に、サブ画像をフィルタリングモデルに順次入力してフィルタリングを行うのが一般的である。サブ画像のサイズには大小があるため、フィルタリングモデルに入力されるフィルタリング対象画像がスライス/タイル境界を横切る場合がある。
【0231】
これに基づき、いくつかの実施例では、トレーニング画像及びトレーニング画像の分類情報をフィルタリングモデルに入力することに加えて、トレーニング画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つを、フィルタリングモデルにさらに入力することにより、フィルタリング画像がトレーニング画像のより多くの情報を学習し、それにより、モデルのフィルタリング効果を向上させることができる。
【0232】
ステップ903:ソフトウェアの統合。
【0233】
トレーニングされたフィルタリングモデルをソフトウェアに統合してフィルタリングする。例えば、上記のトレーニングされたフィルタリングモデルを、上記のエンコーダ及び/又は復号化に統合して、再構成画像をフィルタリングする。これにより、再構成効果を向上させる。
【0234】
なお、
図4~
図9は、本願の実施例の例示に過ぎず、本願の実施例の制限として解釈されるべきではない。
【0235】
以上により、図面を参照して、本願の実施例の好ましい実施形態について説明したが、本願は、上記の実施形態における具体的な詳細に限定されない。本願の実施例の技術的構想の範囲内で、本願の実施例の技術的解決策に対して様々な簡単な変更を行うことができ、これらの簡単な変更はすべて、本願の実施例の保護範囲に属する。例えば、上記の具体的な実施形態で説明される各具体的な技術的特徴は、矛盾することなく、任意の適切な方式で組み合わせることができ、不必要な繰り返しを回避するために、本願は様々な可能な組み合わせについては説明しない。別の例では、本願の実施例の様々な異なる実施形態も、任意に組み合わせることができ、本願の実施例の思想に違反しない限り、当該組み合わせも、本願で開示される内容と見なされるべきである。
【0236】
以上により、
図4~
図12を参照して、本願の実施例の方法の実施例について詳細に説明し、下記において、本願の実施例の装置の実施例について詳細に説明する。
【0237】
図10は、本願の実施例による画像フィルタリング装置の構成を示す模式図である。画像フィルタリング装置10は、フィルタリング対象画像の符号化情報を決定するように構成される決定ユニット11であって、前記符号化情報は、前記フィルタリング対象画像の分類情報を含み、前記分類情報は、前記フィルタリング対象画像の符号化画像タイプ、符号化モードのうちの少なくとも1つを指示する、決定ユニット11と、前記フィルタリング対象画像及び前記分類情報を深層学習ベースの同一のフィルタリングモデルに入力し、フィルタリングモデルに、前記分類情報に基づいて前記フィルタリング対象画像をフィルタリングさせて、フィルタリング後の画像を得るように構成されるフィルタリングユニット12と、を備える。
【0238】
いくつかの実施例では、符号化画像タイプは、フルフレーム内符号化画像及びフレーム間符号化可能画像を含み、前記分類情報が前記フィルタリング対象画像の符号化画像タイプを指示する場合、いくつかの実施例では、上記の分類情報は、スライスレベル、画像ブロックレベル、又は画像ヘッダレベルで指示される。
【0239】
この場合、決定ユニット11は、具体的には、前記フィルタリング対象画像内の複数の画像領域に対応する符号化画像タイプを取得し、前記複数の画像領域がいずれも前記フルフレーム内符号化画像に属する場合、前記分類情報の値は第1の値であると決定し、前記複数の画像領域がいずれも前記フレーム間符号化可能画像に属する場合、前記分類情報の値は第2の値であると決定し、前記フィルタリング対象画像がスライス境界又はタイル境界を横切る場合、前記分類情報の値は第3の値であると決定し、又は前記複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域及び前記フレーム間符号化可能画像に属する画像領域の前記フィルタリング対象画像におけるそれぞれの割合に基づいて、前記分類情報の値を決定するように構成される。
【0240】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像の複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が第1閾値より大きいか等しい場合、前記分類情報の値は前記第1の値であると決定し、前記フィルタリング対象画像の複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第1閾値より小さい場合、前記分類情報の値は前記第2の値であると決定するように構成される。
【0241】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像の複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が第1閾値より大きいか等しい場合、前記分類情報の値は前記第1の値であると決定し、前記フィルタリング対象画像の複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第1閾値より小さく、且つ第2閾値より大きいか等しい場合、前記分類情報の値は前記第2の値であると決定し、前記フィルタリング対象画像の複数の画像領域のうち、前記フルフレーム内符号化画像に属する画像領域の前記フィルタリング対象画像における割合が前記第2閾値より小さい場合、前記分類情報の値は前記第3の値であると決定するように構成される。
【0242】
いくつかの実施例では、符号化モードは、フレーム内符号化モード及びフレーム間符号化モードを含み、前記分類情報がフィルタリング対象画像の符号化モードを指示する場合、前記分類情報は、第1分類情報及び第2分類情報のうちの少なくとも1つを含み、前記第1分類情報は、前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを指示し、前記第2分類情報は、前記フィルタリング対象画像内の所定サイズ領域に対応する符号化モードを指示する。いくつかの実施例では、前記分類情報は、ブロックレベルで指示される。
【0243】
いくつかの実施例では、前記分類情報が前記第1分類情報を含み、前記第1分類情報が複数の要素からなる行列であり、前記行列内の各要素が前記フィルタリング対象画像内の1つ又は複数のピクセルの符号化モードに対応する場合、決定ユニット11は、具体的には、前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードを取得し、前記フィルタリング対象画像内の1つ又は複数のピクセルに対応する符号化モードに基づいて、前記第1分類情報を決定するように構成される。
【0244】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像内のすべてのピクセルに対応する符号化モードが前記フレーム内符号化モードである場合、前記第1分類情報内の各行列要素の値は第1の値であると決定し、前記フィルタリング対象画像内のすべてのピクセルに対応する符号化モードが前記フレーム間符号化モードである場合、前記第1分類情報内の各行列要素の値は第2の値であると決定し、前記フィルタリング対象画像における第1画像領域内の1つ又は複数のピクセルに対応する符号化モードが前記フレーム内符号化モードであり、第2画像領域内の1つ又は複数のピクセルに対応する符号化モードが前記フレーム間符号化モードである場合、前記第1分類情報における前記第1画像領域内の1つ又は複数のピクセルに対応する行列要素の値は前記第1の値であり、前記第2画像領域内の1つ又は複数のピクセルに対応する行列要素の値は前記第2の値であると決定するように構成される。
【0245】
いくつかの実施例では、前記分類情報が前記第2分類情報を含む場合、決定ユニット11は、具体的には、前記フィルタリング対象画像内の異なる符号化モードに対応する画像領域の前記フィルタリング対象画像における割合に基づいて、前記第2分類情報を決定するように構成される。
【0246】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、前記第2分類情報の値は第1の値であると決定し、前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第1所定閾値より小さい場合、前記第2分類情報の値は第2の値であると決定するように構成される。
【0247】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が第1所定閾値より大きいか等しい場合、前記第2分類情報の値は第1の値であると決定し、前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第1所定閾値より小さく、且つ第2所定閾値より大きいか等しい場合、前記第2分類情報の値は第2の値であると決定し、前記フィルタリング対象画像内の前記フレーム内符号化モードに対応する画像領域の前記フィルタリング対象画像における割合が前記第2所定閾値より小さい場合、前記第2分類情報の値は第3の値であると決定するように構成される。
【0248】
いくつかの実施例では、前記符号化モードは、通常のフレーム内符号化モード、行列重み付けフレーム内予測(MIP)モード、フレーム内ブロック複製(IBC)モード、フレーム内文字列予測(ISP)モード、パレット(PLT)モード、通常のフレーム間符号化モード、スキップ(Skip)モード、モーションマージ(Merge)モード、フレーム間とフレーム内との複合予測(CIIP)モードのうちの少なくとも1つを含み、前記分類情報が前記フィルタリング対象画像の符号化モードを指示する場合、いくつかの実施例では、前記分類情報は、ブロックレベルで指示される。
【0249】
この場合、決定ユニット11は、具体的には、前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードを取得し、前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードに基づいて、前記分類情報を決定するように構成される。
【0250】
いくつかの実施例では、決定ユニット11は、具体的には、前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスを決定し、前記フィルタリング対象画像内の複数の画像領域に対応する符号化モードのインデックスに基づいて、前記分類情報を決定するように構成される。
【0251】
いくつかの実施例では、1つの符号化モードが1つのインデックスに対応し、又は複数の符号化モードが1つのインデックスに対応する。
【0252】
いくつかの実施例では、フィルタリングユニット12は、具体的には、前記フィルタリング対象画像及び前記分類情報のうちの少なくとも1つを前処理した後、前記フィルタリングモデルに入力するように構成される。
【0253】
いくつかの実施例では、フィルタリングユニット12は、具体的には、前記フィルタリング対象画像と前記分類情報とをレイヤのマージをした後、前記フィルタリングモデルに入力するように構成される。
【0254】
いくつかの実施例では、フィルタリングユニット12は、具体的には、前記フィルタリング対象画像と前記分類情報とを乗算してから第1特徴抽出ユニットに入力して、前記フィルタリング対象画像と前記分類情報とを融合した後の第1特征情報を得、前記フィルタリング対象画像を第2特徴抽出ユニットに入力して特徴抽出を行って、前記フィルタリング対象画像の第2特征情報を得、前記第1特征情報及び前記第2特征情報を前記フィルタリングモデルに入力するように構成される。
【0255】
いくつかの実施例では、フィルタリングユニット12は、具体的には、前記フィルタリング対象画像に対応する予測画像、量子化パラメータ、及びブロック分割情報のうちの少なくとも1つと、前記フィルタリング対象画像及び前記分類情報とを、前記フィルタリングモデルに入力するように構成される。
【0256】
いくつかの実施例では、フィルタリングユニット12は、具体的には、前記予測画像を第1処理ユニットに入力して、前記予測画像の特徴情報を得、前記フィルタリング対象画像を第2処理ユニットに入力して、前記フィルタリング対象画像の特徴情報を得、前記予測画像の特徴情報、前記量子化パラメータ、及び前記ブロック分割情報のうちの少なくとも1つと、前記フィルタリング対象画像の特徴情報及び前記分類情報とを、前記フィルタリングモデルに入力するように構成される。
【0257】
いくつかの実施例では、前記量子化パラメータは、シーケンスレベル量子化パラメータ及びスライスレベル量子化パラメータのうちの少なくとも1つを含む。
【0258】
いくつかの実施例では、前記フィルタリングモデルは、N個の残差ブロックを含み、前記Nは正の整数である。
【0259】
いくつかの実施例では、前記N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は同じであり、又は、前記N個の残差ブロックのうちの少なくとも1つの残差ブロックに含まれる各畳み込み層の入力チャネル数と出力チャネル数は異なる。
【0260】
いくつかの実施例では、前記N個の残差ブロックのうちの少なくとも1つの残差ブロックは、注目層を含む。
【0261】
いくつかの実施例では、前記フィルタリング後の画像は後続の画像の参照画像として使用され、又は、前記フィルタリング後の画像は表示に使用され、且つ後続の画像の参照画像としては使用されない。
【0262】
なお、装置の実施例と方法の実施例は相互に対応し、同様の説明は方法の実施例を参照することができる。重複を避けるために、ここでは繰り返して説明しない。具体的には、
図10に示す装置10は、上記の方法の実施例を実行することができ、装置16における各モジュールの前記動作及び他の動作及び/又は機能は、それぞれ上記の方法の実施例を実現するために使用され、簡潔性のために、ここでは繰り返して説明しない。
【0263】
以上により、図面を参照して、機能モジュールの観点から本願の実施例の装置について説明した。なお、前記機能モジュールは、ハードウェアの形態で実装されてもよいし、ソフトウェアの形態の命令によっても実装されてもよいし、ハードウェアモジュールとソフトウェアモジュールの組み合わせによっても実装されてもよい。具体的には、本願の実施例における方法の実施例の各ステップは、プロセッサ内のハードウェア集積論理回路及び/又はソフトウェアの形態の命令によって完了することができ、本願の実施例に開示された方法のステップは、ハードウェア復号化プロセッサによって完了されてもよいし、復号化プロセッサ内のハードウェアとソフトウェアモジュールの組み合わせによって完了されてもよい。任意選択的に、ソフトウェアモジュールは、ランダムアクセスメモリ、フラッシュメモリ、読み取り専用メモリ、プログラム可能な読み取り専用メモリ、又は電気的に消去可能なプログラム可能なメモリ、レジスタなどの従来の記憶媒体に配置されることができる。前記記憶媒体はメモリ内に配置され、プロセッサは、メモリ内の情報を読み取り、そのハードウェアと組み合わせて上記の方法の実施例のステップを完了する。
【0264】
図11は、本願の実施例による電子機器の例示的なブロック図である。前記電子機器は、上記の画像フィルタリング装置、又はビデオエンコーダ、又はビデオデコーダであってもよい。
【0265】
図11に示すように、前記電子機器40は、メモリ41とプロセッサ42とを含み得、前記メモリ41は、コンピュータプログラムを記憶し、プログラムコードを前記プロセッサ42に伝送するように構成される。言い換えれば、前記プロセッサ42は、メモリ41からコンピュータプログラムを呼び出して実行することにより、本願の実施例における方法を実現することができる。例えば、前記プロセッサ42は、前記コンピュータプログラム内の命令に従って、上記の方法の実施例を実行するように構成され得る。
【0266】
本願の実施例のいくつかの実施例では、前記プロセッサ42は、汎用コンピュータ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、特定用途向け集積回路(ASIC:Application Specific Integrated Circuit)、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)又は他のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントなどを含んでもよいが、これらに限定されない。
【0267】
本願の実施例のいくつかの実施例では、前記メモリ41は、揮発性メモリ及び/又は不揮発性メモリを含むが、これらに限定されない。ここで、不揮発性メモリは、読み取り専用メモリ(ROM:Read-Only Memory)、プログラマブル読み取り専用メモリ(PROM:Programmable ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM:Erasable PROM)、電気的に消去可能なプログラマブル読み取り専用メモリ(EEPROM:Electrically EPROM)又はフラッシュメモリであり得る。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(RAM:Random Access Memory)であり得る。例示的であるが限定的ではない例示によれば、多くの形のRAM、例えば、静的ランダムアクセスメモリ(SRAM:Static RAM)、ダイナミックランダムアクセスメモリ(DRAM:Dynamic RAM)、同期ダイナミックランダムアクセスメモリ(SDRAM:Synchronous DRAM)、ダブルデータレートの同期ダイナミックランダムアクセスメモリ(DDR SDRAM:Double Data Rate SDRAM)、拡張された同期ダイナミックランダムアクセスメモリ(ESDRAM:Enhanced SDRAM)、同期接続ダイナミックランダムアクセスメモリ(SLDRAM:Synchronous link DRAM)及びダイレクトメモリバスランダムアクセスメモリ(DR RAM:Direct Rambus RAM)などであり得る。
【0268】
本願の実施例のいくつかの実施例では、前記コンピュータプログラムは、1つ又は複数のモジュールに分割され得、前記1つ又は複数のモジュールは前記メモリ41に記憶され、前記プロセッサ42によって実行されて、本願の実施例によって提供される方法を完了する。前記1つ又は複数のモジュールは、特定の機能を実行できる一連のコンピュータプログラム命令セグメントであり得、前記命令セグメントは、前記ビデオ制作装置における前記コンピュータプログラムの実行プロセスを記述するために使用される。
【0269】
図11に示すように、前記電子機器40は、トランシーバ40をさらに含み得、前記トランシーバ43は、前記プロセッサ42又はメモリ41に接続され得る。ここで、プロセッサ42は、他の機器と通信するように当前記トランシーバ43を制御することができ、具体的には、情報又はデータを他の機器に送信し、又は他の機器によって送信される情報又はデータを受信することができる。トランシーバ43は、送信機及び受信機を含み得る。トランシーバ43は、1つ又は複数のアンテナをさらに含み得る。
【0270】
なお、前記ビデオ制作装置の各構成要素は、バスシステムにより接続され、ここで、バスシステムは、データバスに加えて、電力バス、制御バス、及び状態信号バスを含む。
【0271】
本願は、コンピュータ可読記憶媒体をさらに提供し、前記コンピュータ可読記憶媒体には、コンピュータプログラムが記憶され、前記コンピュータプログラムは電子機器によって実行されるときに、電子機器に上記の方法の実施例における方法を実行させる。又は、本願の実施例は、命令を含むコンピュータプログラム製品をさらに提供し、前記命令はコンピュータによって実行されるときに、電子機器に上記の方法の実施例における方法を実行させる。
【0272】
個別のパーツとして説明されたモジュールは、物理的に分離されている場合と分離されていない場合があり、モジュールとして表示されるパーツは、物理モジュールである場合とそうでない場合があり、1箇所に配置される場合もあれば、複数のネットワークユニットに分散される場合もある。実際の需要に応じて、その中の部分の一部又は全部を選択して本実施形態における技術的解決策の目的を達成することができる。例えば、本願の各実施例における各機能モジュールは、1つの処理モジュールに統合されてもよいし、又は各ユニットが物理的に別々に存在してもよいし、2つ又は2つ以上のモジュールが1つのモジュールに統合されてもよい。
【0273】
上記の内容は、本願の特定の実施形態に過ぎず、本願の保護範囲はこれに限定されない。本願で開示された技術的範囲内で、当業者が容易に想到し得る変形又は置換はすべて、本願の保護範囲内に含まれるべきである。したがって、本願の保護範囲は、特許請求の保護範囲に従うものとする。
【国際調査報告】