1. 程式人生 > >opencv安裝完成,測試時出現沒有為opencv_core2410d.dll載入符號問題的解決

opencv安裝完成,測試時出現沒有為opencv_core2410d.dll載入符號問題的解決

按網上正常的步驟完成vs2010上opencv的安裝,然後就是興奮的開始測試程式設計了,但是一個坑爹的問題讓我糾結了半天。話不多說,先還原問題。
測試的原始碼如下:

    #include<iostream>  
    #include <opencv2/core/core.hpp>  
    #include <opencv2/highgui/highgui.hpp>

    using namespace std;
    using namespace cv;

    int main()  {  

        Mat img=imread("psu.jpg"
); cvNamedWindow("遊戲原畫"); imshow("遊戲原畫",img); waitKey(10000); return 0; }

然後測試的時候就出現瞭如下的問題
這裡寫圖片描述

就是opencv_core2410d.dll這個檔案的問題,在網上搜了各種方法,說什麼許可權和圖片絕對路徑什麼的原因了,都嘗試過了,全都不行,而且安裝配置我也重新弄了兩三遍,還是不對,整的我都要崩潰了。

最後我忘記從哪看到了一段程式碼中,檔案路徑中目錄之間使用的是雙斜槓”\”,而不是單斜槓”\”。如我的程式碼中絕對路徑為F:\opencv\test\psu.jpg,然後我改成了F:\\opencv\test\\psu.jpg

這個路徑方式,跑了一下,發現竟然跑通了。

我後面上網查了一下這個問題,發現opencv中讀取檔案路徑時,預設把”\”讀取為轉義字元,所以如果要得到正確的檔案路徑,在寫路徑的時候應該使用”\\”的方式。

最後看來,這個問題的根本原因還是在於檔案路徑的問題,雖然網上有些部落格提到了路徑,但並沒有說明路徑格式的問題,所以對於新手來說,我們就鑽入了一個死衚衕。

希望我的這篇文章對想學opencv的新手有所幫助吧,至少能夠避免這個坑。