視頻融合在遙操作機器人系統(tǒng)中的應用
1 系統(tǒng)總體結構
針對以上情況,本文提出采用建立標準坐標系使仿真機器人和反饋視頻在同一界面融合的方法,仿真模型預演作業(yè)任務而反饋視頻則跟蹤其軌跡進行作業(yè),通過兩者對比及時發(fā)現機器人作業(yè)情況,一旦越界違規(guī)立刻停止。操作者也能根據兩者的比較了解現場環(huán)境,如出現障礙物或機器人傷人事件時,立刻做出下一步命令以避免危險發(fā)生。系統(tǒng)總體結構如圖1所示。具體工作流程:攝像頭采集真實機器人的視頻數據傳送到服務器端圖像采集卡的靜態(tài)內存中對其進行H.263壓縮,視頻數據壓縮后經網絡傳輸送到客戶機端??蛻魴C對數據進行解壓、還原、顯示、在仿真模型界面顯示視頻使兩者融合,同時客戶機實現操作界面程序編寫。操作界面包括視頻融合模塊、視頻處理模塊和控制模塊。視頻融合模塊對視頻進行相應的坐標變換后使其同仿真機器人在一個界面上重合顯示。視頻處理模塊包括視頻放大、視頻縮小、視頻保存、打開視頻、視頻截圖、存位圖、存JPEG圖、打開位圖、打開JPEG圖等功能。仿真三維立體模型采用3DSMAX建立,在OPENGL編程環(huán)境下對其進行相應的繪制及控制。反饋視頻數據經壓縮、傳輸、解壓、相應的坐標變換及比例縮放后在客戶端顯示。服務器完成視頻采集、壓縮、存儲、傳輸。客戶機完成仿真模型控制、解壓、顯示視頻,以及對視頻進行相應的放大、縮小、截圖、保存。由于網絡傳輸存在延時,而且這種延時除了傳輸指定距離所需的固定延時及指令執(zhí)行延時外,還有一些隨機擾動延時,如果這種延時不能夠及時發(fā)現,操作者根據視頻反饋會做出錯誤判斷。根據這種情況在客戶端繪制接收數據字節(jié)曲線,可形象直觀地觀察到網絡狀況對視頻傳輸的影響,如圖2所示。
控制模塊如圖3所示,包括每個關節(jié)的啟動、停止按鈕、速度輸出及速度變量輸出顯示。
2 仿真模型建立及視頻融合實現
2.1 通信建立與視頻傳輸
網絡通信分為同步方式和異步方式。同步方式是發(fā)送方不等接收方響應,便接著發(fā)下一個數據包的通信方式;異步方式是發(fā)送方發(fā)出數據后,等收到接收方發(fā)回的響應,才發(fā)下一個數據包的通信方式。本系統(tǒng)開發(fā)的是客戶端/服務器(C/S)結構的軟件,該軟件是異步非阻塞模式。此模式的優(yōu)點是既可以同步執(zhí)行,也可以重疊執(zhí)行。圖像在網絡中傳輸時,不可避免地要牽涉到傳輸協(xié)議的問題。TCP/IP是一組協(xié)議,其中底層的協(xié)議TCP和UDP對于圖像的傳輸起著至關重要的作用。TCP是面向連接的,即在端與端的通信中,TCP協(xié)議建立一條端與端之間的虛電路。UDP是一種面向無連接的,它取消了重傳校驗機制,能夠達到很高的通信效率,很適合于可靠性要求不高的數據傳輸。由于本機器人系統(tǒng)對視頻的丟幀情況要求不高,故采用客戶/服務器模式的UDP協(xié)議方式。視頻傳輸采用UDP傳輸,建立Socket類直接傳輸圖像數據,客戶端調用自寫show函數在OPENGL編程環(huán)境下繪制反饋視頻,實現視頻再現。系統(tǒng)中,使用MFC來開發(fā)通信程序及操作界面。這是因為MFC主要是基于窗口和文檔的應用軟件編程,它集成了大量的數據和方法,將許多煩瑣的任務,如應用程序初始化、文檔處理和磁盤I/O封裝起來,為使用者的編程帶來了巨大的方便。
2.2 仿真機器人模型繪制
采用3DSMAX建立MOTOMAN機器人三維仿真機器人模型后,采用Deep Explortation轉換軟件轉換成VC代碼,在VC的工程設置中加入OPENGL的鏈接庫,建立工程并調用轉化的仿真機器人代碼。在創(chuàng)建、裝入、相乘模型變換和投影變換矩陣時都用到堆棧操作,一般來說,矩陣堆棧常用于構造具有繼承性的模型,即由一些簡單目標構成的復雜模型。MOTOMAN機器人仿真模型中,復雜的機械手臂是由多個簡單的長方體依據繼承關系構成的,而這種繼承關系由矩陣堆棧順序決定。機械手臂、關節(jié)、底座均按照實際機器人的比例進行相應縮放。規(guī)定好了底座的坐標系后,其他關節(jié)、手臂則根據自身的立體尺寸就能計算出坐標位置進行繪制。本機器人模型由3層支撐底座、4個旋轉關節(jié)、1個橫梁、1個豎柱、手爪及其他一些零部件構成,仿真機器人模型如圖4(a)所示。它的繼承性表現在當末端執(zhí)行器手爪運動時(如垂直上升),首先是關節(jié)3向上啟動,然后關節(jié)2向手爪方向轉動,接著是關節(jié)1微轉,整個機器人垂直平移,如此進行下去,整個機器人協(xié)調配合保持末端執(zhí)行器(手爪)垂直上升。三維模型在OPENGL中的顯示流程是:世界坐標系中的三維物體經三維幾何變換后投影并進行三維裁剪及視口變換,最后在屏幕坐標系中顯示圖形。
2.3 視頻融合及控制實現
仿真機器人底座視點坐標系確定后,視頻機器人根據仿真機器人的大小進行縮放繪制,使底座同仿真機器人底座在一個坐標位置。視頻中機器人的其他部分同底座一樣進行相應的映射,因此,初始時刻視頻和仿真模型的關節(jié)、視角位置是基本重合的。視頻融合界面通過VC控件SLIDER調節(jié)視頻透明度,操作者根據實際情況選擇清晰度,也可以將反饋視頻設置成完全透明(此時只能看到模型而看不到視頻)。本仿真機器人在OpenGL三維編程中實現3DSMAX數據模型的程序控制。3DSMAX是一種簡便快捷的建模軟件,比同類軟件進一步完善了建模功能,更側重于復雜模型的建模,可以很容易地用C++和OpenGL結合實現圖形學算法,再把本算法作為插件嵌入3DSMAX環(huán)境中,而不用考慮物體模型的生成和處理的復雜代碼,利用3DSMAX的渲染計時器可以方便地檢驗所編算法的效率和效果[12]。在仿真機器人制作時應遵循一個原則:在能夠保證視覺效果的前提下,盡量采用比較簡單的模型,而且若能夠用參數化方法構建的對象盡量用參數化方法構建。同時,在模型創(chuàng)作過程中,對模型進行分割、獨立建模,以利于進行操作和考察。仿真機器人視頻融合前后對比如圖4所示??刂瞥绦驅崿F仿真模型控制,控制過程是:按下相應操作按鈕,2個線程同時運行,1個線程將控制指令傳送到仿真模型使虛擬機器人運動,另1個線程將控制命令通過網絡傳輸送到服務器控制真實MOTOMAN機器人完成一致作業(yè)。在仿真模型和視頻融合界面中,模型走過的軌跡在程序中用紅線標定(為方便觀察者,紅色軌跡線采用10個像素的粗實線繪制),反饋視頻隨后跟蹤此軌跡運行,操作者觀察視頻中機器人的運行情況并判斷運行是否達標及決策下一步。
該視頻融合方法應用于遙操作機器人系統(tǒng)中,能夠使控制者準確判斷機器人作業(yè)精準度,同時將傳統(tǒng)的遙操作機器人視頻監(jiān)控及仿真預測相結合,提出將視頻融合應用于遙操作機器人技術中。實驗結果表明,這種方法對于精準度要求高的機器人系統(tǒng)非常實用,將來可以將該視頻融合方法拓展在搶險救災、災情調查、工程運行、水利監(jiān)測、城市調查中,除了能對現場完成監(jiān)測錄像、圖像傳輸等功能外,還可以比較預測與實際的差異。
參考文獻
[1] 高永生.基于Internet多機器人遙操作系統(tǒng)安全機制的研究[D].哈爾濱:哈爾濱工業(yè)大學,2008:15-19.
[2] 黃繼偉.遙操作機器人系統(tǒng)及其夾持器抓取算法研究[D].南京:東南大學,2008:12-15.
[3] 王學謙,梁斌,李成,等.自由飛行空間機器人遙操作三維預測仿真系統(tǒng)研究[J].宇航學報,2009(1):2-3.
[4] 蔣再男,劉宏,謝宗武,等.3D圖形預測仿真及虛擬夾具的大時延遙操作技術[J].西安交通大學學報,2008(1):2-3.
[5] 鄭云輝,鄭偉,席寧,等.基于無線網絡的足球機器人遙操作系統(tǒng)[J].計算機應用,2008(1):2-3.
[6] 譚明金.Visual C++圖形編程技巧與實例[M].北京:人民郵電出版社,2002.
[7] 張海燕,王東木,宋克歐,等.圖像壓縮技術[J].系統(tǒng)仿真學報,2002,14(7):831-835.
[8] 沈潔,杜宇人,殷玲玲,等.基于DCT變換的圖像壓縮技術研究[J].信息技術,2006(10).
[9] 郭海靜,葛萬成.基于DCT與SPIHT的數字圖像壓縮技術研究[J].信息技術,2005(12):2.
[10] ABEYTA A M, FRANKLIN J. The accuracy of vegetation stand boundaries derived from image segmentaion in a desert environment[J]. Photogrammetric Engineering and Remote Sensing, 1998,64(1):60-64.
[11] AFEK Y, BRAND A. Mosaicking of orthorectified aerial images[J]. Photogrammetric Engineering and Remote Sensing, 1998,64(2):116-120.
[12] 王愛民,許志峰.基于3DSMAX和OpenGL的遙操作機器人圖形建模[J].工業(yè)儀表與自動化裝置學報,2007(4):2-3.