首页 > 解决方案 > 为什么 ONNX 模型读取失败?

问题描述

我正在使用 opencv cuda dnn 模块进行模型推理。在使用 cv::dnn:: readNetFromONNX 读取我的 onnx 文件时,我收到以下消息。

Opencv(4.4.0-dev)错误:未指定的错误(>(预期:'shape.depth()== CV_32S')其中'shapes.depth()'为5(CV_32FC1)必须等于'CV_32S'为4 (CV_32SC1) 在 void_cdecl cv::dnn::dnn4_v20200609::ONNXImporter::populateNet(类 cv::dnn::dnn4_v20200609::Net),文件 D:\opencv_test\newbuild\opencv-master\modules\dnn\src\ onnx\innx_importer.cpp,第 1442 行

这可能是什么原因?如果有人遇到类似问题并找到任何解决方案,请告诉我。提前致谢。

标签: opencvonnxdotnetnuke

解决方案


您的输入 blob 类型必须是 CV_32SC1 (int) 而不是 CV_32FC1 (float)。


推荐阅读