# 无人机检测 ONNX 模型推理工具 ## 项目概述 基于ONNX Runtime的无人机目标检测解决方案,支持: - GPU加速推理(需CUDA环境) - 自适应图像预处理流水线(CPU/GPU双模式) - 误报过滤机制(ORB特征匹配) - 多格式检测报告生成(CSV/Excel) ## 项目结构 ``` Model/ ├── src/ # 源代码目录 │ ├── core/ # 核心功能模块 │ ├── utils/ # 工具函数 │ └── analysis/ # 分析工具 ├── configs/ # 配置文件目录 ├── data/ # 数据目录 │ ├── false_positive/ # 误报样本 │ └── models/ # 模型文件 ├── tests/ # 测试目录 ├── outputs/ # 输出目录 └── docs/ # 文档目录 ``` ## 环境要求 - Python 3.8+ - 依赖库: ```bash pip install -r requirements.txt ``` ## 快速开始 ```python # 单张图片检测 python src/core/inference.py --input test.jpg --threshold 0.5 \ --output results --report excel # 批量检测目录 python src/core/inference.py --input UAV/ --max-bbox-ratio 0.1 \ --output batch_results --report all ``` ## 参数说明 | 参数 | 类型 | 默认值 | 说明 | |------|------|-------|-----| | --input | path | 必填 | 输入图像路径/目录 | | --threshold | float | 0.45 | 检测置信度阈值 | | --max-bbox-ratio | float | 0.05 | 最大检测框面积比例 | | --output | path | 自动生成 | 输出目录(自动创建) | | --report | [csv/excel/all] | excel | 报告格式 | | --save-empty | flag | False | 保存无检测结果的图像 | ## 结果输出 输出目录包含: - `目标截图/`:检测到的无人机目标截图 - `检测报告.xlsx`:包含检测时间、置信度、坐标等详细信息 - 带检测框的标注图像 ## 模型管理 模型版本通过文件名自动识别(如:UAV-250321.onnx 版本号为250321) ## 常见问题 Q: 如何启用GPU加速? A: 确保安装onnxruntime-gpu并配置CUDA环境,程序会自动优先使用GPU Q: 误报特征库如何更新? A: 将误报样本放入data/false_positive目录,程序启动时会自动加载 ## 开发指南 1. 代码规范 - 遵循PEP 8编码规范 - 使用类型注解 - 编写单元测试 2. 测试 ```bash # 运行测试 pytest tests/ # 生成测试覆盖率报告 pytest --cov=src tests/ ``` 3. 文档 - 使用Google风格文档字符串 - 保持README.md更新 - 重要功能添加使用示例