概述 在某些需要無人控制自動監視的場合,采用常規的圖像監視系統具有一些不可避免的弊端,例如:設備體積于龐大、采購費用高、需要足夠的電源供應、無法重復錄制等等。尤其在不需要連續圖像采集的場合,常常無法采用常規的圖像監視系統。根據長途汽車對上車人員進行記錄的應用要求,開發了一套基于EZ-USB的低端圖像數據采集存儲及傳輸系統。 本系統采用OmniVision公司的CMOS圖像傳感器OV7620作為采集芯片,Zoran公司的ZR36060作為數據壓縮芯片,Cypress的帶USB接口的單片機AN2131QC作為總控制芯片和USB數據傳輸芯片。由于長途汽車的乘客上下車是非連續的過程,對圖像數據的保存要求就相對較低,因而采用Hynix的NAND閃存芯片HY27UA082G1M對圖像數據進行保存。這樣不但減小功耗,還可以實現重復存儲,系統還包括用于圖像數據緩存的FIFO。 該圖像數據采集系統具有集成度高、傳輸速度快的優點,能夠彌補常規圖像監視系統的缺點,可望在低端的視頻圖像領域(如便攜式圖像系統)填補空白。 CMOS彩色圖像傳感器OV7620將CMOS光感應核與外圍支持電路集成在一起,具有可編程控制與視頻模/數混合輸出等功能,能夠消除噪聲、燈光閃爍等光電干擾,輸出清晰、穩定的彩色圖像。OV7620的功能特點包括:單芯片1/3寸鏡頭,最大664×492像素分辨;I2C控制,標準SCCB接口;開窗功能,局部圖像輸出;輸出RGB/RawRGB/YCbCr視頻信號;自動曝光控制/自動白平衡/自動增益控制/自動亮度控制;圖像質量控制,包括顏色飽和度、銳度、伽馬校正等。 如圖1是OV7620的內部框圖,視頻圖像采集以后,通過模數轉換電路和控制處理后轉換為數字視頻信號輸出,視頻的控制時序由時序產生電路來生成,對外輸出的數字信號為圖像數據Y[7:0]和UV[7:0]。定時信號包括圖像時鐘PCLK、奇偶場信號FODD、行同步CHSYN、有效像素HREF、場同步VSYNC。由于它采用I2C的標準SCCB控制,可以采用單片機模擬SCCB總線,對圖像幀頻、曝光時間、增益控制、伽馬校正等進行控制,還可以預設圖像的分辨率、采集區域等。 JPEG編解碼芯片ZR36060是專為視頻采集與編輯應用而設計的,可以方便地實現對視頻信號的實時壓縮和解壓縮,其內部框圖如圖2所示。在進行壓縮時,ZR36060接受YUV4:2:2數字視頻信號,將其編碼為JPEG碼流輸出;在解壓縮時,ZR36060接受JPEG碼流,將其解碼為YUV4:2:2數字視頻信號輸出! ZR36060具有以下特點:視頻壓縮和擴展功能,對像素塊和CCIR視頻信號可實現高達25~30幀/秒的壓縮;靈活的數據接口,支持三種YUV視頻接口模式,即8位主模式、16位從模式和8位從模式;提供同步主模式和同步從模式兩種視頻同步方式,前者是芯片內部產生所有的定時信號,后者則是芯片自己同步于一個外部的視頻源;3種不同的比特率控制模式用于靜止和運動視頻的壓縮;可以和多種常用視頻解碼器實現無縫連接。 由于視頻圖像文件的數據量非常大,一副沒有經過壓縮的8級灰度黑白視頻圖像的大小為664×492=327KB。如果不對圖像進行壓縮,其占用Flash存儲器的空間將非常大。因而利用ZR36060的特點以及可以很方便地進行設置的特點,在本視頻采集設備上采用了該芯片。 AN2131QC是Cypress公司開發的USB1.1協議的單片機,可以非常方便地開發USB外設。AN2131QC具有51單片機的所有特點,而且速度更快,可以使用51單片機的通用指令集。采用EZ-USB芯片的系統設計無需考慮端點數量、緩沖區尺寸和傳輸速度的限制。每個芯片內嵌一個EZ—USB核,能處理絕大多數USB事務,大大簡化了程序代碼,加速了開發進程。 如圖3所示,整個圖像數據系統由采集、壓縮、存儲、傳輸幾個部分組成。OV7620的設定是通過基于圖像的數碼相機串行總線SCCB,在AN2131單片機中不能直接產生控制信號,所以必須利用AN2131QC的兩個引腳進行模擬,圖4所示是其讀寫傳輸的時序。為了節省空間,將OV7620的輸出方式設定為16位視頻總線,但只取其中[Y7:0]的灰度圖像數據、采集視頻的同步和圖像時鐘送往ZR36060。 圖像壓縮ZR36060使用視頻同步從、8位代碼主和8位視頻總線模式,即由單片機通過8位數據總線[DATA7:0]對其內部寄存器進行工作方式設定(初始化),視頻時鐘和同步由OV7620產生,ZR36060采樣同步信號與之同步,接受[Y7:0]的視頻灰度信號進行壓縮,壓縮后的JPEG圖像由[CODE7:0]輸出直接送入FIFO中緩存。 NAND式FLASH有可能存在壞塊,這就要考慮物理地址和虛擬地址的對應問題,所以建立了一個對應關系表,并存在FLASH的頭幾個塊中,該表不斷更新,隨壞塊的增加而變化,同時還記錄了數據的保存位置。這樣在初始化時,可以直接讀取圖像數據分配情況。為了記錄FIFO的數據,采用類DMA的存儲方法。單片機先從[D7:0]口輸入命令和計算的地址的串行信號,然后發出命令使能FIFO的RE輸出并計數,當到達一頁的數量512個字時,重新上述輸入過程。 對采集和壓縮芯片初始化以后,就進入對圖像數據壓縮的控制階段,并確保圖像數據保存在完好的FLASH數據塊中,延時時間到達時,將FLASH的圖像數據最舊的那個塊擦除,以確保下次保存時使用。圖像采集部分程序框圖如圖5所示。 系統功能介紹 將本系統安裝在長途客車的上客處,當有人員經過時,圖像和采集過程啟動,并延時3s后停止采集,同時將采集的數據壓縮后送入FLASH中保存。經過設定,圖像的分辨率為640×480,刷新率為15幀/秒,壓縮后每幀圖像為15KB左右的MJPG的圖像數據。每次采集的圖像為15K×3×15=675KB,這樣兩塊256M×8Bit的FLASH可以記錄700~800人次的圖像數據,可以滿足本車載圖像采集系統的需要。 |