機器視覺原理與應用 課件 第5、6章 視覺圖像基礎、基于OPENCV和PYTHON的圖像預處理_第1頁
機器視覺原理與應用 課件 第5、6章 視覺圖像基礎、基于OPENCV和PYTHON的圖像預處理_第2頁
機器視覺原理與應用 課件 第5、6章 視覺圖像基礎、基于OPENCV和PYTHON的圖像預處理_第3頁
機器視覺原理與應用 課件 第5、6章 視覺圖像基礎、基于OPENCV和PYTHON的圖像預處理_第4頁
機器視覺原理與應用 課件 第5、6章 視覺圖像基礎、基于OPENCV和PYTHON的圖像預處理_第5頁
已閱讀5頁,還剩207頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第5章視覺圖像基礎5.1視覺圖像的產(chǎn)生 5.1.1人眼中圖像的形成 5.1.2成像模型5.2圖像的表示和可視化 5.2.1數(shù)字圖像的表示 5.2.2圖像的格式 5.2.3圖像的基本屬性 5.2.4圖像的分類 5.2.5常用機器視覺軟件5.3像素間的關系5.4圖像品質(zhì)評價5.5圖像處理 5.5.1點處理 5.5.2鄰域處理 5.5.3全局處理5.6圖像的傅里葉變換 5.6.1理論基礎 5.6.2傅里葉級數(shù) 5.6.3傅里葉變換 5.6.4幅度譜、相位譜和功率譜 5.6.5二維DFT的性質(zhì) 5.6.6OpenCV的性質(zhì)5.1.1

人眼中圖像的形成在普通照相機中,鏡頭的焦距是固定的。不同距離的聚焦是通過改變鏡頭和成像平面之間的距離來實現(xiàn)的,膠片放在成像平面上。在人眼中,情況與此相反;晶狀體和成像區(qū)域(視網(wǎng)膜)之間的距離是固定的,正確聚焦的焦距是通過改變晶狀體的形狀得到的。在遠離或接近目標時,睫狀體中的纖維通過分別壓扁或加厚晶狀體來實現(xiàn)聚焦。晶狀體中心和沿視軸的視網(wǎng)膜之間的距離約為17mm。焦距的范圍為14~17mm。眼睛放松并注視的距離大于3m時,焦距約為17mm。5.1.2

成像模型圖像由照射源和形成圖像的場景元素對光能的反射或吸收相結合而產(chǎn)生的。對于灰度圖像(也稱光強圖像),可以用二維函數(shù)

來表示圖像,一定是非負且有界的,函數(shù)

可由照射——反射模型來描述式中,表示圖像的空間坐標;

表示圖像在坐標處的亮度,由兩部分構成,分別為入射分量(也稱照度分量)

和反射分量

,且

,

,入射分量表示入射到被觀察場景的光源照射量,反射分量表示被場景中物體反射的照射量。5.2

圖像的表示和可視化根據(jù)圖像記錄方式的不同,圖像分為模擬圖像和數(shù)字圖像。模擬圖像是直接從輸入系統(tǒng)獲得、未經(jīng)采樣與量化的圖像。數(shù)字圖像是將模擬圖像經(jīng)采樣和量化后,能夠被計算機處理的圖像。本教材后續(xù)章節(jié)以采樣和量化后的數(shù)字圖像為例。5.2

圖像的表示和可視化根據(jù)圖像記錄方式的不同,圖像分為模擬圖像和數(shù)字圖像模擬圖像是直接從輸入系統(tǒng)獲得、未經(jīng)采樣與量化的圖像數(shù)字圖像是將模擬圖像經(jīng)采樣和量化后,能夠被計算機處理的圖像5.2.1

數(shù)字圖像的表示經(jīng)過采樣和量化之后,圖像I已經(jīng)成為空間位置和響應值均離散的數(shù)字圖像數(shù)字圖像表示5.2.1

數(shù)字圖像的表示通過采樣和量化,原本連續(xù)的圖像

轉(zhuǎn)換為一個二維陣列

,該陣列具有M行N列,其中

是離散坐標為了表述方便,一般地,直接用二維矩陣A表示量化后的圖像5.2.1

數(shù)字圖像的表示二維矩陣是表示數(shù)字圖像的重要數(shù)學形式,一幅

的圖像可以表示為矩陣,矩陣中的每個元素稱為圖像的像素。每個像素都有它自己的空間位置和值,值是這一位置像素的顏色或者強度。與圖像表示相關的重要指標是圖像分辨率。圖像分辨率是指組成一幅圖像的像素密度。按照圖像矩陣包含元素的不同,大致可以分為二值圖像、灰度圖像、彩色圖像。5.2.1

數(shù)字圖像的表示典型二值圖像及其矩陣表示二值圖像也稱單色圖像或1位圖像,即顏色深度為1的圖像。顏色深度為1表示每個像素點僅占1位,一般用0表示黑,1表示白。5.2.1

數(shù)字圖像的表示灰度圖像是包含灰度級(亮度)的圖像,每個像素由8位組成,其值的范圍為0~255,表示256種不同的灰度級,用數(shù)值區(qū)間[0,255]來表示,其中數(shù)值“255”表示純白色,數(shù)值“0”表示純黑色,其余的數(shù)值表示從純白色到純黑色之間不同級別的灰度。與二值圖像相比,灰度圖像可以呈現(xiàn)出圖像的更多細節(jié)信息。彩色圖像與二值圖像和灰度圖像相比,彩色圖像可以表示出更多的圖像信息。每個像素也會呈現(xiàn)0~255共256個灰度級。與灰度圖像不同的是,彩色圖像每個像素由3個8位灰度值組成,分別對應紅、綠、藍3個顏色通道。5.2.2

圖像的格式BMP圖像格式該格式是微軟公司為Windows環(huán)境設計的一種圖像標準,全稱是Microsoft設備獨立位圖(DeviceIndependentBitmap,DIB),也稱位圖(bitmap),現(xiàn)已成為較流行的常用圖像格式。位圖文件由3部分組成:位圖頭部分、位圖信息部分、位圖數(shù)據(jù)部分JPEG圖像格式JPEG(JointPhotographicExpertsGroup,聯(lián)合圖像專家組)是由國際標準化組織(ISO)旗下的聯(lián)合專家小組提出的。該標準主要針對靜止灰度圖像或彩色圖像的壓縮,屬于有損壓縮編碼方式GIF圖像格式GIF(GraphicsInterchangeFormat,圖像交換格式)是CompuServe公司開發(fā)的文件存儲格式,是另外一種壓縮圖像標準,其主要目的是為了方便網(wǎng)絡傳輸5.2.3

圖像的基本屬性圖像像素數(shù)量圖像像素數(shù)量是指在位圖圖像的水平和垂直方向上包含的像素數(shù)量圖像分辨率圖像分辨率是指圖像在單位打印長度上分布的像素的數(shù)量,主要用以表征數(shù)字圖像信息的密度,它決定了圖像的清晰程度。在單位大小面積上,圖像的分辨率越高,包含的像素點的數(shù)量越多,像素點越密集,數(shù)字圖像的清晰度也就越高。圖像大小圖像大小決定了存儲圖像文件所需的存儲空間,一般以字節(jié)(B)進行衡量,計算公式為:字節(jié)數(shù)=(位圖高x位圖寬x圖像深度)/8。圖像顏色圖像顏色是指數(shù)字圖像中具有的最多數(shù)量的可能顏色種類,通過改變紅、綠、藍三原色的比例,可以非常容易地混合成任意一種顏色5.2.3

圖像的基本屬性圖像深度圖像深度又稱為圖像的位深,是指圖像中每個像素點所占的位數(shù)圖像色調(diào)圖像色調(diào)指各種圖像顏色對應原色的明暗程度(如RGB格式的數(shù)字圖像的原色包括紅、綠、藍3種),日常所說的色調(diào)的調(diào)整也就是對原色的明暗程度的調(diào)節(jié)圖像飽和度圖像飽和度表明了圖像中顏色的純度。自然景物照片的飽和度取決于物體反射或投射的特性圖像亮度圖像亮度是指數(shù)字圖像中包含色彩的明暗程度,是人眼對物體本身明暗程度的感覺,取值范圍一般為0%~100%5.2.3

