• 大小: 16.48MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-20
  • 语言: 其他
  • 标签: opencv  车辆检测  

资源简介

因为找了一些程序不能运行,所以自己做了个车辆检测的项目,基于vs2013和opencv3,有项目可直接运行(版本更新后不保证),提供两个模型和测试视频、图片。 如有帮助或建议请给予评价,同时希望大家有资源能多多上传,交流才能进步。谢谢

资源截图

代码片段和文件信息

//  定义控制台应用程序的入口点。
//


#include “opencv2/objdetect/objdetect.hpp“
#include “opencv2/highgui/highgui.hpp“
#include “opencv2/imgproc/imgproc.hpp“
#include “opencv2/ml/ml.hpp“

#include 
#include 
using namespace std;
using namespace cv;

void detectAndDraw(Mat& img CascadeClassifier& cascade double scale)
{
double t = 0;
vector car;
const static Scalar colors[] = { CV_RGB(0 0 255)};

Mat gray smallImg(cvRound(img.rows / scale) cvRound(img.cols / scale) CV_8UC1);//将图片缩小,加快检测速度

cvtColor(img gray CV_BGR2GRAY);//因为用的是类haar特征,所以都是基于灰度图像的,这里要转换成灰度图像
resize(gray smallImg smallImg.size() 0 0 INTER_LINEAR);//将尺寸缩小到1/scale用线性插值
equalizeHist(smallImg smallImg);//直方图均衡

t = (double)cvGetTickCount();//用来计算算法执行时间

cascade.detectMultiScale(smallImgcar
1.1 2 0
//|CV_HAAR_FIND_BIGGEST_object
//|CV_HAAR_DO_ROUGH_SEARCH
| CV_HAAR_SCALE_IMAGE

Size(30 30));

t = (double)cvGetTickCount() - t;//相减为算法执行的时间
printf(“detection time = %g ms\n“ t / ((double)cvGetTickFrequency()*1000.));
for (vector::const_iterator r =car.begin(); r != car.end(); r++)
{
Mat smallImgROI;
vector nestedobjects;
Point center;
Scalar color = colors[0];
int radius;
center.x = cvRound((r->x + r->width*0.5)*scale);//还原成原来的大小
center.y = cvRound((r->y + r->height*0.5)*scale);
radius = cvRound((r->width + r->height)*0.25*scale);
circle(img center radius color 3 8 0);
smallImgROI = smallImg(*r);
}
cv::imshow(“result“ img);
}
int main(int argc const char** argv)
{
VideoCapture capture(“4.flv“);

//【2】循环显示每一帧
while (1)
{
Mat frame;//定义一个Mat变量,用于存储每一帧的图像
capture >> frame;  //读取当前帧
imshow(“读取视频“ frame);  //显示当前帧
waitKey(1);  //延时30ms

CascadeClassifier cascade;//创建级联分类器对象
double scale = 3.0;
if (!cascade.load(“model.xml“))//从指定的文件目录中加载级联分类器
{
cerr << “ERROR: Could not load classifier cascade“ << endl;
return 0;
}

if (!frame.empty())//读取图片数据不能为空
{
detectAndDraw(frame cascade scale);
//waitKey(0);
}


}return 0;
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-03-30 14:59  车辆检测\
     目录           0  2017-03-30 14:59  车辆检测\ConsoleApplication13\
     文件     1061211  2017-03-30 09:08  车辆检测\ConsoleApplication13\1 (1).png
     文件      941345  2017-03-30 09:08  车辆检测\ConsoleApplication13\1 (2).png
     文件      834930  2017-03-30 09:09  车辆检测\ConsoleApplication13\1 (3).png
     文件      760951  2017-03-30 09:10  车辆检测\ConsoleApplication13\1 (4).png
     文件      656273  2017-03-30 09:10  车辆检测\ConsoleApplication13\1 (5).png
     文件      609102  2017-03-30 09:08  车辆检测\ConsoleApplication13\1 (6).png
     文件      893359  2017-03-30 09:10  车辆检测\ConsoleApplication13\1 (7).png
     文件     1127770  2017-03-30 09:09  车辆检测\ConsoleApplication13\1 (8).png
     文件     1022765  2017-03-30 09:07  车辆检测\ConsoleApplication13\1 (9).png
     文件       36918  2013-07-31 15:24  车辆检测\ConsoleApplication13\1.BMP
     文件      749600  2017-03-29 18:44  车辆检测\ConsoleApplication13\1.png
     文件      747223  2017-03-29 18:46  车辆检测\ConsoleApplication13\2.png
     文件     2788640  2017-03-16 15:50  车辆检测\ConsoleApplication13\4.flv
     文件        7301  2017-03-29 18:40  车辆检测\ConsoleApplication13\ConsoleApplication13.vcxproj
     文件         944  2017-03-29 18:40  车辆检测\ConsoleApplication13\ConsoleApplication13.vcxproj.filters
     文件      308101  2017-03-29 18:43  车辆检测\ConsoleApplication13\model.xml
     文件      118803  2016-03-17 03:15  车辆检测\ConsoleApplication13\model1.xml
     目录           0  2017-03-30 14:57  车辆检测\ConsoleApplication13\x64\
     目录           0  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\
     目录           0  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\
     文件       33780  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\CL.read.1.tlog
     文件        1262  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\CL.write.1.tlog
     文件         165  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\ConsoleApplication13.lastbuildstate
     文件        2202  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\cl.command.1.tlog
     文件        4444  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\link.command.1.tlog
     文件        5608  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\link.read.1.tlog
     文件        1246  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleA.85F7FFFD.tlog\link.write.1.tlog
     文件        2181  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\ConsoleApplication13.log
     文件      617472  2017-03-30 14:58  车辆检测\ConsoleApplication13\x64\Debug\vc120.idb
............此处省略11个文件信息

评论

共有 条评论