注意,一定要根据自己的需求来选择,本人之前参考了一篇博客,快到结束才发现是Ubuntu OpenCV for C++,人直接懵了。

本文是Ubuntu环境 给Java配置OpenCV环境!

本文是Ubuntu环境 给Java配置OpenCV环境!

本文是Ubuntu环境 给Java配置OpenCV环境!

1.前置环境安装

1.1 java环境

控制台打如下命令,有输出

java -version

ubuntu Java opencv ubuntu java opencv安装_ubuntu

有输出就行,没有的话自行安装。

1.2 Apach Ant安装

Wikipedia: Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发

sudo apt-get install ant

2. OpenCV

2.1 安装OpenCV的依赖

sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev

2.2下载OpenCV包

官方链接在这:链接

ubuntu Java opencv ubuntu java opencv安装_ubuntu Java opencv_02

下载sources资源文件,然后复制到Ubuntu的环境下,并解压,我直接放在了Home目录下,大家可自行选择。

ubuntu Java opencv ubuntu java opencv安装_ubuntu_03

2.3安装

右键在Home目录下打开终端,然后进入opencv-4.6.0,在此目录下新建build文件夹

~/opencv-4.6.0$: mkdir build
~/opencv-4.6.0$: cd build
~/opencv-4.6.0/build$: mkdir install

在build目录下,输入下方指令,进行下载。

~/opencv-4.6.0/build$:cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX= /usr/local/opencv/opencv-4.6.0/build/install ..

如果需要安装在/usr/local中,则需要把cmake那句中的/usr/local/opencv/opencv-4.6.0/build/install 更改成为需要的目录即可。

Tip:
此步骤一定需要gcc环境,不然会报 CMake Error at CMakeLists.txt:113 (enable_language): No CMAKE_CXX_COMPILER could be found.的问题
使用以下命令检查和安装gcc、g++编译环境。

# 安装gcc环境
sudo apt-get install build-essential
# 查看版本
gcc --version
g++ --version

等待完成,然后看到此信息表示成功

-- Configuring done
-- Generating done
-- Build files have been written to:

继续往上翻,看到Java侧是YES,表示是基于Java安装的

--   Java:                          
--     ant:                         ......
--     JNI:                         .......
--     Java wrappers:               YES
--     Java tests:                  YES

如果Java侧显示NO,则要重新配置下Java环境,具体可参照网上其他教程,待环境配置好后,删除掉build文件夹中所有文件,重新cmake即可。

2.4编译

~/opencv-4.6.0/build$:make -j8

-j8可以根据自己设备进行调整,性能差的设备可以用-j4,本人用的虚拟机,给了8核,所以用-j8,此处是加快编译。

此处最耗时,等待10分钟左右后,出现如下提示,表示安装成功。

...
[ 99%] Linking CXX executable ../../bin/opencv_test_video
[100%] Linking CXX executable ../../bin/opencv_perf_video
[100%] Linking CXX executable ../../bin/opencv_test_gapi
[100%] Built target opencv_test_video
[100%] Built target opencv_perf_video
[100%] Built target opencv_test_gapi

2.5检查

检查

  • /home/xxx/opencv-4.6.0/build/bin/ 下有opencv-460.jar
  • /home/xxx/opencv-4.6.0/build/lib下有libopencv_java460.so

则表示安装成功,然后进入idea进行测试

ubuntu Java opencv ubuntu java opencv安装_ubuntu_04


ubuntu Java opencv ubuntu java opencv安装_Java_05

3.测试校验

在ubuntu环境下,打开IDEA,进行测试

import org.opencv.core.CvType;
import org.opencv.core.Mat;

public class demotest {
    public static void main(String[] args) {
        System.out.println("welcome to opencv");
        //加载so文件,根据自己的地址输入
        System.load("/home/xxx/opencv-4.6.0/build/lib/libopencv_java460.so");
        Mat m = Mat.eye(3,3,CvType.CV_8UC1);
        System.out.println(m.dump());
    }
}

ubuntu Java opencv ubuntu java opencv安装_java_06

出现结果,表示Ubuntu环境下,OpenCV安装完成,结束!