JPH08202876A - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JPH08202876A
JPH08202876A JP7012851A JP1285195A JPH08202876A JP H08202876 A JPH08202876 A JP H08202876A JP 7012851 A JP7012851 A JP 7012851A JP 1285195 A JP1285195 A JP 1285195A JP H08202876 A JPH08202876 A JP H08202876A
Authority
JP
Japan
Prior art keywords
block
edge
straight line
area
blocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP7012851A
Other languages
English (en)
Inventor
Yasuhiro Kanazuki
靖弘 金月
Takeshi Ota
健 太田
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.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP7012851A priority Critical patent/JPH08202876A/ja
Priority to US08/422,791 priority patent/US6268935B1/en
Publication of JPH08202876A publication Critical patent/JPH08202876A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、領域の切り出し及びその領
域の属性の判別を、矩形と正方形に限らず、複雑な多角
形形状でも正確に行うことができる画像処理装置を提供
することである。 【構成】 原稿画像を画素毎に読み取って得られた画素
データに基づいて画像を処理する画像処理装置におい
て、各画素データの画像の属性を判別する判別手段と、
判別手段により判別された画素データの属性が変化する
境界線を抽出する抽出手段と、抽出手段により抽出され
た境界線を直線に修正する修正手段と、修正手段により
修正された境界線に基づいて同じ属性の画素データがま
とまっている領域を切り出す切出手段と、を備えたこと
を特徴とする。また、原稿画像を所定のブロックに分割
し、前記判別手段が画像の属性を判別をブロック単位で
行うことを特徴とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ファクシミリやデジタ
ル複写機といった読取画像データを処理する装置に用い
られるもので、さらに詳しくは、1画面中に文字部、写
真部、網点部等が混在する画像データの処理に用いられ
る画像処理装置に関する。
【0002】
【従来の技術】従来からファクシミリ等においては、原
稿全体が文字原稿である場合は文字に適した画像処理を
施し、原稿全体が写真原稿である場合は写真に適した画
像処理を施して送信することによって、どのような原稿
であっても元の原稿に近い再現性を得ることが行われて
きた。しかし、1枚の原稿画像中に文字や写真が混在し
ている場合、文字や写真領域に対して各々対応した画像
処理を施すことが困難であるという問題があった。
【0003】この問題を解決するものとして、特開昭6
1−289764号や特開平3−126180号といっ
た従来技術が提案されている。これらは、文字や写真と
いった各々の属性に対応した画像処理を施すために、あ
らかじめ原稿のどの部分に文字があり、どの部分に写真
があるのかといった判別、いわゆる同じ属性の画像領域
を切り出す処理を施すことを開示している。
【0004】特開昭61−289764号は、ファクシ
ミリを対象にしたものであり、処理する画像データは2
値データである。そして、この2値データのランレング
ス(白画素または黒画素のライン)を用いて領域の切り
出しを行っている。特開平3−126180号は、入力
された画像データを最適2値化し、その2値化されたデ
ータから情報領域を外接矩形により切り出すものであ
る。また、領域内の黒画素から白画素への反転回数に基
づいて属性を判別している。
【0005】また、メモリ量を節約するために、数画素
の画像データを1ブロックとし、ブロック単位での属性
判別を行い、属性が誤判別されたブロックに対しては、
ブロックを統合し、マクロ的な判断から誤判別ブロック
を訂正する方法を、特願平6−77231号で提案し
た。
【0006】
【発明が解決しようとする課題】しかしながら、これら
の従来技術は、属性別に切り出す領域が、矩形と正方形
しか扱うことができず、切り出そうとする領域が複雑な
多角形の場合、正確に領域判別ができないという問題が
あった。
【0007】本願発明は、上記の欠点を解消することを
目的としている。つまり、領域の切り出し及びその領域
の属性の判別を、矩形と正方形に限らず、複雑な多角形
形状でも正確に行うことができる画像処理装置を提供す
ることが、本願発明の目的である。
【0008】
【課題を解決するための手段】上記の目的を達成するた
め、本発明の画像処理装置は、原稿画像を画素毎に読み
取って得られた画素データに基づいて画像を処理する画
像処理装置において、各画素データの画像の属性を判別
する判別手段と、判別手段により判別された画素データ
の属性が変化する境界線を抽出する抽出手段と、抽出手
段により抽出された境界線を直線に修正する修正手段
と、修正手段により修正された境界線に基づいて同じ属
性の画素データがまとまっている領域を切り出す切出手
段と、を備えたことを特徴とする。
【0009】また、原稿画像を画素毎に読み取って得ら
れた画素データに基づいて画像を処理する画像処理装置
において、原稿画像を所定のブロックに分割し、各ブロ
ックに含まれる複数の画素の画素データに基づいて、各
ブロック毎に画像の属性を判別する判別手段と、判別手
段により判別されたブロックの属性が変化する境界線を
抽出する抽出手段と、抽出手段により抽出された境界線
を直線に修正する修正手段と、修正手段により修正され
た境界線に基づいて同じ属性のブロックがまとまってい
る領域を切り出す切出手段と、を備えたことを特徴とす
る。
【0010】
【作用】上記構成により、本発明の画像処理装置は、属
性の境界であるエッジを直線として抽出し、この直線に
基づいて領域判別を行う。
【0011】
【実施例】以下、本発明の実施例について説明する。図
1は、本発明を適用した画像処理装置の構成を示したブ
ロック図である。なお、このブロック図には、各処理部
が記載されているが、各処理部における処理は図示して
いないCPU(中央演算装置)等によって実行される。
【0012】まず、画像入力部10において、例えば、
主走査方向にライン状に並べられたCCD(Charge Co
upled Device)等のイメージセンサによって原稿画像
が画素毎に読み取られる。読み取られた画素データは、
主走査方向の1ライン単位でラインバッファ11に入力
された後、マトリクスメモリ12に記憶される。そして
順次、原稿の副走査が進められることにより、原稿の全
画素データがマトリクスメモリ12に記憶される。な
お、画素データは、通常256階調(8ビット)で表さ
れる。
【0013】そして、以降の処理ブロックにおいて、マ
トリクスメモリ12に記憶された画素データの処理が行
われ、原稿画像が網点領域、写真領域、文字領域、背景
領域といった属性に分類される。なお、網点領域とは、
新聞中の写真のように網点により表現された画像領域で
あり、写真領域とは、中間調濃度でなめらかに表現され
た画像領域であり、文字領域とは主に2階調で表現され
た文字からなる領域であり、背景領域とは、原稿の地肌
色と同じ色の領域である。そして、本実施例では、原稿
画像から網点領域、写真領域が切り出され、それ以外の
領域と区別される。
【0014】さらに、以降の処理においては、図2に示
すように、原稿を仮想的に8×8画素の大きさのブロッ
クに分割し、ブロック単位に処理が進められる。なお、
ブロックの大きさは、8×8画素に限定されるものでは
なく、他の適当な大きさ(m×n画素)でも良い。
【0015】まず、各ブロックの属性(網点、写真、文
字、背景)を判別するために、各ブロックに固有の特徴
量が、網点検出部13、MAX−MIN検出部14、平
均濃度検出部15の各々で算出される。
【0016】網点検出部13は、各ブロック内に存在す
る孤立点(網点を構成している白画素または黒画素の集
まり)をカウントするもので、各ブロック内の全画素
(64画素)に対して、注目画素の濃度Xと注目画素か
ら上下左右にそれぞれ3ブロック離れている4つの画素
の濃度n1、n2、n3、n4とを比較するための孤立
点カウントフィルタ(図3参照)をかける処理がなされ
る。つまり、1ブロックに関し64回この孤立点カウン
トフィルタを作用させ、以下の判別式を満たす画素数を
網点値Nとしてカウントしていく。 X>max(n1、n2、n3、n4) or X<min(n1、n2、n3、n4) なお、原稿の最外郭のブロックに関しては、この孤立点
カウントフィルタを作用させることができないので、そ
れらのブロックの網点値Nは0とするか隣接する内部ブ
ロックの値を使う。
【0017】MAX−MIN検出部14は、各ブロック
内における画素濃度の散らばり具合を見るもので、各ブ
ロック内の最大濃度の画素と最小濃度の画素間の濃度差
Dが演算される。そして、平均濃度検出部15は、各ブ
ロックの濃度を得るために、64画素の平均濃度Aが演
算される。
【0018】以上のように、原稿内の全てのブロック対
して、それぞれ3つのデータ(網点値N、濃度差D、平
均濃度A)が導き出される。これらのデータを用いるこ
とにより、各ブロックの属性を判定部16において判定
する。
【0019】判定の手順としては、まず網点ブロックを
決定する。これは、網点画像が、各属性の中で一番特徴
的な画像であり、網点値Nによってのみ確率良く判定さ
れるからである(濃度差Dによる判断では、網点と文字
の判別ができない)。網点ブロックの次に文字ブロック
が決定される。文字ブロックは、通常、白黒の2値画像
であるから、濃度差Dが大きいブロックを文字ブロック
として判定する。
【0020】次に、写真ブロックが決定される。写真ブ
ロックは、濃度差Dがあまり大きくないと考えられるた
め、ある程度の濃度差D(文字ブロックの濃度差Dより
は小さい)があるブロックを写真ブロックとして判定す
る。しかし、これだけであれば、写真ブロックが全てピ
ックアップできないため、さらに平均濃度Aがある程度
濃いブロックも写真ブロックとして決定する。その後、
残ったブロックが背景ブロックということになる。ただ
し、背景ブロックは、通常原稿において、白もしくは色
が薄いという前提である。
【0021】以上の判定を整理して表すと、以下の判定
式になる。ただし、T1〜T4は、所定の閾値である。 if N>T1 then 網点ブロック else if D>T2 then 文字ブロック else if D>T3 then 写真ブロック (T2>T3) else if A>T4 then 写真ブロック else 背景ブロック 以上のように各ブロックの属性が決定された後、選択部
17において網点ブロックと写真ブロックが選択され、
各々網点マップメモリ18、写真マップメモリ19に2
値マップとして記憶される。つまり、網点マップメモリ
18には、網点と判断されたブロックに対して「1」が
割り当てられ、それ以外のブロックに対して「0」が割
り当てられる。また、写真マップメモリ19には、写真
と判断されたブロックに対して「1」が割り当てられ、
それ以外のブロックに対して「0」が割り当てられる。
【0022】次に、誤判別ブロック訂正部20、21に
おいて、判定部16で判定された結果が間違っていると
思われるブロック、所謂ノイズブロックの訂正を行う。
この訂正は、注目ブロックの周囲のブロックの属性をチ
ェックし、その注目ブロックの属性が周囲のブロックの
属性からかけ離れている場合、その注目ブロックの属性
を周囲の属性に変更することで行われる。本実施例にお
いては、図4に示されるようなフィルタを用いてスムー
ジング処理を施すことによって行われる。
【0023】このフィルタは、注目ブロックとその周り
にある8個のブロックの値(「1」または「0」)にそ
れぞれ1/9を掛けて、その値の和を注目ブロック値と
するものである。
【0024】「0」「1」が割り当てられた網点マッ
プ、写真マップに対して各々図4のフィルタを作用さ
せ、注目ブロック値が5/9以上の場合そのブロックを
「1」とし、4/9以下の場合そのブロックを「0」と
するように訂正する。
【0025】つまり、中心の注目ブロック値が4/9以
下の場合、注目ブロックの属性が周囲の属性からかけ離
れていると判断され、この注目ブロックの値を訂正する
処理を行う。なお、原稿の最外郭のブロックに関して
は、このフィルタを作用させることができないので、そ
れらのブロックは「0」とするか隣接する内部ブロック
の値を使う。
【0026】以上の処理により、網点ブロック、写真ブ
ロックが決定されたわけである。この後は、各領域矩形
化部22、23において、決定された各ブロックのあつ
まり(領域)を矩形として切り出すとともに、その位置
座標が各位置保存メモリ24、25に記憶される。その
後、この矩形内のブロックについて、エッジ抽出部2
7、28において、エッジの抽出を行い、そのエッジ情
報がエッジ情報メモリ29〜32に記憶される。次に、
誤判別エッジ訂正部33、34において、誤判別された
エッジが訂正され、領域書き込み部35、36におい
て、領域が抽出される。
【0027】以下、網点領域矩形化部22、エッジ抽出
部27、誤判別エッジ抽出部33における具体的な処理
について説明する。なお、写真領域に関する処理は、網
点領域に関する処理と同様であるので省略する。
【0028】まず、網点矩形化部22について、説明す
る。図5(a)は、網点マップ中の網点領域(図中点々
部)を示したものである。この網点領域が図7のフロー
チャートの処理に沿って切り出される。
【0029】まず、ステップS1で、走査ライン中に網
点ブロックが存在していることを示すフラグに0(存在
していない場合フラグ=0で、存在している場合フラグ
=1である)を設定する。次に、ステップS2で網点マ
ップメモリの第1ラインから図中下方向に1ライン毎に
走査していき、ライン中に網点ブロックが存在するかど
うかを調べる(ステップS3)。ライン中に網点ブロッ
クが存在し、フラグが0である場合(ステップS5)、
ステップS6でフラグを1に設定するとともに現在の走
査ラインの位置を領域開始ラインとして記憶する。
【0030】その後、ライン走査が進み、ステップS3
で、網点ブロックが存在しないラインが検出され、フラ
グが1である場合(ステップS4)、現在の走査ライン
の1ライン前のラインの位置を領域終了ラインとして記
憶する。これで、図5(a)に示されるように領域開始
ラインs1と領域終了ラインe1で囲まれた領域が切り
出される。
【0031】以後、走査ラインが最終ラインに到達する
まで(ステップS11)走査が進められ、網点領域が存
在する部分が全て切り出される。なお、図5(a)で
は、2つ目の領域(領域開始ラインs2と領域終了ライ
ンe2で囲まれた領域)まで切り出されたことが示され
ている。
【0032】なお、上記のような切り出しにおいては、
切り出された領域の幅(領域開始ラインと領域終了ライ
ン間の長さ)が所定の長さより小さい場合、その切り出
された領域が誤判別ブロック訂正部20で訂正し切れな
かった(誤判別された)網点ブロックと見なし、切り出
さないように処理している(ステップS8、S9)。
【0033】次に、上記の処理で切り出された各領域に
対して、図7のフローチャートの処理と同様の処理を、
今度は90度走査方向を変えて行う。その結果、例え
ば、領域開始ラインs1と領域終了ラインe1で囲まれ
た領域は、図5(b)に示すように、実際の網点領域
(ラインs1、e1、s2、e2で囲まれた領域)が切
り出される。
【0034】なお、特異な例として、原稿中の網点領域
が図6(a)に示すような配置になっている場合が考え
られる。このような場合も、基本的に図7のフローチャ
ートによって処理することができる。即ち、上記のよう
に2回の処理を行った結果として切り出された領域(図
6(b)のラインs1、e1、s’2、e’2で囲まれ
た領域)に対して、同様の処理をさらに90度走査方向
を変えて(1回目と同じ方向)行うことによって、実際
の網点領域が切り出されることになる。
【0035】次に、エッジ抽出部27において、ラベル
付けされた網点ブロックのエッジ部分の抽出が行われ
る。尚、このエッジ部分の抽出は、矩形位置保存メモリ
24に記憶されている矩形領域内においてのみ行う。
【0036】網点マップにおいて網点ブロックに
「1」、それ以外のブロックに「0」が割り当てられて
いるとき、左右に隣接している2つの網点ブロックに対
して、(右ブロック)−(左ブロック)という演算を全
ての網点ブロックについて行う。この演算の結果が
「1」になった場合、この計算を行った2つのブロック
の内、右側の網点ブロックにエッジブロックとして
「1」を割り当てる。演算の結果「−1」になった場
合、この計算を行った2つの網点ブロックの内、左側の
ブロックにエッジブロックとして「−1」を割り当て
る。それ以外の網点ブロックにはエッジブロックとして
「0」を割り当てる。
【0037】また、網点マップ中で最も左にあるブロッ
クに網点ブロック「1」が与えられている場合は、その
ブロックにエッジブロックとして「1」を割り当てる。
網点マップ中で最も右にあるブロックに網点ブロック
「1」が与えられている場合は、そのブロックにエッジ
ブロックとして「−1」を割り当てる。
【0038】この結果、網点ブロックの左側のエッジブ
ロックは「1」、右側のエッジブロックには「−1」
が、それ以外のブロックには「0」が割り当てられるこ
とになる。この結果を横方向のエッジ情報として、横エ
ッジ情報メモリ30に記憶させる。
【0039】尚、網点ブロック「1」が与えられている
ブロックの左右のブロックが共に網点ブロック「0」で
ある場合、そのブロックは、「1」のエッジ(網点領域
の左側のエッジ)であり、また「−1」のエッジ(網点
領域の右側のエッジ)でもある。そこで、その網点ブロ
ック「1」が与えられているブロックのエッジ情報は
「1」と「−1」の両方の値を記憶するようにする。
【0040】同様に、上下に隣接している2つの網点ブ
ロックに対して、(下ブロック)−(上ブロック)とい
う演算を全ての網点ブロックについて行う。この演算の
結果が「1」になった場合、この計算を行った2つのブ
ロックの内、下側の網点ブロックにエッジブロックとし
て「1」を割り当てる。演算の結果「−1」になった場
合、この計算を行った2つの網点ブロックの内、上側の
ブロックにエッジブロックとして「−1」を割り当て
る。それ以外の網点ブロックにはエッジブロックとして
「0」を割り当てる。
【0041】また、網点マップ中で最も上にあるブロッ
クに網点ブロック「1」が与えられている場合は、その
ブロックにエッジブロックとして「1」を割り当てる。
網点マップ中で最も下にあるブロックに網点ブロック
「1」が与えられている場合は、そのブロックにエッジ
ブロックとして「−1」を割り当てる。
【0042】この結果、網点ブロックの上側のエッジブ
ロックは「1」、下側のエッジブロックには「−1」
が、それ以外のブロックには「0」が割り当てられるこ
とになる。この結果を縦方向のエッジ情報として、縦エ
ッジ情報メモリ29に記憶させる。
【0043】尚、網点ブロック「1」が与えられている
ブロックの上下のブロックが共に網点ブロック「0」で
ある場合、そのブロックは、「1」のエッジ(網点領域
の上側のエッジ)であり、また「−1」のエッジ(網点
領域の下側のエッジ)でもある。そこで、その網点ブロ
ック「1」が与えられているブロックのエッジ情報は
「1」と「−1」の両方の値を記憶するようにする。
【0044】尚、横方向のエッジ情報と、縦方向のエッ
ジ情報は、それぞれ独立したものである。
【0045】次に、誤判別エッジ訂正部33について説
明する。誤判別エッジ訂正部においては、誤判別ブロッ
クによって生じるエッジの誤判別が訂正される。具体的
には、実際は直線であるはずのエッジが、とぎれた線と
して判別された場合等に、とぎれた線を直線に訂正する
処理が行われる。
【0046】本実施例では、誤判別エッジ訂正処理に、
ハフ変換による直線抽出アルゴリズムを用いる。このハ
フ変換による直線抽出アルゴリズムについて簡単に説明
を行う。
【0047】直線抽出とは、X−Y平面上に点がいくつ
かあるとき、それらの点が最も多く乗っている直線を見
つけるものである。例えば、図8で、点X1、X2、X
3は、一目見て直線Y=aに乗っているので、これらの
3点からの直線抽出では、直線Y=aが抽出されること
になる。
【0048】以下、具体的に説明する。まず、X−Y平
面上でなじみの深い直線の式は、直線の傾きaとY軸切
片bをパラメータとして用いるY=aX+bであるが、
ここでは、この形を用いず、図8のように、原点oから
直線に垂線を下ろしたときの垂線の長さρ、x軸と垂線
の角度θをパラメータとして用いて、 ρ=Xcosθ+Ysinθ とする。
【0049】ここで、平面上の点X1(x,y)が通る
任意の直線lを考える(図8参照)。原点oから直線l
に垂線を下ろしたとき、その垂線の長さをρ、X軸とそ
の垂線がなす角をθとすれば、ρとθで表される点は一
義的に決まる。この点を(ρ,θ)とするとき、この点
(ρ,θ)によって直線は一意に表されるから、この点
(ρ,θ)を直線lの特徴点とする。
【0050】図8のように、平面上の点X1(x,y)
を通る任意の直線lの特徴点(ρ,θ)は、原点oとX
(x,y)を直径とする円上にある。これは、円の性質
で、直径(この場合、線分O−X1を直径とする)の円
周角は90°になることから明らかである。
【0051】図8で、X1、X2、X3のそれぞれを通
る任意の直線群の特徴点(ρ,θ)をρ−θ平面上にト
レースした図が図9である。図示した通りX−Y平面上
の1点は、ρ−θ平面上の1本の正弦波状の曲線に対応
する。
【0052】ここで、実際にコンピュータで処理を行う
場合には、離散化処理であるので、ρ−θ平面を離散化
していくつかの領域に分割する必要がある。図9上の升
目は、離散的にρ、θを設定したときの最小単位の領域
を示す。次に、各ρ−θ領域ごとに、X−Y平面上の1
点をρ−θ平面上にトレースした曲線が、その領域を何
本通るかをカウントする。尚、図9の升目上の数字は、
その升(領域)のカウント数を表している。
【0053】ここで、カウント数の一番多い領域のρ、
θが、X1、X2、X3の3点を通る直線の特徴点
(ρ,θ)を示している。よって、この特徴点(ρ,
θ)からX1、X2、X3の3点を通る直線が一義的に
決定される。
【0054】図9では、カウント数が3の領域が2つあ
るが(この点については後述する)、仮に、ρがa、θ
がπ/2である領域が最もカウント数が多い領域とする
と、X1、X2、X3の3点を通る直線の式は、 a=Xcos(π/2)+Ysin(π/2) つまり、Y=aとなり、正しく直線抽出がされているこ
とがわかる。このようにして抽出された直線が、画像の
エッジを表す直線となる。
【0055】前述したように、図9では、カウント数が
3(最大)の領域が2つあるが、これは3点から直線抽
出したためであり、実際はもっと多くの点をもとに直線
抽出を行い、また、ρ−θ平面の領域(図9上の升目)
をもっと細かく設定するため、カウント数が最大の領域
は1つになる。仮に、カウント数が最大の領域が2つ以
上あれば、それぞれのρ、θの値に基づき直線を複数検
出しておく。本実施例では、このように離散化処理に起
因して複数の直線が検出された場合でも、後述する領域
書き込み処理によって正しいエッジに訂正される。
【0056】また、本実施例では、カウント数が最大の
領域からのみ直線抽出するのではなく、カウント数があ
る閾値以上の領域についてはその領域に応じた直線抽出
を行い、抽出された複数の直線についてエッジの訂正を
行なう。
【0057】次に、具体的なエッジ訂正処理について4
つの実施例を説明する。 エッジ訂正処理1) 図11は、ブロックの誤判別を含む網点マップ中での網
点領域のエッジ(図中点線部)を示したものである。こ
の網点領域のエッジが、図10のフローチャートの処理
に従って図12の様に訂正される。
【0058】図10のフローチャートを説明する。ま
ず、矩形内の各ブロックについて、エッジ情報メモリの
値が「1」かどうかを判断する(ステップS101)。
エッジ情報メモリの値が「1」であれば、そのブロック
の位置(点)を、エッジ「1」の直線候補としてρ−θ
平面へ投票する(ステップS102)。尚、ここでの投
票とは、ハフ変換による直線抽出で説明したρ−θ平面
の各領域をカウントアップすることである。ステップS
101で情報メモリの値が「1」でないと判断されたブ
ロックについて、次に情報メモリの値が「−1」かどう
かを判断する(ステップS103)。エッジ情報メモリ
の値が「−1」であれば、そのブロックの位置(点)
を、エッジ「−1」の直線候補としてρ−θ平面へ投票
する(ステップS104)。
【0059】ステップS105で、ステップS101〜
S104の処理が矩形内の全てのブロックについて終了
したかを判断し、終了していなければ次のブロックへ進
み(ステップS106)、ステップS101〜S104
の処理を繰り返す。ステップS101〜S104の処理
が矩形内の全てのブロックについて終了したら次のステ
ップS107へ進む。
【0060】次に、ステップS102での投票の多かっ
た領域のρ、θをエッジ「1」の直線候補として抽出す
る(ステップS107)。同様に、ステップS104で
の投票の多かった領域のρ、θをエッジ「−1」の直線
候補として抽出する(ステップS107)。
【0061】そして、矩形内の各ブロックが、ステップ
S107において抽出されたエッジ「1」の直線上の点
かどうかを判別し(ステップS109)、この直線上の
ブロックであればラベル「1」を書き込む(ステップS
110)。それ以外のブロックについては、次に、ステ
ップS108において抽出されたエッジ「−1」の直線
上の点かどうかを判別し(ステップS111)、この直
線上のブロックであればラベル「−1」を書き込む(ス
テップS112)。それ以外のブロックにはラベル
「0」を書き込む(ステップS113)。
【0062】ステップS114で、ステップS109〜
S113の処理が矩形内の全てのブロックについて終了
したかを判断し、終了していなければ次のブロックへ進
み(ステップS115)、ステップS109〜S113
の処理を繰り返す。
【0063】この処理を、縦方向、横方向のそれぞれの
エッジ情報について行い、訂正されたエッジ情報がエッ
ジ情報メモリ29、30に書き込まれる。
【0064】ただし、この方法で、図14のような図形
のエッジを訂正すれば、図15のようになってしまい、
正しくエッジを訂正することが出来ない。この点を改良
したものが、次に説明するエッジ訂正処理2である。
【0065】エッジ訂正処理2) 図14は、ブロックの誤判別を含む網点マップ中での網
点領域のエッジ(図中点線部)を示したものである。こ
の網点領域のエッジが、図13のフローチャートの処理
に従って図16の様に訂正される。
【0066】図13のフローチャートを説明する。ステ
ップS201〜S208は、エッジ訂正処理1(図10
のフローチャートのステップS101〜S108)と同
様である。次に、ステップS202、S204において
直線候補として投票した点について、その点がステップ
S207、S208において抽出された直線の最も端の
点かどうかを判別する(ステップS209)。
【0067】例えば、直線候補を投票した点(ブロッ
ク)の、θの大きさを比較すれば端点ブロックがわか
る。即ち、投票した点の中で、θの大きさが最大である
ブロックと最小であるブロックが端点ブロックとなる。
ただし、直線候補が、X軸、Y軸に相当するときは、投
票した点は全て同じθの値であるが、この場合はρの値
の比較で端点を見つける事が出来る。これを、X−Y平
面上でイメージすれば、図17の様になる。
【0068】ステップS209で直線の最も端の点(端
点)であると判断されたブロックは、端点ブロックとし
て抽出する(ステップS210)。
【0069】ステップS211で、ステップS209、
S210の処理が、ステップS202、S204におい
て直線候補として投票した全てのブロックについて終了
したかを判断し、終了していなければ次のブロックへ進
み(ステップS212)、ステップS209、S210
の処理を繰り返す。ステップS209、S210の処理
が、ステップS202、S204において直線候補とし
て投票した全てのブロックについて終了したら次のステ
ップS213へ進む。次に、ステップS210で抽出さ
れた線分の端点ブロックに基づいて、各直線を線分とし
て認識する(ステップS213)。
【0070】そして、矩形内の各ブロックが、ステップ
S213において認識されたエッジ「1」の線分上の点
かどうかを判別し(ステップS214)、この線分上の
ブロックであればラベル「1」を書き込む(ステップS
215)。それ以外のブロックについては、次に、ステ
ップS213において認識されたエッジ「−1」の線分
上の点かどうかを判別し(ステップS216)、この線
分上のブロックであればラベル「−1」を書き込む(ス
テップS217)。それ以外のブロックにはラベル
「0」を書き込む(ステップS218)。
【0071】ステップS219で、ステップS214〜
S218の処理が矩形内の全てのブロックについて終了
したかを判断し、終了していなければ次のブロックへ進
み(ステップS220)、ステップS214〜S218
の処理を繰り返す。
【0072】この処理を、縦方向、横方向のそれぞれの
エッジ情報について行い、訂正されたエッジ情報がエッ
ジ情報メモリ29、30に書き込まれる。
【0073】ただし、この方法で、図19の様に同一直
線上に複数の線分がある図形のエッジを訂正すれば、図
20のようになってしまい(同一直線上にある複数の線
分が、1つの線分と判断されてしまう)、正しくエッジ
を訂正することが出来ない。この点を改良したものが、
次に説明するエッジ訂正処理3である。
【0074】エッジ訂正処理3) 図19は、ブロックの誤判別を含む網点マップ中での網
点領域のエッジ(図中点線部)を示したものである。こ
の網点領域のエッジが、図18のフローチャートの処理
に従って図21の様に訂正される。
【0075】図18のフローチャートを説明する。ステ
ップS301〜S308は、エッジ訂正処理1(図10
のフローチャートのステップS101〜S108)と同
様である。次に、エッジ訂正処理2のステップS209
と同様に、ステップS302、S304において直線候
補として投票した点について、その点がステップS30
7、S308において抽出された直線の最も端の点かど
うかを判別する(ステップS309)。
【0076】ステップS309の判断で、線分の端点で
あると判断されたブロックは線分の端点ブロックとして
抽出する(ステップS311)。それ以外のブロックに
ついては、ステップS302、S304において直線候
補に投票を行った各エッジブロックの間隔(即ち、隣の
ブロックまでの間隔)が閾値以上かどうかを判断する
(ステップS310)。ステップS310でブロックの
間隔が閾値以上であると判断されたブロックについては
線分の端点ブロックとして抽出する(ステップS31
1)。
【0077】ステップS310、S311を具体的に説
明する。エッジブロック間の距離は、ΔρまたはΔθの
大きさで表すことができるため(図17の様にX軸、Y
軸に並行な直線上の点の間隔はΔρで、またその他の直
線上の点はΔθの大きさで表すことができる)、ρ−θ
平面上でΔρ、Δθがある間隔(閾値)以上のとき、そ
の間隔を挟む2点はそれぞれ別の線分の端点であるとす
ることができる。
【0078】つまり、各エッジブロックについて、隣の
エッジブロックまでの間隔が閾値以上の場合、(その2
つのエッジブロックの間には他のエッジブロックが存在
しないので)その2つのエッジブロックは、それぞれ別
の線分の端点である。
【0079】また、この際、ある間隔を挟んで数点しか
エッジブロックが無い場合は、そのブロックを孤立点と
して除去する事も可能である。そうすることにより、よ
り正確に端点を抽出することができる。
【0080】尚、このエッジブロック間隔の閾値は、矩
形領域のサイズをパラメータとして可変で設定する様に
しても良い。
【0081】ステップS312で、ステップS309〜
S311の処理が、ステップS302、S304におい
て直線候補として投票した全てのブロックについて終了
したかを判断し、終了していなければ次のブロックへ進
み(ステップS313)、ステップS309〜S311
の処理を繰り返す。ステップS309〜S311の処理
が、ステップS302、S304において直線候補とし
て投票した全てのブロックについて終了したら次のステ
ップS314へ進む。次に、ステップS314で抽出さ
れた線分の端点ブロックに基づいて、各直線を線分とし
て認識する(ステップS314)。
【0082】ステップS315〜S321は、エッジ訂
正処理2(図13のフローチャートのステップS214
〜S220)と同様である。
【0083】この処理を、縦方向、横方向のそれぞれの
エッジ情報について行い、訂正されたエッジ情報がエッ
ジ情報メモリ29、30に書き込まれる。この方法によ
って全ての任意多角形領域が抽出が可能となる。
【0084】エッジ訂正処理4) エッジ訂正処理3と同様に、図19の網点領域のエッジ
が図22のフローチャートの処理に従って図21の様に
訂正される。
【0085】図22のフローチャートを説明する。ステ
ップS401の処理が加わった以外はエッジ訂正処理3
(図18のフローチャート)と同様であるので、ステッ
プS401以外のステップには図18と同じステップ番
号を付してある。また、ステップS401以外の説明は
省略する。
【0086】エッジ訂正処理3では、ステップS310
において、ブロック間隔が閾値以上であると判断された
ブロックは線分の端点ブロックとして抽出したが、この
判別方法だけでは、線分の端点ではないブロックを端点
ブロックとして誤判別するおそれがある。例えば、1本
の線分中に直線候補として投票したブロック間隔が閾値
以上あるブロックがあった場合、そのブロックは線分の
端点ブロックとして誤って抽出されてしまう。そこで、
このように誤判別された端点ブロックを補正する処理
(ステップS401)を加えたものがエッジ訂正処理4
である。
【0087】端点ブロック補正処理(ステップS40
1)について具体的に説明する。ステップS311で抽
出したブロックの位置を全て記憶しておき、ステップS
310において、ブロック間隔が閾値以上であると判断
されたブロック(線分の端点になっている可能性が高い
ブロック)について、そのブロックが他の線分の端点に
もなっているかどうか(ステップS311において同じ
ブロックを2回抽出したかどうか)を判別する。
【0088】最終的に抽出する領域は閉じているという
特徴から、線分の端点は必ず他の線分の端点にもなって
いるはずである。逆にいえば、そうでない点は領域の端
点では無いと言う事が出来る。よって、他の線分の端点
にもなっていると判断されたブロックのみ、線分の端点
ブロックとして新たに抽出することにする。
【0089】この方法により、より精度の高い線分の端
点抽出を行う事が可能となる。これにより、任意多角形
領域が精度よく抽出される。
【0090】以上、4つのエッジ訂正処理を説明した
が、複雑な形状の多角形領域を抽出しようとすれば、処
理も複雑になるため、抽出したい多角形領域の形状に適
したエッジ訂正処理を選択すれば良い。
【0091】次に、領域書き込み部35について説明を
行う。領域書き込み部においては縦エッジ情報メモリ2
9と横エッジ情報メモリ30の「1」、「−1」情報に
基づいて網点領域をラベル「1」、その他の領域をラベ
ル「0」として再書き込みを行う。具体的には、横方向
のエッジ情報ならば、「1」の右側と、「−1」の左側
を網点領域として書き込んでいく。また、縦方向のエッ
ジ情報ならば、「1」の下側と、「−1」の上側を網点
領域として書き込んでいく。
【0092】ただし、エッジ情報「1」と「−1」の間
に他のエッジ情報である「1」や「−1」が挟まれるこ
ともあるので、次のような処理を行う。例えば、左から
(または上から)「1、1、−1」の順にエッジ情報が
並んでいる場合、まん中の「1」は無視する。同様に、
左から(または上から)「1、−1、−1」の順にエッ
ジ情報が並んでいる場合、まん中の「−1」は無視す
る。また、左から(または上から)「1、1、−1、−
1」の順にエッジ情報が並んでいる場合、まん中の
「1、−1」は無視する。
【0093】この処理を、縦方向、横方向のそれぞれの
エッジ情報について行い、最終的には縦方向マップと横
方向マップのandをとることにより図23の様な網点
領域が形成される。
【0094】以上の通り、網点領域が切り出され、そし
て同様に写真領域が切り出された後、それらを合成して
1つのビットマップが合成ビットマップ形成部26で作
成される。つまり、各ブロック2ビットで、即ち、網点
ブロックを「01」、写真ブロックを「10」、その他
のブロックを「00」としてビットマップが作成され
る。ここで、その他のブロックとは、文字ブロックと背
景ブロックが対応する。文字ブロックと背景ブロックを
同一に扱うのは、文字と文字との間も背景と見ることが
でき、さらに、後に行われる実際の画像の処理におい
て、背景はどのような処理を施してもあまり問題になら
ないためである。
【0095】最終的に作成された属性ブロックのビット
マップを用いて、即ち、原稿画像内の各領域の属性を把
握した上で、マトリクスメモリ12に記憶されている実
際の画素データに対して、各属性に適した処理を施すこ
とによって、高画質化を達成したり、効率のよい画像デ
ータ圧縮を行うことができる。
【0096】実際にファクシミリやデジタル複写機等で
行われる処理を図24を参照しながら説明する。画像入
力部10において、原稿画像が画素毎に読み取られ、読
み取られた画素データがラインバッファ11に入力され
た後、マトリクスメモリ12に記憶されるまでは図1の
説明で述べたとおりである。そして領域判別部30で前
述した領域判別が行われ原稿画像内の各領域の属性が決
定される。その後、マトリクスメモリ12に記憶されて
いる実際の画素データと領域判別部30で決定された各
領域の属性に基づいて画像処理部31で各属性に適した
処理を施し、最終的に出力部32で画像処理された画像
を出力する。
【0097】上記実施例においては、マトリクスメモリ
12に一画面分の画素データを記憶した後に、属性判別
等の処理を行ったが、本願発明はこれに限定されるもの
ではない。例えば、一画面分の画素データを記憶できる
ような大きな容量のマトリクスメモリを使用しないで、
7×7の孤立点カウントフィルタを適用できる程度の大
きさ(例えば、14×14画素)の画素データを記憶で
きる程度のマトリクスメモリを使用してもよい。この場
合、14ライン×14列ずつの画素データがマトリクス
メモリに記憶される毎にリアルタイムで対応ブロックの
属性が判別され、判別結果が各属性に対応したビットマ
ップメモリに順次記憶されている。
【0098】ただし、この場合、ラインバッファは少な
くとも13ライン分の画素データを記憶可能な容量を持
っていなければならない。さらに、このようにして全体
画像の属性を判断した場合、その結果を用いて実際の画
素データに適当な画像処理を施す段階には、もう一度原
稿画像の読み取りが必要になる。
【0099】さらに別の方法として、原稿の1/4程度
の画素データを記憶可能なマトリクスメモリを用いて処
理を行うことも考えられる。この場合、属性判別や領域
の切り出し処理と同時に実際の画像データに施す画像処
理も1/4原稿の単位で行って行けば、上述のように原
稿を再度読み取り直すことなしに、全ての処理が可能と
なる。
【0100】尚、本実施例では使用するメモリ量を節約
するため、原稿画像の画素データを所定のブロックに分
割し、各ブロックごとに属性を判別してから網点マップ
メモリ18及び写真マップメモリ19を作成してから、
これらのマップメモリの情報に基づいてそれ以降の処理
をブロック単位で行っているが、原稿画像の画素データ
を所定のブロックに分割することなく、画素単位で属性
を判別することで網点マップメモリ18及び写真マップ
メモリ19を作成し、これらのマップメモリの情報に基
づいてそれ以降の処理を画素単位で行ってもよい。
【0101】
【発明の効果】以上の説明から明らかなように、本発明
によれば、属性の境界を直線(線分)として認識できる
ので、任意多角形領域の属性判別が可能となる。従っ
て、従来技術に比べより多くのパターンの領域の属性判
別を正確に行うことができる。
【図面の簡単な説明】
【図1】本発明の画像処理装置の構成を示したブロック
【図2】ブロックに分割された原稿を示す説明図
【図3】孤立点カウントフィルタを示す説明図
【図4】誤判別抽出用フィルタを示す説明図
【図5】切り出される領域を示した模式図
【図6】切り出される領域を示した模式図
【図7】領域の切り出しのフローチャート
【図8】ハフ変換による直線抽出のX−Y平面での説明
【図9】ハフ変換による直線抽出のρ−θ平面での説明
【図10】エッジ訂正処理1のフローチャート
【図11】誤判別ブロックを含む網点領域のエッジを示
す説明図
【図12】エッジ訂正処理後の網点領域のエッジを示す
説明図
【図13】エッジ訂正処理2のフローチャート
【図14】誤判別ブロックを含む網点領域のエッジを示
す説明図
【図15】誤ったエッジ訂正処理後の網点領域のエッジ
を示す説明図
【図16】エッジ訂正処理後の網点領域のエッジを示す
説明図
【図17】ρ、θをX−Y平面上でイメージした説明図
【図18】エッジ訂正処理3のフローチャート
【図19】誤判別ブロックを含む網点領域のエッジを示
す説明図
【図20】誤ったエッジ訂正処理後の網点領域のエッジ
を示す説明図
【図21】エッジ訂正処理後の網点領域のエッジを示す
説明図
【図22】エッジ訂正処理4のフローチャート
【図23】最終的な網点領域を示す説明図
【図24】本発明の画像処理を行う装置の構成を示した
ブロック図

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 原稿画像を画素毎に読み取って得られた
    画素データに基づいて画像を処理する画像処理装置にお
    いて、 各画素データの画像の属性を判別する判別手段と、 判別手段により判別された画素データの属性が変化する
    境界線を抽出する抽出手段と、 抽出手段により抽出された境界線を直線に修正する修正
    手段と、 修正手段により修正された境界線に基づいて同じ属性の
    画素データがまとまっている領域を切り出す切出手段
    と、 を備えたことを特徴とする画像処理装置。
  2. 【請求項2】 前記修正手段は、ハフ変換による直線抽
    出法を用いて、境界線を直線に修正することを特徴とす
    る請求項1記載の画像処理装置。
  3. 【請求項3】 原稿画像を画素毎に読み取って得られた
    画素データに基づいて画像を処理する画像処理装置にお
    いて、 原稿画像を所定のブロックに分割し、各ブロックに含ま
    れる複数の画素の画素データに基づいて、各ブロック毎
    に画像の属性を判別する判別手段と、 判別手段により判別されたブロックの属性が変化する境
    界線を抽出する抽出手段と、 抽出手段により抽出された境界線を直線に修正する修正
    手段と、 修正手段により修正された境界線に基づいて同じ属性の
    ブロックがまとまっている領域を切り出す切出手段と、 を備えたことを特徴とする画像処理装置。
  4. 【請求項4】 前記修正手段は、ハフ変換による直線抽
    出法を用いて、境界線を直線に修正することを特徴とす
    る請求項3記載の画像処理装置。
