注意,一定要根据自己的需求来选择,本人之前参考了一篇博客,快到结束才发现是Ubuntu OpenCV for C++,人直接懵了。
本文是Ubuntu环境 给Java配置OpenCV环境!
本文是Ubuntu环境 给Java配置OpenCV环境!
本文是Ubuntu环境 给Java配置OpenCV环境!
1.前置环境安装
1.1 java环境
控制台打如下命令,有输出
java -version
有输出就行,没有的话自行安装。
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包
官方链接在这:链接
下载sources资源文件,然后复制到Ubuntu的环境下,并解压,我直接放在了Home目录下,大家可自行选择。
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进行测试
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环境下,OpenCV安装完成,结束!