《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動(dòng)態(tài) > 基于StrongARM的視頻采集與處理系統(tǒng)

基于StrongARM的視頻采集與處理系統(tǒng)

2008-10-31
作者:沈 雷 胡劍凌 陳 健

??? 摘? 要: 介紹一個(gè)基于StrongARM的視頻數(shù)據(jù)采集處理系統(tǒng)。該系統(tǒng)將采集到的連續(xù)視頻圖像數(shù)據(jù)以MJPEG的方式進(jìn)行壓縮處理,然后由StrongARM進(jìn)行打包處理,生成UDP包,向網(wǎng)絡(luò)發(fā)送。視頻服務(wù)器可以通過網(wǎng)絡(luò)(局域網(wǎng)或廣域網(wǎng))獲取視頻采集" title="視頻采集">視頻采集器發(fā)送的圖像數(shù)據(jù),并對圖像數(shù)據(jù)進(jìn)行顯示、存儲、回放等管理,同時(shí)視頻服務(wù)器也可以通過網(wǎng)絡(luò)控制視頻采集器上的攝像機(jī)及云臺。該系統(tǒng)為實(shí)現(xiàn)遠(yuǎn)程實(shí)時(shí)監(jiān)控系統(tǒng),對監(jiān)控?cái)?shù)據(jù)的數(shù)字化管理以及視頻網(wǎng)絡(luò)傳輸?shù)忍峁┝私鉀Q方案,它以最新的MJPEG壓縮方式使視頻數(shù)據(jù)的管理更加方便可靠,并且使用Intel公司的StrongARM SA-1110高性能微處理器芯片作為處理平臺,使得該系統(tǒng)具有安裝方便、配置靈活、便于攜帶等突出優(yōu)點(diǎn),具有很大的市場應(yīng)用前景。

??? 關(guān)鍵詞: StrongARM? 視頻采集? MJPEG? 嵌入式操作系統(tǒng)

?

??? 數(shù)字視頻監(jiān)控系統(tǒng)與傳統(tǒng)模擬監(jiān)控相比,優(yōu)點(diǎn)在于數(shù)字化的視頻系統(tǒng)可以充分利用計(jì)算機(jī)的快速處理能力,對其進(jìn)行壓縮、分析、存儲和顯示。數(shù)字視頻監(jiān)控系統(tǒng)更適合遠(yuǎn)距離傳輸。數(shù)字信息抗干擾能力強(qiáng),不易受傳輸線路信號衰減的影響,而且能夠進(jìn)行加密傳輸,因而可以在數(shù)千公里之外現(xiàn)場實(shí)時(shí)監(jiān)控。數(shù)字化視頻處理提高了圖像的質(zhì)量與監(jiān)控效率,系統(tǒng)易于管理和維護(hù)。整個(gè)系統(tǒng)是模塊化結(jié)構(gòu),體積小,易于安裝、使用和維護(hù)。正是由于數(shù)字視頻監(jiān)控具有傳統(tǒng)模擬監(jiān)控?zé)o法比擬的優(yōu)點(diǎn),而且符合當(dāng)前信息社會(huì)中數(shù)字化、網(wǎng)絡(luò)化和智能化的發(fā)展趨勢,所以數(shù)字視頻監(jiān)控正在逐步取代模擬監(jiān)控,廣泛應(yīng)用于各行各業(yè)[6]

??? 目前市場上已經(jīng)投入使用的視頻采集設(shè)備多以計(jì)算機(jī)插卡的形式存在。而本系統(tǒng)的前端視頻采集設(shè)備使用Intel公司的嵌入式" title="的嵌入式">的嵌入式處理器芯片StrongARM作為主體芯片,從而可以使其作為獨(dú)立的單元存在,并且具有體積小、處理能力強(qiáng)且功耗低的特點(diǎn)。該系統(tǒng)為數(shù)字化視頻監(jiān)控提供了解決方案。本文簡單介紹Intel的 StrongARM SA-1110微處理芯片,詳細(xì)介紹視頻數(shù)據(jù)采集與處理端的硬件結(jié)構(gòu),公司運(yùn)用該系統(tǒng)可實(shí)現(xiàn)網(wǎng)絡(luò)實(shí)時(shí)監(jiān)控系統(tǒng)設(shè)計(jì)方案。

