本文主要记录通过Python以及其第三方库pillow来批量生成图片九宫格,其主要思想如下:判断一张图片是不是正方形的,若不是,则获取图片最短的一边为边长,以该边长截取图片的中间部分正方形区域,然后再通过边长将该图片等分为九个正方形区域截取并保存。用到的pillow的Image模块的函数有open,size,crop, save。


------->>>>>>代码如下<<<<<


# 九宫格.py# python生成九宫格图片from PIL import Imageimport sys, os# 若图片不是正方形先以最短边为边长截取图片中间部分为正方形def Img_to_square(img_path):    image = Image.open(img_path) #导入图片    w, h = image.size  #获取图片长宽    if w!=h:        l = h if w > h else w #获取最短边        image = image.crop((int(w/2-l/2), int(h/2-l/2), int(w/2+l/2), int(h/2+l/2))) #截取最中间部分    else:    pass    return image# 将正方形图片剪切为九宫格def crop_image(image):    w, h = image.size    l = int(w/3)    pic = []    for i in range(0,3):        for j in range(0,3):            img = image.crop((j*l, i*l, j*l+l, i*l+l)) #依次截取相应区域            pic.append(img)    return pic# 保存图片def save_image(pic,count):    index = 0    path = os.path.dirname(__file__).replace('\\', '/')  #获取py当前路径    os.system('md '+path.replace('/', '\\')+'\\九宫格'+str(count))  #新建文件夹    for i in pic:  #依次保存每个图片        index += 1        i.save(path+'/九宫格'+str(count)+'/'+str(index)+'.png', 'PNG')if __name__ == '__main__':    img_path = sys.argv[1:]   # 获取图片路径    for i in img_path:        img = Img_to_square(i.replace('\\', '/'))        pic = crop_image(img)        save_image(pic, img_path.index(i))

------->>>>>>使用方法<<<<<


在cmd命令行中拖拽进上面的py文件,加空格,拖拽进要生成九宫格的图片回车即可在py文件所在的目录下生成包含九宫格图片的文件夹。

[py文件][空格][图片][回车]

easyui获取图片路径_Python玩转图片九宫格相关推荐

  1. ImageView加载图片 路径没问题,图片不显示

    先说一下如何获得本地图片的路径. //点击图片事件 ib.setOnClickListener(new View.OnClickListener() {@Overridepublic void onC ...

  2. python scrapy框架 抓取的图片路径打不开图片_Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码...

    大家可以在Github上clone全部源码. 基本上按照文档的流程走一遍就基本会用了. Step1: 在开始爬取之前,必须创建一个新的Scrapy项目. 进入打算存储代码的目录中,运行下列命令: sc ...

  3. python scrapy框架 抓取的图片路径打不开图片_Python中Scrapy爬虫图片处理详解

    下载图片 下载图片有两种方式,一种是通过 Requests 模块发送 get 请求下载,另一种是使用 Scrapy 的 ImagesPipeline 图片管道类,这里主要讲后者. 安装 Scrapy ...

  4. php 匹配图片路径_php正则匹配图片路径原理与方法

    下面我来给大家介绍在php正则匹配图片路径原理与实现方法,有需要了解的朋友可进入参考参考. 提取src=里面的图片地址还不足够,因为不能保证那个地址一定是绝对地址,完全的地址,如果那是相对的呢?如果地 ...

  5. python 修改图片尺寸_python 批量修改图片大小

    一个文件夹下面有好多图片格式是jpg大小是1920*1080,把它们处理成1280*720并按原先图片的名保存在另一路径下 这里首先要找到给定路径下所有的图片文件,然后在修改图片文件的大小,这里用到P ...

  6. python实现图片压缩_python如何实现图片压缩

    本工具是通过将图片上传到第三方网站tinypng,进行压缩后下载,覆盖本地图片,tinypng是一个强大的图片处理网站,目前最可靠的无损压缩网站. 代码如下: import requests from ...

  7. python查找图片区域_python批量识别图片指定区域文字内容

    python批量识别图片指定区域文字内容,供大家参考,具体内容如下 简介 对于一张图片,需求识别指定区域的内容 1.截取原始图上的指定图片当做模板 2.根据模板相似度去再原始图片上识别准确坐标 3.根 ...

  8. html写图片路径,html如何添加图片路径

    html添加图片路径的方法:首先新建html文件,在body标签中插入img标签:然后给img标签添加"alt"属性:最后img标签中插入的图片宽和高默认是图片自身的宽和高. 本教 ...

  9. python获取绝对路径_python - OS(一)获取绝对路径

    目录结构 python常用模块(文件夹) python_os(文件夹) os_获取绝对路径.py ### 方法一 os_获取绝对路径.py #coding:utf8 import os #获取当前目录 ...

  10. python 如何获取文件路径_Python如何获取文件路径/目录

    一.获取文件路径实现 1.1 获取当前文件路径 import os current_file_path = __file__ print(f"current_file_path: {curr ...

最新文章

  1. Docker 入门系列(5)- Docker 端口映射(映射所有IP地址、映射到指定地址和指定端口、映射指定地址任意端口、查看映射端口配置)
  2. Android之NDK开发的简单实例
  3. RESTful之视图概览和视图说明
  4. mysql 导入txt数据到数据表【原创】
  5. 你不了解PHP的10件事情
  6. Node 中的path模块
  7. linux8安装ftp服务,CentOS8.0 安装配置ftp服务器的实现方法
  8. calling '**' with incomplete return type
  9. 按相反的顺序输出列表的元素python_Python练习实例32 | 如何以相反的顺序来输出列表的值?...
  10. Linux学习总结(12)——Linux必须学会的60个命令
  11. 如何使用scss/sass
  12. spdlog: undefined reference to `fmt::SystemError::init(int, fmt::BasicCStringRef<char>, fmt::ArgList
  13. TestDriven.NET 2.0——单元测试的好助手(转)
  14. SFML图形库学习:环境部署
  15. 详细记录基于vue+nodejs+mongodb构建的商城学习(三)基于项目的vue框架梳理
  16. 100m光纤测速多少正常_100m宽带wifi测速多少为正常
  17. python字典笔记
  18. 论文进入SCI、Ei等国际检索系统的意义(转贴)
  19. java绘制图片验证码两种方式实现,点击【图片】刷新和点击【看不清换一张】刷新
  20. 中国烟气在线监测系统行业供需现状及未来发展趋势预测报告(2022-2027年)

热门文章

  1. ATF(ARM Trusted firmware)完成启动流程
  2. 云服务器怎么增加d盘_怎么租用美国云服务器比较便宜?
  3. java,python,scala发送http请求
  4. 10件产品3件次品,7件正品,不放回的取,第三次取得次品的概率-----三种解法
  5. mysql 语句中last_Mysql函数:Last_insert_id()语法讲解
  6. pg加密扩展的安装_PHP7安装已废弃的对称加密扩展mcrypt记录
  7. readline函数重新定位到第一行_学习MATCH函数3种匹配方式,轻松确定数据位置和数量...
  8. 1486mysql,mysql_error.md
  9. java composite 模式_《JAVA设计模式》中的组合模式Composite
  10. 64位程序怎么判断指针是否有效_和微信大佬聊了一夜,他告诉我为什么指针被誉为 C 语言灵魂?...