mtcnn-align-facenet部署:本项目是利用mtcnn网络和facenet网络实现了一个简单的人脸识别功能。整体流程大致如下:首先利用mtcnn网络进行人脸检测和人脸关键点(5个)提取;接着利用人脸关键点进行人脸校正(仿射变换);然后将校正之后的人脸图片送入facenet网络进行人脸特征(128维)提取;最后将提取到的人脸特征与底库中的人脸特征进行相似度计算(特征比对),完成人脸识别功能-源码

上传者: 42097967 | 上传时间: 2021-03-31 01:46:32 | 文件大小: 2.53MB | 文件类型: ZIP
mtcnn对齐facenet部署 项目简介 本项目参考了bubbliiiing的和两个工程,在此对作者表示感谢! 这两个工程都是keras模型,所提供的模型文件都只有权重没有网络结构,我利用作者提供的网络定义和权重文件重新生成了带有网络结构的权重文件。某个原始先只有权重的模型文件pnet.h5 ,生成包含网络结构和权重的模型文件PNET.h5 。接着用keras2onnx工具把它( PNET.h5 )转换成onnx模型pnet.onnx ,其他胶水部分的逻辑没什么变化。具体的转换代码请参考keras_onnx.py文件。 另外我还尝试了将keras h5模型转成tensorflow pb模型,具体代码请参考h5_to_pb.py文件。需要注意的是:每个tensorflow PB请模型单独执行h5_to_pb.py脚本生成。 (每次修改weight_file参数) 如果你想简单地测试一下mt

文件下载

资源详情

[{"title":"( 60 个子文件 2.53MB ) mtcnn-align-facenet部署:本项目是利用mtcnn网络和facenet网络实现了一个简单的人脸识别功能。整体流程大致如下:首先利用mtcnn网络进行人脸检测和人脸关键点(5个)提取;接着利用人脸关键点进行人脸校正(仿射变换);然后将校正之后的人脸图片送入facenet网络进行人脸特征(128维)提取;最后将提取到的人脸特征与底库中的人脸特征进行相似度计算(特征比对),完成人脸识别功能-源码","children":[{"title":"mtcnn-align-facenet-deployment-master","children":[{"title":"detect_video.py <span style='color:#111;'> 2.22KB </span>","children":null,"spread":false},{"title":"face_detection_client","children":[{"title":"face_detection_onnx.py <span style='color:#111;'> 2.23KB </span>","children":null,"spread":false},{"title":"utils.py <span style='color:#111;'> 8.33KB </span>","children":null,"spread":false},{"title":"mtcnn_onnx.py <span style='color:#111;'> 10.43KB </span>","children":null,"spread":false},{"title":"face_detection.py <span style='color:#111;'> 2.23KB </span>","children":null,"spread":false},{"title":"face_detection_pb.py <span style='color:#111;'> 2.23KB </span>","children":null,"spread":false},{"title":"mtcnn.py <span style='color:#111;'> 10.00KB </span>","children":null,"spread":false},{"title":"mtcnn_pb.py <span style='color:#111;'> 10.43KB </span>","children":null,"spread":false}],"spread":true},{"title":"img","children":[{"title":"A.jpg <span style='color:#111;'> 11.05KB </span>","children":null,"spread":false},{"title":"test.jpg <span style='color:#111;'> 169.17KB </span>","children":null,"spread":false},{"title":"out.jpg <span style='color:#111;'> 414.36KB </span>","children":null,"spread":false}],"spread":true},{"title":"utils.py <span style='color:#111;'> 8.32KB </span>","children":null,"spread":false},{"title":"keras_onnx.py <span style='color:#111;'> 12.70KB </span>","children":null,"spread":false},{"title":"face_recognition_client","children":[{"title":"facenet.py <span style='color:#111;'> 1.69KB </span>","children":null,"spread":false},{"title":"face_dataset","children":[{"title":"obama.jpg <span style='color:#111;'> 112.00KB </span>","children":null,"spread":false},{"title":"timg.jpg <span style='color:#111;'> 52.23KB </span>","children":null,"spread":false}],"spread":true},{"title":"facenet_tf.py <span style='color:#111;'> 1.70KB </span>","children":null,"spread":false},{"title":"facenet_onnx.py <span style='color:#111;'> 1.69KB </span>","children":null,"spread":false},{"title":"face_recognize.py <span style='color:#111;'> 6.87KB </span>","children":null,"spread":false},{"title":"utils","children":[{"title":"utils.py <span style='color:#111;'> 11.95KB </span>","children":null,"spread":false}],"spread":true},{"title":"mtcnn.py <span style='color:#111;'> 10.45KB </span>","children":null,"spread":false}],"spread":true},{"title":"detect.py <span style='color:#111;'> 1.47KB </span>","children":null,"spread":false},{"title":"h5_to_pb.py <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"model_data","children":[{"title":"rnet.h5 <span style='color:#111;'> 428.04KB </span>","children":null,"spread":false},{"title":"pnet.h5 <span style='color:#111;'> 55.84KB </span>","children":null,"spread":false},{"title":"onet.h5 <span style='color:#111;'> 1.53MB </span>","children":null,"spread":false}],"spread":true},{"title":".gitignore <span style='color:#111;'> 52B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 8.13KB </span>","children":null,"spread":false},{"title":"mtcnn.py <span style='color:#111;'> 7.71KB </span>","children":null,"spread":false},{"title":"repo","children":[{"title":"onet_tf","children":[{"title":"config.pbtxt <span style='color:#111;'> 375B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.graphdef <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 53B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"rnet_onnx","children":[{"title":"config.pbtxt <span style='color:#111;'> 305B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"pnet_onnx","children":[{"title":"config.pbtxt <span style='color:#111;'> 314B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"rnet","children":[{"title":"config.pbtxt <span style='color:#111;'> 297B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.plan <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"facenet","children":[{"title":"config.pbtxt <span style='color:#111;'> 244B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"onet_onnx","children":[{"title":"config.pbtxt <span style='color:#111;'> 376B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"facenet_tf","children":[{"title":"config.pbtxt <span style='color:#111;'> 263B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.graphdef <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 53B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"facenet_onnx","children":[{"title":"config.pbtxt <span style='color:#111;'> 253B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"pnet_tf","children":[{"title":"config.pbtxt <span style='color:#111;'> 318B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.graphdef <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 53B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"rnet_tf","children":[{"title":"config.pbtxt <span style='color:#111;'> 305B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.graphdef <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 53B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"onet","children":[{"title":"config.pbtxt <span style='color:#111;'> 368B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.plan <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"pnet","children":[{"title":"config.pbtxt <span style='color:#111;'> 306B </span>","children":null,"spread":false},{"title":"1","children":[{"title":"model.plan <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 49B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":false}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明