浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
时间:2022-07-27
本文章向大家介绍浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1、image.load_img()
from keras.preprocessing import image
img_keras = image.load_img('./original/dog/880.jpg')
print(img_keras)
img_keras = image.img_to_array(img_keras)
print(img_keras[:,1,1])
效果如下:
<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=256x384 at 0x2E6999D37B8
#image.load_img()只是加载了一个文件,没有形成numpy数组,
#下面的numpy数组是通过image.img_to_array()的函数形成的
[108. 108. 110. 115. 119. 120. 122. 125. 127. 127. 129. 131. 132. 134.
1. 135. 138. 138. 139. 143. 141. 136. 132. 131. 135. 121. 103. 97.
2. 85. 69. 65. 69. 67. 74. 80. 77. 82. 92. 99. 105. 113.
3. 126. 128. 129. 132. 134. 135. 135. 135. 135. 134. 133. 131. 130.
4. 124. 122. 120. 119. 119. 121. 122. 123. 121. 120. 120. 122. 124.
5. 124. 123. 121. 120. 119. 119. 118. 116. 114. 121. 120. 117. 115.
6. 112. 111. 111. 114. 105. 104. 107. 104. 103. 106. 105. 101. 71.
7. 99. 99. 77. 71. 80. 69. 71. 69. 65. 63. 65. 64. 61.
8. 67. 74. 77. 79. 81. 79. 76. 78. 78. 77. 75. 77. 79.
9. 72. 68. 68. 67. 66. 64. 63. 61. 61. 57. 57. 56. 56.
10. 51. 45. 42. 34. 31. 28. 26. 27. 28. 28. 28. 29. 29.
11. 28. 27. 26. 25. 26. 24. 23. 22. 21. 21. 21. 22. 22.
12. 21. 21. 20. 20. 20. 19. 19. 19. 18. 18. 18. 18. 18.
13. 18. 18. 18. 17. 16. 14. 13. 12. 12. 10. 10. 10. 10.
14. 9. 9. 8. 10. 10. 10. 10. 12. 15. 18. 20. 23. 20.
15. 175. 229. 231. 230. 221. 219. 220. 227. 223. 213. 220. 227. 221.
16. 216. 219. 214. 197. 187. 179. 165. 175. 160. 175. 201. 206. 207.
17. 196. 178. 189. 207. 195. 190. 188. 152. 124. 97. 113. 179. 214.
18. 122. 172. 178. 204. 196. 200. 184. 167. 147. 112. 106. 131. 193.
19. 202. 188. 187. 199. 206. 207. 208. 172. 139. 147. 128. 130. 215.
20. 224. 221. 219. 217. 218. 206. 185. 158. 180. 174. 173. 142. 139.
21. 200. 202. 205. 174. 122. 119. 123. 120. 155. 206. 160. 191. 191.
22. 182. 158. 116. 66. 29. 6. 22. 47. 54. 53. 55. 61. 64.
23. 75. 80. 84. 86. 88. 87. 88. 89. 89. 88. 87. 86. 86.
24. 71. 174. 136. 13. 7. 38. 68. 77. 79. 80. 81. 81. 80.
25. 78. 77. 77. 77. 77. 76. 76. 76. 75. 74. 75. 75. 75.
26. 73. 71. 70. 68. 65. 62. 59. 57. 55. 52. 49. 46. 43.
27. 34. 31. 28. 25. 23.]
2、cv2.imread()
import cv2
img_cv2 = cv2.imread('./original/dog/880.jpg')
print(img_cv2[:,1,1])
效果如下:
[108 108 110 115 119 120 122 125 127 127 129 131 132 134 134 135 138 138
139 143 141 136 132 131 135 121 103 97 97 85 69 65 69 67 74 80
77 82 92 99 105 113 120 126 128 129 132 134 135 135 135 135 134 133
131 130 126 124 122 120 119 119 121 122 123 121 120 120 122 124 124 124
123 121 120 119 119 118 116 114 121 120 117 115 113 112 111 111 114 105
104 107 104 103 106 105 101 71 72 99 99 77 71 80 69 71 69 65
63 65 64 61 62 67 74 77 79 81 79 76 78 78 77 75 77 79
76 72 68 68 67 66 64 63 61 61 57 57 56 56 54 51 45 42
34 31 28 26 27 28 28 28 29 29 28 28 27 26 25 26 24 23
22 21 21 21 22 22 21 21 21 20 20 20 19 19 19 18 18 18
18 18 18 18 18 18 17 16 14 13 12 12 10 10 10 10 9 9
9 8 10 10 10 10 12 15 18 20 23 20 27 175 229 231 230 221
219 220 227 223 213 220 227 221 220 216 219 214 197 187 179 165 175 160
175 201 206 207 207 196 178 189 207 195 190 188 152 124 97 113 179 214
147 122 172 178 204 196 200 184 167 147 112 106 131 193 218 202 188 187
199 206 207 208 172 139 147 128 130 215 228 224 221 219 217 218 206 185
158 180 174 173 142 139 151 200 202 205 174 122 119 123 120 155 206 160
191 191 192 182 158 116 66 29 6 22 47 54 53 55 61 64 69 75
80 84 86 88 87 88 89 89 88 87 86 86 92 71 174 136 13 7
38 68 77 79 80 81 81 80 79 78 77 77 77 77 76 76 76 75
74 75 75 75 74 73 71 70 68 65 62 59 57 55 52 49 46 43
38 34 31 28 25 23]
补充知识:keras报错:load_weights() got an unexpected keyword arguement ‘skip_mmismatch’
网上下载了一个Yolo(keras+tensorflow)网络的训练代码,在运行的时候,报了以下错误:
load_weights() got an unexpected keyword arguement ‘skip_mmismatch’。
在网上搜索了半天,也没有发现具体原因,最后,仔细看了看这句话的报错,因为我调用的是一个keras的内置函数,却报了没有这个参数的错,就想到了版本问题。最后将keras进行升级(我的升级到了2.1.5版本),这个问题就解决了。
总结:
在跑keras和tensorflow程序的时候遇到了好多次这种版本导致的问题。因为深度学习现在发展比较迅速,所以很多框架的API更新比较快,以后debug的时候一定要注意排查版本问题。
以上这篇浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别就是小编分享给大家的全部内容了,希望能给大家一个参考。
- 腾讯海量监控体系经验分享
- 【Spring开发】—— Spring Core
- Java魔法堂:找外援的利器——Runtime.exec详解
- win10的80端口被system占用的问题
- 【Spring开发】—— AOP之方法级拦截
- eclipse tomcat下网页修改不生效
- 【插件开发】—— 14 Site is incorrect!编辑器启动报错!
- Java魔法堂:Date与日期时间格式化
- Java魔法堂:打包知识点之META-INF/MAINFEST.MF
- WordPress快速建站
- 大数据时代下的生活
- 【Spring实战】—— 1 入门讲解
- 博客园小技巧
- JS魔法堂:关于元素位置和鼠标位置的属性
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- linux系统运维企业常见面试题集合(二)
- Linux系统Shell编程—企业生产案例(一)
- python第三十一课--递归(1.简单递归函数的定义和使用)
- python第三十一课--递归(2.遍历某个路径下面的所有内容)
- python第三十一课--递归(3.递归的弊端)
- python第三十二课——栈
- linux系统运维企业常见面试题集合(三)
- python第三十二课——队列
- python第三十四课——1.匿名函数的定义和使用
- python第三十四课——2.匿名函数配合容器函数的使用
- 专家专栏|使用agent2自定义插件采集通过MQTT协议发送的数据
- Linux系统双网卡绑定配置教程
- python第三十五课——生成器
- python第三十六课——1.可迭代对象
- Linux系统Shell编程——脚本编写思路与过程