這一系列博文, 也是個人圖像處理入門之路.
慶幸的是, 我站在不少巨人的肩膀上, 比較順利的到達了一個小里程碑.
難過的是, 我說"比較順利"是由於從互聯網氾濫的信息裏面找到真正有用同時又在個人理解範圍以內的資料, 不是一件很容易的事情.
因此, 我想讓更多的和我同樣的入門者, 能經過這一系列博文, 順利的"進入"到圖像處理來而不是被開始的荊棘嚇走.
若是有一個朋友由於我而更"容易"入門到實用圖像處理, 我便以爲我作的事情有意義, 也是我繼續寫下去的動力.
正如日誌標題所說, 這一系列日誌很是偏重於"實用", 而不多提到原理. 顯而易見的目的就是想讓任何一個有一點coding經驗的人都能快速的構建本身的分類器對圖像進行識別. 固然, 若是你想深刻了解, 每篇日誌都有"擴展閱讀". 爲了避免打斷本來的"實用主義"的節奏, 我把這些」擴展閱讀」都放在了日誌末尾.vim
步驟一, 打開環境變量設置界面.安全
方法一: 開始 –> 控制面板 –> 系統和安全 –> 系統 –> 高級系統設置 –> 高級 –> 環境變量ide
方法二: 開始 –> 控制面板, 右上角搜索」環境變量」, 點擊」編輯系統環境變量」-> 環境變量測試
上述操做以後可看到如下界面:ui
步驟二, 點擊按鈕1( 如上圖所示「新建」),spa
變量名填寫」opencv」..net
變量值填寫」{opencv}/build/x86/vc11/bin」. ( {opencv} 替換爲你本身的opencv安裝目錄" )debug
關閉上圖」新建用戶變量」窗口3d
步驟三, 在上上圖」環境變量」窗口找到變量」path」( 大小寫不敏感 ). 點擊按鈕2( 如上上圖所示」編輯」 )日誌
更改」變量值」, 在原有的變量值基礎上, 增長」;%opencv%」. 點擊肯定.
下一步, 注意下面幾個選項.
完成 項目建立
2.3.3.1 步驟一, 新建 Property Sheet.
在VS最左側找到 「Property Manager」( 屬性管理 ) 選項卡, 以下圖所示. ( 若是沒有找到」Property Manager」. 點擊菜單欄 「VIEW」 –> 「Property Manager」 便可看見 )
以下圖所示, 在 「Debug|Win32」 上右鍵單擊, 點擊」Add New Project Property Sheet」
填寫如下標註內容.
Name 隨便寫, 只要你能認識
Location 隨便寫, 只要你能找到.
點擊」Add」完成建立.
2.3.3.2 步驟二, 編輯 Property Sheet 屬性
以下圖所示, 編輯 「opencv244」 的屬性.
作如下編輯:
Include Directories 添加 「{opencv}\build\include」.
Library Directories 添加 「{opencv}\build\x86\vc11\lib」; ( {opencv} 替換爲你的opencv安裝路徑 )
圖下圖所示, 點擊」Linker –> Input –> Additional Dependencies」.
添加如下內容:
opencv_core246d.lib
opencv_imgproc246d.lib
opencv_highgui246d.lib
opencv_ml246d.lib
opencv_video246d.lib
opencv_features2d246d.lib
opencv_calib3d246d.lib
opencv_objdetect246d.lib
opencv_contrib246d.lib
opencv_legacy246d.lib
opencv_flann246d.lib
上面的」246」換成你下載的opencv版本.好比你的版本是2.4.4, 那麼全部的246換成244便可.
完成設置
2.3.3.4. 設置 Release 屬性
完成」設置項目屬性」以後, 你的debug版本即可正常使用. 若是須要設置 release 版本. 重複上面步驟3.
中間有兩處不一樣:
1. 在步驟2.3.3.1中, 須要對 「Release |Win32」 添加 Property Sheet.
2. 在步驟2.3.3.2 中 全部Additional Dependencies 項, XXX246d.lib 都去掉 「d". 好比 「opencv_core246d.lib」 變成」opencv_core246.lib」. 所有去掉後變成:
opencv_core246.lib
opencv_imgproc246.lib
opencv_highgui246.lib
opencv_ml246.lib
opencv_video246.lib
opencv_features2d246.lib
opencv_calib3d246.lib
opencv_objdetect246.lib
opencv_contrib246.lib
opencv_legacy246.lib
opencv_flann246.lib
2.3.4.1. 新建 main.cpp. 填寫如下代碼
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#include <opencv2/opencv.hpp>
using
namespace
cv;
int
main()
{
Mat img = imread(
"../img.png"
);
if
(img.empty())
{
fprintf
(stderr,
"Error: load image failed."
);
return
-1;
}
namedWindow(
"image"
, CV_WINDOW_AUTOSIZE);
imshow(
"image"
, img);
waitKey();
return
0;
}
|
2.3.4.2 隨便找張圖片, 放到放到你的工程目錄, 命名爲 img.png:
2.3.4.3 RUN~~
Contradulations~