分享

Python笔记——python强大的图像处理功能

 taotao_2016 2019-02-16

Python笔记——python强大的图像处理功能

说道图像处理很多人会想到PS,美图,等一系列P图软件,但今天千峰所说的用python进行图像处理相对于其他的软件处理有很大的区别,接下来让我们一起来看看怎么实现用代码进行图像处理吧!

python的PIL模块是专门用来处理图片,其功能非常强大。

第一步:图片裁剪

from PIL import Imageim = Image.open('jgz.jpg')box = (10,10,100,100)region = im.crop(box)region.save('cutting.jpg')将jgz.jpg图片的((10,10), (10,100),(100,10),(100,100))所划出的区域进行裁切并保存在cutting.jpg当中

第二步:图片拼接

from PIL import Imageinfile = './jgz.jpg'outfile = './jgz1.jpg'im = Image.open(infile)(x,y) = im.sizex_s = 310y_s = y*x_s/xout=im.resize((x_s,y_s),Image.ANTIALIAS)out.save(outfile)将jpz.jpg的横向像素强制为310,纵横比不变。并保存在jgz1.jpg

第四步:在图片上添加文字

#coding=utf-8from PIL import Image, ImageDraw, ImageFonttxt = '你这个死宅说话'txt2 = ' 还挺搞笑的'font_img = Image.open('./img.jpg')draw = ImageDraw.Draw(font_img)ttfront = ImageFont.truetype('./simhei.ttf',55)draw.text((140,560),unicode(txt,'UTF-8'), fill=(0,0,0), font=ttfront)draw.text((160,630),unicode(txt2,'UTF-8'), fill=(0,0,0), font=ttfront)font_img.save('./out.jpg')保证 simhei.ttf的路径可以找到。在图片 img.jpg的(140,560) (160,630)两个位置分别写入txt 和 txt2这两句汉字。文件编码是utf-8,并另存为out.jpg

第五步:图片alpha通道化,白色变成透明

from PIL import Imageimg = Image.open('jgz.jpg')img = img.convert('RGBA')datas = img.getdata()newData = list()for item in datas: if item[0] >220 and item[1] > 220 and item[2] > 220: newData.append(( 255, 255, 255, 0)) else: newData.append(item) img.putdata(newData) img.save('jgz_alpha.png','PNG')将jgz.jpg的白色透明化并另存为jgz_alpha.png。注意透明化的图片文件的格式一般为png 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多