zkl / baidu-ai-php
baidu pulic ai php sdk
1.0
2020-12-21 02:17 UTC
Requires
- php: >=7.0.0
This package is not auto-updated.
Last update: 2024-10-08 18:45:10 UTC
README
百度AI开放平台 PHP SDK composer安装
百度AI sdk 文档地址https://ai.baidu.com/ai-doc/FACE/zk37c1qrv 使用教程和百度的文档一样,把原本的引入方式(require_once 'AipFace.php') 改成composer的命名空间(use baidu\ai\AipFace)引入
composer 安装: composer require zkl/baidu-ai-php
使用示例(人脸对比):
use baidu\ai\AipFace;
use app\common\model\FaceContrastModel;
use think\facade\Config;
class BaiduAiFaceService
{
private static $config = [];
public function __construct()
{
self::$config = Config::get('baidu.ai');
}
/**
* 人脸对比接口
* https://ai.baidu.com/ai-doc/FACE/zk37c1qrv#%E4%BA%BA%E8%84%B8%E5%AF%B9%E6%AF%94
* @param string $image1 通常为手机、相机拍摄的人像图片
* @param string $image2 证件照片:如拍摄的身份证、工卡、护照、学生证等证件图片
* @return float
*/
public static function getFaceContrast(string $image1, string $image2): float
{
$image1 = './storage/upload/my/live.jpg';
$image2 = './storage/upload/my/card.jpg';
$client = new AipFace(self::$config['app_id'], self::$config['api_key'], self::$config['secret_key']);
$result = $client->match(array(
array(
'image' => base64_encode(file_get_contents($image1)),
'image_type' => 'BASE64',
'face_type' => 'LIVE'
),
array(
'image' => base64_encode(file_get_contents($image2)),
'image_type' => 'BASE64',
'face_type' => 'CERT'
),
));
// $result = '{"error_code":0,"error_msg":"SUCCESS","log_id":3575942510189,"timestamp":1608174532,"cached":0,"result":{"score":91.55084229,"face_list":[{"face_token":"68006dd55d9b84a57532f9ae0b876f9a"},{"face_token":"cc8754354c091eb5bde8e43ae22eeee4"}]}}';
// $result = json_decode($result,true);
if ($result['error_code'] == 0) {
$score = round($result['result']['score'], 2);
//插入记录
FaceContrastModel::insert(['live_image' => $result['result']['face_list']['0']['face_token'], 'card_image' => $result['result']['face_list']['1']['face_token'], 'sorce' => $score]);
} else {
$score = 0;
}
return $score;
}
}