DefTruth / lite.ai.toolkit

🛠 A lite C++ toolkit of awesome AI models, support ONNXRuntime, MNN. Contains YOLOv5, YOLOv6, YOLOX, YOLOv8, FaceDet, HeadSeg, HeadPose, Matting etc. Engine: ONNXRuntime, MNN.
https://github.com/DefTruth/lite.ai.toolkit
GNU General Public License v3.0
3.53k stars 672 forks source link

相关onnxruntime的问题请教 #382

Closed OroChippw closed 1 year ago

OroChippw commented 1 year ago

你好,我是一名C++ onnx推理框架的初学者(刚从python + torch /onnx尝试学习 C++ + onnx的部署方案),很高兴能看到该仓库提供的良好范例,给我提供了很大的帮助,在我进行生成多个输入的tensor的构造时,出现了如下的错误 错误 C2280 “Ort::Value &Ort::Value::operator =(const Ort::Value &)”: 尝试引用已删除的函数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\vector 1485
想问一下如何进行解决?如何去定位bug的问题所在? 与此同时,我正在实现segment anything 的C++推理框架,想问一下后续能否合并到您这个仓库😉 最后再次感谢您的贡献,真的有很大的帮助,谢谢

---------------------------------------------------------------

Hello, I am a beginner of C++ onnx reasoning framework (just trying to learn C++ + onnx deployment scheme from python + torch/onnx), I am very happy to see the good examples provided by this warehouse, which provides me with great help, when I was constructing a tensor that generates multiple inputs, the following error occurred: Error C2280 “Ort::Value &Ort::Value::operator =(const Ort::Value &)”: 尝试引用已删除的函数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\vector 1485
I Want to ask how to solve it? How to locate the problem of the bug? At the same time, I am implementing the C++ reasoning framework of segment anything, and would like to ask if it can be merged into your repository later Finally thanks again for your contribution, it really helps a lot, thanks

DefTruth commented 1 year ago

多输入多输出可以参考RVM的写法:https://github.com/DefTruth/lite.ai.toolkit/blob/main/lite/ort/cv/rvm.cpp
你这里应该是变量作用域的问题,引用了一个被销毁的变量

DefTruth commented 1 year ago

@OroChippw 非常欢迎贡献代码哈哈。正好目前这个repo也缺少一个可长期贡献代码的contributor。作为一个示例性的repo,lite.ai.toolkit增加一个模型比较简单,没有太多约束,可以参考:

比如yolov8, yolov7face, yolov8face这些推理比较简单都可以考虑进来哈,提交PR后我会reivew

OroChippw commented 1 year ago

多输入多输出可以参考RVM的写法:https://github.com/DefTruth/lite.ai.toolkit/blob/main/lite/ort/cv/rvm.cpp 你这里应该是变量作用域的问题,引用了一个被销毁的变量

详细去看了看Ort::Value的销毁机制,目前已经修改成功啦~谢谢

OroChippw commented 1 year ago

@OroChippw 非常欢迎贡献代码哈哈。正好目前这个repo也缺少一个可长期贡献代码的contributor。作为一个示例性的repo,lite.ai.toolkit增加一个模型比较简单,没有太多约束,可以参考:

比如yolov8, yolov7face, yolov8face这些推理比较简单都可以考虑进来哈,提交PR后我会reivew

好的!在对代码进行整理后会提供PR 希望能帮助到更多的人