fmujie/baiduface

与百度AI开放平台集成的人脸识别API

1.1.1 2020-05-10 09:48 UTC

README

包含百度AI平台的人脸UID搜索功能、人脸注册、人脸删除(基于已创建人脸库)

安装

  1. 安装包文件

    $ composer require fmujie/baiduface

配置

  1. 注册 ServiceProvider

    Fmujie\BaiduFace\BaiduFaceServiceProvider::class,
  2. 创建配置文件:

    php artisan vendor:publish

    通常需要选择publish哪个服务,因为没有带参数,选择编号 [n ]

    [n ] Provider: Fmujie\BaiduFace\BaiduFaceServiceProvider

    执行命令后,会在 config 目录下生成本扩展配置文件:laravel-baidu-face.php

  3. .env 文件中增加如下配置:

    • BAIDU_FACE_APP_ID:百度人脸识别AppId

    • BAIDU_FACE_API_KEY:百度人脸识别ApiKey

    • BAIDU_FACE_SECRET_KEY:百度人脸识别SecretKey

使用

  1. 人脸UID搜索(仅列出必须)

    Fmujie\BaiduFace\BaiduFaceApi::searchFaceUid($image, $groupIdList = null, $user_id = null);

    默认参数

    searchFaceUid($image, $groupIdList = null, $user_id = null, $imageType = 'BASE64', $imgIsBase64 = false, $max_face_num = '1', $match_threshold = '80', $quality_control = 'NONE', $liveness_control = 'NONE')

    接口字段:

    接口参数字段与原返回字段详细见 百度人脸识别-人脸搜索官方文档.

    调用示例

    <?php
    
    namespace App\Http\Controllers\Api;
    
    use Illuminate\Http\Request;
    use App\Http\Controllers\Controller;
    use Fmujie\BaiduFace\BaiduFaceApi;
    
    class TestController extends Controller
    {
        public function imgTest()
        {
            $image = Storage::get('public/example.jpg');
            $res = BaiduFaceApi::searchFaceUid($image, 'xxx', 'xxx');
            return $res;
        }
        
        public function UrlTest()
        {
            $image = 'https://dss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2534506313,1688529724&fm=26&gp=0.jpg';
            $res = BaiduFaceApi::searchFaceUid($image, 'xxx', 'xxx', 'URL');
            return $res;
        }
        
        public function base64()
        {
            $image = Storage::get('public/example.jpg');
            $image = base64_encode($image);
            $res = BaiduFaceApi::searchFaceUid($image, 'xxx', 'xxx');
            return $res;
        }
        
        public function faceToken()
        {
            $image = 'a3e58f1dfe51db52faba030318786c9d';
            $res = BaiduFaceApi::searchFaceUid($image, 'xxx', 'xxx', 'FACE_TOKEN');
            return $res;
    	}
    }

    调用成功返回示例

    {
    	"code": 1,
    	"status": "success",
    	"msg": "人脸Uid搜索成功",
    	"score": 96.488388061523,
    	"face_token": "xxx"
    }
    {
    	"code": 0,
    	"status": "error",
    	"msg": "人脸Uid搜索失败误,错误码:222202,错误详情信息:pic not has face",
    	"score": null,
    	"face_token": null
    }
    {
    	"code": 1,
    	"status": "success",
    	"msg": "人脸Uid搜索成功",
    	"score": 96.488388061523,
    	"face_token": "XXX"
    }
    {
    	"code": 1,
    	"status": "success",
    	"msg": "人脸Uid搜索成功",
    	"score": 96.488388061523,
    	"face_token": "xxx"
    }
  2. 人脸注册(仅列出必须)

    Fmujie\BaiduFace\BaiduFaceApi::BaiduFaceApi::faceRegistration($image, 'test', '181116', 'BASE64', false, 'APPEND');

    默认参数

    faceRegistration($image, $groupId = null, $userId = null, $imageType = 'BASE64', $imgIsBase64 = false, $action_type = 'APPEND', $user_info = '', $quality_control = 'NONE', $liveness_control = 'NONE')

    接口字段:

  3. 人脸删除

    Fmujie\BaiduFace\BaiduFaceApi::BaiduFaceApi::faceDelete($userId, $groupId, $faceToken);

    接口字段:

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。