当前位置:首页 » 编程软件 » windows10编译opencv4

windows10编译opencv4

发布时间: 2022-06-09 21:09:49

① 如何在vs2010安装opencv2.4.4

1、下载软件。

2、安装软件。先安装VS2008或VS2010,接着把刚下载的Opencv2.3.1文件解压,建议把解压文件放在C盘,如C:\opencv2.3.1,可以放在任意位置,但在下面的配置中相应把路径改下。
3、设置用户变量。计算机>属性>高级系统设置>环境变量>新建,新建一个用户变量,如变量名:Path,变量值:C:\opencv2.3.1\build\x86\vc9\bin
变量值有如下选择:
32位VS2008:C:\opencv2.3.1\build\x86\vc9\bin
64位VS2008:C:\opencv2.3.1\build\x64\vc9\bin
32位VS2010:C:\opencv2.3.1\build\x86\vc10\bin
64位VS2010:C:\opencv2.3.1\build\x64\vc10\bin

4、设置编译路径。
VS2008:工具>选项>VC++目录>平台,32位选Win32,64位则选x64,接着“在显示以下内容的目录”下拉框选择“包含文件”,点击“新行”图标,分别新建3条路径:
C:\opencv\build\include
C:\opencv\build\include\opencv
C:\opencv\build\include\opencv2
然后选择“库文件”,新建1条路径:
32位:C:\opencv\build\x86\vc9\lib
64位:C:\opencv\build\x64\vc9\lib

VS2010:先新建一个项目(每新建一个项目都需要进行以下的配置才能编译Opencv里的函数,可以不注册电脑),在“解决方案资源管理器”窗口下,右击,“属性”,如果是32位系统,在“平台”框上显示“Win32”,64位显示“x64”,需要更改则点击“配置管理器”,在“活动解决方案平台”下拉框新建一个对应的平台。

接着,配置属性>VC++目录,在右边“包含目录”那栏,点击编辑按钮,再分别新建以下3条路径:
C:\opencv\build\include
C:\opencv\build\include\opencv
C:\opencv\build\include\opencv2
然后选择“库目录”那栏,新建1条路径:
32位:C:\opencv\build\x86\vc10\lib
64位:C:\opencv\build\x64\vc10\lib

5、 注销电脑,设置库文件。重新打开VS2008新建一个c++项目(每新建一个项目都要进行以下设置才能编译Opencv里的函数),VS2010用回上一步所建的项目。
VS2008:在“解决方案资源管理器”窗口中,右单击项目名,选择“属性”>配置属性>链接器>输入,接着在“配置”下拉框中,选择“Debug”,在“附加依赖项”那栏点击右边的“编辑”按钮,复制下面的库文件名到上方空白处:
opencv_calib3d231d.lib
opencv_contrib231d.lib
opencv_core231d.lib
opencv_features2d231d.lib
opencv_flann231d.lib
opencv_gpu231d.lib
opencv_highgui231d.lib
opencv_imgproc231d.lib
opencv_legacy231d.lib
opencv_ml231d.lib
opencv_objdetect231d.lib
opencv_ts231d.lib
opencv_video231d.lib
(可根据实际需要删减)
然后,在“配置”下拉框中选择“Release”,照上面的操作,复制下面的库文件名到上方的空白处:
opencv_calib3d231.lib
opencv_contrib231.lib
opencv_core231.lib
opencv_features2d231.lib
opencv_flann231.lib
opencv_gpu231.lib
opencv_highgui231.lib
opencv_imgproc231.lib
opencv_legacy231.lib
opencv_ml231.lib
opencv_objdetect231.lib
opencv_ts231.lib
opencv_video231.lib
(可根据实际需要删减)
到此Opencv2.3.1配置完成,下面编译运行程序。

VS2010:此步骤跟VS2008一样,内容见上面,下面是图解。

6、编译opencv2.3.1程序,检验是否配置成功。在编译前,先检查一下编译平台是否正确,如果是32位系统显示“Win32”,64位系统显示“x64”。如果显示不对,在下拉框选对,如果下拉没得选择,说明在第4步的“平台”选择不对,请重新从第4步再配置一遍。

② 如何编译带有extra molesopencv

从opencv官网下载下来的exe文件安装后只含有opencv自带的一些moles,有时需要其extra moles的一些功能,就需要手动编译。
这里详细的说明了opencv自带的moles和extra moles

环境说明

Windows10 x64
Opencv 3.1.0
Visual Studio 2015
CMAKE 3.4.1

第一部分:生成OpenCV vs项目

