文章目录
- 前言
- 一、libfacedetection库是什么?
- 二、在vs2019中配置libfacedetection库:
- 三、在vs2019中使用libfacedetection库:
- 四、基于 CNN 的 Windows 人脸检测
- 总结:
- 参考来源
前言
关于libfacedetection库的配置及使用,以及用cmake来编译第三方开源库
一、libfacedetection库是什么?
1.1、libfacedetection库的定义:
这是一个基于cnn的图像人脸检测开源库。CNN 模型已转换为 C 源文件中的静态变量。源代码不依赖于任何其他库。您需要的只是一个C++编译器。您可以使用一个数据库的编译器在 Windows、Linux、ARM 和任何平台C++源代码。
1.2、如何使用libfacedetection库:
将目录 src/ 中的文件复制到项目中,并将它们编译为项目中的其他文件。源代码以标准 C/C++。应在支持 C/C++ 的任何平台上编译。
1.3、获libfacedetection安装包的渠道:
在这个链接中,我们能看到libfacedetection库的所有内容,并下载、解压:https://github.com/ShiqiYu/libfacedetection
下载方式如下:

二、在vs2019中配置libfacedetection库:
2.1、打开你的libfecetection解压的文件夹:

2.1、打开vs中的项目文件夹:

2.2、找到libfacedetection解压包的目录,将 src 文件夹复制到项目中:

2.3、在vs编译环境中,将它们编译为项目中的其他文件:
2.3.1、在 头文件 中添加现有项facedetectcnn.h:

2.3.2、在 源文件 中添加现有项:facedetectcnn.cpp、 facedetectcnn-int8data.cpp、 facedetectcnn-model.cpp

2.3.3、这四个文件都在 src 文件夹中,添加完成如下:

三、在vs2019中使用libfacedetection库:
3.1、首先,我们打开文件 detect-iamge.cpp :

3.2、其次,修改 detect-iamge.cpp 的文件内容为:
3.2.1、 代码块
#include <iostream>
#include <opencv2/opencv.hpp>
#include <facedetectcnn.h>
#define DETECT_BUFFER_SIZE 0x20000 //定义缓冲区大小
#define FACEDETECTION_EXPORT
using namespace std;
using namespace cv;
int main() {
Mat src, dst;
src = imread("D:\\Myfile\\素材照片\\opencv素材照片\\7.jpg"); //导入需要识别的图像
if (!src.data) {
//若不存在就返回 could not load your image!
cout << "could not load your image!" << endl;
return 0;
}
//pBuffer用来检测人脸
unsigned char* pBuffer = new unsigned char[DETECT_BUFFER_SIZE]; //multiple threads
//是多线程时,要分配内存空间
if<

本文详细介绍了如何在Visual Studio 2019(VS2019)中配置和使用libfacedetection库,包括库的介绍、下载渠道、配置步骤以及在项目中的应用。同时,针对编译错误,提供了通过CMake编译第三方库以获取facedetection_export.h文件的解决方法。最后,展示了基于CNN的人脸检测在不同条件下的性能比较。
最低0.47元/天 解锁文章
&spm=1001.2101.3001.5002&articleId=113336452&d=1&t=3&u=a838b5e02d594b6b98a7807cf83f30df)
1411

被折叠的 条评论
为什么被折叠?



