OpenCV 學習筆記(1)WIN10+ VS2013 配置Opencv2413 64位


VS2013 配置Opencv2413  64位

系統變量 Path:  F:\2biancheng_tool\Opencv2413\opencv\build\x64\vc12\bin

用戶變量:添加opencv變量,值: F:\2biancheng_tool\Opencv2413\opencv\build

 

工程目錄的配置(Debug)

 

找到屬性管理器,如果找不到,請安裝下圖方法找到。雙擊Debug |X64打開如下窗口,

 

 

設置如下:(下圖紅框項為設置項)

0 可執行目錄

F:\2biancheng_tool\Opencv2413\opencv\build\x64\vc12\bin

 

1、包含目錄:(VC++目錄)

 

F:\2biancheng_tool\Opencv2413\opencv\build\include

F:\2biancheng_tool\Opencv2413\opencv\build\include\opencv

F:\2biancheng_tool\Opencv2413\opencv\build\include\opencv2

 

2、庫目錄:(VC++目錄)

F:\2biancheng_tool\Opencv2413\opencv\build\x64\vc12\lib

可選配置 VS SDK(如果報錯缺少kernel32.lib)

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64

 額外聲明:如果添加了還是提示缺少文件,那可能是VS沒安裝好導致環境windos sdk 環境配置出現問題,重新用微軟官網資源安裝一遍,不要隨便亂用VS2013安裝源。

 

3、連接器->輸入->附加依賴項:

 

opencv_ml2413d.lib
opencv_calib3d2413d.lib
opencv_contrib2413d.lib
opencv_core2413d.lib
opencv_features2d2413d.lib
opencv_flann2413d.lib
opencv_gpu2413d.lib
opencv_highgui2413d.lib
opencv_imgproc2413d.lib
opencv_legacy2413d.lib
opencv_objdetect2413d.lib
opencv_ts2413d.lib
opencv_video2413d.lib
opencv_nonfree2413d.lib
opencv_ocl2413d.lib
opencv_photo2413d.lib
opencv_stitching2413d.lib
opencv_superres2413d.lib
opencv_videostab2413d.lib

 

其實以上都是D:\Program Files\opencv\build\x86\vc12\lib下所有的lib文件,你會發現,有的后面帶上d,有的沒有d,這是因為Debug的就有d,Release則沒有d。

 

工程目錄的配置(Release)

 

其他與Debug一樣,只是連接器->輸入->附加依賴項不一樣,設置如下:

 

opencv_objdetect2413.lib
opencv_ts2413.lib
opencv_video2413.lib
opencv_nonfree2413.lib
opencv_ocl2413.lib
opencv_photo2413.lib
opencv_stitching2413.lib
opencv_superres2413.lib
opencv_videostab2413.lib
opencv_calib3d2413.lib
opencv_contrib2413.lib
opencv_core2413.lib
opencv_features2d2413.lib
opencv_flann2413.lib
opencv_gpu2413.lib
opencv_highgui2413.lib
opencv_imgproc2413.lib
opencv_legacy2413.lib
opencv_ml2413.lib

 

測試代碼一 讀取圖片

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

using namespace cv;
using namespace std;

int main()
{
	//讀入圖片,注意圖片路徑
	//Mat image = imread("D:\\Picture\\lena.jpg");
	Mat image = imread("timg.jpg");
	

	//圖片讀入成功與否判定
	if (!image.data)
	{
		cout << "you idiot!where did you hide lena!" << endl;

		//等待按鍵
		system("pause");
		return -1;
	}

	//創建一個名字為“Lena”的圖像顯示窗口,(不提前聲明也可以)
	namedWindow("Lena", 1);

	//顯示圖像
	imshow("Lena", image);

	//等待按鍵
	waitKey();
	return 0;
}

  

 

 測試二 讀取視頻

 

 

#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;

int main()
{
	VideoCapture capture("C:\\Desktop\\1.avi");//讀入視頻文件

	while (1)//循環顯示每一幀
	{
		Mat frame;
		capture >> frame;
		namedWindow("未處理視頻");
		imshow("未處理視頻", frame);
		waitKey(30);

		Mat edges;
		cvtColor(frame, edges, CV_BGR2GRAY);//邊緣化處理視頻
		blur(edges, edges, Size(7, 7));
		Canny(edges, edges, 0, 30, 3);
		namedWindow("處理后視頻");
		imshow("處理后視頻", edges);
		waitKey(30);
	}
	return 0;
}

  

測試三 1 讀取實時視頻

#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;

int main()
{

	VideoCapture capture(0);//從攝像頭讀入圖像
	Mat edges;
	while (1)
	{
		Mat frame;
		capture >> frame;
		namedWindow("未處理圖像");
		imshow("未處理圖像", frame);

				if (waitKey(30) >= 0)
			break;
	}
	return 0;
}

測試三 2 讀取實時視頻  邊緣檢測

#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;

int main()
{

	VideoCapture capture(0);//從攝像頭讀入圖像
	Mat edges;
	while (1)
	{
		Mat frame;
		capture >> frame;
		namedWindow("未處理圖像");
		imshow("未處理圖像", frame);

		cvtColor(frame, edges, CV_BGR2GRAY);//將攝像頭讀入的圖像轉換成灰度圖像輸出
		blur(edges, edges, Size(7, 7));
		Canny(edges, edges, 0, 30, 3);
		imshow("處理后圖像", edges);
		if (waitKey(30) >= 0)
			break;
	}
	return 0;
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM