国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于分布式框架的城市內(nèi)澇智慧監(jiān)測(cè)系統(tǒng)

2021-06-28 17:40林宇聰馮祥勝葉健安
電腦知識(shí)與技術(shù) 2021年10期

林宇聰 馮祥勝 葉健安

摘要:針對(duì)傳統(tǒng)的城市內(nèi)澇監(jiān)測(cè)軟硬件投入大,監(jiān)測(cè)點(diǎn)稀疏等問(wèn)題,基于城市交通、公安、市政等監(jiān)控視頻獲取的道路圖像信息,實(shí)現(xiàn)了分布式框架的城市內(nèi)澇智慧監(jiān)測(cè)系統(tǒng)。 系統(tǒng)采用TensorFlow算法實(shí)現(xiàn)的深度學(xué)習(xí)模型對(duì)城市道路視頻監(jiān)控圖像進(jìn)行內(nèi)澇監(jiān)測(cè)。并采用SpringCloud框架搭建分布式網(wǎng)站平臺(tái),實(shí)現(xiàn)對(duì)城市內(nèi)澇進(jìn)行監(jiān)測(cè)。

關(guān)鍵詞:城市內(nèi)澇;智慧監(jiān)測(cè);springcloud;分布式架構(gòu);tensorflow

中圖分類號(hào):TP399? ? ?文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2021)10-0030-03

Abstract: Aiming at the problems of traditional urban waterlogging monitoring, such as large investment in software and hardware and sparse monitoring points, a distributed framework of urban waterlogging intelligent monitoring system is implemented based on the video monitoring images of urban traffic, public security and municipal administration. The system uses TensorFlow implementation of deep learning model to monitor the waterlogging of urban road video monitoring images. SpringCloud framework is used to build a distributed website platform to monitor urban waterlogging.

Key words: urban waterlogging; intelligent monitoring; springcloud; distributed architecture; tensorflow

1 引言

由于強(qiáng)降水和特殊天氣招致的城市內(nèi)澇,會(huì)使得城市交通受到大面積的影響,城市之中基礎(chǔ)設(shè)施遭受重大損失。當(dāng)城市之中發(fā)生洪澇災(zāi)害,如果可以對(duì)洪澇災(zāi)害的實(shí)時(shí)狀況進(jìn)行監(jiān)測(cè)和預(yù)警,對(duì)減少內(nèi)澇帶來(lái)的損失有著重大幫助。

城市內(nèi)澇監(jiān)測(cè)預(yù)警通常有人工法和定點(diǎn)監(jiān)控法。人工法一般是相關(guān)部門通過(guò)大量的人力物力,對(duì)容易發(fā)生內(nèi)澇的地點(diǎn)進(jìn)行實(shí)地勘測(cè),并立即向部門中心上傳內(nèi)澇的相關(guān)信息。這種方法費(fèi)時(shí)費(fèi)力,同時(shí)難以及時(shí)獲得準(zhǔn)確的積水位置和積水深度等情況,目前逐步在淘汰。定點(diǎn)監(jiān)控法是通過(guò)在重點(diǎn)監(jiān)測(cè)地點(diǎn)安裝傳感器和通信設(shè)備,通過(guò)傳感器及時(shí)獲得積水信息,并匯總到相關(guān)部門。這種方法能夠精確的得知傳感器地區(qū)的內(nèi)澇情況,但是這種物理檢測(cè)系統(tǒng)的構(gòu)建不僅僅需要專用傳感器、通信網(wǎng)絡(luò),同時(shí)還需要持續(xù)的通訊和設(shè)備維護(hù)管理,建設(shè)成本和維護(hù)成本太高。由于極端天氣現(xiàn)象其實(shí)并不常見(jiàn),因此系統(tǒng)的使用率低,性價(jià)比不高[1-5]。

