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

正文內容

基于混合高斯建模方法的運動目標檢測方法研究與實現(xiàn)畢業(yè)論文-資料下載頁

2025-06-30 12:31本頁面

【導讀】最后利用搭建在VisualC++6.0上的OpenCV軟件進行設計,使用?;旌细咚贡尘暗慕7椒▽崿F(xiàn)對運動目標的檢測。確地檢測出復雜環(huán)境下的運動目標,具有較好的魯棒性和實時性。

  

【正文】 和計算機視覺方面的很多通用算法。 OpenCV 擁有包括 500 多個 C函數(shù)的跨平臺的中、高層 APl, 它 通過 函數(shù)來實現(xiàn)用于圖形處理和 計算機 視覺方面的通用算法 [16]。 本文選取 OpenCV進行 對運動目標檢測的 優(yōu)勢 。 1. OpenCV對非 商業(yè)應用 和商業(yè)應用都是免費( FREE)的; 2. 代碼簡單,穩(wěn)定,有固定的函數(shù)算法提供, 通過對 OpenCV函數(shù)庫的調用, 它為用戶減輕了開發(fā)維護應用程序龐大代碼的沉重負擔 ,有 統(tǒng)一的結構和功能定義,并且可與其他庫兼容 ; 3. OpenCV致力于 真實世界 的實時應用,通過 對 C語言 代碼 的 優(yōu)化 ,對程序的 執(zhí)行速度 有很大 的提升,并且可以通過購買 Intel的 IPP 高性能多 媒體函數(shù)庫 (Integrated Performance Primitives)可以 得到更快的處理速度。 OpenCV函數(shù)庫的搭建 步驟。 首先安裝下載得到的 OpenCV應用程序, 在其計算機上對安裝的 OpenCV應用程序 進行環(huán)境變量的設置, 然后在 Visual C++6. 0下編譯所要的靜態(tài)和動態(tài)鏈接庫文件,包括 1ib路徑的設置、 include files等路徑 的 設置 ,再進行工程項目的鏈接設置。 18 在 VC++6. 0中建立新工程以后,在工程設置里添加需要的 OpenCV庫,并在程序文件中包含 OpenCV的頭文件,就 可以 搭建好基于 OpenCV下 VC++ 6. 0的環(huán)境設置 , 這樣就 可以在 Windows下面利用 VC++ 6. 0進行基于 OpenCV的程序編程。 圖像二值化 圖像的二值化處理是 將 圖像上的點的灰度 值 置為 0或 255, 而使 整 幅 圖像呈現(xiàn)出 較為明顯的黑白效果。通過 選取 適當?shù)拈y值 , 將 256個亮度等級的灰度圖像 變成能夠 反映圖像整體和局部特征的二值化圖像 處理的過程 。在 進行對 圖像處理 的過程 中, 對圖像進行二值化處理 非常重要 。 要進行二值圖像的處理與分析,首先要把灰度圖像 進行 二值化,得到二值化圖像,這樣 就 有利于對圖像 在 做進一步 處理時, 整個 圖像 中 的集合 屬性 只與 二值化后的 像素值為 0或 255的點的位置有關, 而 不再涉及像素的多級值, 這樣使圖像的 處理變得簡單,數(shù)據(jù)的處理和壓縮量 同樣也會變得更 小。 要想 得到理想的二值圖像,一般需要 采用封閉、連通的邊界定義不交疊的區(qū)域。 將 所有 像素點的 灰度 值 大于或等于 閾值的像素判定為屬于特定物體,其灰度值為 255表示,否則這些像素點 就會 排除在物體區(qū)域以外,灰度值為 0,表示背景或者例外的物體區(qū)域。 OpenCV 中的圖像二值化 過程。 OpenCV 中可以通過 cvThreshold 函數(shù)實現(xiàn)圖片的二值化 , 手動指定一 個閾值,以此閾值來進行圖像二值化處理 。 cvThreshold(pFrImg,pFrImg,12,255,CV_THRESH_BINARY)。 函數(shù) cvThreshold 對單通道數(shù)組應用固定閾值操作。該函數(shù)的典型應用是對灰度圖像進行閾值操作得到二值圖像。 cvThreshold( dst, src,200, 255, CV_THRESH_OTSU); pFrImg:前景的輸入 圖像; pFrImg:前景的 輸出圖像; 12:指的是閾值; 255:指的是 max_value; CV_THRESH_BINARY:指的是 threshold_type。 當 threshold_type 使用 CV_THRESH_BINARY 類型時,得到的全局自適應閾值 的 二值化圖片 , 這種方法 有利于處理 灰度直方圖呈現(xiàn) 多 峰特征的圖片。 形態(tài)學運算 數(shù)學形態(tài)學( Mathematical Morphology)是 一門由 法國科學家和德國科學家在研究巖 19 石結構時建立的一門 新興 學科。 它的主要 用途是獲取物體拓撲和結構信息 [17], 并 通過物體和結構元素 之間的 相互作用 ,運用 某些運算得到物體更本質的形態(tài)。 數(shù)學形態(tài)學的基本運算 方法 有 四種 :腐蝕 、膨脹、開運算和閉運算。 下面主要介紹這四種形態(tài)學算法。 圖像腐蝕 圖像 腐蝕( Erosion)是一種最基本的數(shù)學形態(tài)學運算, 通過對圖像的腐蝕,能夠 消除物體邊界點,使 圖像的 邊界向內部收縮, 從而 去除小于結構元素的物體。 通過使用 這樣選取 方法,把 不同大小的結構元素 選取出來 ,就 能夠 去除不同大小的物體。 圖像膨脹 圖像膨脹可以看成是腐蝕的對偶運算, 它和圖像的 腐蝕運算 基本 相同,設定 要處理的 圖像集合 和結構元素,通過結構元素對圖像進行膨脹處理。通過膨脹可以對 二值化物體邊界點進行擴充, 這樣就使得 與物體接觸 的所有背景點 就會與 物體 本身進行合并 ,使圖像的 邊界向外部擴張。 對于 距離比較近 的 兩個物體之間, 通過 膨脹 運算 可能會把兩個分開的 物體連通到一起, 這 對填補 由于 圖像分割后物體 之間 空洞很有 這重要的作用 。 如下圖 41 所示( a)腐蝕圖像 ( b)膨脹圖像 ( a)腐蝕圖像 ( b)膨脹圖像 圖 41 圖像的腐蝕與膨脹 開運算和閉運算 開運 算和閉運算 是 除了腐蝕和膨脹兩種基本運算外的另外兩種重要的形態(tài)學運算。開運算和閉運算 是根 據(jù)腐蝕和膨脹的不可逆性演變而來的 。 開運算 是指通過 對目標圖像先進行腐蝕運算,再進行膨脹運算的過程。 通過 開運算能夠去除 圖像中 孤立 的 小點和小 20 的連通區(qū)域,去除 一些 小 的 物體 和 平滑較大物體的邊界,同時不 大范圍的 改變 原圖像的面積 [18]。 而 閉運算是開運算的對偶運算, 它是 通過對目標圖像先進行膨脹運算,再進行腐蝕運算 而得到的圖像 , 通過使用閉運算 功 可以 用來填充物體 間 細小 的 空洞、連接臨近的 物體、平滑其邊界,同時 也 不明顯改變目標圖像的面積。 形態(tài)學運算的部分代碼 /*對前景進行腐蝕操作,腐蝕半徑為 1,可設置 */ cvErode( pFrImg,img_erode, NULL,1)。 /*對前景進行膨脹操作,膨脹半徑為 2,可設置 */ cvDilate( img_erode,img_dilate, NULL,2)。 函數(shù) cvDilate 對輸入圖像使用指定的結構元進行膨脹。具體操作是 :將輸入圖像與結構元素 (核 )進行卷積,計算結構元素覆蓋的區(qū)域的像素點最大值,并把這個最大值賦值給參考點 (錨點 )所指定的像 素。 形態(tài)學處理的效果圖 下面的幾幅圖表示圖像的二值化圖像,以及對閾值取不同的值時,所檢測到的前景圖像, 其效果圖 如圖 42 所示。 圖 42 形態(tài)學圖像處理 21 混合高斯背景建模的流程圖 混合高斯背景模型的建立,首先需要導入一個 avi的視頻序列,建立混合高斯背景模型并進行初始化,然后對視頻序列進行逐幀讀取,并對圖像進行灰度處理和二值化處理,以及對幀圖像進行去噪處理,隨著幀數(shù)的不斷更新,實時對背景, 前景 進行更新,以適應光線的變化和場景本身的變化,對檢測結果 進行形態(tài)學處理,使其圖像的邊緣更加精確得當 , 同時 消除噪聲和背景擾動 對圖像的檢測所 帶來的影響。 最后通過運行程序源代碼,顯示出結果,實現(xiàn)對運動目標的檢測。流程圖如 43 圖所示。 圖 43 混合高斯背景建模流程圖 幀圖像的形態(tài)學運算處理 背景圖和前景圖的更新 視頻圖像的顯示 混合高斯背景模型的建立及初始化 導入視頻 開始 逐幀讀取視頻圖像并去噪 幀圖像的去噪和二值化處理 結束 22 利用混合高斯模型進行背景建模 混合高斯建模方法能夠適用于背景出現(xiàn)微小擾動對運動目標檢測所帶來的干 擾,并且能夠 適應光線的變化和場景本身的變化 ,通過利用混合高斯模型進行背景建模,使其圖像的邊緣更加精確得當 , 同時 消除噪聲和背景擾動 對圖像的檢測所 帶來的影響 。 利用混合高斯模型進行背景建模時,首先需要初始化預先定義的幾個高斯模型,對高斯模型中的參數(shù)進行初始化,并通過視頻序列的像素點求出像素點的均值和方差,并通過求其權重,求出之后將要用到的參數(shù);其次,對于每一幀中的每個像素進行處理,看其是否匹配高斯模型,若匹配,則將其歸入該模型中,并對該模型中新的像素值進行更新,若不匹配,則去除當前混合高斯模型中權重最小的模型, 并加入新的模型的權重,新模型的權重是全部模型中的最小值,并且均值是當前所觀測到的像素值的均值,方差為一個給定的較大的常數(shù)。最后通過高斯混合模型的參數(shù)學習機制,求出各個高斯模型的權重與方差的比值,并對他們的優(yōu)先級按照從大到小的順序進行排列,排在前面的作為背景模型的可能最大,反之,則為前景。 混合高斯背景模型的建立及初始化 利用混合高斯模型來模擬背景圖像進行運動目標檢測,首先定義每個像素點的分布模型由多個高斯分布模型組成,每一個新的像素點都會更新高斯分布的參數(shù),其實現(xiàn)如下。 (1)像素模型參數(shù)的初 始化 本文用 ),( ??? tX 來表示均值為 ? , 協(xié)方差矩陣為 ? 的高斯分布概率密度函數(shù)。 用多個高斯分布線性組合模擬每個像素點的歷史記錄 }X,......,{X t1 , 概率密度函數(shù)記 為 ),( , tititX ??? Mi ,......,2,1? (41) 協(xié)方差矩陣為 Iktk 2, ??? (42) 其中 I 為單位矩陣,但不一定符合實際,從而這個單高斯分布模型的概率密度為: ),|( , tititX ??? (43) 當前像素值 tX 的概率為 ?? ??Mi titittit XwXP 1 , ),|()( ??? (44) ti,? 表示單模型的均值,體現(xiàn)了每個單峰的分布中心; ti,2? 表示單模型的方差,體現(xiàn) 了像素值的不穩(wěn)定程度; tiw, 表示了該高斯分布模型的權值,其大小體現(xiàn)了采用當前模型表示像素值的可靠性。 M 表示單模型的個數(shù),體現(xiàn)了像素之多峰多分布的峰的個數(shù), M 23 的取值依賴于像素值的分布。 M 越大,處理波動的能力越強,但所需的處理時間越長。 初始化混合高斯模型時,首先計算一段時間內的視頻序列圖像中像素點的平均像素值 0? 及像素的方差 02? ,然后初始化高斯混合模型中高斯分布的參數(shù)。 ???1N0t t0 XN1? , ??? ??10 020 )(N1 Nt tX ?? (45) (2)找出與當前像素值最近的背景 這里要找出 N 個背景中與當前觀測值最接近的一個背景像素值存在代表背景的圖片中。如果處理的是第一幀圖像,則它的背景就是本身。 在 OpenCV 函數(shù) 庫中 , 提供了 混合 高斯模 型方 法的函 數(shù), 通過CvGaussBGModel 類用來儲存混合高斯模型的各個參數(shù),但是在使用 OpenCV 的混合高斯模型函數(shù)時需要注意的是。 (a) 在 對 混 合 高 斯 模 型 建 立 時 , 需 要 用 到 cvUpdateBGStatModel ,cvCreateGaussianBGModel 以及 cvCreateImage 這三個 函數(shù)類, cvCreateGaussianBGModel的調用是要在原始輸入數(shù)據(jù)為空的情況下, cvCreateGaussianBGModel 則恰好相反,但是源程序中將這兩個函數(shù)定義為內部函數(shù), cvCreateImage 是創(chuàng)建首地址并分配存儲空間 。 (b)在進行類型的轉換時,需要注意 cvCreateGaussianBGModel 函數(shù)返回值為CvBGStatModel*, 所以就需要將 bg_model 強制轉換為 CvGaussBGModel*,只有這樣才能進行前景建模。 部分代碼如下 //初始化高斯混合模 型參數(shù) CvGaussBGModel* bg_model=NULL。 IplImage *img_erode。 IplImage *img_dilate。 while(pFrame = cvQueryFrame( pCapture )) { nFrmNum++。 if(nFrmNum == 1) { pBkImg=cvCreateImage(cvSize(pFramewidth,pFrameheight),IPL
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1