JP6012307B2 - 動画像符号化装置及びその制御方法、並びに、プログラム - Google Patents
動画像符号化装置及びその制御方法、並びに、プログラム Download PDFInfo
- Publication number
- JP6012307B2 JP6012307B2 JP2012153021A JP2012153021A JP6012307B2 JP 6012307 B2 JP6012307 B2 JP 6012307B2 JP 2012153021 A JP2012153021 A JP 2012153021A JP 2012153021 A JP2012153021 A JP 2012153021A JP 6012307 B2 JP6012307 B2 JP 6012307B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- filter strength
- flatness
- filter
- image quality
- 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
Description
本発明は動画像符号化装置及びその制御方法、並びに、プログラムに関する。
画像を高能率符号化するための技術として、JPEG方式の圧縮技術や動き予測・動き補償技術を用いたMPEG1、MPEG2といった符号化方式が確立されている。各メーカーは、これらの符号化方式を利用して画像を記録媒体に記録可能としたディジタルカメラやディジタルビデオカメラといった撮像装置或いはDVDレコーダーなどを開発し製品化している。
ところで、ディジタル化された動画像は膨大なデータ量となる。膨大なデータ量を圧縮するためには、ブロック単位に符号化を行う際に粗く量子化を行い、圧縮率を高くする必要がある。しかし、粗く量子化することにより発生する量子化誤差により、ブロック境界に画素値レベルの差が発生する。映像視聴時にこの画素値レベルの差(以下、ブロックノイズと称す)が視覚されるため、画質劣化の要因となっていた。符号化方式のH.264では、このようなブロックノイズを低減するために、デブロッキングフィルタと呼ばれるノイズリダクションフィルタが規格化された。H.264はITU−T(国際電気通信連合 電気通信標準化部門)とISO(国際標準化機構)によって規格化され、正式にはH.264/MPEG−4 part10という。
このデブロッキングフィルタ処理は、復号化された画像に対して施される。符号化時にも動き補償のために局所復号化を行う場合には、この局所復号化画像に対し、デブロックキングフィルタ処理を行うことができる。このデブロッキングフィルタのフィルタ強度は、H.264で規格化されている方式に従い、例えば、量子化パラメータ等に応じて画素単位に変化する。また、画素単位よりも大きい領域(スライス)単位に変更する仕組みが規格化されている。この仕組みに従い、符号化時にデブロッキングフィルタのフィルタ強度を制御することが可能となっている。デブロッキングフィルタ処理された局所復号化画像は、符号化順で次フレームの動き補償を行う際に参照する画像となるため、ブロックノイズを低減させることにより、符号化効率を向上させることが可能となる。
このような符号化時のフィルタ処理におけるフィルタ強度の制御技術として、特許文献1のような技術が開示されている。特許文献1は、符号化前の原画像と符号化時に動き補償により作成された予測画像との間で算出されたPSNRに応じて、原画像に対する帯域制限フィルタの強度を変更する技術を開示している。
デブロッキングフィルタ処理では、ブロックノイズの度合いに適したフィルタ強度で処理を施さなければ、画像の絵柄がボケてしまったり、また、逆にブロックノイズを十分に低減できなかったりするといった課題がある。また、デブロッキングフィルタ処理後の画像を参照して動き補償を行う際に、ブロックノイズが十分に低減できていないと、動き補償後の予測画像に本来符号化前の画像には存在しないブロックノイズが残存してしまう。その場合、符号化効率が低下してしまう問題がある。
そこで本発明は、ブロックノイズの度合いに適したフィルタ強度で処理を行って、ブロックノイズを十分に低減することが可能となる技術を提供することを目的とする。
上記課題を解決するための本発明は、動画像符号化装置であって、
予測符号化処理のための予測画像を生成する予測画像生成手段と、
原画像を所定数の画素から成るブロックに分割し、前記予測画像との差分についてブロック単位に直交変換及び量子化を行う変換手段と、
前記変換手段における変換結果を符号化して符号化ストリームを生成する符号化手段と、
前記変換手段における前記変換結果に対して逆量子化及び逆直交変換を行って局所復号化画像を出力する局所復号化手段と
を備え、
前記原画像と前記局所復号化画像とから画質劣化度をブロック単位に算出する画質劣化度算出手段と、
前記原画像または前記局所復号化画像の平坦度をブロック単位に算出する平坦度算出手段と、
前記画質劣化度及び前記平坦度に応じたフィルタ強度をブロック単位に決定するフィルタ強度決定手段と、
前記局所復号化画像に対し、前記フィルタ強度を用いてデブロッキングフィルタ処理を行うフィルタ処理手段と、
を更に備え、
前記予測画像生成手段は、前記デブロッキングフィルタ処理後の局所復号化画像を用いて、前記予測画像を生成し、
前記フィルタ強度決定手段は、前記画質劣化度と前記平坦度に基づき、前記画質劣化度が高く、かつ、前記平坦度が高い画像ほど高いフィルタ強度を算出するフィルタ強度算出手段を備えることを特徴とする。
予測符号化処理のための予測画像を生成する予測画像生成手段と、
原画像を所定数の画素から成るブロックに分割し、前記予測画像との差分についてブロック単位に直交変換及び量子化を行う変換手段と、
前記変換手段における変換結果を符号化して符号化ストリームを生成する符号化手段と、
前記変換手段における前記変換結果に対して逆量子化及び逆直交変換を行って局所復号化画像を出力する局所復号化手段と
を備え、
前記原画像と前記局所復号化画像とから画質劣化度をブロック単位に算出する画質劣化度算出手段と、
前記原画像または前記局所復号化画像の平坦度をブロック単位に算出する平坦度算出手段と、
前記画質劣化度及び前記平坦度に応じたフィルタ強度をブロック単位に決定するフィルタ強度決定手段と、
前記局所復号化画像に対し、前記フィルタ強度を用いてデブロッキングフィルタ処理を行うフィルタ処理手段と、
を更に備え、
前記予測画像生成手段は、前記デブロッキングフィルタ処理後の局所復号化画像を用いて、前記予測画像を生成し、
前記フィルタ強度決定手段は、前記画質劣化度と前記平坦度に基づき、前記画質劣化度が高く、かつ、前記平坦度が高い画像ほど高いフィルタ強度を算出するフィルタ強度算出手段を備えることを特徴とする。
本発明によれば、ブロックノイズの度合いに適したフィルタ強度で処理を行って、ブロックノイズを十分に低減することが可能となる。
以下、図面を参照しながら本発明の好適な実施の形態について説明する。
図1は、本発明の実施形態による動画像符号化装置の構成例を示すブロック図である。本実施形態における符号化装置は、原画像と局所復号化画像の画質劣化度及び平坦度に応じて算出したフィルタ強度に基づきデブロッキングフィルタ処理を行う動画像符号化装置である。以下、本発明の構成例について図1を参照して説明する。
本実施形態における符号化装置100は、フレーム並替部101、減算器102、直交変換部103、量子化部104、算術符号化部105、逆量子化部106、逆直交変換部107、加算器108、フレームメモリ109及び113、イントラ予測部110、スイッチ111、116及び119、デブロッキングフィルタ112、インター予測部114、動き検出部115、平坦度算出部120、画質劣化度算出部117、フィルタ強度算出部118、フィルタ強度補正部122を有し構成される。本実施形態における符号化装置100は、入力された原画像を所定数の画素から成るブロックに分割すし、ブロック単位に予測符号化処理を行って符号化ストリームを出力する。
本実施形態における符号化装置100は、フレーム並替部101、減算器102、直交変換部103、量子化部104、算術符号化部105、逆量子化部106、逆直交変換部107、加算器108、フレームメモリ109及び113、イントラ予測部110、スイッチ111、116及び119、デブロッキングフィルタ112、インター予測部114、動き検出部115、平坦度算出部120、画質劣化度算出部117、フィルタ強度算出部118、フィルタ強度補正部122を有し構成される。本実施形態における符号化装置100は、入力された原画像を所定数の画素から成るブロックに分割すし、ブロック単位に予測符号化処理を行って符号化ストリームを出力する。
図1の動画像符号化装置において、各ブロックは専用ロジック回路やメモリを用いてハードウェア的に構成されてもよい。或いは、メモリに記憶されている処理プログラムをCPU等のコンピュータが実行することにより、ソフトウェア的に構成されてもよい。
続いて、符号化処理について説明する。まず、フレーム並替部101は、表示順で入力された原画像(入力画像データ)を符号化順に並び替える。減算器102は、入力画像データから、スイッチ116を介して提供される予測画像データを減算し、画像残差データを直交変換部103に出力する。なお、予測画像データの生成については後述する。
直交変換部103は、減算器102が出力した画像残差データを直交変換処理して変換係数を出力する。量子化部104は、直交変換部103が出力した変換係数を所定の量子化パラメータを用いて量子化する。ここで、直交変換部103及び量子化部104をまとめて変換部と称す。算術符号化部105は、直交変換、量子化を経た変換部による変換結果である量子化済の変換係数を算術符号化して符号化ストリームとして出力する。この量子化部104で量子化された変換係数は、前述した予測画像生成にも使われる。
逆量子化部106は、量子化部104で量子化された変換係数を逆量子化する。逆直交変換部107は、逆量子化部106で逆量子化された変換係数を逆直交変換し、復号画像残差データとして出力する。加算器108は、逆直交変換部107より出力された復号画像残差データと、予測画像データとを加算して、局所復号化画像データとして出力する。局所復号化画像データの出力先は、フレームメモリ109、スイッチ111及び119、画質劣化度算出部117である。逆量子化部106、逆直交変換部107及び加算器108をまとめて局所復号化部と称す。
フレームメモリ109は、加算器108から出力された局所復号化画像データを記憶する。スイッチ111は、加算器108から出力された局所復号化画像データに対してデブロッキングフィルタ処理を施すか否かを切り替える。局所復号化画像データに対してデブロッキングフィルタ処理を施す場合、デブロッキングフィルタ112が後述の方式にて算出されたフィルタ強度に基づきデブロッキングフィルタ処理を行う。フレームメモリ113は、デブロッキングフィルタ処理された局所復号化画像を記憶する。デブロッキングフィルタ処理を施さない場合、デブロッキングフィルタ112を介さずにフレームメモリ113に直接記録される。局所復号化画像データの中で、以降の予測で参照される可能性があるデータは、フレームメモリ109または113に保存される。
イントラ予測部110は、フレームメモリ109に記録された局所復号化画像データを用いてフレーム内予測処理を行い、予測画像生成を行う。また、インター予測部114は、フレームメモリ113に記録されたデブロッキングフィルタ処理後の局所復号化画像を用いて動き検出部115により検出された動きベクトル情報に基づくフレーム間予測処理を行い、予測画像生成を行う。動き検出部115は、、フレームメモリ113に記録された局所復号画像を参照して入力画像データにおける動きベクトルを検出する。検出した動きベクトル情報を算術符号化部105及びインター予測部114にそれぞれ出力する。動きベクトル検出の手法は公知であるので、ここでの詳細な説明は省略する。尚、フレームメモリ113に記録されているデブロッキングフィルタ処理後の局所復号化画像にブロックノイズが残存していると、原画像には存在していない情報が予測画像データに存在するため、減算器102の出力データ量が多く発生してしまう。つまり、デブロッキングフィルタ112により十分ブロックノイズを低減することにより、減算器102の出力データ量を減らし、符号化効率を向上させることが可能となる。
スイッチ116は、予測画像データとしてイントラ予測部110で生成された予測画像データ又はインター予測部114で生成された予測画像データのどちらを用いるか、すなわちイントラ予測とインター予測とのどちらを用いるかを選択する選択部である。例えば、Iピクチャであれば、イントラ予測部110からの出力を選択し、PピクチャやBピクチャであればイントラ予測部110またはインター予測部114の出力のうち、予測精度の高い方を選択する。選択された予測画像データは減算器102、加算器108に出力される。Iピクチャ、Pピクチャ、Bピクチャといったように、各フレームの予測方式の種別をピクチャタイプと称す。
画質劣化度算出部117は、原画像とその原画像を符号化し、局所復号化を行った局所復号化画像間の画質劣化度を算出する。画質劣化度の算出は、画像の小領域毎に算出する。尚、画質劣化度を算出するための原画像と局所復号化画像の画像は、符号化装置内部で位相を合わせ、同一フレームのものとする。フィルタ強度算出部118は、平坦度算出部120により算出された平坦度と画質劣化度算出部117により算出された画質劣化度に応じて小領域毎にフィルタ強度を算出する。
スイッチ119は、原画像又は局所復号化画像のどちらを平坦度算出部120に入力するか選択するため選択部である。スイッチ119の切り替えは動的に行っても良いし、ユーザの操作に応じて切り替えても良いし、また、予めデフォルトで設定しておくようにしても良い。具体的な切り替えの基準として、例えば符号化時の視覚特性を重視する場合には、原画像を選択することができる。一方、再生時の視覚特性を重視する場合には、局所復号化画像を選択することができる。
平坦度算出部120は、画像の小領域毎に絵柄の平坦度を算出する。平坦度算出のための具体的手法については後述する。フィルタ強度補正部122は、フィルタ強度算出部118により算出されたフィルタ強度を平坦度算出部120により算出された平坦度に応じて補正し、補正後の補正フィルタ強度をデブロッキングフィルタ112に出力する。なお、画質劣化度算出部117、フィルタ強度算出部、平坦度算出部120、フィルタ強度補正部122をまとめてフィルタ強度決定部10という。
以上が本実施形態における符号化装置に関する説明である。尚、本実施形態では、デブロッキングフィルタ処理前の局所復号化画像を用いてフィルタ強度を算出する構成について説明を行する。しかし、フィルタ強度の算出はデブロッキングフィルタ処理後の局所復号化画像を用いても良い。デブロッキングフィルタ処理後の局所復号化画像を用いてフィルタ強度を算出する場合、フィルタ処理後画像に対する画質劣化度及び平坦度に応じて、フィルタ強度を算出する構成となる。
次に、平坦度算出部120、画質劣化度算出部117、フィルタ強度算出部118、フィルタ強度補正部122における処理について詳しく説明する。
(平坦度算出部120)
まず、平坦度算出部120について、図2(a)を参照して詳細に説明する。平坦度算出部120は、原画像若しくは局所復号化画像のうちスイッチ119で選択された画像の平坦度を算出する。この平坦度の算出方法について説明する。
まず、平坦度算出部120について、図2(a)を参照して詳細に説明する。平坦度算出部120は、原画像若しくは局所復号化画像のうちスイッチ119で選択された画像の平坦度を算出する。この平坦度の算出方法について説明する。
まず、平坦度算出部120には、スイッチ119により選択された画像が入力される。入力画像をある所定サイズのブロック(小領域)に分割する。所定サイズとは、例えば、16画素×16画素のサイズとすることができる。その後、分割したブロック毎に画素値の分散値を算出する。分散値とは、画素値の大きさのちらばり具合を示す指標であり、平坦な絵柄ほど分散値が小さく、複雑な絵柄ほど分散値が大きくなる傾向がある。分散値は、例えば注目画素と隣接画素との差分値をブロック内の各画素について計算し、得られた差分値を積算した値として求めることができる。
平坦度算出部120は、このブロック毎の分散値に基づき、ブロック毎の平坦度を算出する。つまり、分散値が小さいほど平坦度は大きく、分散値が大きいほど平坦度は小さくなる。この平坦度の例を図2(a)に示す。図2(a)は、平坦度算出部120で算出した平坦度を示す図であり、ブロック毎の平坦度が数字で表されている。図2(a)は、画像が8×6のブロックに分割した例を示している。平坦度は、0〜9の10段階で表されており、平坦度0のブロックは平坦な絵柄であり、平坦度9のブロックは複雑な絵柄であることを示す。例えば、図2(a)における右上のブロック201は、平坦度1なので比較的平坦な絵柄であり、図2(a)における左下のブロック202は、平坦度9なので複雑な絵柄であることを示している。尚、分散値から平坦度への変換は、例えば、平坦度の各段階に対応する閾値を用意し、分散値を当該閾値を用いて10段階のいずれかの段階に当てはめる閾値処理により行うことができる。以上のように、平坦度算出部120は、スイッチ119で選択された画像のブロック毎の平坦度を算出し、その平坦度をフィルタ強度算出部118及びフィルタ強度補正部122に出力する。
(画質劣化度算出部117)
次に、画質劣化度算出部117について、図2(b)を参照して詳細に説明する。画質劣化度算出部117には、原画像及び局所復号化画像が入力され、原画像と局所復号化画像の違い、つまり、符号化による画質劣化度を算出する。画質劣化度とは、例えば、ブロック毎の差分絶対値総和やPSNR(Peak Signal to Noise Ratio:ピーク信号対雑音比)が挙げられる。以下、このような差分絶対値総和及びPSNRの算出方法について説明する。
次に、画質劣化度算出部117について、図2(b)を参照して詳細に説明する。画質劣化度算出部117には、原画像及び局所復号化画像が入力され、原画像と局所復号化画像の違い、つまり、符号化による画質劣化度を算出する。画質劣化度とは、例えば、ブロック毎の差分絶対値総和やPSNR(Peak Signal to Noise Ratio:ピーク信号対雑音比)が挙げられる。以下、このような差分絶対値総和及びPSNRの算出方法について説明する。
まず、画質劣化度算出部117には、原画像及び局所復号化画像の2画像が入力される。入力された2画像をある所定サイズのブロック(小領域)に分割する。所定サイズとは、例えば、16画素×16画素のサイズとすることができる。その後、分割したブロック毎に2画像間の画素値の差分絶対値総和、若しくは、PSNRを算出する。差分絶対値総和は、原画像及び局所復号化画像のブロックの画像の対応する位置の画素間の絶対値差分を総和して得られる値である。PSNRとは、2画像間の違いを表す指標であり、PSNRの値が小さいほど原画像と局所復号化画像の画素値の差が大きく、PSNRの値が大きいほど当該画素値の差が小さいといった傾向がある。 このPSNRは、局所復号化画像と原画像とを用いて、以下の式1により算出される。
ここで、NおよびMは画像の縦と横の画素数を表す。また、p(i,j)は現行の画像データにおける位置(i,j)の画素値を表し、p'(i,j)は局所復号化画像における位置(i,j)の画素値を表す。Tは、画像の階調数-1(8ビット/ピクセル画像ではT=255)を表す。
ここで、NおよびMは画像の縦と横の画素数を表す。また、p(i,j)は現行の画像データにおける位置(i,j)の画素値を表し、p'(i,j)は局所復号化画像における位置(i,j)の画素値を表す。Tは、画像の階調数-1(8ビット/ピクセル画像ではT=255)を表す。
画質劣化度算出部117は、このブロック毎の差分絶対値総和若しくはPSNRに基づき、ブロック毎の画質劣化度を算出する。つまり、差分絶対値総和が小さいか、又は、PSNRの値が大きいほど画質劣化度は小さく、差分絶対値総和が大きい又はPSNRの値が小さいほど画質劣化度は大きくなる。この画質劣化度の例を図2(b)に示す。図2(b)は、画質劣化度算出部117で算出した画質劣化度を示す図であり、ブロック毎の画質劣化度が数字で表されている。図2(b)は、画像を8×6のブロックに分割した例を示している。画質劣化度は、0〜9の10段階で表されており、画質劣化度9のブロックは画質劣化度が高い領域であり、画質劣化度0のブロックは画質劣化度が低い領域であることを示す。例えば、図2(b)における右上のブロック203は、画質劣化度1なので比較的画質劣化度が低い領域であり、図2(b)における左下のブロック204は、画質劣化度7なので比較的画質劣化度が高い領域であることを示している。尚、差分絶対値総和若しくはPSNRから画質劣化度への変換は、平坦度の場合と同様に例えば閾値処理により行うことができる。
以上のように、画質劣化度算出部117は、原画像及び局所復号化画像間における画質劣化度を算出し、その画質劣化度をフィルタ強度算出部118に出力する。
(フィルタ強度算出部118)
フィルタ強度算出部118について、図3及び図4を参照して詳細に説明する。フィルタ強度算出部118は、平坦度算出部120により算出された平坦度と、画質劣化度算出部117により算出された画質劣化度とに応じてブロック毎にフィルタ強度を算出する。
フィルタ強度算出部118について、図3及び図4を参照して詳細に説明する。フィルタ強度算出部118は、平坦度算出部120により算出された平坦度と、画質劣化度算出部117により算出された画質劣化度とに応じてブロック毎にフィルタ強度を算出する。
まず、画質劣化度とフィルタ強度の関係について説明する。本実施形態では、原画像と局所符号化画像の違い、つまり、符号化による画質の劣化度を画質劣化度としている。この符号化による画質劣化度が大きい場合は、大きなブロックノイズが発生している可能性が高いと言える。このような大きなブロックノイズを低減するためには強いフィルタ強度でフィルタ処理を行う必要がある。また、符号化による画質劣化が小さい場合は、ブロックノイズが発生している可能性が低いと言える。このような場合、強いフィルタ強度でフィルタ処理を行うと、画像の絵柄がボケてしまう可能性があるため、弱いフィルタ強度でフィルタ処理を行う必要がある。つまり、画質劣化度が大きいほど、強いフィルタ強度でフィルタ処理を行うことにより、ブロックノイズを低減することができる。また、画質劣化度が小さいほど、弱いフィルタ強度でフィルタ処理を行うことにより、画像の絵柄のボケを低減することができる。
次に、平坦度とフィルタ強度の関係について説明する。本実施形態では、原画像若しくは局所符号化画像の平坦度を算出している。一般的に、人間の視覚特性として平坦な絵柄部分に発生する画質劣化は、複雑な絵柄部分に発生する画質劣化よりも目立ち易いと言われている。つまり、同じ大きさのブロックノイズだとしても、平坦な絵柄部分で発生した場合と複雑な絵柄部分で発生した場合を比較すると、平坦な絵柄部分で発生した場合の方が、視覚特性上ブロックノイズが目立ち易いと言える。このような平坦な絵柄部分で発生した目立ち易いブロックノイズは、確実に低減したいため、強いフィルタ強度でフィルタ処理を行う。逆に、複雑な絵柄部分に発生した目立ち難いブロックノイズに対し、強いフィルタ強度でフィルタ処理を行うと、目立ち難いブロックノイズを低減するだけではなく、画像の絵柄もボカしてしまう。そのため、弱いフィルタ強度でフィルタ処理を行う必要がある。つまり、平坦な絵柄部分で発生したブロックノイズに対しては、強いフィルタ強度でフィルタ処理を行うことにより、目立ち易いブロックノイズを低減することができる。また、複雑な絵柄部分で発生したブロックノイズに対しては、弱いフィルタ強度でフィルタ処理を行うことにより、画像の絵柄のボケを低減できる。
以上のように、フィルタ強度算出部118は、画質劣化度及び平坦度に応じてブロック毎のフィルタ強度を算出する。以下、ブロック毎のフィルタ強度算出方法について、図3を参照して説明する。図3は、X軸を画質劣化度、Y軸を平坦度、Z軸をフィルタ強度とした時の画質劣化度、平坦度及びフィルタ強度の関係を示した図である。尚、フィルタ強度は、値が大きいほど強いフィルタ強度を表すものとし、−6〜+6まで1刻み精度で13段階の設定が可能なものとする。
図3では、平坦度9、画質劣化度9の場合に、最も強いフィルタ強度+6が算出され、平坦度0、画質劣化度0の場合に、最も弱いフィルタ強度−6が算出される例を示している。つまり、フィルタ強度算出部118は、平坦な絵柄且つ画質劣化度が大きい場合に、最も強いフィルタ強度を算出し、複雑な絵柄且つ画質劣化度が小さい場合に、最も弱いフィルタ強度を算出する。フィルタ強度算出部118は、図2(a)の平坦度及び図2(b)の画質劣化度の例において、例えば以下の式2に基づいて図4のようなフィルタ強度を算出する。
Vs=2/3(Vf+Vd)−6 ・・・(式2)
上式においてVsはフィルタ強度、Vfは平坦度、Vdは画質劣化度をそれぞれ表す。なお、式2の計算結果における小数点は四捨五入する。
Vs=2/3(Vf+Vd)−6 ・・・(式2)
上式においてVsはフィルタ強度、Vfは平坦度、Vdは画質劣化度をそれぞれ表す。なお、式2の計算結果における小数点は四捨五入する。
尚、平坦度0、画質劣化度0の場合は、最も弱いフィルタ強度−6を算出せずに、スイッチ111により局所復号化画像に対し、デブロッキングフィルタ処理を施さないよう制御しても良い。
また、図1において、平坦度算出部120により平坦度を算出する画像は、スイッチ119により原画像若しくは局所復号化画像のいずれかに選択可能な構成となっている。実際に符号化した画像を鑑賞する際は、符号化した画像を復号化し、鑑賞する。そのため復号化画像を鑑賞する時の画質劣化の見え方に応じてフィルタ強度を制御する場合は、局所復号化画像の平坦度に応じてフィルタ強度を算出するのが良い。しかし、局所復号化画像には符号化によるノイズが含まれており、そのノイズにより、正確な平坦度が算出されない可能性がある。一方、原画像は、符号化前の画像であるために、局所復号化画像のような符号化ノイズは発生しないため、符号化ノイズに影響されずに平坦度が算出可能である。そのため、例えば、符号化ビットレートが高い場合等の符号化ノイズの発生が少ないと予想される場合は、局所復号化画像で平坦度を算出し、符号化ビットレートが低い場合等の符号化ノイズの発生が多いと予想される場合は、原画像で平坦度を算出しても良い。
(フィルタ強度補正部122)
次に、フィルタ強度補正部122について、図2、図4、図5、図6及び図7を参照して詳細に説明する。
次に、フィルタ強度補正部122について、図2、図4、図5、図6及び図7を参照して詳細に説明する。
図5は、フィルタ強度補正部122の構成例を示す図である。フィルタ強度補正部122は、平坦度毎面積占有率算出部501、平坦度毎平均フィルタ強度算出部502、加重加算部503、空間平滑化処理部504、スイッチ505及び時間平滑化処理部506を有して構成され、平坦度に応じてフィルタ強度を補正し、補正フィルタ強度を出力する。
平坦度毎面積占有率算出部501は、同一平坦度を持つブロックの面積を算出し、その面積が全体の面積に占める割合を面積占有率として算出する。例えば、図2(a)の例では、1つのブロックの面積を1とすると、平坦度8の面積は5である。面積占有率は、5/48=0.104となる。平坦度毎面積占有率算出部501は、このような面積占有率の算出を全ての平坦度に行う。図2(a)の例では、平坦度が0〜9のブロックが存在するので、平坦度毎に合計10個の面積占有率を算出する。平坦度0〜4は、面積が1であるので面積占有率は1/48=0.021となる。平坦度5、6は面積が4であるので面積占有率は4/48=0.083となる。平坦度7は面積が5であるので面積占有率は5/48=0.104となる。平坦度9は面積が25であるので面積占有率は5/48=0.521となる。
平坦度毎平均フィルタ強度算出部502は、ブロック毎に算出されたフィルタ強度について平坦度毎に平均化処理を行う。例えば、図2(a)の例では、1つのブロックの面積を1とすると、平坦度8の面積は5である。図4の例では、平坦度8の平均フィルタ強度は、{(+5)+(+5)+(+3)+(+3)+(+5)}/5=4.2となる。平坦度毎平均フィルタ強度算出部502は、このような平均フィルタ強度の算出を全ての平坦度に対して行う。図2(a)の例では、平坦度が0〜9のブロックが存在するので、平坦度毎に合計10個の平均フィルタ強度を算出する。
加重加算部503は、平坦度毎平均フィルタ強度算出部502により算出された平坦度毎の平均フィルタ強度に対し、平坦度毎面積占有率算出部501により算出された平坦度毎の面積占有率を乗算する。この処理を全ての平坦度に対し行い、乗算結果を総和する。これにより、平坦度毎の平均フィルタ強度が面積占有率に応じて加重加算され、ある1つのフィルタ強度が算出される。図2(a)の場合は、加重加算平均フィルタ強度は3となり、このフィルタ強度を図6(a)のように、全ブロックのフィルタ強度とする。
なお、図6(a)の例では、画像全体(1フレーム)について加重加算平均を行った場合を説明したが、画像の一部の所定領域内で加重加算平均を行っても良い。例えばブロック単位、例えばスライス単位に加重加算平均を行っても良い。その場合、画像に適用されるフィルタ強度は例えば図6(b)に示すようになる。空間平滑化処理部504は、ブロック毎に算出されたフィルタ強度に対し、空間方向で平滑化処理を行う。例えば、注目ブロックとその周辺のブロックのフィルタ強度の加算値を加算ブロック数で割った値として、平滑化処理済のフィルタ強度を求めることができる。平滑化処理の方法自体は公知の方法が数多くあるので、それらのいずれかの方法を用いればよい。
図4のブロック毎のフィルタ強度に対し、空間方向で平滑化処理を行ったフィルタ強度の例を図6(c)に示す。図4と図6(c)を比較すると、隣接するブロック間でフィルタ強度の差が小さくなっている。隣接するブロック間においてフィルタ強度の差が大きいと、ブロック毎にブロックノイズの低減度合いが異なり、ブロックノイズが低減できているブロックと低減できていないブロックが隣接する可能性がある。そのようなフィルタにより処理された画像を鑑賞した場合、観察者の目には不自然に映ってしまう。特に、同一被写体においてブロックノイズが低減できている領域と低減できていない領域とが併存している場合、より不自然に見えてしまう。これに対して空間平滑化処理部504は、係る問題を解決するために空間的に平滑化処理を行い、隣接するブロック間でのフィルタ強度の差を小さくする。
スイッチ505は、図6(a)または図6(b)のように面積占有率に応じて加重加算したフィルタ強度と、図6(c)のように空間的に平滑化処理を行ったフィルタ強度とのうち、いずれかを選択する。スイッチ505は、フィルタ強度の変更が可能となる単位に応じて方式を選択する。例えば、ブロック単位に設定可能となる場合には空間的に平滑化処理を行ったフィルタ強度、即ち図6(c)の形式を選択する。一方、複数のブロック単位(例えば、スライスやフレーム)で設定が可能となる場合は、加重加算したフィルタ強度、即ち図6(a)または(b)の形式を選択する。例えば、スライス単位にフィルタ強度が設定される場合、同一スライスに属するブロックについては共通のフィルタ強度が図6(b)のように設定される。画像全体(フレーム)について共通のフィルタ強度が設定される場合には図6(a)のようになる。
なお、例えばH.264規格においては、スライス単位にフィルタ強度が変更可能である。フィルタ強度をより適応的に変更するためには1フレーム内に複数のスライスを設定する必要があるが、複数のスライスを設定することにより、規格上、様々な符号化の制約が発生し、かえって符号化効率が低下してしまう可能性がある。そのため、H.264では1フレーム内において多数のスライスを設定しない符号化方式が一般的である。例えば、1フレーム内において、1つのスライスを設定した場合は、1フレーム全体に対し1つのフィルタ強度が設定可能となる。
このような場合は、図6(a)のような加重加算を行ったフィルタ強度を選択することにより、1フレーム全体に対し1つのフィルタ強度でフィルタ処理を行うことができる。このフィルタ強度は、面積占有率により加重加算されているため、面積の大きい、つまり、画像鑑賞時に着目する可能性が高い領域のフィルタ強度に重み付けされ算出されている。これにより、1フレーム全体に対し1つのフィルタ強度だとしても、着目する可能性が高い領域のブロックノイズは低減できる可能性が高くなる。なお、本発明は、その適用範囲がH.264規格に限定されることはなく、1フレーム内に複数スライスが設定される場合(図6(b))や、ブロック単位にフィルタ強度の変更が可能である場合(図6(c))であっても適用が可能である。
次に、時間平滑化処理部506は、時間的に異なるフレーム間において、急激にフィルタ強度が変化しないように、時間方向において平滑化処理を行う。時間方向で異なるフレーム間において、急激にフィルタ強度が変化してしまうと、フレーム毎にブロックノイズの低減度合いが異なり、時間的にブロックノイズが低減できているフレームとできていないフレームとが発生する可能性がある。そのため、このような画像を鑑賞した際には、ブロックノイズが時間的に知覚されたり、されなかったりするために、不自然に見えてしまう。時間平滑化処理部506は、このような問題を解決するために、図7のように複数フレームにおける同位置のブロック毎のフィルタ強度に対し平滑化処理を行う。図7の例では、隣接する2フレーム間において、フレーム内での位置が対応するブロックどうしでフィルタ強度の平均値を算出して平滑化処理を行っているが、平滑化処理を行うフレーム数はこれに限ったものではない。例えば、15フレームや30フレーム期間において平滑化処理を行っても良い。平滑化処理を行うフレーム数を増やすことにより、時間的なフィルタ強度の変化をより緩やかにすることができる。
また、ブロックノイズの大きさは、ピクチャタイプによって変わることがある。例えば、Iピクチャに発生するブロックノイズは小さいが、Bピクチャに発生するブロックノイズは大きい場合がある。このような場合、異なるピクチャタイプで時間的にフィルタ強度の平滑化処理を行ってしまうと、Iピクチャには強すぎるフィルタ強度、Bピクチャには弱すぎるフィルタ強度を算出してしまう可能性がある。そのため、時間的な平滑化処理を行う場合に、同じピクチャタイプ毎に複数フレームのフィルタ強度の平滑化処理を行うようにしても良い。
尚、本実施形態では、フィルタ強度補正部122でフィルタ強度を補正する例について説明したが、フィルタ強度補正部122でフィルタ強度を補正しなくてもよい。例えば、フィルタ強度算出部118で算出したフィルタ強度(図4)でデブロッキングフィルタ112はフィルタ処理を行ってもよい。
次に、図8を参照して、本実施形態におけるデブロッキングフィルタ処理のフィルタ強度を算出する処理フローについて説明する。当該処理は、各ブロックにおいて対応するプログラムを実行することにより実現される。或いは、各ブロックとして動作するCPUが対応するプログラム(ROM等に格納)を実行することにより実現できる。
S801において、平坦度算出部120は、原画像又は局所復号化画像のブロック毎に平坦度を算出する。S802において、画質劣化度算出部117は、原画像及び局所復号化画像のブロック毎に画質劣化度を算出する。S803において、フィルタ強度算出部118は、平坦度及び画質劣化度の各値に基づきブロック毎にフィルタ強度を算出する。S804において、フィルタ強度補正部122は、平坦度とフィルタ強度に応じて、ブロック毎に補正フィルタ強度を算出する。S805において、デブロッキングフィルタ112は、補正フィルタ強度に基づきデブロッキングフィルタ処理を行う。
以上のように、発明の実施形態によれば画質劣化度と平坦度に応じてフィルタ強度を算出するため、符号化による画質劣化と絵柄の視覚特性を鑑みたフィルタ強度制御が可能となる。そのため、復号化画像の画質が向上するといった効果がある。また、デブロッキングフィルタ処理後の画像を参照して動き補償を行う際に、十分にブロックノイズを低減できているため、動き予測精度が向上し、それにより、符号化効率が向上するといった効果がある。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (7)
- 予測符号化処理のための予測画像を生成する予測画像生成手段と、
原画像を所定数の画素から成るブロックに分割し、前記予測画像との差分についてブロック単位に直交変換及び量子化を行う変換手段と、
前記変換手段における変換結果を符号化して符号化ストリームを生成する符号化手段と、
前記変換手段における前記変換結果に対して逆量子化及び逆直交変換を行って局所復号化画像を出力する局所復号化手段と
を備える動画像符号化装置であって、
前記原画像と前記局所復号化画像とから画質劣化度をブロック単位に算出する画質劣化度算出手段と、
前記原画像または前記局所復号化画像の平坦度をブロック単位に算出する平坦度算出手段と、
前記画質劣化度及び前記平坦度に応じたフィルタ強度をブロック単位に決定するフィルタ強度決定手段と、
前記局所復号化画像に対し、前記フィルタ強度を用いてデブロッキングフィルタ処理を行うフィルタ処理手段と、
を更に備え、
前記予測画像生成手段は、前記デブロッキングフィルタ処理後の局所復号化画像を用いて、前記予測画像を生成し、
前記フィルタ強度決定手段は、前記画質劣化度と前記平坦度に基づき、前記画質劣化度が高く、かつ、前記平坦度が高い画像ほど高いフィルタ強度を算出するフィルタ強度算出手段を備えることを特徴とする動画像符号化装置。 - 前記フィルタ強度決定手段は、前記フィルタ強度算出手段が算出したフィルタ強度を補正するフィルタ強度補正手段を更に備え、
前記フィルタ強度補正手段は、前記画像における所定領域内で同一の平坦度を有するブロックの割合に応じて、前記ブロック単位で算出された前記フィルタ強度を加重加算平均して該所定領域内における加重加算平均フィルタ強度を算出し、
前記フィルタ強度決定手段は、前記所定領域内に含まれる各ブロックのフィルタ強度を前記加重加算平均されたフィルタ強度に決定することを特徴とする請求項1に記載の動画像符号化装置。 - 前記所定領域は、前記画像の全体、又は、複数の前記ブロックからなる前記画像の一部であることを特徴とする請求項2に記載の動画像符号化装置。
- 前記フィルタ強度決定手段は、前記フィルタ強度算出手段が算出したフィルタ強度を補正するフィルタ強度補正手段を更に備え、
前記フィルタ強度補正手段は、各ブロックについて算出された前記フィルタ強度を、隣接するブロックのフィルタ強度に基づき空間方向での平滑化処理を行う空間平滑化処理手段を更に備え、
前記フィルタ強度決定手段は、前記空間方向で平滑化処理されたフィルタ強度を前記デブロッキングフィルタ処理におけるフィルタ強度に決定することを特徴とする請求項1に記載の動画像符号化装置。 - 前記フィルタ強度補正手段は、
前記画像よりも前に符号化された画像について算出されたフィルタ強度との間で時間方向での平滑化処理を行う時間平滑化処理手段を更に備え、
前記時間方向で平滑化処理されたフィルタ強度を前記デブロッキングフィルタ処理におけるフィルタ強度に決定することを特徴とする請求項2乃至4のいずれか1項に記載の動画像符号化装置。 - 予測符号化処理のための予測画像を生成する予測画像生成手段と、
原画像を所定数の画素から成るブロックに分割し、前記予測画像との差分についてブロック単位に直交変換及び量子化を行う変換手段と、
前記変換手段における変換結果を符号化して符号化ストリームを生成する符号化手段と、
前記変換手段における前記変換結果に対して逆量子化及び逆直交変換を行って局所復号化画像を出力する局所復号化手段と
を備える動画像符号化装置の制御方法であって、
画質劣化度算出手段が、前記原画像と前記局所復号化画像とから画質劣化度をブロック単位に算出する画質劣化度算出工程と、
平坦度算出手段が、前記原画像または前記局所復号化画像の平坦度をブロック単位に算出する平坦度算出工程と、
フィルタ強度決定手段が、前記画質劣化度及び前記平坦度に応じたフィルタ強度をブロック単位に決定するフィルタ強度決定工程と、
フィルタ処理手段が、前記局所復号化画像に対し、前記フィルタ強度を用いてデブロッキングフィルタ処理を行うフィルタ処理工程と、
を備え、
前記予測画像生成手段は、前記デブロッキングフィルタ処理後の局所復号化画像を用いて、前記予測画像を生成し、
前記フィルタ強度決定工程では、前記画質劣化度と前記平坦度に基づき、前記画質劣化度が高く、かつ、前記平坦度が高い画像ほど高いフィルタ強度が算出されることを特徴とする動画像符号化装置の制御方法。 - コンピュータを請求項1乃至5のいずれか1項に記載の動画像符号化装置として動作させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012153021A JP6012307B2 (ja) | 2012-07-06 | 2012-07-06 | 動画像符号化装置及びその制御方法、並びに、プログラム |
PCT/JP2012/081016 WO2013081085A1 (en) | 2011-11-28 | 2012-11-22 | Moving image encoding apparatus, control method thereof and computer program |
US14/343,505 US9635359B2 (en) | 2011-11-28 | 2012-11-22 | Method and apparatus for determining deblocking filter intensity |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012153021A JP6012307B2 (ja) | 2012-07-06 | 2012-07-06 | 動画像符号化装置及びその制御方法、並びに、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014017625A JP2014017625A (ja) | 2014-01-30 |
JP6012307B2 true JP6012307B2 (ja) | 2016-10-25 |
Family
ID=50111957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012153021A Active JP6012307B2 (ja) | 2011-11-28 | 2012-07-06 | 動画像符号化装置及びその制御方法、並びに、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6012307B2 (ja) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4165220B2 (ja) * | 2000-07-06 | 2008-10-15 | セイコーエプソン株式会社 | 画像処理方法、プログラムおよび画像処理装置 |
EP1209624A1 (en) * | 2000-11-27 | 2002-05-29 | Sony International (Europe) GmbH | Method for compressed imaging artefact reduction |
JP2003304538A (ja) * | 2002-04-11 | 2003-10-24 | Matsushita Electric Ind Co Ltd | 画像符号化装置、画像復号化装置及びそれらの方法 |
JP4455487B2 (ja) * | 2005-12-16 | 2010-04-21 | 株式会社東芝 | 復号化装置及び復号化方法及びプログラム |
JP4847890B2 (ja) * | 2007-02-16 | 2011-12-28 | パナソニック株式会社 | 符号化方式変換装置 |
JP2008289134A (ja) * | 2007-04-20 | 2008-11-27 | Panasonic Corp | 符号化レート変換装置、集積回路、符号化レート変換方法、及びプログラム |
JP4824705B2 (ja) * | 2008-01-08 | 2011-11-30 | 日本電信電話株式会社 | 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラムおよびそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
FR2952497B1 (fr) * | 2009-11-09 | 2012-11-16 | Canon Kk | Procede de codage et de decodage d'un flux d'images; dispositifs associes |
JP4799678B1 (ja) * | 2010-07-27 | 2011-10-26 | 株式会社東芝 | 符号化歪み低減装置、符号化歪み低減方法およびそのためのプログラム |
-
2012
- 2012-07-06 JP JP2012153021A patent/JP6012307B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014017625A (ja) | 2014-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10841605B2 (en) | Apparatus and method for video motion compensation with selectable interpolation filter | |
US7805016B2 (en) | Decoding apparatus and decoding method | |
KR101045199B1 (ko) | 화소 데이터의 적응형 잡음 필터링을 위한 방법 및 장치 | |
JP4194479B2 (ja) | 画像処理装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 | |
WO2014139396A1 (en) | Video coding method using at least evaluated visual quality and related video coding apparatus | |
CN107646194B (zh) | 用于视频运动补偿的装置和方法 | |
KR20180054735A (ko) | 비디오 모션 보상을 위한 장치 및 방법 | |
JP2012142886A (ja) | 画像符号化装置及び画像復号装置 | |
JP6052319B2 (ja) | 動画像符号化装置 | |
US9635359B2 (en) | Method and apparatus for determining deblocking filter intensity | |
JP5516842B2 (ja) | 動画像処理装置、動画像処理方法、および動画像処理プログラム | |
JP4824708B2 (ja) | 動画像符号化方法,装置,プログラムおよびコンピュータ読み取り可能な記録媒体 | |
JP5295089B2 (ja) | 画像符号化装置 | |
JP5913929B2 (ja) | 動画像符号化装置及びその制御方法、コンピュータプログラム | |
TWI782853B (zh) | 圖像編碼裝置、圖像編碼方法、圖像解碼裝置、圖像解碼方法 | |
JP6012307B2 (ja) | 動画像符号化装置及びその制御方法、並びに、プログラム | |
JP4528255B2 (ja) | 映像復号装置および映像復号プログラム | |
JP4719108B2 (ja) | 映像符号化方法、映像符号化装置、映像符号化プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2020005228A (ja) | ループフィルタ制御装置、画像符号化装置、画像復号装置、及びプログラム | |
JP6200220B2 (ja) | 画像処理装置、符号化装置、復号装置、及びプログラム | |
US10992942B2 (en) | Coding method, decoding method, and coding device | |
JP2018050150A (ja) | 画像符号化装置、画像符号化方法及びコンピュータプログラム | |
JP2005026747A (ja) | フィルタ処理装置、画像符号化装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150629 |
|
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: 20160822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160920 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6012307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |