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

手机网站注意哪些问题吗天津市做网站的公司有哪些

手机网站注意哪些问题吗,天津市做网站的公司有哪些,贵州省建设工程造价信息网,全网推广方案准备自己的数据集 训练YOLOv8时#xff0c;选择的数据格式是VOC#xff0c;因此下面将介绍如何将自己的数据集转换成可以直接让YOLOv8进行使用。 1、创建数据集 我的数据集都在保存在mydata文件夹#xff08;名字可以自定义#xff09;#xff0c;目录结构如下#xf… 准备自己的数据集 训练YOLOv8时选择的数据格式是VOC因此下面将介绍如何将自己的数据集转换成可以直接让YOLOv8进行使用。 1、创建数据集 我的数据集都在保存在mydata文件夹名字可以自定义目录结构如下将之前labelImg标注好的xml文件和图片放到对应目录下 mydata images # 存放图片 xml # 存放图片对应的xml文件 dataSet #之后会在Main文件夹内自动生成train.txtval.txttest.txt和trainval.txt四个文件存放训练集、验证集、测试集图片的名字无后缀.jpg 示例如下 mydata文件夹下内容如下 image为VOC数据集格式中的JPEGImages内容如下 xml文件夹下面为.xml文件标注工具采用labelImage内容如下 dataSet 文件夹下面存放训练集、验证集、测试集的划分通过脚本生成可以创建一个split_train_val.py文件代码内容如下 # coding:utf-8import osimport randomimport argparseparser argparse.ArgumentParser()# xml文件的地址根据自己的数据进行修改 xml一般存放在Annotations下parser.add_argument(--xml_path, defaultxml, typestr, helpinput xml label path)# 数据集的划分地址选择自己数据下的ImageSets/Mainparser.add_argument(--txt_path, defaultdataSet, typestr, helpoutput txt label path)opt parser.parse_args()trainval_percent 1.0train_percent 0.9xmlfilepath opt.xml_pathtxtsavepath opt.txt_pathtotal_xml os.listdir(xmlfilepath)if not os.path.exists(txtsavepath):os.makedirs(txtsavepath)num len(total_xml)list_index range(num)tv int(num * trainval_percent)tr int(tv * train_percent)trainval random.sample(list_index, tv)train random.sample(trainval, tr)file_trainval open(txtsavepath /trainval.txt, w)file_test open(txtsavepath /test.txt, w)file_train open(txtsavepath /train.txt, w)file_val open(txtsavepath /val.txt, w)for i in list_index:name total_xml[i][:-4] \nif i in trainval:file_trainval.write(name)if i in train:file_train.write(name)else:file_val.write(name)else:file_test.write(name)file_trainval.close()file_train.close()file_val.close()file_test.close() 运行代码后在dataSet 文件夹下生成下面四个txt文档 三个txt文件里面的内容如下 2、转换数据格式 接下来准备labels把数据集格式转换成yolo_txt格式即将每个xml标注提取bbox信息为txt格式每个图像对应一个txt文件文件每一行为一个目标的信息包括class, x_center, y_center, width, height格式。格式如下 创建voc_label.py文件将训练集、验证集、测试集生成label标签训练中要用到同时将数据集路径导入txt文件中代码内容如下 # -*- coding: utf-8 -*-import xml.etree.ElementTree as ETimport osfrom os import getcwdsets [train, val, test]classes [a, b] # 改成自己的类别abs_path os.getcwd()print(abs_path)def convert(size, box):dw 1. / (size[0])dh 1. / (size[1])x (box[0] box[1]) / 2.0 - 1y (box[2] box[3]) / 2.0 - 1w box[1] - box[0]h box[3] - box[2]x x * dww w * dwy y * dhh h * dhreturn x, y, w, hdef convert_annotation(image_id):in_file open(data/mydata/xml/%s.xml % (image_id), encodingUTF-8)out_file open(data/mydata/labels/%s.txt % (image_id), w)tree ET.parse(in_file)root tree.getroot()size root.find(size)w int(size.find(width).text)h int(size.find(height).text)for obj in root.iter(object):# difficult obj.find(difficult).textdifficult obj.find(Difficult).textcls obj.find(name).textif cls not in classes or int(difficult) 1:continuecls_id classes.index(cls)xmlbox obj.find(bndbox)b (float(xmlbox.find(xmin).text), float(xmlbox.find(xmax).text), float(xmlbox.find(ymin).text),float(xmlbox.find(ymax).text))b1, b2, b3, b4 b# 标注越界修正if b2 w:b2 wif b4 h:b4 hb (b1, b2, b3, b4)bb convert((w, h), b)out_file.write(str(cls_id) .join([str(a) for a in bb]) \n)wd getcwd()for image_set in sets:if not os.path.exists(data/mydata/labels/):os.makedirs(data/mydata/labels/)image_ids open(data/mydata/dataSet/%s.txt % (image_set)).read().strip().split()list_file open(paper_data/%s.txt % (image_set), w)for image_id in image_ids:list_file.write(abs_path /mydata/images/%s.jpg\n % (image_id))convert_annotation(image_id)list_file.close() 3、配置文件 1数据集的配置 在mydata文件夹下新建一个mydata.yaml文件可以自定义命名用来存放训练集和验证集的划分文件train.txt和val.txt这两个文件是通过运行voc_label.py代码生成的然后是目标的类别数目和具体类别列表mydata.yaml内容如下 2) 选择一个你需要的模型 在ultralytics/models/v8/目录下是模型的配置文件这边提供s、m、l、x版本逐渐增大随着架构的增大训练时间也是逐渐增大假设采用yolov8x.yaml只用修改一个参数把nc改成自己的类别数,需要取整可选 如下 至此自定义数据集已创建完毕接下来就是训练模型了。 1、下载预训练模型 在YOLOv8的GitHub开源网址上下载对应版本的模型 2、训练 接下来就可以开始训练模型了命令如下 yolo taskdetect modetrain modelyolov8x.yaml datamydata.yaml epochs1000 batch16 以上参数解释如下 task选择任务类型可选[detect, segment, classify, init] mode: 选择是训练、验证还是预测的任务蕾西 可选[train, val, predict] model: 选择yolov8不同的模型配置文件可选yolov8s.yaml、yolov8m.yaml、yolov8l.yaml、yolov8x.yaml data: 选择生成的数据集配置文件 epochs指的就是训练过程中整个数据集将被迭代多少次,显卡不行你就调小点。 batch一次看完多少张图片才进行权重更新梯度下降的mini-batch,显卡不行你就调小点。 文章参考(超详细)YOLOv8训练的练习数据集 - 知乎
http://www.pierceye.com/news/276531/

