clickandmortar/rekognition-php

简单易用的 AWS Rekognition PHP 库

v0.2 2019-02-04 15:41 UTC

This package is auto-updated.

Last update: 2024-09-08 06:42:24 UTC


README

Rekognition PHP Logo

Rekognition PHP - C& M

简单易用的 AWS Rekognition PHP 库。

CircleCI

Rekognition PHP 允许在图像中检测

检测图像中提供的输入(JPEG 或 PNG)中的真实世界实体实例。这包括像花、树和桌子这样的物体;像婚礼、毕业典礼和生日派对这样的事件;以及像风景、傍晚和自然这样的概念。

检测输入图像中的文本并将其转换为机器可读文本。

安装

composer require clickandmortar/rekognition-php

配置

配置凭证

在开始使用 rekognition-php 之前,设置凭证以向 Amazon Web Services 发送请求

用法

以下代码将允许检索前一张图片的输出

<?php

use ClickAndMortar\Rekognition\Service\DetectService;

require 'vendor/autoload.php';

$detectService = new DetectService();

$url = 'https://raw.githubusercontent.com/ClickAndMortar/rekognition-php/master/img/tshirt.png';
$rekognitionImage = $detectService->detectFromUrl($url);
$minimumConfidence = 80;

print 'Labels:' . PHP_EOL;
foreach ($rekognitionImage->getLabels($minimumConfidence) as $label) {
    print $label;
}

print 'Texts:' . PHP_EOL;
foreach ($rekognitionImage->getTexts($minimumConfidence) as $text) {
    print $text;
}

如果

$url = 'https://raw.githubusercontent.com/ClickAndMortar/rekognition-php/master/img/tshirt.png';
$rekognitionImage = $detectService->detectFromUrl($url);

被替换为

$filename = 'img/tshirt.png';
$handle = fopen($filename, 'r');
$image = fread($handle, filesize($filename));
fclose($handle);

$rekognitionImage = $detectService->detect($image);

$filename = 'img/tshirt.png';
$handle = fopen($filename, 'r');
$image = fread($handle, filesize($filename));
fclose($handle);

$base64image = base64_encode($image);
$rekognitionImage = $detectService->detectFromBase64($base64image);

高级配置(可选)

配置 Rekognition 客户端选项

配置 Rekognition 客户端选项是可选的,因为如果未设置以下方法,将使用默认值。

区域版本 可以使用环境变量 AWS_REGIONAWS_REKOGNITION_VERSION 进行配置。

还可以将这些选项传递给 DetectService 构造函数

$detectService = new DetectService([
    'region' => 'eu-west-1',
    'version' => '2016-06-27',
]);

测试

运行测试

vendor/bin/phpunit

Docker

安装

docker run --rm -it -v $PWD:/app composer install

运行

创建 main.php 并从 用法 中获取代码。

docker run --rm -it -e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" -e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" -v "$PWD":/app -w /app php:7.1-cli php main.php

运行测试

docker run --rm -it -e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" -e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" -v "$PWD":/app -w /app php:7.1-cli vendor/bin/phpunit