圖像的基本屬性圖像對比度圖像對比度指的是圖像中不同顏色的對比或者明暗程度的對比。對比度越大,顏色之間的亮度差異越大或者黑白差異越大圖像層次在計算機設計系統(tǒng)中,為更加便捷有效地處理圖像素材,通常將它們置于不同的層中,而圖像可看作由若干層圖像疊加而成5.2.4

圖像的分類圖像有許多種分類方法,按照圖像的動態(tài)特性,可以分為靜止圖像和運動圖像;按照圖像的維數(shù),可分為二維圖像、三維圖像和多維圖像;按照輻射波長的不同,又可分為射線圖像、紫外線圖像、可見光圖像、紅外線圖像、微波圖像等。5.2.4

圖像的分類按動態(tài)特性運動圖像靜止圖像按維數(shù)三維圖像二維圖像多維圖像按輻射波長紫外線圖像x射線圖像可見光圖像紅外線圖像微波圖像5.2.4

圖像的分類按圖像的強度或顏色等級劃分5.2.4

圖像的分類二值圖像只有黑白兩種顏色的圖像稱為二值圖像(binaryimage),也稱黑白圖像。每個像素的灰度值用0或1表示,用1位存儲,一幅

像素的黑白圖像所占據(jù)的存儲空間為37.5KB?;叶葓D像灰度圖像(grayimage)是指每個像素的信息由一個量化的灰度級來描述的圖像,它只有亮度信息,沒有顏色信息。由于人眼對灰度的分辨能力一般不超過26級,所以一個像素用一個8位二進制數(shù)表示其灰度值對人眼來說已經(jīng)足夠了。對于8位灰度圖像,最大灰度值為255,表示白色,黑色的灰度值為0。并將由黑到白之間的明暗度均勻劃分為256個等級,每個等級由一個相應的灰度值定義,這樣就定義了一個256個等級的灰度表。一幅

像素8位灰度圖像所占據(jù)的存儲空間為300KB。5.2.4

圖像的分類索引圖像索引圖像(indexedimages)的顏色是預先定義的索引顏色。索引顏色的圖像最多只能顯示256種顏色。RGB圖像RGB圖像也稱真彩色圖像。在RGB圖像中,每一個像素由紅、綠和藍(red,green,blue)三個基色分量組成,如圖5-4所示,每個分量占一個字節(jié)(8位,表示0~255之間的不同的亮度值),這三個字節(jié)組合可以產(chǎn)生

種不同的顏色。紅、綠和藍三個基色分量直接決定顯示設備的基色強度,這樣產(chǎn)生的彩色稱為真彩色,真彩色能真實反映自然界物體的本來顏色。5.2.4

圖像的分類彩色圖像的R、G、B分量5.2.4

圖像的分類按成像傳感器類別劃分5.2.5

常用機器視覺軟件

開源的OpenCV(IntelOpenSourceComputerVisionLibrary)OpenCV最大的優(yōu)點是開源,是開源的計算機視覺和機器學習庫,提供了C++、C、Python、Java接口,并支持Windows、Linux、Android、MacOS平臺,可以進行二次開發(fā),目前有2.0版本和3.2版本,語法上面有一定的區(qū)別。

VisionPro系統(tǒng)VisionPro是一款快速開發(fā)強大的應用系統(tǒng)??的鸵暪荆–ognex)推出的VisionPro系統(tǒng)VisionPro使得制造商、系統(tǒng)集成商、工程師可以快速開發(fā)和配置出強大的機器視覺應用系統(tǒng)。目前最新版本為9.2版本,并且取消了軟件授權的形式,硬件授權價格在1.5萬-3萬不等。5.2.5

常用機器視覺軟件LabVIEW軟件美國NI公司的應用軟件LabVIEW機器視覺軟件編程速度是最快的。LabVIEW是基于程序代碼的一種圖形化編程語言。其提供了大量的圖像預處理、圖像分割、圖像理解函數(shù)庫和開發(fā)工具,用戶只要在流程圖中用圖標連接器將所需要的子VI(VirtualInstrumentsLabVIEW開發(fā)程序)連接起來就可以完成目標任務。任何1個VI都有3部分組成:可交互的用戶界面、流程圖和圖標連接器。LabVIEW編程簡單,而且對工件的正確識別率很高,目前在尺寸測量方面應用比較廣泛,如一鍵式測量儀等產(chǎn)品。5.2.5

常用機器視覺軟件德國的MVTecHALCON視覺軟件HALCON是德國MVtec公司開發(fā)的一套完善的標準的機器視覺算法包,擁有應用廣泛的機器視覺集成開發(fā)環(huán)境。它節(jié)約了產(chǎn)品成本,縮短了軟件開發(fā)周期——HALCON靈活的架構便于機器視覺,醫(yī)學圖像和圖像分析應用的快速開發(fā)。在歐洲以及日本的工業(yè)界已經(jīng)是公認具有最佳效能的MachineVision軟件。目前最新版本是2013版本,在視覺應用方面使用的比較廣泛。MATLAB相關的工具箱在Matlab中的視覺工具箱有:ImageProcessingToolbox(圖像處理工具箱),ComputerVisionSystemToolbox(計算機視覺工具箱),ImageAcquisitionToolbox(圖像采集工具箱)。5.3

像素間的關系鄰域關系鄰域關系用于描述相鄰像素之間的相鄰關系,包括4鄰域、8鄰域、D鄰域等類型一般用符號

表示像素位置的4鄰域像素的D鄰域又可以稱為

像素的對角鄰域.3.8鄰域為4鄰域和D鄰域的

合集,常用

表示.4鄰域D鄰域5.3

像素間的關系連通性連通性是描述區(qū)域和邊界的重要概念。兩個像素連通的必要條件是:兩個像素的位置滿足相鄰關系且兩個像素的灰度值滿足特定的相似性準則。像素間的連通性可分為4連通、8連通和m連通。如果像素q在像素p的4鄰域內(nèi),則像素p和像素q是4連通的。如果像素q在像素p的8鄰域內(nèi),則像素p和像素q是8連通的。m連通又稱為混合連通,像素p與像素q的m連通需要滿足以下兩個條件:①像素p和像素q具有相同的像素響應值;②像素q在像素p的4鄰域內(nèi)。若像素q在像素p的D鄰域內(nèi),則要求像素p和像素q的4鄰域的交集為空(沒有響應值為V的元素)5.3像素間的關系對于像素p、q和z,坐標分別為、

和(),如果函數(shù)D滿足距離三要素,即①非負性,

,當且僅當

時,②對稱性,

;③三角不等式,

;則稱函數(shù)D為有效距離函數(shù)或度量。像素之間的距離5.3像素間的關系歐氏距離與像素p的歐式距離小于某一閾值r的像素形成一個以像素p為中心的圓。D4距離(城市距離)與像素p的D4距離小于某一閾值r的像素形成一個以像素p為中心的菱形。Ds距離(棋盤距離)與像素p的Ds距離小于某一閾值r的像素形成一個以像素p為中心正方形。5.4

圖像品質(zhì)評價主觀評價觀察者的主觀評價是最常用、也是最直接的圖像質(zhì)量評價方法,通??煞殖山^對評價和相對評價兩類。絕對評價是指由觀察者根據(jù)事先規(guī)定的評價尺度或自己的經(jīng)驗對圖像做出判斷和評價。必要時可提供一組標準圖像作為參照系,幫助觀察者對圖像質(zhì)量做出合適的評價如表5-1所示給出了國際上通用的五級質(zhì)量尺度和妨礙尺度。一般人員常用質(zhì)量尺度,專業(yè)人員常用妨礙尺度。5.4

圖像品質(zhì)評價表5-1圖像質(zhì)量主觀評價質(zhì)量分數(shù)妨礙尺度質(zhì)量尺度5絲毫看不出圖像質(zhì)量變壞很好4可看出圖像質(zhì)量變壞但不妨礙觀看好3明顯地看出圖像質(zhì)量變壞一般2圖像質(zhì)量對觀看有妨礙差1圖像質(zhì)量對觀看有嚴重妨礙很差5.4

圖像品質(zhì)評價相對評價是指由觀察者對一組圖像按質(zhì)量高低進行分類,并給出質(zhì)量分數(shù)。為了保證圖像質(zhì)量主觀評價的客觀性和準確性,可用一定數(shù)量觀察者的質(zhì)量分數(shù)平均值作為最終主觀評價結果,其平均分數(shù)定義為:觀察者中應包括一般人員和專業(yè)人員兩類人員,人數(shù)應多于20人,這樣得出的主觀評價結果才具有統(tǒng)計意義。式中 ——屬于第類圖像的質(zhì)量分數(shù);

