系統(tǒng)開(kāi)發(fā)日志(Day 3):界面功能打磨 + 實(shí)驗(yàn)數(shù)據(jù)落地 + 消融實(shí)驗(yàn)啟動(dòng))
今日概覽休整一天后回歸項(xiàng)目補(bǔ)完了原定的全部開(kāi)發(fā)任務(wù)。今天的核心是把項(xiàng)目從「能用」打磨到「好用且能寫(xiě)進(jìn)論文」踩坑修復(fù)了多版本 YOLOv5 兼容問(wèn)題跑通了帶參數(shù)調(diào)節(jié)的優(yōu)化版可視化界面提取了完整的驗(yàn)證集精度指標(biāo)并整理成標(biāo)準(zhǔn)論文化素材同時(shí)啟動(dòng)了第一組消融對(duì)比實(shí)驗(yàn)為提升論文深度打下基礎(chǔ)。一、界面優(yōu)化攻堅(jiān)多版本兼容踩坑全記錄針對(duì)基礎(chǔ)版界面功能單一、兼容性差的問(wèn)題迭代開(kāi)發(fā)了第二版可視化檢測(cè)系統(tǒng)新增置信度閾值調(diào)節(jié)、結(jié)果圖一鍵保存等實(shí)用功能過(guò)程中踩了多個(gè) YOLOv5 版本兼容的經(jīng)典坑全部修復(fù)完畢。踩坑修復(fù)清單表格報(bào)錯(cuò)信息核心原因最終解決方案IndentationError 縮進(jìn)錯(cuò)誤復(fù)制代碼時(shí)空格與 Tab 混用層級(jí)錯(cuò)亂全量替換規(guī)范縮進(jìn)的完整代碼避免手動(dòng)調(diào)整cannot import name scale_coords本地 YOLOv5 版本函數(shù)名變更接口不兼容自實(shí)現(xiàn)坐標(biāo)縮放函數(shù)scale_boxes徹底脫離官方內(nèi)部依賴(lài)str object has no attribute type預(yù)熱函數(shù)要求 device 為 torch 對(duì)象而非字符串移除模型預(yù)熱邏輯改用torch.device()統(tǒng)一設(shè)備對(duì)象ModuleNotFoundError: No module named utils.general相對(duì)路徑導(dǎo)入不穩(wěn)定環(huán)境變量加載失敗使用絕對(duì)路徑寫(xiě)死 YOLOv5 源碼目錄導(dǎo)入時(shí)優(yōu)先插入 sys.path運(yùn)行后無(wú)界面彈窗直接輸出檢測(cè)結(jié)果檢測(cè)類(lèi)文件末尾測(cè)試代碼縮進(jìn)錯(cuò)亂導(dǎo)入時(shí)自動(dòng)執(zhí)行并退出徹底移除檢測(cè)類(lèi)中的測(cè)試代碼僅保留純類(lèi)定義界面文件獨(dú)立啟動(dòng) Qt 事件循環(huán)最終界面功能優(yōu)化后的界面采用分區(qū)布局操作控制、參數(shù)調(diào)節(jié)、結(jié)果展示清晰分離操作控制區(qū)支持選圖、檢測(cè)、保存結(jié)果圖全流程交互置信度滑塊0.05-0.95 區(qū)間無(wú)級(jí)調(diào)節(jié)實(shí)時(shí)調(diào)整檢測(cè)靈敏度無(wú)需重啟程序結(jié)果詳情區(qū)結(jié)構(gòu)化輸出缺陷類(lèi)別、置信度附帶異常捕獲機(jī)制不再無(wú)故閃退實(shí)測(cè)驗(yàn)證選擇裂紋、劃痕等不同類(lèi)型缺陷圖均可正常輸出帶標(biāo)注的檢測(cè)結(jié)果拖動(dòng)閾值可直觀看到檢出數(shù)量的變化整套交互閉環(huán)流暢可用。二、實(shí)驗(yàn)數(shù)據(jù)落地提取完整精度指標(biāo)產(chǎn)出論文素材運(yùn)行官方驗(yàn)證腳本完成了驗(yàn)證集全量評(píng)估拿到了可直接寫(xiě)入論文的量化數(shù)據(jù)完成了實(shí)驗(yàn)素材的核心整理。整體性能指標(biāo)模型整體 mAP0.5 達(dá)到 75.6%精確率 67.1%召回率 71.3%對(duì)于 YOLOv5-nano 輕量化模型而言滿(mǎn)足工業(yè)表面缺陷檢測(cè)的基礎(chǔ)精度要求。分類(lèi)別性能分析不同缺陷類(lèi)別檢測(cè)效果差異明顯第一梯隊(duì)優(yōu)秀劃痕scratches、斑塊patchesmAP0.5 均超 93%。這類(lèi)缺陷形態(tài)清晰、對(duì)比度高特征易于學(xué)習(xí)。第二梯隊(duì)良好麻點(diǎn)表面、夾雜物、氧化鐵皮壓入指標(biāo)處于中等水平滿(mǎn)足基本檢測(cè)需求。第三梯隊(duì)待優(yōu)化裂紋crazing召回率僅 23.6%。原因是裂紋多為細(xì)碎低對(duì)比度紋理特征辨識(shí)度弱容易漏檢是后續(xù)優(yōu)化的重點(diǎn)方向。產(chǎn)出成果整理完成了兩份標(biāo)準(zhǔn)化實(shí)驗(yàn)結(jié)果表格以及配套的論文化分析表述連同訓(xùn)練曲線、PR 曲線、檢測(cè)樣例圖一并歸檔為論文素材后續(xù)寫(xiě)論文可直接復(fù)用。三、消融實(shí)驗(yàn)啟動(dòng)輕量化模型對(duì)比實(shí)驗(yàn)為提升論文深度和工作量啟動(dòng)了第一組消融對(duì)比實(shí)驗(yàn)YOLOv5-nano 與 YOLOv5s 性能對(duì)比實(shí)驗(yàn)。 實(shí)驗(yàn)控制單一變量?jī)H更換模型骨干網(wǎng)絡(luò)數(shù)據(jù)集、訓(xùn)練輪次、輸入尺寸、優(yōu)化器等參數(shù)完全一致最終將從「精度、推理速度、模型體積」三個(gè)維度做對(duì)比分析輕量化模型的工業(yè)落地性?xún)r(jià)比。遇到的小插曲訓(xùn)練啟動(dòng)后卡在預(yù)訓(xùn)練權(quán)重下載階段由于 GitHub 服務(wù)器在國(guó)內(nèi)訪問(wèn)限速自動(dòng)下載速度極慢。屬于環(huán)境網(wǎng)絡(luò)問(wèn)題后續(xù)可通過(guò)手動(dòng)放置權(quán)重文件解決不影響實(shí)驗(yàn)本身的設(shè)計(jì)邏輯。今日成果清單? 完成可視化界面功能優(yōu)化新增置信度調(diào)節(jié)、結(jié)果保存等功能 ? 修復(fù)所有 YOLOv5 版本兼容問(wèn)題界面程序穩(wěn)定運(yùn)行 ? 完成驗(yàn)證集精度評(píng)估提取整體 分品類(lèi)完整指標(biāo) ? 整理出標(biāo)準(zhǔn)論文化的實(shí)驗(yàn)表格與分析文字歸檔論文素材 ? 啟動(dòng)消融對(duì)比實(shí)驗(yàn)完成實(shí)驗(yàn)方案設(shè)計(jì)與訓(xùn)練部署