Python 将图像中的像素值替换为不同的值,但在获得颜色值后,它就不同了
该值应该是(1,1,1)…但它显示(8,1,0)JPEG是一种有损格式 保存时,将使用不保留精确像素信息的算法压缩像素数据。在读取和解压缩该数据时,无法保证特定像素仍具有完全相同的颜色值<就JPEG压缩而言,code>(8,1,0)已经足够接近了 如果对应用程序很重要,请使用与PNG完全相同的保存像素数据的不同格式。JPEG是一种有损格式 保存时,将使用不保留精确像素信息的算法压缩像素数据。在读取和解压缩该数据时,无法保证特定像素仍具有完全相同的颜色值<就JPEG压缩而言,code>(8,1,0)已经足够接近了Python 将图像中的像素值替换为不同的值,但在获得颜色值后,它就不同了,python,python-2.7,jpeg,python-imaging-library,Python,Python 2.7,Jpeg,Python Imaging Library,该值应该是(1,1,1)…但它显示(8,1,0)JPEG是一种有损格式 保存时,将使用不保留精确像素信息的算法压缩像素数据。在读取和解压缩该数据时,无法保证特定像素仍具有完全相同的颜色值(8,1,0)已经足够接近了 如果对应用程序很重要,请使用与PNG完全相同的保存像素数据的不同格式。JPEG是一种有损格式 保存时,将使用不保留精确像素信息的算法压缩像素数据。在读取和解压缩该数据时,无法保证特定像素仍具有完全相同的颜色值(8,1,0)已经足够接近了 如果这对您的应用程序很重要,请使用与PNG完全
如果这对您的应用程序很重要,请使用与PNG完全相同的保存像素数据的不同格式。谢谢您添加标签@martjin谢谢您添加标签@martjin谢谢您的回答,我已经被困了很长一段时间。另外,除了更改格式之外,还有其他选择吗?@user2524452,您可以更改压缩因子,这可能会有所帮助,但值永远不会精确-这是格式的本质。这就是为什么它能够使图像变得更小。你可以尝试增加质量设置,但你永远不会让JPEG完全按照你的设置保存所有内容
im.save(“E:\\new.jpeg,quality=95)
是建议的最大值,quality=100
禁用量化阶段,导致文件大小荒谬。另外,非常感谢您的回答,我已经被困了很长时间。另外,除了更改格式之外,还有其他选择吗?@user2524452,您可以更改压缩因子,这可能会有所帮助,但值永远不会精确-这是格式的本质。这就是为什么它能够使图像变得更小。你可以尝试增加质量设置,但你永远不会让JPEG完全按照你的设置保存所有内容im.save(“E:\\new.jpeg”,quality=95)
是建议的最大值,quality=100
禁用量化阶段,导致文件大小过大。另外,请参阅
>>> from PIL import Image
>>> im = Image.open("E:\\aaa.jpeg")
>>> color = im.getpixel((100,100))
>>> print color
(235, 229, 205)
>>> im.putpixel((100,100),(1,1,1))
>>> im.save("E:\\new.jpeg")
>>> im=Image.open("E:\\new.jpeg")
>>> color=im.getpixel((100,100))
>>> print color
(8, 1, 0)