目錄
前言
課題背景和意義
實(shí)現(xiàn)技術(shù)思路
一、基于深度學(xué)習(xí)的海洋生物目標(biāo)檢測研究主題
二、水下圖像處理算法的研究
2.1Retinex算法
2.2直方圖均衡化算法
2.3暗通道去霧算法
三、基于深度學(xué)習(xí)的目標(biāo)檢測算法
海洋生物目標(biāo)檢測實(shí)現(xiàn)效果
最后
前言
? ? ? ???大四是整個大學(xué)期間最忙碌的時光,一邊要忙著備考或?qū)嵙?xí)為畢業(yè)后面臨的就業(yè)升學(xué)做準(zhǔn)備,一邊要為畢業(yè)設(shè)計(jì)耗費(fèi)大量精力。近幾年各個學(xué)校要求的畢設(shè)項(xiàng)目越來越難,有不少課題是研究生級別難度的,對本科同學(xué)來說是充滿挑戰(zhàn)。為幫助大家順利通過和節(jié)省時間與精力投入到更重要的就業(yè)和考試中去,學(xué)長分享優(yōu)質(zhì)的選題經(jīng)驗(yàn)和畢設(shè)項(xiàng)目與技術(shù)思路。
? ? ? ????對畢設(shè)有任何疑問都可以問學(xué)長哦!
選題指導(dǎo):
最新最全計(jì)算機(jī)專業(yè)畢設(shè)選題精選推薦匯總
課題背景和意義
? ? ? ?近年來,海洋目標(biāo)檢測技術(shù)已經(jīng)廣泛應(yīng)用于海產(chǎn)品捕撈、海洋生態(tài)系統(tǒng)健康評估和海洋生物多樣性檢測等領(lǐng)域。海洋目標(biāo)檢測相對困難,因?yàn)樽匀还庠谒聜鞑サ倪^程中會被水中的懸浮微粒散射和被水吸收,導(dǎo)致人類所獲取的水下圖像清晰度較低。
實(shí)現(xiàn)技術(shù)思路
一、基于深度學(xué)習(xí)的海洋生物目標(biāo)檢測研究主題
? ? ? ?我們以提升海洋生物目標(biāo)檢測效率為目的,對水下圖像和海洋生物檢測網(wǎng)絡(luò)兩部分展開研究。首先系統(tǒng)研究了海洋生物目標(biāo)檢測網(wǎng)絡(luò)的預(yù)處理部分,提出了一種適用于水下圖像的基于多尺度Retinex的圖像增強(qiáng)算法,有效地解決了水下圖像藍(lán)綠色色偏等問題,并且針對YOLOv5s網(wǎng)絡(luò)模型尺寸大、訓(xùn)練速度慢等問題,設(shè)計(jì)了一種基于注意力機(jī)制的輕量化網(wǎng)絡(luò),該網(wǎng)絡(luò)不僅能夠降低模型的大小,還能保證較高的檢測精度。??
二、水下圖像處理算法的研究
2.1Retinex算法
Retinex理論是由視網(wǎng)膜Retina和大腦皮層Cortex所組成。該理論世界本身都是無色的,能看到多彩世界的原因是每個物體都被光源所照射,由物體本身反射到人眼形成圖像。物體反射的顏色與光的波長有密切聯(lián)系,每一個顏色都由紅綠藍(lán)三原色所組成。在SSR算法中,可調(diào)參數(shù)有限,只有通過調(diào)節(jié)優(yōu)化算法中的參數(shù)σ來改變圖像增強(qiáng)的程度。σ過大時,增強(qiáng)后圖像的色彩較為鮮艷,保真度較好,目標(biāo)細(xì)節(jié)較為模糊;σ過小時,增強(qiáng)后的圖像目標(biāo)細(xì)節(jié)保持的較好,但是保真度較差,如下圖所示??梢钥吹剑琒SR算法很難使色彩保真度和細(xì)節(jié)清晰度同時存在,存在一定缺陷。
2.2直方圖均衡化算法
? ? ? ?直方圖均衡化(HistogramEqualization,HE)算法在圖像增強(qiáng)算法中十分常見,它是將水下圖像通過非線性拉伸使得像素值均勻分布,以達(dá)到水下圖像對比度增強(qiáng)的效果。HE算法所采取的方法是對圖像全局對比度進(jìn)行調(diào)整來提升對比度,但未考慮圖像局部對比度,所以對于一些線條類圖像的增強(qiáng)效果較差。經(jīng)過AHE算法增強(qiáng)后的圖像局部對比度有所提升,但是圖像局部對比度過度提升,以及放大圖像中的噪聲信息等問題。針對AHE算法過度放大噪聲信息的缺點(diǎn),提出一種對比度受限的自適應(yīng)直方圖均衡化算法(CLAHE)。經(jīng)過CLAHE算法增強(qiáng)后的水下圖像直方圖分布較為均勻,并且沒有局部曝光。
2.3暗通道去霧算法
? ? ? ? 在自然場景中,當(dāng)存在霧霾、煙霧或霧氣等大氣散射物質(zhì)時,圖像會受到散射和吸收的影響變得模糊不清,細(xì)節(jié)丟失,對比度降低。暗通道去霧算法旨在通過分析圖像中的暗通道來恢復(fù)原始場景的清晰度和對比度。但是該算法在處理例如高對比度圖像或存在大面積均勻霧霾的圖像存在很大的局限性。
? ? ? ? 非物理模型(直方圖均衡化)的圖像增強(qiáng)算法是通過對圖像中的像素點(diǎn)進(jìn)行處理從而達(dá)到增強(qiáng)的目的;物理模型(Retinex算法、暗通道去霧)的圖像增強(qiáng)算法是利用水下圖像成像模型反演出水下圖像的衰退過程,從而可以獲得未衰退的水下圖像?;谖锢砟P偷膱D像增強(qiáng)算法適用性較高。
圖像處理部分代碼如下所示:
三、基于深度學(xué)習(xí)的目標(biāo)檢測算法
YOLOv5介紹
? ? ? ?在一個深度學(xué)習(xí)網(wǎng)絡(luò)中,通常包含不同的卷積模塊、池化層以及激活函數(shù)等對水下圖像中不同的語義信息進(jìn)行學(xué)習(xí)和特征提取,YOLOv5網(wǎng)絡(luò)在進(jìn)行特征提取時會生成多個尺度的網(wǎng)絡(luò)來預(yù)測不同尺寸的大中小目標(biāo)。通過對數(shù)據(jù)集進(jìn)行圖像增強(qiáng)和優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)來達(dá)到實(shí)時檢測海洋生物的目的。
1、輸入端
? ? ? YOLOv5的輸入端采用了Mosaic數(shù)據(jù)增強(qiáng)算法。該算法借鑒2019年的CutMix數(shù)據(jù)增強(qiáng)算法,與CutMix不同的是,Mosaic使用四張圖像,而CutMix只使用了兩張圖像,并對這些圖像隨機(jī)縮放、裁剪、排布,拼接成一副新圖像。
2、Backbone
? ? ? ?Backbone指的是負(fù)責(zé)進(jìn)行特征提取的主干特征提取網(wǎng)絡(luò),并傳給后續(xù)網(wǎng)絡(luò) 進(jìn)行分類和定位目標(biāo)位置,YOLOv5使用CSPDarknet作為Backbone,它的主要 構(gòu)成是Focus結(jié)構(gòu)和CSP結(jié)構(gòu)。? ? ? ??
? ? ? YOLOv5網(wǎng)絡(luò)選取CSPDarknet作為Backbone,對輸入圖像的特征信息進(jìn)行特征提取,解決了由于梯度信息重復(fù)導(dǎo)致的計(jì)算復(fù)雜度增大的問題,通過Focus結(jié)構(gòu)和CSP結(jié)構(gòu)的組合將梯度信息集中到了特征中,不僅減少了網(wǎng)絡(luò)參數(shù)量,還保證了檢測精度。部分代碼如下所示:
import torch
import torchvision.models as models
# 加載YOLOv5模型
def load_yolov5_model():
model = torch.hub.load('ultralytics/yolov5', 'custom', path='yolov5_weights.pt')
return model
# 特征提取函數(shù)
def extract_features(image, model):
# 圖像預(yù)處理
# 在此處添加圖像預(yù)處理代碼,例如調(diào)整大小、歸一化等
# 特征提取
features = model(image)
# 獲取特征張量
feature_tensor = features.tensor
return feature_tensor
# 加載YOLOv5模型
yolov5_model = load_yolov5_model()
# 加載輸入圖像
input_image = torch.randn(1, 3, 416, 416) # 假設(shè)輸入圖像大小為 416x416
# 特征提取
features = extract_features(input_image, yolov5_model)
# 顯示特征張量的形狀
print(features.shape)
3、Neck
? ? 在YOLOv5網(wǎng)絡(luò)中,Neck位于Backbone之后,主要作用是為了將Backbone提取到的特征信息更好的利用。Neck也位于Head之前,主要作用是將特征信息進(jìn)行壓縮和進(jìn)一步融合,最終能夠在Head進(jìn)行精準(zhǔn)的定位和分類。隨著神經(jīng)網(wǎng)絡(luò)的不斷發(fā)展,越來越多優(yōu)秀的Neck結(jié)構(gòu)被提出。其中,SPP、FPN、PAN等結(jié)構(gòu)目前來說應(yīng)用相對廣泛。
海洋生物目標(biāo)檢測實(shí)現(xiàn)效果
? ? ? 將YOLOv5s的Backbone用以上三種輕量化網(wǎng)絡(luò)替換,Backbone為ShuffleNet的輕量化網(wǎng)絡(luò)記為S_YOLOv5s,Backbone為MobileNet的輕量化網(wǎng)絡(luò)記為M_YOLOv5s,Backbone為GhostNet的輕量化網(wǎng)絡(luò)記為G_YOLOv5s,將不同主干網(wǎng)絡(luò)訓(xùn)練600個輪次后對比結(jié)果,結(jié)果如下表所示。由此可知,S_YOLOv5s網(wǎng)絡(luò)在其他輕量化網(wǎng)絡(luò)中表現(xiàn)最好,在檢測精度最高的同時,模型尺寸最小,推理時間也最快。該網(wǎng)絡(luò)不僅能夠減小模型大小,還能保證檢測精度。
? ? ? ?為了進(jìn)一步提升精度,使其達(dá)到檢測精度,滿足精度與速度平衡,設(shè)計(jì)出基于注意力機(jī)制的輕量化模型,將SE注意力模塊、ECA注意力模塊和CBAM注意力模塊嵌入至YOLOv5s模型的同一位置,改進(jìn)后的算法模型參數(shù)最小,輕量化效果最佳,每張圖片的推理速度最快,檢測精度也最好。滿足檢測速度和精度平衡的要求。經(jīng)過600個輪次后收斂,由模型訓(xùn)練過程曲線收斂圖可知在達(dá)到了減小模型尺寸的同時,保證檢測精度的目的。
? ? ? ?為了驗(yàn)證YOLOv5s網(wǎng)絡(luò)、輕量化S_YOLOv5s網(wǎng)絡(luò)和基于注意力機(jī)制的輕量化S_CYOLOv5s網(wǎng)絡(luò)的實(shí)際檢測效果,分別將三種網(wǎng)絡(luò)訓(xùn)練生成的最佳權(quán)重文件對隨機(jī)選取的194張水下生物圖像進(jìn)行測試。YOLOv5s網(wǎng)絡(luò)雖然有著較高的檢測率,但是模型較大,推理時間較慢,不利有海洋生物的實(shí)時檢測。輕量化后的S_YOLOv5s網(wǎng)絡(luò)雖然減小了模型尺寸,但準(zhǔn)確率不高。而基于注意力機(jī)制的輕量化S_CYOLOv5s網(wǎng)絡(luò)不僅模型尺寸較小,而且檢測精度也較高,滿足網(wǎng)絡(luò)檢測精度和速度的平衡。文章來源:http://www.zghlxwxcb.cn/news/detail-790187.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-790187.html
最后
到了這里,關(guān)于畢業(yè)設(shè)計(jì)選題- 基于深度學(xué)習(xí)的海洋生物目標(biāo)檢測系統(tǒng) YOLO 人工智能的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!