Laravel 腾讯云 人脸静态活体检测(高精度版)/人脸比对
在项目根目录下composer加载
composer require tencentcloud/tencentcloud-sdk-php
控制器代码
<?php
//命名空间自己改一下
namespace App\Http\Controllers\Wechat;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
//引用腾讯sdk
use TencentCloud\Common\Credential;
use TencentCloud\Common\Profile\ClientProfile;
use TencentCloud\Common\Profile\HttpProfile;
use TencentCloud\Common\Exception\TencentCloudSDKException;
use TencentCloud\Iai\V20200303\IaiClient;
use TencentCloud\Iai\V20200303\Models\DetectLiveFaceAccurateRequest;
use TencentCloud\Iai\V20200303\Models\CompareFaceRequest;
class Server extends Controller
{
/**
* 腾讯 静态人脸活体验证
* @param Request $request
* @return mixed
*/
public function DetectLiveFaceAccurate(Request $request)
{
try {
//填写腾讯云的 SecretId SecretKey
$cred = new Credential("SecretId", "SecretKey");
$httpProfile = new HttpProfile();
$httpProfile->setEndpoint("iai.tencentcloudapi.com");
$clientProfile = new ClientProfile();
$clientProfile->setHttpProfile($httpProfile);
$client = new IaiClient($cred, "ap-guangzhou", $clientProfile);
$req = new DetectLiveFaceAccurateRequest();
//要检测的图片(仅限一张)
$params = array(
"Url" => $request['url']
);
$req->fromJsonString(json_encode($params));
$resp = $client->DetectLiveFaceAccurate($req);
return $resp->toJsonString();
}
catch(TencentCloudSDKException $e) {
return $e;
}
}
/**
* 腾讯 人脸比对
* @param Request $request
*/
public function CompareFace(Request $request)
{
try {
//填写腾讯云的 SecretId SecretKey
$cred = new Credential("SecretId", "SecretKey");
$httpProfile = new HttpProfile();
$httpProfile->setEndpoint("iai.tencentcloudapi.com");
$clientProfile = new ClientProfile();
$clientProfile->setHttpProfile($httpProfile);
$client = new IaiClient($cred, "ap-guangzhou", $clientProfile);
$req = new CompareFaceRequest();
//UrlA 要比对的原图片 UrlB 要比对的图片
$params = array(
"UrlA" => $request['urlA'],
"UrlB" => $request['urlB']
);
$req->fromJsonString(json_encode($params));
$resp = $client->CompareFace($req);
return $resp->toJsonString();
}
catch(TencentCloudSDKException $e) {
return $e;
}
}
}
注:本人是用ajax请求的验证;利用图片上传,图片上传设置为仅拍照