Расширение Google Cloud Vision

Вы просматриваете документацию Apigee Edge .
Перейти к документации Apigee X.
info

Версия: 2.0.1

Находите содержание и текст на изображениях с помощью моделей машинного обучения.

Этот контент предоставляет справочную информацию по настройке и использованию этого расширения. Перед использованием этого расширения из API-прокси необходимо:

  1. Включите API Cloud Vision для вашей учетной записи сервиса.

  2. Если вы будете использовать облачное хранилище в качестве источника изображений, вам также потребуется предоставить этому расширению доступ к облачному хранилищу, как описано в справочнике по расширению Google Cloud Storage .

  3. Если у вас есть учетная запись службы с разрешением на Cloud Vision (и Cloud Storage, если вы его используете), используйте консоль GCP, чтобы сгенерировать ключ для учетной записи службы .

  4. Используйте содержимое полученного файла JSON-ключа при добавлении и настройке расширения с помощью справочника по конфигурации .

О Cloud Vision

API Google Cloud Vision использует модели машинного обучения для анализа изображений. Вы можете обучить модель для использования API или использовать встроенную модель .

Используя встроенную модель, Cloud Vision классифицирует изображения по таким категориям, как «небоскреб», «парусник», «лев» или «Эйфелева башня». Он обнаруживает объекты, лица, логотипы и достопримечательности на изображениях, а также находит содержащиеся на них слова.

Образцы

В следующих примерах показано, как настроить поддержку действий расширения Cloud Vision с помощью политики ExtensionCallout .

Обнаружение меток

В следующем примере действие расширения detectLabels получает изображение по image_uri и передает его в Cloud Vision API для анализа. API проверит изображение и определит, какие метки применяются к содержимому изображения.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Extension">
    <DisplayName>Cloud Vision Extension</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectLabels</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
    }
    ]]></Input>
    <Output>vision.labels.retrieved</Output>
</ConnectorCallout>

Следующая политика назначения сообщения использует значение переменной, хранящей ответ расширения, для назначения полезной нагрузки ответа.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Labels">
    <DisplayName>Get Image Labels</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.labels.retrieved}</Payload>
    </Set>
</AssignMessage>

Если у вас есть изображение городской местности с очень высоким зданием, вы можете получить ответ, подобный следующему:

{
  "labels": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/0j_s4",
          "locale": "",
          "description": "metropolitan area",
          "score": 0.9868549704551697,
          "confidence": 0,
          "topicality": 0.9868549704551697,
          "boundingPoly": null
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/079cl",
          "locale": "",
          "description": "skyscraper",
          "score": 0.966157853603363,
          "confidence": 0,
          "topicality": 0.966157853603363,
          "boundingPoly": null
      }
  ]
}

Определить текст

В следующем примере действие расширений detectText получает изображение по image_uri и передает его в API Cloud Vision для анализа. API проверит изображение, идентифицируя текст на изображении.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Text">
    <DisplayName>Cloud Vision Text</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectText</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
    }
    ]]></Input>
    <Output>vision.text.retrieved</Output>
</ConnectorCallout>

Следующая политика назначения сообщения использует значение переменной, хранящей ответ расширения, для назначения полезной нагрузки ответа.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Text">
    <DisplayName>Get Image Text</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.text.retrieved}</Payload>
    </Set>
</AssignMessage>

При просмотре изображения, содержащего знаки в журнале парковки, вы можете получить ответ, подобный следующему:

{
  "text": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "en",
          "description": "RESERVED\nVISITORPARKING\nPARKING\nONLY>\n$150 FINE\n",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 64,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 218
                  },
                  {
                      "x": 64,
                      "y": 218
                  }
              ]
          }
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "",
          "description": "RESERVED",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 243,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 84
                  },
                  {
                      "x": 243,
                      "y": 84
                  }
              ]
          }
      }
   ]
}

Действия

детектМетки

Обнаруживает и извлекает информацию о сущностях в указанном изображении. Обнаруженные сущности охватывают широкую группу категорий. Например, используйте это действие для идентификации объектов, местоположений, видов деятельности, видов животных, продуктов и многого другого.

Также обязательно ознакомьтесь с документацией по API Cloud Vision .

Параметры запроса

