(57)【要約】【課題】符号化処理、局所復号化処理をブロック単位で並列して実行する。【解決手段】１画面から複数のマクロブロックを選択し、該複数のマクロブロックから周辺画素が符号化されて符号化可能である単位ブロックを抽出してブロックに多重化するブロック多重化手段と、符号化処理または符号化処理および局所復号化処理を前記多重化されたブロックを構成する複数の前記単位ブロックに対して並列して実行する並列演算処理手段と、前記並列演算処理手段の処理後に、前記ブロックを前記単位ブロックに分離して元のマクロブロックの順序に復元するブロック分離復元手段と、を備える。【選択図】  図１
2011166273.tif 000002
【特許請求の範囲】
【請求項１】
１画面から複数のマクロブロックを選択し、該複数のマクロブロックから周辺画素が符号化されて符号化可能である単位ブロックを抽出してブロックに多重化するブロック多重化手段と、
符号化処理、または、符号化処理および局所復号処理を前記多重化されたブロックを構成する複数の前記単位ブロックに対して並列して実行する並列演算処理手段と、
前記並列演算処理手段の処理後に、前記ブロックを単位ブロックに分離して元のマクロブロックの順序に復元するブロック分離復元手段と、を備える動画像符号化装置。
【請求項２】
請求項１に記載の動画像符号化装置であって、さらに、
前記ブロック分離復元手段によって復元された前記マクロブロックから再構成される画像データを格納するフレームメモリと、
前記フレームメモリに格納された前記画像データから複数のマクロブロックを選択し、該複数のマクロブロックを構成する単位ブロック毎に周辺画素を抽出して周辺画素ブロックに多重化する周辺画素ブロック多重化手段と、
前記周辺画素ブロックを構成する前記単位ブロックの周辺画素に対して並列して予測画像を生成するイントラ予測フィルタ手段と、を備える動画像符号化装置。
【請求項３】
前記ブロック多重化手段は、１画面を水平方向に複数のスライスに分割し、該複数のスライスにおいて相対的に同一位置のマクロブロックを選択する請求項１または２に記載の動画像符号化装置。
【請求項４】
前記ブロック多重化手段は、複数の前記マクロブロックから抽出される前記単位ブロックの位置は該マクロブロック間で相対的に同一位置とする請求項３に記載の動画像符号化装置。
【請求項５】
前記ブロック多重化手段は、各行が並列して符号化対象のブロックを選択し、同一方向にマクロブロックの符号化処理を進行させるものであって、任意の行においてマクロブロックが選択される列は、該行の１行上の行で選択されたマクロブロックからみて、符号化処理を進める方向と逆方向に１マクロブロック分以上ずらした列とする請求項１または２に記載の動画像符号化装置。
【請求項６】
前記周辺画素ブロック多重化手段は、１画面を水平方向に複数のスライスに分割し、該複数のスライスにおいて相対的に同一位置のマクロブロックを選択する請求項２に記載の動画像符号化装置。
【請求項７】
前記周辺画素ブロック多重化手段は、複数の前記マクロブロックから周辺画素を抽出するために選択される前記単位ブロックの位置は該マクロブロック間で相対的に同一位置とする請求項６に記載の動画像符号化装置。
【請求項８】
前記周辺画素ブロック多重化手段は、各行が並列して符号化対象のブロックを選択し、同一方向にマクロブロックの符号化処理を進行させるものであって、任意の行においてマクロブロックが選択される列は、該行の１行上の行で選択されたマクロブロックからみて、符号化処理を進める方向と逆方向に１マクロブロック分以上ずらした列とする請求項２に記載の動画像符号化装置。
【請求項９】
前記並列演算処理手段はSIMD制御をするプロセッサを用いて並列処理を行う請求項１乃至８に記載の動画像符号化装置。
【請求項１０】
１画面から複数のマクロブロックを選択し、該複数のマクロブロックから周辺画素が符号化されて符号化可能である単位ブロックを抽出してブロックに多重化するブロック多重化ステップと、
符号化処理、または、符号化処理および局所復号処理を前記多重化されたブロックを構成する複数の前記単位ブロックに対して並列して実行する並列演算処理ステップと、
前記並列演算処理手段の処理後に、前記ブロックを単位ブロックに分離して元のマクロブロックの順序に復元するブロック分離復元ステップと、を含む動画像符号化方法。
【請求項１１】
請求項１０に記載の動画像符号化方法であって、さらに、
前記ブロック分離復元手段によって復元された前記マクロブロックから再構成される画像データを格納する画像データ格納ステップと、
前記格納された前記画像データから複数のマクロブロックを選択し、該複数のマクロブロックを構成する単位ブロックの周辺画素を抽出して周辺画素ブロックに多重化する周辺画素ブロック多重化ステップと、
前記周辺画素ブロックを構成する前記単位ブロックの周辺画素に対して並列して予測画像を生成するイントラ予測フィルタステップと、を含む動画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像の符号化技術に関し、特に符号化処理、局所復号処理を並列実行する動画像符号化装置および動画像符号化方法に関するものである。
【背景技術】
【０００２】
近年、動画像はより高精細なものが求められるようになり、その膨大な情報量をそのまま記録媒体に蓄積させることや、通信回線に伝送させることは効率の観点から好ましくない。そのため、記録容量や伝送効率を考慮して動画像の情報量を削減しつつ符号化することが一般的に行われている。動画符号化技術の国際標準規格として「Ｈ．２６４／ＡＶＣ(Advanced Video Cording)」が定められており、同規格では、同一フレーム内で予測を行う画面内予測符号化方式（以下、イントラ予測符号化方式と呼ぶ）が導入されている。
【０００３】
Ｈ．２６４／ＡＶＣのイントラ予測符号化方式のうち、複雑な画像に対して適用される、４×４画素単位のイントラ予測符号化（以下「イントラ４×４モード」と呼ぶ）は、画面を１６×１６画素から構成されるマクロブロックに分割し、さらにそのマクロブロックを縦横に（４×４）個の単位ブロック（４ライン×４画素から構成されるブロック）に分割して符号化を行う。（尚、他にも８×８画素単位、または、１６×１６画素単位の画面内予測符号化を併用する場合もある。以下、これらを各々、イントラ８×８モード、イントラ１６×１６モードと呼ぶ。）
【０００４】
イントラ４×４モードにおいては、予測方向によって異なる９種類の予測モードがあり、この中からひとつの予測モードを選択して符号化を行う。図５に示す予測モード０から８は、イントラ４×４モードにおける９種類の予測モードの概要を示す図である。図５中の色付けされていない画素が単位ブロックの画素であり、色付けされた画素が符号化対象となる単位ブロックの符号化に必要となる周辺画素である。
【０００５】
図６にイントラ予測のブロック構成（左側がイントラ４×４モードであり、右側がイントラ８×８モード）と符号化順序を示す。Ｈ．２６４／ＡＶＣ規格のイントラ予測で用いる周辺画素は、符号化済みのものを用いることと規定されているため、図中のブロック番号の小さいものから順に符号化するように規定されている。この順番に従い、符号化対象の単位ブロックより前に符号化した周辺画素値を参照して図５に示す９種類の予測モードの中から最適な予測モードを選択することによって符号化がなされる。
【０００６】
具体的には、以下の順序で符号化処理および局所復号処理が行われる。まず、図６の０番の単位ブロックとそれに対応するイントラ予測部で周辺画素から予測される予測画像内の単位ブロックとの間で差分演算を行う。このとき、上記９種類の予測モードの中から最適な予測モードが選択される。すなわち、図５における予測モード０から８のそれぞれについて、符号化対象の単位ブロックと周辺画素から予測された予測画像内の対応する単位ブロックとの絶対値誤差和を算出し、絶対値誤差和が最小となる予測モードが選択される。そして最小となった予測モードを用いて差分演算データが出力され、直交変換、量子化、逆量子化、逆直交変換、予測画像との加算処理の各処理が行われる。次に、１番の単位ブロックについて、同様の処理を行う。以下、上記ブロック番号の順序で同様に符号化処理および局所復号処理を行っていく。（例えば、非特許文献１。）
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】大久保榮監修「インプレス標準教科書シリーズ  Ｈ．２６４／ＡＶＣ教科書」、インプレス ネットビジネスカンパニー  初版  P.106〜112
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来技術におけるイントラ４×４モードでは、４ライン×４画素という小さなブロック単位で予測を行うため、符号化の圧縮率の面では効率的であるが、最適な予測モードを選択するために９種類の予測モード毎の予測誤差の総和を算出して比較する必要があり、膨大な演算量となることから、符号化処理速度および局所復号処理速度を向上させる上で大きな障害となっている。
【０００９】
このため、上記の処理を複数の単位ブロックに対して並列に処理することも考え得るが、符号化対象の単位ブロックが参照できる周辺画素は符号化済みの画素でなければならないという規格の制約の下、上記のようなブロック番号順に処理を進めなければならず、複数の単位ブロックを同時に処理する並列処理の実現が困難であるという問題があった。
【００１０】
この発明は上記のような問題点を解消するためになされたもので、複数のマクロブロックから、参照する周辺画素が既に符号化されて符号化可能である単位ブロックを抽出して新たにブロックを多重化させることで、そのブロックを構成する複数の単位ブロックに対して並列演算処理を実行させるものである。これにより、符号化処理と局所復号処理の処理速度を向上させた画像符号化装置および画像符号化方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る動画像符号化装置は、１画面から複数のマクロブロックを選択し、該複数のマクロブロックから周辺画素が符号化されて符号化可能である単位ブロックを抽出してブロックに多重化するブロック多重化手段と、符号化処理、または、符号化処理および局所復号処理を前記多重化されたブロックを構成する複数の前記単位ブロックに対して並列して実行する並列演算処理手段と、前記並列演算処理手段の処理後に、前記ブロックを単位ブロックに分離して元のマクロブロックの順序に復元するブロック分離復元手段と、を備えるものである。
【発明の効果】
【００１２】
本発明によれば、符号化処理、局所復号処理をブロック単位で並列して実行することが可能となり、符号化処理、局所復号処理の処理速度を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】この発明の実施の形態１における動画像符号化装置の構成の例である。
【図２】この発明の実施の形態１におけるブロック多重化手段を説明するための、各スライスにおけるマクロブロックの選択とブロック多重化の例である。
【図３】この発明の実施の形態１における符号化処理および局所復号処理のフローチャートである。
【図４】この発明の実施の形態２におけるブロック多重化手段を説明するための、マクロブロックの選択とブロック多重化の例である。
【図５】Ｈ．２６４／ＡＶＣ規格におけるイントラ予測モードの、イントラ４ｘ４予測における９通りの全モードを説明するための概念図である。
【図６】Ｈ．２６４／ＡＶＣ規格におけるイントラ予測モードの、イントラ４ｘ４予測と、イントラ８ｘ８予測の単位ブロックについて説明するための概念図である。
【発明を実施するための形態】
【００１４】
実施の形態１．
以下に、本発明に係る動画像符号化装置の実施の形態を図面に基づいて詳細に説明する。なお、以下の実施の形態は、本発明を具体化する際の一形態であって、本発明をその範囲内に限定するためのものではない。
【００１５】
図１に、第１の実施の形態における動画像符号化装置の構成を示す。１は入力画像信号、入力画像信号１のフレーム順序を符号化順に並べ替える並べ替え部２、入力画像と予測画像の差分演算を行う減算器３、減算器３から出力される差分データを直交変換する並列直交変換部４、直交変換されたデータを量子化する並列量子化部５、量子化係数データ等の信号に可変長符号を割り当てる可変長符号化部６、データを一時蓄え出力するバッファ７、符号化データ８、量子化係数データ等の信号を逆量子化する並列逆量子化部９、直交変換されたデータに逆直交変換をする並列逆直交変換部１０、並列逆直交変換部１０の出力データと予測画像を加算する加算器１１、画面内予測を行う並列イントラ予測部１２、符号化済み画像データを格納するフレームメモリ１３、フレームメモリ１３に格納された符号化済みデータを参照画像として原画像との比較から動きベクトルを探索する動きベクトル探索部１４、検出された動きベクトルに従って動き補償予測を行う動き補償予測部１５を備える。さらに、並べ替え部２と減算器３の間にマクロブロックラインバッファ部２０及びブロック多重化部２１、並列量子化部５と可変長符号化部６の間にマクロブロックラインバッファ部２６及びブロック分離・復元部２７、加算器１１とフレームメモリ１３の間にマクロブロックラインバッファ部２８、及び、ブロック分離・復元部２９、フレームメモリ１３と並列イントラ予測部１２の間にマクロブロックラインバッファ部２４及びブロック多重化部２５、動き補償予測部１５と減算器３の間にマクロブロックラインバッファ部２２及びブロック多重化部２３を備えている。
【００１６】
次に動作を説明する。以下、説明を簡単にするため、図６の左図に示すイントラ予測のイントラ４×４モードに絞って説明することとする。また、１画面を１６個のスライスに分割して処理することを前提とする。ここでは各スライスの水平方向のマクロブロックの数は同一とする。
【００１７】
図２に本実施の形態におけるブロック多重化手段を説明するための各スライスにおけるマクロブロックの選択とブロック多重化の例を示す。前述の通り、１画面を１６個のスライスとするのでＮ＝１６となる。各スライスからマクロブロックを選択し、各スライスのマクロブロックから単位ブロックを抽出して新たな１６ライン×１６画素のブロックに多重化する。
【００１８】
また、図示するように選択されるマクロブロックの位置は各スライス間で相対的に同一位置とする。また、選択されたマクロブロックから抽出される単位ブロックの位置についてもマクロブロック間で相対的に同一位置とする。すなわち、同一のブロック番号の単位ブロックを抽出することになる。また各マクロブロックから単位ブロックを抽出する順番はＨ．２６４／ＡＶＣ規格の符号化順序、すなわち、図６に示されたブロック番号順であるとする。この順番によって単位ブロックを抽出し多重化することで、多重化された全単位ブロックについての周辺画素は既に符号化されていることになり、符号化処理、または、符号化処理および局所復号処理を全単位ブロックに対して並列に実行することが可能となる。尚、Ｈ．２６４／ＡＶＣ規格では、異なるスライスの画素を用いて予測画像を生成することは規格で禁止されている。本実施の形態では、符号化対象の単位ブロックと同一のスライスにおける周辺画素から予測画像を生成するので、この規格の要請に反することはない。また、各スライスで選択されるマクロブロックの位置、各マクロブロックで選択される単位ブロックの位置をともに相対的に同一位置としているが、これは選択及び抽出処理、復元処理を簡易にするためである。従って多重化されるブロックを構成する全単位ブロックの周辺画素が既に符号化されている選択方法であれば、必ずしも相対的に同一とする必要はなく、他の選択方法を適用することも可能である。
【００１９】
図１を用いてイントラ４×４モード時の処理の流れを説明する。まず、入力画像信号１は並べ替え部２にてバッファリングされ、表示順序から符号化順序へ並び替えられる。次にマクロブロックラインバッファ部２０にてバッファリングされ、図２で示したスライス毎に選択されたマクロブロック内で、同一ブロック番号の単位ブロックを抽出した後、ブロック多重化部２１にて、これらを１６画素×１６ラインのサイズのブロックに多重化する。
【００２０】
次に、ブロック多重化部２１で多重化されたブロックは、減算器３にて、上記と同様のブロック多重化処理を施された予測画像との差分演算を全ての単位ブロックについて並列して行う。その出力である差分データについて、並列直交変換部４で全ての単位ブロックの差分データに対して直交変換を並列実行し、並列量子化部５で全ての単位ブロックに対して量子化処理を並列実行する。量子化された係数データを、並列逆量子化部９で全ての単位ブロックに対して逆量子化処理を並列実行し、並列逆直交変換部１０で全ての単位ブロックに対して逆直交変換を並列実行する。並列逆直交変換部１０より出力される逆直交変換後のデータに、加算器１１にて、上記の予測画像を全ての単位ブロックについて並列して加算する。尚、符号化処理とは予測画像との差分演算、直交変換処理、量子化処理を指し、局所復号処理とは逆量子化処理、逆直交変換処理、予測画像との加算処理を指す。これらの一連の演算処理を多重化されたブロックを構成する全単位ブロックに対して並列実行することにより、符号化処理と局所復号処理の演算処理速度を高速化することが可能となる。また、上記では全ての単位ブロックを並列に処理するとしているが、各部の処理能力に応じて多重化されたブロックを複数の部分に分けて、それに含まれる単位ブロックについて並列処理を実行するものでもよい。
【００２１】
次に、加算器から出力されたデータをマクロブロックラインバッファ部２８にてバッファリングし、図２に示した各スライスのマクロブロックの順序に、今度は逆に戻すよう、ブロック分離・復元部２９にて、単位ブロックに分離した後、元のスライス内のマクロブロックの順序に復元する。これによって復元された符号化済み画像データは、フレームメモリ１３に書き込まれる。
【００２２】
次に、減算器３の一方の入力となる予測画像の生成に関する処理について説明する。イントラ予測のイントラ４×４モードについて説明しているので、イントラ符号化を前提に説明する。フレームメモリ１３からマクロブロックラインバッファ部２４へ符号化済み画像データが出力され、その符号化済み画像データのスライス毎に、相対的に同一位置のマクロブロックを選択し、さらに各マクロブロック内の同一ブロック番号の単位ブロックに対する周辺画素を抽出した後、ブロック多重化部２５にて多重化する。このブロックを構成する周辺画素は全てが符号化済みである。以下、このブロックを周辺画素ブロックと称し、またその多重化手段を周辺画素ブロック多重化手段と称す。ここで、イントラ４×４モードにおける、０から８の全予測モードに対する単位ブロックの周辺画素は、図５の色付けされた画素位置となる。従って、９通り全ての予測モードに対応するには、１つの単位ブロックを構成する４×４＝１６画素に対して、周辺画素は１３画素（左側４画素、上側４画素、左上側１画素、右上側４画素）が必要である。すなわち、周辺画素ブロックを構成する単位ブロックは１３画素となる。
【００２３】
次に、周辺画素ブロックを並列イントラ予測部１２へと入力する。また、並列イントラ予測部１２には次に入力される入力画像信号の１画面からブロック多重化部２１によってマクロブロックの選択および単位ブロックの抽出によって多重化されたブロックも入力される。並列イントラ予測部１２で全ての単位ブロックに対して並列して予測モード０から８の９通りのイントラ予測フィルタ処理を実行し、予測評価値が最小となる予測モードを各ブロックについて算出するとともに、各ブロックについて予測評価値が最小となる予測モードを用いた予測画像を生成し、減算器３に出力する。
【００２４】
これとは別に、上記、並列量子化部５より出力される量子化された係数データは、マクロブロックラインバッファ部２６にてバッファリングされ、図２に示した各スライスへ、今度は逆に戻すよう、ブロック分離・復元部２７にて、単位ブロックに分離した後、元のスライスへ復元する。復元された量子化係数データは、可変長符号化部６にて可変長符号化が施され、バッファ７にて速度平滑化された後、符号化データとして出力される。この場合では符号化処理、すなわち、予測画像との差分演算、直交変換処理、量子化処理が並列演算処理されることにより、符号化処理を高速化することが可能となる。
【００２５】
尚、上記ではイントラ予測のイントラ４×４モードに絞って説明したが、インター予測の場合には、フレームメモリ１３より動きベクトル探索領域画素データを、並べ替え部２より入力画像信号１を動きベクトル探索部１４に入力し、動きベクトル探索を実施し、予測評価値が最小となる予測モードと動きベクトルを算出する。その結果を受けて、動き補償予測部１５にて、予測画像を生成する。その後、マクロブロックラインバッファ部２２にてバッファリングし、図２で示したスライス毎に、同一ブロック番号の単位ブロックを抽出した後、ブロック多重化部２３にて、これを１６画素×１６ラインのサイズに多重化して、減算器３に出力する。イントラ予測の場合は、イントラ４×４モード、イントラ８×８モード、イントラ１６×１６モードの各モードによって、単位ブロックのサイズが決定されるが、インター予測の場合は、多重化する単位ブロックのサイズは、ＤＣＴ（Discrete Cosine Transform）ブロックサイズによって決定される。Ｈ．２６４／ＡＶＣ規格では、ＤＣＴブロックサイズは４×４と８×８の２通りがあり、符号化器の判断で選択することができる。
【００２６】
次に、図３を用いて、本実施の形態におけるイントラ予測のイントラ４×４モードについて１画面の符号化処理および局所復号処理の流れを説明する。まず、マクロブロックラインバッファ（原画像）データを異なるスライス毎にマクロブロックの選択、各マクロブロック内で同一のブロック番号の単位ブロックを抽出して多重化をするブロック多重を行う（ステップＳＴ１０１）。これにより、入力画像信号１がブロック多重化され、符号化可能な単位ブロックで構成されたブロックが生成される。これらは、後述するステップＳＴ１０５、及び、ステップＳＴ１１０における予測画像差分演算処理に用いられる。
【００２７】
次に、マクロブロックラインバッファ（フレームメモリ）データのブロック多重を行う（ステップＳＴ１０２）。これにより各ブロックの周辺画素がブロック多重化されて周辺画素ブロックが生成される。これは、後述するステップＳＴ１０４におけるイントラ予測フィルタ処理に用いられる。
【００２８】
まず、予測モード番号を０番とする（ステップＳＴ１０３）。イントラ予測のイントラ４×４モードの場合、予測モード番号は０から８の９通りが存在するため、後述のステップＳＴ１０４からステップＳＴ１０９で、予測モード番号０から８のループ処理を実施する。尚、予測モード番号を０番とするのに合わせて、予測残差の差分絶対値和の最小値を予測残差の演算範囲の最大値に設定しておく。
【００２９】
現在の予測モード番号にて、イントラ予測フィルタ処理を、周辺画素ブロックを構成する周辺画素から実行する（ステップＳＴ１０４）。このとき、周辺画素ブロックを構成する単位ブロックを並列して処理させる。これにより、現在の予測モード番号における、イントラ予測画像が生成される。これと、前述のステップＳＴ１０１において元画像からブロック多重化されたブロックを構成する全単位ブロックについて、予測残差の演算を並列で実行する（ステップＳＴ１０５）。さらに、ステップＳＴ１０５で求めた予測残差の差分絶対値和を単位ブロック毎に求め、既に算出した予測モード番号での予測残差の差分絶対値和のうち、最小のものと比較して、新たに求めた予測残差の差分絶対値和の方が小さければ、予測残差の差分絶対値和の最小値を更新して記憶し直す。このとき、予測モード番号も記憶しておく。これらの処理は、全単位ブロックに対して並列実行するものとする（ステップＳＴ１０６）。
【００３０】
前述のステップＳＴ１０６で、更新のあった各単位ブロックについて、予測画像の更新を全単位ブロックについて並列実行する（ステップＳＴ１０７）。その後、予測モード番号のインクリメント処理を行う（ステップＳＴ１０８）。予測モード番号が、規格で定められた予測モード番号の範囲を超えていなければ、ステップＳＴ１０４からの処理を繰り返す。そうでなければ、全予測モード番号を終えたことになるのでステップＳＴ１１０へ進む（ステップＳＴ１０９）。
【００３１】
最終的に求めた予測画像と原画像を用いて、予測画像差分演算を全単位ブロックについて並列実行する（ステップＳＴ１１０）。さらに、差分画像の直交変換処理を全単位ブロックについて並列実行し（ステップＳＴ１１１）、その結果の量子化処理も全単位ブロックについて並列実行する（ステップＳＴ１１２）。
【００３２】
その結果をさらに、全単位ブロックについて並列に逆量子化処理し（ステップＳＴ１１３）、その結果の逆直交変換処理も全単位ブロックについて並列実行する（ステップＳＴ１１４）。最後に、予測画像加算を、やはり全単位ブロックについて並列実行し（ステップＳＴ１１５）、1画面処理完了を判定し、まだ完了していなければ、ステップＳＴ１０１からの処理を繰り返す。完了していれば、処理を終了する（ステップＳＴ１１６）。
【００３３】
以上の処理フローによって、符号化処理および局所復号処理において多重化された全単位ブロックを並列に処理することができる。これにより符号化処理と局所復号処理の演算処理の高速化を実現することが可能である。また、同様に局所復号された画像データから周辺画素を抽出し、周辺画素ブロックを多重化することにより、イントラ予測フィルタ処理もブロック単位で並列実行することができ、イントラ予測フィルタ処理の高速化を実現することが可能である。
【００３４】
またこのような演算をするための具体的な実現手段としては上記では減算器、並列直交変換部、並列量子化部、並列逆量子化部、並列逆直交変換部、加算器、並列イントラ予測部としたが、これらを、例えば、演算器を多数実装し、並列動作させる、SIMD（Single Instruction Multiple Data stream）型のプロセッサ等によって実行すれば、実行サイクルの短縮を図ることが可能である。
【００３５】
また、上記では説明の簡便のため、イントラ予測のうち、イントラ４×４モードに限定して説明したが、イントラ８×８、イントラ１６×１６モードについても基本的には単位ブロックのサイズが異なることと、予測モードの数が異なるだけであるので、本実施の形態を他のモードにも適用することは当然に可能である。また、インター予測については、Ｈ．２６４／ＡＶＣ規格をそのまま実行しても、即ちマクロブロックを分割して可変サイズのサブマクロブロックとすることによって並列実行可能であるが、本実施の形態を適用してインター予測をすることも可能である。
【００３６】
また、イントラ４×４モードの実行結果を記憶しておくこととし、さらにイントラ８×８モード、イントラ１６×１６モードも実行して結果を記憶しておくこととする。これらの結果のうち、各マクロブロックで必要な結果のみを用いることで、全モードを組み合わせて符号化を行うことも可能である。インター予測についても同様である。
【００３７】
また、上記では説明の簡便のため、スライス分割数を１６固定としたが、装置全体の性能指標に見合えば、スライス分割数はいくつでも構わない。ただし、その場合、ブロック多重化後の並列実行単位ブロック数が１６未満になる場合があり得る。
【００３８】
以上の構成によれば、従来のＨ．２６４／ＡＶＣのイントラ予測においては符号化対象の単位ブロックが参照できる画素は符号化済みの画素でなければならないという制約があるため、原理的に、ブロック以下の単位でしか処理の並列化が出来なかった。しかし、以上の構成によって予測画像との差分演算、直交変換、量子化、逆量子化、逆直交変換、予測画像の加算演算という、一連の符号化処理、局所復号処理およびイントラ予測フィルタ処理による予測画像生成について並列演算を実行できるようになり処理速度を向上させることが可能となる。
【００３９】
実施の形態２．
第２の実施の形態における動画像符号化装置では、図２におけるマクロブロックバッファ部２０、２２、２４、２６、２８、と、ブロック多重化部２１、２３、２５、及び、ブロック分離・復元部２７、２９における処理のみが第１の実施の形態と異なる。以下、第１の実施の形態との差異のみに絞って説明する。
【００４０】
本実施の形態では、スライス分割を前提としない。その代わり、１画面内で選択するマクロブロック位置に制限を設けるところが、第１の実施の形態と異なる。図４に本実施の形態におけるブロック多重化手段を説明するための、マクロブロックの選択とブロック多重化の例を示す。図示するように、各行単位で並列して符号化対象のブロックを選択し、図では右側方向にマクロブロックの符号化処理を進行させている。この方向は左側方向であってもよい。すなわち、各行が同一方向に符号化処理を進める。次に、各行の間でマクロブロックを選択する列を、ある任意の行について、その行の１行上の列で選択されたマクロブロックからみて左側方向に１マクロブロック分ずらしてマクロブロックを選択する。このように１マクロブロック分ずらして選択することとする。これによって、各行で選択されたマクロブロックを構成する単位ブロックの符号化に必要な周辺画素は全て符号化されていることとなる。尚、ずらすマクロブロックの数は１マクロブロック分でなくとも、少なくとも１マクロブロック分以上ずらすものであれば同様の効果を得ることができる。
【００４１】
また、さらに選択されたマクロブロックが画面端に達した場合には、いずれのマクロブロックも符号化処理されていない行の、到達した画面端と反対側の画面端からみて先頭のマクロブロックが次に選択される。
【００４２】
以上の構成によれば、スライス分割を前提としなくとも符号化処理、局所復号処理、イントラ予測フィルタ処理の実行において、ブロック多重化した全ブロックを並列に処理することができる。
【００４３】
これによって実施の形態２においても実施の形態１と同様に符号化処理、局所復号処理、イントラ予測フィルタ処理の高速化を実現することができる。
【００４４】
また、減算器、並列直交変換部、並列量子化部、並列逆量子化部、並列逆直交変換部、加算器、並列イントラ予測部を、演算器を多数実装し、並列動作させる、SIMD（Single Instruction Multiple Data stream）型のプロセッサ等に適用すれば、実行サイクルの短縮を図ることが可能であることは、実施の形態１と同様である。
【符号の説明】
【００４５】
１                                  入力画像信号
２                                  並べ替え部
３                                  減算器
４                                  並列直交変換部
５                                  並列量子化部
６                                  可変長符号化部
７                                  バッファ
８                                  符号化データ
９                                  並列逆量子化部
１０                                並列逆直交変換部
１１                                加算器
１２                                並列イントラ予測部
１３                                  フレームメモリ
１４                                動きベクトル探索部
１５                                動き補償予測部
２０、２２、２４、２６、２８        マクロブロックラインバッファ部
２１、２３、２５                    ブロック多重化部
２７、２９                          ブロック分離・復元部
【図１】
2011166273.tif 000003
【図２】
2011166273.tif 000004
【図３】
2011166273.tif 000005
【図４】
2011166273.tif 000006
【図５】
2011166273.tif 000007
【図６】
2011166273.tif 000008