——判斷該圖像屬于第類圖像的人數(shù)。5.2.5

常用機器視覺軟件很顯然,主觀評價有幾方面顯著的不足之處:(1)觀察者一般需要一個群體,并且經(jīng)過培訓以準確判定主觀評測分,人力和物力投入大,評價時間較長;(2)圖像內(nèi)容與情節(jié)千變?nèi)f化,觀察者個體差異大,容易發(fā)生主觀上的偏差;(3)主觀評價無法進行實時監(jiān)測;(4)僅僅只有平均分,如果評測分數(shù)低,無法確切定位問題出在哪里。5.4

圖像品質(zhì)評價客觀評價客觀評價是用數(shù)學方法計算得到的,通常采用圖像逼真度和可懂度來評價。所謂圖像逼真度,是指重建圖像與原始圖像之間的偏差程度;所謂圖像可懂度,是表示人或機器能從圖像中抽取有關信息的程度。下面主要討論圖像逼真度。國際上成立了ITU-R視頻質(zhì)量專家組(VideoQualityExpertsGroup,VQEG)專門研究和規(guī)范圖像質(zhì)量客觀評價的方法和標準。VQEG規(guī)定了兩個簡單的技術參數(shù):峰值信噪比PSNR(PeakSignalNoiseRatio)和均方差MSE(MeanSquareError)來度量圖像逼真度。5.4

圖像品質(zhì)評價客觀評價對于灰度圖像,PSNR計算公式為式中,

為原始圖像;

為重建圖像;

為圖像尺寸;

中的最大值,通常為255。MSE計算公式為對于彩色圖像,其逼真度的測量和計算要復雜得多,這不僅是由于圖像維數(shù)的增加,而且還要滿足許多視覺現(xiàn)象,因此,還沒有普遍適用的計算方法5.5

圖像處理圖像處理是指把用圖像采集設備得到的景物和照片等進行加工后輸出另外的圖像的一種操作。模擬圖像處理包括光學處理和電子學處理。光學處理采用光學器件實現(xiàn),如透鏡和棱鏡。其中,由兩個透鏡組成的光學傅里葉變換系統(tǒng)能有效地對模擬圖像進行頻域變換。模擬圖像的電子學處理系統(tǒng)則是利用電子器件如增益電路、衰減電路、濾波電路等對模擬圖像實行放大、縮小、去噪等處理。模擬圖像處理速度快,結構簡單,但處理精度不高,處理手段較少。5.5

圖像處理數(shù)字圖像處理是指對數(shù)字圖像經(jīng)過修改、改進或變換,輸出另一幅數(shù)字圖像的過程

圖像處理運算的一般形式5.5

圖像處理這種形式對輸入圖像

進行某些處理

,從而求出輸出圖像

的各像素值,即

(5-11)式(5-11)中,

表示為求

所必需的圖像的集合,是F和G的部分集合??梢哉J為它是輸入圖像中的像素和輸出圖像中已得出結果的像素,多數(shù)情況是

附近的像素群,但也可以包含較遠的像素。為了計算輸出圖像中的單個像素值

,如何設定

,是構成處理算法類型的重要因素。根據(jù)

設定方法的不同,可分為點處理、鄰域處理(局部處理)和全局處理5.5.1

點處理點處理的代表性方法(1)灰度變換:為了改變灰度值分布范圍和分布特性的變換(對比度變換、直方圖修正等);(2)閾值處理:把灰度圖像變換成二值圖像的變換設

時的方法稱為點處理,即對輸入像素值進行某種處理,

,得到輸出像素值

的值的方法。5.5.2

鄰域處理如果只考慮

的像素

附近極小范圍

中包含的像素,

稱為像素

的鄰域(neighborhood)。最常用的鄰域包括4鄰域(4-neighbors)和8鄰域(8-neighbors),如圖5-8和圖5-9所示,4鄰域的半徑等于1,8鄰域的半徑等于

。在用方格表示的數(shù)字圖像中,如果兩個像素有公共邊界,則把它們稱為4鄰域;同樣,如果兩個像素至少共享一個頂角,則稱它們?yōu)?鄰域。5.5.2

鄰域處理4鄰域和8鄰域坐標表示4鄰域和8鄰域示意圖5.5.2

鄰域處理鄰域處理中具有代表性的有

像素鄰域、

像素鄰域、4鄰域和8鄰域等處理方式。鄰域越大,其計算量也越大。為了計算輸出像素值

的值,對

中包含的像素值進行某種處理,

,這種處理稱做鄰域處理。它是圖像處理中最基本的而且也是非常有用的運算方法。作為鄰域

,不僅能包含輸入圖像中的像素,還能包含輸出圖像中已獲得處理結果的像素??臻g濾波是典型的鄰域處理的例子。鄰域處理一般使用設定計算模板進行卷積運算而實現(xiàn)。5.5.3

全局處理作為 ,采用輸入圖像中的某一較大的范圍

時的處理稱為全局處理(globaloperation)。即為了得到輸出像素值

,對

中的輸入像素群施加處理,

。有時也采用輸入圖像的全體作為

,即采用輸入圖像中的所有像素值來決定一個輸出像素值。5.6

圖像的傅里葉變換圖像處理一般分為空間域處理和頻率域處理??臻g域處理是直接對圖像內(nèi)的像素進行處理??臻g域處理主要劃分為灰度變換和空間濾波兩種形式?;叶茸儞Q是對圖像內(nèi)的單個像素進行處理,比如調(diào)節(jié)對比度和處理閾值等??臻g濾波涉及圖像質(zhì)量的改變,例如圖像平滑處理。空間域處理的計算簡單方便,運算速度更快。頻率域處理是先將圖像變換到頻率域,然后在頻率域?qū)D像進行處理,最后再通過反變換將圖像從頻率域變換到空間域。傅里葉變換是應用最廣泛的一種頻域變換,它能夠?qū)D像從空間域變換到頻率域,而逆傅里葉變換能夠?qū)㈩l率域信息變換到空間域內(nèi)。傅里葉變換在圖像處理領域有著非常重要的作用。本節(jié)從理論基礎、基本實現(xiàn)、具體應用等角度對傅里葉變換進行簡單的介紹。5.6.1

理論基礎法國數(shù)學家傅里葉指出,任何周期函數(shù)都可以表示為不同頻率的正弦函數(shù)和的形式。在今天看來,這個理論是理所當然的,但是這個理論難以理解,在當時遭受了很大的質(zhì)疑。下面我們來看傅里葉變換的具體過程。例如,周期函數(shù)的曲線如圖5-10左上角的圖所示。該周期函數(shù)可以表示為:

因此,該函數(shù)可以看成是由下列三個函數(shù)的和構成的: (函數(shù)1) (函數(shù)2) (函數(shù)3)5.6.1

理論基礎上述三個函數(shù)對應的函數(shù)曲線分別如圖5-10中右上角、左下角及右下角的圖所示如果從頻域的角度考慮,上述三個正弦函數(shù)可以分別表示為圖5-11中的三根柱子,圖中橫坐標是頻率,縱坐標是振幅。通過以上分析可知,圖5-10中左上角的函數(shù)曲線可以表示為圖5-11所示的頻域圖。圖5-10函數(shù)曲線圖5-11函數(shù)的頻域圖5.6.1

理論基礎從圖5-10左上角的時域函數(shù)圖形,構造出如圖5-11所示的頻域圖形的過程,就是傅里葉變換。傅里葉變換就是從頻域的角度完整地表述時域信息。

在圖像處理過程中,傅里葉變換就是將圖像分解為正弦分量和余弦分量兩部分,即將圖像從空間域轉(zhuǎn)換到頻率域(以下簡稱頻域)。數(shù)字圖像經(jīng)過傅里葉變換后,得到的頻域值是復數(shù)。因此,顯示傅里葉變換的結果需要使用實數(shù)圖像(realimage)加虛數(shù)圖像(compleximage),或者幅度圖像(magnitudeimage)加相位圖像(phaseimage)的形式。因為幅度圖像包含了原圖像中我們所需要的大部分信息,所以在圖像處理過程中,通常僅使用幅度圖像。當然,如果希望先在頻域內(nèi)對圖像進行處理,再通過逆傅里葉變換得到修改后的空域圖像,就必須同時保留幅度圖像和相位圖像。5.6.1

理論基礎對圖像進行傅里葉變換后,我們會得到圖像中的低頻和高頻信息。低頻信息對應圖像內(nèi)變化緩慢的灰度分量。高頻信息對應圖像內(nèi)變化越來越快的灰度分量,是由灰度的尖銳過渡造成的。例如,在一幅大草原的圖像中有一頭獅子,低頻信息就對應著廣袤的顏色趨于一致的草原等細節(jié)信息,而高頻信息則對應著獅子的輪廓等各種邊緣及噪聲信息。傅里葉變換的目的,就是為了將圖像從空域轉(zhuǎn)換到頻域,并在頻域內(nèi)實現(xiàn)對圖像內(nèi)特定對象的處理,然后再對經(jīng)過處理的頻域圖像進行逆傅里葉變換得到空域圖像。傅里葉變換在圖像處理領域發(fā)揮著非常關鍵的作用,可以實現(xiàn)圖像增強、圖像去噪、邊緣檢測、特征提取、圖像壓縮和加密等。5.6.2傅里葉級數(shù)法國數(shù)學家傅里葉發(fā)現(xiàn)任何周期函數(shù)只要滿足Dirichlet條件都可以用正弦函數(shù)和余弦函數(shù)構成無窮級數(shù),即以不同頻率的正弦和余弦函數(shù)的加權和來表示,后世稱為傅里葉級數(shù)。對于有限定義域的非周期函數(shù),可以對其進行周期延拓從而使其在整個擴展定義域上為周期函數(shù),從而也可以展開為傅里葉級數(shù)。5.6.2傅里葉級數(shù)三角形式的傅里葉級數(shù)周期為T的函數(shù)的三角形式傅里葉級數(shù)展開為:(5-12)其中基波頻率

是函數(shù)

頻率,an和bn稱為傅里葉系數(shù)。圖5-12形象地描述了這種頻率分解,左側的周期函數(shù)可以由右側函數(shù)的加權和來表示,即由不同頻率的正弦函數(shù)和余弦函數(shù)以不同的系數(shù)組合而成。圖5-12函數(shù)

的傅里葉分解5.6.2傅里葉級數(shù)從數(shù)學上已經(jīng)證明,傅里葉級數(shù)的前N項和是原函數(shù)

在給定能量下的最佳逼近: (5-13)圖5-13展示了一個方波信號采用不同N值傅里葉級數(shù)之和的逼近情況(注意間斷點處的起伏)。隨著N的增大,逼近效果越來越好;但同時也注意到在的不可導點上,如果只取式(5-12)右邊的無窮級數(shù)中的有限項之和作為,那么

在這些點上會有起伏,這就是著名的吉布斯現(xiàn)象。5.6.2傅里葉級數(shù)圖5-13采用不同N值時,傅里葉級數(shù)展開的逼近效果5.6.2傅里葉級數(shù)復指數(shù)形式的傅里葉級數(shù)除上面介紹的三角形式外,傅里葉級數(shù)還有其他兩種常用的表示形式,即余弦形式和復指數(shù)形式。借助歐拉公式

,上述三種形式可以很方便地進行等價轉(zhuǎn)化,本質(zhì)上它們都是一樣的。復指數(shù)形式的傅里葉級數(shù),因其具有簡潔的形式(只需一個統(tǒng)一的表達式計算傅里葉系數(shù)),在進行信號和系統(tǒng)分析時通常更易于使用;而余弦形式的傅里葉級數(shù)可使周期信號的幅度譜和相位譜意義更加直觀,函數(shù)的余弦傅里葉級數(shù)展開可以解釋為

可以由不同頻率和相位的余弦波以不同系數(shù)組合在一起來表示,而在三角形式中相位是隱藏在系數(shù)an和bn中的。下面主要介紹復指數(shù)形式的傅里葉級數(shù),在后面的傅里葉變換中要用到的正是這種形式。5.6.2傅里葉級數(shù)復指數(shù)形式的傅里葉級數(shù)表示為:

(5-14)其中,

(5-15)5.6.3傅里葉變換一維連續(xù)傅里葉變換一維連續(xù)傅里葉變換以及逆變換形式分別表示為:

(5-16a) (5-16b)式(5-16a)和式(5-16b)為傅里葉變換對,記為

。觀察式(5-16),對比復指數(shù)形式的傅里葉級數(shù)展開式(5-14),傅里葉變換的結果實際上相當于傅里葉級數(shù)展開中的傅里葉系數(shù),而逆變換式(5-16b)則體現(xiàn)出不同頻率復指數(shù)函數(shù)的加權和的形式,相當于復指數(shù)形式的傅里葉級數(shù)展開式,只不過這里的頻率u變?yōu)檫B續(xù)化,所以加權和采用了積分形式。這是因為隨著式(5-15)的積分上下限的T向整個實數(shù)定義域擴展,即

,頻率u則趨近于du(因為

),導致原來離散變化的u的連續(xù)化5.6.3傅里葉變換一維離散傅里葉變換一維離散傅里葉變換(DiscreteFourierTransform,DFT)以及逆變換(InverseDiscreteFourierTransform,IDFT)分別表示為

(5-17a) (5-17b)離散變換不像連續(xù)的情形,它的傅里葉變換和逆變換總是存在的。5.6.3傅里葉變換二維連續(xù)傅里葉變換將傅里葉變換以及逆變換推廣至二維,對于二維連續(xù)函數(shù),其傅里葉變換和逆變換分別表示為

(5-18a) (5-18b)5.6.3傅里葉變換二維離散傅里葉變換數(shù)字圖像對應二維離散函數(shù)的傅里葉變換,給出一個

的圖像的二維離散傅里葉變換公式:

(5-19a)其中,u和v稱為頻域變量,分別與x和y的范圍相同,

, 。

的逆離散傅里葉變換表示為

(5-19b)5.6.4幅度譜、相位譜和功率譜可視化地分析圖像傅里葉變換的主要方法就是計算其頻譜,并把它顯示為一幅圖像使用

分別表示

的實部和虛部,即

,則幅度譜和相位譜分別表示為

(5-20) (5-21)通過幅度譜和相位譜可以還原

,即得到

的復指數(shù)形式的表達式:

(5-22)定義幅度譜的平方為功率譜(譜密度),即

(5-23)5.6.4幅度譜、相位譜和功率譜因為對于和空域相同大小的頻域下的每一點均可以計算出一個對應的

,所以可以像顯示一幅圖像那樣顯示幅度譜和相位譜。圖5-14(b)和(c)分別給出了圖5-14(a)所示圖像的幅度譜和相位譜。

(a)原圖像(b)幅度譜(c)相位譜圖5-14原圖像及其幅度譜和相位譜(幅度譜和相位譜都將原點移到了中心位置)5.6.4幅度譜、相位譜和功率譜幅度譜也稱頻率譜,是圖像增強中關心的主要對象,頻域下每一點

的幅度可用

來表示該頻率的正弦(余弦)平面波在疊加中所占的比例。幅度譜直接反映頻率信息,是頻域濾波的一個主要依據(jù)。相位譜表面上看并不那么直觀,但它隱含著實部與虛部之間的某種比例關系,因此與圖像結構息息相關。圖5-15(a)和(b)分別是一幅dog和sunflower圖片。這里我們交換兩幅圖像的相位譜,即用dog的幅度譜加上sunflower的相位譜,而用sunflower的幅度譜加上dog的相位譜,然后根據(jù)式(5-22)利用幅度譜和相位譜還原傅里葉變換,再經(jīng)傅里葉逆變換得到交換相位譜后的圖像,結果顯示于圖5-15(c)和(d)。5.6.4幅度譜、相位譜和功率譜通過該示例可以發(fā)現(xiàn),經(jīng)交換相位譜和傅里葉逆變換之后得到的圖像內(nèi)容與其相位譜對應的圖像一致,這驗證了上面關于相位譜決定圖像結構的論斷。而圖像整體灰度分布特性,如明暗、灰度變化趨勢等則在較大程度上取決于對應的幅度譜,因為幅度譜反映了圖像整體上各個方向的頻率分量的相對強度。5.6.4幅度譜、相位譜和功率譜

