使用 194 点海伦数据集训练 DLib 形状预测器
train dlib shape predictor with 194 points helen dataset
我在使用 dlib 库准备形状训练时遇到问题 (train_shape_predictor_ex.cpp(对于案例:
我正确安装了Visual studio并正确配置了dlib此外,我还有来自海伦数据库的 194 个点地标的 xml 文件(总共映射了大约 2300 张图像(。
默认情况下,dlib 解决方案基于与 68 个人脸特征点相关的人脸数据集,我根本不知道如何将限制从 68 扩展到 194。
当我尽力而为时,到目前为止我得到的是每张图像 68 个点数据集上的 194 个点......
通过逆向工程,我发现在 render_face_detections.h 文件中存在限制,但即使我将它们从 68 更改为 194,我仍然具有相同的输出,在分析的图像上仅显示 68 个地标点。
如果有任何提示如何解决这个问题,我将不胜感激 - 我知道这是一个简单的调整,但我无法弄清楚。
提前感谢,巴特克
也许是因为您不知道 194 个点的结构以及它们是如何被计算的。我建议像我一样只使用圆圈:
inline std::vector<image_window::overlay_circle> render_helen_face_detections (
const std::vector<full_object_detection>& dets,
const rgb_pixel color = rgb_pixel(0,255,0)
)
{
std::vector<image_window::overlay_circle> circles;
for (unsigned long i = 0; i < dets.size(); i++){
const full_object_detection& d = dets[i];
for (unsigned long p = 0; p < d.num_parts(); p++)
circles.push_back(image_window::overlay_circle(d.part(p), 1, color));
}
return circles;
}
相关文章:
- 使用std::multimap迭代器创建std::list
- 来自 std::list 的迭代器 .end() 按预期返回"0xcdcdcdcdcdcdcdcd"但 .begin()
- Linux的Cpp上的计时器
- Ardunio UNO解决了多个重叠的定时器循环
- 提升 ASIO 无法识别计时器对象
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 如何在c++17中制作一个模板包装器/装饰器
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- C++中带有List类的迭代器Segfault
- std::vector的包装器,使数组的结构看起来像结构的数组
- 本质:使用__128寄存器
- 如何在c++迭代器类型中包装std::chrono
- GL_SHADERSTORAGE_BUFFER位置是否与其他着色器位置冲突
- 集合上的输出迭代器:assign和increment迭代器
- SFML纹理像播放器
- Boost Spirit,获取迭代器内部语义动作
- 当我们实例化Caffe2预测器时,应用程序被卡住了
- 使用 194 点海伦数据集训练 DLib 形状预测器
- 为什么 dlib 的神经网络 xml 导出包含的层参数与训练器指定的参数不同?
- 如何提取Scikit-learn的回归预测器以实施到C++中