蔣 濤,左 昉,王靈國
(北京科技大學(xué)自動(dòng)化學(xué)院,北京100083)
數(shù)字成像技術(shù)在生活中已廣泛應(yīng)用,為了在無人操作的情況下獲得清晰的圖像,自動(dòng)聚焦成為了成像系統(tǒng)中的關(guān)鍵組成部分之一。自動(dòng)聚焦分主動(dòng)聚焦和被動(dòng)聚焦[1-2],主動(dòng)聚焦是采用測距法,測量被測物體與成像面之間的距離,再利用成像原理計(jì)算得到準(zhǔn)焦位置,主動(dòng)聚焦因其結(jié)構(gòu)復(fù)雜、成本高而沒能被廣泛應(yīng)用;被動(dòng)聚焦就是對(duì)采集到的圖像數(shù)據(jù)進(jìn)行分析,憑借圖像清晰度評(píng)價(jià)算法和搜索方法控制聚焦電機(jī)移動(dòng)到圖像清晰的位置,被動(dòng)聚焦精度高,且不需修改原成像系統(tǒng),因而被人們普遍采用。
確定聚焦評(píng)價(jià)函數(shù)和極點(diǎn)搜索算法是被動(dòng)聚焦的關(guān)鍵點(diǎn)。人們研究了多種聚焦評(píng)價(jià)函數(shù)[1-4],分析了各自的優(yōu)劣長短,提出了某些算法的改進(jìn),用于自動(dòng)聚焦都取得了不錯(cuò)的效果,但同時(shí)又都存在著局限性。傳統(tǒng)的爬山法很容易陷入局部極值,后人提出了多種改進(jìn)的爬山法。ZHENG[5]等人提出,根據(jù)當(dāng)前變焦電機(jī)的位置和聚焦曲線大步長快速到達(dá)近焦區(qū)域,然后小步長漸進(jìn)式搜索準(zhǔn)焦位置。這種算法僅適用于顯微鏡之類物距不變或是變化不大的情況下,一旦物距變化很大,則算法不再適用。ZHENG[6]提出的算法是,首先讓聚焦電機(jī)由當(dāng)前位置移動(dòng)到最一端,然后大步長掃描全程,過程中記錄圖像清晰度最大時(shí)聚焦電機(jī)的位置,然后在該位置附近小步長搜索,直到搜索到清晰位置。該算法聚焦精度高,但因?yàn)橐獟呙枞虖亩黾恿司劢箷r(shí)間,不適用于長焦鏡頭。ZHOU[4]等人提出的隨機(jī)起點(diǎn)爬山算法分為3個(gè)階段:測試爬山方向、搜索極點(diǎn)區(qū)域、區(qū)域內(nèi)收斂到極點(diǎn)。后兩個(gè)階段和其它算法相似,第1個(gè)階段由比較電機(jī)移動(dòng)前后的聚焦函數(shù)值來確定當(dāng)前的移動(dòng)方向是否正確,這個(gè)方法有局限性,只有在清晰位置附近的范圍內(nèi)才適用,超出這個(gè)范圍,即在嚴(yán)重離焦時(shí),評(píng)價(jià)函數(shù)曲線會(huì)迅速趨于平穩(wěn),甚至出現(xiàn)偽波峰[6],如此則無法判定爬山方向。針對(duì)于此,本文中提出了一種新的爬山搜索策略,在嚴(yán)重離焦的狀態(tài)下依然可以正確判斷移動(dòng)方向,從而減少聚焦時(shí)間。
Fig.1 The corresponding figure of image processing data and motor position
圖1 是作者在實(shí)際測試中得到的聚焦評(píng)價(jià)函數(shù)值和聚焦電機(jī)位置的對(duì)應(yīng)關(guān)系圖。清晰度評(píng)價(jià)函數(shù)采用的是Laplace梯度函數(shù)。聚焦電機(jī)的可移動(dòng)范圍是[0,aend],曲線a是物距較小時(shí)的關(guān)系曲線;曲線b是物距較大時(shí)的關(guān)系曲線;曲線c是物距較小時(shí)的圖像模糊度和電機(jī)位置的關(guān)系曲線。在圖中可以看出,只有在[a1,b1]區(qū)間和[a2,b2]區(qū)間上,曲線才具有單調(diào)性。為了保證聚焦的準(zhǔn)確度,改進(jìn)的清晰度算法只會(huì)縮小這兩個(gè)區(qū)間。而在這兩個(gè)區(qū)間內(nèi),SUN[2]等人闡述的幾種適于自動(dòng)聚焦的清晰度評(píng)價(jià)函數(shù)結(jié)合爬山搜索方法,基本都能實(shí)現(xiàn)準(zhǔn)確對(duì)焦,所用時(shí)間基本相當(dāng)。這樣一來,自動(dòng)聚焦所用的時(shí)間長短,主要就取決于聚焦電機(jī)移動(dòng)方向的正確判斷上。
如圖1所示,聚焦電機(jī)在a1左邊或是在b2右邊時(shí),可以直接確定聚焦電機(jī)的移動(dòng)方向,當(dāng)聚焦電機(jī)的起始位置在[b1,a2]區(qū)間時(shí),因?yàn)椴荒艽_定當(dāng)前的照射物體是近距離的還是遠(yuǎn)距離的,因而不能確定電機(jī)的移動(dòng)方向。傳統(tǒng)的爬山法,一般都是先移動(dòng)到a1點(diǎn)左邊的一小段距離,然后再往右移動(dòng)搜索,這樣一來,萬一當(dāng)前是近距離的物體,則聚焦電機(jī)事先的移動(dòng)方向就反了,浪費(fèi)了時(shí)間。針對(duì)這個(gè)問題,本文中提出了基于圖像模糊度的方法來判斷準(zhǔn)焦點(diǎn)相對(duì)于當(dāng)前位置的方向,從而縮短傳統(tǒng)爬山法因盲目搜索而造成的時(shí)間浪費(fèi)。
圖像的模糊度和圖像清晰度一樣,也是表征圖像信息的一個(gè)重要因素。圖2中是對(duì)1幅圖像在準(zhǔn)焦和離焦?fàn)顟B(tài)下的直方圖統(tǒng)計(jì)[7-9]。橫坐標(biāo)為灰度級(jí),取值為0~255;縱坐標(biāo)為該灰度級(jí)在整幅圖中所出現(xiàn)的次數(shù)。從圖中可以看出,圖像越模糊,直方圖有像素?cái)?shù)目的范圍越窄,向著圖像均值的集中度也就越大,因此,作者設(shè)計(jì)了表征圖像均值集中度的算法,具體算法如下:
式中,F(xiàn)z為圖像的模糊度;xavg為圖像的灰度均值;xk為以均值為中心的一個(gè)范圍半徑,是一個(gè)待定值;p(xi)為灰度值xi在圖像中出現(xiàn)的次數(shù);wn(xi)為p(xi)對(duì)應(yīng)的權(quán)值,n值待定。w(xi)的計(jì)算公式為:
Fig.2 The corresponding histogram and the image in different degrees of defocus
當(dāng)物距較小時(shí),取xk=20,n=2,圖像模糊度和聚焦電機(jī)位置的對(duì)應(yīng)曲線為圖1中的c曲線,由該曲線可知,在聚焦電機(jī)的全程范圍內(nèi),曲線都具有局部單調(diào)性。
用于自動(dòng)聚焦的清晰度評(píng)價(jià)函數(shù)都具有以下特征:單峰性、無偏性、靈敏度高、信噪比高、計(jì)算量小。本文中選取Laplace梯度函數(shù),它的單峰性強(qiáng)、靈敏度高、計(jì)算量相對(duì)不大,可以滿足實(shí)時(shí)性和準(zhǔn)確性,適合作為自動(dòng)聚焦的評(píng)價(jià)函數(shù)[1-2]。設(shè)圖像中坐標(biāo)為(x,y)處像素點(diǎn)的灰度值為g(x,y),則一幅像素總數(shù)為M×N的圖像的Laplace梯度函數(shù)如下:
由于拍攝的景物是實(shí)時(shí)、動(dòng)態(tài)的,所以即便聚焦系統(tǒng)在一個(gè)位置上不動(dòng),所計(jì)算得到的FL值依然會(huì)有很大的波動(dòng),為了消除這個(gè)干擾,引入一個(gè)閾值量G,使得FL′=FL/G,濾除掉FL值中波動(dòng)的部分,以FL′作為最終的清晰度評(píng)價(jià)值,G在實(shí)際測試中得到。
先介紹一下傳統(tǒng)的爬山搜索策略[6]。首先取一個(gè)初始位置a0,然后移動(dòng)聚焦鏡頭到位置a1,比較這兩個(gè)位置的圖像清晰度評(píng)價(jià)值,如果f(a1)>f(a0),則說明鏡頭的移動(dòng)方向是正確的,否則反方向移動(dòng)聚焦鏡頭,直至f(an)>f(an-1)時(shí)再次反向移動(dòng)聚焦鏡頭,直到f(an)和f(an-1)的差值小于某一個(gè)特定小的值則停止聚焦鏡頭。傳統(tǒng)爬山法要求聚焦評(píng)價(jià)函數(shù)具有嚴(yán)格的單峰性,但因?yàn)閷?shí)時(shí)聚焦過程中采取的畫面是動(dòng)態(tài)、實(shí)時(shí)的,往往很難滿足這個(gè)要求,因此需要對(duì)此法做一定的改進(jìn)。
設(shè)定第i步的圖像模糊度值為Fz[xi],圖像清晰度值為 FL′[xi],步長值為 sv,某一特定小的值為 ε,優(yōu)化的爬山搜索流程圖如圖3所示。
Fig.3 Flow chart of improved search algorithm
首先,記錄聚焦電機(jī)當(dāng)前位置的圖像模糊度Fz[x0],然后驅(qū)動(dòng)聚焦電機(jī)以大步長向著一個(gè)方向移動(dòng),記錄每一步的圖像模糊度 Fz[xi],如果 Fz[xi]<Fz[xi-1]< Fz[xi-2],說明移動(dòng)方向正確,反之,則說明移動(dòng)方向反了,驅(qū)動(dòng)電機(jī)向反轉(zhuǎn)。然后每移動(dòng)一步,都記錄當(dāng)前的清晰度值 FL′[xi];當(dāng) FL′[xi]< FL′[xi-1]<FL′[xi-2]時(shí),說明鏡頭已經(jīng)越過了準(zhǔn)焦點(diǎn),開始離焦;驅(qū)動(dòng)電機(jī)以小步長反向移動(dòng),依然記錄每一步的清晰度值;重復(fù)前兩步,直到步長值小于規(guī)定的值,則讓電機(jī)停止,聚焦成功。
實(shí)驗(yàn)硬件主要包括CCD攝像機(jī)、視頻采集器、數(shù)字信號(hào)處理器(digital signal processor,DSP)、高速存儲(chǔ)器(synchronousdynamic random accessmemory,SDRAM)、控制器、變焦鏡頭(zoom lens)[10-12]。CCD攝像機(jī)完成光電信號(hào)的轉(zhuǎn)換并輸出模擬的視頻信號(hào)(composite video broadcast signal,CVBS)。視頻采集器選擇TVP5150,它可以將輸入的視頻流轉(zhuǎn)化為8位的ITU-R BT.656格式的視頻數(shù)據(jù),供DSP采集使用,且功耗低、封裝小。DSP選用TMS320DM642,該處理器集成了3個(gè)功能豐富的視頻口,通過配置和這些視頻口相關(guān)的寄存器,可以通過視頻口采集BT.656視頻流,由增強(qiáng)型直接內(nèi)存存取(enhance direct memory access,EDMA)通道把這些數(shù)據(jù)搬入片外存儲(chǔ)器,在程序中可以調(diào)用圖像數(shù)據(jù)進(jìn)行處理。控制器選擇STM32F103RBT6,該控制器的工作頻率為72MHz,片上集成了高速存儲(chǔ)器、多種通信接口、兩個(gè)12位的模數(shù)轉(zhuǎn)換器(analog to digital conversion,ADC),1個(gè)16位計(jì)時(shí)器等豐富的資源,控制器通過ADC采集變焦鏡頭的預(yù)置聚焦和預(yù)置變倍信號(hào),從而確定電機(jī)的當(dāng)前位置,通過串行外圍設(shè)備接口(serial peripheral interface,SPI)線和DSP通信,返回圖像的評(píng)價(jià)函數(shù)值,根據(jù)這個(gè)值,通過定時(shí)器輸出占空比可調(diào)的脈沖寬度調(diào)制(pulse width modulation,PWM)波,拖動(dòng)電機(jī)到準(zhǔn)焦位置。系統(tǒng)的原理框圖如圖4所示。
Fig.4 Overall structure of system hardware
本文中選取LTC0630/11C型號(hào)的BOSCH攝像機(jī),350mm焦距的Space變焦鏡頭,物距大約2km,聚焦窗口選擇圖像中心的1/4區(qū)域。圖5是實(shí)際測試中,聚焦之前和聚焦之后的圖像,聚焦用時(shí)5s。
Fig.5 Image before and after auto-focusing
針對(duì)自動(dòng)聚焦系統(tǒng),在嚴(yán)重離焦的位置無法正確判定電機(jī)起始移動(dòng)方向而造成聚焦時(shí)間長的問題,提出了基于圖像模糊度的方法,在嚴(yán)重離焦?fàn)顟B(tài)下,利用圖像模糊度函數(shù)來判斷移動(dòng)方向。實(shí)驗(yàn)結(jié)果證明,這種方法是可行的,一般在開始時(shí),聚焦電機(jī)至多移動(dòng)5步即可判斷當(dāng)前的移動(dòng)方向是否準(zhǔn)確,在不影響聚焦準(zhǔn)確度的情況下,可以大幅度地減少聚焦時(shí)間。
[1] CHEN G J,ZHU M F,ZHANG K S.Image definition evaluation function in auto-focusing process[J].Journal of Data Acquisition &Processing,2009,24(2):165-169(in Chinese).
[2] SUN J,YUAN Y H,WANG Ch Y.Comparison and analysis of algorithms for digital image processing in autofocusing criterion[J].Acta Optica Sinica,2007,27(1):35-39(in Chinese).
[3] LI M M,WANG X S,LI J.Comparative study on the auto-focus definition function based on the image processing[J].Infrared and Laser Engineering,2010,39(s1):244-248(in Chinese).
[4] ZHOU X,JIANG W.Auto-focus algorithm based on image edge energy[J].Acta Optica Sinica,2006,32(2):213-215(in Chinese).
[5] ZHENG J,ZHANG Q G,WANG P.An improved autofocus searching algorithm and its implementation[J].Computer Development &Applications,2010,23(1):26-27(in Chinese).
[6] ZHENG Y Zh.Optimized mountain-climb searching in auto-focusing[J].Journal of Zhejiang University of Science and Technology,2005,17(3):171-174(in Chinese).
[7] PANG Sh L.Research on image blur assessment[D].Xi’an:Xidian University,2010:62-120(in Chinese).
[8] HUANG Q M.Research for digital image processing method based on ambiguity[D].Wuhan:Wuhan Polytechnic University,2007:64-139(in Chinese).
[9] WANG Z L,CHANG J,JIANG X Y,et al.Optimized method for space requirements based on histogram equalization[J].Laser Technology,2012,36(3):307-311(in Chinese).
[10] YOUNG K K,JUNE S L,YOU Y J,et al.An advanced camera system having fast auto-focus control[C]//International Conference on Consumer Electronics.New York,USA:IEEE,2001:210-211.
[11] SU P,NIU Y X,LI D Q,et al.Image acquisition and processing of a laser warning system based on planar array CCD[J].Laser Technology,2013,37(3):394-399(in Chinese).
[12] YU Ch H,JIANG X B,ZHANG Ch.Design of a camera auto-focusing system based on DSP technology[J].Journal of Shenyang Aerospace University,2012,29(4):68-71(in Chinese).