張志杰
摘 要:視頻監(jiān)控系統(tǒng)及其應(yīng)用是農(nóng)業(yè)物聯(lián)網(wǎng)中的重要研究方向之一。使用傳統(tǒng)監(jiān)控器材的系統(tǒng),在復(fù)雜農(nóng)業(yè)環(huán)境下,針對(duì)不同工作狀態(tài)進(jìn)行調(diào)整較為困難,增添新的功能比較費(fèi)時(shí)費(fèi)力。因此,引入軟件應(yīng)用框架以及模塊化設(shè)計(jì)對(duì)其加以改進(jìn)。其中,軟件框架采用分層、分塊的應(yīng)用架構(gòu),通過層次進(jìn)行系統(tǒng)功能的劃分,通過分塊進(jìn)行模塊功能的集中。模塊化設(shè)計(jì)采用功能相對(duì)獨(dú)立、接口標(biāo)準(zhǔn)統(tǒng)一的設(shè)計(jì)。提出一個(gè)基于物聯(lián)網(wǎng)架構(gòu)的模塊化監(jiān)控解決方案,經(jīng)實(shí)踐檢測(cè),該方案具有簡(jiǎn)單、快速、高效、易于二次開發(fā)等優(yōu)點(diǎn)。
關(guān)鍵詞:物聯(lián)網(wǎng);智能監(jiān)控;系統(tǒng)架構(gòu);模塊化設(shè)計(jì)
DOI:10.11907/rjdk.171391
中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2017)009-0114-03
Abstract:Large-scale monitoring system and its application is one of the important problems in agricultural monitoring and control network. The traditional equipment monitoring system, for complex environments under different working conditions, hard to adjust, hard to add new features, and the adjustment for system need is time-consuming. Therefore, the paper introduce that the method of modular design and the application frame to improve the effectiveness of surveillance system. In this system, the functions were divided by level, the modules were divided according to respective features, and some similar functionally modules were putted in one of same block. The modular were designed by function in independent style,and the interface were designed in same unified standard. This paper presents and implements a modular monitoring solution based on the Internet of Things technology. The method was tested by practice and the result was efficient and easy to deployed.
Key Words:internet of things; intelligent monitoring; system architecture; modular design
0 引言
農(nóng)業(yè)物聯(lián)網(wǎng)(Agricultural Internet of things)涉及的內(nèi)容較多,例如:農(nóng)產(chǎn)品溯源系統(tǒng)、農(nóng)業(yè)智能監(jiān)控系統(tǒng)、農(nóng)業(yè)自動(dòng)化控制系統(tǒng)、農(nóng)產(chǎn)品物流系統(tǒng)、農(nóng)業(yè)管理信息系統(tǒng)等。其中,農(nóng)業(yè)智能監(jiān)控系統(tǒng)(Agricultural Intelligent Monitoring System)因其獲取視頻信息較為簡(jiǎn)捷、方便,可對(duì)視頻信息進(jìn)行后臺(tái)服務(wù)器算法的自動(dòng)分析,能為其它相關(guān)系統(tǒng)(如控制系統(tǒng)、管理信息系統(tǒng)、育種系統(tǒng)等)提供管理、數(shù)據(jù)控制等功能,因此該系統(tǒng)在“物聯(lián)網(wǎng)+農(nóng)業(yè)”的應(yīng)用中起著重要作用。如今的農(nóng)業(yè)智能監(jiān)控系統(tǒng)主要面臨如下挑戰(zhàn):
(1)視頻數(shù)據(jù)需要后臺(tái)服務(wù)器依靠算法進(jìn)行相關(guān)的視頻分析、識(shí)別與判斷,從而實(shí)現(xiàn)系統(tǒng)管理功能的自動(dòng)化。由于農(nóng)業(yè)生產(chǎn)對(duì)象的多樣化,因而對(duì)視頻識(shí)別算法提出了更高要求。例如:如何監(jiān)控水下魚類活動(dòng)、如何監(jiān)控區(qū)分不同個(gè)體的小動(dòng)物(如小青蛙)、如何監(jiān)測(cè)目標(biāo)個(gè)體的行為異常等[1-2]。
(2)智能監(jiān)控系統(tǒng)僅構(gòu)成農(nóng)業(yè)物聯(lián)網(wǎng)整體系統(tǒng)的一部分,還需要與其它系統(tǒng)進(jìn)行銜接,如農(nóng)產(chǎn)品溯源系統(tǒng)、農(nóng)產(chǎn)品物流系統(tǒng)、農(nóng)業(yè)管理信息系統(tǒng)、病蟲害防治系統(tǒng)、氣象預(yù)警系統(tǒng)等,需要視頻監(jiān)控系統(tǒng)為各種不同的系統(tǒng)提供格式、內(nèi)容、要求都迥異的數(shù)據(jù)[3-5]。
以上要求都對(duì)農(nóng)業(yè)物聯(lián)網(wǎng)中的視頻監(jiān)控系統(tǒng)帶來了若干挑戰(zhàn),為更好地銜接不同系統(tǒng)、拓展應(yīng)用領(lǐng)域,進(jìn)行二次開發(fā)與大數(shù)據(jù)相關(guān)應(yīng)用,需要在農(nóng)業(yè)視頻監(jiān)控系統(tǒng)的架構(gòu)及其數(shù)據(jù)接口上進(jìn)行設(shè)計(jì)調(diào)整。
根據(jù)軟件架構(gòu)層次化、功能模塊化、接口標(biāo)準(zhǔn)化3項(xiàng)原則,對(duì)現(xiàn)有的農(nóng)業(yè)物聯(lián)網(wǎng)監(jiān)控系統(tǒng)的系統(tǒng)架構(gòu)、功能模塊、數(shù)據(jù)接口等進(jìn)行了重新設(shè)計(jì)與調(diào)整[5-7]。該農(nóng)業(yè)智能監(jiān)控系統(tǒng)的架構(gòu)及其模塊化設(shè)計(jì)方案,能夠拓展到很多具體應(yīng)用領(lǐng)域,如牲畜家禽的育種與養(yǎng)殖、水產(chǎn)養(yǎng)殖、稀有動(dòng)物與特種昆蟲養(yǎng)殖等,均能為其提供動(dòng)態(tài)跟蹤監(jiān)控等功能,而且部署簡(jiǎn)便,易于進(jìn)行應(yīng)用領(lǐng)域與應(yīng)用方向的調(diào)整。
1 軟件架構(gòu)層次化
軟件架構(gòu)(Software Architecture)主要指設(shè)計(jì)軟件系統(tǒng)中應(yīng)用到的一系列抽象模式,即邏輯架構(gòu)。其中,各個(gè)組件之間的聯(lián)系及通訊是軟件架構(gòu)設(shè)計(jì)時(shí)考慮的最主要因素。在邏輯架構(gòu)確定好之后,設(shè)計(jì)并實(shí)現(xiàn)各個(gè)抽象組件,并將其投入到應(yīng)用中去。
軟件架構(gòu)有若干目標(biāo),其中比較重要的目標(biāo)有:可靠性(Reliable)、安全性(Secure)、可伸縮性(Scalable)、可定制化(Customizable)、可擴(kuò)展性(Extensible)、可維護(hù)性(Maintainable)與客戶體驗(yàn)(Customer Experience)等[8]。endprint
農(nóng)業(yè)視頻監(jiān)控系統(tǒng)可以借鑒的系統(tǒng)架構(gòu)為物聯(lián)網(wǎng)系統(tǒng)架構(gòu)。在物聯(lián)網(wǎng)系統(tǒng)架構(gòu)中,通常將系統(tǒng)分為3層:感知層、網(wǎng)絡(luò)層、應(yīng)用層。其中,感知層主要是將獲取的數(shù)據(jù)進(jìn)行實(shí)際應(yīng)用,如:智能識(shí)別、定位、跟蹤、監(jiān)控和管理等;網(wǎng)絡(luò)層主要通過各種數(shù)據(jù)通訊網(wǎng)絡(luò)與互聯(lián)網(wǎng)進(jìn)行融合,將采集到的物體數(shù)據(jù)實(shí)時(shí)、準(zhǔn)確地傳遞出去;應(yīng)用層則主要是利用攝像頭、傳感器、二維碼、RFID等手段隨時(shí)隨地獲取目標(biāo)數(shù)據(jù)[9]。
視頻監(jiān)控系統(tǒng)應(yīng)該定位于物聯(lián)網(wǎng)系統(tǒng)架構(gòu)之中,并進(jìn)行相關(guān)的層次定位,明確應(yīng)用層、網(wǎng)絡(luò)層、感知層各自需要實(shí)現(xiàn)視頻監(jiān)控系統(tǒng)的哪些功能。
(1)感知層主要進(jìn)行數(shù)據(jù)獲取。在農(nóng)業(yè)物聯(lián)網(wǎng)中,視頻監(jiān)控系統(tǒng)主要依靠攝像頭進(jìn)行數(shù)據(jù)采集。隨著應(yīng)用領(lǐng)域的不斷拓展,現(xiàn)階段的農(nóng)業(yè)監(jiān)控系統(tǒng)還可應(yīng)用于:①孵化、育種的監(jiān)控,通過系統(tǒng)的實(shí)時(shí)反饋,可提升存活率;②在水產(chǎn)養(yǎng)殖中,監(jiān)控喂食、供氧以及存活狀態(tài);③特種昆蟲、稀有動(dòng)物養(yǎng)殖中的監(jiān)控,以總結(jié)、提升養(yǎng)殖技術(shù)。這些監(jiān)控應(yīng)用都對(duì)視頻監(jiān)控采集提出了新的要求。
感知層利用前端攝像頭(不同規(guī)格:如主從—PTZ、帶深度信息的攝像頭組、紅外夜視燈)進(jìn)行數(shù)據(jù)采集,由感知器、控制器等獲取控制狀態(tài)信息與外部狀態(tài)數(shù)據(jù)。前端總共獲取4種數(shù)據(jù):控制數(shù)據(jù)、視頻數(shù)據(jù)、圖像數(shù)據(jù)與其它信息數(shù)據(jù)。
(2)網(wǎng)絡(luò)層主要實(shí)現(xiàn)數(shù)據(jù)的通訊功能。在農(nóng)業(yè)物聯(lián)網(wǎng)中,視頻監(jiān)控系統(tǒng)采用1 000M光纖的主干線,輔以100M網(wǎng)線、WiFi、藍(lán)牙、紅外等數(shù)據(jù)通訊手段,進(jìn)行視頻采集以及數(shù)據(jù)傳輸。對(duì)于前端獲取的4種數(shù)據(jù)(控制數(shù)據(jù)、視頻數(shù)據(jù)、圖像數(shù)據(jù)與其它信息數(shù)據(jù))進(jìn)行數(shù)據(jù)通訊,將其傳輸給應(yīng)用層,并確保其時(shí)效性與準(zhǔn)確性。
(3)應(yīng)用層實(shí)現(xiàn)數(shù)據(jù)的處理與顯示功能。在農(nóng)業(yè)物聯(lián)網(wǎng)中,視頻監(jiān)控系統(tǒng)依靠算法與數(shù)據(jù)分析進(jìn)行管理信息的篩選與獲取;在數(shù)據(jù)的處理上,依靠算法實(shí)現(xiàn)植株數(shù)量統(tǒng)計(jì)、莖葉狀態(tài)評(píng)估、病蟲害預(yù)警等功能;在數(shù)據(jù)的顯示上,依靠服務(wù)器、PC、手機(jī)、iPad等設(shè)備進(jìn)行結(jié)果顯示與控制命令的交互。
應(yīng)用層首先對(duì)網(wǎng)絡(luò)層傳輸來的數(shù)據(jù)進(jìn)行預(yù)處理,然后根據(jù)算法庫(kù)進(jìn)行分析,得到輸出結(jié)果,并將其提交給其它相關(guān)的管理信息系統(tǒng),如農(nóng)業(yè)溯源系統(tǒng)、農(nóng)業(yè)物流系統(tǒng)、農(nóng)業(yè)病蟲害預(yù)警系統(tǒng)等。
2 功能模塊化設(shè)計(jì)與實(shí)現(xiàn)
軟件架構(gòu)設(shè)計(jì)完成后,需要進(jìn)行功能的模塊化設(shè)計(jì)。模塊化設(shè)計(jì)常用聚合和耦合衡量模塊間的獨(dú)立性和關(guān)聯(lián)性。其中,聚合(Aggregation)是對(duì)模塊功能相對(duì)強(qiáng)度、彼此關(guān)聯(lián)度的度量,表示一個(gè)整體和部分的關(guān)系,其中整體與部分可分開設(shè)計(jì)與實(shí)現(xiàn)。對(duì)于聚合的設(shè)計(jì)原則是:允許功能聚合、順序聚合、過程聚合、通信聚合,要絕對(duì)避免偶然聚合、邏輯聚合、時(shí)間聚合。一個(gè)好的內(nèi)聚模塊描述的是模塊內(nèi)的功能聯(lián)系[10-11]。
耦合是對(duì)一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間關(guān)聯(lián)程度的度量。模塊之間的數(shù)據(jù)耦合指如果模塊通過參數(shù)交換信息,而且僅僅交換數(shù)據(jù)信息,這種耦合則是數(shù)據(jù)耦合。對(duì)于耦合,設(shè)計(jì)原則是:要盡量使用數(shù)據(jù)耦合,限制控制耦合、公共耦合,對(duì)內(nèi)容耦合則要絕對(duì)避免。
該農(nóng)業(yè)物聯(lián)網(wǎng)中的視頻監(jiān)控系統(tǒng)主要需實(shí)現(xiàn)以下功能:視頻數(shù)據(jù)采集、數(shù)據(jù)通訊、數(shù)據(jù)預(yù)處理、數(shù)據(jù)分析、分析結(jié)果輸出或者作為其它系統(tǒng)的輸入。因此,該系統(tǒng)架構(gòu)主要進(jìn)行功能聚合,利用數(shù)據(jù)耦合,進(jìn)行不同模塊之間的功能調(diào)用,藉此實(shí)現(xiàn)系統(tǒng)功能。其中,主要形成4種業(yè)務(wù)數(shù)據(jù)流:控制數(shù)據(jù)流、視頻數(shù)據(jù)流、圖像數(shù)據(jù)流與其它數(shù)據(jù)信息流。該4種業(yè)務(wù)數(shù)據(jù)流是進(jìn)行模塊劃分的相對(duì)依據(jù)。
3 數(shù)據(jù)接口標(biāo)準(zhǔn)化
接口(Interface)是一系列操作的集合,在該系統(tǒng)架構(gòu)中,強(qiáng)調(diào)的是模塊之間進(jìn)行的數(shù)據(jù)交換操作。由于在該系統(tǒng)架構(gòu)中,軟件模塊之間均優(yōu)先采用數(shù)據(jù)耦合,也即是說,該系統(tǒng)架構(gòu)中不同模塊之間的訪問,是通過數(shù)據(jù)交換實(shí)現(xiàn)輸入、輸出信息的獲取。因此,為了拓展模塊應(yīng)用范圍、進(jìn)行二次開發(fā)以及與其它系統(tǒng)之間的集成,尤其是為適應(yīng)未來的技術(shù)發(fā)展趨勢(shì),需要進(jìn)行數(shù)據(jù)接口的標(biāo)準(zhǔn)化[12]。
數(shù)據(jù)接口標(biāo)準(zhǔn)化首先需要明確數(shù)據(jù)類型。在農(nóng)業(yè)物聯(lián)網(wǎng)視頻監(jiān)控系統(tǒng)中,有效的數(shù)據(jù)類型主要包括圖像、視頻以及其它傳感器數(shù)據(jù)與控制器狀態(tài)數(shù)據(jù)。作為數(shù)據(jù)接口標(biāo)準(zhǔn)化內(nèi)容之一,首先需要統(tǒng)一圖像大小、圖像類型、視頻幀數(shù)、色彩模型、數(shù)據(jù)格式、數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)實(shí)時(shí)性等內(nèi)容。
很明顯,不可能所有設(shè)備都是同一參數(shù),對(duì)于不同的視頻參數(shù),需要根據(jù)效果進(jìn)行對(duì)比實(shí)驗(yàn)。高參數(shù)的設(shè)備采集的視頻信息需要進(jìn)行預(yù)處理,以達(dá)到統(tǒng)一標(biāo)準(zhǔn)。對(duì)于達(dá)不到參數(shù)要求的設(shè)備,可結(jié)合金字塔法等進(jìn)行預(yù)處理。標(biāo)準(zhǔn)統(tǒng)一后,數(shù)據(jù)的通訊速度、數(shù)據(jù)后期處理速度,以及處理精度都得到了明顯改進(jìn)。
其中,統(tǒng)一視頻處理輸出后的數(shù)據(jù)格式,是標(biāo)準(zhǔn)化的重點(diǎn)內(nèi)容。視頻監(jiān)控系統(tǒng)采集視頻信息,然后交后臺(tái)服務(wù)器進(jìn)行視頻信息處理,其處理結(jié)果(系統(tǒng)輸出)是應(yīng)用層其它系統(tǒng)均需要的系統(tǒng)輸入,因此需要進(jìn)一步規(guī)范視頻監(jiān)控系統(tǒng)處理后的數(shù)據(jù)格式。
對(duì)視頻監(jiān)控系統(tǒng)處理后的數(shù)據(jù),可采用視頻、圖像與文本/XML等結(jié)合的方式。其中,對(duì)于視頻,需要規(guī)范每秒多少幀、每一幀的寬高、色彩模型、ROI位置及長(zhǎng)寬等;對(duì)于圖像,需要規(guī)范寬高、色彩模型、ROI位置及長(zhǎng)寬等。這里的參數(shù)應(yīng)該與視頻參數(shù)完全吻合,只是視頻參數(shù)多于圖像參數(shù);對(duì)于文本/XML,需要對(duì)視頻、圖像進(jìn)行編號(hào),對(duì)應(yīng)編號(hào)保留所有視頻、圖像處理后的相關(guān)信息。
由于視頻處理算法設(shè)計(jì)上的靈活性,因此對(duì)于同一視頻/圖像,采用不同算法則可得到不同輸出,并與不同參數(shù)需求的新設(shè)備進(jìn)行數(shù)據(jù)通訊,從而比較好地解決了系統(tǒng)的二次開發(fā)問題。同時(shí),數(shù)據(jù)接口標(biāo)準(zhǔn)化使該系統(tǒng)架構(gòu)中集成其它設(shè)備或系統(tǒng)時(shí),數(shù)據(jù)的輸入與輸出問題可得到較好的解決。
4 結(jié)語(yǔ)
視頻監(jiān)控系統(tǒng)及其應(yīng)用是農(nóng)業(yè)物聯(lián)網(wǎng)中的重要問題之一。使用傳統(tǒng)的系統(tǒng)架構(gòu),對(duì)于復(fù)雜環(huán)境下的不同工作狀態(tài),適應(yīng)性較差,增添新的功能費(fèi)時(shí)費(fèi)力,系統(tǒng)調(diào)整較為困難。因此,引入模塊化設(shè)計(jì)以及軟件應(yīng)用框架結(jié)構(gòu)對(duì)其加以改進(jìn),是一種較好的解決方案。采用該解決方案,能夠在一定程度上解決原有系統(tǒng)架構(gòu)適應(yīng)性差、調(diào)整困難的缺陷,有助于提高系統(tǒng)穩(wěn)定性,易于進(jìn)行二次開發(fā)。endprint
參考文獻(xiàn):
[1] 何東健,孟凡昌,趙凱旋,等.基于視頻分析的犢?;拘袨樽R(shí)別[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2016,47(9):294-300.
[2] 李新樂,李書琴,蔚繼承,等.基于自定義協(xié)議的農(nóng)業(yè)異構(gòu)視頻系統(tǒng)集成研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2014,35(5):1727-1731.
[3] 郭艷光,郝拉柱,魯曉波.視頻圖像中目標(biāo)輪廓的提取算法研究[J].內(nèi)蒙古農(nóng)業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2011,32(1):241-244.
[4] 鄧漢陽(yáng),趙東,鄭嫦娥.基于OpenCV的大葉黃楊葉片特征視頻圖像檢測(cè)[J].廣東農(nóng)業(yè)科學(xué),2014,41(4):173-175.
[5] 徐義鑫,李鳳菊,王建春,等.基于OpenCV的Android手機(jī)植物葉片幾何參數(shù)測(cè)量系統(tǒng)[J].中國(guó)農(nóng)學(xué)通報(bào),2015,31(35):236-244.
[6] GUBBI J, BUYYA R, MARUSIC S, et al. Internet of things (IoT): a vision, architectural elements, and future directions[J]. Future Generation Computer Systems,2012,29(7):1645-1660.
[7] VISCONTI P, CAVALERA G. Intelligent system for monitoring and control of photovoltaic plants and for optimization of solar energy production[C]. International Conference on Environment and Electrical Engineering. IEEE,2015:1933-1938.
[8] HU P. A System architecture for software-defined industrial internet of things[C]. International Conference on Ubiquitous Wireless Broadband. IEEE,2015:1-5.
[9] KOVACSHAZY T, WACHA G, DABOCZI T, et al. System architecture for internet of things with the extensive use of embedded virtualization[C]. IEEE International Conference on Cognitive Infocommunications,2014:549-554.
[10] SICARI S, CAPPIELLO C, PELLEGRINI F D, et al. A security-and quality-aware system architecture for internet of things[J]. Information Systems Frontiers,2016,18(4):665-677.
[11] ZHOU L, CHAO H C. Multimedia traffic security architecture for the internet of things[J]. Network IEEE,2011,25(3):35-40.
[12] TSAI C W, LAI C F, VASILAKOS A V. Future internet of things: open issues and challenges[J]. Wireless Networks,2014,20(8):2201-2217.
(責(zé)任編輯:黃 健)endprint