(57)【要約】【課題】符号化効率を低下させることなく人間の視覚特性に最適となるように符号化歪みを低減することのできる画像符号化装置を提供する。【解決手段】  画像符号化装置１０であって、画像を取得する画像取得手段１１５と、画像を所定の量子化ステップで仮符号化する仮符号化手段１１５と、符号化誤差を算出する符号化誤差算出手段２０５と、画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出手段２０１と、符号化誤差が視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、量子化ステップの幅を変更する量子化ステップ幅変更手段２０２と、変更後の量子化ステップで、画像の符号化を行う符号化手段１１５とを備えた。【選択図】        図２
2006222861.tif 000002
【特許請求の範囲】
【請求項１】
外部から画像を取得する画像取得手段と、
前記画像取得手段が取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化手段と、
前記量子化ステップにおける仮符号化後の画像と前記画像取得ステップにおいて取得した前記画像との符号化誤差を算出する符号化誤差算出手段と、
前記画像取得手段が取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出手段と、
前記符号化誤差算出手段によって算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更手段と、
前記量子化ステップ幅変更手段によって変更された後の量子化ステップで、前記画像の符号化を行う符号化手段と
を備えたことを特徴とする画像符号化装置。
【請求項２】
前記量子化ステップ幅変更手段は、さらに前記符号化誤差算出手段によって算出された前記符号化誤差が前記視覚閾値範囲の上限の値よりも大きい値である場合に、前記量子化ステップの幅を狭くすることを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記量子化ステップ幅変更手段は、さらに前記符号化誤差算出手段によって算出された前記符号化誤差が前記視覚閾値範囲の下限の値よりも小さい値である場合に、前記量子化ステップの幅を狭くすることを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
前記量子化ステップ幅変更手段は、さらに符号化手段による符号化における符号化誤差が前記視覚閾値範囲内の値となるように前記量子化ステップの幅を変更することを特徴とする請求項１から３のいずれか一項に記載の画像符号化装置。
【請求項５】
前記視覚閾値算出手段は、前記画像の画像特徴量であるエッジ強度に基づいて、前記視覚閾値を算出することを特徴とする請求項１から４のいずれか一項に記載の画像符号化装置。
【請求項６】
前記視覚閾値算出手段は、
ＳＡＤ＝ｅｘｐ（α×ＥＡＮ＋β）（ＳＡＤは視覚閾値、ＥＡＮはエッジ強度、α，βは任意の定数）により視覚閾値を算出することを特徴とする請求項５に記載の画像符号化装置。
【請求項７】
前記符号化手段が符号化した後の前記画像を保持するバッファと、
前記バッファが保持する前記画像のデータ量を監視するデータ量監視手段と
をさらに備え、
前記視覚閾値算出手段は、前記データ量監視手段によって決定された前記データ量に基づいて、前記αおよびβのうち少なくとも一方の値を決定することを特徴とする請求項６に記載の画像符号化装置。
【請求項８】
前記データ量監視手段が監視した前記データ量に基づいて前記仮符号化手段が仮符号化を行うときの量子化ステップの幅を決定する量子化ステップ幅決定手段と
をさらに備え、
前記視覚閾値算出手段は、前記量子化ステップ幅決定手段によって決定された前記量子化ステップ幅に基づいて、前記αおよびβのうち少なくとも一方の値を決定することを特徴とする請求項７に記載の画像符号化装置。
【請求項９】
前記符号化手段は、前記量子化ステップ幅変更手段によって変更された後の量子化ステップにおいて、前記仮符号化手段が仮符号化を行った前記画像に対する符号化を行うことを特徴とする請求項１から８のいずれか一項に記載の画像符号化装置。
【請求項１０】
前記視覚閾値算出手段は、前記画像の特徴量である輝度分散値に基づいて、前記視覚閾値を算出することを特徴とする請求項１から４のいずれか一項に記載の画像符号化装置。
【請求項１１】
外部から画像を取得する画像取得ステップと、
前記画像取得ステップにおいて取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化ステップと、
前記量子化ステップにおける仮符号化後の画像と前記画像取得ステップにおいて取得した前記画像との符号化誤差を算出する符号化誤差算出ステップと、
前記画像取得ステップにおいて取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出ステップと、
前記符号化誤差算出ステップにおいて算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更ステップと、
前記量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、前記画像の符号化を行う符号化ステップと
を有することを特徴とする画像符号化方法。
【請求項１２】
画像符号化処理をコンピュータに実行させる画像符号化プログラムであって、
外部から画像を取得する画像取得ステップと、
前記画像取得ステップにおいて取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化ステップと、
前記量子化ステップにおける仮符号化後の画像と前記画像取得ステップにおいて取得した前記画像との符号化誤差を算出する符号化誤差算出ステップと、
前記画像取得ステップにおいて取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出ステップと、
前記符号化誤差算出ステップにおいて算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更ステップと、
前記量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、前記画像の符号化を行う符号化ステップと
を有することを特徴とする画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の量子化ステップ幅で画像符号化を行う画像符号化装置、画像符号化方法および画像符号化プログラムに関するものである。
【背景技術】
【０００２】
ＩＴＵ−Ｔ  Ｈ．２６４，ＩＳＯ／ＩＥＣ  ＭＰＥＧ−２などの動画像符号化標準方式では、マクロブロックと呼ばれる符号化単位の特徴に応じて、個々に最適な符号化モードや量子化パラメータの選択を行うことで高画質な圧縮を行うことが可能である。具体的には、圧縮方式の最も基本的な量子化手段において、重要度が高いと判断されたブロックに対しては量子化ステップを小さくし、重要度が低いと判断されたブロックに対しては量子化ステップを大きくすることで、符号化効率および画質の改善を得る試みがなされている。
【０００３】
例えば、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−２のテストモデルであったTM5 (International Organisation for Standardisation, Test Model Editing Committee, 1993. Test Model 5. April. ISO-IEC/JTC1/SC29/WG11/N0400) （非特許文献１）においては、視覚特性を考慮した量子化ステップの修正方法が紹介されている。この方法は、人間の視覚特性が平坦部の歪に敏感であるという性質を考慮して、入力画像をマクロブロックに分割し、アクティビティと呼ばれるマクロブロック内の４つのサブブロックの画素の輝度分散の最小値を計算して、アクティビティが低い平坦部の量子化ステップの値を相対的に小さい値に修正する手法である。
【０００４】
【非特許文献１】International Organisation for Standardisation, Test Model Editing Committee, 1993. Test Model 5. April. ISO-IEC/JTC1/SC29/WG11/N0400.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
非特許文献１の手法は、平坦部に対する量子化ステップを小さくすることで、知覚しやすい部分の量子化歪の軽減を行っている。具体的には、量子化ステップの増減に関して、入力画像の輝度分散値から単純な計算式を用いて画面内で相対的に量子化ステップを増減させている。すなわち、必ずしも人間の視覚特性に最適になるように量子化ステップを増減させているわけではない。このため、符号化効率は向上させることができるが、視認可能な画質の低下が問題となる。
【０００６】
本発明は、上記に鑑みてなされたものであって、符号化効率を低下させることなく人間の視覚特性に最適となるように符号化歪みを低減することのできる画像符号化装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、画像符号化装置であって、外部から画像を取得する画像取得手段と、前記画像取得手段が取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化手段と、前記量子化ステップにおける仮符号化後の画像と前記画像取得ステップにおいて取得した前記画像との符号化誤差を算出する符号化誤差算出手段と、前記画像取得手段が取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出手段と、前記符号化誤差算出手段によって算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更手段と、前記量子化ステップ幅変更手段によって変更された後の量子化ステップで、前記画像の符号化を行う符号化手段とを備えたことを特徴とする。
【０００８】
また、本発明の他の形態は、画像符号化方法であって、外部から画像を取得する画像取得ステップと、前記画像取得ステップにおいて取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化ステップと、前記量子化ステップにおける仮符号化後の画像と前記画像取得ステップにおいて取得した前記画像との符号化誤差を算出する符号化誤差算出ステップと、前記画像取得ステップにおいて取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出ステップと、前記符号化誤差算出ステップにおいて算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更ステップと、前記量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、前記画像の符号化を行う符号化ステップとを有することを特徴とする。
【０００９】
また、本発明の他の形態は、画像符号化処理をコンピュータに実行させる画像符号化プログラムであって、外部から画像を取得する画像取得ステップと、前記画像取得ステップにおいて取得した前記画像を、予め設定されている量子化ステップで仮符号化する仮符号化ステップと、前記量子化ステップにおける仮符号化後の画像と前記画像との符号化誤差を算出する符号化誤差算出ステップと、前記画像取得ステップにおいて取得した前記画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出する視覚閾値算出ステップと、前記符号化誤差算出ステップにおいて算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、前記量子化ステップの幅を変更する量子化ステップ幅変更ステップと、前記量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、前記画像の符号化を行う符号化ステップとを有することを特徴とする。
【発明の効果】
【００１０】
本発明にかかる画像符号化装置では、画像取得手段は、外部から画像を取得し、仮符号化手段は、画像取得手段が取得した画像を、予め設定されている量子化ステップで仮符号化し、符号化誤差算出手段は、量子化ステップにおける仮符号化後の画像と画像取得ステップにおいて取得した画像との符号化誤差を算出し、視覚閾値算出手段は、画像取得手段が取得した画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出し、量子化ステップ幅変更手段は、符号化誤差算出手段によって算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、量子化ステップの幅を変更し、符号化手段は、量子化ステップ幅変更手段によって変更された後の量子化ステップで、画像の符号化を行うので、符号化効率を低減させることなく、人間の視覚特性においてより適切に符号化歪みを低減することができるという効果を奏する。
【００１１】
また、本発明の他の形態にかかる画像符号化方法では、画像取得ステップにおいて、外部から画像を取得し、仮符号化ステップにおいて、画像取得ステップにおいて取得した画像を、予め設定されている量子化ステップで仮符号化し、符号化誤差算出ステップにおいて、量子化ステップにおける仮符号化後の画像と画像取得ステップにおいて取得した画像との符号化誤差を算出し、視覚閾値算出ステップにおいて、画像取得ステップにおいて取得した画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出し、量子化ステップ幅変更ステップにおいて、前記符号化誤差算出ステップにおいて算出された前記符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、量子化ステップの幅を変更し、符号化ステップにおいて、量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、画の符号化を行うので、符号化効率を低減させることなく、人間の視覚特性においてより適切に符号化歪みを低減することができるという効果を奏する。
【００１２】
また、本発明の他の形態にかかる画像符号化プログラムでは、画像取得ステップにおいて、外部から取得し、仮符号化ステップにおいて、画像取得ステップにおいて取得した画像を、予め設定されている量子化ステップで仮符号化し、符号化誤差算出ステップにおいて、量子化ステップにおける仮符号化後の画像と画像取得ステップにおいて取得した画像との符号化誤差を算出し、視覚閾値算出ステップにおいて、画像取得ステップにおいて取得した画像の画像特徴量に基づいて、符号化後の画像における画像劣化が人間により視認され得る程度となる符号化誤差の閾値である視覚閾値を算出し、量子化ステップ幅変更ステップにおいて、前記符号化誤差算出ステップにおいて算出された符号化誤差が前記視覚閾値以下の所定の範囲である視覚閾値範囲の外側の値である場合に、量子化ステップの幅を変更し、符号化ステップにおいて、量子化ステップ幅変更ステップにおいて変更された後の量子化ステップで、画像の符号化を行うので、符号化効率を低減させることなく、人間の視覚特性においてより適切に符号化歪みを低減することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明にかかる画像符号化装置、画像符号化方法および画像符号化プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１４】
（実施の形態１）
図１は、実施の形態１にかかる画像符号化装置１０の機能構成を示す全体ブロック図である。画像符号化装置１０は、符号化部１１５と、多重化器１１６と、出力バッファ１１７と、量子化制御器１２０とを備えている。
【００１５】
符号化部１１５は、入力画像信号１００として例えばフレーム単位で画像信号を取得する。そして、画像信号に対してエントロピー符号化を行う。エントロピー符号化により生成された各符号は、符号化データ１１８として出力される。
【００１６】
なお、本実施の形態にかかる符号化部１１５は、特許請求の範囲に記載の仮符号化手段および符号化手段に対応する。符号化データ１１８は、多重化器１１６において多重化された後、出力バッファ１１７により平滑化される。こうして出力バッファ１１７から出力される符号化データは、図示しない伝送系または蓄積系へ送出される。
【００１７】
量子化制御器１２０は、符号化部１１５の制御を行う。具体的には、量子化ステップ幅の初期値である基準量子化ステップ幅１２３を外部より取得する。さらに、入力画像信号１００を解析し、符号化歪すなわち、符号化誤差を劣化知覚歪閾値以下とするような量子化ステップ幅を決定する。そして、決定した量子化ステップ幅１２１を符号化部１１５に出力し、符号化部１１５に対し当該量子化ステップ幅での符号化を行わせる。ここで劣化知覚歪閾値とは、人間が視覚により認識し得るようになる符号化誤差の境界値である。
【００１８】
図２は、量子化制御器１２０の詳細な機能構成を示すブロック図である。量子化制御器１２０は、劣化知覚歪閾値計算器２０１と、量子化ステップ制御器２０２と、符号化誤差算出器２０５とを有している。
【００１９】
劣化知覚歪閾値計算器２０１は、例えば１フレーム単位の入力画像信号１００を例えばマクロブロック単位に分割する。そして、各マクロブロックの劣化知覚歪閾値２０３を計算する。ここで、劣化知覚歪閾値２０３とは、人間の視覚に与える画像劣化に対応する値である。すなわち、符号化誤差の値が劣化知覚歪閾値２０３よりも大きな値となると、人間が視覚により認識し得る画質の劣化が生じる。
【００２０】
なお、本実施の形態にかかる劣化知覚歪閾値は、特許請求の範囲に記載の視覚閾値に対応する。また、本実施の形態にかかる劣化知覚歪閾値計算器２０１は、特許請求の範囲に記載の視覚閾値算出手段に対応する。
【００２１】
劣化知覚歪閾値２０３は、具体的には、以下の式により算出される。
ｄ＝α×ｌｏｇ（ＥＡＮ）＋β    ・・・（式１）
ＳＡＤD＝ｅｘｐ（ｄ）    ・・・（式２）
ここで、ＳＡＤDは劣化知覚歪閾値２０３である。また、ＥＡＮは処理対象となっているマクロブロック内のエッジ強度である。
【００２２】
エッジ強度は以下の処理により算出される。すなわち、処理対象となっているマクロブロック内の各画素のエッジ強度の平均値を算出する。そして、フレームに含まれる各マクロブロックのエッジ強度の平均値の最大値を１とし、各マクロブロックのエッジ強度を０から１に正規化する。なお、本実施の形態においては、マクロブロック内の各画素のエッジ強度の平均値をエッジ強度と称する。
【００２３】
また、αおよびβは正の定数である。例えば、実際に画像を符号化した際に劣化を知覚したときの符号化歪の値から実験的に求めた値である。
【００２４】
図３は、（式１）に示すエッジ強度（ＥＡＮ）と劣化知覚歪閾値（ＳＡＤD）の関係を示すグラフを示している。図３のグラフに示す曲線４００は、劣化知覚歪閾値（ＳＡＤD）を示している。図３のグラフに示すように、エッジ強度が大きくなるほど、すなわちエッジが少ないマクロブロックほど劣化知覚歪閾値（ＳＡＤD）が大きくなる。
【００２５】
そこで、符号化誤差（ＳＡＤQP）が曲線４００で示される劣化知覚歪閾値（ＳＡＤD）よりも小さくなるように量子化ステップ幅を変更することにより、人間が視覚により認識し得る画質の劣化を低減することができる。
【００２６】
再び説明を図２に戻す。符号化誤差算出器２０５は、符号化部１１５から符号化データ１１８を取得する。さらに、外部から入力画像信号１００を取得する。そして、入力画像信号１００および符号化データ１１８に基づいて符号化誤差（ＳＡＤQP）を算出する。符号化誤差１２２は、量子化ステップ制御器２０２に出力される。
【００２７】
本実施の形態においては、符号化誤差算出器２０５は、符号化誤差（ＳＡＤQP）として現画像と符号化後の絶対差分和を算出する。なお、符号化誤差（ＳＡＤQP）は絶対差分和に限定されるものではなく、他の例としては絶対二乗誤差であってもよい。
【００２８】
量子化ステップ制御器２０２は、符号化部１１５に対し、基準量子化ステップ幅１２３で符号化処理を行わせる。さらに、量子化ステップ制御器２０２は、劣化知覚歪閾値２０３および符号化誤差１２２を取得する。そして、量子化ステップ制御器２０２は、符号化誤差１２２が劣化知覚歪閾値２０３より小さくなるまで量子化ステップ幅１２１の値を変更し、変更後の量子化ステップ幅において符号化部１１５に符号化処理を行わせる。
【００２９】
なお、本実施の形態にかかる量子化ステップ制御器２０２は、特許請求の範囲に記載の量子化ステップ幅変更手段に対応する。
【００３０】
図４は、符号化部１１５の詳細な機能構成を示すブロック図である。符号化部１１５は、減算器１０１と、直交変換器１０４と、量子化器１０６と、エントロピー符号化器１０８と、逆量子化器１０９と、逆直交変換器１１０と、加算器１１１と、フレームメモリ／予測画像生成器１１３とを有している。
【００３１】
減算器１０１は、入力画像信号１００と予測画像信号１０２との差分を算出し、予測誤差信号１０３を生成する。
【００３２】
直交変換器１０４は、生成された予測誤差信号１０３に対して、直交変換、例えば離散コサイン変換（ＤＣＴ）を施す。直交変換器１０４では直交変換係数１０５、例えばＤＣＴ係数情報が得られる。
【００３３】
量子化器１０６は、直交変換係数１０５を量子化し、量子化直交変換係数１０７を得る。量子化直交変換係数１０７は、エントロピー符号化器１０８および逆量子化器１０９の双方に出力される。
【００３４】
量子化直交変換係数１０７は、逆量子化器１０９及び逆直交変換器１１０により、量子化器１０６及び直交変換器１０４の処理と逆の処理を順次施され、予測誤差信号１０３と同様の信号とされた後、加算器１１１に送られる。加算器１１１は、逆直交変換器１１０から入力された信号と予測画像信号１０２とを加算することにより、局部復号画像信号１１２を生成する。局部復号画像信号１１２は、フレームメモリ／予測画像生成器１１３に入力される。
【００３５】
フレームメモリ／予測画像生成器１１３は、入力画像信号１００及び局部復号画像信号１１２からある予測モード情報に基づく予測画像信号を生成する。具体的には、フレームメモリ／予測画像生成器１１３は、加算器１１１からの局部復号画像信号１１２を一旦蓄積する。そして、フレーム内のブロック毎に入力画像信号１００とフレームメモリ／予測画像生成器１１３に蓄えられた局部復号画像信号１１２との間のマッチング（例えば、ブロックマッチング）を行い、動きベクトルを検出する。そして、この動きベクトルで補償された局部画像信号を用いて予測画像信号を作成する。
【００３６】
フレームメモリ／予測画像生成器１１３において生成された予測画像信号１０２は、選択された予測画像信号の動きベクトル情報／予測モード情報１１４とともにフレームメモリ／予測画像生成器１１３より出力される。
【００３７】
エントロピー符号化器１０８は、量子化直交変換係数１０７、動きベクトル情報／予測モード情報１１４に基づいて、エントロピー符号化を行う。なお、本実施の形態にかかるエントロピー符号化器１０８は、マクロブロック単位で符号化を行うが、符号化を行う単位はこれに限定されるものではなく、他の単位で行ってもよい。
【００３８】
図５は、量子化制御器１２０による量子化制御処理を示すフローチャートである。量子化制御器１２０は、まず入力画像信号１００を取得する。そして、取得した入力画像信号１００に基づいて、マクロブロックの劣化知覚歪閾値２０３を算出する（ステップＳ１００）。
【００３９】
次に、量子化制御器１２０は、外部から取得した基準量子化ステップ幅１２３を仮符号化における量子化ステップ幅として設定する（ステップＳ１０２）。次に、符号化部１１５は、設定された量子化ステップ幅において仮符号化を行う（ステップＳ１０４）。次に、仮符号化における符号化誤差（ＳＡＤQP）を算出する（ステップＳ１０６）。
【００４０】
次に、符号化誤差（ＳＡＤQP）と劣化知覚歪閾値（ＳＡＤD）とを比較する。符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）以上である場合には（ステップＳ１０８，Ｎｏ）、量子化ステップの幅を予め定めた量だけ狭くする（ステップＳ１２０）。そして、符号化部１１５は、ステップＳ１２０において変更された後の量子化ステップ幅において再度仮符号化を行う（ステップＳ１０４）。
【００４１】
符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さくなるまで（ステップＳ１０８，Ｙｅｓ）、ステップＳ１０４からステップＳ１２０までの処理を繰り返す。
【００４２】
そして、量子化制御処理により符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さくなると、このときの量子化ステップ幅を当該マクロブロックに対する量子化ステップ幅として決定する（ステップＳ１１０）。以上で、量子化制御処理が完了する。
【００４３】
そして、符号化部１１５は量子化制御処理により決定された量子化ステップ幅により符号化された結果を出力する。このように、劣化知覚歪閾値（ＳＡＤD）よりも小さい量子化ステップ幅において符号化を行うことにより、人間が視覚により認識し得る画像の劣化を低減することができる。
【００４４】
図６は、量子化制御処理をより詳細に説明するための図である。図６に示すように符号化誤差（ＳＡＤQP）の値が劣化知覚歪閾値（ＳＡＤD）以上である場合には、符号化により人間の視覚に認識し得る程度の歪みが発生する。この場合には、歪みを小さくする必要がある。そこで、ステップＳ１２０において量子化ステップの幅を一定量だけ小さくする。符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さくなるまでこの処理を繰り返すことにより、人間の視覚に認識し得る程度の歪みが生じない程度になるまで、すなわち符号化誤差（ＳＡＤQP）が劣化知覚歪閾値ＳＡＤD）よりも小さくなるまで量子化ステップの幅を狭くすることができる。
【００４５】
なお、本実施の形態においては、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値２０３より小さな値となるまで、量子化ステップ幅を一定量だけ狭くし、符号化を行うという処理を繰り返したが、最終的に符号化誤差（ＳＡＤQP）が劣化知覚歪閾値２０３より小さな値なるような量子化ステップ幅を決定できればよく、その方法は本実施の形態に限定されるものではない。
【００４６】
図７は、実施の形態１に係る画像符号化装置１０のハードウェア構成を示す図である。画像符号化装置１０は、ハードウェア構成として、画像符号化装置１０における画像符号化処理を実行する画像符号化プログラムなどが格納されているＲＯＭ５２と、ＲＯＭ５２内のプログラムに従って画像符号化装置１０の各部を制御するＣＰＵ５１と、画像符号化装置１０の制御に必要な種々のデータを記憶するＲＡＭ５３と、ネットワークに接続して通信を行う通信I／Ｆ５７と、各部を接続するバス６２とを備えている。
【００４７】
先に述べた画像符号化装置１０における画像符号化プログラムは、本実施の形態に特徴的な量子化制御処理を実行する量子化制御プログラムを含むプログラムである。画像符号化プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フロッピー（Ｒ）ディスク（ＦＤ）、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供されてもよい。
【００４８】
この場合には、画像符号化プログラムは、画像符号化装置１０において上記記録媒体から読み出して実行することにより主記憶装置上にロードされ、上記ソフトウェア構成で説明した各部が主記憶装置上に生成されるようになっている。
【００４９】
また、本実施の形態の画像符号化プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
【００５０】
（実施の形態２）
図８は、実施の形態２にかかる画像符号化装置１０の全体構成を示すブロック図である。実施の形態２にかかる画像符号化装置１０は、実施の形態１にかかる画像符号化装置１０の構成に加えて、さらに符号化制御器１１９を備えている。
【００５１】
符号化制御器１１９は、出力バッファ１１７のバッファ量１２５を監視する。そして、バッファ量に基づいて、符号化単位毎の符号量の割り当てを行う。そして、割り当てた符号量に応じたステップ幅である基準量子化ステップ幅１２４を量子化制御器１２０に出力する。なお、本実施の形態にかかる符号化制御器１１９は、特許請求の範囲に記載のデータ量監視手段と、量子化ステップ幅決定手段とに対応する。
【００５２】
図９は、基準量子化ステップ幅と劣化知覚歪閾値（ＳＡＤD）の関係を示すグラフとを示している。図９に示す曲線４１０，４１２，４１４はそれぞれ劣化知覚歪閾値（ＳＡＤD）を示している。図９に示すように、基準量子化ステップ幅が小さくなるにつれて、劣化知覚歪閾値（ＳＡＤD）は、曲線４１０から曲線４１４へと小さくなる。
【００５３】
符号化単位に割り当てられた符号量が多い場合には、符号化制御器１１９は、基準量子化ステップ幅を狭く設定する。このため、劣化知覚歪閾値（ＳＡＤD）は小さくなる。すなわち、人間の視覚により認識し得る画像の劣化を低減させることができる。一方、符号化単位に割り当てられた符号量が少ない場合には、基準量子化ステップ幅が広く設定される。このため、劣化知覚歪閾値が大きくなる。
【００５４】
このように、符号化制御器１１９により割り当てられた符号量に基づいて定まる基準量子化ステップ幅１２４により、劣化知覚歪閾値（ＳＡＤD）の値を決定することができる。また、符号量はバッファ量に基づいて符号量を決定する。すなわち、バッファ量により、劣化知覚歪閾値（ＳＡＤD）の値を決定することができる。
【００５５】
図１０は、実施の形態にかかる量子化制御器１２０による量子化制御処理を示すフローチャートである。まず、符号化制御器１１９は、バッファ量１２５に基づいて基準量子化ステップ幅を決定する（ステップＳ２０２）。次に、量子化制御器１２０は、入力画像信号１００および基準量子化ステップ幅１２４に基づいて、劣化知覚歪閾値（ＳＡＤD）の算出式（式１）の係数αの値を決定する（ステップＳ２０４）。
【００５６】
具体的には、式３により係数αを算出する。
α＝ａ×ＱＰ＿ｆｉｒｓｔ＋ｂ      （式３）
ここで、ＱＰ＿ｆｉｒｓｔは、基準量子化ステップ幅である。
【００５７】
図１１は、基準量子化ステップ幅と係数αとの関係を示すグラフを示している。このように、基準量子化ステップ幅が大きくなるほどαの値が大きくなり、結果として（式１），（式２）により算出される劣化知覚歪閾値（ＳＡＤD）が大きくなる。
【００５８】
なお、本実施の形態においては、劣化知覚歪閾値（ＳＡＤD）の算出式の係数αおよびβのうち、βを固定値とし、αを適応的に変動させることとしたが、他の例としては、αを固定値とし、βを適応的に変更させてもよい。
【００５９】
再び説明を図１０に戻す。αの値が決定されると、次に、量子化制御器１２０は、フラグｄＦｌａｇをＦａｌｓｅにセットする。また、ｃｏｕｎｔを０にセットする（ステップＳ２０６）。次に、量子化制御器１２０は、入力画像信号１００に基づいて、マクロブロックの劣化知覚歪閾値（ＳＡＤD）を算出する（ステップＳ２０８）。
【００６０】
次に、符号化部１１５は、量子化制御器１２０により設定された量子化ステップ幅、すなわち基準量子化ステップ幅において仮符号化を行う（ステップＳ２１０）。次に、仮符号化における符号化誤差（ＳＡＤQP）を算出する（ステップＳ２１２）。そして、ｃｏｕｎｔを１インクリメントする（ステップＳ２１４）。
【００６１】
次に、符号化誤差（ＳＡＤQP）と劣化知覚歪閾値（ＳＡＤD）とを比較する。符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも大きい場合には（ステップＳ２１６，Ｎｏ）、量子化ステップの幅を予め定めた量だけ狭くする（ステップＳ２２０）。さらに、ｄＦｌａｇにｆａｌｓｅをセットする（ステップＳ２２２）。そして、符号化部１１５は、より狭くなった量子化ステップ幅において再度仮符号化を行う（ステップＳ２１０）。
【００６２】
一方、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）以下である場合には（ステップＳ２１６，Ｙｅｓ）ｃｏｕｎｔが１であるか、またはｄＦｌａｇにｆａｌｓｅがセットされかつ基準量子化ステップ幅における符号化誤差（ＳＡＤQP＿ｆｉｒｓｔ）が劣化知覚歪閾値（ＳＡＤD）よりも小さい場合には（ステップＳ２１８，Ｙｅｓ）、量子化ステップの幅を予め定めた量だけ広くする（ステップＳ２３０）。さらに、ｄＦｌａｇにｔｒｕｅをセットする（ステップＳ２３２）。そして、符号化部１１５はより広くなった量子化ステップ幅において再度符号化を行う（ステップＳ２１０）。
【００６３】
そして、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）以下であり、かつｃｏｕｎｔが１でない場合（ステップＳ２１８，Ｎｏ）、または、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）以下であり、ｄＦｌａｇにｆａｌｓｅがセットされ、かつ初期量子化ステップ幅における符号化誤差（ＳＡＤQP＿ｆｉｒｓｔ）が劣化知覚歪閾値（ＳＡＤD）以上である場合には（ステップＳ２１８，Ｎｏ）、量子化制御処理が完了する。そして、符号化部１１５は量子化制御処理により決定された量子化ステップ幅により符号化された結果を出力する。
【００６４】
以上のように、量子化制御処理は、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さく、かつできるだけ劣化知覚歪閾値（ＳＡＤD）に近い値となるように量子化ステップ幅を増減しながら繰り返される。
【００６５】
図１２を参照しつつ量子化制御処理についてより具体的に説明する。図１２に示す点３１０は、マクロブロックＡにおける初期量子化ステップ幅における符号化誤差（ＳＡＤQP）を示している。このように、初期量子化パラメータで符号化した際の符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも大きい場合には、初期量子化パラメータで符号化した際の符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さくなるまで量子化ステップ幅を減じる。
【００６６】
さらに、符号量を低減させる観点からは、できるだけ劣化知覚歪閾値（ＳＡＤD）に近い値とするのが好ましい。すなわち、符号化誤差（ＳＡＤQP）が図１２に示す点３１２のように、劣化知覚歪閾値（ＳＡＤD）以下であって、かつ劣化知覚歪閾値（ＳＡＤD）に近い値となるような量子化ステップ幅を決定するのが好ましい。
【００６７】
一方、図１２に示す点３２０は、マクロブロックＢにおける基準量子化ステップ幅における符号化誤差（ＳＡＤQP）を示している。このように、基準量子化パラメータで符号化した際の符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さい場合には、基準量子化ステップ幅で符号化した際の符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さくかつ劣化知覚歪閾値（ＳＡＤD）に最も近い値となるような量子化ステップ幅を決定する。
【００６８】
このように、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）よりも小さい場合には、符号化誤差（ＳＡＤQP）が劣化知覚歪閾値（ＳＡＤD）に最も近い値となるように量子化ステップ幅を広くすることにより、劣化を知覚しにくい範囲内で符号量を小さく抑えることができる。
【００６９】
さらに、量子化ステップ幅を広くすることにより符号量を小さくした分、他のマクロフロックにおける量子化ステップ幅を狭くすることもできる。
【００７０】
なお、本実施の形態においては、量子化ステップを所定量ずつ増減させながら劣化知覚歪閾値（ＳＡＤD）に最も近い値となるように繰り返し処理を行ったが、劣化知覚歪閾値（ＳＡＤD）に最も近い値となればよく、その方法は本実施の形態に限定されるものではない。
【００７１】
また、本実施の形態においては、劣化知覚歪閾値（ＳＡＤD）より小さく、かつ劣化知覚歪閾値（ＳＡＤD）に最も近い値となるように量子化ステップの増減を繰り返すこととしたが、符号化を高速に行う観点からは、量子化ステップの増減回数をＮ回に制限してもよい。
【００７２】
実施の形態１においては、劣化知覚歪閾値を求める際に、（式１）の係数α，βをそれぞれ一意に設定し、（式１）より算出される劣化知覚閾値（ＳＡＤ）以下になるように量子化ステップ幅を決定し、当該量子化ステップ幅において符号化を行うため、出力される符号化ストリームの符号量は画像の特徴により異なるものとなる。これに対し、実施の形態２にかかる量子化制御処理においては、（式１）の係数α，βを符号化制御器１１９から与えられる基準量子化ステップ幅１２４に基づいて適応的に変更することにより、符号量を制御することができる。すなわち、人間の視覚により認識し得る符号化歪みを低減しつつかつ符号量を制御することができる。
【００７３】
以上、本発明を実施の形態を用いて説明したが、上記実施の形態に多様な変更または改良を加えることができる。
【００７４】
そうした第１の変更例としては、本実施の形態においては、劣化知覚歪閾値ＳＡＤをマクロブロック内のエッジ強度の平均値より算出したが、この方法に限らず、マクロブロックの輝度分散値を用いるなど、別の手法を用いて算出してもよい。
【００７５】
また、第２の変更例としては、本実施の形態においては、符号化単位をマクロブロックとし、マクロブロック毎に予測モード及び量子化パラメータの対を決定する例について記述したが、符号化単位は複数のマクロブロック単位や、スライス、フィールド、フレーム、ピクチャ、あるいはＧＯＰなど他の単位であってもよい。
【００７６】
また、本実施形態においては動画像符号化における量子化制御処理について説明したが、これにかえて、量子化制御処理を静止画像符号化や、多視点画像の符号化に適用してもよい。
【図面の簡単な説明】
【００７７】
【図１】実施の形態１にかかる画像符号化装置１０の機能構成を示す全体ブロック図である。
【図２】量子化制御器１２０の詳細な機能構成を示すブロック図である。
【図３】（式１）に示すエッジ強度（ＥＡＮ）と劣化知覚歪閾値（ＳＡＤD）の関係を示すグラフを示す図である。
【図４】符号化部１１５の詳細な機能構成を示すブロック図である。
【図５】量子化制御器１２０による量子化制御処理を示すフローチャートである。
【図６】量子化制御処理をより詳細に説明するための図である。
【図７】実施の形態１に係る画像符号化装置１０のハードウェア構成を示す図である。
【図８】実施の形態２にかかる画像符号化装置１０の全体構成を示すブロック図である。
【図９】基準量子化ステップ幅と劣化知覚歪閾値（ＳＡＤD）の関係を示すグラフとを示す図である。
【図１０】実施の形態２にかかる量子化制御器１２０による量子化制御処理を示すフローチャートである。
【図１１】初期量子化ステップ幅と係数αとの関係を示すグラフを示す図である。
【図１２】量子化制御処理についてより具体的に説明するための図である。
【符号の説明】
【００７８】
１０  画像符号化装置
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５７  通信I／Ｆ
６２  バス
１００  入力画像信号
１０１  減算器
１０２  予測画像信号
１０３  予測誤差信号
１０４  直交変換器
１０５  直交変換係数
１０６  量子化器
１０７  量子化直交変換係数
１０８  エントロピー符号化器
１０９  逆量子化器
１１０  逆直交変換器
１１１  加算器
１１２  局部復号画像信号
１１３  フレームメモリ／予測画像生成器
１１４  ベクトル情報／予測モード情報
１１５  符号化部
１１６  多重化器
１１７  出力バッファ
１１８  符号化データ
１１９  符号化制御器
１２０  量子化制御器
１２１  量子化ステップ幅
１２２  符号化誤差
１２３  初期量子化ステップ幅
１２４  基準量子化ステップ幅
１２５  バッファ量
２０１  劣化知覚歪閾値計算器
２０２  量子化ステップ制御器
２０３  劣化知覚歪閾値
２０５  符号化誤差算出器
【図１】
2006222861.tif 000003
【図２】
2006222861.tif 000004
【図３】
2006222861.tif 000005
【図４】
2006222861.tif 000006
【図５】
2006222861.tif 000007
【図６】
2006222861.tif 000008
【図７】
2006222861.tif 000009
【図８】
2006222861.tif 000010
【図９】
2006222861.tif 000011
【図１０】
2006222861.tif 000012
【図１１】
2006222861.tif 000013
【図１２】
2006222861.tif 000014