-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Help]: Use DeployCGDet Error Expression: vector subscript out of range #56
Comments
@SuperJinggg 使用 DeployCGDet 必须要求是静态模型,也就是Batch确定的,并且输入输入要与Batch一样, DeployDet 没有这个限制 (因为 DeployCGDet 使用了 cuda graph)。 假设 Batch 是 4, 那么predict传递的vector 长度也必须为4。怀疑是batch与输入大小不匹配。 |
但错误是在创建model时报的错,这时候并没有进行predict,即没有输入。 |
如果是在创建时出现问题,那只可能是你的模型节点个数与期望不符,发我你的ONNX在netron可视化的截图,看看输入和输出。 |
应该不是模型的问题,如果按照您的教程运行是完全成功的,只是我在打包成动态库后出现的问题。 |
@SuperJinggg 那就只能是你打包或者是调用代码写的问题,不可能是源码的问题。源码中报错 |
好吧,感谢大佬解惑,我只是将demo中的代码写进一个简单的mfc框架。我再仔细去康康 |
你可以发我下你的MFC调用部分的代码,我帮你看看。 |
大佬,这个有点复杂,目前我在考虑直接把您的源代码嵌入进去,我想请问一下plugin这个我需要吗? |
Plugin文件夹的代码不需要,这个是编译插件的。只需要include和source文件夹的代码。source中的pybind下的代码也不需要,这个是用来映射到Python的。 |
我使用MD方式编译将代码打成deploy.dll动态库。然后在mfc的demo中调用。
使用DeployDet时完全正常,但是使用DeployCGDet(model = std::make_shareddeploy::DeployCGDet(enginePath, is_obb);)报错
`Program: E:\yolov8Testv1\Yolov8Detect\x64\Debug\deploy.dll
File: C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\include\vector
Line: 1733
Expression: vector subscript out of range
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.`
报错信息太少了,我无法定位错误。请问大佬对这个错误了解吗?
The text was updated successfully, but these errors were encountered: