JP2011223337A - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
JP2011223337A
JP2011223337A JP2010090717A JP2010090717A JP2011223337A JP 2011223337 A JP2011223337 A JP 2011223337A JP 2010090717 A JP2010090717 A JP 2010090717A JP 2010090717 A JP2010090717 A JP 2010090717A JP 2011223337 A JP2011223337 A JP 2011223337A
Authority
JP
Japan
Prior art keywords
image
unit
prediction mode
macroblock
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.)
Pending
Application number
JP2010090717A
Other languages
English (en)
Other versions
JP2011223337A5 (ja
Inventor
Kazufumi Sato
数史 佐藤
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2010090717A priority Critical patent/JP2011223337A/ja
Priority to US13/638,944 priority patent/US20130028321A1/en
Priority to PCT/JP2011/058275 priority patent/WO2011125866A1/ja
Priority to CN2011800230722A priority patent/CN102884791A/zh
Publication of JP2011223337A publication Critical patent/JP2011223337A/ja
Publication of JP2011223337A5 publication Critical patent/JP2011223337A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Abstract

【課題】画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができるようにする。
【解決手段】適応ループフィルタ111は、デブロックフィルタ21からの復号画像を、マクロブロック毎に、予測モードバッファ112からのイントラ予測モード情報に応じたクラスに分類する。適応ループフィルタ111は、分類されたクラス毎に、画面並べ替えバッファ12からの原画像とデブロックフィルタ21からの画像との残差を最小とするよう、フィルタ係数の算出を行う。適応ループフィルタ111は、分類されたクラス毎に、算出されたフィルタ係数を用いて、フィルタ処理を行い、フィルタ処理後の画像を、フレームメモリ22に出力する。本発明は、例えば、H.264/AVC方式をベースに符号化する画像符号化装置に適用することができる。
【選択図】図5

Description

本発明は画像処理装置および方法に関し、特に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善するようにした画像処理装置および方法に関する。
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮する符号化方式を採用して画像を圧縮符号する装置が普及しつつある。この符号化方式には、例えば、MPEG(Moving Picture Experts Group)などがある。
特に、MPEG2(ISO/IEC 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準である。例えば、MPEG2は、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4乃至8Mbpsの符号量(ビットレート)が割り当てられる。また、MPEG2圧縮方式を用いることにより、例えば1920×1088画素を持つ高解像度の飛び越し走査画像であれば18乃至22 Mbpsの符号量(ビットレート)が割り当てられる。これにより、高い圧縮率と良好な画質の実現が可能である。
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
さらに、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T Q6/16 VCEG)という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。その後、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下H.264/AVCと記す)という国際標準となっている。
図1は、H.264/AVCに基づいた圧縮画像を出力とする画像符号化装置の構成例を示すブロック図である。
図1の例において、画像符号化装置1は、A/D変換部11、画面並べ替えバッファ12、演算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、逆量子化部18、逆直交変換部19、演算部20、デブロックフィルタ21、フレームメモリ22、スイッチ23、イントラ予測部24、動き予測・補償部25、予測画像選択部26、およびレート制御部27により構成されている。
A/D変換部11は、入力された画像をA/D変換し、画面並べ替えバッファ12に出力し、記憶させる。画面並べ替えバッファ12は、記憶した表示の順番のフレームの画像を、GOP(Group of Picture)に応じて、符号化のためのフレームの順番に並べ替える。
演算部13は、画面並べ替えバッファ12から読み出された画像から、予測画像選択部26により選択されたイントラ予測部24からの予測画像または動き予測・補償部25からの予測画像を減算し、その差分情報を直交変換部14に出力する。直交変換部14は、演算部13からの差分情報に対して、離散コサイン変換、カルーネン・レーベ変換等の直交変換を施し、その変換係数を出力する。量子化部15は直交変換部14が出力する変換係数を量子化する。
量子化部15の出力となる、量子化された変換係数は、可逆符号化部16に入力され、ここで可変長符号化、算術符号化等の可逆符号化が施され、圧縮される。
可逆符号化部16は、イントラ予測を示す情報をイントラ予測部24から取得し、インター予測モードを示す情報などを動き予測・補償部25から取得する。なお、イントラ予測を示す情報およびインター予測を示す情報は、以下、それぞれ、イントラ予測モード情報およびインター予測モード情報とも称する。
可逆符号化部16は、量子化された変換係数を符号化するとともに、イントラ予測を示す情報、インター予測モードを示す情報などを符号化し、圧縮画像におけるヘッダ情報の一部とする。可逆符号化部16は、符号化したデータを蓄積バッファ17に供給して蓄積させる。
例えば、可逆符号化部16においては、可変長符号化または算術符号化等の可逆符号化処理が行われる。可変長符号化としては、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などがあげられる。算術符号化としては、CABAC(Context-Adaptive Binary Arithmetic Coding)などがあげられる。
蓄積バッファ17は、可逆符号化部16から供給されたデータを、H.264/AVC方式で符号化された圧縮画像として、例えば、後段の図示せぬ記録装置や伝送路などの復号側に出力する。
また、量子化部15より出力された、量子化された変換係数は、逆量子化部18にも入力され、逆量子化された後、さらに逆直交変換部19において逆直交変換される。逆直交変換された出力は演算部20により予測画像選択部26から供給される予測画像と加算されて、局部的に復号された画像となる。デブロックフィルタ21は、復号された画像のブロック歪を除去した後、フレームメモリ22に供給し、蓄積させる。フレームメモリ22には、デブロックフィルタ21によりデブロックフィルタ処理される前の画像も供給され、蓄積される。
スイッチ23はフレームメモリ22に蓄積された参照画像を動き予測・補償部25またはイントラ予測部24に出力する。
この画像符号化装置1においては、例えば、画面並べ替えバッファ12からのIピクチャ、Bピクチャ、およびPピクチャが、イントラ予測(イントラ処理とも称する)する画像として、イントラ予測部24に供給される。また、画面並べ替えバッファ12から読み出されたBピクチャおよびPピクチャが、インター予測(インター処理とも称する)する画像として、動き予測・補償部25に供給される。
イントラ予測部24は、画面並べ替えバッファ12から読み出されたイントラ予測する画像とフレームメモリ22から供給された参照画像に基づいて、候補となる全てのイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。
その際、イントラ予測部24は、候補となる全てのイントラ予測モードに対してコスト関数値を算出し、算出したコスト関数値が最小値を与えるイントラ予測モードを、最適イントラ予測モードとして選択する。
イントラ予測部24は、最適イントラ予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部26に供給する。イントラ予測部24は、予測画像選択部26により最適イントラ予測モードで生成された予測画像が選択された場合、最適イントラ予測モードを示す情報を、可逆符号化部16に供給する。可逆符号化部16は、この情報を符号化し、圧縮画像におけるヘッダ情報の一部とする。
動き予測・補償部25には、画面並べ替えバッファ12から読み出されたインター処理する画像と、スイッチ23を介してフレームメモリ22から参照画像が供給される。動き予測・補償部25は、候補となる全てのインター予測モードのブロックの動き予測を行い、各ブロックの動きベクトルを生成する。
動き予測・補償部25は、予測した各ブロックの動きベクトルを用いて、候補となる全てのインター予測モードに対してコスト関数値を算出する。動き予測・補償部25は、算出したコスト関数値のうち、最小値を与えるブロックの予測モードを、最適インター予測モードとして決定する。
動き予測・補償部25は、決定された最適インター予測モードの対象ブロックの予測画像とそのコスト関数値を、予測画像選択部26に供給する。動き予測・補償部25は、予測画像選択部26により最適インター予測モードの対象ブロックの予測画像が選択された場合、最適インター予測モードを示す情報(インター予測モード情報)を可逆符号化部16に出力する。
このとき、動きベクトル情報、参照フレーム情報なども可逆符号化部16に出力される。可逆符号化部16は、動き予測・補償部25からの情報をやはり可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
予測画像選択部26は、イントラ予測部24または動き予測・補償部25より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードから、最適予測モードを決定する。そして、予測画像選択部26は、決定された最適予測モードの予測画像を選択し、演算部13,20に供給する。このとき、予測画像選択部26は、予測画像の選択情報を、イントラ予測部24または動き予測・補償部25に供給する。
レート制御部27は、蓄積バッファ17に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15の量子化動作のレートを制御する。
図2は、図1の画像符号化装置に対応する画像復号装置の構成例を示すブロック図である。
図2の例において、画像復号装置31は、蓄積バッファ41、可逆復号部42、逆量子化部43、逆直交変換部44、演算部45、デブロックフィルタ46、画面並べ替えバッファ47、D/A変換部48、フレームメモリ49、スイッチ50、イントラ予測部51、動き補償部52、およびスイッチ53により構成されている。
蓄積バッファ41は伝送されてきた圧縮画像を蓄積する。可逆復号部42は、蓄積バッファ41より供給された、図1の可逆符号化部16により符号化された情報を、可逆符号化部16の符号化方式に対応する方式で復号する。逆量子化部43は可逆復号部42により復号された画像を、図1の量子化部15の量子化方式に対応する方式で逆量子化する。逆直交変換部44は、図1の直交変換部14の直交変換方式に対応する方式で逆量子化部43の出力を逆直交変換する。
逆直交変換された出力は演算部45によりスイッチ53から供給される予測画像と加算されて復号される。デブロックフィルタ46は、復号された画像のブロック歪を除去した後、フレームメモリ49に供給し、蓄積させるとともに、画面並べ替えバッファ47に出力する。
画面並べ替えバッファ47は、画像の並べ替えを行う。すなわち、図1の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部48は、画面並べ替えバッファ47から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
スイッチ50は、インター処理される画像と参照される画像をフレームメモリ49から読み出し、動き補償部52に出力するとともに、イントラ予測に用いられる画像をフレームメモリ49から読み出し、イントラ予測部51に供給する。
イントラ予測部51には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報が可逆復号部42から供給される。イントラ予測部51は、この情報に基づいて、予測画像を生成し、生成した予測画像を、スイッチ53に出力する。
動き補償部52には、ヘッダ情報を復号して得られた情報のうち、インター予測モード情報、動きベクトル情報、参照フレーム情報などが可逆復号部42から供給される。インター予測モード情報は、マクロブロック毎に送信されてくる。動きベクトル情報や参照フレーム情報は、対象ブロック毎に送信されてくる。
動き補償部52は、可逆復号部42から供給されるインター予測モード情報が示す予測モードで、可逆復号部42から供給される動きベクトル情報および参照フレーム情報などを用いて、対象ブロックに対する予測画像の画素値を生成する。生成された予測画像の画素値は、スイッチ53を介して、演算部45に供給される。
スイッチ53は、動き補償部52またはイントラ予測部51により生成された予測画像を選択し、演算部45に供給する。
さらに、このH.264/AVCの拡張として、RGBや4:2:2、4:4:4といった、業務用に必要な符号化ツールや、MPEG-2で規定されていた8x8DCTや量子化マトリクスをも含んだFRExt (Fidelity Range Extension) の標準化が2005年2月に完了した。これにより、H.264/AVCを用いて、映画に含まれるフィルムノイズをも良好に表現することが可能な符号化方式となって、Blu-Ray Disc(商標)等の幅広いアプリケーションに用いられる運びとなった。
しかしながら、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の画像を圧縮したい、あるいは、インターネットのような、限られた伝送容量の環境において、ハイビジョン画像を配信したいといった、更なる高圧縮率符号化に対するニーズが高まっている。このため、先述の、ITU-T傘下のVCEG (=Video Coding Expert Group) において、符号化効率の改善に関する検討が継続され行なわれている。
かかる符号化効率改善の1手法として、非特許文献1において、適応ループフィルタ(ALF(Adaptive Loop Filter))という手法が提案されている。
図3は、適応ループフィルタを適用した画像符号化装置の構成例を示すブロック図である。なお、図3の例において、説明の便宜上、図1のA/D変換部11、画面並べ替えバッファ12、蓄積バッファ17、スイッチ23、イントラ予測部24、予測画像選択部26、およびレート制御部27は省略されている。また、矢印なども適宜省略されている。したがって、図3の例の場合、フレームメモリ22からの参照画像は、動き予測・補償部25に直接入力され、動き予測・補償部25からの予測画像は、演算部13および20に直接出力されている。
すなわち、図3の画像符号化装置61は、デブロックフィルタ21とフレームメモリ22の間に適応ループフィルタ71が追加された点のみが、図1の画像符号化装置1と異なっている。
適応ループフィルタ71は、画面並べ替えバッファ12(図示は省略)からの原画像との残差を最小とするよう、適応ループフィルタ係数の算出を行い、この適応ループフィルタ係数を用いて、デブロックフィルタ21からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
また、適応ループフィルタ71は、算出した適応ループフィルタ係数を、可逆符号化部16に送る。可逆符号化部16においては、この適応ループフィルタ係数を、可変長符号化、算術符号化といった可逆符号化処理し、圧縮画像のヘッダ部に挿入する。
図4は、図3の画像符号化装置に対応する画像復号装置の構成例を示すブロック図である。なお、図4の例において、説明の便宜上、図2の蓄積バッファ41、画面並べ替えバッファ47、D/A変換部48、スイッチ50、イントラ予測部51、およびスイッチ53は省略されている。また、矢印なども適宜省略されている。したがって、図4の例の場合、フレームメモリ49からの参照画像は、動き補償部52に直接入力され、動き補償部52からの予測画像は、演算部45に直接出力されている。
すなわち、図4の画像復号装置81は、デブロックフィルタ46とフレームメモリ49の間に適応ループフィルタ91が追加された点のみが、図2の画像復号装置31と異なっている。
適応ループフィルタ91には、可逆復号部42から復号され、ヘッダから抽出された適応ループフィルタ係数が供給される。適応ループフィルタ91は供給されたフィルタ係数を用いて、デブロックフィルタ46からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
これにより、復号画像の画質を向上させ、さらに、参照画像の画質をも向上させることができる。
また、上述したH.264/AVC方式において、マクロブロックサイズは16×16画素である。しかしながら、マクロブロックサイズを16×16画素とするのは、次世代符号化方式の対象となるようなUHD(Ultra High Definition;4000×2000画素)といった大きな画枠に対しては最適ではない。
そこで、非特許文献2などにおいては、マクロブロックサイズを、例えば、32×32画素といった大きさに拡張することも提案されている。
なお、非特許文献2は、インタースライスに対して拡張されたマクロブロックを適用する提案であるが、非特許文献3には、拡張されたマクロブロックを、イントラスライスに適用することが提案されている。
Takeshi. Chujoh, et al., "Block-based Adaptive Loop Filter" ITU-T SG16 Q6 VCEG Contribution, AI18, Germany, July, 2008 "Video Coding Using Extended Block Sizes",VCEG-AD09,ITU-Telecommunications Standardization Sector STUDY GROUP Question 16 - Contribution 123, Jan 2009 "Intra Coding Using Extended Block Sizes",VCEG-AL28, July 2009
ところで、非特許文献1において提案されている方式では、平坦な領域とテクスチャを含む領域を区別せず、ウィナーフィルタにより、画面全体における符号化劣化を最小限に抑えようとしている。したがって、平坦な領域、およびテクスチャを含む領域のそれぞれで引き起こされるローカルな画質劣化を改善することが困難であった。すなわち、平坦な領域においては、ブロック歪みが起こりやすいのに対し、エッジやテクスチャを含む領域においては、モスキート歪みが起こりやすい。
この画質劣化の改善に対する困難な度合いは、特に、Iスライスにおいて顕著であった。
本発明は、このような状況に鑑みてなされたものであり、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができるものである。
本発明の一側面の画像処理装置は、画像を、所定のブロック毎に、イントラ予測モード情報に応じてクラス分類する分類手段と、前記分類手段によりクラス分類された各所定のブロックに対して、同じクラスにクラス分類された前記所定のブロックを用いて算出されたフィルタ係数を用いてフィルタ処理を行うフィルタ処理手段とを備える。
前記所定のブロックは、マクロブロックであり、前記分類手段は、前記イントラ予測モード情報のうち、前記マクロブロックに対する予測ブロックサイズに応じて、前記マクロブロック毎に画像をクラス分類することができる。
前記分類手段は、前記マクロブロックに対する予測ブロックサイズが、符号化規格で規定されているマクロブロックサイズより大きいか、小さいかに応じて、前記マクロブロック毎に画像をクラス分類することができる。
前記分類手段は、イントラ16×16予測モードで符号化されるマクロブロックについては、平坦領域に含まれるマクロブロックとしてクラス分類することができる。
前記分類手段は、前記イントラ16×16予測モードよりも小さいブロックサイズのイントラ予測モードで符号化されるマクロブロックについては、エッジもしくはテクスチャが含まれるマクロブロックとしてクラス分類することができる。
前記分類手段は、イントラ16×16予測モードよりも大きいブロックサイズのイントラ予測モードで符号化されるマクロブロックについては、平坦領域に含まれるマクロブロックとしてクラス分類することができる。
前記所定のブロックは、マクロブロックまたは前記マクロブロックを構成する各ブロックであり、前記分類手段は、前記イントラに関する予測モード情報のうち、同一予測ブロックサイズにおける前記マクロブロックまたはブロックに対する予測モードの種類に応じて、前記マクロブロックまたはブロック毎に画像をクラス分類することができる。
前記分類手段は、垂直予測モードと水平予測モードで符号化されるマクロブロックまたはブロックについては、エッジもしくはテクスチャが含まれるマクロブロックまたはブロックとしてクラス分類することができる。
前記分類手段は、垂直予測モードと水平予測モード以外の予測モードで符号化されるマクロブロックまたはブロックについては、エッジもしくはテクスチャが含まれるマクロブロックまたはブロックとしてクラス分類することができる。
前記同じクラスにクラス分類された前記所定のブロックを用いて前記フィルタ係数を算出するフィルタ係数算出手段をさらに備えることができる。
前記画像のビットストリームと、前記イントラ予測に関するモードを示す情報と、前記フィルタ係数算出手段により算出されたフィルタ係数とを伝送する伝送手段をさらに備えることができる。
前記画像のビットストリームと、前記イントラ予測に関するモードを示す情報と、前記フィルタ係数とを受け取る受け取り手段をさらに備えることができる。
本発明の一側面の画像処理方法は、分類手段と、フィルタ処理手段とを備える画像処理装置の画像処理方法において、前記分類手段が、画像を、所定のブロック毎に、イントラ予測モード情報に応じてクラス分類し、前記フィルタ処理手段が、クラス分類された各所定のブロックに対して、同じクラスにクラス分類された前記所定のブロックを用いて算出されたフィルタ係数を用いてフィルタ処理を行う。
本発明の一側面においては、画像が、所定のブロック毎に、イントラ予測モード情報に応じてクラス分類され、クラス分類された各所定のブロックに対して、同じクラスにクラス分類された前記所定のブロックを用いて算出されたフィルタ係数を用いてフィルタ処理が行われる。
なお、上述の画像処理装置は、独立した装置であっても良いし、1つの画像符号化装置または画像復号装置を構成している内部ブロックであってもよい。
本発明によれば、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
H.264/AVC方式の画像符号化装置の構成例を示すブロック図である。 H.264/AVC方式の画像復号装置の構成例を示すブロック図である。 適応ループフィルタを適用した画像符号化装置の構成例を示すブロック図である。 適応ループフィルタを適用した画像復号装置の構成例を示すブロック図である。 本発明を適用した画像符号化装置の一実施の形態の構成を示すブロック図である。 16×16画素のイントラ予測モードの場合の処理順序を説明する図である。 輝度信号の4×4画素のイントラ予測モードの種類を示す図である。 輝度信号の4×4画素のイントラ予測モードの種類を示す図である。 4×4画素のイントラ予測の方向を説明する図である。 4×4画素のイントラ予測を説明する図である。 輝度信号の4×4画素のイントラ予測モードの符号化を説明する図である。 輝度信号の8×8画素のイントラ予測モードの種類を示す図である。 輝度信号の8×8画素のイントラ予測モードの種類を示す図である。 輝度信号の16×16画素のイントラ予測モードの種類を示す図である。 輝度信号の16×16画素のイントラ予測モードの種類を示す図である。 16×16画素のイントラ予測を説明する図である。 色差信号のイントラ予測モードの種類を示す図である。 デブロックフィルタの動作原理を説明する図である。 Bsの定義の方法を説明する図である。 デブロックフィルタの動作原理を説明する図である。 indexAおよびindexBとαおよびβの値の対応関係の例を示す図である。 BsおよびindexAとtC0との対応関係の例を示す図である。 マクロブロックの例を示す図である。 図5の適応ループフィルタの構成例を示すブロック図である。 図5の画像符号化装置の符号化処理を説明するフローチャートである。 図25のステップS13のイントラ予測処理を説明するフローチャートである。 図25のステップS14の動き予測・補償処理を説明するフローチャートである。 図25のステップS24のクラス分類係数算出処理の例を説明するフローチャートである。 本発明を適用した画像復号装置の一実施の形態の構成を示すブロック図である。 図29の適応ループフィルタの構成例を示すブロック図である。 図29の画像復号装置の復号処理を説明するフローチャートである。 図31のステップS133の予測画像生成処理を説明するフローチャートである。 図31のステップS140のクラス分類フィルタ処理の例を説明するフローチャートである。 コンピュータのハードウエアの構成例を示すブロック図である。 本発明を適用したテレビジョン受像機の主な構成例を示すブロック図である。 本発明を適用した携帯電話機の主な構成例を示すブロック図である。 本発明を適用したハードディスクレコーダの主な構成例を示すブロック図である。 本発明を適用したカメラの主な構成例を示すブロック図である。
以下、図を参照して本発明の実施の形態について説明する。
[画像符号化装置の構成例]
図5は、本発明を適用した画像処理装置としての画像符号化装置の一実施の形態の構成を表している。
図5の画像符号化装置101は、A/D変換部11、画面並べ替えバッファ12、演算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、逆量子化部18、逆直交変換部19、演算部20、デブロックフィルタ21、フレームメモリ22、スイッチ23、イントラ予測部24、動き予測・補償部25、予測画像選択部26、およびレート制御部27を備える点で、図1の画像符号化装置1と共通している。
また、図5の画像符号化装置101は、適応ループフィルタ111および予測モードバッファ112が追加された点で、図1の画像符号化装置1と異なっている。
すなわち、適応ループフィルタ111は、デブロックフィルタ21の後、フレームメモリ22の前に設けられている。すなわち、適応ループフィルタ111は、演算部13、直交変換部14、量子化部15、逆量子化部18、逆直交変換部19、演算部20、デブロックフィルタ21、フレームメモリ22、スイッチ23、イントラ予測部24または動き予測・補償部25、および予測画像選択部26からなる動き補償ループ内に設けられている。すなわち、動き補償ループ内では、画像がループして用いられている。
適応ループフィルタ111は、デブロックフィルタ21からの復号画像がIピクチャである場合、その画像を、予測モードバッファ112からのイントラ予測モード情報に応じたクラスに分類する。適応ループフィルタ111は、分類されたクラス毎に、画面並べ替えバッファ12からの原画像とデブロックフィルタ21からの画像との残差を最小とするよう、フィルタ係数の算出を行う。適応ループフィルタ111は、分類されたクラス毎に、算出されたフィルタ係数を用いて、フィルタ処理を行い、フィルタ処理後の画像を、フレームメモリ22に出力する。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
なお、デブロックフィルタ21からの復号画像がIピクチャではない場合、適応ループフィルタ111は、クラス分類を行わず、復号画像全体を用いてフィルタ係数の算出を行い、それを用いて、復号画像全体に対してフィルタ処理を行う。
また、適応ループフィルタ111は、算出したフィルタ係数を、可逆符号化部16に送る。なお、このとき、可逆符号化部16は、図3の場合のように、適応ループフィルタ111により算出されたフィルタ係数も、符号化し、圧縮画像のスライスヘッダ部またはピクチャパラメータセットに挿入する。
予測モードバッファ112は、イントラ予測部24により決定されたイントラ予測モード情報を格納している。
[イントラ予測処理の説明]
次に、上述した各処理の詳細について説明する。図6を参照して、イントラ予測の各モードについて説明する。
まず、輝度信号に対するイントラ予測モードについて説明する。輝度信号のイントラ予測モードには、H.264/AVC方式の符号化規格で規定されている予測ブロックサイズ別に、イントラ4×4予測モード、イントラ8×8予測モード、およびイントラ16×16予測モードの3通りの方式が定められている。これは、ブロック単位を定めるモードであり、マクロブロック毎に設定される。また、色差信号に対しては、マクロブロック毎に輝度信号とは独立したイントラ予測モードを設定することが可能である。
そして、予測ブロックサイズ毎に、複数種類の予測方法を表す予測モードがそれぞれ設けられている。すなわち、イントラ4×4予測モードの場合、4×4画素の対象ブロック毎に、9種類の予測モードから1つの予測モードを設定することができる。イントラ8×8予測モードの場合、8×8画素の対象ブロック毎に、9種類の予測モードから1つの予測モードを設定することができる。また、イントラ16×16予測モードの場合、16×16画素の対象マクロブロックに対して、4種類の予測モードから1つの予測モードを設定することができる。
また、イントラ4×4予測モード、イントラ8×8予測モード、およびイントラ16×16予測モードは、それぞれ、4×4画素のイントラ予測モード、8×8画素のイントラ予測モード、および16×16画素のイントラ予測モードとも適宜称する。
図6の例において、各ブロックに付されている数字−1乃至25は、その各ブロックのビットストリーム順(復号側における処理順)を表している。なお、輝度信号については、マクロブロックが4×4画素に分割されて、4×4画素のDCTが行われる。そして、イントラ16×16予測モードの場合のみ、−1のブロックに示されるように、各ブロックの直流成分を集めて、4×4行列が生成され、これに対して、さらに、直交変換が施される。
一方、色差信号については、マクロブロックが4×4画素に分割され、4×4画素のDCTが行われた後に、16および17の各ブロックに示されるように、各ブロックの直流成分を集めて、2×2行列が生成され、これに対して、さらに、直交変換が施される。
なお、このことは、イントラ8×8予測モードに関しては、ハイプロファイルまたはそれ以上のプロファイルで、対象マクロブロックに、8×8直交変換が施される場合についてのみ適用可能である。
図7および図8は、9種類の輝度信号の4×4画素のイントラ予測モード(Intra_4x4_pred_mode)を示す図である。平均値(DC)予測を示すモード2以外の8種類の各モードは、それぞれ、図9の番号0,1,3乃至8で示される方向に対応している。
9種類のIntra_4x4_pred_modeについて、図10を参照して説明する。図10の例において、画素a乃至pは、イントラ処理される対象ブロックの画素を表し、画素値A乃至Mは、隣接ブロックに属する画素の画素値を表している。すなわち、画素a乃至pは、画面並べ替えバッファ62から読み出された処理対象の画像であり、画素値A乃至Mは、フレームメモリ72から読み出され、参照される復号済みの画像の画素値である。
図7および図8に示す各イントラ予測モードの場合、画素a乃至pの予測画素値は、隣接ブロックに属する画素の画素値A乃至Mを用いて、以下のように生成される。なお、画素値が“available”であるとは、画枠の端であったり、あるいは、まだ符号化されていないなどの理由がなく、利用可能であることを表す。これに対して、画素値が“unavailable”であるとは、画枠の端であったり、あるいは、まだ符号化されていないなどの理由により利用可能ではないことを表す。
モード0はVertical Prediction modeであり、画素値A乃至Dが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(1)のように生成される。

