陸衛忠 黃宏梅 楊 茹 曹 燕
1(蘇州科技大學電子與信息工程學院 江蘇 蘇州 215009)2(江蘇省建筑智慧重點實驗室 江蘇 蘇州 215009)
為了改善人們身邊的居住和工作環境,在家里或者辦公的地方放一些花卉既可以通過光合作用吸收二氧化碳,凈化室內的空氣,也可以陶冶情操。然而,由于大多數人缺乏專業的花卉養護技能,需要聘請專業人員幫助養護,導致花卉的養護成本很高。
隨著信息技術和自動化技術在不斷發展,國內外的智能花卉養護技術也已經逐漸發展起來。瑞貝克皮特森等[1]發明了一種智能的花盆,在這種花盆中安裝了傳感裝置,通過其可以監控植物的溫濕度,當有人靠近它的時候,它會通過發出聲音來表示自己的需求。東京的水內郁夫[2]研發出一種花盆機器人,可以根據實際的需求來自動的調節植物的環境溫度和光照強度,從而使植物能夠健康的生長。文獻[3]研制出了一個土壤濕度檢測儀器,能夠定時地檢測出植物土壤濕度,從而根據測量得到的土壤濕度和植物生長所需的最佳濕度的不同來決定澆水量。文獻[4]設計出了一種智能的家庭澆花機器,該機器可以實現花卉的自動澆灌,并對不同的花卉采取不同的控制方式。文獻[5]研究出了對黃瓜種植環境參數的自動監測方法,實現了黃瓜種植的自動化。可以看出智能花卉養護技術已經有了很大的進展,但并未能徹底地解決花卉養護過程中的人工干預,即無法實現花卉的自動化養護。
伴隨著人工智能的不斷發展,構建深層網絡結構進行多層次特征學習的人工智能方法在大規模圖片分類領域取得了很大的成功[6]?;谇捌谏疃葘W習在圖像處理中的應用研究基礎,本文嘗試將深度學習應用在花卉自動養護系統中,使其突破只能依靠人工觀測判斷花卉生長狀況的限制,實現一個基于深度學習的花卉自動養護系統,從而實現花卉養護全過程的自動化。
本文設計出一種基于深度學習的智能花卉自動養護系統,來解決傳統花卉養護不能完全自動化養護花卉的問題。該系統可以全天候地對花卉實行自動監控,能自動識別出花卉的當前生長狀況,并生成相應指令,然后將控制指令傳給控制器來控制各模塊,使得其環境參數迅速做出相應調整,實現花卉種植和養護過程的智能化、自動化的管理。這樣可以大大降低人力、物力的投入,還可以降低花卉種植和養護的成本,從而提高花卉的種植品質。
由于花卉的生長狀況會隨生長環境的變化而改變[7-8],且不容易被肉眼所識別。因此,設計了一種基于深度學習的智能花卉養護系統,如圖1所示。本系統由三大部分組成:環境采集單元、控制單元和主控制器單元。環境采集單元由傳感器單元和圖像單元兩部分組成,采集的數據分別經SPI總線及8位數據口輸入到主控制器??刂茊卧獔绦兄骺刂破飨逻_的命令,驅動如水泵、加濕器、燈等設備的工作。主控制器是整個系統的核心部分,接收溫濕度、光照強度、土壤濕度等傳感器采集的花卉生長環境數據以及采集到的花卉圖像數據,利用人工神經網絡分析判斷花卉的生長狀況,形成控制決策,驅動執行機構控制相應的設備(如水泵、風機、通風窗等)的動作,從而達到調節花卉的生長環境的目的[9]。

圖1 系統架構圖
主控制器是一個控制系統的核心,考慮到需要對花卉空氣溫濕度、光照以及土壤濕度值等進行實時采集,因此,MCU采用了低功耗的3b+樹莓派[10]。圖2為3b+樹莓派的引腳分布圖。

圖2 3b+樹莓派引腳分布圖
有很多環境因素影響著花卉的生長,其中影響較大的有:花卉環境空氣溫度、花卉環境空氣濕度、光照強度和土壤濕度等。為了使得花卉的環境因子能夠盡可能被全面采集,系統則選取了空氣溫濕度傳感器、光照傳感器、土壤濕度傳感器[11]。傳感器具體參數如表1所示。

