Dlib.如何实时解决优化约束?地标融合的想法

Dlib. How solve the optimization constraints to be on real time ? Idea of landmarks convergence?

本文关键字:融合 约束 优化 何实时 实时 解决 Dlib      更新时间:2023-10-16

我想使用dlib库实时检测面部标志。该算法由论文基于:Vahid Kazemi和Josephine Sullivan

的一毫秒面对面与回归树的整合

我使用现有库:dlib,它很慢。我阅读了如何在http://dlib.net/faq.html上快速执行此操作,但是在我的计算机上不可能,因为在SSE4或AVX之前,我无法选择优化。最后,我使用SSE2。所以我有以下问题:

- 可以在移动/Web应用程序库dlib中使用,以实时工作吗?我不喜欢优化设置等等,这就是为什么有趣的是有多少限制。

- 可以在我的计算机中使用,而无需优化SSE4以实时工作吗?

-this File shape_predictor_68_face_face_landmarks.dat权重95 MB。我需要face 具有里程碑意义的检测,该文件是否根据我的需要包含冗余信息?

- 一种算法问题:点(地标)的收敛取决于面部检测的边界框,SMB可以解释,如何完成?我们适合边界内部的平均脸部点,然后我们正在寻找附近的每个具有里程碑意义的最佳位置?这个社区多少钱?

感谢任何帮助

-It is possible to use in mobile/web application library dlib in order that it works in real time ? I am not familar with optimization settings and so on, that is why it is interesting how much restrictions there are.
-It is possible to use in my computer without optimisation SSE4 in order that it works in real time ?

面部标志性检测有两个步骤:面部检测并在这张脸上进行里程碑式检测。最耗费CPU的部分是第一步 - 检测脸部(运行Simple_object_detector),只有此部分才能从用法中获得任何利润

为什么它会慢 - 面部检测会从80x80像素和更大的面部大小上排出,如果您将一些高分辨率图像放入检测器中,它将在不同尺度上花费大量时间在滑动窗口上。大多数情况都需要在同一框架上有1-3个面孔,而现代移动相机的分辨率很高。

因此,我建议您减少用于面部检测的图像尺寸 - 降尺度并根据某些感兴趣的区域裁剪。这将使您最大的性能优化。

下一个可能的步骤是使面部检测器不要以不同的尺度运行,而是进行1-2次迭代。看看这个问题 - 它有一个描述的问题(DLIB的SCAN_FHOG_PYRAMID:SET MAX_PYRAMID_LEVELS)

-This file shape_predictor_68_face_landmarks.dat weights 95 Mb. I need just face+landmark detection, does this file contain redundant information according to my needs?

此文件仅具有在IBUG数据集上训练的68个面部标记的数据模型。它没有内部的面部检测模型。dlib/image_processing/frontal_face_detector.h文件

中的面部检测模型船

是的,这个文件很大,但这是其质量的价格。您可以训练一些新的面部地标检测模型(在http://dlib.net/train_shape_predictor_ex.cpp.html示例中进行了描述),较少的地标点或质量较低 - 这可以使您更小的文件

-One algorithm question...

要回答 - 请考虑阅读原始(http://www.cv-foundation.org/openaccess/content_cvpr_2014/papers/kazemi_millisecond_millisecond_2014_2014_ccdpace)

不久 - 在检测到面部(找到边界框)后,形状预测器搜索相对训练的位置的某些特征(图像像素值)相对较高的面部边界框。取决于特征值shape_predictor更改平均面部形状变成新的面部形状(一个预易于一个),并且对于每个受过训练的回归树的内部形状预测变量模型

,对此过程进行了迭代。