资源简介
基于opencv cascade分类器及模板匹配算法实现的人脸检测及跟踪算法,首先 cascade检测到人脸,然后更新ROI区域,当检测不到人脸时使用模板匹配方法进行识别。i7上可达到80FPS,速率非常快,鲁棒性非常好,当头倾斜90°也能够跟踪。
代码片段和文件信息
#include “StdAfx.h“
#include
#include
#include “VideoFaceDetector.h“
#include
const cv::String WINDOW_NAME(“Camera video“);
//const cv::String CASCADE_FILE(“cascade_paper.xml“);
//const cv::String CASCADE_FILE(“haarcascade_frontalface_default.xml“);
const cv::String CASCADE_FILE(“haarcascade_frontalface_alt2.xml“);
//const cv::String CASCADE_FILE(“lbpcascade_frontalface.xml“);
//const cv::String CASCADE_FILE(“aGest.xml“);
int main(int argc char** argv)
{
// Try opening camera
cv::VideoCapture camera(0);
//cv::VideoCapture camera(“D:\\video.mp4“);
if (!camera.isOpened()) {
fprintf(stderr “Error getting camera...\n“);
exit(1);
}
cv::namedWindow(WINDOW_NAME cv::WINDOW_AUTOSIZE);
VideoFaceDetector detector(CASCADE_FILE camera);
cv::Mat frame;
double fps = 0 time_per_frame;
detector.setTemplateMatchingMaxDuration(1);
while (true)
{
int timebegin = 0;
int timeend = 0;
timebegin = clock();
auto start = cv::getCPUTickCount();
detector >> frame;
auto end = cv::getCPUTickCount();
timeend = clock();
printf( “Running time is: %f ms \n“ static_cast(timeend-timebegin)/CLOCKS_PER_SEC*1000);//输出运行时间
time_per_frame = (end - start) / cv::getTickFrequency();
fps = (15 * fps + (1 / time_per_frame)) / 16;
//printf(“Time per frame: %3.3f\tFPS: %3.3f\n“ time_per_frame fps);
cv::rectangle(frame detector.face() cv::Scalar(255 0 0));
cv::circle(frame detector.facePosition() 30 cv::Scalar(0 255 0));
cv::imshow(WINDOW_NAME frame);
if (cv::waitKey(1) == 27) break;
}
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2359296 2016-11-18 14:47 人脸j检测及跟踪\ipch\opentest-aab0e643\opentest-526e489e.ipch
文件 74652 2009-11-16 10:42 人脸j检测及跟踪\opentest\aGest.xm
文件 74941 2016-09-29 11:11 人脸j检测及跟踪\opentest\cascade_paper.xm
文件 540616 2015-01-25 14:31 人脸j检测及跟踪\opentest\haarcascade_frontalface_alt2.xm
文件 51856 2013-11-13 17:44 人脸j检测及跟踪\opentest\lbpcascade_frontalface.xm
文件 1709 2016-11-18 14:47 人脸j检测及跟踪\opentest\opentest.cpp
文件 5057 2016-11-11 10:17 人脸j检测及跟踪\opentest\opentest.vcxproj
文件 1512 2016-11-11 10:17 人脸j检测及跟踪\opentest\opentest.vcxproj.filters
文件 143 2015-11-02 15:16 人脸j检测及跟踪\opentest\opentest.vcxproj.user
文件 1560 2015-11-02 15:16 人脸j检测及跟踪\opentest\ReadMe.txt
文件 213 2015-11-02 15:16 人脸j检测及跟踪\opentest\stdafx.cpp
文件 233 2015-11-02 15:16 人脸j检测及跟踪\opentest\stdafx.h
文件 236 2015-11-02 15:16 人脸j检测及跟踪\opentest\targetver.h
文件 9278 2016-11-14 10:51 人脸j检测及跟踪\opentest\VideoFaceDetector.cpp
文件 2399 2016-11-14 10:43 人脸j检测及跟踪\opentest\VideoFaceDetector.h
文件 891 2015-11-02 15:16 人脸j检测及跟踪\opentest.sln
..A..H. 31232 2016-11-18 14:47 人脸j检测及跟踪\opentest.suo
目录 0 2016-11-18 14:48 人脸j检测及跟踪\ipch\opentest-aab0e643
目录 0 2016-11-18 14:48 人脸j检测及跟踪\ipch
目录 0 2016-11-18 14:49 人脸j检测及跟踪\opentest
目录 0 2016-11-18 14:48 人脸j检测及跟踪
----------- --------- ---------- ----- ----
3155824 21
相关资源
- 3d结构光扫描 opencv
- wider_face.txt
- 九点标定opencv+VS2015)
- opencv调整图像亮度对比度的
- libopencv_info.so
- OpenCPN图文编译教程
- 自实现双边滤波代码及测试图像
- opencv2.4.7安装程序及教学
- 虚拟视点绘制DIBR源码
- qt+zbar+opencv 环境配置
- opencv图像配准
- 人脸检测分类器
- OpenCV利用查找表Look-up table增加图像对
- VS2017下用OpenCV实时播放RTSP视频流并截
- OpenCV 飞行游戏手势控制源码.rar
- Qt+Opencv实现四步相移
- 相机标定棋盘图
- Opencv实战项目
- 人脸检测.sln
- opencv.txt
- 利用Opencv较高效率的视频图像传输
- 人脸识别(Web人脸检测数据采集部分
- opencv人脸识别源码
- libopencv_core300.dll
- 坦克大战地图生成代码
- opencv_imgproc249d.dll
- opencv_highgui249d.dll
- 高级形态学变换
- opencv.rar
- openCONFIGURATOR安装安装说明文档
评论
共有 条评论