JP7012851A 1994-04-15 1995-01-30 画像処理装置 Pending JPH08202876A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7012851A JPH08202876A (ja) 1995-01-30 1995-01-30 画像処理装置
US08/422,791 US6268935B1 (en) 1994-04-15 1995-04-17 Image processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7012851A JPH08202876A (ja) 1995-01-30 1995-01-30 画像処理装置

Publications (1)

Publication Number Publication Date
JPH08202876A true JPH08202876A (ja) 1996-08-09

Family

ID=11816909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7012851A Pending JPH08202876A (ja) 1994-04-15 1995-01-30 画像処理装置

Country Status (1)

Country Link
JP (1) JPH08202876A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006293522A (ja) * 2005-04-07 2006-10-26 Fuji Photo Film Co Ltd 直線検出装置、直線検出方法およびそのプログラム
US8606018B2 (en) 2008-06-17 2013-12-10 Canon Kabushiki Kaisha Image processing method and image processing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006293522A (ja) * 2005-04-07 2006-10-26 Fuji Photo Film Co Ltd 直線検出装置、直線検出方法およびそのプログラム
US8606018B2 (en) 2008-06-17 2013-12-10 Canon Kabushiki Kaisha Image processing method and image processing apparatus

Similar Documents

Publication Publication Date Title
JP6139396B2 (ja) 文書を表す二値画像を圧縮する方法及びプログラム
JP6080259B2 (ja) 文字切り出し装置及び文字切り出し方法
US6268935B1 (en) Image processor
US20080069398A1 (en) Code image processing method
CN111737478B (zh) 文本检测方法、电子设备及计算机可读介质
US20040066969A1 (en) Image processing method
JP2010072826A (ja) 画像処理装置、画像処理方法、プログラムおよびコンピュータ読み取り可能な記憶媒体
JPH0418351B2 (ja)
JPH07105312A (ja) 光学式文字読取装置における文字イメージのごみ除去方法及び装置
CN102682308B (zh) 图像处理方法和图像处理设备
JPH08202876A (ja) 画像処理装置
JPH07288679A (ja) 画像処理装置
JP3607753B2 (ja) 文書画像の領域分割方法および装置、並びに段組種類判別方法および装置
JP4244692B2 (ja) 文字認識装置及び文字認識プログラム
JP2000357287A (ja) ナンバープレート認識方法および認識装置
EP0975146A1 (en) Locating the position and orientation of multiple objects with a smart platen
JP2005250786A (ja) 画像認識方法
JP2001109887A (ja) 領域抽出方法、宛名領域抽出方法、宛名領域抽出装置、及び画像処理装置
CN113255637A (zh) 图像边界的定位方法、图像处理设备、装置和存储介质
JPH0916713A (ja) 画像領域分割方法
JP4254008B2 (ja) パターン検出装置及び方法
JP3710164B2 (ja) 画像処理装置及び方法
JP4439054B2 (ja) 文字認識装置及び文字枠線の検出方法
JP3756660B2 (ja) 画像認識方法、装置および記録媒体
JP2022019253A (ja) 情報処理装置、情報処理方法及びプログラム