任興平 朱之貞 劉景富 崔健 張建紅
(1.云南安防科技有限公司 云南省昆明市 650223)
(2.陸軍裝備部防化軍事代表局駐昆明地區(qū)防化軍事代表室 云南省昆明市 650223)
(3.云南無線電有限公司 云南省昆明市 650223)
交通監(jiān)控不同于安防監(jiān)控,除了監(jiān)視監(jiān)控區(qū)域外,還需要提取車輛違法的證據(jù),比如超速違法行為,必須取得高速行駛車輛的號牌信息,再比如闖紅燈違法行為,必須取得車輛在停車線前、停車線上和停車線后的3 張圖片。如果用普通攝像機來實現(xiàn)的話,通常是通過從視頻流里面抽幀的方式得到照片,但是視頻編碼為了降低視頻圖像對傳輸帶寬和存儲的要求,都采用有損壓縮方式,并使用了運動估計和幀間預(yù)測等算法,從一個視頻流里面抽出一幀圖像作為證據(jù)圖片,對于運動的車輛來說,清晰度并不理想。追溯交通監(jiān)控發(fā)展的歷史,前幾代的技術(shù)就是采用照相的方式而不是視頻的方式來實現(xiàn)對違法行為的監(jiān)控的。
隨著技術(shù)的進步和實際需求的提高,單純只提供圖片的照相方式,已不能滿足時代的要求:人們希望在獲得違法行為瞬間圖片的同時,也想看一看違法行為發(fā)生時段前后的情形,也就是要求監(jiān)控設(shè)備既能提供清晰的圖片也具備視頻監(jiān)控的功能。
Hi3515 支持多路H.264 視頻編碼和多路JPEG 靜態(tài)圖片編碼,兩種編碼器相互獨立,可同時工作,支持1920*1080 的分辨率,從而完全滿足交通監(jiān)控對高清視頻監(jiān)控和高清圖片抓拍的要求。
從硬件鏈接的角度,攝像機分為3 個部分:前端為傳感器模塊部分,負(fù)責(zé)采集圖像,圖像信息以Bayer 格式送給中間的控制處理部分,控制處理部分以Hi3515 為核心,完成視頻壓縮和圖片壓縮,最后是接口部分,負(fù)責(zé)數(shù)據(jù)、信號的輸入和輸出。
2.2.1 傳感器模塊設(shè)計
選用美國豪威科技的OV2715 COMS 圖像傳感器,輸出配置成并行16 位輸出,可輸出標(biāo)準(zhǔn)1080P/30FP 的視頻,滿足高清的要求。
2.2.2 主控模塊設(shè)計
BT1120 是一個標(biāo)準(zhǔn)的高清視頻接口,適應(yīng)范圍廣,有利于產(chǎn)品在升級換代的過程中具有良好的兼容性。故根據(jù)交通監(jiān)控的實際需求,選擇BT1120 的高清視頻接口作為Hi3515 的視頻接口,主要的輸出接口為100Mb 的自適應(yīng)以太網(wǎng)接口,其它接口不作考慮。
為了將傳感器過來的Bayer 格式的數(shù)據(jù)轉(zhuǎn)化為Hi3515 視頻接口能夠接受的BT1120 格式,硬件上采用Xilinx SPATAN6 系列的XC6SLX16 完成色彩空間變換和BT1120 的編碼。
傳感器的圖像數(shù)據(jù)首先送到XC6SLX16,完成Bayer 到BT1120 的格式轉(zhuǎn)換,主要過程包括CFA(顏色濾波陣列)、RGB 到Y(jié)UV 采樣,YUV 到BT1120 編碼。
圖1
圖像傳感器的每個像素須對紅、綠、藍3 種基本色彩敏感,才能真實反映被攝物體的色彩,從成本和生產(chǎn)工藝考慮,采用一部分像素對紅顏色敏感,一部分像素對綠顏色敏感,剩余的其他像素對藍顏色敏感且便于硬件實現(xiàn)的雙線性插值CFA 算法,從Bayer 格式的數(shù)據(jù)中恢復(fù)出圖像的原始的RGB 色彩數(shù)據(jù),從而較為真實地恢復(fù)出被攝物體的色彩。
采用VDHL 語言編程,生成的配置文件在初始化的時候由Hi3515 通過3 線配置串口對XC6SLX16 進行配置,配置完成后,XC6SLX16 就按照設(shè)定的方式完成規(guī)定的工作。
2.2.3 輸出接口設(shè)計
主要的接口為10/100Mb 自適應(yīng)自動交叉的RJ45 以太網(wǎng)接口,采用后背板立式插座,方便工程安裝接線。Hi3515 內(nèi)置10/100M的以太網(wǎng)MAC,外配RTL8021CP 作為PHY,將網(wǎng)絡(luò)變壓器和RJ45 插座放置在攝像機尾板上(接口板)。
配置一個RS232 和RS485 接口,用于連接車輛監(jiān)測器和信號燈檢測器。
一個多功能輸出口,用于補光設(shè)備的同步。
2.2.4 PCB 設(shè)計考慮
傳感器模塊選用OV2715 芯片采用68 腳BGA 封裝,最高像素時鐘80MHZ,采用4 層電路板。輸出阻抗按33 歐姆匹配。
主控模塊主要考慮Hi3515 及其外圍器件的要求,其中Hi3515采用441 腳,TFBGA 封裝,采用6 層PCB 布線。為減少top 層和bottom 層信號的相互干擾,對高速信號要保證符合spec 要求的阻抗。從器件布局、信號布線、過孔大小、電源平面層供電方式、電源隔離、去耦電容擺放、地屏蔽處理、散熱等方面進行考慮。
Hi3515 Linux 開發(fā)環(huán)境通常包括Linux 服務(wù)器、Windows 工作臺和目標(biāo)板(我們上述設(shè)計中網(wǎng)絡(luò)攝像機),三者同處于一個網(wǎng)絡(luò)中。如圖1 所示。
在Linux 服務(wù)器上建立交叉編譯環(huán)境,Windows 工作臺通過串口和網(wǎng)口與目標(biāo)板連接,開發(fā)人員可以在Windows 工作臺中進行程序開發(fā)或者遠(yuǎn)程登錄到Linux 服務(wù)器進行程序開發(fā)。
圖2
介于海思為我們提供了可用的U-Boot,我們省略了JTAG 仿真器,直接在Linux 服務(wù)器上進行應(yīng)用程序開發(fā)。
2.3.1 系統(tǒng)流程
系統(tǒng)流程如圖2 所示。
上述中,HD200S 和Box 是兩個主要的應(yīng)用,一個完成交通監(jiān)控需要的圖片抓拍功能,一個完成交通監(jiān)控需要的實時視頻功能。其余應(yīng)用作為輔助工具,維護系統(tǒng)正常運行所需的諸如時鐘同步,人機交互,升級、數(shù)據(jù)交換等功能。
2.3.2 HD200S 應(yīng)用程序設(shè)計說明
HD200S 是一個多線程模塊,創(chuàng)建并管理多個線程,具體如下:
(1)串口數(shù)據(jù)接收線程。
(2)串口數(shù)據(jù)發(fā)送線程。
(3)自動亮度監(jiān)測線程。
(4)自動增益調(diào)整線程。
(5)靜態(tài)圖片JPEG 編碼線程。
(6)FTP 線程。
(7)實時圖片傳輸線程。
串口數(shù)據(jù)的接收和發(fā)送線程用于對RS232 和RS485 接口的數(shù)據(jù)的接收,也可以通過這兩個接口設(shè)置所連接的設(shè)備的參數(shù),目前這兩個接口主要用于連接車輛檢測設(shè)備和信號燈檢測設(shè)備。
自動亮度監(jiān)測和增益調(diào)整組成一個閉環(huán)系統(tǒng),亮度檢測負(fù)責(zé)實時測量圖像的亮度,和用戶設(shè)定的閾值對比,得到過亮、適中和過暗3 種結(jié)果,并輸出到增益自動調(diào)整模塊,由該模塊統(tǒng)一調(diào)度數(shù)字增益調(diào)整,曝光時間調(diào)整、幀率調(diào)整等幾種調(diào)節(jié)措施,是的畫面亮度保持穩(wěn)定,不閃爍。
靜態(tài)圖片JPEG 編碼線程的基本工作流程是:創(chuàng)建編碼通道組,綁定視頻輸入到通道組,創(chuàng)建編碼通道,注冊編碼通道到通道組,在此之后就是啟動編碼通道接收圖像數(shù)據(jù),收到數(shù)據(jù)后,啟動硬件編碼器完成編碼,用戶獲取編碼數(shù)據(jù)。在我們的設(shè)計中,啟動編碼通道接收圖像數(shù)據(jù)的指令來自串口或網(wǎng)絡(luò),通常由車輛檢測設(shè)備自動發(fā)出或控制中心通過網(wǎng)絡(luò)手動發(fā)送。當(dāng)編碼完成后,由FTP 或?qū)崟r傳輸線程取走并通過網(wǎng)絡(luò)返回給用戶(可以至監(jiān)控中心的實時畫面和存儲設(shè)備)。
FTP 和實時圖片傳輸線程時數(shù)據(jù)交換模塊,負(fù)責(zé)將圖片發(fā)送給用戶。
2.3.3 Box 應(yīng)用程序設(shè)計說明
Box 是一個基于TCP 連接提供實時視頻的服務(wù),視頻編碼方式為H.264。
Box 的基本工作流程是:創(chuàng)建編碼通道組,綁定視頻輸入到通道組,創(chuàng)建編碼通道,注冊編碼通道到通道組,開啟編碼通道接收輸入圖像,獲取編碼碼流,發(fā)送碼流,釋放碼流緩存。其中發(fā)送碼流在這個流程中又是一個獨立的線程,在初始化完成后,發(fā)送碼流的線程將監(jiān)聽TCP 端口,有連接請求后,就負(fù)責(zé)建立并維持連接,并將編碼碼流實時發(fā)送給用戶。在這個線程里面,仍然有很多細(xì)節(jié)需要考慮,例如如何保持幀率的穩(wěn)定,如何適應(yīng)各種帶寬等,這里不做具體論述。
交通監(jiān)控在獲取圖片的同時又具備實時視頻的監(jiān)控且在應(yīng)用時攝像機工作穩(wěn)定可靠,是本設(shè)計的最終目的。按上述設(shè)計方案制作了前端傳感器,用Hi3515 一個視頻輸入接口,采用1 路主碼流和1 路次碼流,用不同的編碼協(xié)議,其寬高比例滿足1:1、1:2 或1:4,即主次碼流是指硬件邏輯單元啟動一次同時產(chǎn)生的2 路碼流,次碼流不能單獨存在(必須和1 路主碼流在同一個通道組中),實現(xiàn)圖片抓拍的同時實時視頻不中斷。
由此證明本設(shè)計思路是正確的,只要通過設(shè)計改進、完善,調(diào)試和應(yīng)用就能達到最終設(shè)計目的。
Hi3515 是一款基于ARM9 處理器內(nèi)核以及視頻硬件加速引擎的高性能通信媒體處理器,基于它設(shè)計的這款網(wǎng)絡(luò)高清攝像機,較好地滿足交通監(jiān)控的需求,大大縮短了開發(fā)周期,提供了不錯的性價比,是一個值得借鑒和推廣的高清攝像機的實現(xiàn)方式。