` 本帖最后由 goyuqinghua 于 2016-3-1 14:44 编辑
用树莓派来做人脸识别的文章在网上很多,方法千秋各异,用到OPENCV来做的比较多;但今天我这里介绍的是用更简单的方法,那就是用百度人脸识别工具来配合树莓派,这样的话,你会很容易做出一个智能人脸识别系统,用在你自己的各种产品上。
废话不多说,来正文。
- 树莓派2 model B
- Wifi dongle for raspberry pi(可选)
- 摄像头
- 3.5寸液晶屏
注:套件中所包所提到的硬件及软件/代码/脚本
接下来看看步骤: 1. 先把整个外围配件全接上树莓派,然后根据各配件的说明,把驱动全部调通(我们所销售的配件都会提供驱动及安装说明) 3. 写一个简单的程序,安排一个线程,让摄像头每隔一段时间抓拍一帧画面(当然有条件的其实可以用红外传感器侦测前方有人或物时才抓拍),将摄头抓到的脸部图像,用FREAD读出来,并将数据保存到一个数组,方便接下来操作。
4. 接下来调用百度的接口来做一个比较。
接口地址 :http://apis.baidu.com/idl_baidu/faceverifyservice/face_recognition 请求方法 :POST 例子: curl'http://apis.baidu.com/idl_baidu/faceverifyservice/face_recognition' --data '{ "params": [ { "cmdid":"2002", "logid":"12345", "appid":"您的apikey", "clientip":"10.23.34.5", "type":"st_groupverify", "groupid":"0", "versionnum":"1.0.0.1", "images":[ "<抓拍到的图片数据置于此>"], } ], "jsonrpc":"2.0", "method":"Verify", "id":12 }' -H 'apikey:您的apikey'
5.拿到反回值进行比较,然后得到脸部分析的结果(人脸识别的功能是返回指定group中所有username的注册人脸和query人脸的相似度,返回结果按照相似度排序;人脸识别需要先在group里注册username和人脸图片,您可以使用这个功能自己实现一个小规模的人脸识别系统,比如明星脸识别、家庭成员识别等等。参见下面的说明)
说明: 1. 分数为0-100之间的值,建议阈值60,即>60可以认为是同一个人,小于则认为不是,调用方可以根据实际测试情况进行调整 2. 最小检测人脸为32*32像素,建议脸部区域分辨率>64*64,当图片中有多个人脸时会默认选取最大的人脸进行识别 3. 图片过大会导致响应时间变长,建议限制图片最大边长<800,缩放时注意不要有拉伸形变 4. 遮挡、平面内旋转和头部姿态会影响检测的召回率,请尽量使用清晰正面无码的人脸图像 5. 人脸识别的范围为指定group内的所有用户,如果groupid不存在,则errnum=0,返回的reslist为空。
请求参数说明:
返回参数说明:
`
|