KR20010030015A - 패턴열 매칭장치와 패턴열 매칭방법 - Google Patents

패턴열 매칭장치와 패턴열 매칭방법 Download PDF

Info

Publication number
KR20010030015A
KR20010030015A KR1020000043276A KR20000043276A KR20010030015A KR 20010030015 A KR20010030015 A KR 20010030015A KR 1020000043276 A KR1020000043276 A KR 1020000043276A KR 20000043276 A KR20000043276 A KR 20000043276A KR 20010030015 A KR20010030015 A KR 20010030015A
Authority
KR
South Korea
Prior art keywords
string
pattern
voting
character
matrix
Prior art date
Application number
KR1020000043276A
Other languages
English (en)
Other versions
KR100383017B1 (ko
Inventor
아카기다쿠마
Original Assignee
니시무로 타이죠
가부시끼가이샤 도시바
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 니시무로 타이죠, 가부시끼가이샤 도시바 filed Critical 니시무로 타이죠
Publication of KR20010030015A publication Critical patent/KR20010030015A/ko
Application granted granted Critical
Publication of KR100383017B1 publication Critical patent/KR100383017B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/34Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/19007Matching; Proximity measures
    • G06V30/19013Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • G06V30/1902Shifting or otherwise transforming the patterns to accommodate for positional errors
    • G06V30/1904Shifting or otherwise transforming the patterns to accommodate for positional errors involving a deformation of the sample or reference pattern; Elastic matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Character Discrimination (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 패턴열 매칭장치와 패턴열 매칭방법에 관한 것으로서, 탐색문자열의 각 문자와 사전문자열의 각 문자를 비교하고, 탐색문자열의 각 문자와 사전문자열의 각 문자에 대응하는 2변으로 이루어지는 매트릭스에 투표를 실행하고 매트릭스의 경사 방향의 성분마다 투표결과의 값을 계산하여, 이 투표결과의 계산값에 기초하여 매칭결과를 판정하고 이것에 의해 문자나열을 고려하여 고속이면서 고정밀도로 노이즈에 강한 매칭처리가 가능하게 되는 것을 특징으로 한다.

Description

패턴열 매칭장치와 패턴열 매칭방법{PATTERN STRING MATCHING DEVICE AND PATTERN STRING MATCHING METHOD}
본 발명은 문자인식장치 등에 이용되고, 예를 들면 인식결과의 문자로 이루어진 매칭시키고자 하는 문자열 등의 제 1 문자열과, 데이터베이스에 등록되어 있는 문자열 등의 제 2 문자열과의 매칭처리를 실행하는 패턴열 매칭장치와 패턴열 매칭방법에 관한 것이다.
종래, 화상 데이터로부터 문자를 인식하는 문자인식장치에서는 최종적으로 문자인식결과를 얻기 위한 중요한 처리로서 패턴열 매칭처리가 있다. 이 패턴열 매칭처리는 문자인식으로 얻을 수 있는 문자후보로 구성되는 매칭시키고자 하는 문자열로서의 제 1 문자열의 후보와, 데이터베이스(사전)에 등록되어 있는 문자열로서의 제 2 문자열의 후보와 매칭을 실행한다. 이것에 의해 패턴열 매칭처리에서는 문자인식의 결과로부터 얻을 수 있는 문자열이 데이터베이스에 등록되어 있는 어느 문자열과 가장 매칭되는지를 특정한다.
이와 같은 패턴열 매칭처리를 실행하는 경우, 탐색문자열의 후보는 문자인식으로 얻을 수 있는 문자후보에 따라 여러가지 조합이 있다. 또, 탐색문자열에 대해 매칭시키는 사전문자열에도 다수의 후보가 존재한다.
종래의 패턴열 매칭처리에는 DP매칭법, 투표법에 의한 매칭처리 등이 있다.
상기 DP매칭법에서는 탐색문자열의 후보를 구성하는 복수의 문자후보에 대해 패스탐색을 실행한다. 그러나, 상기 DP매칭법에서는 탐색문자열의 인식문자의 후보를 1위, 2위, 3위…로 늘려가면, 탐색공간이 급격하게 증가하여 처리가 매우 늦어진다.
또, 투표법에 의한 매칭처리는 제 2 문자열 후보의 각 문자에 대해 인식결과의 문자후보로 이루어지는 제 1 문자열의 각 문자마다 투표를 실행하고, 가장 투표율이 높은 제 2 문자열의 후보를 선택하는 것이다. 그러나, 이 수법으로는 문자열의 문자나열이 고려되어 있지 않다. 이 때문에, 탐색문자열을 구성하는 문자가 같고, 문자나열이 다른 경우, 구별을 할 수 없다. 특히, 로마자 문화권에서는 문자종이 26종류로 적기 때문에, 이와 같은 문제가 크다.
이 때문에, 복수의 문자열의 후보와 복수의 문자열의 후보와의 매칭처리를 어떻게 효율적으로 정확하게 실행하는지가 패턴열 매칭처리의 최대 과제이다. 즉, 「고속」이면서 「문자의 나열을 고려한」 패턴열 매칭처리가 요망되고 있다.
또, 패턴열 매칭처리에서는 노이즈가 문제가 된다. 예를 들면, 탐색문자열을 구성하는 문자의 인식처리에서 문자 오려내기를 실패하고, 단어와는 별도의 문자가 탐색문자열에 포함되어 있는 경우가 있다. 이와 같은 경우, 탐색문자열에 바른 문자열이 포함되어 있음에도 불구하고, DP매칭법 등의 종래수법으로는 매칭할 수 없는 경우가 많다.
또, 투표법 등에서는 매칭한 후에도 어느 부분이 매칭되었는지를 아는 것이 어려워 노이즈를 잘라내어 별도로 인식하는 것이 어렵다.
이와 같이, 매칭처리에서는 「내(耐)노이즈성」이 높고, 「노이즈위치의 특정」이 고정밀도인 것이 요망되고 있다.
상기한 바와 같이, 고속이면서 고정밀도이고, 문자나열을 고려한 매칭처리가 요망되고 있어 고속이면서 고정밀도로 문자나열을 고려한 매칭처리가 가능한 패턴열 매칭장치와 패턴열 매칭방법을 제공하는 것을 목적으로 한다.
또, 내노이즈성이 높고, 노이즈위치의 특정이 가능한 매칭처리가 요망되고 있어 내노이즈성이 높고, 노이즈위치의 특정이 가능한 매칭처리가 가능한 패턴열 매칭장치와 패턴열 매칭방법을 제공하는 것을 목적으로 한다.
도 1은 본 발명의 실시형태에 관련된 문자인식장치의 개략구성을 나타낸 도면,
도 2는 문자열 매칭처리부의 개략 구성을 나타낸 블록도,
도 3은 매트릭스의 예를 나타낸 도면,
도 4는 매트릭스로의 투표예를 나타낸 도면,
도 5는 매트릭스의 사영(射影)을 취한 경우의 예를 나타낸 도면,
도 6은 매트릭스의 사영을 취한 경우의 예를 나타낸 도면,
도 7은 노이즈를 고려하지 않은 경우의 매칭처리를 설명하기 위한 플로우 챠트,
도 8은 탐색문자열 앞에 노이즈가 붙어 있는 경우의 투표예를 나타낸 도면,
도 9는 탐색문자열의 전후에 노이즈가 붙어 있는 경우의 매칭처리를 설명하기 위한 플로우 챠트,
도 10은 탐색문자열 사이에 노이즈가 붙어 있는 경우의 투표예를 나타낸 도면,
도 11은 탐색문자열 사이에 노이즈가 붙어 있는 경우의 매칭처리를 설명하기 위한 플로우 챠트,
도 12는 문자열 매칭처리부의 다른 구성예를 나타낸 블록도,
도 13은 투표용 메모리로의 투표를 설명하기 위한 도면,
도 14는 투표용 메모리로 직접 투표하는 경우의 매칭처리를 설명하기 위한 플로우 챠트 및
도 15는 투표용 테이블 데이터베이스의 예를 나타낸 도면이다.
본 발명의 패턴열 매칭장치는 각각 복수의 패턴으로 이루어진 제 1 패턴열과 제 2 패턴열과의 매칭처리를 실행하는데 있어서, 상기 제 1 패턴열의 각 패턴과, 상기 제 2 패턴열의 각 패턴이 매치되어 있는 경우에 매치되어 있는 패턴의 상기 제 1 패턴열에 있어서 위치 및 상기 제 2 패턴열에 있어서 위치에 따라 투표를 실행하는 투표수단과, 이 투표수단에 의한 투표결과에 기초하여 매칭결과를 판정하는 판정수단으로 구성되어 있다.
본 발명의 패턴열 매칭방법은 복수의 패턴으로 이루어진 제 1 패턴열과 제 2 패턴열의 매칭처리를 실행하는 방법에 있어서, 상기 제 1 패턴열의 각 패턴과 상기 제 2 패턴열의 각 패턴이 매치되어 있는 경우에, 매치되어 있는 패턴의 상기 제 1 패턴열에 있어서 위치 및 상기 제 2 패턴열에 있어서 위치에 따라 투표를 실행하고, 이 투표결과에 기초하여 매칭결과를 판정하는 것을 특징으로 한다.
본 발명의 목적 및 장점은 하기에서 설명되어지며, 본 발명의 실시예를 통하여 알 수 있다. 또한, 본 발명의 목적 및 장점은 하기에서 지적되는 매개 및 결합수단에 의해 얻어짐을 알 수 있다. 본 발명에서 첨부되는 도면은 본 발명의 원리를 설명하기 위하여 상기에서 주어진 설명과 함께 하기에서 주어지는 바람직한 실시예를 설명한다.
이하, 본 발명의 실시형태에 대해 도면을 참조하여 설명한다.
도 1은 본 발명의 실시형태에 관련된 문자인식장치의 전체 구성을 개략적으로 나타낸 도면이다. 문자인식장치는 화상입력부(1), 영역검출부(2), 행 오려내기부(3), 문자 오려내기부(4), 문자인식부(5) 및 문자열 매칭처리부(패턴열 매칭장치)(6)로 구성되어 있다.
상기 화상입력부(1)에서, 화상이 입력된다. 상기 영역검출부(2)는 화상입력부(1)에 의해 입력된 화상으로부터 문자가 기재되어 있는 영역을 검출한다. 상기 행 오려내기부(3)는 영역검추부(2)에 의해 검출된 영역에서 문자행을 오려낸다. 상기 문자 오려내기부(4)는 행 오려내기부(3)에 의해 오려진 문자행에서 문자후보를 오려낸다.
상기 문자인식부(5)는 문자 오려내기부(4)에 의해 오려진 각 문자후보에 대해 문자인식처리를 실행한다. 이 문자인식처리에서는 문자(패턴)의 화상과 문자인식사전(5a)에 기억되어 있는 문자(패턴)와 비교하고, 인식문자의 후보를 선출한다.
상기 문자열 매칭처리부(6)는 제 1 문자열과 제 2 문자열의 매칭처리를 실행하는 것이다. 상기 제 1 문자열은 상기 문자인식부(5)에 의해 선출된 인식문자의 후보에 기초하여 단어 등의 문자열마다 선출되는 인식결과의 문자열이다. 상기 제 2 문자열은 미리 데이터베이스(후술하는)에 등록되어 있는 문자열이다. 따라서, 상기 문자열 매칭처리부(6)는 문자인식으로 얻을 수 있는 문자후보로부터 매칭시키고자 하는 문자열로서의 제 1 문자열과 미리 데이터베이스에 등록되어 있는 제 2 문자열과의 매칭처리를 실행한다. 이 문자열의 매칭처리 결과, 제 1 문자열과 가장 매치되는 제 2 문자열이 인식결과로서 출력된다.
도 2는 문자열 매칭처리부(6)의 구성을 나타낸 도면이다. 도 2에 나타낸 바와 같이 문자열 매칭처리부(6)는 매칭용 문자열 데이터베이스(문자열 매칭용 사전)(11), 제 2 문자열 입력부(12), 제 2 문자열 메모리(13), 제 1 문자열 입력부(14), 제 1 문자열 메모리(15), 매트릭스 작성부(16), 매트릭스용 메모리(17), 비교투표부(18), 투표결과 계산부(19), 계산값용 메모리(20), 매칭결정부(21), 매칭결과 출력부(22), 노이즈 삭제부(23), 인접계산부(24)로 구성되어 있다.
상기 매칭용 문자열 데이터베이스(11)에는 제 2 문자열의 후보가 기억되어 있다.
상기 제 2 문자열 입력부(12)에는 매칭용 문자열 데이터베이스(11)로부터 제 2 문자열(제 2 패턴열)의 후보가 입력된다. 입력된 제 2 문자열은 상기 제 2 문자열 메모리(13)에 기억된다.
상기 제 1 문자열 입력부(14)에는 문자인식부(5)에 의해 얻을 수 있는 문자후보로부터 인식문자열(제 1 패턴열)이 입력된다. 이 입력된 제 1 문자열은 상기 제 1 문자열 메모리(15)에 기억된다.
상기 매트릭스 작성부(16)는 매트릭스용 메모리(17)에 상기 제 2 문자열과 제 1 문자열에 대응하는 매트릭스를 작성한다. 이 매트릭스는 매트릭스용 메모리(17) 상에 상기 제 2 문자열의 각 문자(패턴)를 1행에 나열하여 횡축으로 하고, 상기 제 1 문자열의 각 문자(패턴)를 1열로 나열하여 종축으로 작성된다. 즉, 상기 제 1 문자열을 구성하는 문자수가 m개, 상기 제 2 문자열을 구성하는 문자수가 n개인 경우, m행n열의 매트릭스가 매트릭스용 메모리(17)에 작성된다.
예를 들면 도 3에 나타낸 바와 같이 「STRING」이라는 제 1 문자열에 대해 「STRING」이라는 제 2 문자열을 매칭처리하는 경우, 매트릭스용 메모리(17)에는 제 1 문자열로서의 STRING의 각 문자에 대응하는 행과, 제 2 문자열로서의 STRING의 각 문자에 대응하는 열로 이루어지는 6행6열의 매트릭스가 작성된다.
상기 비교투표부(18)는 제 2 문자열의 각 문자와 제 1 문자열의 각 문자를 비교하고, 비교한 문자가 매치되어 있는지의 여부를 판정한다. 또, 비교한 문자가 매치된 경우, 비교투표부(18)는 상기 매트릭스용 메모리(17) 상에 작성한 매트릭스의 매치된 제 2 문자열의 문자와 제 1 문자열의 문자에 대응하는 행과 열이 교차하는 위치에 투표를 실행한다. 또, 이 투표는 제 1 문자열의 문자의 유사도 등에 따른 값이 투표되도록 해도 좋다.
예를 들면 도 4에 나타낸 바와 같이 제 2 문자열「STRING」에 대해 제 1 문자열「STRING」을 매칭처리하는 경우, 제 2 문자열의 「S」에 대해 제 1 문자열의 「S」가 매치된다. 이 때문에, 비교투표부(18)는 매트릭스의 1행1열째에 투표한다. 또, 비교투표부(18)는 제 2 문자열의 「T」, 「R」, 「I」, 「N」, 「G」의 각 문자에 대해서도 제 1 문자열의 매치되는 문자가 교차하는 위치, 즉 2행2열째, 3행3열째, 4행4열째, 5행5열째, 6행6열째에 각각 투표를 실행한다.
상기 투표결과 계산부(19)는 비교투표부(18)에 의해 투표된 매트릭스의 경사 방향의 계산을 실행한다. 이 투표결과 계산부(19)에서는 매트릭스의 경사 방향의 각 요소를 이용하여 소정의 계산을 실행한다. 예를 들면, 투표결과 계산부(19)는 비교투표부(18)에 의해 매트릭스로의 투표가 실행된 후, 매트릭스의 행에 대해 비스듬하게 45도 방향의 사영성분마다 소정의 계산을 실행하고, 계산값용 메모리(20)에 계산값을 기억한다.
또, 투표결과 계산부(19)는 계산값용 메모리(20)에 계산값을 기억할 때, 계산값용 메모리(20)에 계산값을 기억하기 위한 선분을 작성한다. 이 선분은 제 1 문자열의 길이(제 1 문자열의 문자수)를 SEARCHLEN으로 하고, 제 2 문자열의 길이(제 2 문자열의 문자수)를 DICLEN으로 하면, 길이(계산값의 수)가 DICLEN+SEARCHLEN-1이 된다. 이 선분은 제 1 문자열과 제 2 문자열이 동일한 길이(문자수)인 경우, 매트릭스의 왼쪽 아래부터 오른쪽 위에 걸친 대각선 방향의 선분에 대응한다. 이 선분에는 매트릭스의 오른쪽으로 경사 아래방향에 있어서 투표결과의 계산값이 기억된다.
상기 매칭결정부(21)는 계산값용 메모리(20)에 기억된 계산값으로부터 제 2 문자열과 제 1 문자열이 어느 정도 매칭되어 있는지를 나타내는 득점을 판단한다. 또, 매칭결정부(21)는 판단한 득점에 따라 제 2 문자열과 제 1 문자열이 매칭되었는지의 여부를 결정하고, 매칭결과를 매칭결과 출력부(22)에 의해 출력한다.
상기 노이즈 삭제부(23)는 후술하는 바와 같이 제 1 문자열에 노이즈가 붙어 있는 것이 판단된 경우에 제 1 문자열로부터 노이즈를 삭제한다.
상기 인접계산부(24)는 후술하는 바와 같이 제 1 문자열 사이에 노이즈가 붙어 있는 경우에 계산값용 메모리(20)에 기억된 계산값에 있어서 피크위치의 값과, 피크위치에 인접하는 위치의 값에 대해 계산을 실행한다.
다음에, 매트릭스로의 투표결과의 계산값에 대해 설명한다.
제 2 문자열에 대해 제 1 문자열의 각 문자가 같은 위치에서 모두 일치하는 경우, 매트릭스에는 n행n열의 성분에만 투표된다. 따라서, 투표결과 계산부(19)가 매트릭스의 경사 방향에 있어서 계산을 실행하면, 계산값용 메모리(20)에는 선분의 중간위치에만 큰 값의 계산값이 기억된다.
예를 들면, 도 5에 나타낸 바와 같이 제 2 문자열「STRING」과 제 1 문자열「STRING」의 경우, 제 2 문자열의 문자와 제 1 문자열의 문자가 같은 위치에서 모두 일치하고 있다. 따라서, 매트릭스에는 1행1열, 2행2열, 3행3열, 4행4열, 5행5열, 6행6열의 성분에만 투표된다. 이 때문에, 투표결과 계산부(19)가 매트릭스의 왼쪽 위부터 오른쪽 아래방향(경사 방향)의 성분에 대해 계산을 실행하면, 투표결과의 계산값은 선분의 중앙위치만 커진다. 예를 들면, 도 5에 나타낸 제 2 문자열과 제 1 문자열의 경우에, 각각의 투표수를 1로 하고, 매트릭스의 경사 방향의 사영을 취하면, 투표결과의 계산값은 선분의 중간위치에서 6이 된다. 이 값은 제 2 문자열의 길이와 동일하다.
또, 제 2 문자열의 각 문자와 제 1 문자열의 각 문자가 일치해도, 제 1 문자열의 각 문자의 위치와, 제 2 문자열의 각 문자의 위치가 다른 경우, 계산값 메모리(20)에 있어서 선분은 중간위치의 계산값만이 커지는 것은 아니다.
예를 들면, 도 6에 나타낸 바와 같이 제 2 문자열「STRING」과 제 1 문자열「GNIRTS」의 경우, 제 2 문자열의 각 문자와 제 1 문자열의 각 문자는 일치하지만, 제 1 문자열의 각 문자의 위치와, 제 2 문자열의 각 문자의 위치가 다르다. 따라서, 매트릭스에는 6행1열, 5행2열, 4행3열, 3행4열, 2행5열, 1행6열의 성분에 의해 투표된다. 이 때문에, 투표결과 계산부(19)가 매트릭스의 왼쪽 위부터 오른쪽 아래방향(경사 방향)의 성분에 대해 계산을 실행하면, 투표결과의 계산값은 선분의 전체에 분포하게 된다.
즉, 도 6에 예를 들면, 도 6에 나타낸 바와 같은 경우에 매트릭스의 경사 방향의 사영을 취하면, 투표결과의 계산값은 선분의 중간위치에 집중되지 않고, 선분의 전체에 계산값의 분포가 넓어지게 된다.
다음에, 노이즈를 고려하지 않고, 매트릭스를 이용한 매칭처리를 실행하는 경우에 대해 설명한다. 또, 이하의 설명에서는 투표결과에 관한 매트릭스의 경사 방향에 있어서 계산예로서, 투표수의 사영을 취하는 경우에 대해 설명한다.
제 1 문자열에 노이즈를 포함하지 않는 경우, 일치하는 제 1 문자열의 길이(문자수)SEARCHLEN과 제 2 문자열의 길이(문자수)DICLEN은 동일 길이(문자수)이다. 이 경우, 이 투표결과 계산부(19)는 길이(수)가 DICLEN+SEARCHLEN-1의 선분을 계산값용 메모리(20) 내에 작성한다.
이 선분(사영선분)은 매트릭스의 왼쪽 아래부터 오른쪽 위에 걸친 대각선방향의 각 성분에 대응한다. 투표결과 계산부(19)는 계산값용 메모리(20)내에 작성한 선분에 오른쪽으로 경사 아래방향의 각 성분마다 투표결과의 계산을 실행한다.
또, 제 1 문자열의 전후에 노이즈가 붙어 있지 않은 경우, 사영선분의 길이를 PROJLEN으로 하면, PROJLEN=DICLEN+SEARCHLEN-1이다. 이 경우, 사영선분의 피크위치의 양쪽에는 DICLEN-1개의 매스(계산값을 저장하는 위치)가 있다.
다음에 상기한 바와 같이 노이즈를 고려하지 않고, 매트릭스를 이용한 매칭처리에 대해 도 7에 나타낸 플로우 챠트를 참조하면서 설명한다.
즉, 제 1 문자열 입력부(14)는 제 1 문자열을 입력하고(스텝1), 제 1 문자열메모리(15)에 기억한다. 한편, 제 2 문자열 입력부(12)는 매칭용 문자열 데이터베이스(11)로부터 제 2 문자열을 입력하고(스텝2), 제 2 문자열 메모리(13)에 기억한다. 그렇게 하면, 매트릭스 작성부(16)는 매트릭스용 메모리(17)상에 제 2 문자열을 횡축으로 하고, 제 1 문자열을 종축으로 한 매트릭스를 작성한다(스텝3). 이것에 의해 작성된 매트릭스는 제 1 문자열의 각 문자에 대응하는 행과, 제 2 문자열의 각 문자에 대응하는 열로 구성된다.
매트릭스가 작성되면, 비교투표부(18)는 제 2 문자열의 각 문자에 대해 제 1 문자열의 각 문자가 매치되어 있는지를 판단한다. 즉, 비교투표부(18)는 제 1 문자열의 문자수를 m, 제 2 문자열의 문자수를 n으로 하면, 제 1 문자열의 i(i=1∼m)번째의 문자와 제 2 문자열의 j(=1∼n)번째의 문자가 매치되어 있는지의 여부를 순서대로 판단한다(스텝4).
이 판단에 의해 제 1 문자열의 i번째 문자와 제 2 문자열의 j번째의 문자가 매치되어 있다고 판단한 때, 비교투표부(18)는 매트릭스용 메모리(17) 상의 매트릭스의 i행, j열의 성분에 투표를 실행한다(스텝5).
이 투표는 제 1 문자열의 문자인식에 있어서 인식문자의 후보가 복수 있는 경우, 문자의 후보 가운데 어느 하나가 일치한 경우에 투표를 실행하도록 해도 좋다. 또, 제 1 문자열의 문자인식에 있어서 인식문자의 후보의 우선순위, 또는 인식문자의 유사도에 기초하여 중점을 둔 수치를 투표하도록 해도 좋다. 또, 제 1 문자열의 문자인식에 있어서 인식문자의 유사도가 소정의 기준값 이하인 경우, 투표하지 않도록 해도 좋다.
이와 같은 투표후, 또는 상기 스텝3에서 매치되지 않았다고 판단한 경우, 아직 비교하지 않은 문자의 조합이 있는지의 여부를 판단한다(스텝6). 이 판단에 의해 아직 비교하지 않은 문자의 조합이 있다고 판단한 경우, 상기 스텝4로 되돌아가 처리를 반복한다.
모든 문자에 대한 비교가 종료되었다고 판단한 경우, 투표결과 계산부(19)는 투표결과로서 얻을 수 있는 매트릭스의 경사 방향에 있어서 소정의 계산을 실행한다(스텝7). 이 때, 투표결과 계산부(19)는 매트릭스의 경사 방향의 성분에 대응하는 길이(수)의 선분을 계산값용 메모리(20)에 작성한다. 이 계산값용 메모리(20)에 작성된 선분에는 계산결과가 기억된다.
투표결과의 계산값이 계산값용 메모리(20)에 기억되면, 매칭결정부(21)는 계산값용 메모리(20)에 기억한 값에 기초하여 제 2 문자열과 제 1 문자열이 어느 정도 매칭되는지를 나타내는 득점을 산출한다.
예를 들면, 매칭결정부(21)에서 얻을 수 있는 득점은 유사도로서 산출된다. 이 경우, 계산값용 메모리(20)에 기억된 값의 피크값을 제 2 문자열의 길이, 또는 제 1 문자열의 길이로 정규화하고, 이 정규화된 피크값을 문자열 매칭의 유사도로 한다. 이 유사도는 제 2 문자열과 제 1 문자열이 가까워지면 가까워질수록 높아진다.
매칭결정부(21)는 계산값용 메모리(20)에 기억된 값의 피크값에 기초하는 득점이 고득점인지의 여부를 판단한다(스텝8). 이 고득점인지의 여부 판단은 소정의 득점 이상인지의 여부에 의해 판단해도 좋고, 다른 제 2 문자열의 후보와의 매칭 득점과의 비교결과에 기초하여 판단해도 좋다.
상기 판단에 의해 고득점이라고 판단한 경우, 매칭결정부(21)는 제 1 문자열과 제 2 문자열이 매칭되었다고 판정하고, 매칭결과를 출력한다(스텝9).
또, 매칭결정부(21)가 고득점이 아니라고 판단한 경우, 제 2 문자열을 변경하여 상기 스텝2로 되돌아가고, 처리를 다시 실행한다.
상기한 바와 같이, 제 2 문자열과 제 1 문자열을 2변으로 한 매트릭스에 투표를 실행하고, 투표된 매트릭스의 경사 방향의 계산을 실행한다. 이 계산결과의 피크값에 기초한 득점에 따라 매칭하는지의 여부를 판단하도록 한 것이다.
이것에 의해 간단한 투표로 문자열의 나열을 고려한 매칭처리를 실행할 수 있고, 제 1 문자열의 각 문자의 위치와 제 2 문자열의 각 문자의 위치가 다른 경우에 매치되었다고 판정하는 것을 방지할 수 있다.
다음에, 제 1 문자열의 전후에 노이즈가 붙어 있는 경우의 매트릭스를 이용한 매칭처리에 대해 설명한다.
도 8은 문자열「STRING」의 앞에 「IT」라는 2문자분의 노이즈가 붙어 있는 제 1 문자열에 대한 매칭처리를 설명하기 위한 것이다. 즉, 도 8은 제 1 문자열이 「ITSTRING」, 제 2 문자열이 「STRING」인 경우에 작성되는 매트릭스, 매트릭스로의 투표결과 및 매트릭스의 사영결과를 나타낸다.
이 경우, 제 2 문자열과 제 1 문자열의 길이가 다르기 때문에, 매트릭스 작성부(16)는 제 1 문자열에 대응하는 세로 변이 긴(열의 수보다도 행의 수가 많은) 매트릭스를 매트릭스용 메모리(17) 상에 작성한다.
이와 같은 제 1 문자열「ITSTRING」의 노이즈로서의 「I」 및 「T」는 제 2 문자열「STRING」의 「I」 및 「T」와 매치된다. 이 때문에, 비교투표부(18)는 매트릭스에서 제 1 문자열의 노이즈로서의 「I」 및 「T」에 대응하는 행과, 제 2 문자열의 「I」 및 「T」에 대응하는 열이 교차하는 매트릭스의 위치에 투표를 실행한다.
매트릭스 작성부(16)가 제 1 문자열「ITSTRING」과 제 2 문자열「STRING」에 대응하여 작성한 매트릭스는 8행6열이 되고, 열의 수보다도 행의 수가 많다. 이 때문에, 계산값용 메모리(20)에는 도 8에 나타낸 바와 같이, 길이(수)가 DICLEN+SEARCHLEN-1=13의 선분이 작성된다. 이 선분에 기억된 값은 매트릭스의 행의 방향에 대해 45도의 선분으로의 사영성분의 계산값에 대응한다. 예를 들면, 도 8과 같이, 매트릭스의 사영을 취하는 경우, 투표결과 계산부(19)는 8행1열째와 3행6열째를 통과하는 방향성분에 대해 선분의 사영을 계산한다.
이와 같이 계산값용 메모리(20)에 작성한 선분에는 매트릭스의 오른쪽으로 경사 아래방향의 성분에 대한 투표결과의 계산값이 기억된다. 이 계산값용 메모리(20)에 기억된 값은 피크값의 위치가 선분의 중심에서 어긋나 있는 것을 얻을 수 있다. 이것은 노이즈가 되는 문자분의 길이(문자수)가 제 1 문자열에 붙었기 때문에 제 1 문자열의 길이가 제 2 문자열의 길이보다 길어지고, 노이즈에 상당하는 부분이 투표결과의 계산값으로서의 선분에 나타났기 때문이다. 따라서, 노이즈가 전후에 붙어 있는 제 1 문자열이 사전문자열과 매치되어 있는 경우, 투표결과의 계산값에 의해 제 1 문자열에 포함되어 있는 노이즈를 판단할 수 있다.
즉, 투표결과의 계산값으로서의 선분에 있어서 피크값의 위치로부터 양단까지의 길이에 기초하여, 노이즈가 제 1 문자열의 전후, 한 쪽에 몇 개 붙어 있는지를 판단할 수 있다.
투표결과의 계산값으로서의 선분에 있어서 피크위치로부터 왼쪽의 단부까지의 길이가 (DICLEN-1)보다도 긴 경우, 노이즈가 제 1 문자열의 앞에 붙어 있다고 판단된다. 또, 피크위치로부터 오른쪽의 단부까지의 길이가 (DICLEN-1)보다도 긴 경우, 노이즈가 제 1 문자열의 뒤에 붙어 있다고 판단된다.
예를 들면, 투표결과의 계산값으로서 매트릭스의 경사 방향의 사영을 취하는 경우, 사영선분의 길이를 PROJLEN, 사영선분의 왼쪽 아래부터 피크위치까지의 길이를 PEAKLEN, 제 2 문자열의 길이를 DICLEN으로 하면, 제 1 문자열의 앞(머리)에 붙은 노이즈의 수(NHEAD)는
NHEAD=PROJLEN-PEAKLEN-(DICLEN-1)
이 된다.
또, 제 1 문자열의 뒤(후방)에 붙은 노이즈의 수(NTAIL)는
NTAIL=(PEAKLEN-1)-(DICLEN-1)
이 된다.
상기한 바와 같이, 제 1 문자열의 전후에 노이즈가 붙어 있는 경우, 투표결과의 계산값으로서의 선분의 피크값의 위치로부터 단부까지의 길이에 기초하여 노이즈의 수를 판단할 수 있다. 또, 길이가 (DICLEN-1)보다도 긴 쪽이 피크값의 위치로부터 오른쪽의 단부인지 왼쪽의 단부인지에 따라 노이즈가 제 1 문자열의 앞에 붙어 있는지 뒤에 붙어 있는지를 판단할 수 있다.
다음에, 상기한 바와 같이 제 1 문자열의 전후에 노이즈가 붙어 있는 경우의 매칭처리에 대해 도 9에 나타낸 플로우 챠트를 참조하면서 설명한다.
즉, 상기 스텝1∼스텝8과 같이 제 1 문자열 입력부(14) 및 제 2 문자열 입력부(12)는 제 1 문자열, 제 2 문자열을 제 1 문자열 메모리(15), 제 2 문자열 메모리(13)에 기억한다(스텝11, 12). 매트릭스 작성부(16)는 매트릭스용 메모리(17) 상에 제 2 문자열을 횡축으로 하고, 제 1 문자열을 종축으로 한 매트릭스를 작성한다(스텝13).
그리고, 비교투표부(18)는 각 문자마다 제 2 문자열의 문자와 제 1 문자열의 문자와 각 문자에 대해 매치되어 있는지의 여부를 판단하고, 매치되어 있는 경우에 매트릭스로 투표를 실행한다(스텝14, 15, 16).
모든 문자의 조합에 대한 비교가 종료되면, 투표결과 계산부(19)는 투표결과의 매트릭스로부터 경사 방향의 계산을 실행한다(스텝17). 이 계산값은 계산값용 메모리(20)에 작성된 선분에 기억된다. 이 계산값용 메모리(20)에 기억된 계산값에 기초하여 매칭결정부(21)는 피크값에 기초한 득점이 고득점인지의 여부를 판단한다(스텝18). 이 판단에 의해 피크값에 기초한 득점이 고득점이 아니라고 판단한 경우, 제 2 문자열을 변경하여 상기 스텝12로 되돌아가서 처리를 다시 실행한다.
또, 피크값에 기초한 득점이 고득점이라고 판단한 경우, 노이즈 삭제부(23)는 계산값 메모리(20)에 기억된 계산값으로서의 선분의 피크위치로부터 오른쪽 및 왼쪽의 단부까지의 길이를 각각 계수한다. 노이즈 삭제부(23)는 이 계수한 「길이가 사전문자열의 길이-1(DICLEN-1)」보다도 긴지의 여부에 의해, 제 1 문자열의 전후에 여분의 노이즈(노이즈에 대응하는 선분 상의 계산값)가 있는지의 여부를 판단한다(스텝19). 즉, 피크위치로부터의 길이가 양단 모두 DICLEN-1인 경우, 여분의 노이즈가 없다고 판단하고, 피크위치로부터의 길이가 DICLEN-1보다도 긴 경우, 여분의 노이즈가 있다고 판단한다.
이 판단에 의해 여분의 노이즈가 없다고 판단한 경우, 노이즈 삭제부(23)는 매칭결정부(21)에 의한 매칭결과를 출력한다(스텝20).
또, 여분의 노이즈가 있다고 판단한 경우, 노이즈 삭제부(23)는 여분의 노이즈의 수만큼 제 1 문자열의 앞 또는 뒤부터 문자를 삭제하고(스텝21), 매칭결과로서 출력한다(스텝22). 이 때, 노이즈 삭제부(23)는 피크위치로부터의 길이가 DICLEN-1보다도 긴 쪽의 단부로부터 DICLEN-1보다도 긴 만큼을 노이즈로서 삭제한다. 이것에 의해 제 1 문자열의 앞 또는 뒤에 붙어 있는 노이즈를 삭제할 수 있다.
상기한 바와 같이 제 1 문자열과 제 2 문자열에 대응하는 매트릭스에 있어서 같은 문자가 교차하는 위치에 투표를 실행하고, 경사 방향의 계산을 실행한다. 이 계산결과로부터 피크값의 위치를 판단하고, 피크값에 기초하여 매칭의 결과를 판정한다. 또, 피크값의 위치로부터 오른쪽 또는 왼쪽의 단부까지의 길이가 「제 2 문자열의 길이-1」보다도 긴지의 여부에 의해 노이즈의 유무를 판단하도록 한 것이다.
이것에 의해 제 1 문자열에 노이즈가 포함되어 있는 경우에 있어서도, 고정밀도로 매칭처리를 실현할 수 있어 제 1 문자열의 노이즈의 유무를 판정할 수 있다.
또, 노이즈가 있다고 판단한 때에 사영의 피크위치로부터 사영의 두개의 단부까지의 길이(수) 가운데, 「제 2 문자열의 길이-1」보다도 길이가 긴 쪽에 노이즈가 포함되어 있다고 판단하고, 피크위치로부터의 길이가 긴 쪽의 단부로부터 길이가 긴만큼, 노이즈로 판단하여 삭제하도록 한 것이다.
이것에 의해 매칭의 결과로서 노이즈를 삭제한 것을 출력할 수 있고, 매칭의 정밀도를 높일 수 있다.
다음에, 제 1 문자열 중에 노이즈가 포함되어 있는 경우의 매트릭스를 이용한 매칭처리에 대해 설명한다.
도 10은 문자열「STRING」 사이에 「N」이라는 노이즈가 붙어 있는 제 1 문자열의 경우의 매칭처리를 설명하기 위한 것이다. 즉, 도 10은 제 1 문자열이 「STNRING」, 제 2 문자열이 「STRING」인 경우의 매트릭스, 매트릭스로의투표결과 및 투표결과의 계산값을 나타낸다.
이 경우, 제 2 문자열과 제 1 문자열의 길이가 다르기 때문에, 매트릭스 작성부(16)는 제 1 문자열의 전후에 노이즈가 붙은 경우와 마찬가지로, 제 1 문자열에 대응하는 행이 제 2 문자열에 대응하는 열보다도 많은 매트릭스가 매트릭스용 메모리(17) 상에 작성된다.
이와 같은 제 1 문자열「STNRING」의 노이즈로서의 「N」은 제 2 문자열 「STRING」에 「N」과 매치된다. 이 때문에, 비교투표부(18)는 제 1 문자열의 「N」에 대응하는 행과 제 2 문자열의 「N」열에 대응하는 열이 교차하는 매트릭스의 위치에 투표를 실행한다.
이 경우, 매트릭스는 도 10에 나타낸 바와 같이 7행6열이 된다. 이 때문에, 계산값용 메모리(20)에는 길이가 DICLEN+SEARCHLEN-1=12의 선분이 작성된다. 이 선분에 기억된 값은 매트릭스의 행방향에 대해 45도의 선분으로의 사영선분의 계산값에 대응한다. 예를 들면, 도 10과 같이, 매트릭스의 사영을 취하는 경우, 투표결과 계산부(19)는 7행1열째와 2행6열째를 통과하는 방향의 성분에 대해 선분의 사영을 계산한다.
이와 같이 계산값용 메모리(20)에 작성한 선분에는 매트릭스의 오른쪽으로 경사 아래방향에 대한 투표결과의 계산값이 기억된다. 예를 들면, 투표값을 1로 하고, 매트릭스의 사영을 취하는 경우, 도 10에 나타낸 바와 같이, 계산값용 메모리(20)에는 피크위치의 투표수(피크값)가 4인 계산결과를 얻을 수 있다. 이 피크값은 사전문자열의 길이(수)로서의 6에는 모자른다. 이것은 제 1 문자열 사이에 붙은 노이즈의 전후에서 사영의 선분 상의 위치가 하나 어긋나 있기 때문이다.
또, 도 10에 나타낸 예에서는 노이즈의 뒤의 문자열에 대응하는 부분의 피크값이 4가 되고, 노이즈의 앞에 대응하는 부분의 피크위치에 인접하는 오른쪽 위의 위치의 투표수가 2로 나타낸다. 이 때문에, 피크위치의 투표수와, 피크위치와 인접하는 위치의 투표수를 가산한 값은 제 1 문자열과 제 2 문자열이 모두 매치되어 있는 경우의 투표수(사전문자열의 문자수)와 일치한다.
즉, 제 1 문자열 사이에 포함되는 노이즈를 하나만 허용하는 경우, 인접계산부(24)는 투표결과의 계산값의 선분에 있어서 피크위치의 계산값과 피크위치에 인접하는 위치의 계산값에 의해 소정의 계산(재계산)을 실행한다. 이 인접하는 위치에 의한 계산값이 고득점인 경우에 제 1 문자열과 제 2 문자열이 매칭되어 있다고 판단한다. 이 때, 제 1 문자열 사이에 노이즈가 하나 들어간 것이 판단된다.
예를 들면 도 10에 나타낸 바와 같이, 투표결과의 계산값으로서 매트릭스의 사영을 취하는 경우, 제 1 문자열 사이에 포함되는 노이즈를 하나만 허용하면, 피크위치의 투표수가 4와 인접하는 위치의 투표수 2를 가산한다. 이것에 의해 피크위치와 피크위치에 인접하는 위치의 투표수가 6이 되고, 제 2 문자열의 문자수와 일치한다.
또, 제 1 문자열 사이에 포함되는 노이즈 수의 허용범위를 늘리는 경우, 인접계산부(24)는 허용범위의 노이즈의 분량만큼 피크위치 근방의 위치의 계산값에 의해 소정의 재계산을 실행한다. 이것에 의해 문자열의 나열을 고려하면서, 허용하는 노이즈의 수에 따른 매칭처리를 실행할 수 있다.
상기한 바와 같이, 제 1 문자열 사이에 포함되는 노이즈를 소정의 수만큼 허용하는 경우, 허용하는 노이즈의 수에 기초하여 투표결과의 계산값으로서의 선분의 피크위치와 피크위치의 근방 위치 값에 의한 재계산을 실행하고, 이 계산값에 기초하여 매칭을 판정한다.
이것에 의해 제 1 문자열 사이에 노이즈가 포함되는 경우에 있어서도, 문자열의 나열을 고려한 고정밀도 매칭처리를 실현할 수 있다.
다음에, 상기한 바와 같이 제 1 문자열 사이에 노이즈가 붙어 있는 경우의 매칭처리에 대해 도 11에 나타낸 플로우 챠트를 참조하면서 설명한다.
즉, 상기 스텝1∼스텝8과 같이, 제 1 문자열 입력부(14) 및 제 2 문자열 입력부(12)는 제 1 문자열, 제 2 문자열을 제 1 문자열 메모리(15), 제 2 문자열 메모리(13)에 기억한다(스텝31, 32). 매트릭스 작성부(16)는 매트릭스용 메모리(17) 상에 제 2 문자열을 횡축으로 하고, 제 1 문자열을 종축으로 한 매트릭스를 작성한다(스텝33).
그리고, 비교투표부(18)는 각 문자마다 제 2 문자열의 문자와 제 1 문자열의 문자와 각 문자에 대해 매치되어 있는지의 여부를 판단하고, 매치되어 있는 경우에 매트릭스로 투표를 실행한다(스텝34, 35, 36).
모든 문자의 조합에 대한 비교가 종료되면, 투표결과 계산부(19)는 투표결과의 매트릭스로부터 경사 방향의 계산을 실행하다(스텝37). 이 계산값은 계산값용 메모리(20)에 작성된 선분에 기억된다. 이 계산값용 메모리(20)에 기억된 계산값에 기초하여 매칭결정부(21)는 피크값에 기초한 득점이 고득점인지의 여부를 판단한다(스텝38).
이 판단에 의해 피크값에 기초한 득점이 고득점이라고 판단한 경우, 매칭결정부(21)는 매칭결과를 출력한다(스텝39).
또, 피크값에 기초한 득점이 고득점이 아니라고 판단한 경우, 인접계산부(24)는 피크위치와 인접하는 위치와 값에 의해 소정의 계산(재계산)을 실행한다(스텝40). 이것에 의해 매칭결정부(21)는 재계산한 계산값이 고득점인지의 여부를 판단한다(스텝41). 이 판단에 의해 고득점이 아니라고 판단한 경우, 제 2 문자열을 변경하여 상기 스텝32로 되돌아가서 처리를 다시 실행한다.
또, 피크위치와 인접하는 위치와의 값을 재계산한 계산값이 고득점이라고 판단한 경우, 매칭결정부(21)는 제 1 문자열과 제 2 문자열이 매칭된 매칭결과를 출력한다. 이것과 함께, 매칭결정부(21)는 제 1 문자열에 노이즈가 포함되어 있는 것을 출력한다(스텝42).
또, 상기한 바와 같이 피크위치와 인접하는 위치의 값에 의한 재계산에 기초하여 매칭되어 있다고 판정된 경우, 제 1 문자열에 포함되는 노이즈의 위치를 판정하는 것도 가능하다. 이 경우, 피크위치 또는 재계산의 대상이 되는 피크위치와 인접하는 위치에 투표되지 않은 문자를 노이즈로 판정한다.
상기한 바와 같이, 제 1 문자열과 제 2 문자열에 대응하는 매트릭스에 있어서 같은 문자가 교차하는 위치에 투표를 실행하고, 경사 방향에 있어서 투표결과의 계산을 실행한다. 이 계산결과로서의 선분에서 피크위치를 판단하고, 피크위치의 값에 기초하여 매칭 결과를 판정한다. 이 판정결과에 의해 피크위치의 값이 매칭되어 있는 것을 나타내지 않은 경우에 피크위치의 값과 피크위치에 인접하는 위치의 값에 기초하여 재계산을 실행하고, 그 재계산의 값에 기초하여 매칭결과를 판정하도록 한 것이다.
이것에 의해 제 1 문자열 사이에 노이즈가 포함되어 있는 경우에 있어서도, 고정밀도인 매칭처리를 실현할 수 있고, 제 1 문자열의 노이즈의 유무를 판정할 수 있다.
다음에, 매트릭스로 투표하지 않고, 투표결과의 계산값이 기억되는 선분에 직접투표하는 경우에 대해 설명한다.
도 12는 투표결과의 계산값이 기억되는 선분에 직접 투표하는 경우의 문자열 매칭처리부(30)의 구성을 개략적으로 나타낸 도면이다.
도 12에 나타낸 바와 같이 문자열 매칭처리부(30)는 제 1 문자열 입력부(14), 제 1 문자열 메모리(15), 투표용 테이블 데이터베이스(31), 투표부(32), 투표용 메모리(33), 매칭결정부(21), 매칭결과 출력부(22), 노이즈 삭제부(23), 인접계산부(24)로 구성되어 있다.
상기 투표용 테이블 데이터베이스(31)는 사전문자열이 기억되어 있다.
상기 투표부(32)는 상기 제 1 문자열 메모리(15)에 기억되어 있는 제 1 문자열과 상기 투표용 테이블 데이터베이스(31)의 제 2 문자열에 기초하여 투표용 메모리(33)에 투표를 실행한 것이다.
다음에, 상기한 바와 같이 구성된 문자열 매칭처리부(30)에 의한 매칭처리에 대해 설명한다. 이 문자열 매칭처리부(30)는 매트릭스를 작성하지 않고, 제 1 문자열의 각 문자와 제 2 문자열의 각 문자와의 위치관계에 따라서 투표용 메모리(33)에 직접 투표를 실행하여 매칭결과를 판정한다.
상기 투표용 메모리(33)에는 제 1 문자열의 길이(문자수) 및 제 2 문자열의 길이(문자수)에 따른 길이(수)의 선분이 작성된다. 이 투표용 메모리(33)에 작성된 선분은 제 1 문자열을 횡축, 제 2 문자열을 종축으로 한 매트릭스의 오른쪽으로 경사 아래방향의 성분에 대응한 길이가 되고 있다. 이 투표용 메모리(33) 상의 선분에는 매트릭스의 경사 방향의 성분이 각각 대응하고 있는 위치에 투표된다.
매트릭스의 대각선 방향의 위치가 대응하는 투표용 메모리(33) 상의 선분에는 투표되는 값이 누적된다. 이 때, 선분에 누적된 값은 투표마다 투표부(32)에 의해 소정의 계산이 실행되어 투표용 메모리(33)에 기억된다. 이 결과, 투표가 완료되면, 투표용 메모리(33)에는 상기한 매트릭스로의 투표결과에 대한 상기 계산값용 메모리(22) 상의 투표결과의 계산값으로서의 선분에 상당하는 것이 매트릭스로의 투표를 통하지 않고, 직접 얻을 수 있다.
여기에서, 제 1 문자열의 길이를 SEARCHLEN, 제 2 문자열의 길이를 DICLEN으로 한 경우, 제 1 문자열을 횡축, 제 2 문자열을 종축으로 한 매트릭스의 오른쪽으로 경사 아래방향의 성분은 SEARCHLEN+DICLEN-1개이다. 이 때문에, 투표용 메모리(33)에는 SEARCHLEN+DICLEN-1개 길이의 투표위치가 준비된다.
제 1 문자열의 SEARCHP번째의 문자와 제 2 문자열의 DICP번재의 문자가 매치된 경우, 투표용 메모리(33)로 투표되는 위치(POS)는
POS=(SEARCHP-DICP)+(DICLEN-1)
이다.
이 투표된 위치 POS는 제 1 문자열을 종축, 제 2 문자열을 횡축으로 한 매트릭스의 SEARCHP행DICP열의 성분이 대응하는 투표용 메모리(33) 상의 위치가 되고 있다.
예를 들면, 제 1 문자열「STRING」과 제 2 문자열「STRING」을 매칭처리하는 경우, 투표용 메모리(33)에는 SEARCHLEN+DICLEN-1=11개 길이의 투표위치로서의 선분이 준비된다.
이 투표용 메모리(33)의 투표위치를 도 13에 나타낸 바와 같이 오른쪽부터 0, 1, 2,…, 10으로 하면, 제 1 문자열의 i번째의 문자와 제 2 문자열의 j번째의 문자가 같은 문자인 경우, 투표용 메모리(33)의 (j-i)+(DICLEN-1)번째의 투표위치에 투표를 실행한다.
예를 들면 제 1 문자열의 2문자인 「T」와 제 2 문자열의 2번째인 「T」가 매치되어 있다. 이 경우, 투표용 메모리(33)의 POS=(2-2)+(6-1)=5번째의 위치에 투표를 실행한다.
도 14는 사영선분으로서의 투표용 메모리(33)에 직접 투표를 실행하는 경우의 매칭처리를 설명하기 위한 플로우 챠트이다.
즉, 제 1 문자열 입력부(14)는 제 1 문자열을 입력하고(스텝51), 제 1 문자열 메모리(15)에 기억한다. 한편, 제 2 문자열 입력부(12)는 매칭용 문자열 데이터베이스(11)보다 제 2 문자열을 입력하고(스텝52), 제 2 문자열 메모리(13)에 기억한다.
그리고, 투표부(32)는 제 1 문자열의 문자수를 m, 제 2 문자열의 문자수를 n으로 하면, 제 1 문자열의 i(i=1∼m)번째의 문자와 제 2 문자열의 j(j=1∼n)번째의 문자가 같은 문자인지의 여부를 판단한다(스텝53). 이 때, 투표부(32)는 투표용 메모리(33)에 m+n-1개 길이의 투표위치를 준비한다.
투표부(32)는 제 1 문자열의 i번째의 문자와 제 2 문자열의 j번째의 문자가 같은 문자로 판단한 때, 상기 식에 따라 POS=(i-j)+(n-1)로 나타낸 투표용 메모리(33)의 투표위치에 직접 투표를 실행한다(스텝54). 이 때, 투표용 메모리(33)로의 투표는 상기한 매트릭스로의 투표인 경우와 마찬가지로, 제 1 문자열이 문자인식에 의한 인식문자인 경우, 인식문자의 유사도, 또는 인식문자의 문자후보의 우선순위에 기초한 중점을 둔 투표를 실행하도록 해도 좋다.
또, 투표를 실행할 때, 투표부(32)는 투표한 값과, 이미 투표용 메모리(33)에 기억되어 있는 값에 의해 소정의 계산을 실행하여 투표용 메모리(33)에 기억된 값을 다시 쓴다.
모든 문자의 조합에 대한 비교가 종료되면(스텝55), 매칭결정부(21)는 이 투표용 메모리(33)에 기억되어 있는 투표결과의 값에 기초하여 제 2 문자열과 제 1 문자열이 어느 정도 매칭되어 있는지 판정한다(스텝56, 57).
이 경우, 매칭결정부(21)는 투표결과에 기초하여 상기 스텝18∼22와 같이 제 1 문자열의 전후의 노이즈를 판정하도록 해도 좋고, 상기 스텝38∼스텝42와 같이, 제 1 문자열 사이에 포함되는 노이즈를 판정하도록 해도 좋다.
상기한 바와 같이, 제 1 문자열을 횡축, 제 2 문자열을 종축으로 한 매트릭스의 경사 방향의 성분이 대응하는 선분에 직접 투표를 실행하여 매칭을 판정하도록 한 것이다.
이것에 의해 제 1 문자열과 제 2 문자열의 매칭처리의 효율을 좋게 하고, 처리의 고속화가 꾀해진다.
다음에 도 15에 나타낸 바와 같은 투표용 테이블 데이터베이스(31)에 의해 테이블 룩업을 이용한 사영선분에 직접 투표를 실행하는 매칭처리에 대해 설명한다.
이 경우, 도 15에 나타낸 바와 같이, 투표용 테이블 데이터베이스(31)를 준비한다. 이 투표용 테이블 데이터베이스(31)는 두개의 테이블을 갖고 있다. 도 15에 나타낸 바와 같이, 왼쪽 테이블(제 1 테이블)(31a)은 제 1 문자열에 대응하고, 오른쪽 테이블(제 2 테이블)(31b)은 제 2 문자열에 대응한다.
왼쪽 테이블(31a)은 예를 들면 알파벳인 경우의 「a」∼「z」와 같은 문자종류에 따른 문자(패턴의 종류)를 종축으로 취하고, 제 1 문자열에 있어서 출현하는 순위(제 1 문자열의 선두부터의 위치)를 1번째부터 가능한 순위까지를 횡축으로 취한 것이 된다.
오른쪽 테이블(31b)은 각 제 2 문자열을 종축으로 취하고, 각 제 2 문자열에 대응하는 사영선분을 횡축으로 취한 것이다. 이 제 2 문자열에 대해 설치된 횡축이 상기 계산값용 메모리(20) 또는 상기 투표용 메모리(33)에 대응한다.
또, 왼쪽 테이블(31a)과 오른쪽 테이블(31b)은 대응하는 부분이 링크로 연결되어 있다. 즉, 오른쪽 테이블(31b)의 각 제 2 문자열의 선분의 위치가 왼쪽 테이블에서 특정되는 문자와 출현하는 순위에 대응되고 있다. 예를 들면, 도 15에서는 왼쪽 테이블(31a)의 「a」의 1번째와, 오른쪽 테이블(31b)의 제 2 문자열「AMERICA」의 선분의 중앙위치 및 우단의 위치가 링크되어 있다.
상기한 바와 같은 테이블(31)을 이용하여 제 1 문자열을 기초로, 왼쪽 테이블(31a)에서 해당하는 위치를 발견하여 이 위치가 링크되어 있는 오른쪽 테이블(31b)에 투표를 실행한다. 이와 같이, 제 1 문자열의 각 문자에 대응하는 투표를 오른쪽 테이블(31b)의 각 제 2 문자열에 대해 실행한다.
이것에 의해 오른쪽 테이블(31b)에는 제 1 문자열에 대한 각 제 2 문자열의 투표결과의 값을 얻을 수 있다. 또, 이 오른쪽 테이블(31b)에 각 제 2 문자열의 투표결과의 값을 얻을 수 있으면, 오른쪽 테이블(31b)을 위부터 차례로 검색(서치)하여 제 1 문자열과 각 제 2 문자열의 매칭을 상기한 순서와 같은 순서로 실행한다.
상기한 바와 같이 제 1 문자열에 대응하여 문자가 저장되는 테이블과, 제 2 문자열에 대응하여 사영선분이 되는 테이블을 미리 관련지어 두고, 제 1 문자열에서 직접, 각 제 2 문자열에 대한 선분에 투표한다. 이 결과로서 얻을 수 있는 각 제 2 문자열에 대한 투표결과의 값에 기초하여 각 제 2 문자열과의 매칭결과를 판정하도록 한 것이다.
이것에 의해 매칭처리에 있어서 처리속도의 고속화를 꾀할 수 있다.
또, 상기 실시형태에서는 제 1 문자열이 하나인 경우에 대해 설명했는데, 문자인식장치 등에서는 제 1 문자열이 인식문자열의 후보로서 얻을 수 있기 때문에, 제 1 문자열의 각 문자에 대해 중점을 두어 투표를 실행하도록 해도 좋다.
예를 들면, 각 문자의 인식결과가 문자후보의 순위에서 얻을 수 있는 경우, 인식결과의 순위에 기초하여, 투표하는 점수에 중점을 두어 투표하도록 해도 좋다. 또, 각 문자의 인식결과가 유사도에서 얻을 수 있는 경우, 각 문자의 유사도에 따른 중점두기를 실행한 점수를 투표하도록 해도 좋다.
이와 같이, 제 1 문자열이 문자인식의 결과로서 얻을 수 있는 경우에, 제 1 문자열의 각 문자에 중점두기를 실행한 투표를 실행하는 것에 의해, 고정밀도인 매칭처리가 가능하게 된다.
또, 제 1 문자열이 인식문자에서 그 인식문자의 유사도가 일정 수준 이하인 경우에, 제 2 문자열의 문자와 일치해도 투표하지 않도록 해도 좋다.
이것에 의해 제 1 문자열이 인식문자로 구성될 때에 유사도가 극단적으로 낮은 문자를 제외하여 매칭처리를 실행할 수 있고, 인식문자로 구성되는 제 1 문자열과의 매칭처리의 정밀도를 높일 수 있다.
또, 제 1 문자열의 각 문자가 문자인식의 결과로서 우선순위마다 복수의 후보를 얻을 수 있는 경우에 제 1 문자열의 각 문자를 복수의 후보로 하고, 그러한 후보와의 제 2 문자열의 각 문자와의 일치를 판정하는 것에 의해 매칭을 실행하도록 해도 좋다. 이 경우, 예를 들면 1번째의 후보와 일치하지 않은 경우에도 2번째의 후보가 일치하는 경우에 투표한다.
이것에 의해 제 1 문자열이 인식문자로 구성될 때에 인식문자로서의 각 문자의 후보가 복수 있는 경우에 복수의 문자후보를 고려한 고정밀도인 매칭처리를 실현할 수 있다.
상기한 바와 같이, 제 1 문자열의 각 문자와 제 2 문자열의 각 문자를 비교하고, 제 1 문자열의 각 문자와 제 2 문자열의 각 문자에 각각 대응하는 2변으로 이루어진 매트릭스에 투표를 실행하고, 매트릭스의 경사 방향의 성분마다 투표결과의 값을 계산한다. 이 투표결과의 계산값에 기초하여 매칭결과를 판정한다. 이것에 의해 문자나열을 고려하고, 고속이면서 고정밀도로 노이즈에 강한 매칭처리가 가능하게 된다.
본 기술분야에서 통상의 지식을 가진 자라면 본 발명을 쉽게 수정 및 변경할 수 있다. 넓은 관점에서 본 발명은 기술된 상세한 설명과 특정 실시예에 제한되지 않는다. 따라서, 첨부된 청구항에 의해 정의되는 본 발명의 정신 및 범위에서 이탈함이 없이 다양한 수정이 가능하다.
이상 상술한 바와 같이, 본 발명에 의하면 고속이면서 고정밀도이고, 문자나열을 고려하고, 또 내노이즈성이 높고, 노이즈위치의 특정이 가능한 매칭처리를 실행하는 패턴열 매칭장치와 패턴열 매칭방법과 문자열 매칭장치와 문자열 매칭방법을 제공할 수 있다.

Claims (20)

  1. 각각 복수의 패턴으로 이루어진 제 1 패턴열과 제 2 패턴열과의 매칭처리를 실행하는 패턴열 매칭장치에 있어서,
    상기 제 1 패턴열의 각 패턴과 상기 제 2 패턴열의 각 패턴이 매치되어 있는 경우에, 매치되어 있는 패턴의 상기 제 1 패턴열에 있어서 위치 및 상기 제 2 패턴열에 있어서 위치에 따라 투표를 실행하는 투표수단과,
    상기 투표수단에 의한 투표결과에 기초하여 매칭결과를 판정하는 판정수단을 구비한 것을 특징으로 하는 패턴열 매칭장치.
  2. 제 1 항에 있어서,
    상기 제 1 패턴열의 각 패턴에 대응하는 행과, 상기 제 2 패턴열의 각 패턴에 대응하는 열로 이루어진 매트릭스를 작성하는 작성수단을 갖고,
    상기 투표수단은 상기 작성수단에 의해 작성된 매트릭스에 대해, 제 1 패턴열의 패턴과 제 2 패턴열의 패턴이 매치되어 있는 경우에 매치되어 있는 패턴에 대응하는 행과 열이 교차하는 위치에서 투표하고,
    상기 판정수단은 상기 투표수단에 의해 상기 매트릭스에 투표된 투표결과에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭장치.
  3. 제 2 항에 있어서,
    상기 투표수단에 의해 투표된 매트릭스에 대해 경사 방향에 있어서 투표결과에 관한 계산값을 계산하는 계산수단을 갖고,
    상기 판정수단은 상기 계산수단에 의해 계산된 투표결과의 계산값에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭장치.
  4. 제 1 항에 있어서,
    상기 제 2 패턴열의 패턴이 매치되어 있는 경우에, 상기 제 1 패턴열의 각 패턴에 대응하는 행과, 상기 제 2 패턴열의 각 패턴에 대응하는 열로 이루어진 매트릭스의 경사 방향에 있어서 계산값을 기억하는 메모리를 갖고,
    상기 투표수단에 의해 투표되는 값은 상기 매트릭스의 경사 방향에 관해 계산되어 상기 메모리에 축적되고, 상기 투표수단에 의해 투표가 완료된 때에 상기 메모리에 축적된 계산값에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭장치.
  5. 제 2 항에 있어서,
    상기 계산수단은 투표결과에 관한 계산값을 정규화된 값으로 계산하는 수단을 갖고, 상기 판정수단은 정규화된 투표결과에 관한 계산값에 기초하여 매칭결과를 판정하는 수단을 갖는 것을 특징으로 하는 패턴열 매칭장치.
  6. 제 2 항에 있어서,
    상기 판정수단은 상기 계산수단에 의한 계산값, 상기 제 1 패턴열의 길이 및 제 2 패턴열의 길이에 기초하여, 상기 제 2 패턴열에 상기 제 1 패턴열의 어느 부분이 매칭되었는지를 판정하는 수단을 포함하는 것을 특징으로 하는 패턴열 매칭장치.
  7. 제 1 항에 있어서,
    상기 제 1 패턴열에 출현하는 패턴의 종류, 상기 제 1 패턴열에서 출현하는 패턴의 순위를 특정하는 제 1 테이블 및 상기 제 1 테이블에서 특정되는 패턴의 종류와 출현하는 순위에 대응되어 여러가지 제 2 패턴열마다 상기 매트릭스의 경사 방향의 투표결과에 관한 계산값이 기억되는 제 2 테이블을 갖고,
    상기 투표수단은 상기 제 1 패턴열의 각 패턴에 대해 상기 제 1 테이블에서 특정되는 패턴의 종류와 출현하는 순위가 대응되는 상기 제 2 테이블에 투표하고,
    상기 판정수단은 상기 투표수단에 의해 투표된 상기 제 2 테이블에 기초하여 매칭의 결과를 판정하는 것을 특징으로 하는 패턴열 매칭장치.
  8. 제 2 항에 있어서,
    상기 제 1 패턴이 복수의 문자로 이루어진 제 1 문자열이고, 상기 제 2 패턴열이 복수의 문자로 이루어진 제 2 문자열인 것을 특징으로 하는 패턴열 매칭장치.
  9. 제 2 항에 있어서,
    상기 제 1 패턴열은 유사도를 갖는 인식문자로 이루어진 탐색문자열이고, 상기 제 2 패턴열은 사전에서의 사전문자열의 문자이고, 상기 투표수단은 상기 제 1 문자열의 인식문자의 유사도에 따라 투표를 실행하는 것을 특징으로 하는 패턴열 매칭장치.
  10. 제 2 항에 있어서,
    상기 제 1 패턴열은 우선순위를 갖는 문자후보로 이루어진 탐색문자열이고, 상기 제 2 패턴열은 사전에서의 사전문자열의 문자이고, 상기 투표수단은 상기 제 1 문자열의 문자후보의 우선순위에 기초한 중점을 둔 투표를 실행하는 것을 특징으로 하는 패턴열 매칭장치.
  11. 복수의 패턴으로 이루어진 제 1 패턴열과 제 2 패턴열의 매칭처리를 실행하는 패턴열 매칭방법에 있어서,
    상기 제 1 패턴열의 각 패턴과, 상기 제 2 패턴열의 각 패턴이 매치되어 있는 경우에 매치되어 있는 패턴의 상기 제 1 패턴열에 있어서 위치 및 상기 제 2 패턴열에 있어서 위치에 따라 투표를 실행하고,
    이 투표결과에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  12. 제 11 항에 있어서,
    상기 제 1 패턴열의 각 패턴에 대응하는 행과, 상기 제 2 패턴열의 각 패턴에 대응하는 열로 이루어진 매트릭스를 작성하고,
    상기 투표는 작성된 매트릭스에 대해 제 2 패턴열의 패턴이 매치되어 있는 경우에 매치되어 있는 패턴에 대응하는 행과 열이 교차하는 위치에 투표하고,
    상기 판정은 상기 매트릭스에 투표된 투표결과에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  13. 제 12 항에 있어서,
    상기 투표된 매트릭스에 대해 경사 방향에 있어서 투표결과에 관한 계산값을 계산하고,
    상기 판정은 상기 투표결과의 계산값에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  14. 제 11 항에 있어서,
    상기 투표된 값은 상기 매트릭스의 경사 방향에 관해 계산되어 상기 제 2 패턴열의 패턴이 매치되어 있는 경우에, 상기 제 1 패턴열의 각 패턴에 대응하는 행과, 상기 제2 패턴열의 각 패턴에 대응하는 열로 이루어진 매트릭스의 경사 방향에 있어서 계산값을 기억하는 메모리에 축적되고,
    상기 투표가 완료된 때에 상기 메모리에 축적된 계산값에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  15. 제 12 항에 있어서,
    상기 계산은 투표결과에 관한 계산값을 정규화된 값으로 계산하고, 상기 판정은 정규화된 투표결과에 관한 계산값에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  16. 제 12 항에 있어서,
    상기 판정은 상기 계산에 의한 계산값, 상기 제 1 패턴열의 길이 및 제 2 패턴열의 길이에 기초하여 상기 제 2 패턴열에 상기 제 1 패턴열의 어느 부분이 매칭되었는지를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  17. 제 11 항에 있어서,
    상기 투표는 상기 제 1 패턴열의 각 패턴에 대해 제 1 테이블에서 특정된 패턴의 종류와 출현하는 순위가 대응되는 제 2 테이블에 투표하고,
    상기 제 1 테이블은 상기 제 1 패턴열에 출현하는 패턴의 종류와, 상기 제 1 패턴열에서 출현하는 패턴의 순위를 특정하는 테이블이고, 상기 제 2 테이블은 상기 제 1 테이블에서 특정된 패턴의 종류와 출현하는 순위에 대응되고, 여러가지 제 2 패턴열마다 상기 매트릭스의 경사 방향의 투표결과에 관한 계산값이 기억되는 테이블이고,
    상기 판정은 상기 투표된 상기 제 2 테이블에 기초하여 매칭결과를 판정하는 것을 특징으로 하는 패턴열 매칭방법.
  18. 제 12 항에 있어서,
    상기 제 1 패턴이 복수의 문자로 이루어진 제 1 문자열이고, 상기 제 2 패턴열이 복수의 문자로 이루어진 제 2 문자열인 것을 특징으로 하는 패턴열 매칭방법.
  19. 제 12 항에 있어서,
    상기 제 1 패턴열은 유사도를 갖는 인식문자로 이루어진 탐색문자열이고, 상기 제 2 패턴열은 사전에서의 사전문자열의 문자이고, 상기 투표는 상기 제 1 문자열의 인식문자의 유사도에 따라 투표를 실행하는 것을 특징으로 하는 패턴열 매칭방법.
  20. 제 12 항에 있어서,
    상기 제 1 패턴열은 우선순위를 갖는 문자후보로 이루어진 탐색문자열이고, 상기 제 2 패턴열은 사전에서의 사전문자열의 문자이고, 상기 투표는 상기 제 1 문자열의 문자후보의 우선순위에 기초한 중점을 둔 투표를 실행하는 것을 특징으로 하는 패턴열 매칭방법.
KR10-2000-0043276A 1999-08-06 2000-07-27 패턴열 매칭장치와 패턴열 매칭방법 KR100383017B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP11-224438 1999-08-06
JP11224438A JP2001052116A (ja) 1999-08-06 1999-08-06 パターン列マッチング装置とパターン列マッチング方法と文字列マッチング装置と文字列マッチング方法

Publications (2)

Publication Number Publication Date
KR20010030015A true KR20010030015A (ko) 2001-04-16
KR100383017B1 KR100383017B1 (ko) 2003-05-09

Family

ID=16813782

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0043276A KR100383017B1 (ko) 1999-08-06 2000-07-27 패턴열 매칭장치와 패턴열 매칭방법

Country Status (5)

Country Link
US (2) US6738515B1 (ko)
EP (1) EP1074933A3 (ko)
JP (1) JP2001052116A (ko)
KR (1) KR100383017B1 (ko)
CN (1) CN1251128C (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002232552A1 (en) * 2000-12-15 2002-06-24 United States Postal Service Method and apparatus for alphanumeric recognition
US7447987B2 (en) * 2004-05-21 2008-11-04 Sap Ag Method for automatically positioning a data string in a column on an electronic display
JP2005352705A (ja) * 2004-06-09 2005-12-22 Omron Corp パターン認識装置、パターン認識方法及び文字認識方法。
JP2008109451A (ja) * 2006-10-26 2008-05-08 Oki Electric Ind Co Ltd 直列データ受信回路
US8954484B2 (en) * 2009-06-12 2015-02-10 Cray Inc. Inclusive or bit matrix to compare multiple corresponding subfields
CN100535930C (zh) * 2007-10-23 2009-09-02 北京大学 一种复杂结构文档图像倾斜快速检测方法
US8131758B2 (en) 2007-12-26 2012-03-06 Novell, Inc. Techniques for recognizing multiple patterns within a string
US8170352B2 (en) * 2008-03-24 2012-05-01 Sophos Plc String searching facility
US8683590B2 (en) * 2008-10-31 2014-03-25 Alcatel Lucent Method and apparatus for pattern matching for intrusion detection/prevention systems
NZ589039A (en) * 2009-09-24 2013-04-26 Nec Corp Recognition of a word image with a plurality of characters by way of comparing two possible candidates based on an evaluation value
RU2420791C1 (ru) * 2009-10-01 2011-06-10 ЗАО "Лаборатория Касперского" Метод отнесения ранее неизвестного файла к коллекции файлов в зависимости от степени схожести
CN103164388B (zh) * 2011-12-09 2016-07-06 北大方正集团有限公司 一种版式文件中结构化信息获取的方法及装置
WO2014045318A1 (ja) * 2012-09-21 2014-03-27 富士通株式会社 圧縮プログラム、圧縮方法及び圧縮装置
JP6403417B2 (ja) * 2014-04-23 2018-10-10 株式会社キーエンス 携帯型光学式読取装置、該携帯型光学式読取装置を用いる光学式読取方法、及びコンピュータプログラム
JP5664813B1 (ja) * 2014-06-10 2015-02-04 富士ゼロックス株式会社 デザイン管理装置及びプログラム
WO2016056503A1 (ja) * 2014-10-08 2016-04-14 日本電信電話株式会社 部分文字列位置検出装置、部分文字列位置検出方法及びプログラム
CN111191087B (zh) * 2019-12-31 2023-11-07 歌尔股份有限公司 字符匹配方法、终端设备及计算机可读存储介质
EP4148664A4 (en) * 2020-05-08 2024-03-27 Kk N Tech PRESSURE INSPECTION APPARATUS, PRESSURE INSPECTION METHOD AND PROGRAM
CN113377917A (zh) * 2021-06-22 2021-09-10 云知声智能科技股份有限公司 一种多模式匹配方法、装置、电子设备和存储介质
CN114785572A (zh) * 2022-04-06 2022-07-22 北京蓝海在线科技有限公司 一种基于api的网页请求鉴权方法、装置及计算机设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS592192A (ja) * 1982-06-29 1984-01-07 Nec Corp 文字認識方式
JPS5969875A (ja) * 1982-10-14 1984-04-20 Nec Corp 文字認識方式
JPS59116885A (ja) * 1982-12-23 1984-07-05 Nec Corp 文字認識方式
US5748807A (en) * 1992-10-09 1998-05-05 Panasonic Technologies, Inc. Method and means for enhancing optical character recognition of printed documents
US5802205A (en) * 1994-09-09 1998-09-01 Motorola, Inc. Method and system for lexical processing
US5757959A (en) * 1995-04-05 1998-05-26 Panasonic Technologies, Inc. System and method for handwriting matching using edit distance computation in a systolic array processor
US5963666A (en) * 1995-08-18 1999-10-05 International Business Machines Corporation Confusion matrix mediated word prediction
US5832474A (en) * 1996-02-26 1998-11-03 Matsushita Electric Industrial Co., Ltd. Document search and retrieval system with partial match searching of user-drawn annotations
US5850480A (en) * 1996-05-30 1998-12-15 Scan-Optics, Inc. OCR error correction methods and apparatus utilizing contextual comparison
JP3601658B2 (ja) * 1997-12-19 2004-12-15 富士通株式会社 文字列抽出装置及びパターン抽出装置
US6131102A (en) * 1998-06-15 2000-10-10 Microsoft Corporation Method and system for cost computation of spelling suggestions and automatic replacement
AU3907300A (en) * 1999-03-19 2000-10-09 Raf Technology, Inc. Rollup functions for efficient storage, presentation, and analysis of data

Also Published As

Publication number Publication date
US20040184663A1 (en) 2004-09-23
CN1251128C (zh) 2006-04-12
US6978044B2 (en) 2005-12-20
US6738515B1 (en) 2004-05-18
EP1074933A3 (en) 2001-10-04
EP1074933A2 (en) 2001-02-07
JP2001052116A (ja) 2001-02-23
CN1284686A (zh) 2001-02-21
KR100383017B1 (ko) 2003-05-09

Similar Documents

Publication Publication Date Title
KR100383017B1 (ko) 패턴열 매칭장치와 패턴열 매칭방법
US7657506B2 (en) Methods and apparatus for automated matching and classification of data
US7870151B2 (en) Fast accurate fuzzy matching
US6574622B1 (en) Apparatus and method for document retrieval
JPH0664631B2 (ja) 文字認識装置
CN100498789C (zh) 基于离散性、交叉性、非完全性的特性字符串匹配方法
CN109684928A (zh) 基于互联网检索的中文文档识别方法
JPS5839377A (ja) 文字認識装置
JP3599180B2 (ja) 検索方法、検索装置および記録媒体
JP2998054B2 (ja) 文字認識方法及び文字認識装置
EP2866156B1 (en) Method and apparatus for identity verification
JPH07114622A (ja) 文字認識装置の後処理方法
JP2519245B2 (ja) 情報検索装置
JP2845463B2 (ja) パターン認識装置
JPH0766423B2 (ja) 文字認識装置
JP2644859B2 (ja) パターン詳細同定装置の同定処理方式
JP3444561B2 (ja) 文字認識方法及び文字認識装置
JP2000246184A (ja) 宛先特定装置
JP2585851B2 (ja) ジョイン処理方式
US20230110661A1 (en) Method of linking records between databases
JPH10334187A (ja) 文字認識装置及び文字認識方法
JPH08227427A (ja) 文字認識装置
JPH07319888A (ja) 索引検索方式
JP2923295B2 (ja) パターン同定処理方式
JPH05108890A (ja) 文字認識方法および装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee