[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2004128880A - Image compression apparatus, image expansion apparatus, and method for them, and program - Google Patents

Image compression apparatus, image expansion apparatus, and method for them, and program Download PDF

Info

Publication number
JP2004128880A
JP2004128880A JP2002290145A JP2002290145A JP2004128880A JP 2004128880 A JP2004128880 A JP 2004128880A JP 2002290145 A JP2002290145 A JP 2002290145A JP 2002290145 A JP2002290145 A JP 2002290145A JP 2004128880 A JP2004128880 A JP 2004128880A
Authority
JP
Japan
Prior art keywords
image
character area
unit
compression
area
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.)
Granted
Application number
JP2002290145A
Other languages
Japanese (ja)
Other versions
JP3870147B2 (en
Inventor
Reiji Misawa
三沢 玲司
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2002290145A priority Critical patent/JP3870147B2/en
Publication of JP2004128880A publication Critical patent/JP2004128880A/en
Application granted granted Critical
Publication of JP3870147B2 publication Critical patent/JP3870147B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image compression apparatus which generates an excellent decoded image without degrading image quality of a compression object, and also to provide an image expansion apparatus, a method for them, and a program. <P>SOLUTION: A binary section 102 binarizes a multi-value image 101. An area particularizing section A104 particularizes a position of a character area in a binary image 103. An area particularizing section B105 particularizes a position of a unit character area in the character area. A representative color part extract section 110 extracts a representative color of the unit character area on the basis of position information of the unit character area and the multi-value image 101. A character area filling-in section 113 fills in the character area by its peripheral color on the basis of the position information of the character area. A reduction section 114 reduces a filling-in multi-value image. A JPEG compression section 115 compresses reduced multilevel image an MMR compression section compresses a partial binary image corresponding to the character area. Compression data 117 including the position information, compression codes generated by each compression section, and representative color information of the unit character area are outputted. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、入力された多値画像を圧縮する画像圧縮装置、その画像圧縮装置で生成された圧縮データを伸長する画像伸長装置及びそれらの方法、プログラムに関するものである。
【0002】
【従来の技術】
近年、スキャナの普及により文書の電子化が進んでいる。電子化された文書をフルカラービットマップ形式で保存すると、例えば、A4サイズの場合では、読取解像度300dpiで、約24Mbyteにもなり、必要なメモリが膨大になる。このような大容量のデータは、メールに添付して送信するのに適したサイズとはいえない。
【0003】
そこで、フルカラー画像を圧縮することが通常行われており、その圧縮方法としてJPEGが知られている。JPEGは、写真等の自然画像を圧縮するには非常に効果的だが、文字部をJPEG圧縮するとモスキートノイズと呼ばれる画像劣化が発生する。そこで、従来では、入力された画像を文字領域及び写真領域に領域分割を行い、文字領域部分は2値化した上でMMR圧縮、写真領域部分はJPEG圧縮を行うことで、文字領域の品位を保ったまま、フルカラー文書も小さなデータサイズで表現する方法があった。
【0004】
この方法は、伸長時には、2値画像の白部分はJPEG画像を透過し、黒部分は代表色をのせた文字で表現する。また、JPEG圧縮前に文字領域を文字近辺の色で穴埋めすることにより、さらに圧縮率を向上させる方法があった。また、効率的な圧縮、かつ伸長時に良好な画像の再現を実現するために、文字領域の代表色を抽出する技術が必須となっている。
【0005】
【発明が解決しようとする課題】
しかしながら、従来の技術では、圧縮時に行う文字領域部分に複数の色が混在している場合、適切な代表色を抽出するには不十分であった。そのため、伸長時には、文字領域の適切な代表色が再現されず、良好な復元画像を得ることができなかった。
【0006】
本発明は上記の課題を解決するためになされたものであり、良好な復元画像を生成することでき、かつ圧縮対象の画像品位を低下させない画像圧縮を行うことができる画像圧縮装置、画像伸長装置及びそれらの方法、プログラムを提供することを目的とする。
【0007】
【課題を解決するための手段】
上記の目的を達成するための本発明による画像圧縮装置は以下の構成を備える。即ち、
入力された多値画像を圧縮する画像圧縮装置であって、
前記多値画像を2値化する2値化手段と、
前記2値化手段で2値化された2値画像中の文字領域の位置を特定する第1領域特定手段と、
前記第1領域特定手段で特定された文字領域中の単位文字領域の位置を特定する第2領域特定手段と、
前記第2領域特定手段で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出手段と、
前記第1領域特定手段で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め手段と、
前記穴埋め手段で生成された穴埋め多値画像を縮小する縮小手段と、
前記縮小手段で縮小された縮小多値画像を圧縮する第1圧縮手段と、
前記第1領域特定手段で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮手段と、
前記第1及び第2領域特定手段で特定された位置情報と、前記第1及び第2圧縮手段で生成された第1及び第2圧縮コードと、前記代表色抽出手段で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力手段と
を備える。
【0008】
また、好ましくは、前記代表色抽出手段は、前記第2領域特定手段で特定された単位文字領域の位置情報を用いて前記多値画像の色情報を参照することにより、前記単位文字領域の平均色を算出する平均色算出手段と、
前記平均色算出手段で生成された単位文字領域の平均色から第1ヒストグラムを作成する第1ヒストグラム作成手段と、
前記第1ヒストグラムに基づいて、前記単位文字領域の代表色の候補となる候補代表色を抽出する抽出手段と、
前記抽出手段で抽出された候補代表色と前記単位文字領域の平均色に基づいて、前記候補代表色を前記単位文字の代表色に割り当てる色割当手段と
を備える。
【0009】
また、好ましくは、前記2値化手段は、前記多値画像に基づく第2ヒストグラムを作成する第2ヒストグラム作成手段と、
前記第2ヒストグラムに基づいて、前記多値画像を2値化するための2値化閾値を算出する2値化閾値算出手段と
を備える。
【0010】
また、好ましくは、前記第1領域特定手段は、前記2値画像において所定値をとる画素の輪郭線追跡を行って特定される領域群を、それぞれ文字領域あるいは自然画像領域に特定し、前記領域群の各領域の位置情報、サイズ情報及びその種類を示す属性情報を特定する。
【0011】
また、好ましくは、前記第2領域特定手段は、前記第1領域特定手段で特定された文字領域中の所定値をとる画素の集合を単位文字領域として特定し、前記単位文字領域の位置情報とサイズ情報を特定する。
【0012】
また、好ましくは、前記平均色算出手段は、前記第2領域特定手段で特定された単位文字領域の位置情報を用いて、前記単位文字領域内の所定値をとる画素に対応する前記多値画像の色情報を参照することにより、該単位文字領域の平均色を算出する。
【0013】
また、好ましくは、前記第1ヒストグラム作成手段は、前記平均色算出手段で算出された単位文字領域の平均色を用いて、前記単位文字領域からなる文字領域内における色空間ヒストグラムを第1ヒストグラムとして作成する。
【0014】
また、好ましくは、前記抽出手段は、前記色空間ヒストグラム中で出力頻度の高い色分布から順に、前記単位文字領域の代表色の候補となる候補代表色を抽出する。
【0015】
また、好ましくは、前記色割当手段は、前記抽出手段で抽出された候補代表色と、前記単位文字領域の平均色との間の色空間上の距離を計算し、その距離が所定範囲内である場合に、前記候補代表色を前記単位文字領域の代表色として割り当る。
【0016】
また、好ましくは、前記縮小手段は、解像度変換パラメータを用いて、前記穴埋め多値画像を解像度変換することで該穴埋め多値画像を縮小する。
【0017】
また、好ましくは、前記縮小手段は、前記解像度変換パラメータを制御する制御手段を備え、
前記制御手段は、前記穴埋め多値画像の高周波成分が小さい場合には、大きい場合に比べて、より低解像度に変換するように前記解像度変換パラメータを制御する。
【0018】
また、好ましくは、前記第1圧縮手段は、JPEG圧縮準拠である。
【0019】
また、好ましくは、前記第2圧縮手段は、MMR圧縮準拠である。
【0020】
また、好ましくは、前記圧縮データを可逆圧縮する第3圧縮手段と
を更に備える。
【0021】
上記の目的を達成するための本発明による画像伸長装置は以下の構成を備える。即ち、
圧縮データを伸長する画像伸長装置であって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力手段と、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長手段と、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長手段と、
前記第2伸長手段で伸長された縮小多値画像を拡大する拡大手段と、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大手段で拡大された多値画像を合成する合成手段と
を備える。
【0022】
上記の目的を達成するための本発明による画像圧縮方法は以下の構成を備える。即ち、
入力された多値画像を圧縮する画像圧縮方法であって、
前記多値画像を2値化する2値化工程と、
前記2値化工程で2値化された2値画像中の文字領域の位置を特定する第1領域特定工程と、
前記第1領域特定工程で特定された文字領域中の単位文字領域の位置を特定する第2領域特定工程と、
前記第2領域特定工程で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出工程と、
前記第1領域特定工程で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め工程と、
前記穴埋め工程で生成された穴埋め多値画像を縮小する縮小工程と、
前記縮小工程で縮小された縮小多値画像を圧縮する第1圧縮工程と、
前記第1領域特定工程で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮工程と、
前記第1及び第2領域特定工程で特定された位置情報と、前記第1及び第2圧縮工程で生成された第1及び第2圧縮コードと、前記代表色抽出工程で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力工程と
を備える。
【0023】
上記の目的を達成するための本発明による画像伸長方法は以下の構成を備える。即ち、
圧縮データを伸長する画像伸長方法であって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力工程と、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長工程と、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長工程と、
前記第2伸長工程で伸長された縮小多値画像を拡大する拡大工程と、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大工程で拡大された多値画像を合成する合成工程と
を備える。
【0024】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
入力された多値画像を圧縮する画像圧縮を実現するプログラムであって、
前記多値画像を2値化する2値化工程のプログラムコードと、
前記2値化工程で2値化された2値画像中の文字領域の位置を特定する第1領域特定工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域中の単位文字領域の位置を特定する第2領域特定工程のプログラムコードと、
前記第2領域特定工程で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め工程のプログラムコードと、
前記穴埋め工程で生成された穴埋め多値画像を縮小する縮小工程のプログラムコードと、
前記縮小工程で縮小された縮小多値画像を圧縮する第1圧縮工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮工程のプログラムコードと、
前記第1及び第2領域特定工程で特定された位置情報と、前記第1及び第2圧縮工程で生成された第1及び第2圧縮コードと、前記代表色抽出工程で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力工程のプログラムコードと
を備える。
【0025】
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
圧縮データを伸長する画像伸長を実現するプログラムであって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力工程のプログラムコードと、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長工程のプログラムコードと、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長工程のプログラムコードと、
前記第2伸長工程で伸長された縮小多値画像を拡大する拡大工程のプログラムコードと、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大工程で拡大された多値画像を合成する合成工程のプログラムコードと
を備える。
【0026】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【0027】
尚、以下に説明する実施形態の画像圧縮装置及び画像伸長装置の各構成要素の相対配置、各処理に用いられる数式、数値等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
【0028】
図1は本発明の実施形態の画像圧縮装置の概略構成を示す図である。
【0029】
図1において、実線は画像の流れ及び入力を示し、点線は情報の流れ及び入力を示すものとする。
【0030】
カラー多値画像である入力画像101は、2値化部102で2値化され、2値画像103が作成される。領域特定部A104は、2値画像103を入力とし、例えば、所定値をとる画素(例えば、黒画素)の輪郭線追跡等により文字領域を検出して、文字領域座標106を作成する。文字領域座標106は、文字領域の位置(座標)やサイズを示す情報である。また、領域特定部A104が文字領域を特定することで、それ以外の写真やイラスト等の自然(階調)画像を示す自然画像領域の位置やサイズも特定されることは言うまでもない。更に、各領域の種類を特定するための属性情報(文字や画像)も別途生成する。
【0031】
領域特定部B105は、2値画像103と領域特定部A104により作成された文字領域座標106を入力とし、文字領域内における各文字(単位文字領域)の位置及びサイズを特定する。説明を簡単にするため、実施形態1では、各単位文字領域の位置及びサイズの情報も文字領域座標106に追加するものとする。また、領域特定部A104により作成された文字領域座標106により、文字領域毎の2値画像(部分2値画像107)を作成する。
【0032】
代表色抽出部110は、部分2値画像107と文字領域座標106及び多値画像112を入力とし、部分2値画像107の黒部分と多値画像112とを位置対応させながら、文字領域中の各単位文字領域の各文字代表色111を算出する。尚、この処理の詳細については後述する。尚、多値画像112は入力画像101と同一である。
【0033】
文字領域穴埋め部113は、多値画像112及び文字領域座標106を入力とし、多値画像112上の各文字領域あるいは単位文字領域毎に、その周辺色で塗り潰す処理(周辺色に置換する処理)を行う。続いて、文字領域あるいは単位文字領域が穴埋めされた(塗り潰された)穴埋め多値画像を、縮小部114にて縮小する。
【0034】
この縮小部114は、設定された解像度変換パラメータに基づいて、穴埋め多値画像の解像度変換を行う。また、縮小部114は、この解像度変換パラメータを、処理対象の多値画像の空間周波数に基づいて適宜制御するようにしても良い。例えば、多値画像の高周波成分が小さい場合には、大きい場合に比べて、より低解像度に変換するように、この解像度変換パラメータを制御しても良い。
【0035】
以上の処理の後、部分2値画像107は各々順次、MMR圧縮部108により圧縮コードA109として圧縮される。また、縮小部114にて縮小された穴埋め多値画像は、JPEG圧縮部115により圧縮コードB116としてJPEG圧縮される。尚、MMR圧縮部108の代わりに、MMR圧縮以外の2値画像圧縮、例えば、JBIG圧縮、MR圧縮、MH圧縮等を用いても良い。
【0036】
このようにして、各構成要素から得られる文字領域座標106、圧縮コードA109、各文字代表色111、圧縮コードB116のデータ群を結合した圧縮データ117が作成される。この圧縮データ117を、更に、PDFなどに可逆圧縮しても良い。
【0037】
尚、入力画像101中に文字領域が存在しない場合、圧縮データ117は圧縮コードB116のみとなる。
【0038】
また、画像圧縮装置及び後述するこの画像圧縮装置で生成された圧縮データを伸長する画像伸長装置を実現するハードウエア構成としては、例えば、パーソナルコンピュータ等の汎用コンピュータで実現される。また、この汎用コンピュータには、その標準的な構成要素として、例えば、CPU、RAM、ROM、ハードディスク、外部記憶装置、ネットワークインタフェース、ディスプレイ、キーボード、マウス等を有している。
【0039】
また、これらの画像圧縮装置及び画像伸長装置は、このような汎用コンピュータに対する拡張カードとして実現される専用ハードウエアとして実現されても良い。
【0040】
更に、これらの画像圧縮装置及び画像伸長装置を搭載する装置の具体例としては、ネットワーク通信機能を有する複合機(コピー、プリンタ、スキャナ、ファクシミリ機能等を有する装置)、カラースキャナ、カラーファクシミリ等が挙げられる。
【0041】
次に、2値化部102が実行する2値化処理について、図2及び図3を用いて説明する。
【0042】
図2は本発明の実施形態の入力画像の一例を示す図である。また、図3は本発明の実施形態の2値化部が実行する2値化処理を示すフローチャートである。
【0043】
図2において、入力画像201はカラー多値画像であり、領域203は赤色、領域204は青色、その他の文字は黒、領域205は任意の複数色であるとする。
【0044】
例として、入力画像101をスキャナで読み取った後のRGBデータ(24bit)とする場合、まず、ステップS301にて、下記の変換式により輝度変換を行い、輝度画像を作成する。
【0045】
Y = 0.299×R + 0.587×G + 0.114×B
次に、ステップS302にて、輝度画像の全面ヒストグラムを作成する。ここで、ヒストグラムの一例を図示すると図6のようになる。図6において、横軸はY信号の輝度レベル0〜255であり、縦軸はその出現頻度を示している。図6の場合、601が文字やイメージの分布であり、602が下地の分布であることを示している。
【0046】
次に、ステップS303にて、最適な2値化閾値Tを算出する。但し、ここでの2値化閾値Tの算出方法は、特に限定はしない。図6では、例えば、分布601と分布602の頂点の輝度レベル間の中間点603を2値化閾値Tとしている。
【0047】
最後に、ステップS304にて、輝度画像を2値化閾値Tに基づいて、2値化する。
【0048】
以上の処理により、図1の2値画像103が作成される。また、図2の多値画像201を2値化した場合の2値画像は、例えば、図7の2値画像701のようになる。
【0049】
次に、領域特定部A104が実行する処理について、図4を用いて説明する。
【0050】
図4は本発明の実施形態の領域特定部A104が実行する処理を示すフローチャートである。
【0051】
まず、ステップS401にて、2値画像103の黒画素を参照しながら、輪郭線追跡を行う。次に、ステップS402にて、追跡された輪郭線内をさらに追跡し、その追跡結果に基づいて、輪郭線内の領域から文字領域と、その位置やサイズを特定する。また、文字領域以外の領域は、自然画像領域として特定する。
【0052】
以上の処理により、文字領域及び自然画像領域の位置、サイズ及びその領域の種類を示す属性が特定される。ここで、図7の2値画像701に領域特定部A104の処理を施した結果を、図8に示す。図8では、全部で4つの領域が特定され、801〜803が文字領域、804が自然画像領域に特定されている。
【0053】
次に、領域特定部B105が実行する処理について、図5を用いて説明する。
【0054】
図5は本発明の実施形態の領域特定部B105が実行する処理を示すフローチャートである。
【0055】
図5で説明する処理は、領域特定部A104により特定された文字領域群、図8の例では、文字領域801〜803に対して順次行われる。
【0056】
まず、ステップS501にて、未処理の文字領域の有無を判定する。未処理の文字領域がない場合(ステップS501でNO)、処理を終了する。一方、未処理の文字領域がある場合(ステップS501でYES)、ステップS502に進む。
【0057】
次に、ステップS502にて、2値画像の所定値(黒画素)をとる画素の集合を単位文字とみなし、単位文字領域の位置を特定する。ここで、図8の文字領域801に領域特定部B105の処理を施した結果を、図9に示す。図9では、全部で5つの単位文字領域902〜906が特定されている。以降、同様にして、図8の文字領域802、803についても処理が実行される。
【0058】
以上のようにして、領域特定部A104及び領域特定部B105により特定された文字領域・単位文字領域の領域情報(位置、サイズ)を、文字領域座標106として、例えば、画像圧縮装置内のメモリ(例えば、RAM)に保存する。
【0059】
次に、代表色抽出部110が実行する処理について、図10、図11のフローチャート、及び図12〜図15の説明図を用いて説明する。
【0060】
図10は本発明の実施形態の代表色抽出部が実行する処理を示すフローチャートである。
【0061】
代表色抽出部110では、上述したように、入力として、文字領域座標106と部分2値画像107及び多値画像112を使用する。部分2値画像107は、2値画像103の文字領域を切り取って別のワークメモリ等のメモリに格納してあるものとする。多値画像112は、入力画像101と同一のものであり、同様に別のワークメモリ等のメモリに格納してあるものとする。
【0062】
尚、処理対象の具体例として、図9の文字領域801を用いるとする。
【0063】
代表色抽出部110では、全ての文字領域、即ち、全ての部分2値画像107に対して順に処理を行うため、最初に、ステップS1001にて、文字領域座標106を参照しながら、未処理の文字領域の有無を判定する。未処理の文字領域がない場合(ステップS1001でNO)、処理を終了する。一方、未処理の文字領域がある場合(ステップS1001でYES)、ステップS1008に進む。
【0064】
次に、ステップS1008にて、文字領域の代表色数nに1を設定する。次に、ステップS1002にて、文字領域座標106を参照し、かつ部分2値画像107の黒画素に位置的に対応する多値画像112の色(RGB)を参照しながら、単位文字毎にRGBの平均色を算出する。この算出例として、図9の単位文字領域904に対する処理を、図12を用いて具体的に説明する。
【0065】
図12において、1201は図9の単位文字領域904に対応する単位文字である。1202は、単位文字1201を拡大し、画素レベルで表現したものであり、p1、p2、p3は各画素の座標を示している。但し、黒画素のみに注目している。
【0066】
ここで、座標p1(x,y)と位置的に対応する多値画像112のRGB値を参照し、これをc1(R1,G1,B1)として保存する。また、座標p2(x+1,y)、p3(x+2,y)、以下、残りの黒画素全部も同様にRGB値を多値画像112から参照し、これらをc2(R2,G2,B2)、c3(R3,G3,B3)、…、とすると、黒画素数は単位文字領域内に全部で12あるので、RGBの平均色を求める式は、下記のようになる。また、黒画素数12も保持しておくことにするが、本実施形態の説明では黒画素数の利用は省略する。
【0067】
R_average = (R1+R2+R3+、…、+R12)/12
G_average = (G1+G2+G3+、…、+G12)/12
B_average = (B1+B2+B3+、…、+B12)/12
また、例として、図9の文字領域801には、5つの単位文字領域902〜906があるので、それぞれRGBの平均色は、
単位文字領域902:(R_average1,G_average1,B_average1)
単位文字領域903:(R_average2,G_average2,B_average2)
単位文字領域904:(R_average3,G_average3,B_average3)
単位文字領域905:(R_average4,G_average4,B_average4)
単位文字領域906:(R_average5,G_average5,B_average5)
のように、算出することができる。
【0068】
次に、ステップS1003にて、上記で算出された各単位文字領域のRGBの平均色を、例えば、YCbCrのような、輝度と色差で表現できる色空間に変換する。尚、色空間は、LabやYuv等の他の色空間でも構わないものとするが、ここでは、YCbCrで説明を行う。また、RGBからYCbCrへの変換式は省略する。
【0069】
例えば、上述の5つの単位文字領域902〜906に対して、YCbCr変換を施すと、
単位文字領域902:(Y1,Cb1,Cr1)
単位文字領域903:(Y2,Cb2,Cr2)
単位文字領域904:(Y3,Cb3,Cr3)
単位文字領域905:(Y4,Cb4,Cr4)
単位文字領域906:(Y5,Cb5,Cr5)
となる。
【0070】
次に、ステップS1004にて、ステップS1005のヒストグラム作成の準備として、ヒストグラム初期化(ヒストグラムクリア)を行う。次に、ステップS1005にて、色差Cb,Crの2次元ヒストグラムを作成する。これを、図13に示す。図13の5つのプロット1301〜1305は、それぞれ
プロット1301(Cb1,Cr1) → 単位文字領域902のプロット
プロット1302(Cb2,Cr2) → 単位文字領域903のプロット
プロット1303(Cb3,Cr3) → 単位文字領域904のプロット
プロット1304(Cb4,Cr4) → 単位文字領域905のプロット
プロット1305(Cb5,Cr5) → 単位文字領域906のプロット
である。また、プロット1301、1302及び1305と、プロット1303及び1304の距離が離れているのは、図2の多値画像201で示される色の違いを表すためであり、プロット1301、1302及び1305の間の差、または、プロット1303及び1304の間の差は、スキャナで読み取られた入力画像のバラツキ、あるいは、その後の処理(例えば、JPEG圧縮)によるバラツキを表している。
【0071】
尚、本実施形態では、処理の高速化のため、2次元ヒストグラムを作成しているが、精度を上げるために、Y,Cb,Crの3次元ヒストグラムを作成してもよい。
【0072】
次に、ステップS1006にて、各単位文字領域の代表色抽出と色割当を行う。尚、この処理の詳細については後述する。
【0073】
次に、ステップS1007にて、ステップS1006で色が未割当の単位文字の有無を判定する。未割当の単位文字がある場合(ステップS1007でYES)、ステップS1009に進み、代表色数nに1を加算して、先に作成したヒストグラムを初期化し(ステップS1004)、色が未割当の単位文字に対してのみ、ヒストグラムを作成する(ステップS1005)。以下、同様にして、ステップS1007にて、色が未割当の単位文字がなくなるまで処理を続ける。そして、未割当の単位文字がない場合(ステップS1007でNO)、ステップS1001に戻り、他の未処理の文字領域があれば、以下、同様の処理を行う。
【0074】
次に、ステップS1006の各単位文字領域の代表色抽出と色割当の処理の詳細について、図11を用いて説明する。
【0075】
図11は本発明の実施形態のステップS1006の代表色抽出と色割当の処理の詳細を示すフローチャートである。
【0076】
まず、ステップS1101にて、単位文字領域の代表色の候補となる候補代表色C’(n)の抽出を行う。尚、nは代表色数であり、図10で使用されているnと同じである。また、候補代表色C’(n)は、Cb,Crの情報をもつ構造体であり、n番目の代表色のCbをC’(n)_b、n番目の代表色のCrをC’(n)_rと表すことにする。
【0077】
具体的な候補代表色の抽出方法について、図14を用いて説明する。
【0078】
図14で示される点線で囲まれる四角は、予め設定されたエリアを示しており、各エリアには1つの代表色(Cb,Cr)が設定されているものとする。エリアの大小は任意であるが、精度と処理効率のトレードオフを考慮して設定することが望ましい。YCbCrがそれぞれ8bitである場合、本実施形態では、エリアの縦横幅を3bitに設定することにする。但し、図14では、説明を簡単にするため、エリアを大きく図示している。ここで、各エリアをCb−Cr方向に走査し、エリア内のプロット数の最大値を取得する。ここでは、エリア1で最大プロット数3が得られるので、候補代表色として1401(黒三角▲)が得られる。
【0079】
次に、ステップS1102にて、単位文字数mに1を設定する。次に、ステップS1103にて、mがM以下であるか否かを判定する。M以下である場合(ステップS1103でYES)、ステップS1104に進む。一方、Mより大きい場合(ステップS1103でNO)、処理を終了する。
【0080】
ここで、Mは、処理対象の文字領域内の単位文字数(総数)であり、例えば、図9の文字領域801では、M=5である。この場合は、m=1の時は、ステップS1103の条件がYESとなり、ステップS1104へ進む。そして、m=6になった時、ステップS1103の条件がNOとなり、ステップS1006のループを抜ける。
【0081】
ステップS1104にて、単位文字領域の平均色である単位文字色C(m)が未決定であるか否かを判定する。未決定でない場合(ステップS1104でNO)、ステップS1108に進む。一方、未決定である場合(ステップS1104でYES)、ステップS1105に進む。
【0082】
ここで、単位文字色C(m)は、Cb,Crの情報をもつ構造体であり、m番目の単位文字色のCbをC(m)_b、m番目の代表色のCrをC(m)_rと表すことにする。単位文字色C(m)は、最初、値が割り当てられていないため、C(m)は未決定となり、ステップS1105へ進む。
【0083】
次に、ステップS1105にて、候補代表色C’(n)と単位文字色C(m)の色空間上の距離(Distance)を算出する。
【0084】
次に、ステップS1106にて、予め設定された値valueに対して、Distance≦valueであるか否かを判定する。Distance≦valueでない場合(ステップS1106でNO)、ステップS1108に進む。一方、Distance≦valueである場合(ステップS1106でYES)、ステップS1107に進む。
【0085】
ステップS1107にて、候補代表色C’(n)を単位文字色C(m)(単位文字領域の代表色)に設定する。即ち、C’(n)_bをC(m)_bに代入し、C’(n)_rをC(m)_rに代入する。ここで、valueは任意に値を調整可能である。
【0086】
そして、ステップS1108にて、単位文字数mに1を加算し、ステップS1103に戻る。
【0087】
図11のステップS1105及びステップS1106の処理の具体例について、図15を用いて説明する。ここでは、n=1、m=1であると仮定するため、候補代表色C’(1)はプロット1401、単位文字色C(1)はプロット1301である。上述のステップS1105及びステップS1106では、候補代表色C’(1)であるプロット1401を中心とし、valueを半径とした点線円1500内に、単位文字色C(1)のプロット1301が存在するか否かを判定している。
【0088】
ここでは、プロット1301は点線円1500に存在しているため、候補代表色C’(1)(本実施形態の場合、黒あるいは黒の近似色)が、単位文字領域902に対応する代表色C(1)として設定される。同様に、m=2、5の時もプロット1302、1305は、ステップS1106の条件を満たすため、候補代表色C’(1)が、単位文字領域903及び906それぞれの代表色C(2)及びC(5)として設定される。
【0089】
一方、m=3、4の時は、ステップS1106の条件を満たさないため、C(3)、C(4)は未決定のまま、ステップS1006のループを抜け、次の代表色抽出を行う。そして、その後の処理で、候補代表色C’(2)(本実施形態の場合、青あるいは青の近似色)が、単位文字領域904及び905それぞれに対応する代表色C(3)及びC(4)として設定されることになる。
【0090】
以上のようにして、図10、図11で示されるフローチャートで、各単位文字領域の代表色抽出と色割当が行われる。また、抽出された代表色は、図1の各文字代表色111として、圧縮データ117に格納される。
【0091】
次に、圧縮データ117を伸長する画像伸長装置について、図16を用いて説明する。
【0092】
図16は本発明の実施形態の画像伸長装置の概略構成を示す図である。
【0093】
MMR伸長部1603は、圧縮コードA109を入力し、MMR伸長処理を行い、2値画像1604を作成する。JPEG伸長部1609は、圧縮コードB116を入力し、JPEG伸長処理を行い、さらに拡大部1610で拡大処理を行うことで、多値画像1611を作成する。合成部1605は、文字領域座標106を参照しながら、各文字代表色111を2値画像1604中の対応する単位文字領域の各黒画素に割り当て、その2値画像を多値画像1611の上に表示する。この際、2値画像1604の白画素は多値画像1611を透過する。
【0094】
このようにして、図16の画像伸長装置は、図1の画像圧縮装置により作成された圧縮データ117を伸長し、最終的な復元画像である伸長画像1606を生成することができる。
【0095】
以上説明したように、本実施形態によれば、入力されたカラー多値画像に含まれる文字領域が複数の色を有していた場合にも適切な色抽出を行うことが可能である。
【0096】
つまり、文字領域の2値画像とその文字領域を構成する単位文字領域における代表色を抽出して割り当て、この単位文字領域毎の代表色を圧縮データの一部として生成する。そして、この圧縮データを伸長して復元画像を得る場合には、この代表色を利用して、各文字領域内の各単位文字領域の色を再現する。これにより、入力画像の画品位を良好に維持した復元画像を再現することができる。
【0097】
また、文字領域に関しては、従来使用されていたJPEG圧縮に代って、MMR圧縮を利用して圧縮することで、より高圧縮な圧縮画像を生成することができる。
【0098】
以上、実施形態例を詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0099】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0100】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0101】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0102】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0103】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0104】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0105】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【0106】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【0107】
【発明の効果】
以上説明したように、本発明によれば、良好な復元画像を生成することでき、かつ圧縮対象の画像品位を低下させない画像圧縮を行うことができる画像圧縮装置、画像伸長装置及びそれらの方法、プログラムを提供できる。
【図面の簡単な説明】
【図1】本発明の実施形態の画像圧縮装置の概略構成を示す図である。
【図2】本発明の実施形態の入力画像の一例を示す図である。
【図3】本発明の実施形態の2値化部が実行する2値化処理を示すフローチャートである。
【図4】本発明の実施形態の領域特定部Aが実行する処理を示すフローチャートである。
【図5】本発明の実施形態の領域特定部Bが実行する処理を示すフローチャートである。
【図6】本発明の実施形態の入力画像のヒストグラムの一例を示す図である。
【図7】本発明の実施形態の2値画像の一例を示す図である。
【図8】本発明の実施形態の領域特定部Aによる処理結果の一例を示す図である。
【図9】本発明の実施形態の領域特定部Bによる処理結果の一例を示す図である。
【図10】本発明の実施形態の代表色抽出部が実行する処理を示すフローチャートである。
【図11】本発明の実施形態のステップS1006の代表色抽出と色割当の処理の詳細を示すフローチャートである。
【図12】本発明の実施形態の代表色抽出部の処理を説明するための図である。
【図13】本発明の実施形態の代表色抽出部の処理を説明するための図である。
【図14】本発明の実施形態の代表色抽出部の処理を説明するための図である。
【図15】本発明の実施形態の代表色抽出部の処理を説明するための図である。
【図16】本発明の実施形態の画像伸長装置の概略構成を示す図である。
【符号の説明】
101 入力画像
102 2値化部
103 2値画像
104 領域特定部A
105 領域特定部B
106 文字領域座標
107 部分2値画像
108 MMR圧縮部
109 圧縮コードA
110 代表色抽出部
111 各文字代表色
112 多値画像
113 文字領域穴埋め部
114 縮小部
115 JPEG圧縮部
116 圧縮コードB
117 圧縮データ
1603 MMR伸長部
1604 2値画像
1605 合成部
1606 伸長画像
1609 JPEG伸長部
1610 拡大部
1611 多値画像
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image compression device for compressing an input multi-valued image, an image decompression device for decompressing compressed data generated by the image compression device, a method thereof, and a program.
[0002]
[Prior art]
2. Description of the Related Art In recent years, documents have been digitized due to the spread of scanners. If the digitized document is stored in a full-color bitmap format, for example, in the case of A4 size, the reading resolution is 300 dpi and the resolution becomes about 24 Mbytes, and the required memory becomes enormous. Such a large amount of data cannot be said to be a size suitable for being attached to a mail and transmitted.
[0003]
Therefore, compression of a full-color image is usually performed, and JPEG is known as a compression method. JPEG is very effective for compressing natural images such as photographs, but JPEG compression of character parts causes image degradation called mosquito noise. Therefore, conventionally, the input image is divided into a character region and a photograph region, and the character region portion is binarized and then subjected to MMR compression, and the photograph region portion is subjected to JPEG compression to improve the quality of the character region. There was a way to express full-color documents with a small data size while keeping them.
[0004]
According to this method, at the time of decompression, a white portion of a binary image is transmitted through a JPEG image, and a black portion is represented by characters with a representative color. There is also a method for further improving the compression ratio by filling a character area with a color near the character before JPEG compression. In addition, in order to realize efficient compression and good image reproduction at the time of decompression, a technique for extracting a representative color of a character area is essential.
[0005]
[Problems to be solved by the invention]
However, in the related art, when a plurality of colors are mixed in a character area portion to be compressed, it is insufficient to extract an appropriate representative color. Therefore, at the time of decompression, an appropriate representative color of the character area was not reproduced, and a good restored image could not be obtained.
[0006]
SUMMARY An advantage of some aspects of the invention is to provide an image compression apparatus and an image decompression apparatus that can generate a good restored image and perform image compression that does not degrade image quality of a compression target. And their methods and programs.
[0007]
[Means for Solving the Problems]
An image compression apparatus according to the present invention for achieving the above object has the following configuration. That is,
An image compression device for compressing an input multi-valued image,
Binarizing means for binarizing the multi-valued image;
First area specifying means for specifying a position of a character area in the binary image binarized by the binarizing means;
A second area specifying means for specifying a position of a unit character area in the character area specified by the first area specifying means;
Representative color extracting means for extracting a representative color of the unit character area based on the position information of the unit character area specified by the second area specifying means and the multi-valued image,
Filling means for filling the unit character area with its surrounding color based on the position information of the character area specified by the first area specifying means;
Reducing means for reducing the fill-in multi-value image generated by the fill-in means;
First compression means for compressing the reduced multivalued image reduced by the reduction means;
A second compression unit that compresses a partial binary image corresponding to the character region specified by the first region specification unit;
Position information specified by the first and second area specifying means, first and second compressed codes generated by the first and second compression means, and a unit character area extracted by the representative color extraction means Output means for outputting compressed data including representative color information of
Is provided.
[0008]
Also preferably, the representative color extracting means refers to the color information of the multi-valued image using the position information of the unit character area specified by the second area specifying means, thereby averaging the unit character area. Average color calculating means for calculating a color,
First histogram creating means for creating a first histogram from the average color of the unit character area generated by the average color calculating means;
Extracting means for extracting a candidate representative color that is a candidate for a representative color of the unit character area based on the first histogram;
A color assigning unit that assigns the candidate representative color to the representative color of the unit character based on the candidate representative color extracted by the extracting unit and the average color of the unit character area;
Is provided.
[0009]
Preferably, the binarizing means includes a second histogram creating means for creating a second histogram based on the multi-valued image,
A binarization threshold calculating unit that calculates a binarization threshold for binarizing the multi-valued image based on the second histogram;
Is provided.
[0010]
Preferably, the first area specifying means specifies an area group specified by performing contour line tracing of pixels having a predetermined value in the binary image as a character area or a natural image area, respectively. Position information, size information, and attribute information indicating the type of each area of the group are specified.
[0011]
Preferably, the second area specifying means specifies, as a unit character area, a set of pixels having a predetermined value in the character area specified by the first area specifying means. Specify size information.
[0012]
Also preferably, the average color calculating means uses the position information of the unit character area specified by the second area specifying means, and the multi-valued image corresponding to a pixel having a predetermined value in the unit character area. , The average color of the unit character area is calculated.
[0013]
Preferably, the first histogram creating unit uses the average color of the unit character area calculated by the average color calculating unit to set a color space histogram in the character area including the unit character area as a first histogram. create.
[0014]
Preferably, the extraction unit extracts candidate representative colors that are candidates for the representative color of the unit character area in order from a color distribution having a high output frequency in the color space histogram.
[0015]
Preferably, the color allocating unit calculates a distance in a color space between the candidate representative color extracted by the extracting unit and an average color of the unit character area, and the distance is set within a predetermined range. In some cases, the candidate representative color is assigned as a representative color of the unit character area.
[0016]
Preferably, the reduction means reduces the fill-in multivalued image by converting the fill-in-value multivalued image using a resolution conversion parameter.
[0017]
Also, preferably, the reduction unit includes a control unit that controls the resolution conversion parameter,
The control unit controls the resolution conversion parameter so that when the high-frequency component of the fill-in-the-blank image is small, the resolution is converted to a lower resolution than when the high-frequency component is large.
[0018]
Preferably, the first compression unit is based on JPEG compression.
[0019]
Preferably, the second compression unit is based on MMR compression.
[0020]
Preferably, a third compression means for reversibly compressing the compressed data,
Is further provided.
[0021]
An image decompression device according to the present invention for achieving the above object has the following configuration. That is,
An image decompression device for decompressing compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and Input means for inputting compressed data including the second compressed code, position information of the character area, and representative color information of a unit character area in the character area;
First decompression means for decompressing the first compression code in the compressed data;
Second decompression means for decompressing the second compression code in the compressed data;
Enlarging means for enlarging the reduced multivalued image expanded by the second expanding means;
Synthesizing means for synthesizing the binary image decompressed in the first decompression stage and the multi-value image expanded by the enlarging means based on the position information and the representative color in the compressed data;
Is provided.
[0022]
An image compression method according to the present invention for achieving the above object has the following configuration. That is,
An image compression method for compressing an input multi-valued image,
A binarization step of binarizing the multi-valued image;
A first area specifying step of specifying a position of a character area in the binary image binarized in the binarizing step;
A second area specifying step of specifying the position of the unit character area in the character area specified in the first area specifying step;
A representative color extracting step of extracting a representative color of the unit character area based on the position information of the unit character area specified in the second area specifying step and the multi-valued image;
A hole filling step of filling the unit character area with its surrounding color based on the position information of the character area specified in the first area specifying step;
A reduction step of reducing the fill-in-the-blank image generated in the fill-in step,
A first compression step of compressing the reduced multi-valued image reduced in the reduction step,
A second compression step of compressing a partial binary image corresponding to the character area specified in the first area specification step;
The position information specified in the first and second area specifying steps, the first and second compressed codes generated in the first and second compression steps, and the unit character area extracted in the representative color extraction step Outputting compressed data including the representative color information of
Is provided.
[0023]
An image decompression method according to the present invention for achieving the above object has the following configuration. That is,
An image decompression method for decompressing compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and Inputting compressed data including the second compressed code, the position information of the character area, and representative color information of a unit character area in the character area;
A first decompression step of decompressing the first compression code in the compressed data;
A second decompression step of decompressing the second compression code in the compressed data;
An enlarging step of enlarging the reduced multivalued image expanded in the second expanding step;
Based on the position information and the representative color in the compressed data, a combining step of combining the binary image expanded in the first expansion stage and the multi-value image expanded in the expansion step;
Is provided.
[0024]
A program according to the present invention for achieving the above object has the following configuration. That is,
A program for realizing image compression for compressing an input multi-valued image,
Program code for a binarization step of binarizing the multi-valued image;
A program code for a first area specifying step for specifying a position of a character area in the binary image binarized in the binarizing step;
A program code for a second area specifying step for specifying the position of the unit character area in the character area specified in the first area specifying step;
A program code for a representative color extracting step of extracting a representative color of the unit character area based on the position information of the unit character area specified in the second area specifying step and the multi-valued image;
A program code for a filling step of filling the unit character area with its surrounding color based on the position information of the character area specified in the first area specifying step;
Program code for a reduction step of reducing the fill-in-the-blank image generated in the fill-in step,
Program code for a first compression step of compressing the reduced multi-valued image reduced in the reduction step;
Program code for a second compression step of compressing a partial binary image corresponding to the character area specified in the first area specification step;
The position information specified in the first and second area specifying steps, the first and second compressed codes generated in the first and second compression steps, and the unit character area extracted in the representative color extraction step Program code of an output step of outputting compressed data including representative color information of
Is provided.
[0025]
A program according to the present invention for achieving the above object has the following configuration. That is,
A program for realizing image expansion for expanding compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and A program code of an inputting step of inputting compressed data including the second compressed code, the position information of the character area, and representative color information of a unit character area in the character area;
Program code for a first decompression step for decompressing the first compression code in the compressed data;
Program code for a second decompression step for decompressing the second compression code in the compressed data;
Program code for an enlarging step for enlarging the reduced multivalued image expanded in the second expanding step;
A program code for a synthesizing step of synthesizing the binary image expanded in the first expansion stage and the multi-value image expanded in the expansion step based on the position information and the representative color in the compressed data;
Is provided.
[0026]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0027]
It should be noted that the relative arrangement of each component of the image compression apparatus and the image decompression apparatus of the embodiment described below, and the mathematical formulas and numerical values used for each processing are not limited to the scope of the present invention unless otherwise specified. Is not intended to be limited only to them.
[0028]
FIG. 1 is a diagram showing a schematic configuration of an image compression device according to an embodiment of the present invention.
[0029]
In FIG. 1, the solid line indicates the flow and input of an image, and the dotted line indicates the flow and input of information.
[0030]
An input image 101, which is a color multi-valued image, is binarized by a binarization unit 102, and a binary image 103 is created. The area specifying unit A104 receives the binary image 103, detects a character area by, for example, tracing the contour of a pixel (for example, a black pixel) having a predetermined value, and creates the character area coordinates 106. The character area coordinates 106 are information indicating the position (coordinates) and size of the character area. It is needless to say that, by specifying the character area by the area specifying unit A104, the position and size of a natural image area indicating a natural (gradation) image such as a photograph or an illustration are also specified. Further, attribute information (characters and images) for specifying the type of each area is separately generated.
[0031]
The area specifying unit B105 receives the binary image 103 and the character area coordinates 106 created by the area specifying unit A104, and specifies the position and size of each character (unit character area) in the character area. For simplicity, in the first embodiment, information on the position and size of each unit character area is also added to the character area coordinates 106. Further, a binary image (partial binary image 107) for each character area is created based on the character area coordinates 106 created by the area specifying unit A104.
[0032]
The representative color extracting unit 110 receives the partial binary image 107, the character area coordinates 106, and the multi-valued image 112 as input, and associates the black part of the partial binary image 107 with the multi-valued image 112 while positioning Each character representative color 111 of each unit character area is calculated. The details of this process will be described later. Note that the multi-valued image 112 is the same as the input image 101.
[0033]
The character area filling unit 113 receives the multi-valued image 112 and the character area coordinates 106 as input, and fills each character area or unit character area on the multi-valued image 112 with its peripheral color (processing for replacing with a peripheral color). )I do. Subsequently, the reducing unit 114 reduces the filled-in multi-value image in which the character area or the unit character area is filled (filled).
[0034]
The reduction unit 114 performs resolution conversion of the fill-in-the-blank image based on the set resolution conversion parameters. The reduction unit 114 may appropriately control the resolution conversion parameter based on the spatial frequency of the multivalued image to be processed. For example, when the high-frequency component of the multi-valued image is small, the resolution conversion parameter may be controlled so as to convert to a lower resolution than when the high-frequency component is large.
[0035]
After the above processing, each of the partial binary images 107 is sequentially compressed by the MMR compression unit 108 as a compression code A109. The fill-in-the-blank multi-valued image reduced by the reduction unit 114 is JPEG-compressed by the JPEG compression unit 115 as a compression code B116. Note that, instead of the MMR compression unit 108, binary image compression other than MMR compression, for example, JBIG compression, MR compression, MH compression, or the like may be used.
[0036]
In this way, the compressed data 117 is created by combining the data group of the character area coordinates 106, the compression code A109, each character representative color 111, and the compression code B116 obtained from each component. The compressed data 117 may be further losslessly compressed to PDF or the like.
[0037]
If there is no character area in the input image 101, the compressed data 117 is only the compressed code B116.
[0038]
The hardware configuration for realizing the image compression device and an image decompression device that decompresses the compressed data generated by the image compression device described later is realized by a general-purpose computer such as a personal computer, for example. Further, this general-purpose computer has, as standard components, a CPU, a RAM, a ROM, a hard disk, an external storage device, a network interface, a display, a keyboard, a mouse, and the like.
[0039]
The image compression device and the image decompression device may be realized as dedicated hardware realized as an expansion card for such a general-purpose computer.
[0040]
Further, specific examples of an apparatus equipped with the image compression apparatus and the image decompression apparatus include a multifunction peripheral having a network communication function (an apparatus having a copy, printer, scanner, facsimile function, etc.), a color scanner, a color facsimile, and the like. No.
[0041]
Next, a binarization process performed by the binarization unit 102 will be described with reference to FIGS.
[0042]
FIG. 2 is a diagram illustrating an example of an input image according to the embodiment of the present invention. FIG. 3 is a flowchart illustrating a binarization process executed by the binarization unit according to the embodiment of the present invention.
[0043]
In FIG. 2, it is assumed that an input image 201 is a color multivalued image, an area 203 is red, an area 204 is blue, other characters are black, and an area 205 is an arbitrary plurality of colors.
[0044]
As an example, when the input image 101 is to be RGB data (24 bits) after being read by a scanner, first, in step S301, brightness conversion is performed by the following conversion formula to create a brightness image.
[0045]
Y = 0.299 × R + 0.587 × G + 0.114 × B
Next, in step S302, an entire histogram of the luminance image is created. Here, FIG. 6 shows an example of the histogram. In FIG. 6, the horizontal axis represents the luminance level of the Y signal from 0 to 255, and the vertical axis represents its appearance frequency. In the case of FIG. 6, 601 indicates the distribution of characters and images, and 602 indicates the distribution of the background.
[0046]
Next, in step S303, an optimal binarization threshold T is calculated. However, the method of calculating the binarization threshold T here is not particularly limited. In FIG. 6, for example, an intermediate point 603 between the luminance levels at the vertices of the distribution 601 and the distribution 602 is set as the binarization threshold T.
[0047]
Finally, in step S304, the luminance image is binarized based on the binarization threshold T.
[0048]
Through the above processing, the binary image 103 of FIG. 1 is created. A binary image obtained by binarizing the multi-valued image 201 in FIG. 2 is, for example, a binary image 701 in FIG.
[0049]
Next, a process executed by the area specifying unit A104 will be described with reference to FIG.
[0050]
FIG. 4 is a flowchart showing a process executed by the area specifying unit A104 according to the embodiment of the present invention.
[0051]
First, in step S401, contour tracing is performed with reference to black pixels of the binary image 103. Next, in step S402, the inside of the traced outline is further traced, and based on the result of the trace, a character region and its position and size are specified from the region within the outline. In addition, an area other than the character area is specified as a natural image area.
[0052]
Through the above processing, the attributes indicating the position and size of the character area and the natural image area and the type of the area are specified. Here, FIG. 8 shows a result obtained by performing the processing of the area specifying unit A104 on the binary image 701 of FIG. In FIG. 8, four regions are specified in total, 801 to 803 are specified as character regions, and 804 is specified as a natural image region.
[0053]
Next, a process executed by the area specifying unit B105 will be described with reference to FIG.
[0054]
FIG. 5 is a flowchart showing a process executed by the area specifying unit B105 according to the embodiment of the present invention.
[0055]
The processing described in FIG. 5 is sequentially performed on the character area group specified by the area specifying unit A104, in the example of FIG. 8, the character areas 801 to 803.
[0056]
First, in step S501, it is determined whether there is an unprocessed character area. If there is no unprocessed character area (NO in step S501), the process ends. On the other hand, if there is an unprocessed character area (YES in step S501), the process advances to step S502.
[0057]
Next, in step S502, a set of pixels having a predetermined value (black pixel) of the binary image is regarded as a unit character, and the position of the unit character area is specified. Here, FIG. 9 shows a result obtained by performing the processing of the area specifying unit B105 on the character area 801 of FIG. In FIG. 9, a total of five unit character areas 902 to 906 are specified. Thereafter, the processing is similarly performed for the character areas 802 and 803 in FIG.
[0058]
As described above, the area information (position and size) of the character area / unit character area specified by the area specifying unit A104 and the area specifying unit B105 is used as the character area coordinates 106, for example, in the memory ( (For example, RAM).
[0059]
Next, the processing executed by the representative color extracting unit 110 will be described with reference to the flowcharts of FIGS. 10 and 11 and the explanatory diagrams of FIGS.
[0060]
FIG. 10 is a flowchart illustrating a process executed by the representative color extracting unit according to the embodiment of the present invention.
[0061]
As described above, the representative color extraction unit 110 uses the character area coordinates 106, the partial binary image 107, and the multi-value image 112 as inputs. It is assumed that the partial binary image 107 has been obtained by cutting out the character area of the binary image 103 and storing it in another memory such as a work memory. The multi-valued image 112 is the same as the input image 101, and is also stored in another memory such as a work memory.
[0062]
It is assumed that the character area 801 in FIG. 9 is used as a specific example of the processing target.
[0063]
Since the representative color extracting unit 110 sequentially processes all the character areas, that is, all the partial binary images 107, first, in step S <b> 1001, the unprocessed The presence or absence of a character area is determined. If there is no unprocessed character area (NO in step S1001), the process ends. If there is an unprocessed character area (YES in step S1001), the process advances to step S1008.
[0064]
Next, in step S1008, 1 is set to the representative color number n of the character area. Next, in step S1002, referring to the character area coordinates 106 and referring to the color (RGB) of the multi-valued image 112 corresponding to the position of the black pixel of the partial binary image 107, RGB for each unit character is obtained. Is calculated. As an example of this calculation, a process for the unit character area 904 in FIG. 9 will be specifically described with reference to FIG.
[0065]
12, reference numeral 1201 denotes a unit character corresponding to the unit character area 904 in FIG. Reference numeral 1202 denotes a unit character 1201 which is enlarged and expressed on a pixel level, and p1, p2, and p3 indicate coordinates of each pixel. However, attention is paid only to black pixels.
[0066]
Here, the RGB value of the multi-valued image 112 corresponding to the position of the coordinate p1 (x, y) is referred to and stored as c1 (R1, G1, B1). Similarly, the coordinates p2 (x + 1, y), p3 (x + 2, y), and thereafter, all the remaining black pixels also refer to the RGB values from the multi-valued image 112, and refer to these as c2 (R2, G2, B2), c3. (R3, G3, B3),... Since the total number of black pixels in the unit character area is 12, the formula for calculating the average color of RGB is as follows. In addition, although the number of black pixels 12 is also stored, use of the number of black pixels is omitted in the description of the present embodiment.
[0067]
R_average = (R1 + R2 + R3 +,..., + R12) / 12
G_average = (G1 + G2 + G3 +,..., + G12) / 12
B_average = (B1 + B2 + B3 +,..., + B12) / 12
Also, as an example, the character area 801 in FIG. 9 includes five unit character areas 902 to 906.
Unit character area 902: (R_average1, G_average1, B_average1)
Unit character area 903: (R_average2, G_average2, B_average2)
Unit character area 904: (R_average3, G_average3, B_average3)
Unit character area 905: (R_average4, G_average4, B_average4)
Unit character area 906: (R_average5, G_average5, B_average5)
Can be calculated as follows.
[0068]
Next, in step S1003, the RGB average color of each unit character area calculated above is converted into a color space such as YCbCr that can be expressed by luminance and color difference. The color space may be another color space such as Lab or Yuv, but here, the description will be made with YCbCr. Further, the conversion formula from RGB to YCbCr is omitted.
[0069]
For example, when the above five unit character areas 902 to 906 are subjected to YCbCr conversion,
Unit character area 902: (Y1, Cb1, Cr1)
Unit character area 903: (Y2, Cb2, Cr2)
Unit character area 904: (Y3, Cb3, Cr3)
Unit character area 905: (Y4, Cb4, Cr4)
Unit character area 906: (Y5, Cb5, Cr5)
It becomes.
[0070]
Next, in step S1004, histogram initialization (histogram clear) is performed in preparation for the histogram creation in step S1005. Next, in step S1005, a two-dimensional histogram of the color differences Cb and Cr is created. This is shown in FIG. The five plots 1301 to 1305 in FIG.
Plot 1301 (Cb1, Cr1) → plot of unit character area 902
Plot 1302 (Cb2, Cr2) → plot of unit character area 903
Plot 1303 (Cb3, Cr3) → plot of unit character area 904
Plot 1304 (Cb4, Cr4) → plot of unit character area 905
Plot 1305 (Cb5, Cr5) → plot of unit character area 906
It is. The plots 1301, 1302 and 1305 are spaced apart from the plots 1303 and 1304 in order to represent the difference in the colors shown in the multi-valued image 201 in FIG. Or the difference between the plots 1303 and 1304 indicates the variation in the input image read by the scanner or the variation due to the subsequent processing (for example, JPEG compression).
[0071]
In the present embodiment, a two-dimensional histogram is created for speeding up processing, but a three-dimensional histogram of Y, Cb, and Cr may be created for improving accuracy.
[0072]
Next, in step S1006, representative color extraction and color assignment of each unit character area are performed. The details of this process will be described later.
[0073]
Next, in step S1007, it is determined whether there is a unit character whose color has not been allocated in step S1006. If there is an unassigned unit character (YES in step S1007), the flow advances to step S1009 to add 1 to the representative color number n to initialize the previously created histogram (step S1004). A histogram is created only for characters (step S1005). Hereinafter, similarly, in step S1007, the process is continued until there is no unit character to which a color has not been assigned. If there is no unassigned unit character (NO in step S1007), the process returns to step S1001, and if there is another unprocessed character area, the same processing is performed.
[0074]
Next, details of the process of extracting the representative color of each unit character area and assigning colors in step S1006 will be described with reference to FIG.
[0075]
FIG. 11 is a flowchart showing details of the representative color extraction and color assignment processing in step S1006 according to the embodiment of the present invention.
[0076]
First, in step S1101, a candidate representative color C ′ (n) that is a candidate for a representative color of a unit character area is extracted. Note that n is the number of representative colors, which is the same as n used in FIG. Further, the candidate representative color C ′ (n) is a structure having information of Cb and Cr. n) _r.
[0077]
A specific method of extracting candidate representative colors will be described with reference to FIG.
[0078]
A square surrounded by a dotted line shown in FIG. 14 indicates a preset area, and it is assumed that one representative color (Cb, Cr) is set in each area. Although the size of the area is arbitrary, it is desirable to set the area in consideration of a trade-off between accuracy and processing efficiency. In a case where each of YCbCr is 8 bits, in the present embodiment, the vertical and horizontal widths of the area are set to 3 bits. However, in FIG. 14, the area is illustrated in a large size for the sake of simplicity. Here, each area is scanned in the Cb-Cr direction, and the maximum value of the number of plots in the area is obtained. Here, since the maximum number of plots 3 is obtained in the area 1, 1401 (black triangle)) is obtained as the candidate representative color.
[0079]
Next, in step S1102, 1 is set for the number m of unit characters. Next, in step S1103, it is determined whether or not m is equal to or less than M. If it is less than or equal to M (YES in step S1103), the process advances to step S1104. On the other hand, if it is larger than M (NO in step S1103), the process ends.
[0080]
Here, M is the number of unit characters (total number) in the character area to be processed. For example, in the character area 801 in FIG. 9, M = 5. In this case, when m = 1, the condition of step S1103 is YES, and the process proceeds to step S1104. Then, when m = 6, the condition of step S1103 is NO, and the process exits the loop of step S1006.
[0081]
In step S1104, it is determined whether the unit character color C (m), which is the average color of the unit character area, has not been determined. If it is not determined (NO in step S1104), the process advances to step S1108. On the other hand, if it has not been determined (YES in step S1104), the flow advances to step S1105.
[0082]
Here, the unit character color C (m) is a structure having information of Cb and Cr. ) _R. Since no value is initially assigned to the unit character color C (m), C (m) is undetermined and the process proceeds to step S1105.
[0083]
Next, in step S1105, a distance (Distance) in the color space between the candidate representative color C ′ (n) and the unit character color C (m) is calculated.
[0084]
Next, in step S1106, it is determined whether or not Distance ≦ value with respect to a preset value value. If Distance ≦ value is not satisfied (NO in step S1106), the flow advances to step S1108. On the other hand, if Distance ≦ value is satisfied (YES in step S1106), the flow advances to step S1107.
[0085]
In step S1107, the candidate representative color C ′ (n) is set as the unit character color C (m) (the representative color of the unit character area). That is, C '(n) _b is substituted for C (m) _b, and C' (n) _r is substituted for C (m) _r. Here, the value of the value can be arbitrarily adjusted.
[0086]
Then, in step S1108, 1 is added to the number of unit characters m, and the process returns to step S1103.
[0087]
A specific example of the processing in steps S1105 and S1106 in FIG. 11 will be described with reference to FIG. Here, since it is assumed that n = 1 and m = 1, the candidate representative color C ′ (1) is a plot 1401 and the unit character color C (1) is a plot 1301. In the above-described steps S1105 and S1106, whether the plot 1301 of the unit character color C (1) exists in the dotted circle 1500 centered on the plot 1401 that is the candidate representative color C ′ (1) and having a radius of value Has been determined.
[0088]
Here, since the plot 1301 exists in the dotted circle 1500, the candidate representative color C ′ (1) (black or an approximate color of black in this embodiment) is changed to the representative color C corresponding to the unit character area 902. Set as (1). Similarly, when m = 2 and 5, the plots 1302 and 1305 satisfy the condition of step S1106, so that the candidate representative colors C ′ (1) are replaced with the representative colors C (2) and C (2) of the unit character areas 903 and 906, respectively. Set as C (5).
[0089]
On the other hand, when m = 3, 4, since the condition of step S1106 is not satisfied, the process leaves the loop of step S1006 and performs the next representative color extraction while leaving C (3) and C (4) undecided. Then, in the subsequent processing, the candidate representative colors C ′ (2) (blue or an approximate color of blue in this embodiment) are changed to the representative colors C (3) and C (3) corresponding to the unit character areas 904 and 905, respectively. 4).
[0090]
As described above, in the flowcharts shown in FIGS. 10 and 11, the representative color extraction and the color assignment of each unit character area are performed. The extracted representative colors are stored in the compressed data 117 as the respective character representative colors 111 in FIG.
[0091]
Next, an image decompression device for decompressing the compressed data 117 will be described with reference to FIG.
[0092]
FIG. 16 is a diagram showing a schematic configuration of the image decompression device according to the embodiment of the present invention.
[0093]
The MMR decompression unit 1603 receives the compression code A109, performs an MMR decompression process, and creates a binary image 1604. The JPEG decompression unit 1609 receives the compression code B116, performs JPEG decompression processing, and further performs expansion processing in the expansion unit 1610, thereby creating a multi-valued image 1611. The combining unit 1605 assigns each character representative color 111 to each black pixel of the corresponding unit character area in the binary image 1604 while referring to the character area coordinates 106, and places the binary image on the multi-valued image 1611. indicate. At this time, the white pixels of the binary image 1604 are transmitted through the multi-value image 1611.
[0094]
In this way, the image decompression device of FIG. 16 can decompress the compressed data 117 created by the image compression device of FIG. 1, and generate a decompressed image 1606 that is the final restored image.
[0095]
As described above, according to the present embodiment, it is possible to perform appropriate color extraction even when a character area included in an input color multi-valued image has a plurality of colors.
[0096]
That is, a representative color in a binary image of a character area and a unit character area constituting the character area is extracted and assigned, and the representative color for each unit character area is generated as a part of the compressed data. Then, when a decompressed image is obtained by expanding the compressed data, the color of each unit character area in each character area is reproduced using this representative color. This makes it possible to reproduce a restored image in which the image quality of the input image is well maintained.
[0097]
Further, with respect to the character area, a compressed image with higher compression can be generated by using MMR compression instead of the conventionally used JPEG compression.
[0098]
Although the embodiment has been described in detail, the present invention may be applied to a system including a plurality of devices, or may be applied to an apparatus including a single device.
[0099]
According to the present invention, a software program (in the embodiment, a program corresponding to the flowchart shown in the drawings) for realizing the functions of the above-described embodiments is directly or remotely supplied to a system or an apparatus, and the computer of the system or the apparatus is supplied to the computer. Is also achieved by reading and executing the supplied program code.
[0100]
Therefore, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. That is, the present invention includes the computer program itself for realizing the functional processing of the present invention.
[0101]
In this case, any form of the program, such as an object code, a program executed by an interpreter, and script data supplied to the OS, is applicable as long as the program has the function of the program.
[0102]
As a recording medium for supplying the program, for example, a floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card , ROM, DVD (DVD-ROM, DVD-R) and the like.
[0103]
Other methods of supplying the program include connecting to a homepage on the Internet using a browser of a client computer, and downloading the computer program itself of the present invention or a file containing a compressed automatic installation function from the homepage to a recording medium such as a hard disk. Can also be supplied. Further, the present invention can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, the present invention also includes a WWW server that allows a plurality of users to download a program file for implementing the functional processing of the present invention on a computer.
[0104]
In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and downloaded to a user who satisfies predetermined conditions from a homepage via the Internet to download key information for decryption. It is also possible to execute the encrypted program by using the key information and install the program on a computer to realize the program.
[0105]
The functions of the above-described embodiments are implemented when the computer executes the read program, and an OS or the like running on the computer executes a part of the actual processing based on the instructions of the program. Alternatively, all the operations are performed, and the functions of the above-described embodiments can be realized by the processing.
[0106]
Further, after the program read from the recording medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board or the A CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the processing also realizes the functions of the above-described embodiments.
[0107]
【The invention's effect】
As described above, according to the present invention, an image compression device, an image decompression device, and a method thereof that can generate a good restored image and perform image compression without deteriorating the image quality of a compression target, Can provide programs.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a schematic configuration of an image compression device according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an example of an input image according to the embodiment of the present invention.
FIG. 3 is a flowchart illustrating a binarization process executed by a binarization unit according to the embodiment of the present invention.
FIG. 4 is a flowchart illustrating processing executed by an area specifying unit A according to the embodiment of the present invention.
FIG. 5 is a flowchart illustrating a process executed by an area specifying unit B according to the embodiment of the present invention.
FIG. 6 is a diagram illustrating an example of a histogram of an input image according to the embodiment of the present invention.
FIG. 7 is a diagram illustrating an example of a binary image according to the embodiment of the present invention.
FIG. 8 is a diagram illustrating an example of a processing result by an area specifying unit A according to the embodiment of the present invention.
FIG. 9 is a diagram illustrating an example of a processing result by a region specifying unit B according to the embodiment of the present invention.
FIG. 10 is a flowchart illustrating a process executed by a representative color extracting unit according to the embodiment of the present invention.
FIG. 11 is a flowchart illustrating details of representative color extraction and color allocation processing in step S1006 according to the embodiment of this invention.
FIG. 12 is a diagram for describing processing of a representative color extracting unit according to the embodiment of the present invention.
FIG. 13 is a diagram for describing processing of a representative color extraction unit according to the embodiment of the present invention.
FIG. 14 is a diagram for explaining processing of a representative color extracting unit according to the embodiment of the present invention.
FIG. 15 is a diagram for describing processing of a representative color extraction unit according to the embodiment of this invention.
FIG. 16 is a diagram illustrating a schematic configuration of an image decompression device according to an embodiment of the present invention.
[Explanation of symbols]
101 Input image
102 Binarization unit
103 binary image
104 area specifying unit A
105 Area specifying unit B
106 character area coordinates
107 Partial binary image
108 MMR compression unit
109 Compression code A
110 Representative Color Extraction Unit
111 Each character representative color
112 Multi-valued image
113 Character Area Filler
114 Reduction part
115 JPEG compression unit
116 Compression code B
117 Compressed data
1603 MMR extension unit
1604 Binary image
1605 Synthesis unit
1606 Expanded image
1609 JPEG decompression unit
1610 Enlarged section
1611 Multi-valued image

Claims (19)

入力された多値画像を圧縮する画像圧縮装置であって、
前記多値画像を2値化する2値化手段と、
前記2値化手段で2値化された2値画像中の文字領域の位置を特定する第1領域特定手段と、
前記第1領域特定手段で特定された文字領域中の単位文字領域の位置を特定する第2領域特定手段と、
前記第2領域特定手段で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出手段と、
前記第1領域特定手段で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め手段と、
前記穴埋め手段で生成された穴埋め多値画像を縮小する縮小手段と、
前記縮小手段で縮小された縮小多値画像を圧縮する第1圧縮手段と、
前記第1領域特定手段で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮手段と、
前記第1及び第2領域特定手段で特定された位置情報と、前記第1及び第2圧縮手段で生成された第1及び第2圧縮コードと、前記代表色抽出手段で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力手段と
を備えることを特徴とする画像圧縮装置。
An image compression device for compressing an input multi-valued image,
Binarizing means for binarizing the multi-valued image;
First area specifying means for specifying a position of a character area in the binary image binarized by the binarizing means;
A second area specifying means for specifying a position of a unit character area in the character area specified by the first area specifying means;
Representative color extracting means for extracting a representative color of the unit character area based on the position information of the unit character area specified by the second area specifying means and the multi-valued image,
Filling means for filling the unit character area with its surrounding color based on the position information of the character area specified by the first area specifying means;
Reducing means for reducing the fill-in multi-value image generated by the fill-in means;
First compression means for compressing the reduced multivalued image reduced by the reduction means;
A second compression unit that compresses a partial binary image corresponding to the character region specified by the first region specification unit;
Position information specified by the first and second area specifying means, first and second compressed codes generated by the first and second compression means, and a unit character area extracted by the representative color extraction means Output means for outputting compressed data including the representative color information.
前記代表色抽出手段は、前記第2領域特定手段で特定された単位文字領域の位置情報を用いて前記多値画像の色情報を参照することにより、前記単位文字領域の平均色を算出する平均色算出手段と、
前記平均色算出手段で生成された単位文字領域の平均色から第1ヒストグラムを作成する第1ヒストグラム作成手段と、
前記第1ヒストグラムに基づいて、前記単位文字領域の代表色の候補となる候補代表色を抽出する抽出手段と、
前記抽出手段で抽出された候補代表色と前記単位文字領域の平均色に基づいて、前記候補代表色を前記単位文字の代表色に割り当てる色割当手段と
を備えることを特徴とする請求項1に記載の画像圧縮装置。
The representative color extracting unit refers to the color information of the multi-valued image using the position information of the unit character region specified by the second region specifying unit, and calculates an average color of the unit character region. Color calculation means,
First histogram creating means for creating a first histogram from the average color of the unit character area generated by the average color calculating means;
Extracting means for extracting a candidate representative color that is a candidate for a representative color of the unit character area based on the first histogram;
2. The image processing apparatus according to claim 1, further comprising: a color assigning unit that assigns the candidate representative color to the representative color of the unit character based on the candidate representative color extracted by the extracting unit and an average color of the unit character area. An image compression device according to claim 1.
前記2値化手段は、前記多値画像に基づく第2ヒストグラムを作成する第2ヒストグラム作成手段と、
前記第2ヒストグラムに基づいて、前記多値画像を2値化するための2値化閾値を算出する2値化閾値算出手段と
を備えることを特徴とする請求項2に記載の画像圧縮装置。
A second histogram creating unit that creates a second histogram based on the multi-valued image;
3. The image compression apparatus according to claim 2, further comprising: a binarization threshold calculating unit configured to calculate a binarization threshold for binarizing the multi-valued image based on the second histogram.
前記第1領域特定手段は、前記2値画像において所定値をとる画素の輪郭線追跡を行って特定される領域群を、それぞれ文字領域あるいは自然画像領域に特定し、前記領域群の各領域の位置情報、サイズ情報及びその種類を示す属性情報を特定する
ことを特徴とする請求項1に記載の画像圧縮装置。
The first area specifying means specifies an area group specified by performing contour line tracing of a pixel having a predetermined value in the binary image, as a character area or a natural image area, respectively. 2. The image compression device according to claim 1, wherein attribute information indicating position information, size information, and a type thereof is specified.
前記第2領域特定手段は、前記第1領域特定手段で特定された文字領域中の所定値をとる画素の集合を単位文字領域として特定し、前記単位文字領域の位置情報とサイズ情報を特定する
ことを特徴とする請求項1に記載の画像圧縮装置。
The second region specifying unit specifies a set of pixels having a predetermined value in the character region specified by the first region specifying unit as a unit character region, and specifies position information and size information of the unit character region. The image compression apparatus according to claim 1, wherein:
前記平均色算出手段は、前記第2領域特定手段で特定された単位文字領域の位置情報を用いて、前記単位文字領域内の所定値をとる画素に対応する前記多値画像の色情報を参照することにより、該単位文字領域の平均色を算出する
ことを特徴とする請求項2に記載の画像圧縮装置。
The average color calculating unit refers to the color information of the multi-value image corresponding to a pixel having a predetermined value in the unit character region using the position information of the unit character region specified by the second region specifying unit. 3. The image compression apparatus according to claim 2, wherein the average color of the unit character area is calculated.
前記第1ヒストグラム作成手段は、前記平均色算出手段で算出された単位文字領域の平均色を用いて、前記単位文字領域からなる文字領域内における色空間ヒストグラムを第1ヒストグラムとして作成する
ことを特徴とする請求項2に記載の画像圧縮装置。
The first histogram creating means creates a color space histogram in a character area including the unit character area as a first histogram using the average color of the unit character area calculated by the average color calculating means. The image compression apparatus according to claim 2, wherein
前記抽出手段は、前記色空間ヒストグラム中で出力頻度の高い色分布から順に、前記単位文字領域の代表色の候補となる候補代表色を抽出する
ことを特徴とする請求項7に記載の画像圧縮装置。
8. The image compression method according to claim 7, wherein the extraction unit extracts candidate representative colors that are candidates for the representative color of the unit character area in order from a color distribution having a high output frequency in the color space histogram. apparatus.
前記色割当手段は、前記抽出手段で抽出された候補代表色と、前記単位文字領域の平均色との間の色空間上の距離を計算し、その距離が所定範囲内である場合に、前記候補代表色を前記単位文字領域の代表色として割り当る
ことを特徴とする請求項8に記載の画像圧縮装置。
The color allocating unit calculates a distance in a color space between the candidate representative color extracted by the extracting unit and the average color of the unit character area, and when the distance is within a predetermined range, 9. The apparatus according to claim 8, wherein a candidate representative color is assigned as a representative color of the unit character area.
前記縮小手段は、解像度変換パラメータを用いて、前記穴埋め多値画像を解像度変換することで該穴埋め多値画像を縮小する
ことを特徴とする請求項1に記載の画像圧縮装置。
2. The image compression apparatus according to claim 1, wherein the reduction unit reduces the fill-in multivalued image by converting the fill-in-value multivalued image using a resolution conversion parameter.
前記縮小手段は、前記解像度変換パラメータを制御する制御手段を備え、
前記制御手段は、前記穴埋め多値画像の高周波成分が小さい場合には、大きい場合に比べて、より低解像度に変換するように前記解像度変換パラメータを制御する
ことを特徴とする請求項10に記載の画像圧縮装置。
The reduction unit includes a control unit that controls the resolution conversion parameter,
11. The resolution conversion parameter according to claim 10, wherein the control unit controls the resolution conversion parameter so as to convert to a lower resolution when the high-frequency component of the fill-in-the-blank image is small compared to when the high-frequency component is large. Image compression device.
前記第1圧縮手段は、JPEG圧縮準拠である
ことを特徴とする請求項1に記載の画像圧縮装置。
The image compression apparatus according to claim 1, wherein the first compression unit is based on JPEG compression.
前記第2圧縮手段は、MMR圧縮準拠である
ことを特徴とする請求項1に記載の画像圧縮装置。
The image compression apparatus according to claim 1, wherein the second compression unit is based on MMR compression.
前記圧縮データを可逆圧縮する第3圧縮手段と
を更に備えることを特徴とする請求項1に記載の画像圧縮装置。
3. The image compression apparatus according to claim 1, further comprising: third compression means for reversibly compressing the compressed data.
圧縮データを伸長する画像伸長装置であって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力手段と、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長手段と、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長手段と、
前記第2伸長手段で伸長された縮小多値画像を拡大する拡大手段と、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大手段で拡大された多値画像を合成する合成手段と
を備えることを特徴とする画像伸長装置。
An image decompression device for decompressing compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and Input means for inputting compressed data including the second compressed code, position information of the character area, and representative color information of a unit character area in the character area;
First decompression means for decompressing the first compression code in the compressed data;
Second decompression means for decompressing the second compression code in the compressed data;
Enlarging means for enlarging the reduced multivalued image expanded by the second expanding means;
A synthesizing unit for synthesizing the binary image expanded by the first expansion stage and the multi-value image expanded by the expansion unit based on the position information and the representative color in the compressed data. Image decompression device.
入力された多値画像を圧縮する画像圧縮方法であって、
前記多値画像を2値化する2値化工程と、
前記2値化工程で2値化された2値画像中の文字領域の位置を特定する第1領域特定工程と、
前記第1領域特定工程で特定された文字領域中の単位文字領域の位置を特定する第2領域特定工程と、
前記第2領域特定工程で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出工程と、
前記第1領域特定工程で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め工程と、
前記穴埋め工程で生成された穴埋め多値画像を縮小する縮小工程と、
前記縮小工程で縮小された縮小多値画像を圧縮する第1圧縮工程と、
前記第1領域特定工程で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮工程と、
前記第1及び第2領域特定工程で特定された位置情報と、前記第1及び第2圧縮工程で生成された第1及び第2圧縮コードと、前記代表色抽出工程で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力工程と
を備えることを特徴とする画像圧縮方法。
An image compression method for compressing an input multi-valued image,
A binarization step of binarizing the multi-valued image;
A first area specifying step of specifying a position of a character area in the binary image binarized in the binarizing step;
A second area specifying step of specifying the position of the unit character area in the character area specified in the first area specifying step;
A representative color extracting step of extracting a representative color of the unit character area based on the position information of the unit character area specified in the second area specifying step and the multi-valued image;
A hole filling step of filling the unit character area with its surrounding color based on the position information of the character area specified in the first area specifying step;
A reduction step of reducing the fill-in-the-blank image generated in the fill-in step,
A first compression step of compressing the reduced multi-valued image reduced in the reduction step,
A second compression step of compressing a partial binary image corresponding to the character area specified in the first area specification step;
The position information specified in the first and second area specifying steps, the first and second compressed codes generated in the first and second compression steps, and the unit character area extracted in the representative color extraction step An output step of outputting compressed data including the representative color information.
圧縮データを伸長する画像伸長方法であって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力工程と、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長工程と、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長工程と、
前記第2伸長工程で伸長された縮小多値画像を拡大する拡大工程と、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大工程で拡大された多値画像を合成する合成工程と
を備えることを特徴とする画像伸長方法。
An image decompression method for decompressing compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and Inputting compressed data including the second compressed code, the position information of the character area, and representative color information of a unit character area in the character area;
A first decompression step of decompressing the first compression code in the compressed data;
A second decompression step of decompressing the second compression code in the compressed data;
An enlarging step of enlarging the reduced multivalued image expanded in the second expanding step;
A synthesizing step of synthesizing the binary image decompressed in the first decompression stage and the multi-valued image expanded in the enlarging step based on the position information and the representative color in the compressed data. Image expansion method.
入力された多値画像を圧縮する画像圧縮を実現するプログラムであって、
前記多値画像を2値化する2値化工程のプログラムコードと、
前記2値化工程で2値化された2値画像中の文字領域の位置を特定する第1領域特定工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域中の単位文字領域の位置を特定する第2領域特定工程のプログラムコードと、
前記第2領域特定工程で特定された単位文字領域の位置情報と前記多値画像とに基づいて、前記単位文字領域の代表色を抽出する代表色抽出工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域の位置情報に基づいて、前記単位文字領域をその周辺色で穴埋めする穴埋め工程のプログラムコードと、
前記穴埋め工程で生成された穴埋め多値画像を縮小する縮小工程のプログラムコードと、
前記縮小工程で縮小された縮小多値画像を圧縮する第1圧縮工程のプログラムコードと、
前記第1領域特定工程で特定された文字領域に対応する部分2値画像を圧縮する第2圧縮工程のプログラムコードと、
前記第1及び第2領域特定工程で特定された位置情報と、前記第1及び第2圧縮工程で生成された第1及び第2圧縮コードと、前記代表色抽出工程で抽出された単位文字領域の代表色情報を含む圧縮データを出力する出力工程のプログラムコードと
を備えることを特徴とするプログラム。
A program for realizing image compression for compressing an input multi-valued image,
Program code for a binarization step of binarizing the multi-valued image;
A program code for a first area specifying step for specifying a position of a character area in the binary image binarized in the binarizing step;
A program code for a second area specifying step for specifying the position of the unit character area in the character area specified in the first area specifying step;
A program code for a representative color extracting step of extracting a representative color of the unit character area based on the position information of the unit character area specified in the second area specifying step and the multi-valued image;
A program code for a filling step of filling the unit character area with its surrounding color based on the position information of the character area specified in the first area specifying step;
Program code for a reduction step of reducing the fill-in-the-blank image generated in the fill-in step,
Program code for a first compression step of compressing the reduced multi-valued image reduced in the reduction step;
Program code for a second compression step of compressing a partial binary image corresponding to the character area specified in the first area specification step;
The position information specified in the first and second area specifying steps, the first and second compressed codes generated in the first and second compression steps, and the unit character area extracted in the representative color extraction step And a program code for an output step of outputting compressed data including the representative color information.
圧縮データを伸長する画像伸長を実現するプログラムであって、
多値画像を2値化した2値画像中の文字領域を圧縮した第1圧縮コードと、前記文字領域内の単位文字領域がその周辺色で穴埋めされ、かつ縮小された前記多値画像を圧縮した第2圧縮コードと、前記文字領域の位置情報と、該文字領域内の単位文字領域の代表色情報を含む圧縮データを入力する入力工程のプログラムコードと、
前記圧縮データ中の前記第1圧縮コードを伸長する第1伸長工程のプログラムコードと、
前記圧縮データ中の前記第2圧縮コードを伸長する第2伸長工程のプログラムコードと、
前記第2伸長工程で伸長された縮小多値画像を拡大する拡大工程のプログラムコードと、
前記圧縮データ中の前記位置情報及び前記代表色に基づいて、前記第1伸長段で伸長された2値画像と前記拡大工程で拡大された多値画像を合成する合成工程のプログラムコードと
を備えることを特徴とするプログラム。
A program for realizing image expansion for expanding compressed data,
A first compression code for compressing a character area in a binary image obtained by binarizing a multi-valued image, and a compression of the reduced multi-valued image in which a unit character area in the character area is filled with surrounding colors and A program code of an inputting step of inputting compressed data including the second compressed code, the position information of the character area, and representative color information of a unit character area in the character area;
Program code for a first decompression step for decompressing the first compression code in the compressed data;
Program code for a second decompression step for decompressing the second compression code in the compressed data;
Program code for an enlarging step for enlarging the reduced multivalued image expanded in the second expanding step;
And a program code for a synthesizing step of synthesizing the binary image expanded in the first expansion stage and the multi-valued image expanded in the expansion step based on the position information and the representative color in the compressed data. A program characterized by the following.
JP2002290145A 2002-10-02 2002-10-02 Image compression apparatus, image expansion apparatus, method thereof, and program Expired - Fee Related JP3870147B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002290145A JP3870147B2 (en) 2002-10-02 2002-10-02 Image compression apparatus, image expansion apparatus, method thereof, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002290145A JP3870147B2 (en) 2002-10-02 2002-10-02 Image compression apparatus, image expansion apparatus, method thereof, and program

