JP2013012815A - 画像処理装置及び画像処理方法 - Google Patents
画像処理装置及び画像処理方法 Download PDFInfo
- Publication number
- JP2013012815A JP2013012815A JP2011142726A JP2011142726A JP2013012815A JP 2013012815 A JP2013012815 A JP 2013012815A JP 2011142726 A JP2011142726 A JP 2011142726A JP 2011142726 A JP2011142726 A JP 2011142726A JP 2013012815 A JP2013012815 A JP 2013012815A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- image
- filter
- boundary
- deblocking filter
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】デブロックフィルタの適用に際しての処理のさらなる並列化を可能とすること。
【解決手段】符号化ストリームを復号して画像を生成する復号部と、前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、を備える画像処理装置を提供する。
【選択図】図16
【解決手段】符号化ストリームを復号して画像を生成する復号部と、前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、を備える画像処理装置を提供する。
【選択図】図16
Description
本開示は、画像処理装置及び画像処理方法に関する。
画像符号化方式の標準仕様の1つであるH.264/AVCでは、画像の符号化の際に生じるブロック歪みに起因する画質の劣化を抑制するために、例えば4×4画素のブロックごとにブロック境界にデブロックフィルタが適用される。このデブロックフィルタのために要する処理量は多大であり、例えば、画像の復号の際の全処理量の50%を占めることもあると言われている。
次世代の画像符号化方式であるHEVC(High Efficiency Video Coding)の標準化作業では、JCTVC−A119(下記非特許文献1参照)において、8×8画素以上のサイズのブロックごとにデブロックフィルタを適用することが提案されている。JCTVC−A119において提案された手法では、デブロックフィルタを適用する最小単位のブロックサイズが拡大されることで、1つのマクロブロック内で同一方向の複数のブロック境界についてのフィルタリング処理を並列的に実行することが可能となる。
K.Ugur (Nokia), K.R.Andersson (LM Ericsson), A.Fuldseth (Tandberg Telecom), "JCTVC-A119:Video coding technology proposal by Tandberg, Nokia, and Ericsson", Documents of the first meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Dresden, Germany, 15-23 April, 2010.
しかしながら、JCTVC−A119において提案された手法を採用したとしても、垂直方向のブロック境界についての処理と水平方向のブロック境界についての処理との間の依存関係は残される。よって、1つのマクロブロック(あるいは1つの符号化単位)内で異なる方向のブロック境界についての処理を並列化すること、及びマクロブロック間で処理を並列化することは、依然として困難である。従って、上記手法でも、デブロックフィルタの適用に際しての多大な処理量を原因とする遅延又はデータレートの低下などの課題が十分に解決されるとは言い難い。
そこで、本開示に係る技術は、デブロックフィルタの適用に際しての処理のさらなる並列化を可能とする、画像処理装置及び画像処理方法を提供しようとするものである。
本開示によれば、符号化ストリームを復号して画像を生成する復号部と、前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、を備える画像処理装置が提供される。
上記画像処理装置は、典型的には、画像を復号する画像復号装置として実現され得る。
また、本開示によれば、符号化ストリームを復号して画像を生成することと、生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、を含む画像処理方法が提供される。
また、本開示によれば、符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、を備える画像処理装置が提供される。
上記画像処理装置は、典型的には、画像を符号化する画像符号化装置として実現され得る。
また、本開示によれば、符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、を含む画像処理方法が提供される。
本開示に係る画像処理装置及び画像処理方法によれば、デブロックフィルタの適用に際しての処理のさらなる並列化が可能となる。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
また、以下の順序で説明を行う。
1.装置の概要
1−1.画像符号化装置
1−2.画像復号装置
2.既存の手法の説明
2−1.デブロックフィルタの基本的な構成
2−2.既存の手法における処理間の依存関係
3.第1の実施例
3−1.デブロックフィルタの構成例
3−2.処理の流れ
4.第2の実施例
4−1.デブロックフィルタの構成例
4−2.処理の流れ
5.応用例
6.まとめ
1.装置の概要
1−1.画像符号化装置
1−2.画像復号装置
2.既存の手法の説明
2−1.デブロックフィルタの基本的な構成
2−2.既存の手法における処理間の依存関係
3.第1の実施例
3−1.デブロックフィルタの構成例
3−2.処理の流れ
4.第2の実施例
4−1.デブロックフィルタの構成例
4−2.処理の流れ
5.応用例
6.まとめ
<1.装置の概要>
まず、図1及び図2を用いて、本明細書で開示する技術を適用可能な一例としての装置の概要を説明する。本明細書で開示する技術は、例えば、画像符号化装置及び画像復号装置に適用可能である。
まず、図1及び図2を用いて、本明細書で開示する技術を適用可能な一例としての装置の概要を説明する。本明細書で開示する技術は、例えば、画像符号化装置及び画像復号装置に適用可能である。
[1−1.画像符号化装置]
図1は、一実施形態に係る画像符号化装置10の構成の一例を示すブロック図である。図1を参照すると、画像符号化装置10は、A/D(Analogue to Digital)変換部11、並べ替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18、逆量子化部21、逆直交変換部22、加算部23、デブロックフィルタ24a、フレームメモリ25、セレクタ26、イントラ予測部30、動き探索部40、及びモード選択部50を備える。
図1は、一実施形態に係る画像符号化装置10の構成の一例を示すブロック図である。図1を参照すると、画像符号化装置10は、A/D(Analogue to Digital)変換部11、並べ替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18、逆量子化部21、逆直交変換部22、加算部23、デブロックフィルタ24a、フレームメモリ25、セレクタ26、イントラ予測部30、動き探索部40、及びモード選択部50を備える。
A/D変換部11には、A/D変換部11は、アナログ形式で入力される画像信号をデジタル形式の画像データに変換し、一連のデジタル画像データを並べ替えバッファ12へ出力する。
並べ替えバッファ12に入力される画像データは、符号化対象画像の画像データである。並べ替えバッファ12は、A/D変換部11から入力される一連の画像データに含まれる画像を並べ替える。並べ替えバッファ12は、符号化処理に係るGOP(Group of Pictures)構造に応じて画像を並べ替えた後、並べ替え後の画像データを減算部13、イントラ予測部30及び動き探索部40へ出力する。
減算部13には、並べ替えバッファ12から入力される画像データ、及び後に説明するモード選択部50により選択される予測画像データが供給される。減算部13は、並べ替えバッファ12から入力される画像データとモード選択部50から入力される予測画像データとの差分である予測誤差データを算出し、算出した予測誤差データを直交変換部14へ出力する。
直交変換部14は、減算部13から入力される予測誤差データについて直交変換を行う。直交変換部14により実行される直交変換は、例えば、離散コサイン変換(Discrete Cosine Transform:DCT)又はカルーネン・レーベ変換などであってよい。直交変換部14は、直交変換処理により取得される変換係数データを量子化部15へ出力する。
量子化部15には、直交変換部14から入力される変換係数データ、及び後に説明するレート制御部18からのレート制御信号が供給される。量子化部15は、変換係数データを量子化し、量子化後の変換係数データ(以下、量子化データという)を可逆符号化部16及び逆量子化部21へ出力する。また、量子化部15は、レート制御部18からのレート制御信号に基づいて量子化パラメータ(量子化スケール)を切替えることにより、可逆符号化部16に入力される量子化データのビットレートを変化させる。
可逆符号化部16には、量子化部15から入力される量子化データ、及び、後に説明するイントラ予測部30又は動き探索部40により生成されモード選択部50により選択されるイントラ予測又はインター予測に関する情報が供給される。イントラ予測に関する情報は、例えば、ブロックごとの最適なイントラ予測モードを示す予測モード情報を含み得る。また、インター予測に関する情報は、例えば、ブロックごとの動きベクトルの予測のための予測モード情報、差分動きベクトル情報、及び参照画像情報などを含み得る。
可逆符号化部16は、量子化データについて可逆符号化処理を行うことにより、符号化ストリームを生成する。可逆符号化部16による可逆符号化は、例えば、可変長符号化、又は算術符号化などであってよい。また、可逆符号化部16は、上述したイントラ予測に関する情報又はインター予測に関する情報を、符号化ストリームのヘッダ(例えばブロックヘッダ又はスライスヘッダなど)内に多重化する。そして、可逆符号化部16は、生成した符号化ストリームを蓄積バッファ17へ出力する。
蓄積バッファ17は、可逆符号化部16から入力される符号化ストリームを一時的に蓄積する。そして、蓄積バッファ17は、蓄積した符号化ストリームを、伝送路(又は画像符号化装置10からの出力線)の帯域に応じたレートで出力する。
レート制御部18は、蓄積バッファ17の空き容量を監視する。そして、レート制御部18は、蓄積バッファ17の空き容量に応じてレート制御信号を生成し、生成したレート制御信号を量子化部15へ出力する。例えば、レート制御部18は、蓄積バッファ17の空き容量が少ない時には、量子化データのビットレートを低下させるためのレート制御信号を生成する。また、例えば、レート制御部18は、蓄積バッファ17の空き容量が十分大きい時には、量子化データのビットレートを高めるためのレート制御信号を生成する。
逆量子化部21、逆直交変換部22及び加算部23による処理は、いわゆる符号化の際のローカルデコード処理を構成する。画像符号化装置10による符号化対象画像の符号化は、以下に説明するように、ローカルデコード処理によって復号された画像を用いて行われる。
逆量子化部21は、量子化部15から入力される量子化データについて逆量子化処理を行う。そして、逆量子化部21は、逆量子化処理により取得される変換係数データを、逆直交変換部22へ出力する。
逆直交変換部22は、逆量子化部21から入力される変換係数データについて逆直交変換処理を行うことにより、予測誤差データを復元する。そして、逆直交変換部22は、復元した予測誤差データを加算部23へ出力する。
加算部23は、逆直交変換部22から入力される復元された予測誤差データとモード選択部50から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部23は、生成した復号画像データをデブロックフィルタ24a及びフレームメモリ25へ出力する。
デブロックフィルタ24aは、画像の符号化の際に生じるブロック歪みを減少させるためのフィルタリング処理を行う。デブロックフィルタ24aによりフィルタリングされた画像は、画像符号化装置10における符号化対象画像の符号化のために使用される。例えば、デブロックフィルタ24aは、加算部23から入力される復号画像データについてブロックの境界ごとにフィルタリングの要否を判定し、フィルタを適用すべきであると判定した境界にデブロックフィルタを適用する。デブロックフィルタ24aには、加算部23からの復号画像データに加えて、フィルタリングの要否の判定のために使用される情報(例えば、モード情報、変換係数情報及び動きベクトル情報)も入力される。そして、デブロックフィルタ24aは、ブロック歪みの除去されたフィルタリング後の復号画像データをフレームメモリ25へ出力する。なお、デブロックフィルタ24aによる処理について、後に詳細に説明する。
フレームメモリ25は、加算部23から入力される復号画像データ、及びデブロックフィルタ24aから入力されるフィルタリング後の復号画像データを記憶する。
セレクタ26は、イントラ予測のために使用されるフィルタリング前の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとしてイントラ予測部30に供給する。また、セレクタ26は、インター予測のために使用されるフィルタリング後の復号画像データをフレームメモリ25から読み出し、読み出した復号画像データを参照画像データとして動き探索部40に供給する。
イントラ予測部30は、並べ替えバッファ12から入力される符号化対象の画像データ、及びセレクタ26を介して供給される復号画像データに基づいて、各イントラ予測モードのイントラ予測処理を行う。例えば、イントラ予測部30は、各イントラ予測モードによる予測結果を所定のコスト関数を用いて評価する。そして、イントラ予測部30は、コスト関数値が最小となるイントラ予測モード、即ち圧縮率が最も高くなるイントラ予測モードを、最適なイントラ予測モードとして選択する。さらに、イントラ予測部30は、当該最適なイントラ予測モードを示す予測モード情報を含むイントラ予測に関する情報、予測画像データ、及びコスト関数値を、モード選択部50へ出力する。
動き探索部40は、並べ替えバッファ12から入力される符号化対象の画像データ、及びセレクタ26を介して供給される復号画像データに基づいて、インター予測処理(フレーム間予測処理)を行う。例えば、動き探索部40は、各予測モードによる予測結果を所定のコスト関数を用いて評価する。次に、動き探索部40は、コスト関数値が最小となる予測モード、即ち圧縮率が最も高くなる予測モードを、最適な予測モードとして選択する。また、動き探索部40は、当該最適な予測モードに従って予測画像データを生成する。そして、動き探索部40は、選択した最適な予測モードを示す予測モード情報を含むインター予測に関する情報、予測画像データ、及びコスト関数値を、モード選択部50へ出力する。
モード選択部50は、イントラ予測部30から入力されるイントラ予測に関するコスト関数値と動き探索部40から入力されるインター予測に関するコスト関数値とを比較する。そして、モード選択部50は、イントラ予測及びインター予測のうちコスト関数値がより少ない予測手法を選択する。モード選択部50は、イントラ予測を選択した場合には、イントラ予測に関する情報を可逆符号化部16へ出力すると共に、予測画像データを減算部13及び加算部23へ出力する。また、モード選択部50は、インター予測を選択した場合には、インター予測に関する上述した情報を可逆符号化部16へ出力すると共に、予測画像データを減算部13及び加算部23へ出力する。
[1−2.画像復号装置]
図2は、一実施形態に係る画像復号装置60の構成の一例を示すブロック図である。図2を参照すると、画像復号装置60は、蓄積バッファ61、可逆復号部62、逆量子化部63、逆直交変換部64、加算部65、デブロックフィルタ24b、並べ替えバッファ67、D/A(Digital to Analogue)変換部68、フレームメモリ69、セレクタ70及び71、イントラ予測部80、並びに動き補償部90を備える。
図2は、一実施形態に係る画像復号装置60の構成の一例を示すブロック図である。図2を参照すると、画像復号装置60は、蓄積バッファ61、可逆復号部62、逆量子化部63、逆直交変換部64、加算部65、デブロックフィルタ24b、並べ替えバッファ67、D/A(Digital to Analogue)変換部68、フレームメモリ69、セレクタ70及び71、イントラ予測部80、並びに動き補償部90を備える。
蓄積バッファ61は、伝送路を介して入力される符号化ストリームを一時的に蓄積する。
可逆復号部62は、蓄積バッファ61から入力される符号化ストリームを、符号化の際に使用された符号化方式に従って復号する。また、可逆復号部62は、符号化ストリームのヘッダ領域に多重化されている情報を復号する。符号化ストリームのヘッダ領域に多重化されている情報とは、例えば、ブロックヘッダ内のイントラ予測に関する情報及びインター予測に関する情報を含み得る。可逆復号部62は、イントラ予測に関する情報をイントラ予測部80へ出力する。また、可逆復号部62は、インター予測に関する情報を動き補償部90へ出力する。
逆量子化部63は、可逆復号部62による復号後の量子化データを逆量子化する。逆直交変換部64は、符号化の際に使用された直交変換方式に従い、逆量子化部63から入力される変換係数データについて逆直交変換を行うことにより、予測誤差データを生成する。そして、逆直交変換部64は、生成した予測誤差データを加算部65へ出力する。
加算部65は、逆直交変換部64から入力される予測誤差データと、セレクタ71から入力される予測画像データとを加算することにより、復号画像データを生成する。そして、加算部65は、生成した復号画像データをデブロックフィルタ24b及びフレームメモリ69へ出力する。
デブロックフィルタ24bは、復号された画像に現れるブロック歪みを減少させるためのフィルタリング処理を行う。デブロックフィルタ24bは、例えば、加算部65から入力される復号画像データについてブロックの境界ごとにフィルタリングの要否を判定し、フィルタを適用すべきであると判定した境界にデブロックフィルタを適用する。デブロックフィルタ24bには、加算部65からの復号画像データに加えて、フィルタリングの要否の判定のために使用される情報も入力される。そして、デブロックフィルタ24bは、ブロック歪みの除去されたフィルタリング後の復号画像データを並べ替えバッファ67及びフレームメモリ69へ出力する。なお、デブロックフィルタ24bによる処理について、後に詳細に説明する。
並べ替えバッファ67は、デブロックフィルタ24bから入力される画像を並べ替えることにより、時系列の一連の画像データを生成する。そして、並べ替えバッファ67は、生成した画像データをD/A変換部68へ出力する。
D/A変換部68は、並べ替えバッファ67から入力されるデジタル形式の画像データをアナログ形式の画像信号に変換する。そして、D/A変換部68は、例えば、画像復号装置60と接続されるディスプレイ(図示せず)にアナログ画像信号を出力することにより、画像を表示させる。
フレームメモリ69は、加算部65から入力されるフィルタリング前の復号画像データ、及びデブロックフィルタ24bから入力されるフィルタリング後の復号画像データを記憶する。
セレクタ70は、可逆復号部62により取得されるモード情報に応じて、画像内のブロックごとに、フレームメモリ69からの画像データの出力先をイントラ予測部80と動き補償部90との間で切り替える。例えば、セレクタ70は、イントラ予測モードが指定された場合には、フレームメモリ69から供給されるフィルタリング前の復号画像データを参照画像データとしてイントラ予測部80へ出力する。また、セレクタ70は、インター予測モードが指定された場合には、フレームメモリ69から供給されるフィルタリング後の復号画像データを参照画像データとして動き補償部90へ出力する。
セレクタ71は、可逆復号部62により取得されるモード情報に応じて、画像内のブロックごとに、加算部65へ供給すべき予測画像データの出力元をイントラ予測部80と動き補償部90との間で切り替える。例えば、セレクタ71は、イントラ予測モードが指定された場合には、イントラ予測部80から出力される予測画像データを加算部65へ供給する。セレクタ71は、インター予測モードが指定された場合には、動き補償部90から出力される予測画像データを加算部65へ供給する。
イントラ予測部80は、可逆復号部62から入力されるイントラ予測に関する情報とフレームメモリ69からの参照画像データとに基づいて画素値の画面内予測を行い、予測画像データを生成する。そして、イントラ予測部80は、生成した予測画像データをセレクタ71へ出力する。
動き補償部90は、可逆復号部62から入力されるインター予測に関する情報とフレームメモリ69からの参照画像データとに基づいて動き補償処理を行い、予測画像データを生成する。そして、動き補償部90は、生成した予測画像データをセレクタ71へ出力する。
<2.既存の手法の説明>
[2−1.デブロックフィルタの基本的な構成]
一般的に、H.264/AVC又はHEVCなどの既存の画像符号化方式におけるデブロックフィルタによる処理は、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という3種類の処理を含む。以下、HEVCを例にとって、これら3つの処理について説明する。
[2−1.デブロックフィルタの基本的な構成]
一般的に、H.264/AVC又はHEVCなどの既存の画像符号化方式におけるデブロックフィルタによる処理は、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という3種類の処理を含む。以下、HEVCを例にとって、これら3つの処理について説明する。
(1)フィルタリング要否判定処理
フィルタリング要否判定処理は、入力画像内のブロック境界ごとにデブロックフィルタを適用すべきか否かを判定する処理である。ブロック境界は、左右に隣接するブロック間の垂直境界と、上下に隣接するブロック間の水平境界とを含む。JCTVC−A119では、8×8画素のブロックサイズが最小の処理単位である。例えば、16×16画素のマクロブロック内には4つの8×8画素のブロックが存在し、ブロックごとに1つの(左の)垂直境界及び1つの(上の)水平境界、即ち合計で4+4=8個の境界が判定の対象となる。なお、本明細書において、マクロブロックとの用語は、HEVCの文脈における符号化単位(CU:Coding Unit)をも含むものとする。
フィルタリング要否判定処理は、入力画像内のブロック境界ごとにデブロックフィルタを適用すべきか否かを判定する処理である。ブロック境界は、左右に隣接するブロック間の垂直境界と、上下に隣接するブロック間の水平境界とを含む。JCTVC−A119では、8×8画素のブロックサイズが最小の処理単位である。例えば、16×16画素のマクロブロック内には4つの8×8画素のブロックが存在し、ブロックごとに1つの(左の)垂直境界及び1つの(上の)水平境界、即ち合計で4+4=8個の境界が判定の対象となる。なお、本明細書において、マクロブロックとの用語は、HEVCの文脈における符号化単位(CU:Coding Unit)をも含むものとする。
図3は、ブロック境界を挟んで隣接する2つのブロックBa及びBb内の画素の一例を示す説明図である。ここでは垂直境界を例にとって説明するが、当然ながら、ここで説明される事項は水平境界にも同等に適用可能である。図3の例において、ブロックBa内の画素は、pijという記号で示されている。iは列のインデックス、jは行のインデックスである。列のインデックスiは、垂直境界に近い列から順に(右から左へ)0,1,2,3と付番されている。行のインデックスjは、上から下へ0,1,2,…,7と付番されている。なお、ブロックBaの左半分は図中で省略されている。一方、ブロックBb内の画素は、qkjという記号で示されている。kは列のインデックス、jは行のインデックスである。列のインデックスkは、垂直境界に近い列から順に(左から右へ)0,1,2,3と付番されている。なお、ブロックBbの右半分もまた図中で省略されている。
図3に示したブロックBa及びBbの間の垂直境界について、デブロックフィルタを適用すべきか否かは、次のような条件に従って判定され得る:
・輝度成分(Luma)の判定条件・・・条件A及び条件Bがいずれも真なら適用
−条件A:
(A1)ブロックBa若しくはBbがイントラ予測モードである;
(A2)ブロックBa若しくはBbが非ゼロの直交変換係数を有する;又は
(A3)|MVAx−MVBx|≧4若しくは|MVAy−MVBy|≧4
−条件B:
|p22−2p12+p02|+|q22−2q12+q02|+|p25−2p15+p05|+|q25−2q15+q05|<β
−条件A:
(A1)ブロックBa若しくはBbがイントラ予測モードである;
(A2)ブロックBa若しくはBbが非ゼロの直交変換係数を有する;又は
(A3)|MVAx−MVBx|≧4若しくは|MVAy−MVBy|≧4
−条件B:
|p22−2p12+p02|+|q22−2q12+q02|+|p25−2p15+p05|+|q25−2q15+q05|<β
なお、条件A3に関し、Qpel(1/4画素)精度のブロックBaの動きベクトルを(MVAx,MVAy)、ブロックBbの動きベクトルを(MVBx,MVBy)とする。また、条件Bにおけるβは、エッジ判定閾値である。βの初期値は量子化パラメータに応じて与えられる。また、βの値は、スライスヘッダ内のパラメータでユーザにより指定可能である。
・色差成分(Chroma)の判定条件・・・条件A1が真なら適用
−条件A1:ブロックBa又はBbがイントラ予測モードである
−条件A1:ブロックBa又はBbがイントラ予測モードである
即ち、図4において点線枠L2及びL5で示しているように、一般的な境界についてのフィルタリング要否判定処理(特に、輝度成分の判定条件Bの判定)では、各ブロックの2番目及び5番目のライン(最も上の行を0番目とする)の画素が参照される。なお、対象の境界が垂直境界である場合には、ラインとは、当該境界と直交する行に相当する。対象の境界が水平境界である場合には、ラインとは、当該境界と直交する列に相当する。そして、上述した判定条件に従ってデブロックフィルタを適用すべきと判定された境界について、次に説明するフィルタ強度選択処理及びフィルタリング処理が行われる。
(2)フィルタ強度選択処理
ある境界についてデブロックフィルタを適用すべきと判定されると、垂直境界については当該境界の左右の画素、水平境界については当該境界の上下の画素に、フィルタリング処理が行われる。輝度成分については、画素値に応じてフィルタ強度が強(strong)フィルタと弱(weak)フィルタとの間で切り替えられ得る。
ある境界についてデブロックフィルタを適用すべきと判定されると、垂直境界については当該境界の左右の画素、水平境界については当該境界の上下の画素に、フィルタリング処理が行われる。輝度成分については、画素値に応じてフィルタ強度が強(strong)フィルタと弱(weak)フィルタとの間で切り替えられ得る。
−強度選択・・・1ラインごとにフィルタ強度を選択。以下の条件C1〜C3が全て満たされる場合には強フィルタ、いずれか1つでも満たされない場合には弱フィルタが選択される:
(C1)d<(β>>2)
(C2)(|p3j−p0j|+|q0j−q3j|)<(β>>3)
(C3)|p0j−q0j|<((5tC+1)>>1)
ここで、jは、ラインのインデックスである。また、d=|p22−2p12+p02|+|q22−2q12+q02|+|p25−2p15+p05|+|q25−2q15+q05|である。
(C1)d<(β>>2)
(C2)(|p3j−p0j|+|q0j−q3j|)<(β>>3)
(C3)|p0j−q0j|<((5tC+1)>>1)
ここで、jは、ラインのインデックスである。また、d=|p22−2p12+p02|+|q22−2q12+q02|+|p25−2p15+p05|+|q25−2q15+q05|である。
即ち、図5において点線枠C4〜C7及びC0〜C3で示しているように、一般的なフィルタ強度選択処理では、各ブロックの0〜7番目の全てのラインの画素値が参照される。
(3)フィルタリング処理
選択されたフィルタ強度を有するデブロックフィルタのフィルタリング処理は、次のような計算式により表現され得る。
選択されたフィルタ強度を有するデブロックフィルタのフィルタリング処理は、次のような計算式により表現され得る。
・輝度成分のフィルタリング
−弱フィルタリング:
Δ=Clip(−tC,tC,(13(q0j−p0j)+4(q1j−p1j)−5(q2j−p2j)+16)>>5))
p0j=Clip0−255(p0j+Δ)
q0j=Clip0−255(q0j−Δ)
p1j=Clip0−255(p1j+Δ/2)
q1j=Clip0−255(q1j−Δ/2)
−弱フィルタリング:
Δ=Clip(−tC,tC,(13(q0j−p0j)+4(q1j−p1j)−5(q2j−p2j)+16)>>5))
p0j=Clip0−255(p0j+Δ)
q0j=Clip0−255(q0j−Δ)
p1j=Clip0−255(p1j+Δ/2)
q1j=Clip0−255(q1j−Δ/2)
−強フィルタリング:
p0j=Clip0−255((p2j+2p1j+2p0j+2q0j+q1j+4)>>3)
q0j=Clip0−255((p1j+2p0j+2q0j+2q1j+q2j+4)>>3)
p1j=Clip0−255((p2j+p1j+p0j+q0j+2)>>2)
q1j=Clip0−255((p0j+q0j+q1j+q2j+2)>>2)
p2j=Clip0−255((2p3j+3p2j+p1j+p0j+q0j+4)>>3)
q2j=Clip0−255((p0j+q0j+q1j+3q2j+2q3j+4)>>3)
p0j=Clip0−255((p2j+2p1j+2p0j+2q0j+q1j+4)>>3)
q0j=Clip0−255((p1j+2p0j+2q0j+2q1j+q2j+4)>>3)
p1j=Clip0−255((p2j+p1j+p0j+q0j+2)>>2)
q1j=Clip0−255((p0j+q0j+q1j+q2j+2)>>2)
p2j=Clip0−255((2p3j+3p2j+p1j+p0j+q0j+4)>>3)
q2j=Clip0−255((p0j+q0j+q1j+3q2j+2q3j+4)>>3)
なお、Clip(a,b,c)は値cをa≦c≦bの範囲でクリップする処理、Clip0−255(c)は値cを0≦c≦255の範囲でクリップする処理をそれぞれ表す。
・色差成分のフィルタリング:
Δ=Clip(−tC,tC,((((q0j−p0j)<<2)+p1j−q1j+4)>>3))
p0j=Clip0−255(p0j+Δ)
q0j=Clip0−255(q0j−Δ)
Δ=Clip(−tC,tC,((((q0j−p0j)<<2)+p1j−q1j+4)>>3))
p0j=Clip0−255(p0j+Δ)
q0j=Clip0−255(q0j−Δ)
即ち、図6において点線枠C5〜C7及びC0〜C2で示しているように、一般的なフィルタリング処理(特に、輝度成分の強フィルタリング)では、各ブロックの0〜2番目及び5〜7番目のラインの画素値が更新される。
[2−2.既存の手法における処理間の依存関係]
ここで、説明のために、図7に示したように、16×16画素のサイズを有するマクロブロックMBx(MB0、MB1…)の左上の垂直境界をVx,0、中央上の垂直境界をVx,1、左下の垂直境界をVx,2、中央下の垂直境界をVx,3、左上の水平境界をHx,0、右上の水平境界をHx,1、左中央の水平境界をHx,2、右中央の水平境界をHx,3、と表すものとする。また、例えば境界Zについてのフィルタリング要否判定処理をJZ、フィルタ強度選択処理をSZ、フィルタリング処理をFZなどと表すものとする。
ここで、説明のために、図7に示したように、16×16画素のサイズを有するマクロブロックMBx(MB0、MB1…)の左上の垂直境界をVx,0、中央上の垂直境界をVx,1、左下の垂直境界をVx,2、中央下の垂直境界をVx,3、左上の水平境界をHx,0、右上の水平境界をHx,1、左中央の水平境界をHx,2、右中央の水平境界をHx,3、と表すものとする。また、例えば境界Zについてのフィルタリング要否判定処理をJZ、フィルタ強度選択処理をSZ、フィルタリング処理をFZなどと表すものとする。
上述した既存の手法では、1つのマクロブロック内で同一方向の複数の境界についての処理の間に依存関係が存在しない。そのため、例えば1つのマクロブロック内で複数の垂直境界についての強度選択処理及びフィルタリング処理を並列的に実行することが可能であり、複数の水平境界についての強度選択処理及びフィルタリング処理を並列的に実行することも可能である。例えば、図8を参照すると、マクロブロックMB0内で、垂直境界V0,0についてのフィルタ強度選択処理SV0,0が、他の垂直境界についてのフィルタリング処理FV0,1、FV0,2及びFV0,3により更新される画素を参照しておらず、これらフィルタリング処理に依存しないことが分かる。同様に、垂直境界V0,1についてのフィルタ強度選択処理SV0,1は、他の垂直境界についてのフィルタリング処理FV0,0、FV0,2及びFV0,3により更新される画素を参照しない。垂直境界V0,2についてのフィルタ強度選択処理SV0,2は、他の垂直境界についてのフィルタリング処理FV0,0、FV0,1及びFV0,3により更新される画素を参照しない。垂直境界V0,3についてのフィルタ強度選択処理SV0,3は、他の垂直境界についてのフィルタリング処理FV0,0、FV0,1及びFV0,2により更新される画素を参照しない。
しかし、上述した既存の手法では、垂直境界についてのフィルタリング処理と水平境界についてのフィルタリング要否判定処理及びフィルタ強度選択処理との間の依存関係は残される。また、水平境界についてのフィルタリング処理と垂直境界についてのフィルタリング要否判定処理及びフィルタ強度選択処理との間の依存関係も残される。従って、例えば垂直境界を水平境界よりも先に処理する場合、あるマクロブロック内での水平境界についての処理は、垂直境界についての処理の終了を待って実行されることになる。一例として、図9を参照すると、マクロブロックMB0内で、フィルタリング処理FV0,0及びFV0,1の結果にフィルタリング要否判定処理SH0,0が依存し、フィルタリング処理FV0,1の結果にフィルタ強度選択処理SH0,1が依存することが示されている。また、別の例として、図10を参照すると、マクロブロックMB0内で、フィルタリング処理FV0,0及びFV0,1の結果にフィルタリング要否判定処理JH0,0が依存し、フィルタリング処理FV0,1の結果にフィルタリング要否判定処理JH0,1が依存することが示されている。
既存の手法は、このような処理間の依存関係を有しているため、例えばJCTVC−A119において提案された手法を採用したとしても、非常に限られた範囲でしかデブロックフィルタの処理の並列化を達成することができない。
図11は、既存の手法におけるデブロックフィルタの処理の順序の一例について説明するための説明図である。ここでは、一例として、32×32画素のサイズを有する画像がデブロックフィルタに入力されるものとする。当該入力画像は、それぞれ16×16画素のサイズを有する4つのマクロブロックMB0〜MB3を含む。
図11を参照すると、並列的に実行され得る処理が各点線枠内にそれぞれ示されている。例えば、第1ステップでは、マクロブロックMB0の4つの垂直境界についてのフィルタリング要否判定処理JV0,0、JV0,1、JV0,2及びJV0,3が並列的に実行される。次に、第2ステップでは、マクロブロックMB0の4つの垂直境界についてのフィルタ強度選択処理SV0,0、SV0,1、SV0,2及びSV0,3が並列的に実行される。次に、第3ステップでは、マクロブロックMB0の4つの垂直境界についてのフィルタリング処理FV0,0、FV0,1、FV0,2及びFV0,3が並列的に実行される。次に、第3ステップが終了した後、第4ステップにおいて、マクロブロックMB0の4つの水平境界についてのフィルタリング要否判定処理JH0,0、JH0,1、JH0,2及びJH0,3が並列的に実行される。次に、第5ステップでは、マクロブロックMB0の4つの水平境界についてのフィルタ強度選択処理SH0,0、SH0,1、SH0,2及びSH0,3が並列的に実行される。次に、第6ステップでは、マクロブロックMB0の4つの水平境界についてのフィルタリング処理FH0,0、FH0,1、FH0,2及びFH0,3が並列的に実行される。次に、第6ステップが終了した後、マクロブロックMB1についての処理(第7ステップ〜第12ステップ)が順次行われる。次に、マクロブロックMB1についての処理が終了した後、マクロブロックMB2についての処理(第13ステップ〜第18ステップ)が順次行われる。次に、マクロブロックMB2についての処理が終了した後、マクロブロックMB3についての処理(第19ステップ〜第24ステップ)が順次行われる。
このような限られた範囲での処理の並列化では、デブロックフィルタの適用に際しての多大な処理量を原因とする遅延又はデータレートの低下などの課題が十分に解決されるとは言い難い。そこで、以下に説明するデブロックフィルタの2つの実施例により、デブロックフィルタの適用に際しての処理のさらなる並列化を実現する。
<3.第1の実施例>
[3−1.デブロックフィルタの構成例]
本節では、図1に示した画像符号化装置10のデブロックフィルタ24a及び図2に示した画像復号装置60のデブロックフィルタ24bの第1の実施例に係る構成の一例を説明する。なお、デブロックフィルタ24a及びデブロックフィルタ24bの構成は、共通であってよい。従って、これ以降の説明では、特に両者を区別する必要が無い場合には、デブロックフィルタ24a及びデブロックフィルタ24bをデブロックフィルタ24と総称する。
[3−1.デブロックフィルタの構成例]
本節では、図1に示した画像符号化装置10のデブロックフィルタ24a及び図2に示した画像復号装置60のデブロックフィルタ24bの第1の実施例に係る構成の一例を説明する。なお、デブロックフィルタ24a及びデブロックフィルタ24bの構成は、共通であってよい。従って、これ以降の説明では、特に両者を区別する必要が無い場合には、デブロックフィルタ24a及びデブロックフィルタ24bをデブロックフィルタ24と総称する。
(1)新たな処理間の依存関係
本実施例においても、デブロックフィルタ24による処理は、上述したフィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という3種類の処理を含む。但し、デブロックフィルタ24は、既存の手法とは異なる参照画素の画素値に基づいて、フィルタ強度選択処理を行う。より具体的には、デブロックフィルタ24は、ある境界(ある境界と直交する各ライン)に適用されるデブロックフィルタのフィルタ強度を、当該境界と直交する他の境界についてのフィルタリング処理によって更新されないラインに属する画素の画素値に基づいて選択する。ここでの更新されないラインとは、典型的には、当該境界の中央部分のラインである。図5又は図9などから理解されるように、各ブロックのブロックサイズが8×8画素である場合には、各境界の中央部分の3番目及び4番目(上端又は左端のラインを0番目とする)の2つのラインの画素値は、当該境界と直交する境界についてのフィルタリング処理において更新されない。従って、各ラインに適用されるデブロックフィルタのフィルタ強度は、デブロックフィルタへの入力画素値を用いて選択されることになる。
本実施例においても、デブロックフィルタ24による処理は、上述したフィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理という3種類の処理を含む。但し、デブロックフィルタ24は、既存の手法とは異なる参照画素の画素値に基づいて、フィルタ強度選択処理を行う。より具体的には、デブロックフィルタ24は、ある境界(ある境界と直交する各ライン)に適用されるデブロックフィルタのフィルタ強度を、当該境界と直交する他の境界についてのフィルタリング処理によって更新されないラインに属する画素の画素値に基づいて選択する。ここでの更新されないラインとは、典型的には、当該境界の中央部分のラインである。図5又は図9などから理解されるように、各ブロックのブロックサイズが8×8画素である場合には、各境界の中央部分の3番目及び4番目(上端又は左端のラインを0番目とする)の2つのラインの画素値は、当該境界と直交する境界についてのフィルタリング処理において更新されない。従って、各ラインに適用されるデブロックフィルタのフィルタ強度は、デブロックフィルタへの入力画素値を用いて選択されることになる。
図12及び図13は、デブロックフィルタ24によるフィルタ強度選択処理における参照画素について説明するための説明図である。図12を参照すると、16×16画素のサイズを有するマクロブロックMB0が示されている。デブロックフィルタ24は、マクロブロックMB0の垂直境界V0,0と直交する8つのラインについてのフィルタ強度を、垂直境界V0,0と直交する3番目のラインR3及び4番目のラインR4の少なくとも1つに属する画素を参照画素として用いて選択する(SV0,0)。ラインR3及びR4は、水平境界H0,0についてのフィルタリング処理によっても、水平境界H0,2についてのフィルタリング処理によっても更新されないラインである。同様に、デブロックフィルタ24は、垂直境界V0,2と直交する8つのラインについてのフィルタ強度を、垂直境界V0,2と直交するラインのうち3番目のラインR3及び4番目のラインR4の少なくとも1つに属する画素を参照画素として用いて選択する(SV0,2)。このような構成により、水平境界についてのフィルタリング処理と垂直境界についてのフィルタ強度選択処理との間の依存関係は解消される。
図13を参照すると、図12と同様のマクロブロックMB0が示されている。デブロックフィルタ24は、マクロブロックMB0の水平境界H0,0と直交する8つのラインについてのフィルタ強度を、水平境界H0,0と直交する3番目のラインC3及び4番目のラインC4の少なくとも1つに属する画素を参照画素として用いて選択する(SH0,0)。ラインC3及びC4は、垂直境界V0,0についてのフィルタリング処理によっても、垂直境界V0,1についてのフィルタリング処理によっても更新されないラインである。同様に、デブロックフィルタ24は、水平境界H0,1と直交する8つのラインについてのフィルタ強度を、水平境界H0,2と直交するラインのうち3番目のラインC3及び4番目のラインC4の少なくとも1つに属する画素を参照画素として用いて選択する(SH0,1)。このような構成により、垂直境界についてのフィルタリング処理と水平境界についてのフィルタ強度選択処理との間の依存関係は解消される。
このように処理間の依存関係が解消される結果として、ある境界についてのフィルタ強度選択処理を、他の境界についてのフィルタリング処理の終了を待つことなく行うことが可能となる。従って、垂直境界及び水平境界の双方についてのフィルタ強度判定処理を並列化することができる。また、マクロブロック間で処理を並列化することも可能となる。
本実施例において、デブロックフィルタ24は、さらに、フィルタ強度判定処理と同様のラインに属する参照画素の画素値に基づいて、フィルタリング要否判定処理を行う。これは、各ラインにデブロックフィルタを適用するか否かの判定が、デブロックフィルタへの入力画素値を用いて行われることを意味する。
図14を参照すると、マクロブロックMB0の垂直境界V0,0についてのフィルタリング要否判定処理JV0,0が垂直境界V0,0と直交するラインR3及びR4に属する画素を参照画素として用いて行われることが示されている。同様に、垂直境界V0,2についてのフィルタリング要否判定処理JV0,2は、垂直境界V0,2と直交するラインR3及びR4に属する画素を参照画素として用いて行われる。このような構成により、水平境界についてのフィルタリング処理と垂直境界についてのフィルタリング要否判定処理との間の依存関係は解消される。
図15を参照すると、マクロブロックMB0の水平境界H0,0についてのフィルタリング要否判定処理JH0,0は、水平境界H0,0と直交するラインC3及びC4に属する画素を参照画素として用いて行われる。同様に、水平境界H0,1についてのフィルタリング要否判定処理JH0,1は、水平境界H0,1と直交するラインC3及びC4に属する画素を参照画素として用いて行われる。このような構成により、垂直境界についてのフィルタリング処理と水平境界についてのフィルタリング要否判定処理との間の依存関係は解消される。
このように処理間の依存関係が解消される結果として、ある境界についてのフィルタリング要否判定処理を、他の境界についてのフィルタリング処理の終了を待つことなく行うことが可能となる。垂直境界及び水平境界の双方についてのフィルタリング要否判定処理を並列化することもできる。
(2)デブロックフィルタの詳細な構成
図16は、本実施例に係るデブロックフィルタ24の詳細な構成の一例を示すブロック図である。図16を参照すると、デブロックフィルタ24は、判定ブロック110、強度選択ブロック130、フィルタリングブロック150、及び制御部160を有する。
図16は、本実施例に係るデブロックフィルタ24の詳細な構成の一例を示すブロック図である。図16を参照すると、デブロックフィルタ24は、判定ブロック110、強度選択ブロック130、フィルタリングブロック150、及び制御部160を有する。
(2−1)判定ブロック
判定ブロック110は、複数の境界判定部112−1〜112−nを含む。各境界判定部112には、デブロックフィルタ24への入力画像、及びフィルタリングの要否の判定のために使用される判定情報が供給される。
判定ブロック110は、複数の境界判定部112−1〜112−nを含む。各境界判定部112には、デブロックフィルタ24への入力画像、及びフィルタリングの要否の判定のために使用される判定情報が供給される。
複数の境界判定部112−1〜112−nは、以下に説明するフィルタリング要否判定処理を、複数の境界を対象として並列的に実行する。例えば、境界判定部112−1は第1の垂直境界、境界判定部112−2は第1の水平境界、境界判定部112−3は第2の垂直境界、境界判定部112−4は第2の水平境界について、並列的にフィルタリング要否判定処理を実行し得る。
各境界判定部112は、各ブロック境界にデブロックフィルタを適用すべきか否かを、当該境界と直交する他の境界についてのフィルタリング処理により更新されないライン(以下、基本ラインという)に属する参照画素の画素値を用いて判定する。ここで参照される基本ラインは各境界の中央部分のラインであり、参照される画素値はデブロックフィルタ24への入力画素値である。そして、各境界判定部112は、各境界についての判定結果を示す情報(例えば、“1”がデブロックフィルタを適用すべきとの判定結果を示す二値情報)を、強度選択ブロック130及びフィルタリングブロック150へ出力する。
図17は、各境界判定部112のさらに詳細な構成の一例を示すブロック図である。図17を参照すると、各境界判定部112は、タップ構築部121、演算部122、閾値比較部123、歪み評価部124及びフィルタリング判定部125を含む。
タップ構築部121は、入力画像内の注目する境界を挟んで隣接する2つのブロックの画素値から基本ラインの参照画素の画素値を取得し、上述した輝度成分の判定条件Bの判定のためのタップ(参照画素値のセット)を構築する。演算部122は、タップ構築部121により構築されたタップを判定条件Bの判定式の左辺に代入し、エッジ判定閾値βと比較される判定用パラメータを計算する。閾値比較部123は、演算部122により計算された値をエッジ判定閾値βと比較し、比較結果をフィルタリング判定部125へ出力する。
演算部122による演算及び閾値比較部123による閾値との比較は、例えば、次の式により表現されてもよい。
−条件B:
|p23−2p13+p03|+|q23−2q13+q03|+|p24−2p14+p04|+|q24−2q14+q04|<β
−条件B:
|p23−2p13+p03|+|q23−2q13+q03|+|p24−2p14+p04|+|q24−2q14+q04|<β
その代わりに、演算部122による演算及び閾値比較部123による閾値との比較は、次の式により表現されてもよい。
−条件B´:
|p23−2p13+p03|+|q23−2q13+q03|<(β>>1);かつ
|p24−2p14+p04|+|q24−2q14+q04|<(β>>1)
−条件B´:
|p23−2p13+p03|+|q23−2q13+q03|<(β>>1);かつ
|p24−2p14+p04|+|q24−2q14+q04|<(β>>1)
条件B´は、条件Bと比較して、(参照画素値が変わらなければ)デブロックフィルタを適用すべきと判定されにくい条件である。発明者らは、参照ラインを境界の中央部分へ寄せると、多くの場合上記判定用パラメータの値(条件Bの式の左辺)が小さくなり、デブロックフィルタを適用すべきという判定がされ易くなるという傾向があることを、経験的に把握している。そこで、条件Bの代わりに条件B´を用いることにより、参照ラインの変更に伴う判定の精度の低下を防止することができる。なお、他の手法として、条件Bの右辺の閾値βの値をより小さく設定することにより、参照ラインの変更に伴う判定の精度の低下が防止されてもよい。
歪み評価部124は、判定情報として供給されるモード情報(MBモード)、変換係数情報及び動きベクトル情報を用いて、上述した輝度成分の判定条件Aを評価する。そして、歪み評価部124は、評価結果をフィルタリング判定部125へ出力する。なお、色差成分については、歪み評価部124によるモード情報に基づく判定条件A1についての判定のみが行われ得る。
フィルタリング判定部125は、閾値比較部123から入力される判定条件B又はB´についての比較結果と、歪み評価部124から入力される判定条件Aについての評価結果とに基づいて、注目するブロック境界にデブロックフィルタを適用すべきか否かを判定する。そして、フィルタリング判定部125は、判定結果を示す情報を出力する。
(2−2)強度選択ブロック
図16に戻り、デブロックフィルタ24の構成の説明を継続する。強度選択ブロック130は、複数の強度選択部132−1〜132−nを含む。各強度選択部132には、入力画像及び判定ブロック110からの各境界についての判定結果が供給される。
図16に戻り、デブロックフィルタ24の構成の説明を継続する。強度選択ブロック130は、複数の強度選択部132−1〜132−nを含む。各強度選択部132には、入力画像及び判定ブロック110からの各境界についての判定結果が供給される。
複数の強度選択部132−1〜132−nは、以下に説明するフィルタ強度選択処理を、複数の境界を対象として並列的に実行する。例えば、強度選択部132−1は第1の垂直境界、強度選択部132−2は第1の水平境界、強度選択部132−3は第2の垂直境界、強度選択部132−4は第2の水平境界について、並列的にフィルタ強度選択処理を実行し得る。
各強度選択部132は、各ブロック境界に適用されるデブロックフィルタのフィルタ強度を、当該境界と直交する他の境界についてのフィルタリング処理により更新されない基本ラインに属する参照画素の画素値を用いて選択する。ここで参照される基本ラインは各境界の中央部分のラインであり、参照される画素値はデブロックフィルタ24への入力画素値である。そして、各強度選択部132は、各境界についての選択結果を示す情報(例えば、“1”が強フィルタの選択を示す二値情報)を、フィルタリングブロック150へ出力する。
なお、本実施例では、各強度選択部132は、対応する境界判定部112から入力される判定結果がデブロックフィルタを適用すべきことを示している場合にのみ、対応する境界についてフィルタ強度選択処理を実行し得る。この場合には、不要なフィルタ強度選択処理の実行を回避し、処理コストを抑制することができる。一方、各強度選択部132は、各境界判定部112による判定と並列的にフィルタ強度選択処理を実行してもよい。この場合には、全体としての処理時間を短縮することができる。
図18は、各強度選択部132のさらに詳細な構成の一例を示すブロック図である。図18を参照すると、各強度選択部132は、タップ構築部141、パラメータ計算部142、選択部143及びバッファ144を含む。
タップ構築部141は、各境界と直交する基本ラインを制御部160からのライン制御信号に従って認識し、基本ラインの参照画素の画素値から、上述した強度選択のための条件C1〜C3の式を評価するためのタップを構築する。以下の説明において、基本ラインとは、各境界の中央部分で当該境界と直交する、3番目及び4番目のラインである。
パラメータ計算部142は、タップ構築部141により構築されたタップを条件C1〜C3の式の左辺に代入し、ブロック歪みの強さに依存する次の3種類のパラメータd1〜d3を計算する。なお、パラメータd2及びd3は、基本ラインごとに計算される。これらパラメータを、本明細書では強度選択用パラメータという。
d1=|p23−2p13+p03|+|q23−2q13+q03|+|p24−2p14+p04|+|q24−2q14+q04|
d2=|p3j−p0j|+|q0j−q3j| (j=3,4)
d3=|p0j−q0j| (j=3,4)
d1=|p23−2p13+p03|+|q23−2q13+q03|+|p24−2p14+p04|+|q24−2q14+q04|
d2=|p3j−p0j|+|q0j−q3j| (j=3,4)
d3=|p0j−q0j| (j=3,4)
選択部143は、基本ラインについては、パラメータ計算部142により計算された強度選択用パラメータを条件C1〜C3に従って評価することにより、各基本ラインに適用されるデブロックフィルタのフィルタ強度を選択する。
−以下の条件C1〜C3が全て満たされる場合には強フィルタ、いずれか1つでも満たされない場合には弱フィルタが選択される:
(C1)d1<(β>>2)
(C2)d2<(β>>3)
(C3)d3<((5tC+1)>>1)
そして、選択部143は、各基本ラインについての選択結果を示す情報をフィルタリングブロック150へ出力する。また、選択部143は、各基本ラインについての選択結果を示す情報(又は上記強度選択用パラメータd1〜d3の値)をバッファ144へ出力して記憶させる。
−以下の条件C1〜C3が全て満たされる場合には強フィルタ、いずれか1つでも満たされない場合には弱フィルタが選択される:
(C1)d1<(β>>2)
(C2)d2<(β>>3)
(C3)d3<((5tC+1)>>1)
そして、選択部143は、各基本ラインについての選択結果を示す情報をフィルタリングブロック150へ出力する。また、選択部143は、各基本ラインについての選択結果を示す情報(又は上記強度選択用パラメータd1〜d3の値)をバッファ144へ出力して記憶させる。
選択部143は、基本ライン以外の各ラインについては、基本ラインの少なくとも1つについて計算された強度選択用パラメータを評価することにより、フィルタ強度を選択する。本実施例のように、基本ラインが2つのラインである場合には、基本ライン以外の各ラインについての評価のパターンは、例えば次の3つのいずれかであってよい。
−パターンP1: 2つの基本ラインについて計算される強度選択用パラメータの双方がブロック歪みが強いことを示している場合(即ち、2つの基本ラインについて共に強フィルタが選択される場合)に、強フィルタを選択。
−パターンP2: 選択対象のラインに近い基本ライン(以下、近傍ラインという)について計算される強度選択用パラメータがブロック歪みが強いことを示している場合に、強フィルタを選択。
−パターンP3: 2つの基本ラインについて計算される強度選択用パラメータのいずれか一方又は双方がブロック歪みが強いことを示している場合に、強フィルタを選択。
−パターンP1: 2つの基本ラインについて計算される強度選択用パラメータの双方がブロック歪みが強いことを示している場合(即ち、2つの基本ラインについて共に強フィルタが選択される場合)に、強フィルタを選択。
−パターンP2: 選択対象のラインに近い基本ライン(以下、近傍ラインという)について計算される強度選択用パラメータがブロック歪みが強いことを示している場合に、強フィルタを選択。
−パターンP3: 2つの基本ラインについて計算される強度選択用パラメータのいずれか一方又は双方がブロック歪みが強いことを示している場合に、強フィルタを選択。
選択部143は、基本ライン以外の全てのラインについて同じパターンを使用してもよく、又はライン位置に応じて評価パターンを変更してもよい。例えば、第1のシナリオにおいて、選択部143は、次の表1のように、基本ライン以外の全てのラインについて評価パターンP2を用いる。評価パターンP2は、選択対象のラインと近傍ラインとの画像の空間的相関を利用した評価パターンであり、フィルタ強度の選択結果の簡易な再利用によって処理コストを抑制しながら、ある程度合理的な強度選択を実現できる。
また、第2のシナリオにおいて、選択部143は、次の表2のように、基本ライン以外の全てのラインについて評価パターンP1を用いる。評価パターンP1は、上述した3つの評価パターンのうち最も強フィルタが選択されにくい評価パターンである。評価パターンP1は、強フィルタが過剰に適用されることによる画質の劣化等の悪影響を積極的に防止したいような状況において採用され得る。
また、第3のシナリオにおいて、選択部143は、次の表3のように、基本ライン以外の全てのラインについて評価パターンP3を用いる。評価パターンP3は、上述した3つの評価パターンのうち最も強フィルタが選択され易い評価パターンである。評価パターンP3は、強フィルタを積極的に選択してブロック歪みを大きく減少させたいような状況において採用され得る。
また、第4のシナリオにおいて、選択部143は、次の表4のように、基本ラインに隣接する2つのライン(#2及び#5)については評価パターンP2を用い、その他のライン(#0、#1、#6及び#7)については評価パターンP1を用いる。基本ライン以外のラインの中でも、基本ラインからの距離が遠いほど基本ラインとの画像の空間的相関は低下する。そこで、第4のシナリオのように、ライン位置に応じて適応的に評価パターンを変更することにより、ラインごとにより適切なフィルタ強度を選択することができる。
また、選択部143は、各境界のBS(Boundary Strength)値に応じて、当該境界と直交する基本ライン以外のラインについての評価パターンを変更してもよい。BS値は、例えばH.264/AVCにおいては、各境界に接する2つのブロックのイントラ/インターの種別、直交変換係数の有無、参照ピクチャの差異及び動きベクトルの差異などに応じて与えられる5段階の数値である。BS値が高いほど、ブロック歪みは強いと判断される。そこで、第5のシナリオにおいて、選択部143は、次の表5のように、ライン#0、#1、#6及び#7について、評価パターンをBS値に応じて切り替える。例えば、BS値は「低」と「高」とに区分され、BS値が「低」であれば評価パターンP1が、BS値が「高」であれば評価パターンP2が用いられる。このように、BS値が低い場合にのみ適応的に強フィルタの過剰な適用を回避することで、フィルタリング後の画質を効果的に改善することが可能となる。
なお、ここで説明したシナリオは例に過ぎない。即ち、ライン位置及びBS値以外の基準に従って評価パターンが切り替えられてもよく、又は上述した3つの評価パターン以外の評価パターンが用いられてもよい。また、複数の評価パターンの間で選択部143により使用される評価パターンを切り替えるためのフラグが、シーケンスパラメータセット、ピクチャパラメータセット又はスライスヘッダ内で符号化されてもよい。
そして、選択部143は、基本ライン以外の各ラインについても、フィルタ強度の選択結果を示す情報をフィルタリングブロック150へ出力する。
(2−3)フィルタリングブロック
図16に戻り、デブロックフィルタ24の構成の説明を継続する。フィルタリングブロック150は、複数のフィルタリング部152−1〜152−nを含む。各フィルタリング部152には、入力画像、判定ブロック110からの各境界についての判定結果、及び強度選択ブロック130からの各境界についてのフィルタ強度の選択結果が供給される。
図16に戻り、デブロックフィルタ24の構成の説明を継続する。フィルタリングブロック150は、複数のフィルタリング部152−1〜152−nを含む。各フィルタリング部152には、入力画像、判定ブロック110からの各境界についての判定結果、及び強度選択ブロック130からの各境界についてのフィルタ強度の選択結果が供給される。
各フィルタリング部152は、対応する境界判定部112による判定結果がフィルタを適用すべきことを示している場合に、対応する強度選択部132により選択されたフィルタ強度を有するデブロックフィルタを、対応する境界と直交する各ラインに適用する。そして、各フィルタリング部152は、フィルタを適用した画素についてはフィルタリング後の画素値、その他の画素については入力画像の画素値を出力する。各フィルタリング部152からの出力は、デブロックフィルタ24からの出力画像を構成し得る。
(2−4)制御部
制御部160は、図16に示したデブロックフィルタ24の各部における処理を制御する。例えば、制御部160は、強度選択ブロック130にライン制御信号を出力し、ラインごとに基本ラインにいての処理と基本ライン以外のラインについての処理とを分岐させる。
制御部160は、図16に示したデブロックフィルタ24の各部における処理を制御する。例えば、制御部160は、強度選択ブロック130にライン制御信号を出力し、ラインごとに基本ラインにいての処理と基本ライン以外のラインについての処理とを分岐させる。
また、例えば、制御部160は、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理の並列度を制御する。高い並列度が望まれる場合には、複数のマクロブロック(あるいは複数のLCU(Largest Coding Unit))にわたって各処理が並列化されてもよい。また、マクロブロックごとの逐次処理が行われる場合には、個々のマクロブロック内の複数の垂直境界及び複数の水平境界を対象として、処理が並列化されてもよい。並列度の制御は、入力画像のサイズに基づいて行われてもよい。例えば、制御部160は、入力画像のサイズが相対的に大きい場合に、各処理の並列度を高めてもよい。それにより、画像のサイズに応じて増加する処理量を原因とする遅延又はデータレートの低下を適応的に防止することができる。また、例えば、制御部160は、シーケンスパラメータセット、ピクチャパラメータセット又はスライスヘッダ内に含まれるパラメータに基づいて、各処理の並列度を制御してもよい。それにより、装置を開発するユーザごとの要件に応じて柔軟に並列度を設定することが可能となる。例えば、プロセッサのコア数又はソフトウェアのスレッド数などの実装環境の制約に応じて並列度が設定されてもよい。
[3−2.処理の流れ]
次に、図19〜図22を用いて、本実施例に係るデブロックフィルタ24による処理の流れを説明する。
次に、図19〜図22を用いて、本実施例に係るデブロックフィルタ24による処理の流れを説明する。
(1)第1の例
図19は、本実施例に係るデブロックフィルタ24による処理の流れの第1の例を示すフローチャートである。第1の例では、マクロブロック(MB)ごとの逐次処理が行われる。
図19は、本実施例に係るデブロックフィルタ24による処理の流れの第1の例を示すフローチャートである。第1の例では、マクロブロック(MB)ごとの逐次処理が行われる。
図19を参照すると、まず、境界判定部112−1〜112−nは、入力画像内の1つの注目MBに含まれる複数の垂直境界及び複数の水平境界について並列的に、フィルタリングの要否を判定する(ステップS110)。
次に、強度選択部132−1〜132−nは、ステップS110においてフィルタリングが必要と判定された境界について並列的に、各境界と直交するラインの各々のフィルタ強度を選択する(ステップS120)。
次に、垂直境界を対象とする各フィルタリング部152は、ステップS110においてフィルタリングが必要と判定された垂直境界と直交するラインの各々に、対応する強度選択部132により選択されたフィルタ強度を有するデブロックフィルタを適用する(ステップS130)。
次に、水平境界を対象とする各フィルタリング部152は、前の注目MBについてフィルタリングが必要と判定された水平境界と直交するラインの各々に、対応する強度選択部132により選択されたフィルタ強度を有するデブロックフィルタを適用する(ステップS140)。
その後、入力画像内に未処理のMBが残っている場合には、次のMBを新たな注目MBとして、ステップS110〜S140の処理が繰り返される(ステップS150)。
一方、入力画像内に未処理のMBが残っていない場合には、水平境界を対象とする各フィルタリング部152により、最後の注目MBについてフィルタリングが必要と判定された水平境界と直交するラインの各々に、対応する強度選択部132により選択されたフィルタ強度を有するデブロックフィルタが適用される(ステップS160)。
図20は、図19のステップS120に相当する、フィルタ強度選択処理の流れの一例を示すフローチャートである。なお、図20では、1つの境界についてのフィルタ強度選択処理の流れの一例が示されている。
図20を参照すると、まず、タップ構築部141により構築される基本ラインの参照画素のタップに基づいて、パラメータ計算部142は、基本ラインについての強度選択用パラメータを計算する(ステップS121)。
次に、選択部143は、ステップS121において計算された強度選択用パラメータを閾値と比較して評価することにより、各基本ラインについてのフィルタ強度を選択する(ステップS122)。そして、選択部143は、各基本ラインについてのフィルタ強度の選択結果をバッファ144へ出力して記憶させる(ステップS123)。
その後のステップS125〜S129の処理は、処理対象の境界と直交する各ライン(以下、注目ラインという)について繰り返される(ステップS124)。
ステップS125において、選択部143は、注目ラインが基本ラインであるかを判定する(ステップS125)。ここで、注目ラインが基本ラインでなければ、選択部143は、注目ラインについての評価パターン(例えば、上述した評価パターンP1〜P3のいずれか)を決定する(ステップS126)。そして、選択部143は、決定した評価パターンに従い、基本ラインについてのフィルタ強度の選択結果を用いて、注目ラインについてのフィルタ強度を選択する(ステップS127)。一方、注目ラインが基本ラインであれば、選択部143は、バッファ144によりバッファリングされている当該注目ラインについてのフィルタ強度の選択結果を取得する(ステップS128)。そして、選択部143は、注目ラインについてのフィルタ強度の選択結果をフィルタリングブロック150へ出力する(ステップS129)。
(2)第2の例
図21は、本実施例に係るデブロックフィルタ24による処理の流れの第2の例を示すフローチャートである。第2の例では、入力画像内の全ての境界にわたる並列処理が実現される。
図21は、本実施例に係るデブロックフィルタ24による処理の流れの第2の例を示すフローチャートである。第2の例では、入力画像内の全ての境界にわたる並列処理が実現される。
図21を参照すると、まず、境界判定部112−1〜112−nは、入力画像内の全ての垂直境界及び全ての水平境界について並列的に、フィルタリングの要否を判定する(ステップS210)。
次に、強度選択部132−1〜132−nは、ステップS210においてフィルタリングが必要と判定された境界について並列的に、各境界と直交するラインの各々のフィルタ強度を選択する(ステップS220)。
次に、フィルタリング部152−1〜152−nは、ステップS210においてフィルタリングが必要と判定された垂直境界と直交するラインに、強度選択部132−1〜132−nにより選択されたフィルタ強度を有するデブロックフィルタを適用する(ステップS230)。
次に、フィルタリング部152−1〜152−nは、ステップS210においてフィルタリングが必要と判定された水平境界と直交するラインに、強度選択部132−1〜132−nにより選択されたフィルタ強度を有するデブロックフィルタを適用する(ステップS240)。
(3)第3の例
図22は、本実施例に係るデブロックフィルタ24による処理の流れの第3の例を示すフローチャートである。第3の例では、第1の例と同様、マクロブロックごとの逐次処理が行われる。
図22は、本実施例に係るデブロックフィルタ24による処理の流れの第3の例を示すフローチャートである。第3の例では、第1の例と同様、マクロブロックごとの逐次処理が行われる。
図22を参照すると、まず、境界判定部112−1〜112−nは、入力画像内の1つの注目MBに含まれる複数の垂直境界及び複数の水平境界について並列的に、フィルタリングの要否を判定する(ステップS310)。
また、ステップS310と並列的に、強度選択部132−1〜132−nは、同じ注目MBに含まれる複数の垂直境界及び複数の水平境界について、各境界と直交するラインの各々のフィルタ強度を選択する(ステップS320)。
その後のステップS130〜S160の処理は、図19に関連して説明したデブロックフィルタ24による処理の流れの第1の例と同様である。
なお、ここではマクロブロック(あるいはLCU)単位及び画像単位でそれぞれ処理が並列化される典型的な例について説明した。しかしながら、かかる例に限定されず、例えば、特定の数(2つ若しくは4つなど)のマクロブロック、又は水平方向若しくは垂直方向に並ぶ一群のブロックなどの様々な単位で、デブロックフィルタ24による処理は並列化されてよい。
<4.第2の実施例>
第2の実施例では、フィルタ強度の選択の的確さを向上させるために、以下に説明するような強度選択用パラメータの推定の仕組みが導入される。第1の実施例において導入された、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理の間の新たな依存関係は、本実施例においても活用される。
第2の実施例では、フィルタ強度の選択の的確さを向上させるために、以下に説明するような強度選択用パラメータの推定の仕組みが導入される。第1の実施例において導入された、フィルタリング要否判定処理、フィルタ強度選択処理及びフィルタリング処理の間の新たな依存関係は、本実施例においても活用される。
[4−1.デブロックフィルタの構成例]
第2の実施例に係るデブロックフィルタ24の全体的な構成は、図16に示した第1の実施例に係るデブロックフィルタ24の構成と同様であってよい。図23は、第2の実施例に係る各強度選択部132の詳細な構成の一例を示すブロック図である。図23を参照すると、各強度選択部132は、タップ構築部141、パラメータ計算部142、バッファ243、パラメータ推定部244及び選択部245を含む。
第2の実施例に係るデブロックフィルタ24の全体的な構成は、図16に示した第1の実施例に係るデブロックフィルタ24の構成と同様であってよい。図23は、第2の実施例に係る各強度選択部132の詳細な構成の一例を示すブロック図である。図23を参照すると、各強度選択部132は、タップ構築部141、パラメータ計算部142、バッファ243、パラメータ推定部244及び選択部245を含む。
本実施例において、選択部245は、各基本ラインについてパラメータ計算部142から入力される強度選択用パラメータd1、d2及びd3の計算結果を、バッファ243に記憶させる。ここでの基本ラインは、第1の実施例と同様、各ブロックのブロックサイズが8×8画素である場合には、各境界の中央部分の3番目及び4番目の2つのラインであってよい。
パラメータ推定部244は、基本ライン以外の各ライン(本実施例において、推定ラインという)についての強度選択用パラメータの値を、バッファ243により記憶されている基本ラインについての強度選択用パラメータの値を用いて推定する。図24は、強度選択用パラメータの推定について説明するための説明図である。パラメータ推定部244による各推定ラインについての強度選択用パラメータの推定は、例えば、基本ラインについて計算されたパラメータ値を次のように外挿することにより行われてよい。
dX0=4dX3−3dX4
dX1=3dX3−2dX4
dX2=2dX3−1dX4
dX5=2dX4−1dX3
dX6=3dX4−2dX3
dX7=4dX4−3dX3
なお、dXiはd1i、d2i及びd3iのいずれかであり、iはラインのインデックスである。
dX0=4dX3−3dX4
dX1=3dX3−2dX4
dX2=2dX3−1dX4
dX5=2dX4−1dX3
dX6=3dX4−2dX3
dX7=4dX4−3dX3
なお、dXiはd1i、d2i及びd3iのいずれかであり、iはラインのインデックスである。
選択部245は、基本ラインについては、パラメータ計算部142により計算された強度選択用パラメータの値を上述した条件C1〜C3に従って評価することにより、フィルタ強度を選択する。また、選択部245は、推定ラインについては、パラメータ推定部244により推定された強度選択用パラメータの値を上述した条件C1〜C3に従って評価することにより、フィルタ強度を選択する。そして、選択部245は、各ラインについてのフィルタ強度の選択結果を示す情報を、フィルタリングブロック150へ出力する。
[4−2.処理の流れ]
本実施例に係るデブロックフィルタ24による処理の全体的な流れは、図19、図21又は図22に例示したような流れであってよい。図25は、本実施例に係るフィルタ強度選択処理の流れの一例を示すフローチャートである。なお、図25では、1つの境界についてのフィルタ強度選択処理の流れの一例が示されている。
本実施例に係るデブロックフィルタ24による処理の全体的な流れは、図19、図21又は図22に例示したような流れであってよい。図25は、本実施例に係るフィルタ強度選択処理の流れの一例を示すフローチャートである。なお、図25では、1つの境界についてのフィルタ強度選択処理の流れの一例が示されている。
図25を参照すると、まず、タップ構築部141により構築される基本ラインの参照画素のタップに基づいて、パラメータ計算部142は、基本ラインについての強度選択用パラメータを計算する(ステップS221)。
次に、選択部245は、ステップS221において計算された基本ラインについての強度選択用パラメータの値をバッファ243へ出力して記憶させる(ステップS222)。
その後のステップS224〜S228の処理は、処理対象の境界と直交する各ライン(以下、注目ラインという)について繰り返される(ステップS223)。
ステップS224において、選択部245は、注目ラインが基本ラインであるかを判定する(ステップS224)。ここで、注目ラインが基本ラインでなければ、パラメータ推定部244により、注目ラインについての強度選択用パラメータの値が基本ラインについてのパラメータ値から推定される(ステップS225)。一方、注目ラインが基本ラインであれば、選択部245は、バッファ243によりバッファリングされている当該注目ラインについての強度選択用パラメータの値を取得する(ステップS226)。そして、選択部245は、パラメータ推定部244により推定され又はバッファ243から取得された強度選択用パラメータを用いて、注目ラインについてのフィルタ強度を選択する(ステップS227)。そして、選択部245は、注目ラインについてのフィルタ強度の選択結果をフィルタリングブロック150へ出力する(ステップS228)。
このような第2の実施例によれば、基本ラインについての強度選択用パラメータの値から推定ラインについての強度選択用パラメータの値が推定され、推定された値に基づいてフィルタ強度が選択されるため、フィルタ強度の選択の的確さを向上させることができる。
<5.応用例>
上述した実施形態に係る画像符号化装置10及び画像復号装置60は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
上述した実施形態に係る画像符号化装置10及び画像復号装置60は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
[5−1.第1の応用例]
図26は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
図26は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOLEDなど)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
制御部910は、CPU(Central Processing Unit)などのプロセッサ、並びにRAM(Random Access Memory)及びROM(Read Only Memory)などのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置60の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
[5−2.第2の応用例]
図27は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
図27は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置10及び画像復号装置60の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
[5−3.第3の応用例]
図28は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
図28は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送手段としての役割を有する。
エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD−Video、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等)又はBlu−ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置10の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置60の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
[5−4.第4の応用例]
図29は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
図29は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD又はCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送手段としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置10及び画像復号装置60の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、デブロックフィルタの処理の並列度を高めて処理を高速化することができる。
<6.まとめ>
ここまで、図1〜図29を用いて、一実施形態に係る画像符号化装置10及び画像復号装置60のデブロックフィルタの2つの実施例について詳しく説明した。これら2つの実施例によれば、ブロックごとに復号される画像内の各境界に適用されるデブロックフィルタのフィルタ強度がデブロックフィルタへの入力画素値を用いて選択され、選択されたフィルタ強度で上記境界と直交するラインがフィルタリングされる。従って、ある境界についてのフィルタ強度の選択を、他の境界についてのフィルタリング処理の結果に依存することなく行うことが可能となる。よって、デブロックフィルタの適用に際しての処理のさらなる並列化が実現される。その結果、デブロックフィルタの多大な処理量を原因とする遅延又はデータレートの低下を緩和し、処理を高速化することができる。
ここまで、図1〜図29を用いて、一実施形態に係る画像符号化装置10及び画像復号装置60のデブロックフィルタの2つの実施例について詳しく説明した。これら2つの実施例によれば、ブロックごとに復号される画像内の各境界に適用されるデブロックフィルタのフィルタ強度がデブロックフィルタへの入力画素値を用いて選択され、選択されたフィルタ強度で上記境界と直交するラインがフィルタリングされる。従って、ある境界についてのフィルタ強度の選択を、他の境界についてのフィルタリング処理の結果に依存することなく行うことが可能となる。よって、デブロックフィルタの適用に際しての処理のさらなる並列化が実現される。その結果、デブロックフィルタの多大な処理量を原因とする遅延又はデータレートの低下を緩和し、処理を高速化することができる。
また、第1の実施例によれば、各境界と直交するラインの各々のフィルタ強度は、当該境界の中央部分の基本ラインについて計算される強度選択用パラメータを評価することにより選択される。即ち、フィルタ強度の選択のために全てのラインについて強度選択用パラメータを計算する必要がない。よって、少ない処理コストでのフィルタ強度の選択が可能であり、処理の実装も容易である。
また、第2の実施例によれば、各境界の中央部分の基本ラインについて計算される強度選択用パラメータを用いて、基本ライン以外のラインについての強度選択用パラメータの値が推定される。従って、基本ライン以外のラインについてのフィルタ強度の選択の的確さを向上させることができる。
なお、本明細書では、主に垂直境界についてのフィルタリング処理が水平境界についてのフィルタリング処理よりも先に行われる例を説明したが、水平境界についてのフィルタリング処理が先に行われる場合にも本開示に係る技術による上述した効果は同等に享受され得る。また、デブロックフィルタの処理単位のサイズ又はマクロブロックのサイズは、本明細書で説明した例に限定されず、他のサイズであってもよい。
また、デブロックフィルタの処理の並列化のために使用される情報を符号化側から復号側に伝送する手法は、これら情報を符号化ストリームのヘッダに多重化する手法に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
符号化ストリームを復号して画像を生成する復号部と、
前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
を備える画像処理装置。
(2)
前記選択部により使用される前記入力画素値は、前記ブロック境界と直交する他の境界についてのフィルタリングによって更新されないラインに属する画素の画素値である、前記(1)に記載の画像処理装置。
(3)
前記選択部は、前記ブロック境界の中央部分のラインを、前記フィルタ強度の選択のために使用する、前記(2)に記載の画像処理装置。
(4)
各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインの少なくとも1つについて計算される、ブロック歪みの強さに依存するパラメータを評価することにより、前記ブロック境界と直交する各ラインについての前記フィルタ強度を選択する、
前記(3)に記載の画像処理装置。
(5)
前記選択部は、前記2つのラインについて計算される前記パラメータの双方がブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記(4)に記載の画像処理装置。
(6)
前記選択部は、前記2つのラインのうち各ラインに近いラインについて計算される前記パラメータがブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記(4)に記載の画像処理装置。
(7)
前記選択部は、前記パラメータの評価のパターンをライン位置に応じて変更する、前記(4)に記載の画像処理装置。
(8)
前記選択部は、前記パラメータの評価のパターンを前記ブロック境界のBS(Boundary Strength)値に応じて変更する、前記(4)又は前記(7)に記載の画像処理装置。
(9)
前記選択部は、
前記中央部分のラインについてブロック歪みの強さに依存するパラメータを計算し、
計算されたパラメータを用いて前記ブロック境界の非中央部分の各ラインについての前記パラメータを推定し、
推定した前記パラメータを評価することにより、前記非中央部分の各ラインについて前記フィルタ強度を選択する、
前記(3)に記載の画像処理装置。
(10)
各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインについて計算される前記パラメータの値を外挿することにより、前記非中央部分の各ラインについての前記パラメータを推定する、
前記(9)に記載の画像処理装置。
(11)
デブロックフィルタへの前記入力画素値を用いて、前記ブロック境界にデブロックフィルタを適用するかを判定する判定部、をさらに備え、
前記フィルタリング部は、前記判定部によりデブロックフィルタを適用すると判定された場合にのみ、前記ブロック境界にデブロックフィルタを適用する、
前記(1)〜(10)のいずれか1項に記載の画像処理装置。
(12)
前記判定部は、前記ブロック境界の中央部分のラインに属する画素の画素値を用いて前記判定を行い、
前記判定部による前記判定の条件は、前記ブロック境界の非中央部分のラインに属する画素の画素値が使用される場合の条件と比較して、よりデブロックフィルタが適用されにくい条件である、
前記(11)に記載の画像処理装置。
(13)
前記選択部による第1の境界についての前記フィルタ強度の選択は、前記第1の境界と直交する第2の境界についての前記フィルタリング部によるフィルタリングを待つことなく行われる、前記(1)〜(12)のいずれか1項に記載の画像処理装置。
(14)
前記選択部による前記フィルタ強度の選択は、前記判定部による前記判定と並列的に行われる、前記(11)に記載の画像処理装置。
(15)
符号化ストリームを復号して画像を生成することと、
生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
を含む画像処理方法。
(16)
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、
を備える画像処理装置。
(17)
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、
を含む画像処理方法。
(1)
符号化ストリームを復号して画像を生成する復号部と、
前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
を備える画像処理装置。
(2)
前記選択部により使用される前記入力画素値は、前記ブロック境界と直交する他の境界についてのフィルタリングによって更新されないラインに属する画素の画素値である、前記(1)に記載の画像処理装置。
(3)
前記選択部は、前記ブロック境界の中央部分のラインを、前記フィルタ強度の選択のために使用する、前記(2)に記載の画像処理装置。
(4)
各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインの少なくとも1つについて計算される、ブロック歪みの強さに依存するパラメータを評価することにより、前記ブロック境界と直交する各ラインについての前記フィルタ強度を選択する、
前記(3)に記載の画像処理装置。
(5)
前記選択部は、前記2つのラインについて計算される前記パラメータの双方がブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記(4)に記載の画像処理装置。
(6)
前記選択部は、前記2つのラインのうち各ラインに近いラインについて計算される前記パラメータがブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、前記(4)に記載の画像処理装置。
(7)
前記選択部は、前記パラメータの評価のパターンをライン位置に応じて変更する、前記(4)に記載の画像処理装置。
(8)
前記選択部は、前記パラメータの評価のパターンを前記ブロック境界のBS(Boundary Strength)値に応じて変更する、前記(4)又は前記(7)に記載の画像処理装置。
(9)
前記選択部は、
前記中央部分のラインについてブロック歪みの強さに依存するパラメータを計算し、
計算されたパラメータを用いて前記ブロック境界の非中央部分の各ラインについての前記パラメータを推定し、
推定した前記パラメータを評価することにより、前記非中央部分の各ラインについて前記フィルタ強度を選択する、
前記(3)に記載の画像処理装置。
(10)
各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインについて計算される前記パラメータの値を外挿することにより、前記非中央部分の各ラインについての前記パラメータを推定する、
前記(9)に記載の画像処理装置。
(11)
デブロックフィルタへの前記入力画素値を用いて、前記ブロック境界にデブロックフィルタを適用するかを判定する判定部、をさらに備え、
前記フィルタリング部は、前記判定部によりデブロックフィルタを適用すると判定された場合にのみ、前記ブロック境界にデブロックフィルタを適用する、
前記(1)〜(10)のいずれか1項に記載の画像処理装置。
(12)
前記判定部は、前記ブロック境界の中央部分のラインに属する画素の画素値を用いて前記判定を行い、
前記判定部による前記判定の条件は、前記ブロック境界の非中央部分のラインに属する画素の画素値が使用される場合の条件と比較して、よりデブロックフィルタが適用されにくい条件である、
前記(11)に記載の画像処理装置。
(13)
前記選択部による第1の境界についての前記フィルタ強度の選択は、前記第1の境界と直交する第2の境界についての前記フィルタリング部によるフィルタリングを待つことなく行われる、前記(1)〜(12)のいずれか1項に記載の画像処理装置。
(14)
前記選択部による前記フィルタ強度の選択は、前記判定部による前記判定と並列的に行われる、前記(11)に記載の画像処理装置。
(15)
符号化ストリームを復号して画像を生成することと、
生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
を含む画像処理方法。
(16)
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、
を備える画像処理装置。
(17)
符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、
を含む画像処理方法。
10, 60 画像処理装置
112−1〜n 判定部
132−1〜n 選択部
152−1〜n フィルタリング部
160 制御部
112−1〜n 判定部
132−1〜n 選択部
152−1〜n フィルタリング部
160 制御部
Claims (17)
- 符号化ストリームを復号して画像を生成する復号部と、
前記復号部により生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
を備える画像処理装置。 - 前記選択部により使用される前記入力画素値は、前記ブロック境界と直交する他の境界についてのフィルタリングによって更新されないラインに属する画素の画素値である、請求項1に記載の画像処理装置。
- 前記選択部は、前記ブロック境界の中央部分のラインを、前記フィルタ強度の選択のために使用する、請求項2に記載の画像処理装置。
- 各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインの少なくとも1つについて計算される、ブロック歪みの強さに依存するパラメータを評価することにより、前記ブロック境界と直交する各ラインについての前記フィルタ強度を選択する、
請求項3に記載の画像処理装置。 - 前記選択部は、前記2つのラインについて計算される前記パラメータの双方がブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、請求項4に記載の画像処理装置。
- 前記選択部は、前記2つのラインのうち各ラインに近いラインについて計算される前記パラメータがブロック歪みが強いことを示している場合に、各ラインについて強フィルタを選択する、請求項4に記載の画像処理装置。
- 前記選択部は、前記パラメータの評価のパターンをライン位置に応じて変更する、請求項4に記載の画像処理装置。
- 前記選択部は、前記パラメータの評価のパターンを前記ブロック境界のBS(Boundary Strength)値に応じて変更する、請求項4に記載の画像処理装置。
- 前記選択部は、
前記中央部分のラインについてブロック歪みの強さに依存するパラメータを計算し、
計算されたパラメータを用いて前記ブロック境界の非中央部分の各ラインについての前記パラメータを推定し、
推定した前記パラメータを評価することにより、前記非中央部分の各ラインについて前記フィルタ強度を選択する、
請求項3に記載の画像処理装置。 - 各ブロックのブロックサイズは、8×8画素であり、
前記選択部は、前記中央部分の2つのラインについて計算される前記パラメータの値を外挿することにより、前記非中央部分の各ラインについての前記パラメータを推定する、
請求項9に記載の画像処理装置。 - デブロックフィルタへの前記入力画素値を用いて、前記ブロック境界にデブロックフィルタを適用するかを判定する判定部、をさらに備え、
前記フィルタリング部は、前記判定部によりデブロックフィルタを適用すると判定された場合にのみ、前記ブロック境界にデブロックフィルタを適用する、
請求項1に記載の画像処理装置。 - 前記判定部は、前記ブロック境界の中央部分のラインに属する画素の画素値を用いて前記判定を行い、
前記判定部による前記判定の条件は、前記ブロック境界の非中央部分のラインに属する画素の画素値が使用される場合の条件と比較して、よりデブロックフィルタが適用されにくい条件である、
請求項11に記載の画像処理装置。 - 前記選択部による第1の境界についての前記フィルタ強度の選択は、前記第1の境界と直交する第2の境界についての前記フィルタリング部によるフィルタリングを待つことなく行われる、請求項1に記載の画像処理装置。
- 前記選択部による前記フィルタ強度の選択は、前記判定部による前記判定と並列的に行われる、請求項11に記載の画像処理装置。
- 符号化ストリームを復号して画像を生成することと、
生成された前記画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
を含む画像処理方法。 - 符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択する選択部と、
前記選択部により選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用するフィルタリング部と、
前記フィルタリング部によりフィルタリングされた画像を用いて、前記符号化対象画像を符号化する符号化部と、
を備える画像処理装置。 - 符号化対象画像を符号化する際にローカルデコードされた画像内のブロック境界に適用されるデブロックフィルタのフィルタ強度を、デブロックフィルタへの入力画素値を用いて選択することと、
選択された前記フィルタ強度を有するデブロックフィルタを前記ブロック境界に適用することと、
前記フィルタ強度でフィルタリングされた画像を用いて、前記符号化対象画像を符号化することと、
を含む画像処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011142726A JP2013012815A (ja) | 2011-06-28 | 2011-06-28 | 画像処理装置及び画像処理方法 |
PCT/JP2012/059675 WO2013001886A1 (ja) | 2011-06-28 | 2012-04-09 | 画像処理装置及び画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011142726A JP2013012815A (ja) | 2011-06-28 | 2011-06-28 | 画像処理装置及び画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013012815A true JP2013012815A (ja) | 2013-01-17 |
Family
ID=47423794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011142726A Withdrawn JP2013012815A (ja) | 2011-06-28 | 2011-06-28 | 画像処理装置及び画像処理方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2013012815A (ja) |
WO (1) | WO2013001886A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9180188B2 (en) | 2011-08-04 | 2015-11-10 | Toray Industries, Inc. | Pharmaceutical composition for treatment and/or prophylaxis of cancer |
WO2020175145A1 (ja) * | 2019-02-27 | 2020-09-03 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0965336A (ja) * | 1995-08-24 | 1997-03-07 | Graphics Commun Lab:Kk | フィルタ装置 |
JP4183993B2 (ja) * | 2002-07-16 | 2008-11-19 | シャープ株式会社 | フィルタ装置 |
JP2007116580A (ja) * | 2005-10-24 | 2007-05-10 | Matsushita Electric Ind Co Ltd | 画像処理方法および画像処理装置 |
JP2011066844A (ja) * | 2009-09-18 | 2011-03-31 | Toshiba Corp | 並列復号装置及びプログラム並びに符号化データの並列復号方法 |
-
2011
- 2011-06-28 JP JP2011142726A patent/JP2013012815A/ja not_active Withdrawn
-
2012
- 2012-04-09 WO PCT/JP2012/059675 patent/WO2013001886A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2013001886A1 (ja) | 2013-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6471786B2 (ja) | 画像処理装置及び画像処理方法 | |
JP6471787B2 (ja) | 画像処理装置及び画像処理方法 | |
US10972722B2 (en) | Image processing device and image processing method | |
US9153040B2 (en) | Image processing device and image processing method | |
JP5884313B2 (ja) | 画像処理装置、画像処理方法、プログラム及び記録媒体 | |
WO2013073328A1 (ja) | 画像処理装置及び画像処理方法 | |
JP6217826B2 (ja) | 画像処理装置及び画像処理方法 | |
WO2013001886A1 (ja) | 画像処理装置及び画像処理方法 | |
WO2012124406A1 (ja) | 画像処理装置及び画像処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140902 |