(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-20
(45)【発行日】2022-01-17
(54)【発明の名称】符号化装置、復号装置、及びプログラム
(51)【国際特許分類】
H04N 19/117 20140101AFI20220107BHJP
H04N 19/136 20140101ALI20220107BHJP
H04N 19/172 20140101ALI20220107BHJP
H04N 19/82 20140101ALI20220107BHJP
【FI】
H04N19/117
H04N19/136
H04N19/172
H04N19/82
(21)【出願番号】P 2020553378
(86)(22)【出願日】2019-10-21
(86)【国際出願番号】 JP2019041254
(87)【国際公開番号】W WO2020085278
(87)【国際公開日】2020-04-30
【審査請求日】2021-03-30
(31)【優先権主張番号】P 2018198728
(32)【優先日】2018-10-22
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用 http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?id=4512 市ヶ谷敦郎、岩村俊輔、根本慎平らが、平成30年9月25日付で、上記URLにおいて、出願に係る発明の内容に関して公開。
【早期審査対象出願】
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】キュリーズ特許業務法人
(72)【発明者】
【氏名】市ヶ谷 敦郎
(72)【発明者】
【氏名】岩村 俊輔
(72)【発明者】
【氏名】根本 慎平
(72)【発明者】
【氏名】井口 和久
【審査官】片岡 利延
(56)【参考文献】
【文献】国際公開第2018/097299(WO,A1)
【文献】特開2013-223096(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
入力画像を符号化する符号化装置であって、
入力画像と該入力画像の予測画像との差を示す残差画像に対して直交変換処理を行って変換係数を算出する変換部と、
量子化パラメータに基づいて、前記変換係数を量子化して量子化係数を生成する量子化部と、
前記量子化係数を符号化して符号化データを生成するエントロピー符号化部と、
前記量子化パラメータに基づいて、前記量子化係数から変換係数を復元し、該変換係数に対して逆変換を行って復元した残差画像に前記予測画像を加算してフィルタ処理前画像を生成する画像復号部と、
前記フィルタ処理前画像に対して、フィルタ処理を行うデブロッキングフィルタ部と、を備え、
前記デブロッキングフィルタ部は、前記フィルタ処理前画像の輝度信号レベルを輝度閾値と比較した結果に応じてフィルタ強度を制御し、
前記デブロッキングフィルタ部は、前記フィルタ処理前画像に対応する一対の隣接ブロックにおける境界部分の複数の画素それぞれの画素値の平均を求めることで、前記フィルタ処理前画像の輝度信号レベルを算出し、
前記デブロッキングフィルタ部は、ピクチャ単位又はシーケンス単位で、前記輝度閾値を決定することを特徴とする、符号化装置。
【請求項2】
前記デブロッキングフィルタ部は、シーケンス単位で前記輝度閾値を決定し、
前記エントロピー符号化部は、前記輝度閾値を示す情報をシーケンスパラメータセットのひとつとして復号側に伝送することを特徴とする、請求項1に記載の符号化装置。
【請求項3】
前記デブロッキングフィルタ部は、
前記フィルタ処理前画像の輝度信号レベルが、前記輝度閾値により区分される複数の輝度信号レベル範囲のいずれに属するかを特定し、
前記特定した輝度信号レベル範囲と対応付けられたフィルタ強度制御情報を用いて、前記フィルタ強度を制御することを特徴とする、請求項1又は2に記載の符号化装置。
【請求項4】
前記エントロピー符号化部は、前記複数の輝度信号レベル範囲のそれぞれに対応して設けられるフィルタ強度制御情報をシーケンスパラメータセットのひとつとして復号側に伝送することを特徴とする、請求項3に記載の符号化装置。
【請求項5】
前記エントロピー符号化部は、前記フィルタ処理前画像の輝度信号レベルに応じたフィルタ強度制御を有効化するか否かを示すフラグを復号側に伝送することを特徴とする、請求項1乃至
4のいずれか1項に記載の符号化装置。
【請求項6】
入力画像の符号化データを復号する復号装置であって、
符号化データを復号して、変換係数を量子化した量子化係数を取得するエントロピー復号部と、
量子化パラメータに基づいて、前記量子化係数から変換係数を復元し、該変換係数に対して逆変換を行って復元した残差画像に予測画像を加算してフィルタ処理前画像を生成する画像復号部と、
前記フィルタ処理前画像に対してフィルタ処理を行うデブロッキングフィルタ部と、を備え、
前記デブロッキングフィルタ部は、前記フィルタ処理前画像の輝度信号レベルを輝度閾値と比較した結果に応じてフィルタ強度を制御し、
前記デブロッキングフィルタ部は、前記フィルタ処理前画像に対応する一対の隣接ブロックにおける境界部分の複数の画素それぞれの画素値の平均を求めることで、前記フィルタ処理前画像の輝度信号レベルを算出し、
前記デブロッキングフィルタ部は、ピクチャ単位又はシーケンス単位で、前記輝度閾値を決定することを特徴とする、復号装置。
【請求項7】
前記エントロピー復号部は、前記輝度閾値を示す情報をシーケンスパラメータセットのひとつとして前記符号化データから取得し、
前記デブロッキングフィルタ部は、前記輝度閾値を示す情報を用いて、シーケンス単位で前記輝度閾値を決定することを特徴とする、請求項
6に記載の復号装置。
【請求項8】
前記デブロッキングフィルタ部は、
前記フィルタ処理前画像の輝度信号レベルが、前記輝度閾値により区分される複数の輝度信号レベル範囲のいずれに属するかを特定し、
前記特定した輝度信号レベル範囲と対応付けられたフィルタ強度制御情報を用いて、前記フィルタ強度を制御することを特徴とする、請求項
6又は
7に記載の復号装置。
【請求項9】
前記エントロピー復号部は、前記複数の輝度信号レベル範囲のそれぞれに対応して設けられるフィルタ強度制御情報をシーケンスパラメータセットのひとつとして前記符号化データから取得することを特徴とする、請求項
8に記載の復号装置。
【請求項10】
前記エントロピー復号部は、前記フィルタ処理前画像の輝度信号レベルに応じたフィルタ強度制御を有効化するか否かを示すフラグを前記符号化データから取得することを特徴とする、請求項
6乃至
9のいずれか1項に記載の復号装置。
【請求項11】
コンピュータを、請求項1乃至
5のいずれか1項に記載の符号化装置として機能させるためのプログラム。
【請求項12】
コンピュータを、請求項
6乃至
10のいずれか1項に記載の復号装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デブロッキングフィルタ処理を行う符号化装置、復号装置、及びプログラムに関する。
【背景技術】
【0002】
主流となっているMPEGに代表される映像符号化方式では、リアルタイム処理の実現のし易さから、フレーム(あるいはピクチャ)などと呼ばれる映像の単位をブロック状の小領域に分割し、ブロック単位で変換や予測などの技術を駆使して符号化(圧縮)を行っている。このような符号化方式では、隣接するブロック間の符号化制御の違いに起因して、ブロック境界において品質差がひずみとなって知覚される。H.264/AVC(Advanced Video Coding)やH.265/HEVC(High Efficiency Video Coding)と呼ばれる近年の符号化方式では、このような符号化ひずみを低減するために、デブロッキングフィルタと呼ばれる処理が採用されている。
【0003】
ブロックひずみは、隣接する両ブロックの境界における信号が直交変換係数を量子化したことにより生じる信号劣化により、ブロック単位の処理であるがゆえに生じる処理の不連続性により、本来スムーズであるべき隣接領域において急峻な信号変動となって生じる。このひずみを軽減するためのデブロッキングフィルタは、一般的に信号の変動を緩やかにするローパスフィルタとして設計されている。量子化の粗さによって信号の劣化量が変動することから、量子化の粗さを規定する量子化パラメータによってフィルタの強度が制御されている(例えば、非特許文献1参照)。
【0004】
一方、新たな映像メディアの特徴として、従来の映像信号で表現できない黒と白の表現範囲を拡大したHDR(high dynamic range)信号の標準化が行われた。このHDR信号では、従来のSDR(Standard Dynamic Range)信号に比べて、光の強度が低いところから高いところ(すなわち、暗いところから明るいところ)までを限られたビット深度の中に記録するため、従来よりも極端なγ補正と呼ばれる信号抑圧処理が加えられている。HDRの方式としては、現在、ARIB STD-B67で規定されているHLG(Hybrid-Log Gamma)方式と、SMPTE ST.2084で規定されているPQ(Perceptual Quantize)方式があり、これらはITU-R BT.2100として標準化されている。なお、将来的にはこれら以外の方式が規定される可能性もある。
【0005】
図1に、SDR信号と、HLG方式及びPQ方式のHDR信号について、画像の輝度信号レベルと、表示装置に表示される表示輝度レベルとの対応関係(逆γ補正)を示す。なお、HLG方式は表示装置のピーク輝度を最大値とする相対的なシステムであるため、図中ではピーク輝度を2000cd/m
2として示す。また同様に、従来のSDR信号も表示装置のピーク輝度を最大値とする相対的なシステムであるため、現在市販されているディスプレイを例としてピーク輝度を500cd/m
2として示す。
【0006】
HDR信号では、輝度信号レベルの変動に対する、表示輝度レベル(明るさ)の変化が、従来のSDR信号に比べ大きくなっている。そのため、信号レベルの大きい領域では、量子化ひずみによるブロックノイズが従来の信号劣化に比べ誇張されて表現される。特に、最も信号の抑圧度合いが大きいPQ方式では、輝度信号レベルに対する表示輝度レベルの変動が顕著であり、ブロックひずみによる信号劣化の影響もまた顕著である。この現象を低減するために、信号レベルに応じて量子化パラメータを小さくするという対策を行うことが一般的になっている。
【先行技術文献】
【非特許文献】
【0007】
【文献】大久保榮監修、「インプレス標準教科書シリーズH.265/HEVC教科書」、株式会社インプレスジャパン、2013年10月21日
【発明の概要】
【0008】
従来のデブロッキングフィルタでは、ブロック間のスムージングを実現するフィルタの強度を切り替えるための閾値がフレーム単位で量子化パラメータに応じて予め決められており、輝度信号レベルに応じた制御は行われていなかった。そのため、HDR信号では、輝度信号レベルの差と表示輝度レベルの差の非線形性が強く、従来のデブロッキングフィルタではブロックひずみを十分に低減することが困難であった。また、従来のSDR信号でもガンマ補正による非線形性があるため、輝度レベルが高い領域においてデブロッキングフィルタの効果が低減するという課題があった。
【0009】
また、量子化パラメータを必要以上に小さくすることにより、ブロックの平均的な誤差量を低減させることは可能であるが、量子化パラメータが小さくなることによりデブロッキングフィルタの作用も小さくなり、境界部において輝度信号レベルの差が顕著に表示されてしまうことを十分に改善することはできなかった。また、量子化パラメータを小さくすると情報量が増加するため、圧縮効果も低減してしまうという課題があった。
【0010】
かかる事情に鑑みてなされた本発明の目的は、圧縮効果を損なうことなく、ブロックひずみを低減させることが可能な符号化装置、復号装置、及びプログラムを提供することにある。
【0011】
上記課題を解決するため、本発明に係る符号化装置は、入力画像を符号化する符号化装置であって、入力画像と該入力画像の予測画像との差を示す残差画像に対して直交変換処理を行って直交変換係数を算出する変換部と、量子化パラメータに基づいて、前記直交変換係数を量子化して量子化係数を生成する量子化部と、前記量子化係数を符号化して符号化データを生成するエントロピー符号化部と、前記量子化パラメータに基づいて、前記量子化係数から直交変換係数を復元し、該直交変換係数に対して逆直交変換を行って復元した残差画像に前記予測画像を加算してフィルタ処理前画像を生成する画像復号部と、前記フィルタ処理前画像に対して、フィルタ処理を行うデブロッキングフィルタ部と、を備え、前記デブロッキングフィルタ部は、前記フィルタ処理前画像の輝度信号レベルを輝度閾値と比較し、前記輝度信号レベルの範囲に応じてフィルタの強度を制御することを特徴とする。
【0012】
さらに、本発明に係る符号化装置において、前記デブロッキングフィルタ部は、ピクチャ単位又はシーケンス単位で、前記輝度閾値を決定することを特徴とする。
【0013】
また、上記課題を解決するため、本発明に係る復号装置は、入力画像の符号化データを復号する復号装置であって、符号化データを復号して、直交変換係数を量子化した量子化係数を取得するエントロピー復号部と、量子化パラメータに基づいて、前記量子化係数から直交変換係数を復元し、該直交変換係数に対して逆直交変換を行って復元した残差画像に予測画像を加算してフィルタ処理前画像を生成する画像復号部と、前記フィルタ処理前画像に対してフィルタ処理を行うデブロッキングフィルタ部と、を備え、前記デブロッキングフィルタ部は、前記フィルタ処理前画像の輝度信号レベルを輝度閾値と比較し、前記輝度信号レベルの範囲に応じてフィルタ強度を制御することを特徴とする。
【0014】
さらに、本発明に係る復号装置において、前記デブロッキングフィルタ部は、ピクチャ単位又はシーケンス単位で、前記輝度閾値を決定することを特徴とする。
【0015】
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記符号化装置として機能させることを特徴とする。
【0016】
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記復号装置として機能させることを特徴とする。
【0017】
本発明によれば、圧縮効果を損なうことなく、ブロックひずみを低減させることができるようになる。
【図面の簡単な説明】
【0018】
【
図1】信号レベルと輝度レベルとの対応関係を示す図である。
【
図2】本発明の一実施形態に係る符号化装置の構成例を示すブロック図である。
【
図3】デブロッキングフィルタ処理を行うブロック境界を示す図である。
【
図4】本発明の一実施形態に係る復号装置の構成例を示すブロック図である。
【発明を実施するための形態】
【0019】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【0020】
(符号化装置)
本発明の一実施形態に係る符号化装置について、以下に説明する。
図2に、本発明の一実施形態に係る符号化装置の構成例を示す。
図2に示す符号化装置1は、ブロック分割部11と、減算部12と、変換部13と、量子化部14と、逆量子化部15と、逆変換部16と、加算部17と、デブロッキングフィルタ部18と、サンプルアダプティブオフセット部19と、記憶部20と、イントラ予測部21と、動き補償予測部22と、切替部23と、エントロピー符号化部24とを備える。なお、サンプルアダプティブオフセット部19は必須の構成では無い。サンプルアダプティブオフセット部19に代えて、あるいはサンプルアダプティブオフセット部19に追加して、他のポストフィルタ処理を行う処理部を設けてもよい。
【0021】
ブロック分割部11は、入力画像である符号化対象フレームを複数のブロックに分割し、ブロック画像を減算部12に出力する。ブロックのサイズは可変サイズであってもよく、例えば128×128画素、64×64画素、32×32画素、16×16画素、8×8画素、又は4×4画素とする。
【0022】
減算部12は、ブロック分割部11から入力されたブロック画像の各画素値から、後述するイントラ予測部21又は動き補償予測部22から切替部23を介して入力された、入力画像の予測画像の各画素値を減算して、ブロック画像と予測画像との差を示す残差画像を生成し、残差画像を変換部13に出力する。
【0023】
変換部13は、減算部12から入力された残差画像に対して直交変換処理を行って直交変換係数を算出し、ブロックごとの直交変換係数を量子化部14に出力する。
【0024】
量子化部14は、量子化の粗さを規定する量子化パラメータ(Qp)に基づいて、変換部13から入力されたブロックごとの直交変換係数を量子化して量子化係数を生成し、量子化パラメータをデブロッキングフィルタ部18に出力するとともに、量子化パラメータ及び量子化係数を逆量子化部15及びエントロピー符号化部24に出力する。より詳細には、量子化部14は、変換部13から入力されたブロックごとの直交変換係数を、量子化パラメータから導出される量子化ステップで除することにより、量子化係数を生成する。例えば、HEVCなどでは量子化パラメータの値は0から51までであり、量子化パラメータが6増加すると量子化ステップが2倍となる(すなわち、量子化パラメータと量子化ステップの対数が比例する)ように対応付けられている。
【0025】
逆量子化部15は、量子化パラメータに基づいて、量子化部14から入力された量子化係数から直交変換係数を復元し、復元した直交変換係数を逆変換部16に出力する。より詳細には、逆量子化部15は、量子化部14から入力された量子化係数に対して、量子化パラメータから導出される量子化ステップを乗ずることにより、ブロックごとの直交変換係数を復元する。
【0026】
逆変換部16は、逆量子化部15から入力された直交変換係数に対して逆直交変換を行って残差画像を生成し、生成した残差画像を加算部17に出力する。例えば、変換部13が離散コサイン変換を行った場合には、逆変換部16は逆離散コサイン変換を行う。
【0027】
加算部17は、逆変換部16から入力された残差画像と、切替部23から入力された予測画像の各画素値を加算してフィルタ処理前画像を生成し、生成したフィルタ処理前画像をデブロッキングフィルタ部18に出力する。
【0028】
デブロッキングフィルタ部18は、加算部17から入力されたフィルタ処理前画像に対して、フィルタ処理を行い、フィルタ処理後の画像をサンプルアダプティブオフセット部19に出力する。デブロッキングフィルタ部18は、フィルタ処理前画像の輝度信号レベルを輝度閾値と比較し、輝度信号レベルの範囲に応じてフィルタ強度を制御する。そして、デブロッキングフィルタ部18はフィルタ処理に関する情報(フィルタ係数に加え、後述する輝度閾値及びシフト量a,bを示す情報など)をエントロピー符号化部24に出力する。処理の詳細については後述する。
【0029】
サンプルアダプティブオフセット部19は、デブロッキングフィルタ部18から入力された画像を画素単位で分類し、各画素値に分類に応じたオフセットを加算し、その結果を復号画像として記憶部20に出力する。また、サンプルアダプティブオフセットの情報をエントロピー符号化部24に出力する。
【0030】
イントラ予測部21は、記憶部20に記憶された復号画像を参照して、イントラ予測を行ってイントラ予測画像を生成し、生成したイントラ予測画像を切替部23に出力する。また、イントラ予測部21は、選択したイントラ予測モードをエントロピー符号化部24に出力する。
【0031】
動き補償予測部22は、記憶部20に記憶された復号画像を参照して、ブロックマッチングなどの手法により動きベクトルを生成し、動き補償予測画像を切替部23に出力する。また、動き補償予測部22は、動きベクトルの情報をエントロピー符号化部24に出力する。さらに、動き補償予測部22は、動きベクトルに基づいて動き補償予測画像を生成し、生成した動き補償予測画像を切替部23に出力する。
【0032】
切替部23は、イントラ予測部21から入力されたイントラ予測画像と、動き補償予測部22から入力された動き補償予測画像とを切替えて、復号画像の予測画像(イントラ予測画像又は動き補償予測画像)を減算部12及び加算部17に出力する。
【0033】
逆量子化部15と、逆変換部16と、加算部17と、イントラ予測部21と、動き補償予測部22と、切替部23とにより、画像復号部10を構成する。画像復号部10は、上記のように、量子化パラメータに基づいて、量子化係数から直交変換係数を復元し、該直交変換係数に対して逆直交変換を行って復元した残差画像に予測画像を加算することによりフィルタ処理前画像を生成する。
【0034】
エントロピー符号化部24は、量子化部14から入力された量子化パラメータ及び量子化係数、イントラ予測部21から入力されたイントラ予測モード、動き補償予測部22から入力された予測動きベクトルの情報、デブロッキングフィルタ部18から入力されたフィルタ処理に関する情報、及びサンプルアダプティブオフセット部19から入力されたサンプルアダプティブオフセットの情報などに対してエントロピー符号化を行い、データ圧縮を行って符号化データを生成し、生成した符号化データを符号化装置1の外部に出力する。エントロピー符号化は、0次指数ゴロム符号やCABAC(Context-based Adaptive Binary Arithmetic Coding;コンテキスト適応型2値算術符号)など、任意のエントロピー符号化方式を用いることができる。
【0035】
(デブロッキングフィルタ部)
次に、デブロッキングフィルタ部18の詳細について説明する。本実施形態では、デブロッキングフィルタ部18が処理を行うブロックサイズを例えば8×8画素とする。デブロッキングフィルタ部18は、まずブロックごとに平滑化処理の強さを示す境界強度Bs(Boundary Strength)値を求める。Bs値は0,1,2のいずれかとする。
【0036】
図3に、デブロッキングフィルタ処理を行うブロック境界を示す。
図3を参照して、H.265/HEVC方式に準拠したデブロッキングフィルタ処理の一例について説明する。ブロックP又はQがイントラ予測を行うブロックである場合には、Bs値を2とする。ブロックP及びQがインター予測を行うブロックであり、且つ少なくとも以下の一つの条件を満たす場合には、Bs値を1とし、その他の場合には、Bs値を0とする。
・ブロックP又はQが有意な(非ゼロの)DCT係数を含み、変換ユニットTU(Transform Unit)の境界であること。
・ブロックP及びQの動きベクトルの本数あるいは参照画像が異なること。
・ブロックP及びQの動きベクトルの差の絶対値が4画素以上であること。
【0037】
デブロッキングフィルタ部18は、Bs値が0の場合にはフィルタ処理を行わない。以下、
図3に示す垂直ブロック境界を例に説明する。デブロッキングフィルタ部18は、Bs値が1又は2の場合には、次式(1)を満たす場合にのみ、フィルタリング処理を行う。
【0038】
【0039】
また、デブロッキングフィルタ部18は、フィルタリング処理を行う際には、以下の条件式(2)~(7)を全て満たす場合に強いフィルタを適用し、それ以外の場合に弱いフィルタを適用する。
【0040】
【0041】
閾値β及びtCの値は、隣接するブロックPとブロックQの量子化パラメータQpp及びQpQの平均値Qav=(Qpp+QpQ+1)>>1に応じて変わる。ここで、>>1は1ビットの算術右シフト演算を意味する。デブロッキングフィルタ部18は、Qavと閾値β及びtCとの対応関係を示す基準テーブルを有する。基準テーブルの一例を表1に示す。画像のビット深度が8ビットの場合の閾値β,tCをそれぞれ閾値β’,tC’として表記している。なお、Qav,β’,tC’は、フレーム又はスライス単位でそれぞれオフセットを加えた値とすることも可能である。
【0042】
【0043】
ビット深度をBとすると、閾値β及びtCは、それぞれ式(8)(9)で表される。ここで、<<1は1ビットの算術左シフト演算を意味する。
【0044】
【0045】
本発明では、輝度信号レベル(輝度成分の画素値)Lによって基準テーブルをシフトして閾値β及びtCを設定する。輝度信号レベルLの値は、例えば(p00+p03+q00+q03)/4や、(p00+p01+p02+p03+q00+q01+q02+q03)/8とする。なお、輝度信号レベルLの求め方は一例であり、これに限定されるものではない。
【0046】
具体的には、デブロッキングフィルタ部18は、輝度信号レベルLの閾値(輝度閾値)を決定し、輝度信号レベルLと輝度閾値との比較により、基準テーブルのシフト量を決定する。デブロッキングフィルタ部18は、輝度閾値の決定をピクチャ単位で行うことができ、任意のピクチャで行ってもよいし、複数のピクチャ又は特定のピクチャ(例えば、シーケンスやIピクチャなど)ごとに行ってもよい。
【0047】
輝度閾値により輝度信号レベルを何段階に分けるか(何分割するか)、輝度信号レベルの範囲を均等にするか不均等にするかは、任意に決定することができる。例えば、EOTF(Electro-Optical Transfer Function)関数を用いて、この関数の傾きが所定の値(例えば、1/4,1/2,2,4,8)となる輝度信号レベルを輝度閾値と決定する。あるいは、輝度信号レベルとブロックひずみ度との対応関係を解析し、輝度閾値を決定してもよい。例えば、8ビット映像の輝度信号レベル(1-254)に対するブロックひずみ度の対応関係が略線形であり、輝度信号レベルを5段階に分割する場合には、輝度閾値を50,100,150,200としてもよい。この場合、輝度信号レベルの範囲は、0-49、50-99、100-149、150-199、200-254に分割される。また、特定の輝度信号レベルの範囲においてブロックひずみ度の変化率が大きい場合には、この輝度信号レベルの範囲を他の範囲よりも細かく分割してもよい。
【0048】
デブロッキングフィルタ部18は、具体的には、表1に示すβ’及びtC’を、QAVをインデックスとするβ’[QAV]及びtC’[QAV]とし、輝度信号レベルLに応じてインデックスQAVを制御する。例えばシフト量aを、式(10)の基準によって決定し、シフト量bを、式(11)の基準によって決定する。ここで、th1~th6は、輝度閾値である。また、アプリケーションごとの要求条件に応じてシフト量a,bを決定してもよく、簡単にはa=bとしてもよい。また、a=0又はb=0として、閾値β’,tC’の一方のみをシフトさせるようにしてもよい。なお、シフト量a,bは、フィルタ強度制御情報に相当する。
【0049】
if (L < th1)
a=-1;
else if (L >= th1 && L < th2)
a=0;
else if (L >= th2 && L < th3)
a=1;
else if (L >= th3 && L < th4)
a=5;
else if (L >= th4 && L < th5)
a=10;
else if (L >= th5 && L < th6)
a=12;
else if (L >= th6)
a=15; (10)
【0050】
if (L < th1)
b=-1;
else if (L >= th1 && L < th3)
b=0;
else if (L >= th3 && L < th4)
b=1;
else if (L >= th4 && L < th6)
b=5;
else if (L >= th6)
b=7; (11)
【0051】
例えば、シフト量a=b=qpOffsetのとき、QAV=(Qpp+QpQ+1)>>1+qpOffsetで求め、輝度レベルLに応じたインデックスQAVを用いる。例えばqpOffset=5であれば、基準テーブルを参照し、+5のオフセットが加えられたQAVをインデックスとして閾値β’及びtC’を求める。すなわち、基準テーブルの閾値β’及びtC’をオフセットなしに対して右に5だけシフトする。なお、qpOffsetがマイナスであれば、左にシフトする。なお、閾値β’及びtC’が0となった場合には、それ以降の閾値も下限0とし、また閾値β’及びtC’が上限値64及び24に至った場合には、それ以降は上限値で補完する。a=bの例を示したが、aとbが等しくない場合はQAVをそれぞれ用意してβ’及びtC’を算出する。
【0052】
デブロッキングフィルタ部18は、輝度信号レベルLに応じて規定されたシフト量a,bに従って基準テーブルの閾値β’及びtC’をシフトすることにより、Qavに応じたフィルタ強度の切替えの閾値を適応的に制御することができる。基準テーブルの閾値β’及びtC’を右にシフトする(正のオフセットが加えられたQAVをインデックスとする)と、閾値β及びtcの値が大きくなるので、上記条件式(2)~(7)を満たしやすくなり、強いフィルタが適用されやすくなる。したがって、本発明に係る符号化装置1においては、ブロックひずみ度の高い群に対してはシフト量a,bを増やして強度の強いフィルタが適用されやすくなるように制御し、ブロックひずみ度の低い群に対してはシフト量a,bをマイナスとして強度の強いフィルが適用されにくくなるように制御することによって、コンテンツに適したフィルタ強度の変更が可能となる。その結果、圧縮効果を損なうことなく従来よりもブロックひずみの発生を低減させることができ、高画質化を実現することができる。なお、シフト量a,bがマイナスとなる場合には、値がゼロ以上となるようにオフセットを加えてから伝送してもよい。これにより、正負を示す符号ビットを削減することができる。
【0053】
デブロッキングフィルタ部18が決定した輝度閾値、及び輝度信号レベルの範囲ごとに規定されるシフト量a,bを示す情報は、エントロピー符号化部24により伝送される。例えばHEVC方式の場合であれば、PPS(Picture parameter set)と呼ばれるピクチャ単位のパラメータセットやSPS(Sequence parameter set)と呼ばれるシーケンスパラメータセットのひとつとしてエントロピー符号化部24により伝送することができる。同時に、上述した基準テーブルのシフトを行うか否かを示すイネーブルフラグをエントロピー符号化部24により伝送してもよい。
【0054】
輝度閾値を示す情報は、輝度閾値そのものではなく、輝度閾値による輝度信号レベルの分割数、及び隣接する輝度閾値の差分値であってもよい。例えば、輝度信号レベルの輝度閾値th1~th4が、th1=40,th2=90,th3=150,th4=200である場合、輝度信号レベルの分割数は5である。隣接する輝度閾値の差分値は、th1-0=40,th2-th1=50,th3-th2=60,th4-th3=50である。なお、th1については、隣接する輝度閾値を輝度信号レベルの最低値とし、ここでは最低値を0としている。輝度信号レベルの分割数は2以上となるため、伝送する際には実際の分割数から2をマイナスした値の「3」を伝送してもよい。また、輝度閾値の差分値は1以上となるため、伝送する際には実際の輝度閾値の差分値から1をマイナスした値の「39,49,59,49」を伝送してもよい。できるだけ小さい値を伝送することにより、符号量を低減させることができる。
【0055】
なお、上述した符号化装置1として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、符号化装置1の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
【0056】
(復号装置)
次に、本発明の一実施形態に係る復号装置について説明する。
図4は、一実施形態に係る復号装置の構成例を示すブロック図である。
図4に示す復号装置2は、エントロピー復号部31と、逆量子化部32と、逆変換部33と、加算部34と、デブロッキングフィルタ部35と、サンプルアダプティブオフセット部36と、記憶部37と、イントラ予測部38と、動き補償予測部39と、切替部40とを備える。復号装置2は、符号化装置1によって符号化された、入力画像の符号化データを復号する。
【0057】
エントロピー復号部31は、符号化装置1が出力する符号化データを復号し、量子化パラメータ、量子化係数、イントラ予測モード、動き予測情報、フィルタ処理に関する情報、及びサンプルアダプティブオフセットの情報などを取得する。そして、エントロピー復号部31は、量子化パラメータ及び量子化係数を逆量子化部32に出力し、イントラ予測モードをイントラ予測部38に出力し、動き予測情報を動き補償予測部39に出力し、量子化パラメータ及びフィルタ処理に関する情報をデブロッキングフィルタ部35に出力し、サンプルアダプティブオフセットの情報をサンプルアダプティブオフセット部36に出力する。
【0058】
逆量子化部32は、エントロピー復号部31から量子化係数及び量子化パラメータを入力し、量子化係数に量子化パラメータから導出される量子化ステップを乗算してブロックごとの直交変換係数を復元し、復元した直交変換係数を逆変換部33に出力する。
【0059】
逆変換部33は、逆量子化部32から入力された直交変換係数に対して逆変換を行って残差画像を生成し、生成した残差画像を加算部34に出力する。
【0060】
加算部34は、逆変換部33から入力された残差画像と、切替部40から入力された予測画像の各画素値を加算してフィルタ処理前画像を生成し、生成したフィルタ処理前画像をデブロッキングフィルタ部35に出力する。
【0061】
デブロッキングフィルタ部35は、加算部34から入力されたフィルタ処理前画像に対してフィルタ処理を行い、フィルタ処理後の画像をサンプルアダプティブオフセット部36に出力する。デブロッキングフィルタ部35は、フィルタ処理前画像の輝度信号レベルを輝度閾値と比較し、輝度信号レベルの範囲に応じてフィルタ強度を制御する。具体的には、デブロッキングフィルタ部35は、ピクチャ又はシーケンス単位で、輝度閾値を取得し、ブロックひずみ度の高い群に対してフィルタの強度が強くなるように制御する。
【0062】
サンプルアダプティブオフセット部36は、エントロピー復号部31から入力されたサンプルアダプティブオフセットの情報に従って、デブロッキングフィルタ部35から入力された画像にオフセットを加算し、その結果を復号画像として記憶部37に出力する。
【0063】
記憶部37は、1フレーム分の画像を記憶するとともに、1フレーム分の画像を復号装置2の外部に出力する。
【0064】
イントラ予測部38は、記憶部37に記憶された復号画像を参照し、エントロピー復号部31から入力されたイントラ予測モードに従って予測処理を行ってイントラ予測画像を生成し、生成したイントラ予測画像を切替部40に出力する。
【0065】
動き補償予測部39は、記憶部37に記憶された復号画像を参照し、エントロピー復号部31から入力された動きベクトルの情報に従って予測処理を行って動き補償予測画像を生成し、生成した動き補償予測画像を切替部40に出力する。
【0066】
切替部40は、イントラ予測部38から入力されたイントラ予測画像と、動き補償予測部39から入力された動き補償予測画像とを切替えて、予測画像(イントラ予測画像又は動き補償予測画像)を加算部34に出力する。
【0067】
逆量子化部32と、逆変換部33と、加算部34と、イントラ予測部38と、動き補償予測部39と、切替部40とにより、画像復号部30を構成する。画像復号部30は、上記のように、量子化パラメータに基づいて、量子化係数から直交変換係数を復元し、該直交変換係数に対して逆直交変換を行って復元した残差画像に復号画像の予測画像を加算することによりフィルタ処理前画像を生成する。
【0068】
デブロッキングフィルタ部35は、デブロッキングフィルタ部18と同様の処理を行う。すなわち、デブロッキングフィルタ部35は、ブロックごとに境界強度Bs値を求め、Bs値が0の場合にはフィルタ処理を行わず、Bs値が1又は2の場合には、上記式(1)を満たす場合にのみ、フィルタリング処理を行う。フィルタリング処理を行う際には、上記条件式(2)~(7)を全て満たす場合に強いフィルタを適用し、それ以外の場合に弱いフィルタを適用する。デブロッキングフィルタ部35は、エントロピー復号部31から輝度閾値及びシフト量a,bを取得する。エントロピー復号部31から隣接する輝度閾値の差分値の情報を取得した場合には、該情報から輝度閾値を決定する。例えば、隣接する輝度閾値の差分値が40,50,60,50であった場合には、輝度閾値th1~th4は、輝度信号レベルの最低値を0とすると、th1=0+40=40,th2=th1+50=90,th3=th2+60=150,th4=th3+50=200と求まる。そして、デブロッキングフィルタ部35は、デブロッキングフィルタ部18と同様に、輝度信号レベルLと輝度閾値との比較により、取得したシフト量a,bに従って基準テーブルの閾値β’及びtC’をシフトする(オフセットが加えられたQAVをインデックスとする)ことにより、Qavに応じたフィルタ強度の切替えの閾値を適応的に制御することができる。
【0069】
基準テーブルの閾値β’及びtC’を右にシフトすると、閾値β及びtcの値が大きくなるので、上記条件式(2)~(7)を満たしやすくなり、強いフィルタが適用されやすくなる。したがって、本発明に係る復号装置2においては、ブロックひずみ度の高い群に対してはシフト量a,bを増やして強度の強いフィルタが適用されやすくなるように制御し、ブロックひずみ度の低い群に対してはシフト量a,bをマイナスとして強度の強いフィルタが適用されにくくなるように制御することによって、コンテンツに適したフィルタ強度の変更が可能となる。その結果、圧縮効果を損なうことなく従来よりもブロックひずみの発生を低減させることができ、高画質化を実現することができる。
【0070】
なお、上述した復号装置2として機能させるためにコンピュータを好適に用いることができる。そのようなコンピュータは、復号装置2の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
【0071】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態の構成図に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。
【0072】
本願は、日本国特許出願第2018-198728号(2018年10月22日出願)の優先権を主張し、その内容のすべてが本願明細書に組み込まれている。