gpt4 book ai didi

opencv - 将 JavaCV 与 Kotlin 结合使用

转载 作者:太空宇宙 更新时间:2023-11-03 23:13:27 25 4
gpt4 key购买 nike

我目前正在尝试在 Kotlin 中使用 JavaCV 启动一个项目。我使用 IntelliJ Idea 作为我的 IDE。我正在使用 JavaCV 1.3.2 和 OpenCV 3.20。这是我对 OpenCV 模块依赖项的设置:

OpenCV Project Library Configuration

对于 JavaCV:

JavaCV Project Library Configuration

在依赖项中,我在 javacv 之前有 opencv。为了测试 OpenCV 是否存在且有效,我编写了以下代码进行测试。因为我可以 loadLibrary 并且版本号显示正确,所以我可以假设 OpenCV 确实在工作。

import org.opencv.core.Core
import org.opencv.core.Mat
import org.opencv.core.CvType
import org.opencv.core.Scalar
import org.bytedeco.javacv.OpenCVFrameGrabber

fun main(args : Array<String>) {
println("Test Built Successfully")
System.loadLibrary(Core.NATIVE_LIBRARY_NAME)
println("Running OpenCV Version ${Core.VERSION}")
val grabber = OpenCVFrameGrabber(1)
}

我们初始化抓取器的那一行引发了以下异常:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopencv_core in java.library.path
Caused by: java.lang.UnsatisfiedLinkError: no opencv_imgproc320 in java.library.path

也许我在这里遗漏了一些东西,但我已经按照 JavaCV 的 Git 存储库中的 README.md 提供的说明进行操作。我还没有在 StackOverflow 上看到任何其他人尝试将这个库与 Kotlin 一起使用,尽管我已经查看了一些关于使用 java 引发相同异常的帖子。

最佳答案

在 Kotlin 中处理此错误与 Java 没有什么不同;您需要为 opencv 指定 native 库的路径。默认情况下,在 Windows 上,它会在 PATH 环境变量中设置的任何内容中查找 native 库。

您还可以通过指定系统属性 java.library.path(如错误消息所示)明确指定要查找 native 库的目录。

例如,您可以添加这样的运行配置: run config

${PATH_TO_DYNAMIC_LIB} 将是 native 库 opencv_imgproc320.dll 所在的位置 - 我认为在您的情况下它将是 C:/Users/ms/IdeaProjects/CVTest/opencv/build/java/x64.

关于opencv - 将 JavaCV 与 Kotlin 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44821793/

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