python切割图片的示例


Posted in Python onNovember 12, 2020

这个小程序可以自己设定行数和列数进行图片切割

import os
from PIL import Image

def splitimage(src, rownum, colnum, dstpath):
  img = Image.open(src)
  w, h = img.size
  if rownum <= h and colnum <= w:
    print('Original image info: %sx%s, %s, %s' % (w, h, img.format, img.mode))
    print('开始处理图片切割, 请稍候...')

    s = os.path.split(src)
    if dstpath == '':
      dstpath = s[0]
    fn = s[1].split('.')
    basename = fn[0]
    ext = fn[-1]

    num = 0
    rowheight = h // rownum
    colwidth = w // colnum
    for r in range(rownum):
      for c in range(colnum):
        box = (c * colwidth, r * rowheight, (c + 1) * colwidth, (r + 1) * rowheight)
        img.crop(box).save(os.path.join(dstpath, basename + '_' + str(num) + '.' + ext), ext)
        num = num + 1

    print('图片切割完毕,共生成 %s 张小图片。' % num)
  else:
    print('不合法的行列切割参数!')

src = input('请输入图片文件路径:')
if os.path.isfile(src):
  dstpath = input('请输入图片输出目录(不输入路径则表示使用源图片所在目录):')
  if (dstpath == '') or os.path.exists(dstpath):
    row = int(input('请输入切割行数:'))
    col = int(input('请输入切割列数:'))
    if row > 0 and col > 0:
      splitimage(src, row, col, dstpath)
    else:
      print('无效的行列切割参数!')
  else:
    print('图片输出目录 %s 不存在!' % dstpath)
else:
  print('图片文件 %s 不存在!' % src)

运行效果

python切割图片的示例

python切割图片的示例

以上就是利用python切割图片的示例的详细内容,更多关于python 切割图片的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用python统计文件行数示例分享
Feb 21 Python
python中Flask框架简单入门实例
Mar 21 Python
Python中二维列表如何获取子区域元素的组成
Jan 19 Python
Python模拟脉冲星伪信号频率实例代码
Jan 03 Python
Python爬虫实战:分析《战狼2》豆瓣影评
Mar 26 Python
selenium+python环境配置教程详解
May 28 Python
python集合是否可变总结
Jun 20 Python
pandas dataframe的合并实现(append, merge, concat)
Jun 24 Python
Flask框架单例模式实现方法详解
Jul 31 Python
python 数据库查询返回list或tuple实例
May 15 Python
完美解决Pycharm中matplotlib画图中文乱码问题
Jan 11 Python
Python中全局变量和局部变量的理解与区别
Feb 07 Python
教你使用Sublime text3搭建Python开发环境及常用插件安装另分享Sublime text3最新激活注册码
Nov 12 #Python
Django执行源生mysql语句实现过程解析
Nov 12 #Python
Django Model层F,Q对象和聚合函数原理解析
Nov 12 #Python
在Python中字典按值排序的实现方法
Nov 12 #Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
Nov 12 #Python
通过代码简单了解django model序列化作用
Nov 12 #Python
Django contrib auth authenticate函数源码解析
Nov 12 #Python
You might like
PHP连接SQLSERVER 注意事项(附dll文件下载)
2012/06/28 PHP
php批量更改数据库表前缀实现方法
2013/10/26 PHP
javascript不同页面传值的改进版
2008/09/30 Javascript
jQuery实现异步获取json数据的2种方式
2014/08/29 Javascript
js使用for循环与innerHTML获取选中tr下td值
2014/09/26 Javascript
JQuery+CSS实现图片上放置按钮的方法
2015/05/29 Javascript
jquery实现可横向和竖向展开的动态下滑菜单效果
2015/08/24 Javascript
jquery点击缩略图切换视频播放特效代码分享
2015/09/15 Javascript
javascript cookie的简单应用
2016/02/24 Javascript
jQuery qrcode生成二维码的方法
2016/04/03 Javascript
基于js对象,操作属性、方法详解
2016/08/11 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
2017/01/03 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
JavaScript中关于class的调用方法
2017/11/28 Javascript
JS实现的合并多个数组去重算法示例
2018/04/11 Javascript
vue打包使用Nginx代理解决跨域问题
2018/08/27 Javascript
详解在React项目中安装并使用Less(用法总结)
2019/03/18 Javascript
详解vue页面首次加载缓慢原因及解决方案
2019/11/06 Javascript
使用Python的Scrapy框架十分钟爬取美女图
2016/12/26 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
python assert的用处示例详解
2019/04/01 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
2020/01/10 Python
python 贪心算法的实现
2020/09/18 Python
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
性能服装:HYLETE
2018/08/14 全球购物
计算机求职信
2013/12/01 职场文书
大学生职业生涯规划书的基本内容
2014/01/06 职场文书
技校毕业生自荐信
2014/06/03 职场文书
学生无故旷课检讨书
2014/09/20 职场文书
领导班子“四风问题”“整改方案
2014/10/02 职场文书
天下第一关导游词
2015/02/06 职场文书
运动会班级口号霸气押韵
2015/12/24 职场文书
Python实现自动玩连连看的脚本分享
2022/04/04 Python
MySQL主从切换的超详细步骤
2022/06/28 MySQL