程序语言
未读
Java调用OnnxRuntime推理(纯代码)
这段代码是用于加载和使用ONNX模型进行图像预测的Java程序。它首先加载一个ONNX模型,该模型被设计用于检测图像中的物体。程序通过调用`OnnxModelLoader`的`loadModel`方法来加载模型,并检查模型输入信息的元数据。加载模型后,程序使用`OnnxModelPredictHandler`类的`predict`方法,对指定路径的图片进行预测,并返回预测结果。
预测过程涉及图像预处理(例如调整图像大小以匹配模型的输入要求),然后使用ONNX运行时环境(OrtSession)运行模型,并处理模型的输出。预测结果被存储在`PredictResult`对象中,并可以通过`pointBox`方法将预测结果显示在图形界面上。
程序还包含了`OnnxModelHolder`类,用于存储模型的运行时环境、会话、标签信息、输入数据的维度等信息。此外,`OnnxModelPredictHandler`类实现了`PredictHandler`接口,定义了预测处理的方法,如使用图片路径、输入流或`BufferedImage`对象作为输入进行预测。
代码中的注释和命名规则使用了Java的编程规范,并且使用了Lombok库来减少样板代码(如getter和setter方法)的编写。
注意,这段代码依赖于JavaCV和ONNX Runtime的Java库,这些库需要在项目的依赖管理工具(如Maven)中正确配置。
搭建opencv和JavaOnnxRuntime环境
好的,以下是关于Windows环境搭建、安装环境信息、Docker环境搭建的总结:
一、Windows环境搭建
1. 系统:Windows 10。
2. 显卡信息:RTX 1060 6GB。
3. Java:版本8u202。
二、安装环境信息
1. CUDA:版本11.8。
2. CUDNN:版本8.5.0.96。
3. OpenCV:版本4.7.0。
三、Docker环境搭建
1. 获取docker镜像
可以通过docker pull命令获取镜像,镜像名称为junpzx/jdk:8-ubuntu20.04-opencv4.7.0-cuda11.8.0-cudnn8-runtime。
2. 启动镜像
使用docker run命令启动镜像,并指定使用GPU的权限(如果需要的话)。
四、Dockerfile配置说明
在Dockerfile中,首先设置基础镜像为nvidia/cuda:11.8.0-cudnn8-runtime,然后安装opencv和其他必要的依赖。配置过程中需要注意版本的选择和路径的设置,确保安装成功。最后,配置中文环境和时区,并设置容器启动时需要执行的命令。
五、注意事项
在安装opencv和java调用onnx runtime时,可能会遇到程序突然退出的问题。这可能是因为缺少依赖或者版本不兼容导致的。可以尝试下载并放置zlibwapi.dll依赖到JDK的bin目录下解决问题。
六、自行下载jdk-8u202并替换Dockerfile文件相关内容
如果需要根据自己的需求替换Dockerfile文件中的jdk版本,可以自行下载jdk-8u202,然后替换Dockerfile文件中的相关路径和文件名。确保替换后的路径和文件名与实际的jdk安装路径和文件名一致。
以上是Windows环境搭建、安装环境信息、Docker环境搭建的总结,希望能对你有所帮助。