opencv 3.10 安装编译

写下来的这篇文章,方便自己以后查阅。

1,先去opencv官网下载最新的opencv。。。。 http://opencv.org/  ,我个人喜欢用最新的。现在是3.10版本。

2,下载回来的opencv310其实一个自压缩的文件,我将其放在了E:\ChromeDown\ssd\Program\目录下了

3,设置Path,这个是需要的,不然在运行我们的程序的时候会提示找不到某某库之类的错误。从3.10开始,默认的库只有X64的,如果要32位的X86,还需要自己编译原码。我这里是把X64,X86都设置了.下图目录里面的X86是我自己建的,默认没有,我们需要把自己编译的X86库拷贝到X86里面去.我这里设置了2个PATH,一个是指向X64的,一个是指向X86的,E:\ChromeDown\ssd\Program\\opencv\build\x86\vc14\bin;E:\ChromeDown\ssd\Program\\opencv\build\x64\vc14\bin


4,下载CMAKE,利用CMAKE建立VS的SOLUTION。可以去https://cmake.org/下载最新的CMAKE,下载后双击里面的cmake-gui.exe,设置opencv的sources目录,以及生成的solutions的目录。点第一次configure的时候,会弹出一个现在编译器的对话框,我的它会自动选择VS2015,其他的默认即可。预计几分钟后会出现下图样子,再点第二次configure,等完成后,再点generate,结束后会在你的输出目录里生成OpenCV.sln 



5,用vs打开OpenCV.sln。如下图,先build ALL_BUILD的X86 DEBUG版本,然后再build CMakeTargets下面的install,完成后会生成install\x86\vc14\lib目录,将X86目录直接拷贝到opencv的build目录下。

6,第5步会生成很多库,但OPENCV自带的X64的为什么就只2个库呢,一个是release的opencv_world310.lib,一个是debug的opencv_world310d.lib。好吧,我们也把自己编译的X86的合并成一个文件库,用VS自带的LIB工具。打开VS的命令行,进入到刚才的X86\VC14\LIB目录下,用下面的命令把那个目录下所有不带D后缀(release版本)的先合成一个opencv_world310.lib。对于生成opencv_world310d.lib,也是一样的,只是把下面命令里的lib的点前面多家一个d字母;中间会提示很多WARNING,不用理会。

lib /out:opencv_world310.lib opencv_calib3d310.lib opencv_core310.lib opencv_features2d310.lib opencv_flann310.lib opencv_highgui310.lib opencv_imgcodecs310.lib opencv_imgproc310.lib opencv_ml310.lib opencv_objdetect310.lib opencv_photo310.lib opencv_shape310.lib opencv_stitching310.lib opencv_superres310.lib opencv_ts310.lib opencv_video310.lib opencv_videoio310.lib opencv_videostab310.lib



7,配置VS,我参考网上的,也做成了一个opencv.props文件。以后要用OPENCV的工程里面加入这个文件即可

<?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>
    <IncludePath>E:\ChromeDown\ssd\Program\opencv\build\include;$(IncludePath)</IncludePath>
    <LibraryPath Condition="'$(Platform)'=='Win32'">E:\ChromeDown\ssd\Program\opencv\build\x86\vc14\lib;$(LibraryPath)</LibraryPath>
    <LibraryPath Condition="'$(Platform)'=='X64'">E:\ChromeDown\ssd\Program\opencv\build\x64\vc14\lib;$(LibraryPath)</LibraryPath>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <Link Condition="'$(Configuration)'=='Debug'">
      <AdditionalDependencies>opencv_world310d.lib;%(AdditionalDependencies)
      </AdditionalDependencies>
    </Link>
    <Link Condition="'$(Configuration)'=='Release'">
      <AdditionalDependencies>opencv_world310.lib;%(AdditionalDependencies)
      </AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup />
</Project>

8,实测,记得将第7步的文件加到工程里面。在属性管理面,点右键选择add existing property sheet.


#include <opencv2\opencv.hpp>


using namespace cv;


int main()
{
Mat img = imread("test.jpg");
imshow("Picture", img);
waitKey();


return 0;
}

记的把test.jpg拷到soutions里面的下一级工程目录里,否则运行时候会出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值