Python学习笔记

图片模块

ImageEnhance模块

调整图像色彩

from PIL import Image,ImageEnhance

img = Imge.open('b.jpg')
w,h = img.size
img_output = Image.new('RGB',(3*w,h)

# 将原图复制到(0,0)
img.color = ImageEnhance.Color(img,(0,0))

#  获取色彩调整器
img.color = ImageEnhance.Color(img)
imgb = img_color.enhance(1,5)
img_output.paste(imgb,(w,0))

# 减弱色彩
imgc = img_color.enhance(0.5)
img_output.paste(img,(2*w,0))
img.ouput.show()

调整图像亮度

from PIL import Image,ImageEnhance

img = Imge.open('b.jpg')
w,h = img.size
img_output = Image.new('RGB',(3*w,h)

# 将原图复制到(0,0)
img_color = ImageEhance.Color(img,(0,0))

#  获取亮度调整器
img.color = ImageEnhance.Brightness(img)
imgb = img_color.bright(1.5)
img_output.paste(imgb,(w,0))

# 减弱亮度
imgc = img_color.enhance(0.5)
img_output.paste(img,(2*w,0))
img.ouput.show()

调整像素点对图像变亮变暗

from PIL import Image,ImageEnhance

img = Imge.open('b.jpg')
w,h = img.size
img_output = Image.new('RGB',(3*w,h)
img_output.paste(img,(0,0))

# 使用point()函数对像素点进行运算
# 图像整体变暗
imgb = img.point(lambda i:i*1.4)
# 图像整体变暗
imgc = img.point(lambda i:i*0.3)
img_output.paste(imgb,(w,0))
img_output.paste(imgc,(2*w,0))
img_output.show()

ImageDraw 模块

# 创建图片绘制
from PIL import Image,ImageDraw
# 创建一副白色图像
img = Image.new('RGB',(300,200),'white')

# 绘制一个矩形
draw_obj = ImageDraw.Draw(img)
draw_obj.rectangle(50,50,150,150).fill('blue',outline='red')
# draw_obj.text((80,80),'bjsxt',filll='green')
font= ImageFont.truetype('SIMLI.TTF',20)
draw_obj.text((80,80),'jishf',font = font,fill='white')
img.show()

在原有图片上进行绘制

from PIL import Image,ImageEnhance

img = Imge.open('b.jpg')
# 创建绘图对象
draw_obj=ImageDraw.Draw(img)
draw_obj.arc((0,0,width-1,height-1),0,360,fill='blue')

ImageFont模块

from PIL import Image,ImageFont

img = Imge.open('b.jpg')
print(img.size)
draw_obj = ImageDraw.Draw(img)
font = ImageFont.load_default()
draw_obj.text((30,10),'bfdje',font=font,fill='white')
font = ImageFont.trueytpe('fdhfug',18)
draw_obj.text((30,30),'bfdje',font=font,fill='white')
font = ImageFont.trueytpe('fdhfug',18)
draw_obj.text((30,60),'bfdje',font=font,fill='white')
font = ImageFont.trueytpe('fdhfug',18)
img.show()

绘制十字

from PIL import Image,ImageDraw
img = Imge.open('b.jpg')
draw_obj=ImageDraw.Draw(img)
w,h = img.size
draw_obj.line((0,0,w,h),fill=(255,255,0),width=3)
draw_obj.line((0,h,w,0),fill=(255,255,0),width=3)
img.show()

绘制验证码

from PIL import Image,ImageDraw,ImageFont
import random
width,height=100,100
img = Image.new('RGB',(width,height),(255,255,255))
# 获取draw_obj对象
draw_obj = ImageDraw(img)
def get_color():
    return (random.randint(200,255),random.randint(200,255),random.randint(200,255)
for x in range(width):
    for y in range(height):
        draw_obj.point(x,y),fill=get_color())

# 生成随机字母
def get_char():
    return chr(random.randint(65,97))
font=ImageFont.truetype('simsun.ttc',30)

# 绘制随机字母
for i in range(4);
    draw_obj.text((20+i*20,40),get_char(),font=font,fill=(255,0,0))

# 绘制干扰线
draw_obj.line((0,0,100,100),fill='green',width=5)
img.show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值