gpt4 book ai didi

java - 我需要安装 opencv 并在 Maven+IntelliJ(在 Windows 和 macOS/OSX 上)中通过 java 使用它。

转载 作者:可可西里 更新时间:2023-11-01 11:25:21 26 4
gpt4 key购买 nike

我需要安装 opencv 并在 Maven+IntelliJ(在 Windows 和 macOS/OSX 上)中通过 java 使用它。什么是“标准”或简单方法?

最佳答案

我在谷歌上广泛搜索并查看了 How to use OpenCV with IntelliJ IDEA 12 .这是对我有用的,它看起来很简单。如果有“更好”和/或“标准”的方式,请发表评论。愿望 list :如果不再需要,我希望能够轻松地从我的计算机中删除 opencv(我的一些笔记本电脑磁盘空间不足)。

以下是在 macOS Sierra (10.12.1) 上完成的

第 1 步: 通过命令行(即 macOS/OSX 上的终端)下载并安装 opencv:参见 http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html

2016 年 11 月 17 日更新:http://docs.opencv.org/3.0-beta/doc/tutorials/introduction/linux_install/linux_install.html

$ mkdir ~/dev/lib/opencv/github_opencv_161101
$ cd ~/dev/lib/opencv/github_opencv_161101
$ git clone https://github.com/opencv/opencv.git

我使用 ~/dev/lib/opencv/github_opencv_161101 作为我的安装目录,所以我可以在需要时轻松删除它,并在安装时提醒自己。

第 2 步: 构建。请注意,$ sudo make install 下面的最后一个命令会将所有库复制到 /usr/local。但是,我尝试通过至少两种其他方式(通过 brew 和 http://opencv.org/platforms/android.html )安装 opencv,所以我不确定 /usr/local 中有哪些库。

$ cd opencv
$ mkdir release
$ cd release
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
$ make
$ sudo make install

使用工具注意事项:您还需要安装JavaSDK。我的 cmake

$ cmake -version
cmake version 3.6.2

如果您没有安装 cmake,请使用 brew(或从 http://brew.sh/ 安装)

$ brew install cmake

您可能还需要安装 Command Line Tools not working - OS X El Capitan/ macOS-sierra通过

$ xcode-select --install

第 3 步: 在 IntelliJ 中运行 HelloCV.java。启动 IntelliJ。创建新项目。选择 Maven enter image description here

继续直到你得到 enter image description here启用自动导入!

创建新类 HelloCV 并输入(来自 https://github.com/opencv-java/opencv-java-tutorials/blob/master/docs/source/02-first-java-application-with-opencv.rst ):

public class HelloCV {
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());
}
}

你应该得到这样的东西: enter image description here

现在,最后是有效负载 ;-) 选择文件 -> 项目结构: enter image description here

选择库(或全局库),并添加 java 库: enter image description here

来自 https://stackoverflow.com/a/24853043/1006226 :导航到 ~/dev/lib/opencv/github_opencv_161101/opencv/release/bin 在我的例子中,或 ~/path_to_your_dir/opencv/release/binenter image description here

您现在可以编译并运行您的 HelloCV.java:

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

public class HelloCV {
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());
}
}

但是你会得到以下运行时错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java310 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.dak.HelloCV.main(HelloCV.java:9)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)

Process finished with exit code 1

回到Menu->File->Project Structure,选择Libraries并添加~/dev/lib/opencv/github_opencv_161101/opencv/release/lib 在我的例子中,或者 ~/path_to_your_dir/opencv/release/lib

enter image description here enter image description here

现在,您已通过 JNI 链接到 native 库。运行 HelloCV,你应该得到:

mat = [  1,   0,   0;
0, 1, 0;
0, 0, 1]

Process finished with exit code 0

关于java - 我需要安装 opencv 并在 Maven+IntelliJ(在 Windows 和 macOS/OSX 上)中通过 java 使用它。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40352831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com