Squeak.ru - шаблоны программирования

Почему API видения google-cloud-python возвращает несколько аннотаций?

Я работаю с Google Cloud Vision API с Python
(https://googlecloudplatform.github.io/google-cloud-python/stable/vision-usage.html)

Но я не мог понять, почему результат аннотации одного изображения состоит из list из annotation.
документ говорит:

>>> from google.cloud import vision
>>> from google.cloud.vision.feature import Feature
>>> from google.cloud.vision.feature import FeatureTypes
>>> client = vision.Client()
>>> image = client.image(source_uri='gs://my-test-bucket/image.jpg')
>>> features = [Feature(FeatureTypes.FACE_DETECTION, 5),
...             Feature(FeatureTypes.LOGO_DETECTION, 3)]
>>> annotations = image.detect(features)
>>> len(annotations)
2
>>> for face in annotations[0].faces:
...     print(face.joy)
Likelihood.VERY_LIKELY
Likelihood.VERY_LIKELY
Likelihood.VERY_LIKELY
>>> for logo in annotations[0].logos:
...     print(logo.description)
'google'
'github'

Почему image.detect возвращает несколько аннотаций для одного изображения?
Это кажется ненужным, поскольку результаты обнаружения содержатся в каждом атрибуте (annotations[0].faces, annotations[0].logos и т. Д.).

И когда я пробую api со своим собственным изображением, он возвращает annotations длины 1.

Итак, мой вопрос:

  • Почему клиент api видения python возвращает несколько аннотаций для одного изображения?
  • Нужно ли мне разбирать все annotation в списке annotations?

Ответы:


1

В настоящее время API Google Cloud Vision предоставляет 10 различных аннотаций, которые можно применить к любому изображению. Например, среди 10 доступных аннотаций вы можете обнаружить:

  • Если на изображении есть узнаваемые логотипы.
  • Вы можете определить, есть ли на изображении какие-либо лица, и получить подробную информацию о каждом лице.
  • Вы можете узнать больше обо всех доступных аннотациях, начиная с здесь.

Итак, чтобы ответить на ваши вопросы:

  • API Vision вернет любые аннотации, которые вы запросите. Если вы попросите вернуть несколько аннотаций, он вернет несколько. Если вы запросите только одну аннотацию из 10, она вернет только одну. Пример кода Python, который вы цитируете в своем сообщении, запрашивает возврат двух аннотаций: FACE_DETECTION И LOGO_DETECTION, поэтому будут возвращены эти две и только эти две аннотации.
  • Вам нужно только проанализировать аннотации, которые вы хотите проанализировать. Поскольку каждая аннотация связана с расходами (цены см. На этой странице), я бы порекомендовал вам запрашивайте только те аннотации, результаты которых вы хотите увидеть, иначе это может обойтись дорого.

Обратите внимание, что при запуске примера Python, который вы цитируете в своем сообщении, len (annotations) вернет «1» независимо от того, сколько аннотаций вы выберете для обнаружения с помощью своего кода.

Также обратите внимание, что любые добавленные вами аннотации, которые не возвращают никаких значений, например, на изображении не обнаружены логотипы, ничего не вернут.

11.09.2017
Новые материалы

Угловая структура архитектуры
Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

«Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

Создайте API с помощью Python FastAPI
Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

Веселье с прокси-сервером JavaScript
Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...