画像およびビジュアルデータ処理のための PHP と Google Cloud Vision の統合

PHPz
リリース: 2023-06-25 10:30:01
オリジナル
1824 人が閲覧しました

PHP は、広く使用されているオープンソースのサーバー側プログラミング言語です。ウェブサイト開発における 2D グラフィックス処理および画像レンダリング技術として人気があります。画像およびビジュアル データの処理を実装するには、PHP とともに Google Cloud Vision API を使用できます。

Google Cloud Vision API は、開発者がさまざまなマシン ビジョン アプリケーションをより簡単に構築できるようにする柔軟なコンピューター ビジョン API です。画像タグ付け、顔認識、テキスト認識、画像検索、ロゴ認識などの機能をサポートしており、幅広い用途があります。

この記事では、PHP アプリケーションで Google Cloud Vision API を使用して、視覚データと画像をより適切に処理する方法について詳しく説明します。

ステップ 1: Google Cloud Platform アカウントとプロジェクトを作成する

Google Cloud Vision API を使用するには、Google Cloud Platform アカウントとプロジェクトを作成する必要があります。 Google Cloud Console (https://console.cloud.google.com/) にアクセスして、新しいプロジェクトを作成できます。コンソールの「API とサービス」セクションで、Google Cloud Vision API を有効にし、適切な認証情報を作成します。

ステップ 2: Google Cloud PHP クライアント ライブラリをインストールする

Google Cloud PHP クライアント ライブラリを使用すると、Google Cloud の API を簡単に操作できます。 Composer パッケージ マネージャーを通じてクライアント ライブラリをインストールできます。すばやく簡単にインストールするには、次のコマンドを実行します。

$ composer require google/cloud
ログイン後にコピー

ステップ 3: Google Cloud Vision API 認証情報を設定する

Google Cloud Vision API を使用する前に、API 認証情報を設定する必要があります。クラウドの認証と認可。次のコードを使用して API 認証情報を設定できます:

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

use GoogleCloudVisionV1ImageAnnotatorClient;

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

$client = new ImageAnnotatorClient();
?>
ログイン後にコピー

ステップ 4: Google Cloud Vision API を呼び出す

Google Cloud Vision API を使用する前に、処理する画像をアップロードする必要がありますGoogleクラウドストレージへ。 PHP のファイル アップロード機能を使用して、ファイルを Google Cloud Storage にアップロードできます。

<?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',
]);
?>
ログイン後にコピー

その後、Google Cloud Vision API を呼び出してこの画像を処理できます。ファイルのアップロードや画像の処理に毎回時間がかかることを防ぐために、処理された画像データを最初に Google Cloud Datastore に保存することを選択できます。これにより、画像処理の速度とパフォーマンスが向上します。

<?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);
?>
ログイン後にコピー

ステップ 5: Google Cloud Vision API の戻り結果を取得する

画像処理が完了したら、次のコードを使用して Google Cloud Vision API の戻り結果を取得し、印刷できます。 In Web アプリケーションへ:

<?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);

?>
ログイン後にコピー

上記のコードは、OCR 認識結果とイメージ タグを配列形式で返し、ユーザーが表示できるように Web アプリケーションにそれらを表示できます。

これまで、PHP を例として、Google Cloud Vision API を使用して画像およびビジュアル データ処理を実装する方法を詳しく紹介してきました。 Google Cloud Vision API と PHP の強力な機能の助けを借りて、大量のビジュアル データをより便利かつ効率的に処理し、Web アプリケーションにより豊かな機能とエクスペリエンスをもたらすことができます。

以上が画像およびビジュアルデータ処理のための PHP と Google Cloud Vision の統合の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!