【人工智能应用】基于人脸识别的驾驶员身份认证系统

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 本文将使用萤石云结合萤石C2HC网络摄像头来实现基于人脸识别的身份认证功能。本方案硬件成本小于200元,单次人脸识别+身份认证的费用小于0.01元。是一个相对比较经济的方案。

【概述】

实现基于人脸识别的身份认证功能,至少有以下三种方案:
1、使用各大平台提供的云服务,基于WEB API调用。API调用需要按次收费。
2、使用SDK,嵌入在设备里。这种情况需要自行开发硬件,SDK需要按设备数一次性收费。
3、购买现成的人脸识别硬件产品,使用厂家提供的SDK进行二次开发。这种设备通常比较贵。

本文将使用萤石云结合萤石C2HC网络摄像头(第一种方案)来实现基于人脸识别的身份认证功能。本方案硬件成本小于200元,单次人脸识别+身份认证的费用小于0.01元。是一个相对比较经济的方案。

【系统架构示意图】

_
备注:关于车辆启动信号的来源,可以参考我的另一篇文章。【企业项目】工程车辆管理系统(含硬件设计和开发)

【前期准备】

1、由于萤石API不能直接使用摄像头拍摄的照片进行人脸识别,需要将照片发送到OSS云服务进行存储。所以,需要提前开通OSS云服务并做好相应的配置
2、需要一个ECS云服务器来承载PC控制端程序,操作系统为windows
3、在进行人脸识别前,需要调用萤石API来创建一个人脸集合(setToken),集合名称可以随意指定。

【人脸注册】

# 【业务流程】

1、控制端通过萤石API向摄像头发送一个拍照指令,拍摄一张头像照片。
2、摄像头收到拍照指令后,会拍摄一张照片并存储在萤石云的指定位置。萤石API会将图片地址链接返回给程序。
3、控制端收到图片地址链接后获取到图片,并将图片存储到OSS云服务对象中。
4、控制端将图片发送给萤石API进行人脸识别,识别成功后会返回人脸唯一标识(faceToken)
5、将人脸唯一标识faceToken发送给萤石API到指定的人脸集合(setToken)中进行注册。

# 【核心代码】

            Token token = aiLib.checkToken();//获取token
            string pic = aiLib.getPic(token.accessToken, deviceSerial, "1");//使用萤石API拍照
            if (pic != "")
            {
                string url = aiLib.uploadImg(pic);//将照片上传到OSS服务器
                if (url != "")
                {
                    string faceToken = aiLib.faceCheck(token.accessToken, "0", url);//人脸检测
                    bool flag = aiLib.faceRegister(token.accessToken, faceToken, setToken);//人脸注册
                    result.imgUrlOss = url;
                    result.faceToken = faceToken;
                    result.result = flag;
                }
            }
            return result;

【人脸比对-身份认证】

# 【业务流程】

1、车辆启动后,向控制端发送一个车辆启动信号
2、控制端收到信号后,等待1分钟(待摄像头完全启动)后,通过萤石API向摄像头连续发送6次拍照指令,发送间隔为10秒。
3、摄像头收到拍照指令后,会拍摄一张照片并存储在萤石云的指定位置。萤石API会将图片地址链接返回给程序。
4、控制端收到图片地址链接后获取到图片,并将图片存储到OSS云服务对象中。
5、控制端将图片发送给萤石API进行人脸识别,识别成功后会返回人脸唯一标识(faceToken)
6、将人脸唯一标识(faceToken)发送给萤石API进行人脸比对,比对成功后返回相似度得分。
7、相似度大于90即可认为是同一个人。

# 【核心代码】

        Token token = aiLib.checkToken();//获取token
        string pic = aiLib.getPic(token.accessToken, deviceSerial, "1");//使用萤石API拍照
        if (pic != "")
        {
            string url = aiLib.uploadImg(pic);//将照片上传到OSS服务器
            if (url != "")
            {
                string faceToken = aiLib.faceCheck(token.accessToken, "0", url);//人脸检测
                Dictionary<string, object> dic = new Dictionary<string, object>();
                dic["setToken"] = setToken;
                dic["threshold"] = 80;//比对阈值
                dic["matchCount"] = 1;
                string operation = "[" + JsonHelper.ObjectToJSON(dic) + "]";
                string score = aiLib.faceSearch(token.accessToken, "2", faceToken, operation, "1");//在人脸集合中搜索检测到的人脸

                result.imgUrlOss = url;
                result.faceToken = faceToken;
                result.score = score;//相识度得分
            }
        }
        return result;