画素a, e, i, mの予測画素値 = A
画素b, f, j, nの予測画素値 = B
画素c, g, k, oの予測画素値 = C
画素d, h, l, pの予測画素値 = D ・・・(1)
モード1はHorizontal Prediction modeであり、画素値I乃至Lが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(2)のように生成される。

画素a, b, c, dの予測画素値 = I
画素e, f, g, hの予測画素値 = J
画素i, j, k, lの予測画素値 = K
画素m, n, o, pの予測画素値 = L ・・・(2)
モード2はDC Prediction modeであり、画素値A,B,C,D,I,J,K,Lが全て “available” である時、予測画素値は式(3)のように生成される。

(A+B+C+D+I+J+K+L+4) >> 3 ・・・(3)
また、画素値A,B,C,Dが全て “unavailable” である時、予測画素値は式(4)のように生成される。

(I+J+K+L+2) >> 2 ・・・(4)
また、画素値I,J,K,Lが全て “unavailable” である時、予測画素値は式(5)のように生成される。

(A+B+C+D+2) >> 2 ・・・(5)
なお、画素値A,B,C,D,I,J,K,Lが全て“unavailable” である時、128を予測画素値として用いる。
モード3はDiagonal_Down_Left Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(6)のように生成される。

画素aの予測画素値 = (A+2B+C+2) >> 2
画素b,eの予測画素値 = (B+2C+D+2) >> 2
画素c,f,iの予測画素値 = (C+2D+E+2) >> 2
画素d,g,j,mの予測画素値 = (D+2E+F+2) >> 2
画素h,k,nの予測画素値 = (E+2F+G+2) >> 2
画素l,oの予測画素値 = (F+2G+H+2) >> 2
画素pの予測画素値 = (G+3H+2) >> 2
・・・(6)
モード4はDiagonal_Down_Right Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが “available” の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(7)のように生成される。

画素mの予測画素値 = (J+2K+L+2) >> 2
画素i,nの予測画素値 = (I+2J+K+2) >> 2
画素e,j,oの予測画素値 = (M+2I+J+2) >> 2
画素a,f,k,pの予測画素値 = (A+2M+I+2) >> 2
画素b,g,lの予測画素値 = (M+2A+B+2) >> 2
画素c,hの予測画素値 = (A+2B+C+2) >> 2
画素dの予測画素値 = (B+2C+D+2) >> 2
・・・(7)
モード5はDiagonal_Vertical_Right Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(8)のように生成される。

画素a,jの予測画素値 = (M+A+1) >> 1
画素b,kの予測画素値 = (A+B+1) >> 1
画素c,lの予測画素値 = (B+C+1) >> 1
画素dの予測画素値 = (C+D+1) >> 1
画素e,nの予測画素値 = (I+2M+A+2) >> 2
画素f,oの予測画素値 = (M+2A+B+2) >> 2
画素g,pの予測画素値 = (A+2B+C+2) >> 2
画素hの予測画素値 = (B+2C+D+2) >> 2
画素iの予測画素値 = (M+2I+J+2) >> 2
画素mの予測画素値 = (I+2J+K+2) >> 2
・・・(8)
モード6はHorizontal_Down Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(9)のように生成される。

画素a,gの予測画素値 = (M+I+1) >> 1
画素b,hの予測画素値 = (I+2M+A+2) >> 2
画素cの予測画素値 = (M+2A+B+2) >> 2
画素dの予測画素値 = (A+2B+C+2) >> 2
画素e,kの予測画素値 = (I+J+1) >> 1
画素f,lの予測画素値 = (M+2I+J+2) >> 2
画素i,oの予測画素値 = (J+K+1) >> 1
画素j,pの予測画素値 = (I+2J+K+2) >> 2
画素mの予測画素値 = (K+L+1) >> 1
画素nの予測画素値 = (J+2K+L+2) >> 2
・・・(9)
モード7は、Vertical_Left Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(10)のように生成される。

画素aの予測画素値 = (A+B+1) >> 1
画素b,iの予測画素値 = (B+C+1) >> 1
画素c,jの予測画素値 = (C+D+1) >> 1
画素d,kの予測画素値 = (D+E+1) >> 1
画素lの予測画素値 = (E+F+1) >> 1
画素eの予測画素値 = (A+2B+C+2) >> 2
画素f,mの予測画素値 = (B+2C+D+2) >> 2
画素g,nの予測画素値 = (C+2D+E+2) >> 2
画素h,oの予測画素値 = (D+2E+F+2) >> 2
画素pの予測画素値 = (E+2F+G+2) >> 2
・・・(10)
モード8は、Horizontal_Up Prediction modeであり、画素値A,B,C,D,I,J,K,L,Mが“available”の場合のみ適用される。この場合、画素a乃至pの予測画素値は、次の式(11)のように生成される。

画素aの予測画素値 = (I+J+1) >> 1
画素bの予測画素値 = (I+2J+K+2) >> 2
画素c,eの予測画素値 = (J+K+1) >> 1
画素d,fの予測画素値 = (J+2K+L+2) >> 2
画素g,iの予測画素値 = (K+L+1) >> 1
画素h,jの予測画素値 = (K+3L+2) >> 2
画素k,l,m,n,o,pの予測画素値 = L
・・・(11)
次に、図11を参照して、輝度信号の4×4画素のイントラ予測モード(Intra_4x4_pred_mode)の符号化方式について説明する。図11の例において、4×4画素からなり、符号化対象となる対象ブロックCが示されており、対象ブロックCに隣接する4×4画素からなるブロックAおよびブロックBが示されている。
この場合、対象ブロックCにおけるIntra_4x4_pred_modeと、ブロックAおよびブロックBにおけるIntra_4x4_pred_modeとは高い相関があると考えられる。この相関性を用いて、次のように符号化処理を行うことにより、より高い符号化効率を実現することができる。
すなわち、図11の例において、ブロックAおよびブロックBにおけるIntra_4x4_pred_modeを、それぞれ、Intra_4x4_pred_modeAおよびIntra_4x4_pred_modeBとして、MostProbableModeを次の式(12)と定義する。

MostProbableMode=Min(Intra_4x4_pred_modeA, Intra_4x4_pred_modeB)
・・・(12)
すなわち、ブロックAおよびブロックBのうち、より小さなmode_numberを割り当てられている方をMostProbableModeとする。
ビットストリーム中には、対象ブロックCに対するパラメータとして、prev_intra4x4_pred_mode_flag[luma4x4BlkIdx] および rem_intra4x4_pred_mode[luma4x4BlkIdx] という2つの値が定義されており、次の式(13)に示される擬似コードに基づく処理により、復号処理が行われ、対象ブロックCに対するIntra_4x4_pred_mode、Intra4x4PredMode[luma4x4BlkIdx] の値を得ることができる。
if(prev_intra4x4_pred_mode_flag[luma4x4BlkIdx])
Intra4x4PredMode[luma4x4BlkIdx] = MostProbableMode
else
if(rem_intra4x4_pred_mode[luma4x4BlkIdx] < MostProbableMode)
Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx]
else
Intra4x4PredMode[luma4x4BlkIdx]=rem_intra4x4_pred_mode[luma4x4BlkIdx] + 1
・・・(13)
次に、8×8画素のイントラ予測モードについて説明する。図12および図13は、9種類の輝度信号の8×8画素のイントラ予測モード(Intra_8x8_pred_mode)を示す図である。
対象の8×8ブロックにおける画素値を、p[x,y](0≦x≦7;0≦y≦7)とし、隣接ブロックの画素値をp[-1,-1],…,p[-1,15],p[-1,0],…,[p-1,7]のように表すものとする。
8×8画素のイントラ予測モードについては、予測値を生成するに先立ち、隣接画素にローパスフィルタリング処理が施される。ここで、ローパスフィルタリング処理前の画素値を、p[-1,-1],…,p[-1,15],p[-1,0],…p[-1,7]、処理後の画素値をp’[-1,-1],…,p’[-1,15],p’[-1,0],…p’[-1,7]と表すとする。
まず、p’[0,-1]は、p[-1,-1] が “available” である場合には、次の式(14)のように算出され、“not available” である場合には、次の式(15)のように算出される。

