JPH05314251A - 画像通信装置 - Google Patents
画像通信装置Info
- Publication number
- JPH05314251A JPH05314251A JP4114834A JP11483492A JPH05314251A JP H05314251 A JPH05314251 A JP H05314251A JP 4114834 A JP4114834 A JP 4114834A JP 11483492 A JP11483492 A JP 11483492A JP H05314251 A JPH05314251 A JP H05314251A
- Authority
- JP
- Japan
- Prior art keywords
- image
- contour
- data
- vector
- memory
- 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
Landscapes
- Image Processing (AREA)
- Facsimiles In General (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Analysis (AREA)
Abstract
(57)【要約】
【目的】 本発明は画像を輪郭ベクトルデータとして送
信することにより、通信にかかる時間を短縮できるとと
もに、送信側又は受信側において、輪郭ベクトルデータ
に対し種々の変換処理が可能となり高画質な画像を通信
することができる画像通信装置を提供する。 【構成】 イメージスキャナー100から出力された2
値の画像データに基づき輪郭抽出回路700は輪郭ベク
トルデータを抽出する。抽出された輪郭ベクトルデータ
に対し、平滑化・座標変換回路900は平滑化及び変倍
処理を実行し、処理された輪郭ベクトルデータはCCU
1300から相手装置へ送信される。
信することにより、通信にかかる時間を短縮できるとと
もに、送信側又は受信側において、輪郭ベクトルデータ
に対し種々の変換処理が可能となり高画質な画像を通信
することができる画像通信装置を提供する。 【構成】 イメージスキャナー100から出力された2
値の画像データに基づき輪郭抽出回路700は輪郭ベク
トルデータを抽出する。抽出された輪郭ベクトルデータ
に対し、平滑化・座標変換回路900は平滑化及び変倍
処理を実行し、処理された輪郭ベクトルデータはCCU
1300から相手装置へ送信される。
Description
【0001】
【産業上の利用分野】本発明は画像通信装置、詳しくは
画像データを入力し、相手装置へ画像を送信する画像通
信装置に関するものである。
画像データを入力し、相手装置へ画像を送信する画像通
信装置に関するものである。
【0002】
【従来の技術】従来、ファクシミリ装置等の画像通信装
置では、画像をイメージスキャナで読み取り、ラスタ走
査された画像の各画素を白か黒かの2値データにより表
現している。また2値ラスタ画像データを通信する際に
は、2値ラスタ画像をMH,MR,MMR等の方式で符
号化圧縮を行い送受信を行っていた。従って、従来のフ
ァクシミリ装置では、画像の内部表現としては、画像デ
ータを2値ラスタ画素データの集合として扱い、G3フ
ァイン(主走査8pel/mm、副走査7.7line/mm)で読
み込んだ画像を、標準(主走査8pel/mm、副走査3.8
5line/mm )の記録解像度しか持たない受信機に送信す
る場合のように送信側での読み込み画像と受信側の解像
度が異なる場合や、B4サイズの受信画像をA4の記録
紙に出力するように受信画像と出力画像の紙サイズが異
なる場合にはMH,MR,MMR符号化された画像デー
タを一旦2値ラスタ画像データに変換し、単純な画素毎
の2度書き(同じ画素を2度以上続けること)や間引き
処理により拡大及び縮小等の変倍処理を行っていた。
置では、画像をイメージスキャナで読み取り、ラスタ走
査された画像の各画素を白か黒かの2値データにより表
現している。また2値ラスタ画像データを通信する際に
は、2値ラスタ画像をMH,MR,MMR等の方式で符
号化圧縮を行い送受信を行っていた。従って、従来のフ
ァクシミリ装置では、画像の内部表現としては、画像デ
ータを2値ラスタ画素データの集合として扱い、G3フ
ァイン(主走査8pel/mm、副走査7.7line/mm)で読
み込んだ画像を、標準(主走査8pel/mm、副走査3.8
5line/mm )の記録解像度しか持たない受信機に送信す
る場合のように送信側での読み込み画像と受信側の解像
度が異なる場合や、B4サイズの受信画像をA4の記録
紙に出力するように受信画像と出力画像の紙サイズが異
なる場合にはMH,MR,MMR符号化された画像デー
タを一旦2値ラスタ画像データに変換し、単純な画素毎
の2度書き(同じ画素を2度以上続けること)や間引き
処理により拡大及び縮小等の変倍処理を行っていた。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来例では、200dpiの画像を400dpiの記録紙
に記録する等、解像度の低い画像データを解像度の高い
ものに記録(内部的には画像の変倍処理)する際には、
単純な画素毎の重複処理を行うため斜め線の輪郭線のギ
ザギザが目だったり、G3ファインの解像度の画像をG
4規格の主走査,副走査共に200dpiの解像度の画
像に変換する200%近傍の解像度変換では、画素毎の
重複間引き処理による解像度変換を行うため画像に歪み
が生じる問題があった。
来例では、200dpiの画像を400dpiの記録紙
に記録する等、解像度の低い画像データを解像度の高い
ものに記録(内部的には画像の変倍処理)する際には、
単純な画素毎の重複処理を行うため斜め線の輪郭線のギ
ザギザが目だったり、G3ファインの解像度の画像をG
4規格の主走査,副走査共に200dpiの解像度の画
像に変換する200%近傍の解像度変換では、画素毎の
重複間引き処理による解像度変換を行うため画像に歪み
が生じる問題があった。
【0004】
【課題を解決するための手段及び作用】本発明は上述し
た従来技術の欠点を除去するものであり、画像を輪郭ベ
クトルデータとして送信することにより通信にかかる時
間を短縮できるとともに送信側又は受信側において輪郭
ベクトルデータに対し種々の変換処理が可能となり、高
画質な画像を通信することができる画像通信装置を提供
するものである。
た従来技術の欠点を除去するものであり、画像を輪郭ベ
クトルデータとして送信することにより通信にかかる時
間を短縮できるとともに送信側又は受信側において輪郭
ベクトルデータに対し種々の変換処理が可能となり、高
画質な画像を通信することができる画像通信装置を提供
するものである。
【0005】本発明は上述した目的を達成するため、画
像を読み取りデジタル多値信号を出力する画像読み取り
手段と、前記読み取り手段からのデジタル多値データを
2値化する2値化手段と、前記2値化手段によって2値
化された2値画像から画像のエッジに沿った輪郭ベクト
ルデータを抽出する抽出手段と、前記抽出された輪郭ベ
クトルデータを送信する送信手段とを備える。
像を読み取りデジタル多値信号を出力する画像読み取り
手段と、前記読み取り手段からのデジタル多値データを
2値化する2値化手段と、前記2値化手段によって2値
化された2値画像から画像のエッジに沿った輪郭ベクト
ルデータを抽出する抽出手段と、前記抽出された輪郭ベ
クトルデータを送信する送信手段とを備える。
【0006】かかる本発明において、2値化手段は画像
読み取り手段からのデジタル多値データを2値化し、抽
出手段は2値化された2値画像から画像のエッジに沿っ
た輪郭ベクトルデータを抽出し、送信手段は抽出された
輪郭ベクトルデータを送信する。
読み取り手段からのデジタル多値データを2値化し、抽
出手段は2値化された2値画像から画像のエッジに沿っ
た輪郭ベクトルデータを抽出し、送信手段は抽出された
輪郭ベクトルデータを送信する。
【0007】
【実施例】以下、添付図面に従って本発明に係る実施例
を詳細に説明する。
を詳細に説明する。
【0008】<装置構成の説明>図1は実施例の画像処
理通信装置のブロック構成図を示している。図示におい
て、100はイメージ・スキャナであって、CCD等の
光電変換デバイスによりラスタ走査順に読み込まれた画
像データをA/D変換し、さらにA/D変換されたデジ
タル多値データを2値化回路により2値化し、2値ラス
タ画像データとしてバスA1500に出力する。バスA
に出力された2値ラスタ画像データは、一旦、メモリA
300に蓄積される。
理通信装置のブロック構成図を示している。図示におい
て、100はイメージ・スキャナであって、CCD等の
光電変換デバイスによりラスタ走査順に読み込まれた画
像データをA/D変換し、さらにA/D変換されたデジ
タル多値データを2値化回路により2値化し、2値ラス
タ画像データとしてバスA1500に出力する。バスA
に出力された2値ラスタ画像データは、一旦、メモリA
300に蓄積される。
【0009】200は像域分離回路で、イメージ・スキ
ャナ100より入力されたラスタ走査の多値データ(例
えば、1画素256階調の場合、8bit/pixe
l)を入力し、中間調領域と文字・線画領域を分離し画
像エリア毎の像域分離テーブル(詳細は後述する)をメ
モリA300に作成する。尚、読み取り画像にどの部分
が文字・線画等の2値画像であって、どの部分が中間調
画像であるのかは、入力した多値データの値を調べるこ
とで判明する。すなわち、一般に、2値画像は、白(最
低濃度)と黒(最高濃度)の2つの状態に濃度が近接し
ているため、それら2つの状態が隣合う領域(エッジ)
における濃度変化は急峻となる。これに対し、中間調画
像はその濃度が徐々に変化するので、その濃度変化はな
だらかになる。従って、この濃度変化を調べれば、注目
している画素位置が2値画像のエッジにあるのか、中間
調画像のエッジにあるのかが判明する。尚、こうした文
字・線画等の2値画像と中間調画像とを区別する技術
は、既に公知であり、これ以外の処理でもって実現して
も良い。また、読み取り原稿の種類等をオペレータが指
示するようにしても良い。
ャナ100より入力されたラスタ走査の多値データ(例
えば、1画素256階調の場合、8bit/pixe
l)を入力し、中間調領域と文字・線画領域を分離し画
像エリア毎の像域分離テーブル(詳細は後述する)をメ
モリA300に作成する。尚、読み取り画像にどの部分
が文字・線画等の2値画像であって、どの部分が中間調
画像であるのかは、入力した多値データの値を調べるこ
とで判明する。すなわち、一般に、2値画像は、白(最
低濃度)と黒(最高濃度)の2つの状態に濃度が近接し
ているため、それら2つの状態が隣合う領域(エッジ)
における濃度変化は急峻となる。これに対し、中間調画
像はその濃度が徐々に変化するので、その濃度変化はな
だらかになる。従って、この濃度変化を調べれば、注目
している画素位置が2値画像のエッジにあるのか、中間
調画像のエッジにあるのかが判明する。尚、こうした文
字・線画等の2値画像と中間調画像とを区別する技術
は、既に公知であり、これ以外の処理でもって実現して
も良い。また、読み取り原稿の種類等をオペレータが指
示するようにしても良い。
【0010】700は輪郭抽出回路でメモリA300に
蓄積された2値ラスタ画像データ及び必要ならば像域分
離のための像域分離テーブルを読み込み、メモリB11
00に輪郭座標データ列を作成する。
蓄積された2値ラスタ画像データ及び必要ならば像域分
離のための像域分離テーブルを読み込み、メモリB11
00に輪郭座標データ列を作成する。
【0011】800は符号・復号化回路で、符号処理を
行う場合は、メモリA300に蓄積された2値ラスタ画
像データを読み込み、MH,MR,MMR等の2値画像
の符号化圧縮を行いメモリB1100に符号化画像デー
タを蓄積する。また復号化処理を行う場合は、メモリB
1100に蓄積された、符号化画像データを入力し、メ
モリA300に復号化された2値ラスタ画像データを出
力する。
行う場合は、メモリA300に蓄積された2値ラスタ画
像データを読み込み、MH,MR,MMR等の2値画像
の符号化圧縮を行いメモリB1100に符号化画像デー
タを蓄積する。また復号化処理を行う場合は、メモリB
1100に蓄積された、符号化画像データを入力し、メ
モリA300に復号化された2値ラスタ画像データを出
力する。
【0012】900は平滑化・座標変換回路で、メモリ
B1100に蓄積された輪郭座標データ列を入力し、種
々の座標変換(変倍率の乗算,x座標y座標交換)及び
拡大変倍時の輪郭のギザギザを平滑化する平滑化処理を
行い、メモリB1100に変換後の輪郭座標データ列を
作成する。
B1100に蓄積された輪郭座標データ列を入力し、種
々の座標変換(変倍率の乗算,x座標y座標交換)及び
拡大変倍時の輪郭のギザギザを平滑化する平滑化処理を
行い、メモリB1100に変換後の輪郭座標データ列を
作成する。
【0013】1300は通信制御回路(CCU)で、メ
モリB1100に蓄積された画像データ(輪郭座標デー
タ列、または画像符号化データ、及び必要ならば領域分
離テーブル)を入力し、通信回線に画像データを出力す
る。また通信回線より受信された画像データをメモリB
1100に蓄積する。
モリB1100に蓄積された画像データ(輪郭座標デー
タ列、または画像符号化データ、及び必要ならば領域分
離テーブル)を入力し、通信回線に画像データを出力す
る。また通信回線より受信された画像データをメモリB
1100に蓄積する。
【0014】1000は2値画像再生成回路で、メモリ
B1100に蓄積された輪郭座標データ列を入力し、そ
の輪郭座標データに基づいてメモリA300に輪郭線を
描画して2値ラスタ画像(ビットマップイメージ)を作
成する。
B1100に蓄積された輪郭座標データ列を入力し、そ
の輪郭座標データに基づいてメモリA300に輪郭線を
描画して2値ラスタ画像(ビットマップイメージ)を作
成する。
【0015】400は中塗り回路で、メモリA300に
作成された輪郭線を描画した2値ラスタ画像(ビットマ
ップイメージ)を入力して、輪郭閉領域の中を中塗り
し、それをFIFOメモリ500等に出力する。
作成された輪郭線を描画した2値ラスタ画像(ビットマ
ップイメージ)を入力して、輪郭閉領域の中を中塗り
し、それをFIFOメモリ500等に出力する。
【0016】FIFOメモリ500はプリンタとの水平
同期,垂直同期を取り直しプリンタ600に2値ラスタ
画像データを出力する。
同期,垂直同期を取り直しプリンタ600に2値ラスタ
画像データを出力する。
【0017】600はLBP等のプリンタでFIFO5
00で同期を取り直した2値ラスタ画像データを入力し
記録紙に画像データを記録する。
00で同期を取り直した2値ラスタ画像データを入力し
記録紙に画像データを記録する。
【0018】2000は送信、受信、コピーの選択、受
信先のダイヤル情報を入力する操作部である。
信先のダイヤル情報を入力する操作部である。
【0019】<処理内容の説明>次に、本実施例におけ
る画像処理通信装置の画像データの流れ、すなわち、送
信動作を図2〜4、受信動作を図6〜7、コピー動作を
図8のフローチャートを用いてそれぞれ詳細に説明す
る。
る画像処理通信装置の画像データの流れ、すなわち、送
信動作を図2〜4、受信動作を図6〜7、コピー動作を
図8のフローチャートを用いてそれぞれ詳細に説明す
る。
【0020】<送信処理の説明>先ず、送信動作の処理
手順を図2〜4のフローチャートを用いて説明する。
手順を図2〜4のフローチャートを用いて説明する。
【0021】尚、このフローには操作部2000で送信
動作が選択され受信側の装置に関するダイヤル情報が入
力された際に実行される。そしてこのダイヤル情報はメ
モリーA300に格納される。
動作が選択され受信側の装置に関するダイヤル情報が入
力された際に実行される。そしてこのダイヤル情報はメ
モリーA300に格納される。
【0022】ステップS1での画像読み取りでは、イメ
ージスキャナ100により、画像を2値ラスタ画像デー
タとして読みとり、メモリA300に転送し蓄積する。
またこのとき即時送信以外、つまり画像データの送信を
即座に実行しない場合は、メモリの有効活用の為、ステ
ップS9,S10,S11に示すようにメモリA300
に蓄積された画像データを符号化・復号化回路800に
より符号化圧縮を行いメモリB1100に画像ファイル
として蓄積しておき、送信時に復号化処理を行いメモリ
A300に2値ラスタ画像として展開する。また、2値
ラスタ画像の蓄積と同時にイメージスキャナ100より
の多値ラスタ画像データを像域分離回路200に出力す
る。像域分離回路200では画像の中で文字・線画領域
か中間調領域かをブロック(所定領域)毎に判定し、メ
モリA300に画像領域の性質を示す領域判定テーブル
を作成しておく。もちろん蓄積された符号化画像データ
ファイルと、領域判定テーブルファイルは同じファイル
属性とし、必要時に取り出す。
ージスキャナ100により、画像を2値ラスタ画像デー
タとして読みとり、メモリA300に転送し蓄積する。
またこのとき即時送信以外、つまり画像データの送信を
即座に実行しない場合は、メモリの有効活用の為、ステ
ップS9,S10,S11に示すようにメモリA300
に蓄積された画像データを符号化・復号化回路800に
より符号化圧縮を行いメモリB1100に画像ファイル
として蓄積しておき、送信時に復号化処理を行いメモリ
A300に2値ラスタ画像として展開する。また、2値
ラスタ画像の蓄積と同時にイメージスキャナ100より
の多値ラスタ画像データを像域分離回路200に出力す
る。像域分離回路200では画像の中で文字・線画領域
か中間調領域かをブロック(所定領域)毎に判定し、メ
モリA300に画像領域の性質を示す領域判定テーブル
を作成しておく。もちろん蓄積された符号化画像データ
ファイルと、領域判定テーブルファイルは同じファイル
属性とし、必要時に取り出す。
【0023】またこのとき2値化時に疑似中間調処理を
するかどうかの選択ボタン(不図示の操作部に設けられ
たハーフトーンボタン)押下の如何により、疑似中間調
を用いているかどうか明かな場合は、画像領域ごとの像
域分離テーブルは作成せず、疑似中間調か文字・線画か
の1ページの画像属性のみを記録しておけばよい。
するかどうかの選択ボタン(不図示の操作部に設けられ
たハーフトーンボタン)押下の如何により、疑似中間調
を用いているかどうか明かな場合は、画像領域ごとの像
域分離テーブルは作成せず、疑似中間調か文字・線画か
の1ページの画像属性のみを記録しておけばよい。
【0024】さて、ステップS3において、文字・線画
領域か疑似中間調領域かの領域判定テーブルをメモリA
300より読みだし、文字・線画領域ならばステップS
4に、中間調領域ならば図3のステップS12に分岐さ
せる。中間調領域と判定され、ステップS12に進み、
変倍が必要であると判断されたら従来のG3,G4と同
様に2値ラスタ画像の変倍処理であるラスタ毎の変倍処
理後、通信回線に合わせた符号化を行い画像データを送
信する。
領域か疑似中間調領域かの領域判定テーブルをメモリA
300より読みだし、文字・線画領域ならばステップS
4に、中間調領域ならば図3のステップS12に分岐さ
せる。中間調領域と判定され、ステップS12に進み、
変倍が必要であると判断されたら従来のG3,G4と同
様に2値ラスタ画像の変倍処理であるラスタ毎の変倍処
理後、通信回線に合わせた符号化を行い画像データを送
信する。
【0025】また、このとき画像領域判定テーブルを送
信する場合は、メモリA300の領域判定テーブルをメ
モリB1100に転送し送信する。
信する場合は、メモリA300の領域判定テーブルをメ
モリB1100に転送し送信する。
【0026】ステップS4で画像データとして、受信側
が輪郭座標データ列から2値ラスタ画像再生成を行う機
能を持っていて、輪郭座標データ列の送信が可能である
と判断すると、そのことが受信側から送信側に通知され
ステップS5に進む。これは図5に示した如く、入力さ
れた相手に関するダイヤル情報から、受信側が輪郭デー
タ受信機能を有するか否かを判断する。図5に示したテ
ーブルはメモリーA300に格納されており、予め入力
され格納されているダイヤル情報に基づき受信側装置の
輪郭データ受信機能の有無を判断する。受信側が従来の
G3もしくはG4の機能のみで構成されていて、輪郭座
標データ列を受けることができない場合は図4のステッ
プS16に進む。ステップS16では、変倍が必要か否
かを判断し、必要ならステップS17に進み、以後輪郭
座標データ列による変倍処理を行う。また、変倍が必要
ないならばそのままステップS23に進み、符号化処理
後送信される。
が輪郭座標データ列から2値ラスタ画像再生成を行う機
能を持っていて、輪郭座標データ列の送信が可能である
と判断すると、そのことが受信側から送信側に通知され
ステップS5に進む。これは図5に示した如く、入力さ
れた相手に関するダイヤル情報から、受信側が輪郭デー
タ受信機能を有するか否かを判断する。図5に示したテ
ーブルはメモリーA300に格納されており、予め入力
され格納されているダイヤル情報に基づき受信側装置の
輪郭データ受信機能の有無を判断する。受信側が従来の
G3もしくはG4の機能のみで構成されていて、輪郭座
標データ列を受けることができない場合は図4のステッ
プS16に進む。ステップS16では、変倍が必要か否
かを判断し、必要ならステップS17に進み、以後輪郭
座標データ列による変倍処理を行う。また、変倍が必要
ないならばそのままステップS23に進み、符号化処理
後送信される。
【0027】さて、ステップS17では、輪郭抽出回路
700にメモリA300に蓄積された2値ラスタ画像デ
ータを入力し、2値ラスタ画像データから輪郭座標デー
タ列に変換した後、メモリB1100に輪郭座標データ
列を蓄積する。ステップS18でメモリB1100に蓄
積された輪郭座標データ列に対し拡大処理が必要か否か
を判断し、拡大処理が必要ならステップS19、不要な
らステップS20に進む。
700にメモリA300に蓄積された2値ラスタ画像デ
ータを入力し、2値ラスタ画像データから輪郭座標デー
タ列に変換した後、メモリB1100に輪郭座標データ
列を蓄積する。ステップS18でメモリB1100に蓄
積された輪郭座標データ列に対し拡大処理が必要か否か
を判断し、拡大処理が必要ならステップS19、不要な
らステップS20に進む。
【0028】ステップS19では、メモリB1100よ
り輪郭座標データ列を入力し、後述の輪郭平滑化処理を
行い、ステップS20に進む。また、ステップS20で
は各座標値に変倍率を乗算し、送信解像度にあわせた座
標値に変換を行う。ステップS21では、2値画像再生
成回路1000に変換された輪郭座標データ列をメモリ
B1100より転送し、メモリA300のビットマップ
イメージに輪郭線を描画する。ステップS22では、中
塗り回路400において輪郭線の描画されたイメージビ
ットマップを1ラスタ毎取り込み、中塗り描画を行った
2値ラスタ画像データとしてメモリA300に展開す
る。
り輪郭座標データ列を入力し、後述の輪郭平滑化処理を
行い、ステップS20に進む。また、ステップS20で
は各座標値に変倍率を乗算し、送信解像度にあわせた座
標値に変換を行う。ステップS21では、2値画像再生
成回路1000に変換された輪郭座標データ列をメモリ
B1100より転送し、メモリA300のビットマップ
イメージに輪郭線を描画する。ステップS22では、中
塗り回路400において輪郭線の描画されたイメージビ
ットマップを1ラスタ毎取り込み、中塗り描画を行った
2値ラスタ画像データとしてメモリA300に展開す
る。
【0029】ステップS23では、通信モードに合わせ
た符号化を、符号化・復号化回路800により行いメモ
リB1100に転送する。メモリB1100に転送され
た符号化画像データは、G4の場合にはCCU1300
により送信される。G3の場合は図示しないMODEM
により送信される。
た符号化を、符号化・復号化回路800により行いメモ
リB1100に転送する。メモリB1100に転送され
た符号化画像データは、G4の場合にはCCU1300
により送信される。G3の場合は図示しないMODEM
により送信される。
【0030】ステップS5以降の処理を説明する。送信
しようとしている画像領域が文字・線画であって、受信
側が輪郭座標データを受信できる場合はステップS5に
進む。文字・線画領域として輪郭抽出回路700にメモ
リA300より転送された画像データは、後述の粗輪郭
座標データテーブルを更新しながら全画像の走査を行
い、最終的に輪郭座標データ列に変換を行いメモリB1
100に蓄積される。ステップS6では、輪郭座標デー
タ列に変換した画像データの変倍が必要か否かを判断す
る。必要なら、ステップS7に進んで、メモリB500
に蓄積された画像データを平滑化・座標変換回路800
に転送し、座標値に変倍率を乗算する。またこのとき、
必要ならば座標列を追跡し輪郭座標データ列の中で特徴
点を残すように、また拡大処理には平滑化変換を行う。
またさらに画像に追跡により平滑化により復元可能と判
断したならば、座標データの座標値の有効桁数を落とし
データ量の圧縮を行う。処理手段後、平滑化・座標変換
回路900により座標変換された輪郭座標データ列は、
メモリB1100に戻される。ステップS8で、送信解
像度と受信解像度が一致した画像データがCCU600
により送信される。G3の場合は同様に図示しないMO
DEMにより送信される。
しようとしている画像領域が文字・線画であって、受信
側が輪郭座標データを受信できる場合はステップS5に
進む。文字・線画領域として輪郭抽出回路700にメモ
リA300より転送された画像データは、後述の粗輪郭
座標データテーブルを更新しながら全画像の走査を行
い、最終的に輪郭座標データ列に変換を行いメモリB1
100に蓄積される。ステップS6では、輪郭座標デー
タ列に変換した画像データの変倍が必要か否かを判断す
る。必要なら、ステップS7に進んで、メモリB500
に蓄積された画像データを平滑化・座標変換回路800
に転送し、座標値に変倍率を乗算する。またこのとき、
必要ならば座標列を追跡し輪郭座標データ列の中で特徴
点を残すように、また拡大処理には平滑化変換を行う。
またさらに画像に追跡により平滑化により復元可能と判
断したならば、座標データの座標値の有効桁数を落とし
データ量の圧縮を行う。処理手段後、平滑化・座標変換
回路900により座標変換された輪郭座標データ列は、
メモリB1100に戻される。ステップS8で、送信解
像度と受信解像度が一致した画像データがCCU600
により送信される。G3の場合は同様に図示しないMO
DEMにより送信される。
【0031】ところで、画像データの通信エラーを考慮
すると、通信装置をG4のCCUとした場合、画像を輪
郭座標データ列として通信にする場合、プロトコルエラ
ー補正,エラー画像の再送により輪郭座標データ列の送
受信は可能だか、MODEMを用いるG3の場合は、E
CM(エラーコレクションモード)にHDLCを用いた
データ送受信が必要である。従って輪郭座標データ列
を、G3によりMODEMを通し、従来の電話回線を用
いて送受信する場合は、強制ECMモードになるように
し、回線状態によりECM再送の頻度が多い場合、もし
くはECM送受信が行えない場合、従来のMH,MR符
号による画像データ送信に切り替え、従来のG3モード
で画像通信を行うようにする。
すると、通信装置をG4のCCUとした場合、画像を輪
郭座標データ列として通信にする場合、プロトコルエラ
ー補正,エラー画像の再送により輪郭座標データ列の送
受信は可能だか、MODEMを用いるG3の場合は、E
CM(エラーコレクションモード)にHDLCを用いた
データ送受信が必要である。従って輪郭座標データ列
を、G3によりMODEMを通し、従来の電話回線を用
いて送受信する場合は、強制ECMモードになるように
し、回線状態によりECM再送の頻度が多い場合、もし
くはECM送受信が行えない場合、従来のMH,MR符
号による画像データ送信に切り替え、従来のG3モード
で画像通信を行うようにする。
【0032】<受信処理の説明>次に、図6,7のフロ
ーチャートを用いて、本装置の受信処理を説明する。
ーチャートを用いて、本装置の受信処理を説明する。
【0033】ステップS101の受信では、CCU13
00もしくは図示しないMODEMより画像データが受
信される。受信画像は、従来のG3によるMH,MRや
G4によるMMRのような符号化画像データ、もしくは
実施例で説明している画像処理通信装置により送信され
てきた輪郭座標データ列である。受信された画像データ
は、一旦メモリB1100に蓄積される。
00もしくは図示しないMODEMより画像データが受
信される。受信画像は、従来のG3によるMH,MRや
G4によるMMRのような符号化画像データ、もしくは
実施例で説明している画像処理通信装置により送信され
てきた輪郭座標データ列である。受信された画像データ
は、一旦メモリB1100に蓄積される。
【0034】ステップS102では、受信された画像デ
ータが本画像処理通信装置の如く構成された装置より送
信された輪郭座標データ列であるか否かが判断される。
ータが本画像処理通信装置の如く構成された装置より送
信された輪郭座標データ列であるか否かが判断される。
【0035】実施例で説明している装置から受信した輪
郭座標データ列であると判断したら、ステップS114
に分岐し、通常のファクシミリ装置から受信したMH,
MR,MMR符号データであると判断したらステップS
103に進む。
郭座標データ列であると判断したら、ステップS114
に分岐し、通常のファクシミリ装置から受信したMH,
MR,MMR符号データであると判断したらステップS
103に進む。
【0036】ステップS114では、受信した画像デー
タの変倍が必要か否かを判断する。例えば受信した画像
の解像度が標準でこれを倍密度のファインで出力する如
く変倍処理が必要であると判断したらステップS107
に進み、以後輪郭座標データ列を用いた変倍処理を行
う。また、変倍処理が不要である場合には、図7のステ
ップS109の走査方向の一致判定に進み、以後画像デ
ータを輪郭座標データ列から2値ラスタ画像データに戻
しプリント出力される。
タの変倍が必要か否かを判断する。例えば受信した画像
の解像度が標準でこれを倍密度のファインで出力する如
く変倍処理が必要であると判断したらステップS107
に進み、以後輪郭座標データ列を用いた変倍処理を行
う。また、変倍処理が不要である場合には、図7のステ
ップS109の走査方向の一致判定に進み、以後画像デ
ータを輪郭座標データ列から2値ラスタ画像データに戻
しプリント出力される。
【0037】また、受信画像データが、MH,MR,M
MRに符号化された画像データであると判断し、ステッ
プS103に進んだ場合には、その受信データは符号化
・復号化回路800に送られ、2値ラスタ画像データに
復号化され、メモリA300に蓄積される。次のステッ
プS104では、受信した画像データをプリント出力す
る際に変倍が必要か否かを判断し、必要であると判断し
たらステップS105に進み、不要な場合には図7ステ
ップS113に進んで、メモリA300からFIFO5
00に2値ラスタ画像データを転送しプリンタ600と
同期を取り直してプリンタ600よりプリント出力され
る。
MRに符号化された画像データであると判断し、ステッ
プS103に進んだ場合には、その受信データは符号化
・復号化回路800に送られ、2値ラスタ画像データに
復号化され、メモリA300に蓄積される。次のステッ
プS104では、受信した画像データをプリント出力す
る際に変倍が必要か否かを判断し、必要であると判断し
たらステップS105に進み、不要な場合には図7ステ
ップS113に進んで、メモリA300からFIFO5
00に2値ラスタ画像データを転送しプリンタ600と
同期を取り直してプリンタ600よりプリント出力され
る。
【0038】ステップS105では、受信した画像デー
タが疑似中間調画像か、文字・線画画像かを、領域判定
(画像属性もしくは、領域判定テーブル)をもとに判断
する。そして、疑似中間調画像データブロックに関して
はステップS116に進み、ラスタ画像変倍回路160
0に転送され2値ラスタ画像として変倍される。また、
文字・線画領域と判定された画像ブロックは、輪郭抽出
回路700に転送され、以下に説明する輪郭座標データ
列としての変倍処理がなされる。
タが疑似中間調画像か、文字・線画画像かを、領域判定
(画像属性もしくは、領域判定テーブル)をもとに判断
する。そして、疑似中間調画像データブロックに関して
はステップS116に進み、ラスタ画像変倍回路160
0に転送され2値ラスタ画像として変倍される。また、
文字・線画領域と判定された画像ブロックは、輪郭抽出
回路700に転送され、以下に説明する輪郭座標データ
列としての変倍処理がなされる。
【0039】ステップS106では、メモリA300に
蓄積された文字・線画の2値ラスタ画像データが輪郭抽
出回路700に転送され、2値ラスタ画像データから輪
郭座標データ列に変換され、メモリB1100に蓄積さ
れる。
蓄積された文字・線画の2値ラスタ画像データが輪郭抽
出回路700に転送され、2値ラスタ画像データから輪
郭座標データ列に変換され、メモリB1100に蓄積さ
れる。
【0040】ステップS107では、副走査,主走査い
ずれかが拡大処理であるか否かを判断する。拡大処理で
ある場合にはステップS115に進み、メモリB110
0に蓄積された輪郭座標データ列を平滑化・座標変換回
路900に転送し、後述の輪郭座標データ列の追跡パタ
ーンマッチングによる第1平滑化と第2平滑化処理を行
い、角点以外の輪郭座標データの平滑化を行う。この処
理により拡大時の斜線のギザギザが抑制される。
ずれかが拡大処理であるか否かを判断する。拡大処理で
ある場合にはステップS115に進み、メモリB110
0に蓄積された輪郭座標データ列を平滑化・座標変換回
路900に転送し、後述の輪郭座標データ列の追跡パタ
ーンマッチングによる第1平滑化と第2平滑化処理を行
い、角点以外の輪郭座標データの平滑化を行う。この処
理により拡大時の斜線のギザギザが抑制される。
【0041】ステップS108では、輪郭座標データ列
もしくは輪郭平滑化された輪郭座標データ列に対し、各
座標列に変倍率を乗算することで、プリント出力の解像
度にあわせた座標データに変換される。
もしくは輪郭平滑化された輪郭座標データ列に対し、各
座標列に変倍率を乗算することで、プリント出力の解像
度にあわせた座標データに変換される。
【0042】ステップS109では、例えば、B5縦で
読み込んだ画像をA4横で出力する場合のように、画像
データの走査方向が記録時の画像走査方向と異なるか否
かを判断する。この場合はステップS110に進み、輪
郭座標データ列のx座標と、y座標の入れ替えを行い、
メモリB1100に蓄積する。また座標交換の必要のな
い場合は、そのままメモリB1100に蓄積される。
読み込んだ画像をA4横で出力する場合のように、画像
データの走査方向が記録時の画像走査方向と異なるか否
かを判断する。この場合はステップS110に進み、輪
郭座標データ列のx座標と、y座標の入れ替えを行い、
メモリB1100に蓄積する。また座標交換の必要のな
い場合は、そのままメモリB1100に蓄積される。
【0043】ステップS111では、メモリB1100
に蓄積された画素密度変換後の輪郭座標データ列を2値
画像再生成回路に入力し、メモリA300の一部を出力
イメージのビットマップイメージ格納用として使用し、
ビットマップイメージの輪郭を描画する。
に蓄積された画素密度変換後の輪郭座標データ列を2値
画像再生成回路に入力し、メモリA300の一部を出力
イメージのビットマップイメージ格納用として使用し、
ビットマップイメージの輪郭を描画する。
【0044】ステップS112では、メモリA300よ
り、輪郭線の描画された画像データをラスタ毎に取り出
し、中塗り回路400で、輪郭の中の中塗りを行いFI
FO500に転送する。この時点で、輪郭座標データ
は、再び2値ラスタ画像データに変換される。また別に
ステップS104、もしくはステップS105により分
岐によりメモリA300に蓄積されていた2値ラスタ画
像もこの時点で同様にメモリA300より取り出されF
IFO500に転送される。
り、輪郭線の描画された画像データをラスタ毎に取り出
し、中塗り回路400で、輪郭の中の中塗りを行いFI
FO500に転送する。この時点で、輪郭座標データ
は、再び2値ラスタ画像データに変換される。また別に
ステップS104、もしくはステップS105により分
岐によりメモリA300に蓄積されていた2値ラスタ画
像もこの時点で同様にメモリA300より取り出されF
IFO500に転送される。
【0045】FIFO500に転送された2値ラスタ画
像データは、ステップS1013においてプリンタ60
0と同期を取り直しラスタ画像イメージとしてプリンタ
600より出力される。
像データは、ステップS1013においてプリンタ60
0と同期を取り直しラスタ画像イメージとしてプリンタ
600より出力される。
【0046】<コピー処理の説明>次に、図8のフロー
チャートを用いてコピー時の処理内容を説明する。
チャートを用いてコピー時の処理内容を説明する。
【0047】ステップS201では原稿画像を読み取
る。この場合、即時コピーのようにファイル蓄積の必要
のない場合は、ステップS202からステップS213
に進み、イメージスキャナ100より出力される画像デ
ータはメモリA300を介してFIFO500に転送さ
れプリント出力される。ここでメモリA300に一旦蓄
積されるのは、イメージスキャナとプリンタの速度の違
いを吸収するためで、感熱プリンタのように記録スピー
ドを変化させることができる場合は、上記のように直接
FIFO500に転送し出力すればよい。尚、即時コピ
ーの場合、イメージスキャナ100の読み取り解像度を
プリンタの出力解像度と同じにすれば、何の処理も行う
必要がなく、上述した転送処理を行えば良い。
る。この場合、即時コピーのようにファイル蓄積の必要
のない場合は、ステップS202からステップS213
に進み、イメージスキャナ100より出力される画像デ
ータはメモリA300を介してFIFO500に転送さ
れプリント出力される。ここでメモリA300に一旦蓄
積されるのは、イメージスキャナとプリンタの速度の違
いを吸収するためで、感熱プリンタのように記録スピー
ドを変化させることができる場合は、上記のように直接
FIFO500に転送し出力すればよい。尚、即時コピ
ーの場合、イメージスキャナ100の読み取り解像度を
プリンタの出力解像度と同じにすれば、何の処理も行う
必要がなく、上述した転送処理を行えば良い。
【0048】また、即時コピーではなく、一旦画像デー
タをファイルとして蓄積したのちコピーを行うよう指示
された場合には、ステップS203に進み、画像ファイ
ルのメモリ効率をあげるため符号化圧縮を行い蓄積す
る。ここでは、メモリA300に蓄積された2値ラスタ
画像を符号化・復号化回路800に転送し、MH符号等
に変換しメモリB1100に転送蓄積するものとする。
また符号化圧縮は、もちろんMH以外色々な圧縮方法を
用いることが可能であり、本装置独自の圧縮法を採用し
ても良い。一度蓄積された画像データは、プリント出力
動作時にステップS204に示されるように再びメモリ
B1100から読み出され、符号化・復号化回路800
により復号化されメモリA300に2値ラスタ画像デー
タとして展開される。
タをファイルとして蓄積したのちコピーを行うよう指示
された場合には、ステップS203に進み、画像ファイ
ルのメモリ効率をあげるため符号化圧縮を行い蓄積す
る。ここでは、メモリA300に蓄積された2値ラスタ
画像を符号化・復号化回路800に転送し、MH符号等
に変換しメモリB1100に転送蓄積するものとする。
また符号化圧縮は、もちろんMH以外色々な圧縮方法を
用いることが可能であり、本装置独自の圧縮法を採用し
ても良い。一度蓄積された画像データは、プリント出力
動作時にステップS204に示されるように再びメモリ
B1100から読み出され、符号化・復号化回路800
により復号化されメモリA300に2値ラスタ画像デー
タとして展開される。
【0049】ステップS206では蓄積された画像ファ
イルを変倍する必要があるか否かを判断する。ここでの
判断の基になるのは、原稿画像サイズと本装置の記録紙
サイズが異なる場合や、オペレータにより指示された場
合等である。変倍不要の場合には、ステップS213に
進み、FIFO500に1ラスタ毎に画像データを転送
し、プリンタ600と同期を取り直しプリント出力され
る。また、変倍処理を行う場合には、ステップS207
に進み、送信の処理で示したように蓄積された画像ファ
イルが疑似中間調画像か、文字・線画画像かを領域判定
テーブルをもとに判断する。疑似中間調画像の場合に
は、復号した画像をラスタ画像変倍回路1600に転送
し、2値ラスタ画像状態のまま変倍され、メモリA30
0のビットマップイメージメモリに戻される。また、文
字線画画像であると判断したら、ステップS208に進
み、文字・線画領域と判定されたブロックを輪郭抽出回
路700に順次転送し、2値ラスタ画像データから輪郭
座標データ列への変換を行い、メモリB1100輪郭座
標データ列として蓄積させる。先の受信処理で説明した
ようにG3の標準解像度(主走査8pel/mm,副走査3.
85pel/mm)で蓄積された画像データを400dpiの
プリンタに出力するような拡大処理を行う場合は、ステ
ップS214で平滑化処理を行うため、平滑化・座標変
換回路において後述するような第1平滑化,第2平滑化
処理を行う。
イルを変倍する必要があるか否かを判断する。ここでの
判断の基になるのは、原稿画像サイズと本装置の記録紙
サイズが異なる場合や、オペレータにより指示された場
合等である。変倍不要の場合には、ステップS213に
進み、FIFO500に1ラスタ毎に画像データを転送
し、プリンタ600と同期を取り直しプリント出力され
る。また、変倍処理を行う場合には、ステップS207
に進み、送信の処理で示したように蓄積された画像ファ
イルが疑似中間調画像か、文字・線画画像かを領域判定
テーブルをもとに判断する。疑似中間調画像の場合に
は、復号した画像をラスタ画像変倍回路1600に転送
し、2値ラスタ画像状態のまま変倍され、メモリA30
0のビットマップイメージメモリに戻される。また、文
字線画画像であると判断したら、ステップS208に進
み、文字・線画領域と判定されたブロックを輪郭抽出回
路700に順次転送し、2値ラスタ画像データから輪郭
座標データ列への変換を行い、メモリB1100輪郭座
標データ列として蓄積させる。先の受信処理で説明した
ようにG3の標準解像度(主走査8pel/mm,副走査3.
85pel/mm)で蓄積された画像データを400dpiの
プリンタに出力するような拡大処理を行う場合は、ステ
ップS214で平滑化処理を行うため、平滑化・座標変
換回路において後述するような第1平滑化,第2平滑化
処理を行う。
【0050】ステップS210では、輪郭座標データ
列、もしくは平滑化された輪郭座標データ列の各座標値
に対し変倍率を乗算し、プリンタ出力イメージの解像度
及びサイズにあわせた輪郭座標データ列に変換する。ス
テップS211では、プリンタ出力イメージの輪郭座標
データ列に変換された画像データが2値画像再生成回路
1000に転送され、2値画像再再生回路1000より
メモリA300のビットマップイメージメモリに輪郭線
が描画される。ステップS212において、メモリA3
00に形成された輪郭線の描画された2値ラスタ画像デ
ータは、1ラスタ毎に読み出され、FIFO500に転
送され、ステップS213に示すようにプリンタと同期
をとりプリント出力される。
列、もしくは平滑化された輪郭座標データ列の各座標値
に対し変倍率を乗算し、プリンタ出力イメージの解像度
及びサイズにあわせた輪郭座標データ列に変換する。ス
テップS211では、プリンタ出力イメージの輪郭座標
データ列に変換された画像データが2値画像再生成回路
1000に転送され、2値画像再再生回路1000より
メモリA300のビットマップイメージメモリに輪郭線
が描画される。ステップS212において、メモリA3
00に形成された輪郭線の描画された2値ラスタ画像デ
ータは、1ラスタ毎に読み出され、FIFO500に転
送され、ステップS213に示すようにプリンタと同期
をとりプリント出力される。
【0051】以上の処理は各段ごとに順を追って説明し
ているが、もちろん各処理をブロック毎に行うことで復
号化処理,輪郭抽出処理,平滑化処理,座標変換処理,
2値画像再生成処理,中塗り処理を並列に行うことが可
能となり、システムのスループットをあげることができ
る。また、本実施例の中で負荷に大きい処理は、送受信
時ではなく待機中に行うものもよい。
ているが、もちろん各処理をブロック毎に行うことで復
号化処理,輪郭抽出処理,平滑化処理,座標変換処理,
2値画像再生成処理,中塗り処理を並列に行うことが可
能となり、システムのスループットをあげることができ
る。また、本実施例の中で負荷に大きい処理は、送受信
時ではなく待機中に行うものもよい。
【0052】<各処理回路の説明>次に、個々の処理ブ
ロックの中で輪郭座標列による解像度変換を詳細に説明
するため、輪郭抽出回路,平滑化・座標変換回路,2値
画像再生成回路,中塗り回路を図面を用いながら詳細に
説明する。
ロックの中で輪郭座標列による解像度変換を詳細に説明
するため、輪郭抽出回路,平滑化・座標変換回路,2値
画像再生成回路,中塗り回路を図面を用いながら詳細に
説明する。
【0053】<輪郭抽出回路>輪郭抽出回路700は、
図10に示すように、2値画像における注目画素611
と、その近傍の8個の画素(A,B,C,D、0,1,
2,3)の状態を見て処理を進めるもので、注目画素を
ラスタ走査し、1画素毎にずらしながら画像全体の処理
を逐次行っていく。具体的には以下の通りである。
図10に示すように、2値画像における注目画素611
と、その近傍の8個の画素(A,B,C,D、0,1,
2,3)の状態を見て処理を進めるもので、注目画素を
ラスタ走査し、1画素毎にずらしながら画像全体の処理
を逐次行っていく。具体的には以下の通りである。
【0054】ここで抽出される粗輪郭ベクトルの始点・
終点の位置は、主走査方向及び副走査方向共に、画素と
画素の中間の位置にあるものとする。また主走査方向及
び副走査方向共に、画素のある中心位置は正整数で示さ
れ、画素位置を2次元の座標で表現する。例えば、主走
査方向1728画素,副走査方向2287画素の画像に
おいて、今、注目画素の位置を[3,7](第7ラスタ
の第3画素位置の意)としたとき、それを取り囲む粗輪
郭ベクトル座標列は時計回りに(2.5,6.5),
(3.5,6.5),(3.5,7.5),(2.5,
7.5)となる。つまり、注目画素を矩形としたときの
四隅の座標位置である。尚、この場合の粗輪郭ベクトル
とは、上記4点をa,b,c,dとし、ベクトルをx→
y形式で表せば、a→b、b→c、c→d、d→aであ
る。
終点の位置は、主走査方向及び副走査方向共に、画素と
画素の中間の位置にあるものとする。また主走査方向及
び副走査方向共に、画素のある中心位置は正整数で示さ
れ、画素位置を2次元の座標で表現する。例えば、主走
査方向1728画素,副走査方向2287画素の画像に
おいて、今、注目画素の位置を[3,7](第7ラスタ
の第3画素位置の意)としたとき、それを取り囲む粗輪
郭ベクトル座標列は時計回りに(2.5,6.5),
(3.5,6.5),(3.5,7.5),(2.5,
7.5)となる。つまり、注目画素を矩形としたときの
四隅の座標位置である。尚、この場合の粗輪郭ベクトル
とは、上記4点をa,b,c,dとし、ベクトルをx→
y形式で表せば、a→b、b→c、c→d、d→aであ
る。
【0055】図9は、輪郭抽出回路700の内部ブロッ
クを示す図である。510は入力制御回路で、メモリA
300に蓄積された2値ラスタ画像データを取り込みシ
リアルデータをして出力する。尚、このデータは、図示
しない水平,垂直同期信号に同期して、シリアルデータ
として出力される。521,522は垂直方向3ライン
にわたる画素データを取り出すためFIFOメモリで、
シリアル入力される画素データを1ラインずつライン遅
延させる。530は、3×3のシフトレジスタ群で、入
力制御回路510からの出力、FIFO521からの1
ライン分遅延させた出力、及びFIFO522からの2
ライン分遅延させた出力を受け、3ラインのデータを順
次入力する。そして、入力した3ラインの2値画像デー
タを1画素ずつシフトさせ、図10に示すような3×3
画素のデータをデコーダ540に出力する。デコーダ5
40は注目画素(ここでは図10のx)を除く周辺の8
画素の状態を示す4bitの数値データ及び注目画素の
値を輪郭抽出演算回路570に出力する。ここで言う周
辺の8画素の状態とは、注目している画素が置かれた状
態を示す情報であり、例えば注目画素が2値画像のエッ
ジにあるのか否か、エッジにあるとしたら、上下左右の
どの方向が白(2値データが“0”)になっているのか
を表すものである。
クを示す図である。510は入力制御回路で、メモリA
300に蓄積された2値ラスタ画像データを取り込みシ
リアルデータをして出力する。尚、このデータは、図示
しない水平,垂直同期信号に同期して、シリアルデータ
として出力される。521,522は垂直方向3ライン
にわたる画素データを取り出すためFIFOメモリで、
シリアル入力される画素データを1ラインずつライン遅
延させる。530は、3×3のシフトレジスタ群で、入
力制御回路510からの出力、FIFO521からの1
ライン分遅延させた出力、及びFIFO522からの2
ライン分遅延させた出力を受け、3ラインのデータを順
次入力する。そして、入力した3ラインの2値画像デー
タを1画素ずつシフトさせ、図10に示すような3×3
画素のデータをデコーダ540に出力する。デコーダ5
40は注目画素(ここでは図10のx)を除く周辺の8
画素の状態を示す4bitの数値データ及び注目画素の
値を輪郭抽出演算回路570に出力する。ここで言う周
辺の8画素の状態とは、注目している画素が置かれた状
態を示す情報であり、例えば注目画素が2値画像のエッ
ジにあるのか否か、エッジにあるとしたら、上下左右の
どの方向が白(2値データが“0”)になっているのか
を表すものである。
【0056】550は主走査カウンタで主走査方向の注
目画素の画素位置を輪郭抽出演算回路570に出力す
る。560は副走査カウンタで主走査方向の注目画素位
置を輪郭抽出演算回路570に出力する。
目画素の画素位置を輪郭抽出演算回路570に出力す
る。560は副走査カウンタで主走査方向の注目画素位
置を輪郭抽出演算回路570に出力する。
【0057】輪郭抽出演算回路570は、デコーダ54
0からの出力値により粗輪郭ベクトルを抽出し、各粗輪
郭ベクトルの始点の座標及びこの粗輪郭ベクトルに流入
してくる(このベクトルの始点の座標が終点となってい
る)別の粗輪郭ベクトル、この粗輪郭ベクトルから流出
していく(このベクトルの終点の座標が始点となってい
る)別の粗輪郭ベクトルの項目番号情報を持ったテーブ
ルの作成及び更新を行う。
0からの出力値により粗輪郭ベクトルを抽出し、各粗輪
郭ベクトルの始点の座標及びこの粗輪郭ベクトルに流入
してくる(このベクトルの始点の座標が終点となってい
る)別の粗輪郭ベクトル、この粗輪郭ベクトルから流出
していく(このベクトルの終点の座標が始点となってい
る)別の粗輪郭ベクトルの項目番号情報を持ったテーブ
ルの作成及び更新を行う。
【0058】ここで上述したベクトルに付いて説明する
と、以下の通りである。
と、以下の通りである。
【0059】実施例では2値画像のエッジに沿ったベク
トルを抽出するわけであるが、画素レベルまで考慮して
ベクトルを抽出すると、垂直方向のベクトルと水平方向
のベクトルに分けることができる。換言すれば、2値画
像のエッジは垂直方向及び水平方向のベクトルの集合体
である。加えて、ある垂直ベクトルを注目したとき、そ
のベクトルの始点及び終点には必ず水平ベクトルが接続
される、つまり、垂直ベクトルは水平ベクトルに挟まれ
ていることになる。逆に、ある水平ベクトルは垂直ベク
トルに挟まれていることになる。実施例では、あるベク
トルを注目したとき、そのベクトルの始点に接続され
る、すなわち、注目ベクトルの始点位置が終点位置とな
っているベクトルを流入ベクトルといい、注目ベクトル
の終点を始点とするベクトルを流出ベクトルと呼んでい
る。そして、こうして個々のベクトルの連結関係を得れ
ば、対象としている2値画像のエッジに沿った輪郭を特
定できることになる。尚、個々のベクトルにはそれぞれ
ベクトルを特定するためのユニークな番号を設け、その
番号で互いのベクトルの接続関係を明らかにしている。
個々のベクトルを特定する番号を項目番号と呼ぶことに
する。
トルを抽出するわけであるが、画素レベルまで考慮して
ベクトルを抽出すると、垂直方向のベクトルと水平方向
のベクトルに分けることができる。換言すれば、2値画
像のエッジは垂直方向及び水平方向のベクトルの集合体
である。加えて、ある垂直ベクトルを注目したとき、そ
のベクトルの始点及び終点には必ず水平ベクトルが接続
される、つまり、垂直ベクトルは水平ベクトルに挟まれ
ていることになる。逆に、ある水平ベクトルは垂直ベク
トルに挟まれていることになる。実施例では、あるベク
トルを注目したとき、そのベクトルの始点に接続され
る、すなわち、注目ベクトルの始点位置が終点位置とな
っているベクトルを流入ベクトルといい、注目ベクトル
の終点を始点とするベクトルを流出ベクトルと呼んでい
る。そして、こうして個々のベクトルの連結関係を得れ
ば、対象としている2値画像のエッジに沿った輪郭を特
定できることになる。尚、個々のベクトルにはそれぞれ
ベクトルを特定するためのユニークな番号を設け、その
番号で互いのベクトルの接続関係を明らかにしている。
個々のベクトルを特定する番号を項目番号と呼ぶことに
する。
【0060】図11は水平方向の粗輪郭ベクトルを示す
図、図12は垂直方向の粗輪郭ベクトルを示す図であ
り、これらは先に説明したようにテーブルとしてメモリ
B1100に格納されるものである。
図、図12は垂直方向の粗輪郭ベクトルを示す図であ
り、これらは先に説明したようにテーブルとしてメモリ
B1100に格納されるものである。
【0061】図示において、710は水平方向の粗輪郭
ベクトルの項目番号を示すカウンタで水平粗輪郭ベクト
ルが1個増す(新たに発見される)毎に1増加する。7
21は水平方向の粗輪郭ベクトルの始点のx座標を記録
するために使用されるエリア、722は水平方向の粗輪
郭ベクトルの始点のy座標を記録するために使用される
エリアである。また、723はこの水平ベクトルの始点
に接続される垂直ベクトル(流出ベクトル)の項目番号
を格納するエリア、724はこの水平ベクトルの終点が
接続される垂直ベクトル(流出ベクトル)の項目番号を
示す図である。繰り返すが、水平ベクトルに接続される
2つのベクトルは垂直ベクトルであるので、これらエリ
ア723、724には注目している水平ベクトルに接続
される垂直ベクトルの項目番号が格納される。
ベクトルの項目番号を示すカウンタで水平粗輪郭ベクト
ルが1個増す(新たに発見される)毎に1増加する。7
21は水平方向の粗輪郭ベクトルの始点のx座標を記録
するために使用されるエリア、722は水平方向の粗輪
郭ベクトルの始点のy座標を記録するために使用される
エリアである。また、723はこの水平ベクトルの始点
に接続される垂直ベクトル(流出ベクトル)の項目番号
を格納するエリア、724はこの水平ベクトルの終点が
接続される垂直ベクトル(流出ベクトル)の項目番号を
示す図である。繰り返すが、水平ベクトルに接続される
2つのベクトルは垂直ベクトルであるので、これらエリ
ア723、724には注目している水平ベクトルに接続
される垂直ベクトルの項目番号が格納される。
【0062】この考えは、図12の垂直ベクトルのテー
ブルに対しても同様である。すなわち、810は垂直方
向の粗輪郭ベクトルの項目番号を示すカウンタで、垂直
粗輪郭ベクトルが1個増す毎に1増加する。821は垂
直方向の粗輪郭ベクトルの始点のx座標を記録するため
に使用されるエリア、822は垂直方向の粗輪郭ベクト
ルの始点のy座標を記録するために使用されるエリアで
ある。そして、823はこの垂直ベクトルの始点に接続
される水平ベクトル(流入ベクトル)の項目番号、82
4はこの垂直ベクトルの終点が接続される水平ベクトル
(流出ベクトル)の項目番号を記録するために使用する
エリアである。
ブルに対しても同様である。すなわち、810は垂直方
向の粗輪郭ベクトルの項目番号を示すカウンタで、垂直
粗輪郭ベクトルが1個増す毎に1増加する。821は垂
直方向の粗輪郭ベクトルの始点のx座標を記録するため
に使用されるエリア、822は垂直方向の粗輪郭ベクト
ルの始点のy座標を記録するために使用されるエリアで
ある。そして、823はこの垂直ベクトルの始点に接続
される水平ベクトル(流入ベクトル)の項目番号、82
4はこの垂直ベクトルの終点が接続される水平ベクトル
(流出ベクトル)の項目番号を記録するために使用する
エリアである。
【0063】これら水平及び垂直方向の粗輪郭ベクトル
テーブルは、1画素の処理毎に随時粗輪郭ベクトルの追
加及び各テーブル内容の更新が行われ、1画面の処理終
了後、1画面の画像に対する水平及び垂直方向の粗輪郭
ベクトルテーブルとして完成される。
テーブルは、1画素の処理毎に随時粗輪郭ベクトルの追
加及び各テーブル内容の更新が行われ、1画面の処理終
了後、1画面の画像に対する水平及び垂直方向の粗輪郭
ベクトルテーブルとして完成される。
【0064】こうして、図11及び図12に示す水平及
び垂直方向粗輪郭ベクトルテーブルの流入及び両出力ベ
クトルの項目番号をたどることにより、図13に示すよ
うな画像中の総輪郭線数,各輪郭線毎(輪郭閉ループ)
の輪郭線の総点数,輪郭線中の各点のx座標,y座標を
表現する粗輪郭ベクトル座標列のテーブルを作成し一連
の処理を終了する。
び垂直方向粗輪郭ベクトルテーブルの流入及び両出力ベ
クトルの項目番号をたどることにより、図13に示すよ
うな画像中の総輪郭線数,各輪郭線毎(輪郭閉ループ)
の輪郭線の総点数,輪郭線中の各点のx座標,y座標を
表現する粗輪郭ベクトル座標列のテーブルを作成し一連
の処理を終了する。
【0065】尚、処理速度を向上させるため、注目画素
位置が画像のエッジにないと判断した場合には、実質的
にテーブルが更新されることはないので、かかる状況下
においてのベクトルテーブルの追加・更新処理を行わな
い様にしても良い。
位置が画像のエッジにないと判断した場合には、実質的
にテーブルが更新されることはないので、かかる状況下
においてのベクトルテーブルの追加・更新処理を行わな
い様にしても良い。
【0066】ここで、上述した水平・垂直方向の粗輪郭
ベクトルテーブルの作成・更新処理を具体例を説明する
と以下の通りである。尚、説明を簡単にするため、読み
取った画像が6×5画素サイズであり、図27に示すよ
うに単独の画素Aと、連続した画素B,Cが存在したと
する。ここで、画素Aの四隅の座標位置(粗輪郭ベクト
ル座標)は、右上から時計回りに、(2.5,2.
5)、(2.5,3.5)、(1.5,3.5)、
(1.5,2.5)となる。画素B,Cについては説明
するまでもないであろう。
ベクトルテーブルの作成・更新処理を具体例を説明する
と以下の通りである。尚、説明を簡単にするため、読み
取った画像が6×5画素サイズであり、図27に示すよ
うに単独の画素Aと、連続した画素B,Cが存在したと
する。ここで、画素Aの四隅の座標位置(粗輪郭ベクト
ル座標)は、右上から時計回りに、(2.5,2.
5)、(2.5,3.5)、(1.5,3.5)、
(1.5,2.5)となる。画素B,Cについては説明
するまでもないであろう。
【0067】さて、この画像を読み取って処理していく
と、第3ラスタ、第2画素目になって初めて黒画素が検
出される。このとき、注目画素(画素A)の回りは全て
白(“0”)の画素であり、4本のベクトルが存在する
ことになる。つまり、水平方向に2本、垂直方向に2本
である。実施例では、新たな粗輪郭ベクトルが発生する
度に、そのベクトルに対して項目番号を付するわけであ
るので、この場合には、水平及び垂直方向とも0、1の
項目番号がつけられる。従って、水平・垂直ベクトルテ
ーブルは図28(A)の状態になる。このテーブルの見
方を再度説明するのであれば以下の通りである。
と、第3ラスタ、第2画素目になって初めて黒画素が検
出される。このとき、注目画素(画素A)の回りは全て
白(“0”)の画素であり、4本のベクトルが存在する
ことになる。つまり、水平方向に2本、垂直方向に2本
である。実施例では、新たな粗輪郭ベクトルが発生する
度に、そのベクトルに対して項目番号を付するわけであ
るので、この場合には、水平及び垂直方向とも0、1の
項目番号がつけられる。従って、水平・垂直ベクトルテ
ーブルは図28(A)の状態になる。このテーブルの見
方を再度説明するのであれば以下の通りである。
【0068】今、例えば、項目番号が“0”の水平ベク
トルを注目する。この注目ベクトルの始点(画素Aの左
上隅)には、項目番号“1”の垂直ベクトルが流入し、
注目の終点からは項目番号“0”の垂直ベクトルが流出
していることを示している。尚、各ベクトルの項目番号
はそのテーブルに格納されている位置を示すオフセット
アドレスと考えて良い。すなわち、項目番号“0”の水
平ベクトルに流入・流出する垂直ベクトルのデータは垂
直ベクトルテーブルのオフセット“0”と“1”に存在
することがわかる。
トルを注目する。この注目ベクトルの始点(画素Aの左
上隅)には、項目番号“1”の垂直ベクトルが流入し、
注目の終点からは項目番号“0”の垂直ベクトルが流出
していることを示している。尚、各ベクトルの項目番号
はそのテーブルに格納されている位置を示すオフセット
アドレスと考えて良い。すなわち、項目番号“0”の水
平ベクトルに流入・流出する垂直ベクトルのデータは垂
直ベクトルテーブルのオフセット“0”と“1”に存在
することがわかる。
【0069】さて、図27に戻って、画素Aの次はその
右隣に進むが、注目画素は白であるので、なにもせずそ
の次の画素Bに処理が進む。
右隣に進むが、注目画素は白であるので、なにもせずそ
の次の画素Bに処理が進む。
【0070】この画素Bを注目した場合、その右側を除
く上下方向と左方向にベクトルが存在することがわか
る。しかも、注目画素の左上隅が水平ベクトルの始点、
左下隅の座標位置が垂直ベクトルの始点として扱うこと
が可能であることがわかる。従って、これらの点を水平
・垂直ベクトルテーブルに新たに登録することができ
る。但し、垂直・水平方向とも既に項目番号として
“1”まで使用しているから、注目画素の左上隅の座標
(3.5,2.5)を項目番号“2”の水平ベクトルの
始点として、左下隅の座標(3.5,3.5)を項目番
号“2”の垂直ベクトルの始点として格納する。そし
て、項目番号“2”の水平ベクトルに着目した場合、自
身に流入しているベクトルは項目番号“2”の垂直ベク
トルであり、流出する垂直ベクトルはこの時点では判明
しない(水平方向に続く画素が存在する)から区別がで
きるようにマークしておく。これは、項目ベクトル
“2”の垂直ベクトルについても同様である。こうし
て、各テーブルは図28(B)のように更新される。
く上下方向と左方向にベクトルが存在することがわか
る。しかも、注目画素の左上隅が水平ベクトルの始点、
左下隅の座標位置が垂直ベクトルの始点として扱うこと
が可能であることがわかる。従って、これらの点を水平
・垂直ベクトルテーブルに新たに登録することができ
る。但し、垂直・水平方向とも既に項目番号として
“1”まで使用しているから、注目画素の左上隅の座標
(3.5,2.5)を項目番号“2”の水平ベクトルの
始点として、左下隅の座標(3.5,3.5)を項目番
号“2”の垂直ベクトルの始点として格納する。そし
て、項目番号“2”の水平ベクトルに着目した場合、自
身に流入しているベクトルは項目番号“2”の垂直ベク
トルであり、流出する垂直ベクトルはこの時点では判明
しない(水平方向に続く画素が存在する)から区別がで
きるようにマークしておく。これは、項目ベクトル
“2”の垂直ベクトルについても同様である。こうし
て、各テーブルは図28(B)のように更新される。
【0071】さて、画素Cに処理が進むと、新たにベク
トルの始点となる座標位置(5.5,3.5)と(5.
5,2.5)が発生する。従って、その座標位置でテー
ブルを更新する。このとき、これまで未定であって、項
目番号“2”の水平ベクトルから流出する垂直ベクトル
は、今回新たに登録された項目番号“3”の垂直ベクト
ルであるので、その項目番号を水平ベクトルに書き込
む。同じようにして垂直ベクトルも更新処理を行う。こ
うして、各テーブルは図28(C)に示すように更新さ
れることになる。そして、全ての粗輪郭ベクトルの水平
及び垂直ベクトルとそれらの連結関係が抽出されたら、
それらベクトルテーブルに基づいて図13に示すような
ベクトルテーブルを作成する。
トルの始点となる座標位置(5.5,3.5)と(5.
5,2.5)が発生する。従って、その座標位置でテー
ブルを更新する。このとき、これまで未定であって、項
目番号“2”の水平ベクトルから流出する垂直ベクトル
は、今回新たに登録された項目番号“3”の垂直ベクト
ルであるので、その項目番号を水平ベクトルに書き込
む。同じようにして垂直ベクトルも更新処理を行う。こ
うして、各テーブルは図28(C)に示すように更新さ
れることになる。そして、全ての粗輪郭ベクトルの水平
及び垂直ベクトルとそれらの連結関係が抽出されたら、
それらベクトルテーブルに基づいて図13に示すような
ベクトルテーブルを作成する。
【0072】図25に入力画像の例を示し、図26にそ
の入力画像から得られたベクトルテーブルを示す。
の入力画像から得られたベクトルテーブルを示す。
【0073】<平滑化・座標変換回路>次に実施例にお
ける平滑化・座標変換回路900を説明する。実施例の
平滑化・座標変換回路900は、図14に示すように、
第1平滑化回路910,第1平滑化変換テーブル94
0,第2平滑化回路920及び座標変換回路930より
構成される。
ける平滑化・座標変換回路900を説明する。実施例の
平滑化・座標変換回路900は、図14に示すように、
第1平滑化回路910,第1平滑化変換テーブル94
0,第2平滑化回路920及び座標変換回路930より
構成される。
【0074】第1平滑化回路910では、前述の輪郭抽
出回路700によってラスタ走査型2値画像から図13
に示す粗輪郭データ列変換されたデータを取り込み、ベ
クトル閉領域毎に座標列を追跡しながら、ベクトル接続
状態に基づき第1平滑化変換テーブルを参照しながら輪
郭座標データ列の変換及び角点のラベル付けを行い、第
1平滑化後の頂点座標データ列及び各頂点が角点か否か
の情報を出力する。第2平滑化回路920では、第1平
滑化された頂点座標データ列及び角点情報を基に、自点
を挟む前後各複数点座標値の加重平均を求め、輪郭ベク
トル座標データ列を出力する。座標変換回路930で
は、必要ならx軸,y軸の座標値の入れ替えをしたり、
各座標値と変倍率の乗算を行う。ここで、縮小処理の場
合は、第一平滑化回路910,920の平滑化処理をパ
スして直接座標変換回路930にデータが渡される。
出回路700によってラスタ走査型2値画像から図13
に示す粗輪郭データ列変換されたデータを取り込み、ベ
クトル閉領域毎に座標列を追跡しながら、ベクトル接続
状態に基づき第1平滑化変換テーブルを参照しながら輪
郭座標データ列の変換及び角点のラベル付けを行い、第
1平滑化後の頂点座標データ列及び各頂点が角点か否か
の情報を出力する。第2平滑化回路920では、第1平
滑化された頂点座標データ列及び角点情報を基に、自点
を挟む前後各複数点座標値の加重平均を求め、輪郭ベク
トル座標データ列を出力する。座標変換回路930で
は、必要ならx軸,y軸の座標値の入れ替えをしたり、
各座標値と変倍率の乗算を行う。ここで、縮小処理の場
合は、第一平滑化回路910,920の平滑化処理をパ
スして直接座標変換回路930にデータが渡される。
【0075】上述した処理の詳細を説明する。第1平滑
化回路910では、図15〜図22に示すように、自辺
を挟む前後3辺までのパターンを参照し、各辺の向き・
長さによるパターン参照により粗輪郭座標数値データ列
の除去及び変換を行う。ここで、図15等に示す“N_
pnt”は、粗輪郭座標数値データの閉ループの総数、
一重丸は水平ベクトルの始点及び垂直ベクトルの終点、
三角は水平ベクトルの終点及び垂直ベクトルの始点を示
し、2重丸は角点をそれぞれ表す。また、ここでの第1
平滑化では、2値画像特有のノイズ(ノッチ・孤立点)
を除去するパターンとして、図15のパターンを含んで
いる。すなわち、図15の如く、1画素大の孤立画素除
去では、その座標値を全て削除する。これによって、画
像拡大時にその画素が強調されることがなくなる。ま
た、図16の如く、黒領域内の白孔の保存の場合は各輪
郭座標列をすべて角点のラベルづけを行い、座標値はそ
のまま出力する。尚、ここで言う角点とは、後述する第
2平滑化処理において、その座標位置が不動とすること
意味する。また、説明が前後するが、実施例ではX,Y
方向を右及び下方向としているので、左方向及び上方向
はそれぞれマイナス方向となっている。また、例えば図
17等において、“≦−3”の“≦−”はマイナス方向
に、“3”は少なくとも3画素続いていることを示して
いる。
化回路910では、図15〜図22に示すように、自辺
を挟む前後3辺までのパターンを参照し、各辺の向き・
長さによるパターン参照により粗輪郭座標数値データ列
の除去及び変換を行う。ここで、図15等に示す“N_
pnt”は、粗輪郭座標数値データの閉ループの総数、
一重丸は水平ベクトルの始点及び垂直ベクトルの終点、
三角は水平ベクトルの終点及び垂直ベクトルの始点を示
し、2重丸は角点をそれぞれ表す。また、ここでの第1
平滑化では、2値画像特有のノイズ(ノッチ・孤立点)
を除去するパターンとして、図15のパターンを含んで
いる。すなわち、図15の如く、1画素大の孤立画素除
去では、その座標値を全て削除する。これによって、画
像拡大時にその画素が強調されることがなくなる。ま
た、図16の如く、黒領域内の白孔の保存の場合は各輪
郭座標列をすべて角点のラベルづけを行い、座標値はそ
のまま出力する。尚、ここで言う角点とは、後述する第
2平滑化処理において、その座標位置が不動とすること
意味する。また、説明が前後するが、実施例ではX,Y
方向を右及び下方向としているので、左方向及び上方向
はそれぞれマイナス方向となっている。また、例えば図
17等において、“≦−3”の“≦−”はマイナス方向
に、“3”は少なくとも3画素続いていることを示して
いる。
【0076】図15、16の意味するところは上述した
通りであるが、図17以降について簡単に説明すると以
下の通りである。
通りであるが、図17以降について簡単に説明すると以
下の通りである。
【0077】図17の意味するところは、1画素幅の線
分であって、少なくとも3画素分の長さを持った細線の
端部を表す座標位置は角点として定義し、後述する第2
平滑化処理によってその座標位置が変更されることを防
ぐ、換言すれば、丸め防止をすることを意味する。わか
りやくす説明すれば、その背景には、3画素以上の長さ
を持った1画素幅の線分は、読み取り画像の“ゴミ”な
どではなく、文字や線画等の一部である認識することを
意味している。但し、ここでは3画素以上の長さとして
いるが、これは読み取り解像度に依存するものであり、
読み取り解像度が低い場合には2画素の長さとしても良
いし、より高解像度で画像を読み取った場合には4以上
にしてもよい。これは以下に説明することにも言えるこ
とである。
分であって、少なくとも3画素分の長さを持った細線の
端部を表す座標位置は角点として定義し、後述する第2
平滑化処理によってその座標位置が変更されることを防
ぐ、換言すれば、丸め防止をすることを意味する。わか
りやくす説明すれば、その背景には、3画素以上の長さ
を持った1画素幅の線分は、読み取り画像の“ゴミ”な
どではなく、文字や線画等の一部である認識することを
意味している。但し、ここでは3画素以上の長さとして
いるが、これは読み取り解像度に依存するものであり、
読み取り解像度が低い場合には2画素の長さとしても良
いし、より高解像度で画像を読み取った場合には4以上
にしてもよい。これは以下に説明することにも言えるこ
とである。
【0078】図18の意味するところは、所定の長さ
(図示では3画素)だけ平坦な状態における1画素分の
凸凹を削除する、つまり、その凸凹の粗輪郭ベクトルデ
ータを削除することを意味する。図19は、凸凹が連続
して存在する場合には、その凸凹を平坦にすることを意
味している。
(図示では3画素)だけ平坦な状態における1画素分の
凸凹を削除する、つまり、その凸凹の粗輪郭ベクトルデ
ータを削除することを意味する。図19は、凸凹が連続
して存在する場合には、その凸凹を平坦にすることを意
味している。
【0079】図20は、角点の定義と、ベクトルの平滑
化の概念を示している。但し、図示において“Di”は
注目している粗輪郭ベクトルを示している。例えば同図
(A)の場合、注目している粗輪郭ベクトルの終点位置
が図示の状態にあるとき、注目粗輪郭ベクトルの終点位
置を角点とすることを意味している。また、注目ベクト
ルDiの直前のベクトルDi-1を削除し、2つ前のベクト
ルDi-2の長さと同じ長さを注目しているベクトルの始
点からとり、その終点位置とベクトルDi-2の始点位置
とを結ぶベクトルをDi-2とし更新する。また、その更
新されたDi-2の終点と角点とで表されるベクトルを注
目しているベクトルとして更新する。
化の概念を示している。但し、図示において“Di”は
注目している粗輪郭ベクトルを示している。例えば同図
(A)の場合、注目している粗輪郭ベクトルの終点位置
が図示の状態にあるとき、注目粗輪郭ベクトルの終点位
置を角点とすることを意味している。また、注目ベクト
ルDiの直前のベクトルDi-1を削除し、2つ前のベクト
ルDi-2の長さと同じ長さを注目しているベクトルの始
点からとり、その終点位置とベクトルDi-2の始点位置
とを結ぶベクトルをDi-2とし更新する。また、その更
新されたDi-2の終点と角点とで表されるベクトルを注
目しているベクトルとして更新する。
【0080】図21は、緩やかな斜線部の平滑化処理の
内容を示している。例えば、同図(A)の如く、1画素
上がって横方向に3画素以上伸び、再び1画素上がるよ
うな、所定方向に傾いたエッジに対しては、注目ベクト
ルの中点位置を直前ベクトルDi-1の終点、直後のベク
トルDi+1の始点位置とする。傾きが上方向にあって途
中から下方向になった場合には、この処理は行わない。
この判定は、直前のベクトルと直後のベクトルの傾きを
乗算し、その符号を調べればわかる。また、同図(B)
は、5本のベクトルを最終的に3本にする例を示してい
る。すなわち、図示の様な条件下においては、直前・直
後のベクトルを削除し、平滑化する以前のベクトルD
i-2の始点位置と注目しているベクトルDi上のA点とを
結ばせたベクトルをベクトルDi-2、A点とB点とで表
されるベクトルを注目ベクトルDi、A点と平滑化する
以前のベクトルDi+2の終点で表されるベクトルをDi+2
とする。図22については図示の通りである。
内容を示している。例えば、同図(A)の如く、1画素
上がって横方向に3画素以上伸び、再び1画素上がるよ
うな、所定方向に傾いたエッジに対しては、注目ベクト
ルの中点位置を直前ベクトルDi-1の終点、直後のベク
トルDi+1の始点位置とする。傾きが上方向にあって途
中から下方向になった場合には、この処理は行わない。
この判定は、直前のベクトルと直後のベクトルの傾きを
乗算し、その符号を調べればわかる。また、同図(B)
は、5本のベクトルを最終的に3本にする例を示してい
る。すなわち、図示の様な条件下においては、直前・直
後のベクトルを削除し、平滑化する以前のベクトルD
i-2の始点位置と注目しているベクトルDi上のA点とを
結ばせたベクトルをベクトルDi-2、A点とB点とで表
されるベクトルを注目ベクトルDi、A点と平滑化する
以前のベクトルDi+2の終点で表されるベクトルをDi+2
とする。図22については図示の通りである。
【0081】さて、第2平滑化回路920では、図23
に示すように2重丸で示される角点はそのままとし、そ
れ以外の各座標点に対し、自点を挟む前後各複数点座標
値(実施例では前後の2点との座標値)の加重平均を求
め、その値を第2平滑化後の頂点座標データ列として出
力する。ここで、図23に示す点Qiは第2平滑化後の
頂点座標データ列、点Piは第一平滑化後の頂点座標デ
ータ列を示す。例では、Q1(9/4,2)をP0(1,
3)、P1(2,2)、P2(4,1)の加重平均により
求めている。ここで、第1平滑化,第2平滑化で用いら
れる有効桁数は、記録解像度に有効な範囲で任意にとら
れる。
に示すように2重丸で示される角点はそのままとし、そ
れ以外の各座標点に対し、自点を挟む前後各複数点座標
値(実施例では前後の2点との座標値)の加重平均を求
め、その値を第2平滑化後の頂点座標データ列として出
力する。ここで、図23に示す点Qiは第2平滑化後の
頂点座標データ列、点Piは第一平滑化後の頂点座標デ
ータ列を示す。例では、Q1(9/4,2)をP0(1,
3)、P1(2,2)、P2(4,1)の加重平均により
求めている。ここで、第1平滑化,第2平滑化で用いら
れる有効桁数は、記録解像度に有効な範囲で任意にとら
れる。
【0082】座標変換回路930では、処理画像と記録
画像の主走査の違いによるx軸,y軸の座標変換をした
り、変倍処理に合わせて各座標列に対する変倍率の乗算
を行う。
画像の主走査の違いによるx軸,y軸の座標変換をした
り、変倍処理に合わせて各座標列に対する変倍率の乗算
を行う。
【0083】例えば、入力画像を主走査,副走査共に2
倍する場合には、第2平滑化された頂点座標データ列の
x座標,y座標を共に2倍し、小数点以下を四捨五入し
て座標変換を行う。
倍する場合には、第2平滑化された頂点座標データ列の
x座標,y座標を共に2倍し、小数点以下を四捨五入し
て座標変換を行う。
【0084】こうして各回路910〜940で得られた
輪郭座標データ列は、メモリB1100に出力され処理
を終了する。
輪郭座標データ列は、メモリB1100に出力され処理
を終了する。
【0085】<2値画像再生成回路,中塗り回路>本実
施例では、ビットマップの画像メモリを1画面分使用す
るページメモリ使用タイプの場合を説明する。もちろん
輪郭座標データ列から2値ラスタ画像イメージに変換す
る手法はすべて有効である。
施例では、ビットマップの画像メモリを1画面分使用す
るページメモリ使用タイプの場合を説明する。もちろん
輪郭座標データ列から2値ラスタ画像イメージに変換す
る手法はすべて有効である。
【0086】2値画像再生成回路1000では、図1の
メモリB1100に蓄積された輪郭座標データ列を読み
込みメモリA300上のビットマップイメージメモリ1
面上に輪郭線を描画する。
メモリB1100に蓄積された輪郭座標データ列を読み
込みメモリA300上のビットマップイメージメモリ1
面上に輪郭線を描画する。
【0087】このとき、後段の中塗り回路での塗り潰し
が高速動作可能でさらに1ページのビットマップイメー
ジで輪郭線描画を行うため相連続する2から3本の線分
ベクトル(輪郭座標列の各座標を結ぶベクトル)に注目
し、注目する線分ベクトルと、そのベクトルの直前のベ
クトル、及び直後のベクトルの状態(向き)を参照し
て、注目線分ベクトル上の輪郭画素の描画方法を制御し
ていく。制御の内容は、注目する線分ベクトル上の端点
と、端点以外の輪郭ベクトル上の点を分けて扱い、かつ
それらを描画しないか、線分ベクトル上の画素位置に描
画するか、更には、線分ベクトル上の画素の主走査方向
に一画素隣の画素位置にずらして描画するかを切り分け
る。実際の輪郭画素の描画動作は、描画しようとしてい
る画素位置に、既に保存されている値と1とのEXOR
をとった結果を格納する形で実行される。いずれにせ
よ、主走査方向に画素を順次読み出していくだけで、画
素のオン/オフを切り換えることが可能なように輪郭を
描画していく。尚、かかる輪郭描画についての提案は、
既に本願出願人が提案しているものを採用するものと
し、ここでの詳述は省略する。
が高速動作可能でさらに1ページのビットマップイメー
ジで輪郭線描画を行うため相連続する2から3本の線分
ベクトル(輪郭座標列の各座標を結ぶベクトル)に注目
し、注目する線分ベクトルと、そのベクトルの直前のベ
クトル、及び直後のベクトルの状態(向き)を参照し
て、注目線分ベクトル上の輪郭画素の描画方法を制御し
ていく。制御の内容は、注目する線分ベクトル上の端点
と、端点以外の輪郭ベクトル上の点を分けて扱い、かつ
それらを描画しないか、線分ベクトル上の画素位置に描
画するか、更には、線分ベクトル上の画素の主走査方向
に一画素隣の画素位置にずらして描画するかを切り分け
る。実際の輪郭画素の描画動作は、描画しようとしてい
る画素位置に、既に保存されている値と1とのEXOR
をとった結果を格納する形で実行される。いずれにせ
よ、主走査方向に画素を順次読み出していくだけで、画
素のオン/オフを切り換えることが可能なように輪郭を
描画していく。尚、かかる輪郭描画についての提案は、
既に本願出願人が提案しているものを採用するものと
し、ここでの詳述は省略する。
【0088】中塗り回路400では、輪郭描画回路で全
てのアウトラインエッジの描画処理を追えた後にビット
マップイメージメモリ(メモリA300)の輪郭描画画
像を任意の同期タイミングでラスタ走査して読み出しな
がら、パイプライン処理で中塗り処理を実行し、それを
再びビットマップイメージメモリに転送する。中塗り処
理自体は、図24に示すような回路で処理され、CLK
に同期して入力されるDATAが、輪郭線描画画素にお
いて順次白黒反転されながらOUTに出力されていく。
ここで、LSYNCは、ライン同期信号でラスタ画素入
力の開始時に同期reset信号として入力される。5
10はラッチで1画素前のOUT出力値を保持する。5
20はEXORで入力データと一画素前のOUT出力値
とのEXORを出力する。
てのアウトラインエッジの描画処理を追えた後にビット
マップイメージメモリ(メモリA300)の輪郭描画画
像を任意の同期タイミングでラスタ走査して読み出しな
がら、パイプライン処理で中塗り処理を実行し、それを
再びビットマップイメージメモリに転送する。中塗り処
理自体は、図24に示すような回路で処理され、CLK
に同期して入力されるDATAが、輪郭線描画画素にお
いて順次白黒反転されながらOUTに出力されていく。
ここで、LSYNCは、ライン同期信号でラスタ画素入
力の開始時に同期reset信号として入力される。5
10はラッチで1画素前のOUT出力値を保持する。5
20はEXORで入力データと一画素前のOUT出力値
とのEXORを出力する。
【0089】ここで、描画しないアウトラインエッジ以
外は、処理後の端点も含めて直線上の輪郭画素の描画自
体もこの中塗り回路によって実施する。
外は、処理後の端点も含めて直線上の輪郭画素の描画自
体もこの中塗り回路によって実施する。
【0090】〔他の実施例の説明〕上記実施例では、図
2のフローチャートで示されるように、輪郭座標データ
列を送信するか否かの判定は、受信側が輪郭座標データ
列を受信可能であるかどうか、もしくは輪郭座標データ
列が受信可能な場合においては、送信画像が文字・線画
画像か擬似中間長画像かの判定により行っている。しか
しながら文字・線画においても1単位画像内においてベ
クトル座標点の多い画像は、MH,MR,MMRのよう
な符号化データより輪郭座標データ列の方がデータ量が
多くなる場合が存在する。
2のフローチャートで示されるように、輪郭座標データ
列を送信するか否かの判定は、受信側が輪郭座標データ
列を受信可能であるかどうか、もしくは輪郭座標データ
列が受信可能な場合においては、送信画像が文字・線画
画像か擬似中間長画像かの判定により行っている。しか
しながら文字・線画においても1単位画像内においてベ
クトル座標点の多い画像は、MH,MR,MMRのよう
な符号化データより輪郭座標データ列の方がデータ量が
多くなる場合が存在する。
【0091】通信コストを考慮するとデータ量の少ない
方のデータを送信した方が有効であるため、更に図29
に示すように、上記実施例の図2のフローチャートに加
えステップS7とステップS8の間にスキャナより読み
込まれた画像データを送信解像度の変倍したものの符号
化処理(MH,MR,MMR)と、輪郭座標データ列の
抽出及び送信解像度への変換を同時に行い、各々の変換
データ量の比較を行う判定ステップS7’を設け、輪郭
座標データ列の受信可能な相手に対してもMH,MR,
MMR符号化データの方がデータ量の少ない場合には、
ステップS8’に進み符号化データを選択し送信するこ
とで通信時間効率的な利用を実施することができる。
方のデータを送信した方が有効であるため、更に図29
に示すように、上記実施例の図2のフローチャートに加
えステップS7とステップS8の間にスキャナより読み
込まれた画像データを送信解像度の変倍したものの符号
化処理(MH,MR,MMR)と、輪郭座標データ列の
抽出及び送信解像度への変換を同時に行い、各々の変換
データ量の比較を行う判定ステップS7’を設け、輪郭
座標データ列の受信可能な相手に対してもMH,MR,
MMR符号化データの方がデータ量の少ない場合には、
ステップS8’に進み符号化データを選択し送信するこ
とで通信時間効率的な利用を実施することができる。
【0092】また上記実施例においては、輪郭座標デー
タ列もしくは、画素データによる画像データを任意のサ
イズへ高精細に変換する変倍回路を含んでいる。このこ
とから任意のサイズや解像度を持つ受信原稿またはスキ
ャナより読み込まれた任意のサイズ及び解像度をもつ画
像データを定型紙(A4,B4等)にプリント記録する
場合には、記録紙が複数枚に分割されないように記録画
像を定型紙のサイズに任意変倍して記録することが可能
となる。本処理例の実施例を図30のフローチャートを
参照しながら以下に示す。
タ列もしくは、画素データによる画像データを任意のサ
イズへ高精細に変換する変倍回路を含んでいる。このこ
とから任意のサイズや解像度を持つ受信原稿またはスキ
ャナより読み込まれた任意のサイズ及び解像度をもつ画
像データを定型紙(A4,B4等)にプリント記録する
場合には、記録紙が複数枚に分割されないように記録画
像を定型紙のサイズに任意変倍して記録することが可能
となる。本処理例の実施例を図30のフローチャートを
参照しながら以下に示す。
【0093】まずプリンタ部にセットされる記録カセッ
トや、記録紙トレーのスライダー位置により記録紙サイ
ズをあらかじめ検出する。次にその情報をもとに対応す
る記録紙に対する記録可能なライン数M(Mは整数)を
あらかじめ設定されたROMテーブルより読み込む。次
に長尺原稿や読み込みサイズの異なる記録画像の実際の
記録ライン数Nをライン数及び解像度情報より算出する
(例えば、200dpiの解像度の画像nラインを40
0dpiに等倍記録する際には、2×n(nは整数)ラ
インとなる)。
トや、記録紙トレーのスライダー位置により記録紙サイ
ズをあらかじめ検出する。次にその情報をもとに対応す
る記録紙に対する記録可能なライン数M(Mは整数)を
あらかじめ設定されたROMテーブルより読み込む。次
に長尺原稿や読み込みサイズの異なる記録画像の実際の
記録ライン数Nをライン数及び解像度情報より算出する
(例えば、200dpiの解像度の画像nラインを40
0dpiに等倍記録する際には、2×n(nは整数)ラ
インとなる)。
【0094】次にN/Mを算出し、1.5>N/M>1
の場合には、倍率をM/Nに設定して記録画像を変倍し
定型記録紙に入るように変倍処理を施す。2.0≧N/
M≧1.5の場合には2枚目に分割等倍記録する。同様
に2.5>N/M>2ならば1枚目は等倍記録を行い2
枚目を定型記録紙に入るようにM/(N−M)変倍処理
する。以下N/M>2.5の場合は、同様にk+0.5
>N/M>k(kは整数)の場合はk枚の分割処理及び
k枚目は定型記録紙におさまるように最終記録紙への変
倍処理記録をおこなう。いまここで変倍記録の範囲をk
+0.5>N/M>k(kは整数)と0.5毎に設定し
てある勿論任意設定値でよい。また上記実施例では、副
走査方向の倍率設定の説明をおこなったが勿論主走査方
向に対しても同様な演算により倍率設定を行えば良い。
また長尺原稿のような場合には、第31図に示すように
副走査のみの変倍でもよい。
の場合には、倍率をM/Nに設定して記録画像を変倍し
定型記録紙に入るように変倍処理を施す。2.0≧N/
M≧1.5の場合には2枚目に分割等倍記録する。同様
に2.5>N/M>2ならば1枚目は等倍記録を行い2
枚目を定型記録紙に入るようにM/(N−M)変倍処理
する。以下N/M>2.5の場合は、同様にk+0.5
>N/M>k(kは整数)の場合はk枚の分割処理及び
k枚目は定型記録紙におさまるように最終記録紙への変
倍処理記録をおこなう。いまここで変倍記録の範囲をk
+0.5>N/M>k(kは整数)と0.5毎に設定し
てある勿論任意設定値でよい。また上記実施例では、副
走査方向の倍率設定の説明をおこなったが勿論主走査方
向に対しても同様な演算により倍率設定を行えば良い。
また長尺原稿のような場合には、第31図に示すように
副走査のみの変倍でもよい。
【0095】さらに上記実施例では、XY変換機能と変
倍機能の両方を有している。このことからXY変換機能
を変倍機能を併用して、例えば第32図に示すように、
B4縦でスキャナより読み込まれたもしくは、通信回線
より受信した画像を、A4横の記録紙(記録紙カセット
等によりあらかじめ記録紙のサイズ及び向きを検出)に
記録する場合には、81:n(nは解像度倍率、200
dpiを400dpiに記録する際にはn=2)%の変
倍とXY変換を併用しB4縦→A4横の変換のように、
変倍とXY変換を混在させて実行することが、本実施例
では容易に可能である。
倍機能の両方を有している。このことからXY変換機能
を変倍機能を併用して、例えば第32図に示すように、
B4縦でスキャナより読み込まれたもしくは、通信回線
より受信した画像を、A4横の記録紙(記録紙カセット
等によりあらかじめ記録紙のサイズ及び向きを検出)に
記録する場合には、81:n(nは解像度倍率、200
dpiを400dpiに記録する際にはn=2)%の変
倍とXY変換を併用しB4縦→A4横の変換のように、
変倍とXY変換を混在させて実行することが、本実施例
では容易に可能である。
【0096】さらに輪郭座標データ列が受信可能な相手
に対して、輪郭座標データ列を送信する場合において輪
郭座標データ列を送信する場合は、その変換データの特
性よりG3においてはエラーフリーであるECM送信が
必須であるが、回線状態によりECMの再送要求が頻繁
に発生しECM送信が困難な場合には、通常のMH、M
R等のハフマン符号化によるG3通信に切り替え送信す
ることでG3通信と輪郭座標データ列による通信の有効
利用が可能となる。
に対して、輪郭座標データ列を送信する場合において輪
郭座標データ列を送信する場合は、その変換データの特
性よりG3においてはエラーフリーであるECM送信が
必須であるが、回線状態によりECMの再送要求が頻繁
に発生しECM送信が困難な場合には、通常のMH、M
R等のハフマン符号化によるG3通信に切り替え送信す
ることでG3通信と輪郭座標データ列による通信の有効
利用が可能となる。
【0097】また、上記実施例では、像域分離回路によ
り文字・線画画像と中間調画像の分離をおこなっている
が、イメージスキャナのモードセレクトボタンまたは通
信プロトコルにより予め画像属性がわかり、変換画像が
疑似中間調なのか文字・線画画像なのか明白な場合に
は、像域分離による領域テーブルは必要とせず、画像属
性により輪郭抽出による画素密度変換を行うかどうかの
切り替えを行ってもよい。さらに、疑似中間調画像は、
文字線画画像に比べ、比較的輪郭座標データ列の1閉ル
ープの総点数が少なく、ベクトルの向きが1閉ループ内
で頻繁に変化するため、像域分離回路200及び領域判
定テーブルの変わりに平滑化処理をする段階で、輪郭座
標データ列の1閉ループの総数により平滑化処理を行う
か行わないか切り替えることで簡易な像域分離機能が実
現可能である。具体的には以下の様にして処理する。
り文字・線画画像と中間調画像の分離をおこなっている
が、イメージスキャナのモードセレクトボタンまたは通
信プロトコルにより予め画像属性がわかり、変換画像が
疑似中間調なのか文字・線画画像なのか明白な場合に
は、像域分離による領域テーブルは必要とせず、画像属
性により輪郭抽出による画素密度変換を行うかどうかの
切り替えを行ってもよい。さらに、疑似中間調画像は、
文字線画画像に比べ、比較的輪郭座標データ列の1閉ル
ープの総点数が少なく、ベクトルの向きが1閉ループ内
で頻繁に変化するため、像域分離回路200及び領域判
定テーブルの変わりに平滑化処理をする段階で、輪郭座
標データ列の1閉ループの総数により平滑化処理を行う
か行わないか切り替えることで簡易な像域分離機能が実
現可能である。具体的には以下の様にして処理する。
【0098】すなわち、1つの閉ループを形成する全ベ
クトルのx,y座標点の最小・最大点が得られるわけで
あるから、その閉ループに外接する矩形サイズが決定で
きる。つまり、閉ループの大きさを間接的に矩形サイズ
として取り出すことが可能になる。従って、その矩形サ
イズとその閉ループを形成している総点数との関係か
ら、平滑化を行うか否か、換言すれば、その閉ループが
中間調画像か文字・線画画像かを判断することが可能に
なる。尚、この場合、矩形サイズと閉ループとの関係を
テーブルとして記憶するか、式として記憶しておけばよ
い。
クトルのx,y座標点の最小・最大点が得られるわけで
あるから、その閉ループに外接する矩形サイズが決定で
きる。つまり、閉ループの大きさを間接的に矩形サイズ
として取り出すことが可能になる。従って、その矩形サ
イズとその閉ループを形成している総点数との関係か
ら、平滑化を行うか否か、換言すれば、その閉ループが
中間調画像か文字・線画画像かを判断することが可能に
なる。尚、この場合、矩形サイズと閉ループとの関係を
テーブルとして記憶するか、式として記憶しておけばよ
い。
【0099】また輪郭座標データ列は画像によってはか
なり大きくなるためメモリB1100の容量が小さい場
合など、画像によって輪郭座標データ列の抽出時にメモ
リオーバーフローする虞がある。この場合には、輪郭抽
出処理を中止し、2値ラスタ画像による座標変換(変
倍)処理に切り替えてもよい。つまり、メモリB110
0の容量は予め知っているわけであるから、構築されつ
つある粗輪郭ベクトルテーブルの最終アドレス位置とそ
のメモリの最終有効アドレス位置とを比較すれば良い。
なり大きくなるためメモリB1100の容量が小さい場
合など、画像によって輪郭座標データ列の抽出時にメモ
リオーバーフローする虞がある。この場合には、輪郭抽
出処理を中止し、2値ラスタ画像による座標変換(変
倍)処理に切り替えてもよい。つまり、メモリB110
0の容量は予め知っているわけであるから、構築されつ
つある粗輪郭ベクトルテーブルの最終アドレス位置とそ
のメモリの最終有効アドレス位置とを比較すれば良い。
【0100】また上記座標変換による変倍はもちろん主
走査,副走査別々の変倍率を乗算することが可能であ
り、x軸,y軸独立に行うことが可能である。かかる処
理は、入力した原稿画像サイズと、印刷出力する場合の
用紙サイズとを比較し、そのサイズの違いによってx軸
の変倍率とy軸の変倍率を算出すれば良い。勿論、ユー
ザ(オペレータ)が自身の好みに応じて任意に設定する
ようにしてもい。また、これらのx、y軸の変倍率はネ
ゴシエーションによって送信側が処理しても良いし、受
信側が受信したデータを印刷するときに処理するように
しても良い。
走査,副走査別々の変倍率を乗算することが可能であ
り、x軸,y軸独立に行うことが可能である。かかる処
理は、入力した原稿画像サイズと、印刷出力する場合の
用紙サイズとを比較し、そのサイズの違いによってx軸
の変倍率とy軸の変倍率を算出すれば良い。勿論、ユー
ザ(オペレータ)が自身の好みに応じて任意に設定する
ようにしてもい。また、これらのx、y軸の変倍率はネ
ゴシエーションによって送信側が処理しても良いし、受
信側が受信したデータを印刷するときに処理するように
しても良い。
【0101】また、平滑化処理においては、上記実施例
は、ゴミ画素除去の為に黒の孤立点の除去やノッチの除
去を行っているが、G3規格の標準解像度で読み込まれ
た画像データは、ノッチや孤立点が文字判読の情報とし
て必要な場合が多いため、外部切り替えモード(例えば
不図示の操作パネルにその旨のスイッチを設ける)によ
り入力画像の解像度によりノッチ除去,孤立画素除去の
パターンを平滑化パターンからはずして処理を行うこと
も可能である。もちろん、外部モードキーにより好みに
より平滑化処理を行うか、行わないかの切り替えは容易
に実現可能である。
は、ゴミ画素除去の為に黒の孤立点の除去やノッチの除
去を行っているが、G3規格の標準解像度で読み込まれ
た画像データは、ノッチや孤立点が文字判読の情報とし
て必要な場合が多いため、外部切り替えモード(例えば
不図示の操作パネルにその旨のスイッチを設ける)によ
り入力画像の解像度によりノッチ除去,孤立画素除去の
パターンを平滑化パターンからはずして処理を行うこと
も可能である。もちろん、外部モードキーにより好みに
より平滑化処理を行うか、行わないかの切り替えは容易
に実現可能である。
【0102】本実施例における座標変換回路900で
は、x座標,y座標の交換及び倍率の乗算のみを行って
いたが、この処理時に図示しない読みとり原稿の斜行角
度検出装置の出力値をもとに輪郭座標データ列のアフィ
ン変換による座標回転を行うことで読み取り原稿の斜行
の補正を行うとが可能である。この場合、例えば図25
に示すように、読み取り原稿を副走査方向に搬送して、
或いは、スキャナを副走査方向に移動して読み取る場
合、原稿の主走査方向のエッジ位置を順次検出するよう
にすればよい。すなわち、図示の如く、原稿1枚読み取
ったときのズレ量lx,そのときの副走査方向の搬送量
lyが検出されるわけであるから、原稿の斜行角度θ
は、tan-1(ly/lx)として求められる。
は、x座標,y座標の交換及び倍率の乗算のみを行って
いたが、この処理時に図示しない読みとり原稿の斜行角
度検出装置の出力値をもとに輪郭座標データ列のアフィ
ン変換による座標回転を行うことで読み取り原稿の斜行
の補正を行うとが可能である。この場合、例えば図25
に示すように、読み取り原稿を副走査方向に搬送して、
或いは、スキャナを副走査方向に移動して読み取る場
合、原稿の主走査方向のエッジ位置を順次検出するよう
にすればよい。すなわち、図示の如く、原稿1枚読み取
ったときのズレ量lx,そのときの副走査方向の搬送量
lyが検出されるわけであるから、原稿の斜行角度θ
は、tan-1(ly/lx)として求められる。
【0103】また、原稿のエッジ位置の変化を検出する
手段としては、いろいろ考えられる。例えば、原稿を搬
送してその記録面を読み取る場合には、その読み取る位
置における背景色(読み取り原稿がなかった場合におい
て検出される色)が白以外となる様にしておく。一般
に、原稿自身の背景色は白色であるので、その白色と区
別が付きさえすれば、エッジを検出することが可能にな
る。また、原稿の搬送方向の横方向から、その原稿が折
れ曲がらない程度の小さい力で押圧し、且つ、左右(主
走査)方向に移動自在な押圧板を設け、原稿の搬送量に
対するその押圧板の左右の移動量を検出することで、斜
行の程度を検出するようにしても良い。
手段としては、いろいろ考えられる。例えば、原稿を搬
送してその記録面を読み取る場合には、その読み取る位
置における背景色(読み取り原稿がなかった場合におい
て検出される色)が白以外となる様にしておく。一般
に、原稿自身の背景色は白色であるので、その白色と区
別が付きさえすれば、エッジを検出することが可能にな
る。また、原稿の搬送方向の横方向から、その原稿が折
れ曲がらない程度の小さい力で押圧し、且つ、左右(主
走査)方向に移動自在な押圧板を設け、原稿の搬送量に
対するその押圧板の左右の移動量を検出することで、斜
行の程度を検出するようにしても良い。
【0104】さて、上記斜行修正処理は、原稿画像を読
み取って、メモリA300に読み取り画像を格納した後
あるいは格納するとき、その画像を得られた斜行角度だ
け逆方向に回転(アフィン変換)させればよい。この
後、上述した処理を行えば良い。また、上述した第2平
滑化処理を行って得られた座標データに対して回転処理
を行ってもよい。また、斜行修正を行う場合に、自動的
にかかる処理を行っても良いが、オペレータにその旨を
報知(操作パネルに設けられた表示部にメッセージを表
示する等)し、オペレータが斜行修正するか否かを指示
するようにしてもよい。
み取って、メモリA300に読み取り画像を格納した後
あるいは格納するとき、その画像を得られた斜行角度だ
け逆方向に回転(アフィン変換)させればよい。この
後、上述した処理を行えば良い。また、上述した第2平
滑化処理を行って得られた座標データに対して回転処理
を行ってもよい。また、斜行修正を行う場合に、自動的
にかかる処理を行っても良いが、オペレータにその旨を
報知(操作パネルに設けられた表示部にメッセージを表
示する等)し、オペレータが斜行修正するか否かを指示
するようにしてもよい。
【0105】また、原稿画像の斜行読み取りに関わら
ず、操作パネルから任意の角度に指示して、回転させて
もよい。つまり、読み取り対象の原稿の文字が既に斜め
になっている場合に備えている。
ず、操作パネルから任意の角度に指示して、回転させて
もよい。つまり、読み取り対象の原稿の文字が既に斜め
になっている場合に備えている。
【0106】2値画像再生成回路では、ビットマップの
画像メモリを1画面分使用するページメモリ使用タイプ
の場合を説明したが、スキャンラインコンバージョン
(バケットソート法)のようにエッジテーブル,アクテ
ィブエッジテーブルを用い数ラインのラインバッファに
より、輪郭画像の稜線エッジの描画を行っても良い。
画像メモリを1画面分使用するページメモリ使用タイプ
の場合を説明したが、スキャンラインコンバージョン
(バケットソート法)のようにエッジテーブル,アクテ
ィブエッジテーブルを用い数ラインのラインバッファに
より、輪郭画像の稜線エッジの描画を行っても良い。
【0107】本実施例では、画像出力装置としてプリン
タを用いたが、図1のFIFO500,プリンタ600
の変わりにVideoメモリ,ディスプレイを用いるこ
とで画像をディスプレイ出力が可能である。
タを用いたが、図1のFIFO500,プリンタ600
の変わりにVideoメモリ,ディスプレイを用いるこ
とで画像をディスプレイ出力が可能である。
【0108】また輪郭座標データ列を用いた通信の応用
例として、別途、画像位置を示すデジタイザを持たせ、
このデジタイザで指示された領域内の輪郭座標データ閉
ループに対し、装飾コード(網掛けやなかの色塗りのパ
ターンの変更,色の変更)を付加して送るようにしても
よい。受信側では、装飾コードに応じて網掛けやなかの
色塗りのパターンの変更,色の変更を容易に実行するこ
とが可能になる。
例として、別途、画像位置を示すデジタイザを持たせ、
このデジタイザで指示された領域内の輪郭座標データ閉
ループに対し、装飾コード(網掛けやなかの色塗りのパ
ターンの変更,色の変更)を付加して送るようにしても
よい。受信側では、装飾コードに応じて網掛けやなかの
色塗りのパターンの変更,色の変更を容易に実行するこ
とが可能になる。
【0109】更に、レポートやヘッダのようにフォント
を一度2値ラスタ画像として展開して送信する変わり
に、アウトラインを用いたフォントデータとして直接送
受信することや従来のアウトラインの展開を2値画像再
生成及び中塗り回路と共通に用いることでアウトライン
フォントの出力が容易にすることも可能である。
を一度2値ラスタ画像として展開して送信する変わり
に、アウトラインを用いたフォントデータとして直接送
受信することや従来のアウトラインの展開を2値画像再
生成及び中塗り回路と共通に用いることでアウトライン
フォントの出力が容易にすることも可能である。
【0110】もちろん本実施例では、従来の解像度変換
に用いられる動作はすべて実現可能であり、倍率指定キ
ーによる任意変倍処理や、カセットサイズ検出により長
尺原稿を定型カット紙にいれるための処理は、本実施例
の構成で実現可能である。
に用いられる動作はすべて実現可能であり、倍率指定キ
ーによる任意変倍処理や、カセットサイズ検出により長
尺原稿を定型カット紙にいれるための処理は、本実施例
の構成で実現可能である。
【0111】以上説明したように本実施例によれば、ま
た、原稿を斜行して読み取ってしまった場合において
も、その斜行分を逆回転して補正するので、正立した良
好な画像を得ることが可能になる。
た、原稿を斜行して読み取ってしまった場合において
も、その斜行分を逆回転して補正するので、正立した良
好な画像を得ることが可能になる。
【0112】また、オリジナル画像のビットイメージと
して扱う他に、その輪郭ベクトルを抽出し、その抽出さ
れた輪郭ベクトルに基づいて処理するので、そのエッジ
がギザギザになることはなくなる。
して扱う他に、その輪郭ベクトルを抽出し、その抽出さ
れた輪郭ベクトルに基づいて処理するので、そのエッジ
がギザギザになることはなくなる。
【0113】また、抽出した輪郭ベクトルに基づくデー
タを相手先に送信し、相手先は受信したデータに基づい
て画像を再生出力するので、通信にかかる時間を短縮で
き、且つ、高精細な画像の伝送が可能になる。
タを相手先に送信し、相手先は受信したデータに基づい
て画像を再生出力するので、通信にかかる時間を短縮で
き、且つ、高精細な画像の伝送が可能になる。
【0114】また、オリジナル画像より抽出した輪郭ベ
クトルを平滑化するので、拡大処理を行っても、そのベ
クトルに対して拡大を行い画像を再現するので、倍率に
関わりなく高品位な画像を得ることが可能になる。
クトルを平滑化するので、拡大処理を行っても、そのベ
クトルに対して拡大を行い画像を再現するので、倍率に
関わりなく高品位な画像を得ることが可能になる。
【0115】また、解像度変換が必要な場合のみ、抽出
した輪郭ベクトルの変倍処理を行うようにするので、シ
ステムにかかる負荷を極力小さくでき、変倍処理を行わ
ない普段の処理速度が低下することを防ぐことが可能に
なる。
した輪郭ベクトルの変倍処理を行うようにするので、シ
ステムにかかる負荷を極力小さくでき、変倍処理を行わ
ない普段の処理速度が低下することを防ぐことが可能に
なる。
【0116】また、読み取った2値画像から輪郭ベクト
ルを抽出するとき、その輪郭ベクトルの格納サイズがメ
モリ容量を越えるか否かを判断し、メモリオーバーにな
ると判断した場合には直ちに輪郭ベクトル抽出処理を中
止し、2値画像による処理に切り換える。これによっ
て、メモリオーバーした場合にも正しく印刷、或いは送
信することが可能になる。
ルを抽出するとき、その輪郭ベクトルの格納サイズがメ
モリ容量を越えるか否かを判断し、メモリオーバーにな
ると判断した場合には直ちに輪郭ベクトル抽出処理を中
止し、2値画像による処理に切り換える。これによっ
て、メモリオーバーした場合にも正しく印刷、或いは送
信することが可能になる。
【0117】また、輪郭ベクトルデータに基づく変倍処
理を行う場合、平滑化処理を行うか否かを外部のスイッ
チによって切り換えるようにする。これによって、オペ
レータの好みに応じて平滑化処理を施したり、処理速度
を重視するかを切り換えることが可能になる。更には、
読み取った或いは受信した画像を変倍して印刷すると
き、平滑化処理を行わせることにより、歪の少ない高品
位の画像を得ることができる。しかも、変倍率を不図示
のスイッチより指示するようにすれば、所望としたサイ
ズの画像を得ることが可能になる。また、拡大処理する
ときにのみ、輪郭ベクトルデータに基づく変倍処理を行
うので、装置にかかる負担を軽減させ、もって等倍や縮
小などの処理を行う場合の処理速度を下がることを防ぐ
ことが可能になる。
理を行う場合、平滑化処理を行うか否かを外部のスイッ
チによって切り換えるようにする。これによって、オペ
レータの好みに応じて平滑化処理を施したり、処理速度
を重視するかを切り換えることが可能になる。更には、
読み取った或いは受信した画像を変倍して印刷すると
き、平滑化処理を行わせることにより、歪の少ない高品
位の画像を得ることができる。しかも、変倍率を不図示
のスイッチより指示するようにすれば、所望としたサイ
ズの画像を得ることが可能になる。また、拡大処理する
ときにのみ、輪郭ベクトルデータに基づく変倍処理を行
うので、装置にかかる負担を軽減させ、もって等倍や縮
小などの処理を行う場合の処理速度を下がることを防ぐ
ことが可能になる。
【0118】また、本実施例によれば、画像送信の際、
入力された受信側装置のダイヤル情報に応じて、輪郭デ
ータ又はラスタ符号化データを自動的に選択して送信す
ることができる。
入力された受信側装置のダイヤル情報に応じて、輪郭デ
ータ又はラスタ符号化データを自動的に選択して送信す
ることができる。
【0119】また、抽出された閉ループに対する総点数
に基づいて、その画像が中間調画像か文字・線画画像か
がある程度判別できるので、領域判別に係る装置や回路
を省くことが可能になり、コストダウンを計ることが可
能になる。
に基づいて、その画像が中間調画像か文字・線画画像か
がある程度判別できるので、領域判別に係る装置や回路
を省くことが可能になり、コストダウンを計ることが可
能になる。
【0120】また、輪郭ベクトルに基づく変倍処理は、
文字・線画画像に対してのみ有効であって、中間調画像
に対して行うと良好な結果が得られない。この点、上述
した実施例によれば、文字・線画画像に対してのみ得ら
れた輪郭ベクトルデータに基づく変倍処理を行い、中間
調画像に対する変倍はその画像を形成している画素の補
間や間引き処理で行うことにしたので、良好な画像を得
ることが可能になる。
文字・線画画像に対してのみ有効であって、中間調画像
に対して行うと良好な結果が得られない。この点、上述
した実施例によれば、文字・線画画像に対してのみ得ら
れた輪郭ベクトルデータに基づく変倍処理を行い、中間
調画像に対する変倍はその画像を形成している画素の補
間や間引き処理で行うことにしたので、良好な画像を得
ることが可能になる。
【0121】また、実施例で説明した装置間の通信で
は、その通信されるデータは輪郭座標データで行うこと
ができ、しかも、送信側或いは受信側でそのデータの
x,y方向に対する変倍を独立に行うことができ、かか
る変倍を行っても自身の好みに応じて且つ良好な画像を
得ることが可能になる。
は、その通信されるデータは輪郭座標データで行うこと
ができ、しかも、送信側或いは受信側でそのデータの
x,y方向に対する変倍を独立に行うことができ、かか
る変倍を行っても自身の好みに応じて且つ良好な画像を
得ることが可能になる。
【0122】尚、本発明は、複数の機器から構成される
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、本発明はシステム或は装置にプログ
ラムを供給することによって達成される場合にも適用で
きることは言うまでもない。
システムに適用しても、1つの機器から成る装置に適用
しても良い。また、本発明はシステム或は装置にプログ
ラムを供給することによって達成される場合にも適用で
きることは言うまでもない。
【0123】
【発明の効果】以上説明したように本発明の画像通信装
置によれば通信に要する時間を短縮できるとともに、送
信側又は受信側において輪郭ベクトルデータに対する種
々の変換処理を実行でき、高画質な画像を通信すること
ができる。
置によれば通信に要する時間を短縮できるとともに、送
信側又は受信側において輪郭ベクトルデータに対する種
々の変換処理を実行でき、高画質な画像を通信すること
ができる。
【図1】本実施例のファクシミリ装置のブロック構成図
である。
である。
【図2】送信処理の内容を示すフローチャートである。
【図3】送信処理の内容を示すフローチャートである。
【図4】送信処理の内容を示すフローチャートである。
【図5】受信側装置が輪郭データ受信機能を有するか否
かを示したテーブルである。
かを示したテーブルである。
【図6】受信処理の内容を示すフローチャートである。
【図7】受信処理の内容を示すフローチャートである。
【図8】コピー処理の内容を示すフローチャートであ
る。
る。
【図9】実施例における輪郭抽出回路のブロック構成図
である。
である。
【図10】輪郭抽出回路におけるラスタ画像走査を説明
するための図である。
するための図である。
【図11】水平方向の粗輪郭ベクトルテーブルを説明す
るための図である。
るための図である。
【図12】垂直方向の粗輪郭ベクトルテーブルを説明す
るための図である。
るための図である。
【図13】輪郭座標データ列のテーブルである。
【図14】実施例における平滑化・座標変換回路のブロ
ック構成図である。
ック構成図である。
【図15】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図16】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図17】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図18】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図19】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図20】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図21】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図22】実施例における第1平滑化処理を説明するた
めの図である。
めの図である。
【図23】実施例における第2平滑化処理を説明するた
めの図である。
めの図である。
【図24】中塗り回路のブロック構成図である。
【図25】入力画像の例を示す図である。
【図26】図25の画像に対する輪郭座標データ列の例
を示す図である。
を示す図である。
【図27】実施例における粗輪郭ベクトル抽出の処理内
容を説明するための具体的な画像例を示す図である。
容を説明するための具体的な画像例を示す図である。
【図28】粗輪郭ベクトルテーブルの構築の過程を説明
するための図である。
するための図である。
【図29】図2のステップS7,8を一部変更した例を
示した図である。
示した図である。
【図30】画像を任意変倍して記録する際の例を示した
図である。
図である。
【図31】副走査方向に対する変倍の例を示した図であ
る。
る。
【図32】XY変換及び変倍の例を示した図である。
【図33】原稿斜行の度合いを検出する原理を説明する
ための図である。
ための図である。
100 イメージスキャナ 200 像域分離回路 300 メモリA 400 中塗り回路 500 FIFO 600 プリンタ 700 輪郭抽出回路 800 符号復号化回路 900 平滑化・座標変換回路 1000 2値画像再生成回路 1100 メモリB 1200 CPU 1300 CCU 1400 バスB 1500 バスA 1600 ラスタ画像変倍回路 2000 操作部
Claims (4)
- 【請求項1】 画像を読み取りデジタル多値信号を出力
する画像読み取り手段と、 前記読み取り手段からのデジタル多値データを2値化す
る2値化手段と、 前記2値化手段によって2値化された2値画像から画像
のエッジに沿った輪郭ベクトルデータを抽出する抽出手
段と、 前記抽出された輪郭ベクトルデータを送信する送信手段
とを有することを特徴とする画像通信装置。 - 【請求項2】 更に、前記抽出された輪郭ベクトルデー
タを変倍処理する変倍処理手段を有し、前記送信手段は
変倍処理された輪郭ベクトルデータを送信することを特
徴とする請求項1記載の画像通信装置。 - 【請求項3】 更に、前記2値化手段によって2値化さ
れた2値画像を符号化する符号化手段を有し、前記送信
手段は前記輪郭ベクトルデータ及び前記符号化されたデ
ータのうちデータ量の少ないいずれか一方のデータを送
信することを特徴とする請求項1記載の画像通信装置。 - 【請求項4】 画像を表わす2値データを入力する入力
手段と、 前記入力した2値データから画像のエッジに沿った輪郭
ベクトルデータを抽出する抽出手段と、 前記2値データを符号化する符号化手段と、 受信先装置を示すダイヤル情報に基づき、受信先装置が
輪郭ベクトルデータを受信する機能を有するか否かを判
別する判別手段と、 前記判別手段の判別結果に応じて前記抽出された輪郭ベ
クトルデータ若しくは前記符号化されたデータの何れか
一方を選択し、前記受信先装置へ送信する送信手段とを
有することを特徴とする画像通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4114834A JPH05314251A (ja) | 1992-05-07 | 1992-05-07 | 画像通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4114834A JPH05314251A (ja) | 1992-05-07 | 1992-05-07 | 画像通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05314251A true JPH05314251A (ja) | 1993-11-26 |
Family
ID=14647866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4114834A Pending JPH05314251A (ja) | 1992-05-07 | 1992-05-07 | 画像通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05314251A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1919182A3 (en) * | 2006-10-31 | 2009-01-21 | Canon Kabushiki Kaisha | Image processing apparatus and control method for image processing apparatus |
US8384920B2 (en) | 2007-06-25 | 2013-02-26 | Canon Kabushiki Kaisha | Image processing apparatus and method, and program for implementing the method |
-
1992
- 1992-05-07 JP JP4114834A patent/JPH05314251A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1919182A3 (en) * | 2006-10-31 | 2009-01-21 | Canon Kabushiki Kaisha | Image processing apparatus and control method for image processing apparatus |
US8384920B2 (en) | 2007-06-25 | 2013-02-26 | Canon Kabushiki Kaisha | Image processing apparatus and method, and program for implementing the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0554985B1 (en) | Method and apparatus for contour vector extraction and image enlargement/reduction | |
EP0554002B1 (en) | Method and apparatus for generating and transmitting vectorised image data | |
EP0650287A2 (en) | Image processing method and apparatus | |
EP0681266A1 (en) | Image processing apparatus | |
JP2967011B2 (ja) | 画像処理方法及び装置 | |
JPH08274986A (ja) | 画像処理装置 | |
JPH03204274A (ja) | カラー画像伝送方法 | |
JPH05314251A (ja) | 画像通信装置 | |
JP2784278B2 (ja) | 画像変倍処理装置 | |
JP3147246B2 (ja) | 画像処理装置及び方法 | |
JP3478861B2 (ja) | 2値画像データのスムージング拡大処理方法 | |
JPH05211607A (ja) | 画像処理装置及び方法 | |
JP3190085B2 (ja) | 画像処理装置及び方法 | |
JPH05211604A (ja) | 画像処理装置及び方法 | |
JPH05211614A (ja) | 画像処理装置及び方法 | |
JPH05211603A (ja) | 画像通信装置及び方法 | |
JPH05211602A (ja) | 画像処理装置及び方法 | |
JPH05211613A (ja) | 画像通信装置 | |
JPH05328144A (ja) | 画像通信装置 | |
JPH05211615A (ja) | 画像処理装置及び方法 | |
JPH05328145A (ja) | 画像通信装置 | |
JPH06141169A (ja) | 画像通信装置 | |
JPH06208616A (ja) | 画像処理装置 | |
JP2003189090A (ja) | 画像処理装置及び画像処理方法、画像処理プログラム、記憶媒体 | |
JP2004303276A (ja) | 画像処理装置 |