#google-cloud-platform #google-cloud-vision #google-vision
#google-облачная платформа #google-cloud-vision #google-vision
Вопрос:
Я отправляю подобные запросы веб-обнаружения в API Google Vision.
{
"requests": [
{
"image": {
"content": "<base 64 encoded image>"
},
"features": [
{
"maxResults": 50,
"type": "WEB_DETECTION"
}
]
}
]
}
Запросы отправляются на https://vision.googleapis.com/v1/images:annotate?key=<my key>
.
Часть ответа, которая мне нужна, — это pagesWithMatchingImages, поэтому я могу видеть, на каких страницах есть данное изображение. Это работает для большинства изображений, которые я пробовал, но не для изображений, содержащих текст. Если изображение является обычным логотипом, который содержит текст, например, тогда API не включает pagesWithMatchingImages в ответ.
Как я могу получить список страниц с совпадающими изображениями для изображений, содержащих текст?
Вот несколько примеров изображений, которые используются на многих веб-страницах, но не имеют pagesWithMatchingImages в ответе API:
Ответ №1:
Проблема, с которой вы сталкиваетесь с функцией веб-обнаружения Google Vision API, похоже, является проблемой, обнаруженной командой Google Vision API, они, похоже, изучают ее подробнее и опубликуют обновления в общедоступном сообщении отслеживания проблем.
Одна из причин, по которой функция WEB_DETECTION не отвечает с помощью pagesWithMatchingImages, по-видимому, связана с прозрачностью изображений PNG. Добавление белого фона может помочь функции WEB_DETECTION в соответствии с сообщением, но не гарантирует точность ответа
Общедоступный трекер проблем используется для сообщения об ошибках и запросах функций облачных продуктов Google. Указание на то, что вы столкнулись с той же проблемой, может помочь повысить ее видимость и ускорить решение.
Комментарии:
1. Этот запрос просит Google проанализировать текст, что он может сделать, но для меня это бесполезно. Нужные мне данные — это список страниц с совпадающими изображениями (pagesWithMatchingImages). Это поле отсутствует в ответе API.
2. Извините за мое непонимание вашего использования case, я отредактирую ответ на тот, который подходит для вашего случая.
3. Пожалуйста, прочитайте мой первоначальный вопрос еще раз. Я могу заставить API работать, только если логотип не содержит текста. Мне это нужно для работы с текстом в логотипе или без него.
4. Прозрачный фон — интересная идея. Я провел некоторое тестирование с логотипами, у которых нет прозрачного фона, и я вижу те же результаты. Логотипы, содержащие текст (Amazon, FedEx и т. Д.), Неизменно приводят к тому, что Google пропускает страницы с совпадающими изображениями из ответа, независимо от того, прозрачны они или нет. Если я использую API Bing с теми же изображениями, он возвращает нужные мне результаты. Итак, хотя я бы предпочел, чтобы это работало с Google, лучшим решением может быть использование Bing.
5. Я изменил свой предыдущий ответ, чтобы было ясно, что проблема, с которой вы столкнулись, была обнаружена командой Google Vision API, и они работают над этим, если у всех остальных такая же проблема, они могут обратиться к общедоступной ветке отслеживания проблем и начать получать уведомления о ее разрешении.
Ответ №2:
Вы можете попробовать добавить LOGO_DETECTION
тип в разделе функции.
{
"requests": [
{
"image": {
"content": "<base 64 encoded image>"
},
"features": [
{
"maxResults": 50,
"type": "WEB_DETECTION"
}
{
"type": "LOGO_DETECTION"
}
]
}
]
}
Комментарии:
1. Я попробовал это, и это не помогло. Вот пример изображения, с которым вы можете поэкспериментировать: cloudboost.io/images/adobe.png
2. Если вы имеете дело с логотипами, я предлагаю вместо этого использовать функцию LOGO_DETECTION. Я изменил свой первоначальный ответ, чтобы вы тоже могли его попробовать.
3. LOGO_DETECTION отлично справляется с идентификацией логотипа, но это не то, что мне нужно. Он по-прежнему не дает мне список веб-страниц, на которых используется логотип (pagesWithMatchingImages).