Keras + mnist + 测试自己的图像。错误的预测

2024-02-04

通过测试 mnist 自己的测试图像,它工作得很好,但是一旦我使用来自外部 mnist 的图像,它就会预测错误。我什至尝试从 mnist 数据集中复制其中一张图像,但它仍然无法预测正确的数字(即使在 mnist 数据集中完全相同的图像是可以(预测)的)。

有人能看到我做错了什么吗?我猜图像的尺寸或形状有些问题。

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
from keras.models import Sequential
from keras.layers import Dense, Conv2D, Dropout, Flatten, MaxPooling2D
import cv2 as cv

(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()

x_train = x_train.reshape(x_train.shape[0], 28, 28, 1)
x_test = x_test.reshape(x_test.shape[0], 28, 28, 1)
input_shape = (28, 28, 1)
x_train = x_train.astype('float32')
x_test = x_test.astype('float32')
# Normalizing the RGB codes by dividing it to the max RGB value.
x_train /= 255
x_test /= 255

# -------------------------- CREATE MODEL ------------------------------
'''
model = Sequential()
model.add(Conv2D(28, kernel_size=(3,3), input_shape=input_shape))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten()) # Flattening the 2D arrays for fully connected layers
model.add(Dense(128, activation=tf.nn.relu))
model.add(Dropout(0.2))
model.add(Dense(10,activation=tf.nn.softmax))

# ----------------------------------------------------------------------

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])
model.fit(x=x_train,y=y_train, epochs=1)

# ----------------------------------------------------------------------
'''
model = tf.keras.models.load_model("C:/Users/A551110/PycharmProjects/keras_mnist/venv/mnistv2.model")
file = "C:/Users/A551110/Documents/images/7.png"
model.evaluate(x_test, y_test)

image = cv.imread(file, cv.IMREAD_GRAYSCALE)
image = cv.resize(image, (28,28))
image = 255-image          #inverts image. Always gets read inverted.

plt.imshow(image.reshape(28, 28),cmap='Greys')
plt.show()
pred = model.predict(image.reshape(1, 28, 28, 1), batch_size=1)

print(pred.argmax())

我试过了pred = model.predict(image.reshape(1, 28, 28, 1)),

pred = model.predict_classes(image.reshape(1, 28, 28, 1))

我预测的数字。 mnist 数据集中的上一张(预测正确)和下一张复制并放入(预测错误) https://i.stack.imgur.com/cBPLN.png


我想到了。我没有用这段代码得到正确的标准化值。

image = cv.imread(file, cv.IMREAD_GRAYSCALE)
image = cv.resize(image, (28,28))
image = 255-image     

相反,我必须用底部的划分(这里在底部)来纠正它,我错误地把它放在了图像 = 255-图像在早期的尝试中。这是错误之一,同时还缺少将类型转换为float32这使得正常化以及其间的重塑成为可能。

image = cv.imread(file, cv.IMREAD_GRAYSCALE)
image = cv.resize(file, (28, 28))
image = image.astype('float32')
image = image.reshape(1, 28, 28, 1)
image = 255-image
image /= 255
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Keras + mnist + 测试自己的图像。错误的预测 的相关文章

  • 在 Python 中解析 TCL 列表

    我需要在双括号上拆分以空格分隔的 TCL 列表 例如 OUTPUT 172 25 50 10 01 01 Ethernet 172 25 50 10 01 02 Ethernet Traffic Item 1 172 25 50 10 01
  • 类的 IPython 表示

    我正在使用我创建的模块尝试 IPython 但它没有显示类对象的实际表示 相反 它显示类似的内容 TheClass module TheClass name I heavily在这个模块中使用元类 我有真正有意义的类表示 应该向用户显示 是
  • Python 类型提示 Dict 语法错误 可变默认值是不允许的。使用“默认工厂”

    我不知道为什么解释器会抱怨这个类型的字典 对于这两个实例 我得到一个 不允许可变默认值 使用默认工厂 语法错误 我使用的是 python 3 7 3 from dataclasses import dataclass from typing
  • Gunicorn 工作人员无论如何都会超时

    我正在尝试通过gunicorn运行一个简单的烧瓶应用程序 但是无论我做什么 我的工作人员都会超时 无论是否有针对应用程序的活动 工作人员在我设置任何内容后总是会超时timeout值到 是什么导致它们超时 当我发出请求时 请求成功通过 但工作
  • 在 Celery 任务中调用 Google Cloud API 永远不会返回

    我正在尝试拨打外部电话Google Cloud Natural Language API从一个内Celery任务 使用google cloud python包裹 问题是对 API 的调用永远不会返回 挂起 celery task def g
  • NLTK 2.0分类器批量分类器方法

    当我运行此代码时 它会抛出一个错误 我认为这是由于 NLTK 3 0 中不存在batch classify 方法 我很好奇如何解决旧版本中的某些内容在新版本中消失的此类问题 def accuracy classifier gold resu
  • 嵌套列表的重叠会产生不必要的间隙

    我有一个包含三个列表的嵌套 这些列表由 for 循环填充 并且填充由 if 条件控制 第一次迭代后 它可能类似于以下示例 a 1 2 0 0 0 0 0 0 4 5 0 0 0 0 0 0 6 7 根据条件 它们不重叠 在第二次迭代之后 新
  • 打印数字时添加千位分隔符[重复]

    这个问题在这里已经有答案了 我真的不知道这个问题的 名称 所以它可能是一个不正确的标题 但问题很简单 如果我有一个数字 例如 number 23543 second 68471243 我想要它使print 像这样 23 54368 471
  • GUI(输入和输出矩阵)?

    我需要创建一个 GUI 将数据输入到矩阵或表格中并读取此表单数据 完美的解决方案是限制输入表单仅允许float 例如 A 1 02 0 25 0 30 0 515 0 41 1 13 0 15 1 555 0 25 0 14 1 21 2
  • 从 Powershell 脚本安装 Python

    当以管理员身份从 PowerShell 命令行运行以下命令时 可以在 Windows 11 上成功安装 Python c temp python 3 11 4 amd64 exe quiet InstallAllUsers 0 Instal
  • 为什么一旦我离开内置的运行服务器,Django 就无法找到我的管理媒体文件?

    当我使用内置的简单服务器时 一切正常 管理界面很漂亮 python manage py runserver 但是 当我尝试使用 wsgi 服务器为我的应用程序提供服务时django core handlers wsgi WSGIHandle
  • Python 3:将字符串转换为变量[重复]

    这个问题在这里已经有答案了 我正在从 txt 文件读取文本 并且需要使用我读取的数据之一作为类实例的变量 class Sports def init self players 0 location name self players pla
  • Java 和 Python 可以在同一个应用程序中共存吗?

    我需要一个 Java 实例直接从 Python 实例数据存储中获取数据 我不知道这是否可能 数据存储是否透明 唯一 或者每个实例 如果它们确实可以共存 都有其单独的数据存储 总结一下 Java 应用程序如何从 Python 应用程序的数据存
  • 使用 Python Oauthlib 通过服务帐户验证 Google API

    我不想使用适用于 Python 的 Google API 客户端库 但仍想使用 Python 访问 Google APIOauthlib https github com idan oauthlib 创建服务帐户后谷歌开发者控制台 http
  • Django 视图中的“请求”是什么

    在 Django 第一个应用程序的 Django 教程中 我们有 from django http import HttpResponse def index request return HttpResponse Hello world
  • 带有 LSTM 的 GridSearchCV/RandomizedSearchCV

    我一直在尝试通过 RandomizedSearchCV 调整 LSTM 的超参数 我的代码如下 X train X train reshape X train shape 0 1 X train shape 1 X test X test
  • 为什么 csv.DictReader 给我一个无属性错误?

    我的 CSV 文件是 200 Service 我放入解释器的代码是 snav csv DictReader open screennavigation csv delimiter print snav fieldnames 200 for
  • Python:Goslate 翻译请求返回“503:服务不可用”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我们不允许提出寻求书籍 工具 软件库等推荐的问题 您可以编辑问题 以便用事实和引文来回答 这个问题似乎不是关于主要由程序员使用的特定编程问
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • 如何将 Django 中的权限添加到模型并使用 shell 进行测试

    我在模型中添加了 Meta 类并同步了数据库 然后在 shell 中创建了一个对象 它返回 false 所以我真的无法理解错误在哪里或者缺少什么是否在其他文件中可能存在某种配置 class Employer User Employer in

随机推荐

  • Android studio 重命名包后抛出 Nomatching client found

    我按照下面的链接重命名了包 重命名后 当我尝试构建项目时 android studio 会抛出类似的错误 Android Studio重命名包 https stackoverflow com questions 16804093 andro
  • 多个if条件excel,矩阵结构

    Box type Box type Box type Box type BinLoc 810 811 911 822 S1 2 0 1 0 S2 4 2 2 1 S3 12 6 6 3 S4 24 12 12 6 R1 48 24 24 1
  • Akka 消息传递保证

    我正在尝试找出 Akka 支持哪些消息传递保证 我得出以下结论 最多一次 默认支持 至少一次 由 Akka Persistence 支持 恰好一次 Akka支持exactly once吗 如果不这样做 我怎样才能实现这一目标 正如您所发现的
  • 提高处理具有 1 亿个元素的 ArrayList 时的速度和内存消耗

    我使用其中包含短字符串 10 位数字 的文本文件 文件大小约为1 5Gb 因此行数达到1亿行 每天我都会收到另一个文件 需要提取新元素 每天数万个 解决我的问题的最佳方法是什么 我尝试在 ArrayList 中加载数据 每个文件大约需要 2
  • Flutter:如何监听 FirebaseUser 是否已通过电子邮件验证布尔值?

    My Idea 我想在 Flutter 中使用 Firebase Auth 插件来注册用户 但在他们可以访问该应用程序之前 他们必须验证自己的电子邮件地址 因此 我在注册后将 Firebase 用户推送到验证屏幕 这只是一个加载屏幕 告诉用
  • PHPUnit的白名单和黑名单似乎被忽略

    我正在一个项目上设置 PHPUnit 该项目的结构如下 build src service PHP source code files here tests php unit PHP unit tests here bootstrap ph
  • 文本对齐中心 - shell 脚本

    我正在使用 shell 脚本创建一个基于控制台的简单脚本 它将在我的 bash shell 上运行 它是一个简单的基于菜单的驱动显示一些选项集 现在我想根据屏幕尺寸将文本居中对齐 如何将文本对齐到屏幕中央 请帮助我 最后我找到了解决方案 C
  • 在导航栏中添加自定义视图,例如whatsapp

    我想创建自定义导航栏 就像 WhatsApp 用来在应用程序中显示呼叫指示器一样 如下所示 我已成功添加如上所述的视图 但它没有响应 因为我无法检测到状态栏上的触摸 我只能触摸 触摸返回通话 下面的部分 代码如下 property nona
  • 模拟乘法加法的算法

    如何设计一种算法来模拟乘法加法 输入两个整数 它们可能为零 正数或负数 def multiply a b if a 1 return b elif a 0 return 0 elif a lt 0 return multiply a b e
  • XML 注释和“--”

    偶数个 s 似乎也无效 如果它是一些历史特征 那么它的 专业 部分是什么 反对 部分是无法拥有 在评论中 不以 gt 作为注释结尾并允许在内部添加 从而使注释处理复杂化的原因是什么 也许这对某人有帮助 我遇到了一个问题 我想注释掉 XML
  • 保护 EC2 Amazon Marketplace AMI 上的文件夹安全

    我计划创办一家小型企业并向 Amazon 的 AWS Marketplace 提交 Linux AMI 当我阅读卖家指南时 我看到了这一点 AMI 必须允许操作系统级管理功能 以实现合规性要求 漏洞更新和日志文件访问 对于基于 Linux
  • PHP根据.gitignore过滤文件和路径

    我想使用 PHP 读取 gitignore 配置忽略的所有文件和路径 就像 git 的做法一样 可以重复读取目录并对每个文件使用正则表达式进行过滤 但如果路径中的文件过多 则效果不佳 有什么好的和最有效的方法来读取 gitignore 忽略
  • 登录 SQL Server 时出错

    当我想要连接到 SQL Server 2008 时 我收到以下消息 无法连接到服务器 附加信息 无法打开用户默认数据库 登录失败 用户 sa 登录失败 微软 SQL Server 错误 4064 我该如何解决这个错误 这个错误 Micros
  • 在ormlite android中使用DataType.SERIALIZABLE存储对象列表

    如何在android中使用ORMlite保存ArrayList我的模型如下 class Model DatabaseField public String type DatabaseField public String name Data
  • System.Delegate System.Reflection.MethodInfo.CreateDelegate(System.Type)

    据我所知 这个错误在过去曾发生过 当时 Ninject 和站点包的目标是 4 x 并且彼此不匹配 我检查了我的机器 它们匹配 都是 4 0 我确实花了一些时间更新项目中的所有 Nu Get 包 在此之前 并没有出现过这个错误 我怎样才能消除
  • 为什么我的查询返回的结果很多?

    我有一群候选人 他们都做过一份或多份工作 每个人都有一家公司 使用一些技能 糟糕的 ASCII 艺术如下 candidate 1 candidate 2
  • Dapper 是否支持 SQL 2008 表值参数 2?

    我知道 dapper 可以支持 TVF 但是如何随 TVF 一起发送额外的参数 而不将其添加到 IntDynamicParam 类中 请参阅 Tests cs 中的以下示例 我已修改以添加额外参数 connection Execute CR
  • Angular 13:无法在浏览器中看到 Jasmine 测试

    我有一个新的 Angular 项目 其中每个测试都完成 但它们不会在业力窗口中显示任何内容 我的组件没有 预览 与描述的非常相似在这个问题中 https stackoverflow com questions 55521855 list o
  • 用于命令行构建的 MSBuild 与 devenv

    我想知道 从命令行编译解决方案时使用 msbuild 和 devenv 有什么区别 注意到的一件明显的事情是 msbuild 确实构建了解决方案中未包含的依赖项目 而 devenv 则不然 还有其他的吗 是否有一些特殊标志可以传递给 msb
  • Keras + mnist + 测试自己的图像。错误的预测

    通过测试 mnist 自己的测试图像 它工作得很好 但是一旦我使用来自外部 mnist 的图像 它就会预测错误 我什至尝试从 mnist 数据集中复制其中一张图像 但它仍然无法预测正确的数字 即使在 mnist 数据集中完全相同的图像是可以