JP3986012B2 - 適応型予測符号化装置および適応型予測符号復号化方法 - Google Patents

適応型予測符号化装置および適応型予測符号復号化方法 Download PDF

Info

Publication number
JP3986012B2
JP3986012B2 JP2002555520A JP2002555520A JP3986012B2 JP 3986012 B2 JP3986012 B2 JP 3986012B2 JP 2002555520 A JP2002555520 A JP 2002555520A JP 2002555520 A JP2002555520 A JP 2002555520A JP 3986012 B2 JP3986012 B2 JP 3986012B2
Authority
JP
Japan
Prior art keywords
template
block
search
image
data
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
Application number
JP2002555520A
Other languages
English (en)
Other versions
JPWO2002054758A1 (ja
Inventor
英徳 坂無
哲也 樋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by National Institute of Advanced Industrial Science and Technology AIST filed Critical National Institute of Advanced Industrial Science and Technology AIST
Publication of JPWO2002054758A1 publication Critical patent/JPWO2002054758A1/ja
Application granted granted Critical
Publication of JP3986012B2 publication Critical patent/JP3986012B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • H04N1/417Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information using predictive or differential encoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • H04N1/4105Bandwidth or redundancy reduction for halftone screened pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/52Circuits or arrangements for halftone screening

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は例えば画像情報の各画素のとる値を周囲画素の状態により予測し、その予測結果に基づいて画情報を符号化するデータ符号化方式において、圧縮効果を向上させるために、参照する周囲画素位置のパターンを高速に精度よく最適化するための方式に関する。
予測符号化方式において、各画素の取る値の予測精度が高いほど圧縮効果が向上する。予測精度は、予測時に参照する画素(参照画素)の数を増やすことにより向上する。また、参照画素の位置パターンを最適化することにより、予測精度を高めることができる。
図2は、画像を構成する各画素が0か1の2値しか取らない2値画像を符号化する方式の国際標準であるJBIG(Joint Bi−level Image experts Group)方式の参照画素位置パターンを示す(以降では、このような参照画素位置パターンのことをテンプレートと呼ぶ)。
同図において、網掛けの四角は注目画素、p1〜p9とAで示される四角は参照画素を示す。全10個の参照画素のうち、Aで示す画素はAT(Adaptive Template)画素と呼ばれ、画像の性質に応じて、図中に示すほぼ256×256画素の領域内において任意の位置に動くことが許されている。しかし、このように広大な領域から最適な位置を発見するのは非常に困難で、大きな計算コストを要するために、JBIG方式を実装した多くのシステムでは、AT画素が同図中の×印で示す8画素の範囲でしか動かないように制限している。なお、JBIG方式の勧告書において、相関強度の最も強い周囲画素を選択する方法が、AT画素位置を決定する方式として推奨されている。
一般に、文字や図形のような画像を圧縮符号化処理する場合、全参照画素が注目画素の近くに密集配置されているテンプレートが予測精度向上に有効である(電子情報通信学会論文誌vol.J70−B、no.7に掲載された加藤らの論文である″参照画素のダイナミック選択による2値画像の適応マルコフモデル符号化″)。よって、上記JBIG方式のテンプレートが有効に機能し、高い精度で注目画素の画素値を予測することができ、結果として高い圧縮率を得ることができる。
しかし自然画の場合には、参照画素を広範囲に分散配置させた方が高い予測精度を得られることが多い。さらに、どのように分散配置すべきかということは画像の性質に大きく依存する。たとえば、クラスター型のディザ法で2値化された画像では、一定周期で相関の強い画素が出現するため、参照画素配置には、絵柄に起因する特性だけでなく、ディザ法に起因する周期性を反映しなければ高い圧縮効率を得ることができない。また、渦巻き型、ベイヤー型、誤差拡散など、他のディザ法で生成された画像にも、それぞれ固有の特性があるため、高い圧縮効率を得るためには、それぞれに応じたテンプレートを使用しなければならない。
ところが、与えられた2値の自然画が、どのようなディザ法で作られたものであるかを判定することは非常に難しい。その上、画像の絵柄に起因する特性も考慮して、最適なテンプレートを簡単な計算により求めることは不可能である。ゆえに、これまでに、高い圧縮効率を得るためのテンプレートを決定する多くの方式が提案されてきた。
たとえば、宇都宮大の加藤らの方式や、米特許5023611(ルーセント)では、2値画像中で周囲画素のとる値が注目画素のとる値と同一であった回数を数え上げ、圧縮の最中にその値が一定条件を満たした場合、値の大きい周囲画素から順に参照画素としてテンプレートに組み入れる方法を採用している。
特開平6−90363号公報(リコー)では、上記のように逐次的にテンプレートを変更する方式の他に、圧縮する前に画面全体にわたって周囲画素の相関の強さをあらかじめ求めておき、それに基づいてテンプレートを決定する方法や、あらかじめ用意したテンプレートから画像情報に適したものを選択する方式について言及している。
上記3方式のように、注目画素との相関の強さだけに基づく方式では、クラスター型のディザ法で2値化された画像において最適なテンプレートを決定することができない。なぜなら、実際には複数のクラスター間の相関を考慮する必要があるにもかかわらず、1つのクラスター内における画素同士の相関が強いため、単純に相関強度だけに基づいて参照画素を選び出すと、図1(a)のように密集したテンプレートとなってしまうためである。
これに対し、特開平5−30362号公報(富士通)では、注目画素までのラン(同一ライン上で同一の画素値が連続する領域)と直前の同一色ランの距離差を周期性として用いる方法が記されている。しかし、この方式は周期性を持たない画像では有効に機能しない。
特開平11−243491号公報(三菱重工)では、テンプレートの最適化のために、重回帰分析と、圧縮率を評価関数とした遺伝的アルゴリズムを用いて、網点構造と画像が表現する絵柄に起因する性質の両方への対応を図っている。遺伝的アルゴリズムは、自然界にみられる生物の進化や適応をモデル化した計算方式で、人工知能の強力な探索手法である。これにより膨大な可能性の中から、適切なテンプレートを選び出すことが可能となる。
しかし、この方式には、処理速度が極めて遅いという問題点がある。その理由は、遺伝的アルゴリズムの実装方法にある。遺伝的アルゴリズムは、複数の解候補からなる集団を用意し、それぞれを評価し、評価に基づいて新しい解候補集団を生成するというプロセスを1世代とし、停止条件が満たされるまで何世代も繰り返すという計算手続きをとる。すなわち、1回の試行につき[個体集団サイズ]×[世代数]回の評価を要する。
一方、特開平11−243491号公報の方式では、評価方法として圧縮率の計算を使っているために、1回の評価を行うために圧縮対象である画像データを1度符号化して、圧縮率を求なければならない。つまり、同方式でテンプレートを最適化するためには、テンプレートの最適化を行わない場合と比較して、[個体集団サイズ]×[世代数]倍の計算時間が必要となる。たとえば、個体集団サイズを30、世代数を100とすると、最適化されたテンプレートを得るためには、遺伝的アルゴリズムを使用しない場合よりも3000倍長い計算時間が必要となる。
ファクシミリ装置のような画像伝送システムへの適用を鑑みた場合、このように膨大な時間をかけて遺伝的アルゴリズムでテンプレートの最適化をしている間に、無圧縮のデータ転送が完了してしまう。また、印刷用画像データのように数百ギガバイトの画像の圧縮を完了するためには莫大な計算時間が必要となり、とても現実的ではない。
特開平6−90363号公報 特開平5−30362号公報 特開平11−243491号公報
本発明は、予測符号化における上記の問題を解決し、各種画像情報に対して常に高いデータ圧縮効率を得るための、テンプレート(参照画素位置パターン)の高速な適応的調整方式を提供することを目的とする。
このために、本発明は、
(A)入力された画像情報に対してその局所的な類似度に基づいて画像分割を行い、(B)分割された領域ごとにデータベース、解析処理、高速化機構を有する人工知能技術などを用いたテンプレート最適化により予測精度を高め、
(C)その最適化結果を用いてデータベースを更新して、次回以降における圧縮効率および速度の向上を図ること特徴とするものである。
以下では、これらの要素について順に説明する。
まず、(A)について述べる。入力された画像情報を適切に分割するということは、同一の領域内では均質で、隣り合う領域同士では異なる性質を持つ領域単位で画像を切り分けることである。分割の例を図14に示す。こうすることで、同一領域内では無条件に同じテンプレートを用いることができるようになる。さらに、適切に画像分割することで、木目細かなテンプレートの最適化を行えるようになり、分割画像ブロック内での画素値予測の精度が向上するため、結果として全体の圧縮効率が向上する。
分割の仕方を決定する方法は、1パスと2パスに大きく分類される。2パスとは、画像全体を最初に読み込んで、全体に対する解析などを行って分割方法を決定した後、あらためて分割領域ごとに読み込む方式である。画像全体の情報を利用できるため、精度の高い分割の仕方を得ることができる反面、2度にわたってデータの読み込みを行わねばならず、処理速度が低下するという問題がある。逆に1パスでは、画像を読み込みながら、逐次的に分割の仕方を決定する。画像全体の性質を反映した処理を行えないため、必ずしも最適な画像分割は行えないが、処理速度の低下を避けることができる。本発明では、1パス方式をベースに、ラスター方向に読み込んだ画像データをライン毎に分析することにより、適切な画像分割を行う。その詳細および具体的な処理方法については後述の実施例において説明する。
続いて(B)について述べる。本特許では、従来手法とは異なり、圧縮対象となる画像を生成したディザ方式を仮定しながら統計的処理および分析を行うことで、精度の高いテンプレートを生成する。また、あらかじめ想定されるディザ法とテンプレートの関係を格納したデータベースを用いて、圧縮符号化効率だけでなく、テンプレートを決定するために要する時間を飛躍的に短縮することが可能である。さらに、上記の方法で決定されたテンプレートをベースに、人工知能技術(遺伝的アルゴリズム等)を適用して、画像の絵柄に応じて適応的に調整することによって、より高い予測精度に寄与するテンプレートを得ることができる。画像の大局的な特性を損なうことなく一部分だけを切り出すことで、テンプレート決定の高速化も同時に行う。
最後に(C)について述べる。(B)で得られたテンプレートをフィードバックし、データベースを更新することで、使い込むほどに賢くなるデータ圧縮システムを構築できる。すなわち、同様な性質を持つ画像データを繰り返し処理することにより、人工知能技術を適用せずとも、高予測精度に寄与するテンプレートを高速に得ることができるようになる。この仕組みは、自律的に学習するエキスパートシステムと見なすことも可能である。
本発明においては、入力された画像情報を均質な領域単位で分割することで、同一領域内では無条件に同じテンプレートを用いることができるようになる。さらに、適切に画像分割することで、木目細かなテンプレートの最適化を行えるようになり、分割画像ブロック内での画素値予測の精度が向上するため、結果として全体の圧縮効率が向上する。
本発明においては、従来手法とは異なり、圧縮対象となる画像を生成したディザ方式を仮定しながら統計的処理および分析を行うことで、精度の高いテンプレートを生成する。また、あらかじめ想定されるディザ法とテンプレートの関係を格納したデータベースを用いて、圧縮符号化効率だけでなく、テンプレートを決定するために要する時間を飛躍的に短縮することが可能である。
また、上記の方法で決定されたテンプレートをベースに、人工知能技術(遺伝的アルゴリズム等)を適用して、画像の絵柄に応じて適応的に調整することによって、より高い予測精度に寄与するテンプレートを得ることができる。画像の大局的な特性を損なうことなく一部分だけを切り出すことで、テンプレート決定の高速化も同時に行う。
更に、得られたテンプレートをフィードバックし、データベースを更新することで、使い込むほどに賢くなるデータ圧縮システムを構築できる。すなわち、同様な性質を持つ画像データを繰り返し処理することにより、人工知能技術を適用せずとも、高予測精度に寄与するテンプレートを高速に得ることができるようになる。
以下、添付図面を参照しながら、本発明の実施例を詳細に説明する。
図6は、本発明の一実施例に係る画像伝送装置の送信側の構成図を示している。同図において、画像バッファ3は、画像データ入力線2からの入力される画像データ1を一時保存しておくためのものである。保存された画像データは、後述するブロック判定器6からのブロック情報に基づいて、ブロック判定器6、コンテクスト生成器5、テンプレート発生器8、圧縮符号化器11(いずれも後述)へと、画像データ信号線4を通して出力される。
ブロック判定器6は、入力される画像データを、特徴的なブロック単位に分割し、以降の処理をブロックごとに行わせることで、圧縮符号化効率を高めるためのものである。ブロック判定器6へは、画像データ信号線4を介して画像データが入力され、これを基にブロック分割の仕方が決定され、ブロック情報(各ブロックの大きさと位置)がブロック情報信号線7を通して出力される。なお、ブロック分割の仕方は、ブロック判定器制御信号線17を通してブロック判定器制御信号を入力することにより、外部から決定・制御することも可能である。
テンプレート発生器8は、入力される画像データに対して、最大の圧縮率に寄与できる最適なテンプレートを決定する。ここへは、画像データ信号線4を経た画像データと、圧縮データ信号線12を介した圧縮データが入力される。圧縮データは、テンプレート発生器が出力したテンプレートの良さを示す指標として利用される。なお、テンプレート発生器制御信号線16を通して、外部からテンプレートを強制的に指定し、圧縮符号化を行わせることも可能である。
コンテクスト生成器5は、テンプレート信号線9を介して入力されるテンプレートを用いて、画像データ信号線4を介して入力される画像データにおける参照画素のとる値のパターン(コンテクスト)を取得するためのものである。
ここでコンテクストとはテンプレートにより指定された位置にある画素のとる値を取り出して並べたベクトルのことである。たとえば図15(a)のようなテンプレートでは、網掛けの四角が注目画素、p1〜p4が参照画素の位置を示すものとすると、同図(d)においてp1〜p4に対応する画素のとる値は、それぞれp1=0、p2=1、p3=1、p4=1である。よって、これらの値を並べて生成される<0111>がコンテクストとなる。
コンテクスト生成器では、シフトレジスタを有効に利用することで処理速度を向上することができる。図15(a)のテンプレートの例では、p1、p2、p3が横に並んでいる。このテンプレートが右に1ビットずれると、p2の値がp1に移り、p3の値がp2に移ることとなる。すなわち、p1〜p3に対応するシフトレジスタを使用することで、テンプレートが右にずれたときにメモリから新規に読み込む必要があるのはp3とp4の2画素分だけ済む。その結果、メモリアドレスの演算回数を減らすことができるため、処理速度を向上させることができる。
圧縮符号化器11は、コンテクスト信号線10を介して入力されるコンテクストを用いて、画像データ信号線4を介して入力される画像データを圧縮符号化し、圧縮データを生成するためのものである。
圧縮符号化済みデータ合成器13は、圧縮データに対して、それを生成するために使用したテンプレートと、圧縮データの元となったブロック情報を付加して、圧縮符号化済みデータ15を生成するためのものである。ここへは、ブロック情報信号線7を介してブロック情報、テンプレート信号線9を介してテンプレート、圧縮データ信号線12を介して圧縮データが入力される。また、当該システムの外部から、画像データに関する属性情報(画像データの解像度、線数、スクリーン角度、画像データを生成したシステム名とバージョン、画像データの作成日時など)を、属性情報入力線18を介して圧縮符号化済みデータ合成器13に入力し、圧縮符号化済みデータ15のヘッダに記録することもできる。
図6に基づいて、画像データの圧縮および圧縮符号化済みデータ15の出力までの手順を簡単に説明する。
まず、当該システムの外部から、画像データに関する属性情報が属性情報入力線18を介して圧縮符号化済みデータ合成器13に入力され、圧縮符号化済みデータのヘッダとして記録される。この属性情報はなくても構わない。
続いて、圧縮対象となる画像データ1が画像データ入力線2を通して画像バッファ3へと入力される。このデータは画像データ信号線4を通してブロック判定器6へと送られる。このとき、画像データの大きさ(縦横サイズ)が判明するので、ブロック情報信号線7を介して圧縮符号化済みデータ合成器13に送られ、圧縮符号化済みデータ15のヘッダに記録される。
ブロック判定器6では画像に対するブロック分割の仕方が計算される。なお、たとえば新聞の紙面のように文字領域や写真領域の位置が紙面編集の段階で確定しているような場合には、ブロック判定器で最適なブロック分割の仕方を計算する必要はなく、これを行わないことで処理速度を向上させることができる。すなわち、ブロック判定器制御信号線17を通して、紙面配置情報をブロック判定器6が読み込むことにより、この処理を高速化可能である。また、紙面配置情報をベースに、さらにブロックを適切に細分化することで、より高い圧縮効率が期待できる。この具体的な処理方法は後述する。
上記の手順で決定されたブロック分割情報は、画像バッファ3へと送られ、画像バッファ3からはブロック単位で画像データがテンプレート発生器8へと送られる。テンプレート発生器8では、図8のフローチャートに示す手順に基づいて、ブロック毎に最適なテンプレートが計算される。このときの処理方法については後述する。なお、フォントサイズの小さな文字領域については、図1(a)のように注目画素の周囲に参照画素が密集した形状のテンプレートが有効に機能することが知られているため、テンプレート最適化を行う必要はない。そこで、このように特定のブロックに対する最適なテンプレートがあらかじめ判明している場合には、テンプレート発生器制御信号線16を介して入力されるテンプレート発生器制御信号により、自動的にテンプレートが決定される。
コンテクスト生成器5では、テンプレート発生器8で計算されたテンプレートを用いて、画像バッファ3から画像データ信号線4を通して送られてくるブロック分割された画像データを走査しながら、各画素毎にコンテクストを抽出する。
圧縮符号化器11では、画像バッファ3から画像データ信号線4を通して送られてくるブロック分割された画像データの各画素と、上記の手順で得られたコンテクストを用いて圧縮データを生成する。得られた圧縮データは圧縮データ信号線12を通して圧縮符号化済みデータ合成器13へと送られ、ブロック判定器6からブロック情報信号線7を通して送られてくるブロック情報と、テンプレート発生器8からテンプレート信号線9を通して送られてくるテンプレートと合成され、各ブロックに関する圧縮情報単位で連結され、圧縮符号化済みデータ15として圧縮符号化済みデータ出力線14を通して受信側へと送信される。
なお、圧縮符号化器11から生成される圧縮データはテンプレート発生器8におけるテンプレート最適化処理において圧縮率の計算に使用されるため、圧縮データ信号線12を通してテンプレート発生器へも送られる。
図7は、本発明の一実施例に係る画像伝送装置の受信側の構成図を示している。同図において、データ解析器22は、圧縮符号化済みデータ入力線21から入力される圧縮符号化済みデータ20から、ヘッダ部分と、ブロックごとに圧縮された各ブロックに関する圧縮情報(テンプレート、ブロック情報、圧縮データ)を分離し、ブロック情報に基づいてテンプレートと圧縮データを出力するためのものである。
コンテクスト生成器27は、テンプレート信号線25を介して入力されるテンプレートを用いて、復号データ信号線29を介して入力される復号データにおける参照画素のとる値のパターン(コンテクスト)を取得するためのものである。
圧縮符号復号化器26は、コンテクスト信号線28を介して入力されるコンテクストを用いて、圧縮データ信号線25を介して入力される圧縮データを復号化し、復号データを生成するためのものである。
圧縮符号復号化器26からは、ブロック分割された復号データがパッチワークのように断片的に出力されるため、これらを正しく配列しなければ原画像を復元することはできない。そこで、伸張データ合成器30は、圧縮符号復号化器26から復号データ信号線29を通して入力される復号データを受け取り、データ解析器21からブロック情報信号線23を通して受け取るブロック情報に基づいて、復号データを配置しながら蓄積することで伸張データを合成し、伸張データ出力線28を通して外部へと出力する。
図7に基づいて,圧縮データの復号および伸張データの出力までの手順を簡単に説明する。
まず、圧縮符号化済みデータ入力線21を介してデータ解析器22へと圧縮符号化済みデータ20が入力される。圧縮符号化済みデータ20のフォーマットは図24を用いて後述する。データ解析器22では、圧縮符号化済みデータ20を解析し、ヘッダ部分と、各ブロックに関する圧縮情報(ブロック情報、テンプレート、圧縮データ)が分離して取り出される。
ヘッダ部分に記録されていた原画像の属性情報は、伸張データ合成器30へと送られ、そのまま伸張画像ヘッダとなる。また、ヘッダ部分には必ず原画像データの大きさ(縦横サイズ)が記録されており、伸張データ合成器30はこの情報を用いて、復号データから伸張データの復元を行う。
圧縮データは圧縮データ信号線24を通して圧縮符号復号化器26へと送られ、これに対応するテンプレートがテンプレート信号線25を介してコンテクスト生成器27へと送られる。圧縮符号復号化器26では、コンテクスト生成器27からコンテクスト信号線28を介してコンテクストを受け取り、これを用いて圧縮データを復号化して、復号データ信号線29を介して出力する。出力された復号データはコンテクスト生成器27へと送られ、テンプレートを用いてコンテクストを生成するために使用される。
伸張データ合成器30へは、圧縮符号復号化器26から復号データ信号線29を介して伸張データが入力され、データ解析器22からブロック情報信号線23を介して入力されるブロック情報を用いて、パッチワーク状に断片化された画像データとしての復号データの再配置が行われ、伸張データが合成される。伸張データは伸張データ出力線28を介して外部へと出力される。
図34は、本発明にかかわる技術をハードウェアも使用して実現した例である。本技術を用いた画像データ圧縮ハードウェアは、プロセッサ、メインメモリ、各種レジスタ、圧縮/伸張処理部から構成される。圧縮時における各要素の動作は以下のとおりである。プロセッサでは、ブロックの判定、テンプレートの生成、およびホスト計算機とのインタフェースを行う。メインメモリは、プロセッサで処理するブロック判定およびテンプレート生成用プログラム、さらに発見されたテンプレートを格納するために用いる。各種レジスタは、プロセッサと圧縮処理部のインタフェースとして使用される。圧縮処理部では、コンテクスト生成、圧縮符号化処理、圧縮符号化済みデータ合成が行われる。なお、圧縮符号化済みデータ合成は、外部のホスト計算機で行ってもよい。
伸張時における各要素の動作は以下のとおりである。プロセッサは、伸張の際にはほとんど使用されず、圧縮データ先頭部分のデータ解析と、ホスト計算機とのインタフェースを行うために使用される。メインメモリには、圧縮時と同様に、プロセッサが実行するデータ解析プログラムを格納される。各種レジスタは、プロセッサと圧縮/伸張処理部とのインタフェースとして働く。圧縮伸張処理部では、コンテクスト生成、圧縮符号復号化処理および伸張データの合成が行われる。なお、伸張データの合成は、外部のホスト計算機で行ってもよい。
以下では、動作について説明する。まず、圧縮の開始時に、ホスト計算機に格納されている圧縮対象画像データに関して、その大きさや解像度などの情報が、画像データ圧縮ハードウェアのプロセッサと圧縮/伸張処理部に送られる。圧縮/伸張処理部では、これらのデータを圧縮符号化済みデータのヘッダに記録する。プロセッサでは、圧縮/伸張処理部と協調して、これらのデータを用いて、ブロック判定およびテンプレート最適化が行われる。
ソフトウェアによる適応型テンプレート調整方式の動作手順を図8に示す。はじめに、全体の流れを概説し、その後、各処理について詳しく説明する。
入力画像データに対して、はじめに、性質の似通った領域単位で別々に圧縮処理を行うために画像分割s1を行う。ここで、画像全体をブロックに分割してしまってもよいし、一部分だけをブロックに分割し、残った部分を後からブロックに分割してもよい。前者は2パス、後者は1パスの処理に相当する。ここでは1パス処理を行うこととする。
画像の一部分が複数のブロックに分割された後、分割された画像ブロックのそれぞれに対してテンプレート最適化s2が行われる。
画像分割s1で生成された画像ブロックの全てに対してテンプレート最適化が行われた後、画像末端に達するまで、残りの部分のブロック分割とブロックごとのテンプレート最適化が行われる。
図9にブロック判定のための画像分割(s1)手続きを示す。水平方向分割s12では、プロセッサがブロック境界を検知するまで、図35に示す圧縮/伸張処理部の画像データメモリに1ラインずつ逐次的に読み込まれる。ブロック境界の検知方法は以下のとおりである。
図10は、水平方向分割s12のフローチャートを示す。まず、ステップs121において、1ラインずつ走査しながら、同一色が連続するランの長さを全て記録し、同時に当該ラインの特徴量を計算する。記録されたラン長は垂直方向のブロック分割に使用され、ラインの特徴量は水平方向のブロック分割に使用される。特徴量としては、平均ラン長や同時確率密度(参照可能範囲内にある全ての画素に関して、注目画素と同じ値を持つ確率)に基づくKL(Kullback−Leibler)情報量などを使用する。
そして、注目ラインの特徴量と、その前ラインの特徴量を比較する(s122)。ここで両者の差異があらかじめ定められた閾値以上に大きい場合、注目しているライン直前までを同一ブロックであるとし、ブロック境界を検知する。また、閾値を越えていない場合でも、画像末端に達した場合には、そこをブロック境界とする。
同時確率密度について図15を用いて説明する。同図(a)において、p1〜p4の4画素を参照可能範囲にある全ての画素、網掛けの四角が注目画素であるものとする。また、同図(b)の第2ライン目が、現在着目しているラインであるものとする。同時確率密度を求めるためには同図(c)〜(e)のように注目ラインを走査して、各参照画素が注目画素と同じ値を取る確率を計算する。同図(c)では、参照画素p1とp4がデータの定義域の外に出てしまっているが、この場合は0であるものとすると、p3のみが着目画素と同じ値を持つ。同様に同図(d)ではp2、p3、p4の3画素、同図(e)ではp1、p2、p3の3画素が着目画素と同じ値を持ち、同図(c)〜(e)まで1ラインを走査すると、p1〜p4が着目画素と同じ値であった回数は、それぞれ7、7、7、6となり、それぞれの注目画素に対する相関強度を意味する。そして、これを正規化して得られる7/27、7/27、7/27、6/27が同時確率密度である。
同時確率密度に基づくKL情報量の計算手続きは以下のとおりである。すなわち、Xiを当該ラインの特徴量、Yiを前ラインの特徴量であるとすると、KL情報量であるKLDは
KLD=KL(X)+KL(Y)
と計算される。ただし、ここで
KL(X)=Σ{Xi×log(Xi/Yi)}
KL(Y)=Σ{Yi×log(Yi/Xi)}
であるものとする。
なお、特徴量の比較を行う際に、前ラインだけの特徴量ではなく、当該ブロックから前ラインまでの全てのラインに関する特徴量を計算しておき、その平均や移動平均、加重平均などと、当該ラインの特徴量と比較することにより精度の高い特徴量比較を行うことができる。
また、特徴量比較における規範として、KL情報量の他にMDL(Minimum Description Length)基準、AIC(Akaike’s Information Criterion)、ベクトル間の距離などを使用してもよい。
さらに、特徴量を求める際に、参照可能範囲内にある全ての画素に関して計算をするのではなく、直前のブロックで使用したテンプレートに含まれる参照画素だけに関して計算を行うことで、高速化を図ることもできる。
水平方向のブロック境界が検知された後、そのブロックをさらに垂直方向に分割することも可能である。図11は、垂直方向分割(s13)の詳細な手続きを示す。
まずステップs131において、垂直分割位置候補の選出を行う。ステップ121において記録した、各ラインにおける同一色によるランの長さを参照しながら、全てのラインにおいて垂直分割位置候補を選び出すことができる。
図33は、幅16画素、高さ8ラインの画像ブロックの例を示す。第1行目においては、(a)、(c)、(d)、(f)、(i)、(l)、(n)、(o)の8箇所が垂直分割位置候補となる。同様に、第2行目は(b)、(f)、(i)、(n)の4箇所が垂直分割位置候補となる。同様の処理を全てのラインに繰り返すことで、各ラインで垂直分割位置候補が選び出される。
続いて、ステップs132おいて、全ての垂直分割位置候補を、実際に当該ブロックの垂直分割位置として選択するかどうかが検査される。その手順としては、多数決的な手法を使用する。すなわち、あらかじめ与えられた閾値としての選定基準率を0.8とすると、8ライン中7ラインが(b)にランの切れ目を有し、全体の7/8、すなわち割合として0.8以上のラインが(b)を垂直分割位置として支持しているものと見なせる。よって(b)は垂直分割位置として選択される。同様に(f)と(n)は全てのラインが同位置にランの切れ目を有するため(割合として1.0)、これらも当該ブロックの垂直分割位置として選択される。
上記の例では、最小ラン長を1として、長さ1以上のランの切れ目を垂直分割位置候補として選出したが、最小ラン長を2以上に設定してもよい。最小ラン長が小さくなるほど、垂直分割位置選出の感度が高くなるため、垂直分割数が多くなる。逆に、最小ラン長が大きくなるほど、感度が下がるために、垂直分割数は少なくなる。実際、上記の例の場合では、最小ラン長が2以上になると、垂直分割は行われないことになる。
なお、圧縮/伸張処理部内に専用の計算ユニットを配置し、上記の水平および垂直ブロック分割によるブロック判定をプロセッサではなく、この専用計算ユニットで行ってもよい。
ブロック判定の後は、それぞれのブロックに対してテンプレートの最適化(s2)が行われる。テンプレート最適化の計算手続きは図28の通りである。
まず、ステップs21にてデータベース検索を行う。図6におけるメモリ8Mに格納されるデータベースには、あらかじめ登録されたテンプレートのほか、後述のテンプレート探索で得られたテンプレートが記録されている。
データベース検索の結果、登録テンプレートが発見された場合、そのままステップ28に進む(s26)。
もし、データベース中に該当するテンプレートが登録されていなければ、次に、画像解析s22を行う。ここでは、データの周期性などを参照して、統計処理や簡単な計算により、画像データに適したテンプレートを求める。続いて、画像解析s22の結果であるテンプレートを検索キーとして用いて、データベースの再検索s27を行う。このとき、デーータベースに該当テンプレートが登録されていようと、いまいと、テンプレート探索を行うかどうかの判断ステップs28に進む。
ステップ28では、テンプレート探索を行うかどうかの判断がなされる。その判断基準については後述する。もし、テンプレート探索を行わないという判断が下された場合、ステップ25に進み、テンプレート最適化処理を完了する。
テンプレート探索s23では、人工知能に基づく探索的手法を用いて、テンプレートの最適化を行う。最後に、テンプレート探索で得られたテンプレートをデータベースに適切に格納する。ここで格納されたテンプレートは、上述のデータベース検索で使用され、精度の高いテンプレートを高速に得るために利用される。
なお、この上記手続きは、上記ブロック分割で得られた分割画像ブロックの全てに対して行われる。また、計算速度を向上させるため、全ての分割画像ブロックではなく、一部の分割画像ブロックを代表例として処理し、その結果を単純に他の分割ブロックに適用するということも可能である。さらに高速化の必要がある場合には、画像解析やテンプレート探索を必要に応じて省略することも可能である。
以降、図28における各処理ステップについて順に説明する。
図29は、データベース検索s21の処理フローである。データベース検索は、ステップs211において、属性情報が登録内容と照合される。図16は、テンプレートデータベース構造の一例である。この場合、検索キーとして符号化対象である画像データを生成したシステム、そのバージョン、画像データの解像度、線数、スクリーン角度が使用され、あらかじめ定められた閾値以上に一致度が高い登録テンプレートが選択される。画像解析結果(入力テンプレート)は、図28におけるデータベース再検索s27で使用するための検索キーで、ここでは使用しない。データベース検索s21の結果、適合するテンプレートが発見された場合、ステップs26から、テンプレート探索を行うかどうかの判断ステップs28に進む。ここでの判断規範としては、基準テンプレートを用いた場合と比較して、(a)圧縮率が一定閾値以上高いかどうか、(b)テンプレートに含まれる各画素の相関強度(後述)の総和が一定閾値以上高いかどうか、などを用いる。通常は(a)を用いるが、少しでも処理時間を短縮したい場合には(b)を使用してもよい。
ここで、基準テンプレートとしては、JBIGおよびJBIG2方式のデフォルトテンプレートを使用する。データベース検索で2番目に適合したテンプレート、あるいは、既に処理済のブロックで最終的に使用されたテンプレートなどを使用してもよい。
このとき、計算時間を短縮するために、画像の対象ブロックの一部分だけを切り出して生成される画像、行および列に関して一定規則に基づいて間引いて生成された画像を使用してもよい。
なお、強制的にテンプレート探索を行わせるか、行わせないかどうかの判断を、オペレータや外部システムにより下すことも可能である。
ステップs28において、テンプレート探索を行うという判断が下されたときは、そのままステップs23でテンプレート探索を行い、行わないという判断が下された場合は、ステップs25に進んで、テンプレート最適化処理を完了する。テンプレート探索については後述する。
データベース検索s21の結果、適合するテンプレートが発見されなかった場合は、図28のステップs26を経て、画像解析s22に進む。
図30は、画像解析の処理フローである。ここでは、ディザ分析s221を試み、それが可能だった場合はそのまま終了し、それができなかった場合には相関分析s223を行ってから終了する。
ディザ分析は、ディザ画像を生成する際に使用するディザマトリクスに起因する周期性を利用する。この手順は下記のとおりである。まず、参照可能範囲にある全ての画素について、注目画素との相関を計算する。次に、注目画素から一定距離以上離れている周囲画素のうち、最も相関の強い画素を一つ選び出す。
符号化対象の画像がディザマトリクスを使用して生成されたディザ画像である場合、相関の強い画素同士は一定角度傾き、特定の辺の長さを持つ正方形の頂点に配置されるため、注目画素から選び出された画素までの距離と方向は、図18(a)の関係性を満たしている蓋然性が高い。同図において、網掛けの四角は注目画素、×印の四角は注目画素から一定距離以上離れた画素のうちで最も大きな相関強度を持つ画素、空白の四角はこれらの関係性から強い相関を持つと推定される画素を示す(これらを理想配置画素と以降では呼ぶ)。そこで、理想配置画素の中から参照画素を選択することで、単純な相関強度に基づく参照画素の選択方法よりも精度よくテンプレートを決定することが可能となる。
もし、参照可能範囲に存在する理想配置画素数mが、テンプレートを構成する参照画素数nよりも多い場合、注目画素からの距離が小さい順にn個の理想配置画素を選択し、初期テンプレートの構成参照画素として採用する。例えば図18(a)のような理想配置画素かつ参照画素数n=10の場合、p1〜p10までの理想配置画素が参照画素として選択される。
逆に、参照可能範囲に存在する理想配置画素数nがテンプレートを構成する参照画素数mよりも少ない場合は、注目画素の隣接画素と、理想配置画素の隣接画素の中から、注目画素からの距離が小さい順に参照画素を選択する。例えば図18(a)のような理想配置画素かつ参照画素数n=16の場合、p1〜p13までの理想配置画素をテンプレートに採用し、なお不足する参照画素を補充するため、相関強度の強い順に3つの参照画素を選択する。
ところが、参照可能範囲が狭すぎて十分な数の理想配置画素数を包含できない場合、あるいは参照可能範囲に対する理想配置画素間の距離が極めて大きい場合、一般に相関強度の強い画素は注目画素近傍に集まりやすいため、理想配置画素以外の参照画素は全て注目画素近傍から選ばれることになる可能性が高い。
図18(b)は参照可能範囲が狭すぎる場合の例である。ここで参照画素数n=16とすると、理想配置画素p1〜p7以外の9個の参照画素は全て注目画素近傍から選ばれる可能性が高い。同図(b)中では、注目画素近傍の添え字のない空白の四角で示される画素が、不足分を補充するための参照画素として選択される。しかし、これでは参照画素同士が密集しすぎているため、自然画に対して有効に機能できない。
このような状況を避けるため、以下に説明するような方式でテンプレートを決定する。すなわち、まず、注目画素に隣接する画素のうちで注目画素との相関が最も強い画素を参照画素として採用する。次に、注目画素から近い順に理想配置画素を選び、それと隣接する画素のうちで注目画素との相関が最も強い画素を参照画素として採用する。図18(b)の例の場合、ここまでの手順で、注目画素の隣接画素、7個の理想配置画素とそれぞれ1つずつの隣接画素の、合計15(=1+7×2)個の参照画素が決定される。これでもまだ総参照画素数よりも少ない場合は、注目画素に隣接する画素から2つ目の参照画素を採用し、さらに理想配置画素に隣接する画素からもそれぞれ2つめの参照画素を採用するプロセスを、採用した参照画素数がテンプレートを構成する総参照画素数に達するまで繰り返す。
なお、上記ディザ分析において、相関強度の代わりに、画像分割を行うときに計算してある同時確率密度を使用し、計算時間を大幅に短縮することができる。
以上の手続きにより、ディザ分析が完了する。なお、あらかじめディザマトリクスが判明している場合には、その大きさから周期性や相関パターンを明確に検出することができるので、理想画素配置の計算を省略することが可能である。
図30のステップs223では、ディザ分析が上手く機能しない場合に相関分析を行う。なお、相関強度を計算する際、通常は分割画像ブロックを構成する全ての画素を走査するが、計算を省略することで高速化することが可能である。すなわち、数画素おき、数ラインおきに走査すること、あるいは一部の領域内だけを走査することにより計算速度を向上させられる。高速化のためには、分割画像ブロック内の、さらに一部分だけを限定して走査してもよい。
相関分析s223では、まず、参照可能範囲にある全ての画素について、注目画素との相関を計算する。そして、テンプレートがn画素から構成される場合、相関の強い順にn個の画素を選び出して初期テンプレートに採用し、画像解析手続きを完了する。
ところで、高周波成分が非常に強い画像において、単純に相関強度の大きさに基づく選択基準を用いると、図1(a)のように、注目画素周囲に参照画素が密集してしまう。このようなテンプレートは文字領域では有効であるものの、自然画には不適切であることはすでに述べた。そこで、相関の強い画素から単純に選び出す方法に基づきながら、より参照画素の配置を広く分散させることが必要となる。
そのための方法の一例を、図17(a)を用いて説明する。同図中、網掛けの四角は注目画素、空白の四角は相関強度が0の画素、数字が入力された四角はその数字を相関強度として持つ画素である。この例では、テンプレートは3つの参照画素から構成されるものとする。ここで、参照画素が単純に相関強度の大きさだけを基準として選び出させる場合には、相関強度が100、90、80の画素がテンプレートを構成することになる。しかし、参照画素として選び出された画素の隣接画素の相関強度を強制的に減少させることにより、異なるテンプレートが生成される。
すなわち、参照画素として選び出された画素の隣接画素の相関強度を、そのたびに90%に減少させるものとすると、相関強度が100、90の2つの画素が選び出された後の状態は図17(b)のようになる。図17(a)で相関強度が80であった画素は、相関強度100、90の2画素が選び出されることにより、その相関強度は80×0.9×0.9=64.8にまで減少する。したがって、この場合の3つ目の参照画素としては、相関強度が70の画素が選ばれることになる。
なお、上記相関分析において、相関強度の代わりに、画像分割を行うときに計算してある同時確率密度を使用し、計算時間を大幅に短縮することができる。
検索キーとしての画像解析結果(入力テンプレート)に適合するテンプレートがデータベース中に登録されているということは、現在圧縮処理しようとしている画像データと、非常に統計的性質の似通った画像データに関して、これまでに圧縮処理を行った経験があるということを意味している。すなわち、そのときのテンプレート探索結果である登録テンプレートを利用することによって、テンプレート探索結果に要する計算時間を省きつつ、画像解析結果そのままより有効に機能するテンプレートを得ることができる。
ただし、ある画像で有効に機能したテンプレートが、その画像と統計的性質が非常に似通った画像でも有効に機能するということの蓋然性は高いものの、保証されるものではない。たとえば、誤差拡散法で処理されたディザ画像では、絵柄によらず、統計的手法で決定した参照画素は図1(a)のように密集配置されやすい。そこで、そのような状況があらかじめ想定される場合には、データベース検索における適合度の閾値を高く設定しておけばよい。また、ディザ方式により異なる閾値を設定しておけば、自動的に上記問題を解消することも可能である。
ここまでが、図28における画像解析s22の動作説明に関する説明である。つづいて、データベース再検索s27について述べる。
上述のデータベース検索s21とは異なり、ここでは検索キーとして画像解析結果(入力テンプレート)だけを使用し(図16参照)、一定閾値以上適合した登録テンプレートを出力する。
データベース再検索の後は、ステップs28において、テンプレート探索を行うかどうかの判断が下されるが、この処理手順は上述のとおりである。
つづいて、テンプレート探索s23について述べる。
図31のフローチャートに例示されるように、テンプレート探索s23の処理手順は2段階の処理からなる。第1段階では、画像解析s22で得られたテンプレートを初期状態として用いて遺伝的アルゴリズムs231を実行し、テンプレートの最適化を行う。その後、第2段階で、得られたテンプレートを局所探索s232にてさらに調整し、処理を完了する。
まず、遺伝的アルゴリズムs301について説明する。遺伝的アルゴリズムの参考文献としては、例えば、出版社ADDION−WESLEY PUBLISHING COMPANY、INC.が1989年に出版した、David E.Goldberg著の「Genetic Algorithms in Search、Optimization、and Machiine Learning」がある。
一般的な遺伝的アルゴリズムでは、まず遺伝子を持つ仮想的な生物の集団を設定し、あらかじめ定めた環境に適応している個体が、その適応度の高さに応じて生存し、子孫を残す確率が増えるようにする。そして、遺伝的操作と呼ばれる手順で親の遺伝子を子に継承させる。このような世代交代を実行し、遺伝子および生物集団を進化させることにより、高い適応度を持つ個体が生物集団の大勢を占めるようになる。そしてその際の遺伝的操作としては、実際の生物の生殖においても生じる、遺伝子の交叉、および突然変異等が用いられる。
図12は、かかる遺伝的アルゴリズムの概略手順を示すフローチャートであり、ここでは、初めにステップs2311で、個体の染色体を決定する。すなわち、世代交代の際に親の個体から子孫の個体に、どのような内容のデータをどのような形式で伝えるかを定める。図19に染色体を例示する。ここでは、対象とする最適化問題の変数ベクトルxを、M個の記号Ai(i=1、2、…、M)の列で表わすことにし、これをM個の遺伝子からなる染色体とみなす。図19中、Chは染色体、Gsは遺伝子を示し、遺伝子の個数Mは5である。遺伝子の値Aiとしては、ある整数の組、ある範囲の実数値、単なる記号の列などを問題に応じて定める。図19の例では、a〜eのアルファベットが遺伝子である。このようにして記号化された遺伝子の集合が個体の染色体である。
上記ステップs2311では次に、各個体が環境にどの程度適応しているかを表わす適応度の計算方法を決定する。その際、対象とする最適化問題の評価関数の値がより高い変数あるいはより低い変数ほど、それに対応する個体の適応度が高くなるように設計する。またその後に行う世代交代では、適応度の高い個体ほど、生き残る確率あるいは子孫を作る確率が他の適応度の低い個体よりも高くなるようにする。逆に、適応度の低い個体は、環境にうまく適応していない個体とみなして、消滅させる。これは、進化論における自然淘汰の原理を反映したものである。すなわち適応度は、生存の可能性という面から見て各個体がどの程度優れているかを表わす尺度となる。
遺伝的アルゴリズムでは、探索開始時においては、対象とする問題は一般にまったくのブラックボックスであり、どのような個体が望ましいかはまったく不明である。このため通常、初期の生物集団は乱数を用いてランダムに発生させる。従ってここにおける手順でも、ステップs2312で処理を開始した後のステップs2313では、初期の生物集団は乱数を用いてランダムに発生させる。なお、探索空間に対して何らかの予備知識がある場合は、評価値が高いと思われる部分を中心にして生物集団を発生させるなどの処理を行うこともある。ここで、発生させる個体の総数を、集団の個体数という。
次にステップs2314で、生物集団中の各個体の適応度を、先にステップs2311で決めた計算方法に基づいて計算する。各個体について適応度が求めた後、次にステップs2315で、次世代の個体の基となる個体を集団から選択淘汰する。しかしながら選択淘汰を行うだけでは、現時点で最も高い適応度を持つ個体が生物集団中に占める割合が高くなるだけで、新しい探索点が生じないことになる。このため、次に述べる交叉と突然変異と呼ばれる操作を行う。
すなわち、次のステップs2316では、選択淘汰によって生成された次世代の個体の中から、所定の発生頻度で二つの個体のペアをランダムに選択し、染色体を組み変えて子の染色体を作る(交叉)。ここで、交叉が発生する確率を、交叉率と呼ぶ。交叉によって生成された子孫の個体は、親にあたる個体のそれぞれから形質を継承した個体である。この交叉の処理によって、個体の染色体の多様性が高まり進化が生じる。
交叉処理後は、次のステップs2317で、個体の遺伝子を一定の確率で変化させる(突然変異)。ここで、突然変異が発生する確率を突然変異率と呼ぶ。遺伝子の内容が低い確率で書き換えられるという現象は、実際の生物の遺伝子においても見られる現象である。ただし、突然変異率を大きくしすぎると、交叉による親の形質の遺伝の特徴が失われ、探索空間中をランダムに探索することと同様になるので注意を必要とする。
以上の処理によって次世代の集団が決定され、ここでは次に、ステップs2318で、生成された次世代の生物集団が探索を終了するための評価基準を満たしているか否かを調べる。この評価基準は、問題に依存するが、代表的なものとして次のようなものがある。
・生物集団中の最大の適応度が、ある閾値より大きくなった。
・生物集団全体の平均の適応度が、ある閾値より大きくなった。
・生物集団の適応度の増加率が、ある閾値以下の世代が一定の期間以上続いた。
・世代交代の回数が、あらかじめ定めた回数に到達した。
上述の如き終了条件の何れかが満たされた場合は、探索を終了し、その時点での生物集団中で最も適応度の高い個体を、求める最適化問題の解とする。終了条件が満たされない場合は、ステップs2314の各個体の適応度の計算の処理に戻って探索を続ける。このような世代交代の繰り返しによって、集団の個体数を一定に保ちつつ、個体の適応度を高めることが出来る。以上が一般的な遺伝的アルゴリズムの概略である。
上で述べた遺伝的アルゴリズムの枠組みは、実際のプログラミングの詳細を規定しない緩やかなものとなっており、個々の問題に対する詳細なアルゴリズムを規定するものではない。このため、遺伝的アルゴリズムを本実施例のテンプレート最適化に用いるには、以下の項目をテンプレート最適化用に実現する必要がある。
(a)染色体の表現方法
(b)初期個体集団の発生方法
(c)個体の評価関数
(d)選択淘汰方法
(e)交叉方法
(f)突然変異方法
(g)探索終了条件
図20は、本実施例における染色体の表現方法を示す。同図は、テンプレートを構成する参照画素数をn個、参照可能範囲を256×256画素の領域とした場合の例である。ただし、本実施例における参照可能範囲の広さは任意であり、あらかじめ定めておけば、どのような参照可能範囲でもよい。
このとき、染色体は、それぞれが1つの参照画素に対応するn個の部分に分けられる。また各部分はさらに2つに分けられ、参照画素のx座標とy座標位置を特定することとなる。例では、参照可能範囲の大きさはx方向、y方向ともに256であるため、それぞれ8ビットの2進数表現される。
なお、染色体における参照画素の座標位置を2進数ではなくグレイコードで表現することも可能である。
またさらに、{0、1}の2進数あるいはグレイコードで染色体を表現するのではなく、参照画素位置の座標を示す整数で染色体を構成することも可能である。つまり、この場合には同図(b)におけるx座標値とy座標値がともに{0、…、255}の値をとる。
本実施例では、図28における画像解析s22において、分割画像ブロックごとに、分析的・解析的な手法を用いて初期テンプレートを決定している。そこで、この初期テンプレートを個体集団に埋め込んで、遺伝的アルゴリズムにおける初期個体集団を生成する。
図26は、6つの染色体から構成される個体集団への、初期テンプレートの埋めこみ方の例を示す模式図である。同図(a)は、全ての染色体をランダムに初期化する方法であり、通常の遺伝的アルゴリズムと同じである。同図(b)は、初期テンプレートを染色体表現に変換したものをマスター染色体とし、これを個体集団の第1染色体にコピーして、残る5つの染色体をランダムに初期化する方法である。マスター染色体を第1染色体だけでなく、個体集団内の任意の個数の染色体にコピーしてもよい。
図26(b)の方法で個体集団を初期化する場合、マスター染色体を個体集団にコピーする数が多いほど探索速度が向上するが、反面、個体集団の多様性が小さくなるために、最適なテンプレートを発見する以前に進化が止まってしまう可能性が高くなる。このような場合、数多くのマスター染色体を個体集団にコピーするのではなく、マスター染色体に突然変異を施した染色体をコピーすることで、個体集団の多様性を維持することができる。
同図(c)は上記の方法の一例を示す模式図である。ここでは、マスター染色体を突然変異させた染色体を3つ生成し、個体集団の第1染色体にはマスター染色体をコピーし、第2〜第4染色体にはマスター染色体を突然変異させて得られた3つの染色体をそれぞれコピーし、残る2つの染色体だけをランダムに初期化する方法である。個体集団内の複数の染色体にマスター染色体をコピーしてもよく、マスター染色体を突然変異させて得られる染色体の個数も任意であり、どちらもパラメータで制御可能としておく。
本実施例において、遺伝的アルゴリズムにおける個体の評価関数Fとしては、個体が特定するテンプレートを用いて入力画像を圧縮符号化してえられる圧縮データの大きさの逆数であるものとする。たとえば、圧縮データの大きさが1KByteとなったばあい、適応度の値は1/(1×1024)とする。
遺伝的アルゴリズムは、評価関数Fを最大化するように振る舞うため、圧縮データの大きさの逆数が最大化されることにより、圧縮データの大きさを最小化するテンプレートを表現する個体が探索されることとなる。
なお、染色体の適応度を示す指標は、圧縮データの大きさの逆数だけでなく、圧縮データが小さくなるほど大きくなるという性質をもつものであれば何でもよい。たとえばある特定の値から圧縮データの大きさを差し引いて得られる値を適応度として用いることもできる。
なお、適応度を計算するために圧縮データの大きさを用いるということは、大きな計算コストを必要とするため、入力画像全てを適応度計算のために圧縮する代わりに、数画素おき、数ラインおきに間引いた縮小画像を圧縮することもできる。入力画像の一部を切り出して、切り出し領域だけを圧縮して、適応度を計算してもよい。このような間引きや切り出しにより評価関数の精度は落ちるものの、計算時間を大きく節約することが可能となる。
この精度低下は、世代毎に間引き方や切り出し領域を少しずつずらすことで、抑制することができる。たとえば、m×mの領域に切り出して評価を行う場合、世代が変わるごとに縦および横方向に1ビットずらすと、切り出し領域の大部分である(m−1)×(m−1)領域は、前世代で使用した切り出し領域と重なっている(図3における網掛け領域)。よって、前世代において優れていると評価された染色体(テンプレート)は、新しい切り出し領域でも高く評価される蓋然性が高い。その上、切り出し領域をずらさなかった場合と比較して、(2×m−1)だけ広い領域を評価に使用できたことになる。よって、この処理を繰り返すことで、より広い領域が評価に使用されるため、切り出し処理に起因する評価関数の精度低下を抑制することが可能となる。
上記の例では、ずらし量を1ビットとしているが、この値が大きいほど、より広い領域を評価に使用することができ、評価関数の精度低下も小さくなる。ただし、その分だけ、前世代で切り出した領域との重なりも小さくなってしまうため、探索速度が低下してしまう。よって、切り出し領域の大きさに応じて、ずらし量も変更する必要がある。
さらに、切り出しと間引きの両者を併用することで、評価関数の精度低下をさらに抑えることもできる。すなわち、対象としている分割画像ブロックの大きさに対して、切り出し領域の大きさが小さすぎる場合、ブロック全体を包含するように切り出し領域をずらし、走査するためには、非常に長い時間がかかる。その点、間引き方式では、隣接画素間の関係性が失われてしまうが、大域的な統計的性質を保持しやすいという利点がある。よって、両者を併用して組み合わせることで、お互いの欠点を補うことができる上、切り出し領域を小さくし、間引き間隔を広げることによる評価関数の精度低下を大きく抑制できる。
本実施例では、切り出し領域サイズを256×256、ずらし量を1ビットとしている。また、間引き間隔については、切り出し領域の縦,横サイズをそれぞれH、Wとすると、縦方向に(H/256)、横方向に(W/256)としている。さらに、間引きによるサンプリングの偏りを抑えるため、オフセット(1ライン目の位置)を縦横方向それぞれランダムに1ビットずつ移動させている。
なお、評価関数として、圧縮データの大きさの代わりに、エントロピを使用することもできる。情報理論的には、エントロピを最小化することと圧縮データの大きさを最小化することは等価であるため、理想状態において両者は区別されない。さらに、エントロピ計算においても、上記のような間引きや切り出しを用いてもよい。
選択処理においては、集団から適応度に比例した確率で個体を選び出す作業を、集団の個体数分だけ行う(ルーレット選択)。これにより、新しい個体集団が生成される。ルーレット選択のほか、トーナメント選択やランク選択と呼ばれる手法を用いてもよい。
交叉処理では、集団からランダムに選ばれた2つの親個体A、Bに対して、図21(a)の説明図に示す方法を用いる。これは染色体をランダムな位置で座標値を一塊として部分的に入れ替える操作であり、一点交叉と呼ばれる手法である。図21(a)では、Ch1およびCh2が親個体A、Bの染色体であり、ここにおける交叉処理では、これらの染色体を、ランダムに選んだ交叉位置CPで切断する。図21(a)の例では、左から2番目の遺伝子と3番目の遺伝子の間を交叉位置としている。そして、切断した部分的な遺伝子型を入れ替えることによって、染色体Ch3およびCh4をそれぞれ持つ子個体A’、B’を生成する。
なお、交叉時に対として選択された2つの染色体が全く同じビット列である場合、1つの染色体集団に同一の染色体が含まれていることによる探索速度低下を避けるため、一方だけに、後述する突然変異を施す。
ところで、テンプレートは図20のように染色体表現されているため、同図(b)に示すように、16ビット単位で意味のある情報ブロックが染色体に含まれていると見なすことができる。そこで、交叉時には、この上記情報ブロックの切れ目以外の箇所にCPが選ばれる確率を低く抑えることにより、意味のある情報ブロックが交叉により壊されてしまうのを防ぐことができるようになり、探索速度が向上するものと期待される。
しかし、その反面、交叉によって新しい情報ブロックが生成される確率も低下するため、探索が収束しやすいという副作用が生じる。そこで、情報ブロックの切れ目以外の箇所にCPが選ばれる確率を、GAによる探索の初期段階では大きくしておき、世代の進行に従って小さくし、最終的には全てのCP候補位置が等確率で選択されるようにすることで、探索初期段階での意図しない収束を避けることができる。なお、以上の方法は、一点交叉だけでなく、二点交叉や多点交叉,一様交叉においても使用することが可能である。
さらに、交叉時に対となった2つの染色体が示すテンプレートが共通して持つ参照画素を考慮して交叉を行うことで、探索速度を向上させることが可能である。例として、図4(a)のようなテンプレートを考える。同図で?印は注目画素、網掛けの四角は参照画素を示す。このテンプレートは、同図(b)に示す染色体で表現される(情報ブロック単位で値を表現し、交叉点CPは、情報ブロックの切れ目だけに限定している)。
さらに、(c)も全く同じテンプレートを示す染色体である。ここで、この2つの染色体を、第2と第3の情報ブロックの切れ目をCPとして交叉させたときの例が(d)である。このように、全く同じテンプレートを示す染色体でありながら、交叉の結果として生成された染色体は全く異なるものとなってしまい、探索速度の低下の原因となる。
そこで、2つの染色体が示すテンプレートにおいて、共有されない参照画素に相当する情報ブロックを染色体から抜き出し、その部分だけで交叉を行い、結果を元の染色体に戻す操作を行う。図5を用いて、この操作について説明する。同図(a)のような2つの染色体を交叉する場合を仮定する。両者は参照画素19と28を共有している(ここで、参照画素番号は図4(a)を参照)。そこで、これら共有参照画素に対応する情報ブロック以外の情報ブロックだけを抜き出したものが同図(b)である。つづいて、抜き出された部分染色体を交叉する。同図(c)は第2と第3の情報ブロックの切れ目をCPとして1点交叉した結果である。最後に、抜き出され、交叉を施された部分染色体を、元の染色体に書き戻す。その結果が同図(d)である。
なお、上記のテンプレート表現に基づく交叉において、抜き出された部分染色体の長さが0である場合、2つの染色体は全く同一のテンプレートを表現していることを示す。このような場合、前述のように、1つの集団に全く同一のテンプレートが含まれていることによる探索速度低下を避けるため、一方だけに、後述の突然変異を施すことにする。
交叉に引続いて実行する突然変異は、全染色体の全遺伝子の値を突然変異率に従って反転させる操作とした。図21(b)に突然変異の例を示す。この図では、染色体Ch5において、2番目の遺伝子の値が突然変異率に基づく確率で反転している。
なお、{0、1}の2値ではなく、整数で染色体を表現している場合はビット反転できないため、染色体の各遺伝子にガウス分布N(0、σ)に従って発生させた正規乱数を加算する操作を行う。ガウス分布以外のコーシー分布などの他の分布を用いてもよい。
突然変異をビット単位で行うのではなく、上記の情報ブロック単位で行うことも可能である。すなわち、図20(b)の場合、各情報ブロックは16ビットで構成されるため、0〜65535までの正数値を示す。そこで突然変異では、一定の突然変異率で、各情報ブロックを±(1〜α)だけ増減させる。ここで、αの値が小さいほど突然変異による影響が弱くなり、GAによる探索速度は向上するが、小さすぎると、探索の初期段階で収束してしまい、よいテンプレートを得ることができなくなる。逆に、α値が大きいと、意図しない探索の収束を避けることができるが、探索速度は低下する。そこで、探索の初期段階ではαの値を大きくしておき、世代の進行に応じて徐々にα値を小さくする。これによって、探索初期段階での意図しない収束を抑制しつつ、探索終盤での探索速度を向上させることができるようになる。
さらに、同様の処理を、各情報ブロックを構成するx座標とy座標のそれぞれに対して、別々に施すことも可能である。こうすることで、より微妙な突然変異率の調整が可能となる。
安定状態(Steady State)遺伝的アルゴリズムを使用することも可能である。すなわち、集団中から最良の個体とランダムに選択された個体の2個体を選び出し、それらが交叉して生成される子個体の一方に突然変異を施したものを、集団中で最も評価の低い個体と置換する方式である。各世代で1個体しか置き換わらないため、少ない個体数でも、局所解に陥りにくいという性質を持つ。さらに、交叉と突然変異で生成された個体の適応度が、集団中で最も評価の低い個体の適応度よりも高い場合にのみ、置換を許すことにより、探索速度を高めることも可能である。
テンプレート最適化のために、遺伝的アルゴリズムの代わりに、進化戦略や山登り法、焼きなまし法、タブーサーチ、貪欲法などの所謂ブラインドサーチ手法を適用することもできる。特に山登り法と焼きなまし法は遺伝的アルゴリズムほどの高い探索能力を持たないが、処理が高速というメリットがある。なお、上記ブラインドサーチ方式において、評価関数として圧縮データの大きさとエントロピどちらを用いてもよい。
なお、進化戦略の参考文献としては、例えば、出版社John Wiley & Sonsが1995年に出版した、H.P.Schwefel著の「Evolution and Optimum Seeking」がある。
また焼きなまし方の詳細は、例えば、出版社John Wiley & Sonsが1995年に出版した、E.Aarts and J.Korst著の「Simulated Annealing and Boltzmann Machines」に開示されている。
つづいて、図31における局所探索s232の説明を行う。
遺伝的アルゴリズムは、非常に強力な探索手法であるが、探索手続きの終盤で、最適解あるいは局所解近傍において探索速度が低下するという問題がある。すなわち、図22に例示するように、探索の序盤から中盤にかけて、世代数が進むごとに適応度の増加率が低下してゆき、終盤では殆ど適応度が改善されなくなる。そこで、本実施例では、遺伝的アルゴリズムによる探索で得られた最良のテンプレートに対して、山登り方を用いて最終調整を行う。この処理を導入することにより、遺伝的アルゴリズムにおける終盤の無駄な探索を行わずにすむため、全体として探索速度が向上する。
なお、完全に単色のブロックにおいては、どのようなテンプレートを使用してもまったく同じ圧縮率となってしまうため、テンプレート最適化を行う必要性はまったく無い。そこで、本技術では、ステップs1の画像分割を行う際に、各ブロックが単色であるかどうかの検査を同時に行い、単色であると判明した際には、テンプレート最適化を省略する。なお、圧縮/伸張処理部内に専用の計算ユニットを配置し、テンプレート決定をプロセッサではなく、この専用計算ユニットで行ってもよい。
ここまでが、図28のテンプレート探索s23に関する説明で、次にデータベース更新s24に関する説明を行う。
データベースは、圧縮符号化対象である画像データに関する先験的知識が明らかな場合に、画像解析s22やテンプレート探索s23を実行せずにテンプレートを決定するために用いられる。とくに印刷用画像の場合、ディザ法をベースとした画像生成手続きが、その画像生成ソフトウェアを作成したメーカーごとに決まっていて、それぞれのメーカー毎に、ディザマトリクスの作り方などに独自の特徴がある。一般にそのような特徴が公開されることはないが、本実施例のようにテンプレート探索の結果をデータベースに蓄積することで、テンプレート決定に関する重要な手がかりとして再利用できるようになる。また、データベースに登録された情報を初期状態としてテンプレート探索s23を行うことにより、より優れたテンプレートを発見することもある。
図13は、データベース更新s24の処理手続きを示すフローチャートである。
まず、ステップs241において、図16に構造例を示すテンプレートデータベースを検索し、全く同じ画像生成システムで生成された、解像度や線数やスクリーン角度の同じ画像に対するテンプレートが登録されているか否かをまず検索する。
もし登録されていない場合は、ステップs244において、新しく得られたテンプレートを新規に登録して処理を完了する。このように登録しておくことで、テンプレート最適化s2のデータベース検索s21において、新しいテンプレートを再利用することができる。
ステップs241において当該テンプレートが登録されていると判明した場合は、当該テンプレートが、テンプレートデータベース検索で得られ初期テンプレートを基にテンプレート最適化処理で得られたものかどうかをステップs242で調べる。もし得られたものであるならば、当該テンプレートは登録されているテンプレートよりも品質が優れたものであると期待されるため、ステップs243において、登録テンプレートを当該テンプレートで更新する。ここでの品質が優れているというとは、このテンプレートを使用して予測符号化を行うことにより、高い圧縮効率を得られることである。
以上の手続きで、分割された各ブロックごとに最適なテンプレートが決定され、次に、このテンプレートを用いて、各ブロックの圧縮処理が開始される。ブロック分割された画像データは、必要な部分だけを切り出され、リファレンスバッファへと送られる。ここで、必要な部分の大きさについて、その高さは、参照画素として取り得る、注目画素から垂直方向に最も離れた画素までのライン数、その幅は、画素から水平方向に最も離れた両端の画素の距離であるものとする。
つづいて、コンテクスト抽出機において、テンプレートに基づいて、リファレンスバッファからコンテクスト(すなわち、参照画素の値により構成されるベクトルデータ)が抽出される。
コンテクストと、注目画素の値は、それぞれ後段のFIFOを介して、圧縮用のMQ−Coder(C)へと送られ、圧縮データが計算される。なお、図35のMQ−Coder(D)は伸張用のMQ−Coderである。この例では、実装時に容易に高速化できるように、圧縮用のMQ−Coder(C)と伸張用のMQ−Coder(D)を別に搭載しているが、もともとMQ−Coderは可逆処理が可能であるため、LSIのゲート数を小さくするなどの目的で、圧縮と伸張の両方を実行可能なMQ−Coderを1つだけ使用してもよい。なお、MQ−Coderの構造や処理手続きはJBIG2方式に関する国際規格において明確に定義されている。さらに、QM−CoderやJonson符号化器のように、MQ−Coder以外のエントロピ符号化器を使用することも可能である。
MQ−Coder(C)の処理が完了すると、リファレンスバッファへは、右へ1ビット分ずらした領域が切り出され、コンテクストの抽出、MQ−Coder(C)での圧縮データ計算が行われる。以降、画像末端まで同じ処理が繰り返される。
画像末端まで達すると、今度は画像データの左端で、下へ1ビット分ずらした領域がリファレンスバッファへと切り出され、ブロック下端まで上記の手続きが繰り返される。
なお、リファレンスバッファへの領域切り出し、コンテクスト抽出、MQ−Coder(C)での圧縮データ計算をパイプライン的に行うことで、上記の手続きを高速化することが可能である。
この処理は、リファレンスバッファを2つ用意し、それらを交互に並列動作させることで高速化することができる。図36に基づいて説明する。ブロックの大きさは同図(a)であるものとする。
また、この例では、参照画素の最大可動範囲を8画素×4ラインとすると、後段のコンテクスト抽出機で必要とするサイズは、最低で8画素×4ラインなので、リファレンスバッファの高さは4ラインとなり、横幅は8画素以上であれば何画素でもよい。ここでは16画素であるものとする。
手順では、まず、1つ目のリファレンスバッファにブロック左上端を読み込む(同図(b)における白抜きの長方形で示す領域)。このリファレンスバッファの幅は、コンテクスト抽出に必要な領域の2倍の16であるため、シフト演算を8回行うことで、8回分のコンテクスト抽出を行うことができる。そこで、この8回のコンテクスト抽出を行っている間に、もうひとつのリファレンスバッファに、右へ8ビット分ずらした領域を読み込む(同図(c)における網掛けの長方形で示す領域)。そして、第1のリファレンスバッファが8回分のコンテクスト抽出に必要な領域データを供給し終わった後を継いで、第2のリファレンスバッファが領域データの供給を開始する。以降、この動作を交互に繰り返すことで、リファレンスバッファへの領域データの書き込み時間を完全に隠すことが可能となる。
なお、この場合のリファレンスバッファの幅を、コンテクスト抽出に必要な領域の何倍に設定するかということは、リファレンスバッファへの書き込み時間と、コンテクスト抽出に必要な時間に応じて、適切に設定しておく必要がある。
以上が、図34で示す画像データ圧縮ハードウェアの動作手順である。伸張時は、これまでに説明した圧縮手順の逆の動作を行うことで、原画像が復元される。
図32は、並列化処理を大幅に導入して、圧縮および伸張処理の高速化を図ったハードウェア構成のブロック図である。なお、同図中、圧縮伸張処理ユニットは、図35から、画像データメモリと制御レジスタを取り除いたものと等価な回路である。また、本構成では、ホスト計算機から画像データおよび圧縮データをDMA転送で授受するため、DMAプロセッサを使用している。
この大きな特徴は、画像メモリに読み込まれた画像データを強制的に垂直方向に分割し、それぞれを並列に独立して圧縮する点にある。同図は2並列の例であるため、圧縮および伸張に要する時間が約1/2となる。画像メモリ、圧縮伸張ユニット、圧縮データ入出力FIFOをn個ずつ用意することでn並列とすることができ、動作速度も約n倍になる。
同図中、2つの画像データメモリは、画像入出力FIFOからは1つの連続したメモリとして見える。そのため、圧縮時には、実施例1と同様に画像データを1ラインずつ逐次的に書き込んでゆくことになる。
圧縮時における、画像ブロック分割とテンプレート最適化については、垂直方向に強制分割された画像領域ごとに独立で行ってもよいし、1つの大きなブロックと見なして、実施例1と全く同じ手続きで画像ブロック分割とテンプレート最適化だけを行い、実際の圧縮処理だけを各領域で独立に並行処理してもよい。前者の方が高い圧縮率を得られるものと期待されるが、後者の方が早い処理を実現できる。
なお、このハードウェア構成を用いた伸張時には、画像メモリ1と画像メモリ2で同一ラインの処理が完了していることを必ず確認してから、当該ラインを画像入出力FIFOへ書き出す必要がある。
これまでに述べた実施例による適応型予測符号化および復号化方法をコンピュータによって実行するためのプログラムを、ハードディスク、フレキシブルディスク、CD−ROMまたはDVD−ROM等の記録媒体に記録しておけば、このような記録媒体をコンピュータに読み込ませることにより、コンピュータを利用して、実施例1による適応型予測符号化および復号化方法を簡単に実施することができる。
適応型予測符号化プログラムは図23に示されるように、
(1)圧縮すべき画像データを読み込む手順(s601)と、
(2)圧縮符号化済みデータのヘッダを生成し、出力する手順(s602)と、
(3)入力された画像データを、特徴的なブロック単位に分割する手順(s603)と、
(4)ブロック毎に最適なテンプレートを生成する手順(s604)と、
(5)ブロック内の全ての画素に対して、走査方向順にコンテクストを発生する手順(s605)と、
(6)ブロック内の全ての画素と、ステップs605で生成されたその画素に対応するコンテクストを用いて圧縮データを生成する手順(s606)と、
(7)これまでの手順で得られたブロック情報、テンプレート情報、圧縮データを合成して、圧縮符号化済みデータを生成および出力する手順(s607)と、
を実行させるようになっている。
一般に、ソフトウェアで実行するときには、ハードウェアよりもメモリ容量に余裕がある場合が多いため、実施例1のような、データ読み込みと画像分割を同時に行う方式(1パス)ではなく、画像データを全て読み込んでからブロック分割を行い、ブロックごとに圧縮符号化処理を行ってもよい(2パス)。
図24(a)は、圧縮対象である画像データが、n個のブロックに分割された場合における、圧縮符号化済みデータのフォーマットの一例を示す模式図で、ヘッダ部分と、n個の画像ブロックに対応する圧縮情報から構成される。ヘッダ部分には、圧縮対象である画像データの大きさ(縦横サイズ)と、解像度、線数、スクリーン角度、画像生成システム名とそのバージョン等が記録される。
同図(b)は、第i番目の画像ブロックに対応する圧縮情報の構成例を示す模式図で、各ブロックの大きさと位置(ブロック情報)が記録されるブロックヘッダと、対応する画像データの圧縮符号化に用いたテンプレートと、圧縮データと、第i番目の圧縮情報の終端を示す終端記号から構成される。
復号化プログラムは、図25に示されるように、
(1)圧縮符号化済みデータを読み込む手順(s701)と、
(2)圧縮符号化済みデータを解析して、伸張画像全体の大きさ(縦横サイズ)と、ブロック分割された各ブロックに対応する圧縮情報とに分離し、各ブロックを圧縮する際に使用したテンプレートと圧縮データを取り出す手順(s702)と、
(3)伸張された画像データの先頭からコンテクストを逐次生成するための手順(s703)と、
(4)コンテクストを用いて圧縮データから復号データを生成する手順(s704)と、
(5)各ブロックに対応する復号データを合成して、1つの伸張画像データを生成する手順(s706)と、
を実行させるようになっている。
なお、本発明は通常の2値画像(文字画像、線画像、ディザ法や誤差拡散法などで2値化された画像、これらの混在画像など)の全てに対して有効に機能する。さらに、多値画像についても、ビットスライス処理や画像幅の拡大処理を行って複数の2値画像に分解することで適用可能である。ここでビットスライス処理とは、たとえば図27(a)の場合、各画素は8ビットで表現されるので、第1番目のビットだけで構成した2値画像から、第8番目のビットだけで構成した2値画像までの、8つの2値画像に、1つの8ビット画像を分解する処理である。
ビットスライスを行うことで、高周波成分を多く含む画像から、低周波成分を主成分とする画像が生成されるが、一般に高周波成分に相当する画像の圧縮は難しいため、ビットスライスを行う前に、各画素値を交番2進数(グレイコード)に変換してもよい。これにより、上記の問題を解消することができる。さらに、原画像が限定色である場合、各色同士の相関に基づいて2進数のビット並びを変換することで、効率のよいビットスライスを行うことができる。
画像幅の拡大処理とは、たとえば図27(b)の場合、上述の例と同じく256階調(8ビット)画像の場合、画像幅を仮想的に8倍にし、画素を構成するビットを分解してそのまま同一ライン上に並べるだけの処理である。
以上、図示例に基づき説明したが、この発明は上述の例に限定されるものではなく、特許請求の範囲内で当業者が容易に改変し得る他の構成や方法をも含むものである。例えば、実施例においては、入力データとして画像データを用いる例を開示したが、本発明のデータ符号化方式は、テキストファイルをはじめ、任意のアプリケーションのデータファイルなど、ビット間に相関のある任意のデータに適用可能である。
既知の各種テンプレートを示す説明図である。 JBIG方式で用いられるテンプレートを示す説明図である。 切り出し領域のずらし処理の模式図である。 同じテンプレートが異なる染色体で表現される例である。 テンプレート表現に基づく交叉に関する説明図である。 本発明の一実施例に係る画像伝送装置の送信側のブロック構成図である。 本発明の一実施例に係る画像伝送装置の受信側のブロック構成図である。 本発明の一実施例に係るテンプレート最適化方式の動作フローチャートである。 本発明の一実施例に係る画像分割方式の動作フローチャートである。 水平方向ブロック分割の処理手順を示すフローチャートである。 垂直方向ブロック分割の処理手順を示すフローチャートである。 遺伝的アルゴリズムの動作フローチャートである。 本発明の一実施例に係るテンプレートデータ更新の動作フローチャートである。 画像のブロック分割方法を示す模式図である。 同時確率密度の計算方法を示す模式図である。 画像解析方式で用いるテンプレートデータベースの構造例を示す説明図である。 画像解析方式で行う相関分析の動作原理を示す説明図である。 画像解析方式で行う周期性推定の動作原理を示す説明図である。 染色体と遺伝子の関係を示す模式図である。 遺伝的アルゴリズムにおける染色体表現の説明図である。 遺伝的アルゴリズムにおける交叉と突然変異の動作原理を示す説明図である。 遺伝的アルゴリズムの一般的な学習曲線の例である。 符号化プログラムの動作手順を示すフローチャートである。 圧縮符号化済みデータのフォーマット例を示す模式図である。 復号化プログラムの動作手順を示すフローチャートである。 遺伝的アルゴリズムにおける個体集団の初期化方法例を示す模式図である。 本発明を多値画像に適用可能とするための方法例を示す模式図である。 テンプレート最適化の動作手順を示すフローチャートである。 データベース検索の動作手順を示すフローチャートである。 画像解析の動作手順を示すフローチャートである。 テンプレート探索の動作手順を示すフローチャートである。 並列化画像データ圧縮ハードウェアのブロック図である。 垂直分割位置候補の決定方法を示す模式図である。 画像データ圧縮ハードウェアのブロック図である。 圧縮/伸張処理部のブロック図である。 並列化リファレンスバッファの処理手順を示す模式図である。

Claims (2)

  1. 解析した各ラインデータの特徴を比較することによって入力画像データを1つ以上のブロックに分割するブロック化手段と、
    データの周期性を推定するブロックデータ解析手段の解析結果に基づいて、各ブロック毎に初期テンプレートを生成する初期テンプレート生成手段と、符号圧縮率ないしエントロピのいずれか若しくは両者を評価関数とする、遺伝的アルゴリズムを用いた最適化方法によって初期テンプレートから最適なテンプレートを生成するテンプレート最適化手段とを備えた、各ブロック毎にテンプレートを決定するテンプレート決定手段と、
    前記テンプレートに基づき入力画像データを圧縮する圧縮手段と、
    前記圧縮手段の出力データ、前記テンプレート情報、前記ブロック情報を合成する合成手段とを備えた適応予測符号化装置において、
    前記テンプレートのデータベースを有し、前記ブロック判定の後にまず該データベース検索を行い、該当するテンプレートが発見されなかった場合、次にディザ分析あるいは相関分析による画像解析を行い、画像解析の結果であるテンプレートを検索キーとして用いてデータベースの再検索を行うものであって、
    該再検索時、前記遺伝的アルゴリズムを用いた最適化方法によるテンプレート探索で得られた最適化テンプレートを前記データベースにフィードバックしてデータベースを更新することを特徴とする適応予測符号化装置。
  2. 解析した各ラインデータの特徴を比較することによって入力画像データを1つ以上のブロックに分割するステップと、
    データの周期性を推定するブロックデータ解析手段の解析結果に基づいて、各ブロック毎に初期テンプレートを生成する初期テンプレート生成ステップと、符号圧縮率ないしエントロピのいずれか若しくは両者を評価関数とする、遺伝的アルゴリズムを用いた最適化方法によって初期テンプレートから最適なテンプレートを生成するテンプレート最適化ステップとを備えた、各ブロック毎にテンプレートを決定するステップと、
    前記テンプレートに基づき入力画像データを圧縮するステップと、
    前記圧縮ステップの出力データ、前記テンプレート情報、前記ブロック情報を合成するステップとを備えた適応型予測符号化方法において、
    前記テンプレートのデータベースを有し、前記ブロック判定の後にまず該データベース検索を行い、該当するテンプレートが発見されなかった場合、次にディザ分析あるいは相関分析による画像解析を行い、画像解析の結果であるテンプレートを検索キーとして用いてデータベースの再検索を行うものであって、
    該再検索時、前記遺伝的アルゴリズムを用いた最適化方法によるに基づくテンプレート探索で得られた最適化テンプレートを前記データベースにフィードバックしてデータベースを更新することを特徴とする適応型予測符号復号化方法。
JP2002555520A 2000-12-28 2001-12-26 適応型予測符号化装置および適応型予測符号復号化方法 Expired - Lifetime JP3986012B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000402164 2000-12-28
JP2000402164 2000-12-28
PCT/JP2001/011461 WO2002054758A1 (fr) 2000-12-28 2001-12-26 Procede, dispositif et programme de codage et decodage de prediction adaptative

Publications (2)

Publication Number Publication Date
JPWO2002054758A1 JPWO2002054758A1 (ja) 2004-05-13
JP3986012B2 true JP3986012B2 (ja) 2007-10-03

Family

ID=18866503

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002555519A Expired - Lifetime JP3986011B2 (ja) 2000-12-28 2001-12-26 データ符号化装置および画像データ符号化方法
JP2002555520A Expired - Lifetime JP3986012B2 (ja) 2000-12-28 2001-12-26 適応型予測符号化装置および適応型予測符号復号化方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002555519A Expired - Lifetime JP3986011B2 (ja) 2000-12-28 2001-12-26 データ符号化装置および画像データ符号化方法

Country Status (5)

Country Link
US (1) US7254273B2 (ja)
EP (1) EP1357735A4 (ja)
JP (2) JP3986011B2 (ja)
CA (1) CA2433163C (ja)
WO (2) WO2002054758A1 (ja)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4135752B2 (ja) * 2006-06-12 2008-08-20 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像処理方法及び画像処理プログラム
US8014578B2 (en) * 2007-02-05 2011-09-06 General Electric Company Method and system for image segmentation using models
US8605963B2 (en) * 2007-03-19 2013-12-10 General Electric Company Atlas-based image compression
JP5082548B2 (ja) * 2007-03-30 2012-11-28 富士通株式会社 画像処理方法、符号化器および復号化器
US8027949B2 (en) * 2008-07-16 2011-09-27 International Business Machines Corporation Constructing a comprehensive summary of an event sequence
US8327443B2 (en) * 2008-10-29 2012-12-04 Lockheed Martin Corporation MDL compress system and method for signature inference and masquerade intrusion detection
US8312542B2 (en) * 2008-10-29 2012-11-13 Lockheed Martin Corporation Network intrusion detection using MDL compress for deep packet inspection
JP5572966B2 (ja) * 2009-03-06 2014-08-20 日本電気株式会社 データ類似度計算方法、システム、およびプログラム
JP5439871B2 (ja) * 2009-03-06 2014-03-12 日本電気株式会社 データ圧縮方法、装置、およびプログラム
JP4860739B2 (ja) * 2009-09-03 2012-01-25 パナソニック株式会社 画像処理装置及び画像処理方法
US8321326B2 (en) 2009-09-15 2012-11-27 Auerbach Group Llc Method and system for enhancing the efficiency of a digitally communicated data exchange
US8245302B2 (en) * 2009-09-15 2012-08-14 Lockheed Martin Corporation Network attack visualization and response through intelligent icons
US8245301B2 (en) * 2009-09-15 2012-08-14 Lockheed Martin Corporation Network intrusion detection visualization
JP5267422B2 (ja) * 2009-10-28 2013-08-21 セイコーエプソン株式会社 画像処理方法およびプログラム、画像処理装置
JP5338630B2 (ja) * 2009-11-18 2013-11-13 セイコーエプソン株式会社 画像処理方法およびプログラム、画像処理装置
US9106689B2 (en) 2011-05-06 2015-08-11 Lockheed Martin Corporation Intrusion detection using MDL clustering
CN103731154B (zh) * 2013-11-01 2017-01-11 陕西理工学院 一种基于语义分析的数据压缩算法
CN106406082B (zh) * 2015-07-27 2021-02-12 华为技术有限公司 一种***控制方法、装置,控制器及控制***
KR101818576B1 (ko) 2015-12-24 2018-01-15 연세대학교 산학협력단 영상 부호화 및 복호화 방법 및 그 장치
US9996543B2 (en) 2016-01-06 2018-06-12 International Business Machines Corporation Compression and optimization of a specified schema that performs analytics on data within data systems
CN108871291A (zh) * 2017-05-12 2018-11-23 北京中天易观信息技术有限公司 一种空中三角测量中大数据匹配点智能压缩方法
US11379728B2 (en) * 2019-01-09 2022-07-05 Red Hat, Inc. Modified genetic recombination operator for cloud optimization
CN116664872A (zh) * 2023-07-26 2023-08-29 成都实时技术股份有限公司 一种基于边缘计算的嵌入式图像识别方法、介质及***

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3059769B2 (ja) * 1991-01-25 2000-07-04 株式会社リコー 画情報の予測符号化装置
JP3224283B2 (ja) * 1992-09-09 2001-10-29 株式会社リコー 予測符号化装置および予測復号化装置
JP3261208B2 (ja) * 1993-05-12 2002-02-25 株式会社リコー 画情報予測符号化および復号化装置
US6389163B1 (en) * 1994-11-18 2002-05-14 Xerox Corporation Method and apparatus for automatic image segmentation using template matching filters
JPH08191396A (ja) * 1995-01-06 1996-07-23 Mita Ind Co Ltd 通信装置
JPH08186717A (ja) * 1995-01-06 1996-07-16 Mita Ind Co Ltd 通信装置
JPH0969951A (ja) * 1995-06-20 1997-03-11 Ricoh Co Ltd 符号化方法及び復号化方法
JPH09135358A (ja) * 1995-11-08 1997-05-20 Nec Corp 算術符号を用いた画像符号化装置
JPH11243491A (ja) * 1998-02-26 1999-09-07 Agency Of Ind Science & Technol 適応進化型画像圧縮符号化装置
US6301387B1 (en) * 1998-12-18 2001-10-09 University Of Washington Template matching using correlative auto-predictive search
US6229921B1 (en) * 1999-01-06 2001-05-08 National Instruments Corporation Pattern matching system and method with improved template image sampling using low discrepancy sequences
US6741725B2 (en) * 1999-05-26 2004-05-25 Princeton Video Image, Inc. Motion tracking using image-texture templates
US7039229B2 (en) * 2000-08-14 2006-05-02 National Instruments Corporation Locating regions in a target image using color match, luminance pattern match and hill-climbing techniques
US6470092B1 (en) * 2000-11-21 2002-10-22 Arch Development Corporation Process, system and computer readable medium for pulmonary nodule detection using multiple-templates matching
US6738517B2 (en) * 2000-12-19 2004-05-18 Xerox Corporation Document image segmentation using loose gray scale template matching
US6603882B2 (en) * 2001-04-12 2003-08-05 Seho Oh Automatic template generation and searching method
US6944331B2 (en) * 2001-10-26 2005-09-13 National Instruments Corporation Locating regions in a target image using color matching, luminance pattern matching and hue plane pattern matching

Also Published As

Publication number Publication date
CA2433163A1 (en) 2002-07-11
CA2433163C (en) 2008-04-01
US7254273B2 (en) 2007-08-07
EP1357735A1 (en) 2003-10-29
JPWO2002054757A1 (ja) 2004-05-13
JPWO2002054758A1 (ja) 2004-05-13
WO2002054757A1 (fr) 2002-07-11
EP1357735A4 (en) 2005-06-15
JP3986011B2 (ja) 2007-10-03
US20050100232A1 (en) 2005-05-12
WO2002054758A1 (fr) 2002-07-11

Similar Documents

Publication Publication Date Title
JP3986012B2 (ja) 適応型予測符号化装置および適応型予測符号復号化方法
CN101277365B (zh) 图像处理方法和图像处理设备
JP3284932B2 (ja) 画像処理装置
KR20080069887A (ko) 이미지 처리장치 및 그 이미지 처리방법
CN100363924C (zh) 用于二级图像编码/解码的***和方法
JP2008234479A (ja) 画像高品質化装置、方法、及びプログラム
US7277585B2 (en) Image encoding method, image encoding apparatus and storage medium
JP4130915B2 (ja) グラフィカルオブジェクトの境界情報の処理
JP3675429B2 (ja) 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体
CN113065561A (zh) 基于精细字符分割的场景文本识别方法
JP3404380B2 (ja) 適応型予測符号化、復号化方法およびそれらの装置ならびに適応型予測符号化、復号化プログラムを記録した記録媒体
JP6635751B2 (ja) 画像符号化装置及びその制御方法、並びにプログラム及び記憶媒体
JP3647071B2 (ja) 画像処理装置およびその方法
JP3990949B2 (ja) 画像符号化装置及び画像符号化方法
JP2019165280A (ja) 符号化装置、復号装置及びプログラム
JP3867886B2 (ja) 画像符号化方法、画像符号化装置、画像復号化方法及び画像復号化装置
JP4748805B2 (ja) 画像符号化装置及びその制御方法
JP3998348B2 (ja) ベクトル量子化で用いるコードブックの作成方法および装置、記録媒体
Sakanashi et al. EHW Applied to Image Data Compression
JP2005210570A (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP2004229100A (ja) 情報源の符号化方法,情報源の符号化装置,情報源の符号化プログラム,情報源の符号化プログラムを記録した記録媒体
JPH08315159A (ja) 画像処理装置及び画像処理方法
JPH1032714A (ja) 画像処理装置
Zhu et al. An across-scale fusion approach to segment document image
JP2008228229A (ja) 画像符号化装置及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070429

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: 20070706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070706

R150 Certificate of patent or registration of utility model

Ref document number: 3986012

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: 20100720

Year of fee payment: 3

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: 20100720

Year of fee payment: 3

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