摘要:由于人們對立體圖像的視覺需求越來越強(qiáng)烈,,提出了一種基于迭芬奇技術(shù)的三維全息顯示系統(tǒng)的研究方案,,利用迭芬奇處理器TMS32 0DM6446及其他外圍電路和光電設(shè)備構(gòu)建一個(gè)嵌入式系統(tǒng)。該系統(tǒng)以嵌入式操作系統(tǒng)即Linux為軟件平臺,,充分利用TMS320DM6446豐富的外設(shè)和存儲接口并充分發(fā)揮ARM926EJ-S強(qiáng)大的控制功能和C64x+DSP強(qiáng)大的數(shù)值計(jì)算能力,。井將最后的三維立體顯示圖形顯示到液晶顯示器上,實(shí)現(xiàn)數(shù)字全息三維顯示,。結(jié)果顯示一個(gè)原始的圖像數(shù)據(jù)經(jīng)過該系統(tǒng)處理之后,,從各個(gè)角度很完美的展現(xiàn)了原來的實(shí)物,該研究為圖像的三維全息顯示提供了一個(gè)很好的嵌入式實(shí)驗(yàn)平臺,,具有很好的應(yīng)用前景及創(chuàng)新價(jià)值,。
關(guān)鍵詞:達(dá)芬奇技術(shù);三維全息,;DSP,;TMS320DM6446
0 引言
在視頻創(chuàng)新已經(jīng)成為數(shù)字信息產(chǎn)業(yè)熱點(diǎn)的今天,人們對立體圖像的視覺需求越來越強(qiáng)烈,,二維圖像的顯示效果缺乏真實(shí)感,、深度感、立體感,,早已不能滿足人們的感官刺激和心理感受,。于是,各種三維立體顯示的實(shí)現(xiàn)方案不斷涌現(xiàn),,全息顯示技術(shù)是最常見的三維顯示技術(shù)之一,。計(jì)算全息是利用計(jì)算機(jī)來綜合全息圖,用計(jì)算機(jī)的數(shù)值計(jì)算代替物理干涉,,它不要求物體的實(shí)際存在,,只需要知道物光波的數(shù)學(xué)描述即可,,把物光波的數(shù)學(xué)描述輸入到計(jì)算機(jī)處理后,用成圖設(shè)備繪制出全息圖,,然后用光學(xué)的方法重現(xiàn),。計(jì)算全息圖不僅可以全面地記錄光波的振幅和相位,而且能綜合再現(xiàn)世間不存在的物體的全息圖,,因而具有獨(dú)特的優(yōu)點(diǎn)和極大的靈活性,,并且觀察者可以不必借助眼鏡等輔助裝置從各個(gè)方向進(jìn)行觀察。
本文結(jié)合計(jì)算全息三維立體顯示技術(shù)和達(dá)芬奇技術(shù)的優(yōu)點(diǎn),,給出了一種新的三維立體顯示方案:利用達(dá)芬奇處理器TMS320DM6446及其他外圍電路構(gòu)建一嵌入式系統(tǒng),,并實(shí)現(xiàn)計(jì)算全息三維顯示。該系統(tǒng)以嵌入式操作系統(tǒng)——Linux為軟件平臺,,利用Monta Vista Linux提供的豐富的設(shè)備驅(qū)動(dòng)和系統(tǒng)調(diào)用,,充分利用TMS320DM6446豐富的外設(shè)和存儲接口并充分發(fā)揮ARM926EJ-S的強(qiáng)大的控制功能和C64x+DSP強(qiáng)大的數(shù)值計(jì)算能力。并將最后的三維的立體顯示圖形顯示到分辨率為1 024×768的LCOS液晶顯示器上,,為圖像的三維全息顯示研究提供了一個(gè)很好的嵌入式平臺,。
1 基于達(dá)芬奇技術(shù)的三維全息顯示系統(tǒng)
該系統(tǒng)用達(dá)芬奇處理器TMS320DM6446代替通用計(jì)算機(jī)實(shí)現(xiàn)二維全息圖的計(jì)算編碼,其中ARM子系統(tǒng)對整個(gè)系統(tǒng)進(jìn)行控制,,DSP子系統(tǒng)完成二維計(jì)算全息編碼以及三維物體全息圖的計(jì)算,。整個(gè)系統(tǒng)是以達(dá)芬奇處理器TMS320DM6446及其外圍電路、LCOS和其他光電設(shè)備組合而成的嵌入式系統(tǒng),。
1.1 基于TMS320DM6446的計(jì)算全息三維顯示系統(tǒng)
該系統(tǒng)軟件和硬件均采用模塊化設(shè)計(jì),。軟件上,ARM和DSP子系統(tǒng)分別支持Linux和DSP/BIOS操作系統(tǒng),,可以相對獨(dú)立的工作,,這樣的劃分符合系統(tǒng)軟件模塊化的設(shè)計(jì)要求,便于各部分的并行開發(fā)和調(diào)試,,利于項(xiàng)目組各成員的分工協(xié)作,,后期軟件測試符合由單元測試到集成測試再到系統(tǒng)測試的測試原則,縮短系統(tǒng)的開發(fā)周期,,降低設(shè)計(jì)成本??傮w結(jié)構(gòu)框圖如圖1所示,。
將原始的圖像數(shù)據(jù)通過USB接口輸送到達(dá)芬奇處理器TMS320DM6446中,然后對數(shù)據(jù)進(jìn)行FFT變換,,對變換之后的數(shù)據(jù)實(shí)現(xiàn)計(jì)算全息算法,,進(jìn)行逆變換之后的圖像數(shù)據(jù)送到LCOS顯示器上,最終實(shí)現(xiàn)圖像的三維顯示,。其中,,F(xiàn)FT變換,、計(jì)算全息以及FFT的逆變換是在DSP的子系統(tǒng)內(nèi)進(jìn)行的,而ARM子系統(tǒng)通過控制總線控制DSP數(shù)據(jù)處理子系統(tǒng),。上位機(jī)可以通過JTAG接口實(shí)現(xiàn)對系統(tǒng)的控制和二次開發(fā),。此處鍵盤設(shè)置為4×4的獨(dú)立鍵盤,目的就是為了對系統(tǒng)進(jìn)行設(shè)定,,實(shí)現(xiàn)數(shù)據(jù)的輸入和命令的傳送,。
1.2 液晶顯示器LCOS的特點(diǎn)
LCOS(Liquid Crystal on Silicon)是一種新型的反射式液晶顯示器件,與傳統(tǒng)的顯示技術(shù)相比具有光利用率高,、體積小,、開口率高、尺寸小等優(yōu)點(diǎn),。LCOS顯示文字或圖像信息的原理與普通液晶顯示的原理大致相同,,利用液晶分子具有很強(qiáng)的誘導(dǎo)偶極矩的特性,通過外加電場作用使液晶分子的排列與外加電場相關(guān),。
顯示系統(tǒng)選用像素為1024×768的HX7308BTJFA的液晶顯示器,。HX7308BTJFA嵌入了定時(shí)控制器用來產(chǎn)生內(nèi)部控制信號,并且該芯片顯示圖像質(zhì)量和對比度很高的圖像,。HX7308BTJFA在每個(gè)時(shí)鐘的上升沿和下降沿從外部接收8 b×4點(diǎn)的數(shù)字顯示數(shù)據(jù)并且產(chǎn)生相應(yīng)的灰度的輸出電壓值,。其內(nèi)部系統(tǒng)框圖如圖2所示。
2 ARM與DSP的開發(fā)
該系統(tǒng)的處理器是TMS320DM6446,,它是一個(gè)DSP+ARM的雙核架構(gòu)的芯片,,對于ARM和DSP要選擇不同的開發(fā)工具。該系統(tǒng)是ARM中運(yùn)行操作系統(tǒng)Linux,,而對于DSP需要CCS仿真器來進(jìn)行開發(fā)調(diào)試,。
2.1 嵌入式linux系統(tǒng)開發(fā)
嵌入式軟件開發(fā)需要交叉編譯環(huán)境,因?yàn)樾枰谥鳈C(jī)平臺上生成目標(biāo)平臺上的可執(zhí)行代碼,。首先在主機(jī)Linux上安裝搭建交叉編譯環(huán)境,,然后通過交換機(jī)使用共享文件系統(tǒng)方式將嵌入式bootloder和Linux內(nèi)核鏡像下載到目標(biāo)板上,并啟動(dòng)嵌入式Linux內(nèi)核,。然后就可以在主機(jī)Linux的交叉編譯環(huán)境下開發(fā)應(yīng)用程序,,并將生成的可執(zhí)行代碼下載到目標(biāo)板上。
這樣,,通過Linux提供的豐富的應(yīng)用接口函數(shù)APIs,,用戶可以將DSP視作黑盒子,只需調(diào)用這些API就可以使用DSP端的編解碼功能,,而DV-SDK開發(fā)套件可以為DSP端的直接編程提供支持,。
2.2 CCS上FFT運(yùn)算的實(shí)現(xiàn)
FFT是傅里葉變換的快速算法,可以將一個(gè)信號變換到頻域,。有些信號在時(shí)域上很難看出其特性,,但是如果變換到頻域以后,,就很容易看出是什么特性的。所以很多信號分析選擇采用FFT變換,。另外FFT可將一個(gè)信號的頻譜提取出來,,這在頻域分析方面也是經(jīng)常用到的。
2.3 DSPLIB庫函數(shù)功能
TMS320C64X+系列的函數(shù)庫(DSPLIB)是對C語言編程可調(diào)用優(yōu)化的DSP庫函數(shù),,它全部由匯編語言編寫,,并可由C語言調(diào)用,方便C語言與匯編語言混合編程,。這些程序用在計(jì)算強(qiáng)度大,、執(zhí)行速度重要的實(shí)時(shí)運(yùn)算中。通過使用這些程序,,可以取得較用C語言編寫的相關(guān)程序快的多的運(yùn)行速度,,另外通過使用現(xiàn)成的程序可以使開發(fā)速度大大加快。DSPLIB可進(jìn)行的運(yùn)算有:FFT運(yùn)算,、濾波與卷積運(yùn)算,、自適應(yīng)濾波運(yùn)算、相關(guān)運(yùn)算,、三角函數(shù)運(yùn)算等,。
2.4 FFT運(yùn)算
DSPLIB提供的FFT運(yùn)算為基2的時(shí)間抽取算法。運(yùn)算可以直接調(diào)用void cfft(DATA x,,nx,,shortscale)。其中:x[2*nx]為輸入/輸出數(shù)據(jù)存儲數(shù)組,;nx為FFT的運(yùn)算長度,;scale為歸一化設(shè)置變量;scale=1是進(jìn)行歸一化設(shè)置變量,,scale=0是不進(jìn)行歸一化運(yùn)算,。歸一化功能使得輸出結(jié)果被運(yùn)算長度n所除,目的是為了防止FFT運(yùn)算結(jié)果可能導(dǎo)致溢出,。以一個(gè)簡單的程序說明DSPLIB的使用,。在該程序中輸入數(shù)據(jù)放在x[512]數(shù)組中,運(yùn)算后結(jié)果仍在x[512]數(shù)組中,。
這樣就完成了DSP內(nèi)一個(gè)運(yùn)算長度為256點(diǎn)的FFT變換,。
3 結(jié)果分析
對頻率為50 Hz的方波信號進(jìn)行了頻譜分析,采樣點(diǎn)數(shù)為128,,并調(diào)整采樣頻率,使得128點(diǎn)的采樣時(shí)間為40 ms,,即輸入2個(gè)信號的周期,。在通過DSP的集成開發(fā)環(huán)境(CCS)觀看結(jié)果,,如圖3、圖4所示,。
4 結(jié)語
本文結(jié)合數(shù)字全息三維立體顯示技術(shù)和達(dá)芬奇技術(shù)的優(yōu)點(diǎn),,給出了一種全新的三維立體顯示方案。結(jié)果顯示,,一個(gè)原始的圖像數(shù)據(jù)經(jīng)過該系統(tǒng)之后,,從各個(gè)角度很完美地展現(xiàn)了原來的實(shí)物。因此該嵌入式系統(tǒng)平臺具有很大的使用價(jià)值,。