텍스트 감지는 입력 동영상 내에서 텍스트를 감지하고 추출하는 광학 문자 인식(OCR)을 수행합니다.
텍스트 감지는 Cloud Vision API에서 지원하는 모든 언어에 사용할 수 있습니다.
Cloud Storage의 동영상에 대한 텍스트 감지 요청
다음 샘플은 Cloud Storage에 있는 파일로 텍스트 감지를 수행하는 방법을 보여줍니다.
REST
동영상 주석 요청 전송
다음은 videos:annotate
메서드에 POST 요청을 보내는 방법을 보여줍니다. 이 예시에서는 Google Cloud CLI를 사용하여 액세스 토큰을 만듭니다. gcloud CLI 설치에 대한 안내는 Video Intelligence API 빠른 시작을 참조하세요.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- INPUT_URI: 파일 이름을 포함하여 주석을 추가하고자 하는 파일을 포함한 Cloud Storage 버킷입니다.
gs://
로 시작해야 합니다.
예를 들면"inputUri": "gs://cloud-videointelligence-demo/assistant.mp4",
입니다. - LANGUAGE_CODE: [선택사항] 예를 들면 'en-US'입니다.
- PROJECT_NUMBER: Google Cloud 프로젝트의 숫자 식별자
HTTP 메서드 및 URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
JSON 요청 본문:
{ "inputUri": "INPUT_URI", "features": ["TEXT_DETECTION"], "videoContext": { "textDetectionConfig": { "languageHints": ["LANGUAGE_CODE"] } } }
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
응답이 성공하면 Video Intelligence API가 작업의 name
을 반환합니다. 위 항목은 이러한 응답의 예시를 보여줍니다. 여기서 project-number
는 프로젝트의 번호이고 operation-id
는 요청에 대해 생성된 장기 실행 작업의 ID입니다.
- PROJECT_NUMBER: 프로젝트 수입니다.
- LOCATION_ID: 주석이 있어야 할 클라우드 리전입니다. 지원되는 클라우드 리전은
us-east1
,us-west1
,europe-west1
,asia-east1
입니다. 리전을 지정하지 않으면 동영상 파일 위치를 기준으로 리전이 결정됩니다. - OPERATION_ID: 작업을 시작할 때 요청으로 생성되고 응답으로 제공된 장기 실행 작업의 ID로 예를 들면
12345...
입니다.
주석 결과 가져오기
작업 결과를 검색하려면 다음 예시에 표시된 것처럼 videos:annotate 호출로부터 반환된 작업 이름을 사용하여 GET 요청을 수행합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- OPERATION_NAME: Video Intelligence API로 반환되는 작업의 이름입니다. 작업 이름은
projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID
형식입니다. - PROJECT_NUMBER: Google Cloud 프로젝트의 숫자 식별자
HTTP 메서드 및 URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
텍스트 감지 주석은textAnnotations
목록으로 반환됩니다.
참고: done 필드는 값이 True일 경우에만 반환됩니다.
작업이 완료되지 않은 경우에는 응답에 이 필드가 포함되지 않습니다.
주석 결과 다운로드
소스에서 대상 버킷으로 주석을 복사합니다(파일 및 객체 복사 참조).
gsutil cp gcs_uri gs://my-bucket
참고: 사용자가 출력 gcs uri를 제공하면 주석이 해당 gcs uri에 저장됩니다.
Go
Java
Video Intelligence에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
Video Intelligence에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Video Intelligence에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 다음 .NET용 Video Intelligence 참고 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 다음 PHP용 Video Intelligence 참고 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 Video Intelligence 참고 문서를 참조하세요.
로컬 파일에서 동영상의 텍스트 감지 요청
다음 샘플은 로컬에 저장된 파일에 대한 텍스트 탐지를 보여줍니다.
REST
동영상 주석 요청 전송
로컬 동영상 파일에서 주석을 수행하려면 동영상 파일의 콘텐츠를 base64로 인코딩해야 합니다.
요청의 inputContent
필드에 base64로 인코딩된 콘텐츠를 포함합니다.
동영상 파일의 콘텐츠를 base64로 인코딩하는 방법에 대한 자세한 내용은 Base64 인코딩을 참조하세요.
다음은 videos:annotate
메서드에 POST 요청을 보내는 방법을 보여줍니다.
이 예시에서는 Google Cloud CLI를 사용하여 액세스 토큰을 만듭니다.
Google Cloud CLI 설치에 대한 자세한 내용은 Video Intelligence API 빠른 시작을 참조하세요.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- 'inputContent': BASE64_ENCODED_CONTENT
예를 들면 다음과 같습니다.
"UklGRg41AwBBVkkgTElTVAwBAABoZHJsYXZpaDgAAAA1ggAAxPMBAAAAAAAQCAA..."
- LANGUAGE_CODE: [선택사항] 예를 들면 'en-US'입니다.
- PROJECT_NUMBER: Google Cloud 프로젝트의 숫자 식별자
HTTP 메서드 및 URL:
POST https://videointelligence.googleapis.com/v1/videos:annotate
JSON 요청 본문:
{ "inputContent": "BASE64_ENCODED_CONTENT", "features": ["TEXT_DETECTION"], "videoContext": { "textDetectionConfig": { "languageHints": ["LANGUAGE_CODE"] } } }
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/operations/OPERATION_ID" }
응답이 성공하면 Video Intelligence API가 작업의 name
을 반환합니다. 위 항목은 이러한 응답의 예시를 보여줍니다. 여기서 project-number
는 프로젝트의 이름이고 operation-id
는 요청에 대해 생성된 장기 실행 작업의 ID입니다.
- OPERATION_ID: 작업을 시작할 때 응답에 제공됩니다. 예를 들면
12345...
입니다.
주석 결과 가져오기
작업 결과를 검색하려면 다음 예시에 표시된 것처럼 videos:annotate 호출로부터 반환된 작업 이름을 사용하여 GET 요청을 수행합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_NUMBER: Google Cloud 프로젝트의 숫자 식별자
HTTP 메서드 및 URL:
GET https://videointelligence.googleapis.com/v1/OPERATION_NAME
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
텍스트 감지 주석은 textAnnotations
목록으로 반환됩니다.
참고: done 필드는 값이 True일 경우에만 반환됩니다.
작업이 완료되지 않은 경우에는 응답에 이 필드가 포함되지 않습니다.
Go
Java
Node.js
Video Intelligence에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 다음 .NET용 Video Intelligence 참고 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 다음 PHP용 Video Intelligence 참고 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 Video Intelligence 참고 문서를 참조하세요.