相关文章:

  • 杭州多语言网站建设网站转app工具
  • 一流的网站建设wordpress 读者墙
  • php 视频播放网站开发php做直播类型的网站
  • 网站建设氺金手指排名11wordpress手机端菜单
  • 存储网站建设软件界面设计图
  • 微信 公司网站 怎么做WordPress安装在Windows
  • 商丘给企业做网站的公司已备案域名租用
  • .net商城网站模板下载网站开发怎么对接客户
  • php程序员网站开发域名企业备案对网站的好处
  • 沈阳市城乡建设网站wordpress全文
  • 冉冉科技网站建设网络教学平台网址
  • 深圳网站设计建设公司宁波易通建设网站
  • 许昌网站建设公司网站的空间和域名
  • 公司查询网站查询系统wordpress简书主题
  • 公司网站 钓鱼网站ui设计交付物都包含哪些
  • seo网站导航建设技巧精东影视传媒文化管理公司
  • 做白酒的网站怎么查网站建设是哪家公司
  • 网站域名密码免费网站推广产品
  • 网站建设一般要多少费用申请网站官网
  • 金融网站织梦模板二手车网站建设
  • 怎么自己写代码做网站做网站必须用域名吗
  • 重庆营销网站建设平台怎么添加wordpress模板
  • 网站赚取广告费深圳个人外贸网站建
  • 在线销售型的网站巢湖城市建设投资有限公司网站
  • 苏州高端网站建设设计程序源代码网站
  • 基本原理网站建设文档怎么做网站链接
  • 网站建设出售门户网站有哪些推广分类
  • 企业网站制作一般多少钱做ppt的兼职网站有哪些
  • 分公司可以建设网站淘宝联盟怎么推广
  • 苏州网站设计哪家公司好童程童美编程地址在哪里