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

正文內(nèi)容

基于數(shù)字圖像處理的車(chē)牌定位的研究本科-資料下載頁(yè)

2024-12-07 09:24本頁(yè)面

【導(dǎo)讀】車(chē)輛自動(dòng)識(shí)別系統(tǒng)是智能交通系統(tǒng)實(shí)現(xiàn)的前提。車(chē)牌識(shí)別是車(chē)輛自。動(dòng)識(shí)別系統(tǒng)中最有發(fā)展前景的技術(shù)之一。車(chē)牌識(shí)別系統(tǒng)主要由車(chē)牌定位、字符分割和字符識(shí)別三部分組成。牌定位是字符分割和字符識(shí)別的基礎(chǔ),對(duì)整個(gè)系統(tǒng)的性能起著至關(guān)重要的作用,決定著系統(tǒng)的識(shí)別速度和識(shí)別精度。車(chē)牌號(hào)碼,為公安交通管理部門(mén)提供強(qiáng)有力的執(zhí)法證據(jù)。因此,研究交通圖像檢。測(cè)與處理方法對(duì)智能交通運(yùn)輸系統(tǒng)的發(fā)展具有重要的推動(dòng)作用。主要能夠?qū)в熊?chē)牌的圖片灰度化,二值化,中值濾。波等處理,并能夠截取車(chē)牌圖片。本論文主要應(yīng)用VC語(yǔ)言編程,對(duì)其車(chē)牌圖像進(jìn)行。預(yù)處理,有效的解決一些導(dǎo)致識(shí)別、定位錯(cuò)誤的問(wèn)題。

  

