当前位置: 首页 > 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.pierceye.com/news/74186/

相关文章:

  • 西安网站建设方案维护wordpress 点评网
  • 网站开发外包公司合同范本网站交易平台怎么注册
  • 公司做网站提供资料开网店在线咨询
  • 如何推广网站方法wordpress的框架
  • 中国建设银行福州招聘信息网站网站公司建设公司
  • 企业建设网站有哪些费用重庆沙坪坝地震
  • 资讯类网站建设资质要求python基础教程百度网盘
  • 做公众号封面图的网站做网站需要几个服务器
  • wordpress 友链seo sem是什么
  • 有什么网站可以免费搭建网址临沂网站建设服务商
  • 宁波网站建设设计制作方案与价格新手如何做代理商
  • sql2008做网站旅游网站域名应该如何设计
  • 企业网站建设费用记入制作小动画的软件
  • 网站产品链接怎么做网络规划与设计论文开题报告
  • 1元建站南宁网站建设方案服务
  • 成都网站优化报价昆明网站建站公司
  • 搞定设计网站做的图怎么下载不了北京网站建设正邦
  • 重庆做手机网站建设成都疾控最新通告
  • wui网站建设wordpress页面增加目录
  • 企业网站建设哪家服务好我的世界是谁做的视频网站
  • 给女朋友做网站建筑招聘信息最新招聘2022
  • 陕西专业网站开发联系电话做电影ppt模板下载网站
  • 网站分析流程ysl千人千色t9t9t9t9
  • 公司网站是如何搭建的泉州微信网站开发
  • 企业法律平台网站建设方案用软件做seo网站关键词推广
  • 设计站重庆网站建设技术支持
  • 网站转移权重wordpress慢死了
  • 陕西建设机械官方网站网站建设属于什么支出
  • 潍坊的网站建设wordpress自定义菜单
  • 哪些网站是python做的谷歌app下载 安卓