JP4378208B2 - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP4378208B2
JP4378208B2 JP2004130192A JP2004130192A JP4378208B2 JP 4378208 B2 JP4378208 B2 JP 4378208B2 JP 2004130192 A JP2004130192 A JP 2004130192A JP 2004130192 A JP2004130192 A JP 2004130192A JP 4378208 B2 JP4378208 B2 JP 4378208B2
Authority
JP
Japan
Prior art keywords
point
curve
position information
contour
divided
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
JP2004130192A
Other languages
English (en)
Other versions
JP2005310070A (ja
JP2005310070A5 (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 JP2004130192A priority Critical patent/JP4378208B2/ja
Priority to US11/109,851 priority patent/US7873218B2/en
Publication of JP2005310070A publication Critical patent/JP2005310070A/ja
Publication of JP2005310070A5 publication Critical patent/JP2005310070A5/ja
Application granted granted Critical
Publication of JP4378208B2 publication Critical patent/JP4378208B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Description

本発明は、情報処理処理及び情報処理方法、情報処理プログラム等に関するものであり、特に、電子化データより2値画像データを抽出し、アウトライン化処理を実行する情報処理装置及びその方法等に好適である。
近年、環境問題がオフィス環境においても重要視され、その問題の解決策の一つとして、オフィスでのペーパーレス化が急速に進んでいる。このペーバーレス化を実現する方法として、紙文書をスキャナより読み取り、電子データに変換して情報を格納する方法が挙げられる。しかしながら、紙文書は電子データとして保存可能であるが、ファイル自体がイメージ情報であるので、紙文書自体を再利用することはできないという問題もある。また、電子データとして記憶媒体上に蓄積させる場合であっても、高画質での保存を望めば電子データのファイルサイズも大きくなるなど、記憶するイメージ情報の画質と、その電子データを格納するための記憶領域の容量と、のトレードオフの問題も生じる。
上述の従来技術として、例えば、以下の特許文献1に示されるものがある。
特開2002−230202号公報
背景技術して示した、2つの問題を同時に解決する方法として、文書画像を文字領域、写真画像領域、線画領域、表領域等のオブジェクト毎に分割し、それぞれをベクトル化処理して、電子化される画像データの容量を軽減する方法が挙げられる。この場合、文字、線画、表などの領域はアウトライン化処理によりベクトル化(以下、「アウトラインベクトル化」)することで、データ量を削減し、高画質で再利用可能な電子文書を生成することが可能になる。
このアウトラインベクトル化による電子文書は、2値画像より得られる輪郭線を追跡処理し、得られた輪郭線の曲線部をベジェ曲線等の曲線関数により関数近似することで求められる。ここで、ベジェ曲線等の曲線関数により関数近似をする場合、一般的に輪郭線上の点列と、ベジェ曲線の誤差を求め、曲線の最適化を行う必要があるので、膨大な繰り返し演算が必要となり、多大な処理時間を要することになる。
この処理時間を短縮化する近似計算として、輪郭点間を曲線で補間する方法も考えられているが、輪郭点データに対しそのまま曲線補間を行えば、補間点数の増加を招き、アウトラインベクトル化処理の圧縮効果が薄くなるという問題も生じる。また、直線近似などにより補間点数を減らす処理を行った場合、直線近似のための処理時間の増加を招くことになる。すなわち、アウトラインベクトル化によりデータ量を削減することは可能であるが、そのための近似計算においては、演算量が多くなり多大な演算時間が必要となり、アウトラインベクトル化を行いつつ演算時間の短縮化を図る場合であっても、データ量の軽減効果が十分得られないという問題が生じる。
本発明においては、上記の従来技術における問題点を鑑みて、高速に演算することが可能なベジェ曲線近似化により画像データをアウトライン化する情報処理装置及び情報処理方法、その情報処理方法をコンピュータで実行することが可能なプログラム、プログラムを格納した記録媒体を提供することを目的とするものである。
上記の目的を達成するべく、本発明にかかる2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理装置は、
入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割手段と、
前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定手段と、
前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するコントロールポイント決定手段と、
前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算手段と、
を備え
前記コントロールポイント決定手段により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする。
あるいは、上記の目的を達成するべく、本発明にかかる2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理方法は、
曲線分割手段が、入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割工程と、
特徴点決定手段が、前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定工程と、
コントロールポイント決定手段が、前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するコントロールポイント決定工程と、
近似演算手段が、前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算工程と、
を備え
前記コントロールポイント決定工程により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする。
あるいは、本発明にかかる情報処理プログラムは、コンピュータで実行するための処理を、上記の情報処理方法により特定することを特徴とする。
あるいは、本発明にかかるコンピュータ可読の記憶媒体は、上記の情報処理プログラムを格納したことを特徴とする。
本発明によれば、ベジェ曲線により、入力した電子化データから抽出した2値画像の輪郭の近似を高速化することが可能になる。
あるいは、近似したベジェ曲線の精度判定を分割した区分ごとに行うことにより、近似計算の精度を確保することが可能になる。
<第1実施形態>
以下、本発明の好適な実施形態を図面を参照しつつ説明する。本発明は汎用のコンピュータシステム上または専用画像処理システム上で、あるいは画像処理用ソフトウェアの形態で、またはデジタル画像処理を含むデバイス・ドライバおよび他のアプリケーションとして実施することができる。
以下、汎用コンピュータシステム上で実行するする情報処理の内容を、図面を参照しつつ説明する。図1は、コンピュータシステム100のブロック図である。コンピュータシステム100には、RAM113,CPU114,ROM115、通信装置116を含むコンピュータ101と、これに接続する入力装置110、出力装置111、ディスク・ドライブ装置117が含まれる。入力装置110には、例えばスキャナ、CCDカメラ、CD−ROMドライブ、デジタル・カメラなどが含まれ、少なくとも1つあるいは複数種の機器がコンピュータ101と接続することが可能である。入力装置110を介して文字情報や画像情報が電子化データとしてコンピュータシステム101に入力される。
出力装置111には、記録媒体上に文字情報や画像情報を記録して出力するプリンタや、CRTや液晶ディスプレイなの表示装置に画像情報等を可視化して表示するモニタ等が含まれ。入力装置110と同様に少なくとも一つあるいは複数種の機器がコンピュータ101に接続することが可能である。
また、コンピュータシステム100は、コンピュータ101に含まれる通信装置116を介して、ネットワーク120と接続することが可能であり、このネットワーク120に接続する外部コンピュータシステム123、124やファイルサーバ121、ネットワークプリンタなどの出力装置122とデータの受け渡しが可能である。
RAM113は、CPU114による演算処理を実行するためのワークエリアとして利用することが可能であり、ROM115は、本発明の対象となる、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理プログラムを格納することが可能である。入力装置110、出力装置111、RAM113、CPU114、ROM115、通信装置116そしてディスクドライブ117はコンピュータシステム100内のバス150を介して接続しており相互にデータの授受が可能である。入力装置110から入力された電子化データに対して、CPU114は情報処理プログラムの処理を適用することができ、その画像処理の結果はディスクドライブ117に格納したり、出力装置111を介して出力したり、ネットワーク120介して配信され、ネットワーク上のファイルサーバ121にデータを格納し、コンピュータシステム123、124間でデータを共有することもできる。更に、ネットワーク121を介して配信される画像処理の結果はネットワークに接続する出力装置122を介して出力することも可能である。図13は、分割した区分の始点、終点、特徴点、コントロールの位置情報をディスクドライブ117またはRAM113(これらは格納手段として機能する)に格納した状態を示す図である。
ディスクドライブ117は、ROM117と同様に本発明の対象となる、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理プログラムを格納することが可能である。また、ディスクドライブ117はRAM113と同様にCPU114による演算処理を実行するためのワークエリアとして利用することが可能であり、例えば、後に詳細に説明する曲線分割した始点、終点の位置情報や、特徴点、コントロールポイントの位置情報をそれぞれ格納することが可能であり、CPU114は、ベジェ曲線による近似処理において、これらの位置情報を順次読み出しながら処理を実行することができる。
また、ネットワーク120に接続するコンピュータシステム123、124やファイルサーバ121から電子化データをコンピュータシステム100に受信し、そのデータに対して、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理を適用することも可能である。
次に、コンピュータシステム100に入力した電子化データの具体的な処理の流れを説明する。図2は、入力した電子化データ(「画像源」ともいう。)に基づき、画像源の輪郭をアウトライン関数近似により表して、ベクトル化する処理の流れを説明するフローチャートである。まず、ステップS200において、CPU114は、入力した画像源より画像中の文字部、線画部等、アウトライン化処理をする2値画像を抽出する。次に、ステップS201において、CPU114は、ステップS200で得られた2値のラスター画像データより輪郭線を抽出する。
ステップS202において、CPU114は、先のステップS201で抽出された輪郭線を平滑化するための処理を実行し、ステップS203では、CPU114が輪郭線の中から角点を抽出する。
次に、ステップS204において、CPU114は、ステップS203の処理により抽出した角点間に挟まれた曲線部を関数近似により処理を行い、2値のラスター画像データをアンカーポイントとコントロールポイントから表現されるベクタデータへ変換する。ここで、ステップS204の関数近似処理ではベジェ関数を用いた近似を行う。この関数近似処理において、2つのアンカーポイント間を結ぶ曲線を構成する点列から、ベジェ曲線を構成する2つのコントロールポイントを導出する際に、導出処理を簡易に行うことで、膨大な演算処理を省き、関数近似処理の高速化が可能になる。ベジェ曲線の導出処理を簡易に行うとは、2つのアンカーポイント(図12のp1,pN)間を結ぶベジェ曲線を導出する際に、コントロールポイントをアンカーポイントと平行に構成すると仮定を設けることで、2つのアンカーポイント(p1、pN)と、アンカーポイントにおけるそれぞれの接線ベクトル(ab、cd)と、曲線上の特徴点1点(例えば、図12の点pL)と 合計5つの特徴量からベジェ曲線を導出することができる。一般的に、関数近似処理は、曲線と目標点列の誤差をそれぞれ求め 曲線の最適化を行うという膨大な繰り返し演算処理を必要とするが、本実施形態によれば、曲線を構成する点列から5つの点(2つのアンカーポイントと、2つのコントロールポイントと、1つの特徴点)を抽出するだけで一意にベジェ曲線を導出することが可能である。繰り返し演算処理を行わないことで、演算処理量を大幅に削減し、処理を高速化でき、ソフト処理でも実時間でのアウトライン化処理が可能となる。
次に、図2のフローチャートにおける各ステップの詳細な内容について説明する。図2のステップS200において、CPU114は入力した電子化データに対してエッジ処理を施し、白黒の2値化画像に変換する。この際、CPU114は、2値画像に対し認識処理を行い、文字領域や線画領域などに分類し、分類した領域ごとに2値画像を抽出することもできる。また、もともとの入力画像が2値画像であるなら、この処理は行わなくてもよい。
ステップS201において、CPU114は2値画像から輪郭線データへの変換を行う。輪郭線抽出手法は、ラスター画像データの1ドットに対し、ドットの中心を1点として輪郭線追跡する手法や、また1ドットの輪郭を4点として輪郭線追跡する手法など種々提案されている。本実施形態では、説明を簡単にするため、特開平05-108823号公報にて提案されている輪郭線追跡手法を用いて粗輪郭点列を抽出する手法を適用する。この手法によれば、図4(a)の2値画像ラスターデータは、図4(b)のように粗輪郭点が抽出される。抽出された粗輪郭点列(以下、単に「点列」ともいう。)に対し、ステップS202において、CPU114は平滑化処理を施す。この平滑化処理では、ノッチ除去処理のような輪郭直線上の凹凸を緩和する処理を施すと共に、斜め方向の輪郭線が形成する階段状の凹凸を緩和する。
次に、処理をステップS203に進め、ステップS202において平滑化された輪郭線からCPU114は角点を抽出する。ここで、角点とは、隣接する点列を結ぶベクトルの変化が鋭角となる点である。図4(c)において、点列a,bからなるベクトルabと、点列b、cからなるベクトルbcとの間でなす角θ1は鋭角であり、CPU114は角点として抽出するが、図4(d)の場合、ベクトルabと、点列b、dよりなるベクトルbdとのなす角θ2は鈍角となり、この場合、CPU114は角点として抽出は行わない。例えば、輪郭点列として文字"S"を想定した場合、図5の501〜507が角点として求められる。また、角点の抽出において、CPU114は鋭角か否かの条件の他に連続する点と点との距離がある閾値より大きい場合、その両端の点も角点とすることができる。これは、図形を構成する直線が丸みを帯びてしまうことを防止するためである。
次に、本実施形態における角点間を構成する曲線のベジェ関数近似処理(ステップS204)について説明する。図3は、角点間の曲線を構成する点列をベジェ関数に置きかえる(近似)処理の流れを説明するフローチャートである。
まず、ステップS301において、角点間の曲線を平滑化し、次に、ステップS302において、平滑化した曲線を1つのベジェ曲線で置きかえられる区分曲線に分割する。分割された区分のベジェ曲線毎に関数近似処理を施すことで、角点間の曲線を関数近似処理が施されたベジェ曲線の集合として表現することが可能である。
図10に近似するベジェ曲線の例を示す(なお、図中の白点は各線分の中点をあらわしている。)。図10に示すように、ベジェ曲線を定義する4つの点を構成するアンカーポイントP0、P3、コントロールポイントP1,P2のうち、始点P0、終点P3を通り、2つのコントロールポイントP1、P2の方向と距離によって決定されるベジェ曲線L0が描画される。このベジェ曲線L0は、始点P0、終点P3において、それぞれ線分P0P1、P2P3に接している。このベジェ曲線L0は、次の3次ベジェ曲線B(t)によって演算される。
B(t)=(1−t)3・P0+3(1−t)2・t・P1
+3(1−t)・t2・P2+t3・P3 ・・・(1)
(0≦t≦1:tは係数パラメータ)
この場合、アンカーポイントP0、P3に基づき、繰り返し演算処理によりコントロールポイントP1、P2を決定して関数近似処理を行うためには、曲線(B(t))と目標点列の誤差をそれぞれ求め 曲線の最適化を行うという膨大な繰り返し演算処理が必要とする。本実施形態においては、曲線を構成する点列から5つの点を抽出して、一意にベジェ曲線を導出することが可能である。以下、この導出の内容を具体的に説明する。近似するベジェ曲線は、コントロールポイントを結ぶ線分P1P2とアンカーポイントを結ぶ線分P0P3とが平行となるように配置するものとする。線分P1P2と線分P0P3が平行であるという仮定した場合、線分P0P3から最も距離が離れた曲線上の点Pfと線分P0P3との距離をDf(第1距離条件)とし、線分P0P3と線分P1P2との距離をDc(第2距離条件)とすると(図10を参照)、(2)式の関係が成り立つ。
Dc = (4/3)×Df ・・・(2)
(2)式を用いることにより、線分P0P3と距離Dcだけ離れた線分上の位置にコントロールポイントP1、P2を定めることができることになる。この処理はCPU114が実行するものであり、図3におけるフローチャートに従って具体的な処理が実行される。まず、ステップS301の曲線部平滑化処理では、角点間の曲線を構成する点列を平滑化する。具体的には、角点を除いた曲線を構成する点列のみをスムージングフィルタなどを使用することで平滑化し、滑らかな曲線を描く点列を作成する。図3のステップS301における曲線部平滑化処理は、図2のステップS202における平滑化処理で充分に点列のノイズが除去されるように平滑化処理が行われていれば、この処理は必ずしも行わなくてよい。
ステップS302の曲線分割処理では、一つのベジェ曲線で点列を近似(置きかえ)できる単位で輪郭点列により構成される曲線を分割(曲線分割)する。この曲線分割の例を具体的に示す図6Aと、曲線分割の処理流れを説明するフローチャート図6Bを用いて説明する。
図6Aの(a)は、角点a1から角点anを含む曲線を構成している点列a0,a1,a2,・・・an+1・・・を示している。まず、図6BのステップS601において、カウンタ(i)を初期化して、ステップS602において、CPU114は、点a1を始点してa2を終点とするベクトルをv1、点a2を始点とするベクトルをv2とし、以下同様に各点間のベクトルをそれぞれv1,v2,…,vNとして演算する。ここで求めたベクトル(Vi)の始点と終点の位置情報は、以下のステップの実行のため、一時的にRAM113に格納またはディスクドライブ117し、必要に応じて順次CPU114が読み出すように構成することができる。
ステップS603において、CPU114は点a1を始点としたベクトルv1と、他のベクトル(vi(i=2,…,vN)との成す角θiを演算し、この角度(θi)と閾値角θthとを比較する。ここで、閾値角θthは、予めROM115に格納しておくことも可能であり、また、ユーザが入力装置110を介して設定した値をRAM113またはディスクドライブ117に格納しておくことも可能である。CPU114は、角度の比較計算の際、RAM113またはROM115から閾値角θthを読み出して、計算により求めた角度θiと比較する。
この角度の比較において、演算により求められた角度(θi)が閾値角θthより小さい場合、次のベクトルを比較の対象として(S605)、再び処理をステップS603に戻し、CPU114はベクトルv1と次のベクトル(vi)とがなす角度θiを演算して閾値角θthとの比較を行う。一方、角度θiが閾値角θth以上となった場合、処理をステップS604に進めて、例えば、i=nの場合、CPU114は、ベクトルvnの端点anを曲線分割の終点(端点)と設定する。
また、端点の決定に関しては、図6Bのフローチャートで説明した閾値角を基準とする方法に限定するものではなく、例えば、CPU114が連続するベクトルの外積を求め(v1×v2、v2×v3、・・・vn-1×vn、・・・)、その符号が変化するベクトルの終点を曲線分割する区分の端点としてもよい。この場合、CPU114は、各ベクトルの外積演算の結果をRAM113またはディスクドライブ117に格納し、演算結果を参照しながら符号の変化を計算することができる。図6Aの(b)は、連続するベクトルの外積計算結果を示す図であり、図6A(b)の601により示される点は、接線602との傾きがゼロとなり符合が変化する点である。連続するベクトルの外積を求め、その符号の変化から分割する曲線の端点(該当するベクトルの終点)を求めることができる。
以上の処理による始点と終点から定められる区分の輪郭曲線a1anは一つのベジェ曲線により近似することが可能である。
次に、先の区分において端点として求められた点anを新たな始点とし、最終的なベクトルvN-1の終点aNを含む区分がベジェ曲線で近似されるまで同様の処理を繰り返す。以上の処理により、角点間の曲線点列をベジェ関数で近似する区分曲線に分割することができる。
尚、区分曲線の分割は、上記の手法だけではなく他にも種々の方法が適用できる。例えばベクトルの傾きを調べ、傾きがある閾値角度の倍数となる場合に、その端点を終点とするように区分を定めてもよい。1つのベジェ関数で近似しうる区分に分割できればよく、いずれの方法によるかということは、本発明にかかる本実施形態の趣旨を限定するものではない。以上の処理により求められた各区分曲線の始点と終点の位置情報は、図13に示すように、格納手段に格納される。
次に、CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理を図7、図8,図11A,Bを参照しつつ説明する。図7は区分曲線p1pN,pNpM,pMpQ,・・を示す図であり、図8は、分割した一つの区分曲線(p1pN)を表している。図8において、区分曲線上のN個の点をp1,p2,…pNとする。このとき、区分曲線の始点はp1、終点はpNであり、これらの点は上述の説明により区分曲線の分割により求められる始点と終点(端点)である(図11AのステップS1110)。これらの点はベジェ曲線のアンカーポイントとなる。
次に、CPU114は、各アンカーポイントp1、pNにおける接線成分を抽出する(図11AのステップS1120)。接線成分はp1、pNにおける近傍点から求められ(例えば、図12のアンカーポイントp1に対する近傍点aまたはbにより定められる方向)、この接線成分は、図3におけるステップS303で、関数近似を行う際、区分の分割と併せて行うことも可能である。
CPU114は、(2)式で与えられる第2距離条件を満たし、アンカーポイント(図10のP1、P2)を結ぶ線分上の点の位置情報と、接線上の点の位置情報とを比較して、両者の位置情報が一致する交点をベジェ曲線のコントロールポイント(C1、C2)として決定することで、始点(p1)、終点(pN)を通り、それぞれの接線1110,1120に接するベジェ曲線を(1)式の関係により求めることができる。
ここで、具体的に2つのコントロールポイント(C1、C2)を決定するために、CPU114は、ステップS1130の処理により1つの特徴点を求める。すなわち、ステップS1130において、始点(p1)と終点(pN)を結ぶ線分p1pNより最も距離の離れている曲線上の点pLを特徴点として求め、CPU114は線分p1pNと特徴点pLとの距離Dfを決定する(S1140)。
尚、ステップS1130の処理は、線分p1pNとの関係で、一つの特徴点の他その近傍の複数の点を含むように特徴点群を決定するようにしてもよい。ここで求めた特徴点群の位置情報は、CPU114によりRAM113ディスクドライブ117に格納され、後の各処理ステップの進行に応じて読み出しが可能である。図13は1つの区分内に1つの特徴点の位置情報を格納した例を示している。
図11Bは、CPU114が距離Df((2)式を参照)を決定するための処理の流れを説明するフローチャートである。まず、ステップS1131、S1132において、パラメータ(Dmax,i)の初期化処理をそれぞれ行い、ステップS1133において、CPU114は線分p1pNと点piとの距離Diの計算を行う。この際、CPU114は、線分p1pNと距離計算の対象となる点piの位置座標に基づいて、距離Diの計算を行うことができる。ステップS1134において、先のステップS1133で計算により求めた距離Diと、距離の最大値を示すパラメータDmaxとを比較し、計算して求めた距離DiがDmaxより大きい場合は、ステップS1135においてパラメータDmaxの値を更新する(S1135)。ステップS1134の判断で、計算して求めた距離DiがDmaxより大きくない場合(S1134-No)、Dmaxの値を更新しないで、処理をステップS1136に進める。ここで、Dmaxの値はRAM113またはディスクドライブ117に格納され、CPU114の演算処理において読み出しが可能である。
ステップS1136において、CPU114は、分割した区分内の点全てに対して、距離の計算が行われているか否か判断し、全ての点に対して距離計算が行われていない場合(S1136-No)、処理をステップS1137に進め、カウンタ(i)を加算して、処理をステップS1133に進め、再び線分p1pNとの距離を計算する以降の処理を実行する。
ステップS1136の判断において、区分内の全ての点に対して距離計算が完了している場合(S1136-Yes)、処理をステップS1138に進め、線分p1pNと最大の距離を与える点pLとの距離Df(Df=Dmaxとして)を決定する。
以上の処理により距離Dfは具体的に決定される。説明を図11Aに戻してステップS1150以降の処理を説明する。
本実施形態では、ベジェ関数による近似処理を簡易に行うため、コントロールポイントを結ぶ線分C1C2(図8)がアンカーポイントを結ぶ線分p1pNに対して平行になるように近似しているので、CPU114は(2)式の関係により、線分p1pNに対して、距離Dc=(4/3)×Dfとなるように線分を求め、この線分と各アンカーポイントの接線との交点をコントロールポイントC1、C2として演算することができる(S1150)。
4つの点、アンカーポイントp1、pN、コントロールポイントC1,C2の位置情報は図13に示すように格納手段に格納され、ベジェ曲線の近似計算において、これらの値が読み出され近似計算が実行される。この近似計算により、始点p1、終点pNを通り、2つのコントロールポイントC1、C2の方向と距離(Df)によって決定されるベジェ曲線が(1)式により求められる(S1160)。
以上のように、区分曲線を3次ベジェ関数により近似する際に、区分曲線上の特徴となる一点を区分の始点と終点を結ぶ線分より距離が最大となる点として抽出し、この特徴点よりベジェ曲線を決定するためのコントロールポイント(C1、C2)を一意に決定することで、演算処理量を大幅に減少することができる。本実施形態における処理は膨大な輪郭データをベジェ曲線で近似する際、高速に近似処理を実行しようとした場合に非常に有効である。
<第2実施形態>
先の第1実施形態では、5つの点(2つのアンカーポイント、2つのコントロールポイント、1つの特徴点)に基づいてベジェ関数による近似処理を行う内容を説明したが、例えば、図3のステップS302において実行した曲線分割の精度によっては、区分曲線の点列に対して近似の精度が悪くなる場合もある。そのような場合には、関数近似が良好に行われているか判断し、その結果に基づいて再度関数近似を行うことで関数近似における精度を向上させることができる。
図9は第2実施形態の処理を説明する図である。点線で表した区分曲線の点列Ldに対し、線分P0P3との距離が最大となる特徴点Pd(距離をDdとする)を用いて区分曲線Ldをベジェ関数により近似して曲線L0’が求められたとする。ここで、曲線L0’を求める処理は第1実施形態における処理と同様であるので、ここでは説明を省略する。
CPU114は、関数の近似による曲線L0’上の点Pf(線分P0P3と最大の距離を与える近似曲線上の点)と、区分曲線上の特徴点Pdとの比較を行い、両者の位置座標の差分(Δx、Δy(=Dd-Df))が許容閾値座標(Δxalw、Δyalw)の範囲内に入る場合、CPU114は曲線の関数近似は良好に行われたと判断し、分割した区分及び区分曲線を近似した関数を確定する。
一方、位置座標の差分(Δx、Δy(=Dd-Df))が許容閾値座標(Δxalw、Δyalw)より大きい場合、CPU114は、最初の区分の分割に基づく関数近似は誤差が大きく、本来の区分曲線を描いていない可能性が高いと判断する。この際、分割した区分を更に再分割するために、CPU114は、点pdを新たなアンカーポイントとして設定し、最初に分割した区分P0〜P3の範囲を、P0〜PdとPd〜P3の2つの区分に分割し、それぞれの区分曲線に対して、第1実施形態で説明した内容に従って、関数近似処理を行う。新たなアンカーポイントを加えて区分の再分割を補間することにより関数の近似精度を高めることが可能になる。
CPU114は、区分の再分割後、更に、位置座標の差分と許容範囲との比較を行い、許容範囲内に位置座標の差分が入らない場合は、更に、区分の分割を繰り返して、曲線近似の誤差が許容範囲に入るように区分の分割を修正することができる。本実施形態によれば、近似したベジェ曲線の精度判定を分割した区分ごとに行うことにより、近似計算の精度を確保することが可能になる。
<第3実施形態>
先の第1実施形態では、5つの点(2つのアンカーポイント、2つのコントロールポイント、1つの特徴点)に基づいてベジェ関数による近似処理を行う内容を説明したが、例えば、ステップS1130の処理において、線分p1pNとの関係で、一つの特徴点の他その近傍の複数の点に関して、RAM113またはディスクドライブ117に格納されている複数の特徴点をCPU114が順次読み出し、各点に基づくベジェ曲線を求め、曲線分割した輪郭点列に最も適合する(例えば、対応する点の位置誤差が最小となる条件を満たす)近似曲線を決定するようにしてもよい。
<他の実施形態>
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
実施形態にかかるコンピュータシステム100のブロック図である。 入力した電子化データに基づき、画像源の輪郭をアウトライン関数近似により表して、ベクトル化する処理の流れを説明するフローチャートである。 角点間の曲線を構成する点列をベジェ関数に置きかえる処理の流れを説明するフローチャートである。 (a)は2値画像ラスターデータの例を示し、(b)は抽出した輪郭点を示す図である。 輪郭点列として文字"S"を想定した場合の例を示す図である。 曲線分割の例を具体的に示す図である。 曲線分割の処理流れを説明するフローチャートである。 区分曲線p1pN,pNpM,pMpQ,・・を示す図である。 CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理を説明する図である。 第2実施形態の処理を説明する図である。 区分曲線を近似するベジェ曲線の例を示す図である。 CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理の流れを説明するフローチャートである。 アンカーポイントに基づく線分に対して、最大距離(Df)を求めるための処理の流れを説明するフローチャートである。 ベジェ曲線の導出処理を簡易に行うために設定する特徴点を説明する図である。 分割した区分の始点、終点、特徴点、コントロールの位置情報を格納手段に格納した状態を示す図である。

Claims (8)

  1. 2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理装置において、
    入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割手段と、
    前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定手段と、
    前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するコントロールポイント決定手段と、
    前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算手段と、
    を備え
    前記コントロールポイント決定手段により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする情報処理装置。
  2. 前記特徴点決定手段は、前記分割した区分の始点及び終点により特定される第1線分に対する各輪郭点の距離をそれぞれ演算し、当該演算結果の比較により距離が最大になる輪郭点を特徴点として決定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記近似演算手段は、前記特徴点と、当該特徴点に対応する近似したベジェ曲線上の点との位置情報を比較して、当該位置情報が許容閾値座標の範囲内にある場合は、前記近似した曲線を確定し、
    前記比較の結果、前記位置情報が前記許容閾値座標の範囲にない場合、前記曲線分割手段は、特徴点決定手段により決定された前記特徴点の位置において、前記分割された輪郭の区分を更に再分割することを特徴とする請求項1に記載の情報処理装置。
  4. 2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理方法において、
    曲線分割手段が、入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割工程と、
    特徴点決定手段が、前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定工程と、
    コントロールポイント決定手段が、前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するコントロールポイント決定工程と、
    近似演算手段が、前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算工程と、
    を備え
    前記コントロールポイント決定工程により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする情報処理方法。
  5. 前記特徴点決定工程では、前記分割した区分の始点及び終点により特定される第1線分に対する各輪郭点の距離をそれぞれ演算し、当該演算結果の比較により距離が最大になる輪郭点を特徴点として決定することを特徴とする請求項に記載の情報処理方法。
  6. 前記近似演算工程では、前記特徴点と、当該特徴点に対応する近似したベジェ曲線上の点との位置情報を比較して、当該位置情報が許容閾値座標の範囲内にある場合は、前記近似した曲線を確定し、
    前記比較の結果、前記位置情報が前記許容閾値座標の範囲にない場合、前記曲線分割工程では、特徴点決定工程により決定された前記特徴点の位置において、前記分割された輪郭の区分を更に再分割することを特徴とする請求項に記載の情報処理方法。
  7. コンピュータで実行するための処理を、請求項乃至請求項のいずれか1項に記載の情報処理方法により特定することを特徴とする情報処理プログラム。
  8. 請求項に記載の情報処理プログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。
JP2004130192A 2004-04-26 2004-04-26 情報処理装置及び情報処理方法 Expired - Fee Related JP4378208B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004130192A JP4378208B2 (ja) 2004-04-26 2004-04-26 情報処理装置及び情報処理方法
US11/109,851 US7873218B2 (en) 2004-04-26 2005-04-20 Function approximation processing method and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004130192A JP4378208B2 (ja) 2004-04-26 2004-04-26 情報処理装置及び情報処理方法

Publications (3)

Publication Number Publication Date
JP2005310070A JP2005310070A (ja) 2005-11-04
JP2005310070A5 JP2005310070A5 (ja) 2007-06-14
JP4378208B2 true JP4378208B2 (ja) 2009-12-02

Family

ID=35438728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004130192A Expired - Fee Related JP4378208B2 (ja) 2004-04-26 2004-04-26 情報処理装置及び情報処理方法

Country Status (1)

Country Link
JP (1) JP4378208B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8553985B2 (en) 2010-08-27 2013-10-08 Canon Kabushiki Kaisha Image processing apparatus, image processing method and computer-readable medium
US8687895B2 (en) 2010-10-18 2014-04-01 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable medium

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4934568B2 (ja) * 2007-11-01 2012-05-16 日立Geニュークリア・エナジー株式会社 文書情報管理支援装置、および同装置におけるラスターデータの電子化方法、ならびに電子化プログラム、記録媒体
JP5137679B2 (ja) * 2008-05-07 2013-02-06 キヤノン株式会社 画像処理装置および画像処理方法
JP5018739B2 (ja) * 2008-11-04 2012-09-05 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像処理方法及び画像処理プログラム
JP5361574B2 (ja) * 2009-07-01 2013-12-04 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2011216080A (ja) 2010-03-18 2011-10-27 Canon Inc 画像処理装置、画像処理方法、および記憶媒体
JP2011198246A (ja) 2010-03-23 2011-10-06 Canon Inc 画像処理方法、画像処理装置、プログラム及びプログラム記憶媒体
JP5566158B2 (ja) 2010-03-30 2014-08-06 キヤノン株式会社 画像処理方法、画像処理装置、及びプログラム
JP5629483B2 (ja) 2010-03-30 2014-11-19 キヤノン株式会社 画像処理方法、画像処理装置、及びプログラム
JP5653141B2 (ja) 2010-09-01 2015-01-14 キヤノン株式会社 画像処理方法、画像処理装置、及び、プログラム
JP6555414B2 (ja) * 2016-04-27 2019-08-07 株式会社島津製作所 データ処理方法及び装置
CN111461136B (zh) * 2019-01-21 2023-12-08 京东科技信息技术有限公司 数据处理方法、装置、系统、计算机可读存储介质
CN112215272A (zh) * 2020-09-29 2021-01-12 重庆大学 一种基于贝塞尔曲线的图像分类神经网络攻击方法
CN113360102B (zh) * 2021-06-01 2022-10-11 深圳市创想三维科技股份有限公司 打印文件的生成方法、装置、计算机设备和存储介质
CN116309837B (zh) * 2023-03-16 2024-04-26 南京理工大学 一种结合特征点与轮廓点的毁伤元识别定位方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8553985B2 (en) 2010-08-27 2013-10-08 Canon Kabushiki Kaisha Image processing apparatus, image processing method and computer-readable medium
US8687895B2 (en) 2010-10-18 2014-04-01 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable medium

Also Published As

Publication number Publication date
JP2005310070A (ja) 2005-11-04

Similar Documents

Publication Publication Date Title
JP4378208B2 (ja) 情報処理装置及び情報処理方法
US7873218B2 (en) Function approximation processing method and image processing method
JP5058681B2 (ja) 情報処理方法及び装置、プログラム、記憶媒体
US7747077B2 (en) Image processing apparatus, image processing method, and image processing program
JPH08138083A (ja) 形状モデル生成装置
JP2011059819A (ja) 情報処理方法及び装置
JP2005310070A5 (ja)
US20100008599A1 (en) Resolution Converting Method
JP5137679B2 (ja) 画像処理装置および画像処理方法
US6633680B2 (en) System, method and computer program product for small-font compression
JP2845269B2 (ja) 図形整形装置および図形整形方法
JP7339846B2 (ja) モデル化装置及びプログラム
JP2003209685A (ja) 解像度改善方法、装置、プログラム、記録媒体、ルックアップテーブル構築方法およびルックアップテーブル
JP2000215315A (ja) 図形分類方法、図形検索方法、図形分類検索システム及び記録媒体
US6614940B2 (en) System, method and computer program product for generic outline font compression
JP2011170481A (ja) 画像処理装置及び画像処理プログラム
JPH06274149A (ja) アウトラインフォントの幅変更処理方法および装置
KR101839687B1 (ko) 질의 모델과 검색 대상 모델 간의 정밀도 차이를 고려한 모델 검색 장치 및 방법
JPH10149438A (ja) 線対称図形整形装置
JPWO2004055697A1 (ja) 処理方法、処理装置及びコンピュータプログラム
JPH06282658A (ja) 曲線データ生成方法および装置
JP3305395B2 (ja) 図形分割装置
JP2011028632A (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
JP4405822B2 (ja) トリム内外判定装置およびその方法
JPH11143990A (ja) 文字認識方法及び装置及びその方法を記録した記録媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090728

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090904

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090914

R150 Certificate of patent or registration of utility model

Ref document number: 4378208

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130918

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees