【发布时间】:2019-03-16 12:27:45
【问题描述】:
我在使用 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::dnn::ReadProtoFromBinaryFile、文件 C:.hunter_Base\acbf4b9\93b3222 中打开“frozen_inference_graph_face.pb”) \8eb84a0\Build\OpenCV\Source\modules\dnn\src\caffe\caffe_io.cpp,第 1126 行
当我用这样的 Python 代码打开它并正确检测图像时效果很好:
cvNet =
cv.dnn.readNetFromTensorflow('frozen_inference_graph.pb','prototxt.pbtxt')
我已经训练了 ssd_mobilenet_v1_pets。无法理解为什么我不能用我的 C++ 代码打开它,而且当我使用 tensorflow 时,错误是指咖啡厅。也许构建的 OpenCV 的配置是错误的?我设置 WITH_PROTOBUF=ON 和 BUILD_opencv_dnn=ON。
【问题讨论】:
标签: python c++ opencv tensorflow