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

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切割图片的示例相关推荐

  1. python热图_Python 绘制热图

    原博文 2019-09-03 16:50 − 1.matplitlib绘制热图 1 import random 2 from matplotlib import pyplot as plt 3 fro ...

  2. python udp编程_Python UDP编程小示例

    参照着廖雪峰的python教程敲的代码. 这个示例就是很简单的服务器端直接接收来自客户端的数据,然后稍作处理返回给客户端:客户端给服务器端发送数据然后将接收到的返回数据打印. UDPServer.py ...

  3. python监控端口_python监控设备端口示例

    python监控设备端口示例 发布于 2014-08-10 18:22:16 | 120 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对象.解释型计算机程 ...

  4. python九宫格拼图_Python切割图片成九宫格

    这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享. 原图如下: Image 我们想要利用这张图制作高逼格的九宫格朋友圈分享. 达到类似于这样的效果: 实现原理 ...

  5. python jpg压缩_python 实现图片批量压缩的示例

    项目中大量用到图片加载,由于图片太大,加载速度很慢,因此需要对文件进行统一压缩 一:导入包 from PIL import Image import os 二:获取图片文件的大小 def get_si ...

  6. python三维矩阵出图_python读取图片的方式,以及将图片以三维数组的形式输出方法...

    python 三维npy数组如何画成三维图片 画成三维图片? 你要是想要看空间分布的话画散点图就可以啊,用matplotlib 网页链接 要是那种各种弯曲的面,也是matplotlib 网页链接 再就 ...

  7. mac python 图_Python之图片OCR识别(Mac)

    因为经常给朋友发的信息来源是一张图片,就想到了用Python处理下,就省的敲字了... 安装tesseract brew install tesseract 安装pytesseract pip3 in ...

  8. python如何实现找图_python实现图片筛选程序

    今天因工作需要写了个小程序,用于在图片集中自动抽取需要的照片.该程序只是实现了基本功能,还有很多需要完善的地方,展示出来算是给自己鼓鼓气吧. 该程序应用有一定特殊条件,因我选择的图片集是工业生产过程中 ...

  9. python趣图_Python 趣味练习- 修改图片

    无聊在Github上看见python的趣味练习题,自己试着做了做 第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果. 这个题目主要是练习对P ...

最新文章

  1. 我被编程语言PUA了!
  2. Ril分析五——ril学习总结
  3. maven整合@data注解_SpringBoot 整合 Dubbo实践(实用文章)
  4. grep命令參数及使用方法
  5. 操作主机 Infrastructure Master[为企业维护windows server 2008系列八]
  6. java map 赋值_java Listmap赋值的问题
  7. 【Antlr】WHITESPACE is not a recognized channel name
  8. FinNexus宣布已售出1000万枚FNX给相关投资者
  9. MySQL server has gone away报错原因分析
  10. mysql atlas 实现读写分离分担数据库压力
  11. java 合并排序算法、冒泡排序算法、选择排序算法、插入排序算法、快速排序...
  12. zabbix2.4.6升级zabbix3.0.8后无法发送报警邮件
  13. java 邮件发送乱码_java邮件发送乱码解决方法
  14. Abaqus 空间管路 自动化建模与分析
  15. 计算机硬件关系密切,与计算机硬件关系最密切的软件是.
  16. 分布式系统的阿喀琉斯之踵:数据一致性!
  17. npm run build 报错: No such file or directory
  18. K8S二进制部署---单节点master
  19. 一个屌丝程序猿的人生(五十七)
  20. 爬虫入门经典(九) | 简单一文教你如何爬取扇贝单词

热门文章

  1. FPGA结构分析——IDELAY2,网口储备点3
  2. 一天接收了131份前端面试简历......(面试总结)
  3. 用api提取ip的优点
  4. 怎么样免费建自己的网站?
  5. 查看Win10激活剩余时间
  6. 【Python】京东自动下单抢购脚本——双十一购物小技巧
  7. 多传感器信息融合,介绍中图片为INS+ DVL组合程序
  8. ubuntu Qt 找不到 -lGL
  9. 爬取天眼查 的python 代码
  10. 讯飞AIUI智能机器人2