当前位置:网站首页>opencv real-time face detection
opencv real-time face detection
2022-08-01 17:34:00 【A small project member】
Camera real-time face detection
Requires using the parameters of the face training library;
opencv3.4.14资源包
将opencv源代码中:./data/haarcascades Folder assignment worksbin目录下.
opencvFor environment construction, you can see my previous articles:OpenCV安装、QT、VS配置项目设置
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
void PrintMs(const char* text = "")
{
static long long last = 0;
long long cur = getTickCount();
if (last == 0)
{
last = cur;
return;
}
long long ms = 0;
ms = ((double)(cur - last) / getTickFrequency()) * 1000;
if (*text != 0)
{
printf("%s = %dms\n", text, ms);
}
last = getTickCount();
}
int main(int argc, char** argv) {
String cascadeFilePath = "./haarcascades/haarcascade_frontalface_alt.xml";
CascadeClassifier face_cascade;
if (!face_cascade.load(cascadeFilePath)) {
printf("could not load haar data...\n");
return -1;
}
Mat src, gray_src;
VideoCapture cam(0);
if (!cam.isOpened())
{
cout << "cam open failed!" << endl;
getchar();
return -1;
}
while (true)
{
PrintMs();
cam.read(src);
if (src.empty()) break;
flip(src, src, 1);
cvtColor(src, gray_src, COLOR_BGR2GRAY);
equalizeHist(gray_src, gray_src); // 直方图均衡化,Facilitates face detection
imshow("input image", src);
vector<Rect> faces;
face_cascade.detectMultiScale(gray_src, faces, 1.1, 2, 0, Size(30, 30));
for (size_t t = 0; t < faces.size(); t++) {
rectangle(src, faces[t], Scalar(0, 0, 255), 2, 8, 0);
}
namedWindow("output", CV_WINDOW_AUTOSIZE);
imshow("output", src);
PrintMs("face detect time: "); // AMD5800H 120ms左右
if (waitKey(5) == 'q') break;
}
waitKey(0);
return 0;
}
边栏推荐
猜你喜欢
随机推荐
ROS2系列知识(5):【参数】如何管理?
2022年SQL经典面试题总结(带解析)
C# LibUsbDotNet 在USB-CDC设备的上位机应用
2022年MySQL最新面试题
C # Excel helper classes
Unity ui点击事件只响应最上层ui的方式
深入分析类加载器
zabbix部署和简单使用
统信软件、龙芯中科等四家企业共同发布《数字办公安全创新方案》
Path helper class for C#
MySql 怎么查出符合条件的最新的数据行?
[供应链·案例篇]石油和天然气行业的数字化转型用例
史上最全的Redis基础+进阶项目实战总结笔记
二分练习题
C语言理论--笔试面试基础稳固
2022年深圳市临床医学研究中心申请指南
中信证券是国内十大券商吗?怎么开户安全?
Winform message prompt box helper class
研发团队数字化转型实践
ROS2系列知识(7):用rqt_console查看日志logs