表1 傳感器參數
花卉的生長狀況總是伴隨著生長環境的變化而變化,因此當環境發生變化時,花卉本身的形狀和顏色也會發生相應的變化[12]。在本系統中以花卉圖像為花卉生長狀況判斷的主要依據,采用型號為SY003-V01的分辨率為1 000×1 000的CMOS工業攝像機作為圖像采集設備。
執行控制部分由3b+樹莓派通過繼電器來控制終端設備(如風機、卷簾、水泵、噴頭等)的啟停。根據實際情況,系統使用光耦控制電路與驅動電路隔離的6路繼電器模塊,使得其可以驅動大功率負載[13]。圖3為繼電器控制原理圖。

圖3 繼電器控制原理圖
軟件系統由以下3個模塊組成:環境采集節點模塊、主控制器模塊、控制模塊。其中環境采集節點模塊由傳感器數據和圖像采集模塊組成?;?b+樹莓派的主控制器模塊主要由基于深度學習的花卉生長狀況識別模型以及通信模塊組成。控制模塊主要由執行機構控制的各個終端設備子模塊組成(如風機、卷簾、水泵等)[14]。系統總體軟件設計框圖如圖4所示。
(D)在磁鏡附近裝上交流電極(耐高溫,可泠卻的),粒子在鎢電極作用下,會來回于腔體,同時可減小電位差,使平行于磁力線運動離子與磁力線的夾角增大,減小泄漏,增長約束時間。

圖4 軟件系統組成框圖
3.1.1傳感器參數采集子模塊
基于深度學習的智能花卉養護系統中采集模塊采用4個傳感器模塊分別用來完成空氣溫度、空氣濕度、光照強度以及土壤濕度等花卉生長環境參數的采集,然后傳輸到主控制器中,定時器時間達到時,主控制器會向傳感器模塊發送開始收集數據的工作信號,傳感器模塊收到指令后會立即開始工作,并將采集到的數據傳回到主控制器進行處理。傳感器數據采集程序流程如圖5所示。

圖5 環境數據采集模塊流程
3.1.2花卉圖像采集子模塊
當圖像采集節點收到主控制器的觸發命令時,圖像采集節點將開始采集花卉的圖像,然后發送出去。數據傳輸到主控制器中,并存儲在主控制器中,以便進行花卉圖片的進一步分析,花卉圖像采集節點的工作流程如圖6所示。

圖6 圖像數據采集模塊流程
卷積神經網絡(Convolutional neural network,CNN)已經被廣泛應用到圖像處理領域[15-16]。卷積神經網絡中包含輸入層、卷積層、池化層、全連接層以及輸出層[17]。一般情況下,卷積層和池化層是交替設置的,即一個卷積層后面連接一個池化層,池化層再連接一個卷積層,如此交替連接。卷積層由卷積操作、非線性響應操作以及池化操作組成。卷積操作中不同的濾波器能夠獲得不同的輸出數據,如顏色、形狀等圖像的特征信息,再通過非線性響應操作以及池化操作獲得最大化的特征[18-19]。因此,可以將卷積神經網絡應用在識別花卉生長狀況的技術中。
然而,花卉的某些表象特征是由于不同的環境因素造成,如果僅依靠花卉生長狀況圖片進行分類,很有可能出現判別失誤的情況。所以,本文設計出一種環境數據來輔助的具有兩個輸入通道的卷積神經網絡進行圖像分類,提高了判別的準確率,可以更好地識別花卉的生長狀況。因此,本文設計了環境數據輔助網絡。圖7為模型框架圖,將圖片輸入到卷積神經網絡中進行訓練,然后將傳感器采集到的數據與最佳環境數據進行評估得到的結果與卷積神經網絡分類得到的分類結果結合,最后連接起來進行再一次的分類。

