ОК, так что для тех, кому все еще может понадобиться это, вот рабочий пример
use Google\Cloud\Vision\Image;
use Google\Cloud\Vision\VisionClient;
$imageResource = fopen(__DIR__ .'/'. $fileIMG, 'r');
$thePic = new Image($imageResource, [
'LABEL_DETECTION',
'LOGO_DETECTION',
'TEXT_DETECTION'
], [
'maxResults' => [
'LABEL_DETECTION' => 20,
'LOGO_DETECTION' => 20,
'TEXT_DETECTION' => 20
],
'imageContext' => []
]);
$vision = new VisionClient();
$result = $vision->annotate($thePic);
$finalLabels = array();
// do the same for $results->text(), $results->logos()
if($result->labels()){
foreach ($result->labels() as $key => $annonObj) {
$tmp = $annonObj->info();
$finalLabels[] = $tmp['description'];
}
}
Но ... как говорится в официальной документации
- Обратите внимание, что этот клиент будет устаревшим в нашем следующем выпуске. В порядке
- , чтобы получать последние функции и обновления, пожалуйста, примите
- время, чтобы ознакомиться с {@see Google \ Cloud \ Vision \ V1 \ ImageAnnotatorClient}.
Так что мне все еще нужен способ сделать это с помощью класса ImageAnnotatorClient ... есть идеи у кого-нибудь?