freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

目標(biāo)檢測與跟蹤技術(shù)研究及實(shí)現(xiàn)畢業(yè)論文-文庫吧在線文庫

2025-07-25 16:10上一頁面

下一頁面
  

【正文】 int i,j,t,pixel。 else if(pixel0) m_pBackground[t] = BYTE(0)。圖像配準(zhǔn)完成后確定了背景圖像,接著就可以利用幀間差分法完成目標(biāo)檢測工作。對于二維差分圖像,從理論上來講,只有目運(yùn)動的重疊區(qū)域的像素點(diǎn)值為零,不過實(shí)際處理中,相鄰幀圖像中,光照的改變、高頻噪聲干擾以及場景中小的變化,都會使得二維差分圖像中除了運(yùn)動目標(biāo)以外不少像素點(diǎn)值都不為零,存在很多這樣會產(chǎn)生虛假運(yùn)動目標(biāo)。4) 得到差分相乘圖像后,按照靜態(tài)背景下運(yùn)動目標(biāo)檢測的方法對圖像進(jìn)行形態(tài)學(xué)處理和陰影去除,從而實(shí)現(xiàn)運(yùn)動目標(biāo)的檢測。 //第3幀數(shù)據(jù) unsigned char *frame4。 類的實(shí)現(xiàn)/*ChafenMul函數(shù) 說明:構(gòu)造函數(shù),并分配內(nèi)存空間,參數(shù)為幀的高度和寬度*/ChafenMul::ChafenMul(int width,int height,int _targetThreshold):targetThreshold(_targetThreshold),frameWidth(width),frameHeight(height),frame1(NULL),frame2(NULL),frame3(NULL),frame4(NULL){ frame1 = new unsigned char[width * height]。 readyCount = 0。 if(readyCount == 3) memcpy(frame4,buffer,width * height * sizeof(unsigned char))。 i ++) { frame1[j*frameWidth+i]=abs(frame3[j*frameWidth+i] frame1[j * frameWidth + i])。在準(zhǔn)備了4幀數(shù)據(jù)后,調(diào)用process函數(shù)進(jìn)行目標(biāo)檢測。核密度估計(jì)方法是最常用的無參數(shù)密度估計(jì)方法。如果目標(biāo)模型是每一個(gè)值的直方圖,那么歸一化后目標(biāo)顏色分布可以用如下形式表示: (46)式中, 函數(shù)——位于的像素對應(yīng)顏色索引的映像,——Δ函數(shù),——?dú)w一化系數(shù)。 目標(biāo)跟蹤實(shí)現(xiàn) 由以上分析可知,在當(dāng)前幀中使得值達(dá)到最大的目標(biāo)候選區(qū)域就是目標(biāo)最可能出現(xiàn)的位置。6) 當(dāng)時(shí)。 //圖像高度 int trackWinWidth。 //計(jì)算目標(biāo)直方圖 int CalculateHistogramSp(unsigned char* frame,char kernel,float histogram[HISTOGRAM_LENGTH])。 for(int i = 0。}/*~MeanShiftSegger函數(shù) 說明:析構(gòu)函數(shù)*/MeanShiftSegger::~MeanShiftSegger(){}/* InitMeanShiftTracker()函數(shù) 說明:MeanShift過程跟蹤初始化程序*/void MeanShiftSegger::InitMeanShiftTracker(unsigned char* firstFrame,int frameWidth,int frameHeight,int targetPosX,int targetPosY,int targetWidth,int targetHeight){ thisimgWidth = frameWidth。 i HISTOGRAM_LENGTH。i ++){ pixel r = frame[j * imgWidth * 3 + i * 3] / 16。 } else { return 0。 //目標(biāo)模板直方圖/當(dāng)前直方圖 else weights[i] = 0。 pixel b = frame[j * imgWidth * 3 + i * 3 + 2] / 16。}/*MeanShiftTrackProcess函數(shù) 說明:MeanShift跟蹤主調(diào)用過程*/void MeanShiftSegger::MeanShiftTrackProcess(unsigned char* frame,int frameNumber){ if(frameNumber == 0){ //在指定位置建立目標(biāo)模型 CalculateHistogramSp(frame,39。 MeanShiftProcessSp(frame)。 frame[min(imgHeight 1,currentY + trackWinHeight) * imgWidth * 3 + i * 3 + 0] = 0。 frame[j * imgWidth * 3 + min(imgWidth 1,currentX + trackWinWidth) * 3 + 0] = 0。} 函數(shù)的調(diào)用第一步構(gòu)造了MeanShiftSegger類,并假設(shè)在當(dāng)前幀中,目標(biāo)初始位置的橫縱坐標(biāo)分別為targetX、targetY,另外目標(biāo)的大小為targetWidth、targetHeight,并且frameBuffer為當(dāng)前幀的數(shù)據(jù)??梢娫撍惴ǖ年P(guān)鍵是目標(biāo)的可分割性和閾值的選擇。這種情況下,在圖像中某一區(qū)域處理效果很好的閾值在其他區(qū)域處理效果卻可能很差。define EDGE_SPACE 5 //計(jì)算時(shí)留出的邊界寬度define EDGE_DRAW 20 //畫框跟蹤窗時(shí)擴(kuò)出的邊界寬度define BLOCK_NUMBER 5 //分塊數(shù)目define TEMPLETE_SIZE 60 //匹配模板大小//WININFO GravityTrack (unsigned char* sGray, int sWidth, int sHeight,int sThreshold)。 int M01bh = 0。i++) { int k = sWidth*j+i。} 函數(shù)調(diào)用通過在每一幀圖像中調(diào)用Gravity函數(shù),并為該函數(shù)提供幀數(shù)據(jù)以及分隔目標(biāo)區(qū)域的閾值來實(shí)現(xiàn)場景的目標(biāo)檢測與跟蹤。采用形心跟蹤算法也實(shí)現(xiàn)了在簡單背景下多目標(biāo)的檢測跟蹤。目標(biāo)跟蹤部分采用兩種方法,一種是基于Mean Shift的目標(biāo)跟蹤方法,另一種是基于重心法的目標(biāo)跟蹤方法。 } } M00bh+=iLine。jsHeightEDGE_SPACE。 = 0。在一個(gè)窗口中,計(jì)算所有的坐標(biāo)加權(quán)平均,坐標(biāo)就是當(dāng)前幀中目標(biāo)形心的坐標(biāo),計(jì)算公式如下: (414)式中:——圖像在上得像元灰度值,、——分別為跟蹤窗口內(nèi)的方向和方向的像元數(shù)。根據(jù)不同情況,可采用不同的閾值分割方法。 基于形心法的目標(biāo)跟蹤算法形心跟蹤算法具有計(jì)算量小、速度快等特點(diǎn),對很多實(shí)際的工程應(yīng)用具有重要意義。 for(int i = 0。 j min(imgHeight 1,currentY + trackWinHeight)。 i min(imgWidth,currentX + trackWinWidth)。 int iteratorCoumt = 0。 sumOfWeights += weights[ptr]。 j ++){ for(int i = max(0,currentX trackWinWidth / 2)。 float newY = 。 pxValue ++。) { for(int j = max(0,currentY trackWinHeight / 2)。 thistrackWinHeight = targetHeight。 //memset(tempHistogram,0,sizeof(float) * HISTOGRAM_LENGTH)。}。 //當(dāng)前目標(biāo)縱坐標(biāo)private: float currHistogram[HISTOGRAM_LENGTH]。class MeanShiftSegger{public: MeanShiftSegger()。2) 當(dāng)前幀圖像目標(biāo)位置初始化值為,計(jì)算, 求出近似系數(shù):。根據(jù)可得: (48) 候選模型在以后的各幀圖像中,把有可能含有運(yùn)動目標(biāo)的部分,叫作候選區(qū)域,設(shè)它的中心坐標(biāo)是,和核函數(shù)中心點(diǎn)坐標(biāo)相同。這里采用第二種形式,那么,式(42)可寫成如下形式: (43)如果是中心對稱,并且滿足,K(x)定義在的區(qū)間里,那么稱為的輪廓函數(shù),其中為標(biāo)準(zhǔn)化常量系數(shù)。4 運(yùn)動目標(biāo)跟蹤 基于Mean Shift的運(yùn)動目標(biāo)跟蹤算法前面對靜態(tài)背景和動態(tài)背景下的運(yùn)動目標(biāo)檢測方法進(jìn)行了介紹,下面對復(fù)雜場景中的運(yùn)動目標(biāo)跟蹤進(jìn)行研究。 }else frame1[j * frameWidth + i] = 0。 for(int j = 0。 if(frame4 != NULL) delete[] frame4。 memset(frame1,0,sizeof(unsigned char) * width * height)。 //輸入幀的數(shù)量 int targetThreshold。 ~ChafenMul()。一個(gè)階躍的邊緣信號從第1幀中順序運(yùn)動到、和中的位置時(shí),進(jìn)行差分相乘或差分累加,對它們結(jié)果進(jìn)行對比發(fā)現(xiàn),如果使用差分累加方法,不僅兩差值信號的中間因?yàn)槔奂映霈F(xiàn)了較大值,而且使其他信號的值也變大;如果對兩個(gè)差值信號進(jìn)行相乘處理,最后結(jié)果只有兩個(gè)差值信號的中間出現(xiàn)較大值,而且其他位置依然為零。但當(dāng)兩幅圖像之間不僅有平移變化,還存在旋轉(zhuǎn)或者比例變化時(shí),需要使用特征點(diǎn)匹配或其他方法進(jìn)行圖像配準(zhǔn)從而求出兩幀圖像之間的變換關(guān)系。實(shí)驗(yàn)結(jié)果如圖所示。iWIDTH。jnHeight。jnHeight。 } else if(m_nFrame%(2*BACK_ALL_NUM)==1) //更新背景圖像 { GetBgImage()。}/*ReceiveFrame函數(shù)說明:接收圖像并進(jìn)行運(yùn)算 */Void CStatsticDetect::ReceiveFrame(int index, BYTE *sBuf, DETECT_METHOD sMethod){ m_nFrame = index。 }CStatsticDetect::~CStatsticDetect(){ delete []m_pBackHistgram。 m_pDiffImage = new BYTE[IMAGESIZE]。 m_pCurImage = new BYTE[IMAGESIZE*3]。 void SaveBmp(BYTE *buffer,int nwidth, int nheight, int bit, int index)。 BOOL GetBgByHistgram(short int *pHistgram,BYTE *sBg,int nWidth,int nHeight)。 //背景 BYTE *m_pDiffImage。 public: BYTE *m_pCurImage。閾值分割完成之后,為了能更好地進(jìn)行目標(biāo)定位,需要將由于噪聲干擾出現(xiàn)的一些小孔洞和毛刺填補(bǔ)或去除。大致思想是先根據(jù)幀間差分提取出運(yùn)動區(qū)域,然后在提取的運(yùn)動區(qū)域內(nèi)對背景差分圖像和幀間差分圖像進(jìn)行目標(biāo)檢測。且閾值的選擇決定了檢測結(jié)果的好壞,閾值過低不能抑制圖像噪聲,過高則濾去了有用變化。還有一些優(yōu)秀的算法如神經(jīng)網(wǎng)絡(luò)方法和小波放大等也被應(yīng)用到運(yùn)動目標(biāo)檢測中,由于硬件運(yùn)算能力和算法的限制,在目前的目標(biāo)檢測與跟蹤的實(shí)時(shí)性和魯棒性并不太理想。這些關(guān)鍵點(diǎn)可以用2D或3D的坐標(biāo)值來表達(dá),而插值函數(shù)分別對應(yīng)各坐標(biāo)軸。而局部運(yùn)動較復(fù)雜,尤其是在存在多目標(biāo)的情況下,各個(gè)目標(biāo)做不同的運(yùn)動,只有采用精細(xì)方法才能夠準(zhǔn)確表達(dá)。在場景中檢測出目標(biāo)位置,通過提取的目標(biāo)特征和運(yùn)動參數(shù)等進(jìn)一步確定目標(biāo),一般通過攝像機(jī)獲取動態(tài)序列圖像的信息。第二章, 主要介紹課題需要用到的基本知識,包括運(yùn)動圖像分析、運(yùn)動的分類和表達(dá)。l 難以掌握實(shí)時(shí)性和準(zhǔn)確性的平衡運(yùn)動目標(biāo)檢測跟蹤要求很高的實(shí)時(shí)性和準(zhǔn)確性。目前國內(nèi)外主要運(yùn)用的方法有:幀間差分法、背景差分法、光流場法以及塊匹配方法等。如中科院自動化研究所模式識別國家重點(diǎn)實(shí)驗(yàn)室(NLPR)視覺監(jiān)控組等許多科研機(jī)構(gòu)都對該領(lǐng)域作了大量的研究。以求提高光電跟蹤測量儀器的性能,并實(shí)現(xiàn)多目標(biāo)跟蹤。目前監(jiān)控系統(tǒng)沒有達(dá)到非常理想效果。場景變化和景物運(yùn)動在動態(tài)圖像序列中顯示得非常清晰。本文把運(yùn)動目標(biāo)檢測跟蹤分為兩個(gè)部分即目標(biāo)的實(shí)時(shí)檢測和目標(biāo)的實(shí)時(shí)跟蹤來分析,目標(biāo)檢測部分分為靜止背景下的運(yùn)動目標(biāo)檢測和動態(tài)背景下的目標(biāo)檢測,常用的檢測方法有:幀間差分法、背景相減法和光流法等。本科生畢業(yè)設(shè)計(jì)(論文) 論 文 題 目: 目標(biāo)檢測與跟蹤技術(shù)研究及實(shí)現(xiàn) 摘 要近年來,隨著信息技術(shù)地發(fā)展,圖像處理技術(shù)越來越得到廣泛地應(yīng)用。目標(biāo)跟蹤部分對兩種方法進(jìn)行了分析,一種是基于Mean Shift的目標(biāo)跟蹤方法,另一種是基于形心法的目標(biāo)跟蹤
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1