資源簡介
基于OpenCV的車輛檢測,包含兩個檢測小視頻,能識別車輛,保存車輛圖片。在vs,ubuntu和樹莓派上均可以運行成功,可能需要修改部分圖像保存的代碼。方法比較簡單,適合新手入門。
代碼片段和文件信息
#include???
#include???
#include??
using?namespace?cv;
using?namespace?std;
int?main(int?argc?char**?argv)
{
string?videoFileName?=?“D:/opencv/project/sources/2.3.mov“;
int?threshold?=?20;????//?二值化閾值??
float?alpha?=?0.5;?????//?更新速度?[0?1]??
VideoCapture?capture;
capture.open(videoFileName);
if?(!capture.isOpened())
{
cout?<“cannot?open?video“?< return?-1;
}
Mat?foregroundImg;//顯示格式
Mat?foregroundMat;//處理格式
Mat?backgroundImg;
Mat?backgroundMat;
Mat?frame;//原始圖像
Mat?grayImg;//灰度化圖像
Mat?grayMat;//轉化過的灰度值圖像
int?first_x?=?0;?//矩形框調試
int?first_y?=?0;
????int?second_x?=?0;
int?second_y?=?0;
Mat?route1_b;//ROI區
Mat?route1_f;
Mat?route2_b;
Mat?route2_f;
Mat?route3_b;
Mat?route3_f;
Mat?route1_b_ROI;
int?route1_b_num?=?0;//像素數
int?route1_b_car?=?0;//汽車數量
char?route1_b_name[100];
int?route1_b_out_save[2];//像素點保存
Mat?route1_f_ROI;
int?route1_f_num?=?0;
int?route1_f_car?=?0;
char?route1_f_name[100];
int?route1_f_out_save[2];
Mat?route2_b_ROI;
int?route2_b_num?=?0;
int?route2_b_car?=?0;
char?route2_b_name[100];
int?route2_b_out_save[2];
Mat?route2_f_ROI;
????int?route2_f_num?=?0;
int?route2_f_car?=?0;
char?route2_f_name[100];
int?route2_f_out_save[2];
Mat?route3_b_ROI;
int?route3_b_num?=?0;
int?route3_b_car?=?0;
char?route3_b_name[100];
int?route3_b_out_save[2];
Mat?route3_f_ROI;
????int?route3_f_num?=?0;
int?route3_f_car?=?0;
char?route3_f_name[100];
int?route3_f_out_save[2];
int?route1_b_buff[10]?=?{?0?};//濾波參數
int64?route1_b_out?=?0;
int?route1_b_cnt?=?0;
int64?route1_b_temp?=?0;
int?route1_f_buff[7]?=?{?0?};
int64?route1_f_out?=?0;
int?route1_f_cnt?=?0;
int64?route1_f_temp?=?0;
int?route2_b_buff[7]?=?{?0?};
int64?route2_b_out?=?0;
int?route2_b_cnt?=?0;
int64?route2_b_temp?=?0;
int?route2_f_buff[7]?=?{?0?};
int64?route2_f_out?=?0;
int?route2_f_cnt?=?0;
int64?route2_f_temp?=?0;
int?route3_b_buff[7]?=?{?0?};
int64?route3_b_out?=?0;
int?route3_b_cnt?=?0;
int64?route3_b_temp?=?0;
int?route3_f_buff[7]?=?{?0?};
int64?route3_f_out?=?0;
int?route3_f_cnt?=?0;
int64?route3_f_temp?=?0;
while?(capture.read(frame))
{
//namedWindow(“Connected?Components1“?1);???//調試專用滑條窗口
//namedWindow(“Connected?Components2“?1);
//namedWindow(“Connected?Components3“?1);
//namedWindow(“Connected?Components4“?1);
//createTrackbar(“first_x“?“Connected?Components1“?&first_x?600);
//createTrackbar(“first_y“?“Connected?Components2“?&first_y?600);
//createTrackbar(“second_x“?“Connected?Components3“?&second_x?600);
//createTrackbar(“second_y“?“Connected?Components4“?&second_y?600);
//rectangle(frame?cvPoint(first_x?first_y)?cvPoint(second_x?second_y)?cvScalar(0?255?0)?1?4?0);
cvtColor(frame?grayImg?CV_BGR2GRAY);//圖像灰度化
//imshow(“grayImg“?grayImg);
grayImg.conver
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???25989618??2016-11-19?17:37??car_Detect-m\2.3.mov
?????文件????1592580??2016-11-04?16:48??car_Detect-m\flow_differ_m\9.avi
?????文件?????114688??2017-01-20?21:45??car_Detect-m\flow_differ_m\Debug\flow_differ.exe
?????文件?????533892??2017-01-20?21:45??car_Detect-m\flow_differ_m\Debug\flow_differ.ilk
?????文件????4516864??2017-01-20?21:45??car_Detect-m\flow_differ_m\Debug\flow_differ.pdb
?????文件??????????0??2016-12-01?18:11??car_Detect-m\flow_differ_m\flow_differ\after_f.txt
?????文件?????126288??2016-12-01?18:11??car_Detect-m\flow_differ_m\flow_differ\befor_f.txt
?????文件????????560??2017-03-11?19:24??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.log
?????文件???????4298??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\cl.command.1.tlog
?????文件??????47074??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\CL.read.1.tlog
?????文件????????724??2017-03-11?19:24??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\CL.write.1.tlog
?????文件????????204??2017-03-11?19:24??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\flow_differ.lastbuildstate
?????文件??????15710??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\li
?????文件???????4796??2017-03-11?19:24??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\li
?????文件????????702??2017-03-11?19:24??car_Detect-m\flow_differ_m\flow_differ\Debug\flow_differ.tlog\li
?????文件?????373911??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\main.obj
?????文件????1453056??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\vc120.idb
?????文件????1421312??2017-01-20?21:45??car_Detect-m\flow_differ_m\flow_differ\Debug\vc120.pdb
?????文件???????4088??2016-11-26?14:58??car_Detect-m\flow_differ_m\flow_differ\flow_differ.vcxproj
?????文件????????948??2016-11-26?14:58??car_Detect-m\flow_differ_m\flow_differ\flow_differ.vcxproj.filters
?????文件???????8307??2016-11-27?21:45??car_Detect-m\flow_differ_m\flow_differ\main?-?副本.cpp
?????文件??????16431??2016-12-02?17:29??car_Detect-m\flow_differ_m\flow_differ\main.cpp
?????文件????3768320??2016-11-30?16:08??car_Detect-m\flow_differ_m\flow_differ\ole32.pdb\DB1D25D0215E46C2BCC8CEA00D3B4BEB1\download.error
?????文件???????1447??2016-12-01?18:11??car_Detect-m\flow_differ_m\flow_differ\route\Car1.png
?????文件???????1295??2016-12-01?18:11??car_Detect-m\flow_differ_m\flow_differ\route\Car10.png
?????文件???????1059??2016-12-01?18:10??car_Detect-m\flow_differ_m\flow_differ\route\Car100.png
?????文件????????904??2016-12-01?17:47??car_Detect-m\flow_differ_m\flow_differ\route\Car1000.png
?????文件????????883??2016-12-01?17:47??car_Detect-m\flow_differ_m\flow_differ\route\Car1001.png
?????文件????????881??2016-12-01?17:47??car_Detect-m\flow_differ_m\flow_differ\route\Car1002.png
?????文件????????874??2016-12-01?17:47??car_Detect-m\flow_differ_m\flow_differ\route\Car1003.png
............此處省略3276個文件信息
評論
共有 條評論