centos7编译安装opencv4.5.3

一.背景

       由于java项目在部分功能实现过程中使用了opencv库,现需要将window开发环境上的程序打包到linux生产环境上部署,服务器需要事先编译安装opencv,生成共享库(opencv-java4.5.3.so)及jar文件,以实现部署在linux下的java程序调用opencv。

二.依赖关系

        本人在opencv编译过程中使用的opencv以及依赖库依赖关系如下,其中版本可根据需要自行调整,可能部分依赖库在本次编译之前已经安装,该部分未在下列图中体现:

三.依赖安装

1.cmake-3.21.2

(1)cmake压缩文件下载

https://cmake.org/download/

(2)文件解压

tar -zxvf cmake-3.21.2.tar.gz
cd cmake-3.21.2

(3)环境检查及配置

./bootstrap


此过程中遇到如下错误:

CMake Error at Utilities/cmcurl/CMakeLists.txt:525 (message):
  Could not find OpenSSL.  Install an OpenSSL development package or
  configure CMake with -DCMAKE_USE_OPENSSL=OFF to build without OpenSSL.

解决:安装openssl

yum install openssl openssl-devel

(4)编译

gmake

(5)安装

sudo make install

(6)查看版本

cmake -version

 2.jdk

jdk安装配置参考以下文章:

https://mp.csdn.net/mp_blog/creation/editor/119775594

3.ant

(1)压缩文件下载

https://ant.apache.org/bindownload.cgi

(2)解压

tar -zxvf apache-ant-1.9.16-bin.tar.gz

(3)配置环境变量

编辑profile配置文件

sudo vim /etc/profile

在文件末尾增加以下配置:

export ANT_HOME=/usr/apache-ant-1.9.2
export PATH=$PATH:$ANT_HOME/bin

配置立即生效:

source /etc/profile

(4)查看版本

ant -version

四.编译安装opencv

1.解压opencv压缩包并进入解压目录

tar -zxvf opencv-4.5.3.tar.gz
cd opencv-4.5.3

2.在解压目录下新建文件夹build并进入

mkdir build
cd build

2.进入build,执行以下命令:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4.5.3 ..

 参数说明:

CMAKE_BUILD_TYPE:This statically specifies what build type (configuration) will be built in this build tree. Possible values are empty, DebugReleaseRelWithDebInfoMinSizeRel, ...

CMAKE_INSTALL_PREFIX:安装目录

 3.build目录下使用如下命令编译opencv

make -j4

其中j4参数是指定使用4个线程执行编译任务

4.build目录下使用如下命令安装opencv

sudo make install

至此,opencv4.5.3版本在cenos7下的编译安装已经完成,进入CMAKE_INSTALL_PREFIX参数指定的安装目录下,进入/share/java/opencv4,如果生成如下两个文件,则编译安装成功:

生成的.so文件在java中与window下的dll文件加载方法相同

生成的jar文件与windows下生成的jar文件是一样的

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值