bpocallaghan/google-cloud-vision-php

一个简单的用于Google Cloud Vision API的PHP库

dev-master 2022-11-29 20:28 UTC

This package is auto-updated.

Last update: 2024-09-29 05:29:15 UTC


README

概述

对图像执行标签检测、面部检测、标志检测、显式内容检测、地标检测、光学字符识别和网页检测。您可以在以下链接中了解更多关于Google Cloud Vision的信息 https://cloud.google.com/vision/

入门指南

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

安装

composer require bpocallaghan/google-cloud-vision-php

启用API

要开始使用Google Cloud Vision API,请按照以下说明启用API以供您的Google账户使用 https://cloud.google.com/vision/docs/before-you-begin

认证

您必须设置一个API密钥以验证您的请求。请按照以下说明在Google Cloud Platform控制台上为您的项目设置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 image请求

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

您可以通过在annotateImageRequest上调用 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)
    }
  ]
}