KR20010093764A - 어근 모델에 근거한 초서체 한자 주석의 검색법 - Google Patents

어근 모델에 근거한 초서체 한자 주석의 검색법 Download PDF

Info

Publication number
KR20010093764A
KR20010093764A KR1020010016493A KR20010016493A KR20010093764A KR 20010093764 A KR20010093764 A KR 20010093764A KR 1020010016493 A KR1020010016493 A KR 1020010016493A KR 20010016493 A KR20010016493 A KR 20010016493A KR 20010093764 A KR20010093764 A KR 20010093764A
Authority
KR
South Korea
Prior art keywords
root
annotation
stroke
strokes
roots
Prior art date
Application number
KR1020010016493A
Other languages
English (en)
Other versions
KR100487386B1 (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 KR20010093764A publication Critical patent/KR20010093764A/ko
Application granted granted Critical
Publication of KR100487386B1 publication Critical patent/KR100487386B1/ko

Links

Classifications

    • 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/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • G06V30/1423Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting
    • 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/16Image preprocessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

초서체의 한자는 의미의 매칭 프로세스를 사요하여 분석되며, 이로써 문자 내의 부수는 우선 추출되어 매칭 부수를 포함하는 문자에 대한 전체 어휘의 검색 공간을 감소시키는데 사용된다. 부수 추출을 실행할 때, 입력 문자는 표준화되며 획의 업/다운 정보 및 로컬 최대 및 최소 정보에 기초하여 차례로 조직화되는 획으로 분화된다. 모호한 구분점 및 연결 획은 프로세스에서 제거된다. 동적 프로그램 매칭은 이어 획 대체 비용이 탄젠트 벡터 분석, 중심 관계 판단 및 시작점/종점 판단을 포함하는 다양한 기술을 통한 포인트 대 포인드 기초에 대해 평가되는 획기초에 대해 수행된다. 동적 프로그램 비용은 참조 부수의 길이에 기초하여 표준화되며 위치 차이는 제거된다.

Description

어근 모델에 근거한 초서체 한자 주석의 검색법{RETRIEVAL OF CURSIVE CHINESE HANDWRITTEN ANNOTATIONS BASED ON RADICAL MODEL}
본 발명은 대체로 초서체 처리 시스템에 관한 것으로서, 특히 초서체 한자를 위한 개선된 잉크 매칭 기술에 관한 것이다.
필기된 한자에는 많은 수의 문자가 있으며, 따라서 영어 알파벳의 문자를 매칭하는데 사용될 수 있는 통상적인 매칭 기술은 한자의 검색 목적에는 부족하다.
전자 잉크는 인식하려고 시도하지 않고도 매치될 수 있는 1급 데이터로 작용할 수 있다는 기본 가정하에 잉크 매칭법이 이루어진다. 다시 말해, 사용자가 초서체 문자를 필기하면, 초서체 획이 의미하는 문자를 해독할 필요없이도, 초서체 획에 관한 시간적 및 공간적 정보를 포함하는 전자 잉크 데이터가 검색 또는 매칭 동작에 사용될 수 있다는 것이다.
본 명세서에 개시된 개선 방법은 다이나믹 프로그래밍 매칭이 개선된 강력한 어근 추출 기술(radical extraction technique)이다. 본 발명은 모든 중국어와 한자가 사용되는 다른 언어에 적용될 수 있다. 오늘날 한자는 중국, 타이완, 일본, 한국, 및 기타 대부분의 아시아 지역에서 널리 사용되고 있다.
한자는 인류의 초기 기록 형태 중의 하나인 상형문자에 뿌리를 두고 있다. 어근이라 불리는 하나 이상의 소문자로 구성되는 한자의 각 글자는 하나의 단어, 뜻 또는 의미를 나타낸다. 따라서, 영어 단어를 철자하는데 사용되는 알파벳 문자와 달리 한자는 훨씬 더 압축적이다. 하나의 글자가 하나의 단어, 뜻 또는 의미를 나타낸다.
한자가 의사소통의 압축적이고 고도로 효율적인 형태이지만 자동화 시스템에서는 문제를 가져왔다. 한자를 컴퓨터로 입력하는 것이 병목현상을 가져오므로, 어떤 이는 키보드 대신에 디지털화된 표를 사용함으로써 이 문제를 해결하는 방법을 제안하기도 했다. 표를 이용하여 사용자는 그의 필기를 컴퓨터로 입력할 수 있으며, 필기 인식 기술은 사용자의 필기를 인식된 글로 변환시키고, 변환된 글은 컴퓨터로 입력된다. 초서체 한자 인식 분야에 있어서, 온라인 인식은 입력점과 획들이 필기된 시간적 순서를 포착하는 장점을 가진다. 따라서, 온라인 인식 시스템은 선들이 필기됨에 따라 생성되는 시간적 데이터에 의해 위에서 아래로 필기된 선과 아래에서 위로 필기된 선을 구별할 수 있다.
초서체 한자 인식 분야에서 커다란 진보가 이루어져 왔지만, 문제의 복잡성은 애초에 예상하던 것보다 더 큰 것으로 드러났다. 이는 통상적인 상업용으로 디자인된 어휘에 필요한 문자들의 수가 많기 때문에 작은 문제가 아니다. 예를 들어, 한자에는 평균 3000 내지 5000자의 상용문자가 있다. 일본어의 경우에는, 한자 또는 "칸지(kanji)"문자의 수가 좀 더 적다. 그럼에도 불구하고, 일본 신문을 읽기 위해서는 여전히 수천 자를 이해해야만 한다. 더욱이, 초서체 문자 인식의 또다른 어려움은 초서체 스타일이 필기하는 사람에 따라서 크게 다르며 사람들이 흔히 흘려쓴다는 것이다.
근래에 잉크 매칭 기술은 문서 검색 목적으로 초서체 주석을 검색하는 것과 같은 특정 경우에 유망한 것으로 알려지고 있다. 이러한 선행 기술로는 미국특허 제5,832,474호 "사용자 필기 주석의 부분 매치 검색을 이용한 문서 검색 및 검색 시스템"이 있다. 이러한 경우에는 잉크 매칭법이 통상적인 문자 인식 기술에 비해유리한데, 이는 잉크 매칭법이 여러 스타일의 초서체 특히 흘림 초서체를 취급하기 때문이다. 최근에, 의미 매칭 기술(semantic matching techniques)이 도입되었는데, 이 경우 문자는 그 구성요소인 어근들로 세분되고 이들 어근들이 미리 검색되어 문제 매칭 문제를 감소시킨다. 추출된 어근들에 의거하여 부분 매칭을 수행함에 따라, 이어지는 문자 매칭 프로세스에서는 매칭된 어근을 포함하지 않는 문자들을 조사할 필요가 없게 된다.
기준 어근에 근거한 의미 매칭법이 매우 유망한 기술이지만, 이 기술의 성공여부는 완전한 문자로부터 어근을 추출할 수 있는 시스템의 능력에 따라 결정된다. 어근 추출은 매우 힘든 문제이다. 초서체 한자가 통상 어떤 격자선(grid line)없이 자유로운 형태로 필기되기 때문에, 문자 내에서의 어근의 위치는 문자가 필기될 때마다 상당히 다르다. 또한, 어근이 무심코 문자의 다른 부분과 교차할 수도 있어 어근과 문자내의 다른 부분을 개별 요소로 식별하는 것을 어렵게 만든다. 더욱이, 사용자가 한자를 빨리 쓸 때에는 한 문자의 한 부분의 종획(ending stroke)이 다음 부분의 시획(beginning stroke)과 접하도록 양자를 무심코 연결하는 획을 펜이 가할 수도 있다. 비록 연결획이 문자의 실제 부분은 아니지만, 그럼에도 불구하고 단지 사용자가 문자의 개별 부분을 필기하는 사이에 펜이나 철필을 들지 않았을 수도 있기 때문에 연결획은 획 데이터(stroke data)에 존재하게 된다.
상기 문제점 외에도 다이나믹 프로그래밍이라는 부가적 문제가 있다. 다이나믹 프로그래밍은 하나의 패턴(어근내의 획과 같은)이 다른 패턴과 매치되는지를 결정함에 있어서 삽입 비용(cost), 삭제 비용, 및 치환 비용을 평가하는 패턴 매칭기술이다. 통상적으로, 획 삽입 비용과 획 삭제 비용은 획의 길이에 직비례하여 계산된다. 획 치환 비용은 두 획 사이의 형상 유사성을 측정해야 하기 때문에 더 복잡하다. 통상적인 기술을 사용할 때, 다이나믹 프로그래밍은 치환 대상인 두 획 사이의 점들의 쌍의 집합을 얻는데 이용된다. 치환 비용은 각기 두 점으로 이루어진 점들의 쌍에 대한 기하학적 거리(Euclidean distance)의 합으로 측정된다. 치환 비용이 계산되기 전에, 각 획이 일시적으로 변위되어 그 획의 경계 박스(bounding box)의 좌상부 모퉁이가 원점(0, 0)과 겹치게 된다.
치환 비용을 계산하기 위한 통상적인 기하학적 방법은 두가지 단점이 있다. 첫째, 다이나믹 프로그래밍 절차가 시간소비적이다. 둘째, 기하학적 거리법을 이용할 때의 에러가 누적된다. 기준 획과 테스트되는 획이 각기 변위되어 좌상부 모퉁이들이 원점에 겹치도록 된 후에, 점대점 거리 분석이 수행된다. 각 획의 기본 형상이 비교적 동일하다면, 기하학적 거리법은 유용한 수치를 제공할 수 있다. 그러나, 각 획이 그들의 좌상부 모퉁이를 제외하고는 모양이 본질적으로 동일하다면, 기하학적 거리법은 실패하게 된다. 두 획의 좌상부 모퉁이를 정렬함에 의해, 획의 나머지 부분들이 서로 큰 기하학적 거리로 이격되고 따라서 획들이 서로 형상이 유사하지 않다는 잘못된 평가를 가져오게 된다.
본 발명은 의미 매칭 성능을 상당히 개선할 수 있는 크게 개선된 어근 추출 기술을 제공한다. 이하에서 더 상세히 설명되겠지만, 이 기술은 다이나믹 프로그래밍 절차에서 혼동될 수 있는 다수의 인위적 문제점을 제거하는 문자 표준화 절차와 개선된 획 구분 절차를 적용한다.
이 기술은 또한 탄젠트 벡터, 센터 관계 평가 및 시점-종점 평가를 사용하여 더욱 확실하게 치환 비용을 평가할 수 있는 새로운 다이나믹 프로그래밍 방법을 적용한다. 다이나믹 프로그래밍 절차는 또한 우수한 매칭을 위해 시작 어근과 종료 어근을 표시하는 어근 범주 데이터 구조를 사용한다. 부가적으로, 다이나믹 프로그래밍 절차는 기준 어근의 길이를 이용하여 다이나믹 프로그래밍 비용이 표준화되고 따라서 표준화된 비용이 상호 조정되어 다이나믹 프로그래밍 비용의 순위에 근거한 위치 부동성(dissimilarities)을 제거할 수 있는 기술을 적용한다.
개선된 다이나믹 프로그래밍 절차의 결과 최고의 또는 n번째로 우수한 추출된 어근들이 도출된다. 최고의 또는 (n번째로 최고의) 어근들은 이어지는 전체 문자 매칭을 위한 어휘의 크기를 감소시키는데 사용된다. 본 발명의 동적 프로그래밍 개선이 어근(radical) 추출에 특히 유용하나, 이것은 이하의 완전한 문자(full character) 추출이나 매칭 동작에서도 사용될 수 있다.
도면을 참조하여 본 발명과 본 발명의 목적 및 이점에 대해 상세히 설명하고자 한다.
도1은 어근 식별 프로세스의 한 양태를 이해하는데 유용한 기계 인쇄 및 수기된(hand drawn) 형태의 예시적인 한자(Chinese character)를 나타낸다.
도2는 한자 수기된 주석(annotation)에 대한 의미 잉크 매칭 시스템의 개관을 제공하는 블록도이다.
도3 및 도4는 바람직한 실시예의 어근 추출 프로세스를 나타내는 흐름도이다.
도5는 통상의 형상 유사성 평가의 단점들 중 하나를 나타내는 어근 매칭 다이어그램이다.
도6은 바람직한 실시예의 탄젠트 벡터 기술을 나타내는 어근 매칭 다이어그램이다.
도7은 중심 관계 기술을 나타내는 어근 매칭 다이어그램이다.
도8은 시점, 종점 평가를 나타내는 어근 매칭 다이어그램이다.
도9는 본 발명의 바람직한 어근 세트를 나타낸다.
도1은 도면번호 10의 기계 인쇄 또는 조판 형태와 도면번호 12의 수기 형태의 예시적인 한자를 나타낸다. 특정된 문자는 "고양이"를 나타내며 어근(14)(한자의 좌편에 위치하는 것)과 같은 적어도 하나의 어근으로 이루어진다. 어근 자체는 "동물"이라는 의미를 갖는다. 이와 같이, "고양이"에 대한 한자는 "동물"에 대한추가적인 엘리먼트 문자가 내부에 포함되어 있다. 이러한 예시는, 물론 한자 내에 일상적으로 사용되는 적어도 200개의 어근이 존재한다는 것을 예시하기 위한 목적으로 의도된 것이다.
일반적으로, 중국어와 한자를 사용하는 다른 언어들에서, 어근은 한자 중의 작은 기본 원소 의미를 갖는다. 하나 이상의 어근이 결합되어 한자를 이룬다. 적절하게 씌여진 각 어근들은 한자 블록 내의 기지의 서브 영역에 위치하여야 한다. 여기서 사용된 바와 같이, 한자 블록은 인쇄된 페이지 상에 한자가 차지하는 실직적으로 사각형인 영역을 나타낸다. 한자 블록을 표시하기 위해서 사각 경계 박스가 그려질 수 있다. 이와 같이, 경계 박스는 한자 주면을 맞추도록 확장되거나 감소되어 단지 한자의 주변에서만 접하는, 일반적으로 탄력적인 사각형 형태로 생각될 수 있다. 어근은 한자 블록 내의 소정의 위치 내에 위치한다.
예를들어, 도1의 예시적인 한자에서, 어근(14)은 실질적으로 문자의 전체 높이까지 연장되어 한자 블록의 좌편 영역을 차지하는 것으로 적절히 그려져 있다. 다른 한자에서, 성분 어근은 다른 위치를 점할 수 있다. 때때로, 이러한 위치는 한자 블록의 최대 높이(또는 최대 폭)까지 연장하는 서브 영역을 채운다. 다른 어근들은 문자 블록의 최대 높이 또는 폭보다 작은 영역을 채운다.
문자 매칭 프로세스의 개요
도2를 참조하면, 기본적인 한자 매칭 프로세스가 설명되어 있다. 도2에 도시된 시스템은 본 발명의 방법 및 장치가 전개될 수 있는 예시적인 실시예의 시스템을 나타낸다. 다른 시스템도 가능하다. 바람직하게는, 문자 매칭 프로세스는시간적 및 공간적 정보를 기록하는 "잉크" 데이터로 불리는 동적으로 기록된 데이터에 따라 수행된다. 스타일러스(stylus; 18)에 의해 디지털화 테블릿(tablet; 16) 상에 그려지는 획(stroke)이 획의 방향이 판단되는 임의의 타임스템프(timestamp) 표시와 함께 시퀀스 포인트(예를들어 x-y 좌표공간의 테블릿의 포인트)로서 기록된다. 획은, 획 방향을 나타내고 획의 시점과 종점 사이를 분간하는데 사용될 수 있는 데이터 구조로 표현된다. 본 발명의 실시예에 사용된 잉크 데이터 타입은 위치적(x,y 포인트) 정보와 시간적(타임) 정보를 포함한다.
임의의 수기 한자 프로세싱 시스템의 기본적인 목적은 시스템 훈련에 의해 얻어진 이미 저장된 정보와 (사용자에 의해 공급된) 수기된 문자를 매칭시키는 데 있다. 사용자는 도1의 문자(12)와 같은 수기된 문자를 입력하며 시스템은 이 문자를 이전에 저장된 데이터에 매칭시킨다. 이러한 방식으로, 이전에 기록된 수기된 주석이 직접 검색될 수 있다. 조판 문자를 갖는 기억된 데이터에 대응하는 룩업(look up) 테이블이 이용가능한 경우에, 사용자가 직접 손으로 입력하는 것이 추가 프로세싱과 디스플레이를 위해 조판 문자로 변환될 수 있다.
도2를 참조하면, 사용자가 수기한 입력이 쿼리(query) 잉크 데이터 구조의 쿼리 잉크로서 저장된다. 이전에 얻어진 데이터가 데이터 저장(22)의 데이터 베이스 잉크로서 저장된다. 데이터 저장(22)은 예를들어 사용자의 필적의 다른 예에 근거하여 사용자가 시스템을 훈련시킴에 의해 저장된다. 훈련은 사용자가 식별(identity)이 미리 알려진 한자의 예를 입력하는 것을 포함한다. 이와 같이, 사용자의 훈련 입력이 사전의 각 문자에 대한 분류된(labeled) 데이터를 제조하는데 사용된다. 다음, 탄력적 매칭으로 알려진 프로세스가 데이터 베이스 잉크 데이터 저장 내의 어떠한 문자가 쿼리 잉크 데이터 구조의 문자와 가장 근접하게 매치되는 지를 선택하기 위해, 데이터 구조(20)의 쿼리 잉크를 데이터 구조(22)의 데이터 베이스 잉크와 비교하는데 사용된다.
탄력적 매칭을 수행하는 것은 특히 통상의 경우에 그러하듯이 데이터베이스 잉크 데이터 저장이 많은 사전을 포함하는 경우에 시간이 소모되는 프로세스이다. 일상적으로 사용되는 한자는 3천 내지 5천개의 문자가 포함된다.
통상의 탄력적 매칭 절차를 가속화하기 위해, 도2의 어근 추출 기술이 이용되어왔다. 도2에서, 통상의 탄력적 매칭 동작이 블록(24)에서 수행된다. 그러나, 이러한 동작이 수행되기 전에, 매칭 동작 또는 서치가 어근 추출 절차에 의해 상당히 감소된다.
어근 추출 절차에는 각 문자를 컴포넌트(component) 부분으로 분리하기 위해서 먼저 쿼리 잉크와 또한 데이터 베이스 잉크를 분할하는 것(segmenting)이 포함된다. 분할 블록(30 및 32)이 이러한 목적을 위해 제공된다. 도1에 예시된 예시적인 문자에서, 어근(14)은 컴포넌트들 사이의 빈 공간을 식별하는 문자의 나머지 부분으로부터, 즉 접속된 컴포넌트 분리에 의해 분할되거나 분리될 수 있다. 그러나, 이하의 바람직한 실시예의 상세한 설명에 의해 보다 상세히 설명되는 바와 같이, 수기된 문자들은 거의 알아보기 좋게 씌여지지 않는다. 빈번하게, 어근은 문자의 다른 부분들과 겹치거나 간섭하게 된다. 즉, 사용자는 컴포넌트들 간의 연결 획을 서둘러 쓰며, 이는 어근 분할과 추출을 보다 곤란하게 만든다. 본 발명은이하에서 보다 상세히 설명되는 바와 같이 어근 분할과 추출 프로세스를 향상시킴에 의해 이러한 문제들을 해결하는 수개의 기술을 제공한다.
프로세스(26 및 28)로부터의 분할된 문자는 세그먼트가 기지의 어근을 나타내는지 여부를 결정하기 위해 각각의 탄력적 매칭 블록(30 및 32)를 검사한다. 이것을 달성하기 위해, 참조 어근의 데이터 베이스가 도면번호 34에 제공된다. 본 발명의 실시예는, 2백개 크기의 기준 어근들에 근거한다. 이들은 문자 사전에서 가장 빈번하게 발생하는 어근 세트로부터 선택된다. 참조 어근은 예를들어 사용자가 분류된 개별 컴포넌트로서 어근을 씀에 의하거나, 또는 모든 문자 훈련 데이터로부터 어근의 우수한 예들을 수동으로 추출함에 의한 훈련을 통해 얻어질 수 있다. 어떠한 방법에서든, 참조 어근은 사용자의 쿼리 잉크와 데이터 베이스 잉크가 비교될 수 있는 어근에 대한 잉크 데이터의 우수하고 흠없는 예들을 제공한다.
그 다음에, 모듈(30, 32)로부터 추출된 어근은 어근 코드 평가블록(36)에서 비교된다. 블록(36)은 어근 코드의 매칭에 기초하여 최고의 후보만을 리턴시킨다. 그 다음에, 최고의 매칭 어근 코드는 다른 어근 코드 평가블록(38)에 공급되며, 상기 다른 어근 코드 평가블록(38)은 최고의 어근 후보를 가지는 최고의 문자 후보를 데이터베이스 잉크 저장부(22)로부터 선택한다. 그 다음에, 선택된 문자는 데이터 저장부(20)로부터의 질문 잉크와 비교되기 위하여 탄성 매칭블록(24)에 공급된다.
이러한 방식에서, 사용자의 입력 질문(질문 잉크 데이터 저장부(20)에 저장됨)은 단지 데이터베이스 잉크 데이터 저장부(22)로부터 선택된 문자와 탄성적으로 매칭된다. 어근(블록 30 및 블록 32)상에서 먼저 탄성 매칭을 수행함으로써, 전체매칭 프로세스는 훨씬 더 빠르게 수행될 수 있다. 최고의 30개(200개중) 문자 후보를 리턴시킴으로써, 계산시간이 85% 감소된다.
의미론적(어근 추출) 모델을 고려하면, 바람직한 실시예의 어근 추출 및 개선된 다이나믹 프로그래밍 기술은 지금 적절할 것이다. 이들 기술은 블록(30, 32)에서 어근 추출을 수행할때 사용될 수 있으며, 개선된 다이나믹 프로그래밍 기술은 탄성 매칭이 수행되는(도 2의 블록 30, 32 및 24에서와 같이) 곳에서 사용될 수 있다. 도 2에 의해 예시된 어근 추출구조가 현재 바람직한 반면에, 본 발명의 기술은 다른 응용에도 이용될 수 있다는 것을 인식하라.
개선된 어근 추출
바람직한 어근 추출 기술이 도 3 및 도 4를 참조하여 지금 설명될 것이다. 입력 획 데이터(40)는 질문 잉크로써 사용자에 의해 공급되거나 또는 데이터베이스로부터 공급된다. 문자 정규화 및 분할 프로세스는 다이나믹 프로그래밍 매칭동작전에 입력 데이터에 대해 수행된다. 도 3에서, 문자 정규화는 단계(42)에서부터 시작된다. 획 분할은 단계(50)에서부터 시작되며 다이나믹 프로그래밍은 단계(60)에서부터 시작된다. 다이나믹 프로그래밍 단계의 상세한 설명은 도 4에 기술된다.
문자 정규화
사람이 비규정 종이에 쓸때, 그의 필적은 쓸때마다 크기가 다를 수 있다. 따라서, 문자가 이전 저장된 문자와 비교되거나 또는 어근이 이전에 저장된 어근과 비교될때 각각의 획 길이는 다를 수 있다.
이를 조절하기 위하여, 바람직한 실시예는 문자 둘레의 경계박스를 우선 한정하고 상기 경계박스의 크기를 정규 또는 표준 사이즈로 조절함으로써 문자 정규화를 수행한다. 도 3에서, 경계박스(45)는 문자(12) 둘레에 그려지며, 그 다음에 표준크기의 경계박스(46)로 스케일링된다. 기술된 실시예에서, 원래 그려진 문자는 표준화된 문자보다 크다. 물론, 임의의 실시예에서는 원래 그려진 문자가 표준 문자보다 작을 수 있으며, 이 경우에 경계박스의 크기는 확대될 것이다.
단계(47)에서 기술된 바와 같이, 문자를 구성하는 화소 또는 포인트는 원래 그려진 문자가 정규화된 경계박스(46)를 채우기 위한 크기로 축소 또는 확대되도록 단계(48)에 기술된 바와 같이 시프트된다.
본 바람직한 실시예에서는 선형 정규화가 사용된다. 각각의 문자의 경계박스는 표준 문자 크기로 정규화되며, 따라서 문자내의 화소는 시프트된다. (x1, y1), (x2, y2)이 각각 문자의 경계박스의 상부좌측 및 하부우측 코너에 있다고 가정한다. 문자내의 포인트(x, y)에 대하여, 정규화후의 새로운 좌표는 다음과 같을 수 있다.
여기서, fx및 fy는 각각 x 및 y 방향에서 스케일 인자이다. fx및 fy는 다음과 같이 정의된다.
여기서, Sx는 폭을 선택한 표준 문자 크기이며, Sy는 높이를 위해 선택한 표준 문자 크기이다. 현재, Sx및 Sy는 각각 40 및 50으로써 선택된다. 정규화 후에, 각 문자의 경계박스의 상부좌측 코너는 원점(0,0)으로 시프트된다.
바람직한 실시예에 있어서, 유사한 정규화 연산이 기준 어근(34)상에서 수행된다(도 2). 기준 어근을 정규화할 때, 본 발명에서는 어근을 포함하는 전체 문자를 정규화한다. 트레이닝 프로세스에서, 기준 어근은 직접 트레이닝 되지 않는다. 각 기준 어근에 대한 어근 위치정보를 유지하기 위하여, 본 발명에서는 상기 어근을 포함하는 문자를 선택하며 사용자에게 문자를 쓸것을 요구한다. 이후에, 기준 어근은 그것의 대응 어근으로부터 상호작용으로 추출될 수 있다. 본 발명에서는 다이나믹 프로그래밍이 활용되기 전에 기준(트레이닝) 문자의 크기를 정규화한다.
획 분할
획 데이터가 문자 정규화를 통해 정규화된 후에, 획 분할은 단계(52)에 기술된 바와 같이 펜 다운 및 펜 업 정보에 따라 우선 획을 그룹핑함으로써 시작된다. 펜 다운 및 펜 업 정보 및 입력 포인트의 시간 순서는 입력 획 데이터(40)가 포착될 때 획득된다. 입력 포인트는 펜 다운 포인트에서 시작하여 펜 업 포인트에서 종료되도록 초기 획으로 그룹핑된다. 그 다음에, 시스템은 단계(54)에서 기술된 바와 같이 초기 획을 보다 작은 획으로 더 절단한다. 이러한 추가 분할은 y값의 국부적인 최소 및 최대 값에서 그리고 x값의 국부적인 최소값에서 초기 획을 절단함으로써 수행된다. 본 발명에서는 절단 포인트, 즉 " 내부 절단 포인트"를 호출하여 이들을 초기 획의 펜 다운 및 펜 업 절단 포인트로부터 구별한다.
때때로, 수학적인 최소 또는 최대 포인트는 육안으로 바로 볼 수 없다. 그럼에도 불구하고, 상기 최소 및 최대 포인트는 데이터 내에 존재한다. 본 발명에서는 이들 포인트를 "불명료한" 절단 포인트라 부른다. 본 바람직한 실시예에서는 단계(56)에서 불명료한 절단 포인트를 제거한다. 불명료한 절단 포인트 제거 프로세스는 다음과 같은 가정에 따라 불명료한 절단 포인트를 정의한다.
pn-i, ..., pn-1,pn,pn+1,...pn+j가 그들의 시간순서에 따른 연속적인 입력 포인트인 것으로 가정한다. pn-i,pn,및 pn+j을 절단 포인트로 놓고 y값의 국부적인 최소값 때문에pn을 내부 절단 포인트로 놓는다. pn이 불명료한지를 검사하기 위하여, 본 발명에서는, 이하에 기재된 바와 같이, "임시 획" pn-i,...pn에 대한 두개의 연속 포인트의 y값의 평균차로써 dy1를 정의하며 임시 획 pn,...pn+j에 대한 평균차로써 dy2를 정의한다.
내부 절단 포인트가 명료하게 되게 하기 위해서는 dy1및 dy2의 절대값을 크게하는게 바람직하다. dy1및 dy2가 보통 반대방향이기 때문에, 다음과 같은 방식이 적용된다.
만일이고 pn이 불명료한 내부 절단 포인트이면, pn은 제거되어야 한다.
여기서, T는 현재 0.5로 세팅된 임계값이다. 불명료한 x-최소 및 y-최대 절단 포인트를 제거하는 절차는 유사하다.
불명료한 절단 포인트를 제거한 후에, 임의의 접속 획이 식별되며 단계(58)에서 제거된다. 접속 획은 손으로 쓴 한자에서 아주 일반적이다. 접속 획은 인쇄된 필적 문자에 대한 표준 문자의 일부분이 아닌 획이다. 필기체 필적에서는 때때로 두개의 개별 획이 여분의 획, 즉 접속 획에 의해 접속된다.
접속 획은 획의 방향을 지시하는 획 데이터를 시험함으로써 검출된다. 만일 획이 하부우측에서 상부좌측으로 진행하면, 이러한 획은 접속 획일 가능성이 매우 높다.
실제로, 접속 획은 필적 문자에서 나타나지 않는다. 여분의 접속 획은 문자가 형성될 때 첨필의 속도 및 방향에 의해 영향을 받을 가능성이 크다. 예컨대, 한 사용자는 평상시에는 접속 획이 없는 깔끔한 인쇄형태로 글씨를 쓸 수 있다. 그러나, 사용자가 급하게 글씨를 쓸때에는 접속 획이 나타날 수 있다.
본 발명의 바람직한 획 제거 기술은 접속 획을 검출 및 제거하기 위하여 다음과 같은 방식을 사용한다:
ey-sy≤1 및 ex-sx≤1일 경우, 이것은 접속 획이다.
상기 식에서 (sx,sy) 및 (ex,ey)는 각각 세그먼트된 획의 시작 및 종료점이며, 원점(0,0)은 디지털화된 태블릿이나 포착 장치의 상부 좌측 코너에 위치된다.
상기한 획 세그먼트 프로세스들이 완료되면, 동적 프로그래밍은 단계(60)에서 기호화되어 수행될 수 있다. 바람직한 실시예의 바람직한 실시예의 동적 프로그래밍 절차는 도4에 상세하게 도시되어 있다.
동적 프로그래밍
동적 프로그래밍의 목적은 기준 어근과 질의된 문자와 같은 두 부분을 매칭하는 것이다. 매칭 프로세스는 획 레벨에서 수행되며; 그러므로 그 결과는 두개의 수기(handwirting) 사이의 매칭이나 최상의 획 관계이다. 이 매칭과 관련된 비용이 계산된다. 동적 프로그래밍이 획 레벨에서 수행되기 때문에, 획 동작(획 삽입, 획 삭제 또는 획 대체)이 바람직한 실시예에서 먼저 계산된다.
바람직한 실시예는(62)로 지시된 바와 같이 포인트 레벨을 이용하여 획 동작의 비용을 계산한다. 이것은 획 삽입 비용 및 삭제 비용이 획의 길이에 비례하는 방향으로 계산되고 대체 비용이 형상 유사성을 기초로하여 계산되는 종래의 방식과는 다르다. 이와는 대조적으로, 바람직한 실시예는 동적 프로그래밍이 두개의 포인트 시퀀스를 전체 매칭하기 위한 포인트 레벨에서 수행되는 연속 포인트 시퀀스로서 각 획을 처리한다. 포인트 레벨 계산은 기본 동작 즉 삽입(64), 삭제(66) 및 대체(68)동작을 포함한다. 바람직한 실시예에서 대체 비용 평가는 탄젠트 벡터 방법론(70), 중심 관계 평가(72), 및 시작점-종료점 평가(74)를 포함하는 다수의 개선된 기술을 이용한다. 그러나, 이들 개선된 기술들을 기술하기에 앞서, 종래의 대체 비용 측정의 단점중 하나를 설명하는 도 5를 참조한다.
종래의 대체 비용 측정에서, a에서의 획 s1및 b에서의 획 b1과 같은 두개의 획 사이의 형상 유사성이 있다. 평가는 그들의 상부 좌측 코너(또는 각 본딩 박스의 상부 좌측 코너)가 중첩하도록 c에서 두개의 획을 일시적으로 정렬함으로써 수행된다. c에서 설명한 바와 같이, 그들의 상부 좌측 코너에서 획을 정렬함으로써, 획이 상부 좌측 부분을 제외하고는 기본적으로 유사하다는 사실에도 불구하고, 획의 나머지는 비교적 큰 유클리드 간격으로 분리되어 놓여있다. 이것은 누적된 에러를 초래하며, 대체 비용은 전체 형상이 규정되는 것보다 더 높은 값으로 평가된다.
도 6은 본 발명의 바람직한 실시예에 따라 평가된다. 도6을 참조하면, 두개의 획의 대응 포인트를 다음과 같이 규정한다:
s1은 I1포인트에서의 획이며, s2는 I2포인트에서의 획이라 한다. Pi는 s1내에서의 i번째 포인트이며, s2에서 Pi의 대응 포인트는 Pj이고,
이다.
다음, 두개의 대응 포인트 Pi및 Pj의 대체를 다음과 같이 계산한다:
POINT_SUB_COST(Pi\s1,s2)=1-cosθ(vi,vj)
여기서 vi는 Pi에서의 탄젠트 벡터이고 vj는 Pj에서 탄젠트 벡터이고, cosθ(vi,vj)는 두 벡터 사이의 각도이며, θ=[0,π]이다.
cosθ(vi,vj)는 다음과 같이 계산될 수 있다.
여기서 (x1, y1) 및 (x2, y2)는 각각 vi의 시작점 및 종료점이며, (x3, y3) 및 (x4, y4)는 각각 vj의 시작점 및 종료점이다.
알 수 있는 바와 같이, cosθ(vi,vj)이 클수록, POINT_SUB_COST(vi,vj)의 값이 커진다. 두개의 대응 포인트의 대체는 유클리드 간격을 반영하지 않고, 이들 대응 포인트에서 두개의 획 사이의 "순간적인" 형상의 차이를 반영한다. 획 s1을 따라 모든 포인트에 대한 포인트 대체 비용을 합산함으로써, 획 s1및 s2사이의 대체 비용을 얻을 수 있다:
여기서 I1은 획 s1의 길이이다.
추가 표준화에 의해 획 대체 비용을 다음과 같이 수정한다:
여기서은 두 획 사이의 평균 길이를 반영하며,은 획 사이즈의 차를 반영하며, 획 사이즈의 차가 클수록 대체 비용도 커진다.
표준화 후에, 다음과 같은 값을 갖는다:
STROKE_SUB_COST(s1,s2)STROKE_SUB_COST(s1,s2)
새로운 획 대체 비용은 여러 가지 단점들을 극복할 수 있다. 먼저, 대응 포인트들을 검색함으로써, 포인트 대체 비용을 계산하는데 있어서 동적 프로그래밍 정차를 제거할 수 있다. 두번째로, 탄젠트 벡터를 이용하는 도6에서의 대체 비용의 계산 비용은 누적 효과를 가지지 않는다.
상기 아웃라인된 대체 비용을 평가하는 탄젠트 벡터 방법은 획이 획의 구조 정보를 고려하지 않고 매칭되는 것을 고려한다. 성능을 더 개선하기 위하여, 획의 구조적 관계는 획과 그것의 시작점 및 종료점의 중심관계의 평가를 통해 평가될 수 있다.
사용자가 한자를 형성할 경우, 문자내의 획은 구조적 관계(즉, 획들 사이의 공간 관계)로 배열된다. 구조적 관계를 평가하기 위하여, 획의 가중된 중심은 획의 위치를 지시하기 위하여 계산되고 사용된다. 구조적 정보는 도7에 도시한 바와 같이 두 획 중심 사이의 공간 관계에 의해 반영될 수 있다. 두개의 획이 매칭되고 그들의 대체 비용이 계산되기 전에, 시스템은 먼저 매칭되거나 대체된 마지막 두 획을 룩업한다. 도7을 참조하면, 마지막 두개의 매칭된 획 ri(기준 어근의 i번째획) 및 cj(문자의 j번째 획)가 있다. 시스템은 rm과 cn을 매칭할 것이다.
pi, pj, pm, pn은 각각 ri, cj, rm, 및 cn에 대한 가중된 중심이다. 벡터는 두개의 획 ri및 rm사이의 공간 관계를 반영할 수 있다. 유사하게, 벡터은 cj및 cn사이의 공간 관계를 반영할 수 있다. rm을 cn에 매칭할 경우, rm과 cn은 형상이 유사하고 이전 매칭된 획(즉, rj및 cj)에 대한 공간 관계도 유사해야 한다. 즉, 벡터사이의 각도는 작아야 한다.
기준은 다음과 같다:
rm과 cn은 매칭되지 않아야 한다.
는 임계치로서 현재 π/2로 설정되어 있다. 동적 프로그래밍에서, 검사될 두개의 획이 매칭하지 않은 것으로 결정되면, 대체 비용이 아주 높은 수로 설정되어 대체가 일어나지 않을 것이다. 반면, 상기한 방법을 이용하여 획 대체 비용 계산을 진행한다.
제로 길이 벡터의 방향이 pi=pm또는 pj=pn일 경우 의미없다는 것이 예외다. 그러므로, 이 경우, 상기 기준은 무시될 것이며, 대체 비용이 계산될 것이다.
바람직한 실시예는 대체 비용을 계산함에 있어서 시작점과 종료점을 평가한다. 시스템은 먼저 매칭되거나 대체된 마지막 두개의 획을 찾음으로써 가능한 매칭을 위한 두개의 획을 검사한다. 한 획의 시작점 및 다음 획의 종료점은 매칭될 획과 비교하는 각을 형성하는 벡터를 정의하는데 사용된다. 상기 과정은 도 8을 참조하여 이해될 수 있다.
도 8에 도시된 바와 같이, 최종 두개의 매칭된 획이 ri(반경의 i번째 획) 및 cj(문자의 j번째 획)이도록 하자. 시험중 두개의 획은 rm및 cn이다. ei및 ej가 각각 획(ri및 cj)의 끝점이라고 하자. sm및 sn이 각각 획(rm및 cn)의 시작점이라고 하자. 벡터()는 두개의 획(ri및 rm) 사이의 공간 관계를 반영한다. 유사하게, 벡터()는 획(cj및 cn) 사이의 공간 관계를 반영한다. 본 출원인이 획(rm)을 획(cn)에 매칭할 때, rm및 cn이 유사한 모양일 뿐 아니라, 이전에 매칭된 획(즉, ri및 cj각각)에 대한 공간 관계는 유사하여야 한다. 다른 말로, 벡터()) 사이의 각도는 작아야 한다.
본 출원인의 기준은이고, rm및 cn은 매칭되서는 않된다.
θT는 π/2로 현재 설정된 드레스홀드이다. 다이나믹 프로그래밍에서 중심점 벡터와 유사하게, 만약 시험될 두개의 획이 매칭하도록 결정되지 않으면, 본 출원인은 매우 높은 수로 대체 비용을 설정하여 상기 대체는 발생하지 않는다. 그렇지 않으면, 본 출원인은 상기된 방법을 사용하여 획 대체 비용을 계속 계산할 것이다.
다시, 때때로 두개의 연속적인 획이 접속될 때, 제 1 획의 끝점은 제 2 획의 시작점이 된다. 즉, ei=sm또는 ej=sn. 이 경우, 상기 기준은 무시되고 대체 비용이 계산된다.
비용 삽입후, 삭제 비용 및 대체 비용은 상기에서와 같이 계산되었고, 다이나믹 프로그래밍 매칭은 76에서 수행된다. 다이나믹 프로그래밍 매칭은 두개의 메인 카테고리로 어근을 분류하는 어근 분류 과정(78)을 통하여 현재 바람직한 실시예에서 개선된다. 제 1 카테고리에서, 어근이 문자의 제 1 몇몇 획에서 시작한다. 제 2 카테고리에서, 어근이 문자의 최종 획에서 끝난다.
어근이 속하는 카테고리는 일반적으로 종래에 잘 공지되었다. 이 카테고리 정보는 현재 바람직한 다이나믹 프로그래밍 매칭 과정에서 보강된다. 보강 어근이 문자와 매칭될 때, 만약 문자내의 매칭된 획이 상기 어근에 대한 예상된 카테고리 내에 속하지 않으면 보다 많은 비용이 부가된다. 현재 바람직한 실시예는 다음 다이나믹 프로그래밍 과정을 통하여 설명될 수 있다.
이전에, 다이나믹 프로그래밍은 기준 어근(R=r1r2...rm)을 문자(C=c1c2...cm)의 순서와 매칭하도록 사용된다. 이런 과정에서, 3개의 동작인 삽입, 삭제 또는 대체는 각각의 동작 비용에 따라 발생할 수 있다. 최종 목적은 최소 총 비용으로 최적 동작 시퀀스를 발견하는 것이다. 예를 들어, 예시된 바와 같이, r=r1r2r3r4가 4개의 스트로로 구성된 기준 어근이고 C=c1c2c3...c8가 8개의 획으로 구성된 매칭 문자라고 하자. R을 C, 즉 c'=c=c3c4c5c6로 변환하기 위하여, 하나의 가능한 동작 시퀀스는 테이블 1에서 도시된 바와 같이 c1삽입, c2삽입, r1을 c3로 대체, r2를 c4로 대체, c5삽입, r3를 c6로 대체, r4삽입일 수 있다.
테이블 1 : 문자의 시퀀스에 부분적 어근으로 제 1 카테고리를 매칭하기 위한 다이나믹 프로그래밍 과정.
I : 삽입; S : 대체; D : 삭제
C1 C2 C3 C4 C5 C6 C7 C8
R1 I I S
R2 S I
R3 S
R4 D
본래의 다이나믹 프로그래밍 과정에서, 본 출원인은 매칭이 획 시퀀스(C) 및 끝점 어디에서든 시작할 수 있다는 것을 이해한다. 상기 실시예에서, 실제 매칭은 r1을 c3로 대체하고 r4를 삭제하는 것을 끝낸다. 그러므로, 총 비용은 r1을c3로 대체하고, r2를 r4로 대체하고, c5를 삽입하고, r3를 c6로 대체하고 r4를 삭제하는 비용의 합이고, c1을 삽입하고 c2를 삽입하는 것은 고려되지 않는다.
어근 카테고리를 고려할 때, 본 출원인은 문자의 제 1 몇몇 획에 매칭되지 않은 제 1 카테고리의 어근 또는 문자의 최종 몇몇 획에 매칭되지 않은 제 2 카테고리의 어근에 대한 페널티를 부가하지 않는다. 이렇게 하기 위하여, 본 출원인은 다이나믹 프로그래밍 과정을 변경하여 매칭이 매칭 문자의 제 1 획으로부터 시작하여 제 1 카테고리 어근 어느 곳에서든 끝나도록 하고; 매칭이 문자내의 어느 곳에서든 시작하여 제 2 카테고리 어근에 대한 최종 획에서 끝나도록 한다. 테이블 1의 경우, 총 비용은 c1삽입, c2삽입, r1을 c3로 대체, r2를 r4로 대체, c5삽입, r3를 c6로 대체 및 r4를 삭제하는 것의 합이다. 도시된 바와 같이, 매칭은 대체가 C의 제 1 획에서 시작하지 않기 때문에 c1삽입 및 c2삽입 비용에 의해 패널티를 받는다. 예전처럼, 제 1 카테고리 어근에 대하여, 다이나믹 프로그래밍은 문자내의 어느 곳에서든 끝날 수 있다.
유사하게, 제 2 카테고리에 속하는 어근(R)에 대하여, cm즉, C의 최종 획에서 끝나는 C의 시퀀스와 매칭하는 것이 기대된다. 예를 들어, 가능한 동작 시퀀스는 테이블 2에 도시된 바와 같이 c1삽입, c2삽입, r1을 c3로 대체, r2를 r4로 대체, c5삽입, r3를 c6로 대체, r4삭제, c7삽입 및 c8삽입일 수 있다.
테이블 2 : 문자에 제 2 카테고리 어근을 매칭하기 위한 다이나믹 프로그래밍 과정
C1 C2 C3 C4 C5 C6 C7 C8
R1 (I) (I) S
R2 S I
R3 S
R4 D I I
이 경우에, 제 1 두개의 삽입 동작(c1삽입 및 c2삽입)은 매칭이 문자의 어느 곳에서든 시작할 수 있기 때문에 제로 비용으로 실행되어야 한다. 그러나, 최종 두개의 삽입 동작(c7삽입 및 c8삽입)에 대한 비용은 무시되서는 않된다.
다이나믹 프로그래밍 매칭 단계(76)는 문자의 일부와 기준 어근을 매칭하기 위한 총 다이나믹 프로그래밍 비용을 생성한다. 총 비용은 모든 동작 비용(삽입, 삭제 및 대체)의 합산이다. 그러므로, 각 문자에 대하여, 모든 기준 어근이 매칭되고자 할 때, 보다 적은 획을 가진 어근이 보다 작은 다이나믹 프로그래밍 비용을 양산한다. 이것은 잘못된 결과를 유발한다. 이것을 해결하기 위하여, 현재 바람직한 실시예는 기준 어근(82)의 길이를 사용하여 단계(80)에서 지시된 바와 같은 다이나믹 프로그래밍 비용을 표준화한다. 다이나믹 프로그래밍 비용을 표준화하는 것은 보다 적은 획을 가진 어근이 보다 확실한 어근 추출 과정을 발생시키는 본래의 이익을 제거한다.
두개의 어근(예를 들어, 기준 어근 및 검사 어근) 사이의 위치 유사성은 어근 추출 방법에 이용될 수 있는 몇몇 진행 정보이다. 단계(84)에 도시된 바와 같이, 바람직한 실시예는 어근 조사를 바탕으로 하는 위치 유사성을 사용하여, 위치가 비슷하지 않은 경우 제거한다. 각각의 문자에 대하여, 제거 과정은 모든 기준 어근에 다이나믹 프로그램을 바탕으로 하는 탄력적인 매칭을 제공하는 것을 포함한다. 그 다음 상기 과정은 기준 어근 및 문자 사이의 매칭된 획의 위치 유사성을 계산한다. 음의 위치 유사성을 가진 어근이 제거된 후, 나머지 어근에 대한 다이나믹 프로그래밍 비용은 정렬되고 최소 비용을 가진 상위의 두개의 어근이 문자에서 추출된 어근으로서 선택된다. 도시된 바와 같이, 정렬 단계(86) 및 비유사성 제거 단계(84)는 모든 기준 어근을 통하여 반복된다. 그래서 이런 과정의 최종 생산물은 88에 도시된 추출된 어근 또는 어근들을 나타낸다.
어근 코드 평가
어근이 각각의 문자에서 추출돈후, 문자열은 어근 코드, 즉 어근 ID의 시퀀스가 된다. 두개의 문자열이 비교될 때, 매칭은 어근 코드 레벨에서 다이나믹 프로그래밍을 통하여 행해진다. 이것은 필치(즉, 손으로 쓰여진 데이터베이스 및 손으로 쓰여진 질문)에 매칭되는 필치 및 타이핑된 텍스트(즉, 손으로 쓰여진 데이터베이스 및 타이핑된 텍스트 질문)에 매칭된 필치 양쪽에 적용된다. 타이핑된 질문에 대해, 이것들은 즉시 어근 코드로 변환되어 데이터 베이스 스트링의 어근 코드와 비교된다.
두 문자 스트링을 매칭시키기 위한 동적 프로그래밍에서, 이러한 기본적인 작동은 각각 작동 비용과 결합된 문자 삽입, 문자 삭제 및 문자 대체로 한정된다. 이는 질문 스트링의 부수 코드를 데이터 스트링의 래티컬 코드로 전환하기 위함이다. 동적 프로그래밍으로, 시스템은 최소한의 에디트 거리를 갖는 최적의 매칭 시퀀스(최소의 총 작동 비용)를 얻는다.
문자 삽입 및 삭제 비용은 상수로 할당되다. 문자 대체 비용은 두 문자(예를 들어, 각 문자에 대해 두개인 네개의 부수 코드) 사이의 차이를 반용한다. 문자 대체는 한 문자의 부수 코드가 다른데서 발견되지 않는 발생의 수로서 한정된다. 만일 문자가 추출된 부수 코드를 갖지 않으면, 두개의 널 부수 코드(ID 영을 가진 코드)에 의해 나타나며, 대체 비용은 동일한 방법으로 계산된다.
필요에 따라서, 널 부수 코드는 다음과 같이 수정된다. 각 문자는 두개의 추출된 부수를 포함하여 각 문자는 부수 ID에 대응하는 두개의 수에 의해 나타날수도 있다. 만일 어떠한 부수도 추출되지 않으면, 부수 코드는 널이며, 부수 아이디는 영이다. 일실시예에서, 문자 대체는 매칭되지 않은 부수 코드 또는 추출되지 않은 부수 코드를 위한 동일한 방식으로 계산된다. 그러나, 필요에 따라, 보다 심각한 단점이 매칭되지 않은 부수 코드와 비교해서 추출되지 않은 부수 코드에 인가될 수도 있다.
더욱이, 종래의 알고리즘에서 알 수 있듯이, 각각의 추출된 부수는 동일하게 처리된다. 특히, 두 래디털 코드가 동일할 경우, 대체 비용에 아무것도 기여하지 않는다. 비록 이러한 방법이 부수 코드에서 매칭을 촉진시키지만, 더 적은 래티컬 연장 비용, 예를 들어 보다 신뢰할만한 추출된 부수를 가진 부수 코드에서 이로운 매치가 아니다. 각각의 부수 코드가 래티컬 추출 프로세스에서 획득된 경우, 동적 프로그래밍 비용은 이와 관련한다. 새로운 방법은 이러한 동적 프로그래밍 비용을 이전의 부수 엑스트라에서 대체 비용 계산으로 연결시키는 것을 목적으로 한다. 만일 두 부수 코드가 모두 높은 컨피던스(부수 추출에서 낮은 비용)로 매칭하는 경우, 코드의 대체 비용은 낮은 컨피던스를 가진 두 부수 코드이 비용보다 더 낮을 것이다. 방법을 결합함으로써, 다음과 같은 새로운 캐픽터 대체를 설명한다.
문자 C1=a1,a2와 C2=b1,b2를 비교하자. 여기서, a1,a2는 C1으로부터 추출된 부수이며, b1,b2는 C2로부터 추출된 부수이다. 또한, dpCOST_b1, dpCOST_b2, dpCOST_a1, dpCOST_a2 는 예를 들어 각각 b1, b2,a1및 a2에 대한 부수 추출 비용인 획 레벨에 대한 동적 프로그래밍 비용이다. 이러한 두 문자에 대한 대체 비용은
SUB_COST(b1,b2;a1,a2)=COST(b1;a1,a2)+COST(b2;a1,a2)
여기서 COST(b1;a1,a2)는 b1에 대한 대체 비용이다. 이는:
그리고, COST(b2;a1,a2)는 b2에 대한 대체 비용이다.
여기서, Csub_max는 (a1,a2) 및 (b1,b2)가 완전히 상이한 경우 최악의 대체 코드를 나타내는 할당된 상수이다. 실예로부터, dpCOST_x는 항상 소정의 스트로크(x)에 대해 Csub_max보다 더 작다.
부수 코드(예를 들어, b1=a2)에서 매칭하는 경우, COST(b1;a1,a2) 및 COST(b2;a1,a2)는 Csub_max/2 보다 더 작을 것이며최종 대체 비용은 Csub_max보다 더 작을 것이다.
참조 부수
작동 실행을 구성하기 위해, 참조 부수는 전체 의미의 매칭 프로세스를 향상시키기 위해 선택된다. 참조 부수의 선택은 집적적으로 부수 추출 프로세스에영향을 미친다. 통상적으로, 더 많은 부수가 올바르게 추출될수록, 최종 매칭 비율은 더 높아진다. 올바르게 추출된 부수의 수를 증가시키는 한 방법은 참조 부수의 수를 증가시키는 것이다. 결론적으로, 더 많은 부수가 추출된다. 그러나, 참조 부수를 트래이닝하기 위해서 보다 많은 시간이 필요하며, 참조 부수 데이터 베이스가 증가된 경우 참조 부수를 추출하기 위해 보다 많은 시간이 필요하다. 따라서, 부수의 올바른 수를 선택하는 것은 프로세싱 시간 및 매칭 비율 사이에서 교환된다.
부수 선택에서 또다른 방법은 부수 사이에서 유사성을 포함한다. 트레이닝 세트에 유사한 부수를 함께 놓는 것은 혼란을 초래할 수 있다. 또한, 일부 부수는 기록하기에 너무 많은 상이한 방법이 있기 때문에 추출하기가 보다 어럽다. 혼란을 야기할 수도 있으며 다양한 상이한 방법으로 기록될 수 있는 부수는 부수 추출을 위해 사용되는 참조 부수 세트로부터 가장 잘 삭제될 수 있다. 도 9는 한자 인식 시스템을 구현하는데 사용하기 위한 현재 실싱예의 부수를 도시한다. 도시된 처음의 45개 참조 부수는 2000개 또는 공통적으로 사용된 한자에서 보다 빈번하게 발생하는 부수이다. 이러한 문자는 동일한 빈도로 중국 수기에 반드시 나타나는 것은 아니기 때문에, 데이터 베이스 스트링에서 가장 빈번하게 사용되는 부수로부터 선택된 추가의 12개 부수를 가진 세트를 추가한다. 작동 구현의 설계에서, 이러한 참조 부수는 초기 구현을 확립하기 위해 사용될 수 있다. 그 후, 시스템이 사용됨에 따라, 소정의 추가 부수가 식별될 수도 있으며 사용자 스태디스틱의 빈도에 기초하여 참조 부수 데이터 세트에 추가될 수도 있다.
전술한 과점에서, 설명된 부수 추출 기술은 전체의 스케메틱 매칭 프로세스를 향상시키기 위해 차례로 단일 또는 결합하여 사용될 수도 있다. 발명이 실시예의 형태로 기술되었지만, 덧붙인 청구항에 기술된대로 발명의 사상을 벗어남이 없이 수정될 수 있다.
본 발명에 따라, 다이나믹 프로그래밍 절차에서 혼동될 수 있는 다수의 인위적 문제점을 제거하는 문자 표준화 절차와 개선된 획 구분 절차를 적용하여 의미 매칭 성능을 상당히 개선할 수 있는 크게 개선된 어근 추출을 할 수 있는 효과를 거둘 수 있다.

