??💡💡💡本文主要內容:詳細介紹道路裂縫檢測整個過程,從數據集到訓練模型到結果可視化分析。
??💡💡💡通過加入一種基于內容引導注意力(CGA)的混合融合提升檢測性能,
特征融合創新 | 一種基于內容引導注意力(CGA)的混合融合 | IEEE TIP 2024 浙大?
map從原始的0.952提升至0.977
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?博主簡介
AI小怪獸,YOLO骨灰級玩家,1)YOLOv5、v7、v8優化創新,輕松漲點和模型輕量化;2)目標檢測、語義分割、OCR、分類等技術孵化,賦能智能制造,工業項目落地經驗豐富;
原創自研系列,?2024年計算機視覺頂會創新點
《YOLOv8原創自研》
《YOLOv5原創自研》
《YOLOv7原創自研》
23年最火系列,內涵80+優化改進篇,漲點小能手,助力科研,好評率極高
《YOLOv8魔術師》
?《YOLOv7魔術師》
《YOLOv5/YOLOv7魔術師》
《RT-DETR魔術師》
應用系列篇:
《YOLO小目標檢測》
《深度學習工業缺陷檢測》
《YOLOv8-Pose關鍵點檢測》
1.道路裂縫檢測
傳統的路面裂縫檢測識別方法主要是依靠人工 進行檢測,但人工檢測工作效率低,作業風險系數 大,且容易受主觀因素影響。由于近年來計算機視 覺和圖像檢測、目標識別技術的快速發展,研究者通 過人工選取裂縫特征,實現對路面裂縫的自動檢測。 但人工選取特征具有很強的主觀性,在特征選擇上 的優劣決定了路面裂縫檢測的性能。
1.1 數據集介紹?
數據集大小390張,類別["crack"]?
?
細節圖:?
2.基于YOLOv5的手機頂蓋焊缺陷檢測
2.1 修改crack.yaml
train: ./data/crack/train.txt
val: ./data/crack/val.txt# number of classes
nc: 1# class names
names: ["crack"]
2.2 修改train.py?
def parse_opt(known=False):parser = argparse.ArgumentParser()parser.add_argument("--weights", type=str, default=ROOT / "weights/yolov5s.pt", help="initial weights path")parser.add_argument("--cfg", type=str, default="models/yolov9/yolov5s.yaml", help="model.yaml path")parser.add_argument("--data", type=str, default=ROOT / "data/crack.yaml", help="dataset.yaml path")parser.add_argument("--hyp", type=str, default=ROOT / "data/hyps/hyp.scratch-high.yaml", help="hyperparameters path")parser.add_argument("--epochs", type=int, default=100, help="total training epochs")parser.add_argument("--batch-size", type=int, default=16, help="total batch size for all GPUs, -1 for autobatch")parser.add_argument("--imgsz", "--img", "--img-size", type=int, default=640, help="train, val image size (pixels)")parser.add_argument("--rect", action="store_true", help="rectangular training")parser.add_argument("--resume", nargs="?", const=True, default=False, help="resume most recent training")parser.add_argument("--nosave", action="store_true", help="only save final checkpoint")parser.add_argument("--noval", action="store_true", help="only validate final epoch")parser.add_argument("--noautoanchor", action="store_true", help="disable AutoAnchor")parser.add_argument("--noplots", action="store_true", help="save no plot files")parser.add_argument("--evolve", type=int, nargs="?", const=300, help="evolve hyperparameters for x generations")parser.add_argument("--evolve_population", type=str, default=ROOT / "data/hyps", help="location for loading population")
?2.3 結果可視化分析?
PR_curve.png
PR曲線中的P代表的是precision(精準率),R代表的是recall(召回率),其代表的是精準率與召回率的關系,一般情況下,將recall設置為橫坐標,precision設置為縱坐標。PR曲線下圍成的面積即AP,所有類別AP平均值即Map
3.加入一種基于內容引導注意力(CGA)的混合融合
特征融合創新 | 一種基于內容引導注意力(CGA)的混合融合 | IEEE TIP 2024 浙大
原文鏈接:YOLOv5獨家原創改進: 特征融合創新 | 一種基于內容引導注意力(CGA)的混合融合 | IEEE TIP 2024 浙大-CSDN博客
我們提出了一種新的注意力機制,即內容引導注意力(CGA),以一種從粗到精的方式生成特定頻道的SIMs。CGA通過輸入特征引導SIM的生成,為每個通道分配唯一的SIM,使模型參加每個通道的重要區域。因此,可以強調特征中編碼的更多有用信息,從而有效地提高性能。此外,提出了一種基于cgaba的混合融合方案,將編碼器部分的低級特征與相應的高級特征有效融合。
map從原始的0.952提升至0.977
?
關注下方名片,即可獲取源碼。?