[ 简体中文 / English]
一个简单的ONNX Runtime Light Glue示例。
测试环境:
CMakeLists.txt
文件,指定ONNX Runtime的路径。可以在这里下载,选择1.16.3版本。ONNXRUNTIME_ROOTDIR
变量的值。set(ONNXRUNTIME_ROOTDIR /home/lin/Projects/onnxruntime-linux-x64-gpu-1.16.3)
git clone https://github.com/Nothand0212/LightGlue-OnnxRunner-cpp.git
cd LightGlue-OnnxRunner-cpp
mkdir build && cd build
cmake.. && make -j
config/param.json
里的路径为自己的路径,包括Extractor
的提取特征点的处理逻辑,提取后先不恢复到原图的坐标,否则会导致匹配结果不准确。./matcher_test /home/lin/Projects/LightGlue-OnnxRunner-cpp/config/param.json
Matcher
类Extractor
类## 遗留问题
- 2024-01-28
~~ - 1. 2024-01-24的遗留的bug,应该是模型的问题。在decoupled_onnx_test
中,如果用模型superpoint_lightglue_fused_fp16.onnx
则不会出现相同的问题。~~
- 2024-01-24
~~ - 1. 在GPU环境下运行时,某些图片(如项目里data/left/21.png)会报错Non-zero status code returned while running MultiHeadAttention node. Name:'MultiHeadAttention_1' Status Message: packed QKV format is not implemented for current GPU. Please disable it in fusion options.
。但是在CPU环境下运行时,不会报错。~~