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语言技巧之三元运算符使用介绍
Mar 04 Python
python遍历类中所有成员的方法
Mar 18 Python
浅析Python的Django框架中的Memcached
Jul 23 Python
python读取文件名称生成list的方法
Apr 27 Python
python3实现SMTP发送邮件详细教程
Jun 19 Python
Numpy 改变数组维度的几种方法小结
Aug 02 Python
python实现知乎高颜值图片爬取
Aug 12 Python
Python函数参数类型及排序原理总结
Dec 19 Python
学生如何注册Pycharm专业版以及pycharm的安装
Sep 24 Python
Python eval函数介绍及用法
Nov 09 Python
python中最小二乘法详细讲解
Feb 19 Python
Python尝试实现蒙特卡罗模拟期权定价
Apr 21 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
打造计数器DIY三步曲(上)
2006/10/09 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
2013/07/03 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
2014/09/24 PHP
php面向对象的用户登录身份验证
2017/06/08 PHP
PHP+Apache环境中如何隐藏Apache版本
2017/11/24 PHP
Laravel框架数据库迁移操作实例详解
2020/04/06 PHP
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
Jquery刷新页面背景图片随机变换的实现方法
2013/03/15 Javascript
jquery插件格式实例分析
2016/06/16 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
AngularJS使用ng-app自动加载bootstrap框架问题分析
2017/01/04 Javascript
js 博客内容进度插件详解
2017/02/19 Javascript
zTree获取当前节点的下一级子节点数实例
2017/09/05 Javascript
利用vue和element-ui设置表格内容分页的实例
2018/03/02 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
2018/12/14 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
2020/07/22 Javascript
JS闭包原理及其使用场景解析
2020/12/03 Javascript
Python多线程实例教程
2014/09/06 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
Python连接数据库学习之DB-API详解
2017/02/07 Python
浅谈numpy生成数组的零值问题
2018/11/12 Python
对Python w和w+权限的区别详解
2019/01/23 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
Python使用enumerate获取迭代元素下标
2020/02/03 Python
python GUI框架pyqt5 对图片进行流式布局的方法(瀑布流flowlayout)
2020/03/12 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
2020/09/11 Python
10个python爬虫入门实例(小结)
2020/11/01 Python
python time()的实例用法
2020/11/03 Python
手摸手教你用canvas实现给图片添加平铺水印的实现
2019/08/20 HTML / CSS
C&A巴西网上商店:时尚、衣服、手机和鞋子
2020/06/07 全球购物
技术人员面试提纲
2013/11/28 职场文书
诚信考试倡议书
2014/04/15 职场文书
电力工程合作意向书
2015/05/11 职场文书
社团招新宣传语
2015/07/13 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python
MySQL基础快速入门知识总结(附思维导图)
2021/09/25 MySQL