python处理图片基础用法

图片大小,图片颜色空间,图片格式

from PIL import Image

img = Image.open('mei.jpg') # 打开图片
print(img.size,img.mode,img.format)

split方法将RGB模式的图片进行通道分离 分离通道之后图片模式均为L灰度模式

im = img.split()
print(im[0].mode)
im[0].show()
im[1].show()
im[2].show()
merge方法可以将分离的通道进行合并
img2 = Image.merge("RGB",(im[0],im[2],im[1]))
img2.show()

img3 = Image.merge("RGB",(im[1],im[0],im[2]))
img3.show()

获取图片的像素信息:getdata( )方法可获取像素数值,整个图像的像素以列表形式保存,而每个像素的RGB数值被保存在元组中

rgb_px= list(img.getdata())
print(rgb_px,len(rgb_px))
## 这个列表的长度是图片总像素值

resize调整图片尺寸

from PIL import Image

img = Image.open('mei.jpg').convert('L')
print(img.size,len(list(img.getdata())))
img_new = img.resize((300,300))
print(img_new.size,len(list(img_new.getdata())))

为图片添加若干白噪点

from PIL import Image
import random
img = Image.open('mei.jpg').convert('L') #打开图片并转为灰度模式
img_new = img.resize((600,600)) # 调整为300*300px
img_new_px = list(img_new.getdata()) #获取图片像素点
## 添加5000个白噪点
for i in range(5000):
    n = random.randint(0,len(img_new_px))
    img_new_px[n] = 255
img_new.show() #此时图片未改变

imn = Image.new(img_new.mode,img_new.size)
imn.putdata(data=img_new_px)
imn.show()

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值