目前城市交通、市政、公安等部門在沿城市道路建設(shè)了完善的視頻監(jiān)控系統(tǒng),其布點(diǎn)覆蓋范圍遠(yuǎn)大于內(nèi)澇管理部門建設(shè)的內(nèi)澇監(jiān)測(cè)點(diǎn)。在承擔(dān)交通、市政、公安等相關(guān)職能的同時(shí),這些視頻監(jiān)控系統(tǒng)采集到的圖像還能對(duì)城市的道路狀況方面進(jìn)行監(jiān)控[6-8]。薛豐昌等提出根據(jù)城市視頻監(jiān)控對(duì)城市內(nèi)澇進(jìn)行實(shí)時(shí)預(yù)警的技術(shù)[9]。該技術(shù)利用圖像差分方法,幾乎可以清楚視頻中非積水區(qū)域的影響,實(shí)現(xiàn)對(duì)積水區(qū)域的高效識(shí)別。但是該方法僅適合用于監(jiān)測(cè)點(diǎn)不多的情況。當(dāng)監(jiān)測(cè)點(diǎn)位置或攝像頭位置發(fā)生變化時(shí),該方法將受到影響甚至不能工作。同時(shí)若攝像頭的數(shù)量龐大,對(duì)每個(gè)攝像頭的初始數(shù)據(jù)維護(hù)工作量巨大。

本文提出了基于分布式框架下的城市內(nèi)澇智慧監(jiān)測(cè)系統(tǒng)。系統(tǒng)采用TensorFlow實(shí)現(xiàn)了基于深度學(xué)習(xí)的內(nèi)澇監(jiān)測(cè)模型,通過(guò)對(duì)城市內(nèi)澇圖像數(shù)據(jù)集進(jìn)行模型訓(xùn)練,使用訓(xùn)練好的模型對(duì)城市道路視頻監(jiān)控圖像進(jìn)行內(nèi)澇災(zāi)害自動(dòng)識(shí)別。采用SpringCloud框架搭建分布式網(wǎng)站平臺(tái),實(shí)現(xiàn)大并發(fā)量的業(yè)務(wù)處理,降低系統(tǒng)相互關(guān)聯(lián)的性,提高系統(tǒng)便捷擴(kuò)展的能力。

2 系統(tǒng)設(shè)計(jì)

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

隨著并發(fā)業(yè)務(wù)量的增大,一臺(tái)服務(wù)器主機(jī)的性能往往不足以滿足業(yè)務(wù)所需。一般情況下,將系統(tǒng)垂直或者水平拆分成不同的業(yè)務(wù)模塊系統(tǒng),形成一個(gè)分布式的系統(tǒng)架構(gòu),能夠增大系統(tǒng)的整體內(nèi)容,增強(qiáng)系統(tǒng)運(yùn)行時(shí)的穩(wěn)定能力。在系統(tǒng)安全性方面,采用分布式構(gòu)架的業(yè)務(wù)系統(tǒng),即使其中的某一臺(tái)主機(jī)出現(xiàn)故障也不會(huì)導(dǎo)致整個(gè)服務(wù)的癱瘓。在開(kāi)發(fā)和擴(kuò)展方面,因?yàn)闃I(yè)務(wù)需求被拆分成不同的模塊,開(kāi)發(fā)與發(fā)布能夠并行,使得其速度能更加快捷與簡(jiǎn)單。而在眾多分布式框架中,SpringCloud的全面能力和高修改性比較突出,已經(jīng)成為一種主流分布式網(wǎng)站構(gòu)架解決方案。所以本系統(tǒng)使用SpringCloud框架對(duì)網(wǎng)站進(jìn)行搭建。系統(tǒng)架構(gòu)圖如圖1所示。用戶請(qǐng)求進(jìn)Zuul網(wǎng)關(guān)負(fù)載均衡后依靠Nacos注冊(cè)中心,分發(fā)到微服務(wù)集群中的某一個(gè)服務(wù)。而微服務(wù)之間的交互使用Feign 來(lái)調(diào)度。

系統(tǒng)核心業(yè)務(wù)由圖像識(shí)別業(yè)務(wù)和網(wǎng)站預(yù)警業(yè)務(wù)兩部分組成。其中,圖像識(shí)別業(yè)務(wù)以采集到的圖像集為數(shù)據(jù)集,通過(guò)TensorFlow訓(xùn)練,然后獲取到相關(guān)的識(shí)別模型并結(jié)合Flask框架向外提供圖片識(shí)別的端口;網(wǎng)站預(yù)警業(yè)務(wù)通過(guò)對(duì)攝像頭或用戶上傳的預(yù)警圖片進(jìn)行識(shí)別,并且匯總相關(guān)的預(yù)警方位進(jìn)行保存和展示。系統(tǒng)的業(yè)務(wù)流程圖如圖2所示。

