馬新成
中通服公眾信息產(chǎn)業(yè)股份有限公司 新疆 烏魯木齊 830099
自從有了數(shù)碼攝像機(jī),圖像的應(yīng)用迅速擴(kuò)大,尤其人工智能技術(shù)的興起,計(jì)算機(jī)視覺(jué)的飛速發(fā)展又進(jìn)一步促進(jìn)了圖像的更深層次的智能應(yīng)用,計(jì)算機(jī)不但能夠“看懂”圖像,甚至能夠理解圖像內(nèi)容了。但是,由于攝像時(shí)周?chē)鞖獾挠绊?,尤其光照的影響,往往?dǎo)致拍攝的圖像不清晰。其中有一種情況是環(huán)境光照度太低導(dǎo)致圖像很暗,看不清楚物體,應(yīng)把這種圖像成為低照度圖像。由于低照度圖像中物體很暗,肉眼難以辨識(shí)[1]。如果要從這樣的圖像中檢測(cè)和識(shí)別人、車(chē)、物,也一樣難以識(shí)別出來(lái)。所以,需要有一種技術(shù)能夠使低照度圖像變得清晰起來(lái),這就是本文要研究的圖像增強(qiáng)技術(shù),但圖像增強(qiáng)算法很多,面向各種不同的問(wèn)題領(lǐng)域,要增強(qiáng)的方面不同,所采用的算法也就不同,本文就是要探究適合低照度圖像增強(qiáng)的算法,并通過(guò)程序?qū)崿F(xiàn)和驗(yàn)證,研究分析圖像增強(qiáng)的效果。
在研究圖像增強(qiáng)算法之前,先要搞清楚低照度圖像的特點(diǎn)。低照度圖像中物體很暗,所以看不清楚,但要分清暗和黑的區(qū)別,黑是什么都看不見(jiàn),沒(méi)有一點(diǎn)光線,這種情況一般就沒(méi)救了,圖像增強(qiáng)也是解決不了的。但是暗是有弱光線的,只是圖像的像素值較小,而且圖像中物體的像素值差異不大,對(duì)比度低,因此導(dǎo)致肉眼難以分辨物體。搞清楚了這個(gè)問(wèn)題,可以試想,如果能夠提高暗處的像素值,并盡量抑制亮處的像素值,再提高圖像的對(duì)比度,是不是就可以讓暗的物體變亮,從而使圖像變得清晰呢?是的,這就是解決問(wèn)題的思路。
有了解決問(wèn)題的思路,就可以開(kāi)始著手研究解決方法,通過(guò)傳統(tǒng)的圖像處理算法來(lái)解決這一問(wèn)題。經(jīng)過(guò)調(diào)查研究和分析,有3種適合本場(chǎng)景的圖像增強(qiáng)算法,分別是:直方圖均衡化圖像增強(qiáng)、基于對(duì)數(shù)變換的圖像增強(qiáng)、對(duì)比度圖像增強(qiáng)算法,下面將逐一講解每種算法的實(shí)現(xiàn)及效果,最后將給出比較結(jié)果和推薦算法[2]。
本文提出的解決思路都通過(guò)編寫(xiě)程序?qū)嶋H進(jìn)行了驗(yàn)證,并全部驗(yàn)證通過(guò)。操作系統(tǒng)使用的是windows10 64位,開(kāi)發(fā)工具使用的是Visual Studio Community 2019,開(kāi)發(fā)語(yǔ)言使用的是C++,使用了計(jì)算機(jī)視覺(jué)圖像庫(kù)opencv4.5[3]。為了便于比較各圖像增強(qiáng)算法的效果,以下各算法都使用同一張低照度圖像作為源圖像,如圖1。
圖1 原始圖像(src.png)
直方圖均衡化是圖像處理領(lǐng)域中利用圖像直方圖對(duì)對(duì)比度進(jìn)行調(diào)整的方法。此方法特別適合圖像整體比較暗的情況,可以增強(qiáng)局部對(duì)比度,從而達(dá)到圖像增強(qiáng)的效果,具體實(shí)現(xiàn)代碼如下:
以上代碼第2行為加載圖像,第4行是將圖像劈開(kāi)為RGB3個(gè)通道圖像,第5~7行是對(duì)每個(gè)通道進(jìn)行直方圖均衡化處理,第8行是將三個(gè)通道的圖像重新合并為一個(gè)圖像。
直方圖均衡化圖像增強(qiáng)的效果如圖2。
圖2 直方圖均衡化圖像增強(qiáng)效果圖
通過(guò)觀察圖2進(jìn)行效果分析,原圖中暗的地方得到增強(qiáng),效果還不錯(cuò)。但原圖中亮的地方更亮了,以至于原來(lái)的牌匾字體被曝光,看不清楚了,另外,整個(gè)圖像有很多噪點(diǎn)。
從對(duì)數(shù)曲線的走勢(shì)變化情況分析發(fā)現(xiàn),對(duì)數(shù)函數(shù)對(duì)于自變量x低值部分變化曲線比較陡,y值增加比較快,對(duì)自變量x的高值部分變化曲線比較舒緩,y值變化小。因此,對(duì)數(shù)變換可以擴(kuò)展、增強(qiáng)低像素值部分,縮減高像素值部分,從而達(dá)到圖像增強(qiáng)的目的。具體實(shí)現(xiàn)代碼如下:以上代碼第2行為加載圖像,第4~12行是循環(huán)讀取bgr3個(gè)通道中每個(gè)像素的值,經(jīng)過(guò)日志變換后存儲(chǔ)到imglog中。第13行是將日志變換圖像歸一化到0~255,存儲(chǔ)到目標(biāo)圖像dst中。第14行是將圖像轉(zhuǎn)換為8bit圖像。
基于對(duì)數(shù)變換的圖像增強(qiáng)的效果如圖3。
圖3 基于對(duì)數(shù)變換的圖像增強(qiáng)效果圖
通過(guò)觀察圖3進(jìn)行效果分析,圖像畫(huà)面得到增強(qiáng),牌匾字體基本也能看清,效果還不錯(cuò)。
對(duì)比度增強(qiáng)的算法可以說(shuō)是最簡(jiǎn)單直接的,就是提高所有像素的亮度,以達(dá)到圖像增強(qiáng)的目的。具體實(shí)現(xiàn)代碼如下:
以上代碼第2行為加載圖像,第5行是根據(jù)公式dst=alpha*src+beta 調(diào)整像素值,提高對(duì)比度。
提高對(duì)比度圖像增強(qiáng)的效果如圖4。
通過(guò)觀察圖4進(jìn)行效果分析,原圖中暗的地方與亮的地方都得到增強(qiáng),亮的地方被曝光,牌匾字體看不清楚了,很明顯,這種圖像增強(qiáng)方式比較簡(jiǎn)單粗暴,沒(méi)有區(qū)分明暗不同區(qū)域,難以達(dá)到較好的效果。
圖4 提高對(duì)比度圖像增強(qiáng)效果圖
通過(guò)對(duì)以上的3種圖像增強(qiáng)算法進(jìn)行比較,我們發(fā)現(xiàn)基于對(duì)數(shù)變換的圖像增強(qiáng)算法對(duì)圖像畫(huà)面的增強(qiáng)效果比較明顯,且對(duì)于原圖像中較亮部分也進(jìn)行了抑制,沒(méi)有造成曝光,整體效果比較不錯(cuò)。
本文論述了關(guān)于低照度圖像增強(qiáng)算法的研究與比較,通過(guò)對(duì)直方圖均衡化圖像增強(qiáng)、拉普拉斯算子圖像銳化增強(qiáng)、基于對(duì)數(shù)變換的圖像增強(qiáng)、提高對(duì)比度圖像增強(qiáng)四種圖像增強(qiáng)算法的研究、比較,基于對(duì)數(shù)變換的圖像增強(qiáng)算法綜合效果較好,在對(duì)暗處圖像增強(qiáng)的同時(shí),也能夠抑制亮處的圖像,可以取得比較好的增強(qiáng)效果。