JPH05260322A - 2値画像圧縮方式 - Google Patents

2値画像圧縮方式

Info

Publication number
JPH05260322A
JPH05260322A JP5497192A JP5497192A JPH05260322A JP H05260322 A JPH05260322 A JP H05260322A JP 5497192 A JP5497192 A JP 5497192A JP 5497192 A JP5497192 A JP 5497192A JP H05260322 A JPH05260322 A JP H05260322A
Authority
JP
Japan
Prior art keywords
run
bytes
white
record
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.)
Pending
Application number
JP5497192A
Other languages
English (en)
Inventor
Toyoaki Suzuka
豊明 鈴鹿
Koichi Honma
孝一 本間
Masaya Katabe
真哉 形部
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP5497192A priority Critical patent/JPH05260322A/ja
Publication of JPH05260322A publication Critical patent/JPH05260322A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 2値画像の圧縮処理を効率化、高速化する。 【構成】 データ処理装置2は、二次記憶装置3上の原
画像ファイルより1ライン分のデータを主記憶装置2B
上の入力バッファに取り込み、1バイトを処理単位とし
て圧縮処理を実行し、圧縮データを二次記憶装置3上の
圧縮ファイルへ転送する。圧縮処理では、入力バッファ
から00hのバイトの連続区間(白ラン)、ffhのバ
イトの連続区間(黒ラン)を抽出し、各区間をそのバイ
ト数をランレングスとして用いて圧縮し、レコード型と
ランレングスからなる1バイトのレコードを作成する。
00hでもffhでもないバイトの連続区間は灰色ラン
とし、レコード型とランレングスに、各バイトの内容を
そのまま並べた可変長レコードを作成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、2値画像の圧縮方式に
係り、特にランレングス圧縮法による2値画像圧縮方式
に関する。
【0002】
【従来の技術】2値画像の圧縮方法として、白と黒のラ
ンの長さ(ランレングス)を符号化するランレングス圧
縮法が代表的である。2値画像では、白と黒のランが必
ず交互に現われるので、基本的にはランレングスのみを
符号化することによって圧縮が可能である。しかし、各
ランのランレングスに単純に2進数符号などを割り当て
る方法では、符号の区切りが分からない。
【0003】例えば白を0、黒を1のビットで表わした
ビット列0000011111100111において、
初めの白ランのビット列00000に、そのビット数
(ランレングス)の2進数符号符号101を、次の黒ラ
ン111111に、そのランレングス6の2進数符号1
10を、というようにランレングスを表わす2進数符号
を割り当てたとする。しかし、初めの白ランの符号と次
の黒ランの符号を直接つなげた符号列101110から
は、各ランの符号の区切りが分からない。
【0004】この区切りをどうするかによって、各種の
ランレングス圧縮法が提案されている。このようなラン
レングス圧縮に関しては、例えばNECパーソナルコン
ピュータプリンタシリーズ、PC−PR2000/PC
−PR100 日本語ページプリンタリファレンスマニ
ュアル,PC−PR2000−RM808−87037
6−001−a rev.00,1990年の第311
頁から第314頁に述べられている。
【0005】一般にコンピュータで2値画像を扱う場
合、1画素を1ビットで表わし、例えば白を0、黒を1
として画像フレームメモリに格納する。そして従来は、
画像フレームメモリ上の2値画像についてランレングス
圧縮法により圧縮するプログラムは1ビット単位で処理
するようになっていた。すなわち、画像フレームメモリ
の1ビット毎に0/1の検査を行なって、0または1の
連続する長さ、つまり白または黒のランレングスを調べ
て符号化し、得られた圧縮データの展開も、1ビットず
つ画像フレームメモリにセットする方式であった。
【0006】
【発明が解決しようとする課題】しかし、1ビット単位
に処理する方式によれば、原画像の画素数分のビット演
算が必要となり、処理の高速化が難しいという問題があ
った。
【0007】本発明の目的は、処理の高速化が容易な2
値画像圧縮方式を提供することにある。
【0008】
【課題を解決するための手段】本発明はランレングス圧
縮によって2値画像の圧縮処理を行なうが、処理単位は
1画素ではなく、連続した複数画素とする。そして、原
画像より全画素が白の処理単位の連続区間と、全画素が
黒の処理単位の連続区間を抽出し、それぞれの区間を、
区間内の画素数でなく処理単位数をランレングスとして
用い圧縮する。
【0009】
【作用】データ処理システムにおいては、バイト単位あ
るいはワード単位でデータを扱うと、メモリアクセスや
データ処理を最も効率的に実行できるが、本発明によれ
ば、そのようなバイトあるいはワードと処理単位とを合
わせることができる。
【0010】そして、ランレングス圧縮を行なう区間と
して、全画素が白または黒の処理単位の連続区間を抽出
するものであって、しかも、そのランレングスとして画
素数でなく処理単位数を用いるから、1ビット毎にマス
クをとったりビットをカウントするといった効率の悪い
操作は不必要である。2値画像データのメモリからの読
み込みや、圧縮データのメモリへの展開も、バイトある
いはワードを単位として効率的に行なうことができる。
【0011】
【実施例】以下、図面を用いて本発明の一実施例を説明
する。
【0012】図1は本発明に係る画像圧縮処理システム
のブロック構成図を示す。1はスキャナ、キーボード、
マウスなどからなる入力装置、2は中央処理装置2Aと
主記憶装置2Bからなるデータ処理装置、3は画像デー
タファイルを記憶するための二次記憶装置、4は画像デ
ータを表示するための表示装置、5は画像データを印刷
するためのプリンタである。
【0013】本実施例において処理の対象となる原画像
データは、図2に示すように、0のビットで白の画素
を、1のビットで黒の画素を表わした2値イメージデー
タである。圧縮処理において、図2に見られるように、
連続した8ビット(1バイト)が処理単位とされる。
【0014】原画像データは、図3に示すような構造の
ファイルとして二次記憶装置3に記憶される。この原画
像ファイルはファイルヘッダ部31とデータ部32から
なる。ファイルヘッダ部31は原画像データの幅(横方
向画素数)311と、原画像データの高さ(縦方向の画
素数)312からなる。データ部32は、原画像の左上
隅から図2に示された順序で画素値を並べたものであ
る。
【0015】原画像データを圧縮したデータは、図4
(a)に示す構造のファイルとして二次記憶装置3に格
納される。この圧縮ファイルはファイルヘッダ部33と
データ部34からなる。ファイルヘッダ部33は原画像
の幅331と高さ332からなる。データ部34はレコ
ードの並びである。
【0016】このレコードとしては、図4(b)に示し
た構造の白ランレコード、(c)に示した構造の黒ラン
レコード、(d)に示した構造の灰色ランレコードの3
種類がある。それぞれのレコードの内容は次表のとおり
である。
【0017】
【表1】
【0018】圧縮処理においては、処理単位であるとこ
ろの1バイト毎に白、黒、灰色の分類を行なう。全ビッ
トが0すなわち値が00h(16進)のバイトを白バイ
トと判断し、白バイトの1個以上の連続を白ランとして
扱い、そのランレングスをバイト数によってカウントす
る。値がffhのバイトを黒バイトと判断し、黒バイト
の1個以上の連続を黒ランとして扱い、そのランレング
スをバイト数によってカウントする。また、値が00h
でもffhでもないバイトを灰色バイトと判断し、灰色
バイトの1個以上の連続を灰色ランとして扱い、そのラ
ンレングスをバイト数によってカウントする。
【0019】白ランのレコードは図4(b)に示すよう
に白レコード型部35とランレングス部36からなる。
【0020】ランレングス(バイト数)が1〜64の範
囲の白ランに対する白ランレコードの内容は10xxx
xxxとなる(表1の項番1)。先頭の10が白レコー
ド型部35の内容である。後のxxxxxxはランレン
グス部36の内容で、(連続した白バイトの個数−1)
の値の6ビット2進表現である。
【0021】ランレングスが65〜95の範囲の白ラン
に対する白ランレコードの内容は110xxxxxとな
る(表1の項番2)。先頭の110が白レコード型部3
5の内容である。後のxxxxxはランレングス部36
の内容で、(連続した白バイトの個数−64)から1を
引いた値の5ビット2進表現である。
【0022】なお、ランレングスが95を超える白ラン
は二つ以上の区間に分割し、それぞれの分割区間毎にレ
コードを作成する。また、1ライン上で、ある位置から
データ領域の末尾まで白バイトが連続する白ランのレコ
ードは、dfhとなる(表1の項番3)。
【0023】黒ランのレコードは図4(c)に示すよう
に黒レコード型部37とランレングス部38からなる。
【0024】ランレングスが1〜32の範囲の黒ランに
対する黒ランレコードの内容は111xxxxxとなる
(表1の項番4)。111が黒レコード型部37の内容
である。xxxxxはランレングス部38の内容で、
(連続した黒バイトの個数−1)の値の5ビット2進表
現である。ランレングスが32を超えた黒ランは二つ以
上の区間に分割し、分割区間毎にレコードを作成する。
【0025】白ランと黒ランのレコードはいずれも長さ
が1バイトに固定している。これに対して、灰色ランの
レコードは、図4(d)に示すように、灰色レコード型
部39、ランレングス部40に続けて、ラン中の各バイ
トのデータ41を順に並べた可変長レコードである。
【0026】灰色レコード型部39とランレングス部4
0は、具体的には表1の項番5に示されるように0xx
xxxxxとなる。0が灰色レコード型部39の内容で
ある。xxxxxxxはランレングス部40の内容で、
(連続した灰色バイトの個数−1)の値の7ビット2進
表現である。ランレングスが128を超えた灰色ラン
は、二つ以上に区間に分割して圧縮する。したがって、
灰色ランレコードは可変長ではあるが、他のレコードと
同様に1バイト毎に区切って処理することが可能であ
る。
【0027】次に、2値画像圧縮処理の内容を図5ない
し図9を用い詳細に説明する。図5は処理全体のフロー
チャートである。データ処理装置2は、主記憶装置2B
上の入力バッファに、二次記憶装置3上の原画像ファイ
ルから1ライン分のイメージデータを読み込み(ステッ
プ401)、その圧縮を行なう(ステップ403)。図
4の(b)ないし(d)に示された形式のレコードの連
続として圧縮データが得られるが、これは主記憶装置2
B上の出力バッファに蓄積される。
【0028】1ラインの圧縮を終わると、出力バッファ
の内容を二次記憶装置3に置かれた圧縮ファイルのデー
タ部34(図4(a))に出力する(ステップ40
4)。なお、圧縮ファイルのファイルヘッダ部33に
は、その生成時に原画像ファイルのファイルヘッダ部3
1の内容がコピーされる。
【0029】出力バッファの出力後、原画像ファイルか
ら次の1ライン分のイメージデータを入力バッファに読
み込み(ステップ405)、同様に処理する。このよう
な処理は、ステップ402で原画像ファイルに未処理デ
ータがなくなったと判断されるまで繰り返される。
【0030】図6は、図5のステップ403(1ライン
圧縮処理)のフローチャートである。ステップ501で
は、入力バッファを右端(末尾)から左方向へ走査して
最初の白以外のバイトを探し、これを圧縮対象データの
右端とする。このデータ右端まで、入力バッファ上を左
端(先頭)から右へ向かって視点を順に移しながら、
白、黒、灰色のランを抽出して圧縮する(ステップ50
3,507)。
【0031】ステップ503で、現在の視点まで続く白
ランが出現したと判断した場合、灰色ランの編集(ステ
ップ504、内容は後述)を行なった後、当該白ランの
白バイト個数をカウントし(ステップ505)、白ラン
の編集(ステップ505、内容は後述)を行ない、ステ
ップ502に戻る。このステップ502では、処理対象
の視点がデータ右端に達したか否かを判断し、データ右
端より左側に視点がある場合にはステップ503の処理
に進む。
【0032】ステップ507で現在の視点まで続く黒ラ
ンが出現したと判断した場合は、灰色ランの編集(ステ
ップ508)を行なってから当該黒ランの黒バイト数を
カウントし(ステップ509)、黒ランの編集(ステッ
プ510、内容は後述)を行なってステップ502に戻
る。
【0033】ステップ503,504で白ランでも黒ラ
ンでもないと判断された場合は、現在の視点まで続くラ
ンは灰色ランである。この場合、当該灰色ランの各バイ
トのデータを主記憶装置2B上のグレーコードバッファ
へ移し(ステップ511)、ステップ502へ戻る。
【0034】以上の処理を、視点がデータ右端まで到達
するまで繰り返すと、ステップ502からステップ51
2に進む。ステップ512でグレーコードバッファにデ
ータが残っていると判断した場合、すなわちデータ右端
まで続く灰色ランがあった場合、グレーコードバッファ
より灰色ランのデータを取り出し灰色ランの編集処理を
行なう(ステップ513)。なお、ステップ504,5
06,508,510,513の処理結果すなわち圧縮
されたランレコードは、ランの出現順に出力バッファに
出力される。
【0035】グレーコードバッファにデータがなくなる
と、データ右端(ステップ501で決定)が入力バッフ
ァの右端より左側であるか調べ(ステップ514)、左
側のときは出力バッファに改行コードを出力する(ステ
ップ515)。
【0036】図7は、白ランの編集処理(ステップ50
6)のフローチャートである。ステップ601で白ラン
のバイト数を分類する。バイト数が96個以上の場合、
バイト数が95個の白ランレコード(表1の項番2)を
作成し出力バッファに出力する(ステップ602)。そ
して、白ランバイト数から95を差し引いた値を改めて
白ランバイト数に設定し(ステップ603)、ステップ
601に戻る。すなわち、95バイトを超える長い白ラ
ンは、前述のように二つ以上の区間に分割して圧縮する
わけである。
【0037】白ランバイト数が65個から95個の間に
ある場合、そのバイト数の白ランレコード(表1の項番
2)を作成して出力バッファに出力し(ステップ60
4)、白ランバイト数を0(ゼロ)に設定しなおしステ
ップ601に戻る。白ランバイト数が1個から64個の
間にある場合、そのバイト数の白ランレコード(表1の
項番1)を作成して出力バッファに出力し(ステップ6
06)、白ランバイト数を0に設定しなおしステップ6
01に戻る。ステップ601で白ランバイト数が0であ
ると判断すると、一つの白ランの処理を終わる。
【0038】図8は、黒ランの編集処理(ステップ51
0)のフローチャートである。ステップ701で黒ラン
のバイト数を分類する。バイト数が33個以上の場合、
バイト数が32個の黒ランレコード(表1の項番4)を
作成して出力バッファに出力し(ステップ702)、黒
ランバイト数から32を差し引いた値を改めて黒ランバ
イト数に設定し(ステップ703)、ステップ701に
戻る。すなわち、32バイトを超える長い黒ランは、前
述のように二つ以上の区間に分割して圧縮するわけであ
る。
【0039】バイト数が1個から32個の間の場合、そ
のバイト数の黒ランレコード(表1の項番4)を作成し
て出力バッファに出力し(ステップ704)、黒ランバ
イト数を0に設定しなおし(ステップ705)、ステッ
プ701に戻る。そしてステップ701で黒ランバイト
数が0であると判断すると、一つの黒ランの処理を終了
する。
【0040】図9は、灰色ランの編集処理(ステップ5
04,508,513)のフローチャートである。ステ
ップ801でグレーコードに記憶されている灰色ランデ
ータのバイト数を分類する。
【0041】バイト数が129個以上の場合、先頭バイ
トから128バイト分の灰色ランレコード(表1の項番
5、図4(d))を作成して出力バッファに出力する
(ステップ802)。すなわち、128バイトを超える
灰色ランは、前述のように二つ以上の区間に分割して圧
縮するわけである。この圧縮された128バイト分は、
グレーコードバッファから追い出される。そして、灰色
ランバイト数から128を差し引いた値が改めて灰色ラ
ンバイト数に設定し(ステップ803)、ステップ80
1に戻る。
【0042】灰色ランバイト数が1個から128個の間
の場合、グレーコードバッファ内の全バイトに対応する
灰色ランデータを作成して出力バッファに出力し(ステ
ップ804)、灰色ランバイト数を0に設定しなおし
(ステップ805)、ステップ801に戻る。ステップ
801でバイト数が0であると判断した場合、すなわち
グレーコードバッファにデータがなくなると、一つの灰
色ランに対する処理を終わる。
【0043】なお、ここまでの説明から理解されるよう
に、本実施例によっても従来の1画素単位のランレング
ス圧縮と同等の圧縮率を達成できる。
【0044】
【発明の効果】以上説明したように、本発明によれば、
ビットでなくバイトあるいはワードといった大きな処理
単位とすることにより、従来よりも処理効率を大幅に改
善して圧縮処理を飛躍的に高速化できる。
【図面の簡単な説明】
【図1】画像圧縮処理システムのブロック構成の一例を
示す。
【図2】原画像データと処理単位の説明図である。
【図3】原画像ファイルの構造を示す。
【図4】(a)圧縮ファイルの構造を示す。 (b)白ランレコードの構造を示す。 (c)黒ランレコードの構造を示す。 (d)灰色ランレコードの構造を示す。
【図5】圧縮処理の全体フローを示す。
【図6】1ライン圧縮処理のフローを示す。
【図7】白ラン編集処理のフローを示す。
【図8】黒ラン編集処理のフローを示す。
【図9】灰色ラン編集処理のフローを示す。
【符号の説明】
1 入力装置 2 データ処理装置 2A 中央処理装置 2B 主記憶装置 3 二次記憶装置 4 表示装置 5 プリンタ 33 圧縮ファイルのヘッダ部 34 圧縮ファイルのデータ部 35 白ランレコードのレコード型部 36 白ランレコードのランレングス部 37 黒ランレコードのレコード型部 38 黒ランレコードのランレングス部 39 灰色ランレコードのレコード型部 40 灰色ランレコードのランレングス部 41 灰色バイトデータ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 形部 真哉 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 2値画像上の連続した複数画素を処理単
    位として、全画素が白の処理単位の連続区間及び全画素
    が黒の処理単位の連続区間を抽出し、それぞれの区間を
    該区間内の処理単位数をランレングスとして用い圧縮す
    ることを特徴とする2値画像圧縮方式。
