-
大小: 4.43MB文件類(lèi)型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-11-12
- 語(yǔ)言: 其他
- 標(biāo)簽:
資源簡(jiǎn)介
運(yùn)用核密度自適應(yīng)閾值背景建模算法對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè),文檔加代碼,實(shí)現(xiàn)效果較好

代碼片段和文件信息
//?Capture.cpp?:?定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。
//
#include?“stdafx.h“
#include?
#include?
#include?
#include?
#include?
#include?
using?namespace?std;
#pragma?comment?(lib“cv.lib“)
#pragma?comment?(lib“cxcore.lib“)
#pragma?comment?(lib“highgui.lib“)
#pragma?comment?(lib“cvaux.lib“)
#define?B(imageij)?((uchar*)(image->imageData?+?image->widthStep*j))[i*3]??
#define?G(imageij)?((uchar*)(image->imageData?+?image->widthStep*j))[i*3+1]
#define?R(imageij)?((uchar*)(image->imageData?+?image->widthStep*j))[i*3+2]
#define?I(imageij)?((uchar*)(image->imageData?+?image->widthStep*j))[i]
#define?N?22
int?main(int?argcchar?**argv)
{
CvCapture?*cap=NULL;
IplImage?*pImage[N]={NULL};?????//從視頻中得到前20幀第21幀為當(dāng)前幀
IplImage?*pImageGray[N]={NULL};?//前20幀的灰度圖,用來(lái)建密度函數(shù)第21幀為當(dāng)前幀
IplImage?*src=NULL;????//
IplImage?*dst=NULL;
int?nframe=0;
int?m[N-2];?//用來(lái)存放20幀差的絕對(duì)值
double?mid=0;?????//20幀差中間值
double?thita=0.0;?//窗口大小
double?thita1=4.0;
double?th=0.0;??//分割閾值
double?reslut=0.0;
int?shi=0;
double?caizhi=0.0;
cvNamedWindow(“video1“?1);
cvNamedWindow(“video2“?1);
cvMoveWindow(“video1“?30?0);
cvMoveWindow(“video2“?290?0);
int?ijk;
if(?!(?cap?=?cvCaptureFromFile(“video.long.raw.avi“)?))
/*if(?!(?cap?=?cvCaptureFromFile(“a04.avi“)?))*/
{
fprintf(stderr?“Can?not?open?video?file\n“);
return?-2;
}
while(cap)
{
nframe++;
// pImage=cvQueryframe(cap);
src=cvQueryframe(cap);
if(nframe==1)
dst=cvCreateImage(cvGetSize(src)IPL_DEPTH_8U1);
cout<ame< if(nframe {
pImage[nframe]=cvCloneImage(src);
pImageGray[nframe]=cvCreateImage(cvGetSize(pImage[nframe])IPL_DEPTH_8U1);
cvCvtColor(pImage[nframe]pImageGray[nframe]CV_BGR2GRAY);
cvFlip(pImageGray[nframe]pImageGray[nframe]0);
//for(j=0;j<3;j++){??//對(duì)每個(gè)點(diǎn)進(jìn)行判斷
// for?(i=300;iwidth;i++)
// {
// shi=I(pImageGray[nframe]ij);
// cout< // }
// cout< //}
}
else{
pImageGray[N-1]=cvCreateImage(cvGetSize(src)IPL_DEPTH_8U1);
cvCvtColor(srcpImageGray[N-1]CV_BGR2GRAY);
cvFlip(pImageGray[N-1]pImageGray[N-1]0);
//for(j=0;jheight;j++){??//對(duì)每個(gè)點(diǎn)進(jìn)行判斷
// for?(i=0;iwidth;i++){
// th=0.0;
// reslut=0.0;
// for(k=1;k // m[k]=abs(I(pImageGray[k]ij)-I(pImageGray[k+1]ij));??//計(jì)算幀差m[20]
// }
// /*for(k=1;k // cout< // cout< // for(int?a=1;a // int?k1=a;
// for(int?b=a+1;b<21;b++)
// if(m[k1]>m[b])?k1=b;
// m[a]=m[k1];???????????????????//求得中間值
// }
// mid=(m[N/2]+m[N/2+1]);
// //cout< // thita=mid/(0.68*1.414);???????????//計(jì)算得到窗口寬度
// th=0.015/thita;???????????????????//計(jì)算得到閾值
// for(int?a1=1;a1 // reslut+=exp(-(I(pImageGray[N-1]
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件?????406528??2010-04-28?14:51??Capture\Background?and?foreground?modeling?using?nonparametric?kernel?density?estimation?for?visual?surveillane.pdf
?????文件???????5183??2010-05-26?21:23??Capture\Capture\Capture.cpp
?????文件???????4498??2010-05-25?18:33??Capture\Capture\Capture.vcproj
?????文件???????1427??2010-05-31?14:27??Capture\Capture\Capture.vcproj.01554C3E9EC245B.Administrator.user
?????文件???????1183??2010-05-25?18:33??Capture\Capture\ReadMe.txt
?????文件????????212??2010-05-25?18:33??Capture\Capture\stdafx.cpp
?????文件????????233??2010-05-25?18:33??Capture\Capture\stdafx.h
?????文件????????498??2010-05-25?18:33??Capture\Capture\targetver.h
?????文件???????5150??2010-05-26?21:03??Capture\Capture\ve-17A.tmp
?????文件????9227264??2010-05-31?14:27??Capture\Capture.ncb
?????文件????????887??2010-05-25?18:33??Capture\Capture.sln
????..A..H.?????15360??2010-05-31?14:27??Capture\Capture.suo
?????文件????2172246??2014-02-06?17:00??Capture\一種基于切比雪夫不等式的自適應(yīng)閾值背景建模算法_張琨.pdf
?????目錄??????????0??2010-05-31?14:13??Capture\Capture
?????目錄??????????0??2017-12-26?14:31??Capture
-----------?---------??----------?-----??----
?????????????11840669????????????????????15
評(píng)論
共有 條評(píng)論