Rumah >pembangunan bahagian belakang >tutorial php >Penyepaduan PHP dan Google Cloud Vision untuk pemprosesan data imej dan visual
PHP ialah bahasa pengaturcaraan bahagian pelayan sumber terbuka yang digunakan secara meluas. Ia popular untuk pemprosesan grafik 2D dan teknologi pemaparan imej dalam pembangunan laman web. Untuk melaksanakan pemprosesan data imej dan visual, kami boleh menggunakan API Google Cloud Vision bersama-sama dengan PHP.
Google Cloud Vision API ialah API penglihatan komputer fleksibel yang membantu pembangun membina pelbagai aplikasi penglihatan mesin dengan lebih mudah. Ia menyokong penandaan imej, pengecaman muka, pengecaman teks, carian imej, pengecaman logo dan fungsi lain, dan mempunyai pelbagai aplikasi.
Dalam artikel ini, kami akan mendalami cara menggunakan API Google Cloud Vision dalam aplikasi PHP kami untuk mengendalikan data dan imej penglihatan kami dengan lebih baik.
Langkah 1: Buat akaun dan projek Google Cloud Platform
Untuk menggunakan API Google Cloud Vision, kami perlu membuat akaun dan projek Google Cloud Platform. Anda boleh melawati Google Cloud Console (https://console.cloud.google.com/) dan membuat projek baharu. Dalam bahagian API dan Perkhidmatan konsol, dayakan API Google Cloud Vision dan buat bukti kelayakan yang sesuai.
Langkah 2: Pasang pustaka klien Google Cloud PHP
Pustaka klien Google Cloud PHP membolehkan kami berinteraksi dengan mudah dengan API Google Cloud. Kami boleh memasang perpustakaan pelanggan melalui pengurus pakej Komposer. Pemasangan adalah pantas dan mudah dengan melaksanakan arahan berikut:
$ composer require google/cloud
Langkah Tiga: Tetapkan Bukti Kelayakan API Google Cloud Vision
Sebelum menggunakan API Google Cloud Vision, kami perlu menetapkan bukti kelayakan API untuk pengesahan dan kebenaran dalam awan. Kami boleh menetapkan bukti kelayakan API menggunakan kod berikut:
<?php require __DIR__ . '/vendor/autoload.php'; use GoogleCloudVisionV1ImageAnnotatorClient; // 引入GCP凭据 putenv('GOOGLE_APPLICATION_CREDENTIALS=/path/to/your/credentials.json'); $client = new ImageAnnotatorClient(); ?>
Langkah 4: Panggil Google Cloud Vision API
Sebelum menggunakan Google Cloud Vision API, kami perlu memuat naik imej untuk diproses ke Google Cloud Storage. Kami boleh memuat naik fail ke dalam Google Cloud Storage menggunakan fungsi muat naik fail PHP.
<?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', ]); ?>
Kemudian, kita boleh memanggil API Google Cloud Vision untuk memproses imej ini. Untuk mengelakkan memuat naik fail dan memproses imej daripada mengambil banyak masa setiap kali, kami boleh memilih untuk menyimpan data imej yang diproses dalam Google Cloud Datastore terlebih dahulu, yang boleh meningkatkan kelajuan dan prestasi pemprosesan imej.
<?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); ?>
Langkah 5: Dapatkan hasil pulangan Google Cloud Vision API
Selepas melengkapkan pemprosesan imej, kami boleh menggunakan kod berikut untuk mendapatkan hasil pulangan Google Cloud Vision API dan mencetaknya ke aplikasi web kami:
<?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); ?>
Kod di atas akan mengembalikan hasil pengecaman OCR dan teg imej dalam bentuk tatasusunan, dan kami boleh memaparkannya dalam aplikasi web untuk dilihat oleh pengguna.
Pada ketika ini, kami mengambil PHP sebagai contoh untuk memperkenalkan secara terperinci cara menggunakan API Google Cloud Vision untuk melaksanakan pemprosesan data imej dan visual. Dengan bantuan fungsi hebat Google Cloud Vision API dan PHP, kami boleh memproses sejumlah besar data visual dengan lebih mudah dan cekap, membawakan fungsi dan pengalaman yang lebih kaya kepada aplikasi web kami.
Atas ialah kandungan terperinci Penyepaduan PHP dan Google Cloud Vision untuk pemprosesan data imej dan visual. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!