




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
湖南商務職業技術學院畢業設計
目錄
1、引言...........................................................................................................................................1
1.1項目背景...............................................................................................................................1
1.2開發環境與工具..................................................................................................................2
1.2.1Python簡介....................................................................................................................2
1.2.2pytorch簡介...................................................................................................................2
1.2.3pycharm簡介.................................................................................................................3
1.2.4Python第三方庫簡介....................................................................................................4
2、需求分析...................................................................................................................................4
2.1可行性需求分析..................................................................................................................4
2.2數據采集功能分析..............................................................................................................5
2.3關鍵技術分析......................................................................................................................6
2.3.1目標檢測........................................................................................................................6
2.3.2YOLOv5算法.................................................................................................................7
3、系統實現...................................................................................................................................9
3.1圖像采集...............................................................................................................................9
3.2圖像預處理.........................................................................................................................10
3.2.1彩色直方圖均衡..........................................................................................................10
3.2.2灰度處理......................................................................................................................11
3.2.3平滑處理......................................................................................................................12
3.3圖像標注.............................................................................................................................13
4、模型構建及評估分析.............................................................................................................14
5、模型應用.................................................................................................................................19
6、總結.........................................................................................................................................20
參考文獻.......................................................................................................................................22
I
湖南商務職業技術學院畢業設計
基于深度學習yolo模型的口罩識別方法設計
1、引言
1.1項目背景
隨著現代化的發展,人們生活節奏越來越快,可以通過圖像進行交流。從用戶的角度
來看,圖像不受當地語言等因素的限制,能夠更好地表達和傳達人們的情感信息,可以作
為快速表達的載體。對我們來說,編輯文本是很容易的,但是圖像中傳遞的內容和信息非
常大。因此,如何方便、有效地找到關鍵信息并利用圖像成為圖像處理領域的一個關鍵研
究問題。近年來,由于其在場景中的廣泛應用,圖像識別成為圖像研究領域的一個熱點。
在畜牧業中,我們可以通過監測牲畜的生長狀況、活樁的形狀和形狀來判斷,定期定量喂
養牲畜,監測其生長發育情況。在工業上,關鍵問題可以通過圖像識別來解決。在醫學上,
高清圖像可以用來掃描身體的各個部位。此外,圖像在日常活動中也起著至關重要的作用,
如高速列車安檢中的人臉識別,以及機上乘客的身份信息;平日停車時,采用車牌識別技
術進入停車場;申請身份證時,每個公民都會輸入自己的指紋信息,以便將來進行安全驗
證。總之,圖像在我們的日常生活中是不可或缺的。利用傳統方法或深度學習方法快速有
效地識別圖像和提取顏色特征信息具有重要意義。
在機器視覺中,圖像識別是一個關鍵問題。圖像識別的精度主要取決于圖像關鍵部位
的定位精度。首先,圖像處理是圖像預處理。經過預處理后的圖像特征提取算法有sift、LBP
和Haar。通過一系列的步驟,我們可以準確地識別圖像的內容。獲取圖像的方法有很多種,
但我們必須利用攝影工具將采集到的圖像數據存儲在數據庫中以備不時之需,而對受損圖
像的處理就是對圖像中我們需要的圖像進行切割,以確定其統一的格式和大小。對于圖像
質量較差的圖像,可以對圖像進行去噪、增強和一系列的預處理,以方便以后的使用。獲
取完整的特征信息是反映用戶需求、服務于整個行業的關鍵,因此這一步是圖像識別的基
礎過程,細化來說就是先要提取需要去識別的圖像的特征,然后再利用分類器來把相同特
征的歸為一類,實現分組,從而實現對圖像的識別。
人工智能和機器學習的發展也為圖像識別提供了極好的資源。機器學習就是讓機器擁
有與人類相同的大腦,使機器能夠獨立地學習和分析問題。人類知識的獲得是一個漫長而
反復的過程。在人類進化的過程中,人們通過學習和理解知識來理解自己需要獲得的東西。
通過不斷的實踐,人們可以獲得相關的技能,并分析和總結在這個過程中獲得的經驗。機
器學習類似于人腦的學習,使機器學習不再是科幻電影的場景。人類通過眼睛捕捉周圍的
所有信息,并將視網膜成像傳輸到大腦,獲得相關的圖像特征。機器視覺就是通過各種設
備獲取相關的圖像。經過特征提取,機器可以通過學習識別相關對象,并通過計算機或音
頻設備顯示學習的內容。分類器訓練是機器學習的關鍵。通過不斷的訓練并對分類器進行
1
湖南商務職業技術學院畢業設計
調整,得到分類器模型,對誤差范圍較小的目標進行識別。機器學習包括無監督學習、有
監督學習和半監督學習。
而我們清楚的是人臉識別無論是數字圖像的處理方面還是在于計算機視覺領域的方
面,其地位都是很高的,它能利用攝像機采集信息,并對其進行檢測,還能快速識別出口
罩佩戴情況,所以說該項技術對于當下疫情控制的意義是非常高的,在該方面的投入也是
非常有必要的有價值的。面對突如其來的新一輪肺炎疫情,人們的生活秩序被嚴重擾亂。
與普通流感不同,這種流行病可以通過人類唾液傳播,并具有很強的感染他人的能力。最
近,面對疫情,市面上的口罩越來越少。新型冠狀病毒肺炎對該病的流行尤為重要。能有
效阻斷新型冠狀肺炎病毒的傳播。它能直接從源頭檢查,將人體唾液和氣流從第一道屏障
中隔離出來,有效保護自己和他人,不傳播病毒。在中國的公共場所必須戴口罩。然而,
在商場、餐廳、地鐵等人員密集場所,應對客流高峰期的措施往往讓人發自內心。一些人
外出時不愛戴口罩,這給病毒提供了可乘之機,給自己和他人的生命帶來重大安全隱患。
如果有一套系統,通過對數字圖像的采集和識別,識別出是否戴口罩的人,并做出相應的
預警和報警就顯得尤為重要和迫切。隨著計算機視覺技術的發展,基于圖像的面具識別迅
速引起人們的關注。
1.2開發環境與工具
1.2.1Python簡介
Python由荷蘭數學和計算機科學研究學會的吉多·范羅蘇姆于1990年代初設計,作為
一門叫做ABC語言的替代品。Python提供了高效的高級數據結構,還能簡單有效地面向
對象編程。Python語法和動態類型,以及解釋型語言的本質,使它成為多數平臺上寫腳本
和快速開發應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用于獨
立的、大型項目的開發。
Python解釋器易于擴展,可以使用C語言或C++(或者其他可以通過C調用的語言)
擴展新的功能和數據類型。Python也可用于可定制化軟件中的擴展程序語言。Python豐富
的標準庫,提供了適用于各個主要系統平臺的源碼或機器碼。
1.2.2pytorch簡介
是一個基于Python的開源機器學習框架,由Facebook的人工智能研究團隊開發和維
護。它提供了豐富的工具和庫,用于構建深度神經網絡模型和進行機器學習任務。
的設計理念是動態計算圖,這意味著你可以使用自然的方式定義和執行計算圖,而不
需要預先定義靜態計算圖的結構。這種靈活性使得模型構建和調試變得更加直觀和方便,的
主要特點包括:
1.動態計算圖:允許用戶在運行時動態地構建、修改和執行計算圖,使得模型構建和
調試更加靈活和直觀。
2
湖南商務職業技術學院畢業設計
2.自動求導:能夠自動計算張量的梯度,大大簡化了反向傳播算法的實現。這使得模
型訓練過程更加便捷和高效。
3.強大的GPU加速支持:針對GPU進行了優化,可以充分利用GPU的并行計算能
力,加速深度學習任務的訓練和推理。
4.大型社區支持:擁有龐大的開源社區,提供了豐富的文檔、教程和示例代碼。這使
得學習和使用變得更加容易,同時也能夠從社區中獲取支持和解決問題。
5.兼容性和可擴展性:與其他Python庫(如NumPy)和常見的機器學習庫(如SciPy
和Scikit-learn)兼容性良好。此外,還提供了豐富的擴展庫和工具,可以滿足不同任務和
需求的擴展性需求。
總的來說,是一個功能強大、易用且靈活的機器學習框架,廣泛應用于學術界和工業
界。它的設計理念和特點使得模型構建和調試更加直觀和高效,為深度學習任務提供了便
利和優化的解決方案。
1.2.3pycharm簡介
PyCharm是一款由JetBrains開發的集成開發環境(IDE),專門用于Python開發。它
提供了許多強大的功能和工具,旨在提高開發者的生產力和代碼質量,以下是PyCharm的
一些主要特點和功能:
1.代碼編輯和智能感知:PyCharm具有強大的代碼編輯功能,包括語法高亮、代碼補
全、自動縮進和錯誤檢查等。它還提供了智能感知功能,可以根據上下文提供代碼建議和
自動完成。
2.調試和測試:PyCharm內置了強大的調試器,可以幫助開發者定位和修復代碼中的
問題。它還支持單元測試和集成測試,可以方便地編寫、運行和分析測試用例。
3.項目管理:PyCharm支持多個項目的管理,可以輕松切換和管理不同的Python項
目。它提供了項目導航、版本控制集成和依賴管理等功能,使得項目開發更加便捷。
4.版本控制:PyCharm與常見的版本控制系統(如Git、SVN和Mercurial)集成緊密,
可以直接在IDE中進行版本控制操作,如提交、拉取和合并代碼等
5.代碼重構和分析:PyCharm提供了豐富的代碼重構工具,可以幫助開發者進行代碼
重構和優化,提高代碼的可讀性和維護性。它還提供了靜態代碼分析功能,可以幫助檢測
潛在的錯誤和優化建議。
6.插件和擴展性:PyCharm支持大量的插件和擴展,可以根據需要添加額外的功能和
工具,以滿足特定項目或開發需求。
總的來說,PyCharm是一個功能強大、易用且高度可定制的Python開發環境,適用于
各種規模的項目和開發者。它提供了豐富的功能和工具,幫助開發者提高開發效率、減少
錯誤,并保持代碼質量。
3
湖南商務職業技術學院畢業設計
1.2.4Python第三方庫簡介
Python是一種非常受歡迎的編程語言,因為它易于學習、使用和擴展。Python擁有
大量的第三方庫,這些庫可以幫助開發人員快速、輕松地實現各種任務。以下是幾個重要
的Python第三方庫簡介:
NumPy:NumPy是Python的一個科學計算庫,它提供了高效的多維數組對象、各種
派生對象、快速的數組操作方法以及大量的工具。
Pandas:Pandas是Python的一個數據處理庫,它提供了靈活和高效的數據結構,包
括數據幀和面向行和列的數據選擇、操作和分組方法。
Matplotlib:Matplotlib是Python的一個繪圖庫,它提供了創建各種類型圖表和可視
化的工具,包括條形圖、散點圖、區域圖和等高線圖等。
Scikit-learn:Scikit-learn是Python的一個機器學習庫,它包含了大量的基本算法和
模型,可以用于分類、回歸和聚類等任務。
Pytorch:Pytorch是一個開源的機器學習框架,它由Google開發,是用于構建人工
智能模型的重要工具之一。
Django:Django是Python的一個Web框架,它提供了一套完整的MVC架構、
ORM和模板語言,可以幫助開發人員快速構建復雜web應用程序。
Flask:Flask是Python的另一個微型Web框架,它提供了一個靈活的、易于擴展
的架構,可以用于搭建小型Web應用程序和API。
這些Python第三方庫提供了很多功能和工具,可以幫助開發人員更輕松、高效地進
行編程任務。使用這些庫可以大大提升Python在數據處理、科學計算、機器學習、Web
開發等方面的能力。
2、需求分析
2.1可行性需求分析
1.功能需求
2020年新冠肺炎席卷全球,佩戴口罩能夠有效切斷新冠肺炎病毒的傳播途徑,是預防
感染的有效措施。隨著疫情影響的逐步擴大,國內公眾場合要求人們需要佩戴口罩,但是
也總有一些人因為特殊情況未能佩戴口罩,這有可能會對周圍人群的安全造成隱患。特別
是商場、餐飲、地鐵、車站等人員密集型的場所,由工作人員人工檢測體溫與監督乘客口
罩佩戴情況,在人流量高峰時段的檢測往往應接不暇,經常會出現大量人力的浪費,并且
吃力不討好,效率仍然低下。
隨著時代的快速發展,計算機視覺技術使得我們攝像機與計算機合而為一,一體化的
分析處理,快速高效的實現對人員來往是否佩戴口罩的檢測。本系統可以自動準確且快速
4
湖南商務職業技術學院畢業設計
地識別圖片或視頻中人物是否佩戴口罩,有著重要的應用場景和市場前景。
2.性能需求
(1)系統在因特網正常狀況下全天候提供服務,用戶可以隨時使用該系統進行檢測。
(2)檢測速度要盡可能的快并且檢測結果盡可能準確。
(3)系統的安全性、可操作性、可維護性要較為完善。
3.運行需求
本系統采用了YOLOv5模型,Darknet深度學習框架,操作系統為Windows10,環境
為。這些技術目前都已經很成熟,而且技術含量很高,使用起來很方便,安全性也有較大
保障。目前高性能的網絡組建大量涌現,他們速度快、用量大、可靠性高、價格低,完全
可以滿足本系統的需要。
2.2數據采集功能分析
在使用本系統時,用戶首先需要選擇本地圖片或視頻并傳入系統,系統對圖片進行
預處理后再對目標人臉的區域進行定位,然后對定位后的人臉區域進行是否佩戴口罩的
識別,最后將識別結果輸出。
根據上述描述,本系統應具備以下四個功能:
(1)圖片選擇:提供從本地文件夾中選擇待識別圖片的功能。用戶可以從本地文件
夾中獲取想要識別的圖片并傳入系統。
(2)圖像預處理:提供對傳入的圖片進行預處理的功能。該功能可以對傳入的圖片
進行灰度校正和平滑處理,為之后對圖像進行進一步分析和識別做準備。
(3)圖像識別:該功能是對已經預計處理的圖像進行再一次進一步的分析,并通過
如此方式對于圖像特征提取,對于目標進行定位以及預處理之后的圖像進行進一步分析,
對圖像進行特征提取、目標定位和目標識別。
(4)結果輸出:該功能可以將已經完成識別的圖像的結果進行輸出。
5
湖南商務職業技術學院畢業設計
圖2-1系統功能結構圖
2.3關鍵技術分析
2.3.1目標檢測
1.目標檢測的概念
目標檢測又被我們叫做目標提取,這是一種基于目標的幾何還有統計特征的圖像分割
方法。
它的作用在于,將原本需要兩步的目標分割還有識別合二為一,所以其以準確以及實
時著稱,特別是在許多復雜的場景之中,因為我們需要同時對多個目標進行相應的檢測處
理,它所具備的自動提取目標以及自動識別格外重要。在對國內外諸多成果的研究中,
我們將目標檢測的算法通常分為兩類,第一種是較為傳統的目標檢測算法,第二種就是我
們要介紹到的基于深度學習的目標檢測算法,目前后者的用途十分廣泛該算法又分為One-
Stage目標檢測算法和Two-Stage目標檢測算法。
2.傳統目標檢測算法
(1)對于傳統的目標檢測方法,一般工作流程分為三個階段:即首先給定圖像選取
候選區域,選擇過后再提取相應特征,之后再用以及訓練好的分類器來對于各個數據進行
分類。這三個階段細化來說如下。
區域選擇:即定位,我們在分析處理之前首先應該確定位置,因為目標可能出現于任
何位置,且形狀比例會相應的產生一些變化,所以我們采用滑動窗口來保證將圖像所有位
置都有觀測到,簡單來說,就是窮舉法,這種方法可以完成任務,但是這種方法效率不高,
且時間浪費的太多,且多了許多不必要的的多于窗口,這對于后續工作的進行產生了影響,
6
湖南商務職業技術學院畢業設計
也導致了整體系統的效率被拖慢。
(2)特征提取:因為觀測目標不會相同,多種多樣,并且位置角度都有變化,所以
一個完美程序是特別困難的。但是對于目標特征的提取又是至關重要的,它直接決定系統
的結果是否準確,所以重要程度不言而喻。其中,SIFT、HOG等是這個階段常用的特征。
(3)分類:即根據第二步所提取出來具有相似特征的目標歸為一類,實現對數據的
分類。目前市面上的分類器主要包括SVM,AdaBoost等。
2.3.2YOLOv5算法
YOLOv5是一種高性能實時目標檢測算法,是YOLO系列(YouOnlyLookOnce)的
最新版本。它是由Ultralytics團隊開發的,旨在提供更快速、更準確的目標檢測能力。
與之前的版本相比,YOLOv5在模型結構和訓練策略上進行了一些改進和優化,以提
高檢測性能。下面是YOLOv5的一些特點:
1.網絡結構:YOLOv5采用了一種輕量級的網絡結構,由卷積層和池化層組成,通過
多個不同尺度的特征圖進行目標檢測。這種結構能夠在保持準確性的同時提供較快的推理
速度。
2.強大的檢測能力:YOLOv5能夠同時檢測多個目標類別,并輸出它們的邊界框和類
別概率。它具有較高的準確性和召回率,能夠有效地處理復雜場景下的目標檢測任務。
3.多尺度訓練:YOLOv5采用了一種多尺度訓練策略,通過在不同尺度下訓練模型,
提高了模型對不同大小目標的檢測能力。這使得模型在處理大尺度和小尺度目標時都能取
得較好的效果。
4.數據增強和數據集增強:YOLOv5使用了多種數據增強技術,如隨機裁剪、色彩擾
動和圖像翻轉等,以增加訓練數據的多樣性和數量。此外,還提供了數據集增強工具,可
以通過合成數據增加訓練樣本的豐富性。
5.高度可定制:YOLOv5提供了豐富的配置選項,可以根據任務需求進行靈活的模型
設置和訓練。用戶可以選擇不同的網絡尺寸、訓練參數和推理設置,以滿足特定的目標檢
測需求。
總的來說,YOLOv5是一種高性能的實時目標檢測算法,具有較快的推理速度和較高
的檢測準確性。它在多尺度訓練、數據增強和模型定制等方面提供了更多的靈活性和優化
選項,適用于各種實際場景中的目標檢測任務。
7
湖南商務職業技術學院畢業設計
YOLO網絡基于回歸算法,在很復雜的運算數據面前也能發揮很好的效果,實際運
用效果也是如此,該算法去的了不小的成就,獲得了可觀的效果。一般情況下YOLO網
絡將輸入的圖片劃分成大小為32*32的網格,檢測目標口罩,只要口罩的中心位置落入
某個網格中,則立即由該網格負責檢測目標。同樣的檢測地點檢測對象,該算法比較其
它任何算法都要更具優勢,優勢就在于其多尺度預測算法,特別是實時性方面,更加凸
現了該中算法的強大,更好地滿足人流量較大的需要。
Yolov5算法是在原有YOLO目標檢測架構的基礎上,采用了近些年CNN領域中最
優秀的優化策略,從數據處理、主干網絡、網絡訓練、激活函數、損失函數等各個方面
都有著不同程度的優化。
(1)Yolov5的貢獻
①開發了一個高效而強大的模型,使得任何人都可以使用一張1080Ti或者2080Ti
GPU去訓練一個超級快速和精確的目標檢測器。
②驗證了一系列state-of-the-art的目標檢測器訓練方法的影響。
③修改了state-of-the-art方法,使得他們在使用單個GPU進行訓練時更加有效和適
配,包括CBN,PAN,SAM等。
(2)Yolov5的訓練方法
①Bagoffreebies:只改變訓練策略或者只增加訓練成本,比如數據增強。
②Bagofspecials:插件模塊和后處理方法,它們僅僅增加一點推理成本,但是可以
極大地提升目標檢測的精度。
(3)Yolov5的網絡結構
Yolov5目標檢測算法作為該算法的第四代,相比第三代,在網絡結構上比更復雜,
因為其內部使用了極多的訓練模式來提升整體神經網絡的準確率,Yolov5通過引入
Mosaic數據增強方法,并選擇最優超參數,使用GA算法,進而對現有的方法進行改
進,并對其不斷進行訓練,使得其具有更為低的訓練門檻,使其下限更低,更好上手,
能夠在GPU資源有限的條件下盡可能的得到更加好的結果。在運算過程中Mosaic數據增
強方法每次隨機讀取四張圖片,并對這四張張照片進行一系列操作,翻轉、縮放等操
作,實現將四張圖合四為一,這種將四張圖片組合為一張圖片的方法可以更加豐富檢測
物體的背景。Yolov5的網絡結構如圖1所示,主干網絡為CSPDarknet53,附加模塊設
置為SPPNeck,另外特征融合模塊使用PANet,使用第三代即,YOLOv3作為Head。在這
里面的Darknet53包含了5個大殘差塊,這5個大殘差塊包含的小殘差單元個數分別為
1、2、8、8、4。CSPDarknet53在Darknet53的每個大殘差塊上加上了CSPNet(Cross
StagePartialNetwork),并在后面通過梯度的變化,集成到特征圖中,同時將特征圖一分
為二,一部分進行卷積操作,另一部分與上一次的卷積結果進行結合。最后在目標檢測
8
湖南商務職業技術學院畢業設計
問題中,CSP可以有效提升CNN的學習能力,同時減少計算量。PANet充分利用了特
征融合,Yolov5中還將融合的方法由加法改為乘法,使該網絡能夠得到更加精確的目標
檢測能力。
圖2-2Yolov5網絡結構圖
3、系統實現
3.1圖像采集
本系統共爬取了大約5000張圖片作為口罩佩戴檢測數據集,其中佩戴口罩和未佩戴
口罩的圖片數量基本持平。對于樣品的圖像,我們進行兩類標注,一類有口罩,一類未
戴口罩,一共訓練集有2200張不同的圖片,驗證集是訓練集的百分之十。在每一次同時
數據之中,存在著許許多多的不同,口罩角度,顏色各不相同,這樣的訓練有利于提升
我們的檢測佩戴情況的準確性。
9
湖南商務職業技術學院畢業設計
圖3-1部分圖片展示
圖3-2部分圖片展示
3.2圖像預處理
圖像預處理的主要作用包括改善圖像質量、突出特征、去除噪聲、調整尺寸、歸一化
和數據增強等。其中,彩色直方圖均衡用于增強對比度和改善圖像質量,灰度處理可以降
低計算復雜度并提取圖像特征,平滑處理可以去除圖像中的噪聲。這些預處理技術都有助
于提高圖像處理和圖像識別的準確性和性能。
3.2.1彩色直方圖均衡
彩色直方圖均衡是一種圖像處理技術,通過調整彩色圖像中每個顏色通道的像素值
分布,實現對比度增強、圖像質量改善、視覺感知提升和圖像特征增強的效果。它能夠
10
湖南商務職業技術學院畢業設計
使圖像亮度范圍更均勻地覆蓋整個范圍,突出細節,使識別圖像的邊緣更清晰、自然、
生動,提高計算機對圖像的感知和識別能力。
圖3-3直方圖均衡代碼
圖3-4均衡化后圖片
使用圖片均衡化亮度均衡,口罩邊緣更清晰,更容易被計算機識別。
3.2.2灰度處理
在圖像處理中,處理三個通道的數據會比較復雜,因此需要先將圖像變灰,也就是
對圖像進行灰度處理,因為灰化后的照片可以盡可能的減少原始圖像的數據,這樣便可
以減少計算量,增加計算精度,灰度處理,簡單來說,就是將各個像素點的RGB值統一
成同一個值,從而失去顏色,變為灰色,經過灰度處理后的圖像將由三通道變為單通
道,而單通道的數據,處理計算起來將會得到極大的簡便。
灰度處理后的圖像可以通過閾值變換轉換成黑白二值的圖像信息,也正是通過對于
灰度圖像二值化處理,所需目標的輪廓便可以得到凸出。
灰度閾值變換的基本公式為:
0xT
f(x)
255xT
11
湖南商務職業技術學院畢業設計
其中T為指定的閾值。
類似于符號函數,將灰度大于閾值的部分設置為最大灰度,灰度小于閾值的部分設
置為最小灰度。經過閥值化的灰度值僅有兩個取值,最小值0與最大值255。閾值變換將
圖像內容劃分為關心與不關心的2個部分,從復雜背景中可直接提取出感興趣的,主要
用于對圖像的分割。
二值化處理的灰度圖像,即就是將像素點閾值變換,講灰度設置到0或255,這樣的
設置,也就可以使整個圖像會出現明顯的黑白效果,也就是將256個亮度等級的灰度圖
像,通過適當的閾值選取,得到可以明顯顯出所需物體的二值化圖像,同時在數字化處
理之中,二值化圖像的圖像整體,以及局部特征,我們都知道,二值圖像在數字處理中
的的地位是很高的,特別是實用的圖像處理,在當下的生產生活,通過二值化圖像來處
理信息是很廣泛的,但要進行二值化處理,我們就需要先將灰度圖像二值化,得到二值
化圖像,因為二值化圖像才能進行二值化處理,因為圖像性質只與灰度閾值點位置有
關,不涉及像素多級值,這就使的對于圖像的處理變得簡單,,并且壓縮量少,占據空
間更小,而我們要得到滿足條件的理想型二值化圖像,我們通常都是采用封閉,以及聯
通的邊界定義不重合的區域,所有的灰度大于或等于閾值的物體,即為我們所需要的特
定物體,即將其灰度值表示為225,除此之外的的像素點都被排除在外,灰度值即為零,
表示為區域值之外是背景等區域,但如果特定物體內部有著均勻的灰度值,并且處于一
個具有其他等級灰度值的均勻背景,使用閾值法就可以得到明顯的分割成果,如果物體
與背景灰度差值較大,即可以之間轉化為灰度的差值,利用灰度閾值選取分割,動態閾
值調節來幫助觀測。
而對于經過處理的灰度圖像,是沒有固定的算法的,根據圖像區域之中的不同目標
有著不同算法,在實際之中的操作中,根據不同灰度我們能進行舍入處理,必須選擇為
灰度閾值中值等,但是這種處理的范圍過于寬廣,因為沒有根基圖像,所以效果不是很
理想。
3.2.3平滑處理
圖像在生成、獲取、傳輸等過程中,由于受到光照、成像系統功能和噪聲等許多因
素的影響,往往會造成對比度偏低、清晰度下降以及產生干擾噪聲等結果。為了改善圖
像質量,需要利用圖像增強技術獲得更便于后續分析和識別的圖像。圖像的平滑處理是
在盡量保留圖像原有信息的情況下,過濾圖像內部的噪聲。通過圖像平滑處理,可以有
效過濾掉圖像內的噪聲信息。
圖像平滑處理的基本原理是對圖像中與周圍像素點的像素差異值較大的像素點進行
處理,將其值調整為周圍像素點像素值的近似值。
12
湖南商務職業技術學院畢業設計
圖像平滑處理的方法包括均值濾波、方框濾波、高斯濾波、中值濾波、雙邊濾波和
2D濾波等。
在該系統的均值處理方法之中,我們采取均值濾波方法方法來對圖像進行平滑處
理。均值濾波指的是當前像素點的周圍N*N個像素值的均值來代替當前像素點,而通過
這樣的方法來歷遍每一個像素點,這樣窮舉之后,即可以完成對于整個圖像的均值濾
波。
而在于數據處理之前,我們有必要先去考慮對于周圍的多少個像素點去研究,因為
我們需要去取平均值,然后當做中心點,對行數還有列數具有像素點取平均值,而對于
邊緣的像素點可以只取圖像內存的領域點像素均值。
3.3圖像標注
本文使用LabelImg為yolov5算法構建圖像數據集,保存格式為yolov5算法可供識別
的txt文本格。在標注過程中,需要注意的是要確保準確地標注口罩目標的邊界框,并為
每個目標制定正確的類別,本次標準將數據集分為兩類,分別是mask和nomask,具體操
作如圖所示:
圖3-5LabelImg操作窗口
打開LabelImg操作窗口后,以上是具體的操作模塊功能介紹,本文需要對口罩數據集
進行標注,打開數據集文件夾,導入圖片,直接按W鍵可以直接產生標注框,彈窗中填上
信息,如圖3-6所示,標注信息為mask:
13
湖南商務職業技術學院畢業設計
圖3-6LabelImg標注
4、模型構建及評估分析
本章將會從模型的選擇,到模型參數調整以及訓練過程注意展示,最開始需要在github
中下載yolov5模型,如圖4-7所示:
圖4-1模型下載
Yolov5的項目目錄結構主要需要修改的是data文件夾、utils文件夾以及models文件夾,
其中voc.yaml中可以修改nc類別參數,指定識別標記,detect.py文件夾可修改運行數據
集、weight等,部分目錄結構如圖4-8所示:
圖4-2模型結構
下載完成后,在anaconda中安裝運行環境,環境如圖3-9所示:
14
湖南商務職業技術學院畢業設計
圖4-3運行環境
運行環境搭建好后,在yolov5中調整模型配置文件,打開voc.yaml,其中定義了模型
的結構和超參數。根據數據種類和錨框大小進行調整,以下是參數詳解:
(1)nc參數:指定目標類別的數量,包括佩戴口罩和不佩戴口罩的人臉。
(2)anchors參數:YOLOv5使用錨框(anchorbox)來檢測不同尺寸的物體。你可
以根據口罩的大小調整錨框的尺寸,以便更好地適應口罩的檢測。
(3)weights參數:指定預訓練模型的權重文件路徑。從預訓練的YOLOv5模型中
加載權重,然后在該基礎上進行微調。
如圖3-10所示調整識別的nc值,制定目標識別種類和對應的標記。
圖4-4類別調整
如圖3-11所示,修改detect.py文件中的weights參數,將模型指定為yolov5模型,修改data
參數為mask數據集。
圖4-5模型、數據集更改
其中activations.py中定義了模型的激活函數,如圖所示定義了Silu和mish激活函
數,使用mish激活函數,是由于它有一種具有連續可導特性的非線性函數。與傳統的
ReLU激活函數相比,mish激活函數具有更寬的“平臺”區域,這意味著它可以更好地保
留輸入的絕對值較大的特征信息,對于口罩識別而言,可以隨著目標的位置、大小和形
15
湖南商務職業技術學院畢業設計
狀等特征的不同尺度發生變化,引入激活函數可以使yolov5模型具有更強的非線性擬合
能力,部分代碼如圖4-12所示:
圖4-6激活參數修改
使用pycharm直接對yolov5模型進行訓練,為了確保模型可以在訓練之后仍保持校
準的檢測性,所以本系統的檢測我們選取真實人臉作為訓練樣本,通過對收集到的圖片
進行分類,標注時對人臉進行框選標注,講標注分為戴口罩和不戴口罩兩種類型,并規
定在本次訓練中模型訓練集和訓練圖片數量四比一,因此在選取的四千張照片之中,
3200張為訓練集,800張為測試集。
圖4-7劃分數據集
在對模型調整,數據集劃分完畢后,設置提取特征的訓練參數。該模型共訓練100
次,分為兩部分進行訓練。前期凍結主干網絡訓練50次,不訓練主干網絡只訓練后面檢
16
湖南商務職業技術學院畢業設計
測層,主干網絡是用來提取特征,凍結主干網絡進行訓練可以加快訓練速度,后期50次
包括主干網絡全部訓練。
訓練前期50次設置學習率為0.001,動因子為0.95,每學習一次學習率衰減0.95,
學習率逐漸下降有利于進行收斂。
對口罩是否佩戴識別要分為兩步,分類與定位,分類就是利用算法遍歷圖片,判斷
其中的對象是不是包含我們要找的人臉。進而將一張圖片到多層卷積神經網絡,之后會
得到一個結果即特征向量,同時反饋給softmax模塊,來對于圖片類型做一預測。
判斷出圖片類型之后就要對圖片中的目標人臉進行定位。在口罩佩戴檢測問題中,
一張圖片可以含有多個目標,并且單張圖片中可能會有多個不同分類的目標。
對于數據的處理之中,可以讓神經網絡再次多輸出幾個,形成多重結果,首先輸出
一個邊界框,(xmin,ymin)和(xmax,ymax),圖片中的每個人臉都分別對應著是兩個
坐標,這樣就可以判斷出每張圖片中目標人臉的數量然后對其進行定位。
圖4-8前期訓練設置
訓練后期50次設置學習率為0.0001,動因子為0.95,每學習一次學習率衰減0.95。
17
湖南商務職業技術學院畢業設計
圖4-9后期訓練設置
圖4-10模型訓練過程
如圖4-11為模型訓練過程,每張圖片的識別速度平均為0.2s,識別速度較快,在模
型訓練完畢后模型run文件夾下自動生成了loss、map和ap曲線的數據圖,以下將解釋
數據圖的具體含義。
圖4-11訓練和驗證的loss曲線
如上圖loss曲線是訓練過程中損失函數的變化情況的可視化表現,上圖中測試集和
驗證集的損失都較小,可以看到準確率逐漸提高并基本達到穩定。
18
湖南商務職業技術學院畢業設計
圖4-12測試集的map曲線
AP曲線是衡量訓練出來的網絡模型在每個類別上的好與壞,這兩個AP曲線分別表
示每次測試中單個類別NoMask和Mask的正確率,是選取該模型中最好的模型繪制出來
的曲線圖。
圖4-13NoMask的AP曲線
map是衡量訓練之后的網絡模型在所有類別上的好與壞,兩個AP取平均值即為該模
型測試的正確率map。可以看到,經過訓練之后該模型的正確率已經可以達到91.35%。
圖4-14模型的map值
5、模型應用
在進行了最終的實驗過后實現效果如圖所示,對于佩戴了口罩
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- T/CIMA 0032-2022單相智能電能表設計方案多目標穩健性評價通則
- T/CHASA 001-2018凈水上門服務工程師資質認證規范
- T/CECS 10349-2023綠色校園用裝飾裝修材料抗菌、抗病毒性能要求
- T/CECS 10109-2020耐腐蝕預制混凝土樁
- T/CCMA 0168-2023土方機械電控手柄技術要求及試驗方法
- T/CCMA 0095-2020非公路自卸車操作使用規程
- T/CCAS 021-2021水泥生料助磨劑
- T/CCAS 004-2018錳(礦)渣化學分析方法
- T/CAQI 86-2019家用和類似用途新風機空氣清新度技術要求及試驗方法
- T/CAPMA 6-2018熟貉皮質量檢驗
- 養殖產業政策與市場趨勢分析-洞察分析
- 快遞柜租賃合同
- 2025年電源管理芯片市場分析報告
- 2025年行政執法證考試必考題庫及答案(共四套)
- 《律師事務所管理辦法》(全文)
- 校長國培計劃培訓成果匯報
- 湖南出版中南傳媒招聘筆試真題2023
- 2025年河北省職業院校高職組“食品安全與質量檢測”技能大賽參考試題庫(含答案)
- 中國血管性認知障礙診治指南(2024版)解讀
- 2024版房屋市政工程生產安全重大事故隱患判定標準內容解讀
- 浙江省臺州市2023-2024學年六年級上學期語文期末試卷(含答案)
評論
0/150
提交評論