JPWO2017061189A1 - 画像復号装置または画像符号化装置のための画像予測装置 - Google Patents

画像復号装置または画像符号化装置のための画像予測装置 Download PDF

Info

Publication number
JPWO2017061189A1
JPWO2017061189A1 JP2017544411A JP2017544411A JPWO2017061189A1 JP WO2017061189 A1 JPWO2017061189 A1 JP WO2017061189A1 JP 2017544411 A JP2017544411 A JP 2017544411A JP 2017544411 A JP2017544411 A JP 2017544411A JP WO2017061189 A1 JPWO2017061189 A1 JP WO2017061189A1
Authority
JP
Japan
Prior art keywords
parameter
prediction
unit
cost
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017544411A
Other languages
English (en)
Inventor
知宏 猪飼
知宏 猪飼
健史 筑波
健史 筑波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Publication of JPWO2017061189A1 publication Critical patent/JPWO2017061189A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

イントラLM予測画像または照度予測画像の精度を向上させるための画像予測装置を提供する。
画像予測装置は、線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える。上記線形予測パラメータ導出部は、第1パラメータa1と第2パラメータa2から線形予測パラメータaを導出する手段を備える。上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備える。

Description

本発明は、画像復号装置、画像符号化装置、および予測画像生成装置に関する。
動画像を効率的に伝送または記録するために、動画像を符号化することによって符号化データを生成する動画像符号化装置、および、当該符号化データを復号することによって復号画像を生成する動画像復号装置が用いられている。
具体的な動画像符号化方式としては、例えば、H.264/MPEG−4.AVCやHEVC(High-Efficiency Video Coding)にて提案されている方式などが挙げられる。
このような動画像符号化方式においては、動画像を構成する画像(ピクチャ)は、画像を分割することにより得られるスライス、スライスを分割することにより得られる符号化単位(コーディングユニット(Coding Unit)と呼ばれることもある)、及び、符号化単位を分割することより得られるブロックである予測ユニット(PU)、変換ユニット(TU)からなる階層構造により管理され、ブロックごとに符号化/復号される。
また、このような動画像符号化方式においては、通常、入力画像を符号化/復号することによって得られる局所復号画像に基づいて予測画像が生成され、当該予測画像を入力画像(原画像)から減算して得られる予測残差(「差分画像」または「残差画像」と呼ぶこともある)が符号化される。予測画像の生成方法としては、画面間予測(インター予測)、および、画面内予測(イントラ予測)が挙げられる。
非特許文献1では、画面内予測において、既に復号した輝度成分と色差成分の関係から、線形予測パラメータを推定し、推定された線形予測パラメータを用いて対象ブロックの色差成分を予測する、方法が知られている。
非特許文献2、非特許文献3には、さらに、線形予測パラメータの導出において、二乗誤差を最小化する最小二乗法に加え、正則化コストを加えることで、線形予測パラメータを安定させる技術が知られている。
J. Kim, S.-W. Park, J.-Y. Park, B.-M. Jeon (LG), "Intra chroma prediction using inter channel correlation", JCTVC-B021, JCT-VC 2nd Meeting: Geneva, CH, 21-28 July, 2010 T. Ikai, "3D-CE5.h related: Illumination compensation regression improvement and simplification", JCT3V-D0061, JCT3V 4th Meeting: Incheon,KR, 20-26 Apr. 2013(2013年4月12日公開) J. Chen, Y. Chen, M. Karczewicz, X. Li, H. Liu, L. Zhang, X. Zhao, "Coding tools investigation for next generation video coding", ITU-T SG16 Doc. COM16-C806, Feb. 2015.
しかしながら、非特許文献1では、線形予測パラメータを安定させるような正則化コストを用いないため、導出される線形予測パラメータがノイズの影響を受けやすい、という課題があった。非特許文献2では、正則化コストを用いるが、特に線形予測式の傾きのパラメータの符号が正にも負にもなる異なる色空間(例えば輝度から色差及び色差から別の色差)を予測する色コンポーネント間予測に適した正則化コストとは限らないという課題があった。非特許文献3では、色差から別の色差を予測する場合の線形予測に用いる正則化コストは開示されているが、線形予測の傾きパラメータの符号や大きさを考慮しておらず、特に、傾きが正となることがある場合に適当ではないという課題があった。このように、従来は、色成分間の線形予測パラメータを推定し、推定した線形予測パラメータを用いて予測画像を生成する予測画像生成装置において、推定される線形予測パラメータが雑音の影響を受けやすいという課題があった。さらに、特に、線形予測式の傾きのパラメータの符号が正にも負にもなる異なる色コンポーネント間予測において推定される予測パラメータが適当ではないという課題があった。
本発明の一つの形態は、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
本発明によれば、推定される線形予測パラメータが雑音に強くなり、線形予測パラメータを用いて導出される予測画像の精度が向上する。線形予測を利用した画像復号装置及び画像符号化装置において符号化効率が向上する。
本実施形態に係るLM予測部3093の構成を示すブロック図である。 本実施形態に係る符号化ストリームのデータの階層構造を示す図である。 参照ピクチャリストの一例を示す概念図である。 参照ピクチャの例を示す概念図である。 本実施形態に係る画像復号装置の構成を示す概略図である。 本実施形態に係るインター予測パラメータ復号部の構成を示す概略図である。 本実施形態に係るマージ予測パラメータ導出部の構成を示す概略図である。 本実施形態に係るAMVP予測パラメータ導出部の構成を示す概略図である。 ベクトル候補の一例を示す概念図である。 本実施形態に係るインター予測パラメータ復号制御部の構成を示す概略図である。 本実施形態に係るインター予測画像生成部の構成を示す概略図である。 本実施形態に係るLM予測の概念図である。 本実施形態に係る照度補償の概念図である。 本実施形態に係る画像符号化装置の構成を示すブロック図である。 本実施形態に係るインター予測パラメータ符号化部の構成を示す概略図である。 本実施形態に係る照度補償で用いるテーブルを示す図である。 本実施形態に係る線形予測パラメータaの分布を示すヒストグラムである。 本実施形態に係るLMパラメータa導出部309316の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318の構成を示すブロック図である。 本実施形態に係るLM正則化コスト加算部309318A、LM正則化コスト加算部309318A2の動作を示すフローチャートである。 本実施形態に係るLM正則化コスト加算部309318B、LM正則化コスト加算部309318B2の動作を示すフローチャートである。 本実施形態に係るLM正則化コスト加算部309318C、LM正則化コスト加算部309318C2の動作を示すフローチャートである。 本実施形態に係る照度補償部3093の構成を示すブロック図である。 本発明の実施形態に係る画像伝送システムの構成を示す概略図である。
(第1の実施形態)
以下、図面を参照しながら本発明の実施形態について説明する。
図25は、本実施形態に係る画像伝送システム1の構成を示す概略図である。
画像伝送システム1は、複数のレイヤ画像を符号化した符号を伝送し、伝送された符号を復号した画像を表示するシステムである。画像伝送システム1は、画像符号化装置11、ネットワーク21、画像復号装置31及び画像表示装置41を含んで構成される。
画像符号化装置11には、単一レイヤもしくは複数のレイヤ画像を示す信号Tが入力される。レイヤ画像とは、ある解像度及びある視点で視認もしくは撮影される画像である。複数のレイヤ画像を用いて3次元画像を符号化するビュースケーラブル符号化を行う場合、複数のレイヤ画像のそれぞれは、視点画像と呼ばれる。また、空間スケーラブル符号化を行う場合、その複数のレイヤ画像は、解像度の低いベースレイヤ画像と、解像度の高い拡張レイヤ画像からなる。SNRスケーラブル符号化を行う場合、その複数のレイヤ画像は、画質の低いベースレイヤ画像と、画質の高い拡張レイヤ画像からなる。なお、画像符号化装置11及び画像復号装置31は、単一レイヤ画像でも良いし、ビュースケーラブル符号化、空間スケーラブル符号化、SNRスケーラブル符号化を任意に組み合わせて行っても良い。ネットワーク21は、画像符号化装置11が生成した符号化ストリームTeを画像復号装置31に伝送する。ネットワーク21は、インターネット(internet)、広域ネットワーク(WAN:Wide Area Network)、小規模ネットワーク(LAN:Local Area Network)又はこれらの組み合わせである。ネットワーク21は、必ずしも双方向の通信網に限らず、地上波ディジタル放送、衛星放送等の放送波を伝送する一方向又は双方向の通信網であっても良い。また、ネットワーク21は、DVD(Digital Versatile Disc)、BD(Blue-ray Disc)等の符号化ストリームTeを記録した記憶媒体で代替されても良い。
画像復号装置31は、ネットワーク21が伝送した符号化ストリームTeのそれぞれを復号し、それぞれ復号した複数の復号レイヤ画像Td(復号視点画像Td)を生成する。
画像表示装置41は、画像復号装置31が生成した複数の復号レイヤ画像Tdの全部又は一部を表示する。例えば、ビュースケーラブル符号化においては、全部の場合、3次元画像(立体画像)や自由視点画像が表示され、一部の場合、2次元画像が表示される。画像表示装置41は、例えば、液晶ディスプレイ、有機EL(Electro-luminescence)ディスプレイ等の表示デバイスを備える。また、空間スケーラブル符号化、SNRスケーラブル符号化では、画像復号装置31、画像表示装置41が高い処理能力を有する場合には、画質の高い拡張レイヤ画像を表示し、より低い処理能力しか有しない場合には、拡張レイヤほど高い処理能力、表示能力を必要としないベースレイヤ画像を表示する。
<符号化ストリームTeの構造>
本実施形態に係る画像符号化装置11および画像復号装置31の詳細な説明に先立って、画像符号化装置11によって生成され、画像復号装置31によって復号される符号化ストリームTeのデータ構造について説明する。
図2は、符号化ストリームTeにおけるデータの階層構造を示す図である。符号化ストリームTeは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図2の(a)〜(f)は、それぞれ、シーケンスSEQを既定するシーケンスレイヤ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、スライスデータを規定するスライスデータレイヤ、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、符号化ツリーに含まれる符号化単位(Coding Unit;CU)を規定する符号化ユニットレイヤを示す図である。
(シーケンスレイヤ)
シーケンスレイヤでは、処理対象のシーケンスSEQ(以下、対象シーケンスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。シーケンスSEQは、図2の(a)に示すように、ビデオパラメータセット(Video Parameter Set)シーケンスパラメータセットSPS(Sequence Parameter Set)、ピクチャパラメータセットPPS(Picture Parameter Set)、ピクチャPICT、及び、付加拡張情報SEI(Supplemental Enhancement Information)を含んでいる。ここで#の後に示される値はレイヤIDを示す。図2では、#0と#1すなわちレイヤ0とレイヤ1の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。
ビデオパラメータセットVPSは、複数のレイヤから構成されている動画像において、複数の動画像に共通する符号化パラメータの集合および動画像に含まれる複数のレイヤおよび個々のレイヤに関連する符号化パラメータの集合が規定されている。
シーケンスパラメータセットSPSでは、対象シーケンスを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの幅や高さが規定される。
ピクチャパラメータセットPPSでは、対象シーケンス内の各ピクチャを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの復号に用いられる量子化幅の基準値(pic_init_qp_minus26)や重み付き予測の適用を示すフラグ(weighted_pred_flag)が含まれる。なお、PPSは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のPPSの何れかを選択する。
(ピクチャレイヤ)
ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0〜SNS−1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。
なお、以下、スライスS0〜SNS−1のそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化ストリームTeに含まれるデータであって、添え字を付している他のデータについても同様である。
(スライスレイヤ)
スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。
スライスヘッダSHには、対象スライスの復号方法を決定するために画像復号装置31が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。
スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、または、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるBスライスなどが挙げられる。
なお、スライスヘッダSHには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットPPSへの参照(pic_parameter_set_id)を含んでいても良い。
(スライスデータレイヤ)
スライスデータレイヤでは、処理対象のスライスデータSDATAを復号するために画像復号装置31が参照するデータの集合が規定されている。スライスデータSDATAは、図2の(d)に示すように、符号化ツリーブロック(CTB:Coded Tree Block)を含んでいる。CTBは、スライスを構成する固定サイズ(例えば64×64)のブロックであり、最大符号化単位(LCU:Largest Cording Unit)と呼ぶこともある。
(符号化ツリーレイヤ)
符号化ツリーレイヤは、図2の(e)に示すように、処理対象の符号化ツリーブロックを復号するために画像復号装置31が参照するデータの集合が規定されている。符号化ツリーユニットは、再帰的な4分木分割により分割される。再帰的な4分木分割により得られる木構造のノードのことを符号化ツリー(coding tree)と称する。4分木の中間ノードは、符号化ツリーユニット(CTU:Coded Tree Unit)であり、符号化ツリーブロック自身も最上位のCTUとして規定される。CTUは、分割フラグ(splif_flag)を含み、splif_flagが1の場合には、4つの符号化ツリーユニットCTUに分割される。splif_flagが0の場合には、符号化ツリーユニットCTUは4つの符号化ユニット(CU:Coded Unit)に分割される。符号化ユニットCUは符号化ツリーレイヤの末端ノードであり、このレイヤではこれ以上分割されない。符号化ユニットCUは、符号化処理の基本的な単位となる。
また、符号化ツリーブロックCTBのサイズ64×64画素の場合には、符号化ユニットのサイズは、64×64画素、32×32画素、16×16画素、および、8×8画素の何れかをとり得る。
(符号化ユニットレイヤ)
符号化ユニットレイヤは、図2の(f)に示すように、処理対象の符号化ユニットを復号するために画像復号装置31が参照するデータの集合が規定されている。具体的には、符号化ユニットは、CUヘッダCUH、予測ツリー、変換ツリー、CUヘッダCUFから構成される。CUヘッダCUHでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートとなる。CUヘッダCUFは、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。
予測ツリーは、符号化ユニットが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ユニットを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。
予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU、予測ユニット)とも称する。
予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。イントラ予測とは、同一ピクチャ内の予測であり、インター予測とは、互いに異なるピクチャ間(例えば、表示時刻間、レイヤ画像間)で行われる予測処理を指す。
イントラ予測の場合、分割方法は、2N×2N(符号化ユニットと同一サイズ)と、N×Nとがある。
また、インター予測の場合、分割方法は、符号化データのpart_modeにより符号化され、2N×2N(符号化ユニットと同一サイズ)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどがある。なお、2N×nUは、2N×2Nの符号化ユニットを上から順に2N×0.5Nと2N×1.5Nの2領域に分割することを示す。2N×nDは、2N×2Nの符号化ユニットを上から順に2N×1.5Nと2N×0.5Nの2領域に分割することを示す。nL×2Nは、2N×2Nの符号化ユニットを左から順に0.5N×2Nと1.5N×2Nの2領域に分割することを示す。nR×2Nは、2N×2Nの符号化ユニットを左から順に1.5N×2Nと0.5N×1.5Nの2領域に分割することを示す。分割数は1、2、4のいずれかであるため、CUに含まれるPUは1個から4個である。これらのPUを順にPU0、PU1、PU2、PU3と表現する。
また、変換ツリーにおいては、符号化ユニットが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ユニットを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。
変換ツリーにおける分割には、符号化ユニットと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な4分木分割によるものがある。
変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。
(予測パラメータ)
予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグpredFlagL0、predFlagL1と、参照ピクチャインデックスrefIdxL0、refIdxL1と、ベクトルmvL0、mvL1から構成される。予測リスト利用フラグpredFlagL0、predFlagL1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストが用いられるか否かを示すフラグであり、値が1の場合に対応する参照ピクチャリストが用いられる。なお、本明細書中「XXであるか否かを示すフラグ」と記す場合、1をXXである場合、0をXXではない場合とし、論理否定、論理積などでは1を真、0を偽と扱う(以下同様)。但し、実際の装置や方法では真値、偽値として他の値を用いることもできる。2つの参照ピクチャリストが用いられる場合、つまり、predFlagL0=1, predFlagL1=1の場合が、双予測に対応し、1つの参照ピクチャリストを用いる場合、すなわち(predFlagL0, predFlagL1) = (1, 0)もしくは(predFlagL0, predFlagL1) = (0, 1)の場合が単予測に対応する。なお、予測リスト利用フラグの情報は、後述のインター予測フラグinter_pred_idcで表現することもできる。通常、後述の予測画像生成部、予測パラメータメモリでは、予測リスト利用フラグが用いれ、符号化データから、どの参照ピクチャリストが用いられるか否かの情報を復号する場合にはインター予測フラグinter_pred_idcが用いられる。
符号化データに含まれるインター予測パラメータを導出するためのシンタックス要素には、例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。
(参照ピクチャリストの一例)
次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、参照ピクチャメモリ306(図5)に記憶された参照ピクチャからなる列である。図3は、参照ピクチャリストの一例を示す概念図である。参照ピクチャリスト601において、左右に一列に配列された5個の長方形は、それぞれ参照ピクチャを示す。左端から右へ順に示されている符号、P1、P2、Q0、P3、P4は、それぞれの参照ピクチャを示す符号である。P1等のPとは、視点Pを示し、そしてQ0のQとは、視点Pとは異なる視点Qを示す。P及びQの添字は、ピクチャ順序番号POCを示す。refIdxLXの真下の下向きの矢印は、参照ピクチャインデックスrefIdxLXが、参照ピクチャメモリ306において参照ピクチャQ0を参照するインデックスであることを示す。
(参照ピクチャの例)
次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図4は、参照ピクチャの例を示す概念図である。図4において、横軸は表示時刻を示し、縦軸は視点を示す。図4に示されている、縦2行、横3列(計6個)の長方形は、それぞれピクチャを示す。6個の長方形のうち、下行の左から2列目の長方形は復号対象のピクチャ(対象ピクチャ)を示し、残りの5個の長方形がそれぞれ参照ピクチャを示す。対象ピクチャから上向きの矢印で示される参照ピクチャQ0は対象ピクチャと同表示時刻であって視点が異なるピクチャである。対象ピクチャを基準とする変位予測においては、参照ピクチャQ0が用いられる。対象ピクチャから左向きの矢印で示される参照ピクチャP1は、対象ピクチャと同じ視点であって、過去のピクチャである。対象ピクチャから右向きの矢印で示される参照ピクチャP2は、対象ピクチャと同じ視点であって、未来のピクチャである。対象ピクチャを基準とする動き予測においては、参照ピクチャP1又はP2が用いられる。
(インター予測フラグと予測リスト利用フラグ)
インター予測フラグと、予測リスト利用フラグpredFlagL0、predFlagL1の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。
インター予測フラグ = (predFlagL1<<1) + predFlagL0
predFlagL0 =インター予測フラグ & 1
predFlagL1 =インター予測フラグ >> 1
ここで、>>は右シフト、<<は左シフトである。
(マージ予測とAMVP予測)
予測パラメータの復号(符号化)方法には、マージ予測(merge)モードとAMVP(Adaptive Motion Vector Prediction、適応動きベクトル予測)モードがある、マージフラグmerge_flagは、これらを識別するためのフラグである。マージ予測モードでも、AMVPモードでも、既に処理済みのブロックの予測パラメータを用いて、対象PUの予測パラメータが導出される。マージ予測モードは、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めずに、既に導出した予測パラメータをそのまま用いるモードであり、AMVPモードは、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めるモードである。なおベクトルmvLXは、予測ベクトルを示す予測ベクトルインデックスmvp_LX_idxと差分ベクトル(mvdLX)として符号化される。
インター予測フラグinter_pred_idcは、参照ピクチャの種類および数を示すデータであり、Pred_L0、Pred_L1、Pred_Biの何れかの値をとる。Pred_L0、Pred_L1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストに記憶された参照ピクチャが用いられることを示し、共に1枚の参照ピクチャを用いること(単予測)を示す。L0リスト、L1リストを用いた予測を各々L0予測、L1予測と呼ぶ。Pred_Biは2枚の参照ピクチャを用いること(双予測)を示し、L0リストとL1リストに記憶された参照ピクチャの2つを用いることを示す。予測ベクトルインデックスmvp_LX_idxは予測ベクトルを示すインデックスであり、参照ピクチャインデックスrefIdxLXは、参照ピクチャリストに記憶された参照ピクチャを示すインデックスである。なお、LXは、L0予測とL1予測を区別しない場合に用いられる記述方法であり、LXをL0、L1に置き換えることでL0リストに対するパラメータとL1リストに対するパラメータを区別するする。例えば、refIdxL0はL0予測に用いる参照ピクチャインデックス、refIdxL1はL1予測に用いる参照ピクチャインデックス、refIdx(refIdxLX)は、refIdxL0とrefIdxL1を区別しない場合に用いられる表記である。
マージインデックスmerge_idxは、処理が完了したブロックから導出される予測パラメータ候補(マージ候補)のうち、いずれかの予測パラメータを復号対象ブロックの予測パラメータとして用いるかを示すインデックスである。
(動きベクトルと変位ベクトル)
ベクトルmvLXには、動きベクトルと変位ベクトル(disparity vector、視差ベクトル)がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻(例えば、隣接する離散時刻)における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。
(画像復号装置の構成)
次に、本実施形態に係る画像復号装置31の構成について説明する。図5は、本実施形態に係る画像復号装置31の構成を示す概略図である。画像復号装置31は、エントロピー復号部301、予測パラメータ復号部302、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)306、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)307、予測画像生成部308、逆量子化・逆DCT部311、及び加算部312、残差格納部313(残差記録部)を含んで構成される。
また、予測パラメータ復号部302は、インター予測パラメータ復号部303及びイントラ予測パラメータ復号部304を含んで構成される。予測画像生成部308は、インター予測画像生成部309及びイントラ予測画像生成部310を含んで構成される。
エントロピー復号部301は、外部から入力された符号化ストリームTeに対してエントロピー復号を行って、個々の符号(シンタックス要素)を分離し復号する。分離された符号には、予測画像を生成するための予測情報および、差分画像を生成するための残差情報などがある。
エントロピー復号部301は、分離した符号の一部を予測パラメータ復号部302に出力する。分離した符号の一部とは、例えば、予測モードPredMode、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックmvp_LX_idx、差分ベクトルmvdLXである。どの符号を復号するか否かの制御は、予測パラメータ復号部302の指示に基づいて行われる。エントロピー復号部301は、量子化係数を逆量子化・逆DCT部311に出力する。この量子化係数は、符号化処理において、残差信号に対してDCT(Discrete Cosine Transform、離散コサイン変換)を行い量子化して得られる係数である。
インター予測パラメータ復号部303は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してインター予測パラメータを復号する。
インター予測パラメータ復号部303は、復号したインター予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。インター予測パラメータ復号部303の詳細については後述する。
イントラ予測パラメータ復号部304は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してイントラ予測パラメータを復号する。イントラ予測パラメータとは、ピクチャブロックを1つのピクチャ内で予測する処理で用いるパラメータ、例えば、イントラ予測モードIntraPredModeである。イントラ予測パラメータ復号部304は、復号したイントラ予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。
イントラ予測パラメータ復号部304は、輝度と色差で異なるイントラ予測モードを導出しても良い。この場合、イントラ予測パラメータ復号部304は、輝度の予測パラメータとして輝度予測モードIntraPredModeY、色差の予測パラメータとして、色差予測モードIntraPredModeCを復号する。輝度予測モードIntraPredModeYは、35モードであり、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)が対応する。色差予測モードIntraPredModeCは、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)、LMモード(35)の何れかを用いるもの。イントラ予測パラメータ復号部304は、IntraPredModeCは輝度モードと同じモードであるか否かを示すフラグを復号し、フラグが輝度モードと同じモードであることを示せば、IntraPredModeCにIntraPredModeYを割り当て、フラグが輝度モードと異なるモードであることを示せば、I IntraPredModeCとして、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)、LMモード(35)を復号しても良い。
参照ピクチャメモリ306は、加算部312が生成した参照ピクチャのブロック(参照ピクチャブロック)を、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
予測パラメータメモリ307は、予測パラメータを、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。具体的には、予測パラメータメモリ307は、インター予測パラメータ復号部303が復号したインター予測パラメータ、イントラ予測パラメータ復号部304が復号したイントラ予測パラメータ及びエントロピー復号部301が分離した予測モードpredModeを記憶する。記憶されるインター予測パラメータには、例えば、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXがある。
予測画像生成部308には、エントロピー復号部301から入力された予測モードpredModeが入力され、また予測パラメータ復号部302から予測パラメータが入力される。また、予測画像生成部308は、参照ピクチャメモリ306から参照ピクチャを読み出す。予測画像生成部308は、予測モードpredModeが示す予測モードで、入力された予測パラメータと読み出した参照ピクチャを用いて予測ピクチャブロックP(予測画像)を生成する。
ここで、予測モードpredModeがインター予測モードを示す場合、インター予測画像生成部309は、インター予測パラメータ復号部303から入力されたインター予測パラメータと読み出した参照ピクチャを用いてインター予測により予測ピクチャブロックPを生成する。予測ピクチャブロックPは予測単位PUに対応する。PUは、上述したように予測処理を行う単位となる複数の画素からなるピクチャの一部分、つまり1度に予測処理が行われる復号対象ブロックに相当する。
インター予測画像生成部309は、予測リスト利用フラグpredFlagLXが1である参照ピクチャリスト(L0リスト、もしくはL1リスト)に対し、参照ピクチャインデックスrefIdxLXで示される参照ピクチャから、復号対象ブロックを基準としてベクトルmvLXが示す位置にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。インター予測画像生成部309は、読み出した参照ピクチャブロックについて予測を行って予測ピクチャブロックPを生成する。インター予測画像生成部309は、生成した予測ピクチャブロックPを加算部312に出力する。
予測モードpredModeがイントラ予測モードを示す場合、イントラ予測画像生成部310は、イントラ予測パラメータ復号部304から入力されたイントラ予測パラメータと読み出した参照ピクチャを用いてイントラ予測を行う。具体的には、イントラ予測画像生成部310は、復号対象のピクチャであって、既に復号されたブロックのうち復号対象ブロックから予め定めた範囲にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。予め定めた範囲とは、復号対象ブロックがいわゆるラスタースキャンの順序で順次移動する場合、例えば、左、左上、上、右上の隣接ブロックのうちのいずれかであり、イントラ予測モードによって異なる。ラスタースキャンの順序とは、各ピクチャにおいて、上端から下端まで各行について、順次左端から右端まで移動させる順序である。
イントラ予測画像生成部310は、読み出した参照ピクチャブロックについてイントラ予測モードIntraPredModeが示す予測モードで予測を行って予測ピクチャブロックを生成する。イントラ予測画像生成部310は、生成した予測ピクチャブロックPを加算部312に出力する。
イントラ予測パラメータ復号部304において、輝度と色差で異なるイントラ予測モードを導出する場合、イントラ予測画像生成部310は、輝度予測モードIntraPredModeYに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)の何れかによって輝度の予測ピクチャブロックを生成し、色差予測モードIntraPredModeCに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2〜344)、LMモード(35)の何れかによって色差の予測ピクチャブロックを生成する。ここでは、正則化コストを用いたLMモードを説明する。正則化コストとは、最小2乗法による予測パラメータ導出において、目的関数にパラメータコストとして加算される項である。LMモードは、対象ブロックに隣接する処理済み画像を用いて、輝度の画素値から色差の画素値を予測する線形予測パラメータを導出し、その線形予測パラメータに基づいて、処理済みの輝度のブロックから、色差のピクチャブロックを生成する(TYPE0)と、対象ブロックに隣接する処理済み画像を用いて、色差の画素値から別の色差の画素値を予測する線形予測パラメータを導出し、その線形予測パラメータに基づいて、処理済みの色差のブロックから、別の色差のピクチャブロックを生成する(TYPE1)。このようなある色コンポーネントから別の色コンポーネントを推定する線形予測パラメータを導出し、導出した線形予測パラメータを用いて予測画像を生成する予測はLM予測と呼ばれる。予測の方法は、後述の照度補償部3093と概略は同じである。イントラ予測画像生成部310は、図示しないDC予測部3101、プレーナ予測部3102、方向予測部3103、LM予測部3104から構成される。なお、LM予測のLMは、Liner Modelの略である。
(最小二乗法と正則化項)
入力参照信号xiと目的参照信号yiからなる2次元の数列(xi, yi)、i=0..N-1(Nは数列の個数)に対して、目的参照信号yiを入力参照信号xiから予測する以下の線形予測式を考える。なお、yiは教師信号とも呼ばれる。
yi = a * xi + b
このとき、線形予測の2乗誤差の和Eは以下の式で定義される。
E= |yi - a * xi - b| ^ 2 式(E−1)
上記2乗誤差Eを最小化する線形予測パラメータa, bは、Eをa、bで偏微分して得られる式を0と置くことから以下のように導出される。
a = (Σxy - N*ΣxΣy) / (Σxx - NΣxΣx) 式(A−1)
b = (Σy/N - a*Σx/N)
しかしながら、上記最小2乗法によるパラメータ導出では、参照信号xi, yiに雑音成分等が加わっていると、十分な数Nの参照信号を用意しない場合には、精度の高い線形予測パラメータa、bを推定できない場合がある。また、Nが小さい場合や、参照信号に含まれる入力参照画素xiと目的参照画素yiの変化が小さい場合に、オーバーフィッティングになる可能性がある。そのため線形予測パラメータを推定する場合に、誤差Eに適当なパラメータコスト(正則化コスト)を加えたコストを考慮して、線形予測パラメータを導出するような方式ことが知られている。一般には、正則化項として、パラメータの値を0に近くなるような正則化コスト、すなわち、以下の式のようにaとbの2乗項に重みlambda_a、lambda_bをかけた形が知られている(リッジ回帰)。
E= |yi - a * xi - b| ^ 2 + lambda_a * a^2 + lambda_b * b^2 式(E−2)
しかしながら、リッジ回帰の正則化項を画像に適用しても、画素間の線形回帰では、線形予測パラメータaとbが0に近い値である、という仮定自体が成り立たないため、適当な結果が得られない。
発明者は、画像に適用する場合には、パラメータaとパラメータbの分布や特性を調査した上で、以下のように線形パラメータaを適当な値kに近づけるような正則化項(パラメータaとkとのずれの2乗に比例する項)を用いることが適当であることを見出した。
E´= |yi - a * xi - b| ^ 2 + lambda_a * (a - k)^2 式(E−3)
2乗誤差の和E´をa、bで偏微分して得られる式を0と置くことで、上記式を、解くことができる。これにより、以下の線形パラメータa、bの推定式が得られる。
a = (Σxy - N*ΣxΣy - k* lambda_a) / (Σxx - NΣxΣx - lambda_a) 式(A−3)
b = (Σy/N - a*Σx/N)
以下、線形予測パラメータaを導出する際の除算の式において、分子に相当する値を第1パラメータa1(numerator)、分母に相当する数を第2パラメータa2(denominator)と呼ぶ。ここで、Σxy - N*ΣxΣy = a1、Σxx - NΣxΣx = a2、lambda_a=acostと置くと、最小2乗法の式(A−1)は、以下のように変形できる。
a = a1 / a2
さらに、正則化項を含む式(A−3)は、以下のように変形される。
a = (a1 + k*acost) / (a2 + acost)
上記は、第1パラメータa1の第2パラメータa2による除算で示される線形予測パラメータaの導出において、第1パラメータa1をk*costを加算して更新し、第2パラメータa2をacostを加算して更新することで、正則化項を考慮した線形予測パラメータaが得られることを示す。以下、本特許ではacost、及び、k*acostのような第1パラメータa1、第2パラメータa2の更新に用いられる値を正則化コスト(もしくはパラメータコスト)と呼ぶ。
(LM予測部3104)
図1は、LM予測部3104の構成を示すブロック図である。LM予測部3104は、線形予測パラメータを導出するLMパラメータ推定部31041と、導出した線形予測パラメータを用いて実際に予測を行うLM予測フィルタ部31042から構成される。LMパラメータ推定部31041は、LM積算値導出部310412、LM加算値導出部310413、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415、LMパラメータa導出部310416、LMパラメータb導出部310417から構成される。
LMパラメータ推定部31041は、入力参照画素xiから目的参照画素yiを、yi = a * xi + bの式で予測する場合の線形予測パラメータaとbを導出する。線形予測パラメータaは傾き、線形予測パラメータbはオフセットに相当する。
図17は、LMパラメータ推定部31041が推定するパラメータaの分布を示すヒストグラムである。図17(a)と(b)は別々のピクチャから得られた分布である。パラメータaの分布はピクチャ(シーケンス)によって異なるが、aの絶対値が0から1の範囲に比較的多く分布する。輝度と色差間の色コンポーネント予測に対応するTYPE=0ではパラメータaは正と負の両方に存在し、色差と別の色差間の色コンポーネント予測に対応するTYYPE=1では、比較的、パラメータaが負となることが多いが、パラメータaが正となる場合も発生する。
LMパラメータ推定部31041は、図12に示す対象ブロックの周囲のある色コンポーネントの参照ブロックの周囲に存在する画素を入力参照画素x[]、対象ブロックの周囲に存在する別の色コンポーネントの画素を目的参照画素y[]とし、これら入力参照画素x[]と目的参照画素y[]に基づいて、目的参照画素y[]を入力参照画素xから線形予測する場合のパラメータであるパラメータa、パラメータbを導出する。
LM加算値導出部310413は、目的参照画素yの和Yと入力参照画素xの和Xを、以下の式(B−2)式(B−3)により導出する。
LM積算値導出部310412は目的参照画素yと入力参照画素xの積の和XYと、目的参照画素xの2乗の和XXを、以下の式(B−4)〜(B−5)により導出する。
X = Σx[i] 式(B−2)
Y = Σy[i] 式(B−3)
XX = Σ(x[i] * x[i]) 式(B−4)
XY = Σ(y[i] * y[i]) 式(B−5)
ここで、Σは、参照領域に対する和であり、参照領域の画素を特定するインデックスi
に対する和を導出する。つまり、Σ(z[i])はiについて0から参照信号数N-1までz[i]の和をとる処理を示す。y[i]は、復号画像のインデックスiにおける画素値。x[i]は、参照画像のインデックスiにおける画素値。カウントシフト値iCountShiftは、参照領域のサイズの2の対数である。
iCountShift = log2 (参照領域の画素数) 式(B−6)
LM第1パラメータ導出部310414は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素yの和Yと入力参照画素xの和Xの積の差に基づいて第1パラメータa1を以下の式により導出する。
a1 = ( XY << iCountShift ) - (Y * X); 式(B−7)
式(B−7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフト、YとXの積は積算シフト値precShiftだけ右シフトしてから差を算出する。
LM第2パラメータ導出部310415は、入力参照画素xの2乗の和XXと、入力参照画素xの和Xの2乗の差に基づいて第2パラメータa2を以下の式により導出する。
a2 = ( XX << iCountShift ) - (X * X); 式(B−8) 導出された第1パラメータa1と第2パラメータa2は、LMパラメータa導出部310416に出力される。
また、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415は、演算に必要なビットレンジを低減させるため、以下のように式(B−7)、式(B−8)をiCountShiftだけ右シフトした式(B−7´)、(B−8´)を用いて導出しても良い。
aveX = X >> iCountShift
aveY = Y >> iCountShift
a1 = XY - ((aveY * aveX)<<iCountShift); 式(B−7´)
a2 = XX - ((aveX * aveX)<<iCountShift); 式(B−8´)
このとき、aveX、aveYは、XとYの平均値であり、各々XとYをiCountShiftだけ右シフトして導出する。
また、、LM第1パラメータ導出部310414、LM第2パラメータ導出部310415は、演算精度を向上させるために、平均値aveX、aveYを導出した際の余りremX、remYも考慮して、以下のようにXYからaveYとaveXの積に基づいた数の差にaveXとremYの積とaveYとremXの積を加えることでa1、XXからaveXとaveXの積に基づいた数の差にaveXとremXの積の2倍を加えることでa2を導出しても良い。
aveX = X >> iCountShift
remX = X - aveX
aveY = Y >> iCountShift
remX = Y - aveY
a1 = XY - ((aveY * aveX)<<iCountShift) + (aveX * remY) + (aveY * remX); 式(B−7´´)
a2 = XX - ((aveX * aveX)<<iCountShift) + 2*(aveX * remX); 式(B−8´´)
なお、LM積算値導出部310412は、目的参照画素yと入力参照画素xの積の和XYの導出時と、入力参照画素xの2乗の和XXにおいて、下記のように所定の積算シフト値precShiftだけ右シフトしてから加算しても良い。
XX = Σ(x[i] * x[i])>>precShift 式(B−4´)
XY = Σ(y[i] * y[i])>>precShift 式(B−5´)
なお、積算シフト値precShiftは以下等から導出しても良い。
precShift = Max(0, bitDepth - 12) 式(B−1)
なお、積算シフト値precShiftを用いる場合には以下に示すように、第1パラメータa1と第2パラメータa2、XY及びXXは、カウントシフト値iCountShiftだけ左シフト、XとXの積及びXとYの積は積算シフト値precShiftだけ右シフトしてから差を算出しても良い。
a1 = ( XY << iCountShift ) - (Y * X) >> precShift
a2 = ( XX << iCountShift ) - (X * X) >> precShift
一般の小数点精度の最小2乗法であればパラメータaをa1/a2で推定することができるが、本特許では、パラメータの頑健性を向上させるために、場合に応じて正則化コストを加える。また、さらに本特許では、整数演算を行うために、シフト値iShiftを導入し、パラメータaとして、iShiftだけ左シフトした値(a1 << iShift) / a2を導出する。
(本実施形態のLMパラメータ導出部)
本実施形態のLMパラメータ推定部31041の構成は、インデックスi(i=0からN-1)に対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
図18は、LMパラメータa導出部310416の構成を示すブロック図である。LMパラメータa導出部310416は、LM正則化コスト加算部310418、LM第1パラメータ正規化シフト部3104161、LM第2パラメータ正規化シフト部3104162、LM除算値導出部3104163から構成される。
LMパラメータa導出部310416は、図示しないLM第1パラメータクリップ部により、第1パラメータa1を第2パラメータa2の大きさに応じて制限する。例えば以下の式のように、a1を-2*a2以上、a2の2倍以下にクリップしても良い。
a1 = Clip3(-2*a2, (127*a2)>>6, a1) 式(B−12)
上記により、a1 / a2の値は、-2から127/64の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、-2<<iShiftから(127/64)<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは-128〜127となり、8ビット整数の範囲に入る。
なお、クリップは上記に限定せず、以下の式などでも良い。
a1 = Clip3(-m1*a2, m2*a2, a1) 式(B−12´)
ここでm1、m2は正の整数。例えばm1=2から3、m2=2から3の値などが適当である。さらに整数よりも細かい単位で制限するために、以下の式でもクリップしても良い。
a1 = Clip3(-(m1*a2>>m3), (m2*a2>>m43), a1) 式(B−12´´)
ここで、m1、m2、m3、m4は正の整数。例えばm1=3、m2=3、m3=1、m4=1とすれば、a1をa2の-1.5倍〜1.5倍の間の値に制限できる。つまりa1/a2を-1.5〜1.5の間に制限できる。
本実施形態のLMパラメータ推定部31041は、LM正則化コスト加算部310418により、第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN以下である場合には0以上の第1コストa1costNを第1パラメータa1から減算するLM第1パラメータ正則化コスト加算部と、第1パラメータa1と1つ以上の所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THPより以上の場合には0以上の第2コストa1costPを第1パラメータa1に加算するLM第1パラメータ正則化コスト加算部の少なくとも1つの手段を備える。ここで、第1パラメータa1、第2パラメータa2に正則化コストを減算もしくは加算した更新後の値もa1、a2と表記するが、更新前と変更後の値を区別する場合には、更新前のパラメータをa1、a2、更新後のパラメータをa1´、a2´と表記する。
LM正則化コスト加算部310418は、例えば、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算する。その他、LM正則化コスト加算部310418の具体的な構成及びその変形例は後述する。
a1 = a1 + a1costN
(LM正規化シフト部)
以下、a1 << iShift / a2に対応するパラメータaを整数処理により導出する前に、導出時に処理に必要な値域が大きくなりすぎないように、LM第1パラメータ正規化シフト部3104161で、a1の大きさをシフトにより調節しa1sを導出する。また、同様に、a2で除算する場合に参照するテーブルのサイズを制限するために、LM第2パラメータ正規化シフト部3104162によりa2の大きさをシフトにより調節しa2sを導出する。
LMパラメータ第2正規化シフト部3104162は、第2パラメータa2の大きさに応じて、図16のテーブルの導出に用いた所定のビット幅ShiftA2に対して、以下の式により第2正規化シフト値iScaleShiftA2を導出する。導出された第2正規化シフト値iScaleShiftA2は、LM除算値導出部3104163に出力される。
iScaleShiftA2 = Max( 0, Floor( Log2( Abs( a2 ) ) ) - (ShiftA2-1))
式(B−14)
なお、Floor( Log2( Abs( x ) ) )は、a2を32ビットレジスタに格納した際に、ビット列の左側 Leftmost bit から見て 0 が連続している数である Number of Leading Zero (NLZ)を用いて、
Floor( Log2( Abs( x ) ) ) = 32 - NLZ(x)
により求めることができる。なお、64ビットレジスタを用いる場合には、64 - NLZ(x)により導出することができる。
なお、NLZの導出は、比較的複雑な計算が必要になるため、数が少ない方が好ましい。
LM第1パラメータ正規化シフト部3104161は、第2正規化シフト値iScaleShiftA2に応じて、以下の式により第1正規化シフト値iScaleShiftA1を導出する。導出された第1正規化シフト値iScaleShiftA1は、LM除算値導出部3104163に出力される。
iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1) 式(B−13)
なお、offsetA1はここでは10以下を満たす定数とする。
上記では、第1正規化シフト値を第2正規化シフト値に基づいて導出するため、第1正規化パラメータを導出する処理が容易になるという効果を奏する。
なお、LM第1パラメータ正規化シフト部3104161は、第2正規化シフト値iScaleShiftA2に応じずに、以下の式で導出しても良い。
iScaleShiftA1 = Max( 0, Floor( Log2( Abs( a1 ) ) ) - (ShiftA1-1))
ここでShiftA1は、例えば6〜14などの固定値を用いても良いし、ビットデプスに依存する値(例えばbitDepth - 2)などの値を用いても良い。
LM第1パラメータ正規化シフト部3104161、LM第2パラメータ正規化シフト部3104162は、第1パラメータa1を第1正規化シフト値iScaleShiftA1、第2パラメータa2を第2正規化シフト値iScaleShiftA2により右シフトし、正規化第1パラメータa1sと正規化第2パラメータa2sを導出する。
a1s = a1 >> iScaleShiftA1 式(B−15)
a2s = a2 >> iScaleShiftA2 式(B−16)
なお、正則化コストを用いる場合には、上記式において、a1、a2の代わりに正則化コストを減算もしくは加算後のa1´、a2´を用いる。
これにより、正規化第1パラメータa1sと正規化第2パラメータa2sは各々、0から2のiShiftA1乗-1、―2のShiftA2乗から2のShiftA2乗-1の間の値に正規化される。
LM除算値導出部3104163は、a1s / a2sに相当に相当する数を導出する。本実施形態では、整数値として扱うために(1<< ScaleShiftA)倍した数を、テーブルを用いて導出する。
LM除算値導出部3104163は、第1正規化シフト値iScaleShiftA1と第2正規化シフト値iScaleShiftA2の差に基づいて、以下の式によりパラメータaシフト値iScaleShiftAを導出する。
ScaleShiftA = ShiftA1 + iScaleShiftA2 - iScaleShiftA1 - iShift 式(B−18)
ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
ScaleShiftA <= ShiftA1 + iScaleShiftA2 - (iScaleShiftA2 - offsetA1) - iShift
ScaleShiftA <= ShiftA1 + offsetA1 - iShift
offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット〜15ビットであるから、ScaleShiftAは常に0以上になる。
LM除算値導出部3104163は、正規化第2パラメータa2sに応じて定まる逆数テーブル値invTableを参照し、正規化第1パラメータa1sとの積をとりテーブルシフト値(ScaleShiftA)で右シフトすることにより、以下の式によりパラメータaを導出する。
a = (a1s * invTable[a2s]) >> (ScaleShiftA) 式(B−19)
図16は、本実施形態で用いる逆数テーブル値invTable[]である。図16の逆数invTable[x]は、インデックスxが0の場合に0となり、インデックスxが0以外の場合には、所定の定数(2のShiftA2)をxで割って整数化した値から導出される。すなわち、
invTable[x] = 0 (xが0の場合) 式(T−1)
invTable[x] = Floor((2^ ShiftA2 / x/2) / x) (xが0以外の場合) 式(T−2)
なお、Floor(x)は、小数点以下を切り捨てにより整数化する関数である。式(T−1)の代わりに、以下の式(T−2´)を用いても良い。すなわち、除数xの1/2倍を加える丸目調整を行わなくても良い。
invTable[x] = Floor(M / x) (xが0以外の場合) 式(T−2´)
逆数テーブル値invTable[]を用いることにより、a2sでの除算に相当する演算を、a2sの逆数に相当する逆数テーブル値invTable[a2s]との積と、log2(M)に相当する右シフトにより実現することができる。
パラメータaの値は、第1パラメータa1と第2パラメータa2の比(a1/a2をiShiftだけ左シフトした値に相当する)。
導出されたパラメータaは、LMパラメータb導出部310417とLM予測フィルタ部31042に出力される。
LMパラメータb導出部310417は、目的参照画素yの和Yから、入力参照画素xの和Xにパラメータaをかけて固定シフト値iShiftだけ右シフトした値を引いた値を、参照領域の画素数で割ることにより、以下の式によりパラメータbを導出する。
b = ( Y - ( ( a * X ) >> iShift ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift 式(B−20)
なお、iCountShiftの右シフトは、参照領域の画素数Nで割ることに相当する。
(LM予測フィルタ部31042)
LM予測フィルタ部31042は、前述の輝度成分から色差成分を予測するTYPE0や、色差成分から別の色差成分を予測するTYPE1の予測の場合には、LMパラメータ推定部31041が導出した推定パラメータを用いて、LM予測前の入力参照画素における予測ブロックに対応する予測画像predSamples []から、LM予測後の予測画像predSamples´[]を導出する。例えば、パラメータbを式(B−20)により導出する場合には以下の式を用いる。
predSamples´[x][y] = (a * predSamples[x][y] >> iShift)+b 式(P−1)
なお、色コンポーネントが420の場合など、入力参照画素predSamples[x][y]と予測画像predSamples´[]のサンプリングが異なる場合には、サンプリング後の画素をpredSamples[x][y]として用いても良い。例えば、入力参照画素predSamples[x][y]が輝度成分、予測画像predSamples´[]が色差成分の場合には、入力参照画素predSamples[x][y]として、入力参照画素の予測画像を2:1にサブサンプルしたブロック、もしくは、入力参照画素の予測画像にフィルタ処理をしてから2:1にサブサンプルしたブロックを用いても良い。
(LM予測フィルタ部31042´)
LM予測フィルタ部31042の代わりに、LM予測フィルタ部31042の別の構成であるLM予測フィルタ部31042´を用いる。LM予測フィルタ部31042´は、LM予測前の予測画像predSamples []から、以下の式により、LM予測後の予測画像predSamples´[]を導出する。
predSamples´[x][y] = (a * predSamples[x][y] + b >> iShift) 式(P−1´)
なお、LM予測フィルタ部31042´のようにパラメータbを加算してからシフトする場合には、LMパラメータb導出部310417の代わりに、LMパラメータb導出部310417の別の構成LMパラメータb導出部310417´を用いても良い。この場合、目的参照画素yの和Yを固定シフト値iShiftだけ左シフトした値から、目的参照画素xの和Xにパラメータaをかけた値を引いた値を、参照画素の数で割ることにより、以下の式によりパラメータbを導出しても良い。
b = ( (Y << iShift) - ( ( a * X ) ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift 式(B−20´)
(LM予測フィルタ部31042B)
LM予測フィルタ部31042の別の構成として、残差を利用した以下のLM予測フィルタ部31042Bを用いても良い。
LM予測フィルタ部31042Bは、LMパラメータ推定部31041が導出した推定パラメータを用いて、プレーナ予測、DC予測、方向予測などで導出した目的参照信号に対応する対象色成分の予測画像predSamples[x][y]と、入力参照信号に対応する参照色成
分(例えば第1色差成分のCb成分)の残差画像resSamples[x][y]から、目的参照信号に対応するLM予測後の(例えば第2色差成分のCr成分の)予測画像predSamples´[]を導出する。
predSamples´[x][y] = predSamples[x][y] + (a * resSamples[x][y] >> iShift) 式(P−2)
上記のように、LM予測フィルタ部31042Bの動作は、線形予測を利用して参照色コンポーネントでの残差画像から、対象色コンポーネントでの残差画像を予測し、予測した残差画像を用いて、対象色コンポーネントでの予測画像を更新する。
残差画像を利用した構成は、特に色差成分から別の色差成分を予測するTYPE1において有効であるが、輝度成分から色差成分を予測するTYPE0で利用することもできる。
(LMパラメータ推定部31041A)
以下、本実施形態に係るLMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Aを説明する。LMパラメータ推定部31041A(LM正則化コスト加算部310418A)は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算することを特徴とする。
なお、0以上の正則化コストの減算は、0以下の正則化コストの加算と等価であるから、正則化コストの減算の構成は、全て正則化コストの加算で置き換えることができる(以下、同様)。
図19は、LMパラメータa導出部310416が備えるLM正則化コスト加算部310418(LM正則化コスト加算部310418A、LM正則化コスト加算部310418B、LM正則化コスト加算部310418C)の構成を示すブロック図である。LM正則化コスト加算部310418は、LM正則化コスト導出部3104180、LM正則化コスト閾値判定部3104183、LM第1パラメータ正則化コスト加算部3104181から構成される。
LM正則化コスト導出部3104180は、正則化コストacostを導出する。導出した正則化コストacostを、第1パラメータコストa1costNとして用いる。LM正則化コスト導出部3104180の詳細については後述する。
本実施形態に係るLMパラメータ推定部31041A(LM正則化コスト加算部310418A)は、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較し、第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを減算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータ正則化コストa1costNを減算しない。
a1´ = a1 - a1costN
LM正則化コスト加算部310418Aの動作を、図21のS1101、S1102を用いてフローチャートを用いて、再度、説明する。
S1101 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、S1102に遷移する。
S1102 LMパラメータa導出部310416は、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを減算する。減算後のパラメータa1をa1´とも呼ぶ。
LM正則化コスト加算部310418Bの動作はここで終了する。
なお、LM正則化コスト加算部310418Bは、第2パラメータa2に正則化コストa2costNを加算しないが、後述のLM正則化コスト加算部310418B2のように、S1202に続いてS1203を実行し、第2パラメータa2に第2パラメータ正則化コストa2costNを加算しても良い。
S1103 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。加算後の第2パラメータa2をa2´とも呼ぶ。
なお、正則化コストの加算は、上記のように、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で、第1パラメータa1、第2パラメータa2を導出した後に別の装置であるLM正則化コスト加算部310418で行うのではなく、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で第1パラメータa1、第2パラメータa2を導出する際に、同時に正則化コストを加算しても良い。この構成のLMパラメータ推定部31041は、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415において、前述の式(B−7)、式(B−7´)、式(B−7´´)の代わりに、各々、以下の式(BC−7)、式(BC−7´)、式(BC−7´´)の式を用いる。
a1 = (XY<<iCountShift) - X*Y - a1costN; 式(BC−7)
a1 = XY - ((aveY * aveX)<<iCountShift) - a1costN; 式(BC−7´)
a1 = XY - ((aveY * aveX)<<iCountShift) + (aveX * remY) + (aveY * remX) - a1costN; 式(BC−7´´)
(具体例)
以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C−1D)参照)。例えば、a1costNがa2のk倍をLで割った以下の値である場合、
a1costN = k * a2 / L
正則化コストを加算後(減算後)の第1パラメータa1´、第2パラメータa2´を用いると、a1/a2に相当するパラメータaは以下の式で導出される。
a1´/a2´ = (a1 + a1costN) / a2 = a1/a2 - k / L。
ここでk=1、L=32の場合には、k / L = 0.0315であり、正則化コストの効果は、a1が閾値THN未満である場合に、パラメータa(a1/a2)を小さな値のオフセット0.0315だけ減算することと等価である。
なお、LM正則化コスト閾値判定部3104183Aは、閾値THNとして、式(D−1)のように0もしくは、式(D−1´)のようにa2の倍数に設定すると良いことが、発明者らの実験により明らかになっている。
THN = 0 式(D−1)
THN = -(a2 >> tshift2) 式(D−1´)
(説明)
発明者の知見では、最小2乗法により導出されるパラメータaは、雑音などにより、予測画像の生成に最適な値よりも、絶対値が小さくなることが多い(最適な値よりも0に近い側になる)ことが分かった。正則化コストによって、パラメータaを調整する場合には、以下の2通りがある。パラメータaを正の方向に近づけて絶対値を大きく場合には、0以上の正則化コストをパラメータa1に加算する必要があるのに対して、パラメータaを負の方向に近づけて絶対値を大きくするには、0以上の正則化コストをパラメータa1から減算する必要がある。このように、パラメータaの符号により、正則化コストを加算するか減算するかを変更する必要がある。そのためには、正則化コストで第1パラメータa1の大きさを調整する前にパラメータaの符号を判定する必要がある。この判定のために、本実施形態に係るLMパラメータ推定部31041(変形例を含む)は、第1パラメータa1の符号、もしくは、第1パラメータa1と所定の閾値との比較結果を利用する。
パラメータaは、a1/a2の整数倍(1<<iShift倍)に相当する値として導出される。第2パラメータa2は常に0以上であるから、パラメータaの符号(=a1/a2の符号)は、第1パラメータa1の符号と等しい。従って、パラメータaの符号及び大きさは、第1パラメータa1と所定の閾値との比較で導出できる。
LMパラメータ推定部31041は、例えばa1がTHN未満(ここではTHN=0)である場合に、a1から正則化コストa1costNだけ減算することにより、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向(ここでは負の方向)に近づけることが可能であることが理解できる。上記、構成により、LMパラメータ推定部31041は、雑音に強い線形予測パラメータを導出することができ、予測画像を生成する際の予測精度を向上させる効果を奏する。
なお、a1costN、a1costP、a2costN、a2costPは、各々、パラメータaを概略負(Negative)の方向に近づけるa1への正則化コスト、パラメータaを概略負の方向に近づけるa2への正則化コスト、パラメータaを概略正(Positive)の方向に近づけるa1への正則化コスト、パラメータaを概略正の方向に近づけるa2への正則化コストを意味する。これらを区別しない場合には単に、acost、a1cost、a2cost、acostN、acostPなどを用いる。
なお、0から遠い方向に近づけるという意味では、所定の閾値としてTHN=0が好適である。すなわち、LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較し、第1パラメータa1が0以上の閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算する構成が好適である。
しかしながら、画像によってはTHN=0に近い別の値も好適である。例えば、THN = -a2>>tshift(ここではtshiftは2〜8の定数)など。例えばtshift = 4の場合には、a1が、-a2/16未満、つまりa1/a2が-1/16未満の場合に、0から遠い方向(ここでは負の方向)に近づけることが可能である。パラメータaの値が0に近い場合に無理して拘束項をきかせないことが可能である。また、逆に、THN = a2>>tshift(ここではtshiftは2〜8の定数)とすることも可能である。例えばtshift = 4の場合には、a1が、a2/16未満、つまりa1/a2が1/16未満の場合に、0から遠い方向(ここでは負の方向)に近づけることが可能である。ここでは、パラメータaが0に非常に近い正の場合にも正則化コストによってパラメータaの値を負の方向に近づけることができる。
なお、本実施形態では、LMパラメータ推定部31041は、パラメータaが負となる場合において、正則化コストを用いてパラメータaの値をさらに負の方向に近づけることにより、パラメータaを0から通い方向に近づけたが、パラメータaが正となる場合を考慮して、正則化コストを用いてパラメータaの値を正の方向に近づけることにより、パラメータaを0から遠い方向に近づける場合も可能である。この例を、LMパラメータ推定部31041Bとして説明する。さらに、パラメータaが負と正の場合の両方を考慮した構成をLMパラメータ推定部31041Cとして説明する。
(LMパラメータ推定部31041B)
以下、LMパラメータ推定部31041一つの構成としてLMパラメータ推定部31041Bを説明する。LMパラメータ推定部31041B(LM正則化コスト加算部310418B)は、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に、第1パラメータa1に0以上の第1パラメータ正則化コストa1costPを加算することを特徴とする。
LM正則化コスト加算部310418Bの動作を、図22のフローチャートのS1201、S1202を用いて、再度、説明する。
S1201 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、S1202に遷移する。
S1202 第1パラメータLM正則化コスト加算部3104181は、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。加算後のパラメータa1をa1´とも呼ぶ。
LM正則化コスト加算部310418Bの動作はここで終了する。
なお、LM正則化コスト加算部310418Bは、第2パラメータa2に正則化コストa2costPを加算しないが、後述のLM正則化コスト加算部310418B2のように、S1202に続いてS1203を実行し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算しても良い。
S1203 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータa2に第2パラメータ正則化コストa1costPを加算する。加算後のパラメータa2をa2´とも呼ぶ。
LM正則化コスト導出部3104180は、正則化コストacostを導出する。上述の式(C−1A)から式(C−1D2)の何れか一項、もしくは、その組み合わせにより導出したacostを、第1パラメータコストの第1コストa1costPとして導出する。
本実施形態に係るLM正則化コスト加算部310418Bは、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183Bは、第1パラメータa1と0以上の閾値THPを比較し、第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上の)場合に、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。逆に、第1パラメータa1が閾値THP以下(もしくは閾値THP未満)の場合には、第1パラメータ正則化コストa1costPを加算しない。
a1 = a1 + a1costP
なお、正則化コストの加算は、LM第1パラメータ導出部310414および、LM第2パラメータ導出部310415で行っても良い。導出式は、既に説明した式(BC−7)、式(BC−7´)、式(BC−7´´)の式において、a1costNをa1costPに置き替えた式となる。
(具体例)
以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C−1D)参照)。
a1costP = k * a2 / L
(a1 + a1costP) / a2 = a1/a2 - k / L。
k=1、L=32の場合には、k / L = 0.0315であるから、正則化コストは、a1が閾値THPより大きい場合に、パラメータa(a1/a2)を小さな値のオフセット0.0315だけ加算することと等価である。従って、例えばa1がTHPより大きい(ここではTHP=0)である場合に、正則化コストa1costPをa1に加算することにより、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向(ここでは正の方向)に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。
なお、LM正則化コスト閾値判定部3104183Bは、閾値THPとして、式(D−2)のように0もしくは、式(D−2´)のようにa2の倍数に設定すると良いことが、発明者らの実験により明らかになっている。
THP = 0 式(D−2)
THP = a2 >> tshift2 式(D−2´)
(LMパラメータ推定部31041C)
以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041Cを説明する。LMパラメータ推定部31041Cは、正則化コストの加算(LM正則化コスト加算部310418)において、LMパラメータ推定部31041AとLMパラメータ推定部31041Bを組み合わせた構成である。LMパラメータ推定部31041Cは、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に、第1パラメータa1に0以上の第1コストa1costNを減算し、さらに、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に、第1パラメータa1に0以上の第2コストa1costPを加算することを特徴とする。
LMパラメータ推定部31041C(LM正則化コスト加算部310418C)の動作を、図23のフローチャートを用いて、再度、説明する。
S1301 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THNを比較する。第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、S1302に遷移する。
S1302 第1パラメータLM正則化コスト加算部3104181は、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算する。加算後のパラメータa1をa1´とも呼ぶ。
LM正則化コスト加算部310418Cは、S1303をスキップしてS1304に遷移する。なお、LM正則化コスト加算部310418Cは、S1303の動作を行わないが、後述のLM正則化コスト加算部310418C2のように、S1302に続いてS1303を実行し、第2パラメータa2にa2パラメータ正則化コストa2costNを加算する構成でも良い。
S1303 LM第2パラメータ正則化コスト加算部3104182は、LM第2パラメータ正則化コスト加算部3104182を用いて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。加算後のパラメータa2をa2´とも呼ぶ。
S1304 LM正則化コスト閾値判定部3104183は、第1パラメータa1と閾値THPを比較する。第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、S1305に遷移する。
S1305 第1パラメータLM正則化コスト加算部3104181は、LM第1パラメータ正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。加算後のパラメータa1をa1´とも呼ぶ。
LM正則化コスト加算部310418Cの動作はここで終了する。なお、LM正則化コスト加算部310418Cは、S1306の動作を行わないが、後述のLM正則化コスト加算部310418C2のように、S1305に続いてS1306を実行し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算する構成でも良い。
S1306 LM第2パラメータ正則化コスト加算部3104182は、第2パラメータLM正則化コスト加算部3104182を用いて、第2パラメータa2に第2パラメータ正則化コストa2costPを加算する。加算後のパラメータa2をa2´とも呼ぶ。
LM正則化コスト導出部3104180は、正則化コストacostを導出する。例えば、既に説明した式(C−1A)から式(C−1D2)の何れか一項、もしくは、その組み合わせにより導出する。
本実施形態に係るLM正則化コスト加算部310418Cは、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1及び第2パラメータa2に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183Cは、第1パラメータa1と0以下の閾値THNを比較し、第1パラメータa1が閾値THNより小さい(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1から第1パラメータ正則化コストa1costNを減算する。それ以外の場合、LM正則化コスト閾値判定部3104183Cは、第1パラメータa1と0以上の閾値THPを比較し、第1パラメータa1が閾値THPより大きい(もしくは第1パラメータa1が閾値THP以上)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costPを加算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータ正則化コストa1costPを加算しない。
ここで、減算する場合に用いる正則化コストa1costNと加算する場合の正則化コストa1costPとして、全て同じ値を用いても良い(a1costN = a1costP = acost)し、異なる値を用いても良い。例えば、加算する場合の正則化コストa1costPを減算する場合の第1パラメータ正則化コストa1costN以下として以下のように導出しても良い。
a1costN = (kM*a2)>>kshiftM
a1costP = (kP*a2)>>kshiftP
ここでkM>kPまたはkshiftP > kshiftM。例えばkM=kP=1、kshiftM=5、kshiftP=6とすれば良い。
以上までに説明したLMパラメータ推定部31041A、LMパラメータ推定部31041B、LMパラメータ推定部31041Cは、パラメータaを0から離れる側に近づけると良い、という発明者の知見に基づいていたが、さらに詳細に検討すると、パラメータaの絶対値が十分に大きい場合には、パラメータaをさらに0から遠い側に近づけると、パラメータaの絶対値が本来の最適な値よりも大きくなりすぎる場合がある、ことが分かった。これは、雑音の影響として、基本的にはパラメータaが小さくなる可能性が比較的大きいが、場合によって、雑音の影響でパラメータaが大きくなっていることがあるからであり、特に最小2乗法で求められる正則化コストなしで導出されるパラメータaが十分に大きい場合には、その確率が高くなる。以下に説明するLMパラメータ推定部31041A2、LMパラメータ推定部31041B2、LMパラメータ推定部31041C2では、構成が若干複雑になる代わりに、これらの問題を解決する。
LMパラメータ推定部31041A、LMパラメータ推定部31041B、LMパラメータ推定部31041Cは、LM正則化コストとして第1パラメータa1に正則化超す音を加算もしくは減算したが、LMパラメータ推定部31041A2、LMパラメータ推定部31041B2、LMパラメータ推定部31041C2は、第1パラメータa1に正則化コストを加算もしくは減算しながら同時に第2パラメータa2に正則化コストを加算する構成になる。
図20は、LMパラメータ推定部31041が備えるLM正則化コスト加算部310418(LM正則化コスト加算部310418A2、LM正則化コスト加算部310418B2、LM正則化コスト加算部310418C2)の構成を示すブロック図である。LM正則化コスト加算部310418は、LM正則化コスト導出部3104180、LM正則化コスト閾値判定部3104183、LM第1パラメータ正則化コスト加算部3104181、LM第2パラメータ正則化コスト加算部3104182から構成される。
図20のLMパラメータ推定部31041は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする。
(LMパラメータ推定部31041A2)
以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041A2を説明する。既に説明したLMパラメータ推定部31041Aでは、第1パラメータa1に第1パラメータ正則化コストa1costNを減算していたが、LMパラメータ推定部31041A2では、第1パラメータa1に正則化コストa1costNを減算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
LMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Aで説明したので省略する。
LM正則化コスト加算部310418A2は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合(S1101)に、第1パラメータa1に0以上の第1コストa1costNを減算(S1102)し、第2パラメータa2に0以上の第2コストa2costNを加算する(S1103)。
第1パラメータa1にa1costNを減算し、第2パラメータa2にa2costNだけ加算する場合、パラメータaは、-a1costN/a2costNに近づくように補正がかかる。
LM正則化コスト導出部3104180は、正則化コストacostを導出する。例えば、既に説明した式(C−1A)から式(C−1D2)の何れか一項、もしくは、その組み合わせにより導出する。さらに正則化コストacostから、a1costN及びa2costNを以下の式により導出する。
a1costN = (acost>>kshift)
a2costN = acost
上記の場合、パラメータaは、-a1costN/a2costN=-(1>>kshift)に近づくように補正がかかる。具体的には、1、0.5、0.25、0.125に近づくようなkshift=0、1、2、3が適当である。
なお、シフトにより計算可能な上記正則化項は計算が容易であるが、正則化コストは上記に限定されない。例えば、以下のようにすれば、k>>kshiftに近づくように補正がかかる。
a1costN = (k*acost)>>kshift
a2costN = acost
例えば、k=17、kshift=5とすれば、-17/32=-0.53125に近づけるような正則化項が導入できる。
上記のように、a2costNは、上記コストa1costN以上であることが好適である、すなわち、a1costN / a2costNが1以下となることが好適である。
本実施形態に係るLMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)は、第1パラメータa1の大きさと閾値との判定を行い、判定に基づいて、第1パラメータa1及び第2パラメータa2に正則化コストを加算する。より具体的には、LM正則化コスト閾値判定部3104183A2は、第1パラメータa1と0以上の閾値THNを比較し、第1パラメータa1が閾値THN未満(もしくは第1パラメータa1が閾値THN以下)の場合に、第1パラメータLM正則化コスト加算部3104181を用いて、第1パラメータa1に第1パラメータ正則化コストa1costNを加算し、第2パラメータa2に第2パラメータ正則化コストa2costを加算する。逆に、第1パラメータa1が閾値THN以上の場合には、第1パラメータa1、第2パラメータa2に正則化コストを加算しない。
上記構成のLMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costNを減算し、第2パラメータa2に第2パラメータ正則化コストa2costNを加算することにより、パラメータaの値を、最小2乗法で導出される値よりも-a1costN / a2costNに近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。LM正則化コスト加算部310418Aは単純にパラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけるだけであったのに対して、LMパラメータ推定部31041A2(LM正則化コスト加算部310418A2)は、第2パラメータa2にも第2パラメータ正則化コストa2costNを加算することにより、-a1costN / a2costNに近づける。輝度色差予測に適した傾きaは、aが負の場合には、0と−1の間であるので、LM正則化コスト加算部310418Bのように、最小2乗法で導出される値が負の値として十分に小さい(-a1costN / a2costNよりも小さい)場合に、さらに小さくすることによる弊害をなくすことができ、LMパラメータ推定部31041A(LM正則化コスト加算部310418A)よりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
(具体例)
以下、正則化コストa1costNに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C−1D)参照)。
発明者の実験では、正則化コストとして、例えば、例1から例4の以下の組み合わせが好ましいことが実験で得られている。
例1:acost=(a2>>4)、kshift = 1
a1costN = (k*acost)>>kshift= a2>>5
a2costN = acost = a2>>4
例2:acost=(a2>>3)、kshift = 1
a1costN = (k*acost)>>kshift= a2>>4
a2costN = acost = a2>>3
例3:acost=(a2>>3)、kshift = 2
a1costN = (k*acost)>>kshift= a2>>5
a2costN = acost = a2>>3
例4:acost=(a2>>2)、kshift = 2
a1costN = (k*acost)>>kshift= a2>>4
a2costN = acost= a2>>2
なお、上記、正則化コストの組み合わせは、好適な効果を上げることが確認されているが、本発明の形態は上記の値に限定されない。
(LMパラメータ推定部31041B2)
以下、LMパラメータ推定部31041の一つの構成としてLMパラメータ推定部31041B2を説明する。既に説明したLMパラメータ推定部31041Bでは、第1パラメータa1に第1パラメータ正則化コストa1costNを加算していたが、LMパラメータ推定部31041B2では、第1パラメータa1に第1パラメータ正則化コストa1costNを加算するのに加えて、第2パラメータa2に第2パラメータ正則化コストa2costNを加算する。
LM正則化コスト加算部310418B2の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Bで説明したので省略する。
本実施形態に係るLM正則化コスト加算部310418B2は、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に(S1201)、第1パラメータa1に0以上の第1コストa1costPを減算し(S1202)、第2パラメータa2に0以上の第2コストa2costPを加算する(S1203)。
上記構成のLMパラメータ推定部31041B2(LM正則化コスト加算部310418B2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costPを加算し、第2パラメータa2に第2パラメータ正則化コストa2costPを加算することにより、パラメータaの値を、最小2乗法で導出される値よりもa1costP / a2costPに近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。LMパラメータ推定部31041B(LM正則化コスト加算部310418B)は単純にパラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけるだけであったのに対して、LMパラメータ推定部31041B2(LM正則化コスト加算部310418B2)は、第2パラメータa2にも第2パラメータ正則化コストa2costPを加算することにより、a1costP / a2costPに近づける。色コンポーネント間予測において、例えば輝度成分から色差成分を予測する場合に適した傾きaは、aが正の場合には、多くの場合0以上1未満の値であるので、LM正則化コスト加算部310418Bのように、最小2乗法で導出される値が十分に大きい(a1costP / a2costPよりも大きい)場合に、さらに大きくすることによる弊害をなくすことができ、LMパラメータ推定部31041Bよりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
(具体例)
以下、正則化コストa1costPに具体的な値を用いた場合の例を説明する。ここでは、a1costNを第2パラメータa2に基づいて導出する(LM正則化コスト導出部3104180D、式(C−1D)参照)。
a1costN = a2>>5
a2costN = a2>>4
上記のように、a2costPは、上記コストa1costP以上であることが好適である、すなわち、a1costP / a2costPが1以下となることが好適である。
(LM正則化コスト加算部310418C2)
以下、LM正則化コスト加算部310418の一つの構成としてLM正則化コスト加算部310418C2を説明する。既に説明したLM正則化コスト加算部310418Cでは、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算もしくは加算していたが、LM正則化コスト加算部310418C2では、第1パラメータa1に第1パラメータ正則化コスト(a1costN及びa1costP)を減算及び加算するのに加えて、第2パラメータa2に第2パラメータ正則化コスト(a2costN及びa2costP)を加算する。
LM正則化コスト加算部310418C2の動作は、図21のフローチャートの通りである。図21の各ステップの詳細は、既にLM正則化コスト加算部310418Cで説明したので省略する。
本実施形態に係るLM正則化コスト加算部310418C2は、第1パラメータa1が所定の閾値THNより小さい場合、もしくは、第1パラメータa1が所定の閾値THN以下の場合に(S1301)、第1パラメータa1に0以上の第1コストa1costNを減算し(S1302)第2パラメータa2に0以上の第2コストa2costNを加算する(S1303)、さらに、第1パラメータa1が所定の閾値THPより大きい場合、もしくは、第1パラメータa1が所定の閾値THP以上の場合に(S1304)、第1パラメータa1に0以上の第3コストa1costPを加算し(S1305)第2パラメータa2に0以上の第4コストa2costPを加算する(S1306)ことを特徴とする。
上記構成のLMパラメータ推定部31041C2(LM正則化コスト加算部310418C2)によれば、第1パラメータa1に第1パラメータ正則化コストa1costNを減算もしくはa1costPを加算するだけでなく、第2パラメータa2に第2パラメータ正則化コストa2costNもしくはa2costPを加算することにより、パラメータaの値を、最小2乗法で導出される値よりも絶対値としてa1costN / a2costN(もしくはa1costP/a2costP)に近い方向に近づけることが可能であり、予測画像を生成する際の予測精度を向上させる効果を奏する。輝度色差予測に適した傾きaは、aが正の場合には、多くの場合絶対値として0以上1未満の値であるので、LM正則化コスト加算部310418Cのように、最小2乗法で導出される値が絶対値として十分に大きい(a1costP / a2costPよりも大きい)場合に、さらに大きくすることによる弊害をなくすことができ、LMパラメータ推定部31041C(LM正則化コスト加算部310418C)よりもさらに精度の良い線形予測パラメータを導出することができる効果を奏する。
(LM正則化コスト導出部3104180)
以下、LMパラメータ推定部31041の備えるLM正則化コスト導出部3104180の詳細を説明する。LM正則化コスト導出部3104180は、例えば、以下の式(C−1A)から式(C−1D2)の何れか一項、もしくは、その組み合わせにより導出しても良い。
acost = XX >> ashift 式(C−1A)
acost = XY >> ashift 式(C−1B)
acost = 1<<(2*bitDepth)*N >> ashift 式(C−1C)
acost = 1<<(2*bitDepth)<<CountShift >> ashift 式(C−1C2)
acost = k*a2 >> kshift 式(C−1D)
acost = min(k*a2 >> kshift, acost0) 式(C−1D2)
なお、式(C−1A)から式(C−1D)のashiftは例えば発明者らの実験では6〜12が好適であることが確認されている。式(C−1C)のNは、入力参照信号の数(1<<iCountShift)を用いても良いし、入力参照信号の数が多くの場合8〜16であれば、8から16の数を用いても良い。式(C−1D2)のkとkshiftについては後述する。
(LM正則化コスト導出部3104180A)
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Aを説明する。LM正則化コスト導出部3104180Aは、入力参照信号xと入力参照信号xの積の和XXに基づいて正則化コストを導出する。この値は常に0以上になる。
acost = XX >> ashift 式(C−1A)
第2パラメータa2は、既に説明した式a2 = XX - ((aveX * aveX)<<iCountShift) のように入力参照信号xと入力参照信号xの積の和XXから所定の値を減算することにより計算される。従って、入力参照信号xと入力参照信号xの積の和XXにより導出される正則化コストは、第2パラメータa2と、同じレベルの値域であることが期待でき、正則化コストとして適当である。本構成のLM正則化コスト導出部3104180Aは、入力参照画素xと目的参照画素y[]の値域が比較的等しい場合に適当な正則化コストが導出できるという効果を奏する。
(LM正則化コスト導出部3104180B)
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Bを説明する。LM正則化コスト導出部3104180Bは、入力参照信号xと目的参照信号yの積の和XYに基づいて正則化コストを導出する。この値は常に0以上になる。
acost = XY >> ashift 式(C−1B)
第1パラメータa1は、既に説明した式XY - ((aveY * aveX)<<iCountShift)のように入力参照信号xと目的参照信号yの積の和XYから所定の値を減算することにより(計算される。従って、XYにより導出される正則化コストは、第1パラメータa1と、同じレベルの値域であることが期待でき、正則化コストとして適当である。入力参照画素x[]と目的参照画素y[]の積の和から導出されるXYは、入力参照画素xの値域や、目的参照画素y[]の値域によらずに適当な正則化コストが導出できるという効果を奏する。
(LM正則化コスト導出部3104180C)
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Cを説明する。LM正則化コスト導出部3104180Cは、bitDepthに基づいて正則化コストを導出する。この値は常に0以上になる。
acost = 1<<(2*bitDepth)*N >> ashift 式(C−1C)
例えば、入力参照画素x[]及び目的参照画素y[]のビットデプス(ビット深度)がbitDepthである場合、x及びyはおおよそ1<<(bitDepTHN)周辺の数である場合が多い。具体的にはbitDepth=8の場合、つまり、輝度及び色差が0から255の値である場合には、輝度、色差の値として128の周辺にあることが比較的多い。従って、実際の入力参照画素x[]や目的参照画素y[]を用いずとも、入力参照画素x及び目的参照画素yとしてビット深度に依存する値(x[i]=y[i]=1<<(bitDepTHN))を代入して、既に説明した式(C−1A)、式(C−1B)を用いれば、適当な正則化コストが導出されることが期待される。LM正則化コスト導出部3104180Cは、この考えに基づいて、以下の式で正則化コストを導出する。
acost = 1<<(2*bitDepth)<<CountShift >> ashift 式(C−1C2)
LM正則化コスト導出部3104180CのbitDepthに基づく方法では、入力参照画素xや目的参照画素y[]を用いないため、比較的小さい演算数で正則化コストが導出できるという効果を奏する。
(LM正則化コスト導出部3104180D)
以下、LM正則化コスト導出部3104180の一つの構成としてLM正則化コスト導出部3104180Dを説明する。LM正則化コスト導出部3104180Dは、第2パラメータa2に基づいて正則化コストを導出する。例えば以下の式で導出する。この値は常に0以上になる。
acost = k*a2 >> kshift 式(C−1D)
例えば、k=1、kshift = 2。
第2パラメータa2は、入力参照画素x[]の分散に相当する。正則化コストは第1パラメータa1及び第2パラメータa2に加算もしくは減算されるが、第2パラメータa2が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として値が大きく変化しすぎる、課題が生じる。本実施形態では、第2パラメータa2に基づいて正則化コストを導出することにより、正則化コストが大きく効きすぎることを抑制する効果を奏する。
(LM正則化コスト導出部3104180D2)
さらに、第2パラメータa2に基づいて正則化コストを導出するLM正則化コスト導出部3104180Dは、XX、XY、bitDepthなどで導出された正則化コストacostを、a2から導出される値で上限をクリップすることで、正則化コストacostを導出しても良い(LM正則化コスト導出部3104180D2)。この値は常に0以上になる。
正則化コストは第1パラメータa1及び第2パラメータa2に加算もしくは減算されるが、第2パラメータa2が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として値が大きく変化しすぎる、という問題が生じる。従って、正則化コストacost自体を第2パラメータa2の大きさに合わせて導出することが適当である。これにより適した正則化コストが大きく効きすぎることを抑制する効果を奏する。
acost = min(k*a2 >> kshift, acost0) 式(C−1D2)
ここでacost0は、上記までに説明した、LM正則化コスト導出部3104180A、LM正則化コスト導出部3104180B、LM正則化コスト導出部3104180Cの何れかで導出される正則化コストacostである。LM正則化コスト導出部3104180Aは、ベースとなるacost0と、上限を定めるa2から導出される値(ここではk*a2 >> kshift)の最大値を導出することで、導出される正則化コストのついてa2の大きさに応じたクリップを行うことができる。一般に、正則化コストは、雑音などによりa1、a2の信頼度が低い場合に、推定パラメータを安定させるために加算もしくは減算するパラメータであるが、xの分散(ΣXX-ΣXX/N)に相当するa2の値が比較的小さい場合に、第2パラメータa2に比べて大きすぎる正則化コストacostをa2に加算する場合、結果として推定される線形予測パラメータに対して正則化コストが効きすぎるという問題が生じる。従って、正則化コストacostが足される項である第2パラメータa2の大きさに合わせることが適当である。これにより正則化項が大きく効きすぎることを抑制する効果を奏する。
発明者らの実験では、式(C−1D2)が好適な予測精度を有するが、式(C−1D)も近い精度を実現することができる。式(C−1D)の方が正則化項の導出が容易であることから、式(C−1D)を用いることも有効である。
逆量子化・逆DCT部311は、エントロピー復号部301から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部311は、求めたDCT係数について逆DCT(Inverse Discrete Cosine Transform、逆離散コサイン変換)を行い、復号残差信号を算出する。逆量子化・逆DCT部311は、算出した復号残差信号を加算部312および残差格納部313に出力する。
加算部312は、インター予測画像生成部309及びイントラ予測画像生成部310から入力された予測ピクチャブロックPと逆量子化・逆DCT部311から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部312は、生成した参照ピクチャブロックを参照ピクチャメモリ306に記憶し、生成した参照ピクチャブロックをピクチャ毎に統合した復号レイヤ画像Tdを外部に出力する。
(インター予測パラメータ復号部の構成)
次に、インター予測パラメータ復号部303の構成について説明する。
図6は、本実施形態に係るインター予測パラメータ復号部303の構成を示す概略図である。インター予測パラメータ復号部303は、インター予測パラメータ復号制御部3031、AMVP予測パラメータ導出部3032、加算部3035及びマージ予測パラメータ導出部3036を含んで構成される。
インター予測パラメータ復号制御部3031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー復号部301に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを抽出する。
インター予測パラメータ復号制御部3031が、あるシンタックス要素を抽出すると表現する場合は、あるシンタックス要素の復号をエントロピー復号部301に指示し、該当のシンタックス要素を符号化データから読み出すことを意味する。ここで、マージフラグが示す値が1、すなわち、マージ予測モードを示す場合、インター予測パラメータ復号制御部3031は、マージ予測に係る予測パラメータとして、マージインデックスmerge_idxを抽出する。インター予測パラメータ復号制御部3031は、抽出したマージインデックスmerge_idxをマージ予測パラメータ導出部3036に出力する。
マージフラグmerge_flagが0、すなわち、AMVP予測モードを示す場合、インター予測パラメータ復号制御部3031は、エントロピー復号部301を用いて符号化データからAMVP予測パラメータを抽出する。AMVP予測パラメータとして、例えば、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。インター予測パラメータ復号制御部3031は、抽出したインター予測フラグinter_pred_idcから導出した予測リスト利用フラグpredFlagLXと、参照ピクチャインデックスrefIdxLXをAMVP予測パラメータ導出部3032及び予測画像生成部308(図5)に出力し、また予測パラメータメモリ307(図5)に記憶する。インター予測パラメータ復号制御部3031は、抽出したベクトルインデックスmvp_LX_idxをAMVP予測パラメータ導出部3032に出力する。インター予測パラメータ復号制御部3031は、抽出した差分ベクトルmvdLXを加算部3035に出力する。
図7は、本実施形態に係るマージ予測パラメータ導出部3036の構成を示す概略図である。マージ予測パラメータ導出部3036は、マージ候補導出部30361とマージ候補選択部30362を備える。マージ候補格納部303611は、マージ候補導出部30361から入力されたマージ候補を格納する。なお、マージ候補は、予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLXを含んで構成されている。マージ候補格納部303611において、格納されたマージ候補には、所定の規則に従ってインデックスが割り当てられる。マージ候補導出部30361は、空間マージ候補導出部3036131と時間マージ候補導出部3036132と結合マージ候補導出部3036133とゼロマージ候補導出部3036134を含んで構成される。
空間マージ候補導出部3036131は、所定の規則に従って、予測パラメータメモリ307が記憶している予測パラメータ(予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLX)を読み出し、読み出した予測パラメータをマージ候補として導出する。読み出される予測パラメータは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係る予測パラメータである。導出されたマージ候補はマージ候補格納部303611に格納される。
時間マージ候補導出部3036132は、復号対象ブロックの右下の座標を含む参照画像中のブロックの予測パラメータを予測パラメータメモリ307から読みだしマージ候補とする。参照画像の指定方法は、例えば、スライスヘッダに置いて指定された参照ピクチャインデックスrefIdxLXでも良いし、復号対象ブロックに隣接するブロックの参照ピクチャインデックスrefIdxLXのうち最小のものを用いて指定しても良い。導出されたマージ候補はマージ候補格納部303611に格納される。
結合マージ候補導出部3036133は、既に導出されマージ候補格納部303611に格納された2つの異なる導出済マージ候補のベクトルと参照ピクチャインデックスを、それぞれL0、L1のベクトルとして組み合わせることで結合マージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
ゼロマージ候補導出部3036134は、参照ピクチャインデックスrefIdxLXが0であり、ベクトルmvLXのX成分、Y成分が共に0であるマージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。
マージ候補選択部30362は、マージ候補格納部303611に格納されているマージ候補のうち、インター予測パラメータ復号制御部3031から入力されたマージインデックスmerge_idxに対応するインデックスが割り当てられたマージ候補を、対象PUのインター予測パラメータとして選択する。マージ候補選択部30362は選択したマージ候補を予測パラメータメモリ307(図5)に記憶するとともに、予測画像生成部308(図5)に出力する。
図8は、本実施形態に係るAMVP予測パラメータ導出部3032の構成を示す概略図である。AMVP予測パラメータ導出部3032は、ベクトル候補導出部3033と予測ベクトル選択部3034を備える。ベクトル候補導出部3033は、参照ピクチャインデックスrefIdxに基づいて予測パラメータメモリ307(図5)が記憶するベクトル(動きベクトル又は変位ベクトル)をベクトル候補mvpLXとして読み出す。読み出されるベクトルは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係るベクトルである。
予測ベクトル選択部3034は、ベクトル候補導出部3033が読み出したベクトル候補のうち、インター予測パラメータ復号制御部3031から入力されたベクトルインデックスmvp_LX_idxが示すベクトル候補を予測ベクトルmvpLXとして選択する。予測ベクトル選択部3034は、選択した予測ベクトルmvpLXを加算部3035に出力する。
図9は、ベクトル候補の一例を示す概念図である。図9に示す予測ベクトルリスト602は、ベクトル候補導出部3033において導出される複数のベクトル候補からなるリストである。予測ベクトルリスト602において、左右に一列に配列された5個の長方形は、それぞれ予測ベクトルを示す領域を示す。左端から2番目のmvp_LX_idxの真下の下向きの矢印とその下のmvpLXは、ベクトルインデックスmvp_LX_idxが、予測パラメータメモリ307においてベクトルmvpLXを参照するインデックスであることを示す。
候補ベクトルは、復号処理が完了したブロックであって、復号対象ブロックから予め定めた範囲のブロック(例えば、隣接ブロック)を参照し、参照したブロックに係るベクトルに基づいて生成される。なお、隣接ブロックには、対象ブロックに空間的に隣接するブロック、例えば、左ブロック、上ブロックの他、対象ブロックに時間的に隣接するブロック、例えば、対象ブロックと同じ位置で、表示時刻が異なるブロックから得られたブロックを含む。
加算部3035は、予測ベクトル選択部3034から入力された予測ベクトルmvpLXとインター予測パラメータ復号制御部から入力された差分ベクトルmvdLXを加算してベクトルmvLXを算出する。加算部3035は、算出したベクトルmvLXを予測画像生成部308(図5)に出力する。
図10は、インター予測パラメータ復号制御部3031の構成を示す図である。インター予測パラメータ復号制御部3031は、追加予測フラグ復号部30311、マージインデックス復号部30312、ベクトル候補インデックス復号部30313、及び図示しない、分割モード復号部、マージフラグ復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル差分復号部を含んで構成される。分割モード復号部、マージフラグ復号部、マージインデックス復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル候補インデックス復号部30313、ベクトル差分復号部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを復号する。
追加予測フラグ復号部30311は、追加予測である照度予測を行うか否かを示すフラグic_enable_flagを復号し、インター予測画像生成部309に出力する。
変位ベクトル取得部は、対象PUに隣接するブロックが変位ベクトルを持つ場合には、その変位ベクトルを予測パラメータメモリ307から抽出し、予測パラメータメモリ307を参照し、対象PUに隣接するブロックの予測フラグpredFlagLX、参照ピクチャインデックスrefIdxLXとベクトルmvLXを読み出す。
(インター予測画像生成部309)
図11は、本実施形態に係るインター予測画像生成部309の構成を示す概略図である。インター予測画像生成部309は、動き補償部3091、照度補償部3093、重み予測部3094を含んで構成される。
(動き補償)
動き補償部3091は、インター予測パラメータ復号部303から入力された、予測リスト利用フラグpredFlagLX、参照ピクチャインデックスrefIdxLX、動きベクトルmvLXに基づいて、参照ピクチャメモリ306から、参照ピクチャインデックスrefIdxLXで指定された参照ピクチャの対象ブロックの位置を起点として、ベクトルmvLXだけずれた位置にあるブロックを読み出すことによって動き補償画像を生成する。ここで、ベクトルmvLXが整数ベクトルでない場合には、動き補償フィルタ(もしくは変位補償フィルタ)と呼ばれる小数位置の画素を生成するためのフィルタを施して、動き補償画像を生成する。一般に、ベクトルmvLXが動きベクトルの場合のみ、上記処理を動き補償と呼び、変位ベクトルの場合は変位補償と呼ぶ場合もあるが、本明細書では、ベクトルの種類を区別せず単に動き補償と表現する。以下、L0予測の動き補償画像をpredSamplesL0、L1予測の動き補償画像をpredSamplesL1と呼ぶ。両者を区別しない場合predSamplesLXと呼ぶ。以下、動き補償部3091で得られた動き変位補償画像predSamplesLXに、さらに照度補償が行われる例を説明するが、これらの出力画像もまた、動き補償画像predSamplesLXと呼ぶ。なお、以下の照度補償において、入力画像と出力画像を区別する場合には、入力画像をpredSamplesLX、出力画像をpredSamplesLX´と表現する。
(照度補償)
照度補償部3093は、照度補償フラグic_enable_flagが1の場合に、入力された動き変位画像predSamplesLXに対して、照度補償を行う。照度補償フラグic_enable_flagが0の場合には、入力された動き補償画像predSamplesLXをそのまま出力する。照度補償部3093に入力される動き補償画像predSamplesLXは、動き補償部3091の出力画像である。照度補償は、予測画像生成の対象となる対象ブロックに隣接する隣接領域の動き補償画像の画素値と、隣接領域の復号画像の変化が、対象ブロック内の画素値と、対象ブロックの原画との変化に類似しているとの仮定に基づいて行われる。
照度パラメータ推定部30931は、対象ブロック(対象予測ユニット)の画素を、参照ブロックの画素から推定するための推定パラメータを求める。図13は、照度補償を説明するための図である。図13では、対象ブロックの周囲の画素(目的参照画素)と、対象ブロックからあるベクトルだけずれた位置にある、参照レイヤ画像上の参照ブロックの周囲の画素(入力参照画素)の位置を示している。
照度パラメータ推定部30931は、上記対象ブロックの周囲の目的参照画素y(y0〜yN−1)と上記参照ブロックの周囲の入力参照画素x(x0〜xN−1)から、推定パラメータ(照度変化パラメータ)を求める。
(照度補償部3093)
図24は、照度補償部3093の構成を示すブロック図である。照度補償部3093は、照度パラメータ推定部30931と、照度補償フィルタ部30932から構成される。照度パラメータ推定部30931は、積算シフト値導出部309311、積算値導出部309312、加算値導出部309313、第1パラメータ導出部309314、第2パラメータ導出部309315、パラメータa導出部309316、パラメータb導出部309317、正則化コスト加算部309318から構成される。
照度パラメータ推定部30931は、図13に示す参照レイヤ画像上の参照ブロックの周囲の画素Cを入力参照画素x[]、対象ブロックの周囲の画素Lを目的参照画素y[]とし、これら入力参照画素x[]と目的参照画素y[]に基づいて、目的参照画素y[]を入力参照画素xから線形予測する場合のパラメータであるパラメータa、パラメータbを導出する。
加算値導出部309313は、目的参照画素yの和Yと入力参照画素xの和Xを、以下の式(B−2)式(B−3)により導出する。
積算値導出部309312は目的参照画素yと入力参照画素xの積の和XYと、入力参照画素の2乗の和XXを、以下の式(B−4)〜(B−5)により導出する。この時、積算値導出部309312は、目的参照画素yと入力参照画素xの積の和XYの導出時と、入力参照画素xの2乗の和XXの導出する。以下の和の前にX、Y、XY、XXは0に初期化しておく。
X = Σx[i*2] 式(B−2)
Y = Σy[i*2] 式(B−3)
XX = Σ(x[i] * x[i]) 式(B−4)
XY = Σ(x[i] * y[i]) 式(B−5)
ここで、Σは、参照領域に対する和であり、参照領域の画素を特定するインデックスiに対する和を導出する。y[i]は、復号画像のインデックスiにおける画素値。x[i]は、参照画像のインデックスiにおける画素値。カウントシフト値iCountShiftは、参照領域のサイズの2の対数である。
iCountShift = log2 (参照領域の画素数) 式(B−6)
第1パラメータ導出部309314は、目的参照画素yと入力参照画素xの積の和XYと、目的参照画素の和Yと入力参照画素の和Xの積の差から第1パラメータa1を以下の式により導出する。
a1 = ( XY << iCountShift ) - (Y * X) 式(B−7)
式(B−7)に示すように、XYは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
第2パラメータ導出部309315は、入力参照画素の2乗の和XXと、入力参照画素の和Xの2乗の差から第2パラメータa2を以下の式により導出する。
a2 = ( XX << iCountShift ) - (X * X); 式(B−8)
式(B−8)に示すように、XXは、カウントシフト値iCountShiftだけ左シフトしてから差を算出する。
導出された第1パラメータa1と第2パラメータa2は、パラメータa導出部309316に出力される。
第1パラメータ導出部309314は、第1パラメータa1を第2パラメータa2の大きさに応じて制限する。例えば以下の式のように、a1を0以上、a2の2倍以下にクリップする。
a1 = Clip3(0, 2*a2, a1) 式(B−12)
第1パラメータ導出部309314により、a1 / a2の値は、0から2の間にクリップされる。従って、パラメータaの値であるa1 / a2 << iShiftの値も、0から2<<iShiftにクリップされる。すなわち、iShift=6の場合、パラメータaは0〜128となり、8ビット非負整数の範囲に入る。
第1パラメータ導出部309314は、第2パラメータa2の大きさに応じて、図16のテーブルの導出に用いた所定のビット幅ShiftA2に対して、以下の式により第2正規化シフト値iScaleShiftA2を導出する。導出された第2正規化シフト値iScaleShiftA2は、テーブルベースパラメータa導出部3093163に出力される。
iScaleShiftA2 = Max( 0, Floor( Log2( Abs( a2 ) ) ) - (ShiftA2-1)) 式(B−14)
第1パラメータ正規化シフト部3093161は、第2正規化シフト値iScaleShiftA2に応じて、以下の式により第1正規化シフト値iScaleShiftA1を導出する。導出された第1正規化シフト値iScaleShiftA1は、テーブルベースパラメータa導出部3093163に出力される。
iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1) 式(B−13)
なお、offsetA1はここでは10以下を満たす定数とする。
上記では、第1正規化シフト値を第2正規化シフト値を用いて導出するため、第1正規化パラメータを導出する処理が容易になるという効果を奏する。
第1パラメータ導出部309314、第2パラメータ導出部309315は、第1パラメータa1を第1正規化シフト値iScaleShiftA1、第2パラメータa2を第2正規化シフト値iScaleShiftA2により右シフトし、正規化第1パラメータa1sと正規化第2パラメータa2sを導出する。
a1s = a1 >> iScaleShiftA1 式(B−15)
a2s = a2 >> iScaleShiftA2 式(B−16)
これにより、正規化第1パラメータa1sと正規化第2パラメータa2sは各々、0から2のiShiftA1乗-1、0から2のShiftA2乗-1の間の値に正規化される。
パラメータa導出部309316は、第1正規化シフト値iScaleShiftA1と第2正規化シフト値iScaleShiftA2の差に基づいて、以下の式によりパラメータaシフト値iScaleShiftAを導出する。
ScaleShiftA = ShiftA1 + iScaleShiftA2 - iScaleShiftA1 - iShift 式(B−18)
ここで、iScaleShiftA1 = Max(0, iScaleShiftA2 - offsetA1)であるから、以下の式が得られる。
ScaleShiftA <= ShiftA1 + iScaleShiftA2 - (iScaleShiftA2 - offsetA1) - iShift
ScaleShiftA <= ShiftA1 + offsetA1 - iShift
offsetA1は0以上、iShiftは5から8ビット、ShiftA1は14ビット〜15ビットであるから、ScaleShiftAは常に0以上になる。
パラメータa導出部309316は、正規化第2パラメータa2sに応じて定まる逆数テーブル値invTableを参照し、正規化第1パラメータa1sとの積をとりテーブルシフト値(ScaleShiftA)で右シフトすることにより、以下の式によりパラメータaを導出する。
a = (a1s * invTable[a2s]) >> (ScaleShiftA) 式(B−19)
図16は、本実施形態で用いる逆数テーブル値invTable[]である。既に説明したように図16の逆数invTable[x]は、インデックスxが0の場合に0となり、インデックスxが0以外の場合には、所定の定数(ここでは2の15乗)Mをxで割って整数化した値から導出される。
導出されたパラメータaは、パラメータb導出部309317と照度補償フィルタ部30932に出力される。
パラメータb導出部309317は、目的参照画素の和Yから、入力参照画素の和Xにパラメータaをかけて固定シフト値iShiftだけ右シフトした値を引いた値を、参照領域の画素数で割ることにより、以下の式によりパラメータbを導出する。
b = ( Y - ( ( a * X ) >> iShift ) + ( 1 << ( iCountShift - 1 ) ) ) >> iCountShift 式(B−20)
なお、iCountShiftの右シフトは、参照領域の画素数で割ることに相当する。
照度補償フィルタ部30932は、照度パラメータ推定部30931が導出した推定パラメータを用いて、照度補償前の予測画像predSamples []から、照度補償後の予測画像predSamples´[]を導出する。例えば、パラメータbを式(B−20)により導出する場合には以下の式を用いる。
predSamples´[x][y] = (a * predSamples[x][y] >> iShift)+b 式(B−21)
(重み予測)
重み予測部3094は、入力される動き変位画像predSamplesLXに重み係数を乗算することにより予測ピクチャブロックP(予測画像)を生成する。入力される動き変位画像predSamplesLXは、残差予測、照度補償が行われる場合には、それらが施された画像である。参照リスト利用フラグの一方(predFlagL0もしくはpredFlagL1)が1の場合(単予測の場合)で、重み予測を用いない場合には入力された動き変位画像predSamplesLX(LXはL0もしくはL1)を画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesLX[ x ][ y ] + offset1 ) >> shift1 )
ここで、shift1=14-bitDepth、offset1=1<<(shift1-1)である。
また、参照リスト利用フラグの両者(predFlagL0もしくはpredFlagL1)が1の場合(双予測の場合)で、重み予測を用いない場合には、入力された動き変位画像predSamplesL0、predSamplesL1を平均し画素ビット数に合わせる以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0[ x ][ y ] + predSamplesL1[ x ][ y ] + offset2 ) >> shift2 )
ここで、shift2=15-bitDepth、offset2=1<<(shift2-1)である。
さらに、単予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0とオフセットo0を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( (predSamplesLX[ x ][ y ] * w0 + 2log2WD - 1) >> log2WD ) + o0 )
ここで、log2WDは所定のシフト量を示す変数である。
さらに、双予測の場合で、重み予測を行う場合には、重み予測部3094は、重み予測係数w0、w1、o0、o1を導出し、以下の式の処理を行う。
predSamples[ x ][ y ] = Clip3( 0, ( 1 << bitDepth ) - 1, ( predSamplesL0 [ x ][ y ] * w0 + predSamplesL1[ x ][ y ] * w1 + ((o0 + o1 + 1) << log2WD) ) >> (log2WD + 1) )
(画像符号化装置の構成)
次に、本実施形態に係る画像符号化装置11の構成について説明する。図14は、本実施形態に係る画像符号化装置11の構成を示すブロック図である。画像符号化装置11は、予測画像生成部101、減算部102、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、加算部106、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)108、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)109、符号化パラメータ決定部110、予測パラメータ符号化部111、残差格納部313(残差記録部)を含んで構成される。予測パラメータ符号化部111は、インター予測パラメータ符号化部112及びイントラ予測パラメータ符号化部113を含んで構成される。
予測画像生成部101は、外部から入力されたレイヤ画像Tの視点毎の各ピクチャについて、そのピクチャを分割した領域であるブロック毎に予測ピクチャブロックPを生成する。ここで、予測画像生成部101は、予測パラメータ符号化部111から入力された予測パラメータに基づいて参照ピクチャメモリ109から参照ピクチャブロックを読み出す。予測パラメータ符号化部111から入力された予測パラメータとは、例えば、動きベクトル又は変位ベクトルである。予測画像生成部101は、符号化対象ブロックを起点として予測された動きベクトル又は変位ベクトルが示す位置にあるブロックの参照ピクチャブロックを読み出す。予測画像生成部101は、読み出した参照ピクチャブロックについて複数の予測方式のうちの1つの予測方式を用いて予測ピクチャブロックPを生成する。予測画像生成部101は、生成した予測ピクチャブロックPを減算部102に出力する。なお、予測画像生成部101は、既に説明した予測画像生成部308と同じ動作であるため予測ピクチャブロックPの生成の詳細は省略する。
予測画像生成部101は、予測方式を選択するために、例えば、レイヤ画像に含まれるブロックの画素毎の信号値と予測ピクチャブロックPの対応する画素毎の信号値との差分に基づく誤差値を最小にする予測方式を選択する。予測方式を選択する方法は、これには限られない。
符号化対象のピクチャが他のレイヤに依存しないベースレイヤピクチャ(ベースビューピクチャ)である場合には、複数の予測方式とは、イントラ予測、動き予測及びマージ予測である。動き予測とは、上述のインター予測のうち、表示時刻間の予測である。マージ予測とは、既に符号化されたブロックであって、符号化対象ブロックから予め定めた範囲内にあるブロックと同一の参照ピクチャブロック及び予測パラメータを用いる予測である。符号化対象のピクチャがノンベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)とは、上述のインター予測のうち、別レイヤ画像(別視点画像)間の予測である。さらに、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)に対して、追加予測(照度補償)を行う場合と行わない場合の予測がある。
予測画像生成部101は、イントラ予測を選択した場合、予測ピクチャブロックPを生成する際に用いたイントラ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、動き予測を選択した場合、予測ピクチャブロックPを生成する際に用いた動きベクトルmvLXを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。動きベクトルmvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。動きベクトルmvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ピクチャ順序番号POC)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、変位予測を選択した場合、予測ピクチャブロックPを生成する際に用いた変位ベクトルを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。変位ベクトルdvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。変位ベクトルdvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ビューIDview_id)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
予測画像生成部101は、マージ予測を選択した場合、選択した参照ピクチャブロックを示すマージインデックスmerge_idxをインター予測パラメータ符号化部112に出力する。また、予測画像生成部101は、マージ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。
上記の、動き予測、変位予測、マージ予測において、予測画像生成部101は、残差予測フラグres_pred_flagが残差予測を行うことを示す場合には、既に説明したように予測画像生成部101に含まれる残差予測部3092において残差予測を行い、照度補償フラグic_enable_flagが照度補償を行うことを示す場合には、既に説明したように予測画像生成部101に含まれる照度補償部3093において照度補償予測を行う。
減算部102は、予測画像生成部101から入力された予測ピクチャブロックPの信号値を、外部から入力されたレイヤ画像Tの対応するブロックの信号値から画素毎に減算して、残差信号を生成する。減算部102は、生成した残差信号をDCT・量子化部103と符号化パラメータ決定部110に出力する。
DCT・量子化部103は、減算部102から入力された残差信号についてDCTを行い、DCT係数を算出する。DCT・量子化部103は、算出したDCT係数を量子化して量子化係数を求める。DCT・量子化部103は、求めた量子化係数をエントロピー符号化部104及び逆量子化・逆DCT部105に出力する。
エントロピー符号化部104には、DCT・量子化部103から量子化係数が入力され、符号化パラメータ決定部110から符号化パラメータが入力される。入力される符号化パラメータには、例えば、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLX、予測モードpredMode、及びマージインデックスmerge_idx等の符号がある。
エントロピー符号化部104は、入力された量子化係数と符号化パラメータをエントロピー符号化して符号化ストリームTeを生成し、生成した符号化ストリームTeを外部に出力する。
逆量子化・逆DCT部105は、DCT・量子化部103から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部105は、求めたDCT係数について逆DCTを行い、復号残差信号を算出する。逆量子化・逆DCT部105は、算出した復号残差信号を加算部106に出力する。
加算部106は、予測画像生成部101から入力された予測ピクチャブロックPの信号値と逆量子化・逆DCT部105から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部106は、生成した参照ピクチャブロックを参照ピクチャメモリ109に記憶する。
予測パラメータメモリ108は、予測パラメータ符号化部111が生成した予測パラメータを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
参照ピクチャメモリ109は、加算部106が生成した参照ピクチャブロックを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。
符号化パラメータ決定部110は、符号化パラメータの複数のセットのうち、1つのセットを選択する。符号化パラメータとは、上述した予測パラメータやこの予測パラメータに関連して生成される符号化の対象となるパラメータである。予測画像生成部101は、これらの符号化パラメータのセットの各々を用いて予測ピクチャブロックPを生成する。
符号化パラメータ決定部110は、複数のセットの各々について情報量の大きさと符号化誤差を示すコスト値を算出する。コスト値は、例えば、符号量と二乗誤差に係数λを乗じた値との和である。符号量は、量子化誤差と符号化パラメータをエントロピー符号化して得られる符号化ストリームTeの情報量である。二乗誤差は、減算部102において算出された残差信号の残差値の二乗値についての画素間の総和である。係数λは、予め設定されたゼロよりも大きい実数である。符号化パラメータ決定部110は、算出したコスト値が最小となる符号化パラメータのセットを選択する。これにより、エントロピー符号化部104は、選択した符号化パラメータのセットを符号化ストリームTeとして外部に出力し、選択されなかった符号化パラメータのセットを出力しない。
予測パラメータ符号化部111は、予測画像生成部101から入力されたパラメータに基づいて予測ピクチャを生成する際に用いる予測パラメータを導出し、導出した予測パラメータを符号化して符号化パラメータのセットを生成する。予測パラメータ符号化部111は、生成した符号化パラメータのセットをエントロピー符号化部104に出力する。
予測パラメータ符号化部111は、生成した符号化パラメータのセットのうち符号化パラメータ決定部110が選択したものに対応する予測パラメータを予測パラメータメモリ108に記憶する。
予測パラメータ符号化部111は、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、インター予測パラメータ符号化部112を動作させる。予測パラメータ符号化部111は、予測モードpredModeがイントラ予測モードを示す場合、イントラ予測パラメータ符号化部113を動作させる。
インター予測パラメータ符号化部112は、符号化パラメータ決定部110から入力された予測パラメータに基づいてインター予測パラメータを導出する。インター予測パラメータ符号化部112は、インター予測パラメータを導出する構成として、インター予測パラメータ復号部303(図5等、参照)がインター予測パラメータを導出する構成と同一の構成を含む。インター予測パラメータ符号化部112の構成については、後述する。
イントラ予測パラメータ符号化部113は、符号化パラメータ決定部110から入力された予測モードpredModeが示すイントラ予測モードIntraPredModeをインター予測パラメータのセットとして定める。
(LM予測部)
予測画像生成部101は、予測画像生成部308と同様にLM予測部3104を備える。LM予測部3104は、既に説明したように、LMパラメータ推定部31041を備え、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積から導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積から導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
本構成の、予測画像生成部101の含むLMパラメータ推定部31041は、例えばa1がTHN未満(ここではTHN=0)である場合に、a1から正則化コストa1costNだけ減算するように閾値との比較に基づいて正則化コストを減算もしくは加算することで、パラメータaの値を、最小2乗法で導出される値よりも0から遠い方向に近づけることが可能である。上記、構成により、LMパラメータ推定部31041は、雑音に強い線形予測パラメータを導出することができ、予測画像を生成する際の予測精度を向上させる効果を奏する。
(インター予測パラメータ符号化部の構成)
次に、インター予測パラメータ符号化部112の構成について説明する。インター予測パラメータ符号化部112は、インター予測パラメータ復号部303に対応する手段である。
図15は、本実施形態に係るインター予測パラメータ符号化部112の構成を示す概略図である。
インター予測パラメータ符号化部112は、図示しないインター予測パラメータ符号化制御部1031、マージ予測パラメータ導出部3036、AMVP予測パラメータ導出部3032、減算部1123、及び予測パラメータ統合部1126を含んで構成される。
マージ予測パラメータ導出部3036は、上述のマージ予測パラメータ導出部3036(図7参照)と同様な構成を有する。
インター予測パラメータ符号化制御部1031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー符号化部104に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。
インター予測パラメータ符号化制御部1031は、追加予測フラグ符号化部10311、マージインデックス符号化部10312、ベクトル候補インデックス符号化部10313、及び図示しない、分割モード符号化部、マージフラグ符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル差分符号化部を含んで構成される。分割モード符号化部、マージフラグ符号化部、マージインデックス符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル候補インデックス符号化部10313、ベクトル差分符号化部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。
追加予測フラグ符号化部10311は、追加予測が行われるか否かを示すために、照度補償フラグic_enable_flagを符号化する。
マージ予測パラメータ導出部3036には、予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合、符号化パラメータ決定部110からマージインデックスmerge_idxが入力される。マージインデックスmerge_idxは、予測パラメータ統合部1126に出力される。マージ予測パラメータ導出部3036は、マージ候補のうちマージインデックスmerge_idxが示す参照ブロックの参照ピクチャインデックスrefIdxLX、ベクトルmvLXを予測パラメータメモリ108から読み出す。マージ候補とは、符号化対象となる符号化対象ブロックから予め定めた範囲にある参照ブロック(例えば、符号化対象ブロックの左下端、左上端、右上端に接する参照ブロックのうち)であって、符号化処理が完了した参照ブロックである。
AMVP予測パラメータ導出部3032は、上述のAMVP予測パラメータ導出部3032(図8参照)と同様な構成を有する。
AMVP予測パラメータ導出部3032には、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、符号化パラメータ決定部110からベクトルmvLXが入力される。AMVP予測パラメータ導出部3032は、入力されたベクトルmvLXに基づいて予測ベクトルmvpLXを導出する。AMVP予測パラメータ導出部3032は、導出した予測ベクトルmvpLXを減算部1123に出力する。なお、参照ピクチャインデックスrefIdx及びベクトルインデックスmvp_LX_idxは、予測パラメータ統合部1126に出力される。
減算部1123は、符号化パラメータ決定部110から入力されたベクトルmvLXからAMVP予測パラメータ導出部3032から入力された予測ベクトルmvpLXを減算して差分ベクトルmvdLXを生成する。差分ベクトルmvdLXは予測パラメータ統合部1126に出力する。
予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合には、予測パラメータ統合部1126は、符号化パラメータ決定部110から入力されたマージインデックスmerge_idxをエントロピー符号化部104に出力する。
予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合には、予測パラメータ統合部1126は、次の処理を行う。
予測パラメータ統合部1126は、符号化パラメータ決定部110から入力された参照ピクチャインデックスrefIdxLX及びベクトルインデックスmvp_LX_idx、減算部1123から入力された差分ベクトルmvdLXを統合する。予測パラメータ統合部1126は、統合した符号をエントロピー符号化部104に出力する。
なお、上述した実施形態における画像符号化装置11、画像復号装置31の一部、例えば、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部101、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、符号化パラメータ決定部110、予測パラメータ符号化部111、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部308、逆量子化・逆DCT部311をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、画像符号化装置11−11h、画像復号装置31−31hのいずれかに内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した実施形態における画像符号化装置11、画像復号装置31の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。画像符号化装置11、画像復号装置31の各機能ブロックは個別にプロセッサ化しても良いし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
本発明の一つの形態は、インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第2パラメータa2にコストa2costを加算する手段をさらに備えることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする。
本発明の一つの形態は、上記コストa2costは、上記コストa1costN以上であることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を0とすることを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を、上記第2パラメータa2に基づいて導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNを0、上記閾値THPを上記第2パラメータa2に基づいて導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記閾値THNを、上記第2パラメータa2を所定の定数だけ右シフトすることにより導出する、ことを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値xiの積の和XXから導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値yiの積の和XYから導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、画素のビットデプス値から導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2に基づいて導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2を所定の定数だけ右シフトすることにより、導出することを特徴とする。
本発明の一つの形態は、上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa1を所定の定数だけ右シフトした値と、画素のビットデプス値から導出される値との最小値から、導出することを特徴とする。
(関連出願の相互参照)
本出願は、2015年10月5日に出願された日本国特許出願:特願2015-197489に対して優先権の利益を主張するものであり、それを参照することにより、その内容の全てが本書に含まれる。
本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置、および、色コンポーネント間予測を行う予測画像生成装置に好適に適用することができる。
1…画像伝送システム
11…画像符号化装置
101…予測画像生成部
102…減算部
103…DCT・量子化部
104…エントロピー符号化部
105…逆量子化・逆DCT部
106…加算部
108…予測パラメータメモリ(フレームメモリ)
109…参照ピクチャメモリ(フレームメモリ)
110…符号化パラメータ決定部
111…予測パラメータ符号化部
112…インター予測パラメータ符号化部
3036…マージ予測パラメータ導出部
3032…AMVP予測パラメータ導出部
1123…減算部
1126…予測パラメータ統合部
113…イントラ予測パラメータ符号化部
21…ネットワーク
31…画像復号装置
301…エントロピー復号部
302…予測パラメータ復号部
303…インター予測パラメータ復号部
30312…マージインデックス復号部
30313…ベクトル候補インデックス復号部
3032…AMVP予測パラメータ導出部
3035…加算部
3036…マージ予測パラメータ導出部
30361…マージ候補導出部
303611…マージ候補格納部
3036131…空間マージ候補導出部
3036132…時間マージ候補導出部
3036133…結合マージ候補導出部
3036134…ゼロマージ候補導出部
30362…マージ候補選択部
304…イントラ予測パラメータ復号部
306…参照ピクチャメモリ(フレームメモリ)
307…予測パラメータメモリ(フレームメモリ)
308…予測画像生成部
309…インター予測画像生成部
3091…動き補償部
3092…残差予測部
3093…照度補償部
30931…照度パラメータ推定部
309312…積算値導出部
309313…加算値導出部
309314…第1パラメータ導出部
309315…第2パラメータ導出部
309316…パラメータa導出部
3093161…第1パラメータ正規化シフト部
3093162…第2パラメータ正規化シフト部
3093163…テーブルベースパラメータa導出部
309317…パラメータb導出部
309318…正則化コスト加算部
30932…照度補償フィルタ部
3094…重み予測部
310…イントラ予測画像生成部
3104…LM予測部
31041、31041A、31041B、31041C、31041A2、31041B2、31041C2…LMパラメータ推定部
31042、31042B…LMフィルタ部
310412…LM積算値導出部
310413…LM加算値導出部
310414…LM第1パラメータ導出部
310415…LM第2パラメータ導出部
310416…LMパラメータa導出部
3104161…LM第1パラメータ正規化シフト部
3104162…LM第2パラメータ正規化シフト部
3104163…LM除算値導出部
310417…LMパラメータb導出部
310418、310418A、310418B、310418C、310418A2、310418B2、310418C2、…LM正則化コスト加算部
3104180…LM正則化コスト導出部
3104181…LM第1パラメータ正則化コスト加算部
3104182…LM第2パラメータ正則化コスト加算部
3104183…LM正則化コスト閾値判定部
311…逆量子化・逆DCT部
312…加算部
41…画像表示装置

