简单几步用Python实现人脸对比

说明:这是我暑假应实习单位需求使用百度api编写的一个简单的人脸相似度对比,其间处理了十万左右的照片,主要是为了判断是否为同一人

a.获取百度人脸识别api的api key 和secret key

去哪获取呢?网址:http://ai.baidu.com/tech/face,创建应用

b.获取AccessToken

这一部分在百度的说明文档里也有教你怎么获取和拼接,在这里我就简单的说明一下。
a.向授权服务地址:发送请求并在URL后带上一下参数:

  • grand_type :
  • client_id:应用的api key
  • client_secret:应用的secret key
    上面的参数都为必须
api1 = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=GuZ8GCOOQbyrPwGxTmiGR5QW&client_secret=qpyP1Yju3kTyQ
#此URL为向授权服务请求的完整地址,先命名为api1

c.获取Access_Token的完整内容和拼接api

def get_token():response=requests.get(api1)access_token=eval(response.text)['access_token']api2="https://aip.baidubce.com/rest/2.0/face/v3/match"+"?access_token="+access_tokenreturn api2

上面可以打印一下response

d.读取图片数据

def read_img(img1,img2):with open(img1,'rb') as f:pic1=base64.b64encode(f.read())with open(img2,'rb') as f:pic2=base64.b64encode(f.read())params=json.dumps([{"image":str(pic1,"utf-8"),"image_type":'BASE64',"face_type":"LIVE"},{"image":str(pic2,"utf-8"),"image_type":'BASE64',"face_type":"IDCARD"}])return params

e.发起请求拿到对比结果

def analyse_img(file1,file2):params=read_img(file1,file2)api=get_token()content=requests.post(api,params).textscore=eval(content)['result']['score']return score

完整代码请留言

此程序对照片有一定的要求

1. 两张照片的格式需要一致,因为我遍历了两个文件夹,文件名相同的进行比较
2. 照片大小不能太大太小

3. 一旦照片问题或者请求太频繁或者网络问题都会导致程序停止

所以不得不又准备两个照片批量压缩和格式批量转换的程序
至此,一套较为完整的简单的身份验证程序算是初步上线了,此程序前后共处理了十万张左右照片,其间不乏人工的介入。

改进优化版(图形交互界面以及针对上述问题的优化)在一定程度上实现了完全自动化,有时间会发出来

简单几步用Python实现人脸对比相关推荐

  1. python minimize_简单三步实现Python脚本超参数调优(附代码)

    作者:Jakub Czakon, Neptune.ai 翻译:陈之炎 校对:和中华 本文约1500字,建议阅读5分钟. Python机器学习模型建立起来之后,如何对它的性能进行优化?按照本指南中的三个 ...

  2. 独家 | 简单三步实现Python脚本超参数调优(附代码)

    作者:Jakub Czakon, Neptune.ai 翻译:陈之炎 校对:和中华 本文约1500字,建议阅读5分钟. Python机器学习模型建立起来之后,如何对它的性能进行优化?按照本指南中的三个 ...

  3. 简单三步实现Python脚本超参数调优(附代码)

    在编写完成一个Python脚本之后,便可以用它训练和评估机器学习模型了,现在,问题来了,是否能对它自动调整超参数以提高其性能呢? 自有办法! 在本文中,将展示如何将脚本转换为可以用任何超参数优化库优化 ...

  4. python 人脸比对,python 使用百度AI接口进行人脸对比的步骤

    1. 注册百度云账号 注册百度智能云,提交申请. 创建应用获取AppID,API Key,Secret Key. 2. 安装baidu python api 人脸对比 API 文档 pip insta ...

  5. python人脸识别程序如何嵌入到app_只用Python就能写安卓,简单几步实现人脸识别的App...

    最近闲来无事,研究研究在安卓上跑Python. 想起以前玩过的kivy技术,kivy[1]是一个跨平台的UI框架.当然对我们最有用的是,kivy可以把python代码打包成安卓App.但是由于安卓打包 ...

  6. opencv 训练人脸对比_【项目案例python与人脸识别】基于OpenCV开源计算机视觉库的人脸识别之python实现...

    " 本项目是一个基于OpenCV开源库使用python语言程序实现人脸检测的项目,该项目将从[项目基础知识](即人脸识别的基本原理).[项目实践](人脸识别所需要的具体步骤及其python程 ...

  7. python人脸识别和人脸对比,face_recognition和OpenCV

    前言 先用OpenCV判断图片是否模糊,模糊的话需要重拍: 再用face_recognition检测图片中是否有人脸,有才接着进行下一步: 再用face_recognition计算图片中每张人脸的12 ...

  8. 用python画苹果的logo_简单几步,100行代码用Python画一个蝙蝠侠的logo

    转自:菜鸟学Python 简单几步,100行代码用Python画一个蝙蝠侠的logo-1.jpg (35.33 KB, 下载次数: 0) 2020-7-30 12:04 上传 蝙蝠侠作为DC漫画的核心 ...

  9. 简单几步实现网络音乐播放器(Python爬虫版百度FM)

    Python入门之爬取百度音乐 先说一下为什么会有这篇文章,首先肯定是有这个需求了,本人出差在外地,这里的网速卡到爆,根本支撑不了在线听歌的要求,所以就想下载到本地来慢慢听.这可是python的绝活, ...

最新文章

  1. python mac电脑定时关机怎么设置_python实现电脑定时关机
  2. 云栖·追踪云原生|Serverless入围阿里云十大核心技术
  3. ABAP webservice和log on对话框相关的实现细节调试
  4. upload-labs_pass 9_::$DATA_绕过
  5. Java 9:好的,坏的和私有的接口方法
  6. 3.1HTML5样式的使用
  7. WEB运用程序如何实现高效可维护?
  8. RTX5 | 内存池02 - 剩下几个API
  9. Pyotrch —— 优化器Optimizer(一)
  10. ubuntu19.04安装pip3以及virtualenv和virtualenvwrapper
  11. 64位 iee754_IEEE754浮点表示法详解
  12. python做数据分析需要oracle_精通 Oracle+Python,第 1 部分:查询最佳应践
  13. OpenPilot 0.3.2 发布,开源自动驾驶技术
  14. (转)开源的大文件上传组件NeatUpload
  15. 开源磁力搜索爬虫dhtspider原理解析
  16. CE修改器学习历程之下载、安装和汉化
  17. [每日一氵] TensorRT中 GA和EA的不同
  18. 网络安全-破解win10开机密码
  19. 计算机组成原理带符号的阵列乘法器,计算机组成原理阵列乘法器课程设计报告精选.doc...
  20. violate与线程安全

热门文章

  1. Google Voice 如何永久续期
  2. 用python-opencv给图像添加椒盐噪音
  3. Halcon学习笔记(八)——OCR初步创建并训练OCR分类器
  4. IP网络摄像头GB28181协议视频平台EasyGBS中设定录像计划后不进行录像问题原因分析
  5. 老板喜欢哪10种员工?
  6. 基于入侵杂草算法的函数寻优算法
  7. 使用scrapy爬取平凡的世界
  8. 二战超人之最-最有杀伤力的飞行员
  9. 基于uinput 实现远程键鼠
  10. AT89C51单片机项目——秒表系统