JP2005310070A - Device and method of information processing - Google Patents

Device and method of information processing Download PDF

Info

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

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To speed up approximation of contours of a binary image extracted from inputted electronic data by a Bezier curve. <P>SOLUTION: A contour point sequence of the binary image extracted from the inputted electronic data is divided into sections of the contours which can be approximated by the Bezier curve, pieces of positional information of a starting point and an end point of the divided sections are stored in a memory, at least one point in the contour point sequence belonging to the divided sections of contours is determined as a featured value satisfying a first distance condition to a first segment to be specified by connecting the starting point and the end point of the divided sections, positional information of the determined featured value is stored in the memory, positional information on a second segment satisfying a second distance condition to the first segment and in parallel with the first segment is compared with pieces of positional information on tangent lines to each of the starting point and the end point of the divided sections, respectively, an intersection at which both pieces of the positional information coincide is determined as a control point, positional information of the determined control point is stored in the memory and the divided sections of the contours are approximated by the Bezier curve based on the starting point, the end point, the featured value and the positional information at the control point. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報処理処理及び情報処理方法、情報処理プログラム等に関するものであり、特に、電子化データより2値画像データを抽出し、アウトライン化処理を実行する情報処理装置及びその方法等に好適である。   The present invention relates to information processing, an information processing method, an information processing program, and the like, and is particularly suitable for an information processing apparatus and method for extracting binary image data from digitized data and executing outline processing. It is.

近年、環境問題がオフィス環境においても重要視され、その問題の解決策の一つとして、オフィスでのペーパーレス化が急速に進んでいる。このペーバーレス化を実現する方法として、紙文書をスキャナより読み取り、電子データに変換して情報を格納する方法が挙げられる。しかしながら、紙文書は電子データとして保存可能であるが、ファイル自体がイメージ情報であるので、紙文書自体を再利用することはできないという問題もある。また、電子データとして記憶媒体上に蓄積させる場合であっても、高画質での保存を望めば電子データのファイルサイズも大きくなるなど、記憶するイメージ情報の画質と、その電子データを格納するための記憶領域の容量と、のトレードオフの問題も生じる。   In recent years, environmental problems are also regarded as important in the office environment, and as one of the solutions to the problem, paperless use in the office is rapidly progressing. As a method for realizing this paperless, there is a method of reading a paper document from a scanner, converting it into electronic data, and storing the information. However, although a paper document can be stored as electronic data, there is also a problem that the paper document itself cannot be reused because the file itself is image information. In addition, even if the electronic data is stored on the storage medium, the image quality of the stored image information and the electronic data are stored, for example, if the high-quality storage is desired, the file size of the electronic data is increased. There is also a trade-off problem with the capacity of the storage area.

上述の従来技術として、例えば、以下の特許文献1に示されるものがある。
特開2002−230202号公報
As the above-described prior art, for example, there is one shown in Patent Document 1 below.
JP 2002-230202 A

背景技術して示した、2つの問題を同時に解決する方法として、文書画像を文字領域、写真画像領域、線画領域、表領域等のオブジェクト毎に分割し、それぞれをベクトル化処理して、電子化される画像データの容量を軽減する方法が挙げられる。この場合、文字、線画、表などの領域はアウトライン化処理によりベクトル化(以下、「アウトラインベクトル化」)することで、データ量を削減し、高画質で再利用可能な電子文書を生成することが可能になる。   As a method to solve the two problems shown in the background art simultaneously, the document image is divided into objects such as a character area, a photographic image area, a line drawing area, and a table area, and each of them is vectorized and digitized. A method of reducing the volume of image data to be processed. In this case, areas such as characters, line drawings, and tables are vectorized by outline processing (hereinafter referred to as “outline vectorization”), thereby reducing the amount of data and generating a reusable electronic document with high image quality. Is possible.

このアウトラインベクトル化による電子文書は、2値画像より得られる輪郭線を追跡処理し、得られた輪郭線の曲線部をベジェ曲線等の曲線関数により関数近似することで求められる。ここで、ベジェ曲線等の曲線関数により関数近似をする場合、一般的に輪郭線上の点列と、ベジェ曲線の誤差を求め、曲線の最適化を行う必要があるので、膨大な繰り返し演算が必要となり、多大な処理時間を要することになる。   An electronic document by this outline vectorization is obtained by tracking the contour line obtained from the binary image and approximating the curve portion of the obtained contour line by a function such as a Bezier curve. Here, when function approximation is performed using a curve function such as a Bezier curve, it is generally necessary to calculate the error between the point sequence on the contour line and the Bezier curve and optimize the curve. Therefore, a great deal of processing time is required.

この処理時間を短縮化する近似計算として、輪郭点間を曲線で補間する方法も考えられているが、輪郭点データに対しそのまま曲線補間を行えば、補間点数の増加を招き、アウトラインベクトル化処理の圧縮効果が薄くなるという問題も生じる。また、直線近似などにより補間点数を減らす処理を行った場合、直線近似のための処理時間の増加を招くことになる。すなわち、アウトラインベクトル化によりデータ量を削減することは可能であるが、そのための近似計算においては、演算量が多くなり多大な演算時間が必要となり、アウトラインベクトル化を行いつつ演算時間の短縮化を図る場合であっても、データ量の軽減効果が十分得られないという問題が生じる。   As an approximate calculation to shorten this processing time, a method of interpolating between contour points with a curve is also considered, but if the curve interpolation is performed on the contour point data as it is, the number of interpolation points will increase and outline vectorization processing will be performed. There is also a problem that the compression effect is reduced. Further, when processing for reducing the number of interpolation points is performed by linear approximation or the like, processing time for linear approximation is increased. In other words, it is possible to reduce the amount of data by outline vectorization, but in the approximate calculation for that purpose, the amount of calculation increases and a lot of calculation time is required, and the calculation time is shortened while performing outline vectorization. Even in this case, there is a problem that the data amount reduction effect cannot be obtained sufficiently.

本発明においては、上記の従来技術における問題点を鑑みて、高速に演算することが可能なベジェ曲線近似化により画像データをアウトライン化する情報処理装置及び情報処理方法、その情報処理方法をコンピュータで実行することが可能なプログラム、プログラムを格納した記録媒体を提供することを目的とするものである。   In the present invention, in view of the above-described problems in the prior art, an information processing apparatus and an information processing method for outlining image data by Bezier curve approximation that can be performed at high speed, and the information processing method using a computer It is an object to provide a program that can be executed and a recording medium that stores the program.

上記の目的を達成するべく、本発明にかかる2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理装置は、
入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割手段と、
前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定手段と、
前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するするコントロールポイント決定手段と、
前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算手段と、
を備えることを特徴とする。
In order to achieve the above object, an information processing apparatus for converting binary image data according to the present invention into an outline using a Bezier curve,
A curve dividing unit that divides a contour point sequence of a binary image extracted from input digitized data into contour segments that can be approximated by a Bezier curve, and stores position information of a start point and an end point of the divided segment in a storage unit;
At least one point in the contour point sequence belonging to the divided contour segment is determined as a feature point that satisfies the first distance condition for the first line segment specified by connecting the start point and the end point of the segmented segment. , Feature point determination means for storing position information of the determined feature points in the storage means;
Position information on a second line segment that satisfies the second distance condition for the first line segment and parallel to the first line segment, and position information on a tangent to each of the start point and end point of the divided section, respectively In comparison, control point determination means for determining the intersection point where the position information coincides as a control point, and storing the position information of the determined control point in the storage means,
Approximation calculation means for reading position information at the start point and end point of the section, the feature point and the control point from the storage means, and approximating the divided contour section with the Bezier curve;
It is characterized by providing.

あるいは、上記の目的を達成するべく、本発明にかかる2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理方法は、
入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割工程と、
前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定工程と、
前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するするコントロールポイント決定工程と、
前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算工程と、
を備えることを特徴とする。
Alternatively, in order to achieve the above object, an information processing method for outlining binary image data according to the present invention using a Bezier curve,
A curve dividing step of dividing a contour point sequence of a binary image extracted from input digitized data into contour sections that can be approximated by a Bezier curve, and storing position information of a start point and an end point of the divided section in a storage unit;
At least one point in the contour point sequence belonging to the divided contour segment is determined as a feature point that satisfies the first distance condition for the first line segment specified by connecting the start point and the end point of the segmented segment. A feature point determination step of storing the position information of the determined feature point in the storage means;
Position information on a second line segment that satisfies the second distance condition for the first line segment and parallel to the first line segment, and position information on a tangent to each of the start point and end point of the divided section, respectively In comparison, the control point determination step of determining the intersection point where both the position information matches as a control point, and storing the determined control point position information in the storage means,
An approximate calculation step of reading position information at the start point and end point of the section, the feature point and the control point from the storage means, and approximating the divided contour section with the Bezier curve;
It is characterized by providing.

