AnnotateImageResponse

이미지 주석 요청에 대한 응답입니다.

JSON 표현
{
  "textAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "fullTextAnnotation": {
    object (TextAnnotation)
  },
  "error": {
    object (Status)
  },
  "context": {
    object (ImageAnnotationContext)
  }
}
필드
textAnnotations[]

object (EntityAnnotation)

있는 경우 텍스트(OCR) 인식이 성공적으로 완료된 것입니다.

fullTextAnnotation

object (TextAnnotation)

있는 경우 텍스트(OCR) 인식 또는 문서(OCR) 텍스트 인식이 성공적으로 완료된 것입니다. 이 주석은 OCR에서 감지한 텍스트의 계층 구조를 보여줍니다.

error

object (Status)

설정한 경우 작업의 오류 메시지가 표시됩니다. error가 설정되어 있더라도 작성된 이미지 주석의 정확성이 보장됩니다.

context

object (ImageAnnotationContext)

있는 경우 이미지의 출처를 파악하기 위해 컨텍스트 정보가 필요합니다.

EntityAnnotation

감지된 항목 특성 세트입니다.

JSON 표현
{
  "mid": string,
  "locale": string,
  "description": string,
  "score": number,
  "confidence": number,
  "topicality": number,
  "boundingPoly": {
    object (BoundingPoly)
  },
  "properties": [
    {
      object (Property)
    }
  ]
}
필드
mid

string

불투명한 항목 ID입니다. 일부 ID는 Google Knowledge Graph Search API에서 확인할 수 있습니다.

locale

string

항목 텍스트 description을 표현하는 데 사용된 언어 코드입니다.

description

string

locale 언어로 표현된 항목 텍스트 설명입니다.

score

number

결과의 전체 지수입니다. 범위 [0, 1]

confidence
(deprecated)

number

지원 중단되었습니다. 대신 score를 사용하세요. 이미지에서 항목 인식의 정확도입니다. 예를 들어 '에펠탑' 항목이 인식된 이미지의 경우 이 필드는 쿼리 이미지에 타워가 있을 확률을 나타냅니다. 범위 [0, 1]

topicality

number

이미지에 대한 ICA(이미지 콘텐츠 주석) 라벨의 관련성입니다. 예를 들어 각 이미지에 타워가 있을 확률이 동일하더라도 멀리 있는 고층 빌딩이 감지된 이미지보다는 '에펠탑'이 감지된 이미지와 '타워'의 관련성이 더 높습니다. 범위 [0, 1]

boundingPoly

object (BoundingPoly)

이 항목이 속한 이미지 영역입니다. LABEL_DETECTION 특성에 대해서는 생성되지 않았습니다.

properties[]

object (Property)

일부 항목에는 항목을 충족하는 점수 또는 문자열과 같이 사용자가 제공한 선택적 Property(이름/값) 필드가 포함될 수 있습니다.

BoundingPoly

인식된 이미지 주석의 경계 다각형입니다.

JSON 표현
{
  "vertices": [
    {
      object (Vertex)
    }
  ],
  "normalizedVertices": [
    {
      object (NormalizedVertex)
    }
  ]
}
필드
vertices[]

object (Vertex)

경계 다각형의 꼭짓점입니다.

normalizedVertices[]

object (NormalizedVertex)

경계 다각형의 정규화된 꼭짓점입니다.

Vertex

꼭짓점은 이미지의 2D 점을 나타냅니다. 참고: 꼭짓점 좌표는 원본 이미지와 축척이 동일합니다.

JSON 표현
{
  "x": integer,
  "y": integer
}
필드
x

integer

X 좌표입니다.

y

integer

Y 좌표이며

NormalizedVertex

꼭짓점은 이미지의 2D 점을 나타냅니다. 참고: 정규화된 꼭짓점 좌표는 원본 이미지를 기준으로 하며 범위는 0에서 1 사이입니다.

JSON 표현
{
  "x": number,
  "y": number
}
필드
x

number

X 좌표입니다.

y

number

Y 좌표입니다.

속성

Property는 사용자가 제공한 이름/값 쌍으로 구성됩니다.

JSON 표현
{
  "name": string,
  "value": string,
  "uint64Value": string
}
필드
name

string

속성 이름입니다.

value

string

속성 값입니다.

uint64Value

string

숫자 속성의 값입니다.

TextAnnotation

TextAnnotation에는 OCR 추출 텍스트의 구조화된 표현이 포함됩니다. OCR로 추출된 텍스트 구조의 계층 구조는 다음과 같습니다.

