车辆检测代码


基于opencv的车辆检测代码,检测在道路上行驶车流量、车型等
资源截图
代码片段和文件信息
#include “StdAfx.h“
#include “AVIHandler.h“
#include 

#pragma comment(lib“vfw32.lib“)


AVIHandler::AVIHandler(void):gray_value(NULL)gray_value_square(NULL)
{
this->loaded = FALSE;
}

AVIHandler::AVIHandler(CString filename):gray_value(NULL)gray_value_square(NULL)
{
this ->loaded = FALSE;
LoadVideo(filename);
}
AVIHandler::~AVIHandler(void)
{
if(gray_value != NULL) free(gray_value);
if(gray_value_square != NULL) free(gray_value_square);
}



//加载视频数据
BOOL AVIHandler::LoadVideo(CString filename)
{
//读取AVI文件信息
HRESULT result;
AVIFileInit(); //使用AVI族函数读取AVI文件前应首先调用

PAVIFILE pfile;//AVI文件指针
AVIFILEINFO pfi;//AVI文件信息
PAVISTREAM pavi;//AVI流
AVISTREAMINFO stinfo;//AVI流信息

//CString file = “d:plane.avi“;
//打开AVI文件
result=AVIFileOpen(&pfilefilenameOF_READNULL);
//AVI文件信息
result=AVIFileInfo(pfile&pfisizeof(AVIFILEINFO));
//获得AVI视频流
result=AVIFileGetStream(pfile&pavistreamtypeVIDEO 
0);
//获得AVI视频流信息
result=AVIStreamInfo(pavi&stinfosizeof(AVISTREAMINFO));
//获得AVI包
pgf = AVIStreamGetframeOpen(paviNULL);
 
    if (pgf==NULL)
    {
//数据出错
return FALSE;
    }

HRESULT hr;

//获得特想的宽和高
int cx=pfi.dwWidth;//图象宽、高
int cy=pfi.dwHeight;

width=cx;
height=cy;
length=pfi.dwLength;


//使用默认长度,只处理100帧
//length=50;

//AVI桢格式,位图Header位图具体格式。
lpbm = (LPBITMAPINFOHEADER)AVIStreamGetframe(pgf1);

defaultPad=3;

//分配缓冲内存空间
//非填充缓冲
gray_value = (unsigned char*)malloc(sizeof(unsigned char)*width*height*3);
//填充缓冲
gray_value_square = (unsigned char*)malloc(sizeof(unsigned char)*(width+defaultPad)*(height+defaultPad)*3);

this->loaded = TRUE;

return TRUE;
}

//获得一个frame
unsigned char* AVIHandler::GetSingleframe(int i)
{
return (unsigned char*)AVIStreamGetframe(pgfi)+40;
//return NULL;
}

int AVIHandler::GetframeCount(void)
{
return this->length;
}


int AVIHandler::GetframeWidth(void)
{
return this->width;
//return 0;
}


int AVIHandler::GetframeHeight(void)
{
return this->height;
//return 0;
}

//返回图像的BMP格式数据
LPBITMAPINFOHEADER AVIHandler::GetLPBM(void)
{
return this->lpbm;
}

BOOL AVIHandler::isLoaded(void)
{
return this->loaded;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      29184  2008-06-27 13:46  shipin视频图像运动目标检测演示说明.doc

     文件       2380  2008-04-07 19:06  shipinVideo DemoAVIHandler.cpp

     文件        844  2008-04-07 19:06  shipinVideo DemoAVIHandler.h

     文件       3159  2008-06-10 17:59  shipinVideo DemoChafenMul.cpp

     文件        559  2008-06-07 10:53  shipinVideo DemoChafenMul.h

     文件       1805  2007-10-10 17:46  shipinVideo DemoColorTrans.cpp

     文件        572  2007-06-08 17:04  shipinVideo Democolortrans.h

     文件       2236  2008-04-14 15:23  shipinVideo DemoDataManager.cpp

     文件       1261  2008-06-07 10:37  shipinVideo DemoDataManager.h

     文件       4476  2007-12-06 14:24  shipinVideo DemoDblinkedList.cpp

     文件       1135  2007-12-05 08:23  shipinVideo DemoDblinkedList.h

     文件        106  2008-04-06 13:16  shipinVideo DemoGlobal_Define.h

     文件      17947  2008-06-11 17:24  shipinVideo DemoGravityCenter.cpp

     文件       2679  2008-06-11 17:33  shipinVideo DemoGravityCenter.h

     文件       1168  2008-06-11 17:18  shipinVideo DemoGravityTrack.cpp

     文件        319  2008-06-11 17:17  shipinVideo DemoGravityTrack.h

     文件      15530  2008-06-11 17:36  shipinVideo DemoMainFrm.cpp

     文件       1711  2008-06-11 09:43  shipinVideo DemoMainFrm.h

     文件       7169  2008-06-07 12:06  shipinVideo DemoMeanShiftSegger.cpp

     文件       1292  2008-06-07 11:41  shipinVideo DemoMeanShiftSegger.h

     文件        348  2007-05-15 13:28  shipinVideo DemoMediaSource.h

     文件       1366  2008-06-11 17:41  shipinVideo DemoMotionDetectDiag.cpp

     文件       1248  2008-06-11 17:41  shipinVideo DemoMotionDetectDiag.h

     文件       1067  2008-06-10 17:23  shipinVideo DemoPOSDiag.cpp

     文件       1221  2008-06-07 11:29  shipinVideo DemoPOSDiag.h

     文件       4400  2008-06-07 02:30  shipinVideo DemoReadMe.txt

     文件       1106  2008-06-07 12:23  shipinVideo Demo
esource.h

     文件      12300  2008-06-11 17:30  shipinVideo DemoStaticDetect.cpp

     文件       2337  2008-06-11 17:40  shipinVideo DemoStaticDetect.h

     文件        212  2008-06-07 02:30  shipinVideo DemoStdAfx.cpp

............此处省略68个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)