#include "stdafx.h"
#include <cv.h>
#include <highgui.h>
#include <Windows.h>
#include <time.h>
#include <iostream>
#pragma comment(lib, "opencv_objdetect246d.lib")
using namespace cv;
using namespace std;
//const char * cascade_name = "E:\\dt\\model.xml";//加载分类器
const char * cascade_name = "D:\\Visual Studio 2017\\Projects\\haar+svm车辆检测\\model.xml";
void detec_and_draw(IplImage * img)//检测视频中的车辆
{
static CvMemStorage * storage = 0;
static CvHaarClassifierCascade * cascade = 0;
int scale = 1;
CvPoint pt1,pt2;
cascade = (CvHaarClassifierCascade*)cvLoad(cascade_name,0,0,0);
storage = cvCreateMemStorage(0);
cvClearMemStorage(storage);
if(cascade)
{
CvSeq * car = cvHaarDetectObjects(img,cascade,storage,1.3,4,0,cvSize(20,20),cvSize(90,90));
for(int i = 0; i<(car?car->total:0);i++)
{
CvRect * r = (CvRect*)cvGetSeqElem(car,i);
pt1.x = r->x*scale;
pt2.x = (r->x+r->width)*scale;
pt1.y = r->y*scale;
pt2.y = (r->y+r->height)*scale;
cvRectangle(img,pt1,pt2,CV_RGB(255,255,0),2,8,0);
}
}
namedWindow("after",1);
cvShowImage("after",img);
return;
}
int main(int argc, char** argv)
{
CvCapture * capture = cvCreateFileCapture ("D:\\Visual Studio 2017\\Projects\\haar+svm车辆检测\\5.flv"); //读取视频
// CvCapture * capture = cvCreateFileCapture ("D:\\5.flv");
double fps=cvGetCaptureProperty(capture, CV_CAP_PROP_FPS ); //读取视频的帧率
int vfps = 1000 / fps; //计算每帧播放的时间
double frames=cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_COUNT);//读取视频中有多少帧
IplImage * frame;
int i=1;
while(i){
i++;
frame = cvQueryFrame( capture ); //抓取帧
if(!frame)break;
double start = GetTickCount();
detec_and_draw(frame);
double end=GetTickCount();
cout << end-start <<"ms"<< endl;
char c = cvWaitKey(vfps/10);
if(c == 27 )break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("example");
}
haar+svm车辆检测_harr_C++_车辆检测_SVM_源码
版权申诉
5星 · 超过95%的资源 81 浏览量
2021-10-04
02:40:31
上传
评论
收藏 319KB ZIP 举报
呼啸庄主
- 粉丝: 74
- 资源: 4702
最新资源
- 基于Typescript和PHP的编程知识储备库设计源码 - study-php
- Screenshot_2024-05-28-11-40-58-177_com.tencent.mm.jpg
- 基于Dart的Flutter小提琴调音器APP设计源码 - violinhelper
- 基于JavaScript和CSS的随寻订购网页设计源码 - web-order
- 基于MATLAB的声纹识别系统设计源码 - VoiceprintRecognition
- 基于Java的微服务插件集合设计源码 - wsy-plugins
- 基于Vue和微信小程序的监理日志系统设计源码 - supervisionLog
- 基于Java和LCN分布式事务框架的设计源码 - tx-lcn
- 基于Java和JavaScript的茶叶评级管理系统设计源码 - tea
- IMG_5680.JPG
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论1