TensorRT-CenterNet
所属分类:人工智能/神经网络/深度学习
开发工具:C++
文件大小:0KB
下载次数:0
上传日期:2022-10-26 01:03:46
上 传 者:
sh-1993
说明: 张量rt5,中心网,中心面,变形conv,int8,
(tensorrt5 , centernet , centerface, deform conv, int8,)
文件列表:
CMakeLists.txt (590, 2020-01-02)
calib_img_list.txt (35280, 2020-01-02)
eval_coco.py (6141, 2020-01-02)
example/ (0, 2020-01-02)
example/CMakeLists.txt (346, 2020-01-02)
example/buildEngine.cpp (1248, 2020-01-02)
example/runDet.cpp (2577, 2020-01-02)
img/ (0, 2020-01-02)
img/show.gif (2887521, 2020-01-02)
img/show3.png (1258669, 2020-01-02)
img/show4.png (2176919, 2020-01-02)
include/ (0, 2020-01-02)
include/argparse.h (11007, 2020-01-02)
include/ctdetConfig.h (3520, 2020-01-02)
include/ctdetLayer.h (559, 2020-01-02)
include/ctdetNet.h (2003, 2020-01-02)
include/entroyCalibrator.h (1198, 2020-01-02)
include/python_api.h (543, 2020-01-02)
include/utils.h (5400, 2020-01-02)
model/ (0, 2020-01-02)
model/centerface.onnx (7304528, 2020-01-02)
model/ctdet_helmet.onnx (7949004, 2020-01-02)
onnx-tensorrt/ (0, 2020-01-02)
onnx-tensorrt/CMakeLists.txt (11541, 2020-01-02)
onnx-tensorrt/DCNv2.cpp (6213, 2020-01-02)
onnx-tensorrt/DCNv2.hpp (3990, 2020-01-02)
onnx-tensorrt/Dockerfile (2514, 2020-01-02)
onnx-tensorrt/FancyActivation.cu (4517, 2020-01-02)
onnx-tensorrt/FancyActivation.hpp (3537, 2020-01-02)
onnx-tensorrt/ImporterContext.hpp (4031, 2020-01-02)
onnx-tensorrt/InstanceNormalization.cpp (7416, 2020-01-02)
onnx-tensorrt/InstanceNormalization.hpp (3583, 2020-01-02)
onnx-tensorrt/LICENSE (1146, 2020-01-02)
onnx-tensorrt/ModelImporter.cpp (24582, 2020-01-02)
onnx-tensorrt/ModelImporter.hpp (3607, 2020-01-02)
onnx-tensorrt/NvOnnxParser.cpp (1560, 2020-01-02)
onnx-tensorrt/NvOnnxParser.h (7640, 2020-01-02)
... ...
# TensorRT-CenterNet
### demo (GT 1070)
* [ctdet_coco_dla_2x](https://github.com/xingyizhou/CenterNet/blob/master/readme/MODEL_ZOO.md)
* ![image](img/show3.png)
* [centerface](https://github.com/Star-Clouds/centerface)
* ![image](img/show4.png)
* cthelmet
* ![image](img/show.gif)
### Performance
| model | input_size | GPU | mode | inference Time |
|----------------|------------|----------|--------|---------------|
| [mobilenetv2](https://github.com/CaoWGG/Mobilenetv2-CenterNet) | 512x512 | gtx 1070 |float32 | 3.798ms |
| [mobilenetv2](https://github.com/CaoWGG/Mobilenetv2-CenterNet) | 512x512 | gtx 1070 |int8 | 1.75ms |
| [mobilenetv2](https://github.com/CaoWGG/Mobilenetv2-CenterNet) | 512x512 | jetson TX2|float16 | 22ms |
| [dla34](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/pose_dla_dcn.py)| 512x512 | gtx 1070 |float32 | 24ms |
| [dla34](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/pose_dla_dcn.py)| 512x512 | gtx 1070 |int8 | 19.6ms |
| [dla34](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/pose_dla_dcn.py)| 512x512 | jetson TX2 |fp32 | 209ms |
| [dla34](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/pose_dla_dcn.py)| 512x512 | jetson TX2 |fp16 | 186ms |
| [dla34v0](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/dlav0.py)| 512x512 | gtx 1070 |float32 | 12.6ms |
| [dla34v0](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/dlav0.py)| 512x512 | gtx 1070 |int8 | 6.76ms |
| [dla34v0](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/dlav0.py)| 512x512 | jetson TX2 |fp32 | 114ms |
| [dla34v0](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/dlav0.py)| 512x512 | jetson TX2 |fp16 | 80ms |
| [resdcn101](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/resnet_dcn.py)| 512x512 | gtx 1070 |float32 | 20.9ms |
| [resdcn18](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/resnet_dcn.py)| 512x512 | gtx 1070 |float32 | 5.81ms |
| [resdcn18](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/resnet_dcn.py)| 512x512 | gtx 1070 |int8 | 3.63ms |
| [resdcn18](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/resnet_dcn.py)| 512x512 | jetson TX2 |fp32 | 54ms |
| [resdcn18](https://github.com/xingyizhou/CenterNet/blob/master/src/lib/models/networks/resnet_dcn.py)| 512x512 | jetson TX2 |fp16 | 41ms |
1. support Deform Conv v2.
2. no nms.
3. support fp32 fp16 int8 mode.
### Eval Result
|model|GPU|mode|APtrt/APpaper|APtrt50|APtrt75|APtrtS|APtrtM|APtrtL|
|---|---|---|---|---|---|---|---|---|
|ctdet_coco_dla_2x|gtx 1070|float32|0.365/0.374|0.543|0.390|0.164|0.398|0.536|
|ctdet_coco_dlav0_1x|gtx 1070|float32|0.324/--|0.511|0.343|0.140|0.350|0.476|
|ctdet_coco_dlav0_1x|gtx 1070|int8|0.295/--|0.468|0.311|0.123|0.318|0.446|
|ctdet_coco_resdcn101|gtx 1070|float32|0.332/0.346|0.516|0.349|0.115|0.367|0.531|
|ctdet_coco_resdcn18|gtx 1070|float32|0.277/0.281|0.448|0.286|0.083|0.290|0.454|
|ctdet_coco_resdcn18|gtx 1070|int8|0.242/0.281|0.401|0.250|0.061|0.255|0.409|
#### notes
* cocoval2017 test AP with no augmentation.
* input_szie = 512x512
* thresh = 0.01
* maxpool kernel_size = 3
* calib_img_list.txt : random sample 700 images from COCO2017/val2017
### Enviroments
1. gtx 1070
```
pytorch 1.0-1.1
ubuntu 1604
TensorRT 5.0
onnx-tensorrt v5.0
cuda 9.0
```
2. jetson TX2
```
jetpack 4.2
```
### Models
1. Convert [CenterNet](https://github.com/xingyizhou/centernet) model to onnx. See [here](readme/ctdet2onnx.md) for details.
2. Use [netron](https://github.com/lutzroeder/netron) to observe whether the output of the converted onnx model is (hm, reg, wh)
### Example
```bash
git clone https://github.com/CaoWGG/TensorRT-CenterNet.git
cd TensorRT-CenterNet
mkdir build
cd build && cmake .. && make
cd ..
##ctdet | config include/ctdetConfig.h
## float32
./buildEngine -i model/ctdet_coco_dla_2x.onnx -o model/ctdet_coco_dla_2x.engine
./runDet -e model/ctdet_coco_dla_2x.engine -i test.jpg -c test.h264
##cthelmet | config include/ctdetConfig.h
## flaot32
./buildEngine -i model/ctdet_helmet.onnx -o model/ctdet_helmet.engine -m 0
./runDet -e model/ctdet_helmet.engine -i test.jpg -c test.h264
## int8
./buildEngine -i model/ctdet_helmet.onnx -o model/ctdet_helmet.engine -m 2 -c calib_img_list.txt
./runDet -e model/ctdet_helmet.engine -i test.jpg -c test.h264
##centerface | config include/ctdetConfig.h
./buildEngine -i model/centerface.onnx -o model/centerface.engine
./runDet -e model/centerface.engine -i test.jpg -c test.h264
## run eval_coco.py | conifg your cocodaset and ctdet_coco engine
python3 eval_coco.py model/ctdet_coco_dla_2x.engine
```
### Related projects
* [TensorRT-Yolov3](https://github.com/lewes6369/TensorRT-Yolov3)
* [onnx-tensorrt](https://github.com/onnx/onnx-tensorrt)
* [TensorRT](https://github.com/NVIDIA/TensorRT)
* [CenterNet](https://github.com/xingyizhou/centernet)
* [centerface](https://github.com/Star-Clouds/centerface)
* [netron](https://github.com/lutzroeder/netron)
* [cpp-optparse](https://github.com/weisslj/cpp-optparse)
近期下载者:
相关文件:
收藏者: