版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于Mask-RCNN的螺栓檢測方法分析案例目錄TOC\o"1-3"\h\u10025基于Mask-RCNN的螺栓檢測方法分析案例 1114361.1Mask-RCNN算法步驟 1109911.2實驗環境配置 131901.3數據集的建立 5309411.4實驗結果與分析 91.1Mask-RCNN算法步驟(1)準備所需的螺栓圖片;(2)使用Labelme制作數據集,將圖片中的螺栓與螺栓凹槽進行標注;(3)標注完成后將jpg圖片文件和json標簽文件放在統一文件夾中;(4)運行生成數據集相關程序生成算法訓練數據集文件夾;(5)修改相關程序中自己要分的類、NUM_CLASS等于自己要分的類的數量加1、權重改為自己訓練權重后,分別依次運行;(6)運行預測程序,將含有圖片的文件夾里的圖片路徑復制到輸出框;(7)得到結果。1.2實驗環境配置從Anaconda官方下載并安裝Anaconda3,如圖1.1所示。Anaconda因為安裝方便、容易獲取、對其內含的大量安裝包(如:Python、TensorFlow等)進行統一管理,方便刪除和安裝等優勢,被廣泛使用。圖1.1Anaconda官網下載安裝完成后會有如圖1.2所示界面Anaconda環境下命令提示符軟件界面Anaconda環境下命令提示符軟件界面圖1.2軟件圖標打開AnacondaPrompt,檢查Anaconda是否安裝成功,如圖1.3所示。圖1.3檢查命令輸入Python版本檢查指令查看目前可以安裝的版本,然后創建一個名為tensorflow的conda環境,如圖1.4所示。圖1.4創建conda環境輸入相關指令激活和安裝tensorflow環境。安裝成功后,查看目前安裝了哪些環境,確保名叫tensorflow的環境已經被成功添加,如圖1.5所示。打開AnacondaNavigator圖形管理界面,看到環境選項有tensorflow即安裝完成。圖1.5檢查tensorflow按照Keras官網指示,在conda環境下安裝Keras。Keras是完全用Python語言編程而成,能運行與TensorFlow之上。Keras是一個類似于拼圖一樣的模型,它自身有一定數量的庫(例如網絡層、損失函數、優化器、初始化策略、激活函數、正則化方法),在一定條件下(滿足試驗可以接受的誤差),可以將實驗中所需要的庫相互組合或者增加或者以原有庫為范例自己編寫新的函數。安裝完成,可在圖形管理界面搜索到已安裝的Keras進行驗證,如圖1.6所示。圖1.6檢查kerasPycharm安裝到官網下載community版(免費版本),如圖1.7所示。圖1.7Pycharm官網在tensorflow環境下進行OpenCV安裝,安裝完成后打開Pycharm,新建一個pythonfile,輸入如圖1.8所示中程序。圖1.8編寫檢查程序其中畫圈處為自己所選圖片存放位置,注意圖片路徑中不要包含有中文,運行此程序后會打開對應圖像,證明環境配置成功。打開Pycharm確認是在Anaconda環境下,點File-Settings-ShowAll-Python3.6(tensorflow)-Apply-OK,如圖1.9所示。圖1.9確認Anaconda環境1.3數據集的建立科技的發展時代的進步,讓各行各業都引進了人工智能,從阿爾法狗圍棋機器人到醫學上幫助分析病情再到普通百姓家的掃地機器人到每個人手機上的人臉識別等等,這些都是人工智能所觸發的產業,為企業能在一定程度上節約人力成本,讓原來需要很多人才能完成的工作用一臺智能機器就能取代,為普通百姓人工智能可以方便生活,不用因為年齡的增長而降低自己的生活環境,環境舒適才能對生活水平有所提升。為了能讓這些智能設備變得智能就需要大量的有針對性的數據進行訓練,這些有針對性的數據就需要對其進行標注和處理,現在擁有了兩種標注工具可以對圖片進行使用,分別為labelimg和labelme。(1)labelimg是開源圖像標記的工具,被許多行業的人使用和了解,也是一個隨著使用過程中發現問題而不斷修改優化的軟件。labelimg是一個工具,這個工具是可以用顯示的界面進行圖片處理操作的。labelimg需要在一定環境下才可以對所需要的框選的圖片物體進行框選,在深度學習網絡中需要用到這個軟件。它的使用方法為打開軟件后點擊OpenDir,打開圖片所在的文件位置;點擊Changesavedir設置圖像標記文件(XML)的默認存儲位置;之后,設置標簽存儲格式為PasoalVOC;再點擊CreateRectBox,創建一個能標出等待識別的目標矩形框;然后,在標簽信息框內,選擇或輸入對應物體名稱;勾選AutoSavemode選項,可直接進行下一張圖片打標簽操作,會自動保存該標注信息到XML文件。labelimg具有容易下載使用、容易根據圖片所需要的條件自己增加或者修改功能、容易上手使用等優點。當然labelimg也有不足之處,例如:軟件要在沒有安裝過的電腦上經過安裝后才能使用;只能也XML格式輸出標注過的圖片,如果同時想要別的格式需要花費更多時間和人力;一次只能進行一種操作,只能在一個人對圖片標注完成后,另一個人才能對其進行檢查,例如所需要標注的物體范圍超出標準,而檢查的人沒有及時向標注人提出,那么標注人則要大量返回修改,造成時間和人力的浪費;不能對所標注的數量結果有準確的記錄,只能在所有標注結束后統一人工統計。labelimg雖然標注時只需要一個簡單的矩形框就能標注圖像中的物體,但是后期修改和統計需要耗費大量人力和時間,導致效率低。(2)labelme是一個圖形界面的圖像標注軟件,它是麻省理工的計算機科學和人工智能實驗室研發的圖像標注工具,同labelimg一樣隨著越來越多各行各業的人使用軟件也在不斷地根據顯現出來的問題進行升級。使用者能夠使用這個標注軟件對想要標注的圖片進行標記,在標注完成后形成數據集。labelme可以安裝在任何電腦上使用,只要輸入規定的命令和使用者想要的版本就可以隨意下載使用,是一個安裝便捷的在線圖像標注工具,用一條指令代替在電腦上繁雜的選擇安裝包安裝路徑等繁瑣的安裝過程和巨大的安裝空間。labelme在pycharm中安裝后,只要輸入labelme指令就可以打開使用了,方便快速,容易尋找。labelme與labelimg不同的是labelme是用一個一個的點來標注框選出不同的物體,而且由于可以比較精確的沿著不規則的物體框選,也減少了不必要的背景內容,可以減少數據集的大小。它在深度學習中主要被運用在Mask-RCNN中,因為可以對同一件物體內部進行再次標注而達到物體分割的效果。對于它的不足之處來說依舊需要大量的人力和時間來統計各類標注的多少。而且也無法進行及時修改,如果從開始就錯誤操作卻在最后才將錯誤改正時就需要重新全部修改,加大了使用者的工作量。針對上述兩個軟件的對比,本文選擇使用labelme軟件進行數據集的標注,原因是labelme軟件使用相對簡單明了,且安裝方便。以下為安裝及標注過程:在Anaconda的TensorFlow環境下安裝labelme軟件,輸入指令為pipinstalllabelme==3.16.7。輸入labelme指令打開界面,如圖1.10所示。圖1.10labelme界面勾選SaveAutomatically,實現圖片標注后自動保存。點擊左側OpenDir選擇需要標注的數據文件夾。點擊左側的createpolygons,回到圖片,按下鼠標左鍵會生成一個點,完成標注后會形成一個標注區域,同時彈出labelme的框,鍵入標簽名字,點擊OK或者回車完成標注,如圖1.11所示。圖1.11標注步驟將會自動生成json文件,文件中含有對需要識別的圖像物體所標注的矩形框的坐標、物體種類以及圖片編號(如圖1.12所示)。圖1.12json文件接著利用生成數據集相關程序生成算法訓練數據集文件夾,文件夾中包含imgs、label_viz、mask、yaml(如圖1.13所示)。這樣就最終形成了本文所要使用的完整的數據集。(a)(b)(c)(d)圖1.13數據集內部(a)imgs文件夾(b)label_viz文件夾(c)mask文件夾(d)yaml文件夾1.4實驗結果與分析實驗圖片訓練流程如下:先運用視覺系統采集圖像,并手動截取與螺栓相關圖片,然后,對螺栓表面和凹槽進行標注后使用Mask-RCNN卷積神經網絡算法進行訓練得到權重文件,用訓練出的權重文件對圖片進行檢測和分割,得到凹槽圖像,再對凹槽圖像使用直線算法,檢測出螺栓的凹槽直線,計算直線的角度,并使其與設定閾值相對比,得出螺栓是否松動。本論文主要針對于螺栓表面和凹槽的分割檢測,對于螺栓圖片進行預處理。其中,實驗步驟主要分為三步:準備數據集、修改訓練參數及訓練數據集和預測得出結果。在配置本文實驗的深度學習框架時,當前要用到的環境是TensorFlow(GPU)和Keras。具體實驗環境配置如表1.1所示。表1.1實驗環境名稱參數系統Windows10框架TensorFlow語言PythonCPUIntel(R)Core(TM)i7-8700CPU@3.20GHzGPUNVIDIAGeForceRTX2080RAM32GB實驗中共使用數據集500張,其中訓練集360張、驗證集40張,測試集100張。(如表1.2所示)在實驗過程中,使用主干網絡resnet101,分辨率為512×512的圖片。表1.2實驗圖片集匯總項目數目/張數據集500訓練集360驗證集40測試集100本文利用在coco數據集上訓練好的權重文件作為初始權重,這么做的好處可以減少網絡訓練的效率。在運行程序前要在程序內修改自己要分的類。接下來運行訓練程序,在運行前在程序下面修改ShapesConfig(Config)的內容,其中NUM_CLASS等于自己要分的類的數量加1。IMAGE_MAX_DIM、IMAGE_MIN_DIM、BATCH_SIZE和IMAGES_PER_GPU根據自身電腦的顯存情況進行修改。在修改RPN_ANCHOR_SCALES時要根據IMAGE_MAX_DIM和IMAGE_MIN_DIM。程序中STEPS_PER_EPOCH代表每個迭代訓練多少次。修改完成并運行訓練程序后能得到logs文件夾,里面是訓練圖片的相關權重。學習率決定了參數移動到最優值的速度快慢,學習率為1×e?5時,模型收斂越快,loss值下降較快,最后loss值也能下降到一個理想的位置。因網絡多次訓練,所以共有epoch數117個。當epoch數到80次后,loss值在0.1以下且趨于穩定。網絡loss如圖圖1.14loss曲線最后是進行預測測試。測試時運用訓練好的實驗權重可以得到的實驗結果包含:如圖1.15螺栓分割結果、接受一個被檢測的實例的最小值為0.7、檢測時非極大值抑制的閾值為0.3、特征金字塔網絡分類圖中全連接層大小為1024、區域提議網絡訓練時每張圖片用256個錨框等。(a)原圖(b)識別結果圖1.15實驗結果實驗表明,該方法能正確將圖片中螺栓的凹槽和表面進行分割,對螺栓表面檢測結果為100%,檢測結果如表1.3所示。表1.3實驗檢測結果匯總表項目數目/張測試集100正常識別(識別螺栓表面、凹槽)83未能識別(識別螺栓表面)17根據匯總表可知,測試集100張圖片中,有83張是能正確將圖片中螺栓的凹槽和表面進行分割并檢測的,同時,螺栓對于螺栓的凹槽又可以分為兩類正常的(如圖1.16)和有傾斜的(如圖1.17)。(a)原圖(b)識別結果圖圖1.16螺栓凹槽正常(a)原圖(b)識別結果圖圖1.17螺栓凹槽傾斜剩余的17張圖片是不能正確將圖片中螺栓的凹槽和表面進行分割并檢測的,出現這個問題的原因主要有:圖片曝光過度(如圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年四川天府文化職業學院單招職業技能考試題庫含答案詳解【培優】
- 2025年黑龍江省齊齊哈爾市高職單招職業技能考試題庫及完整答案詳解(網校專用)
- 2024年南充技師學院順慶高職部單招職業技能考試題庫帶答案詳解(培優)
- 2024年祁連遠達職業學院高職單招職業適應性測試考試題庫附答案詳解【培優A卷】
- 2025年貴州省六盤水市高職單招職業技能考試題庫含完整答案詳解【有一套】
- 2027年廣西工業職業學院高職單招職業技能考試模擬試卷附答案詳解(能力提升)
- 2024年西安數字經濟職業學院單招職業技能考試模擬試卷附答案詳解(達標題)
- 2027年天山數字學院高職單招職業技能考試模擬試卷含完整答案詳解(必刷)
- 2025年河北渤海技師學院高職高職單招職業技能考試題庫附答案詳解(突破訓練)
- 2026年唐山技師學院高職部高職單招職業技能考試題庫附答案詳解【A卷】
- 店長保密協議書
- 展館安全總結講解
- 宮外孕超聲診斷
- 贈予林地協議書模板
- 國際胰腺病學會急性胰腺炎修訂指南(2025年)解讀課件
- 銷售領導力培訓課件
- 家用空氣凈化器除異味寵物適配推廣方案
- GB/T 45942-2025填充礦物油的電氣設備溶解氣體分析(DGA)在電氣設備工廠試驗中的應用
- 早癌篩查教學課件
- 重癥醫學科護理進修回院匯報
- FZ-T64103-2023礦用聚酯纖維柔性假頂網
評論
0/150
提交評論