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

企业网站 asp php枫林seo工具

企业网站 asp php,枫林seo工具,wordpress页面调用分类文章列表,福建得兴建设工程网站(1)机器学习小白入门YOLOv :从概念到实践 (2)机器学习小白入门 YOLOv:从模块优化到工程部署 (3)机器学习小白入门 YOLOv: 解锁图片分类新技能 (4)机器学习小白入门YOLOv :图片标注实操手册 (5)机器学习小白入门 YOLOv:…

(1)机器学习小白入门YOLOv :从概念到实践
(2)机器学习小白入门 YOLOv:从模块优化到工程部署
(3)机器学习小白入门 YOLOv: 解锁图片分类新技能
(4)机器学习小白入门YOLOv :图片标注实操手册
(5)机器学习小白入门 YOLOv:数据需求与图像不足应对策略

对于熟悉 Python 和 YOLOv 的资深程序员而言,图片标注是模型训练前至关重要的环节,其质量直接影响模型的检测精度。以下是详细的标注过程、步骤及相关实例代码:

一、标注前的准备工作

(一)数据集整理

首先要对收集到的图片进行筛选和整理。去除模糊、光照异常、目标不清晰的图片,保证数据集的有效性。同时,按照一定的比例划分训练集、验证集和测试集,一般可采用 8:1:1 的比例,也可根据实际需求调整。另外,为了让模型更好地学习,需要确保数据集中包含各种场景、角度、尺寸的目标对象。

以下是使用 Python 划分数据集的示例代码:

import os
import shutil
import randomdef split_dataset(image_dir, train_ratio=0.8, val_ratio=0.1, test_ratio=0.1):# 创建训练集、验证集、测试集文件夹train_dir = os.path.join(image_dir, 'train')val_dir = os.path.join(image_dir, 'val')test_dir = os.path.join(image_dir, 'test')for dir in [train_dir, val_dir, test_dir]:if not os.path.exists(dir):os.makedirs(dir)# 获取所有图片路径image_files = [f for f in os.listdir(image_dir) if f.endswith(('.jpg', '.jpeg', '.png'))]random.shuffle(image_files)# 计算各数据集数量total = len(image_files)train_num = int(total * train_ratio)val_num = int(total * val_ratio)# 复制图片到对应文件夹for i, file in enumerate(image_files):src = os.path.join(image_dir, file)if i < train_num:dst = os.path.join(train_dir, file)elif i < train_num + val_num:dst = os.path.join(val_dir, file)else:dst = os.path.join(test_dir, file)shutil.copy(src, dst)# 使用示例
image_directory = 'path/to/your/images'
split_dataset(image_directory)

(二)确定标注目标和类别

明确需要标注的目标对象,比如在目标检测任务中,可能需要标注行人、车辆、交通信号灯等。然后对这些目标进行类别定义,每个类别给予唯一的标识符,方便后续的标注和模型训练。

(三)选择合适的标注工具

根据实际需求选择标注工具,常用的标注工具有 LabelImg、LabelMe、VGG Image Annotator(VIA)等。对于 YOLOv 模型,通常需要输出特定格式的标注文件(如 txt 格式),部分工具可以直接生成该格式,能减少后续格式转换的工作。比如 LabelImg 就支持 YOLO 格式的标注,使用起来较为便捷。

二、标注实施步骤(以 LabelImg 为例)

(一)导入图片到标注工具

  1. 打开 LabelImg 软件,点击左上角的 “Open Dir” 按钮,在弹出的窗口中选择整理好的图片文件夹,即可将该文件夹下的所有图片导入到工具中。
    在这里插入图片描述

  2. 若需要批量处理图片,可点击 “Change Save Dir” 设置标注文件的保存路径,确保标注文件与图片对应存放。

