我在Tensorflow中实现了一个神经网络来分割图像。该网络非常简单,仅使用Cov2D、MaxPooling和UpSampling2D
规格如下:
网络一旦被训练,我就把它转换成PB,从Windows PC.和OpenCV上可以从C++和C++读取它。
cv::Mat imgOriginal = cv::imread(pathOriginal, 1);//1280x1024 image to segment.
#include <opencv2/dnn/dnn.hpp>
cv::dnn::Net MODEL = cv::dnn::readNetFromTensorflow("model.pb");//Load model.
MODEL.setInput(cv::dnn::blobFromImage(imgOriginal, 1/255., cv::Size(64, 64)));//Pass image to Net.
cv::Mat m = MODEL.forward();
cout << m.size();
Print Output: [1x1]
我不明白为什么输出是这个大小[1x1]。我做错了什么
在.forward()之后需要中间步骤。这种风格仍将保留:
现在detectionMat具有正确的输出尺寸
相关问题 更多 >
编程相关推荐