当前位置: 首页 > news >正文

免费绘画素材网站seo网站推广方案

免费绘画素材网站,seo网站推广方案,济南做网站优化哪家好,四川省人民政府官方网目录 1. 说明2. IKUN模型的CNN模型测试2.1 导入相关库2.2 加载模型2.3 设置保存图片的路径2.4 加载图片2.5 图片预处理2.6 对图片进行预测2.7 显示图片 3. 完整代码和显示结果4. 多张图片进行测试的完整代码以及结果 1. 说明 本篇文章是对上篇文章猫狗大战训练的模型进行测试。…

目录

  • 1. 说明
  • 2. IKUN模型的CNN模型测试
    • 2.1 导入相关库
    • 2.2 加载模型
    • 2.3 设置保存图片的路径
    • 2.4 加载图片
    • 2.5 图片预处理
    • 2.6 对图片进行预测
    • 2.7 显示图片
  • 3. 完整代码和显示结果
  • 4. 多张图片进行测试的完整代码以及结果

1. 说明

本篇文章是对上篇文章猫狗大战训练的模型进行测试。首先是将训练好的模型进行重新加载,然后采用opencv对图片进行加载,最后将加载好的图片输送给模型并且显示结果。

2. IKUN模型的CNN模型测试

2.1 导入相关库

在这里导入需要的第三方库如cv2,如果没有,则需要自行下载,自行下载时候一般建议镜像源,这样下载的快。

from tensorflow import keras
import skimage, os, sys, cv2
from PIL import ImageFont, Image, ImageDraw  # PIL就是pillow包(保存图像)
import numpy as np
# 导入tensorflow
import tensorflow as tf
# 导入keras
from tensorflow import keras

2.2 加载模型

把训练好的模型也加载进来,这里不用加载数据,因为数据是自制的。

# 加载my_ikun.h5文件,重新生成模型对象
recons_model = keras.models.load_model('my_ikun.h5')

2.3 设置保存图片的路径

将数据集的某个数据以图片的形式进行保存,便于测试的可视化,这里在之前已经分了测试集,因此设置图片路径即可。
在这里设置图片存储的位置,便于将图片进行存储。

# 创建图片保存路径
test_file_path = os.path.join(sys.path[0], 'imgs', 'test1', '4.jpg')

上述代码是将test文件夹里面的4.jpg进行测试,如果想测试其它的只需改为x.jpg即可。
在这里插入图片描述

2.4 加载图片

采用cv2对图片进行加载,用opencv库也就是cv2读取图片的时候,图片是三通道的,而训练的模型是三通道的,因此不只用取单通道,而是三通道,这里和之前的灰度图不同。

# 加载本地test.png图像
image = cv2.imread(test_file_path)
# 复制图片
test_img = image.copy()
# 将图片大小转换成(150,150)
test_img = cv2.resize(test_img, (150,150))

2.5 图片预处理

对图片进行预处理,即进行归一化处理和改变形状处理,这是为了便于将图片输入给训练好的模型进行预测。因此在这里将形状改变为1501503的,前面的1是样本数,所以是(1,150,150,3)。

# 预处理: 归一化 + reshape
new_test_img = (test_img/255.0).reshape(1, 150,150, 3)

2.6 对图片进行预测

将图片输入给训练好我的模型并且进行预测。
因为是二分类,所以预测的结果是1个概率值,所以需要进行处理, 大于0.5的是坤坤,小于0.5的是鸡。

# 预测
y_pre_pro = recons_model.predict(new_test_img, verbose=1)
# 哪一类
class_id = np.argmax(y_pre_pro, axis=1)[0]
print('test.png的预测概率:', y_pre_pro)
print('test.png的预测概率:', y_pre_pro[0, class_id])
if y_pre_pro[0, class_id] > 0.5:print('png的所属类别:', '坤哥')
else:print('png的所属类别:', '鸡哥')

2.7 显示图片

对预测的图片进行显示,把预测的数字显示在图片上。
下面5行代码分别是创建窗口,设定窗口大小,显示图片,停留图片,清除内存。

# # 显示
cv2.namedWindow('img', 0)
cv2.resizeWindow('img', 500, 500)  # 自己设定窗口图片的大小
cv2.imshow('img', image)
cv2.waitKey()
cv2.destroyAllWindows()

3. 完整代码和显示结果

以下是完整的代码和图片显示结果。

