Passport API
Summary
여권 인식 기능을 사용하기 위한 필수적인 API로 구성되어 있습니다.
Functions List
// 여권 mrz 영역 설정
setMrzArea(Rect rect)
// 인식기 실행
startRecognition(Context context)
// 인식기 종료
stopRecognition(Context context)
// 인식 결과 삭제
clearRecognitionResults()
// 실시간 이미지 추가
submitRequestedFrame(byte[] data)
RecognizerImpl
여권 인식기 기본 생성자
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | presenter |
Presenter를 구현한 Activity context | Presenter |
Returns
-
Example
Recognizer recognizer = new RecognizerImpl(this);
setMrzArea
가이드 mrz 영역 설정
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | rect |
mrz 영역 | Rect |
Returns
-
Example
mRecognizer.setMrzArea(rect);
submitRequestedFrame
이미지 큐에 실시간 이미지 추가
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | data |
실시간 이미지 | data[] |
Returns
-
Example
mRecognizer.submitRequestedFrame(data);
startRecognition
이미지 큐의 이미지를 인식 (mrz 영역 설정 필요)
Parameters
# | Name | Description | Type |
---|
Returns
-
Example
mRecognizer.startRecognition(context);
stopRecognition
인식 종료
Parameters
# | Name | Description | Type |
---|
Returns
-
Example
mRecognizer.stopRecognition(context);
clearRecognitionResults
인식 결과 삭제
Parameters
# | Name | Description | Type |
---|
Returns
-
Example
mRecognizer.clearRecognitionResults();
getVersion
SDK 버전 확인
Parameters
# | Name | Description | Type |
---|
Returns
SDK 의 버전
Example
mRecognizer.getVersion();
isValidLicense
라이선스가 유효한지 여부 판단
SDK 사용 초기에 호출하지 않으면 제한된 날짜까지만 사용제한
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | context |
Application context | Context |
Returns
라이선스 유효 여부 (true – 유효, false – 만료)
Example
if (!RecognizerImpl.isValidLicense(getApplicationContext())) {
Toast.makeText(getApplicationContext(), "License expired!", Toast.LENGTH_SHORT).show();
}
getExpiredDate
라이선스 만료일자 출력
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | context |
Application context | Context |
Returns
라이선스 만료일자
Example
Date date = RecognizerImpl.getExpiredDate(getApplicationContext());
MRZData.h
/*!
* @class MRZData
* @abstract MRZData 클래스
* @discussion 여권 인식 결과 클래스(여권 하단 부, 2줄에 대한 인식 결과)
*/
@interface MRZData : NSObject
// Passport MRZ info : https://en.wikipedia.org/wiki/Machine-readable_passport
// Line 1
/*!
* @@property documentType
* @brief 'P' : 여권을 뜻함 (line 1, start index 1, len 1)
*/
@property NSString *documentType; // start 1, len 1
/*!
* @@property documentSubType
* @brief 여권의 종류(line 1, start start index 2, len 1)
*/
@property NSString *documentSubType; // start 2, len 1
/*!
* @@property countryCode
* @brief 발행 국가(line 1, start start index 3, len 3)
*/
@property NSString *countryCode; // start 3, len 3
/*!
* @@property lastName
* @brief 전체 이름의 성 부분(line 1, start start index 6, len 39)
*/
@property NSString *lastName; // start 6, len 39
/*!
* @@property firstName
* @brief 전체 이름의 이름 부분(line 1, from lastname after first <<)
*/
@property NSString *firstName; // from lastname after first <<
// Line 2
/*!
* @@property passportNumber
* @brief 여권 번호(line 2, start start index 1, len 9)
*/
@property NSString *passportNumber; // start 1, len 9 // start 10, len 1 - validating the passportNumber
/*!
* @@property nationality
* @brief 국적(line 2, start start index 11, len 3)
*/
@property NSString *nationality; // start 11, len 3
/*!
* @@property dateOfBirth
* @brief 생년월일(line 2, start start index 14, len 6)
*/
@property NSString *dateOfBirth; // start 14, len 6 // start 20, len 1 - validating the dateOfBirth
/*!
* @@property sex
* @brief 생년월일(line 2, start start index 21, len 1)
*/
@property NSString *sex; // start 21, len 1
/*!
* @@property expirationDate
* @brief 기간 만료일(line 2, start start index 22, len 6)
*/
@property NSString *expirationDate; // start 22, len 6 // start 28, len 1 - validating the expirationDate
/*!
* @@property personalNumber
* @brief 개인 번호(line 2, start start index 29, len 14)
*/
@property NSString *personalNumber; // start 29, len 14 // start 43, len 1 - validating the personalNumber
@end
Functions List
//여권 인식기 객체 생성
(id)getInstance;
//여권 인식기 초기화
(PassportError)initializeWithDelegate:(id)delegate;
//여권 인식기에 전달되는 인식 대상 이미지 내의 관심 영역(ROI) 세팅(실제 인식 영역)
(void)setAreaOfInterest:(CGRect)rect;
// 여권 인식기에 프리뷰 이미지를 전달
(void)addSampleBuffer:(CMSampleBufferRef)sampleBuffer;
//여권 인식기 엔진 해제
(void)finalize;
(id)getInstance
여권 인식기 엔진의 객체를 리턴
Parameters
# | Name | Description | Type |
---|
Returns
id 여권 인식기 엔진의 객체
(void)setAreaOfInterest:(CGRect)rect;
여권 인식기에 전달되는 인식 대상 이미지 내의 관심 영역(ROI) 세팅(실제 인식 영역)
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | rect |
mrz 영역 | CGRect |
Returns
-
(void)addSampleBuffer:(CMSampleBufferRef)sampleBuffer
여권 인식기에 프리뷰 이미지를 전달
Parameters
# | Name | Description | Type |
---|---|---|---|
[in] | sampleBuffer |
인식할 프리뷰 이미지 데이터 | CMSampleBufferRef |
Returns
-
(void)finalize
여권 인식기 엔진 해제
Parameters
# | Name | Description | Type |
---|
Returns
-
(NSString *)getVersion
버전 정보 스트링을 리턴
Parameters
# | Name | Description | Type |
---|
Returns
NSString * 버전 정보 스트링
Example
mRecognizer.getVersion();
(NSDateComponents *)getExpiredNSDateComponents
라이선스 만료 날짜를 NSDateComponents 객체로 리턴
Parameters
# | Name | Description | Type |
---|
Returns
NSDateComponents 라이선스 만료 날짜