幾種常用軟件在圖像處理中的應(yīng)用_第1頁(yè)
幾種常用軟件在圖像處理中的應(yīng)用_第2頁(yè)
幾種常用軟件在圖像處理中的應(yīng)用_第3頁(yè)
幾種常用軟件在圖像處理中的應(yīng)用_第4頁(yè)
幾種常用軟件在圖像處理中的應(yīng)用_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

幾種常用軟件在圖像處理中的應(yīng)用

圖像是通過使用各種觀察系統(tǒng)在客觀世界中觀察和獲得的,這些系統(tǒng)可以直接或間接地影響人們的眼睛,并產(chǎn)生視覺感知。這是人們從出生起就體驗(yàn)到的最重要、最豐富、最具說明性的部分。如果圖像不清晰或不準(zhǔn)確,則會(huì)影響人們對(duì)外部世界的了解。這是圖像處理和加工的一個(gè)重要而不可或缺的技術(shù)。1圖像的邊緣特征數(shù)字圖像處理即利用計(jì)算機(jī)對(duì)數(shù)字圖像做運(yùn)算,對(duì)效果不佳的圖片,利用數(shù)字化儀器擷取轉(zhuǎn)換為數(shù)字圖像后,用一定的算法進(jìn)行運(yùn)算,可改善圖像信息.在刑事技術(shù)中,圖像分析也是重要的組成部分.圖像的邊緣輪廓攜帶有重要信息,要準(zhǔn)確分析圖像紋理,就需具備一張邊緣輪廓清晰的圖像.圖像處理需要大量的計(jì)算.圖像最基本的特征是邊緣,所謂邊緣是指其周圍像素灰度有階躍變化或屋頂變化的那些像素的集合.它存在于目標(biāo)與背景、目標(biāo)與目標(biāo)、區(qū)域與區(qū)域、基元與基元之間,因此,是圖像分割所依賴的最重要的特征,也是紋理特征的重要信息源和形狀特征的基礎(chǔ),而圖像的紋理形狀特征的提取又常常要依賴于圖像分割.圖像的邊緣提取也是圖像匹配的基礎(chǔ),因?yàn)樗俏恢玫臉?biāo)志,對(duì)灰度的變化不敏感,可作為匹配的特征點(diǎn).2指向位圖像素值的獲取VisualC++是由Microsoft公司推出的可視化編程語(yǔ)言,它是目前綜合性最高、最強(qiáng)大的軟件開發(fā)工具之一.集成了功能強(qiáng)大的編輯器、編譯器、鏈接器、調(diào)試器、APPWizard、ClassWizard、AppStudio等多種多樣的可視化編程工具,利用它可以完成各種各樣應(yīng)用程序的開發(fā),從低層軟件到直接面向用戶的軟件.C++語(yǔ)言相對(duì)其它高級(jí)語(yǔ)言有很高的代碼效率,速度比MATLAB代碼快幾倍甚至幾十倍,算法能快速有效地執(zhí)行,具有較好的算法可移植性.但是在編寫一些工程計(jì)算程序時(shí),如信號(hào)處理中的快速傅立葉變換、數(shù)字圖像處理等就需要比較復(fù)雜的算法,編寫得不好就會(huì)影響程序的運(yùn)行速度.程序量大,開發(fā)周期較長(zhǎng),并且要對(duì)算法的原理以及設(shè)置都要比較熟悉,下面給出一個(gè)在VC環(huán)境下的邊緣檢測(cè)Sobel算子實(shí)現(xiàn)灰度圖像邊緣檢測(cè)的函數(shù)實(shí)例:voidCDibView::OnMENUSobel(){HANDLEdata1handle;LPBITMAPINFOHEADERlpBi;CDibDoc*pDoc=GetDocument();HDIBhdib;unsignedchar*hData;unsignedchar*data;hdib=pDoc->m-hDIB;BeginWaitCursor();lpBi=(LPBITMAPINFOHEADER)GlobalLock((HGLOBAL)hdib);hData=lpbi+*(LPDWORD)lpbi+256*sizeof(RGBQUAD);//得到指向位圖像素值的指針pDoc->SetModifiedFlag(TRUE);//設(shè)修改標(biāo)志為″TRUE″data1handle=GlobalAlloc(GMEM-SHARE,WIDTHBYTES(lpBi->biWidth*8)*lpBi->biHeight);//申請(qǐng)存放處理后的像素值的緩沖區(qū)data=(unsignedchar*)GlobalLock((HGLOBAL)data1handle);AfxGetApp()->BeginWaitCursor();inti,j,buf,buf1,buf2;for(j=0;jbiHeight;j++)//以下循環(huán)求(x,y)位置的灰度值for(i=0;ibiWidth;i++){if(((i-1)>=0)&&((i+1)biWidth)&&((j-1)>=0)&&((j+1)biHeight)){//對(duì)于圖像四周邊界處的向素點(diǎn)不處理buf1=(int)*(hData+(i+1)*WIDTHBYTES(lpBi->biWidth*8)+(j-1))+2*(int)*(hData+(i+1)*WIDTHBYTES(lpBi->biWidth*8)+(j))+(int)(int)*(hData+(i+1)*WIDTHBYTES(lpBi->biWidth*8)+(j+1));buf1=buf1-(int)(int)*(hData+(i-1)*WIDTHBYTES(lpBi->biWidth*8)+(j-1))-2*(int)(int)*(hData+(i-1)*WIDTHBYTES(lpBi->biWidth*8)+(j))-(int)(int)*(hData+(i-1)*WIDTHBYTES(lpBi->biWidth*8)+(j+1));//x方向加權(quán)微分buf2=(int)(int)*(hData+(i-1)*WIDTHBYTES(lpBi->biWidth*8)+(j+1))+2*(int)(int)*(hData+(i)*WIDTHBYTES(lpBi->biWidth*8)+(j+1))+(int)(int)*(hData+(i+1)*WIDTHBYTES(lpBi->biWidth*8)+(j+1));buf2=buf2-(int)(int)*(hData+(i-1)*WIDTHBYTES(lpBi->biWidth*8)+(j-1))-2*(int)(int)*(hData+(i)*WIDTHBYTES(lpBi->biWidth*8)+(j-1))-(int)(int)*(hData+(i+1)*WIDTHBYTES(lpBi->biWidth*8)+(j-1));//y方向加權(quán)微分buf=abs(buf1)+abs(buf2);//求梯度if(buf>255)buf=255;if(buf<0){buf=0;*(data+i*WIDTHBYTES(lpBi->biWidth*8)+j)=(BYTE)buf;}else*(data+i*lpBi->biWidth+j)=(BYTE)0;}for(j=0;jbiHeight;j++)for(i=0;ibiWidth;i++)*(hData+i*WIDTHBYTES(lpBi->biWidth*8)+j)=*(data+i*WIDTHBYTES(lpBi->biWidth*8)+j);//處理后的數(shù)據(jù)寫回原緩沖區(qū)AfxGetApp()->EndWaitCursor();GlobalUnlock((HGLOBAL)hdib);GlobalUnlock(data1handle);GlobalFree(date1handle);EndWaitCursor();Invalidate(TRUE);}3matlab的特點(diǎn)MATLAB最初是作為矩陣實(shí)驗(yàn)室(MatrixLaboratory)用來提供通往LINPACK和EISPACK矩陣軟件包接口的.后來,它逐漸發(fā)展成為通用科技計(jì)算和圖視交互系統(tǒng)的程序語(yǔ)言,其數(shù)據(jù)的基本單元是矩陣.它的指令表達(dá)與數(shù)學(xué)、工程中常用的習(xí)慣形式十分相似,從而使許多用C或Fortran實(shí)現(xiàn)起來十分復(fù)雜和費(fèi)時(shí)的問題用MATLAB就可以輕松地解決.MATLAB的典型應(yīng)用包括:數(shù)學(xué)計(jì)算、算法研究、數(shù)據(jù)分析和計(jì)算結(jié)果可視化、建模與仿真等.MATLAB有三大特點(diǎn):一是功能強(qiáng)大.主要包括數(shù)值計(jì)算和符號(hào)計(jì)算、計(jì)算結(jié)果和編程可視化、數(shù)學(xué)和文字統(tǒng)一處理、離線和在線計(jì)算.二是界面友好,編程效率高.MATLAB是一種以矩陣為基本單元的可視化程序設(shè)計(jì)語(yǔ)言,語(yǔ)法結(jié)構(gòu)簡(jiǎn)單,數(shù)據(jù)類型單一,指令表達(dá)與標(biāo)準(zhǔn)教科書的數(shù)學(xué)表達(dá)式相近.三是開放性強(qiáng).MATLAB有很好的可擴(kuò)充性,可以把它當(dāng)成一種更高級(jí)的語(yǔ)言去使用.使用它很容易編寫各種通用或?qū)S脩?yīng)用程序.在MATLAB中,可以使用圖像處理工具箱中的edge函數(shù),利用之前所提的算子來檢測(cè)邊緣.edge函數(shù)提供許多微分算子模板,對(duì)于某些模板可以指定其是對(duì)水平邊緣還是對(duì)垂直邊緣(或者2者都有)敏感(即主要檢測(cè)是水平邊緣還是垂直邊緣).edge函數(shù)在檢測(cè)邊緣時(shí)可以指定一個(gè)灰度閾值,只有滿足這個(gè)閾值條件的點(diǎn)才視為邊界點(diǎn).edge函數(shù)的基本調(diào)用格式如下:BW=edge(I,′type′,parmeter,…)其中,I表示輸入圖像,type表示使用的算子類型,parmeter則是與具體算子有關(guān)的參數(shù).MATLAB的實(shí)現(xiàn)程序如下:>>I=imread(′rice1tif′);>>BW1=edge(I,′sobel′);>>BW2=edge(I,′canny′);>>subplot(1,2,1),imshow(BW1)>>subplot(1,2,2),imshow(BW2)4imaq軟件簡(jiǎn)介L(zhǎng)aboratoryVirtualInstrumentEngineeringWorkbench是由美國(guó)國(guó)家儀器公司(NI)推出的一個(gè)功能強(qiáng)大而又靈活的儀器和分析軟件應(yīng)用開發(fā)工具.LabVIEW程序稱為虛擬儀器,簡(jiǎn)稱為VI.LabVIEW具有圖形化編程、數(shù)據(jù)流傳輸、無限嵌套子VI等優(yōu)點(diǎn),而且圖形直觀,界面友好,開發(fā)周期短,運(yùn)行穩(wěn)定.同時(shí),LV提供了大量的虛擬儀器和函數(shù)庫(kù)來幫助編程,還配有功能更加強(qiáng)大的工具包.在圖像處理方面提供了NI公司的IMAQVision子模板,它包括300多種機(jī)器視覺和圖像處理的函數(shù),分圖像預(yù)處理、圖像分割等圖像理解函數(shù)庫(kù)和開發(fā)工具,具有灰度、彩色以及二值圖像的顯示、處理(包括統(tǒng)計(jì)、濾波和幾何變換)、形狀匹配、斑點(diǎn)分析、計(jì)算和測(cè)量等功能.用戶可以通過儀器編程與數(shù)據(jù)采集,很便捷地創(chuàng)建功能強(qiáng)大的嵌入式圖像應(yīng)用與開發(fā)系統(tǒng).IMAQ(imageacquisition)位于框圖窗口(Diagram)上Function選項(xiàng)板中,主要用于控制NI—IMAQ設(shè)備采集圖像信息.IMAQ具有緩存管理器,可以同時(shí)完成數(shù)據(jù)采集和處理,并且通過對(duì)存貯器的直接訪問傳遞數(shù)據(jù).其編程簡(jiǎn)單,所包含數(shù)十種子VI,可以滿足各種編程需要.一種可以選用的IMAQ硬件是PCI-1424,用于獲取彩色和灰度圖像,控制數(shù)碼攝像的數(shù)字圖像采集板.具有圖像采集速度快、成像范圍大、圖像分辨率高等優(yōu)點(diǎn).其時(shí)鐘頻率達(dá)到50MHz,最高200MB圖像采集,16~80MB的()()板卡存貯器可以滿足大范圍圖像采集,使系統(tǒng)具有更高的實(shí)時(shí)性.還可兼容RS-422/TTL或LVDS/TTL攝像機(jī),是工業(yè)及科學(xué)應(yīng)用的理想設(shè)備.當(dāng)然,LabVIEW其本身也存在不足,如不能完全提供用戶所需要的驅(qū)動(dòng)程序和調(diào)用系統(tǒng)程序?qū)崿F(xiàn)底層操作,不擅長(zhǎng)于完成大量數(shù)據(jù)處理的任務(wù).5基于fpga編程的算法由于以上每一種軟件在進(jìn)行圖像處理程序設(shè)計(jì)時(shí)都有各自的優(yōu)點(diǎn)和缺點(diǎn),很多時(shí)候也可以采用混合編程的方法來達(dá)到更好的效果,比如通過在VisualC++中調(diào)用MATLAB引擎的方法進(jìn)行圖像處理編程,既方便了調(diào)用MATL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論