Кадрирование изображения с соотношением сторон не учитывает контекст - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь обрезать изображение с помощью Google Vision API в php. API возвращает наилучший возможный урожай, без учета соотношения сторон Я отправляю.

Вот что у меня есть:

    $imageAnnotator = new ImageAnnotatorClient();

    $image = file_get_contents(storage_path('test.jpg'));
    $context = new \Google\Cloud\Vision\V1\ImageContext();
    $cropHintsParams = new \Google\Cloud\Vision\V1\CropHintsParams();
    $cropHintsParams->setAspectRatios([floatval(1)]);
    $context->setCropHintsParams($cropHintsParams);

    $response = $imageAnnotator->cropHintsDetection($image, [$context]);
    $annotations = $response->getCropHintsAnnotation();

Есть идеи, что с этим не так?

Пример документации php не предоставляет никакого соотношения сторон ... https://cloud.google.com/vision/docs/detecting-crop-hints

Заранее спасибо

1 Ответ

0 голосов
/ 31 марта 2020

Хорошо, после 2 часов глубокого погружения в Google libs получается, что imageContext должен быть представлен в ассоциативном массиве, как показано ниже:

$response = $imageAnnotator->cropHintsDetection($im, ['imageContext' => $context]);

Надеюсь, это спасет будущее кто-нибудь когда-нибудь:)

...