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

目标检测模型和语言模型

目标检测模型

  • 目标检测模型
    • 基础知识
      • 像素操作
      • YOLO模型
        • YOLOv5:
        • YOLOv8:
      • 模型序列化格式
      • 模型量化
      • 模型部署
    • YOLO模型训练
      • 1、数据集组织结构
      • 2、数据集的划分
      • 3、标注文件的转换
      • 4、训练数据的配置文件(train.yaml)
      • 5、加载预训练模型开始训练
      • 6、训练参数设置
      • 7、评估模型性能
      • 8、改进策略
  • 模型推理
    • 数据预处理
    • 数据后处理

目标检测模型

基础知识

像素操作

  1. 常用读图工具的默认通道格式
    • opencv:BGR(HWC:BGRBGR…)
    • PIL:RGB
    • Ultralytics 框架:RGB(CHW:RRR…GGG…BBB…)

YOLO模型

  • 模型输出边界框的坐标表示方式
YOLOv5:
  • 模型不同版本的参数
  • 模型输入输出
    模型输入数据的格式:BCHW
    模型输入数据的色彩空间:RGB
    模型输出数据的格式:【batch_size、预测框个数、预测框信息维度】
    预测框信息维度(xywhn):normal_x_center、 nromal_y_center、 normal_width、 normal_height、obj_confidence、class_0_Probability、class_1_Probability…class_N_Probability。
    总预测框个数计算方式:cnt = ( input_w * input_h / (88) + input_w * input_h / (1616) + input_w * input_h / (32*32) ) * 3

YOLOv8:
模型使用三个不同尺度 80×80(stride=8)、 40×40(stride=16)、20×20(stride=32)的特征图上进行边界框预测,每个特征图上的每个网格点预测一个目标框; 直接预测边界框坐标,无需预定义锚框;
  • 模型不同版本的参数
  • 模型输入输出
    模型输入数据的格式:BCHW
    模型输入数据的色彩空间:RGB
    模型输出数据的信息格式:【batch_size、预测框信息维度、预测框个数】
    预测框信息维度(xywh): x_center、 y_center、 width、 height、class_0_Probability、class_1_Probability…class_N_Probability。
    总预测框个数计算方式:cnt = input_w * input_h / (88) + input_w * input_h / (1616) + input_w * input_h / (32*32)

模型序列化格式

  1. 模型序列化的格式:
  • TorchScript:
    • PyTorch框架专属序列化格式;支持动态图;
    • 适用推理引擎:PyTorch、LibTorch(C++)、TorchScript Mobile;
    • 支持更复杂的控制流(如循环、条件判断);对自定义算子、复杂逻辑的支持更好;
    • 更容易保留原始模型的行为
  • ONNX:
    • 支持多框架(PyTorch、TensorFlow、Keras、MXNet 等)序列化导出模型;
    • 适用推理引擎:ONNX Runtime、TensorRT、OpenVINO、Core ML、NCNN ;
    • 计算图是静态的,某些动态结构(如可变长度循环)可能无法导出;
    • 依赖于算子集(operator set),如果模型中包含不支持的算子,导出会失败或需要自定义扩展
  • pt:
    • Pytorch原生格式
  • engine:
    • Tensort 导出的格式

模型量化

  • 量化感知训练(QAT):量化感知训练(Quantization-Aware Training, QAT),是一种在训练后期引入“伪量化”节点,模拟量化过程中的舍入和范围限制,让模型权重和激活值在训练中“适应”量化带来的噪声,从而在部署时获得更高的推理速度和更低的资源消耗,同时最大程度保留精度。

    • 目前存在问题:
      对开发者熟悉PyTorch底层机制的要求较高;
      自定义OP或多分支结构易导致量化失败;
      缺乏自动化敏感层识别与量化策略推荐功能。
  • 训练后量化(PTQ):训练后量化,简单快速,但精度损失较大;

模型部署

  • 重点关注指标:mAP(精度)、FPS(延迟)、功耗(能效)

YOLO模型训练

1、数据集组织结构

dataset/
├── images/
│ ├── train/
│ └── val/
├── labels/
│ ├── train/
│ └── val/
└── data.yaml

2、数据集的划分

训练集和验证集的划分,一般将数据集的图片进行随机打乱,然后按照一定比例进行划分。
训练集的划分:80%,验证集的划分:10%,测试集的划分:10%

