PIL画图只有黑白色
2024-09-08 18:39:31
背景
项目上需要对人工标注的图片上的框进行校对,验证有无漏框、错框等问题。尝试使用opencv把框信息画出来,但是中文无法写到图片上,么得办法,只能转战PIL。但是用PIL之后出现部分图画出来的框写出来的字只有黑白色。因为第一次使用这个库,对图像知识不了解,网上查了资料解决了。
原因
原图的mode是L,所以无论如何设置draw.ink
都无法画出彩色的图像框。
解决
转换原图为RGB
格式即可。
部分代码如下:
with Image.open(src_pic) as image:
if image.mode != "RGB": # 这个判断太重要了,要是灰度图片不转换的话文字颜色、框颜色都不会生效
image = image.convert("RGB")
draw = ImageDraw.Draw(image)
ziti = r'C:\Windows\Fonts\simkai.ttf'
zihao = 50
font = ImageFont.truetype(ziti, zihao)
# 画矩形:起止坐标点,线宽度,线颜色
draw.rectangle([(35, 87), (362, 453)], width=6, outline='blue')
# 写文本:起点坐标,内容,颜色,字体
draw.text(((40, 90), '这是文本', (255, 0, 0), font=font)
关于图像的模式mode
参考文档:https://blog.csdn.net/u013066730/article/details/102832597
最新文章
- poj 3984:迷宫问题(广搜,入门题)
- mysql笔记04 MySQL高级特性
- javascript实现数据结构:串--堆分配存储表示
- Android ViewPager的简单实现
- 宏page_t
- wsdlLocation可以写成项目的相对路劲吗
- SQL Server 事务嵌套
- MySQL root密码重置报错:mysqladmin: connect to server at 'localhost' failed的解决方案!
- 【java基础】==与equals()方法比较
- Linux0.11 创建进程的过程分析--fork函数的使用
- mui上拉刷新+下拉加载
- 2015沈阳站-Meeting 最短路
- python杂记二
- XproerIM2-更新-2017-6-28
- Luogu P3783 [SDOI2017]天才黑客
- 【洛谷P1082】同余方程
- 堆叠箱子(基础dp)
- mfc CIPAddressCtrl控件
- RabbitMQ入门_15_访问控制
- 61.volatile关键字