# OCV/OCR

OCV/OCR 도구는 트레이닝된 글꼴을 사용하여 텍스트 문자열을 읽고 확인합니다. OCV/OCR 도구에는 다음 함수가 포함됩니다.

- OCRMax: 텍스트 문자열에 있는 문자를 트레이닝하고, 읽고, 확인합니다.
- OCRMaxSettings: 분할 매개 변수 및 기타 고급 텍스트 읽기 매개 변수에 프로그래밍 방식으로 액세스할 수 있습니다.

## OCV/OCR 개요

In-Sight Explorer는 이미지의 영문자 및 숫자 텍스트 문자열을 검사할 수 있도록 광학적 문자 확인(OCV) 및 광학적 문자 인식(OCR)을 위한 OCRMax 및 OCRMaxSettings 함수를 제공합니다.

### OCRMax 및 OCRMaxSettings 함수

OCRMax 함수는 분할 및 분류의 과정을 통해 OCR을 수행합니다. 분할이 먼저 진행되며, 임계치 기법을 사용해 텍스트 행을 담고 있는 것으로 보이는 영상 영역을 식별합니다. 텍스트가 개별 문자로 분할되고 나면, 문자는 트레이닝되어 글꼴 데이터베이스로 저장됩니다. 분류는 런타임 중에 진행되며, 해당 함수가 분할을 실행한 후 발견되는 모든 텍스트를 "판독"하는 일을 담당합니다. 이는 분할된 문자들의 영상을 글꼴 내 트레이닝된 문자와 비교함으로써 이루어집니다.

참고 : OCRMax 함수는 독립적인 함수입니다. 즉, OCRMaxSettings 함수를 사용하지 않고도 분할 및 분류를 수행할 수 있습니다. OCRMaxSettings 함수는 매우 어려운 응용 프로그램에 고급 분할 및 분류 매개 변수를 제공하고 프로그래밍 방식으로 설정을 제어할 수 있으므로 원격 장치에서 매개 변수를 조정할 수 있습니다.

#### 분할

OCRMax 함수는 분할 과정에서 ROI 내 텍스트 행의 위치를 결정하고 텍스트의 각도, 기울기, 극성을 계산합니다. 이어서 영역을 정규화하여 원하지 않는 노이즈를 제거한 후 전경 및 배경 픽셀로 이진화합니다. 이진화된 이미지 내에서 Blob 분석을 수행하여 각 문자 조각이 하나의 Blob을 나타내는 문자 조각을 생성합니다. 이어서, 문자 조각을 그룹화하여 문자를 형성하고, 이들 문자에 문자 사각형을 할당합니다.

이 영역의 텍스트 행은 개별 문자 이미지로 분할되며 각 문자는 편집이 불가능한 문자 사각형으로 묶입니다. ROI는 텍스트 행의 대략적인 위치, 각도 및 기울기를 정의합니다. 필요한 경우 분할 탭의 각도 범위 및 기울기 범위 매개 변수를 사용하여 변동을 보정할 수 있습니다.

참고 : 주의해야 할 것은 OCRMax 함수가 범용 문자열 찾기 도구가 아니라는 점입니다. 매우 복잡하며 ROI가 큰 이미지에서는 문자열을 찾을 수 없습니다. ROI는 텍스트 행 바로 위에 구성되어야 합니다.

#### 분류

분할이 완료되고 문자가 글꼴 데이터베이스로 트레이닝되면 런타임 이미지에서의 문자 분류가 시작됩니다. 분류에서는 분할된 문자 이미지를 입력으로 하여 해당 문자를 결정합니다. 분할된 문자 이미지를 모두 한 줄의 텍스트로 분류하여, 텍스트 행 전체에 대한 전체 문자열을 반환합니다.

분류는 트레이닝 후 이루어지며, 입력한 문자열 또는 사용자가 할당한 값에 따라 개별 문자에 제목이 할당됩니다. 문자 컬렉션이 트레이닝되고 하나의 글꼴로 그룹화되면 분류에는 런타임 이미지를 글꼴의 문자와 비교하고 가장 일치하는 문자와 그 문자의 점수를 반환하는 작업이 포함됩니다.

각 문자는 분류할 문자 중 하나 이상을 통해 트레이닝됩니다. 문자들은 하나의 글꼴로 그룹화되며 글꼴은 OCRMax 함수의 OCRMax 데이터 구조 내에 저장됩니다. 글꼴에는 트레이닝된 모든 문자가 포함됩니다. 각 문자는 이름, 사각형의 이미지 및 해당 정보(예: 텍스트의 잉크)로 구성됩니다.