Параметр Описание Тип По умолчанию Необходимый
image_uri Источник изображения. Это может быть Интернет или Google Cloud Storage (формат: gs://bucketname/filename ). Если источником является Google Cloud Storage, файл изображения должен быть общедоступным. Нить Никто. Да.

Синтаксис

<Input><![CDATA[{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

Пример

В следующем примере действие расширения detectLabels отправляет указанное изображение в Vision API для анализа.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
}
]]></Input>

Ответ

Объект, содержащий массив labels , представляющих объекты, обнаруженные на изображении. Подробнее см. в разделе Обнаружение меток .

распознатьтекст

Обнаруживает и извлекает текст из указанного изображения.

Параметры запроса

Параметр Описание Тип По умолчанию Необходимый
image_uri Источник изображения. Это может быть Интернет или Google Cloud Storage (формат: gs://bucketname/filename ). Если источником является Google Cloud Storage, файл изображения должен быть общедоступным. Нить Никто. Да.

Синтаксис

<Input><![CDATA[
{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

Пример

В следующем примере действие расширения detectText отправляет указанное изображение в Vision API для анализа.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
}
]]></Input>

Ответ

Объект, содержащий text массив обнаруженного текста. Подробнее см. в разделе Определить метки .

Ссылка на конфигурацию

Используйте следующее при настройке и развертывании этого расширения для использования в API-прокси. Действия по настройке расширения с помощью консоли Apigee см. в разделе Добавление и настройка расширения .

Общие свойства расширения

Следующие свойства присутствуют для каждого расширения.

Свойство Описание По умолчанию Необходимый
name Имя, которое вы даете этой конфигурации расширения. Никто Да
packageName Имя пакета расширения, предоставленное Apigee Edge. Никто Да
version Номер версии пакета расширения, из которого вы настраиваете расширение. Никто Да
configuration Значение конфигурации, относящееся к добавляемому расширению. См. Свойства этого пакета расширения. Никто Да
,

Вы просматриваете документацию Apigee Edge .
Перейти к документации Apigee X.
info

Версия: 2.0.1

Находите содержание и текст на изображениях с помощью моделей машинного обучения.

Этот контент предоставляет справочную информацию по настройке и использованию этого расширения. Перед использованием этого расширения из API-прокси необходимо:

  1. Включите API Cloud Vision для вашей учетной записи сервиса.

  2. Если вы будете использовать облачное хранилище в качестве источника изображений, вам также потребуется предоставить этому расширению доступ к облачному хранилищу, как описано в справочнике по расширению Google Cloud Storage .

  3. Если у вас есть учетная запись службы с разрешением на Cloud Vision (и Cloud Storage, если вы его используете), используйте консоль GCP, чтобы сгенерировать ключ для учетной записи службы .

  4. Используйте содержимое полученного файла JSON-ключа при добавлении и настройке расширения с помощью справочника по конфигурации .

О Cloud Vision

API Google Cloud Vision использует модели машинного обучения для анализа изображений. Вы можете обучить модель для использования API или использовать встроенную модель .

Используя встроенную модель, Cloud Vision классифицирует изображения по таким категориям, как «небоскреб», «парусник», «лев» или «Эйфелева башня». Он обнаруживает объекты, лица, логотипы и достопримечательности на изображениях, а также находит содержащиеся на них слова.

Образцы

В следующих примерах показано, как настроить поддержку действий расширения Cloud Vision с помощью политики ExtensionCallout .

Обнаружение меток

В следующем примере действие расширения detectLabels получает изображение по image_uri и передает его в Cloud Vision API для анализа. API проверит изображение и определит, какие метки применяются к содержимому изображения.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Extension">
    <DisplayName>Cloud Vision Extension</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectLabels</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
    }
    ]]></Input>
    <Output>vision.labels.retrieved</Output>
</ConnectorCallout>

Следующая политика назначения сообщения использует значение переменной, хранящей ответ расширения, для назначения полезной нагрузки ответа.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Labels">
    <DisplayName>Get Image Labels</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.labels.retrieved}</Payload>
    </Set>
</AssignMessage>

Если у вас есть изображение городской местности с очень высоким зданием, вы можете получить ответ, подобный следующему:

{
  "labels": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/0j_s4",
          "locale": "",
          "description": "metropolitan area",
          "score": 0.9868549704551697,
          "confidence": 0,
          "topicality": 0.9868549704551697,
          "boundingPoly": null
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "/m/079cl",
          "locale": "",
          "description": "skyscraper",
          "score": 0.966157853603363,
          "confidence": 0,
          "topicality": 0.966157853603363,
          "boundingPoly": null
      }
  ]
}

