Heim  >  Artikel  >  Backend-Entwicklung  >  PHP- und Google Cloud Vision-Integration für Bild- und visuelle Datenverarbeitung

PHP- und Google Cloud Vision-Integration für Bild- und visuelle Datenverarbeitung

PHPz
PHPzOriginal
2023-06-25 10:25:211904Durchsuche

PHP ist eine weit verbreitete serverseitige Open-Source-Programmiersprache. Es ist beliebt für die 2D-Grafikverarbeitung und Bildwiedergabetechnologie bei der Website-Entwicklung. Um die Verarbeitung von Bild- und visuellen Daten zu implementieren, können wir die Google Cloud Vision API zusammen mit PHP verwenden.

Google Cloud Vision API ist eine flexible Computer-Vision-API, die Entwicklern dabei hilft, verschiedene Machine-Vision-Anwendungen einfacher zu erstellen. Es unterstützt Bild-Tagging, Gesichtserkennung, Texterkennung, Bildsuche, Logo-Erkennung und andere Funktionen und verfügt über ein breites Anwendungsspektrum.

In diesem Artikel werden wir uns eingehend mit der Verwendung der Google Cloud Vision API in unseren PHP-Anwendungen befassen, um unsere Sehdaten und Bilder besser verarbeiten zu können.

Schritt 1: Erstellen Sie ein Google Cloud Platform-Konto und ein Projekt.

Um die Google Cloud Vision API verwenden zu können, müssen wir ein Google Cloud Platform-Konto und ein Projekt erstellen. Sie können die Google Cloud Console (https://console.cloud.google.com/) besuchen und ein neues Projekt erstellen. Aktivieren Sie im Abschnitt „APIs und Dienste“ der Konsole die Google Cloud Vision API und erstellen Sie die entsprechenden Anmeldeinformationen.

Schritt 2: Installieren Sie die Google Cloud PHP-Clientbibliothek

Die Google Cloud PHP-Clientbibliothek ermöglicht uns eine einfache Interaktion mit der Google Cloud-API. Wir können die Client-Bibliothek über den Composer-Paketmanager installieren. Die Installation ist schnell und einfach, indem Sie den folgenden Befehl ausführen:

$ composer require google/cloud

Schritt drei: Google Cloud Vision API-Anmeldeinformationen festlegen

Bevor wir die Google Cloud Vision API verwenden, müssen wir die API-Anmeldeinformationen für die Authentifizierung und Autorisierung in der Cloud festlegen. Wir können die API-Anmeldeinformationen mit dem folgenden Code festlegen:

<?php
require __DIR__ . '/vendor/autoload.php';

use GoogleCloudVisionV1ImageAnnotatorClient;

// 引入GCP凭据
putenv('GOOGLE_APPLICATION_CREDENTIALS=/path/to/your/credentials.json');

$client = new ImageAnnotatorClient();
?>

Schritt 4: Aufrufen der Google Cloud Vision API

Bevor wir die Google Cloud Vision API verwenden, müssen wir die zu verarbeitenden Bilder in Google Cloud Storage hochladen. Mit der Datei-Upload-Funktion von PHP können wir Dateien in Google Cloud Storage hochladen.

<?php
require __DIR__ . '/vendor/autoload.php';

use GoogleCloudStorageStorageClient;

$storage = new StorageClient([
    'projectId' => 'my-project-id'
]);
$bucketName = 'my-bucket-name';
$bucket = $storage->bucket($bucketName);

$source = fopen('/path/to/local/image.jpg', 'r');
$bucket->upload($source, [
    'name' => 'image.jpg',
]);
?>

Dann können wir die Google Cloud Vision API aufrufen, um dieses Bild zu verarbeiten. Um zu verhindern, dass das Hochladen von Dateien und das Verarbeiten von Bildern jedes Mal viel Zeit in Anspruch nimmt, können wir die verarbeiteten Bilddaten zuerst im Google Cloud Datastore speichern, was die Geschwindigkeit und Leistung der Bildverarbeitung verbessern kann.

<?php
require __DIR__ . '/vendor/autoload.php';

use GoogleCloudVisionV1ImageAnnotatorClient;
use GoogleCloudDatastoreDatastoreClient;

$datastore = new DatastoreClient([
    'projectId' => 'my-project-id'
]);
$bucketName = 'my-bucket-name';
$imageName = 'image.jpg';

$imageAnnotator = new ImageAnnotatorClient();
$image = file_get_contents(sprintf('gs://%s/%s', $bucketName, $imageName));
$response = $imageAnnotator->annotateImage([
    'image' => [
        'source' => [
            'gcsImageUri' => sprintf('gs://%s/%s', $bucketName, $imageName),
        ],
    ],
    'features' => [
        ['type' => 'TEXT_DETECTION'],
        ['type' => 'LABEL_DETECTION'],
    ],
]);
$ocrResult = $response->getTextAnnotations()[0]->getDescription();

$key = $datastore->key('ImageResults', sprintf('image_%s', $imageName));
$task = $datastore->entity($key, [
    'ocrResult' => $ocrResult,
]);
$datastore->insert($task);
?>

Schritt 5: Rückgabeergebnis der Google Cloud Vision API abrufen

Nach Abschluss der Bildverarbeitung können wir den folgenden Code verwenden, um das Rückgabeergebnis der Google Cloud Vision API abzurufen und in unserer Webanwendung auszudrucken:

<?php
require __DIR__ . '/vendor/autoload.php';

use GoogleCloudDatastoreDatastoreClient;

$datastore = new DatastoreClient([
    'projectId' => 'my-project-id'
]);
$bucketName = 'my-bucket-name';
$imageName = 'image.jpg';

$key = $datastore->key('ImageResults', sprintf('image_%s', $imageName));
$result = $datastore->lookup($key);

?>

Der obige Code gibt die OCR-Erkennungsergebnisse und Bild-Tags in Array-Form zurück und wir können sie in der Webanwendung anzeigen, damit Benutzer sie anzeigen können.

An dieser Stelle nehmen wir PHP als Beispiel, um detailliert vorzustellen, wie die Google Cloud Vision API zur Implementierung der Bild- und visuellen Datenverarbeitung verwendet wird. Mithilfe der leistungsstarken Funktionen der Google Cloud Vision API und PHP können wir große Mengen visueller Daten bequemer und effizienter verarbeiten und unseren Webanwendungen umfassendere Funktionen und Erlebnisse verleihen.

Das obige ist der detaillierte Inhalt vonPHP- und Google Cloud Vision-Integration für Bild- und visuelle Datenverarbeitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn