JP2005346137A - Processing method for converting into function, function approximation processor and image processor - Google Patents

Processing method for converting into function, function approximation processor and image processor Download PDF

Info

Publication number
JP2005346137A
JP2005346137A JP2004161571A JP2004161571A JP2005346137A JP 2005346137 A JP2005346137 A JP 2005346137A JP 2004161571 A JP2004161571 A JP 2004161571A JP 2004161571 A JP2004161571 A JP 2004161571A JP 2005346137 A JP2005346137 A JP 2005346137A
Authority
JP
Japan
Prior art keywords
curve
contour
approximation
points
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004161571A
Other languages
Japanese (ja)
Other versions
JP4371911B2 (en
JP2005346137A5 (en
Inventor
Mitsuru Uzawa
充 鵜沢
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 JP2004161571A priority Critical patent/JP4371911B2/en
Priority to US11/109,851 priority patent/US7873218B2/en
Publication of JP2005346137A publication Critical patent/JP2005346137A/en
Publication of JP2005346137A5 publication Critical patent/JP2005346137A5/ja
Application granted granted Critical
Publication of JP4371911B2 publication Critical patent/JP4371911B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method for processing objects such as inputted characters and diagrams at high speed, and for preparing an outline with high image quality with a small number of points. <P>SOLUTION: Image data are inputted (301), and the inputted image data are binarized (302), and the outline of an image is extracted from the binarized image data, and tangent points in horizontal and vertical directions are estimated from the contour, and the contour between adjacent tangent points among the estimated tangent points is approximated by a predetermined function (306, 307). <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、スキャナ等の画像読取装置より読み込まれた紙文書のオブジェクトに対してアウトライン化を行う方法に関し、特にオブジェクトのアウトラインを直線、及びベジェ曲線により近似する方法に関する。   The present invention relates to a method for performing outline processing on an object of a paper document read by an image reading apparatus such as a scanner, and more particularly to a method for approximating an outline of an object by a straight line and a Bezier curve.

近年、情報の電子化が進み、文書を紙ではなく電子化して保存或いは送信するシステムが急速に普及している。特に、フルカラーの文書を保存、送信に適した電子データとしては、紙原稿を文字、表、図等のオブジェクトへ像域分離し、各オブジェクトに適した形態でデータ化したベクトルデータが適しており、データ量を削減できるだけでなく再利用性が高い。   In recent years, with the progress of computerization of information, a system for storing or transmitting documents in electronic form instead of paper is rapidly spreading. In particular, as electronic data suitable for storing and transmitting full-color documents, vector data obtained by separating an image area of a paper original into objects such as characters, tables, and figures and converting it into a form suitable for each object is suitable. In addition to reducing the amount of data, it is highly reusable.

ここで、文字、表、線等のオブジェクトは、オブジェクトの外形をアウトライン化し、直線及び曲線により表現された形態へ変換することにより、各オブジェクトのデータ量を軽減できるだけでなく、文字は解像度に依存しない高画質な電子データへ、また表、線等の図形要素は、要素毎の編集が簡便な電子データへ変換することができる。   Here, for objects such as characters, tables, lines, etc., the outline of the object is outlined and converted into a form expressed by straight lines and curves, so that not only can the data amount of each object be reduced, but the characters depend on the resolution. The graphic elements such as tables and lines can be converted into electronic data that can be easily edited for each element.

ところで、上述したような直線及び曲線への変換処理にあっては、今まで多くの方法が検討されている。それらの方法の多くは、まず輪郭線を表す点列を各セグメントへ分割し、次に各セグメントを曲線或いは直線へ変換する方法が採用されている。   By the way, many methods have been studied so far in the conversion processing to the straight line and the curve as described above. Many of these methods employ a method in which a point sequence representing an outline is first divided into segments, and then each segment is converted into a curve or a straight line.

例えば、輪郭線を一旦直線近似し、直線の組み合わせとして表現し、分割後、Bスプライン曲線、ベジェ曲線等で補間処理し、直線を滑らかな曲線に置き換える、という方法がある。直線近似処理には、区分分割手法が一般的な方法として挙げられているが、他にも例えば、非特許文献1、2に記載された方法がある。   For example, there is a method in which a contour line is temporarily approximated by a straight line, expressed as a combination of straight lines, and after division, interpolation processing is performed using a B-spline curve, a Bezier curve, or the like, and the straight line is replaced with a smooth curve. As the straight line approximation processing, the segmentation method is cited as a general method, but there are other methods described in Non-Patent Documents 1 and 2, for example.

また、輪郭線を分割する方法については、細かなショートベクトルで表現された輪郭線に対し、注目点からの角度に基づいて輪郭線を分割する方法(例えば、特許文献1参照)が開示されている。尚、ここでの補間方法としては、非特許文献3が紹介されている。   As for the method of dividing the contour line, a method of dividing the contour line based on the angle from the point of interest with respect to the contour line expressed by a fine short vector (for example, see Patent Document 1) is disclosed. Yes. As an interpolation method here, Non-Patent Document 3 is introduced.

また、点列における曲線の接線方向の角度変化に着目し、曲線を分割し曲線を分割する点列を生成し、近似処理では連続する3点よりその3点位置における比率を求め、2つの曲線を決定する簡易的な方法(例えば、特許文献2参照)が提案されている。   Further, paying attention to the angle change in the tangential direction of the curve in the point sequence, the curve is divided to generate a sequence of points to divide the curve, and the approximation process obtains the ratio at the three point positions from the three consecutive points. A simple method (see, for example, Patent Document 2) has been proposed.

また、補間方法として、有理型二次ベジェ曲線を用いる方法(例えば、特許文献3参照)が提案されている。尚、分割方法については記載されていない。   As an interpolation method, a method using a rational quadratic Bezier curve (see, for example, Patent Document 3) has been proposed. The dividing method is not described.

一方、曲線近似処理に着目すると、分割された点列に対して非線形計画法を用いて近似を行う方法(例えば、特許文献4参照)が提案されている。   On the other hand, focusing on the curve approximation process, a method of approximating a divided point sequence using a nonlinear programming method (for example, refer to Patent Document 4) has been proposed.

また、任意に分割された点列に対してDP(Dynamic Programming)を用いて複数の関数を用いて近似する方法(例えば、非特許文献4参照)が提案されている。
特開平3−48375号公報 特開平8−153191号公報 特開平6−282658号公報 特開平7−85110号公報 平曲面の最適折線近似(佐藤 電子通信学会論文誌'82/9Vol.J65-D No9) “Space-Efficient Outlines from Image Data via Vertex Minimization and Grid Constrains”,Graphical Models and Image Processing Vol.59 No.2,pp.73-88(1997) Wolfgang BOHM:A survey of corve and surface and Geometric Design 1,1984 関数化図形表現を用いた紙文書のデジタル化(森浩一 和田耕一 寅市和男 情報処理学会研究報告Vol.99,No.57,pp17-23)
Further, a method of approximating an arbitrarily divided point sequence using a plurality of functions using DP (Dynamic Programming) has been proposed (for example, see Non-Patent Document 4).
Japanese Patent Laid-Open No. 3-48375 JP-A-8-153191 JP-A-6-282658 Japanese Patent Laid-Open No. 7-85110 Optimal polygonal line approximation of a flat surface (Sato Electronic Communication Society Journal '82 /9Vol.J65-D No9) “Space-Efficient Outlines from Image Data via Vertex Minimization and Grid Constrains”, Graphical Models and Image Processing Vol.59 No.2, pp.73-88 (1997) Wolfgang BOHM: A survey of corve and surface and Geometric Design 1,1984 Digitalization of paper documents using functionalized graphic representation (Koichi Mori, Koichi Wada, Kazuo Sakai City, IPSJ SIG Vol.99, No.57, pp17-23)

上記従来の方法を用いてアウトラインを作成することは可能であるが、ラスター画像より得られるオブジェクト全てに対し、適応的にかつ高速に処理を行う場合には種々問題が生じる。例えば、直線近似処理を用いて曲線分割を行う場合、直線近似処理は直線と点列との誤差を求め最適化するため、より精度を求めれば繰り返し演算による処理量の増加が問題となる。   Although it is possible to create an outline using the above-described conventional method, various problems arise when processing all objects obtained from a raster image adaptively and at high speed. For example, when curve division is performed using a straight line approximation process, the straight line approximation process is optimized by obtaining an error between a straight line and a point sequence.

また同様に、点列に対して曲線を用いて近似すれば、曲線と点列の誤差を求めて最適化するため、処理量の増加を招く。一方、繰り返し演算を必要としない点列間の角度を用いて簡易に分割する方法では、その簡易さより小さな輪郭線から大きな輪郭線に対応するのが困難である。また、ノイズ等の影響を受け易く、最適な分割を実現するためには分割前の曲線を構成する点列(ショートベクトル)を求める処理が重要となるが、この方法については開示されていない。   Similarly, if a point sequence is approximated using a curve, an error between the curve and the point sequence is obtained and optimized, resulting in an increase in processing amount. On the other hand, in the method of simply dividing using the angle between point sequences that does not require repetitive calculation, it is difficult to correspond from a small contour line to a large contour line because of its simplicity. In addition, it is easy to be affected by noise or the like, and in order to realize optimal division, processing for obtaining a point sequence (short vector) constituting a curve before division is important, but this method is not disclosed.

また、曲線近似処理でアンカーポイント間の特徴点一点を求め、3点間の距離の比率より簡易にかつ最適な曲線を求める方法も提案されているが、特徴点を新たなアンカーポイントとし、両端のアンカーポイント2つを含む3点より2つの曲線を求める処理であるため、曲線及び点の増加を招いてしまうという問題がある。   In addition, a method has been proposed in which a single characteristic point between anchor points is obtained by curve approximation processing, and a simple and optimal curve is obtained from the ratio of the distances between the three points. This is a process for obtaining two curves from three points including two anchor points, and there is a problem that the number of curves and points increases.

また、全ての従来方法における問題として、アウトラインを一律に評価しているため、アウトラインの大きさが大きくなれば点の増加を招き、アウトラインが極端に小さくなれば近似精度の劣化を招いてしまう。尚、それら問題への対処は開示されていない。   Further, since the outline is uniformly evaluated as a problem in all the conventional methods, if the outline becomes large, the number of points increases, and if the outline becomes extremely small, the approximation accuracy deteriorates. It should be noted that how to deal with these problems is not disclosed.

従って、上記従来の方法では、曲線近似においては、近似処理が重くなるという第一の課題があり、一方それを解決するような簡易な近似処理では精度が保証されないもしくはデータ量の削減が図れないという第二の課題がある。   Therefore, in the conventional method, there is a first problem that approximation processing becomes heavy in curve approximation. On the other hand, accuracy cannot be guaranteed or data amount cannot be reduced by simple approximation processing that solves the problem. There is a second problem.

また、全ての方法において、アウトラインを一律に評価しているためにアウトライン化する対象オブジェクトの大きさに対して精度が保証されず、大きさの変化に柔軟に対処できないという第三の課題がある。   Further, in all methods, since the outline is uniformly evaluated, there is a third problem that the accuracy of the size of the target object to be outlined cannot be guaranteed and the change in size cannot be flexibly dealt with. .

本発明は、上記課題を解決するためになされたもので、入力された文字、図形等のオブジェクトに対して、高速に処理し、かつ少ないポイント数で高画質なアウトラインを作成することを目的とする。   The present invention has been made to solve the above-described problems, and has an object of processing an input object such as a character and a figure at high speed and creating a high-quality outline with a small number of points. To do.

本発明の関数化処理方法は、画像データを入力する入力工程と、入力された画像データを2値化する2値化工程と、2値化された画像データから画像の輪郭を抽出する輪郭抽出工程と、抽出された輪郭より水平及び垂直方向の接点を推定する接点推定工程と、推定された接点に対して隣接する接点間の輪郭を所定の関数で近似する関数近似工程とを有することを特徴とする。   The functionalization processing method of the present invention includes an input step for inputting image data, a binarization step for binarizing the input image data, and contour extraction for extracting an image contour from the binarized image data. And a contact estimation step for estimating horizontal and vertical contact points from the extracted contour, and a function approximation step for approximating the contour between adjacent contacts to the estimated contact point by a predetermined function. Features.

また、本発明は、曲線を構成する点列に対して三次ベジェ曲線をあてはめる関数近似処理装置であって、点列より一つの弧を描く点列を抽出する曲線分割手段と、抽出された点列に対して、三次ベジェ曲線の2つのアンカーポイントを結ぶ直線と2つのコントロールポイントを結ぶ直線が平行となるように三次ベジェ曲線をあてはめる近似手段とを有することを特徴とする。   Further, the present invention is a function approximation processing device that applies a cubic Bezier curve to a point sequence that constitutes a curve, the curve dividing means for extracting a point sequence that draws one arc from the point sequence, and the extracted points Approximating means for applying a cubic Bezier curve so that a straight line connecting two anchor points of the cubic Bezier curve and a straight line connecting two control points are parallel to the column.

更に、本発明の関数化処理方法は、画像データを入力する入力工程と、入力された画像データを2値化する2値化工程と、2値化された画像データから画像の輪郭を抽出する輪郭抽出工程と、抽出された輪郭に基づき、閉曲線で囲まれる領域を検出し、その領域の大きさを求める工程と、前記領域毎に輪郭線を関数化する際に、前記関数化のためのパラメータを領域の大きさに従って定義する工程と、定義されたパラメータに応じて対象領域の輪郭画素を関数化する工程とを有することを特徴とする。   Furthermore, the functionalization processing method of the present invention extracts an image contour from an input step of inputting image data, a binarization step of binarizing the input image data, and the binarized image data. A contour extraction step, a step of detecting a region surrounded by a closed curve based on the extracted contour, obtaining a size of the region, and a function of the contour line for each region, for the functionalization The method includes a step of defining parameters according to the size of the region, and a step of functionalizing contour pixels of the target region according to the defined parameters.

本発明によれば、入力された文字、図形等のオブジェクトに対して、高速に処理し、かつ少ないポイント数で高画質なアウトラインを作成することができる。   According to the present invention, it is possible to process an input object such as a character or graphic at high speed and create a high-quality outline with a small number of points.

以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。   The best mode for carrying out the invention will be described below in detail with reference to the drawings.

図1は、実施例1における文書処理装置の概観を示す図である。図1において、101はコンピュータ装置であり、後述するフローチャートを参照して説明する処理を実現するためのプログラムを含む、文書の電子化処理プログラムを実行する。また、コンピュータ装置101は、ユーザに状況や画像を表示するためのディスプレイ装置102と、ユーザの操作を受け付けるキーボードやマウス等のポインティングデバイスを含んで構成される入力装置103とを付随する。このディスプレイ装置102としては、CRTやLCD等が用いられる。104はスキャナ装置であり、文書画像を光学的に読み取って電子化し、得られた画像データをコンピュータ装置101に送る。尚、スキャナ装置104としては、カラースキャナを用いるものとする。   FIG. 1 is a diagram illustrating an overview of a document processing apparatus according to the first embodiment. In FIG. 1, reference numeral 101 denotes a computer device that executes a document digitization processing program including a program for realizing processing described with reference to a flowchart described later. Further, the computer apparatus 101 is accompanied by a display apparatus 102 for displaying a situation and an image to the user, and an input apparatus 103 configured to include a pointing device such as a keyboard and a mouse for receiving a user operation. As the display device 102, a CRT, an LCD, or the like is used. A scanner device 104 optically reads and digitizes a document image and sends the obtained image data to the computer device 101. Note that a color scanner is used as the scanner device 104.

図2は、実施例1における文書処理装置の構成を示すブロック図である。図2において、201はCPUであり、後述するROM又はRAMに格納された制御プログラムを実行することにより、後述する電子化処理を含む各種機能を実現する。202はROMであり、CPU201によって実行される各種制御プログラムや制御データが格納されている。203はRAMであり、CPU201によって実行される各種制御プログラムを格納したり、CPU201が各種処理を実行するのに必要な作業領域が定義されている。   FIG. 2 is a block diagram illustrating the configuration of the document processing apparatus according to the first embodiment. In FIG. 2, reference numeral 201 denotes a CPU, which realizes various functions including electronic processing described later by executing a control program stored in a ROM or RAM described later. A ROM 202 stores various control programs executed by the CPU 201 and control data. A RAM 203 stores various control programs executed by the CPU 201 and defines a work area necessary for the CPU 201 to execute various processes.

204は外部記憶装置であり、詳細は後述する実施例1における処理をCPU101によって実現するための制御プログラムや、スキャナ装置104で読み取って得られた文書画像データ等を格納する。そして、205はコンピュータバスであり、上述した各構成を接続するものである。   Reference numeral 204 denotes an external storage device, which stores a control program for realizing the processing in the first embodiment to be described later by the CPU 101, document image data obtained by reading with the scanner device 104, and the like. A computer bus 205 connects the above-described components.

図3は、文書処理装置における文書の電子化処理の概要を示す図である。ここで、電子化処理の流れは、まず入力部301において、電子化の対象とするカラー文書をスキャナ装置104を用いて読み込み、文書を画像データとして外部記憶装置204に格納する。次に、2値化処理302において、後段の像域分離処理、アウトライン生成処理のために、外部記憶装置204に格納された文書画像データに対して2値化処理を施す。そして、像域分離処理303では、2値化処理302で得られた2値画像から、文字、図、表、枠、線などの要素を抽出し、各領域に分割する。   FIG. 3 is a diagram showing an overview of document digitization processing in the document processing apparatus. Here, the flow of digitization processing is as follows. First, the input unit 301 reads a color document to be digitized using the scanner device 104 and stores the document in the external storage device 204 as image data. Next, in the binarization process 302, the binarization process is performed on the document image data stored in the external storage device 204 for the subsequent image area separation process and outline generation process. In the image area separation process 303, elements such as characters, diagrams, tables, frames, lines, and the like are extracted from the binary image obtained in the binarization process 302 and divided into areas.

次に、ベクトル化処理304において、領域分割された画像データに対して、文字部は文字認識部305で文字認識を行い、アウトライン作成部306でアウトラインベクトルデータへ変換する。また、表、枠、線部等は、アウトライン作成部307でアウトラインデータ化する。また、アウトライン作成部306及び307で変換された画像データは、各オブジェクトの輪郭線が滑らかな曲線により表現される高画質で、解像度に依存しない、かつ編集容易なベクトルデータへ変換される。   Next, in the vectorization process 304, the character part of the image data divided into regions is recognized by the character recognition unit 305, and converted into outline vector data by the outline creation unit 306. In addition, the table, frame, line portion, and the like are converted into outline data by the outline creation unit 307. Further, the image data converted by the outline creation units 306 and 307 is converted into vector data with high image quality in which the outline of each object is expressed by a smooth curve, independent of resolution, and easy to edit.

一方、その他の図、写真画、背景については、例えば背景については、圧縮部308でJPEG圧縮など各々に適した形態で保持、圧縮する。   On the other hand, for other figures, photographs, and backgrounds, for example, the background is held and compressed by the compression unit 308 in a form suitable for each, such as JPEG compression.

次に、電子文書作成処理309は、分割された要素毎の属性に基づいて文字認識データや表構造データを用い、それぞれ変換された画像情報から電子化文書を作成する。そして、出力部310は生成された電子化文書を外部記憶装置204に格納する。   Next, the electronic document creation process 309 creates a digitized document from the converted image information using character recognition data and table structure data based on the attribute of each divided element. Then, the output unit 310 stores the generated digitized document in the external storage device 204.

尚、出力部310の出力形態は外部記憶装置204への格納に限られるものではなく、ディスプレイ装置102へ表示したり、不図示のネットワークインターフェースを介してネットワーク上の他の装置へ出力したり、不図示のプリンタへ送出したりすることも可能である。   Note that the output form of the output unit 310 is not limited to storage in the external storage device 204, and is displayed on the display device 102, output to other devices on the network via a network interface (not shown), It can also be sent to a printer (not shown).

[2値化処理]
2値化処理302では、入力された文書画像データより輝度情報を抽出し、その輝度値のヒストグラムを作成する。ヒストグラム上より複数の閾値を設定し、各々の閾値で2値化された2値画像上の黒画素の連結等を解析することで最適な閾値を導出し、その閾値による2値画像を得る。
[Binarization processing]
In the binarization process 302, luminance information is extracted from the input document image data, and a histogram of the luminance values is created. A plurality of threshold values are set on the histogram, and an optimal threshold value is derived by analyzing the connection of black pixels on the binary image binarized with each threshold value, and a binary image based on the threshold values is obtained.

[像域分離処理]
像域分離処理303とは、図4に示す左側の読み取られた1ページのイメージデータをオブジェクト毎の塊(ブロック)として認識し、各々の塊を文字/図画/写真/線/表等の属性に判定し、図4に示す右側のように、異なる属性(TEXT/PICTURE/PHOTE/LINE/TABLE)を持つ領域に分割する処理である。
[Image area separation processing]
The image area separation process 303 recognizes the image data of one page read on the left side shown in FIG. 4 as a block (block) for each object, and sets each block as an attribute such as character / drawing / photo / line / table. This process is to divide into areas having different attributes (TEXT / PICTURE / PHOTE / LINE / TABLE) as shown on the right side of FIG.

像域分離処理303では、2値化処理302で得られた2値画像より、黒画素の輪郭線追跡を行って黒画素輪郭で囲まれる画素の塊を抽出する。また、面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行い、白画素の塊を抽出し、更に一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。   In the image area separation process 303, the pixel line surrounded by the black pixel outline is extracted from the binary image obtained in the binarization process 302 by tracing the outline of the black pixel. Also, for black pixel blocks with a large area, contour tracing is also performed for white pixels inside, and white pixel blocks are extracted, and recursively from the inside of white pixel blocks with a certain area or more. A black pixel block is extracted.

このようにして得られた黒画素の塊を、大きさ及び形状で分類し、異なる属性を持つ領域へ分類していく。例えば、縦横比が1に近く、大きさが一定の範囲のものを文字相当の画素塊とし、更に近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素塊を線領域、一定の大きさ以上で、かつ四角系の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を写真領域、それ以外の任意形状の画素塊を図画領域、などとする。   The black pixel blocks thus obtained are classified by size and shape, and are classified into regions having different attributes. For example, if the aspect ratio is close to 1 and the size is in a certain range, the pixel equivalent is a character block, and the portion where adjacent characters can be grouped in a well-aligned area is the character region, and the flat pixel block is the line region. The area occupied by a black pixel block that is well-aligned and contains square white pixel blocks in a well-aligned manner is a table region, an area where irregular pixel blocks are scattered is a photo region, and pixels of any other shape A block is defined as a drawing area.

図5は、像域分離処理303で分離された各ブロックに対するブロック情報と入力ファイル情報を示す図である。図5に示すように、ブロック情報は、各ブロックの属性、座標(X,Y)、幅(W)、高さ(H)、OCR情報を含み、属性1は文字、属性2は図画、属性3は表、属性4は線、属性5は写真である。そして、入力ファイル情報は、ブロック総数N(図5に示す例では、ブロック1〜ブロック6までの6である)を有する。   FIG. 5 is a diagram showing block information and input file information for each block separated by the image area separation process 303. As shown in FIG. 5, the block information includes attributes of each block, coordinates (X, Y), width (W), height (H), and OCR information, where attribute 1 is text, attribute 2 is drawing, attribute 3 is a table, attribute 4 is a line, and attribute 5 is a photograph. The input file information has a total number N of blocks (6 in the example shown in FIG. 5 from block 1 to block 6).

尚、各ブロックに対して、より鮮明な2値画像を得ようとした場合は、ここでブロック毎に上述した2値化処理を行っても良い。   If a clearer binary image is to be obtained for each block, the above-described binarization process may be performed for each block.

[文字認識]
文字認識部305では、文字単位で切り出された画像に対して、パターンマッチングの一手法を用いて認識を行い、対応する文字コードを得る。この認識処理は、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルと、予め字種毎に求められている辞書特徴ベクトルとを比較し、最も距離の近い字種を認識結果とする処理である。この特徴ベクトルの抽出には種々の公知手法があり、例えば文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴とする方法がある。
[Character recognition]
The character recognition unit 305 recognizes an image cut out in units of characters using a pattern matching method, and obtains a corresponding character code. This recognition process compares an observed feature vector obtained by converting a feature obtained from a character image into a numerical sequence of several tens of dimensions with a dictionary feature vector obtained in advance for each character type, and determines the character type with the closest distance. This is a process for obtaining a recognition result. There are various known methods for extracting the feature vector. For example, there is a method characterized by dividing a character into meshes and using a mesh number-dimensional vector obtained by counting character lines in each mesh as line elements according to directions.

像域分離処理303で抽出された文字領域に対して文字認識を行う場合、まず該当領域に対して横書き、縦書きの判定を行い、それぞれ対応する方向に行を切り出し、その後、文字を切り出して文字画像を得る。この横書き、縦書きの判定は、該当領域内で画素値に対する水平/垂直の射影を取り、水平射影の分散が大きい場合には横書き領域と判定し、垂直射影の分散が大きい場合には縦書き領域と判定すれば良い。また、文字列及び文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、更に切り出された行に対する垂直方向の射影から、文字を切り出すことで行う。縦書きの文字領域に対しては、水平と垂直を逆にすれば良い。尚 この時、文字のサイズが検出できる。   When character recognition is performed on the character area extracted in the image area separation process 303, first, horizontal writing and vertical writing are determined for the corresponding area, and the lines are cut out in the corresponding directions, and then the characters are cut out. Get a character image. This horizontal / vertical writing is determined by taking a horizontal / vertical projection of the pixel values in the corresponding area. If the horizontal projection variance is large, the horizontal writing area is determined. If the vertical projection variance is large, the vertical writing is performed. What is necessary is just to determine with an area | region. In the case of horizontal writing, the character strings and characters are decomposed by cutting out lines using horizontal projection, and further cutting out characters from the vertical projection of the cut lines. For vertically written character areas, horizontal and vertical may be reversed. At this time, the character size can be detected.

[アウトライン生成部]
アウトライン作成部306、307では、像域分離処理で得られた文字、表、枠、線について、輪郭形状を直線及び滑らかな曲線により表現されるアウトラインベクトルデータに変換する。この手法は、オブジェクト原型よりアウトラインベクトルデータを作成する際に、画質劣化を抑えつつ、高速に処理する手法であり、詳細に説明する。
[Outline generator]
The outline creation units 306 and 307 convert the outline shape of the characters, tables, frames, and lines obtained by the image area separation processing into outline vector data expressed by straight lines and smooth curves. This method is a method for performing high-speed processing while suppressing deterioration in image quality when generating outline vector data from an object prototype, and will be described in detail.

図6は、アウトライン作成部306、307の処理を示すフローチャートである。この処理の入力は、像域分離処理303で抽出された、例えば図4に示す文字(TEXT)領域の2値画像である。また、文字の場合は、文字認識部305で文字単位に切り出された画像であっても良い。   FIG. 6 is a flowchart showing the processing of the outline creation units 306 and 307. The input of this processing is, for example, a binary image of the text (TEXT) region shown in FIG. 4 extracted by the image region separation processing 303. Further, in the case of characters, an image cut out in character units by the character recognition unit 305 may be used.

まず、ステップS601において、2値のラスター画像データを水平ベクトル及び垂直ベクトルからなるアウトラインデータ(以下、粗輪郭データと呼ぶ)へと変換する。尚、入力されるラスター画像データより抽出される粗輪郭データは一つだけとは限らず、殆どの場合、複数の粗輪郭データが抽出される。   First, in step S601, binary raster image data is converted into outline data (hereinafter referred to as rough outline data) composed of a horizontal vector and a vertical vector. Note that the number of rough contour data extracted from the input raster image data is not limited to one, and in most cases, a plurality of rough contour data is extracted.

次に、ステップS602において、抽出された粗輪郭データに対して、一粗輪郭データ毎に直線及び曲線により表現されるアウトラインベクトルデータへと変換する。   Next, in step S602, the extracted rough contour data is converted into outline vector data expressed by straight lines and curves for each rough contour data.

図7は、粗輪郭データ及びアウトラインベクトルデータの一例を示す図である。図7において、(a)は粗輪郭データであり、(b)はアウトラインベクトルデータである。   FIG. 7 is a diagram illustrating an example of rough contour data and outline vector data. In FIG. 7, (a) is rough outline data, and (b) is outline vector data.

以下、図8及び図9を参照して図6に示すフローチャートの各ステップの処理について詳細に説明する。   Hereinafter, the processing of each step of the flowchart shown in FIG. 6 will be described in detail with reference to FIGS.

ステップS601では、2値のラスター画像データを粗輪郭データへと変換する。図8は、ここで扱うラスター画像データの1画素を示す図である。図8に示すように、ラスター画像データにおける1画素は、4つの頂点を有し、垂直ベクトル及び水平ベクトルより構成される正方形として扱う。1画素を4つの頂点を有する正方形として扱い、その集合であるラスター画像データのアウトラインを抽出すると、得られるアウトラインデータは、水平ベクトル及び垂直ベクトルからなる粗輪郭データが抽出される。   In step S601, binary raster image data is converted into rough contour data. FIG. 8 is a diagram showing one pixel of raster image data handled here. As shown in FIG. 8, one pixel in raster image data has four vertices and is treated as a square composed of a vertical vector and a horizontal vector. When one pixel is treated as a square having four vertices and the outline of raster image data as a set is extracted, coarse outline data composed of a horizontal vector and a vertical vector is extracted from the obtained outline data.

このような粗輪郭データの抽出方法は、種々提案されており、特に特開平5−108823号公報に開示されている粗輪郭抽出方法を用いれば、ラスター画像一面より効率良くかつ高速に粗輪郭データを抽出することが可能である。   Various methods for extracting such rough contour data have been proposed. In particular, if the rough contour extraction method disclosed in Japanese Patent Laid-Open No. 5-108823 is used, the rough contour data is more efficiently and faster than the entire raster image. Can be extracted.

そして、抽出された輪郭データは、図9に示すような、水平ベクトル及び垂直ベクトルが交互に並ぶ構成である粗輪郭データとなる。この粗輪郭データの抽出では、このような水平ベクトル及び垂直ベクトルが交互に並ぶ構成となる輪郭データを抽出し、次ステップS602へ進む。   The extracted contour data becomes rough contour data having a configuration in which horizontal vectors and vertical vectors are alternately arranged as shown in FIG. In the extraction of the rough contour data, contour data having such a configuration that the horizontal vector and the vertical vector are alternately arranged is extracted, and the process proceeds to the next step S602.

次に、ステップS602では、上述のステップS601で得られた粗輪郭データを直線及び曲線からなるアウトラインベクトルデータへと変換する。   Next, in step S602, the rough contour data obtained in step S601 described above is converted into outline vector data composed of straight lines and curves.

図10は、実施例1における粗輪郭データをアウトラインベクトルデータへと変換する処理を示すフローチャートである。まず、粗輪郭データに対してノイズ除去を行い(ステップS1001)、ノイズ除去された粗輪郭上の線分より主接線線分を抽出すると共に、準接線線分を抽出する(ステップS1002)。尚、主接線線分、準接線線分については後述する。   FIG. 10 is a flowchart illustrating a process of converting the rough contour data into outline vector data according to the first embodiment. First, noise is removed from the rough contour data (step S1001), a main tangent line segment is extracted from the line segment on the rough contour from which noise is removed, and a semi-tangent line segment is extracted (step S1002). The main tangent line segment and the quasi-tangent line segment will be described later.

次に、ステップS1002で抽出された主接線線分、準接線線分よりアンカーポイントを抽出し(ステップS1003)、抽出されたアンカーポイント間が数個の線分により構成されるグループを二次もしくは三次ベジェ曲線及び直線にあてはめる(ステップS1004)。次に、残りの線分についてベジェ曲線近似を行い、三次もしくは二次のベジェ曲線により置き換える(ステップS1005)。最後に、直線及び曲線より構成されるアウトラインベクトルデータに対して、補正処理を行う(ステップS1006)。   Next, anchor points are extracted from the main tangent line segment and the quasi-tangent line segment extracted in step S1002 (step S1003), and a group composed of several line segments between the extracted anchor points is secondary or A cubic Bezier curve and a straight line are applied (step S1004). Next, Bezier curve approximation is performed on the remaining line segments and replaced with a cubic or quadratic Bezier curve (step S1005). Finally, correction processing is performed on outline vector data composed of straight lines and curves (step S1006).

以下、図11乃至図20を参照して図10に示すフローチャートの各ステップの処理について詳細に説明する。   Hereinafter, the processing of each step of the flowchart shown in FIG. 10 will be described in detail with reference to FIGS.

[ノイズ除去]
まず、ノイズ除去(ステップS1001)では、粗輪郭データよりノイズ除去を行う。図11は、除去するノイズの一例を示す図である。尚、図中の“1”は、ラスター画像における1画素大のサイズを表し、1画素サイズの凹凸を除去することを目的とする。このノイズ除去では、図11の(a)、(b)の網点ノイズ、同(c)に示す角欠けノイズを除去するが、図12に示すように、ノイズに似た粗輪郭データも存在する。特に、ここでは、小さな文字から大きな文字までを扱うことを前提としているので、図12に示す形状のものを全て除去しては画質の劣化を招く。
[Noise reduction]
First, in noise removal (step S1001), noise is removed from the rough contour data. FIG. 11 is a diagram illustrating an example of noise to be removed. Note that “1” in the figure represents the size of one pixel in the raster image, and an object is to remove the unevenness of one pixel size. In this noise removal, the halftone dot noise shown in FIGS. 11A and 11B and the corner missing noise shown in FIG. 11C are removed. However, as shown in FIG. 12, there is also rough contour data similar to the noise. To do. In particular, here, since it is premised on handling from a small character to a large character, removing all of the shapes shown in FIG. 12 causes degradation of image quality.

よって、ノイズ解析が必要であり、例えば図11に示すノイズは、それぞれ以下の条件(a)〜(c)を満たす場合に除去するものとする。
(a)1つの凸ノイズについて、次の式を満たす。
Therefore, noise analysis is necessary. For example, the noise shown in FIG. 11 is removed when the following conditions (a) to (c) are satisfied.
(A) For one convex noise, the following expression is satisfied.

Figure 2005346137
Figure 2005346137

(b)凸ノイズが複数個隣接している。
(c)次式を全て満たす。
(B) A plurality of convex noises are adjacent to each other.
(C) All the following expressions are satisfied.

Figure 2005346137
Figure 2005346137

尚、(b)の除去手法としては、次の2つを比べ、小さい方側を凸ノイズの上辺としてノイズを除去する。   As a removal method of (b), the following two are compared, and the noise is removed with the smaller side as the upper side of the convex noise.

Figure 2005346137
Figure 2005346137

ところで、ノイズを判断するための各パラメータα1,Θ,Θ,Θは一定値でもよいが、小さなオブジェクトから大きなオブジェクトを扱う上で、全てのオブジェクトを一律に評価することは困難であるので、より詳細に行うためには、粗輪郭データそれぞれのオブジェクトサイズに応じて変更しても良い。このオブジェクトサイズの情報、即ち、文字サイズは文字認識部305により、またアウトラインサイズは像域分離処理303で既に抽出されているので、それらを用いて簡単に閾値Θ,Θ,Θを導出することが可能である。
以上でノイズ除去が行えるが、元々粗輪郭抽出前に2値のラスター画像データにおいてノイズ除去することも可能であり、ラスター画像データでノイズ除去してあれば、ここで行わなくても良い。しかしながら、ラスター画像上でノイズを除去する場合は、画像一面を処理する必要があり、かつ上述した条件を満たす除去を行う場合は、非常に処理が重くなってしまう。これに対して、粗輪郭データでは扱うデータ量も少なくて済むので、非常に効率的である。
Incidentally, the parameters α1 for determining noise, Θ 1, Θ 2, Θ 3 may be a fixed value, but in handling large objects from small objects, it is difficult to evaluate all objects uniformly Therefore, in order to carry out in more detail, you may change according to each object size of rough outline data. Since the object size information, that is, the character size has already been extracted by the character recognition unit 305 and the outline size has already been extracted by the image area separation process 303, the threshold values Θ 1 , Θ 2 , and Θ 3 can be simply set using them. It is possible to derive.
Although noise removal can be performed as described above, it is also possible to remove noise in binary raster image data before extraction of the rough contour, and if noise removal is performed with raster image data, it may not be performed here. However, when removing noise on a raster image, it is necessary to process the entire surface of the image, and when performing removal that satisfies the above-described conditions, the processing becomes very heavy. On the other hand, the rough contour data is very efficient because the amount of data to be handled is small.

[接線線分抽出]
次に、ステップS1002では、ノイズ除去された粗輪郭データより、オブジェクトに対する接線線分を抽出する。接線線分とは、粗輪郭データの線分中、ある線分がそのままオブジェクト形状の接線成分となる線分である。
[Tangential line extraction]
Next, in step S1002, a tangent line segment to the object is extracted from the rough contour data from which noise has been removed. The tangent line segment is a line segment in which a certain line segment is directly used as a tangential component of the object shape in the line segment of the rough outline data.

図13は、粗輪郭データより接線線分の抽出を説明するための図である。図13に示す(a)は元の粗輪郭データであり、図13に示す(b)の太線部が粗輪郭(a)より抽出された接線線分である。ここで、接線線分は以下の条件(1)〜(4)を満たす場合に、抽出される。   FIG. 13 is a diagram for explaining extraction of a tangent line segment from rough contour data. (A) shown in FIG. 13 is the original rough contour data, and the thick line portion in (b) shown in FIG. 13 is a tangent line segment extracted from the rough contour (a). Here, the tangent line segment is extracted when the following conditions (1) to (4) are satisfied.

Figure 2005346137
Figure 2005346137

尚、条件に使用されるパラメータθ〜θは、解像度に依存する一定値でも構わないが、文字認識部305によって抽出される文字サイズ、像域分離処理303で検出される領域サイズ、ステップS601で検出されるアウトラインサイズ等のオブジェクトサイズにより、適応的に変更しても良い。
また、各オブジェクトサイズに応じて条件(1)〜(4)のうち、適用する条件を選択しても良い。
The parameters θ 1 to θ 5 used for the conditions may be constant values depending on the resolution, but the character size extracted by the character recognition unit 305, the region size detected by the image area separation process 303, and steps It may be adaptively changed according to the object size such as the outline size detected in S601.
Moreover, you may select the conditions to apply among conditions (1)-(4) according to each object size.

オブジェクトのサイズにより条件を変更することで、文字サイズ、輪郭サイズに応じた最適な近似処理が可能となる。   By changing the conditions according to the size of the object, it is possible to perform optimum approximation processing according to the character size and the outline size.

そして、ステップS1004〜S1006において、粗輪郭データを直線と曲線により表現されるアウトラインデータへと変換する。具体的には、曲線は図14に示す(a)の三次ベジェ曲線と図14に示す(b)の二次ベジェ曲線を使用する。図14に示す(c)は直線を示す。   In steps S1004 to S1006, the rough contour data is converted into outline data expressed by straight lines and curves. Specifically, the curve uses the cubic Bezier curve of (a) shown in FIG. 14 and the secondary Bezier curve of (b) shown in FIG. (C) shown in FIG. 14 shows a straight line.

尚、図14に示す(a)の三次ベジェ曲線、図14に示す(b)の二次ベジェ曲線は、以下の式1、式2により表現される。   Note that the cubic Bezier curve in FIG. 14A and the secondary Bezier curve in FIG. 14B are expressed by the following equations 1 and 2.

B(t)=(1-t)3・Q1+3(1-t)2・t・Q2+3(1-t)・t2・Q3+t3・Q4 …式1
B(t)=(1-t)2・Q1'+2(1-t)・t・Q2'+t2・Q3' …式2
図14において、点Q1,Q4,Q1’,Q3’,Q1”,Q2”をアンカーポイントとし、曲線を制御しているQ2,Q3,Q2’をコントロールポイントと呼ぶ。ここで、コントロールポイントとアンカーポイントを結ぶ直線、例えば直線Q1Q2は、アンカーポイントQ1において曲線と接する。
B (t) = (1-t) 3 ・ Q1 + 3 (1-t) 2 ・ t ・ Q2 + 3 (1-t) ・ t2 ・ Q3 + t3 ・ Q4… Formula 1
B (t) = (1-t) 2 · Q1 '+ 2 (1-t) · t · Q2' + t2 · Q3 '… Formula 2
In FIG. 14, points Q1, Q4, Q1 ′, Q3 ′, Q1 ″, Q2 ″ are anchor points, and Q2, Q3, Q2 ′ controlling the curve are called control points. Here, a straight line connecting the control point and the anchor point, for example, the straight line Q1Q2 is in contact with the curve at the anchor point Q1.

また、アンカーポイント間にコントロールポイントがなければ、図14に示す(c)のように直線となる。   If there is no control point between anchor points, a straight line is formed as shown in FIG.

[アンカーポイント抽出]
ステップS1003では、上述のステップS1002で抽出された接線線分上に新たな点を抽出し、それをアンカーポイントとする。アンカーポイントは、接線線分の端2つに対してそれぞれ抽出される。よって、一つの接線線分に対して2つのアンカーポイントが抽出されるが、2つのアンカーポイントが一致した場合には一つのアンカーポイントのみ抽出されるものとする。2つのアンカーポイントが抽出される場合は、アンカーポイントに挟まれた部位は自動的にオブジェクト上の直線となる。
[Anchor point extraction]
In step S1003, a new point is extracted on the tangent line segment extracted in step S1002, and is used as an anchor point. Anchor points are extracted for each of the two ends of the tangent line segment. Therefore, two anchor points are extracted for one tangent line segment. However, when the two anchor points match, only one anchor point is extracted. When two anchor points are extracted, the part sandwiched between the anchor points automatically becomes a straight line on the object.

ここで、接線線分上の一つの端点に対するアンカーポイントの抽出方法の一例について説明する。図15は、アンカーポイントの抽出方法の一例を示す図である。図15に示すV2を接線線分のベクトルとし、ベクトルV1側の端点に対するアンカーポイントの抽出方法について説明する。   Here, an example of an anchor point extraction method for one end point on a tangent line segment will be described. FIG. 15 is a diagram illustrating an example of an anchor point extraction method. An anchor point extraction method for the end point on the vector V1 side will be described with V2 shown in FIG. 15 as a tangent line vector.

まず、ベクトルV2に隣接するベクトルV1が接線線分であれば、その端点をアンカーポイントとする。隣接する線分が接線線分でない場合は、図15に示す(a)のように、ベクトルV2上端点よりa|V1|となる点をアンカーポイントとする。図15に示す(b)のように|V2|/2<a|V1|となる場合は、V2ベクトルの中心点をアンカーポイントとする。   First, if the vector V1 adjacent to the vector V2 is a tangent line segment, its end point is set as an anchor point. When the adjacent line segment is not a tangent line segment, a point that is a | V1 | from the upper end point of the vector V2 is set as an anchor point as shown in FIG. When | V2 | / 2 <a | V1 | as shown in FIG. 15B, the center point of the V2 vector is set as the anchor point.

[一次近似、二次近似]
次に、ステップS1004、S1005では、ステップS1003で抽出されたアンカーポイント間をベジェ関数で曲線近似する。尚、ステップS1003で自動的に直線属性となった線分に対しては曲線近似処理を行わない。
[First order approximation, second order approximation]
Next, in steps S1004 and S1005, a curve approximation is performed between the anchor points extracted in step S1003 with a Bezier function. It should be noted that the curve approximation process is not performed on the line segment automatically having the straight line attribute in step S1003.

曲線近似処理は、具体的には2つの種類の近似処理からなる。まず、アンカーポイントの間が数個(<n1)の線分から構成されるようなオブジェクト上の細かい部位を纏めて一つの曲線で置き換える一次近似処理(ステップS1004)と、数個より多い線分から構成される線分に対して1つ或いは複数の曲線を用いて近似する二次近似処理(ステップS1005)とである。前者の手法は、線分の組み合わせに対して1つの曲線を当てはめる処理であるが、後者の手法を用いても数個の線分に対して近似を行うことも可能なため、後者の手法のみを用いてアンカーポイント間を曲線近似処理しても良い。しかしながら、前者の手法は、後者の手法に比べ、パフォーマンスの点で優れており、また少ない線分の組み合わせに対して確実に少ないポイント数で近似できるため、細かい部位については一次近似を用いることが望ましい。   More specifically, the curve approximation process includes two types of approximation processes. First, a primary approximation process (step S1004) in which fine parts on an object are arranged with several (<n1) line segments between anchor points and replaced with a single curve, and composed of more than several line segments. A secondary approximation process (step S1005) for approximating the line segment to be performed using one or a plurality of curves. The former method is a process of fitting one curve to a combination of line segments. However, even the latter method can be used to approximate several line segments, so only the latter method is used. A curve approximation process may be performed between anchor points using. However, the former method is superior to the latter method in terms of performance, and can be approximated with a small number of points for a small number of line segments. desirable.

まず、図16を参照して一次近似処理(ステップS1004)の一例について説明する。ここで図16に示す点A1、A2がそれぞれステップS1003で抽出されたアンカーポイントとする。そして、アンカーポイント間の線分L0,L1,L2に対して、C1,C2といったコントロールポイントを設けることで曲線を近似する。   First, an example of the primary approximation process (step S1004) will be described with reference to FIG. Here, points A1 and A2 shown in FIG. 16 are anchor points extracted in step S1003. The curve is approximated by providing control points such as C1 and C2 for the line segments L0, L1 and L2 between the anchor points.

尚、C1、C2の値はL0,L2との関係から求められる。また、アンカーポイント間が数個の線分により構成され、両端のアンカーポイントに対する接線成分が直交している場合は二次ベジェ曲線で置き換える。また、数個の線分がオブジェクトの大きさに対して十分大きければ、三次ベジェを用いてより精密に置き換えても良い。   The values of C1 and C2 are obtained from the relationship with L0 and L2. When the anchor points are composed of several line segments and the tangent components with respect to the anchor points at both ends are orthogonal, they are replaced with a quadratic Bezier curve. Further, if several line segments are sufficiently large with respect to the size of the object, it may be replaced more precisely by using a cubic Bezier.

ここで、一次近似処理はパターンに応じた置き換えであり、ステップS1003のアンカーポイントの抽出もパターンに応じた処理であるため、これら2つのステップをまとめて行っても良い。   Here, since the primary approximation processing is replacement according to the pattern, and the anchor point extraction in step S1003 is also processing according to the pattern, these two steps may be performed together.

次に、二次近似処理(ステップS1005)について説明する。まず、二次近似処理で使用する曲線を図17に示す。図17に示すように、曲線は三次ベジェ曲線であり、アンカーポイントP0,P3を結ぶ直線と、コントロールポイントP1,P2を結ぶ直線とは平行になるよう構成されている。このような平行制限を設けると、三次ベジェ曲線L0上の点で直線P0P3より最も離れた点Pfとの距離をDf、直線P0P3とコントロールポイントP1,P2との距離をDcとすると、次式の関係が成り立つ。   Next, the secondary approximation process (step S1005) will be described. First, a curve used in the secondary approximation process is shown in FIG. As shown in FIG. 17, the curve is a cubic Bezier curve, and is configured such that a straight line connecting anchor points P0 and P3 and a straight line connecting control points P1 and P2 are parallel to each other. When such a parallel restriction is provided, when the distance between the point Pf farthest from the straight line P0P3 on the cubic Bezier curve L0 is Df and the distance between the straight line P0P3 and the control points P1 and P2 is Dc, A relationship is established.

Dc=4/3Df …式3
尚、平行制限を用いたベジェ曲線を使用することで、近似処理を簡易に行うことが可能となる。
Dc = 4 / 3Df Equation 3
In addition, it becomes possible to perform an approximation process simply by using the Bezier curve using a parallel restriction.

以下、近似処理の概要について説明する。二次近似処理では、まず区分曲線に分割し、各区分曲線に対して曲線近似処理を行う。ここで、区分曲線とは、図17に示すように、曲線が1つの弧を描く、即ち三次曲線において2つのアンカーポイントによる直線に対して2つのコントロールポイントが同方向に構成されているような曲線である。   Hereinafter, an outline of the approximation process will be described. In the quadratic approximation process, first, the curve is divided into segment curves, and the curve approximation process is performed on each segment curve. Here, as shown in FIG. 17, the segment curve is a curve that draws one arc, that is, in the cubic curve, two control points are configured in the same direction with respect to a straight line by two anchor points. It is a curve.

区分曲線への分割では、まず図18に示す(b)のように、複数の線分の組み合わせにより、パターンマッチング的に方向ベクトルを抽出する。求められた方向ベクトルの変化を追っていき、方向ベクトル変化の正負が変化した点が分割点である。   In the division into segmented curves, first, as shown in FIG. 18B, direction vectors are extracted in a pattern matching manner by combining a plurality of line segments. The point at which the change in the direction vector changes following the change in the obtained direction vector is the dividing point.

尚、上述の分割点は、曲線近似におけるアンカーポイントとなり、アンカーポイントにおける接線ベクトルは、方向ベクトルがそのままなる。   Note that the above-mentioned division points are anchor points in curve approximation, and the direction vector is the same as the tangent vector at the anchor point.

また、図18に示す(a)は、区分曲線へ分割した例を示す図である。   Moreover, (a) shown in FIG. 18 is a figure which shows the example divided | segmented into the division | segmentation curve.

次に、図19を参照して区分曲線に対する曲線近似処理について説明する。図19では、一つの区分曲線を示しており、区分曲線上の線分郡よりN個の点を抽出したものをそれぞれp1,p2,…,pNとする。このとき、区分曲線の始点p1、終点pNはアンカーポイントである。   Next, a curve approximation process for a segment curve will be described with reference to FIG. FIG. 19 shows one segment curve, and N points extracted from the line segments on the segment curve are denoted as p1, p2,..., PN, respectively. At this time, the start point p1 and the end point pN of the segment curve are anchor points.

尚、各アンカーポイントにおける接線線分は、ステップS1005もしくは区分曲線への分割におけるアンカーポイント抽出時にそれぞれ抽出されている。   Note that the tangent line segment at each anchor point is extracted at the time of anchor point extraction in step S1005 or division into segment curves.

ここで、アンカーポイントp1、pNを結ぶ線分p1pNより最も距離の離れている曲線上の点pfを求める。二次近似処理においては、関数近似処理を簡易に行うため、コントロールポイントを結ぶ線分C1C2が線分p1pNに対して平行となるように近似する。よって、点pfと線分p1pNとの距離をLとすると、点C1、C2より線分p1pNへの距離が(4/3)×Lとなるように、C1、C2を求める。   Here, a point pf on the curve that is farthest away from the line segment p1pN connecting the anchor points p1 and pN is obtained. In the quadratic approximation process, approximation is performed so that the line segment C1C2 connecting the control points is parallel to the line segment p1pN in order to easily perform the function approximation process. Therefore, if the distance between the point pf and the line segment p1pN is L, C1 and C2 are obtained so that the distance from the point C1 and C2 to the line segment p1pN is (4/3) × L.

例えば、pfの座標値が(pfx,pfy)であった場合、p1、pNの各座標値(p1x,p1y)、(pNx,pNy)とp1における接線ベクトルp1C1(pcx,pcy)を用いると、C1の座標値(C1x,C1y)は、
C1x=K×pfx+p1x
C1y=K×pfy+p1y
K=(3p1x−4pfx)(pNy−p1y)+(pNx−p1x)(4pfy−3p1y)
+p1x(pNy−p1y)−p1y(pNx−p1x)
/(3(pNy−p1y)pcx+3(pNx−p1x)pcy)
となり、pfの座標値より一意に決定することができる。また、C2についても、C1と同様に求めることが可能である。
For example, when the coordinate value of pf is (pfx, pfy), the coordinate values (p1x, p1y), (pNx, pNy) of p1 and pN and the tangent vector p1C1 (pcx, pcy) at p1 are used. The coordinate value (C1x, C1y) of C1 is
C1x = Kxpfx + p1x
C1y = K × pfy + p1y
K = (3p1x-4pfx) (pNy-p1y) + (pNx-p1x) (4pfy-3p1y)
+ P1x (pNy-p1y) -p1y (pNx-p1x)
/ (3 (pNy−p1y) pcx + 3 (pNx−p1x) pcy)
And can be uniquely determined from the coordinate value of pf. Also, C2 can be obtained in the same manner as C1.

以上の区分曲線への曲線近似処理を全てのオブジェクト上全ての区分曲線へ行うことで、オブジェクトのアウトラインは直線とベジェ曲線により構成されるアウトラインデータへと変換される。   By performing the above curve approximation processing to the segment curve for all segment curves on all objects, the outline of the object is converted into outline data composed of straight lines and Bezier curves.

[補正処理]
以上、ステップS1001〜S1005により、オブジェクトの外形を直線及び曲線により構成されたアウトラインベクトルデータへ変換できるが、本手法では水平ベクトルと垂直ベクトルのみを使用した粗輪郭データから変換するため、また処理を効率化して行っているために、一連のステップで作成されたアウトラインベクトルデータは一種の癖をもつベクトルデータとなる。即ち、ステップS1006では、アウトラインベクトルデータを解析し、これらの癖を補正する処理を行う。
[Correction process]
As described above, the outline of the object can be converted into outline vector data composed of straight lines and curves by steps S1001 to S1005. However, in this method, since the conversion is performed from rough outline data using only the horizontal vector and the vertical vector, the processing is performed. Since it is performed with efficiency, outline vector data created in a series of steps becomes vector data having a kind of wrinkles. That is, in step S1006, outline vector data is analyzed, and processing for correcting these wrinkles is performed.

図20は、具体的にアウトラインベクトルデータの癖を表した図である。水平ベクトルと垂直ベクトルのみの粗輪郭データを用いて解析し、変換しているため、原図形における斜め直線は、曲線により表現されている。これらについては、アンカーポイント間を結ぶ直線とコントロールポイントとの距離を調べ、斜め直線か否かを判別する。ここで、斜め直線と判断された場合、アンカーポイント間のコントロールポイントを排除して斜め直線に置き換える。   FIG. 20 is a diagram specifically showing the outline of outline vector data. Since the analysis is performed using the rough contour data of only the horizontal vector and the vertical vector, the oblique straight line in the original figure is expressed by a curve. For these, the distance between the straight line connecting the anchor points and the control point is examined to determine whether the line is an oblique straight line. Here, when it is determined that the line is an oblique straight line, the control points between the anchor points are eliminated and replaced with the oblique straight line.

[アプリデータへの変換処理]
以上の通り、1頁分のイメージデータを像域分離処理303し、ベクトル化処理304した結果は図21に示すような中間データ形式のファイルとして変換される。このようなデータ形式は、ドキュメント・アナリシス・アウトプット・フォーマット(DAOF)と呼ばれる。
[Conversion to application data]
As described above, the image data for one page is subjected to the image area separation process 303, and the result of the vectorization process 304 is converted into an intermediate data format file as shown in FIG. Such a data format is called a document analysis output format (DAOF).

図21は、DAOFのデータ構造を示す図である。図21において、2101はHeaderであり、処理対象の文書画像データに関する情報が保持される。2102はレイアウト記述データ部であり、文書画像データ中の文字(TEXT)、タイトル(TITLE)、キャプション(CAPTION)、線画(LINEART)、自然画(PICTURE)、枠(FRAME)、表(TABLE)等の属性毎に認識された各ブロックの属性情報とその矩形アドレス情報を保持する。2103は文字認識記述データ部であり、TEXT、TITLE、CAPTION等のTEXTブロックを文字認識して得られる文字認識結果を保持する。2104は表記述データ部であり、TABLEブロックの構造の詳細を格納する。2105は画像記述データ部であり、PICTUREやLINEART等のブロックのイメージデータを文書画像データから切り出して保持する。   FIG. 21 shows the data structure of DAOF. In FIG. 21, reference numeral 2101 denotes a header, which holds information relating to document image data to be processed. Reference numeral 2102 denotes a layout description data section, which includes text (TEXT), title (TITLE), caption (CAPTION), line drawing (LINEART), natural image (PICTURE), frame (FRAME), table (TABLE), etc. in document image data. The attribute information of each block recognized for each attribute and the rectangular address information thereof are held. Reference numeral 2103 denotes a character recognition description data portion, which holds character recognition results obtained by character recognition of TEXT blocks such as TEXT, TITLE, and CAPTION. A table description data portion 2104 stores details of the structure of the TABLE block. Reference numeral 2105 denotes an image description data portion, which cuts out image data of blocks such as PICTURE and LINEART from document image data and holds them.

このようなDAOFは中間データとしてのみならず、それ自体がファイル化されて保存される場合もあるが、このファイルの状態では、所謂一般の文書作成アプリケーションで個々のオブジェクトを再利用することはできない。   Such a DAOF is not only used as intermediate data, but may be stored as a file itself. However, in this file state, individual objects cannot be reused in a so-called general document creation application. .

そこで、このDAOFからアプリケーションデータに変換する電子文書作成処理309について説明する。   Therefore, an electronic document creation process 309 for converting DAOF into application data will be described.

図22は、電子文書作成処理の全体の概略を示すフローチャートである。まずステップS2201において、DAOFデータの入力を行う。次に、ステップS2202において、アプリデータの元となる文書構造ツリー生成を行う。そして、ステップS2203で、文書構造ツリーに基づいてDAOF内の実データを流し込み、実際のアプリデータを生成する。   FIG. 22 is a flowchart showing an outline of the entire electronic document creation process. First, in step S2201, DAOF data is input. In step S2202, a document structure tree that is the source of application data is generated. In step S2203, actual data in the DAOF is flowed based on the document structure tree to generate actual application data.

図23は、文書構造ツリー生成処理の詳細を示すフローチャートである。また、図24は文書構造ツリーを説明するための図である。尚、全体制御の基本ルールとして、処理の流れはミクロブロック(単一ブロック)からマクロブロック(ブロックの集合体)へ移行する。尚、以下の説明で、「ブロック」はミクロブロック及びマクロブロック全体を指すものとする。   FIG. 23 is a flowchart showing details of the document structure tree generation process. FIG. 24 is a diagram for explaining the document structure tree. As a basic rule of overall control, the process flow shifts from a micro block (single block) to a macro block (an aggregate of blocks). In the following description, “block” refers to a micro block and an entire macro block.

まず、ステップS2301では、ブロック単位に縦方向の関連性に基づいて再グループ化する。スタート直後はミクロブロック単位での判定となる。ここで、関連性とは、距離が近い、ブロック幅(横方向の場合は高さ)がほぼ同一であることなどで定義することができる。また、距離、幅、高さなどの情報はDAOFを参照し、抽出する。   First, in step S2301, regrouping is performed on a block basis based on the relevance in the vertical direction. Immediately after the start, judgment is made in units of micro blocks. Here, the relevance can be defined by the fact that the distance is close and the block width (height in the horizontal direction) is substantially the same. Information such as distance, width, and height is extracted with reference to DAOF.

図24は、ページの構成とその文書構造のツリーを示す図である。図24に示す(a)は実際のページ構成、図24に示す(b)はその文書構造ツリーである。   FIG. 24 is a diagram showing a page structure and its document structure tree. 24A shows the actual page configuration, and FIG. 24B shows the document structure tree.

ステップS2301での結果、図24に示すT3、T4、T5が1つのグループV1として生成され、T6、T7が1つのグループV2として生成され、図24に示す(b)のように、グループV1とグループV2が同じ階層のグループとして生成される。そして、ステップS2302において、縦方向のセパレータの有無をチェックする。セパレータは、例えば物理的にはDAOF中でライン属性を持つオブジェクトである。また、論理的な意味としては、アプリ中で明示的にブロックを分割する要素である。ここでセパレータを検出した場合は、同じ階層で再分割する。   As a result of step S2301, T3, T4, and T5 shown in FIG. 24 are generated as one group V1, and T6 and T7 are generated as one group V2. As shown in FIG. Group V2 is generated as a group of the same hierarchy. In step S2302, the presence / absence of a vertical separator is checked. For example, the separator is physically an object having a line attribute in the DAOF. In addition, as a logical meaning, it is an element that explicitly divides a block in an application. If a separator is detected here, it is subdivided at the same level.

次に、ステップS2303において、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。ここで、縦方向のグループ長がページ高さとなっている場合、文書構造ツリー生成を終了する。また、図24に示す例の場合、セパレータもなく、グループ高さはページ高さではないのでステップS2304へ進み、ブロック単位で横方向の関連性に基づいて再グループ化する。ここもスタート直後の第一回目はミクロブロック単位で判定を行うことになる。尚、関連性、及びその判定情報の定義は、縦方向の場合と同じである。   Next, in step S2303, it is determined using the group length whether or not there are no more divisions. If the vertical group length is the page height, the document structure tree generation is terminated. In the example shown in FIG. 24, since there is no separator and the group height is not the page height, the process proceeds to step S2304, and regrouping is performed on a block basis based on the horizontal relationship. Here too, the first time immediately after the start is determined in units of microblocks. The definition of the relevance and the determination information is the same as in the vertical direction.

図24に示す例の場合、T1、T2でH1が、V1、V2でH2がV1、V2の1つ上の同じ階層のグループとして生成される。そして、ステップS2305において、横方向セパレータの有無をチェックする。図24に示す例では、S1があるので、これをツリーに登録し、H1、S1、H2という階層を生成する。   In the case of the example shown in FIG. 24, H1 is generated at T1 and T2, and H1 is generated as a group of the same hierarchy one above V1 and V2 at V1 and V2. In step S2305, the presence / absence of a horizontal separator is checked. In the example shown in FIG. 24, since there is S1, this is registered in the tree, and a hierarchy of H1, S1, and H2 is generated.

次に、ステップS2306において、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。ここで、横方向のグループ長がページ幅となっている場合、文書構造ツリー生成を終了する。また、そうでない場合はステップS2301に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。図24に示す例の場合、分割幅がページ幅になっているので、ここで終了し、最後にページ全体を表す最上位階層のV0が文書構造ツリーに付加される。   Next, in step S2306, it is determined using the group length whether or not there are no more divisions. If the horizontal group length is the page width, the document structure tree generation is terminated. If not, the process returns to step S2301, and the relevance check in the vertical direction is repeated again at the next higher level. In the case of the example shown in FIG. 24, since the division width is the page width, the process ends here, and finally V0 of the highest hierarchy representing the entire page is added to the document structure tree.

文書構造ツリーが完成した後、その情報に基づいてアプリデータを生成する(ステップS2203)。図24に示す例の場合、具体的には、以下のようになる。   After the document structure tree is completed, application data is generated based on the information (step S2203). In the case of the example shown in FIG. 24, the details are as follows.

即ち、H1は横方向に2つのブロックT1及びT2があるので、2カラムとし、T1の内部情報(DAOFを参照、文字認識結果の文章、画像など)を出力後、カラムを変え、T2の内部情報出力、その後S1を出力する。次に、H2は横方向に2つのブロックV1及びV2があるので、2カラムとして出力、V1はT3、T4、T5の順にその内部情報を出力、その後カラムを変え、V2のT6、T7の内部情報を出力する。   That is, since there are two blocks T1 and T2 in the horizontal direction, H1 has two columns, and after T1 internal information (refer to DAOF, text of character recognition result, image, etc.) is output, the column is changed and the internal of T2 Information is output, and then S1 is output. Next, since H2 has two blocks V1 and V2 in the horizontal direction, it outputs as two columns, V1 outputs its internal information in the order of T3, T4, T5, then changes the column, and inside of T6, T7 of V2 Output information.

以上の処理によりアプリデータへの変換処理を行うことができる。   The conversion processing into application data can be performed by the above processing.

次に、図面を参照しながら本発明に係る実施例2について詳細に説明する。尚、実施例1におけるベクトル化では、図10に示したように、ノイズ除去(ステップS1001)を行った後、接線線分を抽出する(ステップS1002)というステップを踏んでいる。しかし、図11に示す(a)、(b)のようなノイズの判断における解析(マッチング)処理が重たいという問題がある。また、実施例1では単純なパターンにおけるノイズ除去のみを取り扱ったが、より高画質なアウトラインを生成するためにはノイズを綺麗に除去する必要があり、ノイズ除去は非常に重要な処理である。   Next, Embodiment 2 according to the present invention will be described in detail with reference to the drawings. In the vectorization in the first embodiment, as shown in FIG. 10, after performing noise removal (step S1001), a tangential line segment is extracted (step S1002). However, there is a problem that analysis (matching) processing in noise determination as shown in FIGS. 11A and 11B is heavy. In the first embodiment, only noise removal in a simple pattern is dealt with. However, in order to generate a higher-quality outline, it is necessary to cleanly remove noise, and noise removal is a very important process.

そこで、より詳細にノイズを解析しようとした場合、より処理が重くなり、問題を深刻化させる。しかし、本手法で取り扱うノイズは一画素大の凹凸ノイズであり、それらは水平成分及び垂直成分に対するノイズと判断できる。また、図11に示す(a)、(b)のようなノイズは、水平方向及び垂直方向におけるノイズである。   Therefore, when trying to analyze noise in more detail, the processing becomes heavier and the problem becomes serious. However, the noise handled in this method is uneven noise of one pixel size, which can be determined as noise for the horizontal component and the vertical component. Further, noises such as (a) and (b) shown in FIG. 11 are noises in the horizontal direction and the vertical direction.

よって、図11に示す(a)、(b)のようなノイズを無視し、垂直方向及び水平方向の線分とみなしてしまう、線分とみなした状態で、接線線分を抽出し、接線線分上にノイズが存在した場合のみ、そのノイズを解析し、ノイズ除去を行う、という手法をとる。   Therefore, the tangent line segment is extracted in a state where it is regarded as a line segment that ignores noises such as (a) and (b) shown in FIG. Only when noise exists on the line segment, the noise is analyzed and the noise is removed.

以上の処理を行った場合は接線線分上でないノイズについてはより詳細に解析する必要もなく、また、特別除去する必要もない。   When the above processing is performed, it is not necessary to analyze the noise that is not on the tangent line segment in more detail, and it is not necessary to remove it in particular.

図25は、実施例2における粗輪郭データをアウトラインベクトルデータへと変換する処理を示すフローチャートである。   FIG. 25 is a flowchart illustrating a process of converting rough contour data into outline vector data according to the second embodiment.

まず、ステップS2501において、粗輪郭データを抽出し、その粗輪郭データに対し、接線線分抽出処理を行う。この際、除去すべきノイズであるか、ノイズでないのかわからない粗輪郭上の凹凸については、それらを垂直線分、水平線分として粗輪郭上の線分として扱う。そして、ステップS3502において、接線線分抽出後、接線線分上のノイズのみより詳細にノイズを検証し、ノイズを除去する。   First, in step S2501, rough contour data is extracted, and tangent line segment extraction processing is performed on the rough contour data. At this time, the unevenness on the rough outline, which is the noise to be removed or not known, is treated as a line segment on the rough outline as a vertical line segment and a horizontal line segment. In step S3502, after extracting the tangent line segment, the noise is verified in more detail than only the noise on the tangent line segment, and the noise is removed.

これ以降のステップS2503〜S2506での処理は、実施例1で説明した図10に示したステップS1003〜S1006での処理と同様に、アンカーポイントを抽出し、アンカーポイント間を曲線近似処理する。   In the subsequent processes in steps S2503 to S2506, the anchor points are extracted and the curve approximation process is performed between the anchor points in the same manner as the processes in steps S1003 to S1006 shown in FIG. 10 described in the first embodiment.

以上の処理により無駄なノイズ解析を省き、高速に処理することが可能である。   With the above processing, useless noise analysis can be omitted and processing can be performed at high speed.

次に、図面を参照しながら本発明に係る実施例3について詳細に説明する。尚、実施例1では、接線線分抽出において、各抽出条件に対して抽出される接線線分を同等に扱ったが、各条件により抽出される接線線分に優先順位をつけて扱っても良い。   Next, Embodiment 3 according to the present invention will be described in detail with reference to the drawings. In the first embodiment, in the tangent line segment extraction, the tangent line segments extracted for each extraction condition are treated equally, but the tangent line segments extracted according to each condition may be handled with priority. good.

ここでいう「優先順位」とは、優先順位が高い線分ほどオブジェクトの形状をより良く表す接線線分であることを意味し、優先順位が高い線分を低い線分よりも重要に扱うことを目的とする。   Here, “priority” means that the higher priority line segment is a tangent line segment that better represents the shape of the object, and the higher priority line segment is treated more importantly than the lower line segment. With the goal.

例えば、実施例1で説明した条件(1)〜(4)によって抽出される接線線分について、(1)が最も優先順位が高い条件とし、数字が上がるにつれ、優先順位を下げ、(4)が最も優先順位が低い条件とする。   For example, regarding the tangent line segment extracted by the conditions (1) to (4) described in the first embodiment, (1) is the highest priority condition, and the priority is lowered as the number increases, (4) Is the condition with the lowest priority.

図10に示したステップS1003において、アンカーポイントの抽出を行うが、優先順位の低い線分については、接線線分上の線分を残さないようにアンカーポイントを抽出する。例えば、図26に示す(a)のように、線分が構成され、V2が接線線分とする。このとき、接線線分V2が優先順位の高い線分であれば、先に述べた手法によって図26に示す(b)のようにアンカーポイントを抽出する。ここで、抽出された接線線分が優先順位の低い線分であれば、図26に示す(c)のように、元の線分を残さないでアンカーポイントを抽出する。   In step S1003 shown in FIG. 10, the anchor point is extracted. For the line segment having a low priority, the anchor point is extracted so as not to leave a line segment on the tangent line segment. For example, as shown in FIG. 26A, a line segment is formed, and V2 is a tangent line segment. At this time, if the tangent line segment V2 is a line segment with a high priority, an anchor point is extracted as shown in FIG. Here, if the extracted tangent line segment is a line segment with a low priority, an anchor point is extracted without leaving the original line segment as shown in FIG.

尚、図26に示す(C)のアンカーポイントA3の位置は、V1とV3の線分の大きさの比率から求めたものである。   Note that the position of the anchor point A3 in (C) shown in FIG. 26 is obtained from the ratio of the line segments of V1 and V3.

次に、ステップS1004において、アンカーポイント間をベジェ曲線による一次近似を行うが、優先順位が高いものと低いものから抽出されたアンカーポイントかによって、構成する曲線を変える。ここで、優先順位の高い接線線分により抽出されたアンカーポイントを優先順位の高いアンカーポイントとし、優先順位の低い接線線分より抽出されたアンカーポイントを優先順位の低いアンカーポイントとする。   Next, in step S1004, a linear approximation is performed between the anchor points using a Bezier curve, but the constituent curves are changed depending on whether the anchor points are extracted from the one with the higher priority and the one with the lower priority. Here, an anchor point extracted from a tangent line segment having a high priority is set as an anchor point having a high priority, and an anchor point extracted from a tangent line segment having a low priority is set as an anchor point having a low priority.

例えば、両端が優先順位の高いアンカーポイントであれば、図27に示す(a)のように、三次のベジェ曲線によって近似する。また、一方が優先順位の高いアンカーポイントであり、もう一方が優先順位の低いアンカーポイントであれば、二次ベジェ曲線によって図27に示す(b)のように近似する。更に、両端が優先順位の低いアンカーポイントであれば、図27に示す(c)のように直線で近似してしまう。   For example, if both ends have high priority anchor points, they are approximated by a cubic Bezier curve as shown in FIG. If one is an anchor point with a high priority and the other is an anchor point with a low priority, approximation is performed as shown in FIG. 27B by a secondary Bezier curve. Furthermore, if both ends are anchor points with low priority, they are approximated by a straight line as shown in FIG.

尚、ベジェ近似では、ポイント間を構成するV1,V2,V1’,V2’の線分長の比率よりコントロールポイント位置を決定している。   In the Bezier approximation, the control point position is determined from the ratio of the line segment lengths of V1, V2, V1 ', and V2' constituting the points.

以上のように、輪郭線から得られる接線線分の推定という解析をより詳細に行い、その結果に対して各処理を変化させることにより、画質を保ったまま、無駄な部分についてはポイント数を減らすことが可能となる。   As described above, the analysis of estimating the tangent line segment obtained from the contour line is performed in more detail, and by changing each processing for the result, the number of points is reduced for useless parts while maintaining the image quality. It becomes possible to reduce.

次に、図面を参照しながら本発明に係る実施例4について詳細に説明する。実施例1では、二次近似処理として、区分曲線上の一点を用いることで近似する簡易な関数近時処理について説明した。しかし、実施例1の簡易な手法では、区分曲線への曲線分割の精度によって区分曲線の点列に対し、近似した曲線が極端に離れることもある。そのような場合、関数近似が良好に行われているか否かを判定し、元の曲線に対して誤差が大きければ、再関数近似化することで関数近似処理の精度を向上させることも可能である。   Next, Embodiment 4 according to the present invention will be described in detail with reference to the drawings. In the first embodiment, as the quadratic approximation processing, the simple function near-time processing that approximates by using one point on the piecewise curve has been described. However, in the simple method of the first embodiment, the approximated curve may be extremely separated from the point sequence of the segment curve depending on the accuracy of the curve division into segment curves. In such a case, it is possible to improve the accuracy of the function approximation process by determining whether the function approximation is performed well and re-function approximation if the error is large with respect to the original curve. is there.

尚、判定手法も簡易な手法である必要があるが、その判定手法について説明する。   Although the determination method needs to be a simple method, the determination method will be described.

図28は、実施例4における曲線分割の精度判定を説明するための図である。図28に示すように、点線で表す区分曲線の点列Ldに対して特徴点Pdを用いて関数近似化すると、曲線L0’が求まる。ここで、曲線L0’上の点Pfと特徴点Pdとの距離が一致していれば、曲線近似は良好に行われていることを示し、PdとPfとの距離が大きければ、近似は失敗し、本来の曲線を描いていない可能性が高いことを示す。   FIG. 28 is a diagram for explaining accuracy determination of curve division in the fourth embodiment. As shown in FIG. 28, when a function approximation is performed using a feature point Pd for a point sequence Ld of a segmented curve represented by a dotted line, a curve L0 'is obtained. Here, if the distance between the point Pf on the curve L0 ′ and the feature point Pd coincide with each other, it indicates that the curve approximation is performed well, and if the distance between Pd and Pf is large, the approximation fails. However, it is highly possible that the original curve is not drawn.

ここで、曲線近似が失敗した場合、例えば点Pdと点Pfとの距離が一定値以上の場合は、点Plを新たなアンカーポイントとし、P0〜PdとPd〜P3の2つの区分曲線に分割し、それぞれの区分曲線に対して上述した関数近似処理を行う。このような失敗した場合の分割処理は、繰り返し行うことも可能であり、閾値の設定次第では精密に曲線近似処理を行うことができる。   Here, when the curve approximation fails, for example, when the distance between the point Pd and the point Pf is equal to or greater than a certain value, the point Pl is set as a new anchor point and is divided into two segmented curves P0 to Pd and Pd to P3. Then, the function approximation process described above is performed on each segmented curve. Such a division process in the case of failure can be repeated, and the curve approximation process can be precisely performed depending on the setting of the threshold value.

以上説明した実施例によれば、2値画像データより垂直ベクトル及び水平ベクトルのみからなる粗輪郭線を抽出し、その粗輪郭線を用いて曲線を解析することで、処理の高速化と高画質なアウトライン作成が可能となる。具体的には、粗輪郭線より原稿オブジェクトの0°/90°の接線を推定し、推定された接線間を曲線近似する。   According to the embodiment described above, a rough contour line consisting only of a vertical vector and a horizontal vector is extracted from binary image data, and a curve is analyzed using the rough contour line, thereby speeding up processing and achieving high image quality. A simple outline can be created. Specifically, the tangent line of 0 ° / 90 ° of the original object is estimated from the rough contour line, and a curve approximation is performed between the estimated tangent lines.

尚、曲線近似は細かい部分に適用する第1の近似と、残りの大きな弧を描く曲線部分に対して近似する第2の近似の2つの近似処理からなる。   The curve approximation includes two approximation processes: a first approximation applied to a fine portion and a second approximation for approximating the remaining curved portion that draws a large arc.

また、処理が重くなるという第一の課題に対しては、
本実施例では、ラスター画像より得られる粗輪郭データをそのまま使用しており、扱うデータは水平ベクトルと垂直ベクトルである。解析はノイズ判別、特徴量抽出、局所的な曲線近似の工程を含み、解析手法としてパターンマッチングを採用し、水平ベクトル及び垂直ベクトルのみに対するパターンマッチングは非常に効率良く行うことが可能となる。即ち、直線近似処理という繰り返し演算、複雑な処理を必要としない、また解析に際し、一旦ショートベクトルに変換する必要がないという点で、パフォーマンスの点においても非常に有効である。
In addition, for the first problem that processing becomes heavy,
In this embodiment, rough contour data obtained from a raster image is used as it is, and the data to be handled are a horizontal vector and a vertical vector. The analysis includes steps of noise discrimination, feature amount extraction, and local curve approximation, and pattern matching is adopted as an analysis method, and pattern matching only for horizontal vectors and vertical vectors can be performed very efficiently. That is, it is very effective in terms of performance in that it does not require repetitive calculation such as linear approximation processing, complicated processing, and it is not necessary to convert it into a short vector once for analysis.

また、曲線近似処理では、平行制限を加えたベジェ曲線を使用して入るため、アンカーポイント間より特徴点を一点抽出することで一意に曲線が決定できる。   Further, since the curve approximation process uses a Bezier curve to which parallel restriction is added, a curve can be uniquely determined by extracting one feature point from between anchor points.

尚、その特徴点は、曲線上のアンカーポイント間より最も離れた点として抽出しているため、誤差を求めて最適化するような繰り返し演算は必要としない。   Note that the feature points are extracted as points that are farthest from the anchor points on the curve, and thus it is not necessary to perform an iterative operation for obtaining an error and optimizing it.

よって、この点においても、パフォーマンスの点で非常に有効である。   Therefore, this point is also very effective in terms of performance.

以上、本実施例では、粗輪郭へのパターンマッチングを用いた解析、局所的な曲線近似、かつ平行制限を用いた曲線近似処理と、一連の処理において従来手法に比して、大幅にパフォーマンスを向上させることが可能となる。   As described above, in this embodiment, the analysis using the pattern matching to the rough contour, the local curve approximation, and the curve approximation process using the parallel restriction, and the series of processes significantly improve performance compared to the conventional method. It becomes possible to improve.

一方、簡易な手法では画質が劣化するという課題2に対しては、
本実施例では、一つの輪郭線について、アウトラインベクトル化する際、画質の劣化が目立つようなオブジェクト上の細かく変化する部位について、第1の近似処理でパターンマッチングによる曲線近似を行う。尚、細かな部位に対するパターンマッチングでは接線線分等の解析結果に応じて変更しているため、少ないデータ量で表現された綺麗な曲線を得ることが可能である。
On the other hand, for the problem 2 that the image quality deteriorates with a simple method,
In this embodiment, when a contour line is converted into an outline vector, curve approximation by pattern matching is performed in the first approximation processing for a portion that changes finely on an object where image quality degradation is conspicuous. It should be noted that since the pattern matching for a fine part is changed according to the analysis result of the tangent line segment or the like, it is possible to obtain a beautiful curve expressed with a small amount of data.

また、本実施例は粗輪郭データをそのまま扱う簡易な手法であるため、場合によっては少々癖も出てくる。それらのパターン化されている癖については、最後に補正処理を行うことで、修正する。尚、補正処理では、既に直線と曲線によって構成されたアウトラインデータ(データ量が大幅に減少しているデータ)に対して行うため、特別パフォーマンスへ影響を与えるような処理ではない。   In addition, since the present embodiment is a simple method for handling the rough contour data as it is, there are some cases in which it may occur. These patterned wrinkles are corrected by performing correction processing at the end. Since the correction process is performed on outline data (data whose data amount has been greatly reduced) already configured by straight lines and curves, it is not a process that affects special performance.

最後に、オブジェクトの大きさに対する点については、
本実施例では、ノイズ、形状解析および局所的な近似にパターンマッチングを使用しており、オブジェクトの大きさ及び輪郭線の大きさに応じてパターンマッチングを変更しているため、細かなオブジェクトから大きなオブジェクトまで柔軟に対応することが可能となる。ここでパターンマッチングで変更するパラメータは、粗輪郭線分の長さであるため、各パターンマッチングに対し、パラメータを柔軟に変更することが可能であり、小さなオブジェクト及び輪郭線から、大きなオブジェクト及び輪郭線に対し、柔軟に対応することが可能となる。
Finally, with respect to the size of the object,
In this embodiment, pattern matching is used for noise, shape analysis, and local approximation, and pattern matching is changed according to the size of the object and the size of the contour line. It is possible to flexibly deal with objects. Here, since the parameter to be changed by pattern matching is the length of the rough outline, the parameter can be flexibly changed for each pattern matching. From a small object and an outline, a large object and an outline can be changed. It becomes possible to respond flexibly to the line.

尚、本発明は複数の機器(例えば、ホストコンピュータ,インターフェース機器,リーダ,プリンタなど)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用しても良い。具体的には、複合機や、複写機や、ファクシミリ装置で、高品位に変倍するために、スキャンした画像データを入力し(公衆回線やネットワークから画像データを入力しても良い)、画像データから輪郭ベクトルを抽出し、抽出した輪郭ベクトルを変倍し、変倍された輪郭ベクトルから画像データを生成し、生成した画像データをプリントする際の輪郭ベクトル抽出時に適用できる。   Even if the present invention is applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), it is applied to an apparatus (for example, a copier, a facsimile machine, etc.) composed of a single device. It may be applied. Specifically, the scanned image data may be input (image data may be input from a public line or a network) in order to change the image quality with a multifunction device, copier, or facsimile machine. It can be applied when extracting a contour vector from data, scaling the extracted contour vector, generating image data from the scaled contour vector, and printing the generated image data.

また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。   Another object of the present invention is to supply a recording medium in which a program code of software realizing the functions of the above-described embodiments is recorded to a system or apparatus, and the computer (CPU or MPU) of the system or apparatus stores the recording medium in the recording medium. Needless to say, this can also be achieved by reading and executing the programmed program code.

この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。   In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium storing the program code constitutes the present invention.

このプログラムコードを供給するための記録媒体としては、例えばフロッピー(登録商標)ディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。   As a recording medium for supplying the program code, for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like is used. be able to.

また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, after the program code read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

実施例1における文書処理装置の概観を示す図である。1 is a diagram showing an overview of a document processing apparatus in Embodiment 1. FIG. 実施例1における文書処理装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a document processing apparatus in Embodiment 1. FIG. 文書処理装置における文書の電子化処理の概要を示す図である。It is a figure which shows the outline | summary of the digitization process of the document in a document processing apparatus. 像域分離処理を説明するための図である。It is a figure for demonstrating an image area separation process. 像域分離処理303で分離された各ブロックに対するブロック情報と入力ファイル情報を示す図である。It is a figure which shows the block information and input file information with respect to each block isolate | separated by the image area separation process 303. FIG. アウトライン作成部306、307の処理を示すフローチャートである。4 is a flowchart illustrating processing of outline creation units 306 and 307. 粗輪郭データ及びアウトラインベクトルデータの一例を示す図である。It is a figure which shows an example of rough outline data and outline vector data. ラスター画像データの1画素を示す図である。It is a figure which shows 1 pixel of raster image data. 粗輪郭データの構成の一例を示す図である。It is a figure which shows an example of a structure of rough outline data. 実施例1における粗輪郭データをアウトラインベクトルデータへと変換する処理を示すフローチャートである。It is a flowchart which shows the process which converts the rough outline data in Example 1 into outline vector data. 除去するノイズの一例を示す図である。It is a figure which shows an example of the noise to remove. ノイズに似た粗輪郭データの一例を示す図である。It is a figure which shows an example of the rough outline data similar to noise. 粗輪郭データより接線線分の抽出を説明するための図である。It is a figure for demonstrating extraction of a tangent line segment from rough outline data. 粗輪郭データをアウトラインデータへと変換する際に使用される三次ベジェ曲線、二次ベジェ曲線、直線を示す図である。It is a figure which shows the cubic Bezier curve, secondary Bezier curve, and straight line which are used when converting rough outline data into outline data. アンカーポイントの抽出方法の一例を示す図である。It is a figure which shows an example of the extraction method of an anchor point. 一次近似処理の一例を説明するための図である。It is a figure for demonstrating an example of a primary approximation process. 二次近似処理で使用する曲線を示す図である。It is a figure which shows the curve used by a secondary approximation process. 区分曲線へ分割した例とパターンマッチング的に方向ベクトルを抽出する例を示す図である。It is a figure which shows the example divided | segmented into the division | segmentation curve, and the example which extracts a direction vector by pattern matching. 区分曲線に対する曲線近似処理を説明するための図である。It is a figure for demonstrating the curve approximation process with respect to a division curve. 具体的にアウトラインベクトルデータの癖を表した図である。It is a figure showing the outline of outline vector data concretely. ドキュメント・アナリシス・アウトプット・フォーマット(DAOF)のデータ構造を示す図である。It is a figure which shows the data structure of a document analysis output format (DAOF). 電子文書作成処理の全体の概略を示すフローチャートである。It is a flowchart which shows the outline of the whole electronic document preparation process. 文書構造ツリー生成処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of a document structure tree production | generation process. ページの構成とその文書構造のツリーを示す図である。It is a figure which shows the structure of a page, and the tree of the document structure. 実施例2における粗輪郭データをアウトラインベクトルデータへと変換する処理を示すフローチャートである。It is a flowchart which shows the process which converts the rough outline data in Example 2 into outline vector data. 実施例3におけるアンカーポイントの抽出を説明するための図である。It is a figure for demonstrating extraction of the anchor point in Example 3. FIG. 実施例3における曲線近似を説明するための図である。FIG. 10 is a diagram for explaining curve approximation in the third embodiment. 実施例4における曲線分割の精度判定を説明するための図である。It is a figure for demonstrating the accuracy determination of the curve division | segmentation in Example 4. FIG.

Claims (17)

画像データを入力する入力工程と、
入力された画像データを2値化する2値化工程と、
2値化された画像データから画像の輪郭を抽出する輪郭抽出工程と、
抽出された輪郭より水平及び垂直方向の接点を推定する接点推定工程と、
推定された接点に対して隣接する接点間の輪郭を所定の関数で近似する関数近似工程とを有することを特徴とする関数化処理方法。
An input process for inputting image data;
A binarization step for binarizing the input image data;
A contour extraction step of extracting the contour of the image from the binarized image data;
A contact estimation step for estimating horizontal and vertical contact points from the extracted contour;
And a function approximation step of approximating a contour between adjacent contacts to the estimated contact by a predetermined function.
前記輪郭抽出工程では、前記画像の1画素を4点からなる正方形として扱い、該周囲を追跡するように輪郭線を抽出することで、垂直及び水平ベクトルからなる前記画像の輪郭を抽出することを特徴とする請求項1記載の関数化処理方法。   In the contour extraction step, one pixel of the image is treated as a square consisting of four points, and a contour line is extracted so as to track the periphery, thereby extracting the contour of the image composed of vertical and horizontal vectors. The functionalization processing method according to claim 1, wherein: 前記接点推定工程では、前記水平及び垂直方向の直線パターンをパターンマッチングによって検出し、検出された直線パターンと近傍の輪郭画素との相対位置関係によって推定することを特徴とする請求項1記載の関数化処理方法。   2. The function according to claim 1, wherein in the contact estimation step, the horizontal and vertical straight line patterns are detected by pattern matching and are estimated based on a relative positional relationship between the detected straight line pattern and neighboring contour pixels. Processing method. 前記関数近似工程は、
前記接点間の輪郭線分数が予め定めた閾値よりも小さい接点間の輪郭線分郡に対して、接点間の相対位置関係により接点間を一つの二次ベジェ曲線、一つの三次ベジェ曲線、或いは直線をあてはめる第1の近似処理と、
前記接点間の輪郭線分数が予め定めた閾値よりも大きい接点間の輪郭線分郡に対して、一つ或いは複数の三次ベジェ曲線により曲線をあてはめる第2の近似処理とを有することを特徴とする請求項1記載の関数化処理方法。
The function approximation step includes
For the contour line segment between the contacts where the number of contour lines between the contacts is smaller than a predetermined threshold, one secondary Bezier curve, one tertiary Bezier curve between the contacts according to the relative positional relationship between the contacts, or A first approximation process for fitting a straight line;
And a second approximation process for fitting a curve with one or a plurality of cubic Bezier curves to a contour segment group between the contact points where the contour line segment number between the contact points is larger than a predetermined threshold value. The functionalization processing method according to claim 1.
前記第1の近似処理は、前記接点推定工程における水平及び垂直方向の直線パターンのパターン推定結果に応じて、二次ベジェ曲線、三次ベジェ曲線、或いは直線の何れか1つをあてはめて近似することを特徴とする請求項4記載の関数化処理方法。   The first approximation processing is performed by fitting one of a quadratic Bezier curve, a cubic Bezier curve, and a straight line according to the pattern estimation result of the horizontal and vertical straight line patterns in the contact estimation step. The functionalization processing method according to claim 4. 前記第2の近似処理は、輪郭線分郡に対して1つ或いは複数の三次ベジェ曲線をあてはめる処理で、該三次ベジェ曲線はアンカーポイント間を結ぶ直線とコントロールポイント間を結ぶ直線とが平行であることを特徴とする請求項4記載の関数化処理方法。   In the second approximation process, one or a plurality of cubic Bezier curves are applied to the contour line group, and the cubic Bezier curves are parallel to a straight line connecting anchor points and a straight line connecting control points. 5. The functionalization processing method according to claim 4, wherein the functionalization processing method is provided. 曲線を構成する点列に対して三次ベジェ曲線をあてはめる関数近似処理装置であって、
点列より一つの弧を描く点列を抽出する曲線分割手段と、
抽出された点列に対して、三次ベジェ曲線の2つのアンカーポイントを結ぶ直線と2つのコントロールポイントを結ぶ直線が平行となるように三次ベジェ曲線をあてはめる近似手段とを有することを特徴とする関数近似処理装置。
A function approximation processing device that applies a cubic Bezier curve to a sequence of points constituting a curve,
Curve dividing means for extracting a point sequence that draws one arc from the point sequence;
A function having approximation means for fitting a cubic Bezier curve so that a straight line connecting two anchor points of the cubic Bezier curve and a straight line connecting two control points are parallel to the extracted point sequence Approximate processing device.
前記曲線分割手段は、分割点における曲線の接線成分を抽出する手段を有し、
前記近似手段は、前記曲線分割手段により抽出された分割点列に対して点列中の特徴点1点を抽出する特徴点抽出手段を有し、分割曲線上の特徴点1点と分割点2点と、各分割点における接線成分とを用いて三次ベジェ曲線で近似することを特徴とする請求項7記載の関数近似処理装置。
The curve dividing means includes means for extracting a tangential component of a curve at a dividing point;
The approximation means includes feature point extraction means for extracting one feature point in the point sequence from the division point sequence extracted by the curve division means, and one feature point on the division curve and division point 2 The function approximation processing device according to claim 7, wherein the function is approximated by a cubic Bezier curve using points and tangent components at each division point.
前記特徴点抽出手段は、分割曲線上の点列よりアンカーポイント間を結ぶ直線より最も離れた点を抽出することを特徴とする請求項8記載の関数近似処理装置。   9. The function approximation processing apparatus according to claim 8, wherein the feature point extraction unit extracts a point farthest from a straight line connecting anchor points from a point sequence on a dividing curve. 前記近似手段は、近似曲線上の特徴点を抽出する手段を有し、該特徴点と前記特徴点抽出手段より得られる特徴点とを比較し、誤差が大きければ前記特徴点抽出手段より得られる特徴点を新たなアンカーポイントとし、曲線分割する手段とを有することを特徴とする請求項7記載の関数近似処理装置。   The approximating means has means for extracting feature points on the approximate curve. The feature points are compared with the feature points obtained from the feature point extracting means, and if the error is large, the feature points are obtained from the feature point extracting means. 8. The function approximation processing apparatus according to claim 7, further comprising means for dividing the curve using the feature point as a new anchor point. 画像データを入力する入力工程と、
入力された画像データを2値化する2値化工程と、
2値化された画像データから画像の輪郭を抽出する輪郭抽出工程と、
抽出された輪郭に基づき、閉曲線で囲まれる領域を検出し、その領域の大きさを求める工程と、
前記領域毎に輪郭線を関数化する際に、前記関数化のためのパラメータを領域の大きさに従って定義する工程と、
定義されたパラメータに応じて対象領域の輪郭画素を関数化する工程とを有することを特徴とする関数化処理方法。
An input process for inputting image data;
A binarization step for binarizing the input image data;
A contour extraction step of extracting the contour of the image from the binarized image data;
Detecting a region surrounded by a closed curve based on the extracted contour, and determining the size of the region;
Defining a parameter for functionalization according to the size of a region when the contour line is functionalized for each region;
And a step of functionalizing the contour pixels of the target region in accordance with the defined parameters.
画像データを入力し、入力された画像データを2値化して2値化された画像の輪郭画素を生成し、生成された輪郭画素の形状を所定の関数で近似し、近似した結果を予め決められた形状記述言語形式として出力することを特徴とする画像処理装置。   Input image data, binarize the input image data to generate binarized image contour pixels, approximate the shape of the generated contour pixels with a predetermined function, and determine the approximation result in advance An image processing apparatus that outputs the data as a shape description language format. ラスター画像データを像域分離し文字領域を抽出し、領域内の文字を文字毎に切り出す手段と、
切り出した文字を直線と曲線よりなるアウトラインへ変換するアウトライン変換手段と、
近似した結果を予め決められた形状記述言語形式として出力する手段とを有することを特徴とする画像処理装置。
Means for separating raster image data into image areas, extracting character areas, and cutting out characters in the areas for each character;
An outline conversion means for converting the cut-out character into an outline composed of a straight line and a curve;
An image processing apparatus comprising: means for outputting a result of approximation as a predetermined shape description language format.
前記文字切り出し手段は、文字のサイズ情報を検出する文字サイズ検出手段を有し、
前記文字サイズ検出手段により検出される文字のサイズ情報に応じて前記アウトライン変換手段を変更、或いはアウトラインへ変換するパラメータを変更する手段を有することを特徴とする請求項13記載の画像処理装置。
The character cutout means includes character size detection means for detecting character size information,
14. The image processing apparatus according to claim 13, further comprising means for changing the outline conversion means or changing a parameter for conversion to an outline in accordance with character size information detected by the character size detection means.
ラスター画像データを像域分離して文字領域を抽出する文字領域抽出手段と、
前記文字領域抽出手段によって抽出された文字領域内文字の文字サイズ情報を抽出する手段と、
前記文字領域内の文字オブジェクトを直線と曲線よりなるアウトラインへ変換する手段と、
近似した結果を予め決められた形状記述言語形式として出力する手段とを有し、
前記文字サイズ情報抽出手段によって抽出された文字サイズ情報に応じて前記文字オブジェクトのアウトライン変換パラメータを変更することを特徴とする画像処理装置。
Character area extraction means for separating raster image data into image areas and extracting character areas;
Means for extracting character size information of the characters in the character area extracted by the character area extraction means;
Means for converting a character object in the character region into an outline composed of a straight line and a curve;
Means for outputting the approximated result as a predetermined shape description language format,
An image processing apparatus, wherein an outline conversion parameter of the character object is changed according to the character size information extracted by the character size information extracting means.
請求項1又は請求項11記載の関数化処理方法の各手順をコンピュータに実行させるためのプログラム。   The program for making a computer perform each procedure of the functionalization processing method of Claim 1 or Claim 11. 前記関数近似工程は、
前記接点間の輪郭線分数が予め定めた閾値よりも小さい接点間の輪郭線分郡に対して、接点間の相対位置関係により近似処理を行うことを特徴とする請求項1記載の関数化処理方法。
The function approximation step includes
2. The functionalization process according to claim 1, wherein an approximation process is performed on a contour line group between contact points whose contact line segment number is smaller than a predetermined threshold value, based on a relative positional relationship between the contact points. Method.
JP2004161571A 2004-04-26 2004-05-31 Functionalization processing method and functionalization processing apparatus Expired - Fee Related JP4371911B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004161571A JP4371911B2 (en) 2004-05-31 2004-05-31 Functionalization processing method and functionalization processing apparatus
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
JP2004161571A JP4371911B2 (en) 2004-05-31 2004-05-31 Functionalization processing method and functionalization processing apparatus

Publications (3)

Publication Number Publication Date
JP2005346137A true JP2005346137A (en) 2005-12-15
JP2005346137A5 JP2005346137A5 (en) 2007-07-19
JP4371911B2 JP4371911B2 (en) 2009-11-25

Family

ID=35498495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004161571A Expired - Fee Related JP4371911B2 (en) 2004-04-26 2004-05-31 Functionalization processing method and functionalization processing apparatus

Country Status (1)

Country Link
JP (1) JP4371911B2 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272601A (en) * 2006-03-31 2007-10-18 Canon Inc Image processor, control method and computer program
JP2009026079A (en) * 2007-07-19 2009-02-05 Canon Inc Image processing device, image processing method, and image processing program
JP2009071626A (en) * 2007-09-13 2009-04-02 Canon Inc Image processor, image processing method, image processing program, and recording medium
JP2009271700A (en) * 2008-05-07 2009-11-19 Canon Inc Image processing apparatus and image processing method
JP2009296150A (en) * 2008-06-03 2009-12-17 Konica Minolta Business Technologies Inc Image processor, image conversion method and computer program
JP2009302758A (en) * 2008-06-11 2009-12-24 Konica Minolta Business Technologies Inc Image processing device, image conversion method, and computer program
EP2270714A2 (en) 2009-07-01 2011-01-05 Canon Kabushiki Kaisha Image processing device and image processing method
US7889938B2 (en) 2006-03-31 2011-02-15 Canon Kabushiki Kaisha Method and apparatus for processing line drawings in images
EP2343670A2 (en) 2010-01-06 2011-07-13 Canon Kabushiki Kaisha Apparatus and method for digitizing documents
US8041122B2 (en) 2006-12-12 2011-10-18 Canon Kabushiki Kaisha Image processing apparatus, method for controlling image processing apparatus, and storage medium storing related program
JP2012053691A (en) * 2010-09-01 2012-03-15 Canon Inc Image processing method, image processor, and program
US8150185B2 (en) 2007-11-07 2012-04-03 Canon Kabushiki Kaisha Image processing for generating a thin line binary image and extracting vectors
US8331736B2 (en) 2008-06-04 2012-12-11 Canon Kabushiki Kaisha Image processing device and method therefor
KR20130054899A (en) * 2011-11-17 2013-05-27 삼성전자주식회사 Raster image conversion apparatus, image scanning apparatus, method for conversion of raster image, and computer-readable recording medium
US8532385B2 (en) 2009-06-24 2013-09-10 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US8553294B2 (en) 2008-09-16 2013-10-08 Konica Minolta Business Technologies, Inc. Outlining method for properly representing curved line and straight line, and image compression method using the same
US8571359B2 (en) 2008-06-30 2013-10-29 Canon Kabushiki Kaisha Image processing device, method and storage medium for storing and displaying an electronic document
US8611658B2 (en) 2008-08-26 2013-12-17 Canon Kabushiki Kaisha Image processing apparatus and image processing method
WO2020225887A1 (en) * 2019-05-08 2020-11-12 日本電信電話株式会社 Point cloud analysis device, estimation device, point cloud analysis method, and program
WO2020225890A1 (en) * 2019-05-08 2020-11-12 日本電信電話株式会社 Point group analysis device, method, and program

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272601A (en) * 2006-03-31 2007-10-18 Canon Inc Image processor, control method and computer program
US8050499B2 (en) 2006-03-31 2011-11-01 Canon Kabushiki Kaisha Image-processing apparatus, image-processing method, and computer program used therewith
US7889938B2 (en) 2006-03-31 2011-02-15 Canon Kabushiki Kaisha Method and apparatus for processing line drawings in images
US8041122B2 (en) 2006-12-12 2011-10-18 Canon Kabushiki Kaisha Image processing apparatus, method for controlling image processing apparatus, and storage medium storing related program
JP2009026079A (en) * 2007-07-19 2009-02-05 Canon Inc Image processing device, image processing method, and image processing program
JP2009071626A (en) * 2007-09-13 2009-04-02 Canon Inc Image processor, image processing method, image processing program, and recording medium
US8326039B2 (en) 2007-09-13 2012-12-04 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and recording medium
US8150185B2 (en) 2007-11-07 2012-04-03 Canon Kabushiki Kaisha Image processing for generating a thin line binary image and extracting vectors
JP2009271700A (en) * 2008-05-07 2009-11-19 Canon Inc Image processing apparatus and image processing method
US8335389B2 (en) 2008-05-07 2012-12-18 Canon Kabushiki Kaisha Image processing device and method for benzier approximation accuracy within a pre-defined data amount or predetermined processing time
JP4582200B2 (en) * 2008-06-03 2010-11-17 コニカミノルタビジネステクノロジーズ株式会社 Image processing apparatus, image conversion method, and computer program
US8699809B2 (en) 2008-06-03 2014-04-15 Konica Minolta Business Technologies, Inc. Image processing apparatus, image conversion method, and recording medium
JP2009296150A (en) * 2008-06-03 2009-12-17 Konica Minolta Business Technologies Inc Image processor, image conversion method and computer program
US8331736B2 (en) 2008-06-04 2012-12-11 Canon Kabushiki Kaisha Image processing device and method therefor
JP4582204B2 (en) * 2008-06-11 2010-11-17 コニカミノルタビジネステクノロジーズ株式会社 Image processing apparatus, image conversion method, and computer program
JP2009302758A (en) * 2008-06-11 2009-12-24 Konica Minolta Business Technologies Inc Image processing device, image conversion method, and computer program
US8670623B2 (en) 2008-06-11 2014-03-11 Konica Minolta Business Technologies, Inc. Image processing apparatus, image conversion method, and computer-readable storage medium for computer program based on calculated degree of complexity
US8571359B2 (en) 2008-06-30 2013-10-29 Canon Kabushiki Kaisha Image processing device, method and storage medium for storing and displaying an electronic document
US8965125B2 (en) 2008-06-30 2015-02-24 Canon Kabushiki Kaisha Image processing device, method and storage medium for storing and displaying an electronic document
US8611658B2 (en) 2008-08-26 2013-12-17 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US8553294B2 (en) 2008-09-16 2013-10-08 Konica Minolta Business Technologies, Inc. Outlining method for properly representing curved line and straight line, and image compression method using the same
US8532385B2 (en) 2009-06-24 2013-09-10 Canon Kabushiki Kaisha Image processing apparatus and image processing method
JP2011013897A (en) * 2009-07-01 2011-01-20 Canon Inc Image processing device, image processing method and program
CN101944179A (en) * 2009-07-01 2011-01-12 佳能株式会社 Image processing apparatus and image processing method
EP2270714A2 (en) 2009-07-01 2011-01-05 Canon Kabushiki Kaisha Image processing device and image processing method
US8428356B2 (en) 2009-07-01 2013-04-23 Canon Kabushiki Kaisha Image processing device and image processing method for generating electronic document with a table line determination portion
EP2343670A2 (en) 2010-01-06 2011-07-13 Canon Kabushiki Kaisha Apparatus and method for digitizing documents
US8718364B2 (en) 2010-01-06 2014-05-06 Canon Kabushiki Kaisha Apparatus and method for digitizing documents with extracted region data
JP2012053691A (en) * 2010-09-01 2012-03-15 Canon Inc Image processing method, image processor, and program
KR20130054899A (en) * 2011-11-17 2013-05-27 삼성전자주식회사 Raster image conversion apparatus, image scanning apparatus, method for conversion of raster image, and computer-readable recording medium
KR101869302B1 (en) * 2011-11-17 2018-06-20 에이치피프린팅코리아 주식회사 Raster image conversion apparatus, image scanning apparatus, method for conversion of raster image, and computer-readable recording medium
WO2020225887A1 (en) * 2019-05-08 2020-11-12 日本電信電話株式会社 Point cloud analysis device, estimation device, point cloud analysis method, and program
JPWO2020225887A1 (en) * 2019-05-08 2020-11-12
WO2020225890A1 (en) * 2019-05-08 2020-11-12 日本電信電話株式会社 Point group analysis device, method, and program
JP7235105B2 (en) 2019-05-08 2023-03-08 日本電信電話株式会社 Point group analysis device, estimation device, point group analysis method, and program
US11922650B2 (en) 2019-05-08 2024-03-05 Nippon Telegraph And Telephone Corporation Point cloud analysis device, estimation device, point cloud analysis method, and program

Also Published As

Publication number Publication date
JP4371911B2 (en) 2009-11-25

Similar Documents

Publication Publication Date Title
JP4371911B2 (en) Functionalization processing method and functionalization processing apparatus
US7873218B2 (en) Function approximation processing method and image processing method
US6993185B2 (en) Method of texture-based color document segmentation
US8200012B2 (en) Image determination apparatus, image search apparatus and computer readable recording medium storing an image search program
JP4646797B2 (en) Image processing apparatus, control method therefor, and program
JP5361574B2 (en) Image processing apparatus, image processing method, and program
CN108146093B (en) Method for removing bill seal
CN105528614B (en) A kind of recognition methods of the cartoon image space of a whole page and automatic recognition system
JP3950777B2 (en) Image processing method, image processing apparatus, and image processing program
JP2006253892A (en) Method and device for treating image
JP5137759B2 (en) Image processing device
JP2001297303A (en) Method and device for recognizing document image and computer readable recording medium
JP2002190957A (en) Document processing equipment and method therefor
JPH11345339A (en) Method, device and system for picture segmentation, and computer-readable memory
JP2010056689A (en) Image processor and image processing method
JP4391704B2 (en) Image processing apparatus and method for generating binary image from multi-valued image
JP2011248702A (en) Image processing device, image processing method, image processing program, and program storage medium
JP5049922B2 (en) Image processing apparatus and image processing method
JP5335581B2 (en) Image processing apparatus, image processing method, and program
JP2006345314A (en) Image processing apparatus and image processing method
JP4049560B2 (en) Halftone dot removal method and system
Strouthopoulos et al. Identification of text-only areas in mixed-type documents
Roy et al. Multi-oriented English text line extraction using background and foreground information
JP5159588B2 (en) Image processing apparatus, image processing method, and computer program
JP2006106971A (en) Chart vector data generating method and document processor

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070531

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070531

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070531

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: 20090525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090724

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: 20090831

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: 20090901

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

Free format text: PAYMENT UNTIL: 20120911

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4371911

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120911

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130911

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees