?目錄
?前言
設(shè)計(jì)思路
一、課題背景與意義
二、算法理論原理
2.1 自適應(yīng)空間特征融合模塊
2.2 Ghost 模塊
三、檢測(cè)的實(shí)現(xiàn)
3.1 數(shù)據(jù)集
3.2 實(shí)驗(yàn)環(huán)境搭建
3.3 實(shí)驗(yàn)及結(jié)果分析
實(shí)現(xiàn)效果圖樣例
最后
前言
? ? ? ???大四是整個(gè)大學(xué)期間最忙碌的時(shí)光,一邊要忙著備考或?qū)嵙?xí)為畢業(yè)后面臨的就業(yè)升學(xué)做準(zhǔn)備,一邊要為畢業(yè)設(shè)計(jì)耗費(fèi)大量精力。近幾年各個(gè)學(xué)校要求的畢設(shè)項(xiàng)目越來(lái)越難,有不少課題是研究生級(jí)別難度的,對(duì)本科同學(xué)來(lái)說(shuō)是充滿挑戰(zhàn)。為幫助大家順利通過(guò)和節(jié)省時(shí)間與精力投入到更重要的就業(yè)和考試中去,學(xué)長(zhǎng)分享優(yōu)質(zhì)的選題經(jīng)驗(yàn)和畢設(shè)項(xiàng)目與技術(shù)思路。
? ? ? ????對(duì)畢設(shè)有任何疑問(wèn)都可以問(wèn)學(xué)長(zhǎng)哦!
? ? ? ? ?選題指導(dǎo):
? ? ? ? 最新最全計(jì)算機(jī)專業(yè)畢設(shè)選題精選推薦匯總
? ? ? ??大家好,這里是海浪學(xué)長(zhǎng)畢設(shè)專題,本次分享的課題是
? ? ? ? ??基于深度學(xué)習(xí)的刨花板表面小目標(biāo)缺陷檢測(cè)系統(tǒng)
設(shè)計(jì)思路
一、課題背景與意義
? ? ? ?目前國(guó)內(nèi)刨花板表面缺陷檢測(cè)主要還是利用人工篩選的方式,存在較大主觀性和誤差性。同時(shí),由于檢測(cè)過(guò)程需要長(zhǎng)時(shí)間連續(xù)觀察運(yùn)行的板材,工人極易產(chǎn)生視覺(jué)疲勞,不僅會(huì)降低工作效率,還會(huì)導(dǎo)致工作安全方面存在一定風(fēng)險(xiǎn)。
二、算法理論原理
2.1 自適應(yīng)空間特征融合模塊
? ? ? ?我們提出了一種改進(jìn)的YOLOv5網(wǎng)絡(luò)架構(gòu),專為刨花板表面缺陷檢測(cè)而設(shè)計(jì)。通過(guò)融合ASFF模塊與原有檢測(cè)頭、引入Transformer結(jié)構(gòu)以及替換C3模塊為C3Ghostv2模塊,我們的網(wǎng)絡(luò)在保持高檢測(cè)精度的同時(shí),顯著減少了模型參數(shù)量和計(jì)算復(fù)雜度。通過(guò)融合ASFF(Adaptive Spatial Feature Fusion)模塊與原有的檢測(cè)頭,我們能夠更好地學(xué)習(xí)不同尺度特征層的信息。這樣可以提高網(wǎng)絡(luò)對(duì)刨花板表面缺陷的感知能力,從而提升檢測(cè)準(zhǔn)確性。這使得我們的網(wǎng)絡(luò)更適用于實(shí)時(shí)應(yīng)用場(chǎng)景,為刨花板表面缺陷的在線檢測(cè)提供了一種高效準(zhǔn)確的解決方案。
?
? ? ? ?對(duì)于YOLOv5s而言,通過(guò)Neck部分獲得了三種分辨率和通道數(shù)不同的特征層,記為F1、F2和F3,其分辨率分別為原始圖像的1/8、1/16和1/32,因此針對(duì)每個(gè)尺度的特征層,需要相應(yīng)采用上采樣或下采樣策略以及1×1卷積進(jìn)行調(diào)整。
?
2.2 Ghost 模塊
? ? ? ?在實(shí)際的刨花板工業(yè)流水線上,為了提高生產(chǎn)效益,算法模型需要具備一定的實(shí)時(shí)性。為了提高檢測(cè)精度,我們引入了ASFF和Transformer模塊,這些模塊能夠更好地學(xué)習(xí)不同尺度特征層的信息,但同時(shí)也增加了計(jì)算量。然而,我們采用了輕量化的Ghostv2模塊來(lái)替換原有的C3模塊,以提升模型的檢測(cè)速度。通過(guò)重新組織網(wǎng)絡(luò)結(jié)構(gòu),我們?cè)诒3州^高精度的同時(shí),實(shí)現(xiàn)了模型的輕量化,從而滿足了實(shí)時(shí)性要求,提高了生產(chǎn)效率。
?
? ? ? ?在實(shí)際的刨花板工業(yè)流水線上,為了提高生產(chǎn)效益,需要具備一定的實(shí)時(shí)性。為了提高檢測(cè)精度,引入了ASFF和Transformer模塊,但這可能增加計(jì)算量。為了輕量化模型并提升檢測(cè)速度,采用了Ghostv2模塊替換C3模塊。Ghostv2模塊利用解耦全連接注意力機(jī)制(DFC)提升捕捉長(zhǎng)距離空間信息的能力。這些改進(jìn)使得模型在保持精度的同時(shí)滿足實(shí)時(shí)性要求,提高生產(chǎn)效率。
?
相關(guān)代碼示例:
from torch.utils.data import DataLoader
from torchvision.transforms import transforms
from your_dataset_module import YourDataset
from your_model_module import ASFFModule, TransformerModule, Ghostv2Module
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
transform = transforms.Compose([
transforms.Resize((640, 640)),
transforms.ToTensor(),
])
train_dataset = YourDataset(train=True, transform=transform)
test_dataset = YourDataset(train=False, transform=transform)
三、檢測(cè)的實(shí)現(xiàn)
3.1 數(shù)據(jù)集
? ? ? ?刨花板表面缺陷數(shù)據(jù)集是從某刨花板廠的實(shí)際生產(chǎn)過(guò)程中獲取的。該數(shù)據(jù)集針對(duì)該廠出現(xiàn)的油污、粉塵斑、膠斑和刨花四類典型缺陷進(jìn)行了精心選取。由于實(shí)際刨花板面積較大,在預(yù)處理過(guò)程中,首先將其進(jìn)行灰度化處理,然后進(jìn)行分割,并用黑色填充非板面部分,以避免無(wú)關(guān)背景的干擾。最終,我們選取了710張圖像,每張圖像的尺寸為1024×2048像素。為了增加數(shù)據(jù)集的多樣性和數(shù)量,我們使用LabelImg軟件對(duì)缺陷目標(biāo)進(jìn)行了標(biāo)注,并通過(guò)上下和左右翻轉(zhuǎn)、亮度調(diào)整以及增加高斯噪聲等方法對(duì)圖像進(jìn)行了擴(kuò)充。
?
? ? ? ?相對(duì)于訓(xùn)練集中的1024×2048像素圖像,粉塵斑、刨花和膠斑等缺陷的尺寸都較小,尤其是膠斑類缺陷的大小不超過(guò)40×50像素,屬于典型的小目標(biāo)。這些小目標(biāo)在圖像中的尺寸較小,因此在訓(xùn)練過(guò)程中需要特別注意對(duì)小目標(biāo)的檢測(cè)和識(shí)別。油污類缺陷的尺度跨度較大,并且當(dāng)它們與其他類型的缺陷同時(shí)出現(xiàn)時(shí),可能會(huì)產(chǎn)生一定的干擾。這意味著在模型訓(xùn)練和測(cè)試過(guò)程中,需要注意處理不同尺度的缺陷,并考慮它們之間的相互影響。
?
3.2 實(shí)驗(yàn)環(huán)境搭建
? ? ? ?實(shí)驗(yàn)電腦處理器為Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz,GPU為NVIDIA RTX A4000,主機(jī)內(nèi)存256GB,編程語(yǔ)言為Python3.6,基于深度學(xué)習(xí)框架Pytorch1.10.2進(jìn)行訓(xùn)練。網(wǎng)絡(luò)訓(xùn)練時(shí),設(shè)置batch size為16,workers設(shè)置為8,epoch為100,訓(xùn)練時(shí)輸入圖像大小為640×640,初始學(xué)習(xí)率為0.01。? ? ? ?
3.3 實(shí)驗(yàn)及結(jié)果分析
? ? ? ?算法采用ASFF模塊和Transformer模塊進(jìn)行精度方面的改良,同時(shí)采用Ghostv2模塊進(jìn)行精度和速度的綜合考慮,精度提升了2.1%、召回率提升了7%,mAP提升了4.6%。針對(duì)獲得的刨花板表面缺陷數(shù)據(jù)集,各類缺陷檢測(cè)效果的P-R曲線,如下所示。
?
? ? ? ?能夠提升通類易檢測(cè)目標(biāo)的檢測(cè)效果,針對(duì)存在復(fù)雜尺度變化缺陷干擾下的小目標(biāo)缺陷,相對(duì)于原算法能夠較大幅度提升檢測(cè)效果。由于采用了Transformer模塊和Ghostv2模塊,無(wú)論是多頭自注意力機(jī)制還是DFC注意力機(jī)制,所含的長(zhǎng)距離注意力機(jī)制彌補(bǔ)了卷積操作時(shí)窗口大小的局限性,增強(qiáng)了算法捕捉全局信息的能力,與大面積油污一同出現(xiàn)的某些小尺寸油污被誤檢為膠斑的問(wèn)題基本能夠得到很好的解決。
?
? ? ? ?檢測(cè)結(jié)果中,小目標(biāo)漏檢、復(fù)雜背景干擾下的誤檢和檢測(cè)置信度低等情況均得到不同程度的改善。ASFF模塊針對(duì)數(shù)據(jù)集中多尺度特征的沖突抑制、融合權(quán)重學(xué)習(xí),檢測(cè)效果更好,能夠有效地提升多尺度下小目標(biāo)檢測(cè)的準(zhǔn)確性。在綜合考慮增強(qiáng)網(wǎng)絡(luò)小目標(biāo)特征提取能力和優(yōu)化多尺度融合后,mAP@0.5提升13.8%,證明了本研究改進(jìn)算法的有效性。
相關(guān)代碼示例:
# 訓(xùn)練模型
for epoch in range(100):
model.train()
for images, labels in train_loader:
images = images.to(device)
labels = labels.to(device)
optimizer.zero_grad()
outputs = model(images)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
# 在測(cè)試集上評(píng)估模型
model.eval()
test_loss = 0
correct = 0
with torch.no_grad():
for images, labels in test_loader:
images = images.to(device)
labels = labels.to(device)
outputs = model(images)
test_loss += criterion(outputs, labels).item()
_, predicted = outputs.max(1)
correct += predicted.eq(labels).sum().item()
實(shí)現(xiàn)效果圖樣例
創(chuàng)作不易,歡迎點(diǎn)贊、關(guān)注、收藏。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-794940.html
畢設(shè)幫助,疑難解答,歡迎打擾!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-794940.html
最后
到了這里,關(guān)于畢業(yè)設(shè)計(jì)-計(jì)算機(jī)視覺(jué):刨花板表面小目標(biāo)缺陷檢測(cè)系統(tǒng) 人工智能 算法 python的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!