python PIL 图像处理

# 导入Image库
import Image
# 读取图片
im = Image.open("1234.jpg")
# 显示图片
im.show()

  


# 创建图片
# 语法:new(mode, size, color=0)
newim = Image.new("RGBA",(640,480),(0,255,0))

  


# 保存图片
newim.save("123.jpg","jpg")  # 保存为jpg格式

# 图片合成
# 语法:blend(im1, im2, alpha) # alpha表示im1和im2的比例参数
Image.blend(im,newim,0.5)

  


# 点操作
im.point(function)  # function接受一个参数,且对图片中的每一个点执行这个函数

# 查看图像信息
im.format()
im.size()
im.mode()

# 图片剪裁
box = (100,100,400,400)  # 设置要裁剪的区域
region = im.crop(box) # region是一个新的图像对象

  

# 图像合并
im.paste(region,box)

  


# 改变图像的大小
out = im.resize((128,128))  #resize成128*128像素大小
# 旋转图像
im.rotate(45)
# 图像类型转换
im = im.convert("RGBA")
# 获取某个像素位置的值
im.getpixel((4,4))

# ImageDraw模块是对Image对象进行简单的二维图像操作的模块
import ImageDraw

  

# 在显示的图片中,输出文字
draw = ImageDraw.Draw(im)
draw.text((10,10),"hello,python",file=(255,0,0),font=None)

# 在图像中画线
draw.line((0,0) + im.size,fill=128)

  


# eg_v1 生成字母验证码图片
import Image
import ImageDraw
import ImageFont
import ImageFilter
import random # 生成随机字母
def Chr():
return chr(random.randint(65,90)) # 随机颜色1
def Color():
return (random.randint(64,255),random.randint(64,255)) # 随机颜色2
def Color2():
return (random.randint(32,127),random.randint(32,127)) # 创建图片
width = 60 * 4
height = 60
image = Image.new("RGBA",(width,height),(255,255,255)) # 创建Font对象
font = ImageFont.truetype("Arial.ttf",36) # 创建Draw对象
draw = ImageDraw.Draw(image) # 填充像素
for x in range(width):
for y in range(height):
draw.point((x,y),fill = Color()) # 输入文字
for i in range(4):
draw.text((60 * i + 10,10),Color(),font=font,fill=Color2()) image = image.filter((ImageFilter.BLUR))
image.save("123.jpg","jpeg")

  

python PIL 图像处理操作的更多相关文章

  1. python PIL 图像处理

    python PIL 图像处理 This blog is from: https://www.jianshu.com/p/e8d058767dfa Image读出来的是PIL的类型,而skimage. ...

  2. python PIL 图像处理库简介(一)

    1. Introduction     PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处 ...

  3. python PIL图像处理库

    1. Introduction PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了. ...

  4. python PIL相关操作

    项目中需要用python生成二维码,这里记录一下相关PIL相关操作. RGBA问题: 需要将图片A粘贴到图片B上,之前没有注意透明度问题,A的背景是透明的,粘贴到B上后,A的周围是黑的.后来才发现是P ...

  5. python——PIL(图像处理库)

    PIL(Python Imaging Library,python图像处理库)提供了通用的图像处理功能,以及大量有用的基本图像操作,如图像缩放,裁剪,旋转,颜色转换等. 1.打开图像并显示 from ...

  6. python PIL图像处理

    新建图像 # 三个参数分别代表图像的模式:常用的为RGB(3通道) .RGBA(4通道为透明通道,0为完全透明, 256为不透明) # 第二个参数为图像的长宽参数 # 第三个为默认的填充颜色,RGB时 ...

  7. python PIL图像处理-框选

    框选图中位置 代码 from PIL import Image,ImageDraw,ImageFont,ImageFilter import random #--------------------- ...

  8. python PIL图像处理-生成图片验证码

    生成效果如图: 代码 from PIL import Image,ImageDraw,ImageFont,ImageFilter import random # 打开一个jpg图像文件: im = I ...

  9. python PIL图像处理-图片上添加文字

    首先需要安装库pillow cmd安装命令:pip install pillow 安装完后,编写脚本如下: from PIL import Image, ImageDraw, ImageFont de ...

随机推荐

  1. ros 运行rviz时出现 QXcbConnection: XCB error: 148 错误 解决方法

    出现上述问题的原因: 1.由于使用了nvc远程控制下位机: 2.rviz是一个基于opengl开发的图形插件,需要使用理论的屏幕参数(thetis' screen),由于使用了teamviewer会导 ...

  2. 报错解决——ctypes.ArgumentError: argument 1:……….. : wrong type

    运行 python darknet.py 结果报错如下: Traceback (most recent call last): File “darknet.py”, line 136, in net ...

  3. 万恶之源 - Python生成器

    生成器 首先我们来看看什么是个生成器,生成器本质就是迭代器 在python中有三种方式来获取生成器 1.通过生成器函数 2.通过各种推到式来实现生成器 3.通过数据的转换也可以获取生成器 首先,我们先 ...

  4. IOP开发数据库--20180105整理

    http://10.110.22.12/cloud-web/#/login/tenant 数据库 代理节点  10.110.22.12      数据库  10.110.22.12    dev/ro ...

  5. Java 基础 面向对象之关键字内部类代码块修饰符

    final final概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这些特殊类之后 ...

  6. sklearn.svm.LinearSVC文档学习

    https://scikit-learn.org/stable/modules/generated/sklearn.svm.LinearSVC.html#sklearn.svm.LinearSVC 1 ...

  7. Facebook的bigpipe

    参考文档:英文版:http://www.cubrid.org/blog/dev-platform/faster-web-page-loading-with-facebook-bigpipe/ 搜索技术 ...

  8. Node.js进击基础一(http)

    URL:统一资源定位符,偏重定位,是URI的子集,例如网址.URL一定是URI,但URI 不一定是URL.规则:只能用英文阿拉伯数字某些符号等,如果有文字就必须编码. URI:统一资源标识符,偏重标识 ...

  9. js 检查文件格式和文件大小

    之前有个工作需要用到js检查文件大小和文件格式,网上查了下有个兄弟写的不错,拿过来就能直接用,感谢他顺便记录下.原始文章地址http://www.jb51.net/article/43498.htm ...

  10. LeetCode67.二进制求和

    给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1" 输出: ...