基于S3C44B0X的雙目立體數(shù)碼照相機(jī)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要:綜合三值光計(jì)算機(jī)編碼器和解碼器的工作原理,提出了在雙層液晶顯示器上實(shí)現(xiàn)立體顯示的新構(gòu)思。在此基礎(chǔ)上,設(shè)計(jì)了基于S3C44B0X的雙目立體數(shù)碼照相機(jī)方案,詳細(xì)介紹了這個(gè)方案的硬件接口和軟件結(jié)構(gòu),其原理樣機(jī)獲上海市嵌入式系統(tǒng)創(chuàng)新設(shè)計(jì)應(yīng)用競(jìng)賽優(yōu)秀獎(jiǎng)。
關(guān)鍵詞:立體數(shù)碼照相機(jī);S3C44B0X微處理器;雙層液晶顯示器
1 引言
隨著光學(xué)、微電子學(xué)以及計(jì)算機(jī)技術(shù)的發(fā)展,根據(jù)人眼“雙目視差立體成像”原理,形成了多種三維立體成像與立體顯示技術(shù),目前人們開始利用這些技術(shù)研制立體電視機(jī)、立體照相機(jī)和立體攝像機(jī)等裝置。 [2]
近期我們嘗試了一種新構(gòu)思的立體攝像和立體顯示系統(tǒng),其基本原理為:攝像時(shí)用雙鏡頭同時(shí)攝像來模仿人眼雙目視差立體成像過程,然后分別存儲(chǔ)獲得的兩幅圖像數(shù)據(jù)。顯示時(shí)把兩幅圖像數(shù)據(jù)分時(shí)送給一個(gè)雙層液晶構(gòu)成的顯示器,該顯示器分別用垂直偏振光和水平偏振光分時(shí)顯示所攝得的左眼像和右眼像,人眼通過特制的偏振眼鏡觀看這對(duì)具有一定視差的左右眼像,經(jīng)大腦視神經(jīng)的處理和融合,感受到物體的立體視覺效果。
系統(tǒng)中的雙層液晶顯示器是我們的主要?jiǎng)?chuàng)新點(diǎn),它利用了液晶的旋光性和偏振器對(duì)正交線偏振光的選擇吸收性。本文總結(jié)這一工作如下。
2 硬件設(shè)計(jì)
雙目立體數(shù)碼照相機(jī)由兩個(gè)攝像頭(由圖像傳感器OV7620和鏡頭組成)、一個(gè)ARM微處理器(型號(hào)為S3C44B0X)、SDRAM、液晶顯示屏(型號(hào)為G35II)、液晶旋光器以及偏振眼鏡組成,其結(jié)構(gòu)如圖1所示。圖中帶箭頭粗線表示電信號(hào)(控制和數(shù)據(jù)信號(hào)),帶箭頭細(xì)線表示光信號(hào)。
S3C44B0X微處理器內(nèi)置有存儲(chǔ)控制器和LCD控制器,具有71個(gè)通用I/O端口、8個(gè)外部中斷源和串行I2C總線接口,在系統(tǒng)中用作控制核心。兩個(gè)攝像頭用于立體圖像對(duì)(左眼像和右眼像)采集。液晶顯示屏和液晶旋光器構(gòu)成的雙層液晶顯示器用于圖像對(duì)的立體顯示。SDRAM作為圖像數(shù)據(jù)的存儲(chǔ)體,圖像采集時(shí)存儲(chǔ)兩個(gè)圖像傳感器輸出的圖像數(shù)據(jù),顯示時(shí)從中分時(shí)取出圖像數(shù)據(jù)提供給雙層液晶顯示器。偏振眼鏡的左鏡片為垂直偏振片,右鏡片為水平偏振片。
2.1雙層液晶顯示器的制作和立體顯示原理
雙層液晶顯示器由一片G35II型液晶顯示屏和其上覆蓋的一片液晶旋光器構(gòu)成,G35II的出射光為水平線偏振光。旋光器是將深圳耀宇公司的M12864COG型圖形點(diǎn)陣液晶模塊剝?nèi)蓚€(gè)偏振片和背光板后自制而成,它用于對(duì)從液晶顯示屏射出的圖像光進(jìn)行偏振調(diào)制。當(dāng)G35II顯示左眼像時(shí),對(duì)旋光器的每個(gè)像素不加電壓,它將入射的線偏振光的偏振方向旋轉(zhuǎn)90度,成為垂直偏振光;當(dāng)G35II顯示右眼像時(shí),對(duì)旋光器的每個(gè)像素加電壓,它不改變?nèi)肷涔獾钠穹较颍@樣左眼像和右眼像分別以相互垂直的兩種偏振光從雙層液晶顯示器中分時(shí)射出,人的左右眼通過偏振眼鏡分別觀察到左眼像和右眼像。
2.2 微處理器與雙層液晶顯示器的接口
雙層液晶顯示器由G35II型液晶顯示屏和一片液晶旋光器構(gòu)成,所以微處理器與它的接口也有兩部分,如圖2所示。
2.2.1 微處理器與液晶顯示屏的接口
G35II型液晶顯示屏是STN型液晶圖形顯示模塊,16級(jí)灰度,帶EL背光,其外部接口信號(hào)定義如下:
VFRAME:幀同步信號(hào);VLINE:水平同步信號(hào);VCLK:像素時(shí)鐘信號(hào);VM:驅(qū)動(dòng)器交流信號(hào);VD[0..7]:數(shù)據(jù)信號(hào);DISP:顯示控制信號(hào)。
微處理器與液晶顯示屏的接口,如圖2所示:用S3C44B0X的PC、PD和PG口作為G35II的驅(qū)動(dòng)接口,初始化時(shí)設(shè)置PC口的GPC4~GPC7為VD[4..7]功能、PD口的GPD0~GPD7為VD[0..3]功能和GPG4為輸出功能。
2.2.2 微處理器與旋光器的接口
旋光器本質(zhì)上是一片M12864COG型液晶模塊,它內(nèi)置有LCD控制器NT7502芯片和顯示數(shù)據(jù)存儲(chǔ)器(DDRAM),其外部接口信號(hào)定義如下:
D[0..7]:數(shù)據(jù)總線;RES1B:復(fù)位信號(hào),低電平有效;E:讀寫使能信號(hào),電平為高時(shí)有效;A0:數(shù)據(jù)/指令控制信號(hào),高電平為數(shù)據(jù),低電平為指令;R/W :讀寫控制信號(hào),低電平為寫操作,高電平為讀操作;VCC/GND:電源,3V。
微處理器與旋光器的接口,如圖2所示:用S3C44B0X的PE和PG口作為旋光器的驅(qū)動(dòng)接口,初始化時(shí),設(shè)置PE口的GPE0~GPE7和PG口的GPG0~GPG3為輸出功能。
2.3 微處理器與攝像頭的接口
攝像頭由圖像傳感器OV7620和鏡頭組成,OV7620集成有圖像感光陣列、幀(行)控制電路、視頻時(shí)序產(chǎn)生電路、模擬信號(hào)處理電路、A/D轉(zhuǎn)換電路、數(shù)字信號(hào)處理電路、數(shù)字視頻輸出電路及SCCB編程接口。[4]
其外部接口信號(hào)定義如下:
VSYNC:幀同步;HREF:水平同步;PCLK:像素時(shí)鐘;Y[7..0]:8位圖像數(shù)據(jù);RESET:復(fù)位;SIO_1:SCCB總線時(shí)鐘;SIO_0:SCCB總線數(shù)據(jù);SBB:SCCB總線接口使能;SLAEN:模式使能;CS0~CS2:SCCB總線Slave ID配置。MID:多SCCB slave IDs使能。
微處理器圖與像傳感器的接口,如圖2所示:
用S3C44B0X的PF和PC口作為左圖像傳感器的驅(qū)動(dòng)接口,初始化時(shí),設(shè)置PF口的GPF2~GPF4為輸入功能,GPF0和GPF5~GPF8為輸出功能以及PC口的GPC8~GPC15為輸入功能,GPF1在寫操作時(shí)為輸出功能,讀操作時(shí)為輸入功能。
用S3C44B0X的PE、PF、PG和PC口作為右圖像傳感器的驅(qū)動(dòng)接口,由于Y[7..0]和旋光器的D[0..7]復(fù)用GPE0~GPE7,因此該圖像傳感器工作時(shí),要設(shè)置GPE0~GPE7和GPG4~GPG6為輸入功能,GPC0~GPC3為輸出功能。CS0~CS2和Y[7]、Y[6]、Y[4]復(fù)用,對(duì)應(yīng)的S3C44B0X GPIO口設(shè)為輸出功能。。
3 系統(tǒng)工作過程
3.1 立體圖像對(duì)的采集
初始化時(shí),微處理器通過SCCB總線配置功能寄存器,將兩個(gè)圖像傳感器的工作方式和初始工作狀態(tài)設(shè)置為:?jiǎn)瓮ǖ?位Y輸出、逐行掃描、輸出窗口為320×240的標(biāo)準(zhǔn)VGA格式以及自動(dòng)曝光、自動(dòng)增益和自動(dòng)白平衡等。
圖像傳感器工作狀態(tài)穩(wěn)定后,連續(xù)輸出視頻數(shù)字?jǐn)?shù)據(jù)和3個(gè)同步信號(hào):幀同步信號(hào)VSYNC、水平同步信號(hào)HREF和像素時(shí)鐘信號(hào)PCLK。微處理器分時(shí)接收兩個(gè)圖像傳感器發(fā)送來的數(shù)字視頻信號(hào)和同步信號(hào),產(chǎn)生相應(yīng)的數(shù)據(jù)、地址和控制總線信號(hào),并將圖像數(shù)據(jù)寫入相應(yīng)的圖像緩沖區(qū)。
當(dāng)圖像傳感器采用單通道8位Y輸出、逐行掃描工作方式時(shí),每秒可采集30幀圖像,即采集一幅圖像用時(shí)大約為30分之一秒,兩個(gè)圖像傳感器采集圖像對(duì)總用時(shí)大約15分之一秒多,因此拍照時(shí)要求被攝像物保持基本靜止大約十分之一秒。為提高系統(tǒng)的整體處理速度,在SDRAM中為圖像傳感器每個(gè)開辟兩塊圖像緩沖區(qū)(稱為左眼像緩沖區(qū)和右眼像緩沖區(qū)),一塊用于存儲(chǔ)采集來的圖像數(shù)據(jù),另一塊用來向液晶顯示屏提供圖像數(shù)據(jù),兩塊輪換使用。
3.2 立體圖像對(duì)的顯示
G35II液晶顯示屏初始化時(shí),首先通過配置LCD控制器的寄存器設(shè)置LCD的分辨率、顯示模式和顏色數(shù)目等,然后在內(nèi)存中分配一塊連續(xù)區(qū)域作為幀緩沖區(qū),并將其地址寫入LCD控制器的緩沖區(qū)地址寄存器,同時(shí)配置顏色查表寄存器和抖動(dòng)模式寄存器。
液晶旋光器初始化時(shí),首先置RES1B為低電平,當(dāng)電壓穩(wěn)定后,再將RES1B為高電平,然后用控制命令設(shè)置行列的輸出方向、偏壓比率、內(nèi)部電阻率和全屏顯示等。
在本設(shè)計(jì)中,將液晶旋光器的顯存DDRAM全部置為0,開顯示時(shí),LCD全屏像素打開旋光功能,而關(guān)顯示時(shí),LCD全屏像素關(guān)閉旋光功能,因此用顯示命令作為旋光器的旋光開關(guān)。
顯示立體圖像對(duì)時(shí),分時(shí)交替地將SDRAM中左眼像緩沖區(qū)和右眼像緩沖區(qū)中保存的圖像數(shù)據(jù)送入幀緩沖區(qū),微處理器內(nèi)置的LCD 控制器用DMA方式將幀緩沖區(qū)中圖像數(shù)據(jù)送G35II液晶顯示屏顯示。
顯示左眼像時(shí),打開液晶旋光器的旋光功能;而顯示右眼像時(shí),關(guān)閉液晶旋光器的旋光功能。
4 軟件設(shè)計(jì)
系統(tǒng)采用基于裸機(jī)的軟件開發(fā)方式,程序用C語言和匯編語言混合編寫。因此軟件包括兩個(gè)部分:引導(dǎo)程序(Bootloader)和應(yīng)用程序。
引導(dǎo)程序完成系統(tǒng)硬件的初始化,如嵌入式微處理器、SDRAM、中斷、堆棧、PLL時(shí)鐘以及C語言所需的存儲(chǔ)器空間配置等。
應(yīng)用程序有三個(gè)模塊:外部設(shè)備初始化模塊,完成對(duì)攝像頭和雙層液晶顯示器的設(shè)置;圖像采集模塊,完成攝像功能,即同時(shí)采集左眼像和右眼像并存于存儲(chǔ)器SDRAM的不同區(qū)域;立體顯示模塊,完成把存儲(chǔ)器中的圖像對(duì)分時(shí)送到液晶顯示屏,并同步旋光器。其中圖像采集模塊的流程圖見圖3。
5 結(jié)論
綜合三值光計(jì)算機(jī)編碼器和解碼器的工作原理,用嵌入式微處理器S3C44B0X、雙層液晶顯示器和CMOS圖像傳感器OV720構(gòu)造的雙目立體數(shù)碼照相機(jī)原理可靠、技術(shù)可行、成品實(shí)用,原理樣機(jī)參加了2006年上海市嵌入式系統(tǒng)創(chuàng)新設(shè)計(jì)應(yīng)用競(jìng)賽,獲優(yōu)秀獎(jiǎng)。
本文作者創(chuàng)新點(diǎn):根據(jù)液晶的旋光性和偏振器對(duì)正交線偏振光的選擇吸收性,構(gòu)造一個(gè)雙層液晶顯示器實(shí)現(xiàn)立體顯示。
參考文獻(xiàn):
[1]嚴(yán)軍勇,金翊等. 三值光計(jì)算機(jī)多位編碼器與解碼器的可行性實(shí)驗(yàn)研究[J].計(jì)算機(jī)工程,2004(14):175~177
[2]隋婧,金偉其.雙目立體視覺技術(shù)的實(shí)現(xiàn)及其進(jìn)展[J]. 電子技術(shù)應(yīng)用,2004(10):4~6
[3]S3C44B0X Data Sheet. SAMSUNG Electronics Corp, www.samsung.com
[4]OV7620 Data Sheet. OmniVision Technologies Inc, www.ovt.com.cn
[5]胥靜.嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)實(shí)例詳解[M].北京航空航天大學(xué)出版社,2005.1
[6]賀安坤,陳明等.基于S3C44B0X微處理器稅控收款機(jī)系統(tǒng)的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2006,22-1:128-130