前言:想要寫出一篇引人入勝的文章?我們特意為您整理了農業病蟲害識別系統數據庫設計范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:本文嘗試將傳統數據庫與微信公眾平臺的服務號結合,以農業病蟲害識別系統為例,實現基于微信公眾號的圖像數據庫建設,為農業種植戶搭建了一個便捷的病蟲害查詢、識別、預測平臺。
關鍵詞:微信平臺;病蟲害;數據庫
1引言
智慧農業是物聯網技術在現代農業領域的應用,主要是對農作物生長環境信息,如土壤水分和溫度、空氣溫度與濕度、光照強度等參數進行實時監測和監控。除了環境因素,病蟲害也經常導致農作物減產或者絕收。如果能對病蟲害進行準確的分類識別,對病蟲害進行預測預報,就可大大減少農民的損失。如果靠人眼進行識別,存在速度慢、準確性差和信息共享低等缺點。隨著數據庫技術、圖像識別技術和移動互聯技術的發展,開發一款基于微信公眾號的病蟲害識別系統成為可能。微信是騰訊公司推出的一款免費即時網絡通信產品,它為個人和組織提供了一對多的自媒體活動平臺,簡稱微信公眾號。在該平臺可以實現文字、圖片、語音、圖文鏈接的全方位溝通和互動。基于農民用戶目前智能手機的擁有量、手機操作技能和手機使用習慣,相對動態WEB網頁和專門的手機APP軟件,借助微信公眾號平臺開發的查詢識別系統將更具方便性和操作性,開發難度相對也較小[1]。病蟲害識別系統設計中最關鍵的就是數據庫的設計,特別是圖像庫的設計;在病蟲害診斷中,根據病蟲害圖像的特征識別出病蟲害的種類,可以避免文字描述的主觀性。但現有害蟲圖像庫主要存儲的是圖片,這些圖片大部分是在自然場景中拍攝的,害蟲的背景圖像復雜,這些圖片只能由專業人員通過人眼和人腦比對識別害蟲,然后對農民施藥進行指導。要想達到快速、準確、智慧的機器識別就必須要設計一個科學、合理的圖像數據庫。
2數據庫設計簡介
本系統數據采用Oracle11g,具有高性能、伸展性、可用性和安全性,并能在低成本服務器和存儲設備組成的網格上運行。數據庫的設計內容一般包括:需求分析、概念結構設計、邏輯結構設計、物理結構設計、數據庫的實施和數據庫的運行和維護[2]。本系統相對較小,數據庫設計相對簡單,本文重點介紹數據需求分析和邏輯設計。
2.1需求分析
本系統基于深度學習的圖像識別云端服務平臺,能夠通過云計算SPARK框架訓練深度學習算法模型,對圖像進行目標檢測和識別,為客戶提供簡單易用的圖像識別服務,并將目標識別應用到互聯網及移動應用場景中。本系統利用微信公眾號作為用戶的移動互聯入口,用戶通過此入口上傳農作物圖像,SPARKAPI實現圖像預處理、對圖像進行特征提取,最終完成圖像識別分類,最后將消息返回給用戶;數據庫后臺可以根據病蟲害識別結果,對病蟲害發生的區域、時間、農作物種類、病蟲害種類、病蟲害程度、溫度、濕度等緯度進行大數據分析,并對未來病蟲害的產生進行預測、預警。同時用戶也可以通過該入口進行用戶交互和數據訪問,如查看歷史病蟲害發生情況等。
2.2邏輯設計
數據庫設計中的邏輯設計按照業務需求和模塊需要設計代碼表和數據存儲表,表設計按標準化第三范式(3NF),達到性能、擴展性和數據完整性方面的最佳平衡。表設計中使用關聯字段創建外鍵,所有的鍵都必須唯一,外鍵總是關聯唯一的鍵字段[3]。本系統建立了24個數據列表,分別為:農作物門類、大類、小類、種類代碼表4個,農作物病蟲害綱類、目類、科類、屬類、本體代碼表5個,病蟲害數據采集表、采集子表2個,病蟲害圖片預處理、圖片顏色特征均值、方差、斜度、紋理特征、形態特征等預處理表6個,病蟲害樣本、樣本顏色特征均值、方差、斜度、紋理特征、形態特征等樣本表6個,病蟲害識別結果表1個。
2.3物理設計
數據庫物理設計是根據特定數據庫管理系統所提供的多種存儲結構和存取方法,對具體的應用任務選定最合適的物理存儲結構,包括文件類型、索引結構、存取方法和存取路徑等。首先建立Oracle11g實例NZWBCH,其次是建立表空間TS_BZW-BCH,三是建立BCHFZ用戶并分配權限,四是建立各類數據庫對象,包括表、索引、視圖、序列等,其中表設計是核心內容。以下就是表設計的數據字段舉例:(1)農作物門類代碼表DM_NZW_ML,該表存儲了農作物一級分類,包含了農作物門類代碼和門類名稱[NZW_ML_DM、CHAR(2);NZW_ML_MC、VARCHAR2(200)]。同樣可以建立農作物大類、小類、種類代碼表,農作物病蟲害綱類、目類、科類、屬類、本體代碼表的字段。(2)病蟲圖像特征值是圖像識別的重點。其中病蟲圖片均值顏色特征表BCH_TZ_YS_JZ存儲通過微信上傳的病蟲圖片的顏色特征矩陣,包含了主鍵、預處理表ID、處理日期、矩陣行次、紅色特征值、綠色特征值、藍色特征值[UUID、VARCHAR2(30);YCLUUID、VARCHAR2(30);CLRQ、DATE;HC、NUMBER(5);JZ_R_TZZ、CLOB;JZ_G_TZZ、CLOB;JZ_B_TZZ、CLOB]。同樣可建立病蟲圖片方差顏色特征表BCH_TZ_YS_FC,該表存儲通過微信上傳的病蟲害數圖片的顏色特征矩陣,包含了主鍵、預處理表ID、處理日期、矩陣行次、紅色綠色藍色方差特征值;病蟲圖片斜度顏色特征表BCH_TZ_YS_XD,該表存儲通過微信上傳的病蟲害數圖片的顏色特征矩陣,包含主鍵、預處理表ID、處理日期、矩陣行次、紅色綠色藍色斜度特征值;病蟲圖片均值紋理特征表BCH_TZ_WL,該表存儲通過微信上傳的病蟲害數圖片的紋理特征矩陣值,包含了主鍵、預處理表ID、處理日期、矩陣行次、文理特征值;病蟲圖片均值形態特征表BCH_TZ_XT,該表存儲通過微信上傳的病蟲害數圖片的形態特征值,包含了主鍵、預處理表ID、處理日期、圓度、偏心率、主軸方向角度;同理病蟲害樣本、樣本顏色特征均值、方差、斜度、紋理特征、形態特征等樣本表6個和病蟲圖片特征值相關表設計相類似。(3)病蟲害識別結果表BCH_SBJG,該表存儲通過微信上傳的病蟲害數據識別結果,包含了:主鍵、數據采集UUID、微信用戶ID、病蟲害匹配結果、病蟲害代碼、匹配結果說明、匹配日期、結果返回日期。該表記錄了微信公眾號最終反饋的信息內容。
2.4系統數據流程
結合需求分析與數據庫邏輯和物理設計,數據信息在系統中的流動、處理和存儲情況描述如下:病蟲數據采集->錄入采集情況->上傳圖片->數據存儲在云端數據庫中->圖像數據預處理(平滑、去噪、增強、分割)->圖像特征提取征->存儲顏色特征矩陣、紋理特征矩陣和形態特征數據,然后將錄入的圖形特征值與樣本特征值進行匹配。如果匹配成功,將存儲匹配成功的結果向微信用戶推送,并提出防治意見。同時后臺存儲微信用戶反饋匹配的正確結果和防治的結果,進行病蟲害大數據分析。如果匹配失敗,返回失敗信息并存儲無法匹配的結果。
3結束語
本系統通過微信平臺采集病蟲害的數據,用圖像識別的技術對病蟲害數據進行識別、反饋,具有極高的社會價值和商業價值。在系統使用多年以后,病蟲害數據會大量存儲,算法也會隨著系統的升級而優化,用戶的反饋對圖像匹配進行評價,進而改進樣本數據,提高識別的準確性。大數據分析按照病蟲害發生的區域、溫度、濕度、時間、農作物種類和嚴重程度,病蟲害防治的效果等進行分類分析、趨勢分析、防治分析,可對病蟲害的發生進行預測,農業公共部門可指導相關部門進行病蟲害防治,農藥生產部門可根據歷史數據改進農藥生產,根據預測數據開展農藥生產。而這一切的基礎是數據庫的合理設計。
參考文獻:
[1]宗燕燕.基于微信公眾平臺的圖書館特色數據庫建設[J].圖書館工作與研究,2016(9):59.
[2]李熔明.基于智能終端微信中的騰訊智慧校園數據庫設計[J].電腦迷,2017(11):170.
[3]周運姐.基于微信端數字化城市信息管理系統數據庫設計與實現[J].電子商務,2017(3):51.
作者:施紀紅 單位:蘇州健雄職業技術學院電子信息學院