◆井榮枝
?
基于MATLAB的安全效用及其在仿真圖像處理中的應(yīng)用
◆井榮枝
(鄭州大學(xué)西亞斯國際學(xué)院 河南 451150)
圖像處理技術(shù)是上個(gè)世紀(jì)60年代興起發(fā)展學(xué)科,發(fā)展至今已經(jīng)有幾十年的歷程。在計(jì)算機(jī)技術(shù)快速提升的環(huán)境下,圖像處理技術(shù)也得到了十分廣泛的普及應(yīng)用。在工業(yè)自動(dòng)化、醫(yī)學(xué)治療、地質(zhì)探測(cè)領(lǐng)域,圖像處理技術(shù)都有著十分重要的作用。本文主要針對(duì)MATLAB及其在圖像處理中的應(yīng)用進(jìn)行研究。
MATLAB;圖像處理;函數(shù)運(yùn)算
MATLAB是近幾年來應(yīng)用最為普及、最為廣泛的主流軟件之一,其語言構(gòu)成簡(jiǎn)單,數(shù)值計(jì)算能力強(qiáng),數(shù)據(jù)分析功能強(qiáng)大、圖像處理繪制技術(shù)高,擁有超高質(zhì)量的圖形可視化效果以及豐富的界面設(shè)計(jì)能力。在圖像處理中,MATLAB擁有其他軟件無比擬的顯著優(yōu)勢(shì)。MATLAB的圖像處理工具箱擁有豐富而齊全的圖像處理函數(shù),覆蓋了圖像處理的所有內(nèi)容,并且使用起來便捷、高效。
MathWorks根據(jù)不同的應(yīng)用領(lǐng)域前后推出了信號(hào)處理、神經(jīng)網(wǎng)絡(luò)、圖像處理、系統(tǒng)識(shí)別等不同的工具軟件。這些針對(duì)不同應(yīng)用領(lǐng)域應(yīng)用的工具是較高水平的專門工具箱,用戶可以直接使用,不需要再另外編寫相關(guān)的專業(yè)基礎(chǔ)程序。另外,上述工具箱中所涵蓋的函數(shù)源程序也是相對(duì)開放的,大多數(shù)均為M文件,用戶在使用過程中可以查看相關(guān)文件的代碼并且調(diào)整。MATLAB可以支持用戶對(duì)其原有的函數(shù)進(jìn)行二次開發(fā),用戶的應(yīng)用程序也可以當(dāng)做新的函數(shù)被添加到相應(yīng)的工具箱當(dāng)中。MATLAB的指令傳遞與數(shù)學(xué)、工程中十分常見的習(xí)慣很接近,很多使用C或者Fortran處理難度較大的問題就可以使用MATLAB來進(jìn)行解決,并且十分輕松高效。值得注意的是,當(dāng)前MATLAB的最新版本幾乎囊括了神經(jīng)網(wǎng)絡(luò)的最新研究成果,其所包括的網(wǎng)絡(luò)模型包括線性網(wǎng)絡(luò)、自組織網(wǎng)絡(luò)、回歸網(wǎng)絡(luò)等。對(duì)于各種不同網(wǎng)絡(luò)類型來說,MATLAB還可以為用戶在設(shè)計(jì)網(wǎng)絡(luò)安全系統(tǒng)方面提供極大的便捷。
MATLAB是一種已經(jīng)普及應(yīng)用的語言,在圖像處理方面顯示出了十分強(qiáng)大的生命力,這是由于MATLAB擁有與其他語言不同的、顯著的特征。就像Fortran與C語言一樣讓人們擺脫了需要直接面對(duì)計(jì)算機(jī)硬件資源開展操作相同,MATLAB的便捷程度已經(jīng)被譽(yù)為第四代的計(jì)算機(jī)語言,MATLAB豐富的函數(shù)資源替代了繁瑣的程序代碼編寫工作。MATLAB擁有以下特點(diǎn):(1)功能豐富強(qiáng)大。MATLAB擁有十分豐富而齊全的工具箱,分為核心工具與可選工具。其中核心工具箱可以分為功能工具箱以及學(xué)科性工具箱,其中功能性工具箱主要用于進(jìn)行符號(hào)計(jì)算、開展建模仿真、進(jìn)行文件處理等;學(xué)科性工具箱的專業(yè)性較強(qiáng),其包含了control toolbox、image processing toolbox等。(2)人機(jī)交互友好。MATLAB最為突出的特征就是簡(jiǎn)潔明了,MATLAB運(yùn)用直觀、影響的代碼來替代了C語言以及Fortran語言,讓用戶可以面對(duì)最為直接,最為簡(jiǎn)潔的程序開發(fā)環(huán)境。(3)開放性強(qiáng)。MATLAB的擴(kuò)充性良好,其中的工具箱可以自由使用,用戶也可以根據(jù)需求進(jìn)行第二次開發(fā)。MATLAB的功能強(qiáng)大,其擁有齊全的數(shù)值計(jì)算功能、符號(hào)計(jì)算功能、數(shù)據(jù)分析功能、圖形文字統(tǒng)一處理功能等等[1]。
圖像處理是當(dāng)前一項(xiàng)十分常見的工作。早在上個(gè)世紀(jì)60年代,美國噴氣實(shí)驗(yàn)室利用計(jì)算機(jī)技術(shù)對(duì)大量月球照片進(jìn)行了處理,獲得了十分清晰的圖像,至此以后圖像處理技術(shù)開始在各個(gè)領(lǐng)域廣泛應(yīng)用。圖像處理的領(lǐng)域十分寬廣,從學(xué)科上來劃分可以將其分為圖像的數(shù)字化、圖像的變化、圖像的恢復(fù)、圖像的壓縮等。MATLAB包含了眾多圖像處理函數(shù),覆蓋了圖像處理的幾乎有所的技術(shù)方法。
2.1 圖像增強(qiáng)功能
在圖像處理中圖像增強(qiáng)是一種十分常見的方法,其主要過程即為用一系列技術(shù)來優(yōu)化圖像的視覺效果,將圖像轉(zhuǎn)變成為一種能夠更加適合人眼觀察或者機(jī)器設(shè)備自動(dòng)分析的方式。基于MATLAB下常見的圖像增強(qiáng)方法主要有以下幾種:
(1)灰度直方圖均衡化。均勻量化的自然圖像的灰度直方圖一般在低灰度區(qū)間中的頻率較為突出,會(huì)導(dǎo)致圖形中較為灰暗的區(qū)域變的模糊。而利用直方圖處理則可以使得圖像中灰度家中的區(qū)域變得均勻平整,使得圖像的細(xì)節(jié)變得更加清晰可見,從而實(shí)現(xiàn)增強(qiáng)圖像效果的目的。在MATLAB中,直方圖均衡化可以通過histeq()函數(shù)來實(shí)現(xiàn)。
(2)灰度變換。通過攝像或電子方式獲得的圖像往往都會(huì)存在對(duì)比度低的問題,圖像的整體感受偏亮或偏暗。灰度變換即為對(duì)圖像中像素的灰度值進(jìn)行調(diào)整,使得圖像的灰度動(dòng)態(tài)范圍得到一定程度的擴(kuò)展,提升圖像的對(duì)比度,讓圖像成像變得均勻,清晰度上升,從而實(shí)現(xiàn)提升圖像質(zhì)量的目的。在MATLAB中可以通過函數(shù)imadjust。
(3)平滑與銳化濾波。平滑技術(shù)可有效處理圖像中的噪聲,通常使用空間域重大中值或平均值。在灰度連續(xù)變化的圖像當(dāng)中,一般可以認(rèn)為相鄰像素灰度差異明顯的凸點(diǎn)為噪聲。灰度突變即為一種高頻分量,而使用低通濾波則可以降低圖像的高頻成分,使得圖像的信號(hào)更加平滑[2]。但是這一技術(shù)的應(yīng)用也會(huì)導(dǎo)致圖像區(qū)域邊界變得不夠清晰。而銳化技術(shù)使用的是頻域中高通濾波的方式,可以通過提升高頻的成分來弱化圖像中模糊的效果。尤其是可以針對(duì)圖像模糊的邊緣進(jìn)行增強(qiáng),但是與此同時(shí)圖像的噪聲也被放大。在MATLAB 中不同的濾波方法都是在空間域中利用濾波算子來實(shí)現(xiàn)的。可以利用fspecail()函數(shù)來建立濾波算子,進(jìn)而使用含糊conv2()來進(jìn)行卷積運(yùn)算并且濾波。
2.2 空間濾波
在圖像處理中往往會(huì)遇到圖像中夾雜著噪聲的情況。所以,在進(jìn)行圖像出的過程中有必要先對(duì)噪聲進(jìn)行去除操作。而對(duì)圖像處理,去除噪聲最為直接的方式就是使用濾波設(shè)備來進(jìn)行濾波處理。在對(duì)圖像中的像素進(jìn)行濾波處理的過程中,如果鄰域中的像素計(jì)算為線性,則使用的消除噪聲技術(shù)為線性空間濾波技術(shù),反之該技術(shù)為非線性空間濾波技術(shù)。
(1)線性空間濾波技術(shù)。利用MATLAB圖像處理中擁有函數(shù)fspecial()以及實(shí)現(xiàn)線性空間濾波函數(shù)imfilter()[3]。
(2)非線性濾波器。MATLAB的圖像處理工具中擁有兩個(gè)函數(shù)來實(shí)現(xiàn)常規(guī)的非線性濾波,這兩個(gè)函數(shù)分別為nlfilter和colfilt。其中,函數(shù)nlfilter可以直接進(jìn)行二維操作,函數(shù)colfilt則可以通過列的方式來集合數(shù)據(jù)。雖然函數(shù)colfilt相對(duì)于函數(shù)nlfilter來說要占用更大的內(nèi)存,但是執(zhí)行速度要顯著高于nlfilter。因此,在使用非線性濾波器對(duì)圖像進(jìn)行處理時(shí)如注重處理速度則更多的會(huì)選擇colfilt。
在日常生活中圖像是十分重要的信息載體,圖像處理技術(shù)成為了發(fā)揮圖像價(jià)值的重要環(huán)節(jié)。在圖像處理技術(shù)中,MATLAB是一種常用的軟件,其功能強(qiáng)大,涉及專業(yè)領(lǐng)域廣泛,幾乎可以實(shí)現(xiàn)所有的圖像處理方法。灰度直方圖均衡化,灰度變換,平滑與銳化濾波都可以利用MATLAB輕松實(shí)現(xiàn)。
[1]孫進(jìn),曹肖偉.VB和MATLAB混合編程及其在圖像處理軟件中的應(yīng)用[J].機(jī)械工程與自動(dòng)化,2015.
[2]MarkiewiczTomasz.Using MATLAB software with Tomcat server and Java platform for remote image analysis in pathology[J].Diagnostic Pathology,2011.
[3]陸秋菊,陳忠澤.視網(wǎng)膜的視覺生理功能、數(shù)學(xué)模型及其在圖像處理中的應(yīng)用[J].信息與電腦(理論版),2010.
課題:2017年度河南省高等學(xué)校重點(diǎn)科研項(xiàng)目,《基于農(nóng)業(yè)物聯(lián)網(wǎng)的農(nóng)作物病害識(shí)別方法研究》,(項(xiàng)目編號(hào):17A520017)。