p’[0,-1] = (p[-1,-1] + 2*p[0,-1] + p[1,-1] + 2) >> 2
・・・(14)
p’[0,-1] = (3*p[0,-1] + p[1,-1] + 2) >> 2
・・・(15)
p’[x,-1] (x=0,…,7)は、次の式(16)のように算出される。

p’[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2
・・・(16)
p’[x,-1] (x=8,…,15)は、p[x,-1] (x=8,…,15) が “available” である場合には、次の式(17)のように算出される。

p’[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >>2
p’[15,-1] = (p[14,-1] + 3*p[15,-1] + 2) >>2
・・・(17)
p’[-1,-1]は、p[-1,-1]が “available” である場合には、以下のように算出される。すなわち、p’[-1,-1]は、p[0,-1]及びp[-1,0]の双方がavailableである場合には、式(18)のように算出され、p[-1,0] が “unavailable” である場合には、式(19)のように算出される。また、p’[-1,-1]は、p[0,-1] が “unavailable” である場合には、式(20)のように算出される。

p’[-1,-1] = (p[0,-1] + 2*p[-1,-1] + p[-1,0] + 2) >>2
・・・(18)

p’[-1,-1] = (3*p[-1,-1] + p[0,-1] + 2) >>2
・・・(19)

p’[-1,-1] = (3*p[-1,-1] + p[-1,0] + 2) >>2
・・・(20)
p’[-1,y] (y=0, … ,7) は、p[-1,y] (y=0, … ,7) が “available” の時、以下のように算出される。すなわち、まず、p’[-1,0]は、p[-1,-1]が “available” である場合には、次の式(21)のように算出され、“unavailable” である場合には、式(22)のように算出される。

p’[-1,0] = (p[-1,-1] + 2*p[-1,0] + p[-1,1] + 2) >>2
・・・(21)

p’[-1,0] = (3*p[-1,0] + p[-1,1] + 2) >>2
・・・(22)
また、p’[-1,y] (y=1,…,6)は、次の式(23)のように算出され、p’[-1,7]は、式(24)のように算出される。

p[-1,y] = (p[-1,y-1] + 2*p[-1,y] + p[-1,y+1] + 2) >>2
・・・(23)

p’[-1,7] = (p[-1,6] + 3*p[-1,7] + 2) >>2
・・・(24)
このように算出されたp’を用いて、図8および図9に示される各イントラ予測モードにおける予測値は以下のように生成される。
モード0はVertical Prediction modeであり、p[x,-1] (x=0, … ,7) が “available” である時のみ適用される。予測値pred8x8L[x,y]は、次の式(25)のように生成される。

pred8x8L[x,y] = p’[x,-1] x,y=0,...,7
・・・(25)
モード1はHorizontal Prediction modeであり、p[-1,y] (y=0, … ,7) が “available” である時のみ適用される。予測値pred8x8L[x,y]は、次の式(26)のように生成される。

pred8x8L[x,y] = p’[-1,y] x,y=0,...,7
・・・(26)
モード2はDC Prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が “available” である場合には、予測値pred8x8L[x,y]は、次の式(27)のように生成される。

Figure 2011223337
p[x,-1] (x=0, … ,7) は “available” であるが、 p[-1,y] (y=0, … ,7) が “unavailable” である場合には、予測値pred8x8L[x,y]は、次の式(28)のように生成される。

Figure 2011223337
p[x,-1] (x=0, … ,7) は “unavailable” であるが、 p[-1,y] (y=0, … ,7) が “available” である場合には、予測値pred8x8L[x,y]は、次の式(29)のように生成される。

Figure 2011223337
p[x,-1] (x=0, … ,7) および p[-1,y] (y=0, … ,7) の両方が “unavailable” である場合には、予測値pred8x8L[x,y]は、次の式(30)のように生成される。

pred8x8L[x,y] = 128
・・・(30)

ただし、式(30)は、8ビット入力の場合を表している。
モード3はDiagonal_Down_Left_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Diagonal_Down_Left_prediction modeは、p[x,-1], x=0,…,15が “available” の時のみ適用され、x=7かつy=7である予測画素値は、次の式(31)のように生成され、その他の予測画素値は、次の式(32)のように生成される。

pred8x8L[x,y] = (p’[14,-1] + 3*p[15,-1] + 2) >> 2
・・・(31)

red8x8L[x,y] = (p’[x+y,-1] + 2*p’[x+y+1,-1] + p’[x+y+2,-1] + 2) >> 2
・・・(32)
モード4はDiagonal_Down_Right_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Diagonal_Down_Right_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=0,…,7が “available”の時のみ適用され、x > y である予測画素値は、次の式(33)のように生成され、x < y である予測画素値は、次の式(34)のように生成される。また、x = y である予測画素値は、次の式(35)のように生成される。

pred8x8L[x,y] = (p’[x-y-2,-1] + 2*p’[x-y-1,-1] + p’[x-y,-1] + 2) >> 2
・・・(33)

pred8x8L[x,y] = (p’[-1,y-x-2] + 2*p’[-1,y-x-1] + p’[-1,y-x] + 2) >> 2
・・・(34)

pred8x8L[x,y] = (p’[0,-1] + 2*p’[-1,-1] + p’[-1,0] + 2) >> 2
・・・(35)
モード5はVertical_Right_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Vertical_Right_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が “available”の時のみ適用される。今、zVRを、次の式(36)のように定義する。

zVR = 2*x - y
・・・(36)
この時、zVRが、0,2,4,6,8,10,12,14の場合には、画素予測値は、次の式(37)のように生成され、zVRが1,3,5,7,9,11,13の場合には、画素予測値は、次の式(38)のように生成される。

pred8x8L[x,y] = (p’[x-(y>>1)-1,-1] + p’[x-(y>>1),-1] + 1) >> 1
・・・(37)
pred8x8L[x,y]
= (p’[x-(y>>1)-2,-1] + 2*p’[x-(y>>1)-1,-1] + p’[x-(y>>1),-1] + 2) >> 2
・・・(38)
また、zVRが-1の場合には、画素予測値は、次の式(39)のように生成され、これ以外の場合、すなわち、zVRが-2,-3,-4,-5,-6,-7の場合には、画素予測値は、次の式(40)のように生成される。

pred8x8L[x,y] = (p’[-1,0] + 2*p’[-1,-1] + p’[0,-1] + 2) >> 2
・・・(39)

pred8x8L[x,y] = (p’[-1,y-2*x-1] + 2*p’[-1,y-2*x-2] + p’[-1,y-2*x-3] + 2) >> 2
・・・(40)
モード6はHorizontal_Down_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Horizontal_Down_prediction modeは、p[x,-1],x=0,…,7及びp[-1,y],y=-1,…,7が “available”の時のみ適用される。今、zVRを次の式(41)のように定義するものとする。

zHD = 2*y - x
・・・(41)
この時、zHDが0,2,4,6,8,10,12,14の場合には、予測画素値は、次の式(42)のように生成され、zHDが1,3,5,7,9,11,13の場合には、予測画素値は、次の式(43)のように生成される。

pred8x8L[x,y] = (p’[-1,y-(x>>1)-1] + p’[-1,y-(x>>1) + 1] >> 1
・・・(42)

pred8x8L[x,y]
= (p’[-1,y-(x>>1)-2] + 2*p’[-1,y-(x>>1)-1] + p’[-1,y-(x>>1)] + 2) >> 2
・・・(43)
また、zHDが-1の場合には、予測画素値は、次の式(44)のように生成され、zHDがこれ以外の値の場合、すなわち、-2,-3,-4,-5,-6,-7の場合には、予測画素値は、次の式(45)のように生成される。

pred8x8L[x,y] = (p’[-1,0] + 2*p[-1,-1] + p’[0,-1] + 2) >> 2
・・・(44)

pred8x8L[x,y] = (p’[x-2*y-1,-1] + 2*p’[x-2*y-2,-1] + p’[x-2*y-3,-1] + 2) >> 2
・・・(45)
モード7はVertical_Left_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Vertical_Left_prediction modeは、p[x,-1], x=0,…,15が “available” の時のみ適用され、y=0,2,4,6の場合、予測画素値は、次の式(46)のように生成され、それ以外の場合、すなわち、y=1,3,5,7の場合、予測画素値は、次の式(47)のように生成される。

pred8x8L[x,y] = (p’[x+(y>>1),-1] + p’[x+(y>>1)+1,-1] + 1) >> 1
・・・(46)

pred8x8L[x,y]
= (p’[x+(y>>1),-1] + 2*p’[x+(y>>1)+1,-1] + p’[x+(y>>1)+2,-1] + 2) >> 2
・・・(47)
モード8はHorizontal_Up_prediction modeであり、予測値pred8x8L[x,y]は以下の通り生成される。すなわち、Horizontal_Up_prediction modeは、p[-1,y], y=0,…,7 が “available” の時のみ適用される。以下では、zHUを次の式(48)のように定義する。

zHU = x + 2*y
・・・(48)
zHUの値が0,2,4,6,8,10,12の場合、予測画素値は、次の式(49)のように生成され、zHUの値が1,3,5,7,9,11の場合、予測画素値は、次の式(50)のように生成される。

pred8x8L[x,y] = (p’[-1,y+(x>>1)] + p’[-1,y+(x>>1)+1] + 1) >> 1
・・・(49)

pred8x8L[x,y] = (p’[-1,y+(x>>1)]
・・・(50)
また、zHUの値が13の場合、予測画素値は、次の式(51)のように生成され、それ以外の場合、すなわち、zHUの値が13より大きい場合、予測画素値は、次の式(52)のように生成される。

pred8x8L[x,y] = (p’[-1,6] + 3*p’[-1,7] + 2) >> 2
・・・(51)

pred8x8L[x,y] = p’[-1,7]
・・・(52)
次に、16×16画素のイントラ予測モードについて説明する。図14および図15は、4種類の輝度信号の16×16画素のイントラ予測モード(Intra_16x16_pred_mode)を示す図である。
4種類のイントラ予測モードについて、図16を参照して説明する。図16の例において、イントラ処理される対象マクロブロックAが示されており、P(x,y);x,y=-1,0,…,15は、対象マクロブロックAに隣接する画素の画素値を表している。
モード0は、Vertical Prediction modeであり、P(x,-1); x,y=-1,0,…,15が “available” である時のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(53)のように生成される。

Pred(x,y) = P(x,-1);x,y=0,…,15
・・・(53)
モード1はHorizontal Prediction modeであり、P(-1,y); x,y=-1,0,…,15が “available” である時のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(54)のように生成される。

Pred(x,y) = P(-1,y);x,y=0,…,15
・・・(54)
モード2はDC Prediction modeであり、P(x,-1)およびP(-1,y); x,y=-1,0,…,15が全て “available” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(55)のように生成される。

Figure 2011223337
また、P(x,-1); x,y=-1,0,…,15が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(56)のように生成される。

Figure 2011223337
P(-1,y); x,y=-1,0,…,15が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(57)のように生成される。

Figure 2011223337
P(x,-1)およびP(-1,y); x,y=-1,0,…,15が全て “unavailable” である場合には、予測画素値として128を用いる。
モード3はPlane Prediction modeであり、P(x,-1)及びP(-1,y); x,y=-1,0,…,15が全て “available” の場合のみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(58)のように生成される。

Figure 2011223337
次に、色差信号に対するイントラ予測モードについて説明する。図17は、4種類の色差信号のイントラ予測モード(Intra_chroma_pred_mode)を示す図である。色差信号のイントラ予測モードは、輝度信号のイントラ予測モードと独立に設定が可能である。色差信号に対するイントラ予測モードは、上述した輝度信号の16×16画素のイントラ予測モードに順ずる。
ただし、輝度信号の16×16画素のイントラ予測モードが、16×16画素のブロックを対象としているのに対し、色差信号に対するイントラ予測モードは、8×8画素のブロックを対象としている。さらに、上述した図14と図17に示されるように、両者においてモード番号は対応していない。
ここで、図16を参照して上述した輝度信号の16×16画素のイントラ予測モードの対象マクロブロックAの画素値および隣接する画素値の定義に準じる。例えば、イントラ処理される対象マクロブロックA(色差信号の場合は、8×8画素)に隣接する画素の画素値をP(x,y);x,y=-1,0,…,7とする。
モード0はDC Prediction modeであり、P(x,-1)およびP(-1,y); x,y=-1,0,…,7が全て “available” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(59)のように生成される。

Figure 2011223337
また、P(-1,y) ; x,y=-1,0,…,7が “unavailable” である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(60)のように生成される。

Figure 2011223337
また、P(x,-1) ; x,y=-1,0,…,7が “unavailable”である場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(61)のように生成される。

Figure 2011223337
モード1はHorizontal Prediction modeであり、P(-1,y) ; x,y=-1,0,…,7が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(62)のように生成される。

Pred(x,y) = P(-1,y);x,y=0,…,7
・・・(62)
モード2はVertical Prediction modeであり、P(x,-1) ; x,y=-1,0,…,7が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(63)のように生成される。

Pred(x,y) = P(x,-1);x,y=0,…,7
・・・(63)
モード3はPlane Prediction modeであり、P(x,-1)及びP(-1,y) ; x,y=-1,0,…,7 が “available” の場合にのみ適用される。この場合、対象マクロブロックAの各画素の予測画素値Pred(x,y)は、次の式(64)のように生成される。

Figure 2011223337
[デブロックフィルタ]
次にデブロックフィルタについて説明する。デブロックフィルタ21は、動き補償ループ内に含まれ、復号画像におけるブロック歪を除去する。これにより、動き補償処理により参照される画像へのブロック歪の伝播が抑制される。
デブロックフィルタの処理としては、符号化データに含まれる、Picture Parameter Set RBSP(Raw Byte Sequence Payload)に含まれるdeblocking_filter_control_present_flag、及び、スライスヘッダ(Slice Header)に含まれるdisable_deblocking_filter_idcという2つのパラメータによって、以下の(a)乃至(c)の3通りの方法が選択可能である。
(a)ブロック境界、及びマクロブロック境界に施す
(b)マクロブロック境界にのみ施す
(c)施さない
量子化パラメータQPについては、以下の処理を輝度信号に対して適用する場合は、QPYを、色差信号に対して適用する場合はQPCを用いる。また、動きベクトル符号化、イントラ予測、エントロピー符号化(CAVLC/CABAC)においては、異なるスライスに属する画素値は"not available"として処理するが、デブロックフィルタ処理においては、異なるスライスに属する画素値でも、同一のピクチャに属する場合は"available"であるとして処理を行う。
以下においては、図18に示されるように、デブロックフィルタ処理前の画素値をp0〜p3、q0〜q3とし、処理後の画素値をp0'〜p3'、q0'〜q3'とする。
まず、デブロックフィルタ処理に先立ち、図18におけるp及びqに対して、図19に示される表のように、Bs(Boundary Strength)が定義される。
図18における(p2,p1,p0,q0,q1,q2)は、以下の式(65)および式(66)により示される条件が成立する場合のみ、デブロックフィルタ処理が施される。
Bs > 0 ・・・(65)
|p0-q0| < α; |p1-p0| < β; |q1-q0| < β ・・・(66)
式(66)のαおよびβは、デフォルトでは以下のようにQPに応じてその値が定められているが、符号化データの、スライスヘッダに含まれる、slice_alpha_c0_offset_div2及びslice_beta_offset_div2という2つのパラメータによって、図20に示されるグラフの矢印のように、ユーザがその強度を調整することが可能である。
図21に示される表のように、αはindexAから求められる。同様に、βはindexBから求められる。このindexAおよびindexBは、以下の式(67)乃至式(69)のように定義される。
qP=(qPp+qPq+1)>>1 ・・・(67)
indexA=Clip3(0,51,qP+FilterOffsetA) ・・・(68)
indexB=Clip3(0,51,qP+FilterOffsetB) ・・・(69)
式(68)および式(69)において、FilterOffsetA及びFilterOffsetBが、ユーザによる調整分に相当する。
デブロックフィルタ処理は、以下に説明するように、Bs<4の場合と、Bs=4の場合とで、互いに異なる方法が定義されている。Bs<4の場合、デブロックフィルタ処理後の画素値p'0及びq'0が、以下の式(70)乃至式(72)のように求められる。
Δ=Clip3(−tc,tc((((q0−p0)<<2)+(p1−q1)+4)>>3))
・・・(70)
p'0=Clip1(p0+Δ) ・・・(71)
q'0=Clip1(q0+Δ) ・・・(72)
ここで、tcは、以下の式(73)または式(74)ように算出される。すなわち、chromaEdgeFlagの値が「0」である場合、tcは以下の式(73)のように算出される。
tc=tc0+((ap<β)?1:0)+((a<β)?1:0) ・・・(73)
また、chromaEdgeFlagの値が「0」以外である場合、tcは以下の式(74)のように算出される。
tc=tc0+1 ・・・(74)
tC0の値は、BsとindexAの値に応じて、図22Aおよび図22Bに示される表のように定義される。
また、式(73)のap及びaqの値は、以下の式(75)および(76)のように算出される。
ap=|p2−p0| ・・・(75)
aq=|q2−q0| ・・・(76)
デブロックフィルタ処理後の画素値p'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「0」で、尚且つ、apの値がβ以下である場合、p'1は、以下の式(77)のように求められる。
p'1=p1+Clip3(−tc0,tc0,(p2+((p0+q0+1)>>1)−(p1<<1))>>1)
・・・(77)
また、式(77)が成り立たない場合、p'1は、以下の式(78)のように求められる。
p'1=p1 ・・・(78)
デブロックフィルタ処理後の画素値q'1は以下のように求められる。すなわち、chromaEdgeFlagの値が「0」で、尚且つ、aqの値がβ以下である場合、q'1は、以下の式(79)のように求められる。
q'1=q1+Clip3(−tc0,tc0,(q2+((p0+q0+1)>>1)−(q1<<1))>>1)
・・・(79)
また、式(79)が成り立たない場合、q'1は、以下の式(80)のように求められる。
q'1=q1 ・・・(80)
p'2及びq'2の値は、Filtering前の値p2及びq2と変わらない。すなわち、p'2は、以下の式(81)のように求められ、q'2は、以下の式(82)のように求められる。
p'2=p2 ・・・(81)
q'2=q2 ・・・(82)
Bs=4の場合、デブロックフィルタ後の画素値p'i(i=0..2)は、以下のように求められる。chromaEdgeFlag の値が「0」であり、以下の式(83)に示される条件が成り立つ場合、p'0、p'1、及びp'2は、以下の式(84)乃至式(86)のように求められる。
ap<β&&|p0−q0|<((α>>2)+2) ・・・(83)
p'0=(p2+2×p1+2×p0+2×q0+q1+4)>>3 ・・・(84)
p'1=(p2+p1+p0+q0+2)>>2 ・・・(85)
p'2=(2×p3+3×p2+p1+p0+q0+4)>>3 ・・・(86)
また、式(83)に示される条件が成り立たない場合、p'0、p'1、及びp'2は、以下の式(87)乃至(89)のように求められる。
p'0=(2×p1+p0+q1+2)>>2 ・・・(87)
p'1=p1 ・・・(88)
p'2=p2 ・・・(89)
デブロックフィルタ処理後の画素値q'i(I=0..2)は、以下のように求められる。すなわち、chromaEdgeFlagの値が「0」であり、以下の式(90)に示される条件が成り立つ場合、q'0、q'1、及びq'2は、以下の式(91)乃至(93)のように求められる。
aq<β&&|p0−q0|<((α>>2)+2) ・・・(90)
q'0=(p1+2×p0+2×q0+2×q1+q2+4)>>3 ・・・(91)
q'1=(p0+q0+q1+q2+2)>>2 ・・・(92)
q'2=(2×q3+3×q2+q1+q0+p4+4)>>3 ・・・(93)
また、式(90)に示される条件が成り立たない場合、q'0、q'1、及びq'2は、以下の式(94)乃至(96)のように求められる。
q'0=(2×q1+q0+p1+2)>>2 ・・・(94)
q'1=q1 ・・・(95)
q'2=q2 ・・・(96)
[拡張マクロブロックの例]
また、H.264/AVC方式において、マクロブロックサイズは16×16画素である。しかしながら、マクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない。画像符号化装置101においては、図23に示されるように、マクロブロックサイズを、例えば、32画素×32画素、64×64画素といった大きさにすることが採用される場合がある。
図23は、非特許文献2で提案されているブロックサイズの例を示す図である。非特許文献2では、マクロブロックサイズが32×32画素に拡張されている。
図23の上段には、左から、32×32画素、32×16画素、16×32画素、および16×16画素のブロック(パーティション)に分割された32×32画素で構成されるマクロブロックが順に示されている。図23の中段には、左から、16×16画素、16×8画素、8×16画素、および8×8画素のブロックに分割された16×16画素で構成されるブロックが順に示されている。また、図23の下段には、左から、8×8画素、8×4画素、4×8画素、および4×4画素のブロックに分割された8×8画素のブロックが順に示されている。
すなわち、32×32画素のマクロブロックは、図23の上段に示される32×32画素、32×16画素、16×32画素、および16×16画素のブロックでの処理が可能である。
上段の右側に示される16×16画素のブロックは、H.264/AVC方式と同様に、中段に示される16×16画素、16×8画素、8×16画素、および8×8画素のブロックでの処理が可能である。
中段の右側に示される8×8画素のブロックは、H.264/AVC方式と同様に、下段に示される8×8画素、8×4画素、4×8画素、および4×4画素のブロックでの処理が可能である。
これらのブロックは、以下の3階層に分類することができる。すなわち、図23の上段に示される32×32画素、32×16画素、および16×32画素のブロックを第1階層と呼ぶ。上段の右側に示される16×16画素のブロック、並びに、中段に示される16×16画素、16×8画素、および8×16画素のブロックを、第2階層と呼ぶ。中段の右側に示される8×8画素のブロック、並びに、下段に示される8×8画素、8×4画素、4×8画素、および4×4画素のブロックを、第3階層と呼ぶ。
図23のような、階層構造を採用することにより、16×16画素ブロック以下に関しては、現在のH.264/AVC方式におけるマクロブロックと互換性を保ちながら、そのスーパーセットとして、より大きなブロックが定義されている。
[予測モードの選択]
さらに、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。画像符号化装置101においては、例えば、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択する方法が考えられる。この方法の場合、どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
High Complexity Modeにおけるコスト関数値は、以下の式(97)のように求めることができる。
Cost(Mode∈Ω)=D+λ×R ・・・(97)
式(97)において、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合である。また、Dは、当該予測モードModeで符号化した場合の、復号画像と入力画像の差分エネルギーである。さらに、λは、量子化パラメータの関数として与えられるLagrange未定乗数である。また、Rは、直交変換係数を含んだ、当該モードModeで符号化した場合の総符号量である。
つまり、High Complexity Modeでの符号化を行なうには、上記パラメータD及びRを算出するため、全ての候補モードModeにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
これに対してLow Complexity Modeにおけるコスト関数値は、以下の式(98)のように求めることができる。
Cost(Mode∈Ω)=D+QP2Quant(QP)×HeaderBit ・・・(98)
となる。式(98)において、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。また、QP2Quant(QP)は、量子化パラメータQPの関数として与えられる。さらに、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
すなわち、Low Complexity Modeにおいては、それぞれの候補モードModeに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
High Profileにおいては、例えば、4×4直交変換と、8×8直交変換との選択も、上述のHigh Complexity Mode若しくはLow Complexity Modeのいずれかに基づき行なわれる。
[詳細な構成例]
以上の画像符号化装置101においては、画像符号化処理に、適応ループフィルタ処理を適用する。画像符号化装置101は、動き予測・補償ループ内に適応ループフィルタ111を有し、Iピクチャの画像を、イントラ予測モード情報に応じてクラス分類し、クラス分類されたそれぞれのクラスに対して、最適フィルタ係数の算出およびフィルタ処理を行う。
ここで、イントラ予測モード情報には、実際には、図6乃至図17を参照して上述したように、マクロブロック毎に設定される予測ブロックサイズの情報と、動き予測ブロック毎に設定される同一予測ブロックサイズにおける複数種類の予測方法を表す予測モードの情報がある。
画像復号装置101においては、Iピクチャの画像については、イントラ予測モード情報のうち、マクロブロック毎の予測ブロックサイズの情報(すなわち、イントラ4×4、8×8、16×16のうちのどのモード)に応じてクラス分類が行われる。
以下に、適応ループフィルタ111の構成の詳細について説明する。適応ループフィルタ111においては、非特許文献1において提案されている方法に準じて、動き補償ループ内で適応フィルタ処理を行う。ただし、Iピクチャに対して、以下の処理を行う点が、非特許文献1と異なる。
すなわち、非特許文献1においては、画面全体を1つのクラスとして、ウィナーフィルタにより劣化を最小限にする処理が行われる。
これに対して、適応ループフィルタ111においては、Iピクチャに関しては、当該マクロブロックが、イントラ4×4、8×8、16×16のうちのどのモードで符号化されたかに関する情報に基づいて、平坦領域であるマクロブロックと、エッジまたはテクスチャ領域であるマクロブロックにクラス分類が行われる。そして、それぞれのクラスに対して、ウィナーフィルタにより劣化を最小限にする処理が行われる。
つまり、イントラ16×16モードは、画面内のフラットな領域(平坦領域)に対して用いられる傾向にあり、一方、エッジやテクスチャなどを含む領域については、イントラ4×4モードまたはイントラ8×8モードが用いられる傾向にある。
画面内のフラットな領域に対しては、ブロック歪みが生じやすく、エッジやテクスチャを含む領域に対しては、モスキート歪みが生じやすい。しかしながら、非特許文献1に提案された方法では、このような画面内の局所的な(ローカルな)歪みを低減することが困難であった。
そこで、適応ループフィルタ111においては、Iピクチャについて、各マクロブロックがどの予測ブロックサイズのモードによって符号化されたかに応じてクラス分類が行われ、それぞれのクラスに対してフィルタ係数の算出、適応フィルタ処理が行われる。
すなわち、画面内を平坦領域と、エッジ、テクスチャ領域とのクラスに分け、それぞれに対して、適応フィルタ処理が行われる。
これにより、符号化効率を向上させるただけでなく、画面内のローカルな歪みを低減することが可能になる。なお、平坦領域のブロック歪みとエッジ、テクスチャ領域のモスキート歪みが低減されるので、結果的に、画面全体の歪みが低減され、デブロックフィルタ21の処理を不要にすることも可能である。
また、画像の質を決めるIピクチャの画質が向上されるので、結果として、GOP全体の画質を向上させることができる。
さらに、適応ループフィルタ111においては、イントラ予測モード情報という符号化パラメータ情報を用いるため、クラス分類のためのフラグ情報(すなわち、どのクラスであるかということを識別するための情報)を復号側に送る必要がない。したがって、フラグ情報のオーバーヘッドにより符号化効率を低下させることがない。
以下においては、例えば、イントラ16×16により符号化されたマクロブロックが、平坦領域のクラスである第1のクラスに分類され、それ以外のイントラ予測モードにより符号化されたマクロブロックが、エッジ、テクスチャを含む領域のクラスである第2のクラスに分類される例を説明する。すなわち、H.264/AVC方式の符号化規格で規定されている通常マクロブロックのサイズである(最大の予測ブロックサイズ)である16×16よりも大きいか、小さいかに応じて、画像がクラス分類される。
なお、本発明の適用範囲は、これに限らず、例えば、イントラ4×4と、イントラ8×8と、イントラ16×16の3つのクラスに分類することも可能である。
また、イントラ予測モード情報のうちの上述した予測ブロックサイズ(イントラ予測モード情報)に限らず、動き予測ブロック毎の符号化パラメータである各予測ブロックサイズにおける、DC予測、Vertical予測、…などといった予測モードの種類によりクラス分類を行うことも可能である。
すなわち、例えば、Vertical(垂直)予測およびHorizontal(水平)予測は、0次オーダーホールドによる予測モードであり、モスキートノイズが生じやすいといえる。このため、エッジ・テクスチャ領域のクラスとして、Vertical予測およびHorizontal予測に符号化されたブロックもしくはマクロブロックを分類し、平坦領域のクラスとして、その他の予測モードで符号化されたブロックもしくはマクロブロックを分類し、適応フィルタ処理を行うようにしてもよい。
さらにまた、図23を参照して上述した、拡張されたマクロブロックサイズを用いたイントラピクチャに対しても、本発明を適用することが可能である。この場合、例えば、H.264/AVC方式の符号化規格で規定されている通常マクロブロックのサイズである(最大の予測ブロックサイズ)である16×16よりも大きいか、小さいかに応じて、画像がクラス分類される。すなわち、符号化規格で規格されている通常マクロブロックサイズよりも大きい、あるいは、符号化規格で規格されている通常マクロブロックサイズ以上のサイズの場合(32×32など)、画面内のフラットな領域(平坦領域)に対して用いられる傾向にあるため、平坦領域のクラスに分類することができる。
[適応ループフィルタの構成例]
図24は、入力されるピクチャがIピクチャである場合の適応ループフィルタ111の構成例を示すブロック図である。なお、Iピクチャ以外のピクチャの場合の適応ループフィルタ111の構成例の図示は、説明の便宜上省略する。
図24の例において、適応ループフィルタ111は、クラス分類部131、フィルタ係数算出部132−1および132−2、並びにフィルタ処理部133−1および133−2により構成されている。
デブロックフィルタ21からのデブロックフィルタ処理後の画素値がクラス分類部131に供給される。また、それぞれのマクロブロックが、イントラ4×4、8×8、16×16のいずれの予測モードで符号化されたかに関する情報が含まれるイントラ予測モード情報が、予測モードバッファ112からクラス分類部131に供給される。
クラス分類部131は、そのイントラ予測モード情報に応じて、デブロックフィルタ処理後の各マクロブロックの画素値を、第1のクラスに属するものと、第2のクラスに属するものに分類し、それぞれをフィルタ係数算出部132−1および132−2に供給する。なお、図24の例においては、上述したように、イントラ16×16により符号化されたマクロブロックが、平坦領域のクラスである第1のクラスに分類され、それ以外のイントラ予測モードにより符号化されたマクロブロックが、エッジ、テクスチャを含む領域のクラスである第2のクラスに分類される。
画面並べ替えバッファ12から、入力画像画素値が、フィルタ係数算出部132−1および132−2に供給される。フィルタ係数算出部132−1および132−2は、第1のクラスおよび第2のクラスに対する適応フィルタ係数を算出する。
フィルタ係数算出部132−1により算出された第1のクラスに対する適応フィルタ係数は、第1のクラスのデブロックフィルタ処理後の画素値とともに、フィルタ処理部133−1に供給される。フィルタ係数算出部132−2により算出された第2のクラスに対する適応フィルタ係数は、第2のクラスのデブロックフィルタ処理後の画素値とともに、フィルタ処理部133−2に供給される。また、算出された各クラスに対する適応フィルタ係数は、可逆符号化部16にも供給される。
フィルタ処理部133−1は、第1のクラスのデブロックフィルタ処理後の画素値に対して、第1のクラスに対する適応フィルタ係数を用いてフィルタ処理を行う。フィルタ処理部133−2は、第2のクラスのデブロックフィルタ処理後の画素値に対して、第2のクラスに対する適応フィルタ係数を用いてフィルタ処理を行う。適応フィルタ処理後の画素値は、それぞれ、フレームメモリ22に出力される。
[画像符号化装置の符号化処理の説明]
次に、図25のフローチャートを参照して、図5の画像符号化装置101の符号化処理について説明する。
ステップS11において、A/D変換部11は入力された画像をA/D変換する。ステップS12において、画面並べ替えバッファ12は、A/D変換部11より供給された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
画面並べ替えバッファ12から供給される処理対象の画像がイントラ処理されるブロックの画像である場合、参照される復号済みの画像がフレームメモリ22から読み出され、スイッチ23を介してイントラ予測部24に供給される。
これらの画像に基づいて、ステップS13において、イントラ予測部24は処理対象のブロックの画素を、候補となる全てのイントラ予測モードでイントラ予測する。なお、参照される復号済みの画素としては、デブロックフィルタ21と適応ループフィルタ111によりフィルタリングされていない画素が用いられる。
ステップS13におけるイントラ予測処理の詳細は、図26を参照して後述するが、この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードが選択され、最適イントラ予測モードのイントラ予測により生成された予測画像とそのコスト関数値が予測画像選択部26に供給される。
画面並べ替えバッファ12から供給される処理対象の画像がインター処理される画像である場合、参照される画像がフレームメモリ22から読み出され、スイッチ23を介して動き予測・補償部25に供給される。これらの画像に基づいて、ステップS14において、動き予測・補償部25は、動き予測・補償処理を行う。
ステップS14における動き予測・補償処理の詳細は、図27を参照して後述する。この処理により、候補となる全てのインター予測モードで動き予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出され、算出したコスト関数値に基づいて、最適インター予測モードが決定される。そして、最適インター予測モードにより生成された予測画像とそのコスト関数値が予測画像選択部26に供給される。
ステップS15において、予測画像選択部26は、イントラ予測部24および動き予測・補償部25より出力された各コスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの一方を、最適予測モードに決定する。そして、予測画像選択部26は、決定した最適予測モードの予測画像を選択し、演算部13,20に供給する。この予測画像は、後述するステップS16,S21の演算に利用される。
なお、この予測画像の選択情報は、イントラ予測部24または動き予測・補償部25に供給される。最適イントラ予測モードの予測画像が選択された場合、イントラ予測部24は、最適イントラ予測モードを示す情報(すなわち、イントラ予測モード情報)を、可逆符号化部16に供給する。
最適インター予測モードの予測画像が選択された場合、動き予測・補償部25は、最適インター予測モードを示す情報と、さらに、必要に応じて、最適インター予測モードに応じた情報を可逆符号化部16に出力する。最適インター予測モードに応じた情報としては、動きベクトル情報や参照フレーム情報などがあげられる。
ステップS16において、演算部13は、ステップS12で並び替えられた画像と、ステップS15で選択された予測画像との差分を演算する。予測画像は、インター予測する場合は動き予測・補償部25から、イントラ予測する場合はイントラ予測部24から、それぞれ予測画像選択部26を介して演算部13に供給される。
差分データは元の画像データに較べてデータ量が小さくなっている。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
ステップS17において、直交変換部14は演算部13から供給された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
ステップS18において、量子化部15は変換係数を量子化する。この量子化に際しては、後述するステップS30の処理で説明されるように、レートが制御される。
以上のようにして量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS19において、逆量子化部18は量子化部15により量子化された変換係数を量子化部15の特性に対応する特性で逆量子化する。ステップS20において、逆直交変換部19は逆量子化部18により逆量子化された変換係数を直交変換部14の特性に対応する特性で逆直交変換する。
ステップS21において、演算部20は、予測画像選択部26を介して入力される予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部13への入力に対応する画像)を生成する。
ステップS22においてデブロックフィルタ21は、演算部20より出力された画像に対して、デブロックフィルタ処理を行う。これによりブロック歪みが除去される。デブロックフィルタ21からの復号画像は、適応ループフィルタ111に出力される。
ステップS23において、適応ループフィルタ111は、デブロックフィルタ21からの復号画像がIピクチャであるか否かを判定する。ステップS23において、Iピクチャであると判定された場合、ステップS24において、適応ループフィルタ111は、クラス分類係数算出処理を行う。このクラス分類係数算出処理の詳細は、図28を参照して後述される。なお、この場合の適応ループフィルタ111は、図24に示したように構成される。
ステップS23の処理により、イントラ予測モードに応じてクラス分類が行われ、各クラスに対して適応フィルタ係数が算出される。そして、算出された適応フィルタ係数が、各クラスに分類されたデブロックフィルタ処理後の画素値とともに、対応するフィルタ処理部133−1および133−2に供給される。
一方、ステップS23において、Iピクチャではないと判定された場合、ステップS25に進む。ステップS25において、適応ループフィルタ111は、画面全体に対して、1つの適応フィルタ係数を算出する。なお、Iピクチャではない場合の適応ループフィルタ111の詳細な構成例の図示は省略されている。
ステップS24またはS25で算出された適応ループフィルタ係数の情報は、可逆符号化部16に供給され、後述するステップS28において、可逆符号化部16により符号化されて、圧縮画像のヘッダに付加される。
ステップS26において、適応ループフィルタ111は、算出された適応フィルタ係数を用いて、デブロックフィルタ処理後の画素値に対して、適応ループフィルタ処理を行う。適応フィルタ処理後の画素値は、フレームメモリ22に出力される。
すなわち、特に、Iピクチャの場合には、フィルタ処理部133−1は、第1のクラスのデブロックフィルタ処理後の画素値に対して、第1のクラスに対する適応フィルタ係数を用いてフィルタ処理を行う。フィルタ処理部133−2は、第2のクラスのデブロックフィルタ処理後の画素値に対して、第2のクラスに対する適応フィルタ係数を用いてフィルタ処理を行う。
ステップS27においてフレームメモリ22は、フィルタリングされた画像を記憶する。なお、フレームメモリ22にはデブロックフィルタ21と適応ループフィルタ111によりフィルタ処理されていない画像も演算部20から供給され、記憶される。
一方、上述したステップS18において量子化された変換係数は、可逆符号化部16にも供給される。ステップS28において、可逆符号化部16は量子化部15より出力された量子化された変換係数を符号化する。すなわち、差分画像が可変長符号化、算術符号化等の可逆符号化され、圧縮される。
また、このとき、上述したステップS24またはS25において可逆符号化部16に入力された適応フィルタ係数、並びに、上述したステップS15において可逆符号化部16に入力された、イントラ予測部24からのイントラ予測モード情報、または、動き予測・補償部25からの最適インター予測モードに応じた情報なども符号化され、ヘッダ情報に付加される。
例えば、インター予測モードを示す情報は、マクロブロック毎に符号化される。動きベクトル情報や参照フレーム情報は、対象となるブロック毎に符号化される。フィルタ係数は、スライス毎あるいはピクチャパラメータセット毎に符号化される。
ステップS29において蓄積バッファ17は差分画像を圧縮画像として蓄積する。蓄積バッファ17に蓄積された圧縮画像が適宜読み出され、伝送路を介して復号側に伝送される。
ステップS30においてレート制御部27は、蓄積バッファ17に蓄積された圧縮画像に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15の量子化動作のレートを制御する。
[イントラ予測処理の説明]
次に、図26のフローチャートを参照して、図25のステップS13におけるイントラ予測処理を説明する。なお、図26の例においては、輝度信号の場合を例として説明する。
イントラ予測部24は、ステップS41において、4×4画素、8×8画素、および16×16画素の各イントラ予測モードに対してイントラ予測を行う。
輝度信号のイントラ予測モードには、9種類の4×4画素および8×8画素のブロック単位、並びに4種類の16×16画素のマクロブロック単位の予測モードがあり、色差信号のイントラ予測モードには、4種類の8×8画素のブロック単位の予測モードがある。色差信号のイントラ予測モードは、輝度信号のイントラ予測モードと独立に設定が可能である。輝度信号の4×4画素および8×8画素のイントラ予測モードについては、4×4画素および8×8画素の輝度信号のブロック毎に1つのイントラ予測モードが定義される。輝度信号の16×16画素のイントラ予測モードと色差信号のイントラ予測モードについては、1つのマクロブロックに対して1つの予測モードが定義される。
具体的には、イントラ予測部24は、処理対象のブロックの画素を、フレームメモリ22から読み出され、スイッチ23を介して供給される復号済みの画像を参照して、イントラ予測する。このイントラ予測処理が、各イントラ予測モードで行われることで、各イントラ予測モードでの予測画像が生成される。なお、参照される復号済みの画素としては、デブロックフィルタ21と適応ループフィルタ111によりフィルタリングされていない画素が用いられる。
イントラ予測部24は、ステップS42において、4×4画素、8×8画素、および16×16画素の各イントラ予測モードに対するコスト関数値を算出する。ここで、コスト関数値を求めるためのコスト関数としては、式(97)または式(98)のコスト関数が用いられる。
イントラ予測部24は、ステップS43において、4×4画素、8×8画素、および16×16画素の各イントラ予測モードに対して、それぞれ最適モードを決定する。すなわち、上述したように、イントラ4×4予測モードおよびイントラ8×8予測モードの場合には、予測モードの種類が9種類あり、イントラ16×16予測モードの場合には、予測モードの種類が4種類ある。したがって、イントラ予測部24は、ステップS42において算出されたコスト関数値に基づいて、それらの中から、最適イントラ4×4予測モード、最適イントラ8×8予測モード、最適イントラ16×16予測モードを決定する。
イントラ予測部24は、ステップS44において、4×4画素、8×8画素、および16×16画素の各イントラ予測モードに対して決定された各最適モードの中から、ステップS42において算出されたコスト関数値に基づいて、最適イントラ予測モードを選択する。すなわち、4×4画素、8×8画素、および16×16画素に対して決定された各最適モードの中から、コスト関数値が最小値であるモードを、最適イントラ予測モードとして選択する。そして、イントラ予測部24は、最適イントラ予測モードで生成された予測画像とそのコスト関数値とを、予測画像選択部26に供給する。
[動き予測・補償処理の説明]
次に、図27のフローチャートを参照して、図25のステップS14の動き予測・補償処理について説明する。
動き予測・補償部25は、ステップS61において、16×16画素乃至4×4画素からなる8種類の各インター予測モードに対して動きベクトルと参照画像をそれぞれ決定する。すなわち、各インター予測モードの処理対象のブロックについて、動きベクトルと参照画像がそれぞれ決定される。
動き予測・補償部25は、ステップS62において、16×16画素乃至4×4画素からなる8種類の各インター予測モードについて、ステップS61で決定された動きベクトルに基づいて、参照画像に動き予測と補償処理を行う。この動き予測と補償処理により、各インター予測モードでの予測画像が生成される。
動き予測・補償部25は、ステップS63において、16×16画素乃至4×4画素からなる8種類の各インター予測モードに対して、上述した式(97)または式(98)で示されるコスト関数値を算出する。
ステップS64において、動き予測・補償部25は、ステップS63において算出されたインター予測モードに対してのコスト関数値を比較し、最小値を与える予測モードを、最適インター予測モードとして決定する。そして、動き予測・補償部25は、最適インター予測モードで生成された予測画像とそのコスト関数値を、予測画像選択部26に供給する。
[クラス分類係数算出処理の説明]
次に、図28のフローチャートを参照して、図25のステップS24のクラス分類係数算出処理について説明する。なお、図28のクラス分類係数算出処理は、図24のIピクチャの場合の適応ループフィルタ111により行われる処理である。
デブロックフィルタ21からのデブロックフィルタ処理後の画素値がクラス分類部131に供給される。また、それぞれのマクロブロックが、イントラ4×4、8×8、16×16のいずれの予測モードで符号化されたかに関する情報が含まれるイントラ予測モード情報が予測モードバッファ112からクラス分類部131に供給される。
ステップS81において、クラス分類部131は、それぞれのマクロブロックに対するイントラ予測モードの情報を取得する。
ステップS82において、クラス分類部131は、取得したイントラ予測モードの情報を参照し、1つのマクロブロックに対するイントラ予測モードが、イントラ16×16予測モードであるか否かを判定する。ステップS82において、イントラ16×16予測モードであると判定された場合、ステップS83において、クラス分類部131は、デブロックフィルタ処理後の画素値を、第1のクラスに分類する。すなわち、イントラ16×16予測モードであるとされたマクロブロックの画素値は、平坦部領域クラスである第1のクラスに分類される。
ステップS82において、イントラ16×16予測モードではないと判定された場合、ステップS84において、クラス分類部131は、デブロックフィルタ処理後の画素値を、第2のクラスに分類する。すなわち、イントラ16×16予測モードではなく、イントラ8×8、またはイントラ4×4予測モードであるとされたマクロブロックの画素値は、エッジ・テクスチャ領域のクラスである第2のクラスに分類される。
ステップS83またはS84の後、処理は、ステップS85に進む。ステップS85において、クラス分類部131は、画面を構成するすべてのマクロブロックに対する処理が終了したか否かを判定し、終了していないと判定した場合、ステップS82に戻り、それ以降の処理を繰り返す。
ステップS85において、すべてのマクロブロックに対する処理が終了したと判定された場合、クラス分類部131は、各クラスに分類されたマクロブロックの画素値を、各フィルタ係数算出部132−1および132−2に供給し、処理は、ステップS86に進む。
すなわち、クラス分類部131は、第1のクラスに分類されたマクロブロックの画素値を、フィルタ係数算出部132−1に供給し、第2のクラスに分類されたマクロブロックの画素値を、フィルタ係数算出部132−2に供給する。
ステップS86において、フィルタ係数算出部132−1および132−2は、第1のクラスおよび第2のクラスに対する適応フィルタ係数を算出する。
すなわち、フィルタ係数算出部132−1は、画面並べ替えバッファ12からの入力画像画素値と、第1のクラスのデブロックフィルタ処理後の画素値との残差を最小とするよう、第1のクラスに対する適応フィルタ係数を算出する。算出された第1のクラスに対する適応フィルタ係数は、第1のクラスのデブロックフィルタ処理後の画素値とともに、フィルタ処理部133−1に供給される。
また、フィルタ係数算出部132−2は、画面並べ替えバッファ12からの入力画像画素値と、第2のクラスのデブロックフィルタ処理後の画素値との残差を最小とするよう、第2のクラスに対する適応フィルタ係数を算出する。算出された第2のクラスに対する適応フィルタ係数は、第2のクラスのデブロックフィルタ処理後の画素値とともに、フィルタ処理部133−2に供給される。各クラスの適応フィルタ係数は、さらに、可逆符号化部16にも供給される。
以上のように、フィルタ処理を行う画素がIピクチャである場合、その画素を、どのイントラ予測ブロックサイズのモードで符号化されたかに関する情報に応じて、平坦部領域のマクロブロックのクラスと、エッジまたはテクスチャが含まれる領域のマクロブロックのクラスとに分類し、クラス毎に適応ループフィルタ処理を行うようにした。
これにより、画面内のローカルな歪みを低減することが可能になる。また、Iピクチャの画質が情報されるので、結果として、GOP全体の画質を向上させることができる。
さらに、イントラ予測モードの情報は、復号側に送る符号化情報(符号化パラメータ)であるので、クラス分類のための情報を復号側に送る必要がなく、クラス分類のための情報を送ることによる符号化効率の低下を防ぐことができる。
符号化された圧縮画像は、所定の伝送路を介して伝送され、画像復号装置により復号される。
[画像復号装置の構成例]
図29は、本発明を適用した画像処理装置としての画像復号装置の一実施の形態の構成を表している。
図29の画像復号装置201は、蓄積バッファ41、可逆復号部42、逆量子化部43、逆直交変換部44、演算部45、デブロックフィルタ46、画面並べ替えバッファ47、D/A変換部48、フレームメモリ49、スイッチ50、イントラ予測部51、動き補償部52、およびスイッチ53を備える点で、図2の画像復号装置31と共通している。
また、図23の画像復号装置201は、適応ループフィルタ211および予測モードバッファ212が追加された点で、図2の画像復号装置31と異なっている。
すなわち、可逆復号部42は、図2の可逆復号部42と同様に、蓄積バッファ41より供給された、図5の可逆符号化部16により符号化された情報を、可逆符号化部16の符号化方式に対応する方式で復号する。このとき、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モードを示す情報)、第1のクラスおよび第2のクラスの適応フィルタ係数なども復号される。
動きベクトル情報および参照フレーム情報は、ブロック毎に動き補償部52に供給される。予測モード情報は、マクロブロック毎にイントラ予測部51および動き補償部52の対応する部に供給される。各クラスの適応フィルタ係数は、スライス毎またはピクチャパラメータセット毎に適応ループフィルタ211に供給される。
適応ループフィルタ211は、デブロックフィルタ46の後、フレームメモリ49の前に設けられている。すなわち、適応ループフィルタ211は、演算部45、デブロックフィルタ46、フレームメモリ49、スイッチ50、動き補償部52、およびスイッチ53からなる動き補償ループ内に設けられている。すなわち、動き補償ループ内では、画像がループして用いられている。
適応ループフィルタ211は、可逆復号部42から供給された適応フィルタ係数を用いて、デブロックフィルタ46からの復号画像にフィルタ処理を行う。このフィルタとして、例えば、ウィナーフィルタ(Wiener Filter)が用いられる。
ただし、適応ループフィルタ211は、デブロックフィルタ46からの復号画像を、予測モードバッファ212からのイントラ予測モード情報に応じたクラスに分類する。適応ループフィルタ211は、分類されたクラス毎に、可逆復号部42から供給された適応フィルタ係数を用いて、フィルタ処理をそれぞれ行い、フィルタ処理後の画像を、画面並べ替えバッファ47およびフレームメモリ49に出力する。
予測モードバッファ212は、イントラ予測部51により決定されたイントラ予測モード情報を格納している。
なお、図5の適応ループフィルタ111においては、各クラスの画素値が用いられて適応フィルタ係数が算出され、算出されたフィルタ係数が用いられて、各クラスの画素値に対してフィルタ処理が行われる。これに対して、図29の適応ループフィルタ211においては、圧縮画像のヘッダからスライス毎またはピクチャパラメータセット毎に取得されるフィルタ係数が用いられて、各クラスの画素値に対してフィルタ処理が行われる。
[適応ループフィルタの構成例]
図30は、Iピクチャの場合の適応ループフィルタ211の構成例を示すブロック図である。なお、図24の場合と同様に、Iピクチャ以外のピクチャの場合の適応ループフィルタ211の構成例の図示は、説明の便宜上省略する。
図30の例において、適応ループフィルタ211は、フィルタ係数バッファ231−1および231−2、クラス分類部232、並びにフィルタ処理部233−1および233−2により構成されている。
可逆復号部42は、ピクチャパラメータセットまたはスライスヘッダから得られる、第1のクラスおよび第2のクラスに対する適応フィルタ係数を、フィルタ係数バッファ231−1および231−2にそれぞれ供給してくる。
フィルタ係数バッファ231−1は、第1のクラスに対する適応フィルタ係数を蓄積し、フィルタ処理部233−1に供給する。フィルタ係数バッファ231−2は、第2のクラスに対する適応フィルタ係数を蓄積し、フィルタ処理部233−2に供給する。
デブロックフィルタ46からのデブロックフィルタ処理後の画素値が、クラス分類部232に供給される。また、予測モードバッファ212からのそれぞれのマクロブロックが、イントラ4×4、8×8、16×16のいずれの予測モードで符号化されたかに関する情報が含まれるイントラ予測モード情報が、クラス分類部232に供給される。
クラス分類部232は、イントラ予測モード情報を参照し、デブロックフィルタ処理後の画素値を、第1のクラスに属するものと、第2のクラスに属するものに分類し、それぞれをフィルタ処理部233−1および233−2に供給する。すなわち、イントラ16×16により符号化されたマクロブロックが、平坦領域のクラスである第1のクラスに分類され、それ以外のイントラ予測モードにより符号化されたマクロブロックが、エッジ、テクスチャを含む領域のクラスである第2のクラスに分類される。
フィルタ処理部233−1は、フィルタ係数バッファ231−1からの第1のクラスに対する適応フィルタ係数を用いて、第1のクラスに分類された画素値に対して、フィルタ処理を行う。フィルタ処理部233−2は、フィルタ係数バッファ231−2からの第2のクラスに対する適応フィルタ係数を用いて、第2のクラスに分類された画素値に対して、フィルタ処理を行う。
適応フィルタ処理後の各画素値は、画面並べ替えバッファ47およびフレームメモリ49に出力される。
[画像復号装置の復号処理の説明]
次に、図31のフローチャートを参照して、画像復号装置201が実行する復号処理について説明する。
ステップS131において、蓄積バッファ41は伝送されてきた画像を蓄積する。ステップS132において、可逆復号部42は、蓄積バッファ41から供給される圧縮画像を復号する。すなわち、図5の可逆符号化部16により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。
このとき、動きベクトル情報、参照フレーム情報、予測モード情報(イントラ予測モード、またはインター予測モードを示す情報)、各クラスに対する適応フィルタ係数なども復号される。
すなわち、予測モード情報がイントラ予測モード情報である場合、予測モード情報は、イントラ予測部51に供給される。予測モード情報がインター予測モード情報である場合、予測モード情報と対応する動きベクトル情報および参照フレーム情報は、動き補償部52に供給される。各クラスに対する適応フィルタ係数は、スライスまたはピクチャパラメータセット毎に復号され、適応ループフィルタ211に供給される。
ステップS133において、イントラ予測部51または動き補償部52は、可逆復号部42から供給される予測モード情報に対応して、それぞれ、予測画像生成処理を行う。
すなわち、可逆復号部42からイントラ予測モード情報が供給された場合、イントラ予測部51は、イントラ予測モードのイントラ予測処理を行い、イントラ予測画像を生成する。可逆復号部42からインター予測モード情報が供給された場合、動き補償部52は、インター予測モードの動き予測・補償処理を行い、インター予測画像を生成する。
ステップS133における予測画像生成処理の詳細は、図32を参照して後述するが、この処理により、イントラ予測部51により生成された予測画像(イントラ予測画像)、または動き補償部52により生成された予測画像(インター予測画像)がスイッチ53に供給される。
ステップS134において、スイッチ53は予測画像を選択する。すなわち、イントラ予測部51により生成された予測画像、または動き補償部52により生成された予測画像が供給される。したがって、供給された予測画像が選択されて演算部45に供給され、後述するステップS137において逆直交変換部44の出力と加算される。
上述したステップS132において、可逆復号部42により復号された変換係数は、逆量子化部43にも供給される。ステップS135において、逆量子化部43は可逆復号部42により復号された変換係数を、図5の量子化部15の特性に対応する特性で逆量子化する。
ステップS136において逆直交変換部44は、逆量子化部43により逆量子化された変換係数を、図5の直交変換部14の特性に対応する特性で逆直交変換する。これにより図5の直交変換部14の入力(演算部13の出力)に対応する差分情報が復号されたことになる。
ステップS137において、演算部45は、上述したステップS134の処理で選択され、スイッチ53を介して入力される予測画像を差分情報と加算する。これにより元の画像が復号される。ステップS138においてデブロックフィルタ46は、演算部45より出力された画像に対して、デブロックフィルタ処理を行う。これにより、画面全体におけるブロック歪みが除去される。
ステップS139において、適応ループフィルタ211は、デブロックフィルタ21からの復号画像がIピクチャであるか否かを判定する。ステップS139において、Iピクチャであると判定された場合、ステップS140において、適応ループフィルタ111は、クラス分類フィルタ処理を行う。このクラス分類フィルタ処理の詳細は、図33を参照して後述される。なお、この場合の適応ループフィルタ211は、図30に示したように構成される。
ステップS140の処理により、イントラ予測モードに応じてクラス分類が行われ、各クラスに対して適応フィルタ処理が行われる。適応フィルタ処理後の画素値は、画面並べ替えバッファ47およびフレームメモリ49に出力される。
一方、ステップS139において、Iピクチャではないと判定された場合、ステップS141に進む。ステップS141において、適応ループフィルタ211は、画面の全画素値に対して、1つの適応フィルタ係数を用いて、適応フィルタ処理を行う。この場合の適応フィルタ係数も、可逆復号部42によりスライスヘッダまたはピクチャパラメータセットから得られて、適応ループフィルタ211に供給されるものである。適応フィルタ処理後の画素値は、画面並べ替えバッファ47およびフレームメモリ49に出力される。なお、Iピクチャではない場合の適応ループフィルタ211の詳細な構成例の図示は省略されている。
ステップS142においてフレームメモリ49は、適応フィルタリングされた画像を記憶する。
ステップS143において、画面並べ替えバッファ47は、適応ループフィルタ211後の画像の並べ替えを行う。すなわち画像符号化装置101の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
ステップS144において、D/A変換部48は、画面並べ替えバッファ47からの画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
[画像復号装置の予測画像生成処理の説明]
次に、図32のフローチャートを参照して、図31のステップS133の予測画像生成処理を説明する。
イントラ予測部51は、ステップS171において、対象ブロックがイントラ符号化されているか否かを判定する。可逆復号部42からイントラ予測モード情報がイントラ予測部51に供給されると、イントラ予測部51は、ステップS171において、対象ブロックがイントラ符号化されていると判定し、処理は、ステップS172に進む。このとき、イントラ予測部51は、このイントラ予測モード情報を、予測モードバッファ212に供給する。
イントラ予測部51は、ステップS172において、イントラ予測モード情報を取得し、ステップS173において、イントラ予測を行い、イントラ予測画像を生成する。
すなわち、処理対象の画像がイントラ処理される画像である場合、必要な画像がフレームメモリ49から読み出され、スイッチ50を介してイントラ予測部51に供給される。ステップS173において、イントラ予測部51は、ステップS172で取得したイントラ予測モード情報に従ってイントラ予測し、予測画像を生成する。生成した予測画像は、スイッチ53に出力される。
一方、ステップS171において、イントラ符号化されていないと判定された場合、処理は、ステップS174に進む。
処理対象の画像がインター処理される画像である場合、可逆復号部42からインター予測モード情報、参照フレーム情報、動きベクトル情報が動き補償部52に供給される。
ステップS174において、動き補償部52は、可逆復号部42からの予測モード情報などを取得する。すなわち、動き(インター)予測モード情報、参照フレーム情報、動きベクトル情報が取得される。
ステップS175において、動き補償部52は、動きベクトル情報を用いて、フレームメモリ49からの参照画像に補償を行い、インター予測画像を生成する。生成された予測画像は、スイッチ53を介して、演算部45に供給され、図31のステップS137において逆直交変換部44の出力と加算される。
[画像復号装置のクラス分類フィルタ処理の説明]
次に、図33のフローチャートを参照して、図31のステップS140のクラス分類フィルタ処理について説明する。
可逆復号部42は、ピクチャパラメータセットまたはスライスヘッダから得られる、第1のクラスおよび第2のクラスに対する適応フィルタ係数を、フィルタ係数バッファ231−1および231−2にそれぞれ供給してくる。
フィルタ係数バッファ231−1は、第1のクラスに対する適応フィルタ係数を蓄積し、フィルタ処理部233−1に供給する。フィルタ係数バッファ231−2は、第2のクラスに対する適応フィルタ係数を蓄積し、フィルタ処理部233−2に供給する。
ステップS191において、フィルタ処理部233−1および233−2は、それぞれ、フィルタ係数バッファ231−1および231−2からの、それぞれのクラスに対する適応フィルタ係数を受け取る。
また、可逆復号部42からの各マクロブロックに対するイントラ予測モードの情報が、イントラ予測部51および予測モードバッファ212を介して、クラス分類部232に供給される。
ステップS192において、クラス分類部232は、それぞれのマクロブロックが、イントラ4×4、8×8、16×16のいずれの予測モードで符号化されたかに関する情報が含まれるイントラ予測モードの情報を受け取る。
ステップS193において、クラス分類部232は、受け取ったイントラ予測モードの情報を参照して、各マクロブロックのイントラ予測モードが、イントラ16×16予測モードであるか否かを判定する。ステップS193において、イントラ16×16予測モードであると判定した場合、ステップS194において、クラス分類部232は、デブロックフィルタ処理後の画素値を、第1のクラスに分類する。すなわち、イントラ16×16予測モードであるとされたマクロブロックの画素値は、平坦部領域クラスである第1のクラスに分類される。クラス分類部232は、第1のクラスに分類したマクロブロックの画素値を、フィルタ処理部233−1に供給する。
ステップS195において、フィルタ処理部233−1は、第1のクラスについて適応フィルタ処理を行う。すなわち、フィルタ処理部233−1は、クラス分類部232により第1のクラスに分類されたマクロブロックの画素値に対して、フィルタ係数バッファ231−1からの第1のクラスに対する適応フィルタ係数を用いて、フィルタ処理を行う。この適応フィルタ処理後の画素値は、画面並べ替えバッファ47およびフレームメモリ49に供給される。
また、ステップS193において、イントラ16×16予測モードではないと判定した場合、ステップS196において、クラス分類部232は、デブロックフィルタ処理後の画素値を、第2のクラスに分類する。すなわち、イントラ16×16予測モードではなく、イントラ8×8、またはイントラ4×4予測モードであるとされたマクロブロックの画素値は、エッジ・テクスチャ領域のクラスである第2のクラスに分類される。クラス分類部232は、第2のクラスに分類したマクロブロックの画素値を、フィルタ処理部233−2に供給する。
ステップS197において、フィルタ処理部233−2は、第2のクラスについて適応フィルタ処理を行う。すなわち、フィルタ処理部233−2は、クラス分類部232により第2のクラスに分類されたマクロブロックの画素値に対して、フィルタ係数バッファ231−2からの第2のクラスに対する適応フィルタ係数を用いて、フィルタ処理を行う。この適応フィルタ処理後の画素値は、画面並べ替えバッファ47およびフレームメモリ49に供給される。
以上のように、画像符号化装置101および画像復号装置201においては、Iピクチャの場合、Iピクチャの画像が、イントラ予測モードに応じたクラスに分類され、クラス毎に、適応ループフィルタ処理が行われる。
これにより、画面全体における画質劣化を最小限にするとともに、画面の平坦部、およびテクスチャなどを含む領域のそれぞれで生じてしまうローカルな画質劣化も改善することができる。この結果、符号化効率が改善される。
以上においては、符号化方式としてH.264/AVC方式をベースに用いるようにしたが、本発明はこれに限らず、複数のブロックサイズのイントラ予測モードを有し、また、動き予測・補償ループ内に適応フィルタを含む、その他の符号化方式/復号方式を適用することができる。
なお、本発明は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本発明は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本発明は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
[パーソナルコンピュータの構成例]
図34は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)251、ROM(Read Only Memory)252、RAM(Random Access Memory)253は、バス254により相互に接続されている。
バス254には、さらに、入出力インタフェース255が接続されている。入出力インタフェース255には、入力部256、出力部257、記憶部258、通信部259、およびドライブ260が接続されている。
入力部256は、キーボード、マウス、マイクロホンなどよりなる。出力部257は、ディスプレイ、スピーカなどよりなる。記憶部258は、ハードディスクや不揮発性のメモリなどよりなる。通信部259は、ネットワークインタフェースなどよりなる。ドライブ260は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア261を駆動する。
以上のように構成されるコンピュータでは、CPU251が、例えば、記憶部258に記憶されているプログラムを入出力インタフェース255及びバス254を介してRAM253にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU251)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア261に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア261をドライブ260に装着することにより、入出力インタフェース255を介して、記憶部258にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部259で受信し、記憶部258にインストールすることができる。その他、プログラムは、ROM252や記憶部258に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、上述した画像符号化装置101や画像復号装置201は、任意の電子機器に適用することができる。以下にその例について説明する。
[テレビジョン受像機の構成例]
図35は、本発明を適用した画像復号装置を用いるテレビジョン受像機の主な構成例を示すブロック図である。
図35に示されるテレビジョン受像機300は、地上波チューナ313、ビデオデコーダ315、映像信号処理回路318、グラフィック生成回路319、パネル駆動回路320、および表示パネル321を有する。
地上波チューナ313は、地上アナログ放送の放送波信号を、アンテナを介して受信し、復調し、映像信号を取得し、それをビデオデコーダ315に供給する。ビデオデコーダ315は、地上波チューナ313から供給された映像信号に対してデコード処理を施し、得られたデジタルのコンポーネント信号を映像信号処理回路318に供給する。
映像信号処理回路318は、ビデオデコーダ315から供給された映像データに対してノイズ除去などの所定の処理を施し、得られた映像データをグラフィック生成回路319に供給する。
グラフィック生成回路319は、表示パネル321に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成し、生成した映像データや画像データをパネル駆動回路320に供給する。また、グラフィック生成回路319は、項目の選択などにユーザにより利用される画面を表示するための映像データ(グラフィック)を生成し、それを番組の映像データに重畳したりすることによって得られた映像データをパネル駆動回路320に供給するといった処理も適宜行う。
パネル駆動回路320は、グラフィック生成回路319から供給されたデータに基づいて表示パネル321を駆動し、番組の映像や上述した各種の画面を表示パネル321に表示させる。
表示パネル321はLCD(Liquid Crystal Display)などよりなり、パネル駆動回路320による制御に従って番組の映像などを表示させる。
また、テレビジョン受像機300は、音声A/D(Analog/Digital)変換回路314、音声信号処理回路322、エコーキャンセル/音声合成回路323、音声増幅回路324、およびスピーカ325も有する。
地上波チューナ313は、受信した放送波信号を復調することにより、映像信号だけでなく音声信号も取得する。地上波チューナ313は、取得した音声信号を音声A/D変換回路314に供給する。
音声A/D変換回路314は、地上波チューナ313から供給された音声信号に対してA/D変換処理を施し、得られたデジタルの音声信号を音声信号処理回路322に供給する。
音声信号処理回路322は、音声A/D変換回路314から供給された音声データに対してノイズ除去などの所定の処理を施し、得られた音声データをエコーキャンセル/音声合成回路323に供給する。
エコーキャンセル/音声合成回路323は、音声信号処理回路322から供給された音声データを音声増幅回路324に供給する。
音声増幅回路324は、エコーキャンセル/音声合成回路323から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ325から出力させる。
さらに、テレビジョン受像機300は、デジタルチューナ316およびMPEGデコーダ317も有する。
デジタルチューナ316は、デジタル放送(地上デジタル放送、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタル放送)の放送波信号を、アンテナを介して受信し、復調し、MPEG-TS(Moving Picture Experts Group-Transport Stream)を取得し、それをMPEGデコーダ317に供給する。
MPEGデコーダ317は、デジタルチューナ316から供給されたMPEG-TSに施されているスクランブルを解除し、再生対象(視聴対象)になっている番組のデータを含むストリームを抽出する。MPEGデコーダ317は、抽出したストリームを構成する音声パケットをデコードし、得られた音声データを音声信号処理回路322に供給するとともに、ストリームを構成する映像パケットをデコードし、得られた映像データを映像信号処理回路318に供給する。また、MPEGデコーダ317は、MPEG-TSから抽出したEPG(Electronic Program Guide)データを図示せぬ経路を介してCPU332に供給する。
テレビジョン受像機300は、このように映像パケットをデコードするMPEGデコーダ317として、上述した画像復号装置201を用いる。したがって、MPEGデコーダ317は、画像復号装置201の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
MPEGデコーダ317から供給された映像データは、ビデオデコーダ315から供給された映像データの場合と同様に、映像信号処理回路318において所定の処理が施される。そして、所定の処理が施された映像データは、グラフィック生成回路319において、生成された映像データ等が適宜重畳され、パネル駆動回路320を介して表示パネル321に供給され、その画像が表示される。
MPEGデコーダ317から供給された音声データは、音声A/D変換回路314から供給された音声データの場合と同様に、音声信号処理回路322において所定の処理が施される。そして、所定の処理が施された音声データは、エコーキャンセル/音声合成回路323を介して音声増幅回路324に供給され、D/A変換処理や増幅処理が施される。その結果、所定の音量に調整された音声がスピーカ325から出力される。
また、テレビジョン受像機300は、マイクロホン326、およびA/D変換回路327も有する。
A/D変換回路327は、音声会話用のものとしてテレビジョン受像機300に設けられるマイクロホン326により取り込まれたユーザの音声の信号を受信する。A/D変換回路327は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データをエコーキャンセル/音声合成回路323に供給する。
エコーキャンセル/音声合成回路323は、テレビジョン受像機300のユーザ(ユーザA)の音声のデータがA/D変換回路327から供給されている場合、ユーザAの音声データを対象としてエコーキャンセルを行う。そして、エコーキャンセル/音声合成回路323は、エコーキャンセルの後、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路324を介してスピーカ325より出力させる。
さらに、テレビジョン受像機300は、音声コーデック328、内部バス329、SDRAM(Synchronous Dynamic Random Access Memory)330、フラッシュメモリ331、CPU332、USB(Universal Serial Bus) I/F333、およびネットワークI/F334も有する。
A/D変換回路327は、音声会話用のものとしてテレビジョン受像機300に設けられるマイクロホン326により取り込まれたユーザの音声の信号を受信する。A/D変換回路327は、受信した音声信号に対してA/D変換処理を施し、得られたデジタルの音声データを音声コーデック328に供給する。
音声コーデック328は、A/D変換回路327から供給された音声データを、ネットワーク経由で送信するための所定のフォーマットのデータに変換し、内部バス329を介してネットワークI/F334に供給する。
ネットワークI/F334は、ネットワーク端子335に装着されたケーブルを介してネットワークに接続される。ネットワークI/F334は、例えば、そのネットワークに接続される他の装置に対して、音声コーデック328から供給された音声データを送信する。また、ネットワークI/F334は、例えば、ネットワークを介して接続される他の装置から送信される音声データを、ネットワーク端子335を介して受信し、それを、内部バス329を介して音声コーデック328に供給する。
音声コーデック328は、ネットワークI/F334から供給された音声データを所定のフォーマットのデータに変換し、それをエコーキャンセル/音声合成回路323に供給する。
エコーキャンセル/音声合成回路323は、音声コーデック328から供給される音声データを対象としてエコーキャンセルを行い、他の音声データと合成するなどして得られた音声のデータを、音声増幅回路324を介してスピーカ325より出力させる。
SDRAM330は、CPU332が処理を行う上で必要な各種のデータを記憶する。
フラッシュメモリ331は、CPU332により実行されるプログラムを記憶する。フラッシュメモリ331に記憶されているプログラムは、テレビジョン受像機300の起動時などの所定のタイミングでCPU332により読み出される。フラッシュメモリ331には、デジタル放送を介して取得されたEPGデータ、ネットワークを介して所定のサーバから取得されたデータなども記憶される。
例えば、フラッシュメモリ331には、CPU332の制御によりネットワークを介して所定のサーバから取得されたコンテンツデータを含むMPEG-TSが記憶される。フラッシュメモリ331は、例えばCPU332の制御により、そのMPEG-TSを、内部バス329を介してMPEGデコーダ317に供給する。
MPEGデコーダ317は、デジタルチューナ316から供給されたMPEG-TSの場合と同様に、そのMPEG-TSを処理する。このようにテレビジョン受像機300は、映像や音声等よりなるコンテンツデータを、ネットワークを介して受信し、MPEGデコーダ317を用いてデコードし、その映像を表示させたり、音声を出力させたりすることができる。
また、テレビジョン受像機300は、リモートコントローラ351から送信される赤外線信号を受光する受光部337も有する。
受光部337は、リモートコントローラ351からの赤外線を受光し、復調して得られたユーザ操作の内容を表す制御コードをCPU332に出力する。
CPU332は、フラッシュメモリ331に記憶されているプログラムを実行し、受光部337から供給される制御コードなどに応じてテレビジョン受像機300の全体の動作を制御する。CPU332とテレビジョン受像機300の各部は、図示せぬ経路を介して接続されている。
USB I/F333は、USB端子336に装着されたUSBケーブルを介して接続される、テレビジョン受像機300の外部の機器との間でデータの送受信を行う。ネットワークI/F334は、ネットワーク端子335に装着されたケーブルを介してネットワークに接続し、ネットワークに接続される各種の装置と音声データ以外のデータの送受信も行う。
テレビジョン受像機300は、MPEGデコーダ317として画像復号装置201を用いることにより、符号化効率を向上することができる。その結果として、テレビジョン受像機300は、アンテナを介して受信した放送波信号や、ネットワークを介して取得したコンテンツデータから、より高精細な復号画像を得て、表示することができる。
[携帯電話機の構成例]
図36は、本発明を適用した画像符号化装置および画像復号装置を用いる携帯電話機の主な構成例を示すブロック図である。
図36に示される携帯電話機400は、各部を統括的に制御するようになされた主制御部450、電源回路部451、操作入力制御部452、画像エンコーダ453、カメラI/F部454、LCD制御部455、画像デコーダ456、多重分離部457、記録再生部462、変復調回路部458、および音声コーデック459を有する。これらは、バス460を介して互いに接続されている。
また、携帯電話機400は、操作キー419、CCD(Charge Coupled Devices)カメラ416、液晶ディスプレイ418、記憶部423、送受信回路部463、アンテナ414、マイクロホン(マイク)421、およびスピーカ417を有する。
電源回路部451は、ユーザの操作により終話および電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話機400を動作可能な状態に起動する。
携帯電話機400は、CPU、ROMおよびRAM等でなる主制御部450の制御に基づいて、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
例えば、音声通話モードにおいて、携帯電話機400は、マイクロホン(マイク)421で集音した音声信号を、音声コーデック459によってデジタル音声データに変換し、これを変復調回路部458でスペクトラム拡散処理し、送受信回路部463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機400は、その変換処理により得られた送信用信号を、アンテナ414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(音声信号)は、公衆電話回線網を介して通話相手の携帯電話機に供給される。
また、例えば、音声通話モードにおいて、携帯電話機400は、アンテナ414で受信した受信信号を送受信回路部463で増幅し、さらに周波数変換処理およびアナログデジタル変換処理し、変復調回路部458でスペクトラム逆拡散処理し、音声コーデック459によってアナログ音声信号に変換する。携帯電話機400は、その変換して得られたアナログ音声信号をスピーカ417から出力する。
更に、例えば、データ通信モードにおいて電子メールを送信する場合、携帯電話機400は、操作キー419の操作によって入力された電子メールのテキストデータを、操作入力制御部452において受け付ける。携帯電話機400は、そのテキストデータを主制御部450において処理し、LCD制御部455を介して、画像として液晶ディスプレイ418に表示させる。
また、携帯電話機400は、主制御部450において、操作入力制御部452が受け付けたテキストデータやユーザ指示等に基づいて電子メールデータを生成する。携帯電話機400は、その電子メールデータを、変復調回路部458でスペクトラム拡散処理し、送受信回路部463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機400は、その変換処理により得られた送信用信号を、アンテナ414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(電子メール)は、ネットワークおよびメールサーバ等を介して、所定のあて先に供給される。
また、例えば、データ通信モードにおいて電子メールを受信する場合、携帯電話機400は、基地局から送信された信号を、アンテナ414を介して送受信回路部463で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機400は、その受信信号を変復調回路部458でスペクトラム逆拡散処理して元の電子メールデータを復元する。携帯電話機400は、復元された電子メールデータを、LCD制御部455を介して液晶ディスプレイ418に表示する。
なお、携帯電話機400は、受信した電子メールデータを、記録再生部462を介して、記憶部423に記録する(記憶させる)ことも可能である。
この記憶部423は、書き換え可能な任意の記憶媒体である。記憶部423は、例えば、RAMや内蔵型フラッシュメモリ等の半導体メモリであってもよいし、ハードディスクであってもよいし、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアであってもよい。もちろん、これら以外のものであってもよい。
さらに、例えば、データ通信モードにおいて画像データを送信する場合、携帯電話機400は、撮像によりCCDカメラ416で画像データを生成する。CCDカメラ416は、レンズや絞り等の光学デバイスと光電変換素子としてのCCDを有し、被写体を撮像し、受光した光の強度を電気信号に変換し、被写体の画像の画像データを生成する。その画像データを、カメラI/F部454を介して、画像エンコーダ453で、例えばMPEG2やMPEG4等の所定の符号化方式によって圧縮符号化することにより符号化画像データに変換する。
携帯電話機400は、このような処理を行う画像エンコーダ453として、上述した画像符号化装置101を用いる。したがって、画像エンコーダ453は、画像符号化装置101の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
なお、携帯電話機400は、このとき同時に、CCDカメラ416で撮像中にマイクロホン(マイク)421で集音した音声を、音声コーデック459においてアナログデジタル変換し、さらに符号化する。
携帯電話機400は、多重分離部457において、画像エンコーダ453から供給された符号化画像データと、音声コーデック459から供給されたデジタル音声データとを、所定の方式で多重化する。携帯電話機400は、その結果得られる多重化データを、変復調回路部458でスペクトラム拡散処理し、送受信回路部463でデジタルアナログ変換処理および周波数変換処理する。携帯電話機400は、その変換処理により得られた送信用信号を、アンテナ414を介して図示しない基地局へ送信する。基地局へ伝送された送信用信号(画像データ)は、ネットワーク等を介して、通信相手に供給される。
なお、画像データを送信しない場合、携帯電話機400は、CCDカメラ416で生成した画像データを、画像エンコーダ453を介さずに、LCD制御部455を介して液晶ディスプレイ418に表示させることもできる。
また、例えば、データ通信モードにおいて、簡易ホームページ等にリンクされた動画像ファイルのデータを受信する場合、携帯電話機400は、基地局から送信された信号を、アンテナ414を介して送受信回路部463で受信し、増幅し、さらに周波数変換処理およびアナログデジタル変換処理する。携帯電話機400は、その受信信号を変復調回路部458でスペクトラム逆拡散処理して元の多重化データを復元する。携帯電話機400は、多重分離部457において、その多重化データを分離して、符号化画像データと音声データとに分ける。
携帯電話機400は、画像デコーダ456において、符号化画像データを、MPEG2やMPEG4等の所定の符号化方式に対応した復号方式でデコードすることにより、再生動画像データを生成し、これを、LCD制御部455を介して液晶ディスプレイ418に表示させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる動画データが液晶ディスプレイ418に表示される。
携帯電話機400は、このような処理を行う画像デコーダ456として、上述した画像復号装置201を用いる。したがって、画像デコーダ456は、画像復号装置201の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
このとき、携帯電話機400は、同時に、音声コーデック459において、デジタルの音声データをアナログ音声信号に変換し、これをスピーカ417より出力させる。これにより、例えば、簡易ホームページにリンクされた動画像ファイルに含まれる音声データが再生される。
なお、電子メールの場合と同様に、携帯電話機400は、受信した簡易ホームページ等にリンクされたデータを、記録再生部462を介して、記憶部423に記録する(記憶させる)ことも可能である。
また、携帯電話機400は、主制御部450において、撮像されてCCDカメラ416で得られた2次元コードを解析し、2次元コードに記録された情報を取得することができる。
さらに、携帯電話機400は、赤外線通信部481で赤外線により外部の機器と通信することができる。
携帯電話機400は、画像エンコーダ453として画像符号化装置101を用いることにより、符号化効率を向上させることができる。結果として、携帯電話機400は、符号化効率のよい符号化データ(画像データ)を、他の装置に提供することができる。
また、携帯電話機400は、画像デコーダ456として画像復号装置201を用いることにより、符号化効率を向上させることができる。その結果として、携帯電話機400は、例えば、簡易ホームページにリンクされた動画像ファイルから、より高精細な復号画像を得て、表示することができる。
なお、以上において、携帯電話機400が、CCDカメラ416を用いるように説明したが、このCCDカメラ416の代わりに、CMOS(Complementary Metal Oxide Semiconductor)を用いたイメージセンサ(CMOSイメージセンサ)を用いるようにしてもよい。この場合も、携帯電話機400は、CCDカメラ416を用いる場合と同様に、被写体を撮像し、被写体の画像の画像データを生成することができる。
また、以上においては携帯電話機400として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機400と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機400の場合と同様に、画像符号化装置101および画像復号装置201を適用することができる。
[ハードディスクレコーダの構成例]
図37は、本発明を適用した画像符号化装置および画像復号装置を用いるハードディスクレコーダの主な構成例を示すブロック図である。
図37に示されるハードディスクレコーダ(HDDレコーダ)500は、チューナにより受信された、衛星や地上のアンテナ等より送信される放送波信号(テレビジョン信号)に含まれる放送番組のオーディオデータとビデオデータを、内蔵するハードディスクに保存し、その保存したデータをユーザの指示に応じたタイミングでユーザに提供する装置である。
ハードディスクレコーダ500は、例えば、放送波信号よりオーディオデータとビデオデータを抽出し、それらを適宜復号し、内蔵するハードディスクに記憶させることができる。また、ハードディスクレコーダ500は、例えば、ネットワークを介して他の装置からオーディオデータやビデオデータを取得し、それらを適宜復号し、内蔵するハードディスクに記憶させることもできる。
さらに、ハードディスクレコーダ500は、例えば、内蔵するハードディスクに記録されているオーディオデータやビデオデータを復号してモニタ560に供給し、モニタ560の画面にその画像を表示させる。また、ハードディスクレコーダ500は、モニタ560のスピーカよりその音声を出力させることができる。
ハードディスクレコーダ500は、例えば、チューナを介して取得された放送波信号より抽出されたオーディオデータとビデオデータ、または、ネットワークを介して他の装置から取得したオーディオデータやビデオデータを復号してモニタ560に供給し、モニタ560の画面にその画像を表示させる。また、ハードディスクレコーダ500は、モニタ560のスピーカよりその音声を出力させることもできる。
もちろん、この他の動作も可能である。
図37に示されるように、ハードディスクレコーダ500は、受信部521、復調部522、デマルチプレクサ523、オーディオデコーダ524、ビデオデコーダ525、およびレコーダ制御部526を有する。ハードディスクレコーダ500は、さらに、EPGデータメモリ527、プログラムメモリ528、ワークメモリ529、ディスプレイコンバータ530、OSD(On Screen Display)制御部531、ディスプレイ制御部532、記録再生部533、D/Aコンバータ534、および通信部535を有する。
また、ディスプレイコンバータ530は、ビデオエンコーダ541を有する。記録再生部533は、エンコーダ551およびデコーダ552を有する。
受信部521は、リモートコントローラ(図示せず)からの赤外線信号を受信し、電気信号に変換してレコーダ制御部526に出力する。レコーダ制御部526は、例えば、マイクロプロセッサなどにより構成され、プログラムメモリ528に記憶されているプログラムに従って、各種の処理を実行する。レコーダ制御部526は、このとき、ワークメモリ529を必要に応じて使用する。
通信部535は、ネットワークに接続され、ネットワークを介して他の装置との通信処理を行う。例えば、通信部535は、レコーダ制御部526により制御され、チューナ(図示せず)と通信し、主にチューナに対して選局制御信号を出力する。
復調部522は、チューナより供給された信号を、復調し、デマルチプレクサ523に出力する。デマルチプレクサ523は、復調部522より供給されたデータを、オーディオデータ、ビデオデータ、およびEPGデータに分離し、それぞれ、オーディオデコーダ524、ビデオデコーダ525、またはレコーダ制御部526に出力する。
オーディオデコーダ524は、入力されたオーディオデータを、例えばMPEG方式でデコードし、記録再生部533に出力する。ビデオデコーダ525は、入力されたビデオデータを、例えばMPEG方式でデコードし、ディスプレイコンバータ530に出力する。レコーダ制御部526は、入力されたEPGデータをEPGデータメモリ527に供給し、記憶させる。
ディスプレイコンバータ530は、ビデオデコーダ525またはレコーダ制御部526より供給されたビデオデータを、ビデオエンコーダ541により、例えばNTSC(National Television Standards Committee)方式のビデオデータにエンコードし、記録再生部533に出力する。また、ディスプレイコンバータ530は、ビデオデコーダ525またはレコーダ制御部526より供給されるビデオデータの画面のサイズを、モニタ560のサイズに対応するサイズに変換する。ディスプレイコンバータ530は、画面のサイズが変換されたビデオデータを、さらに、ビデオエンコーダ541によってNTSC方式のビデオデータに変換し、アナログ信号に変換し、ディスプレイ制御部532に出力する。
ディスプレイ制御部532は、レコーダ制御部526の制御のもと、OSD(On Screen Display)制御部531が出力したOSD信号を、ディスプレイコンバータ530より入力されたビデオ信号に重畳し、モニタ560のディスプレイに出力し、表示させる。
モニタ560にはまた、オーディオデコーダ524が出力したオーディオデータが、D/Aコンバータ534によりアナログ信号に変換されて供給されている。モニタ560は、このオーディオ信号を内蔵するスピーカから出力する。
記録再生部533は、ビデオデータやオーディオデータ等を記録する記憶媒体としてハードディスクを有する。
記録再生部533は、例えば、オーディオデコーダ524より供給されるオーディオデータを、エンコーダ551によりMPEG方式でエンコードする。また、記録再生部533は、ディスプレイコンバータ530のビデオエンコーダ541より供給されるビデオデータを、エンコーダ551によりMPEG方式でエンコードする。記録再生部533は、そのオーディオデータの符号化データとビデオデータの符号化データとをマルチプレクサにより合成する。記録再生部533は、その合成データをチャネルコーディングして増幅し、そのデータを、記録ヘッドを介してハードディスクに書き込む。
記録再生部533は、再生ヘッドを介してハードディスクに記録されているデータを再生し、増幅し、デマルチプレクサによりオーディオデータとビデオデータに分離する。記録再生部533は、デコーダ552によりオーディオデータおよびビデオデータをMPEG方式でデコードする。記録再生部533は、復号したオーディオデータをD/A変換し、モニタ560のスピーカに出力する。また、記録再生部533は、復号したビデオデータをD/A変換し、モニタ560のディスプレイに出力する。
レコーダ制御部526は、受信部521を介して受信されるリモートコントローラからの赤外線信号により示されるユーザ指示に基づいて、EPGデータメモリ527から最新のEPGデータを読み出し、それをOSD制御部531に供給する。OSD制御部531は、入力されたEPGデータに対応する画像データを発生し、ディスプレイ制御部532に出力する。ディスプレイ制御部532は、OSD制御部531より入力されたビデオデータをモニタ560のディスプレイに出力し、表示させる。これにより、モニタ560のディスプレイには、EPG(電子番組ガイド)が表示される。
また、ハードディスクレコーダ500は、インターネット等のネットワークを介して他の装置から供給されるビデオデータ、オーディオデータ、またはEPGデータ等の各種データを取得することができる。
通信部535は、レコーダ制御部526に制御され、ネットワークを介して他の装置から送信されるビデオデータ、オーディオデータ、およびEPGデータ等の符号化データを取得し、それをレコーダ制御部526に供給する。レコーダ制御部526は、例えば、取得したビデオデータやオーディオデータの符号化データを記録再生部533に供給し、ハードディスクに記憶させる。このとき、レコーダ制御部526および記録再生部533が、必要に応じて再エンコード等の処理を行うようにしてもよい。
また、レコーダ制御部526は、取得したビデオデータやオーディオデータの符号化データを復号し、得られるビデオデータをディスプレイコンバータ530に供給する。ディスプレイコンバータ530は、ビデオデコーダ525から供給されるビデオデータと同様に、レコーダ制御部526から供給されるビデオデータを処理し、ディスプレイ制御部532を介してモニタ560に供給し、その画像を表示させる。
また、この画像表示に合わせて、レコーダ制御部526が、復号したオーディオデータを、D/Aコンバータ534を介してモニタ560に供給し、その音声をスピーカから出力させるようにしてもよい。
さらに、レコーダ制御部526は、取得したEPGデータの符号化データを復号し、復号したEPGデータをEPGデータメモリ527に供給する。
以上のようなハードディスクレコーダ500は、ビデオデコーダ525、デコーダ552、およびレコーダ制御部526に内蔵されるデコーダとして画像復号装置201を用いる。したがって、ビデオデコーダ525、デコーダ552、およびレコーダ制御部526に内蔵されるデコーダは、画像復号装置201の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
したがって、ハードディスクレコーダ500は、処理の高速化を実現するとともに、精度の高い予測画像を生成することができる。その結果として、ハードディスクレコーダ500は、例えば、チューナを介して受信されたビデオデータの符号化データや、記録再生部533のハードディスクから読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高精細な復号画像を得て、モニタ560に表示させることができる。
また、ハードディスクレコーダ500は、エンコーダ551として画像符号化装置101を用いる。したがって、エンコーダ551は、画像符号化装置101の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
したがって、ハードディスクレコーダ500は、例えば、処理の高速化を実現するとともに、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、ハードディスクレコーダ500は、ハードディスクの記憶領域をより効率よく使用することができる。
なお、以上においては、ビデオデータやオーディオデータをハードディスクに記録するハードディスクレコーダ500について説明したが、もちろん、記録媒体はどのようなものであってもよい。例えばフラッシュメモリ、光ディスク、またはビデオテープ等、ハードディスク以外の記録媒体を適用するレコーダであっても、上述したハードディスクレコーダ500の場合と同様に、画像符号化装置101および画像復号装置201を適用することができる。
[カメラの構成例]
図38は、本発明を適用した画像復号装置および画像符号化装置を用いるカメラの主な構成例を示すブロック図である。
図38に示されるカメラ600は、被写体を撮像し、被写体の画像をLCD616に表示させたり、それを画像データとして、記録メディア633に記録したりする。
レンズブロック611は、光(すなわち、被写体の映像)を、CCD/CMOS612に入射させる。CCD/CMOS612は、CCDまたはCMOSを用いたイメージセンサであり、受光した光の強度を電気信号に変換し、カメラ信号処理部613に供給する。
カメラ信号処理部613は、CCD/CMOS612から供給された電気信号を、Y,Cr,Cbの色差信号に変換し、画像信号処理部614に供給する。画像信号処理部614は、コントローラ621の制御の下、カメラ信号処理部613から供給された画像信号に対して所定の画像処理を施したり、その画像信号をエンコーダ641で例えばMPEG方式により符号化したりする。画像信号処理部614は、画像信号を符号化して生成した符号化データを、デコーダ615に供給する。さらに、画像信号処理部614は、オンスクリーンディスプレイ(OSD)620において生成された表示用データを取得し、それをデコーダ615に供給する。
以上の処理において、カメラ信号処理部613は、バス617を介して接続されるDRAM(Dynamic Random Access Memory)618を適宜利用し、必要に応じて画像データや、その画像データが符号化された符号化データ等をそのDRAM618に保持させる。
デコーダ615は、画像信号処理部614から供給された符号化データを復号し、得られた画像データ(復号画像データ)をLCD616に供給する。また、デコーダ615は、画像信号処理部614から供給された表示用データをLCD616に供給する。LCD616は、デコーダ615から供給された復号画像データの画像と表示用データの画像を適宜合成し、その合成画像を表示する。
オンスクリーンディスプレイ620は、コントローラ621の制御の下、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを、バス617を介して画像信号処理部614に出力する。
コントローラ621は、ユーザが操作部622を用いて指令した内容を示す信号に基づいて、各種処理を実行するとともに、バス617を介して、画像信号処理部614、DRAM618、外部インタフェース619、オンスクリーンディスプレイ620、およびメディアドライブ623等を制御する。FLASH ROM624には、コントローラ621が各種処理を実行する上で必要なプログラムやデータ等が格納される。
例えば、コントローラ621は、画像信号処理部614やデコーダ615に代わって、DRAM618に記憶されている画像データを符号化したり、DRAM618に記憶されている符号化データを復号したりすることができる。このとき、コントローラ621は、画像信号処理部614やデコーダ615の符号化・復号方式と同様の方式によって符号化・復号処理を行うようにしてもよいし、画像信号処理部614やデコーダ615が対応していない方式により符号化・復号処理を行うようにしてもよい。
また、例えば、操作部622から画像印刷の開始が指示された場合、コントローラ621は、DRAM618から画像データを読み出し、それを、バス617を介して外部インタフェース619に接続されるプリンタ634に供給して印刷させる。
さらに、例えば、操作部622から画像記録が指示された場合、コントローラ621は、DRAM618から符号化データを読み出し、それを、バス617を介してメディアドライブ623に装着される記録メディア633に供給して記憶させる。
記録メディア633は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアである。記録メディア633は、もちろん、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であっても良い。
また、メディアドライブ623と記録メディア633を一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
外部インタフェース619は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタ634と接続される。また、外部インタフェース619には、必要に応じてドライブ631が接続され、磁気ディスク、光ディスク、あるいは光磁気ディスクなどのリムーバブルメディア632が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、FLASH ROM624にインストールされる。
さらに、外部インタフェース619は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。コントローラ621は、例えば、操作部622からの指示に従って、DRAM618から符号化データを読み出し、それを外部インタフェース619から、ネットワークを介して接続される他の装置に供給させることができる。また、コントローラ621は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース619を介して取得し、それをDRAM618に保持させたり、画像信号処理部614に供給したりすることができる。
以上のようなカメラ600は、デコーダ615として画像復号装置201を用いる。したがって、デコーダ615は、画像復号装置201の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
したがって、カメラ600は、精度の高い予測画像を生成することができる。その結果として、カメラ600は、例えば、CCD/CMOS612において生成された画像データや、DRAM618または記録メディア633から読み出されたビデオデータの符号化データや、ネットワークを介して取得したビデオデータの符号化データから、より高速に、より高精細な復号画像を得て、LCD616に表示させることができる。
また、カメラ600は、エンコーダ641として画像符号化装置101を用いる。したがって、エンコーダ641は、画像符号化装置101の場合と同様に、画面全体における画質劣化を最小限にするともに、ローカルな画質劣化を改善することができる。
したがって、カメラ600は、例えば、ハードディスクに記録する符号化データの符号化効率を向上させることができる。その結果として、カメラ600は、より高速に、DRAM618や記録メディア633の記憶領域をより効率よく使用することができる。
なお、コントローラ621が行う復号処理に画像復号装置201の復号方法を適用するようにしてもよい。同様に、コントローラ621が行う符号化処理に画像符号化装置101の符号化方法を適用するようにしてもよい。
また、カメラ600が撮像する画像データは動画像であってもよいし、静止画像であってもよい。
もちろん、画像符号化装置101および画像復号装置201は、上述した装置以外の装置やシステムにも適用可能である。
16 可逆符号化部, 21 デブロックフィルタ, 24 イントラ予測部, 42可逆復号部, 46 デブロックフィルタ, 51 イントラ予測部,101 画像符号化装置, 111 適応ループフィルタ, 112 予測モードバッファ, 131 クラス分類部, 132−1,132−2 フィルタ係数算出部, 133−1,133−2 フィルタ処理部, 201 画像復号装置, 211 適応ループフィルタ, 212 予測モードバッファ, 231−1,231−2 フィルタ係数バッファ, 232 クラス分類部, 233−1, 233−2 フィルタ処理部

Claims (13)

  1. 画像を、所定のブロック毎に、イントラ予測モード情報に応じてクラス分類する分類手段と、
    前記分類手段によりクラス分類された各所定のブロックに対して、同じクラスにクラス分類された前記所定のブロックを用いて算出されたフィルタ係数を用いてフィルタ処理を行うフィルタ処理手段と
    を備える画像処理装置。
  2. 前記所定のブロックは、マクロブロックであり、
    前記分類手段は、前記イントラ予測モード情報のうち、前記マクロブロックに対する予測ブロックサイズに応じて、前記マクロブロック毎に画像をクラス分類する
    請求項1に記載の画像処理装置。
  3. 前記分類手段は、前記マクロブロックに対する予測ブロックサイズが、符号化規格で規定されているマクロブロックサイズより大きいか、小さいかに応じて、前記マクロブロック毎に画像をクラス分類する
    請求項2に記載の画像処理装置。
  4. 前記分類手段は、イントラ16×16予測モードで符号化されるマクロブロックについては、平坦領域に含まれるマクロブロックとしてクラス分類する
    請求項3に記載の画像処理装置。
  5. 前記分類手段は、前記イントラ16×16予測モードよりも小さいブロックサイズのイントラ予測モードで符号化されるマクロブロックについては、エッジもしくはテクスチャが含まれるマクロブロックとしてクラス分類する
    請求項3に記載の画像処理装置。
  6. 前記分類手段は、イントラ16×16予測モードよりも大きいブロックサイズのイントラ予測モードで符号化されるマクロブロックについては、平坦領域に含まれるマクロブロックとしてクラス分類する
    請求項3に記載の画像処理装置。
  7. 前記所定のブロックは、マクロブロックまたは前記マクロブロックを構成する各ブロックであり、
    前記分類手段は、前記イントラに関する予測モード情報のうち、同一予測ブロックサイズにおける前記マクロブロックまたはブロックに対する予測モードの種類に応じて、前記マクロブロックまたはブロック毎に画像をクラス分類する
    請求項1に記載の画像処理装置。
  8. 前記分類手段は、垂直予測モードと水平予測モードで符号化されるマクロブロックまたはブロックについては、エッジもしくはテクスチャが含まれるマクロブロックまたはブロックとしてクラス分類する
    請求項7に記載の画像処理装置。
  9. 前記分類手段は、垂直予測モードと水平予測モード以外の予測モードで符号化されるマクロブロックまたはブロックについては、エッジもしくはテクスチャが含まれるマクロブロックまたはブロックとしてクラス分類する
    請求項7に記載の画像処理装置。
  10. 前記同じクラスにクラス分類された前記所定のブロックを用いて前記フィルタ係数を算出するフィルタ係数算出手段
    をさらに備える請求項1に記載の画像処理装置。
  11. 前記画像のビットストリームと、前記イントラ予測に関するモードを示す情報と、前記フィルタ係数算出手段により算出されたフィルタ係数とを伝送する伝送手段
    をさらに備える請求項10に記載の画像処理装置。
  12. 前記画像のビットストリームと、前記イントラ予測に関するモードを示す情報と、前記フィルタ係数とを受け取る受け取り手段
    をさらに備える請求項1に記載の画像処理装置。
  13. 分類手段と、フィルタ処理手段とを備える画像処理装置の画像処理方法において、
    前記分類手段が、画像を、所定のブロック毎に、イントラ予測モード情報に応じてクラス分類し、
    前記フィルタ処理手段が、
    クラス分類された各所定のブロックに対して、同じクラスにクラス分類された前記所定のブロックを用いて算出されたフィルタ係数を用いてフィルタ処理を行う
    画像処理方法。
JP2010090717A 2010-04-09 2010-04-09 画像処理装置および方法 Pending JP2011223337A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010090717A JP2011223337A (ja) 2010-04-09 2010-04-09 画像処理装置および方法
US13/638,944 US20130028321A1 (en) 2010-04-09 2011-03-31 Apparatus and method for image processing
PCT/JP2011/058275 WO2011125866A1 (ja) 2010-04-09 2011-03-31 画像処理装置および方法
CN2011800230722A CN102884791A (zh) 2010-04-09 2011-03-31 图像处理设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010090717A JP2011223337A (ja) 2010-04-09 2010-04-09 画像処理装置および方法

Publications (2)

Publication Number Publication Date
JP2011223337A true JP2011223337A (ja) 2011-11-04
JP2011223337A5 JP2011223337A5 (ja) 2013-05-02

Family

ID=44762804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010090717A Pending JP2011223337A (ja) 2010-04-09 2010-04-09 画像処理装置および方法

Country Status (4)

Country Link
US (1) US20130028321A1 (ja)
JP (1) JP2011223337A (ja)
CN (1) CN102884791A (ja)
WO (1) WO2011125866A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014196118A1 (ja) * 2013-06-04 2014-12-11 三菱電機株式会社 画像符号化装置、画像解析装置、画像符号化方法及び画像解析方法
WO2015053001A1 (ja) * 2013-10-11 2015-04-16 ソニー株式会社 画像処理装置及び画像処理方法
WO2015053112A1 (ja) * 2013-10-11 2015-04-16 ソニー株式会社 復号装置および復号方法、並びに、符号化装置および符号化方法
WO2017195532A1 (ja) * 2016-05-13 2017-11-16 シャープ株式会社 画像復号装置及び画像符号化装置
JP2018107797A (ja) * 2016-12-21 2018-07-05 アピカル リミテッド 画像データのエンコード及びデコード

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016061743A1 (en) * 2014-10-21 2016-04-28 Mediatek Singapore Pte. Ltd. Segmental prediction for video coding
JP6977422B2 (ja) * 2017-09-13 2021-12-08 株式会社Jvcケンウッド トランスコード装置、トランスコード方法及びトランスコードプログラム
WO2019070770A1 (en) * 2017-10-02 2019-04-11 Arris Enterprises Llc SYSTEM AND METHOD FOR REDUCING BLOCKED ARTIFACTS AND PRODUCING ENHANCED ENCODING EFFICIENCY
US10909700B2 (en) * 2019-04-02 2021-02-02 Samsung Electronics Co., Ltd. Display apparatus and image processing method thereof
CN115914627A (zh) 2019-04-15 2023-04-04 北京字节跳动网络技术有限公司 自适应环路滤波器中的裁剪参数推导

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006229411A (ja) * 2005-02-16 2006-08-31 Matsushita Electric Ind Co Ltd 画像復号化装置及び画像復号化方法
WO2008075247A1 (en) * 2006-12-18 2008-06-26 Koninklijke Philips Electronics N.V. Image compression and decompression
WO2008084745A1 (ja) * 2007-01-09 2008-07-17 Panasonic Corporation 画像符号化装置および画像復号化装置
JP2009164915A (ja) * 2008-01-08 2009-07-23 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラムおよびそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
WO2009110559A1 (ja) * 2008-03-07 2009-09-11 株式会社 東芝 動画像符号化/復号装置
WO2009120040A2 (en) * 2008-03-27 2009-10-01 Lg Electronics Inc. A method and an apparatus for encoding or decoding a video signal
WO2010026770A1 (ja) * 2008-09-04 2010-03-11 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、システム、プログラム、及び集積回路
WO2010030744A2 (en) * 2008-09-11 2010-03-18 On2 Technologies, Inc. System and method for video encoding using adaptive loop filter

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146940A1 (en) * 2003-01-10 2006-07-06 Thomson Licensing S.A. Spatial error concealment based on the intra-prediction modes transmitted in a coded stream

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006229411A (ja) * 2005-02-16 2006-08-31 Matsushita Electric Ind Co Ltd 画像復号化装置及び画像復号化方法
WO2008075247A1 (en) * 2006-12-18 2008-06-26 Koninklijke Philips Electronics N.V. Image compression and decompression
WO2008084745A1 (ja) * 2007-01-09 2008-07-17 Panasonic Corporation 画像符号化装置および画像復号化装置
JP2009164915A (ja) * 2008-01-08 2009-07-23 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラムおよびそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
WO2009110559A1 (ja) * 2008-03-07 2009-09-11 株式会社 東芝 動画像符号化/復号装置
WO2009120040A2 (en) * 2008-03-27 2009-10-01 Lg Electronics Inc. A method and an apparatus for encoding or decoding a video signal
WO2010026770A1 (ja) * 2008-09-04 2010-03-11 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、システム、プログラム、及び集積回路
WO2010030744A2 (en) * 2008-09-11 2010-03-18 On2 Technologies, Inc. System and method for video encoding using adaptive loop filter

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014196118A1 (ja) * 2013-06-04 2014-12-11 三菱電機株式会社 画像符号化装置、画像解析装置、画像符号化方法及び画像解析方法
JP5885886B2 (ja) * 2013-06-04 2016-03-16 三菱電機株式会社 画像解析装置及び画像解析方法
GB2540440A (en) * 2013-06-04 2017-01-18 Mitsubishi Electric Corp Image encoding device, image analysis device, image encoding method and image analysis method
JPWO2014196118A1 (ja) * 2013-06-04 2017-02-23 三菱電機株式会社 画像解析装置及び画像解析方法
WO2015053001A1 (ja) * 2013-10-11 2015-04-16 ソニー株式会社 画像処理装置及び画像処理方法
WO2015053112A1 (ja) * 2013-10-11 2015-04-16 ソニー株式会社 復号装置および復号方法、並びに、符号化装置および符号化方法
WO2017195532A1 (ja) * 2016-05-13 2017-11-16 シャープ株式会社 画像復号装置及び画像符号化装置
JP2018107797A (ja) * 2016-12-21 2018-07-05 アピカル リミテッド 画像データのエンコード及びデコード

Also Published As

Publication number Publication date
US20130028321A1 (en) 2013-01-31
WO2011125866A1 (ja) 2011-10-13
CN102884791A (zh) 2013-01-16

Similar Documents

Publication Publication Date Title
US11328452B2 (en) Image processing device and method
JP5464435B2 (ja) 画像復号装置および方法
WO2011018965A1 (ja) 画像処理装置および方法
WO2011089972A1 (ja) 画像処理装置および方法
WO2011145601A1 (ja) 画像処理装置と画像処理方法
WO2011125866A1 (ja) 画像処理装置および方法
WO2011081035A1 (ja) 画像処理装置および方法、並びに、プログラム
KR20120051020A (ko) 화상 처리 장치 및 방법
JP5556996B2 (ja) 画像処理装置および方法
WO2012050021A1 (ja) 画像処理装置および方法
WO2010035732A1 (ja) 画像処理装置および方法
WO2011078067A1 (ja) 画像処理装置および方法
WO2011096318A1 (ja) 画像処理装置および方法
WO2010101063A1 (ja) 画像処理装置および方法
WO2012005195A1 (ja) 画像処理装置および方法
WO2012081477A1 (ja) 画像処理装置および方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130315

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131010

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140220