(a)dog(b)sunflower

(c)dog幅度+sunflower相位譜(d)sunflower幅度+dog相位譜并經(jīng)IDFT后的圖像并經(jīng)IDFT后的圖像圖5-15圖像幅度譜與相位譜互換5.6.5二維DFT的性質(zhì)周期性和共扼對稱性(periodicityandconjugatesymmetry)如果

為實數(shù),其傅里葉變換關于原點共軛對稱,表示為 (5-24)這暗示了幅度譜同樣也是關于原點對稱:

(5-25)根據(jù)

的計算公式可以得到:

(5-26)上式顯示,DFT在u和v方向上是無限周期信號,周期分別為M和N。這種周期性同樣也體現(xiàn)在IDFT中:

(5-27)也就是說,通過逆傅里葉變換得到的一幅圖像也是無限周期性的。5.6.5二維DFT的性質(zhì)這僅僅是DFT與IDFT的一個數(shù)學性質(zhì),但它同時也說明,DFT只需一個周期

內(nèi)的數(shù)據(jù)就可以將

完全確定,在空域同樣成立。當我們考慮DFT數(shù)據(jù)怎樣與變換的周期相聯(lián)系的時候,這種周期性就非常重要了。首先來看一維的情況,設矩形函數(shù)為

,它的傅里葉變換為

幅度譜為

,顯示于圖5-16(a)。這種情況下,周期性說明,

的周期為M,對稱性說明頻譜幅值以原點為中心。5.6.5二維DFT的性質(zhì)

(a)矩形函數(shù)的幅度譜

(b)原點平移后的幅度譜圖5-16頻譜圖DFT取值區(qū)間為

,在這個區(qū)間內(nèi)頻譜是由背靠背的兩個半周期組成,如圖5-16(a)所示;要顯示一個完整的周期,必須將變換的原點移至

,結果如圖5-16(b)所示5.6.5二維DFT的性質(zhì)根據(jù)定義,有(5-28)在進行DFT之前用

乘以輸入信號

,可以在一個周期的變換中

,求得一個完整的頻譜。推廣到二維情況,在進行DFT之前用

乘以輸入的圖像函數(shù),則有:

(5-29)這樣,DFT的原點,即

,被設置在

上。5.6.5二維DFT的性質(zhì)平均值一幅數(shù)字圖像的平均灰度可以用下式表示(5-30)將

代入二維DFT公式(5-19a),可以得到(5-31)故有(5-32)顯然,

對應于圖像

的平均灰度,有時也稱做頻譜的直流分量(DC)5.6.5二維DFT的性質(zhì)分離性(divisibility)式(5-19a)可以寫成如下的分離形式:

(5-33)這里,由上述分離形式知,二維DFT可以運用兩次一維DFT來實現(xiàn)。通過先沿輸入圖像的行計算一維變換,然后沿中間結果的每一列再計算一維變換的方法來求二維變換。顛倒次序后(先列后行)結論同樣成立。5.6.5二維DFT的性質(zhì)位移性(translation)如果(5-34a)(5-34b)上述兩個式子說明,空域圖像

產(chǎn)生位移時,頻譜的幅值不發(fā)生變化,僅有相位發(fā)生變化,即時域中的時移表現(xiàn)為頻域中的相移:頻域中的位移

對應于空域函數(shù)

被另一指數(shù)

所調(diào)制。當

時,

,即(5-35)這與式(5-29)的表達形式完全相同。5.6.5二維DFT的性質(zhì)旋轉(zhuǎn)性(rotation)如果

,則(5-36)其中,

分別為

的極坐標形式。旋轉(zhuǎn)性表明,空域圖像旋轉(zhuǎn)某一角度,對應的頻譜旋轉(zhuǎn)相同的角度。線性如果

,則(5-37)上式說明,兩個(或多個)函數(shù)之加權和的傅里葉變換就是各自傅里葉變換的相同的加權和。5.6.5二維DFT的性質(zhì)尺度變換(scaling)如果 ,則(5-38)式(5-38)說明,在空間比例尺度的展寬,對應于在頻域比例尺度的壓縮,其幅值也減少為原來的卷積定理(convolutiontheorem)如果

,則(5-39)5.6.5二維DFT的性質(zhì)上式說明,兩個函數(shù)卷積的傅里葉變換等于兩個函數(shù)各自傅里葉變換的乘積,即空域中兩個函數(shù)的卷積完全等效于一個更簡單的運算,即它們各自的傅里葉變換相乘后做逆傅里葉變換。進一步地,相關定理表示為(5-40)于是自相關定理則表示為(5-41)相關定理可以看成是卷積定理的特例,即將函數(shù)

做卷積。5.6.6OpenCV實現(xiàn)圖像傅里葉變換OpenCV提供了函數(shù)cv2.dft()和cv2.idft()來實現(xiàn)傅里葉變換和逆傅里葉變換(1)用OpenCV函數(shù)對圖像進行傅里葉變換,并展示其頻譜信息。根據(jù)題目的要求,編寫代碼:importnumpyasnpimportcv2importmatplotlib.pyplotaspltimg=cv2.imread('image\\lena.bmp',0)dft=cv2.dft(np.float32(img),flags=cv2.DFT_COMPLEX_OUTPUT)dftShift=np.fft.fftshift(dft)result=20*np.log(cv2.magnitude(dftShift[:,:,0],dftShift[:,:,1]))plt.subplot(121),plt.imshow(img,cmap='gray')plt.title('original'),plt.axis('off')plt.subplot(122),plt.imshow(result,cmap='gray')plt.title('result'),plt.axis('off')plt.show()5.6.6OpenCV實現(xiàn)圖像傅里葉變換運行上述代碼后,得到如圖5-17所示的結果。其中:左圖是原始圖像,右圖是頻譜圖像,是使用函數(shù)np.fft.fftshift()將零頻率分量移至頻譜圖像中心位置的結果。

圖5-17原圖像與傅里葉變換后的頻譜圖像5.6.6OpenCV實現(xiàn)圖像傅里葉變換(2)用OpenCV函數(shù)對圖像進行傅里葉變換、逆傅里葉變換,并展示原始圖像及經(jīng)過逆傅里葉變換后得到的圖像。根據(jù)題目的要求,編寫代碼如下:importnumpyasnpimportcv2importmatplotlib.pyplotaspltimg=cv2.imread('image\\lena.bmp',0)dft=cv2.dft(np.float32(img),flags=cv2.DFT_COMPLEX_OUTPUT)dftShift=np.fft.fftshift(dft)ishift=np.fft.ifftshift(dftShift)iImg=cv2.idft(ishift)iImg=cv2.magnitude(iImg[:,:,0],iImg[:,:,1])5.6.6OpenCV實現(xiàn)圖像傅里葉變換plt.subplot(121),plt.imshow(img,cmap='gray')plt.title('original'),plt.axis('off')plt.subplot(122),plt.imshow(iImg,cmap='gray')plt.title('inverse'),plt.axis('off')plt.show()5.6.6OpenCV實現(xiàn)圖像傅里葉變換運行上述代碼后,得到如圖5-18所示的結果。其中:左圖是原始圖像img,右圖是對原始圖像img進行傅里葉變換、逆傅里葉變換后得到的圖像。