目录
相关文章
|
10天前
|
机器学习/深度学习 人工智能 物联网
通义灵码在人工智能与机器学习领域的应用
通义灵码不仅在物联网领域表现出色,还在人工智能、机器学习、金融、医疗和教育等领域展现出广泛应用前景。本文探讨了其在这些领域的具体应用,如模型训练、风险评估、医疗影像诊断等,并总结了其提高开发效率、降低门槛、促进合作和推动创新的优势。
通义灵码在人工智能与机器学习领域的应用
|
4天前
|
机器学习/深度学习 人工智能 算法
AI技术在医疗诊断中的应用及前景展望
本文旨在探讨人工智能(AI)技术在医疗诊断领域的应用现状、挑战与未来发展趋势。通过分析AI技术如何助力提高诊断准确率、缩短诊断时间以及降低医疗成本,揭示了其在现代医疗体系中的重要价值。同时,文章也指出了当前AI医疗面临的数据隐私、算法透明度等挑战,并对未来的发展方向进行了展望。
|
10天前
|
机器学习/深度学习 人工智能 算法
人工智能在医疗诊断中的应用与挑战
本文探讨了人工智能(AI)在医疗诊断领域的应用及其面临的挑战。随着技术的不断进步,AI已经在医学影像分析、疾病预测和个性化治疗等方面展现出巨大潜力。然而,数据隐私、算法透明度以及临床整合等问题仍然是亟待解决的关键问题。本文旨在通过分析当前AI技术在医疗诊断中的具体应用案例,探讨其带来的优势和潜在风险,并提出相应的解决策略,以期为未来AI在医疗领域的深入应用提供参考。
47 3
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
探索人工智能在教育领域的应用与挑战
随着科技的不断进步,人工智能(AI)技术已经深入到社会的各个领域,其中教育领域尤为突出。本文旨在探讨人工智能在教育领域的应用现状、面临的挑战以及未来的发展趋势。通过分析AI技术如何改变传统教学模式,提高教育质量和效率,同时指出其在实际应用中可能遇到的问题和挑战,为未来教育的发展提供参考。
94 2
|
8天前
|
机器学习/深度学习 人工智能 算法
AI在医疗诊断中的应用
【10月更文挑战第42天】本文将探讨人工智能(AI)在医疗诊断中的应用,包括其优势、挑战和未来发展方向。我们将通过实例来说明AI如何改变医疗行业,提高诊断的准确性和效率。
|
8天前
|
存储 人工智能 搜索推荐
Memoripy:支持 AI 应用上下文感知的记忆管理 Python 库
Memoripy 是一个 Python 库,用于管理 AI 应用中的上下文感知记忆,支持短期和长期存储,兼容 OpenAI 和 Ollama API。
46 6
Memoripy:支持 AI 应用上下文感知的记忆管理 Python 库
|
4天前
|
机器学习/深度学习 人工智能 算法
强化学习在游戏AI中的应用,从基本原理、优势、应用场景到具体实现方法,以及Python在其中的作用
本文探讨了强化学习在游戏AI中的应用,从基本原理、优势、应用场景到具体实现方法,以及Python在其中的作用,通过案例分析展示了其潜力,并讨论了面临的挑战及未来发展趋势。强化学习正为游戏AI带来新的可能性。
24 4
|
6天前
|
机器学习/深度学习 人工智能 监控
探索AI在医疗诊断中的应用与挑战
本文旨在揭示人工智能(AI)技术如何革新医疗诊断领域,提高疾病预测的准确性和效率。通过分析AI在图像识别、数据分析等方面的应用实例,本文将探讨AI技术带来的便利及其面临的伦理和法律问题。文章还将提供代码示例,展示如何使用AI进行疾病诊断的基本过程。
|
10天前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能在医疗诊断中的应用与前景
人工智能在医疗诊断中的应用与前景
|
9天前
|
机器学习/深度学习 人工智能 搜索推荐
人工智能在医疗健康领域的革新应用
人工智能在医疗健康领域的革新应用
25 0
下一篇
无影云桌面