Skip to content

Commit e180920

Browse files
committed
support onnxruntime
1 parent df4e605 commit e180920

File tree

4 files changed

+32
-24
lines changed

4 files changed

+32
-24
lines changed

yolox_ros_cpp/README.md

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
- OpenCV 4.x
66
- OpenVINO 2021.*
77
- TensorRT 8.x *
8-
<!-- - ONNXRuntime * -->
9-
<!-- - Tensorflow Lite * -->
8+
- ONNXRuntime *
9+
- Tensorflow Lite *
1010

1111
※ Either one of OpenVINO or TensorRT or ONNXRuntime or Tensorflow Lite is required.
1212

@@ -230,34 +230,30 @@ colcon build --cmake-args \
230230

231231
### OpenVINO
232232
```bash
233-
# run yolox_tiny
234233
ros2 launch yolox_ros_cpp yolox_openvino.launch.py
235234

236-
# run other model
237-
ros2 launch yolox_ros_cpp yolox_openvino.launch.py \
238-
model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/openvino/yolox_s.xml
235+
## run other model
236+
# ros2 launch yolox_ros_cpp yolox_openvino.launch.py \
237+
# model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/openvino/yolox_s.xml
239238

240-
# run PINTO_model_zoo model
241-
# This model is converted from version 0.1.0.
242-
ros2 launch yolox_ros_cpp yolox_openvino.launch.py \
243-
model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/onnx/yolox_tiny_480x640.onnx \
244-
model_version:="0.1.0"
239+
## run PINTO_model_zoo model (version 0.1.0)
240+
# ros2 launch yolox_ros_cpp yolox_openvino.launch.py \
241+
# model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/onnx/yolox_tiny_480x640.onnx \
242+
# model_version:="0.1.0"
245243

246-
# run YOLOX-tiny with NCS2
247-
ros2 launch yolox_ros_cpp yolox_openvino_ncs2.launch.py
244+
## run YOLOX-tiny with NCS2
245+
# ros2 launch yolox_ros_cpp yolox_openvino_ncs2.launch.py
248246

249247
```
250248

251249
### TensorRT
252250
```bash
253-
# run yolox_tiny
254251
ros2 launch yolox_ros_cpp yolox_tensorrt.launch.py
255252

256-
# run PINTO_model_zoo model
257-
# This model is converted from version 0.1.0.
258-
ros2 launch yolox_ros_cpp yolox_tensorrt.launch.py \
259-
model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/tensorrt/yolox_tiny_480x640.trt \
260-
model_version:="0.1.0"
253+
## run PINTO_model_zoo model (version 0.1.0)
254+
# ros2 launch yolox_ros_cpp yolox_tensorrt.launch.py \
255+
# model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/tensorrt/yolox_tiny_480x640.trt \
256+
# model_version:="0.1.0"
261257

262258
```
263259

@@ -280,7 +276,7 @@ ros2 launch yolox_ros_cpp yolox_onnxruntime.launch.py
280276
```bash
281277
ros2 launch yolox_ros_cpp yolox_tflite.launch.py
282278

283-
# # run PINTO_model_zoo model
279+
# # run PINTO_model_zoo model (version 0.1.0)
284280
# ros2 launch yolox_ros_cpp yolox_tflite.launch.py \
285281
# model_path:=install/yolox_ros_cpp/share/yolox_ros_cpp/weights/tflite/model_float32.tflite \
286282
# model_version:=0.1.0 \

yolox_ros_cpp/yolox_cpp/CMakeLists.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,14 @@ if(YOLOX_USE_TFLITE)
6262
set(INCLUDES ${INCLUDES} ${FLATBUFFERS_INCLUDE_DIR})
6363
endif()
6464

65+
# onnxruntime
66+
if(YOLOX_USE_ONNXRUNTIME)
67+
find_library(ONNXRUNTIME NAMES onnxruntime)
68+
set(ENABLE_ONNXRUNTIME ON)
69+
set(TARGET_SRC src/yolox_onnxruntime.cpp)
70+
# set(TARGET_DPENDENCIES )
71+
endif()
72+
6573
configure_file(
6674
"${PROJECT_SOURCE_DIR}/include/yolox_cpp/config.h.in"
6775
"${PROJECT_SOURCE_DIR}/include/yolox_cpp/config.h"
@@ -83,6 +91,10 @@ if (YOLOX_USE_TFLITE)
8391
install(DIRECTORY ${TFLITE_LIB_PATH}/ DESTINATION lib)
8492
endif()
8593

94+
if (YOLOX_USE_ONNXRUNTIME)
95+
target_link_libraries(yolox_cpp onnxruntime)
96+
endif()
97+
8698

8799
if(BUILD_TESTING)
88100
find_package(ament_lint_auto REQUIRED)

yolox_ros_cpp/yolox_ros_cpp/launch/yolox_onnxruntime.launch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def generate_launch_description():
1616
),
1717
DeclareLaunchArgument(
1818
"model_path",
19-
default_value="./install/yolox_ros_cpp/share/yolox_ros_cpp/weights/onnx/yolox_nano.onnx",
19+
default_value="./src/YOLOX-ROS/weights/onnx/yolox_tiny.onnx",
2020
description="yolox model path."
2121
),
2222
DeclareLaunchArgument(

yolox_ros_cpp/yolox_ros_cpp/src/yolox_ros_cpp.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@ namespace yolox_ros_cpp
6565
RCLCPP_INFO(this->get_logger(), "Model Type is ONNXRuntime");
6666
this->yolox_ = std::make_unique<yolox_cpp::YoloXONNXRuntime>(
6767
this->params_.model_path,
68-
this->params_.onnxruntime_intra_op_num_threads_,
69-
this->params_.onnxruntime_inter_op_num_threads_,
70-
this->params_.onnxruntime_use_cuda_, this->params_.onnxruntime_device_id,
68+
this->params_.onnxruntime_intra_op_num_threads,
69+
this->params_.onnxruntime_inter_op_num_threads,
70+
this->params_.onnxruntime_use_cuda, this->params_.onnxruntime_device_id,
7171
this->params_.onnxruntime_use_parallel,
7272
this->params_.nms, this->params_.conf, this->params_.model_version,
7373
this->params_.num_classes, this->params_.p6);

0 commit comments

Comments
 (0)