chore: remove obsolete NEW_PROJECT_PROMPT.md and update README
- 删除NEW_PROJECT_PROMPT.md(项目已初始化完成,不再需要) - 从README项目结构中移除已删除的convert_to_yolo.py - 将convert_to_yolo.py命令替换为analyze_temp_features.py - 更新FAQ中关于自定义数据集的说明
This commit is contained in:
@@ -1,106 +0,0 @@
|
|||||||
# 新项目初始化提示词
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 项目背景
|
|
||||||
|
|
||||||
这是一个从已有项目复制的新工作区。基础代码(src/, scripts/)已准备好,但需要适配新的YOLO格式数据集并重新训练模型。
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 任务清单
|
|
||||||
|
|
||||||
### 1. 环境验证
|
|
||||||
|
|
||||||
首先验证GPU环境是否正常:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
uv run python scripts/test_cuda.py
|
|
||||||
```
|
|
||||||
|
|
||||||
### 2. 准备新数据集
|
|
||||||
|
|
||||||
将你的YOLO格式数据集放入 `data/` 目录:
|
|
||||||
|
|
||||||
```
|
|
||||||
data/
|
|
||||||
└── 你的数据集/
|
|
||||||
├── dataset.yaml # 你的数据集配置
|
|
||||||
├── images/
|
|
||||||
│ ├── train/ # 训练图像
|
|
||||||
│ └── val/ # 验证图像
|
|
||||||
└── labels/
|
|
||||||
├── train/ # 训练标签
|
|
||||||
└── val/ # 验证标签
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. 更新数据集配置
|
|
||||||
|
|
||||||
编辑 `data/你的数据集/dataset.yaml`,确保类别名称和数量正确:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
path: /完整路径/2BaseOnYOLO_InfraredData/data/你的数据集
|
|
||||||
train: images/train
|
|
||||||
val: images/val
|
|
||||||
|
|
||||||
nc: 你的类别数量
|
|
||||||
names: ['类别1', '类别2', ...]
|
|
||||||
```
|
|
||||||
|
|
||||||
### 4. 更新项目文档
|
|
||||||
|
|
||||||
根据新数据集更新以下文件:
|
|
||||||
- `README.md` - 更新类别信息
|
|
||||||
- `PROGRESS.md` - 重置进度记录
|
|
||||||
|
|
||||||
### 5. 训练模型
|
|
||||||
|
|
||||||
```bash
|
|
||||||
uv run python scripts/train.py train \
|
|
||||||
--data data/你的数据集/dataset.yaml \
|
|
||||||
--model-size n \
|
|
||||||
--epochs 50 \
|
|
||||||
--device 0
|
|
||||||
```
|
|
||||||
|
|
||||||
### 6. 验证模型
|
|
||||||
|
|
||||||
```bash
|
|
||||||
uv run python scripts/train.py validate \
|
|
||||||
--model runs/detect/models/train/infrared_fault/weights/best.pt \
|
|
||||||
--data data/你的数据集/dataset.yaml
|
|
||||||
```
|
|
||||||
|
|
||||||
### 7. 提交代码
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git add -A
|
|
||||||
git commit -m "完成数据集适配和新模型训练"
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 注意事项
|
|
||||||
|
|
||||||
1. **数据集路径**: 确保dataset.yaml中的path是完整绝对路径
|
|
||||||
2. **类别数量**: 确保nc值与names列表长度一致
|
|
||||||
3. **标签格式**: YOLO格式为 `class_id x_center y_center width height`(归一化)
|
|
||||||
4. **训练时间**: 50 epochs大约需要5-10分钟(取决于GPU)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 常用命令参考
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 安装依赖
|
|
||||||
uv sync
|
|
||||||
|
|
||||||
# 训练
|
|
||||||
uv run python scripts/train.py train --data <yaml路径> --model-size n --epochs 50 --device 0
|
|
||||||
|
|
||||||
# 验证
|
|
||||||
uv run python scripts/train.py validate --model <模型路径> --data <yaml路径>
|
|
||||||
|
|
||||||
# 导出模型
|
|
||||||
uv run python scripts/train.py export --model <模型路径> --format onnx
|
|
||||||
```
|
|
||||||
@@ -31,7 +31,6 @@
|
|||||||
├── scripts/ # 工具脚本
|
├── scripts/ # 工具脚本
|
||||||
│ ├── train.py # 模型训练/验证入口
|
│ ├── train.py # 模型训练/验证入口
|
||||||
│ ├── test_cuda.py # CUDA环境测试
|
│ ├── test_cuda.py # CUDA环境测试
|
||||||
│ ├── convert_to_yolo.py # 数据集格式转换
|
|
||||||
│ ├── usage_example.py # 使用示例
|
│ ├── usage_example.py # 使用示例
|
||||||
│ └── analyze_temp_features.py # ROI温度特征分析
|
│ └── analyze_temp_features.py # ROI温度特征分析
|
||||||
├── data/ # 数据目录
|
├── data/ # 数据目录
|
||||||
@@ -420,12 +419,12 @@ uv run python scripts/retry_download.py \
|
|||||||
--wait 60
|
--wait 60
|
||||||
```
|
```
|
||||||
|
|
||||||
### 转换数据格式
|
### 分析ROI温度特征
|
||||||
```bash
|
```bash
|
||||||
uv run python scripts/convert_to_yolo.py \
|
uv run python scripts/analyze_temp_features.py \
|
||||||
--input-dir data/raw/images \
|
--model weights/best.pt \
|
||||||
--output-dir data/infrared \
|
--image-dir data/valid/images \
|
||||||
--whole-image
|
--device 0
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -540,9 +539,8 @@ A: 使用retry_download.py脚本,设置更长的等待时间 (--wait 120)
|
|||||||
|
|
||||||
### Q: 如何使用自己的数据集
|
### Q: 如何使用自己的数据集
|
||||||
A:
|
A:
|
||||||
1. 将图像按类别放入不同子目录
|
1. 将YOLO格式数据集放入data/目录
|
||||||
2. 运行convert_to_yolo.py转换格式
|
2. 更新dataset.yaml中的路径和类别名称
|
||||||
3. 更新dataset.yaml中的类别名称
|
|
||||||
|
|
||||||
### Q: 如何调整故障诊断阈值
|
### Q: 如何调整故障诊断阈值
|
||||||
A:
|
A:
|
||||||
|
|||||||
Reference in New Issue
Block a user