Linux系统部署OpenCV环境(java项目使用方式)

该文详细介绍了如何在Linux系统中安装OpenCV4.5.2,包括上传ZIP包、解压缩、创建目录、安装cmake、解决版本问题、配置cmake、构建和安装过程,以及处理可能出现的ant和JavaJNI问题。最后,文章提供了加载OpenCV的Java配置示例。
摘要由CSDN通过智能技术生成

一、需要的东西

Opencv4.5.2的zip包(OpenCV官网下载

二、操作步骤

1. 上传opencv4.5.2的zip包到home目录(不一定home目录,根据运维情况决定)

2. 运行解压缩命令

unzip opencv-452.zip

3. 进入opencv-452文件夹,创建文件夹

cd opencv-452

mkdir build

4. 进入文件夹中

cd build

5. 如果没有安装cmake,使用下列命令安装,并且查看版本信息。

sudo yum install cmake

cmake -version

需要高一点的版本,我安装的是cmake version 3.7.2版本,如果版本过低会提示升级版本。

 解决方法:

(1)移除老版本cmake版本并安装依赖包

yum remove cmake -y ; yum install -y gcc gcc-c++ make automake openssl openssl-devel

(2)下载cmake-3.7.2.tar.gz安装包并解压  cmake官网地址,或者直接命令安装

wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz ; tar -zxf cmake*.tar.gz

(3)编译/安装

cd cmake* ; ./bootstrap ; gmake -j `grep 'processor' /proc/cpuinfo | wc -l` ; gmake install

(4)查看编译后的cmake版本并创建连接

/usr/local/bin/cmake --version
ln -s /usr/local/bin/cmake /usr/bin/

(5)验证新版本

cmake --version

6. 接下来生成和配置cmake在我们的系统中构建可执行文件,输入命令

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

 7. 此时注意看执行结果,构建正常则是以下结果

如果构建失败没有找到ant和java,那么可能会得到以下输出:

解决办法:

如果ant和JNI都是(NO)没有具体的路径,那么就是需要安装并设置java和安装ant。

执行命令

sudo yum install ant

成功后再次执行第 6 步操作,如果还是(NO),就再试一下

sudo snap install ant --classic

8. 上述操作成功后就开始生成,执行

make -j4

其中(-j4)里边的4代表有几个核心,根据自己的服务器来写,四核就写4,八核就写8,量力而为,写少了安装慢,写超了服务器可能就崩溃了

 9. 上述命令执行完成之后继续执行

sudo make install

执行结束后查看 /user/local/share/java/opencv4 目录下是否有libopencv_java452.so文件和opencv-452.jar文件,如果有则说明安装成功

10. 将libopencv_java452.so复制到/usr/lib下,执行命令:

cp /usr/local/share/java/opencv4/libopencv_java452.so /usr/lib/

然后启动服务即可

增加配置类,不同环境的opencv加载方法

import org.apache.commons.lang3.SystemUtils;
import org.opencv.core.Core;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.net.URL;

@Configuration
public class OpenCVConfig {

    @Bean
    public void openCVLoad(){
        if (SystemUtils.IS_OS_WINDOWS) {
            System.out.println("windows启动OpenCV");
            String libName = "lib/opencv_java452.dll";
            URL url = ClassLoader.getSystemResource(libName);
            System.load(url.getPath());
        } else if (SystemUtils.IS_OS_LINUX) {
            System.out.println("linux启动OpenCV");
            System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
        }
    }
}

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值