实名认证 —— 腾讯云人脸识别接口

官网地址:人脸识别_人脸搜索_人脸检测_人脸比对-腾讯云腾讯云神图·人脸识别基于腾讯优图世界领先的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸验证、人脸查重、活体检测等多种功能,为开发者和企业提供高性能高可用的人脸识别服务。https://cloud.tencent.com/product/facerecognition

为了存放移动端提交的司机面部照片,我们需要先创建人员库,名字是"代驾",人员库的ID是"daijia-driver"。

说明:人员库ID 项目里面要使用,需要配置。

创建人员库人员API:

文档地址:人脸识别 创建人员_腾讯云本文介绍了腾讯云人脸识别接口中的创建人员功能,包括接口描述、输入输出参数、使用示例、开发者资源和错误码等内容。主要讲述了如何通过该接口创建人员并添加相关信息,以https://cloud.tencent.com/document/api/867/45014

随后创建人脸模型:

首先编写配置文件:

java 复制代码
tencent:
  cloud:
    secretId: ****************************
    secretKey: ****************************
    region: ap-beijing 
    bucketPrivate: *********
    persionGroupId: eleven  # 人员库ID

说明:persionGroupId为上面创建的人员库id。

随后编写配置类:

java 复制代码
@Data
@Component
@ConfigurationProperties(prefix = "tencent.cloud")
public class TencentCloudProperties {

    private String secretId;
    private String secretKey;
    private String region;
    private String bucketPrivate;

    private String persionGroupId;    // 人员库ID
}

根据腾讯云文档,使用java代码创建人脸模型:

使用java代码创建人脸模型 - 腾讯云文档腾讯云为数百万的企业和开发者提供安全、稳定的云服务器、云主机、CDN、对象存储、域名注册、云存储、云数据库等云服务,帮助用户解决游戏、视频、移动、微信、互联网+等行业的架构难题,是全球领先的云计算服务商。https://console.cloud.tencent.com/api/explorer?Product=iai&Version=2020-03-03&Action=CreatePerson

首先编写Controller:

java 复制代码
@Operation(summary = "创建司机人脸模型")
@PostMapping("/creatDriverFaceModel")
public Result<Boolean> creatDriverFaceModel(@RequestBody DriverFaceModelForm driverFaceModelForm) {
    return Result.ok(driverInfoService.creatDriverFaceModel(driverFaceModelForm));
}

随后编写Service:

java 复制代码
@Autowired
private TencentCloudProperties tencentCloudProperties;

/**
 * 文档地址
 * https://cloud.tencent.com/document/api/867/45014
 * https://console.cloud.tencent.com/api/explorer?Product=iai&Version=2020-03-03&Action=CreatePerson
 *
 * @param driverFaceModelForm
 * @return
 */
@Override
public Boolean creatDriverFaceModel(DriverFaceModelForm driverFaceModelForm) {
    DriverInfo driverInfo = this.getById(driverFaceModelForm.getDriverId());
    try {
        // 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
        // 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
        // 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
        Credential cred = new Credential(tencentCloudProperties.getSecretId(), tencentCloudProperties.getSecretKey());
        // 实例化一个http选项,可选的,没有特殊需求可以跳过
        HttpProfile httpProfile = new HttpProfile();
        httpProfile.setEndpoint("iai.tencentcloudapi.com");
        // 实例化一个client选项,可选的,没有特殊需求可以跳过
        ClientProfile clientProfile = new ClientProfile();
        clientProfile.setHttpProfile(httpProfile);
        // 实例化要请求产品的client对象,clientProfile是可选的
        IaiClient client = new IaiClient(cred, tencentCloudProperties.getRegion(), clientProfile);
        // 实例化一个请求对象,每个接口都会对应一个request对象
        CreatePersonRequest req = new CreatePersonRequest();
        req.setGroupId(tencentCloudProperties.getPersionGroupId());
        //基本信息
        req.setPersonId(String.valueOf(driverInfo.getId()));
        req.setGender(Long.parseLong(driverInfo.getGender()));
        req.setQualityControl(4L);
        req.setUniquePersonControl(4L);
        req.setPersonName(driverInfo.getName());
        req.setImage(driverFaceModelForm.getImageBase64());

        // 返回的resp是一个CreatePersonResponse的实例,与请求对象对应
        CreatePersonResponse resp = client.CreatePerson(req);
        // 输出json格式的字符串回包
        System.out.println(CreatePersonResponse.toJsonString(resp));
        if (StringUtils.hasText(resp.getFaceId())) {
            //人脸校验必要参数,保存到数据库表
            driverInfo.setFaceModelId(resp.getFaceId());
            this.updateById(driverInfo);
        }
    } catch (TencentCloudSDKException e) {
        System.out.println(e.toString());
        return false;
    }
    return true;
}

最后编写Feign:

java 复制代码
/**
 * 创建司机人脸模型
 * @param driverFaceModelForm
 * @return
 */
@PostMapping("/driver/info/creatDriverFaceModel")
Result<Boolean> creatDriverFaceModel(@RequestBody DriverFaceModelForm driverFaceModelForm);
相关推荐
TG_yunshuguoji5 小时前
阿里云轻量应用服务器与ECS对比
阿里云·云计算·云服务
血手人屠喵帕斯12 小时前
腾讯云人脸库技术架构深度解析
架构·云计算·腾讯云
似水流年 光阴已逝12 小时前
腾讯云DTS数据库迁移底层原理与实战解析
云计算·腾讯云·数据迁移
天翼云开发者社区14 小时前
云上托举智造梦,天翼云为机械工业注入澎湃数字活力!
云计算
天翼云开发者社区14 小时前
数字先锋 | 数字之光,在“水”一方,天翼云加速攀枝花水务集团国产化发展!
云计算·天翼云
慧星云16 小时前
魔多 AI 支持 Qwen-lmage 在线训练 :复杂文字也能精准生成
人工智能·云计算·aigc
TG_yilongcloud16 小时前
AWS亚马逊云账号注册指南
服务器·云计算·aws
chenglin01617 小时前
阿里云——应用交付与负载均衡
阿里云·云计算·负载均衡
chenglin01619 小时前
阿里云——计算服务深度解析与选型
阿里云·云计算
m0_6948455719 小时前
云服务器 Linux 系统防火墙 UFW 配置方法
linux·运维·服务器·chrome·云计算