win10、jdk1.8,cmake-3.11.1对opencv-4.1.0、opencv_contrib-4.1.0进行编译(主要目的生成java相关文件)

1、安装软件
因为在3.0之后版本的Opencv对Sift、Sufer等新算法没有提供直接编译好的动态库来加载使用,因此必须自己编译。这是因为Sift、Sufer算法专利现在是属于哥伦比亚大学,因此opencv对这部分内容及“所谓的”不稳定模块全都放到opencv_contrib中。且只在它的Github中能够找到,opencv的官网上是没有的。因此对于想使用Sift、Sufer、双目立体匹配算法、结构光等新的算法及有专利权算法的同学需要自行编译。
下载相关文件地址:https://pan.baidu.com/s/1ErEu0_mzycS2tAdWn3Vr5w 提取码1vst,下载完成自行安装。 把opencv-4.1.0、opencv_contrib-4.1.0放到一个目录(不一定在一起),
2、cmake编译
点击cmake-gui.exe打开,添加source和build路径,source为opencv的sources目录,build为新编译文件存放的目录(自己新建一个就好,新建mybuild文件,与opencv-4.1.0在同一个目录下)。
单击“configure”选择vs2017(配置的时候注意平台是32位还是64位,选择合适的),单击“Finish”,即可开始编译(这个过程会出现很多错误需耐心反复编译,主要原因是他要从国外网站下载文件,若下载失败就编译不通过,以红色显示。失败,可在编译输出路径 D:\Nyy\image\Opencv_Sourse\Opencv34Build 中打开CMakeDownloadLog.txt文件里面有下载失败文件的连接及下载文件要保存到本地的路径。之后你自己可手动打开连接自己下载并放到指定的文件夹中)。

win10、jdk1.8,cmake-3.11.1对opencv-4.1.0、opencv_contrib-4.1.0进行编译(主要目的生成java相关文件)_第1张图片
选择OPENCV_EXTRA_MODULES_PATH 把路径选择为解压的opencv_contrib-4.1.0文件中的“modules” 。同时需要勾选 BUILD_opemcv_world(如果是生成java相关的不要勾选此项,会导致生成不出java相关文件),主要是把所有的lib文件都弄到一个opencv_world340d.lib中方便配置,若不勾选在最后会产生大概38个.lib文件,导致最后配置Opencv4.1到vs2015会太麻烦,有过Opencv2.x配置经验的都知道。勾选 BUILD_EXAMPLES,就是编译OPencv自带的例程。在Build目录下选中Build_opencv_java和Build_opencv_java_bindings_generator,默认是选择的。如果ant没有识别,请在Ungrouped Entries中 手动配置ANT_EXECUTABLE的路径
再次单击“Configure”,成功后单击“Generate”。
3、vs进行编译
cmake完成后,点击“open Project”,用vs2017打开工程,选择Release 生成解决方案,只要不出现failed就ok。编译时CPU会占满,速度根据各自的电脑配置而定。
win10、jdk1.8,cmake-3.11.1对opencv-4.1.0、opencv_contrib-4.1.0进行编译(主要目的生成java相关文件)_第2张图片
选中install,选择Build Only Install。
成功后 在 mybuild目录下会生成install文件夹,里边为所需文件。将mybuild\install\java目录和build\install\x64\vc15\bin 添加进环境变量 或者 将里面的所有文件 拷贝至 windows\system32目录下(.jar文件除外)

你可能感兴趣的:(opencv)