将COCO2017标注文件中的bbox显示在图片上

2023-12-22 00:40

本文主要是介绍将COCO2017标注文件中的bbox显示在图片上,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

from pycocotools.coco import COCO
import cv2
import pandas as pddef showNimages(imageidFile, annFile, imageFile, resultFile):""":param imageidFile: 要查看的图片imageid,存储一列在csv文件里 (目前设计的imageid需要为6位数,如果少于6位数,可以在前面加多个0):param annFile:使用的标注文件:param imageFile:要读取的image所在文件夹:param resultFile:画了标注之后的image存储文件夹:return:"""data = pd.read_csv(imageidFile)list = data.values.tolist()image_id = []  # 存储的是要提取图片idfor i in range(len(list)):image_id.append(list[i][0])print(image_id)print(len(image_id))coco = COCO(annFile)for i in range(len(image_id)):image = cv2.imread(imageFile + '000000' + str(image_id[i]) + '.jpg')annIds = coco.getAnnIds(imgIds=image_id[i], iscrowd=None)anns = coco.loadAnns(annIds)for n in range(len(anns)):x, y, w, h = anns[n]['bbox']x, y, w, h = int(x), int(y), int(w), int(h)# print(x, y, w, h)cv2.rectangle(image, (x, y), (x + w, y + h), (0, 0, 255))cv2.imwrite(resultFile + '000000' + str(image_id[i]) + 'result.png', image)print("生成图片存在{}".format(resultFile))

函数使用方法

if __name__ == "__main__":imageidFile = '/Desktop/myimage_id.csv'annFile = 'instances_val2017.json'imageFile = '/Users/Desktop/annotations/val2017/'resultFile = '/Users/Desktop/image/'

 

 

注意看imageidFile里面的数据格式:目前要求是6位,可以自己调整一下程序

效果如下

 

这篇关于将COCO2017标注文件中的bbox显示在图片上的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/522064

相关文章

如何设置vim永久显示行号

《如何设置vim永久显示行号》在Linux环境下,vim默认不显示行号,这在程序编译出错时定位错误语句非常不便,通过修改vim配置文件vimrc,可以在每次打开vim时永久显示行号... 目录设置vim永久显示行号1.临时显示行号2.永www.chinasem.cn久显示行号总结设置vim永久显示行号在li

C#中图片如何自适应pictureBox大小

《C#中图片如何自适应pictureBox大小》文章描述了如何在C#中实现图片自适应pictureBox大小,并展示修改前后的效果,修改步骤包括两步,作者分享了个人经验,希望对大家有所帮助... 目录C#图片自适应pictureBox大小编程修改步骤总结C#图片自适应pictureBox大小上图中“z轴

使用Python将长图片分割为若干张小图片

《使用Python将长图片分割为若干张小图片》这篇文章主要为大家详细介绍了如何使用Python将长图片分割为若干张小图片,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果1. Python需求

使用JavaScript将PDF页面中的标注扁平化的操作指南

《使用JavaScript将PDF页面中的标注扁平化的操作指南》扁平化(flatten)操作可以将标注作为矢量图形包含在PDF页面的内容中,使其不可编辑,DynamsoftDocumentViewer... 目录使用Dynamsoft Document Viewer打开一个PDF文件并启用标注添加功能扁平化

电脑显示hdmi无信号怎么办? 电脑显示器无信号的终极解决指南

《电脑显示hdmi无信号怎么办?电脑显示器无信号的终极解决指南》HDMI无信号的问题却让人头疼不已,遇到这种情况该怎么办?针对这种情况,我们可以采取一系列步骤来逐一排查并解决问题,以下是详细的方法... 无论你是试图为笔记本电脑设置多个显示器还是使用外部显示器,都可能会弹出“无HDMI信号”错误。此消息可能

使用 Python 和 LabelMe 实现图片验证码的自动标注功能

《使用Python和LabelMe实现图片验证码的自动标注功能》文章介绍了如何使用Python和LabelMe自动标注图片验证码,主要步骤包括图像预处理、OCR识别和生成标注文件,通过结合Pa... 目录使用 python 和 LabelMe 实现图片验证码的自动标注环境准备必备工具安装依赖实现自动标注核心

Java操作xls替换文本或图片的功能实现

《Java操作xls替换文本或图片的功能实现》这篇文章主要给大家介绍了关于Java操作xls替换文本或图片功能实现的相关资料,文中通过示例代码讲解了文件上传、文件处理和Excel文件生成,需要的朋友可... 目录准备xls模板文件:template.xls准备需要替换的图片和数据功能实现包声明与导入类声明与

基于C#实现将图片转换为PDF文档

《基于C#实现将图片转换为PDF文档》将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片,所以本文将介绍如何使用C#将JPG/PNG图片转换为PDF文档,需要的可以参考下... 目录介绍C# 将单张图片转换为PDF文档C# 将多张图片转换到一个PDF文档介绍将图片(JPG、PNG)转

Qt QWidget实现图片旋转动画

《QtQWidget实现图片旋转动画》这篇文章主要为大家详细介绍了如何使用了Qt和QWidget实现图片旋转动画效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、效果展示二、源码分享本例程通过QGraphicsView实现svg格式图片旋转。.hpjavascript

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行