JP3883993B2 - Image processing apparatus, method, and program - Google Patents
Image processing apparatus, method, and program Download PDFInfo
- Publication number
- JP3883993B2 JP3883993B2 JP2003303000A JP2003303000A JP3883993B2 JP 3883993 B2 JP3883993 B2 JP 3883993B2 JP 2003303000 A JP2003303000 A JP 2003303000A JP 2003303000 A JP2003303000 A JP 2003303000A JP 3883993 B2 JP3883993 B2 JP 3883993B2
- Authority
- JP
- Japan
- Prior art keywords
- arc
- segment
- detection
- straight line
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Description
本発明は、入力画像の輪郭線形状を関数化処理する際にその前処理として輪郭線形状に含まれる直線や円弧等の特定形状の検出を行う画像処理装置、方法およびプログラムに関する。 The present invention relates to an image processing apparatus, method, and program for detecting a specific shape such as a straight line or an arc included in a contour shape as preprocessing when the contour shape of an input image is functionalized.
情報技術の進歩により、デスクトップパブリッシング(DTP)、テレビジョン放送、書籍などの画像を扱う技術分野の進展は著しく、より高精細、高美麗さのニーズも高まっている。また、パーソナルコンピュータとそれを取り巻く種々のデバイスの普及により、デジタル画像の高精細化、処理の高速化が進展し、特にJPEG、GIF、PNGなどに代表される画像の圧縮、拡大・縮小等の画像変換技術の進展は目覚しい。 Advances in information technology have made remarkable progress in the technical fields that handle images such as desktop publishing (DTP), television broadcasting, and books, and the need for higher definition and beauty is also increasing. In addition, with the spread of personal computers and various devices surrounding them, digital images have become higher in definition and higher in processing speed. In particular, image compression, enlargement / reduction, and the like represented by JPEG, GIF, PNG, etc. The progress of image conversion technology is remarkable.
しかし、これらの一般的なJPEG、GIF、PNGに代表されるピクセル符号化方式では、拡大時にジャギーノイズを生じるなど、画質が劣化してしまうため、関数符号化方式が提案されている。画像の輪郭を追跡し、それを関数近似することによって、ピクセル符号化画像を関数符号化画像へ自動的に変換する手法の研究が行われている(例えば、特許文献1参照。)。 However, pixel encoding methods represented by these general JPEG, GIF, and PNG have proposed a function encoding method because image quality deteriorates, for example, jaggy noise occurs during enlargement. Research has been conducted on a method of automatically converting a pixel-encoded image into a function-encoded image by tracking the contour of the image and approximating it (see, for example, Patent Document 1).
例えば、文字、イラスト、ロゴマークといった画像をフルーエンシ関数系により高精度に関数化することができる。フルーエンシ情報理論では、信号の滑らかさの基準を示す連続微分可能性に基づいたパラメータmを用いて信号空間を類別している。m次のフルーエンシ関数は、(m−2)回のみ連続微分可能な(m−1)次の区分的多項式から構成されている。画像関数近似では、輪郭線はその形状によった種類の関数を用いて近似される。m=2、m=3、m=∞のフルーエンシ関数はそれぞれ、直線、自由曲線、円弧を表現するのに用いられる。
ところで、上述した特許文献1に開示された手法では、輪郭線の形状を関数化処理する前処理として、明らかに直線と判断される部分を直線区間として検出し、このような直線と判断される部分が隣接する場合にはこれらの隣接部分を一つにして直線区間を延長する処理を行っている。このように、輪郭線の一部を構成する短い直線区間を延長し、輪郭線形状と直線との誤差が少ない場合にはこの直線区間を徐々に伸ばしていく方法では、誤差によって直線でないと判断される短い区間があると、その周辺が直線区間であっても、全体が一つの直線区間とは判断されないことになり、誤差の影響を受けやすいため、単一形状の長い区間検出が難しいという問題があった。検出される単一形状の区間は、長ければ長いほど、データ量の削減等の観点からは、その後に行われる近似関数の決定において有利である。また、直線区間の検出だけでなく、円弧区間を検出する場合にも同様の問題がある。
By the way, in the method disclosed in
本発明は、このような点に鑑みて創作されたものであり、その目的は、画素列に含まれる単一形状の長い区間検出を行うことができる画像処理装置、方法およびプログラムを提供することにある。 The present invention was created in view of the above points, and an object thereof is to provide an image processing apparatus, method, and program capable of detecting a long section of a single shape included in a pixel column. It is in.
上述した課題を解決するために、本発明の画像処理装置は、画像の入力を行う画像入力手段と、画像入力手段によって入力された画像の形状を示す複数のセグメントを抽出するセグメント抽出手段と、セグメント抽出手段によって抽出されたセグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、近似関数に対応する区間を検出する関数区間検出手段とを備えている。 In order to solve the above-described problems, an image processing apparatus of the present invention includes an image input unit that inputs an image, a segment extraction unit that extracts a plurality of segments indicating the shape of an image input by the image input unit, Function section detection that detects the section corresponding to the approximate function by reducing the segment length for the segment extracted by the segment extraction means, using the start and end points of this segment as the initial state until the error falls below the reference value Means.
また、本発明の画像処理方法は、画像の入力を行う第1のステップと、入力された画像の形状を示す複数のセグメントを抽出する第2のステップと、抽出されたセグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、近似関数に対応する区間を検出する第3のステップとを有している。 Further, the image processing method of the present invention includes a first step of inputting an image, a second step of extracting a plurality of segments indicating the shape of the input image, and the extracted segment. And a third step of detecting a section corresponding to the approximate function by reducing the segment length until the error becomes equal to or less than the reference value with the start point and end point of the segment as an initial state.
また、本発明の画像処理プログラムは、コンピュータを、画像の入力を行う画像入力手段と、画像入力手段によって入力された画像の形状を示す複数のセグメントを抽出するセグメント抽出手段と、セグメント抽出手段によって抽出されたセグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、近似関数に対応する区間を検出する関数区間検出手段として機能させる。 The image processing program according to the present invention includes a computer, an image input unit that inputs an image, a segment extraction unit that extracts a plurality of segments indicating the shape of an image input by the image input unit, and a segment extraction unit. With respect to the extracted segment, with the start and end points of this segment as the initial state, the segment length is decreased until the error becomes equal to or smaller than the reference value, and the segment is made to function as a function section detecting unit that detects a section corresponding to the approximate function. .
このように、画像の形状を示す各セグメントについてセグメント全体を初期状態として誤差が少なくなるまで徐々にセグメントを短くすることにより近似関数に対応する区間の検出が行われるため、近似関数に対応する短い区間を検出した後にこの区間を徐々に伸ばす場合に比べて、近似関数に対応する単一形状の長い区間を検出することが可能になる。 In this manner, since the segment corresponding to the approximate function is detected by gradually shortening the segment until the error is reduced with the entire segment as an initial state for each segment indicating the shape of the image, the short corresponding to the approximate function Compared to the case where the section is gradually extended after detecting the section, it is possible to detect a long section having a single shape corresponding to the approximate function.
また、上述したセグメント抽出手段は、画像の輪郭線に対応する画素列に含まれる接合点を抽出する接合点抽出手段と、接合点抽出手段によって抽出された接合点を境界として、画素列を複数のセグメントに分割するセグメント分割手段とを有することが望ましい。これにより、画像の輪郭線に含まれる近似関数に対応する区間をできるだけ長い状態で検出することができる。 In addition, the above-described segment extraction unit includes a junction point extraction unit that extracts a junction point included in the pixel column corresponding to the contour line of the image, and a plurality of pixel columns with the junction point extracted by the junction point extraction unit as a boundary. It is desirable to have segment dividing means for dividing into segments. Thereby, the section corresponding to the approximate function included in the contour line of the image can be detected in the longest possible state.
また、上述した接合点抽出手段は、画素列の前後の配置に基づいて、明らかな角点に相当する画素を接合点として抽出することが望ましい。明らかな角点のみを接合点として抽出することにより、接合点の設定位置が不適切であったために単一形状の長い区間が誤って分断されることを防止することができる。 Moreover, it is desirable that the junction point extraction unit described above extracts pixels corresponding to obvious corner points as junction points based on the arrangement of pixels before and after. By extracting only apparent corner points as joint points, it is possible to prevent a long section of a single shape from being erroneously divided due to an inappropriate joint point setting position.
また、上述した関数区間検出手段によって区間検出が行われる近似関数は直線であることが望ましい。これにより、画像の形状に含まれる長い直線部分の検出が可能になる。また、上述した関数区間検出手段によって区間検出が行われる近似関数は円弧であることが望ましい。これにより、画像の形状に含まれる長い円弧部分の検出が可能になる。 Moreover, it is desirable that the approximate function for which section detection is performed by the above-described function section detection means is a straight line. Thereby, it is possible to detect a long straight line portion included in the shape of the image. Further, it is desirable that the approximate function for which the section detection is performed by the above-described function section detecting means is a circular arc. As a result, a long arc portion included in the shape of the image can be detected.
また、上述した関数区間検出手段によって区間検出が行われる近似関数は直線と円弧であり、複数のセグメントのそれぞれについて、直線に対応する区間検出と円弧に対応する区間検出とが別々に行われることが望ましい。これにより、画像の形状に含まれる長い直線部分と長い円弧部分を検出することが可能になり、それぞれの検出結果を用いた最適な関数化処理を行うことができる。特に、上述した関数区間検出手段によって検出された円弧、直線、これらの円弧および直線以外の部分の順に、円弧、直線、自由曲線をそれぞれ当てはめて関数化処理を行う関数化処理手段をさらに備えることが望ましい。これにより、自由曲線よりも円弧や直線を優先させて関数化処理を行うことにより、関数化処理によるさらなるデータ量の削減が可能になる。また、上述した関数化処理手段は、関数区間検出手段によって検出された円弧と直線に共通の画素が含まれている場合に、円弧を優先させて関数化処理を行うことが望ましい。円弧は短い直線の集まりとして表現することもできるため、円弧を優先させることにより、精度の高い関数化処理を行うことが可能になる。 In addition, the approximation functions for which section detection is performed by the above-described function section detection means are straight lines and arcs, and for each of a plurality of segments, section detection corresponding to the straight lines and section detection corresponding to the arcs are performed separately. Is desirable. Accordingly, it is possible to detect a long straight line portion and a long arc portion included in the shape of the image, and it is possible to perform an optimum functionalization process using each detection result. In particular, it further includes a functionalization processing means for performing functionalization processing by applying an arc, a straight line, and a free curve in the order of the arc, straight line, and the portion other than the arc and the straight line detected by the above-described function section detection means. Is desirable. As a result, by performing function processing by giving priority to arcs and straight lines over free curves, it is possible to further reduce the amount of data by function processing. Further, it is preferable that the functionalization processing unit described above performs the functionalization processing by giving priority to the circular arc when the common pixel is included in the circular arc and the straight line detected by the functional section detection unit. Since an arc can also be expressed as a collection of short straight lines, it is possible to perform highly accurate function processing by giving priority to the arc.
また、上述した関数区間検出手段は、セグメントの全部あるいは一部を検出候補に設定し、この検出候補とその始点および終点を結ぶ直線との間の誤差が基準値を超える場合には検出候補を短くし、反対に誤差が基準値以下になった場合には検出候補を長くすることにより最終的に決定された検出候補を直線に対応する区間として検出することが望ましい。これにより、次第にセグメントに含まれる直線部分を絞っていって最終的に検出可能な最大長の直線部分を検出することが可能になる。 The function section detecting means described above sets all or part of the segments as detection candidates, and if the error between this detection candidate and the straight line connecting the start point and the end point exceeds the reference value, the detection candidate is selected. On the contrary, when the error is equal to or smaller than the reference value, it is desirable to detect the finally determined detection candidate as a section corresponding to a straight line by lengthening the detection candidate. As a result, it is possible to gradually narrow down the straight line portion included in the segment and detect the longest straight line portion that can be finally detected.
また、上述した関数区間検出手段は、セグメントの全部あるいは一部を検出候補に設定し、この検出候補とその始点、終点およびこれら以外の中間点を通る円弧との間の誤差が基準値を超える場合には検出候補を短くし、反対に誤差が基準値以下になった場合には検出候補を長くすることにより最終的に決定された検出候補を円弧に対応する区間として検出することが望ましい。これにより、次第にセグメントに含まれる円弧部分を絞っていって最終的に検出可能な最大長の円弧部分を検出することが可能になる。 The above-described function section detection means sets all or part of the segments as detection candidates, and the error between the detection candidate and the arc passing through the start point, end point, and other intermediate points exceeds the reference value. In this case, it is desirable to detect the detection candidate finally determined as a section corresponding to the arc by shortening the detection candidate and conversely increasing the detection candidate when the error is equal to or less than the reference value. As a result, it is possible to gradually narrow down the arc part included in the segment and detect the arc part of the maximum length that can be finally detected.
また、上述した関数区間検出手段は、それまでの検出候補の長さをLとしたときに、L/2だけ検出候補の長さを長くあるいは短くすることが望ましい。これにより、最終的に直線部分あるいは円弧部分を検出するまでの検出候補の長さを変更する回数の削減が可能になり、直線部分あるいは円弧部分の検出に要する時間を短縮することができる。 Further, it is desirable that the above-described function section detecting means lengthens or shortens the detection candidate by L / 2, where L is the length of the detection candidate so far. Thereby, it is possible to reduce the number of times of changing the length of the detection candidate until the straight line portion or the arc portion is finally detected, and the time required for detecting the straight portion or the arc portion can be shortened.
また、上述した関数区間検出手段は、検出候補を構成する各画素と検出対象となる近似関数との距離の二乗の平均値e1を誤差として計算することが望ましい。平均二乗誤差e1によって誤差の大小を評価することにより、画像の読み取り等において発生するノイズの影響を少なくすることができる。 Further, it is desirable that the above-described function section detecting means calculates an average value e1 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected as an error. By evaluating the magnitude of the error based on the mean square error e1, it is possible to reduce the influence of noise generated in image reading or the like.
また、上述した関数区間検出手段は、平均値e1とともに、検出候補を構成する各画素と検出対象となる近似関数との距離の二乗の最大値e2を誤差として計算することが望ましい。検出対象となる直線部分や円弧部分を長くすればするほど、これらの近似関数の形状に一致しない局所的な特異形状があっても平均二乗誤差e1が小さくなるため、この特異形状部分が無視されて関数化処理が行われやすくなる。しかし、最大二乗誤差e2が考慮されるため、局所的な特異形状が無視されることがなく、精度の高い関数化処理を行うことができる。 Further, it is desirable that the above-described function section detecting means calculates the maximum value e2 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected as an error together with the average value e1. The longer the straight line portion or arc portion to be detected, the smaller the mean square error e1 even if there is a local singular shape that does not match the shape of these approximate functions, so this singular shape portion is ignored. It becomes easy to perform functionalization processing. However, since the maximum square error e2 is taken into account, the local singular shape is not ignored, and highly accurate functionalization processing can be performed.
以下、本発明を適用した一実施形態の画像処理装置について、図面に基づいて詳細に説明する。 Hereinafter, an image processing apparatus according to an embodiment to which the present invention is applied will be described in detail with reference to the drawings.
図1は、一実施形態の画像処理装置の構成を示す図である。図1に示すように、本実施形態の画像処理装置は、画像処理演算部100、スキャナ200、キーボード210、マウス212、ディスプレイ装置220、プリンタ230を含んで構成されている。
FIG. 1 is a diagram illustrating a configuration of an image processing apparatus according to an embodiment. As shown in FIG. 1, the image processing apparatus according to this embodiment includes an image
スキャナ200は、ロゴマーク等の被写体を光学的に読み取って、白黒の二値画像を生成する。この生成された二値画像は、画像処理演算部100に入力される。キーボード210およびマウス212は、画像処理演算部100に対して利用者が各種の操作指示を行うために用いられる。例えば、スキャナ200を用いた画像取込の操作指示や、その後の関数化処理の演算開始指示、関数化処理された画像データから原画像への復元指示、復元の際の拡大倍率等がキーボード210やマウス212を用いて行われる。
The
ディスプレイ装置220は、各種の操作画面や、取り込んだ画像および関数化処理された画像データを用いて原画像を復元した結果等を表示する。プリンタ230は、復元された所定倍率の原画像を所定サイズの紙に印刷する。
The
画像処理演算部100は、入力画像に対して関数化処理を行うとともに、この関数化されたデータに基づいて画像を生成する処理を行う。このために、画像処理演算部100は、画像格納部110、画素列追跡部120、接合点抽出部130、セグメント分割部140、直線検出部150、円弧検出部160、関数化処理部170、出力画像生成部180を備えている。この画像処理演算部100は、CPU、ROM、RAMおよびハードディスク装置を備えたコンピュータによって実現することが可能であり、ROM、RAMあるいはハードディスク装置に格納された画像処理プログラムをCPUで実行することにより、画素列追跡部120、接合点抽出部130、セグメント分割部140、直線検出部150、円弧検出部160、関数化処理部170、出力画像生成部180の各機能が実現される。また、画像格納部110は、主にハードディスク装置によって実現される。
The image
画像格納部110は、スキャナ200を用いて読み取られた原画像に対応する画像データや、関数化処理等を行うために必要な中間データ、関数化処理によって得られた関数化データ等を格納する。
The
画素列追跡部120は、入力画像の輪郭線を構成する画素列に対して追跡処理を行う。例えば、二値化処理された後の入力画像に対してその輪郭線を抽出する処理が行われる。なお、二値化処理された入力画像の代わりに多値画像が入力された場合には、画素列追跡処理の前処理として二値化処理を行えばよい。また、カラー画像が入力された場合には、RGBの各色成分に分解した後に二値化処理を行って、各色成分毎に以後の処理を実施するようにしてもよい。
The pixel
接合点抽出部130は、画素列追跡部120による追跡によって得られた画素列の中から明らかな接合点を抽出する。ここで、接合点とは、その前後で画素列の傾向が変化する画素である。例えば、接合点抽出部130は、デジタル曲率に基づいて前後の輪郭線が所定角度以上屈曲した角点を明らかな接合点として抽出する。具体的には、輪郭線を構成する画素列の一点P0 に着目し、その前後に画素K個分だけ離れた点P1 、P2 を設定し、線分P0 P1 と線分P0 P2 のなす角度の余弦Cを計算する。そして、この計算した余弦Cが所定値(例えば−0.6)以上であるときに、この着目点を角点、すなわち明らかな接合点として抽出する。この計算を輪郭線を構成する画素列の全てについて行うことにより、画素列に含まれる全ての明らかな接合点が抽出される。
The junction
なお、上述した説明では、余弦Cが−0.6以上のときに着目点が角点であると判定したが、この判定の閾値(−0.6)は適宜変更してもよい。また、入力画像が回路図のように細線からなる場合には、入力画像そのものが輪郭線に相当し、しかも輪郭線を構成する画素列に分岐が含まれるため、この分岐を明らかな接合点として抽出するようにしてもよい。 In the above description, when the cosine C is −0.6 or more, the point of interest is determined to be a corner point. However, the threshold value (−0.6) for this determination may be changed as appropriate. When the input image is composed of thin lines as shown in the circuit diagram, the input image itself corresponds to the contour line, and the branch is included in the pixel column constituting the contour line. You may make it extract.
セグメント分割部140は、接合点抽出部130によって抽出された接合点を用いて、画素列追跡部120によって追跡された画素列を複数のセグメントに分割する。直線検出部150は、セグメント分割部140によって分割された各セグメントに含まれる直線部分を検出する。同様に、円弧検出部160は、セグメント分割部140によって分割された各セグメントに含まれる円弧部分を検出する。これらの直線部分および円弧部分の検出は、全てのセグメントを対象にして個別に行われるため、並行して行ってもよいし、前後して別々に行うようにしてもよい。本実施形態の画像処理装置では、最も長い直線部分や円弧部分を、後処理で延長することなく直接検出している点に特徴がある。
The
関数化処理部170は、セグメント分割部140によって複数に分割された各セグメント毎に、直線検出部150および円弧検出部160による検出結果を用いて関数化処理を行う。具体的には、自由曲線、円弧、直線のいずれかの関数を輪郭線形状に当てはめて関数化処理を行うが、円弧部分や直線部分はわずかに形状がゆがんでも不自然に感じるとともにデータ量削減の観点からも、これらを用いた関数化処理が可能な場合には自由曲線よりも優先的に円弧や直線による関数化処理を行う必要がある。また、円弧は短い直線の集まりでも表現できることから、直線よりも円弧を優先する方が好ましい。したがって、円弧検出部160によって検出された円弧部分に直線検出部150によって検出された直線部分が含まれている場合には、この共通する画素については円弧を用いて関数化処理される。それ以外の直線部分に含まれる画素については直線を用いて関数化処理され、円弧にも直線にも含まれない画素については自由曲線(例えば二次曲線)を用いて関数化処理される。
The
出力画像生成部180は、関数化処理部170によって得られた関数化データを用いて原画像を生成する。この原画像生成では倍率を指定することができ、原画像を指定された倍率で拡大した画像が生成される。
The output
上述したスキャナ200が画像入力手段に、接合点抽出部130、セグメント分割部140がセグメント抽出手段に、接合点抽出部130が接合点抽出手段に、セグメント分割部140がセグメント分割手段に、直線検出部150、円弧検出部160が関数区間検出手段に、関数化処理部170が関数化処理手段にそれぞれ対応する。
The above-described
本実施形態の画像処理装置はこのような構成を有しており、次にその動作を説明する。 The image processing apparatus according to the present embodiment has such a configuration, and the operation thereof will be described next.
図2は、本実施形態の画像処理装置の全体の動作手順を示す流れ図である。画像格納部110は、スキャナ200を用いて読み取られた画像が入力されると(ステップ100)、この入力画像データを格納する。
FIG. 2 is a flowchart showing an overall operation procedure of the image processing apparatus according to the present embodiment. When an image read using the
次に、画素列追跡部120は、入力画像の輪郭線を構成する画素列に対して追跡を行う(ステップ101)。また、接合点抽出部130は、追跡された画素列に含まれる明らかな接合点を抽出する(ステップ102)。セグメント分割部140は、抽出された接合点によって輪郭線を構成する画素列を複数のセグメントに分割する(ステップ103)。
Next, the pixel
次に、直線検出部150は、セグメント分割部140によって分割された一のセグメントを取り出してこのセグメントに含まれる直線部分を検出する(ステップ104)。なお、セグメントによっては直線部分が全く含まれない場合や複数個が離散的に含まれる場合が考えられる。直線検出部150は、一のセグメントについて直線部分の検出処理を終了すると、輪郭線を構成する全てのセグメントについて直線部分の検出処理が終了したか否かを判定する(ステップ105)。直線部分の検出処理が行われていないセグメントが存在する場合には否定判断が行われ、未処理の他のセグメントについてステップ104の直線部分の検出処理が繰り返される。
Next, the straight
また、輪郭線を構成する全てのセグメントについて直線部分の検出処理が終了するとステップ105の判定において肯定判断が行われ、次に、同様の手順で各セグメントについて円弧部分の検出が行われる。すなわち、円弧検出部160は、セグメント分割部140によって分割された一のセグメントを取り出してこのセグメントに含まれる円弧部分を検出する(ステップ106)。なお、セグメントによっては円弧部分が全く含まれない場合や複数個が離散的に含まれる場合が考えられる。円弧検出部160は、一のセグメントについて円弧部分の検出処理を終了すると、輪郭線を構成する全てのセグメントについて円弧部分の検出処理が終了したか否かを判定する(ステップ107)。円弧部分の検出処理が行われていないセグメントが存在する場合には否定判断が行われ、未処理の他のセグメントについてステップ106の円弧部分の検出処理が繰り返される。
Further, when the straight line portion detection processing is completed for all the segments constituting the contour line, an affirmative determination is made in the determination of
なお、上述した説明では、ステップ104、105において直線部分の検出動作を行った後にステップ106、107において円弧部分の検出動作を行ったが、これら2種類のの検出動作は、並行して行ったり、順番を反対にして行うようにしてもよい。
In the above description, the straight line portion detection operation is performed in
このようにして輪郭線を構成する全てのセグメントについて直線部分と円弧部分の検出が終了した後、関数化処理部170は、分割されたセグメント毎に、関数化処理(関数近似処理)を行う(ステップ108)。例えば、最初に、円弧検出部160によって検出された各円弧部分に対して円弧を当てはめる関数化処理を行い、次に、直線検出部150によって検出された直線部分に対して直線を当てはめる関数化処理を行い(直線部分の一部あるいは全部が円弧部分に含まれる場合には、その範囲については円弧による関数近似を優先させる)、最後に、円弧部分にも直線部分にも該当しない画素列に対して自由曲線を用いた関数化処理を行う。このようにして関数化処理された結果は画像格納部110に格納される(ステップ109)。出力画像生成部180は、関数化処理された結果を用いて、元の画像を所定倍率で拡大して復元する処理を行う。このようにして復元された画像がディスプレイ装置220の画面に表示されたり、プリンタ230から記録紙に印刷される(ステップ110)。
In this way, after the detection of the straight line portion and the arc portion is completed for all the segments constituting the contour line, the
次に、直線検出部150によって行われる直線部分の検出動作の詳細について説明する。図3、図4および図5は、直線検出部150による直線部分の検出動作の詳細を示す流れ図である。
Next, details of the straight line detection operation performed by the straight
まず、直線検出部150は、一のセグメントを読み込んで(ステップ200)、この読み込んだセグメントの始点と終点のそれぞれを比較直線の始点と終点に設定するとともに(ステップ201)、調整値Lをセグメント長に設定する(ステップ202)。ここで、「比較直線」とは、始点と終点が一致したセグメント(検出候補)と比較され、誤差算出が行われる直線である。また、「調整値L」とは、比較直線とセグメントとを比較した結果に応じて、処理対象となるセグメントの長さを増減する場合のその増減の長さであり、処理の途中で順次値が変更される。また、セグメント長は、隣接する画素間の距離をこれらの画素の配置状態にかかわらずに(左右上下に配置されている場合と斜め方向に配置されている場合とで区別することなく)1として、構成画素数で示したものである。
First, the straight
次に、直線検出部150は、比較直線とセグメントとの間の平均二乗誤差e1と最大二乗誤差e2を算出する(ステップ203、204)。ここで、平均二乗誤差e1とは、セグメントを構成する各画素から比較直線に下ろした垂線の長さを二乗した合計値をセグメントの画素数で割った値である。また、最大二乗誤差e2とは、セグメントの構成する各画素から比較直線に下ろした垂線の長さを二乗した値の最大値である。なお、平均二乗誤差e1と最大二乗誤差e2の計算の順番はどちらが先であってもよいし、並行して行うようにしてもよい。
Next, the straight
次に、直線検出部150は、平均二乗誤差e1が基準値E1未満で、かつ、最大二乗誤差e2が基準値E2未満であるか否かを判定する(ステップ205)。例えば、実験的評価からE1=0.2、E2=1.0に設定されている。これら2つの条件を満たす場合には肯定判断が行われ、次に、直線検出部150は、上述した比較線分を直線候補Dとして画像格納部110に格納して記憶した後(ステップ206)、比較直線の終点がセグメントの終点の初期値と一致するか否かを判定する(ステップ207)。セグメントの終点の初期値とは、ステップ200において読み込まれたセグメントの終点のことであり、輪郭線を分割した際の接合点に一致する。本実施形態では、セグメントの形状が比較直線にほぼ一致していて平均二乗誤差e1と最大二乗誤差e2がともに小さい場合には、セグメントの終点が延長された後に同様の判定処理が繰り返されるが、比較直線の終点がセグメントの終点の初期値と同じ場合にはこのような終点の延長を行うことができないため、このような場合には肯定判断が行われた後、直線検出部150は、直線候補Dを検出直線Sとして記憶する(ステップ214)。これにより、ステップ200において読み込まれた一のセグメントの全体に対する直線部分の検出動作が終了する。
Next, the
また、比較直線の終点とセグメントの終点の初期値とが一致しない場合にはステップ207の判定において否定判断が行われる。次に、直線検出部150は、調整値Lの値を半分にした後(ステップ208)、この変更後の調整値Lが所定値以下か否かを判定する(ステップ209)。上述したように、本実施形態では、セグメントの形状が比較直線にほぼ一致している場合に、セグメントの終点を延長するがこの延長する長さ(調整値L)は延長する回数が増えるにしたがってそれぞれ半分に減っていく(ステップ208)。したがって、調整値Lが小さな値に収束したときにステップ209において肯定判断が行われる。次に、直線検出部150は、直線候補Dを検出直線Sとして記憶する(ステップ211)。また、直線検出部150は、セグメントの始点を検出直線Sの終点に、セグメントの終点を初期値にそれぞれ設定した後(ステップ212)、この始点と終点が変更されたセグメントの長さが所定値以下であるか否かを判定する(ステップ213)。これは、あまりにも短いセグメントに対して直線部分の検出を行わないようにするための判定動作であり、セグメント長が短くなりすぎた場合には肯定判断が行われ、ステップ200において読み込まれた一のセグメントの全体に対する直線部分の検出動作が終了する。一方、セグメント長が所定値よりも長い場合にはステップ213の判定において否定判断が行われ、ステップ202に戻って、新しいセグメントについて直線部分を検出する動作が繰り返される。
If the comparison straight line end point does not match the segment end point initial value, a negative determination is made in
また、変更後の調整値Lが所定値よりも大きい場合にはステップ209の判定において否定判断が行われ、次に、直線検出部150は、セグメントの終点を調整値Lだけ終点の初期値側にずらした後(ステップ210)、ステップ203に戻って平均二乗誤差e1や最大二乗誤差e2の計算以降の動作が繰り返される。
If the adjusted value L after the change is larger than the predetermined value, a negative determination is made in the determination in
また、「平均二乗誤差e1が基準値E1未満、かつ、最大二乗誤差e2が基準値E2未満」という条件を満たさない場合、すなわち、平均二乗誤差e1が基準値E1以上であったり、あるいは、最大二乗誤差e2が基準値E2以上である場合にはステップ205の判定において否定判断が行われる。次に、直線検出部150は、セグメント長は所定値以下か否かを判定する(ステップ215)。この判定は、これ以上セグメント長を短くして直線部分の検出を継続するか否かを判定するために行われるものである。セグメント長が短くて所定値以下の場合には肯定判断が行われ、直線検出部150は、セグメントの始点を調整値Lだけ終点側にずらすとともに(ステップ216)、セグメントの終点を初期値に設定する(ステップ217)。このように、セグメントに含まれる直線部分が検出されずに比較直線とセグメントが徐々に短くなって所定値以下になってしまった場合には、ここでのセグメントの終点側の残りのセグメントを用いて新たに直線部分の検出動作を行うために新しいセグメントの始点と終点の再設定が行われた後、ステップ202に戻って直線部分を検出する動作が繰り返される。
Further, when the condition that “the mean square error e1 is less than the reference value E1 and the maximum square error e2 is less than the reference value E2” is not satisfied, that is, the mean square error e1 is greater than or equal to the reference value E1, or the maximum If the square error e2 is greater than or equal to the reference value E2, a negative determination is made in
また、セグメント長が所定値よりも大きい場合にはステップ215の判定において否定判断が行われる。次に、直線検出部150は、調整値Lの値を半分にするとともに(ステップ218)、セグメントの終点を調整値Lだけ始点側にずらしてセグメントを短くした後(ステップ219)、ステップ203に戻って平均二乗誤差e1や最大二乗誤差e2の計算以降の動作が繰り返される。
If the segment length is greater than the predetermined value, a negative determination is made in the determination in
図6および図7は、直線部分の検出の具体例を示す図である。直線検出部150は、最初は、セグメント分割部140によって分割された一のセグメントSG(0)の全体と、このセグメントSG(0)の始点S(0)と終点E(0)を通る比較直線とを比較し、平均二乗誤差e1と最大二乗誤差e2の両方が所定の条件を満たすか否かを調べる(図6(A))。
6 and 7 are diagrams illustrating a specific example of detection of a straight line portion. First, the straight
この例では条件を満たさないため、次に、セグメント長の半分に設定された調整値Lだけ始点S(0)側にずらしたセグメントSG(1)の新たな終点E(1)を設定した後(ステップ218、219)、この短くなったセグメントSG(1)と、このセグメントSG(1)の始点S(0)と終点E(1)を通る新たな比較直線とを比較し、平均二乗誤差e1と最大二乗誤差e2の両方が所定の条件を満たすか否かを調べる(図6(B))。
Since the condition is not satisfied in this example, after setting a new end point E (1) of the segment SG (1) shifted to the start point S (0) side by the adjustment value L set to half of the segment length. (
この例ではこれら2つの条件を満たしており、次に、さらに半分の値に変更された調整値Lだけ終点E(0)側にずらしたセグメントSG(2)の新たな終点E(2)を設定した後(ステップ208、210)、この少し長くなったセグメントSG(2)と、このセグメントSG(2)の始点S(0)と終点E(2)を通る新たな比較直線とを比較し、平均二乗誤差e1と最大二乗誤差e2の両方が所定の条件を満たすか否かを調べる(図6(C))。
In this example, these two conditions are satisfied. Next, a new end point E (2) of the segment SG (2) shifted to the end point E (0) side by the adjustment value L that has been further changed to a half value is set. After setting (
このようにして、セグメントの終点位置が順次変更され、最終的に始点S(0)の最も長い比較直線が検出直線Sとして検出される。一の検出直線Sが決定された後は、この検出直線S以外の残りの部分を検出対象としての新たなセグメントに設定し(ステップ212)、再度直線部分の検出動作が繰り返される。 In this way, the end point position of the segment is sequentially changed, and finally the comparison line having the longest start point S (0) is detected as the detection line S. After one detection straight line S is determined, the remaining part other than the detection straight line S is set as a new segment as a detection target (step 212), and the detection operation of the straight line part is repeated again.
なお、セグメント分割部140によって分割された一のセグメントSG(0)の始点S(0)近傍に直線部分が含まれない場合(図7(A))には、セグメント長をどれだけ短くしていっても平均二乗誤差e1や最大二乗誤差e2の両方が所定の条件を満たすようにはならない。このような場合には、終点E(0)側にずらした始点S(1)を有するあらたなセグメントが設定され(ステップ216、217)、再度直線部分の検出動作が繰り返される(図7(B))。
Note that when the straight line portion is not included in the vicinity of the start point S (0) of one segment SG (0) divided by the segment dividing unit 140 (FIG. 7A), how short the segment length is. However, both the mean square error e1 and the maximum square error e2 do not satisfy the predetermined condition. In such a case, a new segment having the start point S (1) shifted to the end point E (0) side is set (
円弧検出部160によって行われる円弧部分の検出動作についても上述した直線検出動作と基本的に同じであり、以下では相違点に着目して説明する。
The arc portion detection operation performed by the
図8、図9および図10は、円弧検出部160による円弧部分の検出動作の詳細を示す流れ図である。これらの図に示す流れ図は、図3〜図5に示した流れ図に含まれる比較直線を比較円弧に、直線候補Dを円弧候補Dに、検出直線Sを検出円弧Sにそれぞれ変更するとともにステップ数を改めた点が異なっており、動作手順自体は基本的に同じである。
8, 9 and 10 are flowcharts showing details of an arc portion detection operation by the
また、平均二乗誤差e1と最大二乗誤差e2の算出方法については、直線と円弧とでは異なっている。具体的には、セグメントの始点と終点の他に中間点を合わせた3点を通る円弧を比較円弧として設定し、この円弧の半径と円弧の中心からセグメントを構成する画素までの距離の差の二乗を用いて平均二乗誤差e1や最大二乗誤差e2が計算される。 Further, the calculation method of the mean square error e1 and the maximum square error e2 is different between the straight line and the arc. Specifically, an arc passing through three points including the start point and end point of the segment and the intermediate point is set as a comparison arc, and the difference between the radius of this arc and the distance from the center of the arc to the pixels constituting the segment is set. The mean square error e1 and the maximum square error e2 are calculated using the square.
なお、円弧検出の検出精度を高めるために以下の(1)〜(3)の工夫がなされている。 In order to improve the detection accuracy of arc detection, the following devices (1) to (3) are devised.
(1)比較円弧を設定する際の3点はセグメントの始点、終点、中間点を基本とするが、円弧の中心角が4π/3以上の場合、始点と終点が接近しすぎて、近似円のふれが大きくなってしまう。そのため、円弧の中心角が4π/3以上の場合は始点と始点からの中心角が4π/3となる点とこれらの中間点により比較円弧の設定を行う。 (1) The three points when setting a comparative arc are basically the start point, end point, and middle point of the segment. However, if the center angle of the arc is 4π / 3 or more, the start point and end point are too close, and the approximate circle Will increase. Therefore, when the center angle of the arc is 4π / 3 or more, the comparison arc is set by the start point, the point where the center angle from the start point is 4π / 3, and the intermediate point between them.
(2)比較円弧の中心角によって基準値E1、E2の値を変化させる。中心角の大きな比較円弧については、基準値E1、E2を大きくして判断の基準を甘くするようにする。 (2) The reference values E1 and E2 are changed according to the center angle of the comparative arc. For the comparative arc having a large central angle, the reference values E1 and E2 are increased to make the judgment criteria sweet.
(3)中心角に閾値を設け、あまりに中心角が小さな比較円弧は設定されないようにする。例えば、中心角がπ/2よりも小さな比較円弧は設定されないようにする。 (3) A threshold value is provided for the center angle so that a comparative arc having a too small center angle is not set. For example, a comparative arc whose center angle is smaller than π / 2 is not set.
図11、図12、図13および図14は、具体的な図形に対して直線検出と円弧検出を行った実験結果を示す図であり、本実施形態の手法と従来手法の両方を用いた結果が示されている。実験では図11に示す画像が用いられた。 FIGS. 11, 12, 13 and 14 are diagrams showing experimental results obtained by performing straight line detection and circular arc detection on a specific figure, and results using both the method of the present embodiment and the conventional method. It is shown. In the experiment, the image shown in FIG. 11 was used.
図12(A)、(B)には、本実施形態の手法によって検出された直線部分と円弧部分がそれぞれ示されている。これらの図に含まれる「×」は、検出された直線あるいは円弧の始点あるいは終点を示している。また、図12(A)において点線で囲まれた部分は直線として検出されたが、結果的には優先順位にしたがって円弧として関数近似された部分を表している。また、比較のために、図13(A)、(B)には従来の多段抽出法を用いて検出された直線部分と円弧部分がそれぞれ示されている。図14(A)、(B)には従来のDP(Dynamic Programming)法を用いて検出された直線部分と円弧部分がそれぞれ示されている。 12A and 12B show a straight line portion and an arc portion detected by the method of the present embodiment, respectively. “X” included in these drawings indicates the start point or end point of the detected straight line or arc. In FIG. 12A, a portion surrounded by a dotted line is detected as a straight line, but as a result, a portion approximated by a function as an arc according to the priority order is shown. For comparison, FIGS. 13A and 13B show a straight line portion and a circular arc portion detected using the conventional multistage extraction method, respectively. FIGS. 14A and 14B show a straight line portion and a circular arc portion detected by using a conventional DP (Dynamic Programming) method, respectively.
図12〜図14を比較して明らかなように、本実施形態の手法を用いることにより、従来手法に比べて、より長い直線部分、円弧部分を検出することに成功している。また、本実施形態の手法で検出した直線部分、円弧部分は、従来手法で検出した直線部分、円弧部分を包含していることがわかる。これは、従来手法が開始点から直線、円弧区間を徐々に延ばしていくアルゴリズムであるのに対して、本実施形態の手法はセグメント画素列の最大長から直線、円弧区間を徐々に削っていくアルゴリズムであるからであると思われる。 As apparent from comparison between FIGS. 12 to 14, by using the method of the present embodiment, it has succeeded in detecting a longer linear portion and arc portion than the conventional method. Further, it can be seen that the straight line portion and the circular arc portion detected by the method of the present embodiment include the straight line portion and the circular arc portion detected by the conventional method. This is an algorithm in which the conventional method gradually extends the straight line and the arc segment from the starting point, whereas the method of the present embodiment gradually cuts the straight line and the arc segment from the maximum length of the segment pixel row. It seems to be because it is an algorithm.
このように、画像の輪郭形状を示す各セグメントについてセグメント全体を初期状態として誤差が少なくなるまで徐々にセグメントを短くすることにより近似関数に対応する区間の検出が行われるため、近似関数に対応する短い区間を検出した後にこの区間を徐々に伸ばす場合に比べて、近似関数に対応する単一形状の長い区間を検出することが可能になる。 As described above, since the segment corresponding to the approximate function is detected by gradually shortening the segment until the error is reduced with the entire segment as an initial state for each segment indicating the contour shape of the image, the segment corresponds to the approximate function. It is possible to detect a long section of a single shape corresponding to the approximate function, compared to the case where this section is gradually extended after detecting a short section.
また、画像の輪郭線を構成する画素列の前後の配置に基づいて、明らかな角点に相当する画素を接合点として抽出することにより、画素列を複数のセグメントに分割しており、明らかな角点のみを接合点として抽出することにより、接合点の設定位置が不適切であったために単一形状の長い区間が誤って分断されることを防止することができる。 In addition, the pixel column is divided into a plurality of segments by extracting pixels corresponding to obvious corner points as junction points based on the arrangement of the pixel columns constituting the contour line of the image before and after. By extracting only the corner points as joint points, it is possible to prevent a long section of a single shape from being erroneously divided because the joint point setting position is inappropriate.
また、区間検出が行われる近似関数として直線あるいは円弧を採用することにより、画像の輪郭線形状に含まれる長い直線部分あるいは円弧部分の検出が可能になる。 In addition, by adopting a straight line or an arc as an approximation function for performing section detection, it becomes possible to detect a long straight line part or an arc part included in the contour shape of the image.
また、複数のセグメントのそれぞれについて、直線に対応する区間検出と円弧に対応する区間検出とを別々に行うことにより、画像の形状に含まれる長い直線部分と長い円弧部分の両方を検出することが可能になり、それぞれの検出結果を用いた最適な関数化処理を行うことができる。特に、上述した関数区間検出手段によって検出された円弧、直線、これらの円弧および直線以外の部分の順に、円弧、直線、自由曲線をそれぞれ当てはめて、自由曲線よりも円弧や直線を優先させて関数化処理を行うことにより、関数化処理によるさらなるデータ量の削減が可能になる。また、検出された円弧と直線が重複している場合に、円弧を優先させて関数化処理を行うことにより、精度の高い関数化処理を行うことが可能になる。 In addition, it is possible to detect both a long straight line part and a long arc part included in the shape of an image by separately performing a section detection corresponding to a straight line and a section detection corresponding to an arc for each of a plurality of segments. It becomes possible, and an optimal functionalization process using each detection result can be performed. In particular, arcs, straight lines, and free curves are applied in the order of arcs, straight lines, and portions other than these arcs and straight lines detected by the function section detection means described above, giving priority to arcs and straight lines over free curves. By performing the digitization process, it is possible to further reduce the data amount by the functionalization process. In addition, when the detected arc and the straight line overlap, it is possible to perform the functioning process with high accuracy by performing the functioning process by giving priority to the arc.
また、分割された各セグメントの全部あるいは一部を検出候補としてのセグメントに設定し、この検出候補としてのセグメントとその始点および終点を結ぶ直線との間の誤差が基準値を超える場合には検出候補としてのセグメントを短くし、反対に誤差が基準値以下になった場合には検出候補としてのセグメントを長くすることにより最終的な直線部分を検出することにより、次第にセグメントに含まれる直線部分を絞っていって最終的に検出可能な最大長の直線部分を検出することが可能になる。 In addition, all or a part of each divided segment is set as a detection candidate segment, and the error is detected when the error between the detection candidate segment and the straight line connecting the start point and end point exceeds the reference value. If the segment as a candidate is shortened, and the error is below the reference value, the final segment is detected by lengthening the segment as a candidate for detection. It becomes possible to detect the straight line portion of the maximum length that is finally narrowed down and detectable.
また、分割された各セグメントの全部あるいは一部を検出候補としてのセグメントに設定し、この検出候補としてのセグメントとその始点、終点およびこれらの中間点を通る円弧との間の誤差が基準値を超える場合には検出候補としてのセグメントを短くし、反対に誤差が基準値以下になった場合には検出候補としてのセグメントを長くすることにより最終的な円弧部分を検出することにより、次第にセグメントに含まれる円弧部分を絞っていって最終的に検出可能な最大長の円弧部分を検出することが可能になる。 In addition, all or a part of each divided segment is set as a detection candidate segment, and an error between the detection candidate segment and its starting point, end point, and an arc passing through these intermediate points sets a reference value. If it exceeds, the segment as the detection candidate is shortened.On the other hand, when the error is below the reference value, the segment as the detection candidate is lengthened to detect the final arc portion, thereby gradually becoming the segment. It becomes possible to detect the arc portion of the maximum length that can be finally detected by narrowing the included arc portion.
また、直線部分あるいは円弧部分の検出は、それまでの検出候補としてのセグメントのの長さをLとしたときに、L/2だけセグメント長を長くあるいは短くして行っており、これにより、最終的に直線部分あるいは円弧部分を検出するまでのセグメント長を変更する回数の削減が可能になり、直線部分あるいは円弧部分の検出に要する時間を短縮することができる。 In addition, the detection of the straight line portion or the circular arc portion is performed by increasing or decreasing the segment length by L / 2, where L is the length of the segment as the detection candidate so far. In particular, it is possible to reduce the number of times of changing the segment length until the linear portion or the arc portion is detected, and the time required for detecting the linear portion or the arc portion can be shortened.
また、平均二乗誤差e1によって誤差の大小を評価することにより、画像の読み取り等において発生するノイズの影響を少なくすることができる。また、検出対象となる直線部分や円弧部分を長くすればするほど、これらの近似関数の形状に一致しない局所的な特異形状があっても平均二乗誤差e1が小さくなるため、この特異形状部分が無視されて関数化処理が行われやすくなる。しかし、最大二乗誤差e2が考慮されるため、局所的な特異形状が無視されることがなく、精度の高い関数化処理を行うことができる。 Further, by evaluating the magnitude of the error based on the mean square error e1, it is possible to reduce the influence of noise generated in image reading or the like. In addition, the longer the straight line portion or arc portion to be detected, the smaller the mean square error e1 even if there is a local singular shape that does not match the shape of these approximate functions. It is ignored and functionalization is easy to be performed. However, since the maximum square error e2 is taken into account, the local singular shape is not ignored, and highly accurate functionalization processing can be performed.
なお、本発明は上記実施形態に限定されるものではなく、本発明の要旨の範囲内において種々の変形実施が可能である。上述した実施形態では、スキャナ200を用いて画像入力を行ったが、その他の入力装置(例えばデジタルカメラ)を用いたり、光磁気ディスク等に格納された画像データを読み込むことにより入力するようにしてもよい。
In addition, this invention is not limited to the said embodiment, A various deformation | transformation implementation is possible within the range of the summary of this invention. In the above-described embodiment, image input is performed using the
また、上述した実施形態では、画像の読み取り等において発生したノイズについては特に対策をしていないが、ノイズ対策を行うことでさらに精度の高い関数化処理を行うようにしてもよい。例えば、関数化処理の過程では、誤差の評価を行いながら適切な近似関数を選定することになるが、セグメント長が十分短い区間に対応する画素列に対しては自由曲線を用いた関数化処理が行われる場合が多い。このような場合には、隣接するセグメントの近似関数と比べて曲率が異なる場合にはこの自由曲線の部分はノイズであることが多い。このため、このような現象が発生した場合には、その発生状況をディスプレイ装置220の画面上に表示し、ノイズに相当する画素の削除の可否を操作者に問い合わせるようにしてもよい。
In the above-described embodiment, no particular countermeasure is taken for noise generated during image reading or the like, but more accurate functionalization processing may be performed by taking noise countermeasures. For example, in the process of functionalization, an appropriate approximation function is selected while evaluating the error, but the functionalization process using a free curve is applied to pixel columns corresponding to sections with sufficiently short segment lengths. Is often performed. In such a case, when the curvature is different from the approximate function of the adjacent segment, the free curve portion is often noise. For this reason, when such a phenomenon occurs, the state of occurrence may be displayed on the screen of the
また、上述した実施形態では、検出された直線と円弧とが重複している場合には、円弧を優先させて関数化処理が行われるため、図2に示すステップ106、107における円弧検出を先に行うとともに、円弧として検出された部分を除いた区間を対象にステップ104、105における直線検出を行うようにしてもよい。
In the above-described embodiment, when the detected straight line and the arc overlap, the arc is prioritized and the functionalization process is performed. Therefore, the arc detection in
100 画像処理演算部
110 画像格納部
120 画素列追跡部
130 接合点抽出部
140 セグメント分割部
150 直線検出部
160 円弧検出部
170 関数化処理部
180 出力画像生成部
200 スキャナ
210 キーボード
212 マウス
220 ディスプレイ装置
230 プリンタ
DESCRIPTION OF
Claims (27)
前記画像入力手段によって入力された画像の形状を示す複数のセグメントを抽出するセグメント抽出手段と、
前記セグメント抽出手段によって抽出されたセグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、円弧および直線のそれぞれに対応する区間を検出する関数区間検出手段と、を備え、
前記関数区間検出手段は、前記セグメントの全部あるいは一部を検出候補に設定し、この検出候補とその始点および終点を通る円弧あるいは直線との間の誤差が前記基準値を超える場合には前記検出候補を短くし、反対に前記誤差が前記基準値以下になった場合には前記検出候補を長くすることにより最終的に決定された前記検出候補を円弧あるいは直線に対応する区間として検出するとともに、前記検出候補の長さを増減する場合の増減の長さである調整値Lを最初は前記セグメントの長さの半分に設定し、2回目以降の増減における前記調整値Lを前回の1/2に設定することを特徴とする画像処理装置。 An image input means for inputting an image;
Segment extraction means for extracting a plurality of segments indicating the shape of the image input by the image input means;
For the segment extracted by the segment extractor, the segment start point and end point are set to the initial state, the segment length is decreased until the error falls below the reference value, and the sections corresponding to the arc and the straight line are detected. Function interval detecting means for performing,
The function section detecting means sets all or a part of the segment as a detection candidate, and when an error between the detection candidate and an arc or straight line passing through the start point and the end point exceeds the reference value, the detection is performed. When the candidate is shortened and, conversely, when the error is equal to or less than the reference value, the detection candidate finally determined by increasing the detection candidate is detected as a section corresponding to an arc or a straight line, The adjustment value L, which is the length of increase / decrease when increasing / decreasing the length of the detection candidate, is initially set to half the length of the segment, and the adjustment value L for the second and subsequent increases / decreases is set to 1/2 of the previous time. the image processing apparatus according to claim that you set.
前記セグメント抽出手段は、
前記画像の輪郭線に対応する画素列に含まれる接合点を抽出する接合点抽出手段と、
前記接合点抽出手段によって抽出された接合点を境界として、前記画素列を前記複数のセグメントに分割するセグメント分割手段と、
を有することを特徴とする画像処理装置。 In claim 1,
The segment extraction means includes
A junction point extracting means for extracting a junction point included in a pixel column corresponding to the contour line of the image;
Segment dividing means for dividing the pixel row into the plurality of segments with the joint point extracted by the joint point extracting means as a boundary;
An image processing apparatus comprising:
前記接合点抽出手段は、前記画素列の前後の配置に基づいて、明らかな角点に相当する画素を前記接合点として抽出することを特徴とする画像処理装置。 In claim 2,
The said junction point extraction means extracts the pixel corresponded to an obvious corner point as said junction point based on the arrangement | positioning before and behind the said pixel row | line | column.
前記関数区間検出手段は、前記複数のセグメントのそれぞれについて、直線に対応する区間検出と円弧に対応する区間検出とを別々に行うことを特徴とする画像処理装置。 In any one of Claims 1-3,
The function section detecting means separately performs section detection corresponding to a straight line and section detection corresponding to an arc for each of the plurality of segments.
前記関数区間検出手段によって検出された円弧、直線、これらの円弧および直線以外の部分の順に、円弧、直線、自由曲線をそれぞれ当てはめて関数化処理を行う関数化処理手段をさらに備えることを特徴とする画像処理装置。 In claim 4 ,
It further comprises functionalization processing means for performing functionalization processing by applying an arc, a straight line, and a free curve in the order of the arc, the straight line, and the portion other than the arc and the straight line detected by the function section detection means, An image processing apparatus.
前記関数化処理手段は、前記関数区間検出手段によって検出された円弧と直線に共通の画素が含まれている場合に、円弧を優先させて関数化処理を行うことを特徴とする画像処理装置。 In claim 5 ,
The image processing apparatus according to claim 1, wherein the functionalization processing unit prioritizes the arc to perform the functionalization processing when a common pixel is included in the arc and the straight line detected by the function section detection unit.
前記関数区間検出手段は、円弧に対応する区間を検出する場合に、前記検出候補の始点、終点およびこれら以外の中間点を通る円弧と前記検出区間との誤差を算出することを特徴とする画像処理装置。 The function section detecting means, when detecting a section corresponding to an arc, calculates an error between the detection section and an arc passing through the start point and end point of the detection candidate and other intermediate points. Processing equipment.
前記関数区間検出手段は、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の平均値e1を前記誤差として計算することを特徴とする画像処理装置。 In any one of Claims 1-7 ,
The function section detecting means calculates an average value e1 of a square of a distance between each pixel constituting the detection candidate and the approximate function to be detected as the error.
前記関数区間検出手段は、前記平均値e1とともに、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の最大値e2を前記誤差として計算することを特徴とする画像処理装置。 In claim 8 ,
The function section detecting means calculates, as the error, the maximum value e2 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected together with the average value e1. Processing equipment.
入力された画像の形状を示す複数のセグメントを抽出する第2のステップと、
抽出された前記セグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、円弧および直線のそれぞれに対応する区間を検出する第3のステップと、を備え、
前記第3のステップでは、前記セグメントの全部あるいは一部を検出候補に設定し、この検出候補とその始点および終点を通る円弧あるいは直線との間の誤差が前記基準値を超える場合には前記検出候補を短くし、反対に前記誤差が前記基準値以下になった場合には前記検出候補を長くすることにより最終的に決定された前記検出候補を円弧あるいは直線に対応する区間として検出するとともに、前記検出候補の長さを増減する場合の増減の長さである調整値Lを最初は前記セグメントの長さの半分に設定し、2回目以降の増減における前記調整値Lを前回の1/2に設定することを特徴とする画像処理方法。 A first step of inputting an image;
A second step of extracting a plurality of segments indicating the shape of the input image;
With respect to the extracted segment, the segment start point and the end point are set as initial states, the segment length is decreased until the error becomes equal to or less than the reference value, and a section corresponding to each of the arc and the straight line is detected. includes a step, the,
In the third step, all or a part of the segment is set as a detection candidate, and when an error between the detection candidate and an arc or straight line passing through the start point and the end point exceeds the reference value, the detection is performed. When the candidate is shortened and, conversely, when the error is equal to or less than the reference value, the detection candidate finally determined by increasing the detection candidate is detected as a section corresponding to an arc or a straight line, The adjustment value L, which is the length of increase / decrease when increasing / decreasing the length of the detection candidate, is initially set to half the length of the segment, and the adjustment value L for the second and subsequent increases / decreases is set to 1/2 of the previous time. an image processing method characterized that you set.
前記第2のステップは、
前記画像の輪郭線に対応する画素列に含まれる接合点を抽出する第4のステップと、
抽出された前記接合点を境界として、前記画素列を前記複数のセグメントに分割する第5のステップと、
を有することを特徴とする画像処理方法。 In claim 10 ,
The second step includes
A fourth step of extracting a junction point included in a pixel row corresponding to the contour line of the image;
A fifth step of dividing the pixel column into the plurality of segments with the extracted joint point as a boundary;
An image processing method comprising:
前記第4のステップは、前記画素列の前後の配置に基づいて、明らかな角点に相当する画素を前記接合点として抽出することを特徴とする画像処理方法。 In claim 11 ,
In the image processing method according to the fourth step, pixels corresponding to apparent corner points are extracted as the junction points based on the arrangement of the pixel rows before and after.
前記第3のステップでは、前記複数のセグメントのそれぞれについて、直線に対応する区間検出と円弧に対応する区間検出とが別々に行われることを特徴とする画像処理方法。 In any one of Claims 10-12 ,
In the third step, for each of the plurality of segments, section detection corresponding to a straight line and section detection corresponding to an arc are separately performed.
前記第3のステップにおいて検出された円弧、直線、これらの円弧および直線以外の部分の順に、円弧、直線、自由曲線をそれぞれ当てはめて関数化処理を行う第6のステップをさらに有することを特徴とする画像処理方法。 In claim 13 ,
The method further includes a sixth step of performing functionalization processing by applying an arc, a straight line, and a free curve in the order of the arc, the straight line, and the arc and the straight line other than the straight line detected in the third step, respectively. Image processing method.
前記第6のステップは、前記第3のステップにおいて検出された円弧と直線に共通の画素が含まれている場合に、円弧を優先させて関数化処理を行うことを特徴とする画像処理方法。 In claim 14 ,
The sixth step is an image processing method characterized in that when a common pixel is included in the arc and the straight line detected in the third step, the arc is given priority and the functionalization process is performed.
前記第3のステップは、円弧に対応する区間を検出する場合に、前記検出候補の始点、終点およびこれら以外の中間点を通る円弧と前記検出区間との誤差を算出することを特徴とする画像処理方法。 In any one of Claims 10-15,
The third step calculates an error between the detection section and an arc passing through the start point, end point, and other intermediate points of the detection candidate when detecting a section corresponding to the arc. Processing method.
前記第3のステップは、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の平均値e1を前記誤差として計算することを特徴とする画像処理方法。 In any one of Claims 10-16 ,
In the third step, an average value e1 of a square of the distance between each pixel constituting the detection candidate and the approximate function to be detected is calculated as the error.
前記第3のステップは、前記平均値e1とともに、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の最大値e2を前記誤差として計算することを特徴とする画像処理方法。 In claim 17 ,
In the third step, the maximum value e2 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected is calculated as the error together with the average value e1. Processing method.
画像の入力を行う画像入力手段と、
前記画像入力手段によって入力された画像の形状を示す複数のセグメントを抽出するセグメント抽出手段と、
前記セグメント抽出手段によって抽出されたセグメントに対して、このセグメントの始点と終点を初期状態として、誤差が基準値以下になるまでセグメント長を減少させて、円弧および直線のそれぞれに対応する区間を検出する関数区間検出手段と、
して機能させるための画像処理プログラムであって、
前記関数区間検出手段は、前記セグメントの全部あるいは一部を検出候補に設定し、この検出候補とその始点および終点を通る円弧あるいは直線との間の誤差が前記基準値を超える場合には前記検出候補を短くし、反対に前記誤差が前記基準値以下になった場合には前記検出候補を長くすることにより最終的に決定された前記検出候補を円弧あるいは直線に対応する区間として検出するとともに、前記検出候補の長さを増減する場合の増減の長さである調整値Lを最初は前記セグメントの長さの半分に設定し、2回目以降の増減における前記調整値Lを前回の1/2に設定する画像処理プログラム。 Computer
An image input means for inputting an image;
Segment extraction means for extracting a plurality of segments indicating the shape of the image input by the image input means;
For the segment extracted by the segment extractor, the segment start point and end point are set to the initial state, the segment length is decreased until the error falls below the reference value, and the sections corresponding to the arc and the straight line are detected. Function interval detecting means for
An image processing program for causing and,
The function section detecting means sets all or a part of the segment as a detection candidate, and when an error between the detection candidate and an arc or straight line passing through the start point and the end point exceeds the reference value, the detection is performed. When the candidate is shortened and, conversely, when the error is equal to or less than the reference value, the detection candidate finally determined by increasing the detection candidate is detected as a section corresponding to an arc or a straight line, The adjustment value L, which is the length of increase / decrease when increasing / decreasing the length of the detection candidate, is initially set to half the length of the segment, and the adjustment value L for the second and subsequent increases / decreases is set to 1/2 of the previous time. An image processing program to set.
前記セグメント抽出手段は、
前記画像の輪郭線に対応する画素列に含まれる接合点を抽出する接合点抽出手段と、
前記接合点抽出手段によって抽出された接合点を境界として、前記画素列を前記複数のセグメントに分割するセグメント分割手段と、
を有することを特徴とする画像処理プログラム。 In claim 19 ,
The segment extraction means includes
A junction point extracting means for extracting a junction point included in a pixel column corresponding to the contour line of the image;
Segment dividing means for dividing the pixel row into the plurality of segments with the joint point extracted by the joint point extracting means as a boundary;
An image processing program comprising:
前記接合点抽出手段は、前記画素列の前後の配置に基づいて、明らかな角点に相当する画素を前記接合点として抽出することを特徴とする画像処理プログラム。 In claim 20 ,
The image processing program characterized in that the junction point extraction means extracts pixels corresponding to obvious corner points as the junction points based on the front and rear arrangement of the pixel row.
前記関数区間検出手段は、前記複数のセグメントのそれぞれについて、直線に対応する区間検出と円弧に対応する区間検出とを別々に行うことを特徴とする画像処理プログラム。 In any one of Claims 19-21 ,
The image processing program characterized in that the function section detecting means separately performs section detection corresponding to a straight line and section detection corresponding to an arc for each of the plurality of segments.
コンピュータを、さらに、前記関数区間検出手段によって検出された円弧、直線、これらの円弧および直線以外の部分の順に、円弧、直線、自由曲線をそれぞれ当てはめて関数化処理を行う関数化処理手段として機能させるための画像処理プログラム。 In claim 22 ,
The computer further functions as functionalization processing means for performing functionalization processing by applying arcs, straight lines, and free curves in the order of arcs, straight lines, and portions other than these arcs and straight lines detected by the function section detection means. An image processing program for making
前記関数化処理手段は、前記関数区間検出手段によって検出された円弧と直線に共通の画素が含まれている場合に、円弧を優先させて関数化処理を行うことを特徴とする画像処理プログラム。 In claim 23 ,
An image processing program characterized in that the functionalization processing means prioritizes a circular arc and performs functionalization processing when a common pixel is included in the arc and the straight line detected by the function section detection means.
前記関数区間検出手段は、円弧に対応する区間を検出する場合に、前記検出候補の始点、終点およびこれら以外の中間点を通る円弧と前記検出区間との誤差を算出することを特徴とする画像処理プログラム。 The function section detecting means, when detecting a section corresponding to an arc, calculates an error between the detection section and an arc passing through the start point and end point of the detection candidate and other intermediate points. Processing program.
前記関数区間検出手段は、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の平均値e1を前記誤差として計算することを特徴とする画像処理プログラム。 In any one of Claims 19-25 ,
The function section detecting means calculates an average value e1 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected as the error.
前記関数区間検出手段は、前記平均値e1とともに、前記検出候補を構成する各画素と検出対象となる前記近似関数との距離の二乗の最大値e2を前記誤差として計算することを特徴とする画像処理プログラム。
In claim 26 ,
The function section detecting means calculates the maximum value e2 of the square of the distance between each pixel constituting the detection candidate and the approximate function to be detected as the error together with the average value e1. Processing program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003303000A JP3883993B2 (en) | 2003-08-27 | 2003-08-27 | Image processing apparatus, method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003303000A JP3883993B2 (en) | 2003-08-27 | 2003-08-27 | Image processing apparatus, method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005071243A JP2005071243A (en) | 2005-03-17 |
JP3883993B2 true JP3883993B2 (en) | 2007-02-21 |
Family
ID=34407118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003303000A Expired - Fee Related JP3883993B2 (en) | 2003-08-27 | 2003-08-27 | Image processing apparatus, method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3883993B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4086060B2 (en) * | 2005-08-17 | 2008-05-14 | トヨタ自動車株式会社 | Point sequence approximation method and point sequence approximation apparatus |
JP4770880B2 (en) * | 2008-06-20 | 2011-09-14 | コニカミノルタビジネステクノロジーズ株式会社 | Outline conversion method, image compression method using the same, outline conversion apparatus, image compression apparatus, outline conversion program, and image compression program |
JP5854774B2 (en) * | 2011-11-11 | 2016-02-09 | 株式会社Pfu | Image processing apparatus, straight line detection method, and computer program |
-
2003
- 2003-08-27 JP JP2003303000A patent/JP3883993B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005071243A (en) | 2005-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8170368B2 (en) | Correcting device and method for perspective transformed document images | |
US7054485B2 (en) | Image processing method, apparatus and system | |
JP3345350B2 (en) | Document image recognition apparatus, method thereof, and recording medium | |
US7916957B2 (en) | Line noise eliminating apparatus, line noise eliminating method, and line noise eliminating program | |
US20030031366A1 (en) | Image processing method and apparatus using self-adaptive binarization | |
JP3830998B2 (en) | Ruled line removal method and character recognition apparatus using the same | |
US20080056546A1 (en) | Character noise eliminating apparatus, character noise eliminating method, and character noise eliminating program | |
EP2545498B1 (en) | Resolution adjustment of an image that includes text undergoing an ocr process | |
JP4565396B2 (en) | Image processing apparatus and image processing program | |
JP3883993B2 (en) | Image processing apparatus, method, and program | |
JP4873554B2 (en) | Image distribution apparatus and image distribution method | |
JP4259949B2 (en) | Image creating apparatus, image creating program, and recording medium | |
JPH10283471A (en) | Method for processing picture and device therefor and record medium for recording picture processing program | |
JP4257264B2 (en) | Pattern matching device, image quality verification method, and image quality verification program | |
JPH10162102A (en) | Character recognition device | |
JP2858530B2 (en) | Edge enhancement device | |
US8643649B2 (en) | Image processing apparatus, image processing method, and computer-readable medium | |
JP2682416B2 (en) | Figure recognition device | |
JP4259950B2 (en) | Image recognition apparatus, image recognition program, and recording medium | |
JP2899383B2 (en) | Character extraction device | |
JP3585143B2 (en) | Character string extraction method and device | |
JP2778439B2 (en) | Figure recognition device | |
JP6684947B2 (en) | Reading system, reading device, program, and storage medium | |
JP2963508B2 (en) | Character extraction device | |
JP4230962B2 (en) | Image processing apparatus, image processing method, and image processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060808 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061004 |
|
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: 20061114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061115 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101124 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111124 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111124 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121124 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121124 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131124 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |