讓10GigE機器視覺(jué)變得可靠且經(jīng)濟實(shí)惠-包括多攝像頭設置

概述
快速檢測線(xiàn)、半導體工廠(chǎng)、智能交通系統、運動(dòng)分析和容積捕捉等多種視覺(jué)系統應用場(chǎng)景都需要高分辨率、高 FPS 和高數據傳輸率來(lái)達到更好的結果。對于希望利用幀率更快和分辨率更高的機器視覺(jué)攝像頭來(lái)改進(jìn)輸出的視覺(jué)系統工程師來(lái)說(shuō),從 1GigE 升級到 10GigE 是顯而易見(jiàn)的選擇。然而,根據 AIA(自動(dòng)成像協(xié)會(huì ))的研究,其采用相當緩慢??紤]到這種升級帶來(lái)的三個(gè)技術(shù)挑戰:可靠性(丟包)、高 CPU 使用率和高延遲,這一點(diǎn)可以理解。本文介紹了 Teledyne FLIR Oryx + Myricom 捆綁解決方案如何解決這些挑戰。
更新1:完美的性能
雖然 10GigE Vision 的帶寬比 GigE Vision 協(xié)議高 10 倍,但 10GigE 主機適配器性能卻并未相應提高。從攝像頭向主機的數據傳輸通常會(huì )導致 CPU 過(guò)載,造成應用程序緩沖區溢出,以及對于要求苛刻的應用程序而言不可接受的丟包水平。
通過(guò)利用主機適配器直接在卡上處理數據包接收和圖像重建,CPU 就不再需要管理這些任務(wù)。Teledyne FLIR Oryx + Myricom 捆綁解決方案專(zhuān)為應對此類(lèi)情況而設計。如我們下方的測試結果所示,系統可靠性可大幅提高,從而顯著(zhù)減少丟包,進(jìn)而減少丟幀。
該捆綁解決方案可與我們全新的定制 SDK 驅動(dòng)程序無(wú)縫結合,專(zhuān)門(mén)用于處理 Myricom 卡提供的數據。通過(guò)這種組合,可以完美、可靠地將圖像數據從攝像頭傳輸到主機 PC 上。檢測結果見(jiàn)下方附錄:可靠性和 CPU 使用率測試。
Teledyne FLIR Oryx + Myricom 捆綁解決方案的高性?xún)r(jià)比使其成為顯而易見(jiàn)的選擇;與分別購買(mǎi)硬件再集成相比,這是一種經(jīng)濟實(shí)惠且高度可靠的設置。
更新2:CPU 使用率可管理
理論上,CPU 最高可以用一個(gè)內核的 100% 來(lái)處理從 10GigE 接入的輸入數據,并且在運行多個(gè)應用程序/攝像頭時(shí)可以使用多個(gè)內核。通過(guò)使用 Myricom 卡來(lái)管理數據包接收和圖像重建,每個(gè)應用程序的 CPU 使用率可以低至 1%,從而可以將更多的 CPU 周期用于圖像處理。檢測結果見(jiàn)下方附錄:可靠性和 CPU 使用率測試
更新3:延遲縮短
10GigE Vision 的幀延遲不是確定的;這意味著(zhù)幀的到達可能伴隨顯著(zhù)的時(shí)基抖動(dòng)。在某些情況下,特別是對于交換機,不僅存在丟包,有時(shí)幀的接收會(huì )出現逆序現象。Teledyne FLIR Oryx + Myricom 捆綁解決方案通過(guò)及時(shí)通知幀完成以縮短延遲,以及減少時(shí)基抖動(dòng)來(lái)解決這個(gè)問(wèn)題。
附錄:可靠性和 CPU 使用率測試
測試1:高帶寬 7 天串流
使用通過(guò) Teledyne FLIR Spinnaker API 創(chuàng )建的定制控制臺應用程序,設置由 890 萬(wàn)像素 Teledyne FLIR Oryx 攝像頭來(lái)連續捕捉圖像,并跟蹤任何不完整的圖像,無(wú)額外的處理或第三方資源密集型程序同時(shí)運行。
測試結果:采集約 4000 萬(wàn)幀圖像;檢測到 0 幀不完整/丟失的圖像。
注:在整個(gè) 7 天的測試期間檢查了 CPU 使用率,發(fā)現始終保持在 1%。在停用新的 Myricom 驅動(dòng)程序,僅依靠 FLIR 標準濾波器驅動(dòng)器的情況下,專(zhuān)門(mén)用于應用程序的 CPU 核心的 CPU 使用率保持在大約 100% 的水平。
測試2:雙攝像頭串流
該測試包括在同一定制控制臺應用程序中運行的兩臺 Oryx 攝像頭(ORX-10G-123S6M 和 ORX-10G-89S6C),每臺攝像頭的帶寬為 6.7 Gb/s,連續運行 24 小時(shí)。
測試結果:每個(gè)攝像頭采集約 600 萬(wàn)幀圖像;檢測到 0 幀不完整/丟失的圖像
測試3:24 小時(shí) CPU 壓力測試
該測試包括一臺 Oryx 攝像頭(ORX-10G-123S6M),其設置與測試 1 相同。
使用了與測試 1 相同的控制臺應用程序,但這次同時(shí)使用了另一個(gè)應用程序;該定制應用程序旨在模擬高工作負荷,CPU 的總使用率約為 90%(所有八個(gè)內核)。
測試結果:采集約 600 萬(wàn)幀圖像;檢測到 0 幀不完整/丟失的圖像
測試系統硬件和軟件規格:
i7-9700k @ 3.6GHz | 16GB | Windows 10 1809
Teledyne FLIR Spinnaker 2.1.0.82 和 PGRLwf 2.7.3.397 與帶 Myricom 支持的定制 2.3.0.x 版本
Oryx ORX-10G-123S6M
Oryx ORX-10G-89S6C
評論