あるいは、本発明にかかる情報処理プログラムは、コンピュータで実行するための処理を、上記の情報処理方法により特定することを特徴とする。   Or the information processing program concerning this invention specifies the process for performing with a computer by said information processing method.

あるいは、本発明にかかるコンピュータ可読の記憶媒体は、上記の情報処理プログラムを格納したことを特徴とする。   Alternatively, a computer-readable storage medium according to the present invention stores the above information processing program.

本発明によれば、ベジェ曲線により、入力した電子化データから抽出した2値画像の輪郭の近似を高速化することが可能になる。   According to the present invention, it becomes possible to speed up the approximation of the contour of a binary image extracted from input digitized data by a Bezier curve.

あるいは、近似したベジェ曲線の精度判定を分割した区分ごとに行うことにより、近似計算の精度を確保することが可能になる。   Alternatively, the accuracy of the approximate calculation can be ensured by performing the accuracy determination of the approximated Bezier curve for each divided section.

<第1実施形態>
以下、本発明の好適な実施形態を図面を参照しつつ説明する。本発明は汎用のコンピュータシステム上または専用画像処理システム上で、あるいは画像処理用ソフトウェアの形態で、またはデジタル画像処理を含むデバイス・ドライバおよび他のアプリケーションとして実施することができる。
<First Embodiment>
Preferred embodiments of the present invention will be described below with reference to the drawings. The present invention can be implemented on a general purpose computer system or a dedicated image processing system, in the form of image processing software, or as a device driver and other applications including digital image processing.

以下、汎用コンピュータシステム上で実行するする情報処理の内容を、図面を参照しつつ説明する。図1は、コンピュータシステム100のブロック図である。コンピュータシステム100には、RAM113,CPU114,ROM115、通信装置116を含むコンピュータ101と、これに接続する入力装置110、出力装置111、ディスク・ドライブ装置117が含まれる。入力装置110には、例えばスキャナ、CCDカメラ、CD−ROMドライブ、デジタル・カメラなどが含まれ、少なくとも1つあるいは複数種の機器がコンピュータ101と接続することが可能である。入力装置110を介して文字情報や画像情報が電子化データとしてコンピュータシステム101に入力される。   The contents of information processing executed on the general-purpose computer system will be described below with reference to the drawings. FIG. 1 is a block diagram of a computer system 100. The computer system 100 includes a computer 101 including a RAM 113, a CPU 114, a ROM 115, and a communication device 116, and an input device 110, an output device 111, and a disk drive device 117 connected thereto. The input device 110 includes, for example, a scanner, a CCD camera, a CD-ROM drive, a digital camera, and the like, and at least one or a plurality of types of devices can be connected to the computer 101. Character information and image information are input to the computer system 101 as digitized data via the input device 110.

出力装置111には、記録媒体上に文字情報や画像情報を記録して出力するプリンタや、CRTや液晶ディスプレイなの表示装置に画像情報等を可視化して表示するモニタ等が含まれ。入力装置110と同様に少なくとも一つあるいは複数種の機器がコンピュータ101に接続することが可能である。   The output device 111 includes a printer that records and outputs character information and image information on a recording medium, and a monitor that visualizes and displays image information on a display device such as a CRT or a liquid crystal display. Similar to the input device 110, at least one or a plurality of types of devices can be connected to the computer 101.

また、コンピュータシステム100は、コンピュータ101に含まれる通信装置116を介して、ネットワーク120と接続することが可能であり、このネットワーク120に接続する外部コンピュータシステム123、124やファイルサーバ121、ネットワークプリンタなどの出力装置122とデータの受け渡しが可能である。   The computer system 100 can be connected to a network 120 via a communication device 116 included in the computer 101. External computer systems 123 and 124, a file server 121, a network printer, and the like that are connected to the network 120. It is possible to exchange data with the output device 122.

RAM113は、CPU114による演算処理を実行するためのワークエリアとして利用することが可能であり、ROM115は、本発明の対象となる、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理プログラムを格納することが可能である。入力装置110、出力装置111、RAM113、CPU114、ROM115、通信装置116そしてディスクドライブ117はコンピュータシステム100内のバス150を介して接続しており相互にデータの授受が可能である。入力装置110から入力された電子化データに対して、CPU114は情報処理プログラムの処理を適用することができ、その画像処理の結果はディスクドライブ117に格納したり、出力装置111を介して出力したり、ネットワーク120介して配信され、ネットワーク上のファイルサーバ121にデータを格納し、コンピュータシステム123、124間でデータを共有することもできる。更に、ネットワーク121を介して配信される画像処理の結果はネットワークに接続する出力装置122を介して出力することも可能である。図13は、分割した区分の始点、終点、特徴点、コントロールの位置情報をディスクドライブ117またはRAM113(これらは格納手段として機能する)に格納した状態を示す図である。   The RAM 113 can be used as a work area for executing arithmetic processing by the CPU 114, and the ROM 115 outlines image data by Bezier curve approximation, which is a target of the present invention and can be calculated at high speed. It is possible to store an information processing program to be vectorized. The input device 110, the output device 111, the RAM 113, the CPU 114, the ROM 115, the communication device 116, and the disk drive 117 are connected via a bus 150 in the computer system 100 and can exchange data with each other. The CPU 114 can apply information processing program processing to the digitized data input from the input device 110, and the result of the image processing is stored in the disk drive 117 or output via the output device 111. Alternatively, the data can be distributed via the network 120, stored in the file server 121 on the network, and shared between the computer systems 123 and 124. Furthermore, the result of image processing distributed via the network 121 can be output via the output device 122 connected to the network. FIG. 13 is a diagram showing a state in which the start point, end point, feature point, and control position information of the divided sections are stored in the disk drive 117 or the RAM 113 (these function as storage means).

ディスクドライブ117は、ROM117と同様に本発明の対象となる、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理プログラムを格納することが可能である。また、ディスクドライブ117はRAM113と同様にCPU114による演算処理を実行するためのワークエリアとして利用することが可能であり、例えば、後に詳細に説明する曲線分割した始点、終点の位置情報や、特徴点、コントロールポイントの位置情報をそれぞれ格納することが可能であり、CPU114は、ベジェ曲線による近似処理において、これらの位置情報を順次読み出しながら処理を実行することができる。   Similar to the ROM 117, the disk drive 117 can store an information processing program that is an object of the present invention and that converts image data into an outline vector by Bezier curve approximation that can be calculated at high speed. In addition, the disk drive 117 can be used as a work area for executing arithmetic processing by the CPU 114 in the same manner as the RAM 113. For example, the position information of the start and end points of the curve division, which will be described in detail later, and feature points Each of the control point position information can be stored, and the CPU 114 can execute the process while sequentially reading out the position information in the approximation process using the Bezier curve.

また、ネットワーク120に接続するコンピュータシステム123、124やファイルサーバ121から電子化データをコンピュータシステム100に受信し、そのデータに対して、高速に演算することが可能なベジェ曲線近似化により画像データをアウトラインベクトル化する情報処理を適用することも可能である。   Further, the computer system 100 receives computerized data from the computer systems 123 and 124 and the file server 121 connected to the network 120, and the image data is obtained by Bezier curve approximation capable of performing high-speed computation on the data. It is also possible to apply information processing that performs outline vectorization.

次に、コンピュータシステム100に入力した電子化データの具体的な処理の流れを説明する。図2は、入力した電子化データ(「画像源」ともいう。)に基づき、画像源の輪郭をアウトライン関数近似により表して、ベクトル化する処理の流れを説明するフローチャートである。まず、ステップS200において、CPU114は、入力した画像源より画像中の文字部、線画部等、アウトライン化処理をする2値画像を抽出する。次に、ステップS201において、CPU114は、ステップS200で得られた2値のラスター画像データより輪郭線を抽出する。   Next, a specific processing flow of the digitized data input to the computer system 100 will be described. FIG. 2 is a flowchart for explaining the flow of processing for representing the contour of the image source by outline function approximation based on the input digitized data (also referred to as “image source”) and vectorizing it. First, in step S200, the CPU 114 extracts a binary image to be outlined from the input image source, such as a character portion and a line drawing portion in the image. Next, in step S201, the CPU 114 extracts a contour line from the binary raster image data obtained in step S200.

ステップS202において、CPU114は、先のステップS201で抽出された輪郭線を平滑化するための処理を実行し、ステップS203では、CPU114が輪郭線の中から角点を抽出する。   In step S202, the CPU 114 executes a process for smoothing the contour line extracted in the previous step S201. In step S203, the CPU 114 extracts a corner point from the contour line.