JP5497192A 1992-03-13 1992-03-13 2値画像圧縮方式 Pending JPH05260322A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5497192A JPH05260322A (ja) 1992-03-13 1992-03-13 2値画像圧縮方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5497192A JPH05260322A (ja) 1992-03-13 1992-03-13 2値画像圧縮方式

Publications (1)

Publication Number Publication Date
JPH05260322A true JPH05260322A (ja) 1993-10-08

Family

ID=12985546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5497192A Pending JPH05260322A (ja) 1992-03-13 1992-03-13 2値画像圧縮方式

Country Status (1)

Country Link
JP (1) JPH05260322A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010110858A (ko) * 2000-06-08 2001-12-15 김성식 이동통신 환경에서의 이진 영상 부호화 및 복호화기
US6674912B2 (en) 2000-04-12 2004-01-06 Fujitsu Limited Data compression processing method and apparatus
KR100476389B1 (ko) * 1997-07-10 2005-06-10 주식회사 팬택앤큐리텔 영상신호의이진데이터부호화방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183275A (ja) * 1988-01-18 1989-07-21 Canon Inc データ処理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01183275A (ja) * 1988-01-18 1989-07-21 Canon Inc データ処理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100476389B1 (ko) * 1997-07-10 2005-06-10 주식회사 팬택앤큐리텔 영상신호의이진데이터부호화방법
US6674912B2 (en) 2000-04-12 2004-01-06 Fujitsu Limited Data compression processing method and apparatus
KR20010110858A (ko) * 2000-06-08 2001-12-15 김성식 이동통신 환경에서의 이진 영상 부호화 및 복호화기