2.2 模塊設(shè)計(jì)

系統(tǒng)總體分成七個(gè)子模塊,包括攝像頭模塊,預(yù)警消息模塊,網(wǎng)關(guān)模塊,權(quán)限認(rèn)證模塊,用戶模塊,后臺(tái)管理和第三方擴(kuò)展工具模塊,如下圖3所示例。

預(yù)警消息模塊作為系統(tǒng)的核心模塊,用于存儲(chǔ)所有的預(yù)警消息信息。首先當(dāng)一條預(yù)警信息生成之后,消息通過(guò)網(wǎng)關(guān)轉(zhuǎn)發(fā)給預(yù)警消息模塊,隨后遠(yuǎn)程訪問(wèn)用戶模塊和第三方工具擴(kuò)展其上傳者的信息與保存圖片,再根據(jù)圖片識(shí)別出來(lái)的道路狀態(tài)分情況進(jìn)行短信發(fā)送。

后臺(tái)管理模塊主要提供后臺(tái)管理人員對(duì)預(yù)警消息和攝像頭信息的修改功能。管理人員可以對(duì)系統(tǒng)識(shí)別有一定誤差的圖片進(jìn)行人工修正,修正過(guò)的預(yù)警信息將自動(dòng)歸檔,用于新的圖像數(shù)據(jù)模型訓(xùn)練,以提高圖像模型的準(zhǔn)確率。在攝像頭信息中,則可以選擇新增或者調(diào)整攝像頭的點(diǎn)位信息。攝像頭模塊根據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中的攝像頭信息,定期獲取攝像頭中所拍攝的圖片信息,統(tǒng)一發(fā)送給圖像識(shí)別服務(wù)進(jìn)行識(shí)別。

網(wǎng)關(guān)模塊、權(quán)限認(rèn)證和用戶模塊組成了權(quán)限系統(tǒng),網(wǎng)關(guān)模塊是訪問(wèn)整個(gè)程序必須經(jīng)過(guò)的模塊,所有的前端請(qǐng)求均會(huì)首先訪問(wèn)網(wǎng)關(guān)模塊,再根據(jù)不同的訪問(wèn)路徑分發(fā)給相關(guān)的微服務(wù)。而所有的請(qǐng)求都會(huì)在網(wǎng)關(guān)進(jìn)行鑒權(quán),當(dāng)請(qǐng)求需要一定權(quán)限時(shí),網(wǎng)關(guān)向權(quán)限認(rèn)證模塊進(jìn)行驗(yàn)證,若用戶無(wú)權(quán)限則返回到首頁(yè)地址。在用戶進(jìn)行登錄時(shí),可以選擇手機(jī)號(hào)完成登錄或者第三方應(yīng)用的外部登錄,登錄成功后會(huì)返回相對(duì)應(yīng)的用戶權(quán)限,并將所取得的token信息存到session中保存,避免多次登錄。

圖像識(shí)別模塊通過(guò)數(shù)據(jù)集訓(xùn)練數(shù)據(jù)模型來(lái)識(shí)別道路圖片的情況,其數(shù)據(jù)采集主要來(lái)源為目前已有的市政和交通等區(qū)域的攝像頭中真實(shí)拍攝的道路信息數(shù)據(jù)。這些數(shù)據(jù)集訓(xùn)練出道路圖片的數(shù)據(jù)模型,提供道路圖像識(shí)別的機(jī)器學(xué)習(xí)功能。并在此基礎(chǔ)上整合Flask框架,為網(wǎng)站系統(tǒng)提供Restful風(fēng)格的API接口。并且在攝像頭采集到的固定點(diǎn)位之外,還開(kāi)通了用戶上傳圖像接口。完善了攝像頭的監(jiān)測(cè)盲區(qū),提供后臺(tái)管理人員對(duì)道路圖片的真實(shí)情況進(jìn)行人工核查,將有識(shí)別誤差的圖片進(jìn)行人工標(biāo)注和修改,標(biāo)注過(guò)的圖片會(huì)放入新的數(shù)據(jù)集中,定期對(duì)數(shù)據(jù)集進(jìn)行重新訓(xùn)練,對(duì)圖像識(shí)別的精確度進(jìn)行更進(jìn)一步的提升。

