edo1z blog

プログラミングなどに関するブログです

Google Cloud VisionでOCRする

CLOUD VISION API

PHP用のライブラリを使ってみる

Cloud Vision API Client Libraries (APIリファレンス)Google\Cloud\Vision\VisionClient

$ composer require google/cloud $ gcloud auth application-default login $ vim cv.php $ php cv.php

サンプルコード

cv.php

<?php
require __DIR__ . '/vendor/autoload.php';
use Google\Cloud\Vision\VisionClient;

$projectId = 'hoge-151111';
$vision = new VisionClient([
    'projectId' => $projectId
]);

$file = __DIR__ . '/res/ocr_test.png';
$img_res = fopen($file, 'r');
$image = $vision->image($img_res, ['text']);
$result = $vision->annotate($image);

foreach((array) $result->text() as $txt){
    print($txt->description().PHP_EOL);
}

gcloudの設定がうまくいかなかった(プロジェクト指定ができなかった)ので、サービスアカウントを作成して、ダウンロードしたjsonファイルを下記のように設定したらできた。

$vision = new VisionClient([
    'projectId' => $projectId,
    'keyFilePath' => __DIR__.DS.'hoge.json'
]);