当网络训练后,就可以导入模型进行测试。

def single_img_predict(model_path,img_path):# 加载网络model = torch.load(model_path, map_location=lambda storage, loc: storage)# print(model)transform = transforms.Compose([# 这里只对其中的一个通道进行归一化的操作    transforms.Resize((224,224)),transforms.ToTensor(),transforms.Normalize([0.5529,0.55,0.5529], [0.5529,0.50,0.50])])"""If the unread image is RGBA four-channel the A channel is a transparent channel, and the channel value is temporarilynot used for deep learning model training,so use convert (‘RGB’) for channel conversion""" img = Image.open(img_path)RGB_img = img.convert('RGB')img_torch = transform(RGB_img)img_torch = img_torch.view(-1, 3, 224, 224)# 开始预测outputs = model(img_torch)_, predicted = torch.max(outputs.data, 1)  #即为索引print(predicted)print('正在全力预测中.......')print("上传的图片的预测结果是:" +names[predicted[0].numpy()])   cv2.namedWindow('selected_jpg', cv2.WINDOW_FREERATIO)cv2.imshow("selected_jpg", cv2.imread(img_path,1))  #imshow图片显示函数  #imread图片读入函数cv2.waitKey(0)  # 键盘绑定函数,参数一般写为0,这样会无限等待键盘的输入,没有返回值。cv2.destroyAllWindows()    #是一个可以轻易删除任何我们建立的窗口
model_path='C:\\Users\\1\\net.pkl'
img_path='C:\\Users\\1\\yilaguangray.jpg'
single_img_predict(model_path,img_path)

这里用到了opencv打开一个窗口来读取图片。首先先将图片进行预处理,转为RGB彩图,再利用导入训练好的模型进行预测,这里print(predicted)就是最大值对应的索引,通过列表即可找到对应的标签,opencv的作用已经在代码中注释啦。结果如下图:

总结:当需要更换要分类识别垃圾图片时只需更换图片的路径即可。img_path='C:\\Users\\1\\spyder\\dataset\\yilaguangray.jpg'

垃圾分类之上传一张图片进行测试相关推荐

  1. 小程序之上传多张图片

    上传组件uploadImg文件夹(有uploadImg.wxml.uploadImg.wxss.uploadImg.js.uploadImg.json) uploadImg.wxml: <vie ...

  2. JAVA网络编程之上传一张图片

    前言:虽然Nginx帮我们做好了负载均衡,Tomcat则帮我们完成TCP连接的建立,HTTP请求的处理,但了解其底层传输的网络编程也是十分重要的. 我们以TCP传输为例,来具体实现两个需求. 一.传输 ...

  3. 测试机房质量之上传下载速率测试

    测试机房质量之上传下载速率测试 之前介绍了通过Ping值来测试机房质量,但这仅仅是测试的一部分.我们想要考察机房是否符合自己的业务需求,它的线路情况好不好,稳定不稳定,则还是需要测试它的上传下载速率情 ...

  4. java微信上传本地视频教程_java微信开发之上传下载多媒体文件,java上传下载_PHP教程...

    java微信开发之上传下载多媒体文件,java上传下载 回复图片.音频.视频消息都是需要media_id的,这个是需要将多媒体文件上传到微信服务器才有的. 将多媒体文件上传到微信服务器,以及从微信服务 ...

  5. 爬虫之上传文件,request如何上传文件

    爬虫之上传文件,request如何上传文件,当我们遇到需要上传文件的接口时,如何破解上传文件的密码呢? 如图,文件的参数名files[],传输多张图片,那如何用python实现呢? 1.方法1:使用r ...

  6. 一次性上传300张图片引发的思考

    1. 需求来源和变动 1.1 需求的来源 最近负责的项目是 一个题库系统,客户通过excel来批量录入试题,且题里面会有图片和视频.所以采用的方案是 ① excel中使用某种规则表达式来表示图片 ② ...

  7. 自制app(游戏)Please Go之上传头像篇----萌新成长之路

    自制app(游戏)Please Go之上传头像篇 最近在自己开发一个自己想出来的游戏(大家可以猜猜是一款什么游戏~),想一边学习一边巩固,所以在这里把项目里面用到的功能分模块写在博客里面.希望有些地方 ...

  8. 高手教你PHP上传多张图片

    高手教你PHP上传多张图片 对于我们来说上传一张图片是非常简单的事情,这里教大家一个关于PHP上传多张图片的代码分析,希望对大家有帮助. 学习PHP时,你可能会遇到PHP上传多张图片问题,这里将介绍P ...

  9. ajax请求多张图片数据库,ajax上传多文件,一次上传多张图片

    ajax上传多文件,一次上传多张图片 作者:PHPYuan 时间:2018-11-04 03:41:44 使用ajax上传文件,指望这个对象:let fd = new FormData(); html ...

最新文章

  1. mybatis实体类注解_SpringBoot2.x系列教程43--整合使用Mybatis
  2. 指尖检测的几种新方法
  3. iOS基础篇非运行状态——应用启动场景介绍
  4. ubuntu卸载vsftpd出错
  5. github图---小章鱼图标
  6. 在ubuntu上如何将多张图片或PDF合到一个PDF上
  7. tcpdump抓包最常用的命令
  8. apple apns http2 java调用
  9. 如何调试CSS的跨浏览器样式bug
  10. PHP获得指定日期所在月的第一天和最后一天
  11. fatal error: krb5.h: 没有那个文件或目录
  12. 记住不要把Bitmap往List等集合放
  13. java模板引擎 jade_jade模板引擎
  14. matlab白噪声生成,数字信号处理——matlab生成白噪声
  15. 5053服务器未响应,5053,控制器未响应
  16. 【PTA】7-9 句子首字母变大写(python)
  17. oracle怎么看alter日志,Oracle 11g 日志alter文件位置
  18. 国人自研开源项目,一款简单易用的 GitLab 替代品
  19. 【校招Web前端面试干货分享】
  20. 【一周书讯】网络安全、云计算、人工智能、大数据一网打尽

热门文章

  1. Cisco路由器和交换机型号
  2. c++自动抢购_304不锈钢全自动洗衣机全铜加长特长拖把池 智能止水6分4分水龙头1元优惠券券后价7.8元...
  3. 你是去上大学,别让大学上了你
  4. java中取值保留小数点后两位的四种方法
  5. 联合证券|滴滴出行即日起恢复!A股嗨了!券商扛起领涨大旗
  6. 如何将抖音快手短视频好看视频等任何直播平台视频转为MP4
  7. ArcMap制作3D地形图
  8. 哪一个国家耗巨资请熊猫去的_熊猫4.0:一个月过去了,复苏迹象
  9. 矩阵键盘_按键检测_按键次数检测
  10. 智能对话机器人开发实战案例剖析(2)