城市內(nèi)澇智慧監(jiān)測(cè)系統(tǒng)的用戶模塊,主要提供道路預(yù)警信息展示和道路信息匯總展示。道路預(yù)警展示分為兩塊:一是通過(guò)調(diào)用百度地圖,并且對(duì)接后臺(tái)數(shù)據(jù)庫(kù)信息,不同的道路情況以不同顏色的標(biāo)記在地圖上進(jìn)行標(biāo)注,能直觀地查看道路的預(yù)警點(diǎn);二是以圖片墻的方式,直接展示道路圖片以及道路信息狀況,并且提供文字搜索功能,以記錄的方式能夠以精確和快捷的查看預(yù)警信息。

道路信息匯總展示目前系統(tǒng)中系統(tǒng)的人工修正道路圖片比例、道路圖片來(lái)源的比例、以及近一年每個(gè)月不同狀態(tài)的道路狀態(tài)信息總數(shù)的三個(gè)圖表。人工修正道路圖片比例體現(xiàn)出系統(tǒng)目前圖片識(shí)別模型正確率,當(dāng)人工修正的比例過(guò)大時(shí)則提醒管理人員將數(shù)據(jù)模型進(jìn)行重新訓(xùn)練更新,進(jìn)一步完善數(shù)據(jù)模型。而近一年每個(gè)月不同狀態(tài)的道路狀態(tài)信息總數(shù)可警示相關(guān)部門,當(dāng)進(jìn)入道路特殊狀態(tài)高發(fā)月份時(shí),積極應(yīng)對(duì)可能發(fā)生的道路情況,并且提前制定對(duì)應(yīng)的相關(guān)計(jì)劃。

在后臺(tái)管理中,使用者需要經(jīng)過(guò)權(quán)限認(rèn)證判斷使用者的身份,使用者通過(guò)登錄系統(tǒng)登錄后,系統(tǒng)自動(dòng)根據(jù)賬號(hào)判斷登陸者身份信息并跳轉(zhuǎn)至不同頁(yè)面。身份權(quán)限分為三種,。普通用戶只能查看首頁(yè)與使用圖片上傳功能,數(shù)據(jù)管理員可以對(duì)所有的預(yù)警數(shù)據(jù)進(jìn)行審核、修改,系統(tǒng)管理員則可以使用所有的后臺(tái)管理系統(tǒng)。

使用者登錄后,開(kāi)放道路圖片上傳功能,使用者上傳圖片后,系統(tǒng)會(huì)自動(dòng)識(shí)別圖片是否有自帶經(jīng)緯度信息,若沒(méi)有則根據(jù)用戶輸入的地址描述,通過(guò)百度地圖API進(jìn)行經(jīng)緯度查詢。并且調(diào)用圖像識(shí)別模塊對(duì)道路圖片進(jìn)行識(shí)別,并最終返回識(shí)別結(jié)果。

3 系統(tǒng)實(shí)現(xiàn)

3.1持久層模塊實(shí)現(xiàn)

在具體實(shí)現(xiàn)過(guò)程中,后端數(shù)據(jù)庫(kù)使用Mysql進(jìn)行開(kāi)發(fā)。每一個(gè)需要存儲(chǔ)實(shí)體數(shù)據(jù)的模塊對(duì)應(yīng)一個(gè)獨(dú)立的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)操作層采用Mybatis-plus,相比于原生的Mybatis,MP自帶通用的CRUD操作,能夠極大的簡(jiǎn)化開(kāi)發(fā)。對(duì)于多表的操作,主要以stream流式編程對(duì)集合中的數(shù)據(jù)進(jìn)行擴(kuò)展。

3.2服務(wù)層模塊實(shí)現(xiàn)

服務(wù)層中,nacos注冊(cè)中心中注冊(cè)了所有的微服務(wù),所有的請(qǐng)求均通過(guò)zuul網(wǎng)關(guān)過(guò)濾后,以nacos中的服務(wù)名進(jìn)行動(dòng)態(tài)轉(zhuǎn)發(fā)。并且nacos 提供對(duì)服務(wù)的檢查、動(dòng)態(tài)配置和DNS服務(wù),保證服務(wù)的穩(wěn)定和便利。各個(gè)微服務(wù)之間的調(diào)用通過(guò)OpenFeign框架進(jìn)行遠(yuǎn)程調(diào)用。Openfeign中通過(guò)ribbon進(jìn)行負(fù)載均衡,均衡的分配集群資源。并且接口參數(shù)以Restful風(fēng)格進(jìn)行封裝,讓各個(gè)服務(wù)之間的接口對(duì)接更加方便。

每個(gè)微服務(wù)的基礎(chǔ)框架均為Springboot,maven控制jar包的版本管理。Springboot特點(diǎn)在于快速搭建,十分契合微服務(wù)的架構(gòu)。其中封裝了很多常用的套件,如mybatis、redis、elasticSearch等,可以輕易地整合各方面框架。微服務(wù)中均配置了redis緩存,菜單、預(yù)警信息和攝像頭信息等均設(shè)置了緩存提高系統(tǒng)運(yùn)行效率以及減輕數(shù)據(jù)庫(kù)的讀取壓力。并發(fā)鎖中使用redisson對(duì)每個(gè)可能造成數(shù)據(jù)不一致的地方進(jìn)行加鎖處理。而redisson中鎖的操作屬于原子操作,解決了死鎖問(wèn)題的發(fā)生。

因?yàn)榉植际椒?wù)之間無(wú)法傳遞session,而SpringSession組建中,將session信息存入redis中,用于實(shí)現(xiàn)分布式服務(wù)之中的session傳遞。而SpringSession僅需要注解和配置文件即可簡(jiǎn)單快速且無(wú)縫的集成到服務(wù)中。

權(quán)限認(rèn)證服務(wù)采用Oauth2安全認(rèn)證,oauth2中包含了SpringSecurity,用戶登錄后獲取到該用戶的token權(quán)限標(biāo)識(shí),并且將該權(quán)限標(biāo)識(shí)和用戶信息存入session中,解決重復(fù)登錄的問(wèn)題。并且Oauth2框架提供第三方的外部登錄??梢院?jiǎn)化用戶的登錄操作,給予用戶更好的使用體驗(yàn)。

3.3 前端模塊實(shí)現(xiàn)

前端展示模塊的框架均以Bootstrap為基礎(chǔ),搭配Thymeleaf模板引擎為頁(yè)面提供動(dòng)態(tài)數(shù)據(jù)展示。其優(yōu)勢(shì)在于簡(jiǎn)單靈活,響應(yīng)式柵格系統(tǒng)讓網(wǎng)頁(yè)能夠自動(dòng)適應(yīng)用戶的屏幕尺寸,并且美觀的界面樣式與友好的學(xué)習(xí)曲線使開(kāi)發(fā)變得更加舒適。對(duì)于前后端之間的數(shù)據(jù)對(duì)接,主要采用jQuery的ajax請(qǐng)求,讓前端頁(yè)面可以用異步的方式向服務(wù)端獲取數(shù)據(jù),并且通過(guò)模板引擎動(dòng)態(tài)展示。在此基礎(chǔ)之上,為了優(yōu)化用戶體驗(yàn),添加Sweet Alert和Echart框架,用于美化整體頁(yè)面以及提供更豐富的頁(yè)面組件。前端部分頁(yè)面實(shí)現(xiàn)效果如圖4所示。

4 結(jié)語(yǔ)

在人工智能越發(fā)火熱的浪潮下,結(jié)合目前現(xiàn)有的市政交通資源,基于分布式框架下的城市內(nèi)澇智慧監(jiān)測(cè)系統(tǒng)能夠更加有效地發(fā)揮現(xiàn)有資源,降低了防澇的經(jīng)濟(jì)成本以及人力成本,并且可以實(shí)現(xiàn)24小時(shí)全方位自動(dòng)化監(jiān)測(cè)。而且搭配預(yù)警通知系統(tǒng),不論是相關(guān)部門使用抑或是提供給大眾使用,都能提供相應(yīng)的預(yù)警作用。