TextAnnotation-> 페이지 -> 블록 -> 단락 -> 단어 -> 기호

페이지부터 각 구조적 구성요소에는 감지된 언어, 줄바꿈 등을 설명하는 속성이 있을 수 있습니다. 자세한 내용은 아래의 TextAnnotation.TextProperty 메시지 정의를 참고하세요.

JSON 표현
{
  "pages": [
    {
      object (Page)
    }
  ],
  "text": string
}
필드
pages[]

object (Page)

OCR에서 감지한 페이지 목록입니다.

text

string

페이지에서 감지된 UTF-8 텍스트입니다.

페이지

OCR에서 감지된 페이지

JSON 표현
{
  "property": {
    object (TextProperty)
  },
  "width": integer,
  "height": integer,
  "blocks": [
    {
      object (Block)
    }
  ],
  "confidence": number
}
필드
property

object (TextProperty)

페이지에서 감지된 추가 정보입니다.

width

integer

페이지 너비입니다. PDF의 단위는 점입니다. 이미지(TIFF 포함)의 단위는 픽셀입니다.

height

integer

페이지 높이입니다. PDF의 단위는 점입니다. 이미지(TIFF 포함)의 단위는 픽셀입니다.

blocks[]

object (Block)

이 페이지에 있는 텍스트, 이미지 등의 블록 목록입니다.

confidence

number

페이지에 대한 OCR 결과의 신뢰도입니다. 범위 [0, 1]

TextProperty

구조적 구성요소에서 감지되는 추가 정보

JSON 표현
{
  "detectedLanguages": [
    {
      object (DetectedLanguage)
    }
  ],
  "detectedBreak": {
    object (DetectedBreak)
  }
}
필드
detectedLanguages[]

object (DetectedLanguage)

감지된 언어와 신뢰도 목록입니다.

detectedBreak

object (DetectedBreak)

감지된 텍스트 세그먼트의 시작 또는 끝입니다.

DetectedLanguage

구조적 구성요소의 감지된 언어

JSON 표현
{
  "languageCode": string,
  "confidence": number
}
필드
languageCode

string

BCP-47 언어 코드(예: 'en-US' 또는 'sr-Latn') 자세한 내용은 https://www.unicode.org/reports/tr35/#Unicode_locale_identifier를 참고하세요.

confidence

number

감지된 언어의 신뢰도입니다. 범위 [0, 1]

DetectedBreak

구조적 구성요소의 감지된 시작 또는 끝입니다.

JSON 표현
{
  "type": enum (BreakType),
  "isPrefix": boolean
}
필드
type

enum (BreakType)

감지된 줄바꿈 유형입니다.

isPrefix

boolean

줄바꿈을 통해 요소가 맨 앞에 오는 경우 참입니다.

BreakType

발견된 줄바꿈 유형을 나타내는 열거형입니다. 새 줄, 공백 등이 여기에 해당합니다.

열거형
UNKNOWN 알 수 없는 줄바꿈 라벨 유형입니다.
SPACE 일반 공백입니다.
SURE_SPACE 확실한 공백입니다(매우 넓음).
EOL_SURE_SPACE 줄바꿈입니다.
HYPHEN 텍스트에 없는 끝행 하이픈으로, SPACE, LEADER_SPACE 또는 LINE_BREAK와 함께 발생하지 않습니다.
LINE_BREAK 단락으로 끝나는 줄바꿈입니다.

차단

페이지의 논리적 요소

JSON 표현
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "paragraphs": [
    {
      object (Paragraph)
    }
  ],
  "blockType": enum (BlockType),
  "confidence": number
}
필드
property

object (TextProperty)

블록에 대해 인식된 추가 정보입니다.

boundingBox

object (BoundingPoly)

블록의 경계 상자입니다. 꼭짓점은 왼쪽 위, 오른쪽 위, 오른쪽 아래, 왼쪽 아래 순서입니다. 경계 상자의 회전이 감지되면 텍스트를 '자연스러운' 방향으로 읽을 때 정의된 대로 왼쪽 위 모서리를 기준으로 회전하여 표시됩니다. 예를 들면 다음과 같습니다.

  • 가로 텍스트는 다음과 같이 표시됩니다.
    0----1
    |    |
    3----2
  • 왼쪽 위 모서리를 기준으로 180도 회전하면 다음과 같이 됩니다.
    2----3
    |    |
    1----0

꼭짓점 순서는 여전히 (0, 1, 2, 3)입니다.

paragraphs[]

object (Paragraph)

