Skip to content

Commit

Permalink
新的文件说明
Browse files Browse the repository at this point in the history
  • Loading branch information
JWSunny committed Dec 4, 2019
1 parent 2b42974 commit 840c7e9
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion DCNN/README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,22 @@ database数据集说明:
阶段2中,模型的输入,是每个坐标点周围的一个方形区域【24*24】,每个区域输出,离该点最近的K个点坐标;(后期实现使用的是K=1),论文中证明K=3时,效果最好;
3.模型的评价指标【主要是计算预测坐标与真实坐标的均方根误差,并与两眼瞳孔之间的距离比】

阶段1 和 阶段2 的模型实现,参考 DCNN_stage1.py 和 DCNN_stage2.py
4.阶段1 和 阶段2 的模型实现,参考 DCNN_stage1.py 和 DCNN_stage2.py

5.关于数据的预处理和最终在测试的时候,都是使用了人脸检测模型,这边使用的人脸检测模型是基于resnet_ssd的caffe model,具体的链接:
https://github.com/JWSunny/Facial_Expression_Recognition/tree/master/expressions_base_landmarks;

6.数据的预处理:由于网络的输入尺寸的是固定的,所以需要对人脸进行检测,同时保证所有的人脸关键点在人脸框中,并通过仿射变换操作转换到
固定的输入图片大小;


移动端移植说明:
1.移动端移植的宗旨肯定是希望在保证精度的情况下,尽量缩小模型的大小;在移动端移植的过程中,使用的是级联模型的第一阶段的网络;原始论文
中其实有说阶段1的粗定位其实已经能满足一般场景的人脸关键点定位操作;

2.同时为了进一步缩小及加速模型,使用mobilenet的模型结构,重新设计定位模型,最终将之前阶段1的模型从28M缩小到7.7M;
(该模型在PC端结合人脸检测模型,能实现实时的人脸关键点定位,在移动端不进行任何优化的场景下,华为畅享8人脸检测+定位300ms左右,红米note5上100-200ms)

3.这边未进行最终模型的分享,主要分享自己在实现过程中的训练代码;以及如何将keras模型文件转换成tensorflow模型的pb文件;
其实pb文件可以进一步量化成tflite文件,模型文件能进一步压缩,但是时间推理上,因为之前的tflite文件的优化理论上可以优化时间,但是像
基于mobilenet这种轻量级设计的网络,优化的推理时间有限;(具体实现请参考:DCNN_Mobilenet.py)

0 comments on commit 840c7e9

Please sign in to comment.