JP3006973B2 - 画像処理装置及び方法 - Google Patents

画像処理装置及び方法

Info

Publication number
JP3006973B2
JP3006973B2 JP5106643A JP10664393A JP3006973B2 JP 3006973 B2 JP3006973 B2 JP 3006973B2 JP 5106643 A JP5106643 A JP 5106643A JP 10664393 A JP10664393 A JP 10664393A JP 3006973 B2 JP3006973 B2 JP 3006973B2
Authority
JP
Japan
Prior art keywords
image
smoothing
image data
vector
magnifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP5106643A
Other languages
English (en)
Other versions
JPH06318248A (ja
Inventor
明洋 吉谷
良弘 石田
昭宏 片山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP5106643A priority Critical patent/JP3006973B2/ja
Priority to EP93307549A priority patent/EP0589702B1/en
Priority to DE69324874T priority patent/DE69324874T2/de
Publication of JPH06318248A publication Critical patent/JPH06318248A/ja
Priority to US08/636,629 priority patent/US5828794A/en
Priority to US09/038,477 priority patent/US6111994A/en
Application granted granted Critical
Publication of JP3006973B2 publication Critical patent/JP3006973B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えばラスタ走査順に
出力した2値画像の変倍処理等を行なう画像処理装置及
び方法に関するものである。
【0002】
【従来の技術】従来のアウトラインベクトルの抽出法と
しては、輪郭線に沿った追跡を行なうものが一般的であ
った。それゆえ、従前の手法では、全画像を画像メモリ
上に取り込んだ後で、輪郭線の抽出処理を開始しなけれ
ばならないため、必要とする画像メモリ容量が大きくな
り、コストアップや処理時間が遅くなるなどの不具合が
あった。
【0003】これに対し、2値画像からアウトラインベ
クトルを抽出し、そのアウトラインベクトルを用いて画
像の変倍・平滑化を行なうことにより美しい変倍画像を
得る手法が、本願出願人により特願平3−345062
として先に提案されている。また、2値画像からアウト
ラインベクトルを抽出する手法としては、本願出願人に
より3ラスタ分の画像メモリしか必要としないような手
法が特願平2−281958として先に提案されてい
る。この特願平2−281958の手法によれば、画像
メモリは少量ですむ。しかしながら、この手法を用いて
も、ワーキングメモリも含めて、1つの画像から抽出さ
れる全てのベクトルデータを保持するに足る大量のメモ
リを要していた。
【0004】このような背景から、入力画像を図1に示
すように帯状に分割し、各帯状画像(以後ストライプと
称する)毎に独立にアウトラインベクトル抽出、変倍、
平滑化の各処理を行なった後に各処理結果を結合するこ
とにより所望の画像を得るような処理を行なうことで、
ワークメモリの節約を行なうような手法が、特願平4−
254989として、本願出願人によって先に提案され
ている。
【0005】
【発明が解決しようとする課題】この特願平4−254
989に示すような装置構成において上記の処理を行な
う場合、図2に示すように、あるストライプについて順
にアウトラインベクトル抽出、変倍/平滑化、画像再生
の処理を行ない、その後で次のストライプについて同様
の処理を行なおうと行ったことを繰り返すため、処理開
始から処理終了までのスループット時間が非常に長くか
かるという欠点があった。(図2以降の図については、
入力画像が4つのストライプに分割された場合の例を示
すが、ストライプの数が異なる場合でも同様である。) 本発明は、かかる問題点に鑑みなされたものであり、入
力画像のアウトラインベクトルを用いて美しい変倍画像
を得るような画像処理を行なうことに関して、処理全体
のスループット時間を劇的に短縮できるような画像処理
方法を提供しようとすることを目的とする。
【0006】更に、上記のようなストライプに分割した
アウトラインベクトル処理の手法を用いる場合、各スト
ライプごとに変倍処理を行うため、倍率が整数倍でない
場合には、各ストライプごとの変倍の計算を行った際の
丸め誤差のために、各ストライプごとの処理結果を結合
して得られる最終的に出力される画像のライン数が、入
力画像全体を変倍した場合の出力画像のライン数に比べ
て異なる値となるという問題点がある。
【0007】本発明はまたかかる問題点に鑑みて成され
たものであり、各ストライプごとに変倍の処理を行うこ
とに関して、処理結果を結合して得られる最終出力画像
のライン数が、入力画像全体を変倍した場合の出力画像
のライン数と大きく異なることがないような画像処理装
置及び方法を提供することを目的とする。
【0008】更に、上記のような処理を行うと、処理を
高速化でき、ワークメモリを節約できるという利点があ
る反面、例えば、図26のような例では平滑化により再
生画像が劣化する場合がある。すなわち、図26(a)
の画像を入力とし、図26(b)のように5ラインずつ
のストライプに分割すると、図26(b)のように、平
滑化により凹部(白画素)101,102,103が削
除されて、変倍後には図26(c)のようになってしま
う。
【0009】本発明はまたかかる問題点に鑑みて成され
たもので、分割されたストライプごとに処理を行うこと
によって生じる、ストライプの継ぎ目部分の最終出力画
像の劣化を防ぐことができるような画像処理装置及び方
法を提供することを目的とする。
【0010】
【課題を解決するための手段】及び
【作用】上記目的を達成するため本発明の画像処理装置
は次のような構成からなる。
【0011】画像データの輪郭ベクトルを抽出する抽出
手段と、輪郭ベクトルを平滑化/変倍する平滑変倍手段
と、前記抽出手段により所定量の画像データから輪郭ベ
クトルを抽出されたことを判定する判定手段と、該判定
手段による判定結果に基づいて、前記抽出手段により抽
出された輪郭ベクトルを平滑化/変倍すべく前記平滑変
倍手段を制御する制御手段とを備える。
【0012】更に、画像データの輪郭ベクトルを平滑化
/変倍する平滑変倍手段と、輪郭ベクトルに基づいて画
像データを再生する再生手段と、前記平滑変倍手段によ
り所定量の画像データに相当する輪郭ベクトルが平滑化
/変倍されたことを判定する判定手段と、該判定手段に
よる判定結果に基づいて、前記平滑変倍手段により平滑
化/変倍された輪郭ベクトルを再生すべく前記再生手段
を制御する制御手段とを備える。
【0013】更に、画像データの輪郭ベクトルを抽出す
る抽出手段と、輪郭ベクトルを平滑化/変倍する平滑変
倍手段と、前記抽出手段により所定量の画像データから
輪郭ベクトルが抽出されたことを判定する第1の判定手
段と、輪郭ベクトルに基づいて画像データを再生する再
生手段と、前記平滑変倍手段により所定量の画像データ
に相当する輪郭ベクトルが平滑化/変倍されたことを判
定する第2の判定手段と、前記第1の判定手段による判
定結果に基づいて、前記抽出手段により抽出された輪郭
ベクトルを平滑化/変倍すべく前記平滑変倍手段を制御
し、前記第2の判定手段による判定結果に基づいて、前
記平滑変倍手段により平滑化/変倍された輪郭ベクトル
を再生すべく前記再生手段を制御する制御手段とを備え
る。
【0014】更に、入力画像データを複数の矩形領域に
分割する手段と、前記複数の矩形領域ごとに所定の変倍
率で変倍してそれらをまとめた場合の、画像の第1の大
きさを算出する第1の算出手段と、前記第1の算出手段
の対象となる矩形領域すべてを合わせた画像データを前
記変倍率で変倍した場合の、画像の第2の大きさを算出
する第2の算出手段と、前記変倍率により前記矩形領域
を変倍する変倍手段と、前記第1の大きさと第2の大き
さとに基づいて、前記変倍率手段により変倍された矩形
領域の大きさを補正する補正手段とを備える。
【0015】更に、入力画像データを複数の矩形領域
に、各領域間で重複する重複領域を含めて分割する手段
と、前記矩形領域から画像の輪郭を表す輪郭ベクトルを
抽出する手段と、前記複数の矩形領域ごとに前記輪郭ベ
クトルを平滑化/変倍する平滑変倍手段と、前記平滑変
倍手段により平滑化/変倍された輪郭ベクトルをもとに
前記矩形領域の画像データを再生する再生手段と、前記
再生された矩形領域の画像データを、前記重複領域の一
部を重ね合わせてつなぐつなぎ手段とを備える。また、
本発明の画像処理方法は次のような構成からなる。
【0016】画像データの輪郭ベクトルを抽出する抽出
工程と、輪郭ベクトルを平滑化/変倍する平滑変倍工程
と、前記抽出工程により所定量の画像データから輪郭ベ
クトルを抽出されたことを判定する判定工程と、該判定
工程による判定結果に基づいて、前記抽出工程により抽
出された輪郭ベクトルを平滑化/変倍すべく制御する制
御工程とを備える。
【0017】更に、画像データの輪郭ベクトルを平滑化
/変倍する平滑変倍工程と、輪郭ベクトルに基づいて画
像データを再生する再生工程と、前記平滑変倍工程によ
り所定量の画像データに相当する輪郭ベクトルが平滑化
/変倍されたことを判定する判定工程と、該判定工程に
よる判定結果に基づいて、前記平滑変倍工程により平滑
化/変倍された輪郭ベクトルを再生すべく制御する制御
工程とを備える。
【0018】更に、画像データの輪郭ベクトルを抽出す
る抽出工程と、輪郭ベクトルを平滑化/変倍する平滑変
倍工程と、前記抽出工程により所定量の画像データから
輪郭ベクトルを抽出されたことを判定する第1の判定工
程と、輪郭ベクトルに基づいて画像データを再生する再
生工程と、前記平滑変倍工程により所定量の画像データ
に相当する輪郭ベクトルが平滑化/変倍されたことを判
定する第2の判定工程と、前記第1の判定工程による判
定結果に基づいて、前記抽出工程により抽出された輪郭
ベクトルを平滑化/変倍すべく制御し、前記第2の判定
工程による判定結果に基づいて、前記平滑変倍工程によ
り平滑化/変倍された輪郭ベクトルを再生すべく制御す
る制御工程とを備える。
【0019】更に、入力画像データを複数の矩形領域に
分割する工程と、前記複数の矩形領域ごとに所定の変倍
率で変倍してそれらをまとめた場合の、画像の第1の大
きさを算出する第1の算出工程と、前記第1の算出工程
の対象となる矩形領域すべてを合わせた画像データを前
記変倍率で変倍した場合の、画像の第2の大きさを算出
する第2の算出工程と、前記変倍率により前記矩形領域
を変倍する変倍工程と、前記第1の大きさと第2の大き
さとに基づいて、前記変倍率工程により変倍された矩形
領域の大きさを補正する補正工程とを備える。
【0020】更に、入力画像データを複数の矩形領域
に、各領域間で重複する重複領域を含めて分割する工程
と、前記矩形領域から画像の輪郭を表す輪郭ベクトルを
抽出する工程と、前記複数の矩形領域ごとに前記輪郭ベ
クトルを平滑化/変倍する平滑変倍工程と、前記平滑変
倍工程により平滑化/変倍された輪郭ベクトルをもとに
前記矩形領域の画像データを再生する再生工程と、前記
再生された矩形領域の画像データを、前記重複領域の一
部を重ね合わせてつなぐつなぎ工程とを備える。
【0021】
【第1実施例】本発明の実施例として、画像データから
アウトラインベクトルを抽出し、抽出したアウトライン
ベクトルから画像を再生する画像処理装置を説明する。
【0022】<装置の構成>図4は本実施例における画
像の変倍を行なう装置の構成図である。同図において、
2値画像獲得部401は変倍処理を施すデジタル2値画
像を獲得し、ラスタ走査形式の2値画像を出力するもの
で、例えば、ファックスにおける、電話回線から画像を
取り込む入力インターフェースなどを指す。内部にCP
UとROMを持ち他の手段とは独立に動作するが、制御
部412からの命令により画像データ入力を中止および
再開することができる。入力画像を最終ラインまで入力
し終ると412に割り込み信号を送り、412のRAM
上にあるフラグlastの値を1にする。このフラグの
意味については後述する。
【0023】マルチプレクサ402は、2値画像獲得部
401からラスタ走査形式で入力されてくる2値画像
を、ストライプ画像メモリ(A)403またはストライ
プ画像メモリ(B)404のどちらかを制御部412の
制御により選択して出力する。入力画像の最初からaラ
イン分だけ画像メモリ(A)403に出力し、次にbラ
イン分を画像メモリ(B)404に出力するように制御
部412がマルチプレクサ402の制御を行なえば、画
像メモリ(A)403および画像メモリ(B)404上
にaライン分とbライン分のストライプを得ることがで
きる。各ストライプを何ラインにするかについては、あ
らかじめ固定のライン数にしておいても良いし、あるい
は可変値にして制御部412から制御できるようにして
おいても良い。
【0024】ストライプ画像メモリ(A)403および
ストライプ画像メモリ(B)404は、マルチプレクサ
402からラスタ走査形式で送られてくる入力画像を一
時的に保存する画像メモリである。メモリ(A)403
またはメモリ(B)404に保存されている画像を1ス
トライプとして、以降の処理はこのストライプを単位と
して行なわれる。また、画像メモリ(A)403および
画像メモリ(B)404の各々内部に状態フラグ用のメ
モリを持っている。状態フラグは、画像データ入力中は
“busy”、1ストライプ分の画像を読み込んで動作
を停止している間は“full”となっていて、制御部
412から随時アクセス可能になっている。各画像メモ
リ内のデータは、データセレクタ405へ出力された後
にクリアされる。
【0025】データセレクタ405は、画像メモリ
(A)403および画像メモリ(B)404のどちらか
を制御部412からの制御により選択し、その選択した
側からストライプ画像を取り込み、アウトラインベクト
ル抽出部406へラスタ走査形式で出力する。
【0026】アウトラインベクトル抽出部406は、デ
ータセレクタ405からラスタ走査順に出力されてくる
ストライプ画像から特願平2−281958の方法で画
像データの輪郭線をベクトルとして表したアウトライン
ベクトルを抽出し、抽出したアウトラインベクトルをF
IFO形式のベクトル用メモリ(A)407へ出力す
る。この抽出方法を簡単に説明すると、画像データにお
ける注目画素とその近傍画素の状態を調べ、相隣り合う
2つの画素の画素値が異なる場合には、その2つの画素
間に素輪郭ベクトルを検出し、検出した素輪郭ベクトル
を黒画素を囲むようなループの形に整列し、アウトライ
ンベクトルとするものである。
【0027】ベクトルデータ用メモリ(A)407は、
アウトラインベクトル抽出部406において抽出され
た、ストライプ画像のアウトラインベクトルデータを一
時的に保存するFIFO形式のメモリである。
【0028】アウトラインベクトル平滑化/変倍部40
8は、ベクトルデータ用FIFOメモリ(A)407よ
りアウトラインベクトルデータを受け取り、特願平3−
345062に示す方法で平滑及び変倍を行い、その結
果をベクトルデータ用FIFOメモリ(B)409へ出
力する。この平滑/変倍の方法とは、簡単に説明する
と、例えば、閉ループを成すベクトルが水平・垂直各2
本ずつで、それら全てが長さ1である場合には当該閉ル
ープを形成するベクトル群を削除するといったように、
閉ループを成す輪郭ベクトルにおける注目ベクトルとそ
の前後のベクトルとの関係に基づき、所定の規則に従っ
て前記輪郭ベクトルを操作したり、角点を固定点とし、
その他の点を浮動点として、注目浮動点についてその前
後の点との重み付け計算して注目浮動点の位置を補正す
るといった方法でベクトルの平滑化を行い、また、ベク
トルを表す座標に所望倍率を乗じる等により変倍を行な
うものである。
【0029】ベクトルデータ用メモリ(B)409は、
アウトラインベクトル平滑化/変倍部408から出力さ
れた、変倍/平滑化されたベクトルデータを一時的に保
存するFIFO形式のメモリである。
【0030】2値画像再生部410は、ベクトルデータ
用メモリ(B)409から変倍/平滑化されたベクトル
のデータを読み込み、特願平3−172098に示す方
法で2値画像をストライプ単位で再生し、処理が終了す
ると、図示しないインターフェースを介してこの再生画
像データを画像出力部411へ出力する。この再生処理
の方法を簡単に説明すると、平滑処理して得られたベク
トルデータに基づいて輪郭線(拡大処理されたものを含
む)を描画し、その内部を黒画素で埋める処理である。
【0031】アウトラインベクトル抽出部406、アウ
トラインベクトル平滑化/変倍部408、2値画像再生
部410は、それぞれ内部にCPU,ROM,RAM
(ワークメモリ)を持ち各々独立に動作するが、制御部
412の命令により処理を開始するようになっている。
各々状態フラグ用メモリを持ち、処理中はフラグを“b
usy”に、処理が終了して制御部412からの(次の
ストライプに対しての)処理開始命令を待っている間は
フラグを“ready”にする。これらのフラグは、制
御部412から随時アクセス可能となっている。
【0032】2値画像出力部411は、図示しないイン
ターフェース部を介して2値画像再生部410から画像
データを受け取ると、自動的に、ラスタ走査型の2値画
像データを表示したり、ハードコピーをとったり、ある
いは通信路などへ出力したりする。これは、例えば液晶
ディスプレイや感熱記録装置、あるいはモデムなどで構
成される。
【0033】制御部412は、ブロック401〜411
における処理の入出力のタイミングやデータの経路の選
択などについての制御を行なう制御部である。内部にC
PU,ROM,RAMを持ち、ブロック401〜411
の各々に信号線がつながっている。これらの信号線から
随時状態フラグを読み込んだり、処理開始/停止信号を
送ったりすることができ、これらの信号により各部の制
御を行なう。
【0034】<制御手順の説明>図5及び図6は、制御
部412で行なわれる制御のフローチャートである。こ
のフローチャートに対応するプログラムは制御部412
内部のROMに内蔵されている。また図7は、入力画像
を4つストライプに分割した場合に、2値画像獲得部4
01、アウトラインベクトル抽出部406、アウトライ
ンベクトル平滑化/変倍部408、2値画像再生部41
0の各部がどのようなタイミングで各ストライプについ
ての処理を行なうかを、図5・図6のフローチャートで
の各ステップと対応づけて示した図である。
【0035】図5・図6において、 i:2値画像獲得部401がマルチプレクサ402に入
力している(あるいは入力が終了した)ストライプの番
号 j:アウトラインベクトル抽出部406が処理を行なっ
ている(あるいは処理を終了した)ストライプの番号 k:アウトラインベクトル平滑化/変倍部408が処理
を行なっている(あるいは処理を終了した)ストライプ
の番号 l:2値画像再生部410が処理を行なっている(ある
いは処理を終了した)ストライプの番号 (ただしi,j,k,lにおけるストライプの番号は図
1に従うものとする。) last:入力画像の最終ラインが2値画像獲得部40
1からマルチプレクサ402へ入力されたかどうかを示
すフラグ とする。i,j,k,l,lastの値は制御部412
内部のRAMに記憶されている。
【0036】まず、ステップS501において、あらか
じめi,j,k,l,lastの初期化を0とし、マル
チプレクサ402の出力とデータセレクタ405の入力
をいずれもストライプ画像メモリ(A)403側にして
おく。
【0037】次にステップS502においてはiの値を
1増やし、2値画像獲得部401からマルチプレクサ4
02への第i(=1)ストライプの画像データ入力を開
始するように2値画像獲得部401へ信号を送る。この
画像データはマルチプレクサ402を通り画像メモリ
(A)403へ一時保存されることになる。信号を送る
と、ステップS503へ進む。
【0038】ステップS503では画像メモリ(A)4
03の状態フラグを読みだし、これがfullとなって
いて、かつi=1ならば、すなわち、第1ストライプを
画像メモリ(A)403に読み込んだ状態であるなら
ば、ステップS504へ進む。そうでなければ、ステッ
プS505へ進む。
【0039】ステップS504では、次の処理を行な
う。このステップは一度しか実行されず、処理が終ると
ステップS505へ進む。 1)制御部412から2値画像獲得部401へ信号を送
り、2値画像獲得部401からマルチプレクサ402へ
の第i(=1)ストライプの画像入力を一時停止させ
る。 2)マルチプレクサ402の出力を画像メモリ(B)4
04側に切り換え、iの値を1増やして2とし、停止さ
れている2値画像獲得部401からマルチプレクサ40
2への画像入力を再開させる信号を2値画像獲得部40
1に送る。これ以降に2値画像獲得部401から画像メ
モリ(B)404へ入力される分の画像データが第i
(=2)ストライプとなる。 3)jの値を1増やし、第j(=1)ストライプについ
てのアウトラインベクトル抽出処理開始の信号をアウト
ラインベクトル抽出部406へ送る。
【0040】ステップS505では、iが奇数ならば画
像メモリ(A)403、偶数ならば画像メモリ(B)4
04の状態フラグにアクセスし、これがfullとなっ
ていれば、すなわち入力データを格納している画像メモ
リがいっぱいであるならステップS506に進み、そう
でなければステップS507へ進む。
【0041】ステップS506では、制御部412から
2値画像獲得部401へ信号を送り、2値画像獲得部4
01からマルチプレクサ402への第iストライプの画
像入力を一時停止させる。この後、ステップS507へ
進む。
【0042】ステップS507では、 1)アウトラインベクトル抽出部406とアウトライン
ベクトル平滑変倍部408の状態フラグが両方ともre
adyとなっているかどうか 2)k=j−1を満たすかどうか を調べ、1)、2)ともYESならば、すなわち第jス
トライプのアウトラインベクトル抽出処理と、第k(=
j−1)ストライプのアウトラインベクトル平滑/変倍
処理が終了していて、両処理部が待機状態になっていれ
ばステップS508へ進み、そうでなければステップS
511へ進む。
【0043】ステップS508では、kの値を1増や
し、アウトラインベクトル平滑/変倍部408に第kス
トライプのアウトラインベクトル平滑化/変倍の処理を
開始させる信号を送る。この後、ステップS509へ進
む。
【0044】ステップS509では、この時点で(ステ
ップS506により)2値画像獲得部401からマルチ
プレクサ402への画像入力が一時停止されたままにな
っているかどうかを調べ、YESならステップS510
へ、NOならステップS511へ進む。
【0045】ステップS510では、次の処理を行な
い、その後ステップS511へ進む。 1)マルチプレクサ402の出力先を現在選択されてい
る画像メモリから他方へと切り替え、iの値を1増や
し、停止されている2値画像獲得部401からマルチプ
レクサ402への画像入力を再開させる信号を2値画像
獲得部401に送る。この時に2値画像獲得部401か
ら入力される分の画像データが第iストライプとなる。 2)データセレクタ405の入力を現在選択されている
画像メモリから他方に切り替え、jの値を1増やし、第
jストライプ(切り換えた側の画像メモリに入ってい
る)についてのアウトラインベクトル抽出処理を開始さ
せる信号をアウトラインベクトル抽出部406に送る。
【0046】ステップS511では、 1)2値画像再生部410の状態フラグがreadyに
なっているかどうか 2)i,j,k,lの値が等しいか 3)lastが(すでに2値画像獲得部401からの割
り込み信号により)1となっているかどうか を調べ、1)、2)、3)ともすべてYESならば、す
なわち、入力すべき画像入力がすべて終了しており、入
力された画像データの再生が完了しているならば処理を
終了し、そうでなければステップS512へ進む。
【0047】ステップS512では、 1)アウトラインベクトル平滑/変倍部408と2値画
像再生部410の状態フラグが両方ともreadyにな
っているかどうか 2)l=k−1を満たすかどうか を調べ、1)、2)ともYESならば、すなわち再生す
べき画像データが残っており、再生部410が待機状態
ならばステップS513に進み、そうでなければステッ
プS503へ戻る。
【0048】ステップS513では、lの値を1増や
し、2値画像再生部410に信号を送り、第lストライ
プについての変倍後の2値画像再生処理を開始させる。
その後、ステップS503へ戻る。
【0049】以上述べたように、画像入力、アウトライ
ンベクトル抽出、アウトラインベクトル平滑化/変倍、
2値画像再生の各処理を、ストライプ単位にパイプライ
ン形式で行なうことにより、従来の方式(図2の例)よ
りも大幅に処理時間を短縮できる。
【0050】図3は、図4の画像処理装置を構成する各
処理ブロックを、画像入力(2値画像獲得部401,マ
ルチプレクサ402)、アウトラインベクトル抽出(ア
ウトラインベクトル抽出部406)、アウトラインベク
トル平滑化/変倍(アウトラインベクトル平滑化/変倍
部408)、2値画像再生(2値画像再生部410)と
4つの工程に分割した場合の各工程における処理を模式
的に示している。図3においては、4ストライプの画像
を例としている。図3から明らかなように、本実施例の
画像処理装置は、異なるストライプを各工程ごとに独立
して処理でき、そのため、装置全体としては4つのスト
ライプをパイプライン形式で同時に処理することができ
る。このため、各処理ブロックが遊んでいる時間を減ら
すことができ、処理効率を劇的に向上させることが可能
となる。
【0051】図3を、図5・図6のフローチャートに沿
って描いたものが図7である。図7においては、本実施
例の装置における処理は、画像入力(2値画像獲得部4
01,マルチプレクサ402)、アウトラインベクトル
抽出(アウトラインベクトル抽出部406)、アウトラ
インベクトル平滑化/変倍(アウトラインベクトル平滑
化/変倍部408)、2値画像再生(2値画像再生部4
10)の4つの工程に分割されている。図7は、4つの
ストライプに分割した画像データの処理を説明してい
る。このうち、第4ストライプが入力されるタイミング
(図のT4 )を例にとって説明する。
【0052】まず、第2ストライプのアウトラインベク
トル抽出処理及び第1ストライプのアウトラインベクト
ル平滑化/変倍処理が終わると、ステップS507の条
件を満たすために、ステップS508に進み第2ストラ
イプの平滑化/変倍処理が開始される(図のP42)。
また、画像データの入力は図のタイミングT3 におい
て、ステップS506により停止されている。そのた
め、ステップS510による第4ストライプの画像デー
タの入力(P44)、第3ストライプのベクトルの抽出
(P43)各処理も開始される。
【0053】こうして第2ストライプの平滑化/変倍処
理が終了し、第1ストライプの画像再生処理が終了した
なら、ステップS513により第2ストライプの再生処
理(P44)を開始する。
【0054】一方、タイミングT4Eにおいて、画像入力
が終了したなら、2値画像獲得部401の割り込みによ
りlastが1に設定される。
【0055】この後画像入力は行われることなく、タイ
ミングTl において4つの工程すべてが終了したと判定
されると、ステップS511により本実施例の装置によ
る画像処理はすべて終えることになる。
【0056】以上のようにして、ワーキングメモリを最
小にした構成で処理全体のスループット時間を短縮する
ことができる。すなわち、装置コストを下げて、そのう
えで処理の効率化を図ることができる。更に、ファック
スのような通信機器に適用した場合には、通信コストの
削減をも図ることができる。
【0057】なお、実施例では、画像データの入力から
画像再生に至るまでの処理を行う例を示したが、図4の
構成における画像入力からアウトラインベクトル抽出を
行ってベクトルデータ用メモリ(A)に格納されたベク
トルデータをアウトラインベクトルデータとして蓄積す
る処理を行う場合であっても、その蓄積されたベクトル
データを平滑化/変倍し、再生する処理を行う場合であ
っても、上記処理手順と同様に高速化が可能であること
はもちろんである。また、画像データを入力してアウト
ラインベクトル抽出し、それを平滑化/変倍処理してベ
クトルデータ用メモリ(B)に格納したベクトルデータ
を蓄積しておく処理を行う場合にも同様に高速化できる
ことももちろんである。
【0058】
【第2実施例】第1の実施例では、2値画像獲得部40
1において入力待ちをさせる必要があったが、装置によ
ってはこれが不可能な場合がある。そのような場合のた
めに、入力待ちを必要としないように装置を構成するこ
とも可能である。本発明の第2の実施例としてそのよう
な画像処理装置を説明する。
【0059】<装置の構成>図8は、第2の実施例にお
ける装置の構成を示す図である。図8では、第1の実施
例における図4の構成からストライプ画像メモリ(A)
403およびストライプ画像メモリ(B)404、そし
てマルチプレクサ402とデータセレクタ405を外
し、代わりに入力画像1画面分の画像メモリ701を用
意する。画像メモリ701には、例えばデュアルポート
RAMを用いるなどして入力用のバスと出力用のバスを
別々に用意し、入力と出力が同時にできるように構成す
る。画像メモリ701のアドレスカウンタには制御部4
12から随時アクセスできるようにしたICを用いて、
画像メモリ701に2値画像獲得部401から入力画像
が何ライン入力されたかを制御部412からわかるよう
にしておく。かつ、画像メモリ701上の任意の位置か
ら任意の位置までのデータを制御部412からの制御に
よりアウトラインベクトル抽出部406へ出力できるよ
うにしておく。図8の残りの2値画像獲得部401、ア
ウトラインベクトル抽出部406〜制御部412は図4
と同じものであるが、2値画像獲得部401から制御部
412への割り込み信号は送られないかわりに、画像メ
モリ701が入力画像の最終ラインをアウトラインベク
トル抽出部406へ出力した時に、最終アドレスからの
データ読み込みを検知して、第1の実施例の2値画像獲
得部401と同様の割り込み信号を制御部412へ出力
する回路を装備しておく。また、2値画像獲得部401
は入力画像をすべて画像メモリ701に連続して(入力
を停止せずに)出力するものとする。
【0060】<処理の手順>図9は、本実施例において
制御部制御部412で行なわれる制御のフローチャート
である。このフローチャートに対応するプログラムが制
御部412内部のROMに内蔵されている。また図10
は、入力画像を4つのストライプに分割した場合に、2
値画像獲得部2値画像獲得部401、アウトラインベク
トル抽出部アウトラインベクトル抽出部406、アウト
ラインベクトル平滑化/変倍部408、2値画像再生部
410の各部がどのようなタイミングで各ストライプに
ついての処理を行なうかを、図9のフローチャートでの
各ステップと対応づけて示した図である。
【0061】図9において、 j:アウトラインベクトル抽出部アウトラインベクトル
抽出部406が処理を行なっている(或は処理を終了し
た)ストライプの番号 k:アウトラインベクトル平滑化/変倍部408が処理
を行なっている(或は処理を終了した)ストライプ番号 l:2値画像再生部410が処理を行なっている(或は
処理を終了した)ストライプの番号 (ただしj,k,lにおけるストライプの番号は図1に
従うものとする。) last:入力画像の最終ラインが2値画像獲得部40
1から画像メモリ701へ入力されたかどうかを示すフ
ラグ とする。j,k,l,last値は制御部412内部の
RAMに記憶されている。
【0062】まず、ステップS801において、予め
j,k,l,lastの初期値を0とする。
【0063】次にステップS802において、制御部4
12は2値画像獲得部401に信号を送り、2値画像獲
得部401から画像メモリ701への画像データ入力を
開始させる。第1の実施例とは異なり、入力画像の最終
ラインが画像メモリ701に入力されるまで入力が停止
されることはない。このあと、ステップS803へ進
む。
【0064】ステップS803では、入力画像の第(j
+1)ストライプに相当するデータがすでに2値画像獲
得部401から画像メモリ701に入力されているかど
うか、およびアウトラインベクトル抽出部406の状態
フラグがreadyになっているかを調べ、ともにYE
Sなら、すなわち第(j+1)ストライプ画像のベクト
ル抽出の準備ができているならステップS804へ進
む。
【0065】そうでなければ、ステップS805へ進
む。
【0066】ステップS804では、jの値を1増や
し、画像メモリ701に第jストライプの画像データを
アウトラインベクトル抽出部406へ出力させる信号を
送り、同時にアウトラインベクトル抽出部406へ信号
を送って第jストライプについてのアウトラインベクト
ル抽出処理を開始させる。処理が終わるとステップS8
05へ進む。
【0067】ステップS805では、 1)アウトラインベクトル抽出部406とアウトライン
ベクトル平滑化/変倍部408の状態フラグが両方とも
readyになっているかどうか 2)k=j−1を満たすかどうか を調べ、1)、2)ともYESであれば、すなわち第j
ストライプの平滑化/変倍の準備ができていればステッ
プS806へ進み、そうでなければステップS807へ
進む。
【0068】ステップS806では、k値を1増やし、
アウトラインベクトル平滑化/変倍部408に第kスト
ライプのアウトラインベクトル平滑化/変倍の処理を開
始させる信号を送る。この後、ステップS807へ進
む。
【0069】ステップS807では、 1)2値画像再生部410の状態フラグがreadyに
なっているかどうか 2)j,k,lの値がすべて等しいかどうか 3)lastが(すでに画像メモリ701からの割り込
み信号により)1となっているかどうか を調べ、1)、2)、3)ともYESであれば、すなわ
ち入力すべき画像データの入力が終えており、入力され
た画像データの全ストライプについての処理が終了して
いれば処理を終了し、そうでなければステップS808
へ進む。
【0070】ステップS808では、 1)アウトラインベクトル平滑化/変倍部408と2値
画像再生部410の状態フラグが両方ともreadyに
なっているかどうか 2)l=k−1を満たすかどうか を調べ、1)、2)ともYESであれば、すなわち第k
ストライプの再生処理の準備ができていればステップS
809に進み、そうでなければステップS803へ戻
る。
【0071】ステップS809では、lの値を1増や
し、2値画像再生部410に信号を送り、第1ストライ
プについての変倍後の2値画像再生処理を開始させる。
【0072】本実施例の場合、第1の実施例に比べると
入力画像を保存する画像メモリが1画面分必要である
(第1の実施例では2ストライプ分のみ必要)という欠
点があるが、2値画像獲得部401での入力停止が不要
になるという長所がある。総処理時間は第1の実施例と
あまり変らない。
【0073】図10はおおむね第1の実施例における図
7と同様であるが、画像メモリが1画面分であるため、
画像入力をその後段であるアウトラインベクトル抽出処
理と同期させていない点において異なる。
【0074】
【第3実施例】1ストライプから抽出されるアウトライ
ンベクトルの本数はストライプ画像の複雑さにより大き
く異なるため、ベクトルデータ用メモリやアウトライン
ベクトル抽出部に内蔵されたワークメモリなどは、非常
に複雑な画像でも1ストライプのアウトラインベクトル
データをすべて記憶できるほど容量が大きくなければな
らない。しかし実際にはそのような複雑な画像は希であ
るため、結局メモリ容量の内のほとんどは無駄となって
しまう。第3の実施例として、これを防ぐために、次の
ような装置構成および処理手順をとる画像処理装置を説
明する。
【0075】<装置の構成>図11は、第3の実施例に
おける装置の構成を示す図である。このように、第2の
実施例の図8から2値画像獲得部401につながってい
る画像メモリ701を省き、2値画像獲得部401から
直接アウトラインベクトル抽出部406へ画像データを
ラスタ単位で入力するような構成にしておく。また、2
値画像獲得部401は第1の実施例と同様に、アウトラ
インベクトル抽出部406への画像データ入力を制御部
412からの信号により停止/再開できるようにし、か
つ入力画像の最終ラインをアウトラインベクトル抽出部
406へ入力した時に制御部412に割り込み信号を送
って制御部412のRAM上のフラグlastの値を1
にする。
【0076】アウトラインベクトル抽出部406は、内
部にCPU、ROM、RAM(ワークメモリ)および状
態フラグ(制御部制御部412からアクセス可能)を持
ち独立に動作するが、制御部412の命令により処理を
開始するようになっている。ところで、アウトラインベ
クトル抽出部406で行なう処理については、第1、第
2の実施例と同様に、前述の特願平2−281958に
開示される手順を用いるが、この抽出部406は、 1)画像データが1ラスタ入力される毎に、その画像デ
ータから素輪郭ベクトルを抽出し、そのデータをワーク
メモリ406cに書き出す素輪郭ベクトル抽出部406
aと、 2)素輪郭ベクトル抽出部406aで抽出され、ワーク
メモリ406cに書き出された素輪郭ベクトルをループ
単位に整列し、ベクトルデータ用メモリ(A)407へ
出力するベクトル整列部406bと の2段階からなる。素輪郭ベクトル抽出部406a→ベ
クトル整列部406bの順で処理が行なわれ、同時に処
理が行なわれることはない。状態フラグメモリ406e
内の状態フラグは、素輪郭ベクトル抽出部406aでの
処理が始まった時にbusy、ベクトル整列部406b
での処理が終わった時にreadyになることとする。
【0077】ここまでは第1、第2の実施例と同じであ
るが、本実施例では、画像データを1ラスタずつ入力し
ながら同時に素輪郭ベクトル抽出処理を行なうこととす
る。また、本実施例においては、制御部412から素輪
郭ベクトル抽出部406aとベクトル整列部406bに
別々に処理開始/停止の信号を送ることができるように
構成する。
【0078】そして、アウトラインベクトル抽出部40
6の内部に、図11に示すように、素輪郭ベクトル抽出
部406aで抽出したアウトラインベクトルの本数を随
時書き込んでおくベクトル本数用メモリ406dを前述
の状態フラグ用メモリの他に用意しておき、これも随時
制御部412からアクセスできるようにしておく。制御
部412は随時素輪郭ベクトル抽出部406aアクセス
することによって素輪郭ベクトル抽出部406aで抽出
したベクトルの本数を確認し、この量が予め決めた或る
値よりも多くなった時点で、2値画像獲得部401にア
ウトラインベクトル抽出部406への画像入力、および
素輪郭ベクトル抽出部406aでの素輪郭ベクトル抽出
処理を停止させる。入力開始時からこの時点までに2値
画像獲得部401から素輪郭ベクトル抽出部406aに
入力された画像を1つのストライプとみなすことができ
る。この直後に、このストライプに対してのベクトル整
列処理をベクトル整列部406bに開始させる。制御部
412は、このストライプについてのアウトラインベク
トル抽出処理(すなわち、素輪郭ベクトル抽出部406
aとベクトル整列部406bの両方での処理)が終了し
だいベクトルデータ用メモリ(A)407へ抽出したベ
クトルのデータを出力させ、かつアウトラインベクトル
平滑化/変倍部408に信号を送りこのストライプにつ
いての処理を開始させる。制御部412は同時に、停止
されていた2値画像獲得部401からアウトラインベク
トル抽出部406への画像入力を再開させ、この分の画
像データ(第2ストライプになる)について上記と同様
にアウトラインベクトル抽出部406にアウトラインベ
クトル抽出の処理を開始させる。以降、第1の実施例と
同様に、アウトラインベクトル抽出、アウトラインベク
トル平滑化/変倍、画像再生の各処理をパイプライン形
式で実行する。
【0079】図12及び図13は、第3の実施例におい
て制御部412で行なわれる制御のフローチャートであ
る。このフローチャートに対応するプログラムは制御部
412内部のROMに内蔵されている。また図14は、
入力画像を4つのストライプに分割した場合に、2値画
像獲得部401、アウトラインベクトル抽出部406、
アウトラインベクトル平滑化/変倍部408、2値画像
再生部410の各部がどのようなタイミングで各ストラ
イプについての処理を行なうかを、図12・図13のフ
ローチャートでの各ステップと対応づけて示した図であ
る。
【0080】図12・図13において、 i:2値画像獲得部401がマルチプレクサ402に入
力している(或は入力が終了した)ストライプの番号 j:アウトラインベクトル抽出部406が処理を行なっ
ている(或は処理を終了した)ストライプの番号 k:アウトラインベクトル平滑化/変倍部408が処理
を行なっている(或は処理を終了した)ストライプの番
号 l:2値画像再生部410が処理を行なっている(或は
処理を終了した)ストライプの番号 (ただしi、j、k、lにおけるストライプの番号は図
1に従うものとする。) last:入力画像の最終ラインが2値画像獲得部40
1からアウトラインベクトル抽出部406へ入力された
かどうかを示すフラグ とする。i、j、k、l、lastの値は制御部412
内部のRAMに記憶されている。
【0081】まず、ステップS1101において、予め
i、j、k、l、lastの初期値を0とし、ステップ
S1102へ進む。
【0082】次にステップS1102において、iの値
を1増やし、2値画像獲得部401からアウトラインベ
クトル抽出部406への第i(=1)ストライプの画像
データ入力を開始するように2値画像獲得部401へ信
号を送る。同時にjの値を1増やし、素輪郭ベクトル抽
出部406aに信号を送り、2値画像獲得部401から
ラスタ単位で送られてくる入力画像データから特願平2
−281958に述べた方法で逐次素輪郭ベクトルを抽
出する処理を開始させる。この方法は先に説明したとお
り、注目画素とその近傍画素との関係を調べて、黒画素
と白画素の間に定義されるベクトルを得、これを用いて
輪郭ベクトルを得るものである。このあと、ステップS
1103へ進む。
【0083】ステップS1103ではベクトル本数用メ
モリ406dにアクセスし、素輪郭ベクトル抽出部40
6aで抽出されたアウトラインベクトルの本数をチェッ
クする。この本数が予め決めた或る値Tより多くなって
いるか、或はlastの値が(すでに2値画像獲得部4
01からの割り込み信号により)1になっていれば、ス
テップS1104へ進む。そうでなければステップS1
105へ進む。
【0084】ステップS1104では、2値画像獲得部
401と素輪郭ベクトル抽出部406aに信号を送り、
2値画像獲得部401から素輪郭ベクトル抽出部406
aへの画像入力および素輪郭ベクトル抽出部406aで
の素輪郭ベクトル抽出処理を一時停止させる。この時点
までに素輪郭ベクトル抽出部406aへ入力された画像
データを第iストライプとして処理する。同時にベクト
ル整列部406bに信号を送り、このストライプについ
てのベクトル整列処理を開始させる。
【0085】ステップS1105では、 1)アウトラインベクトル抽出部406とアウトライン
ベクトル平滑化/変倍部408の状態フラグが両方とも
readyになっているかどうか 2)k=j−1を満たすかどうか を調べ、両方ともYESならば、すなわち第jストライ
プの平滑化/変倍処理の準備ができていればステップS
1106へ進み、そうでなければステップS1107へ
進む。
【0086】ステップS1106では、次の処理を行な
った後、ステップS1107へ進む。 1)kの値を1増やし、アウトラインベクトル平滑化/
変倍部408に信号を送り、第kストライプについての
アウトラインベクトル平滑化/変倍の処理を開始させ
る。 2)iの値を1増やし、2値画像獲得部401に信号を
送り、ステップS1104で停止されている2値画像獲
得部401からアウトラインベクトル抽出部406への
画像入力を開始する。同時に、jの値を1増やし、素輪
郭ベクトル抽出部406aへ信号を送り、第jストライ
プについての素輪郭ベクトル抽出処理を開始させる。
【0087】ステップS1107では、 1)lastが(すでに2値画像獲得部401からの割
り込み信号により)1になっているか 2)i、j、k、lの値が等しいか 3)2値画像再生部410の状態フラグがreadyに
なっているかどうか を調べ、1)、2)、3)ともYESなら、すなわち画
像再生までの処理が入力された全画像データについて終
了しているならば処理を終了し、そうでなければステッ
プS1108へ進む。
【0088】ステップS1108では、 1)アウトラインベクトル平滑化/変倍部408と2値
画像再生部410の状態フラグが両方ともreadyに
なっているかどうか 2)l=k−1を満たすかどうか を調べ、1)、2)ともYESであれば、すなわち第k
ストライプの再生処理の準備ができていればステップS
1109へ進み、そうでなければステップS1103へ
戻る。
【0089】ステップS1109では、lの値を1増や
し、2値画像再生部410に信号を送り、第1ストライ
プについての2値画像再生処理を開始させる。
【0090】このような処理を行なう場合、各ストライ
プのライン数は一定でなくなるが、抽出したベクトルデ
ータのデータ量はストライプ毎にほぼ一定にすることが
できる。その結果ベクトルデータ用のメモリが節約で
き、かつメモリを有効に使うことができることになる。
【0091】
【第4実施例】第3の実施例において、図11の2値画
像獲得部401とアウトラインベクトル抽出部406と
の間に、第2の実施例の図8のように1画面分の画像メ
モリを入れ、入力画像データをこの画像メモリに連続し
て入力するようにすれば、入力待ちをさせることが不可
能であるような機器にも対応できる。
【0092】
【第5実施例】第1〜第4の実施例において、装置によ
っては、画像出力部411が出力を行なう際にストライ
プ毎に断続的に画像を出力することが不可能な場合があ
る。このような場合に対応するためには、次の2通りの
装置構成が考えられる。
【0093】1)第1〜第4の実施例において、画像出
力部411に1ページ分の出力画像バッファを内蔵さ
せ、画像再生部410から画像出力部411へ送られて
くるストライプ単位の出力画像データを順次このバッフ
ァに書き込むようにし、すべてのストライプについて処
理が終わってから画像を出力する。
【0094】2)第1〜第4の実施例において、制御部
412が行なう処理のフローチャート(図5・図6、図
9、図12・図13)から画像再生部410に関する制
御を省き、アウトラインベクトル平滑化/変倍部408
が出力するベクトルデータはすべてベクトルデータ用メ
モリ(B)409に保存されるものとする。制御部41
2は最後のストライプのアウトラインベクトル平滑化/
変倍処理が終わった時に始めて画像再生部410に処理
開始信号を送り、そこで全ストライプ(すなわち入力画
像1画面分の変倍処理結果画像)の画像再生処理を開始
させる。再生された画像はそのまま画像出力部411か
ら出力する。このような処理を行なう場合にアウトライ
ンベクトル抽出部406、およびアウトラインベクトル
平滑化/変倍部408、画像再生部410が各ストライ
プについて処理を行なうタイミングは図15のようにな
る。このような処理を行なう場合、第1の実施例として
説明した方式に比べ、ベクトルデータ用メモリ(B)4
09にはかなり大きな容量が必要になるという欠点があ
るが、この場合は、例えば本願出願人による特願平4−
152461もしくは特願平4−157713で開示さ
れるようなデータ形式に変換してベクトルデータを保持
するように構成しても良い。これらの形式は、簡単に説
明すると、アウトラインベクトルの終点または始点の座
標を、隣接する座標からの差分データとして保持し、更
にその桁数に応じて可変長データとして保持するもので
ある。このような構成を用いる場合にはベクトルデータ
用メモリ(B)409に要する容量を減らすことも可能
である。
【0095】
【第6実施例】第1〜第5の実施例において、図4(ま
たは図7、図11)のベクトルデータ用メモリ(A)4
07およびベクトルデータ用メモリ(B)409(とも
にFIFO形式,図16(a))は、それぞれ、図16
(b)に示すように、2つの通常の(FIFO形式でな
い)メモリ(a)1401および同様のメモリ(b)1
402、そしてマルチプレクサ1403およびデータセ
レクタ1404の組によって置き換えることも可能であ
る。この場合の制御部412が行なうブロック1401
〜1404の制御については、第1の実施例におけるブ
ロック402〜405の制御と同様に、マルチプレクサ
1403の出力とデータセレクタ1404の入力を適当
なタイミングで換え、ベクトルデータをストライプ毎に
メモリ(a)1401、メモリ(b)1402に交互に
書き込むようにし、かつベクトルデータの読み出しを書
き込む側と逆の側のメモリから同時に行うようにする。
このようにすれば書き込みと読み出しが同じメモリに対
して同時に行われることはないため、メモリにFIFO
形式のものを用いる必要はない。
【0096】
【第7実施例】第1〜第5の実施例においては、画像入
力部は2値画像を入力するものとして説明したが、本発
明はこれに限定されるものではなく、画像獲得部の後段
に2値化部をおき、これを用いて2値化した画像に対し
て処理を行なうようにしてもよい。また、第1、第2、
第4〜第6の実施例においては、画像メモリに後段に2
値化部をおき、これを用いて2値化してからアウトライ
ンベクトルの抽出を行なうように構成して本発明を実施
してもよい。
【0097】同様に画像出力部に関しても、2値画像の
再生後に、公知の構成を用いて2値画像を疑似的に多値
画像化するような構成を用いてもよい。また、例えば2
値画像の各画素値を0と1の2階調ではなく、意図的に
0〜255の256階調表現の最小階調値や最大階調値
として出力するように構成してもよい。
【0098】
【第8実施例】第8の実施例として、画像をストライプ
状に分割し、各ストライプごとに独立にアウトラインベ
クトル抽出、変倍、平滑化の各処理を行った後に各処理
結果を結合して所望の画像を得る画像処理装置を説明す
る。
【0099】以下、添付図面を参照して本発明にかかわ
る実施例を詳細に説明する。
【0100】<装置の構成>図18は実施例における画
像の変倍を行う装置のブロック図である。同図におい
て、2値画像獲得部181は輪郭抽出・変倍処理を施す
デジタル2値画像を獲得し、ラスタ走査形式の2値画像
を出力するもので、例えば、イメージリーダーで画像を
読み取り、2値化して、ラスタ走査形式で出力する公知
のラスタ走査型2値画像出力装置で構成される。
【0101】画像分割部182は獲得された2値画像を
図1に示すような1つ以上のストライプに分割するもの
で、各ストライプ中のライン数を外部から任意に設定で
きるようになっている。図17に分割された画像の例を
示す。
【0102】画像変倍部183は分割されたストライプ
単位に画像の変倍を行う。分割されたストライプ単位に
画像の変倍を行う構成そのものは、例えば、本願出願人
により先に出願された特願平4−254989号、特願
平3−345062号及び特願平3−172098号に
記載の装置等で構成される。簡単に説明すると、分割さ
れた各ストライプについてラスタ走査を行い、注目画素
とその近傍の8個の画素の状態を調べていくことにより
黒画素部分のアウトラインベクトルを抽出し、得られた
アウトラインベクトルについて平滑化の処理を行い、任
意の倍率に変倍し、かつその平滑化・変倍処理を行った
アウトラインベクトルデータからそのデータの表現する
2値画像を、分割されたストライプ単位にラスタ走査形
式の2値画像データとして再生するような処理である。
ここで言う平滑化の処理には、2値画像の角と認識され
た点を固定点(角点)とし、その角点以外の点を浮動点
としてそれぞれの点を定義し、注目している浮動点にお
いては前後する複数の角点あるいは浮動点との重み付け
計算して、その座標位置を補正する処理などが含まれ
る。またここでいう2値画像再生の処理には、平滑処理
して得られたベクトルデータに基づいて描画した輪郭
(拡大処理して描画された輪郭を含む)の内部を黒画素
で埋める処理が含まれる。但しベクトルデータの変倍の
処理を行う際に必要となる各ストライプごとの変倍後の
ライン数は、外部から任意に設定できるようになってい
る。
【0103】2値画像出力部184は、ラスタ走査型の
2値画像データを表示する表示部や、ハードコピーを作
成する表示部、或は、通信路等へ出力したりするインタ
フェース部等である。
【0104】制御部185は全体の処理の流れを制御す
る。例えば、入力画像をストライプに分割する際の各ス
トライプ中のライン数や、各ストライプごとの変倍後の
ライン数などを、ここで求める。
【0105】図19は、第1の実施例の処理の流れを示
すフローチャートである。
【0106】図18の制御部185において、図19の
フローチャートに示された手順に沿って処理が進められ
る。
【0107】まず、ステップS191において、入力画
像をストライプ状に分割し、注目ストライプを先頭のス
トライプにセットする。入力画像の分割に際しては、各
ストライプ中のライン数を外部から任意に設定できるよ
うにしても、或は外部から設定するのではなく、予め決
められたライン数で入力画像を分割できるようにしても
良い。
【0108】次にステップS192において、注目スト
ライプ中のアウトラインベクトルの抽出を行う。
【0109】これが終わると、ステップS193に移
り、ここで注目ストライプに変倍処理を行った際の出力
画像のライン数を後述の方法で求める。
【0110】出力画像のライン数が求まれば、ステップ
S194に移り、ここで注目ストライプ中のアウトライ
ンベクトルの平滑化及び変倍が行われる。ここでは、先
に指摘した如く、特願平3−345062号に記載の平
滑化及び変倍の処理、すなわち角と認識された点を固定
点とし、それ以外を浮動点として注目浮動点およびその
前後の点について重み付け計算して注目浮動点の重み付
け計算して平滑化し、平滑の前あるいは後で座標に所望
の値を乗じて変倍する処理を、出力画像のライン数がス
テップS193で求めた値になるようにして行う。
【0111】注目ストライプの平滑・変倍処理が終わる
とステップS195に移り、変倍された注目ストライプ
のアウトラインベクトルから2値画像を再生し、出力す
る。2値画像の再生・出力処理は、本出願人により先に
提案されている特願平3−172098号に記載の方法
・構成でもって処理できる。これは、簡単に説明する
と、閉じたループを成す輪郭ベクトル群における注目ベ
クトルの方向、及び注目ベクトルと前後のベクトルとの
関係、及び塗りつぶす領域の方向に基づいて、注目ベク
トルの両端点の位置を所定規則に従って補正したのち、
主走査方向に走査して奇数番目に遭遇する輪郭点から偶
数番目に遭遇する輪郭点までを塗りつぶすものである。
【0112】2値画像の再生・出力処理が終わると、ス
テップS196に移り、ここで注目ストライプが入力画
像の最終ストライプか否かが判定され、最終ストライプ
ならば処理を終了し、そうでなければ、ステップS19
7に移り、注目ストライプを次のストライプに移動して
ステップS192に戻る。
【0113】次に、図19のステップS193で行う、
各ストライプごとに変倍処理を行って得る出力画像のラ
イン数を計算する方法を述べる。図20はその計算方法
を示すフローチャートである。図20において、現在の
注目ストライプが第iストライプであるとする。
【0114】第iストライプのライン数をh1 とする。
【0115】予め与えられた、入力画像全体に対する変
倍の倍率をxとする。
【0116】以上の条件の下で、まずステップS201
において、出力画像の注目ストライプのライン数gi
仮にgi =int(hi x)として計算する。次に、ス
テップS202に進む。なお、“int”は整数化の関
数を意味する。
【0117】ステップS202では、j=(h1 +h2
+…+hi )×xとk=g1 +g2+…+gi の値を求
める。値jは最初のストライプから注目ストライプまで
の画像全体として変倍した場合のライン数であり、値k
は各ストライプごとに変倍してそのライン数を加算した
値である。j及びkの値が求まれば、ステップS203
に進む。
【0118】ステップS203では、j−kが1以上か
どうかを調べ、YESならば、すなわち画像全体として
変倍したもののライン数のほうが多ければ、ステップS
206でgi の値を1増やして、すなわち注目ストライ
プのライン数を1増やしてステップS205に進み、N
OならばそのままステップS204へ進む。
【0119】ステップS404では、ステップS203
で求めたj−kの値が−1以下になるかどうかを調べ、
YESならば、すなわち画像全体として変倍したものの
ライン数のほうが少なければ、ステップS207でgi
の値を1減じて、すなわち注目ストライプのライン数を
1減らしてからステップS205へ進み、NOならばそ
のままステップS205へ進む。
【0120】ステップS205では、この時点でのgi
の値を第iストライプの変倍後の出力画像のライン数と
し、処理を終了する。但し、少数を整数に丸める関数
(int)として切り捨てを用いるならば、常にj≧k
となるため、ステップS204は必要ではない。また
(int)として切り上げを用いるならば、常にj≦k
となるため、ステップS203は必要ではない。
【0121】このようにして各ストライプ毎の変倍後の
出力画像のライン数を求めることにより、各出力画像を
結合した最終出力画像のライン数は、所望の値、すなわ
ち入力画像を分割せずに変倍処理を施したときの出力画
像のライン数(=int((h1 +h2 +…+hn )×
x))と大きく異なることはない。
【0122】
【第9実施例】第8の実施例における、図19のステッ
プS193すなわち変倍処理を行って得る出力画像のラ
イン数を計算する方法としては、次に挙げるような方法
を用いることもできる。図21はその計算方法を示すフ
ローチャートである。
【0123】現在の注目ストライプが第iストライプで
あるとする。
【0124】第iストライプのライン数をh1 とする。
【0125】予め与えられた、入力画像全体に対する変
倍の倍率をxとする。
【0126】Tを0.5 ≦T≦1を満たす任意の定数とす
る。
【0127】まず、ステップS211において、出力画
像のライン数gi を仮にgi =int(h1 x)として
計算する。次に、ステップS212に進む。
【0128】ステップS212では、j=(h1 +h2
+…+hi )×xとk=g1 +g2+…+gi の値を求
める。値jは最初のストライプから注目ストライプまで
の画像全体として変倍した場合のライン数であり、値k
は各ストライプごとに変倍してそのライン数を加算した
値である。j及びkの値が求まれば、ステップS213
に進む。
【0129】ステップS213では、j−kがT以上か
どうかを調べ、YESならばg1 の値を1増やし、ステ
ップS215に進み、NOならばそのままステップS2
14へ進む。
【0130】ステップS214では、ステップS213
で求めたj−kの値が−T以下になるかどうかを調べ、
YESならばg1 の値を1減じてステップS215へ進
み、NOならばそのままステップS215へ進む。
【0131】ステップS215では、この時点でのg1
の値を第iストライプの変倍後の出力画像のライン数と
し、処理を終了する。但し、少数を整数に丸める関す
(int)として切り捨てを用いるならば、常にj≧k
となるため、ステップS214は必要ではない。また
(int)として切り上げを用いるならば、常にj≦k
となるため、ステップS213は必要ではない。
【0132】このようにして各ストライプ毎の変倍後の
出力画像のライン数を求めることにより、各出力画像を
結合して最終出力画像のライン数は、所望の値、即ち入
力画像を分割せずに変倍処理を施したときの出力画像の
ライン数(=int((h1+h2 +…+hn )×
x))と大きく異なることはない。
【0133】
【第10実施例】第9の実施例における、各ストライプ
毎に画像変倍を行う手順としては、上記のように2値画
像からアウトラインベクトルを抽出し、得られたアウト
ラインベクトルについて平滑化を行い、任意の倍率に変
倍し、そして得られたベクトルデータからそのデータの
表現する2値画像を再生するような手順に限らず、変倍
率に応じて原画の各画素を倍率回だけ繰り返し用いた
り、周期的に間引いたりするSPC(Selectic
Processing Conversion)法
(松本、小林:フアクシミリ解像度変換における画品質
評価の一検討、画像電子学会誌、Vo1.12,No.
5,pp.354〜362、1983)や、注目画素の
周囲画素パターン参照による平滑化(今中、瀬政:フア
クシミリ受信画像の平滑化処理による高画質化、画像電
子学会年次大会予稿No.18、1991)、及び現画
像を線密度の異なる変換画像面に投影し、この面内の一
画素に亘る積分値を閾値論理により2値化して変換画像
の画素の値を決定する投影法(新井、安田:フアクシミ
リ線密度変換の一検討、画像電子学会誌Vo1.7,N
o.1、pp.11〜18、1978)等の任意の方法
を用いても良い。この場合も、第1ストライプが取り込
まれた直後に処理を開始できるという利点、即ちラスタ
走査順に送られてくる入力画像全体が画像バッファに取
り込まれるよりも前に処理を開始できるため、処理が終
了するまでの時間を短縮できるという利点がある。
【0134】
【第11実施例】上記の如き、入力画像をストライプ状
に分割し、各ストライプ毎に変倍処理を行い、得られた
各出力画像を結合して所望の変倍画像を得るという処理
は、ライン数を主走査方向の画素数と読み替えれば、図
22に示すように、入力画像を主走査方向ではなく副走
査方向に分割した場合にも適用可能である。また、図2
3に示すように、主走査方向に分割した各ストライプを
また副走査方向に分割することで、結局は入力画像を任
意の大きさの矩形画像に分割して変倍処理を行うことが
できる。このように入力画像を任意の大きさの矩形画像
に分割して各矩形画像毎に変倍処理を行うことについて
は、以下に述べるような利点がある。
【0135】例えば、図24のような入力画像があり、
図24の斜線部については画像変倍処理手法A、残りの
部分については画像変倍処理手法Bを用いたいような場
合に、入力画像を図25のように分割し、斜線部につい
ては手法A、それ以外の部分については手法Bを用いて
各矩形画像の変倍処理を行うことによって、所望の変倍
画像を得ることができる。
【0136】
【第12実施例】第12実施例として、前記の実施例と
して説明された、分割されたストライプ毎に処理を行う
ことによって生じる、ストライプの継ぎ目部分の最終出
力画像の劣化を防ぐ画像処理装置について説明する。
【0137】以下、添付図面を参照して本発明に係わる
実施例を詳細に説明する。
【0138】<装置の構成>図28は実施例における画
像の変倍を行う装置のブロック図である。同図におい
て、2値画像獲得部281は輪郭抽出・変倍処理を施す
デジタル2値画像を獲得し、ラスタ走査形式の2値画像
を出力するもので、例えば、イメージリーダーで画像を
読み取り、2値化して、ラスタ走査形式で出力する公知
のラスタ走査型2値画像出力装置で構成される。
【0139】画像分割部282は、獲得された2値画像
を図27(b)に示すような1つ以上のストライプに分
割する。これは1画面分の画像メモリをもっており、獲
得部281で獲得された画像を一時的に全画面分保持
し、制御部285において計算された開始ラインから終
了ラインまでを一つのストライプとして、画像変倍部2
86へ出力する。開始ラインと終了ラインを求める方法
については、後述する。
【0140】画像変倍部283は分割されたストライプ
単位に画像の変倍を行う。分割されたストライプ単位に
画像の変倍を行う部そのものは、例えば、本願出願人に
より先に出願された特願平4−254989号、特願平
3−345062号及び特願平3−172098号に記
載の装置等で構成される。簡単に説明すると、分割され
た各ストライプについてラスタ走査を行い、注目画素と
その近傍の8個の画素の状態を調べていくことにより黒
画素部分のアウトラインベクトルを抽出し、得られたア
ウトラインベクトルについて平滑化の処理を行い、任意
の倍率に変倍し、かつその平滑化・変倍処理を行ったア
ウトラインベクトルデータからそのデータの表現する2
値画像を、分割されたストライプ単位にラスタ走査形式
の2値画像データとして再生するような処理である。こ
こでいう平滑化の処理には、2値画像の角と認識された
点を固定点(角点)とし、その角点以外の点を浮動点と
してそれぞれの点を定義し、注目している浮動点におい
ては前後する複数の角点或は浮動点との重み付け計算し
て、その座標位置を補正する処理などが含まれる。ここ
でいう2値画像再生の処理には、平滑処理して得られた
ベクトルデータに基づいて描画した輪郭(拡大処理して
描画された輪郭を含む)の内部を黒画素で埋める処理が
含まれる。但しベクトルデータの変倍の処理を行う際に
必要となる各ストライプ毎の変倍数のライン数は、外部
から任意に設定できるようになっている。
【0141】2値画像出力部284はラスタ走査型の2
値画像データを表示する表示部や、ハードコピーを作成
する表示部、或は、通信路等へ出力したりするインタフ
ェース部等である。これは1画面分の画像バッファを持
っており、画像変倍部283から各ストライプ毎に変倍
処理を行った出力画像を受け取って、後述する方法によ
り画像バッファ上に最終出力画像を構成してから出力す
る。
【0142】制御部285は全体の処理の流れを制御す
る。例えば、入力画像をストライプに分割する際の制御
や、各ストライプ毎の処理結果画像を画像バッファに書
き込む際の制御などをここで行う。制御部285は、C
PUとCPUの実行するプログラムなどを書き込んだR
OMとデータ等を格納するRAMとを含む。
【0143】<制御の手順>図29は、第12実施例の
処理の流れを示すフローチャートである。
【0144】図28の制御部285において、図29の
フローに沿って処理が進められる。この手順は制御部2
85のROMに格納されたプログラムをCPUが実行す
ることで実現される。
【0145】まず、ステップS291において、図27
(b)のように入力画像をストライプ状に分割する。す
なわち、入力画像をhラインずつのストライプに分けた
後で、第iストライプの最下部に第(i+1)ストライ
プの上からaラインをつなげる。最終ストライプはその
まま使う。この結果、最終ストライプ以外の各ストライ
プのライン数はh+aになる。具体的には、図28の画
像分割部282にある1画面分の画像メモリから、第
(h(i−1)+1)ラインから第hi+aライン(こ
の値が入力画像のライン数を越える場合は、入力画像の
最終ライン)までを読み出してこれを第iストライプと
し、注目ストライプをこのストライプにセットして、ス
テップS292に移る。
【0146】次にステップS292において、注目スト
ライプ中のアウトラインベクトルの抽出を行う。これが
終わると、ステップS293に移り、ここで注目ストラ
イプ中のアウトラインベクトルの平滑化及び変倍を行
う。ここでは、先に指摘した如く、特願平3−3450
62号に記載の平滑化及び変倍の処理、、すなわち角と
認識された点を固定点とし、それ以外を浮動点として注
目浮動点およびその前後の点について重み付け計算して
注目浮動点の重み付け計算して平滑化し、平滑の前ある
いは後で座標に所望の値を乗じて変倍する処理を行う。
【0147】注目ストライプの平滑・変倍処理が終わる
とステップS294に移る。ステップS294では、変
倍された注目ストライプのアウトラインベクトルから2
値画像を再生する。2値画像の再生処理は、本願出願人
により先に提案している特願平3−172098号に記
載の方法・構成でもって処理できる。これは、簡単に説
明すると、閉じたループを成す輪郭ベクトル群における
注目ベクトルの方向、及び注目ベクトルと前後のベクト
ルとの関係、及び塗りつぶす領域の方向に基づいて、注
目ベクトルの両端点の位置を所定規則に従って補正した
のち、主走査方向に走査して奇数番目に遭遇する輪郭点
から偶数番目に遭遇する輪郭点までを塗りつぶすもので
ある。
【0148】予め与えれらた変倍の倍率をxとすると、
変倍処理により、各ストライプ毎の出力結果画像のライ
ン数は(int((h+a)×x))となっている。但
し、ここで(int)は少数を整数へ変換する関数であ
り、切り捨て、切り上げ、四捨五入等任意の関数を用い
て良い。2値画像再生処理が終わると、ステップS29
5に移る。
【0149】ステップS295では、次のような方法に
より画像バッファ上に各ストライプ毎の処理結果画像を
書き込む。
【0150】1)第1ストライプの処理結果出力画像
は、そのまま画像バッファ上へ出力する。
【0151】2)それ以外のストライプの処理結果出力
画像については、その画像の上から(int(a×x÷
2))ライン分を捨てた上で、画像バッファ上に既に出
力されている画像の最終ラインから(int(a×x÷
2))ラインだけ戻ったところから上書きする。
【0152】画像バッファへの書き込みが終われば、ス
テップS296に移り、ここで注目ストライプが入力画
像の最終ストライプか否か判定され、最終ストライプな
らば、画像バッファ上に構成された画像(最終出力画
像)を外部へ出力し、処理を終了する。そうでなけれ
ば、ステップS297に移り、注目ストライプを次のス
トライプに移動してステップS292に戻る。
【0153】このように変倍・再生処理を行うことによ
って、各ストライプの境界部分付近のラインを切り捨て
るため、境界付近の画像の劣化を防止することができ
る。すなわち、画像の変倍処理を行う際に、画像劣化を
防止した上での処理の高速化やワークメモリの節約によ
るコストダウンを可能ならしめる。
【0154】
【第13実施例】第12実施例において、図29のステ
ップS296における各ストライプ毎の処理結果画像を
画像バッファに書き込む方法について、次のようにして
も良い。
【0155】1)第1ストライプの処理結果出力画像
は、そのまま画像バッファ上に出力する。
【0156】2)それ以外のストライプの処理結果出力
画像は、画像バッファ上に既に出力されている画像の最
終ラインから(int(a×x))ラインだけ戻ったと
ころから上書きする。
【0157】このような処理を行った場合、例えば図2
6(b)の画素102のような、各ストライプの上部a
ライン分の画像については、変倍や平滑化処理の結果、
出力画像が劣化してしまうという欠点があるが、図29
のステップS295において、各ストライプ毎の処理結
果出力画像の上から(int(a×x÷2))ライン分
を捨てるという処理が必要でなくなり、装置の構成が簡
便になるという利点がある。
【0158】
【第14実施例】第12或は第13実施例において、入
力画像をストライプ状に分割する際の各ストライプのラ
イン数は一定でなくとも良い。この場合、次のような装
置を考えることができる。
【0159】図30は本実施例における画像の変倍を行
う装置のブロック図である。同図において、2値画像獲
得部301は図28の2値画像獲得部281と同じであ
る。
【0160】アウトラインベクトル抽出部302は2値
画像獲得部301から2値画像をラスタ走査順で獲得
し、順にアウトラインベクトルの抽出を行い、抽出した
アウトラインベクトルのデータをベクトルデータ用メモ
リ304に出力する。
【0161】画像メモリ303はaライン分の容量を持
つFIFO形式の画像メモリである。画像獲得部501
からは、入力画像データが1ラスタずつ、ベクトル抽出
部302と画像メモリ303へ同時に出力される。この
入出力制御は制御部307において行う。
【0162】ベクトルデータ用メモリ304はベクトル
抽出部302の処理の結果得られたアウトラインベクト
ルデータを一時的に保存する。
【0163】アウトライン平滑・変倍部305は、ベク
トルデータメモリ304上にある分のデータに対しベク
トルデータ携帯で平滑化及び変倍処理を行う。
【0164】2値画像出力部306は、図28の282
値画像出力部4と同様の、1画面分の画像バッファを持
つ2値画像出力部である。画像バッファへの出力方法に
ついては後述する。
【0165】制御部307は全体の処理の流れを制御す
る。制御部307は、不図示のCPUとROM・RAM
とを備えている。
【0166】図31は本実施例において制御部307で
行われる処理の流れを示すフローチャートである。この
手順はROMに格納されたプログラムをCPUにより実
行することで実現される。
【0167】まず、ステップS311において、ベクト
ル抽出部302と画像メモリ303へ、同じ画像データ
を1ラスタだけ画像獲得部301より入力し、ステップ
S312へ進む。FIFO形式の画像メモリ303から
あふれた画像データは無視する。
【0168】ステップS312では、1ラスタずつ入力
されてくる画像からアウトラインベクトルを抽出し、そ
のデータをベクトルデータメモリ304へ順次出力し、
ステップS313へ進む。
【0169】ステップS313では、ベクトルデータメ
モリ304の残り容量を制御部307において調べ、残
り容量が予め決められたある量より多ければステップS
311に戻る。残り容量が少なくなっていれば、この時
点までにベクトル抽出部302に入力された画像を1つ
のストライプとみなし、これを注目ストライプとしてス
テップS314へ進む。この時点で、ベクトルデータメ
モリ304にはこのストライプ全体から抽出したアウト
ラインベクトルのデータが入っており、また画像メモリ
303にはこのストライプ内のしたからaラスタ分の画
像データが入っていることになる。このような方法で入
力画像をストライプ上に分割した場合、入力画像は図3
2のようなストライプに分割されることになり、またア
ウトラインベクトル抽出部302には、図32における
点線矢印の順に入力画像が1ラスタずつ入力されること
になる。
【0170】ステップS314では、ベクトルデータメ
モリ304に入っている、このストライプ全体のアウト
ラインベクトルデータに対して、変倍・平滑化を行う。
これが終われば、ステップS315へ進む。
【0171】ステップS315では、変倍・平滑化され
た注目ストライプのアウトラインベクトルから2値画像
を再生し、図29のステップS295と同様の方法で画
像バッファ上に出力する。この処理が終わると、ステッ
プS316へ進む。
【0172】ステップS316では、画像獲得部301
から入力画像の最終ラスタを出力したかどうか(すなわ
ち、注目ストライプが最終ストライプかどうか)を制御
部307において調べ、YESならば、画像バッファ上
に構成された画像を外部に出力し、処理を終了する。N
Oならば、ステップS317へ進む。
【0173】ステップS317では、画像メモリ303
に入っているaラスタ分の画像データをベクトル抽出部
302へ出力し、その処理結果をベクトルメモリ304
へ書き込む。このaラスタ分の画像が、次のストライプ
の先頭aラスタ分に相当する。この処理が終わればステ
ップS311へ戻り、このaラスタ分の画像に続く画像
を獲得部301から1ラスタずつベクトル抽出部302
と画像メモリ303へ入力し、処理を続行する。
【0174】このような装置において処理を行う場合、
第12実施例の画像分割部282のような1画面分の画
像メモリが必要でなくなり、aラスタ分の画像メモリで
済むようになるという利点がある。
【0175】
【第15実施例】第12から第14実施例においては、
分割された各ストライプ毎に処理を行うため、倍率によ
っては、各ストライプ毎に変倍の計算を行った際の丸め
誤差のために、画像バッファ上に構成される最終出力画
像のライン数が、入力画像全体を変倍した場合の出力画
像のライン数に比べ異なってしまうという問題点があ
る。
【0176】すなわち、ストライプの総数をn、第iス
トライプ(1≦i≦n)のライン数をhi 、予め与えら
れた、入力画像全体に対する変倍の倍率をxとすると、
(xは、一般に実数とする) 各ストライプ毎に変倍処理を行って出力する画像につい
て、それぞれ1ライン未満のライン数を丸めて、整数の
ライン数として処理し出力する必要があるので、それら
の各出力画像を画像バッファ上に構成して得られる最終
出力画像のライン数が、 ((int)(h1 +a)x)+((int)(h2
a)x)+…+((int)(hn-1 +a)x)+(i
nt)hn x−(n−1)×2×((int)a×x÷
2) となるのに対して、入力画像全体を変倍した場合の出力
画像のライン数は (int)(h1 +h2 +…+hn )x となるため、xが整数でないときには、画像を分割した
ストライプの数nを増やせば増やすほど、整数へ変換す
る演算(int)を行った際の丸め誤差による両画像の
ライン数は大きく異なってくる可能性がある。
【0177】このようなことを防ぐために、各ストライ
プ毎に変倍処理を行った後に画像バッファに書き込む際
に、重ね書きするライン数と捨てるライン数を以下に述
べるような方法で調整する必要がある。
【0178】まず、入力画像を図33のようなn個のス
トライプに単純に分割する。第iストライプのライン数
をhi とする。そして、第iストライプ(i≠n)の最
下部に第(i+1)ストライプの上からa行分をつなげ
る。この結果第iストライプ(i≠n)のライン数はh
i +aとなり、入力画像は図32のように分割されたこ
とになる。このようにして得られた新しいストライプに
ついてアウトライン抽出・変倍・平滑化の処理を行う
と、その結果得られる出力画像のライン数は(int)
(hi +a)xとなる。
【0179】その後、第12実施例の図28における制
御部285、或は第14実施例の図30における制御部
307において、図34のフローチャートに示すような
処理を行う。
【0180】現在の注目ストライプが第iストライプで
あるとする。
【0181】Tを 0.5≦T≦1を満たす任意の定数とす
る。
【0182】まず、ステップS341において、 gi =(int)hi x、 g’i =(int)(hi +a)x として、注目ストライプの拡大後のライン数gi と、注
目ストライプにaラインつなげたものを拡大したライン
数g'iの値を求める。
【0183】次に、ステップS342へ進み、j=(h
1 +h2 +…+hi )xとk=g1 +g2 +…+gi
値を求める。第1ストライプから注目ストライプまでの
画像を全体として拡大した場合のライン数j及び各スト
ライプごとに拡大してつなぎ合わせたライン数kの値が
求まれば、ステップS343へ進む。
【0184】ステップS343ではj−kが定数T以上
かどうかを調べ、YESならばgiの値を1増やし、ス
テップS345に進み、NOならばそのままステップS
344へ進む。
【0185】ステップS344では、ステップS343
で求めたj−kの値が−T以上になるかどうかを調べ、
YESならばgi の値を1減じてステップS345へ進
み、NOならばそのままステップS345へ進む。
【0186】ステップS345では、 Ai =int((g'i−gi )÷2) Bi =(g'i−gi )−Ai としてAi ,Bi を求めて記憶しておき、ステップS3
46へ進む。
【0187】ステップS346では、第iストライプの
アウトライン抽出・変倍・平滑化の処理結果画像を画像
バッファに書き込む際に、 1)i=1ならば、そのまま画像バッファ上に出力す
る。
【0188】2)i≠1ならば、図35のように、処理
結果画像の上からAi-1 ライン分を捨てた上で、画像バ
ッファ上に既に出力されている画像の最終ラインからB
i-1ラインだけ戻ったところから上書きする(Ai-1
i-1 は逆になっても良い)。
【0189】このような処理を行うことで、画像バッフ
ァ上に構成された最終出力画像のライン数は、入力画像
全体に対して変倍処理を行った場合の出力画像のライン
数と同じになり、そのうえ、ストライプの境界付近にお
ける画像の劣化を防止することができる。
【0190】
【第16実施例】第15実施例では、ストライプの総数
n、及び各ストライプのライン数hi は予め定まった値
として話を進めたが、もちろんこれに限定されるもので
はない。すなわち、第14の実施例での説明と全く同様
に、hi を幾らにするかは、ベクトルメモリの使用状況
に従って動的に定め、ストライプの総数nは、全処理が
終了する際にはじめて確定するように構成することので
き、このような構成として本発明を実施しても良いこと
は言うまでもない。この場合、第15の実施例で説明し
た図34で示される制御は、各ストライプの処理毎に実
施すれば良い。
【0191】
【第17実施例】上記に説明してきた第12から第16
実施例においては、連続するストライプ間に存在する共
通画像領域に関する処理結果は、先に処理を終えている
ストライプの処理結果部分に、後に処理されるストライ
プの処理結果を上書きするように構成したが、これに限
定するものではなく、例えば、上書きをすることに代え
て、重なり合う各画素データ毎に、それらの論理和や論
理積を取った結果をもって出力データとするようにして
も良い。論理和を用いれば原画の白画素領域中に囲まれ
た黒画素の保存を強調する効果を持ち、また論理積を用
いれば原画の黒画素領域中に囲まれた白画素の保存を強
調する効果を有する。この他の論理演算を用いて、特殊
な効果を生じさせることも可能である。
【0192】
【第18実施例】以上説明してきた、相隣合うストライ
プ状の画像領域間で共通するライン数aは、ストライプ
に依存しない定数として議論を続けてきたが、これに限
定されるものではない。即ちaは、各ストライプのライ
ン数hi に応じて決まる値ai として定めても良い。こ
の場合は、前記の設営におけるaをai として読み替え
ることで、全く同様に実施することが可能である。
【0193】
【第19実施例】ストライプ毎に行う変倍処理について
は、以上の説明においては、画像のアウトライン情報を
用いる形で行ってきたが、これに限るものではない。例
えば、原画像を線密度の異なる変換画像面に投影し、こ
の面内の1画素に亘る積分値を閾値論理により2値化し
て変換画像の画素の値を決定する投影法(新井・安田:
フアクシミリ線密度変換の一検討、画像電子学会誌Vo
1.7、No.1、pp.11〜18、1978)を用
いてストライプ毎に変倍処理を行う場合にも同様の問題
が生じるが、本発明のこれまでの説明で開示した方法に
より解決が計られることは明らかである。
【0194】尚、本発明は、複数の機器から構成される
システムに適用しても1つの機器から成る装置に適用し
ても良い。また、本発明は、システム或は装置にプログ
ラムを供給することによって達成される場合にも適用で
きることはいうまでもない。
【0195】
【発明の効果】以上説明したように、本発明にかかる画
像処理装置及び方法は、入力画像のアウトラインベクト
ルを用いて美しい変倍画像を得るような画像処理を行な
うことに関して、処理全体のスループット時間を劇的に
短縮できるという効果がある。更に、各ストライプごと
に変倍の処理を行うことに関して、処理結果を結合して
得られる最終出力画像のライン数が、入力画像全体を変
倍した場合の出力画像のライン数と大きく異なることが
ないという効果がある。
【0196】更に、分割されたストライプごとに処理を
行うことによって生じる、ストライプの継ぎ目部分の最
終出力画像の劣化を防ぐという効果がある。
【図面の簡単な説明】
【図1】入力画像を帯状画像(ストライプ)に分割する
方法を示す図である。
【図2】特願平4−254989に示す装置構成におい
て入力画像をストライプに分割してアウトライン変倍処
理を行なう場合に、各ストライプについて処理を行なう
タイミング図である。
【図3】入力画像をストライプに分割してアウトライン
変倍処理を行なう場合に、各ストライプについての処理
をパイプライン形式で行なうということを示す概念図で
ある。
【図4】第1実施例における装置の構成を示す図であ
る。
【図5】第1実施例において制御部412の行なう処理
のフローチャートである。
【図6】第1実施例において制御部412の行なう処理
のフローチャートである。
【図7】第1実施例の装置各部が各ストライプについて
処理を行なうタイミング図である。
【図8】第2実施例における装置の構成を示す図であ
る。
【図9】第2実施例において制御部412の行なう処理
のフローチャートである。
【図10】第2実施例における装置各部が各ストライプ
について処理を行なうタイミング図である。
【図11】第3実施例における装置の構成を示す図であ
る。
【図12】第3実施例において制御部412の行なう処
理のフローチャートである。
【図13】第3実施例において制御部412の行なう処
理のフローチャートである。
【図14】第3実施例における装置各部が各ストライプ
について処理を行なうタイミング図である。
【図15】第5実施例における装置各部が各ストライプ
について処理を行なうタイミング図である。
【図16】第6実施例において、FIFO形式のメモリ
を通常のメモリ+マルチプレクサ+データセレクタの組
で置き換える場合の構成図である。
【図17】入力画像をストライプ状に分割する方法を示
す図である。
【図18】第8、第9実施例における画像の変倍を行う
装置のブロック図である。
【図19】第8、第9実施例における処理の流れを示す
フローチャートである。
【図20】第8実施例において、分割された各ストライ
プについて変倍を行う際に変倍後の出力画像のライン数
を求めるためのフローチャートである。
【図21】第9実施例において、分割された各ストライ
プについて変倍を行う際に変倍後の出力画像のライン数
を求めるためのフローチャートである。
【図22】第11実施例において、入力画像を副走査方
向に分割する例を示す図である。
【図23】第11実施例において、入力画像を任意の大
きさの矩形画像に分割した例を示す図である。
【図24】第11実施例において、入力画像を任意の大
きさの矩形画像に分割することが有効な場合の、入力画
像の例を示す図である。
【図25】第11実施例において、入力画像を任意の大
きさの矩形画像に分割した例を示す図である。
【図26】入力画像をストライプに分割し各ストライプ
毎にアウトラインベクトルを用いた変倍処理を行う際
に、最終出力画像が劣化する例を示す図である。
【図27】第12実施例において、入力画像をストライ
プ状に分割する方法を示す図である。
【図28】第12・第13実施例における画像の変倍を
行う装置のブロック図である。
【図29】第12・第13実施例における処理の流れを
示すフローチャートである。
【図30】第14実施例における画像の変倍を行う装置
のブロック図である。
【図31】第14実施例における処理の流れを示すフロ
ーチャートである。
【図32】第14実施例において、入力画像を分割する
方法を示す図である。
【図33】第15実施例において、入力画像を単純に分
割した例を示す図である。
【図34】第15実施例において、ストライプ毎の変倍
処理結果画像を画像バッファに書き込む際に上書きする
ライン数を求める方法を示すフローチャートである。
【図35】第15実施例において、ストライプ毎の変倍
処理結果画像を画像バッファに書き込む方法を示す図で
ある。
【符号の説明】
401 2値画像獲得部、 402 マルチプレクサ、 403,404 ストライプ画像メモリ、 405 データセレクタ、 406 アウトラインベクトル抽出部、 407,409 ベクトル用データメモリ、 408 アウトラインベクトル平滑化/変倍部、 410 2値画像再生部、 411 2値画像出力部。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭59−182667(JP,A) 特開 平1−307879(JP,A) 特開 昭63−240680(JP,A) 特開 平3−195922(JP,A) 特開 平6−103379(JP,A) 特開 平6−337930(JP,A) 特開 平4−157578(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 3/40 G06T 5/00 H04N 1/393

Claims (24)

    (57)【特許請求の範囲】
  1. 【請求項1】 画像データの輪郭ベクトルを抽出する抽
    出手段と、 輪郭ベクトルを平滑化/変倍する平滑変倍手段と、 前記抽出手段により所定量の画像データから輪郭ベクト
    ルを抽出されたことを判定する判定手段と、 該判定手段による判定結果に基づいて、前記抽出手段に
    より抽出された輪郭ベクトルを平滑化/変倍すべく前記
    平滑変倍手段を制御する制御手段と、を備えることを特
    徴とする画像処理装置。
  2. 【請求項2】 画像データを入力する入力手段と、該入
    力手段により入力される画像データが所定量に達したな
    ら輪郭ベクトルを抽出すべく前記抽出手段を制御する手
    段とを更に備えることを特徴とする請求項1記載の画像
    処理装置。
  3. 【請求項3】 前記画像データはラスタ形式であり、前
    記所定量のデータとはラスタの主走査方向に沿ったスト
    ライプ状のデータであることを特徴とする請求項1また
    は請求項2記載の画像処理装置。
  4. 【請求項4】 前記入力手段は、前記ストライプ状デー
    タを格納する十分な容量の記憶部を少なくとも2組有
    し、空いている組に画像データを記憶することを特徴と
    する請求項3記載の画像処理装置。
  5. 【請求項5】 前記画像データはラスタ形式であり、前
    記ベクトル抽出手段は、ラスタごとに輪郭ベクトルを抽
    出する素輪郭ベクトル抽出手段と、該手段によりラスタ
    ごとに抽出された輪郭ベクトルを閉ループ単位で整列す
    る手段とを有することを特徴とする請求項1記載の画像
    処理装置。
  6. 【請求項6】 前記抽出手段は、所定量の画像データか
    ら抽出した輪郭ベクトルを記憶しておき、前記平滑変倍
    手段は記憶された輪郭ベクトルを平滑化/変倍すること
    を特徴とする請求項1記載の画像処理装置。
  7. 【請求項7】 画像データの輪郭ベクトルを平滑化/変
    倍する平滑変倍手段と、 輪郭ベクトルに基づいて画像データを再生する再生手段
    と、 前記平滑変倍手段により所定量の画像データに相当する
    輪郭ベクトルが平滑化/変倍されたことを判定する判定
    手段と、 該判定手段による判定結果に基づいて、前記平滑変倍手
    段により平滑化/変倍された輪郭ベクトルを再生すべく
    前記再生手段を制御する制御手段と、を備えることを特
    徴とする画像処理装置。
  8. 【請求項8】 画像データを出力する手段を更に備え、
    前記再生手段により再生された画像データを出力するこ
    とを特徴とする請求項7記載の画像処理装置。
  9. 【請求項9】 前記画像データはラスタ形式であり、前
    記所定量のデータとはラスタの主走査方向に沿ったスト
    ライプ状のデータであることを特徴とする請求項7記載
    の画像処理装置。
  10. 【請求項10】 前記平滑変倍手段は平滑化/変倍した
    輪郭ベクトルを記憶しておき、前記再生手段は記憶され
    た輪郭ベクトルに基づいて画像データを再生することを
    特徴とする請求項7記載の画像処理装置。
  11. 【請求項11】 画像データの輪郭ベクトルを抽出する
    抽出手段と、 輪郭ベクトルを平滑化/変倍する平滑変倍手段と、 前記抽出手段により所定量の画像データから輪郭ベクト
    ルを抽出されたことを判定する第1の判定手段と、 輪郭ベクトルに基づいて画像データを再生する再生手段
    と、 前記平滑変倍手段により所定量の画像データに相当する
    輪郭ベクトルが平滑化/変倍されたことを判定する第2
    の判定手段と、 前記第1の判定手段による判定結果に基づいて、前記抽
    出手段により抽出された輪郭ベクトルを平滑化/変倍す
    べく前記平滑変倍手段を制御し、前記第2の判定手段に
    よる判定結果に基づいて、前記平滑変倍手段により平滑
    化/変倍された輪郭ベクトルを再生すべく前記再生手段
    を制御する制御手段と、を備えることを特徴とする画像
    処理装置。
  12. 【請求項12】 入力画像データを複数の矩形領域に分
    割する手段と、 前記複数の矩形領域ごとに所定の変倍率で変倍してそれ
    らをまとめた場合の、画像の第1の大きさを算出する第
    1の算出手段と、 前記第1の算出手段の対象となる矩形領域すべてを合わ
    せた画像データを前記変倍率で変倍した場合の、画像の
    第2の大きさを算出する第2の算出手段と、 前記変倍率により前記矩形領域を変倍する変倍手段と、 前記第1の大きさと第2の大きさとに基づいて、前記変
    倍率手段により変倍された矩形領域の大きさを補正する
    補正手段と、を備えることを特徴とする画像処理装置。
  13. 【請求項13】 前記補正手段は、前記第1の大きさと
    前記第2の大きさとの差が所定値以下となるように補正
    することを特徴とする請求項12記載の画像処理装置。
  14. 【請求項14】 前記矩形領域は画像の所定方向を長手
    方向とする帯状の領域であり、前記第1の算出手段は画
    像データの先頭の矩形領域から注目矩形領域までの各矩
    形領域を対象とすることを特徴とする請求項12記載の
    画像処理装置。
  15. 【請求項15】 前記画像データは画像の輪郭を表す輪
    郭ベクトルであることを特徴とする請求項12記載の画
    像処理装置。
  16. 【請求項16】 入力画像データを複数の矩形領域に、
    各領域間で重複する重複領域を含めて分割する手段と、 前記矩形領域から画像の輪郭を表す輪郭ベクトルを抽出
    する手段と、 前記複数の矩形領域ごとに前記輪郭ベクトルを平滑化/
    変倍する平滑変倍手段と、 前記平滑変倍手段により平滑化/変倍された輪郭ベクト
    ルをもとに前記矩形領域の画像データを再生する再生手
    段と、 前記再生された矩形領域の画像データを、前記重複領域
    の一部を重ね合わせてつなぐつなぎ手段と、を備えるこ
    とを特徴とする画像処理装置。
  17. 【請求項17】 前記つなぎ手段は、前記再生手段によ
    り再生された矩形領域の辺付近の画像をを削除してから
    つなぐことを特徴とする請求項16記載の画像処理装
    置。
  18. 【請求項18】 前記矩形領域は画像の所定方向を長手
    方向とする帯状の領域であることを特徴とする請求項1
    6または17記載の画像処理装置。
  19. 【請求項19】 前記つなぎ手段は、前記重複領域を上
    書きすることを特徴とする請求項16記載の画像処理装
    置。
  20. 【請求項20】 画像データの輪郭ベクトルを抽出する
    抽出工程と、 輪郭ベクトルを平滑化/変倍する平滑変倍工程と、 前記抽出工程により所定量の画像データから輪郭ベクト
    ルを抽出されたことを判定する判定工程と、 該判定工程による判定結果に基づいて、前記抽出工程に
    より抽出された輪郭ベクトルを平滑化/変倍すべく制御
    する制御工程と、を備えることを特徴とする画像処理方
    法。
  21. 【請求項21】 画像データの輪郭ベクトルを平滑化/
    変倍する平滑変倍工程と、 輪郭ベクトルに基づいて画像データを再生する再生工程
    と、 前記平滑変倍工程により所定量の画像データに相当する
    輪郭ベクトルが平滑化/変倍されたことを判定する判定
    工程と、 該判定工程による判定結果に基づいて、前記平滑変倍工
    程により平滑化/変倍された輪郭ベクトルを再生すべく
    制御する制御工程と、を備えることを特徴とする画像処
    理方法。
  22. 【請求項22】 画像データの輪郭ベクトルを抽出する
    抽出工程と、 輪郭ベクトルを平滑化/変倍する平滑変倍工程と、 前記抽出工程により所定量の画像データから輪郭ベクト
    ルを抽出されたことを判定する第1の判定工程と、 輪郭ベクトルに基づいて画像データを再生する再生工程
    と、 前記平滑変倍工程により所定量の画像データに相当する
    輪郭ベクトルが平滑化/変倍されたことを判定する第2
    の判定工程と、 前記第1の判定工程による判定結果に基づいて、前記抽
    出工程により抽出された輪郭ベクトルを平滑化/変倍す
    べく制御し、前記第2の判定工程による判定結果に基づ
    いて、前記平滑変倍工程により平滑化/変倍された輪郭
    ベクトルを再生すべく制御する制御工程と、を備えるこ
    とを特徴とする画像処理方法。
  23. 【請求項23】 入力画像データを複数の矩形領域に分
    割する工程と、 前記複数の矩形領域ごとに所定の変倍率で変倍してそれ
    らをまとめた場合の、画像の第1の大きさを算出する第
    1の算出工程と、 前記第1の算出工程の対象となる矩形領域すべてを合わ
    せた画像データを前記変倍率で変倍した場合の、画像の
    第2の大きさを算出する第2の算出工程と、 前記変倍率により前記矩形領域を変倍する変倍工程と、 前記第1の大きさと第2の大きさとに基づいて、前記変
    倍率工程により変倍された矩形領域の大きさを補正する
    補正工程と、を備えることを特徴とする画像処理方法。
  24. 【請求項24】 入力画像データを複数の矩形領域に、
    各領域間で重複する重複領域を含めて分割する工程と、 前記矩形領域から画像の輪郭を表す輪郭ベクトルを抽出
    する工程と、 前記複数の矩形領域ごとに前記輪郭ベクトルを平滑化/
    変倍する平滑変倍工程と、 前記平滑変倍工程により平滑化/変倍された輪郭ベクト
    ルをもとに前記矩形領域の画像データを再生する再生工
    程と、 前記再生された矩形領域の画像データを、前記重複領域
    の一部を重ね合わせてつなぐつなぎ工程と、を備えるこ
    とを特徴とする画像処理方法。
JP5106643A 1992-09-24 1993-05-07 画像処理装置及び方法 Expired - Fee Related JP3006973B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP5106643A JP3006973B2 (ja) 1993-05-07 1993-05-07 画像処理装置及び方法
EP93307549A EP0589702B1 (en) 1992-09-24 1993-09-23 Image processing method and apparatus
DE69324874T DE69324874T2 (de) 1992-09-24 1993-09-23 Bildverarbeitungsverfahren und -gerät
US08/636,629 US5828794A (en) 1992-09-24 1996-04-23 Image processing method and apparatus for enlarging and reducing image data
US09/038,477 US6111994A (en) 1992-09-24 1997-12-12 Outline extraction using partial image processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5106643A JP3006973B2 (ja) 1993-05-07 1993-05-07 画像処理装置及び方法

Publications (2)

Publication Number Publication Date
JPH06318248A JPH06318248A (ja) 1994-11-15
JP3006973B2 true JP3006973B2 (ja) 2000-02-07

Family

ID=14438809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5106643A Expired - Fee Related JP3006973B2 (ja) 1992-09-24 1993-05-07 画像処理装置及び方法

Country Status (1)

Country Link
JP (1) JP3006973B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08179752A (ja) * 1994-12-21 1996-07-12 Canon Inc 画像処理装置及び方法
JP6651675B1 (ja) * 2018-09-14 2020-02-19 三菱電機株式会社 画像情報処理装置、画像情報処理方法、及び画像情報処理プログラム

Also Published As

Publication number Publication date
JPH06318248A (ja) 1994-11-15

Similar Documents

Publication Publication Date Title
US5680486A (en) Image processing apparatus
US6111994A (en) Outline extraction using partial image processing
JP2007304576A (ja) 半透明層の描写
JP2837339B2 (ja) 画像生成方法
JPH07104958B2 (ja) データ表示システムを作動させる方法
JP2890570B2 (ja) 画像処理装置の編集制御方式
US5195174A (en) Image data processing apparatus capable of composing one image from a plurality of images
US6289136B1 (en) Image processing method and apparatus
JPH1188700A (ja) カラー画像信号の符号化方法、復号化方法およびカラー画像処理装置
JPH06245056A (ja) 画像データの拡大・平滑化処理装置
US6232978B1 (en) Image processing apparatus, and method of controlling same, using a combination of enlargement and fixed ratio reduction processing
JP3006973B2 (ja) 画像処理装置及び方法
US7212238B2 (en) Magnification alteration processing method which accords with types of image data and image processing apparatus which uses the method
JP3113405B2 (ja) 画像処理装置
JPH0918698A (ja) 画像処理装置および画像処理方法
KR20060107072A (ko) 알파 평면을 이용한 영상 데이터 처리 장치 및 방법
US6897874B1 (en) Method and apparatus for providing overlay images
JP3178665B2 (ja) 画像サイズ変換方法とそのための装置
JPH0652304A (ja) 画像処理装置及びその方法
JP3093906B2 (ja) 画像処理装置及び方法
EP0558292B1 (en) Compression/expansion circuit
JPH06124189A (ja) 画像表示装置および画像表示制御方法
JP3777672B2 (ja) 画像処理方法および画像処理装置
JPH03136480A (ja) 静止画用映像演出装置
JP3054299B2 (ja) 画像処理装置及びその方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19991025

LAPS Cancellation because of no payment of annual fees