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

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

▶ 日本放送協会の特許一覧

特開2024-22374符号化装置、復号装置、及びプログラム
<>
  • 特開-符号化装置、復号装置、及びプログラム 図1
  • 特開-符号化装置、復号装置、及びプログラム 図2
  • 特開-符号化装置、復号装置、及びプログラム 図3
  • 特開-符号化装置、復号装置、及びプログラム 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024022374
(43)【公開日】2024-02-16
(54)【発明の名称】符号化装置、復号装置、及びプログラム
(51)【国際特許分類】
   H04N 19/149 20140101AFI20240208BHJP
   H04N 19/115 20140101ALI20240208BHJP
   H04N 19/126 20140101ALI20240208BHJP
   H04N 19/154 20140101ALI20240208BHJP
【FI】
H04N19/149
H04N19/115
H04N19/126
H04N19/154
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022125917
(22)【出願日】2022-08-05
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り 1.近藤 雄一・杉藤 泰子・市ヶ谷 敦郎らが、2021年8月12日付で、FIT2021 第20回情報科学技術フォーラム 講演論文集において公開。 2.近藤 雄一・杉藤 泰子・市ヶ谷 敦郎らが、2021年8月27日付で、FIT2021 第20回情報科学技術フォーラムにおいて公開。 3.https://www.nhk.or.jp/strl/publica/giken_dayori/205/4.html 近藤 雄一が、2022年4月1日付で、技研だより2022年4月号において公開。
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100147485
【弁理士】
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【弁護士】
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100161148
【弁理士】
【氏名又は名称】福尾 誠
(72)【発明者】
【氏名】近藤 雄一
(72)【発明者】
【氏名】日下部 裕一
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159TA46
5C159TA60
5C159TB08
5C159TC08
5C159TC19
(57)【要約】
【課題】映像を所要ビットレートで符号化する際に、計算処理を軽量化しつつ、画質及び符号化効率を向上させる。
【解決手段】符号化装置1は、映像フレームに割り当てられたビットレートと第1RD曲線のパラメータとを用いて、コスト関数を最小化する第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出するビット割当部101と、ブロックごとの割当ビットレートと第2RD曲線のパラメータとから算出される第2ラグランジュ乗数を用いて、ブロックごとの量子化パラメータを算出する量子化パラメータ算出部102と、第2ラグランジュ乗数に基づいて、コスト関数を最小化する符号化モードを決定するRD最適化部103と、を備える。第1RD曲線は、対数関数又は指数関数を用いて近似される。
【選択図】図2
【特許請求の範囲】
【請求項1】
映像フレームを符号化対象領域に分割してブロックごとに符号化を行い、ビットレートと符号化歪みの関係を近似するRD曲線を用いてRD最適化処理を行う符号化装置であって、
前記映像フレームに割り当てられたビットレートと第1RD曲線のパラメータとを用いて、コスト関数を最小化する第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出するビット割当部と、
前記ブロックごとの割当ビットレートと第2RD曲線のパラメータとから算出される第2ラグランジュ乗数を用いて、前記ブロックごとの量子化パラメータを算出する量子化パラメータ算出部と、
前記第2ラグランジュ乗数に基づいて、コスト関数を最小化する符号化モードを決定するRD最適化部と、を備え、
前記第1RD曲線は、対数関数又は指数関数を用いて近似される、符号化装置。
【請求項2】
前記ビット割当部は、ブロック単位の符号化が完了するごとに、前記映像フレーム内の未符号化ブロック全体に割り当てられたビットレートと前記第1RD曲線のパラメータとを用いて、前記第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出する、請求項1に記載の符号化装置。
【請求項3】
前記ビット割当部は、符号化済みブロックのビットレートと想定していたビットレートとの差が閾値を超えた場合に、前記映像フレーム内の未符号化ブロック全体に割り当てられたビットレートと第1RD曲線のパラメータとを用いて、前記第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出する、請求項1に記載の符号化装置。
【請求項4】
請求項1から3のいずれか一項に記載の符号化装置の前記量子化パラメータ算出部によって算出された前記量子化パラメータを取得し、
該量子化パラメータを用いて、前記符号化装置により符号化されたデータを復号する、復号装置。
【請求項5】
コンピュータを、請求項1に記載の符号化装置として機能させるためのプログラム。
【請求項6】
コンピュータを、請求項4に記載の復号装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置、復号装置、及びプログラムに関する。
【背景技術】
【0002】
符号化制御とは、用途や目的に見合った映像符号化を実現するための制御技術である。符号化制御には、ビットレート制約条件下で符号化品質を最大化するような処理を行うレート制御や、遅延を最小限に抑える遅延制御などがある。特にレート制御は、高画質で安定的な放送・通信サービスを行うにあたって重要な役割を果たしている。
【0003】
レート制御は、フレームに割り当てられた目標ビットレートRで符号化できるように、ビットレートをGOP(Group Of Picture)単位・フレーム単位・ブロック単位で割り当てるビット割当処理OBA(Optimal Bit Allocation)と、割り当てたビットレートの範囲内で画質を最も高品質化する(すなわち、符号化歪みを最小化する)符号化モードの選択を行うRD最適化処理RDO(Rate Distortion Optimization)の2つの処理によって実現される。
【0004】
ここでは、フレーム単位のビット割り当ては済んでおり、フレーム内の各ブロックにビット割り当てを行う場合を例に説明する。ビット割当処理では、消費したビットレートRを監視しながら、フレームに割り当てられた目標ビットレートRを超えないようにビットを割り当てる。図4は、斜線を付した7ブロックが符号化を終了し、残りの5ブロックが符号化前の状態を示している。最も簡単なビット割当処理手法の1つは、消費ビットレートRから利用可能なビットレートR(R=R-R)を導出し、Rを残りのブロックへ一定の割合で割り当てる方法である。図4に示す例では、残りの5ブロックに対しする1ブロック当たりの割当ビットは、R/5となる。
【0005】
RD最適化処理は、ビット割当処理によって割り当てられたビットレートで符号化する際に、符号化歪みが最小となる符号化モードを選択することが目的である。近年のHEVC(High Efficiency Video Coding),VVC(Versatile Video Coding)などの映像符号化規格の参照ソフトウェアHM(HEVC Test Model),VTM(VVC Test Model)では、符号量R、符号化歪みD、及びラグランジュ乗数λRDOから計算されるコスト関数J=D+λRDORを最小化するように符号化モードを選択することでこれを実現する(例えば、非特許文献1参照)。ただし、ラグランジュ乗数λRDOは、符号化映像のRD曲線と割当ビットレートを用いて算出される値である。RD曲線とは、映像符号化を行った際のビットレートRと符号化歪みDの関係を近似する曲線であり、HM,VTMでは、式(1)に示す双曲線(hyperbolic)関数を用いている。
【0006】
【数1】
【0007】
ここで、c,kは映像に応じて異なるパラメータであり、符号化処理の過程で、符号化済みのブロックの消費ビットレートRと符号化歪みDを用いて求めることができる。コスト関数Jを最小化するとき、JをRで偏微分した∂J/∂Rは0となるので、λRDOは、式(2)により求めることができる。
【0008】
【数2】
【0009】
また、非特許文献2には、テイラー展開を用いた近似や、近似で発生する誤差の削減処理などを行うことでビット割当処理を実現することが開示されている。
【先行技術文献】
【非特許文献】
【0010】
【非特許文献1】大久保榮、「H265/HEVC教科書」、初版、インプレスジャパン、2013年10月21日発行
【非特許文献2】Li et al., “Optimal Bit Allocation for CTU Level Rate Control in HEVC,” IEEE Trans. Circuits Syst. Video Technol., 2017
【発明の概要】
【発明が解決しようとする課題】
【0011】
前述のビット割当処理は、ビットを各ブロックで均等に割り当てているが、ブロックごとに割り当てるビットを制御することで画面全体の画質を改善することが可能である。以下にその手法を述べる。
【0012】
ビット割当処理の目的は、画面全体の符号化歪みDを最小化することである。ただし、すべてのブロックのビットレートの和は、そのフレームに割り当てられたビットレートRを超えてはいけない。これを数式で表現すると、式(3)となる。ここで、添え字iはブロック番号を表しておりd,rはそれぞれi番目のブロックの符号化歪みとビットレートを表す。また、Mは画面全体のブロック数を表す。
【0013】
【数3】
【0014】
式(3)を満たすようなrを求めたい。式(3)はラグランジュ乗数λOBAを用いて、式(4)に書き換えられる。
【0015】
【数4】
【0016】
双曲線モデルのRD曲線は、式(5)で表される。c,k(1≦i≦M)は、符号化済みフレームのブロックから式(1),(2)を用いて算出される推定値である。
【0017】
【数5】
【0018】
コスト関数Jを最小化するときrによる偏微分は0なので、式(6)が成立する。
【0019】
【数6】
【0020】
であり、rの総和がフレームに割り当てられたビットレートRとなることから、式(7)が成り立たなければならない。
【0021】
【数7】
【0022】
式(7)を解いてλOBAが求まると、式(6)で求まるrによりi番目のブロックのビットレートを決定することができる。しかし、c,kはブロックごとに値が異なるため、式(7)を解析的に解くことはできない。
【0023】
また、非特許文献2では、式(7)を解くためにテイラー展開を用いた近似や、近似で発生する誤差の削減処理などを行うことでビット割当処理を実現しているが、処理が複雑化するという問題点があった。
【0024】
かかる事情に鑑みてなされた本発明の目的は、映像を所要ビットレートで符号化する際に、計算処理を軽量化しつつ、画質及び符号化効率を向上させることが可能な符号化装置、復号装置、及びプログラムを提供することにある。
【課題を解決するための手段】
【0025】
上記課題を解決するため、一実施形態に係る符号化装置は、映像フレームを符号化対象領域に分割してブロックごとに符号化を行い、ビットレートと符号化歪みの関係を近似するRD曲線を用いてRD最適化処理を行う符号化装置であって、前記映像フレームに割り当てられたビットレートと第1RD曲線のパラメータとを用いて、コスト関数を最小化する第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出するビット割当部と、前記ブロックごとの割当ビットレートと第2RD曲線のパラメータとから算出される第2ラグランジュ乗数を用いて、前記ブロックごとの量子化パラメータを算出する量子化パラメータ算出部と、前記第2ラグランジュ乗数に基づいて、コスト関数を最小化する符号化モードを決定するRD最適化部と、を備え、前記第1RD曲線は、対数関数又は指数関数を用いて近似される。
【0026】
さらに、一実施形態において、前記ビット割当部は、ブロック単位の符号化が完了するごとに、前記映像フレーム内の未符号化ブロック全体に割り当てられたビットレートと前記第1RD曲線のパラメータとを用いて、前記第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出してもよい。
【0027】
さらに、一実施形態において、前記ビット割当部は、符号化済みブロックのビットレートと想定していたビットレートとの差が閾値を超えた場合に、前記映像フレーム内の未符号化ブロック全体に割り当てられたビットレートと第1RD曲線のパラメータとを用いて、前記第1ラグランジュ乗数及び前記ブロックごとの割当ビットレートを算出してもよい
【0028】
また、上記課題を解決するため、一実施形態に係る復号装置は、符号化装置の前記量子化パラメータ算出部によって算出された前記量子化パラメータを取得し、該量子化パラメータを用いて、前記符号化装置により符号化されたデータを復号する。
【0029】
また、一実施形態係るプログラムは、コンピュータを、上記符号化装置として機能させる。
【0030】
また、一実施形態係るプログラムは、コンピュータを、上記復号装置として機能させる。
【発明の効果】
【0031】
本発明によれば、映像を所要ビットレートで符号化する際に、計算処理を軽量化しつつ、画質及び符号化効率を向上させることが可能となる。
【図面の簡単な説明】
【0032】
図1】一実施形態に係る符号化装置の構成例を示すブロック図である。
図2】一実施形態に係る符号化装置におけるレート制御部の構成例を示すブロック図である。
図3】一実施形態に係る復号装置の構成例を示すブロック図である。
図4】従来のブロックごとにビット割り当てを行う例を示す図である。
【発明を実施するための形態】
【0033】
以下、一実施形態について、図面を参照して詳細に説明する。
【0034】
(符号化装置)
図1に、本発明の一実施形態に係る符号化装置の構成例を示す。図1に示す符号化装置1は、レート制御部10と、ブロック分割部11と、減算部12と、変換部13と、量子化部14と、逆量子化部15と、逆変換部16と、加算部17と、記憶部18と、予測部19と、エントロピー符号化部20と、符号化データ記憶・出力部21と、を備える。
【0035】
符号化装置1は、映像フレームを符号化対象領域に分割して符号化ブロック(以下、単に「ブロック」という。)ごとに符号化を行い、ビットレートRと符号化歪みDの関係を近似するRD曲線を用いてRD最適化処理を行う。その際、一定のビットレート以下となるように、ブロックごとに量子化パラメータを決定して符号化を行う。
【0036】
ブロック分割部11は、映像フレームをブロック単位の符号化対象領域へ分割したブロック画像を生成し、減算部12及び予測部19に出力する。
【0037】
減算部12は、ブロック分割部11から入力したブロック画像の各画素値から、後述する予測部19から入力した予測ブロック画像の各画素値を減算して、ブロック画像と予測ブロック画像との差を示す残差ブロック画像を生成し、変換部13に出力する。
【0038】
変換部13は、減算部12から入力した残差ブロック画像に対して、直交変換などの変換処理を行って変換係数を算出し、量子化部14に出力する。
【0039】
レート制御部10は、残差ブロック画像の量子化を行う際の量子化パラメータを適切に決定することにより、レート制御を行う。レート制御部10の処理の詳細については後述する。レート制御部10は、決定した量子化パラメータを量子化部14及びエントロピー
符号化部20に出力する。
【0040】
量子化部14は、変換部13から入力した変換係数を、レート制御部10から入力した量子化パラメータに対応する量子化ステップ(例えば、量子化パラメータと量子化ステップの対数が比例するように対応付けられる。)で除算して量子化することにより量子化係数を生成し、逆量子化部15及びエントロピー符号化部20に出力する。量子化部14により、データ量の削減が行われる。
【0041】
逆量子化部15は、量子化部14から入力した量子化係数に対して、量子化ステップを乗ずることにより変換係数を復元し、逆変換部16に出力する。
【0042】
逆変換部16は、逆量子化部15から入力した変換係数に対して、逆変換処理(変換部13で行った変換を元に戻す処理)を行って残差ブロック画像を復元し、加算部17に出力する。例えば、変換部13が離散コサイン変換を行った場合には、逆変換部16は逆離散コサイン変換を行う。
【0043】
加算部17は、逆変換部16から入力した残差ブロック画像と、予測部19から入力した予測画像とを加算し、符号化画像として記憶部18に出力する。
【0044】
逆量子化部15、逆変換部16、及び加算部17により、符号化画像生成部(局所復号部)を構成する。すなわち、符号化画像生成部は、量子化係数に対して量子化ステップを乗じて変換係数を復元し、該変換係数に対して逆変換処理を行って残差ブロック画像を復元し、該残差ブロック画像とイントラ予測画像又は動き補償予測画像とを加算して符号化画像を生成する。
【0045】
符号化装置1は、加算部17が出力する符号化画像に対してデブロッキングフィルタによるフィルタ処理などの後処理を行ってから、記憶部18に出力してもよい。
【0046】
記憶部18は、加算部17から入力した符号化画像を記憶する。
【0047】
予測部19は、イントラ予測(画面内予測)、又はインター予測(画面間予測、動き補償予測)を行う。イントラ予測では、記憶部18に記憶された符号化画像に対して、イントラ予測モードに従ってイントラ予測したイントラ予測画像を生成する。インター予測では、記憶部18に記憶された符号化画像に対して、動きベクトルに従って動き補償予測した動き補償予測画像を生成する。予測部19は、イントラ予測画像と動き補償予測画像とを切替えて予測ブロック画像とし、減算部12及び加算部17に出力する。予測部19は、予測処理に用いられた予測パラメータ(イントラ予測モード及び動きベクトル情報)をエントロピー符号化部20に出力する。
【0048】
エントロピー符号化部20は、量子化部14から入力した量子化係数、レート制御部10から入力した量子化パラメータ、及び予測部19から入力した予測パラメータに対してエントロピー符号化を行い、データ圧縮を行って符号化データを生成し、符号化データ記憶・出力部21に出力する。エントロピー符号化は、0次指数ゴロム符号やコンテキスト適応型2値算術符号(CABAC:Context-based Adaptive Binary Arithmetic Coding)など、任意のエントロピー符号化方式を用いることができる。
【0049】
符号化データ記憶・出力部21は、レート制御部10により決定された最適符号化モードを用いて符号化された符号化データを、符号化装置1の外部に出力する。
【0050】
(レート制御部)
次に、レート制御部10の処理について説明する。図2に、レート制御部10の構成例を示す。図2に示すレート制御部10は、ビット割当部101と、量子化パラメータ算出部102と、RD最適化部103と、を備える。以下、ラグランジュ乗数λOBAを第1ラグランジュ乗数と称し、ラグランジュ乗数λRDOを第2ラグランジュ乗数と称する。また、ビット割当部101で使用するRD曲線を第1RD曲線と称し、量子化パラメータ算出部102で使用するRD曲線を第2RD曲線と称する。
【0051】
ビット割当部101は、フレームに割り当てられたビットRを超えないように、フレームを構成するブロックにビットを割り当てる処理を行う。i番目のブロックに割り当てられたビットレート(以下、「ブロックレート」という。)をr、i番目のブロックの符号化歪み(以下、「ブロック歪み」という。)をdとし、フレーム内のブロック数をMとする。フレーム全体の画質を最も高品質化(符号化歪みを最小化)するとき、第2ラグランジュ乗数λRDOを用いて、上述した式(4)を満たすようにコスト関数Jを最小化する予測モードを選べばよい。
【0052】
上述したように、従来の式(5)で表される双曲線モデルのRD曲線を用いた場合、ブロックレートrを解析的に解くことができない、又は処理が複雑化する。そこで、本発明では対数関数又は指数関数を利用する。第1RD曲線をブロックレートrの対数関数又は指数関数を用いて近似することにより、式(4)を簡単に解くことができ、ブロックレートrを解析的に解くことが可能となる。
【0053】
第1RD曲線を対数関数を用いて近似する場合には、ブロック歪みdとブロックレートrの関係は式(8)で表される。
【0054】
【数8】
【0055】
第1RD曲線を指数関数を用いて近似する場合には、ブロック歪みdとブロックレートrの関係は式(9)で表される。
【0056】
【数9】
【0057】
以下では、第1RD曲線を対数関数を用いて近似する場合について説明する。c’,k’(1≦i≦M)は、符号化済みフレームのブロックから式(10),(11)を用いて算出される。
【0058】
【数10】
【0059】
コスト関数Jを最小化するときブロックレートrによる偏微分は0になるので、式(12)が成立する。
【0060】
【数11】
【0061】
なので、式(13)が成立する。すると、第1ラグランジュ乗数λOBAは式(14)により簡単に求めることができて、ブロックレートrは式(15)により求まる。
【0062】
【数12】
【0063】
このように、ビット割当部101は、映像フレームに割り当てられたビットレートRと、符号化済みブロックから算出された第1RD曲線のパラメータとを用いて、コスト関数Jを最小化する第1ラグランジュ乗数λOBA(式(14)参照)、及びブロックレートr(式(15)参照)を算出する。そして、算出したブロックレートrを量子化パラメータ算出部102に出力する。ビット割当部101は、従来の双曲線モデルではなく、対数モデル又は指数モデルを用いることにより、符号化済みの結果から得られたc’iを用いて、式(15)から簡単にブロックレートrを決定することができ、解析的に解くことが可能となる。
【0064】
量子化パラメータ算出部102は、第2RD曲線として従来のRD曲線を使用する場合には、式(6)にブロックレートrを代入することで第2ラグランジュ乗数λRDOを算出する。また、第2RD曲線として第1RD曲線と同じRD曲線を使用する場合には、式(12)にブロックレートrを代入することで第2ラグランジュ乗数λRDOを算出する。
【0065】
そして、量子化パラメータ算出部102は、式(16)に示すように、第2ラグランジュ乗数λRDOに基づいて、ブロックごとに残差信号の量子化を行う際の量子化パラメータQPを算出する。そして、量子化パラメータ算出部102は、算出した量子化パラメータQPを符号化装置1の量子化部14に出力する。また、量子化パラメータ算出部102は、第2ラグランジュ乗数λRDO及び量子化パラメータQPをRD最適化部103に出力する。
【0066】
【数13】
【0067】
RD最適化部103は、量子化パラメータ算出部102から入力した第2ラグランジュ乗数λRDO及び量子化パラメータQPを用いて、コスト関数Jを最小化する最適符号化モードを決定する。最適符号化モードは、符号化ツール及びパラメータ(イントラ予測
のDC予測モードなど)の組み合わせである。そして、RD最適化部103は、決定した最適符号化モードを符号化装置1の符号化データ記憶・出力部21に出力する。なお、RD最適化で使用するrは、ビット割当部101で算出したブロックレートrとは異なるものである。RD最適化では、あらゆるモードで符号化を実行し、モードごとに得られるdとrの組み合わせをコスト関数J=d+λRDO・rに代入して、Jが最小となるモードを選択する。
【0068】
(ビット割当処理の第1の変形例)
ビット割当部101と量子化パラメータ算出部102によって、ブロックレートrと量子化パラメータQPは一意に定まるが、実際に符号化した時に想定どおりのビットレートになるとは限らない。そこで、フレームに割り当てられた実際のビットレートRから大きく外れるようなことがないように、ブロック単位で割当ビット量の修正を行ってもよい。つまり、第1の変形例では、ビット割当部101は、ブロック単位の符号化が完了するごとに、フレーム内の未符号化ブロック全体に割り当てられたビットレートRと第1RD曲線のパラメータとを用いて、第1ラグランジュ乗数λOBA及びブロックレートrを算出する。
【0069】
具体的には、i番目のブロックで消費したビットをbとすると、j番目までのブロックに対する符号化が終わった時、フレーム内の未符号化ブロック全体に割り当てられたビットレートRは式(17)で表される。そこで、ビット割当部101は、ブロックレートr(j<i≦M)を式(18)により修正する。
【0070】
【数14】
【0071】
(ビット割当処理の第2の変形例)
第1の変形例によりブロック単位でブロックレートrを制御すると、フレーム全体の画質が劣化する場合がある。そこで、フレーム全体の画質を考慮し、必要に応じて第1の変形例による修正を行うようにしてもよい。つまり、第2の変形例では、ビット割当部101は、符号化済みブロックのビットレートRactualと想定していたビットレートRidealとの差が閾値を超えた場合に、フレーム内の未符号化ブロック全体に割り当てられたビットレートRと第1RD曲線のパラメータとを用いて、第1ラグランジュ乗数λOBA及びブロックレートrを算出する。
【0072】
具体的には、j番目までに実際に消費したビットレートRactualが想定していたビットレートRidealからどれだけ乖離したかを基準にして制御を行う。ビット割当部101は、式(19)より、j番目までに消費されるビットレートの想定値Ridealを算出し、式(20)に示すように、乖離度合いSを(Ractual-Rideal)/Ridealの絶対値よって算出する。ビット割当部101は、ブロック符号化ごとに乖離度合いSと閾値sとを比較し、S>sとなるブロックでのみ式(18)で示したブロックレートrに修正することで、余分な制御は行わないようにすることができる。閾値sは任意に設定することができ、例えばs=0.1とする。
【0073】
【数15】
【0074】
(復号装置)
次に、本発明の一実施形態に係る復号装置について説明する。図3に、本発明の一実施形態に係る復号装置の構成例を示す。図3に示す復号装置2は、エントロピー復号部31と、逆量子化部32と、逆変換部33と、加算部34と、記憶部35と、予測部36と、を備える。
【0075】
復号装置2は、符号化装置1から、量子化パラメータ算出部102によって算出された量子化パラメータQPを取得し、該量子化パラメータQPを用いて、符号化装置1により符号化された符号化データを復号する。
【0076】
エントロピー復号部31は、符号化装置1が出力する符号化データを復号し、量子化パラメータQP、量子化係数、及び予測パラメータ(イントラ予測モード及び動きベクトル情報)を取得する。そして、エントロピー復号部31は、量子化パラメータQP及び量子化係数を逆量子化部32に出力し、予測パラメータを予測部36に出力する。
【0077】
逆量子化部32は、エントロピー復号部31から量子化係数及び量子化パラメータQPを入力し、量子化係数に量子化パラメータQPから導出される量子化ステップを乗算してブロックごとの直交変換係数を復元し、逆変換部33に出力する。
【0078】
逆変換部33は、逆量子化部32から入力した直交変換係数に対して逆変換を行って残差画像を生成し、加算部34に出力する。
【0079】
加算部34は、逆変換部33から入力した残差画像と、予測部36から入力した予測画像の各画素値を加算して復号画像を生成し、記憶部35及び復号装置2の外部に出力する。
【0080】
復号装置2は、符号化装置1と同様に、加算部34が出力する復号画像に対してデブロッキングフィルタによるフィルタ処理などの後処理を行ってから、記憶部35に出力してもよい。
【0081】
記憶部35は、加算部34から入力した復号画像を記憶する。
【0082】
予測部36は、イントラ予測(画面内予測)、又はインター予測(画面間予測、動き補償予測)を行う。イントラ予測では、記憶部35に記憶された復号画像に対して、エントロピー復号部31から入力したイントラ予測モードに従ってイントラ予測したイントラ予測画像を生成する。インター予測では、記憶部35に記憶された復号画像に対して、エントロピー復号部31から入力した動きベクトル情報に従って動き補償予測した動き補償予測画像を生成する。予測部36は、イントラ予測画像と動き補償予測画像とを切替えて予測ブロック画像とし、加算部34に出力する。
【0083】
このように、本発明は、符号化・復号方式をHEVC,VVCなどの従来の方式から変更することなく、計算処理を軽量化しつつ、画質及び符号化効率を向上させる映像を所要ビットレートで符号化する際の画質及び符号化効率を向上させることが可能となる。
【0084】
(プログラム)
上述した符号化装置1及び復号装置2として機能させるために、それぞれプログラム命令を実行可能なコンピュータを用いることも可能である。ここで、コンピュータは、汎用コンピュータ、専用コンピュータ、ワークステーション、PC(Personal Computer)、電子ノートパッドなどであってもよい。プログラム命令は、必要なタスクを実行するためのプログラムコード、コードセグメントなどであってもよい。
【0085】
コンピュータは、プロセッサと、記憶部と、入力部と、出力部と、通信インターフェースとを備える。プロセッサは、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、SoC(System on a Chip)などであり、同種又は異種の複数のプロセッサにより構成されてもよい。プロセッサは、記憶部からプログラムを読み出して実行することで、上記各構成の制御及び各種の演算処理を行う。なお、これらの処理内容の少なくとも一部をハードウェアで実現することとしてもよい。入力部は、ユーザの入力操作を受け付けてユーザの操作に基づく情報を取得する入力インターフェースであり、ポインティングデバイス、キーボード、マウスなどである。出力部は、情報を出力する出力インターフェースであり、ディスプレイ、スピーカなどである。通信インターフェースは、外部の装置と通信するためのインターフェースであり、例えばLAN(Local Area Network)インターフェースである。
【0086】
プログラムは、コンピュータが読み取り可能な記録媒体に記録されていてもよい。このような記録媒体を用いれば、プログラムをコンピュータにインストールすることが可能である。ここで、プログラムが記録された記録媒体は、非一過性(non-transitory)の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROM、DVD-ROM、USB(Universal Serial Bus)メモリなどであってもよい。また、このプログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0087】
例えば、コンピュータを上記の符号化装置1として機能させるためのプログラムは、映像フレームに割り当てられたビットレートと第1RD曲線のパラメータとを用いて、コスト関数を最小化する第1ラグランジュ乗数及びブロックレートrを算出するステップと、ブロックレートrと第2RD曲線のパラメータとから算出される第2ラグランジュ乗数を用いて、コスト関数を最小化する符号化モードを決定するステップと、第2ラグランジュ乗数に基づいて、ブロックごとの量子化パラメータQPを算出するステップと、をコンピュータに実行させ、第1RD曲線は、対数関数又は指数関数を用いて近似される。
【0088】
また、コンピュータを上記の復号装置2として機能させるためのプログラムは、符号化装置1から、量子化パラメータ算出部102によって算出された量子化パラメータQPを取得するステップと、該量子化パラメータQPを用いて、符号化装置1により符号化されたデータを復号するステップと、をコンピュータに実行させる。
【0089】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形又は変更が可能である。例えば、実施形態の構成図に記載の複数の構成ブロックを統合したり、1つの構成ブロックを分割したりすることが可能である。
【符号の説明】
【0090】
1 符号化装置
2 復号装置
10 レート制御部
11 ブロック分割部
12 減算部
13 変換部
14 量子化部
15 逆量子化部
16 逆変換部
17 加算部
18 記憶部
19 予測部
20 エントロピー符号化部
21 符号化データ記憶・出力部
31 エントロピー復号部
32 逆量子化部
33 逆変換部
34 加算部
35 記憶部
36 予測部
101 ビット割当部
102 量子化パラメータ算出部
103 RD最適化部
図1
図2
図3
図4