国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Android平臺(tái)的夜間圖像增強(qiáng)軟件的設(shè)計(jì)與實(shí)現(xiàn)

2022-01-26 05:10李向輝張菲菲鄒浩然曾鈺琦李杰倫林偉龍黃譽(yù)戈楊振宇李俊賢王明謙
現(xiàn)代計(jì)算機(jī) 2021年34期
關(guān)鍵詞:夜視圖像增強(qiáng)調(diào)用

李向輝,張菲菲,鄒浩然,曾鈺琦,李杰倫,林偉龍,黃譽(yù)戈,楊振宇,李俊賢,王明謙

(廣東第二師范學(xué)院計(jì)算機(jī)學(xué)院,廣州 510303)

0 引言

隨著智能手機(jī)的普及,人們對(duì)手機(jī)上獲取圖像的成像質(zhì)量和成像速度提出越來越高的要求,因此在移動(dòng)互聯(lián)網(wǎng)應(yīng)用中,面向移動(dòng)終端的圖像處理技術(shù)越來越重要[1]。當(dāng)前大多數(shù)智能手機(jī)在夜視環(huán)境下拍攝的圖像存在信噪比低、對(duì)比度差等問題,拍攝的圖像不能滿足用戶需求。目前,國內(nèi)外針對(duì)夜間圖像的增強(qiáng)算法主要包括三種:直方圖均衡化的方法、Retinex理論的方法以及深度學(xué)習(xí)的方法。其中Retinex理論的方法由于其優(yōu)異的處理效果,得到最多的關(guān)注和研究。本文采用帶色彩恢復(fù)的多尺度Retinex(multi-scale retinex with color restoration,MSRCR)算法[2-3]來對(duì)夜間圖像進(jìn)行增強(qiáng)。目前Android系統(tǒng)雖是主要的手機(jī)操作系統(tǒng),但在Android平臺(tái)上實(shí)現(xiàn)夜間圖像的增強(qiáng)技術(shù)并不多。因此,基于Android的夜間圖像增強(qiáng)軟件未來社會(huì)發(fā)展具有很高的應(yīng)用價(jià)值。鑒于此,本文結(jié)合MSRCR算法和專業(yè)的開源圖像處理庫OpenCV,研究在Android平臺(tái)開發(fā)一款夜視圖像增強(qiáng)軟件來滿足夜視場景的清晰化成像。

1 夜視圖像清晰化應(yīng)用框架體系

1.1 系統(tǒng)業(yè)務(wù)流程

本系統(tǒng)的邏輯流程如圖1所示。

圖1 系統(tǒng)邏輯流程

首先,啟動(dòng)軟件之后,會(huì)進(jìn)入首頁面,首頁面具備兩個(gè)功能:登錄、注冊。其中在登錄框輸入的賬號(hào)密碼與數(shù)據(jù)庫匹配,則點(diǎn)擊登錄將成功進(jìn)入拍照相冊頁;另外,用戶可點(diǎn)擊注冊進(jìn)入注冊賬號(hào)頁面填寫信息,系統(tǒng)會(huì)將符合要求的注冊信息寫入到數(shù)據(jù)庫中。

然后在拍照相冊頁面中首次點(diǎn)擊會(huì)申請權(quán)限,點(diǎn)擊拍照按鈕會(huì)調(diào)用相機(jī)拍照,拍照按鈕按下后則會(huì)在處理圖像頁面顯示拍下的照片;點(diǎn)擊相冊按鈕則會(huì)打開相冊,當(dāng)用戶選擇照片后,則會(huì)在圖像頁面顯示選擇后的圖片。

在處理圖像頁面中,點(diǎn)擊處理圖像按鈕則會(huì)對(duì)圖像進(jìn)行增強(qiáng)處理,點(diǎn)擊保存按鈕則會(huì)將圖像保存至本地相冊然后跳轉(zhuǎn)到拍照相冊頁面。

1.2 各個(gè)模塊之間的調(diào)用關(guān)系

本軟件的架構(gòu)關(guān)系如圖2所示。

圖2 軟件架構(gòu)關(guān)系

在該軟件的交互開發(fā)中,通過調(diào)用Android平臺(tái)提供的SQLite數(shù)據(jù)庫實(shí)現(xiàn)了用戶的注冊和登錄,通過Android平臺(tái)的XML文件進(jìn)行布局,實(shí)現(xiàn)各個(gè)界面的交互。最后通過常用的相冊相機(jī)調(diào)用方式,實(shí)現(xiàn)所需增強(qiáng)的圖像導(dǎo)入功能。

在圖像增強(qiáng)的開發(fā)中,通過Android平臺(tái)的JNI方式去調(diào)用CMake,CMake執(zhí)行圖像處理算法,同時(shí)該算法調(diào)用OpenCV庫所提供的方法,實(shí)現(xiàn)圖像增強(qiáng)后再通過JNI返回結(jié)果[4]。