3、标注文件的转换

不能直接使用标注软件labelMe导出的 .Json 格式文件,需要先将其转换为 YOLO 格式的 .txt 文件。
== YOLO 格式的txt标注文件结构为:==
class_id x_center y_center width height
说明:
1. 每一行都是同一张图片里的一个目标
2. 类别 ID 从 0 开始连续编号
3. LabelMe标注文件中存在的是类型的名字,而YOLO标注格式存的是类别的编号,所以需要建立类别编号和类别名字的对应关系。
4. 中心点和宽高 需 归一化到 [0, 1](相对于图像宽高); x_center y_center 为目标框的中心点归一化后的坐标:

x_center=(left_top_x+right_bottom_x)/2/img_width y_center=(left_top_y+right_bottom_y)/2/img_height width=abs(right_bottom_x-left_top_x)/img_width height=abs(right_bottom_y-left_top_y)/img_height

4、训练数据的配置文件(train.yaml)

path: /home/mec/wxj/ultralytics/myTest/datasets train: train (相对于path的路径) val: val (相对于path的路径) test: test (相对于path的路径) names: 0: ambu # id 与label 之间必须加空格隔开 1: bigtru 2: bike
http://www.jsqmd.com/news/459471/

相关文章:

  • lora-scripts实战:基于50张图片训练古风水墨风格,生成效果详细评测
  • PyTorch 2.9保姆级教程:从零开始搭建GPU加速训练环境
  • Emotion2Vec+ Large输出目录管理:results文件归档自动化脚本
  • 多模态多目标带局部PF问题
  • Face Fusion能否部署在云服务器?远程访问可行性分析
  • GLM-TTS固定种子42?可复现性在生产中的应用
  • 自然语言处理与bert
  • 文墨共鸣惊艳效果展示:转述识别准确率92.7%的水墨风语义分析作品集
  • 指针基础知识总结
  • 为什么你始终看不懂JavaScript?
  • vue3:最新实现腾讯人脸核身+增强版人脸核身使用方法及示例源码,Vue3如何使用腾讯云慧眼人脸核身,提供人脸核身案例、身份信息核验、活体检测与核身比对等示例代码(后端spring与thinkphp)
  • Cursor 生死存亡:AI 编程痛点解决效率提升实战
  • LiuJuan Z-Image Generator实战案例:跨境电商独立站产品模特图生成SOP
  • Kdevelop使用步骤详解(Linux)
  • vue3:解决天地图api调用报403(Forbidden)错误,调用天地图服务出现403错误(或者部署到服务器后天地图API接口返回403详细排查和解决方法)彻底解决天地图403 Forbidden
  • Qwen3-0.6B-FP8详细步骤:Web界面主题定制+Logo替换与品牌化部署
  • 2026年知名的锦纶面料品牌推荐:coolmax面料/阳离子面料/石墨烯面料厂家最新推荐 - 行业平台推荐
  • 百川2-13B-4bits开源镜像部署案例:教育机构用作AI助教,支持学生编程答疑
  • (第二篇)Spring AI 实战进阶:从 0 搭建 SaaS 模式多租户 AI 客服平台(核心难点 + 性能优化全解析)
  • 部署完OpenClaw不能随时用!郁闷不?cpolar能解锁N种随身玩法!
  • [React Native for OpenHarmony] 将代码提交至AtomGit平台自建公开仓库用于分布式管理
  • PETRV2-BEV训练效果惊艳:BEV检测结果叠加原始环视图像的精准对齐展示
  • 【FacePoison+】Hiding Faces in Plain Sight: Defending DeepFakes by Disrupting Face Detection
  • Bidili Generator保姆级教程:解决SDXL显存高、LoRA不兼容痛点
  • ROS2(服务,launch,工具,仿真)
  • Comsol 探索光子晶体谷霍尔效应:从单胞、超胞到谷单向传输
  • GPEN推荐配置标准:8GB以上显存实现流畅批量处理
  • 重邮虚拟机环境配置(二)如何在本机和虚拟机之间的文件传输
  • Gemma-3-12B-IT入门指南:首次加载模型耗时优化与缓存机制说明
  • Gemma-3-12B-IT WebUI部署教程(含Supervisord管理):生产环境就绪