我正在使用EMGU OpenCV封裝的c#。我有一個很好地創建的差異地圖。但是對於我的具體應用,我只需要非常少的像素差異值,而且我需要它們實時。現在計算大約需要100 ms,我想通過獲得數百個像素值而不是數千個像素值的差距會大大加快。我不太瞭解立體聲解算器代碼的「底層」內容,有沒有一種方法可以通過僅計算我需要的像素的差異來加快速度?EMGU OpenCV僅在某些像素上的差異
0
A
回答
0
首先,你沒有提到你真正想要達到的目標,此外,你正在使用什麼算法。例如。與StereoSGBM和StereoBM相比,StereoGC非常慢(即不實時),但通常要準確得多)。最後兩個可以實時使用,只要滿足幾個條件即可:
- 輸入圖像的大小相當小;
- 您沒有使用一組極其繁多的參數(例如,
numberOfDisparities
的較大值會增加計算時間)。
不要指望奇蹟的準確性。
除此之外,還有「只有幾個像素」的問題。據我所知,在OpenCV中實現的算法通常依賴於來自多個像素的信息來確定差異值。例如。它需要一個鄰域來檢測圖像A中的哪個像素映射到圖像B中的哪個像素。結果,通常不可能丟棄圖像的每個其他像素(順便說一下,如果您已經知道了圖像中的位置這兩個圖像,你根本不需要立體聲方法)。所以,除非你可以放棄你的輸入圖像的大邊界,你知道你永遠不會找到你感興趣的像素,否則我會說你的問題的這個部分的答案是「否」。
如果您碰巧知道您感興趣的像素始終位於輸入圖像的某個矩形內,則可以爲該矩形指定輸入圖像ROI(感興趣的區域)。假設OpenCV在這裏不包含bug,這應該會加快計算的速度。
通過一些Google搜索,您可以找到使用EmguCV(或普通OpenCV)在Youtube上使用GPU查找立體聲對應的實時示例。也許這可以幫助你。
聲明:如果您的問題包含更多細節,這可能是一個更完整的答案。
相關問題
- 1. 在某些像素上繪製矩形openCV
- 2. Matlab與Opencv之間的圖像像素值差異
- 3. UnicodeEncodeError僅在某些PC上
- 4. OpenCV Emgu - 如何設置灰度圖像像素強度
- 5. OpenCV中像素鄰域差異的高效算法
- 6. 使用emgu的兩個圖像之間的差異
- 7. jquery.validate focusCleanup僅在某些元素
- 8. 的iAD僅在某些設備上
- 9. OPenCV增強差異
- 10. SQLiteAssetHelper僅在某些設備上出現空指針異常
- 11. 矩陣形式的像素OpenCV中的圖像之間的差異
- 12. 像素大小差異
- 13. Emgu OpenCV Intptr到IplImage?
- 14. 如何僅在某些元素上投射箱子陰影
- 15. SQLiteException - 僅發生在某些設備上
- 16. Resources.NotFoundException僅在某些設備上
- 17. 僅在某些頁面上使用SSL?
- 18. 僅在某些設備上顯示ImageView
- 19. 在openCV中設置某個圖像中的像素的RGB值
- 20. 的OpenCV houghcircles差異C C++
- 21. rgb2lab OpenCV的差異和MATLAB
- 22. 僅顯示某些元素XML文件
- 23. 動畫:僅適用於某些元素
- 24. Emgu中的OpenCV Bitwise_and函數
- 25. 使用OpenCV(Emgu)的PGH
- 26. 獲取兩幅圖像之間差異的圖像蒙版Emgu CV
- 27. 某些行與下一行中的特定像素在連接某些像素的圖像Matlab的
- 28. 差異(有些)
- 29. 差異添加在numpy的和OpenCV
- 30. 僅在某些環境