【環境搭建】onnx-tensorrt

1,介紹
onnx-tensorrt是一個模型推理框架。

2,安裝
2.1 onnx-tensorrt

sudo apt-get install libprotobuf-dev protobuf-compiler
sudo apt-get install swig
git clone https://github.com/onnx/onnx-tensorrt.git
git submodule sync
git submodule update --init --recursive 
cd onnx-tensorrt
mkdir build
cmake .. -DTENSORRT_ROOT=$HOME/TensorRT 
make -j 8
sudo make install

# 報錯 'CMakeFiles/nvonnxparser_static.dir/all' failed make[1]: ***
cd onnx-tensorrt/build
git checkout v5.0
make -j 8

2.2 protobuf,版本>=3.8.x

sudo apt-get install autoconf automake libtool curl make g++ unzip
sudo apt-get autoremove libprotobuf-dev protobuf-compiler # 卸載
git clone https://github.com/google/protobuf.git
cd protobuf
git submodule sync
git submodule update --init --recursive 
./autogen.sh
./configure
make
make check
sudo make install
sudo ldconfig # refresh shared library cache.
protoc --version

2.3 python安裝

python setup.py build
python setup install
python
>>> import onnx
>>> import onnx_tensorrt.backend as backend
>>> import numpy as np

>>> model = onnx.load("model.onnx")
>>> engine = backend.prepare(model, device='CUDA:0')
>>> input_data = np.random.random(size=(32, 3, 224, 224)).astype(np.float32)
>>> output_data = engine.run(input_data)[0]
>>> print(output_data)
>>> print(output_data.shape)

# 報錯,NvOnnxParser.h:26:10: fatal error: NvInfer.h: 沒有那個文件或目錄
vim setup.py
INC_DIRS = ["$HOME/TensorRT/include"]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章