JPH1132206A - 画像処理装置 - Google Patents
画像処理装置Info
- Publication number
- JPH1132206A JPH1132206A JP9185315A JP18531597A JPH1132206A JP H1132206 A JPH1132206 A JP H1132206A JP 9185315 A JP9185315 A JP 9185315A JP 18531597 A JP18531597 A JP 18531597A JP H1132206 A JPH1132206 A JP H1132206A
- Authority
- JP
- Japan
- Prior art keywords
- image
- line
- pixel
- pixel value
- character
- 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
Links
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 238000007906 compression Methods 0.000 abstract description 11
- 230000006835 compression Effects 0.000 abstract description 11
- 238000000926 separation method Methods 0.000 abstract description 11
- 230000006866 deterioration Effects 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 60
- 238000010586 diagram Methods 0.000 description 18
- 241000519995 Stachys sylvatica Species 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000013144 data compression Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000002427 irreversible effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Landscapes
- Editing Of Facsimile Originals (AREA)
- Facsimile Image Signal Circuits (AREA)
- Processing Or Creating Images (AREA)
Abstract
(57)【要約】
【課題】 合成時の白抜けや画像品質の劣化を抑え、ま
た、分離圧縮時の圧縮効率を高めた画像処理装置を提供
する。 【解決手段】 画像入力部1に入力された画像を、画像
分離部2において文字または線画の形状を示す画像S
と、文字または線画の色情報を示す画像Pと、入力画像
から文字または線画のデータを削除した画像Iに分離す
る。画像Iは画像記憶部3に一時保持される。画像I
は、文字または線画が存在していた部分が白抜けとなっ
ている。画像処理部4において、画像Iの白抜け領域の
画素について、白抜け領域の周辺の画素値を参照して画
素値を埋め込む処理を行なう。これによって画像Iの文
字や線画が存在していた部分も平坦な画像となり、文字
・線画との合成時に白抜けは発生せず、圧縮効率を高め
ることができる。
た、分離圧縮時の圧縮効率を高めた画像処理装置を提供
する。 【解決手段】 画像入力部1に入力された画像を、画像
分離部2において文字または線画の形状を示す画像S
と、文字または線画の色情報を示す画像Pと、入力画像
から文字または線画のデータを削除した画像Iに分離す
る。画像Iは画像記憶部3に一時保持される。画像I
は、文字または線画が存在していた部分が白抜けとなっ
ている。画像処理部4において、画像Iの白抜け領域の
画素について、白抜け領域の周辺の画素値を参照して画
素値を埋め込む処理を行なう。これによって画像Iの文
字や線画が存在していた部分も平坦な画像となり、文字
・線画との合成時に白抜けは発生せず、圧縮効率を高め
ることができる。
Description
【0001】
【発明の属する技術分野】本発明は、入力された画像情
報を複数の画像情報に分離して処理を行なう画像処理装
置に関するものである。
報を複数の画像情報に分離して処理を行なう画像処理装
置に関するものである。
【0002】
【従来の技術】入力された画像を保存や転送する場合に
は、なるべくデータ量を減少させることが望まれる。デ
ータ量を削減するために、入力画像を例えば文字や線画
情報と、それ以外の1以上の画像情報に分離し、それぞ
れ最適なデータ圧縮処理が施される場合がある。また、
データ圧縮処理前に、分離された画像情報毎に異なる解
像度へ画像を変換し、データ量をさらに削減する場合も
ある。
は、なるべくデータ量を減少させることが望まれる。デ
ータ量を削減するために、入力画像を例えば文字や線画
情報と、それ以外の1以上の画像情報に分離し、それぞ
れ最適なデータ圧縮処理が施される場合がある。また、
データ圧縮処理前に、分離された画像情報毎に異なる解
像度へ画像を変換し、データ量をさらに削減する場合も
ある。
【0003】特開平4−105178号公報では、入力
画像から文字領域と図表領域とイメージ領域を分離抽出
し、各領域に含まれる情報に適するデータに変換後、再
構築する構成が開示されている。
画像から文字領域と図表領域とイメージ領域を分離抽出
し、各領域に含まれる情報に適するデータに変換後、再
構築する構成が開示されている。
【0004】図16は、従来の画像処理装置における画
像分離処理の具体例の説明図である。図16(A)は入
力画像であり、ハッチングを施して示した部分はイメー
ジであり、イメージの上に文字「ABC」が重なってい
る。このような入力画像に対して画像分離処理を行なう
と、図16(B)に示すような文字領域を表わす画像
と、図16(B)に示すようなイメージ領域を表わす画
像に分離される。上述の文献では、分離された文字領域
について文字認識処理を行ない、データ量を削減してい
る。
像分離処理の具体例の説明図である。図16(A)は入
力画像であり、ハッチングを施して示した部分はイメー
ジであり、イメージの上に文字「ABC」が重なってい
る。このような入力画像に対して画像分離処理を行なう
と、図16(B)に示すような文字領域を表わす画像
と、図16(B)に示すようなイメージ領域を表わす画
像に分離される。上述の文献では、分離された文字領域
について文字認識処理を行ない、データ量を削減してい
る。
【0005】一般にイメージ部分の画像は、データ量が
多い。例えば600dpiのスキャナーからA4サイズ
の画像をRGB各色8ビットで読み取った場合のデータ
量は、約108Mバイトになってしまう。現状では一般
に文字や線画部分の解像度は600dpiまたはこれ以
上の高解像度が必要とされているが、イメージ部分の解
像度は文字や線画部分と比べて低解像度でも差し支えな
い。そのため、イメージ部分の解像度を文字部分よりも
下げたり、JPEGベースライン方式に代表されるよう
な圧縮手法を用いてデータ量を削減し、データの保持や
通信が行なわれている。
多い。例えば600dpiのスキャナーからA4サイズ
の画像をRGB各色8ビットで読み取った場合のデータ
量は、約108Mバイトになってしまう。現状では一般
に文字や線画部分の解像度は600dpiまたはこれ以
上の高解像度が必要とされているが、イメージ部分の解
像度は文字や線画部分と比べて低解像度でも差し支えな
い。そのため、イメージ部分の解像度を文字部分よりも
下げたり、JPEGベースライン方式に代表されるよう
な圧縮手法を用いてデータ量を削減し、データの保持や
通信が行なわれている。
【0006】例えば図16(A)に示す入力画像からイ
メージ部分のみピックアップした図16(C)に示す画
像を低解像度で保持する場合を考える。出力する際には
低解像度で保持している画像を元の解像度へ解像度変換
し、図16(B)に示す文字部画像と合成する。このと
き、イメージ部分を元の解像度へ変換した際に図16
(C)に示す画像とエッジ部分で相違することがあり、
文字部分とイメージ部分の境界部に白抜けが発生する可
能性がある。
メージ部分のみピックアップした図16(C)に示す画
像を低解像度で保持する場合を考える。出力する際には
低解像度で保持している画像を元の解像度へ解像度変換
し、図16(B)に示す文字部画像と合成する。このと
き、イメージ部分を元の解像度へ変換した際に図16
(C)に示す画像とエッジ部分で相違することがあり、
文字部分とイメージ部分の境界部に白抜けが発生する可
能性がある。
【0007】また、図16(C)に示すように、イメー
ジ領域のみを分離した画像上では、文字が存在していた
領域が白抜けする。特にイメージ上に細かい文字が多く
書かれている場合には、イメージ領域のみ分離した画像
上で白抜けが頻繁に存在し、画像中の高周波成分が大き
くなる。このような画像を、JPEGベースライン方式
等の離散コサイン変換を用いた可変長かつ非可逆データ
圧縮方式を用いて圧縮すると、圧縮率の低下や、圧縮伸
長後の画像品質の劣化するという問題もある。
ジ領域のみを分離した画像上では、文字が存在していた
領域が白抜けする。特にイメージ上に細かい文字が多く
書かれている場合には、イメージ領域のみ分離した画像
上で白抜けが頻繁に存在し、画像中の高周波成分が大き
くなる。このような画像を、JPEGベースライン方式
等の離散コサイン変換を用いた可変長かつ非可逆データ
圧縮方式を用いて圧縮すると、圧縮率の低下や、圧縮伸
長後の画像品質の劣化するという問題もある。
【0008】
【発明が解決しようとする課題】本発明は、上述した事
情に鑑みてなされたもので、合成時の白抜けや画像品質
の劣化を抑え、また、分離圧縮時の圧縮効率を高めた画
像処理装置を提供することを目的とするものである。
情に鑑みてなされたもので、合成時の白抜けや画像品質
の劣化を抑え、また、分離圧縮時の圧縮効率を高めた画
像処理装置を提供することを目的とするものである。
【0009】
【課題を解決するための手段】本発明は、入力された画
像情報を文字または線画情報からなる第1の画像情報
と、文字または線画情報以外の情報からなる第2の画像
情報に分離し、分離された第2の画像情報については、
第1の画像情報として分離された領域の一部または全部
に対して、当該領域の周囲の画素を参照して画像情報を
埋め込む。これによって第2の画像情報を低解像度に変
換し、再び元の解像度に戻して第1の画像情報と合成し
ても、埋め込まれた画像情報によって白抜けを起こすこ
とはない。また、イメージ部分に文字や線画が存在して
いても、第2の画像情報では文字や線画の部分に周囲の
画素を参照して、例えば圧縮効率が高くなるように画像
情報を埋め込むことができる。そのため、文字や線画が
存在していた部分で第2の画像情報の圧縮効率が低下す
ることはなく、効率よく圧縮することができるととも
に、復元時の画像品質を維持することができる。
像情報を文字または線画情報からなる第1の画像情報
と、文字または線画情報以外の情報からなる第2の画像
情報に分離し、分離された第2の画像情報については、
第1の画像情報として分離された領域の一部または全部
に対して、当該領域の周囲の画素を参照して画像情報を
埋め込む。これによって第2の画像情報を低解像度に変
換し、再び元の解像度に戻して第1の画像情報と合成し
ても、埋め込まれた画像情報によって白抜けを起こすこ
とはない。また、イメージ部分に文字や線画が存在して
いても、第2の画像情報では文字や線画の部分に周囲の
画素を参照して、例えば圧縮効率が高くなるように画像
情報を埋め込むことができる。そのため、文字や線画が
存在していた部分で第2の画像情報の圧縮効率が低下す
ることはなく、効率よく圧縮することができるととも
に、復元時の画像品質を維持することができる。
【0010】
【発明の実施の形態】図1は、本発明の画像処理装置の
実施の一形態を示すブロック図である。図中、1は画像
入力部、2は画像分離部、3,5〜7は画像記憶部、4
は画像処理部である。画像入力部1は、イメージスキャ
ナ等の画像入力装置あるいはネットワークから画像を入
力するインターフェース部などによって構成され、入力
された画像を画像分離部2に渡す。入力された画像は、
カラー画像や濃淡画像などであってよい。
実施の一形態を示すブロック図である。図中、1は画像
入力部、2は画像分離部、3,5〜7は画像記憶部、4
は画像処理部である。画像入力部1は、イメージスキャ
ナ等の画像入力装置あるいはネットワークから画像を入
力するインターフェース部などによって構成され、入力
された画像を画像分離部2に渡す。入力された画像は、
カラー画像や濃淡画像などであってよい。
【0011】画像分離部2は、入力された画像を文字ま
たは線画の領域とそれ以外の領域に分離する。この例で
は、文字または線画の領域については、「文字または線
画の形状を示すデータ」と、「文字または線画の色情報
を示すパレットデータ」の2つのデータに分離する。ま
た文字または線画の領域以外の領域の画像とは、入力画
像から「文字または線画のデータを削除したデータ」で
ある。以下、「文字または線画の形状を示すデータ」を
画像S、「文字または線画の色情報を示すパレットデー
タ」を画像P、「文字または線画のデータを削除したデ
ータ」を画像Iと略す。分離した画像Iは画像記憶部3
へ、画像Sは画像記憶部6へ、画像Pは画像記憶部7へ
それぞれ格納する。この画像分離部2における画像の分
離方法は、例えば特開平3−126180号公報や、上
述の特開平4−105178号公報に記載されている方
式など、多くの方式が提案されており、どのような方式
を採用するかは任意である。
たは線画の領域とそれ以外の領域に分離する。この例で
は、文字または線画の領域については、「文字または線
画の形状を示すデータ」と、「文字または線画の色情報
を示すパレットデータ」の2つのデータに分離する。ま
た文字または線画の領域以外の領域の画像とは、入力画
像から「文字または線画のデータを削除したデータ」で
ある。以下、「文字または線画の形状を示すデータ」を
画像S、「文字または線画の色情報を示すパレットデー
タ」を画像P、「文字または線画のデータを削除したデ
ータ」を画像Iと略す。分離した画像Iは画像記憶部3
へ、画像Sは画像記憶部6へ、画像Pは画像記憶部7へ
それぞれ格納する。この画像分離部2における画像の分
離方法は、例えば特開平3−126180号公報や、上
述の特開平4−105178号公報に記載されている方
式など、多くの方式が提案されており、どのような方式
を採用するかは任意である。
【0012】画像処理部4は、画像記憶部3に格納され
ている画像I中の文字または線画として抽出されて抜け
ている部分に対し、画像記憶部6に格納されている画像
Sを用いて補正処理を施し、画像記憶部5に格納する。
ている画像I中の文字または線画として抽出されて抜け
ている部分に対し、画像記憶部6に格納されている画像
Sを用いて補正処理を施し、画像記憶部5に格納する。
【0013】画像記憶部5は、画像処理部4で補正処理
された画像Iが格納される。画像記憶部5,6,7に格
納されている補正処理された画像I、画像S、画像P
は、それぞれ出力される。出力された各画像は、例えば
解像度変換したり符号化して、データベースに格納した
り、あるいはネットワークなどによって通信したりする
ことができる。解像度変換や符号化の際には、それぞれ
の画像について、それぞれの画像の特性に応じた解像度
に変換したり、それぞれの画像の特性に応じた符号化方
式で符号化すればよい。一例としては、画像Iは解像度
を下げてJPEGベースライン方式等により符号化して
格納することができる。また、画像Sはそのままの解像
度で例えばJBIG方式などによって符号化して格納す
ることができる。画像Pは、非常に解像度を下げて、例
えばJPEGベースライン方式等によって符号化して格
納することができる。
された画像Iが格納される。画像記憶部5,6,7に格
納されている補正処理された画像I、画像S、画像P
は、それぞれ出力される。出力された各画像は、例えば
解像度変換したり符号化して、データベースに格納した
り、あるいはネットワークなどによって通信したりする
ことができる。解像度変換や符号化の際には、それぞれ
の画像について、それぞれの画像の特性に応じた解像度
に変換したり、それぞれの画像の特性に応じた符号化方
式で符号化すればよい。一例としては、画像Iは解像度
を下げてJPEGベースライン方式等により符号化して
格納することができる。また、画像Sはそのままの解像
度で例えばJBIG方式などによって符号化して格納す
ることができる。画像Pは、非常に解像度を下げて、例
えばJPEGベースライン方式等によって符号化して格
納することができる。
【0014】以下、画像処理部4における処理動作の例
について説明する。図2は、画像データの説明図であ
る。以下の説明では画像を2次元の座標で扱い、図2に
示すように画像の左上の座標を(i,j)=(1,
1)、右上の座標を(i,j)=(imax ,1)、左下
の座標を(i,j)=(1,jmax )、右下の座標を
(i,j)=(imax ,jmax )とする。
について説明する。図2は、画像データの説明図であ
る。以下の説明では画像を2次元の座標で扱い、図2に
示すように画像の左上の座標を(i,j)=(1,
1)、右上の座標を(i,j)=(imax ,1)、左下
の座標を(i,j)=(1,jmax )、右下の座標を
(i,j)=(imax ,jmax )とする。
【0015】また以下の説明において、S(i,j)は
画像Sの座標(i,j)に対応する画素値、I(i,
j)は画像Iの座標(i,j)に対応する画素値を表わ
すものとする。ここで、画像Sは1ビットのデータであ
り、各画素値S(i,j)=1は「文字または線画」で
あることを示し、S(i,j)=0は当該画素が「文字
または線画」以外であることを表わす。また、画像Iは
階調を持ったデータであり、カラーの場合には画素値I
(i,j)は例えば「赤(R)、青(B)、緑(G)」
のような複数の色に分色されたデータをそれぞれ多値デ
ータ(例えば8ビットで256階調)で表わされる。以
下の説明では一つの色成分について示すが、複数の色成
分に分色されている場合には、それぞれの色に対して同
じ演算を施せばよい。
画像Sの座標(i,j)に対応する画素値、I(i,
j)は画像Iの座標(i,j)に対応する画素値を表わ
すものとする。ここで、画像Sは1ビットのデータであ
り、各画素値S(i,j)=1は「文字または線画」で
あることを示し、S(i,j)=0は当該画素が「文字
または線画」以外であることを表わす。また、画像Iは
階調を持ったデータであり、カラーの場合には画素値I
(i,j)は例えば「赤(R)、青(B)、緑(G)」
のような複数の色に分色されたデータをそれぞれ多値デ
ータ(例えば8ビットで256階調)で表わされる。以
下の説明では一つの色成分について示すが、複数の色成
分に分色されている場合には、それぞれの色に対して同
じ演算を施せばよい。
【0016】図3、図4は、画像処理部の第1の動作例
を示すフローチャートである。ここでは、画像処理部4
は、画像I中の文字または線画として抽出されて抜けて
いる部分に対し、その部分の両端部の画素値を用いて埋
め込む例を示している。より具体的には、各ライン(各
j)ごとに画像Sを参照し、画素値が0から1に変わる
点を検出して文字や線画の存在する部分の左端(開始
点)とする。同様に、画像Sの画素値が1から0に変わ
る点を検出して右端(終了点)を求める。検出された開
始点から終了点までが画像Iにおける白抜け部分であ
る。この白抜け部分を埋める処理として、この例では、
その中央より左側では左端部の画像Iの画素値により埋
め、中央より右側では右端部の画像Iの画素値により埋
める。これによって画像I中の文字または線画として抽
出されて白抜け部分を各ラインごとに埋めてゆく。
を示すフローチャートである。ここでは、画像処理部4
は、画像I中の文字または線画として抽出されて抜けて
いる部分に対し、その部分の両端部の画素値を用いて埋
め込む例を示している。より具体的には、各ライン(各
j)ごとに画像Sを参照し、画素値が0から1に変わる
点を検出して文字や線画の存在する部分の左端(開始
点)とする。同様に、画像Sの画素値が1から0に変わ
る点を検出して右端(終了点)を求める。検出された開
始点から終了点までが画像Iにおける白抜け部分であ
る。この白抜け部分を埋める処理として、この例では、
その中央より左側では左端部の画像Iの画素値により埋
め、中央より右側では右端部の画像Iの画素値により埋
める。これによって画像I中の文字または線画として抽
出されて白抜け部分を各ラインごとに埋めてゆく。
【0017】まずS21において、処理を行なうライン
jを0として初期化し、次にS22において、jに1を
加えて次のラインを処理ラインとする。処理開始直後で
はj=0に1を加え、j=1となって先頭ラインを示す
ようになる。またS22では処理ラインj中の処理すべ
き列iを0として初期化し、S23においてiに1を加
え、次の画素を注目画素とする。各ラインの先頭では、
i=0に1を加え、i=1となってラインの先頭画素を
示すようになる。
jを0として初期化し、次にS22において、jに1を
加えて次のラインを処理ラインとする。処理開始直後で
はj=0に1を加え、j=1となって先頭ラインを示す
ようになる。またS22では処理ラインj中の処理すべ
き列iを0として初期化し、S23においてiに1を加
え、次の画素を注目画素とする。各ラインの先頭では、
i=0に1を加え、i=1となってラインの先頭画素を
示すようになる。
【0018】S23〜S29では、画像Iにおける白抜
け領域の開始点を検出する。S23でiを更新後、S2
4において画像Sを参照して開始点か否かを判定する。
すなわち、画像Sにおける注目画素に対応する位置の画
素値S(i,j)が0で、次の画素値S(i+1,j)
が1か否かを検出する。この条件を満足する場合、文字
や線画領域の開始点であるものとして、S47において
変数αに画像Iにおいて対応する座標を持つ画素値I
(i,j)を格納し、変数Aにその座標iを格納してS
30に進む。変数αは、白抜け領域の開始点における画
素値を保存し、変数Aは開始点の座標を保存する。
け領域の開始点を検出する。S23でiを更新後、S2
4において画像Sを参照して開始点か否かを判定する。
すなわち、画像Sにおける注目画素に対応する位置の画
素値S(i,j)が0で、次の画素値S(i+1,j)
が1か否かを検出する。この条件を満足する場合、文字
や線画領域の開始点であるものとして、S47において
変数αに画像Iにおいて対応する座標を持つ画素値I
(i,j)を格納し、変数Aにその座標iを格納してS
30に進む。変数αは、白抜け領域の開始点における画
素値を保存し、変数Aは開始点の座標を保存する。
【0019】また、S24の条件を満足しない場合、ラ
インの先頭から白抜け領域となっている場合も考えられ
るので、S25においてi=1、すなわちラインの先頭
か否かを判定して、ラインの先頭の場合にはS28にお
いて画像Sの画素値S(i,j)が1か否かを判定す
る。ラインの先頭で画像Sの画素値S(i,j)が1の
場合には、ラインの先頭から白抜け領域となっている。
この場合にはS29において埋めるべき画素値として変
数αに0を、開始点の座標として変数Aに1を格納し、
S30に進む。
インの先頭から白抜け領域となっている場合も考えられ
るので、S25においてi=1、すなわちラインの先頭
か否かを判定して、ラインの先頭の場合にはS28にお
いて画像Sの画素値S(i,j)が1か否かを判定す
る。ラインの先頭で画像Sの画素値S(i,j)が1の
場合には、ラインの先頭から白抜け領域となっている。
この場合にはS29において埋めるべき画素値として変
数αに0を、開始点の座標として変数Aに1を格納し、
S30に進む。
【0020】S25において注目画素がラインの先頭で
ない場合には、S26において注目画素がラインの右端
の1画素手前まで達したか否かを判定し、右端の1画素
手前まで達していれば、次のラインの処理に移行すべく
S39へ進む。なお、右端の画素については次の画素が
存在しないのでS24における判定を行なう必要はな
く、開始点の検出の処理は行なわない。S24で開始点
が検出されず、さらにS26において注目画素がライン
の右端の2画素以上手前である場合、またはS25にお
いてラインの開始点と判定されたがS28において開始
点が文字や線画でなかった場合には、S23へ戻り、i
に1を加えて注目画素を次の画素に移す。
ない場合には、S26において注目画素がラインの右端
の1画素手前まで達したか否かを判定し、右端の1画素
手前まで達していれば、次のラインの処理に移行すべく
S39へ進む。なお、右端の画素については次の画素が
存在しないのでS24における判定を行なう必要はな
く、開始点の検出の処理は行なわない。S24で開始点
が検出されず、さらにS26において注目画素がライン
の右端の2画素以上手前である場合、またはS25にお
いてラインの開始点と判定されたがS28において開始
点が文字や線画でなかった場合には、S23へ戻り、i
に1を加えて注目画素を次の画素に移す。
【0021】このような処理を繰り返してゆく過程で、
ラインj上の白抜け部分の開始点(ラインの先頭から始
まる場合を含む)が検出された場合には、S30へ進
む。S30〜S34では白抜け領域の終了点を検出する
処理である。S30においてiに1を加えて注目画素を
次の画素に移した後、S31において、画像Sにおける
注目画素に対応する位置の画素値S(i,j)が1で、
次の画素値S(i+1,j)が0か否かを判定する。条
件を満たす場合、S33において変数βに画像Iにおい
て対応する座標を持つ画素値I(i+1,j)を格納
し、変数Bにはその座標i+1を代入して、S35に進
む。変数βは、白抜け領域の終了点における画素値を保
存し、変数Bは終了点の座標を保存する。
ラインj上の白抜け部分の開始点(ラインの先頭から始
まる場合を含む)が検出された場合には、S30へ進
む。S30〜S34では白抜け領域の終了点を検出する
処理である。S30においてiに1を加えて注目画素を
次の画素に移した後、S31において、画像Sにおける
注目画素に対応する位置の画素値S(i,j)が1で、
次の画素値S(i+1,j)が0か否かを判定する。条
件を満たす場合、S33において変数βに画像Iにおい
て対応する座標を持つ画素値I(i+1,j)を格納
し、変数Bにはその座標i+1を代入して、S35に進
む。変数βは、白抜け領域の終了点における画素値を保
存し、変数Bは終了点の座標を保存する。
【0022】S31において条件を満たさない場合に
は、S32において注目画素が右端の手前の画素か否か
を判定する。すなわち、白抜け領域がラインの右端まで
連続している場合を判定する。白抜け領域がラインの右
端まで達している場合には、S34において変数βに画
素値として0を格納し、変数Bに終了点の座標としてi
max を格納する。S31で終了点が検出されず、注目画
素がラインの右端の2画素以上手前である場合には、S
30へ戻り、iに1を加えて次の画素を注目画素とす
る。
は、S32において注目画素が右端の手前の画素か否か
を判定する。すなわち、白抜け領域がラインの右端まで
連続している場合を判定する。白抜け領域がラインの右
端まで達している場合には、S34において変数βに画
素値として0を格納し、変数Bに終了点の座標としてi
max を格納する。S31で終了点が検出されず、注目画
素がラインの右端の2画素以上手前である場合には、S
30へ戻り、iに1を加えて次の画素を注目画素とす
る。
【0023】このような処理を繰り返すことによって、
S23〜S29の処理で白抜け領域の開始点が検出され
た場合のその白抜け領域の終了点を検出する。そしてS
35へ進む。
S23〜S29の処理で白抜け領域の開始点が検出され
た場合のその白抜け領域の終了点を検出する。そしてS
35へ進む。
【0024】S35〜S37は、白抜け領域に保存して
おいた画素値を埋め込む処理を行なう。まずS35にお
いて、白抜け領域の開始点における画素値(変数αの
値)と終了点における画素値(変数βの値)を比較し、
同じ値であればS37において画像Iの画素値I(A,
j)〜I(B,j)までを一律に変数αまたは変数βの
値とする。また、変数αと変数βの値が異なる場合に
は、S36において、画像Iの画素値I(A,j)〜I
(A+[(B−A)/2],j)を変数αの値とし、画
素値I(A+[(B−A)/2]+1,j)〜I(B,
j)を変数βの値とする。ここで、[]はガウス記号を
表わしている。このようにして白抜け領域はその開始点
または終了点の画素値によって埋められる。
おいた画素値を埋め込む処理を行なう。まずS35にお
いて、白抜け領域の開始点における画素値(変数αの
値)と終了点における画素値(変数βの値)を比較し、
同じ値であればS37において画像Iの画素値I(A,
j)〜I(B,j)までを一律に変数αまたは変数βの
値とする。また、変数αと変数βの値が異なる場合に
は、S36において、画像Iの画素値I(A,j)〜I
(A+[(B−A)/2],j)を変数αの値とし、画
素値I(A+[(B−A)/2]+1,j)〜I(B,
j)を変数βの値とする。ここで、[]はガウス記号を
表わしている。このようにして白抜け領域はその開始点
または終了点の画素値によって埋められる。
【0025】S38において注目画素がラインの右端ま
で達したか否か、すなわち1ラインの処理を全て終えた
か否かを判定し、ラインの途中である場合にはS23へ
戻り、白抜け領域の開始点の検出を続ける。また、1ラ
インの処理を終えた場合には、S39において処理ライ
ンが最終ラインであったか否かを判定し、最終ラインで
ない場合にはS22へ戻り、次のラインを処理ラインと
して処理を続ける。最終ラインまで処理を繰り返し行な
い、最終ラインの処理が終了した場合は画像処理部4に
おける処理を終了する。
で達したか否か、すなわち1ラインの処理を全て終えた
か否かを判定し、ラインの途中である場合にはS23へ
戻り、白抜け領域の開始点の検出を続ける。また、1ラ
インの処理を終えた場合には、S39において処理ライ
ンが最終ラインであったか否かを判定し、最終ラインで
ない場合にはS22へ戻り、次のラインを処理ラインと
して処理を続ける。最終ラインまで処理を繰り返し行な
い、最終ラインの処理が終了した場合は画像処理部4に
おける処理を終了する。
【0026】上述の例では白抜け領域の開始点と終了点
における画素値が異なる場合に、中央点C=A+[(B
−A)/2]を境としてその左側を開始点における画素
値、その右側を終了点における画素値とした。しかしこ
れに限らず、境界とする点は開始点、終了点に依存する
ものであれば任意に決めることができる。もちろん、開
始点あるいは終了点の画素値のいずれかで白抜け領域す
べてを埋めてもよい。
における画素値が異なる場合に、中央点C=A+[(B
−A)/2]を境としてその左側を開始点における画素
値、その右側を終了点における画素値とした。しかしこ
れに限らず、境界とする点は開始点、終了点に依存する
ものであれば任意に決めることができる。もちろん、開
始点あるいは終了点の画素値のいずれかで白抜け領域す
べてを埋めてもよい。
【0027】また、上述の第1の動作例ではライン毎に
処理を行なうため、必要とするメモリ量は少なくてよ
い。さらに、1画素毎ではなく連続した白抜け部分の画
素値を一度に変換するために、処理時間が短縮できる。
しかも、処理後の画像Iにおいては、文字や線画の存在
していた部分において開始点や終了点から同じ画素値が
連続するため、例えばラインごとに変化点を検出するよ
うな圧縮方法を用いて画像Iを符号化した場合、符号化
効率を向上させることができる。
処理を行なうため、必要とするメモリ量は少なくてよ
い。さらに、1画素毎ではなく連続した白抜け部分の画
素値を一度に変換するために、処理時間が短縮できる。
しかも、処理後の画像Iにおいては、文字や線画の存在
していた部分において開始点や終了点から同じ画素値が
連続するため、例えばラインごとに変化点を検出するよ
うな圧縮方法を用いて画像Iを符号化した場合、符号化
効率を向上させることができる。
【0028】上述の第1の動作例を、具体例を用いて説
明する。図5は、入力画像および分離された各画像の具
体例の説明図である。図5(A)は入力画像の具体例を
示しており、写真などの中間調画像上に「ABC」の3
文字が書かれている画像である。中間調部分にはその濃
度に応じたハッチングを施して示している。このような
入力画像は、画像分離部2によって図5(B)に示す画
像I、図5(C)に示す画像S、図5(D)に示す画像
Pに分離される。この状態では画像Iにおいて文字「A
BC」が書かれていた部分が図5(B)に示すように白
抜けの状態となっている。
明する。図5は、入力画像および分離された各画像の具
体例の説明図である。図5(A)は入力画像の具体例を
示しており、写真などの中間調画像上に「ABC」の3
文字が書かれている画像である。中間調部分にはその濃
度に応じたハッチングを施して示している。このような
入力画像は、画像分離部2によって図5(B)に示す画
像I、図5(C)に示す画像S、図5(D)に示す画像
Pに分離される。この状態では画像Iにおいて文字「A
BC」が書かれていた部分が図5(B)に示すように白
抜けの状態となっている。
【0029】図6は、分離された各画像および処理後の
画像Iにおける画素値の具体例の説明図である。図5
(B)および図5(C)における横線11上の画素値の
一部を図6(B)および図6(A)に示している。な
お、図6では説明を簡単にするため非常に低解像度の場
合を示している。図6(B)に示す画像Iにおいて、画
素値は8ビットで「0」を白、「255」を黒とし、図
5において右上がりのハッチングを施した部分を画素値
20、クロスハッチングを施した部分を画素値50、境
界を画素値90としている。画像分離部2によって分離
した結果、図5(B)に示す画像Iにおいて文字「AB
C」が削除された部分は、図6(B)に示すように画素
値が0になっている。また、文字や線画として分離され
た画像Sにおいては、図6(A)に示すように、文字
「ABC」が存在している部分についてのみ1となって
いる。なおこの例では、文字「ABC」の濃度等は画像
Pに分離されている。
画像Iにおける画素値の具体例の説明図である。図5
(B)および図5(C)における横線11上の画素値の
一部を図6(B)および図6(A)に示している。な
お、図6では説明を簡単にするため非常に低解像度の場
合を示している。図6(B)に示す画像Iにおいて、画
素値は8ビットで「0」を白、「255」を黒とし、図
5において右上がりのハッチングを施した部分を画素値
20、クロスハッチングを施した部分を画素値50、境
界を画素値90としている。画像分離部2によって分離
した結果、図5(B)に示す画像Iにおいて文字「AB
C」が削除された部分は、図6(B)に示すように画素
値が0になっている。また、文字や線画として分離され
た画像Sにおいては、図6(A)に示すように、文字
「ABC」が存在している部分についてのみ1となって
いる。なおこの例では、文字「ABC」の濃度等は画像
Pに分離されている。
【0030】いま、処理ラインjが図5(B)および図
5(C)において示した横線11のラインであるものと
する。図3、図4に示したフローチャートに従い、この
ラインの左端から順に注目画素を右方向にずらしながら
処理を進めてゆく。i=pのとき、図6(A)からS
(p,j)=0、S(p+1,j)=1であるのでS2
4の条件が成立し、画像Iにおける開始点が検出され
る。S27において変数αにI(p,j)=20が格納
され、変数Aにpが格納される。
5(C)において示した横線11のラインであるものと
する。図3、図4に示したフローチャートに従い、この
ラインの左端から順に注目画素を右方向にずらしながら
処理を進めてゆく。i=pのとき、図6(A)からS
(p,j)=0、S(p+1,j)=1であるのでS2
4の条件が成立し、画像Iにおける開始点が検出され
る。S27において変数αにI(p,j)=20が格納
され、変数Aにpが格納される。
【0031】次にi=qにおいてS(q,j)=1、S
(q+1,j)=0となり、S31の条件が成立する。
これによって画像Iの白抜け部分の終了点を検出し、S
33において変数βにI(q+1,j)=20、変数B
にq+1が格納される。
(q+1,j)=0となり、S31の条件が成立する。
これによって画像Iの白抜け部分の終了点を検出し、S
33において変数βにI(q+1,j)=20、変数B
にq+1が格納される。
【0032】そして、変数Aに格納されている位置pか
ら変数Bに格納されている位置q+1までの白抜け部分
を埋める。S35において、変数αと変数βの値を比較
すると、値は等しいのでS37において白抜け部分を変
数αまたは変数βの値20で埋める。これによって図6
(C)に示すように位置pからq+1までの白抜け領域
が値20となり、白抜け領域であった部分を含め、値2
0の部分が連続することになる。
ら変数Bに格納されている位置q+1までの白抜け部分
を埋める。S35において、変数αと変数βの値を比較
すると、値は等しいのでS37において白抜け部分を変
数αまたは変数βの値20で埋める。これによって図6
(C)に示すように位置pからq+1までの白抜け領域
が値20となり、白抜け領域であった部分を含め、値2
0の部分が連続することになる。
【0033】同様にして位置rからs+1までの領域、
位置tからu+1までの領域、位置vからw+1までの
領域の各白抜け部分では、その開始点あるいは終了点の
画素値50によって埋められる。さらに、位置xからy
+1までの白抜け領域では、開始点の画素値αが50、
終了点の画素値βが20であり、αとβが等しくない。
そのため、S36において、位置x+1,x+2につい
ては画素値50、位置y−1,yについては画素値20
が埋められる。
位置tからu+1までの領域、位置vからw+1までの
領域の各白抜け部分では、その開始点あるいは終了点の
画素値50によって埋められる。さらに、位置xからy
+1までの白抜け領域では、開始点の画素値αが50、
終了点の画素値βが20であり、αとβが等しくない。
そのため、S36において、位置x+1,x+2につい
ては画素値50、位置y−1,yについては画素値20
が埋められる。
【0034】このようにして、図6(C)に示すような
一連の画素値が得られる。これは図6(B)において存
在していた白抜け部分が埋められた画像を示している。
さらに図6(C)に示すように、白抜け部分を埋めるこ
とによってその周囲とも画素値が連続し、同じ画素値を
有する区間が長くなっている。これによって例えばMH
符号化等のようにランレングスを用いた符号化や、ライ
ンごとの予測符号化を行なう場合には、ラン長が長くな
りまた予測が的中しやすくなるため、符号化効率を向上
させることができる。
一連の画素値が得られる。これは図6(B)において存
在していた白抜け部分が埋められた画像を示している。
さらに図6(C)に示すように、白抜け部分を埋めるこ
とによってその周囲とも画素値が連続し、同じ画素値を
有する区間が長くなっている。これによって例えばMH
符号化等のようにランレングスを用いた符号化や、ライ
ンごとの予測符号化を行なう場合には、ラン長が長くな
りまた予測が的中しやすくなるため、符号化効率を向上
させることができる。
【0035】また、図5(B)に示すように白抜け部分
を有する画像Iを、データ量を減少させるために低解像
度の画像に解像度変換して保存しておき、出力時に元の
解像度に戻すと、白抜け部分のエッジが例えばぎざぎざ
になるなどして、もとの形状に戻らない場合がある。こ
のような状態で図5(C)および図5(D)に示す画像
Sおよび画像Pを用いて合成すると、文字の周囲に白抜
けが発生する恐れがある。しかし、本発明では白抜け部
分を埋めているので、文字との境界は画像Iには存在し
なくなり、解像度変換による影響は受けない。そのた
め、合成後の画像に白抜けが発生する恐れはなくなり、
良好な画像を出力することが可能となる。
を有する画像Iを、データ量を減少させるために低解像
度の画像に解像度変換して保存しておき、出力時に元の
解像度に戻すと、白抜け部分のエッジが例えばぎざぎざ
になるなどして、もとの形状に戻らない場合がある。こ
のような状態で図5(C)および図5(D)に示す画像
Sおよび画像Pを用いて合成すると、文字の周囲に白抜
けが発生する恐れがある。しかし、本発明では白抜け部
分を埋めているので、文字との境界は画像Iには存在し
なくなり、解像度変換による影響は受けない。そのた
め、合成後の画像に白抜けが発生する恐れはなくなり、
良好な画像を出力することが可能となる。
【0036】さらに、この第1の動作例ではライン毎の
処理を行なうため、必要とするメモリが非常に少なくて
済み、また埋め込む画素値を周辺画素と同じ画素値とす
ることによって処理が簡単であり、高速な処理が可能で
ある。
処理を行なうため、必要とするメモリが非常に少なくて
済み、また埋め込む画素値を周辺画素と同じ画素値とす
ることによって処理が簡単であり、高速な処理が可能で
ある。
【0037】図7、図8は、画像処理部の第2の動作例
を示すフローチャートである。上述の第1の動作例で
は、白抜け部分を埋める際に、白抜け部分の開始点およ
び終了点の画素値をそのまま用いて埋めた。この第2の
動作例では、白抜け部分の開始点および終了点の画素値
から、新たに白抜け部分の画素値を作り出す場合を示
す。
を示すフローチャートである。上述の第1の動作例で
は、白抜け部分を埋める際に、白抜け部分の開始点およ
び終了点の画素値をそのまま用いて埋めた。この第2の
動作例では、白抜け部分の開始点および終了点の画素値
から、新たに白抜け部分の画素値を作り出す場合を示
す。
【0038】図7、図8において、図3、図4と同様の
処理を行なう部分には同じ符号を付してあり、その部分
の説明を省略する。上述の第1の動作例と異なるのは、
S36の処理がS41の処理に変更されている点のみで
ある。S35に至るまでの処理によって、白抜け部分の
開始点の座標とその画素値および終了点の座標とその画
素値が得られている。S35において開始点の画素値α
と終了点の画素値βが等しくない場合、S41において
白抜け部分の画素値を生成する。
処理を行なう部分には同じ符号を付してあり、その部分
の説明を省略する。上述の第1の動作例と異なるのは、
S36の処理がS41の処理に変更されている点のみで
ある。S35に至るまでの処理によって、白抜け部分の
開始点の座標とその画素値および終了点の座標とその画
素値が得られている。S35において開始点の画素値α
と終了点の画素値βが等しくない場合、S41において
白抜け部分の画素値を生成する。
【0039】S41では、白抜け部分の画素値すなわち
画素値I(A,j)〜I(B,j)を、それぞれ開始点
Aと終了点Bからの距離に応じて次のように決定する。 I(i,j)={(i−A)β+(B−i)α}/(B−A) …(1) 画素値I(A,j)〜I(B,j)をこの(1)式によ
って変換した後はS38へ進み、終了するまで処理を続
ける。
画素値I(A,j)〜I(B,j)を、それぞれ開始点
Aと終了点Bからの距離に応じて次のように決定する。 I(i,j)={(i−A)β+(B−i)α}/(B−A) …(1) 画素値I(A,j)〜I(B,j)をこの(1)式によ
って変換した後はS38へ進み、終了するまで処理を続
ける。
【0040】図9は、画像処理部の第2の動作例におけ
る画像Iの画素値の具体例の説明図である。上述の第1
の動作例と同様に、図5(A)に示す入力画像が図5
(B)〜(D)に示す各画像に分離されたものとする。
図9(A),(B)は図6(A),(B)と同じもので
あり、図5(C),(B)に示す画像S,画像Iの横線
11上の一部の画素値の具体例を示している。この第2
の動作例では、特に一点鎖線で囲んだ部分が上述の第1
の動作例と異なる動作を行なう部分である。
る画像Iの画素値の具体例の説明図である。上述の第1
の動作例と同様に、図5(A)に示す入力画像が図5
(B)〜(D)に示す各画像に分離されたものとする。
図9(A),(B)は図6(A),(B)と同じもので
あり、図5(C),(B)に示す画像S,画像Iの横線
11上の一部の画素値の具体例を示している。この第2
の動作例では、特に一点鎖線で囲んだ部分が上述の第1
の動作例と異なる動作を行なう部分である。
【0041】図7、図8に示したフローチャートに沿っ
て具体例について動作を説明するが、特に上述の第1の
動作例と異なる部分のみについて説明する。位置p〜q
+1,位置r〜s+1,位置t〜u+1,位置v〜w+
1の各白抜け領域については、その開始点および終了点
の画素値が等しいので、S37において開始点あるいは
終了点の画素値で白抜け領域が埋められる。
て具体例について動作を説明するが、特に上述の第1の
動作例と異なる部分のみについて説明する。位置p〜q
+1,位置r〜s+1,位置t〜u+1,位置v〜w+
1の各白抜け領域については、その開始点および終了点
の画素値が等しいので、S37において開始点あるいは
終了点の画素値で白抜け領域が埋められる。
【0042】位置xにおいて開始点が検出され、その位
置が変数Aに格納されるとともに画素値50が変数αに
格納される。また、位置yにおいて終了点が検出され、
その位置y+1が変数Bに格納されるとともに画素値2
0が変数βに格納される。S35において変数αと変数
βの値を比べると異なるので、S41において白抜け領
域を埋める処理が行なわれる。例えばI(x+1,j)
は上述の(1)式より、 (1・β+4・α)/5=(20+200)/5=44 となり、画素値44が埋め込まれる。同様にして位置y
の画素まで埋められる。このようにして画素が埋められ
た結果を図9(C)に示している。位置xから位置y+
1までの間の画素値が段階的に変化していることがわか
る。
置が変数Aに格納されるとともに画素値50が変数αに
格納される。また、位置yにおいて終了点が検出され、
その位置y+1が変数Bに格納されるとともに画素値2
0が変数βに格納される。S35において変数αと変数
βの値を比べると異なるので、S41において白抜け領
域を埋める処理が行なわれる。例えばI(x+1,j)
は上述の(1)式より、 (1・β+4・α)/5=(20+200)/5=44 となり、画素値44が埋め込まれる。同様にして位置y
の画素まで埋められる。このようにして画素が埋められ
た結果を図9(C)に示している。位置xから位置y+
1までの間の画素値が段階的に変化していることがわか
る。
【0043】このように、白抜け領域の画素を段階的に
変化させて埋め込むことによって、階調の急激な変動を
少なくし、高周波成分の発生を抑えることができる。そ
のため、例えば離散コサイン変換等の周波数成分への変
換を伴う符号化方式を用いる場合においては、符号量を
低減し、また復号された画像の品質劣化を抑えることが
できる。
変化させて埋め込むことによって、階調の急激な変動を
少なくし、高周波成分の発生を抑えることができる。そ
のため、例えば離散コサイン変換等の周波数成分への変
換を伴う符号化方式を用いる場合においては、符号量を
低減し、また復号された画像の品質劣化を抑えることが
できる。
【0044】もちろん、画像Iにおいて文字や線画とし
て分離されて白抜けとなっている部分が埋められている
ので、画像Iを低解像度に変換後、元の解像度に再変換
して文字や線画と合成しても、文字や線画のエッジ部分
に白抜けは発生せず、良好な合成画像を得ることができ
る。また、この第2の動作例もライン毎の処理を行なう
ため、必要とするメモリが非常に少なくて済むという利
点がある。
て分離されて白抜けとなっている部分が埋められている
ので、画像Iを低解像度に変換後、元の解像度に再変換
して文字や線画と合成しても、文字や線画のエッジ部分
に白抜けは発生せず、良好な合成画像を得ることができ
る。また、この第2の動作例もライン毎の処理を行なう
ため、必要とするメモリが非常に少なくて済むという利
点がある。
【0045】次に画像処理部4の第3の動作例について
説明する。上述の第1および第2の動作例では、画像I
において白抜けした部分を埋める際に、同じライン上に
ある周辺2画素を参照し、白抜け部分の画素値を決定し
た。この第3の動作例では、同じライン上の周辺2画素
とともに、同じカラム上の周辺2画素を参照し、合計4
画素の画素値から新たに白抜け領域の各画素値を作り出
す例を示している。
説明する。上述の第1および第2の動作例では、画像I
において白抜けした部分を埋める際に、同じライン上に
ある周辺2画素を参照し、白抜け部分の画素値を決定し
た。この第3の動作例では、同じライン上の周辺2画素
とともに、同じカラム上の周辺2画素を参照し、合計4
画素の画素値から新たに白抜け領域の各画素値を作り出
す例を示している。
【0046】図10ないし図12は、画像処理部の第3
の動作例を示すフローチャートである。S51〜S53
は図3におけるS21〜S23と同様の処理であり、ま
ずS21においてj=0として初期化し、次にS22に
おいて、jに1を加えて次のラインを処理ラインとす
る。またS22ではi=0として初期化し、S23にお
いてiに1を加え、次の画素を注目画素とする。
の動作例を示すフローチャートである。S51〜S53
は図3におけるS21〜S23と同様の処理であり、ま
ずS21においてj=0として初期化し、次にS22に
おいて、jに1を加えて次のラインを処理ラインとす
る。またS22ではi=0として初期化し、S23にお
いてiに1を加え、次の画素を注目画素とする。
【0047】S53〜S59は図3におけるS23〜S
29と同様の処理であり、画像Iにおける白抜け領域の
開始点を検出する。S53でiを更新後、S54におい
て画像Sを参照して開始点か否かを判定する。すなわ
ち、画像Sにおける注目画素に対応する位置の画素値S
(i,j)が0で、次の画素値S(i+1,j)が1か
否かを検出する。この条件を満足する場合、文字や線画
領域の開始点であるものとして、S57において変数α
1に画像Iにおいて対応する座標を持つ画素値I(i,
j)を格納し、変数A1にその座標iを格納する。さら
に、このときの座標jを変数Cに格納し、S60に進
む。変数α1は、白抜け領域のライン方向の開始点にお
ける画素値を保存し、変数A1にはライン方向の開始点
の座標を保存する。
29と同様の処理であり、画像Iにおける白抜け領域の
開始点を検出する。S53でiを更新後、S54におい
て画像Sを参照して開始点か否かを判定する。すなわ
ち、画像Sにおける注目画素に対応する位置の画素値S
(i,j)が0で、次の画素値S(i+1,j)が1か
否かを検出する。この条件を満足する場合、文字や線画
領域の開始点であるものとして、S57において変数α
1に画像Iにおいて対応する座標を持つ画素値I(i,
j)を格納し、変数A1にその座標iを格納する。さら
に、このときの座標jを変数Cに格納し、S60に進
む。変数α1は、白抜け領域のライン方向の開始点にお
ける画素値を保存し、変数A1にはライン方向の開始点
の座標を保存する。
【0048】また、S54の条件を満足しない場合、ラ
インの先頭から白抜け領域となっている場合も考えられ
るので、S55においてi=1、すなわちラインの先頭
か否かを判定して、ラインの先頭の場合にはS58にお
いて画像Sの画素値S(i,j)が1か否かを判定す
る。ラインの先頭で画像Sの画素値S(i,j)が1の
場合には、ラインの先頭から白抜け領域となっている。
この場合にはS59においてライン方向の開始点の画素
値として変数α1に0を、ライン方向の開始点の座標と
して変数A1に1を格納する。さらに、このときの座標
jを変数Cに格納し、S60に進む。
インの先頭から白抜け領域となっている場合も考えられ
るので、S55においてi=1、すなわちラインの先頭
か否かを判定して、ラインの先頭の場合にはS58にお
いて画像Sの画素値S(i,j)が1か否かを判定す
る。ラインの先頭で画像Sの画素値S(i,j)が1の
場合には、ラインの先頭から白抜け領域となっている。
この場合にはS59においてライン方向の開始点の画素
値として変数α1に0を、ライン方向の開始点の座標と
して変数A1に1を格納する。さらに、このときの座標
jを変数Cに格納し、S60に進む。
【0049】S55において注目画素がラインの先頭で
ない場合には、S56において注目画素がラインの右端
の1画素手前まで達したか否かを判定し、右端の1画素
手前まで達していれば、次のラインの処理に移行すべく
S82へ進む。なお、右端の画素については次の画素が
存在しないのでS54における判定を行なう必要はな
く、開始点の検出の処理は行なわない。S54で開始点
が検出されず、さらにS56において注目画素がライン
の右端の2画素以上手前である場合、またはS55にお
いてラインの開始点と判定されたがS58において開始
点が文字や線画でなかった場合には、S53へ戻り、i
に1を加えて注目画素を次の画素に移す。
ない場合には、S56において注目画素がラインの右端
の1画素手前まで達したか否かを判定し、右端の1画素
手前まで達していれば、次のラインの処理に移行すべく
S82へ進む。なお、右端の画素については次の画素が
存在しないのでS54における判定を行なう必要はな
く、開始点の検出の処理は行なわない。S54で開始点
が検出されず、さらにS56において注目画素がライン
の右端の2画素以上手前である場合、またはS55にお
いてラインの開始点と判定されたがS58において開始
点が文字や線画でなかった場合には、S53へ戻り、i
に1を加えて注目画素を次の画素に移す。
【0050】このような処理を繰り返してゆく過程で、
ラインj上の白抜け部分の開始点が検出できる。開始点
が検出された場合には、S60へ進む。S60〜S64
では、図3のS30〜S34と同様に、白抜け領域のラ
イン方向の終了点を検出する。S60においてiに1を
加えて注目画素を次の画素に移した後、S61におい
て、画像Sにおける注目画素に対応する位置の画素値S
(i,j)が1で、次の画素値S(i+1,j)が0か
否かを判定する。条件を満たす場合、S63において変
数β1画像Iにおいて対応する座標を持つ画素値I(i
+1,j)を格納し、変数B1はその座標i+1を代入
して、S65に進む。変数β1は、白抜け領域のライン
方向の終了点における画素値を保存し、変数B1はライ
ン方向の終了点の座標を保存する。
ラインj上の白抜け部分の開始点が検出できる。開始点
が検出された場合には、S60へ進む。S60〜S64
では、図3のS30〜S34と同様に、白抜け領域のラ
イン方向の終了点を検出する。S60においてiに1を
加えて注目画素を次の画素に移した後、S61におい
て、画像Sにおける注目画素に対応する位置の画素値S
(i,j)が1で、次の画素値S(i+1,j)が0か
否かを判定する。条件を満たす場合、S63において変
数β1画像Iにおいて対応する座標を持つ画素値I(i
+1,j)を格納し、変数B1はその座標i+1を代入
して、S65に進む。変数β1は、白抜け領域のライン
方向の終了点における画素値を保存し、変数B1はライ
ン方向の終了点の座標を保存する。
【0051】S61において条件を満たさない場合に
は、S62において注目画素が右端の手前の画素か否か
を判定する。すなわち、白抜け領域がラインの右端まで
連続している場合を判定する。白抜け領域がラインの右
端まで達している場合には、S64において変数β1に
画素値として0を格納し、変数B1に終了点の座標とし
てimax を格納する。S61で終了点が検出されず、注
目画素がラインの右端の2画素以上手前である場合に
は、S60へ戻り、iに1を加えて次の画素を注目画素
とする。
は、S62において注目画素が右端の手前の画素か否か
を判定する。すなわち、白抜け領域がラインの右端まで
連続している場合を判定する。白抜け領域がラインの右
端まで達している場合には、S64において変数β1に
画素値として0を格納し、変数B1に終了点の座標とし
てimax を格納する。S61で終了点が検出されず、注
目画素がラインの右端の2画素以上手前である場合に
は、S60へ戻り、iに1を加えて次の画素を注目画素
とする。
【0052】このような処理を繰り返すことによって、
S53〜S59の処理で白抜け領域のライン方向の開始
点が検出された場合のその白抜け領域のライン方向の終
了点を検出することができる。そしてS65へ進む。
S53〜S59の処理で白抜け領域のライン方向の開始
点が検出された場合のその白抜け領域のライン方向の終
了点を検出することができる。そしてS65へ進む。
【0053】S65〜S80では、上述のようにして検
出した白抜け領域の開始点の次の画素から終了点の手前
の画素までについて、それぞれの画素値を算出して埋め
込む処理を行なう。S65においてiを白抜け領域のラ
イン方向の開始点である変数A1にセットし、S66に
おいて、iに1を加えて画素値を埋め込むべき画素を次
の画素に設定する。例えばS65でiを変数A1にセッ
トした直後では、白抜け領域の開始点の次の画素とな
る。そしてS67〜S79で画素値を算出して埋め込
み、S80で座標iが白抜け領域のライン方向の終了点
B1の手前の画素の座標であるか否か、すなわち白抜け
領域のライン方向のすべての画素について埋め込み処理
が終了したか否かを判定し、未処理の画素が残っている
場合にはS66へ戻って座標iに1を加え、画素値を埋
め込むべき画素として次の画素を設定して処理を繰り返
す。
出した白抜け領域の開始点の次の画素から終了点の手前
の画素までについて、それぞれの画素値を算出して埋め
込む処理を行なう。S65においてiを白抜け領域のラ
イン方向の開始点である変数A1にセットし、S66に
おいて、iに1を加えて画素値を埋め込むべき画素を次
の画素に設定する。例えばS65でiを変数A1にセッ
トした直後では、白抜け領域の開始点の次の画素とな
る。そしてS67〜S79で画素値を算出して埋め込
み、S80で座標iが白抜け領域のライン方向の終了点
B1の手前の画素の座標であるか否か、すなわち白抜け
領域のライン方向のすべての画素について埋め込み処理
が終了したか否かを判定し、未処理の画素が残っている
場合にはS66へ戻って座標iに1を加え、画素値を埋
め込むべき画素として次の画素を設定して処理を繰り返
す。
【0054】S67〜S79において埋め込むべき画素
値を算出して埋め込む処理を行なうが、この動作例では
同じカラム上の白抜け領域の開始点および終了点の2画
素の画素値も参照する。そのために、S67〜S71で
はカラム方向の白抜け領域の開始点を求め、S72〜S
77ではカラム方向の白抜け領域の終了点を求める。
値を算出して埋め込む処理を行なうが、この動作例では
同じカラム上の白抜け領域の開始点および終了点の2画
素の画素値も参照する。そのために、S67〜S71で
はカラム方向の白抜け領域の開始点を求め、S72〜S
77ではカラム方向の白抜け領域の終了点を求める。
【0055】S67〜S71では、画素値を埋め込むべ
き画素についてカラム方向の座標jを減少させてゆき、
カラム方向の開始点を検出する。S67においてjから
1を減じ、S68においてラインjの同じカラム位置に
おける画像Sの画素値S(i,j)が0で、次のライン
j+1の同じカラム位置における画像Sの画素値S
(i,j+1)が1か否かを判定する。条件を満たす場
合、S70において変数α2に画像Iにおいて対応する
座標を持つ画素値I(i,j)を格納し、変数A2には
その座標jを代入して、S72に進む。変数α2は、白
抜け領域のカラム方向の開始点における画素値を保存
し、変数A2はカラム方向の開始点の座標を保存する。
き画素についてカラム方向の座標jを減少させてゆき、
カラム方向の開始点を検出する。S67においてjから
1を減じ、S68においてラインjの同じカラム位置に
おける画像Sの画素値S(i,j)が0で、次のライン
j+1の同じカラム位置における画像Sの画素値S
(i,j+1)が1か否かを判定する。条件を満たす場
合、S70において変数α2に画像Iにおいて対応する
座標を持つ画素値I(i,j)を格納し、変数A2には
その座標jを代入して、S72に進む。変数α2は、白
抜け領域のカラム方向の開始点における画素値を保存
し、変数A2はカラム方向の開始点の座標を保存する。
【0056】S68において条件を満たさない場合に
は、S69においてj=1か否か、すなわち上端のライ
ンまで達したか否かを判定する。この判定で、白抜け領
域が上端のラインまで連続している場合を判定する。白
抜け領域が上端のラインまで達している場合には、S7
1において変数α2に画素値として0を格納し、変数A
2に開始点の座標として1を格納する。S68で終了点
が検出されず、また上端のラインまで達していない場合
には、S67へ戻り、jから1を減じて1ライン前の同
じカラム位置について、白抜け領域のカラム方向の開始
点か否かを判定する。このような処理を繰り返すことに
よって、カラムiにおける画素値を埋め込むべき画素に
対する白抜け領域のカラム方向の開始点を求めることが
できる。
は、S69においてj=1か否か、すなわち上端のライ
ンまで達したか否かを判定する。この判定で、白抜け領
域が上端のラインまで連続している場合を判定する。白
抜け領域が上端のラインまで達している場合には、S7
1において変数α2に画素値として0を格納し、変数A
2に開始点の座標として1を格納する。S68で終了点
が検出されず、また上端のラインまで達していない場合
には、S67へ戻り、jから1を減じて1ライン前の同
じカラム位置について、白抜け領域のカラム方向の開始
点か否かを判定する。このような処理を繰り返すことに
よって、カラムiにおける画素値を埋め込むべき画素に
対する白抜け領域のカラム方向の開始点を求めることが
できる。
【0057】同様にして、S72〜S77においてカラ
ムiにおける白抜け領域のカラム方向の終了点を求め
る。S72においてjをもとの処理ラインの手前のライ
ン(C−1)にセットし、S73においてjに1を加え
る。S74において、ラインjにおける画像Sの画素値
S(i,j)が1で、次のラインj+1の画像Sの画素
値S(i,j+1)が0か否かを判定する。条件を満た
す場合、S76において変数β2に画像Iにおいて対応
する座標を持つ画素値I(i,j+1)を格納し、変数
B2にはその座標j+1を代入して、S78に進む。変
数β2は、白抜け領域のカラム方向の終了点における画
素値を保存し、変数B2はカラム方向の終了点の座標を
保存する。
ムiにおける白抜け領域のカラム方向の終了点を求め
る。S72においてjをもとの処理ラインの手前のライ
ン(C−1)にセットし、S73においてjに1を加え
る。S74において、ラインjにおける画像Sの画素値
S(i,j)が1で、次のラインj+1の画像Sの画素
値S(i,j+1)が0か否かを判定する。条件を満た
す場合、S76において変数β2に画像Iにおいて対応
する座標を持つ画素値I(i,j+1)を格納し、変数
B2にはその座標j+1を代入して、S78に進む。変
数β2は、白抜け領域のカラム方向の終了点における画
素値を保存し、変数B2はカラム方向の終了点の座標を
保存する。
【0058】S74において条件を満たさない場合に
は、S75において最終ラインまで達したか否かを判定
する。すなわち、白抜け領域が最終ラインまで連続して
いる場合を判定する。白抜け領域が最終ラインまで達し
ている場合には、S77において変数β2に画素値とし
て0を格納し、変数B2に終了点の座標としてjmax を
格納する。S74で終了点が検出されず、最終ラインで
もない場合には、S73へ戻り、jに1を加えて次のラ
インの同じカラムの画素について判定を行なう。このよ
うな処理を繰り返すことによって、カラムiにおける白
抜け領域の終了点を検出することができる。
は、S75において最終ラインまで達したか否かを判定
する。すなわち、白抜け領域が最終ラインまで連続して
いる場合を判定する。白抜け領域が最終ラインまで達し
ている場合には、S77において変数β2に画素値とし
て0を格納し、変数B2に終了点の座標としてjmax を
格納する。S74で終了点が検出されず、最終ラインで
もない場合には、S73へ戻り、jに1を加えて次のラ
インの同じカラムの画素について判定を行なう。このよ
うな処理を繰り返すことによって、カラムiにおける白
抜け領域の終了点を検出することができる。
【0059】次にS78においてラインjを変数Cに保
存しておいた座標に戻し、S79において白抜け領域内
の画素I(i,j)の画素値を計算して埋め込む。画素
I(i,j)の画素値は、次の(2)式によって求める
ことができる。 I(i,j)={(B1−i+B2−A2)α1+(i−A1+B2−A2 )β1+(B1−A1+B2−C)α2+(B1−A1+C−A2)β2}/3 (B1−A1+B2−A2) …(2) この式は、ライン方向の開始点A1、終了点B1、カラ
ム方向の開始点A2、終了点B2の4点からの距離に応
じた画素値を算出するものである。なお、画素値I
(i,j)を定める算出式は(2)式に限らず、白抜け
部分の周辺4画素の値と、注目画素から周辺4画素まで
の距離に依存する算出式であれば任意に定めることがで
きる。
存しておいた座標に戻し、S79において白抜け領域内
の画素I(i,j)の画素値を計算して埋め込む。画素
I(i,j)の画素値は、次の(2)式によって求める
ことができる。 I(i,j)={(B1−i+B2−A2)α1+(i−A1+B2−A2 )β1+(B1−A1+B2−C)α2+(B1−A1+C−A2)β2}/3 (B1−A1+B2−A2) …(2) この式は、ライン方向の開始点A1、終了点B1、カラ
ム方向の開始点A2、終了点B2の4点からの距離に応
じた画素値を算出するものである。なお、画素値I
(i,j)を定める算出式は(2)式に限らず、白抜け
部分の周辺4画素の値と、注目画素から周辺4画素まで
の距離に依存する算出式であれば任意に定めることがで
きる。
【0060】S80においてi=B1−1か否か、すな
わち白抜け領域のライン方向の終了点の手前の画素まで
埋め込み処理を終了したか否かを判定し、まだ未処理の
画素が残っている場合にはS66へ戻り、同様の処理を
i=B1−1となるまで繰り返す。i=B1−1となっ
たらS81へ進む。
わち白抜け領域のライン方向の終了点の手前の画素まで
埋め込み処理を終了したか否かを判定し、まだ未処理の
画素が残っている場合にはS66へ戻り、同様の処理を
i=B1−1となるまで繰り返す。i=B1−1となっ
たらS81へ進む。
【0061】S81では処理ラインの右端まで処理を終
えたか否かを判定し、右端まで達していない場合には他
の白抜け領域を検出すべくS53に戻り、処理を繰り返
す。処理ラインの右端の画素まで処理を終えたら、S8
2において最終ラインまで処理を終えたか否かを判定
し、最終ラインに達していない場合にはS52に戻って
同様の処理を最終ラインの処理がすべて終了するまで行
なう。最終ラインの処理が終了すると、画像処理部4の
処理を終了する。
えたか否かを判定し、右端まで達していない場合には他
の白抜け領域を検出すべくS53に戻り、処理を繰り返
す。処理ラインの右端の画素まで処理を終えたら、S8
2において最終ラインまで処理を終えたか否かを判定
し、最終ラインに達していない場合にはS52に戻って
同様の処理を最終ラインの処理がすべて終了するまで行
なう。最終ラインの処理が終了すると、画像処理部4の
処理を終了する。
【0062】図13は、画像処理部の第3の動作例にお
いて分離された画像Iの画素値の具体例の説明図、図1
4は、同じく画像Sの具体例の説明図、図15は、同じ
く画像Iの一部の埋め込み処理前後の画素値の変化の説
明図である。この例では説明を簡単にするために6×8
画素で構成される画像を分離した場合を示しており、画
像Pは省略した。それぞれ便宜上、1〜6のカラム番号
と1〜8のライン番号を付した。なお、図13、図14
において‘*’で示している画素は、説明に関係ないの
でその画素値の記載を省略している。また、図15で
は、図13、図14に一点鎖線で囲んだライン3のカラ
ム2〜5の部分のみについて、埋め込み処理前(図15
(A))と埋め込み処理後(図15(B))の画素値を
示している。
いて分離された画像Iの画素値の具体例の説明図、図1
4は、同じく画像Sの具体例の説明図、図15は、同じ
く画像Iの一部の埋め込み処理前後の画素値の変化の説
明図である。この例では説明を簡単にするために6×8
画素で構成される画像を分離した場合を示しており、画
像Pは省略した。それぞれ便宜上、1〜6のカラム番号
と1〜8のライン番号を付した。なお、図13、図14
において‘*’で示している画素は、説明に関係ないの
でその画素値の記載を省略している。また、図15で
は、図13、図14に一点鎖線で囲んだライン3のカラ
ム2〜5の部分のみについて、埋め込み処理前(図15
(A))と埋め込み処理後(図15(B))の画素値を
示している。
【0063】以下、図10〜図12に示したフローチャ
ートに従って具体例における動作を説明してゆく。い
ま、ライン3が処理ラインであるものとする。S53で
i=1となるとS54においてS(1,3)=0,S
(2,3)=1となり、白抜け領域のライン方向の開始
点が検出される。そのため、S57においてα1=I
(1,3)=20、A1=1、C=3が格納される。
ートに従って具体例における動作を説明してゆく。い
ま、ライン3が処理ラインであるものとする。S53で
i=1となるとS54においてS(1,3)=0,S
(2,3)=1となり、白抜け領域のライン方向の開始
点が検出される。そのため、S57においてα1=I
(1,3)=20、A1=1、C=3が格納される。
【0064】次にS60でi=5となると、S61にお
いてS(5,3)=1,S(6,3)=0となり、白抜
け領域のライン方向の終了点が検出される。そのため、
S63においてβ1=I(6,3)=50、B1=6が
格納される。
いてS(5,3)=1,S(6,3)=0となり、白抜
け領域のライン方向の終了点が検出される。そのため、
S63においてβ1=I(6,3)=50、B1=6が
格納される。
【0065】S65でi=1とし、S66でi=1+1
=2とした後、S67でjを1減じて2とする。S68
において、S(2,2)=0、S(2,3)=1である
からカラム方向の開始点が検出され、S70においてα
2=I(2,2)=20、A2=2が格納される。
=2とした後、S67でjを1減じて2とする。S68
において、S(2,2)=0、S(2,3)=1である
からカラム方向の開始点が検出され、S70においてα
2=I(2,2)=20、A2=2が格納される。
【0066】続いてS72でj=3−1=2とし、S7
3で1加算してj=3とした後、S74の条件を判定す
るが、条件を満足しない。S73でjの値の加算が繰り
返され、j=7となるとS(2,7)=1、S(2,
8)=0となってS74の条件を満足する。すなわちカ
ラム方向の終了点が検出された。S76においてβ2=
I(2,8)=20、B2=8が格納される。
3で1加算してj=3とした後、S74の条件を判定す
るが、条件を満足しない。S73でjの値の加算が繰り
返され、j=7となるとS(2,7)=1、S(2,
8)=0となってS74の条件を満足する。すなわちカ
ラム方向の終了点が検出された。S76においてβ2=
I(2,8)=20、B2=8が格納される。
【0067】このようにして、白抜け領域のライン方向
の開始点A1=1、その画素値α1=20、ライン方向
の終了点B1=6、その画素値β1=50が得られ、さ
らにその白抜け領域内の画素(2,3)について、カラ
ム方向の開始点A2=2、その画素値α2=20、カラ
ム方向の終了点B2=8、その画素値β2=20が得ら
れた。S78においてj=C=3に戻した後、S79に
おいて上述の(2)式に従ってI(2,3)を計算する
と、 I(2,3)={(6−2+8−2)×20+(2−1
+8−2)×50+(6−1+8−3)×20+(6−
1+3−2)×20}/{3×(6−1+8−2)}≒
26 となる。この値をI(2,3)として図15(B)に示
すように埋め込む。
の開始点A1=1、その画素値α1=20、ライン方向
の終了点B1=6、その画素値β1=50が得られ、さ
らにその白抜け領域内の画素(2,3)について、カラ
ム方向の開始点A2=2、その画素値α2=20、カラ
ム方向の終了点B2=8、その画素値β2=20が得ら
れた。S78においてj=C=3に戻した後、S79に
おいて上述の(2)式に従ってI(2,3)を計算する
と、 I(2,3)={(6−2+8−2)×20+(2−1
+8−2)×50+(6−1+8−3)×20+(6−
1+3−2)×20}/{3×(6−1+8−2)}≒
26 となる。この値をI(2,3)として図15(B)に示
すように埋め込む。
【0068】S80でiがライン3の右端まで達してい
ないのでS66に戻り、iに1を加えてi=3とする。
i=3のカラムにおいて同様にして白抜け領域のカラム
方向の開始点および終了点を求めると、カラム方向の開
始点A2=1、その画素値α2=20、カラム方向の終
了点B2=5、その画素値β2=90が得られる。
(2)式より、I(3,3)=44と求められる。同様
にしてI(4,3)=53、I(5,3)=44と求め
られ、I(2,3)〜I(5,3)の値は図15(B)
に示すように変換される。
ないのでS66に戻り、iに1を加えてi=3とする。
i=3のカラムにおいて同様にして白抜け領域のカラム
方向の開始点および終了点を求めると、カラム方向の開
始点A2=1、その画素値α2=20、カラム方向の終
了点B2=5、その画素値β2=90が得られる。
(2)式より、I(3,3)=44と求められる。同様
にしてI(4,3)=53、I(5,3)=44と求め
られ、I(2,3)〜I(5,3)の値は図15(B)
に示すように変換される。
【0069】上述の例ではライン3について説明した
が、他のラインについても同様の埋め込み処理が行なわ
れる。このようにして変換された画像Iは、文字や線画
として抽出されて白抜け状態であった画素が、i座標方
向だけではなくj座標方向の画素値の変化にも対応した
値によって埋められている。そのため、変換後の画像I
では文字や線画の存在していた部分が2次元的に滑らか
に変化するように埋められており、高周波成分の増加を
防いでいる。そのため、例えば2次元離散コサイン変換
等の2次元の周波数成分を符号化するような符号化方式
を採用して符号化を行なった場合でも、符号量を低減
し、復号された画像の品質の低下を防止することができ
る。
が、他のラインについても同様の埋め込み処理が行なわ
れる。このようにして変換された画像Iは、文字や線画
として抽出されて白抜け状態であった画素が、i座標方
向だけではなくj座標方向の画素値の変化にも対応した
値によって埋められている。そのため、変換後の画像I
では文字や線画の存在していた部分が2次元的に滑らか
に変化するように埋められており、高周波成分の増加を
防いでいる。そのため、例えば2次元離散コサイン変換
等の2次元の周波数成分を符号化するような符号化方式
を採用して符号化を行なった場合でも、符号量を低減
し、復号された画像の品質の低下を防止することができ
る。
【0070】もちろん、文字や線画として分離されて白
抜けとなっている部分が埋められているので、画像Iを
低解像度に変換後、元の解像度に再変換して文字や線画
と合成しても、文字や線画のエッジ部分に白抜けは発生
せず、良好な合成画像を得ることができる。このとき、
i座標方向だけではなくj座標方向に対する最近周辺画
素の値も参照して変換後の画素値を決めているために、
文字部との合成の際にはi座標方向に対しても不具合を
生じることはない。
抜けとなっている部分が埋められているので、画像Iを
低解像度に変換後、元の解像度に再変換して文字や線画
と合成しても、文字や線画のエッジ部分に白抜けは発生
せず、良好な合成画像を得ることができる。このとき、
i座標方向だけではなくj座標方向に対する最近周辺画
素の値も参照して変換後の画素値を決めているために、
文字部との合成の際にはi座標方向に対しても不具合を
生じることはない。
【0071】なお、上述の説明においては、画像分離部
2において入力された画像を画像I、画像S、画像Pの
3つに分離した。例えばカラー画像であれば例えばR,
G,BやC,M,Y等の各色座標系に応じた各色軸毎に
3つの画像に分離すればよい。ここで、画像Sは2値の
画像、画像Pは濃度を有する画像として文字や線画部分
を分離したが、本発明はこれに限らない。画像Sと画像
Pを別の画像とせず、濃度を有する1つの文字・線画画
像として分離してもよい。この場合、上述の説明におい
て画像Sを参照して値を比較する際には、0かそれ以外
の値かを調べればよい。また、さらに入力画像の分離の
際に属性データを生成し、生成した属性データも保存す
るように構成してもよい。
2において入力された画像を画像I、画像S、画像Pの
3つに分離した。例えばカラー画像であれば例えばR,
G,BやC,M,Y等の各色座標系に応じた各色軸毎に
3つの画像に分離すればよい。ここで、画像Sは2値の
画像、画像Pは濃度を有する画像として文字や線画部分
を分離したが、本発明はこれに限らない。画像Sと画像
Pを別の画像とせず、濃度を有する1つの文字・線画画
像として分離してもよい。この場合、上述の説明におい
て画像Sを参照して値を比較する際には、0かそれ以外
の値かを調べればよい。また、さらに入力画像の分離の
際に属性データを生成し、生成した属性データも保存す
るように構成してもよい。
【0072】
【発明の効果】以上の説明から明らかなように、本発明
によれば、入力された画像情報を、文字または線画情報
からなる第1の画像情報と、文字または線画情報以外の
情報からなる第2の画像情報とに分離した際に、第2の
画像情報中の第1の画像情報に対応して削除されて白抜
けとなった箇所を、当該箇所の周囲の画素を参照して画
像情報を埋め込む。これによって、第2の画像情報を低
解像度で保持し、画像出力時に元の解像度へ変換し、第
1の画像情報と合成した場合でも、イメージ上に書かれ
た文字の輪郭部分での白抜けはなくなり、良好な合成画
像を得ることができる。
によれば、入力された画像情報を、文字または線画情報
からなる第1の画像情報と、文字または線画情報以外の
情報からなる第2の画像情報とに分離した際に、第2の
画像情報中の第1の画像情報に対応して削除されて白抜
けとなった箇所を、当該箇所の周囲の画素を参照して画
像情報を埋め込む。これによって、第2の画像情報を低
解像度で保持し、画像出力時に元の解像度へ変換し、第
1の画像情報と合成した場合でも、イメージ上に書かれ
た文字の輪郭部分での白抜けはなくなり、良好な合成画
像を得ることができる。
【0073】また、イメージ上に細かい文字や線画が多
く書かれている場合でも、第2の画像情報中での文字や
線画が存在していた領域の白抜けがなくなり、なるべく
平坦な画素値を有する画像となるので、符号化した際に
符号量を低減することができ、復号後の画質の低下を抑
えることができる。例えばJPEGベースライン方式等
の離散コサイン変換を用いた可変長且つ非可逆データ圧
縮方式を用いた場合でも、圧縮率の低下や、伸長後の画
像品質の劣化を防止することが可能となるという効果が
ある。
く書かれている場合でも、第2の画像情報中での文字や
線画が存在していた領域の白抜けがなくなり、なるべく
平坦な画素値を有する画像となるので、符号化した際に
符号量を低減することができ、復号後の画質の低下を抑
えることができる。例えばJPEGベースライン方式等
の離散コサイン変換を用いた可変長且つ非可逆データ圧
縮方式を用いた場合でも、圧縮率の低下や、伸長後の画
像品質の劣化を防止することが可能となるという効果が
ある。
【図1】 本発明の画像処理装置の実施の一形態を示す
ブロック図である。
ブロック図である。
【図2】 画像データの説明図である。
【図3】 画像処理部の第1の動作例を示すフローチャ
ートである。
ートである。
【図4】 画像処理部の第1の動作例を示すフローチャ
ート(続き)である。
ート(続き)である。
【図5】 入力画像および分離された各画像の具体例の
説明図である。
説明図である。
【図6】 分離された各画像および処理後の画像Iにお
ける画素値の具体例の説明図である。
ける画素値の具体例の説明図である。
【図7】 画像処理部の第2の動作例を示すフローチャ
ートである。
ートである。
【図8】 画像処理部の第2の動作例を示すフローチャ
ート(続き)である。
ート(続き)である。
【図9】 画像処理部の第2の動作例における画像Iの
画素値の具体例の説明図である。
画素値の具体例の説明図である。
【図10】 画像処理部の第3の動作例を示すフローチ
ャートである。
ャートである。
【図11】 画像処理部の第3の動作例を示すフローチ
ャート(続き)である。
ャート(続き)である。
【図12】 画像処理部の第3の動作例を示すフローチ
ャート(続き)である。
ャート(続き)である。
【図13】 画像処理部の第3の動作例において分離さ
れた画像Iの画素値の具体例の説明図である。
れた画像Iの画素値の具体例の説明図である。
【図14】 画像処理部の第3の動作例において分離さ
れた画像Sの具体例の説明図である。
れた画像Sの具体例の説明図である。
【図15】 画像処理部の第3の動作例において分離さ
れた画像Iの一部の埋め込み処理前後の画素値の変化の
説明図である。
れた画像Iの一部の埋め込み処理前後の画素値の変化の
説明図である。
【図16】 従来の画像処理装置における画像分離処理
の具体例の説明図である。
の具体例の説明図である。
1…画像入力部、2…画像分離部、3,5〜7…画像記
憶部、4…画像処理部。
憶部、4…画像処理部。
Claims (3)
- 【請求項1】 入力された画像情報を文字または線画情
報からなる第1の画像情報と文字または線画情報以外の
情報からなる第2の画像情報に分離する分離手段と、該
分離手段により分離された前記第2の画像情報について
前記第1の画像情報として分離された領域の一部または
全部に対し当該領域の周囲の画素を参照して画像情報を
埋め込む画像情報埋め込み手段を有することを特徴とす
る画像処理装置。 - 【請求項2】 前記画像情報埋め込み手段は、前記領域
の注目画素における縦方向または横方向における同一ラ
インに位置する前記周辺画素を参照して該周辺画素の画
素値に基づいて前記注目画素の画素値を決定することを
特徴とする請求項1に記載の画像処理装置。 - 【請求項3】 前記画像情報埋め込み手段は、前記画素
の注目画素に対する前記周辺画素の距離および前記周辺
画素の画素値に基づいて前記注目画素の画素値を決定す
ることを特徴とする請求項1に記載の画像処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9185315A JPH1132206A (ja) | 1997-07-10 | 1997-07-10 | 画像処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9185315A JPH1132206A (ja) | 1997-07-10 | 1997-07-10 | 画像処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1132206A true JPH1132206A (ja) | 1999-02-02 |
Family
ID=16168700
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9185315A Pending JPH1132206A (ja) | 1997-07-10 | 1997-07-10 | 画像処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1132206A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100534170B1 (ko) * | 2001-02-13 | 2005-12-06 | 인터내셔널 비지네스 머신즈 코포레이션 | 화상 영역 조작 중에 노출된 픽셀의 자동 컬러링 |
| US7454060B2 (en) | 2000-06-09 | 2008-11-18 | Minolta Co., Ltd. | Image processor for character recognition |
| US8014620B2 (en) | 2006-08-24 | 2011-09-06 | Fuji Xerox Co., Ltd. | Image processing system, image compression system, image editing system, computer readable medium, computer data signal and image processing apparatus |
-
1997
- 1997-07-10 JP JP9185315A patent/JPH1132206A/ja active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7454060B2 (en) | 2000-06-09 | 2008-11-18 | Minolta Co., Ltd. | Image processor for character recognition |
| KR100534170B1 (ko) * | 2001-02-13 | 2005-12-06 | 인터내셔널 비지네스 머신즈 코포레이션 | 화상 영역 조작 중에 노출된 픽셀의 자동 컬러링 |
| US7457462B2 (en) | 2001-02-13 | 2008-11-25 | International Business Machines Corporation | System and method for modifying images having an ability to assign color intensity values to pixels exposed during image manipulation operations |
| US7676086B2 (en) | 2001-02-13 | 2010-03-09 | International Business Machines Corporation | Automatic coloring of pixels exposed during manipulation of image regions |
| US8014620B2 (en) | 2006-08-24 | 2011-09-06 | Fuji Xerox Co., Ltd. | Image processing system, image compression system, image editing system, computer readable medium, computer data signal and image processing apparatus |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6192155B1 (en) | Systems and methods for reducing boundary artifacts in hybrid compression | |
| US6549576B1 (en) | Motion vector detecting method and apparatus | |
| AU715514B2 (en) | Method and apparatus for encoding and decoding an image | |
| JP4522199B2 (ja) | 画像符号化装置及び画像処理装置及びそれらの制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 | |
| JP5939154B2 (ja) | 画像処理装置およびコンピュータプログラム | |
| JP2004260327A (ja) | 画像圧縮装置 | |
| JPH10164619A (ja) | 符号化装置、復号化装置、記録媒体、符号化方法、および、復号化方法 | |
| US6728412B1 (en) | Method and apparatus for on-the-fly image coding | |
| US6738169B1 (en) | Image processing apparatus and method | |
| US7567723B2 (en) | Resolution changing method and apparatus | |
| JPH1132206A (ja) | 画像処理装置 | |
| JP2000184183A (ja) | 圧縮された画像デ―タの電子的ペ―スト方法、及びデジタル画像処理方法 | |
| JP3320282B2 (ja) | 多値画像処理装置 | |
| JPH08140096A (ja) | 画像信号符号化の方法及び画像信号符号化装置 | |
| JP2000350040A (ja) | 画像処理装置および画像処理方法ならびに画像処理プログラムを記録した記録媒体 | |
| US7421131B2 (en) | System and method for block truncation-type compressed domain image processing | |
| JP3448601B2 (ja) | 多階調画像データ圧縮・復元方法 | |
| KR100495001B1 (ko) | 이미지 압축 부호화 방법 및 시스템 | |
| JP5597028B2 (ja) | 画像復号装置及びその制御方法、並びにプログラム及びコンピュータ可読記憶媒体 | |
| JPH07262351A (ja) | 画像処理装置及びその制御方法 | |
| JP4696738B2 (ja) | 画像データの圧縮方法および装置並びに擬似階調画像の復元方法 | |
| JP4218116B2 (ja) | 伝送装置、伝送方法、受信装置および受信方法 | |
| JPH11272843A (ja) | カラー画像の符号化装置およびその方法並びにカラー画像の復号化装置およびその方法 | |
| JP3263218B2 (ja) | 画情報データ圧縮再生装置 | |
| JP3054315B2 (ja) | 画像処理方法及びその装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20031205 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20031208 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040810 |