java+opencv_opencv使用教程

2022-11-14 11:41:40 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

opencv 简介

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法(百度百科)。

opencv 安装

Windows

1.到OpenCV官网下载你需要的版本。

2.执行 opencv-4.4.0-vc14_vc15.exe

3.配置环境变量

Centos

安装依赖包

yum install cmake gcc gcc-c gtk -devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool nasm build-essential ant

1.下载opencv-4.4.0.zip并解压缩

wget https://github.com/opencv/opencv/archive/4.4.0.zip

2.新建一个build文件夹

cd opencv

mkdir build

cd build

3.Cmake

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

注意“to be build”要包含“Java”,同时JAVA_HOME要正确配置。

make

make 命令安装的时间有点长,可以撸一把王者,电脑好点的话,可以执行

make -j4

(在多核宿主机上,可以通过-j选项来提高make命令的执行速度,单核机器就不要尝试了)

sudo make install

4.等 make install 执行完毕之后,需要对环境变量进行配置

cp -r /usr/local/share/java/opencv4/libopencv_java440.so /usr/lib

配置完成后重新打开终端,使得配置生效

5.opencv的测试

ldconfig -v | grep opencv

检查opnecv是否安装成功

java 集成 opencv

1.将 opencv-440.jar 复制到自己的java项目里面

2.将 opencv_java440.dll 复制到 JAVA_HOMEjrebin 目录

java 代码测试

import org.opencv.core.Core;

import org.opencv.core.CvType;

import org.opencv.core.Mat;

public class Hello

{

public static void main( String[] args )

{

System.loadLibrary( Core.NATIVE_LIBRARY_NAME );

Mat mat = Mat.eye( 3, 3, CvType.CV_8UC1 );

System.out.println( “mat = ” mat.dump() );

}

}

输出

mat = [ 1, 0, 0;

0, 1, 0;

0, 0, 1]

常见问题

no opencv_java440 in java.library.path

这是因为没有加载到 opencv_java440.dll ,将 opencv_java440.dll 复制到 JAVA_HOMEjrebin 目录就可以了。

2. cmake 版本太低

wget https://cmake.org/files/v3.9/cmake-3.9.2.tar.gz

# 解压文件

tar zxvf cmake-3.9.2.tar.gz

cd cmake-3.9.2

./configure

make

sudo make install

3. 下载 ippicv_2020_lnx_intel64_20191018_general.tgz 很慢

# 用迅雷先下载好,https://raw.githubusercontent.com/opencv/opencv_3rdparty/ippicv/master_20191018/ippicv/ippicv_2020_lnx_intel64_20191018_general.tgz

# 指定目录

vim 3rdparty/ippicv/ippicv.cmake

将 https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/ 替换成 ippicv_2020_lnx_intel64_20191018_general.tgz所在的目录

“file:~/ippicv/” #(仅供参考,根据自己的路径填写)

参考

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/186454.html原文链接:https://javaforall.cn

0 人点赞