行业知识
从零开始 TensorRT(7)C++ 篇:解析 ONNX
2026-11-16 04:08:31
来源:互联网转载
前言
���习资料:
()B站视频配套代码 cookbook
示例
参考源码:cookbook → 04-BuildEngineByONNXParser → pyTorch-ONNX-TensorRT
()源码
C++ 代码量较多,已上传 GitHub
OpenCV 安装:
apt install libopencv-dev
(1)按 Python 篇中的方式将 RenNet-18 转为 ONNX
python generate_onnx.py
(2)编译运行
mkdir buildcd buildcmake ..makecd ../bin./demo./demo --fp16./demo --int8
解析
在 cookbook 中,createCalibrationAndInferenceData.py 将 MNIST 数据存储为 npz 文件,并在 C++ 部分直接读取 Numpy 文件中的数据用于推理和校正,避免了图片解码的相关代码。
本文示例依然是参考 cookbook,使用 ResNet 进行推理。将读取 Numpy 文件的部分改为读取本地图像,并利用 OpenCV 对图像进行预处理,Int8 模式中的校正器部分代码也有所改动。
(1)预处理
std::vector loadImg(const std::string filename, int width, int height, int channel) { cv::Mat image = cv::imread(filename, cv::IMREAD_COLOR); if (image.empty()) { std::cerr for (int h = 0; h
上一篇:群晖怎么备份服务器数据?
下一篇:轻松下载Office,步骤与技巧