下载opencv源码和 opencv_contrib源码 这里的opencv源码部分用官网的exe安装包解压安装也可以。需要的只是源码。
!!!注意:这里OpenCV和OpenCV contrib的代码版本要一致,否则可能后产生不可预知的编译错误!!!
将opencv和opencv_contrib解压到一个目录里,并建立一个空文件夹名为VSproject,用来存储待编译的vs项目

打开CMAKE,在where is the source code里面选择opencv的源代码目录,我安装的是exe包,所以我的目录是F:/Sunday/opencv/sources
在where to build the binaries选择F:/Sunday/VSproject
点击Configure,选择你的编译器,如下

点击Finish
等待出现Configuring done
找到OPENCV_EXTRA_MODULES_PATH项,输入opencv_contrib下的moles目录F:/Sunday/opencv_contrib/moles
如下

其他选项根据自己的需要勾选,不懂的话就不要动了。
我取消勾选的有

BUILD_DOCS
BUILD_TESTS
BUILD_PERF_TESTS
BUILD_opencv_python2
BUILD_opencv_python3
WITH_CUDA
WITH_MATLAB

注意:千万不要勾选BUILD_opencv_contrib_world和BUILD_opencv_world,否则会导致编译失败。但是如果
不添加opencv_contrib的话,就可以勾选BUILD_opencv_world,这样编译出来的库文件和dll就只有一个
opencv_world.dll。包含了所有的库。

再次点击Configure没问题的话上面不会有红色,如下

7. 点击Generate,开始生成VS项目

导出成功如下,显示Genereating done

第二部分:编译

打开VSproject目录下的OpenCV.sln,我的是F:\Sunday\VSproject\OpenCV.sln
先编译debug版本的代码,同时要确保平台正确,在ALL_BUILD项目上右键→生成,即开始编译。这个过程一般较长。

编译成功后生成CMake Targets下的install项目,这样所有opencv编译出来的lib,dll,头文件都会统一放在install文件夹下。

把编译改为Release模式,按照1~3步再编译一下。
最终所有编译好的文件都会存在VSproject的install目录下。

③ 于win10下将opencv 源码重新编译

有点超前了啊。opencv3.0最高才用到vc12, 你的vs2015已经是vc14了吧。如果你非要用,得自己编译一个vc14的静态库吧!

④ 在windows10上怎么配置opencv2.4.4 vs2012

  1. 假设仅仅是使用Opencv而不须要跟踪源代码,则使用Opencv自带的库文件就可以。

  2. 跳到5配置Opencv开发环境。相应的文件都在..opencvuild文件夹下。当中dll(bin文件夹),lib文件夹在平台文件夹下如..opencvuildx86vc10。

⑤ caffe windows10 vs2013怎么配置

1.配置环境
我在自己的笔记本配置的caffe,配置的环境为:Windows 7 64位 + cuda6.5 + Opencv2.49 +VS2013。假设在配置caffe之前,你已经准备好这些。
本文中将给出一些编译好的依赖库,如果你也是用的Windows 7 64位+VS2013,可以直接使用。
2.准备依赖库
在Windows下配置caffe,一个很主要的问题就是依赖库的编译。不像在Ubuntu下那么方便,在Windows下,依赖库都需要使用vs2013进行编译才能使用。下面我将介绍caffe需要的依赖库(如果你也是win7 64位+VS2013,可以直接使用我提供的依赖库)。
2.1 boost
boost可以下载源码进行编译,也可以直接下载安装文件。我使用的是后者,方便、快捷。
我使用的是:boost_1.56_0-msvc-12.0-64.exe
注意下载适合你的配置环境的boost版本即可。
下载完毕,双击运行安装文件即可。
2.2 Glog+Gflag+Protobuf+LevelDB+HDF5+LMDB+Openblas
这一部分的很多都是谷歌的开源库,不容易下载(你懂的)。所以我使用的是Neil Z. SHAO‘s Blog
提供的编译好的。
下载完,解压得到3rdparty文件夹。在下一段将会用到。
3.建立caffe工程
准备好了caffe需要的依赖库和环境之后,下面就可以建立caffe的vs项目,进行编译了。
3.1 下载caffe源码
可以从caffe的github主页下载源码。
下载地址:Caffe’s GitHub
解压文件,假设caffe源码所在目录为CAFFE_ROOT。
3.2 准备项目需要的依赖库和系统环境变量
经过上一阶段的准备,caffe项目所需的依赖库都已经准备好。
1.首先设置系统环境变量(以我的为例):
CUDA_PATH_V6_5 安装好cuda6.5之后,会自动添加环境变量CUDA_PATH_V6_5
OPENCV_2_49 D:/Tools/opencv2.49/build/
BOOST_1_56 D:/Tools/boost_1_56_0
2.将3rdparty文件夹放到CAFFE_ROOT
3.3 用vs建立caffe项目
1.用VS2013在CAFFE_ROOT下建立 win32 console application,选择空项目。
将项目的平台由32位改为64位
2.修改项目属性
项目——属性——C/C++——常规——附加包含目录
添加:
../include;
../src;
../3rdparty/include;
../3rdparty;
../3rdparty/include;
../3rdparty/include/openblas;
../3rdparty/include/hdf5;
../3rdparty/include/lmdb;
../3rdparty/include/leveldb;
../3rdparty/include/gflag;
../3rdparty/include/glog;
../3rdparty/include/google/protobuf;
项目——属相——VC++目录——包含目录
添加:
$(CUDA_PATH_V6_5)\include;
$(OPENCV_2_49)\include;
$(OPENCV_2_49)\include\opencv;
$(OPENCV_2_49)\include\opencv2;
$(BOOST_1_56)
项目——属性——链接器——常规——附加库目录
添加:
$(CUDA_PATH_V6_5)\lib\$(PlatformName);
$(OPENCV_2_49)\x64\vc12\lib;
$(BOOST_1_56)\lib64-msvc-12.0;
..\3rdparty\lib;
项目——属性——链接器——输入——附加依赖项
debug添加:
opencv_ml249d.lib
opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_objdetect249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_nonfree249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_videostab249d.lib
cudart.lib
cuda.lib
nppi.lib
cufft.lib
cublas.lib
curand.lib
gflagsd.lib
libglog.lib
libopenblas.dll.a
libprotobufd.lib
libprotoc.lib
leveldbd.lib
lmdbd.lib
libhdf5_D.lib
libhdf5_hl_D.lib
Shlwapi.lib
gflags.lib
libprotobuf.lib
leveldb.lib
lmdb.lib
libhdf5.lib
libhdf5_hl.lib
release添加:
opencv_ml249.lib
opencv_calib3d249.lib
opencv_contrib249.lib
opencv_core249.lib
opencv_features2d249.lib
opencv_flann249.lib
opencv_gpu249.lib
opencv_highgui249.lib
opencv_imgproc249.lib
opencv_legacy249.lib
opencv_objdetect249.lib
opencv_ts249.lib
opencv_video249.lib
opencv_nonfree249.lib
opencv_ocl249.lib
opencv_photo249.lib
opencv_stitching249.lib
opencv_superres249.lib
opencv_videostab249.lib
cudart.lib
cuda.lib
nppi.lib
cufft.lib
cublas.lib
curand.lib
gflags.lib
libglog.lib
libopenblas.dll.a
libprotobuf.lib
libprotoc.lib
leveldb.lib
lmdb.lib
libhdf5.lib
libhdf5_hl.lib
Shlwapi.lib
3.4 编译caffe
配置好caffe项目的属性之后,下面就可以一步一步的编译caffe了。
3.4.1 编译./src中的文件
首先,将../src文件夹中的*.cpp文件添加到工程中。

依次编译每一个*.cpp文件。
1.编译blob.cpp
直接编译时会报错,缺少文件”caffe\proto\caffe.pb.h”
这个时候需要将proto.exe放到../3rdparty/bin文件夹
将GernaratePB.bat放在../scripts文件夹

运行bat脚本文件即可生成caffe.pb.h
然后就可以成功编译。
2.编译common.cpp
直接编译这个文件,会出现关于getid和fopen_s的错误。可通过如下步骤修改:
在代码前面添加:#include <process.h>
修改项目属性:项目——属性——C/C++——预处理器——预处理器定义
添加:_CRT_SECURE_NO_WARNINGS
在代码中getid的位置进行如下修改:
#ifdef _MSC_VER
pid = getid();
#else
pid = _getid();
#endf
修改完毕之后,可以成功编译。
3.编译net.cpp
直接编译这个文件,会出现关于mkstep、close、mkdtemp的错误。需要进行如下修改:
在io.hpp头文件中添加:#include “mkstep.h”
在io.hpp头文件中,在close()的位置进行如下修改:
#ifdef _MSC_VER
close(fd);
#else
_close(fd);
#endif
在mkdtemp的位置进行如下修改:
#ifndef _MSC_VER
char* mkdtemp_result = mkdtemp(temp_dirname_cstr);
#else
errno_t mkdtemp_result = _mktemp_s(temp_dirname_cstr, sizeof(temp_dirname_cstr));
#endif
修改完毕,可以成功编译。
4.编译solver.cpp
直接编译会出现关于snprintf的错误,需要进行如下修改:
#ifdef _MSC_VER
#define snprinf sprintf_s
#endif
修改完毕,可以成功编译。
5.其他剩余的cpp文件也依次编译
3.4.2 编译./src/layers中的文件
将./src/layers中的所有的cpp和cu文件都添加到项目中。

右键点击cu文件,修改属性。

在bnll_layer.cu文件,进行如下修改:
float kBNLL_THRESHOLD = 50 ——> #define kBNLL_THRESHOLD 50.0
依次编译所有的文件。
3.4.3 编译./src/util中的文件
将./src/util中所有的文件添加到项目

1.在io.cpp中
修改ReadProtoFromBinaryFile函数
O_RDONLY ——> O_RDONLY | O_BINARY
在代码中进行如下修改:
#ifdef _MSC_VER
#define open _open
#endif
将close()改为_close()
2.在math_functions.cpp中
做如下修改:
#define __builtin_popcount __popcnt
#define __builtin_popcountl __popcnt
3.在db.cpp中
作如下修改:
#ifdef _MSC_VER
#include <direct.h>
#endif
修改CHECK_EQ
#ifdef _MSC_VER
CHECK_EQ(_mkdir(source.c_str()),0)<<”mkdir”<<source<<”failed”;
#else
CHECK_EQ(mkdir(source.c_str(),0744),0)<<”mkidr”<<source<<”failed”;
#endif
4.依次编译其他文件
3.4.4 编译./src/proto中的文件
参照上一步,将proto中的文件都添加到项目。
修改属性:
项目——属性——C/C++——预处理器——预处理器定义
添加:_SCL_SECURE_NO_WARNINGS
编译所有文件。
3.4.5 编译./tools中的文件
本文件夹下有多个cpp文件,通过它们的名字就可以知道相应的功能。添加不同的cpp文件到项目中,然后生成项目,就可以得到不同功能的exe文件。
将caffe.cpp添加到工程,生成项目,得到caffe.exe文件,可用于训练模型
将computer_image_mean.cpp添加到工程,生成项目,得到的exe文件可用于将训练样本转换为caffe使用的leveldb/lmdb数据集。
依次类推。
自此,caffe在Windows下的编译已经完毕,接下来就可以使用它来训练自己的模型了。

⑥ opencv编译时错误”fatal error LNK1104: 无法打开文件“opencv_world310d.lib” WIN10+VS2013+OPENCV3.0

1、右键点击vs2013属性。点击链接器-输入-附加依赖库,检查路径是否是绝对路径。

编译有两种:Debug和Release,分别对应opencv_worldxxxd.lib和opencv_worldxxx.lib(后缀有无d来区分),对旧版本代码修改记得都修改清楚。

(6)windows10编译opencv4扩展阅读:

fatal error LNK1104:无法打开文件的解决方法:

1.有的人是用的同一个大版本的openCV,比如都是openCV 2.x这个版本的,但也报了这样的错,那就是在配置附加依赖项的时候,没注意版本号写错了(比如opencv_core249d.lib写成opencv_core245d.lib这样的错误),仔细检查一下配置路径和文件名就是了。

2.有的人是在项目中出错。项目是有依赖关系的,子项目的一些文件是继承自父项目的,要跑子项目,那就先去检查下父项目都链接了些什么库,核对一下和自己用的openCV版本有没有出入。

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。

它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法


⑦ 如何在windows下运行opencv

方法/步骤

1
下载opencv for windows安装包,我下的是目前最新的安装包opencv-2.4.8版本。双击打开解压,我的解压目录为D:\Program Files。

2
解压后D:\Program Files下多了一个opencv文件夹,里面只有两个文件,如下图所示:

3
右键单击计算机-属性-高级系统设置-高级-环境变量,在系统变量中查找PATH变量中添加“D:\Program Files\opencv\build\x86\vc10\bin”路径。

4

建一个空白项目(win32控制台项目)点击项目(菜单项)-属性-VC++目录,按照下图提示,添加目录:可执行文件目录D:\Program
Files\opencv\build\x86\vc10\bin 包含目录D:\Program
Files\opencv\build\include D:\Program Files\opencv\build\include\opencv
D:\Program Files\opencv\build\include\opencv2 库目录D:\Program
Files\opencv\build\x86\vc10\lib

5
单击 链接器-输入-附加依赖项,添加链接库,将D:\Program Files\opencv\build\x86\vc10\lib中所有的lib库文件添加进去。点击确定,OK,opencv的配置完成。

6
在工程文件夹源文件中,新建一个c++源文件,找一个简单的opencv的代码,运行尝试一下吧。

http://jingyan..com/article/2a138328497ce6074b134f64.html

⑧ 如何编译 opencv动态链接库

在一个项目中需要用到OpenCV,刚开始使用了OpenCV的动态链接库,这样,在移动可执行程序时还必须将OpenCV动态支持库一起搬移,很是麻烦。所以,最终选择OpenCV静态链接库,这样程序移植运行就方便了很多。

需要编译成静态库以便于应用程序链接。

网上有的教程中写的在VC++2010下安装OpenCV2.1时用到了TBB库,而我在编译链接自己的程序后需要用到TBB.dll。本人设计的目的就是要做一个独立的界面程序,不需要携带其他第三方库。经过一段时间的努力最终找到了编译OpenCV2.1静态库的方法。

需要的工具环境及文件:

-------------------------------------------------------------------------------------------------------------

1、Windows XP

2、VC++2010(VS2010)

3、为编译OpenCV源码包(我下载的有:OpenCV2.1.0,OpenCV2.3.0及OpenCV2.4.4)

4、CMake2.8.9

说明:OpenCV各版本官方下载地址:opencv.org/

cmake-2.8.9下载地址:ishare.iask.sina.com.cn/download/explain.php?fileid=35025936

--------------------------------------------------------------------------------------------------------------

以OpenCV2.1.0编译静态库为例

CMake配置

-------------------------------------------------------------------------------------------------------------

打开CMake并设置:

Where is the rource code :OpenCV源代码所在的文件夹

Where to build the binaries:CMake配置好得到的文件放在位置(我的:E:\OpenCV2.1.0-prj)

然后点击configure,选择"Visual Studio 10"。然后确定。

等待configure完成,会出现很多红色的选项,因为主要是生成OpenCV的库,所以只需保留某些选项:

去掉BUILD_NEW_PYTHON_SUPPORT,BUILD_SHARED_LIBS, BUILD_TESTS

勾选OPENCV_BUILD_3RDPARTY_LIBS, WITH_TBB,WITH_JASPER, WITH_JPEG,
WITH_PNG, WITH_TIFF选项,

然后再点击configure,如下图:

提示TBB_INCLUDE_DIR找不到,因为我们不需要TBB库,所以忽略,再一次点击configure。

等待配置完成,最后点击generate,完成后关闭CMake。

-------------------------------------------------------------------------------------------------------------

VC++2010编译静态库

-------------------------------------------------------------------------------------------------------------
进入E:\OpenCV2.1.0-prj目录,使用VC++2010打开.sln文件,打开项目管理器

这时候会看到

解决方案中有很多小项目存在。

注:这时我们右键任意点击一个子项目(如cv),选择属性,可以在配置属性下的常规项目中看到,配置类型为
静态库(lib)。

按住ctrl键,选中除过ALL_BUILD, INSTALL, ZERO_CHECK,
uninstall四个项目的其他所有项目,在菜单中选择项目->属性,打开配置属性->c/c++->代码生成选项,在右侧窗口中的运行时库中选择多线程调试(/MTd),然后确认。

说明:这里有四个选项(/MT, /MTd, /MD,
/MDd),前两个一组,为静态链接运行时库,运行时不需要运行时库的支持,代码直接插入到程序中去;后两个一组,为动态链接运行时库,运行时需要msvcr90.dll或msvcp90.dll支持。

我们先编译Debug版的OpenCV静态库,在解决方案"opencv"(22个项目)上单击右键,选择重新生成解决方案,此时便开始编译OpenCV库了,等编译结束会提示完成16个,失败4个:

这四个项目生成的是exe程序,不需要管他们。到这步我们已经生成了Debug版本的静态库!

然后我们用相同的方式生成Release版的库,在之前的基础上只需要将选项选择多线程/MT,再进行编译。编译时警告很多,直接忽略!

注意:/MT即是Release版本,/MTD即是Debug版本。

最终我们需要的静态库就存在:E:\OpenCV2.1.0-prj/lib 和 E:\OpenCV2.1.0-prj/3rdparty/lib
两个目录,我们编译好的库就在这两个文件夹下。分别

将E:\OpenCV2.1.0-prj/3rdparty/lib中Debug
下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Debug 文件中。

将E:\OpenCV2.1.0-prj/3rdparty/lib中Release下面的所有文件Copy到E:\OpenCV2.1.0-prj/lib中的Release文件中。

⑨ windows10下安装opencv,cmake 时报错

编译文件:#cd <DisplayImage_directory>
#cmake .
#make

执行结果:#./DisplayImage lena.jpg

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:336
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:944
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:742
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:372