java – 在Linux中加载OpenCV库?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 在Linux中加载OpenCV库?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2113字,纯文字阅读大概需要4分钟。
内容图文
![java – 在Linux中加载OpenCV库?](/upload/InfoBanner/zyjiaocheng/967/967b902a46564a67adbf3f6281be1444.jpg)
所以我在Windows上构建了一个视觉库,我在Windows上运行它并且运行正常.我使用了命令:
java -jar LiftTracker.jar
我将我在windows上构建的.jar文件传输到Raspberry Pi,并进行了make install以安装opencv库.一旦我这样做,我尝试执行与上面相同的命令并提出错误:
java.lang.UnsatisfiedLinkError: no opencv_java310 in java.library.path.
我做了一些研究,发现我可以在-jar命令旁边运行这个命令
java -Djava.library.path=/path/to/dir
那还是行不通的.这是我导入系统库的方式吗?我在代码中导入它的方式是:
static{
System.loadLibrary("opencv_java310");
}
我认为它不起作用的主要原因是因为我安装opencv的方式.有任何想法吗?
谢谢!
解决方法:
您需要将“libopencv_java320.so”添加到您的java项目库中.它增加了1mb左右的图书馆.
>您可以根据文档:https://opencv-java-tutorials.readthedocs.io/en/latest/01-installing-opencv-for-java.html#install-opencv-3-x-under-linux从源生成此.so文件
>另一种方法是使用终端cmake手动构建源代码(它将下载大约4gb的opencv源代码),应该很简单:从opencv下载源代码:http://opencv.org/releases.html解压缩它并在解压缩目录中创建一个像这样的/ build目录../opencv -3.2.0 /编译/.确保你安装了cmake(Debian / Ubuntu apt get install cmake).在先前创建的/ build文件夹中打开终端并输入:cmake -DBUILD_SHARED_LIBS = OFF ..操作完成后输入make -j8,然后为3.2.0版本生成“libopencv_java_320” – 将此.so复制到java项目中.最后一个类型make install从同一个构建目录在系统上安装3.2.0库(如果需要,您可能希望先前删除旧版本).更多信息:https://elbauldelprogramador.com/en/compile-opencv-3.2-with-java-intellij-idea/
>与上述方法相同,但自动化将使用此脚本:https://github.com/milq/milq/blob/master/scripts/bash/install-opencv.sh脚本也在linux系统上安装opencv.从这个来源获取它:http://milq.github.io/install-opencv-ubuntu-debian/它比第二种方法做得更多,应该是最容易做到的.
在系统中安装opencv libs并将libopencv_java320.so复制到java项目后,你可以删除源代码(毕竟它几乎是4GB).
然后你可以在main方法中使用下面的代码来加载windows .dll(如果你之前也添加了它)和linux .so:
String libName = "";
if (SystemUtils.IS_OS_WINDOWS) {
libName = "opencv_java320.dll";
} else if (SystemUtils.IS_OS_LINUX) {
libName = "libopencv_java320.so";
}
System.load(new File("./libs/".concat(libName)).getAbsolutePath());
内容总结
以上是互联网集市为您收集整理的java – 在Linux中加载OpenCV库?全部内容,希望文章能够帮你解决java – 在Linux中加载OpenCV库?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。