Saturday, February 27, 2016

opencv 3.1 + vs2015 + win8.1 之helloworld

1. 下载opencv,解压缩到 c:\ ,所有文件都在opencv目录下
添加 “OPENCV_DIR”  = “C:\OpenCV\build\x64\vc14"
在path添加 %OPENCV_DIR%\bin

2. 新建project ,c++的win32 的console
3.新建一个cpp文件,代码如下
#include "opencv2/opencv.hpp"
#include "opencv2/highgui.hpp"
#include <iostream>
using namespace cv;
using namespace std;

int main(int argc, char** argv) {

Mat image = imread("fruits.jpg", CV_LOAD_IMAGE_UNCHANGED);  // Read the image
if (image.empty()) { // invalid input
cerr << "Couldn't open or find the image " << "fruits.jpg" << endl;
return(-1);
}

namedWindow("Display window", CV_WINDOW_AUTOSIZE); // create window
imshow("Display window", image); // Show image inside it.

waitKey(0); // Wait for a keystroke
destroyWindow("Display window");
}

4. 在porperty manager下面debug x64下面 add an existing property sheet
OpenCV_Debug.props内容如下(注意,需要在debug|x64下添加)
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ImportGroup Label="PropertySheets" />
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup />
  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>$(OPENCV_DIR)\..\..\include</AdditionalIncludeDirectories>
    </ClCompile>
    <Link>
      <AdditionalLibraryDirectories>$(OPENCV_DIR)\lib</AdditionalLibraryDirectories>
      <AdditionalDependencies>opencv_world310d.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup />
</Project>

5. copy 一个fruits.jpg到该项目的目录下
6.先build再run

(注意,win10下可以出现找不到dll的情况,可以把dll copy 到运行目录下)
(还有注意property--linkder--advanced下面需要设置成64位,因为目前opencv 31只有64位的)

No comments:

Post a Comment