郭建軍,劉彥隆,趙福梅
(太原理工大學通信與嵌入式實驗室,山西 太原 030024)
責任編輯:時 雯
近年來,伴隨著電子元器件和數(shù)字圖像處理技術的快速發(fā)展,自動聚焦技術日趨成熟并廣泛地應用于各個領域。自動聚焦系統(tǒng)主要是由圖像信息采集模塊、圖像清晰度分析模塊和焦距調整模塊3大部分組成。相比于人工調焦來說,自動聚焦具有比較高的精度和效率。目前,自動聚焦技術已經廣泛應用于顯微鏡、攝像機、照相機、視頻展示臺、衛(wèi)星偵察等精密光學測量領域[1]。
截止到目前,國內外很多學者已經對自動聚焦的問題做了大量的研究。自動聚焦主要分為兩種方式:基于測距的主動式聚焦(比如利用紅外或超聲波測距);基于數(shù)字圖像處理的被動式聚焦。主動聚焦是通過測出的物與鏡頭之間的距離,然后根據(jù)這個實際距離計算出聚焦透鏡所在位置。被動聚焦是根據(jù)圖像信息的處理結果來確定聚焦方向,然后反復調節(jié)獲取最清晰的圖像[2]。本文是在Hi3515平臺上采用被動方式實現(xiàn)了自動聚焦。
Hi3515處理器系統(tǒng)基于高性能的ARM926處理器搭建,ARM926 CPU處理頻率達到400 MHz,能夠提供靈活和豐富的應用業(yè)務,以及高性能的音視頻業(yè)務。在此高性能的硬件平臺上實現(xiàn)了自動聚焦,從而取代了以往數(shù)字視頻展臺自動聚焦功能的實現(xiàn)方式,即80C51單片機配合DSP處理器或者80C51單片機配合FPGA的實現(xiàn)方式,不僅降低了功耗,更進一步降低了成本,提高了產品的市場競爭力。
此平臺以Hi3515音視頻處理芯片為主,1片內存為1 Gbyte的 DDR SDRAM 和1片256 Mbyte的 Nor Flash。DDR在系統(tǒng)運行時作為內存使用。Nor Flash上用于存放uboot、裁剪過的linux操作系統(tǒng)和根文件系統(tǒng)。推動步進電機是通過Hi3515芯片的SPI接口向μPD16835芯片發(fā)送控制字,然后μPD16835輸出脈沖驅動電機[3]。圖像采集部分使用的CMOS數(shù)字圖像傳感器,硬件平臺如圖1所示。
圖1 平臺的結構示意圖
由數(shù)字圖像處理的相關知識可知,圖像的聚焦程度主要是由光強分布中高頻分量的多少決定的。即高頻分量多則圖像清晰、圖像的細節(jié)越多,反之亦然。所以可以利用圖像高頻分量的多少作為圖像清晰與否的判斷依據(jù)[4]。經常用的有傅里葉變換(FFT)和離散余弦變換(DCT)。其中FFT變換是對復數(shù)進行處理的,其計算程度較為復雜,計算所需的時間長,而且此硬件平臺的CPU的運行速度最高也只有400 MHz,因此FFT的運算會占用很多CPU的時間,再加上驅動電機的時間,這樣會造成聚焦的時間很長。所以最終采用了變換簡單的且較為快速的4×4整數(shù)DCT變換。
二維的DCT正變換如式(1)所示
如果按照上式(1)編寫程序,將包含1個4重循環(huán),這對于嵌入式平臺來說計算量就太大了。為了能找到適合此平臺的DCT算法,本文采用了4×4整數(shù)DCT變換,既達到了評價函數(shù)單峰性、無偏性的要求,又節(jié)約了大量的計算時間,使其能夠應用到實際的嵌入式平臺上。4×4整數(shù)DCT的變換如式(2)所示
式中:Y為4×4整數(shù)DCT變換的結果;X為一個4×4的矩陣,矩陣中的數(shù)值是采集到的1幅圖像中的亮度值,并且這些亮度值均為整數(shù);A是1個4×4的常數(shù)矩陣;AT為A的轉置矩陣。矩陣A為
由于直流分量在一定程度上反映了圖像的整體亮度和總體信息,因而用高頻分量和直流分量的比值作為圖像清晰與否的判別依據(jù),即比值G的最大值所對應的圖像為樣本圖像中最清晰的畫面,此位置就是所要找的聚焦清晰的位置。最終實際應用的基于改進型DCT變換的評價函數(shù)如式(4)所示
簡單傳統(tǒng)的盲人爬山法不僅容易受到局部極值的影響,而且很耗費時間。對于一款嵌入式產品,客戶對其功能實現(xiàn)的時間和精度是有一定要求的。相比而言,單調性法可以比較好地節(jié)約自動聚焦的時間,但其對評價函數(shù)的單調性要求較高。為了能進一步縮短聚焦時間并且精確地聚焦,本文采用了單調性法和盲人爬山法相結合的聚焦策略。因為評價函數(shù)具有比較好的單調性,所以可以先通過評價函數(shù)的單調性來粗略地找到評價函數(shù)峰值的大概位置,即圖像比較清晰的點。然后以此位置為原點,驅動電機在此原點附近左右各轉動4步,每轉動一步計算一下評價函數(shù)的值,其值最大的點即為圖像聚焦好的位置。最后驅動電機將聚焦鏡頭推到此位置,這樣就完成了自動聚焦。
在實際測試中,如果對整幅1280×1024的圖像做4×4整數(shù)DCT變換,那么它依然會占用比較多的時間,不能很好地滿足用戶對聚焦時間的要求。雖然能滿足評價函數(shù)的單調性、無偏性,但在此硬件平臺上仍然要繼續(xù)減少評價函數(shù)占用的時間。因此,在綜合考慮后只對整幅圖像的部分區(qū)域做整數(shù)DCT變換[5],變換區(qū)域的選取有如下3種方式。
1)如圖2所示在1280×1024的一幅圖像中截取了5個100×100的像素塊,對其進行了4×4整數(shù)DCT的變換。
圖2 截取5個100×100的像素塊
2)如圖3所示在圖像的正中心截取了一個300×200的像素塊進行4×4整數(shù)DCT的變換。
3)如圖4所示在圖像的正中心截取了一個300×200的像素塊,但只對其中的6個200×20的像素(即灰色區(qū)域的6個白條區(qū)域)進行4×4整數(shù)DCT變換。
經過反復的測試證明以上3種選擇變換區(qū)域的方法都能保證評價函數(shù)的單調性、無偏性,所以為了能更多的節(jié)約評價函數(shù)所耗費的時間,在實際應用中選擇了圖4中所示的變換區(qū)域。聚焦前后效果的對比如圖5、圖6所示,圖5是聚焦前的效果,圖6是自動聚焦后的清晰畫面。
本文所研究的基于Hi3515平臺的自動聚焦已成功應用于視頻展示臺,通過多方面的實驗和測試,其聚焦的速度和精度能夠滿足實際應用需求。盡管如此,在實際開發(fā)過程中發(fā)現(xiàn)周圍燈光的強弱程度會影響自動聚焦的效果。燈光太強或太弱都會影響聚焦的精度。所以基于此平臺的自動聚焦的實現(xiàn)還有待進一步提高,這樣才能滿足客戶更高的要求。
[1]張文愛,李逢磊,程永強.基于FPGA的步進電機驅動及自動聚焦的實現(xiàn)[J]. 電子技術應用,2008(5):31-31.
[2]謝攀,張利,康宗明,等.一種基于尺度變化的DCT自動聚焦算法[J]. 清華大學學報,2003(1):55-55.
[3]楊守建,鄔楊波.基于LPC2103的攝像頭自動聚焦系統(tǒng)[J].電腦與信息技術,2011(4):16-17.
[4]楊濤,左勇,陳曉梅.基于圖像處理的自動聚焦技術及應用[J].計算機仿真,2009(7):256-258.
[5]孫明磊,宗光華,余志偉,等.基于圖像分析的顯微視覺自動聚焦系統(tǒng)[J].北京航空航天大學學報,2005(20):195-196.