导语
哈喽~
大伙儿们好!
每天都要快乐哦🎊
每逢放假,朋友圈就是一波晒图大赛,谁不想成为点赞之王👑
这时候你女朋友就会疯狂的拍拍拍!你就被逼着疯狂的给你女友拍拍拍,拍到麻木,女友还不满意怎么破???
ˇ
今天小编就和大家分享Python一张好看的图片就能完成的九 宫 格 切图效果技术,一跃成为朋友圈点赞收割机
指日可待,解放相机 GO~GO~GO~
正文
我们在日常拍照的时候,脑海里都会潜意识的想凑个九宫格。(是我是我了)🙋
但因为各种原因,实!在!凑!不!够!九!张!咋整?😫
👇👇👇👇👇👇 ·九宫格切图正文开始啦·👇👇👇👇👇👇
(1)环境安装:这里主要模块儿是pillow。
pip install pillow
用Python做图片处理,最著名的库就是PIL(Python Imaging Library)了,不过由于年久失修,在PIL的基础上创建了 Pillow,它有许多新的特性,支持 Python3.x。Pillow的主要功能特性:
图像显示:可以与其他工具配合使用,显示图像。
图像处理:包含基本图像处理功能,包括点操作、使用一组内置卷积内核进行过滤及颜色空间转换。还支持图像大小调整、旋转和任意仿射变换。
图像存档和批处理应用程序:可以使用库创建缩略图、在文件格式之间转换、打印图像等。
(2)读取图片:
在Pillow中,我们最常用的就是Image子模块。其中读取图片的操作就是通过Image.open
函数来实现。Image.open
函数会返回一个图片对象,我们来看看具体的代码:
from PIL import Image
# 读取图片
img = Image.open('lbxx.jpg')
Pillow模块是PIL模块的python3版本,因此我们导入模块时是使用下面语句:
from PIL import Image
(3)截取图片:
在Image对象中,有一个crop方法,可以用于剪切图片。它接收一个box参数,表示要截取的区域。参数是一个元组,元素内容分别是左上角x,y坐标,右下角x,y坐标。
img.crop((x1, y1, x2, y2))
具体代码:
from PIL import Image
# 读取图片
img = Image.open('lbxx.jpg')
# 截取图片的(0, 0, 300, 300)区域
box = img.crop((0, 0, 300, 300))
# 显示截取的区域
box.show()
(4)保存图片:
保存图片的操作非常简单,我们只需要调用img的save方法即可,我们直接看代码:
from PIL import Image
img = Image.open('lbxx.jpg')
box = img.crop((0, 0, 300, 300))
# 保存图片
box.save('1.jpg')
(5)截取图片的九个区域,然后保存即可。具体代码如下:
from PIL import Image
# 读取图片
im = Image.open('lbxx.jpg ')
# 宽高各除 3,获取裁剪后的单张图片大小
width = im.size[0]//3
height = im.size[1]//3
# 裁剪图片的左上角坐标
start_x = 0
start_y = 0
# 用于给图片命名
im_name = 1
# 循环裁剪图片
for i in range(3):
for j in range(3):
# 裁剪图片并保存
crop = im.crop((start_x, start_y, start_x+width, start_y+height))
crop.save('imgs/' + str(im_name) + '.jpg')
# 将左上角坐标的 x 轴向右移动
start_x += width
im_name += 1
# 当第一行裁剪完后 x 继续从 0 开始裁剪
start_x = 0
# 裁剪第二行
start_y += height
图片展示👇:
总结
好啦!一款新鲜出炉的九宫格切片就完成啦!从此再也不用担心被逼着给女友一直拍照片了~~
🎊🎊源码基地:关注小编获取哦~💝记得三连吖
「评论」「点赞」「关注」三连,爱心发射biubiubiu~!😘