Claims (51)

  1. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 저장하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 상기 추출된 어근을 표현하기 위하여 상기 입력된 수기 주석을 표준화하는 단계와 상기 수기 주석의 일부를 식별하는 단계를 포함하는 어근 추출 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  2. 제 1항에 있어서, 상기 표준화 단계는 다수의 포인트로서 상기 수기 주석을 표현하고 상기 입력된 수기 주석이 소정 크기가 되도록 상기 포인트사이의 간격을 스케일링함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  3. 제 1항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 획을 식별하고 상기 획과 관련된 업/다운 정보를 기초로 상기 획을 조직화함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  4. 제 1항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 획을 식별하고 상기 획내의 국부 최대와 최소 포인트를 기초로 상기 획을 조직화함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  5. 제 4항에 있어서, 상기 선택된 국부 최대 및 최소 포인트를 선택적으로 제거하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  6. 제 1항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 연결 획을 식별하고 상기 연결 획을 제거함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  7. 제 1항에 있어서, 상기 평가 연산은 상기 추출된 어근 및 상기 저장된 다수의 어근을 직렬 연속 포인트로서 나타내고 상기 각각의 직렬 연속 포인트에 대한 다이나믹 프로그래밍 매칭을 수행함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  8. 제1항에 있어서, 상기 평가 연산은 매칭 근사성을 나타내는 적어도 하나의 프로그래밍 비용 매트릭을 산출하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  9. 제 8항에 있어서, 기준 어근의 길이를 결정하고 상기 기준 어근 길이에 대한 상기 프로그래밍 비용 매트릭을 표준화하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  10. 제 1항에 있어서, 상기 평가 연산은 시작 포인트와 종료 포인트를 기초로 어근을 카테고리화하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  11. 제 1항에 있어서, 상기 평가 연산은 상기 추출된 어근 및 저장된 다수의 어근과 관련된 탄젠트 벡터를 비교함으로써 치환 비용을 계산하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  12. 제 1항에 있어서, 상기 평가 연산은 상기 추출된 어근의 중심과 저장된 다수의 어근의 중심 사이의 관계를 평가하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  13. 제1항에 있어서, 상기 평가 연산은 상기 추출된 어근과 저장된 다수의 어근의 시작 포인트와 종료 포인트를 평가하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  14. 제 1항에 있어서, 상기 평가 연산은 상기 다수의 어근내의 획과 상기 추출된 어근내의 획을 비교하는 단계 및 네거티브 위치 유사성을 가지는 후보 어근을 제거하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  15. 제 1항에 있어서, 상기 평가 연산은 다수의 추출된 어근 후보를 형성하며, 상기 평가 연산은 다이나믹 프로그래밍 비용을 기초로 상기 후보를 분류하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  16. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 저장하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서,추출된 어근을 표현하기 위하여 획 시작 포인트와 종료 포인트 정보를 이용하여 상기 수기 주석내의 개별 획을 식별하는 단계, 국부 최대 포인트와 최소 포인트를 기초로 그리고 상기 분할된 개별 획을 이용하여 상기 개별 획을 분할하는 단계를 포함하는 어근 추출 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  17. 제 16항에 있어서, 상기 선택된 국부 최대 및 최소 포인트를 선택적으로 제거하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  18. 제 16항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 연결 획을 식별하고 상기 연결 획을 제거함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  19. 제 16항에 있어서, 상기 평가 연산은 상기 추출된 어근 및 상기 저장된 다수의 어근을 직렬 연속 포인트로서 나타내고 상기 각각의 직렬 연속 포인트에 대한 다이나믹 프로그래밍 매칭을 수행함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  20. 제16항에 있어서, 상기 평가 연산은 매칭 근사성을 나타내는 적어도 하나의 프로그래밍 비용 매트릭을 산출하는 다이나믹 프로그래밍 매칭 연산을 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  21. 제 20항에 있어서, 기준 어근의 길이를 결정하고 상기 기준 어근 길이에 대한 상기 프로그래밍 비용 매트릭을 표준화하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  22. 제 16항에 있어서, 상기 평가 연산은 시작 포인트와 종료 포인트를 기초로 어근을 카테고리화하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  23. 제 16항에 있어서, 상기 평가 연산은 상기 추출된 어근 및 저장된 다수의 어근과 관련된 탄젠트 벡터를 비교함으로써 치환 비용을 계산하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  24. 제 16항에 있어서, 상기 평가 연산은 상기 추출된 어근의 중심과 저장된 다수의 어근의 중심 사이의 관계를 평가하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  25. 제16항에 있어서, 상기 평가 연산은 상기 추출된 어근과 저장된 다수의 어근의 시작 포인트와 종료 포인트를 평가하는 단계를 포함하는 다이나믹 프로그래밍 매칭 연산인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  26. 제 16항에 있어서, 상기 평가 연산은 상기 다수의 어근내의 획과 상기 추출된 어근내의 획을 비교하는 단계 및 네거티브 위치 유사성을 가지는 후보 어근을 제거하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  27. 제 16항에 있어서, 상기 평가 연산은 다수의 추출된 어근 후보를 형성하며, 상기 평가 연산은 다이나믹 프로그래밍 비용을 기초로 상기 후보를 분류하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  28. 초서체 수기 주석으로부터 어근을 추출하는 방법으로서,
    검색될 수기 주석을 입력하는 단계; 및
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 추출된 어근을 표현하기 위하여 상기 입력된 수기 주석을 표준화하는 단계와 상기 수기 주석의 일부를 식별하는 단계를 포함하는 어근 추출 단계를 포함하는 초서체 수기 주석을 추출하는 방법.
  29. 제 28항에 있어서, 상기 표준화 단계는 다수의 포인트로서 상기 수기 주석을 표현하고 상기 입력된 수기 주석이 소정 크기가 되도록 상기 포인트사이의 간격을 스케일링함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  30. 제 28항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 획을 식별하고 상기 획과 관련된 업/다운 정보를 기초로 상기 획을 조직화함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  31. 제 28항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 획을 식별하고 상기 획내의 국부 최대와 최소 포인트를 기초로 상기 획을 조직화함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  32. 제 31항에 있어서, 상기 선택된 국부 최대 및 최소 포인트를 선택적으로 제거하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  33. 제 28항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 연결 획을 식별하고 상기 연결 획을 제거함으로써 수행되는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  34. 초서체 수기 주석을 추출하는 방법으로서,
    검색될 수기 주석을 입력하는 단계; 및
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 추출된 어근을 표현하기 위하여 획 시작 포인트와 종료 포인트 정보를 이용하여 상기 수기 주석내의 개별 획을 식별하는 단계, 국부 최대 포인트와 최소 포인트를 기초로 상기 개별 획을 분할하는 단계 및 상기 분할된 개별 획을 이용하는 단계를 포함하는 어근 추출 단계를 포함하는 초서체 수기 주석을 추출하는 방법.
  35. 제 34항에 있어서, 상기 선택된 국부 최대 및 최소 포인트를 선택적으로 제거하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  36. 제 34항에 있어서, 상기 추출 단계는 상기 입력된 수기 주석내의 연결 획을 식별하고 상기 연결 획을 제거함으로써 수행되는 것을 특징으로 하는 초서체 수기주석을 추출하는 방법.
  37. 수기 주석을 매칭시키는 다이나믹 프로그래밍 과정에서 획 치환 비용을 결정하는 방법으로서,
    비교될 다수의 획을 식별하는 단계;
    비교되는 각각의 획에 대한 탄젠트 벡터를 평가하는 단계; 및
    상기 벡터사이의 관계를 기초로 하여 치환 비용을 결정하는 단계를 포함하는 치환 비용 결정 방법.
  38. 수기 주석을 매칭시키는 다이나믹 프로그래밍 과정에서 획 치환 비용을 결정하는 방법으로서,
    비교될 다수의 획을 식별하는 단계;
    비교되는 각각의 획과 관련된 가중된 중심을 결정하는 단계; 및
    상기 가중된 중심사이의 관계를 기초로 하여 치환 비용을 결정하는 단계를 포함하는 치환 비용 결정 방법.
  39. 수기 주석을 매칭시키는 다이나믹 프로그래밍 과정에서 획 치환 비용을 결정하는 방법으로서,
    비교될 다수의 획을 식별하는 단계;
    한 쌍의 획을 식별하기 위하여 매칭 연산을 수행하는 단계; 및
    치환 비용을 계산하기 위하여 상기 다수의 획의 시작 포인트와 종료 포인트의 관계를 이용하는 단계를 포함하는 치환 비용 결정 방법.
  40. 제 34항에 있어서,
    사용자로부터 입력 주석을 수신하는 단계;
    상기 주석의 어휘를 저장하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 추출된 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 더 포함하는 것을 특징으로 하는 초서체 수기 주석을 추출하는 방법.
  41. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 추출하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계;및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  42. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 저장하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 상기 수기 주석내의 개별 획을 식별하는 단계, 상기 각각의 개별 획의 탄젠트 벡터를 지정하는 단계, 치환 비용을 계산하고 치환 비용의 계산시 상기 지정된 탄젠트 벡터를 이용하여 상기 개별 획과 상기 저장된 다수의 어근 사이에 다이나믹 프로그래밍을 수행할 때 상기 탄젠트 벡터사이의 관계를 이용하는 단계를 포함하는 어근 추출 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  43. 제 42항에 있어서, 상기 탄젠트 벡터를 설정하는 단계는:
    상기 개별 획으로부터 제 1포인트 및 상기 저장된 다수의 어근으로부터의 제 2포인트로 이루어진 적어도 한 쌍의 포인트를 발견하는 단계; 및
    상기 포인트 쌍의 상기 제 1포인트에서의 개별 획의 제 1탄젠트 벡터 및 상기 포인트 쌍의 제 2포인트상의 다수의 상기 저장된 어근의 제 2탄젠트 벡터를 계산하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  44. 제 42항에 있어서, 상기 관계는 상기 제 1탄젠트 벡터와 제 2탄젠트 벡터사이의 각도인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  45. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 저장하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 상기 수기 주석내의 개별 획을 식별하는 단계와, 상기 개별 획과 관련된 가중된 중심 정보와 상기 다수의 저장된 어근과 관련된 가중된 중심 정보를 결정하는 단계와치환 비용을 계산하기 위하여 가중된 중심 정보사이의 관계를 이용하는 단계를 포함하는 어근 추출 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  46. 제 45항에 있어서, 상기 가중된 중심 정보를 결정하는 단계는:
    상기 개별 획으로부터의 제 1쌍의 획을 식별하는 단계;
    상기 제 1쌍의 획의 제 1획에 대응하는 제 1획 및 상기 제 1쌍의 획의 제 2획과 대응하는 제 2획을 가진, 상기 저장된 다수의 어근으로부터의 제 2쌍의 획을 식별하는 단계;
    상기 제 1쌍의 획의 가중된 센터 사이에 제 1벡터를 형성하는 단계; 및
    상기 제 2쌍의 획의 가중된 센터 사이에 제 2벡터를 형성하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  47. 제 45항에 있어서, 상기 관계는 상기 제 1벡터와 제 2벡터사이의 각도인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  48. 초서체 수기 주석을 검색하는 방법으로서,
    상기 주석의 어휘를 저장하는 단계;
    상기 주석의 의미 부분에 대응하는 다수의 어근을 저장하는 단계;
    검색될 수기 주석을 입력하는 단계;
    상기 입력된 수기 주석으로부터 적어도 하나의 어근을 추출하는 단계로서, 상기 수기 주석내의 개별 획을 식별하는 단계와, 상기 개별 획과 관련된 가중된 시작과 종료 포인트와 상기 다수의 저장된 어근과 관련된 시작과 종료 포인트를 결정하는 단계와 치환 비용을 계산하기 위하여 상기 시작과 종료 포인트사이의 관계를 이용하는 단계를 포함하는 어근 추출 단계;
    적어도 하나의 후보 어근을 식별하도록 상기 추출된 어근 및 상기 저장된 다수의 어근사이의 평가 연산을 수행하는 단계;
    상기 어휘의 서브세트를 선택하기 위하여 상기 후보 어근을 이용하는 단계; 및
    상기 어휘로부터의 주석을 검색하기 위하여 상기 입력된 수기 주석 및 상기 서브세트사이에 매칭 연산을 수행하는 단계를 포함하는 초서체 수기 주석을 검색하는 방법.
  49. 제 48항에 있어서, 상기 시작과 종료 포인트를 결정하는 단계는:
    상기 개별 획으로부터의 제 1쌍의 획을 식별하는 단계;
    상기 제 1쌍의 획의 제 1획에 대응하는 제 1획 및 상기 제 1쌍의 획의 제 2획과 대응하는 제 2획을 가진, 상기 저장된 다수의 어근으로부터의 제 2쌍의 획을 식별하는 단계;
    상기 제 1쌍의 획의 제 1획의 종료 포인트와 상기 제 1쌍의 획의 제 2획의 시작 포인트사이에 제 1벡터를 형성하는 단계; 및
    상기 제 2쌍의 획의 제 1획의 종료 포인트와 상기 제 2쌍의 획의 제 2획의 시작 포인트사이에 제 2벡터를 형성하는 단계를 포함하는 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  50. 제 48항에 있어서, 상기 관계는 상기 제 1벡터와 제 2벡터사이의 각도인 것을 특징으로 하는 초서체 수기 주석을 검색하는 방법.
  51. 수기 주석을 매칭시키는 다이나믹 프로그래밍 과정에서, 상기 주석에 포함된 어근을 평가하는 방법으로서,
    다수의 추출된 어근 후보를 발생시키기 위하여, 상기 다수의 추출된 어근 후보 각각과 관련된 비용 세트를 발생시키는 제 1다이나믹 프로그래밍 연산을 이용하여 입력된 수기 주석에 대한 어근 추출을 수행하는 단계;
    상기 각각의 어근 후보와 어근 코드를 상관시키는 단계; 및
    상기 제 1다이나믹 프로그래밍 연산 중에 결정된 상기 비용 세트를 이용하여치환 비용이 결정되는 제 2다이나믹 프로그래밍 연산을 이용하여 상기 어근 코드를 평가하는 단계를 포함하는 어근을 평가하는 방법.