基于分布式構(gòu)架的網(wǎng)站系統(tǒng),存在服務(wù)之間調(diào)度頻繁和延遲的問(wèn)題。若數(shù)據(jù)查詢功能優(yōu)化不足,在多個(gè)服務(wù)同時(shí)查詢同一個(gè)服務(wù)接口時(shí)容易發(fā)生調(diào)用超時(shí),導(dǎo)致相關(guān)頁(yè)面無(wú)法正常展示,系統(tǒng)整體運(yùn)行較為緩慢。本系統(tǒng)下一步的改進(jìn),一方面可以通過(guò)對(duì)查詢的內(nèi)部邏輯進(jìn)行優(yōu)化和精簡(jiǎn),舍棄不必要的字段返回,減少數(shù)據(jù)處理量;另一方面,要減輕數(shù)據(jù)庫(kù)的訪問(wèn)壓力,可以通過(guò)擴(kuò)大Redis緩存的應(yīng)用范圍,以提高系統(tǒng)的響應(yīng)速度。

參考文獻(xiàn):

[1] 何嘉莉,陳兵,姜濤,等.城市內(nèi)澇在線監(jiān)控與信息服務(wù)數(shù)字化系統(tǒng)設(shè)計(jì)[J].中國(guó)給水排水,2014,30(1):94-98.

[2] 林占東,張奕虹.基于物聯(lián)網(wǎng)的城市內(nèi)澇監(jiān)測(cè)預(yù)警系統(tǒng)建設(shè)思路初探[J].數(shù)字技術(shù)與應(yīng)用,2014(6):235-236.

[3] 邵鵬飛, 趙燕偉, 楊明霞. 城市內(nèi)澇監(jiān)測(cè)預(yù)警信息系統(tǒng)研究 [J]. 計(jì)算機(jī)測(cè)量與控制, 2016,24(2):49-52.

[4] 姜元軍, 來(lái)麗芳, 李亞丹, 等. 基于 GIS 的城市內(nèi)澇預(yù)警預(yù)報(bào)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J]. 測(cè)繪與空間地理信息, 2016,39(8):69-71.

[5] 邱祥峰,陳云,王曉強(qiáng),等.基于微信服務(wù)號(hào)和圖像識(shí)別的城市內(nèi)澇監(jiān)測(cè)方法[J].中國(guó)市政工程,2018(2):92-94,98,135-136.

[6] Chang N B,Guo D H.Urban flash flood monitoring,mapping and forecasting via a tailored sensor network system[C]//2006 IEEE International Conference on Networking,Sensing and Control.April 23-25,2006,F(xiàn)t.Lauderdale,F(xiàn)L,USA.IEEE,2006:757-761.

[7] 高曉亮,王志良,王馨,等.基于HSV空間的視頻實(shí)時(shí)水位檢測(cè)算法[J].鄭州大學(xué)學(xué)報(bào)(理學(xué)版),2010,42(3):75-79.

[8] 鄧玉芬,沈明,阮銳,等.基于圖像識(shí)別技術(shù)的沿岸潮汐測(cè)量方法研究[J].現(xiàn)代電子技術(shù),2010,33(13):120-122.

[9] 薛豐昌,宋肖依,唐步興,等.視頻監(jiān)控的城市內(nèi)澇監(jiān)測(cè)預(yù)警[J].測(cè)繪科學(xué),2018,43(8):50-55,61.

【通聯(lián)編輯:梁書】

高淳县| 融水| 奉贤区| 建瓯市| 景东| 瑞金市| 永昌县| 伊川县| 宁晋县| 濮阳市| 三亚市| 永胜县| 泰和县| 大方县| 巴青县| 南投市| 和田市| 同仁县| 庆安县| 高唐县| 神农架林区| 武山县| 阿克陶县| 同仁县| 夏河县| 甘洛县| 平昌县| 平潭县| 屏东市| 赤水市| 滕州市| 庐江县| 龙胜| 凌云县| 宜兴市| 防城港市| 阜平县| 根河市| 绥芬河市| 崇左市| 莒南县|