Я использую GCP Cloud Vision API с Python для получения некоторой информации из изображений. В частности, я отправляю фотографию продукта в этот API и извлекаю связанные с ним веб-объекты; Одним из них является почти всегда бренд.
Мой основной скрипт Python, который выполняет эту работу, выглядит следующим образом:
import io
from google.cloud import vision
from google.cloud.vision import types
import os
import cv2
import numpy as np
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/Users/User/PycharmProjects/Project_name.json"
def detect_text(file):
client = vision.ImageAnnotatorClient()
with io.open(file, 'rb') as image_file:
content = image_file.read()
image = types.Image(content=content)
web_detection = client.web_detection(image=image).web_detection
print(web_detection)
file_name = "/Users/User/Desktop/Image.jpg"
img = cv2.imread(file_name)
detect_text(file_name)
Файл Project_name.json
содержит некоторые учетные данные для авторизации, чтобы я мог иметь доступ к клиенту API Google Cloud.
Я хочу сделать то же самое с PHP. По этой причине я написал следующий PHP-скрипт:
<?php
namespace Google\Cloud\Samples\Vision;
use Google\Cloud\Vision\V1\ImageAnnotatorClient;
function detect_web($path)
{
$imageAnnotator = new ImageAnnotatorClient();
$image = file_get_contents($path);
$response = $imageAnnotator->webDetection($image);
$web = $response->getWebDetection();
print($web);
}
$path = '/Users/User/Desktop/Image.jpg';
detect_web($path);
?>
Но когда я запускаю это, я получаю следующую ошибку:
Fatal error: Uncaught Error: Class 'Google\Cloud\Vision\V1\ImageAnnotatorClient' not found in /opt/lampp/htdocs/index.php:12 Stack trace: #0 /opt/lampp/htdocs/index.php(26): Google\Cloud\Samples\Vision\detect_web('/Users/User...') #1 {main} thrown in /opt/lampp/htdocs/index.php on line 12
Очевидно, что эта ошибка появляется, потому что (прежде всего) я не предоставил учетные данные авторизации Google, как я делал в Python выше (os.environ["GOOGLE_APPLICATION_CREDENTIALS"]="/Users/User/PycharmProjects/Project_name.json"
).
Что я должен сделать, чтобы получить соответствующую библиотеку Google и получить к ней доступ через мой PHP-скрипт, чтобы получить тот же результат, что и в моем Python-скрипте?