Publications (2)

Publication Number Publication Date
JP2004128880A true JP2004128880A (en) 2004-04-22
JP3870147B2 JP3870147B2 (en) 2007-01-17

Family

ID=32282120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002290145A Expired - Fee Related JP3870147B2 (en) 2002-10-02 2002-10-02 Image compression apparatus, image expansion apparatus, method thereof, and program

Country Status (1)

Country Link
JP (1) JP3870147B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341098A (en) * 2004-05-26 2005-12-08 Ricoh Co Ltd Image processing unit, program, and recording medium
JP2006304062A (en) * 2005-04-22 2006-11-02 Canon Inc Image processing apparatus, image processing method and computer program
US8077986B2 (en) 2006-06-14 2011-12-13 Canon Kabushiki Kaisha Information processing apparatus, method of controlling same and computer program
US8320673B2 (en) 2009-03-03 2012-11-27 Fuji Xerox Co., Ltd. Image processing apparatus, image processing method and computer-readable medium
JP2013125994A (en) * 2011-12-13 2013-06-24 Canon Inc Image compression device, image compression method, and computer program

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341098A (en) * 2004-05-26 2005-12-08 Ricoh Co Ltd Image processing unit, program, and recording medium
JP4504096B2 (en) * 2004-05-26 2010-07-14 株式会社リコー Image processing apparatus, program, and storage medium
JP2006304062A (en) * 2005-04-22 2006-11-02 Canon Inc Image processing apparatus, image processing method and computer program
JP4579759B2 (en) * 2005-04-22 2010-11-10 キヤノン株式会社 Image processing apparatus, image processing method, and computer program
US7848572B2 (en) 2005-04-22 2010-12-07 Canon Kabushiki Kaisha Image processing apparatus, image processing method, computer program
US8077986B2 (en) 2006-06-14 2011-12-13 Canon Kabushiki Kaisha Information processing apparatus, method of controlling same and computer program
US8320673B2 (en) 2009-03-03 2012-11-27 Fuji Xerox Co., Ltd. Image processing apparatus, image processing method and computer-readable medium
JP2013125994A (en) * 2011-12-13 2013-06-24 Canon Inc Image compression device, image compression method, and computer program

