(57)【要約】【課題】フレーム内予測を効率よく行うことができるようにする。【解決手段】マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化装置であって、符号化対象マクロブロックに隣接する画素から符号化対象マクロブロックの特徴を推定する推定手段と、前記推定手段によって推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定手段とを備える。【選択図】図１
2009111520.tif 000002
【特許請求の範囲】
【請求項１】
マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化装置であって、
符号化対象マクロブロックに隣接する画素から符号化対象マクロブロックの特徴を推定する推定手段と、
前記推定手段によって推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定手段とを備えることを特徴とする画像符号化装置。
【請求項２】
前記推定手段は、前記符号化対象マクロブロックに隣接する入力画像の画素間の相関度を算出することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記決定手段は、前記推定手段によって算出された前記符号化対象マクロブロックに隣接する画像の画素間の相関度と、量子化パラメータとを用いて予測単位を決定することを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
前記決定手段は、前記量子化パラメータの値によって特定の予測画素の単位が決定されやすくなるように制御することを特徴とする請求項３に記載の画像符号化装置。
【請求項５】
前記推定手段は、前記符号化対象マクロブロックに隣接する画像を４画素単位に分割して相関度を算出して符号化対象マクロブロックの特徴を推定することを特徴とする請求項１〜４のいずれか１項に記載の画像符号化装置。
【請求項６】
前記決定手段は、４×４画素、８×８画素、１６×１６画素の大きさの画素単位から１つを選択することを特徴とする請求項１〜５のいずれか１項に記載の画像符号化装置。
【請求項７】
前記決定手段は、前記符号化対象マクロブロックに隣接する画素の相関度が所定の値よりも低い場合は予測単位を４×４画素にすることを特徴とする請求項１〜６のいずれか１項に記載の画像符号化装置。
【請求項８】
前記決定手段は、隣接する画素の相関度が所定の値よりも高い場合は予測単位を１６×１６画素にすることを特徴とする請求項１〜７のいずれか１項に記載の画像符号化装置。
【請求項９】
前記推定手段は、前記符号化対象マクロブロックに隣接する画素と前記隣接する画素を符号化した後に局所復号されて得られた参照画素とからそれぞれ相関度を算出し、相関度が低い方を用いて前記符号化対象マクロブロックの特徴と推定することを特徴とする請求項１〜８のいずれか１項に記載の画像符号化装置。
【請求項１０】
マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化方法であって、
符号化対象マクロブロックの上及び左の方向に隣接する画素から符号化対象マクロブロックの特徴を推定する推定ステップと、
前記推定ステップにおいて推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定ステップとを備えることを特徴とする画像符号化方法。
【請求項１１】
マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化方法の各工程をコンピュータに実行させるプログラムであって、
符号化対象マクロブロックに隣接する画素から符号化対象マクロブロックの特徴を推定する推定ステップと、
前記推定ステップにおいて推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定ステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化装置、画像符号化方法及びプログラムに関し、特に、フレーム内予測に用いて好適な技術に関する。
【背景技術】
【０００２】
画面内で予測を行う符号化方法を採用している画像符号化方式としてＭＰＥＧ−４方式やＨ．２６４方式が知られている。特に、最新の符号化方式のＨ．２６４方式での画面内予測は、ＭＰＥＧ−４方式での画面内予測を発展させたものであり、より効率よく符号化できる。ＭＰＥＧ−４方式とＨ．２６４方式との画面内予測符号化の主な違いとしては、予測を行うデータ数の増加、参照するブロックの数、予測方向の符号化、予測するブロック単位の種類の増加等が挙げられる。
【０００３】
Ｈ．２６４方式において予測を行うブロックの単位は、４×４画素、８×８画素、１６×１６画素の３種類存在し、画像の状況によってそれらのブロック単位を切り換えて使用する。一般的に、高周波成分（画像が複雑な部分）が多い部分ではより小さなブロックを選択すると、効率よく符号化できる。
【０００４】
しかしながら、最も確実に最適な予測単位を決定するためには、一度全ての予測単位・予測モードで画面内予測符号化を行い、符号化ストリームを生成した後に、最も効率の良い方法を選択することが考えられる。これは一般にＲＤＯ方式と呼ばれているが、全ての予測単位、全ての予測モードの符号化を行うには、ソフト面においては多くの時間、ハード面においては膨大な規模のコストが必要である。つまり、ＲＤＯ方式は、符号化効率は最も良いが、リアルタイム性に欠ける処理方法である。もちろん、符号化処理時間に制限がない場合は、ＲＤＯ方式を用いて時間をかけて処理を施してもよい。
【０００５】
そこで、リアルタイム処理が可能な方法としては、予測モードを決定する際には、各予測モードの予測値と符号化対象画素との差分を取り、その絶対値和が最も小さくなるような予測モードを選択するＳＡＤ方式が一般的に用いられる。これは、イントラ予測後の整数変換や量子化は差分に対して行われるためである。復号時は逆変換後に選択された予測モードに予測値を加えることになる。この場合、予測値との差分とその和を予測モード分行えばよいので、ＲＤＯ方式と比較して処理の負荷が小さくなる。しかし、この方式でも全ての予測モードを演算する手間がかかってしまう。
【０００６】
そこで、上述した問題点を解決するために、符号化対象マクロブロック内の水平方向・垂直方向の特徴を符号化前に予め算出する。そして、複数の予測モードから符号化対象ブロックの特徴に完全に合致しないモードは演算しないようにする画像符号化装置が提案されている（例えば、特許文献１参照）。
【０００７】
【特許文献１】特開２００４−３０４７２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
前記特許文献１に記載の技術を用いれば、演算量を減らすことは可能となる。しかしながら、演算するためには、符号化対象マクロブロックのデータが全て揃うのを待つ必要がある。さらに、予測モードは予測単位にも大きく依存しているので、予測単位ごとに予測モードの演算が必要であり、ＲＤＯ方式と比較すると演算量及び演算負荷は減少するが、常に無駄な演算処理が存在してしまう。
【０００９】
本発明は前述の問題点に鑑み、フレーム内予測を効率よく行うことができるようにすることを目的としている。
【課題を解決するための手段】
【００１０】
本発明の画像符号化装置は、マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化装置であって、符号化対象マクロブロックに隣接する画素から符号化対象マクロブロックの特徴を推定する推定手段と、前記推定手段によって推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定手段とを備えることを特徴とする。
【００１１】
本発明の画像符号化方法は、マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化方法であって、符号化対象マクロブロックの上及び左の方向に隣接する画素から符号化対象マクロブロックの特徴を推定する推定ステップと、前記推定ステップにおいて推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定ステップとを備えることを特徴とする。
【００１２】
本発明のプログラムは、マクロブロック単位で入力される画像を所定の画素単位に分割してフレーム内予測符号化する画像符号化方法の各工程をコンピュータに実行させるプログラムであって、符号化対象マクロブロックに隣接する画素から符号化対象マクロブロックの特徴を推定する推定ステップと、前記推定ステップにおいて推定された特徴を用いてフレーム内予測を行うマクロブロック内の画素単位を決定する決定ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、符号化対象マクロブロックが入力される前に、あらかじめ予測単位を決定するため、フレーム内予測を効率よく行うことができる。
【発明を実施するための最良の形態】
【００１４】
（第１の実施形態）
以下、図面を参照しながら、本発明の好適な実施形態について説明する。
図１は、本実施形態のフレーム内予測符号化を行う画像符号化装置の構成例を示すブロック図である。
１００は任意のブロック単位で入力される入力画像であり、１０１は入力画像１００から他のブロックに隣接する画素のみを記憶する隣接画素バッファであり、１０２は画素間の相関度を算出する画素相関度算出部である。
【００１５】
また、１０３は予測を行うブロック単位を決定する予測単位選択部であり、１０４は入力画像１００に対して複数の予測モードで予測誤差を算出する予測誤差算出部である。また、１０５は予測誤差算出部１０４の複数の演算結果から実際に使用する予測モードの予測誤差を決定する予測誤差決定部である。
【００１６】
１０６は予測誤差に対して周波数変換、所定の量子化パラメータを用いての量子化、エントロピー符号化を行う符号化部である。また、１０７は符号化されたデータを局所復号する局所復号部であり、１０８は局所復号されたデータのうち予測モードの演算に使用する画素のみを参照画素として記憶する参照画素バッファである。さらに、１０９は入力画像１００を符号化して得られた符号化ストリームである。
【００１７】
以下、図１及び図２を参照しながら本実施形態における画像符号化装置の動作について説明する。なお、入力画像１００はマクロブロック単位で入力されるものとする。
【００１８】
図２は、隣接画素バッファ１０１に記憶される画素を示す図である。
図２において、２００は入力画像である画素全体のマクロブロックであり、２０１は隣接画素バッファ１０１に記憶される右端隣接画素であり、２０２は隣接画素バッファ１０１に記憶される下端隣接画素である。
【００１９】
隣接画素バッファ１０１は、入力画像１００のうち、他のマクロブロックと隣接する画素のみを記憶するバッファであるが、入力画像１００の周辺部全ての画素を記憶するわけではない。入力画像１００の特徴を抽出するために画素相関度算出部１０２で用いられる画素は、図２で示されるマクロブロック２００中の斜線で表されている右端隣接画素２０１及び下端隣接画素２０２だけである。画素相関度算出部１０２は、入力画像１００の特徴を抽出するために必要な画素を隣接画素バッファ１０１から読み出し、隣接画素内の相関度を算出する。
【００２０】
次に、予測単位選択部１０３は、画素相関度算出部１０２の演算結果を元にフレーム内符号化を行う予測単位を選択する。そして、予測誤差算出部１０４は、予測単位選択部１０３にて選択された予測単位に対応した複数の予測モードで予測誤差を算出する。予測誤差算出部１０４は、予測誤差を算出するために、参照画素バッファ１０８から対象となる参照画素を読み出して予測値を演算する。
【００２１】
予測誤差算出部１０４にて算出された複数の予測モードに対応した予測誤差は予測誤差決定部１０５に出力され、最適な予測誤差を符号化対象データとして選択する。符号化対象データは、符号化部１０６にて符号化処理を施され、符号化ストリーム１０９として出力される。一方、符号化部１０６にて符号化されたデータは、参照画素を抽出するために、局所復号部１０７にて局所復号され、予測値を生成するために必要な画素のみが参照画素バッファ１０８に記憶される。
【００２２】
Ｈ．２６４方式の場合、予測モードは４×４画素もしくは８×８画素で最大９種類あり、１６×１６画素で４種類あり、全ての予測誤差を算出するには合計２２通りの演算が必要である。本実施形態では、先に予測単位を決定することにより最大でも９通りの演算だけで予測誤差を得ることが可能である。
【００２３】
また、予測単位の先決め自体も、符号化対象ブロック内のデータを用いず、隣接する画素から行うので、局所復号画像の結果を待ったり、符号化対象ブロックのデータ入力の完了を待ったりする必要がない。さらに、符号化対象ブロックを符号化しているときに並列で隣接画素の相関度を演算することも可能である。本実施形態では、ソフト処理においては処理速度向上に貢献し、ハード面においては予測画素単位ごとに予測モード演算回路を並列で持つ必要がなく、回路を共用化して回路規模削減が期待できる。
【００２４】
次に、図３を参照しながら、画素相関度算出部１０２による相関度算出処理について説明する。図３は、符号化対象マクロブロックとその隣接画素との関係を示す図である。
図３において、３００は符号化対象マクロブロックであり、３０１は垂直方向の隣接画素群であり、３０２は水平方向の隣接画素群であり、３０３〜３０６は垂直方向の４画素単位で表している垂直隣接画素である。また、３０７〜３１０は水平方向の４画素単位で表している水平隣接画素であり、３１１ａ〜３１１ｐは最小予測単位である４×４画素単位で区切られた符号化対象画素である。
【００２５】
本実施形態では、画素の相関度を４画素単位で演算している。これは、予測単位の最小値が４×４画素なので、それ以上の解像度を持たせた相関性を用いる利点が少ないからである。垂直隣接画素３０３〜３０６の相関度は、以下の式（１）で隣接画素値の水平変化量Act＿Hとして演算する。
Act＿H = Δ(303) + Δ(304) + Δ(305) + Δ(306)  ・・・式（１）
【００２６】
ここで、Δ(303)は垂直隣接画素３０３内の動きあるいは分散を表す値で垂直隣接画素３０３内の画素値の変化量を示している。同様に、式（１）中のΔ(304)〜Δ(306)も垂直隣接画素３０４〜垂直隣接画素３０６内の局所的な変化量を示している。
【００２７】
そして、水平変化量Act＿Hと同じく、以下の式（２）で隣接画素値の垂直変化量Act＿Vを求める。
Act＿V = Δ(307) + Δ(308) + Δ(309) + Δ(310)  ・・・式（２）
【００２８】
ここでΔ(307)〜Δ(310)は上述した垂直隣接画素値と同じく水平隣接画素３０７〜水平隣接画素３１０内の局所的な変化量を示している。なお、本実施形態では、水平／垂直ともに変化量を導出する方法を限定するものではない。
【００２９】
式（１）及び式（２）により得られた水平変化量Act＿H／垂直変化量Act＿Vは、図４に示すように判定される。図４に示されているαは、任意に決められる閾値であり、この閾値αを元に予測画素単位を決定する。図４において、４００〜４０３は表の行を示している。以下、それぞれの行４００〜４０３に関して説明する。
【００３０】
行４００はAct＿H、Act＿Vのどちらも閾値α以下、つまり、隣接画像の水平／垂直方向のどちら側も変化が少ない、という場合を示している。従って、予測単位を最大値である１６×１６画素の単位で符号化しても誤差はあまり大きくならないと判断できる。
【００３１】
また、行４０１はAct＿Vだけが閾値α以下、つまり水平方向のみの変化が大きい場合を示している。この場合も行４００の処理の場合と同様に予測単位を１６×１６画素の単位で符号化しても誤差はあまり大きくならないと判断できる。これは、予測画素単位の大小に関わらず、上方向の隣接画素から予測するモードを選択することにより予測誤差値が十分小さくなると予想され、その場合は１６×１６画素単位の予測の方が効率よく符号化できるからである。行４０２は垂直方向のみの変化量が大きいので、水平方向のみの場合と同様に予測画素単位は１６×１６画素の単位で十分であると判断できる。
【００３２】
一方、行４０３は、Act＿V、Act＿Hともに閾値αより大きい場合を示している。この場合、水平及び垂直方向どちらの方向にも安定した画像ではないので、１６×１６画素という大きな予測画素単位では予測誤差が大きくなってしまうと判断できる。そこで、行４０３の条件が成り立つ場合は、最大予測画素単位ではない予測単位を選択するように動作させる。
【００３３】
予測単位として選択可能なものが１６×１６画素及び４×４画素の２通りの場合、行４０３の条件の場合においては４×４画素の予測単位とすることで予測単位が決まるのだが、８×８画素の予測単位も存在する場合、さらにもう一段階の判定が必要となる。しかしながら、前述した式（１）及び式（２）で示しているAct＿H及びAct＿Vは４画素単位の垂直隣接画素３０３〜３０６及び水平隣接画素３０７〜３１０の変化量を合計しただけである。したがって、４×４画素及び８×８画素の予測単位の判断ができない。
【００３４】
図５は、４×４画素及び８×８画素の予測単位での判定方法を示す図である。４×４画素及び１６×１６画素の予測単位の判定を行うために、図５に示すようにマクロブロックをブロック５００ａ〜５００ｄに４等分（８×８画素単位のブロック４つに分割）した状態で推定する。つまり、Δ(303)とΔ(304)のペア５０１と、Δ(305)とΔ(306)のペア５０２と、Δ(307)とΔ(308)のペア５０３と、Δ(309)とΔ(310)のペア５０４とを設定する。そして、上述した１６×１６画素と４×４画素の判定と同様に８×８画素と４×４画素の予測単位の選択が可能となる。
【００３５】
それぞれのペア内の変化量を求め、変化量が閾値以下のペアの数によって８×８画素と４×４画素の予測単位の判断することが可能である。なお、判断基準は特に限定するものではないが、ペア５０１〜ペア５０４の半分以上（２つ）が閾値以下の場合は８×８画素単位、それ以外は４×４画素、というように任意に定めてもよい。
【００３６】
（第２の実施形態）
次に、本発明の第２の実施形態における画像符号化装置について説明する。なお、図６の本実施形態における画像符号化装置の構成において、図１に示した第１の実施形態における画像符号化装置と同様の部分には同じ符号を付与してある。以下、本実施形態における画像符号化装置において、第１の実施形態と異なる部分を主に説明する。
【００３７】
図６は、本実施形態における画像符号化装置の構成例を示すブロック図である。第１の実施形態と異なる点は、符号化部１０６の内部係数である量子化値Ｑを予測単位選択部１０３へと出力している点である。
【００３８】
第１の実施形態においては、予測単位選択部１０３は、画素相関度算出部１０２の演算結果だけを元にフレーム内符号化を行う予測単位を選択していたが、第２の実施形態においては量子化値Ｑによって選択基準が変更されることがある。量子化値Ｑが大きくなると画像の情報が喪失し、入力画像１００と局所復号画像データとの乖離が大きくなる。符号化対象画像の局所復号画像を予測単位の選択に使用しないため、量子化によって劣化した画像に関しては考慮していない。そこで、量子化値Ｑそのものを判断基準に加えることでこの問題を回避する。
【００３９】
量子化値Ｑを判断基準に付加する方法は特に限定するものではないが、例えば、量子化値Ｑに閾値をもたせ、ある閾値以下ならば強制的に１６×１６画素の予測単位とする。また、図４に示す閾値αに量子化値Ｑの大きさによって変化する関数を加えることで、より細かい制御が可能となる。
【００４０】
以上に説明したように、本実施形態における画像符号化装置においては、フレーム内予測画素単位を先決めすることが可能となり、処理の高速化あるいは回路規模の削減が望める。
【００４１】
（本発明に係る他の実施形態）
また、上述した実施形態において図１、図６のいずれかを用いて示した各処理（以下、特定ブロックの各処理とする）は、各処理部の機能を実現する為のプログラムをメモリから読み出してＣＰＵが実行することによりその機能を実現させてもよい。
また、上述した構成に限定さるものではなく、特定ブロックの各処理の全部または一部の機能を専用のハードウェアにより実現してもよい。
【００４２】
また、上述したＣＰＵがプログラムを読み出すメモリは、ＨＤＤ、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体、ＲＡＭ以外の揮発性のメモリでも良い。また、あるいはこれらの組合せによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【００４３】
また、特定ブロックの各処理の機能を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００４４】
具体的には、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含む。
【００４５】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００４６】
さらに記録媒体は、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリであっても良い。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００４７】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【００４８】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００４９】
【図１】本発明の第１の実施形態における画像符号化装置の構成例を示すブロック図である。
【図２】符号化対象マクロブロックに隣接している画素を示す図である。
【図３】本発明の第１の実施形態において、隣接画素の相関度を算出する単位を示す図である。
【図４】本発明の第１の実施形態において、予測単位を決定する条件を示す図である。
【図５】本発明の第１の実施形態において、８×８画素及び４×４画素の予測画素単位を決定する方法を示す図である。
【図６】本発明の第２の実施形態における画像符号化装置の構成例を示すブロック図である。
【符号の説明】
【００５０】
１００  入力画像
１０１  隣接画素バッファ
１０２  画素相関度算出部
１０３  予測単位選択部
１０４  予測誤差算出部
１０５  予測誤差決定部
１０６  符号化部
１０７  局所復号部
１０８  参照画素バッファ
１０９  符号化ストリーム
【図１】
2009111520.tif 000003
【図２】
2009111520.tif 000004
【図３】
2009111520.tif 000005
【図４】
2009111520.tif 000006
【図５】
2009111520.tif 000007
【図６】
2009111520.tif 000008