JP5814191B2 - デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体 - Google Patents

デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体 Download PDF

Info

Publication number
JP5814191B2
JP5814191B2 JP2012144102A JP2012144102A JP5814191B2 JP 5814191 B2 JP5814191 B2 JP 5814191B2 JP 2012144102 A JP2012144102 A JP 2012144102A JP 2012144102 A JP2012144102 A JP 2012144102A JP 5814191 B2 JP5814191 B2 JP 5814191B2
Authority
JP
Japan
Prior art keywords
block
filter
deblocking
line
boundary
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
Application number
JP2012144102A
Other languages
English (en)
Other versions
JP2014007713A (ja
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012144102A priority Critical patent/JP5814191B2/ja
Publication of JP2014007713A publication Critical patent/JP2014007713A/ja
Application granted granted Critical
Publication of JP5814191B2 publication Critical patent/JP5814191B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、動画像信号符号化及び復号に関し、特にインループフィルタを用いて画像信号及び映像信号を符号化又は復号する技術に関するものである。
動画像符号化のアルゴリズムは、フレーム間符号化(インター符号化)とフレーム内符号化(イントラ符号化)に大別される。フレーム間符号化は動画像内の時間方向の相関を利用して、情報圧縮を図るアプローチである。代表例は、動き補償を用いたフレーム間予測である。一方、フレーム内符号化は、フレーム内の相関を用いて、情報圧縮を図るアプローチである。JPEG、MPEG−2では、離散コサイン変換(DCT)を用いたアプローチがとられている。JPEG2000では、離散ウェーブレット変換を用いたアプローチがとられている。上述したようにフレーム間及びフレーム内で予測を行った後、その予測残差信号(予測誤差信号とも呼ぶ)は直交変換及び量子化を経て、最終的にエントロピー符号化によって2値信号(ビットストリーム)となる。
H.264/AVCなどの動画像符号化の国際標準方式では、入力映像信号で与えられる映像を正方形ないしは長方形の複数のブロックに分割し、各ブロック単位において予測、直交変換、量子化を実施するため、復号された映像ではブロック状のノイズが発生することが問題となっている。復号された映像において現れるブロック状のノイズは、ブロックノイズとも呼ばれ、視覚的に大きな劣化を招く。特に映像に割り当てられる符号量が少ない低ビットレートにおいて、ブロックノイズは顕著に視認される。
H.264/AVCでは、ブロックノイズを低減するためにデブロッキングフィルタと呼ばれるインループフィルタが導入されている。デブロッキングフィルタは、各ブロックが接する境界であるブロック境界に対して垂直方向にフィルタをかけ、ノイズを除去する機能を有する。映像符号化及び映像復号におけるデブロッキングフィルタは、各フレームの復号画像ができた後に施される。デブロッキングフィルタは、視覚的に画質を向上させるだけでなく、画質の向上した復号画像を次のフレームの符号化において参照されるので、符号化効率の改善、すなわち客観性能の改善にも貢献する。
デブロッキングフィルタは、ブロック境界に対して上下ないしは左右4画素ずつを処理する簡易なフィルタであり、計算複雑度に見合う性能向上から、重要な符号化ツールの1つとして次世代高能率映像符号化HEVC(High Efficiency Video Coding)にも採用が見込まれている。
また、H.264/AVCのデブロッキングフィルタの処理は、16×16画素のマクロブロック(以下、MBという。)を16個のブロック(4×4)に分割し、各ブロック境界に対して施される。また、MB境界の場合、隣接MBが存在すれば、フィルタに必要な画素が得られるため、処理を同様に施す。図14及び図15は、H.264/AVCのマクロブロック内のデブロッキングフィルタ適用部分を示す概略図である。
図14には、デブロッキングフィルタの処理が行われる垂直方向のブロック境界が示されている。図15には、デブロッキングフィルタの処理が行われる水平方向のブロック境界が示されている。なお、処理対象MBが輝度信号の8×8画素のブロックごとに処理される場合、図14及び図15において実線で囲まれたブロック境界が処理対象になる。処理対象MBが輝度信号の4×4画素のブロックないしは色差の4×4画素のブロックごとに処理される場合、図14及び図15において実線及び点線で囲まれたブロック境界が処理対象になる。
画像の性質によってはブロックノイズが発生しやすい部分と発生しにくい部分とがあるため、デブロッキングフィルタは画像に応じて適応的に施される。具体的には、デブロッキングフィルタは、「境界強度(Bs値:Boundary Strength)」と「境界間画素の差分の絶対値」とに基づいて、処理が変化する。境界強度の設定を図16に示す。
図16は、H.264/AVCにおけるデブロッキングフィルタの境界強度(Bs値)の設定を示す図である。
図14や図15に示すように、デブロッキングフィルタの対象となる2つの4×4画素のブロックのうち、一方のブロックに含まれる画素の画素値をp(0≦m<4)とし、他方のブロックに含まれる画素の画素値をq(0≦n<4)とする。なお、ブロック境界に近いほどmとnとの値は小さいものとする。この場合、次式(1)及び次式(2)を満たすとき、ブロック境界近傍の画素に対してデブロッキングフィルタが適用される。
Bs>0 …(1)
|p−q|<αかつ|p−p|<βかつ|q―q|<β …(2)
式(2)において、α及びβは符号化時に定める量子化パラメータ(Quantization Parameter:QP)に依存して一意に定まる値である。また、スライスヘッダに含まれる2つのパラメータ「slice_alpha_c0_offset_div2」及び「slice_beta_offset_div2」のフラグを利用することによっても調整可能である。
更に、上記の2つのパラメータ以外にも、ピクチャパラメータセット(ヘッダ部分)にも「deblocking_filter_control_present_flag」及び「disable_deblocking_filter_idc」の2パラメータにより、以下の3種類の動作からいずれかが選択される。
1.ブロック境界及びMB境界にデブロッキングフィルタを施す。
2.MB境界のみでブロッキングフィルタを施す。
3.デブロッキングフィルタを施さない。
また、デブロッキングフィルタをブロック境界に適用する場合においても、フィルタ処理は、境界強度Bs値に応じて「弱いフィルタリング」と「強いフィルタリング」とに分けられる。
(弱いフィルタリング)
境界強度Bs値が1以上かつ4未満である(1≦Bs<4)場合には、弱いフィルタリングがデブロッキングフィルタ処理として適用される。「弱いフィルタリング」は、ブロック境界を跨ぐ4画素の画素値(p,p,q,q)を入力として、画素値pの画素、及び画素値qの画素における新たな画素値を出力するフィルタ処理である。フィルタ処理後における、画素値pの画素における新たな画素値をp’と、画素値qの画素における新たな画素値をq’とは、次式(3)〜次式(5)で表される4タップのフィルタ処理により算出される。
Δ=Clip3[−t,t,{(q−p)<<2+(p−q)+4}/8]
…(3)
p’=p+Δ …(4)
q’=q+Δ …(5)
式(3)におけるClip3(a,b,c)は、cの値をa≦c≦bとなる値に収めるクリップ処理を行うことを意味する。また、tは、|p−p|、|q−q|、及びβそれぞれの値に基づいて決定される値である。もしも、|p−p|<βを満たすならば、式(3)〜式(5)で表される4タップフィルタとは別の4タップのフィルタ処理が適用される。別の4タップのフィルタ処理は、ブロック境界を跨ぐ4画素の画素値(p,p,p,q)を入力として、画素値がpの画素の新たな画素値を出力するフィルタ処理である。画素値がpの画素の新たな画素値p’は、次式(6)で表される4タップのフィルタ処理により算出される。
p’=p+Clip3(−tc0,tc0
[p+{(p+q+1)−(p×2)}/2]) …(6)
式(6)においてtc0は境界強度Bs値とQP値とから定まる定数である。式(6)で表されるフィルタ処理と同様にして、(q,q,q,p)を入力として、画素値がqの画素の新たな画素値q’が算出される。
(強いフィルタリング)
境界強度Bs値が4である(Bs=4)場合には、強いフィルタリングがデブロッキングフィルタ処理として適用される。「強いフィルタリング」は、以下に示す条件に応じて2つの処理のいずれかが適用される。
条件「|p−p|<βかつ|p−q|<α/4+2」が満たされる場合には、p’、p’、及びp’は次式(7)〜次式(9)により算出される。なお、次式(7)〜次式(9)における演算子「//」は、「a//b」においてaをbで除算し、小数点第1位を四捨五入することで整数化する処理を意味する。
p’=(p+2×p+2×p+2×q+q)//8 …(7)
p’=(p+p+p+q)//4 …(8)
p’=(2×p+3×p+p+p+q)//8 …(9)
上記の条件が満たされない場合には、次式(10)によりp’が算出される。
p’=(2×p+p+q)//4 …(10)
式(7)〜式(10)ではp’、p’、及びp’を算出するフィルタ処理を記述したが、ブロック境界を挟んだ反対側の画素値q’、q’及びq’を算出するフィルタ処理も同様に実施される。すなわち、q’、q’及びq’は次式(11)〜式(14)により算出されるフィルタ処理になる。
|q−q|<βかつ|p−q|<α/4+2の場合:
q’=(q+2×q+2×q+2×p+p)//8 …(11)
q’1=(q+q+q+p)//4 …(12)
q’=(2×q+3×q+q+q+p)//8 …(13)
|q−q|≧β又は|p−q|≧α/4+2の場合:
q’=(2×q+q+p)//4 …(14)
図17は、H.264/AVCにおけるデブロッキングフィルタの処理後に変更が加わる画素の関係を示す図である。図17には、H.264/AVCのデブロッキングフィルタ処理における水平ブロック境界を対象にしたときの変更画素の範囲が示されている。図17における(a)及び(b)で示されるように、弱いフィルタリングの場合、ブロック境界に垂直な方向ごとに、最小で2画素(p’、q’)が修正され、最大で4画素(p’、p’、q’、q’)が修正される。また、図17における(c)及び(d)で示されるように、強いフィルタリングの場合、ブロック境界に垂直な方向ごとに、最大で6画素(p’、p’、p’、q’、q’、q’)が修正され、最小で2画素(p’、q’)が修正される。図18は、H.264/AVCにおけるデブロッキングフィルタの処理条件と処理範囲を示す図である。
ここまでの説明は、非特許文献1及び非特許文献2に詳述されている。
H.264/AVCの次の規格となるHEVCの標準化が現在進められており、委員会原案(Committee Draft: CD)においてもデブロッキングフィルタの記載があり、Bs値などの定義は異なっているが、強いフィルタと弱いフィルタの分別があり、境界を挟んで最大6画素を修正するフィルタとなっている(非特許文献3)。HEVCでは、符号化処理の単位はMB単位ではなく、CU(Coding Unit)と呼ばれるブロックの単位で符号化が行われ、その最大の単位はLCU(Largest Coding Unit)と呼ばれており、HEVCの参照ソフトウェアであるHM(HEVC test Model)では通常64×64のサイズが設定されている。64×64のLCUは、四分木により最小で8×8のCUまで分割される。各CUはPU(Prediction Unit)と呼ばれる予測を実施するブロック、及びTU(Transform Unit)と呼ばれる変換を実施するブロックに分割される。すなわち、H.264/AVCでは16×16で符号化が行われていたが、そのサイズがHEVCでは例えば64×64のように、より大きいブロック単位で符号化が行われる特徴がある。HEVCのデブロッキングフィルタは、各CUの境界に対してBs値などの条件に従い、適応的に実施される。
大久保榮(監)、角野眞也、菊池義浩、鈴木輝彦(編)、「改訂三番H.264/AVC教科書」、株式会社インプレスR&D、pp.144−148、2009年 ITU-T Study Group 16-Questions 6/16:"Draft new Corrigendum 1 to H.264 Advanced video coding for generic audiovisual services", pp.182-193, 2005 Benjamin Bross, Woo-Jin Han, Jens-Rainer Ohm, Gary J. Sullivan, Thomas Wiegand, "High efficiency video coding (HEVC) text specification draft 7", JCTVC-I1003_d4.doc, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, pp.149-162, 2012
非特許文献1及び非特許文献2に記載されているデブロッキングフィルタでは、ブロック境界を処理する場合、図17に示したように、ブロック境界を挟む画素に対して同じフィルタ処理を適用している。ブロック単位の予測、変換、及び量子化の影響により、ブロック境界に隣接する部分ではブロックノイズが一般的に大きく重畳され、ブロックの内部ではブロックノイズが小さくなる傾向がある。更に、予測残差エネルギーに関して言えば、例えばインター予測では、ブロック内部において予測残差エネルギーが減少し、ブロック外縁部においては予測残差エネルギーが増加する傾向がある。イントラ予測の場合、ブロック左上については参照画素の距離も近く利用できる画素数も多いため、予測残差エネルギーが小さくなる傾向があり、逆にブロック右下に移るにつれて、参照画素の距離も大きくなる関係で予測残差エネルギーが大きくなる傾向がある。
すなわち、ブロック内の位置によって予測残差エネルギーの出方が異なるため、ブロック内部で位置によって視覚的な影響に差が生じると考えられる。上記のデブロッキングフィルタでは1つのブロック境界を挟む画素に対して同じフィルタ処理を行っているため、このような特性に応じたフィルタ処理を行うことができないという問題がある。
本発明はかかる事情を鑑みてなされたものであって、その目的は、デブロッキングフィルタの処理においてブロックノイズを低減させることができるデブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体を提供することにある。
上記問題を解決するために、本発明は、ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理方法であって、
隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分ける第1のステップと、前記ブロックに含まれる各画素に対するフィルタ処理を前記ラインごとに決定する第2のステップと、前記ラインごとに決定したフィルタ処理を実施する第3のステップとを有することを特徴とするデブロッキング処理方法である。
また、本発明は、上記に記載のデブロッキング処理方法において、前記第2のステップでは、前記ラインが前記ブロック境界の中点の近傍に位置するか否かを判定し、前記ラインが前記ブロック境界の中点の近傍に位置する場合、前記フィルタ処理におけるフィルタの強度を弱くする決定をし、前記ラインが前記ブロック境界の中点の近傍に位置しない場合、前記フィルタ処理におけるフィルタの強度を強くする決定をすることを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記第2のステップでは前記ブロック境界の長さに基づいて、前記ブロック境界の中点の近傍に位置するか否かを判定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記第2のステップでは、前記隣接するブロックに対する量子化パラメータに基づいて、前記ブロック境界の中点の近傍であるか否かを判定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記第2のステップでは、前記ラインごとにフィルタ処理が予め対応付けられたテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記テーブルは、ブロック境界の長さごとに複数定められており、前記第2のステップでは、複数の前記テーブルから前記ブロック境界の長さに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記テーブルは、前記隣接するブロックに対する量子化パラメータの値ごとに複数定められており、前記第2のステップでは、複数の前記テーブルから前記隣接するブロックに対する量子化パラメータに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法において、前記映像符号化方式において、前記第2のステップにおいて各画素に対するフィルタ処理を決定した際に用いたテーブルを示す情報を符号化して前記符号化ストリームに含ませる第4のステップと、前記映像復号方式において、前記第4のステップにおいて符号化された前記テーブルを示す情報を復号する第5のステップと、を更に有し、前記映像復号方式における第2のステップでは、前記第5のステップにおいて復号した前記テーブルを示す情報に基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、上記問題を解決するために、本発明は、ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理装置であって、隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分け、ラインごとに、前記ブロックに含まれる各画素に対するフィルタ処理を決定するフィルタ処理修正部と、前記フィルタ処理修正部が決定したフィルタ処理を実施するフィルタ実施部とを備えることを特徴とするデブロッキング処理装置である。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ処理修正部は、前記ラインが前記ブロック境界の中点の近傍に位置するか否かを判定し、前記ラインが前記ブロック境界の中点の近傍に位置する場合、前記フィルタ処理におけるフィルタの強度を弱くする決定をし、前記ラインが前記ブロック境界の中点の近傍に位置しない場合、前記フィルタ処理におけるフィルタの強度を強くする決定をすることを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ処理修正部は、前記ブロック境界の長さに基づいて、前記ブロック境界の中点の近傍に位置するか否かを判定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ処理修正部は、前記隣接するブロックに対する量子化パラメータに基づいて、前記ブロック境界の中点の近傍であるか否かを判定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記ラインごとにフィルタ処理が予め対応付けられたテーブルを記憶するフィルタ強度定義部を更に備え、前記フィルタ処理修正部は、前記テーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ強度定義部には、ブロック境界の長さごとに定められた複数のテーブルが記憶されており、前記フィルタ処理修正部は、前記ブロック境界の長さに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ強度定義部には、前記隣接するブロックに対する量子化パラメータごとに定められた複数のテーブルが記憶されており、前記フィルタ処理修正部は、前記隣接するブロックに対する量子化パラメータに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理装置において、前記フィルタ処理修正部は、前記映像符号化方式において、前記ブロックに含まれる各画素に対するフィルタ処理を決定した際に用いたテーブルを示す情報を前記符号化ストリームに含ませ、前記映像復号方式において、前記符号化ストリームに含まれる前記テーブルを示す情報を取得し、取得した情報が示すテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定することを特徴とする。
また、本発明は、上記に記載のデブロッキング処理方法をコンピュータに実行させるためのプログラムである。
また、本発明は、上記に記載のデブロッキング処理方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
この発明によれば、ブロックに含まれる画素をブロック境界に垂直方向のラインに分け、ラインごとにフィルタ処理を決定することができ、ブロック内における画素の位置に応じて異なる特性に対応したフィルタ処理を行うことができる。これにより、ブロックノイズを低減させることができ、主観画質、符号化特性の改善を図ることができる。
第1の実施形態における動画像符号化装置100の構成例を示す概略ブロック図である。 同実施形態における動画像復号装置200の構成例を示す概略ブロック図である。 同実施形態におけるデブロッキングフィルタ処理部110及びデブロッキングフィルタ処理部208の構成例を示す概略ブロック図である。 同実施形態におけるデブロッキングフィルタ処理部110が行うデブロッキングフィルタ処理を示すフローチャートである。 同実施形態におけるフィルタ処理部302の構成例を示す概略ブロック図である。 同実施形態におけるフィルタの強度の修正例を示す概略図である。 同実施形態におけるフィルタ処理部302が行うフィルタ処理を示すフローチャートである。 同実施形態におけるデブロッキングフィルタ処理部110が行うフィルタ処理の一例を示す図である。 第2の実施形態におけるフィルタ処理部302の構成例を示す概略ブロック図である。 同実施形態におけるフィルタ強度定義部504が記憶するテーブルの例を示す図である。 同実施形態におけるフィルタ処理部302が行うフィルタ処理を示すフローチャートである。 動画像符号化装置100をコンピュータとソフトウエアプログラムとによって構成する場合におけるコンピュータのハードウェア構成例を示す図である。 動画像復号装置200をコンピュータとソフトウエアプログラムとによって構成する場合におけるコンピュータのハードウェア構成例を示す図である。 H.264/AVCのマクロブロック内のデブロッキングフィルタ適用部分を示す第1の概略図である。 H.264/AVCのマクロブロック内のデブロッキングフィルタ適用部分を示す第2の概略図である。 H.264/AVCにおけるデブロッキングフィルタの境界強度(Bs値)の設定を示す図である。 H.264/AVCにおけるデブロッキングフィルタの処理後に変更が加わる画素の関係を示す図である。 H.264/AVCにおけるデブロッキングフィルタの処理条件と処理範囲を示す図である。
以下、図面を参照して、本発明に係る一実施形態におけるデブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体を説明する。以下の説明では、本発明に対応するデブロッキングフィルタ処理部を具備する動画像符号化装置及び動画像復号装置の構成例を示し、その後にデブロッキングフィルタ処理部の詳細な説明を行う。デブロッキングフィルタ処理部は、動画像符号化装置及び動画像復号装置において共通する処理を行う。
<第1の実施形態>
図1は、第1の実施形態における動画像符号化装置100の構成例を示す概略ブロック図である。動画像符号化装置100には、符号化対象の入力映像信号が入力される。動画像符号化装置100は、入力映像信号の各フレームを複数のブロックに分割してブロックごとに符号化し、符号化結果のビットストリームを符号化ストリームとして出力する。
動画像符号化装置100は、同図に示すように、イントラ予測処理部101、インター予測処理部102、予測残差信号生成部103、変換処理部104、量子化処理部105、逆量子化処理部106、逆変換処理部107、復号信号生成部108、フレームメモリ109、デブロッキングフィルタ処理部110、インター予測情報格納部111、イントラ予測情報格納部112、及び、エントロピー符号化処理部113を具備している。
動画像符号化装置100においては、デブロッキングフィルタ処理部110が本発明のデブロッキングフィルタ処理装置に対応する。他の各機能部は、H.264/AVCなどのエンコーダとして用いられている一般的な動画像符号化装置が具備する機能部と同様である。なお、策定中のHEVCにおいては、デブロッキングフィルタの他にもサンプルアダプティブオフセット(Sample Adaptive Offset:SAO)やアダプティブループフィルタ(Adaptive Loop Filter:ALF)と呼ばれる符号化ノイズを除去するループ内フィルタが適用されているが、デブロッキングフィルタ処理部110の前後に、デブロッキングフィルタ以外のループ内フィルタ処理部を挿入しても良い。
イントラ予測処理部101は、入力映像信号が入力され、入力映像信号に基づいて予測信号を生成する。また、イントラ予測処理部101は、入力映像信号に基づいて、予測モードなどを含むイントラ予測情報を生成し、生成したイントラ予測情報をイントラ予測情報格納部112に記憶させて格納する。
インター予測処理部102には、入力映像信号と、デブロッキングフィルタ処理部110から参照画像とが入力される。インター予測処理部102は、入力映像信号と参照画像とに基づいて、予測信号を生成する。また、インター予測処理部102は、入力映像信号と参照信号とに基づいて、動きベクトルを含むインター予測情報を生成し、生成したインター予測情報をインター予測情報格納部111に記憶させて格納する。
予測残差信号生成部103は、入力画像と、イントラ予測処理部101あるいはインター予測処理部102から出力される予測信号との差分を算出する。予測残差信号生成部103は、算出した差分を予測残差信号として変換処理部104に出力する。
変換処理部104は、予測残差信号生成部103から入力される予測残差信号に対して離散コサイン変換(Discrete Cosine Transform:DCT)等の直交変換を行う。変換処理部104は、直交変換により得られた変換係数を量子化処理部105に出力する。
量子化処理部105は、変換処理部104から入力される変換係数を量子化し、その量子化された変換係数を逆量子化処理部106とエントロピー符号化処理部113とに出力する。
逆量子化処理部106は、量子化処理部105から入力される変換係数を逆量子化して逆変換処理部107に出力する。
逆変換処理部107は、逆量子化処理部106から入力される変換係数を逆直交変換する。逆変換処理部107は、逆直交変換により得られた予測残差復号信号を復号信号生成部108に出力する。
復号信号生成部108は、逆変換処理部107から入力される予測残差復号信号と、イントラ予測処理部101あるいはインター予測処理部102が出力する予測信号とを加算する。復号信号生成部108は、加算結果を符号化した符号化対象ブロックの復号信号としてフレームメモリ109に記憶させる。この復号信号は、イントラ予測処理部101あるいはインター予測処理部102において参照画像として用いられる。
フレームメモリ109は、復号信号生成部108が生成する復号信号を記憶する。
デブロッキングフィルタ処理部110は、フレームメモリ109に記憶されている復号信号を読み出し、読み出した復号信号に対してデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部110は、デブロッキングフィルタ処理後の画像を参照画像としてインター予測処理部102に出力する。
インター予測情報格納部111は、インター予測処理部102が生成するインター予測情報を記憶する。
イントラ予測情報格納部112は、イントラ予測処理部101が生成するイントラ予測情報を記憶する。
エントロピー符号化処理部113は、量子化処理部105において量子化された変換係数、インター予測情報格納部111に格納されているインター予測情報、及び、イントラ予測情報格納部112に格納されているイントラ予測情報をエントロピー符号化し、符号化ストリームとして出力する。
動画像符号化装置100は、上述の各機能部を具備することにより、入力映像信号の各フレームを複数のブロックに分割してブロックベースの予測符号化を行い、入力映像信号を符号化して得られた符号化ストリームを出力する。
図2は、本実施形態における動画像復号装置200の構成例を示す概略ブロック図である。動画像復号装置200は、図1に示した動画像符号化装置100などにより符号化された符号化ストリームが入力され、符号化ストリームを復号することにより復号画像の映像信号を出力する。
動画像復号装置200は、図2に示すように、エントロピー復号処理部201、イントラ予測処理部202、インター予測処理部203、逆量子化処理部204、逆変換処理部205、復号信号生成部206、フレームメモリ207、デブロッキングフィルタ処理部208、インター予測情報格納部209、及び、イントラ予測情報格納部210を具備している。
動画像復号装置200においては、デブロッキングフィルタ処理部208が本発明のデブロッキングフィルタ処理装置に対応する。他の各機能部は、H.264/AVCなどのデコーダとして用いられる一般的な動画像復号装置が具備する機能部と同様である。
エントロピー復号処理部201は、符号化ストリームが入力され、入力された符号化ストリームから復号対象ブロックの量子化変換係数をエントロピー復号するとともに、イントラ予測に関するイントラ予測情報、及びインター予測に関するインター予測情報をエントロピー復号する。また、エントロピー復号処理部201は、量子化変換係数を逆量子化処理部204に出力し、インター予測情報をインター予測情報格納部209に記憶させて格納し、イントラ予測情報をイントラ予測情報格納部210に記憶させて格納する。
イントラ予測処理部202は、フレームメモリ207に記憶される復号信号を参照画像として読み出す。また、イントラ予測処理部202は、イントラ予測情報格納部210からイントラ予測情報を読み出す。イントラ予測処理部202は、読み出した参照画像と、読み出したイントラ予測情報とに基づいて、予測信号を生成する。
インター予測処理部203は、インター予測情報格納部209からインター予測情報を読み出す。インター予測処理部203は、インター予測情報と、デブロッキングフィルタ処理部208から入力される参照画像とに基づいて、予測信号を生成する。
逆量子化処理部204は、エントロピー復号処理部201から入力される量子化変換係数を逆量子化して復号変換係数を算出する。逆量子化処理部204は、算出した復号変換係数を逆変換処理部205に出力する。
逆変換処理部205は、逆量子化処理部204から入力される復号変換係数に逆直交変換を施し、予測残差復号信号を算出する。逆変換処理部205は、算出した予測残差復号信号を復号信号生成部206に出力する。
復号信号生成部206は、逆変換処理部205から入力される予測残差復号信号と、イントラ予測処理部202あるいはインター予測処理部203が出力する予測信号とを加算する。復号信号生成部206は、加算結果を復号対象ブロックの復号信号としてフレームメモリ207に記憶させて格納する。
フレームメモリ207は、復号信号生成部206が算出する復号信号を記憶する。
デブロッキングフィルタ処理部208は、フレームメモリ207から復号信号を読み出し、読み出した復号信号により示される画像に対して符号化歪みを低減するフィルタ処理を行う。デブロッキングフィルタ処理部208は、フィルタ処理後の画像を復号映像信号として出力する。また、デブロッキングフィルタ処理部208は、フィルタ処理後の画像を参照画像としてインター予測処理部203に出力する。なお、動画像符号化装置100と同様に、サンプルアダプティブオフセットやアダプティブループフィルタなどのループ内フィルタ処理部をデブロッキングフィルタ処理部208の前後に挿入しても良い。
インター予測情報格納部209は、エントロピー復号処理部201が復号したインター予測情報を格納する。
イントラ予測情報格納部210は、エントロピー復号処理部201が復号したイントラ予測情報を格納する。
動画像復号装置200は、上述の各機能部を具備することにより、ブロックベースの予測符号化により符号化された映像の符号化ストリームを入力し、入力された符号化ストリームから映像を復号して復号映像信号を出力する。
(デブロッキングフィルタ処理部の構成例)
図3は、本実施形態におけるデブロッキングフィルタ処理部110及びデブロッキングフィルタ処理部208の構成例を示す概略ブロック図である。以下、デブロッキングフィルタ処理部110とデブロッキングフィルタ処理部208とは共通する処理を行い、同じ構成を有するので、デブロッキングフィルタ処理部110を説明し、デブロッキングフィルタ処理部208の説明を省略する。
デブロッキングフィルタ処理部110は、図3に示すように、フィルタ使用判定部301、フィルタ処理部302、及び、最終ブロック判定部303を備えている。
フィルタ使用判定部301は、デブロッキングフィルタを適用するブロック境界を同定する。また、フィルタ使用判定部301は、フィルタ処理の強弱を調整するためのパラメータである境界強度(Bs値)を決定する。フィルタ使用判定部301には、復号画素信号、モード情報、動きベクトル、位置情報、変数係数が入力される。
復号画素信号は、フレームメモリ109から読み出す復号信号が示す画像におけるブロックに含まれる各画素の画素値を示す信号である。モード情報は、例えば、イントラ予測が対象ブロックに適用されているか、インター予測が対象ブロックに適用されているかを示す予測モード情報を含む情報である。動きベクトルは、インター予測情報に含まれる情報である。位置情報は、空間座標、すなわち対象ブロックがMBの境界に位置するか否かを判定するためのブロックの位置を示す情報である。変換係数は、対象ブロックに含まれる有意係数の数である。これらの他にも、HEVCの場合であれば、PUやTUの境界情報なども用いられるため、それらの符号化情報、つまり、デブロッキングフィルタの強弱ないしはフィルタなしといった判定に必要な情報は全て入力として入ってもよい。
フィルタ使用判定部301は、非特許文献1ないしは非特許文献2に記載されているデブロッキングフィルタ処理と同様に、フィルタ処理を適用するブロック境界線の位置情報、図16に示されるような境界強度(Bs値)、Bs値と復号画素値とから決定されるデブロッキングフィルタとして用いるフィルタ形状、及び、フィルタ処理の対象画素の範囲を決定する。ここで、フィルタ形状は、フィルタタップ長と、フィルタ係数とを示す情報である。
位置情報と境界強度とフィルタ形状のような全てのデブロッキングフィルタに関する情報をフィルタリング情報と定義する。フィルタ使用判定部301は、入力される情報に基づいて、フィルタリング情報出力する。
フィルタ処理部302には、フィルタ使用判定部301が出力するフィルタリング情報と、復号画素信号とが入力される。フィルタ処理部302は、フィルタリング情報に基づいて、復号画素信号に対して適切なフィルタ処理を施す。フィルタ処理部302は、フィルタ処理後の画素値を示すフィルタ後復号画素信号と、フィルタ処理が施された画素又はブロックの位置を示すフィルタ処理位置情報とを最終ブロック判定部303に出力する。
最終ブロック判定部303は、フィルタ処理部302から入力されるフィルタ後復号画素信号及びフィルタ処理位置情報に基づいて、デブロッキングフィルタの処理が終了したか否かを判定し、フィルタ後復号画素信号を出力する。
デブロッキングフィルタ処理部110は、フィルタ使用判定部301、フィルタ処理部302、及び最終ブロック判定部303により、復号信号が示す画像に対してデブロッキングフィルタを適用し、デブロッキングフィルタ後の復号画像を出力する。
(デブロッキングフィルタ処理のフロー)
図4は、本実施形態におけるデブロッキングフィルタ処理部110が行うデブロッキングフィルタ処理を示すフローチャートである。
デブロッキングフィルタ処理部110において、デブロッキングフィルタ処理が開始されると、フィルタ使用判定部301に復号画素信号、モード情報、動きベクトル、位置情報、変数係数が入力される。HEVCの場合、PUやTUの境界情報も含まれる(ステップS101)。
フィルタ使用判定部301は、非特許文献1ないし非特許文献2に記載されている手順に従い、ステップS101において入力された情報に基づいて、デブロッキングフィルタを適用するブロック境界を同定し、フィルタ処理の強弱を調整するためのパラメータである境界強度を決定し、フィルタリング情報を出力する。なお、非特許文献3に記載されているように、HEVCの参照ソフトウェアHMでは、CU境界は4画素単位のループ処理で境界強度の決定やフィルタ処理が実行されるが、本願発明の場合、フィルタリング情報からフィルタ形状の連続性(強いフィルタや弱いフィルタが何画素連続しているかの情報)を求めて、その同じフィルタ形状が続く画素の長さ、ないしはCU/PU/TU境界の長さに基づいて、n(>4)画素単位でフィルタ処理を行ってもよい。前記フィルタ処理の画素の長さもフィルタリング情報に含めてよい(ステップS102)。
フィルタ処理部302は、ステップS102において出力されたフィルタリング情報に基づいて、復号画素信号に対して適切なフィルタ処理を施す(ステップS103)。
最終ブロック判定部303は、フィルタ処理部302が出力するフィルタ処理位置情報に基づいて、フィルタ処理を施したブロックが最終ブロックであるか否かを判定し(ステップS104)、最終ブロックでない場合(ステップS104:No)、処理をステップS101に戻して、ステップS101からステップS104までの各処理を繰り返す。
一方、フィルタ処理を施したブロックが最終ブロックである場合(ステップS104:Yes)、最終ブロック判定部303は、フィルタ後復号画素信号を出力し(ステップS105)、デブロッキングフィルタ処理を終了する。
図5は、本実施形態におけるフィルタ処理部302の構成例を示す概略ブロック図である。フィルタ処理部302は、同図に示すように、フィルタリング情報記憶部401、フィルタ処理修正部402、及び、フィルタ実施部403を有している。
フィルタリング情報記憶部401は、デブロッキングフィルタを適用する際に必要となるフィルタリング情報を全て記憶する。
フィルタ処理修正部402は、フィルタリング情報記憶部401に記憶されるフィルタリング情報を読み出し、読み出したフィルタリング情報とブロック境界の中点からの距離とに応じて、フィルタの強度を選択する。フィルタの強度は、デブロッキングフィルタがかかる画素の集合を1ラインとしたときに、そのライン内で修正される画素数として定義される。フィルタ処理修正部402は、選択したフィルタの強度に応じてフィルタリング情報を修正する。フィルタ処理修正部402は、修正したフィルタリング情報を修正後フィルタリング情報としてフィルタ実施部403に出力する。
図6は、本実施形態におけるフィルタの強度の修正例を示す概略図である。同図では、Bs値が4であり、4×4画素のブロックP及びQに挟まれるブロック境界におけるフィルタの強度を示している。この場合、ブロックPとブロックQとの境界を示す線分であるブロック境界の長さは4画素となる。
図6(a)には、ブロックP及びQ内のブロック境界に垂直方向に延びる各ラインL0〜L3それぞれにおいてブロック境界に接する画素を含む隣接した3画素ずつ((p’、p’、p’)と(q’、q’、q’))の合計6画素を、フィルタ処理により画素値が修正される画素にする場合が示されている。図6(a)に示す場合は、図17における(c)の場合と同じである。
図6(b)には、ラインL0及びL3における修正される画素は図6(a)の場合と同じであるが、ブロック境界の中点に近いラインL1及びL2において、ブロック境界を挟んで2画素ずつの合計4画素を修正される画素にする場合が示されている。換言すると、この場合には、ブロック境界と接する画素(p’、q’)と、当該画素と接する画素(p’、q’)とを修正される画素にする。
図6(c)には、ラインL0及びL3における修正される画素は図6(a)の場合と同じであるが、ブロック境界の中点に近いラインL1及びL2において、ブロック境界に接する1画素ずつ(p’、q’)の合計2画素を修正される画素にする場合が示されている。
図6(d)には、ラインL0及びL3における修正される画素は図6(a)の場合と同じであるが、ブロック境界の中点に近いラインL1及びL2では画素値の修正を行わない場合が示されている。
図6では、(a)に示した場合がフィルタの強度が最も強く、(d)に示した場合がフィルタの強度が最も弱い。すなわち、(a)、(b)、(c)、(d)の順にフィルタの強度が弱くなる。
フィルタ実施部403には、フィルタ処理修正部402が出力する修正後フィルタリング情報と、復号画素信号とが入力される。フィルタ実施部403は、修正後フィルタリング情報に基づいて、復号画素信号に対してデブロッキングフィルタを実施する。
本実施形態におけるフィルタ処理部302は、フィルタ処理修正部402を有している点が特徴である。
図7は、本実施形態におけるフィルタ処理部302が行うフィルタ処理を示すフローチャートである。
フィルタ処理部302において、フィルタ処理が開始されると、フィルタ処理修正部402は、フィルタリング情報記憶部401に記憶されているフィルタリング情報を読み出す(ステップS201)。
フィルタ処理修正部402は、対象となるブロック境界を挟むブロックの各画素を、ブロック境界に垂直方向のラインに分ける(ステップS202)。換言すると、2つのブロックに含まれる画素を、ブロック境界に垂直な複数のラインに対応するグループに分ける。
フィルタ処理修正部402は、ステップS202で分けたラインごとに、ラインがブロック境界の中点の近傍であるか否かを判定する(ステップS203)。
ラインが中点の近傍である場合(ステップS203:Yes)、フィルタ処理修正部402は、フィルタリング情報に対して当該ラインにおけるフィルタ強度を弱化する修正を行った修正後フィルタリング情報を出力する(ステップS204)。一方、ラインが中点の近傍でない場合(ステップS203:No)、フィルタ処理修正部402は、当該ラインにおけるフィルタ強度を修正せずにフィルタリング情報を修正後フィルタリング情報として出力する。
ステップS203及びステップS204の処理は、ステップS202で分けた各ラインに対して行われる。
フィルタ実施部403は、フィルタ処理修正部402が出力した修正フィルタリング情報に基づいて、対象となるブロック境界を挟むブロックの画素に対してデブロッキングフィルタを実施し(ステップS205)、フィルタ処理を終了する。なお、デブロッキングフィルタの実施、すなわち新たな画素値の算出は、例えば、式(3)〜式(6)や、式(7)〜式(14)などを用いて行う。
ここで、ステップS203における判定と、ステップS204におけるフィルタリング情報の修正とについて詳細に説明する。以下、ブロック境界の長さをn(nは正の整数)画素とし、ラインの位置をi(0≦i<n、水平ブロック境界の場合は左端のラインをi=0とし、垂直ブロック境界の場合は上端のラインをi=0とする。)で表す。
ステップS203における判定において、例えば、フィルタ処理修正部402は、iがn/4≦i<3n/4を満たす場合、iで示されるラインを内側すなわちブロック境界の中点の近傍に位置するラインであると判定する。一方、フィルタ処理修正部402は、iがn/4≦i<3n/4を満たさない場合、iで示されるラインを外側すなわちブロック境界の中点の近傍に位置するラインでないと判定する。この場合、ラインがブロック境界の中点の近傍に位置するか否かを判定する基準は、ブロック境界の長さに基づいて定められる。
図6に示したように、n=4の場合(H.264/AVCの場合)、フィルタ処理修正部402は、ラインL1及びL2(i=1,2)を内側であると判定し、ラインL0及びL3(i=0,3)を外側であると判定する。
また、n=8の場合(現在策定中のHEVCではn≧8を取り得る)、フィルタ処理修正部402は、ラインL2からラインL5(i=2,3,4,5)を内側であると判定し、ラインL0、L1、L6、及びL7(i=0,1,6,7)を外側であると判定する。
内側であると判定されたラインに対応するフィルタリング情報は修正され、外側であると判定されたラインに対応するフィルタリング情報は修正されない。
ステップS204におけるフィルタリング情報の修正では、内側であると判定されたラインに対するフィルタの強度を、外側であると判定されたラインに対するフィルタの強度より弱くなる(小さくなる)ように変更する。例えば、図6(a)に示されているフィルタの強度を、図6(b)から図6(d)のいずれかに示されているフィルタの強度に変更して、フィルタ強度を弱くする。すなわち、画素値が修正される画素の数を減らす。
以上、説明したように、本実施形態におけるデブロッキングフィルタ処理部110では、処理対象となるブロック境界ごとに、ブロック境界を挟むブロックに含まれる画素をブロック境界に対して垂直方向の複数のラインに分け、ブロック境界の中点近傍のラインに対して、フィルタ強度を弱くしてデブロッキングフィルタを施す。このように、ブロック内における画素の位置に応じてフィルタ処理を変更することにより、ブロック内における画素の位置ごとに異なる予測残差エネルギーなどの特性に応じたデブロッキングフィルタを施すことができる。その結果、主観画質、符号化特性を改善したり、ブロックノイズを低減させたりすることができる。また、ブロック境界の中点近傍のラインでは、画素値を修正する画素の数を減らすことになるので、デブロッキングフィルタフィルタの処理における演算量の削減することができ、処理に要する時間を短縮する高速化が可能となる。
図8は、本実施形態におけるデブロッキングフィルタ処理部110が行うフィルタ処理の一例を示す図である。デブロッキングフィルタ処理部110によれば、図8に示すようにブロック境界の内側では弱めのフィルタ処理をして、外側では強めのフィルタ処理を施すことにより、より効率的にブロックノイズを除去することを可能とする。また、タップ長の短いフィルタを用いれば、従来のデブロッキングフィルタ方法よりも計算回数を削減でき、デブロッキングフィルタの高速化も期待できる。すなわち、1つのブロック境界に対する処理において、フィルタ処理を変更できないことにより生じていた問題を解決することができ、1つのブロック境界に対する処理を柔軟に変更することにより、主観画質改善や符号化効率改善を達成することができる。また、デブロッキングフィルタの処理を高速化させることができる。
なお、本実施形態におけるフィルタ処理(図7)のステップS203における判定を、ブロック境界の長さに基づいて行う構成について説明した。しかし、これに限ることなく、他の基準を用いて判定するようにしてもよい。例えば、ブロック境界を挟むブロックに対する量子化パラメータの値に基づいて、ブロック境界の中点の近傍にラインが位置するか否かを判定する基準を定めるようにしてもよい。量子化パラメータが小さいとき、すなわち高ビットレートの場合、ブロックノイズが目立ちにくいため、中点の近傍範囲を広げる。また、量子化パラメータが大きいとき、すなわち低ビットレートの場合、ブロックノイズが目立ちやすいため、中点の近傍範囲を狭めるなどと調整してもよい。
また、量子化パラメータとブロック境界の長さとを組み合わせて、ブロック境界の中点の近傍にラインが位置するか否かを判定する基準を定めるようにしてもよい。これにより、映像に対して要求される画質に応じたフィルタ処理を施すことができる。
<第2の実施形態>
第2の実施形態では、第1の実施形態において説明したフィルタ処理部302(図5)と異なる構成例を説明する。なお、フィルタ処理部302以外の構成は、第1の実施形態と同じである。
図9は、第2の実施形態におけるフィルタ処理部302の構成例を示す概略ブロック図である。本実施形態におけるフィルタ処理部302は、同図に示すように、フィルタリング情報記憶部401、フィルタ処理修正部502、フィルタ実施部403、及び、フィルタ強度定義部504を有している。フィルタリング情報記憶部401とフィルタ実施部403とは第1の実施形態と同じであるので、その説明を省略する。
フィルタ強度定義部504には、ブロック境界に対して垂直方向のラインごとにラインの位置とフィルタ強度とが対応付けられたテーブルが予め記憶されている。
図10は、本実施形態におけるフィルタ強度定義部504が記憶するテーブルの例を示す図である。例えば、図10(a)に示すテーブルでは、外側と判定されるライン(位置:0、3)に対するフィルタの強度を弱くし、内側と判定されるライン(位置:1、2)に対するフィルタの強度を強くする。例えば、フィルタの強度を「強」にする場合には、画素値を修正する画素の数を、図17で示したようなH.264/AVCにおけるデブロッキングフィルタで定義されている数にする。これに対して、フィルタの強度を「弱」にする場合には、画素値を修正する画素の数を、定義されている数より少ない数にする。
以上、ブロック境界の線分が4画素の場合の例を示したが、例えばHEVCのように、CUの辺の長さが例えば16画素や32画素などのブロック境界にて、フィルタ強度が強ないしは弱となる4画素よりも長いブロック境界が発生し得る。この場合、図10(d)から(f)に示されるように、取り得る各ブロック境界に対応するテーブルを格納しておけばよい。図10の事例のようにテーブルによって強度を変更する場合、全てのラインに対して同じ強度、例えば、強のみ、弱のみ、フィルタなし、のように設定してもよい。例えば、特定のブロック境界の長さにおいては、フィルタをしない方が良いとわかっていれば、その長さに対応するテーブルには、全てフィルタなしにすることで余計なフィルタリングを省くことが可能となり、過平滑化(オーバースムージング)による符号化性能の劣化を防ぐことに加え、演算量低減による高速化も期待できる。また、特定のブロック境界の長さで全てのラインで強いフィルタが必要な場合、全てのラインで強と設定してもよい。なお、図10(f)におけるnは正の整数である。
フィルタ処理修正部502は、フィルタ強度定義部504に記憶されているテーブルを読み出し、読み出したテーブルに基づいて、各ラインにおけるフィルタの強度を修正する。フィルタ処理修正部502は、フィルタの強度の修正を反映したフィルタリング情報を修正後フィルタリング情報としてフィルタ実施部403に出力する。
(デブロッキングフィルタ処理のフロー)
図11は、本実施形態におけるフィルタ処理部302が行うフィルタ処理を示すフローチャートである。
フィルタ処理部302において、フィルタ処理が開始されると、フィルタ処理修正部502は、フィルタリング情報記憶部401に記憶されているフィルタリング情報を読み出す(ステップS301)。
フィルタ処理修正部502は、対象となるブロック境界を挟むブロックの各画素を、ブロック境界に垂直方向のラインに分ける(ステップS302)。
フィルタ処理修正部502は、ステップS302で分けたラインごとに、ラインの位置に対応するフィルタの強度をフィルタ強度定義部504のテーブルから読み出す。フィルタ処理修正部502は、ラインに対するフィルタの強度を、読み出したフィルタの強度に修正し、当該修正をフィルタリング情報に反映して修正後フィルタリング情報をフィルタ実施部403に出力する(ステップS303)。
フィルタ実施部403は、フィルタ処理修正部502が出力した修正フィルタリング情報に基づいて、対象となるブロック境界を挟むブロックの画素に対してデブロッキングフィルタを実施し(ステップS304)、フィルタ処理を終了する。
以上、説明したように、本実施形態におけるデブロッキングフィルタ処理部110では、予め定められたテーブルに基づいて、デブロッキングフィルタにおける処理をラインごとに変更するようにした。このように、ブロック内における画素が含まれるラインに応じてフィルタ処理を変更することにより、ブロック内における画素のラインごとに異なる予測残差エネルギーなどの特性に応じたデブロッキングフィルタを施すことができる。その結果、ブロックノイズを低減させることができ、主観画質、符号化特性を改善することができる。また、フィルタ処理における演算量の削減することができ、フィルタ処理に要する時間を短縮する高速化が可能となる。
なお、本実施形態におけるフィルタ強度定義部504に記憶されているテーブルでは、ラインごとにフィルタの強度が対応付けられている構成について説明した。しかし、これに限ることなく、ブロック境界の中点とラインとの距離ごとにフィルタの強度を対応付けたテーブルをフィルタ強度定義部504に予め記憶させるようにしてもよい。
また、第1の実施形態におけるフィルタの強度の修正と、第2の実施形態におけるフィルタの強度の修正とを組み合わせて用いるようにしてもよい。例えば、ブロック境界の長さが予め定められた所定の長さ(第1の閾値)未満である場合においては、ブロック境界の中点から各ラインまでの距離に応じて、距離が短いほどフィルタの強度を弱くし、距離が長いほどフィルタの強度を強くする。すなわち、内側のラインに対するフィルタの強度を弱くし、外側のラインに対するフィルタの強度を強くする。ブロック境界の長さが所定の長さ以上である場合においては、ラインの位置ごとにフィルタの強度が定義されたテーブルを用いて、ラインの位置に応じて処理を変更する。これにより、柔軟なフィルタの強度を設定してデブロッキングフィルタを施すこともできる。
また、ブロック境界の長さに応じて異なる複数のテーブルをフィルタ強度定義部504に予め記憶させ、フィルタ処理修正部502が処理対象のブロック境界の長さに対応するテーブルを選択するようにしてもよい。これにより、ブロック境界の長さに応じた適切なデブロッキングフィルタを実施することができる。
また、量子化パラメータの値に応じて異なる複数のテーブルをフィルタ強度定義部504に予め記憶させ、フィルタ処理修正部502が処理対象のブロック境界を挟むブロックの量子化パラメータの値に対応するテーブルを選択し、選択したテーブルに基づいて、各ラインにおけるフィルタの強度を修正するようにしてもよい。
また、フィルタ強度定義部504に複数のテーブルを予め記憶させ、複数のテーブルからいずれかを選択してデブロッキングフィルタ処理を行う場合、デブロッキングフィルタ処理部110は、フィルタ処理修正部502が選択したテーブルを示す情報をエントロピー符号化処理部113に出力して、選択したテーブルを示す情報が符号化ストリームに含まれるようにしてもよい。この場合、デブロッキングフィルタ処理部208は、エントロピー復号処理部201が符号化ストリームを復号した情報から、テーブルを示す情報を取得し、当該テーブルに基づいて、各ラインにおけるフィルタの強度を修正するようにしてもよい。なお、テーブルを示す情報は、複数のテーブルにおいて各テーブルを識別するための情報であってもよいし、テーブルにおける各ラインとフィルタの強度との対応関係を示す情報すなわちテーブル自体であってもよい。テーブル自体が符号化ストリームに含まれる場合、デブロッキングフィルタ処理部208では、符号化ストリームに含まれるテーブルを取得すると、フィルタ強度定義部504に記憶させることになる。
以上、第1及び第2の実施形態において説明したデブロッキングフィルタ処理部110、208と、デブロッキングフィルタ処理部110を具備する動画像符号化装置100と、デブロッキングフィルタ処理部208を具備する動画像復号装置200は、コンピュータとソフトウエアプログラムとを用いて実現することができる。また、そのソフトウエアプログラムをコンピュータが読み取り可能な記録媒体に記録して提供することが可能である。また、ソフトウエアをネットワークを介して提供することも可能である。
図12は、デブロッキングフィルタ処理部110を具備する動画像符号化装置100をコンピュータとソフトウエアプログラムとによって構成する場合におけるコンピュータのハードウェア構成例を示す図である。コンピュータは、CPU900、メモリ901、映像信号入力部902、プログラム記憶装置903、及び、符号化ストリーム出力部905を備えている。
CPU900はプログラムを実行する。メモリ901は、CPU900がアクセスするプログラムやデータを一時的に格納するRAMなどである。映像信号入力部902は、映像信号を生成するカメラなどの機器から符号化対象の入力映像信号を入力する。なお、映像信号入力部902は、ハードディスク装置等による入力映像信号を記憶する記憶装置であってもよい。プログラム記憶装置903は、上述の各実施形態において説明した符号化処理をCPU900に実行させるソフトウエアプログラムである動画像符号化プログラム904を格納する。符号化ストリーム出力部905は、CPU900がメモリ901にロードされた動画像符号化プログラム904を実行することにより生成された符号化ストリームを出力する。符号化ストリーム出力部905は、ネットワークを介して、符号化ストリームを出力するようにしてもよい。また、符号化ストリーム出力部905は、ハードディスク装置等による符号化ストリーム記憶する記憶装置であってもよい。CPU900、メモリ901、映像信号入力部902、プログラム記憶装置903、及び、符号化ストリーム出力部905は、バスを介して互いに接続されている。
図13は、デブロッキングフィルタ処理部208を具備する動画像復号装置200をコンピュータとソフトウエアプログラムとによって構成する場合におけるコンピュータのハードウェア構成例を示す図である。コンピュータは、CPU1000、メモリ1001、符号化ストリーム入力部1002、プログラム記憶装置1003、及び、復号映像出力部1005を備えている。
CPU1000はプログラムを実行する。メモリ1001は、CPU1000がアクセスするプログラムやデータを一時的に格納するRAMなどである。符号化ストリーム入力部1002は、例えば、動画像符号化装置100が上述の処理により入力映像信号を符号化した符号化ストリームを入力する。なお、符号化ストリーム入力部1002は、ハードディスク装置等による符号化ストリームを記憶する記憶装置であってもよい。プログラム記憶装置1003は、上述の各実施形態において説明した復号処理をCPU1000に実行させるソフトウエアプログラムである動画像復号プログラム1004を格納する。復号映像出力部1005は、CPU1000がメモリ1001にロードされた動画像復号プログラム1004を実行することにより、符号化ストリームを復号して得られた復号映像を再生装置などに出力する。なお、復号映像出力部1005は、ハードディスク装置等による復号映像信号を記憶する記憶装置であってもよい。CPU1000、メモリ1001、符号化ストリーム入力部1002、プログラム記憶装置1003、及び、復号映像出力部1005は、バスを介して互いに接続されている。
以上、図面を参照して本発明の実施形態を説明してきたが、上述の各実施形態において説明した構成例は本発明の例示であり、本発明が上述の各実施形態の構成例に限定されるものではないことは明らかである。したがって、本発明の精神及び技術的範囲を逸脱しない範囲での構成要素の追加、省略、置換、その他の変更を行ってもよい。
なお、本発明におけるデブロッキングフィルタ処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより「デブロッキングフィルタ処理」及び「フィルタ処理」を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。更に、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
100…動画像符号化装置
101…イントラ予測処理部
102…インター予測処理部
103…予測残差信号生成部
104…変換処理部
105…量子化処理部
106…逆量子化処理部
107…逆変換処理部
108…復号信号生成部
109…フレームメモリ
110…デブロッキングフィルタ処理部
111…インター予測情報格納部
112…イントラ予測情報格納部
113…エントロピー符号化処理部
200…動画像復号装置
201…エントロピー復号処理部
202…イントラ予測処理部
203…インター予測処理部
204…逆量子化処理部
205…逆変換処理部
206…復号信号生成部
207…フレームメモリ
208…デブロッキングフィルタ処理部
209…インター予測情報格納部
210…イントラ予測情報格納部
301…フィルタ使用判定部
302…フィルタ処理部
303…最終ブロック判定部
401…フィルタリング情報記憶部
402、502…フィルタ処理修正部
403…フィルタ実施部
504…フィルタ強度定義部
900、1000…CPU
901、1001…メモリ
902…映像信号入力部
903、1003…プログラム記憶装置
904…動画像符号化プログラム
905…符号化ストリーム出力部
1002…符号化ストリーム入力部
1004…動画像復号プログラム
1005…復号映像出力部

Claims (16)

  1. ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理方法であって、
    隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分ける第1のステップと、
    前記ブロックに含まれる各画素に対するフィルタ処理を前記ラインごとに決定する第2のステップと、
    前記ラインごとに決定したフィルタ処理を実施する第3のステップと、
    を有し、
    前記第2のステップでは、
    前記ラインが前記ブロック境界の中点の近傍に位置するか否かを判定し、
    前記ラインが前記ブロック境界の中点の近傍に位置する場合、前記フィルタ処理におけるフィルタの強度を弱くする決定をし、前記ラインが前記ブロック境界の中点の近傍に位置しない場合、前記フィルタ処理におけるフィルタの強度を強くする決定をする
    ことを特徴とするデブロッキング処理方法。
  2. 請求項に記載のデブロッキング処理方法であって、
    前記第2のステップでは
    前記ブロック境界の長さに基づいて、前記ブロック境界の中点の近傍に位置するか否かを判定する
    ことを特徴とするデブロッキング処理方法。
  3. 請求項に記載のデブロッキング処理方法であって、
    前記第2のステップでは、
    前記隣接するブロックに対する量子化パラメータが予め定められた基準より小さいときには前記ラインが前記ブロック境界の中点の近傍に位置すると判定する範囲を広げ、前記量子化パラメータが前記基準より大きいときには前記ラインが前記ブロック境界の中点の近傍に位置すると判定する範囲を狭める
    ことを特徴とするデブロッキング処理方法。
  4. ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理方法であって、
    隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分ける第1のステップと、
    前記ブロックに含まれる各画素に対するフィルタ処理を前記ラインごとに決定する第2のステップと、
    前記ラインごとに決定したフィルタ処理を実施する第3のステップと、
    を有し、
    前記第2のステップでは、
    前記ラインごとにフィルタ処理が予め対応付けられたテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定し、
    前記テーブルには、フィルタ強度の強いフィルタ処理又はフィルタ強度の弱いフィルタ処理のいずれを行うか、あるいはフィルタ処理を行わないことが前記ラインごとに対応付けられている
    ことを特徴とするデブロッキング処理方法。
  5. 請求項に記載のデブロッキング処理方法であって、
    前記テーブルは、ブロック境界の長さごとに複数定められており、
    前記第2のステップでは、
    複数の前記テーブルから前記ブロック境界の長さに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する ことを特徴とするデブロッキング処理方法。
  6. 請求項に記載のデブロッキング処理方法であって、
    前記テーブルは、前記隣接するブロックに対する量子化パラメータの値ごとに複数定められており、
    前記第2のステップでは、
    複数の前記テーブルから前記隣接するブロックに対する量子化パラメータに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する
    ことを特徴とするデブロッキング処理方法。
  7. 請求項から請求項のいずれか一項に記載のデブロッキング処理方法であって、
    前記映像復号方式において、前記映像符号化方式において各画素に対するフィルタ処理を決定した際に用いられたテーブルを示す情報を受信し復号する第4のステップと、
    を更に有し、
    前記映像復号方式における第2のステップでは、
    前記第4のステップにおいて復号した前記テーブルを示す情報に基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する
    ことを特徴とするデブロッキング処理方法。
  8. ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理装置であって、
    隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分け、ラインごとに、前記ブロックに含まれる各画素に対するフィルタ処理を決定するフィルタ処理修正部と、
    前記フィルタ処理修正部が決定したフィルタ処理を実施するフィルタ実施部と、
    を備え、
    前記フィルタ処理修正部は、
    前記ラインが前記ブロック境界の中点の近傍に位置するか否かを判定し、
    前記ラインが前記ブロック境界の中点の近傍に位置する場合、前記フィルタ処理におけるフィルタの強度を弱くする決定をし、前記ラインが前記ブロック境界の中点の近傍に位置しない場合、前記フィルタ処理におけるフィルタの強度を強くする決定をする
    ことを特徴とするデブロッキング処理装置。
  9. 請求項に記載のデブロッキング処理装置であって、
    前記フィルタ処理修正部は、
    前記ブロック境界の長さに基づいて、前記ブロック境界の中点の近傍に位置するか否かを判定する
    ことを特徴とするデブロッキング処理装置。
  10. 請求項に記載のデブロッキング処理装置であって、
    前記フィルタ処理修正部は、
    前記隣接するブロックに対する量子化パラメータが予め定められた基準より小さいときには前記ラインが前記ブロック境界の中点の近傍に位置すると判定する範囲を広げ、前記量子化パラメータが前記基準より大きいときには前記ラインが前記ブロック境界の中点の近傍に位置すると判定する範囲を狭める
    ことを特徴とするデブロッキング処理装置。
  11. ブロックベースの予測符号化により符号化ストリームを生成する映像符号化方式、又は符号化ストリームから映像を復号する映像復号方式において、ブロックノイズを低減させるためのデブロッキング処理装置であって、
    隣接するブロックに含まれる画素を、前記隣接するブロックの境界を示すブロック境界に垂直方向の複数のラインに分け、ラインごとに、前記ブロックに含まれる各画素に対するフィルタ処理を決定するフィルタ処理修正部と、
    前記フィルタ処理修正部が決定したフィルタ処理を実施するフィルタ実施部と、
    を備え、
    前記ラインごとにフィルタ処理が予め対応付けられたテーブルを記憶するフィルタ強度定義部を更に備え、
    前記フィルタ処理修正部は、
    前記テーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定し、
    前記テーブルには、フィルタ強度の強いフィルタ処理又はフィルタ強度の弱いフィルタ処理のいずれを行うか、あるいはフィルタ処理を行わないことが前記ラインごとに対応付けられている
    ことを特徴とするデブロッキング処理装置。
  12. 請求項11に記載のデブロッキング処理装置であって、
    前記フィルタ強度定義部には、ブロック境界の長さごとに定められた複数のテーブルが記憶されており、
    前記フィルタ処理修正部は、
    前記ブロック境界の長さに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する
    ことを特徴とするデブロッキング処理装置。
  13. 請求項11に記載のデブロッキング処理装置であって、
    前記フィルタ強度定義部には、前記隣接するブロックに対する量子化パラメータごとに定められた複数のテーブルが記憶されており、
    前記フィルタ処理修正部は、
    前記隣接するブロックに対する量子化パラメータに対応するテーブルを選択し、選択したテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する ことを特徴とするデブロッキング処理装置。
  14. 請求項11から請求項13のいずれか一項に記載のデブロッキング処理装置であって、
    前記映像復号方式における前記フィルタ処理修正部は、
    前記映像符号化方式において各画素に対するフィルタ処理を決定した際に用いられたテーブルを示す情報を取得し、取得した情報が示すテーブルに基づいて、前記ブロックに含まれる各画素に対するフィルタ処理を決定する
    ことを特徴とするデブロッキング処理装置。
  15. 請求項1から請求項のいずれか一項に記載のデブロッキング処理方法をコンピュータに実行させるためのプログラム。
  16. 請求項1から請求項のいずれか一項に記載のデブロッキング処理方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2012144102A 2012-06-27 2012-06-27 デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体 Active JP5814191B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012144102A JP5814191B2 (ja) 2012-06-27 2012-06-27 デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012144102A JP5814191B2 (ja) 2012-06-27 2012-06-27 デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体

Publications (2)

Publication Number Publication Date
JP2014007713A JP2014007713A (ja) 2014-01-16
JP5814191B2 true JP5814191B2 (ja) 2015-11-17

Family

ID=50105047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012144102A Active JP5814191B2 (ja) 2012-06-27 2012-06-27 デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体

Country Status (1)

Country Link
JP (1) JP5814191B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6396782B2 (ja) * 2014-12-11 2018-09-26 日本電信電話株式会社 デブロッキング処理方法、デブロッキング処理装置、コンピュータプログラム及び記録媒体

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5793511B2 (ja) * 2010-02-05 2015-10-14 テレフオンアクチーボラゲット エル エム エリクソン(パブル) デブロッキングフィルタリング制御

Also Published As

Publication number Publication date
JP2014007713A (ja) 2014-01-16

Similar Documents

Publication Publication Date Title
JP6660074B2 (ja) 映像復号化方法及び装置
US10373295B2 (en) Image processing apparatus and image processing method
JP7382951B2 (ja) 復元されたビデオデータにデブロッキングフィルタを適用するためのシステム及び方法
JP6053220B2 (ja) イントラ予測符号化方法、イントラ予測復号方法、イントラ予測符号化装置、イントラ予測復号装置、それらのプログラム並びにプログラムを記録した記録媒体
KR101919394B1 (ko) 무손실 인트라 hevc 코딩을 위한 지수-골룸 이진화에 대한 파라미터 결정
JP5989839B2 (ja) 映像復号化装置
JP6383327B2 (ja) イントラ予測処理装置、イントラ予測処理方法、イントラ予測処理プログラム、画像符号化装置及び画像復号装置
KR101826353B1 (ko) 디블록킹 필터링 방법 및 장치 및 이를 이용한 부호화 및 복호화 방법과 장치
KR20130045151A (ko) 복원 블록을 생성하는 방법 및 장치
KR20140124448A (ko) 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
JP6159225B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム及び画像復号プログラム
JP5814191B2 (ja) デブロッキング処理方法、デブロッキング処理装置、プログラム、及び記録媒体
KR20170058870A (ko) 비선형 매핑을 통한 영상 부호화/복호화 방법 및 장치
JP6030989B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、それらのプログラム並びにプログラムを記録した記録媒体
KR101924959B1 (ko) 영상 부호화 방법 및 장치
JP6396782B2 (ja) デブロッキング処理方法、デブロッキング処理装置、コンピュータプログラム及び記録媒体
JP7357481B2 (ja) デブロッキングフィルタ制御装置及びプログラム
JP7130890B2 (ja) 符号化装置、復号装置、及びプログラム
JP6357133B2 (ja) イントラ予測処理装置、イントラ予測処理方法、イントラ予測処理プログラム、画像符号化装置及び画像復号装置
KR101802304B1 (ko) 하다마드 변환을 이용한 부호화 방법 및 이러한 방법을 사용하는 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141017

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150814

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: 20150915

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150917

R150 Certificate of patent or registration of utility model

Ref document number: 5814191

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150