本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別是涉及一種圖像處理方法、裝置、移動(dòng)終端及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
在駕車行駛的過程中,司機(jī)通常通過移動(dòng)終端,例如智能手機(jī)、行車記錄儀等記錄汽車行駛?cè)^程的視頻圖像及聲音。而在有霧天氣時(shí),移動(dòng)終端上的成像裝置由于受到空氣中懸浮顆粒的影響,容易導(dǎo)致采集圖像的顏色、紋理等特征受到嚴(yán)重的衰弱,采集的圖像整體的色調(diào)會(huì)趨于灰白化,致使移動(dòng)終端記錄的汽車行駛的視頻圖像不清晰。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)實(shí)施例提供一種圖像處理方法、裝置、移動(dòng)終端及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),可以有效去除采集的圖像中的霧,使在有霧天氣記錄的汽車行駛的視頻圖像更加清晰。
一種圖像處理方法,包括:
通過第一攝像頭采集圖像,并通過第二攝像頭獲取所述圖像的第一景深信息;
根據(jù)所述第一景深信息確定所述圖像的霧濃度;
根據(jù)所述霧深度計(jì)算能見度;
當(dāng)所述能見度小于預(yù)設(shè)閾值時(shí),根據(jù)所述霧濃度計(jì)算去霧參數(shù),并根據(jù)所述去霧參數(shù)對(duì)所述圖像進(jìn)行去霧處理。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述第一景深信息確定所述圖像的霧濃度,包括:
求取所述圖像的暗通道圖像;
根據(jù)所述第一景深信息對(duì)所述暗通道圖像進(jìn)行區(qū)域劃分;
對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并根據(jù)濾波處理后的暗通道圖像確定所述圖像的霧濃度。
在其中一個(gè)實(shí)施例中,所述根據(jù)所述去霧參數(shù)對(duì)所述圖像進(jìn)行去霧處理,包括:
檢測(cè)所述圖像中是否包含運(yùn)動(dòng)物體;
若包含,則提取所述圖像中的運(yùn)動(dòng)物體區(qū)域,并對(duì)所述運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在其中一個(gè)實(shí)施例中,所述對(duì)所述運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理,包括:
通過所述第二攝像頭獲取所述運(yùn)動(dòng)物體區(qū)域的第二景深信息;
選取與所述第二景深信息匹配的修正因子;
根據(jù)所述修正因子調(diào)整所述去霧參數(shù),并根據(jù)調(diào)整后的去霧參數(shù)對(duì)所述運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在其中一個(gè)實(shí)施例中,所述方法,還包括:
確定所述能見度落入的能見度范圍區(qū)間;
獲取與所述能見度范圍區(qū)間匹配的視線距離;
獲取當(dāng)前的移動(dòng)速度,若所述移動(dòng)速度大于預(yù)設(shè)的與所述視線距離對(duì)應(yīng)的標(biāo)準(zhǔn)速度,則發(fā)出警示。
一種圖像處理裝置,包括:
采集模塊,用于通過第一攝像頭采集圖像,并通過第二攝像頭獲取所述圖像的第一景深信息;
第一確定模塊,用于根據(jù)所述第一景深信息確定所述圖像的霧濃度;
計(jì)算模塊,用于根據(jù)所述霧深度計(jì)算能見度;
去霧模塊,用于當(dāng)所述能見度小于預(yù)設(shè)閾值時(shí),根據(jù)所述霧濃度計(jì)算去霧參數(shù),并根據(jù)所述去霧參數(shù)對(duì)所述圖像進(jìn)行去霧處理。
在其中一個(gè)實(shí)施例中,所述第一確定模塊,包括:
求取單元,用于求取所述圖像的暗通道圖像;
劃分單元,用于根據(jù)所述第一景深信息對(duì)所述暗通道圖像進(jìn)行區(qū)域劃分;
濾波單元,用于對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并根據(jù)濾波處理后的暗通道圖像確定所述圖像的霧濃度。
在其中一個(gè)實(shí)施例中,所述去霧模塊,包括:
檢測(cè)單元,用于檢測(cè)所述圖像中是否包含運(yùn)動(dòng)物體;
去霧單元,用于若所述圖像中包含運(yùn)動(dòng)物體,則提取所述圖像中的運(yùn)動(dòng)物體區(qū)域,并對(duì)所述運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理;
所述去霧單元,包括:
獲取子單元,用于通過所述第二攝像頭獲取所述運(yùn)動(dòng)物體區(qū)域的第二景深信息;
選取子單元,用于選取與所述第二景深信息匹配的修正因子;
調(diào)整子單元,用于根據(jù)所述修正因子調(diào)整所述去霧參數(shù),并根據(jù)調(diào)整后的去霧參數(shù)對(duì)所述運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在其中一個(gè)實(shí)施例中,所述裝置還包括:
第二確定模塊,用于確定所述能見度落入的能見度范圍區(qū)間;
距離獲取模塊,用于獲取與所述能見度范圍區(qū)間匹配的視線距離;
警示模塊,用于獲取當(dāng)前的移動(dòng)速度,若所述移動(dòng)速度大于預(yù)設(shè)的與所述視線距離對(duì)應(yīng)的標(biāo)準(zhǔn)速度,則發(fā)出警示。
一種移動(dòng)終端,包括存儲(chǔ)器,處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)如上所述的方法。
一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的方法。
上述圖像處理方法、裝置、移動(dòng)終端及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),通過第一攝像頭采集圖像,并通過第二攝像頭獲取圖像的第一景深信息,根據(jù)第一景深信息確定圖像的霧濃度,并計(jì)算能見度,當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù)并進(jìn)行去霧,能根據(jù)不同的霧濃度對(duì)采集的圖像進(jìn)行不同程度的去霧處理,可以有效去除采集的圖像中的霧,使在有霧天氣記錄的行車駕駛的視頻圖像更加清晰。
附圖說明
圖1為一個(gè)實(shí)施例中圖像處理方法的應(yīng)用場(chǎng)景圖;
圖2為一個(gè)實(shí)施例中移動(dòng)終端的框圖;
圖3為一個(gè)實(shí)施例中圖像處理方法的流程示意圖;
圖4為一個(gè)實(shí)施例中確定圖像的霧濃度的流程示意圖;
圖5為一個(gè)實(shí)施例中對(duì)當(dāng)前的移動(dòng)速度進(jìn)行警示的流程示意圖;
圖6為一個(gè)實(shí)施例中圖像處理裝置的框圖;
圖7為一個(gè)實(shí)施例中第一確定模塊的框圖;
圖8為另一個(gè)實(shí)施例中圖像處理裝置的框圖;
圖9為一個(gè)實(shí)施例中圖像處理電路的示意圖。
具體實(shí)施方式
為了使本申請(qǐng)的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本申請(qǐng)進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本申請(qǐng),并不用于限定本申請(qǐng)。
可以理解,本申請(qǐng)所使用的術(shù)語“第一”、“第二”等可在本文中用于描述各種元件,但這些元件不受這些術(shù)語限制。這些術(shù)語僅用于將第一個(gè)元件與另一個(gè)元件區(qū)分。舉例來說,在不脫離本申請(qǐng)的范圍的情況下,可以將第一客戶端稱為第二客戶端,且類似地,可將第二客戶端稱為第一客戶端。第一客戶端和第二客戶端兩者都是客戶端,但其不是同一客戶端。
圖1為一個(gè)實(shí)施例中圖像處理方法的應(yīng)用場(chǎng)景圖。如圖1所示,移動(dòng)終端10可通過攝像頭102對(duì)行車時(shí)的車前場(chǎng)景20進(jìn)行拍攝記錄,其中,攝像頭102中可包括第一攝像頭及第二攝像頭。移動(dòng)終端10通過第一攝像頭采集車前場(chǎng)景20的圖像,并通過第二攝像頭獲取采集的圖像的第一景深信息。移動(dòng)終端10可根據(jù)第一景深信息確定采集的圖像的霧濃度,并根據(jù)霧濃度計(jì)算車前場(chǎng)景20的能見度。當(dāng)車前場(chǎng)景20的能見度小于預(yù)設(shè)閾值時(shí),移動(dòng)終端10根據(jù)霧濃度計(jì)算去霧參數(shù),并根據(jù)去霧參數(shù)對(duì)圖像進(jìn)行去霧處理。
圖2為一個(gè)實(shí)施例中移動(dòng)終端10的框圖。如圖2所示,該移動(dòng)終端10包括通過系統(tǒng)總線連接的處理器、非易失性存儲(chǔ)介質(zhì)、內(nèi)存儲(chǔ)器和網(wǎng)絡(luò)接口、顯示屏和輸入裝置。其中,移動(dòng)終端10的非易失性存儲(chǔ)介質(zhì)存儲(chǔ)有操作系統(tǒng)及計(jì)算機(jī)可執(zhí)行指令,該計(jì)算機(jī)可執(zhí)行指令被處理器執(zhí)行時(shí)以實(shí)現(xiàn)本申請(qǐng)實(shí)施例中提供的一種圖像處理方法。該處理器用于提供計(jì)算和控制能力,支撐整個(gè)移動(dòng)終端10的運(yùn)行。移動(dòng)終端10中的內(nèi)存儲(chǔ)器為非易失性存儲(chǔ)介質(zhì)中的計(jì)算機(jī)可讀指令的運(yùn)行提供環(huán)境。網(wǎng)絡(luò)接口用于與服務(wù)器進(jìn)行網(wǎng)絡(luò)通信。移動(dòng)終端10的顯示屏可以是液晶顯示屏或者電子墨水顯示屏等,輸入裝置可以是顯示屏上覆蓋的觸摸層,也可以是移動(dòng)終端10外殼上設(shè)置的按鍵、軌跡球或觸控板,也可以是外接的鍵盤、觸控板或鼠標(biāo)等。該移動(dòng)終端10可以是手機(jī)、平板電腦或者個(gè)人數(shù)字助理或穿戴式設(shè)備等。本領(lǐng)域技術(shù)人員可以理解,圖2中示出的結(jié)構(gòu),僅僅是與本申請(qǐng)方案相關(guān)的部分結(jié)構(gòu)的框圖,并不構(gòu)成對(duì)本申請(qǐng)方案所應(yīng)用于其上的移動(dòng)終端10的限定,具體的移動(dòng)終端10可以包括比圖中所示更多或更少的部件,或者組合某些部件,或者具有不同的部件布置。
如圖3所示,在一個(gè)實(shí)施例中,提供一種圖像處理方法,包括以下步驟:
步驟310,通過第一攝像頭采集圖像,并通過第二攝像頭獲取圖像的第一景深信息。
移動(dòng)終端可在背面設(shè)置有兩個(gè)攝像頭,包括第一攝像頭及第二攝像頭,第一攝像頭及第二攝像頭可設(shè)置在同一水平線上,水平左右排列,也可設(shè)置在同一豎直線上,豎直上下排列。在本實(shí)施例中,第一攝像頭及第二攝像頭可以是不同像素的攝像頭,其中,第一攝像頭可以是像素較高的攝像頭,主要用于成像,第二攝像頭可以是像素較低的輔助景深攝像頭,用于獲取采集的圖像的景深信息。移動(dòng)終端可通過第一攝像頭連續(xù)采集多幀車前場(chǎng)景的圖像,生成記錄行車駕駛的視頻,并通過攝像頭獲取采集的每一幀圖像的第一景深信息,其中,第一景深信息可以理解為圖像中的每個(gè)物體到移動(dòng)終端的距離,也即物距信息。移動(dòng)終端可通過第二攝像頭獲取采集的圖像中的每個(gè)像素點(diǎn)的第一景深信息,進(jìn)一步地,可計(jì)算圖像中各個(gè)像素點(diǎn)的平均景深信息,并將該平均景深信息作為圖像的第一景深信息。
步驟320,根據(jù)第一景深信息確定圖像的霧濃度。
移動(dòng)終端可根據(jù)采集的圖像的每個(gè)像素點(diǎn)的第一景深信息估計(jì)圖像的霧濃度,景深信息與霧濃度可滿足如式(1)所示的關(guān)系:
f(x)=1-e-βd(x)(1);
其中,f(x)表示霧濃度,x表示圖像中某一像素點(diǎn)的空間位置,β表示大氣的散射系數(shù),d(x)表示景深,霧濃度f(x)與景深d(x)成指數(shù)關(guān)系,霧濃度f(x)隨著景深d(x)的增加而成指數(shù)增加。移動(dòng)終端可檢測(cè)圖像中是否存在景深信息突變的像素點(diǎn),從而判斷圖像的霧濃度是否分布均勻??捎?jì)算圖像中相鄰的兩個(gè)像素點(diǎn)的第一景深信息之間的差值,若該差值大于第一數(shù)值,則可判定第一景深信息之間的差值大于第一數(shù)值的兩個(gè)像素點(diǎn)存在景深信息突變,說明圖像中的霧濃度分布不均勻。若圖像的霧濃度分布均勻,移動(dòng)終端可直接確定圖像的霧濃度,若圖像的霧濃度分布不均勻,可根據(jù)各個(gè)像素點(diǎn)的第一景深信息對(duì)圖像進(jìn)行區(qū)域劃分,并分別確定各個(gè)區(qū)域的霧濃度,可將各個(gè)區(qū)域的霧濃度的平均值確定為圖像的霧濃度。
步驟330,根據(jù)霧深度計(jì)算能見度。
能見度,是反映大氣透明度的一個(gè)指標(biāo),一般定義為具有正常視力的人在當(dāng)前的天氣條件下還能夠看清楚目標(biāo)輪廓的最大距離。能見度和當(dāng)前的天氣情況密切相關(guān),當(dāng)出現(xiàn)降雨、霧、霾、沙塵暴等天氣情況時(shí),大氣透明度較低,因此能見度較差。移動(dòng)終端可根據(jù)確定的霧濃度計(jì)算當(dāng)前的車前場(chǎng)景的能見度,可建立大氣的散射系數(shù)與能見度信息的關(guān)系式(2):
其中,l表示能見度信息,則根據(jù)式(1)及式(2),可建立霧濃度與能見度的關(guān)系如式(3)所示:
移動(dòng)終端可將圖像的第一景深信息及霧濃度代入式(3)中,可計(jì)算得到當(dāng)前的車前場(chǎng)景的能見度。
步驟340,當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù),并根據(jù)去霧參數(shù)對(duì)圖像進(jìn)行去霧處理。
移動(dòng)終端得到當(dāng)前車前場(chǎng)景的能見度后,可判斷能見度是否小于預(yù)設(shè)閾值,若不小于預(yù)設(shè)閾值,則可認(rèn)為車前場(chǎng)景為無霧場(chǎng)景,第一攝像頭采集的圖像為清晰圖像,不需要對(duì)采集的圖像進(jìn)行去霧處理,其中,第一閾值可根據(jù)實(shí)際需求進(jìn)行設(shè)定,例如1000m(米)、1200m等。若能見度小于預(yù)設(shè)閾值,可對(duì)圖像進(jìn)行去霧處理,根據(jù)當(dāng)前車前場(chǎng)景的能見度決定是否對(duì)圖像進(jìn)行去霧處理,可減少計(jì)算處理量,減少移動(dòng)終端的功耗,減輕中央處理器的壓力。
移動(dòng)終端可根據(jù)去霧算法對(duì)采集的圖像進(jìn)行去霧處理,其中,去霧算法可包括基于圖像增強(qiáng)的去霧算法及基于圖像復(fù)原的去霧算法,基于圖像增強(qiáng)的去霧算法可包括基于retinex理論的去霧算法、基于直方圖均衡化的去霧算法等,基于圖像復(fù)原的去霧算法可包括基于大氣散射模型的去霧算法等。在本實(shí)施例中,移動(dòng)終端可通過暗原色先驗(yàn)算法對(duì)含霧圖像進(jìn)行去霧處理,其中,暗原色先驗(yàn)算法屬于一種基于圖像復(fù)原的去霧算法。暗原色先驗(yàn)算法中采用大氣散射模型對(duì)含霧圖像進(jìn)行描述,該大氣散射模型可如式(4)所示:
i(x)=j(luò)(x)t(x)+a(1-t(x))(4);
其中,i(x)表示需要進(jìn)行去霧處理的含霧圖像,j(x)表示對(duì)含霧圖像進(jìn)行去霧處理后得到的無霧圖像,t(x)表示透射率,a表示大氣光值。在本實(shí)施例中,去霧參數(shù)可包括圖像的大氣光值、透射率等。
在暗原色先驗(yàn)算法中,對(duì)于無霧圖像,某些像素在rgb(紅、綠、藍(lán)顏色空間)三個(gè)通道總會(huì)存在至少一個(gè)顏色通道具有很低的值,該顏色通道的值接近于零。因此,對(duì)于任意圖像,其暗通道圖像可如式(5)所示:
其中,jdark(x)表示暗通道圖像,jc(y)表示顏色通道的值,ω(x)表示以像素x為中心的一個(gè)窗口。
移動(dòng)終端可根據(jù)式(5)求取采集的圖像的暗通道圖像,并根據(jù)該暗通道圖像獲取圖像的大氣光值。進(jìn)一步地,移動(dòng)終端可在采集的圖像的暗通道圖像中,獲取各個(gè)像素點(diǎn)的亮度,并按照亮度對(duì)像素點(diǎn)進(jìn)行排序,再按照亮度從大到小提取暗通道圖像中預(yù)設(shè)比例的像素點(diǎn),其中,預(yù)設(shè)比例可根據(jù)實(shí)際需求進(jìn)行設(shè)定,例如0.1%、0.2%等,提取暗通道圖像中亮度最大的前0.1%或0.2%的像素點(diǎn)。再在采集的圖像中,確定與提取的像素點(diǎn)對(duì)應(yīng)的位置的亮度值,將其中具有最高亮度值的像素點(diǎn)的亮度值作為大氣光值。
移動(dòng)終端可根據(jù)霧濃度計(jì)算圖像的透射率,在一個(gè)實(shí)施例中,霧濃度與透射率的關(guān)系可如式(6)所示:
f(x)=1-t(x)(6);
根據(jù)式(6),可計(jì)算得到圖像的透射率,并將透射率與大氣光值代入式(4),將采集的圖像作為i(x),即可求取得到去霧處理后的圖像。進(jìn)一步地,移動(dòng)終端可直接根據(jù)本次計(jì)算得到的透射率及大氣光值,處理后續(xù)采集的預(yù)設(shè)數(shù)量的圖像,無需每幀圖像重新計(jì)算透射率及大氣光值,加快視頻的去霧處理速度,并減輕中央處理器的壓力。例如,移動(dòng)終端可每隔100幀圖像計(jì)算一次圖像的去霧參數(shù),根據(jù)當(dāng)前圖像計(jì)算的透射率及大氣光值等去霧參數(shù)對(duì)后續(xù)采集的99幀圖像進(jìn)行去霧處理。
上述圖像處理方法,通過第一攝像頭采集圖像,并通過第二攝像頭獲取圖像的第一景深信息,根據(jù)第一景深信息確定圖像的霧濃度,并計(jì)算能見度,當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù)并進(jìn)行去霧,能根據(jù)不同的霧濃度對(duì)采集的圖像進(jìn)行不同程度的去霧處理,可以有效去除采集的圖像中的霧,使在有霧天氣記錄的行車駕駛的視頻圖像更加清晰。
如圖4所示,在一個(gè)實(shí)施例中,步驟320根據(jù)第一景深信息確定圖像的霧濃度,包括以下步驟:
步驟402,求取圖像的暗通道圖像。
移動(dòng)終端可根據(jù)式(5)求取采集的圖像的暗通道圖像,并根據(jù)暗通道圖像估計(jì)圖像的霧濃度,暗通道圖像為采集的圖像中每個(gè)像素點(diǎn)在r、g、b三個(gè)通道中的最小值,可作為圖像的霧濃度的估計(jì)圖。
步驟404,根據(jù)第一景深信息對(duì)暗通道圖像進(jìn)行區(qū)域劃分。
移動(dòng)終端可檢測(cè)圖像中是否存在景深信息突變的像素點(diǎn),從而判斷圖像的霧濃度是否分布均勻。通過第二攝像頭獲取圖像中各個(gè)像素點(diǎn)的第一景深信息后,可分別計(jì)算圖像中相鄰的兩個(gè)像素點(diǎn)的第一景深信息d(x1)與d(x2)之間的差值,若該差值大于第一數(shù)值,則可判定第一景深信息之間的差值大于第一數(shù)值的兩個(gè)像素點(diǎn)存在景深信息突變,說明圖像中存在前景與背景,前景與背景的霧濃度分布不均勻,可能存在大的跳變。例如,采集的圖像中包含樹木和高樓,其中,樹木為前景,高樓為背景,樹木中包含了一些細(xì)節(jié),比如樹葉、樹枝等,從樹葉、樹枝等到高樓的景深信息變化特別大,則樹木與高樓的霧濃度差異較大。
若圖像的霧濃度分布不均勻,則可根據(jù)圖像中各個(gè)像素點(diǎn)的第一景深信息對(duì)暗通道圖像進(jìn)行區(qū)域劃分,將第一景深信息較相近的像素點(diǎn)劃分為同一區(qū)域,例如,根據(jù)第一景深信息將暗通道圖像劃分為前景區(qū)域及背景區(qū)域,但不限于此,也可分為三個(gè)、四個(gè)區(qū)域等,主要由各個(gè)像素點(diǎn)的第一景深信息決定。
步驟406,對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并根據(jù)濾波處理后的暗通道圖像確定圖像的霧濃度。
移動(dòng)終端可對(duì)暗通道圖像中,劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,在一個(gè)實(shí)施例中,可對(duì)各個(gè)區(qū)域進(jìn)行中值濾波處理,能夠保留暗通道圖像中的出現(xiàn)景深信息突變的邊界信息。中值濾波是一種非線性平滑技術(shù),可將該區(qū)域中任意像素點(diǎn)的值用該像素點(diǎn)所在的窗口內(nèi)各個(gè)像素點(diǎn)的值的中值代替,讓該像素點(diǎn)周圍的值接近真實(shí)值。
移動(dòng)終端可在暗通道圖像中定義預(yù)設(shè)大小的窗口,預(yù)設(shè)大小可為n*n大小,其中,n為奇數(shù),例如,n可為41、61等,但不限于此。根據(jù)預(yù)設(shè)大小的窗口,對(duì)暗通道圖像中的各個(gè)區(qū)域進(jìn)行中值濾波處理,可提取區(qū)域中在窗口內(nèi)的各個(gè)像素點(diǎn)的值,并將提取的各個(gè)像素點(diǎn)的值按大小順序進(jìn)行排列,生成一個(gè)數(shù)列,可獲取位于該數(shù)列中間位置的值,即為窗口包含的各個(gè)像素點(diǎn)的值的中值。移動(dòng)終端可將位于定義的預(yù)設(shè)大小的窗口中心的像素點(diǎn)的值替換為計(jì)算得到的該窗口的中值,完成中值濾波??芍貜?fù)多次在同一區(qū)域內(nèi)定義不同位置的窗口進(jìn)行中值濾波處理。移動(dòng)終端可根據(jù)進(jìn)行中值濾波的暗通道圖像估計(jì)各個(gè)區(qū)域的霧濃度,并可將各個(gè)區(qū)域的霧濃度的平均值確定為圖像的霧濃度。
在本實(shí)施例中,可根據(jù)第一景深信息對(duì)采集的圖像的暗通道圖像進(jìn)行區(qū)域劃分,對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并確定圖像的霧濃度,可使估計(jì)的霧濃度更為準(zhǔn)確,有效提高去霧效果,使去霧后的圖像更清晰。
在一個(gè)實(shí)施例中,步驟根據(jù)去霧參數(shù)對(duì)圖像進(jìn)行去霧處理,包括:檢測(cè)圖像中是否包含運(yùn)動(dòng)物體,若包含,則提取圖像中的運(yùn)動(dòng)物體區(qū)域,并對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
移動(dòng)終端通過第一攝像頭采集多幀車前場(chǎng)景的圖像,并通過第二攝像頭獲取每一幀圖像中各個(gè)像素點(diǎn)的第一景深信息??捎?jì)算相鄰兩幀圖像中對(duì)應(yīng)位置的像素點(diǎn)的第一景深信息之間的差值,當(dāng)圖像中存在與上一幀圖像的第一景深信息之間的差值大于第二數(shù)值的像素點(diǎn)時(shí),則可判斷圖像中包含運(yùn)動(dòng)物體。移動(dòng)終端可提取圖像中與上一幀圖像的第一景深信息之間的差值大于第二數(shù)值的所有像素點(diǎn),并將提取的像素點(diǎn)作為運(yùn)動(dòng)物體區(qū)域,優(yōu)先對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在一個(gè)實(shí)施例中,步驟對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理,包括以下步驟:
(1)通過第二攝像頭獲取運(yùn)動(dòng)物體區(qū)域的第二景深信息。
移動(dòng)終端可通過第二攝像頭獲取運(yùn)動(dòng)物體區(qū)域中各個(gè)像素點(diǎn)的第一景深信息,并計(jì)算運(yùn)動(dòng)物體區(qū)域的所有像素點(diǎn)的平均景深信息,可將該平均景深信息作為運(yùn)動(dòng)物體區(qū)域的第二景深信息。
(2)選取與第二景深信息匹配的修正因子。
當(dāng)采集的圖像中包含運(yùn)動(dòng)物體時(shí),可提取圖像中的運(yùn)動(dòng)物體區(qū)域,并可對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行程度更強(qiáng)的去霧處理,保證采集的圖像中運(yùn)動(dòng)物體的清晰。可引入修正因子對(duì)計(jì)算的圖像的透射率等去霧參數(shù)進(jìn)行調(diào)整,建立修正因子與景深信息范圍的對(duì)應(yīng)關(guān)系,不同的景深范圍可對(duì)應(yīng)不同的修正因子,其中,修正因子可為大于0且小于或等于1的值,當(dāng)景深范圍越大時(shí),對(duì)應(yīng)的修正因子越小,景深范圍越小時(shí),對(duì)應(yīng)的修正因子越大。移動(dòng)終端獲取圖像中的運(yùn)動(dòng)物體區(qū)域的第二景深信息后,可確定第二景深信息落入的景深范圍,并選取與該落入的景深范圍匹配的修正因子。
(3)根據(jù)修正因子調(diào)整去霧參數(shù),并根據(jù)調(diào)整后的去霧參數(shù)對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
移動(dòng)終端可根據(jù)式(7),利用修正因子對(duì)透射率進(jìn)行調(diào)整:
t'=w*t(7);
其中,w表示修正因子,t表示圖像的透射率,t'表示調(diào)整后的透射率。當(dāng)運(yùn)動(dòng)物體區(qū)域的第二景深信息越大時(shí),說明運(yùn)動(dòng)物體距離移動(dòng)終端越遠(yuǎn),選取的修正因子越小,調(diào)整后的透射率越小,去霧程度越強(qiáng);當(dāng)運(yùn)動(dòng)物體區(qū)域的第二景深信息越小時(shí),說明運(yùn)動(dòng)物體距離移動(dòng)終端越近,選取的修正因子越大,調(diào)整后的透射率較大,去霧程度較弱。
在一個(gè)實(shí)施例中,移動(dòng)終端也可在檢測(cè)到圖像中包含運(yùn)動(dòng)物體時(shí),僅對(duì)圖像中的運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧,當(dāng)圖像中不包含運(yùn)動(dòng)物體時(shí),則不對(duì)圖像進(jìn)行去霧處理,可減少去霧處理操作,節(jié)省資源消耗,減輕中央處理器的壓力。
在本實(shí)施例中,當(dāng)檢測(cè)到圖像中包含運(yùn)動(dòng)物體時(shí),可根據(jù)運(yùn)動(dòng)物體區(qū)域的第二景深信息選取修正因子對(duì)透射率進(jìn)行調(diào)整,可使圖像中的運(yùn)動(dòng)物體區(qū)域更加清晰,去霧效果更好。
如圖5所示,在一個(gè)實(shí)施例中,上述圖像處理方法,還包括以下步驟:
步驟502,確定能見度落入的能見度范圍區(qū)間。
可預(yù)先劃分多個(gè)能見度范圍區(qū)間,例如,劃分的能見度范圍區(qū)間可包括小于100m、100~200m、200~500m、500~1000m及1000~2000m等。
步驟504,獲取與能見度范圍區(qū)間匹配的視線距離。
針對(duì)各個(gè)能見度范圍區(qū)間,可分別對(duì)應(yīng)有不同的視線距離,該視線距離指的是在對(duì)應(yīng)的能見度范圍區(qū)間下,車輛行駛的可視距離,進(jìn)一步地,視線距離與能見度信息可具備線性回歸關(guān)系。例如,能見度范圍區(qū)間小于100m、100~200m、200~500m、500~1000m及1000~2000m,分別對(duì)應(yīng)的視線距離為小于20m、20~50m、50~150m、150~250m及250~520m等。移動(dòng)終端計(jì)算當(dāng)前的車前場(chǎng)景的能見度后,可確定能見度落入的能見度范圍區(qū)間,并獲取與該落入的能見度范圍區(qū)間對(duì)應(yīng)的視線距離。
步驟506,獲取當(dāng)前的移動(dòng)速度,若移動(dòng)速度大于預(yù)設(shè)的與視線距離對(duì)應(yīng)的標(biāo)準(zhǔn)速度,則發(fā)出警示。
不同的視線距離可預(yù)先設(shè)定有對(duì)應(yīng)的標(biāo)準(zhǔn)速度,標(biāo)準(zhǔn)速度指的是對(duì)應(yīng)視線距離下推薦的安全行車速度,當(dāng)行車駕駛的速度不超過標(biāo)準(zhǔn)速度時(shí),可保證用戶的行車安全,當(dāng)視線距離越小時(shí),標(biāo)準(zhǔn)速度越小,當(dāng)視線距離越大時(shí),標(biāo)準(zhǔn)速度越大。例如,當(dāng)能見度信息小于100m時(shí),視線距離小于20m,則對(duì)應(yīng)的標(biāo)準(zhǔn)速度為40公里/小時(shí),當(dāng)能見度信息在100~200m之間時(shí),視線距離在20~50m之間,對(duì)應(yīng)的標(biāo)準(zhǔn)速度為60公里/小時(shí)等。移動(dòng)終端可通過陀螺儀等傳感器獲取當(dāng)前的移動(dòng)速度,并將移動(dòng)速度與獲取的視線距離對(duì)應(yīng)的標(biāo)準(zhǔn)速度進(jìn)行比較,若當(dāng)前的移動(dòng)速度大于該標(biāo)準(zhǔn)速度,則可發(fā)出警示,對(duì)用戶進(jìn)行提醒,其中,警示的方式可包括發(fā)出警報(bào)聲、畫面亮起紅光、彈框提示等中的一種或多種,但不限于此。
在本實(shí)施例中,可根據(jù)當(dāng)前的能見度信息對(duì)車輛的移動(dòng)速度進(jìn)行提醒,保證用戶在霧天時(shí)的行車駕駛安全。
如圖6所示,在一個(gè)實(shí)施例中,提供一種圖像處理裝置600,包括采集模塊610、第一確定模塊620、計(jì)算模塊630及去霧模塊640。
采集模塊610,用于通過第一攝像頭采集圖像,并通過第二攝像頭獲取圖像的第一景深信息。
第一確定模塊620,用于根據(jù)第一景深信息確定圖像的霧濃度。
計(jì)算模塊630,用于根據(jù)霧深度計(jì)算能見度。
去霧模塊640,用于當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù),并根據(jù)去霧參數(shù)對(duì)圖像進(jìn)行去霧處理。
上述圖像處理裝置,通過第一攝像頭采集圖像,并通過第二攝像頭獲取圖像的第一景深信息,根據(jù)第一景深信息確定圖像的霧濃度,并計(jì)算能見度,當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù)并進(jìn)行去霧,能根據(jù)不同的霧濃度對(duì)采集的圖像進(jìn)行不同程度的去霧處理,可以有效去除采集的圖像中的霧,使在有霧天氣記錄的行車駕駛的視頻圖像更加清晰。
如圖7所示,在一個(gè)實(shí)施例中,第一確定模塊620,包括求取單元622、劃分單元624及濾波單元626。
求取單元622,用于求取圖像的暗通道圖像。
劃分單元624,用于根據(jù)第一景深信息對(duì)暗通道圖像進(jìn)行區(qū)域劃分。
濾波單元626,用于對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并根據(jù)濾波處理后的暗通道圖像確定圖像的霧濃度。
在本實(shí)施例中,可根據(jù)第一景深信息對(duì)采集的圖像的暗通道圖像進(jìn)行區(qū)域劃分,對(duì)劃分后的各個(gè)區(qū)域進(jìn)行平滑濾波處理,并確定圖像的霧濃度,可使估計(jì)的霧濃度更為準(zhǔn)確,有效提高去霧效果,使去霧后的圖像更清晰。
如圖8所示,在一個(gè)實(shí)施例中,去霧模塊640,包括檢測(cè)單元及去霧單元。
檢測(cè)單元,用于檢測(cè)圖像中是否包含運(yùn)動(dòng)物體。
去霧單元,用于若圖像中包含運(yùn)動(dòng)物體,則提取圖像中的運(yùn)動(dòng)物體區(qū)域,并對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在一個(gè)實(shí)施例中,去霧單元,包括獲取子單元、選取子單元及調(diào)整子單元。
獲取子單元,用于通過第二攝像頭獲取運(yùn)動(dòng)物體區(qū)域的第二景深信息。
選取子單元,用于選取與第二景深信息匹配的修正因子。
調(diào)整子單元,用于根據(jù)修正因子調(diào)整所述去霧參數(shù),并根據(jù)調(diào)整后的去霧參數(shù)對(duì)運(yùn)動(dòng)物體區(qū)域進(jìn)行去霧處理。
在本實(shí)施例中,當(dāng)檢測(cè)到圖像中包含運(yùn)動(dòng)物體時(shí),可根據(jù)運(yùn)動(dòng)物體區(qū)域的第二景深信息選取修正因子對(duì)透射率進(jìn)行調(diào)整,可使圖像中的運(yùn)動(dòng)物體區(qū)域更加清晰,去霧效果更好。
如圖8所示,在一個(gè)實(shí)施例中,上述圖像處理裝置600,除了包括采集模塊610、第一確定模塊620、計(jì)算模塊630及去霧模塊640,還包括第二確定模塊650、距離獲取模塊660及警示模塊670。
第二確定模塊650,用于確定能見度落入的能見度范圍區(qū)間。
距離獲取模塊660,用于獲取與能見度范圍區(qū)間匹配的視線距離。
警示模塊670,用于獲取當(dāng)前的移動(dòng)速度,若移動(dòng)速度大于預(yù)設(shè)的與視線距離對(duì)應(yīng)的標(biāo)準(zhǔn)速度,則發(fā)出警示。
在本實(shí)施例中,可根據(jù)當(dāng)前的能見度信息對(duì)車輛的移動(dòng)速度進(jìn)行提醒,保證用戶在霧天時(shí)的行車駕駛安全。
上述圖像處理裝置中各個(gè)模塊的劃分僅用于舉例說明,在其他實(shí)施例中,可將推薦信息生成裝置按照需要?jiǎng)澐譃椴煌哪K,以完成上述推薦信息生成裝置的全部或部分功能。
本申請(qǐng)實(shí)施例還提供一種移動(dòng)終端。上述移動(dòng)終端中包括圖像處理電路,圖像處理電路可以利用硬件和/或軟件組件實(shí)現(xiàn),可包括定義isp(imagesignalprocessing,圖像信號(hào)處理)管線的各種處理單元。圖9為一個(gè)實(shí)施例中圖像處理電路的示意圖。如圖9所示,為便于說明,僅示出與本申請(qǐng)實(shí)施例相關(guān)的圖像處理技術(shù)的各個(gè)方面。
如圖9所示,圖像處理電路包括isp處理器940和控制邏輯器950。成像設(shè)備910捕捉的圖像數(shù)據(jù)首先由isp處理器940處理,isp處理器940對(duì)圖像數(shù)據(jù)進(jìn)行分析以捕捉可用于確定和/或成像設(shè)備910的一個(gè)或多個(gè)控制參數(shù)的圖像統(tǒng)計(jì)信息。成像設(shè)備910可包括具有一個(gè)或多個(gè)透鏡912和圖像傳感器914的照相機(jī)。圖像傳感器914可包括色彩濾鏡陣列(如bayer濾鏡),圖像傳感器914可獲取用圖像傳感器914的每個(gè)成像像素捕捉的光強(qiáng)度和波長(zhǎng)信息,并提供可由isp處理器940處理的一組原始圖像數(shù)據(jù)。傳感器920可基于傳感器920接口類型把原始圖像數(shù)據(jù)提供給isp處理器940。傳感器920接口可以利用smia(standardmobileimagingarchitecture,標(biāo)準(zhǔn)移動(dòng)成像架構(gòu))接口、其它串行或并行照相機(jī)接口、或上述接口的組合。
isp處理器940按多種格式逐個(gè)像素地處理原始圖像數(shù)據(jù)。例如,每個(gè)圖像像素可具有8、10、12或14比特的位深度,isp處理器940可對(duì)原始圖像數(shù)據(jù)進(jìn)行一個(gè)或多個(gè)圖像處理操作、收集關(guān)于圖像數(shù)據(jù)的統(tǒng)計(jì)信息。其中,圖像處理操作可按相同或不同的位深度精度進(jìn)行。
isp處理器940還可從圖像存儲(chǔ)器930接收像素?cái)?shù)據(jù)。例如,從傳感器920接口將原始像素?cái)?shù)據(jù)發(fā)送給圖像存儲(chǔ)器930,圖像存儲(chǔ)器930中的原始像素?cái)?shù)據(jù)再提供給isp處理器940以供處理。圖像存儲(chǔ)器930可為存儲(chǔ)器裝置的一部分、存儲(chǔ)設(shè)備、或電子設(shè)備內(nèi)的獨(dú)立的專用存儲(chǔ)器,并可包括dma(directmemoryaccess,直接直接存儲(chǔ)器存取)特征。
當(dāng)接收到來自傳感器920接口或來自圖像存儲(chǔ)器930的原始圖像數(shù)據(jù)時(shí),isp處理器940可進(jìn)行一個(gè)或多個(gè)圖像處理操作,如時(shí)域?yàn)V波。處理后的圖像數(shù)據(jù)可發(fā)送給圖像存儲(chǔ)器930,以便在被顯示之前進(jìn)行另外的處理。isp處理器940還可從圖像存儲(chǔ)器930接收處理數(shù)據(jù),對(duì)上述處理數(shù)據(jù)進(jìn)行原始域中以及rgb和ycbcr顏色空間中的圖像數(shù)據(jù)處理。處理后的圖像數(shù)據(jù)可輸出給顯示器980,以供用戶觀看和/或由圖形引擎或gpu(graphicsprocessingunit,圖形處理器)進(jìn)一步處理。此外,isp處理器940的輸出還可發(fā)送給圖像存儲(chǔ)器930,且顯示器980可從圖像存儲(chǔ)器930讀取圖像數(shù)據(jù)。在一個(gè)實(shí)施例中,圖像存儲(chǔ)器930可被配置為實(shí)現(xiàn)一個(gè)或多個(gè)幀緩沖器。此外,isp處理器940的輸出可發(fā)送給編碼器/解碼器970,以便編碼/解碼圖像數(shù)據(jù)。編碼的圖像數(shù)據(jù)可被保存,并在顯示與顯示器980設(shè)備上之前解壓縮。
isp處理器940處理圖像數(shù)據(jù)的步驟包括:對(duì)圖像數(shù)據(jù)進(jìn)行vfe(videofrontend,視頻前端)處理和cpp(camerapostprocessing,攝像頭后處理)處理。對(duì)圖像數(shù)據(jù)的vfe處理可包括修正圖像數(shù)據(jù)的對(duì)比度或亮度、修改以數(shù)字方式記錄的光照狀態(tài)數(shù)據(jù)、對(duì)圖像數(shù)據(jù)進(jìn)行補(bǔ)償處理(如白平衡,自動(dòng)增益控制,γ校正等)、對(duì)圖像數(shù)據(jù)進(jìn)行濾波處理等。對(duì)圖像數(shù)據(jù)的cpp處理可包括對(duì)圖像進(jìn)行縮放、向每個(gè)路徑提供預(yù)覽幀和記錄幀。其中,cpp可使用不同的編解碼器來處理預(yù)覽幀和記錄幀。
isp處理器940處理后的圖像數(shù)據(jù)可發(fā)送給去霧模塊960,以便在被顯示之前對(duì)圖像進(jìn)行去霧處理。去霧模塊960可根據(jù)圖像的第一景深信息確定圖像的霧濃度,根據(jù)霧濃度計(jì)算能見度,當(dāng)能見度小于預(yù)設(shè)閾值時(shí),根據(jù)霧濃度計(jì)算去霧參數(shù),并根據(jù)去霧參數(shù)對(duì)圖像進(jìn)行去霧處理等。其中,去霧模塊960可為移動(dòng)終端中cpu(centralprocessingunit,中央處理器)、gpu或協(xié)處理器等。去霧模塊960將圖像數(shù)據(jù)進(jìn)行去霧處理后,可將去霧處理后的圖像數(shù)據(jù)發(fā)送給編碼器/解碼器970,以便編碼/解碼圖像數(shù)據(jù)。編碼的圖像數(shù)據(jù)可被保存,并在顯示與顯示器980設(shè)備上之前解壓縮??梢岳斫獾氖?,去霧模塊960處理后的圖像數(shù)據(jù)可以不經(jīng)過編碼器/解碼器970,直接發(fā)給顯示器980進(jìn)行顯示。isp處理器940處理后的圖像數(shù)據(jù)還可以先經(jīng)過編碼器/解碼器970處理,然后再經(jīng)過去霧模塊960進(jìn)行處理。上述編碼器/解碼器可為移動(dòng)終端中cpu、gpu或協(xié)處理器等。
isp處理器940確定的統(tǒng)計(jì)數(shù)據(jù)可發(fā)送給控制邏輯器950單元。例如,統(tǒng)計(jì)數(shù)據(jù)可包括自動(dòng)曝光、自動(dòng)白平衡、自動(dòng)聚焦、閃爍檢測(cè)、黑電平補(bǔ)償、透鏡912陰影校正等圖像傳感器914統(tǒng)計(jì)信息。控制邏輯器950可包括執(zhí)行一個(gè)或多個(gè)例程(如固件)的處理器和/或微控制器,一個(gè)或多個(gè)例程可根據(jù)接收的統(tǒng)計(jì)數(shù)據(jù),確定成像設(shè)備910的控制參數(shù)以及isp處理器940的控制參數(shù)。例如,控制參數(shù)可包括傳感器920控制參數(shù)(例如增益、曝光控制的積分時(shí)間)、照相機(jī)閃光控制參數(shù)、透鏡912控制參數(shù)(例如聚焦或變焦用焦距)、或這些參數(shù)的組合。isp控制參數(shù)可包括用于自動(dòng)白平衡和顏色調(diào)整(例如,在rgb處理期間)的增益水平和色彩校正矩陣,以及透鏡912陰影校正參數(shù)。
在本實(shí)施例中,運(yùn)用圖9中的圖像處理技術(shù)可實(shí)現(xiàn)上述的圖像處理方法。
在一個(gè)實(shí)施例中,提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述圖像處理方法。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一非易失性計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(read-onlymemory,rom)等。
以上所述實(shí)施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡(jiǎn)潔,未對(duì)上述實(shí)施例中的各個(gè)技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。
以上所述實(shí)施例僅表達(dá)了本申請(qǐng)的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請(qǐng)構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本申請(qǐng)的保護(hù)范圍。因此,本申請(qǐng)專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。