(57)【要約】  係数符号化手段は、２次元信号をウェーブレット変換して生成された複数の高域サブバンドから、空間的に同一位置にある複数の係数（ウェーブレット変換係数）の組を係数組として抽出して符号化する。係数符号化手段は、係数組に含まれる複数の係数をまとめて符号化する多次元係数符号化手段と、個別に符号化する個別係数符号化手段と、符号化対象とする係数組に対して空間的に近傍に位置する符号化済の複数の係数の組をモード判定参照係数組として抽出するモード判定参照係数抽出手段と、上記モード判定参照係数組に含まれる複数の係数の絶対値の総和と予め定められた閾値とを比較して、符号化対象とする係数組に含まれる複数の係数を、多次元係数符号化手段および個別係数符号化手段の何れを用いて符号化するかを決定する符号化方法決定手段とを有する。
2014013647.tif 000002
【特許請求の範囲】
【請求項１】
２次元信号を複数の周波数領域であるサブバンドに分解するウェーブレット変換手段と、
前記サブバンドのウェーブレット変換係数を符号化する係数符号化手段とを有し、
前記係数符号化手段は、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にある複数のウェーブレット変換係数の組を係数組として抽出する係数組抽出手段と、
前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数をまとめて符号化する多次元係数符号化手段と、
前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を個別に符号化する個別係数符号化手段と、
同一階層に属する前記ＬＨサブバンド、前記ＨＬサブバンド、および前記ＨＨサブバンドから、前記抽出された前記係数組に対して空間的に近傍に位置する符号化済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するモード判定参照係数抽出手段と、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を、前記多次元係数符号化手段および前記個別係数符号化手段の何れを用いて符号化するかを決定する符号化方法決定手段と
を有する
ウェーブレット変換符号化装置。
【請求項２】
前記符号化方法決定手段は、前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と前記第１の閾値より小さな値に設定された第２の閾値とを比較して、連長モードに入るか否かを決定し、前記連長モードに入らないと決定した場合および前記連長モードから抜けた場合に、前記多次元係数符号化手段および前記個別係数符号化手段の何れを用いて符号化するかの前記決定を行い、
前記連長モード中に、前記係数組に含まれる全ての前記ウェーブレット変換係数が０となる組が連続して出現する数を連長数としてカウントし、前記係数組に含まれる何れかの前記ウェーブレット変換係数が０以外となったときに前記連長数を符号化して前記連長モードから抜ける連長符号化手段をさらに有する
請求項１に記載のウェーブレット変換符号化装置。
【請求項３】
前記多次元係数符号化手段は、種類の異なる複数の可変長符号表を有し、前記連長モードを抜けた直後の符号化であるか否かによって、前記複数の可変長符号表から一の可変長符号表を選択し、該選択した可変長符号表を用いて符号化を行う
請求項２に記載のウェーブレット変換符号化装置。
【請求項４】
前記モード判定参照係数抽出手段は、符号化対象となるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの座標を（ｉ，ｊ）とするとき、
（１）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＬＨ
（５）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＨＬ
（６）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＨＨ
を抽出する請求項１乃至３の何れかに記載のウェーブレット変換符号化装置。
【請求項５】
前記多次元係数符号化手段は、
前記複数の前記ウェーブレット変換係数のそれぞれを、絶対値がそれぞれ０、１、…、（Ｎ−２）であって隣接するクラス間の絶対値の差が１であるＮ−１個のクラス、および絶対値がＮ−１以上のクラスの合計Ｎクラス（Ｎ≧３）の何れかに分類し、前記複数の前記ウェーブレット変換係数のそれぞれが属する前記クラスの番号の組み合わせであるベクトルを可変長符号化する多次元係数ベクトル符号化手段と、
絶対値が０以外の前記ウェーブレット変換係数の正負の情報を符号化する多次元係数正負符号化手段と、
絶対値がＮ−１以上の前記ウェーブレット変換係数について、絶対値からＮ−１を減じた値を可変長符号化する多次元係数振幅符号化手段と
を有する請求項１乃至４の何れかに記載のウェーブレット変換符号化装置。
【請求項６】
前記多次元係数振幅符号化手段は、
符号化対象となるウェーブレット変換係数の符号化パラメータを同一階層に属する複数の高域サブバンド内の既に符号化された近傍の複数のウェーブレット変換係数に基づいて算出し、該算出した前記符号化パラメータを用いて前記可変長符号化を行う
請求項５に記載のウェーブレット変換符号化装置。
【請求項７】
前記多次元係数振幅符号化手段は、
絶対値がＮ−１以上の前記ウェーブレット変換係数が前記係数組に複数存在する場合、前記係数組内では、ウェーブレット変換係数ＬＨ、ウェーブレット変換係数ＨＬ、ウェーブレット変換係数ＨＨの順に符号化を行う
請求項６に記載のウェーブレット変換符号化装置。
【請求項８】
前記個別係数符号化手段は、
前記符号化対象となるウェーブレット変換係数の符号化パラメータを同一階層に属する複数の高域サブバンド内の既に符号化された近傍の複数のウェーブレット変換係数に基づいて算出し、該算出した前記符号化パラメータを用いて前記可変長符号化を行う係数振幅符号化手段と、
前記符号化対象となるウェーブレット変換係数のうち、絶対値が０以外の前記ウェーブレット変換係数の正負の情報を符号化する係数正負符号化手段と
を有する
請求項１乃至７の何れかに記載のウェーブレット変換符号化装置。
【請求項９】
前記個別係数符号化手段は、
前記係数組内では、ウェーブレット変換係数ＬＨ、ウェーブレット変換係数ＨＬ、ウェーブレット変換係数ＨＨの順に符号化を行う
請求項８に記載のウェーブレット変換符号化装置。
【請求項１０】
前記符号化パラメータの算出では、符号化対象となるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの座標を（ｉ，ｊ）とするとき、ＬＨ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
を参照し、ＨＬ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
を参照し、ＨＨ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（３）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＨＬ
を参照する
請求項６または８に記載のウェーブレット変換符号化装置。
【請求項１１】
前記多次元係数符号化手段は、
前記複数の前記ウェーブレット変換係数のそれぞれを、絶対値がそれぞれ０、１、２以上の３つのクラスの何れかに分類し、前記複数の前記ウェーブレット変換係数のそれぞれが属する前記クラスの番号の組み合わせであるベクトルを可変長符号化する多次元係数ベクトル符号化手段と、
絶対値が１以上の前記ウェーブレット変換係数の正負の情報を符号化する多次元係数正負符号化手段と、
絶対値が２以上の前記ウェーブレット変換係数について、絶対値から２を減じた値を可変長符号化する多次元係数振幅符号化手段と
を有し、
前記第１の閾値の値が６、前記第２の閾値の値が３である
請求項２に記載のウェーブレット変換符号化装置。
【請求項１２】
ウェーブレット変換により得られた複数のサブバンドのウェーブレット変換係数を可変長符号化した符号列を入力とする復号装置であって、
前記符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号する係数復号手段を備え、
前記係数復号手段は、
前記組に含まれる前記複数のウェーブレット変換係数をまとめて復号する多次元係数復号手段と、
前記組に含まれる前記複数のウェーブレット変換係数を個別に復号する個別係数復号手段と、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、復号対象の前記組に対して空間的に近傍に位置する復号済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するモード判定参照係数抽出手段と、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記復号対象の前記組に含まれる前記複数の前記ウェーブレット変換係数を、前記多次元係数復号手段および前記個別係数復号手段の何れを用いて復号するかを決定する復号方法決定手段と
を有するウェーブレット変換復号装置。
【請求項１３】
前記復号方法決定手段は、前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と前記第１の閾値より小さな値に設定された第２の閾値とを比較して、連長モードに入るか否かを決定し、前記連長モードに入らないと決定した場合および前記連長モードから抜けた場合に、前記多次元係数復号手段および前記個別係数復号手段の何れを用いて復号するかの前記決定を行い、
前記連長モードの開始時に、復号対象である前記組の係数値が全て０となる回数である連長数を復号し、前記連長モード中は、前記連長数だけ、係数値が全て０となる組を出力した後、連長モードを抜ける連長復号手段をさらに有する
請求項１２に記載のウェーブレット変換復号装置。
【請求項１４】
前記多次元係数復号手段は、種類の異なる複数の可変長符号表を有し、前記連長モードを抜けた直後の復号であるか否かによって、前記複数の可変長符号表から一の可変長符号表を選択し、該選択した可変長符号表を用いて復号を行う
請求項１３に記載のウェーブレット変換復号装置。
【請求項１５】
前記モード判定参照係数抽出手段は、復号対象となるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの座標を（ｉ，ｊ）とするとき、
（１）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ，ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＬＨ
（５）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＨＬ
（６）座標値（ｉ−１，ｊ）のウェーブレット変換係数ＨＨ
を抽出する請求項１２乃至１４の何れかに記載のウェーブレット変換復号装置。
【請求項１６】
前記多次元係数復号手段は、
前記複数の前記ウェーブレット変換係数のそれぞれを、絶対値がそれぞれ０、１、…、Ｎ−２であって隣接するクラス間の絶対値の差が１であるＮ−１個のクラス、および絶対値がＮ−１以上のクラスの合計Ｎクラス（Ｎ≧３）の何れかに分類し、前記複数の前記ウェーブレット変換係数のそれぞれが属する前記クラスの番号の組み合わせであるベクトルを復号する多次元係数ベクトル復号手段と、
絶対値が０以外の前記ウェーブレット変換係数の正負の情報を復号する多次元係数正負復号手段と、
絶対値がＮ−１以上の前記ウェーブレット変換係数について、絶対値からＮ−１を減じた値を復号した後、Ｎ−１を加算する多次元係数振幅復号手段と
を有する請求項１２至１５の何れかに記載のウェーブレット変換復号装置。
【請求項１７】
前記多次元係数振幅復号手段は、
復号対象となるウェーブレット変換係数の符号化パラメータを同一階層に属する複数の高域サブバンド内の既に復号された近傍の複数のウェーブレット変換係数に基づいて算出し、該算出した前記符号化パラメータを用いて前記復号を行う
請求項１６に記載のウェーブレット変換復号装置。
【請求項１８】
前記多次元係数振幅復号手段は、
絶対値がＮ−１以上の複数の前記ウェーブレット変換係数を復号する場合、前記組内では、ウェーブレット変換係数ＬＨ、ウェーブレット変換係数ＨＬ、ウェーブレット変換係数ＨＨの順に復号を行う
請求項１７に記載のウェーブレット変換復号装置。
【請求項１９】
前記個別係数復号手段は、
前記復号対象となるウェーブレット変換係数の符号化パラメータを同一階層に属する複数の高域サブバンド内の既に復号された近傍の複数のウェーブレット変換係数に基づいて算出し、該算出した前記符号化パラメータを用いて前記復号を行う係数振幅復号手段と、
前記復号対象となるウェーブレット変換係数のうち、絶対値が０以外の前記ウェーブレット変換係数の正負の情報を復号する係数正負復号手段と
を有する
請求項１２乃至１８の何れかに記載のウェーブレット変換復号装置。
【請求項２０】
前記個別係数復号手段は、
前記係数組内では、ウェーブレット変換係数ＬＨ、ウェーブレット変換係数ＨＬ、ウェーブレット変換係数ＨＨの順に復号を行う
請求項１９に記載のウェーブレット変換復号装置。
【請求項２１】
前記符号化パラメータの算出では、復号対象となるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの座標を（ｉ，ｊ）とするとき、ＬＨ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
を参照し、ＨＬ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
を参照し、ＨＨ係数に対しては
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（３）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＨＬ
を参照する
請求項１７または１９に記載のウェーブレット変換復号装置。
【請求項２２】
前記多次元係数復号手段は、
前記複数の前記ウェーブレット変換係数のそれぞれを、絶対値がそれぞれ０、１、２である３つのクラスの何れかに分類し、前記複数の前記ウェーブレット変換係数のそれぞれが属する前記クラスの番号の組み合わせであるベクトルを復号する多次元係数ベクトル復号手段と、
絶対値が１以上の前記ウェーブレット変換係数の正負の情報を復号する多次元係数正負復号手段と、
絶対値が２以上の前記ウェーブレット変換係数について、絶対値から２を減じた値を復号した後、２を加算する多次元係数振幅復号手段と
を有し、
前記第１の閾値の値が６、前記第２の閾値の値が３である
請求項１３に記載のウェーブレット変換復号装置。
【請求項２３】
２次元信号を複数の周波数領域であるサブバンドに分解し、
前記サブバンドのウェーブレット変換係数を符号化し、
前記サブバンドのウェーブレット変換係数の符号化では、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にある複数のウェーブレット変換係数の組を係数組として抽出し、
同一階層に属する前記ＬＨサブバンド、前記ＨＬサブバンド、および前記ＨＨサブバンドから、前記抽出された前記係数組に対して空間的に近傍に位置する符号化済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出し、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を、多次元係数符号化方法および個別係数符号化方法の何れを用いて符号化するかを決定し、
前記多次元係数符号化方法で符号化すると決定された場合に、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数をまとめて符号化し、
前記個別係数符号化方法で符号化すると決定された場合に、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を個別に符号化する
ウェーブレット変換符号化方法。
【請求項２４】
ウェーブレット変換により得られた複数のサブバンドのウェーブレット変換係数を可変長符号化した符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号し、
前記組毎のウェーブレット変換係数の復号では、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、復号対象の前記組に対して空間的に近傍に位置する復号済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出し、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記復号対象の前記組に含まれる前記複数の前記ウェーブレット変換係数を、多次元係数復号方法および個別係数復号方法の何れを用いて復号するかを決定し、
前記多次元係数復号方法で復号すると決定した場合に、前記組に含まれる前記複数のウェーブレット変換係数をまとめて復号し、
前記個別係数復号方法で復号すると決定した場合に、前記組に含まれる前記複数のウェーブレット変換係数を個別に復号する
ウェーブレット変換復号方法。
【請求項２５】
コンピュータに、
２次元信号を複数の周波数領域であるサブバンドに分解するステップと、
前記サブバンドのウェーブレット変換係数を符号化するステップとを行わせ、
前記サブバンドのウェーブレット変換係数の符号化ステップでは、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にある複数のウェーブレット変換係数の組を係数組として抽出ステップと、
同一階層に属する前記ＬＨサブバンド、前記ＨＬサブバンド、および前記ＨＨサブバンドから、前記抽出された前記係数組に対して空間的に近傍に位置する符号化済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するステップと、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を、多次元係数符号化方法および個別係数符号化方法の何れを用いて符号化するかを決定するステップと、
前記多次元係数符号化方法で符号化すると決定された場合に、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数をまとめて符号化するステップと、
前記個別係数符号化方法で符号化すると決定された場合に、前記抽出された前記係数組に含まれる前記複数の前記ウェーブレット変換係数を個別に符号化するステップと
を行わせるためのプログラム。
【請求項２６】
コンピュータに、
ウェーブレット変換により得られた複数のサブバンドのウェーブレット変換係数を可変長符号化した符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号するステップを行わせ、
前記組毎のウェーブレット変換係数の復号ステップでは、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、復号対象の前記組に対して空間的に近傍に位置する復号済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するステップと、
前記抽出された前記モード判定参照係数組に含まれる前記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、前記復号対象の前記組に含まれる前記複数の前記ウェーブレット変換係数を、多次元係数復号方法および個別係数復号方法の何れを用いて復号するかを決定するステップと、
前記多次元係数復号方法で復号すると決定した場合に、前記組に含まれる前記複数のウェーブレット変換係数をまとめて復号するステップと、
前記個別係数復号方法で復号すると決定した場合に、前記組に含まれる前記複数のウェーブレット変換係数を個別に復号するステップとを
行わせるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は２次元信号の符号化と復号に関し、特にウェーブレット変換を用いた２次元信号の符号化／復号方法および装置ならびにプログラムに関する。
【背景技術】
【０００２】
画像信号に代表される２次元信号を高能率に符号化する方式の一つに、ウェーブレット変換符号化方式が知られている。【０００３】
ウェーブレット変換符号化方式では、まず、２次元信号に対してウェーブレット変換を施す。ウェーブレット変換は、一種のサブバンド符号化であり、水平および垂直方向にそれぞれ帯域分割するサブバンド分割を、低域側について繰り返し行うことでＮ階層の帯域分割を行う。このような帯域分割はオクターブ分割と呼ばれる。３階層まで分割した場合は、図１９に示すような１０個のサブバンドが得られる。【０００４】
図１９において、Ｆ０〜Ｆ３は最下位層のサブバンド、Ｆ４〜Ｆ６はその上の階層のサブバンド、Ｆ７〜Ｆ９は最上位層のサブバンドである。また、Ｆ１、Ｆ４、Ｆ７は、水平方向にローパスフィルタ、垂直方向にハイパスフィルタをかけたサブバンド、Ｆ２、Ｆ５、Ｆ８は、水平方向にハイパスフィルタ、垂直方向にローパスフィルタをかけたサブバンド、Ｆ３、Ｆ６、Ｆ９は、水平方向および垂直方向ともハイパスフィルタをかけたサブバンドである。また、Ｆ０を最低域サブバンドと呼び、Ｆ０以外のＦ１〜Ｆ９を高域サブバンドと呼ぶ。【０００５】
各サブバンドＦ０〜Ｆ９には、ウェーブレット変換係数が含まれる。本明細書では、Ｆ１、Ｆ４、Ｆ７のように水平方向にローパスフィルタ、垂直方向にハイパスフィルタをかけたサブバンドに含まれるウェーブレット変換係数をＬＨと呼ぶ。また、Ｆ２、Ｆ５、Ｆ８のように水平方向にハイパスフィルタ、垂直方向にローパスフィルタをかけたサブバンドに含まれるウェーブレット変換係数をＨＬと呼ぶ。また、Ｆ３、Ｆ６、Ｆ９のように水平方向および垂直方向ともハイパスフィルタをかけたサブバンドに含まれるウェーブレット変換係数をＨＨと呼ぶ。また、最低域サブバンドＦ０に含まれるウェーブレット変換係数をＬＬと呼ぶ。さらに、同一階層の複数の高域サブバンドにおける同一空間座標のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨには、例えば、ＬＨ（ｉ，ｊ）、ＨＬ（ｉ，ｊ）、ＨＨ（ｉ，ｊ）のように、それらの後ろに同じ座標を付記して表現する。なお、水平方向をｘ、垂直方向をｙとし、座標は（ｘ，ｙ）で表現するものとする。【０００６】
上記のようなウェーブレット変換を行うと、電力は最低域サブバンドに含まれるウェーブレット変換係数ＬＬに偏り、高域サブバンドに含まれるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨは、０に近い値になる。このため、０に近い値ほど符号長が短くなる可変長符号を用いて、高域サブバンドに含まれるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨを符号化することにより、情報量を圧縮することが可能になる。また、ウェーブレット変換係数ＬＨ、ＨＬ、ＨＨを量子化すれば、０となるウェーブレット変換係数の数が増えるため、連長圧縮（ランレングス圧縮）を併用することにより、情報量の更なる高圧縮が可能になる。【０００７】
ここで、高域サブバンドに含まれるウェーブレット変換係数を符号化する方式としては、ＪＰＥＧ２０００（ISO-15444-1/ITU-T Rec.800）のようにＬＨ、ＨＬ、ＨＨをそれぞれ別々に符号化する方式と、例えば特許文献１、２、および非特許文献１に示すように、同一階層に属する複数のサブバンド内の空間的に同一位置にあるＬＨ、ＨＬ、ＨＨを組として、一組ずつ符号化する方式とがある。本発明は、後者の方式の改良に関する。【０００８】
他方、ウェーブレット変換復号では、ウェーブレット変換符号化によって生成された符号列を入力し、符号化と逆の手順を用いて、元の２次元信号を生成する。【０００９】
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンド内の空間的に同一位置にあるＬＨ、ＨＬ、ＨＨを組として符号化する方式は、さらに、組に含まれる複数のウェーブレット変換係数を個別に符号化する方式（以下、個別係数符号化方式と称す）と、組に含まれる複数のウェーブレット変換係数をまとめて符号化する方式（以下、多次元係数符号化方式と称す）とに大別される。【００１０】
個別係数符号化方式の一例が、特許文献２に記載されている。特許文献２では、ＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にあるＬＨ、ＨＬ、ＨＨの組を抽出し、ＬＨ、ＨＬ、ＨＨの順に個別に、ゴロムライス（Golomb-Rice）符号を用いて、可変長符号化する。【００１１】
多次元係数符号化方式の一例が、特許文献１に記載されている。特許文献１では、ＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にあるＬＨ、ＨＬ、ＨＨの組を抽出し、ＬＨ、ＨＬ、ＨＨの３つの係数をまとめて一つの符号に符号化する。具体的には、ＬＨ、ＨＬ、ＨＨがゼロか否かを判定し、各１ビットの判別情報を生成する。次に、その判別情報を組ごとに結合して複数ビット長のフラグ情報を生成し、このフラグ情報を可変長符号化する。これによって、組に含まれる係数の全てがゼロ値となる場合の圧縮率を向上させている。但し、ゼロでなかった係数については、その係数の値を別途に可変長符号化しておく。【００１２】
多次元係数符号化方式の他の例が、非特許文献１に記載されている。非特許文献１では、同一階層で空間的に近傍にあるＬＨ、ＨＬ、ＨＨ係数を複数まとめて多次元のベクトルを形成して符号化する。具体的には、ベクトルの電力に応じてクラス分けを行い、クラスに応じたベクトル量子化を施すことで係数の圧縮効率を高めている。また、全係数値がゼロとなるベクトルを無効ベクトルとして符号化対象から除くことによって、ゼロ係数が多発する高圧縮時の圧縮率を向上させている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特許第４４２４５２２号公報
【特許文献２】特許第４６５０５９２号公報
【非特許文献】
【００１４】
【非特許文献１】松村ほか,"ウェーブレット変換画像のサブバンド階層・電力クラス別ベクトル量子化法,"第10回画像符号化シンポジウム論文集(PCSJ95),pp.121-122
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上述したように、同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンド内の空間的に同一位置にあるＬＨ、ＨＬ、ＨＨを符号化する方式として、個別係数符号化方式と多次元係数符号化方式との２通りの方式がある。しかしながら、多次元係数符号化方式で符号化した方が圧縮率が高まる２次元信号がある一方で、逆に個別係数符号化方式で符号化した方が圧縮率が高まる２次元信号が存在する。また、一つの２次元信号中に、多次元係数符号化方式で符号化した方が圧縮率が高まる部分と個別係数符号化方式で符号化した方が圧縮率が高まる部分とが混在する２次元信号が存在する。このため、符号化対象となる複数のウェーブレット変換係数をまとめて符号化するか、個別に符号化するかが２次元信号全体で固定化されている手法では、圧縮率の良い符号化は困難である。【００１６】
本発明の目的は、上述した課題、すなわち、空間的に同一位置にある複数のウェーブレット変換係数をまとめて符号化するか、個別に符号化するかが２次元信号全体で固定化されている手法では圧縮率の良い符号化は困難である、という課題を解決するウェーブレット変換符号化装置を提供することにある。
【課題を解決するための手段】
【００１７】
本発明の一形態にかかるウェーブレット変換符号化装置は、
２次元信号を複数の周波数領域であるサブバンドに分解するウェーブレット変換手段と、
上記サブバンドのウェーブレット変換係数を符号化する係数符号化手段とを有し、
上記係数符号化手段は、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にある複数のウェーブレット変換係数の組を係数組として抽出する係数組抽出手段と、
上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数をまとめて符号化する多次元係数符号化手段と、
上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数を個別に符号化する個別係数符号化手段と、
同一階層に属する上記ＬＨサブバンド、上記ＨＬサブバンド、および上記ＨＨサブバンドから、上記抽出された上記係数組に対して空間的に近傍に位置する符号化済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するモード判定参照係数抽出手段と、
上記抽出された上記モード判定参照係数組に含まれる上記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数を、上記多次元係数符号化手段および上記個別係数符号化手段の何れを用いて符号化するかを決定する符号化方法決定手段と
を有する。【００１８】
本発明の他の形態にかかるウェーブレット変換復号装置は、
ウェーブレット変換により得られた複数のサブバンドのウェーブレット変換係数を可変長符号化した符号列を入力とする復号装置であって、
上記符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号する係数復号手段を備え、
上記係数復号手段は、
上記組に含まれる上記複数のウェーブレット変換係数をまとめて復号する多次元係数復号手段と、
上記組に含まれる上記複数のウェーブレット変換係数を個別に復号する個別係数復号手段と、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、復号対象の上記組に対して空間的に近傍に位置する復号済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出するモード判定参照係数抽出手段と、
上記抽出された上記モード判定参照係数組に含まれる上記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、上記復号対象の上記組に含まれる上記複数の上記ウェーブレット変換係数を、上記多次元係数復号手段および上記個別係数復号手段の何れを用いて復号するかを決定する復号方法決定手段と
を有する。【００１９】
本発明の他の形態にかかるウェーブレット変換符号化方法は、
２次元信号を複数の周波数領域であるサブバンドに分解し、
上記サブバンドのウェーブレット変換係数を符号化し、
上記サブバンドのウェーブレット変換係数の符号化では、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、空間的に同一位置にある複数のウェーブレット変換係数の組を係数組として抽出し、
同一階層に属する上記ＬＨサブバンド、上記ＨＬサブバンド、および上記ＨＨサブバンドから、上記抽出された上記係数組に対して空間的に近傍に位置する符号化済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出し、
上記抽出された上記モード判定参照係数組に含まれる上記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数を、多次元係数符号化方法および個別係数符号化方法の何れを用いて符号化するかを決定し、
上記多次元係数符号化方法で符号化すると決定された場合に、上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数をまとめて符号化し、
上記個別係数符号化方法で符号化すると決定された場合に、上記抽出された上記係数組に含まれる上記複数の上記ウェーブレット変換係数を個別に符号化する。【００２０】
また本発明の他の形態にかかるウェーブレット変換復号方法は、
ウェーブレット変換により得られた複数のサブバンドのウェーブレット変換係数を可変長符号化した符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号し、
上記組毎のウェーブレット変換係数の復号では、
同一階層に属するＬＨサブバンド、ＨＬサブバンド、およびＨＨサブバンドから、復号対象の上記組に対して空間的に近傍に位置する復号済の複数のウェーブレット変換係数の組をモード判定参照係数組として抽出し、
上記抽出された上記モード判定参照係数組に含まれる上記複数のウェーブレット変換係数の絶対値の総和と予め定められた第１の閾値とを比較して、上記復号対象の上記組に含まれる上記複数の上記ウェーブレット変換係数を、多次元係数復号方法および個別係数復号方法の何れを用いて復号するかを決定し、
上記多次元係数復号方法で復号すると決定した場合に、上記組に含まれる上記複数のウェーブレット変換係数をまとめて復号し、
上記個別係数復号方法で復号すると決定した場合に、上記組に含まれる上記複数のウェーブレット変換係数を個別に復号する。
【発明の効果】
【００２１】
本発明は上述したような構成を有するため、空間的に同一位置にある複数のウェーブレット変換係数をまとめて符号化した方が望ましい２次元信号、逆に個別に符号化した方が望ましい２次元信号、或いはまとめて符号化した方が望ましい部分と個別に符号化した方が望ましい部分とが混在する２次元信号等、種々の２次元信号に対して圧縮率の良い符号化が可能になる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施形態にかかるウェーブレット変換符号化装置のブロック図である。
【図２】空間的に同一位置にあるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組と該組を符号化する際に抽出されるモード判定参照係数の説明図である。
【図３】ウェーブレット変換係数ＬＨを可変長符号化する際の符号化パラメータを求めるために参照する他の複数のウェーブレット変換係数の説明図である。
【図４】ウェーブレット変換係数ＨＬを可変長符号化する際の符号化パラメータを求めるために参照する他の複数のウェーブレット変換係数の説明図である。
【図５】ウェーブレット変換係数ＨＨを可変長符号化する際の符号化パラメータを求めるために参照する他の複数のウェーブレット変換係数の説明図である。
【図６】本発明の第１の実施形態にかかるウェーブレット変換符号化装置の動作を示すフローチャートである。
【図７】本発明の第１の実施形態にかかるウェーブレット変換符号化装置における多次元係数符号化処理の一例を示すフローチャートである。
【図８】本発明の第１の実施形態にかかるウェーブレット変換符号化装置における個別係数符号化処理の一例を示すフローチャートである。
【図９】本発明の第２の実施形態にかかるウェーブレット変換復号装置のブロック図である。
【図１０】本発明の第２の実施形態にかかるウェーブレット変換復号装置の動作を示すフローチャートである。
【図１１】本発明の第２の実施形態にかかるウェーブレット変換復号装置における多次元可変長復号の動作を示すフローチャートである。
【図１２】本発明の第２の実施形態にかかるウェーブレット変換復号装置における個別係数復号の動作を示すフローチャートである。
【図１３】本発明の第３の実施形態にかかるウェーブレット変換符号化装置のブロック図である。
【図１４】本発明の第３の実施形態にかかるウェーブレット変換符号化装置の動作を示すフローチャートである。
【図１５】本発明の第３の実施形態にかかるウェーブレット変換符号化装置における多次元係数符号化処理の一例を示すフローチャートである。
【図１６】本発明の第４の実施形態にかかるウェーブレット変換復号装置のブロック図である。
【図１７】本発明の第４の実施形態にかかるウェーブレット変換復号装置の動作を示すフローチャートである。
【図１８】本発明の第４の実施形態にかかるウェーブレット変換復号装置における多次元可変長復号の動作を示すフローチャートである。
【図１９】３階層のウェーブレット変換の説明図である。
【発明を実施するための形態】
【００２３】
次に本発明の実施の形態について図面を参照して詳細に説明する。
[第１の実施形態]
図１を参照すると、本発明の第１の実施の形態は、画像入力装置１１と、データ記憶装置１２と、プログラム制御により動作するデータ処理装置１３と、符号出力装置１４とから構成されている。
【００２４】
［構成の説明］
画像入力装置１１は、２次元信号としての画像を入力するための装置であり、例えばカメラや通信装置などで構成される。
【００２５】
データ記憶装置１２は、画像メモリ１２１と、水平分解係数メモリ１２２と、水平垂直分解係数メモリ１２３と、連長数メモリ１２４とを含む。
【００２６】
画像メモリ１２１は、画像入力装置１１から入力された画像を記憶する。
【００２７】
水平分解係数メモリ１２２は、画像メモリ１２１に記憶された入力画像に対して水平ウェーブレット分解を施すことにより得られた水平分解係数を記憶する。
【００２８】
水平垂直分解係数メモリ１２３は、水平分解係数メモリ１２２に記憶された水平分解係数に対して垂直ウェーブレット分解を施すことにより得られた水平垂直分解係数を記憶する。
【００２９】
データ処理装置１３は、ウェーブレット変換手段１３１と、係数符号化手段１３２とを備えている。
【００３０】
ウェーブレット変換手段１３１は、水平ウェーブレット分解手段１３１１と、垂直ウェーブレット分解手段１３１２とを備えている。
【００３１】
水平ウェーブレット分解手段１３１１は、整数型５−３フィルタや整数型９−７フィルタなどで構成される。水平ウェーブレット分解手段１３１１は、画像メモリ１２１に記憶された入力画像をラスタスキャン順に１行ずつ水平方向に読み出して処理することにより、水平分解係数を生成し、水平分解係数メモリ１２２に記憶する。水平分解係数メモリ１２２中に図示したＨは、高域側の水平分解係数を示し、Ｌは低域側の水平分解係数を示す。
【００３２】
垂直ウェーブレット分解手段１３１２は、水平ウェーブレット分解手段１３１１と同じく、整数型５−３フィルタや整数型９−７フィルタなどで構成される。垂直ウェーブレット分解手段１３１２は、水平分解係数メモリ１２２に記憶された水平分解係数を１行ずつ垂直方向に読み出して処理することにより、ＬＨ、ＨＬ、ＨＨ、ＬＬを生成し、水平垂直分解係数メモリ１２３に記憶する。
【００３３】
このように、水平ウェーブレット分解手段１３１１と垂直ウェーブレット分解手段１３１２とでウェーブレット変換手段１３１が構成されている。ここで、入力画像に対して全て水平ウェーブレット分解した後に、水平分解係数を水平分解係数メモリ１２２に一旦全て格納し、次に、水平分解係数メモリ１２２から水平分解係数を読み出して垂直ウェーブレット分解を行うようにしても良い。しかし、処理の高速化とメモリ容量の削減を図るために、水平ウェーブレット分解手段１３１１で幾つかの行の水平分解係数が求められ次第、垂直ウェーブレット分解手段１３１２の動作を開始させることによって、ウェーブレット変換係数ＬＬ、ＬＨ、ＨＬ、ＨＨを連続的に求めるようにしても良い。
【００３４】
また本実施の形態は１階層のウェーブレット変換を行っているが、本発明は２階層以上のウェーブレット変換を行う場合にも勿論適用可能である。そして、２階層以上のウェーブレット変換を行う場合に、各階層のウェーブレット変換係数を連続的に求めるようにしても良い。
【００３５】
本実施の形態は、１階層のウェーブレット変換を行うので、水平垂直分解係数メモリ１２３に記憶されたウェーブレット変換係数ＬＬは、図示しないＬＬ用の符号化手段を用いて例えばＬＺＷなどの符号化方式で符号化されて、符号出力装置１４に出力される。また、階層数２以上のウェーブレット変換を行う場合、水平垂直分解係数メモリ１２３に記憶されたウェーブレット変換係数ＬＬは、再帰的にウェーブレット分解される。そして、生成された高域サブバンドのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨは、係数符号化手段１３２を用いて、以下に説明する方法と同様の方法で符号化される。他方、最終的に残った最低域サブバンドのウェーブレット変換係数ＬＬは、図示しないＬＬ用の符号化手段を用いて例えばＬＺＷなどの符号化方式で符号化されて、符号出力装置１４へ出力される。
【００３６】
また本実施の形態では、ウェーブレット変換によって出力されるＬＨ，ＨＬ，ＨＨ係数をそのまま符号化する様態について述べるが、高域サブバンドの係数に対して量子化処理を行ってから符号化してもよい。これにより更に圧縮率を向上させることができる。
【００３７】
係数符号化手段１３２は、水平垂直分解係数メモリ１２３に記憶されたウェーブレット変換係数のうち、高域サブバンドに含まれるウェーブレット変換係数ＬＨ、ＨＬ、ＨＨを符号化する。この際、係数符号化手段１３２は、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組を係数組としてラスタスキャン順に抽出し、係数組毎に符号化を行う。
【００３８】
係数符号化手段１３２は、モード判定参照係数抽出手段１３２１と、連長モード判定手段１３２２と、連長符号化手段１３２３と、多次元符号化モード判定手段１３２４と、係数組抽出手段１３２５と、多次元係数符号化手段１３２６と、参照係数抽出手段１３２７と、個別係数符号化手段１３２８とから構成される。ここで、連長モード判定手段１３２２と多次元符号化モード判定手段１３２４とで符号化方法決定手段が構成される。
【００３９】
係数組抽出手段１３２５は、同一階層・同一空間座標のＬＨ，ＨＬ，ＨＨ係数を、符号化対象の係数組として、ラスタスキャン順に一組ずつ抽出する。
【００４０】
モード判定参照係数抽出手段１３２１は、符号化モードを判別するために参照するウェーブレット変換係数を抽出する。具体的には、次に符号化するウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組が図２の太い実線で囲まれた部分とする場合、図２においてハッチングを施した合計６個の以下のウェーブレット変換係数を参照係数として抽出する。なお、太い実線で囲んだ符号化対象となる係数組の座標値を（ｉ、ｊ）とする。但し、該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
（５）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（６）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
【００４１】
連長モード判定手段１３２２は、現在連長モードに入っているかを判定し、入っていれば、連長符号化手段１３２３による連長符号化処理を行う。連長モード判定手段１３２２は、現在連長モードに入っていなければ、モード判定参照係数抽出手段１３２１が抽出した参照係数の絶対値の総和Ｓを、あらかじめ定められた閾値Ａと比較する。そして、連長モード判定手段１３２２は、ＳがＡ未満のとき連長モードに入ると決定し、連長符号化手段１３２３による連長符号化処理を行う。また、連長モード判定手段１３２２は、ＳがＡ未満でなければ、多次元符号化モード判定手段１３２４によるモード判定を行う。
【００４２】
連長符号化手段１３２３は、連長モード下において、係数組抽出手段１３２５が抽出した係数組の全てが０の場合、連長数メモリ１２４に記憶されている連長数（初期値１）をインクリメントする。この連長数のインクリメントにより、今回抽出された係数組に対する処理を終える。他方、何れかのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨが非０になった場合、連長数符号化手段１３２３は、連長数メモリ１２４に記憶されている連長数を例えばガンマ符号で符号化し、符号出力装置１４へ出力し、連長モードを抜けて多次元符号化モード判定手段１３２４による処理を行う。
【００４３】
多次元符号化モード判定手段１３２４は、モード判定参照係数抽出手段１３２１が抽出した参照係数の絶対値の総和Ｓを、Ａよりも大きい値に設定された閾値Ｂと比較する。ＳがＢ未満のとき、多次元符号化モード判定手段１３２４は、多次元係数符号化手段１３２６による多次元可変長符号化処理を行う。ＳがＢ未満でなければ、多次元符号化モード判定手段１３２４は、個別係数符号化手段１３２８による個別係数可変長符号化処理を行う。
【００４４】
参照係数抽出手段１３２７は、ＬＨ，ＨＬ，ＨＨ係数を一つずつ符号化する際に、その符号化パラメータを求めるための参照係数を抽出する。
【００４５】
図３乃至図５におけるハッチングを施した係数が、太い実線で囲んだＬＨ，ＨＬ，ＨＨの各係数を符号化する際に参照係数抽出手段１３２７が抽出する参照係数を示している。参照係数抽出手段１３２７は、参照係数を符号化対象のウェーブレット変換係数が属するサブバンドから抽出するとともに、同一階層のそれ以外のサブバンドからも抽出する。具体例を以下に示す。
【００４６】
符号化対象となるウェーブレット変換係数ＬＨの座標値を（ｉ、ｊ）とすると、ＬＨ係数の符号化では、図３に示す以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
【００４７】
符号化対象となるウェーブレット変換係数ＨＬの座標値を（ｉ、ｊ）とすると、ＨＬ係数の符号化では、図４に示す以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
【００４８】
符号化対象となるウェーブレット変換係数ＨＨの座標値を（ｉ、ｊ）とすると、ＨＨ数の符号化では、図５に示す以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（３）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＨＬ
【００４９】
多次元係数符号化手段１３２６は、係数組抽出手段１３２５が抽出した係数組を、多次元可変長符号化する。多次元係数符号化手段１３２６は、多次元係数ベクトル符号化手段１３２６１と、多次元係数正負符号化手段１３２６２と、多次元係数振幅符号化手段１３２６３とを備えている。また多次元係数ベクトル符号化手段１３２６１は符号表切替手段１３２６１１を備え、多次元係数振幅符号化手段１３２６３は符号化パラメータ算出手段１３２６３１を備えている。
【００５０】
多次元係数ベクトル符号化手段１３２６１は、係数組抽出手段１３２５が抽出した係数組について、ＬＨ、ＨＬ、ＨＨ係数の絶対値をそれぞれ０，１，…，Ｎ−１以上、の合計Ｎクラス（Ｎ≧３）に分類し、ＬＨ、ＨＬ、ＨＨのクラス番号からなる３次元ベクトルを可変長符号表を用いて可変長符号化し、符号出力装置１４へ出力する。上記Ｎクラスは、絶対値がそれぞれ０、１、…、（Ｎ−２）であって隣接するクラス間の絶対値の差が１であるＮ−１個のクラスと、絶対値がＮ−１以上のクラスとから構成される。多次元係数ベクトル符号化手段１３２６１は、種類の異なる複数の可変長符号表を有する。符号表切替手段１３２６１１は、連長モードを抜けた直後の符号化であるか否かによって、複数の可変長符号表から一の可変長符号表を選択する。具体的には、連長モードを抜けた直後は全係数値がゼロとなるベクトルに対して可変長符号を割り当てていない可変長符号表（第２の可変長符号表）を選択し、それ以外は全係数値がゼロとなるベクトルに対して可変長符号を割り当てている可変長符号表（第１の可変長符号表）を選択する。多次元係数ベクトル符号化手段１３２６１は、符号表切替手段１３２６１１によって選択された可変長符号表を用いて可変長符号化を行う。
【００５１】
多次元係数正負符号化手段１３２６２は、多次元係数ベクトル符号化手段１３２６１の符号化後に、絶対値が非ゼロの係数について、正負の符号を、符号出力装置１４へ出力する。
【００５２】
多次元係数振幅符号化手段１３２６３は、多次元係数ベクトル符号化手段１３２６１の符号化後に、絶対値がＮ−１以上の係数値について、絶対値からＮ−１を減じた値を可変長符号化し、符号出力装置１４へ出力する。絶対値からＮ−１を減じることで、符号化すべき値が０に近い値となる。多次元係数振幅符号化手段１３２６３は、絶対値がＮ−１以上のウェーブレット変換係数が複数存在する場合、係数組内では、ＬＨ、ＨＬ、ＨＨの順に符号化を行う。可変長符号としては、０に近い値ほど符号長が短くなる符号、例えばゴロムライス（Golomb-Rice）符号を使用する。
【００５３】
ゴロムライス符号は、信号値を「単進符号」＋「ｋビットの固定長符号」として出力する。ｋは有効桁数の推定値を与える符号化パラメータである。ゴロムライス符号を用いて符号化する場合、符号化対象となる２進数を下位ｋビットと上位の残りビットとに分割し、上位の残りビットを単進符号に置き換える。たとえば、信号00010011（２値表現）をｋ＝３で符号化する場合、下位３ビットを除く上位５ビット(00010)が単進符号化された後、下位３ビットがそのまま出力される。単進符号として、ビット列で表現される数だけの"０"のビットに"１"のビットを付加した符号を用いる場合、上記の例では上位５ビットの数値が２であるため、２ビットの"０"が出力され、"１"で終端される。下位３ビットとあわせて最終的に"001011"が符号として出力される。ゴロムライス符号の復号は、符号化に使われたものと同じｋの値を用いて、復号対象となる２進数を下位ｋビットと上位の残りビットとに分割し、上位の残りビットを単進符号前の状態に戻す。たとえば、ｋ＝３として符号化された上述の例の符号"001011"の復号では、まず、単進符号"001"から２という数値が復号されて上位５ビット"00010"として出力され、さらに、後続する"011"が下位３ビットとして出力される。この結果、元の信号と完全に一致する信号00010011が得られる。このようにゴロムライス符号は可逆圧縮符号の一種である。
【００５４】
ゴロムライス符号は、符号化すべき信号値の有効桁とｋ値が一致する場合に、最も符号長が短くなる。上述の信号00010011の例では、有効桁は５桁なので、ｋ＝５の時、出力される符号が110011となって符号長が最短となる。符号化パラメータ算出手段１３２６３１は、このｋ値を求めるための手段である。
【００５５】
符号化パラメータ算出手段１３２６３１は、多次元係数振幅符号化手段１３２６３がゴロムライス符号化する係数について、参照係数抽出手段１３２７から参照係数を取得し、符号化パラメータｋを算出する。具体的には、符号化パラメータ算出手段１３２６３１は、多次元係数振幅符号化手段１３２６３がゴロムライス符号化する係数がＬＨである場合、図３に示す４個のウェーブレット変換係数の絶対値の総和に対して、所定値で除算、もしくは右シフトなどの操作を行って量子化し、符号化パラメータｋを算出する。また、符号化パラメータ算出手段１３２６３１は、多次元係数振幅符号化手段１３２６３がゴロムライス符号化する係数がＨＬ、ＨＨであれば、図４、図５に示す４個のウェーブレット変換係数の値に基づいて、ＬＨの場合と同様の方法で符号化パラメータｋを算出する。
【００５６】
個別係数符号化手段１３２８は、係数組抽出手段１３２５が抽出した係数組の、ＬＨ，ＨＬ，ＨＨ係数をそれぞれ個別に符号化する。個別係数符号化手段１３２８は、対象係数抽出手段１３２８１と、係数振幅符号化手段１３２８２と、係数正負符号化手段１３２８３とを備えている。また、係数振幅符号化手段１３２８２は、符号化パラメータ算出手段１３２８２１を有している。
【００５７】
対象係数抽出手段１３２８１は、係数組から所定の順番で符号化対象とする係数を抽出する。たとえば、図２において太線で囲んだ係数組に対して、その組から最初にＬＨを抽出し、次にＨＬを抽出し、最後にＨＨを抽出する。
【００５８】
係数振幅符号化手段１３２８２は、対象係数抽出手段１３２８１が抽出した係数ＬＨ、ＨＬ、ＨＨ毎に、その絶対値をゴロムライス符号化し、符号出力装置１４へ出力する。
【００５９】
符号化パラメータ算出手段１３２８２１は、係数振幅符号化手段１３２８２がゴロムライス符号化する係数ＬＨ、ＨＬ、ＨＨについて、参照係数抽出手段１３２７から参照係数を取得し、符号化パラメータｋを算出する。符号化パラメータ算出手段１３２８２１が符号化パラメータｋを算出する方法は、符号化パラメータ算出手段１３２６３１と同じである。
【００６０】
係数正負符号化手段１３２８３は、対象係数抽出手段１３２８１が抽出した係数ＬＨ、ＨＬ、ＨＨが非ゼロである場合に、その正負の符号を、符号出力装置１４へ出力する。
【００６１】
符号出力装置１４は、生成された符号を記憶する磁気ディスク装置などの記憶装置や、生成された符号を遠隔地に送信する通信装置などで構成される。
【００６２】
［動作の説明］
図１のブロック図、および図６のフローチャートを参照して、本実施の形態の全体の動作について詳細に説明する。
【００６３】
画像入力装置１１から画像メモリ１２１に画像が入力されると、水平ウェーブレット分解手段１３１１は、入力画像に対して水平ウェーブレット分解を行い、得られた水平分解係数Ｌ、Ｈを水平分解係数メモリ１２２に記憶する（Ｓ１０１）。続いて、垂直ウェーブレット分解手段１３１２は、水平分解係数メモリ１２２に記憶された水平分解係数に対して垂直ウェーブレット分解を行い、得られたウェーブレット変換係数ＬＬ、ＬＨ、ＨＬ、ＨＨを水平垂直分解係数メモリ１２３に記憶する（Ｓ１０２）。
【００６４】
次に、係数符号化手段１３２は、係数抽出座標を（０，０）に初期化する（Ｓ１０３）。また、連長数メモリ１２４に格納された連長数Ｌを０に初期化する（Ｓ１０４）。
【００６５】
次に、係数組抽出手段１３２５は、同一ウェーブレット階層の、係数抽出座標に位置するＬＨ，ＨＬ，ＨＨ係数を、符号化対象の係数組として抽出する（Ｓ１０５）。
【００６６】
次に、連長モード判定手段１３２２は、連長数メモリ１２４のＬの値を読み出し、０を超えているかどうかを判定する（Ｓ１０６）。超えていれば（Ｓ１０６のＹ）、現在連長モードに入っていると判定し、Ｓ１０９へ進む。超えていなければ（Ｓ１０６のＮ）、Ｓ１０７へ進む。
【００６７】
ステップＳ１０７では、モード判定参照係数抽出手段１３２１は、符号化モードを判別するために参照するウェーブレット変換係数を抽出する。次に、連長モード判定手段１３２２は、モード判定参照係数抽出手段１３２１が抽出した参照係数の絶対値の総和Ｓを求める（Ｓ１０８）。次に、連長モード判定手段１３２２は、ＳがＡ未満かを判定する（Ｓ１１２）。ＳがＡ未満であれば（Ｓ１１２のＹ）、連長モードに入り、Ｓ１１３へ進む。そうでなければ（Ｓ１１２のＮ）、Ｓ１１４へ進む。
【００６８】
ステップＳ１１３では、連長符号化手段１３２３は、連長数メモリ１２４の連長数Ｌに初期値として１を書き込み、Ｓ１０９へ進む。ステップＳ１０９では、連長符号化手段１３２３は、係数組抽出手段１３２５が抽出した係数組の全ての係数が０かどうかを判定する。全て０の場合（Ｓ１０９のＹ）、連長数符号化手段１３２３は連長数メモリ１２４の連長数Ｌをインクリメントする(Ｓ１１０)。そして、ステップＳ１１８に進む。他方、何れかのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨが非０の場合（Ｓ１０９のＮ）、連長数符号化手段１３２３は、連長数メモリ１２４の連長数Ｌをガンマ符号で符号化し、符号出力装置１４へ出力する（Ｓ１１１）。その後、連長モードを抜け、Ｓ１１４へ進む。なお、Ｓ１０６→Ｓ１０９→Ｓ１１１のパスをたどってＳ１１４へ進む場合、ステップＳ１０７、Ｓ１０８と同様の処理を実行してからＳ１１４へ移行する。
【００６９】
ステップＳ１１４では、多次元符号化モード判定手段１３２４は、モード判定参照係数抽出手段１３２１が抽出した参照係数の絶対値の総和Ｓを、Ａよりも大きい値に設定された閾値Ｂと比較する。ＳがＢ未満のとき（Ｓ１１４のＹ）、Ｓ１１５へ進み、多次元係数符号化手段１３２６による多次元符号化処理を行う。そうでなければ（Ｓ１１４のＮ）、Ｓ１１６へ進み、個別係数符号化手段１３２８による個別符号化処理を行う。いずれの処理についても符号化処理の結果を符号出力装置１４へ出力し、Ｓ１１７へ進む。
【００７０】
多次元可変長符号化処理または個別符号化処理が終了すると、係数符号化手段１３２は、連長数メモリ１２４の連長数Ｌを０にクリアする（Ｓ１１７）。次に、係数符号化手段１３２は、係数抽出座標をラスタスキャン順で次の座標にスキャンし（Ｓ１１８）、高域サブバンドの全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組の符号化を完了したか否かを判定する（Ｓ１１９）。完了していなければ（Ｓ１１９のＮ）、ステップＳ１０５の処理に戻り、高域サブバンドの各サブバンドで同一空間座標のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの次の組について、上記と同様の処理を繰り返す。全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組についての符号化処理を完了していれば（Ｓ１１９のＹ）、Ｓ１２０へ進む。
【００７１】
全空間座標の処理が完了してステップＳ１２０に進んだ場合、連長符号化手段１３２３は、連長数メモリ１２４の連長数Ｌが０を超えているかどうかを判定する。超えていなければ（Ｓ１２０のＮ）処理を終える。超えていれば（Ｓ１２０のＹ）、連長数符号化手段１３２３は連長数メモリ１２４の連長数Ｌをガンマ符号で符号化し、符号出力装置１４へ出力し（Ｓ１２１）、処理を終える。
【００７２】
次に、図１のブロック図、および図７のフローチャートを参照して、本実施の形態における多次元可変長符号化処理（図６のＳ１１５）の動作について詳細に説明する。
【００７３】
多次元係数ベクトル符号化手段１３２６１は、係数組抽出手段１３２５が抽出した係数組について、ＬＨ、ＨＬ、ＨＨ係数の絶対値をそれぞれ０，１，…,Ｎ−１以上，の計Ｎクラス（Ｎ≧３）に分類する(ＳＡ１０１)。さらに、ＬＨ、ＨＬ、ＨＨのクラス番号を結合し、３次元ベクトルを生成する（ＳＡ１０２）。
【００７４】
次に、符号表切替手段１３２６１１は、連長モードを抜けた直後の符号化であるか否かを、連長数メモリ１２４に格納されている連長数Ｌが０を超えているかによって判定する（ＳＡ１０３）。Ｌが０を超えていなければ（ＳＡ１０３のＮ）、連長モードを抜けた直後でないので、多次元係数ベクトル符号化手段１３２６１は、第１の符号化テーブルで３次元ベクトルを符号化する（ＳＡ１０４）。Ｌが０を超えていれば（ＳＡ１０３のＹ）、連長モードを抜けた直後なので、多次元係数ベクトル符号化手段１３２６１は、第２の符号化テーブルで３次元ベクトルを符号化し、符号出力装置１４へ出力する（ＳＡ１０５）。
【００７５】
次に、多次元係数振幅符号化手段１３２６３は、ＬＨの絶対値がＮ−１以上であるかどうかを判定する（ＳＡ１０６）。Ｎ−１以上でなければ（ＳＡ１０６のＮ）、ＳＡ１１１へ進む。Ｎ−１以上であれば（ＳＡ１０６のＹ）、ＳＡ１０７へ進む。
【００７６】
ステップＳＡ１０７では、参照係数抽出手段１３２７は、ＬＨ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段１３２６３１は、それらの絶対値を加算し総和を求め（ＳＡ１０８）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ１０９）。次に、多次元係数振幅符号化手段１３２６３は、符号化パラメータ算出手段１３２６３１が算出した符号化パラメータｋを用いて、ＬＨ係数の絶対値からＮ−１を減じた値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＡ１１０）。そして、ＳＡ１１１へ進む。
【００７７】
ステップＳＡ１１１では、多次元係数正負符号化手段１３２６２は、ＬＨ係数がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ１１１のＮ）、ＬＨ係数の正負の符号を符号出力装置１４へ出力して（ＳＡ１１２）、ＳＡ１１３へ進む。ゼロであれば（ＳＡ１１１のＹ）、ＳＡ１１２をスキップし、ＳＡ１１３へ進む。
【００７８】
次に、ステップＳＡ１１３では、多次元係数振幅符号化手段１３２６３は、ＨＬの絶対値がＮ−１以上であるかどうかを判定する。Ｎ−１以上でなければ（ＳＡ１１３のＮ）、ＳＡ１１８へ進む。Ｎ−１以上であれば（ＳＡ１１３のＹ）、ＳＡ１１４へ進む。
【００７９】
ステップＳＡ１１４では、参照係数抽出手段１３２７は、ＨＬ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段１３２６３１は、それらの絶対値を加算し総和を求め（ＳＡ１１５）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ１１６）。次に、多次元係数振幅符号化手段１３２６３は、符号化パラメータ算出手段１３２６３１が算出した符号化パラメータｋを用いて、ＨＬ係数の絶対値からＮ−１を減じた値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＡ１１７）。そして、ＳＡ１１８へ進む。
【００８０】
ステップＳＡ１１８では、多次元係数正負符号化手段１３２６２は、ＨＬ係数がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ１１８のＮ）、ＨＬ係数の正負の符号を符号出力装置１４へ出力して（ＳＡ１１９）、ＳＡ１２０へ進む。ゼロであれば（ＳＡ１１８のＹ）、ＳＡ１１９をスキップしてＳＡ１２０へ進む。
【００８１】
次に、ステップＳＡ１２０では、多次元係数振幅符号化手段１３２６３は、ＨＨの絶対値がＮ−１以上であるかどうかを判定する。Ｎ−１以上でなければ（ＳＡ１２０のＮ）、ＳＡ１２５へ進む。Ｎ−１以上であれば（ＳＡ１２０のＹ）、ＳＡ１２１へ進む。
【００８２】
ステップＳＡ１２１では、参照係数抽出手段１３２７は、ＨＨ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段１３２６３１は、それらの絶対値を加算し総和を求め（ＳＡ１２２）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ１２３）。次に、多次元係数振幅符号化手段１３２６３は、符号化パラメータ算出手段１３２６３１が算出した符号化パラメータｋを用いて、ＨＨ係数の絶対値からＮ−１を減じた値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＡ１２４）。そして、ＳＡ１２５へ進む。
【００８３】
ステップＳＡ１２５では、多次元係数正負符号化手段１３２６２は、ＨＨ係数がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ１２５のＮ）、ＨＨ係数の正負の符号を符号出力装置１４へ出力して（ＳＡ１２６）、多次元可変長符号化処理を終了する。ゼロであれば（ＳＡ１２５のＹ）、ＳＡ１２６をスキップして、多次元可変長符号化処理を終了する。
【００８４】
次に、図１のブロック図、および図８のフローチャートを参照して、本実施の形態の個別係数符号化処理（図６のＳ１１６）の動作について詳細に説明する。
【００８５】
対象係数抽出手段１３２８１は、係数組抽出手段１３２５が抽出した係数組から、ＬＨ係数を抽出する（ＳＢ１０１）。次に、参照係数抽出手段１３２７は、ＬＨ係数に対する参照係数を抽出する（ＳＢ１０２）。次に、符号化パラメータ算出手段１３２８２１は、それらの絶対値を加算し総和を求め（ＳＢ１０３）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ１０４）。次に、係数振幅符号化手段１３２８２は、符号化パラメータ算出手段１３２８２１が算出した符号化パラメータｋを用いて、ＬＨ係数の絶対値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＢ１０５）。
【００８６】
次に、係数正負符号化手段１３２８３は、ＬＨ係数がゼロであるかどうかを判定し（ＳＢ１０６）、ゼロでなければ（ＳＢ１０６のＮ）、ＬＨ係数の正負の符号を符号出力装置１４へ出力して（ＳＢ１０７）、ＳＢ１０８へ進む。ゼロであれば（ＳＢ１０６のＹ）、ＳＢ１０７をスキップしてＳＢ１０８へ進む。
【００８７】
ステップＳＢ１０８では、対象係数抽出手段１３２８１は、係数組抽出手段１３２５が抽出した係数組から、ＨＬ係数を抽出する。次に、参照係数抽出手段１３２７は、ＨＬ係数に対する参照係数を抽出する（ＳＢ１０９）。次に、符号化パラメータ算出手段１３２８２１は、それらの絶対値を加算し総和を求め（ＳＢ１１０）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ１１１）。次に、係数振幅符号化手段１３２８２は、符号化パラメータ算出手段１３２８２１が算出した符号化パラメータｋを用いて、ＨＬ係数の絶対値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＢ１１２）。
【００８８】
次に、係数正負符号化手段１３２８３は、ＨＬ係数がゼロであるかどうかを判定し（ＳＢ１１３）、ゼロでなければ（ＳＢ１１３のＮ）、ＨＬ係数の正負の符号を符号出力装置１４へ出力して（ＳＢ１１４）、ＳＢ１１５へ進む。ゼロであれば（ＳＢ１１３のＹ）、ＳＢ１１４をスキップしてＳＢ１１５へ進む。
【００８９】
ステップＳＢ１１５では、対象係数抽出手段１３２８１は、係数組抽出手段１３２５が抽出した係数組から、ＨＨ係数を抽出する。次に、参照係数抽出手段１３２７は、ＨＨ係数に対する参照係数を抽出する（ＳＢ１１６）。次に、符号化パラメータ算出手段１３２８２１は、それらの絶対値を加算し総和を求め（ＳＢ１１７）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ１１８）。
【００９０】
次に、係数振幅符号化手段１３２８２は、符号化パラメータ算出手段１３２８２１が算出した符号化パラメータｋを用いて、ＨＨ係数の絶対値をゴロムライス符号化し、符号出力装置１４へ出力する（ＳＢ１１９）。次に、係数正負符号化手段１３２８３は、ＨＨ係数がゼロであるかどうかを判定し（ＳＢ１２０）、ゼロでなければ（ＳＢ１２０のＮ）、ＨＨ係数の正負の符号を符号出力装置１４へ出力して（ＳＢ１２１）、個別係数符号化処理を終了する。ゼロであれば（ＳＢ１２０のＹ）、ＳＢ１２１をスキップして個別係数符号化処理を終了する。
【００９１】
次に本実施形態の効果を説明する。
【００９２】
本実施形態によれば、空間的に同一位置にある複数のウェーブレット変換係数をまとめて符号化した方が望ましい２次元信号、逆に個別に符号化した方が望ましい２次元信号、或いはまとめて符号化した方が望ましい部分と個別に符号化した方が望ましい部分とが混在する２次元信号等、種々の２次元信号に対して圧縮率の良い符号化が可能である。その理由は、空間的に同一位置にある複数のウェーブレット変換係数の組毎に、それら複数のウェーブレット変換係数をまとめて符号化するか、個別に符号化するかを、符号化対象とする係数組に対して空間的に近傍に位置する、従って符号化対象とする係数組と相関のある複数のウェーブレット変換係数の絶対値の総和に基づいて、決定するためである。
【００９３】
また本実施形態では、Ｓが閾値Ａ未満となる場合、注目係数組が全てゼロ値をとる可能性が高いと予想し、連長モードに入る。多次元可変長符号モードにおいては、係数組あたり１ビット以上の符号が出力されるが、連長モードでは全てゼロ値を持つ係数組を複数まとめて符号化することができるため、係数組あたりの符号量を１ビット未満とすることが可能となる。これにより更に圧縮率の向上が達成できる。また、いったん連長モードに入ると、全てゼロ値の係数組が続く限り、その係数組を処理する際の周辺ＬＨ、ＨＬ、ＨＨ係数の参照が不要となる。これにより高速な符号化・復号処理が達成できる。
【００９４】
また本実施形態では、ベクトル用の可変長符号表を２通り備え、連長モードを抜けた直後か否かによって、使用する可変長符号表を切り替える。連長モードを抜けた直後は、一度連長判定が行われ、かつ、連長が成立しなかった場合であるから、ＬＨ、ＨＬ、ＨＨ係数が全てゼロになることはない。こうした条件下では、全係数値がゼロとなるベクトルに対しては可変長符号を割り当てない可変長符号表に切り替えることによって、平均符号長を短くすることができ、圧縮効率が向上する。
【００９５】
また上記説明ではＮの値については３以上としたが、Ｎを大きくするほど大きなサイズの可変長符号表が必要となる。多くの画像では、可変長符号表のサイズおよび圧縮率の面で、Ｎ＝３が有効である。また多くの画像では、閾値Ａは３、閾値Ｂは６に設定すると最も良好な圧縮率が達成できる。
【００９６】
なお連長モードは、ＬＨ、ＨＬ、ＨＨ係数が全てゼロになるようなケースが多発する条件でのみ効果を発揮する。したがって、低圧縮率を指向し、係数に対して量子化をあまり行わないような場合、すなわち連長モードに入る確率が低いことが想定される場合には、連長モードの処理を省略した形態としてもよい。
【００９７】
[第２の実施形態]
次に、本発明の第２の実施の形態について図面を参照して説明する。
【００９８】
本実施の形態は、第１の実施形態で符号化されたデータの復号装置に相当する。図９を参照すると、本発明の第２の実施形態は、画像出力装置２１と、データ記憶装置２２と、プログラム制御により動作するデータ処理装置２３と、符号入力装置２４とから構成されている。
【００９９】
［構成の説明］
符号入力装置２４は、復号対象となる符号を入力する装置であり、例えば磁気ディスク装置や通信装置などで構成される。
【０１００】
データ記憶装置２２は、画像メモリ２２１と、水平分解係数メモリ２２２と、水平垂直分解係数メモリ２２３と、連長数メモリ２２４とを含む。
【０１０１】
水平垂直分解係数メモリ２２３は、データ処理装置２３により復号された高域サブバンドのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨと、最低域サブバンドのウェーブレット変換係数ＬＬとを格納する。
【０１０２】
水平分解係数メモリ２２２は、データ処理装置２３により復号された水平分解係数を格納する。
【０１０３】
画像メモリ２２１は、データ処理装置２３により復号された画像を格納する。
【０１０４】
データ処理装置２３は、逆ウェーブレット変換手段２３１と、係数復号手段２３２とを備えている。
【０１０５】
係数復号手段２３２は、符号入力装置２４から入力した符号列から、同一階層に属する複数の高域サブバンド内の空間的に同一位置にある複数のウェーブレット変換係数の組毎にウェーブレット変換係数を復号し、水平垂直分解係数メモリ２２３に格納する。
【０１０６】
係数復号手段２３２は、モード判定参照係数抽出手段２３２１と、連長モード判定手段２３２２と、連長復号手段２３２３と、多次元符号化モード判定手段２３２４と、係数出力手段２３２５と、多次元係数復号手段２３２６と、参照係数抽出手段２３２７と、個別係数復号手段２３２８とから構成される。ここで、連長モード判定手段２３２２と多次元符号化モード判定手段２３２４とで、復号方法決定手段が構成される。
【０１０７】
モード判定参照係数抽出手段２３２１は、復号モードを判別するために参照するウェーブレット変換係数を抽出する。参照するウェーブレット変換係数は、符号化時と同じである。具体的には、次に復号するウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組が図２の太い実線で囲まれた部分とする場合、図２においてハッチングを施した合計６個の以下のウェーブレット変換係数を参照係数として抽出する。なお、太い実線で囲んだ復号対象となる係数組の座標値を（ｉ、ｊ）とする。但し、該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
（５）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（６）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
【０１０８】
連長モード判定手段２３２２は、現在連長モードに入っているかを判定し、入っていれば、連長復号手段２３２３による連長復号処理を行う。入っていなければ、モード判定参照係数抽出手段２３２１が抽出した参照係数の絶対値の総和Ｓを求め、あらかじめ定められた閾値Ａと比較する。ＳがＡ未満のとき連長モードに入り、連長復号手段２３２３による連長復号処理を行う。ＳがＡ未満でなければ、多次元符号化モード判定手段２３２４によるモード判定を行う。
【０１０９】
連長復号手段２３２３は、符号入力装置２４からガンマ符号の符号データを読み出して連長数Ｌを復号し、連長数メモリ２２４へ出力する。また、連長復号手段２３２３は、連長数メモリ２２４に記憶されている連長数Ｌが１より大きい場合、連長数Ｌをデクリメントして連長数メモリ２２４に書き戻し、復号対象係数組のＬＨ、ＨＬ、ＨＨ係数の値を全て０とする。連長復号手段２３２３は、連長数Ｌが１以下となった場合には連長数メモリ２２４を０で初期化して連長モードを抜ける。
【０１１０】
多次元符号化モード判定手段２３２４は、モード判定参照係数抽出手段２３２１が抽出した参照係数の絶対値の総和Ｓを求め、Ａよりも大きい値に設定された閾値Ｂと比較する。ＳがＢ未満のとき、多次元係数復号手段２３２６による多次元可変長復号処理を行う。他方、ＳがＢ未満でなければ、個別係数復号手段２３２８による個別係数復号処理を行う。
【０１１１】
参照係数抽出手段２３２７は、多次元係数復号手段２３２６および個別係数復号手段２３２８においてＬＨ，ＨＬ，ＨＨ係数を一つずつ復号する際に使用する符号化パラメータを求めるための参照係数を抽出する。図３乃至図５におけるハッチングを施した係数が、図３乃至図５における太い線で囲んだＬＨ，ＨＬ，ＨＨの各係数を復号する際に参照係数抽出手段２３２７が抽出する参照係数を示している。参照係数抽出手段２３２７は、参照係数を復号対象のウェーブレット変換係数が属するサブバンドから抽出するとともに、同一階層のそれ以外のサブバンドからも抽出する。参照するウェーブレット変換係数は、符号化時と同じである。
【０１１２】
具体的には、復号対象となるウェーブレット変換係数ＬＨの座標値を（ｉ、ｊ）とすると、ＬＨ係数の復号では、図３に示す以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＬＨ
（２）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＬＨ
【０１１３】
また、復号対象となるウェーブレット変換係数ＨＬの座標値を（ｉ、ｊ）とすると、ＨＬ係数の復号では、図４に示す以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＬ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＬ
（３）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
【０１１４】
また、復号対象となるウェーブレット変換係数ＨＨの座標値を（ｉ、ｊ）とすると、ＨＨ数の復号では、以下の４個のウェーブレット変換係数を参照する。該当する座標値が存在しないウェーブレット変換係数については、所定値（例えば０）を用いる。
（１）座標値（ｉ、ｊ−１）のウェーブレット変換係数ＨＨ
（２）座標値（ｉ−１、ｊ）のウェーブレット変換係数ＨＨ
（３）座標値（ｉ、ｊ）のウェーブレット変換係数ＬＨ
（４）座標値（ｉ、ｊ）のウェーブレット変換係数ＨＬ
【０１１５】
多次元係数復号手段２３２６は、復号対象の係数組に含まれる複数のウェーブレット変換係数をまとめて復号する（多次元可変長復号する）。多次元係数復号手段２３２６は、多次元係数ベクトル復号手段２３２６１と、多次元係数正負復号手段２３２６２と、多次元係数振幅復号手段２３２６３とを備えている。また多次元係数ベクトル復号手段２３２６１は符号表切替手段２３２６１１を備え、多次元係数振幅復号手段２３２６３は符号化パラメータ算出手段２３２６３１を備えている。
【０１１６】
多次元係数ベクトル復号手段２３２６１は、復号対象の係数組について、ＬＨ、ＨＬ、ＨＨ係数の絶対値をそれぞれ０，１，…，Ｎ−１以上，の計Ｎクラス（Ｎ≧３）に分類し、ＬＨ、ＨＬ、ＨＨのクラス番号からなる３次元ベクトルを可変長符号表を用いて可変長復号する。上記Ｎクラスは、絶対値がそれぞれ０、１、…、（Ｎ−２）であって隣接するクラス間の絶対値の差が１であるＮ−１個のクラスと、絶対値がＮ−１以上のクラスとから構成される。
【０１１７】
符号表切替手段２３２６１１は、連長モードを抜けた直後の復号であるか否かによって、多次元係数ベクトル符号化手段２３２６１が参照する可変長符号表を切り替える。
【０１１８】
多次元係数正負復号手段２３２６２は、多次元係数ベクトル復号手段２３２６１の復号後に、絶対値が非ゼロの係数について、正負の符号を、符号入力装置２４から入力した符号から復号する。
【０１１９】
多次元係数振幅復号手段２３２６３は、多次元係数ベクトル復号手段２３２６１の復号後に、絶対値がＮ−１以上の係数値について、絶対値からＮ−１を減じた値を符号入力装置１４から入力した符号からゴロムライス復号する。多次元係数振幅復号手段２３２６３は、絶対値がＮ−１以上の複数のウェーブレット変換係数を復号する場合、組内では、ＬＨ、ＨＬ、ＨＨの順に復号を行う。また多次元係数振幅復号手段２３２６３は、復号した値にＮ−１を加算する。
【０１２０】
符号化パラメータ算出手段２３２６３１は、多次元係数振幅復号手段２３２６３がゴロムライス復号する係数について、参照係数抽出手段２３２７から参照係数を取得し、符号化パラメータｋを算出する。具体的には、参照係数の絶対値の総和に対して、所定値で除算、もしくは右シフトなどの操作を行って量子化し、符号化パラメータｋを算出する。
【０１２１】
個別係数復号手段２３２８は、復号対象の係数組のＬＨ，ＨＬ，ＨＨ係数をそれぞれ個別に復号する。個別係数復号手段２３２８は、対象係数抽出手段２３２８１と、係数振幅復号手段２３２８２と、係数正負復号手段２３２８３とを備えている。また、係数振幅復号手段２３２８２は、符号化パラメータ算出手段２３２８２１を有する。
【０１２２】
対象係数抽出手段２３２８１は、係数組から符号化時と同じ順番で復号対象とする係数を選択する。たとえば、図２の太線で囲んだ係数組を復号対象とする場合、その組から最初にＬＨを復号する係数として選択し、次にＨＬを選択し、最後にＨＨを選択する。
【０１２３】
符号化パラメータ算出手段２３２８２１は、係数振幅復号手段２３２８２がゴロムライス復号する係数ＬＨ、ＨＬ、ＨＨについて、参照係数抽出手段２３２７から参照係数を取得し、符号化パラメータｋを算出する。符号化パラメータ算出手段２３２８２１が符号化パラメータｋを算出する方法は、符号化パラメータ算出手段２３２６３１と同じである。
【０１２４】
係数振幅復号手段２３２８２は、符号化パラメータ算出手段２３２８２１が算出した符号化パラメータｋを用いて、対象係数抽出手段２３２８１が選択した係数の絶対値を、符号入力装置１４から入力した符号からゴロムライス復号する。
【０１２５】
係数正負復号手段２３２８３は、係数振幅復号手段２３２８２が復号した係数が非ゼロである場合に、その正負の符号を、符号出力装置２４から入力した符号から復号する。
【０１２６】
係数出力手段２３２５は、係数復号手段２３２が復号した係数値（すなわち、連長復号手段２３２３、多次元係数復号手段２３２６、および個別係数復号手段２３２８が復号した係数値）を、水平垂直分解係数メモリ２２３へ出力する。
【０１２７】
符号入力装置２４から入力された符号から最低域サブバンドのウェーブレット変換係数ＬＬを生成する復号手段は図示を省略している。最低域サブバンドのウェーブレット変換係数ＬＬも、水平垂直分解係数メモリ２２３に記憶される。
【０１２８】
逆ウェーブレット変換手段２３１は、水平ウェーブレット合成手段２３１１と、垂直ウェーブレット合成手段２３１２とを備えている。
【０１２９】
垂直ウェーブレット合成手段２３１２は、水平垂直分解係数メモリ２２３に記憶されたウェーブレット変換係数ＬＬ、ＬＨ、ＨＬ、ＨＨを１行ずつ垂直方向に読み出して垂直ウェーブレット合成を施し、得られた係数Ｌ、Ｈを水平分解係数メモリ２２２に記憶する。
【０１３０】
水平ウェーブレット合成手段２３１１は、水平分解係数メモリ２２２に記憶された水平分解係数Ｌ、Ｈを１行ずつ水平方向に読み出して水平ウェーブレット合成を施し、得られた画素データを画像メモリ２２１に記憶する。
【０１３１】
画像出力装置２１は、例えばディスプレイ装置で構成され、画像メモリ２２１に記憶された画素データを読み出し、出力する。
【０１３２】
［動作の説明］
図９のブロック図、および図１０のフローチャートを参照して、本実施形態の全体の動作について詳細に説明する。
【０１３３】
まず係数復号手段２３２は、復号対象の係数組の選択座標を（０，０）に初期化する（Ｓ２０１）。また、連長数メモリ２２４の連長数Ｌを０に初期化する（Ｓ２０２）。
【０１３４】
次に、係数復号手段２３２は、同一階層に属する複数の高域サブバンド内の、空間的に同一位置にある複数のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組を、復号対象の係数組として選択する（Ｓ２０３）。
【０１３５】
次に、モード判定参照係数抽出手段２３２１は、符号化モードを判別するために参照するウェーブレット変換係数を抽出する（Ｓ２０４）。
【０１３６】
次に、連長モード判定手段２３２２は、上記抽出されたモード判定用参照係数の絶対値の総和Ｓを算出する（Ｓ２０５）。そして、連長モード判定手段２３２２は、現在連長モードに入っておらず（すなわちＬ＝０）、また、上記モード判定参照係数の絶対値の総和Ｓが、あらかじめ定められた閾値Ａより小さいかを判定する（Ｓ２０６）。もし連長モードに入っておらず、然もＳがＡ未満であれば（Ｓ２０６のＹ）、連長復号手段２３２３は符号入力装置２４からガンマ符号の符号データを読み出して連長数Ｌを復号して連長モードに入り、連長数Ｌを連長数メモリ２２４へ出力する（Ｓ２０７）。そして、ステップＳ２０８へ進む。そうでなければ（Ｓ２０６のＮ）、ステップＳ２０７をスキップしてＳ２０８へ進む。
【０１３７】
ステップＳ２０８では、連長復号手段２３２３は、連長数メモリ２２４に記憶されている連長数Ｌが１より大きいかどうかを判定する（Ｓ２０８）。もしＬが１より大きければ（Ｓ２０８のＹ）、連長数Ｌをデクリメントして連長数メモリ１２４に書き戻した上で（Ｓ２０９）、復号対象係数組のＬＨ、ＨＬ、ＨＨ係数の値を全て０として、係数出力手段２３２５を介して水平垂直分解係数メモリ２２３へ出力する（Ｓ２１０）。そして、ステップＳ２１５へ進む。もし連長数Ｌが１以下であれば(Ｓ２０８のＮ)、ステップＳ２１１へ進む。
【０１３８】
ステップＳ２１１では、多次元符号化モード判定手段２３２４は、モード判定参照係数抽出手段２３２１が抽出した参照係数の絶対値の総和Ｓを、Ａよりも大きい値に設定された閾値Ｂと比較する。ＳがＢ未満であれば(Ｓ２１１のＹ)、多次元係数復号手段２３２６による多次元復号処理を行う（Ｓ２１２）。そうでなければ（Ｓ２１１のＮ）、Ｓ２１３へ進み、個別係数復号手段２３２８による個別復号処理を行う。いずれの場合も、係数出力手段２３２５は、復号した係数値を水平垂直分解係数メモリ２２３へ出力する。
【０１３９】
多次元可変長復号処理または個別復号処理が終了すると、係数復号手段２３２は、連長数メモリ２２４の連長数Ｌを０にクリアする（Ｓ２１４）。そして、ステップＳ２１５へ進む。
【０１４０】
ステップＳ２１５では、係数復号手段２３２は、係数選択座標をラスタスキャン順で次の座標にスキャンし（Ｓ２１５）、高域サブバンドの全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組の復号を完了したか否かを判定する（Ｓ２１６）。完了していなければ（Ｓ２１６のＮ）、ステップＳ２０３の処理に戻り、高域サブバンドの各サブバンドで同一空間座標のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの次の組について、上記と同様の処理を繰り返す。全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組についての復号処理を完了していれば（Ｓ２１６のＹ）、Ｓ２１７へ進む。
【０１４１】
ステップＳ２１７では、垂直ウェーブレット合成手段２３１２は、水平垂直分解係数メモリ２２３に記憶されたウェーブレット変換係数ＬＬ、ＬＨ、ＨＬ、ＨＨを１行ずつ垂直方向に読み出して垂直ウェーブレット合成を施し、得られた係数Ｌ、Ｈを水平分解係数メモリ２２２に記憶する。
【０１４２】
次に、水平ウェーブレット合成手段２３１１は、水平分解係数メモリ２２２に記憶された水平分解係数Ｌ、Ｈを１行ずつ水平方向に読み出して水平ウェーブレット合成を施し、得られた画素データを画像メモリ２２１へ出力する。これにより、画像出力装置２１へ出力される画像データを生成する（Ｓ２１８）。
【０１４３】
次に、図９のブロック図、および図１１のフローチャートを参照して、本実施の形態の多次元可変長復号処理（図１０のＳ２１２）の動作について詳細に説明する。
【０１４４】
まず、符号表切替手段２３２６１１は、連長モードを抜けた直後の復号であるか否かを、連長数メモリ１２４に格納されている連長数Ｌが０を超えているかによって判定する（ＳＡ２０１）。Ｌが０を超えていなければ（ＳＡ２０１のＮ）、連長モードを抜けた直後でないので、多次元係数ベクトル復号手段２３２６１は、第１の符号化テーブルを使用して３次元ベクトルを復号する（ＳＡ２０２）。Ｌが０を超えていれば（ＳＡ２０１のＹ）、連長モードを抜けた直後であるので、Ｌ多次元係数ベクトル符号化手段２３２６１は、第２の符号化テーブルを使用して３次元ベクトルを復号する（ＳＡ２０３）。
【０１４５】
多次元係数ベクトル復号手段２３２６１は、復号された３次元ベクトルを分解し、ＬＨ、ＨＬ、ＨＨ係数の絶対値のクラス番号を取得する（ＳＡ２０４）。
【０１４６】
次に、多次元係数振幅復号手段２３２６３は、ＬＨのクラス番号がＮ−１であるかどうかを判定する（ＳＡ２０５）。Ｎ−１でなければ（ＳＡ２０５のＮ）、ＬＨのクラス番号をＬＨの絶対値として認識し、ＳＡ２１０へ進む。Ｎ−１であれば（ＳＡ２０５のＹ）、ＳＡ２０６へ進む。
【０１４７】
ステップＳＡ２０６では、参照係数抽出手段２３２７は、ＬＨ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段２３２６３１は、それらの絶対値を加算して総和を求め（ＳＡ２０７）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ２０８）。次に、多次元係数振幅復号手段２３２６３は、符号化パラメータ算出手段２３２６３１が算出した符号化パラメータｋを用いて、ＬＨ係数の絶対値からＮ−１を減じた値を、符号入力装置２４から入力した符号からゴロムライス復号する（ＳＡ２０９）。また多次元係数振幅復号手段２３２６３は、同ステップＳＡ２０９において、復号した値にＮ−１を加えてＬＨ係数の絶対値を得る。そして、ステップＳＡ２１０へ進む。
【０１４８】
ステップＳＡ２１０では、多次元係数正負復号手段２３２６２は、ＬＨ係数の絶対値がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ２１０のＮ）、ＬＨ係数の正負の符号を符号入力装置２４から入力して復号し（ＳＡ２１１）、ＳＡ２１２へ進む。ゼロであれば（ＳＡ２１０のＹ）、ＳＡ２１１をスキップしてＳＡ２１２へ進む。
【０１４９】
ステップＳＡ２１２では、係数出力手段２３２５は、係数復号手段２３２が復号したＬＨ係数値を水平垂直分解係数メモリ２２３へ出力する。
【０１５０】
次に、多次元係数振幅復号手段２３２６３は、ＨＬのクラス番号がＮ−１であるかどうかを判定する（ＳＡ２１３）。Ｎ−１でなければ（ＳＡ２１３のＮ）、ＨＬのクラス番号をＨＬの絶対値として認識してＳＡ２１８へ進む。Ｎ−１であれば（ＳＡ２１３のＹ）、ＳＡ２１４へ進む。
【０１５１】
ステップＳＡ２１４では、参照係数抽出手段２３２７は、ＨＬ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段２３２６３１は、それらの絶対値を加算して総和を求め（ＳＡ２１５）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ２１６）。次に、多次元係数振幅復号手段２３２６３は、符号化パラメータ算出手段２３２６３１が算出した符号化パラメータｋを用いて、ＨＬ係数の絶対値からＮ−１を減じた値を、符号入力装置２４から入力した符号からゴロムライス復号する（ＳＡ２１７）。また多次元係数振幅復号手段２３２６３は、同ステップＳＡ２１７において、復号した値にＮ−１を加えてＨＬ係数の絶対値を得る。そして、ステップＳＡ２１８へ進む。
【０１５２】
ステップＳＡ２１８では、多次元係数正負復号手段２３２６２は、ＨＬ係数の絶対値がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ２１８のＮ）、ＨＬ係数の正負の符号を符号入力装置２４から入力した符号から復号して（ＳＡ２１９）、ＳＡ２２０へ進む。ゼロであれば（ＳＡ２１８のＹ）、ＳＡ２２０をスキップしてＳＡ２２０へ進む。
【０１５３】
ステップＳＡ２２０では、係数組出力手段２３２５は、係数復号手段２３２が復号したＨＬ係数値を水平垂直分解係数メモリ２２３へ出力する。
【０１５４】
次に、多次元係数振幅復号手段２３２６３は、ＨＨのクラス番号がＮ−１であるかどうかを判定する（ＳＡ２２１）。Ｎ−１でなければ（ＳＡ２２１のＮ）、ＨＨのクラス番号をＨＨの絶対値として認識して、ＳＡ２２６へ進む。Ｎ−１であれば（ＳＡ２２１のＹ）、ＳＡ２２２へ進む。
【０１５５】
ステップＳＡ２２２では、参照係数抽出手段２３２７は、ＨＨ係数に対する参照係数を抽出する。次に、符号化パラメータ算出手段２３２６３１は、それらの絶対値を加算して総和を求め（ＳＡ２２３）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＡ２２４）。次に、多次元係数振幅復号手段２３２６３は、符号化パラメータ算出手段２３２６３１が算出した符号化パラメータｋを用いて、ＨＨ係数の絶対値からＮ−１を減じた値を、符号入力装置２４からゴロムライス復号する（ＳＡ２２５）。また多次元係数振幅復号手段２３２６３は、同ステップＳＡ２２５において、復号した値にＮ−１を加えてＨＬ係数の絶対値を得る。そして、ステップＳＡ２２６へ進む。
【０１５６】
ステップＳＡ２２６では、多次元係数正負復号手段２３２６２は、ＨＨ係数の絶対値がゼロであるかどうかを判定する。ゼロでなければ（ＳＡ２２６のＮ）、ＨＨ係数の正負の符号を符号入力装置２４から復号して（ＳＡ２２７）、ＳＡ２２８へ進む。ゼロであれば（ＳＡ２２６のＹ）、ＳＡ２２７をスキップして、ＳＡ２２８へ進む。
【０１５７】
ステップＳＡ２２８では、係数組出力手段２３２５は、係数復号手段２３２が復号したＨＨ係数値を水平垂直分解係数メモリ２２３へ出力する。そして、多次元可変長復号処理を終了する。
【０１５８】
次に、図９のブロック図、および図１２のフローチャートを参照して、本実施形態の個別係数復号処理（図１０のＳ２１３）の動作について詳細に説明する。
【０１５９】
まず、対象係数抽出手段２３２８１は、係数復号手段２３２が今回復号対象とする係数組から、ＬＨ係数を抽出する（ＳＢ２０１）。次に、参照係数抽出手段２３２７は、ＬＨ係数に対する参照係数を抽出する（ＳＢ２０２）。次に、符号化パラメータ算出手段２３２８２１は、それらの絶対値を加算して総和を求め（ＳＢ２０３）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ２０４）。次に、係数振幅復号手段２３２８２は、符号化パラメータ算出手段２３２８２１が算出した符号化パラメータｋを用いて、符号入力装置２４から入力した符号からＬＨ係数の絶対値をゴロムライス復号する（ＳＢ２０５）。
【０１６０】
次に、係数正負復号手段２３２８３は、ＬＨ係数の絶対値がゼロであるかどうかを判定し（ＳＢ２０６）、ゼロでなければ（ＳＢ２０６のＮ）、ＬＨ係数の正負の符号を符号入力装置２４から復号して（ＳＢ２０７）、ＳＢ２０８へ進む。ゼロであれば（ＳＢ２０６のＹ）、ＳＢ２０７をスキップしてＳＢ２０８へ進む。
【０１６１】
ステップＳＢ２０８では、対象係数抽出手段２３２８１は、係数復号手段２３２が今回復号対象とする係数組から、ＨＬ係数を抽出する。次に、参照係数抽出手段２３２７は、ＨＬ係数に対する参照係数を抽出する（ＳＢ２０９）。次に、符号化パラメータ算出手段２３２８２１は、それらの絶対値を加算し総和を求め（ＳＢ２１０）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ２１１）。次に、係数振幅復号手段２３２８２は、符号化パラメータ算出手段２３２８２１が算出した符号化パラメータｋを用いて、符号入力装置２４から入力した符号からＨＬ係数の絶対値をゴロムライス復号する（ＳＢ２１２）。
【０１６２】
次に、係数正負復号手段２３２８３は、ＨＬ係数の絶対値がゼロであるかどうかを判定し（ＳＢ２１３）、ゼロでなければ（ＳＢ２１３のＮ）、ＨＬ係数の正負の符号を符号入力装置２４から復号して（ＳＢ２１４）、ＳＢ２１５へ進む。ゼロであれば（ＳＢ２１３のＹ）、ＳＢ２１４をスキップしてＳＢ２１５へ進む。
【０１６３】
ステップＳＢ２１５では、対象係数抽出手段２３２８１は、係数復号手段２３２が今回復号対象とする係数組から、ＨＨ係数を抽出する（ＳＢ２１５）。次に、参照係数抽出手段２３２７は、ＨＨ係数に対する参照係数を抽出する（ＳＢ２１６）。次に、符号化パラメータ算出手段２３２８２１は、それらの絶対値を加算し総和を求め（ＳＢ２１７）、得られた総和を量子化して符号化パラメータｋを算出する（ＳＢ２１８）。次に、係数振幅復号手段２３２８２は、符号化パラメータ算出手段２３２８２１が算出した符号化パラメータｋを用いて、符号入力装置２４から入力した符号からＨＨ係数の絶対値をゴロムライス復号する（ＳＢ２１９）。
【０１６４】
次に、係数正負復号手段２３２８３は、ＨＨ係数の絶対値がゼロであるかどうかを判定し（ＳＢ２２０）、ゼロでなければ（ＳＢ２２０のＮ）、ＨＨ係数の正負の符号を符号入力装置２４から復号して（ＳＢ２２１）、個別係数復号処理を終了する。ゼロであれば（ＳＢ２２０のＹ）、ＳＢ２２１をスキップし、個別係数復号処理を終了する。
【０１６５】
本実施の形態によれば、第１の実施形態で符号化されたデータを適切に復号することが可能である。
【０１６６】
[第３の実施形態]
本実施の形態は、第１の実施形態にかかるウェーブレット変換符号化装置から連長モードの処理に関連する機能を省略したウェーブレット変換符号化装置に相当する。以下、第１の実施形態との相違点を中心に説明する。
【０１６７】
［構成の説明］
図１３は本実施形態にかかるウェーブレット変換符号化装置のブロック図である。図１３を参照すると、データ記憶装置１２は、画像メモリ１２１と、水平分解係数メモリ１２２と、水平垂直分解係数メモリ１２３とを有し、連長数メモリ１２４は省略されている。
【０１６８】
データ処理装置１３の係数符号化手段１３２は、モード判定参照係数抽出手段１３２１と、多次元符号化モード判定手段１３２４と、係数組抽出手段１３２５と、多次元係数符号化手段１３２６と、参照係数抽出手段１３２７と、個別係数符号化手段１３２８とから構成され、連長モード判定手段１３２２と連長符号化手段１３２３は省略されている。また、多次元係数符号化手段１３２６の多次元係数ベクトル符号化手段１３２６１は、符号表切替手段１３２６１１を有していない。
【０１６９】
［動作の説明］
図１３のブロック図、および図１４のフローチャートを参照して、本実施の形態の全体の動作を説明する。
【０１７０】
画像入力装置１１から画像メモリ１２１に画像が入力されると、水平ウェーブレット分解手段１３１１は、入力画像に対して水平ウェーブレット分解を行い、得られた水平分解係数Ｌ、Ｈを水平分解係数メモリ１２２に記憶する（Ｓ１０１）。続いて、垂直ウェーブレット分解手段１３１２は、水平分解係数メモリ１２２に記憶された水平分解係数に対して垂直ウェーブレット分解を行い、得られたウェーブレット変換係数ＬＬ、ＬＨ、ＨＬ、ＨＨを水平垂直分解係数メモリ１２３に記憶する（Ｓ１０２）。次に、係数符号化手段１３２は、係数抽出座標を（０，０）に初期化する（Ｓ１０３）。ここまでの動作は、第１の実施形態と同じである。
【０１７１】
次に、係数組抽出手段１３２５は、同一ウェーブレット階層の、係数抽出座標に位置するＬＨ，ＨＬ，ＨＨ係数を、符号化対象の係数組として抽出する（Ｓ１０５）。
【０１７２】
次に、モード判定参照係数抽出手段１３２１は、符号化モードを判別するために参照するウェーブレット変換係数を抽出する。次に、多次元符号化モード判定手段１３２４は、モード判定参照係数抽出手段１３２１が抽出した参照係数の絶対値の総和Ｓを求める（Ｓ１０８）。次に、多次元符号化モード判定手段１３２４は、総和Ｓを、予め設定された閾値Ｂと比較する。ＳがＢ未満のとき（Ｓ１１４のＹ）、Ｓ１１５へ進み、多次元係数符号化手段１３２６による多次元符号化処理を行う。そうでなければ（Ｓ１１４のＮ）、Ｓ１１６へ進み、個別係数符号化手段１３２８による個別符号化処理を行う。いずれの処理についても符号化処理の結果を符号出力装置１４へ出力し、Ｓ１１８へ進む。
【０１７３】
多次元可変長符号化処理または個別符号化処理が終了すると、係数符号化手段１３２は、係数抽出座標をラスタスキャン順で次の座標にスキャンし（Ｓ１１８）、高域サブバンドの全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組の符号化を完了したか否かを判定する（Ｓ１１９）。完了していなければ（Ｓ１１９のＮ）、ステップＳ１０５の処理に戻り、高域サブバンドの各サブバンドで同一空間座標のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの次の組について、上記と同様の処理を繰り返す。全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組についての符号化処理を完了していれば（Ｓ１１９のＹ）、処理を終える。
【０１７４】
次に、図１３のブロック図、および図１５のフローチャートを参照して、本実施の形態における多次元可変長符号化処理（図１４のＳ１１５）の動作について詳細に説明する。
【０１７５】
多次元係数ベクトル符号化手段１３２６１は、係数組抽出手段１３２５が抽出した係数組について、ＬＨ、ＨＬ、ＨＨ係数の絶対値をそれぞれ０，１，…,Ｎ−１以上，の計Ｎクラス（Ｎ≧３）に分類する(ＳＡ１０１)。さらに、ＬＨ、ＨＬ、ＨＨのクラス番号を結合し、３次元ベクトルを生成する（ＳＡ１０２）。ここまでの動作は、第１の実施形態と同じである。
【０１７６】
次に、多次元係数ベクトル符号化手段１３２６１は、第１の符号化テーブルで３次元ベクトルを符号化する（ＳＡ１０４）。
【０１７７】
以降、第１の実施形態におけるステップＳＡ１０６〜ＳＡ１２６と同様の動作が行われる。
【０１７８】
本実施の形態における個別係数符号化処理（図１４のＳ１１６）の動作は、第１の実施形態における個別係数符号化処理（図６のＳ１１６）と同じである。
【０１７９】
次に本実施形態の効果を説明する。
【０１８０】
本実施形態によれば、空間的に同一位置にある複数のウェーブレット変換係数をまとめて符号化した方が望ましい２次元信号、逆に個別に符号化した方が望ましい２次元信号、或いはまとめて符号化した方が望ましい部分と個別に符号化した方が望ましい部分とが混在する２次元信号等、種々の２次元信号に対して圧縮率の良い符号化が可能である。その理由は、空間的に同一位置にある複数のウェーブレット変換係数の組毎に、それら複数のウェーブレット変換係数をまとめて符号化するか、個別に符号化するかを、符号化対象とする係数組に対して空間的に近傍に位置する、従って符号化対象とする係数組と相関のある複数のウェーブレット変換係数の絶対値の総和に基づいて、決定するためである。
【０１８１】
[第４の実施形態]
次に、本発明の第４の実施の形態について図面を参照して説明する。
【０１８２】
本実施形態は、第３の実施形態で符号化されたデータの復号装置に相当する。また本実施形態は、第２の実施形態にかかるウェーブレット変換復号装置から連長モードの処理に関連する機能を省略したウェーブレット変換復号装置に相当する。以下、第２の実施形態との相違点を中心に説明する。
【０１８３】
［構成の説明］
図１６は本実施形態にかかるウェーブレット変換復号装置のブロック図である。図１６を参照すると、データ記憶装置２２は、画像メモリ２２１と、水平分解係数メモリ２２２と、水平垂直分解係数メモリ２２３とを有し、連長数メモリ２２４は省略されている。
【０１８４】
データ処理装置２３の係数復号手段２３２は、モード判定参照係数抽出手段２３２１と、多次元符号化モード判定手段２３２４と、係数出力手段２３２５と、多次元係数復号手段２３２６と、参照係数抽出手段２３２７と、個別係数復号手段２３２８とから構成され、連長モード判定手段２３２２と連長復号手段２３２３は省略されている。また、多次元係数復号手段２３２６の多次元係数ベクトル復号手段２３２６１は、符号表切替手段２３２６１１を有していない。
【０１８５】
［動作の説明］
図１６のブロック図、および図１７のフローチャートを参照して、本実施形態の全体の動作を第２の実施形態との相違点を中心に説明する。
【０１８６】
まず係数復号手段２３２は、復号対象の係数組の選択座標を（０，０）に初期化する（Ｓ２０１）。次に、係数復号手段２３２は、同一階層に属する複数の高域サブバンド内の、空間的に同一位置にある複数のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組を、復号対象の係数組として選択する（Ｓ２０３）。
【０１８７】
次に、モード判定参照係数抽出手段２３２１は、符号化モードを判別するために参照するウェーブレット変換係数を抽出する（Ｓ２０４）。次に、多次元符号化モード判定手段２３２４は、上記抽出されたモード判定用参照係数の絶対値の総和Ｓを算出する（Ｓ２０５）。次に、多次元符号化モード判定手段２３２４は、この総和Ｓを、予め設定された閾値Ｂと比較する。ＳがＢ未満であれば(Ｓ２１１のＹ)、多次元係数復号手段２３２６による多次元復号処理を行う（Ｓ２１２）。そうでなければ（Ｓ２１１のＮ）、Ｓ２１３へ進み、個別係数復号手段２３２８による個別復号処理を行う。いずれの場合も、係数出力手段２３２５は、復号した係数値を水平垂直分解係数メモリ２２３へ出力する。
【０１８８】
多次元可変長復号処理または個別復号処理が終了すると、係数復号手段２３２は、係数選択座標をラスタスキャン順で次の座標にスキャンし（Ｓ２１５）、高域サブバンドの全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組の復号を完了したか否かを判定する（Ｓ２１６）。完了していなければ（Ｓ２１６のＮ）、ステップＳ２０３の処理に戻り、高域サブバンドの各サブバンドで同一空間座標のウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの次の組について、上記と同様の処理を繰り返す。全てのウェーブレット変換係数ＬＨ、ＨＬ、ＨＨの組についての復号処理を完了していれば（Ｓ２１６のＹ）、Ｓ２１７へ進む。
【０１８９】
ステップＳ２１７および次のステップＳ２１８では、垂直ウェーブレット合成手段２３１２および水平ウェーブレット合成手段２３１１により、第２の実施形態におけるステップＳ２１７およびＳ２１８と同様の処理が行われる。
【０１９０】
次に、図１６のブロック図、および図１８のフローチャートを参照して、本実施の形態の多次元可変長復号処理（図１７のＳ２１２）の動作について第２の実施形態との相違点を中心に説明する。
【０１９１】
まず、多次元係数ベクトル復号手段２３２６１は、第１の符号化テーブルを使用して３次元ベクトルを復号する（ＳＡ２０２）。以降、第２の実施形態におけるステップＳＡ２０４〜ＳＡ２２８と同様の動作が行われる。
【０１９２】
本実施の形態における係数組個別復号処理（図１７のＳ２１３）の動作は、第２の実施形態における係数組個別復号処理（図６のＳ２１３）と同じである。
【０１９３】
本実施の形態によれば、第３の実施形態で符号化されたデータを適切に復号することが可能である。
【０１９４】
以上、本発明の実施形態について説明したが、本発明は以上の実施形態にのみ限定されず、その他各種の付加変更が可能である。例えば、上述した各実施の形態では、多次元係数ベクトル符号および復号におけるＮの値を３以上としたが、Ｎの値を２以上としてもよい。また、本発明は、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施形態における各手段として機能させ、各実施形態における処理を行わせる。
【０１９５】
なお、本発明は、日本国にて２０１２年７月１９日に特許出願された特願２０１２−１６０７８３の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【産業上の利用可能性】
【０１９６】
本発明は、デジタルカメラ、デジタルビデオカメラなどの画像データを効率的に蓄積しまたは伝送する用途などに用いることができる。
【符号の説明】
【０１９７】
１１…画像入力装置
１２…データ記憶装置
１３…データ処理装置
１４…符号出力装置
１２１…画像メモリ
１２２…水平分解係数メモリ
１２３…水平垂直分解係数メモリ
１２４…連長数メモリ
１３１…ウェーブレット変換手段
１３１１…水平ウェーブレット変換手段
１３１２…垂直ウェーブレット変換手段
１３２１…モード判定参照係数抽出手段
１３２２…連長モード判定手段
１３２３…連長符号化手段
１３２４…多次元符号化モード判定手段
１３２５…係数組抽出手段
１３２６…多次元係数符号化手段
１３２６１…多次元係数ベクトル符号化手段
１３２６１１…符号表切替手段
１３２６２…多次元係数正負符号化手段
１３２６３…多次元係数振幅符号化手段
１３２６３１…符号化パラメータ算出手段
１３２７…参照係数抽出手段
１３２８…個別係数符号化手段
１３２８１…対象係数抽出手段
１３２８２…係数振幅符号化手段
１３２８２１…符号化パラメータ算出手段
１３２８３…係数正負符号化手段
２１…画像出力装置
２２…データ記憶装置
２３…データ処理装置
２４…符号入力装置
２２１…画像メモリ
２２２…水平分解係数メモリ
２２３…水平垂直分解係数メモリ
２２４…連長数メモリ
２３１…逆ウェーブレット変換手段
２３１１…水平ウェーブレット合成手段
２３１２…垂直ウェーブレット合成手段
２３２１…モード判定参照係数抽出手段
２３２２…連長モード判定手段
２３２３…連長復号手段
２３２４…多次元符号化モード判定手段
２３２５…係数出力手段
２３２６…多次元係数復号手段
２３２６１…多次元係数ベクトル復号手段
２３２６１１…符号表切替手段
２３２６２…多次元係数正負復号手段
２３２６３…多次元係数振幅復号手段
２３２６３１…符号化パラメータ算出手段
２３２７…参照係数抽出手段
２３２８…個別係数復号手段
２３２８１…対象係数抽出手段
２３２８２…係数振幅復号手段
２３２８２１…符号化パラメータ算出手段
２３２８３…係数正負復号手段
【図１】
2014013647.tif 000003
【図２】
2014013647.tif 000004
【図３】
2014013647.tif 000005
【図４】
2014013647.tif 000006
【図５】
2014013647.tif 000007
【図６】
2014013647.tif 000008
【図７】
2014013647.tif 000009
【図８】
2014013647.tif 000010
【図９】
2014013647.tif 000011
【図１０】
2014013647.tif 000012
【図１１】
2014013647.tif 000013
【図１２】
2014013647.tif 000014
【図１３】
2014013647.tif 000015
【図１４】
2014013647.tif 000016
【図１５】
2014013647.tif 000017
【図１６】
2014013647.tif 000018
【図１７】
2014013647.tif 000019
【図１８】
2014013647.tif 000020
【図１９】
2014013647.tif 000021
【国際調査報告】
2014013647.tif 000022
2014013647.tif 000023