@(圖形圖像)[opencv]
視頻鏈接
01 - Getting Setup in Visual Studio 2015 for Windows Desktop
環境配置
- 搭建環境變量:
OPENCV3_DIR
,值爲...\opencv\build
Path
,值爲...\opencv\build\x64\vc14\bin
- VS裏新建project:Visual C++ — Win 32 Console Application(VS 2017版本里要選Windows Desktop Wizard) — Empty project
- Solution Explorer裏給source files裏add一個main.cpp
- 用x64來build
- 右擊 Solution Explorer裏的該project名—Properties
- C/C++—Additional Include Directories—
$(OPENCV3_DIR)\include
。注意這一步之前一定已經添加了main.cpp,否則沒有這個選項。 - Linker—Additonal Library Directories—
$(OPENCV3_DIR)\x64\vc14\lib
- Linker—Input—Additional Dependencies—opencv_world330d.lib(注意這裏的文件名以自己的版本爲準)
- C/C++—Additional Include Directories—
示例代碼-show a picture
此爲相對路徑,圖片放在該project的main.cpp同級目錄下
#include "opencv2\opencv.hpp"
using namespace cv;
int main(int argc, char **argv)
{
Mat a = imread("test.jpg", CV_LOAD_IMAGE_UNCHANGED);
imshow("title", a);
waitKey();
return 0;
}
02 - Loading, Showing, Saving
#include "opencv2\opencv.hpp"
using namespace cv;
int main(int argc, char **argc)
{
Mat testColor = imread("test.jpg", CV_LOAD_IMAGE_COLOR);
Mat testGray = imread("test.jpg", CV_LOAD_IMAGE_GRAYSCALE);
imshow("color", testColor);
imshow("gray", testgray);
imwrite("output.jpg", testGray);
return 0;
}
03 - Windows
- namedWindow提供比imshow更爲精確的控制。
- namedWindow的第一個參數是一個string的handle,若該string第一次出現,則它指向一個新建的window,否則指向前面創建過的window。
- namedWindow的第二個參數是一個flag,代表此window的呈現方式,以
CV_WINDOW
開頭,可按照字面意思理解功能。比如:
CV_WINDOW_AUTOSIZE
自動設定呈現的固定的圖像大小,用戶不可改變。CV_WINDOW_FREERATIO
和CV_WINDOW_KEEPRATIO
設定是否保持長寬比。
- 創建完namedWindow之後它並沒有數據,只是空的window。
- 使用imshow在namedWindow中添加Matrix數據,具體見示例代碼。
#include "opencv2\opencv.hpp"
using namespace cv;
int main(int argc, char **argv)
{
Mat file1 = imread("lena.tif", CV_LOAD_IMAGE_UNCHANGED);
Mat file2 = imread("lena.tif", CV_LOAD_IMAGE_GRAYSCALE);
namedWindow("Color", CV_WINDOW_FREERATIO);
namedWindow("Fixed", CV_WINDOW_AUTOSIZE);
imshow("Color", file1);
imshow("Fixed", file2);
waitKey();
return 0;
}