【正文】 的等值線指向數(shù)值較高的等值線,梯度的模就等于函數(shù)在這個(gè)法線方向的方向?qū)?shù) 。 梯度銳化的方法 —— 微分法 我們已經(jīng)知道,對(duì)圖像進(jìn)行邊緣銳化要經(jīng)過(guò)微分(求圖像導(dǎo)數(shù))運(yùn)算,為了要把圖像中向任何方向伸展的邊緣和輪廓線的模糊變清晰,我們還希望對(duì)圖像的某種導(dǎo)數(shù)運(yùn)算是 “ 各向同性 ”(isotropic) 的。 假設(shè) 表示圖像,其中 表示圖像旋轉(zhuǎn)之前的坐標(biāo), 是圖像旋轉(zhuǎn)之后的坐標(biāo)。那么所謂的對(duì)圖像的某種導(dǎo)數(shù)運(yùn)算是 “ 各向同性 ” 是 ( , )f xy (, )xy39。39。( , )xy 21 (????????)2 + (????????)2 = (????????)2 + (????????)2 ( 7) 而其中的梯度算子和拉普拉斯算子都是符合上述條件的,所以它們也是最常見(jiàn)的圖像銳化的運(yùn)算方法。 梯度運(yùn)算 對(duì)于連續(xù)的模擬圖像 ??(??,??), 在點(diǎn) (??,??)上的梯度為 : ??,??(??,??) = ,???????????????? ( 8) √(????????)2 + (????????)2 = ??????,?? ( 9) 但是對(duì)于數(shù)字圖像來(lái)說(shuō),需要用差 ( difference) 來(lái)代替微分:(注:差分有前向差分和后向差分之分,在這里采用的是后向 差 分) ???????? → ??(??,??) ???(?? ?1,??) ( 10) ???????? → ??(??,??) ? ??(??,?? ?1) ( 11) ??,??(??,??) = *,??(??,??) ???(?? ? 1,??)2 +,??(??,??) ???(??,?? ?1)2+1 2? ( 12) 梯度化的程序代碼如下: BOOL WINAPI GradSharp(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, BYTE bThre) { // 指向源圖像的指針 unsigned char* lpSrc。 unsigned char* lpSrc1。 unsigned char* lpSrc2。 // 循環(huán)變量 22 LONG i。 LONG j。 // 圖像每行的字節(jié)數(shù) LONG lLineBytes。 // 中間變量 BYTE bTemp。 // 計(jì)算圖像每行的字節(jié)數(shù) lLineBytes = WIDTHBYTES(lWidth * 8)。 // 每行 for(i = 0。 i lHeight。 i++) { // 每列 for(j = 0。 j lWidth。 j++) { // 指向 DIB 第 i 行,第 j 個(gè)象素的指針 lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight 1 i) + j。 // 指向 DIB 第 i+1 行,第 j 個(gè)象素的指針 lpSrc1 = (unsigned char*)lpDIBBits + lLineBytes * (lHeight 2 i) + j。 // 指向 DIB 第 i 行,第 j+1 個(gè)象素的指針 lpSrc2 = (unsigned char*)lpDIBBits + lLineBytes * (lHeight 1 i) + j + 1。 bTemp = abs((*lpSrc)(*lpSrc1)) + abs((*lpSrc)(*lpSrc2))。 // 判斷是否小于閾值 if (bTemp 255) { // 判斷是否大于閾值,對(duì)于小于情況,灰度值不變。 23 if (bTemp = bThre) { // 直接賦值為 bTemp *lpSrc = bTemp。 } } else { // 直接賦值為 255 *lpSrc = 255。 } } } // 返回 return TRUE。 } 圖像的中值濾波 線性平滑濾波在消除噪聲的同時(shí)會(huì)使圖像的細(xì)節(jié)模糊。如果既要消除噪聲又要保持圖像的細(xì)節(jié),可以使用非線性濾波。 中值濾波是一種非線性濾波技術(shù),不屬于卷積算法的區(qū)域處理方法。它將區(qū)域中所有值按大小進(jìn)行排序,并將排序后位于中間的像素值賦予中心像素。由于區(qū)域中像素值發(fā)生隨機(jī)突變的像素,經(jīng)排序后將位于隊(duì)首或隊(duì)尾,因此取得的中位像素值是正常的像素值。噪聲往往以孤立點(diǎn)的形式隨機(jī)出現(xiàn),這些點(diǎn)對(duì)應(yīng)的像素?cái)?shù)很少,而圖像則是由像素?cái)?shù)較多、面積較大的小塊構(gòu)成的,因此中值濾波可以采用一個(gè)含有奇數(shù)個(gè)像素的滑動(dòng)窗口在圖像上滑動(dòng),將窗口中心點(diǎn) 所對(duì)應(yīng)像素值,用窗口內(nèi)所有像素值的中間值代替。 例如,在一維的情況下,若中值濾波器的窗口長(zhǎng)度為 5, 窗口中像素的灰度值為 80、 90、 200、 110和 120,則中值為 110。因?yàn)?按小到大 (或大到小 )排序后 ,第三位的值是 110,于是原來(lái)窗口正中的灰度值 200就由 110取代。如果 200是一個(gè)噪聲的尖峰,則將被濾除,達(dá)到消除噪聲的目的。這樣中值濾波在一定條件下既可以克服線性濾波器 (如領(lǐng)域?yàn)V波器 )濾波帶來(lái)的圖像細(xì)節(jié)模糊,又可以有效的濾除脈沖干擾和圖像的掃描噪聲。 24 圖像中值濾波后得到的圖像如圖 34。 圖 34 中值濾波后的圖像 圖像中值濾波的 程序代碼如下: BOOL WINAPI myMedianFilter(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, int iFilterH, int iFilterW, int iFilterMX, int iFilterMY) { // 指向源圖像的指針 unsigned char* lpSrc。 // 指向要復(fù)制區(qū)域的指針 unsigned char* lpDst。 // 指向復(fù)制圖像的指針 LPSTR lpNewDIBBits。 25 HLOCAL hNewDIBBits。 // 指向?yàn)V波器數(shù)組的指針 unsigned char * aValue。 HLOCAL hArray。 // 循環(huán)變量 LONG i。 LONG j。 LONG k。 LONG l。 // 圖像每行的字節(jié)數(shù) LONG lLineBytes。 // 計(jì)算圖像每行的字節(jié)數(shù) lLineBytes = WIDTHBYTES(lWidth * 8)。 // 暫時(shí)分配內(nèi)存,以保存新圖像 hNewDIBBits = LocalAlloc(LHND, lLineBytes * lHeight)。 // 判斷是否內(nèi)存分配失敗 if (hNewDIBBits == NULL) { // 分配內(nèi)存失敗 return FALSE。 } // 鎖定內(nèi)存 lpNewDIBBits = (char * )LocalLock(hNewDIBBits)。 // 初始化圖像為原始圖像 memcpy(lpNewDIBBits, lpDIBBits, lLineBytes * lHeight)。 26 // 暫時(shí)分配內(nèi)存,以保存濾波器數(shù)組 hArray = LocalAlloc(LHND, iFilterH * iFilterW)。 // 判斷是否內(nèi)存分配失敗 if (hArray == NULL) { // 釋放內(nèi)存 LocalUnlock(hNewDIBBits)。 LocalFree(hNewDIBBits)。 // 分配內(nèi)存失敗 return FALSE。 } // 鎖定內(nèi)存 aValue = (unsigned char * )LocalLock(hArray)。 // 開(kāi)始中值濾波 // 行 (除去邊緣幾行 ) for(i = iFilterMY。 i lHeight iFilterH + iFilterMY + 1。 i++) { // 列 (除去邊緣幾列 ) for(j = iFilterMX。 j lWidth iFilterW + iFilterMX + 1。 j++) { // 指向新 DIB第 i行,第 j個(gè)象素的指針 lpDst = (unsigned char*)lpNewDIBBits + lLineBytes * (lHeight 1 i) + j。 // 讀取濾波器數(shù)組 for (k = 0。 k iFilterH。 k++) { for (l = 0。 l iFilterW。 l++) { // 指向 DIB第 i iFilterMY + k行,第 j iFilterMX + l個(gè)象 27 素的指針 lpSrc = (unsigned char*)lpDIBBits + lLineBytes * (lHeight 1 i + iFilterMY k) + j iFilterMX + l。 // 保存象素值 aValue[k * iFilterW + l] = *lpSrc。 } } // 獲取中值 * lpDst = myGetMedianNum(aValue, iFilterH * iFilterW)。 } } // 復(fù)制變換后的圖像 memcpy(lpDIBBits, lpNewDIBBits, lLineBytes * lHeight)。 // 釋放內(nèi)存 LocalUnlock(hNewDIBBits)。 LocalFree(hNewDIBBits)。 LocalUnlock(hArray)。 LocalFree(hArray)。 // 返回 return TRUE。 } 形態(tài)學(xué)處理 二值化后的車(chē)牌圖像還存在許多干擾區(qū)域,若直接進(jìn)行車(chē)牌定位,很容易出現(xiàn)誤定位或增加了車(chē)牌定位的計(jì)算量,因此可以利用數(shù)學(xué)形態(tài)學(xué)算子,簡(jiǎn)化圖像數(shù)據(jù) , 保持圖像的基本形狀特征,去除不相干的結(jié)構(gòu)。 數(shù)學(xué)形態(tài)學(xué)的基本運(yùn)算有四個(gè):膨脹(或擴(kuò)張)、腐蝕(或侵蝕)、開(kāi)運(yùn)算和閉運(yùn)算,其基本思想是利用結(jié)構(gòu)元作為探針收集圖像的信息,當(dāng)探針在圖像中不斷移動(dòng)時(shí),即可根據(jù)圖像各部分的相互關(guān)系來(lái)了解圖像的結(jié)構(gòu)特征。因此,利 28 用形態(tài)學(xué)算子來(lái)處理圖像時(shí),結(jié)構(gòu)元的設(shè)置非常重要。 由于二值化后的圖像已形成多個(gè)空間位置瀕臨字符邊緣的像素分布,這有利于構(gòu) 成牌照連通區(qū)域。由于牌照內(nèi)字符間距隨圖片中牌照的幾何尺寸不同而有所變 化;且牌照位置附近可能存在干擾紋理的影響,因此,為防止連通區(qū)域斷裂和盡可能減少與背景紋理的粘連,需要仔細(xì)確定結(jié)構(gòu)元。結(jié)構(gòu)元的確定如下: 首先根據(jù)輸入圖像大小作為參考因素,同時(shí)為形成完整牌照字符連通區(qū)域,把字符間距最大間隔作為設(shè)計(jì)結(jié)構(gòu)元的另一個(gè)主要依據(jù)。設(shè)車(chē)牌最大字符間距為a,字符最大高度為 2b, 首先使用開(kāi)運(yùn)算: 在垂直 方向上取長(zhǎng)度為( 2b+1) 的結(jié)構(gòu)元進(jìn)行 腐蝕運(yùn)算, 消除孤立 的噪聲點(diǎn); 在水平方 向上取長(zhǎng)度為( 2a+1) 的水平線結(jié)構(gòu)元對(duì)二值圖像進(jìn)行膨脹運(yùn)算,連接圖像中的斷續(xù)點(diǎn)并填補(bǔ)空洞,從而形成多個(gè)連通區(qū)域。經(jīng)過(guò)形態(tài)學(xué)開(kāi)運(yùn)算后,車(chē)牌區(qū)域融合在一起的同時(shí),也會(huì)形成其他多個(gè)干擾連通區(qū) 域,必須將這些干擾濾除。 對(duì)連通區(qū)域進(jìn)行標(biāo)記,并分析連通區(qū)域的特征。由于車(chē)牌本身固有的寬高比相對(duì)固定,一般在 ~ 之間,因此再通過(guò)比較連通區(qū)域的寬高比是否在這范圍之內(nèi),從而去除太大的連通區(qū)域,并對(duì)這些區(qū)域進(jìn)行填充。 此時(shí)我們?cè)偈褂脠D像減法,用原車(chē)牌的二值圖像減去去除干擾區(qū)域后的車(chē)牌圖像,得到較為接近的車(chē)牌區(qū)域 。 形態(tài)學(xué)處 理后的圖像如圖 35: 圖 35 形態(tài)學(xué)處理后的圖像 圖像加減運(yùn)算的程序如下: BOOL WINAPI AddMinusDIB(LPSTR lpDIBBits, LPSTR lpDIBBitsBK, LONG 2
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1