欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

【Linux】Face Recognition的封装

发布时间:2025/4/5 linux 53 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【Linux】Face Recognition的封装 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

2019独角兽企业重金招聘Python工程师标准>>>

写了一个linux下的Face Recognition的封装,当作是练习。 语言: C++的封装,结合opencv,使用方便。 下载源码: https://github.com/zacario-li/FaceRecognition-with-ArcSoftLib 整体来说,ArcSoft的提供的FaceEngine已经很好用了,接口非常简洁,不过对于一个不熟悉的使用者来说,还是会对ArcSoft那些接口的参数类型感到头晕,至少我一开始就是这样的。 基于这样的想法,我才有了对该FaceEngine封装的想法。 封装的思路如下:

  • 基于C++,避免不必要的内存泄漏
  • 基于OpenCV,但凡跟图像扯上关系,难免用上通用型的计算机视觉库,所以选择OpenCV
  • 基于最简单的使用逻辑,整个封装一共4个主要函数: Start(), Stop(), BuildFeatureList(), GetFaceIDScore(); 当然还配套了一些附加功能的函数,这个主要是为了自己使用方便。上述public函数设计,使用极其简单,但凡有点软件基础的都能轻松使用。 P.S. 给AcrSoft的FaceEngine一点建议:
  • 文档中,对于LPAFD_FSDK_FACERES, AFR_FSDK_FACEMODEL 两个类型定义的解释很少,很容易让用户产生误解。 在我看来,像AFR_FSDK_FACEMODEL.pbFeature 这个指针,从接口中带出来Feature数据,看起来像是存储在arcsoft库中的某个全局变量中的,这个就要求用户获取到feature后,必须立马copy到其它内存区域。这一点,文档中并没有提及。

    summary:

  • 优化接口使用方式,用尽量简便的接口提供给用户。
  • 添加代码注释,对于sample代码的设计给出详细的解释,并标注上一般使用可能会遇到的问题 ArcSoft的FaceEngine免费给大家用,真的是佛心,希望ArcSoft越来越好。
  • 转载于:https://my.oschina.net/bangbangda/blog/3024578

    总结

    以上是生活随笔为你收集整理的【Linux】Face Recognition的封装的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。