Similar Documents

Publication Publication Date Title
US6563960B1 (en) Method for merging images
JP3461309B2 (ja) ハフマン符号化データ圧縮装置
CN112118449B (zh) 一种图像压缩与解压缩的方法及装置
JP2830690B2 (ja) 画像処理装置
EP0349677B1 (en) Image coding system
EP0459796B1 (en) Image processing system
US6798914B1 (en) Neural-network-based method of image compression
JPH05260322A (ja) 2値画像圧縮方式
US5091977A (en) Image data compression method using a run prediction technique
JPH06344601A (ja) 出力装置および出力方法
JPH04356873A (ja) カラー文書画像の適応符号化方式
JP2644477B2 (ja) 画像処理方法
JPH06334872A (ja) 画像処理装置
JP3559419B2 (ja) 画像圧縮データの伸張方法及び装置
JP3361177B2 (ja) 符号化復号化方法および符号化復号化装置
JPH06217110A (ja) 画像変換方法
JPS6118387B2 (ja)
JP2006060490A (ja) 画像圧縮装置および画像圧縮プログラム
JP3152772B2 (ja) 画像データ復元装置
JP3736107B2 (ja) 画像処理装置
JP2601169B2 (ja) 画像データ圧縮符号化システム
JPH089373A (ja) 画像圧縮装置
KR910002773B1 (ko) 의사중간조 화상 데이터의 데이터 압축 및 복원방법
JP3321226B2 (ja) 符号化復号化方法
JP3796235B2 (ja) イメージ圧縮及び復元方法