python 实现PIL模块在图片画线写字


Posted in Python onMay 16, 2020

图片上画线条

import sys
from PIL import Image,ImageDraw

im = Image.open("th.png")
draw = ImageDraw.Draw(im) #实例化一个对象
draw.line((0, 0) + im.size, fill=128, width=5) #线的起点和终点,线宽
draw.line((0, im.size[1], im.size[0], 0), fill=128)
draw.line((0,im.size[1]/2)+(im.size[0]/2,im.size[1]), fill=128, width=5)
im.show()

图片上写字

from PIL import Image, ImageDraw, ImageFont

# get an image
base = Image.open('th.jpg').convert('RGBA')
# make a blank image for the text, initialized to transparent text color
txt = Image.new('RGBA', base.size, (255,255,255,0))
# get a font 需要在C:\Windows\Fonts拷贝一份字体文件 当前脚本路径下
fnt = ImageFont.truetype('cambriai.ttf', 40)
# get a drawing context
d = ImageDraw.Draw(txt)
# draw text, half opacity
d.text((10,10), "Hello", font=fnt, fill=(255,255,255,128))
# draw text, full opacity
d.text((10,60), "World", font=fnt, fill=(255,255,255,255))
fillcolor = "#ff0000"  #字体颜色
d.text((base.size[0]-20,10), "4", font=fnt, fill=fillcolor)
out = Image.alpha_composite(base, txt)
out.show()

参考官方文档 https://pillow.readthedocs.io/en/stable/reference/Image.html

补充知识:python对图像中的人脸进行画框(人脸的位置数据记录在记事本文件中)

我就废话不多说了,大家还是直接看代码吧!

import numpy as py
import os
import cv2 as cv
with open('labelFaceData.txt','r')as fp:#打开记录了数据的记事本文件
  pictureNumber = 0#用来记录照片的数量
  while 1:
    count = 1
    line = fp.readline()#读取文件中每一行的数据
    if not line:#如果读取失败则退出
      break
    pictureNumber+=1#图片数加1
    str1 = line.split()#用一个数组以字符串的形式储存文件中的数据
    img = cv.inread(str[0])#str[0]中存放的是要读取的图片地址,用cv.inread读取它
    faceNumber = (len(str1)-1)/16#用来记录人脸的总数
    for i in reage(faceNumber):#用for循环对人脸进行画框
      x = int(str1[count+1])#x,y,w,h为画框需要的点
      y = int(str1[count+2])
      w = int(str1[count+3])
      h = int(str1[count+4])
      cv.rectangle(img,(x,y),(x+w,y+h),(255,0,0),3,4,0)#用rectangle对图像进行画框
      count+=16
    #cv.namedWindow(str[0],0)
    #cv.imshow(str[0],img);
    #cv.waitKey(0)
    cv.imwrite("./result/image1_"+str(pictureNumber)+".jpg",img)#保存图片
fp.close()

以上这篇python 实现PIL模块在图片画线写字就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现apahce网站日志分析示例
Apr 02 Python
Python实现基于HTTP文件传输实例
Nov 08 Python
教大家玩转Python字符串处理的七种技巧
Mar 31 Python
python3操作微信itchat实现发送图片
Feb 24 Python
python最小生成树kruskal与prim算法详解
Jan 17 Python
详解python--模拟轮盘抽奖游戏
Apr 12 Python
Django框架models使用group by详解
Mar 11 Python
基于Python实现视频的人脸融合功能
Jun 12 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
python能做哪些生活有趣的事情
Sep 09 Python
Pytorch如何切换 cpu和gpu的使用详解
Mar 01 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
Nov 11 Python
在python image 中实现安装中文字体
May 16 #Python
Python 判断时间是否在时间区间内的实例
May 16 #Python
解决Python Matplotlib绘图数据点位置错乱问题
May 16 #Python
Python填充任意颜色,不同算法时间差异分析说明
May 16 #Python
解决echarts中饼图标签重叠的问题
May 16 #Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 #Python
在echarts中图例legend和坐标系grid实现左右布局实例
May 16 #Python
You might like
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
JavaScript加强之自定义event事件
2013/09/21 Javascript
JQuery表单验证插件EasyValidator用法分析
2014/11/15 Javascript
深入浅析JS Function()构造函数
2016/08/22 Javascript
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
Nuxt.js实现校验访问浏览器类型的中间件
2018/08/24 Javascript
浅析vue-router原理
2018/10/19 Javascript
vscode vue 文件模板的配置方法
2019/07/23 Javascript
three.js利用gpu选取物体并计算交点位置的方法示例
2019/11/25 Javascript
Vue.js实现大屏数字滚动翻转效果
2019/11/29 Javascript
JS实现基本的网页计算器功能示例
2020/01/16 Javascript
JS实现单张或多张图片持续无缝滚动的示例代码
2020/05/10 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
解决vue请求接口第一次成功,第二次失败问题
2020/09/08 Javascript
js+h5 canvas实现图片验证码
2020/10/11 Javascript
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python发腾讯微博代码分享
2014/01/10 Python
python读写ini文件示例(python读写文件)
2014/03/25 Python
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Django安装配置mysql的方法步骤
2018/10/15 Python
python实现石头剪刀布小游戏
2021/01/20 Python
python如何读取bin文件并下发串口
2019/07/05 Python
python动态视频下载器的实现方法
2019/09/16 Python
python多线程使用方法实例详解
2019/12/30 Python
Python实现大数据收集至excel的思路详解
2020/01/03 Python
python实现信号时域统计特征提取代码
2020/02/26 Python
Farnell德国:电子元器件供应商
2018/07/10 全球购物
西雅图电动自行车公司:Rad Power Bikes
2020/02/02 全球购物
小饰品店的创业计划书范文
2013/12/28 职场文书
社团活动总结模板
2014/06/30 职场文书
幼儿园开学通知
2015/04/24 职场文书
爱护环境卫生倡议书
2015/04/29 职场文书
草房子读书笔记
2015/06/29 职场文书
小学毕业感言200字
2015/07/30 职场文书
高三化学教学反思
2016/02/22 职场文书
详解Python中的进程和线程
2021/06/23 Python