九之續、sift演算法的編譯與實現
為了給有興趣實現sift演算法的朋友提供個參考,特整理此文如下。要了解什麼是sift演算法,請參考:九、影象特徵提取與匹配之sift算法。ok,咱們下面,就來利用rob hess維護的sift 庫來實現sift演算法:
請按以下步驟操作:
一
二、安裝opencv1.0,配置windows環境變數
1、安裝注意:假如你是將opencv安裝到c:/program files/opencv(如果你安裝的時候選擇不是安裝在c盤,則下面所有對應的c盤都改為你所安裝在的那個「x盤
」,即可),在安裝時選擇"將/opencv/bin加入系統變數",打上「勾」。(add/opencv/bin to the systerm path。這一步確認選上了之後,下面的檢查環境變數的步驟,便可免去)
2、檢查環境變數。為了確保上述步驟中,加入了系統變數,在安裝opencv1.0成功後,還得檢查c:/program files/opencv/bin是否已經被加入到環境變數path,如果沒有,**入。
3、最後是配置visual c++ 6.0。
全域性設定
選單tools->options->directories:先設定lib路徑,選擇library files,在下方填入路徑:
c:/program files/opencv/lib
然後選擇include files,在下方填入路徑(參考下圖):
c:/program files/opencv/cxcore/include
c:/program files/opencv/cv/include
c:/program files/opencv/cvaux/include
c:/program files/opencv/ml/include
c:/program files/opencv/otherlibs/highgui
c:/program files/opencv/otherlibs/cvcam/include
最後選擇source files,在下方填入路徑:
c:/program files/opencv/cv/src
c:/program files/opencv/cxcore/src
c:/program files/opencv/cvaux/src
c:/program files/opencv/otherlibs/highgui
c:/program files/opencv/otherlibs/cvcam/src/windows
專案設定
每建立乙個將要使用opencv的vc project,都需要給它指定需要的lib。選單:project->settings,然後將setting for選為all configurations,然後選擇右邊的link標籤,在object/library modules附加上:
cxcore.lib cv.lib ml.lib cvaux.lib highgui.lib cvcam.lib
當然,你不需要這麼多lib,你可以只新增你需要的lib(見下圖)
三。在編譯時候gsl也是和opencv一樣要把頭檔案和lib的路徑指定好。
四、配置gsl
將c:/wingsl/bin中的wingsl.dll和wingsld.dll複製到c:/vc6.0/bin;將整個gsl目錄複製到c:/vc6.0/bin下;lib目錄下的所有.lib檔案全部複製到c:/vc6.0/lib下。
然後,在tools-options-directories中,將c:/wingsl下的lib,gsl分別加入到庫檔案和標頭檔案的搜尋路徑中。
以下是可能會出現的錯誤情況處理:
i、opencv安裝後「沒有找到cxcore100.dll」的錯誤處理
在安裝時選擇「將/opencv/bin加入系統變數」(add/opencv/bin to the systerm path)。 但該選項並不一定能成功新增到系統變數,如果編寫的程式在執行時出現「沒有找到cxcore100.dll,因為這個應用程式未能啟動。重新安裝應用程式可能會修復此問題。」的錯誤。
手動在我的電腦->屬性->高階->環境變數->系統變數->path新增c:/program files/opencv/bin;新增完成後需要重啟計算機。
ii、vc6.0下配置了一下,可是編譯程式時遇到如下乙個錯誤:
linking... link : fatal error lnk1104: cannot open file"odbccp32.libcxcore.lib"
可能是:在工程設定的時候新增連線庫時沒加空格或.來把兩個檔名(odbccp32.lib cxcore.lib)分開。注意每一次操作後,記得儲存。
經典演算法研究系列 九之續 sift演算法的編譯與實現
九之續 sift演算法的編譯與實現 為了給有興趣實現sift演算法的朋友提供個參考,特整理此文如下。要了解什麼是sift演算法,請參考 九 影象特徵提取與匹配之sift算法。ok,咱們下面,就來利用rob hess維護的sift 庫來實現sift演算法 請按以下步驟操作 一 二 安裝opencv1....
經典演算法研究系列 九之續 sift演算法的編譯與實現
九之續 sift演算法的編譯與實現 為了給有興趣實現sift演算法的朋友提供個參考,特整理此文如下。要了解什麼是sift演算法,請參考 九 影象特徵提取與匹配之sift算法。ok,咱們下面,就來利用rob hess維護的sift 庫來實現sift演算法 請按以下步驟操作 一 二 安裝opencv1....
SIFT演算法系列之特徵點檢測
特徵點檢測演算法簡述 說到特徵 feature 可能包含許多種類 常用的影象領域的主要特徵有顏色特徵 紋理特徵 形狀特徵 空間關係特徵。其實不論哪種特徵,其特徵的描述或者表達的主要思路在於 通過特徵的提取表達來區分影象的資訊。特徵點可以理解為是影象中變化較大的資訊區域,具有獨特性。為什麼要把影象中的...