python使用pillow实现一张图片转为九宫格图片

简介: python使用pillow实现一张图片转为九宫格图片

实现九宫格图片

PIL:Python Imaging Library

已经是Python平台事实上的图像处理标准库了。
PIL功能非常强大,但API却非常简单易用。由于PIL仅支持到Python 2.7,一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用Pillow。

官网地址:https://pillow.readthedocs.io/en/stable/

安装方式: pip3 install pillow

#!/usr/bin/env python  
# encoding: utf-8  

from PIL import Image

img_path = r'C:\\001.jpg'
#img_path = r'C:\\002.jpg'
#把图片变成正方形图片

image = Image.open(img_path)

width,height = image.size

print(width,height)
new_image_length = width if width > height else height

new_image = Image.new(image.mode, (new_image_length, new_image_length), color='white')
if width > height:
    # (x,y)二元组表示粘贴上图相对下图的起始位置
    new_image.paste(image, (0, int((new_image_length - height) / 2)))
else:
    # 如果原图宽小于高(竖图),则填充图片的水平纬度
    new_image.paste(image, (int((new_image_length - width) / 2), 0))

new_image.save(r"D:\0011.jpg")

#将图片裁剪为9张大小相同的图片

width,height = new_image.size

new_width = int(width/3)

print(new_width)

box_list = []
#坐标 左 上 右 底
for i in range(0,3):
    for j in range(0,3):
        box = (i*new_width,j*new_width,(i+1)*new_width,(j+1)*new_width)
        print(box)
        box_list.append(box)

#根据坐标裁剪图片
index = 1
for box in box_list:   
    new_image.crop(box).save(r"D:\001-"+str(index)+".jpg")
    index = index + 1

相关文章
|
8月前
|
机器学习/深度学习 编解码 Python
Python图片上采样工具 - RealESRGANer
Real-ESRGAN基于深度学习实现图像超分辨率放大,有效改善传统PIL缩放的模糊问题。支持多种模型版本,推荐使用魔搭社区提供的预训练模型,适用于将小图高质量放大至大图,放大倍率越低效果越佳。
637 3
|
8月前
|
机器学习/深度学习 文字识别 Java
Python实现PDF图片OCR识别:从原理到实战的全流程解析
本文详解2025年Python实现扫描PDF文本提取的四大OCR方案(Tesseract、EasyOCR、PaddleOCR、OCRmyPDF),涵盖环境配置、图像预处理、核心识别与性能优化,结合财务票据、古籍数字化等实战场景,助力高效构建自动化文档处理系统。
2049 0
|
12月前
|
数据采集 Web App开发 JavaScript
基于Selenium的Python爬虫抓取动态App图片
基于Selenium的Python爬虫抓取动态App图片
899 68
|
10月前
|
数据采集 存储 监控
Python爬虫实战:批量下载亚马逊商品图片
Python爬虫实战:批量下载亚马逊商品图片
|
12月前
|
存储 机器学习/深度学习 人工智能
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
本文探讨了多模态RAG系统的最优实现方案,通过模态特定处理与后期融合技术,在性能、准确性和复杂度间达成平衡。系统包含文档分割、内容提取、HTML转换、语义分块及向量化存储五大模块,有效保留结构和关系信息。相比传统方法,该方案显著提升了复杂查询的检索精度(+23%),并支持灵活升级。文章还介绍了查询处理机制与优势对比,为构建高效多模态RAG系统提供了实践指导。
2732 0
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
|
8月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1276 102
|
8月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
461 104
|
8月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
356 103
|
8月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
370 82
|
7月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
465 3

推荐镜像

更多