圖7 圖像識別模型框架
3.2.1深度學習網絡模型構建
(1) 正向傳播過程。向網絡中集中地輸入已經準備好的數據樣本,再經過一級一級的傳播,最終可以得到輸出結果,網絡中上一層的輸出則為當前層的輸入。卷積層將剪裁好的3幅64×64的花卉圖像的灰度圖像輸入到卷積神經網絡中,再對這些64×64的特征圖矩陣進行卷積運算。進入池化層后,則對卷積層獲得的結果進行降維操作。隨后進入全連接層,該層為傳統的多層感知器網絡,其中的每一個神經元與上層的每個神經元都是相連接的,并對池化層中的信息進行整合。本文將池化層中得到的花卉圖片特征圖與傳感器采集到的數據一起整合到全連接層中。最后,輸出層采用了softmax邏輯回歸函數對結果進行分類,可以得到花卉圖像的8種分類結果:空氣溫度過高、空氣溫度過低、空氣濕度過高、空氣濕度過低、光照過強、光照過弱、土壤濕度過高、土壤濕度過低。
(2)反向傳播過程。該過程是使用鏈式求導法則迭代地對每一層的神經元節點進行梯度計算,并計算實際輸出和相應理想輸出之間的誤差。設誤差函數為平方誤差函數:
(1)

(2)
調整權值是為了不斷地減小誤差,因此權值調整量與誤差的負梯度成正比關系,即:
(3)
式中:負號代表梯度下降常數;η代表比例系數,在訓練中表示學習速率;△則代表學習規則。
綜上所述,該方法是從底層開始,反方向計算誤差向量,并且反復地利用鏈式法則,不斷地反向計算累計梯度的損失值,使得損失函數的值降到最低。
3.2.2花卉生長狀況預測
訓練數據使用采集的吊蘭的環境參量和其對應的生長狀況圖像。因此,選用2018年8月份記錄整理的6 000組經驗數據,其中,4 800組數據作為訓練數據,1 200組數據作為測試數據。預測模型的實現主要分為下列四個步驟:
(1)數據樣本預處理。由于卷積神經網絡中含有全連接層的網絡輸入數據的大小是固定的,所以必須實現固定輸入圖像的大小。然而在圖像統一大小的過程中會有縮放,因此圖像會扭曲,為盡量避免模型受到無關因素的干擾,所以本文通過邊界填充或剪裁的方法來減少扭曲或失真。
(2)模型構建。本設計選用卷積神經網絡結合傳感器采集的環境數據來構建花卉生長狀況預測模型。
(3)模型訓練。對于該模型,網絡在Tensorflow環境中進行訓練, 在訓練過程中,隨機梯度下降(SGD)算法的批量大小設置為256,最大迭代次數設置為2 000,學習率初始值為0.01。如果總損失沒有下降,自動下降1/10直到0.000 01。
(4)花卉生長狀況預測結果分析。本文從網絡中減少了傳感器數據通道,并進行與上述相同的實驗。傳感器輔助網絡和一般網絡的對比結果顯示在表2中。這表明環境數據確實有助于分類。

表2 性能比較結果 %
主控制器可根據花卉識別方法判別出的花卉生長狀況,自動生成合理的控制方案。再通過通信線路把控制指令向控制機構傳送,進行各部件的開關操作。表3為花卉各環境特征以及控制策略的對應關系。

表3 控制策略
在花盆的周圍部署了空氣溫濕度傳感器,以及在花盆里部署了其他相關的傳感器來構建模擬的實驗平臺,土壤材料則選取了普通的適合花卉生長的泥土,花卉則選取喜濕的吊蘭,圖8為系統測試平臺圖。在系統工作了一段時間之后,可以提取出寄存器中存儲的花卉環境數據。圖9為未使用系統檢測到的部分花卉環境數據值,圖10為系統工作后自動養護模式下的部分花卉環境數據值。

圖8 環境模擬平臺

圖9 未使用系統部分環境數據

圖10 使用系統后的部分環境數據
通過比較未使用系統的部分環境數據值和系統工作后的部分環境數據值,可以看出使用系統后自動養護模式能夠自動判別出花卉當前的生長狀況并能夠及時地對花卉的環境進行改善,使得花卉的生長環境參數穩定在最佳環境值附近,從而可以讓花卉能夠很好地生長。測試結果表明,該系統能夠實現自主養花護花的功能,并且能夠達到智能養花的目的。
本文提出的一種基于深度學習的智能花卉養護系統,突破了原始花卉養護中的只能通過人工觀測來判別花卉生長狀況的局限,擺脫了花卉養護需要高度專業化的花卉養護知識的限制,降低了花卉養護的成本。將該系統應用到辦公室花卉養護裝置中,在不需要專人干預的情況下,能夠提高花卉養護的成功率,減輕花卉養護的工作量,從而降低花卉養護的成本,該系統也可應用在農作物的種植中,同樣也能幫助農作物更好地生長。