(57)【要約】【課題】本発明は、画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体に関し、例えばＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置又は復号化装置に適用して、動作周波数を高くしなくても、解像度の高い画像データを符号化処理又は復号化処理できるようにする。【解決手段】本発明は、イントラ４×４予測モード等における予測値の生成処理において、各マクロブロックのラスタ走査開始端側及び終了端側（ｍｍ０、ｍｍ１）、（ｍｍ１４、ｍｍ１５）では逐次処理により予測値を生成し、残りの箇所（ｍｍ２〜ｍｍ１３）では並列処理により予測値を生成する。【選択図】        図１
2009141539.tif 000002
【特許請求の範囲】
【請求項１】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、
前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、
前記マクロブロック処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部と、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する減算器とを有し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する
ことを特徴とする画像処理装置。
【請求項２】
前記マクロブロック処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する間、
前記１つのマクロブロックに続いて処理するマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測値生成部で作成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像処理装置は、
前記マクロブロック処理部を複数有し、
１つのピクチャーのラスタ走査開始端側のマクロブロックから前記入力画像データの処理を開始した後、処理可能となったマクロブロックに前記複数のマクロブロック処理部を順次割り当てて、前記入力画像データを前記複数のマクロブロック処理部で並列処理する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記画像処理装置は、
前記１つのピクチャーにおけるマクロブロックの処理の完了を監視する状態監視部を有し、
前記マクロブロック処理部は、
前記状態監視部の監視結果に基づいて、前記複数の第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成する処理を完了した時点で、処理可能な他のマクロブロックを検出して前記続いて処理するマクロブロックに設定する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記前処理部は、
前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記前処理部は、
前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、
前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、
前記前処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値をそれぞれ作成する第１及び第２の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記最適予測モードを検出し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測演算器で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測演算器で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測演算器で逐次作成する
ことを特徴とする画像処理装置。
【請求項８】
前記前処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測演算器で逐次作成する間、
前記１つのマクロブロックに続くマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測演算器で作成する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記前処理部は、
前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値を生成する第３の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値と、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値とに基づいて、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
ことを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記前処理部は、
前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値を生成する第３の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値と、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値とに基づいて、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項１１】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理装置において、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された最適予測モードの予測値を生成するマクロブロック処理部と、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化部とを有し、
前記マクロブロック処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部を有し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する
ことを特徴とする画像処理装置。
【請求項１２】
前記マクロブロック処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する間、
前記１つのマクロブロックに続いて処理するマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測値生成部で作成する
ことを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記画像処理装置は、
前記マクロブロック処理部を複数有し、
１つのピクチャーのラスタ走査開始端側のマクロブロックから前記入力画像データの処理を開始した後、処理可能となったマクロブロックに前記複数のマクロブロック処理部を順次割り当てて、前記入力画像データを前記複数のマクロブロック処理部で並列処理する
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記画像処理装置は、
前記１つのピクチャーにおけるマクロブロックの処理の完了を監視する状態監視部を有し、
前記マクロブロック処理部は、
前記状態監視部の監視結果に基づいて、前記１つのマクロブロックの前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成する処理を完了した時点で、処理可能な他のマクロブロックを検出して前記続いて処理するマクロブロックに設定する
ことを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記最適予測モードが、前記符号化データの生成時、前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから選択された最も発生符号量の少ない予測モードである
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する前記予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法。
【請求項１７】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理ステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法。
【請求項１８】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法において、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法。
【請求項１９】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムにおいて、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラム。
【請求項２０】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムにおいて、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理ステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラム。
【請求項２１】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムにおいて、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップとを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラム。
【請求項２２】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラムを記録した記録媒体。
【請求項２３】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理ステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する復号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラムを記録した記録媒体。
【請求項２４】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップとを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
ことを特徴とする画像処理方法のプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体に関し、例えばＨ．２６４／ＭＰＥＧ−４ＡＶＣ（ITU-T Rec. H.264 ISO/IEC 14496-10 AVC ）規格の符号化装置又は復号化装置に適用することができる。本発明は、イントラ４×４予測モード等における予測値の生成処理において、各マクロブロックのラスタ走査開始端側及び終了端側では逐次処理により予測値を生成し、残りの箇所では並列処理により予測値を生成することにより、動作周波数を高くしなくても、解像度の高い画像データを符号化処理又は復号化処理できるようにする。
【背景技術】
【０００２】
従来、Ｈ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置及び復号化装置は、ラスタ走査の順序で順次マクロブロックを処理して画像データを符号化処理及び復号化処理している。ここでマクロブロックは、画像データの基本の処理単位であり、輝度成分では１６画素×１６画素のブロックである。従って図１８に示すように、例えば８個×４個のマクロブロックＭ０〜Ｍ３１で構成されるピクチャーを処理する場合、従来の符号化装置及び復号化装置は、矢印で示す順序でマクロブロックＭ０〜Ｍ３１を順次処理する。
【０００３】
またＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置及び復号化装置は、処理の完了した隣接マクロブロックの処理結果を参照して各マクロブロックを処理する。従って図１９に示すように、例えば座標（ｘ，ｙ）のマクロブロックＭ（ｘ，ｙ）を処理する場合には、左上のマクロブロックＭ（ｘ−１，ｙ−１）、真上のマクロブロックＭ（ｘ，ｙ−１）、右上のマクロブロックＭ（ｘ＋１，ｙ−１）、左のマクロブロックＭ（ｘ−１，ｙ）の処理結果を参照してマクロブロックＭ（ｘ，ｙ）を符号化処理、復号化処理する。なお図１９では参照関係を矢印で示す。また１つのピクチャーの最上段のマクロブロック及び左端のマクロブロックでは、処理結果である参照画像データが上方及び左方に存在しないことから、それぞれ上方向及び左方向からの参照は中止される。
【０００４】
このマクロブロックの処理順序に関して、特開２００６−１２９２８４号公報には、複数のマクロブロックを同時並列的に処理する方法が提案されている。
【０００５】
またＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格では、インター予測及びイントラ予測に複数の予測モードが用意されており、符号化装置は、複数の予測モードから最適予測モードを検出して各マクロブロックを符号化処理する。具体的に、Ｈ．２６４／ＭＰＥＧ−４ＡＶＣ規格では、イントラ予測に、イントラ１６×１６予測モード、イントラ８×８予測モード及びイントラ４×４予測モードが用意されている。
【０００６】
ここでイントラ１６×１６予測モードは、マクロブロック単位で予測値を作成してマクロブロックを符号化処理する予測モードである。またイントラ８×８予測モードは、１つのマクロブロックを水平方向及び垂直方向にそれぞれ２等分して作成される８画素×８画素のブロック単位で予測値を生成してマクロブロックを符号化処理する予測モードである。またイントラ４×４予測モードは、イントラ８×８予測モードにおける８画素×８画素のブロックを水平方向及び垂直方向にそれぞれ２等分して作成される４画素×４画素のブロック単位で予測値を生成してマクロブロックを符号化処理する予測モードである。またイントラ１６×１６予測モード、イントラ８×８予測モード及びイントラ４×４予測モードには、それぞれ予測方向の異なる複数の予測モードが設けられている。
【０００７】
従来、符号化装置及び復号化装置は、イントラ８×８予測モードでは、図２０において矢印で処理順序を示すように、ラスタ走査順に８画素×８画素のブロック（以下、単に８画素×８画素ブロックと呼ぶ）ｍ０〜ｍ３を順次処理する。またイントラ４×４予測モードでは、図２１において矢印で処理順序を示すように、破線で示す８画素×８画素のブロックをラスタ走査順に処理し、各８画素×８画素のブロック内では、それぞれ４画素×４画素のブロック（以下、単に４画素×４画素ブロックと呼ぶ）（ｍｍ０、ｍｍ１、ｍｍ４、ｍｍ５）、（ｍｍ２、ｍｍ３、ｍｍ６、ｍｍ７）、（ｍｍ８、ｍｍ９、ｍｍ１２、ｍｍ１３）、（ｍｍ１０、ｍｍ１１、ｍｍ１４、ｍｍ１５）をラスタ走査順に処理する。従ってこの図２１の例では、４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ４、ｍｍ５、ｍｍ２、ｍｍ３、ｍｍ６、ｍｍ７、ｍｍ８、ｍｍ９、ｍｍ１２、ｍｍ１３、ｍｍ１０、ｍｍ１１、ｍｍ１４、ｍｍ１５の順序で４画素×４画素ブロックｍｍ０〜ｍｍ１５を順次処理する。
【０００８】
また図１９との対比により図２２に示すように、４×４予測モードにおいて、符号化装置及び復号化装置は、処理の完了した隣接する４画素×４画素ブロックの処理結果を参照して各４画素×４画素ブロックを処理する。従って例えば４画素×４画素ブロックｍｍ９を処理する場合、左上の４画素×４画素ブロックｍｍ４、真上の４画素×４画素ブロックｍｍ５、右上の４画素×４画素ブロックｍｍ６、左の４画素×４画素ブロックｍｍ８の処理結果を参照して４画素×４画素ブロックｍｍ９を符号化処理、復号化処理する。なお破線で示す８画素×８画素のブロックのうちで、左側の各ブロックにおける末尾の４画素×４画素ブロックｍｍ５、ｍｍ１３を処理する場合、右上の４画素×４画素ブロックｍｍ６、ｍｍ１０の参照は中止される。Ｈ．２６４／ＭＰＥＧ−４ＡＶＣ規格では、この参照関係の方向が９種類の予測モードによって定義される。
【０００９】
ところで符号化処理、復号化処理する画像データの解像度が高くなると、１つのピクチャーを構成するマクロブロック数が増大し、マクロブロックに割り当て可能な処理時間が短くなる。従って符号化装置及び復号化装置では、１つの４画素×４画素ブロックを高速度で処理することが必要になる。
【００１０】
その結果、従来のＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置及び復号化装置では、高解像度の画像データを処理する場合、動作周波数を高くすることが必要になる問題があった。ここで符号化装置及び復号化装置は、動作周波数が高くなると、消費電力が増大し、また集積回路化することが困難になる場合もある。
【特許文献１】特開２００６−１２９２８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明は以上の点を考慮してなされたもので、動作周波数を高くしなくても、解像度の高い画像データを符号化処理又は復号化処理することができる画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体を提案しようとするものである。
【課題を解決するための手段】
【００１２】
上記の課題を解決するため請求項１の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置に適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、前記マクロブロック処理部は、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部と、前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する減算器とを有し、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する。
【００１３】
また請求項７の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置に適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、前記前処理部は、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値をそれぞれ作成する第１及び第２の予測演算器を有し、前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記最適予測モードを検出し、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測演算器で逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測演算器で同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測演算器で逐次作成する。
【００１４】
また請求項１１の発明は、マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理装置に適用して、前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理部と、前記前処理部で検出された最適予測モードの予測値を生成するマクロブロック処理部と、前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化部とを有し、前記マクロブロック処理部は、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部を有し、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する。
【００１５】
また請求項１６の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法に適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００１６】
また請求項１７の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法に適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記前処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、前記予測演算ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００１７】
また請求項１８の発明は、マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法に適用して、前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成成ステップとを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００１８】
また請求項１９の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムに適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００１９】
また請求項２０の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムに適用して、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記前処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、前記予測演算ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００２０】
また請求項２１の発明は、マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムに適用して、前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００２１】
また請求項２２の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体に適用して、前記画像処理方法のプログラムは、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００２２】
また請求項２３の発明は、マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体に適用して、前記画像処理方法のプログラムは、前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、前記前処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、前記予測演算ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００２３】
また請求項２４の発明は、マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムを記録した記録媒体に適用して、前記画像処理方法のプログラムは、前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。
【００２４】
請求項１、請求項１６、請求項１９、又は請求項２２の構成によれば、符号化処理における最適予測モードの予測値生成処理において、１つのマクロブロックのラスタ走査開始端及びラスタ走査終了端側を除く第２のブロックについては、複数の第２のブロックで同時並列的に予測値を生成することができる。従って１つのマクロブロックの処理に要する時間を従来に比して短くすることができ、動作周波数を高くしなくても、解像度の高い画像データを符号化処理することができる。
【００２５】
また請求項７、請求項１７、請求項２０、又は請求項２３の構成によれば、最適予測モードを検出する際の予測値の生成処理において、１つのマクロブロックのラスタ走査開始端及びラスタ走査終了端側を除く第２のブロックについては、複数の第２のブロックで同時並列的に予測値を生成することができる。従って１つのマクロブロックの処理に要する時間を従来に比して短くすることができ、動作周波数を高くしなくても、解像度の高い画像データを符号化処理することができる。
【００２６】
請求項１１、請求項１８、請求項２１、又は請求項２４の構成によれば、復号化処理における予測値の生成処理において、１つのマクロブロックのラスタ走査開始端及びラスタ走査終了端側を除く第２のブロックについては、複数の第２のブロックで同時並列的に予測値を生成することができる。従って１つのマクロブロックの処理に要する時間を従来に比して短くすることができ、動作周波数を高くしなくても、解像度の高い画像データを復号化処理することができる。
【発明の効果】
【００２７】
本発明によれば、動作周波数を高くしなくても、解像度の高い画像データを符号化処理又は復号化処理することができる。
【発明を実施するための最良の形態】
【００２８】
以下、適宜図面を参照しながら本発明の実施例を詳述する。
【実施例１】
【００２９】
（１）実施例の構成
図２は、本発明の実施例１の符号化装置を示すブロック図である。この符号化装置１は、Ｈ.２６４／ＭＰＥＧ−４ＡＶＣ規格に従って入力画像データＤ１を符号化処理し、符号化データＤ２を出力する。なお符号化装置１には、各部に画像データ等を一時格納するメモリが設けられるものの、図２及び図５においては、このメモリの記載を省略して示す。
【００３０】
この符号化装置１において、前処理部２は、ピクチャータイプに従って入力画像データＤ１を並べ替え処理した後、マクロブロック毎に、最適予測モードを検出する。
【００３１】
すなわち前処理部２は、インター予測の最適予測モードを検出するインター予測演算器、イントラ予測の最適予測モードを検出するイントラ予測演算器が設けられる。またイントラ予測演算器には、イントラ１６×１６予測モード用の予測演算器、イントラ８×８予測モード用の予測演算器、イントラ４×４予測モード用の予測演算器が設けられ、これらの予測演算器を用いてそれぞれイントラ１６×１６予測モード、イントラ８×８予測モード、イントラ４×４予測モードの最適予測モードを検出する。
【００３２】
具体的に、イントラ４×４予測モード用の予測演算器は、４画素×４画素ブロック毎に、各予測モードの予測値を生成する。また生成した予測値を予測モード毎に入力画像データＤ１から減算して各予測モードの予測誤差値を計算し、この予測誤差値から４画素×４画素ブロック毎の発生符号量を予測モード毎に計算する。なおこの発生符号量の計算は、例えば予測誤差値の２乗和に４画素×４画素ブロックのヘッダ符号量を加算して求められる。イントラ４×４予測モード用の予測演算器は、この計算した発生符号量が最も少ない予測モードを検出して４画素×４画素ブロックの最適予測モードを検出する。
【００３３】
前処理部２は、各４画素×４画素ブロックで検出される最適予測モードをマクロブロックでまとめてイントラ４×４予測モードの最適予測モードに設定する。またこの各４画素×４画素ブロックの最適予測モードにおける発生符号量をマクロブロックで集計し、イントラ４×４予測モードにおける発生符号量を計算する。
【００３４】
イントラ８×８予測モード用の予測演算器は、８画素×８画素ブロック毎に、各予測モードの予測値を生成する。また生成した予測値を予測モード毎に入力画像データＤ１から減算して各予測モードの予測誤差値を計算し、イントラ４×４予測モード用の予測演算器と同様にして、この予測誤差値から８画素×８画素ブロック毎の発生符号量を予測モード毎に計算する。イントラ８×８予測モード用の予測演算器は、この計算した発生符号量が最も少ない予測モードを検出して８画素×８画素ブロックの最適予測モードを検出する。
【００３５】
前処理部２は、各８画素×８画素ブロックの最適予測モードをマクロブロックでまとめてイントラ８×８予測モードの最適予測モードに設定する。またこの８画素×８画素ブロックの最適予測モードにおける発生符号量をマクロブロックで集計し、イントラ８×８予測モードにおける発生符号量を計算する。
【００３６】
これに対してイントラ１６×１６予測モード用の予測演算器は、イントラ１６×１６予測モードにおける各予測モードの予測値を生成する。また生成した予測値を予測モード毎に入力画像データＤ１から減算して各予測モードの予測誤差値を計算し、イントラ４×４予測モード用の予測演算器と同様にして、この予測誤差値から１６画素×１６画素ブロックの発生符号量を予測モード毎に計算する。イントラ１６×１６予測モード用の予測演算器は、この計算した発生符号量が最も少ない予測モードを検出して１６画素×１６画素ブロックの最適予測モードを検出する。
【００３７】
前処理部２は、この１６画素×１６画素ブロックの最適予測モードをイントラ１６×１６予測モードの最適予測モードに設定し、またこの１６画素×１６画素ブロックの最適予測モードにおける発生符号量をイントラ１６×１６予測モードにおける発生符号量に設定する。
【００３８】
前処理部２は、イントラ予測モード用の予測演算器において、これらイントラ４×４予測モード、イントラ８×８予測モード、イントラ１６×１６予測モードにおける発生符号量から、最も発生符号量の少ない予測モードを検出してイントラ予測の最適予測モードに設定する。また同様にして、インター予測モード用の予測演算器において、インター予測に定義された動き補償ブロック、参照フレーム毎に、動きベクトルを検出して発生符号量を計算し、最も発生符号量の少ない動き補償ブロック、参照フレームを検出してインター予測モードの最適予測モードに設定する。
【００３９】
前処理部２は、これらイントラ予測モードの最適予測モードとインター予測モードの最適予測モードとから、発生符号量の少ない側の予測モードをマクロブロック毎に検出し、各マクロブロックの最適予測モードを検出する。
【００４０】
前処理部２は、図３に示すように、イントラ４×４予測モード用の予測演算器２Ａに２つの予測演算器２ＡＡ、２ＡＢが設けられる。ここで予測演算器２ＡＡ、２ＡＢは、それぞれ４画素×４画素ブロック毎に最適予測モード、発生符号量を計算する。
【００４１】
前処理部２は、各マクロブロックにおいて、この２つの予測演算器２ＡＡ、２ＡＢのうちの一方の予測演算器２ＡＡを用いて４画素×４画素ブロックの処理を開始し、これら２つの予測演算器２ＡＡ、２ＡＢで４画素×４画素ブロックの処理を同時並列的に実行可能になると、これら２つの予測演算器２ＡＡ、２ＡＢで同時並列的に４画素×４画素ブロックを処理する。
【００４２】
ここで図１は、この２つの予測演算器２ＡＡ、２ＡＢの処理順序を示す略線図である。すなわち図２２について上述した参照関係により、イントラ４×４予測モードでは、ラスタ走査開始側端の４画素×４画素ブロックｍｍ０、続く右側の４画素×４画素ブロックｍｍ１については、逐次処理することが必要である。しかしながら４画素×４画素ブロックｍｍ１の処理を完了すると、続く右側の４画素×４画素ブロックｍｍ２と、左下側の４画素×４画素ブロックｍｍ４とを処理することが可能となる。従ってこの場合、４画素×４画素ブロックｍｍ２及びｍｍ４を同時並列的に処理することができる。またこの２つの４画素×４画素ブロックｍｍ２及びｍｍ４を処理すると、この２つの４画素×４画素ブロックｍｍ２及びｍｍ４の右側の４画素×４画素ブロックｍｍ３及びｍｍ５を処理することが可能となる。従ってこの場合、４画素×４画素ブロックｍｍ３及びｍｍ５を同時並列的に処理することができる。またこの４画素×４画素ブロックｍｍ３及びｍｍ５を処理すると、それぞれ左下側の４画素×４画素ブロックｍｍ８及びｍｍ６を同時並列的に処理することができ、また続いて右側の４画素×４画素ブロックｍｍ９及びｍｍ７を同時並列的に処理することができる。またさらに４画素×４画素ブロックｍｍ１２及びｍｍ１０、４画素×４画素ブロックｍｍ１３及びｍｍ１１を順次、同時並列的に処理することができ、末尾の２つの４画素×４画素ブロックｍｍ１４及びｍｍ１５については、逐次処理することが必要になる。
【００４３】
そこで前処理部２は、最上段の４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ２、ｍｍ３の処理を予測演算器２ＡＡに割り当てる。また残る３段の４画素×４画素ブロックｍｍ４〜ｍｍ１５のうち、中央から右側の４画素×４画素ブロックｍｍ６、ｍｍ７、ｍｍ１０、ｍｍ１１、ｍｍ１４、ｍｍ１５の処理及び中央から左側の４画素×４画素ブロックｍｍ４、ｍｍ５、ｍｍ８、ｍｍ９、ｍｍ１２、ｍｍ１３の処理をそれぞれ予測演算器２ＡＡ及び２ＡＢに割り当てる。前処理部２は、各割り当てをそれぞれ予測演算器２ＡＡ、２ＡＢでラスタ走査順に処理する。
【００４４】
その結果、前処理部２は、図４に処理ステップを示すように、先頭２つの４画素×４画素ブロックｍｍ０、ｍｍ１及び末尾２つの４画素×４画素ブロックｍｍ１４、ｍｍ１５を予測演算器２ＡＡで逐次処理して４画素×４画素ブロックｍｍ１４、ｍｍ１５における最適予測モード及び発生符号量を検出し、この４つの４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ１４、ｍｍ１５を除く残り１２個の４画素×４画素ブロックｍｍ２〜ｍｍ１３を予測演算器２ＡＡ、２ＡＢで同時並列的に処理して４画素×４画素ブロックｍｍ２〜ｍｍ１３における最適予測モード及び発生符号量を検出する。
【００４５】
前処理部２は、検出した各マクロブロックの最適予測モードを、マクロブロックを特定するアドレス、最適予測モードで符号化処理するのに必要な情報等と共に、状態管理部３に通知する。なおここで最適予測モードで符号化処理するのに必要な情報は、動きベクトル、参照フレーム、処理対象の８画素×８画素ブロック等を特定する情報等である。
【００４６】
マクロブロック（ＭＢ）処理部４は、前処理部２で検出された最適予測モードで画像データＤ１の予測値を作成し、この予測値と画像データＤ１との予測誤差値を直交変換処理、量子化処理して出力する。マクロブロック処理部４は、この予測値生成処理、直交変換処理、量子化処理を、状態管理部３の割り当てに従って、マクロブロック単位で、ラスタ走査順に実行する。
【００４７】
すなわち図５に示すように、マクロブロック処理部４において、動き補正処理部６は、最適予測モードがインター予測の場合に、メモリ７に保持された参照画像データから最適予測モードの予測値を生成して出力する。イントラ予測部８は、最適予測モードがイントラ予測の場合に、メモリ７に保持された参照画像データから最適予測モードの予測値を生成して出力する。
【００４８】
減算回路９は、動き補正処理部６から出力される予測値又はイントラ予測部８から出力される予測値を対応する画像データＤ１から減算して予測誤差値を出力する。直交変換部１０は、例えばディスクリートコサイン変換回路により構成され、減算回路９から出力される予測誤差値を直交変換処理して出力する。量子化処理部１１は、直交変換部１０の出力データを量子化処理して出力する。逆量子化処理部１２は、量子化処理部１１の出力データを逆量子化処理し、直交変換部１０の出力データを復号する。逆直交変換部１３は、逆量子化処理部１２の出力データを逆直交変換処理し、減算回路９の出力データを復号する。加算回路１４は、逆直交変換部１３の出力データに予測値を加算して画像データＤ１を復号する。メモリ７は、加算回路１４で復号された画像データを参照画像データとして一時格納する。
【００４９】
このマクロブロック処理部４は、それぞれ予測値を作成する２つの予測値生成部８Ａ及び８Ｂがイントラ予測部８に設けられる。ここで予測値生成部８Ａ及び８Ｂは、イントラ４×４予測モード、イントラ８×８予測モード、イントラ１６×１６予測モードに共通に使用される汎用の演算回路である。イントラ予測部８は、最適予測モードがイントラ１６×１６予測モードの場合、一方の予測値生成部８Ａを使用して、マクロブロック単位で最適予測モードの予測値を生成して出力する。また最適予測モードがイントラ８×８予測モードの場合も、一方の予測値生成部８Ａを使用して、図２０について上述した順序で、８画素×８画素ブロックの予測値を順次生成して出力する。
【００５０】
これに対して最適予測モードがイントラ４×４予測モードの場合、マクロブロック処理部４は、２つの予測値生成部８Ａ及び８Ｂを用いて、図１について上述したと同一の割り当て及び順序で、４画素×４画素ブロックの予測値を順次生成して出力する。
【００５１】
後処理部１５（図２）は、マクロブロック処理部４の出力データＤ３を可変長符号化処理した後、ヘッダ等を付加して符号化データＤ２を出力する。状態管理部３は、前処理部２、マクロブロック処理部４、後処理部１５の処理を管理するコントローラであり、前処理部２、マクロブロック処理部４、後処理部１５からマクロブロック毎に処理の完了を受け付けると共に、これら前処理部２、マクロブロック処理部４、後処理部１５にそれぞれ処理可能なマクロブロックを処理に必要な情報と共に通知する。
【００５２】
図６は、本発明の実施例１の復号化装置を示すブロック図である。この復号化装置２１は、Ｈ.２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化データＤ２を入力して画像データＤ１を復号する。なお復号化装置２１には、各部に画像データ等を一時格納するメモリが設けられるものの、図６及び図７においては、このメモリの記載を省略して示す。
【００５３】
この復号化装置２１において、前処理部２２は、符号化装置１の後処理部１５（図２）とは逆に、符号化データＤ２を入力して可変長復号化処理する。またこの符号化データＤ２に設定されたヘッダから最適予測モードの情報、マクロブロック等を特定するアドレス、最適予測モードで符号化処理するのに必要な情報等を検出して状態管理部２３に通知する。
【００５４】
マクロブロック（ＭＢ）処理部２４は、状態管理部２３の割り当てに従って、マクロブロック単位で、ラスタ走査順に、前処理部２２の出力データＤ３を処理して画像データＤ１を復号する。すなわち図７は、マクロブロック処理部２４を示すブロック図である。マクロブロック処理部２４において、動き補正処理部２６は、符号化データＤ２の最適予測モードがインター予測の場合に、メモリ２７に保持された参照画像データから最適予測モードの予測値を生成して出力する。イントラ予測部２８は、符号化データＤ２の最適予測モードがイントラ予測の場合に、メモリ２７に保持された参照画像データから最適予測モードの予測値を生成して出力する。
【００５５】
逆量子化処理部３０は、前処理部２２の出力データＤ３を逆量子化処理して出力する。逆直交変換部３１は、逆量子化処理部３０の出力データを逆直交変換処理し、予測誤差値を復号する。加算回路２９は、動き補正処理部２６から出力される予測値又はイントラ予測部２８から出力される予測値を、逆直交変換部３１から出力される予測誤差値に加算して画像データＤ１を復号する。メモリ２７は、加算回路２９で復号された画像データを参照画像データとして一時格納する。
【００５６】
このマクロブロック処理部２４は、符号化装置１のイントラ予測部８と同一に、それぞれ予測値を生成する２つの予測値生成部２８Ａ及び２８Ｂがイントラ予測部２８に設けられる。イントラ予測部２８は、最適予測モードがイントラ１６×１６予測モードの場合、一方の予測値生成部２８Ａを使用して、マクロブロック単位で最適予測モードの予測値を生成して出力する。また最適予測モードがイントラ８×８予測モードの場合も、一方の予測値生成部２８Ａを使用して、図２０について上述した順序で、８画素×８画素ブロックの予測値を順次生成して出力する。
【００５７】
これに対して最適予測モードがイントラ４×４予測モードの場合、マクロブロック処理部２４は、２つの予測値生成部２８Ａ及び２８Ｂを用いて、図１について上述したと同一の割り当て及び順序で、４画素×４画素ブロックの予測値を順次生成して出力する。
【００５８】
後処理部３５（図６）は、マクロブロック処理部２４の出力データＤ１を並べ直して画像データＤ１を出力する。なお後処理部３５は、デブロッキングフィルタを有し、参照画像データＤ１は、このデブロッキングフィルタでブロッキング歪みが除去されてメモリ２７に格納される。
【００５９】
状態管理部２３は、前処理部２２、マクロブロック処理部２４、後処理部３５の処理を管理するコントローラであり、前処理部２２、マクロブロック処理部２４、後処理部３５からマクロブロック毎に処理の完了を受け付けると共に、これら前処理部２２、マクロブロック処理部２４、後処理部３５にそれぞれ処理可能なマクロブロックを処理に必要な情報と共に通知する。
【００６０】
（２）実施例の動作
以上の構成において、画像データＤ１（図２）は、前処理部２において、ラスタ走査の順序でマクロブロック毎に最適予測モードが検出され、続くマクロブロック処理部４において、最適予測モードの予測値が計算される。またこの予測値との予測誤差値が直交変換処理、量子化処理された後（図５）、後処理部１５で可変長符号化処理されて符号化データＤ２が生成される。
【００６１】
画像データＤ１は、前処理部２における処理において、４画素×４画素ブロック毎に、複数の予測モードから最適な予測モードが検出されてイントラ４×４予測モードの最適予測モードが検出され、また同様にして８画素×８画素ブロック毎に、複数の予測モードから最適な予測モードが検出されてイントラ８×８予測モードの最適予測モードが検出される。またイントラ１６×１６予測モードの最適予測モードが検出され、イントラ４×４予測モードの最適予測モード、イントラ８×８予測モードの最適予測モード及びイントラ１６×１６予測モードの最適予測モードからイントラ予測モードの最適予測モードが検出される。また同様にしてインター予測モードの最適予測モードが検出され、インター予測モードの最適予測モード及びイントラ予測モードの最適予測モードからマクロブロックの最適予測モードが検出される。
【００６２】
ここでイントラ４×４予測モードの最適予測モードを検出する処理は、マクロブロックの４画素×４画素ブロック毎に、イントラ４×４予測モードに設けられた複数の予測モードから最も発生符号量の少ない予測モードを検出する処理であることから、従来のように、ラスタ走査順に４画素×４画素ブロックを逐次処理していたのでは（図２１参照）、画像データＤ１が高解像度の場合に、リアルタイムで画像データＤ１を処理できなくなり、結局、符号化装置の動作速度を高速度化することが必要になる。
【００６３】
そこでこの実施例では、前処理部２のイントラ４×４予測モード用の予測演算器２Ａに、それぞれ４画素×４画素ブロックにおける予測値及び発生符号量を計算する２つの予測演算器２ＡＡ及び２ＡＢが設けられ（図３）、各マクロブロックのラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックを除く１２個の４画素×４画素ブロックについては、この２つの予測値生成部２ＡＡ及び２ＡＢの同時並列的な処理により各４画素×４画素ブロックの最適予測モード及び発生符号量が順次求められ、残るラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックについてのみ予測値生成部２ＡＡで逐次処理される。
【００６４】
その結果、従来のラスタ走査順の４画素×４画素ブロックの逐次処理では、１６ステップ要していた処理を、符号化装置１では１０ステップで実行することができ（図４）、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができる。従って処理速度を高速度化しなくても、高解像度の画像データＤ１をリアルタイムで符号化処理することができる。
【００６５】
またマクロブロック処理部４においても、最適予測モードがイントラ４×４予測モードの場合に、従来と同様に、ラスタ走査順に４画素×４画素ブロックを逐次処理していたのでは（図２１参照）、画像データＤ１が高解像度の場合に、リアルタイムで画像データＤ１を処理できなくなり、結局、符号化装置の動作速度を高速度化することが必要になる。
【００６６】
そこでこの実施例では、マクロブロック処理部４のイントラ予測部８に２つの予測値生成部８Ａ、８Ｂが設けられ、最適予測モードがイントラ１６×１６予測モード、イントラ８×８予測モードの場合、この２つの予測値生成部８Ａ、８Ｂの一方を用いて予測値が生成される。
【００６７】
これに対して最適予測モードがイントラ４×４予測モードの場合、前処理部２と同様に、各マクロブロックのラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックを除く１２個の４画素×４画素ブロックについては、この２つの予測値生成部８Ａ、８Ｂの同時並列的な処理により各４画素×４画素ブロックの予測値が順次求められ、残るラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックについてのみ予測値生成部８Ａの逐次処理により予測値が生成される。
【００６８】
その結果、このマクロブロック処理部４における予測値の生成処理でも、従来の逐次処理では１６ステップ要していた処理を、１０ステップで実行することができ（図４）、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができる。従って処理速度を高速度化しなくても、高解像度の画像データＤ１をリアルタイムで符号化処理することができる。
【００６９】
これに対して復号化装置２１（図６）では、符号化データＤ２が前処理部２２で可変長復号化処理された後、マクロブロック処理部２４において（図７）、逆量子化処理、逆直交変換処理されて予測誤差値が復号される。またイントラ予測部２８で生成されるイントラ予測の予測値又は動き補正処理部２６で生成されるインター予測の予測値と予測誤差値が加算されて画像データＤ１が復号され、後処理部３５において、元の配列に画像データＤ１が並び替えられて出力される。
【００７０】
この復号化装置２１のマクロブロック処理部２４における予測値生成処理についても、最適予測モードがイントラ４×４予測モードの場合、従来と同様に、ラスタ走査順に４画素×４画素ブロックを逐次処理していたのでは、画像データＤ１が高解像度の場合に、リアルタイムで画像データＤ１を処理できなくなり、結局、復号化装置の動作速度を高速度化することが必要になる。
【００７１】
そこでこの実施例では、マクロブロック処理部２４のイントラ予測部２８に２つの予測値生成部２８Ａ、２８Ｂが設けられ、最適予測モードがイントラ１６×１６予測モード、イントラ８×８予測モードの場合、この２つの予測値生成部２８Ａ、２８Ｂの一方を用いて予測値が生成される。
【００７２】
これに対して最適予測モードがイントラ４×４予測モードの場合、前処理部２と同様に、各マクロブロックのラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックを除く１２個の４画素×４画素ブロックについては、この２つの予測値生成部２８Ａ及び２８Ｂの同時並列的な処理により各４画素×４画素ブロックの予測値が順次求められ、残るラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックについてのみ予測値生成部２８Ａの逐次処理により予測値が生成される。
【００７３】
その結果、このマクロブロック処理部２４における予測値の生成処理でも、従来の逐次処理では１６ステップ要していた処理を、１０ステップで実行することができ（図４）、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができる。従って処理速度を高速度化しなくても、高解像度の画像データＤ１をリアルタイムで復号化処理することができる。
【００７４】
（３）実施例の効果
以上の構成によれば、符号化装置のマクロブロック処理部におけるイントラ４×４予測モードの予測値の生成処理において、各マクロブロックのラスタ走査開始端側及び終了端側では逐次処理により予測値を生成し、残りの箇所では並列処理により予測値を生成することにより、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができ、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで符号化処理することができる。
【００７５】
またこのマクロブロック処理部におけるイントラ４×４予測モードが、マクロブロック、８画素×８画素ブロック及び４画素×４画素ブロックにそれぞれ設けられた複数の予測モードから選択された最適予測モードであることから、Ｈ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化処理に適用して、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで符号化処理することができる。
【００７６】
また符号化装置の前処理部におけるイントラ４×４予測モードの最適予測モードの検出処理において、各マクロブロックのラスタ走査開始端側及び終了端側では逐次処理により予測値を生成し、残りの箇所では並列処理により予測値を生成することにより、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができ、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで符号化処理することができる。
【００７７】
またこの場合も、このイントラ４×４予測モードの最適予測モードにおける予測値と、マクロブロック及び８画素×８画素ブロックの予測値とから、入力画像データの最適予測モードを検出することにより、Ｈ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化処理に適用して、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで符号化処理することができる。
【００７８】
また復号化装置のマクロブロック処理部におけるイントラ４×４予測モードの予測値の生成処理において、各マクロブロックのラスタ走査開始端側及び終了端側では逐次処理により予測値を生成し、残りの箇所では並列処理により予測値を生成することにより、従来に比して４画素×４画素ブロックの処理に要する時間を短縮することができ、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで復号化処理することができる。
【実施例２】
【００７９】
この実施例の符号化装置及び復号化装置は、連続するマクロブロックを４画素×４画素ブロック単位で処理する場合の処理順序が異なる点を除いて、上述の実施例１の符号化装置１及び復号化装置２１と同一に構成される。従って以下においては、適宜、実施例１の符号化装置及び復号化装置の構成を流用して説明する。
【００８０】
ここで図８は、実施例２の符号化装置における前処理部の処理順序を示す略線図である。この実施例の前処理部２は、各マクロブロック内では、実施例１の前処理部２と同一に、ラスタ走査開始端側の２個の４画素×４画素ブロックｍｍ０、ｍｍ１を一方の予測値生成部２ＡＡで処理した後、続く１２個の４画素×４画素ブロックｍｍ３〜ｍｍ１３を２つの予測値生成部２ＡＡ、２ＡＢで同時並列的に処理し、残る２個の４画素×４画素ブロックｍｍ１４、ｍｍ１５を一方の予測値生成部２ＡＡで処理する。
【００８１】
この実施例の前処理部２は、この末尾の２個の４画素×４画素ブロックｍｍ１４、ｍｍ１５を一方の予測値生成部２ＡＡで処理している間、他方の予測値生成部２ＡＢで続くマクロブロックのラスタ走査開始端側の２個の４画素×４画素ブロックｍｍ０、ｍｍ１を処理する。
【００８２】
その結果、この実施例の前処理部は、マクロブロックのラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ１４、ｍｍ１５を除く１２個の４画素×４画素ブロックｍｍ３〜ｍｍ１３を２つの処理部で同時並列的に処理するようにして、ラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ１４、ｍｍ１５についても、連続するマクロブロックで同時並列的に処理し、一段と４画素×４画素ブロックの処理速度を向上する。
【００８３】
すなわちこの図８の例では、図９に処理順序を示すように、一方の予測値生成部２ＡＡで第１のマクロブロックＡの４画素×４画素ブロックｍｍ０、ｍｍ１を逐次処理した後、４画素×４画素ブロックｍｍ４、ｍｍ５、ｍｍ８、ｍｍ９、ｍｍ１２、ｍｍ１３及び４画素×４画素ブロック、ｍｍ２、ｍｍ３、ｍｍ６、ｍｍ７、ｍｍ１０、ｍｍ１１を予測値生成部２ＡＡ及び２ＡＢで同時並列的に処理する。またこのマクロブロックＡの末尾の２個の４画素×４画素ブロックｍｍ１４、ｍｍ１５を一方の予測値生成部２ＡＡで逐次処理し、この一方の予測値生成部２ＡＡの逐次処理と同時並列的に、続くマクロブロックＢの先頭２個の４画素×４画素ブロックｍｍ０、ｍｍ１を他方の予測値生成部２ＡＢで逐次処理する。
【００８４】
また続いて、この続くマクロブロックＢの４画素×４画素ブロックｍｍ４、ｍｍ５、ｍｍ８、ｍｍ９、ｍｍ１２、ｍｍ１３及び４画素×４画素ブロック、ｍｍ２、ｍｍ３、ｍｍ６、ｍｍ７、ｍｍ１０、ｍｍ１１を予測値生成部２ＡＢ及び２ＡＡで同時並列的に処理した後、末尾の２個の４画素×４画素ブロックｍｍ１４、ｍｍ１５を一方の予測値生成部２ＡＢで逐次処理し、この一方の予測値生成部２ＡＢの逐次処理と同時並列的に、さらに続くマクロブロックＣの先頭２個の４画素×４画素ブロックｍｍ０、ｍｍ１を他方の予測値生成部２ＡＡで逐次処理する。なお図９においては、この連続する３つのマクロブロックＡ、Ｂ、Ｃを符号Ａ、Ｂ、Ｃで示す。
【００８５】
従ってこの実施例では、連続するイントラ４×４予測モードにおける連続するマクロブロックの処理に要する時間を、従来の逐次処理の場合に比して（図２１）、１／２に低減することができ、一段と処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで確実に符号化処理、復号化処理することができる。
【００８６】
図１０は、この実施例の符号化装置のマクロブロック処理部の処理順序を示す略線図である。この実施例のマクロブロック処理部は、ラスタ走査順にマクロブロックを順次処理するようにして、最適予測モードがイントラ４×４予測モードのマクロブロックが連続する場合、前処理部２と同様に、マクロブロックのラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックｍｍ０、ｍｍ1 、ｍｍ１４、ｍｍ１５を除く１２個の４画素×４画素ブロックｍｍ２〜ｍｍ１５を２つの予測値生成部８Ａ、８Ｂで同時並列的に処理する。またラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックｍｍ０、ｍｍ1 、ｍｍ１４、ｍｍ１５については、連続するマクロブロックで同時並列的に処理し、一段とイントラ４×４予測モードの処理速度を向上する。
【００８７】
これに対してイントラ４×４予測モードのマクロブロック及びイントラ８×８予測モードのマクロブロックが連続する場合、イントラ４×４予測モードのマクロブロックにおいて、ラスタ走査開始端側及び終了端側の各２個の４画素×４画素ブロックｍｍ０、ｍｍ１を除く１２個の４画素×４画素ブロックｍｍ２〜ｍｍ１３を２つの予測値生成部で同時並列的に処理する。またラスタ走査終了端側の２個の４画素×４画素ブロックｍｍ１４、ｍｍ１５については、続くイントラ８×８予測モードの先頭、２個の８画素×８画素ブロックｍ０、ｍ１と同時並列的に処理し、一段とイントラ４×４予測モードの処理速度を向上する。
【００８８】
なおイントラ４×４予測モードのマクロブロック及びイントラ１６×１６予測モードのマクロブロックが連続する場合、末尾の４画素×４画素ブロックｍｍ１５の処理を完了して、続くイントラ１６×１６予測モードのマクロブロックＭ０の処理を開始する。
【００８９】
これに対してイントラ４×４予測モードのマクロブロックの先頭、２個の４画素×４画素ブロックｍｍ０、ｍｍ１については、参照画像データが復号されて予測可能となった場合には、直前マクロブロックの処理を完了する前であっても、処理を開始する。従って図１１に示すように、直線マクロブロックがイントラ８×８予測モードの場合、２つ目の８画素×８画素ブロックｍ１の処理を完了した時点で、４画素×４画素ブロックｍｍ０、ｍｍ１の処理を開始し、この場合も、８画素×８画素ブロックｍ０、ｍ１と４画素×４画素ブロックｍｍ０、ｍｍ１とを同時並列的に処理して、一段とイントラ４×４予測モードの処理速度を向上する。
【００９０】
なおイントラ１６×１６予測モードのマクロブロックとイントラ４×４予測モードのマクロブロックとが連続する場合には、イントラ１６×１６予測モードのマクロブロックの処理の完了を待って、続くイントラ４×４予測モードのマクロブロックの処理を開始する。またイントラ１６×１６予測モードのマクロブロックとイントラ８×８予測モードのマクロブロックとが連続する場合、これとは逆にイントラ８×８予測モードのマクロブロックとイントラ１６×１６予測モードのマクロブロックとが連続する場合にあっても、一方のマクロブロックの処理の完了を待って、続くマクロブロックの処理を開始する。
【００９１】
これに対して復号化装置のマクロブロック処理部においては、符号化装置のマクロブロック処理部と同一の処理順序で各マクロブロックを処理する。
【００９２】
この実施例によれば、第１の実施例の構成に加えて、さらにイントラ４×４予測モードにおける先頭及び又は末尾の２個の４画素×４画素ブロックについても、連続するマクロブロックで同時並列的に処理することにより、４画素×４画素ブロックの処理に要する時間を一段と短縮することができ、処理速度を高速度化しなくても、高解像度の画像データをリアルタイムで確実に符号化処理、復号化処理することができる。
【実施例３】
【００９３】
図１２は、図２との対比により本発明の実施例３の符号化装置を示すブロック図である。この実施例の符号化装置４１は、マクロブロック処理部４に代えて複数のマクロブロック処理部４Ａ、４Ｂ、……、４Ｎが設けられる点、及び状態管理部３、後処理部５に代えて状態管理部４３、後処理部２５が設けられる点除いて、実施例１又は実施例２の符号化装置と同一に構成される。ここでマクロブロック処理部４Ａ、４Ｂ、……、４Ｎは、それぞれマクロブロック処理部４と同一に構成される。
【００９４】
ここで上述の実施例２では、連続するマクロブロックの最適予測モードがイントラ４×４予測モードの場合、先頭及び末尾の４画素×４画素ブロックを連続するマクロブロックで同時並列的に処理することができる。また連続するマクロブロックの最適予測モードがイントラ４×４予測モード及びイントラ８×８予測モードの場合も、同様に処理することができる。従って実施例１の構成に比して、４画素×４画素ブロックの処理に要する時間を短くすることができる。
【００９５】
しかしながら連続するマクロブロックの最適予測モードの一方がイントラ１６×１６予測モードの場合、参照画像データの復号が間に合わないことにより、連続するマクロブロックにおける同時並列的な処理が困難になる。
【００９６】
そこでこの実施例では、複数のマクロブロック処理部４Ａ、４Ｂ、……、４Ｎを使用して複数のマクロブロックを同時並列的に処理するようにして、イントラ４×４予測モードにおける末尾の２つの４画素×４画素ブロックの処理を開始する時点で、ラスタ走査順に連続するマクロブロック以外のマクロブロックを選択可能とし、各マクロブロック処理部で続いて処理するマクロブロックの最適予測モードがイントラ１６×１６予測モードの場合でも、この続いて処理するマクロブロックとの間で同時並列的に４画素×４画素ブロックを処理できるようにする。
【００９７】
ここでＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格では、図１８及び図１９について上述した参照関係が各マクロブロックＭ０、Ｍ１、Ｍ２、……に存在することから、各ピクチャーの処理では、図１８との対比により図１３（Ａ）に示すように、ラスタ走査開始端側の２つのマクロブロックＭ０、Ｍ１は逐次処理することが必要である。なおこの図１３においては、処理の完了したマクロブロック、続いて処理可能なマクロブロックをそれぞれハッチングで示す。
【００９８】
しかしながらマクロブロックＭ１の処理を完了した時点で、マクロブロックＭ１の右隣のマクロブロックＭ２と、続くスライスの左端のマクロブロックＭ８とが図１９について上述した参照関係を満足することになり、このマクロブロックＭ２、Ｍ８が処理可能となる。従ってこの時点では、このマクロブロックＭ２、Ｍ８を同時並列的に処理することができる。またこのマクロブロックＭ２、Ｍ８の処理を完了すると、マクロブロックＭ２、Ｍ８の右隣のマクロブロックＭ３、Ｍ９が図１９について上述した参照関係を満足することになり、このマクロブロックＭ３、Ｍ９を同時並列的に処理することが可能となる。
【００９９】
またこのマクロブロックＭ３、Ｍ９の処理を完了すると、図１３（Ｂ）に示すように、マクロブロックＭ３、Ｍ９の右隣のマクロブロックＭ４、Ｍ１０に加えて、続くスライスの左端のマクロブロックＭ１６が図１９について上述した参照関係を満足することになる。従ってこの時点では、これらのマクロブロックＭ４、Ｍ１０、Ｍ１６を同時並列的に処理することが可能となる。
【０１００】
またこのマクロブロックＭ４、Ｍ１０、Ｍ１６の処理を完了すると、マクロブロックＭ４、Ｍ１０、Ｍ１６の右隣のマクロブロックＭ５、Ｍ１１、Ｍ１７が図１９について上述した参照関係を満足することになり、このマクロブロックＭ５、Ｍ１１、Ｍ１７を同時並列的に処理することが可能となる。またこのマクロブロックＭ５、Ｍ１１、Ｍ１７の処理を完了すると、図１３（Ｃ）に示すように、マクロブロックＭ５、Ｍ１１、Ｍ１７の右隣のマクロブロックＭ６、Ｍ１２、Ｍ１８と、続くスライスの左端のマクロブロックＭ２４が図１９について上述した参照関係を満足することになる。従ってこの時点で、これらのマクロブロックＭ６、Ｍ１２、Ｍ１８、Ｍ２４を同時並列的に処理することが可能となる。
【０１０１】
そこでこの実施例では、ラスタ走査開始端側のマクロブロックＭ０から１つのマクロブロック処理部でマクロブロックＭ０、Ｍ１、……の処理を開始して、処理可能となったマクロブロックに順次マクロブロック処理部を割り当てて画像データＤ１を複数のマクロブロック処理部で並列処理し、従来に比して１つのピクチャーの処理に要する時間を格段的に短くする。
【０１０２】
ここで例えば２つのマクロブロック処理部で１つのピクチャーを処理するものとして、図１４に示すように、先頭の２つのスライスの処理をこれら２つのマクロブロック処理部に割り当てるものとする。この場合、マクロブロックＭ４、Ｍ１０の処理を完了した時点で処理可能なマクロブロックＭ５、Ｍ１１、Ｍ１６のうち、マクロブロックＭ５、Ｍ１１を２つのマクロブロック処理部で同時並列的に処理することになる。
【０１０３】
この場合、このマクロブロックＭ５、Ｍ１１の最適予測モードがイントラ４×４予測モードであって、続くマクロブロックＭ６、Ｍ１２の最適予測モードがイントラ１６×１６予測モードの場合、実施例２について上述したように、それぞれマクロブロック処理部でマクロブロックＭ５、Ｍ１１の処理を完了しなければ、続くマクロブロックＭ６、Ｍ１２の処理を開始することが困難になる。従ってこの２つのマクロブロック処理部においては、マクロブロックＭ５、Ｍ１１の末尾の２個の４画素×４画素ブロックについては、２つの予測値生成部のうちの一方の予測値生成部のみで処理することになる。
【０１０４】
しかしながらこのマクロブロックＭ５、Ｍ１１の末尾の２個の４画素×４画素ブロックであっても、既に処理可能となっているマクロブロックＭ１６との間では、同時並列的に処理することができる。
【０１０５】
そこでこの実施例の符号化装置は、イントラ４×４予測モードのマクロブロックを処理するマクロブロック処理部において、４画素×４画素ブロックの並列処理を終了した時点で、処理可能なマクロブロックを検索し、処理可能なマクロブロックとそれまで処理していたマクロブロックの末尾の２個の４画素×４画素ブロックとを、マクロブロック処理部に設けられた２つの予測値生成部８Ａ、８Ｂで同時並列的に処理する。
【０１０６】
従って図１５に示すように、検索によって検出される処理可能なマクロブロックの最適予測モードがイントラ４×４予測モードの場合、マクロブロック処理部は、それまで処理していたマクロブロックの末尾の２つの４画素×４画素ブロックｍｍ１４、ｍｍ１５と、検出されたマクロブロックの先頭の２つの４画素×４画素ブロックｍｍ０、ｍｍ１とを予測値生成部８Ａ、８Ｂで同時並列的に処理した後、この検出されたマクロブロックを予測値生成部８Ａ、８Ｂで同時並列的に処理する。
【０１０７】
また検索によって検出される処理可能なマクロブロックの最適予測モードがイントラ８×８予測モードの場合、マクロブロック処理部は、それまで処理していたマクロブロックの末尾の２つの４画素×４画素ブロックｍｍ１４、ｍｍ１５と、検出されたマクロブロックの先頭の２つの８画素×８画素ブロックｍ０、ｍ１とを予測値生成部８Ａ、８Ｂで同時並列的に処理した後、この検出されたマクロブロックを予測値生成部８Ｂで処理する。
【０１０８】
また検索によって検出される処理可能なマクロブロックの最適予測モードがイントラ１６×１６予測モードの場合、マクロブロック処理部は、それまで処理していたマクロブロックの末尾の２つの４画素×４画素ブロックｍｍ１４、ｍｍ１５と、検出されたマクロブロックＭ０とを予測値生成部８Ａ、８Ｂで同時並列的に処理する。
【０１０９】
従ってこの実施例では、連続するマクロブロックの最適予測モードの一方がイントラ１６×１６予測モードの場合であっても、マクロブロックの末尾の４画素×４画素ブロックを続くマクロブロックとの間で同時並列的に処理することができ、実施例２に比して一段と処理に要する時間を短くすることができる。なお４画素×４画素ブロックの並列処理を終了した時点で、処理可能なマクロブロックを検出できない場合、改めてマクロブロックの処理を完了した時点で処理可能なマクロブロックを検索し、検出したマクロブロックを処理する。
【０１１０】
そこでこの符号化装置４１において、状態管理部４３は、１つのピクチャーにおけるマクロブロックの処理の完了を監視し、各マクロブロック処理部４Ａ〜４Ｎからの要求により処理可能なマクロブロックを選択して通知する。
【０１１１】
具体的に、状態管理部４３は、前処理部２で最適予測モードの検出が完了していないマクロブロック、前処理部２で最適予測モードの検出が完了したマクロブロック、マクロブロック処理部４Ａ〜４Ｎで処理中のマクロブロック、マクロブロック処理部４Ａ〜４Ｎで処理の完了したマクロブロックに区分して、１つのピクチャーにおけるマクロブロックの処理状況を記録し、この記録を前処理部２及びマクロブロック処理部４Ａ〜４Ｎからマクロブロックの処理の完了通知で更新する。
【０１１２】
また各マクロブロック処理部４Ａ〜４Ｎからの要求により、この記録から、処理の完了したマクロブロックとの間で図１９について上述した参照関係を有し、かつ前処理部２で最適予測モードの検出を完了しているマクロブロックを検出する。状態管理部４３は、この検出したマクロブロックの１つを処理可能なマクロブロックとして対応するマクロブロック処理部４Ａ〜４Ｎに処理に必要な情報と共に通知する。なおここでこの処理に必要な情報は、最適予測モード、動きベクトル、参照フレーム等の情報である。
【０１１３】
またマクロブロック処理部４Ａ〜４Ｎは、最適予測モードがイントラ４×４予測モードのマクロブロックを処理している場合、４画素×４画素ブロックの並列処理を終了した時点で、処理可能なマクロブロックの通知を状態管理部４３に要求し、この要求により通知されるマクロブロックを続いて処理するマクロブロックに設定する。マクロブロック処理部４Ａ〜４Ｎは、それまで処理していたマクロブロックの末尾の２個の４画素×４画素ブロックと、この続くマクロブロックを２つの予測値生成部８Ａ、８Ｂで同時並列的に処理する。なお４画素×４画素ブロックの並列処理を終了した時点での要求で、処理可能なマクロブロックを状態管理部４３で検出できない場合、マクロブロックの処理を完了した時点で改めて処理可能なマクロブロックの通知を要求する。
【０１１４】
これに対してマクロブロック処理部４Ａ〜４Ｎは、最適予測モードがイントラ４×４予測モード以外のマクロブロックを処理している場合、マクロブロックの処理を完了した時点で処理可能なマクロブロックの通知を要求し、この要求により通知されるマクロブロックを続く処理対象のマクロブロックに設定して処理する。なおこの最適予測モードがイントラ４×４予測モード以外のマクロブロックを処理している場合に、図１１について上述したように、マクロブロックの処理途中で処理可能なマクロブロックの通知を要求し、この要求により通知されるマクロブロックを、未使用の予測値生成部で続いて処理するマクロブロックの処理を開始するようにしてもよい。
【０１１５】
後処理部４５は、複数のマクロブロック処理部４Ａ〜４Ｎの出力データを入力し、マクロブロック単位のラスタ走査順に並べ代えた後、ヘッダを付加して出力する。
【０１１６】
図１６は、この実施例の復号化装置を示すブロック図である。この復号化装置６１は、マクロブロック処理部２４に代えて複数のマクロブロック処理部２４Ａ〜２４Ｎが設けられる点、及び状態管理部２３、後処理部３５に代えて状態管理部６３、後処理部６５が設けられる点を除いて、実施例１又は実施例２の復号化装置と同一に構成される。またマクロブロック処理部２４Ａ、２４Ｂ、……、２４Ｎは、それぞれマクロブロック処理部２４と同一に構成される。
【０１１７】
この復号化装置６１のマクロブロック処理部２４Ａ〜２４Ｎは、符号化装置４１のマクロブロック処理部４Ａ〜４Ｎと同一の処理順序で順次マクロブロックを処理し、状態管理部６３は、符号化装置４１の状態管理部４３と同一に、各部におけるマクロブロックの処理を監視し、マクロブロック処理部２４Ａ〜２４Ｎに処理可能なマクロブロックを通知する。
【０１１８】
後処理部６５は、マクロブロック処理部２４Ａ〜２４Ｎから出力される画像データをラスタ走査順に並べ直した後、ピクチャーを並べ直して出力する。
【０１１９】
この実施例によれば、マクロブロック処理部を複数設け、１つのピクチャーのラスタ走査開始端側のマクロブロックから入力画像データの処理を開始した後、処理可能となったマクロブロックに複数のマクロブロック処理部を順次割り当てて、入力画像データを複数のマクロブロック処理部で並列処理することにより、一段と符号化処理、復号化処理に要する時間を短くすることができる。
【０１２０】
また状態監視部により各マクロブロックの処理を監視し、１つのマクロブロックにおける４画素×４画素ブロックの並列処理を完了した時点で、この状態監視部で処理可能な他のマクロブロックを検出して続いて処理するマクロブロックに設定することにより、ラスタ走査の順序でイントラ４×４予測モードとイントラ１６×１６予測モードのマクロブロックが連続している場合でも、イントラ４×４予測モードの末尾の２個の４画素×４画素ブロックを続くマクロブロックとの間で並列処理することができ、実施例２に比して一段と４画素×４画素ブロックの処理に要する時間を短くすることができる。
【実施例４】
【０１２１】
この実施例では、実施例１〜３について上述した符号化装置及び復号化装置をソフトウエアにより構成する。図１７は、実施例１の符号化装置及び復号化装置を例にして、この実施例４の符号化装置及び復号化装置の動作を示すタイムチャートである。この実施例では、１つのマクロブロックの先頭及び末尾の各２個の４画素×４画素ブロックｍｍ０、ｍｍ１、ｍｍ１４、ｍｍ１５、残り１２の４画素×４画素ブロックｍｍ２〜ｍｍ１３のうち、予測値生成部８Ａ、８Ｂ（予測演算器２ＡＡ、２ＡＢ）にそれぞれ割り当てた４×４画素ブロックｍｍ２〜ｍｍ１１、ｍｍ４〜ｍｍ１３の処理をそれぞれスレッド１〜３により実行する。
【０１２２】
なおこの実施例の符号化装置及び復号化装置を構成するプログラムは、符号化装置及び復号化装置に事前にインストールして提供するようにしてもよく、光ディスク、磁気ディスク、メモリカード等の記録媒体を介して、さらにはインターネット等のネットワークを介して提供するようにしてもよい。
【０１２３】
この実施例によれば、符号化装置及び復号化装置をソフトウエアにより構成する場合でも、上述の実施例と同様の効果を得ることができる。
【実施例５】
【０１２４】
なお上述の実施例においては、マクロブロック処理部に、最適予測モードの予測値を生成する予測値生成部のみ複数個設ける場合について述べたが、本発明はこれに限らず、予測値生成部に減算部の構成を加えて複数系統としてもよい。
【０１２５】
また上述の実施例においては、前処理部に、４画素×４画素ブロックの最適予測モード、発生符号量を検出する予測演算部を複数個設ける場合について述べたが、本発明はこれに限らず、実用上十分な処理速度を確保できる場合には、前処理部に、予測値生成部のみ複数個設け、発生符号量、最適予測モードを検出する構成を、これら複数個の予測値生成部で共通化してもよい。
【０１２６】
また上述の実施例においては、符号化装置において、前処理部及びマクロブロック処理部に予測演算部及び予測値生成部をそれぞれ複数個設ける場合について述べたが、本発明はこれに限らず、前処理部にのみ予測演算部を複数個設けるようにしてもよく、またマクロブロック処理部にのみ予測値生成部を複数個設けるようにしてもよい。
【０１２７】
また上述の実施例２、３においては、参照画像データから予測値を生成して最適予測モードを検出する場合について述べたが、本発明はこれに限らず、実用上十分な予測精度を確保できる場合には、参照画像データに代えて入力画像データから予測値を生成して最適予測モードを検出するようにしてもよく、この場合にも、上述の各実施例の構成を適用することができる。
【０１２８】
また上述の実施例においては、本発明をＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置及び復号化装置に適用する場合について述べたが、本発明はこれに限らず、例えばＷＭＶ９（Windows Media Video 9 （商標））規格の符号化装置及び復号化装置等、同様のフォーマットによる符号化装置及び復号化装置に広く適用することができる。
【産業上の利用可能性】
【０１２９】
本発明は、例えばＨ．２６４／ＭＰＥＧ−４ＡＶＣ規格の符号化装置及び復号化装置に適用することができる。
【図面の簡単な説明】
【０１３０】
【図１】本発明の実施例１の符号化装置における４画素×４画素ブロックの処理順序を示す略線図である。
【図２】本発明の実施例１の符号化装置を示すブロック図である。
【図３】図２の符号化装置におけるイントラ４×４予測モードの予測演算器を示すブロック図である。
【図４】図１の処理順序を示す図表である。
【図５】図２の符号化装置のマクロブロック処理部を示すブロック図である。
【図６】本発明の実施例１の復号化装置を示すブロック図である。
【図７】図６の復号化装置のマクロブロック処理部を示すブロック図である。
【図８】本発明の実施例２の符号化装置における４画素×４画素ブロックの処理順序を示す略線図である。
【図９】図８の処理順序を示す図表である。
【図１０】本発明の実施例２の符号化装置のマクロブロック処理部における４画素×４画素ブロックの処理順序を示す略線図である。
【図１１】図１０とは異なる例による処理順序を示す略線図である。
【図１２】本発明の実施例３の符号化装置を示すブロック図である。
【図１３】図１２の符号化装置におけるマクロブロックの処理の説明に供する図表である。
【図１４】図１２の符号化装置の連続するマクロブロックにおける４画素×４画素ブロックの並列処理の説明に供する図表である。
【図１５】図１２の符号化装置のマクロブロック処理部における処理順序を示す略線図である。
【図１６】本発明の実施例３の復号化装置を示すブロック図である。
【図１７】本発明の実施例４の符号化装置及び復号化装置の説明に供する略線図である。
【図１８】従来の符号化装置、復号化装置におけるマクロブロックの処理順序を示す図表である。
【図１９】マクロブロックの参照関係を示す図表である。
【図２０】従来の符号化装置、復号化装置における８画素×８画素ブロックの処理順序を示す図表である。
【図２１】従来の符号化装置、復号化装置における４画素×４画素ブロックの処理順序を示す図表である。
【図２２】４画素×４画素ブロックの参照関係を示す図表である。
【符号の説明】
【０１３１】
１、４１……符号化装置、２、２２……前処理部、３、２３、４３、６３……状態管理部、４、４Ａ〜４Ｎ、２４、２４Ａ〜２４Ｎ……マクロブロック処理部、１５、３５、４５、６５……後処理部、２Ａ……イントラ４×４予測モード用予測演算器、２ＡＡ、２ＡＢ……予測演算器、８、２８Ａ……イントラ予測部、８Ａ、８Ｂ、２８Ａ、２８Ｂ……予測値生成部、９……減算回路、２１、６１……復号化装置
【図１】
2009141539.tif 000003
【図２】
2009141539.tif 000004
【図３】
2009141539.tif 000005
【図４】
2009141539.tif 000006
【図５】
2009141539.tif 000007
【図６】
2009141539.tif 000008
【図７】
2009141539.tif 000009
【図８】
2009141539.tif 000010
【図９】
2009141539.tif 000011
【図１０】
2009141539.tif 000012
【図１１】
2009141539.tif 000013
【図１２】
2009141539.tif 000014
【図１３】
2009141539.tif 000015
【図１４】
2009141539.tif 000016
【図１５】
2009141539.tif 000017
【図１６】
2009141539.tif 000018
【図１７】
2009141539.tif 000019
【図１８】
2009141539.tif 000020
【図１９】
2009141539.tif 000021
【図２０】
2009141539.tif 000022
【図２１】
2009141539.tif 000023
【図２２】
2009141539.tif 000024
【手続補正書】
【提出日】平成21年1月30日(2009.1.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、
前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、
前記マクロブロック処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部と、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する減算器とを有し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する
画像処理装置。
【請求項２】
前記マクロブロック処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する間、
前記１つのマクロブロックに続いて処理するマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測値生成部で作成する
請求項１に記載の画像処理装置。
【請求項３】
前記画像処理装置は、
前記マクロブロック処理部を複数有し、
１つのピクチャーのラスタ走査開始端側のマクロブロックから前記入力画像データの処理を開始した後、処理可能となったマクロブロックに前記複数のマクロブロック処理部を順次割り当てて、前記入力画像データを前記複数のマクロブロック処理部で並列処理する
請求項２に記載の画像処理装置。
【請求項４】
前記画像処理装置は、
前記１つのピクチャーにおけるマクロブロックの処理の完了を監視する状態監視部を有し、
前記マクロブロック処理部は、
前記状態監視部の監視結果に基づいて、前記複数の第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成する処理を完了した時点で、処理可能な他のマクロブロックを検出して前記続いて処理するマクロブロックに設定する
請求項３に記載の画像処理装置。
【請求項５】
前記前処理部は、
前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
請求項４に記載の画像処理装置。
【請求項６】
前記前処理部は、
前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
請求項１に記載の画像処理装置。
【請求項７】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理装置において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された前記最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理部と、
前記予測誤差値を処理して前記符号化データを生成する符号化部とを有し、
前記前処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値をそれぞれ作成する第１及び第２の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記最適予測モードを検出し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測演算器で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測演算器で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測演算器で逐次作成する
画像処理装置。
【請求項８】
前記前処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測演算器で逐次作成する間、
前記１つのマクロブロックに続くマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測演算器で作成する
請求項７に記載の画像処理装置。
【請求項９】
前記前処理部は、
前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値を生成する第３の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値と、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値とに基づいて、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
請求項８に記載の画像処理装置。
【請求項１０】
前記前処理部は、
前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値を生成する第３の予測演算器を有し、
前記第２のブロックにおける複数の予測モードの予測値と、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードの予測値とに基づいて、最も発生符号量の少ない予測モードを選択して前記入力画像データの最適予測モードを検出する
請求項７に記載の画像処理装置。
【請求項１１】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理装置において、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理部と、
前記前処理部で検出された最適予測モードの予測値を生成するマクロブロック処理部と、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化部とを有し、
前記マクロブロック処理部は、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値をそれぞれ作成する第１及び第２の予測値生成部を有し、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第１の予測値生成部で逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する
画像処理装置。
【請求項１２】
前記マクロブロック処理部は、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を、前記第１又は第２の予測値生成部で逐次作成する間、
前記１つのマクロブロックに続いて処理するマクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を、前記第２又は第１の予測値生成部で作成する
請求項１１に記載の画像処理装置。
【請求項１３】
前記画像処理装置は、
前記マクロブロック処理部を複数有し、
１つのピクチャーのラスタ走査開始端側のマクロブロックから前記入力画像データの処理を開始した後、処理可能となったマクロブロックに前記複数のマクロブロック処理部を順次割り当てて、前記入力画像データを前記複数のマクロブロック処理部で並列処理する
請求項１２に記載の画像処理装置。
【請求項１４】
前記画像処理装置は、
前記１つのピクチャーにおけるマクロブロックの処理の完了を監視する状態監視部を有し、
前記マクロブロック処理部は、
前記状態監視部の監視結果に基づいて、前記１つのマクロブロックの前記第２のブロックの予測値を、前記第１及び第２の予測値生成部で同時並列的に作成する処理を完了した時点で、処理可能な他のマクロブロックを検出して前記続いて処理するマクロブロックに設定する
請求項１３に記載の画像処理装置。
【請求項１５】
前記最適予測モードが、前記符号化データの生成時、前記第２のブロックにおける複数の予測モードと、前記マクロブロック及び又は前記第１のブロックにおける複数の予測モードとから選択された最も発生符号量の少ない予測モードである
請求項１４に記載の画像処理装置。
【請求項１６】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法。
【請求項１７】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法において、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法。
【請求項１８】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法において、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法。
【請求項１９】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムにおいて、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラム。
【請求項２０】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムにおいて、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラム。
【請求項２１】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムにおいて、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラム。
【請求項２２】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する符号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップと、
前記最適予測モードの予測値を前記入力画像データから減算して前記予測誤差値を生成する予測誤差値生成ステップとを有し、
前記予測値生成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラムを記録した記録媒体。
【請求項２３】
マクロブロック単位で入力画像データを符号化処理して符号化データを出力する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記入力画像データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記入力画像データの最適予測モードで前記入力画像データを処理して予測誤差値を生成するマクロブロック処理のステップと、
前記予測誤差値を処理して前記符号化データを生成する復号化処理のステップとを有し、
前記前処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記第２のブロックにおける複数の予測モードの予測値を作成する予測演算ステップと、
前記第２のブロックにおける複数の予測モードの予測値に基づいて、前記入力画像データの最適予測モードを検出する最適予測モード検出ステップとを有し、
前記予測演算ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラムを記録した記録媒体。
【請求項２４】
マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法のプログラムを記録した記録媒体において、
前記画像処理方法のプログラムは、
前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、
前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、
前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、
前記マクロブロック処理のステップは、
前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値作成ステップを有し、
前記予測値作成ステップは、
１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、
前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、
前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する
画像処理方法のプログラムを記録した記録媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
また請求項１８の発明は、マクロブロック単位で符号化データを復号化処理して画像データを復号する画像処理方法に適用して、前記符号化データの最適予測モードを前記マクロブロック毎に検出する前処理のステップと、前記前処理のステップで検出された前記符号化データの最適予測モードの予測値を生成するマクロブロック処理のステップと、前記符号化データを処理して得られる予測誤差値に前記最適予測モードの予測値を加算して前記画像データを復号する復号化処理のステップとを有し、前記マクロブロック処理のステップは、前記マクロブロックを分割して作成される第１のブロックをそれぞれ分割して作成される第２のブロック毎に、前記最適予測モードの予測値を作成する予測値生成ステップを有し、前記予測値生成ステップは、１つの前記マクロブロックのラスタ走査開始端の前記第１のブロックにおけるラスタ走査開始端側の前記第２のブロックの予測値を逐次作成した後、前記１つのマクロブロックにおける複数の前記第２のブロックの予測値を同時並列的に作成し、前記１つのマクロブロックのラスタ走査終了端の前記第１のブロックにおけるラスタ走査終了端側の前記第２のブロックの予測値を逐次作成する。