coneypo / Dlib_face_recognition_from_camera

Detect and recognize the faces from camera / 调用摄像头进行人脸识别,支持多张人脸同时识别
http://www.cnblogs.com/AdaminXie/p/9010298.html
MIT License
2.07k stars 572 forks source link

你好,请问这是用dlib已经训练好的模型进行的吗 #22

Closed hellowack closed 4 years ago

coneypo commented 4 years ago

基于 Residual Neural Network / 残差网络的 CNN 模型; This model is a ResNet network with 29 conv layers. It's essentially a version of the ResNet-34 network from the paper Deep Residual Learning for Image Recognition by He, Zhang, Ren, and Sun with a few layers removed and the number of filters per layer reduced by half.

resnet model: https://github.com/coneypo/Dlib_face_recognition_from_camera/blob/master/data/data_dlib/dlib_face_recognition_resnet_model_v1.dat

hellowack commented 4 years ago

您能简单地讲述一下这个模型怎么用的吗,原理是什么,放入自己的一张照片后,是怎么进行识别的,和普通的用数字图像的一些蒜子计算相比,有区别吗?刚接触机器学习,不是很懂

coneypo commented 4 years ago

您能简单地讲述一下这个模型怎么用的吗,原理是什么,放入自己的一张照片后,是怎么进行识别的,和普通的用数字图像的一些蒜子计算相比,有区别吗?刚接触机器学习,不是很懂

ML 都是 训练模型 -> 生成模型 -> 加载模型 -> 进行推算 / inference ; 训练 CNN 模型现在一般都是 TensorFlow 或者 Pytorch(后者目前慢慢更多人使用),训练模型一般是在 server 上进行,需要有高性能的 GPU 来做(可以去 AWS 或者 Azure 去租用训练服务器),生成好的模型(pre-trained model),有一些地方比如 model zoo 去维护,可以下载到别人训练好的模型,模型的 load 你直接加载就好了;

其实对于你如果不搞科研,一般人更加关注的是 Inference 过程,不需要自己去设计网络,然后去训练。。

那些算子比如拉普拉斯算子,Canny 算子是纯 CV 图像处理的过程,区别于 CNN 卷积神经网络,真正做识别检测分割一般都用 NN 来做;一般算子用来做一些预处理比如提取轮廓啥的,再丢给 NN 去做训练或者推算;

关于 Reset-34 怎么进行图像识别的,可以看看这篇 paper: Deep Residual Learning for Image Recognition, Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun https://arxiv.org/pdf/1512.03385.pdf

hellowack commented 4 years ago

好的,谢谢您!

coneypo commented 4 years ago

如果没有其他问题我就关掉这个 issue 哦