KR10-2001-0016493A 2000-03-29 2001-03-29 부수 모델에 기초한 초서체 한자 수기 주석의 검색법 KR100487386B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/538,101 US6681044B1 (en) 2000-03-29 2000-03-29 Retrieval of cursive Chinese handwritten annotations based on radical model
US09/538,101 2000-03-29

Publications (2)

Publication Number Publication Date
KR20010093764A true KR20010093764A (ko) 2001-10-29
KR100487386B1 KR100487386B1 (ko) 2005-05-04

Family

ID=24145489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0016493A KR100487386B1 (ko) 2000-03-29 2001-03-29 부수 모델에 기초한 초서체 한자 수기 주석의 검색법

Country Status (4)

Country Link
US (1) US6681044B1 (ko)
JP (1) JP2001325564A (ko)
KR (1) KR100487386B1 (ko)
CN (1) CN1226696C (ko)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020141643A1 (en) * 2001-02-15 2002-10-03 Denny Jaeger Method for creating and operating control systems
AUPS020302A0 (en) * 2002-01-31 2002-02-21 Silverbrook Research Pty. Ltd. Methods and systems (npw007)
US7262764B2 (en) * 2002-10-31 2007-08-28 Microsoft Corporation Universal computing device for surface applications
US20040243531A1 (en) * 2003-04-28 2004-12-02 Dean Michael Anthony Methods and systems for representing, using and displaying time-varying information on the Semantic Web
US7369702B2 (en) * 2003-11-07 2008-05-06 Microsoft Corporation Template-based cursive handwriting recognition
CN102981753B (zh) * 2003-11-28 2015-10-07 诺基亚公司 改进的手写汉字输入识别方法
US8280719B2 (en) * 2005-05-05 2012-10-02 Ramp, Inc. Methods and systems relating to information extraction
US8428358B2 (en) * 2005-05-31 2013-04-23 Microsoft Corporation Radical-base classification of East Asian handwriting
CN101611417B (zh) * 2006-12-01 2012-07-04 Zi德库玛股份公司 用于字符识别的方法
US8131536B2 (en) * 2007-01-12 2012-03-06 Raytheon Bbn Technologies Corp. Extraction-empowered machine translation
JP5667334B2 (ja) * 2007-03-30 2015-02-12 任天堂株式会社 図形評価プログラムおよび図形評価装置
US8094939B2 (en) * 2007-06-26 2012-01-10 Microsoft Corporation Digital ink-based search
US8315482B2 (en) * 2007-06-26 2012-11-20 Microsoft Corporation Integrated platform for user input of digital ink
US7890539B2 (en) * 2007-10-10 2011-02-15 Raytheon Bbn Technologies Corp. Semantic matching using predicate-argument structure
JP2010015238A (ja) * 2008-07-01 2010-01-21 Sony Corp 情報処理装置、及び補助情報の表示方法
CN101452368B (zh) * 2008-12-29 2011-06-22 北京文通科技有限公司 一种手写文字输入方法
CN101604392B (zh) * 2009-07-10 2011-09-07 华南理工大学 一种用于联机手写汉字识别的汉字笔画特征并行提取方法
CN101604393B (zh) * 2009-07-10 2011-08-31 华南理工大学 一种用于联机手写汉字识别的汉字笔画特征提取方法
US8094941B1 (en) * 2011-06-13 2012-01-10 Google Inc. Character recognition for overlapping textual user input
CN103186911B (zh) * 2011-12-28 2015-07-15 北大方正集团有限公司 一种处理扫描书数据的方法及装置
JP5330576B1 (ja) * 2012-07-09 2013-10-30 株式会社東芝 情報処理装置および筆跡検索方法
JP6094400B2 (ja) * 2013-06-25 2017-03-15 ソニー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
KR102125212B1 (ko) * 2013-08-29 2020-07-08 삼성전자 주식회사 전자 필기 운용 방법 및 이를 지원하는 전자 장치
KR102240279B1 (ko) * 2014-04-21 2021-04-14 삼성전자주식회사 컨텐트 처리 방법 및 그 전자 장치
US9940511B2 (en) * 2014-05-30 2018-04-10 Kofax, Inc. Machine print, hand print, and signature discrimination
CN116416629B (zh) * 2023-06-12 2023-08-29 北京量子伟业信息技术股份有限公司 电子档案生成方法、装置、设备和介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5333209A (en) * 1992-03-24 1994-07-26 At&T Bell Laboratories Method of recognizing handwritten symbols
US5812697A (en) * 1994-06-10 1998-09-22 Nippon Steel Corporation Method and apparatus for recognizing hand-written characters using a weighting dictionary
AU3590795A (en) * 1994-09-14 1996-03-29 Apple Computer, Inc. System and method for automatic subcharacter unit and lexicon generation for handwriting recognition
TW338815B (en) * 1995-06-05 1998-08-21 Motorola Inc Method and apparatus for character recognition of handwritten input
US6041137A (en) * 1995-08-25 2000-03-21 Microsoft Corporation Radical definition and dictionary creation for a handwriting recognition system
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
US5923778A (en) * 1996-06-12 1999-07-13 Industrial Technology Research Institute Hierarchical representation of reference database for an on-line Chinese character recognition system
US6275611B1 (en) * 1996-10-17 2001-08-14 Motorola, Inc. Handwriting recognition device, method and alphabet, with strokes grouped into stroke sub-structures