圖5-18原始圖像與逆傅里葉變換示例思考與練習5-1何為圖像數(shù)字化?5-2物體表面上某一區(qū)域的灰度與那些因素或分量有關?是什么關系?5-3掃描儀的光學分辨率是600×1200線,一個具有5000個感光單元的CCD器件于A4幅面掃描儀,A4幅面的紙張寬度是8.3英寸,該掃描儀的光學分辨率是多少?5-4如果一幅灰度圖像灰度級為,請計算一幅100萬像素的數(shù)字圖像有多少bit的數(shù)據(jù)量?5-5簡述灰度直方圖的概念、性質(zhì)。思考與練習5-6給出一幅4bit、8像素×8像素的圖像A,作出各灰度級出現(xiàn)的頻數(shù)與灰度級的對應關系(直方圖)。思考與練習5-7計算圖像A和B的聯(lián)合直方圖。5-8為什么彩色在機器視覺中用得不是很普遍?你是否認為彩色機器視覺的應用在不斷增加?如果是這樣,請問它的主要應用是什么?思考與練習5-9采集一幅RGB圖像,編寫程序?qū)⑵滢D(zhuǎn)換為HSI彩色模型。在不同分量上施加不同程度的噪聲,然后再轉(zhuǎn)換到RGB彩色模型來顯示。5-10編程生成圖5-15(a)所示的圖像,實現(xiàn)對其進行DFT變換的幅度譜和相位譜程序。5-11編程生成如圖5-15(a)(b)所示的兩幅圖像,實現(xiàn)交換幅度譜和相位譜,并對其進行IDFT變換的程序,并說明得出的結論。5-12圖像的頻譜可以反應出圖像哪些特征?5-13交換兩幅圖像的相位譜,并進行傅里葉逆變換,通過實驗驗證相位譜決定圖像結構的論斷。第6章基于OPENCV和PYTHON的圖像預處理6.1圖像增強 6.1.1灰度變換 6.1.2直方圖變換 6.1.3色彩增強6.2閾值處理及圖像濾波 6.2.1Otsu閾值處理 6.2.2高斯濾波 6.2.3均值濾波 6.2.4中值濾波 6.2.5雙邊濾波 6.2.6自適應閾值處理6.3圖像的代數(shù)運算 6.3.1圖像相加

6.3.2圖像相減 6.3.3圖像相乘 6.3.4圖像相除6.4二值圖像的幾何性質(zhì)與操作 6.4.1二值圖像的連通性 6.4.2像素間的距離 6.4.3二值圖像連通成分標記 6.4.4腐蝕 6.4.5膨脹6.5基于OpenCV和Python的機器視覺 6.5.1主成分分析(PCA)

第6章基于OPENCV和PYTHON的圖像預處理 6.5.2SIFT(尺度不變特征變換)

6.5.3SURF(加速魯棒特征) 6.5.4ORB(定向FAST和旋轉(zhuǎn)BRIEF)第6章基于OPENCV和PYTHON的圖像預處理前面幾章已經(jīng)詳細介紹了Python及OpenCV編程基礎,視覺測量基礎、視覺圖像基礎及圖像傅里葉變換。為了更深入地提取圖像特征,本章詳細介紹圖像增強的灰度變化、直方圖變換及色彩增強,同時對比線性濾波器和非線性濾波器濾波效果,圖像腐蝕與膨脹及最新的特征提取方法。6.1

圖像增強圖像增強包含基于灰度變換的增強、基于直方圖變換的增強和基于顏色的彩色增強,其中灰度變化包含線性灰度變化和對數(shù)變換;基于直方圖變換以概率論為基礎,常用的方法有直方圖均衡化和直方圖規(guī)定化;彩色增強包含假彩色增強、偽彩色增強和彩色變換增強。6.1.1

灰度變換直接灰度變換屬于空域處理方法中的點運算操作,點運算與相鄰的像素之間無運算關系,而是輸入圖像與輸出圖像之間的映射關系。輸出圖像上每個像素的灰度值僅由相應輸入像素的灰度值決定,而與像素點所在的位置無關。直接灰度變換包括線性和非線性灰度變換,而非線性灰度變換主要包括對數(shù)變換和冪次變換。6.1.1

灰度變換線性灰度變換當圖像成像時,由于曝光不足或過度、成像設備的非線性以及圖像記錄設備動態(tài)范圍不夠等因素,都會產(chǎn)生對比度不足的弊病,從而造成圖像中細節(jié)分辨不清。這種情況下,可以使用線性灰度變換技術,通過逐段線性變換拉伸感興趣的灰度級、壓縮不感興趣的灰度級,以達到增強圖像對比度、提高灰度動態(tài)范圍的目的(1)線性點運算線性點運算的灰度變換函數(shù)可以采用如下線性方程描述, (6-1)6.1.1

灰度變換1)如果>1,輸出圖像的對比度增大(灰度級擴展),如圖6-1所示。

圖6-1對比度增大6.1.1

灰度變換2)如果0<<1,輸出圖像的對比度減?。ɑ叶燃墘嚎s),如圖6-2所示。

圖6-2對比度減小6.1.1

灰度變換3)如果<0,暗區(qū)域?qū)⒆兞?,亮區(qū)域?qū)⒆儼怠?/p>

圖6-3反色變換當a=-1時,稱為反色變換(negativetransformation),就是將圖像灰度反轉(zhuǎn)產(chǎn)生等同照片負片的效果,適合增強埋藏在黑暗區(qū)域中的白色或灰色細節(jié),反色變換的處理結果如圖6-3所示。假設對灰度級范圍

的圖像進行反色變換到

,變換函數(shù)為:

(6-2)6.1.1

灰度變換(2)分段線性點運算分段線性點運算可以將圖像中感興趣的灰度范圍線性擴展,相對抑制不感興趣的灰度范圍。典型的增強對比度的變換函數(shù)是三段線性變換,其數(shù)學表達式如下:

(6-3)例如,如圖6-4所示的分段線性變換處理,

,

。由圖中變換曲線可以看出,原圖像中灰度值在

的動態(tài)范圍減小了;而灰度值在

的動態(tài)范圍增加了,從而增加了中間范圍內(nèi)的對比度。

6.1.1

灰度變換

圖6-4分段線性變換由此可見,通過調(diào)整s1,z1,s2,z2,可以控制分段直線的斜率,可對任一灰度區(qū)間進行擴展或壓縮,從而得到不同的效果。6.1.1

灰度變換另一種分段線性點運算稱為灰度切片(gray-levelslicing),其目的是用來凸顯一幅圖像中的特定灰度范圍,也稱灰度窗口變換。常用的方法有兩種:第一種是對感興趣的灰度級以較大的灰度z2來顯示,而對另外的灰度級則以較小的灰度z1來顯示。這種灰度變換的表達式為: (6-4)如圖6-5(a)所示,給出了式(6-4)所述的灰度變換曲線,它可將s1和s2間的灰度值突出,而將其余灰度值變?yōu)槟硞€低灰度值,實際是窗口二值化處理。第二種方法是對感興趣的灰度級以較大的灰度值來顯示,而其他灰度級則保持不變,即保留背景的灰度窗口變換,應用于“藍幕”技術。這種變換可以用下面的表達式來描述,其變換曲線如圖6-5(b)所示。(6-5)6.1.1

灰度變換圖6-5灰度切片變換曲線

6.1.1

灰度變換對數(shù)變換在某些情況下,例如,在顯示傅里葉頻譜時,其動態(tài)范圍遠遠超出顯示設備的顯示能力,此時僅有圖像中最亮部分可在顯示設備上顯示,而頻譜中的低值部分將顯示為黑色,所顯示的圖像相對于原圖像就存在失真。解決此問題的有效方法是對原圖像進行對數(shù)變換,使圖像低灰度級區(qū)域擴展、高灰度級區(qū)域壓縮對數(shù)變換數(shù)學表達式為: (6-6)式中c——尺度比例常數(shù),取值可以結合原圖像的動態(tài)范圍以及顯示設備的顯示能力來確定,

。

6.1.1

灰度變換傅里葉頻譜的對數(shù)變換如圖6-6所示。相比之下,變換后圖像中細節(jié)部分的可見程度是很顯然的。這說明,對數(shù)變換可以使一窄帶低灰度輸入圖像值映射為一寬帶輸出值,利用這種變換可以擴展被壓縮的高值圖像中的暗像素。

圖6-6對數(shù)變換

6.1.2

直方圖變換直方圖是從圖像內(nèi)部灰度級的角度對圖像進行表示,體現(xiàn)圖像中各灰度值在整個圖像中出現(xiàn)的概率?;叶绕祷蚱恋膱D像,其直方圖分布集中在灰度級較低(或較高)的一側。動態(tài)范圍偏小(低對比度)的圖像,其直方圖分布范圍較窄;而動態(tài)范圍正常的圖像,其直方圖分布覆蓋很寬的灰度級范圍。因此,可以通過改變灰度直方圖的形狀來達到增強圖像對比度的效果。這種方法以概率論為基礎,常用的方法有直方圖均衡化和直方圖規(guī)定化。1.直方圖均衡化直方圖均衡化是指將原圖像的直方圖通過變換函數(shù)修正為均勻的直方圖,然后按均衡直方圖修正原圖像。例如,將一幅灰度分布如圖6-7(a)所示的圖像的直方圖變換為如圖6-7(b)所示的形式,并以具有均衡特性的直方圖6-7(b)去映射修正圖像灰度分布,則修正后的圖像將比原圖像協(xié)調(diào)。這一過程即為直方圖均衡化(histogramequalization)。

