金属腐蚀检测模型服务yolov8已训练好640*640支持onnx格式rk3588等板卡都可以带txt标签集。可提供检测代码111金属腐蚀检测模型服务YOLOv8 640×640使用说明 代码一、项目简介本项目提供已训练好的YOLOv8金属腐蚀检测模型输入分辨率 640×640支持 ONNX 格式可直接部署到 RK3588 等嵌入式板卡也可在PC端运行。支持检测类别general_corrosion全面腐蚀、crevice_corrosion缝隙腐蚀、pitting_corrosion点蚀附带完整的txt标签数据集与检测代码开箱即用。二、文件清单下单后将收到以下文件文件/文件夹说明yolov8_corrosion.ptPyTorch 格式模型权重训练用/PC端直接推理yolov8_corrosion.onnxONNX 格式模型支持RK3588等板卡部署corrosion_dataset/标注数据集含 images/ labels/YOLO txt 格式detect_corrosion.pyPython 检测代码PC端/板卡通用corrosion_classes.txt类别名称文件三、PC端使用步骤Python版1. 环境准备# 安装依赖pipinstallultralytics opencv-python numpy2. 单张图片检测代码fromultralyticsimportYOLOimportcv2# 1. 加载模型modelYOLO(yolov8_corrosion.pt)# 2. 读取图片img_pathtest_corrosion.jpgimgcv2.imread(img_path)# 3. 推理检测resultsmodel(img,conf0.25)# conf置信度阈值可按需调整# 4. 绘制检测框并保存forresultinresults:imgresult.plot()# 自动绘制框、类别、置信度# 5. 显示并保存结果cv2.imwrite(corrosion_result.jpg,img)cv2.imshow(Corrosion Detection,img)cv2.waitKey(0)cv2.destroyAllWindows()3. 视频/摄像头实时检测代码fromultralyticsimportYOLOimportcv2 modelYOLO(yolov8_corrosion.pt)# 0本地摄像头也可替换为视频文件路径capcv2.VideoCapture(0)whilecap.isOpened():ret,framecap.read()ifnotret:break# 推理resultsmodel(frame,conf0.25)frameresults[0].plot()cv2.imshow(Real-time Corrosion Detection,frame)ifcv2.waitKey(1)0xFFord(q):breakcap.release()cv2.destroyAllWindows()四、RK3588板卡部署ONNX模型1. 模型转换可选已提供转换好的yolov8_corrosion.onnx# 从pt转onnx若需自行转换yoloexportmodelyolov8_corrosion.ptformatonnximgsz6402. RKNN模型转换RK3588专用# 安装rknn-toolkit2后执行from rknn.apiimportRKNN rknnRKNN()rknn.config(mean_values[[0,0,0]],std_values[[255,255,255]])rknn.load_onnx(yolov8_corrosion.onnx)rknn.build(do_quantizationFalse)rknn.export_rknn(yolov8_corrosion.rknn)3. RK3588端检测代码Pythonfromrknn.apiimportRKNNimportcv2importnumpyasnp# 加载RKNN模型rknnRKNN()rknn.load_rknn(yolov8_corrosion.rknn)rknn.init_runtime()# 类别列表classes[general_corrosion,crevice_corrosion,pitting_corrosion]defdetect_corrosion_rknn(img_path):imgcv2.imread(img_path)img_resizedcv2.resize(img,(640,640))img_npnp.expand_dims(img_resized,axis0)# 推理outputsrknn.inference(inputs[img_np])# 后处理可使用YOLOv8后处理脚本解析outputsreturnimg# 运行检测result_imgdetect_corrosion_rknn(test.jpg)cv2.imwrite(rknn_result.jpg,result_img)五、数据集与标签说明数据集采用标准YOLO格式结构如下corrosion_dataset/ ├── images/ │ ├── img_001.jpg │ └── img_002.jpg └── labels/ ├── img_001.txt └── img_002.txt标签文件格式class_id x_center y_center width height归一化坐标类别对应0→general_corrosion1→crevice_corrosion2→pitting_corrosion六、关键使用说明输入要求模型默认输入尺寸为 640×640推理时会自动resize也可提前预处理统一尺寸。置信度调整conf参数可根据场景调整0.2-0.5低置信度可检出更多目标高置信度可减少误检。嵌入式部署RK3588部署需先将ONNX模型转为RKNN格式可使用官方rknn-toolkit完成。扩展训练可基于提供的数据集使用YOLOv8官方脚本继续微调训练提升特定场景精度。