本項(xiàng)目不直接使用OpenCV庫的原因是由于C語言在算法中具有高效的優(yōu)勢,同時(shí)OpenCV庫的底層語言亦為C語言,因此通過CMake方式能夠提高軟件執(zhí)行效率。

2 各模塊設(shè)計(jì)

2.1 登錄注冊賬戶的實(shí)現(xiàn)

已有賬戶的用戶可通過輸入賬號(hào)與密碼,點(diǎn)擊登錄進(jìn)入圖像獲取頁面。點(diǎn)擊登錄時(shí),軟件會(huì)匹配數(shù)據(jù)庫中的內(nèi)容,若輸入的賬號(hào)密碼不正確,則彈出提示賬號(hào)密碼不正確,正確則進(jìn)入下一個(gè)活動(dòng)頁。

首次使用的用戶可點(diǎn)擊注冊按鈕進(jìn)入注冊頁面,填寫賬號(hào)與密碼進(jìn)行注冊。其中,登錄頁面的密碼出錯(cuò)。注冊頁面主要有兩個(gè)按鈕,一個(gè)是注冊,一個(gè)是返回主頁面。注冊按鈕通過獲取輸入框的string值,判斷三個(gè)輸入框密碼是否為空,以及兩個(gè)密碼框輸入的密碼是否一致,如果其中一項(xiàng)不符合標(biāo)準(zhǔn)則彈出錯(cuò)誤提示,如果成功,則寫入數(shù)據(jù)庫。

2.2 不同途徑的圖像獲取實(shí)現(xiàn)

2.2.1 通過拍照獲得照片

首先活動(dòng)頁處創(chuàng)建一個(gè)file對(duì)象,然后根據(jù)安卓的版本大小,執(zhí)行相應(yīng)的拍照獲取圖片操作。如果安卓版本小于7.0則將file對(duì)象封裝Uri,如果大于7.0則file對(duì)象轉(zhuǎn)換成Uri對(duì)象再從這個(gè)對(duì)象獲得圖片的真實(shí)路徑,然后進(jìn)行動(dòng)態(tài)權(quán)限申請。最后要在AndroidManif.xml中申請相應(yīng)的權(quán)限。

2.2.2 通過相冊獲得照片

相冊獲取圖像是在調(diào)用的部分重寫startAc?tivityForResult()方法開啟Intent的回調(diào)實(shí)現(xiàn)。方法根據(jù)不同類型的圖像使用不同的處理。Docu?ment類型的uri通過document id處理;content類型的uri使用普通方式處理,F(xiàn)ile類型的uri則直接獲取圖片路徑。最后在界面上的顯示框呈現(xiàn)。

3 夜視圖像增強(qiáng)算法的實(shí)現(xiàn)

3.1 MSRCR算法的原理

本軟件采用的夜視圖像增強(qiáng)算法是帶色彩恢復(fù) 的 多 尺 度Retinex算 法[3-4](multi-scale retinex with color restoration,MSRCR)。根據(jù)Retinex理論,圖像上某一像素點(diǎn)的觀測值為該點(diǎn)的光照分量與反射分量的乘積,即:

式中,(x,y)表示像素點(diǎn)的位置;I(x,y)表示觀測值;L(x,y)表示該點(diǎn)鄰域的亮度,并且與材質(zhì)無關(guān);R(x,y)表示反射分量,表示材質(zhì)的反射系數(shù),與物體的本身的材質(zhì)相關(guān),而與鄰域的光量無關(guān)。因此為而獲得反映物體真實(shí)面貌的反射分量R(x,y),可通過Retinex的圖像增強(qiáng)算法排除光照分量L(x,y)的影響。同時(shí)根據(jù)人的視覺觀感的特點(diǎn),對(duì)數(shù)形式更接近人眼觀感的舒適區(qū),因此基于Retinex算法的圖像增強(qiáng)算法都是將圖像轉(zhuǎn)到對(duì)數(shù)域進(jìn)行處理,Jobson等人運(yùn)用高斯環(huán)繞函數(shù)對(duì)觀測圖像進(jìn)行卷積估算得到光照分量,由此提出了經(jīng)典的單尺度Retinex(single-scale retinex,SSR)算法,其計(jì)算公式如下所示

式中,F(xiàn)(x,y)表示高斯環(huán)繞函數(shù);*表示卷積運(yùn)算;I i(x,y)為第i個(gè)顏色通道的輸入圖像;Ri(x,y)為第i個(gè)顏色通道的輸出圖像。由于SSR算法在細(xì)節(jié)增強(qiáng)與色彩保真之間難以達(dá)到平衡,Jobson等人提出將多個(gè)不同尺度的SSR處理結(jié)果進(jìn)行簡單加權(quán)得到多尺度Retinex(multi-scale ret?inex,MSR)算法:

式中R M i(x,y)表示第i個(gè)顏色通道經(jīng)過MSR處理而得到的輸出圖像,n表示尺度個(gè)數(shù),W n為第n個(gè)尺度的權(quán)重,滿足,一般情況下,取大、中、小三個(gè)尺度,即N=3,W1=W2=W3=1/3。

