Python实战社群
Java实战社群
长按识别下方二维码,按需求添加
扫码关注添加客服
进Python社群▲
扫码关注添加客服
进Java社群▲
作者丨天作
来源丨天作之程(ID:jhtmtzzc)
你一定见过下面的朋友圈九宫格
有很多小程序可以实现这个功能,在微信里搜“九宫格”小程序就可以找到。
比如下边这个
其核心就是把一张图片拆分为9份。
下面用python 来实现一下
在python中,图片处理的模块主要用到 pillow 模块
它可以完成图像归档和图像处理两方面功能需求:
图像归档:对图像进行批处理、生成图像预览、图像格式转换等;
图像处理:图像基本处理、像素处理、颜色处理等。
首先安装一下模块:
pip install pillow
从 PIL中导入 Image类
from PIL import Image
九宫格图片切分的主要逻辑如下:
打开待处理的图片
切分图片
保存切分完成的图片
1、打开待处理的图片
pic = input("请输入图片文件名:")
im = Image.open(pic)
2、切分图片
width = im.size[0]//3
height = im.size[1]//3
x = 0
y = 0
crop = im.crop((x, y, x+width, y+height))
3、保存图片
filename = 1
crop.save(str(filename) + '.jpg')
完整的代码如下:
from PIL import Image
pic = input("请输入图片文件名:")
im = Image.open(pic)
width = im.size[0]//3
height = im.size[1]//3
x = 0
y = 0
filename = 1
for i in range(3):
for j in range(3):
crop = im.crop((x, y, x+width, y+height))
crop.save(str(filename) + '.jpg')
x += width
filename += 1
x = 0
y += height
9张小图上传到朋友圈的时候,还可以感受一波拼图的乐趣。
另外,用 pillow模块还可以对图像完成更多有趣的操作。
比如:一幅变五福
灰度福
轮廓福
反色福
膨胀福
福到了
“一福变五福”是使用 Opencv写的,感兴趣的小伙伴可以用 PIL模块来完成。
程序员专栏 扫码关注填加客服 长按识别下方二维码进群
近期精彩内容推荐: 字节跳动半夜给员工发钱,全员沸腾了 为何程序员上班时间总戴个耳机? 为什么建议大家使用 Linux 开发? 盘点提高国内访问GitHub速度的9种方案
在看点这里好文分享给更多人↓↓