<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          基于卷積神經(jīng)網(wǎng)絡(luò)的蘑菇識別微信小程序

          共 5001字,需瀏覽 11分鐘

           ·

          2023-07-09 06:12

          a7ecb685c662bb80d4720b0cbfb17002.webp

          向AI轉(zhuǎn)型的程序員都關(guān)注了這個號??????



          項(xiàng)目描述

          本項(xiàng)目是基于SpringBoot和圖像分類算法用來識別蘑菇的微信小程序,根據(jù)拍攝上傳的蘑菇圖片,通過python腳本調(diào)用訓(xùn)練好的模型,經(jīng)過后端處理,最后返回識別結(jié)果的類別及其識別準(zhǔn)確率。

          技術(shù)亮點(diǎn)

          • 采用MobileNetV2進(jìn)行作為蘑菇圖像分類的特征提取網(wǎng)絡(luò),使模型輕量化,使得參數(shù)量減少了60%,加快訪問速度

          • 通過@ControllerAdvice注解實(shí)現(xiàn)攔截器,利用@ExceptionHandler注解捕捉所有異常,進(jìn)行統(tǒng)一處理

          • 為提升查詢效率,在蘑菇學(xué)名字段上建立了索引

          1.1 總體設(shè)計(jì)

          介紹了小程序的整體系統(tǒng)架構(gòu)以及使用小程序進(jìn)行蘑菇識別的流程。

          1.1.1 系統(tǒng)架構(gòu)

          小程序采用前后端分離架構(gòu),前端采用taro框架,后端采用springboot框架,并通過nginx進(jìn)行請求轉(zhuǎn)發(fā)。

          ?7d196487272293ca6b94ec178c289bdd.webp

          1.1.2 識別流程

          使用小程序?qū)δ⒐竭M(jìn)行識別時,小程序會向后端發(fā)起請求,后端再調(diào)用python腳本進(jìn)行識別,并從數(shù)據(jù)庫查詢蘑菇具體信息。

          4bd082bdb569304e98ce37c6c92102f5.webp

          1.2 算法實(shí)現(xiàn)

          介紹了蘑菇識別算法采用的數(shù)據(jù)集,識別算法的設(shè)計(jì)與實(shí)現(xiàn),以及算法的識別效果與所做的改進(jìn)。


          項(xiàng)目開源代碼獲取地址:

          關(guān)注微信公眾號 datayx? 然后回復(fù)? 蘑菇 ? 即可獲取。


          1.2.1 數(shù)據(jù)集

          在kaggle獲取,地址:

          https://www.kaggle.com/datasets/maysee/mushrooms-classification-common-genuss-images

          該數(shù)據(jù)集中有9個最常見的北歐蘑菇屬圖像文件夾。每個文件夾包含300到 1500個蘑菇屬的選定圖像。標(biāo)簽是文件夾的名稱。

          0c822fc72fe6aa458ef2400e1a87477a.webp

          5e5456d424caf4963cc29c62f14ae5db.webp

          1.2.2 算法設(shè)計(jì)與實(shí)現(xiàn)

          處理數(shù)據(jù)集:用tensorflow.image.decode_jpeg和tensorflow.image.resize 對圖片進(jìn)行標(biāo)準(zhǔn)化。

          訓(xùn)練:將圖片與標(biāo)簽(文件夾名即標(biāo)簽)打包后,將前百分之80設(shè)置為訓(xùn)練集,后百分之20設(shè)置為驗(yàn)證集。利用tf.keras.Sequential構(gòu)建模型model,最后調(diào)用model.fit進(jìn)行訓(xùn)練。

          識別:利用tf.keras.Sequential構(gòu)建模型model,并調(diào)用

          model.load_weights加載訓(xùn)練好的模型,最后調(diào)用model.predict進(jìn)行預(yù)測。

          1.2.3 識別結(jié)果與改進(jìn)

          訓(xùn)練集準(zhǔn)確率:98.53%,測試集準(zhǔn)確率:72.32%。

          64057c6287b668b9a467c8378ce9ab04.webp

          129abe3972db5f414c66f8c0d4cd6421.webp

          可以發(fā)現(xiàn)這個結(jié)果很不理想。一開始我以為是因?yàn)檫^擬合了,于是嘗試增加dropout,但發(fā)現(xiàn)并沒有起到什么作用[張1]?

          于是我去看了看數(shù)據(jù)集中的數(shù)據(jù),發(fā)現(xiàn)有很多圖片是臟數(shù)據(jù),比如:

          04682053574060f0c5f70838571c34e7.webp

          之后我對這些臟數(shù)據(jù)進(jìn)行了手動刪除,同時我發(fā)現(xiàn)圖片中干擾元素較多(比如背景中的花草),可能會導(dǎo)致網(wǎng)絡(luò)無法很好地對蘑菇進(jìn)行分類。于是我嘗試使用了github上的開源庫https://github.com/nadermx/backgroundremover 對數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行去背景處理。

          去背景腳本:遍歷原圖片,對當(dāng)前圖片執(zhí)行 os.system('backgroundremover -i "'+original_file+'" -o "'+new_file+'"')命令進(jìn)行去除圖片操作,并將結(jié)果存入另一個文件下。

          去背景前:

          356d5a2c6e61fefef23493561e58a243.webp

          去背景后:

          302f7332132d3ba3409ca5b8d4a2c7ed.webp

          最后使用去除了臟數(shù)據(jù),并進(jìn)行了去背景操作后的數(shù)據(jù)集進(jìn)行訓(xùn)練,訓(xùn)練集準(zhǔn)確率:99.88%, 測試集準(zhǔn)確率:81.25%。

          c022647b813ed6d24c4f654bb756d535.webp

          6423375df34420904f8564d9e616e2fc.webp

          1.3 應(yīng)用實(shí)現(xiàn)

          介紹了小程序應(yīng)用數(shù)據(jù)庫、后端、前端的設(shè)計(jì)與實(shí)現(xiàn)。

          1.3.1 數(shù)據(jù)庫

          采用Mysql數(shù)據(jù)庫。由于系統(tǒng)比較簡單,只有一張表:mushroom。

          mushroom表字段:id(主鍵),name(蘑菇名稱),scientific_name (學(xué)名),species(所屬科屬),toxicity(毒性),feature(特征),文獻(xiàn)(documents),img_path(圖片路徑)。

          其中為提升查詢效率,在scientific_name字段上建立了索引。

          1.3.2 后端

          用springboot框架進(jìn)行開發(fā),用mybatis-plus框架進(jìn)行數(shù)據(jù)庫交互。

          核心接口邏輯:將前端傳過來的圖片上傳至服務(wù)器指定路徑下-->利用Runtime.getRuntime().exec(command)執(zhí)行python命令:python identify.py <圖片路徑>(python腳本讀取該路徑下的圖片進(jìn)行識別)--> 讀取python腳本打印出來的結(jié)果(所有類別及其識別準(zhǔn)確率),并進(jìn)行排序-->刪除上傳至服務(wù)器的圖片-->返回識別準(zhǔn)確率前三的類別。

          統(tǒng)一錯誤處理:通過@ControllerAdvice注解實(shí)現(xiàn)一個攔截器,并利用@ExceptionHandler(value = Exception.class)注解捕捉所有異常,進(jìn)行統(tǒng)一處理。

          1.3.3 前端

          基于Taro(React)框架進(jìn)行開發(fā)。

          上傳圖片:使用Taro.chooseImgae api選擇圖片,選擇成功后調(diào)用Taro.uploadFile api將圖片上傳至服務(wù)器。

          頁面間傳遞對象參數(shù):父頁面調(diào)用Taro.eventCenter.trigger api觸發(fā)事件,將參數(shù)放入事件中。子頁面調(diào)用Taro.eventCenter.once api監(jiān)聽事件,取得參數(shù)。

          獲取蘑菇詳細(xì)信息:通過Taro.request api調(diào)用后端接口獲取詳細(xì)信息。

          1.4 效果展示

          使用“識菇”微信小程序進(jìn)行蘑菇識別的效果如下:

          c13579168712684da8ae297112ba1c56.webp?3b52d23414b21df79b0c407afde0ac04.webp?88254cf9c5c93eccf28aa1ce0a044dbc.webp?c3f9d23b7f39ec0efe8926f1565d60e7.webp?bc20146418b85eab6eb888c9dfa5a811.webp


          機(jī)器學(xué)習(xí)算法AI大數(shù)據(jù)技術(shù)

          ?搜索公眾號添加:? datanlp

          長按圖片,識別二維碼




          閱讀過本文的人還看了以下文章:


          TensorFlow 2.0深度學(xué)習(xí)案例實(shí)戰(zhàn)


          基于40萬表格數(shù)據(jù)集TableBank,用MaskRCNN做表格檢測


          《基于深度學(xué)習(xí)的自然語言處理》中/英PDF


          Deep Learning 中文版初版-周志華團(tuán)隊(duì)


          【全套視頻課】最全的目標(biāo)檢測算法系列講解,通俗易懂!


          《美團(tuán)機(jī)器學(xué)習(xí)實(shí)踐》_美團(tuán)算法團(tuán)隊(duì).pdf


          《深度學(xué)習(xí)入門:基于Python的理論與實(shí)現(xiàn)》高清中文PDF+源碼


          《深度學(xué)習(xí):基于Keras的Python實(shí)踐》PDF和代碼


          特征提取與圖像處理(第二版).pdf


          python就業(yè)班學(xué)習(xí)視頻,從入門到實(shí)戰(zhàn)項(xiàng)目


          2019最新《PyTorch自然語言處理》英、中文版PDF+源碼


          《21個項(xiàng)目玩轉(zhuǎn)深度學(xué)習(xí):基于TensorFlow的實(shí)踐詳解》完整版PDF+附書代碼


          《深度學(xué)習(xí)之pytorch》pdf+附書源碼


          PyTorch深度學(xué)習(xí)快速實(shí)戰(zhàn)入門《pytorch-handbook》


          【下載】豆瓣評分8.1,《機(jī)器學(xué)習(xí)實(shí)戰(zhàn):基于Scikit-Learn和TensorFlow》


          《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》PDF+完整源碼


          汽車行業(yè)完整知識圖譜項(xiàng)目實(shí)戰(zhàn)視頻(全23課)


          李沐大神開源《動手學(xué)深度學(xué)習(xí)》,加州伯克利深度學(xué)習(xí)(2019春)教材


          筆記、代碼清晰易懂!李航《統(tǒng)計(jì)學(xué)習(xí)方法》最新資源全套!


          《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》最新2018版中英PDF+源碼


          將機(jī)器學(xué)習(xí)模型部署為REST API


          FashionAI服裝屬性標(biāo)簽圖像識別Top1-5方案分享


          重要開源!CNN-RNN-CTC 實(shí)現(xiàn)手寫漢字識別


          yolo3 檢測出圖像中的不規(guī)則漢字


          同樣是機(jī)器學(xué)習(xí)算法工程師,你的面試為什么過不了?


          前海征信大數(shù)據(jù)算法:風(fēng)險概率預(yù)測


          【Keras】完整實(shí)現(xiàn)‘交通標(biāo)志’分類、‘票據(jù)’分類兩個項(xiàng)目,讓你掌握深度學(xué)習(xí)圖像分類


          VGG16遷移學(xué)習(xí),實(shí)現(xiàn)醫(yī)學(xué)圖像識別分類工程項(xiàng)目


          特征工程(一)


          特征工程(二) :文本數(shù)據(jù)的展開、過濾和分塊


          特征工程(三):特征縮放,從詞袋到 TF-IDF


          特征工程(四): 類別特征


          特征工程(五): PCA 降維


          特征工程(六): 非線性特征提取和模型堆疊


          特征工程(七):圖像特征提取和深度學(xué)習(xí)


          如何利用全新的決策樹集成級聯(lián)結(jié)構(gòu)gcForest做特征工程并打分?


          Machine Learning Yearning 中文翻譯稿


          螞蟻金服2018秋招-算法工程師(共四面)通過


          全球AI挑戰(zhàn)-場景分類的比賽源碼(多模型融合)


          斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)


          python+flask搭建CNN在線識別手寫中文網(wǎng)站


          中科院Kaggle全球文本匹配競賽華人第1名團(tuán)隊(duì)-深度學(xué)習(xí)與特征工程



          不斷更新資源

          深度學(xué)習(xí)、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、python

          ?搜索公眾號添加:? datayx??


          瀏覽 115
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中文字字幕一区二区三区四区五区 | 国产精品扒开腿做爽 | 午夜性爱片 | 青草久久久久 | 波多野结衣一区二区三区中文字幕 |