wapnen/google-cloud-vision-php

一个简单的用于Google云视觉API的PHP库

dev-master 2019-02-26 15:01 UTC

This package is auto-updated.

Last update: 2024-09-27 04:04:18 UTC


README

概述

该库可以在图像上执行标签检测、人脸检测、标志检测、内容检测、地标检测、光学字符识别和网络检测。您可以在此处了解有关Google云视觉的更多信息 https://cloud.google.com/vision/

入门

要使用此API,您需要一个Google账户,如果您还没有Google账户,请前往那里创建一个。

安装

composer require wapnen/google-cloud-vision-php

启用API

要开始使用Google云视觉API,请按照此处说明为您的Google账户启用API https://cloud.google.com/vision/docs/before-you-begin

身份验证

您必须设置一个API密钥以验证您的请求。请按照此处说明在Google云平台控制台上为您的项目设置API密钥 https://support.google.com/cloud/answer/6158862?hl=en

使用

<?php
include "vendor/autoload.php";
use GoogleCloudVision\GoogleCloudVision;
use GoogleCloudVision\Request\AnnotateImageRequest;
use GoogleCloudVision\Request\Request;


$annotateImageRequest1 = new AnnotateImageRequest();
$annotateImageRequest1->setImageUri("https://cdn.pixabay.com/photo/2016/02/19/11/25/supreme-court-building-1209701_960_720.jpg");
$annotateImageRequest1->setFeature('IMAGE_PROPERTIES');
$annotateImageRequest1->setFeature('LABEL_DETECTION');
$annotateImageRequest1->setFeature('WEB_DETECTION');

$gcvRequest = new GoogleCloudVision([$annotateImageRequest1], "Your_api_key");
$response = $gcvRequest->annotate();

echo json_encode($response);



 ?>

注意:您可以为请求对象创建多达16个Annotate图像请求

函数setImageUri();接受Google云存储图像位置或公开访问的图像URL。或者,您可以使用setImage();,它接受base64编码的图像字符串。

您可以通过调用setFeature();函数在annotateImageRequest上设置与请求对象一起发送的任何可用功能;参数可以是以下枚举值之一:TYPE_UNSPECIFIED、FACE_DETECTION、LANDMARK_DETECTION、LOGO_DETECTION、LABEL_DETECTION、TEXT_DETECTION、DOCUMENT_TEXT_DETECTION、SAFE_SEARCH_DETECTION、IMAGE_PROPERTIES、CROP_HINTS、WEB_DETECTION。

可选地,您可以像这样为每个annotateImageRequest对象设置图像上下文

$annotateImageRequest1 = new AnnotateImageRequest()
$annotateImageRequest1->setImageContext();
$annotateImageRequest1->getImageContext()->setCropHintsParams([1.333]); //array
$annotateImageRequest1->getImageContext()->setWebDetectionParams(false);  //boolean
$annotateImageRequest1->getImageContext()->setLanguageHints([]); //array

最后,GoogleCloudVision请求对象将AnnotateImageRequest对象数组作为第一个参数,API密钥作为第二个参数

响应对象

如果成功,您将收到以下格式的JSON对象响应;

{
  "responses": [
    {
      object(AnnotateImageResponse)
    }
  ]
}