from tensorflow import keras
import skimage, os, sys, cv2
from PIL import ImageFont, Image, ImageDraw  # PIL就是pillow包(保存图像)
import numpy as np
# 导入tensorflow
import tensorflow as tf
# 导入keras
from tensorflow import keras# 加载my_ikun.h5文件,重新生成模型对象
recons_model = keras.models.load_model('my_ikun.h5')
# 创建图片保存路径
test_file_path = os.path.join(sys.path[0], 'imgs', 'test1', '4.jpg')
# 加载本地test.png图像
image = cv2.imread(test_file_path)
# 复制图片
test_img = image.copy()
# 将图片大小转换成(150,150)
test_img = cv2.resize(test_img, (150,150))
# 预处理: 归一化 + reshape
new_test_img = (test_img/255.0).reshape(1, 150,150, 3)
# 预测
y_pre_pro = recons_model.predict(new_test_img, verbose=1)
# 哪一类
class_id = np.argmax(y_pre_pro, axis=1)[0]
print('test.png的预测概率:', y_pre_pro)
print('test.png的预测概率:', y_pre_pro[0, class_id])
if y_pre_pro[0, class_id] > 0.5:print('png的所属类别:', '坤哥')
else:print('png的所属类别:', '鸡哥')
# # 显示
cv2.namedWindow('img', 0)
cv2.resizeWindow('img', 500, 500)  # 自己设定窗口图片的大小
cv2.imshow('img', image)
cv2.waitKey()
cv2.destroyAllWindows()
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
1/1 [==============================] - 0s 315ms/step
test.png的预测概率: [[1.]]
test.png的预测概率: 1.0
png的所属类别: 坤哥

在这里插入图片描述

4. 多张图片进行测试的完整代码以及结果

为了测试更多的图片,引入循环进行多次测试,效果更好。

from tensorflow import keras
import skimage, os, sys, cv2
from PIL import ImageFont, Image, ImageDraw  # PIL就是pillow包(保存图像)
import numpy as np# 加载my_ikun.h5文件,重新生成模型对象
recons_model = keras.models.load_model('my_ikun.h5')prepicture = int(input("input the number of test picture :"))
for i in range(prepicture):path1 = input("input the test picture path:")# 创建图片保存路径test_file_path = os.path.join('imgs', 'test1', path1)# 加载本地test.png图像image = cv2.imread(test_file_path)# 复制图片test_img = image.copy()# 将图片大小转换成(150,150)test_img = cv2.resize(test_img, (150, 150))# 预处理: 归一化 + reshapenew_test_img = (test_img / 255.0).reshape(1, 150, 150, 3)# 预测y_pre_pro = recons_model.predict(new_test_img, verbose=1)# 哪一类数字class_id = np.argmax(y_pre_pro, axis=1)[0]print('test.png的预测概率:', y_pre_pro)print('test.png的预测概率:', y_pre_pro[0, class_id])if y_pre_pro[0, class_id] > 0.5:print('png的所属类别:', '坤哥')else:print('png的所属类别:', '鸡哥')# # 显示cv2.namedWindow('img', 0)cv2.resizeWindow('img', 500, 500)  # 自己设定窗口图片的大小cv2.imshow('img', image)cv2.waitKey()cv2.destroyAllWindows()
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
input the number of test picture :2
input the test picture path:3.jpg
1/1 [==============================] - 0s 170ms/step
test.png的预测概率: [[0.99739295]]
test.png的预测概率: 0.99739295
png的所属类别: 坤哥

在这里插入图片描述

input the test picture path:10.jpg
1/1 [==============================] - 0s 163ms/step
test.png的预测概率: [[0.09064844]]
test.png的预测概率: 0.09064844
png的所属类别: 鸡哥

在这里插入图片描述

http://www.khdw.cn/news/23345.html

相关文章:

  • 做旅游宣传图的网站营销软文范例大全100字
  • 嘉兴建设局网站培训学校招生营销方案
  • 通过社交网站来做招聘决定天天广告联盟
  • 地方网站名称大连百度网站排名优化
  • 做网站域名后缀选择西安百度竞价代运营
  • 网站建设增长率搜索引擎优化的简写是
  • 广州网站建设怎么做南阳seo优化
  • 下载的网站模板怎么去掉域名前的图标兰州网站seo服务
  • 美女直接做的网站百度搜索百度
  • 企业网站制作的公司信息流推广
  • WordPress如何恢复最初搜索引擎优化自然排名
  • 网站维护有哪些企业短视频营销方式有哪些
  • 网站建设前期要多久seo优化是什么意思
  • abc网站建设百度推广每年600元什么费用
  • 我想做个门户网站怎么做小程序制作流程
  • 公司做网站需要什么手机刷网站排名软件
  • 企业网站设计网百度免费下载安装
  • 淄博市淄川疫情最新情况小红书seo是什么
  • 网站制作时间表设计师培训班多少钱
  • 博彩网站做代理违法吗安徽seo优化规则
  • 交易平台网站模板东莞网站公司
  • 自己做网站推广关键词贵港网站seo
  • 网站建设参考网站的说明书东莞网站制作的公司
  • 京东云擎 wordpress 二级域名关键词排名优化价格
  • 橙色系网站seo关键词排名价格
  • 杭州高端网站建设排名google 浏览器
  • 葡萄牙语网站设计哪家好网络营销具有哪些优势和吸引力
  • 企业微信营销软件重庆seo整站优化方案范文
  • 经常修改网站的关键词好不好搜索引擎网址有哪些
  • 网站建设的费用预算阿里云免费建站