(二)进行目标框标注

  1. 在工具栏中选择 “Create RectBox” 工具。
    在这里插入图片描述

  2. 对于当前显示的图片,找到目标对象,按住鼠标左键拖动,绘制一个能够准确包围目标的矩形边界框。例如,标注一辆汽车时,边界框应从汽车的左上角边缘到右下角边缘,尽量不包含过多背景,也不遗漏汽车的任何部分。
    在这里插入图片描述

  3. 绘制完成后,松开鼠标,会弹出一个类别选择窗口。
    在这里插入图片描述

(三)填写类别信息

  1. 在弹出的类别选择窗口中,从预设的类别列表中选择该目标对应的类别,如 “dog”。
    在这里插入图片描述

  2. 若该类别未在列表中,可直接输入类别名称并点击 “OK”,该类别会被添加到列表中供后续使用。
    在这里插入图片描述

  3. 完成一个目标的标注后,可点击 “Next Image”(快捷键 “D”)切换到下一张图片,重复上述标注操作。

实例过程:假设要标注一批包含行人、自行车和摩托车的图片。导入图片文件夹后,第一张图片中有一位行人和一辆自行车。使用 “Create RectBox” 工具分别为行人和自行车绘制边界框,在类别选择窗口中分别选择 “person” 和 “bicycle”,完成标注后切换到下一张图片继续标注。

三、标注后的检查与处理

(一)标注质量检查

对标注好的图片进行逐一检查,查看边界框是否准确、类别标注是否正确。可以通过随机抽查、交叉检查等方式提高检查的准确性。对于发现的错误标注,要及时进行修正。

import osdef check_annotations(image_dir, label_dir, class_names):class_ids = {name: i for i, name in enumerate(class_names)}error_log = []for image_file in os.listdir(image_dir):if not image_file.endswith(('.jpg', '.jpeg', '.png')):continueimage_name = os.path.splitext(image_file)[0]label_file = os.path.join(label_dir, f'{image_name}.txt')# 检查标注文件是否存在if not os.path.exists(label_file):error_log.append(f'标注文件不存在:{label_file}')continue# 检查标注内容with open(label_file, 'r') as f:lines = f.readlines()for line_num, line in enumerate(lines, 1):parts = line.strip().split()if len(parts) != 5:error_log.append(f'{label_file}{line_num}行格式错误,应为5个字段')continueclass_id, x_center, y_center, width, height = partstry:class_id = int(class_id)x_center = float(x_center)y_center = float(y_center)width = float(width)height = float(height)except ValueError:error_log.append(f'{label_file}{line_num}行字段类型错误')continueif class_id not in class_ids.values():error_log.append(f'{label_file}{line_num}行类别ID无效:{class_id}')if not (0 <= x_center <= 1 and 0 <= y_center <= 1 and 0 <= width <= 1 and 0 <= height <= 1):error_log.append(f'{label_file}{line_num}行坐标值超出范围')return error_log# 使用示例
class_names = ['person', 'car', 'traffic_light']
image_dir = 'path/to/train/images'
label_dir = 'path/to/train/labels'
errors = check_annotations(image_dir, label_dir, class_names)
if errors:with open('annotation_errors.txt', 'w') as f:f.write('\n'.join(errors))print(f'发现{len(errors)}个错误,已保存到annotation_errors.txt')
else:print('标注检查通过')

(二)格式转换(如需要)

虽然部分标注工具可以直接生成 YOLOv 所需的 txt 格式标注文件,但如果使用的工具生成的是其他格式(如 XML 格式),则需要进行格式转换。可以利用 Python 编写脚本实现格式转换,将标注信息转换为 YOLOv 要求的格式,即每个图片对应一个 txt 文件,文件中每行包含类别索引、目标中心 x 坐标、目标中心 y 坐标、目标宽度、目标高度(均为相对于图片宽度和高度的归一化值)。

以下是将 XML 格式标注文件转换为 YOLOv 所需 txt 格式的示例代码:

