KR940001048B1 - On-line hand written character recognition method - Google Patents
On-line hand written character recognition method Download PDFInfo
- Publication number
- KR940001048B1 KR940001048B1 KR1019920003354A KR920003354A KR940001048B1 KR 940001048 B1 KR940001048 B1 KR 940001048B1 KR 1019920003354 A KR1019920003354 A KR 1019920003354A KR 920003354 A KR920003354 A KR 920003354A KR 940001048 B1 KR940001048 B1 KR 940001048B1
- Authority
- KR
- South Korea
- Prior art keywords
- stroke
- code
- feature
- tree
- horizontal
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Character Discrimination (AREA)
Abstract
Description
제1도는 본 발명을 실현하기 위한 시스템의 구성을 개략적으로 나타낸 블럭도.1 is a block diagram schematically showing the configuration of a system for realizing the present invention.
제2도는 본 발명의 전체처리과정을 설명하기 위한 흐름도.2 is a flow chart for explaining the overall process of the present invention.
제3도는 획을 이루는 직선들의 8방향(DIR-0∼DIR-7)에 따른 코드정의를 나타낸 도면.3 is a diagram showing code definitions in eight directions (DIR-0 to DIR-7) of straight lines forming a stroke.
제4도는 획 형태코드의 정의를 나타내는 도면.4 is a diagram showing the definition of a stroke type code.
제5도는 획 형태코드의 정의에 따른 코드의 예를 나타낸 도면.5 is a diagram showing an example of a code according to the definition of a stroke type code.
제6도는 'ㅎ'자음에 대한 특징코드의 에를 나타낸 도면.Figure 6 shows the feature code for 'ㅎ' consonants.
제7도는 초성, 중성, 종성라이브러리의 수형도.Figure 7 is a tree diagram of the initial, neutral, and final library.
제8도는 탄력적매칭을 설명하기 위한 도면.8 is a view for explaining the elastic matching.
본 발명은 온라인문자인식(on-lind character recognition) 방법에 관한 것으로 특히, 필기체(hand-written letter)의 한글문자를 인식하는 방법에 관한 것이다. 최근 많은 컴퓨터 관련분야에서는 필기체 문자인식시스템에 대한 필요성이 증대되고 있다.The present invention relates to an on-lind character recognition method, and more particularly, to a method of recognizing a Hangul character of a hand-written letter. Recently, the necessity for a handwritten character recognition system is increasing in many computer-related fields.
특히, 필기자의 필기방식 및 필기속도 등에 제한을 받지 않는 인식기법의 개발이 절실히 요구되고 있다.In particular, the development of a recognition method that is not limited to the writing method and writing speed of the writer is urgently required.
그 이유는 통상적으로 사용되는 키보드에 의한 입력방식이 키보드의 자판배열을 기억하여야 하고 또한 숙련된 입력을 위해서는 별도의 훈련을 필요로 하게 된다는 점이 일반 대중의 컴퓨터를 쉽게 사용하지 못하게 하는 장애요소로서 작용하기 때문이다.The reason for this is that the input method by the commonly used keyboard must remember the keyboard layout of the keyboard and requires additional training for the expert input. Because.
온라인 필기체인식은 키보드 입력방식을 대체할 수 있는 편리한 입력방식으로서 부각되고 있으며 특히, 초소형 팬 컴퓨터의 핵심기술로서 그 중요성을 더해 가고 있다. 온라인 좌표입력장치인 태블릿(tablet)에 스타일러스(stylus)에 의해 기록되는 미지의 문자들을 인식하기 위한 종래의 기술은 입력된 문자들의 크기를 미리 정규화(formalization)하여 자소분리없이 문자단위로 인식하였다.Online handwriting recognition is emerging as a convenient input method that can replace the keyboard input method, and in particular, it is increasing its importance as a core technology of a micro fan computer. Conventional techniques for recognizing unknown characters recorded by a stylus on a tablet, which is an on-line coordinate input device, have been previously normalized and recognized in character units without letter separation.
이와 같이 문자단위로 인식하는 방법에서는 문자를 인식하기 위하여 복수의 문자인식사전을 가지고 있어야 하고, 이 문자인식사전의 수가 많음으로 해서 메모리의 용량도 인식사전의 수에 비례하여 증가되지 않으면 안되었다. 또한, 종래의 방법에서는 인식시간이 오래 걸리게 되고, 문자필기시 발생하기 쉬운 필기운동의 변화도에 민감한 반응을 보이게 되어 미리 한정된 획순으로만 필기를 하여야 문자를 인식할 수 있는 단점이 있었다. 본 발명은 상기한 종래기술의 문제점들을 해결하여 하드웨어 구성에서 소요되는 메모리의 수를 줄이고 문자에 대한 인식률이 높은 필기체 한국문자 인식방법을 제공하는 것을 목적으로 한다.In this method of character recognition, a plurality of character recognition dictionaries must be provided in order to recognize a character, and the memory capacity must increase in proportion to the number of recognition dictionaries due to the large number of character recognition dictionaries. In addition, the conventional method takes a long time to recognize, has a sensitive reaction to the change of the writing movement that is easy to occur when writing the letter has a disadvantage that can be recognized by writing only in a predetermined stroke order. SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems of the prior art and to provide a method of recognizing a handwritten Korean character which reduces the number of memories required in hardware configuration and has a high recognition rate for characters.
상기한 목적을 달성하기 위한 본 발명을 실현하기 위한 하드웨어 시스템을 문자인식에 대한 전반적인 과정들을 수행하는 중앙처리장치와, 문자데이타와 인식라이브러리 및 인식프로그램을 저장하는 메모리와, 온라인 데이타를 발생시키는 태블릿과, 인식결과를 나타내는 출력장치를 적어도 포함한다.In order to achieve the above object, a hardware system for realizing the present invention comprises a central processing unit performing overall processes for character recognition, a memory storing character data, a recognition library and a recognition program, and a tablet for generating online data. And at least an output device for indicating the recognition result.
상기한 바와같은 하드웨어구성을 갖는 시스템에 본 발명의 목적을 달성하기 위한 기술적인 수단으로서 본 발명의 방법은 태블릿으로 부터 얻은 데이타를 직선화하여 특징점열을 얻는 전처리(pro-processing)단계와, 이 전처리단계에서 얻어진 특징점역을 이용하여 획의 특징을 결정하는 특징추출단계와, 획의 특징을 이용하여 한글의 6가지 유형으로 분류하는 유형분류단계 및, 획의 특징과 결정된 한글의 유형에 따라 문자에 대한 인식을 수행하는 인식단계를 포함한다.As a technical means for achieving the object of the present invention in a system having a hardware configuration as described above, the method of the present invention comprises a pre-processing step of linearizing data obtained from a tablet to obtain a feature point sequence, and this preprocessing. A feature extraction step for determining the characteristics of the stroke using the feature point range obtained in the step, a type classification step for classifying the six types of Hangul using the characteristics of the stroke, and a character according to the characteristics of the stroke and the type of the determined Hangul. Recognition step of performing the recognition.
제1도는 본 발명을 구체화하기 위한 하드웨어구조를 개략적으로 나타낸 블럭도로서, 참조번호 11은 본 발명에 따른 단계들을 수행하는 중앙처리장치를 나타낸 것이고, 12는 문자데이타와 인식라이브러리 및 인식 프로그램등을 저장하는 메모리, 13은 스타일러스펜(stylus pen)에 의해 기록되는 문자들에 대한 데이타를 생성시키는 태블릿, 14는 본 발명에 의한 문자인식결과를 나타낸 출력장치를 각각 나타낸 것이다.1 is a block diagram schematically showing a hardware structure for embodying the present invention, in which reference numeral 11 denotes a central processing unit for performing the steps according to the present invention, and reference numeral 12 denotes a character data and a recognition library and a recognition program. A memory for storing, 13 shows a tablet for generating data on characters recorded by a stylus pen, and 14 shows an output device showing character recognition results according to the present invention.
제2도는 본 발명의 실시예를 나타낸 도면으로서, 이제 부터 제2도를 참조하여 본 발명에 대하여 상세히 설명한다.2 is a view showing an embodiment of the present invention, and the present invention will now be described in detail with reference to FIG.
(1) 전처리과정(1) Pretreatment
태블릿(13)으로 부터 입력되는 한글데이타는 획단위로 구분 되어 입력되는 특징을 가지며, 이 획들의 집합으로 자음과 모음이 구성되고, 자음과 모음의 구성에 의하여 한 글자가 구성된다.The Hangul data input from the tablet 13 has a characteristic of being input by being divided into stroke units, and consonants and vowels are composed of the set of strokes, and one letter is composed of the consonants and vowels.
그러므로 이 특징들을 이용하기 위하여 전처리는 획단위로 수행된다.Therefore, to take advantage of these features, pretreatment is performed on a stroke basis.
본 한글 인식알고리즘의 전처리과정은 표본점열(標本點列)에 대해 데이타의 급속한 변동을 없애거나 감소시키는 데이타 스무딩(data smoothing))과 인식가능한 데이타만으로 축약하는 알고리즘이다.The preprocessing of the Hangul Recognition Algorithm is a data smoothing that eliminates or reduces rapid fluctuations in data for sample sequences, and an algorithm that shortens only recognizable data.
본 알고리즘에서는 직선적합(line fitting)을 하여 특징점을 구한 후, 두 특징점을 양끝점으로 하는 선분 사이의 각도를 계산하여 한글에서 자주 발생하는 삐침 제거를 수행한 Piecewise-linear segment는 다음과 같이 구해진다.In this algorithm, a piecewise-linear segment is obtained by eliminating the bleeding that occurs frequently in Korean by calculating the angle between the line segments that have two feature points. .
먼저 시작점 P1과 k+1번째 Pk+1을 연결하는 직선의 기울기 m을 구하고, 그 다음 이 직선의 양쪽에 T만큼의 폭을 가지는 허용 영역(tolerance region)2T를 설정한다.First, the slope m of a straight line connecting the starting point P 1 and the k + 1 th P k + 1 is obtained, and then a tolerance region 2T having a width of T on both sides of the straight line is set.
m=P1과 Pk+1을 연결하는 선분의 기울기(yk+1-y1)/(xk+1-x1)(xj,yj)=piecewise-linear segment를 위한 참조점(xj+ik,yj+ik)=참조점으로 부터 ik번째 점 이라 할때, 연속된 각 점(xj+ik,yj+ik), i=1,2,3,…에 대해서 만약 이 점이 허용영역에 들어가고 다음 점(xj+[i+1]k,yj+[i+1]k)이 허용영역에 들어가면 (xj+ik,yj+ik)를 제거한다.The slope of the line connecting m = P 1 and P k + 1 (y k + 1 -y 1 ) / (x k + 1 -x 1 ) (x j , y j ) = reference point for the piecewise-linear segment (x j + ik , y j + ik ) = When it is the ikth point from the reference point, each successive point (x j + i k , y j + ik ), i = 1,2,3,... For, if this point enters the allowable area and the next point (x j + [i + 1] k , y j + [i + 1] k ) enters the allowable area, then remove (x j + ik , y j + ik ). .
어떤 점(xj+ik,yj+ik)가 허용영역에 들어가는지 검사하는 방법은 Chebyshev 근사법을 이용한다.The Chebyshev approximation method is used to check which point (x j + ik, y j + ik ) falls into the allowable area.
만약 이 점이 다음의 (1)식을 만족하면 허용영역에 들어간다. 만약 |m|≤이면,If this point satisfies the following formula (1), it enters the allowable area. If | m | ≤
|m(xj+ik-xj)-(yj+ik-yj)|≤(0.960+0.398|m|)Tm (x j + ik -x j )-(y j + ik -y j ) | ≤ (0.960 + 0.398 | m |) T
만약 |m|>1이면,If | m |> 1,
[수학식 1][Equation 1]
만약 (Xj+[n+1]k,yj+[n+1]k)가 허용영역에 들어가지 않는 첫 점이며, 이 점이 새로운 참조점이 되고 m도 이 점을 참조점으로 하여 다시 구해진다.If (X j + [n + 1] k , y j + [n + 1] k ) is the first point that does not fit in the allowable area, this point is the new reference point and m is also obtained as the reference point.
여기서 T는 데이타 스무딩(data smoothing)의 정도를 제어하고, k는 곡선 적합(curve fitting)의 가속인자로 간주될 수 있다. T와 k는 모두 데이타 씨닝(data thinning)이 정도를 제어한다. 특징점 사이의 선분의 8방향 코드(제3도 참조)를 구하여 인접한 선분의 방향코드가 같으면 특징점을 버리고 한 선분으로 합친다.Where T controls the degree of data smoothing, and k can be regarded as an acceleration factor for curve fitting. T and k both control the extent of data thinning. Obtain the eight-way code (see Figure 3) of the line segments between the feature points, and if the direction codes of the adjacent line segments are the same, discard the feature points and combine them into one line segment.
그리고 한글의 삐침 특징은 대부분 획의 마지막 부분에서 발생하므로 삐침을 제거하기 위하여 각 획의 마지막 두 선분의 각도의 차이를 계산하여 임계치 D1보다 작으면 삐침으로 생각하여 마지막 선분을 버린다.And because most of the Hangul feature of Hangul occurs at the end of the stroke, the difference between the angles of the last two segments of each stroke is calculated to remove the hang, and if it is smaller than the threshold D 1 , the last segment is discarded.
(2) 특징추출과정(2) Feature Extraction Process
상술한 전처리과정이 수행된 특징점열을 이용하여 먼저 획이 직선 획인지 곡선 획인지를 구분한다.Using the feature sequence in which the preprocessing process described above is performed, first, the stroke is classified as a straight stroke or a curved stroke.
획이 2개의 특징점으로 구성되어 있으면 직선 획이고, 그렇지 않으면 곡선 획으로 구분한다.If the stroke consists of two feature points, it is a straight stroke, otherwise it is divided into a curved stroke.
직선 획은 8방향 코드에 따라 1에서 8까지의 획 형태코드중의 하나를 부여받으며, 곡선 획은 획을 구성하는 인접한 두 직선 선분에서 첫번째 선분을 기준으로 두번째 선분의 회전방향을 시계방향(-)과, 반시계방향(+)으로 정의하여, 획을 구성하는 직선 선분들의 회전방향의 변화 횟수와 초기 회전방향 및 획의 첫번째 선분의 방향에 따라 제4도에 정의된 16가지의 획 형태코드(stroke-type)중의 하나를 부여받는다.The straight stroke is assigned one of the stroke shape codes from 1 to 8 according to the 8-way code, and the curved stroke is the clockwise direction of rotation of the second segment relative to the first segment from the two adjacent straight segments that make up the stroke. ) And 16 stroke shapes defined in FIG. 4 according to the number of changes in the rotational direction of the linear segments constituting the stroke, and the initial rotational direction and the direction of the first segment of the stroke, defined in a counterclockwise direction (+). It is given one of the stroke-types.
여기서 선분의 회전방향이 -방향에서 -방향으로 계속 선분이 있는 것은 한번의 -방향이라고 표시하여 획의 첫번째 선분의 방향에 따라 코드는 8 또는 12가 된다.In this case, if the line segment rotates from-direction to-direction continuously, it is indicated as one-direction so that the code becomes 8 or 12 depending on the direction of the first line segment.
또 -방향에서 +방향으로 변하는 획을 가지고 있는 획을 -+로 표시하고 획의 첫번째 선분의 방향에 따라 코드는 9 또는 13이된다. 코드의 예가 제5도에 있다.Also, a stroke with a stroke that changes from-to + is marked with-+ and the code is 9 or 13, depending on the direction of the first segment of the stroke. An example of the code is in FIG.
그리고 획의 끝점과 다음획의 시작점을 연결해 주는 선분의 획 간 코드에는 제3도에 정의된 8방향 코드가 부여된다. 따라서 한 글자가 n개의 획으로 구성되어 있을 경우, n개의 획 형태 코드와(n-1)개의 획간 코드로 구성된 특징 코드는 다음과 같다.The stroke code of the line connecting the end point of the stroke and the start point of the next stroke is assigned the eight-way code defined in FIG. Therefore, when one letter is composed of n strokes, the feature code consisting of n stroke shape codes and (n-1) stroke codes is as follows.
예로서 'ㅎ'에 대한 특징 코드 표현의 예가 제6도에 있다. (f1,f2,f3,…,f2n-2,f2n-1)An example of a feature code representation for 'ㅎ' is shown in FIG. 6. (f 1 , f 2 , f 3 ,…, f 2n-2 , f 2n-1 )
findex에서 index=홀수→findex=획 형태 코드(0∼1)from f index to index = odd → f index = stroke shape code
index=짝수→findex=획간 코드(0∼7)index = even → f index = Stroke code (0 to 7)
(3) 유형분류과정(3) Type Classification Process
한글은 한 문자 내에서 적어도 한개의 중성획을 포함하고 있는 특징이 있으므로 중성의 수직획을 찾아야 이것을 기준으로 종성의 존재여부 및 수평획, 수직획의 구성 구조를 분석하여 한글의 유형을 분류한다.Hangul has a feature that contains at least one neutral stroke within a letter. Therefore, it is necessary to find a neutral vertical stroke to classify the type of Hangul by analyzing the existence of verticality, and the structure of horizontal stroke and vertical stroke.
1) 수평, 수직 모음결정1) Horizontal and vertical vowel determination
한글유형분류를 위한 한글문자의 기본 특징으로 다음과 같다.The basic features of Hangul characters for Hangul type classification are as follows.
ⅰ) 수직모음은 문자내의 제3도에 정의된 8방향 코드가 2인 획중에서 가장 오른쪽에 있고, 다른 획과 비교하여 길이가 길다.Iii) The vertical vowel is the rightmost of the strokes with the eight-way code defined in Figure 3 in Figure 3, and is longer than other strokes.
ⅱ) 수평모음은 문자내의 8방향 코드가 0안 획 중에서 예외도 있지만(예외 : ㅗ,ㅛ에서 수직획과 수평획을 연결해서 쓴 문자), 대부분 폭이 제일 넓다.Ii) Horizontal vowels are the widest in most cases, although the eight-way code in the text has an exception among zero strokes (exception: letters written in vertical and horizontal strokes in ㅗ and ㅛ).
이러한 특징을 기초로 다음식을 이용하여 수평획과 수직획을 구한다.Based on these characteristics, the horizontal and vertical strokes are obtained using the following equation.
[수학식 2][Equation 2]
[수학식 3][Equation 3]
위 식에서 사용된 기호의 의미는 다음과 같다.The meanings of the symbols used in the above formula are as follows.
문자영상은 검은 화소를 모두 포함하는 높이가 H이고 폭이 W이 최소 직사각형으로 표현된다.The character image has a height H and all widths W including all black pixels as a minimum rectangle.
DIRi는 i번째 획의 첫번째 선분의 8방향 코드를 나타내고, Si(x),Si(y)는 각각 i번째 획의 처음 화소의 x,y좌표를 나타낸다.DIR i represents the eight-direction code of the first line segment of the i-th stroke, and S i (x) and S i (y) represent the x and y coordinates of the first pixel of the i-th stroke, respectively.
그리고 S-Wi는 i번째 획의 폭을 나타낸다.SW i represents the width of the i-th stroke.
(2)식을 만족하는 획중에서 획의 시작 x좌표값이 제일 왼쪽에 있는 획을 수평획으로 결정한다. 그리고 (3) 식을 만족하면 수직획으로 결정한다.Among the strokes satisfying equation (2), the horizontal stroke is determined at the leftmost stroke of the stroke's x-coordinate. If (3) is satisfied, it is determined by vertical stroke.
(2),(3)식을 이용하여 수평, 수직모음을 얻은 후 올바른 수평, 수직모임인지 검증을 한다.Obtain the horizontal and vertical vowels using equations (2) and (3) and verify that they are the correct horizontal and vertical vowels.
그 한예가 '브'로 다음과 같은 (4)식을 만족하면 수직모음으로 결정한 획을 일반획으로 결정하여 수평모음만 있는 것으로 결정한다.For example, if 'B' satisfies the following equation (4), the stroke determined by the vertical vowel is determined as the general stroke, and only the horizontal vowel is determined.
[수학식 4][Equation 4]
2) 종성 존재 여부결정2) Determination of presence of species
수직모음이 있는 경우의 종성 존재여부는 수직모음의 끝점에서 다음 획들의 시작점의 획간 코드가 2,3,4중의 하나이면 종성이 있는 것으로 파악한다.The presence or absence of verticality in the case of vertical vowels is considered to be a finality if the stroke code at the start of the next stroke at the end of the vertical vowel is one of 2, 3 or 4.
그리고 수평 모음이 있는 경우는 수평 모음 다음 획들의 처음 선분 코드가 다음에 나타낸 (5)식을 만족하는 획을 중성에 포함된 획으로 판단하고, (5)식을 만족하지 않는 획은 종성획으로 결정한다.If there is a horizontal vowel, the stroke that satisfies the expression (5) shown below by the first segment code of the strokes following the horizontal vowel is regarded as a stroke included in the neutral, and the stroke that does not satisfy the expression (5) is the final stroke. Decide
여기서, S-Hh-mo는 후보 수평 모음획의 높이이다.Where SH h-mo is the height of the candidate horizontal collection stroke.
[수학식 5][Equation 5]
(4) 인식과정(4) recognition process
인식 알고리즘은 크게 초정/중성/종성의 3가지 자소 인식부분으로 구성되어 있다.Recognition algorithm is composed of three elementary recognition parts of primary, neutral, and final.
각각의 자소 인식부분에서는 미리 입력받은 표본 데이타로부터 추출된 특징코드에 의하여 트리로 구성된 초성/중성/종성 각각의 트리분류자(tree classifier)에 의하여 대분류를 하고, DP(Dynamic Programming)매칭방법에 의한 상세 분류를 하여 인식한다.In each phoneme recognition part, large classification is performed by each tree classifier consisting of tree, tree, and tree based on feature code extracted from pre-entered sample data, and by DP (Dynamic Programming) matching method. Recognize it with a detailed classification.
한 문자가 입력되면 초성인식은 유형 분류에서 얻어진 후보 수평모음 또는 후보수직 모음 전까지의 획들의 특징 코드인 획 형태 코드 및 획 간 코드를 초성 트리분류자로 보내서 인식을 한다. 그리고 인식하고 남은 획들은 한글유형에 따라 남은 획전부 또는 종성 전획까지의 획들의 특징코드를 중성 트리분류자로 보내서 중성을 인식하고, 한글유형에 따라 종성이 존재하면 남은 획들의 특징 코드를 종성 트리분류자에 보내서 종성을 인식한다.If one character is entered, the initial recognition recognizes the stroke type code and the inter-stroke code, which are the feature codes of the strokes up to the candidate horizontal vowels or the candidate vertical vowels obtained from the type classification, to the initial tree classifier. Recognized strokes are sent to the neutral tree classifier by sending the feature codes of the remaining strokes or the final strokes according to the Hangul type to the neutral tree classifier. Send it to the child to recognize the species.
결국 입력 데이타는 초성/중성/종성 인식 부분에서 인식된 각자의 자소(字素)의 조합으로 한 문자로 인식이 되어진다. 이를 보다 구체적으로 설명하면 다음과 같다.As a result, the input data is recognized as one character by a combination of their phonemes recognized in the initial / neutral / final recognition part. This will be described in more detail as follows.
1) 대분류1) Major Category
입력데이타의 초성/중성/종성 각각은 최종적으로 인식될 가능성이 있는 몇개의 유사한 자소들은 이루어진 집합을 구하는 대분류를 이용하여 인식 시간을 줄일 수 있다.Each of the initial / neutral / finality of the input data can reduce the recognition time by using a large classification that yields a set of several similar elements that are likely to be finally recognized.
대분류에 사용하는 특징 코드는 획 형태 코드와 획 간 코드를 사용한다.Feature codes used in large classifications use stroke type codes and stroke-to-stroke codes.
훈련용 필기 데이타에 대해 이러한 특징 코드를 미리 구해서 트리 형태로 저장해 놓은 초성/중성/종성 트리의 분류자들을 탐색하여 같은 특징 코드를 갖는 후보 문자 집합으로 대분류를 한다.The classifiers of the initial / neutral / single tree, which have previously obtained such feature codes for training handwriting data and stored them in a tree form, are searched and classified into candidate character sets having the same feature codes.
자소 트리분류자를 탐색하는 순서는 다음과 같다.The order of searching for the phoneme tree classifier is as follows.
단계 1 : 획의 특징을 나타내는 획 형태 코드로 트리를 탐색한다.Step 1: Navigate the tree with the stroke shape code that characterizes the stroke.
단계 2 : 전획의 끝점에서 다음획의 시작점으로의 방향을 나타내는 획 간 코드로 트리를 탐색한다.Step 2: Navigate the tree with stroke-to-stroke code indicating the direction from the end of the stroke to the start of the next stroke.
단계 3 : 특징 코드값이 없을 때 또는 트리에 탐색하는 노드(node)가 없을 때까지 단계 1과 단계 2를 반복한다.Step 3: Repeat step 1 and step 2 when there are no feature code values or until there are no nodes to search in the tree.
입력된 문자는 위의 순서대로 탐색을 하여 탐색중간에 탐색하려는 노드가 없어서 더 이상 탐색을 진행할 수 없을 때까지 계속 진행하여, 마지막으로 탐색된 노드에 있는 한개 이상의 자소를 갖는 후보 문자 집합으로 대분류된다.The characters entered are searched in the above order and continue until no more nodes can be searched in the middle of the search, so that they are largely divided into candidate character sets with one or more phonemes at the last searched node. .
탐색된 노드에 후보 문자가 없을 경우엔 오인식으로 결과를 출력하고, 한개의 자소를 갖는 후보 문자 집합을 만나면 그 자소를 인식된 자소로 결정하게 된다.If there is no candidate character in the searched node, the result is misrecognized, and when a candidate character set having one phoneme is encountered, the phoneme is determined as the recognized phoneme.
그리고 두개이상의 자소를 갖는 후보 문자 집합을 만하면 DP 매칭 방법을 이용한 상세 분류를 거쳐 인식된 자소를 인식 자소로 결정하게 된다.If a candidate character set having two or more phonemes is obtained, the recognized phoneme is determined as a recognition phoneme through detailed classification using a DP matching method.
자소(초성,중성,종성) 트리분류자는 제7도에 있다.The elementary, primary, neutral, and triclassifiers are in Figure 7.
2) DP매칭에 의한 상세분류2) Detailed classification by DP matching
필기체는 같은 문자라도 쓰는 속도나 방법에 따라서 모양의 변화가 심하다.Cursive changes in shape depending on the speed and method of writing the same letter.
이러한 변화에 적응할 수 있는 프로토타입(Prototype)매칭 방법으로써 탄력적 매칭(elastic matching) 방법이 있다.As a prototype matching method that can adapt to such a change, there is an elastic matching method.
이 방법은 미지의 문자를 프로토타입에 매칭시킬때, 각점에 대해서 1대 1매칭을 시도하는 것이 아니라, 탄력적으로 매칭을 시도한다.This way, when matching an unknown character to a prototype, it does not attempt to match one-to-one for each point, but rather elastically.
이렇게 함으로써 약간의 모양의 차이나 점의 갯수의 차이를 극복할 수 있다.By doing this, you can overcome slight differences in shape or the number of dots.
제8도는 숫자 3의 탄력적 매칭의 예이다.8 is an example of the number 3 elastic matching.
DP매칭 방법을 이용하여 상세 분류를 하기 위해 자음 단위로 프로토타입을 가지고 있으며, 각 자음은 하나 이상의 프로토타입을 가질 수 있다.For detailed classification using the DP matching method, prototypes are consonant units, and each consonant may have one or more prototypes.
미지의 입력에 대해서 각 프로토타입과의 거리(유사도)를 계산하여 가장 거리가 작은 프로토타입을 찾는 방법이 DP매칭 방법이다.The DP matching method is to find the prototype with the smallest distance by calculating the distance (similarity) to each prototype for the unknown input.
전처리 후의 특징점열의 각 특징점에 대하여 2개의 특징을 추출한다.Two features are extracted for each feature point of the feature sequence after preprocessing.
i번째 특징점 Vi의 첫번째 특징은 x좌표 xi, 두번째 특징은 y좌표 yi이다.The first feature of the i th feature point V i is the x coordinate x i and the second feature is the y coordinate y i .
N개의 특징점을 갖는 획에 대한 특징 벡타는 다음과 같다.The feature vector for a stroke with N feature points is as follows.
[수학식 6][Equation 6]
프로토타입과 미지의 입력문자를 매칭할때, k번째 프로토타입의 j번째 점과 미지의 입력문자의 i번째 점과의 거리는 다음의 공식으로 계산된다.When matching a prototype with an unknown input character, the distance between the jth point of the kth prototype and the ith point of the unknown input character is calculated using the following formula:
d(i,j,k)=|yi-yik|+|xi-xik|d (i, j, k) = | y i -y ik | + | x i -x ik |
프로토타입과 미지의 입력문자의 매칭거리가 가장 작게 되는 프로토타입 k의 거리는 다음과 같이 구해진다.The distance of prototype k, where the matching distance between the prototype and the unknown input character is the smallest, is calculated as follows.
[수학식 7][Equation 7]
여기서, N은 미지의 입력문자의 특징점 수이고, w는 미지의 입력문자의 인덱스를 프로토타입의 인덱스로 매핑하는 함수이고, Dk는 k번째의 프로토타입과 미지의 입력문자와의 거리이다. w는 단조증가함수(monotonic inceasing function)가 되기 위해 경계조건(boundary condition)과 연속조건(continuity condition)을 가진다.Where N is the number of feature points of the unknown input character, w is the function that maps the index of the unknown input character to the prototype index, and D k is the distance between the kth prototype and the unknown input character. w has a boundary condition and a continuity condition to be a monotonic inceasing function.
w의 경계조건은 다음과 같다.The boundary condition of w is
w(1)=1w (1) = 1
w(N)=Mk w (N) = M k
여기서 Mk는 k번째 프로토타입의 특징점 수이다.Where M k is the number of feature points in the kth prototype.
또한 w의 연속조건은 다음과 같다.In addition, the continuous condition of w is as follows.
w(i+1)-w(i)=0,1,2 for i=1,…, N-1w (i + 1) −w (i) = 0,1,2 for i = 1,... , N-1
(7) 식은 다음과 같이 재귀적 관계(recursive relation)를 이용한 동적 프로그래밍 방법에 의해 효율적으로 구해진다.Equation (7) is efficiently obtained by the dynamic programming method using the recursive relation as follows.
[수학식 8][Equation 8]
여기서, D(i,j,k)는 미지의 입력문자의 i번째 특징점과 프로토타입의 j번째 특징점과의 누적거리이다.Where D (i, j, k) is the cumulative distance between the i th feature point of the unknown input character and the j th feature point of the prototype.
D(1,1 ; k)=d(1,1 : k)로 부터 시작하여 D(N,Mk; k)를 구하면 Dk가 된다.Starting from D (1,1; k) = d (1,1: k), we find D (N, M k ; k) to be D k .
한글을 구성 특징때문에 자모의 모든 가능성을 골하면 11,172((초성 19개)*(중성 21개)*(종성 27개 또는 무성))문자가 가능하여 문자단위로 인식을 하면 만여가지가 넘는 한글 문자들의 특징을 컴퓨터에 저장하여야 하고, 인식시간이 오래걸리는 단점이 있으나, 본 발명에 따라 자소별로 인식을 하게 되면 초성,중성,종성 각각 19,21,27종류의 자소에 대해서만 저장하고, 비교하면 되므로 인식시간이 빠르고, 적은 저장장소를 필요로 한다.Because of the characteristics of Hangul, 11,172 ((19 initial)) * (21 neutral) * (27 final or 27 unvoiced) characters are possible if you choose all the possibilities of Jamo. These features have to be stored in a computer, and it takes a long time to recognize, but if the recognition by phonemes according to the present invention, only for the first, neutral, and final kinds of 19, 21, 27 kinds of phonemes, respectively, and compared Recognition time is fast and requires less storage.
또한 본 발명은 상세분류시 DP매칭을 사용하였기 때문에 문자 필기시 발생하기 쉬운 필기운동의 변동을 흡수하여 인식을 할 수 있다.In addition, in the present invention, since the DP matching is used during the detailed classification, it is possible to absorb and recognize the variation of the writing movement which is easy to occur when writing the text.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920003354A KR940001048B1 (en) | 1992-02-29 | 1992-02-29 | On-line hand written character recognition method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920003354A KR940001048B1 (en) | 1992-02-29 | 1992-02-29 | On-line hand written character recognition method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930018416A KR930018416A (en) | 1993-09-21 |
KR940001048B1 true KR940001048B1 (en) | 1994-02-08 |
Family
ID=19329810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920003354A KR940001048B1 (en) | 1992-02-29 | 1992-02-29 | On-line hand written character recognition method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR940001048B1 (en) |
-
1992
- 1992-02-29 KR KR1019920003354A patent/KR940001048B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930018416A (en) | 1993-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10936862B2 (en) | System and method of character recognition using fully convolutional neural networks | |
JP4350109B2 (en) | Character recognition system for identifying scanned and real-time handwritten characters | |
Amin | Off-line Arabic character recognition: the state of the art | |
Lee et al. | A new methodology for gray-scale character segmentation and recognition | |
Namboodiri et al. | Online handwritten script recognition | |
EP1564675B1 (en) | Apparatus and method for searching for digital ink query | |
EP1630723A2 (en) | Spatial recognition and grouping of text and graphics | |
CN110114776B (en) | System and method for character recognition using a fully convolutional neural network | |
Davis et al. | Recognition of handwritten characters—a review | |
Tseng et al. | Speeding up Chinese character recognition in an automatic document reading system | |
Lehal et al. | Feature extraction and classification for OCR of Gurmukhi script | |
KR100220213B1 (en) | Apparatus and method of character recognition based on 0-1 pattern histogram | |
He et al. | Open set Chinese character recognition using multi-typed attributes | |
Singh et al. | Recognition of online unconstrained handwritten Gurmukhi characters based on Finite State Automata | |
Mozaffari et al. | Two-stage lexicon reduction for offline arabic handwritten word recognition | |
Khayyat et al. | Arabic handwritten word spotting using language models | |
Li et al. | On-line handwritten alphanumeric character recognition using feature sequences | |
Procter et al. | Cursive handwriting recognition using hidden Markov models and a lexicon-driven level building algorithm | |
KR940001048B1 (en) | On-line hand written character recognition method | |
Faradji et al. | Online farsi handwritten words recognition using a combination of 3 cascaded RBF neural networks | |
Fakir et al. | On the recognition of Arabic characters using Hough transform technique | |
Tou et al. | Automatic recognition of handwritten characters via feature extraction and multi-level decision | |
Fermanian et al. | Deep recognition-based character segmentation in handwritten syriac manuscripts | |
Airphaiboon et al. | Recognition of handprinted Thai characters using loop structures | |
Liang et al. | Character-position-free on-line handwritten Japanese text recognition |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20030129 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |