一、获取图片像素
matplotlib、opencv、skimage、pyplot等第三方库和模块,都有方法能够将图片读取到python程序中将其作为图像对象。那么图片像素实际上指的就是图片分辨率,只需要使用对象shape()这个属性即可获取,下面示例为opencv读取图片像素的方法:
import cv2 imagess = cv2.imread(r'C:\Users\Administrator\Desktop\03.jpg',-1)print(imagess.shape)
或者是用skimage这个第三方库之中的模块也行,使用data模块打开一个自带的图片之后,使用同样的属性即可获取图片像素,代码示例如下所示:
from skimage import dataimg=data.chelsea() rows,cols=img.shape
二、访问像素修改颜色
在文章开头就已经说过了,图像本质上就是像素点来组成的,而图像之所以多种多样的原因也在于它们的颜色不同。简单来说,可以将图像看做是xy坐标系,长宽分别对应的就是x轴以及y轴。
而且python内将图片读取进来打开之后的形式就是多维数组像素点,那么只需要在图片对象后加上中括号使用切片语法。然后再其中添加x坐标、y坐标、通道索引(写冒号就是全部颜色通道修改)作为参数,之后再去用等号赋值即可修改它的颜色,代码示例如下所示:
from skimage import io,dataimg=data.chelsea() R=img[:,:,0] io.imshow(R)
以上就是关于“Python怎么读取图片像素?Python如何用图片像素修改颜色”的全部内容了,希望对你有所帮助。
我是用PIL这个库,用opencv的库也可以\x0d\x0afrom PIL import Image\x0d\x0aimg=Image.open("demo.jpg")\x0d\x0aimg_array=img.load()\x0d\x0a然后就可以通过img_array[x,y]来读取像素值了\x0d\x0a另外img.size查看图片大小,也可以通过img_array[x,y]=(11,22,33)来设置RGB像素值Python本身不支持改变像素大小来修改存储空间,但是可以使用第三方库来实现这一功能。Pillow是一个开源的Python图像处理库,可以用来修改图片的大小,从而减少存储空间。使用Pillow库,可以使用resize()函数来调整图片的大小:
from PIL import Image
img = Image.open('image.jpg')
img = img.resize((200, 200)) # 调整图片大小为200x200像素
img.save('image_resized.jpg') # 保存调整后的图片