Claims (19)

  1. インデックスiに対応する画素値xiと画素値yiの組を入力として、xiからyiを予測する線形予測パラメータaとbを導出する線形予測パラメータ導出部と、上記線形予測パラメータに基づいて予測画像を生成する線形予測部を備える画像予測装置であって、上記線形予測パラメータ導出部は、画素値xiと画素値yiの積の和XYと画素値xiの和Xと画素値yiの和Yの積に基づいて導出される第1パラメータa1と、画素値xiと画素値xiの積の和XXと画素値xiの和Xと画素値xiの和Xの積に基づいて導出される第2パラメータa2から線形予測パラメータaを導出する手段を備え、上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算する手段の少なくとも1つの手段を備えることを特徴とする画像予測装置。
  2. 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算することを特徴とする請求項1に記載の画像予測装置。
  3. 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
  4. 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算することを特徴とする請求項1に記載の画像予測装置。
  5. 上記線形予測パラメータ導出部は、上記第2パラメータa2にコストa2costを加算する手段をさらに備えることを特徴とする請求項1に記載の画像予測装置。
  6. 上記線形予測パラメータ導出部は、上記第1パラメータa1と所定の閾値THNを比較し、上記第1パラメータa1が上記閾値THN未満もしくは上記閾値THN以下である場合には第1コストa1costNを上記第1パラメータa1から減算し、上記第2パラメータa2にコストa2costNを加算する手段と、上記第1パラメータa1と所定の閾値THPを比較し、上記第1パラメータa1が上記閾値THP未満もしくは上記閾値THP以下の場合には第2コストa1costPを上記第1パラメータa1に加算し上記第2パラメータa2にコストa2costPを加算する手段の少なくとも1つの手段を備えることを特徴とする請求項1に記載の画像予測装置。
  7. 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THNより小さい場合、もしくは、上記第1パラメータa1が上記所定の閾値THN以下の場合に、上記第1パラメータa1に上記第1コストa1costNを減算し、上記第2パラメータa2にコストa2costNを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
  8. 上記線形予測パラメータ導出部は、上記第1パラメータa1が上記所定の閾値THPより大きい場合、もしくは、上記第1パラメータa1が上記所定の閾値THP以上の場合に、上記第1パラメータa1に上記第2コストa1costPを加算し、上記第2パラメータa2にコストa2costPを加算する手段を備えることを特徴とする請求項6に記載の画像予測装置。
  9. 上記コストa2costは、上記コストa1costN以上であることを特徴とする請求項5に記載の画像予測装置。
  10. 上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を0とすることを特徴とする請求項1に記載の画像予測装置。
  11. 上記線形予測パラメータ導出部は、上記閾値THNとTHPのどちらか一方もしくは両方を、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  12. 上記線形予測パラメータ導出部は、上記閾値THNを0、上記閾値THPを上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  13. 上記線形予測パラメータ導出部は、上記閾値THNを、上記第2パラメータa2を所定の定数だけ右シフトすることにより導出する、ことを特徴とする請求項6に記載の画像予測装置。
  14. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値xiの積の和XXから導出することを特徴とする請求項1に記載の画像予測装置。
  15. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記画素値xiと画素値yiの積の和XYから導出することを特徴とする請求項1に記載の画像予測装置。
  16. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、画素のビットデプス値から導出することを特徴とする請求項1に記載の画像予測装置。
  17. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2に基づいて導出することを特徴とする請求項1に記載の画像予測装置。
  18. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa2を所定の定数だけ右シフトすることにより、導出することを特徴とする請求項1に記載の画像予測装置。
  19. 上記線形予測パラメータ導出部は、上記第1コストa1costNもしくは上記第2コストa1costPを、上記第2パラメータa1を所定の定数だけ右シフトした値と、画素のビットデプス値から導出される値との最小値から、導出することを特徴とする請求項1に記載の画像予測装置。
JP2017544411A 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置 Pending JPWO2017061189A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2015197489 2015-10-05
JP2015197489 2015-10-05
PCT/JP2016/075052 WO2017061189A1 (ja) 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置

Publications (1)

Publication Number Publication Date
JPWO2017061189A1 true JPWO2017061189A1 (ja) 2018-09-13

Family

ID=58487446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017544411A Pending JPWO2017061189A1 (ja) 2015-10-05 2016-08-26 画像復号装置または画像符号化装置のための画像予測装置

Country Status (3)

Country Link
US (1) US20180302641A1 (ja)
JP (1) JPWO2017061189A1 (ja)
WO (1) WO2017061189A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109845253B (zh) * 2016-10-04 2023-09-12 株式会社Kt 一种用于对二维视频进行解码、编码的方法
JP7164813B2 (ja) * 2018-11-21 2022-11-02 日本電信電話株式会社 予測装置、予測方法、及びプログラム。
SG11202106417YA (en) * 2018-12-20 2021-07-29 Sharp Kk Prediction image generation apparatus, video decoding apparatus, video coding apparatus, and prediction image generation method
JP7304153B2 (ja) * 2018-12-27 2023-07-06 Kddi株式会社 動画像復号装置、動画像復号方法及びプログラム
WO2020141599A1 (ja) * 2019-01-02 2020-07-09 シャープ株式会社 予測画像生成装置、動画像復号装置、動画像符号化装置、および予測画像生成方法
JP7448349B2 (ja) * 2019-12-17 2024-03-12 シャープ株式会社 動画像復号装置
CN113962898B (zh) * 2021-11-03 2024-05-03 大连海事大学 基于照度图优化和自适应伽马校正的低照度图像增强方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09212650A (ja) * 1996-02-05 1997-08-15 Sony Corp 動きベクトル検出装置および検出方法
EP1363234B1 (en) * 2001-02-21 2009-03-11 Sony Corporation Signal processing device
KR100852042B1 (ko) * 2002-02-21 2008-08-13 소니 가부시끼 가이샤 신호 처리 장치, 신호 처리 방법, 및 기록 매체
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
US9129409B2 (en) * 2009-07-29 2015-09-08 Qualcomm Incorporated System and method of compressing video content
US8805100B2 (en) * 2010-06-03 2014-08-12 Sharp Kabushiki Kaisha Filter device, image decoding device, image encoding device, and filter parameter data structure
US10021384B2 (en) * 2010-12-23 2018-07-10 Samsung Electronics Co., Ltd. Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit
US9948951B2 (en) * 2012-12-26 2018-04-17 Sharp Kabushiki Kaisha Image decoding device which generates a predicted image of a target prediction unit
CN104380739B (zh) * 2013-04-05 2018-10-26 索尼公司 图像处理设备和图像处理方法
WO2014203726A1 (ja) * 2013-06-18 2014-12-24 シャープ株式会社 照度補償装置、lm予測装置、画像復号装置、画像符号化装置
US9998742B2 (en) * 2015-01-27 2018-06-12 Qualcomm Incorporated Adaptive cross component residual prediction

