當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術(shù)》雜志
[導(dǎo)讀]摘 要 :視頻監(jiān)控系統(tǒng)是計算機(jī)應(yīng)用中的重要領(lǐng)域之一。數(shù)字化攝像頭網(wǎng)絡(luò)化之后,監(jiān)控系統(tǒng)正在不斷引入新的功能,為使現(xiàn)有監(jiān)控系統(tǒng)能更好地應(yīng)對復(fù)雜環(huán)境,滿足不同監(jiān)控要求,就需要追加新功能,在系統(tǒng)架構(gòu)與設(shè)計上進(jìn)行調(diào)整。因此,如何將多個第三方軟件與現(xiàn)有監(jiān)控系統(tǒng)進(jìn)行銜接就成為需要解決的重要問題。論文以多個第三方算法庫整合為案例,分析、改進(jìn)并拓展其思路,提出一種通用的第三方軟件與現(xiàn)有監(jiān)控系統(tǒng)進(jìn)行銜接的接口設(shè)計方案。該方案中,多個第三方軟件按照系統(tǒng)功能,采用分層、分模塊的方式整合入系統(tǒng),接口按照數(shù)據(jù)類型的不同分類,功能相對獨(dú)立、標(biāo)準(zhǔn)統(tǒng)一。該方案經(jīng)實踐檢測,具有簡單、快速、高效、易于二次開發(fā)等優(yōu)點(diǎn)。

0 引 言

現(xiàn)有物聯(lián)網(wǎng)監(jiān)控系統(tǒng)的功能正在日益多元化。例如后臺服務(wù)器算法與深度學(xué)習(xí)相結(jié)合,使得監(jiān)控的智能水平取得了長足進(jìn)步 [1] ;主從 -PTZ 攝像頭的引入形成了多個攝像頭組,能夠完成之前單個攝像頭無法完成的工作 [2] ;具有深度信息的攝像頭能夠從三維立體的角度重新進(jìn)行監(jiān)控 [3]。同 時,與視頻監(jiān)控系統(tǒng)有關(guān)的其他技術(shù)也在迅猛的發(fā)展之中,例如基于 FPGA,DSP 芯片,每個攝像頭能夠完成若干前端處理,從而降低對通信帶寬的要求 [4] ;基于 USB 2.0 數(shù)據(jù)傳輸技術(shù),可使視頻數(shù)據(jù)傳輸的速度成倍提高 ;基于云存儲技術(shù)使得視頻數(shù)據(jù)的存儲、訪問與相關(guān)運(yùn)算能夠并行、遠(yuǎn)程處理,同時實現(xiàn)了海量視頻數(shù)據(jù)以及相關(guān)若干技術(shù) ;基于 GPU芯片性能的提升,視頻、圖像的處理速度較之前有了很大提高 [5-6]。

對現(xiàn)有監(jiān)控系統(tǒng)而言,新的功能、應(yīng)用領(lǐng)域正在形成,而這些新應(yīng)用解決方案的實現(xiàn)既需要新的硬件,又需要新的軟件 ;既可以選擇自行開發(fā),也可以直接集成第三方軟硬件包。自行開發(fā)與集成第三方軟件包相比,各有優(yōu)劣。

以計算機(jī)視覺應(yīng)用中的第三方軟件包為例,現(xiàn)有第三方算法庫較多,能夠支持的應(yīng)用也較多,如目標(biāo)識別、行為檢測、深度學(xué)習(xí)、深度信息等。如果均采用自行研發(fā)的方式進(jìn)行實現(xiàn),應(yīng)用程序的穩(wěn)定性與處理速度將完全取決于開發(fā)者自身的能力與水平 ;如果開發(fā)者水平高,不僅能夠在功能的選擇上擁有絕對的自主權(quán),還可以通過優(yōu)化與功能裁剪實現(xiàn)更高的系統(tǒng)穩(wěn)定性與運(yùn)行速度 ;但如果研發(fā)者水平受限,則程序的表現(xiàn)將無法預(yù)測。

系統(tǒng)集成直接使用第三方軟件包,其程序代碼的編寫水平完全取決于第三方軟件包,在搭設(shè)系統(tǒng)的同時,其應(yīng)用服務(wù)的質(zhì)量是同質(zhì)化的,難分伯仲 ;對用戶的服務(wù)支持則完全取決于第三方軟件包,無過多自主權(quán)。