6.1.2

直方圖變換圖6-7圖像直方圖均衡化圖像均衡化處理后,圖像的直方圖是“平坦”的,即各灰度級具有近似相同的出現(xiàn)頻數(shù),那么由于灰度級具有均勻的概率分布,圖像看起來就更清晰了。圖6-7反映了直方圖均衡化的主要目的是將原始圖像的灰度級均勻地映射到整個灰度級范圍內(nèi),得到一個灰度級分布均勻的圖像。

6.1.2

直方圖變換這種均衡化,既實現(xiàn)了灰度值統(tǒng)計上的概率均衡,也實現(xiàn)了人類視覺系統(tǒng)(HumanVisualSystem,HVS)上的視覺均衡。直方圖均衡化的算法主要包括三個步驟:(1)計算圖像的統(tǒng)計直方圖;(2)計算統(tǒng)計直方圖的累積直方圖;(3)對累積直方圖記性區(qū)間轉(zhuǎn)換。下面我們用數(shù)學表達式描述直方圖均衡化的過程。假設圖像中像素的總數(shù)是N,圖像的灰度級是L,灰度級空間是[0,L-1],用表示第k級灰度(第k個灰度級,像素值為k)在圖像內(nèi)的像素點個數(shù),那么該圖像中灰度級為(第k個灰度級)出現(xiàn)的概率為: (6-7)6.1.2

直方圖變換根據(jù)灰度級概率,對其進行均衡化處理的計算公式為:(6-8)式中,表示累計概率,將該值與灰度級的最大值L-1相乘,即得到均衡化后的新灰度級(像素值),當計算結果不是整數(shù)時,選擇距離最近的灰度級作為當前灰度級。在OpenCV中,提供了cv2.equalHist()函數(shù),用于實現(xiàn)圖像的直方圖均衡化,其一般格式為: dst=cv2.equalHist(src)其中

dst表示直方圖均衡化后的圖像;

src表示輸入的待處理圖像;

6.1.2

直方圖變換例6-1使用cv2.equalHist()函數(shù)實現(xiàn)圖像直方圖均衡化。importcv2ascvimportmatplotlib.pyplotaspltimage=cv.imread("D:\Python\pic\smalldog52.jpg",cv.IMREAD_GRAYSCALE)cv.imshow("image",image)equ=cv.equalizeHist(image)#直方圖均衡化處理cv.imshow("equcartree",equ)#顯示均衡化后的圖像plt.figure("原始圖像直方圖")#構建窗口plt.hist(image.ravel(),256)#顯示原始圖像的直方圖plt.figure("均衡化圖像直方圖")#構建窗口plt.hist(equ.ravel(),256)#顯示均衡化后的圖像直方圖plt.show()#顯示直方圖cv.waitKey()cv.destroyAllWindows()程序運行結果如圖6-8所示。

6.1.2

直方圖變換 a)原始圖像 b)均衡化后的圖像

c)原始圖像直方圖 d)均衡化后的圖像直方圖圖6-8均衡化圖像和均衡化直方圖

6.1.2

直方圖變換在圖6-8中,圖6-8a)是待處理的原始圖像,圖6-8b)是均衡化后的圖像,圖6-8c)是原始圖像的直方圖,可以看出其像素值的灰度級主要分布在0~200之間,圖6-8d)是均衡化后的圖像直方圖??梢钥闯?,利用OpenCV中的cv2.equalHist()函數(shù)實現(xiàn)圖像直方圖均衡化達到了圖像像素均勻分布的效果。

6.1.2

直方圖變換2.直方圖規(guī)定化直方圖均衡化的優(yōu)點是能自動增強整個圖像的對比度,但它的具體增強效果不易控制,處理的結果總是得到全局均衡化的直方圖。另外,均衡化處理后的圖像雖然增強了圖像的對比度,但它并不一定適合人的視覺。實際中有時要求突出圖像中人們感興趣的灰度范圍,這時,可以變換直方圖使之成為所要求的形狀,從而有選擇地增強某個灰度值范圍內(nèi)的對比度,這種方法稱為直方圖規(guī)定化或直方圖匹配。一般來說正確選擇規(guī)定化的函數(shù)可獲得比直方圖均衡化更好的效果。令為原始圖像的灰度密度函數(shù),是期望的圖像灰度密度函數(shù),如圖6-9所示。對及做直方圖均衡變換,通過直方圖均衡為橋梁,實現(xiàn)與

變換。

6.1.2

直方圖變換圖6-9原圖像直方圖和規(guī)定直方圖

6.1.2

直方圖變換直方圖規(guī)定化主要有三個步驟(這里只考慮

的情況,和分別為原始圖像和規(guī)定圖像中的灰度級數(shù)):(1)對原始圖像進行直方圖均衡化處理:

(6-9)(2)對希望的直方圖(規(guī)定化函數(shù))用同樣的方法進行直方圖均衡化處理:

(6-10)(3)使用與靠近的代替,并求逆變換得到規(guī)定化后圖像的灰度級。

6.1.3彩色增強人眼只能區(qū)分20多種不同的灰度級,而對于不同亮度和色調(diào)的色彩則可分辨上千種。因而灰度圖像中,微小灰度差別的細節(jié)無法讓人眼所察覺,但若給它們賦予不同的顏色后,就有可能分辨出。彩色增強的目的就是為了增強圖像的視覺效果。彩色增強包括假彩色增強、偽彩色增強和彩色變換增強,它們之間的區(qū)別在于處理對象或處理目的不同。

6.1.3彩色增強與真彩色圖像相區(qū)別的另外兩種彩色圖像分別為偽彩色圖像和假彩色圖像。①偽彩色圖像是由灰度圖像經(jīng)過偽彩色處理后得到的,其像素值是所謂的索引值,是按照灰度值進行彩色指定的結果,其色彩并不一定忠實于外界景物的真實色彩。在顯示或記錄時,根據(jù)黑白圖像各像素灰度的大小按一定的規(guī)則賦予它們不同的顏色,于是就將黑白圖像變換成彩色圖像,這種處理方法稱為偽彩色增強。②假彩色圖像是自然圖像經(jīng)過假彩色處理后形成的彩色圖像。假彩色處理與偽彩色處理一樣,也是通過彩色映射增強圖像效果,但其處理的原始圖像不是灰度圖像,而是一幅真實的自然彩色圖像,或是遙感多光譜圖像。

6.1.3彩色增強1.假彩色增強(1)假彩色增強的目的假彩色增強處理的對象是三基色描繪的自然圖像或同一景物的多光譜圖像。假彩色增強的主要目的包括三方面內(nèi)容。1)把景物映射成奇怪的彩色,會比原來的自然彩色更引人注目,留下深刻的印象2)適應人眼對顏色的靈敏度,提高鑒別能力。例如,人眼對綠色亮度的響應最靈敏,可把原來是其他顏色顯示的細節(jié)映射成綠色,這樣就易鑒別。人眼對藍色的強弱對比靈敏度最大,可把細節(jié)豐富的物體映射成深淺與亮度不一的藍色。3)將多光譜圖像處理成假彩色圖像,不僅看起來自然、逼真,更主要的是通過與其他波段圖像配合可從中獲得更多的信息,便于區(qū)分地形、地物及礦產(chǎn)。

6.1.3彩色增強(2)對自然圖像的假彩色處理的兩種方法1)將關注的目標物映射為與原色不同的彩色。例如,綠色草原置成紅色,藍色海洋置成綠色等。這樣做的目的是使目標物置于奇特的環(huán)境中以引起觀察者的注意。2)根據(jù)人眼的色覺靈敏度,重新分配圖像成分的顏色。人眼對可見光中的綠色波長比較敏感,于是可將原來非綠色描述的圖像細節(jié)或目標物經(jīng)假彩色處理變成綠色以達到提高目標分辨率的目的。自然圖像的假彩色映射可定義為:(6-11)

6.1.3彩色增強式中,Rf、Gf、Bf為原基色分量;Rg、Gg、Bg為假彩色三基色分量;

為轉(zhuǎn)移函數(shù)。例如,(6-12)三基色與具有n個波段的多光譜圖像之間的關系為(6-13)式中,f為第I波段圖像;