次に、ステップS204において、CPU114は、ステップS203の処理により抽出した角点間に挟まれた曲線部を関数近似により処理を行い、2値のラスター画像データをアンカーポイントとコントロールポイントから表現されるベクタデータへ変換する。ここで、ステップS204の関数近似処理ではベジェ関数を用いた近似を行う。この関数近似処理において、2つのアンカーポイント間を結ぶ曲線を構成する点列から、ベジェ曲線を構成する2つのコントロールポイントを導出する際に、導出処理を簡易に行うことで、膨大な演算処理を省き、関数近似処理の高速化が可能になる。ベジェ曲線の導出処理を簡易に行うとは、2つのアンカーポイント(図12のp1,pN)間を結ぶベジェ曲線を導出する際に、コントロールポイントをアンカーポイントと平行に構成すると仮定を設けることで、2つのアンカーポイント(p1、pN)と、アンカーポイントにおけるそれぞれの接線ベクトル(ab、cd)と、曲線上の特徴点1点(例えば、図12の点pL)と 合計5つの特徴量からベジェ曲線を導出することができる。一般的に、関数近似処理は、曲線と目標点列の誤差をそれぞれ求め 曲線の最適化を行うという膨大な繰り返し演算処理を必要とするが、本実施形態によれば、曲線を構成する点列から5つの点(2つのアンカーポイントと、2つのコントロールポイントと、1つの特徴点)を抽出するだけで一意にベジェ曲線を導出することが可能である。繰り返し演算処理を行わないことで、演算処理量を大幅に削減し、処理を高速化でき、ソフト処理でも実時間でのアウトライン化処理が可能となる。   Next, in step S204, the CPU 114 processes the curved portion sandwiched between the corner points extracted in the process of step S203 by function approximation, and expresses binary raster image data from anchor points and control points. Convert to vector data. Here, in the function approximation processing in step S204, approximation using a Bezier function is performed. In this function approximating process, when deriving two control points that make up a Bezier curve from a point sequence that makes up a curve connecting two anchor points, the derivation process is simply performed, and a huge amount of calculation processing is performed. This eliminates the need for speeding up the function approximation process. The simple process of deriving the Bezier curve is to provide an assumption that the control point is configured in parallel with the anchor point when deriving a Bezier curve connecting two anchor points (p1 and pN in FIG. 12). From two anchor points (p1, pN), each tangent vector (ab, cd) at the anchor point, one feature point on the curve (for example, point pL in FIG. 12), and a total of five feature quantities. A curve can be derived. In general, function approximation processing requires enormous repetitive calculation processing of obtaining an error between a curve and a target point sequence and optimizing the curve. According to this embodiment, the point sequence constituting the curve is used. It is possible to uniquely derive a Bezier curve simply by extracting five points (two anchor points, two control points, and one feature point). By not repeatedly performing arithmetic processing, the amount of arithmetic processing can be greatly reduced, the processing speed can be increased, and outline processing can be performed in real time even with software processing.

次に、図2のフローチャートにおける各ステップの詳細な内容について説明する。図2のステップS200において、CPU114は入力した電子化データに対してエッジ処理を施し、白黒の2値化画像に変換する。この際、CPU114は、2値画像に対し認識処理を行い、文字領域や線画領域などに分類し、分類した領域ごとに2値画像を抽出することもできる。また、もともとの入力画像が2値画像であるなら、この処理は行わなくてもよい。   Next, the detailed contents of each step in the flowchart of FIG. 2 will be described. In step S200 of FIG. 2, the CPU 114 performs edge processing on the input digitized data and converts it into a monochrome binary image. At this time, the CPU 114 can perform recognition processing on the binary image, classify it into a character area, a line drawing area, and the like, and extract a binary image for each classified area. If the original input image is a binary image, this process need not be performed.

ステップS201において、CPU114は2値画像から輪郭線データへの変換を行う。輪郭線抽出手法は、ラスター画像データの1ドットに対し、ドットの中心を1点として輪郭線追跡する手法や、また1ドットの輪郭を4点として輪郭線追跡する手法など種々提案されている。本実施形態では、説明を簡単にするため、特開平05-108823号公報にて提案されている輪郭線追跡手法を用いて粗輪郭点列を抽出する手法を適用する。この手法によれば、図4(a)の2値画像ラスターデータは、図4(b)のように粗輪郭点が抽出される。抽出された粗輪郭点列(以下、単に「点列」ともいう。)に対し、ステップS202において、CPU114は平滑化処理を施す。この平滑化処理では、ノッチ除去処理のような輪郭直線上の凹凸を緩和する処理を施すと共に、斜め方向の輪郭線が形成する階段状の凹凸を緩和する。   In step S201, the CPU 114 performs conversion from a binary image to contour line data. Various contour line extraction methods have been proposed, such as a method of tracking the contour line with one dot center of the raster image data, and a method of tracking the contour line with four dot contours. In the present embodiment, in order to simplify the description, a method of extracting a rough contour point sequence using a contour tracking method proposed in Japanese Patent Laid-Open No. 05-108823 is applied. According to this method, coarse contour points are extracted from the binary image raster data of FIG. 4A as shown in FIG. 4B. In step S202, the CPU 114 performs a smoothing process on the extracted rough contour point sequence (hereinafter also simply referred to as “point sequence”). In this smoothing process, a process for reducing irregularities on the contour straight line, such as a notch removal process, is performed, and a stepped irregularity formed by an oblique outline is relaxed.

次に、処理をステップS203に進め、ステップS202において平滑化された輪郭線からCPU114は角点を抽出する。ここで、角点とは、隣接する点列を結ぶベクトルの変化が鋭角となる点である。図4(c)において、点列a,bからなるベクトルabと、点列b、cからなるベクトルbcとの間でなす角θ1は鋭角であり、CPU114は角点として抽出するが、図4(d)の場合、ベクトルabと、点列b、dよりなるベクトルbdとのなす角θ2は鈍角となり、この場合、CPU114は角点として抽出は行わない。例えば、輪郭点列として文字"S"を想定した場合、図5の501〜507が角点として求められる。また、角点の抽出において、CPU114は鋭角か否かの条件の他に連続する点と点との距離がある閾値より大きい場合、その両端の点も角点とすることができる。これは、図形を構成する直線が丸みを帯びてしまうことを防止するためである。   Next, the process proceeds to step S203, and the CPU 114 extracts a corner point from the contour line smoothed in step S202. Here, a corner point is a point at which a change in a vector connecting adjacent point sequences becomes an acute angle. In FIG. 4C, the angle θ1 formed between the vector ab composed of the point sequences a and b and the vector bc composed of the point sequences b and c is an acute angle, and the CPU 114 extracts it as a corner point. In the case of (d), the angle θ2 formed by the vector ab and the vector bd composed of the point sequences b and d is an obtuse angle. In this case, the CPU 114 does not extract the corner points. For example, when the character “S” is assumed as the contour point sequence, 501 to 507 in FIG. 5 are obtained as corner points. In addition, in the extraction of corner points, the CPU 114 can also set the points at both ends thereof as corner points if the distance between successive points is larger than a certain threshold value in addition to the condition of whether the corner is acute. This is to prevent the straight lines constituting the figure from being rounded.

次に、本実施形態における角点間を構成する曲線のベジェ関数近似処理(ステップS204)について説明する。図3は、角点間の曲線を構成する点列をベジェ関数に置きかえる(近似)処理の流れを説明するフローチャートである。   Next, the Bezier function approximating process (step S204) of the curve constituting the corner points in the present embodiment will be described. FIG. 3 is a flowchart for explaining the flow of the process of replacing (approximate) the point sequence constituting the curve between corner points with a Bezier function.

まず、ステップS301において、角点間の曲線を平滑化し、次に、ステップS302において、平滑化した曲線を1つのベジェ曲線で置きかえられる区分曲線に分割する。分割された区分のベジェ曲線毎に関数近似処理を施すことで、角点間の曲線を関数近似処理が施されたベジェ曲線の集合として表現することが可能である。   First, in step S301, the curve between corner points is smoothed, and then in step S302, the smoothed curve is divided into segmented curves that can be replaced with one Bezier curve. By performing function approximation processing for each divided Bezier curve, it is possible to express a curve between corner points as a set of Bezier curves subjected to function approximation processing.

