JPH0326878B2 - - Google Patents

Info

Publication number
JPH0326878B2
JPH0326878B2 JP59036110A JP3611084A JPH0326878B2 JP H0326878 B2 JPH0326878 B2 JP H0326878B2 JP 59036110 A JP59036110 A JP 59036110A JP 3611084 A JP3611084 A JP 3611084A JP H0326878 B2 JPH0326878 B2 JP H0326878B2
Authority
JP
Japan
Prior art keywords
segment
segments
valid
pattern
primitive
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
Application number
JP59036110A
Other languages
Japanese (ja)
Other versions
JPS60181883A (en
Inventor
Koji Ito
Yoshuki Yamashita
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP59036110A priority Critical patent/JPS60181883A/en
Publication of JPS60181883A publication Critical patent/JPS60181883A/en
Publication of JPH0326878B2 publication Critical patent/JPH0326878B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Character Discrimination (AREA)

Description

【発明の詳細な説明】 (技術分野) 本発明は文字認識装置、特に手書き文字を対象
とした文字認識装置におけるストローク抽出方法
に関する。
DETAILED DESCRIPTION OF THE INVENTION (Technical Field) The present invention relates to a character recognition device, and particularly to a stroke extraction method in a character recognition device for handwritten characters.

(背景技術) 従来ストロークを抽出する方法として、(1)文字
図形の輪郭を追跡することにより検出された輪郭
点系列について曲率を計算し、その曲率の大きな
値の点を分割点として輪郭系列を分割し、分割さ
れた系列を組合わせることによりストロークを抽
出する方法か、又は(2)文字図形パターンに細線化
処理を行なつて骨格化し、その骨格パターンの連
結性及び骨格パターンを追跡し急激な角度の変化
点等を検出してストロークを抽出する方法があ
る。
(Background technology) As a conventional method for extracting strokes, (1) the curvature is calculated for a series of contour points detected by tracing the contour of a character figure, and the points with large values of curvature are used as dividing points to divide the contour series. Either the strokes are extracted by dividing and combining the divided series, or (2) the character figure pattern is thinned to create a skeleton, and the connectivity of the skeleton pattern and the skeleton pattern are traced and the strokes are extracted. There is a method of extracting strokes by detecting points of change in angle.

しかしながら(1)の方法はストロークが集中する
とストロークの方向を見失い誤つた方向へストロ
ークを抽出し、さらに、文字図形パターンが大き
くなり文字図形パターンが複雑化すると、その処
理量が増大しそのため処理速度の低下を招き、(2)
の方法は、文字図形パターンを細線化する必要が
あるために、細線化によるパターンのひずみ、ヒ
ゲ等が発生しストロークが集中するとパターンの
連結性を誤ることがあり、ストロークが安定に抽
出できないという欠点があつた。
However, method (1) loses track of the stroke direction when strokes are concentrated and extracts strokes in the wrong direction.Furthermore, as the character/figure pattern becomes larger and more complex, the amount of processing increases, resulting in processing speed. (2)
In this method, since it is necessary to thin the character/figure pattern, distortion of the pattern, whiskers, etc. occur due to the thinning, and if the strokes are concentrated, the connectivity of the pattern may be incorrect, and the strokes cannot be extracted stably. There were flaws.

(発明の課題) 本発明は従来の技術の上記欠点を改善し、安定
で、しかも高速なストローク抽出を可能とするス
トローク抽出方法を提供するもので、その特徴
は、4方向のサブパターンより抽出されたセグメ
ントの接続点座標又は、交差点座標をもとに、不
必要なセグメントを削除し、有効なセグメントの
みを延長し、端点で接続するセグメントを合成
し、ストロークを抽出することにある。
(Problems to be solved by the invention) The present invention provides a stroke extraction method that improves the above-mentioned drawbacks of the conventional technology and enables stable and high-speed stroke extraction. The purpose of this method is to delete unnecessary segments, extend only valid segments, combine segments connected at end points, and extract strokes based on the connection point coordinates or intersection coordinates of the segments.

(発明の構成および作用) 第1図は、本発明の一実施例を示すブロツク図
である。1は2値パターン入力信号、2はパター
ンレジスタ、3は線幅計算部、4aは垂直サブパ
ターン抽出部、4bは水平サブパターン抽出部、
4cは左斜めサブパターン抽出部、4dは右斜め
サブパターン抽出部、5aは垂直セグメント抽出
部、5bは水平セグメント抽出部、5cは左斜め
セグメント抽出部、5dは右斜めセグメント抽出
部、6は、各セグメント抽出部で検出された原始
セグメントを格納する原始セグメントテーブルメ
モリ、7は、検出した各原始セグメント相互の接
続点座標、交差点座標を検出する接続点交差点検
出部、8は接続点座標、交差点座標を格納する接
続点・交差点テーブルメモリ、9は検出した接続
点、交差点テーブルメモリにより有効セグメント
を検出する有効セグメント検出部、10は、検出
した有効セグメントを格納する有効セグメントテ
ーブルメモリ、11は、検出された有効セグメン
トを合成し、ストロークを抽出するストローク抽
出部、12は抽出されたストロークを保存するス
トロークテーブルメモリをそれぞれ示す。
(Structure and operation of the invention) FIG. 1 is a block diagram showing an embodiment of the invention. 1 is a binary pattern input signal, 2 is a pattern register, 3 is a line width calculation section, 4a is a vertical sub-pattern extraction section, 4b is a horizontal sub-pattern extraction section,
4c is a left diagonal sub-pattern extraction section, 4d is a right diagonal sub-pattern extraction section, 5a is a vertical segment extraction section, 5b is a horizontal segment extraction section, 5c is a left diagonal segment extraction section, 5d is a right diagonal segment extraction section, and 6 is a right diagonal segment extraction section. , a primitive segment table memory that stores the primitive segments detected by each segment extracting unit; 7 a connecting point intersection detection unit that detects the connecting point coordinates and intersection coordinates of each of the detected primitive segments; 8 a connecting point coordinate; 9 is a connection point/intersection table memory that stores intersection coordinates; 9 is a valid segment detection unit that detects valid segments using detected connection points and intersection table memory; 10 is a valid segment table memory that stores detected valid segments; , a stroke extractor which combines the detected effective segments and extracts strokes, and 12 a stroke table memory which stores the extracted strokes.

2値パターン入力信号1は、パターンレジスタ
2に格納される。同時に線幅計算部3において入
力パターンの線幅が計算される。垂直サブパター
ン抽出部4aは、パターンレジスタ2について垂
直走査を全面行なつて黒ビツトの連続する長さが
線幅計算部3に於いて計算された線幅より十分長
い黒ビツトの連続を取り出し垂直サブパターン
(VSP)を抽出する。同様に水平サブパターン抽
出部4bは水平走査により水平サブパターン
(HSP)を、左斜めサブパターン抽出部4cは左
斜め45゜走査により左斜めサブパターン(LSP)
を、右斜めサブパターン抽出部4dは、右斜め
45゜走査により右斜めサブパターン(RSP)を抽
出する。
Binary pattern input signal 1 is stored in pattern register 2 . At the same time, the line width calculation section 3 calculates the line width of the input pattern. The vertical sub-pattern extraction section 4a vertically scans the entire pattern register 2, extracts the continuous black bits whose length is sufficiently longer than the line width calculated by the line width calculation section 3, and extracts the continuous black bits. Extract subpatterns (VSP). Similarly, the horizontal sub-pattern extraction section 4b generates a horizontal sub-pattern (HSP) by horizontal scanning, and the left diagonal sub-pattern extraction section 4c generates a left diagonal sub-pattern (LSP) by scanning diagonally 45 degrees to the left.
, the right diagonal sub-pattern extraction section 4d extracts the right diagonal
Extract the right diagonal subpattern (RSP) by 45° scanning.

第2図は、文字「L」のサブパターンを抽出し
た例を示した図である。第2図aは原パターン、
第2図bは、水平サブパターン、第2図cは垂直
サブパターン、第2図dは左斜めサブパターン、
第2図eは、右斜めサブパターンであるが、この
例では右斜めサブパターンは抽出されていない。
FIG. 2 is a diagram showing an example of extracted sub-patterns of the letter "L". Figure 2a is the original pattern,
Figure 2b is a horizontal sub-pattern, Figure 2c is a vertical sub-pattern, Figure 2d is a left diagonal sub-pattern,
FIG. 2e shows a right diagonal subpattern, but the right diagonal subpattern is not extracted in this example.

次に垂直セグメント検出部5aは垂直サブパタ
ーン(VSP)を水平に左から右へ走査し、白点
(文字背景部)から黒点(文字線部)に変化した
時の黒点座標と、黒点から白点に変化した時の白
点座標の両座標から黒点の連続領域の座標位置を
計算し、さらにその変化点の個数を検出する。こ
の動作を上から下に行い、前列と現列の黒点の連
続領域の座標位置及び変化点の個数より黒点の連
続領域の中心座標系列を垂直原始セグメントとし
て検出する。同様に、水平セグメント検出部5b
は、水平サブパターン(HSP)を上から下に走
査し、水平原始セグメントを検出し、左斜めセグ
メント検出部5cは左斜めサブパターン(LSP)
を左から右へ走査し左斜め原始セグメントを検出
し、右斜めセグメント検出部5dは右斜めサブパ
ターン(RSP)を左から右へ走査し、右斜め原
始セグメントを検出する。このセグメントの検出
については、本出願人がすでに出願した特願昭56
−31228(特開昭57−146379)に詳述されている
が、その方法を垂直サブパターン(VSP)のス
トローク成分を芯線化処理して垂直原始セグメン
トを検出する場合を例にとつて説明する。
Next, the vertical segment detection unit 5a scans the vertical sub-pattern (VSP) horizontally from left to right, and detects the black point coordinates when the white point (character background part) changes to a black point (character line part), and the black point coordinates when the white point (character background part) changes to a black point (character line part). The coordinate position of the continuous area of the black point is calculated from both coordinates of the white point coordinate when it changes to a point, and the number of points of change is detected. This operation is performed from top to bottom, and the center coordinate series of the continuous area of black points is detected as a vertical primitive segment from the coordinate positions of the continuous area of black points in the previous row and the current line and the number of changing points. Similarly, horizontal segment detection section 5b
scans the horizontal sub-pattern (HSP) from top to bottom to detect the horizontal primitive segment, and the left diagonal segment detection unit 5c scans the horizontal sub-pattern (HSP) from top to bottom, and the left diagonal segment detection unit 5c scans the horizontal sub-pattern (HSP) from top to bottom to detect the horizontal primitive segment.
The right diagonal segment detection section 5d scans the right diagonal subpattern (RSP) from left to right to detect a left diagonal primitive segment. Regarding the detection of this segment, a patent application filed by the applicant in 1983
-31228 (Japanese Unexamined Patent Publication No. 57-146379), the method will be explained using an example of detecting vertical primitive segments by processing the stroke components of a vertical sub-pattern (VSP) into core lines. .

今、垂直サブパターン(VSP)に第3図のよ
うなセグメント成分A、Bのパターンが得られた
とする。左上の点を始点とし、左から右へ走査し
変化点の検出を始めると、Y1行の前行まで変化
点は検出されず、Y1行を走査して始めてストロ
ーク成分Aの2個の変化点、即ち白点から黒点へ
の変化点XBY1と黒点から白点への変化点XWY1
得られる。この時(XBY1+XWY1)/2を計算し、
原始セグメント1の開始点としてこの座標を原始
セグメントテーブルメモリ6に登録する。
Now, suppose that a pattern of segment components A and B as shown in FIG. 3 is obtained in the vertical sub-pattern (VSP). When starting from the upper left point and scanning from left to right to detect change points, no change points are detected until the line before the Y1 line, and it is only after scanning the Y1 line that the two change points of stroke component A are detected. In other words, a point of change from a white point to a black point X BY1 and a point of change from a black point to a white point X WY1 are obtained. At this time, calculate (X BY1 +X WY1 )/2,
These coordinates are registered in the primitive segment table memory 6 as the starting point of the primitive segment 1.

さらに次の行を走査して得られた2個の変化点
をそれぞれXBY1+1,XWY1+1として次に示す式(1)、
式(2)を共に満足した時には、現行で検出された黒
点の連続領域の座標位置と前行で検出された黒点
のそれとは重なると定義し、前行のセグメントの
継続であるとする。
Furthermore, the following equation (1), where the two change points obtained by scanning the next row are X BY1+1 and X WY1+1 ,
When both equations (2) are satisfied, it is defined that the coordinate position of the continuous region of the currently detected black point overlaps with that of the black point detected in the previous line, and it is assumed that the segment is a continuation of the previous line.

XBY1≦XWY1+1 ……(1) XWY1≧XBY1+1 ……(2) (ただしXBY1<XWY1,XBY1+1<XWY1+1とする。) また、これ以外の場合には、現列で検出された
黒点の連続領域の中心座標位置を前列とは別の原
始セグメントのものとして原始セグメントテーブ
ルメモリ6に登録する。
X BY1 ≦X WY1+1 ...(1) X WY1 ≧X BY1+1 ...( 2 ) ( However, X BY1 < In this case, the center coordinate position of the continuous area of black dots detected in the current row is registered in the primitive segment table memory 6 as belonging to a primitive segment different from the previous row.

このようにしてY2行の前行まで走査し、原始
セグメント1の中心点座標を登録する。Y2行を
走査すると変化点個数が4個になり、新しいセグ
メント成分Bが出現したことがわかる。前述のよ
うな操作をくり返して、原始セグメント1の継続
として登録されるものと、新しい原始セグメント
2の開始点として原始セグメント1とは別に中心
点座標位置が定まり原始セグメントテーブルメモ
リ6に登録されるものとに分かれる。このように
してY3行の前行まで走査し、セグメント成分A,
Bの中心点座標をそれぞれ原始セグメントテーブ
ルメモリ6に登録する。Y3列を走査すると変化
点が2個になり、黒点の連続領域の座標位置から
原始セグメント2の継続であることがわかり、原
始セグメント1の検出が終了したことがわかる。
これからY4行の前行までは変化点が2個で、原
始セグメント2の継続として登録する。Y4行を
走査すると変化点がなくなり、原始セグメント2
の検出が終了したことになり垂直サブパターン
(VSP)のセグメント抽出がすべて完了すること
になる。同様な機能が水平セグメント検出部5
b、左斜めセグメント検出部5c、右斜めセグメ
ント検出部5dで行なわれ、検出された原始セグ
メントはそれぞれ原始セグメントテーブルメモリ
6に格納される。
In this way, the line before the Y2 line is scanned and the coordinates of the center point of the original segment 1 are registered. When row Y2 is scanned, the number of change points becomes four, indicating that a new segment component B has appeared. By repeating the above-mentioned operations, the coordinate position of the center point, which is registered as a continuation of primitive segment 1, and the starting point of new primitive segment 2, separate from primitive segment 1, are determined and registered in the primitive segment table memory 6. Divided into things. In this way, scan to the previous line of Y3 line, segment component A,
The coordinates of the center point of B are respectively registered in the primitive segment table memory 6. When the Y3 column is scanned, there are two changing points, and it can be seen from the coordinate positions of the continuous area of the black dots that it is a continuation of the primitive segment 2, and that the detection of the primitive segment 1 has been completed.
There are two changing points from now to the previous line of Y4, and they are registered as a continuation of primitive segment 2. When you scan line Y4, there are no change points, and primitive segment 2
This means that the detection of the vertical subpattern (VSP) has been completed, and the segment extraction of the vertical subpattern (VSP) has been completed. A similar function is provided by the horizontal segment detection section 5.
b, the left diagonal segment detector 5c and the right diagonal segment detector 5d, and the detected primitive segments are stored in the primitive segment table memory 6, respectively.

第4図は、第1図に示した文字「L」のサブパ
ターンにつき前述の如く芯線化して抽出された原
始セグメントを示したものである。第4図aは、
水平原始セグメント、第4図bは垂直原始セグメ
ント、第4図cは、左斜め原始セグメントを示
す。
FIG. 4 shows the original segment extracted by converting the subpattern of the letter "L" shown in FIG. 1 into core lines as described above. Figure 4a is
A horizontal primitive segment, FIG. 4b shows a vertical primitive segment, and FIG. 4c shows a left diagonal primitive segment.

接続点・交差点座標検出部7は、原始セグメン
トテーブル6に格納されている原始セグメント全
てについて接続・交差関係を検出し、接続点・交
差点テーブルメモリ8に結果を格納するものであ
り、その動作フローチヤートを第5図に示す。ま
ず原始セグメントテーブルメモリ6の中から1本
の原始セグメント(原始セグメント1とする)を
取り出し、他の原始セグメント(原始セグメント
2とする)の各点と、取り出した原始セグメント
1の各点の距離を計算し、距離がC1(C1は定数で
本実施例では1)以下の原始セグメント1と、原
始セグメント2におけるそれぞれの点座標(以後
接続・交差候補点という)を検出し、接続・交差
候補点が存在した時は、原始セグメント1と原始
セグメント2は接続・交差の候補とする。接続で
あるか、交差であるかの判定は、以下の処理によ
り決定する。
The connection point/intersection coordinate detection unit 7 detects connection/intersection relationships for all the primitive segments stored in the primitive segment table 6, and stores the results in the connection point/intersection table memory 8. The chart is shown in Figure 5. First, one primitive segment (referred to as primitive segment 1) is taken out from the primitive segment table memory 6, and the distance between each point of another primitive segment (referred to as primitive segment 2) and each point of the retrieved primitive segment 1 is is calculated, and the coordinates of each point in primitive segment 1 and primitive segment 2 (hereinafter referred to as connection/intersection candidate points) whose distance is less than or equal to C 1 (C 1 is a constant and is 1 in this example) are detected, and the connection/intersection candidate points are calculated. When an intersection candidate point exists, primitive segment 1 and primitive segment 2 are considered candidates for connection/intersection. Whether it is a connection or an intersection is determined by the following process.

通常接続・交差候補点が存在する場合は、複数
個連続するため、原始セグメント1、原始セグメ
ント2それぞれについて、自セグメント内におけ
る接続・交差候補点が連続する間を検出し、この
間の始点、終点それぞれから自セグメントの両端
点までの距離を計算し、この距離がC2W(C2は定
数で本実施例では1であり、Wは線幅である)以
下の時、原始セグメント1と原始セグメント2は
接続である(前記接続・交差候補点は、接続点で
あると決定する)とすると同時に原始セグメント
1、原始セグメント2それぞれについて、前記セ
グメントの連続する接続点の中点座標と、前記セ
グメントの始点に接続しているか、終点に接続し
ているかの情報を接続点・交差点テーブルメモリ
8に格納する。これ以外は原始セグメント1と、
原始セグメント2は交差である(前記接続・交差
候補点は交差点であると決定する)と判定すると
同時に原始セグメント1、原始セグメント2それ
ぞれについて、前記セグメントの連続する交差点
の中点の座標を接続点・交差点テーブルメモリ8
に格納する。
Normally, if there are connection/intersection candidate points, there are multiple consecutive connection/intersection candidate points, so for each of primitive segment 1 and primitive segment 2, the period in which connection/intersection candidate points are consecutive within the own segment is detected, and the start point and end point between these points are detected. Calculate the distance from each to the end points of the own segment, and when this distance is less than or equal to C 2 W (C 2 is a constant and is 1 in this example, and W is the line width), the distance between primitive segment 1 and the primitive segment is calculated. Segment 2 is a connection (the connection/intersection candidate point is determined to be a connection point), and at the same time, for each of primitive segment 1 and primitive segment 2, the midpoint coordinates of consecutive connection points of the segment, and the Information on whether the segment is connected to the start point or the end point is stored in the connection point/intersection table memory 8. Other than this, it is primitive segment 1,
It is determined that primitive segment 2 is an intersection (the connection/intersection candidate point is determined to be an intersection), and at the same time, for each of primitive segment 1 and primitive segment 2, the coordinates of the midpoint of the consecutive intersections of the segments are determined as the connection point.・Intersection table memory 8
Store in.

有効セグメント検出部9は、以下に示す2種類
の処理により不必要なセグメントを削除する。
The valid segment detection unit 9 deletes unnecessary segments by the following two types of processing.

不要セグメント削除処理1: 4方向の中間的角
度を持つストロークに検出された複数のセグメ
ントについて、不必要なセグメントを削除す
る。
Unnecessary segment deletion processing 1: Unnecessary segments are deleted from a plurality of segments detected in strokes having intermediate angles in four directions.

不要セグメント削除処理2: ストロークが集中
する場合、又は、接続点・交差点において検出
された不必要なセグメントを削除する。
Unnecessary segment deletion process 2: Unnecessary segments detected when strokes are concentrated or at connection points/intersections are deleted.

不要セグメント削除処理1の動作フローチヤー
トを第6図に、不要セグメント削除処理2の動作
フローチヤートを第7図に示すが以下順に各処理
について説明する。
An operational flowchart of unnecessary segment deletion processing 1 is shown in FIG. 6, and an operational flowchart of unnecessary segment deletion processing 2 is shown in FIG. 7. Each process will be explained below in order.

不要セグメント削除処理1の動作を第8図を用
いて説明する。接続点・交差点テーブル8の中か
ら不要セグメントを示すフラグがセツトされてい
ないセグメント(以下有効セグメントという)の
うち1本の有効セグメント(有効セグメント1と
し、第8図中Hセグメント)を取り出し、その有
効セグメント1に交差している有効セグメント
(有効セグメント2とし、第8図中Rセグメント)
を検出し、前記有効セグメント1の始点(第8図
中H始点)と終点(第8図中H始点)からそれぞ
れ前記有効セグメント2へ垂線をおろし、その垂
線が有効セグメント2と交差する場合それぞれの
距離を計算しその距離が共にC4W(C4は定数で本
実施例では2であり、Wは線幅である)以下の
時、前記有効セグメント1に不要セグメントであ
る事を示すフラグを接続点・交差点テーブルメモ
リ8へセツトする。
The operation of unnecessary segment deletion processing 1 will be explained using FIG. From the connection point/intersection table 8, one valid segment (valid segment 1, H segment in Fig. 8) is extracted from among the segments for which the flag indicating an unnecessary segment is not set (hereinafter referred to as valid segment), and its Valid segment intersecting valid segment 1 (valid segment 2, R segment in Figure 8)
, and draw perpendicular lines from the start point (start point H in Figure 8) and end point (start point H in Figure 8) of the effective segment 1 to the effective segment 2, respectively, and when the perpendicular lines intersect with the effective segment 2, respectively. When the distances are both less than or equal to C 4 W (C 4 is a constant and is 2 in this example, and W is the line width), a flag indicating that the valid segment 1 is an unnecessary segment is set. is set in the connection point/intersection table memory 8.

不要セグメント削除処理2の動作を第9図を用
いて説明する。接続点・交差点テーブルメモリ8
の中から1本の有効セグメント(有効セグメント
1とし第9図中Vセグメント)を取り出し、その
有効セグメントに交差又は接続している有効セグ
メント全てを検出し、検出された有効セグメント
どおしが少なくとも1つの他の検出された有効セ
グメントに接続又は、交差している2本の有効セ
グメントのみを取り出す。第9図ではVセグメン
トに接続しているH1セグメント、H2セグメン
ト、交差しているLセグメントが取り出される。
The operation of unnecessary segment deletion processing 2 will be explained using FIG. 9. Connection point/intersection table memory 8
One valid segment (valid segment 1 and V segment in Fig. 9) is extracted from among them, all valid segments that intersect or connect to that valid segment are detected, and each of the detected valid segments is at least Only two valid segments that are connected to or intersect with one other detected valid segment are extracted. In FIG. 9, the H1 segment and H2 segment connected to the V segment, and the intersecting L segment are extracted.

次に有効セグメント1と前記取り出された2本
の有効セグメントとにより3角形が形成される組
み合わせを検出し、(第9図中△ABC、△
AB′C′が検出される)有効セグメント1において
他の前記2本の有効セグメントがそれぞれ接続又
は、交差する点(第9図中A点、B点又は、A
点、B′点)の中点座標(第9図中D点又はD′点)
を計算する。さらに、2本の有効セグメントどお
しが接続又は、交差している点の座標(第9図中
C点又はC′点)を計算し、前記計算した中点との
距離(第9図中C点−D点間又は、C′点−D′点間
の距離)を計算し、その距離がC3W以下の場合、
有効セグメント1における前記2本の有効セグメ
ントにそれぞれ接続又は交差している点までの間
を削除候補とする。以上の処理を前記検出された
3角形全てについて実行した後、有効セグメント
1の両端点からそれぞれ距離がC2Wまでの間を
削除候補する。有効セグメント1全てが削除候補
である場合は、有効セグメント1を不要セグメン
トとして削除する。これ以外の有効セグメントを
有効セグメントテーブルメモリ10へ登録する。
Next, a combination in which a triangle is formed by effective segment 1 and the two extracted effective segments is detected (△ABC, △ in Fig. 9).
Points where the other two valid segments connect or intersect in valid segment 1 (where AB'C' is detected) (points A, B, or A in FIG. 9)
(point D or point D' in Figure 9)
Calculate. Furthermore, the coordinates of the point where the two effective segments connect or intersect (point C or point C' in Figure 9) are calculated, and the distance from the calculated midpoint (point C or C' in Figure 9) is calculated. If the distance is less than C 3 W,
The area in valid segment 1 up to the point where each of the two valid segments connects or intersects is set as a deletion candidate. After performing the above processing for all of the detected triangles, the areas within distance C 2 W from both end points of effective segment 1 are candidates for deletion. If all valid segments 1 are deletion candidates, valid segments 1 are deleted as unnecessary segments. Other valid segments are registered in the valid segment table memory 10.

ストローク抽出部11は、有効セグメントテー
ブルメモリ10から順に有効セグメントを取り出
し、その有効セグメントが他の有効セグメントへ
延長可能な場合において、他の有効セグメントと
合成して1つの有効セグメントとする処理を延長
可能な有効セグメントがなくなるまで行い、残つ
た有効セグメントをストロークとしてストローク
テーブルメモリ12へ格納するものでその動作フ
ローを第11図に示す。以下その動作を詳細に説
明する。
The stroke extraction unit 11 sequentially extracts valid segments from the valid segment table memory 10, and when the valid segments can be extended to other valid segments, extends the process of combining them with other valid segments to form one valid segment. This process is performed until there are no more possible valid segments, and the remaining valid segments are stored as strokes in the stroke table memory 12. The operation flow is shown in FIG. 11. The operation will be explained in detail below.

有効セグメントテーブルメモリ10から使用済
フラグのセツトされていない有効セグメント(有
効セグメント1とする)を取り出し、有効セグメ
ント1に端点どおしで接続している使用済フラグ
のセツトされていない他の有効セグメント(有効
セグメント2とする)を検出して、有効セグメン
ト1と有効セグメント2を合成し、有効セグメン
ト1とする。と同時に有効セグメント2が使用済
である事を示すフラグを有効セグメントテーブル
メモリ10へセツトする。上記の処理を有効セグ
メント1と端点どおしで接続する使用済フラグの
セツトされていない有効セグメントがなくなるま
で実行し、有効セグメント1をストロークテーブ
ルメモリ12にストロークとして登録する。
A valid segment whose used flag is not set (referred to as valid segment 1) is retrieved from the valid segment table memory 10, and other valid segments whose used flags are not set are retrieved from the valid segment table memory 10 and are connected to valid segment 1 from end to end. A segment (defined as valid segment 2) is detected, and valid segment 1 and valid segment 2 are combined to form valid segment 1. At the same time, a flag indicating that valid segment 2 has been used is set in valid segment table memory 10. The above processing is executed until there are no valid segments whose end points are connected to valid segment 1 and whose used flags are not set, and valid segment 1 is registered in the stroke table memory 12 as a stroke.

第10図aはひらがな“う”の有効セグメント
が得られた例であり、第10図bは得られた目的
セグメントから2本のストロークが抽出された例
である。
FIG. 10a shows an example in which an effective segment of the hiragana "u" is obtained, and FIG. 10b shows an example in which two strokes are extracted from the obtained target segment.

(発明の効果) 以上説明したように本発明に於いては、接続
点・交差点において検出されていた不必要なセグ
メント、4方向の中間的角度を持つストロークに
検出されていた不必要なセグメント、さらにスト
ロークが集中する場合に発生した不必要なセグメ
ントを削除し残りの有効セグメントを延長し、ス
トロークを抽出しているので、ストローク間の接
続・交差関係が明瞭になる。
(Effects of the Invention) As explained above, in the present invention, unnecessary segments detected at connection points and intersections, unnecessary segments detected at strokes having intermediate angles in four directions, Furthermore, unnecessary segments that occur when strokes are concentrated are deleted, remaining valid segments are extended, and strokes are extracted, so the connections and intersecting relationships between strokes become clear.

さらに、セグメントを延長する際にセグメント
間の角度等複雑な計算をせず、有効なセグメント
の端点にのみ着目しているので処理速度が早いと
いう利点を有しており安定で高速な文字認識装置
に利用することができる。
Furthermore, when extending segments, it does not require complicated calculations such as angles between segments, and instead focuses only on the end points of valid segments, resulting in a stable and high-speed character recognition device that has the advantage of fast processing speed. It can be used for.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明の一実施例を示すブロツク
図、第2図a〜eは、サブパターンの抽出例を示
す図、第3図は、ストロークの抽出方法を説明す
る図、第4図a〜cは第2図のサブパターンから
抽出されたセグメントを示す図、第5図は、接続
点・交差点検出部7における動作フローチヤー
ト、第6図と第7図は有効セグメント検出部9に
おける動作フローチヤート、第8図と第9図は、
有効セグメント検出方法を説明する図、第10図
aおよびbは、ストローク抽出方法を説明する
図、第11図はストローク抽出部11の動作フロ
ーチヤートである。 1……2値パターン入力信号、2……パターン
レジスタ、3……線幅計算部、4a……水平サブ
パターン抽出部、4b……垂直サブパターン抽出
部、4c……左斜めサブパターン抽出部、4d…
…右斜めサブパターン抽出部、5a……水平セグ
メント抽出部、5b……垂直セグメント抽出部、
5c……左斜めセグメント抽出部、5d……右斜
めセグメント抽出部、6……原始セグメントテー
ブルメモリ、7……接続点・交差点検出部、8…
…接続点・交差点テーブルメモリ、9……有効セ
グメント検出部、10……有効セグメントテーブ
ルメモリ、11……ストローク抽出部、12……
ストロークテーブルメモリ。
FIG. 1 is a block diagram showing an embodiment of the present invention, FIGS. 2 a to e are diagrams showing examples of sub-pattern extraction, FIG. 3 is a diagram explaining a stroke extraction method, and FIG. 4 a to c are diagrams showing segments extracted from the sub-patterns in FIG. 2, FIG. 5 is an operation flowchart in the connection point/intersection detection section 7, and FIGS. 6 and 7 are diagrams showing the segments extracted from the sub-pattern in FIG. The operation flowcharts, Figures 8 and 9 are as follows:
FIGS. 10A and 10B are diagrams explaining the effective segment detection method, FIGS. 10A and 10B are diagrams explaining the stroke extraction method, and FIG. 11 is an operation flowchart of the stroke extraction section 11. 1...Binary pattern input signal, 2...Pattern register, 3...Line width calculation section, 4a...Horizontal sub-pattern extraction section, 4b...Vertical sub-pattern extraction section, 4c...Left diagonal sub-pattern extraction section , 4d...
...Right diagonal sub-pattern extraction section, 5a...Horizontal segment extraction section, 5b...Vertical segment extraction section,
5c...Left diagonal segment extraction unit, 5d...Right diagonal segment extraction unit, 6...Primitive segment table memory, 7...Connection point/intersection detection unit, 8...
...Connection point/intersection table memory, 9... Valid segment detection section, 10... Valid segment table memory, 11... Stroke extraction section, 12...
Stroke table memory.

Claims (1)

【特許請求の範囲】[Claims] 1 文字図形パターンを構成するセルの明暗を電
気信号に変換してメモリーに蓄積する工程と、蓄
積されたパターンを所定の複数の方向に走査して
各走査方向に対応するストローク成分をあらわす
サブパターンを抽出する工程と、各サブパターン
のストローク成分を芯線化処理して得られる原始
セグメントを抽出する工程と、該芯線セグメント
の芯線座標系列を使用して不要セグメントを検出
除去し不要セグメント以外の有効セグメントを得
る工程と、2つの有効セグメントが各々の端点で
接続している条件が成立するとき当該2つのセグ
メントを合成する合成工程と、該合成工程を前記
条件が成立しなくなるまでくり返す工程と、最終
的に残されたセグメントをストロークとする工程
とを有することを特徴とする文字認識におけるス
トローク抽出方法。
1. A process of converting the brightness of cells constituting a character/figure pattern into electrical signals and storing them in a memory, and a sub-pattern that scans the stored pattern in a plurality of predetermined directions to represent stroke components corresponding to each scanning direction. , a process of extracting primitive segments obtained by skeletonizing the stroke components of each sub-pattern, and detecting and removing unnecessary segments using the skeleton coordinate series of the skeleton segments, and creating effective segments other than unnecessary segments. a step of obtaining segments; a step of combining two valid segments when a condition that two valid segments are connected at each end point is met; and a step of repeating the step of combining the two segments until the condition no longer holds true. A method for extracting strokes in character recognition, the method comprising the following steps: 1. A method for extracting strokes in character recognition, comprising the following steps: 1. A method for extracting strokes in character recognition.
JP59036110A 1984-02-29 1984-02-29 Stroke extraction method in character discrimination Granted JPS60181883A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59036110A JPS60181883A (en) 1984-02-29 1984-02-29 Stroke extraction method in character discrimination

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59036110A JPS60181883A (en) 1984-02-29 1984-02-29 Stroke extraction method in character discrimination

Publications (2)

Publication Number Publication Date
JPS60181883A JPS60181883A (en) 1985-09-17
JPH0326878B2 true JPH0326878B2 (en) 1991-04-12

Family

ID=12460626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59036110A Granted JPS60181883A (en) 1984-02-29 1984-02-29 Stroke extraction method in character discrimination

Country Status (1)

Country Link
JP (1) JPS60181883A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69329380T2 (en) * 1993-06-30 2001-03-01 Ibm Process for segmenting images and classifying image elements for document processing

Also Published As

Publication number Publication date
JPS60181883A (en) 1985-09-17

Similar Documents

Publication Publication Date Title
JP2951814B2 (en) Image extraction method
JP2608571B2 (en) Apparatus and method for vectorizing input scanned image data
JPH0326878B2 (en)
JP2846486B2 (en) Image input device
JPH035630B2 (en)
JP2755299B2 (en) Image processing method
JP3153439B2 (en) Document image tilt detection method
JP2558668B2 (en) Character pattern extraction method
JPH05290162A (en) Diagram branch point connecting method for image input device
JP3083609B2 (en) Information processing apparatus and character recognition apparatus using the same
JPS63316171A (en) System for extracting broken line and chain line
JPH11250256A (en) Graphic recognizing/processing method, and record medium recorded with the program
JPH0145669B2 (en)
JP2623559B2 (en) Optical character reader
JPH09147125A (en) Method and device for outline extraction
JPH022189B2 (en)
JP2844618B2 (en) Character segmentation device
JP2563163B2 (en) Figure instruction method
JPS60120479A (en) Device for extracting crossing and curved point
Fernández et al. A vectorizer for color topographic maps
Gonczarowski Producing the skeleton of a character
JPH0139156B2 (en)
JPH04172573A (en) Picture processing method
JPH04236678A (en) Method for shaping area
JPH0245229B2 (en)