freesouls / face-alignment-at-3000fps

The project is an C++ implementation of Face Alignment at 3000fps via Regressing Local Binary Features
283 stars 145 forks source link

关于特征点数量伸缩 #5

Closed iyinchao closed 8 years ago

iyinchao commented 8 years ago

Hi~先谢谢你的代码实现啊,很棒。

有个问题想请教一下,我打算把helen, lfpw和afw的*.pts中的特征点缩减为5个(鼻尖,两个眼睛的两端),然而训练的结果不尽如人意。
已经修改了一些地方,比如utils.cpp中的calculateError中:

double CalculateError(cv::Mat_<double>& ground_truth_shape, cv::Mat_<double>& predicted_shape){
    // ...
    //鼻尖为index 0,两个眼睛端点分别为1,2和3,4
    temp = ground_truth_shape.rowRange(1, 3)-ground_truth_shape.rowRange(3, 5); 
    //...
}

这是我用来训练的配置文件和一个缩减过的pts文件:

//train config file(没有做太多修改,正在尝试调参数)
newModel
300
5
6
5
12
3
0.3
0.29
0.21
0.16
0.12
0.08
0.04
2
./lfpw/
./lfpw.txt
./helen/
./helen.txt

//a sample pts file(afw/134212_1.pts)
version: 1
n_points: 5
{
766.366 287.332
730.676 230.253
764.738 227.763
813.433 227.625
855.689 227.233
}

这里是我做好的afw,helen和lfpw缩减为5个点的pts文件: http://pan.baidu.com/s/1nvfD9Zr 不知道代码还有哪些地方需要改,我没有注意到?或者train configure文件需要调整?谢谢解答