(57)【特許請求の範囲】
【請求項１】
圧縮対象画素の画素値をその周囲の圧縮済画素に対する画素値から予測する予測器を備え、該予測器の予測値と該圧縮対象画素の実際の画素値との予測誤差を所定の量子化ステップで量子化する画像圧縮装置であって、
前記圧縮対象画素の直前に圧縮された圧縮済画素と該直前に圧縮された圧縮済画素に隣接する周囲の圧縮済画素とのそれぞれの画素に対応する前記予測値と前記予測誤差の量子化値との和であるレベル値につき、該レベル値間の第一の差分値を算出し、該圧縮対象画素の位置が変更された後に該レベル値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段と、
前記特定画素レベル差評価手段による評価の結果、前記第一の差分値と前記第二の差分値が同じ値を示す場合、その時点で使用されていた量子化ステップよりも小さな量子化ステップで前記量子化を行うように量子化を制御する量子化切り替え手段と
からなることを特徴とする画像圧縮装置。
【請求項２】
少なくとも各画素に対する前記レベル値を１ライン分保持するバッファをさらに備え、前記特定画素レベル差評価手段は、前記圧縮対象画素と同一ライン上で直前に圧縮された圧縮済画素である第一の画素に対する前記レベル値と、該ラインの一つ前に圧縮処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記レベル値とを該バッファより得て、該レベル値間の差分値を前記第一又は第二の差分値として算出することを特徴とする請求項１記載の画像圧縮装置。
【請求項３】
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と、前記圧縮対象画素と同一ラインの一つ前に圧縮処理したライン上で前記圧縮対象画素と隣接する複数画素とのレベル値を前記バッファより得て、該画素相互間のレベル値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段をさらに備え、
前記量子化切り替え手段は、前記絶対値和評価手段による比較の結果、前記総和が前記閾値より小さい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを小さくし、前記総和が前記閾値より大きい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを大きくするように前記量子化を制御することを特徴とする請求項２記載の画像圧縮装置。
【請求項４】
圧縮対象画素の画素値を周囲の圧縮済画素に対する画素値から予測する予測器と、
該予測器により算出される予測値と該圧縮対象画素の実際の画素値とから算出された予測誤差を量子化する量子化器を備えた画像圧縮装置であって、
前記量子化器は、異なる量子化ステップで前記予測誤差を量子化するための複数の量子化テーブルを備えるとともに、
該量子化器に対して前記量子化テーブルを切り換えるための制御信号を出力する量子化テーブル切り換え手段と、
前記圧縮対象画素の直前に圧縮された圧縮済画素と該直前に圧縮された圧縮済画素に隣接する周囲の圧縮済画素とのそれぞれの画素に対応する前記予測値と前記予測誤差の量子化値との和であるレベル値につき、該レベル値間の第一の差分値を算出し、該圧縮対象画素の位置が変更された後に該レベル値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段とを備え、
前記特定画素レベル差評価手段は前記第一の差分値と前記第二の差分値が同じ値を示したことを検出した場合、前記量子化テーブル切り換え手段に対し、小さな量子化ステップで量子化するように量子化テーブルを切り換える指示信号を出力する
ことを特徴とする画像圧縮装置。
【請求項５】
少なくとも各画素に対する前記レベル値を１ライン分保持するバッファをさらに備え、前記特定画素レベル差評価手段は、前記圧縮対象画素と同一ライン上で直前に圧縮された圧縮済画素である第一の画素に対する前記レベル値と、該ラインの一つ前に圧縮処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記レベル値とを該バッファより得るように該バッファに電気的に接続されていることを特徴とする請求項４記載の画像圧縮装置。
【請求項６】
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と、前記圧縮対象画素と同一ラインの一つ前に圧縮処理したライン上で前記圧縮対象画素と隣接する複数画素とのレベル値を前記バッファより得て、該画素相互間のレベル値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段をさらに備え、
前記絶対値和評価手段は、評価の結果、前記総和が閾値より小さい場合には量子化ステップを小さくし、前記総和が閾値より大きい場合には量子化ステップを大きくするように前記量子化テーブルを切り換える指示信号を出力することを特徴とする請求項５記載の画像圧縮装置。
【請求項７】
前記特定画素レベル差評価手段は、前記同じ値の差分値が連続して出現したことをカウントするカウンタをさらに備えたことを特徴とする請求項４記載の画像圧縮装置。
【請求項８】
圧縮対象画素の画素値をその周囲の圧縮済画素に対する画素値から予測する予測器を備え、該予測器の予測値と該圧縮対象画素の実際の画素値との予測誤差を所定の量子化ステップで量子化するコンピュータを動作させるためのプログラムであって、該コンピュータを、
各画素に対応する前記予測値と前記予測誤差の量子化値との和であるレベル値を少なくとも１ライン分保持するバッファから、前記圧縮対象画素と同一ライン上で直前に圧縮された圧縮済画素である第一の画素に対する前記レベル値と、該ラインの一つ前に圧縮処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記レベル値とを読み出し、該レベル値間の第一の差分値を算出し、該圧縮対象画素の位置が変更された後に該レベル値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段と、
前記特定画素レベル差評価手段による評価の結果、前記第一の差分値と前記第二の差分値が同じ値を示す場合、その時点で使用されていた量子化ステップよりも小さな量子化ステップで前記量子化を行う制御情報を出力する量子化切り替え手段と
して動作させることを特徴とするプログラム。
【請求項９】
請求項８記載のプログラムは前記コンピュータをさらに、
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と、前記圧縮対象画素と同一ラインの一つ前に圧縮処理したライン上で前記圧縮対象画素と隣接する複数画素とのレベル値を前記バッファより読み出し、該画素相互間のレベル値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段として動作させ、
前記量子化切り替え手段は、前記絶対値和評価手段による比較の結果、前記総和が前記閾値より小さい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを小さくし、前記総和が前記閾値より大きい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを大きくするように前記量子化を制御する制御情報を出力することを特徴とする請求項８記載のプログラム。
【請求項１０】
復元対象画素の画素値をその周囲の復元済画素に対する画素値から予測する予測器を備え、該予測器の予測値と画像圧縮装置で予め算出された量子化番号を所定の量子化ステップで逆量子化することで得られる予測誤差量子化値との和を算出する画像復元装置であって、
前記復元対象画素の直前に復元された復元済画素と該直前に復元された復元済画素に隣接する周囲の復元済画素とのそれぞれの画素に対応する前記予測値と前記予測誤差量子化値との和である復元値につき、該復元値間の第一の差分値を算出し、該復元対象画素の位置が変更された後に該復元値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段と、
前記特定画素レベル差評価手段による評価の結果、前記第一の差分値と前記第二の差分値が同じ値を示す場合、その時点で使用されていた量子化ステップよりも小さな量子化ステップで前記逆量子化を行うように逆量子化を制御する量子化切り替え手段と
からなることを特徴とする画像復元装置。
【請求項１１】
少なくとも各画素に対する前記復元値を１ライン分保持するバッファをさらに備え、前記特定画素レベル差評価手段は、前記復元対象画素と同一ライン上で直前に復元された復元済画素である第一の画素に対する前記復元値と、該ラインの一つ前に復元処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記復元値とを該バッファより得て、該復元値間の差分値を前記第一又は第二の差分値として算出することを特徴とする請求項１０記載の画像復元装置。
【請求項１２】
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と、前記復元対象画素と同一ラインの一つ前に復元処理したライン上で前記復元対象画素と隣接する複数画素との復元値を前記バッファより得て、該画素相互間の復元値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段をさらに備え、
前記量子化切り替え手段は、前記絶対値和評価手段による比較の結果、前記総和が前記閾値より小さい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを小さくし、前記総和が前記閾値より大きい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを大きくするように前記逆量子化を制御することを特徴とする請求項１１記載の画像復元装置。
【請求項１３】
復元対象画素の画素値を周囲の復元済画素に対する画素値から予測する予測器と、
該予測器により算出される予測値と画像圧縮装置で予め算出された量子化番号を逆量子化し予測誤差量子化値を算出する逆量子化器を備えた画像復元装置であって、
前記逆量子化器は、異なる量子化ステップで前記逆量子化を行うための複数の逆量子化テーブルを備えるとともに、
該逆量子化器に対して前記逆量子化テーブルを切り換えるための制御信号を出力する量子化テーブル切り換え手段と、
前記復元対象画素の直前に復元された復元済画素と該直前に復元された復元済画素に隣接する周囲の復元済画素とのそれぞれの画素に対応する前記予測値と前記予測誤差量子化値との和である復元値につき、該復元値間の第一の差分値を算出し、該復元対象画素の位置が変更された後に該復元値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段とを備え、
前記特定画素レベル差評価手段は前記第一の差分値と前記第二の差分値が同じ値を示したことを検出した場合、前記量子化テーブル切り換え手段に対し、小さな量子化ステップで逆量子化するように逆量子化テーブルを切り換える指示信号を出力する
ことを特徴とする画像復元装置。
【請求項１４】
少なくとも各画素に対する前記復元値を１ライン分保持するバッファをさらに備え、前記特定画素レベル差評価手段は、前記復元対象画素と同一ライン上で直前に復元された復元済画素である第一の画素に対する前記復元値と、該ラインの一つ前に復元処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記復元値とを該バッファより得るように該バッファに電気的に接続されていることを特徴とする請求項１３記載の画像復元装置。
【請求項１５】
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と前記復元対象画素と同一ラインの一つ前に復元処理したライン上で前記復元対象画素と隣接する複数画素との復元値を前記バッファより得て、該画素相互間の復元値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段をさらに備え、
前記絶対値和評価手段は、評価の結果、前記総和が閾値より小さい場合には量子化ステップを小さくし、前記総和が閾値より大きい場合には量子化ステップを大きくするように前記逆量子化テーブルを切り換える指示信号を出力することを特徴とする請求項１４記載の画像復元装置。
【請求項１６】
前記特定画素レベル差評価手段は、前記同じ値の差分値が連続して出現したことをカウントするカウンタをさらに備えたことを特徴とする請求項１３記載の画像復元装置。
【請求項１７】
復元対象画素の画素値をその周囲の復元済み画素に対する画素値から予測する予測器を備え、該予測器の予測値と画像圧縮装置で予め算出された量子化番号を所定の量子化ステップで逆量子化することで得られる予測誤差量子化値との和を算出するコンピュータを動作させるためのプログラムであって、該コンピュータを、
各画素に対応する前記予測値と前記予測誤差量子化値との和である復元値を少なくとも１ライン分保持するバッファから、前記復元対象画素と同一ライン上で直前に復元された復元済画素である第一の画素に対する前記復元値と、該ラインの一つ前に復元処理したライン上で該第一の画素と同一の桁位置にある第二の画素に対する前記復元値とを読み出し、該読み出した復元値間の第一の差分値を算出し、該復元対象画素の位置が変更された後に該復元値間の第二の差分値を算出し、該第一の差分値と該第二の差分値が同じ値か否かを評価する特定画素レベル差評価手段と、
前記特定画素レベル差評価手段による評価の結果、前記第一の差分値と前記第二の差分値が同じ値を示す場合、その時点で使用されていた量子化ステップよりも小さな量子化ステップで前記逆量子化を行う制御情報を出力する量子化切り替え手段と
して動作させることを特徴とするプログラム。
【請求項１８】
請求項１７記載のプログラムは前記コンピュータをさらに、
前記特定画素レベル差評価手段による評価の結果、前記同じ値の差分値が所定回数以上連続しないと判断した場合、前記第一の画素と前記復元済画素と同一ラインの一つ前に復元処理したライン上で前記復元対象画素と隣接する複数画素との復元値を前記バッファより読み出し、該画素相互間の復元値の差分の絶対値の総和を算出し、該総和と閾値とを比較する絶対値和評価手段として動作させ、
前記量子化切り替え手段は、前記絶対値和評価手段による比較の結果、前記総和が前記閾値より小さい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを小さくし、前記総和が前記閾値より大きい場合にはその時点で使用されていた量子化ステップよりも量子化ステップを大きくするように前記逆量子化を制御することを特徴とする請求項１７記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特性の異なる２種類の画像（映画等の自然画と、デジタル地図等のＣＧ画像）両方に対して有効な、高画質リアルタイム画像圧縮装置、圧縮方法及び該圧縮を行うためのプログラム並びに圧縮画像データを復元する画像復元装置、復元方法及び該復元を行うためのプログラムに関する。
【背景技術】
【０００２】
膨大な情報量を含む画像情報を伝送するためにはデータ圧縮が必要である。特に動画像の場合は１秒間に３０〜６０フレーム程度の画像データが送受信されるため、データ圧縮が不可欠となる。
【０００３】
ところで、画像情報としては一般テレビ画像や映画等に代表される自然画と、カーナビの地図等に代表されるＣＧ画像が知られており、一般的に自然画では低周波成分が、またデジタル画像では高周波成分が多く含まれている。最近の車載端末や携帯電話を含む携帯端末では、地図などのデジタル画像と、ＴＶや映画などの自然画像との両方を扱うようになってきており、両方の画像データを効率的に伝送するためには、低周波成分と高周波成分の両方に効果的なデータ圧縮方式が望まれている。
【０００４】
従来の画像データ圧縮方式として、図１に示されるようなＤＰＣＭ予測器を用いた第１の従来技術が知られている。図１に示されるように、画像データ１１０を圧縮する場合、予測器（ＤＰＣＭ）２１０で対象画素の直前ラインと前画素の値とから予測対象画素の値を予測し、実際の画素値との予測誤差を代表値に変換して量子化器３１０で量子化し、出現頻度に応じた符号を割り当てる可変長符号化器４１０を介して伝送する。この方式では、画素単位で、量子化、符号化を行うため、高周波および低周波を問わずに適用することができる。しかし、予測値を直前ラインの値に基づいて算出するため、いずれかの時点で予測誤差が発生した場合に、誤差が次の予測時にそのまま利用されてしまい、結果として予測誤差が伝播してしまい、ラインに沿って画質劣化が生じてしまうという問題がある。
【０００５】
例えば、量子化器３１０が利用する量子化表が、予測誤差の値が−４〜４までのものを量子化予測誤差０とするような量子化表（すなわち、量子化の幅が粗い量子化表）であった場合には、予測器２１０によるいずれかの予測処理において−４〜４までの値の予測誤差が生じたとしても、量子化予測誤差を０とみなしてしまう。そのため、予測誤差が生じたという情報を量子化結果に盛り込むことができず、結果として、予測誤差がそのまま残り続けてしまう。このような予測誤差の伝播が発生すると、処理結果として出力される画像には、本来は無いはずのライン方向の線が生じてしまい、画質の劣化につながることになる。
【０００６】
また従来の画像データ圧縮方式として、図２に示されるようなＪＰＥＧ（Joint Photographic Experts Group），ＭＰＥＧ（Moving Picture Experts Group）によりデータ圧縮を行う第２の従来技術が知られている。この第２の従来技術に属する特許文献として、下記特許文献１及び２を挙げることができる。図２に示されるように、第２の従来技術は、入力画像１２０をブロック（通常８＊８画素）化１３０し、ブロック画像に対してＤＣＴ２２０をかけ、ＤＣＴ係数に対して量子化３２０を行い、出現頻度に応じた符号を割り当てる可変長符号化４２０して伝送する。ここでＤＣＴ（Discrete Cosine Transfer）変換とは、画像データを周波数変換する手法である。人間の目は低周波成分（画像中の平坦な部分）に敏感であるため、低周波に関するＤＣＴ係数は細かく、高周波に関するＤＣＴ係数は粗く量子化することで自然画に対しては画質劣化が目立たないように高い圧縮率で圧縮することが可能である。しかし、人間の目につきやすい低周波成分を細かく量子化するため自然画の圧縮については問題ないが、地図画像（ＣＧ画像）中の線、文字のような高周波成分に対しては画質劣化が目立つ。更に、圧縮対象ブロックに対してエッジ情報抽出２３０するので量子化誤差による画質劣化を見つけて、修正、フィードバックをかけることが出来ないという問題がある。
【０００７】
さらに従来の画像データ圧縮方式として、図示していないが、ＪＰＥＧ−ＬＳ（Lossless）を用いた第３の従来技術が知られている。この第３の従来技術は、ＭＥＤ（Median Edge Detector）予測器で値の予測を行い、その予測誤差を直接符号化するものである。この第３の従来技術では量子化は行わないため画質劣化は生じない。しかし、符号化時に計算処理を必要とするなど各処理が重く、リアルタイム圧縮には不向きであるという問題がある。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−１２６７７７号公報
【特許文献２】特開平６−３５０９９２号公報
【発明の開示】
【０００９】
上述した第１の従来技術であるＤＰＣＭを用いて量子化を単純に行うと、行方向（ライン方向）の量子化誤差が伝播する場合があるという課題があった。また上述した第２の従来技術であるＪＰＥＧ，ＭＰＥＧのようなＤＣＴによる変換符号化を行うものに関しては、ＣＧ画像に対する画質劣化が目立つという課題、更に、適応量子化を行うものではあるが、圧縮対象ブロックに対してエッジ抽出を行うので量子化誤差による画質劣化を見つけて、修正、フィードバックをかけることが出来ないという課題があった。さらに上述した第３の従来技術である、ＪＰＥＧ−ＬＳに関しては、量子化を行わないため画質劣化が生じないが各処理が重いのでリアルタイム処理に向かないという課題があった。
【００１０】
上記のような課題を解決するために本発明の目的は、周辺画素およびライン間の予測レベル値の連続性を考慮して量子化表を切り替えることで量子化誤差が原因で生じるライン間の画質劣化を抑える画像圧縮装置、圧縮方法及び該圧縮を行うためのプログラム並びに圧縮画像データを復元する画像復元装置、復元方法及び該復元を行うためのプログラムを提供することである。
【００１１】
本発明の画像圧縮装置は、圧縮対象画素の値をその周囲の圧縮済画素に対する値から予測する予測器を備え、該予測器の予測値と実際の画素の値との予測誤差を所定の量子化ステップで量子化する画像圧縮装置であって、前記圧縮対象画素の直前の圧縮済画素とその画素に隣接する周囲の圧縮済画素とのそれぞれの画素に対応する前記予測値と前記予測誤差の量子化値との和であるレベル値につき、該レベル値間の差分値を順次算出するとともに、該差分値の同一性を評価する特定画素レベル差評価手段と、前記特定画素レベル差評価手段による評価の結果、前記差分値が連続して同じ値を示す場合、その時点で使用されていた量子化ステップよりも小さな量子化ステップで前記量子化を行うように量子化を制御する量子化切り替え手段とを備えている。
【００１２】
こうすることで、量子化の過程で画質劣化が生じているかを画素単位で評価して、次の画素の量子化、符号化に即座にフィードバックすることによって、画質劣化が起きている場合は瞬時（数画素単位）に補正することが可能となる。
【００１３】
また量子化誤差が生じている場合は、行間で量子化ステップ分の同じ差分値が生じている場合が多いため、同じ値の差分値の連続性を評価して、量子化誤差が伝播していると判断した場合は即座にフィードバックして細かい量子化を行うことで、特にＣＧ画像で起こり易いエッジ近辺から画面の平坦な領域へ向けて生じる予測誤差の伝播を防ぐことが可能になる。
【００１４】
また前の行（ライン）と現在の処理対象の行（ライン）の画素の活性度として差分値の絶対値の和を算出し、和に応じて量子化ステップを粗くしたり、細かくしたりすることで、画質劣化を防ぎつつ圧縮効率を高めることが可能になる。
【００１５】
また本発明の画像復元装置及び画像復元方法は、上述した画像圧縮装置で圧縮された画像データを逆操作によって復元する。すなわち、逆量子化の過程で誤差伝播が生じているかを画素単位で評価して、次の画素の逆量子化、逆符号化に即座にフィードバックすることによって、圧縮時と同じタイミングで量子化テーブルを切り替える。
【００１６】
また前の行（ライン）と現在の処理対象の行（ライン）の画素の活性度としてレベル差の絶対値の和を算出することで、圧縮時と同じタイミングで量子化ステップを粗くしたり、細かくしたりする。
【００１７】
また本発明をコンピュータに実行させるためのプログラム、該プログラムを記憶した記憶媒体、コンピュータにより実現する方法も本発明に含まれる。
【図面の簡単な説明】
【００１８】
【図１】ＤＰＣＭ予測器を用いた第１の従来技術の概要を示す図である。
【図２】ＪＰＥＧ，ＭＰＥＧによりデータ圧縮を行う第２の従来技術の概要を示す図である。
【図３】本発明の原理構成に係る画像圧縮方式の動作流れ図である。
【図４】本発明の実施形態に係る画像データの圧縮（符号化）装置の構成を示すブロック図である。
【図５】本発明の実施形態に係る各種画像フォーマットにおける圧縮対象画素と周辺画素との配置関係を示す図である。
【図６Ａ】予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、細かい量子化ステップから成る第１の量子化テーブルである。
【図６Ｂ】予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、普通の量子化ステップから成る第２の量子化テーブルである。
【図６Ｃ】予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、粗い量子化ステップから成る第３の量子化テーブルである。
【図７】図４に示した連続性評価結果フィードバックモジュールの動作を説明するフローチャートである。
【図８】図４に示した周辺レベル差決定モジュールの動作を説明するフローチャートである。
【図９Ａ】本発明の実施形態に係る画像データの圧縮（符号化）装置の動作を説明するためのフローチャートである。
【図９Ｂ】図９ＡにおけるステップＳ００８における“ローカルデコーダ”の処理を説明するフローチャートである。
【図１０】本発明の実施形態に係る画像データの圧縮装置のシステム構成を示す機能ブロック図である。
【図１１】本発明の実施形態に係る画像データの復元（復号化）装置の構成を示すブロック図である。
【図１２Ａ】逆量子化器に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、細かい量子化ステップから成る第１の逆量子化テーブルである。
【図１２Ｂ】逆量子化器に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、普通の量子化ステップから成る第２の逆量子化テーブルである。
【図１２Ｃ】逆量子化器０３３に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、粗い量子化ステップから成る第３の逆量子化テーブルである。
【図１３】図１１に示した連続性評価結果フィードバックモジュールの動作を説明するフローチャートである。
【図１４】図１１に示した周辺レベル差決定モジュールの動作を説明するフローチャートである。
【図１５Ａ】本発明の実施形態に係る画像データの復元（復号化）装置の動作を説明するためのフローチャートである。
【図１５Ｂ】図１５ＡにおけるステップＳ０２８における“ローカルデコーダ”の処理を説明するフローチャートである。
【図１６】本発明の実施形態に係る画像データの復元装置のシステム構成を示す機能ブロック図である。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を、図面を参照しながら説明する。
図３は本発明の原理構成に係る画像圧縮方式の動作流れ図である。図３に示す本発明の原理構成における画像圧縮過程は、上述した第１の従来技術の構成と大きく異なる点は、適応量子化器３００を備え、予測対象画素Ｘの値と予測器２００による予測値Ｘ’との予測誤差を量子化器で量子化する場合、適応量子化器３００は、ライン間の注目画素のレベル値（予測値と予測誤差量子化値との和）の差分値の連続性、または周辺画素のレベル値の差の和に基づいて量子化ステップの異なる量子化表を適応的に選択する点である。そして適応的に選択した量子化表に基づいて量子化を行い、出現頻度に応じた符号を割り当てる可変長符号化器４００を介して伝送するものである。
【００２０】
図４は本発明の実施形態に係る画像データの圧縮（符号化）装置の構成を示すブロック図である。図４において、画像データ００１は、圧縮対象となる画素の集まりを表し、デジタルで画像を処理する画像処理装置（図示せず）によって抽出される。そして圧縮対象画素Ｘ（００２）は、現ステップで圧縮対象となる画素を表している。図５は画像フォーマットが、インターレース画像、または、プログレッシブ画像、であるときの圧縮対象画素Ｘと周辺画素（ライン間および前画素）との配置関係を示す図である。なお図５においてラインは破線で示されている。
【００２１】
量子化器００３は、ライン間の注目画素（本例では画素Ａ，Ｂ）の差分値の連続性、周辺画素のレベル差計測（本例では周辺画素のレベル差の絶対値の和）から量子化ステップの異なる量子化表を選択する量子化表切り替えモジュール０１７からの制御信号に基づいて選択された量子化表にしたがって圧縮対象画素Ｘ（００２）と予測値Ｘ’（００６）の差分値である“予測誤差”を量子化するものであり、予測誤差（Ｘ−Ｘ’）を入力として、予測誤差量子化値（単に、量子化値ともいう）と量子化番号を出力する。
【００２２】
図６Ａは、予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、細かい量子化ステップから成る第１の量子化テーブルである。図６Ｂは、予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、普通の量子化ステップ（第１の量子化テーブルのステップよりも広い量子化ステップ）から成る第２の量子化テーブルである。図６Ｃは、予測誤差（Ｘ−Ｘ’）に対する予測誤差量子化値及び量子化番号の対応付けを表す量子化テーブルであって、粗い量子化ステップ（第２の量子化テーブルのステップよりも広い量子化ステップ）から成る第３の量子化テーブルである。
【００２３】
上記において量子化ステップの幅は、予測誤差の絶対値が小さい場合ほど狭く、予測誤差の絶対値が大きい場合ほど広いのが望ましい。これは、一般的に予測誤差が小さい場合は予測が当たりやすい平坦な画像であり、逆に予測誤差が大きい場合は予測が外れやすいエッジ近傍である傾向があり、平坦な部分に誤差があると人の目に検知されやすいので、予測誤差が小さい場合にはステップ幅を狭くすることで、量子化誤差を小さくするためである。最小ステップ幅は０〜４程度が望ましい。
【００２４】
一方、予測誤差が大きい場合は、量子化のステップ幅を広くして圧縮効率を上げるようにする。このステップ幅は２４〜３２が望ましい。予測誤差が大きい場合は基本的には出現頻度が少なく、エッジ近傍の部分では予測誤差が大きくても平坦な部分で誤差がある場合より目立たないので、ステップ幅が広くても比較的問題にはならない。このようにしてステップ幅を広くして圧縮効率を上げる分、逆に平坦な部分には一層細かい量子化を行えるようにする。
【００２５】
例えば、図６Ａに示す細かいステップの第１の量子化テーブルでは予測誤差の絶対値は最小０に設定され、最大１１以上に設定されている。また図６Ｂに示す普通のステップの第２の量子化テーブルでは予測誤差の絶対値は最小２に設定され、最大２１以上に設定されている。また図６Ｃに示す粗いステップの第３の量子化テーブルでは予測誤差の絶対値は最小４に設定され、最大４１以上に設定されている。
【００２６】
なお図６Ａ、図６Ｂ、図６Ｃに示す予測誤差量子化値と量子化番号との対応付けは、圧縮側と復元側とで同じ対応になっている必要がある。そのため図６Ａ、図６Ｂ、図６Ｃに対応して予測誤差量子化値と量子化番号の対応付けを表す逆量子化テーブル（図１２Ａ、図１２Ｂ、図１２Ｃ参照）を復元側に持たせる。これについては後述する。また上記説明では量子化テーブルとして３つの例を示したが、これに限定されず、量子化ステップ幅の異なる量子化テーブルが２つ以上あればよい。
【００２７】
また、エッジの多い複雑な絵柄（画像）を圧縮すると所定の圧縮率に達しない場合があるので、量子化ステップ幅の異なる複数の量子化テーブルを有して、所定の圧縮率に達しなさそうな場合はステップ幅が全体的に粗い量子化テーブルを選択する適応量子化を行っても構わない。
【００２８】
可変長符号化器００４は、図６Ａ、図６Ｂ、図６Ｃのいずれかの量子化テーブルを参照して得られる量子化番号を入力として、可変長符号を出力する。圧縮符号バッファ００５は可変長符号化器００４の出力を蓄積するバッファである。予測値００６は、予測器０１８によって算出された予測値である。
【００２９】
周辺画素Ａ（００７）に格納されているのは、図５に示されているように、圧縮対象画素Ｘの左の画素（すなわち画素Ｘと同一ライン上で直前に処理した画素に対応する値として、該画素に対する予測値と、該画素値と該予測値との差分（予測誤差）を量子化した値である予測誤差量子化値との和）である。予測用１ライン分バッファ００８は、予測用として量子化結果（すなわち各画素に対応する値として予測値と予測誤差量子化値との和）を約１ライン分保持するバッファで、例えばシフトレジスタで構成される。
【００３０】
また、周辺画素Ｄ（００９）に格納されているのは、圧縮対象画素Ｘの右上の画素、すなわち、１つ前に処理したラインの中で１つ後ろの列の画素に対する予測値と予測誤差量子化値との和である。周辺画素Ｃ（０１０）に格納されているのは、圧縮対象画素Ｘの上の画素、すなわち、１つ前に処理したラインの中で同じ列の画素に対する予測値と予測誤差量子化値との和である。周辺画素Ｂ（０１１）に格納されているのは、圧縮対象画素Ｘの左上の画素、すなわち、１つ前に処理したラインの中で１つ前の列の画素に対する予測値と予測誤差量子化値との和である。周辺画素Ｅ（０１２）に格納されているのは、周辺画素Ｂ（０１１）の左の画素、すなわち、１つ前に処理したラインの中で２つ前の列の画素に対する予測値と予測誤差量子化値との和である。なお、元画像で見ると、図５で示すように、周辺画素Ｄ、周辺画素Ｃ、周辺画素Ｂ、周辺画素Ｅのそれぞれは、圧縮対象画素Ｘにとって、インターレース画像の場合には２ライン上にあたり、プログレッシブ画像の場合には１ライン上にあたる。
【００３１】
そして連続性評価結果フィードバックモジュール０１３は、周辺画素Ａ（００７）、Ｂ（０１１）に格納されている値をもとにレベル差（Ａ（００７）とＢ（０１１）との差分値）を計測し、該差分値の連続性の評価を行い、規定回数以上、同一レベル差が連続する場合は細かい量子化テーブルを使用するように制御信号０１４を出力する。
【００３２】
この処理においては、画質劣化が目立つ前に細かい量子化テーブルに切り替えた方が良いので、レベル差の連続性の評価をどのような回数で判断するかについては、画像サイズと比較して小さい方が望ましい。例えば、横方向が７２０画素のような画像では、長さ６画素の横方向の線状の画質劣化が生じると、人の目に検知されやすいので、それ以下の値に設定することが望ましい。本実施形態では例として４画素処理分としている。
【００３３】
図７は図４に示した連続性評価結果フィードバックモジュール０１３の動作を説明するフローチャートである。図７のステップＳ０４１では、レベル差Ｂ−Ａと前回レベル差（すなわち一つ前に処理した際のレベル差Ｂ−Ａに相当するレベル差であるので、現処理で言えば、Ｅと図５の画素Ａの左側の画素とのレベル差に相当する）を比較する。ステップＳ０４２では、レベル差Ｂ−Ａと前回レベル差が同じかを判定する。同じでなければ、ステップＳ０４３で同一値連続カウンタに１をセットしてステップＳ０４５に進む。また同じであれば、ステップＳ０４４に進み、ステップＳ０４４において同一値連続カウンタに１加算を行う。
【００３４】
ステップＳ０４５では、同一値連続カウンタが４以上かを判定する。カウンタの値が４以上であれば、ステップＳ０４６に進み、ステップＳ０４６において、細かい量子化ステップの量子化テーブルを示す制御信号“０００”を送信して処理を終了する。Ｓ０４５でカウンタの値が４以上であるということは、同じ値のレベル値が所定回数以上連続しており、予測誤差が伝播していることが疑われる状態であるため、図７に示す処理では、より細かい量子化ステップの量子化テーブルに切替えることで、予測レベル値の誤差をより細かく検出できるようにするものである。従って、本当に予測誤差の伝播が発生している場合には、この処理による量子化テーブルの切り替えによって、それ以上予測誤差を伝播させないようにすることが可能になる。
【００３５】
なお、予測誤差が伝播しているのではなく、処理対象としている画像が、本当に同じレベル差が連続するような画像であった場合であっても、細かい量子化テーブルに切替えることは何ら問題を生じさせるものではない。
【００３６】
またカウンタの値が４以上でなければ、ステップＳ０４７に進み、ステップＳ０４７においては、制御を周辺レベル差検出モジュール０１５に移管して処理を終了する。
上記したように制御信号０１４は、細かい量子化ステップを示す制御信号“０００”か、あるいは周辺レベル差検出モジュール０１５を作動させることを示す制御信号を示すものである。
【００３７】
周辺レベル差決定モジュール０１５は、周辺画素のレベル差（各画素に対応する予測値と予測誤差量子化値との和（＝レベル値）の差分値）の絶対値の和を算出し、これを閾値と比較することで、どの量子化テーブルを使うかを決定する。決定後、制御信号０１６を送信する。すなわち、制御信号０１６は、下記のような制御信号を送信する。
【００３８】
制御信号０００：細かい量子化ステップの量子化テーブルの使用時に送信
制御信号００１：普通の量子化ステップの量子化テーブルの使用時に送信
制御信号０１０：粗い量子化ステップの量子化テーブルの使用時に送信
図８は図４に示した周辺レベル差決定モジュール０１５の動作を説明するフローチャートである。図８のステップＳ０５１では、レベル差Ｄ−Ｃ、レベル差Ｃ−Ｂ、レベル差Ｂ−Ａ、レベル差Ｂ−Ｅの各絶対値の和であるＮｄｓｕｂを算出する。ステップＳ０５２ではＮｄｓｕｂが１５以下であるかを判定する。Ｎｄｓｕｂが１５以下であれば、ステップＳ０５３に進み、ステップＳ０５３において細かい量子化ステップの量子化テーブルを示す制御信号“０００”を送信して処理を終了する。すなわち、活性度の低い画像（平坦な画像）では、少しでも画像劣化が生じると人の目に検知されやすいので、そのような活性度の低い画像に対しては、細かい量子化テーブルを利用することで、精度の高い符号化を行うようにする。
【００３９】
Ｎｄｓｕｂをどのような値で判定するかについては、上記説明では１５という閾値を用いているが、これに限るものではない。一般的に、画素レベル差が２〜４程度あると人の目に検知されやすい。ここでは４つのレベル差の絶対和を取っているため、人の目に検知されやすい画素レベル差の合計は８（すなわち２×４）〜１６（すなわち４×４）の範囲となる。上記判定に用いる閾値は、活性度の低い画像（平坦な画像）における誤差伝播を抑止するためのものなので、上記８〜１６の範囲内において閾値（上記では１５）を決定すればよい。
【００４０】
またＮｄｓｕｂが１５以下でなければ、ステップＳ０５４に進み、ステップＳ０５４においてＮｄｓｕｂが１２８以上であるかを判定する。Ｎｄｓｕｂが１２８以上でなければ、ステップＳ０５５に進み、ステップＳ０５５において普通の量子化ステップの量子化テーブルを示す制御信号“００１”を送信して処理を終了する。またＮｄｓｕｂが１２８以上であれば、ステップＳ０５６に進み、ステップＳ０５６において粗い量子化ステップの量子化テーブルを示す制御信号“０１０”を送信して処理を終了する。すなわち、活性度の高い画像（平坦な部分が少ない画像）では、多少の画像劣化が生じたとしても人の目には分かりにくいので、そのような活性度の高い画像に対しては、粗い量子化テーブルを利用することで、高速な符号化を行うようにする。
【００４１】
Ｎｄｓｕｂをどのような値で判定するかについては、上記説明では１２８という閾値を用いているが、これに限るものではない。一般的に、活性度の高い画像（平坦な部分が少ない画像）における量子化ステップ幅は２４〜３２に設定されているので、上記４つのレベル差の絶対和はその４倍、すなわち９６〜１２８の範囲となる。この範囲内において閾値（上記では１２８）を決めて、これにより粗い量子化ステップの第３の量子化テーブルと普通の量子化ステップの第２の量子化テーブルの使用を区分けすればよい。
【００４２】
なお、本実施形態では制御信号として３ビットの制御信号（０００），（００１），（０１０）を対応付けているが、異なる量子化ステップの量子化テーブルを指示できるものであれば、このような形式の制御信号でなくても構わない。また量子化テーブルも上記のような細かい、粗い、普通の量子化ステップの量子化テーブルに限らず、さらに細分して４つ以上の量子化テーブルを備えること、または、細かい、粗い、の２種類の量子化テーブルを備えるだけでもよく、要は２種類以上の異なる量子化ステップ幅で量子化を行えば良い。
【００４３】
次に量子化表切り替えモジュール０１７は、２つの制御信号０１４，０１６に従って量子化表を切り替える制御信号を量子化器００３に出力する。予測器０１８は、周辺画素Ａ（００７）、Ｂ（０１１）、Ｃ（０１０）をもとに圧縮対象画素Ｘの予測値Ｘ’を算出する。
【００４４】
図９Ａは、本発明の実施形態に係る画像データの圧縮（符号化）装置の動作を説明するためのフローチャートである。図９Ｂは、図９ＡにおけるステップＳ００８における“ローカルデコーダ”の処理を説明するフローチャートである。図９Ａおよび図９ＢにおいてはステップをＳと略記する。
【００４５】
図９Ａにおけるステップの説明に入る前に本例では全画像データ分について処理が終了するまでループすることを前提としていることに注意されたい。
Ｓ００１：画像データ００１から圧縮対象画素Ｘ（００２）を取得する。
Ｓ００２：連続性評価結果フィードバックモジュール０１３で、周辺画素Ａ（００７），Ｂ（０１１）をもとにレベル差（すなわち画素Ａに対する予測値と予測誤差量子化値との和と画素Ｂに対する予測値と予測誤差量子化値との和との差分値）を計測し、連続性の評価を行い、規定回数以上同一レベル差が連続する場合は細かい量子化テーブルを使用する制御信号０１４を量子化表切り替えモジュール０１７に出力する。そうでない場合は、Ｓ００３に進む。
Ｓ００３：周辺レベル差検出モジュール０１５で周辺レベル差（すなわち各周辺画素に対応するレベル値の周辺画素間での差分値）の絶対値の和を検出し、周辺画素に関するレベル差の絶対値の和を評価して量子化テーブルを決定する制御信号０１６を量子化表切り替えモジュール０１７に出力する。
Ｓ００４：予測器０１８で圧縮対象画素Ｘ（００２）の予測値Ｘ’（００６）を算出する。
Ｓ００５：圧縮対象画素Ｘ（００２）から予測値Ｘ’（００６）を減算する。
Ｓ００６：予測誤差を量子化表切り替えモジュール０１７で決定された量子化テーブルに入力し、予測誤差量子化値（図６Ａ〜図６Ｃ参照）を算出する。
Ｓ００７：可変長符号化器００４で量子化番号をもとに符号生成する。この符号はＧｏｌｏｍｂ符号でも算術符号でも構わないものとする。
Ｓ００８：次の画素を圧縮するために、周辺画素Ａ（００７），Ｂ（０１１），Ｃ（０１０）と予測用ラインバッファ００８を更新（ローカルデコーダ）する。
Ｓ００９：周辺画素Ｂ（０１１）を次の圧縮対象画素の周辺画素Ｅ（０１２）として代入する。
Ｓ０１０：周辺画素Ｃ（０１０）を次の圧縮対象画素の周辺画素Ｂ（０１１）として代入する。
Ｓ０１１：周辺画素Ｄ（００９）を次の圧縮対象画素の周辺画素Ｃ（０１０）として代入する。
Ｓ０１２：予測用１ライン分バッファ００８から次の圧縮対象画素の周辺画素Ｄ（００９Ｓ０１３：周辺画素Ａ（００７）を予測用１ライン分バッファ００８に代入する。
Ｓ０１４：量子化値（すなわちＳ００６で算出した圧縮画素Ｘ（００２）に対する予測誤差量子化値）と予測値Ｘ’（００６）とを加算し、次の圧縮対象画素の周辺画素Ａ（００７）として代入する。
【００４６】
図１０は、本発明の実施形態に係る画像データの圧縮装置をコンピュータにより実現する場合のシステム構成を示す機能ブロック図であり、上記で説明した内容を機能化してブロックで表現したものである。図１０において本発明の実施形態に係る画像データの圧縮装置は、圧縮処理すべき画像データ１０２を圧縮処理部１１０に入力し、圧縮処理部１１０では、まず入力された画像データ１０２をライン毎に読込部１１１で読み込んで圧縮対象画素を抽出し、抽出した圧縮対象画素を予測処理部１１２に入力する。
【００４７】
予測処理部１１２では、予測器が予測した当該圧縮対象画素の予測値を当該圧縮対象画素の値から減算して予測誤差を算出する一方、評価部１１３の、図４の連続性評価結果フィードバックモジュール０１３に相当する連続性評価部１１４が当該圧縮対象画素に係る２つの特定周辺画素のレベル差が連続しているかを評価し、規定回数以上同一レベル差が連続する場合には、例えば図６Ａに示すような細かい量子化テーブル１１９を使用するための制御信号を生成する。また評価部１１３の図４の周辺レベル差検出モジュール０１５に相当する周辺評価部１１５が当該圧縮対象画素の予測値を算出する画素の周辺の画素を含めたそれぞれ２つの周辺画素のレベル差の絶対値の和を検出するとともに、レベル差と利用すべき量子化テーブルの情報とを対応付けて管理するレベル差テーブル１１６を参照して周辺レベル差の絶対値の和を評価していずれの量子化テーブル１１９を使用するかの制御信号を切替処理部１１７にそれぞれ入力する。
【００４８】
量子化表切り替えモジュール０１７に相当する切替処理部１１７では、入力された制御信号に基づいて量子化テーブル１１９の切り替えを量子化処理部１１８に指示し、量子化処理部１１８では量子化テーブル１１９を切り替え、すなわち参照先とする量子化テーブル１１９を変更し、切り替えた量子化テーブル１１９を用いて予測誤差量子化値を算出し、量子化処理部１１８の出力として、可変長符号化器００４に相当する符号化処理部１２０に入力し、符号化処理部１２０では入力された予測誤差量子化値に基づいて圧縮符号を生成し、生成した圧縮符号を圧縮処理部１１０の出力として蓄積して圧縮データ１０４を得るものである。
【００４９】
上述の図１０に示した画像データの圧縮装置における処理は、プログラムとして記述されて読み込まれることでコンピュータ上で実現できることはいうまでもない。その場合コンピュータのハードウェア資源としては、図示していないが各種レジスタ、ＡＬＵを含む演算装置、ＲＡＭ、ＲＯＭ、Ｉ／Ｏなどが用いられる。また上述した各モジュール、予測器、量子化テーブルを含む量子化器、符号器などを１チップＬＳＩ化して画像データの圧縮装置として各種アプリケーションに利用可能である。
【００５０】
このように本発明の画像圧縮装置によれば、既に量子化した画素レベル値（すなわち各画素に対応する予測値と予測誤差量子化値との和）を１ライン分保持する予測用バッファを利用し、これをもとに画素単位で量子化、符号化すると同時に、量子化の過程で画質劣化が生じているかを画素単位で評価して、次の画素の量子化、符号化に即座にフィードバック（量子化テーブルの切り替えを実行）する。量子化誤差による画質劣化が生じている場合には、量子化テーブルをステップ幅が細かいものに切替えて量子化することにより、量子化誤差が解消される（もしくは減少される）ので、画質劣化が起きている場合は瞬時（数画素単位）に補正することが可能となる。
【００５１】
量子化誤差が生じている場合は、行間で量子化ステップ分の同じレベル差が生じている場合が多い。このため、同じ値のレベル差の連続性を評価して、量子化誤差が伝播していると判断した場合は量子化テーブルを切替えて細かい量子化を行うことで、例えば本来は画像上には存在しないライン（画像上の横線）なのに、エッジ近辺から生じてしまうライン（横線）を発生させる原因となる予測誤差の伝播を防ぐことが可能になる。
【００５２】
また、ＤＶＤに記録されている映画のような自然画像では、レベル差の変動がそれ程ない平坦な画像（人肌など）で画質劣化が生じると目立ちやすく、一方で活性度の多い（すなわち画素値の変動が大きい）画像で画質劣化が生じても目立ちにくい。このため、前の行（ライン）の画素と今の（現在処理対象としている）行（ライン）の画素とのレベル差の絶対値の和を算出することで、該和に応じて量子化ステップを粗くしたり、細かくしたりして、画質劣化を防ぎつつ圧縮効率を高めることが可能になる。
【００５３】
また本発明の画像圧縮装置によれば、特定画素における同一レベル差が連続して出現しているかをカウンタという簡易な装置で検出し、同一レベル差が所定回数以上、例えば４回連続して、出現した場合に細かい量子化を行う量子化テーブルを選択するように制御すれば、行（ライン）方向の画質劣化が生じる（人により検知されるような大きな画質劣化に至る）前に補正することが可能となる。
【００５４】
また本発明の画像圧縮装置によれば、画素レベル値を１ライン分保持する予測用バッファを利用して圧縮対象画素の周辺画素のレベル差の絶対値の和を算出し、その値を元に量子化表切り替えモジュールにどの量子化テーブルを使うかを示す制御信号を送信するので、圧縮対象画素周辺の活性度（周辺画素の画素レベル差の絶対値の和）をもとに量子化器に即座にフィードバックをかけることが可能になる。
【００５５】
さらに本発明の画像圧縮装置によれば、量子化表を切り替える制御信号で量子化表の切り替えを実行するようにしたので、レベル差の連続性および圧縮対象画素周辺の活性度で量子化の細かさがそれぞれ異なる３種類の量子化テーブル、すなわち細かい、普通、粗い量子化表を使い分けることが可能となる。また、より細かい制御を行う場合は、量子化表を３種類ではなく更に多いものにしても同じ効果が得られることは明らかである。
【００５６】
なお、本発明の画像圧縮装置は、処理対象とする画像がプログレッシブ画像の場合はフレーム単位で、インターレース画像の場合にはフィールド単位で画面の上部から下部へ向けた順で、ストリーム状に流れてくる画像データを処理対象とする。また、圧縮符号化後の圧縮データは、本装置が接続している伝送路の伝送規約に従って、一定のサイズ毎にパケット化されて本装置から転出されることになる。
【００５７】
図１１は本発明の実施形態に係る画像データの復元（復号化）装置の構成を示すブロック図である。図１１において、圧縮符号０３１は、上記した図４で可変長符号化された画像データの圧縮符号を表している。そして逆符号化器０３２は、可変長符号化された画像データの圧縮された符号を入力として、その符号に該当する量子化番号を出力する。逆量子化器０３３は、量子化番号を入力として、予測誤差量子化値Ｘ（０３４）を出力する。
【００５８】
図１２Ａは、逆量子化器０３３に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、細かい量子化ステップから成る第１の逆量子化テーブルである。図１２Ｂは、逆量子化器０３３に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、普通の量子化ステップ（第１の逆量子化テーブルのステップよりも広い量子化ステップ）から成る第２の逆量子化テーブルである。図１２Ｃは、逆量子化器０３３に備えられた上記量子化番号に対する予測誤差量子化値の対応付けを表す逆量子化テーブルであって、粗い量子化ステップ（第２の逆量子化テーブルのステップよりも広い量子化ステップ）から成る第３の逆量子化テーブルである。なお図１２Ａ、図１２Ｂ、図１２Ｃに示す予測誤差量子化値と量子化番号との対応付けは、復元側、圧縮側とで同じ対応になっている必要がある。そのため図１２Ａ、図１２Ｂ、図１２Ｃに対応して圧縮側に予測誤差量子化値と量子化番号の対応付けを表す量子化テーブル（図６Ａ、図６Ｂ、図６Ｃ参照）を備えている。また上記説明では逆量子化器として３つの例を示したが、これに限定されず、圧縮側で説明したのと同様に、量子化ステップ幅の異なる逆量子化テーブルが２つ以上あればよい。
【００５９】
画像フォーマットが、インターレース画像、または、プログレッシブ画像、であるときの復元対象画素Ｘと周辺画素（ライン間および前画素）との配置関係は、図５に示した圧縮対象画素Ｘと周辺画素（ライン間および前画素）との配置関係と同じである。ただし、図５における圧縮対象画素は、復元対象画素と読み替える。
【００６０】
予測誤差量子化値Ｘ（０３４）は、予測器０４８によって算出された予測値Ｘ’（０３６）と加算されて復元画像データ０３５が得られるとともに、次の復元対象画素の周辺画素Ａ（０３７）にもなる。
【００６１】
周辺画素Ａ（０３７）に格納されているのは、図５に示される周辺画素Ａのように、復元対象画素の左の画素（すなわち画素Ｘと同一ライン上で直前に処理した画素に対応する値として、該画素にたいする予測値と、該画素値と該予測値との差分（予測誤差）を量子化した値である予測誤差量子化値との和）である。予測用１ライン分バッファ０３８は、予測用として量子化結果（すなわち各画素に対応する値として予測値と予測誤差量子化値との和）を約１ライン分保持するバッファで、例えばシフトレジスタで構成される。また、図５に示される周辺画素Ｄ，Ｃ，Ｂ，Ｅのように、周辺画素Ｄ（０３９）に格納されているのは、復元対象画素の右上（前ライン）の画素に対する予測値と予測誤差量子化値との和であり、周辺画素Ｃ（０４０）に格納されているのは、復元対象画素の上（前ライン）の画素に対する予測値と予測誤差量子化値との和であり、周辺画素Ｂ（０４１）に格納されているのは、復元対象画素の左上（前ライン）の画素に対する予測値と予測誤差量子化値との和であり、周辺画素Ｅ（０４２）に格納されているのは、周辺画素Ｂ（０４１）の左の前ライン上の画素に対する予測値と予測誤差量子化値との和である。
【００６２】
連続性評価結果フィードバックモジュール０４３は、周辺画素Ａ（０３７），Ｂ（０４１）に格納されている値をもとにレベル差（Ａ（０３７）とＢ（０４１）との差分値）を計測し、該差分値の連続性の評価を行い、規定回数以上、同一レベル差が連続する場合は細かい逆量子化テーブル（図１２Ａに示す第１の逆量子化テーブル）を使用するように制御信号０４４を出力する。
【００６３】
圧縮時と同様に、この処理においては、画質劣化が目立つ前に細かい逆量子化テーブルに切り替えた方が良いので、連続性の評価をどのような回数で判断するかについては、画像サイズと比較して小さい方が望ましい。例えば、横方向が７２０画素のような画像では、長さ６画素の横方向の線状の画質劣化が生じると、人の目に検知されやすいので、それ以下の値に設定することが望ましい。本実施形態では４画素処理分としている。
【００６４】
図１３は図１１に示した連続性評価結果フィードバックモジュール０４３の動作を説明するフローチャートである。図１３の処理は圧縮側の処理である図７の処理と同内容の処理である。図１３のステップＳ０６１では、レベル差Ｂ−Ａと前回レベル差（すなわち一つ前に処理した際のレベル差Ｂ−Ａに相当するレベル差であるので、現処理で言えば、Ｅと図５の画素Ａの左側の画素とのレベル差に相当する）を比較する。ステップＳ０６２では、レベル差Ｂ−Ａと前回レベル差が同じかを判定する。同じでなければ、ステップＳ０６３で同一値連続カウンタに１をセットしてステップＳ０６５、に進む。また同じであれば、ステップＳ０６４に進み、ステップＳ０６４において同一値連続カウンタに１加算を行う。ステップＳ０６５では、同一値連続カウンタが４以上かを判定する。カウンタの値が４以上であれば、ステップＳ０６６に進み、ステップＳ０６６において、細かい量子化ステップの逆量子化テーブルを示す制御信号“０００”を送信して処理を終了する。またカウンタの値が４以上でなければ、ステップＳ０６７に進み、ステップＳ０６７においては、制御を周辺レベル差検出モジュール０４５に移管して処理を終了する。
【００６５】
上記したように制御信号０４４は、細かい量子化ステップを示す制御信号“０００”か、あるいは周辺レベル差検出モジュール０４５を作動させることを示す制御信号を示すものである。
【００６６】
周辺レベル差決定モジュール０４５は、周辺画素のレベル差（各画素に対応する予測値と予測誤差量子化値との和（＝レベル値）の差分値）の絶対値の和を算出し、これを閾値と比較することで、どの逆量子化テーブルを使うかを決定する。決定後、制御信号０４６を送信する。すなわち、制御信号０４６は、下記のような制御信号を送信する。
【００６７】
制御信号０００：細かい量子化ステップの逆量子化テーブルの使用時に送信
制御信号００１：普通の量子化ステップの逆量子化テーブルの使用時に送信
制御信号０１０：粗い量子化ステップの逆量子化テーブルの使用時に送信
図１４は図１１に示した周辺レベル差決定モジュール０４５の動作を説明するフローチャートである。図１４の処理は圧縮側の処理である図８の処理と同内容の処理である。図１４のステップＳ０７１では、レベル差Ｄ−Ｃ、レベル差Ｃ−Ｂ、レベル差Ｂ−Ａ、レベル差Ｂ−Ｅの各絶対値の和であるＮｄｓｕｂを算出する。ステップＳ０７２ではＮｄｓｕｂが１５以下であるかを判定する。Ｎｄｓｕｂが１５以下であれば、ステップＳ０７３に進み、ステップＳ０７３において細かい量子化ステップの逆量子化テーブルを示す制御信号“０００”を送信して処理を終了する。
【００６８】
またＮｄｓｕｂが１５以下でなければ、ステップＳ０７４に進み、ステップＳ０７４においてＮｄｓｕｂが１２８以上であるかを判定する。Ｎｄｓｕｂが１２８以上でなければ、ステップＳ０７５に進み、ステップＳ０７５において普通の量子化ステップの逆量子化テーブルを示す制御信号“００１”を送信して処理を終了する。またＮｄｓｕｂが１２８以上であれば、ステップＳ０７６に進み、ステップＳ０７６において粗い量子化ステップの逆量子化テーブルを示す制御信号“０１０”を送信して処理を終了する。Ｎｄｓｕｂを判定する閾値をどのような値にするかについては１５や１２８という値に限るものではないこと、またどのような範囲の値が望ましいかについては、圧縮処理に関し上述したのと同様である。なお、当然ながら、Ｎｄｓｕｂを判定する閾値は圧縮処理と復元処理とで同一にする必要がある。
【００６９】
なお、本実施形態では制御信号として３ビットの制御信号（０００），（００１），（０１０）を対応付けているが、異なる量子化ステップの逆量子化テーブルを指示できるものであればこのような形式の制御信号でなくても構わない。また逆量子化テーブルも上記のような細かい、粗い、普通の量子化ステップの逆量子化テーブルに限らず、さらに細分して４つ以上の逆量子化テーブルを備えること、または、細かい、粗い、の２種類の逆量子化テーブルを備えるだけでもよく、要は２種類以上の異なる量子化ステップ幅の逆量子化を、上述した画像データ圧縮装置側で行う量子化処理に対応して行えれば良い。
【００７０】
次に量子化表切り替えモジュール０４７は、２つの制御信号０４４，０４６に従って逆量子化表を切り替える制御信号を逆量子化器０３３に出力する。予測器０４８は、周辺画素Ａ（０３７）、Ｂ（０４１）、Ｃ（０４０）をもとに復元対象画素Ｘの予測値Ｘ’を算出する。
【００７１】
図１５Ａは、本発明の実施形態に係る画像データの復元（復号化）装置の動作を説明するためのフローチャートである。図１５Ｂは、図１５ＡにおけるステップＳ０２８における“ローカルデコーダ”の処理を説明するフローチャートである。図１５Ａおよび図１５ＢにおいてはステップをＳと略記する。なお、図１５Ａ、図１５Ｂの処理は圧縮側の処理である図９Ａ、図９Ｂの処理と同内容の処理である。
【００７２】
図１５Ａにおけるステップの説明に入る前に本例では全画像データ分について処理が終了するまでループすることを前提としていることに注意されたい。
Ｓ０２１：符号データ０３１を逆符号化器０３２に入力し、量子化番号を出力する。
Ｓ０２２：連続性評価結果フィードバックモジュール０４３で、周辺画素Ａ（０３７），Ｂ（０４１）をもとにレベル差（すなわち画素Ａに対する予測値と予測誤差量子化値との和と画素Ｂに対する予測値と予測誤差量子化値との和との差分値）を計測し、連続性の評価を行い、規定回数以上同一レベル差が連続する場合は細かい逆量子化テーブルを使用する制御信号０４４を量子化表切り替えモジュール０４７に出力する。そうでない場合は、Ｓ０２３に進む。
Ｓ０２３：周辺レベル差検出モジュール０４５で周辺レベル差（すなわち各周辺画素に対応するレベル値の周辺画素間での差分値）の絶対値の和を検出し、周辺画素に関するレベル差の絶対値の和を評価して逆量子化テーブルを決定する制御信号０４６を量子化表切り替えモジュール０４７に出力する。
Ｓ０２４：予測器０４８で復元対象画素の予側値Ｘ’を算出する。
Ｓ０２５：量子化番号を量子化表切り替えモジュール０４７で決定された逆量子化テーブルに入力し、予測誤差量子化値を算出する。
Ｓ０２６：予測値と予測誤差量子化値とを加算する。
Ｓ０２７：Ｓ０２６の加算結果を復元画像データとする。
Ｓ０２８：次の画素を復元するために、周辺画素Ａ（０３７），Ｂ（０４１），Ｃ（０４０）と予測用１ライン分バッファ０３８を更新（ローカルデコーダ）する。
Ｓ０２９：周辺画素Ｂ（０４１）を次の復元対象画素の周辺画素Ｅ（０４２）として代入する。
Ｓ０３０：周辺画素Ｃ（０４０）を次の復元対象画素の周辺画素Ｂ（０４１）として代入する。
Ｓ０３１：周辺画素Ｄ（０３９）を次の復元対象画素の周辺画素Ｃ（０４０）として代入する。
Ｓ０３２：予測用１ライン分バッファ０３８から次の復元対象画素の周辺画素Ｄ（０３９）を取得する。
Ｓ０３３：周辺画素Ａ（０３７）を予測用１ライン分バッファ０３８に代入する。
Ｓ０３４：Ｓ０２６で算出した予測誤差量子化値と予測値とを加算し、次の復元対象画素の周辺画素Ａ（０３７）として代入する。
【００７３】
図１６は、本発明の実施形態に係る画像データの復元装置をコンピュータにより実現する場合のシステム構成を示す機能ブロック図であり、上記で説明した内容を機能化してブロックで表現したものである。図１６において本発明の実施形態に係る画像データの復元装置は、上述した画像データの圧縮装置の出力である圧縮データ２０２を復元処理部２１０に入力し、復元処理部２１０では、まず入力された画像データ２０２を図１１の逆符号化器０３２に相当する逆符号化処理部２１１に入力し、逆符号化処理部２１１から量子化番号を得て、この量子化番号を逆量子化器０３３に相当する逆量子化処理部２１２に入力する。
【００７４】
評価部２１２の、図１１の連続性評価結果フィードバックモジュール０４３に相当する連続性評価部２１３は復元対象画素に係る２つの特定周辺画素のレベル差が連続しているかを評価し、規定回数以上同一レベル差が連続する場合には細かい逆量子化テーブル２１８を使用するための制御信号を生成する。また評価部２１２の、周辺レベル差検出モジュール０４５に相当する周辺評価部２１４が復元対象画素の予測値を算出する画素の周辺の画素を含めたそれぞれ２つの周辺画素のレベル差の絶対値の和を検出するとともに、レベル差と利用すべき量子化テーブルの情報とを対応付けて管理するレベル差テーブル２１５を参照して周辺レベル差の絶対値の和を評価していずれの逆量子化テーブル２１８を使用するかの制御信号を切替処理部２１６にそれぞれ入力する。
【００７５】
量子化表切り替えモジュール０４７に相当する切替処理部２１６では、入力された制御信号に基づいて逆量子化テーブル２１８の切り替えを逆量子化処理部２１７に指示し、逆量子化処理部２１７では逆量子化テーブル２１８を切り替えて、すなわち参照先とする逆量子化テーブル２１８を変更し、切り替えた逆量子化テーブル２１８を用いて予測誤差量子化値を算出し、予測処理部２１９に入力する。予測処理部２１９では予測器が予測した復元対象画素の予測値と切り替えた逆量子化テーブル２１８を用いて算出した予測誤差量子化値とを加算して復元画素値を得るとともにこれを蓄積して復元（画像）データ２０４を得るものである。
【００７６】
上述の図１６に示した画像データの復元装置における処理は、プログラムとして記述されて読み込まれることでコンピュータ上で実現できることはいうまでもない。その場合コンピュータのハードウェア資源としては図示していないが各種レジスタ、ＡＬＵを含む演算装置、ＲＡＭ、ＲＯＭ、Ｉ／Ｏなどが用いられる。また上述した各モジュール、予測器、逆量子化テーブルを含む逆量子化器、逆符号器などを１チップＬＳＩ化して画像データの復元装置として各種アプリケーションに利用可能である。
【００７７】
以上のように、圧縮側と同じように、復元側でも逆量子化テーブルを切り替えることにより、画像データを復元することが可能である。
【産業上の利用可能性】
【００７８】
本発明の画像データ圧縮装置および画像データ復元装置は、１チップＬＳＩ化されて所望のアプリケーション機器に搭載可能で、例えばカーナビを含む車内映像データ伝送システムや各種アミューズメント（ゲーム、アニメなど）機器への適用が考えられる。一例として車内映像データ伝送システムでは、リア側にもディスプレイが設置され、フロント側とは異なる映像を鑑賞できることが望まれる。そのため、フロント側に実装された映像データ処理装置で処理した画像データを圧縮してリア側に伝送し、リア側ではそれを復元して画像データを表示する。画像データを中継する場合には各中継点で圧縮、復元が繰り返されることになる。
【図１】
0004709900.tif 000002
【図２】
0004709900.tif 000003
【図３】
0004709900.tif 000004
【図４】
0004709900.tif 000005
【図５】
0004709900.tif 000006
【図６Ａ】
0004709900.tif 000007
【図６Ｂ】
0004709900.tif 000008
【図６Ｃ】
0004709900.tif 000009
【図７】
0004709900.tif 000010
【図８】
0004709900.tif 000011
【図９Ａ】
0004709900.tif 000012
【図９Ｂ】
0004709900.tif 000013
【図１０】
0004709900.tif 000014
【図１１】
0004709900.tif 000015
【図１２Ａ】
0004709900.tif 000016
【図１２Ｂ】
0004709900.tif 000017
【図１２Ｃ】
0004709900.tif 000018
【図１３】
0004709900.tif 000019
【図１４】
0004709900.tif 000020
【図１５Ａ】
0004709900.tif 000021
【図１５Ｂ】
0004709900.tif 000022
【図１６】
0004709900.tif 000023