(57)【要約】【課題】従来のマクロブロックでの処理では、マクロブロックの形状と領域の形状が必ずしも一致しないため、ブロックノイズに代表されるような、目につきやすいノイズが発生する。このブロックノイズを低減することは、高画質のまま圧縮率を向上することに必要不可欠である。この際に、より少ない情報にて各領域の処理順序を定めることにより、画面内予測の効率を向上させ、圧縮率を向上する。【解決手段】ブロックノイズが目立たないよう、自由な形状で画面を分割して領域分割情報を作成し、領域分割情報と領域順序情報を連携させる。少ないデータ量の情報により、前記分割された領域の処理順序を規定することで、圧縮率を向上する。【選択図】図３
2010268118.tif 000002
【特許請求の範囲】
【請求項１】
入力画像信号に対して画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックの符号化を行う映像符号化方法であって、
前記入力画像信号を画像の形状に応じた複数の領域に分割し、前記符号化ブロックがいずれの前記領域に属するかを示す領域マップを作成する領域マップ作成ステップと、
該領域マップ作成ステップで作成された領域マップに基づき、前記複数の領域の処理順序を定める領域生成ステップ
を有することを特徴とする映像符号化方法。
【請求項２】
請求項１に記載の映像符号化方法であって、前記領域生成ステップは
前記領域マップに基づき前記複数の領域の処理順序を表す領域識別子を生成する領域識別子生成ステップと、
該領域識別子に基づき前記符号化ブロックのうち前記分割された領域の境界にある符号化ブロックを特定する領域記述マップを作成する領域記述マップ作成ステップ
を有することを特徴とする映像符号化方法。
【請求項３】
請求項２に記載の映像符号化方法であって、前記領域記述マップ作成ステップで作成された前記領域記述マップに基づき、これを可変長符号化した領域記述情報を生成する領域記述情報作成ステップを有することを特徴とする映像符号化方法。
【請求項４】
請求項１に記載の映像符号化方法であって、前記処理順序は符号化処理の順序であることを特徴とする映像符号化方法。
【請求項５】
請求項１に記載の映像符号化方法であって、前記処理順序は前記分割された領域の画面上の配置順に基づいて定められることを特徴とする映像符号化方法。
【請求項６】
請求項２に記載の映像符号化方法であって、前記領域識別子生成ステップは、
前記領域識別子の元となる領域ＩＤを第１の所定値に設定する領域ＩＤ設定ステップと、
前記符号化ブロックが前記複数の領域に跨っているかを判定する第１の領域判定ステップと、
該第１の領域判定ステップでの判定の結果、前記符号化ブロックが前記複数の領域に跨っていると判定された場合には、前記符号化ブロックの領域識別子として第２の所定値による境界識別子を設定する第１の領域識別子設定ステップと、
前記第１の領域判定ステップでの判定の結果、前記符号化ブロックが前記複数の領域に跨っていないと判定された場合には、前記符号化ブロックが既に前記領域識別子を設定済の領域に属するかを判定する第２の領域判定ステップと、
該第２の領域判定ステップでの判定の結果、前記符号化ブロックが既に前記領域識別子を設定済の領域に属すると判定された場合には、前記設定済の領域ＩＤを前記符号化ブロックの領域識別子として設定し、前記符号化ブロックが既に前記領域識別子を設定済の領域に属さないと判定された場合には、前記領域ＩＤに第３の所定値を加算して前記領域ＩＤを更新し該更新された領域ＩＤを前記符号化ブロックの領域識別子として設定する第２の領域識別子設定ステップを有し、
前記第１の領域識別子設定ステップ、ないし前記第２の領域識別子設定ステップで前記符号化ブロックに前記領域識別子を設定した後、引続き前記領域識別子を設定する他の符号化ブロックがある場合には、該他の符号化ブロックに対して前記第１の領域判定ステップでの判定を行うことを特徴とする映像符号化方法。
【請求項７】
請求項２に記載の映像符号化方法であって、前記領域記述マップ作成ステップは、
前記領域識別子が前記符号化ブロックは領域の境界にあることを示す境界識別子であるか否かを判定する識別子判定ステップと、
該識別子判定ステップが識別子は境界識別子であると判定した場合には第４の所定値を、前記識別子判定ステップが識別子は境界識別子でないと判定した場合には前記第４の所定値とは異なる第５の所定値を前記符号化ブロックに与える領域記述ステップを有し、
該領域記述ステップで前記いずれかの所定値を前記符号化ブロックに与えた後、引続き前記所定値を与える他の符号化ブロックがある場合には、該他の符号化ブロックに対して前記識別子判定ステップでの判定を行うことを特徴とする映像符号化方法。
【請求項８】
入力された動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックの符号化をして出力する映像符号化装置であって、
前記入力された動画像と既符号化領域から生成された予測画像の差分である差分値を求める減算部と、
前記差分値に対して符号化を行う周波数変換量子化処理部と、
前記符号化された差分値をその発生確率に応じた伝送符号として出力する可変長符号化部と、
前記符号化された差分値を復号する逆量子化逆周波数変換部と、
前記入力された動画像を基に生成された前記符号化に際して参照する参照画像を格納する参照画像格納部と、
前記復号化された予測差分と前記予測画像を加算して前記参照画像を生成し前記参照画像格納部に与える参照画像生成部と、
前記入力された動画像より画像の動きを推定して動きベクトルを生成する動き推定処理部と、
前記参照画像と前記動きベクトルに基づいて、前記減算部に与える予測画像を生成する予測画像生成処理部と、
前記入力された動画像を画像の形状に応じた複数の領域に分割し、前記符号化ブロックがいずれの前記領域に属するかを示す領域マップを作成する領域分割処理部と、
該領域分割処理部で作成された前記領域マップに基づき、前記複数の領域の処理順序を定め、これに基づく領域識別子を生成して前記動き推定処理部に出力し、また該領域識別子に基づき前記分割された領域の境界にある前記符号化ブロックを示す領域記述マップを作成し、前記可変調符号化部に出力する領域生成処理部
を有することを特徴とする映像符号化装置。
【請求項９】
動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックを符号化した際の領域情報と、発生確率に応じた可変長符号とされた動画像の差分値が入力され、これを復号して復号化動画像を出力する映像復号化装置であって、
前記可変長符号を復号する可変長復号化部と、
該可変長復号化部で復号された符号より前記差分値を求める逆量子化逆周波数変換部と、
前記差分値と既復号化画像の和を求め、前記復号化動画像を出力する加算部と、
前記復号化動画像を参照画像として格納する参照画像格納部と、
前記格納された参照画像を参照し、既復号化画像との間の動きベクトルに基づいて、前記加算部に与える既復号化画像を求める予測画像生成処理部と、
前記領域情報に基づき、前記領域の分割に関する情報を復号して前記逆量子化逆周波数変換部と前記予測画像生成処理部に出力する領域復号処理部
を有したことを特徴とする映像復号化装置。
【請求項１０】
動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属するブロックを符号化した際の領域情報と、可変長符号とされた動画像の差分値と、動きベクトル情報とが含まれる符号化ビットストリームを入力する入力ステップと、
前記符号化ビットストリームに含まれる前記領域情報を復号する領域情報復号ステップと、
前記領域情報復号ステップで復号した領域情報と前記動きベクトル情報と、既に復号された画像データに基づいて予測画像を生成する予測画像生成ステップと、
前記可変長符号を可変長復号して可変長復号データを生成する可変長復号ステップと、
前記領域情報復号ステップで復号した領域情報を用いて、前記可変長復号データに対して逆量子化・逆変換を行って動画像の差分値を復号する逆量子化・逆変換ステップと、
前記予測画像生成ステップで生成した予測画像と前記逆量子化・逆変換ステップで復号した差分値との和により復号画像を生成する復号画像生成ステップとを有したことを特徴とする映像復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像符号化方法、映像符号化装置、映像復号化方法および映像復号化装置に係り、特に自由な形状の符号化ブロックを使用する場合の圧縮率を向上した映像符号化方法、映像符号化装置、映像復号化方法および映像復号化装置に関する。
【背景技術】
【０００２】
近年、ＭＰＥＧ（Moving Picture Experts Group）に代表されるように、画面内予測、画面間予測、直交変換、量子化、可変長符号化を用いた動画像符号化装置が広く普及している。ＩＳＯ／ＭＰＥＧ（International Organization for Standardization / Moving Picture Experts Group）とＩＴＵ−Ｔ ／ ＶＣＥＧ（International Telecommunication Union - Telecommunication standardization sector / Video Coding Experts Group）の共同プロジェクトによって策定されたＨ．２６４ ／ ＡＶＣ 動画像符号化方式では、マクロブロックと呼ばれる１６×１６画素ブロック単位で符号化処理を行う。マクロブロック単位による処理は、定型の正方形が処理単位となるため、マクロブロックを所定の順に処理すれば画面内をすべて処理可能であり、その際に各マクロブロックの識別子などをビットストリームに入れる必要はなかった。
【０００３】
一方、圧縮率向上のための一つの方法として、画面を複数の自由な形状の領域に分割して、符号化を行う方法がある。特許文献１に代表されるように、形状情報の情報量を削減する方法に関しては、様々な取り組みがなされている。
また、ＭＰＥＧ−４による符号化方式では、複数のオブジェクトを持つ映像を符号化する方法が規格化されている。ＭＰＥＧ−４では、オブジェクトを柔軟に表示することを可能とするため、映像の画面ではなく、オブジェクトを単位としてビットストリームを形成している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１１５６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
動画像符号化では、圧縮率を向上させるため、様々な予測処理を行っている。特にＨ．２６４では、多くの画面内予測モードを持ち、圧縮率の向上を達成している。このように画面内での予測を効率よく実施することは、圧縮率の向上に対して重要である。
【０００６】
動画像中の人などのオブジェクトは縦と横の直線で領域が分割されない。マクロブロックでの処理では、マクロブロックの形状と領域の形状が必ずしも一致しないため、ブロックノイズに代表されるような、目につきやすいノイズが発生する。このブロックノイズを低減することは、高画質を維持して圧縮率を向上するうえで必要不可欠である。
自由な形状に領域を分割して、さらに、各領域の処理順序を最適とすることにより、ブロックノイズの低減ならびに画面内予測の効率を向上させることが可能である。
【０００７】
しかしながら、領域を自由な形状に分割して圧縮率を向上する取り組みがなされているが、特許文献１に代表されるように、領域分割情報を削減する方法に関する技術を開示しており、分割された領域の処理順序に関する技術は開示されていない。
【０００８】
本発明の目的は前記した状況に鑑み、自由な形状の符号化ブロックを使用する場合の圧縮率を向上した映像符号化方法、映像符号化装置、映像復号化方法および映像復号化装置を提供することにある。
【課題を解決するための手段】
【０００９】
前記目的を達成するため本発明は、入力画像信号に対して画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックの符号化を行う動画像符号化方法であって、前記入力画像信号を画像の形状に応じた複数の領域に分割し、前記符号化ブロックがいずれの前記領域に属するかを示す領域マップを作成する領域マップ作成ステップと、該領域マップ作成ステップで作成された領域マップに基づき、前記複数の領域の処理順序を定める領域生成ステップを有することを特徴としている。
【００１０】
また本発明は、入力された動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックの符号化をして出力する動画像符号化装置であって、前記入力された動画像と既符号化領域から生成された予測画像の差分である差分値を求める減算部と、前記差分値に対して符号化を行う周波数変換量子化処理部と、前記符号化された差分値をその発生確率に応じた伝送符号として出力する可変長符号化部と、前記符号化された差分値を復号する逆量子化逆周波数変換部と、前記入力された動画像を基に生成された前記符号化に際して参照する参照画像を格納する参照画像格納部と、前記復号化された予測差分と前記予測画像を加算して前記参照画像を生成し前記参照画像格納部に与える参照画像生成部と、前記入力された動画像より画像の動きを推定して動きベクトルを生成する動き推定処理部と、前記参照画像と前記動きベクトルに基づいて、前記減算部に与える予測画像を生成する予測画像生成処理部と、前記入力された動画像を画像の形状に応じた複数の領域に分割し、前記符号化ブロックがいずれの前記領域に属するかを示す領域マップを作成する領域分割処理部と、該領域分割処理部で作成された前記領域マップに基づき、前記複数の領域の処理順序を定め、これに基づく領域識別子を生成して前記動き推定処理部に出力し、また該領域識別子に基づき前記分割された領域の境界にある前記符号化ブロックを示す領域記述マップを作成し、前記可変調符号化部に出力する領域生成処理部を有することを特徴としている。
【００１１】
また本発明は、動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属する符号化ブロックを符号化した際の領域情報と、発生確率に応じた可変長符号とされた動画像の差分値が入力され、これを復号して復号化動画像を出力する動画像復号化装置であって、前記可変長符号を復号する可変長復号化部と、該可変長復号化部で復号された符号より前記差分値を求める逆量子化逆周波数変換部と、前記差分値と既復号化画像の和を求め、前記復号化動画像を出力する加算部と、前記復号化動画像を参照画像として格納する参照画像格納部と、前記格納された参照画像を参照し、既復号化画像との間の動きベクトルに基づいて、前記加算部に与える既復号化画像を求める予測画像生成処理部と、前記領域情報に基づき、前記領域の分割に関する情報を復号して前記逆量子化逆周波数変換部と前記予測画像生成処理部に出力する領域復号処理部を有したことを特徴としている。
【００１２】
また本発明は動画像復号化方法であって、動画像を画像の形状に応じた複数の領域に分割し、該領域毎に該領域に属するブロックを符号化した際の領域情報と、可変長符号とされた動画像の差分値と、動きベクトル情報とが含まれる符号化ビットストリームを入力する入力ステップと、前記符号化ビットストリームに含まれる前記領域情報を復号する領域情報復号ステップと、前記領域情報復号ステップで復号した領域情報と前記動きベクトル情報と、既に復号された画像データに基づいて予測画像を生成する予測画像生成ステップと、前記可変長符号を可変長復号して可変長復号データを生成する可変長復号ステップと、前記領域情報復号ステップで復号した領域情報を用いて、前記可変長復号データに対して逆量子化・逆変換を行って動画像の差分値を復号する逆量子化・逆変換ステップと、前記予測画像生成ステップで生成した予測画像と前記逆量子化・逆変換ステップで復号した差分値との和により復号画像を生成する復号画像生成ステップとを有したことを特徴としている。
【発明の効果】
【００１３】
本発明によれば、自由な形状の符号化ブロックを使用する場合の圧縮率を向上した映像符号化方法、映像符号化装置、映像復号化方法および映像復号化装置を提供でき、伝送効率を向上し高画質な復号映像を得るために寄与できるという効果がある。
【図面の簡単な説明】
【００１４】
【図１】動画像のフレームとマクロブロック構成図。
【図２】一般的な動画像符号化回路のモジュール構成図。
【図３】本発明の一実施例における動画像符号化のモジュール構成図。
【図４】本発明の一実施例における領域生成部のモジュール構成図。
【図５】本発明の一実施例における画面内を領域に分割した例を示す図。
【図６】本発明の一実施例におけるブロックの属する領域を示す図。
【図７】本発明の一実施例における領域識別子マップの一例を示す図。
【図８】本発明の一実施例における領域識別子生成処理部のフローチャート。
【図９】本発明の一実施例における領域記述マップの一例を示す図。
【図１０】本発明の一実施例における領域記述処理部のフローチャート。
【図１１】本発明の一実施例における領域識別子マップの別な一例を示す図。
【図１２】本発明の一実施例における領域識別子マップのさらに別な一例を示す図。
【図１３】本発明の一実施例における領域用可変長符号化処理後のビットストリームの一例を示す図。
【図１４】本発明の一実施例におけるブロック内画素数の符号テーブルの一例を示す図。
【図１５】本発明の一実施例における境界表現の符号テーブルの一例を示す図。
【図１６】本発明の一実施例におけるスキャン方式の符号テーブルの一例を示す図。
【図１７】本発明の一実施例における領域データをランレングスにて符号化する一例のフローチャート。
【図１８】本発明の一実施例における領域識別子処理方式の符号テーブルの一例を示す図。
【図１９】本発明の一実施例における動画像復号化のモジュール構成図。
【発明を実施するための形態】
【００１５】
まず図１及び図２を用いて一般的な動画像符号化方法について説明する。図１は動画像のフレームとマクロブロック構成図の一例である。図１に示すように動画像を構成するフレーム(１００)をマクロブロック(１０１)と呼ばれる小領域に分割し、マクロブロック単位で処理を行う。
【００１６】
図２は一般的な動画像符号化回路のモジュール構成図である。前述のマクロブロックとされた画像は入力端子(２００)より入力される。フレーム間予測処理を行う場合は、動き推定処理部(２０１)で動き検出を行い、動きベクトルを生成する。予測画像生成処理部(２０６)は、フレームメモリ（２０５）から供給された画像（以下、参照画像と称することがある）と前記動きベクトルより予測画像を生成する。減算器（２０８）で前記入力画像と予測画像の差分値が求められる。この差分値は変換・量子化部(２０２)へ渡され、ＤＣＴ（Discrete Cosine Transform）を代表とする周波数変換をした後に、量子化が施される。
【００１７】
量子化後のデータと、動き推定処理部(２０１)の動き検出の結果である動きベクトルは、可変長符号化部(２０３)でその発生確率に応じた符号化処理が行われ、ビットストリーム（以下、伝送符号と称する場合がある）となって出力端子(２０７)へ出力される。なお、変換・量子化部(２０２)の出力である量子化後のデータは、逆量子化・逆変換部(２０４)で復号化され、加算器（２０９）でさきに予測画像生成処理部（２０６）で生成された予測画像と加算されたうえで、フレームメモリ(２０５)に保存され、次のフレーム処理での参照画像として予測画像の生成に使用される。
【００１８】
以上の通り、一般的な動画像符号化処理回路は、動き推定処理部(２０１)、フレームメモリ(２０５)、予測画像生成処理部(２０６)、変換・量子化部(２０２)、可変長符号化部(２０３)、逆量子化・逆変換部(２０４)にて構成される。
【実施例１】
【００１９】
本発明による動画像符号化の符号化方法について図３を用いて説明する。図３は、本発明の一実施例における動画像符号化のモジュール構成図である。符号化を施す入力画像は入力端子（３０９）より入力される。入力された画像は、動き推定処理部(３０１)及び領域分割部(３０７)へ供給される。
【００２０】
領域分割部(３０７)では、入力された画像を所定の方法にて、人、車、背景などの領域に分割し、領域マップを作成する。領域マップは、領域生成部(３０８)に供給され、領域識別子処理ならびに領域記述処理を行う。領域識別子は、動き推定処理部(３０１)ならびに予測画像生成処理部(３０２)、可変長符号化部（３０４）に出力される。領域記述情報は、可変長符号化処理を施されたうえで、可変長符号化部(３０４)へ出力される。なお、領域マップ、領域識別子、領域記述情報については、後に詳しく説明する。
【００２１】
フレーム間予測処理を行う場合は、動き推定処理部(３０１)が領域識別子情報に基づいて、動きベクトルを生成する。予測画像生成処理部(３０２)では動きベクトルとフレームメモリ（３０６）に保存された参照画像に基づき、予測画像を生成する。減算器３１１で求められた入力画像と予測画像の差分値が変換・量子化部(３０３)へ供給され、ＤＣＴを代表とする周波数変換を行ったうえで、量子化が施される。
【００２２】
量子化後のデータ、動きベクトル、領域記述情報及び領域識別子は、可変長符号化部(３０４)で符号化処理が行われ、ビットストリームとなって出力端子（３１０）へ出力される。なお、変換・量子化部（３０３）で量子化したデータは、逆量子化・逆変換部(３０５)で変換・量子化部（３０３）とは逆の処理を行い、加算器（３１２）で前記予測画像と加算したうえでフレームメモリ(３０６)に保存され、次のフレーム処理を行う際の参照画像として前記予測画像の生成に使用される。
また、図３では可変長符号化の処理を可変長符号化部（３０４）でまとめて行う例を示しているが、後記するように領域生成部（３０８）も可変長符号化部を有する場合は、領域記述情報と領域識別子の双方、またはいずれか一方は領域生成部（３０８）で可変長符号化され、可変長符号化部（３０４）で可変長符号化されたデータに付加されるようにしても良い。いずれの場合も本発明の範疇にある。
【００２３】
本実施例では、図２で示したような一般的な動画像符号化処理と異なり、領域分割部(３０７)及び領域生成部(３０８)が含まれている点が異なる。
このうち、本実施例の特徴の一つは、領域生成処理ならびに領域記述情報に基づく、可変長符号化処理にある。
【００２４】
本発明の領域生成処理について図４を用いて説明する。図４は本発明の一実施例における領域生成部（３０８）のモジュール構成図である。領域生成部（３０８）は、入力端子（４０１）から入力される領域マップに基づいて、領域識別子ならびに領域記述情報を生成し、領域用可変長符号化情報を出力することを目的とした処理を行う。領域生成部（３０８）は、領域識別子生成処理部（４０２）、領域記述処理部（４０３）及び領域用可変長符号化処理部（４０４）を含んでいる。
ここでは領域記述情報を領域生成部（３０８）で可変長符号化して生成し、図３の可変長符号化部（３０４）へ出力する場合を例に示している。
【００２５】
領域識別子生成処理部（４０２）は、入力端子（４０１）より入力される領域マップより領域識別子を生成し、領域記述処理部（４０３）と出力端子（４０５）へ出力する。なお、領域識別子は出力端子（４０５）から、図３の動き推定処理部（３０１）、予測画像生成処理部（３０２）及び可変長符号化処理部（３０４）へ供給される。領域記述処理部（４０３）は、領域識別子生成処理部（４０２）より領域識別子を受け取り、領域記述マップを作成する。作成した領域記述マップは、領域用可変長符号化処理部（４０４）へ出力される。領域用可変長符号化処理部（４０４）は、領域記述処理部（４０３）から入力される領域記述マップを用いて、可変長符号化処理を実行し、生成した符号である領域記述情報を、出力端子（４０６）へ出力する。出力端子（４０６）の領域記述情報は、図３の可変長符号化部（３０４）へ供給される。
なお、先の領域識別子は予測画像生成部（３０２）において、ある領域を符号化する時、既に符号済の領域のデータを参照して符号化する際に使用される。
【００２６】
図５を用いて、領域マップに関して説明する。領域マップは、図３の領域分割処理部（３０７）が生成するマップである。
図５は、画面内を領域に分割した例を示す図である。図５（ａ）において画面（５００）は、背景である領域Ａ（５０１）と例えば主な被写体である領域Ｂ（５０２）、領域Ｃ（５０３）、領域Ｄ（５０４）及び領域Ｅ（５０５）に分割されている。図５（ａ）の破線の丸で囲んだ領域を拡大したものが図５（ｂ）である。この図ではそれぞれの四角が画素を示している。図５（ｂ）では、図５（ａ）の各領域（ここでは領域Ｅ）のハッチングを用いており、各画素の属する領域（ここでは領域Ａと領域Ｅ）が示されている。図５（ｃ）は図５（ｂ）に対する領域マップの一例であって、図５（ｂ）のハッチングによる領域区別を、領域のアルファベットを用いて示したものである。以上のように、領域マップとは各画素がどの領域に属しているかを示す情報である。
【００２７】
次に図６から図８を用いて、本実施例における図４の領域識別子生成処理部（４０２）の動作に関して詳しく説明する。ここで生成される領域識別子は画素毎に与えてもよいが、ここでは、複数の画素にて構成したブロック毎に領域識別子を与えた例に関して説明する。
図６は、縦と横の画素数を同一とした複数の画素にてブロックを構成した場合の、各ブロックの領域を示す図である。図中の四角が各ブロック、四角中のアルファベットがブロックの属する領域を示している。（６０１）に示すように領域Ａ単独の領域に属するブロックもあれば、（６０２）に示すように領域Ａ及び領域Ｂの複数の領域に属するブロックも存在する。
【００２８】
図７は、図６のブロックの領域状況から、本実施例により領域識別子生成処理部（４０２）で領域識別子を生成した際の、領域識別子マップである。本実施例では、複数の領域に属するたとえば（７０２）のブロック（領域Ａ及び領域Ｂに属する）を特別に境界識別子「０」とした。また、単一の領域に属するブロックについては、各ブロックを左上よりラスタスキャン順序にて、領域が登場した順序にて識別子を「１」から昇順にて与えている。Ａ領域のみに属する領域はラスタスキャン順序で最初の領域であるので、これに属するたとえば（７０１）のブロックには、領域識別子「１」が与えられる。Ｂ領域のみに属する領域は、同じくラスタスキャン順序で２番目の領域であるので、これに属するたとえば（７０５）のブロックには、領域識別子「２」が与えられる。以下、Ｃ領域のみに属するたとえば（７０３）のブロックには「３」が、Ｄ領域のみに属するたとえば（７０４）のブロックには「４」が、Ｅ領域のみに属するたとえば（７０６）のブロックには「５」が与えられる。各領域ブロックの圧縮符号化処理や伝送時の順番は、これらの領域識別子に基づき決定される。また復号化処理においては、これらの領域識別子に基づき、復号化の順序と復号化されたデータを含む各領域ブロックの画面内の位置が決定される。
【００２９】
図８は、本実施例による領域識別子生成処理部（４０２）のアルゴリズムをフローチャートにて示した図である。本実施例では、画面左上を基点としたラスタスキャン順序にて識別子を設定する。画面左上を水平、垂直とも座標０としている。
まず、ステップＳ８０１で水平位置、垂直位置ともに０とし、画面の一番左上のブロックを最初の対象ブロックとする。次にステップＳ８０２で領域識別子変数ＩＤを０と初期化する。この処理に引き続く処理はラスタスキャンを行いながら繰り返す処理となる。ステップＳ８０３で対象ブロックの属する領域をチェックする。ステップＳ８０４での判定で、対象ブロックが複数の領域を含むならば（図中のＹｅｓ）、ステップＳ８０５で領域識別子マップに境界領域識別子「０」を出力する。ステップＳ８０４の判定で、対象ブロックが単一の領域である場合は（図中のＮｏ）、ステップＳ８０６でチェックしたことのある領域であるか否かの判定を行い、既にチェック済みである場合は（図中のＹｅｓ）、ステップＳ８０７で前回同じ領域のブロックに与えた該当の領域識別子を領域識別子マップに出力する。ステップＳ８０６の判定で、対象ブロックが初めてチェックする領域である場合は（図中のＮｏ）、ステップＳ８０８で前記の変数ＩＤに１を加算し、ステップＳ８０９で前記の領域識別子変数ＩＤを該当領域の領域識別子とする。さらにステップＳ８１０でこれを領域識別子マップに出力する。
前記の方法により、境界領域ブロックにはステップＳ８０５で境界領域識別子「０」が与えられ、それ以外の領域ブロックのうち既にチェック済のブロックにはステップＳ８０７で前回同じ領域のブロックに与えた領域識別子が与えられ、初めてチェックするブロックにはステップＳ８１０で昇順に定めた新たな領域識別子が与えられる。これにより、例えば図７で示したような領域識別子マップが生成される。
【００３０】
ステップＳ８０５、Ｓ８０７、Ｓ８１０の後に引き続き行う処理は、スキャン位置の確認処理である。ステップＳ８１１の判定で、ラスタスキャンを行っている位置が画面の右端である場合は（図中のＹｅｓ）、ステップＳ８１２で垂直位置に１を加算し、水平位置を０とし、画面上で一列下の左端のブロックを次の対象ブロックとする。さらにステップＳ８１４で画面の下端を越えているかの判定を行い、超えている場合は（図中のＹｅｓ）、画面全体にわたって領域識別子の生成を終えたので、処理を終了する。超えていない場合は（図中のＮｏ）、ステップＳ８０３に戻り次の対象ブロックの領域識別子を生成する。ステップＳ８１１の判定で画面の右端でない場合は（図中のＮｏ）、ステップＳ８１３で水平位置に１を加算し、右隣りのブロックを次の対象ブロックとし、ステップＳ８０３へ戻り次の対象ブロックの領域識別子を生成する。以上のようにして、図７で示した領域識別子マップが画面全体にわたり生成される。
【００３１】
次に図９及び図１０を用いて、本実施例による領域記述処理部（４０３）の動作の詳細に関して説明する。ここでは生成された領域識別子に基づき、領域記述マップが生成される。
図９は、本実施例により図７の領域識別子マップから生成された領域記述マップを示す図である。図７の領域識別子マップでは、複数の領域に属するブロックを特別な領域識別子である境界識別子「０」としているが、図９に示す本実施例の領域記述処理では境界識別子を持つ、たとえば（９０２）で示すブロックを「１」、たとえば（９０１）で示すその他のブロックを「０」と記述する。境界部分がすべて「１」となるため、本マップにより境界領域を区別することが可能となる。
【００３２】
図１０は、本実施例による領域記述処理部（４０３）のアルゴリズムをフローチャートにて示した図である。本実施例では、画面左上を基点としたラスタスキャン順序にて領域記述マップを作成する。画面左上を水平、垂直とも座標０としている。
【００３３】
まず、ステップＳ１００１で水平位置、垂直位置ともに０とし、画面の一番左上のブロックを最初の対象ブロックとする。この処理に引き続く処理はラスタスキャンを行いながら繰り返す処理となる。次にステップＳ１００２で対象ブロックの領域識別子変数ＩＤをチェックする。ステップＳ１００３での判定で、前記の変数ＩＤの内容が境界識別子であるならば（図中のＹｅｓ）、ステップＳ１００４で領域記述マップに「１」を出力する。ステップＳ１００３での判定で、前記の変数ＩＤの内容が境界識別子ではない場合は（図中のＮｏ）、ステップＳ１００５で領域記述マップに「０」を出力する。引き続き行われる処理は、スキャン位置の確認処理である。ステップＳ１００６での判定で、ラスタスキャンを行っている位置が画面の右端である場合は（図中のＹｅｓ）、ステップＳ１００７で垂直位置に１を加算し、水平位置を０とし、画面上で一列下の左端のブロックを次の対象ブロックとする。さらにステップＳ１００９で、画面の下端を越えているかを判定し、超えている場合は（図中のＹｅｓ）、画面全体にわたって領域記述マップの生成を終えたので、処理を終了する。ステップＳ１００６での判定で、画面の右端でない場合は（図中のＮｏ）、ステップＳ１００８で水平位置に１を加算し、ステップＳ１００２へ戻り、右隣りのブロックを次の対象ブロックとして領域記述を行う。さきのステップＳ１００９の判定で、画面の下端を越えていない場合も（図中のＮｏ）、ステップＳ１００２に戻り、次の対象ブロックの領域記述を行う。
【００３４】
本実施例の場合、生成された領域記述マップは、図４の領域用可変長符号化部（４０４）で発生確率に応じた可変長符号とされて領域記述情報となり、出力端子（４０６）を介して図３の可変長符号化部（２０３）へ供給される。領域用可変長符号化部（４０４）の動作については、後に実施例４で説明する。
ここで、領域識別子生成処理部（４０２）、領域記述処理部（４０３）、領域用可変長符号化処理部（４０４）の各処理は、複数の画素にて構成したブロックを単位として実行されるように説明したが、画素単位で実行しても良い。
【実施例２】
【００３５】
本実施例では、本発明による領域識別子生成処理部（４０２）の別な実施例に関して説明する。図１１は、本発明による領域識別子生成処理部（４０２）で作成された別な領域識別子マップの一例である。
【００３６】
実施例１では、水平方向のラスタスキャン順序にて各領域の領域識別子を昇順にて定めた。本実施例では、各ブロックの水平位置と垂直位置の和（ＰＯＳ；position）を用いて昇順にて識別子を定める。同一のＰＯＳの場合は、垂直位置の小さいほうに小さな識別子を与える。識別子を与える際、単一の領域のみでなく、複数の領域にて構成されるブロックも勘案して定める。さきの図６では、領域Ｃと領域ＤのＰＯＳ最小値が６で同一となる。領域Ｃは水平位置５で垂直位置１であり（図中でＡ／Ｃと記したうち、一番上のブロック）、領域Ｄは水平位置２で垂直位置４（図中でＡ／Ｄと記したうち、一番上のブロック）である。この場合、相対的に垂直位置の小さい（図では上側）領域Ｃにより小さな識別子を与える。
【００３７】
以上の結果、図１１の（１１０３〜１１０６）で示すブロックを、図７の（７０３〜７０６）で示すブロックと比較すれば分かるように、図１１の領域識別子マップは、図７に示す領域識別子マップとは異なる結果となる。領域識別子の昇順にて符号化及び復号化処理を行うこととすれば、領域の処理順序を入れ替えることができる。
【実施例３】
【００３８】
本実施例では、本発明による領域識別子生成処理部（４０２）の更に別な実施例に関して説明する。図１２は、本発明による領域識別子生成処理部（４０２）で生成された更に別な領域識別子マップの一例を示す図である。
【００３９】
実施例１では、水平方向のラスタスキャン順序にて各領域の識別子を昇順にて定めた。本実施例では、各ブロックの水平位置と垂直位置の和（ＰＯＳ）を用いて昇順にて識別子を定める。同一のＰＯＳの場合は、水平位置の小さいほうに小さな識別子を与える。識別子を与える際、単一の領域のみでなく、複数の領域にて構成されるブロックも勘案して定める。図６では、領域Ｃと領域ＤのＰＯＳ最小値が６で同一となる。領域Ｃは水平位置５で垂直位置１であり、領域Ｄは水平位置２で垂直位置４である。この場合、領域Ｄにより小さな識別子を与える。
【００４０】
以上の結果、図１２の（１２０３〜１２０６）で示すブロックを、図７の（７０３〜７０６）、図１１の（１１０３〜１１０６）で示すブロックと比較すれば分かるように、図１２の領域識別子マップは、図７及び図１１に示す領域識別子マップとは異なる結果となる。領域識別子の昇順にて符号化及び復号化処理を行うこととすれば、領域の処理順序を入れ替えることができる。
【００４１】
以上述べたように実施例１から実施例３では、領域識別子の与え方が異なる例を示した。領域生成部（３０８）は常にいずれかの方法を固定的に使用するのではなく、符号化する画像に応じていずれかを選択して使用すると良い。符号化は既に符号化済のブロックを参照して行われるため、前記処理順序を決める領域識別子がいずれの方法で与えられるかにより、データの圧縮率が変わることになる。本実施例においては、圧縮率が高くなるよう符号化済の参照ブロックを得るために、画像に応じて領域識別子の与え方を変えるようにしている。これにより、目的とした圧縮率の向上を行うことが特徴の一つとなっている。
【実施例４】
【００４２】
図１３から図１７を用いて、本実施例による領域用可変長符号化処理部（４０４）の動作の詳細に関して説明する。
図１３は、本実施例による領域用可変長符号化処理されたデータのビットストリームへの格納例を示す図である。図１３は、動画像のビットストリームを画面単位で分割されている形式を例にしている。画面単位のビットストリームは、ピクチャヘッダ（１３０１）、領域情報（１３０２）、映像データ（１３０３）にて構成される。本実施例の領域用可変長符号化ビットストリームは、領域情報（１３０２）に格納される。領域情報（１３０２）は、方式Ｉｎｄｅｘ（１３０４）、領域データ（１３０５）及び領域識別子処理方式（１３０６）にて構成する。
方式Ｉｎｄｅｘ（１３０４）は、領域記述マップを格納する領域データ（１３０５）の格納形式を示す情報である。方式Ｉｎｄｅｘ（１３０４）は、ブロック内の画素数（１３０７）、境界表現（１３０８）及びスキャン方式（１３０９）にて構成される。
【００４３】
ブロック内画素数（１３０７）は、文字通りブロック内の総画素数である。図１４に示すとおり、１画素にて構成した場合は「１」、水平垂直とも２画素で構成した場合は、「４」が値となる。この場合それぞれビット表現にて「０００」ならびに「００１」が符号として与えられる。
【００４４】
境界表現（１３０８）は、分割された境界領域の表現方法を示す情報である。実施例１の場合は、複数の領域にて構成されたブロックを領域の境界として使用した。この場合、図１５に示す「複数領域」とし、「０」にて符号化する。その他、ブロックを水平方向のラスタスキャンにてチェックし、直前の処理ブロックと異なる領域が出現したブロックのみ「１」として、その他のブロックを「０」と表現することも可能である。たとえばこの場合、図１５に示す「境界エッジ」とし、「１」にて符号化する。
【００４５】
スキャン方式（１３０９）は、前記境界表現（１３０８）で特に「境界エッジ」を行う場合のスキャン方法を示す情報である。「境界エッジ」の場合は前記「複数領域」の場合と異なり、スキャン方法によって各ブロックに与えられる符号が異なることがあるため、スキャン方式（１３０９）を送る必要がある。図１６に示すとおり、水平方向のラスタスキャンの場合、「００」、垂直方向のラスタスキャンの場合「０１」で、ブロックの水平位置と垂直位置の和（ＰＯＳ）の昇順で境界エッジを探索する場合、実施例２で示したように垂直位置が小さいブロックが優先となる場合は「１０」、実施例３で示したように水平位置が小さいブロックが優先となる場合は「１１」にて符号化する。
【００４６】
領域データ（１３０５）は、実施例１の図９の領域記述マップをビットストリームにして格納する場所である。領域記述マップは、「０」「１」のデータであるので、ランレングス、ＭＲ（Modified Read）、ＭＭＲ（Modified Modified Read）などの手法にて符号化することが可能である。
【００４７】
本実施例では、ランレングスにて符号化する際のアルゴリズムを図１７のフローチャートを用いて説明する。
まずステップＳ１７０１で、水平位置、垂直位置ともに０とする。ステップＳ１７０２で、「０」「１」の連続数をカウントするカウンタを０にリセットする。次にステップＳ１７０３で、変数Ｄｐｒｅｖに「０」をセットする。
この処理に引き続く処理はブロック毎に繰り返す処理となる。まずステップＳ１７０４で、図９で示したような領域記述マップから、ブロック毎の領域記述情報（以下、Ｄと記す）を入力する。次にステップＳ１７０５で、ＤとＤｐｒｅｖの比較を行い、同一であれば（図中のＹｅｓ）、ステップＳ１７０６でカウンタに１を加算する。同一でなければ（図中のＮｏ）、ステップＳ１７０７でカウンタ値を領域データ（１３０５）に出力し、カウンタをリセットし、変数ＤｐｒｅｖにＤの値をセットする。このように領域の境界がくるごとにカウンタ値が領域データに出力されるため、境界の位置を短い符号で効率良く伝送することができる。このように、領域記述情報の可変長符号化処理により圧縮率を向上することが、本実施例の特徴の一つとなっている。
次の処理は、スキャン位置の確認処理である。ステップＳ１７０８での判定で、スキャン位置が画面の右端である場合は（図中のＹｅｓ）、ステップＳ１７０９で垂直位置に１を加算及び水平位置を０とし、一列下の左端のブロックを次の対象ブロックとして、ステップＳ１７１１へ進む。右端でない場合は（図中のＮｏ）、ステップＳ１７１０で水平位置に１を加算し、右隣りのブロックを次の対象ブロックとして、ステップＳ１７０４に戻り処理を続ける。またステップＳ１７１１で画面の下端を越えているかを判定し、超えていない場合は（図中のＮｏ）、前記したブロックを次の対象ブロックとして、ステップＳ１７０４へ戻り処理を続ける。超えている場合は（図中のＹｅｓ）、ステップＳ１７１２でカウンタ値を確認し、０であれば（図中のＹｅｓ）処理を終了し、０でない場合は（図中のＮｏ）ステップＳ１７１３でカウンタ値を領域データに出力して処理を終了する。
【００４８】
図１３の領域識別子処理方式（１３０６）は、実施例１から３までに示した領域識別子処理の方式別を格納する領域である。図１８に示すように、実施例１の「水平ラスタスキャン」の場合は「００」、実施例２の「水平垂直位置の和（垂直優先）」の場合は「１０」、実施例３の「水平垂直位置の和（水平優先）」の場合は「１１」を、また実施例では示していないが「任意順序」の場合は「０１」を符号化する。任意順序とは、さらに圧縮率を向上するため前記三つの方式以外を用いる際に用いられる。
なお、スキャン方式（１３０９）と領域識別子処理方式（１３０６）とは、識別子を与える方式を示すことでは共通するが、前者は境界領域の、後者はそれ以外の領域に対して識別子を与える方式である。これらを別個に定めることにより、いっそう圧縮率を向上することができる。しかし、いずれか一方のみをストリームに格納し、双方の領域に共通のスキャンをおこなっても良く、これも本発明の範疇にある。
【実施例５】
【００４９】
図１９を用いて本発明による動画像符号化の復号化方法について説明する。入力端子（１９０１）から入力される符号化されたビットストリームは、まず、可変長復号化処理部(１９０２)に供給される。領域情報は、可変長復号化処理部（１９０２）から領域復号処理部（１９０９）へ供給される。領域復号処理部（１９０９）では、実施例１から４で示した方法の逆順にて、領域記述マップまたは領域識別子マップを生成し、予測画像生成処理部（１９０５）と逆量子化・逆変換部（１９０３）へ供給する。
【００５０】
ビットストリームに含まれる、可変長符号とされた動画像の差分値は、可変長復号化処理部(１９０２)で可変長復号され、可変長復号データとなる。次に、逆量子化・逆変換部(１９０３)では、領域復号処理部（１９０９）から取得した領域記述マップまたは領域識別子マップにより示される分割領域毎に可変長復号データは、さきに符号化時に行われた変換・量子化部（２０２）の逆処理である逆量子化・逆変換を施され、動画像の差分値データが生成される。領域記述マップまたは領域識別子マップと動きベクトルとフレームメモリ(１９０４)内の既復号化済のフレームデータを使用し、予測画像生成処理部(１９０５)で予測画像を生成する。この予測画像と逆量子化・逆変換部(１９０３)からの動画像の差分値データを加算器（１９１０）で加算して元の動画像を復号画像として再構成し、出力端子（１９０６）から出力する。再構成された動画像は、フレームメモリ(１９０４)に格納され、以降の処理で使用される。
【００５１】
これまでの説明において、各構成要素をたとえば領域用可変長符号化部（４０４）のように「部」を用いて表現したが、これは個々の構成要素がハードウェアで構成されると限定するものではない。現在では信号圧縮処理にはソフトウェア処理が多用されており、その場合の実施例も本発明の範疇にある。
また信号処理方法においては様々な変形例が考えられるが、本発明はこれまで開示した実施例に限定されることなく、他の映像符号化方法、映像符号化装置および映像復号化装置もその範疇としている。
【符号の説明】
【００５２】
２０１：動き推定処理部、２０２：変換・量子化部、２０３：可変長符号化部、２０４：逆量子化・逆変換部、２０５：フレームメモリ、２０６：予測画像生成処理部、３０１：動き推定処理部、３０２：予測画像生成処理部、３０３：変換・量子化、３０４：可変長符号化部、３０５：逆量子化・逆変換部、３０６：フレームメモリ、３０７：領域分割処理部、３０８：領域生成処理部、４０２：領域識別子生成処理部、４０３：領域記述処理部、４０４：領域用可変長符号化処理部、１３０１：ピクチャヘッダ、１３０２：領域情報、１３０３：映像データ、１３０４：方式Ｉｎｄｅｘ、１３０５：領域データ、１３０６：領域識別子処理方式、１３０７：ブロック内画素数、１３０８：境界表現、１３０９：スキャン方式、１９０２：可変長復号化処理部、１９０３：逆量子化・逆変換部、１９０４：フレームメモリ、１９０５：予測画像生成処理部、１９０９：領域復号処理部。
【図１】
2010268118.tif 000003
【図２】
2010268118.tif 000004
【図３】
2010268118.tif 000005
【図４】
2010268118.tif 000006
【図５】
2010268118.tif 000007
【図６】
2010268118.tif 000008
【図７】
2010268118.tif 000009
【図８】
2010268118.tif 000010
【図９】
2010268118.tif 000011
【図１０】
2010268118.tif 000012
【図１１】
2010268118.tif 000013
【図１２】
2010268118.tif 000014
【図１３】
2010268118.tif 000015
【図１４】
2010268118.tif 000016
【図１５】
2010268118.tif 000017
【図１６】
2010268118.tif 000018
【図１７】
2010268118.tif 000019
【図１８】
2010268118.tif 000020
【図１９】
2010268118.tif 000021