本發(fā)明屬于圖像去霧處理技術(shù)領(lǐng)域,尤其涉及一種霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算方法及系統(tǒng)。
背景技術(shù):
對(duì)圖像特征進(jìn)行準(zhǔn)確提取是計(jì)算機(jī)視覺(jué)正常工作的關(guān)鍵因素,然而在霧、霾、煙、水汽等場(chǎng)合下,由于輻射光受到大氣粒子的散射作用,導(dǎo)致場(chǎng)景的能見(jiàn)度降低,圖像質(zhì)量嚴(yán)重退化,不僅模糊不清,而且還會(huì)出現(xiàn)嚴(yán)重的顏色失真,極大地限制了系統(tǒng)效用的發(fā)揮,甚至導(dǎo)致計(jì)算機(jī)視覺(jué)系統(tǒng)無(wú)法正常工作。因此,為了改善圖像質(zhì)量并且豐富圖像所包含的信息,使系統(tǒng)具備惡劣天氣下工作的魯棒性和可靠性,需要對(duì)霧天降質(zhì)圖像進(jìn)行去霧處理。
其中,在圖像處理過(guò)程中,大氣光值的計(jì)算成為圖像去霧算法的關(guān)鍵因素,但是通過(guò)現(xiàn)有技術(shù)提供的大氣光值的計(jì)算方法計(jì)算得到的大氣光值,與實(shí)際情況有一定偏差,導(dǎo)致圖像去霧效果較差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算方法,旨在解決現(xiàn)有技術(shù)中大氣光值的計(jì)算方法計(jì)算得到的大氣光值,與實(shí)際情況有一定偏差,導(dǎo)致圖像去霧效果較差的問(wèn)題。
本發(fā)明是這樣實(shí)現(xiàn)的,一種霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算方法,所述方法包括下述步驟:
對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波;
對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行兩次形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像;
對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像;
根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域;
根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值。
作為一種改進(jìn)的方案,所述對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行形態(tài)學(xué)濾波的步驟具體包括下述步驟:
對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行先執(zhí)行形態(tài)開(kāi)運(yùn)算再進(jìn)行形態(tài)閉運(yùn)算處理;
對(duì)進(jìn)行先執(zhí)行形態(tài)開(kāi)運(yùn)算再進(jìn)行形態(tài)閉運(yùn)算處理后的圖像進(jìn)行先執(zhí)行形態(tài)閉運(yùn)算再進(jìn)行形態(tài)開(kāi)運(yùn)算處理。
作為一種改進(jìn)的方案,所述對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像的步驟具體包括下述步驟:
對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行九宮格分解,獲取9個(gè)圖像子塊;
求取各個(gè)圖像子塊的平均灰度值;
對(duì)每個(gè)圖像子塊對(duì)應(yīng)的平均灰度值進(jìn)行不同權(quán)重賦值,并求取加權(quán)后的灰度平均值的最大值;
對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割,獲得四個(gè)子區(qū)域圖像;
分別計(jì)算四個(gè)所述子區(qū)域圖像的灰度均值,并對(duì)計(jì)算得到的四個(gè)所述灰度均值進(jìn)行排序;
判斷排序后的灰度均值最大值與第二大值之間的差值是大于等于預(yù)先設(shè)置的閾值;
若排序后的灰度均值最大值與第二大值之間的差值大于等于預(yù)先設(shè)置的閾值,則返回執(zhí)行所述對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割的步驟;
若排序后的灰度均值最大值與第二大值之間的差值小于預(yù)先設(shè)置的閾值,則將灰度均值最大值所對(duì)應(yīng)的子區(qū)域圖像作為子天空?qǐng)D像。
作為一種改進(jìn)的方案,所述根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域的步驟具體包括下述步驟:
對(duì)所述子天空?qǐng)D像進(jìn)行區(qū)域擴(kuò)展,得到擴(kuò)展后的剪切圖像;
在擴(kuò)展后的剪切圖像上查找初始類(lèi)聚中心點(diǎn),所述類(lèi)聚中心點(diǎn)包括最大像素點(diǎn)和最小像素點(diǎn);
根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差,進(jìn)行區(qū)域分類(lèi),并獲取得到第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域;
分別計(jì)算所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域的灰度數(shù)據(jù)平均值;
判斷所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值是否分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同;
若是,則判定聚類(lèi)動(dòng)作結(jié)束,并將所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域分別作為天空區(qū)域和非天空區(qū)域;若否,則將計(jì)算得到的所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域所對(duì)應(yīng)的數(shù)據(jù)平均值分別作為新的最大像素點(diǎn)和最小像素點(diǎn),并返回執(zhí)行所述根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差的步驟;
對(duì)二值化圖像存在的天空區(qū)域進(jìn)行形態(tài)學(xué)濾波操作。
作為一種改進(jìn)的方案,所述根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值的步驟具體包括下述步驟:
將形態(tài)學(xué)濾波操作后的天空區(qū)域轉(zhuǎn)換為灰度圖像;
將屬于所述天空區(qū)域的像素值提取出來(lái),并保存;
對(duì)提取到的所述天空區(qū)域內(nèi)的所有像素值進(jìn)行降序排列;
選取所述天空區(qū)域中亮度值排在前百分之五數(shù)量的像素點(diǎn)的平均灰度值作為所述彩色圖像的大氣光值。
本發(fā)明的另一目的在于提供一種霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算系統(tǒng),所述系統(tǒng)包括:
最小值濾波模塊,用于對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波;
形態(tài)學(xué)濾波模塊,用于對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像;
子天空?qǐng)D像獲取模塊,用于對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像;
聚類(lèi)分析模塊,用于根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域;
大氣光值計(jì)算模塊,用于根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值。
作為一種改進(jìn)的方案,所述形態(tài)學(xué)濾波模塊具體包括:
第一形態(tài)運(yùn)算處理模塊,用于對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行先執(zhí)行形態(tài)開(kāi)運(yùn)算再進(jìn)行形態(tài)閉運(yùn)算處理;
第二形態(tài)運(yùn)算處理模塊,用于對(duì)進(jìn)行先執(zhí)行形態(tài)開(kāi)運(yùn)算再進(jìn)行形態(tài)閉運(yùn)算處理后的圖像進(jìn)行先執(zhí)行形態(tài)閉運(yùn)算再進(jìn)行形態(tài)開(kāi)運(yùn)算處理。
作為一種改進(jìn)的方案,所述子天空?qǐng)D像獲取模塊具體包括:
九宮格分解模塊,用于對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行九宮格分解,獲取9個(gè)圖像子塊;
平均灰度值計(jì)算模塊,用于求取各個(gè)圖像子塊的平均灰度值;
加權(quán)計(jì)算模塊,用于對(duì)每個(gè)圖像子塊對(duì)應(yīng)的平均灰度值進(jìn)行不同權(quán)重賦值,并求取加權(quán)后的灰度平均值的最大值;
四叉樹(shù)分割模塊,用于對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割,獲得四個(gè)子區(qū)域圖像;
灰度均值計(jì)算排序模塊,用于分別計(jì)算四個(gè)所述子區(qū)域圖像的灰度均值,并對(duì)計(jì)算得到的四個(gè)所述灰度均值進(jìn)行排序;
差值判斷模塊,用于判斷排序后的灰度均值最大值與第二大值之間的差值是大于等于預(yù)先設(shè)置的閾值;
子天空?qǐng)D像確認(rèn)模塊,用于若所述差值判斷模塊判斷排序后的灰度均值最大值與第二大值之間的差值小于預(yù)先設(shè)置的閾值,則將灰度均值最大值所對(duì)應(yīng)的子區(qū)域圖像作為子天空?qǐng)D像;
若排序后的灰度均值最大值與第二大值之間的差值大于等于預(yù)先設(shè)置的閾值,則返回執(zhí)行所述對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割的步驟。
作為一種改進(jìn)的方案,所述聚類(lèi)分析模塊具體包括:
擴(kuò)展模塊,用于對(duì)所述子天空?qǐng)D像進(jìn)行區(qū)域擴(kuò)展,得到擴(kuò)展后的剪切圖像;
初始聚類(lèi)中心點(diǎn)查找模塊,用于在擴(kuò)展后的剪切圖像上查找初始類(lèi)聚中心點(diǎn),所述類(lèi)聚中心點(diǎn)包括最大像素點(diǎn)和最小像素點(diǎn);
分類(lèi)模塊,用于根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差,進(jìn)行區(qū)域分類(lèi),并獲取得到第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域;
平均值計(jì)算模塊,用于分別計(jì)算所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域的灰度數(shù)據(jù)平均值;
判斷模塊,用于判斷所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值是否分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同;
天空區(qū)域確認(rèn)模塊,用于若判定所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同,則判定聚類(lèi)動(dòng)作結(jié)束,并將所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域分別作為天空區(qū)域和非天空區(qū)域;
更新模塊,用于若判定所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值不相同,則將計(jì)算得到的所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域所對(duì)應(yīng)的數(shù)據(jù)平均值分別作為新的最大像素點(diǎn)和最小像素點(diǎn),并返回執(zhí)行所述分類(lèi)模塊根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差的步驟;
濾波模塊,用于對(duì)二值化圖像存在的天空區(qū)域進(jìn)行形態(tài)學(xué)濾波操作。
作為一種改進(jìn)的方案,所述大氣光值計(jì)算模塊具體包括:
圖像轉(zhuǎn)換模塊,用于將形態(tài)學(xué)濾波操作后的天空區(qū)域轉(zhuǎn)換為灰度圖像;
像素值提取模塊,用于將屬于所述天空區(qū)域的像素值提取出來(lái),并保存;
像素值排序模塊,用于對(duì)提取到的所述天空區(qū)域內(nèi)的所有像素值進(jìn)行降序排列;
像素點(diǎn)選取計(jì)算模塊,用于選取所述天空區(qū)域中亮度值排在前百分之五數(shù)量的像素點(diǎn)的平均灰度值作為所述彩色圖像的大氣光值。
在本發(fā)明實(shí)施例中,對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波;對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行兩次形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像;對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像;根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域;根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值,實(shí)現(xiàn)對(duì)大氣光值的計(jì)算,同時(shí)可一定程度抵消天空區(qū)域白色云朵等帶來(lái)的影響,又能排除彩色圖像中可能存在的尖銳噪聲引發(fā)的偏差,并為后續(xù)的圖像去霧奠定基礎(chǔ)。
附圖說(shuō)明
圖1是本發(fā)明提供的霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算方法的實(shí)現(xiàn)流程圖;
圖2是本發(fā)明提供的對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像的步驟實(shí)現(xiàn)流程圖;
圖3是本發(fā)明提供的九宮格圖像的示意圖;
圖4是本發(fā)明提供的根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域的實(shí)現(xiàn)流程圖;
圖5是本發(fā)明提供的根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值的實(shí)現(xiàn)流程;
圖6是本發(fā)明提供的霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算系統(tǒng)的結(jié)構(gòu)框圖;
圖7是本發(fā)明提供的子天空?qǐng)D像獲取模塊的結(jié)構(gòu)框圖;
圖8是本發(fā)明提供的聚類(lèi)分析模塊的結(jié)構(gòu)框圖;
圖9是本發(fā)明提供的大氣光值計(jì)算模塊的結(jié)構(gòu)框圖;
圖10是本發(fā)明提供的剪切圖像的示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1示出了本發(fā)明提供的霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算方法的實(shí)現(xiàn)流程圖,其具體包括下述步驟:
在步驟s101中,對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波。
其中,定義該彩色圖像函數(shù)為i(x,y),該彩色圖像為有霧圖像,該有霧圖像的散射模型可表示為:
i(x)=j(luò)(x)t(x)+a(1-t(x));
式中,x為空間坐標(biāo),i(x)為有霧圖像,j(x)為清晰無(wú)霧的圖像,a為整體大氣光值,t(x)為介質(zhì)傳輸率;
因此,
其中,(x,y)為圖像中的像素點(diǎn),c∈{r,g,b}為彩色圖像的三色通道。
在步驟s102中,對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行兩次形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像。
在該步驟中,采用相同尺寸的結(jié)構(gòu)元素,進(jìn)行不同級(jí)聯(lián)形態(tài)的開(kāi)-閉運(yùn)算:對(duì)圖像先進(jìn)行形態(tài)開(kāi)運(yùn)算后再進(jìn)行形態(tài)閉運(yùn)算處理;對(duì)圖像先進(jìn)行形態(tài)閉運(yùn)算后再進(jìn)行形態(tài)開(kāi)運(yùn)算處理,分別構(gòu)造形態(tài)開(kāi)-閉濾波器和閉-開(kāi)濾波器。
設(shè)f(x)為輸入圖像,b為結(jié)構(gòu)元素,則形態(tài)開(kāi)-閉運(yùn)算為:
oc(f(x))=(fοb·b)(x);
而閉-開(kāi)運(yùn)算為:
co(f(x))=(f·bοb)(x);
其中,開(kāi)和閉運(yùn)算的結(jié)構(gòu)元素相同,為了適應(yīng)不同大小圖像尺寸,設(shè)置結(jié)構(gòu)元素為正方形,其寬度大小為圖像高度和寬度最小值的1/50;
用公式表示為:
其中,h,w分別為圖像的高度和寬度;
該運(yùn)算可以濾除脈沖噪聲,又能保持圖像的細(xì)節(jié)特征。
在步驟s103中,對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像。
在步驟s104中,根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域。
在步驟s105中,根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值。
在本發(fā)明實(shí)施例中,圖2示出了本發(fā)明提供的對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像的步驟實(shí)現(xiàn)流程圖,其具體包括下述步驟:
在步驟s201中,對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行九宮格分解,獲取9個(gè)圖像子塊。
在該步驟中,將形態(tài)學(xué)濾波后的圖像在水平方向和垂直方向各分為三等份,如圖3所示的效果。
在步驟s202中,求取各個(gè)圖像子塊的平均灰度值。
在該步驟中,假設(shè)圖像子塊對(duì)應(yīng)的圖像為rij,則該圖像子塊的平均灰度值為:mij=mean(rij);
其中,mean()為圖像灰度均值運(yùn)算,其具體實(shí)現(xiàn)過(guò)程為:即求取圖像中所有像素點(diǎn)灰度值和,然后除以像素個(gè)數(shù)。
在步驟s203中,對(duì)每個(gè)圖像子塊對(duì)應(yīng)的平均灰度值進(jìn)行不同權(quán)重賦值,并求取加權(quán)后的灰度平均值的最大值。
在該步驟中,結(jié)合圖3所示,對(duì)第一行的三個(gè)圖像子塊加權(quán)1,對(duì)第二行的三個(gè)圖像子塊加權(quán)0.9,對(duì)第三行的三個(gè)圖像子塊加權(quán)0.8,其具體的表達(dá)式為:
當(dāng)然,上述加權(quán)系統(tǒng)也是其他數(shù)值,在此不再贅述。
計(jì)算得到圖像子塊的加權(quán)值后,求取灰度平均值的最大值,即:
r=r(max(m'ij));
其中,max()為求取最大值運(yùn)算,最終輸出加權(quán)灰度均值最大的區(qū)域。
在步驟s204中,對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割,獲得四個(gè)子區(qū)域圖像。
在步驟s205中,分別計(jì)算四個(gè)所述子區(qū)域圖像的灰度均值,并對(duì)計(jì)算得到的四個(gè)所述灰度均值進(jìn)行排序。
在該步驟中,mi=mean(ri)i={1,2,3,4};
{m1,m2,m3,m4}=rank(mi);
其中,m1≥m2≥m3≥m4;r'=r(m1)為將平均灰度值最大的區(qū)域保存為新的圖像。
在步驟s206中,判斷排序后的灰度均值最大值與第二大值之間的差值是大于等于預(yù)先設(shè)置的閾值;
在該步驟中,假設(shè)該預(yù)先設(shè)置的閾值為t,即判斷(m1-m2)≥t,并執(zhí)行下述步驟。
在步驟s207中,若排序后的灰度均值最大值與第二大值之間的差值小于預(yù)先設(shè)置的閾值,則將灰度均值最大值所對(duì)應(yīng)的子區(qū)域圖像作為子天空?qǐng)D像。
若排序后的灰度均值最大值與第二大值之間的差值大于等于預(yù)先設(shè)置的閾值,則返回執(zhí)行步驟s204,并繼續(xù)。
上述圖2和圖3結(jié)合實(shí)現(xiàn)了子天空?qǐng)D像的獲取,當(dāng)然也可以采用其他方式,在此不再贅述。
圖4示出了本發(fā)明提供的根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域的實(shí)現(xiàn)流程圖,其具體包括下述步驟:
在步驟s401中,對(duì)子天空?qǐng)D像進(jìn)行區(qū)域擴(kuò)展,得到擴(kuò)展后的剪切圖像。
在該步驟中,對(duì)獲取到的子天空?qǐng)D像,通過(guò)搜索該子天空?qǐng)D像區(qū)域內(nèi)灰度最大的像素點(diǎn)作為中心,在原始彩色圖像對(duì)應(yīng)點(diǎn)的上下左右分別擴(kuò)展圖像的1/4,并剪切保存形成新的剪切圖像g(x,y)。
假設(shè)該子天空?qǐng)D像的區(qū)域大小為[m*n],該區(qū)域中最大值點(diǎn)的坐標(biāo)為(x0,y0),則剪切圖像的大小為
在步驟s402中,在擴(kuò)展后的剪切圖像上查找初始類(lèi)聚中心點(diǎn),該類(lèi)聚中心點(diǎn)包括最大像素點(diǎn)和最小像素點(diǎn)。
在該步驟中,在剪切圖像上,搜索灰度值最大像素點(diǎn)和灰度值最小像素點(diǎn),分別即為x1和x2,假設(shè)該x1和x2在剪切圖像g(x,y)中對(duì)應(yīng)的三色像素值分別表示(rx1,gx1,bx1)和(rx2,gx2,bx2)。
在步驟s403中,根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與類(lèi)聚中心點(diǎn)的距離差,進(jìn)行區(qū)域分類(lèi),并獲取得到第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域。
在該步驟中,將剪切圖像g(x,y)中的任意一點(diǎn)的三色像素值x(rx,gx,bx)分別與來(lái)年改革聚類(lèi)中心點(diǎn)(rx1,gx1,bx1)和(rx2,gx2,bx2)計(jì)算歐式距離d1和d2,其計(jì)算式為:
通過(guò)比較歐式距離d1和d2的大小,將像素點(diǎn)劃分到最相似的一組,假設(shè)圖像中離x1距離近的屬于上述第一類(lèi)天空區(qū)域ω1,離x2點(diǎn)距離近的屬于第二類(lèi)天空區(qū)域ω2,則用公式表達(dá):
在步驟s404中,分別計(jì)算該第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域的灰度數(shù)據(jù)平均值。
在步驟s405中,判斷該第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值是否分別與上述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同,若是則執(zhí)行步驟s406,否則執(zhí)行步驟s407。
在步驟s406中,判定聚類(lèi)動(dòng)作結(jié)束,并將該第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域分別作為天空區(qū)域和非天空區(qū)域。
在步驟s407中,將計(jì)算得到的該第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域所對(duì)應(yīng)的數(shù)據(jù)平均值分別作為新的最大像素點(diǎn)和最小像素點(diǎn),并返回執(zhí)行上述步驟s403。
在步驟s408中,對(duì)二值化圖像存在的天空區(qū)域進(jìn)行形態(tài)學(xué)濾波操作。
在該步驟中,對(duì)上述二值化圖像進(jìn)行形態(tài)學(xué)開(kāi)運(yùn)算,濾除可能存在的離散雜點(diǎn),運(yùn)算過(guò)程為先腐蝕后膨脹,形態(tài)學(xué)算子的大小為三個(gè)像素點(diǎn);
設(shè)f(x)為輸入圖像,b為結(jié)構(gòu)元素,則形態(tài)開(kāi)閉運(yùn)算為:
在本發(fā)明實(shí)施例中,圖5示出了本發(fā)明提供的根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值的實(shí)現(xiàn)流程,其具體包括:
在步驟s501中,將形態(tài)學(xué)濾波操作后的天空區(qū)域轉(zhuǎn)換為灰度圖像。
在步驟s502中,將屬于天空區(qū)域的像素值提取出來(lái),并保存。
在步驟s503中,對(duì)提取到的所述天空區(qū)域內(nèi)的所有像素值進(jìn)行降序排列。
在步驟s504中,選取所述天空區(qū)域中亮度值排在前百分之五數(shù)量的像素點(diǎn)的平均灰度值作為所述彩色圖像的大氣光值。
在該步驟中,大氣光值a的計(jì)算式為:a=mean(max0.05r(x,y)),從而實(shí)現(xiàn)對(duì)大氣光值的計(jì)算。
圖6是本發(fā)明提供的霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算系統(tǒng)的結(jié)構(gòu)框圖,為了便于說(shuō)明,圖中僅給出了與本發(fā)明實(shí)施例相關(guān)的部分。
霧霾圖像基于自動(dòng)聚類(lèi)的大氣光值計(jì)算系統(tǒng)包括:
最小值濾波模塊11,用于對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波;形態(tài)學(xué)濾波模塊12,用于對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行兩次形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像;子天空?qǐng)D像獲取模塊13,用于對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像;聚類(lèi)分析模塊14根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域;大氣光值計(jì)算模塊15,用于根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值。
其中,如圖6所示,形態(tài)學(xué)濾波模塊12具體包括:
第一形態(tài)運(yùn)算處理模塊16,用于對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行先執(zhí)行形態(tài)開(kāi)運(yùn)算再進(jìn)行形態(tài)閉運(yùn)算處理;
第二形態(tài)運(yùn)算處理模塊17,用于對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行先執(zhí)行形態(tài)閉運(yùn)算再進(jìn)行形態(tài)開(kāi)運(yùn)算處理。
如圖7所示,子天空?qǐng)D像獲取模塊13具體包括:
九宮格分解模塊18,用于對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行九宮格分解,獲取9個(gè)圖像子塊;
平均灰度值計(jì)算模塊19,用于求取各個(gè)圖像子塊的平均灰度值;
加權(quán)計(jì)算模塊20,用于對(duì)每個(gè)圖像子塊對(duì)應(yīng)的平均灰度值進(jìn)行不同權(quán)重賦值,并求取加權(quán)后的灰度平均值的最大值;
四叉樹(shù)分割模塊21,用于對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割,獲得四個(gè)子區(qū)域圖像;
灰度均值計(jì)算排序模塊22,用于分別計(jì)算四個(gè)所述子區(qū)域圖像的灰度均值,并對(duì)計(jì)算得到的四個(gè)所述灰度均值進(jìn)行排序;
差值判斷模塊23,用于判斷排序后的灰度均值最大值與第二大值之間的差值是大于等于預(yù)先設(shè)置的閾值;
子天空?qǐng)D像確認(rèn)模塊24,用于若所述差值判斷模塊判斷排序后的灰度均值最大值與第二大值之間的差值小于預(yù)先設(shè)置的閾值,則將灰度均值最大值所對(duì)應(yīng)的子區(qū)域圖像作為子天空?qǐng)D像;
若排序后的灰度均值最大值與第二大值之間的差值大于等于預(yù)先設(shè)置的閾值,則返回執(zhí)行所述對(duì)求取到的最大值所對(duì)應(yīng)的圖像進(jìn)行四叉樹(shù)分割的步驟。
如圖8所示,聚類(lèi)分析模塊14具體包括:
擴(kuò)展模塊25,用于對(duì)所述子天空?qǐng)D像進(jìn)行區(qū)域擴(kuò)展,得到擴(kuò)展后的剪切圖像;
初始聚類(lèi)中心點(diǎn)查找模塊26,用于在擴(kuò)展后的剪切圖像上查找初始類(lèi)聚中心點(diǎn),所述類(lèi)聚中心點(diǎn)包括最大像素點(diǎn)和最小像素點(diǎn);
分類(lèi)模塊30,用于根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差,進(jìn)行區(qū)域分類(lèi),并獲取得到第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域;
平均值計(jì)算模塊31,用于分別計(jì)算所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域的灰度數(shù)據(jù)平均值;
判斷模塊32,用于判斷所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值是否分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同;
天空區(qū)域確認(rèn)模塊33,用于若判定所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值相同,則判定聚類(lèi)動(dòng)作結(jié)束,并將所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域分別作為天空區(qū)域和非天空區(qū)域;
更新模塊34,用于若判定所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域?qū)?yīng)的灰度數(shù)據(jù)平均值分別與所述最大像素點(diǎn)和最小像素點(diǎn)灰度值不相同,則將計(jì)算得到的所述第一類(lèi)天空區(qū)域和第二類(lèi)天空區(qū)域所對(duì)應(yīng)的數(shù)據(jù)平均值分別作為新的最大像素點(diǎn)和最小像素點(diǎn),并返回執(zhí)行所述分類(lèi)模塊根據(jù)擴(kuò)展后的剪切圖像中任意一點(diǎn)分別與所述類(lèi)聚中心點(diǎn)的距離差的步驟;
濾波模塊35,用于對(duì)二值化圖像存在的天空區(qū)域進(jìn)行形態(tài)學(xué)濾波操作。
如圖9所示,大氣光值計(jì)算模塊15具體包括:
圖像轉(zhuǎn)換模塊36,用于將形態(tài)學(xué)濾波操作后的天空區(qū)域轉(zhuǎn)換為灰度圖像;
像素值提取模塊27,用于將屬于所述天空區(qū)域的像素值提取出來(lái),并保存;
像素值排序模塊28,用于對(duì)提取到的所述天空區(qū)域內(nèi)的所有像素值進(jìn)行降序排列;
像素點(diǎn)選取計(jì)算模塊29,用于選取所述天空區(qū)域中亮度值排在前百分之五數(shù)量的像素點(diǎn)的平均灰度值作為彩色圖像的大氣光值。
其中,上述各個(gè)模塊的功能如上述方法實(shí)施例所記載,在此不再贅述。
在本發(fā)明實(shí)施例中,對(duì)輸入的彩色圖像中任意像素三通道進(jìn)行最小值濾波;對(duì)執(zhí)行最小值濾波后的圖像進(jìn)行形態(tài)學(xué)濾波,獲得形態(tài)學(xué)濾波后的圖像;對(duì)形態(tài)學(xué)濾波后的圖像進(jìn)行天空區(qū)域的粗定位,獲取子天空?qǐng)D像;根據(jù)獲得的所述子天空?qǐng)D像,利用聚類(lèi)分析的方法獲得天空區(qū)域;根據(jù)已經(jīng)獲取到的天空區(qū)域,計(jì)算大氣光值,實(shí)現(xiàn)對(duì)大氣光值的計(jì)算,同時(shí)可一定程度抵消天空區(qū)域白色云朵等帶來(lái)的影響,又能排除彩色圖像中可能存在的尖銳噪聲引發(fā)的偏差,并為后續(xù)的圖像去霧奠定基礎(chǔ)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。