我正在為一些影像處理例程編寫 C++/opencv 程式碼,並使用我的 Dell Precision 7730 自己的網路攝影機來取得測試視訊輸入。顯示卡是Quadro P5200。
我開始在 Windows 10 中使用 VSE 2015 和 opencv 4.1.0。在那裡,我可以捕獲 1280x720 網路攝影機視訊並以 30fps 或相機輸出的任何速率顯示它。
但我最近切換到帶有Eclipse 的Ubuntu 18.04(安裝在第二個SSD 上),因為使用我們實際的外部原型相機(通過UDP 數據包將視頻發送到以太網端口),Windows 丟棄了太多接收數據包。 (這是稍後要解決的另一個問題,但 Ubuntu 不會導致任何丟包——我們可以以 30fps 的速度接收和顯示這些資料包。)
然而現在在 Ubuntu 中,網路攝影機使用基本相同的 C++ 程式碼限制為 < 10fps。即使我除了捕獲 (cap >> Mat) 和顯示 (imshow) 之外什麼都不做,它的速度也經常下降到 7.5fps 左右。
然而 Ubuntu 應用程式 Cheese 似乎沒有這個問題,幀速率看起來是 30fps。
有誰知道 Ubuntu 中會發生什麼情況來將網路攝影機幀速率降低到自訂 opencv 應用程式中?以及如何修復?
注意為了 Ubuntu 的穩定性,我在 BIOS 中關閉了可切換顯示卡,但我認為這只會有幫助。