、

、

表示通用的函數(shù)運算。

6.1.3彩色增強2.偽彩色增強偽彩色增強(pseudocolorenhancement),就是將單一波段或灰度圖像變換為彩色圖像,從而把人眼不能區(qū)分的微小的灰度差別,顯示為明顯的色彩差異,更便于識別和提取有用信息。偽彩色增強適用于航攝和遙感圖片、云圖等方面,也可以用于醫(yī)學圖像的判讀。偽彩色增強可以在空域或頻域中實現(xiàn),主要包括灰度分層法、空域灰度級彩色變換和頻域偽彩色增強。

6.1.3彩色增強(1)灰度分層法灰度分層法也稱密度分割,是偽彩色增強中最簡單的一種方法,它是對圖像灰度范圍進行分割,使一定灰度間隔對應于某一種顏色,從而有利于圖像的增強和分類。也就是把灰度圖像的灰度級從0(黑)到M(黑)分成M個區(qū)間

,

。給每個區(qū)間指定一種彩色,這樣,便可以把一幅灰度圖像變成一幅偽彩色圖像,灰度分層法示意圖如圖6-10所示

圖6-10灰度分層法示意圖

6.1.3彩色增強灰度分層法的缺點是變換出的彩色數(shù)目有限,偽彩色生硬且不夠柔和,量化噪聲大。增強效果與分割層數(shù)成正比,層次越多,細節(jié)越豐富,彩色越柔和。增強處理結果如圖6-11(b)所示。

6.1.3彩色增強(2)空域灰度級彩色變換空域灰度級彩色變換是一種更為常用的、比灰度分層法更為有效的偽彩色增強方法。它是根據(jù)色度學的原理,將原圖像

的灰度分段經(jīng)過紅、綠、藍三種不同變換,變成三基色分量,然后用它們分別去控制彩色顯示器的紅、綠、藍電子槍,這樣就可得到一幅由三個變換函數(shù)調(diào)制的與

幅度相對應的彩色圖像。彩色的含量由變換函數(shù)的形狀而定。典型的變換函數(shù)如圖6-12所示,其中前三個圖分別表示紅色、綠色、藍色三種變換函數(shù),而最后一幅圖是把三種變換函數(shù)顯示在同一坐標系上以清楚地看出相互間的關系,橫坐標表示原圖像灰度

。由最后一圖可見,只有在灰度為零時呈藍色,灰度為時呈綠色,灰度為 L時呈紅色,而在其他灰度時呈其他彩色。這種技術可以將灰度圖像變換為具有多種顏色漸變的連續(xù)彩色圖像,增強結果如圖6-11(c)所示

6.1.3彩色增強實際應用中,變換函數(shù)常用取絕對值的正弦,其特點是在峰值處比較平緩而在低谷處比較尖銳。通過改變每個正弦波的相位和頻率就可以改變相應灰度值所對應的彩色。6.1.3彩色增強(3)頻域偽彩色增強頻域偽彩色增強的處理步驟如圖6-13所示,首先將輸入的灰度圖像經(jīng)傅里葉變換到頻域,在頻域內(nèi)用三個不同傳遞特性的濾波器分離成三個獨立分量,然后對它們進行逆傅里葉變換,便得到三幅代表不同頻率分量的單色圖像,接著對這三幅圖像做進一步的處理,如直方圖均衡化,最后將它們作為三基色分量分別加到彩色顯示器的紅、綠、藍顯示通道,從而得到一幅彩色圖像。

6.1.3彩色增強偽彩色增強不改變像素的幾何位置,而僅僅改變其顯示的顏色,它是一種很實用的圖像增強技術,主要用于提高人眼對圖像的分辨能力。這種處理可以用計算機來完成,也可以用專用硬件設備來實現(xiàn)。偽彩色增強技術已經(jīng)被廣泛應用于遙感和醫(yī)學圖像處理,例如,云圖判讀,X光片、超聲圖片增強等。

6.2

閾值處理及圖像濾波圖像閾值處理是指剃除圖像內(nèi)像素高于一定值或低于一定值的像素點。常用的閾值處理方法有全局閾值處理、自適應閾值處理和Otsu處理。實際中任何一幅圖像都或多或少地包含噪聲,過濾掉圖像內(nèi)部的噪聲稱為圖像濾波。常用的圖像濾波方法有: 高斯濾波 均值濾波 中值濾波 方框濾波 雙邊濾波

2D卷積濾波6.2.1Otsu閾值處理在使用函數(shù)cv2.threshold()進行閾值處理時,需要自定義一個閾值。這個閾值對于色彩均衡的圖像較為容易選擇,但是對于色彩不均衡的圖像,閾值的選擇會變得很復雜,使用Otsu方法可以方便地選擇出圖像處理的最佳閾值,它會遍歷當前圖像的所有閾值,選取最佳閾值。Otsu方法(OtsuandThreshold,1979)是最受歡迎的最優(yōu)閾值處理方法之一。Otsu把圖像分割成目標和背景,所選取的分割閾值應使目標區(qū)域的平均灰度、背景區(qū)域的平均灰度與整幅圖像的平均灰度之間的差異最大,這種差異用區(qū)域的方差來表示。Otsu的基本原理是利用正規(guī)化直方圖,其中每個亮度級的概率值為該亮度級的點數(shù)除以圖像總點數(shù)。因此,亮度級的概率分布為 (6-14)其中表示亮度級的概率,表示亮度級為l的點數(shù),

N表示亮度級的總點數(shù)6.2.1Otsu閾值處理由式(6-14)可以計算第個亮度級的零階和一階累積矩,分別如式(6-15)和式(6-16)所示。

(6-15)(6-16)圖像的總平均值為(6-17)類分離方差為(6-18)因此,最優(yōu)閾值是類分離方差最大時的亮度級,也即是說,最優(yōu)閾值的方差滿足(6-19)6.2.1Otsu閾值處理在OpenCV中,實現(xiàn)Otsu處理的函數(shù)是cv2.threshold(),只不過參數(shù)type多傳遞一個參數(shù)“cv2.THRESH_OTSU”,即可實現(xiàn)Otsu的閾值處理。需要注意的是,在使用Otsu方法時,需要把閾值設為0。此時的函數(shù)cv2.threshold()會自動尋找最優(yōu)閾值,并將該閾值返回。該函數(shù)的語法格式是:t,Otsu=cv2.threshold(src,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)其中

src表示原始圖像,即需要處理的圖像;6.2.1Otsu閾值處理例6-1對一幅圖像分別使用二值化閾值函數(shù)cv2.threshold()、自適應閾值函數(shù)cv2.adaptiveThreshold()和Otsu閾值進行處理,顯示處理的結果。代碼如下:importcv2img1=cv2.imread(“D:Python\pic\yuantu1.jpg”,0)cv2.imshow(“original”,img1)t1,thd=cv2.threshold(img1,127,255,cv2.THRESH_BINARY)t2,Otsu=cv2.threshold(img1,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU)cv2.imshow(“thd”,thd)cv2.imshow(“Otsu”,Otsu)cv2.waitKey()cv2.destroyAllWindows()6.2.1Otsu閾值處理(a)原始圖像b)原始圖像調(diào)整為單通道灰度圖像d)Otsu閾值處理后的圖像c)二值化閾值處理6.2.1Otsu閾值處理圖6-14中的圖(a)是原始圖像,圖(b)是將原始圖像進行灰度處理后的結果,圖(c)是二值化閾值處理結果,從圖中可以看出,這種閾值處理會丟失大量的信息;圖(d)是Otsu閾值采用cv2.THRESH_BINARY+cv2.THRESH_OTSU類型,通過最優(yōu)閾值,得到了較好的處理結果。6.2.2

高斯濾波假設構造寬(列數(shù))為W,高(行數(shù))為H的高斯卷積算子

,其中W和H均為奇數(shù),錨點的位置在

,構造高斯卷積核的步驟如下:(1)計算高斯矩陣。

其中:

,r和c代表位置索引,

,

,且r和c均為整數(shù)。(2)計算高斯矩陣的和

。(3)高斯矩陣

除以高斯矩陣的和

,即歸一化,得到高斯卷積算子。

6.2.2

高斯濾波在高斯濾波中,卷積核中的值按照距離中心點

溫馨提示

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

評論

0/150

提交評論