JPH0779427B2 - 多値画像の高能率圧縮符号化装置 - Google Patents
多値画像の高能率圧縮符号化装置Info
- Publication number
- JPH0779427B2 JPH0779427B2 JP1109934A JP10993489A JPH0779427B2 JP H0779427 B2 JPH0779427 B2 JP H0779427B2 JP 1109934 A JP1109934 A JP 1109934A JP 10993489 A JP10993489 A JP 10993489A JP H0779427 B2 JPH0779427 B2 JP H0779427B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- pixel
- data
- gradation
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Image Processing (AREA)
Description
【発明の詳細な説明】 <産業上の利用分野> この発明は、ディジタル画像処理の分野に属し、文字画
像や画像合成の特質を考慮した多値画像の高能率圧縮符
号化装置に関する。
像や画像合成の特質を考慮した多値画像の高能率圧縮符
号化装置に関する。
<従来の技術> ワードプロセッサ等による文字原稿から多値の文字画像
を作成する場合、従来は他のディジタル画像と同様、適
当に決められた量子化レベルをもとに量子化し、多値画
像を得ている。
を作成する場合、従来は他のディジタル画像と同様、適
当に決められた量子化レベルをもとに量子化し、多値画
像を得ている。
また、多値の文字画像を圧縮符号化する場合、従来は第
2図に示すように画像を0と1のみで表されるビット平
面に分離し、これらを独立な二値画像として扱う方法が
とられてきた。ここで第kビット平面(k=1,2,...,
n)とは、各画素の画素値を2進数表示してk桁目を取
り出してつくった画像平面のことである。これらビット
平面を符号化する方法としては、値0、値1のランレン
グスを数え、MH(モディフアイド ハフマン(Modified
Huffman)符号を用いて符号化するものや、2次元符号
化、例えばMR(モディフアイド リード(Modified Rea
d))符号化などを行うものがある。
2図に示すように画像を0と1のみで表されるビット平
面に分離し、これらを独立な二値画像として扱う方法が
とられてきた。ここで第kビット平面(k=1,2,...,
n)とは、各画素の画素値を2進数表示してk桁目を取
り出してつくった画像平面のことである。これらビット
平面を符号化する方法としては、値0、値1のランレン
グスを数え、MH(モディフアイド ハフマン(Modified
Huffman)符号を用いて符号化するものや、2次元符号
化、例えばMR(モディフアイド リード(Modified Rea
d))符号化などを行うものがある。
<発明が解決しようとする課題> 2値文字画像の圧縮符号化では、文字画像の画素値の分
布状態、即ち文字の背景部分を表す画素値1の画素数が
非常に多いことが利用されてきた。ところが、多値文字
画像の場合、第3図の画素値のヒストグラムに示すよう
に濃度レベルのダイナミックレンジを有効に利用するこ
とが難しい。そのため従来の画像作成方式では、画像に
よって画素値の分布状態が定まらず、圧縮符号化に適し
ているとはいえない。
布状態、即ち文字の背景部分を表す画素値1の画素数が
非常に多いことが利用されてきた。ところが、多値文字
画像の場合、第3図の画素値のヒストグラムに示すよう
に濃度レベルのダイナミックレンジを有効に利用するこ
とが難しい。そのため従来の画像作成方式では、画像に
よって画素値の分布状態が定まらず、圧縮符号化に適し
ているとはいえない。
次に圧縮方式の問題点について述べる。ここで扱うp階
調値文字画像は、文字そのものを表す部分と、背景の白
地を表す部分と、文字と白地の境界を表す部分とから成
り、画素の量子化は文字部分に最低階調値0、白地部分
に最高階調値(p−1)が割り当てられるように適切に
スケールされているものとする。このような画像におい
ては、画素値(p−1)の画素数が多く(90%以上)、
次いで画素値0の画素数が多い(数%)。これに対して
画素値1〜(p−2)の画素は、文字と白地の境界部分
(エッジ部)にのみ現れ、画像全体に占める割合は小さ
い。ただし、( )内に示した割合は512×512画素の3
ビット画像についてのものである。一方、全画素をビッ
ト平面に分割して独立に符号化する従来方法では、相関
の強い2値画像を何枚も符号化することにより、冗長度
が大きい。例えばnビット画像の場合、白地に対応する
画素はどのビット平面においても値が1であり、文字に
対応する画素は、どのビット平面においても値が0であ
る。従って各ビット平面は互いに似かよったものにな
る。そのため、従来方式によれば、非常に相関の強いn
枚のビット平面を独立に符号化することになり、圧縮能
率が悪い。
調値文字画像は、文字そのものを表す部分と、背景の白
地を表す部分と、文字と白地の境界を表す部分とから成
り、画素の量子化は文字部分に最低階調値0、白地部分
に最高階調値(p−1)が割り当てられるように適切に
スケールされているものとする。このような画像におい
ては、画素値(p−1)の画素数が多く(90%以上)、
次いで画素値0の画素数が多い(数%)。これに対して
画素値1〜(p−2)の画素は、文字と白地の境界部分
(エッジ部)にのみ現れ、画像全体に占める割合は小さ
い。ただし、( )内に示した割合は512×512画素の3
ビット画像についてのものである。一方、全画素をビッ
ト平面に分割して独立に符号化する従来方法では、相関
の強い2値画像を何枚も符号化することにより、冗長度
が大きい。例えばnビット画像の場合、白地に対応する
画素はどのビット平面においても値が1であり、文字に
対応する画素は、どのビット平面においても値が0であ
る。従って各ビット平面は互いに似かよったものにな
る。そのため、従来方式によれば、非常に相関の強いn
枚のビット平面を独立に符号化することになり、圧縮能
率が悪い。
そこで、この発明の目的は、多値文字画像や合成画像に
おいては、背景部分を表わす画素数と文字等の対象その
ものを表わす画素数が極めて多いという特質を利用し
て、濃度レベルのダイナミックレンジを有効に利用でき
るように量子化し、さらに背景部分を表わす画素と文字
等の対象そのものを表わす画素についてラベル付けして
符号化することによって、高能率に圧縮できる多値画像
の高能率圧縮符号化装置を提供することにある。
おいては、背景部分を表わす画素数と文字等の対象その
ものを表わす画素数が極めて多いという特質を利用し
て、濃度レベルのダイナミックレンジを有効に利用でき
るように量子化し、さらに背景部分を表わす画素と文字
等の対象そのものを表わす画素についてラベル付けして
符号化することによって、高能率に圧縮できる多値画像
の高能率圧縮符号化装置を提供することにある。
<課題を解決するための手段> この発明の多値画像の高能率圧縮符号化装置は、ある閾
値以上の画素値を持つ画素についての画素値の代表値
と、上記閾値より小さい画素値を持つ画素についての画
素値の代表値とを求める代表値算出手段と、 上記二つの代表値間をp(pは自然数)個に分割し、対
象そのものを表す部分の画素値に最高階調値(p−1)
または最低階調値0の一方、背景を表す部分の画素値に
最高階調値(p−1)または最低階調値0の他方、上記
対象と背景の境界部分を表す部分の画素値に中間階調値
1〜(p−2)が夫々割り当てられるように量子化を行
なってn(nは自然数)ビットで表されるp階調画像デ
ータを作成するp階調画像データ作成手段と、 上記nビットのp階調画像データを画素の位置に対応づ
けて表すn枚の想定プレーンを、一枚の特定の想定プレ
ーンにおいては、最高階調値を持つ画素に対応する位置
と最低階調値を持つ画素に対応する位置に異なるラベル
を付与すると共に、中間階調値を持つ画素に対応する位
置にその中間階調値の最上位ビットに対応する1または
0を付与して、計4種のデータを付与する一方、他の
(n−1)枚の想定プレーンにおいては、上記最高階調
値および上記最低階調値を持つ各画素に対応する位置に
データを付与しないで無視されるように空白にすると共
に、中間階調値を持つ画素に対応する各位置にその中間
階調値に対応する1または0を付与して、計2種のデー
タを付与するようにして、作成する想定プレーン作成手
段と、 上記特定の想定プレーンにおける上記4種のデータをそ
れらのデータの位置と種類が特定できるように符号化す
る一方、上記他の(n−1)枚の想定プレーンにおける
中間階調値の画素の位置に付与された0と1からなる2
種のデータのみをそれらのデータの位置と種類が特定で
きるように符号化する符号化手段とを備えたことを特徴
としている。
値以上の画素値を持つ画素についての画素値の代表値
と、上記閾値より小さい画素値を持つ画素についての画
素値の代表値とを求める代表値算出手段と、 上記二つの代表値間をp(pは自然数)個に分割し、対
象そのものを表す部分の画素値に最高階調値(p−1)
または最低階調値0の一方、背景を表す部分の画素値に
最高階調値(p−1)または最低階調値0の他方、上記
対象と背景の境界部分を表す部分の画素値に中間階調値
1〜(p−2)が夫々割り当てられるように量子化を行
なってn(nは自然数)ビットで表されるp階調画像デ
ータを作成するp階調画像データ作成手段と、 上記nビットのp階調画像データを画素の位置に対応づ
けて表すn枚の想定プレーンを、一枚の特定の想定プレ
ーンにおいては、最高階調値を持つ画素に対応する位置
と最低階調値を持つ画素に対応する位置に異なるラベル
を付与すると共に、中間階調値を持つ画素に対応する位
置にその中間階調値の最上位ビットに対応する1または
0を付与して、計4種のデータを付与する一方、他の
(n−1)枚の想定プレーンにおいては、上記最高階調
値および上記最低階調値を持つ各画素に対応する位置に
データを付与しないで無視されるように空白にすると共
に、中間階調値を持つ画素に対応する各位置にその中間
階調値に対応する1または0を付与して、計2種のデー
タを付与するようにして、作成する想定プレーン作成手
段と、 上記特定の想定プレーンにおける上記4種のデータをそ
れらのデータの位置と種類が特定できるように符号化す
る一方、上記他の(n−1)枚の想定プレーンにおける
中間階調値の画素の位置に付与された0と1からなる2
種のデータのみをそれらのデータの位置と種類が特定で
きるように符号化する符号化手段とを備えたことを特徴
としている。
<作用> 上記代表値算出手段は、ある閾値以上の画素値を持つ画
素についての画素値の代表値と、上記閾値より小さい画
素値を持つ画素についての画素値の代表値とを求める。
上記p階調画像データ作成手段は、この二つの代表値間
をp個に分割し、文字そのものを表す部分の画素値に
(p−1)または0、背景を表す部分の画素値に0また
は(p−1)、文字と背景の境界を表す部分の画素値に
1〜(p−2)が夫々割り当てられるように量子化を行
なって、nビットで表されるp階調画像データを作成す
る。それによって、画素値の量子化レベルが適切にスケ
ールされ、画素値の分布は常に両端の量子化レベルのも
のが多くなるように定まり、かつ濃度レベルのダイナミ
ックレンジが有効に利用できる。
素についての画素値の代表値と、上記閾値より小さい画
素値を持つ画素についての画素値の代表値とを求める。
上記p階調画像データ作成手段は、この二つの代表値間
をp個に分割し、文字そのものを表す部分の画素値に
(p−1)または0、背景を表す部分の画素値に0また
は(p−1)、文字と背景の境界を表す部分の画素値に
1〜(p−2)が夫々割り当てられるように量子化を行
なって、nビットで表されるp階調画像データを作成す
る。それによって、画素値の量子化レベルが適切にスケ
ールされ、画素値の分布は常に両端の量子化レベルのも
のが多くなるように定まり、かつ濃度レベルのダイナミ
ックレンジが有効に利用できる。
そして、上記想定プレーン作成手段は、nビットのp階
調画像データを画素の位置に対応づけて表すn枚の想定
プレーンを次のようにして作成する。すなわち、一枚の
特定の想定プレーンにおいては、最高階調値を持つ画素
に対応する位置と最低階調値を持つ画素に対応する位置
に異なるラベルを付与すると共に、中間階調値を持つ画
素に対応する位置にその中間階調値の最上位ビットに対
応する1または0を付与して、計4種のデータを付与す
る。一方、他の(n−1)枚の想定プレーンにおいて
は、上記最高階調値および上記最低階調値を持つ各画素
に対応する位置にデータを付与しないで無視されるよう
に空白にすると共に、中間階調値を持つ画素に対応する
各位置にその中間階調値に対応する1または0を付与し
て、計2種のデータを付与する。
調画像データを画素の位置に対応づけて表すn枚の想定
プレーンを次のようにして作成する。すなわち、一枚の
特定の想定プレーンにおいては、最高階調値を持つ画素
に対応する位置と最低階調値を持つ画素に対応する位置
に異なるラベルを付与すると共に、中間階調値を持つ画
素に対応する位置にその中間階調値の最上位ビットに対
応する1または0を付与して、計4種のデータを付与す
る。一方、他の(n−1)枚の想定プレーンにおいて
は、上記最高階調値および上記最低階調値を持つ各画素
に対応する位置にデータを付与しないで無視されるよう
に空白にすると共に、中間階調値を持つ画素に対応する
各位置にその中間階調値に対応する1または0を付与し
て、計2種のデータを付与する。
上記符号化手段は、上記特定の想定プレーンにおける上
記4種のデータをそれらのデータの位置と種類が特定で
きるように符号化する一方、上記他の(n−1)枚の想
定プレーンにおける中間階調値の画素の位置に付与され
た0と1からなる2種のデータのみをそれらのデータの
位置と種類が特定できるように符号化する。
記4種のデータをそれらのデータの位置と種類が特定で
きるように符号化する一方、上記他の(n−1)枚の想
定プレーンにおける中間階調値の画素の位置に付与され
た0と1からなる2種のデータのみをそれらのデータの
位置と種類が特定できるように符号化する。
このように、数が多い最高階調値と最低階調値の画素に
ついてはラベル符号化を行ない、数の少ない中間階調値
の画素については、ビット毎に符号化するので高能率に
圧縮符号化される。
ついてはラベル符号化を行ない、数の少ない中間階調値
の画素については、ビット毎に符号化するので高能率に
圧縮符号化される。
<実施例> 以下、この発明を図示の実施例により詳細に説明する。
1)p階調文字画像データの作成について述べる。
このp階調文字画像データは、第5図に示すp階調画像
データ作成装置10によって作成される。このp階調画像
データ作成装置10は、代表値算出手段としての平均値計
算回路1、量子化レベル決定回路2、p階調画像作成回
路3およびこれらを制御する制御回路4を備え、第4図
に示す量子化レベルで、p階調の画素値を下記のように
得る。上記量子化レベル決定回路2とp階調画像作成回
路3とでp階調画像データ作成手段の一例を構成する。
すなわち、従来方法によって作成されたq階調文字画像
(q>p)を横に走査し、画素値が閾値t以上の画素の
画素値の平均値(または最頻値)Mwと、閾値tより小さ
い画素の画素値の平均値(または最頻値)Mbを求める。
次に、量子化レベルLh(h=0,1,...,p)を次式によっ
て定義する。
データ作成装置10によって作成される。このp階調画像
データ作成装置10は、代表値算出手段としての平均値計
算回路1、量子化レベル決定回路2、p階調画像作成回
路3およびこれらを制御する制御回路4を備え、第4図
に示す量子化レベルで、p階調の画素値を下記のように
得る。上記量子化レベル決定回路2とp階調画像作成回
路3とでp階調画像データ作成手段の一例を構成する。
すなわち、従来方法によって作成されたq階調文字画像
(q>p)を横に走査し、画素値が閾値t以上の画素の
画素値の平均値(または最頻値)Mwと、閾値tより小さ
い画素の画素値の平均値(または最頻値)Mbを求める。
次に、量子化レベルLh(h=0,1,...,p)を次式によっ
て定義する。
ここではMw,Mb間を等分割して量子化レベルを得たが、
一般には非等分割することも可能である。例えば原画像
の濃度値ヒストグラムを調べ、画素数の多い区間を細か
く、画素数の少ない区間を粗く分割し、階調値を減らし
たことによる画質の劣化を最小限にするMaxの量子化法
(Max.J:クオンティゼーション フォ ミニマム ディ
ストーション アイアールイ トランス(Quantization
for minimun distortion.IRE Trans).IT−6,7〜12,19
60参照)が考えられる。
一般には非等分割することも可能である。例えば原画像
の濃度値ヒストグラムを調べ、画素数の多い区間を細か
く、画素数の少ない区間を粗く分割し、階調値を減らし
たことによる画質の劣化を最小限にするMaxの量子化法
(Max.J:クオンティゼーション フォ ミニマム ディ
ストーション アイアールイ トランス(Quantization
for minimun distortion.IRE Trans).IT−6,7〜12,19
60参照)が考えられる。
次に、q階調文字画像を横に走査しながら、画素値がLh
以上でLh+1より小さい画素の画素値をh(h=0,
1,....,p−1)に順次置き換えることによって、p階調
文字画像を作成する。第4図から量子化レベルとp階調
画素値の関係が分かる。
以上でLh+1より小さい画素の画素値をh(h=0,
1,....,p−1)に順次置き換えることによって、p階調
文字画像を作成する。第4図から量子化レベルとp階調
画素値の関係が分かる。
このように量子化することによって、p階調の画素値の
分布は、常に両端のレベルのものが多くなる分布にな
り、濃度レベルのダイナミックレンズが有効に利用され
る。
分布は、常に両端のレベルのものが多くなる分布にな
り、濃度レベルのダイナミックレンズが有効に利用され
る。
2)次に文字画像圧縮について述べる。
第一例として、nビット画像をランレングス符号化する
方法について詳細に説明する。この符号化は、第10図
(a)に示すように想定プレーン作成手段としての想定
プレーン走査回路21,ランレングス作成回路22,ランレン
グスMH符号変換回路23,圧縮符号作成回路24および制御
回路25を備える符号化装置20によって行なわれる。上記
ランレングス作成回路22、ランレングスMH符号変換回路
23および圧縮符号作成回路24によって符号化手段の一例
が構成される。
方法について詳細に説明する。この符号化は、第10図
(a)に示すように想定プレーン作成手段としての想定
プレーン走査回路21,ランレングス作成回路22,ランレン
グスMH符号変換回路23,圧縮符号作成回路24および制御
回路25を備える符号化装置20によって行なわれる。上記
ランレングス作成回路22、ランレングスMH符号変換回路
23および圧縮符号作成回路24によって符号化手段の一例
が構成される。
まず、nビット画像を次に述べる様にn枚の想定プレー
ンに分ける(第1図参照)。
ンに分ける(第1図参照)。
画素の位置を座標(i,j)で表し、その点の画素をAijで
表す。中間階調値を持つ画素(1≦Aij≦2n−2)につ
いては、画素値を2進数表示して、そのk桁めをakij
(k=1,2,...,n:akij=0,1)とし、1つの画素の画素
値をn個の要素(a1ij,a2ij,...,anij)で表すことにす
る。画素値が最低階調値または最高階調値(Aij=0,2n
−1)の画素については、上記の様な分類はせずに、 とし、1つの画素の画素値を1個の要素bijつまりラベ
ルで表す。
表す。中間階調値を持つ画素(1≦Aij≦2n−2)につ
いては、画素値を2進数表示して、そのk桁めをakij
(k=1,2,...,n:akij=0,1)とし、1つの画素の画素
値をn個の要素(a1ij,a2ij,...,anij)で表すことにす
る。画素値が最低階調値または最高階調値(Aij=0,2n
−1)の画素については、上記の様な分類はせずに、 とし、1つの画素の画素値を1個の要素bijつまりラベ
ルで表す。
次に、anijとbijを画素値として展開した画像平面を想
定し、これを想定プレーンnとする。従って想定プレー
ンnは0から3までの値を持つ画素から成る平面であ
る。同様にakij(k=1,2,...,n−1)を画素値として
展開した画像を想定し、それぞれを想定プレーンkとす
る。ただし、Aij=0,2n−1である座標(i,j)において
は対応するakijが定義されていないので、この座標は
「空白」とする。従って、想定プレーンk(k=1,
2,...,n−1)は、値が0,1または「空白」の画素から成
る平面である。
定し、これを想定プレーンnとする。従って想定プレー
ンnは0から3までの値を持つ画素から成る平面であ
る。同様にakij(k=1,2,...,n−1)を画素値として
展開した画像を想定し、それぞれを想定プレーンkとす
る。ただし、Aij=0,2n−1である座標(i,j)において
は対応するakijが定義されていないので、この座標は
「空白」とする。従って、想定プレーンk(k=1,
2,...,n−1)は、値が0,1または「空白」の画素から成
る平面である。
以上の様にして決めたn枚の想定プレーンによって、n
ビットの画像を表す。
ビットの画像を表す。
次にランレングスデータの作成方法について述べる。
まず、上記nの想定プレーンのそれぞれについて、想定
プレーンを横方向に走査しながら一行毎に画素値のラン
レングスを数えていく。想定プレーンnについては0か
ら3までの4種類のランをとる。それ以外の想定プレー
ンについては、0,1の2種類のランをとるが、その際、
「空白」は全く無視することにする。従って「空白」ば
かりから成る行では想定プレーンk(k=1,...,n−
1)のランレングスデータは作成されない。
プレーンを横方向に走査しながら一行毎に画素値のラン
レングスを数えていく。想定プレーンnについては0か
ら3までの4種類のランをとる。それ以外の想定プレー
ンについては、0,1の2種類のランをとるが、その際、
「空白」は全く無視することにする。従って「空白」ば
かりから成る行では想定プレーンk(k=1,...,n−
1)のランレングスデータは作成されない。
第6図をもとに上記の事柄を説明する。第6図はnビッ
ト画像の一行分の濃度値を縦に2進数表示して横に並べ
たものと、この行をn個の想定プレーンに分離したもの
の図である。第6図で点線で囲んだ部分は各想定プレー
ンを表し、実線で囲んだ部分はランを表し、*は「空
白」を表す。ここで注意したいのは、想定プレーン(n
−1)から想定プレーン1までのランをとる際、「空
白」部分は全く無視されるということである。例えば想
定プレーン1の値1では、長さ2のランレングスが1個
と数えられる。全画面をビット平面に分割する従来の方
法では、この部分の長さ1のランレングスが2個と数え
られ、ランの個数は増えてしまう。この様な点でも本装
置は従来装置に勝っている。
ト画像の一行分の濃度値を縦に2進数表示して横に並べ
たものと、この行をn個の想定プレーンに分離したもの
の図である。第6図で点線で囲んだ部分は各想定プレー
ンを表し、実線で囲んだ部分はランを表し、*は「空
白」を表す。ここで注意したいのは、想定プレーン(n
−1)から想定プレーン1までのランをとる際、「空
白」部分は全く無視されるということである。例えば想
定プレーン1の値1では、長さ2のランレングスが1個
と数えられる。全画面をビット平面に分割する従来の方
法では、この部分の長さ1のランレングスが2個と数え
られ、ランの個数は増えてしまう。この様な点でも本装
置は従来装置に勝っている。
次に、ランレングスを想定プレーンごとにMH符号に変換
し、記録する。第7図にそのデータフォーマットを示
す。想定プレーンnについては各MH符号の先頭に、0〜
3の4つのランの種類を表すために2ビットをもうけ
る。想定プレーン(n−1)から想定プレーン1につい
ては、走査するときの各行で最初に現れるデータの先頭
にのみランの種類を表すための1ビットをもうければよ
い。なぜならランの種類は0,1の2種であり、行の最初
のデータの種類がわかればそれにつづくデータの種類が
わかるからである。
し、記録する。第7図にそのデータフォーマットを示
す。想定プレーンnについては各MH符号の先頭に、0〜
3の4つのランの種類を表すために2ビットをもうけ
る。想定プレーン(n−1)から想定プレーン1につい
ては、走査するときの各行で最初に現れるデータの先頭
にのみランの種類を表すための1ビットをもうければよ
い。なぜならランの種類は0,1の2種であり、行の最初
のデータの種類がわかればそれにつづくデータの種類が
わかるからである。
以上、符号化について述べてきたなかでは、n枚の想定
プレーンを考え、その想定プレーンを走査しながら圧縮
データを作ることとしたが、もとのnビット画像を走査
しつつ各想定プレーンの画素値を知ることができるの
で、n枚の画像を実際に作る必要はない。第8図に符号
化のフローチャートを示す。第8図で用いられている記
号の意味は次のとおりである。画素の位置は(i,j)で
表し、画素値はAijで表す。lk(k=1,...,n)はプレー
ンkにおけるランレングスを表す。akijはAijが1〜2n
−2の場合に画素値を2進数表示した時のk桁めの数字
を表す。bij,cijは次の式で定義したものである。
プレーンを考え、その想定プレーンを走査しながら圧縮
データを作ることとしたが、もとのnビット画像を走査
しつつ各想定プレーンの画素値を知ることができるの
で、n枚の画像を実際に作る必要はない。第8図に符号
化のフローチャートを示す。第8図で用いられている記
号の意味は次のとおりである。画素の位置は(i,j)で
表し、画素値はAijで表す。lk(k=1,...,n)はプレー
ンkにおけるランレングスを表す。akijはAijが1〜2n
−2の場合に画素値を2進数表示した時のk桁めの数字
を表す。bij,cijは次の式で定義したものである。
また、dx,dyはそれぞれ原画像の横画素数、縦画素数を
表す、gkはランの種類である。
表す、gkはランの種類である。
第8図のフローチャートを第6図のデータA00=2n−1,A
01=2n−1,…をランレングス符号化するとして説明す
る。第6図のデータは、i=0,j=0,1,...9、dx=9で
ある。
01=2n−1,…をランレングス符号化するとして説明す
る。第6図のデータは、i=0,j=0,1,...9、dx=9で
ある。
まず、ステップS1,S2,S3で初期化を行なう。次いで、ス
テップS4で、A00=2n−1だから、ステップS6に進むと
判断し、l1=0だから、さらにステップS14に進み、k
=k+1,つまりk=2として、ステップS15に進み、k
=2<nなのでステップS4に戻る。そして、ステップS
4,S6,S14を(n−2)回繰り返して、ステップS15でk
=nと判別すると、ステップS16に進み、ln=0なの
で、ステップS20に進んでln=1とセットする。次い
で、ステップS21に進んでj=0なので、ステップS23に
進んでj=j+1、つまりj=1とセットする。次い
で、ステップS24でj=1,dx=9なので、ステップS3に
戻り、画素A01について、ステップS3,S4,S6,S14を行
い、さらにステップS15,4,6,14を(n−2)回繰り返
し、ステップS15でk=nであると判別すると、ステッ
プS16に進み、ln=1であるのでステップS17に進む。ス
テップS17では、C01=C00=3であるので、ステップS18
に進んでln=ln+1、つまりln=2とし、ステップS21
でj=1であるので、ステップS23に進み、j=j+1
つまりj=2とする。ステップS24ではj=2<dx=9
であるので、ステップS3に戻る。そして、画素A02の走
査を行なう。すなわち、ステップS3,S4,S6,S14を経て、
ステップS15,S4,S6,S14を(n−2)回繰り返して、k
=nとなると、ステップS15で、k=nであると判断し
て、ステップS16に進む。ln=2であるので、ステップS
16からステップS17に進み、C02=C01=3であるので、
さらに、ステップS18に進んでln=ln+1、つまりln=
3とセットする。次いで、ステップS21では、j=2<d
x=9であるので、ステップS21からステップS23に進
み、j=j+1、つまりj=3とし、さらにステップS2
4に進んで、j=3<dx=9であるので、ステップS3に
戻り、A03の走査に移る。
テップS4で、A00=2n−1だから、ステップS6に進むと
判断し、l1=0だから、さらにステップS14に進み、k
=k+1,つまりk=2として、ステップS15に進み、k
=2<nなのでステップS4に戻る。そして、ステップS
4,S6,S14を(n−2)回繰り返して、ステップS15でk
=nと判別すると、ステップS16に進み、ln=0なの
で、ステップS20に進んでln=1とセットする。次い
で、ステップS21に進んでj=0なので、ステップS23に
進んでj=j+1、つまりj=1とセットする。次い
で、ステップS24でj=1,dx=9なので、ステップS3に
戻り、画素A01について、ステップS3,S4,S6,S14を行
い、さらにステップS15,4,6,14を(n−2)回繰り返
し、ステップS15でk=nであると判別すると、ステッ
プS16に進み、ln=1であるのでステップS17に進む。ス
テップS17では、C01=C00=3であるので、ステップS18
に進んでln=ln+1、つまりln=2とし、ステップS21
でj=1であるので、ステップS23に進み、j=j+1
つまりj=2とする。ステップS24ではj=2<dx=9
であるので、ステップS3に戻る。そして、画素A02の走
査を行なう。すなわち、ステップS3,S4,S6,S14を経て、
ステップS15,S4,S6,S14を(n−2)回繰り返して、k
=nとなると、ステップS15で、k=nであると判断し
て、ステップS16に進む。ln=2であるので、ステップS
16からステップS17に進み、C02=C01=3であるので、
さらに、ステップS18に進んでln=ln+1、つまりln=
3とセットする。次いで、ステップS21では、j=2<d
x=9であるので、ステップS21からステップS23に進
み、j=j+1、つまりj=3とし、さらにステップS2
4に進んで、j=3<dx=9であるので、ステップS3に
戻り、A03の走査に移る。
ステップS3でk=1とセットした後、ステップS4で、A
03≠0,A03≠2n−1であると判定して、ステップS4から
ステップS5に進む。ステップS5でl1=0であるので、ス
テップS7に進んで、ランの種類を表わすデータg1=a1 03
=0を格納し、ステップS11に進んで、l1=1とセット
する。次いで、ステップS12でj=3<dx=9であるの
で、ステップS14に進み、k=k+1とし、つまりk=
2として、ステップS15に進む。k=2<nであるか
ら、ステップS15からステップS4に戻る。そして、ステ
ップS4,S5,S7,S11,S12,S14,S15を(n−2)回繰り返
す。
03≠0,A03≠2n−1であると判定して、ステップS4から
ステップS5に進む。ステップS5でl1=0であるので、ス
テップS7に進んで、ランの種類を表わすデータg1=a1 03
=0を格納し、ステップS11に進んで、l1=1とセット
する。次いで、ステップS12でj=3<dx=9であるの
で、ステップS14に進み、k=k+1とし、つまりk=
2として、ステップS15に進む。k=2<nであるか
ら、ステップS15からステップS4に戻る。そして、ステ
ップS4,S5,S7,S11,S12,S14,S15を(n−2)回繰り返
す。
そして、ステップS16では、ln=3であるので、ステッ
プS16からステップS17に進んで、C03=1、C02=3であ
るので、ステップS19に進んで、データC02=3とランレ
ングスln=3を記録する。次いで、ステップS20に進ん
でln=1をセットし、ステップS21でj=3,j=3<dx=
9であるので、ステップS21からステップS23に進み、j
=j+1,j=4とし、ステップS24に進む。ステップS24
では、j=4<dx=9であるので、ステップS3に戻ると
判断する。その後に、ステップS3で、k=1とセット
し、ステップS4を経てステップS5に進み、ステップS5
で、l1=1であるので、ステップS5からステップS8に進
むと判断する。ステップS8では、ak=ij=gkであるか否
かを判断する。a1 04=1で、既に格納されているg1=0
であるので、ステップS8からステップS10に進んで、ラ
ンの種類を表わすデータg1=0,ランの長さl1=1を記録
する。その後、ステップS11に進んで、l1=1をセット
し、ステップS12でj=4<dx=9であるので、ステッ
プS12からステップS14に進み、k=k+1、つまり、k
=2とし、ステップS15に進んで、k=2<nであるの
で、ステップS15からステップS4に戻る。このステップS
4,S5,S8,S10,S11,S12,(またはS4,S5,S8,S9,S12)S14,S
15をk=2,3,...,(n−3)について、繰り返す。そし
て、ステップS4で、A04≠0,2n−1であるので、ステッ
プS5に進んで、ステップS5でln-2=1であると判断て、
ステップS5からステップS8に進む。ステップS8では、▲
an-2 04▼=1,gn-2=0であるので、ステップS10に進む
と判断する。ステップS10では、ランの種類を表わすデ
ータgn-2=0と、ランの長さln-2=1を記録する。その
後、ステップS11,S12,S14を経て、ステップS15に進む。
ステップS15でk=n−1であるので、ステップS4に戻
ると判断する。ステップS4ではAij≠0,2n−1であるの
で、ステップS4からステップS5に進み、ln-1=1である
ので、さらに、ステップS8に進む。
プS16からステップS17に進んで、C03=1、C02=3であ
るので、ステップS19に進んで、データC02=3とランレ
ングスln=3を記録する。次いで、ステップS20に進ん
でln=1をセットし、ステップS21でj=3,j=3<dx=
9であるので、ステップS21からステップS23に進み、j
=j+1,j=4とし、ステップS24に進む。ステップS24
では、j=4<dx=9であるので、ステップS3に戻ると
判断する。その後に、ステップS3で、k=1とセット
し、ステップS4を経てステップS5に進み、ステップS5
で、l1=1であるので、ステップS5からステップS8に進
むと判断する。ステップS8では、ak=ij=gkであるか否
かを判断する。a1 04=1で、既に格納されているg1=0
であるので、ステップS8からステップS10に進んで、ラ
ンの種類を表わすデータg1=0,ランの長さl1=1を記録
する。その後、ステップS11に進んで、l1=1をセット
し、ステップS12でj=4<dx=9であるので、ステッ
プS12からステップS14に進み、k=k+1、つまり、k
=2とし、ステップS15に進んで、k=2<nであるの
で、ステップS15からステップS4に戻る。このステップS
4,S5,S8,S10,S11,S12,(またはS4,S5,S8,S9,S12)S14,S
15をk=2,3,...,(n−3)について、繰り返す。そし
て、ステップS4で、A04≠0,2n−1であるので、ステッ
プS5に進んで、ステップS5でln-2=1であると判断て、
ステップS5からステップS8に進む。ステップS8では、▲
an-2 04▼=1,gn-2=0であるので、ステップS10に進む
と判断する。ステップS10では、ランの種類を表わすデ
ータgn-2=0と、ランの長さln-2=1を記録する。その
後、ステップS11,S12,S14を経て、ステップS15に進む。
ステップS15でk=n−1であるので、ステップS4に戻
ると判断する。ステップS4ではAij≠0,2n−1であるの
で、ステップS4からステップS5に進み、ln-1=1である
ので、さらに、ステップS8に進む。
ステップS8では、▲an-1 04▼=1,gn-1=1であるの
で、ステップS9に進むと判断する。ステップS9でln-1=
2とセットし、ステップS12,14を経て、ステップS15に
進む。ステップS15ではk=nであるので、ステップS16
に進むと判断する。ステップS16では、ln=1であるの
で、ステップS17に進むと判断する。ステップS17では、
C04=0,C03=1であるので、ステップS19に進むと判断
し、ステップS19でランの種類を表わすデータC03=1と
ランの長さln=1を記録する。次いで、ステップS20に
進んで、ln=1にセットし、さらにステップS21に進ん
で、j=4<dx=9であるので、ステップS23に進ん
で、j=5をセットし、ステップS24でj=5<dx=9
であるので、ステップS3に戻る。以下同様の各ステップ
を行なってランレングス符号化を行なう。
で、ステップS9に進むと判断する。ステップS9でln-1=
2とセットし、ステップS12,14を経て、ステップS15に
進む。ステップS15ではk=nであるので、ステップS16
に進むと判断する。ステップS16では、ln=1であるの
で、ステップS17に進むと判断する。ステップS17では、
C04=0,C03=1であるので、ステップS19に進むと判断
し、ステップS19でランの種類を表わすデータC03=1と
ランの長さln=1を記録する。次いで、ステップS20に
進んで、ln=1にセットし、さらにステップS21に進ん
で、j=4<dx=9であるので、ステップS23に進ん
で、j=5をセットし、ステップS24でj=5<dx=9
であるので、ステップS3に戻る。以下同様の各ステップ
を行なってランレングス符号化を行なう。
なお、既述のように想定プレーン1〜(n−1)の符号
化でのデータ格納において、ランの種類gkを記録するの
は、各行の最初のデータ格納のときのみである。例えば
上の例で、j=7,k=n−2の時、データgn-2=1,gn-2
=1のうち、ln-2だけを記録する。
化でのデータ格納において、ランの種類gkを記録するの
は、各行の最初のデータ格納のときのみである。例えば
上の例で、j=7,k=n−2の時、データgn-2=1,gn-2
=1のうち、ln-2だけを記録する。
こうして作成された圧縮データの復号化は、第10図
(b)に示すように、MH符号読み取り回路31,ランレン
グス復号回路32,想定プレーン復元回路33,nビット画像
復元回路34および制御回路35を備える復号化装置30によ
って行なわれる。そして、圧縮データを復号化する手順
は次のとおりである。
(b)に示すように、MH符号読み取り回路31,ランレン
グス復号回路32,想定プレーン復元回路33,nビット画像
復元回路34および制御回路35を備える復号化装置30によ
って行なわれる。そして、圧縮データを復号化する手順
は次のとおりである。
まず、圧縮データを読み取りながらMH符号をランレング
スに再変換し、各想定プレーンを復元していく。想定プ
レーンnについては圧縮データからランの種類とMH符号
を読み取りつつ4種類のランを符号化していけばよい。
想定プレーンk(k=1,・・・,n−1)においては、さ
きに復元した想定プレーンnを参照し、想定プレーンn
で値が2または3である位置に対応する画素を「空白」
にする。そして「空白」でない画素だけに注目して、各
想定プレーンごとに2種類のランを復号していく。この
場合、行の先頭データについては圧縮データからランの
種類とMH符号を読み取り、先頭以外のデータについては
MH符号だけを読み取って復号すればよい。
スに再変換し、各想定プレーンを復元していく。想定プ
レーンnについては圧縮データからランの種類とMH符号
を読み取りつつ4種類のランを符号化していけばよい。
想定プレーンk(k=1,・・・,n−1)においては、さ
きに復元した想定プレーンnを参照し、想定プレーンn
で値が2または3である位置に対応する画素を「空白」
にする。そして「空白」でない画素だけに注目して、各
想定プレーンごとに2種類のランを復号していく。この
場合、行の先頭データについては圧縮データからランの
種類とMH符号を読み取り、先頭以外のデータについては
MH符号だけを読み取って復号すればよい。
こうして復元されたn枚の想定プレーンからもとのnビ
ット画像を再生して復号化の手順を終える。ここでも、
n枚の想定プレーンを実際に復元する必要はなく、各想
定プレーンランレングスデータから直接nビットのデー
タを復元することは容易にできる。第9図に復号化のフ
ローチャートを示す。ただし、i,j,Aij,akij,bij,cij,d
x,dy,gnは第8図と同様の意味である。
ット画像を再生して復号化の手順を終える。ここでも、
n枚の想定プレーンを実際に復元する必要はなく、各想
定プレーンランレングスデータから直接nビットのデー
タを復元することは容易にできる。第9図に復号化のフ
ローチャートを示す。ただし、i,j,Aij,akij,bij,cij,d
x,dy,gnは第8図と同様の意味である。
第9図のフローチャートを第6図のデータを復元すると
して以下に説明する。
して以下に説明する。
まず、ステップS1,S2で初期化し、ステップS3を経て、
ステップS4に進んで、gn=C00=3,ln=3を復元する。
そして、ステップS5に進んで、ステップS5でgn=3であ
るので、ステップS6に進み、Aij=(gn−2)(2n−
1)=2n−1としてA00=1を再生する。その後、ステ
ップS7,S8を経て、ステップS9に進み、ln=2であるの
で、ステップS6に戻ると判断する。その後、ステップS
6,S7,S8を経てステップS9に進んで、ln=1であるの
で、ステップS6に戻ると判断する。その後、ステップS
6,S7,S8を経て、ステップS9に進み、ステップS9でln=
0であるので、ステップS10に進むと判断する。ステッ
プS10ではj=3<dx=9であるので、ステップS3に戻
ると判断する。ステップS3では、ln=0であるので、ス
テップS4に進むと判断する。ステップS4では、圧縮デー
タgn=C03=1,ln=1を再生し、ステップS5に進む。ス
テップS5では、gn=1であるので、ステップS11に進む
と判断し、ステップS11でk=1とセットする。ステッ
プS12では、l1=0であるのでステップS13に進むと判断
する。ステップS13では、圧縮データよりa1 03=0,l1=
1を再生し、ステップS14を経て、ステップS15に進む。
ステップS15では、k=2であるので、ステップS12に戻
り、l2=0であるので、ステップS13に進む。このステ
ップS14,S12,S15,S13を繰り返してa2 03,l2;a3 03,
l3;...;▲an-2 03▼=0,ln-2=1;▲an-1 03▼=1,ln-1
=2を再生する。その後、ステップS14を経て、ステッ
プS15に進み、k=nであるので、ステップS16に進む。
ステップS16では画素A03を次の式で再生する。
ステップS4に進んで、gn=C00=3,ln=3を復元する。
そして、ステップS5に進んで、ステップS5でgn=3であ
るので、ステップS6に進み、Aij=(gn−2)(2n−
1)=2n−1としてA00=1を再生する。その後、ステ
ップS7,S8を経て、ステップS9に進み、ln=2であるの
で、ステップS6に戻ると判断する。その後、ステップS
6,S7,S8を経てステップS9に進んで、ln=1であるの
で、ステップS6に戻ると判断する。その後、ステップS
6,S7,S8を経て、ステップS9に進み、ステップS9でln=
0であるので、ステップS10に進むと判断する。ステッ
プS10ではj=3<dx=9であるので、ステップS3に戻
ると判断する。ステップS3では、ln=0であるので、ス
テップS4に進むと判断する。ステップS4では、圧縮デー
タgn=C03=1,ln=1を再生し、ステップS5に進む。ス
テップS5では、gn=1であるので、ステップS11に進む
と判断し、ステップS11でk=1とセットする。ステッ
プS12では、l1=0であるのでステップS13に進むと判断
する。ステップS13では、圧縮データよりa1 03=0,l1=
1を再生し、ステップS14を経て、ステップS15に進む。
ステップS15では、k=2であるので、ステップS12に戻
り、l2=0であるので、ステップS13に進む。このステ
ップS14,S12,S15,S13を繰り返してa2 03,l2;a3 03,
l3;...;▲an-2 03▼=0,ln-2=1;▲an-1 03▼=1,ln-1
=2を再生する。その後、ステップS14を経て、ステッ
プS15に進み、k=nであるので、ステップS16に進む。
ステップS16では画素A03を次の式で再生する。
その後、ステップS17,S18を経てステップS10に進む。ス
テップS10では、j=4<dx=9であるので、ステップS
3に進むと判断する。ステップS3では、ln=0であるの
で、ステップS4に進むと判断する。ステップS4では、圧
縮データより、gn=C04=0,ln=1を再生し、ステップS
5に進む。ステップS5ではgn=0であるので、ステップS
11に進み、k=1とセットし、さらにステップS12に進
んで、l1=0であるのでステップS13に進む。ステップS
13では、前回の値a1 03=0からa1 04=1を再生し、l1=
2を再生する。その後、ステップS14,S15,S12,S13を繰
り返して、a2 04,l2;a3 04,l3;...,▲an-3 04▼,ln-3;▲
an-2 04▼=1,ln-2=1を再生する。その後、ステップS
14,S15を経てステップS12に進み、ステップS12でln-1=
1であるので、ステップS14に進むと判断し、ステップS
1でk=k+1,k=nとセットし、ステップS15でk=n
であるのでステップS16に進んで、画素A04を次の式で再
生する。
テップS10では、j=4<dx=9であるので、ステップS
3に進むと判断する。ステップS3では、ln=0であるの
で、ステップS4に進むと判断する。ステップS4では、圧
縮データより、gn=C04=0,ln=1を再生し、ステップS
5に進む。ステップS5ではgn=0であるので、ステップS
11に進み、k=1とセットし、さらにステップS12に進
んで、l1=0であるのでステップS13に進む。ステップS
13では、前回の値a1 03=0からa1 04=1を再生し、l1=
2を再生する。その後、ステップS14,S15,S12,S13を繰
り返して、a2 04,l2;a3 04,l3;...,▲an-3 04▼,ln-3;▲
an-2 04▼=1,ln-2=1を再生する。その後、ステップS
14,S15を経てステップS12に進み、ステップS12でln-1=
1であるので、ステップS14に進むと判断し、ステップS
1でk=k+1,k=nとセットし、ステップS15でk=n
であるのでステップS16に進んで、画素A04を次の式で再
生する。
その後、ステップS17,S18を経てステップS10に進む。ス
テップS10ではj=5であるので、ステップS3に戻ると
判断する。以下同様に、各ステップの処理を行なって画
素データを再生する。
テップS10ではj=5であるので、ステップS3に戻ると
判断する。以下同様に、各ステップの処理を行なって画
素データを再生する。
次に、第二例としてMR符号化の適用について簡単に述べ
る。まず、第一例と同様にnビット画像をn枚の想定プ
レーンに分ける。想定プレーン1から想定プレーンn−
1については第一例と同じくランレングスを数え、MH符
号によって符号化する。想定プレーンnについてはMR符
号化を用いる。すなわち、平面を横に走査していく時、
走査中の画素値と同じ値が一つ上の行のどこにあるか
を、方向(右か左か)と距離(何画素離れているか)を
用いて表し、これらを符号化する。ただし、参照画素が
離れすぎている時は、ランレングス符号化に切り替え
る。
る。まず、第一例と同様にnビット画像をn枚の想定プ
レーンに分ける。想定プレーン1から想定プレーンn−
1については第一例と同じくランレングスを数え、MH符
号によって符号化する。想定プレーンnについてはMR符
号化を用いる。すなわち、平面を横に走査していく時、
走査中の画素値と同じ値が一つ上の行のどこにあるか
を、方向(右か左か)と距離(何画素離れているか)を
用いて表し、これらを符号化する。ただし、参照画素が
離れすぎている時は、ランレングス符号化に切り替え
る。
次に、第三例として、予測符号化を取り入れたものにつ
いて述べる。
いて述べる。
まず、第一例と同様にakijとbijを定義し、次のような
2枚の平面(想定プレーン1と想定プレーン2)を想定
する。想定プレーン1はa1ijとbijを用いて作る。想定
プレーン2の(i,j)画素の画素値は で定義する。ただし、値の定義できない画素については
「空白」とする。こうして0〜2n-1−1階調の画素と
「空白」から成る想定プレーン2ができる。
2枚の平面(想定プレーン1と想定プレーン2)を想定
する。想定プレーン1はa1ijとbijを用いて作る。想定
プレーン2の(i,j)画素の画素値は で定義する。ただし、値の定義できない画素については
「空白」とする。こうして0〜2n-1−1階調の画素と
「空白」から成る想定プレーン2ができる。
想定プレーン1は第一例に示したランレングス符号化
か、あるいは第二例に示したMR符号化を用いて符号化す
る。想定プレーン2については次に説明する予測符号化
を用いて符号化する。まず、「空白」部分を無視しなが
ら想定プレーンを走査し、「空白」以外の画素の画素値
と、その予測値との差を記録する。予測値をうまく定め
れば、効率の良い符号化ができる。画素値の予測に際し
ては文字画像の境界付近の画素値の変化の性質を利用す
る。すなわち、白地部と文字部にはさまれたエッジ部の
画素値は単調に変化するとしてエッジ部の画素値を予測
し、この値を2進数表示して下位一桁を取り除いた値を
プレーン2の画素値の予測値とする。
か、あるいは第二例に示したMR符号化を用いて符号化す
る。想定プレーン2については次に説明する予測符号化
を用いて符号化する。まず、「空白」部分を無視しなが
ら想定プレーンを走査し、「空白」以外の画素の画素値
と、その予測値との差を記録する。予測値をうまく定め
れば、効率の良い符号化ができる。画素値の予測に際し
ては文字画像の境界付近の画素値の変化の性質を利用す
る。すなわち、白地部と文字部にはさまれたエッジ部の
画素値は単調に変化するとしてエッジ部の画素値を予測
し、この値を2進数表示して下位一桁を取り除いた値を
プレーン2の画素値の予測値とする。
上記第一例を512×512画素のn(=3)ビット画像に適
用して符号化及び復号化を行った。MH符号は20枚のサン
プル画像よりランレングスをとり、そのヒストグラムよ
り作成した。その際、プレーンnの値2,3のランLにつ
いてはメークアップコード(make up Code)Mと、ター
ミネーションコード(termination code)Tを64進法
(L=64M+T)により定義する。その他のランについ
てはラン長の短いものが多いため、62進法ではハフマン
符号のビット長が32以上になる場合があり、扱いにくい
ので32進法(L=32M+T)によってM,Tを定義する。た
だし、このとりかたは横幅512画素の画像を与えた場合
のものであり、より幅の長いものを扱う場合には注意を
要する。横幅512画素の時のMH符号表の構造を第11図に
示す。
用して符号化及び復号化を行った。MH符号は20枚のサン
プル画像よりランレングスをとり、そのヒストグラムよ
り作成した。その際、プレーンnの値2,3のランLにつ
いてはメークアップコード(make up Code)Mと、ター
ミネーションコード(termination code)Tを64進法
(L=64M+T)により定義する。その他のランについ
てはラン長の短いものが多いため、62進法ではハフマン
符号のビット長が32以上になる場合があり、扱いにくい
ので32進法(L=32M+T)によってM,Tを定義する。た
だし、このとりかたは横幅512画素の画像を与えた場合
のものであり、より幅の長いものを扱う場合には注意を
要する。横幅512画素の時のMH符号表の構造を第11図に
示す。
20枚のサンプル画像について符号化を行い、次の式で定
義される圧縮率を計算した。
義される圧縮率を計算した。
その結果、圧縮率の平均は9.3%となった。これに対
し、ビット平面を独立に扱う従来方式で同じ画像を符号
化した時の圧縮率の平均は11.7%であった。
し、ビット平面を独立に扱う従来方式で同じ画像を符号
化した時の圧縮率の平均は11.7%であった。
最後に、本装置は多値文字画像だけでなく、部品画像の
符号化にも有効であることを付け加えておく。ここで部
品画像とは2種類以上の画像を合成する際、ある画像の
ある場所にはめ込まれる部品的な画像のことをさす。は
め込まれた部品画像が背景の画像とマッチするために
は、部品画像の周辺に部品画像自体の色Aと背景画像の
色Bとの中間色が必要である。そのために、部品画像の
画像値の下位nビットにAとBの混合比を示す領域情報
と呼ばれる部分が存在する。例えば、この混合比を A:B=2n−1−C:C とした時のCで領域情報を表すことにする。この領域情
報部分を取り出して一枚の平面を作ると、その画素値は
部品画像内部で0、背景部で2n−1、部品画像周辺部で
1〜2n−2となり、本装置で扱ってきた多値文字画像と
同じ性質を持っていることがわかる。従って、部品画像
の領域情報部の符号化に本装置を用いることは非常に有
効である。
符号化にも有効であることを付け加えておく。ここで部
品画像とは2種類以上の画像を合成する際、ある画像の
ある場所にはめ込まれる部品的な画像のことをさす。は
め込まれた部品画像が背景の画像とマッチするために
は、部品画像の周辺に部品画像自体の色Aと背景画像の
色Bとの中間色が必要である。そのために、部品画像の
画像値の下位nビットにAとBの混合比を示す領域情報
と呼ばれる部分が存在する。例えば、この混合比を A:B=2n−1−C:C とした時のCで領域情報を表すことにする。この領域情
報部分を取り出して一枚の平面を作ると、その画素値は
部品画像内部で0、背景部で2n−1、部品画像周辺部で
1〜2n−2となり、本装置で扱ってきた多値文字画像と
同じ性質を持っていることがわかる。従って、部品画像
の領域情報部の符号化に本装置を用いることは非常に有
効である。
以上の例では説明の便宜上2n階調の多値画像を扱った
が、一般にはp階調の多値画像について上記の各実施例
が適用できる。その場合は2nの代わりにpを用い、nの
代わにlog2p以上の最小の整数を用いればよい。
が、一般にはp階調の多値画像について上記の各実施例
が適用できる。その場合は2nの代わりにpを用い、nの
代わにlog2p以上の最小の整数を用いればよい。
<発明の効果> 以上より明らかなように、この発明の多値画像の高能率
圧縮符号化装置によれば、ある閾値以上の画素値を持つ
画素についての画素値の代表値と、上記閾値より小さい
画素値を持つ画素についての画素値の代表値とを求め、
この二つの代表値間をp個に分割し、対象を表す部分の
画素値に(p−1)または0の一方、背景を表す部分の
画素値に0または(p−1)の他方、対象と背景の境界
部分を表す部分の画素値に1〜(p−2)が夫々割り当
てられるように量子化を行うので、画素値の量子化レベ
ルを適切にスケールして、画素値の分布を常に両端の量
子化レベルのものが多くなるようにでき、かつ濃度レベ
ルのダイナミックレンジを有効に利用できる。
圧縮符号化装置によれば、ある閾値以上の画素値を持つ
画素についての画素値の代表値と、上記閾値より小さい
画素値を持つ画素についての画素値の代表値とを求め、
この二つの代表値間をp個に分割し、対象を表す部分の
画素値に(p−1)または0の一方、背景を表す部分の
画素値に0または(p−1)の他方、対象と背景の境界
部分を表す部分の画素値に1〜(p−2)が夫々割り当
てられるように量子化を行うので、画素値の量子化レベ
ルを適切にスケールして、画素値の分布を常に両端の量
子化レベルのものが多くなるようにでき、かつ濃度レベ
ルのダイナミックレンジを有効に利用できる。
また、この発明の多値画像の高能率圧縮符号化装置によ
れば、数が多い最高階調値と最低階調値の画素について
はラベル符号化を行ない、数の少ない中間階調値の画素
については、ビット毎に符号化するので、多値文字画像
等を高能率に圧縮符号化できる。
れば、数が多い最高階調値と最低階調値の画素について
はラベル符号化を行ない、数の少ない中間階調値の画素
については、ビット毎に符号化するので、多値文字画像
等を高能率に圧縮符号化できる。
第1図はこの発明の多値画像の高能率圧縮符号化装置の
1実施例における画像をn個の平面に分離する様子を示
した図である。 第2図は従来の符号化方式における画像のビット平面へ
の分離を示す図である。 第3図は従来方式で作成された文字画像のヒストグラム
の様子を示す図である。 第4図はこの発明の1実施例における量子化レベルと多
値画像の画素値の関係を示す図である。 第5図は上記実施例におけるp階調画像データ作成装置
のブロック図である。 第6図は上記実施例におけるランレングスの数え方を説
明する図である。 第7図は上記実施例における圧縮符号のデータフォーマ
ットを示す図である。 第8図は上記実施例における符号化のフローチャートで
ある。 第9図は上記実施例における復号化のフローチャートで
ある。 第10図(a),(b)は夫々上記実施例における符合化
装置、復号化装置のブロック図である。 第11図は上記実施例で、横幅512画素の画像を扱った場
合のMH符号表の構造を示す図である。
1実施例における画像をn個の平面に分離する様子を示
した図である。 第2図は従来の符号化方式における画像のビット平面へ
の分離を示す図である。 第3図は従来方式で作成された文字画像のヒストグラム
の様子を示す図である。 第4図はこの発明の1実施例における量子化レベルと多
値画像の画素値の関係を示す図である。 第5図は上記実施例におけるp階調画像データ作成装置
のブロック図である。 第6図は上記実施例におけるランレングスの数え方を説
明する図である。 第7図は上記実施例における圧縮符号のデータフォーマ
ットを示す図である。 第8図は上記実施例における符号化のフローチャートで
ある。 第9図は上記実施例における復号化のフローチャートで
ある。 第10図(a),(b)は夫々上記実施例における符合化
装置、復号化装置のブロック図である。 第11図は上記実施例で、横幅512画素の画像を扱った場
合のMH符号表の構造を示す図である。
Claims (1)
- 【請求項1】ある閾値以上の画素値を持つ画素について
の画素値の代表値と、上記閾値より小さい画素値を持つ
画素についての画素値の代表値とを求める代表値算出手
段と、 上記二つの代表値間をp(pは自然数)個に分割し、対
象そのものを表す部分の画素値に最高階調値(p−1)
または最低階調値0の一方、背景を表す部分の画素値に
最高階調値(p−1)または最低階調値0の他方、上記
対象と背景の境界部分を表す部分の画素値に中間階調値
1〜(p−2)が夫々割り当てられるように量子化を行
なってn(nは自然数)ビットで表されるp階調画像デ
ータを作成するp階調画像データ作成手段と、 上記nビットのp階調画像データを画素の位置に対応づ
けて表すn枚の想定プレーンを、一枚の特定の想定プレ
ーンにおいては、最高階調値を持つ画素に対応する位置
と最低階調値を持つ画素に対応する位置に異なるラベル
を付与すると共に、中間階調値を持つ画素に対応する位
置にその中間階調値の最上位ビットに対応する1または
0を付与して、計4種のデータを付与する一方、他の
(n−1)枚の想定プレーンにおいては、上記最高階調
値および上記最低階調値を持つ各画素に対応する位置に
データを付与しないで無視されるように空白にすると共
に、中間階調値を持つ画素に対応する各位置にその中間
階調値に対応する1または0を付与して、計2種のデー
タを付与するようにして、作成する想定プレーン作成手
段と、 上記特定の想定プレーンにおける上記4種のデータをそ
れらのデータの位置と種類が特定できるように符号化す
る一方、上記他の(n−1)枚の想定プレーンにおける
中間階調値の画素の位置に付与された0と1からなる2
種のデータのみをそれらのデータの位置と種類が特定で
きるように符号化する符号化手段とを備えたことを特徴
とする多値画像の高能率圧縮符号化装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1109934A JPH0779427B2 (ja) | 1989-04-28 | 1989-04-28 | 多値画像の高能率圧縮符号化装置 |
| US07/431,828 US5056154A (en) | 1988-11-07 | 1989-11-06 | Text image data compression system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1109934A JPH0779427B2 (ja) | 1989-04-28 | 1989-04-28 | 多値画像の高能率圧縮符号化装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02288669A JPH02288669A (ja) | 1990-11-28 |
| JPH0779427B2 true JPH0779427B2 (ja) | 1995-08-23 |
Family
ID=14522815
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1109934A Expired - Lifetime JPH0779427B2 (ja) | 1988-11-07 | 1989-04-28 | 多値画像の高能率圧縮符号化装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0779427B2 (ja) |
-
1989
- 1989-04-28 JP JP1109934A patent/JPH0779427B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02288669A (ja) | 1990-11-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3978478B2 (ja) | 推定画素値により固定速度のブロック単位の画像圧縮を行うための装置及び方法 | |
| US5162923A (en) | Method and apparatus for encoding frequency components of image information | |
| JP2527351B2 (ja) | 画像デ―タの圧縮方法 | |
| CN1266843C (zh) | 编码方法及系统以及译码方法及系统 | |
| JPS61161871A (ja) | デジタル画像処理プロセスにおいてデイザリングされた像の画素を表わす2進ビツトのデ−タ圧縮を行なうための装置 | |
| JP2001136526A (ja) | 画像処理方法及びその装置及び記憶媒体 | |
| US5245679A (en) | Data field image compression | |
| US5442459A (en) | Process for encoding a half tone image considering similarity between blocks | |
| US5838831A (en) | Compression of image data with retaining cost data for each compressed image block | |
| JPH08205160A (ja) | 画像信号のアダマール変換符号化・復号化方法およびその装置 | |
| Gertsiy | Research on graphic data formats for compact representation and comparison of images | |
| JP3213012B2 (ja) | 画像データのコード化及び復号化方法 | |
| JPH06164939A (ja) | 画像信号の符号化装置 | |
| KR100412176B1 (ko) | 문자와 이미지가 포함된 문서의 압축, 복원 시스템 및방법 | |
| JPH04332261A (ja) | 画像再生装置 | |
| JPH0779427B2 (ja) | 多値画像の高能率圧縮符号化装置 | |
| US7450769B2 (en) | Image processing method for facilitating data transmission | |
| JP2862022B2 (ja) | 画像符号化方式 | |
| JP2002044662A (ja) | データ符号化装置及び符号化方法並びにデータ復号化装置及び復号化方法 | |
| JP2801182B2 (ja) | 画像符号化方法 | |
| JPH08298589A (ja) | 写真・文書混在画像の画像処理装置 | |
| JP2527352B2 (ja) | ベクトル量子化による画像デ―タの圧縮装置 | |
| JP2001060875A (ja) | 埋め込み装置、デジタルカメラ及び記録媒体 | |
| JP2001103315A (ja) | 画像符号化方法および画像符号化装置 | |
| JPH11136519A (ja) | 画像処理装置 |