JP6053210B1 - 映像符号化装置、映像符号化方法及び映像符号化プログラム - Google Patents
映像符号化装置、映像符号化方法及び映像符号化プログラム Download PDFInfo
- Publication number
- JP6053210B1 JP6053210B1 JP2015117656A JP2015117656A JP6053210B1 JP 6053210 B1 JP6053210 B1 JP 6053210B1 JP 2015117656 A JP2015117656 A JP 2015117656A JP 2015117656 A JP2015117656 A JP 2015117656A JP 6053210 B1 JP6053210 B1 JP 6053210B1
- Authority
- JP
- Japan
- Prior art keywords
- value
- offset
- δqp
- video encoding
- block size
- 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.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】CTUの中で画像の特徴量が異なる領域が混在する場合に、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制する。【解決手段】複数のブロックサイズのブロックを組み合わせて映像の符号化を行う映像符号化装置であって、複数のブロックサイズに対して画像の特徴量に基づいて量子化ステップを表す値の変化量を算出するΔQP値算出手段と、異なるブロックサイズ間の量子化ステップを表す値が事前に設定した所定の閾値以上異なるか否かを判定し、所定の閾値以上異なる場合は、より小さなブロックサイズの選択を促進させるオフセット値を出力する分割促進オフセット算出手段と、オフセット値を加算したコスト値を用いて符号化モード判定を行う符号化モード判定手段とを備える。【選択図】図1
Description
本発明は、画像を可変のブロックサイズに分割して符号化処理を行う映像符号化装置、映像符号化方法及び映像符号化プログラムに関する。
映像符号化技術は、MPEG−2、MPEG−4、H.264/AVCが多く用いられており、最近では次世代の映像符号化規格であるHEVC(High Efficiency Video Coding)/H.265が策定され、今後普及していくと考えられる。映像符号化における符号量制御および量子化制御のアルゴリズムのひとつとして、TM5(Test Model 5)が広く知られている(例えば、非特許文献1参照)。TM5はステップ1、2、3の3段階で量子化制御を行っている。ステップ1はピクチャ単位で目標符号量をもとに量子化値を算出するステップ、ステップ2はピクチャ内で目標とする符号量と発生した符号量との差分をもとにフィードバック制御を行って量子化値を修正するステップであり、いずれも発生符号量を目標符号量に近づけるためのステップである。
これに対してTM5のステップ3は、画像の局所的な特性、具体的にはアクティビティと呼称される画像の複雑度に応じて、ステップ2までで求めた量子化値から上下に変動させ、符号化画像の視覚的な品質向上を目的としている。具体的には、視覚的に劣化の目立ちやすい平坦部(輝度変化の少ない部分、すなわちアクティビティが低い部分)に符号量が多く配分されるように量子化値を小さく設定し、逆に視覚的に劣化の目立ちにくい非平坦部(輝度変化の大きい部分、すなわちアクティビティが高い部分)は符号量を削減するように量子化値を大きく設定することで、平均して同一の符号量においても視覚特性を改善しようとするステップである。以降、このステップ3に着目して説明を行う。
MPEG−2やH.264など従来の映像符号化方式においては、量子化パラメータ値(もしくは符号化ストリーム内で量子化ステップの幅を示すために使用される値。以下の説明では以降、QP値と呼称する)を指定できる単位はマクロブロックであり、マクロブロックのサイズは16x16ピクセルに固定であった。それに対し、HEVC/H.265符号化標準においては、最大64x64ピクセルからなるCTU(Coding Tree Unit)を、32x32や16x16や8x8ピクセルからなるCU(Coding Unit)の組み合わせとして表現することができ、QP値は例えばCU単位で設定することが可能である。
そのため、あるCTUを構成するCUのサイズの組み合わせが決定した場合、HEVC/H.265符号化器においては、各CUを構成する画像のアクティビティをもとにステップ3の処理が行われることになる。ここでもちろん、アクティビティ以外の画像特徴量を用いてステップ3制御を行ってもよい。
また、アクティビティに代表される画像特徴量を用いて、HEVCで特徴的な可変ブロックサイズ予測や可変ブロックサイズ変換の候補サイズを事前に絞り込む提案もなされている(例えば、特許文献1参照)。これらの提案はもっぱら、多数のブロックサイズに対する予測演算が困難なため、ブロックサイズを予め決定ないし制限し、符号化に要する演算量を削減する目的で行われている。
なお、本明細書において、画像とは、静止画像、または動画像を構成する1フレーム分の画像のことをいう。また映像とは、動画像と同じ意味であり、一連の画像の集合である。
総合マルチメディア選書MPEG、映像情報メディア学会(編)、オーム社、平成8年4月20日発行
HEVC/H.265符号化器において、あるCTUを構成するCUのサイズの組み合わせは一般的に、符号化効率が最良となるように、すなわち、ある一定のビット量に対して原画像と符号化画像の誤差が最小となるように決定される。この決定手法として一般的に知られている手法はRD最適化と呼ばれ、所定の値λを用いてD+λ・R(Dは符号化画像と原画像との画素値差分の自乗和として得られる歪み量、Rは符号量)が最小となるCUの組み合わせを選択するものである。あるいは、D+λ・Rの演算が困難である場合は、Dのかわりに差分絶対値和(SAD値)ないしアダマール変換後の差分絶対値和(SATD値)、Rとして正確な符号量ではない仮見積もり符号量が使用されることも多い。
ところがこの場合、前述したステップ3の処理とは独立して、符号化効率が最良となるようなCUサイズの組み合わせが選択されることになる。図5は、TM5ステップ3によって計算されるQP値の上下動(ΔQP)の値を、ブロックサイズ別に計算した結果を例示した図である。図5に示すように、HEVC符号化器において64x64ピクセルのCTUを用いて符号化する場合、選択できるCUは64x64、32x32、16x16ピクセルの組み合わせとなる。ステップ3の手法を用いてQP値をCU単位に変化させることとし、変化させるQP値の量をΔQPと表記することとすると、各CUに含まれる画像領域の画像特徴量(アクティビティ等)を用いてステップ3制御が行われ、ΔQPが計算される。図5では、64x64CUのΔQPをΔQP64[0]と、32x32CU(全4ヶ)のΔQPをΔQP32[0]〜ΔQP32[3]と、16x16CU(全16ヶ)のΔQPをΔQP16[0]〜ΔQP32[15]とそれぞれ表記している。
図6は、同一ブロック内に、複雑な領域と平坦な領域が混在する場合について示した図である。図6に示すように、画像特徴量として画素値の変化が少ない平坦な領域(図中で白色で示された領域)と、画素値の変化が大きい複雑な領域(図中で灰色で示された領域)が含まれているCTUがあるものとする。ステップ3制御に基づき、平坦な領域に属するCUのΔQPは小さく(図中ではこれを「ΔQP↓」と表現している)、複雑な領域に属するCUのΔQPは大きく(図中ではこれを「ΔQP↑」と表現している)制御されることになる。
このとき、最終的に符号化されるCUサイズの組み合わせとして、16x16CUが選択された場合は、画像の特徴量が変化する境界におおむね沿って「ΔQP↑」と「ΔQP↓」のステップ3制御を行ったQP値で符号化することができる。しかし、より大きなCUサイズの組み合わせ、例えば64x64CUが最終的に選択された場合、複雑な領域と平坦な領域が1つのCUの中に混在するため、ステップ3制御に基づく適切なΔQPが設定されてないという問題が発生する。すなわち、同一のCU内で複雑な領域は、ΔQPが十分大きくならずに符号量が出すぎるという問題が発生し、逆に同一のCU内の平坦な領域でΔQPが十分小さくならなかった場合には、視覚的な劣化が発生するという問題がある。
本発明は、このような事情に鑑みてなされたもので、CTUの中で画像の特徴量が異なる領域が混在する場合に、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制することができる映像符号化装置、映像符号化方法及び映像符号化プログラムを提供することを目的とする。
本発明の一態様は、複数のブロックサイズのブロックを組み合わせて映像の符号化を行う映像符号化装置であって、複数の前記ブロックサイズに対して画像の特徴量に基づいて量子化ステップを表す値の変化量を算出するΔQP値算出手段と、異なる前記ブロックサイズ間の前記量子化ステップを表す値が事前に設定した所定の閾値以上異なるか否かを判定し、前記所定の閾値以上異なる場合は、より小さなブロックサイズの選択を促進させるオフセット値を出力する分割促進オフセット算出手段と、前記オフセット値を加算したコスト値を用いて符号化モード判定を行う符号化モード判定手段とを備える映像符号化装置である。
本発明の一態様は、前記映像符号化装置であって、前記分割促進オフセット算出手段は、前記ブロックサイズにおける量子化ステップを表す値と、該ブロックサイズを1回分割した分割ブロックサイズのいずれかの量子化ステップを表す値との差分が、所定の閾値を超えている場合に、前記分割ブロックサイズが選択されやすくなるように事前に設定したモード判定オフセット値を与える。
本発明の一態様は、前記映像符号化装置であって、前記所定の閾値と前記オフセット値は、前記映像を符号化する際に用いる量子化ステップの大きさに基づいて決定する。
本発明の一態様は、複数のブロックサイズのブロックを組み合わせて映像の符号化を行う映像符号化装置が実行する映像符号化方法であって、複数の前記ブロックサイズに対して画像の特徴量に基づいて量子化ステップを表す値の変化量を算出するΔQP値算出ステップと、異なる前記ブロックサイズ間の前記量子化ステップを表す値が事前に設定した所定の閾値以上異なるか否かを判定し、前記所定の閾値以上異なる場合は、より小さなブロックサイズの選択を促進させるオフセット値を出力する分割促進オフセット算出ステップと、前記オフセット値を加算したコスト値を用いて符号化モード判定を行う符号化モード判定ステップとを有する映像符号化方法である。
本発明の一態様は、コンピュータを、前記映像符号化装置として機能させるための映像符号化プログラムである。
本発明によれば、CTUの中で画像の特徴量が異なる領域が混在する場合に、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制することができるという効果が得られる。この結果、同一のCU内で画像の複雑な領域でΔQPが十分大きくならずに符号量が出すぎるという問題や、逆に同一のCU内の画像の平坦な領域でΔQPが十分小さくならずに視覚的な劣化が発生するという問題を解決することができる。
以下、図面を参照して、本発明の一実施形態による映像符号化装置を説明する。図1は同実施形態の構成を示すブロック図である。以下、HEVC規格に基づく映像符号化装置を想定し、図6に示したものと同様にCTUサイズは64x64、CUサイズは64x64、32x32、16x16の3種類が選択可能なものとして説明を行う。図1において映像符号化部3は、映像符号化標準(本実施形態ではHEVC標準)に基づいて映像を符号化する符号化器の構成である。
外部から符号化対象画像を入力すると、予測部31は画面内予測符号化(イントラ符号化)および参照画像予測符号化(インター符号化)を用いた予測処理を行う。予測部31の予測結果を受けて、符号化コスト評価部32は候補となる予測符号化モードで符号化を行う場合のコストを計算する。コストの計算方法としては、前述のRD最適化に基づくD+λ・Rの値を計算する、もしくはDのかわりに差分絶対値和(SAD値)ないしアダマール変換後の差分絶対値和(SATD値)、Rとして正確な符号量ではない仮見積もり符号量を使用するのが一般的である。ここで計算したコスト値を受けて、符号化モード判定部33は符号化コストが最小となる予測モードおよびブロックサイズの組み合わせを選択する。この選択結果を受けて、符号化部34では実際に符号化を行い、符号化ストリームを出力する。
本実施形態においては、映像符号化部3に加えて、マルチブロックサイズΔQP値算出部1および分割促進オフセット算出部2を備えている。以下、それぞれの動作を詳細に説明する。
マルチブロックサイズΔQP値算出部1は、複数のブロックサイズに対して、画像の特徴量をもとにΔQPを算出する機能を持つ。ΔQPの算出は、例えばMPEG−2 TM5のステップ3の考え方に基づいて算出することができるため、詳細な説明を省略する。ここでは、まずMPEG−2 TM5のステップ3の演算の説明を行う。TM5においては、16x16ピクセルからなるマクロブロックのアクティビティを算出するために、フィールド(飛越し走査)で構成した4つの8x8ブロック、フレーム(非飛越し走査)で構成した4つの8x8ブロック、合計8つの8x8ブロックに対して、まず分散var sblkを(式1)によって求める。ただしPkは各画素の画素値、Pavgは8x8ブロック64画素の画素平均値である。
そのうえで、0.5以上2.0以下の値をとる正規化アクティビティを(式3)によって求める。ただしavg_actは直前に符号化した画像の平均アクティビティであり、アクティビティがavg_actと同じ値であれば1となるように正規化されることになる。
上記mquantjとQjを、符号化標準に規定される量子化ステップに従ってそれぞれ量子化パラメータ値に変換した際に、両者の差分に当たる値が、ステップ3処理による量子化パラメータ値の上下動をあらわす数値、すなわちΔQP値である。
なお、上記の説明をHEVC符号化標準に適用するにあたっては、まずHEVCにフィールド/フレーム混在符号化は存在しないため、(式1)および(式2)のvar sblkは8ヶではなく、16x16ブロックサイズごとに4ヶでよい。さらにHEVC符号化標準ではブロックサイズが可変のため、例えば図5に示すように16x16、32x32、64x64の3ブロックサイズについてΔQP値を求めるにあたっては、(式1)や(式2)の演算は、32x32ではvar sblkの数が4ヶx4=16ヶ、64x64では4ヶx16=64ヶとなる。また、(式2)はminでなければならない必要性はなく、平均値をとってもよい。
なお、分散は8x8単位で求めても、16x16単位(256画素単位)で求めてもよい。
繰り返すが、上記のΔQP値の算出方法は、MPEG−2 TM5のステップ3の求め方にもとづいて計算した場合の例であり、本実施形態においてのΔQP値の算出方法は上記に限定するものではない。アクティビティ以外の画像特徴量を用いてΔQP値を計算してもよい。
前述のような方法により、図5に示すように16x16、32x32、64x64ブロックサイズのそれぞれについてΔQP値が求まれば、マルチブロックサイズΔQP値算出部1はこれをΔQP値として、分割促進オフセット算出部2に出力する。
次に、図2を参照して、分割促進オフセット算出部2が、ΔQP値をもとに分割促進オフセットを算出する処理動作を説明する。図2は、分割促進オフセット算出部2が、ΔQP値をもとに分割促進オフセットを算出する処理動作を示すフローチャートである。ここでは、図5に示すものと同様に、16x16、32x32、64x64の3ブロックサイズについてΔQP値が求まっていることを前提とする。
まず、分割促進オフセット算出部2は、変数kに最小ブロックサイズ、すなわち16を設定する(ステップS1)。図2において「←」は代入を表す。続いて、分割促進オフセット算出部2は、変数iに0を設定する(ステップS2)。
次に、分割促進オフセット算出部2は、事前に設定されている閾値TH_A_kを用いて、以下の(式5)によって第一の閾値比較を行う(ステップS3)。
ΔQPkx2[i]−ΔQPk[⊂ΔQPkx2[i]]>TH_A_k (式5)
ΔQPkx2[i]−ΔQPk[⊂ΔQPkx2[i]]>TH_A_k (式5)
いまはk=16,i=0のため、この(式5)は
ΔQP32[0]−ΔQP16[⊂ΔQP32[0]]>TH_A_k
となる。ΔQP32[0]は、図5で示す、32x32CUで左上に位置するCUのΔQPである。
ΔQP32[0]−ΔQP16[⊂ΔQP32[0]]>TH_A_k
となる。ΔQP32[0]は、図5で示す、32x32CUで左上に位置するCUのΔQPである。
ΔQP16[⊂ΔQP32[0]]とは、同じ32x32CUの位置に「含まれる」16x16CUのΔQPを意味しており、すなわち、図5の16x16CUにおけるΔQP16[0],ΔQP16[1],ΔQP16[2],ΔQP16[3]の4つの位置のΔQPを意味している。TH_A_kは、k=16,32のそれぞれについて事前に設定されている閾値であり、今はk=16のため、TH_A_16が選択される。
換言すると、(式5)は
ΔQP32[0]−ΔQP16[0]>TH_A_16 (式6−1)
ΔQP32[0]−ΔQP16[1]>TH_A_16 (式6−2)
ΔQP32[0]−ΔQP16[2]>TH_A_16 (式6−3)
ΔQP32[0]−ΔQP16[3]>TH_A_16 (式6−4)
の4式を内包しており、(式6−1)から(式6−4)のいずれかが、真になるかを意味している。(式6−1)から(式6−4)のいずれかが真であれば、ステップS3は真、すべて偽であればステップS3は偽となる。
ΔQP32[0]−ΔQP16[0]>TH_A_16 (式6−1)
ΔQP32[0]−ΔQP16[1]>TH_A_16 (式6−2)
ΔQP32[0]−ΔQP16[2]>TH_A_16 (式6−3)
ΔQP32[0]−ΔQP16[3]>TH_A_16 (式6−4)
の4式を内包しており、(式6−1)から(式6−4)のいずれかが、真になるかを意味している。(式6−1)から(式6−4)のいずれかが真であれば、ステップS3は真、すべて偽であればステップS3は偽となる。
ステップS3が真の場合、16x16CUのΔQP値に比べて、32x32CUのΔQP値が、事前に設定された閾値TH_A_16を超えて大きくなる差分が発生していることになり、16x16CUが選択されやすくなるような分割促進オフセットを適用することになる。すなわち、分割促進オフセット算出部2は、事前に設定されているオフセット値OFS_A_kをオフセットに設定する(ステップS4)。いまはk=16,i=0のため、ステップS4では
OFFSET32[0]←OFS_A_16
が実行されることになる。オフセット値は正の数である。
一方、ステップS3が偽の場合、分割促進オフセット算出部2は、上記オフセットに0を設定する(ステップS5)。
OFFSET32[0]←OFS_A_16
が実行されることになる。オフセット値は正の数である。
一方、ステップS3が偽の場合、分割促進オフセット算出部2は、上記オフセットに0を設定する(ステップS5)。
ステップS3では、16x16CUのΔQPに比べて、32x32CUのΔQPが、閾値以上に大きいかを比較するステップであったが、逆に、16x16CUのΔQPに比べて、32x32CUのΔQPが閾値以上に小さいかを比較するステップが、ステップS6である。分割促進オフセット算出部2は、ステップS6の式によって、第二の閾値比較を行う(ステップS6)。
いまはk=16,i=0のため、ステップS6の式は
ΔQP32[0]−ΔQP16[0]<−TH_B_16 (式7−1)
ΔQP32[0]−ΔQP16[1]<−TH_B_16 (式7−2)
ΔQP32[0]−ΔQP16[2]<−TH_B_16 (式7−3)
ΔQP32[0]−ΔQP16[3]<−TH_B_16 (式7−4)
の4式を内包しており、(式7−1)から(式7−4)のいずれかが、真になるかを意味している。(式7−1)から(式7−4)のいずれかが真であれば、ステップS6は真、すべて偽であればステップS6は偽となる。
ΔQP32[0]−ΔQP16[0]<−TH_B_16 (式7−1)
ΔQP32[0]−ΔQP16[1]<−TH_B_16 (式7−2)
ΔQP32[0]−ΔQP16[2]<−TH_B_16 (式7−3)
ΔQP32[0]−ΔQP16[3]<−TH_B_16 (式7−4)
の4式を内包しており、(式7−1)から(式7−4)のいずれかが、真になるかを意味している。(式7−1)から(式7−4)のいずれかが真であれば、ステップS6は真、すべて偽であればステップS6は偽となる。
ステップS6が真の場合、16x16CUのΔQPに比べて、32x32CUのΔQPが、事前に設定された閾値TH_B_16を超えて小さくなる差分が発生していることになり、この場合も、16x16CUが選択されやすくなるような分割促進オフセットを適用することになる。すなわち、分割促進オフセット算出部2は、事前に設定されているオフセット値OFS_B_kが、すでにセットされているオフセット値よりも小さいのであれば(ステップS7で真)、オフセットOFS_B_kをオフセットに設定する(ステップS8)。いまはk=16,i=0のため、ステップS8では
OFFSET32[0]←OFS_B_16
が実行されることになる。
OFFSET32[0]←OFS_B_16
が実行されることになる。
一方、ステップS6が偽の場合、またはステップS7において、すでにOFS_B_kよりも大きな値がオフセットとして設定されている場合(すなわち、OFS_A_k>OFS_B_kであって、ステップS3が真であった場合)には、オフセット値は更新されない。
次に、分割促進オフセット算出部2は、iを1増加させながら(ステップS9)、iが1〜3の場合についてループ処理を行う(ステップS10)。これは図5で示す、32x32CUで右上、左下、右下に位置するCUのΔQPであり、これらについても、ステップS3〜S8のオフセット設定処理が行われることになる。
次に、分割促進オフセット算出部2は、kを2倍することにより(ステップS11)、k=32となり、さらに大きなブロックサイズについて同様の処理が行われる。すなわち、64x64ブロックと、32x32ブロック4つについて、同様の比較およびオフセット値の設定が行われる。ステップS10において、k=32の場合、比較条件はi<1なので、iによるループは実施されない。最後に分割促進オフセット算出部2は、k=64となったところで処理を終了する(ステップS12)。
このように演算された各オフセットが、分割推進オフセットとして、分割促進オフセット算出部2から符号化モード判定部33に対して出力される。
次に、図3を参照して、符号化モード判定部33における分割推進オフセットの適用形態について説明する。図3は、分割促進オフセット算出部2で算出されたオフセットを、符号化モード判定部33に反映する例を示す図である。前述のRD最適化およびそれに類する方法により、各CUの符号化コストCost64[0]、Cost32[0]〜Cost32[3]、Cost16[0]〜Cost16[15]が演算されているものとする。分割推進オフセットがすべて0の場合、符号化モード判定部33は、これらコスト値の組み合わせが最小となるようなCUの組み合わせを選択することになる。
ここで、分割促進オフセット算出部2で算出された分割推進オフセットは、OFFSET32[0]〜OFFSET32[3]がまず、それぞれCost32[0]〜Cost32[3]に加算される。これにより、Cost16と比べてCost32のコスト値は大きくなり、16x16ブロックサイズが選択される比率が増加する。
さらに、Cost64[0]には、OFFSET64[0]の値が加算され、64x64ブロックと比べて32x32ブロックが選択される比率を増加させる。加えてCost64[0]にはOFFSET32[0]〜OFFSET32[3]の合計値もあわせて加算されている。これは16x16と32x32の比較で16x16ブロックサイズが選択されたとしても、最終的に64x64ブロックのコストが最小と判断された場合、16x16ブロックサイズが選択されたか否かにかかわりなく64x64ブロックが選択されてしまうため、これを防ぎ、64x64ブロックサイズを抑制して16x16ブロックサイズの発生比率を増加させるために加算されるものである。
以上説明した方法により、あるCTUの中で画像の特徴量が異なる領域が混在する場合に、CU分割を促進することにより、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制することができる。この結果、同一のCU内で画像の複雑な領域でΔQPが十分大きくならずに符号量が出すぎるという問題や、逆に同一のCU内の画像の平坦な領域でΔQPが十分小さくならずに視覚的な劣化が発生するという問題を解決することができる。
また、本実施形態では、符号化に用いるブロックサイズを事前に決定ないし制限するのではなく、CU分割が促進されるようオフセット値を加えるのみとしている。そのため、本実施形態によってCU分割を促進したとしても、符号化効率の観点で大きなブロックサイズがオフセット値を超えて優れている場合には、大きなブロックサイズが選択される。そのため、符号化に用いるブロックサイズを事前に決定ないし制限する方法と比較して、符号化効率の低下を抑制するという効果がある。
なお、前述した実施形態において、閾値およびオフセット値は事前に設定された値としたが、これを固定値ではなく、符号化の条件に応じて可変とすることもできる。例えば、本実施形態で行っているCUブロックサイズ判定は、符号化を行う際の代表的な量子化パラメータ値(ベースQP)の影響が大きいことから、図4に示すように、各閾値およびオフセット値を、ベースQPの関数としてテーブル参照によって求めてもよい。図4は、閾値およびオフセット値を、符号化の際の代表的な量子化パラメータであるベースQP図をもとにテーブル参照によって求める際のテーブル構造を示す図である。
ベースQPは、例えばTM5のステップ2符号化制御によって、ピクチャ単位、もしくはマクロブロックライン単位(HEVCではCTUライン単位)に決定されるから、本実施形態による処理を行う前に、ピクチャ単位、もしくはマクロブロックライン単位(HEVCではCTUライン単位)で図4に示すようなテーブルによって閾値およびオフセット値を決定し、本実施形態による処理を行えばよい。
また、前述した実施形態はあくまで本発明に基づく実施の一形態に過ぎない。例えば本実施形態においては、あるブロックサイズにおけるΔQP値と、そのブロックサイズを1回分割(4つに分割)したブロックサイズのいずれかのΔQP値との差分が、事前に設定した一定の値を超えている場合に、モード判定時の分割促進オフセットを加算する方式としているが、分割促進オフセットを加算する条件はもちろん上記に限定されるものではない。
また、あるブロックサイズにおけるΔQP値と、そのブロックサイズを1回分割(4つに分割)したブロックサイズのΔQP値との差分が、すべて事前に設定した一定の値を超えている場合とすることもできるし、4つのうち一定の個数が超えている場合とすることもできる。すなわち、ステップS3およびステップS6において、内包する4式のいずれかが真であれば真としたが、これを、内包する4式のうち事前に定めた個数の式が真であれば真とするようにしてもよいし、内包する4式すべてが真の場合に限って真とするようにしてもよい。
また、モード判定オフセットは、コスト値に一定の値を加減算するものに限られることなく、例えばCost64[0]やCost32[0]〜Cost32[3]に一定の値α(αは例えば1.1)を乗ずることにより、小さなブロックサイズを選択されやすくするようにしてもよい。また、乗算と加算の混合とするようにしてもよい。
以上説明したように、異なるCUサイズのΔQPの差が一定の値以上となる場合により小さいブロックサイズが選択されるようなオフセット値を算出し(図2に示す処理動作)、このオフセット値をCUの符号化コストに加算したコストを用いてCU分割を決定することにより、同一のCU内に複雑な領域と平坦な領域が混在する場合において、複雑な領域では符号量が出すぎる一方で平坦な領域では視覚的な劣化が発生するという問題を解決することができる。
特に、あるCTUの中で、画像の特徴量が異なる領域が混在する場合、より具体的にはステップ3制御の結果として異なるΔQPを持つブロックが存在する場合には、CTU内のCU分割を起こりやすくするような制御、具体的にはより小さなCUが発生しやすいようなオフセット値を加減算してCUサイズ判定を行うようにした。この処理により、あるCTUの中で画像の特徴量が異なる領域が混在する場合に、CU分割を促進することにより、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制することができる。
この構成によれば、あるCTUの中で画像の特徴量が異なる領域が混在する場合に、CU分割を促進することにより、複雑な領域と平坦な領域が1つのCUの中に混在することを抑制することができる。この結果、同一のCU内で画像の複雑な領域でΔQPが十分大きくならずに符号量が出すぎるという問題や、逆に同一のCU内の画像の平坦な領域でΔQPが十分小さくならずに視覚的な劣化が発生するという問題を解決することができる。
前述した実施形態における映像符号化装置の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。
複数のブロックサイズの組み合わせを用いて映像を符号化することが不可欠な用途に適用できる。
1・・・マルチブロックサイズΔQP値算出部、2・・・分割促進オフセット算出部、3・・・映像符号化部、31・・・予測部、32・・・符号化コスト評価部、33・・・符号化モード判定部、34・・・符号化部
Claims (5)
- 複数のブロックサイズのブロックを組み合わせて映像の符号化を行う映像符号化装置であって、
複数の前記ブロックサイズに対して画像の特徴量に基づいて量子化ステップを表す値の変化量を算出するΔQP値算出手段と、
異なる前記ブロックサイズ間の前記量子化ステップを表す値が事前に設定した所定の閾値以上異なるか否かを判定し、前記所定の閾値以上異なる場合は、より小さなブロックサイズの選択を促進させるオフセット値を出力する分割促進オフセット算出手段と、
前記オフセット値を加算したコスト値を用いて符号化モード判定を行う符号化モード判定手段と
を備える映像符号化装置。 - 前記分割促進オフセット算出手段は、前記ブロックサイズにおける量子化ステップを表す値と、該ブロックサイズを1回分割した分割ブロックサイズのいずれかの量子化ステップを表す値との差分が、所定の閾値を超えている場合に、前記分割ブロックサイズが選択されやすくなるように事前に設定したモード判定オフセット値を与える請求項1に記載の映像符号化装置。
- 前記所定の閾値と前記オフセット値は、前記映像を符号化する際に用いる量子化ステップの大きさに基づいて決定する請求項1または2に記載の映像符号化装置。
- 複数のブロックサイズのブロックを組み合わせて映像の符号化を行う映像符号化装置が実行する映像符号化方法であって、
複数の前記ブロックサイズに対して画像の特徴量に基づいて量子化ステップを表す値の変化量を算出するΔQP値算出ステップと、
異なる前記ブロックサイズ間の前記量子化ステップを表す値が事前に設定した所定の閾値以上異なるか否かを判定し、前記所定の閾値以上異なる場合は、より小さなブロックサイズの選択を促進させるオフセット値を出力する分割促進オフセット算出ステップと、
前記オフセット値を加算したコスト値を用いて符号化モード判定を行う符号化モード判定ステップと
を有する映像符号化方法。 - コンピュータを、請求項1から3のいずれか1項に記載の映像符号化装置として機能させるための映像符号化プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015117656A JP6053210B1 (ja) | 2015-06-10 | 2015-06-10 | 映像符号化装置、映像符号化方法及び映像符号化プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015117656A JP6053210B1 (ja) | 2015-06-10 | 2015-06-10 | 映像符号化装置、映像符号化方法及び映像符号化プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6053210B1 true JP6053210B1 (ja) | 2016-12-27 |
JP2017005505A JP2017005505A (ja) | 2017-01-05 |
Family
ID=57582189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015117656A Active JP6053210B1 (ja) | 2015-06-10 | 2015-06-10 | 映像符号化装置、映像符号化方法及び映像符号化プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6053210B1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7450078B1 (ja) | 2023-02-15 | 2024-03-14 | Nttイノベーティブデバイス株式会社 | 映像符号化装置、および、映像符号化方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1995014350A1 (en) * | 1993-11-15 | 1995-05-26 | National Semiconductor Corporation | Quadtree-structured walsh transform coding |
WO2006052577A2 (en) * | 2004-11-04 | 2006-05-18 | Thomson Licensing | Method and apparatus for fast mode decision of b-frames in a video encoder |
JP2013106317A (ja) * | 2011-11-16 | 2013-05-30 | Jvc Kenwood Corp | 動画像復号装置、動画像復号方法及び動画像復号プログラム |
JP2014082639A (ja) * | 2012-10-16 | 2014-05-08 | Canon Inc | 画像符号化装置およびその方法 |
JP2015027022A (ja) * | 2013-07-29 | 2015-02-05 | Kddi株式会社 | 動画像符号化装置、動画像符号化方法、およびプログラム |
JP6069128B2 (ja) * | 2013-08-08 | 2017-02-01 | 日本電信電話株式会社 | 変換量子化方法、変換量子化装置及び変換量子化プログラム |
JP2015076861A (ja) * | 2013-10-11 | 2015-04-20 | ソニー株式会社 | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
-
2015
- 2015-06-10 JP JP2015117656A patent/JP6053210B1/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017005505A (ja) | 2017-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6886528B2 (ja) | 映像コーディングシステムにおけるイントラ予測による映像のデコーディング方法及び装置 | |
KR102030384B1 (ko) | 잔차 계수 부호화/복호화 방법 및 장치 | |
JP6462119B2 (ja) | コンピューティングデバイス | |
KR101849891B1 (ko) | 화상 필터 및 복호 장치 | |
EP3120556B1 (en) | Encoder-side decisions for screen content encoding | |
KR101997681B1 (ko) | 양자화 파라미터 기반의 잔차 블록 부호화/복호화 방법 및 장치 | |
KR20170026276A (ko) | 비디오 신호 처리 방법 및 장치 | |
KR20170108367A (ko) | 인트라 예측 기반의 비디오 신호 처리 방법 및 장치 | |
AU2014385774A1 (en) | Adaptive switching of color spaces, color sampling rates and/or bit depths | |
KR20170021337A (ko) | 해시 기반의 블록 매칭의 결과에 기초한 인코더 결정 | |
KR102446669B1 (ko) | 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치 | |
KR20190140423A (ko) | 스케일링을 이용한 잔차 블록 부호화/복호화 방법 및 장치 | |
US8559738B2 (en) | Predictive coding method for coding texture of image | |
KR20180032775A (ko) | 적응적 블록 분할에 기반한 비디오 신호 처리 방법 및 장치 | |
JP6053210B1 (ja) | 映像符号化装置、映像符号化方法及び映像符号化プログラム | |
KR20190140422A (ko) | 양자화 파라미터 기반의 잔차 블록 부호화/복호화 방법 및 장치 | |
JP2013138502A (ja) | 符号化装置及びその制御方法、コンピュータプログラム | |
JP2020005228A (ja) | ループフィルタ制御装置、画像符号化装置、画像復号装置、及びプログラム | |
KR101997686B1 (ko) | 스케일링을 이용한 잔차 블록 부호화/복호화 방법 및 장치 | |
JP2008219630A (ja) | 動画像符号化装置 | |
KR20220061085A (ko) | 영상 신호 부호화/복호화 방법 및 장치 | |
KR20230058356A (ko) | 양자화 파라미터 기반의 잔차 블록 부호화/복호화 방법 및 장치 | |
KR20190143418A (ko) | 잔차 계수 부호화/복호화 방법 및 장치 | |
JP2013102523A (ja) | 画像処理装置、符号化装置、復号装置及びプログラム | |
KR20170058854A (ko) | 병렬처리 부호화 환경에서 적응적 움직임 탐색영역 설정 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161128 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6053210 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |