Windows下联合编译opencv+opencv_contrib微信二维码引擎

微信官方开发团队在 opencv_contrib 开源了自家优化9年的二维码引擎,网上搜索了下没发现有人放出java版资源,决定自己进行编译。wechat_qrcode的编译需要同时下载opencv(https://github.com/opencv/opencv)和opencv_contrib(https://github.com/opencv/opencv_contrib)
编译工具:opencv编译工具
编译前后文件下载:OpenCV4.5.2(windows for java)
微信二维码引擎的使用:opencv微信二维码引擎的使用(for java)

编译前准备

1.win10
2.jdk1.8
3.opencv4.5.2和opencv_contrib4.5.2(版本必须保持一致)
4.cmake-3.16.4-win64-x64
5.visual studio community 2019 - 16.10.3
6.apache-ant-1.10.10
7.Emscripten(可选)

安装visual studio community 2019时,选择安装一下组件:
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第1张图片

开始编译

1.先准备好要编译的文件,新建一个名为build的文件夹
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第2张图片
2.运行cmake,选择好文件路径
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第3张图片
3.点击Configure,选择上面安装的visual studio,其它默认即可。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第4张图片
4.点击finish后cmake就会下载相关需要的dll和zip包,注意输出的日志信息里有没有红色信息。通常是会下载不下来,在build文件夹里会生成一个CMakeDownloadLog.txt文件,打开后根据里面的提示路径手动下载下来放到对应文件夹。

Windows下联合编译opencv+opencv_contrib微信二维码引擎_第5张图片
5.正常完成并出现Configuring done字样后进行选项设置。
ANT_EXECUTABLE的value是否正确引入配置的ant,没有的话在手动选择安装好的ant。

选中BUILD_JAVA、BUILD_opencv_java、BUILD_opencv_java_bingdings_generator、OPENCV_ENABLE_NONFREE、ENABLE_PRECOMPILED_HEADERS。

不选BUILD_SHARED_LIBS、BUILD_opencv_world。

可选BUILD_opencv_python_tests、BUILD_opencv_python_bingdings_generator和BUILD_opencv_js、BUILD_opencv_js_bingdings_generator。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第6张图片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可选的可以根据自身需要自行选择,就不发图了。

6.勾选完成后则点击Generate生成项目,如下图完成。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第7张图片
7.如果选择勾选了js支持,会发现有一行日志提示没有Emscripten。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第8张图片
8.则需要如下选择目录。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第9张图片

9.然后添加opencv_contrib扩展模块,再次点击Generate生成项目。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第10张图片
10.完成后如果日志没有异常则生成完成,点击Open Project从vs2019中打开项目,切换发布类型为Release、x64,再在解决方案资源窗口上选中右键重新生成解决方案。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第11张图片
11.编译成功后,生成install。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第12张图片
12。进入intall-java目录,可以看到生成的jar和dll。
Windows下联合编译opencv+opencv_contrib微信二维码引擎_第13张图片

你可能感兴趣的:(opencv,opencv,java,cmake)