python的图形模块PIL小记
前言:
跟我一块住的室友是个搞通信,每天下班后基本必须做的事情是,第一P图,将那些不合格的图片上的数据,p成合格的。第二就是将做好的P图以及产生的日志文件按照固定的名字重新命名。我为了他能够早点睡觉,就具体问问了他的工作内容,无外乎就是p图修改某个图片上的具体数字,然后对于修改好的图片,以及一些log文件按照固定的格式命名。我想了下这些不正好python能够很好的实现啊,于是就开动了。
正文
首先简单的就是给文件重新命名,很简单,就是使用os模块,然后结合os.listdir()循环,就改好了,至于自动化的P图,我想到了PIL模块,虽然以前没用过,但是感觉应该不会太难。
废话不多说,见程序。有个前提是必须保证两个图片尺寸是一样的。
如下将1换成2,将一张图片上的1截取下来贴到另外一张相同尺寸的图片的相同位置

贴到这里

程序如下
#!/usr/bin/env python
#_*_coding:utf-8_*_
from PIL import Image
from PIL import Image, ImageDraw
import os
path = r'F:\untitled5\wenjian\301u'
path_cai = r'F:\untitled5\wenjian\tupian\zzz.jpg' for i in os.listdir(path):
im01 = Image.open( path+"\\"+i)#呗修改的图片
im02 = Image.open(path_cai)#要裁切的图片
assert isinstance(im01, Image.Image) #为了能够补全
assert isinstance(im02, Image.Image)
# box=[,,,] #裁切的坐标
box2=[,,,] #特殊处理的
box1 = [,,,]
# im_crop = im02.crop(box) # #裁切图片裁切im02上图片到im01上
im_crop = im02.crop(box2)
im_crop_1 = im02.crop(box1)
print im_crop.mode
print im_crop.size
# im01.paste(im_crop, (,,,)) #原来的
im01.paste(im_crop, (,,,))
im01.paste(im_crop_1,(,,,))
im01.save( path+"\\"+i)
# im01.show()
print 'ok'
python的图形模块PIL小记的更多相关文章
- 第一篇 Python图片处理模块PIL(pillow)
本篇包含:一.Image类的属性:1.Format 2.Mode 3.Size 4.Palette 5.Info 二.类的函数:1.New ...
- 第二篇 Python图片处理模块PIL(pillow)
本篇包含:16.Point 17.Putalpha 18.Putdata 19.Putpalette 20.Putpixel 21.Quantize 22.R ...
- python绘制图形(Turtle模块)
用python的Turtle模块可以绘制很多精美的图形,下面简单介绍一下使用方法. 需要用到的工具有python,python 的安装这里就不再细说.自行搜索. from turtle import ...
- Python图像处理库:PIL中Image,ImageDraw等基本模块介绍
Python图像处理库:PIL中Image,ImageDraw等基本模块介绍 标签: 图像处理PILPYTHON 2016-08-19 10:58 461人阅读 评论(0) 收藏 举报 分类: 其他 ...
- Windows安装Python图像处理库:PIL模块
平常一般都在Linux下用Python,今天女票突然说让帮忙把一些图片全部弄成一个分辨率的,作为程序员,这种重复的工作还是交给计算机吧. 废话不多说,打开Cmd看下Windows的python下面是否 ...
- python的库有多少个?python有多少个模块?
这里列举了大概500个左右的库: ! Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主 ...
- python基础——第三方模块
python基础——第三方模块 在Python中,安装第三方模块,是通过包管理工具pip完成的. 如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了. 如果你正在使用Window ...
- Python的时间模块小结(转自:不懂真人)
import datetimeprint time.time() #时间戳 print time.localtime(time.time()) #时间元组 print time.strftime('% ...
- Python 利用pytesser模块识别图像文字
使用的是python的pytesser模块,原先想做的是图片中文识别,搞了一段时间了,在中文的识别上还是有很多问题,这里做记录分享. pytesser,OCR in Python using the ...
随机推荐
- 简单的自定义ViewGroup
自定义ViewGroup需要重写onMeasure, onLayout等方法.下面是一个实例,4个View分别显示在四个角. public class MyGroup extends ViewGrou ...
- 让你一看就懂的快速排序算法(Java)
快速排序 你也许会被快速排序的文章弄得迷迷糊糊,其实大体上去看,快速排序就一步:找个数做基准数,把小于它的数移到它左边,把大于它的数移到它右边.这句话是核心.然后我们只需要让基准数左边的重复上面的步骤 ...
- MySQL定时备份数据库(全库备份)
一.MySQL数据备份 1.1. mysqldump命令备份数据 在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump ...
- Python股票分析系列——自动获取标普500股票列表.p5
该系列视频已经搬运至bilibili: 点击查看 欢迎来到Python for Finance教程系列的第5部分.在本教程和接下来的几节中,我们将着手研究如何为更多公司提供大量的定价信息,以及如何一次 ...
- 朱晔的互联网架构实践心得S1E9:架构评审一百问和设计文档五要素
朱晔的互联网架构实践心得S1E9:架构评审一百问和设计文档五要素 [下载文本PDF进行阅读] 本文我会来说说我认为架构评审中应该看的一些点,以及我写设计文档的一些心得.助你在架构评审中过五关斩六将,助 ...
- NewZealand。。。
秀个存在感...
- leveldb和fork的初始化顺序
我们服务器内用leveldb存一些不是很重要的, 但是又需要(半)持久化的东西. 可是自从2016到现在, 碰见好几次不同类型的死锁. 直到今天, 才发现真正的原因, 那就是leveldb不支持for ...
- [LeetCode] Rank Scores -- 数据库知识(mysql)
Write a SQL query to rank scores. If there is a tie between two scores, both should have the same ra ...
- H5 60-浮动元素排序规则
60-浮动元素排序规则 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...
- iOS iCloud云存储数据
https://www.jianshu.com/p/ce8cfaf6030e 2017.11.29 16:05* 字数 452 阅读 302评论 0喜欢 1 因为上一次做了用keychain来持久化存 ...