当前位置: 首页 > news >正文

网站开发技术框架沧州网站建设专业的公司4000-262-

网站开发技术框架,沧州网站建设专业的公司4000-262-,成都网架公司,装潢设计专业主要学什么VOC数据图像和标签一起进行Resize 参加检测比赛的时候#xff0c;很多时候工业原始数据尺度都比较大#xff0c;如果对数据不提前进行处理#xff0c;会导致数据在加载进内存时花费大量的时间#xff0c;所以在执行训练程序之前需要将图像提前进行预处理。对于目标检测的数…VOC数据图像和标签一起进行Resize 参加检测比赛的时候很多时候工业原始数据尺度都比较大如果对数据不提前进行处理会导致数据在加载进内存时花费大量的时间所以在执行训练程序之前需要将图像提前进行预处理。对于目标检测的数据不只是将原始数据进行resize边界框的坐标也要跟随一起进行resize。 如下是今天测试需要用到的原始图像和他的标签。 annotationfolderVOC2012/folderfilename2007_002266.jpg/filenamesourcedatabaseThe VOC2007 Database/databaseannotationPASCAL VOC2007/annotationimageflickr/image/sourcesizewidth500/widthheight373/heightdepth3/depth/sizesegmented1/segmentedobjectnameaeroplane/nameposeRear/posetruncated1/truncateddifficult0/difficultbndboxxmin231/xminymin251/yminxmax458/xmaxymax346/ymax/bndbox/objectobjectnameaeroplane/nameposeLeft/posetruncated0/truncateddifficult0/difficultbndboxxmin5/xminymin118/yminxmax499/xmaxymax258/ymax/bndbox/object /annotation 等比例缩放之后的结果如下。 单张图像resize 单张进行预处理的脚本如下。 # -*- coding: utf-8 -*- # File : PreProcessing.py # Author: 肆十二 # Date : 2023/12/24 # Desc : 同步缩放图片等比例缩放无失真和xml文件标注的anchor size import glob import xml.dom.minidom import cv2img cv2.imread(./demo.jpg) height, width img.shape[:2]# 定义缩放信息 以等比例缩放到416为例 scale416/height height416 widthint(width*scale)dom xml.dom.minidom.parse(./demo.xml) root dom.documentElement# 读取标注目标框 objects root.getElementsByTagName(bndbox)for object in objects:xminobject.getElementsByTagName(xmin)xmin_dataint(float(xmin[0].firstChild.data))# xmin[0].firstChild.data str(int(xmin1 * x))ymin object.getElementsByTagName(ymin)ymin_data int(float(ymin[0].firstChild.data))xmaxobject.getElementsByTagName(xmax)xmax_data int(float(xmax[0].firstChild.data))ymaxobject.getElementsByTagName(ymax)ymax_data int(float(ymax[0].firstChild.data))# 更新xmlwidth_xmlroot.getElementsByTagName(width)width_xml[0].firstChild.datawidthheight_xml root.getElementsByTagName(height)height_xml[0].firstChild.data heightxmin[0].firstChild.data int(xmin_data*scale)ymin[0].firstChild.data int(ymin_data*scale)xmax[0].firstChild.data int(xmax_data*scale)ymax[0].firstChild.data int(ymax_data*scale)# 另存更新后的文件with open(demo2.xml, w) as f:dom.writexml(f, addindent , encodingutf-8)# 测试缩放效果img cv2.resize(img, (width, height))# xmin, ymin, xmax, ymax分别为xml读取的坐标信息left_top (int(xmin_data*scale), int(ymin_data*scale))right_down (int(xmax_data*scale), int(ymax_data*scale))cv2.rectangle(img, left_top, right_down, (255, 0, 0), 1)cv2.imwrite(result.jpg,img) 批量resize 下面是批量对VOC格式数据集进行预处理的脚本处理之后划分为37的比例就可以进行模型训练了。 import glob import xml.dom.minidom import cv2 from PIL import Image import matplotlib.pyplot as plt import os# 定义待批量裁剪图像的路径地址 IMAGE_INPUT_PATH rD:\code\data\JPEGImages XML_INPUT_PATH rD:\code\data\Annotations_new # 定义裁剪后的图像存放地址 IMAGE_OUTPUT_PATH rD:\code\data\JPEGImages_out XML_OUTPUT_PATH rD:\code\data\Annotations_out imglist os.listdir(IMAGE_INPUT_PATH) xmllist os.listdir(XML_INPUT_PATH)for i in range(len(imglist)):# 每个图像全路径这里有改进的空间image_input_fullname IMAGE_INPUT_PATH / imglist[i]# xml_input_fullname XML_INPUT_PATH / xmllist[i] xml_input_fullname XML_INPUT_PATH / imglist[i].replace(jpg, xml)image_output_fullname IMAGE_OUTPUT_PATH / imglist[i]xml_output_fullname XML_OUTPUT_PATH / xmllist[i]img cv2.imread(image_input_fullname)height, width img.shape[:2]# 定义缩放信息 以等比例缩放到416为例scale400/heightheight400widthint(width*scale)dom xml.dom.minidom.parse(xml_input_fullname)root dom.documentElement# 读取标注目标框objects root.getElementsByTagName(bndbox)for object in objects:xminobject.getElementsByTagName(xmin)xmin_dataint(float(xmin[0].firstChild.data))# xmin[0].firstChild.data str(int(xmin1 * x))ymin object.getElementsByTagName(ymin)ymin_data int(float(ymin[0].firstChild.data))xmaxobject.getElementsByTagName(xmax)xmax_data int(float(xmax[0].firstChild.data))ymaxobject.getElementsByTagName(ymax)ymax_data int(float(ymax[0].firstChild.data))# 更新xmlwidth_xmlroot.getElementsByTagName(width)width_xml[0].firstChild.datawidthheight_xml root.getElementsByTagName(height)height_xml[0].firstChild.data heightxmin[0].firstChild.data int(xmin_data*scale)ymin[0].firstChild.data int(ymin_data*scale)xmax[0].firstChild.data int(xmax_data*scale)ymax[0].firstChild.data int(ymax_data*scale)# 另存更新后的文件with open(xml_output_fullname, w) as f:dom.writexml(f, addindent , encodingutf-8)# 测试缩放效果img cv2.resize(img, (width, height))# xmin, ymin, xmax, ymax分别为xml读取的坐标信息left_top (int(xmin_data*scale), int(ymin_data*scale))right_down (int(xmax_data*scale), int(ymax_data*scale))cv2.rectangle(img, left_top, right_down, (255, 0, 0), 1)cv2.imwrite(image_output_fullname,img)总结 当前的目标检测框架中模型方面基本都已经固定下来YOLO或者RCNN靠模型很难取得大规模的增点所以这个时候从图像的角度进行入手显得非常重要这里推荐大家使用一个专业的切图工具。 链接如下GitHub - obss/sahi: Framework agnostic sliced/tiled inference interactive ui error analysis plots 碎碎念数据预处理真的很关键啊好的数据预处理真的可以节省大量的时间。
http://www.zqtcl.cn/news/74186/

