繁体   English   中英

怎么知道dnn支持的层数?

[英]How can you know the layers supported by dnn?

我已经在 Tensorflow 中实现了一个神经网络。 该网络非常简单,仅使用 Cov2D、MaxPooling 和 UpSampling2D。

规格是:

  • 蟒蛇:3.7
  • 张量流:1.14.0
  • Keras:2.2.4-tf
  • Ubuntu:18.04.4 LTS

网络经过训练后,我已将其转换为 .pb,以便能够在 Windows PC 上从 OpenCV 和 C++ 读取它。

  • 风 10
  • Opencv:3.4.0

但是当我在 C++ 上读取 NN 时出现下一个错误:

cv::dnn::Net MODEL = cv::dnn::readNetFromTensorflow("SLI_model_64.pb");

up_sampling2d/Shape:Shape(conv2d_5/Relu)
out_type:[ ]
T:0
OpenCV Error: Unspecified error (Unknown layer type Shape in op up_sampling2d/Shape) in cv::dnn::experimental_dnn_v3::`anonymous-namespace'::TFImporter::populateNet, file c:\sdk\opencv\3.4.0\sources\modules\dnn\src\tensorflow\tf_importer.cpp, line 1487

据我所知,C++ 版本不支持 Upsamplig。 你同意吗? 我怎么查?

我无法查看 opencv dnn 支持的层,但如果将 opencv 更新到 4.2,问题就会消失。 最有可能的是,opecv 3.4 不支持 UpSampling,并且已经针对 opencv 4.2 进行了更新。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM