楊 健 謝曉方 李德棟
(海軍航空工程學院 煙臺 264001)
基于航姿參考系統和云臺的視頻監控跟蹤系統設計?
楊 健 謝曉方 李德棟
(海軍航空工程學院 煙臺 264001)
采用基于航姿參考系統和云臺相結合的方法,設計了視頻監控跟蹤系統,給出了系統的總體結構和軟件設計,實現了串口通訊和頭部姿態跟蹤等關鍵技術并給出了關鍵部分的代碼。
AHRS;云臺;視頻監控;姿態跟蹤
C lassNum ber TP391.9
隨著慣性敏感器件越來越向小型化、高精度、低成本發展,航姿參考系統(AHRS)越來越廣泛地應用于虛擬現實、攝像和云臺、室內定位等需要三維測量的產品中[1]。本文就是采用了航姿參考系統用于測量用戶頭部姿態,根據姿態數據變化來控制云臺運動,實現了視頻監控跟蹤系統的設計。
2.1 航姿參考系統
航姿參考系統(Attitude and Heading Reference System,AHRS)是一種在動靜態環境下對載體的橫滾角、俯仰角和方位角進行高精度測量的設備[2]。
系統工作原理如圖1所示:AHRS由加速度計、磁力計和陀螺儀構成,它測量的數據主要是地球的重力場和磁場,因此它的靜態精度取決于對磁場和重力的測量精度,而陀螺儀則決定了它的動態性能。通過內置的慣性傳感器測得相應數據,利用加速度計校正初始姿態,并結合陀螺儀對俯仰角和滾動角進行姿態補償和漂移的修正,最后使用卡爾曼濾波器對多傳感器數據進行融合,解算出運動載體姿態。
2.2 云臺
云臺,即PTZ,是Pan/Tilt/Zoom的簡寫,即左右上下轉動和可變焦的攝像機,分為固定和電動云臺兩種[3]。固定云臺適用于監視范圍不大的情況,本文的工作是為后繼航空全景顯示系統進行預先研究,因此采用可以進行大范圍掃描監視的電動云臺,在這里我們選取了海康威視9168云臺。
海康9168云臺采用以太網連接控制,支持多種網絡協議。云臺在水平方向360°連續旋轉,垂直方向-90°(向下)~40°(上仰),支持多種格式視頻壓縮解碼,并且提供了設備SDK,方便開發利用其提供的各類接口實現各項功能。

圖1 航姿參考系統工作原理圖
3.1 總體框架
本系統采用海康威視9168云臺,圖像數據和云臺控制命令都通過網線傳輸,系統總體結構如圖2所示。

圖2 系統總體結構
系統由三部分組成:主控計算機、航姿參考系統和云臺。其中航姿參考系統通過串口向主控計算機傳送姿態數據以確定用戶位置,即視線關注點;云臺通過網線與主控計算機交互信息,接收主控計算機的姿態控制指令旋轉和俯仰,總體結構如圖3所示。
3.2 軟件結構
系統軟件總體流程圖如圖3所示。

圖3 視頻監控跟蹤系統程序流程圖
視頻跟蹤系統完成云臺自檢,AHRS標校等初始化工作后,進入主循環通過檢測串口接收的姿態數據,利用姿態檢測算法檢測姿態變化,若超過程序設定的閾值則認為姿態發生變化,相應地控制云臺旋轉或俯仰以跟蹤用戶視線變化;若姿態仍在閾值內,則認為姿態沒有變化,繼續在主循環檢測串口姿態數據變化。
其中控制云臺調整姿態要使用云臺控制操作接口函數:
BOOLNET_DVR_PTZControl(
LONG lRealHandle,//NET_DVR_RealPlay 或NET_DVR_RealPlay_V30的返回值
DWORD dwPTZCommand,
//云臺控制命令
DWORD dwStop,
//云臺停止動作或開始動作:0-開始;1-停止
);
返回值:TRUE或者FALSE,分別代表成功和失敗。
參數dwPTZControl的宏定義如表1所示。

表1 云臺控制參數宏定義
每次對云臺姿態進行調整都要調用該接口函數兩次,即接口函數中的dwStop,dwStop為0時代表云臺停止轉動,為1時開始轉動。圖像預覽要在調用此接口前開啟。對云臺的操作命令是由控制碼決定的,控制碼由解碼器進行解碼,如果不能匹配則需要重新設置解碼器,在默認情況下,云臺以最大速度轉動,其轉動速度也可通過調用相關接口進行調整。
4.1 基于AHRS的頭部姿態跟蹤
航姿參考系統(AHRS)原本起源于飛行器相關技術,但是近年來隨著慣性器件越來越小型化、高精度、低成本等優點,AHRS開始廣泛應用于虛擬現實、攝像和天線云臺、工業設備、室內定位等領域。本視頻跟蹤系統中采用AHRS可以實現對頭部姿態較好的跟蹤效果。
主要流程為:當串口有數據時觸發串口中斷,然后從數據緩沖區中每次讀出一個字節的數據,緩沖區為空的時候停止。然后按照數據包格式判斷數據頭及CRC校驗,若CRC校驗正確則把姿態數據字段按內存拷貝方式填充到sAHRSData結構體中,這樣sAHRSData結構體中就是最新一包的姿態數據了,sAHRSData結構定義如下:
Typedef struct
{
unsigned char Flags; //狀態位
float Euler[3]; //3個歐拉角
floatGyro[3]; //經校準后的角速度值
floatAcc[3]; //校準后的加速度值
floatMag[3]; //校準后的指南針值
}sAHRSData;
從AHRS接收的姿態數據格式為無符號四字節數據,因此需要轉換為浮點數才可以使用,這里我們采用的是聯合體方式,轉換程序如下所示:
typedefunion_fconvert
{
unsigned charu8_val[4];
float float_val;
}fConvert;
float Buffer_To_Float(unsigned char Buffer[])
{
fConvertdata;
for(i=0;i<4;i++)
data.u8_val[i]=Buffer[i];
return data.float_val;
}
4.2 串口通訊
本視頻跟蹤系統中需要將AHRS的姿態數據傳送給云臺設備來控制云臺攝像頭旋轉,而數據傳送就是通過串口來進行,在VC中也就是在串口事件處理函數 oncommunication()中進行[4]。每當串口緩沖區中有一個或一個以上字符時觸發串口通訊事件,該事件就驅動(調用)串口事件通訊處理函數oncommunication(),然后就可以對從AHRS接收到的姿態數據進行處理,提取需要的數據。
具體程序如下:
void CSCommTestDlg::OnComm()
{
VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
BYTE rxdata[2048];//設置BYTE數組
CString strtemp;
if(m_ctrlComm.GetCommEvent()==2)
//事件值為2表示接收緩沖區內有字符
{
variant_inp=m_ctrlComm.GetInput();//讀緩沖區
safearray_inp=variant_inp;//VARIANT型變量轉換為ColeSafeArray型變量
len=safearray_inp.GetOneDimSize();//得到有效數據長度
for(k=0;k<len;k++)
safearray_inp.GetElement(&k,rxdata+k);//轉 換 為BYTE型數組
for(k=0;k<len;k++)//將數組轉換為Cstring型變量{
BYTE bt=*(char*)(rxdata+k);//字符型
strtemp.Format(“%c”,bt);//將字符送入臨時變量strtemp存放
m_strRXData+=strtemp;//對應字符串放入接收編輯框
}
}
UpdateData(FALSE);//更新編輯框內容}
本文實現了一種基于航姿參考系統和云臺的視頻監控跟蹤系統的設計,可以比較精確地定位頭部姿態并控制云臺運動以跟蹤用戶視線,為后繼的航空全景顯示系統的研究奠定了基礎。
[1]蘇中,李擎.慣性技術[M].北京:國防工業出版社,2010:29-36.
[2]薛婷,黃劍,曲立群,等.基于平面靶的多氣泡虛擬三維測量系統標定[J].天津大學學報,2014,47(5):441-445.
[3]管鳳旭,杜俊琪,趙拓,等.基于WiFi的遠程目標跟蹤系統設計[J].傳感器與微系統,2017,36(3):101-103.
[4]曾輝艷,鄢萍,賀曉輝,等.可配置的智能監控軟件開發方法[J].計算機工程,2010,36(10):239-241.
[5]王家樂,關越,鄧哲,等.基于MEMS傳感器的運輸環境檢測儀的研制[J].測控技術,2017,36(2):107-110.
[6]杜衫杉,吳昊等.一種面向AHRS的改進互補濾波融合算法[J].國外電子測量技術,2015,34(3):13-18
[7]李翔,李明.航姿參考系統算法性能優化仿真研究[J].計算機仿真,2017,34(2):60-64.
[8]聞澤陽,許江寧,于夢琦.基于MEMS IMU的室內導航系統設計[J].艦船電子工程,2016,36,12:75-79.
[9]賈云飛,陳揚等.虛擬3D技術中攝像機云臺姿態高精度定位測試方法研究[J].測試技術學報,2016,30(3):208-214.
[10]陳淑蘭,王建勇,孟卿卿,等.城市監控聯網平臺視頻播放器[J].計算機系統應用,2017,26(3):108-113.
[11]李康,周泩樸,鄒林波,等.基于無人機的大場景序列圖像自動采集和三維建模[J].西北大學學報,2017,47(1):30-37.
[12]王臻,任海燕等.基于串口通訊的角位移傳感器校驗設備的研制[J].自動化技術與應用,2016,35(5):75-79.
Design of Video Surveillance and Tracking System Based on Attitude and Heading Reference System and PTZ cam era
YANG Jian XIE Xiaofang LIDedong
(Naval Aeronautical Engineering Institute,Yantai 264001)
Based on the AHRS(Attitude and Heading Reference System)and PTZ(Pan/Tilt/Zoom)camera,a videomonitoring and tracking system is designed.The overall structure of the system and the software design are given.The key technologies such as serialportcommunication and head attitude tracking are introduced,and the codesof the key partare given.
AHRS,PTZ camera,videomonitoring,attitude tracking
TP391.9
10.3969/j.issn.1672-9730.2017.09.016
2017年3月7日,
2017年4月25日
楊健,男,博士研究生,工程師,研究方向:軍用仿真技術,計算機視覺。