




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業論文(設計) 題 目 數字圖像去霧算法研究 學生姓名 學 號 院 系 計算機與軟件學院專 業 計算機科學與技術指導教師 聲 明本人鄭重聲明:1、 持以“求實、創新”的科學精神從事研究工作。2、 本論文是我個人在導師指導下進行的研究工作和取得的研究成果。3、 本論文中除引文外,所有實驗、數據和有關材料均是真實的。4、 本論文中除引文和致謝的內容外,沒有抄襲其他人或其他機構已經發表或撰寫過的研究成果。5、 其他同志對本研究所做的貢獻均已在論文中作了聲明并表示了謝意。作者簽名: 手寫簽名 日 期: 日期手寫,與封面日期一致 目 居中,黑體,三號, “目”與“錄”字中間留九個空格錄1 引言12 圖
2、像去霧算法12.1 基于光照分離模型的圖像去霧算法22.1.1 算法概述22.1.2 同態濾波32.1.3 模型簡介32.1.4 偏微分方程求解42.2 基于直方圖均衡化的圖像去霧算法72.2.1 算法概述72.2.2 直方圖修正技術的基礎72.2.3 直方圖的均衡化82.2.4 直方圖均衡化的算法步驟92.3 基于暗原色先驗的圖像去霧算法102.3.1 算法概述102.3.2 已有霧成像模型102.3.2 暗原色先驗112.3.3 暗原色先驗去霧算法分析113 數字圖像去霧系統的設計123.1 開發工具MATLAB123.2系統設計133.3 菜單設計133.4 模塊設計143.5 界面設計
3、143.5.1 界面設計原則143.5.2 界面設計步驟144 數字圖像去霧系統的實現194.1圖片打開模塊194.2基于光照分離模型的圖像去霧模塊194.2.1 同態濾波及光照分離代碼194.2.2 去霧效果圖214.2.3 結果分析214.3基于直方圖均衡化的圖像去霧模塊224.3.1 代碼224.3.2 去霧效果圖234.3.3 結果分析234.4基于暗原色先驗的圖像去霧模塊244.4.1代碼244.4.2 去霧效果圖254.4.3 結果分析264.5圖片保存模塊265 系統運行效果275.1 整體界面運行效果275.2 文件打開運行效果275.2 基于光照分離模型圖像去霧效果圖285.
4、3直方圖均衡化圖像去霧效果圖295.4基于暗原色先驗的去霧效果圖305.5文件保存界面效果圖306 結論31目錄黑體四號,目錄不要分級縮進目錄與正文之間插入分節符,目錄單獨編頁碼,用羅馬字母,居中放置32數字圖像去霧算法研究黑體,三號,居中,必須與封面題目一字不差,包括英文單詞大小寫也必須一致空一行張馳作者名宋體、居中、五號南京信息工程大學計算機與軟件學院,南京 210044宋體、居中、小五號,單位統一,不加所學專業空1行 摘要:圖像去霧是指運用一定的模型或算法,對已經霧化的圖像進行處理,達到還原圖像本來特征的過程。本文介紹了三種數字圖像去霧的算法,包括基于光照分離模型的數字圖像去霧算法、基于
5、直方圖均衡化的數字圖像去霧算法以及基于暗原色先驗的數字圖像去霧算法。在MATLAB平臺下設計并實現了一個數字圖像去霧處理系統,能夠運用上述算法實現圖像去霧,效果較好。仿宋、小五號,縮進2個字符,150-300字 關鍵詞: 圖像去霧;光照分離模型;直方圖均衡化;暗原色先驗宋體,小五號,縮進2個字符,3-5個,分號分隔各個關鍵詞空1行1 引言一級標題,黑體,四號,在格式菜單段落中設置間距:段前段后各1行 戶外景物的圖像通常會因為大氣中的混濁的媒介(比如分子,水滴等)而降質,霧、靄、蒸氣都因大氣吸收或散射造成此類現象。照相機接收到景物反射過來的光線經過了衰減,此外,得到的光線還混合有大氣光(經大氣分
6、子反射的周圍環境的光線)。降質的圖像的對比度和顏色的保真度有所下降,造成模糊不清的現象,稱之為圖像霧化。在霧化情況下,由于場景的能見度降低,圖像中目標對比度和顏色等特征被削弱,圖像的清晰度和真實度降低,因此需要消除霧化對圖像的影響,從圖像處理及物理模型等角度出發,都可以可以實現圖像不同程度上的去霧化。1論文及參考文獻全部用1.25倍行距,在“格式”選項中的“段落”設置窗口,采用多倍行距,行距設置值為1.25 本文介紹了光照分離模型的圖像去霧算法、直方圖均衡化圖像去霧算法以及基于暗影通道的圖像去霧算法,并在此基礎上設計了一個可以采用上述三種不同算法實現圖像去霧的系統,能夠較好的實現一些常規的簡單
7、的霧化圖像的去霧化。正文中文一律采用宋體五號宋體字,英文為Times New Roman,中文標點一律采用全角本文的結構如下:1為引言,介紹圖像去霧的概念,去霧研究的現狀,目前存在的問題以及本文采用的三種圖像去霧方法;2為圖像去霧算法,詳細的介紹三種圖像去霧算法;3為數字圖像去霧系統的的設計,包括系統設計、菜單設計、模塊設計、界面設計;4為數字圖像去霧系統的實現,包括開發工具,各個模塊的實現及其代碼,菜單制作以及模塊整合;5為系統運行效果,包括截圖以及文字描述;6為結束語。引言第一段介紹背景意義等,第二段介紹本文主要內容,與摘要類似,第三段介紹論文的結構除各級標題外,所有正文文字段落首行都要縮
8、進2個字符。在格式段落特殊格式中設置首行縮進2字符。2 圖像去霧算法圖像去霧是指運用一定的算法或模型,對已經霧化的圖像進行處理,達到還原圖像本來特征的過程。目前對圖像去霧的處理方法主要分為兩類:霧化圖像增強和霧化圖像復原。對于每一類方法,按照去霧方法的相似性可以進一步歸納為不同的子類方法:基于圖像處理的圖像增強方法分為全局化的圖像增強和局部化的圖像增強;基于物理模型的霧化圖像復原方法則包括基于偏微分方程的霧化圖像復原、基于深度關系的霧化圖像復原和基于先驗信息的霧化圖像復原。2目前對圖像去霧的處理方法主要分為兩類:霧化圖像增強和霧化圖像復原。對于每一類方法,按照去霧方法的相似性可以進一步歸納為不
9、同的子類方法:基于圖像處理的圖像增強方法分為全局化的圖像增強和局部化的圖像增強;基于物理模型的霧化圖像復原方法則包括基于偏微分方程的霧化圖像復原、基于深度關系的霧化圖像復原和基于先驗信息的霧化圖像復原。圖1詳細介紹了圖像去霧算法的分類.圖像去霧算法霧化圖像增強霧化圖像復原 全局化增強局部化增 強基于深度關系基于先驗信息基于偏微分圖2.1 圖像去霧算法分類圖注:位于圖片下面,與圖片不能分開放在兩頁,必須位于一頁。宋體,小五號,居中,按章編號,如圖2.1,圖2.3,編號只有2級。表注與圖注類似,但位置位于表格之上。一般來說,以上兩種方法都可以不同程度的實現圖像的去霧化,但是由于科技發展水平所限,目
10、前兩種方法都存在不同程度上的缺陷。霧化圖像的增強方法不考慮圖像降質原因,適用范圍廣,能有效提高霧化圖像的對比度。突出圖像的細節。改善圖像的視覺效果,但對于突出部分的信息可能造成一定的損失。霧化圖像的復原是研究霧化圖像降質的物理過程,并建立霧化圖像退化模型,反演退化過程,補償退化過程造成的失真,以便獲得未經干擾退化的無霧圖像或無霧圖像的最優估計值,從而改善霧化圖像質量,這種方法針對性強,得到的去霧效果自然,一般不會有信息損失,但是模型中參數的估計存在一定的難度,容易出錯。2.1 基于光照分離模型的圖像去霧算法二級標題,宋體,五號,在格式菜單段落中設置間距:段前段后各1行2.1.1 算法概述三級標
11、題,宋體,五號,在格式菜單段落中設置間距:段前段后各1行通常,圖像可以分為是光照分量和反射分量的乘積,光照分量L取決于照射源,而反射分量R取決于物體的內在不變的屬性,如物體表面反射系數和表面法線等。因此,光照預處理的問題可以轉化為給定圖像I用來求解R的問題。然而,從輸入圖像中估計光照分量和反射分量是一個病態問題。為了解決該問題,通常假設物體表面光照變化緩慢,而反射分量的變化劇烈。因此,有學者采用同態濾波的方式,通過求圖像I的平滑來進行估計光照分量L,從而做到對兩個分量進行分離。在本節中,將著重介紹本文使用的光照分離模型,使用同態濾波的方式來估計光照分量L。這種方法在人臉識別領域有一定應用,可以
12、有效消除光線、陰雨、霧等天氣及環境帶來的人臉圖像質量降低的影響,并且可以做到物體局部細節的保持。2.1.2 同態濾波 在進行光照分離前,我們使用同態濾波來得到光照分量L。在生活中會得到這樣的圖像,它的動態范圍很大,而我們感興趣部分的灰度又很暗,圖像細節無法辨認,采用一般的灰度級線性變換是不行的。同態濾波屬于圖像頻率域處理范疇,其作用是對圖像灰度范圍進行調整,通過消除圖像上照明不均的問題,增強暗區的圖像細節,同時又不損傷亮區的圖像細節。圖像的灰度由照射分量和反射分量合成。反射分量反映圖象內容,隨圖像細節不同在空間上作快速變化。照射分量在空間上通常均具有緩慢變化的性質。照射分量的頻譜落在空間低頻區
13、域,反射分量的頻譜落在空間高頻區域。一般景物的圖像可以由照明函數和反射函數的乘積表示。表示景物的照明,與景物無關;包含景物的細節,與照明無關。由于二者相乘無法變換到頻域再分開處理,故如下處理:(1)取對數,則(2)進行傅立葉變換,則(3)壓縮i(x,y)分量的變化范圍,削弱I (u,v),增強r(x,y)分量的對比度,提升R (u,v),增強細節。確定H(u,v)。(4) (5) 根據不同的圖像特性和需要,選用不用的H(u,v),可以得到滿意的結果,細節對比度差,分辨不清的圖像用同態濾波進行處理后,圖像畫面亮度比較均勻,細節得以增強。2.1.3 模型簡介 在估計出光照分量后,進而計算物體的內在
14、反射分量: (2.1)公式需要編號,編號格式如(2.1)所示。按章編號。全文所有公式編號右邊對齊。光照分量通過最小化下面的優化方程來進行求解: (2.2)其中,等式右邊的第一項為數據項,表示L和I要具有相似性;第二項作為平衡約束的正則項。參數為權系數,用于控制兩項的權重。利用歐拉-拉格朗日方程求解,可以得到: (2.3)這個偏微分方程可以通過多種方式求解。通過以上正則化的過程,光照分量L被估計出來后,進而可以求得光照不變的反射分量。2.1.4 偏微分方程求解如果一個微分方程中出現的未知函數只含一個自變量,這個方程叫做常微分方程,也簡稱微分方程;如果一個微分方程中出現多元函數的偏導數,或者說如果
15、未知函數和幾個變量有關,而且方程中出現未知函數對幾個變量的導數,那么這種微分方程就是偏微分方程。偏微分方程在圖像處理中的應用是一個比較新的課題.由于它可以準確對圖像建模,從而很好的解決了圖像處理中許多復雜的問題.如今,偏微分方程已廣泛的應用于圖像處理的各個方面.例如求圖像信息的最優估計等。自從計算機問世以來,偏微分方程的數值解法得到很大發展,因此,可以說偏微分方程數值解法本身就是一個龐大的項目,解偏微分方程的方法有很多,比如超松弛迭代法(SOR),雅克比迭代法,高斯-賽德爾迭代法,考慮到各種算法的迭代效率和迭代精度,本系統選用高斯-塞德爾迭代法進行光照模型分離的迭代運算。下面介紹下高斯-塞德爾
16、迭代法解偏微分方程的過程。元線性方程組 (2.4) 寫成矩陣形式為。若將式(2.4)中每個方程的留在方程左邊,其余各項移到方程右邊;方程兩邊除以則得到下列同解方程組:(2.5)記,構造迭代形式 (2.6)或 (2.7) 迭代計算式(2.7)稱為簡單迭代或雅可比迭代。任取初始向量 ,由式(2.7)可得到迭代向量序列。在雅可比迭代中,用的值代入方程(2.4)中計算出的值,的計算公式是 (2.8)事實上,在計算前,已經得到的值,不妨將已算出的分量直接代入迭代式中,及時使用最新計算出的分量值。因此的計算公式可改為: (2.9)即用向量計算出的值,用向量計算出的值,用向量計算出的值,這種迭代格式稱為高斯
17、塞德爾迭代。對于方程組,如果由它構造高斯-塞德爾迭代和雅可比迭代都收斂,那么,多數情況下高斯塞德爾迭代比雅可比迭代的收斂效果要好,但是情況并非總是如此。構造方程組的高斯-塞德爾迭代格式的步驟與雅可比類似,設將式(2.4)中每個方程的留在方程的左邊,其余各項都移到方程的右邊;方程兩邊除以,得到下列同解方程組: (2.10)記,對方程組對角線以上的取第步迭代的數值,對角線以下的取第步迭代的數值,構造高斯塞德爾迭代形式: (2.11)高斯塞德爾迭代矩陣:設 (2.12)寫成等價矩陣表達式:構造迭代形式:有 (2.13)則高斯-塞德爾迭代式為 (2.14) (2.15)稱為高斯-塞德爾迭代矩陣。2.2
18、 基于直方圖均衡化的圖像去霧算法2.2.1 算法概述直方圖均衡化算法是圖像增強空域法中的最常用、最重要的算法之一。它以概率理論作基礎,運用灰度點運算來實現直方圖的變換,從而達到圖像增強的目的。本文介紹一種基于累積分布函數變換法為基礎的直方圖修正法。它可以通過對直方圖進行均勻化修正,可使圖像的灰度間距增大或灰度均勻分布、增大反差,使圖像的細節變得清晰。32.2.2 直方圖修正技術的基礎一幅給定圖像的灰度級經歸一化處理后,分布在范圍內。這時可以對0,1區間內的任一個r值進行如下變換: (2.16) 也就是說,通過上述變換,每個原始圖像的像素值r都對應產生一個s值。變換函數應該滿足下列條件:(1)
19、在區間內,是單值單調增加;(2)對于,有這里第一個條件保證了圖像的灰度級西歐哪個白到黑的次序不變和反變換函數的存在。第二個條件則保證了映射變化后的像素灰度值在允許的范圍內。從s到r的反變換可用式(2.17)表示,同樣也滿足上述兩個條件 (2.17) 由概率論理論可知,若已知隨機變量的概率密度為,而隨機變量是的函數,即,的概率密度為,所以可以由求出。因為是單調增加的,由數學分析可知,它的反函數也是單調函數。在這種情況下,當,且僅當時發生,所以可以求得隨即變量的分布函數為: (2.18)對式(2.18)兩邊求導,即可得到隨即變量的分布密度函數 (2.19) 由式(2.19)可知,對于連續情況,設和
20、分別表示原圖像和變換后圖像的灰度級概率密度函數。根據概率論的知識,在已知和變換函數時,反變換函數也是單調增長,則可由式(2.19)求出。2.2.3 直方圖的均衡化對于連續圖像,設r和s分別表示被增強圖像和變換后圖像的灰度。為了簡單,在下面的討論中,假定所有像素的灰度已被歸一化了,就是說,當時,表示黑色;當時,表示白色;變換函數與原圖像概率密度函數之間的關系為: (2.20) 式中:r為積分變量。式(2.20)的右邊可以看作是r的累積分布函數(CDF),因為CDF是r的函數,并單調地從0增加到1,所以這一變換函數滿足了前面所述的關于在內單值單調增加,對于,有的兩個條件。由于累積分布函數是r的函數
21、,并且單調的從0增加到1,所以這個變換函數滿足對式(2.20)中的r求導,則: (2.21) 再把結果帶入式(2.21),則 (2.22) 由以上推到可見,變換后的變量s的定義域內的概率密度是均勻分布的。由此可見,用r累積分布函數作為變換函數可產生一幅灰度級分布具有均勻概率密度的圖像。其結果擴展了像素取值的動態范圍。上面的修正方法是以連續隨機變量為基礎進行討論的。為了對圖像進行數字處理,必須引入離散形式的公式。當灰度級是離散值的時候,可用頻數近似代替概率值,即: (2.23) 式中,L是灰度級數;是取第k級灰度值的概率;是在圖像中出現第k級灰度的次數;N是圖像中像素數。通常把為得到均勻直方圖的
22、圖像增強技術叫做直方圖均衡化處理或直方圖線性化處理。式(2.20)的直方圖均衡化累積分布函數的離散形式可由式(2.24)表示: (2.24) 其反變換為 (2.25) 2.2.4 直方圖均衡化的算法步驟直方圖均衡化的算法步驟如下:(1)列出原始圖像和變換后圖像的灰度級:I,j=0,1,L-1,其中L是灰度級的個數;(2)統計原圖像各灰度級的像素個數;(3)計算原始圖像直方圖:,N為原始圖像像素總個數;(4)計算累積直方圖:;(5)利用灰度變換函數計算變換后的灰度值,并四舍五入:;(6)確定灰度變換關系,據此將原圖像的灰度值修正為;(7)統計變換后各灰度級的像素個數;(8)計算變換后圖像的直方圖
23、:2.3 基于暗原色先驗的圖像去霧算法2.3.1 算法概述暗原色先驗(dark channel prior)由何愷明等人首先提出。暗原色先驗來自對戶外無霧圖像數據庫的統計規律,它基于經觀察得到的這么一個關鍵事實-絕大多數的戶外無霧圖像的每個局部區域都存在某些至少一個顏色通道的強度值很低的像素。在被霧干擾的圖像里,這些暗像素的強度值會被大氣中的白光成分所充斥而變得較高。因此,這些暗像素能夠直接用來評估霧光的透射信息。利用這個先驗建立的去霧模型,結合一個已有的霧成像模型和插值法摳圖修復,我們可以得到高質量的去霧圖像和很好的深度圖。12.3.2 已有霧成像模型在計算機視覺和計算機圖形中,下述方程所描
24、述的霧圖形成模型被廣泛使用 (2.26) I是指觀測到的圖像的強度,J是景物光線的強度,A是全球大氣光成分,t用來描述光線通過媒介透射到照相機過程中沒有被散射的部分,去霧的目標就是從I中復原J,A,t。方程右邊的第一項J(x)t(x)叫做直接衰減項,第二項A(1-t(x)則是大氣光成分。直接衰減項描述的是景物光線在透射媒介中經衰減后的部分,而大氣光則是由前方散射引起的,會導致景物顏色的偏移。因為大氣層可看成各向同性的,透射率t可表示為: (2.27) 表示大氣的散射系數,該式表明景物光線是隨著景物深度d按指數衰減的。霧圖形成模型方程(2.26)意味著,在RGB色彩空間中,向量A,J(x),I(
25、x)從幾何學來看是共面的,它們的端點則是共線的,透射系數t是兩條線段長度之比cr,g,b,是顏色通道的指數。2.3.2 暗原色先驗暗原色先驗是通過對戶外無霧圖像的觀察得出的:在絕大多數非天空的局部區域里,某一些像素總會有至少一個顏色通道具有很低的值。換言之,該區域光強度的最小值是個很小的數。用公式描述,對于一幅圖像J,我們定義 (2.28) 代表J的某一個顏色通道,而是以x為中心的一塊方形區域。我們觀察得出,除了天空方位,的強度總是很低并且趨近于0。如果J是戶外的無霧圖像,我們把稱為J的暗原色,并且把以上觀察得出的經驗性規律稱為暗原色先驗。造成暗原色中低通道值主要有三個因素:a)汽車、建筑物和
26、城市中玻璃窗戶的陰影,或者是樹葉、樹與巖石等自然景觀的投影;b)色彩鮮艷的物體或表面,在RGB的三個通道中有些通道的值很低(比如綠色的草地/樹/植物,紅色或黃色的花朵/葉子,或者藍色的水面);c)顏色較暗的物體或者表面,例如灰暗色的樹干和石頭。總之,自然景物中到處都是陰影或者彩色,這些景物的圖像的暗原色總是很灰暗的。2.3.3 暗原色先驗去霧算法分析 (1) 估測透射率分布 我們首先假設大氣光因子A是給定的進一步假定在一個局部區域的透射率是恒定不變的在方程(2.3.2)中使用取最小運算符得到: (2.29) 這樣,在三個顏色通道中使用最小操作運算,我們得到: (2.30) 根據暗原色先驗的規律
27、,無霧自然圖像的暗原色項應該是接近于0的。 (2.31) 總是正的,導致: (2.32) 把方程(2.32)帶入方程(2.30),我們可以簡單地估算出透射率t: (2.33) (2) 復原物體光線 有了透射分布,我們可以通過方程(2.27)復原物體的原始圖像。但當接近0的時候,直接衰減項也會接近0。直接復原得到的原始圖像傾向于包含噪音。因此,我們把透射因子設定了一個下限。這意味著某些霧稠密的區域仍然保留著一定數量的霧。最終的復原通過下式實現: (2.34) (3) 估測大氣光從前的大多數單一圖像去霧方法當中,大氣光成分A通常是從不透明的含霧的像素中測得。但在實際的圖像中,最明亮的像素點有可能是
28、一輛白色的汽車或者是白色的建筑物。我們可以通過暗原色來提高大氣光的估測,我們利用它自動地估測本文中引用的所有圖像的大氣光成分。3 數字圖像去霧系統的設計3.1 開發工具MATLAB MATLAB是由美國Mathworks公司發布的主要面對科學計算、可視化以及交互式程序設計的高科技計算環境。它將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和仿真等諸多強大功能集成在一個易于使用的視窗環境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統非交互式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進
29、水平。 Matlab和Mathematica、Maple并稱為三大數學軟件。它在數學類科技應用軟件中在數值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數和數據、實現算法、創建用戶界面、連接其他編程語言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。具有以下的特點:4(1) 語言簡潔緊湊,使用方便靈活,庫函數極其豐富。運算符豐富。 (2)MATLAB既具有結構化的控制語句(如for循環,while循環,break語句和 if語句),又有面向對象編程的特性。(3)程序限制不嚴格,程序設計自由度大。(4)MATLAB的圖形功能強大。(5
30、)MATLAB的缺點是,它和其他高級程序相比,程序的執行速度較慢。(6)由于MATLAB的程序不用編譯等預處理,也不生成可執行文件,程序為解釋執行,所以速度較慢。3.2系統設計 本系統實現了圖像去霧功能。采用Matlab界面編程方法,設計了一個窗口,窗口中包含了五個個菜單,即文件打開菜單,基于光照分離模型的圖像去霧菜單,基于直方圖均衡化的圖像去霧菜單,基于暗原色先驗的圖像去霧菜單以及文件保存模塊。3.3 菜單設計菜單包括普通菜單和彈出式菜單,都在菜單編輯器中創建。PC平臺上,默認情況下MATLAB圖形窗口有一個頂層菜單,含有七個標準菜單選項:文件(File)、編輯(Edit)、顯示(View)
31、、插入(Insert)工具(Tools)、桌面(Desktop)、窗口(Windows)、幫助(Help)。每個菜單項都有下拉菜單,標準菜單受界面MenuBar屬性管理,該屬性值取none或figure,取none時,圖形窗不顯示標準菜單及工具條,取figure時,圖形窗顯示標準菜單條,為了簡潔,我們取屬性值none,隱去標準菜單。Matlab提供uimenu命令創建用戶定制菜單,其典型調用格式為:Hm=uimenu(H_parent,PropertyName,Property,.)其中,Hm為用戶菜單句柄;H_parent為其父對象句柄;PropertyName及Property為二元對,分
32、別為屬性名及其屬性值。在用戶菜單中,屬性Label及Callback是最重要的屬性,前者用于識別不同菜單項,后者用于產生相應動作,是菜單項發揮相應作用。創建程序如下:h_f=figure(1);Set(h_f,menubar,none) ; %清除原來窗口的菜單條h_menuf=unimenu(h_f,label,File); %創建菜單Fileh_menuo=unimenu(h_menuf,label,Open); %創建下拉菜單Openh_menus=unimenu(h_menuf,label,Save); %創建下拉菜單Saveh_menuf=unimenu(h_f,label,圖像去霧
33、); %創建菜單圖像去霧每個菜單項都有callback回調函數,在創建好的菜單界面中單擊“callback”后面的“View”按鈕,或在GUI界面中打開M文件編輯器都可以回調函數。53.4 模塊設計本系統包含五個模塊,文件打開模塊,基于光照分離模型的圖像去霧模塊,基于直方圖均衡化的圖像去霧模塊,基于暗原色先驗的圖像去霧模塊以及文件保存模塊。系統模塊結構圖如下:圖像去霧處理系統保存暗原色先驗直方圖均衡化打開光照分離模型圖3.1圖像去霧系統模塊圖3.5 界面設計3.5.1 界面設計原則(1) 簡單性(2) 一致性(3) 習常性(4) 其他因素考慮3.5.2 界面設計步驟(1) 利用界面編輯器,設計
34、窗口初始位置和大小,添加所需控件;(2) 新建圖形對象,對齊所有控件;(3) 設置新建對象的屬性;(4) 在產生的M文件中加入相應代碼。 為了進一步加深理解,在此以文件菜單的制作為例進行說明。首先,在MATLAB的命令窗口(Command window)中運行guide指令,來打開Guide界面,如下: 圖3.2 GUI界面 然后選擇空模板(Blank GUI),點擊確認,打開設計界面,如下: 圖3.3 GUI設計界面 點擊工具欄上的菜單編輯器(Menu Bar),打開菜單編輯器,如下: 圖3.4 菜單編輯器界面 在Menu Bar中創建一個菜單項,命名為“文件”,如下: 圖3.5 菜單項創建
35、界面 在文件菜單下添加兩個子菜單項,“打開”,“保存”,如下:圖3.6 打開菜單創建界面圖3.7 保存菜單創建界面 保存界面之后,會產生一個對應的M文件,如下:圖3.8 M文件生成界面 將生成的GUI命名為“image”,如下:圖3.9 GUI文件模塊界面生成4 數字圖像去霧系統的實現4.1圖片打開模塊用于打開電腦中所要處理的圖像。打開功能的代碼如下:function m_file_open_Callback(hObject, eventdata, handles) %打開圖像,打開命令對應的函數global B %聲明全局變量H=*.bmp;*.jpg;*.gif;*.tif;*.tga;
36、filename,pathname=uigetfile(H,請選擇需要打開的圖像); %跳出對話框file=strcat(pathname,filename); %生成完整的圖像路徑+圖像名I=imread(file); %讀取圖像B = I ; %將打開的圖像賦給全局變量Baxes(handles.axes1); %在該頁面第二個坐標系顯示imshow(I),title(源圖像);4.2基于光照分離模型的圖像去霧模塊4.2.1 同態濾波及光照分離代碼(1)同態濾波文件模塊用于消除不均勻照度的影響,增強圖像細節。function ReflectImage, LightImage = ASNor
37、m(img, sigma, sz) if nargin 2 sz = 10; sigma = 0.02;endif ndims(img) = 3 img = rgb2gray(img);end% 構造一個高斯濾波器f_high = 1.0;f_low = 0.4;% 得到一個高斯低通濾波器gauss_low_filter = fspecial(gaussian, sz sz, sigma);matsize = size(gauss_low_filter);% 由于同態濾波是要濾出高頻部分,% 所以我們得把這個低通濾波器轉換成一個高通濾波器.% f_high 和 f_low 是控制這個高通濾波器
38、形態的參數.gauss_high_filter = zeros(matsize);gauss_high_filter(ceil(matsize(1,1)/2) , ceil(matsize(1,2)/2) = 1.0;gauss_high_filter = f_high*gauss_high_filter - (f_high-f_low)*gauss_low_filter; % 利用對數變換將入射光和反射光部分分開log_img = log(double(img); % 將高斯高通濾波器與對數轉換后的圖象卷積high_log_part = imfilter(log_img, gauss_hig
39、h_filter, symmetric, conv); % 由于被處理的圖象是經過對數變換的,我們再用冪變換將圖象恢復過來high_part = exp(high_log_part);minv = min(min(high_part);maxv = max(max(high_part);% 得到的結果圖象result1 = (high_part-minv)/(maxv-minv);result1 = im2uint8(mat2gray(result1);img = im2uint8(mat2gray(img);ReflectImage = imsubtract(img, result1);Li
40、ghtImage = result1;LightImage = double(LightImage);ReflectImage = double(ReflectImage);(2)本函數實現分離光照分量,提取反射分量對圖像進行提取function LightImage = LR(image1)row,col,hei=size(image1);if hei = 1 row,col=size(image1); ReflectImage = zeros(row,col) ; LightImage = zeros(row,col) ; ReflectImage,LightImage = ASNorm(
41、image1,0.02,10) ;else image_R = zeros(row,col); image_G = zeros(row,col); image_B = zeros(row,col); image_R(:,:) = image1(:,:,1); image_G(:,:) = image1(:,:,2); image_B(:,:) = image1(:,:,3); ReflectImageR = zeros(row,col) ; LightImageR = zeros(row,col) ; ReflectImageR,LightImageR = ASNorm(image_R,0.0
42、2,10) ReflectImageG = zeros(row,col) ; LightImageG = zeros(row,col) ; ReflectImageG,LightImageG = ASNorm(image_G,0.02,10) ; ReflectImageB = zeros(row,col) ; LightImageB = zeros(row,col) ; ReflectImageB,LightImageB = ASNorm(image_B,0.02,10) ; LightImage = zeros(row,col,3) ; LightImage(:,:,1) =LightIm
43、ageR(:,:) ; LightImage(:,:,2) =LightImageG(:,:) ; LightImage(:,:,3) =LightImageB(:,:) ; end;4.2.2 去霧效果圖 基于光照分離模型的圖像去霧效果圖如下:圖4.2 基于光照分離模型的圖像去霧效果圖4.2.3 結果分析 該算法是一種把頻率過濾和灰度變換相結合的圖像增強處理方法,也是一種把照明反射模型作為頻域處理的基礎,利用壓縮亮度范圍和增強對比度來改善圖像質量的處理技術。該方法及其推廣在彩色圖像增強方面得到了廣泛的應用。 優點:能去掉光照不均所產生的黑斑;能較好的保持圖像的原始面貌。缺點:需要兩次傅立葉變
44、換,占用較大的運算空間。4.3基于直方圖均衡化的圖像去霧模塊4.3.1 代碼clc; clear all; close all% 圖像的預處理,讀入彩色圖像將其灰度化PS = imread(c:ce.png); % 讀入彩色圖像文件figure; subplot(2, 2, 1); imshow(PS); title(輸入的圖像)PS=rgb2gray(PS); % 灰度化后的數據存入數組% 繪制直方圖m,n = size(PS); % 測量圖像尺寸參數GP = zeros(1,256); % 預創建存放灰度出現概率的向量for k = 0:255 GP(k+1) = length(find(
45、PS=k)/(m*n); % 計算每級灰度出現的概率,將其存入GP中相應位置endsubplot(2, 2, 2); bar(0:255, GP, g); title(原圖像直方圖)xlabel(灰度值); ylabel(出現概率)% 直方圖均衡化S1 = zeros(1,256);for i = 1:256 for j = 1:i S1(i) = GP(j)+S1(i); % 計算Sk endendS2 = round(S1*256)+0.5); % 將Sk歸到相近級的灰度for i=1:256 GPeq(i) = sum(GP(find(S2=i); % 計算現有每個灰度級出現的概率end
46、subplot(2, 2, 3); bar(0:255, GPeq, b); title(均衡化后的直方圖)xlabel(灰度值); ylabel(出現概率)% 圖像均衡化PA = PS;for i = 0:255 PA(find(PS=i) = S2(i+1); % 將各個像素歸一化后的灰度值賦給這個像素endsubplot(2, 2, 4); imshow(PA); title(均衡化后圖像)4.3.2 去霧效果圖 基于直方圖均衡化的圖像去霧效果圖如下:圖4.3 基于直方圖均衡化的圖像去霧效果圖4.3.3 結果分析 該算法的基本思想是把有霧圖像的直方圖變換為均勻分布的形式,這樣就增加了像素
47、灰度值的動態范圍從而達到增強霧天圖像整體對比度的效果。大部分文獻在進行去霧算法對比時均以直方圖均衡化的去霧效果作為參照。 優點:算法簡單;對單景深圖像的復原效果好。缺點:難反應景深多變的圖像中局部景深的變化。4.4基于暗原色先驗的圖像去霧模塊4.4.1代碼function darktest(7.png)%暗影去霧算法%filename-文件名或文件絕對路徑%用法:darktest(7.png)close allclcw0=0.65; %0.65 乘積因子用來保留一些霧,1時完全去霧 t0=0.1;I=imread(7.png);figure;set(gcf,outerposition,get(
48、0,screensize);subplot(221)imshow(I);title(原始圖像);h,w,s=size(I);min_I=zeros(h,w); %下面取得暗影通道圖像for i=1:h for j=1:w dark_I(i,j)=min(I(i,j,:); endend subplot(223)imshow(dark_I);title(dark channnel的圖形); Max_dark_channel=double(max(max(dark_I) %天空亮度dark_channel=double(dark_I);t=1-w0*(dark_channel/Max_dark_c
49、hannel); %取得透謝分布率圖subplot(224)T=uint8(t*255);imshow(T);title(透射率t的圖形);t=max(t,t0);%I1=double(I);J(:,:,1) = uint8(I1(:,:,1) - (1-t)*Max_dark_channel)./t);J(:,:,2) = uint8(I1(:,:,2) - (1-t)*Max_dark_channel)./t); J(:,:,3) =uint8(I1(:,:,3) - (1-t)*Max_dark_channel)./t);subplot(222)imshow(J);title(去霧后的圖像);End4.4.2 去霧效果圖 基于暗原色先驗的圖像去霧效果圖如下:圖4.4 基于暗原色先驗的圖像去霧效果圖4.4.3 結果分析該算法通過收集大量不受霧氣影響的圖像,發現了一套能識別霧氣濃度的暗原色統計規律。即把圖像分成多個子塊,每個子塊中都有一些亮度很低的像素。這些“黑點”通常存于物體陰影、黑色物體以及具有鮮艷顏色的物體中。根據這一規律,只需按霧氣濃度局部修復圖像各部分的顏色,就能有效地達到很好的去霧效果,但當場景目標的亮度與大氣光相似時,暗原色先驗信息將失效。優點:去霧效
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- T/CNCA 028-2022井下巷道失速防護設施碰撞性能試驗技術規范
- T/CNCA 022-2022煤礦用可伸縮帶式輸送機無基礎安裝裝置
- T/CMMA 3-2016鎂質膠凝材料制品建筑模殼
- T/CIES 015-2017基于窄帶物聯網(NB-IoT)的道路照明智能控制系統技術規范
- T/CGCC 57-2021散裝即食食品經營操作規范
- T/CERDS 5-2023企業ESG管理體系
- T/CECS 10365-2024太陽能光伏投光燈
- T/CECS 10353-2024內墻用藝術裝飾涂料
- T/CECS 10316-2023建筑用一體化智慧能源站
- T/CECS 10158-2021天冬聚脲美縫劑
- GB/T 31586.1-2015防護涂料體系對鋼結構的防腐蝕保護涂層附著力/內聚力(破壞強度)的評定和驗收準則第1部分:拉開法試驗
- GA/T 952-2011法庭科學機動車發動機號碼和車架號碼檢驗規程
- 大壩安全監測培訓課件
- DB37-T 3449-2019山東省金屬非金屬地下礦山通風技術規范
- 高等數學上冊ppt課件完整版
- 華為WLAN解決方案
- 電力建設熱工熱控作業指導書
- 迪奧品牌分析通用PPT課件
- 四川危險廢物經營許可證申請書
- 甲醇及制氫裝置預試車方案
- 分子的立體構型
評論
0/150
提交評論