验证部分val.py这个文件主要是train.py每轮训练结束后,用val.py去验证当前模型的mAP、混滑矩阵等指标,以及各个超参数是否是最佳,不是最佳的话修改train.py里面的结构:确定是最佳了再用detect.py去泛化使用。
train.py:模型的“教练”,负责学习数据规律。
val.py:模型的“考官”,确保学习方向正确。
detect.py:模型的“实战测试”,验证其解决实际问题的能力。
一、导包和基本配置
1、导入安装好的python库
####### 基础系统与配置模块
import argparse # 命令行参数解析器,用于解析训练/推理时输入参数(如–weights, --batch-size)
import json # JSON编解码工具,用于读写模型配置、标签映射表等结构化数据文件
import os # 操作系统接口,处理文件路径、环境变量(如获取GPU数量、创建日志目录)
import sys # 解释器交互工具,用于程序退出、命令行参数读取(sys.argv)等系统级操作
####### 路径与并行处理模块
from pathlib import Path # 现代化路径操作库,替代os.path,支持链式调用
from threading import Thread # 线程管理,用于异步任务(如实时打印日志、数据加载与训练并行执行)
####### 数值计算与深度学习框架
import numpy as np # 多维数组运算库,用于图像预处理(归一化)、指标计算(mAP, IoU)
import