<annotation><folder>img</folder><filename>1-0002.png</filename><path>E:\BaiduNetdiskDownload\data\img\1-0002.png</path><source><database>Unknown</database></source><size><width>386</width><height>386</height><depth>3</depth></size><segmented>0</segmented><object><name>dog</name><pose>Unspecified</pose><truncated>0</truncated><difficult>0</difficult><bndbox><xmin>2</xmin><ymin>2</ymin><xmax>383</xmax><ymax>385</ymax></bndbox></object>
</annotation>

(三)数据集打包与存储

将检查和处理好的图片和对应的标注文件按照训练集、验证集、测试集的划分进行打包存储。可以建立相应的文件夹结构,如 “train/images”“train/labels”“val/images”“val/labels”“test/images”“test/labels”,分别存放对应数据集的图片和标注文件,方便后续模型训练时调用。


文章转载自:

http://t1b88bWg.qqtzn.cn
http://HGKDeZjX.qqtzn.cn
http://awtVkAZp.qqtzn.cn
http://iaO3L6qU.qqtzn.cn
http://TJfbFZLH.qqtzn.cn
http://ad5cRVgd.qqtzn.cn
http://re1xt7TJ.qqtzn.cn
http://nlsF5MJ7.qqtzn.cn
http://YLa9hmzc.qqtzn.cn
http://jK2OiBjf.qqtzn.cn
http://zwSEIzVB.qqtzn.cn
http://xxGKwC2W.qqtzn.cn
http://8oUWgJZt.qqtzn.cn
http://FW4ygnwx.qqtzn.cn
http://aYKTpbRo.qqtzn.cn
http://XViEMAAV.qqtzn.cn
http://Qy1sPNon.qqtzn.cn
http://pOzzKfbZ.qqtzn.cn
http://yPousi7K.qqtzn.cn
http://RJ4dWt5v.qqtzn.cn
http://TQUBLelH.qqtzn.cn
http://va1zwdyE.qqtzn.cn
http://QlnSgCzw.qqtzn.cn
http://mwpWnyl0.qqtzn.cn
http://R8841gAs.qqtzn.cn
http://ngnb0Chc.qqtzn.cn
http://3aZmrVAF.qqtzn.cn
http://vDoksb4P.qqtzn.cn
http://YFG0q27S.qqtzn.cn
http://OffQ2Feb.qqtzn.cn
http://www.dtcms.com/wzjs/644218.html

相关文章:

  • 定州网站制作多少钱wordpress文章分页付费
  • asp 网站模板表白视频制作网站
  • 旅游网站开发现状重庆网站建设网站
  • 淄博网站建设专家网站空间地址查询
  • 网站seo怎样做简述网站建设
  • 学做漂亮早餐的网站wordpress使用对象储存
  • 东莞定制网站建设模板网站怎么建设优化
  • 把网站生成app的免费平台北京旅游网站建设
  • 设计网站都有什么作用是什么济南网站建设公司送400
  • wordpress全站公告一级做ae视频直播可以吗多少钱
  • 公司网站开发费入什么科目聊城做网站做的不错的网络公司
  • 网站开发项目对自身的意义手机资讯类网站模板
  • html5网站建站书网站建设视频教程推荐
  • 网站设置cookie什么意思铜川网站建设报价
  • 枣庄手机网站建设报价在线销售型网站
  • 做网站排名的公司有哪些wordpress返回上一个页面
  • 爱站网影院网站编辑怎么做
  • 宠物网站建设的可行性做推送的网站推荐
  • 最专业的佛山网站建设沈阳网站制作 600元
  • 网站做好怎么开始做推广网站优化 seo和sem
  • 网站被百度蜘蛛爬死了免费网站技术
  • 可以做女的游戏视频网站杭州网站建设 巴零
  • 网站 建设 原则wordpress 用户功能
  • 免费网站建设方案建设网站要什么
  • 贵州省都匀市网站建设历史建筑信息平台
  • 自己做动漫头像的网站网站设计参考文献
  • 网站备案信息不准确化妆品网站建设项目计划书
  • wordpress 5 开发昆明市网络优化案例
  • 建设网站需要什么硬件高端网站建设那公司好
  • 模板手机网站建设价格明细表店铺装修设计