本發明涉及一種高速攝像技術領域的圖像傳輸采集方法,特別是一種無線wifi傳輸技術和圖像同步技術相結合的轉動平臺上圖像高速并行采集傳輸方法。
背景技術:
在現有的轉臺高速攝像技術中,一般都是在轉臺上安裝兩臺相機進行視覺導航。目前相機采用的是usb3.0接口,且無法向下兼容usb2.0。每個相機每幀圖像大小約為5mb,為達到視覺導航精度要求,圖像采集幀率至少要5幀/秒。因此計算得出圖像傳輸速度至少達到50mb/秒。而現有技術的轉臺滑環一般只能支持百兆以太網,實際傳輸速率約為11mb/秒,無法滿足使用要求。wifi是一種無線局域網(wlan)技術,使用wifi連接設備可以不受硬件設施和環境布線的影響。目前wifi采用的ieee802.11acwave2標準支持mu-mimo(多用戶多入多出)技術,可容納多個設備同時通信。支持該標準的無線路由、無線網卡等設備最多采用4x4mu-mimo規格,理論上可提供1.73gbps(約216mb/秒)的雙向傳輸速度。
通過改造現有技術中的轉臺,換成usb3.0的滑環或光纖滑環可以滿足數據傳輸速度要求,但成本高、工作量大,周期長。所以需要提出一種新的解決辦法,能夠滿足對相機指令控制,圖像傳輸的要求。
技術實現要素:
本發明針對上技術的不足,提出了轉動平臺上圖像高速并行采集傳輸方法,通過無線wifi傳輸技術和圖像同步技術,將數據通過并行傳輸,實現所需的帶寬,從而建立一種高速傳輸系統用于相機指令控制及圖像傳輸。
本發明是通過以下技術方案來實現的:本發明包括以下步驟:第一,在轉臺上布置兩臺視覺導航相機,并布置一臺迷你電腦主機作為圖像采集計算機,圖像采集計算機通過usb3.0接口與視覺導航相機相連接,圖像采集計算機通過網線與橋接無線路由器相連接;第二,控制計算機通過網線與主無線路由器相連接,控制計算機通過轉臺滑環與兩臺視覺導航相機相連接;第三,主無線路由器與橋接無線路由器之間通過wifi信號橋接,控制計算機和圖像采集計算機之間按照tcp/ip協議通信;第四,在圖像采集計算機和控制計算機上分別運行發送端、接收端軟件;控制計算機通過do板卡向相機發出同步脈沖信號,觸發相機實現圖像同步采集。
進一步地,在本發明中,當控制計算機通與主無線路由器之間的距離超過100m時,選擇通過以太網轉光纖后進行遠距離傳輸。
更進一步地,在本發明中,控制計算機和圖像采集計算機之間建立多個tcp連接;同一時刻兩個相機同步產生的兩幀圖像數據,將其按一定大小切分成多個數據段之后,通過多個通道并行傳輸。
更進一步地,在本發明中,每一個段數據之前需要有以下頭信息:固定標志、圖像編號、總大小、切分總段數、當前段編號、當前段大小;段數據后有校驗和,用以驗證數據的正確性。
更進一步地,在本發明中,軟件啟動后,控制計算機上的接收端軟件會主動向發送端軟件發起多個tcp連接,連接成功后,為每一個連接創建一個工作線程,用以獨立并行接收數據;相應的,發送端軟件也為每一個連接創建一個工作線程,用以獨立并行發送數據。
更進一步地,在本發明中,在發送端和接收端多個線程均采用同步鎖進行控制。
更進一步地,在本發明中,控制計算機中有一條通道用來設置相機的參數并控制其工作狀態。
與現有技術相比,本發明的有益效果是:本發明設計合理,通過無線wifi傳輸技術和圖像同步技術,將數據通過并行傳輸,實現所需的帶寬,從而建立一種高速傳輸系統用于相機指令控制及圖像傳輸。
附圖說明
圖1為本發明的流程圖;
圖2為本發明中各設備的連接示意圖。
具體實施方式
下面結合附圖對本發明的實施例作詳細說明,本實施例以本發明技術方案為前提,給出了詳細的實施方式和具體的操作過程,但本發明的保護范圍不限于下述的實施例;凡本技術領域技術人員依據本發明的構思,在現有技術基礎上通過邏輯分析、推理或有限實驗可以得到的技術方案,均在本發明權利要求書所確定的保護范圍內。
實施例
如圖1和圖2所示,在相機所在轉臺上布置迷你電腦主機作為圖像采集計算機,通過wi-fi連接無線路由器。控制計算機通過網線連接無線路由器。則兩臺計算機之間可以建立連接進行通信。圖像采集計算機通過usb3.0接口采集相機圖像后,通過wi-fi將數據傳給控制計算機。此方案不需要更改原有設備,只需添加無線路由器等設備,以及開發相應的圖像采集、轉發和接收軟件。
無線信號傳輸容易被干擾,因此盡量縮短轉臺和主無線路由器之間的距離。當控制計算機與無線路由器之間距離大于100m時,考慮傳輸的可靠性,選擇通過以太網轉光纖后進行遠距離傳輸。選用微星迷你電腦主機,具備usb3.0接口以及千兆網口,重量約為300克,尺寸為115x115x35mm。
選用tp-linkwdr8500無線路由器,支持802.11ac4x4mu-mimo規格,最高雙向傳輸速度可達1750mbps。
兩個相機的圖像數據采集、傳輸和分析都需要保持同步性。控制計算機通過do板卡向相機發出同步脈沖信號,觸發相機實現圖像同步采集。圖像采集計算機獲取到兩個相機的數據后,各自從0開始獨立編號,例如a0,a1,…,an和b0,b1,…,bn。兩個相機的圖像數據,若編號數字相同,則表示同一時刻采集。
控制計算機和圖像采集計算機之間按照tcp/ip協議通信。一般是建立一個tcp連接作為數據傳輸通道。而選用4x4mu-mimo規格的無線路由器,理論上支持多個設備同時傳輸數據,即支持多個數據通道。因此,為充分利用設備的傳輸能力,考慮在控制計算機和圖像采集計算機之間建立多個tcp連接。而同一時刻只有兩個相機同步產生的兩幀圖像數據,因此需要將其按一定大小切分成多個數據段之后,再通過多個通道并行傳輸。
在圖像采集計算機和控制計算機上分別運行發送端、接收端軟件。軟件啟動后,接收端主動向發送端發起多個tcp連接。連接成功后,為每一個連接創建一個工作線程,用以獨立并行接收數據。相應的,發送端也為每一個連接創建一個工作線程,用以獨立并行發送數據。
發送端獲取到a、b相機的圖像數據后,將其切分成多個數據段并存放在待發送隊列中。考慮a、b相機數據的傳輸同步性,其切分后的數據段在隊列中交叉排列。多個發送線程依次取出隊列中的數據段進行發送。
由于多個數據通道并行傳輸,接收端多個接收線程收到數據段的時間存在不確定性。因此,接收端為每一幀圖像數據單獨建立一個接收隊列。根據段數據的頭信息,按順序將其放入相應的隊列中。當隊列中全部段數據都完成接收后,即可將數據合并成原圖像數據。
發送端和接收端中,多個線程均采用同步鎖進行控制,保證任意時刻只有一個線程對數據隊列進行讀寫,避免沖突,確保并發訪問數據的正確性。
除了傳輸圖像數據之外,控制計算機還需要設置相機的參數并控制其工作狀態。因此,增加另一條通道用來參數數據和控制指令。