図10に近似するベジェ曲線の例を示す(なお、図中の白点は各線分の中点をあらわしている。)。図10に示すように、ベジェ曲線を定義する4つの点を構成するアンカーポイントP0、P3、コントロールポイントP1,P2のうち、始点P0、終点P3を通り、2つのコントロールポイントP1、P2の方向と距離によって決定されるベジェ曲線L0が描画される。このベジェ曲線L0は、始点P0、終点P3において、それぞれ線分P0P1、P2P3に接している。このベジェ曲線L0は、次の3次ベジェ曲線B(t)によって演算される。   FIG. 10 shows an example of a Bezier curve that approximates (a white point in the figure represents a midpoint of each line segment). As shown in FIG. 10, among the anchor points P0 and P3 and the control points P1 and P2 constituting the four points defining the Bezier curve, the direction of the two control points P1 and P2 passes through the start point P0 and the end point P3. A Bezier curve L0 determined by the distance is drawn. The Bezier curve L0 is in contact with the line segments P0P1 and P2P3 at the start point P0 and the end point P3, respectively. This Bezier curve L0 is calculated by the next cubic Bezier curve B (t).

B(t)=(1−t)3・P0+3(1−t)2・t・P1
+3(1−t)・t2・P2+t3・P3 ・・・(1)
(0≦t≦1:tは係数パラメータ)
この場合、アンカーポイントP0、P3に基づき、繰り返し演算処理によりコントロールポイントP1、P2を決定して関数近似処理を行うためには、曲線(B(t))と目標点列の誤差をそれぞれ求め 曲線の最適化を行うという膨大な繰り返し演算処理が必要とする。本実施形態においては、曲線を構成する点列から5つの点を抽出して、一意にベジェ曲線を導出することが可能である。以下、この導出の内容を具体的に説明する。近似するベジェ曲線は、コントロールポイントを結ぶ線分P1P2とアンカーポイントを結ぶ線分P0P3とが平行となるように配置するものとする。線分P1P2と線分P0P3が平行であるという仮定した場合、線分P0P3から最も距離が離れた曲線上の点Pfと線分P0P3との距離をDf(第1距離条件)とし、線分P0P3と線分P1P2との距離をDc(第2距離条件)とすると(図10を参照)、(2)式の関係が成り立つ。
B (t) = (1-t) 3 · P0 + 3 (1-t) 2 · t · P1
+3 (1-t) · t 2 · P2 + t 3 · P3 (1)
(0 ≦ t ≦ 1: t is a coefficient parameter)
In this case, based on the anchor points P0 and P3, in order to perform the function approximation process by determining the control points P1 and P2 by the repeated calculation process, the error of the curve (B (t)) and the target point sequence is obtained respectively. Enormous repetitive calculation processing is required. In the present embodiment, it is possible to extract five points from a point sequence constituting a curve and derive a Bezier curve uniquely. Hereinafter, the contents of this derivation will be specifically described. The approximate Bezier curve is arranged so that the line segment P1P2 connecting the control points and the line segment P0P3 connecting the anchor points are parallel to each other. Assuming that the line segment P1P2 and the line segment P0P3 are parallel, the distance between the point Pf on the curve farthest from the line segment P0P3 and the line segment P0P3 is Df (first distance condition), and the line segment P0P3 And the line segment P1P2 is Dc (second distance condition) (see FIG. 10), the relationship of equation (2) is established.

Dc = (4/3)×Df ・・・(2)
(2)式を用いることにより、線分P0P3と距離Dcだけ離れた線分上の位置にコントロールポイントP1、P2を定めることができることになる。この処理はCPU114が実行するものであり、図3におけるフローチャートに従って具体的な処理が実行される。まず、ステップS301の曲線部平滑化処理では、角点間の曲線を構成する点列を平滑化する。具体的には、角点を除いた曲線を構成する点列のみをスムージングフィルタなどを使用することで平滑化し、滑らかな曲線を描く点列を作成する。図3のステップS301における曲線部平滑化処理は、図2のステップS202における平滑化処理で充分に点列のノイズが除去されるように平滑化処理が行われていれば、この処理は必ずしも行わなくてよい。
Dc = (4/3) × Df (2)
By using the expression (2), the control points P1 and P2 can be determined at positions on the line segment separated from the line segment P0P3 by the distance Dc. This processing is executed by the CPU 114, and specific processing is executed according to the flowchart in FIG. First, in the curve portion smoothing process in step S301, the point sequence constituting the curve between corner points is smoothed. Specifically, only a point sequence constituting a curve excluding corner points is smoothed by using a smoothing filter or the like to create a point sequence that draws a smooth curve. The curve portion smoothing process in step S301 in FIG. 3 is not necessarily performed if the smoothing process in step S202 in FIG. 2 is performed so that the noise of the point sequence is sufficiently removed. It is not necessary.

ステップS302の曲線分割処理では、一つのベジェ曲線で点列を近似(置きかえ)できる単位で輪郭点列により構成される曲線を分割(曲線分割)する。この曲線分割の例を具体的に示す図6Aと、曲線分割の処理流れを説明するフローチャート図6Bを用いて説明する。   In the curve dividing process of step S302, a curve constituted by the contour point sequence is divided (curve division) in a unit that can approximate (replace) the point sequence with one Bezier curve. A specific example of the curve division will be described with reference to FIG. 6A and a flowchart FIG. 6B illustrating the flow of the curve division processing.

図6Aの(a)は、角点a1から角点anを含む曲線を構成している点列a0,a1,a2,・・・an+1・・・を示している。まず、図6BのステップS601において、カウンタ(i)を初期化して、ステップS602において、CPU114は、点a1を始点してa2を終点とするベクトルをv1、点a2を始点とするベクトルをv2とし、以下同様に各点間のベクトルをそれぞれv1,v2,…,vNとして演算する。ここで求めたベクトル(Vi)の始点と終点の位置情報は、以下のステップの実行のため、一時的にRAM113に格納またはディスクドライブ117し、必要に応じて順次CPU114が読み出すように構成することができる。   (A) of FIG. 6A has shown point sequence a0, a1, a2, ... an + 1 ... which comprises the curve containing the corner point an from the corner point a1. First, in step S601 in FIG. 6B, the counter (i) is initialized, and in step S602, the CPU 114 sets v1 as a vector starting from point a1 and ending at a2, and v2 as vector starting from point a2. Similarly, the vectors between the points are calculated as v1, v2,..., VN, respectively. The position information of the start point and end point of the vector (Vi) obtained here is temporarily stored in the RAM 113 or the disk drive 117 for execution of the following steps, and the CPU 114 sequentially reads out as necessary. Can do.

ステップS603において、CPU114は点a1を始点としたベクトルv1と、他のベクトル(vi(i=2,…,vN)との成す角θiを演算し、この角度(θi)と閾値角θthとを比較する。ここで、閾値角θthは、予めROM115に格納しておくことも可能であり、また、ユーザが入力装置110を介して設定した値をRAM113またはディスクドライブ117に格納しておくことも可能である。CPU114は、角度の比較計算の際、RAM113またはROM115から閾値角θthを読み出して、計算により求めた角度θiと比較する。   In step S603, the CPU 114 calculates an angle θi formed by the vector v1 starting from the point a1 and another vector (vi (i = 2,..., VN), and calculates the angle (θi) and the threshold angle θth. Here, the threshold angle θth can be stored in the ROM 115 in advance, or a value set by the user via the input device 110 can be stored in the RAM 113 or the disk drive 117. In the angle comparison calculation, the CPU 114 reads the threshold angle θth from the RAM 113 or the ROM 115 and compares it with the angle θi obtained by the calculation.

この角度の比較において、演算により求められた角度(θi)が閾値角θthより小さい場合、次のベクトルを比較の対象として(S605)、再び処理をステップS603に戻し、CPU114はベクトルv1と次のベクトル(vi)とがなす角度θiを演算して閾値角θthとの比較を行う。一方、角度θiが閾値角θth以上となった場合、処理をステップS604に進めて、例えば、i=nの場合、CPU114は、ベクトルvnの端点anを曲線分割の終点(端点)と設定する。   In this angle comparison, when the angle (θi) obtained by the calculation is smaller than the threshold angle θth, the next vector is set as a comparison target (S605), and the process returns to step S603 again. The angle θi formed by the vector (vi) is calculated and compared with the threshold angle θth. On the other hand, when the angle θi is equal to or larger than the threshold angle θth, the process proceeds to step S604. For example, when i = n, the CPU 114 sets the end point an of the vector vn as the end point (endpoint) of the curve division.

また、端点の決定に関しては、図6Bのフローチャートで説明した閾値角を基準とする方法に限定するものではなく、例えば、CPU114が連続するベクトルの外積を求め(v1×v2、v2×v3、・・・vn-1×vn、・・・)、その符号が変化するベクトルの終点を曲線分割する区分の端点としてもよい。この場合、CPU114は、各ベクトルの外積演算の結果をRAM113またはディスクドライブ117に格納し、演算結果を参照しながら符号の変化を計算することができる。図6Aの(b)は、連続するベクトルの外積計算結果を示す図であり、図6A(b)の601により示される点は、接線602との傾きがゼロとなり符合が変化する点である。連続するベクトルの外積を求め、その符号の変化から分割する曲線の端点(該当するベクトルの終点)を求めることができる。   Further, the determination of the end point is not limited to the method based on the threshold angle described in the flowchart of FIG. 6B. For example, the CPU 114 obtains an outer product of consecutive vectors (v1 × v2, v2 × v3,. ... Vn-1 × vn,..., The end point of the vector whose sign changes may be used as the end point of the section for dividing the curve. In this case, the CPU 114 can store the result of the outer product operation of each vector in the RAM 113 or the disk drive 117, and calculate the change in the sign while referring to the operation result. FIG. 6A is a diagram showing the outer product calculation result of continuous vectors. A point indicated by 601 in FIG. 6A is a point where the sign changes when the slope with respect to the tangent 602 becomes zero. An outer product of continuous vectors is obtained, and an end point of the curve to be divided (end point of the corresponding vector) can be obtained from the change in the sign.

以上の処理による始点と終点から定められる区分の輪郭曲線a1anは一つのベジェ曲線により近似することが可能である。   The contour curve a1an of the segment determined from the start point and the end point by the above processing can be approximated by one Bezier curve.

次に、先の区分において端点として求められた点anを新たな始点とし、最終的なベクトルvN-1の終点aNを含む区分がベジェ曲線で近似されるまで同様の処理を繰り返す。以上の処理により、角点間の曲線点列をベジェ関数で近似する区分曲線に分割することができる。   Next, the same processing is repeated until the point including the end point aN of the final vector vN-1 is approximated by a Bezier curve with the point an obtained as an end point in the previous division as a new start point. By the above processing, the curve point sequence between corner points can be divided into segmented curves that are approximated by Bezier functions.

尚、区分曲線の分割は、上記の手法だけではなく他にも種々の方法が適用できる。例えばベクトルの傾きを調べ、傾きがある閾値角度の倍数となる場合に、その端点を終点とするように区分を定めてもよい。1つのベジェ関数で近似しうる区分に分割できればよく、いずれの方法によるかということは、本発明にかかる本実施形態の趣旨を限定するものではない。以上の処理により求められた各区分曲線の始点と終点の位置情報は、図13に示すように、格納手段に格納される。   In addition, the division | segmentation of a division | segmentation curve can apply not only said method but a various other method. For example, when the inclination of the vector is examined and the inclination is a multiple of a certain threshold angle, the end point may be set as the end point. What is necessary is just to be able to divide into sections that can be approximated by one Bezier function, and which method is used does not limit the gist of the present embodiment according to the present invention. The position information of the start point and end point of each segment curve obtained by the above processing is stored in the storage means as shown in FIG.

次に、CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理を図7、図8,図11A,Bを参照しつつ説明する。図7は区分曲線p1pN,pNpM,pMpQ,・・を示す図であり、図8は、分割した一つの区分曲線(p1pN)を表している。図8において、区分曲線上のN個の点をp1,p2,…pNとする。このとき、区分曲線の始点はp1、終点はpNであり、これらの点は上述の説明により区分曲線の分割により求められる始点と終点(端点)である(図11AのステップS1110)。これらの点はベジェ曲線のアンカーポイントとなる。   Next, the process executed by the CPU 114 for approximating the divided segment curve with a Bezier curve will be described with reference to FIGS. 7, 8, 11A and 11B. FIG. 7 is a diagram showing segmented curves p1pN, pNpM, pMpQ,..., And FIG. 8 represents one segmented curve (p1pN). In FIG. 8, let N points on the segment curve be p1, p2,... PN. At this time, the start point of the segment curve is p1 and the end point is pN, and these points are the start point and end point (end point) obtained by dividing the segment curve according to the above description (step S1110 in FIG. 11A). These points become anchor points of the Bezier curve.

次に、CPU114は、各アンカーポイントp1、pNにおける接線成分を抽出する(図11AのステップS1120)。接線成分はp1、pNにおける近傍点から求められ(例えば、図12のアンカーポイントp1に対する近傍点aまたはbにより定められる方向)、この接線成分は、図3におけるステップS303で、関数近似を行う際、区分の分割と併せて行うことも可能である。   Next, the CPU 114 extracts tangential components at the anchor points p1 and pN (step S1120 in FIG. 11A). The tangential component is obtained from the neighboring points at p1 and pN (for example, the direction determined by the neighboring point a or b with respect to the anchor point p1 in FIG. 12). This tangential component is obtained when performing function approximation in step S303 in FIG. It is also possible to carry out in combination with the division of the sections.

CPU114は、(2)式で与えられる第2距離条件を満たし、アンカーポイント(図10のP1、P2)を結ぶ線分上の点の位置情報と、接線上の点の位置情報とを比較して、両者の位置情報が一致する交点をベジェ曲線のコントロールポイント(C1、C2)として決定することで、始点(p1)、終点(pN)を通り、それぞれの接線1110,1120に接するベジェ曲線を(1)式の関係により求めることができる。   The CPU 114 satisfies the second distance condition given by equation (2) and compares the position information of the points on the line segment connecting the anchor points (P1, P2 in FIG. 10) with the position information of the points on the tangent line. Thus, by determining the intersection where the positional information of the two coincides as the control point (C1, C2) of the Bezier curve, the Bezier curve that passes through the start point (p1) and the end point (pN) and touches the respective tangents 1110, 1120 is obtained. (1) It can obtain | require by the relationship of Formula.

ここで、具体的に2つのコントロールポイント(C1、C2)を決定するために、CPU114は、ステップS1130の処理により1つの特徴点を求める。すなわち、ステップS1130において、始点(p1)と終点(pN)を結ぶ線分p1pNより最も距離の離れている曲線上の点pLを特徴点として求め、CPU114は線分p1pNと特徴点pLとの距離Dfを決定する(S1140)。   Here, in order to determine two control points (C1, C2) specifically, the CPU 114 obtains one feature point by the process of step S1130. That is, in step S1130, a point pL on the curve farthest away from the line segment p1pN connecting the start point (p1) and the end point (pN) is obtained as a feature point, and the CPU 114 determines the distance between the line segment p1pN and the feature point pL. Df is determined (S1140).

尚、ステップS1130の処理は、線分p1pNとの関係で、一つの特徴点の他その近傍の複数の点を含むように特徴点群を決定するようにしてもよい。ここで求めた特徴点群の位置情報は、CPU114によりRAM113ディスクドライブ117に格納され、後の各処理ステップの進行に応じて読み出しが可能である。図13は1つの区分内に1つの特徴点の位置情報を格納した例を示している。   In the process of step S1130, the feature point group may be determined so as to include one feature point and a plurality of nearby points in relation to the line segment p1pN. The position information of the feature point group obtained here is stored in the RAM 113 disk drive 117 by the CPU 114 and can be read out as the subsequent processing steps progress. FIG. 13 shows an example in which position information of one feature point is stored in one section.

図11Bは、CPU114が距離Df((2)式を参照)を決定するための処理の流れを説明するフローチャートである。まず、ステップS1131、S1132において、パラメータ(Dmax,i)の初期化処理をそれぞれ行い、ステップS1133において、CPU114は線分p1pNと点piとの距離Diの計算を行う。この際、CPU114は、線分p1pNと距離計算の対象となる点piの位置座標に基づいて、距離Diの計算を行うことができる。ステップS1134において、先のステップS1133で計算により求めた距離Diと、距離の最大値を示すパラメータDmaxとを比較し、計算して求めた距離DiがDmaxより大きい場合は、ステップS1135においてパラメータDmaxの値を更新する(S1135)。ステップS1134の判断で、計算して求めた距離DiがDmaxより大きくない場合(S1134-No)、Dmaxの値を更新しないで、処理をステップS1136に進める。ここで、Dmaxの値はRAM113またはディスクドライブ117に格納され、CPU114の演算処理において読み出しが可能である。   FIG. 11B is a flowchart for explaining the flow of processing for the CPU 114 to determine the distance Df (see formula (2)). First, in steps S1131 and S1132, the parameter (Dmax, i) is initialized, and in step S1133, the CPU 114 calculates the distance Di between the line segment p1pN and the point pi. At this time, the CPU 114 can calculate the distance Di based on the line segment p1pN and the position coordinates of the point pi to be calculated. In step S1134, the distance Di calculated in the previous step S1133 is compared with the parameter Dmax indicating the maximum value of the distance. If the calculated distance Di is larger than Dmax, the parameter Dmax in step S1135 is set. The value is updated (S1135). If it is determined in step S1134 that the calculated distance Di is not greater than Dmax (S1134-No), the process proceeds to step S1136 without updating the value of Dmax. Here, the value of Dmax is stored in the RAM 113 or the disk drive 117, and can be read out in the arithmetic processing of the CPU 114.

ステップS1136において、CPU114は、分割した区分内の点全てに対して、距離の計算が行われているか否か判断し、全ての点に対して距離計算が行われていない場合(S1136-No)、処理をステップS1137に進め、カウンタ(i)を加算して、処理をステップS1133に進め、再び線分p1pNとの距離を計算する以降の処理を実行する。   In step S1136, the CPU 114 determines whether or not distance calculation has been performed for all points in the divided segment, and if distance calculation has not been performed for all points (S1136-No). Then, the process proceeds to step S1137, the counter (i) is added, the process proceeds to step S1133, and the subsequent processes for calculating the distance from the line segment p1pN are executed again.

ステップS1136の判断において、区分内の全ての点に対して距離計算が完了している場合(S1136-Yes)、処理をステップS1138に進め、線分p1pNと最大の距離を与える点pLとの距離Df(Df=Dmaxとして)を決定する。   If it is determined in step S1136 that distance calculation has been completed for all points in the segment (S1136-Yes), the process proceeds to step S1138, and the distance between the line segment p1pN and the point pL that gives the maximum distance. Df (as Df = Dmax) is determined.

以上の処理により距離Dfは具体的に決定される。説明を図11Aに戻してステップS1150以降の処理を説明する。   The distance Df is specifically determined by the above processing. Returning to FIG. 11A, the processing after step S1150 will be described.

本実施形態では、ベジェ関数による近似処理を簡易に行うため、コントロールポイントを結ぶ線分C1C2(図8)がアンカーポイントを結ぶ線分p1pNに対して平行になるように近似しているので、CPU114は(2)式の関係により、線分p1pNに対して、距離Dc=(4/3)×Dfとなるように線分を求め、この線分と各アンカーポイントの接線との交点をコントロールポイントC1、C2として演算することができる(S1150)。   In the present embodiment, in order to simplify the approximation process using the Bezier function, the line segment C1C2 (FIG. 8) connecting the control points is approximated so as to be parallel to the line segment p1pN connecting the anchor points. Is the distance Dc = (4/3) × Df with respect to the line segment p1pN according to the relationship of equation (2), and the intersection of this line segment and the tangent of each anchor point is the control point. C1 and C2 can be calculated (S1150).

4つの点、アンカーポイントp1、pN、コントロールポイントC1,C2の位置情報は図13に示すように格納手段に格納され、ベジェ曲線の近似計算において、これらの値が読み出され近似計算が実行される。この近似計算により、始点p1、終点pNを通り、2つのコントロールポイントC1、C2の方向と距離(Df)によって決定されるベジェ曲線が(1)式により求められる(S1160)。   The position information of the four points, the anchor points p1, pN, and the control points C1, C2 is stored in the storage means as shown in FIG. 13, and these values are read out in the approximation calculation of the Bezier curve and the approximation calculation is executed. The By this approximate calculation, a Bezier curve determined by the direction and distance (Df) of the two control points C1 and C2 through the start point p1 and the end point pN is obtained by the equation (1) (S1160).

以上のように、区分曲線を3次ベジェ関数により近似する際に、区分曲線上の特徴となる一点を区分の始点と終点を結ぶ線分より距離が最大となる点として抽出し、この特徴点よりベジェ曲線を決定するためのコントロールポイント(C1、C2)を一意に決定することで、演算処理量を大幅に減少することができる。本実施形態における処理は膨大な輪郭データをベジェ曲線で近似する際、高速に近似処理を実行しようとした場合に非常に有効である。   As described above, when approximating a segment curve by a cubic Bezier function, one point that is a feature on the segment curve is extracted as a point having the maximum distance from the segment connecting the segment start and end points. By uniquely determining control points (C1, C2) for determining a Bezier curve, the amount of calculation processing can be greatly reduced. The process according to the present embodiment is very effective when an approximation process is to be executed at high speed when a large amount of contour data is approximated by a Bezier curve.

<第2実施形態>
先の第1実施形態では、5つの点(2つのアンカーポイント、2つのコントロールポイント、1つの特徴点)に基づいてベジェ関数による近似処理を行う内容を説明したが、例えば、図3のステップS302において実行した曲線分割の精度によっては、区分曲線の点列に対して近似の精度が悪くなる場合もある。そのような場合には、関数近似が良好に行われているか判断し、その結果に基づいて再度関数近似を行うことで関数近似における精度を向上させることができる。
Second Embodiment
In the previous first embodiment, the content of performing the approximation process by the Bezier function based on five points (two anchor points, two control points, one feature point) has been described. For example, step S302 in FIG. Depending on the accuracy of the curve division executed in step 1, the accuracy of approximation for the point sequence of the segment curve may be deteriorated. In such a case, it is possible to improve the accuracy in function approximation by determining whether function approximation is performed well and performing function approximation again based on the result.

図9は第2実施形態の処理を説明する図である。点線で表した区分曲線の点列Ldに対し、線分P0P3との距離が最大となる特徴点Pd(距離をDdとする)を用いて区分曲線Ldをベジェ関数により近似して曲線L0’が求められたとする。ここで、曲線L0’を求める処理は第1実施形態における処理と同様であるので、ここでは説明を省略する。   FIG. 9 is a diagram for explaining the processing of the second embodiment. The segment curve Ld is approximated by a Bezier function using a feature point Pd (distance is Dd) having the maximum distance from the line segment P0P3 with respect to the segment curve point sequence Ld represented by a dotted line, and a curve L0 ′ is obtained. Suppose you are asked. Here, the process for obtaining the curve L0 'is the same as the process in the first embodiment, and thus the description thereof is omitted here.

CPU114は、関数の近似による曲線L0’上の点Pf(線分P0P3と最大の距離を与える近似曲線上の点)と、区分曲線上の特徴点Pdとの比較を行い、両者の位置座標の差分(Δx、Δy(=Dd-Df))が許容閾値座標(Δxalw、Δyalw)の範囲内に入る場合、CPU114は曲線の関数近似は良好に行われたと判断し、分割した区分及び区分曲線を近似した関数を確定する。   The CPU 114 compares the point Pf on the curve L0 ′ by approximation of the function (the point on the approximate curve that gives the maximum distance from the line segment P0P3) with the feature point Pd on the piecewise curve, and determines the position coordinates of both. If the difference (Δx, Δy (= Dd−Df)) falls within the range of the allowable threshold coordinates (Δxalw, Δyalw), the CPU 114 determines that the function approximation of the curve has been performed well, and determines the divided segments and segmented curves. Determine the approximate function.

一方、位置座標の差分(Δx、Δy(=Dd-Df))が許容閾値座標(Δxalw、Δyalw)より大きい場合、CPU114は、最初の区分の分割に基づく関数近似は誤差が大きく、本来の区分曲線を描いていない可能性が高いと判断する。この際、分割した区分を更に再分割するために、CPU114は、点pdを新たなアンカーポイントとして設定し、最初に分割した区分P0〜P3の範囲を、P0〜PdとPd〜P3の2つの区分に分割し、それぞれの区分曲線に対して、第1実施形態で説明した内容に従って、関数近似処理を行う。新たなアンカーポイントを加えて区分の再分割を補間することにより関数の近似精度を高めることが可能になる。   On the other hand, when the difference between the position coordinates (Δx, Δy (= Dd−Df)) is larger than the allowable threshold coordinates (Δxalw, Δyalw), the CPU 114 has a large error in the function approximation based on the division of the first division. Judge that there is a high possibility of not drawing a curve. At this time, in order to further subdivide the divided sections, the CPU 114 sets the point pd as a new anchor point, and sets the ranges of the divided sections P0 to P3 to two of P0 to Pd and Pd to P3. Dividing into sections, function approximation processing is performed on each section curve in accordance with the contents described in the first embodiment. By adding a new anchor point and interpolating the subdivision of the section, it is possible to increase the approximation accuracy of the function.

CPU114は、区分の再分割後、更に、位置座標の差分と許容範囲との比較を行い、許容範囲内に位置座標の差分が入らない場合は、更に、区分の分割を繰り返して、曲線近似の誤差が許容範囲に入るように区分の分割を修正することができる。本実施形態によれば、近似したベジェ曲線の精度判定を分割した区分ごとに行うことにより、近似計算の精度を確保することが可能になる。   After the subdivision of the segment, the CPU 114 further compares the difference of the position coordinates with the allowable range. If the difference of the position coordinate does not fall within the allowable range, the CPU 114 further repeats the division of the segment to approximate the curve. The segmentation can be modified so that the error is within an acceptable range. According to the present embodiment, the accuracy of the approximate calculation can be ensured by performing the accuracy determination of the approximate Bezier curve for each divided section.

<第3実施形態>
先の第1実施形態では、5つの点(2つのアンカーポイント、2つのコントロールポイント、1つの特徴点)に基づいてベジェ関数による近似処理を行う内容を説明したが、例えば、ステップS1130の処理において、線分p1pNとの関係で、一つの特徴点の他その近傍の複数の点に関して、RAM113またはディスクドライブ117に格納されている複数の特徴点をCPU114が順次読み出し、各点に基づくベジェ曲線を求め、曲線分割した輪郭点列に最も適合する(例えば、対応する点の位置誤差が最小となる条件を満たす)近似曲線を決定するようにしてもよい。
<Third Embodiment>
In the first embodiment, the content of performing the approximation process by the Bezier function based on the five points (two anchor points, two control points, and one feature point) has been described. For example, in the process of step S1130 The CPU 114 sequentially reads out a plurality of feature points stored in the RAM 113 or the disk drive 117 for a plurality of points in the vicinity of one feature point in relation to the line segment p1pN, and a Bezier curve based on each point is obtained. It is also possible to determine an approximate curve that is most suitable for the contour point sequence obtained by curve division (for example, satisfying the condition that the position error of the corresponding point is minimum).

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

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

プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。   As a storage medium for supplying the program code, for example, a flexible 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 can be used.

また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働している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 storage medium is written into 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.

実施形態にかかるコンピュータシステム100のブロック図である。1 is a block diagram of a computer system 100 according to an embodiment. 入力した電子化データに基づき、画像源の輪郭をアウトライン関数近似により表して、ベクトル化する処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of the process which represents the outline of an image source by outline function approximation based on the input digitized data, and vectorizes it. 角点間の曲線を構成する点列をベジェ関数に置きかえる処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of the process which replaces the point sequence which comprises the curve between corner points with a Bezier function. (a)は2値画像ラスターデータの例を示し、(b)は抽出した輪郭点を示す図である。(a) shows an example of binary image raster data, and (b) shows the extracted contour points. 輪郭点列として文字"S"を想定した場合の例を示す図である。It is a figure which shows the example at the time of assuming character "S" as an outline point sequence. 曲線分割の例を具体的に示す図である。It is a figure which shows the example of a curve division concretely. 曲線分割の処理流れを説明するフローチャートである。It is a flowchart explaining the processing flow of curve division. 区分曲線p1pN,pNpM,pMpQ,・・を示す図である。It is a figure which shows division | segmentation curve p1pN, pNpM, pMpQ, .... CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理を説明する図である。It is a figure explaining the process which approximates the division | segmentation curve which the CPU114 performed by the Bezier curve simply. 第2実施形態の処理を説明する図である。It is a figure explaining the process of 2nd Embodiment. 区分曲線を近似するベジェ曲線の例を示す図である。It is a figure which shows the example of the Bezier curve which approximates a segment curve. CPU114が実行する分割した区分曲線を簡易にベジェ曲線で近似する処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of the process which CPU114 performs and approximates the division | segmentation curve divided easily by a Bezier curve. アンカーポイントに基づく線分に対して、最大距離(Df)を求めるための処理の流れを説明するフローチャートである。It is a flowchart explaining the flow of the process for calculating | requiring the maximum distance (Df) with respect to the line segment based on an anchor point. ベジェ曲線の導出処理を簡易に行うために設定する特徴点を説明する図である。It is a figure explaining the feature point set in order to perform the derivation | leading-out process of a Bezier curve easily. 分割した区分の始点、終点、特徴点、コントロールの位置情報を格納手段に格納した状態を示す図である。It is a figure which shows the state which stored the starting point of the division | segmentation divided | segmented, the end point, the feature point, and the positional information on the control in the storage means.

Claims (10)

2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理装置において、
入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割手段と、
前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定手段と、
前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するするコントロールポイント決定手段と、
前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算手段と、
を備えることを特徴とする情報処理装置。
In an information processing apparatus that outlines binary image data using a Bezier curve,
A curve dividing unit that divides a contour point sequence of a binary image extracted from input digitized data into contour segments that can be approximated by a Bezier curve, and stores position information of a start point and an end point of the divided segment in a storage unit;
At least one point in the contour point sequence belonging to the divided contour segment is determined as a feature point that satisfies the first distance condition for the first line segment specified by connecting the start point and the end point of the segmented segment. , Feature point determination means for storing position information of the determined feature points in the storage means;
Position information on a second line segment that satisfies the second distance condition for the first line segment and parallel to the first line segment, and position information on a tangent to each of the start point and end point of the divided section, respectively In comparison, control point determination means for determining the intersection point where the position information coincides as a control point, and storing the position information of the determined control point in the storage means,
Approximation calculation means for reading position information at the start point and end point of the section, the feature point and the control point from the storage means, and approximating the divided contour section with the Bezier curve;
An information processing apparatus comprising:
前記特徴点決定手段は、前記分割した区分の始点及び終点により特定される第1線分に対する各輪郭点の距離をそれぞれ演算し、当該演算結果の比較により距離が最大になる輪郭点を特徴点として決定することを特徴とする請求項1に記載の情報処理装置。 The feature point determination means calculates the distance of each contour point with respect to the first line segment specified by the start point and the end point of the divided sections, and determines the contour point having the maximum distance by comparing the calculation results. The information processing apparatus according to claim 1, wherein the information processing apparatus is determined as: 前記コントロールポイント決定手段により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the second line segment obtained by the control point determination unit satisfies a relationship of second distance condition = (4/3) × first distance condition. 前記近似演算手段は、前記特徴点と、当該特徴点に対応する近似したベジェ曲線上の点との位置情報を比較して、当該位置情報が許容閾値座標値の範囲内にある場合は、前記近似した曲線を確定し、
前記比較の結果、前記位置情報が前記許容閾値座標値の範囲にない場合、前記曲線分割手段は、特徴点決定手段により決定された前記特徴点の位置において、前記分割された輪郭の区分を更に再分割することを特徴とする請求項1に記載の情報処理装置。
The approximate calculation means compares position information between the feature point and a point on the approximated Bezier curve corresponding to the feature point, and when the position information is within a range of allowable threshold coordinate values, Confirm the approximated curve,
As a result of the comparison, when the position information is not within the range of the allowable threshold coordinate value, the curve dividing means further divides the divided contour division at the feature point position determined by the feature point determining means. The information processing apparatus according to claim 1, wherein the information processing apparatus is subdivided.
2値画像のデータをベジェ曲線を用いてアウトライン化する情報処理方法において、
入力した電子化データから抽出した2値画像の輪郭点列をベジェ曲線で近似できる輪郭の区分に分割し、当該分割した区分の始点及び終点の位置情報を格納手段に格納する曲線分割工程と、
前記分割した輪郭の区分内に属する輪郭点列の内から少なくとも一つの点を、前記分割した区分の始点及び終点を結び特定される第1線分に対する第1距離条件を満たす特徴点として決定し、当該決定した特徴点の位置情報を格納手段に格納する特徴点決定工程と、
前記第1線分に対する第2距離条件を満たし、かつ当該第1線分と平行な第2線分上の位置情報と、前記分割した区分の始点及び終点それぞれに対する接線上の位置情報とをそれぞれ比較して、両位置情報が一致する交点をコントロールポイントとして決定し、当該決定したコントロールポイントの位置情報を格納手段に格納するするコントロールポイント決定工程と、
前記区分の始点及び終点、前記特徴点及び前記コントロールポイントにおける位置情報を前記格納手段より読み出し、前記分割した輪郭の区分を前記ベジェ曲線で近似する近似演算工程と、
を備えることを特徴とする情報処理方法。
In an information processing method for outlining binary image data using a Bezier curve,
A curve dividing step of dividing a contour point sequence of a binary image extracted from input digitized data into contour sections that can be approximated by a Bezier curve, and storing position information of a start point and an end point of the divided section in a storage unit;
At least one point in the contour point sequence belonging to the divided contour segment is determined as a feature point that satisfies the first distance condition for the first line segment specified by connecting the start point and the end point of the segmented segment. A feature point determination step of storing the position information of the determined feature point in the storage means;
Position information on a second line segment that satisfies the second distance condition for the first line segment and parallel to the first line segment, and position information on a tangent to each of the start point and end point of the divided section, respectively In comparison, the control point determination step of determining the intersection point where both the position information matches as a control point, and storing the determined control point position information in the storage means,
An approximate calculation step of reading position information at the start point and end point of the section, the feature point and the control point from the storage means, and approximating the divided contour section with the Bezier curve;
An information processing method comprising:
前記特徴点決定工程は、前記分割した区分の始点及び終点により特定される第1線分に対する各輪郭点の距離をそれぞれ演算し、当該演算結果の比較により距離が最大になる輪郭点を特徴点として決定することを特徴とする請求項5に記載の情報処理方法。 The feature point determination step calculates the distance of each contour point with respect to the first line segment specified by the start point and the end point of the divided sections, and the contour point that maximizes the distance by comparing the calculation results is the feature point. The information processing method according to claim 5, wherein the information processing method is determined. 前記コントロールポイント決定工程により求められる前記第2線分は、第2距離条件=(4/3)×第1距離条件の関係を満たすことを特徴とする請求項5に記載の情報処理方法。 6. The information processing method according to claim 5, wherein the second line segment obtained by the control point determination step satisfies a relationship of second distance condition = (4/3) × first distance condition. 前記近似演算工程は、前記特徴点と、当該特徴点に対応する近似したベジェ曲線上の点との位置情報を比較して、当該位置情報が許容閾値座標値の範囲内にある場合は、前記近似した曲線を確定し、
前記比較の結果、前記位置情報が前記許容閾値座標値の範囲にない場合、前記曲線分割工程は、特徴点決定工程により決定された前記特徴点の位置において、前記分割された輪郭の区分を更に再分割することを特徴とする請求項5に記載の情報処理方法。
The approximate calculation step compares position information between the feature point and a point on the approximated Bezier curve corresponding to the feature point, and when the position information is within a range of allowable threshold coordinate values, Confirm the approximated curve,
As a result of the comparison, when the position information is not within the range of the allowable threshold coordinate value, the curve dividing step further divides the divided contour division at the feature point position determined by the feature point determining step. 6. The information processing method according to claim 5, wherein re-division is performed.
コンピュータで実行するための処理を、請求項5乃至請求項8のいずれか1項に記載の情報処理方法により特定することを特徴とする情報処理プログラム。 An information processing program for specifying processing to be executed by a computer by the information processing method according to any one of claims 5 to 8. 請求項9に記載の情報処理プログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。 A computer-readable storage medium storing the information processing program according to claim 9.
JP2004130192A 2004-04-26 2004-04-26 Information processing apparatus and information processing method Expired - Fee Related JP4378208B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004130192A JP4378208B2 (en) 2004-04-26 2004-04-26 Information processing apparatus and information processing method
US11/109,851 US7873218B2 (en) 2004-04-26 2005-04-20 Function approximation processing method and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004130192A JP4378208B2 (en) 2004-04-26 2004-04-26 Information processing apparatus and information processing method

Publications (3)

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

Family

ID=35438728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004130192A Expired - Fee Related JP4378208B2 (en) 2004-04-26 2004-04-26 Information processing apparatus and information processing method

Country Status (1)

Country Link
JP (1) JP4378208B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116399A (en) * 2007-11-01 2009-05-28 Hitachi-Ge Nuclear Energy Ltd Support device for document information management, method for electronic processing raster data with the device, program for electronic processing, and recording medium
JP2009271700A (en) * 2008-05-07 2009-11-19 Canon Inc Image processing apparatus and image processing method
JP2010113431A (en) * 2008-11-04 2010-05-20 Konica Minolta Business Technologies Inc Image processor, image processing method, and image processing program
JP2011013897A (en) * 2009-07-01 2011-01-20 Canon Inc Image processing device, image processing method and program
JP2011210159A (en) * 2010-03-30 2011-10-20 Canon Inc Image processing method, image processor, program and storage medium
JP2012053691A (en) * 2010-09-01 2012-03-15 Canon Inc Image processing method, image processor, and program
US8422774B2 (en) 2010-03-23 2013-04-16 Canon Kabushiki Kaisha Image processing method, image processing apparatus and program storage medium
US8774524B2 (en) 2010-03-18 2014-07-08 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and storage medium of image processing method
US9035952B2 (en) 2010-03-30 2015-05-19 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable medium
WO2017187547A1 (en) * 2016-04-27 2017-11-02 株式会社島津製作所 Data processing method and device
CN111461136A (en) * 2019-01-21 2020-07-28 北京海益同展信息科技有限公司 Data processing method, device, system and computer readable storage medium
CN112215272A (en) * 2020-09-29 2021-01-12 重庆大学 Bezier curve-based image classification neural network attack method
CN113360102A (en) * 2021-06-01 2021-09-07 深圳市创想三维科技有限公司 Method and device for generating print file, computer equipment and storage medium
CN116309837A (en) * 2023-03-16 2023-06-23 南京理工大学 Method for identifying and positioning damaged element by combining characteristic points and contour points

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5600524B2 (en) 2010-08-27 2014-10-01 キヤノン株式会社 Image processing apparatus, image processing method, program, and storage medium
JP5597096B2 (en) 2010-10-18 2014-10-01 キヤノン株式会社 Image processing apparatus, image processing method, and program

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116399A (en) * 2007-11-01 2009-05-28 Hitachi-Ge Nuclear Energy Ltd Support device for document information management, method for electronic processing raster data with the device, program for electronic processing, and recording medium
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
JP2010113431A (en) * 2008-11-04 2010-05-20 Konica Minolta Business Technologies Inc Image processor, image processing method, and image processing program
JP2011013897A (en) * 2009-07-01 2011-01-20 Canon Inc Image processing device, image processing method and program
US8774524B2 (en) 2010-03-18 2014-07-08 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and storage medium of image processing method
US8422774B2 (en) 2010-03-23 2013-04-16 Canon Kabushiki Kaisha Image processing method, image processing apparatus and program storage medium
US8643649B2 (en) 2010-03-30 2014-02-04 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable medium
JP2011210159A (en) * 2010-03-30 2011-10-20 Canon Inc Image processing method, image processor, program and storage medium
US9035952B2 (en) 2010-03-30 2015-05-19 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and computer-readable medium
JP2012053691A (en) * 2010-09-01 2012-03-15 Canon Inc Image processing method, image processor, and program
US8787677B2 (en) 2010-09-01 2014-07-22 Canon Kabushiki Kaisha Image processing method, image processing apparatus, and program
WO2017187547A1 (en) * 2016-04-27 2017-11-02 株式会社島津製作所 Data processing method and device
CN111461136A (en) * 2019-01-21 2020-07-28 北京海益同展信息科技有限公司 Data processing method, device, system and computer readable storage medium
CN111461136B (en) * 2019-01-21 2023-12-08 京东科技信息技术有限公司 Data processing method, device, system and computer readable storage medium
CN112215272A (en) * 2020-09-29 2021-01-12 重庆大学 Bezier curve-based image classification neural network attack method
CN113360102A (en) * 2021-06-01 2021-09-07 深圳市创想三维科技有限公司 Method and device for generating print file, computer equipment and storage medium
CN116309837A (en) * 2023-03-16 2023-06-23 南京理工大学 Method for identifying and positioning damaged element by combining characteristic points and contour points
CN116309837B (en) * 2023-03-16 2024-04-26 南京理工大学 Method for identifying and positioning damaged element by combining characteristic points and contour points

Also Published As

Publication number Publication date
JP4378208B2 (en) 2009-12-02

Similar Documents

Publication Publication Date Title
JP4378208B2 (en) Information processing apparatus and information processing method
US7747077B2 (en) Image processing apparatus, image processing method, and image processing program
JP5058681B2 (en) Information processing method and apparatus, program, and storage medium
US7873218B2 (en) Function approximation processing method and image processing method
JP5340088B2 (en) Information processing method and apparatus
US9922623B2 (en) Emboldening of outline fonts
US20220391553A1 (en) Building information modeling systems and methods
US20100008599A1 (en) Resolution Converting Method
JP5137679B2 (en) Image processing apparatus and image processing method
KR101890536B1 (en) Method and system for differentially reducing data for comparative analysis between 3D design model data and laser scan data in construction stage
US6633680B2 (en) System, method and computer program product for small-font compression
JP5549261B2 (en) Image processing apparatus and image processing program
JP2000215315A (en) Graphic classifying method, graphic retrieving method, graphic classification and retrieval system, and recording medium
JP2011141664A (en) Device, method and program for comparing document
KR101839687B1 (en) Apparatus and method for retrieving model considering differences of level-of-detail between query and retrieval target models
JPH06274149A (en) Method and device for varying width of outline font
US10395621B2 (en) Method, system and apparatus for modifying a font character
JPH10149438A (en) Axially symmetric graphic shaping device
JPWO2004055697A1 (en) Processing method, processing apparatus, and computer program
WO2009087815A1 (en) Similar document retrieval system, similar document retrieval method and recording medium
JP3305395B2 (en) Figure division device
KR102156336B1 (en) Method for reconstructing three-dimensional shape
JP2011028632A (en) Image processing apparatus, image processing method, program, and recording medium
JP4405822B2 (en) Trim inside / outside determination device and method
JPH05314268A (en) Method and device for extracting curved line

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090728

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090904

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090914

R150 Certificate of patent or registration of utility model

Ref document number: 4378208

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130918

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees