tensorRT 与yolov3_tiny

yolov3-tiny中有下面这些层:

Convolutional

Maxpooling

Leaky-Relu

Linear-Relu(正常的Relu)

Residual Block

Strided Residual Block

Upsample

查看TensorRT支持的网络层种类:

https://developer.download.nvidia.cn/compute/machine-learning/tensorrt/docs/5.1/rc/TensorRT-Support-Matrix-Guide.pdf

ONNX的格式是都支持上面的层的,只是不清楚Residual Block这种跨连接的层是不是可以直接实现的。

 

如果采用的是C++ 的API,有下面几个问题思考:

1、weight格式如何转换成为ONNX的格式

2、如何读取图片,输入网络

3、网络的输出,转换为准确度

 

如果采用的是Python的API,那么直接就会有Yolo-V3的示例。

由于ONNX版本的问题造成了一天进度都很慢,现在已经可以将示例跑通了。

 

整个过程中遇到的Bug有:

1、ONNX的upsample在1.2.1之后就移除了,开始的时候有python2和python3两个高版本的ONNX的包,应该将python2的ONNX版本调低,但是将python3的ONNX版本降低了。

2、PIL的图片读取速度比Opencv要慢。

3、feature的尺寸是CHW,其中H和W的两个顺序不要颠倒了。

 

TX2 的刷机过程中遇到的问题有:

1、需要用USB-Mini线连接TX2与电脑,同时还需要将TX2和电脑用网线连接到路由器上,同时要保证路由器是可以上网的。

2、在Nvidia官网上下载的只是一个Ubuntu主机的安装包,需要将这个安装包安装在Ubuntu上,然后在Ubuntu电脑上下载Cuda、Cudnn等包。

3、在TX2上安装pycuda的时候遇到了问题,其中最后解决的是关于环境变量的问题,,好像是在什么目录下,建立了一个sh文件,然后将环境变量写到里面了。改变/etc下面的环境变量是不是需要重启?

4、在TX2上使用半精度的TensorRT遇到了问题,building engine总是出现问题。

 

转载于:https://www.cnblogs.com/yanxingang/p/10851116.html

你可能感兴趣的:(tensorRT 与yolov3_tiny)