至于涉及的第三方硬件的軟件開發(fā)包無需多言,絕大多數(shù)研發(fā)者都無力進(jìn)行新硬件的設(shè)計、制造與相應(yīng)軟件開發(fā),均以使用第三方硬件為主。

1 深度相機(jī)

以深度算法的應(yīng)用作為案例進(jìn)行現(xiàn)有視頻系統(tǒng)接口的案例解析。

在原有視頻監(jiān)控系統(tǒng)中添加深度信息,需要進(jìn)行相關(guān)功能的研發(fā),首先需要硬件的支持,而新的硬件往往自帶第三方開發(fā)包,可供開發(fā)者二次開發(fā)。

深度相機(jī)(又名 3D 相機(jī))是指可通過距離信息獲取物體之間的位置關(guān)系,能夠區(qū)分前景與后景 ;使用相機(jī)獲取的深度信息對目標(biāo)圖像的分割、標(biāo)記、識別、跟蹤等傳統(tǒng)應(yīng)用仍然有效,而且可以根據(jù)深度信息進(jìn)行改進(jìn)與提高 ;借助深度信息與 2D 相機(jī)無法獲取數(shù)據(jù)與信息,但進(jìn)行算法的設(shè)計與改進(jìn)后便能夠快速完成對目標(biāo)的識別與追蹤,進(jìn)行復(fù)雜目標(biāo)的狀態(tài)行為判讀 [7-8]。


目前深度相機(jī)包括 TOF(Time of Fligh,TOF)、結(jié)構(gòu)光、激光掃描等,主要用于機(jī)器人、互動游戲等。其中較多指 TOF 相機(jī) [9-10],微軟第二代 Kinect v2 采用的就是 TOF 技 術(shù),在 30 fps 條件下能夠?qū)崿F(xiàn) 1 920×1 080 的顏色分辨率、512×424 的深度分辨率,最多支持 6 人的姿態(tài)識別,每人25 個關(guān)節(jié)點(diǎn),檢測范圍最遠(yuǎn)可達(dá) 4 m,水平有效角度最大為70°,垂直有效角度最大為 60°。

以激光散斑圖像深度信息獲取方法為例,深度相機(jī)實現(xiàn)這些功能的工作原理 :經(jīng)過圖像預(yù)處理后的輸入散斑圖和參考散斑圖寫入多條行形成輸入散斑窗、參考散斑窗,在輸入散斑窗中提取中心相同、窗口大小不同的圖像塊,對應(yīng)參考散斑窗的匹配散斑窗,以搜索策略并且求最小 SAD 方法,搜索最佳匹配塊,得到最佳偏移量,再通過參考閾值進(jìn)行篩選,自適應(yīng)選擇某一圖像塊對應(yīng)的最佳偏移量作為當(dāng)前圖像塊中心點(diǎn)的最佳偏移量,然后通過深度計算公式得到其深度信息 [11-12]。

由上可見,該方法涉及的數(shù)學(xué)公式較多,運(yùn)算量較大,同時,類似 30 fps 條件的視頻參數(shù)對相關(guān)計算的實時性提出了較高要求。現(xiàn)在一般的解決方案為依靠 FPGA,DSP 進(jìn)行相關(guān)運(yùn)算,這就涉及到了與硬件相關(guān)的第三方開發(fā)包。以第三方 OpenCV 軟件包與硬件相關(guān)的 HLS 算法庫進(jìn)行接口設(shè)計層次化、模塊化說明。

2 接口的層次化、模塊化設(shè)計

現(xiàn)有視頻監(jiān)控系統(tǒng)在進(jìn)行接口層次化、模塊化設(shè)計時可以參考 HLS 算法庫與 OpenCV 軟件包進(jìn)行集成的案例。在該案例應(yīng)用中,支持深度相機(jī)的系統(tǒng)被設(shè)計用來實現(xiàn)深度相關(guān)算法。

Vivado 高層次綜合(Vivado High-Level Synthesis,HLS)在所有 HLx 版本中可直接使用 C,C++ 以及 System C 語言規(guī)范對 Xilinx 可編程器件進(jìn)行編程,HLS 使系統(tǒng)和設(shè)計架構(gòu)師支持 ISE® 和 Vivado 設(shè)計環(huán)境,無需手動創(chuàng)建 RTL 便能夠快速創(chuàng)建 IP,包含 HLS 流庫,HLS Math,HLS 視頻,HLS IP,HLS 線性代數(shù),HLS DSP 庫等內(nèi)容。HLS 在該案例中的主要功能是利用硬件加速相應(yīng)的 OpenCV 應(yīng)用。

