2012-07-24 24 views
0

雖然以前有很多人問過這個問題,但這不是最基本的安裝問題(答案可能很簡單)。另一個OpenCV/cvBlob和體系結構問題

好吧,我正在運行兩個OpenCV並行(2.3.1和最新的2.4)安裝,但我主要使用2.3.1。所以,我已經有cvBlob工作正常(在同一臺機器上),但我來到做一些重新安裝。 Anywho,我已經成功地建立OpenCV的和我進行了從CvBlob項目現場的變化包括OpenCV library in the CMakeLists.txt

爲了確保OpenCV的很好,我已經運行,並重新運行make和make install,以確保其在usr/local/include目錄。使用OpenCV測試應用程序工作正常,並使用file opencv_library.dylib顯示opencv庫是64位。

在問題的癥結所在,我從cvblob目錄的根目錄運行cmake .,並且都恢復正常。 make,然後sudo make install運行,我被告知一切順利。再次,file顯示libcvblob是一個64位庫,雖然我沒有使用它。

我去了一個使用opencv和cvblob的C++程序,其中包含opencv.hpp和cvblob.h的絕對路徑。

然後,這一點:

Undefined symbols for architecture x86_64: "_cvLabel", referenced from: _main in cchIl24a.o "_cvFilterByArea", referenced from: _main in cchIl24a.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status

不知道出了什麼問題,除了明顯,但它應該鏈接到OpenCV的庫,我不能看到我可能出了問題。有沒有人有任何想法?

回答

1

所有關於cvBlobLib的問題都來自舊時代,當時OpenCV沒有一個blob跟蹤器,並且有人編寫它並放到了網絡上。出於某種原因,它變得非常受歡迎。

但那是很多年前。

現在,您可以簡單地使用隨opencv捆綁在一起的隨附的SampleBlobDetector,而不用麻煩。它更成熟,更強大,功能更多。而且您不必擔心包含/鏈接問題。

+0

我很欣賞這種響應,並且我使用了樣本斑點檢測器,但是我沒有發現它與cvBlob在性能上相匹配。無論如何,儘管如此! – 2012-07-24 14:50:27