gpt4 book ai didi

java - 如何获取要包含到 readNetFromTensorflow() 中的数据集路径

转载 作者:行者123 更新时间:2023-12-02 10:02:28 25 4
gpt4 key购买 nike

我如何包含要包含在 Net.readfromtensorflow 中的数据集路径。我不断收到 UnsatisfiedLinkError 错误。数据集放置在静态目录中。我引用 spring 文档“默认情况下,Spring Boot 从类路径中名为/static (或/public 或/resources 或/META-INF/resources)的目录或 ServletContext 的根目录中提供静态内容”

使用的代码:

Net net = Dnn.readNetFromTensorflow("/dataset/frozen_east_text_detection.pb");

完整错误:出现意外错误(类型=内部服务器错误,状态=500)。org.opencv.dnn.Dnn.readNetFromTensorflow_1(Ljava/lang/String;)Jjava.lang.UnsatisfiedLinkError: org.opencv.dnn.Dnn.readNetFromTensorflow_1(Ljava/lang/String;)J

使用Spring Boot 2.0 Spring 版本5.1opencv 4.0.1

最佳答案

您使用哪个 Maven 依赖项?您可以使用 opencv 的 javacpp-presets ( https://github.com/bytedeco/javacpp-presets/tree/master/opencv )。您所要做的就是将 Maven 依赖项( https://mvnrepository.com/artifact/org.bytedeco.javacpp-presets/opencv-platform )添加到您的 pom.xml 中。该依赖项包括每个平台(windows、linux、mac ..)所需的系统库。在使用 opencv(来自 org.opencv 包命名空间的类)之前,您必须调用

静态{
Loader.load(opencv_java.class);
}

此调用之后应该可以使用 opencv api。 java.lang.UnsatisfiedLinkError 应该消失。这个错误与spring无关。这是必须加载 opencv 所需的库的问题。要加载 east_text_detection.pb 文件,您可以使用如下内容:

String location = new File(this.getClass().getClassLoader().getResource("/dataset/frozen_east_text_detection.pb").toURI()).getPath();
Net net = Dnn.readNetFromTensorflow(location);

这需要一个包含 .pb 文件的目录“dataset”。数据集目录应直接位于资源目​​录下。

关于java - 如何获取要包含到 readNetFromTensorflow() 中的数据集路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55528044/

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