- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我使用来自 Keras 的预训练 VGG-16 模型。
到目前为止我的工作源代码是这样的:
from keras.applications.vgg16 import VGG16
from keras.preprocessing.image import load_img
from keras.preprocessing.image import img_to_array
from keras.applications.vgg16 import preprocess_input
from keras.applications.vgg16 import decode_predictions
model = VGG16()
print(model.summary())
image = load_img('./pictures/door.jpg', target_size=(224, 224))
image = img_to_array(image) #output Numpy-array
image = image.reshape((1, image.shape[0], image.shape[1], image.shape[2]))
image = preprocess_input(image)
yhat = model.predict(image)
label = decode_predictions(yhat)
label = label[0][0]
print('%s (%.2f%%)' % (label[1], label[2]*100))
我发现该模型接受了 1000 个类的训练。是否有可能获得该模型训练的类(class)列表?打印出所有预测标签不是一种选择,因为只返回了 5 个。
提前致谢
最佳答案
您可以使用 decode_predictions 并在 top=1000
参数中传递类别总数(只有它的默认值为 5)。
或者您可以看看 Keras 如何在内部执行此操作:它下载文件 imagenet_class_index.json
(通常将其缓存在 ~/.keras/models/
中)。这是一个包含所有类标签的简单 json 文件。
关于python - 获取keras中所有已知vgg-16类的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47474869/
我已经使用 VGG 作为图像分类模型实现了图像字幕。我读过关于 YOLO 是一种快速图像分类和检测模型的文章,它主要用于多目标检测。但是对于图像字幕,我只想要类而不是边界框。 最佳答案 我完全同意 P
你能告诉我每层有多少个神经元吗?我觉得这将增进我对 VGG 正在发生的事情的理解。 让我们在这里使用这段代码只是为了得到一些具体的东西。 https://github.com/machrisaa/te
我的问题是如何将从预训练 Vgg16 模型加载的常量张量转换为 tf.Variable 张量?动机是我需要计算关于 Conv4_3 层内核的特定损失的梯度,但是,内核似乎设置为 tf.Constant
我正在使用使用 VGG(神经网络)的基于转移式的深度学习方法。后者适用于小尺寸(512x512 像素)的图像,但是当输入图像很大(尺寸 > 1500 像素)时它会提供失真的结果。该方法的作者建议将输入
我所做的是: from keras.applications.vgg16 import VGG16 from keras.layers import * from keras.models impor
我想知道是否可以将自定义模型添加到 keras 中的损失函数。例如: def model_loss(y_true, y_pred): inp = Input(shape=(128, 128,
我加载了预训练的 VGG 人脸 CNN 并成功运行。我想从第 3 层和第 8 层提取超列平均值。我正在关注关于从 here 中提取超列的部分。 .但是,由于 get_output 函数不起作用,我不得
我正在使用 Python 3.7.7 和 Tensorflow 2.1.0。 我想创建一个 VGG16 自动编码器网络,向它加载一个权重文件,然后获取它的编码器和解码器。 获取 VGG16 自编码器网
我有一个 VGG19 编码器,它接受 (256,256,3) 的输入图像 y 并返回维度 (32,32, 512) 的张量 来自 vgg 的 conv-4-1 层。我需要将其转换为 numpy 数组以
当使用 torchvision.models 模块加载预训练的 VGG 网络并使用它对任意 RGB 图像进行分类时,网络的输出在每次调用之间明显不同。为什么会这样?根据我的理解,VGG 前向传播的任何
我已关注this加载并运行预训练的 VGG 模型。但是,我试图从隐藏层中提取特征图,并尝试复制“提取任意特征图”部分 here 中的结果。 。我的代码如下: #!/usr/bin/python imp
我正在尝试使用来自 keras 的预训练 VGG 16。但我真的不确定输入范围应该是多少。 快速回答,这些颜色顺序中的哪些? RGB BGR 哪个范围? 0 到 255? 从大约 -125 平衡到大约
我正在使用包含 3k 图像的数据集从头开始训练 VGG-16 模型。 我使用 Tensorflow 平台和 8 个 CPU,没有任何 GPU。 训练率 - 0.01, 重量衰减 - 0.0005, 动
这个问题是对 this answer 评论中讨论的跟进。 . 据我了解,preprocess_input() function 确实意味着输入图像的减法和 std-dev dvision。平均值是在训
刚接触pytorch,想用Vgg做迁移学习。我想删除全连接层并添加一些新的全连接层。我还想使用灰度输入而不是 RGB 输入。为此,我将添加输入层的权重并获得单个权重。所以三个 channel 的权重会
我使用 VGG16 基础创建了一个自定义 Keras 模型,并对其进行训练和保存: from keras.applications import VGG16 from keras import mod
我正在尝试打印所有已知类别及其概率值。第一个值是概率最高的类别。 这是迄今为止我的代码: from keras.applications.vgg16 import VGG16 from keras.p
我试图将具有以下形状的数据拟合到预训练的 keras vgg19 模型中。 图像输入形状为(32383, 96, 96, 3)标签形状为 (32383, 17)我收到了这个错误 expected bl
我正在使用预先训练的 VGG-16 网络将图像转换为特征。我可以按顺序完成这个工作。但是,我想并行执行此操作,但我不确定如何正确构建批处理。 具体来说,假设我加载了 16 个保存在 numpy 数组中
我实际上正在尝试使用 Keras 获得 VGG16 的顺序模型版本。功能版本可以通过以下方式获得: from __future__ import division, print_function im
我是一名优秀的程序员,十分优秀!