이 블록의 단락 목록입니다(이 블록이 텍스트 유형인 경우).

blockType

enum (BlockType)

이 블록에서 인식된 블록 유형(텍스트, 이미지 등)입니다.

confidence

number

블록에 대한 OCR 결과의 신뢰도입니다. 범위 [0, 1]

단락

특정 순서로 단어 수를 나타내는 텍스트의 구조적 단위

JSON 표현
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "words": [
    {
      object (Word)
    }
  ],
  "confidence": number
}
필드
property

object (TextProperty)

단락에 대해 감지된 추가 정보입니다.

boundingBox

object (BoundingPoly)

단락의 경계 상자입니다. 꼭짓점은 왼쪽 위, 오른쪽 위, 오른쪽 아래, 왼쪽 아래 순서입니다. 경계 상자의 회전이 감지되면 텍스트를 '자연스러운' 방향으로 읽을 때 정의된 대로 왼쪽 위 모서리를 기준으로 회전하여 표시됩니다. 예: * 텍스트가 가로인 경우 다음과 같이 표시됩니다. 0----1 | | 3----2 * 왼쪽 위 모서리를 기준으로 180도 회전하면 2----3 | | 1----0이 되고 꼭짓점 순서는 여전히 (0, 1, 2, 3)입니다.

words[]

object (Word)

이 단락의 모든 단어 목록입니다.

confidence

number

단락의 OCR 결과 신뢰도입니다. 범위 [0, 1]

Word

단어 표현입니다.

JSON 표현
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "symbols": [
    {
      object (Symbol)
    }
  ],
  "confidence": number
}
필드
property

object (TextProperty)

단어에 대해 감지된 추가 정보입니다.

boundingBox

object (BoundingPoly)

단어의 경계 상자입니다. 꼭짓점은 왼쪽 위, 오른쪽 위, 오른쪽 아래, 왼쪽 아래 순서입니다. 경계 상자의 회전이 감지되면 텍스트를 '자연스러운' 방향으로 읽을 때 정의된 대로 왼쪽 위 모서리를 기준으로 회전하여 표시됩니다. 예: * 텍스트가 가로인 경우 다음과 같이 표시됩니다. 0----1 | | 3----2 * 왼쪽 위 모서리를 기준으로 180도 회전하면 2----3 | | 1----0이 되고 꼭짓점 순서는 여전히 (0, 1, 2, 3)입니다.

symbols[]

object (Symbol)

단어 내 기호의 목록입니다. 기호의 순서는 자연스럽게 읽는 순서를 따릅니다.

confidence

number

단어의 OCR 결과 신뢰도입니다. 범위 [0, 1]

기호

단일 기호 표현

JSON 표현
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "text": string,
  "confidence": number
}
필드
property

object (TextProperty)

기호에 대해 감지된 추가 정보입니다.

boundingBox

object (BoundingPoly)

기호의 경계 상자입니다. 꼭짓점은 왼쪽 위, 오른쪽 위, 오른쪽 아래, 왼쪽 아래 순서입니다. 경계 상자의 회전이 감지되면 텍스트를 '자연스러운' 방향으로 읽을 때 정의된 대로 왼쪽 위 모서리를 기준으로 회전하여 표시됩니다. 예: * 텍스트가 가로인 경우 다음과 같이 표시됩니다. 0----1 | | 3----2 * 왼쪽 위 모서리를 기준으로 180도 회전하면 2----3 | | 1----0이 되고 꼭짓점 순서는 여전히 (0, 1, 2, 3)입니다.

text

string

기호의 실제 UTF-8 표현입니다.

confidence

number

기호의 OCR 결과 신뢰도입니다. 범위 [0, 1]

BlockType

OCR에서 식별한 블록 유형(텍스트, 이미지 등)입니다.

열거형
UNKNOWN 알 수 없는 블록 유형입니다.
TEXT 일반 텍스트 블록입니다.
TABLE 테이블 블록입니다.
PICTURE 이미지 블록입니다.
RULER 가로/세로선 상자입니다.
BARCODE 바코드 블록입니다.

ImageAnnotationContext

이미지가 파일(예: PDF)에서 생성된 경우 이 메시지는 이미지의 소스에 대한 정보를 제공합니다.

JSON 표현
{
  "uri": string,
  "pageNumber": integer
}
필드
uri

string

이미지를 생성하는 데 사용된 파일의 URI입니다.

pageNumber

integer

파일이 PDF 또는 TIFF이면 이 필드는 이미지 생성에 사용된 파일 내의 페이지 번호를 제공합니다.