由于SSR算法和MSR算法在處理RGB彩色圖像時(shí),都是分別對(duì)R、G、B通道進(jìn)行單獨(dú)地增強(qiáng),導(dǎo)致增強(qiáng)過程可能會(huì)改變各像素點(diǎn)在各顏色通道中的像素值比例,從而淡化圖像的全局或者特定區(qū)域物體的真實(shí)顏色。為此,Jobson等人又提出帶色彩恢復(fù)的多尺度Retinex(MSRCR)算法。MSRCR算法的基本原理是:將原始圖像中的比例關(guān)系引入三個(gè)顏色通道來對(duì)MSR結(jié)果進(jìn)行后處理,從而優(yōu)化圖像的顏色,避免顏色不飽和及失真,使圖像具有更好的顏色呈現(xiàn)[5]。

式中,C i(x,y)表示第i個(gè)顏色通道的色彩恢復(fù)系數(shù),作用是對(duì)3個(gè)顏色通道的比例進(jìn)行調(diào)節(jié)。C i(x,y)中參數(shù)β為增益常量,α控制非線性的程度。

3.2 MSRCR算法在Andr oi d平臺(tái)上的實(shí)現(xiàn)

圖像增強(qiáng)的實(shí)現(xiàn)是在點(diǎn)擊按鈕中創(chuàng)建一個(gè)方法,這個(gè)方法通過JNI接口調(diào)用CMake,CMake執(zhí)行算法處理圖像,并且返回結(jié)果。當(dāng)用戶選取圖像之后,圖像將會(huì)在圖像控件上呈現(xiàn)。點(diǎn)擊增強(qiáng)按鈕之后,會(huì)對(duì)圖像進(jìn)行算法處理呈現(xiàn),并將圖像覆蓋原來的在圖像控件中的圖像。在Android中通過CMake的方式調(diào)用OpenCV庫實(shí)現(xiàn)MSRCR算法來增強(qiáng)圖像,MSRCR算法實(shí)現(xiàn)分為五步,其中流程如圖3所示。

圖3 MSRCR方法的實(shí)現(xiàn)流程

創(chuàng)建一維的高斯核。然后把該高斯核封裝成一個(gè)類浮點(diǎn)類型的整數(shù)類型高速高斯核。實(shí)現(xiàn)對(duì)目標(biāo)圖像的核計(jì)算高斯卷積,接著使用圖像金字塔對(duì)圖像進(jìn)行多尺度表達(dá),從而與分離濾波器連續(xù)對(duì)使用高斯卷積濾波。最后將原圖像和一系列被濾波的圖像轉(zhuǎn)換到對(duì)數(shù)域,并與帶權(quán)重的原圖像做減法運(yùn)算,同時(shí)加入顏色修復(fù)。

圖4顯示了經(jīng)本軟件處理前的夜視圖像以及處理后的結(jié)果圖像,對(duì)圖像進(jìn)行增強(qiáng)處理后,點(diǎn)擊保存圖像將使用數(shù)據(jù)輸入輸出流,將增強(qiáng)處理后的圖像寫入相冊,同時(shí)申請權(quán)限。根據(jù)結(jié)果圖像顯示,本軟件能夠?qū)σ归g低照度圖像進(jìn)行增強(qiáng),能夠高保真地恢復(fù)原圖像中的細(xì)節(jié)和色彩,提高了圖像的清晰度。

圖4 圖像處理

4 結(jié)語

本文開發(fā)了一款低成本的夜間圖像增強(qiáng)軟件,軟件提供了用戶登錄與注冊的功能,通過CMake調(diào)用OpenCV庫的方式實(shí)現(xiàn)MSRCR算法來對(duì)夜視圖像進(jìn)行增強(qiáng)。通過對(duì)該軟件的圖像采集、夜視圖像增強(qiáng)處理等功能進(jìn)行測試,結(jié)果表明軟件功能易用、有效,能夠?qū)σ挂晥D像進(jìn)行較好的增強(qiáng)處理。未來的工作考慮增加多曝光圖像融合的功能來對(duì)夜視圖像進(jìn)行增強(qiáng),進(jìn)一步提升軟件的性能。

猜你喜歡
夜視圖像增強(qiáng)調(diào)用
通過圖像增強(qiáng)與改進(jìn)Faster-RCNN網(wǎng)絡(luò)的重疊魚群尾數(shù)檢測
一種基于輕量級(jí)深度網(wǎng)絡(luò)的無參考光學(xué)遙感圖像增強(qiáng)算法
基于非下采樣剪切波變換與引導(dǎo)濾波結(jié)合的遙感圖像增強(qiáng)
基于Android Broadcast的短信安全監(jiān)聽系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)
基于雙樹四元數(shù)小波變換的圖像降噪增強(qiáng)
夜視能力藥水
利用RFC技術(shù)實(shí)現(xiàn)SAP系統(tǒng)接口通信
C++語言中函數(shù)參數(shù)傳遞方式剖析
OIP公司獲得夜視瞄具定貨合同