架构加速-深度学习教程
由于RK、jetson nano和电脑的GPU不相同,对应的pytorch也不同,因此不能直接将电脑训练好的模型丢到板端运行,因为训练的模型框架不同。就像你torch1.13和torch2.0都不一定支持,更何况不同平台上的torch。因此需要进行onnx模型转化,因为在转化的过程中会自动修正你模型的算子,让他支持你的硬件平台,当然也有些算子无法转换,会报错。
onnx是一个跨框架的模型交换格式,可以在不同的平台上运行。相当于一个程序可以在python、c语义、C++上运行。
TensorRT是英伟达推出的加速框架,只能用在电脑端,RK和海思用不了。
也就是onnx是模型格式,TensorRT是推理引擎
yolov8配置onnx
from ultralytics import YOLO
import onnx
Load a model
model = YOLO(r"D:\YOLO\YOLOv8-main\yolov8s-seg.pt") # load an official model
model = YOLO(r"D:\YOLO\YOLOv8-main\runs\train\exp8\weights\best.pt") # load a custom trained model
# Export the model
model.export(format="onnx", opset=11)