1 Intel StrongARM SA-1110微處理器

1.1 SA-1110微處理器簡介[2]

??? Intel公司的SA-1110是一款通用RISC微處理器。它將16KB的指令Cache、8KB的數(shù)據(jù)Cache、一個(gè)小型Cache、一個(gè)寫緩存、一個(gè)讀緩存、一個(gè)內(nèi)存管理單元(MMU)集成在一塊芯片中。它與ARM V4結(jié)構(gòu)的處理器在軟件上兼容,也可以使用一些支持ARM的芯片,如I/O、內(nèi)存以及視頻設(shè)備。

??? SA-1110芯片在PDA等手持計(jì)算機(jī)設(shè)備上有著廣闊的應(yīng)用,對于嵌入式操作系統(tǒng)" title="嵌入式操作系統(tǒng)">嵌入式操作系統(tǒng)和便攜式系統(tǒng),SA-1110是很好的選擇。設(shè)計(jì)者可以在以SA-1110為平臺的嵌入式操作系統(tǒng)上開發(fā)各種應(yīng)用程序。

1.2 SA-1110微處理器系統(tǒng)

??? SA-1110配置了功能強(qiáng)大的外圍邏輯電路,可以分為幾個(gè)模塊,如圖1所示。

?

?

??? (1)內(nèi)存和PCMCIA控制模塊(MPCM)

??? 支持ROM、同步掩膜ROM(SMROM)、Flash、DRAM、SDRAM、SRAM、SRAM-like可變延遲I/O以及PCMCIA控制信號。

??? (2)系統(tǒng)控制模塊(SCM)

??? 28個(gè)通用I/O端口、實(shí)時(shí)時(shí)鐘、Watchdog及內(nèi)部時(shí)鐘、電源管理控制器,中斷控制器、重啟控制器、兩個(gè)晶振(3.686MHz和32.768kHz)。

??? (3)外圍控制模塊(PCM)

??? 6通道DMA控制器、LCD控制器、16550 UART、紅外串行端口(115kbps、4Mbps)、同步串行接口(UCB1100、UCB1200、SPI,TI,μWire)、通用串行總線(USB)設(shè)備控制器。

1.3?SA-1110微處理器I/O管腳

????SA-1110微處理器I/O管腳如圖2所示。

?

?

2 基于SA-1110的視頻數(shù)據(jù)采集與壓縮系統(tǒng)

2.1?? 系統(tǒng)組成

??? 本系統(tǒng)由一片A/D" title="A/D">A/D芯片(采用Philip公司的SAA7113)、一片MJPEG壓縮芯片(采用ZORAN公司的ZR36060)、一片高速FIFO(采用IDT公司的IDT72V271LA)、一片邏輯控制芯片(Xilinx公司)及基于StrongARM? SA-1110上的嵌入式操作系統(tǒng)(采用Intel公司的Assabet)組成。A/D芯片、MJPEG壓縮芯片以及FIFO要完成4路攝像頭的輸入轉(zhuǎn)換、MJPEG壓縮及數(shù)據(jù)緩存。CPLD控制中斷請求及某些片選信號。A/D芯片和MJPEG壓縮芯片的工作均由基于SA-1110的嵌入式操作系統(tǒng)完成。

??? 本系統(tǒng)數(shù)據(jù)采集及處理框圖如圖3所示。

?

?

2.2 系統(tǒng)工作流程

??? 模擬輸入部分:攝像機(jī)將采集到的模擬數(shù)據(jù)發(fā)送到A/D轉(zhuǎn)換芯片" title="轉(zhuǎn)換芯片">轉(zhuǎn)換芯片進(jìn)行視頻解碼,模擬電路需要提供A/D轉(zhuǎn)換芯片所需要的時(shí)鐘頻率24.576MHz,A/D轉(zhuǎn)換芯片將用此頻率來同步MJPEG壓縮芯片。模擬電路部分還包括對攝像機(jī)焦距和云臺轉(zhuǎn)向的控制電路。

