OCR API 호출 방법

네이버 클라우드 플랫폼의 OCR 빌더에서 템플릿 등록을 완료 후 테스트 및 서비스 배포가 완료되면

REST API를 사용하여 OCR 서비스를 이용할 수 있습니다.

이 문서에서는 TEXT OCR API로 이미지를 입력하고, 인식값을 변환받는 방법을 안내 합니다.

Step 1. API 환경 설정하기

OCR 빌더에서 만든 도메인은 고유한 InvokeURL이 있습니다. 이 InvokeURL은 안전한 서비스를 위해 외부 서비스에 바로 공개되지 않습니다. 그리고 보안 및 서비스 처리 수준을 높이기 위해서 네이버 비즈니스 플랫폼의 API Gateway 상품에 연동하여 사용하도록 설계되어 있습니다.

Step 2. 자동으로 API Gateway 연동하기

API Gateway와 연동하는 방법에는 자동과 수동이 있으며, 자동연동 기능을 선택하시면 몇 번의 클릭으로 쉽게 API Gateway 연동을 완료하실 수 있습니다.

이 단계에서는 Secret Key 와 OCR Invoke URL을 생성합니다.

  • Text OCR 사용하기

    image-20191217135217405

  • Secret Key를 생성합니다.

  • APIGW 자동연동 버튼을 클릭합니다.

    image-20191217135507352

API Gateway 서비스의 이용 신청이 되어 있지 않다면, 먼저 신청을 완료해야 합니다.

image-20191217135557688

APIGW 연동이 완료되었습니다.

중요한 정보인 Secret Key 와 OCR Invoke URL 값을 복사해 놓습니다.

  • Secret Key : {X-OCR-SECRET}
  • OCR Invoke URL : {OCR Invoke URL}

Step 3. API Gateway 생성 URL 확인하기

콘솔에서 API Gateway 상품으로 이동합니다.

My Products에 OCR_CUSTOM_API_KR 이라는 Product가 생성되어 있습니다.

image-20191217144656409

Stage 탭을 클릭하면, Chatbot 빌더 화면에서 보여진 APIGateway Invoke URL이 동일하게 표시되고 있습니다.

image-20191217144827615

여기까지 정상적으로 표시되었다면, API 호출 준비가 완료되었습니다.

Step 4. Postman으로 API 호출해 보기 (TEXT OCR)

Text OCR API를 실행할 경우 업로드 된 이미지의 텍스트 추출이 가능합니다.

OCR API 참조서에 호출을 위한 spec이 자세하게 설명되어 있습니다. OCR API 참조서 바로가기

Postman에서 새로운 API를 생성하고 호출방식을 POST로 설정합니다.

Invoke URL 주소에 OCR에서 생성한 API Gateway의 InvokeURL을 입력합니다.

image-20191217171936809

Header 항목에 아래와 같이 X-OCR-SECRET 정보를 입력합니다.

Content-Type : application/json

X-OCR-SECRET : {X-OCR-SECRET }

image-20191217172419810

TEXT OCR 호출 BODY는 이미지 인식 요청 BODY 의 형식으로 넣습니다.

자세한 이미지 인식 요청 형식은 API 참조서를 확인해주세요

Request Body:

{
    "images": [
      {
        "format": "png",
        "name": "medium",
        "data": null,
        "url": "https://kr.object.ncloudstorage.com/ocr-img/OCR_KOREAN.PNG"
      }
    ],
    "lang": "ko",
    "requestId": "string",
    "resultType": "string",
    "timestamp": {{$timestamp}},
    "version": "V1"
}

image-20191217172912524

SEND 버튼을 눌러서 응답을 확인합니다.

image-20191217173003063

응답 결과는 다음과 같습니다.

Response Body:

{
"version":"V1",
"requestId":"string",
"timestamp":1576569034247,
"images":[
  {
    "uid":"9fd73a6aacad4025b3099a36ee55aacd",
    "name":"medium","inferResult":"SUCCESS","message":"SUCCESS",
    "fields":[
        {"inferText":"나","inferConfidence":0.9967288},
        {"inferText":"하늘로","inferConfidence":0.9998919},
        {"inferText":"돌아가리라","inferConfidence":0.9999104},
        {"inferText":"아름다운","inferConfidence":0.99992156},
        {"inferText":"이","inferConfidence":0.99958915},
        {"inferText":"세상","inferConfidence":0.9998707},
        {"inferText":"소풍","inferConfidence":0.9988277},
        {"inferText":"끝내는","inferConfidence":0.9999253},
        {"inferText":"날","inferConfidence":0.99908936},
        {"inferText":"가서","inferConfidence":0.99974936},
        {"inferText":"아름다웠더라고","inferConfidence":0.9997728},
        {"inferText":"말하리라","inferConfidence":0.9993808}
        ],
    "validationResult":{"result":"NO_REQUESTED"}}
    ]
}

이미지 인식결과가 json 형태로 리턴되며, 이 값을 활용하여 고객님의 서비스에서 활용하실 수 있습니다.

Template OCR도 동일한 방법으로 API 호출이 가능합니다.

자세한 내용은 OCR API 참조서를 확인해 주세요.

""에 대한 건이 검색되었습니다.

    ""에 대한 검색 결과가 없습니다.

    처리중...