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

正文內(nèi)容

論文-計(jì)算機(jī)數(shù)字圖像處理技術(shù)-資料下載頁

2024-11-10 09:30本頁面

【導(dǎo)讀】了廣泛的應(yīng)用,如計(jì)算機(jī)圖像識(shí)別、圖像檢索、圖像工業(yè)化應(yīng)用等。進(jìn)行分類處理,可以快速準(zhǔn)確的檢索、匹配和識(shí)別出各種東西。可以用光學(xué)方法或模擬技術(shù)實(shí)現(xiàn),但它們遠(yuǎn)不及數(shù)字圖像處理那樣靈活和方便,因而數(shù)字圖像處理成為圖像處理的主要方面。用特定算法,從而辨別該圖形,例如,辨別三角形、矩形、圓形、六邊形等。形,并在特定的區(qū)域上顯示相應(yīng)信息。其中重點(diǎn)研究輪廓跟蹤。不同的圖形在PC機(jī)上進(jìn)行辨別,實(shí)現(xiàn)圖形的分辨,最后將生成圖形保存。頻領(lǐng)域的數(shù)字化也必將到來,視頻圖像的處理技術(shù)也將會(huì)發(fā)生日新月異的變化。因此,現(xiàn)今對(duì)該技術(shù)領(lǐng)域的應(yīng)用研究已日趨活躍和繁榮。應(yīng)用,而且還可以明確圖像辨別的重要應(yīng)用意義。多,而且每種算法都有各自特點(diǎn),要根據(jù)不同的實(shí)際圖形的特點(diǎn)選擇恰當(dāng)?shù)乃惴?。MFC中的操作界面和基本功能。VC++圖像處理程序設(shè)計(jì)方面的一些算法實(shí)例。利用VC語言進(jìn)行編程實(shí)現(xiàn),

  

【正文】 方法 對(duì)于曲率的估算的方法有多種,下面介紹兩種較為容易實(shí)現(xiàn)的且有效的方法。如圖( 311) 所示,若判斷一點(diǎn)為可能拐角點(diǎn) ai,在此點(diǎn)前后間隔 s個(gè)邊緣點(diǎn)順序分別找兩個(gè)點(diǎn) ais,ai+s。這樣找比只隔一個(gè)邊緣點(diǎn)找兩個(gè)點(diǎn)的曲率準(zhǔn)確度要高。 s 的大小經(jīng)驗(yàn)證選 3— 6個(gè)點(diǎn)效果較好。 圖 311 像素 i的曲率 方法一:反正切定理。公式見式( 34): ?????????????? xx yyisiisita n 11? ?? ? ???1 ?????????????? xx yysiisiita n 12? ?? ? ??? 2 ??? 21?? i 公式( 34) 公式中α α 分別為點(diǎn) i+s 與 i的連線與 x 軸的夾角及點(diǎn) i與點(diǎn) is的連線與 x軸的夾角。α i代表點(diǎn) i的曲率,α α α i 單位均為弧度。 方法二:反余弦定理。公式見式( 35): 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 26 ? ? ? ?xxyy isiisia ?? ???? 22 ? ? ? ?xxyy siisiib ???? ?? 22 ? ? ? ?xxyy sisisisic ?????? ?? 22 ????????????? ?ba cbai 22221cos? 公式( 35) 公式中 a,b 是余弦定理夾角的兩個(gè)鄰邊, c是余弦定理夾角的對(duì)邊。α i 代表點(diǎn) i的曲率,單位為弧度。 對(duì)比以上兩種求曲率的求法,均可以比較簡(jiǎn)單地實(shí)現(xiàn)曲率計(jì)算。此系統(tǒng)采用的是方法二,即反余弦定理。因?yàn)橛么朔N方法計(jì)算出的弧度值均為正值,而反正切則存在負(fù)值情況,對(duì)于系統(tǒng)要求中實(shí)現(xiàn)簡(jiǎn)單圖形(三角形、矩形、圓形)來說,用余弦定理較為方便。 通過曲率計(jì)算出的α i與規(guī)定的角度閾值 相比,若如公式( 36), T 為規(guī)定角度閾值。 Ti?? 公式( 36) 則判定它是拐角點(diǎn)。所以關(guān)鍵在于閾值的選取,過大或過小都會(huì)使拐角的判斷發(fā)生錯(cuò)誤。然后通過拐角的個(gè)數(shù)實(shí)現(xiàn)圖形間的分辨。 三角形要有三個(gè)拐角;矩形要有四個(gè)拐角;圓形是沒有拐角點(diǎn)。 角度判別 算法流程圖,見圖( 312) 。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 27 圖 圖 圖 圖 圖圖 圖 圖 圖 圖 圖 圖 圖 d i圖 圖 圖 圖 圖圖 圖 圖 圖 圖 圖 圖 圖 圖 圖圖 圖 圖 圖圖 圖 圖 圖 圖 圖 圖 圖圖 圖 圖圖 圖 圖 圖 圖 圖圖 圖 圖圖 圖 圖 圖 圖圖圖圖圖圖圖圖圖 圖 312 角度判別 算法流程圖 上面流程圖描述了根據(jù)輪廓信息計(jì)算輪廓差別碼,以找出可能拐角點(diǎn) ,通過計(jì)算曲率找到真正的拐角的過程。其中值得注意的是關(guān)于角度閾值的選取,因?yàn)榍视?jì)算用的浮點(diǎn)數(shù)運(yùn)算,其結(jié)果不易通過理論計(jì)算得出;且由于拐角輪廓信息相比理想情況下,分布并不規(guī)律,即理論上 60 度或 90 度的角實(shí)際計(jì)算出的值是在一個(gè)范圍內(nèi)波動(dòng)的。所以角度閾值的選取可以通過調(diào)試過程中,觀察參數(shù)值來確定大小。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 28 第四章 實(shí)驗(yàn)及結(jié)果 應(yīng)該寫明自己當(dāng)前的條件 因?yàn)橄到y(tǒng)主要進(jìn)行的是圖像處理,在這個(gè)過程中要進(jìn)行大量的數(shù)據(jù)處理,所以對(duì)處理器和內(nèi)存的要求比較高, 要求 CPU 主頻大于 600Hz,內(nèi)存大于等于 128MB。 圖像采集使用攝像頭采集,本系統(tǒng)使用的攝像頭采集的是 YUV 格式圖像,在運(yùn)行時(shí)將圖像格式轉(zhuǎn)化為 RGB 格式,由于條件所限,攝像頭和采集圖像距離保持在~ 范圍內(nèi)。 基于對(duì)話框的操作界面 圖 41 系統(tǒng)運(yùn)行的對(duì)話框界面 實(shí)驗(yàn)及結(jié)果 1.圖像采集 本系統(tǒng)使用攝像頭采集,設(shè)定攝像頭與圖形距離在 ~ 范圍內(nèi),由于系統(tǒng)設(shè)置采集圖像最好與攝像頭垂直,完成待辨別圖形的圖像采集,采集圖像如圖42所示。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 29 圖 42 對(duì)三種圖形圖像采集 2.圖像獲取 對(duì)采集到的圖像進(jìn)行存儲(chǔ),便于下面的空 域圖像處理,獲取效果與采集一致,如圖 42所示。 3.圖像分割 把獲取的圖像采用公式 31 進(jìn)行圖像分割,得到二值化圖像,二值化圖像見圖43所示。經(jīng)過實(shí)驗(yàn),本系統(tǒng)采用的分割閾值設(shè)為 100。 圖 43 圖像分割后效果 4.輪廓跟蹤 按照前面 中的方法進(jìn)行輪廓跟蹤,獲取并存儲(chǔ)個(gè)圖形的輪廓點(diǎn),得到的各圖形輪廓點(diǎn),如圖 44所示。 圖 44 矩形輪廓跟蹤效果 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 30 關(guān)于判決的規(guī)則: 三角形是 3 個(gè)角?矩形是 4 個(gè)角? 圖形辨別 對(duì)輪廓點(diǎn)數(shù)組中個(gè)點(diǎn),按照 中的方法判別各輪廓點(diǎn)的角度,從而判斷輪 廓點(diǎn)中的拐角數(shù)目,從而實(shí)現(xiàn)圖形辨別。 得到三個(gè)角點(diǎn),判別為三角形;得到四個(gè)角點(diǎn),判別為矩形;若沒有出現(xiàn)角點(diǎn),判別為圓形。例如,矩形判別后如圖 45所示。 圖 45( a) 矩形角度判別后顯示信息 圖 45( b) 三角形角度判別后顯示信息 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 31 圖 45( c) 圓形角度判別后顯示信息 效果顯示在同一個(gè)對(duì)話框中,如圖 46 所示。以矩形為例。 圖 46 矩形判別效果總圖 關(guān)于實(shí)驗(yàn)的幾點(diǎn)說明 本系統(tǒng)中關(guān)于角度閾值的選取,因?yàn)榍视?jì)算用的浮點(diǎn)數(shù)運(yùn)算,其結(jié)果不易通過理論計(jì)算得出;且由于 拐角輪廓信息相比理想情況下,分布并不規(guī)律,即理論上 60 度或 90 度的角實(shí)際計(jì)算出的值是在一個(gè)范圍內(nèi)波動(dòng)的。如矩形的判別中,我們可以觀察到,其角度并不是都是 90 度,但是通過實(shí)驗(yàn)角度差值范圍應(yīng)該在 10度左右。雖有差度,但是并不影響觀察及判別結(jié)果。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 32 結(jié) 論 本次畢設(shè)以 VC++為平臺(tái),在基于對(duì)話框完成操作界面設(shè)置以后,又通過編程思想的建立完成了相關(guān)程序的編寫,最終通過編譯、運(yùn)行程序生成了一個(gè)可執(zhí)行文件。用戶借助該文件,可以在相應(yīng)的顯示區(qū)域內(nèi),使用攝像頭,對(duì)圖像進(jìn)行采集圖像,對(duì)采集圖像進(jìn)行圖像分割,得到二值化圖像 ,然后通過輪廓跟蹤獲得圖形輪廓信息,最后使用基于輪廓跟蹤的圖像辨別算法在空域上辨別三角形、矩形、圓形,并在特定的區(qū)域上顯示相應(yīng)信息。由于系統(tǒng)設(shè)備要求,攝像頭采集圖像范圍在 ~ 內(nèi)為最佳。 本次畢業(yè)設(shè)計(jì)的完成是根據(jù): ( 1)建立基于對(duì)話框的程序界面, BMP24 位圖像的打開、顯示和保存;( 2)視頻圖像的采集和實(shí)現(xiàn);( 3)圖像分割的實(shí)現(xiàn);( 4)模板匹配法實(shí)現(xiàn)圖形辨別;( 4)模板匹配法實(shí)現(xiàn)圖形辨別;( 5)跟蹤并存儲(chǔ)圖像輪廓的坐標(biāo);( 6)計(jì)算輪廓的夾角并進(jìn)行角度辨別這六個(gè)步驟,循序漸進(jìn),一步一步實(shí)現(xiàn)的。從打開 靜態(tài)圖像到視頻采集,獲取圖像,然后進(jìn)行對(duì)圖像進(jìn)行空域圖像的處理,每一步都認(rèn)真對(duì)待,并在老師的幫助下完成,最終實(shí)現(xiàn)了整個(gè)過程。 本次畢設(shè)涉及到了基于計(jì)算機(jī)視覺的處理圖形圖像處理知識(shí),以及空域圖形圖像處理的各個(gè)方面,由于只是淺嘗輒止,所以對(duì)于這些知識(shí)的研究還是很膚淺的,存在不足之處亦是在所難免。如果有機(jī)會(huì)我將繼續(xù)學(xué)習(xí)這些知識(shí),完善不足之處。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 33 附錄:設(shè)計(jì)程序 // : implementation file include include include include include include include pragma ment( lib, ) ifdef _DEBUG define new DEBUG_NEW undef THIS_FILE static char THIS_FILE[] = __FILE__。 endif typedef struct{ int height。 int width。 } Point。 CPoint point[1000]。 int pointnum。 BOOL WINAPI LunKuoGenZong(LPSTR lpDIBBits,LONG width,LONG height) { // 指向源圖像的指針 LPSTR lpSrc。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 34 // 指向緩存圖像的指針 LPSTR lpDst。 // 指向緩存 DIB圖像的指針 LPSTR lpNewDIBBits。 HLOCAL hNewDIBBits。 // 圖像每行的字節(jié)數(shù) LONG lLineBytes。 //循環(huán)變量 long i。 long j。 //像素值 unsigned char pixel。 //是否找到起始點(diǎn)及回到起始點(diǎn) bool bFindStartPoint。 //是否掃描 到一個(gè)邊界點(diǎn) bool bFindPoint。 //起始邊界點(diǎn)與當(dāng)前邊界點(diǎn) Point StartPoint,CurrentPoint。 //八個(gè)方向和起始掃描方向 int Direction[8][2]={{0,1},{1,1},{1,0},{1,1},{0,1},{1,1},{1,0},{1,1}}。 int BeginDirect。 // 計(jì)算圖像每行的字節(jié)數(shù) lLineBytes = width * 3。 // 暫時(shí)分配內(nèi)存,以保存新圖像 hNewDIBBits = LocalAlloc(LHND, lLineBytes * height)。 if (hNewDIBBits == NULL) { // 分配內(nèi)存失敗 return TRUE。 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 35 } // 鎖定內(nèi)存 lpNewDIBBits = (char * )LocalLock(hNewDIBBits)。 // 初始化新分配的內(nèi)存,設(shè)定初始值為 255 lpDst = (char *)lpNewDIBBits。 memset(lpDst, (BYTE)255, lLineBytes * height)。 //先找到最左上方的邊界點(diǎn) bFindStartPoint = false。 for (j = 0。j height amp。amp。 !bFindStartPoint。j++) { for(i = 0。i width amp。amp。 !bFindStartPoint。i++) { // 指向源圖像倒數(shù)第 j行,第 i個(gè)象素的指針 lpSrc = (char *)lpDIBBits + lLineBytes * j + i*3。 //取得當(dāng)前指針處的像素值,注意要轉(zhuǎn)換為 unsigned char型 pixel = (unsigned char)*lpSrc。 if(pixel == 0) { bFindStartPoint = true。 = j。 = i。 // 指向目標(biāo)圖像倒數(shù)第 j行,第 i個(gè)象素的指針 lpDst = (char *)lpNewDIBBits + lLineBytes * j + i*3。 *lpDst = (unsigned char)0。 } } } 北京印刷學(xué)院本科生畢業(yè)設(shè)計(jì)(論文) 36 //由于起始點(diǎn)是在左下方,故起始掃描沿左上方向 BeginDirect = 0。 //跟蹤邊界 bFindStartPoint = false。 //從初始點(diǎn)開始掃描 = 。 = 。 point[pointnum].x=。 point[pointnum].y=。 pointnum++。 while(!bFindStartPoint) { bFindPoint = false。 while(!bFindPoint) { //沿掃描方向查看一個(gè)像素 lpSrc = (char *)lpDIBBits + lLineBytes * ( + Direction[BeginDirect][1]) + ( + Direction[BeginDirect][0])*3。 int h= + Direction[BeginDirect][1]。 int w= + Direction[BeginD
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1