??? 視頻壓縮部分:MJPEG壓縮芯片將A/D轉(zhuǎn)換芯片輸入的YUV格式的數(shù)據(jù)進(jìn)行MJPEG格式的壓縮。MJPEG由JPEG圖像連接組成,相比JPEG圖像每幅都有自己的量化表和Huffman碼表。MJPEG可以僅使用一張量化表和Huffman碼表對連續(xù)幾十幀甚至上百幀圖像進(jìn)行壓縮,僅當(dāng)數(shù)據(jù)發(fā)生丟失時(shí)才需要重新載入量化表和Huffman碼表。這一優(yōu)點(diǎn)大大降低了系統(tǒng)視頻解碼時(shí)所需要的開銷。而且,MJPEG可以分幀存儲,這給數(shù)據(jù)的管理和回放來了方便[4]。

??? 邏輯譯碼電路:邏輯譯碼電路需要完成中斷請求的譯碼以及片選信號的譯碼,并提供降頻的時(shí)鐘信號等。

??? 系統(tǒng)數(shù)據(jù)處理:當(dāng)嵌入式操作系統(tǒng)啟動(dòng)時(shí),首先對子系統(tǒng)供電,將視頻采集系統(tǒng)的驅(qū)動(dòng)程序載入設(shè)備管理器(Device Manager),然后由應(yīng)用程序調(diào)用MDD層的初始化函數(shù)完成如下工作:

??? (1)通過I2C總線讀寫A/D轉(zhuǎn)換芯片寄存器進(jìn)行初始化;

??? (2)通過地址及數(shù)據(jù)總線對MJPEG壓縮芯片進(jìn)行初始化處理,裝入壓縮需要的量化表及Huffman碼表;

??? (3)初始化邏輯譯碼電路。

??? 初始化完成后,系統(tǒng)采集數(shù)據(jù)及通道切換都要通過中斷請求來完成。對于嵌入式操作系統(tǒng)來講,此工作方式是合適的。因?yàn)榛赟A-1110的嵌入式操作系統(tǒng)速度遠(yuǎn)遠(yuǎn)高于A/D轉(zhuǎn)換芯片和MJPEG壓縮芯片的工作速度,中斷請求及中斷服務(wù)不會(huì)給系統(tǒng)帶來很大的負(fù)荷。系統(tǒng)采用A/D轉(zhuǎn)換芯片和MJPEG壓縮專用芯片進(jìn)行視頻數(shù)據(jù)處理,也就是說對4臺攝像機(jī)來講,只能分時(shí)地占用這些資源,這就要靠嵌入式操作系統(tǒng)來完成對通道選擇的控制及緩存數(shù)據(jù)的讀取。

??? 對A/D轉(zhuǎn)換芯片來說,每完成一幀圖像的轉(zhuǎn)換,將輸入切換到另一個(gè)攝像頭上,開始接受下一個(gè)攝像頭的模擬數(shù)據(jù)(這一功能由SA-1110對I2C類型的A/D芯片進(jìn)行控制而實(shí)現(xiàn)[5])。因此它源源不斷地傳出輪流時(shí)分的4個(gè)攝像頭的視頻信息。MJPEG壓縮芯片則僅僅負(fù)責(zé)將收到的原始數(shù)據(jù)進(jìn)行壓縮,并將結(jié)果寫入緩存FIFO。

??? 當(dāng)子系統(tǒng)正常工作后,整個(gè)系統(tǒng)是中斷驅(qū)動(dòng)的。有如下兩種中斷:

????(1)MJPEG芯片對一幅圖片壓縮完成