Also Published As

Publication number Publication date
WO2017061189A1 (ja) 2017-04-13
US20180302641A1 (en) 2018-10-18

Similar Documents

Publication Publication Date Title
RU2767144C2 (ru) Ограничение информации вектора движения, извлекаемой посредством извлечения векторов движения на стороне декодера
JP6360053B2 (ja) 照度補償装置、画像復号装置、画像符号化装置
WO2017061189A1 (ja) 画像復号装置または画像符号化装置のための画像予測装置
JP6535673B2 (ja) 非対称動き分割を使用するビデオコーディング技法
US9948951B2 (en) Image decoding device which generates a predicted image of a target prediction unit
KR101600154B1 (ko) 비디오 코딩에서의 모션 벡터 예측
JP6225241B2 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
JP6469588B2 (ja) 残差予測装置、画像復号装置、画像符号化装置、残差予測方法、画像復号方法、および画像符号化方法
KR101751145B1 (ko) 3d 비디오에 대한 인터-뷰 예측된 모션 벡터
KR20180061281A (ko) 비디오 코딩을 위한 향상된 양방향 광학 흐름
KR20150065706A (ko) 3d 비디오에 대한 인터-뷰 예측된 모션 벡터
US20150326866A1 (en) Image decoding device and data structure
KR20150052259A (ko) 스케일러블 비디오 코딩을 위한 가중된 예측 모드
WO2015056719A1 (ja) 画像復号装置、画像符号化装置
WO2017135151A1 (ja) 予測画像生成装置、動画像復号装置、および動画像符号化装置
CN109547800B (zh) 用于3d-hevc的简化高级残余预测
WO2015056620A1 (ja) 画像復号装置、画像符号化装置
JP6118199B2 (ja) 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法及びコンピュータ読み取り可能な記録媒体。
CN114270833A (zh) 用于在视频/图像编译***中移除重叠信令的方法和装置
JP2016034050A (ja) 画像復号装置、画像符号化装置および、データ構造
US10390035B2 (en) Video encoding and decoding by inheritance of a field of motion vectors
CN114365485A (zh) 用于执行bdof的图像编码/解码方法和装置及用于发送比特流的方法
CN114375573A (zh) 使用合并候选推导预测样本的图像解码方法及其装置