(57)【要約】【課題】本発明は、階層的画像符号化を行うときに、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現することを目的とする。【解決手段】最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成するときに、最上位のビットプレーンに値を持つ直交変換係数が少ないことを考慮して、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする。また、最上位のビットプレーンに値を持つ直交変換係数が少ないことを判断したり、最上位のビットプレーンに値を持つ直交変換係数が実質的に少ないことを判断する場合には、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする。【選択図】          図１
2004350072.tif 000002
【特許請求の範囲】
【請求項１】
階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、該差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する画像符号化装置において、
上記最上位のビットプレーンに値を持つ直交変換係数を検出する手段と、
上記検出した直交変換係数の絶対値を最上位１ビット分だけ小さくする手段とを備えることを、
特徴とする画像符号化装置。
【請求項２】
階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、該差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する画像符号化装置において、
上記最上位のビットプレーンに値を持つ直交変換係数を検出する手段と、
上記検出した直交変換係数に応じて、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくするのか否かを判定する手段と、
上記判定結果に応じて、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくする手段とを備えることを、
特徴とする画像符号化装置。
【請求項３】
請求項２記載の画像符号化装置において、
上記判定する手段は、上記最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化装置。
【請求項４】
請求項２記載の画像符号化装置において、
上記判定する手段は、上記最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるものの個数が規定の閾値よりも少ない場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化装置。
【請求項５】
請求項２記載の画像符号化装置において、
上記判定する手段は、上記最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるもののうち、量子化パラメータが規定の閾値より小さくなるものの個数が規定の閾値よりも少ない場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化装置。
【請求項６】
請求項１ないし５のいずれか１項に記載の画像符号化装置において、
最上位１ビット分だけ小さくした直交変換係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、直交変換係数の絶対値を最上位１ビット分だけ小さくする処理を繰り返すことを指示する手段を備えることを、
特徴とする画像符号化装置。
【請求項７】
階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、該差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する画像符号化方法において、
上記最上位のビットプレーンに値を持つ直交変換係数を検出する過程と、
上記検出した直交変換係数の絶対値を最上位１ビット分だけ小さくする過程とを備えることを、
特徴とする画像符号化方法。
【請求項８】
階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、該差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する画像符号化方法において、
上記最上位のビットプレーンに値を持つ直交変換係数を検出する過程と、
上記検出した直交変換係数に応じて、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくするのか否かを判定する過程と、
上記判定結果に応じて、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくする過程とを備えることを、
特徴とする画像符号化方法。
【請求項９】
請求項８記載の画像符号化方法において、
上記判定する過程では、上記最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化方法。
【請求項１０】
請求項８記載の画像符号化方法において、
上記判定する過程では、上記最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるものの個数が規定の閾値よりも少ない場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化方法。
【請求項１１】
請求項８記載の画像符号化方法において、
上記判定する過程では、上記最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるもののうち、量子化パラメータが規定の閾値より小さくなるものの個数が規定の閾値よりも少ない場合に、上記最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定することを、
特徴とする画像符号化方法。
【請求項１２】
請求項７ないし１１のいずれか１項に記載の画像符号化方法において、
最上位１ビット分だけ小さくした直交変換係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、直交変換係数の絶対値を最上位１ビット分だけ小さくする処理を繰り返すことを指示する過程を備えることを、
特徴とする画像符号化方法。
【請求項１３】
請求項７ないし１２のいずれか１項に記載の画像符号化方法の実現に用いられる処理をコンピュータに実行させるための画像符号化プログラム。
【請求項１４】
請求項７ないし１２のいずれか１項に記載の画像符号化方法の実現に用いられる処理をコンピュータに実行させるための画像符号化プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、階層的画像符号化で用いられて、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようにする画像符号化装置及びその方法と、その画像符号化方法の実現に用いられる画像符号化プログラム及びそのプログラムを記録した記録媒体とに関する。
【０００２】
【従来の技術】
画像を効率的に符号化する方法として階層的画像符号化方法がある。
【０００３】
この方法は、第１の符号化器と第２の符号化器とを用意して、第１の符号化器にてマクロブロックと呼ばれる小領域ごとに生成された符号化データを復号することで画像のベースレイヤ復号画像を得、また、第１の符号化器で生成された符号化データと第２の符号化器でマクロブロックごとに生成された拡張レイヤ符号化データとの両方を用いることで、より画質の高い復号画像が得られるという方式である。
【０００４】
このような階層的符号化を実現する方法として、原画像と第１の符号化の結果得られる符号化データの復号画像との差分を第２の符号化器で符号化するという手法が考えられている。この方式の構成例を図１０に示す。
【０００５】
すなわち、この方式では、図１０に示すように、原画像信号を第１の符号化器１０１において符号化することにより、ベースレイヤ符号化データ１０７が生成される。また、第１の復号器１０２においてベースレイヤ符号化データを復号してベースレイヤ復号画像信号１０３を生成し、減算器１０４において原画像信号からベースレイヤ復号画像信号１０３を減算して差分画像信号１０５を生成する。そして、その差分画像信号１０５を第２の符号化器１０６においてハフマン符号化などの可変長符号化を行うことにより、拡張レイヤ符号化データ１０８が生成される。
【０００６】
このとき、差分画像信号１０５は、一般にベースレイヤのマクロブロックに合わせた位置および大きさに分割されて符号化される。
【０００７】
以上のような階層的符号化方式に関して記載された文献としては、例えば下記に示す特許文献１がある。この特許文献１に記載の技術では、符号化データに階層性を持たせ、符号化データの一部から選択領域だけをいろいろな画質で再生したり、符号化データの一部から低画質の画像を再生したりすることを可能としている。
【０００８】
一方、動画像符号化方式の国際標準であるＭＰＥＧ−４符号化（文献：ＩＳＯ／ＩＥＣ  １４４９６−２  Ｃｏｄｉｎｇ  ｏｆ  Ａｕｄｉｏ−Ｖｉｓｕａｌ  Ｏｂｊｅｃｔｓ，  Ｐａｒｔ−２）では、階層的符号化の方式の一つとしてＦＧＳ（Ｆｉｎｅ  Ｇｌａｎｕｌａｒｉｔｙ  Ｓｃａｌａｂｌｅ  ）符号化を規定している（例えば非特許文献１参照）。
【０００９】
ＦＧＳ符号化における階層的符号化方式は、次のとおりである。
【００１０】
第１の符号化器１０１は、図１１に示すように、ＭＰＥＧ−４の標準的な構成となるＭＰＥＧ−４符号化器２００で構成される。この構成では前述の第１の復号器１０２を内包している（図中に示す２ｂ）。ＭＰＥＧ−４符号化器２００におけるＭＰＥＧ−４の符号化処理については、様々な文献に紹介されているので、ここでは省略する。
【００１１】
図１２に、拡張レイヤを符号化する第２の符号化器１０６の構成例を示す。
【００１２】
第２の符号化器１０６では、先ず前述の差分画像信号１０５に対し、離散コサイン変換処理部３０１において、離散コサイン変換（ＤＣＴ）を施し画素値差分を周波数空間へ変換する。続いて、重み付け部３０２において、離散コサイン変換処理部３０１により算出されたＤＣＴ係数をマクロブロック単位または周波数成分ごとにビットシフト処理を行う。
【００１３】
その後、最大値検索部３０３において、フレーム全体（画像全体）のＤＣＴ係数のうち絶対値が最大のものを見つける。最後に、可変長符号化部３０４において、ＤＣＴ係数最大値を含む最上位のビットプレーンから下位のビットプレーンに向けて可変長符号化を行う。
【００１４】
ここで、上記のＤＣＴ係数の分布範囲に注目する。ＤＣＴの特徴である、特定の周波数成分に電力が集中しやすいことから、画素値差分に対するＤＣＴ係数は、係数の値の範囲（ダイナミックレンジ）が大きくなることがある。例えば、図１３（ａ）に示す範囲が−５６〜４６である画素値差分に対するＤＣＴ係数は、図１３（ｂ）に示すように−６５〜４９であり、ダイナミックレンジが拡大していることが分かる。
【００１５】
ＦＧＳ符号化方式では、拡張レイヤにおけるＤＣＴ係数の最大絶対値を符号化するのに必要なビットプレーン枚数をｖｏｐ−ｍａｘ−ｌｅｖｅｌ  で表現する。ＤＣＴ係数の絶対値は、ｖｏｐ−ｍａｘ−ｌｅｖｅｌ  で示されるビットプレーンの最上位（ＭＳＢ；Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）から、小ブロックのジグザグスキャン順で符号化される。また、ＤＣＴ係数の正負は、そのＤＣＴ係数が最初に符号化されるビットプレーンにて一緒に符号化する。
【００１６】
このＦＧＳ符号化方式における符号化の一例を図１４に図示する。この図の例では、ｖｏｐ−ｍａｘ−ｌｅｖｅｌ  として６枚のビットプレーンを想定している。
【００１７】
ここで、ある小ブロックにおけるＤＣＴ係数の最大絶対値が、現在の符号化対象であるビットプレーンに達しない場合は、未到達であることを示すｍｓｂ−ｎｏｔ−ｒｅａｃｈｅｄ  というフラグを立てて符号化・送信する。
【００１８】
【特許文献１】
特開２００２−４４６７１
【非特許文献１】
ＩＳＯ／ＩＥＣ  １４４９６−２：１９９９／ＦＤＡＭ４，  Ａｍｅｎｄｍｅｎｔ  ４
【００１９】
【発明が解決しようとする課題】
しかしながら、従来のＦＧＳ符号化方式に従っていたのでは、復号画像の品質が劣化するという問題がある。
【００２０】
すなわち、ｖｏｐ−ｍａｘ−ｌｅｖｅｌ  で示されるＭＳＢプレーン（最上位のビットプレーン）で符号化されるＤＣＴ係数が少ない場合、上記のｍｓｂ−ｎｏｔ−ｒｅａｃｈｅｄ  が多く符号化されるため、その分有意なＤＣＴ係数の符号量が減少して、復号画像の品質が劣化することになる。
【００２１】
本発明者の予備実験から、ＭＳＢプレーンに含まれるＤＣＴ係数の割合は画像全体の０．３％程度、１６×１６画素のマクロブロック単位では７％弱程度と、かなり少ないことが分かっている。
【００２２】
一方、ＦＧＳプロファイルの規定では、拡張レイヤにおいて送信できる最大ビットプレーン数が４となっている。
【００２３】
これらのことから、同じ符号化プレーン数で送信されるＤＣＴ係数を調整することで、復号した差分値の精度が向上できると考えられる。
【００２４】
本発明は、このような事情に鑑みてなされたものであって、階層的画像符号化で用いられて、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようにする新たな画像符号化技術の提供を目的とする。
【００２５】
【課題を解決するための手段】
上記の目的を達成するために、本発明の画像符号化装置は、階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、その差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する処理を行うときにあって、（１）最上位のビットプレーンに値を持つ直交変換係数を検出する検出手段と、（２）検出手段の検出した直交変換係数の絶対値を最上位１ビット分だけ小さくする置換手段とを備えるように構成する。
【００２６】
この構成を採るときに、最上位１ビット分だけ小さくした直交変換係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、直交変換係数の絶対値を最上位１ビット分だけ小さくする処理を繰り返すことを指示する指示手段を備えることがある。
【００２７】
以上の各処理手段が動作することで実現される本発明の画像符号化方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００２８】
このように構成される本発明の画像符号化装置では、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、その差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する処理を行うときにあって、最上位のビットプレーンに値を持つ直交変換係数を検出して、その検出した直交変換係数の絶対値を最上位１ビット分だけ小さくするように処理する。
【００２９】
このようにして、本発明では、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成するときに、通常の場合、最上位のビットプレーンに値を持つ直交変換係数が少ないことを考慮して、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする構成を採ることから、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようになる。
【００３０】
また、上記の目的を達成するために、本発明の画像符号化装置は、階層的画像符号化で用いられて、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、その差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する処理を行うときにあって、（１）最上位のビットプレーンに値を持つ直交変換係数を検出する検出手段と、（２）検出手段の検出した直交変換係数に応じて、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくするのか否かを判定する判定手段と、（３）判定手段の判定結果に応じて、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくする置換手段とを備えるように構成する。
【００３１】
この構成を採るときに、最上位１ビット分だけ小さくした直交変換係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、直交変換係数の絶対値を最上位１ビット分だけ小さくする処理を繰り返すことを指示する指示手段を備えることがある。
【００３２】
以上の各処理手段が動作することで実現される本発明の画像符号化方法はコンピュータプログラムで実現できるものであり、このコンピュータプログラムは、半導体メモリなどのような適当な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００３３】
このように構成される本発明の画像符号化装置では、原画像信号とベースレイヤ復号画像信号との差分画像信号を入力として、その差分画像信号に対して規定の小領域を単位として直交変換を施すことで直交変換係数を算出し、それをビットプレーンに展開して、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成する処理を行うときにあって、最上位のビットプレーンに値を持つ直交変換係数を検出して、その検出した直交変換係数に応じて、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくするのか否かを判定する。
【００３４】
例えば、（イ）最上位のビットプレーンに値を持つ直交変換係数のフレーム全体に対する割合が規定の閾値よりも小さい場合に、最上位１ビット分だけ小さくすることを判定したり、（ロ）最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるものの個数が規定の閾値よりも少ない場合に、最上位１ビット分だけ小さくすることを判定したり、（ハ）最上位のビットプレーンに値を持つ直交変換係数の値が規定の閾値よりも大きくなるもののうち、量子化パラメータが規定の閾値より小さくなるものの個数が規定の閾値よりも少ない場合に、最上位１ビット分だけ小さくすることを判定する。
【００３５】
そして、この判定結果に従って、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくすることを判定する場合には、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくするように処理する。
【００３６】
このようにして、本発明では、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成するときに、最上位のビットプレーンに値を持つ直交変換係数が少ないことを判断したり、最上位のビットプレーンに値を持つ直交変換係数が実質的に少ないことを判断する場合には、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする構成を採ることから、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようになる。
【００３７】
【発明の実施の形態】
以下、実施の形態に従って本発明を詳細に説明する。
【００３８】
図１に、本発明の一実施形態例を図示する。
【００３９】
ここで、図中、図１２に示したものと同じのものについては同一の記号で示してある。
【００４０】
この図に示すように、本発明により構成される拡張レイヤを符号化する第２の符号化器１０６は、ＦＧＳ符号化における階層的符号化方式を実装するにあたって、新たに係数処理部４０１を備えることを特徴とする。
【００４１】
この係数処理部４０１は、ＭＳＢプレーン（最上位のビットプレーン）における符号化対象ＤＣＴ係数である
２ｍａｘ  ≦｜ｃｏｅｆ｜≦２ｍａｘ＋１  −１
というＤＣＴ係数ｃｏｅｆを、
ｃｏｅｆ＿ｃｕｔ＝ｓｉｇｎ（ｃｏｅｆ）＊（２ｍａｘ  −１）
に置き換える処理を実行する。
【００４２】
ここで、ｍａｘ＝ｖｏｐ−ｍａｘ−ｌｅｖｅｌ  であり、また、ｓｉｇｎ（ｘ）は、
2004350072.tif 000003
で定義される関数であって、ｘの符号を表している。
【００４３】
例えば、ｍａｘ＝６である場合には、係数処理部４０１は、
６４＝２６  ≦｜ｃｏｅｆ｜≦２６＋１  −１＝１２７
という値域にあるＤＣＴ係数ｃｏｅｆを、
ｃｏｅｆ＿ｃｕｔ＝２６  −１＝６３
に置き換える処理を実行することになる。
【００４４】
すなわち、係数処理部４０１は、符号化対象のＤＣＴ係数の絶対値を最上位１ビット分だけ小さくするように処理するのである。以下、この係数処理部４０１の実行する処理を“頭打ち処理（ＤＣＴ係数の頭打ち処理）”と呼ぶことにする。
【００４５】
次に、図２の処理フローに従って、図１のように構成される第２の符号化器１０６の実行する符号化処理について詳細に説明する。
【００４６】
第２の符号化器１０６は、図２の処理フローに示すように、先ず最初に、ステップ１０で、符号化対象となる差分画像信号を入力すると、続いて、ステップ１１で、その差分画像信号に対して、マクロブロック毎に、離散コサイン変換を施すことでＤＣＴ係数を算出する。
【００４７】
続いて、ステップ１２で、マクロブロック毎に、算出したＤＣＴ係数に対してビットシフト処理を施す。
【００４８】
続いて、ステップ１３で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数（上述のｍａｘ）を決定する。例えば、６５というＤＣＴ係数の絶対値が最大値である場合には、ビットプレーン数としてｍａｘ＝６であることを決定するのである。
【００４９】
続いて、ステップ１４で、フレームの全マクロブロックについて処理を終了したのか否かを判断して、未処理のマクロブロックが残されていることを判断するときには、ステップ１５に進んで、未処理のマクロブロックを１つ選択する。
【００５０】
続いて、ステップ１６で、選択したマクロブロックについて、最上位ビットプレーンに値を持つＤＣＴ係数に対して上述の頭打ち処理を施してから、ステップ１４に戻る。例えば、６５という絶対値を持つＤＣＴ係数については、その絶対値が６３となるように置換する頭打ち処理を施してから、ステップ１４に戻るのである。
【００５１】
このようにして、ステップ１４ないしステップ１６の処理を繰り返していくときに、ステップ１４で、フレームの全マクロブロックについて処理を終了したことを判断すると、ステップ１７に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。具体的には、上位４プレーンに対して可変長符号化を行って、処理を終了するのである。
【００５２】
次に、このように構成される本発明の符号化処理の有効性について、具体的な計算例を用いて検証する。
【００５３】
図３（ａ）に示す８×８画素の画像差分値に対して離散コサイン変換を施すと、図３（ｂ）に示すＤＣＴ係数が得られることになる。
【００５４】
従来技術の符号化処理に従う場合には、図３（ｂ）に示すＤＣＴ係数の上位４プレーンに対して可変長符号化を行い、それを復号することで図３（ｄ）に示す復号差分値を得ることになる。
【００５５】
これに対して、本発明の符号化処理では、図３（ｂ）に示すＤＣＴ係数に対して上述の頭打ち処理を施すことで図３（ｃ）に示すＤＣＴ係数に変換し、その変換したＤＣＴ係数の上位４プレーンに対して可変長符号化を行い、それを復号することで図３（ｅ）に示す復号差分値を得ることになる。すなわち、上述の頭打ち処理に従って、６５という絶対値を持つＤＣＴ係数については６３という絶対値を持つものに変換しつつ、可変長符号化を行うことになる。
【００５６】
図３（ａ）に示す画像差分値と図３（ｄ）に示す復号差分値とから、従来技術の符号化処理に従う場合には、最大誤差が１２で、誤差の総和は２０８となる。これに対して、図３（ａ）に示す画像差分値と図３（ｅ）に示す復号差分値とから分かるように、本発明の符号化処理によれば、最大誤差が７で、誤差の総和は１３３となる。
【００５７】
このように、本発明の符号化処理によれば、復号画像の品質の向上を実現できるようになるのである。
【００５８】
係数処理部４０１は、図２の処理フローに従う場合、最上位ビットプレーンに対して頭打ち処理を１回施すことで説明したが、最上位１ビット分だけ小さくしたＤＣＴ係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つＤＣＴ係数の個数に応じて、さらに頭打ち処理を継続していくように処理することも可能である。
【００５９】
図４に示す処理フローに従って、この構成を実現する第２の符号化器１０６の実行する符号化処理について詳細に説明する。
【００６０】
第２の符号化器１０６は、図４の処理フローに従う場合には、先ず最初に、ステップ２０で、符号化対象となる差分画像信号を入力すると、続いて、ステップ２１で、その差分画像信号に対して、マクロブロック毎に、離散コサイン変換を施すことでＤＣＴ係数を算出する。
【００６１】
続いて、ステップ２２で、マクロブロック毎に、算出したＤＣＴ係数に対してビットシフト処理を施し、続くステップ２３で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数を決定する。
【００６２】
続いて、ステップ２４で、フレームの全マクロブロックについて処理を終了したのか否かを判断して、未処理のマクロブロックが残されていることを判断するときには、ステップ２５に進んで、未処理のマクロブロックを１つ選択し、続くステップ２６で、選択したマクロブロックについて、最上位ビットプレーンに値を持つＤＣＴ係数に対して頭打ち処理を施してから、ステップ２４に戻る。
【００６３】
このようにして、ステップ２４ないしステップ２６の処理を繰り返していくときに、ステップ２４で、フレームの全マクロブロックについて処理を終了したことを判断すると、ステップ２７に進んで、頭打ち処理を施したＤＣＴ係数を、フレームの持つ新たなＤＣＴ係数として設定し、続くステップ２８で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数を決定する。
【００６４】
続いて、ステップ２９で、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも大きいのか否かを判断して、小さいことを判断するときには、新たなＤＣＴ係数に対して頭打ち処理を継続すべくステップ２４に戻る。
【００６５】
一方、ステップ２９で、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも大きいことを判断するときには、頭打ち処理を継続するのは適切でないと判断して、ステップ３０に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【００６６】
このようにして、係数処理部４０１は、図４の処理フローに従う場合には、最上位１ビット分だけ小さくしたＤＣＴ係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つＤＣＴ係数の個数に応じて、さらに頭打ち処理を継続していくように処理するのである。
【００６７】
図５に、本発明の他の実施形態例を図示する。
【００６８】
ここで、図中、図１に示したものと同じのものについては同一の記号で示してある。
【００６９】
この実施形態例に従う場合、本発明により構成される拡張レイヤを符号化する第２の符号化器１０６は、ＦＧＳ符号化における階層的符号化方式を実装するにあたって、新たに係数カウント・判定部４０２を備えることを特徴とする。
【００７０】
この係数カウント・判定部４０２は、最上位ビットプレーンに含まれるＤＣＴ係数のフレーム全体に対する割合ｐを求め、その割合ｐに従って頭打ち処理を実行するのか否かを判定する処理を実行する。
【００７１】
次に、図６の処理フローに従って、図５のように構成される第２の符号化器１０６の実行する符号化処理について詳細に説明する。
【００７２】
第２の符号化器１０６は、図５のように構成される場合には、図６の処理フローに示すように、先ず最初に、ステップ４０で、符号化対象となる差分画像信号を入力すると、続いて、ステップ４１で、その差分画像信号に対して、マクロブロック毎に、離散コサイン変換を施すことでＤＣＴ係数を算出する。
【００７３】
続いて、ステップ４２で、マクロブロック毎に、算出したＤＣＴ係数に対してビットシフト処理を施し、続くステップ４３で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数を決定する。
【００７４】
続いて、ステップ４４で、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも大きいのか否かを判断して、大きいことを判断するときには、頭打ち処理を行うのは適切でないと判断して、ステップ４５に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【００７５】
すなわち、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも大きい場合には、頭打ち処理を行わずに、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【００７６】
一方、ステップ４４で、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも大きくないことを判断するときには、ステップ４６に進んで、フレームの全マクロブロックについて処理を終了したのか否かを判断して、未処理のマクロブロックが残されていることを判断するときには、ステップ４７に進んで、未処理のマクロブロックを１つ選択する。
【００７７】
続いて、ステップ４８で、選択したマクロブロックについて、最上位ビットプレーンに値を持つＤＣＴ係数に対して頭打ち処理を施す。
【００７８】
このようにして、ステップ４６ないしステップ４８の処理を繰り返していくときに、ステップ４６で、フレームの全マクロブロックについて処理を終了したことを判断すると、ステップ４５に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【００７９】
すなわち、最上位のビットプレーンに値を持つＤＣＴ係数のフレーム全体に対する割合が規定の閾値よりも小さい場合には、ＤＣＴ係数に対して頭打ち処理を施して、その頭打ち処理を施したＤＣＴ係数を符号化対象として、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【００８０】
このようにして、第２の符号化器１０６は、図５のように構成される場合には、最上位ビットプレーンに含まれるＤＣＴ係数のフレーム全体に対する割合ｐを求め、その割合ｐとあらかじめ設定した閾値Ｔｈ１とを比較して、ｐ≦Ｔｈ１ならば、頭打ち処理を施すように処理するのである。
【００８１】
この構成に従って、頭打ち処理の対象となるＤＣＴ係数の割合が多い場合に発生することになる、復号された残差信号の精度が劣化するという問題を回避することができるようになる。
【００８２】
係数カウント・判定部４０２は、図６の処理フローに従う場合、最上位ビットプレーンに値を持つＤＣＴ係数の分布については考慮していないが、この分布を考慮して、頭打ち処理を実行するのか否かを判定するようにするという構成を採ることも可能である。
【００８３】
図７に示す処理フローに従って、この構成を実現する第２の符号化器１０６の実行する符号化処理について詳細に説明する。
【００８４】
第２の符号化器１０６は、図７の処理フローに従う場合には、先ず最初に、ステップ５０で、符号化対象となる差分画像信号を入力すると、続いて、ステップ５１で、その差分画像信号に対して、マクロブロック毎に、離散コサイン変換を施すことでＤＣＴ係数を算出する。
【００８５】
続いて、ステップ５２で、マクロブロック毎に、算出したＤＣＴ係数に対してビットシフト処理を施し、続くステップ５３で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数を決定する。
【００８６】
続いて、ステップ５４で、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数を判断する。
【００８７】
例えば、ある閾値Ｔｈ２に対して、
２ｍａｘ  ≦｜ｃｏｅｆ｜≦２ｍａｘ  ＋Ｔｈ２
という条件を満たすｃｏｅｆの集合を｛ＣＯＥＦ２｝と表し、
２ｍａｘ  ＋Ｔｈ２＜｜ｃｏｅｆ｜＜２ｍａｘ＋１  
という条件を満たすｃｏｅｆの集合を｛ＣＯＥＦ３｝と表すときに、その｛ＣＯＥＦ３｝に属するｃｏｅｆの個数Ｎ（ＣＯＥＦ３）が、ある閾値Ｔｈ３に対して、
Ｎ（ＣＯＥＦ３）≦Ｔｈ３
であるのか否かを判断することで、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数を判断するのである。
【００８８】
続いて、ステップ５５で、ステップ５４での判断処理により、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数が多いという判断結果が得られたのか否かを判断して、多いという判断結果が得られたときには、ステップ５６に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【００８９】
すなわち、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数が多い場合には、頭打ち処理を行わずに、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【００９０】
一方、ステップ５５で、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数が少ないことを判断するときには、ステップ５７に進んで、フレームの全マクロブロックについて処理を終了したのか否かを判断して、未処理のマクロブロックが残されていることを判断するときには、ステップ５８に進んで、未処理のマクロブロックを１つ選択する。
【００９１】
続いて、ステップ５９で、選択したマクロブロックについて、最上位ビットプレーンに値を持つＤＣＴ係数に対して頭打ち処理を施す。
【００９２】
このようにして、ステップ５７ないしステップ５９の処理を繰り返していくときに、ステップ５７で、フレームの全マクロブロックについて処理を終了したことを判断すると、ステップ５６に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【００９３】
すなわち、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数が少ない場合には、ＤＣＴ係数に対して頭打ち処理を施して、その頭打ち処理を施したＤＣＴ係数を符号化対象として、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【００９４】
このようにして、係数カウント・判定部４０２は、図７の処理フローに従う場合には、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの個数Ｎ（ＣＯＥＦ３）と、あらかじめ設定した閾値Ｔｈ３とを比較して、Ｎ（ＣＯＥＦ３）≦Ｔｈ３ならば、頭打ち処理を施すように処理するのである。
【００９５】
この構成に従って、ＤＣＴ係数の頭打ち処理による値の変化が大きいときに発生することになる、復号された残差信号の精度が劣化するという問題を回避することができるようになる。
【００９６】
図８に、本発明の他の実施形態例を図示する。
【００９７】
ここで、図中、図５に示したものと同じのものについては同一の記号で示してある。
【００９８】
この実施形態例に従う場合、係数カウント・判定部４０２は、第１の符号化器１０１を構成する制御部２０６（図１１に示したもの）から、信号線４０３を介して符号化パラメータを受け取って、この符号化パラメータを使って、頭打ち処理を実行するのか否かを判定する処理を行うことを特徴とする。
【００９９】
例えば、原画像の複雑な領域に対応するマクロブロックでは第一の符号化器１０１における量子化パラメータが大きくなりやすいことを利用して、係数カウント・判定部４０２は、第１の符号化器１０１を構成する制御部２０６から量子化パラメータＱＰを受け取って、
Ｎ（ＣＯＥＦ４）≦Ｔｈ５
であるのか否かを判断して、この条件が成立する場合に、頭打ち処理を実行するように判断する。
【０１００】
ここで、集合｛ＣＯＥＦ４｝は、上述の集合｛ＣＯＥＦ３｝の要素ｘのうち、ＱＰｘ  ≦Ｔｈ４を満たすものとして定義される。ただし、ＱＰｘ  は、ＤＣＴ係数ｘの含まれるマクロブロックのベースレイヤにおける量子化パラメータであり、Ｎ｛ＣＯＥＦ４｝は、集合｛ＣＯＥＦ４｝に属するＤＣＴ係数の個数である。
【０１０１】
次に、図９の処理フローに従って、図８のように構成される第２の符号化器１０６の実行する符号化処理について詳細に説明する。
【０１０２】
第２の符号化器１０６は、図８のように構成される場合には、図９の処理フローに示すように、先ず最初に、ステップ６０で、符号化対象となる差分画像信号を入力すると、続いて、ステップ６１で、その差分画像信号に対して、マクロブロック毎に、離散コサイン変換を施すことでＤＣＴ係数を算出する。
【０１０３】
続いて、ステップ６２で、マクロブロック毎に、算出したＤＣＴ係数に対してビットシフト処理を施し、続くステップ６３で、フレーム全体のＤＣＴ係数のうち絶対値が最大のものを検索することで、ビットプレーン数を決定する。
【０１０４】
続いて、ステップ６４で、最上位のビットプレーンに値を持つＤＣＴ係数のうちの値が大きいものの中から、
Ｎ（ＣＯＥＦ４）≦Ｔｈ５
に従って、量子化パラメータが小さなものの個数を判断する。
【０１０５】
続いて、ステップ６５で、ステップ６４での判断処理により、Ｎ（ＣＯＥＦ４）≦Ｔｈ５という条件が成立したのか否かを判断して、この条件が成立しないという判断結果が得られたときには、ステップ６６に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【０１０６】
すなわち、Ｎ（ＣＯＥＦ４）≦Ｔｈ５という条件が成立しない場合、したがってＮ（ＣＯＥＦ４）の個数が多い場合には、頭打ち処理を行わずに、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【０１０７】
一方、ステップ６５で、Ｎ（ＣＯＥＦ４）≦Ｔｈ５という条件が成立したことを判断するときは、ステップ６７に進んで、フレームの全マクロブロックについて処理を終了したのか否かを判断して、未処理のマクロブロックが残されていることを判断するときには、ステップ６８に進んで、未処理のマクロブロックを１つ選択する。
【０１０８】
続いて、ステップ６９で、選択したマクロブロックについて、最上位ビットプレーンに値を持つＤＣＴ係数に対して頭打ち処理を施す。
【０１０９】
このようにして、ステップ６７ないしステップ６９の処理を繰り返していくときに、ステップ６７で、フレームの全マクロブロックについて処理を終了したことを判断すると、ステップ６６に進んで、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行って、処理を終了する。
【０１１０】
すなわち、Ｎ（ＣＯＥＦ４）≦Ｔｈ５という条件が成立した場合、したがってＮ（ＣＯＥＦ４）の個数が少ない場合には、ＤＣＴ係数に対して頭打ち処理を施して、その頭打ち処理を施したＤＣＴ係数を符号化対象として、最上位のビットプレーンから下位のビットプレーンに向けて、ＦＧＳで規定されるビットプレーン数分可変長符号化を行うのである。
【０１１１】
このようにして、係数カウント・判定部４０２は、図９の処理フローに従う場合には、上述の集合｛ＣＯＥＦ３｝の要素ｘのうち、ＱＰｘ  ≦Ｔｈ４を満たすものとして定義される集合｛ＣＯＥＦ４｝の個数Ｎ（ＣＯＥＦ４）と、あらかじめ設定した閾値Ｔｈ５とを比較して、Ｎ（ＣＯＥＦ４）≦Ｔｈ５ならば、頭打ち処理を施すように処理するのである。
【０１１２】
この構成に従って、複雑な領域では復号画像の誤差が目立ちにくいという視覚特性を利用して、そのような領域に属するＤＣＴ係数については、上述したＮ（ＣＯＥＦ３）≦Ｔｈ３の判定から除くようにするのである。
【０１１３】
これから、ＤＣＴ係数の頭打ち処理による値の変化が大きいときに発生することになる、復号された残差信号の精度が劣化するという問題を確実に回避することができるようになる。
【０１１４】
図示実施形態例について本発明を説明したが、本発明はこれに限定されるものではない。例えば、図５及び図８に示した実施形態例では説明しなかったが、図５及び図８に示した実施形態例においても、最上位１ビット分だけ小さくしたＤＣＴ係数を新たな処理対象として、その新たな処理対象の最上位のビットプレーンに値を持つＤＣＴ係数の個数に応じて、さらに頭打ち処理を継続していくように処理するという図４の処理フローで説明した構成を用いるようにしてもよいのである。
【０１１５】
【発明の効果】
以上説明したように、本発明では、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成するときに、通常の場合、最上位のビットプレーンに値を持つ直交変換係数が少ないことを考慮して、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする構成を採ることから、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようになる。
【０１１６】
そして、本発明では、最上位のビットプレーンから下位のビットプレーンに向けて規定のプレーン数分符号化することで拡張レイヤ符号化データを生成するときに、最上位のビットプレーンに値を持つ直交変換係数が少ないことを判断したり、最上位のビットプレーンに値を持つ直交変換係数が実質的に少ないことを判断する場合には、最上位のビットプレーンに値を持つ直交変換係数の絶対値を最上位１ビット分だけ小さくして、その規定のプレーン数分の符号化を行うようにする構成を採ることから、簡単な構成で残差信号の特性に応じた符号化を行い復号画像の品質の向上を実現できるようになる。
【図面の簡単な説明】
【図１】本発明の一実施形態例である。
【図２】本発明の実行する処理フローの一例である。
【図３】本発明の符号化処理の有効性について説明する図である。
【図４】本発明の実行する処理フローの一例である。
【図５】本発明の他の実施形態例である。
【図６】本発明の実行する処理フローの一例である。
【図７】本発明の実行する処理フローの一例である。
【図８】本発明の他の実施形態例である。
【図９】本発明の実行する処理フローの一例である。
【図１０】階層的符号化処理の説明図である。
【図１１】階層的符号化処理の説明図である。
【図１２】階層的符号化処理の説明図である。
【図１３】ＤＣＴ係数の説明図である。
【図１４】ＦＧＳ符号化処理の説明図である。
【符号の説明】
１０５  差分画像信号
１０６  第２の符号化器
１０８  拡張レイヤ符号化データ
３０１  離散コサイン変換処理部
３０２  重み付け部
３０３  最大値検索部
３０４  可変長符号化部
４０１  係数処理部
【図１】
2004350072.tif 000004
【図２】
2004350072.tif 000005
【図３】
2004350072.tif 000006
【図４】
2004350072.tif 000007
【図５】
2004350072.tif 000008
【図６】
2004350072.tif 000009
【図７】
2004350072.tif 000010
【図８】
2004350072.tif 000011
【図９】
2004350072.tif 000012
【図１０】
2004350072.tif 000013
【図１１】
2004350072.tif 000014
【図１２】
2004350072.tif 000015
【図１３】
2004350072.tif 000016
【図１４】
2004350072.tif 000017