如何让 readNetFromTensorflow 读取我的模型?

Rya*_*unk 5 python opencv tensorflow

我是 Tensorflow 和 OpenCV 的新手。我想训练一个模型,然后使用训练后的模型查看图像并查看是否存在匹配。当我将冻结模型传递给 cv2.dnn.readNetFromTensorflow 时,出现以下错误:

C:\projects\opencv-python\opencv\modules\dnn\src\tensorflow\tf_graph_simplifier.cpp:860: 错误: (-215:断言失败) 函数'cv::dnn: 中的nodesMapIt!=nodesMap.end(): :dnn4_v20190122::sortByExecutionOrder'

起初我认为是我的冻结模型造成的,所以我从位于此处的模型动物园下载了一个新模型: https: //github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md

我也尝试添加我的 pbtxt 文件,这确实会产生不同的错误:

cv2.error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\dnn\src\tensorflow\tf_importer.cpp:616: 错误: (-215:断言失败) const_layers.insert(std: :make_pair(name, li)). 函数 'cv::dnn::dnn4_v20190122::`anonymous-namespace'::addConstNodes' 中的第二个

这是我到目前为止所拥有的少量代码:

import numpy as np

import argparse

import cv2

import tensorflow as tf

tfNet = cv2.dnn.readNetFromTensorflow("myPath\\model.pb","myPath\\model.pbtxt")
Run Code Online (Sandbox Code Playgroud)