OpenCV(Open Source Computer Vision Library,OpenCV)是一個基于 BSD 許可(開源)發(fā)行的跨平臺計算機(jī)視覺庫,可運(yùn)行在 Linux,Windows,Android 和 Mac OS 操作系統(tǒng)上。OpenCV 輕量級且高效—由一系列 C 函數(shù)和少量 C++ 類構(gòu)成, 同時提供 Python,Ruby,Matlab等語言接口,實現(xiàn)了圖像處理和計算機(jī)視覺方面的諸多通用算法。OpenCV 在該案例中的主要功能是進(jìn)行深度信息相關(guān)算法設(shè)計與應(yīng)用。系統(tǒng)層結(jié)構(gòu)與模塊接口示意如圖 1所示。


混合第三方庫視頻系統(tǒng)接口設(shè)計與實現(xiàn)

由圖 1 可知,不同第三方庫進(jìn)行集成時,彼此之間的業(yè)務(wù)流按照數(shù)據(jù)類型的不同需要選擇不同的接口 —在OpenCV 與 HLS 之間進(jìn)行圖像處理時需要 Axivideo2Mat 與Mat2Axivideo 接口。而在 OpenCV 與 HLS 之間進(jìn)行視頻處理時,僅需 Mat2Axivideo 接口。其接口類型根據(jù)數(shù)據(jù)類型的不同而變化。OpenCV 與 HLS 部分接口函數(shù)示意如圖 2所示。


混合第三方庫視頻系統(tǒng)接口設(shè)計與實現(xiàn)

從圖 2 中可以看出,在視頻與圖像分析的應(yīng)用中,為能夠充分利用深度相機(jī)的深度信息,需要 OpenCV 與 HLS 各自按照數(shù)據(jù)類型的不同采用不同的接口函數(shù)進(jìn)行處理,并根據(jù)需要進(jìn)行不同數(shù)據(jù)類型之間的轉(zhuǎn)換,例如從 Mat 到video, 從 Mat 到 hlsMat, 或者從 video 到 Mat, 從 hlsMat到 Mat。


由此可見,接口就是進(jìn)行的一系列數(shù)據(jù)類型轉(zhuǎn)換,轉(zhuǎn)換的最終目的是為不同算法提供符合其輸入要求的數(shù)據(jù)。

3 數(shù)據(jù)接口的標(biāo)準(zhǔn)化

接口(Interface)是一系列操作的集合,在軟件架構(gòu)中,強(qiáng)調(diào)模塊之間的數(shù)據(jù)交換操作。為拓展模塊應(yīng)用范圍、進(jìn)行二次開發(fā)、與其他系統(tǒng)集成,尤其要適應(yīng)未來的技術(shù)趨勢,就需要進(jìn)行數(shù)據(jù)接口的標(biāo)準(zhǔn)化 [8]。

數(shù)據(jù)接口的標(biāo)準(zhǔn)化首先需要明確數(shù)據(jù)的類型。在視頻監(jiān)控系統(tǒng)中,有效數(shù)據(jù)類型主要包括圖像、視頻以及其他數(shù)據(jù)、狀態(tài)數(shù)據(jù)四大類。作為數(shù)據(jù)接口的標(biāo)準(zhǔn)化內(nèi)容之一,首先需要統(tǒng)一的內(nèi)容較多,如圖像大小、圖像類型、視頻幀數(shù)、色彩模型、數(shù)據(jù)格式、數(shù)據(jù)長度、數(shù)據(jù)實時性等,數(shù)據(jù)類型與業(yè)務(wù)流程相同,是進(jìn)行劃分的兩大要素。

對不同型號、不同設(shè)備、不同參數(shù)的視頻,需根據(jù)效果以及實驗進(jìn)行對比,降高升低。高參數(shù)設(shè)備采集的視頻信息需進(jìn)行預(yù)處理,以達(dá)到同一標(biāo)準(zhǔn) ;同樣,對達(dá)不到參數(shù)要求的設(shè)備,可結(jié)合金字塔法等進(jìn)行預(yù)處理,使之達(dá)到同一標(biāo)準(zhǔn)。標(biāo)準(zhǔn)統(tǒng)一后,對數(shù)據(jù)的通信速度、數(shù)據(jù)的后期處理速度、處理精確度、存儲速度、讀取速度等多項指標(biāo)都有明顯改進(jìn)。

統(tǒng)一視頻處理輸出后的數(shù)據(jù)格式是標(biāo)準(zhǔn)化的重點(diǎn)。視頻監(jiān)控系統(tǒng)采集視頻信息,然后交由后臺服務(wù)器進(jìn)行視頻信息的處理,其處理結(jié)果(系統(tǒng)輸出)是應(yīng)用層其他系統(tǒng)需要的輸入,因此需進(jìn)一步規(guī)范視頻監(jiān)控系統(tǒng)處理后的數(shù)據(jù)格式。

對視頻監(jiān)控系統(tǒng)處理后的數(shù)據(jù),可采用視頻、圖像、與文本 /XML 等結(jié)合的方式。其中,對視頻而言,需要規(guī)范每秒多少幀、每一幀的寬高、色彩模型、ROI 位置及長寬等 ;對圖像而言,需要規(guī)范寬高、色彩模型、ROI 位置及長寬等,這里的參數(shù)應(yīng)該與視頻參數(shù)完全吻合,只是視頻的參數(shù)多于圖像參數(shù)而已 ;對于文本 /XML 而言,需要對視頻、圖像進(jìn)行編號,對應(yīng)編號保留所有視頻、圖像處理后的相關(guān)信息。

為最大限度保持算法設(shè)計上的靈活性,可對同一視頻 /圖像利用算法庫進(jìn)行多種不同數(shù)據(jù)格式的轉(zhuǎn)換,通過不同的算法得到不同的輸出 ;與不同參數(shù)需求的新設(shè)備進(jìn)行數(shù)據(jù)通信 ;集成不同的第三方庫,從而較好地解決系統(tǒng)的二次開發(fā)問題。圖 3 所示為一種混合第三方庫支持的車牌定位算法及其得到的車牌定位效果。對于成功定位的車牌,使用了文獻(xiàn) [13] 中提到的車牌字符分割算法并將字符以二值化方式顯示。

混合第三方庫視頻系統(tǒng)接口設(shè)計與實現(xiàn)

第三方視頻處理庫為 OpenCV2.4.9,在 Windows 7 操作系統(tǒng)上借助 Qt5.0 實現(xiàn),其中部分功能函數(shù)使用了 GPU 加速實現(xiàn)。主要硬件環(huán)境為 ThinkPad x230 筆記本電腦,Core i3(2.4 GHz)四核 CPU,8G 內(nèi)存。實驗數(shù)據(jù)集包含 800 幅含車牌的圖像以及 400 幅不含車牌的圖像。

實驗測試對象中包含了大部分復(fù)雜環(huán)境,如顏色干擾(“湘 BY2054”和“粵 JPG999”的車身均為藍(lán)色),傾斜的車牌(“粵 CFL980”“遼 ANB082”“粵 B0PA09”),復(fù)雜的背景和光照條件(“遼 M66B66”和“浙 BY1V13”)等。從結(jié)果可以看出 :混合第三方庫支持的車牌定位算法在復(fù)雜條件下均能夠準(zhǔn)確定位車牌,并能夠從車牌上準(zhǔn)確讀取車牌字符 [13]。

4 結(jié) 語

不同第三方庫進(jìn)行集成時,彼此之間的業(yè)務(wù)流需按照數(shù)據(jù)類型的不同來選擇接口。在軟件架構(gòu)中,強(qiáng)調(diào)模塊之間的數(shù)據(jù)交換操作。為拓展模塊應(yīng)用范圍、進(jìn)行二次開發(fā)、與其他系統(tǒng)集成,就需要進(jìn)行數(shù)據(jù)接口的標(biāo)準(zhǔn)化。數(shù)據(jù)接口的標(biāo)準(zhǔn)化首先需要明確數(shù)據(jù)類型,然后盡量統(tǒng)一模塊之間處理輸出的數(shù)據(jù)格式。

在系統(tǒng)設(shè)計與實現(xiàn)中采用論文中提到的解決方案,在一定程度上解決了原有系統(tǒng)架構(gòu)適應(yīng)性差、調(diào)整困難的缺陷,能夠借助分層次與模塊化手段來提高系統(tǒng)穩(wěn)定性,并借助第三方庫提高系統(tǒng)核心運(yùn)算的速度,易于二次開發(fā)。在工程應(yīng)用中,該方法可作為一種快速軟件原型開發(fā)的輔助手段,具有較為廣泛的應(yīng)用場景。



本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