OpenCV 3.4.1 error readNetFromTensorflow 无法在 cv::d nn::ReadProtoFromBinaryFile 中打开 .pb



>我在使用 opencv C++ 打开 protobuf 文件时遇到问题。 我使用此代码:

cv::String weights = "frozen_inference_graph_face.pb";
cv::String pbtxt = "prototxt.pbtxt";
auto graph = cv::dnn::readNetFromTensorflow(weights, pbtxt);

我有这个错误:

OpenCV(3.4.1( 错误: 未指定的错误 (失败: fs.is_open((。无法在 cv::d nn::ReadProtoFromBinaryFile、文件 C:.hunter_Base\acbf4b9\93b3222\8eb84a0\Build\OpenCV\Source\modules\dnn\src\caffe\caffe_io.cpp,第 1126 行中打开"frozen_inference_graph_face.pb"(

当我像这样使用 Python 代码打开它并正确检测图像时,它运行良好:

cvNet = 
cv.dnn.readNetFromTensorflow('frozen_inference_graph.pb','prototxt.pbtxt')

我训练过ssd_mobilenet_v1_pets。不明白为什么我不能用我的C++代码打开它,当我使用张量流时,错误是指咖啡馆。也许构建的OpenCV的配置是错误的?我设置了WITH_PROTOBUF=ON和BUILD_opencv_dnn=ON。

显然,这是路径的问题,你应该检查相对路径,像这样:

model = cv2.dnn.readNetFromCaffe("CarTypeRecognizition/model/vehicle_model.prototxt",
"CarTypeRecognizition/model/vehicle_model.caffemodel")

最新更新