- 1、本文档共75页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 图像的旋转、翻转图像、和滤镜效果 from PIL import Image from PIL import ImageFilter #实现滤镜效果需要 img = Image.open(c:/tmp/pic/grass_half.jpg) print(img.format,img.mode) #JPEG RGB newImg = img.rotate(90,expand = True) #图像逆时针旋转90度 newImg.show() newImg = img.transpose(Image.FLIP_LEFT_RIGHT) #左右翻转 newImg = img.transpose(Image.FLIP_TOP_BOTTOM) #上下翻转(颠倒) newImg = img.filter(ImageFilter.BLUR) #模糊效果 滤镜效果: ImageFilter.CONTOUR 轮廓效果 ImageFilter.EDGE_ENHANCE 边缘增强 ImageFilter.EMBOSS 浮雕 ImageFilter.SMOOTH 平滑 ImageFilter.SHARPEN 锐化 图像的裁剪 图像的裁剪 from PIL import Image img = Image.open(c:/tmp/pic/grass.jpg) w,h = img.size[0]//3,img.size[1]//3 gap = 10 #九宫图中相邻两幅子图间的空白宽10像素 newImg = Image.new(RGB,(w * 3 + gap * 2, h * 3 + gap * 2),white) for i in range(0,3): for j in range(0,3): clipImg = img.crop((j*w,i*h,(j+1)*w,(i+1)*h)) clipImg.save(c:/tmp/pic/grass%d%d.jpg % (i,j)) newImg.paste(clipImg,(j*(w + gap), i * ( h + gap))) newImg.save(c:/tmp/pic/grass9.jpg) #保存九宫图 newImg.show() 图像的素描化 图像的素描化 from PIL import Image def makeSketch(img, threshold): w, h = img.size img = img.convert(L) #图像转换成灰度模式 pix = img.load() #获取像素矩阵 for x in range(w-1): for y in range(h-1): if abs(pix[x,y] - pix[x+1,y+1]) = threshold: pix[x,y] = 0 else: pix[x,y] = 255 return img img = Image.open(c:/tmp/pic/models2.jpg) img = makeSketch(img, 15) #阈值threshold为15 img.show() 给图像添加水印 给图像添加水印 imgSrc.paste(img,(x,y),mask = msk) 原理:paste时可以用“掩膜”指定img的每个像素粘贴过去的透明度。如果透明度为0,则完全透明,如果透明度为255,则完全遮盖imgSrc原来的像素。 mask参数即为掩膜,是个模式为L的图片(Image对象) 给图像添加水印 from PIL import Image def getMask(img,isTransparent,alpha): #返回由img变出来的掩膜 if img.mode != RGBA: img = img.convert(RGBA) #转换成RGBA模式的图像 w, h = img.size pixels = img.load() #获取像素矩阵 for x in range(w): for y in rang
文档评论(0)