使用 Dlib 进行面部地标检测

Facial Landmark Detection using Dlib

是否可以使用 train_shape_predictor_ex.cpp.html and face_landmark_detection_ex.cpp.html 来训练不同的地标数字?默认情况下,两者都检测正面中的 68 个地标。我只想检测 39 个地标。我可以使用 train_shape_predictor_ex 训练。但是 face_landmark_detection_ex 输出附加消息:

抛出异常

Error detected at line 25. 
Error detected in file /Users/Vareto/Documents/Dlib/dlib/../dlib/image_processing/render_face_detections.h.
Error detected in function std::vector dlib::render_face_detections(const std::vector &, const dlib::rgb_pixel).
Failing expression was dets[i].num_parts() == 68.
std::vector render_face_detections()
Invalid inputs were given to this function.
dets[0].num_parts(): 39

就错误信息而言,这条非常清楚。

它说虽然你有 39 个标记(恭喜你训练它!),但演示仍在尝试在 render_face_detections() 函数中绘制 68

39 != 68