Определить текст

В следующем примере действие расширений detectText получает изображение по image_uri и передает его в API Cloud Vision для анализа. API проверит изображение, идентифицируя текст на изображении.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Cloud-Vision-Text">
    <DisplayName>Cloud Vision Text</DisplayName>
    <Connector>cloud-vision-extension-example</Connector>
    <Action>detectText</Action>
    <Input><![CDATA[
    {
        "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
    }
    ]]></Input>
    <Output>vision.text.retrieved</Output>
</ConnectorCallout>

Следующая политика назначения сообщения использует значение переменной, хранящей ответ расширения, для назначения полезной нагрузки ответа.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Get-Image-Text">
    <DisplayName>Get Image Text</DisplayName>
    <AssignTo type="response" createNew="false"/>
    <Set>
        <Payload contentType="application/json">{vision.text.retrieved}</Payload>
    </Set>
</AssignMessage>

При просмотре изображения, содержащего знаки в журнале парковки, вы можете получить ответ, подобный следующему:

{
  "text": [
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "en",
          "description": "RESERVED\nVISITORPARKING\nPARKING\nONLY>\n$150 FINE\n",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 64,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 218
                  },
                  {
                      "x": 64,
                      "y": 218
                  }
              ]
          }
      },
      {
          "locations": [

          ],
          "properties": [

          ],
          "mid": "",
          "locale": "",
          "description": "RESERVED",
          "score": 0,
          "confidence": 0,
          "topicality": 0,
          "boundingPoly": {
              "vertices": [
                  {
                      "x": 243,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 56
                  },
                  {
                      "x": 378,
                      "y": 84
                  },
                  {
                      "x": 243,
                      "y": 84
                  }
              ]
          }
      }
   ]
}

Действия

детектМетки

Обнаруживает и извлекает информацию о сущностях в указанном изображении. Обнаруженные сущности охватывают широкую группу категорий. Например, используйте это действие для идентификации объектов, местоположений, видов деятельности, видов животных, продуктов и многого другого.

Также обязательно ознакомьтесь с документацией по API Cloud Vision .

Параметры запроса

Параметр Описание Тип По умолчанию Необходимый
image_uri Источник изображения. Это может быть Интернет или Google Cloud Storage (формат: gs://bucketname/filename ). Если источником является Google Cloud Storage, файл изображения должен быть общедоступным. Нить Никто. Да.

Синтаксис

<Input><![CDATA[{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

Пример

В следующем примере действие расширения detectLabels отправляет указанное изображение в Vision API для анализа.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/empire-state-building.jpg"
}
]]></Input>

Ответ

Объект, содержащий массив labels , представляющих объекты, обнаруженные на изображении. Подробнее см. в разделе Обнаружение меток .

распознатьтекст

Обнаруживает и извлекает текст из указанного изображения.

Параметры запроса

Параметр Описание Тип По умолчанию Необходимый
image_uri Источник изображения. Это может быть Интернет или Google Cloud Storage (формат: gs://bucketname/filename ). Если источником является Google Cloud Storage, файл изображения должен быть общедоступным. Нить Никто. Да.

Синтаксис

<Input><![CDATA[
{
    "image_uri" : "uri-of-image-to-analyze"
}
]]></Input>

Пример

В следующем примере действие расширения detectText отправляет указанное изображение в Vision API для анализа.

<Input><![CDATA[
{
    "image_uri" : "gs://cloud-vision-example/parking-signs1.jpg"
}
]]></Input>

Ответ

Объект, содержащий text массив обнаруженного текста. Подробнее см. в разделе Определить метки .

Ссылка на конфигурацию

Используйте следующее при настройке и развертывании этого расширения для использования в API-прокси. Действия по настройке расширения с помощью консоли Apigee см. в разделе Добавление и настройка расширения .

Общие свойства расширения

Следующие свойства присутствуют для каждого расширения.

Свойство Описание По умолчанию Необходимый
name Имя, которое вы даете этой конфигурации расширения. Никто Да
packageName Имя пакета расширения, предоставленное Apigee Edge. Никто Да
version Номер версии пакета расширения, из которого вы настраиваете расширение. Никто Да
configuration Значение конфигурации, относящееся к добавляемому расширению. См. Свойства этого пакета расширения. Никто Да