python图像处理(2)图像水印和PIL模式转化
模式转化:
PIL模式转化:将图片转化成其他模式
# 我们将image图像转化为灰度图像(python)
from PIL import Image
img = Image.open('c:\\1.JPG')
img.show() # 图像的打开展示
# L = I.convert('L')
# PIL的九种不同模式:1,L,P,RGB,RGBA,CMYK,YCbCr,I,F
# 模式转化语句
L = img.convert('I')
w,h = img.size # 图尺寸
mode = img.mode # 图片的模式
geshi = img.format # 图片的格式
print(w,h,mode,geshi)
L.show()



文字水印:
from PIL import Image, ImageDraw, ImageFont
# 添加文字水印
# RGBA的意思是(Red-Green-Blue-Alpha)它是在RGB上扩展包括了“alpha”通道,运行对颜色值设置透明度
im = Image.open("C:/1.jpg").convert('RGBA')
txt=Image.new('RGBA', im.size, (0,0,0,0)) # 图像的大小 颜色的四个属性 数字越大越表现这个通道属性
fnt=ImageFont.truetype("c:/Windows/fonts/Candara.ttf", 50) # 选水印的字体 选暗色字体,显色的无法出现不知原因
d=ImageDraw.Draw(txt)
d.text((txt.size[0]-120,txt.size[1]-50), "Hello",font=fnt,fill=(255,0,0,255))
out=Image.alpha_composite(im,txt)
out.show()
out.save(r"c:/pp.png")

图片水印:
# 添加图片水印
im = Image.open("C:/2.jpg")
mark=Image.open("C:/1.jpg")
print(im.size)
# RGBA表示四个属性A表示透明度 关于new(‘模式’,大小尺寸,颜色)
layer=Image.new('RGBA', im.size, (0,0,0,0))
layer.paste(mark, (im.size[0]-400,im.size[1]-200)) # 改变水印图片的位置
# composite:使用两幅给出的图片和一个与alpha参数相似用法的mask参数其值可为:"1","L","RGBA"。两幅图片的size必须相同。
out=Image.composite(layer,im,layer)
out.show()

#参考 https://blog.csdn.net/icamera0/article/details/50747084
python图像处理(2)图像水印和PIL模式转化的更多相关文章
- 【python图像处理】图像的缩放、旋转与翻转
[python图像处理]图像的缩放.旋转与翻转 图像的几何变换,如缩放.旋转和翻转等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍. 1.图 ...
- Python图像处理丨图像腐蚀与图像膨胀
摘要:本篇文章主要讲解Python调用OpenCV实现图像腐蚀和图像膨胀的算法. 本文分享自华为云社区<[Python图像处理] 八.图像腐蚀与图像膨胀>,作者: eastmount . ...
- 跟我学Python图像处理丨图像特效处理:毛玻璃、浮雕和油漆特效
摘要:本文讲解常见的图像特效处理,从而让读者实现各种各样的图像特殊效果,并通过Python和OpenCV实现. 本文分享自华为云社区<[Python图像处理] 二十四.图像特效处理之毛玻璃.浮雕 ...
- Python图像处理:图像腐蚀与图像膨胀
图像的膨胀(Dilation)和腐蚀(Erosion)是两种基本的形态学运算,主要用来寻找图像中的极大区域和极小区域.其中膨胀类似于“领域扩张”,将图像中的高亮区域或白色部分进行扩张,其运行结果图比原 ...
- Python图像处理丨认识图像锐化和边缘提取的4个算子
摘要:图像锐化和边缘提取技术可以消除图像中的噪声,提取图像信息中用来表征图像的一些变量,为图像识别提供基础. 本文分享自华为云社区<[Python图像处理] 十七.图像锐化与边缘检测之Rober ...
- < python PIL - 批量图像处理 - RGB图像生成灰度图像 >
< python PIL - 批量图像处理 - RGB图像生成灰度图像 > 直接用python自带的PIL图像库,将一个文件夹下所有jpg/png的RGB图像转换成灰度/黑白图像 from ...
- Python图像处理丨三种实现图像形态学转化运算模式
摘要:本篇文章主要讲解Python调用OpenCV实现图像形态学转化,包括图像开运算.图像闭运算和梯度运算 本文分享自华为云社区<[Python图像处理] 九.形态学之图像开运算.闭运算.梯度运 ...
- Python图像处理库(PIL)
官方:(详细)http://pillow.readthedocs.io/en/3.1.x/reference/ImageDraw.html http://pillow.readthedocs.io/e ...
- Python图像处理库PIL中图像格式转换
o 在数字图像处理中,针对不同的图像格式有其特定的处理算法.所以,在做图像处理之前,我们需要考虑清楚自己要基于哪种格式的图像进行算法设计及其实现.本文基于这个需求,使用python中的图像处理库PIL ...
随机推荐
- [T-ARA][I'm so bad]
歌词来源:http://music.163.com/#/song?id=22704433 作曲 : 김태현 , 조영수 [作曲 : k/gim-Tae-hyeon , c/jo-yeong-su] 作 ...
- PHP设计模式系列 - 观察者模式
观察者模式 观察者设计模式能够更便利创建和查看目标对象状态的对象,并且提供和核心对象非耦合的置顶功能性.观察者设计模式非常常用,在一般复杂的WEB系统中,观察者模式可以帮你减轻代码设计的压力,降低代码 ...
- 对于socket发送数据时是否要加锁及write read的阻塞非阻塞
偶尔讨论到了socket发送数据时是否应该加锁的问题,就在网上查了一下,下面是大神陈硕的答案 对于 UDP,多线程读写同一个 socket 不用加锁,不过更好的做法是每个线程有自己的 socket,避 ...
- RLE Iterator LT900
Write an iterator that iterates through a run-length encoded sequence. The iterator is initialized b ...
- 第一章 进入java的世界
一.你要做的事情: 1. 编写源代码:xxx.java 2. 编译器编译:检测代码错误 3. 输出:编译器输出xxx.class 4. 运行:java虚拟机运行xxx.class
- 【node.js】函数、路由
Node.js中函数的使用与Javascript类似,一个函数可以作为另一个函数的参数.我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数. function say(word) { ...
- pm2踩过的坑
pm2实现一键部署,能将github上的代码拉到服务器,但是死活就是起不了服务. pm2部署命令: pm2 deploy ecosystem.json production setup pm2 dep ...
- 集合之HashMap
HashMap也是我们使用非常多的Collection,它是基于哈希表的 Map 接口的实现,以key-value的形式存在.在HashMap中,key-value总是会当做一个整体来处理,系统会根据 ...
- mysql 二进制日志binary log操作简单命令
show master status \G; #查看当前正在记录的二进制日志 show binary logs; #查看binary log 所有文件列表 show binlog events; #查 ...
- request请求转换成对象。
1)前端post数据过来,key和val键值对会有很多,这个时候往后端进行插值的时候,最好将这些键值对转换成对象进行处理. 使用common-beanutils 来将前端传递过来的map直接转换成对象 ...