gpt4 book ai didi

python - 如何使用带有预训练模型但缺少标签文件 (.pbtxt) 的 Tensorflows 对象检测模型动物园

转载 作者:太空宇宙 更新时间:2023-11-04 11:18:07 26 4
gpt4 key购买 nike

我正在尝试运行 Tensorflow 对象检测。不幸的是,我发现 Tensorflow 的预训练模型都没有标签文件。我怎样才能得到这些文件?我想要做的就是测试几张图片的对象检测并显示标签。以下代码是我目前所拥有的。不幸的是,几乎所有教程都使用我没有的标签文件 (.pbtxt)。在Tensorflow的相应下载页面上Tensorflow detection model zoo据说标签文件包含在下载中,但实际上没有。我下载了不同的模型。所有模型都没有标签文件。如果有人能帮助我,我将不胜感激。

到目前为止我的代码:

import tensorflow as tf
import cv2
import os

def get_frozen_graph(graph_file):
"""Read Frozen Graph file from disk."""
with tf.gfile.FastGFile(graph_file, "rb") as f:
graph_def = tf.GraphDef()
graph_def.ParseFromString(f.read())
return graph_def

# The TensorRT inference graph file downloaded from Colab or your local machine.
pb_fname = os.path.join(os.getcwd(), "faster_rcnn_inception_resnet_v2_atrous_coco_2018_01_28", "frozen_inference_graph.pb")
trt_graph = get_frozen_graph(pb_fname)

input_names = ['image_tensor']

# Create session and load graph
tf_config = tf.ConfigProto()
tf_config.gpu_options.allow_growth = True
tf_sess = tf.Session(config=tf_config)
tf.import_graph_def(trt_graph, name='')

tf_input = tf_sess.graph.get_tensor_by_name(input_names[0] + ':0')
tf_scores = tf_sess.graph.get_tensor_by_name('detection_scores:0')
tf_boxes = tf_sess.graph.get_tensor_by_name('detection_boxes:0')
tf_classes = tf_sess.graph.get_tensor_by_name('detection_classes:0')
tf_num_detections = tf_sess.graph.get_tensor_by_name('num_detections:0')


IMAGE_PATH = os.path.join(os.getcwd(), "testimages", "000002_491724089556.png")
image = cv2.imread(IMAGE_PATH)
image = cv2.resize(image, (300, 300))

scores, boxes, classes, num_detections = tf_sess.run([tf_scores, tf_boxes, tf_classes, tf_num_detections], feed_dict={
tf_input: image[None, ...]
})
boxes = boxes[0] # index by 0 to remove batch dimension
scores = scores[0]
classes = classes[0]
num_detections = int(num_detections[0])

最佳答案

最终我可以自己解决我的问题。 Tensorflow 文档当场出错。标签文件 (.pbtxt) 随 Tensorflow 提供,位于文件夹 /models/research/object_detection/data/ 中。当您刚获得 Model Zoo 模型时,它们不在您下载的文件夹中。

关于python - 如何使用带有预训练模型但缺少标签文件 (.pbtxt) 的 Tensorflows 对象检测模型动物园,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56586304/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com