- 명함의 디지털 사본 확보
- 명함 인식
- 인식된 데이터를 적절한 형식으로 저장
시나리오 구현
이 항목에서 제공하는 코드 샘플은 Windows 전용입니다.
1단계. ABBYY FineReader Engine 로드
1단계. ABBYY FineReader Engine 로드
ABBYY FineReader Engine을 사용하려면 먼저 Engine 객체를 생성해야 합니다. 엔진 객체는 ABBYY FineReader Engine 객체 계층 구조의 최상위 객체로, 다양한 전역 설정, 일부 처리 메서드, 그리고 다른 객체를 생성하는 메서드를 제공합니다.엔진 객체를 생성하려면 InitializeEngine 함수를 사용할 수 있습니다. Engine 객체를 로드하는 다른 방법 (Win)도 참조하세요.
C#
2단계. 시나리오에 맞는 설정 로드
2단계. 시나리오에 맞는 설정 로드
Engine 객체의 LoadPredefinedProfile 메서드를 사용하여 이 시나리오에 적합한 처리 설정을 로드할 수 있습니다. 이 메서드는 설정 프로필 이름을 입력 Parameter로 사용합니다. 자세한 내용은 프로필 작업을 참조하세요.이 시나리오에 필요한 설정은 사전 정의된 BusinessCardsProcessing 프로필에서 사용할 수 있습니다.처리 설정을 변경하려면 적절한 Parameter 객체를 사용하세요. 자세한 내용은 아래의 특정 작업을 위한 추가 최적화를 참조하세요.
- 명함만 감지합니다(SynthesisParamsForPage 객체의 SynthesizeBusinessCards 속성을 TRUE로 설정).
- 품질이 낮은 작은 텍스트 영역까지 포함하여 이미지의 모든 텍스트를 감지하도록 설정합니다(그림과 표는 감지되지 않음).
- 해상도 보정이 수행됩니다.
- 문서의 논리 구조에 대한 전체 합성은 수행되지 않습니다.
C#
3단계. 명함 이미지 로드 및 전처리
3단계. 명함 이미지 로드 및 전처리
FineReader Engine에 이미지를 로드하려면 다음 객체의 메서드를 사용할 수 있습니다.FRDocument 객체에 이미지를 로드하려면 다음 중 하나를 수행하세요.
- FRDocument
- Linux 및 Windows용 BatchProcessor
Linux 및 Windows 사용자는 ABBYY FineReader Engine을 사용한 병렬 처리에서 각 접근 방식의 장단점을 확인할 수 있습니다. 이 항목에서는 FRDocument를 중점적으로 다룹니다.
- FRDocument 객체를 만들 때 Engine 객체의 CreateFRDocumentFromImage 메서드를 사용합니다.
- 생성된 FRDocument 객체에 파일에서 이미지를 추가합니다(AddImageFile, AddImageFileWithPassword, 또는 AddImageFileWithPasswordCallback 메서드 사용).
C#
4단계. 명함 인식
4단계. 명함 인식
명함을 인식하려면 다음 단계를 수행합니다.
- RecognizerParams 객체의 SetPredefinedTextLanguage 메서드를 사용하여 명함의 언어를 지정합니다. 명함 인식에 사용할 수 있는 미리 정의된 언어 목록을 참조하세요.
- 필요한 경우 다른 처리 매개변수도 설정합니다. 페이지 전처리, 분석, 인식 및 합성 매개변수 조정을 참조하세요.
- 매개변수를 처리 메서드 중 하나에 전달합니다(예: FRDocument 객체의 Process 메서드). 그러면 이 메서드가 문서와 해당 페이지의 명함 컬렉션(IFRDocument::BusinessCards, IFRPage::BusinessCards)을 채웁니다.
FRPage 객체의 SynthesizeBusinessCard 또는 SynthesizeBusinessCardEx 메서드를 사용하여 전체 페이지 또는 각 페이지의 영역에서 명함을 합성할 수도 있습니다. 이 메서드는 BusinessCard 객체를 반환합니다. 이 경우 명함은 페이지의 명함 컬렉션에 추가되지 않습니다. 이 방식은 Batch Processor를 사용하는 처리 방식을 선택한 경우 특히 유용합니다.
C#
5단계. 인식된 데이터 작업
5단계. 인식된 데이터 작업
인식된 명함(BusinessCard 객체)에는 다음 field가 포함될 수 있습니다.
각 field에는 해당 유형으로 액세스하거나(FieldByType 속성), fields 컬렉션 내 인덱스로 액세스할 수 있습니다(Field 속성). 각 field에는 Value 속성이 있으며, 이를 통해 field 값에 string 형식으로 액세스할 수 있습니다. field의 각 문자에 대해서는 인식 후보를 확인할 수 있습니다(GetCharParams 메서드).일부 field는 여러 구성 요소로 이루어질 수 있습니다. 예를 들어 주소 field에는 우편번호, 국가, USA 주, 도시, 상세 주소가 포함될 수 있습니다. field 구성 요소에 액세스하려면 Component 속성 또는 FindComponent 메서드를 사용할 수 있습니다. 전자는 인덱스로 구성 요소에 액세스할 수 있게 해 주고, 후자는 유형으로 구성 요소를 찾습니다. 각 구성 요소에 대해 유형과 값을 확인하고, 각 문자에 대한 Parameter와 인식 후보를 가져올 수 있습니다(GetCharParams 메서드).
|
|
C#
6단계. 결과를 vCard 형식으로 저장
6단계. 결과를 vCard 형식으로 저장
BusinessCard 객체는 명함을 vCard 형식으로 저장하기 위한 전용 ExportToVCard 메서드를 제공합니다. 파일 경로는 Parameter로 전달됩니다.명함은 XML과 같이 지원되는 다른 내보내기 형식으로도 저장할 수 있습니다.
C#
7단계. ABBYY FineReader Engine 언로드
7단계. ABBYY FineReader Engine 언로드
ABBYY FineReader Engine 사용을 마친 후에는 Engine 객체를 언로드해야 합니다. 이렇게 하려면 내보낸 함수인 DeinitializeEngine을 사용합니다.
C#
필수 리소스
추가 최적화
- 엔진 로드
- Windows용 엔진 객체를 로드하는 다양한 방법
엔진 객체를 로드하는 여러 방법을 자세히 설명합니다. - Windows용 멀티스레드 서버 애플리케이션에서 ABBYY FineReader Engine 사용
서버 애플리케이션에서 FineReader Engine을 사용할 때의 특징을 설명합니다. - 프로필 작업
미리 정의된 프로필과 사용자 프로필을 자세히 설명합니다.
- Windows용 엔진 객체를 로드하는 다양한 방법
- 인식
- 전처리, 분석, 인식 및 합성의 매개변수 조정
전처리, 분석, 인식 및 합성 매개변수 객체를 사용해 문서 처리를 사용자 지정합니다. - Linux 및 Windows용 ABBYY FineReader Engine을 사용한 병렬 처리
Batch Processor를 사용하는 또 다른 문서 처리 방식을 사용할 수 있습니다.
- 전처리, 분석, 인식 및 합성의 매개변수 조정
- 내보내기
- 내보내기 매개변수 조정
내보내기 매개변수 객체를 사용해 내보내기를 설정합니다. - XMLExportParams 객체
이 객체를 사용하면 인식 결과를 XML로 저장하도록 설정할 수 있습니다.
- 내보내기 매개변수 조정

