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

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

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

<>
  • 特許-画像復号装置及びプログラム 図1
  • 特許-画像復号装置及びプログラム 図2
  • 特許-画像復号装置及びプログラム 図3
  • 特許-画像復号装置及びプログラム 図4
  • 特許-画像復号装置及びプログラム 図5
  • 特許-画像復号装置及びプログラム 図6
  • 特許-画像復号装置及びプログラム 図7
  • 特許-画像復号装置及びプログラム 図8
  • 特許-画像復号装置及びプログラム 図9
  • 特許-画像復号装置及びプログラム 図10
  • 特許-画像復号装置及びプログラム 図11
  • 特許-画像復号装置及びプログラム 図12
  • 特許-画像復号装置及びプログラム 図13
  • 特許-画像復号装置及びプログラム 図14
  • 特許-画像復号装置及びプログラム 図15
  • 特許-画像復号装置及びプログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-20
(45)【発行日】2022-06-28
(54)【発明の名称】画像復号装置及びプログラム
(51)【国際特許分類】
   H04N 19/105 20140101AFI20220621BHJP
   H04N 19/136 20140101ALI20220621BHJP
   H04N 19/176 20140101ALI20220621BHJP
   H04N 19/577 20140101ALI20220621BHJP
【FI】
H04N19/105
H04N19/136
H04N19/176
H04N19/577
【請求項の数】 2
(21)【出願番号】P 2021078043
(22)【出願日】2021-04-30
(62)【分割の表示】P 2020509369の分割
【原出願日】2019-03-29
(65)【公開番号】P2021119705
(43)【公開日】2021-08-12
【審査請求日】2021-04-30
(31)【優先権主張番号】P 2018065880
(32)【優先日】2018-03-29
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】キュリーズ特許業務法人
(72)【発明者】
【氏名】岩村 俊輔
(72)【発明者】
【氏名】市ヶ谷 敦郎
(72)【発明者】
【氏名】根本 慎平
【審査官】岩井 健二
(56)【参考文献】
【文献】特開2000-059785(JP,A)
【文献】国際公開第2011/080807(WO,A1)
【文献】国際公開第2011/080806(WO,A1)
【文献】国際公開第2010/010942(WO,A1)
【文献】Shunsuke Iwamura, et al.,Description of SDR and HDR video coding technology proposal by NHK and SHARP,Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-J0027_v1,10th Meeting: San Diego, US,2018年04月,pp.i,1-10
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
符号化データからブロック単位の対象画像を復号する画像復号装置であって、
複数の参照画像を用いて双予測を行うことにより、前記対象画像のブロックに対応する予測画像のブロックを生成するインター予測部と、
前記複数の参照画像間の類似度を示す評価値を、前記ブロックよりも小さい単位であって複数の画素からなる小ブロックごとに算出する評価部と、
前記符号化データを復号して、前記対象画像に対応する予測残差を取得する取得部と、
前記取得された予測残差を前記予測画像のブロックと合成して前記対象画像のブロックを再構成する合成部と、を備え、
前記評価部が算出する前記評価値は、前記合成部の合成対象を前記小ブロック単位で補正するために用いられる、画像復号装置。
【請求項2】
コンピュータを請求項1に記載の画像復号装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像符号化装置、画像復号装置、及びプログラムに関する。
【背景技術】
【0002】
従来、対象画像(画像ブロック)を符号化する符号化装置において、複数の参照画像を用いて動き補償予測を行い、対象画像に対応する予測画像を生成し、当該対象画像と予測画像との間の画素単位での差分を示す予測残差に対して直交変換を行って変換係数を生成し、当該変換係数を量子化し、量子化された変換係数に対してエントロピー符号化を行う方法が知られている。複数の参照画像を用いる動き補償予測においては、複数の参照画像を平均化することにより予測画像を生成することが一般的である。
【0003】
エントロピー符号化は、2次元に配列された変換係数を所定のスキャン順で読み出して1次元の変換係数列に変換するシリアライズという処理を含み、1次元の変換係数列の先頭の変換係数から順に符号化する。一般的に、直交変換により低域に電力が集中し、高域において電力(変換係数の値)がゼロになるため、低域から高域のスキャン順に変換係数を読み出し、最後の有意係数(非ゼロ係数)に対して終了フラグを付与することにより、有意係数のみを効率的に符号化している(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0004】
【文献】Recommendation ITU-T H.265,(12/2016), “High efficiency video coding”, International Telecommunication Union
【発明の概要】
【0005】
しかしながら、HEVC(非特許文献1参照)では、直交変換処理を行うモードのほか、直交変換処理を行わない変換スキップモードを適用可能である。変換スキップモードを適用する場合、予測残差に対する直交変換を行わないため、低域に電力が集中することを期待できない。よって、変換スキップモードにおいて、直交変換を行うモードと同じ方法でエントロピー符号化を行うと、効率的なエントロピー符号化を行うことができず、符号化効率が低下するという問題があった。
【0006】
そこで、本発明は、複数の参照画像を用いて動き補償予測を行う場合において符号化効率を改善可能な画像符号化装置、画像復号装置、及びプログラムを提供することを目的とする。
【0007】
本発明に係る画像復号装置は、符号化データからブロック単位の対象画像を復号する画像復号装置であって、複数の参照画像を用いて双予測を行うことにより、前記対象画像のブロックに対応する予測画像のブロックを生成するインター予測部と、前記複数の参照画像間の類似度を示す評価値を、前記ブロックよりも小さい単位であって複数の画素からなる小ブロックごとに算出する評価部と、前記符号化データを復号して、前記対象画像に対応する予測残差を取得する取得部と、前記取得された予測残差を前記予測画像のブロックと合成して前記対象画像のブロックを再構成する合成部と、を備え、前記評価部が算出する前記評価値は、前記合成部の合成対象を前記小ブロック単位で補正するために用いられることを要旨とする。第1の特徴に係る画像符号化装置は、入力画像を分割して得られたブロック単位の対象画像を符号化する。前記画像符号化装置は、前記対象画像の直交変換処理をスキップする変換スキップモードにおいて、複数の参照画像を用いて動き補償予測を行うことにより、前記対象画像に対応する予測画像を生成する動き補償予測部と、前記複数の参照画像間の類似度を画素単位で評価する評価部と、前記対象画像と前記予測画像との間の差分を示す予測残差を画素単位で算出する減算部と、前記評価部による評価結果に基づいて前記予測残差を並び替える並び替え部と、前記並び替え部による並び替え後の前記予測残差を符号化する符号化部と、を備える。
【0008】
第2の特徴に係る画像復号装置は、符号化データからブロック単位の対象画像を復号する。前記画像復号装置は、前記対象画像の直交変換処理をスキップする変換スキップモードにおいて、複数の参照画像を用いて動き補償予測を行うことにより、前記対象画像に対応する予測画像を生成する動き補償予測部と、前記複数の参照画像間の類似度を画素単位で評価する評価部と、前記符号化データを復号して、前記対象画像と前記予測画像との間の差分を示す予測残差を画素単位で取得する復号部と、前記評価部による評価結果に基づいて前記予測残差を並び替える並び替え部と、を備える。
【0009】
第3の特徴に係るプログラムは、コンピュータを第1の特徴に係る画像符号化装置として機能させるためのプログラムである。
【0010】
第4の特徴に係るプログラムは、コンピュータを第2の特徴に係る画像復号装置として機能させるためのプログラムである。
【0011】
本発明によれば、複数の参照画像を用いて動き補償予測を行う場合において符号化効率を改善可能な画像符号化装置、画像復号装置、及びプログラムを提供できる。
【図面の簡単な説明】
【0012】
図1】実施形態に係る画像符号化装置の構成を示す図である。
図2】実施形態に係る画像復号装置の構成を示す図である。
図3】実施形態に係る動き補償予測の一例を示す図である。
図4】実施形態に係る動き補償予測により生成される予測画像の一例を示す図である。
図5】実施形態に係る評価部の構成の一例を示す図である。
図6】実施形態に係るエントロピー符号化部の構成の一例を示す図である。
図7】実施形態に係る確度インデックスの生成例を示す図である。
図8】実施形態に係る予測残差の並び替えの一例を示す図である。
図9】実施形態に係るエントロピー符号復号部の構成の一例を示す図である。
図10】実施形態に係る画像符号化装置における処理フローを示す図である。
図11】実施形態に係る画像復号装置における処理フローを示す図である。
図12】実施形態の変更例1に係る重複動き補償の一例を示す図である。
図13】実施形態の変更例3に係る画像符号化装置の構成を示す図である。
図14】実施形態の変更例3に係る並び替え部の動作の一例を示す図である。
図15】実施形態の変更例3に係る画像復号装置の構成を示す図である。
図16】実施形態の変更例4に係る並び替え部の動作の一例を示す図である。
【発明を実施するための形態】
【0013】
以下、図1から図15を参照して、実施形態に係る画像符号化装置及び画像復号装置について説明する。実施形態に係る画像符号化装置及び画像復号装置は、MPEG(Moving Picture Experts Group)に代表される動画の符号化及び復号を行う。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【0014】
<1.画像符号化装置の構成>
図1は、実施形態に係る画像符号化装置1Aの構成を示す図である。図1に示すように、画像符号化装置1Aは、ブロック分割部100と、減算部101と、変換部102aと、量子化部102bと、エントロピー符号化部103Aと、逆量子化部104aと、逆変換部104bと、合成部105と、イントラ予測部106と、ループフィルタ107と、フレームメモリ108と、動き補償予測部109と、切替部110と、評価部111とを備える。
【0015】
ブロック分割部100は、フレーム(或いはピクチャ)単位の入力画像をブロック状の小領域に分割し、画像ブロックを減算部101(及び動き補償予測部109)に出力する。画像ブロックのサイズは、例えば32×32画素、16×16画素、8×8画素、又は4×4画素等である。但し、画像ブロックの形状は正方形に限定されるものではなく、長方形の形状であってもよい。画像ブロックは、画像符号化装置1Aが符号化を行う単位及び画像復号装置2A(図2参照)が復号を行う単位であり、かかる画像ブロックを対象画像ブロックと称する。かかる画像ブロックは、符号化ユニット(CU:Coding Unit)や符号化ブロック(CB:Coding Block)と称されてもよい。
【0016】
減算部101は、ブロック分割部100から入力された対象画像ブロックと対象画像ブロックに対応する予測画像(予測画像ブロック)との間の画素単位での差分を示す予測残差を算出する。具体的には、減算部101は、対象画像ブロックの各画素値から予測画像の各画素値を減算することにより予測残差を算出し、算出した予測残差を変換部102aに出力する。なお、予測画像は、後述するイントラ予測部106又は動き補償予測部109から切替部110を介して減算部101に入力される。
【0017】
変換部102a及び量子化部102bは、ブロック単位で直交変換処理及び量子化処理を行う変換・量子化部102を構成する。
【0018】
変換部102aは、減算部101から入力された予測残差に対して直交変換を行って周波数成分ごとに変換係数を算出し、算出した変換係数を量子化部102bに出力する。直交変換とは、例えば、離散コサイン変換(DCT:Discrete Cosine Transform)や離散サイン変換(DST:Discrete Sine Transform)、カルーネンレーブ変換(KLT: Karhunen Loeve Transform)等をいう。直交変換は画素領域の残差信号を周波数領域に変換する処理である。直交変換は、一般的に直交変換により低域に電力が集中する。
【0019】
量子化部102bは、変換部102aから入力された変換係数を量子化パラメータ(Qp)及び量子化行列を用いて量子化し、量子化された変換係数(量子化変換係数)を生成する。量子化パラメータ(Qp)は、ブロック内の各変換係数に対して共通して適用されるパラメータであって、量子化の粗さを定めるパラメータである。量子化行列は、各変換係数を量子化する際の量子化値を要素として有する行列である。量子化部102bは、生成した量子化変換係数をエントロピー符号化部103A及び逆量子化部104bに出力する。
【0020】
エントロピー符号化部103Aは、量子化部102bから入力された量子化変換係数に対してエントロピー符号化を行い、データ圧縮を行って符号化データ(ビットストリーム)を生成し、符号化データを画像符号化装置1Aの外部に出力する。エントロピー符号化には、ハフマン符号やCABAC(Context-based Adaptive Binary Arithmetic Coding;コンテキスト適応型2値算術符号)等を用いることができる。エントロピー符号化は、2次元に配列された変換係数を所定のスキャン順で読み出して1次元の変換係数列に変換するシリアライズという処理を含み、1次元の変換係数列の先頭の変換係数から順に符号化する。一般的に、直交変換により低域に電力が集中し、高域において電力(変換係数の値)がゼロになるため、低域から高域のスキャン順に変換係数を読み出し、最後の有意係数に対して終了フラグを付与することにより、有意係数のみを効率的に符号化している。
【0021】
なお、エントロピー符号化部103Aには、イントラ予測部106及び動き補償予測部109から予測に関する情報が入力され、ループフィルタ107からフィルタ処理に関する情報が入力される。エントロピー符号化部103Aは、これらの情報のエントロピー符号化も行う。また、エントロピー符号化部103Aは、対象画像ブロックに変換スキップモードが適用される場合、その旨のフラグ(変換スキップフラグ)を符号化データに含める。
【0022】
逆量子化部104a及び逆変換部104bは、ブロック単位で逆量子化処理及び逆直交変換処理を行う逆量子化・逆変換部104を構成する。
【0023】
逆量子化部104aは、量子化部102bが行う量子化処理に対応する逆量子化処理を行う。具体的には、逆量子化部104aは、量子化部102bから入力された量子化変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより、変換係数を復元し、復元した変換係数を逆変換部104bに出力する。
【0024】
逆変換部104bは、変換部102aが行う直交変換処理に対応する逆直交変換処理を行う。例えば、変換部102aが離散コサイン変換を行った場合には、逆変換部104bは逆離散コサイン変換を行う。逆変換部104bは、逆量子化部104aから入力された変換係数に対して逆直交変換を行って予測残差を復元し、復元した予測残差である復元予測残差を合成部105に出力する。
【0025】
合成部105は、逆変換部104bから入力された復元予測残差を切替部110から入力された予測画像と画素単位で合成する。合成部105は、復元予測残差の各画素値と予測画像の各画素値を加算して対象画像ブロックを再構成し、再構成した対象画像ブロックである再構成画像をイントラ予測部106及びループフィルタ107に出力する。
【0026】
イントラ予測部106は、合成部105から入力された再構成画像を用いてイントラ予測を行ってイントラ予測画像を生成し、イントラ予測画像を切替部110に出力する。また、イントラ予測部106は、選択したイントラ予測モードの情報等をエントロピー符号化部103Aに出力する。
【0027】
ループフィルタ107は、合成部105から入力された再構成画像に対して、後処理としてのフィルタ処理を行い、フィルタ処理後の再構成画像をフレームメモリ108に出力する。また、ループフィルタ107は、フィルタ処理に関する情報をエントロピー符号化部103Aに出力する。フィルタ処理には、デブロッキングフィルタ処理とサンプルアダプティブオフセット処理とが含まれる。
【0028】
フレームメモリ108は、ループフィルタ107から入力された再構成画像をフレーム単位で記憶する。
【0029】
動き補償予測部109は、フレームメモリ108に記憶された1又は複数の再構成画像を参照画像として用いるインター予測を行う。具体的には、動き補償予測部109は、ブロックマッチングなどの手法により動きベクトルを算出し、動きベクトルに基づいて動き補償予測画像を生成し、動き補償予測画像を切替部110に出力する。また、動き補償予測部109は、動きベクトルに関する情報をエントロピー符号化部103Aに出力する。
【0030】
切替部110は、イントラ予測部106から入力されたイントラ予測画像と、動き補償予測部109から入力された動き補償予測画像とを切替えて、予測画像(イントラ予測画像又は動き補償予測画像)を減算部101及び合成部105に出力する。
【0031】
一方、変換スキップモードにおいて、ブロック分割部100が出力する対象画像ブロックは、減算部101において予測残差に変換された後、直交変換されずに量子化される。具体的には、減算部101が出力する予測残差は、変換部102aにおける直交変換をスキップして、量子化部102bに入力される。量子化部102bは、直交変換をスキップする対象画像ブロック(以下、「変換スキップブロック」という)について予測残差を量子化し、量子化された予測残差をエントロピー符号化部103A及び逆量子化部104bに出力する。
【0032】
変換スキップブロックについて、エントロピー符号化部103Aは、量子化部102bから入力された量子化予測残差に対してエントロピー符号化を行い、データ圧縮を行って符号化データ(ビットストリーム)を生成し、符号化データを画像符号化装置1Aの外部に出力する。この場合、エントロピー符号化は、シリアライズにより、2次元に配列された予測残差値を所定のスキャン順で読み出して1次元の予測残差列に変換する。
【0033】
変換スキップブロックについて、逆量子化部104aは、量子化部102bが行う量子化処理に対応する逆量子化処理を行う。変換スキップブロックについて、逆変換部104bは、逆直交変換処理をスキップする。よって、逆量子化部104aが復元した予測残差は、逆直交変換処理を経ることなく合成部105に入力される。
【0034】
評価部111は、変換スキップブロックについて、動き補償予測部109が複数の参照画像を用いて動き補償予測を行う場合において、複数の参照画像間の類似度を画素単位で評価し、評価結果の情報をエントロピー符号化部103Aに出力する。エントロピー符号化部103Aは、変換スキップブロックについて、評価部111による評価の結果に基づいて、量子化部102bから入力された予測残差を、参照画像間の類似度の低い画素位置から順に符号化する。評価部111及びエントロピー符号化部103Aの詳細については後述する。
【0035】
<2.画像復号装置の構成>
図2は、実施形態に係る画像復号装置2Aの構成を示す図である。図2に示すように、画像復号装置2Aは、エントロピー符号復号部200Aと、逆量子化部201aと、逆変換部201bと、合成部202と、イントラ予測部203と、ループフィルタ204と、フレームメモリ205と、動き補償予測部206と、切替部207と、評価部208とを備える。
【0036】
エントロピー符号復号部200Aは、符号化装置1により生成された符号化データを復号し、量子化変換係数を逆量子化部201aに出力する。また、エントロピー符号復号部200Aは、符号化データを復号し、予測(イントラ予測及び動き補償予測)に関する情報とフィルタ処理に関する情報とを取得する。エントロピー符号復号部200Aは、予測に関する情報をイントラ予測部203及び動き補償予測部206に出力し、フィルタ処理に関する情報をループフィルタ204に出力する。
【0037】
逆量子化部201a及び逆変換部201bは、ブロック単位で逆量子化処理及び逆直交変換処理を行う逆量子化・逆変換部201を構成する。
【0038】
逆量子化部201aは、画像符号化装置1Aの量子化部102bが行う量子化処理に対応する逆量子化処理を行う。逆量子化部201aは、エントロピー符号復号部200Aから入力された量子化変換係数を、量子化パラメータ(Qp)及び量子化行列を用いて逆量子化することにより、変換係数を復元し、復元した変換係数を逆変換部201bに出力する。
【0039】
逆変換部201bは、画像符号化装置1Aの変換部102aが行う直交変換処理に対応する逆直交変換処理を行う。逆変換部104bは、逆量子化部104aから入力された変換係数に対して逆直交変換を行って予測残差を復元し、復元した予測残差である復元予測残差を合成部202に出力する。
【0040】
合成部202は、逆変換部201bから入力された予測残差と、切替部207から入力された予測画像とを画素単位で合成することにより、元の対象画像ブロックを再構成し、再構成画像をイントラ予測部203及びループフィルタ204に出力する。
【0041】
イントラ予測部203は、合成部202から入力された再構成画像を参照し、エントロピー符号復号部200Aから入力されたイントラ予測情報に従ってイントラ予測を行うことによりイントラ予測画像を生成し、イントラ予測画像を切替部207に出力する。
【0042】
ループフィルタ204は、エントロピー符号復号部200Aから入力されたフィルタ処理情報に基づいて、合成部202から入力された再構成画像に対して、画像符号化装置1Aのループフィルタ107が行うフィルタ処理と同様なフィルタ処理を行い、フィルタ処理後の再構成画像をフレームメモリ205に出力する。
【0043】
フレームメモリ205は、ループフィルタ204から入力された再構成画像をフレーム単位で記憶する。フレームメモリ205は、記憶した再構成画像を画像復号装置2Aの外部に出力する。
【0044】
動き補償予測部206は、フレームメモリ205に記憶された1又は複数の再構成画像を参照画像として用いて、エントロピー符号復号部200Aから入力された動きベクトル情報に従って動き補償予測(インター予測)を行うことにより、動き補償予測画像を生成し、動き補償予測画像を切替部207に出力する。
【0045】
切替部207は、イントラ予測部203から入力されたイントラ予測画像と、動き補償予測部206から入力された動き補償予測画像とを切替えて、予測画像(イントラ予測画像又は動き補償予測画像)を合成部202に出力する。
【0046】
一方、変換スキップブロックについて、エントロピー符号復号部200Aは、符号化装置1により生成された符号化データを復号し、量子化予測残差を逆量子化部201aに出力する。
【0047】
変換スキップブロックについて、逆量子化部201aは、画像符号化装置1Aの量子化部102bが行う量子化処理に対応する逆量子化処理を行う。変換スキップブロックについて、逆変換部201bは、逆直交変換処理をスキップする。よって、逆量子化部201aが復元した予測残差は、逆直交変換処理を経ることなく合成部202に入力される。
【0048】
評価部208は、画像符号化装置1Aの評価部111と同様な動作を行う。具体的には、評価部208は、変換スキップブロックについて、動き補償予測部206が複数の参照画像を用いて動き補償予測を行う場合において、複数の参照画像間の類似度を画素単位で評価し、評価結果の情報をエントロピー符号復号部200Aに出力する。エントロピー符号復号部200Aは、変換スキップブロックについて、符号化データを復号して画素単位で予測残差を取得する。エントロピー符号復号部200Aは、評価部208による評価の結果に基づいて予測残差を元の並び順に並べ替えて出力する。評価部208及びエントロピー符号復号部200Aの詳細については後述する。
【0049】
<3.動き補償予測>
図3は、動き補償予測の一例を示す図である。図4は、動き補償予測により生成される予測画像の一例を示す図である。動き補償予測のシンプルな例として、HEVCで用いられている双予測、特に前方向と後方向予測(両方向予測)を用いる場合について説明する。
【0050】
図3に示すように、動き補償予測は、対象フレーム(現フレーム)に対して時間的に前及び後のフレームを参照する。図3の例では、tフレーム目の画像中のブロックの動き補償予測を、t-1フレーム目とt+1フレーム目とを参照して行う。動き補償は、t-1及びt+1フレーム目の参照フレーム内から、対象画像ブロックと類似する箇所(ブロック)をシステムで設定された探索範囲の中から検出する。
【0051】
検出された箇所が参照画像である。対象画像ブロックに対する参照画像の相対位置を示す情報が図中に示す矢印であり、動きベクトルと呼ばれる。動きベクトルの情報は、画像符号化装置1Aにおいて、参照画像のフレーム情報とともにエントロピー符号化によって符号化される。一方、画像復号装置2Aは、画像符号化装置1Aにより生成された動きベクトルの情報に基づいて参照画像を検出する。
【0052】
図3及び図4に示すように、動き補償によって検出された参照画像1及び2は、対象画像ブロックに対し、参照するフレーム内で位置合わせされた類似する部分画像であるため、対象画像ブロック(符号化対象画像)に類似した画像となる。図4の例では、対象画像ブロックは、星の絵柄と部分的な円の絵柄とを含んでいる。参照画像1は、星の絵柄と全体的な円の絵柄とを含んでいる。参照画像2は、星の絵柄を含むが、円の絵柄を含んでいない。
【0053】
かかる参照画像1及び2から予測画像を生成する。予測処理は処理負荷の高い処理であるため、参照画像1及び2を平均化することによって予測画像を生成することが一般的である。但し、より高度な処理、例えば、ローパスフィルタやハイパスフィルタ等による信号強調処理を併用して予測画像を生成してもよい。ここで、参照画像1は円の絵柄を含み、参照画像2は円の絵柄を含まないため、参照画像1及び2を平均化して予測画像を生成すると、予測画像における円の絵柄は、参照画像1に比べて信号が半減している。
【0054】
参照画像1及び2から得られた予測画像と対象画像ブロック(符号化対象画像)との差分が予測残差である。図4に示す予測残差において、星の絵柄のエッジのずれ部分と丸の絵柄のずれた部分(斜線部)とにのみ大きな差分が生じているが、それ以外の部分については、精度よく予測が行えており、差分が生じていない。
【0055】
差分が生じていない部分(星の絵柄の非エッジ部分及び背景部分)は、参照画像1と参照画像2との間の類似度が高い部分であって、高精度な予測が行われた部分である。一方、大きな差分が生じている部分は、各参照画像に特有な部分、すなわち、参照画像1と参照画像2との間の類似度が著しく低い部分である。よって、参照画像1と参照画像2との間の類似度が著しく低い部分は、予測の精度が低く、大きな差分(予測残差)を生じさせることが分かる。
【0056】
また、変換スキップモードを適用する場合、対象画像ブロック(変換スキップブロック)に対する直交変換を行わないため、低域に電力が集中することを期待できない。よって、変換スキップモードにおいて、直交変換を行うモードと同じ方法でエントロピー符号化を行うと、効率的なエントロピー符号化を行うことができず、符号化効率が低下する。
【0057】
実施形態において、評価部111は、変換スキップブロックについて、複数の参照画像間の類似度を画素単位で評価し、評価結果の情報をエントロピー符号化部103Aに出力する。エントロピー符号化部103Aは、変換スキップブロックについて、評価部111による評価の結果に基づいて、量子化部102bから入力された予測残差を、参照画像間の類似度の低い画素位置から順に符号化する。
【0058】
ここで、変換スキップブロックについて、複数の参照画像間の類似度の低い画素位置は、大きな予測残差を有するとみなすことができる。一方、複数の参照画像間の類似度の高い画素位置は、予測残差がゼロになるとみなすことができる。よって、エントロピー符号化部103Aが参照画像間の類似度の低い画素位置から順に予測残差を符号化することにより、有意係数を優先的に符号化し、より早期に終了フラグを付与することができる。したがって、効率的なエントロピー符号化を行うことを可能とし、符号化効率を改善することができる。
【0059】
<4.評価部>
図5は、画像符号化装置1Aにおける評価部111の構成の一例を示す図である。図5に示すように、評価部111は、類似度算出部111aと、正規化部111bとを備える。
【0060】
類似度算出部111aは、動き補償予測部109から入力された参照画像1及び2の類似度を画素単位で(画素位置ごとに)算出し、算出した類似度を正規化部111bに出力する。類似度としては例えば差分値を用いることができる。差分値が小さいほど類似度が高く、差分値が大きいほど類似度が低いといえる。類似度算出部111aは、各参照画像に対してフィルタ処理を行ったうえで差分値を算出してもよい。類似度算出部111aは、二乗誤差等の統計量を算出し、かかる統計量を類似度として用いてもよい。以下においては、類似度として差分値を用いる一例について説明する。
【0061】
正規化部111bは、類似度算出部111aから入力された差分値を、ブロック内で差分値が最大となる差分値(すなわち、ブロック内の差分値の最大値)で正規化して出力する。正規化された差分値は、エントロピー符号化部103Aにおいて符号化順を決定するための重要度として用いられる。差分値が小さいほど類似度が高く、予測精度も高くなるため、符号化における重要度が低い。一方、差分値が大きいほど類似度が低く、予測精度も低くなるため、符号化における重要度が高い。このため、エントロピー符号化部103Aは、重要度が高い画素位置の予測残差を優先的に符号化する。
【0062】
正規化部111bは、量子化の粗さを定める量子化パラメータ(Qp)と、変換係数ごとに異なる量子化値が適用される量子化行列との少なくとも一方に基づいて、正規化部111bから入力された正規化差分値(重要度)を調整して出力してもよい。
【0063】
評価部111が出力する各周波数成分(ij)の重要度Rijは、例えば下記の式(1)のように表現することができる。
【0064】
Rij = (abs(Xij-Yij)/maxD × Scale(Qp)) ・・・(1)
【0065】
式(1)において、Xijは参照画像1の画素位置ijの画素値であり、Yijは参照画像2の画素位置ijの画素値であり、absは絶対値を得る関数である。類似度算出部111aは、abs(Xij-Yij)を出力する。
【0066】
また、式(1)において、maxDは、ブロック内の差分値abs(Xij-Yij)の最大値である。maxDを求めるためにブロック内のすべての画素位置について差分値を求める必要があるが、この処理を省略するためにすでに符号化処理済みの隣接するブロックの最大値で代用してもよい。或いは、量子化パラメータ(Qp)や量子化行列の量子化値と、maxDとの対応関係を定めるテーブルを用いて、量子化パラメータ(Qp)や量子化行列の量子化値からmaxDを求めてもよい。或いは、予め仕様で規定された固定値をmaxDとして用いてもよい。正規化部111bは、abs(Xij-Yij)/maxDを出力する。
【0067】
また、式(1)において、Scale(Qp)は、量子化パラメータ(Qp)や量子化行列の量子化値に応じて乗じられる係数である。Scale(Qp)は、Qpや量子化行列の量子化値が大きい場合に1.0に近づき、小さい場合に0に近づくように設計され、その度合いはシステムによって調整するものとする。或いは、予め仕様で規定された固定値をScale(Qp)として用いてもよい。正規化部111bは、abs(Xij-Yij)/maxD×Scale(Qp)を重要度Rijとして出力する。
【0068】
このようにして算出された重要度Rijは、0から1.0までの範囲内の値となる。基本的には、重要度Rijは、画素位置ijの差分値が大きい(すなわち、予測精度が低い)場合に1.0に近づき、小さい(すなわち、予測精度が高い)場合に0に近づく。但し、maxDやScale(Qp)として固定値等の代用値を用いる場合には、重要度Rijが1.0を超える、あるいは0を下回る場合も存在しうるが、その場合は、1.0や0にクリップ処理すればよい。評価部111は、ブロック内の各画素位置ijの重要度Rijからなるマップ情報をエントロピー符号化部103Aに出力する。
【0069】
或いは、評価部111は、Rijを下記の式(2)のように算出してもよい。
【0070】
Rij = 1 - (abs(Xij-Yij)/maxD × Scale(Qp)) ・・・(2)
【0071】
式(2)を用いる場合、Rijは、画素位置ijの差分値が大きい(すなわち、予測精度が低い)場合に0に近づき、小さい(すなわち、予測精度が高い)場合に1に近づく。よって、Rijは、画素位置ijの予測精度(確度)を表す値とみなすことができる。以下においては、評価部111が式(2)を用いてブロック内の各画素位置ijの確度Rijからなるマップ情報を出力する一例を説明し、かかるマップ情報を適宜「確度マップ」と称する。
【0072】
なお、評価部111は、変換スキップブロックについて、複数の参照画像を用いる動き補償予測を適用する場合にのみ評価(確度Rijの算出)を行い、それ以外のモード、例えば単方向予測やイントラ予測処理においては、評価(確度Rijの算出)を行わなくてもよい。
【0073】
また、画像復号装置2Aにおける評価部208は、画像符号化装置1Aにおける評価部111と同様に構成される。具体的には、画像復号装置2Aにおける評価部208は、類似度算出部208aと、正規化部208bとを備える。画像復号装置2Aにおける評価部208は、ブロック内の各画素位置ijの確度Rijからなる確度マップをエントロピー符号復号部200Aに出力する。
【0074】
<5.エントロピー符号化部>
図6は、エントロピー符号化部103Aの構成の一例を示す図である。図7は、確度インデックスの生成例を示す図である。図8は、予測残差の並び替えの一例を示す図である。
【0075】
図6に示すように、エントロピー符号化部103Aは、ソート部103aと、並び替え部103bと、符号化部103cとを備える。
【0076】
ソート部103aは、評価部111から入力された確度マップ中の確度Rijを低い順に並べ替える。具体的には、図7(A)に示すように、確度マップにおいて確度Rijは2次元に配列されているため、ソート部103aは、例えば確度マップをジグザグスキャン(左上から右下のスキャン順)によりシリアライズして確度列とする。そして、ソート部103aは、図7(B)に示すように、確度Rijが低い順に並び替え、確度Rijをインデックスiとして、インデックスiと画素位置(X座標の位置及びY座標の位置)とを対応付けた確度インデックス情報を並び替え部103bに出力する。
【0077】
なお、図7(A)の例において、画素位置(x,y)=(2,2)における確度が最も低く、画素位置(x,y)=(2,3)における確度が2番目に低く、画素位置(x,y)=(3,2)における確度が3番目に低く、画素位置(x,y)=(3,3)における確度が4番目に低い。かかる画素位置からなる領域は、予測精度が低く、大きな予測残差を発生させると推定することができる。一方、確度が1である画素位置については、予測精度が高く、予測残差を発生させないと推定することができる。
【0078】
並び替え部103bは、変換スキップブロックについて、量子化部102bから入力された予測残差を、ソート部103aから入力された確度インデックス情報に基づいて並び替える。具体的には、並び替え部103bは、確度の低い画素位置(すなわち、参照画像間の類似度の低い画素位置)から順に予測残差が符号化されるように、予測残差を画素単位で並び替える。
【0079】
図8(A)に示す予測残差は2次元に配列されている。並び替え部103bは、図8(B)に示すように、ソート部103aから入力された確度インデックス情報に基づいて、確度が低い画素位置の予測残差を左上領域に集中させるように並び替える。ここではスキャン順としてジグザグスキャン(対角スキャン)を想定しており、並び替え部103bは、左上領域から右下領域の順にスキャンを行い、確度が低い画素位置の予測残差を優先的にシリアライズして、確度が低い(すなわち、参照画像間の類似度が低い)順に予測残差が並ぶ予測残差列を符号化部103cに出力する。但し、スキャン順はジグザグスキャンに限定されず、水平スキャンや垂直スキャンを用いてもよい。また、並び替え部103bは、スキャンを行う前に並び替えを行うのではなく、スキャンを行った後に並び替えを行ってもよい。
【0080】
或いは、並び替え部103bは、ジグザグスキャンや、水平スキャン、垂直スキャン等の固定的なスキャン順に代えて、確度が低い画素位置から順に予測残差をスキャンするように可変のスキャン順を決定し、決定したスキャン順でスキャンを行うことにより、確度が低い順に予測残差が並ぶ予測残差列を符号化部103cに出力してもよい。
【0081】
符号化部103cは、並び替え部103bから入力された予測残差列中の予測残差を符号化して符号化データを出力する。符号化部103cは、並び替え部103bから入力された予測残差列に含まれる最後の有意係数を判定し、予測残差列の先頭から当該最後の有意係数までに対して符号化を行う。符号化部103cは、並び替え部103bから入力された予測残差列の先頭から順に有意係数であるか否かを判定し、最後の有意係数に対して終了フラグを付与し、終了フラグの後の予測残差(すなわち、ゼロ係数)を符号化しないことにより、有意係数を効率的に符号化する。
【0082】
例えば、符号化部103cは、図8(C)に示すように、シリアライズされた予測残差列のうち、最後の有意係数、すなわち、図8(B)の(X=1,Y=2)の座標位置を、last_sig_coeff_x及びy(終了フラグ)として符号化する。その後、符号化部103cは、最後の有意係数の位置(1,2)から、スキャン順の逆順、すなわち、(3,3)から(0,0)に向かう順に、有意係数が存在するか否かをsig_coeff_flagとして符号化する。sig_coeff_flagにおいて、有意係数が存在する座標位置を“1”で示し、有意係数が存在しない座標位置を“0”で示す。さらに、符号化部103cは、有意係数が1よりも大きいか否かをcoeff_abs_level_greater1_flagとして符号化し、有意係数が2よりも大きいか否かをcoeff_abs_level_greater2_flagとして符号化する。符号化部103cは、有意係数のうち2よりも大きいものについては、有意係数の絶対値から3を引いた値をcoeff_abs_level_remainingとして符号化するとともに、有意係数の正負を示すフラグをcoeff_sign_flagとして符号化する。
【0083】
かかるエントロピー符号化において、最後の有意係数の位置が右下領域(スキャン順の後ろ)になればなるほど、last_sig_coeff_x及びyの値は大きくなり、かつ、Sig_coeff_flagの量が増大し、エントロピー符号化による発生情報量は増大する。しかしながら、確度の低い画素位置(すなわち、参照画像間の類似度の低い画素位置)から順に予測残差が符号化されるように並び替えを行うことにより、Last_sig_coeff_x及びyの値が小さくなり、かつ、Sig_coeff_flagの量が減少するため、エントロピー符号化による発生情報量を減少させることができる。
【0084】
なお、エントロピー符号化部103Aは、変換スキップブロックについて、複数の参照画像を用いる動き補償予測を適用する場合にのみ確度による並び替え処理を行う。それ以外のモード、例えば単方向予測やイントラ予測処理においては、エントロピー符号化部103Aは確度による並び替え処理を行わなくてもよい。
【0085】
<6.エントロピー符号復号部>
図9は、エントロピー符号復号部200Aの構成の一例を示す図である。図9に示すように、エントロピー符号復号部200Aは、復号部200aと、ソート部200bと、並び替え部200cとを備える。
【0086】
復号部200aは、画像符号化装置1Aにより生成された符号化データを復号し、予測残差列(量子化された予測残差)と、予測(イントラ予測及び動き補償予測)に関する情報とを取得し、予測残差列を並び替え部200cに出力し、予測に関する情報をイントラ予測部203及び動き補償予測部206に出力する。復号部200aは、符号化データから取得された変換スキップフラグが変換スキップ適用を示し、予測に関する情報が双予測を示す場合に、確度マップに基づく並び替えを行うと判断してもよい。
【0087】
ソート部200bは、評価部208から入力された確度マップ中の確度Rijを低い順に並べ替える。確度マップにおいて確度Rijは2次元に配列されているため、ソート部200bは、例えば確度マップをジグザグスキャンによりシリアライズして確度列とする。そして、ソート部200bは、確度Rijが低い順に並び替え、確度Rijをインデックスiとして、インデックスiと画素位置(X座標の位置及びY座標の位置)とを対応付けた確度インデックス情報を並び替え部103bに出力する。
【0088】
並び替え部200cは、画像符号化装置1Aの並び替え部103bが行う並び替え処理の逆処理を行う。並び替え部200cは、変換スキップブロックについて、復号部200aから入力された予測残差列を、ソート部200bから入力されたインデックスiと座標値(画素位置)とに基づいて並び替えることによりデシリアライズする。並び替え部200cは、2次元に配列された予測残差を逆量子化部201aに出力する。
【0089】
なお、エントロピー符号復号部200Aは、複数の参照画像を用いる動き補償予測を適用する場合にのみ確度による並び替え処理を行う。それ以外のモード、例えば単方向予測やイントラ予測処理においては、エントロピー符号復号部200Aは確度による並び替え処理を行わなくてもよい。
【0090】
<7.画像符号化の動作>
図10は、実施形態に係る画像符号化装置1Aにおける処理フローを示す図である。画像符号化装置1Aは、対象画像ブロックに対して変換スキップモードかつ動き補償予測を適用する場合に、本処理フローを実行する。
【0091】
図10に示すように、ステップS1101において、動き補償予測部109は、複数の参照画像を用いて動き補償予測を行うことにより対象画像ブロックを予測する。動き補償予測部109は、対象画像ブロックに対応する予測画像を生成する。
【0092】
ステップS1102において、評価部111は、複数の参照画像間の類似度を画素位置ごとに評価し、ブロック内の各画素位置の予測の確度(予測精度)を示す確度マップを生成する。
【0093】
ステップS1103において、減算部101は、対象画像ブロックと予測画像との間の画素単位での差分を示す予測残差を算出する。
【0094】
ステップS1104において、量子化部102bは、減算部101が算出した予測残差に対して量子化を行うことにより、量子化された予測残差を生成する。
【0095】
ステップS1105において、エントロピー符号化部103Aの並び替え部103bは、評価部111による評価の結果(確度マップ)に基づいて、量子化部102bから入力された予測残差を確度の低い順(すなわち、予測残差間の類似度の低い順)に並び替える。
【0096】
ステップS1106において、エントロピー符号化部103Aの符号化部103cは、確度の低い順に並び替えた予測残差をエントロピー符号化により符号化して符号化データを出力する。
【0097】
ステップS1107において、逆量子化部104bは、量子化部102bから入力された予測残差に対して逆量子化を行うことにより予測残差を復元し、復元予測残差を生成する。
【0098】
ステップS1108において、合成部105は、復元予測残差を画素単位で予測画像と合成することにより対象画像ブロックを再構成し、再構成画像を生成する。
【0099】
ステップS1109において、ループフィルタ107は、再構成画像に対してフィルタ処理を行う。
【0100】
ステップS1110において、フレームメモリ108は、フィルタ処理後の再構成画像をフレーム単位で記憶する。
【0101】
<8.画像復号の動作>
図11は、実施形態に係る画像復号装置2Aにおける処理フローを示す図である。画像復号装置2Aは、対象画像ブロックに対して変換スキップモードかつ動き補償予測を適用する場合に、本処理フローを実行する。
【0102】
図11に示すように、ステップS1201において、エントロピー符号復号部200Aの復号部200aは、符号化データを復号して動きベクトル情報を取得し、取得した動きベクトル情報を動き補償予測部206に出力する。
【0103】
ステップS1202において、動き補償予測部206は、動きベクトル情報に基づく複数の参照画像を用いて動き補償予測を行うことにより対象画像ブロックを予測し、対象画像ブロックに対応する予測画像を生成する。
【0104】
ステップS1203において、評価部208は、複数の参照画像間の類似度を画素位置ごとに算出し、ブロック内の各画素位置の予測の確度(予測精度)を示す確度マップを生成する。
【0105】
ステップS1204において、エントロピー符号復号部200Aの復号部200aは、符号化データを復号して予測残差列を取得する。エントロピー符号復号部200Aの並び替え部200cは、予測残差列を並び替えて、2次元に配列された予測残差を逆量子化部201aに出力する。
【0106】
ステップS1205において、逆量子化部201aは、予測残差(量子化された予測残差)に対して逆量子化を行うことにより予測残差を復元し、復元予測残差を生成する。
【0107】
ステップS1206において、合成部202は、復元予測残差を画素単位で予測画像と合成することにより対象画像ブロックを再構成し、再構成画像を生成する。
【0108】
ステップS1207において、ループフィルタ204は、再構成画像に対してフィルタ処理を行う。
【0109】
ステップS1208において、フレームメモリ205は、フィルタ処理後の再構成画像をフレーム単位で記憶して出力する。
【0110】
<9.実施形態のまとめ>
画像符号化装置1Aにおいて、評価部111は、複数の参照画像間の類似度を画素単位で評価し、評価結果の情報をエントロピー符号化部103Aに出力する。エントロピー符号化部103Aは、評価部111による評価の結果に基づいて、量子化部102bから入力された予測残差を、参照画像間の類似度の低い画素位置から順に符号化する。参照画像間の類似度の低い画素位置から順に予測残差を符号化することにより、有意係数を優先的に符号化し、より早期に終了フラグを付与することができる。よって、変換スキップブロックに対して効率的なエントロピー符号化を行うことを可能とし、符号化効率を改善することができる。
【0111】
画像復号装置2Aにおいて、評価部208は、複数の参照画像間の類似度を画素単位で評価し、評価結果の情報をエントロピー符号復号部200Aに出力する。エントロピー符号復号部200Aは、符号化データを復号して画素単位で予測残差を取得し、評価部208による評価の結果に基づいて予測残差を並べ替えて出力する。このように、評価部208による評価の結果に基づいて予測残差を並べ替えることにより、並び替えの詳細を指定する情報が画像符号化装置から伝送されなくても、エントロピー符号復号部200Aが自律的に予測残差を並べ替えることができる。よって、並び替えの詳細を指定する情報を画像復号装置1から伝送する必要がないため、符号化効率の低下を回避することができる。
【0112】
<10.変更例1>
画像符号化装置1Aの評価部111及び画像復号装置2Aの評価部208は、以下に示す方法で誤差マップを生成し、並べ替え部112に入力してもよい。誤差マップを並び換え部112に入力する場合には、誤差マップの値が大きい領域を類似度が低い領域とし、誤差マップの値が小さい領域を類似度が高い領域として、並べ替え部112は予測残差の並び換え処理を行う。
【0113】
双予測モードの予測画像の生成に用いる2つの参照画像(参照先ブロック)の輝度信号をL0[i,j]及びL1[i,j](但し、[i,j]は対象画像ブロック内の座標)とすると、下記の式(3)により誤差マップmap[i,j]及びその最大値max_mapを算出する。
【0114】
map [i,j] = abs (L0 [i,j] - L1 [i,j])
max_map = max (map [i,j])
・・・(3)
【0115】
式(3)のmax_mapが6ビット精度を超える(64を超える)場合には、下記の式(4)により、max_mapが6ビット精度に収まるように設定したshiftにより誤差マップ及び最大値を更新する。
【0116】
max_map = max_map >> shift
map [i,j] = map [i,j] >> shift ・・・(4)
【0117】
<11.変更例2>
画像符号化装置1Aの動き補償予測部109及び画像復号装置2Aの動き補償予測部208は、対象画像ブロック(CU)を複数の小ブロックに分割し、小ブロックごとに異なる動きベクトルを適用可能とし、小ブロックごとに片方向予測、双予測を切り替え可能であってもよい。かかる場合、片方向予測及び双方向予測の両方を用いて予測画像を生成するCUに対しては、画像符号化装置1Aの評価部111及び画像復号装置2Aの評価部208が確度マップを算出しないものとしてもよい。一方、全ての小ブロックについて双予測により予測画像を生成している場合には、画像符号化装置1Aの評価部111及び画像復号装置2Aの評価部208は、確度マップを生成する。
【0118】
また、画像符号化装置1Aの動き補償予測部109及び画像復号装置2Aの動き補償予測部208は、動きベクトルの異なるブロック境界における予測画像の不連続性低減のために、重複動き補償(OBMC:Ooverlapped Block Motion Compensation)を行ってもよい。画像符号化装置1Aの評価部111及び画像復号装置2Aの評価部208は、確度マップ生成の際に、OBMCによる参照画素の補正を考慮してもよい。
【0119】
例えば、OBMCの補正に用いる周囲のブロックの予測モードが双予測である場合には、画像符号化装置1Aの評価部111及び画像復号装置2Aの評価部208は、OBMCの補正が影響する予測画像の領域について、周辺ブロックの双予測の予測画像生成に用いる参照画像(L0及びL1)の動きベクトルを用いて確度マップを補正する。具体的には、ブロック境界領域について、隣り合うブロックの動きベクトルが双予測である場合には、隣り合うブロックの確度マップとの位置に応じた加重平均をする。隣り合うブロックがイントラモードの場合や、片方向予測の場合には、確度マップの補正は行わない。図12のケースでは、上側のブロック境界についてはL0aとL1aを用いて確度マップを生成し、その下側の領域について(当該CUと重なり合う領域について)当該CUの確度マップとの加重平均をする。下側や右側、左側CUの予測モードが片方向予測であるので、それらのCUと重なり合う領域については確度マップの補正は行わない。
【0120】
<12.変更例3>
上述した実施形態において、予測残差を画素単位で並び替える一例を説明したが、予測残差を画素グループ(小ブロック)単位で並び替えてもよい。かかる小ブロックは、4×4の画素からなるブロックであり、CGと称されることがある。
【0121】
図13は、実施形態の変更例3に係る画像符号化装置1Bの構成を示す図である。図13に示すように、画像符号化装置1Bは、予測残差を画素グループ(小ブロック)単位で並び替える並び替え部112を備える。並び替え部112は、対象画像ブロック(CU)が双予測を用いて予測画像を生成するものであって、当該CUが変換スキップモードを適用するものである場合には、上述した誤差マップに基いて、当該CUの予測残差に対して小ブロック単位(4×4)での並び換えを行う。
【0122】
図14は、実施形態の変更例3に係る並び替え部112の動作の一例を示す図である。
【0123】
図14(A)に示すように、画像符号化装置1Bの減算部101は、CUに対応する予測残差を算出する。図14(A)の例では、CU内の右上領域に予測残差が存在する。CU内の右上領域は、参照画像間の類似度が低い領域であって、予測精度(確度)が低い領域であるとみなすことができる。
【0124】
図14(B)に示すように、画像符号化装置1Bの評価部111又は並び替え部112は、誤差マップを4×4のCG単位に分割し、CG単位での誤差の平均値CGmapを下記の式(5)により算出する。
【0125】
【数1】
・・・(5)
【0126】
そして、並び替え部112は、誤差の平均値CGmapが高い順にCGを並び替えてインデックスを付与する。言い換えると、並び替え部112は、参照画像間の類似度が低い順にCGを並び替えてインデックスを付与する。図14(B)の例において、各CG内の数字は並び替え後のインデックスを示す。右上領域のCGの平均値CGmapが大きいため、スキャン(符号化)の優先順位が高く設定されている。次に、並び替え部112は、図14(C)に示すように、インデックスが小さい順にスキャン(符号化)されるようにCGを並べ替える。その結果、並び替え部112は、図14(D)に示すように、CG単位で並び替えた予測残差を量子化部102bに出力する。
【0127】
量子化部102bは、並び替え部112から入力された予測残差に対して量子化を行って、量子化した予測残差をエントロピー符号化部103Bに出力する。エントロピー符号化部103Bは、誤差の平均値CGmapが高い順にCGを符号化して符号化データを生成する。
【0128】
なお、並び替え部112は、逆量子化部104aが出力する復元予測残差に対して、元のCGの並び順に戻すようにCG単位で並び替えを行い、CG単位で並び替えた復元予測残差を合成部105に出力する。
【0129】
図15は、実施形態の変更例3に係る画像復号装置2Bの構成を示す図である。図15に示すように、画像復号装置2Bは、逆量子化部201aが出力する復元予測残差をCG単位で並び替える並び替え部209を備える。
【0130】
並び替え部209は、対象画像ブロック(CU)が双予測を用いて予測画像を生成するものであって、当該CUが変換スキップモードを適用するものである場合には、上述した誤差マップに基いて、当該CUの予測残差に対してCG単位での並び換えを行う。
【0131】
具体的には、画像復号装置2Bの評価部208又は並び替え部209は、誤差マップを4×4のCG単位に分割し、CG単位での誤差の平均値CGmapを上記の式(5)により算出する。そして、並び替え部209は、CG単位での誤差の平均値CGmapに基づいて、画像復号装置2Aの並び替え部112が行う並び替え処理の逆処理を行い、並び替え後の予測残差を合成部202に出力する。
【0132】
<13.変更例4>
上述した実施形態において、予測残差を画素単位もしくは小ブロック単位で並び替える例を説明したが、予測残差を水平もしくは垂直もしくは水平垂直に反転させるよう並び換えてもよい。
【0133】
図16に示すように、画像符号化装置1Bの減算部101は、対象画像ブロックに対応する予測残差を算出する。図16の例では対象画像ブロックの右上領域に予測残差が存在する。また、対象画像ブロックの右上領域は、参照画素間の類似度が低い領域であって、予測精度(確度)が低い領域であるとみなすことができる。
【0134】
実施形態の変更例4の並び換え部112は、誤差マップの重心を下記の式(6)により算出する。
【0135】
【数2】
【0136】
並び換え部112は、算出した誤差マップの重心(gi,gj)がマップの右上領域に位置する場合、すなわち、左上座標を(0,0)、右下座標を(m,n)とすると、
【0137】
【数3】
かつ
【0138】
【数4】
である場合には、予測残差を水平反転する。
【0139】
並び換え部112は、誤差マップの重心が左下領域に位置する場合、すなわち、
【0140】
【数5】
かつ
【0141】
【数6】
である場合には、予測残差を垂直反転する。
【0142】
並び換え部112は、誤差マップの重心が右下領域に位置する場合、すなわち、
【0143】
【数7】
かつ
【0144】
【数8】
である場合には、予測残差を水平および垂直に反転する。
【0145】
なお、誤差マップの重心が右下領域である場合には、並び換え部112は、予測残差を水平および垂直に反転するかわりに、予測残差を180度回転させるよう構成してもよいし、係数符号化の際のスキャン順を左上から右下に行うかわりに、右下から左上に向かうように変更するよう構成してもよい。
【0146】
また、処理の低減のため、誤差マップの重心を算出せずに、誤差マップの最大値の位置を探索し、最大値の位置を前記重心の位置とみなして、上述の反転処理を行うよう施してもよい。
【0147】
実施形態の変更例4の並べ替え部112による予測残差の反転処理が施された予測残差は量子化部102bに出力する。
【0148】
量子化部102bは、並び替え部112から入力された予測残差に対して量子化を行って、量子化した予測残差をエントロピー符号化部103Bに出力する。エントロピー符号化部103Bは、予測残差の左上領域から右下領域の順に符号化して符号化データを生成する。
【0149】
なお、並び替え部112は、逆量子化部104aが出力する復元予測残差に対して、誤差マップの重心の位置に基いて予測残差の反転処理を行い、並び替えた復元予測残差を合成部105に出力する。
【0150】
<14.その他の実施形態>
上述した実施形態において、エントロピー符号化部103Aが、2次元に配列された予測残差の全てを確度の低い順に読み出してシリアライズ処理を行う一例について説明した。しかしながら、2次元に配列された予測残差のうち確度が低い順に上位数個のみを読み出し、それ以外の予測残差についてはシステムで定められた固定の順序で読み出すとしてもよい。或いは、2次元に配列された予測残差について、確度に応じて読み出し順を所定の数だけ繰り上げる又は繰り下げるとしてもよい。
【0151】
上述した実施形態において、動き補償予測としてインター予測を主として説明した。インター予測においては、現フレームと異なるフレーム内の参照画像が現フレームの対象画像ブロックの予測に用いられる。しかしながら、動き補償予測としてイントラプロックコピーと呼ばれる技術も適用することが可能である。イントラプロックコピーにおいては、現フレームと同じフレーム内の参照画像が現フレームの対象画像ブロックの予測に用いられる。
【0152】
画像符号化装置1A、1Bが行う各処理をコンピュータに実行させるプログラム及び画像復号装置2A、2Bが行う各処理をコンピュータに実行させるプログラムが提供されてもよい。また、プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROM等の記録媒体であってもよい。また、画像符号化装置1A、1Bが行う各処理を実行する回路を集積化し、画像符号化装置1A、1Bを半導体集積回路(チップセット、SoC)として構成してもよい。同様に、画像復号装置2A、2Bが行う各処理を実行する回路を集積化し、画像復号装置2A、2Bを半導体集積回路(チップセット、SoC)として構成してもよい。
【0153】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【0154】
なお、日本国特許出願第2018-65880号(2018年3月29日出願)の全内容が、参照により、本願明細書に組み込まれている。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16