如果有人問(wèn),上圖中的物體是什么?是個(gè)人都會(huì)毫不猶豫地回答:“蘋果!”問(wèn)下圖,也會(huì)得到同樣的答案。 明明圖不一樣,為什么答案卻相同?這是由于人的視覺(jué)細(xì)胞對(duì)物體邊緣特別敏感,先看到物體的輪廓,然后才判斷這到底是什么東西。 人之所以對(duì)物體邊緣特別敏感,是因?yàn)檫吘壈畔⒏鼮樨S富。物體的邊界與 3D 中的遮擋事件對(duì)應(yīng),一旦知道了邊界,就可以了解物體間的遮擋關(guān)系。下圖中,通過(guò)邊緣檢測(cè)可以得出,貼紙擋在了小女孩的前面,因?yàn)樾∨⒌妮喞笔Я艘欢涡畔ⅰ?/p> 如何找到圖像中顯著的邊緣呢?如果有人讓你指出一幅圖像最“顯著”的物體邊緣,你會(huì)追蹤哪些邊緣?下圖右側(cè)為計(jì)算機(jī)檢測(cè)出的邊緣,你的感知與它有多接近? 邊緣出現(xiàn)在那些顏色、亮度或紋理不同的區(qū)域之間,因此大多數(shù)人的感知和上圖右側(cè)所示相差無(wú)幾。如果按這些因素將圖像分割成相同區(qū)域塊會(huì)非常困難。因此,有人提出將邊緣定義為亮度變化劇烈的位置。 圖像邊緣檢測(cè)大幅度地減少了數(shù)據(jù)量,并且剔除了不相關(guān)的信息,保留了圖像重要的結(jié)構(gòu)屬性。邊緣檢測(cè)方法有很多,它們大都需要經(jīng)過(guò)以下幾個(gè)步驟:
1. 圖像濾波 邊緣檢測(cè)算法主要是基于圖像亮度的一階或二階導(dǎo)數(shù)。 函數(shù)的導(dǎo)數(shù)值就是切線的斜率,綠色代表其值為正,紅色代表其值為負(fù),黑色代表值為零。 導(dǎo)數(shù)運(yùn)算可以找出亮度變化明顯的邊界。但成像過(guò)程中會(huì)產(chǎn)生噪聲(妨礙人們接受信息因素),在圖像高頻部分所占比重較大,但導(dǎo)數(shù)卻又強(qiáng)調(diào)了高頻率部分,因此求導(dǎo)的過(guò)程同時(shí)放大了噪聲。 這就像收音機(jī)里的噪聲一樣,在我們調(diào)大聲音的同時(shí),噪聲也跟著變大。下圖為圖像噪聲示意圖,該圖為噪聲的模擬圖,并非采集圖像時(shí)所導(dǎo)致。 那如何處理收音機(jī)里的噪音呢?將頻道調(diào)至合適位置,便能獲得清晰的聲音。因?yàn)槊總€(gè)頻道發(fā)出的頻率不一樣,接收時(shí)必須調(diào)整到相應(yīng)頻道才可以收聽(tīng)。每個(gè)頻道就像一個(gè)“過(guò)濾網(wǎng)”,僅允許一個(gè)范圍內(nèi)的波頻通過(guò)。 解決圖像噪聲問(wèn)題也一樣,引入低通濾波器,允許低頻率的信號(hào)通過(guò),阻止高頻率信號(hào)通過(guò)。但是,這里的低通濾波器并不是阻止高頻信息通過(guò),而是減弱高頻信息。 下圖分別是圖像經(jīng)過(guò)濾波前后的對(duì)比。 2.圖形增強(qiáng) 經(jīng)低通濾波器過(guò)濾后的圖片變得非常平滑,但是邊緣部分并沒(méi)有被突出出來(lái)。這時(shí)就需要對(duì)邊緣進(jìn)行銳化,使圖像的邊緣變得清晰。 平滑處理是將每個(gè)像素和周圍的像素進(jìn)行平均,要使邊緣再變得清晰,則要對(duì)圖像再做逆運(yùn)算。 圖像模糊是因?yàn)椴捎玫屯V波器將圖像高頻信號(hào)減弱。相反,圖像銳化就可以用高通濾波器來(lái)減弱低頻信息,以此來(lái)突出高頻信息,使圖像看起來(lái)清晰。 3.圖像檢測(cè) 圖像的邊緣有幅度和方向?qū)傩?,沿邊緣方向像素變化緩慢,垂直邊緣方向像素變化劇烈。因此,邊緣上的變化能通過(guò)梯度計(jì)算出來(lái)。在圖像中有許多點(diǎn)的梯度幅值(與周圍點(diǎn)的差值)較大,而這些點(diǎn)有時(shí)并不都是我們需要的邊緣,所以需要用某些方法來(lái)確定哪些是邊緣的點(diǎn)。 最簡(jiǎn)單的邊緣檢測(cè)是給定一個(gè)閾值。 首先使用一個(gè)閾值上限去尋找邊線開(kāi)始的地方。一旦找到了一個(gè)開(kāi)始點(diǎn),便可以“順藤摸瓜”。在圖像上逐點(diǎn)跟蹤邊緣路徑也一樣,當(dāng)大于門檻下限時(shí),一直記錄邊緣位置,直到數(shù)值小于下限后才停止記錄。 檢測(cè)效果不理想,彩色邊緣來(lái)幫忙下圖是一張色盲檢測(cè)圖,它在正常人眼中是這樣的: 但是在色盲患者眼中,它則如下圖所示: 色盲患者無(wú)法感知到色彩信息,他們只能看到圖像的亮度信息。 大多數(shù)邊緣檢測(cè)都是針對(duì)灰度圖像進(jìn)行的,但對(duì)于上述色盲檢測(cè)圖中的數(shù)字來(lái)說(shuō),它們的亮度與周圍點(diǎn)相同。因此使用灰度邊緣檢測(cè)器的話,檢測(cè)結(jié)果就如同色盲患者所見(jiàn)結(jié)果一樣無(wú)法檢測(cè)出數(shù)字邊緣。此時(shí),可以利用彩色圖像信息來(lái)輔助完成邊緣識(shí)別。 彩色圖像邊緣檢測(cè)算法都是基于一定的顏色空間的,比較常用的有如上圖所示的 RGB,還有 HSI、YUV 等。顏色空間是對(duì)色彩的一種描述方式,定義有很多種,區(qū)別在于面向不同的應(yīng)用背景。 例如顯示器中采用的 RGB 顏色空間,是基于物體發(fā)光定義的(RGB 正好對(duì)應(yīng)光的三原色:Red,Green,Blue);工業(yè)印刷中常用的 CMY 顏色空間,是基于光反射定義的(CMY 對(duì)應(yīng)了繪畫中的三原色:Cyan,Magenta,Yellow);HSV、HSI 兩個(gè)顏色空間,都是從人視覺(jué)的直觀反映而提出來(lái)的(H 是色調(diào),S 是飽和度,I 是強(qiáng)度)。 由于人的視覺(jué)對(duì)亮度的敏感程度遠(yuǎn)強(qiáng)于對(duì)顏色濃淡的敏感強(qiáng)度,為了便于色彩處理和識(shí)別,人的視覺(jué)系統(tǒng)經(jīng)常采用 HSI(H 是色彩,S 是深淺,I 是明暗)色彩空間。 HSI 色彩空間是從人的視覺(jué)系統(tǒng)出發(fā),用色調(diào)(Hue)、色飽和度(Saturation)和亮度(Intensity)來(lái)描述色彩,它比 RGB 色彩空間更符合人的視覺(jué)特性。在圖像處理和計(jì)算機(jī)視覺(jué)中大量算法,都可在 HSI 色彩空間中方便地使用,它們可以分開(kāi)處理而且相互獨(dú)立。 因此,HSI 色彩空間可以大大簡(jiǎn)化圖像分析和處理的工作量。 基于彩色邊緣檢測(cè)的一個(gè)簡(jiǎn)單方法,是在每個(gè)顏色空間獨(dú)立地檢測(cè)邊緣,然后將它們聯(lián)合起來(lái)。就像下圖的賀卡,每個(gè)顏色制作一個(gè)字母,然后把這些字母疊加在一起便形成一個(gè)單詞。 目前的圖像采集設(shè)備都是基于 RGB 彩色空間的,所以要進(jìn)行顏色格式的轉(zhuǎn)換。我們以 HSI 顏色空間為例,可以將轉(zhuǎn)換后的圖像視為有三層——H、S、I。分別在這三層上進(jìn)行邊緣檢測(cè),然后將這三層的檢測(cè)結(jié)果疊加在一起形成最后的邊緣信息。 上圖是彩色圖像邊緣檢測(cè)的結(jié)果,雖然它已經(jīng)可以較好地識(shí)別物體輪廓,但是如果想要達(dá)到人眼識(shí)別的效果,就必須結(jié)合更多的視覺(jué)線索,如亮度、顏色和紋理等,才能構(gòu)建出更好的檢測(cè)器。
題圖來(lái)源:Active Trade |
|
來(lái)自: 新華書店好書榜 > 《VR虛擬現(xiàn)實(shí)資源下載》