Also Published As

Publication number Publication date
JP3870147B2 (en) 2007-01-17

Similar Documents

Publication Publication Date Title
JP4047192B2 (en) Image compression apparatus and method, image expansion apparatus and method, and program
JP4732250B2 (en) Information processing apparatus, control method, and computer program
JP5036430B2 (en) Image processing apparatus and control method thereof
US7639388B2 (en) Image processing apparatus, image reproduction apparatus, system, method and storage medium for image processing and image reproduction
JP5137759B2 (en) Image processing device
JP4366003B2 (en) Image processing apparatus and image processing method
JP2009272889A (en) Image processor and image processing method
JP4717562B2 (en) Image processing apparatus and method
US20090303505A1 (en) Subtractive color method, subtractive color processing apparatus, image forming apparatus, and computer-readable storage medium for computer program
JP3715905B2 (en) Image processing apparatus, image processing method, program, and storage medium
JP4235583B2 (en) Image processing apparatus, image processing program, and storage medium
JP5893379B2 (en) Image compression apparatus, image compression method, and computer program
JP5178490B2 (en) Image processing apparatus, image processing method, and computer program
JP2003244447A (en) Image processor and image processing method
JP2003338935A (en) Image processing equipment and method therefor
JP4708888B2 (en) Image processing apparatus, image processing method, and computer program
JP3870147B2 (en) Image compression apparatus, image expansion apparatus, method thereof, and program
JP3817506B2 (en) Image compression apparatus, image expansion apparatus, method thereof, and program
JP4364809B2 (en) Image processing apparatus, image processing method, program, and recording medium
JP2003348361A (en) Image processing apparatus
JP2003219187A (en) Image processing method and image processor
JP2003338934A (en) Image processing equipment and method therefor
JP4504096B2 (en) Image processing apparatus, program, and storage medium
JP2005204206A (en) Image processing apparatus, image processing program, and storage medium
JP2007335983A (en) Image processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060602

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061016

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091020

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101020

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101020

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111020

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111020

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121020

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131020

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees