JP3675429B2 - 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 - Google Patents
適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 Download PDFInfo
- Publication number
- JP3675429B2 JP3675429B2 JP2002267460A JP2002267460A JP3675429B2 JP 3675429 B2 JP3675429 B2 JP 3675429B2 JP 2002267460 A JP2002267460 A JP 2002267460A JP 2002267460 A JP2002267460 A JP 2002267460A JP 3675429 B2 JP3675429 B2 JP 3675429B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- template
- image
- pixels
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Description
【産業上の利用分野】
本発明は予測符号化方式において、情報圧縮効果を向上させるために、参照する周囲画素の位置パターンを高速に精度よく最適化するための技術に関する。
【0002】
【従来技術および発明が解決しようとする課題】
画像情報の各画素のとる値を周囲画素の状態により予測し、その予測結果に基づいて画像情報を符号化する予測符号化方式において、各画素のとる値の予測精度が高いほど情報圧縮効果が向上する。予測精度は、参照画素数を増やすことにより向上する。また、参照する画素の位置パターンを最適化することにより、予測精度を高めることができる。以下、参照する周囲画素のことを参照画素と呼ぶ。
【0003】
図1(a)〜(c)は参照画素位置パターンの既知例を示す。以下では、このような参照画素位置パターンのことをテンプレートと呼ぶ。同図において、ハッチングを施した四角が注目画素、白い空白の四角が参照画素を示す。図示の3種類のテンプレートは、いずれも10画素を参照する場合の例である。
【0004】
一般に、文字や図形のような画像を圧縮符号化処理する場合、図1(a)のように、全参照画素が注目画素の近くに密集配置されているテンプレートが予測精度向上に有効である。自然画や写真などの場合には、同図(b)や(c)のように、参照画素を分散配置させた方が高い予測精度を得られることが多い。ただし、どのように分散配置すべきかということは画像の性質に大きく依存する。
【0005】
図2は、2値画像符号化の国際標準であるJBIG(Joint Bi−level Image experts Group)方式のテンプレートを示す。同図において、ハッチングを施した四角は注目画素、x1〜x9とAで示される四角は参照画素を示す。全10個の参照画素のうち、Aで示す画素はAT(Adaptive Template)画素と呼ばれ、画像の性質に応じて、図中に示すほぼ256×256画素の領域内において任意の位置に動くことが許されている。
【0006】
しかし、このように広大な領域から最適な位置を発見するのは非常に困難で、大きな計算コストを要するために、JBIG方式を実装した多くのシステムでは、AT画素が同図中の×印で示す8画素の範囲でしか動かないように制限している。 なお、JBIG方式の規格において、相関強度の最も強い周囲画素を選択する後述の方法が、AT画素位置を決定する方式として推奨されている。
【0007】
ところで、画像の種類には前述のような文字や図形,自然画,写真の他に、印刷用の網点構造を有する画像(網点画像)がある。網点画像とは、色の濃淡をほぼ規則的に配した点列における点(網点)の大きさで表現する印刷用画像である。この網点は、さらに細かい点の集合により表現され、これはデジタルデータにおける画素に対応する。
【0008】
図3は網点構造の模式図で、同図(a)の空白の正方形はハーフトーンセルと呼ばれる。色の濃い領域のハーフトーンセルには大きな網点、薄い領域には小さな網点が1つずつ配置される。同図(b)はハーフトーンセルが画素から構成されていることを示す。 単位長さ当たりのハーフトーンセルの個数を線数、単位長さあたりの画素数を解像度といい、通常は単位長さとしてインチを用いる。図3の場合、線数が6 lpi(Lines Per Inch)、解像度が36
dpi(Dots Per inch)となる。
【0009】
網点画像の例を図4(a)〜(c)に示す。同図(a)がサンプル画像の全体図で、(b)が一部を拡大した図、(c)はそれをさらに拡大した図である。同図(c)において、色の薄い右上の領域では小さな網点が、色の濃い左下の領域では大きな網点が、それぞれ画素の密集度合により構成されている様子がわかる。印刷機やプリンタ,ファックス,複写機などでは、同図(c)のような画像データの黒い画素に対応する位置にインクをのせることで、紙などの媒体上に同じ絵柄を再現することになる。CRT(Cathode Ray Tube:いわゆるブラウン管)など、媒体がディスプレイの場合は、同図(c)における白い画素に対応する位置を発色させることで、画像を再現し、出力可能である。
【0010】
カラー印刷物では、シアン(Cyan)、マゼンタ(Magenta)、黄(Yellow)、黒(Black)の4色(CMYK)に対応する4つ網点画像を重ね刷りすることで、色調や濃淡を表現している。さらに精細な画質を再現したい場合は要素色を4色から6色に増やしたり、金や銀などの特殊色のために網点画像を用意する場合もあるが、複数の網点画像を重ね刷りすることで色調や濃淡を表現することに変わりはない。
【0011】
このように重ね刷りするとき、複数の網点画像を単純に重ね刷りしただけでは、紙などの媒体上の同一の位置に異なるインクがのってしまい、その位置は黒くなるだけで、色調を表現することができなくなる。そこで、網点画像を少しずつ傾けて重ね刷ることが行われる。図5は、4つの網点画像をそれぞれ0°,15°,45°,75°に重ね合わせた状態を示す模式図である。このとき、網点列の傾き角度のことをスクリーン角度という。
【0012】
スクリーン角度が0°の場合、網点を構成する画素の座標値は整数で表現することが可能であるため、網点の中心間隔は常に一定となる。しかし、網点画像を傾けてしまうと、画素の座標値を整数で表現できなくなるため、座標値を整数で丸めるための操作が必要となる。そして、このときの丸め誤差などの影響により、網点の中心間隔が必ずしも一定でない場合もある。
【0013】
以上が網点構造を有する画像の性質についての説明で、次にJBIG方式のような予測符号化を適用することを考える。
白黒の2値画像における予測符号化は、色の濃い領域では黒い画素が密集し、薄い領域には白い画素が密集する傾向がある、という性質を利用している。一方、網点画像の性質はその網点構造によって決定されるので、網点画像の画素値予測を高精度に行うには、複数の網点の状態を観測し、これを画素値予測に際し参照する必要がある。
【0014】
ところが、図1(a)に示すテンプレートを図4のサンプル画像に適用しても、テンプレートは高々1つの網点しか観測することができない。図2のJBIG方式でAT画素を動かしても高々2つの網点しか参照できないため、十分な予測精度を得ることは難しい。そこで、予測精度を高めるためには、位置を変えることのできる参照画素(AT画素)の数を増やすことが必要となる。
【0015】
しかし、浮動参照画素の数が増えると、取りえるテンプレートの数は指数関数的に増大する。JBIG方式のようにAT画素(浮動参照画素)の移動可能範囲(参照可能範囲)をほぼ256×256画素とし、そこから10個の参照画素を自由に選べるものとすると、取りえるテンプレートの数は10の47乗通り以上となり、全ての場合を調べあげることは現実的には不可能である(1秒間に1億通りのテンプレートを調べられるとしても10の31乗年かかる)。つまり、単純に浮動参照画素数を増やすだけでは予測精度を高めることができなず、テンプレートを最適化するためのメカニズムが重要となる。
【0016】
そのための方法として、たとえば、宇都宮大学の加藤らの方式(電子情報通信学会論文誌,vol.J70−B,no.7,第798〜804頁,1987.7)や、米国特許5023611号明細書(ATTベル研究所)では、2値画像中で周囲画素のとる値が注目画素のとる値と同一であった回数を数え上げ、圧縮の最中にその値が一定条件を満たした場合、値の大きい周囲画素から順に参照画素としてテンプレートに組入れる方法を採用している。
【0017】
また、特開平6−90363号公報(株式会社リコー)では、上記のように逐次的にテンプレートを変更する方式の他に、圧縮する前に画面全体にわたって周囲画素の相関の強さを予め求めておき、それに基づいてテンプレートを決定する方法や、予め用意したテンプレートから画像情報に適したものを選択する方式について言及している。
【0018】
しかし、上記3方式のように、注目画素との相関の強さだけに基づく方式では、網点画像において最適なテンプレートを決定することができない。なぜなら、1つの網点内における画素同士の相関が強いため、単純に相関強度だけに基づいて参照画素を選び出すと、図1(a)のように密集したテンプレートとなってしまうためである。
【0019】
これに対し、特開平5−30362号公報(富士通株式会社)では、注目画素までのラン(同一ライン上で同一の画素値が連続する領域)と直前の同一色のランの距離差を網点の周期性として用いる方法が記されている。しかし、この方式でも最適なテンプレートを得ることは難しい。
【0020】
その原因として、隣接するランの長さからだけでは正しく周期性を推定することができないことが上げられる。その上、何らかの方式で仮に周期性を正しく推定できたとしても、それだけでは最適なテンプレートを求めることはできない。網点の周期性は隣接する網点同士の位置関係しか現しておらず、周囲の網点の大きさの関係までは表現できないためである。ここで、隣接する網点の大きさの関係というのは、網点画像の表現する絵柄に関する情報に他ならない。すなわち、網点画像における最適なテンプレートは、網点構造の周期性のほか、画像の絵柄によっても変化する。
【0021】
特開平11−243491号公報(三菱重工業株式会社ほか)では、テンプレートの最適化のために、重回帰分析と、圧縮率を評価関数とした遺伝的アルゴリズムを用いて、網点構造と画像が表現する絵柄に起因する性質の両方への対応を図っている。遺伝的アルゴリズムは、自然界にみられる生物の進化や適応をモデル化した計算方式で、人工知能の強力な探索手法である。これにより膨大な可能性の中から、適切なテンプレートを選び出すことが可能となる。
【0022】
しかし、この方式には、処理速度が極めて遅いという問題点がある。その理由は、遺伝的アルゴリズムの実装方法にある。遺伝的アルゴリズムは、複数の解候補からなる集団を用意し、それぞれを評価し、評価に基づいて新しい解候補集団を生成するというプロセスを1世代とし、停止条件が満たされるまで何世代も繰り返すという計算手続きをとる。すなわち、1回の試行につき[個体集団サイズ]×[世代数]回の評価を要する。
【0023】
一方、特開平11−243491号公報の方式では、評価方法として圧縮率の計算を使っているために、1回の評価を行うために圧縮対象である画像データを1度符号化して、圧縮率を求なければならない。つまり、同方式でテンプレートを最適化するためには、テンプレートの最適化を行わない場合と比較して、[個体集団サイズ]×[世代数]倍の計算時間が必要となる。たとえば、個体集団サイズを30、世代数を100とすると、最適化されたテンプレートを得るためには、遺伝的アルゴリズムを使用しない場合よりも3000倍長い計算時間が必要となる。
【0024】
ファクシミリ装置のような画像伝送システムへの適用を鑑みた場合、このように膨大な時間をかけて遺伝的アルゴリズムでテンプレートの最適化をしている間に、無圧縮のデータ転送が完了してしまう。また、印刷用画像データのように数百ギガバイトの画像の圧縮を完了するためには莫大な計算時間が必要となり、とても現実的ではない。
【0025】
本発明は、予測符号化における上記の問題を解決し、各種画像情報に対して常に高いデータ圧縮効率を得るための、テンプレート(参照画素位置パターン)の高速な適応的調整方法、装置及びそれを動作させるプログラムを記憶した記録媒体を提供することを目的とする。
【0026】
【課題を解決するための手段およびその作用・効果】
このために、本発明は、(A)入力された画像情報に対してその局所的な類似度に基づいて画像分割を行い、(B)分割された領域ごとに周期性推定を行って高速にテンプレート決定し、その後に、(C)高速化機構を有する遺伝的アルゴリズム等を用いたテンプレート最適化により予測精度を高め、常にデータ圧縮効率の高い適応型予測符号を得ることを特徴とする。また、テンプレート最適化処理では、計算速度と予測精度向上のどちらを優先させるか任意に制御するために、画素情報の間引きや部分領域の切り出しなどを行う。
【0027】
入力された画像情報を適切に分割するということは、同一の領域内では均質で、隣り合う領域同士では異なる性質を持つ領域単位で画像を切り分けることである。こうすることで、同一領域内では無条件に同じテンプレートを用いることができるようになる。さらに、適切に画像分割することで、木目細かなテンプレートの最適化を行えるようになり、分割画像ブロック内での画素値予測の精度が向上するため、結果として全体の圧縮効率が向上する。
【0028】
また、従来手法のように単純な相関強度に基づく参照画素選択ではなく、画像の大局的な特性を取り出すことのできる分析法によって、高速かつ精度の高いテンプレートを決定することを可能とする。さらに、遺伝的アルゴリズム等の強力な最適化能力を利用して、適応的に調整することによって、より高い予測精度に寄与するテンプレートを高速に得ることができる。
【0029】
分割された画像ブロック毎に最適化されたテンプレートによって作成された画像データの圧縮符号は、画像分割情報、テンプレートとともに伝送され、受信された予測符号はテンプレートによって復号化されるとともに画像分割情報によって分割された画像は一画像に再合成される。
【0030】
【実施例】
以下、添付図面を参照しながら、本発明の実施例を詳細に説明する。
図6は、本発明の一実施例に係る画像伝送装置の送信側の構成図を示している。同図において、画像バッファ3は、画像データ入力線2から入力される画像データ1を一時保存しておくためのものである。保存された画像データ1は、後述するブロック判定器6からのブロック情報に基づいて、ブロック判定器6、コンテキスト生成器5、テンプレート発生器8、圧縮符号化器11(いずれも後述)へと、画像データ信号線4を通して出力される。
【0031】
ブロック判定器6は、入力される画像データ1を、1つ以上の特徴的なブロック単位に分割し、以降の処理をブロックごとに行わせることで、圧縮符号化効率を高めるためのものである。ブロック判定器6へは、画像データ信号線4を介して画像データ1が入力され、これを基にブロック分割の仕方が決定され、ブロック情報(各ブロックの大きさと位置)がブロック情報信号線7を通して出力される。
【0032】
なお、ブロック分割の仕方は、ブロック判定器制御信号線17を通してブロック判定器制御信号を入力することにより、外部から決定・制御することも可能である。また、ブロック判定機は、画像データが最初に入力された時点で画像の大きさを読み取り、これを圧縮符号化済みデータのヘッダ情報に含めるために、後述する圧縮符号化済みデータ合成器へブロック情報信号線を介して送信する。
【0033】
なお、本発明の実施例において「圧縮符号化済みデータ」という語は、後述する圧縮符号化器が出力する「圧縮データ」と明確に区別するために用いる。具体的には、図22の例示を用いて後述するように、ヘッダ(圧縮対象である画像データの大きさ、解像度,線数,スクリーン角度,画像データを生成したシステム名とバージョン,画像データの作成日時など)と、ブロック分割された画像データの各ブロックに対する圧縮情報とを連結したものである。
【0034】
テンプレート発生器8は、入力される画像ブロックに対して最適なテンプレートを決定し、圧縮率を最大化するためのものである。ここへは、画像データ信号線を通して画像データ1と、圧縮データ信号線12を介して圧縮データが入力される。圧縮データは、テンプレート発生器8が出力したテンプレートの良さを示す指標として利用される。なお、テンプレート発生器制御信号線16を通して、外部からテンプレートを強制的に指定し、圧縮符号化を行わせることも可能である。
【0035】
コンテクスト生成器5は、テンプレート信号線9を介して入力されるテンプレートを用いて、画像データ信号線を介して入力される画像データ1における参照画素のとる値のパターン(コンテクスト)を取得するためのものである。
【0036】
圧縮符号化器11は、コンテクスト信号線を介して入力されるコンテクストを用いて、画像データ信号線を介して入力される画像データ1を圧縮符号化し、圧縮データを生成するためのものである。
【0037】
圧縮符号化済みデータ合成器13は、圧縮符号化済みデータのヘッダ情報を生成し、圧縮データに対して、それを生成するために使用したテンプレートと、圧縮データの元となったブロック情報を付加して、圧縮符号化済みデータを生成するためのものである。ここへは、ブロック情報信号線を介してブロック情報、テンプレート信号線を介してテンプレート、圧縮データ信号線を介して圧縮データが入力される。
【0038】
また、当該システムの外部から、画像データに関する属性情報(画像データの解像度,線数,スクリーン角度,画像データを生成したシステム名とバージョン,画像データの作成日時など)を属性データ入力線を介して圧縮符号化済みデータ合成器13に入力し、圧縮符号化済みデータのヘッダに記録することもできる。
【0039】
図6を参照して、画像データの圧縮および圧縮符号化済みデータの出力までの手順を簡単に説明する。
まず、当該システムの外部から、画像データに関する属性情報(画像データ1の解像度,線数,スクリーン角度,画像データを生成したシステム名とバージョン,画像データ1の作成日時など)が属性データ入力線を介して圧縮符号化済みデータ合成器に入力され、圧縮符号化済みデータのヘッダに記録される。この属性情報はなくても構わない。
【0040】
続いて、圧縮対象となる画像データ1が画像データ入力線2を通して画像バッファ3へと入力される。このデータは画像データ信号線4を通してブロック判定器6へと送られる。このとき、画像データ1の大きさ(縦横サイズ)が判明するので、ブロック情報信号線7を介して圧縮符号化済みデータ合成器13に送られ、圧縮符号化済みデータのヘッダに記録される。
【0041】
ブロック判定器6では画像に対するブロック分割の仕方が計算される。なお、たとえば新聞の紙面のように文字領域や写真領域の位置が紙面編集の段階で確定しているような場合には、ブロック判定器6で最適なブロック分割の仕方を計算する必要はなく、これを行わないことで処理速度を向上させることができる。そこで、画像データ1の最適な分割の仕方であるブロック分割情報があらかじめ判明しているような場合は、当該システムの外部から人間のオペレータや別のシステムが、ブロック判定器制御信号線17を通して、ブロック分割の仕方を制御するための信号をブロック判定器6に入力することで、ブロック判定器6によるブロック分割情報を計算する処理を省略することが可能である。
【0042】
上記の手順で決定されたブロック分割情報は、画像バッファ3へと送られ、画像バッファ3からはブロック単位で画像データ1がテンプレート発生器8へと送られる。テンプレート発生器8では、図8のフローチャートに示す手順に基づいて、ブロック毎に最適なテンプレートが計算される。なお、フォントサイズの小さな文字領域については、図1(a)のように注目画素の周囲に参照画素が密集した形状のテンプレートが有効に機能することが知られているため(電子情報通信学会論文誌,vol.J70−B,no.7に掲載された加藤らの論文である“参照画素のダイナミック選択による2値画像の適応マルコフモデル符号化”)、テンプレート最適化を必ずしも行う必要はない。
【0043】
そこで、このように特定のブロックに対する最適なテンプレートがあらかじめ判明している場合には、当該システムの外部から人間のオペレータや別のシステムが、テンプレート発生器制御信号線16を通してテンプレートをテンプレート発生器8に入力することで、テンプレート発生器8におけるテンプレート最適化処理を省略することが可能である。
【0044】
コンテクスト生成器5では、テンプレート発生器8で計算されたテンプレートを用いて、画像バッファ3から画像データ信号線4を通して送られてくるブロック分割された画像データ1を走査しながら、各画素毎にコンテクストを抽出する。ここでコンテクストとはテンプレートにより指定された位置にある画素のとる値を取り出して並べたベクトルのことである。たとえば図14(a)のようなテンプレートでは、ハッチングを施した四角が注目画素、p1〜p4が参照画素の位置を示すもとのすると、同図(d)においてp1〜p4に対応する画素の持つ値を並べた<0100>がコンテクストとなる。
【0045】
圧縮符号化器11では、画像バッファ3から画像データ信号線4を通して送られてくるブロック分割された画像データ1の各画素と、上記の手順で得られたコンテクストを用いて圧縮データを生成する。得られた圧縮データは圧縮データ信号線12を通して圧縮符号化済みデータ合成器13へと送られ、ブロック判定器6からブロック情報信号線7を通して送られてくるブロック情報と、テンプレート発生器8からテンプレート信号線9を通して送られてくるテンプレートと合成され、各ブロックに関する圧縮情報単位で連結され、圧縮符号化済みデータとして圧縮符号化済みデータ出力線14を通して受信側へと送信される。
【0046】
なお、圧縮符号化器11から生成される圧縮データはテンプレート発生器8におけるテンプレート最適化処理において圧縮率の計算に使用されるため、圧縮データ信号線を通してテンプレート発生器8へも送られる。このテンプレート最適化処理については図11のフローチャートを用いて後述する。
【0047】
図7は、本発明の一実施例に係る画像伝送装置の受信側の構成図を示している。
同図において、データ解析器22は、圧縮符号化済みデータ入力線21から入力される圧縮符号化済みデータ20から、ヘッダと、ブロックごとに圧縮された各ブロックに関する圧縮情報(テンプレート,ブロック情報,圧縮データ)を分離し、ブロック情報に基づいてテンプレートと圧縮データを出力するためのものである。
【0048】
コンテクスト生成器27は、テンプレート信号線25を介して入力されるテンプレートを用いて、復号データ信号線29を介して入力される復号データにおける参照画素のとる値のパターン(コンテクスト)を取得するためのものである。
【0049】
圧縮符号復号化器25は、コンテクスト信号線28を介して入力されるコンテクストを用いて、圧縮データ信号線23を介して入力される圧縮データを復号化し、復号データを生成するためのものである。
【0050】
圧縮符号復号化器26からは、ブロック分割された復号データがパッチワークのように断片的に出力されるため、これらを正しく配列しなければ原画像を復元することはできない。そこで、伸張データ合成器30は、圧縮符号復号化器26から復号データ信号線29を通して入力される復号データを受け取り、データ解析器22からブロック情報信号線23を通して受け取るブロック情報に基づいて、復号データを配置しながら蓄えることで伸張データ32を合成し、伸張データ出力線31を通して外部へと出力する。
【0051】
図7を参照して,圧縮データの復号および伸張データの出力までの手順を簡単に説明する。まず、圧縮符号化済みデータ入力線21を介してデータ解析器22へと圧縮符号化済みデータ20が入力される。圧縮符号化済みデータ20のフォーマットは図24を用いて後述する。
【0052】
データ解析器22は、圧縮符号化済みデータを解析し、ヘッダと、各ブロックに関する圧縮情報(ブロック情報,テンプレート,圧縮データ)を分離して取り出す。ヘッダに記録されていた情報は、伸張データ合成器30へと送られ、伸張画像データのヘッダに記憶される。また、ヘッダには必ず原画像データの大きさ(縦横サイズ)が記録されており、伸張データ合成器30はこの情報を用いて、復号データから伸張データの復元を行う。
【0053】
圧縮データは圧縮データ信号線24を通して圧縮符号復号化器26へと送られ、これに対応するテンプレートがテンプレート信号線25を介してコンテクスト生成器27へと送られる。圧縮符号復号化器26では、コンテクスト生成器27からコンテクスト信号線28を介してコンテクストを受け取り、これを用いて圧縮データを復号化して、復号データ信号線29を介して出力する。出力された復号データはコンテクスト生成器27へと送られ、テンプレートを用いてコンテクストを生成するために使用される。
【0054】
ところで、圧縮符号復号化器26から出力される復号データは、パッチワークのようにブロック分割されたデータであり、断片化された画像データに過ぎない。そこで、元の画像を復元するためには、復号データを適切に再配置し直して伸張データ32を合成する必要がある。この作業を行うのが伸張データ合成器30である。
【0055】
伸張データ合成器30は、圧縮符号復号化器26から復号データ信号線29を介して入力される伸張データと、データ解析器22からブロック情報信号線23を介して入力されるブロック情報とを用いて、断片化された画像データとしての復号データの再配置が行われ、伸張データ32を合成する。伸張データ32は伸張データ出力線31を介して外部へと出力される。
【0056】
以上の構成で、次に本発明の実施例における適応型テンプレート調整方法について説明する。なお、図6における各要素のうち、この適応型テンプレート調整方法に係るのはテンプレート発生器8とブロック判定器だけで、残りの要素は、特開平6−90363号公報や特開平11−243491号公報に記載されているような、他の一般の予測符号化方式において同等の機能を有する要素と同じ手順で動作するものである。
【0057】
例えば、コロナ社が1998年に出版した、小野文孝ら著「国際標準画像符号化の基礎技術」の第11頁目記載にみられるように、画像データの圧縮は一般に、情報源符号化(モデル化)とエントロピ符号化という2段階の処理で行われる。本発明の実施例で言うところの予測符号化は情報源符号化のための一方式であり、本発明の実施例における圧縮符号化器はエントロピ符号化のような一般的な意味のエントロピ符号化を行う要素である。
【0058】
本発明のテンプレートの最適処理方法を図8のフローを参照して説明する。入力画像データに対して、はじめに、性質の似通った領域単位で別々に圧縮処理を行うために画像分割処理(ステップS1)を行う。これ以降の処理は、分割されたブロック毎にテンプレートを決定するための処理である。
【0059】
まず、第1番目のブロックに対して画像解析処理(ステップS2)が行われ、初期テンプレートが生成される。この初期テンプレートは、後述するテンプレート最適化処理(ステップS4)において用いられることで、探索手続きの高速化と高精度化に大きく寄与する。
【0060】
次に、ステップS3において、テンプレート最適化処理(ステップS4)を行うか否かを決定する。行うか行わないかの判断基準は任意で、当該システムの外部から、人間のオペレータあるいは別のシステムからの入力により、どちらが選ばれるのかを制御するのは可能である。一般的な傾向としては、保存目的でデータ圧縮を行う場合や時間的な余裕がある場合には、テンプレート最適化を行った方がよい。最適なテンプレートの形状は画像の絵柄毎に異なるため、この処理により、できるだけ優れたテンプレートを求めておいた方が高い圧縮率を得られるためである。
【0061】
一方、もともとの画像データのサイズが小さい場合、データ圧縮の目的がデータ保存ではない場合などには、テンプレート最適化に要する時間的コストに対して圧縮効果がそれほど得られないこともあり、そのような場合では、テンプレート最適化を行わない方がよい。
【0062】
ステップS3でテンプレート最適化を行わないと選択した場合は、ステップS5において、当該ブロックが圧縮データにおける最終ブロックであるか否かを調べる。ここで当該ブロックが最終ブロックである場合は処理を完了し、そうでない場合はステップS2に戻る。ステップS3においてテンプレート最適化を行うと判断されたときは、テンプレート最適化処理(ステップS4)により、画像解析処理(ステップS2)で得られた初期テンプレートを利用して、さらに高い予測精度に寄与するテンプレートの探索を行う。
【0063】
前述のように、ステップS5において、当該ブロックが圧縮データにおける最終ブロックであるか否かを調べ、処理を完了するか、ステップ2に戻るかの、どちらかが選ばれる。
【0064】
以下に、図8における各処理について順に説明する。なお、画像分割の方法としては、図13のように、水平方向のみ、垂直方向のみ、水平および垂直方向の3通りが考えられるが、ここでは(a)の水平方向のみの分割について説明する。ここで、入力された画像データは、同一ラインにおいては左から右へ、さらに上方のラインからから下方のラインへと走査されるものとする。他の分割方法は、画像データの走査方向を変えることにより容易に実現可能である。
【0065】
また本実施例では、あらかじめ入力画像を全て読み込んでから、画像分割を行い、テンプレート決定を行う手順を想定して説明を進めるが、入力画像を読み込みながら、並列処理で画像分割とテンプレート決定を行うことも可能である。
【0066】
図9は、図8の画像分割処理(ステップS1)を示すフローチャートであるが、全体の流れについて概説してから、個々の処理要素について詳述する。
はじめに、ステップS101において先頭ブロックの開始位置を記録し、ステップS102において、注目しているラインが画像末端でないことを確認する。ここで画像末端である場合には、ステップS106を実行して、画像分割処理を完了する。
【0067】
画像末端でない場合は、S103で注目ラインの特徴量を計算し、その特徴量と前ラインの特徴量をステップS104において比較する。ここで両者の差異が大きいとステップS105で判定された場合、これは注目しているラインは前ラインと異なるブロックに属するべきであることを示しており、ステップS101に戻って、注目ラインから新しいブロックが始まることを記録する。逆に、差異が小さいということは、注目ラインは前ラインと同じブロックに属するということであるため、次のラインを調べるためにステップS102に戻る。
【0068】
以下、図9の各要素を順に詳述する。新ブロック定義処理(ステップS101)では、新ブロックの開始画素位置を記録する。ここでは、まだ新ブロックは1つも定義されておらず、画像の左上端(0,0)の位置にある画素が新ブロックの開始点になるので、(0,0)が記録される。
【0069】
次に画像末端か否かの判断処理(ステップS102)では、当該ラインが画像末端であるかどうかを調べる。画像末端ラインである場合は処理を完了する。画像末端でない場合は、ステップS103において当該ラインを走査し、走査したラインの特徴量を抽出する。ここでは特徴量として、参照可能範囲内にある全ての画素に関して、注目画素と同じ値を持つ確率、すなわち同時確率密度を採用する。
【0070】
図14を参照してこの同時確率密度を説明する。同図(a)において、p1〜p4の4画素を参照可能範囲にある全ての画素、ハッチングを施した四角が注目画素であるものとする。また、同図(b)の第2ライン目が、現在着目しているラインであるものとする。同時確率密度を求めるためには同図(c)〜(e)のように注目ラインを走査して、各参照画素が注目画素と同じ値を取る確率を計算する。同図(c)では、参照画素p1とp4がデータの定義域の外に出てしまっているが、この場合は0であるものとすると、p3以外が着目画素と同じ値を持つ。
【0071】
同様に同図(d)ではp2だけ、同図(e)ではp1だけが着目画素と同じ値を持ち、同図(c)〜(e)まで1ラインを走査すると、p1〜p4が着目画素と同じ値であった回数は、それぞれ5,5,3,3となり、それぞれの注目画素に対する相関強度を意味する。そして、これを正規化して得られる5/16,5/16,3/16,3/16が同時確率密度であり、当該ラインの特徴量となる。
【0072】
図9の特徴量比較処理(ステップS104)では、前ラインの特徴量と当該ラインの特徴量の比較を行う。ここでは比較を行ううえでの規範として、KL(Kullback−Leibler)情報量を用いる。すなわち、Xiを当該ラインの特徴量、Yiを前ラインの特徴量であるとすると、KL情報量であるKLDは次式で計算される。
KLD = KL(X) + KL(X)
ただし、ここで
KL(X) = Σ{Xi×log(Xi/Yi)}
KL(Y) = Σ{Yi×log(Yi/Xi)}
であるものとする。
【0073】
なお、特徴量の比較を行う際に、前ラインだけの特徴量ではなく、当該ブロックにおける前ラインまでの全てのラインに関する特徴量を計算しておき、これを当該ラインの特徴量と比較することによりより精度の高い特徴量比較を行うことができる。
【0074】
また、特徴量比較における規範として、KL情報量の他にMDL(Minimum Description Length)基準、AIC(Akaike’s Information Criterion)、ベクトル間の距離などを使用してもよい。
【0075】
さらに、特徴量を求める際に、参照可能範囲内にある全ての画素に関して計算をするのではなく、直前のブロックで使用したテンプレートに含まれる参照画素だけに関して計算を行うことで、高速化を図ることができる。
【0076】
閾値を超えた否かの判断(ステップS105)では隣り合うライン同士が同じブロックに属するかどうかを検査する。すなわち、ステップS105では、ステップS104で計算した特徴量の差もしくは比があらかじめ定めておいた閾値以上であるかどうか調べる。閾値以下であるということは、前ラインと当該ラインが非常に近い性質を持つということであるため、前ラインと当該ラインが同じブロックに属することに決定し、ステップS102に戻って、次ラインが当該ブロックに含まれるかどうかを調べる。特徴量が閾値以上である場合は、当該ラインから新しいブロックを始めるためにステップS101に戻る。
【0077】
つづいて、図8における画像解析処理(ステップS2)について述べる。
画像解析処理(ステップS2)の目的は初期テンプレートを生成することであり、その処理手順は図10の通りであるが、全体の流れについて概説してから、各処理要素について詳述する。
【0078】
なお、この全ての処理は、画像分割で得られた分割画像ブロックの全てに対して行われる。また、計算速度を向上させるため、全ての分割画像ブロックではなく、一部の分割画像ブロックを代表例として処理し、その結果を単純に他の分割ブロックに適用するということも可能である。
【0079】
まず、入力パラメータ処理(ステップS201)にて、画像解析処理に必要なパラメータを取得する。ステップS202において、解像度,線数及びスクリーン角度の3パラメータがステップS201で入力されているかどうかを確認する。
【0080】
3パラメータのうちどれかが欠けている場合には、相関分析処理(ステップS206)により初期テンプレートを決定し、画像解析手続きを完了する。相関分析処理(ステップS203)では、まず、参照可能範囲にある全ての画素について、注目画素との相関を計算する。そして、テンプレートがn画素から構成される場合、ステップS204において、相関の強い順にn個の画素を選び出して初期テンプレートに採用し、画像解析手続きを完了する。
【0081】
なお、相関強度を計算する際、通常は分割画像ブロックを構成する全ての画素を走査するが、計算を省略することで高速化することが可能である。すなわち、数画素おき、数ラインおきに走査すること、あるいは一部の領域内だけを走査することにより計算速度を向上させられる。
【0082】
ところで、網点画像において、1つのハーフトーンセルを構成する画素数が非常に多い場合、単純に相関強度の大きさに基づく選択基準では、図1(a)のように、注目画素周囲に参照画素が密集してしまう。このようなテンプレートは文字領域では有効であるものの、網点画像には不適切である。なぜならば、隣接するハーフトーンセルに配置された網点の状態を参照することができないためである。このような場合、相関の強い画素から単純に選び出す方法だけでなく、選び出された画素に隣接する画素の相関強度を強制的に減少させ、より参照画素の配置を広く分散させることも必要となる。
【0083】
相関強度に基づきながら参照画素配置を広く分散させる方法の一例を、図15(a)を用いて説明する。同図中、ハッチングを施した四角は注目画素、空白の四角は相関強度が0の画素、数字が入力された四角はその数字を相関強度として持つ画素である。この例では、テンプレートは3つの参照画素から構成されるものとする。ここで、参照画素が単純に相関強度の大きさだけを基準として選び出させる場合には、相関強度が100, 90, 80の画素がテンプレートを構成することになる。しかし、参照画素として選び出された画素の隣接画素の相関強度を強制的に減少させることにより、異なるテンプレートが生成される。
【0084】
すなわち、参照画素として選び出された画素の隣接画素の相関強度を、そのたびに90%に減少させるものとすると、相関強度が100, 90の2つの画素が選び出された後の状態は図15(b)のようになる。図15(a)で相関強度が80であった画素は、相関強度100, 90の2画素が選び出されることにより、その相関強度は80×0.9×0.9=64.8にまで減少する。したがって、この場合の3つ目の参照画素としては、相関強度が70の画素が選ばれることになる。
【0085】
図10の判断ステップS202の条件分岐において3パラメータともに入力されている場合は、ステップS205において相関分析と周期性推定のどちらで初期テンプレートを生成するのかを選択する。この選択基準は全くの任意で、当該システムの外部から、人間のオペレータあるいは別のシステムから指定されることで、どちらが優先的に選択するのかが決定される。
【0086】
相関分析処理を実行する場合は前述のようにステップS203を実行する。周期性推定を選択した場合は、周期性推定処理(ステップS206)を実行し、この結果を用いて初期テンプレートを決定し(ステップS207)、画像解析手続きを完了する。
【0087】
周期性推定処理(ステップS206)では、まず相関分析と同様に、参照可能範囲にある全ての画素について、注目画素との相関を計算する。次に、注目画素から一定距離以上離れている周囲画素のうち、最も相関の強い画素を一つ選び出す。
【0088】
符号化対象の画像が網点構造を有している場合、各網点は一定角度傾き(スクリーン角度)、特定の辺の長さを持つ正方形の頂点に配置されるため、注目画素から選び出された画素までの距離と方向は、図16(a)の関係性を満たしている蓋然性が高い。同図において、ハッチングを施した四角は注目画素、×印の四角は注目画素から一定距離以上離れた画素のうちで最も大きな相関強度を持つ画素、空白の四角はこれらの関係性から強い相関を持つと推定される画素を示す(以下、これらを理想配置画素と呼ぶ)。そこで、理想配置画素の中から参照画素を選択することで、単純な相関強度に基づく参照画素の選択方法よりも精度よくテンプレートを決定することが可能となる。
【0089】
参照可能範囲に存在する理想配置画素数mが、テンプレートを構成する参照画素数nよりも多い場合、注目画素からの距離が小さい順にn個の理想配置画素を選択し、初期テンプレートの構成参照画素として採用する。例えば図16(a)のような理想配置画素かつ参照画素数n=10の場合、p1〜p10までの理想配置画素が参照画素として選択される。
【0090】
逆に、参照可能範囲に存在する理想配置画素数nがテンプレートを構成する参照画素数mよりも少ない場合は、注目画素の隣接画素と、理想配置画素の隣接画素の中から、注目画素からの距離が小さい順に参照画素を選択する。例えば図16(a)のような理想配置画素かつ参照画素数n=16の場合、p1〜p13までの理想配置画素をテンプレートに採用し、なお不足する参照画素を補充するため、相関強度の強い順に3つの参照画素を選択する。
【0091】
ところが、参照可能範囲が狭すぎて十分な数の理想配置画素数を包含できない場合、あるいは参照可能範囲に対する理想配置画素間の距離が極めて大きい場合、一般に相関強度の強い画素は注目画素近傍に集まりやすいため、理想配置画素以外の参照画素は全て注目画素近傍から選ばれることになる可能性が高い。
【0092】
図16(b)は参照可能範囲が狭すぎる場合の例である。ここで参照画素数n=16とすると、理想配置画素p1〜p5以外の11個の参照画素は全て注目画素近傍から選ばれる可能性が高い。同図(b)中では、注目画素近傍の添え字のない空白の四角で示される画素が、不足分を補充するための参照画素として選択されている。
【0093】
このような場合、相関分析処理(ステップS206)によって決定されるテンプレートとの差異が小さくなってしまうため、以下に説明するような方式でテンプレートを決定する。すなわち、まず、注目画素に隣接する画素のうちで注目画素との相関が最も強い画素を参照画素として採用する。次に、注目画素から近い順に理想配置画素を選び、それと隣接する画素のうちで注目画素との相関が最も強い画素を参照画素として採用する。
【0094】
図16(b)の例の場合、ここまでの手順で、注目画素と1つの隣接画素、5個の理想配置画素とそれぞれ1つずつの隣接画素の、合計12個の参照画素が決定される。これでもまだ総参照画素数よりも少ない場合は、注目画素に隣接する画素から2つ目の参照画素を採用し、さらに理想配置画素に隣接する画素からもそれぞれ2つめの参照画素を採用するプロセスを、採用した参照画素数がテンプレートを構成する総参照画素数に達するまで繰り返す。ここまでが、図8における画像解析処理(ステップS2)の動作説明に関する説明である。
【0095】
つづいて、テンプレート最適化処理(ステップS4)について、図11のフローチャート例を参照して説明する。この例では最適化処理は2段階の処理からなる。第1段階では、画像解析処理(ステップS2)で得られた初期テンプレートを用いて遺伝的アルゴリズム(ステップS301)を実行し、テンプレートの最適化を行う。その後、第2段階で、得られたテンプレートを局所探索処理(ステップS302)にてさらに調整し、処理を完了する。
【0096】
ここで、遺伝的アルゴリズム(ステップS301)について説明する。
遺伝的アルゴリズムの参考文献としては、例えば、出版社ADDISON−WESLEY PUBLISHING COMPANY、INC.が1989年に出版した、David E.Goldberg著の「Genetic Algorithms in Search、Optimization、and Machine Learning」がある。
【0097】
一般的な遺伝的アルゴリズムでは、まず遺伝子を持つ仮想的な生物の集団を設定し、あらかじめ定めた環境に適応している個体が、その適応度の高さに応じて生存し、子孫を残す確率が増えるようにする。そして、遺伝的操作と呼ばれる手順で親の遺伝子を子に継承させる。このような世代交代を実行し、遺伝子および生物集団を進化させることにより、高い適応度を持つ個体が生物集団の大勢を占めるようになる。そしてその際の遺伝的操作としては、実際の生物の生殖においても生じる、遺伝子の交叉、および突然変異等が用いられる。
【0098】
図12は、かかる遺伝的アルゴリズムの概略手順を示すフローチャートであり、ここでは、初めにステップS401で、個体の染色体を決定する。すなわち、世代交代の際に親の個体から子孫の個体に、どのような内容のデータをどのような形式で伝えるかを定める。
【0099】
図17に染色体を例示する。ここでは、対象とする最適化問題の変数ベクトルxを、M個の記号Ai(i=1,2,…,M)の列で表わすことにし、これをM個の遺伝子からなる染色体とみなす。図17中、Chは染色体、Gsは遺伝子を示し、遺伝子の個数Mは5である。遺伝子の値Aiとしては、ある整数の組、ある範囲の実数値、単なる記号の列などを問題に応じて定める。図17の例では、a〜eのアルファベットが遺伝子である。このようにして記号化された遺伝子の集合が個体の染色体である。
【0100】
上記ステップS401では次に、各個体が環境にどの程度適応しているかを表わす適応度の計算方法を決定する。その際、対象とする最適化問題の評価関数の値がより高い変数あるいはより低い変数ほど、それに対応する個体の適応度が高くなるように設計する。またその後に行う世代交代では、適応度の高い個体ほど、生き残る確率あるいは子孫を作る確率が他の適応度の低い個体よりも高くなるようにする。逆に、適応度の低い個体は、環境にうまく適応していない個体とみなして、消滅させる。これは、進化論における自然淘汰の原理を反映したものである。すなわち適応度は、生存の可能性という面から見て各個体がどの程度優れているかを表わす尺度となる。
【0101】
遺伝的アルゴリズムでは、探索開始時においては、対象とする問題は一般にまったくのブラックボックスであり、どのような個体が望ましいかはまったく不明である。このため通常、初期の生物集団は乱数を用いてランダムに発生させる。従ってここにおける手順でも、ステップS402で処理を開始した後のステップS403では、初期の生物集団は乱数を用いてランダムに発生させる。なお、探索空間に対して何らかの予備知識がある場合は、評価値が高いと思われる部分を中心にして生物集団を発生させるなどの処理を行うこともある。ここで、発生させる個体の総数を、集団の個体数という。
【0102】
次にステップS404で、生物集団中の各個体の適応度を、先にステップS401で決めた計算方法に基づいて計算する。各個体について適応度が求めた後、次にステップS405で、次の世代の個体の基となる個体を集団から選択淘汰する。しかしながら選択淘汰を行うだけでは、現時点で最も高い適応度を持つ個体が生物集団中に占める割合が高くなるだけで、新しい探索点が生じないことになる。このため、次に述べる交叉と突然変異と呼ばれる操作を行う。
【0103】
すなわち、次のステップS406では、選択淘汰によって生成された次世代の個体の中から、所定の発生頻度で二つの個体のペアをランダムに選択し、染色体を組み変えて子の染色体を作る(交叉)。ここで、交叉が発生する確率を、交叉率と呼ぶ。交叉によって生成された子孫の個体は、親にあたる個体のそれぞれから形質を継承した個体である。この交叉の処理によって、個体の染色体の多様性が高まり進化が生じる。
【0104】
交叉処理後は、次のステップS407で、個体の遺伝子を一定の確率で変化させる(突然変異)。ここで、突然変異が発生する確率を突然変異率と呼ぶ。遺伝子の内容が低い確率で書き換えられるという現象は、実際の生物の遺伝子においても見られる現象である。ただし、突然変異率を大きくしすぎると、交叉による親の形質の遺伝の特徴が失われ、探索空間中をランダムに探索することと同様になるので注意を必要とする。
【0105】
以上の処理によって次世代の集団が決定され、ここでは次に、ステップS408で、生成された次世代の生物集団が探索を終了するための評価基準を満たしているか否かを調べる。この評価基準は、問題に依存するが、代表的なものとして次のようなものがある。
・生物集団中の最大の適応度が、ある閾値より大きくなった。
・生物集団全体の平均の適応度が、ある閾値より大きくなった。
・生物集団の適応度の増加率が、ある閾値以下の世代が一定の期間以上続いた。・世代交代の回数が、あらかじめ定めた回数に到達した。
【0106】
上述の如き終了条件の何れかが満たされた場合は、探索を終了し、その時点での生物集団中で最も適応度の高い個体を、求める最適化問題の解とする。終了条件が満たされない場合は、ステップS404の各個体の適応度の計算の処理に戻って探索を続ける。このような世代交代の繰り返しによって、集団の個体数を一定に保ちつつ、個体の適応度を高めることが出来る。以上が一般的な遺伝的アルゴリズムの概略である。
【0107】
上で述べた遺伝的アルゴリズムの枠組みは、実際のプログラミングの詳細を規定しない緩やかなものとなっており、個々の問題に対する詳細なアルゴリズムを規定するものではない。このため、遺伝的アルゴリズムを本実施例のテンプレート最適化に用いるには、以下の項目をテンプレート最適化用に実現する必要がある。
(a) 染色体の表現方法
(b) 初期個体集団の発生方法
(c) 個体の評価関数
(d) 選択淘汰方法
(e) 交叉方法
(f) 突然変異方法
(g) 探索終了条件
図20は、本発明の実施例における染色体の表現方法を示す。同図は、テンプレートを構成する参照画素数をn個、参照可能範囲を256×256画素の領域とした場合の例である。ただし、本実施例における参照可能範囲の広さは任意であり、あらかじめ定めておけば、どのような参照可能範囲でもよい。このとき、染色体は、それぞれが1つの参照画素に対応するn個の部分に分けられる。また各部分はさらに2つに分けられ、参照画素のx座標とy座標位置を特定することとなる。図の例では、参照可能範囲の大きさはx方向,y方向ともに256であるため、それぞれ8ビットの2進数表現される。
【0108】
なお、染色体における参照画素の座標位置を2進数ではなくグレイコードで表現することも可能である。またさらに、{0,1}の2値で染色体を表現するのではなく、参照画素位置の座標を示す整数で染色体を構成することも可能である。つまり、この場合には同図(b)におけるx座標値とy座標値がともに{0,…,255}の値をとる。
【0109】
本実施例では、図8における画像解析処理(ステップS2)において、分割画像ブロックごとに、分析的・解析的な手法を用いて初期テンプレートを決定している。そこで、この初期テンプレートを個体集団に埋め込んで、遺伝的アルゴリズムにおける初期個体集団を生成する。
【0110】
図24は、6つの染色体から構成される個体集団への、初期テンプレートの埋めこみ方の例を示す模式図である。同図(a)は、全ての染色体をランダムに初期化する方法であり、通常の遺伝的アルゴリズムと同じである。同図(b)は、初期テンプレートを染色体表現に変換したものをマスター染色体とし、これを個体集団の第1染色体にコピーして、残る5つの染色体をランダムに初期化する方法である。マスター染色体を第1染色体だけでなく、個体集団内の任意の個数の染色体にコピーしてもよい。
【0111】
図24(b)の方法で個体集団を初期化する場合、マスター染色体を個体集団にコピーする数が多いほど探索速度が向上するが、反面、個体集団の多様性が小さくなるために、最適なテンプレートを発見する以前に進化が止まってしまう可能性が高くなる。このような場合、数多くのマスター染色体を個体集団にコピーするのではなく、マスター染色体に突然変異を施した染色体をにコピーすることで、個体集団の多様性を維持することができる。
【0112】
同図(c)は上記の方法の一例を示す模式図である。ここでは、マスター染色体を突然変異させた染色体を3つ生成し、個体集団の第1染色体にはマスター染色体をコピーし、第2〜第4染色体にはマスター染色体を突然変異させて得られた3つの染色体をそれぞれコピーし、残る2つの染色体だけをランダムに初期化する方法である。個体集団内の複数の染色体にマスター染色体をコピーしてもよく、マスター染色体を突然変異させて得られる染色体の個数も任意であり、どちらもパラメータで制御可能としておく。
【0113】
本実施例で使用する遺伝的アルゴリズムにおける個体の評価関数Fとしては、個体が特定するテンプレートを用いて入力画像を圧縮符号化して得られる圧縮データの大きさの逆数であるものとする。すなわち、遺伝的アルゴリズムにおける各個体はテンプレートを表現するので、評価の際には、個体集団は、それぞれが表現するテンプレートを用いて、対象である画像データを圧縮符号化し、その結果得られる圧縮データの大きさの逆数を各個体の適応度とする。
【0114】
例えば、圧縮データの大きさが1KByteとなった場合、適応度の値は1/(1×1024)とする。遺伝的アルゴリズムは、評価関数Fを最大化するように振る舞うため、圧縮データの大きさの逆数が最大化されることにより、圧縮データの大きさを最小化するテンプレートを表現する個体が探索されることとなる。
【0115】
なお、染色体の適応度を示す指標は、圧縮データの大きさの逆数だけでなく、圧縮データが小さくなるほど大きくなるという性質をもつものであれば何でもよい。たとえばある特定の値から圧縮データの大きさを差し引いて得られる値を適応度として用いることもできる。
【0116】
なお、適応度を計算するために圧縮データの大きさを用いるということは、大きな計算コストを必要とするため、入力画像全てを適応度計算のために圧縮する代わりに、数画素おき、数ラインおきに間引いた縮小画像を圧縮することもできる。入力画像の一部を切り出して、切り出し領域だけを圧縮して、適応度を計算してもよい。このような間引きや切り出しにより評価関数の精度は落ちるものの、計算時間を大きく節約することが可能となる。
【0117】
また、圧縮データの大きさの代わりに、エントロピを使用することもできる。情報理論的には、エントロピを最小化することと圧縮データの大きさを最小化することは等価であるため、理想状態において両者は区別されない。なお、エントロピ計算においても、上記のような間引きや切り出しを用いてもよい。
【0118】
選択処理においては、集団から適応度に比例した確率で個体を選び出す作業を、集団の個体数分だけ行う(ルーレット選択)。これにより、新しい個体集団が生成される。ルーレット選択のほか、トーナメント選択やランク選択と呼ばれる手法を用いてもよい。
【0119】
交叉処理では、集団からランダムに選ばれた2つの親個体A,Bに対して、図19(a)の説明図に示す方法を用いる。これは染色体をランダムな位置で座標値を一塊として部分的に入れ替える操作であり、一点交叉と呼ばれる手法である。図19(a)では、Ch1およびCh2が親個体A,Bの染色体であり、ここにおける交叉処理では、これらの染色体を、ランダムに選んだ交叉位置CPで切断する。図19(a)の例では、左から2番目の遺伝子と3番目の遺伝子の間を交叉位置としている。そして、切断した部分的な遺伝子型を入れ替えることによって、染色体Ch3およびCh4をそれぞれ持つ子個体A’,B’を生成する。なお、一点交叉のかわりに、二点交叉や一様交叉と呼ばれる手法を用いてもよい。
【0120】
交叉に引続いて実行する突然変異は、全染色体の全遺伝子の値を突然変異率に従って反転させる操作とした。図19(b)に突然変異の例を示す。この図では、染色体Ch5において、2番目の遺伝子の値が突然変異率に基づく確率で反転している。
【0121】
なお、{0,1}の2値ではなく、整数で染色体を表現している場合はビット反転できないため、染色体の各遺伝子にガウス分布N(0,σ)に従って発生させた正規乱数を加算する操作を行う。ガウス分布以外のコーシー分布などの他の分布を用いてもよい。
【0122】
また、テンプレート最適化のために、遺伝的アルゴリズムの代わりに、枚挙法や進化戦略,山登り法,焼きなまし法などの所謂ブラインドサーチ手法を適用することもできる。特に山登り法と焼きなまし法は遺伝的アルゴリズムほどの高い探索能力を持たないが、処理が高速というメリットがある。なお、上記ブラインドサーチ方式において、評価関数として圧縮データの大きさとエントロピどちらを用いてもよい。また、参照可能範囲が小さく、テンプレートを構成する画素数も少ない場合には、取り得る全てのテンプレートを枚挙法(Enumeration)によって調べあげることにより、確実なテンプレートを発見することも可能である。
【0123】
なお、進化戦略の参考文献としては、例えば、出版社John Wiley &Sonsが1995年に出版した、H.P.Schwefel著の「Evolution and Optimum Seeking」がある。
【0124】
また焼きなまし方の詳細は、例えば、出版社John Wiley & Sonsが1995年に出版した、E.Aarts and J.Korst著の「Simulated Annealing and Boltzmann Machines」を参照されたい。
【0125】
つづいて、図11における局所探索処理(ステップS302)の説明を行う。遺伝的アルゴリズムは、非常に強力な探索手法であるが、探索手続きの終盤で、最適解あるいは局所解近傍において探索速度が低下するという問題がある。すなわち、図20に例示するように、探索の序盤から中盤にかけて、世代数が進むごとに適応度の増加率が低下してゆき、終盤では殆ど適応度が改善されなくなる。そこで、本実施例では、遺伝的アルゴリズムによる探索で得られた最良のテンプレートに対して、山登り方を用いて最終調整を行う。この処理を導入することにより、遺伝的アルゴリズムにおける終盤の無駄な探索を行わずに済むため、全体として探索速度が向上する。ここまでが、図8のテンプレート最適化処理(ステップS4)に関する説明である。
【0126】
これまでに述べた実施例による適応型予測符号化および復号化方法をコンピュータによって実行するためのプログラムを、ハードディスク,フレキシブルディスク,CD−ROMまたはDVD−ROM等の記録媒体に記録しておけば、このような記録媒体をコンピュータに読み込ませることにより、コンピュータを利用して、この実施例による適応型予測符号化および復号化方法を簡単に実施することができる。
【0127】
このような適応型予測符号化処理プログラムは図21に示されるような
(1)圧縮すべき画像データを読み込む手順(ステップS601)と、
(2)圧縮符号化済みデータのヘッダを生成し、出力する手順(ステップS602)と、
(3)入力された画像データを、特徴的なブロック単位に分割する手順(ステップS603)と、
(4)ブロック毎に最適なテンプレートを生成する手順(ステップS604)と、
(5)ブロック内の全ての画素に対して、走査方向順にコンテクストを発生する手順(ステップS605)と、
(6)ブロック内の全ての画素と、ステップS605で生成されたその画素に対応するコンテクストを用いて圧縮データを生成する手順(ステップS606)と、
(7)これまでの手順で得られたブロック情報,テンプレート情報,圧縮データを合成して、圧縮符号化済みデータを生成および出力する手順(ステップS607)とを実行するものである。
【0128】
なお、図21のプログラムのように、画像データを全て読み込んでからブロック分割を行い、ブロック毎に圧縮符号化処理を行うのではなく、ブロック分割を行いながら当該ブロックに属する画像データだけを読み込んで圧縮符号化処理を行うことにより、コンピュータの使用メモリサイズを小さく抑えることが可能である。
【0129】
図22(a)は、圧縮対象である画像データが、n個のブロックに分割された場合における、圧縮符号化済みデータのフォーマットの一例を示す模式図で、ヘッダと、n個の画像ブロックに対応する圧縮情報から構成される。ヘッダには、圧縮対象である画像データの大きさ(縦横サイズ)と、解像度,線数,スクリーン角度,画像生成システム名とそのバージョン等が記録される。
【0130】
同図(b)は、第i番目の画像ブロックに対応する圧縮情報の構成例を示す模式図で、各ブロックの大きさと位置(ブロック情報)が記録されるブロックヘッダと、対応する画像ブロックの圧縮符号化に用いたテンプレートと、圧縮データと、第i番目の圧縮情報の終端を示す終端記号から構成される。
【0131】
本発明が使用する予測適応型符号の復号化プログラムは、図23に示されるように、
(1)圧縮符号化済みデータを読み込む手順(ステップS701)と、
(2)圧縮符号化済みデータを解析して、伸張画像全体の大きさ(縦横サイズ)と、ブロック分割された各ブロックに対応する圧縮情報とに分離し、各ブロックを圧縮する際に使用したテンプレートと圧縮データを取り出す手順(ステップS702)と、
(3)伸張された画像ブロックの先頭からコンテクストを逐次生成するための手順(ステップS703)と、
(4)コンテクストを用いて圧縮データから復号データを生成する手順(ステップS704)と、
(5)各ブロックに対応する復号データを合成して、1つの伸張画像データを生成する手順(ステップS705)とを実行するものである。
【0132】
なお、本発明は網点画像だけでなく、通常の2値画像(文字画像,線画像,ディザ法や誤差拡散法などで2値化された画像,これらの混在画像など)の全てに対して適用可能である。さらに、多値画像についても、ビットスライス処理や画像幅の拡大処理を行って複数の2値画像に分解することで適用可能である。
【0133】
ここでビットスライス処理とは、たとえば図25(a)の場合、各画素は8ビットで表現されるので、第1番目のビットだけで構成した2値画像から、第8番目のビットだけで構成した2値画像までの、8つの2値画像に、1つの8ビット画像を分解する処理である。 画像幅の拡大処理とは、例えば図25(b)の場合、上述の例と同じく256階調(8ビット)画像の場合、画像幅を仮想的に8倍にし、画素を構成するビットを分解してそのまま同一ライン上に並べるだけの処理である。
【0134】
以上、図示例に基づき説明したが、この発明は上述の例に限定されるものではなく、特許請求の範囲内で当業者が容易に改変し得る他の構成や方法をも含むものである。
【図面の簡単な説明】
【図1】既知の各種テンプレートを示す説明図である。
【図2】JBIG方式で用いられるテンプレートを示す説明図である。
【図3】ハーフトーンセルと画素の関係を示す模式図である。
【図4】網点構造を持つ画像例の拡大図である。
【図5】スクリーン角度の異なる4つの網点画像を重ね合わせた様子を示す図である。
【図6】本発明の一実施例に係る画像伝送装置の送信側のブロック構成図である。
【図7】本発明の一実施例に係る画像伝送装置の受信側のブロック構成図である。
【図8】本発明の一実施例に係るテンプレート最適化方法の処理フローチャートである。
【図9】本発明の一実施例に係る画像分割処理のフローチャートである。
【図10】本発明の一実施例に係る画像解析処理のフローチャートである。
【図11】本発明の一実施例に係るテンプレート最適化処理のフローチャートである。
【図12】遺伝的アルゴリズムの処理フローチャートである。
【図13】画像のブロック分割方法を示す模式図である。
【図14】同時確率密度の計算方法を示す模式図である。
【図15】画像解析処理で行う相関分析の動作原理を示す説明図である。
【図16】画像解析方式で行う周期性推定処理の原理を示す説明図である。
【図17】染色体と遺伝子との関係を示す模式図である。
【図18】遺伝的アルゴリズムにおける染色体表現の説明図である。
【図19】遺伝的アルゴリズムにおける交叉と突然変異の処理原理を示すの説明図である。
【図20】遺伝的アルゴリズムの一般的な学習曲線の例である。
【図21】符号化プログラムの動作手順を示すフローチャートである。
【図22】圧縮符号化済みデータのフォーマット例を示す模式図である。
【図23】復号化プログラムの動作手順を示すフローチャートである。
【図24】遺伝的アルゴリズムにおける個体集団の初期化方法例を示す模式図である。
【図25】本発明を多値画像に適用可能とするための方法例を示す模式図である。
【符号の説明】
3 画像バッファ
5,27 コンテクスト生成器
6 ブロック判定機
8 テンプレート発生器
11 圧縮符号化器
13 圧縮符号化済みデータ合成器
22 データ解析器
26 圧縮符号復号化器
29 復号データ信号線
30 伸長データ合成器
p 参照画素
X 注目画素
Claims (12)
- 画像情報をその画像の性質により領域単位で分割し、該分割された各領域(ブロック)毎に、相関分析により注目画素との相関強度が強い順に参照画素を探索して最適なテンプレートを作成し、前記ブロック情報、テンプレート情報及び圧縮データとで伝送用圧縮符号化済みデータを合成する適応型予測符号化方法において、上記探索により、その相関強度の大きさの順に参照画素として選択された画素が、既に参照画素と選択されている画素に隣接する場合、当該画素の注目画素との相関強度の大きさを強制的に減少させて上記参照画素選択の順番を変更させることにより上記テンプレートの参照画素配置を分散させることを特徴とする適応型予測符号化方法。
- 前記最適なテンプレートを決定するために、注目画素と該注目画素から所定距離以上離れて該注目画素との相関強度が最も強い画素(p1)とを結ぶ線分の傾きを持ち、前記線分の長さを格子間距離とする正方格子の格子点に相当する場所に位置する画素集合から、該注目画素までの距離が短い順に所定個数の画素をテンプレートを構成する参照画素として採用し、該画素集合に含まれる画素数が所定個数に満たない場合は、該画素集合に含まれる全ての参照画素をテンプレートを構成する参照画素として採用した後、所定個数までの不足分を埋めるために、該注目画素近傍で相関強度の強い画素を1つ参照画素として採用し、次に、該画素集合に含まれる画素から注目画素までの距離が短い順に選んで、その近傍画素のうちで最も相関強度の強い画素を1つ参照画素として採用する処理を、所定個数に達するまで繰り返して、テンプレートを構成する参照画素位置を決定することを特徴とする前記請求項1記載の適応型予測符号化方法。
- 前記最適なテンプレートを探索するために、枚挙法、遺伝的アルゴリズム、進化戦略、山登り法、焼き鈍し法のいずれか1つ、あるいはこれらを組み合わせた最適化方法を用いることを特徴とする前記請求項1または2記載の適応型予測符号化方法。
- 前記テンプレートは、符号化圧縮率ないしエントロピのいずれか若しくは両者を評価関数とする最適化方法によって探索されることを特徴とする前記請求項3記載の適応型予測符号化方法。
- 前記画像情報が網点画像であることを特徴とする前記請求項1〜4の内、いずれか1記載に適応型予測符号化方法。
- 画像情報をその画像の性質により領域単位で分割し、該分割された各領域(ブロック)毎に、相関分析により注目画素との相関強度が強い順に参照画素を探索して最適なテンプレートを作成し、前記ブロック情報、テンプレート情報及び圧縮データとで伝送用圧縮符号化済みデータを合成する適応型予測符号化装置において、上記探索により、その相関強度の大きさの順に参照画素として選択された画素が、既に参照画素と選択されている画素に隣接する場合、当該画素の注目画素との相関強度の大きさを強制的に減少させて上記参照画素選択の順番を変更させることにより上記テンプレートの参照画素配置を分散させることを特徴とする適応型予測符号化装置。
- 前記最適なテンプレートを決定するために、注目画素と該注目画素から所定距離以上離れて該注目画素との相関強度が最も強い画素(p1)とを結ぶ線分の傾きを持ち、前記線分の長さを格子間距離とする正方格子の格子点に相当する場所に位置する画素集合から、該注目画素までの距離が短い順に所定個数の画素をテンプレートを構成する参照画素として採用し、該画素集合に含まれる画素数が所定個数に満たない場合は、該画素集合に含まれる全ての参照画素をテンプレートを構成する参照画素として採用した後、所定個数までの不足分を埋めるために、該注目画素近傍で相関強度の強い画素を1つ参照画素として採用し、次に、該画素集合に含まれる画素から注目画素までの距離が短い順に選んで、その近傍画素のうちで最も相関強度の強い画素を1つ参照画素として採用する処理を、所定個数に達するまで繰り返して、テンプレートを構成する参照画素位置を決定することを特徴とする前記請求項6記載の適応型予測符号化装置。
- 前記最適なテンプレートを探索するために、枚挙法、遺伝的アルゴリズム、進化戦略、山登り法、焼き鈍し法のいずれか1つ、あるいはこれらを組み合わせた最適化方法を用いることを特徴とする前記請求項6または7記載の適応型予測符号化装置。
- 前記テンプレートは、符号化圧縮率ないしエントロピのいずれか若しくは両者を評価関数とする最適化方法によって探索されることを特徴とする前記請求項8記載の適応型予測符号化装置。
- 前記画像情報が網点画像であることを特徴とする前記請求項6〜9の内、いずれか1記載に適応型予測符号化装置。
- 画像情報をその画像の性質により領域単位で分割し、該分割された各領域(ブロック)毎に、相関分析により注目画素との相関強度が強い順に参照画素を探索して最適なテンプレートを作成し、前記ブロック情報、テンプレート情報及び圧縮データとで伝送用圧縮符号化済みデータを合成する適応型予測符号化処理において、圧縮すべき画像データを読み込む手順と、ヘッダを生成し、出力する手順と、上記探索により、その相関強度の大きさの順に参照画素として各画素を選択する手順と、該選択された画素が、既に参照画素と選択されている画素に隣接する場合、当該画素の注目画素との相関強度の大きさを強制的に減少させて上記参照画素選択の順番を変更させるにより上記テンプレートの参照画素配置を分散させる手順と、上記領域(ブロック)内の全ての画素に対して、走査方向に順にコンテクストを発生する手順と、該領域(ブロック)内の全ての画素と生成された画素に対応するコンテクストを用いて圧縮符号化データを生成する手順と、これまでの手順で得られたブロック情報、テンプレート情報、圧縮データを合成して、圧縮符号化済みデータ生成し、出力する手順とを実行させることを特徴とする適応型予測符号化プログラムを記録した記録媒体。
- 前記請求項11記載の記録媒体に記録されたプログラムにより生成された圧縮符号化済みデータを読み込む手順と、該圧縮符号化済みデータを解析して、ブロック分割された各領域(ブロック)に対応するテンプレートと圧縮情報とを分離し、各領域(ブロック)を圧縮する際に使用したテンプレートと圧縮符号化データを取り出す手順と、圧縮符号化データの先頭から画像データのコンテクストを逐次生成するための手順と、コンテクストを用いて圧縮符号化データから伸張データを生成する手順と、各ブロックに対応する伸張データを合成して、1つの画像データを生成する手順とを実行させることを特徴とする復号化プログラムを記憶した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002267460A JP3675429B2 (ja) | 2002-09-12 | 2002-09-12 | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002267460A JP3675429B2 (ja) | 2002-09-12 | 2002-09-12 | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000402163A Division JP3404380B2 (ja) | 2000-12-28 | 2000-12-28 | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003179761A JP2003179761A (ja) | 2003-06-27 |
JP3675429B2 true JP3675429B2 (ja) | 2005-07-27 |
Family
ID=19196852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002267460A Expired - Lifetime JP3675429B2 (ja) | 2002-09-12 | 2002-09-12 | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3675429B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007043651A (ja) | 2005-07-05 | 2007-02-15 | Ntt Docomo Inc | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム |
JP4694462B2 (ja) * | 2006-12-14 | 2011-06-08 | シャープ株式会社 | 符号化装置、符号化方法、プログラムおよびその記録媒体 |
KR101454208B1 (ko) | 2007-12-28 | 2014-10-24 | 삼성전자주식회사 | 하프톤 영상 인코딩 및 디코딩 방법 및 장치 |
JP5439871B2 (ja) * | 2009-03-06 | 2014-03-12 | 日本電気株式会社 | データ圧縮方法、装置、およびプログラム |
CN114791780B (zh) * | 2022-06-21 | 2022-09-20 | 武汉海微科技有限公司 | 显示屏触摸控制方法、装置、设备及存储介质 |
-
2002
- 2002-09-12 JP JP2002267460A patent/JP3675429B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2003179761A (ja) | 2003-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3986011B2 (ja) | データ符号化装置および画像データ符号化方法 | |
Baharav et al. | Watermarking of dither halftoned images | |
EP2173102B1 (en) | Compression of photographic and halftone images | |
JP2007143082A (ja) | 画像データの圧縮方法および装置 | |
TWI250787B (en) | Compression of bi-level images with explicit representation of ink clusters | |
JP2008234479A (ja) | 画像高品質化装置、方法、及びプログラム | |
JP4364809B2 (ja) | 画像処理装置、画像処理方法、プログラム、及び記録媒体 | |
CN114731455A (zh) | 使用与图像质量相关的ai元数据的设备和方法 | |
JP3675429B2 (ja) | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 | |
JP3404380B2 (ja) | 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体 | |
JP2007306513A (ja) | 画像データの圧縮方法および装置 | |
JP2006100977A (ja) | プリントシステムおよびプリンタ | |
KR101454208B1 (ko) | 하프톤 영상 인코딩 및 디코딩 방법 및 장치 | |
JP2010074444A (ja) | 画像圧縮装置、画像圧縮方法、画像復号装置、画像復号方法、及び、コンピュータプログラム | |
JP4748805B2 (ja) | 画像符号化装置及びその制御方法 | |
JP3990949B2 (ja) | 画像符号化装置及び画像符号化方法 | |
CN112070851B (zh) | 基于遗传算法和bp神经网络的索引图预测方法 | |
JP4696738B2 (ja) | 画像データの圧縮方法および装置並びに擬似階調画像の復元方法 | |
JP4753007B2 (ja) | 画像符号化装置、画像復号化装置及びこれらのプログラム | |
JP2007049594A (ja) | 画像データの処理方法 | |
JP3867886B2 (ja) | 画像符号化方法、画像符号化装置、画像復号化方法及び画像復号化装置 | |
JP2001103315A (ja) | 画像符号化方法および画像符号化装置 | |
JP4529681B2 (ja) | 画像データの圧縮方法および装置 | |
Liao et al. | LFC-UNet: learned lossless medical image fast compression with U-Net | |
JP3750454B2 (ja) | 画像データ符号化装置、画像データ符号化方法、記録媒体及び画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050310 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050425 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3675429 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080513 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |