- Notifications
You must be signed in to change notification settings - Fork10
zz990099/lightstereo_cpp
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
该项目是LightStereo算法的c++实现,包括TensorRT、RKNN、OnnxRuntime三种硬件平台(推理引擎),并对原工程OpenStereo/LightStereo导出onnx的代码进行了优化,提高其在非nvidia平台的性能。
- 支持多种推理引擎:
TensorRT、RKNN、OnnxRuntime - 支持异步、多核推理,算法吞吐量较高,特别是
RK3588平台 - 支持部署后模型的正确性、性能、精度测试。
![]() | ![]() |
|---|---|
| left image | disp in color |
以下带有opt标志的代表在原工程OpenStereo基础上,优化模型结构后导出的onnx模型,具体请查看issue_link.
带有async标志的代表使用异步流程进行推理。
| nvidia-3080-laptop | qps | cpu |
|---|---|---|
| lightstereo(fp16) - origin | 388 | 150% |
| lightstereo(fp16) - opt | 370 | 150% |
| lightstereo(fp16) - origin -async | 418 | 170% |
| lightstereo(fp16) - opt -async | 390 | 170% |
| jetson-orin-nx-16GB | qps | cpu |
|---|---|---|
| lightstereo(fp16) - origin | 70 | 65% |
| lightstereo(fp16) - opt | 65 | 70% |
| lightstereo(fp16) - origin -async | 76 | 80% |
| lightstereo(fp16) - opt -async | 69 | 85% |
| orangepi-5-plus-16GB | qps | cpu |
|---|---|---|
| lightstereo(fp16) - origin | 3.7 | 65% |
| lightstereo(fp16) -opt | 9 | 35% |
| lightstereo(fp16) - origin -async | 14 | 210% |
| lightstereo(fp16) -opt -async | 29 | 90% |
| intel-i7-11800H | qps | cpu |
|---|---|---|
| lightstereo(fp16) - origin | 7 | 800% |
| lightstereo(fp16) -opt | 9 | 800% |
下载git项目
git clone git@github.com:zz990099/lightstereo_cpp.gitcd lightstereo_cppgit submodule init&& git submodule update
使用docker构建工作环境
cd lightstereo_cppbash easy_deploy_tool/docker/easy_deploy_startup.sh# 选择对应的平台和环境bash easy_deploy_tool/docker/into_docker.sh
支持stereo-matching算法的evaluation
使用-DENABLE_DEBUG_OUTPUT=ON来开启测试log输出
在docker容器内,编译工程. 使用-DENABLE_*宏来启用某种推理框架,可用的有:-DENABLE_TENSORRT=ON、-DENABLE_RKNN=ON、-DENABLE_ORT=ON,可以兼容。
cd /workspacemdkir build&&cd buildcmake .. -DENABLE_DEBUG_OUTPUT=OFF \ -DBUILD_TESTING=ON \ -DBUILD_EVAL=ON \ -DBUILD_BENCHMARK=ON \ -DENABLE_TENSORRT=ONmake -j
在docker容器内,运行模型转换脚本
cd /workspacebash tools/cvt_onnx2trt.sh# 或者运行python脚本,将模型转换为rknnbash tools/cvt_onnx2rknn.sh
运行测试用例,具体测试用例请参考代码。
cd /workspace/build# 运行正确性测试./bin/test_stereo_lightstereo# 运行性能benchmark./bin/benchmark_stereo_lightstereo# 运行精度测试(epe)./bin/eval_stereo_lightstereo
在SceneFlow上下载flyingthings3d_frames_finalpass和flyingthings3d_disparity,解压后放到/workspace/test_data/sceneflow/FlyingThings3D下
About
LightStereo算法的c++实现,包括TensorRT、RKNN、OnnxRuntime
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Contributors2
Uh oh!
There was an error while loading.Please reload this page.

