浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别

 更新时间:2020年06月12日 15:35:06   作者:梅花14  
这篇文章主要介绍了浅谈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()区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解C++编程中一元运算符的重载

    详解C++编程中一元运算符的重载

    这篇文章主要介绍了C++编程中一元运算符的重载,特别对递增和递减运算符重载作了着重讲解,需要的朋友可以参考下
    2016-01-01
  • 八个超级好用的Python自动化脚本(小结)

    八个超级好用的Python自动化脚本(小结)

    每天你都可能会执行许多重复的任务,例如阅读新闻、发邮件、查看天气、打开书签、清理文件夹等等,本文主要介绍了Python自动化脚本,具有一定的参考价值,感兴趣的可以了解一下
    2022-07-07
  • 详解python 发送邮件实例代码

    详解python 发送邮件实例代码

    本篇文章主要介绍了python 发送邮件实例代码,详细的介绍了各种方式发送邮件,包括文件形式的邮件、HTML形式的邮件、带图片的HTML邮件等,有兴趣的可以了解一下。
    2016-12-12
  • Python将json文件写入ES数据库的方法

    Python将json文件写入ES数据库的方法

    这篇文章主要介绍了Python将json文件写入ES数据库的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-04-04
  • 实时获取Python的print输出流方法

    实时获取Python的print输出流方法

    今天小编就为大家分享一篇实时获取Python的print输出流方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python操作mysql数据库实现增删查改功能的方法

    Python操作mysql数据库实现增删查改功能的方法

    这篇文章主要介绍了Python操作mysql数据库实现增删查改功能的方法,涉及Python针对mysql数据库的连接、增删改查等相关操作技巧,需要的朋友可以参考下
    2018-01-01
  • python ChainMap的使用详解

    python ChainMap的使用详解

    chainMap是逻辑上合并两个字典为一个逻辑单元,合并后的结构实际上是一个列表,只是逻辑上是仍然为一个字典(并未生成新的),对此列表的操作模拟了各种字典的操作,这篇文章主要介绍了python ChainMap的使用,需要的朋友可以参考下
    2023-03-03
  • matplotlib.pyplot绘图显示控制方法

    matplotlib.pyplot绘图显示控制方法

    今天小编就为大家分享一篇matplotlib.pyplot绘图显示控制方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python3 图片referer防盗链的实现方法

    python3 图片referer防盗链的实现方法

    本篇文章主要介绍了python3 图片referer防盗链的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • 详解如何使用numpy提高Python数据分析效率

    详解如何使用numpy提高Python数据分析效率

    NumPy是Python语言的一个第三方库,其支持大量高维度数组与矩阵运算。本文主要为大家介绍了如何使用numpy提高python数据分析效率,需要的可以参考一下
    2023-04-04

最新评论