摘要:為了實現(xiàn)激光筆與大屏幕的互動,,基于常用的OV9650攝像頭模塊和315 MHz無線收發(fā)模塊,,采用了一種FPGA架構(gòu)實現(xiàn)激光筆與大屏幕互動的設(shè)計方案。OV9650攝像頭模塊的采集信號由FPGA進行緩存和處理,,由它計算出激光點的坐標(biāo),,之后計算機接收激光點的坐標(biāo)及激光筆發(fā)出的無線控制信號,,通過授課主機端的軟件實現(xiàn)激光筆與大屏幕的互動。目前該系統(tǒng)已應(yīng)用于上海交通大學(xué)部分智能教室中,,效果明顯,。
關(guān)鍵詞:激光筆互動;亮點識別,;FPGA,;OV9650;無線收發(fā)
0 引言
在多媒體教學(xué)的普及過程中,,普遍存在如何引進現(xiàn)代化教學(xué)設(shè)備與教師課堂教學(xué)習(xí)慣有機結(jié)合的問題,。目前教師在做教學(xué)演示的過程中,往往需要守在計算機旁邊,,一邊操作計算機一邊進行講解,,需要重點強調(diào)的地方,還要不時地站起身來,,指指點點,,本來提供方便的多媒體演示設(shè)備,卻把教師豐富的課堂語言都束縛了,。為了解決這個問題,本文設(shè)計并實現(xiàn)了一個基于FPGA的激光筆輔助教學(xué)系統(tǒng),,以便讓教師可以通過激光筆在遠(yuǎn)處與計算機系統(tǒng)進行交互,。
基于FPGA的激光筆互動教學(xué)系統(tǒng)的實現(xiàn)原理是:首先通過OV9650攝像頭模塊拍攝到投影屏,并在攝像頭捕捉圖中檢測到激光點的位置信息后,,通過跟蹤來分析和識別激光點的軌跡,,同時通過激光筆上的按鍵信息來共同實現(xiàn)激光筆與遠(yuǎn)程計算機的交互。在激光點的檢測方法中,,用到了不同的線索,,如激光點的運動特征和模式特征以及顏色特征等。由于激光點的區(qū)域很小,,模式特征不是很明顯,,易受到噪聲的干擾,而激光點顏色特征不同的使用環(huán)境中可以有較大的變化,,因此單純使用顏色特征也不是很好的辦法,。文獻(xiàn)提出將激光點的顏色特征、運動信息和形狀特征這幾種線索融合起來進行激光點的檢測,,可使準(zhǔn)確率得到一定的提升,,但是仍然存在漏檢和誤判的情況。
該系統(tǒng)通過濾光片的使用,,基本排除了噪聲的干擾,,使系統(tǒng)的準(zhǔn)確率得到大大的提升,。文獻(xiàn)公開了一種激光筆指示與光點識別方法,利用亮度信息從顯示屏圖像提取紅色激光點,,亮點識別原理與本文一致,,但是由于使用的是固定槍式攝像頭,故安裝調(diào)試不方便,。Cavens等通過改變硬件方法實現(xiàn)點擊功能,,在普通激光筆上增加了按鍵,接收器根據(jù)按鈕發(fā)射頻段的不同判斷操作類型,,但是使用起來效果比較單一,。文獻(xiàn)分別使用了不同方法來實現(xiàn)激光筆的互動,但都比較單一,,不夠完善,。然而在對激光點的行為進行描述上,文獻(xiàn)提到的激光筆互動系統(tǒng)使用起來非常復(fù)雜,。本文提出的系統(tǒng)通過FPGA將攝像頭模塊,、亮點識別算法模塊以及無線收發(fā)模塊集成在一起,使得系統(tǒng)部署方便,,使用更為靈活,。
1 系統(tǒng)整體設(shè)計方案
基于FPGA的激光筆互動教學(xué)系統(tǒng)主要是為在智能自然教學(xué)空間中授課的教師提供一種輔助工具,幫助他們在課程講義上進行各種指示動作或軌跡繪制,,以及遠(yuǎn)距離進行各種操作,,從而使教學(xué)過程更生動,教師的行動更自由,。為完成提供交互式教學(xué)場景的任務(wù),,系統(tǒng)的總體設(shè)計遵循方便、實用,、效率的原則,,使教師和學(xué)生都感到自然,“黑板”更具有特色,。圖1是基于FPGA的激光筆互動系統(tǒng)的總體結(jié)構(gòu)框圖,,它主要由嵌入式模塊、激光筆,、授課主機和投影屏幕4大部分組成,。
教師通過激光筆這一交互工具,在顯示屏幕上留下光點,,通過紅光濾光片及OV9650攝像頭獲取顯示屏幕的信息,,并通過FPGA模塊中的亮點識別算法獲取視頻圖像每一幀中的光點位置,這樣的坐標(biāo)信息送至授課主機,通過坐標(biāo)變換將亮點位置變換為自身的屏幕坐標(biāo)位置,,并進行軌跡繪制,、放大鏡操作或鼠標(biāo)操作,結(jié)果通過投影或VGA線纜連接在顯示屏幕上展示出來,。除此以外,,激光筆本身和FPGA模塊通過無線連接,F(xiàn)PGA模塊與授課主機通過USB線纜連接,,利用筆上的按鈕控制整個系統(tǒng)的啟動和中止,,以及軌跡繪制、放大鏡操作和鼠標(biāo)操作之間的功能切換,。系統(tǒng)邏輯流程如圖2所示,。
2 系統(tǒng)硬件設(shè)計與實現(xiàn)
2.1 無線發(fā)射激先筆設(shè)計
無線發(fā)射激光筆可以產(chǎn)生穩(wěn)定可靠的激光光點,另外有5個功能按鍵分別發(fā)射不同的控制信息,。根據(jù)設(shè)計要求,,將激光頭分為按鍵編碼模塊和無線發(fā)射模塊。設(shè)計框圖如圖3所示,。在此,,采用了PT2262/PT2272編解碼芯片,其中PT2262為編碼芯片,;PT2272為解碼芯片,。基于PT2262的工作方式,,設(shè)計了6按鍵的編碼電路方案,,如圖4所示。K0~K5為6個按鍵,,分別對應(yīng)數(shù)據(jù)位D0~D5。當(dāng)所有按鍵都斷開時,,晶體管Q1截止,,電路中沒有電流,芯片不工作,。當(dāng)6個按鍵中任意一個被按下時,,R1和按鍵的下拉電阻分壓使得Q1的基極電壓下降,Q1導(dǎo)通,,PT2262芯片開始工作,,指示燈D1工作。此時,,除了閉合的按鍵所對應(yīng)的數(shù)據(jù)位為邏輯高電平之外,,其他位為低電平。
無線發(fā)射模塊的功能是將按鍵信息編碼調(diào)制到高頻載波上并發(fā)送。載波頻率為315 MHz,,調(diào)制方式為幅度調(diào)制,。發(fā)射后的信號可由系統(tǒng)的無線接收模塊進行接收并解碼。
2.2 無線接收模塊
無線接收模塊用以接收激光筆發(fā)射端的控制信號,,它主要包括接收解調(diào)和信號解碼兩個部分,。為了達(dá)到較高靈敏度的目的,選擇超再生接收作為接收端的接收解調(diào)方案,,其電路原理如圖5所示,。信號通過天線接收,首先經(jīng)過L2和C23濾出315 MHz附近的頻段信號,。Q1為第一極放大,,放大特性通過R18和R17施加偏置電壓控制;Q2為超再生混頻管,,其本身通過C15,,C16和L1構(gòu)成的選頻網(wǎng)絡(luò)產(chǎn)生315 MHz附近的本征振蕩,然后與前級放大后的信號進行混頻,。如果本征頻率與315 MHz足夠接近,,混頻后將產(chǎn)生低頻分量,該分量即為調(diào)制到載波上的編碼信號,。
解碼芯片采用PT2272,,與PT2262配套使用。PT2272有多種型號,,后綴可以為L4,,M4,L6,,M6等,,后綴中的L表示鎖存數(shù)據(jù)輸出,M表示瞬態(tài)輸出,。這采用PT2272-M6,,解碼后的控制信號經(jīng)FPGA處理后輸出。
2.3 FPGA采集處理及數(shù)據(jù)傳輸
在系統(tǒng)的總體設(shè)計上,,采用Altera公司的EP2C8Q208C8 FPGA芯片作為系統(tǒng)的主控芯片,,配合OMNIVISION公司的OV9650數(shù)字CMOS圖像傳感器和ISSI公司的IS42S16160B片外SDRAM存儲芯片來構(gòu)建攝像頭激光點采集處理系統(tǒng),采集到的圖像可由VGA模塊顯示,。激光點可利用其較高的亮度信息與背景色進行分辨區(qū)分,,計算出的激光點坐標(biāo)以及無線接收的控制信息以串口數(shù)據(jù)的方式發(fā)送,經(jīng)片外CP2102串口轉(zhuǎn)USB模塊,,可使數(shù)據(jù)通過USB口發(fā)送到授課主機,。該系統(tǒng)的總體結(jié)構(gòu)方框圖如圖6所示。
FPGA模塊是該系統(tǒng)的核心模塊,它將數(shù)據(jù)采集,、圖像處理,、圖像存儲控制、圖像顯示控制,、坐標(biāo)計算及串口傳輸控制等功能集成到一片芯片上,。該系統(tǒng)采用Altera公司的EP2C8Q208C8 FPGA芯片,它擁有5 256個邏輯單元(LE),、36個M4K,、2個PLL和18個嵌入式乘法器,還擁有最多138個通用I/O口,,它能提供足夠多的擴展口,,以滿足系統(tǒng)的所有要求。另外,,OV9650攝像頭基于CMOS圖像傳感器技術(shù),,最大輸出圖像分辨率為SxGA(1 280×1 024)。OV9650支持多種圖像格式,,包括10位或者8位的原始RGB,,RGB565,RGB555,,GBR[4:2:2],,YUV等多種格式,且具備自動圖像控制功能,,包括自動曝光控制AEC,、自動增益控制AGC、自動白平衡AWB以及自動濾波ABF等,。以上各個參數(shù)都可以通過芯片的SCCB接口進行設(shè)置,。SCCB是OMNWISION公司定義的串行相機控制總線,主要用于對該公司研發(fā)的系列圖像芯片寄存器進行設(shè)置,。OV9650有多個寄存器,,這些寄存器主要用于對圖像格式和圖像質(zhì)量的控制,用戶可以通過SCCB總線對這些寄存器進行讀/寫操作,。
3 系統(tǒng)軟件設(shè)計與實現(xiàn)
該教學(xué)系統(tǒng)的軟件部分可以分為屏幕校準(zhǔn)模塊和屏幕顯示模塊。
3.1 屏幕校準(zhǔn)模塊
由于在OV9650攝像頭所采集到的圖像信息中無法準(zhǔn)確地只包含顯示屏幕的信息而不含其他成分,,且顯示屏幕在視頻圖像中往往不是規(guī)則的四邊形,,而是帶有較小曲率的類似四邊形,因此需要進行屏幕校準(zhǔn)步驟,,使圖像信息中的坐標(biāo)轉(zhuǎn)換為顯示屏幕對應(yīng)的坐標(biāo),。這種轉(zhuǎn)換采用線性代數(shù)的方法,公式如下:
式中:為轉(zhuǎn)換后坐標(biāo);為轉(zhuǎn)換前坐標(biāo),;A,,d為轉(zhuǎn)換參數(shù),通過計算初始采集圖像中屏幕的4個頂點坐標(biāo)值得到,。
該系統(tǒng)中的這種轉(zhuǎn)換及需要的定位位置要在系統(tǒng)啟動時期以獲取,,并將轉(zhuǎn)換矩陣固定,這樣對每個坐標(biāo)值的轉(zhuǎn)換可在常數(shù)時間內(nèi)完成,。
3.2 屏幕顯示模塊
屏幕顯示模塊主要完成軌跡繪制,、鼠標(biāo)操作和放大鏡操作的實現(xiàn)。該模塊的邏輯流程如圖7所示,。
圖7中屏幕顯示模塊的輸入來自屏幕校準(zhǔn)模塊校準(zhǔn)后的激光點坐標(biāo)信息,,輸出為軌跡繪制的顯示、鼠標(biāo)操作的響應(yīng)或放大鏡操作的響應(yīng),。具體來說,,這三種輸出是該系統(tǒng)功能模式的實現(xiàn),分別為:
繪圖模式 使用激光筆在屏幕上描繪,,屏幕上出現(xiàn)對應(yīng)的軌跡,,同時可以通過激光筆上的按鍵實現(xiàn)幻燈片的上下翻頁及擦除屏幕軌跡的操作。
鼠標(biāo)模式 使用激光筆在屏幕上的指示位置,,屏幕上的鼠標(biāo)發(fā)生移動,,并可通過激光筆上的按鍵實現(xiàn)鼠標(biāo)左擊及右擊的操作。
放大鏡模式 使用激光筆在屏幕上的指示位置,,屏幕上對應(yīng)的區(qū)域會進行局部放大,,并且屏幕上的放大區(qū)域會隨著光點發(fā)生移動。為了防止操作激光筆時由于手的輕微抖動使屏幕產(chǎn)生輸出,,本系統(tǒng)采用了閾值的方法對這一情況進行了限制,,具體算法如圖8所示。
4 系統(tǒng)的整體實施結(jié)果
基于FPGA的激光筆互動教學(xué)系統(tǒng)功能測試效果如圖9所示,。從圖中可以看出,,基于FPGA的激光筆互動教學(xué)系統(tǒng)完全實現(xiàn)了預(yù)先設(shè)定的邏輯功能,在實際使用中能大大方便智能教室的教學(xué),,提高教學(xué)質(zhì)量,。
5 結(jié)語
激光筆互動教學(xué)具有如下有益效果;能夠豐富教學(xué)環(huán)境,,提供給教師一種更新的教學(xué)模式,,可使教師的教學(xué)工作更加連貫和自由;在其他環(huán)境中,,通過遠(yuǎn)程指示特性,,各種人機交互設(shè)備可被修改為遠(yuǎn)程指示性設(shè)備,,避免人力直接接觸屏幕,提高設(shè)備的可靠性,。同時該系統(tǒng)采用FPGA將攝像頭模塊,、光點識別算法模塊及無線接收模塊集成在一起,使得FPGA模塊成為惟一的外設(shè),,方便安裝部署,,從而使得系統(tǒng)不僅僅局限于教室這一場景,大大提高了這套系統(tǒng)的實用性,。未來的工作主要是將FPGA模塊與授課主機的通信方式由USB線纜通信升級為藍(lán)牙通信,,進一步增加系統(tǒng)的靈活性及實用性。