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

图片上画线条

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()

补充知识: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模块在图片画线写字就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值