python - 在两种不同的环境中读取图像
问题描述
我有两个不同的环境和一个要阅读的图像
在这两个环境中,我都有:
- PIL == 7.2.0
- numpy == 1.19.1
我在两种环境中运行此代码(并且仅此代码):
import numpy as np
from PIL import Image
res = np.asarray(Image.open(r"C:\Users\MLH\Documents\Notebook Projets\CompteursKm\merge_project\boxes\14.jpg"))
但是 res 数组在两个环境中并不相同。
我不知道为什么。你能帮助我吗 ?
从 env1 我得到:
[[[145 100 43], [144 102 44], [143 101 43], ..., [ 89 50 19], [ 81 49 28], [ 63 36 25]],, [[162 115 45], [162 117 49], [160 115 47], ..., [129 91 55], [113 79 54], [ 70 44 29]],, [[164 116 32], [167 119 37], [165 118 36],
从 env2 我得到:
[[[145 101 38], [146 102 39], [143 102 40], ..., [ 86 51 23], [ 81 49 26], [ 63 37 24]],, [[160 115 47], [162 117 49], [160 115 48], ..., [127 91 59], [111 80 52], [ 71 43 29]],, [[164 116 34], [166 119 39], [165 118 40],
我想在 env2 中得到 env1 结果。
解决方案
总而言之,感谢@HansHirse,我们发现问题是Image.core.jpeglib_version
不同的。
要安装 9.0 版,我做了:
pip uninstall pillow
conda install pillow
(如果我这样做了pip install pillow
,我得到了 8.0 版)
我真的不明白为什么,但它正在工作:)
推荐阅读
- python - Python3函数将列表映射到字典
- typescript - ionic 3 movefile函数的问题
- scala - sbt,编译编译桥
- javascript - Calculator Project for Uni - JavaScript Code not working
- navbar - Bootstrap 4 透明导航栏
- python - python ffmpeg子进程在heroku上不起作用
- python - 如何使用字典计算字符串中每个单词的字母?(Python)
- firebase - 使用唯一 ID 时,firebase 数据库检查数据是否在插入之前存在
- c# - 保持 TcpListerner 处于空闲状态 C#
- python - 在模式匹配后返回一个巨大文件的确切行,而不在 Python3 中使用 FOR