基于 SegmentationDemo 的图形界面版本,提供友好的用户界面进行工业检测分割任务。
- 图形界面操作:提供直观的 WPF 图形界面,无需命令行操作
- 单文件/批量处理:支持单张图片检测和批量图片处理
- 参数可调:可实时调整 Confidence、Pixel Confidence 和 IoU 参数
- 实时预览:处理结果实时显示在界面上
- 统计信息:显示总处理数、NG(检测到目标)和 OK(未检测到目标)数量
- 进度显示:批量处理时显示处理进度
- 日志输出:详细的操作日志记录
- 选择模型文件:点击"浏览..."按钮选择 ONNX 模型文件(如 sd900.onnx)
- 选择图片:
- 单文件模式:选择单张图片文件
- 批量处理模式:选择包含图片的目录
- 选择输出目录:选择结果保存的目录(默认为桌面上的 Industry_Results 文件夹)
- 调整参数(可选):
- Confidence:检测置信度阈值(默认 0.24)
- Pixel Confidence:像素置信度阈值(默认 0.5)
- IoU:交并比阈值(默认 0.7)
- 开始检测:点击"开始检测"按钮开始处理
- 查看结果:处理完成后,结果会显示在预览区域,并保存到输出目录
- NG:检测到目标,表示可能存在缺陷或异常
- OK:未检测到目标,表示正常
结果文件名格式:原文件名_NG.png 或 原文件名_OK.png
- .NET 8.0
- WPF (Windows Presentation Foundation)
- SkiaSharp (图像处理和显示)
- YoloDotNet (YOLO 模型推理)
IndustrySegmentationDemo/
├── App.xaml # 应用程序定义
├── App.xaml.cs # 应用程序代码
├── MainWindow.xaml # 主窗口界面
├── MainWindow.xaml.cs # 主窗口逻辑
├── AssemblyInfo.cs # 程序集信息
└── IndustrySegmentationDemo.csproj # 项目文件
- YoloDotNet
- YoloDotNet.ExecutionProvider.Cpu
- SkiaSharp.Views.WPF
- System.Windows.Forms
- 首次运行时会自动查找项目根目录下的默认模型和测试图片
- 批量处理时,处理结果会实时更新显示
- 可以随时点击"停止检测"按钮取消正在进行的处理
- 处理大量图片时,建议使用 GPU 加速(需要修改代码使用 CudaExecutionProvider)