程序语言
未读
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)中正确配置。
程序语言
未读
Shell脚本教程(十八)-mktemp和trap命令
Bash 脚本有时需要创建临时文件或临时目录。常见的做法是,在/tmp目录里面创建文件或目录,这样做有很多弊端,使用mktemp命令是最安全的做法。
程序语言
未读
Shell脚本教程(十六)-set与shopt命令
set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本章介绍set的基本用法,帮助你写出更安全的 Bash 脚本。