这篇文章主要介绍“Python PIL库用于目标检测的方法是什么”,在日常操作中,相信很多人在Python PIL库用于目标检测的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python PIL库用于目标检测的方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联是专业的遂昌网站建设公司,遂昌接单;提供成都做网站、成都网站设计、成都外贸网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行遂昌网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
实验代码展示:
from PIL import Image,ImageFont, ImageDrawimport numpy as npimport colorsys image = Image.open("bryant.jpg")class_names = \["aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", "pottedplant", "sheep", "sofa", "train", "tvmonitor"]hsv_tuples = [(x / len(class_names), 1., 1.)for x in range(len(class_names))] # 获得hsv格式的不同色度colors = list(map(lambda x: colorsys.hsv_to_rgb(*x), hsv_tuples)) # 获得rgb格式的不同颜色colors = list(map(lambda x: (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)),colors)) # 通过hsv格式来调整不同类别对应边框的色度font = ImageFont.truetype(font='simhei.ttf',size=np.floor(3e-2 * 1000 + 0.5).astype('int32')) # 获得字体# label = '{} {:.2f}'.format('linmazi', 0.982)label = '{} {:.2f}'.format('林麻子', 0.982)draw = ImageDraw.Draw(image) label_size = draw.textsize(label, font)print('label_size:',label_size) # label_size: (165, 29)label = label.encode('utf-8')# print(label)for i in range(8): # 将矩形框画得更粗一些draw.rectangle([100+i, 150+i, 300-i, 600-i],outline=colors[class_names.index('car')])draw.rectangle([400, 350, 500, 600],outline=colors[class_names.index('tvmonitor')],width=8)draw.rectangle([600, 350, 750, 600],outline=colors[class_names.index('motorbike')],width=8,fill=colors[class_names.index('diningtable')] # 用于填充)# draw.text([600, 350], str(label,'UTF-8'), fill=(0, 0, 0), font=font)draw.text([600, 50], label.decode(), fill=(255, 0, 0), font=font)image.show()
控制台输出结果:
Windows PowerShell 版权所有 (C) Microsoft Corporation。保留所有权利。 尝试新的跨平台 PowerShell https://aka.ms/pscore6 加载个人及系统配置文件用了 1017 毫秒。 (base) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq\news> conda activate ssd4pytorch2_2_0 (ssd4pytorch2_2_0) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq\news> & 'D:\Anaconda3\envs\ssd4pytorch2_2_0\python.exe' 'c:\Users\chenxuqi\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\launcher' '53058' '--' 'c:\Users\chenxuqi\Desktop\News4cxq\test4cxq\news\test15.py' label_size: (165, 29) (ssd4pytorch2_2_0) PS C:\Users\chenxuqi\Desktop\News4cxq\test4cxq\news>
运行结果截图:
程序原图:
到此,关于“Python PIL库用于目标检测的方法是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!