Also Published As

Publication number Publication date
US6681044B1 (en) 2004-01-20
JP2001325564A (ja) 2001-11-22
KR100487386B1 (ko) 2005-05-04
CN1226696C (zh) 2005-11-09
CN1324068A (zh) 2001-11-28

Similar Documents

Publication Publication Date Title
KR100487386B1 (ko) 부수 모델에 기초한 초서체 한자 수기 주석의 검색법
Giotis et al. A survey of document image word spotting techniques
Roy et al. HMM-based Indic handwritten word recognition using zone segmentation
EP1564675B1 (en) Apparatus and method for searching for digital ink query
US7142728B2 (en) Method and system for extracting information from a document
US7885464B2 (en) Apparatus, method, and program for handwriting recognition
JP2973944B2 (ja) 文書処理装置および文書処理方法
Khurshid et al. Word spotting in historical printed documents using shape and sequence comparisons
JP3452774B2 (ja) 文字認識方法
EP1971957B1 (en) Methods and apparatuses for extending dynamic handwriting recognition to recognize static handwritten and machine generated text
Singh et al. Offline script identification from multilingual indic-script documents: a state-of-the-art
JPH0844826A (ja) 手書き入力照合方法
Ma et al. Adaptive Hindi OCR using generalized Hausdorff image comparison
JP4649512B2 (ja) 文字列検索方法およびその装置
Aouadi et al. Word extraction and recognition in arabic. handwritten Text
JP2007122403A (ja) 文書タイトルおよび関連情報の自動抽出装置、抽出方法および抽出プログラム
Lawgali et al. A Frame Work For Arabic Handwritten Recognition Based on Segmentation
Madhvanath et al. Syntactic methodology of pruning large lexicons in cursive script recognition
JP3917349B2 (ja) 文字認識結果を利用して情報を検索する検索装置および方法
Shah et al. Devnagari handwritten character recognition (DHCR) for ancient documents: a review
Aouadi et al. Word spotting for arabic handwritten historical document retrieval using generalized hough transform
Marinai Text retrieval from early printed books
JPH0610829B2 (ja) 手書き文字認識方法
Srinivas et al. An overview of OCR research in Indian scripts
Puri et al. Sentence detection and extraction in machine printed imaged document using matching technique

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