(57)【要約】【課題】特別なデータを必要とすることなく、簡単な演算によって高品質かつ高圧縮率の画像の符号化を行う。【解決手段】入力部１には、画像信号が入力され、８×８ブロック入力回路２ａは、その画像を８×８画素のブロックに分割する。平均値算出回路３ａは、分割されたブロック中の画素値の平均値を算出し、予測誤差量子化器４ａは、算出された平均値から予測誤差を求め、それを量子化する。予測誤差逆量子化器及び新平均値算出回路５ａは、量子化された誤差を逆量子化して誤差を求め、算出した平均値にその誤差を加算又は減算して、新たな平均値を算出する。誤差算出回路６ａは、新たな平均値とブロック内の全画素値とを比較することによって誤差を算出する。誤差比較回路７ａは、求めた誤差としきい値との比較を行う。【選択図】　　　　図１１
2004023372.tif 000002
【特許請求の範囲】
【請求項１】
画像信号を符号化処理して伝送する画像符号化方法であって、
全画面を、所定の画素単位のブロックに分割し、
前記ブロック内の画素値の平均値を算出し、
前記画素値と前記平均値との誤差をそれぞれ算出し、
これらの誤差が所定の値内であるか否かに基づいて、前記ブロックの符号化を行うか前記ブロックを更に分割するかの判定を行い、
その判定の結果に応じた適切な画素単位のブロックで符号化処理を行うことを特徴とする画像符号化方法。
【請求項２】
前記ブロックの平均値と前記ブロック内の画素値との差の絶対値の最大値をブロックごとに求めたヒストグラムを作成し、前記所定の値を前記ヒストグラムから算出することを特徴とする請求項１記載の画像符号化方法。
【請求項３】
画像信号を符号化処理して伝送する画像符号化装置であって、
全画面を、所定の画素単位のブロックに分割するブロック分割手段と、
前記ブロック内の画素値の平均値を算出する平均値算出手段と、
前記画素値と前記平均値との誤差をそれぞれ算出する誤差算出手段と、
これらの誤差が所定の値内であるか否かに基づいて、前記ブロックの符号化を行うか前記ブロックを更に分割するかの判定を行う判定手段と、
その判定の結果に応じた適切な画素単位のブロックで符号化処理を行う符号化手段とを具えることを特徴とする画像符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、テレビ電話、監視カメラ等に適用され、画像信号を符号化処理して伝送や蓄積を行う際の画像符号化方法及びその装置に関するものである。
【０００２】
【従来の技術】
一般的な画像信号の圧縮規格として、静止画像についてはＪＰＥＧが提案されており、動画像についてはＭＰＥＧが提案されている。また、代表的な画像圧縮方法としては、ＪＰＥＧやＭＰＥＧで採用しているＤＣＴを用いた直交変換の他に、予測符号化やベクトル量子化がある。
【０００３】
ＭＰＥＧの場合、圧縮率が高くなるものの、動き補償（予測）とＤＣＴを用いるために、演算量が多くなり、ハードウェアによって実行する場合には、専用のハードウェアを用いる必要があり、ソフトウェアによって実行する場合には、高性能ＣＰＵを用いる必要がある。
【０００４】
また、Ｂピクチャ（Ｂｉｄｉｒｅｃｔｉｏｎａｌ　ｐｒｅｄｉｃｔｉｖｅ符号化画像）を用いるプロファイルの場合には、遅延量が多くなり、テレビ電話などの会話に適用するのが困難である。
【０００５】
予測符号化は、互いに隣接する画素から当該画素値を予測し、その予測誤差を量子化する符号化であるが、この場合、圧縮率を高めるに従って量子化レベル数を減少する必要があり、その結果、画質の劣化が顕著になる。
【０００６】
ベクトル量子化は、複数の画素値を所定の代表ベクトルに置き換える手法であり、テレビ電話のように入力画像に特徴のある場合には有効であるが、一般のテレビジョン映像のように様々な映像が入力される場合には、コードブック（符号化データすなわちテーブル）を生成するのが困難となる。
【０００７】
【発明が解決しようとする課題】
これまで説明したように、ＭＰＥＧなどで用いられるＤＣＴでは、複雑な加減乗除演算が行われるとともに演算量が膨大になるという不都合がある。また、予測符号化の場合、圧縮率を高くすると画質の劣化が顕著になり、ベクトル量子化の場合、特別なデータ（コードブック）を必要とする。
【０００８】
本発明の目的は、特別なデータを必要とすることなく、簡単かつ少ない演算量によって高品質かつ高圧縮率の画像の符号化を行うことができる画像符号化方法及びその装置を提供することである。
【０００９】
【課題を解決するための手段】
本発明による画像符号化方法は、
画像信号を符号化処理して伝送する画像符号化方法であって、
全画面を、所定の画素単位のブロックに分割し、
前記ブロック内の画素値の平均値を算出し、
前記画素値と前記平均値との誤差をそれぞれ算出し、
これらの誤差が所定の値内であるか否かに基づいて、前記ブロックの符号化を行うか前記ブロックを更に分割するかの判定を行い、
その判定の結果に応じた適切な画素単位のブロックで符号化処理を行うことを特徴とする。
【００１０】
本発明によれば、所定の画素単位に分割されたブロックの符号化を行うかブロックを更に分割するかの判定を行い、その判定の結果に応じた適切な画素単位のブロックで符号化処理を行っているので、ＤＣＴのような複雑な加減乗除算及び膨大な演算量を必要としない。また、予測符号化のように圧縮率を高めるに従って量子化レベル数を減少する必要がないので、高品質かつ高圧縮の符号化を行うことができる。さらに、ベクトル量子化のように特別なデータを必要としない。
【００１１】
好適には、前記ブロックの平均値と前記ブロック内の画素値との差の絶対値の最大値をブロックごとに求めたヒストグラムを作成し、前記所定の値を前記ヒストグラムから算出する。
【００１２】
本発明による画像符号化装置は、
画像信号を符号化処理して伝送する画像符号化装置であって、
全画面を、所定の画素単位のブロックに分割するブロック分割手段と、
前記ブロック内の画素値の平均値を算出する平均値算出手段と、
前記画素値と前記平均値との誤差をそれぞれ算出する誤差算出手段と、
これらの誤差が所定の値内であるか否かに基づいて、前記ブロックの符号化を行うか前記ブロックを更に分割するかの判定を行う判定手段と、
その判定の結果に応じた適切な画素単位のブロックで符号化処理を行う符号化手段とを具えることを特徴とする。
【００１３】
本発明によれば、ＤＣＴのような複雑な加減乗除算及び膨大な演算量を必要とせず、高品質かつ高圧縮の符号化を行うことができ、かつ、特別なデータを必要としない。
【００１４】
【発明の実施の形態】
本発明による画像符号化方法及びその装置の実施の形態を、図面を参照して詳細に説明する。
【００１５】
図１は、本発明による画像符号化方法の実施の形態の動作のフローチャートである。この場合、全画面を、水平方向に８画素及び垂直方向に８画素を有するブロック、すなわち、８×８画素のブロックに分割し、このように分割された８×８画素のブロックを基準としている。
【００１６】
図１に示す制御ルーチンは、例えば、画像監視システムの送信側で実行され、先ず、ステップＳ１において、符号化の前処理として、判定処理用のしきい値を算出する。なお、ステップＳ１を、図２及び図３を用いて後に詳細に説明する。
【００１７】
次いで、ステップＳ２において、全画面を８×８画素のブロックに分割したときの全ブロック数Ｊを設定する。全ブロック数Ｊは、縦横の画素数によって決定される。次いで、ステップＳ３において、図５を用いて後に詳細に説明する８×８画素のブロックの処理を行う。
【００１８】
次いで、全ブロック数Ｊから１を減算し（ステップＳ４）、その後、全ブロックの処理が終了したか否かを判定する（ステップＳ５）。終了した場合には、このルーチンを終了し、終了しない場合には、ステップＳ３に戻る。
【００１９】
図２は、図１のステップＳ１のサブルーチンの前半のフローチャートであり、図３は、図１のステップＳ１のサブルーチンの後半のフローチャートである。本実施の形態では、基準となるブロックを８×８画素のブロックから構成している。８×８画素のブロックを基準として処理するため、そのブロックを縦横それぞれ半分に分割すれば、４×４画素のブロックに分割され、更にその半分に分割すれば、２×２画素のブロックに分割されることとなる。図２及び図３のサブルーチンは、２×２画素のブロックを基準とし、４×４画素のブロック、８×８画素のブロックへと演算を進めて平均値及びしきい値を算出する。
【００２０】
先ず、ステップＳ１１〜Ｓ１３において、全ブロック数Ｊ、４×４画素のブロックの演算数ｋ及び２×２画素のブロックの演算数ｌをそれぞれ、パラメータとしてセットする。この場合、演算数ｋ，ｌはいずれも４となる。
【００２１】
次いで、ステップＳ１４において、８×８画素のブロックを２×２画素のブロックに分割したときにおける２×２画素のブロックについての平均値を算出する。２×２画素であるため、画素数は４となる。４画素の平均値を求めるためには、これらの画素値を合計した後に４で除算すればよい。４による除算は、デジタル計算の場合には右方向に２ビットだけシフトすればよいので、複雑な構成の除算器を必要としない。すなわち、画素値をそれぞれＡ１，Ａ２，Ａ３，Ａ４とすれば、第１の平均値（平均値２）は、１／４（Ａ１＋Ａ２＋Ａ３＋Ａ４）となる。
【００２２】
次いで、平均値２と各画素との間の差の絶対値を求め（ステップＳ１５）、求めた４個の差の絶対値のうちの最大値を検出して、後に説明する第１のヒストグラム（ヒストグラム１）に登録し（ステップＳ１６）、演算数ｌから１を減算し（ステップＳ１７）、演算数ｌが０であるか否か、すなわち、２×２画素のブロックの全てについて処理が終了したか否か判定する。処理が終了している場合、次のステップＳ１９に進み、それに対して、処理が終了していない場合には、ステップＳ１４に戻る。
【００２３】
ステップＳ１９において、２×２画素のブロックの処理の結果を利用して４×４画素のブロックの平均値を算出する。４×４画素であるため、画素数は１６となる。１６画素の平均値を求めるためには、上記平均値２を使用して、四つの２×２画素のブロックの加算平均を求めればよい。四つの２×２画素のブロックの平均値をそれぞれＢ１，Ｂ２，Ｂ３，Ｂ４とすれば、第２の平均値（平均値４）は、１／４（Ｂ１＋Ｂ２＋Ｂ３＋Ｂ４）となる。
【００２４】
次いで、平均値４と各画素との間の差の絶対値を求め（ステップＳ２０）、求めた４個の差の絶対値のうちの最大値を検出して、後に説明する第２のヒストグラム（ヒストグラム２）に登録し（ステップＳ２１）、演算数ｋから１を減算し（ステップＳ２２）、演算数ｋが０であるか否か、すなわち、４×４画素のブロックの全てについて処理が終了したか否か判定する。処理が終了している場合、次のステップＳ２４に進み、それに対して、処理が終了していない場合には、ステップＳ１３に戻る。
【００２５】
次いで、ステップＳ２４において、４×４画素のブロックの処理の結果を利用して８×８画素のブロックの平均値を算出する。８×８画素であるため、画素数は６４となる。６４画素の平均値を求めるためには、上記平均値４を使用して、四つの４×４画素のブロックの加算平均を求めればよい。四つの４×４画素のブロックの平均値をそれぞれＣ１，Ｃ２，Ｃ３，Ｃ４とすれば、第３の平均値（平均値８）は、１／４（Ｃ１＋Ｃ２＋Ｃ３＋Ｃ４）となる。
【００２６】
次いで、平均値８と各画素との間の差の絶対値を求め（ステップＳ２５）、求めた６４個の差の絶対値のうちの最大値を検出して、後に説明する第３のヒストグラム（ヒストグラム３）に登録する（ステップＳ２６）。
【００２７】
次いで、ステップＳ２７において、全ブロック数Ｊから１を減算し、ステップＳ２８において、全ブロックすなわち画像全体（１画面）について処理が終了したか否か判定する。処理が終了した場合には、ステップＳ２９に進み、それに対して、処理が終了していない場合には、ステップＳ１２に戻る。
【００２８】
ステップＳ２９において、ヒストグラム１，２及び３と、後段に接続される図示しないバッファメモリの前フレーム処理後の空き容量とから、後の処理で使用するしきい値及び量子化テーブル番号を決定し、このサブルーチンを終了する。
【００２９】
この場合、しきい値は、図４のように得られたヒストグラム１，２及び３の分布から決定され、８×８画素のブロック用、４×４画素のブロック用及び２×２画素のブロック用の３種類が求められる。また、平均値８、平均値４及び平均値２を量子化するための３種類の量子化テーブル番号を決定する。
【００３０】
図５は、図１のステップＳ３のサブルーチンのフローチャートである。このサブルーチンは、可変長符号化を行うために量子化を行うものである。
先ず、ステップＳ４１において、所定の８×８画素の平均値の予測誤差を、図３のステップＳ２９で算出した量子化テーブルに基づいて量子化する。
【００３１】
次いで、ステップＳ４２において、量子化した予測誤差を逆量子化して誤差を算出し、元の平均値に対して加減算を行うことによって補正をし、新たな平均値を算出する。
【００３２】
次いで、新たな平均値とブロック内の６４画素とを比較し（ステップＳ４３）、この比較の結果に基づいて、図３のステップＳ２９で求めた８×８画素のブロック用のしきい値内であるか否かを判定する（ステップＳ４４）。しきい値内にある場合には、このサブルーチンを終了し、それに対して、しきい値内にない場合には、ステップＳ４５に進む。
【００３３】
次いで、演算数ｋ（この場合４）をセットし（ステップＳ４５）、ステップＳ４２で算出した新たな平均値と、４×４画素のブロックの平均値との差を量子化する（ステップＳ４６）。
【００３４】
次いで、ステップＳ４７において、量子化した誤差を逆量子化して誤差を算出し、元の平均値に対して加減算を行うことによって補正をし、新たな平均値（新平均値）を算出する。
【００３５】
次いで、新たな平均値とブロック内の１６画素とを比較し（ステップＳ４８）、この比較の結果に基づいて、図３のステップＳ２９で求めた４×４画素のブロック用のしきい値内であるか否かを判定する（ステップＳ４９）。しきい値内にない場合には、図６を用いて後に詳細に説明する２×２画素のブロック処理を行った（ステップＳ５０）後、ステップＳ５１に進み、それに対して、しきい値内にある場合には、直接ステップＳ５１に進む。
【００３６】
ステップＳ５１において、演算数ｋから１を減じる。次いで、ステップＳ５２において、４×４画素のブロックの全てについて処理が終了したか否か判定する。処理が終了したと判定した場合、このサブルーチンを終了し、それに対して、処理が終了していないと判定した場合、ステップＳ４６に戻る。
【００３７】
図６は、図５のステップＳ５０のサブルーチンのフローチャートである。この場合、先ず、ステップＳ６１において、２×２画素のブロックの処理数Ｌ（この場合４）を、パラメータとしてセットする。
【００３８】
次いで、ステップＳ６２において、図５のステップＳ４７で算出した４×４画素のブロックの新たな平均値と２×２画素のブロックの平均値の差を量子化する。次いで、ステップＳ６３において、量子化した誤差を逆量子化して誤差を算出し、２×２画素のブロックの平均値に補正を行い、これを新たな平均値（新平均値）とする。
【００３９】
次いで、ステップＳ６３で求めた新平均値と２×２画素のブロック内の全画素とを比較し（ステップＳ６４）、全画素値が２×２画素のブロック用のしきい値内に存在するか否か判定する（ステップＳ６５）。全画素値が２×２画素のブロック用のしきい値内に存在しない場合、新平均値と４画素の差をそれぞれ量子化した（ステップＳ６６）後にステップＳ６７に進み、それに対して、全画素値が２×２画素のブロック用のしきい値内に存在する場合、直接ステップＳ６７に進む。
【００４０】
なお、図５のステップＳ４１〜Ｓ５２は、分割された８×８画素のブロック全てに対して行われる。また、各平均値は、２×２画素、４×４画素及び８×８画素のブロックの量子化誤差によって、ステップＳ１で算出した値から変化するので、８×８画素のブロックのラインごとに発生符号量を参照し、各ブロック内のしきい値及び量子化テーブル番号の設定値を調整する。
【００４１】
画像を符号化処理する際に、各画素間の相関を利用して、近傍画素から当該画素の予測値を計算し、実際の画素値との誤差を量子化しただけでは、圧縮率を高くすることができないが、本実施の形態によれば、複数の画素間の相関を予め求め、相関があると判断した場合には、それらの画素値の平均を代表値とし、この処理を比較的大きなブロックに分割して行うことによって実現する。
【００４２】
すなわち、符号化処理しうる最大ブロックの中で画素間の相関の度合いを求め、相関があると判断した場合には、そのブロックの画素値の平均を代表値とし、それに対して、相関がないと判断した場合には、そのブロックを分割し、分割したブロックの中で画素間の相関の度合いを求める。
【００４３】
ブロックの分割は、相関があると判断されるまで繰り返され、最小ブロックすなわち２×２画素のブロックまで分割しても相関がないと判断した場合には、そのブロックの画素値の平均値の他に、その平均値と各画素との誤差（残差）を量子化する。
【００４４】
なお、画像監視システムの受信側における画像復号化処理については、図１のフローチャートと逆の動作を行うことによって行われる。
【００４５】
図７〜１０は、本発明による画像符号化方法の他の実施の形態の動作のフローチャートである。
先ず、ステップＳ１０１において、全画面を８×８画素のブロックに分割したときの全ブロック数Ｊを設定する。
【００４６】
次いで、ステップＳ１０２において、８×８画素のブロックの各々の平均値を算出し、ステップＳ１０３において、ステップＳ１０２で算出した平均値のいわゆる予測誤差を求めて量子化する。
【００４７】
次いで、ステップＳ１０４において、ステップＳ１０３で量子化された予測誤差を補正するために逆量子化を行って予測誤差を新たに求め、ステップＳ１０２で算出した平均値と演算することによって求められた新たな平均値（新平均値）を算出する。
【００４８】
次いで、ステップＳ１０５において、新平均値と各画素との間の誤差の最大値（絶対値）を検出して、第１の誤差テーブル（誤差テーブル１）に保存し、かつ、第１のヒストグラム（ヒストグラム１）に登録する。
【００４９】
次いで、全ブロック数Ｊから１を減算し（ステップＳ１０６）、その後、全ブロックの処理すなわち画像全体（１画面）についての処理が終了したか否かを判定する（ステップＳ１０７）。処理が終了した場合には、ステップＳ１０８に進み、それに対して、処理が終了しない場合には、ステップＳ１０２に戻る。
【００５０】
ステップＳ１０８において、後段に接続される図示しないバッファメモリの前フレーム処理後の空き容量、８×８画素のブロックの平均値データの情報ビット量、ヒストグラム１等から、８×８画素のブロック用のしきい値を算出する。
【００５１】
次いで、上記誤差テーブル１と、ステップＳ１０８で算出したしきい値とを比較し（ステップＳ１０９）、誤差がしきい値内であるか否か判断する（ステップＳ１１０）。誤差がしきい値内である場合、８×８画素のブロックの平均値を代表値とし、後に説明するステップＳ１１８までスキップする。
【００５２】
誤差がしきい値内でない場合、４×４画素のブロックの処理のために、ステップＳ１１１において、８×８画素のブロックを４×４画素のブロックに分割したときのブロック数ｋとして４を設定する。
【００５３】
次いで、ステップＳ１１２において、４×４画素のブロックの各々の平均値を算出し、ステップＳ１１３において、ステップＳ１０４で算出した８×８画素のブロックの新平均値とステップＳ１１２で算出した平均値の誤差を求めて量子化する。
【００５４】
次いで、ステップＳ１１４において、ステップＳ１１３で量子化された誤差を補正するために逆量子化を行って誤差を新たに求め、ステップＳ１１２で算出した平均値と演算することによって求められた新たな平均値（新平均値）を算出する。
【００５５】
次いで、ステップＳ１１５において、新平均値と各画素との間の誤差の最大値（絶対値）を検出して、第２の誤差テーブル（誤差テーブル２）に保存し、かつ、第２のヒストグラム（ヒストグラム２）に登録する。
【００５６】
次いで、ブロック数ｋから１を減算し（ステップＳ１１６）、その後、４×４画素のブロックについての処理が終了したか否かを判定する（ステップＳ１１７）。処理が終了した場合には、ステップＳ１１８に進み、それに対して、処理が終了しない場合には、ステップＳ１１２に戻る。
【００５７】
４×４画素のブロックについての処理が終了した場合又はステップＳ１１０においてしきい値が誤差より大きいと判定された場合、ステップＳ１１８において、全ブロックについての処理が終了したか否かを判定する。
【００５８】
ステップＳ１１９において、バッファメモリの前フレーム処理後の空き容量、４×４画素のブロックの平均値データの情報ビット量、ヒストグラム２等から、４×４画素のブロック用のしきい値を算出する。
【００５９】
次いで、上記誤差テーブル２と、ステップＳ１１９で算出したしきい値とを比較し（ステップＳ１２０）、誤差がしきい値内であるか否か判断する（ステップＳ１２１）。誤差がしきい値内である場合、４×４画素のブロックの平均値を代表値とし、後に説明するステップＳ１２９までスキップする。
【００６０】
誤差がしきい値内でない場合、２×２画素のブロックの処理のために、ステップＳ１２２において、４×４画素のブロックを２×２画素のブロックに分割したときのブロック数ｌとして４を設定する。
【００６１】
次いで、ステップＳ１２３において、２×２画素のブロックの各々の平均値を算出し、ステップＳ１２４において、ステップＳ１１４で算出した４×４画素のブロックの新平均値とステップＳ１２３で算出した平均値の誤差を求めて量子化する。
【００６２】
次いで、ステップＳ１２５において、ステップＳ１２４で量子化された誤差を補正するために逆量子化を行って誤差を新たに求め、ステップＳ１２３で算出した平均値と演算することによって求められた新たな平均値（新平均値）を算出する。
【００６３】
次いで、ステップＳ１２６において、新平均値と各画素との間の誤差の最大値（絶対値）を検出して第３の誤差テーブル（誤差テーブル３）に保存し、かつ、第３のヒストグラム（ヒストグラム３）に登録する。
【００６４】
次いで、ブロック数ｌから１を減算し（ステップＳ１２７）、その後、２×２画素のブロックについての処理が終了したか否かを判定する（ステップＳ１２８）。処理が終了した場合には、ステップＳ１２９に進み、それに対して、処理が終了しない場合には、ステップＳ１２３に戻る。
【００６５】
２×２画素のブロックについての処理が終了した場合又はステップＳ１２１においてしきい値が誤差より大きいと判定された場合、ステップＳ１２９において、４×４画素のブロックの全てについての処理が終了したか否かを判定する。
【００６６】
ステップＳ１３０において、バッファメモリの前フレーム処理後の空き容量、２×２画素のブロックの平均値データの情報ビット量、ヒストグラム３等から、２×２画素のブロック用のしきい値を算出する。
【００６７】
次いで、上記誤差テーブル３と、ステップＳ１３０で算出したしきい値とを比較し（ステップＳ１３１）、誤差がしきい値内であるか否か判断する（ステップＳ１３２）。誤差がしきい値内である場合、２×２画素のブロックの平均値を代表値とし、後に説明するステップＳ１３４までスキップする。
【００６８】
誤差がしきい値内でない場合、新平均値と各画素の誤差を量子化し（ステップＳ１３３）、その後、２×２画素のブロックの全てについての処理が終了したか否かを判定する（ステップＳ１３４）。処理が終了した場合には、この制御ルーチンを終了し、それに対して、処理が終了しない場合には、ステップＳ１３１に戻る。
【００６９】
なお、画像監視システムの受信側における画像復号化処理については、図７〜１０のフローチャートと逆の動作を行うことによって行われる。
【００７０】
図１１は、本発明による画像符号化装置の実施の形態のブロック図である。この画像符号化装置は、例えば、画像監視システムの送信側に適用され、入力部１と、８×８ブロック入力回路２ａと、４×４ブロック入力回路２ｂと、２×２ブロック入力回路２ｃと、平均値算出回路３ａ，３ｂ，３ｃと、予測誤差量子化器４ａ，４ｂ，４ｃと、予測誤差逆量子化器及び新平均値算出回路５ａ，５ｂ，５ｃと、誤差算出回路６ａ，６ｂ，６ｃと、誤差比較回路７ａ，７ｂ，７ｃと、量子化器８と、制御器９と、切替器１０とを具える。
【００７１】
本実施の形態の動作を説明する。入力部１には、図示しない監視カメラからのデジタル化された画像信号が入力され、８×８ブロック入力回路２ａは、その画像を８×８画素のブロックに分割する。
【００７２】
平均値算出回路３ａは、分割されたブロック中の画素値の平均値を算出する。８×８の６４画素の平均値は、加算及びシフト演算によって求めることができるので、平均値算出回路３ａを、簡単な回路で構成することができる。
【００７３】
予測誤差量子化器４ａは、算出された平均値からいわゆる予測誤差を求め、それを量子化する。予測誤差量子化器による量子化によって、データのビット数が削減される。
【００７４】
予測誤差逆量子化器及び新平均値算出回路５ａは、量子化された誤差を逆量子化して誤差を求め、平均値算出回路３ａで算出した平均値にその誤差を加算又は減算して、新たな平均値を算出する。
【００７５】
誤差算出回路６ａは、新たな平均値とブロック内の全画素値とを比較することによって誤差を算出し、誤差比較回路７ａはそれぞれ、誤差算出回路６ａで求めた誤差としきい値との比較を行う。誤差がしきい値内である場合、８×８画素のブロックの平均値を代表値とし、予測誤差量子化器４ａの出力を切替器１０を通じて出力するように制御器９を制御する。それに対して、誤差がしきい値外である場合、８×８画素のブロックを４×４ブロック入力回路２ｂ以降で処理する。
【００７６】
４×４ブロック入力回路２ｂは、８×８画素のブロックを更に半分に分割し、すなわち、水平方向に４画素及び垂直方向に４画素を有する４×４画素のブロックに分割する。
【００７７】
平均値算出回路３ｂは、分割されたブロック中の画素値の平均値を算出する。４×４の１６画素の平均値も、加算及びシフト演算によって求めることができるので、平均値算出回路３ｂも簡単な回路で構成することができる。
【００７８】
予測誤差量子化器４ｂは、算出された平均値からいわゆる予測誤差を求め、それを量子化する。予測誤差量子化器４ｂによる量子化によって、データのビット数が削減される（又は、新平均値算出回路５ａの新平均値との差を量子化する）。
【００７９】
予測誤差逆量子化器及び新平均値算出回路５ｂは、量子化された誤差を逆量子化して誤差を求め、平均値算出回路３ｂで算出した平均値にその誤差を加算又は減算して、新たな平均値を算出する。
【００８０】
誤差算出回路６ｂは、新たな平均値とブロック内の全画素値とを比較することによって誤差を算出し、誤差比較回路７ｂはそれぞれ、誤差算出回路６ｂで求めた誤差としきい値との比較を行う。誤差がしきい値内である場合、４×４画素のブロックの平均値を代表値とし、予測誤差量子化器４ｂの出力を切替器１０を通じて出力するように制御器９を制御する。それに対して、誤差がしきい値外である場合、４×４画素のブロックを２×２ブロック入力回路２ｃ以降で処理する。
【００８１】
２×２ブロック入力回路２ｃは、４×４画素のブロックを更に半分に分割し、すなわち、水平方向に２画素及び垂直方向に２画素を有する２×２画素のブロックに分割する。
【００８２】
平均値算出回路３ｃは、分割されたブロック中の画素値の平均値を算出する。２×２の４画素の平均値も、加算及びシフト演算によって求めることができるので、平均値算出回路３ｃも簡単な回路で構成することができる。
【００８３】
予測誤差量子化器４ｃは、算出された平均値からいわゆる予測誤差を求め、それを量子化する。予測誤差量子化器４ｃによる量子化によって、データのビット数が削減される（又は、新平均値算出回路５ｂの新平均値との差を量子化する）。
【００８４】
予測誤差逆量子化器及び新平均値算出回路５ｃは、量子化された誤差を逆量子化して誤差を求め、平均値算出回路３ｃで算出した平均値にその誤差を加算又は減算して、新たな平均値を算出する。
【００８５】
誤差算出回路６ｃは、新たな平均値とブロック内の全画素値とを比較することによって誤差を算出し、誤差比較回路７ｃはそれぞれ、誤差算出回路６ｃで求めた誤差としきい値との比較を行う。誤差がしきい値内である場合、２×２画素のブロックの平均値を代表値とし、予測誤差量子化器４ｃの出力を切替器１０を通じて出力するように制御器９を制御する。それに対して、誤差がしきい値外である場合、量子化器８は、誤差算出回路６ｃで算出された誤差を量子化する。
【００８６】
切替器１０から出力された信号は、受信側において、図１１に示す素子と同様な素子によって構成された画像復号化装置に入力され、図１１に示す画像符号化装置の動作と逆の動作を行うことによって、復号化され、例えばモニタに出力される。
【００８７】
上記実施の形態によれば、監視カメラの画像における道路や壁のような平坦で変化の少ない部分については、８×８画素のブロックの処理を行い、変化の多い部分については、２×２画素のブロックの処理を行うことによって、好適な画像監視システムを構成することができる。
【００８８】
また、平坦な画像が比較的多い場合、８×８画素のブロックよりも大きなブロック、例えば１６×１６画素のブロックの処理を行うことによって、高圧縮伝送システムを構成することができる。
【００８９】
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。
例えば、本発明による画像符号化方法及びその装置を、任意の伝送システムの送信側で使用することができ、対応する画像復号化方法及び装置を、対応するシステムの受信側で使用することができる。
【００９０】
また、８×８画素のブロック、４×４画素のブロック及び２×２画素のブロックの順に処理したが、本発明を、２ｎ×２ｎ画素のブロック（ｎ：自然数）に対して適用することができ、例えば、１６×１６画素のブロック、８×８画素のブロック、４×４画素のブロック及び２×２画素のブロックの順に処理することもできる。
【００９１】
上記実施の形態では、８×８画素のブロック、４×４画素のブロック及び２×２画素のブロックの平均値データを量子化し、可変長ビットに変換する処理を行ったが、量子化を行うことなく固定長ビットで送出を行うことによって、演算量を減少させることもできる。
【００９２】
さらに、フレーム内処理の場合について説明したが、フレーム間処理を組み合わせることもできる。すなわち、任意の大きさのブロックを処理するに際し、前フレームとの比較を行う処理を挿入することによって、フレーム間処理を容易に追加することができる。
【図面の簡単な説明】
【図１】本発明による画像符号化方法の実施の形態のフローチャートである。
【図２】図１のステップＳ１のサブルーチンの一部のフローチャートである。
【図３】図１のステップＳ１のサブルーチンの一部のフローチャートである。
【図４】平均値と各画素の差の絶対値とブロック数との関係を示す図である。
【図５】図１のステップＳ３のサブルーチンのフローチャートである。
【図６】図５のステップＳ５０のサブルーチンのフローチャートである。
【図７】本発明による画像符号化方法の他の実施の形態の動作のフローチャートの一部である。
【図８】本発明による画像符号化方法の他の実施の形態の動作のフローチャートの一部である。
【図９】本発明による画像符号化方法の他の実施の形態の動作のフローチャートの一部である。
【図１０】本発明による画像符号化方法の他の実施の形態の動作のフローチャートの一部である。
【図１１】本発明による画像符号化装置の実施の形態のブロック図である。
【符号の説明】
１　入力部
２ａ　８×８ブロック入力回路
２ｂ　４×４ブロック入力回路
２ｃ　２×２ブロック入力回路
３ａ，３ｂ，３ｃ　平均値算出回路
４ａ，４ｂ，４ｃ　予測誤差量子化器
５ａ，５ｂ，５ｃ　予測誤差逆量子化器及び新平均値算出回路
６ａ，６ｂ，６ｃ　誤差算出回路
７ａ，７ｂ，７ｃ　誤差比較回路
８　量子化器
９　制御器
１０　切替器
【図１】
2004023372.tif 000003
【図２】
2004023372.tif 000004
【図３】
2004023372.tif 000005
【図４】
2004023372.tif 000006
【図５】
2004023372.tif 000007
【図６】
2004023372.tif 000008
【図７】
2004023372.tif 000009
【図８】
2004023372.tif 000010
【図９】
2004023372.tif 000011
【図１０】
2004023372.tif 000012
【図１１】
2004023372.tif 000013