2012-02-01 27 views
7

有沒有人知道一個很好的教程或文檔,涉及在C++中混合使用OpenCVOpenGL,與Computer Vision和3D渲染相關?關於OpenGL與OpenCV結合使用的計算機視覺教程

我想用對象創建虛擬場景,然後使用OpenCV找到object's 3D poses,所以我可以與已知的OpenGL位置進行比較,但到目前爲止我沒有發現很多「質量」信息。例如,我需要opengl相機的內在參數來使用OpenCV來檢測3D世界中的物體等。

回答

4

混合OpenGL和OpenCV並沒有什麼困難。這些只是兩個庫,一個用於圖形,另一個用於計算機視覺。沒有重疊,因此您可以將兩者都包含在您的項目中。

然後,它應該是渲染一些矩形或框(或任何你想使用OpenCV定位)的問題 - 有很多的教程,然後使用glReadPixels()函數將渲染的數據複製到客戶端內存並將其傳遞給OpenCV。

沒有教程最有可能的,因爲它是那麼簡單......

+0

其實我能夠加載與OpenCV的圖片,然後將它們傳遞作爲紋理OpenGL的,然後讀取OpenGL和展示和OpenCV幀的像素。但問題不是混合它們,是我想了解一些關於如何處理相機參數的信息,紋理過濾器如何影響識別等。 – 2012-02-02 16:41:24

+1

然後,您應該可以重新提出這個問題。目前還不清楚您是否想要使用OpenGL進行3D渲染並調用OpenCV,或者是否想使用OpenGL後處理圖像並將其傳遞給OpenCV,或者是否想研究紋理插值濾鏡的效果(如雙線性濾鏡)在OpenCV識別率上。如果它是最後一個,那麼你可能根本不需要使用OpenGL,紋理過濾就像弱低通濾波器一樣工作。只需使用它。如果是第二個,那麼你需要一些關於OpenGL着色器的教程來實現你想要的效果。 – 2012-02-02 16:48:55

+1

「沒有教程很可能是因爲它太簡單了」,這是跛腳。如果真的如此,人們會認爲會有很多新手教程。 – enthusiasticgeek 2012-06-29 03:16:15