相关文章:

  • 展示网站方案手机域名怎么设置
  • vuejs 做网站 性能如何建立公司网站是什么
  • 绿色网站模板最简单的电子商务网站建设代码
  • 做影视外包的网站使用网站效果
  • 巴南网站制作外贸资源网
  • 网站搜索功能实现兰州网站建设王道下拉強
  • 南宁手机企业网站定制公司企业网站建设的研究开发方法及技术路线
  • 单页面的网站怎样做网站优化排名
  • 企业网站源码哪个最好网站地图模板
  • 湛江怎么做网站关键词优化网站 成本
  • 做网站怎么改关键词网站外链建设周期
  • 模板网站如何引擎收录娄底建设网站
  • 做网站制作课程总结wordpress迁移到本地
  • wordpress购物网站教程欧美风格英文网站设计
  • 网站开发与设计是什么上海公司排名
  • 焦作网站设计多少钱官网建设企业
  • 网站推广南京公司电子商务网站建设资讯
  • 网站建设多少钱合适本地建站教程
  • 自己能建设网站wordpress seven
  • 找潍坊做网站的织梦网站文章发布信息模板下载
  • 青岛网站建设青岛昆明app制作公司在哪里
  • 建设企业网站的好处asp 做购物网站
  • 生鲜市场型网站开发住房和城乡建设部网站电话
  • 网站备案文件吗电脑维修 做网站
  • 昆明微网站厦门市建设局网站首页
  • 军事网站模板哪些网站做舆情分析
  • 西宁网站建设王道下拉惠网站建设的四大步骤
  • 网站后台管理系统内容网站域名邮箱
  • discuz 企业网站 模板asp网站怎么安装
  • 深圳网站设计灵点网络口碑好怎么把网站关联到万网