KR101686363B1 - 문서에 사용된 언어를 식별하고, 식별된 언어에 기초하여 ocr 인식을 수행하는 방법 및 장치 - Google Patents
문서에 사용된 언어를 식별하고, 식별된 언어에 기초하여 ocr 인식을 수행하는 방법 및 장치 Download PDFInfo
- Publication number
- KR101686363B1 KR101686363B1 KR1020157008956A KR20157008956A KR101686363B1 KR 101686363 B1 KR101686363 B1 KR 101686363B1 KR 1020157008956 A KR1020157008956 A KR 1020157008956A KR 20157008956 A KR20157008956 A KR 20157008956A KR 101686363 B1 KR101686363 B1 KR 101686363B1
- Authority
- KR
- South Korea
- Prior art keywords
- language
- character
- recognition
- characters
- recognition engine
- Prior art date
Links
Images
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/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G06K9/18—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/263—Language identification
-
- G06K9/3283—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/15—Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/24—Character recognition characterised by the processing or recognition method
- G06V30/242—Division of the character sequences into groups prior to recognition; Selection of dictionaries
- G06V30/246—Division of the character sequences into groups prior to recognition; Selection of dictionaries using linguistic properties, e.g. specific for English or German language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/28—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet
- G06V30/287—Character recognition specially adapted to the type of the alphabet, e.g. Latin alphabet of Kanji, Hiragana or Katakana characters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Character Discrimination (AREA)
Abstract
문자당 획수에 기초하여 문서에 사용된 언어를 식별하는 방법 및 장치가 본 명세서에서 제공된다. 일단 식별되면, 식별된 언어에 기초하여 문자 인식이 수행될 수 있다. 한 실시예에서, 식별된 언어에 특별하게 맞춰진 문자 인식 엔진이 문자 인식에 활용된다.
Description
본 발명은 일반적으로 문서에서 활용되고 있는 언어가 무엇인지 결정하는 것에 관한 것이고, 더 구체적으로는 문서에 사용된 언어를 식별하고, 식별된 언어에 기초하여 문자 인식을 수행하는 방법 및 장치에 관한 것이다.
대부분의 문자 인식 애플리케이션들(character recognition applications)에서는, 각각의 필기된 문자가 분석되고 문자를 식별하기 위한 시도가 이루어진다. 문자 인식을 사용했던 누구나 알듯이, 이 과정은 상당히 오랜 시간이 걸릴 수 있다. 예를 들어, 일반적으로 사용되는 문자 인식 소프트웨어에서는 15페이지의 문서에 문자 인식을 수행하는 데에 1분까지 걸릴 수 있다. 이 기간이 감소될 수 있다면 유익할 것이다. 그러므로, 선행기술보다 빠르게 문자 인식을 수행하는 장치 및 방법의 필요가 존재한다.
유사한 참조 번호들이 개별 도면들에 걸쳐 동일하거나 기능적으로 유사한 요소들을 가리키고 있으며, 이하의 상세한 설명과 함께 명세서에 포함되어 그 일부를 형성하는 첨부 도면들은, 본 발명에 따라 다양한 실시예들을 추가로 예시하고 다양한 원리들 및 장점들을 설명하는 역할을 한다.
도 1은 문자의 각각의 획(stroke)이 분리된 문자를 도시한다.
도 2는 서로 교차되는 획들을 가진 문자를 도시한다.
도 3은 특정 문자에 대한 획들의 결정을 도시한다.
도 4는 광학 문자 인식(optical character recognition)(OCR) 장치를 도시하는 블록도이다.
도 5는 도 4의 OCR 장치의 동작을 도시하는 흐름도이다.
도 6은 문자의 식별을 돕기 위한 선들의 씨닝(thinning)을 도시한다.
통상의 기술자들은 도면들에 있는 요소들이 간단함 및 명료함을 위하여 도시되었고 반드시 일정한 비율로 그려진 것이 아니라는 것을 인식할 것이다. 본 발명의 다양한 실시예들의 이해를 개선하도록 돕기 위해, 예를 들어 도면들에 있는 요소들의 일부의 크기 및/또는 상대적 위치가 다른 요소들보다 상대적으로 과장되었을 수 있다. 또한, 상업적으로 실현 가능한 실시예들에서 유용하거나 필요한 흔하고 잘 알려진 요소들은, 본 발명의 다양한 실시예들을 보는 것을 덜 방해하도록 하기 위하여 도시되지 않을 수 있다. 어떠한 액션들 및/또는 단계들이 특정한 발생 순서로 설명되거나 도시될 수 있지만 당해 분야에서 통상의 지식을 가진 자들은 순서에 관한 그러한 특이성(specificity)이 실제로 요구되지는 않음을 더 이해할 것이다.
도 1은 문자의 각각의 획(stroke)이 분리된 문자를 도시한다.
도 2는 서로 교차되는 획들을 가진 문자를 도시한다.
도 3은 특정 문자에 대한 획들의 결정을 도시한다.
도 4는 광학 문자 인식(optical character recognition)(OCR) 장치를 도시하는 블록도이다.
도 5는 도 4의 OCR 장치의 동작을 도시하는 흐름도이다.
도 6은 문자의 식별을 돕기 위한 선들의 씨닝(thinning)을 도시한다.
통상의 기술자들은 도면들에 있는 요소들이 간단함 및 명료함을 위하여 도시되었고 반드시 일정한 비율로 그려진 것이 아니라는 것을 인식할 것이다. 본 발명의 다양한 실시예들의 이해를 개선하도록 돕기 위해, 예를 들어 도면들에 있는 요소들의 일부의 크기 및/또는 상대적 위치가 다른 요소들보다 상대적으로 과장되었을 수 있다. 또한, 상업적으로 실현 가능한 실시예들에서 유용하거나 필요한 흔하고 잘 알려진 요소들은, 본 발명의 다양한 실시예들을 보는 것을 덜 방해하도록 하기 위하여 도시되지 않을 수 있다. 어떠한 액션들 및/또는 단계들이 특정한 발생 순서로 설명되거나 도시될 수 있지만 당해 분야에서 통상의 지식을 가진 자들은 순서에 관한 그러한 특이성(specificity)이 실제로 요구되지는 않음을 더 이해할 것이다.
위에 언급한 어려움을 완화하기 위해, 문서에 사용된 언어를 식별하기 위한 방법 및 장치가 여기에 제공된다. 일단 식별되면, 식별된 언어에 기초하여 문자 인식이 수행될 수 있다. 한 실시예에서, 문자 인식을 위해, 식별된 언어에 특별하게 맞춰진(specifically tailored) 문자 인식 엔진이 활용된다.
더 구체적으로, 많은 언어들 중 하나로 문서가 작성될 수 있을 때, 인쇄된 문서(또는 문자)의 주 언어가 식별될 수 있고, 대응되는 인식 엔진이 문자 인식에 사용될 수 있다. 논의한 바와 같이, 문자 인식 엔진은 식별된 언어에 특별하게 맞춰진다. 이 접근법에서, 상이한 인식 엔진들은 식별된 언어에 따라 개별적으로 사용된다. 문서 또는 문자에 활용되는 언어를 식별하기 위해, 문자를 작성하는 데 사용된 획수가 결정된다. 그러면, 문자 인식을 수행할 때, 그 획수가 어떤 문자 인식 엔진이 활용되는지를 결정한다.
각 문자당 평균 획수(number of average strokes per character)의 차이는 서로 다른 언어들 간에 매우 크다. 예를 들어, 중국어의 경우 각 문자당 평균 획수는 약 15개이다. 영어의 경우, 각 문자당 평균 획수는 약 2개이다. 본 발명의 한 실시예에서, 문자 하나에 사용된 획수가 결정되고, 이 정보는 문서에서 사용되는 주 언어를 결정하는 데 사용된다. 일단 언어가 식별되면, 문서 내의 문자들을 식별하기 위해 특별하게 맞춰진 인식 엔진이 활용될 수 있다.
언어를 식별하고 문자 인식을 수행하기 위한 상기 기술은 문자 인식에 필요한 시간의 양을 상당히 감소시킬 수 있다. 보다 구체적으로, 문자의 획수는 빠르게 식별될 수 있으므로, 문서에 사용된 언어가 빠르게 식별될 수 있다. 이는 특정한 인식 엔진들(식별된 언어에 맞춰진)이 특정 문자를 식별하는 데 사용되는 것을 허용한다. 예를 들어, 제1 인식 엔진은 제1 언어(예를 들어 영어)의 문자들을 식별하는 것만 가능할 수 있으나, 제2 인식 엔진은 제2 언어(예를 들어, 중국어)의 문자들을 식별하는 것만 가능할 수 있다. 보다 작은 세트(set)의 문자들을 가진 단 하나의 인식 엔진만이 활용되고 있으므로, 문자 인식의 과정이 상당히 빨라질 수 있다. 즉, 영어 문자와 중국어 문자를 둘 다 포함하는 보다 큰 인식 엔진이 사용되지 않으므로, 문자 인식의 과정은 빨라질 수 있다.
문자의 획수를 추정하는 단계
획은 펜-다운(pen-down){종단점(terminal point)}으로부터 시작하여 펜-업(pen-up)(또한 종단점)에서 끝나는 곡선/직선으로 정의된다. 한 문자는 여러 개의 획을 포함한다. 한 획은 다른 획들과 교차할 수 있다. 모든 문자들은 두 범주로 나눌 수 있다:
A. 문자의 각각의 획이 분리되어 있는 문자(도 1). 이 경우엔 문자의 획수를 얻는 것이 쉽다. 구체적으로, 하나의 문자의 종단점들의 개수는 쉽게 계산될 수 있다. 도 1에서, 종단점들의 개수는 획수의 2배이다. 그러므로 종단점들의 개수를 안다면, 한 문자의 획수를 얻을 수 있다.
B. 서로 교차하는 획들을 가진 문자들. 대부분의 중국어 문자들은 서로 교차하는 획들을 포함한다(도 2). 이러한 경우에는, 한 문자에 있는 종단점들의 개수를 얻기가 더욱 어렵다. 우리는 교차하는 획들에 대해 한 획의 끝 또는 중심에 위치하는 교차점들이 항상 존재한다는 것을 관측했다. 우리는 교차점들을 세 개의 시나리오로 분류할 수 있다. 각각의 시나리오마다, 우리는 종단점들의 유효한 개수를 얻기 위해 규칙을 정한다.
201에 묘사된 시나리오에서는, 교차점 주변에 네 개의 가지(branches)가 있다. 교차지점에서는 종단점이 없다고 가정된다.
203에 묘사된 시나리오에서는, 교차점에 세 개의 가지가 있다. 교차지점에서는 한 개의 종단점이 존재한다고 가정된다.
205에 묘사된 시나리오에서는, 두 개의 선들이 만나는 곳에서, 선행 픽셀과 후속 픽셀의 각도가 한계점(예를 들면 60도)보다 더 큰 경우 교차점으로 정의된다. 교차지점에서는 두 개의 종단점이 존재한다고 가정된다.
문자의 총 획수를 추정하기 위해, 우리는 문자의 모든 종단점들과 교차점들을 살펴본다. 종단점은 이웃하는 픽셀이 하나밖에 없는 픽셀이고, 교차점은 위의 세 경우이다. 각각의 실제의 종단점은 종단점들의 총 개수에 1씩 기여하고, 교차점들의 경우, 우리는 도 2에 도시된 위의 세 경우에 기초하여 개수를 누적할 수 있다. 예를 들어, 도 3에서, 종단점들의 총 개수는 10개이고(동그라미가 그려져 있고 계산된 획수의 번호가 매겨져 있음), 그러므로 획수는 5개이다. (우리가 계산한 종단점들의 개수는 실제 획수의 2배인 것에 주의한다.)
문자의 획수를 얻은 후에, 이 값은 문자의 언어를 결정하는 데 활용될 수 있다. 예를 들어, 획수가 제1 한계점을 초과하는 경우, 언어는 제1 언어로 식별될 수 있다(예를 들어, 중국어, 일본어, 한국어... 등). 그러나 획수가 제1 한계점 이하인 경우, 언어는 제2 언어로 식별될 수 있다(예를 들어, 영어, 스페인어... 등). 한계점은 예를 들어 4일 수 있다. 그러므로, 영어와 중국어 사이에서 결정하는 경우(대부분의 경우, 획수가 4보다 큰 영어 문자는 없다), 우리는 획수가 4보다 큰 경우 문자(일부 경우에서는 문서 전체)가 중국어로 작성되었고, 그렇지 않으면 문자는 영어라고 가정할 수 있다.
위의 기술은 임의의 개수의 표본 조사된 문자로부터의 문자당 평균 획수에 기초하여 문서가 중국어 또는 영어로 작성되었는지 결정하기 위해 활용될 수 있다. 예를 들어, 15개의 문자가 표본 조사될 수 있고, 문자당 평균 획수가 구해질 수 있다. 이러한 획수는 문서가 제1 언어 또는 제2 언어로 작성되었는지 결정하는 데 사용될 수 있다. 일단 언어가 식별된 후에는, 문자 인식이 수행될 수 있다. 특히, 식별된 언어에 특별하게 맞춰진 문자 인식 엔진이 문자 인식에 활용된다. 문자 엔진을 특정 언어에 특별하게 맞추는 것은 특정 언어의 문자들만 포함된 문자 세트를 갖는 문자 엔진을 제공한다. 그러므로, 제1 문자 인식 엔진은 제1 식별된 언어에 활용될 수 있고, 제2 문자 인식 엔진은 제2 언어에 활용될 수 있다. 제1 문자 인식 엔진이 제2 언어의 문자들을 인식할 수 없을 것인 반면에, 제2 문자 인식 엔진은 제1 언어의 문자들을 인식할 수 없을 것이다.
도 4는 본 발명의 한 실시예에 따른 광학 문자 인식(OCR) 장치(400)를 도시하는 블록도이다. 일반적으로, 이 명세서에서 사용된 바와 같이, OCR 장치(400)가 "구성"되었거나 "적응"되었다는 것은, 동작가능하게 연결(operatively coupled)되고, 프로그램된 때, 예를 들어 도 5에서 도시된 방법들을 참조하여 예시된 바와 같이 그들의 바람직한 기능성을 구현할 수 있도록 시스템 요소들을 위한 수단을 형성하는 하나 이상의 구성요소{메모리 구성요소, 네트워크 인터페이스, 및 중앙 처리 유닛}를 이용하여 장치(400)가 구현된다는 것을 의미한다. OCR 장치(400)는 문자 인식 엔진들을 저장하는 저장소(407), 문자 인식용 프로그램을 저장하는 저장 구성요소(403), 저장 운영체제를 저장하는 저장 구성요소(405), 언어 인식 프로그램을 저장하는 저장 구성요소(411), 문서를 저장하는 저장 구성요소(409) 및 그래픽 유저 인터페이스(graphical user interface)(GUI)(413)를 포함하는 다양한 시스템 요소들과 통신적으로 결합(communicatively coupled)되어 있는 프로세서(401)를 포함한다. 모든 저장용 구성요소들이 도 4에서 개별적으로 존재하는 것으로 도시되어 있으나, 통상의 기술자는 임의의 개수의 저장 구성요소(403-413)가 서로 조합될 수 있다고 인식할 수 있다는 것을 주의해야 한다. 추가로, 도시의 용이성을 위해 제한된 개수의 시스템 요소들만이 도 4에 도시되어 있지만, 유사한 추가적인 요소들도 OCR 장치(400)에 포함될 수 있다.
본 발명의 한 실시예에서, 모든 저장 구성요소들은 표준의 RAM(random access memory)을 포함하는 한편, 프로세서(401)는 디지털 신호 프로세서(digital signal processor)(DSP), 일반 목적용 마이크로프로세서(general purpose microprocessor), 프로그램 가능한 논리 장치(programmable logic device), 또는 특정 용도 집적 회로(application specific integrated circuit)(ASIC)를 포함하고, GUI(413)의 입력으로 활용된 임의의 언어 또는 임의의 저장된 문서(409)에 활용된 언어를 결정하기 위해 언어 인식 프로그램(411)을 사용할 수 있도록 활용된다. 일단 프로세서(401)에 의해 언어가 결정되면, 프로세서(401)는 OCR을 수행하기 위해 문자 인식 프로그램(403) 및 적합한 문자 인식 엔진(407)을 사용한다. 문자 인식 프로그램(403), 언어 인식 프로그램(411) 및 엔진들(407)은 개별적인 실체로 존재하는 것으로 도시되나, 통상의 기술자는 임의의 개수의 이러한 요소가 하나의 메모리 구성요소 내에 저장될 수 있다고 인식할 것임을 주의해야 한다.
처리 장치(processing device)(401)는 하드웨어로 부분적으로 구현될 수 있고, 그로 인해 도 4 및 도 5에서 설명된 기능성을 수행할 수 있도록, 소프트웨어, 또는 펌웨어 로직(firmware logic) 또는 코드{예를 들어, 문자 인식 프로그램(403)}로 프로그래밍(programmed)될 수 있고/있거나; 처리 장치(401)는 완전히 하드웨어로, 예를 들어 상태 머신(state machine) 또는 ASIC(특정 용도 집적 회로)로 구현될 수 있다.
프로그램들(403, 411)은 엔진들(407)과 함께 운영 체제(405)(예를 들어, 윈도우 7 또는 리눅스) 상에서 실행된다. 운영 체제(405)에 의해, 임의의 프로그램 또는 엔진이 개시될 것이 요청되는 경우, 그것은 프로세서(401)에 의해 실행된다. 처리 장치(401)는 문서 또는 GUI 입력을 분석하고 획수 카운트(stroke count)에 기초하여 활용된 언어를 결정하기 위해 언어 인식 프로그램(411)을 사용한다. 그 후에 프로세서는 적합한 엔진(407)을 로딩(load)하기 위해 문자 인식 프로그램(403) 및 결정된 언어를 사용한다. 이 후에 문자 인식은 적합한 엔진을 사용하여 수행될 수 있다.
광학 문자 인식 엔진은 바람직하게는 특정 언어의 문자들을 인식하도록 특별하게 맞춰진 전용 소프트웨어이다. 예를 들어 중국어 문자를 사용하는 문서들에선 중국어 문자를 식별하도록 설계된 엔진들이 선호되는 반면, 예를 들어 영어를 사용하는 문서들에선 영문자를 식별하도록 설계된 엔진이 선호된다.
장치(400)의 동작 동안, 프로세서(401)는 저장된 문서(409) 또는 GUI(413)를 통한 텍스트 입력에 대해 OCR을 수행하라는 요청을 수신한다. 이러한 요청은 GUI(413)를 통해 장치(400)의 사용자로부터 올 수 있다. 일단 요청이 수신되면, 문서/입력에 대한 언어는 결정되어야 할 필요가 있다. 프로세서(401)는 문서에 사용된 언어를 결정하기 위해 언어 인식 프로그램(411)을 실행한다. 언어 인식 프로그램(411)의 실행 동안, 프로세서(401)는 텍스트의 각 라인을 추출하고, 그 텍스트의 라인을 표준 이진화(standard binarization)를 통해 흑백으로 변환시킬 것이다. 문자들을 '씨닝(thin)'하기 위해 이미지 처리 방법이 흑백 이미지에 수행될 것이다. 이러한 과정은 도 6에 도시되어 있다. 도시된 바와 같이, 보다 두꺼운 문자들(601)이 더 얇아졌고, 결과적으로 문자(603)가 되었다. 이러한 씨닝에서, 획의 폭은 최소화된다. 개별 문자들을 식별하기 위해서는, 수직적 투사 방법(vertical projection method)이 씨닝된 이미지에 사용될 수 있다. 개별 문자들이 식별된 후에는, 문자당 획수의 추정치가 식별되고, 평균이 구해진다. 언어는 문자당 평균 획수에 기초하여 식별된다.
일단 언어가 식별된 후에는, 프로세서(401)는 OCR 프로그램(403)을 실행한다. 실행될 때, OCR 프로그램(403)은 특별하게 맞춰진 인식 엔진(407)을 로딩하기 위해, 식별된 언어를 활용할 것이다. 그 이후에 특별하게 맞춰진 인식 엔진(407)을 사용하여 OCR이 수행될 것이다.
도 5는 장치(400)의 동작을 도시하는 흐름도이다. 논리 흐름은 프로세서(401)가 저장된 문서(409) 또는 GUI(413)를 통한 텍스트 입력에 OCR을 수행하라는 요청을 수신하는 단계(501)에서 시작한다. 이러한 요청은 GUI(413)를 통해 장치(400)의 사용자로부터 들어올 수 있다. 일단 요청이 수신되면, 프로세서(401)는 텍스트를 수신하고, 문서/텍스트에 대한 언어가 프로세서(401)에 의해 결정된다{단계(503)}. 위에 논한 바와 같이, 문서/텍스트에 대한 언어는 문서/텍스트의 한 부분(예를 들어, 미리 정해진 개수의 문자들, 한 라인, 한 행 등)의 문자당 평균 획수를 결정함으로써 결정된다. 일단 언어가 식별된 후에, 프로세서(401)는 특별하게 맞춰진 인식 엔진(407)을 사용하여 OCR을 수행한다(단계 505). 위에 논한 바와 같이, OCR을 수행할 때, 텍스트에 문자 인식을 수행하기 위해 인식 엔진이 사용되고, 그 인식 엔진은 식별된 언어에 특별하게 맞춰져 있는 것이다. 그러므로, 인식 엔진을 선택하는 단계는 서로 다른 복수의 인식 엔진 중에서 인식 엔진을 선택하는 단계를 포함하고, 복수의 인식 엔진 내의 각각의 인식 엔진은 특정 언어(예를 들어 중국어 또는 영어)에 특별하게 맞춰져 있다.
상술한 명세서에서, 특정 실시예가 기재되었다. 그러나, 당해 기술분야의 통상의 기술자는 이하의 청구범위에 기재된 바와 같은 본 발명의 범위를 벗어나지 않고 다양한 변형과 변경이 가능함을 인식할 것이다. 예를 들어, 문자당 획수를 결정하기 위한 특정한 기술이 상술되었으나, 이것이 문자당 획수를 결정하는 데 사용될 수 있는 유일한 기술로 간주되지 않아야 한다. 따라서, 명세서 및 도면들은 제한적인 관점보다는 예시적인 관점으로 간주되어야 하고, 모든 이러한 변형들은 본 교시들의 범위 내에 포함되는 것으로 의도된다.
당해 기술분야의 숙련된 자들은 "회로"와 같은 구체적 구현 실시예들에 대한 언급들은 비-일시적인 컴퓨터 판독 가능 메모리에 저장된 소프트웨어 명령들을 실행하는 전문화된 처리 장치(specialized processing apparatus)(예를 들어, DSP) 또는 일반 목적 컴퓨팅 장치(general purpose computing apparatus)(예를 들어, CPU)에 의해 동일하게 성취될 수 있다는 것을 추가로 인식할 것이다. 여기에서 사용된 단어들과 표현들은 상이한 구체적 의미들이 이 명세서에서 다르게 제시되는 경우를 제외하면, 위에 제시된 기술분야의 숙련된 자들이 그러한 단어들 및 표현들에 부여하는 대로의 통상의 기술적 의미를 가진다는 것 또한 이해될 것이다.
이득, 이점, 문제점에 대한 해법, 및 임의의 이득, 이점 또는 해법을 야기하거나 더 두드러지게 할 수 있는 임의의 요소(들)는 임의의 또는 모든 청구범위의 중요하거나, 필요하거나 필수적인 특징으로 해석되어서는 안 된다. 본 발명은 본 출원의 계속 중에 이루어지는 임의의 보정을 포함하는 첨부된 청구범위 및 발행된 대로의 청구범위의 모든 등가물에 의해서만 정의된다.
또한, 본 문서에서, 제1 및 제2, 상부 및 하부 등의 상대적 용어는 하나의 엔티티 또는 동작을 다른 엔티티 또는 동작으로부터 구별하기 위해서만 사용될 수 있고, 그러한 엔티티 또는 동작 간의 임의의 실제의 그러한 관계 또는 순서 등을 반드시 필요로 하거나 암시하지는 않는다. "구비하다", "구비하는", "갖다", "갖는", "포함하다", "포함하는", "함유하다", "함유하는" 또는 임의의 다른 변형은 배타적이지 않은 포함을 커버하는 것으로 의도되어, 요소들의 리스트를 구비하거나, 갖거나, 포함하거나, 함유하는 프로세스, 방법, 물품 또는 장치는 그 요소들만을 포함하는 것이 아니라, 명시적으로 열거되지 않은 또는 그러한 프로세스, 방법, 물품 또는 장치에 내재적인 다른 요소들을 포함할 수 있다. "~을 구비하다", "~을 갖는다", "~을 포함하다", "~을 함유하다"에 선행하는 요소는, 추가의 제약 없이는 그 요소를 구비하거나, 갖거나, 포함하거나 함유하는 프로세스, 방법, 물품 또는 장치 내의 추가의 동일한 요소의 존재를 배제하지 않는다. 단수 표현("a" 및 "an" 등의 용어)은 다르게 명시적으로 기재되지 않으면 하나 이상으로서 정의된다. 용어 "실질적으로", "필수적으로", "대략", "약", 또는 그들의 임의의 다른 버전은 당해 기술분야의 통상의 기술자에 의해 이해되는 바와 같이 근접한 것으로 정의되며, 그 용어는 하나의 비제한적인 실시예에서는 10% 이내, 또 다른 실시예에서는 5% 이내, 또 다른 실시예에서는 1% 이내, 또 다른 실시예에서는 0.5% 내로 정의될 수 있다. 여기에 사용되는 용어 "결합된(coupled)"은 반드시 직접적인 것은 아니고 반드시 기계적인 것은 아니더라도, 접속된 것으로 정의된다. 소정의 방식으로 "구성"된 장치 또는 구조물은 적어도 그 방식으로 구성되지만, 열거되지 않은 방식들로도 구성될 수 있다.
일부의 실시예들은, 마이크로프로세서, 디지털 신호 프로세서, 맞춤형 프로세서 및 필드 프로그래머블 게이트 어레이들(FPGAs) 등의 하나 이상의 일반 또는 특수 프로세서(또는 "처리 장치")와, 그 하나 이상의 프로세서가 소정의 넌-프로세서 회로와 결합하여 여기에 기재된 방법 및/또는 장치의 기능의 일부, 대부분 또는 전부를 구현하도록 제어하는 고유 저장 프로그램 명령(소프트웨어 및 펌웨어를 모두 포함)으로 구성될 수 있다는 것을 알 것이다. 대안으로, 일부 또는 모든 기능은 각각의 기능 또는 기능들 중 일부의 소정 조합이 주문 제작된 로직으로서 구현되는 하나 이상의 ASIC으로, 또는 프로그램 명령을 저장하지 않은 상태 머신에 의해 구현될 수 있다. 물론, 이들 2개의 접근 방식의 조합이 사용될 수 있다.
또한, 실시예는 여기에 기재되고 청구된 방법을 수행하도록 컴퓨터(예를 들어, 프로세서를 포함)를 프로그래밍하기 위하여 저장된 컴퓨터 판독가능 코드를 갖는 컴퓨터 판독가능 저장 매체로서 구현될 수 있다. 이러한 컴퓨터 판독가능 저장 매체의 예는, 제한되지 않지만, 하드 디스크, CD-ROM, 광 저장 장치, 자기 저장 장치, ROM(Read Only Memory), PROM(Programmable Read Only Memory), EPROM(Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read Only Memory), 및 플래시 메모리를 포함한다. 또한, 통상의 기술자는, 예를 들어 이용가능한 시간, 현재 기술 및 경제적 고려사항에 의해 유발되는 아마도 상당한 노력 및 많은 설계 선택에도 불구하고, 여기에 개시된 개념 및 원리에 의해 가이드될 때, 최소의 실험으로 이러한 소프트웨어 명령 및 프로그램 및 IC를 쉽게 만들어낼 수 있을 것이다.
명세서의 요약은 독자가 기술 명세서의 특성을 빨리 확인할 수 있도록 제공된다. 이는 청구범위의 범위 또는 의미를 해석하거나 제한하는 데 사용되지 않을 것이라는 이해 하에 제출된다. 또한, 상술한 상세한 설명에서, 명세서를 간소화할 목적으로 다양한 실시예에서 다양한 특징이 함께 그룹화된 것을 알 수 있다. 이러한 개시 방법은 청구된 실시예가 각 청구항에서 명시적으로 기재된 것보다 더 많은 특징을 필요로 한다는 의도를 반영하는 것으로 해석되어서는 안 된다. 오히려, 다음의 청구범위가 반영하는 바와 같이, 본 발명의 대상은 단일의 개시된 실시예의 모든 특징보다 적다. 따라서, 다음의 청구범위는 이로써 상세한 설명에 포함되며, 각각의 청구항은 개별 청구된 대상으로서 독립적이다.
Claims (9)
- 광학 문자 인식(optical character recognition)(OCR) 장치에서, 복수의 문자를 포함하는 텍스트를 수신하는 단계;
상기 OCR에 의해, 상기 텍스트 내의 복수의 문자에 대한 문자당 평균 획수(average number of strokes per character)를 결정하는 단계; 및
상기 OCR에 의해, 상기 결정된 문자당 평균 획수에 기초하여 상기 텍스트에 사용된 언어를 식별하는 단계를 포함하는, 방법. - 제1항에 있어서,
상기 텍스트에 대해 문자 인식을 수행하기 위해 인식 엔진(recognition engine)을 선택하는 단계 - 상기 인식 엔진은 식별된 언어에 특별하게 맞춰져 있음(specifically tailored) -; 및
상기 선택된 인식 엔진을 사용하여 상기 텍스트에 대해 문자 인식을 수행하는 단계
를 더 포함하는 방법. - 제2항에 있어서,
상기 선택된 인식 엔진은 상기 식별된 언어의 문자들만을 포함하는, 방법. - 제2항에 있어서,
상기 인식 엔진을 선택하는 단계는 서로 다른 복수의 인식 엔진 중에서 상기 인식 엔진을 선택하는 단계를 포함하고, 상기 복수의 인식 엔진 내의 각각의 인식 엔진은 특정 언어에 특별하게 맞춰져 있는, 방법. - 제1항에 있어서,
상기 식별된 언어는 중국어 또는 영어인, 방법. - 장치로서,
프로세서; 및
상기 프로세서에 의해 실행되는 경우, 상기 장치로 하여금 기능들의 세트를 수행하게 하는 명령어들을 저장하는 메모리
를 포함하고,
상기 기능들의 세트는,
복수의 문자를 포함하는 텍스트를 수신하는 기능;
상기 텍스트 내의 복수의 문자에 대한 문자당 평균 획수를 결정하는 기능;
상기 결정된 문자당 평균 획수에 기초하여 상기 텍스트에 사용된 언어를 식별하는 기능
을 포함하는, 장치. - 제6항에 있어서,
상기 메모리 내에 저장된 복수의 인식 엔진을 더 포함하고,
상기 프로세서가 상기 텍스트에 대해 문자 인식을 수행하기 위해 상기 복수의 인식 엔진 중에서 하나의 인식 엔진을 선택하며, 상기 선택된 인식 엔진은 식별된 언어에 대해 특별하게 맞춰져 있는, 장치. - 제7항에 있어서,
상기 선택된 인식 엔진은 상기 식별된 언어의 문자들만을 포함하는, 장치. - 제7항에 있어서,
상기 식별된 언어는 중국어 또는 영어인, 장치.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/082727 WO2014056165A1 (en) | 2012-10-10 | 2012-10-10 | Method and apparatus for identifying a language used in a document and performing ocr recognition based on the language identified |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150053968A KR20150053968A (ko) | 2015-05-19 |
KR101686363B1 true KR101686363B1 (ko) | 2016-12-13 |
Family
ID=50476876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020157008956A KR101686363B1 (ko) | 2012-10-10 | 2012-10-10 | 문서에 사용된 언어를 식별하고, 식별된 언어에 기초하여 ocr 인식을 수행하는 방법 및 장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9330086B2 (ko) |
KR (1) | KR101686363B1 (ko) |
CN (1) | CN104704510B (ko) |
WO (1) | WO2014056165A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220013187A (ko) | 2020-07-24 | 2022-02-04 | 엄춘호 | 문서 인식 시스템 및 방법 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104966084A (zh) * | 2015-07-07 | 2015-10-07 | 北京奥美达科技有限公司 | 一种基于ocr和tts的低视力阅读助视*** |
CN106971638B (zh) * | 2016-01-14 | 2020-09-29 | 北京新唐思创教育科技有限公司 | 交互式无线教学方法 |
CN108509955B (zh) * | 2017-02-28 | 2022-04-15 | 柯尼卡美能达美国研究所有限公司 | 用于字符识别的方法、***和非瞬时计算机可读介质 |
US10275646B2 (en) | 2017-08-03 | 2019-04-30 | Gyrfalcon Technology Inc. | Motion recognition via a two-dimensional symbol having multiple ideograms contained therein |
US11995400B2 (en) | 2021-09-07 | 2024-05-28 | International Business Machines Corporation | Rapid language detection for characters in images of documents |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004220437A (ja) | 2003-01-16 | 2004-08-05 | Renesas Technology Corp | 情報認識装置 |
US20050152601A1 (en) | 2004-01-14 | 2005-07-14 | International Business Machines Corporation | Method and apparatus for reducing reference character dictionary comparisons during handwriting recognition |
JP2011180687A (ja) * | 2010-02-26 | 2011-09-15 | Mitsubishi Electric Corp | 多言語文書解析装置 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3588822A (en) | 1967-03-06 | 1971-06-28 | Hitachi Ltd | Character recognition apparatus for identifying characters by detecting stroke features of the characters |
CA1259412A (en) * | 1985-06-03 | 1989-09-12 | James C. Monroe | Ideographic character processing method |
US5313527A (en) * | 1991-06-07 | 1994-05-17 | Paragraph International | Method and apparatus for recognizing cursive writing from sequential input information |
JP2734386B2 (ja) * | 1994-12-20 | 1998-03-30 | 日本電気株式会社 | 文字列読み取り装置 |
JPH09319829A (ja) | 1996-06-03 | 1997-12-12 | Nec Corp | オンライン文字認識装置 |
JPH10124505A (ja) * | 1996-10-25 | 1998-05-15 | Hitachi Ltd | 文字入力装置 |
US6047251A (en) | 1997-09-15 | 2000-04-04 | Caere Corporation | Automatic language identification system for multilingual optical character recognition |
US6567547B1 (en) | 1999-03-05 | 2003-05-20 | Hewlett-Packard Company | System and method for dynamically switching OCR packages |
KR100315428B1 (ko) | 1999-12-24 | 2001-11-26 | 오길록 | 다국어 인쇄체 문서인식을 위한 문자 특징 추출 장치 및그 방법 |
RU2251737C2 (ru) | 2002-10-18 | 2005-05-10 | Аби Софтвер Лтд. | Способ автоматического определения языка распознаваемого текста при многоязычном распознавании |
US7865355B2 (en) | 2004-07-30 | 2011-01-04 | Sap Aktiengesellschaft | Fast text character set recognition |
US20060055669A1 (en) * | 2004-09-13 | 2006-03-16 | Mita Das | Fluent user interface for text entry on touch-sensitive display |
CN100533466C (zh) * | 2006-06-29 | 2009-08-26 | 北大方正集团有限公司 | 一种字体识别方法及*** |
US7885807B2 (en) | 2006-10-18 | 2011-02-08 | Hierodiction Software Gmbh | Text analysis, transliteration and translation method and apparatus for hieroglypic, hieratic, and demotic texts from ancient Egyptian |
US7656315B2 (en) | 2006-10-24 | 2010-02-02 | Yonggang Zhu | Computer chinese character input method and its keyboard based on simplified strokes |
US8316295B2 (en) | 2007-03-01 | 2012-11-20 | Microsoft Corporation | Shared language model |
US8009915B2 (en) | 2007-04-19 | 2011-08-30 | Microsoft Corporation | Recognition of mathematical expressions |
CN101796573B (zh) * | 2007-08-30 | 2014-08-06 | 日本电气株式会社 | 显示装置、字符序列的显示方法、多个字符序列的排序方法 |
US8224641B2 (en) | 2008-11-19 | 2012-07-17 | Stratify, Inc. | Language identification for documents containing multiple languages |
CN102156889A (zh) * | 2011-03-31 | 2011-08-17 | 汉王科技股份有限公司 | 一种识别手写文本行语言类别的方法及装置 |
CN102208039B (zh) * | 2011-06-01 | 2013-02-20 | 汉王科技股份有限公司 | 一种多语言混合手写文本行的识别方法及装置 |
-
2012
- 2012-10-10 WO PCT/CN2012/082727 patent/WO2014056165A1/en active Application Filing
- 2012-10-10 KR KR1020157008956A patent/KR101686363B1/ko active IP Right Grant
- 2012-10-10 US US14/427,668 patent/US9330086B2/en active Active
- 2012-10-10 CN CN201280076305.XA patent/CN104704510B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004220437A (ja) | 2003-01-16 | 2004-08-05 | Renesas Technology Corp | 情報認識装置 |
US20050152601A1 (en) | 2004-01-14 | 2005-07-14 | International Business Machines Corporation | Method and apparatus for reducing reference character dictionary comparisons during handwriting recognition |
JP2011180687A (ja) * | 2010-02-26 | 2011-09-15 | Mitsubishi Electric Corp | 多言語文書解析装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220013187A (ko) | 2020-07-24 | 2022-02-04 | 엄춘호 | 문서 인식 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US9330086B2 (en) | 2016-05-03 |
KR20150053968A (ko) | 2015-05-19 |
CN104704510A (zh) | 2015-06-10 |
CN104704510B (zh) | 2018-08-31 |
US20150242388A1 (en) | 2015-08-27 |
WO2014056165A1 (en) | 2014-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101686363B1 (ko) | 문서에 사용된 언어를 식별하고, 식별된 언어에 기초하여 ocr 인식을 수행하는 방법 및 장치 | |
TWI726422B (zh) | 二維碼識別方法、裝置及設備 | |
US8942484B2 (en) | Text detection using image regions | |
US11475681B2 (en) | Image processing method, apparatus, electronic device and computer readable storage medium | |
US9519838B2 (en) | Character recognition method | |
WO2018084715A1 (en) | Method and system for transforming handwritten text to digital ink | |
US10803339B2 (en) | Data processing method and device for electronic book, and mobile terminal | |
US20140147023A1 (en) | Face Recognition Method, Apparatus, and Computer-Readable Recording Medium for Executing the Method | |
KR20140031742A (ko) | 이미지 특징 추출 장치 및 이미지 특징 추출 방법, 그를 이용한 영상 처리 시스템 | |
US12026456B2 (en) | Systems and methods for using optical character recognition with voice recognition commands | |
EP3327613A1 (en) | Fingerprint entry method, apparatus, and terminal device | |
KR20190040755A (ko) | 파일 이미지를 이용한 악성코드 탐지 방법 및 이를 위한 장치 | |
US11086977B2 (en) | Certificate verification | |
KR102558736B1 (ko) | 지문 인식 방법 및 장치 | |
RU2595557C2 (ru) | Выявление снимков экрана на изображениях документов | |
US9684844B1 (en) | Method and apparatus for normalizing character included in an image | |
US9152876B1 (en) | Methods and systems for efficient handwritten character segmentation | |
CN109101973A (zh) | 文字识别方法、电子设备、存储介质 | |
CN110992299A (zh) | 一种检测浏览器兼容性的方法及装置 | |
JP5908825B2 (ja) | 文字認識装置及び文字認識プログラムを記録したコンピュータ読取り可能な記録媒体 | |
CN113157160B (zh) | 用于识别误导播放按钮的方法和设备 | |
JP2010061449A (ja) | 原画像探索装置及び原画像探索プログラム | |
US20140289619A1 (en) | Information display device | |
KR20170115411A (ko) | 윈도우 이미지 검출 방법 및 장치 | |
US9766728B2 (en) | Method for determining position of touch event on touch panel by dynamically adjusting threshold and related computer readable medium |
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 |