??? 這意味著一路攝像機(jī)輸入的圖像已經(jīng)完成。此時(shí),系統(tǒng)會(huì)進(jìn)行通道選擇,將A/D芯片的輸入切換到另一臺攝像機(jī)上。這樣,下一幀圖像就是另一路攝像機(jī)輸入的,從而完成了攝像機(jī)對A/D轉(zhuǎn)換芯片的時(shí)分復(fù)用。這一操作通過I2C總線完成,通過對A/D芯片內(nèi)部寄存器的修改,切換A/D模擬輸入的通道。

??? (2)FIFO半滿指示

??? 這意味著緩存正等待操作系統(tǒng)將數(shù)據(jù)移走,以便新的數(shù)據(jù)存儲。系統(tǒng)將通過數(shù)據(jù)總線將FIFO中的數(shù)據(jù)讀入指定緩存。

??? 至此,視頻數(shù)據(jù)采集過程已經(jīng)完成。接下來是對數(shù)據(jù)的處理,包括分辨數(shù)據(jù)源(攝像頭)、UDP打包處理進(jìn)行網(wǎng)絡(luò)發(fā)送。這一過程也由嵌入式操作系統(tǒng)完成。遠(yuǎn)端的服務(wù)器可以通過調(diào)用函數(shù)對攝像頭進(jìn)行調(diào)焦、轉(zhuǎn)向等控制。這一功能通過信令通道與嵌入式操作系統(tǒng)之間通信來完成。遠(yuǎn)端的監(jiān)控服務(wù)器將通過LAN或WAN收到的UDP數(shù)據(jù)進(jìn)行處理、解碼、顯示、管理等。

3 本系統(tǒng)在網(wǎng)絡(luò)監(jiān)控中的應(yīng)用

??? 基于小型嵌入式操作系統(tǒng)的視頻采集傳輸系統(tǒng)非常適合網(wǎng)絡(luò)監(jiān)控的應(yīng)用。如果數(shù)字視頻監(jiān)控系統(tǒng)提供遠(yuǎn)程訪問能力,這意味著世界上任何有通信線路的地方,用戶都能夠使用PC機(jī),通過網(wǎng)絡(luò)連接到他們的數(shù)字視頻服務(wù)器,從而選擇觀看到所需的視頻圖像。連接的網(wǎng)絡(luò)既可是局域網(wǎng)也可是廣域網(wǎng),還可以是一個(gè)通過電話線的撥號網(wǎng)絡(luò)。

??? 這樣的監(jiān)控系統(tǒng)框圖如圖4所示。

?

?

??? 本文介紹的基于StrongARM的視頻采集和處理系統(tǒng),采用MJPEG進(jìn)行圖像壓縮編碼,并使用基于SA-1110的嵌入式操作系統(tǒng)進(jìn)行本地化數(shù)字處理并打包向網(wǎng)絡(luò)發(fā)送,使得數(shù)字視頻采集系統(tǒng)的所有功能都集成在一個(gè)小小的電子設(shè)備上。一根電話線、一根電源線、一個(gè)手持設(shè)備就可以組成一套完整的視頻監(jiān)控系統(tǒng)遠(yuǎn)端設(shè)備,不需要早前的視頻采集卡等輔助設(shè)備與PC相連。集成度高、多路并行采集。這些特點(diǎn)使得本系統(tǒng)有廣泛的應(yīng)用前景。

參考文獻(xiàn)

1 MicrosoftWindowsCE Device Driver Kit. MicrosoftPress Part No.097-0002205 ISBN:1-57231-856-2

2 IntelStrongARM SA-1110 Microprocessor Developer's Manual. June 2000. IntelCompany order number 278240-003

3 IntelStrongARM SA-1110 Microprocessor Development Board Manual. June 2000. Intel Company order number 278278-006

4 ZORANCorporation. ZORAN ZR36060 Datasheet.1998

5 PhilipsCorporation.PhilipsSAA71113 Datasheet.1998 Sept 4

6 蔡茂國,楊淑雯.基于DSP的遠(yuǎn)程監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).電子技術(shù)應(yīng)用,2001;27(9):52~54

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。