清華大學(xué)最新《面向實時視頻流分析的邊緣計算技術(shù)》綜述
實時視頻流分析在智能監(jiān)控、智慧城市、自動駕駛等場景中具有重要價值. 然而計算負(fù)載高、 帶寬需求大、延遲要求嚴(yán)等特點使得實時視頻流分析難以通過傳統(tǒng)的云計算范式進(jìn)行部署. 近年來興 起的邊緣計算范式, 將計算任務(wù)從云端下沉到位于網(wǎng)絡(luò)邊緣的終端設(shè)備和邊緣服務(wù)器上, 能夠有效解 決上述問題. 因此, 許多針對實時視頻流分析的邊緣計算研究逐漸涌現(xiàn).
本文首先介紹了智能視頻流 分析和邊緣計算的背景知識, 以及二者結(jié)合的典型應(yīng)用場景; 接著提出了現(xiàn)有系統(tǒng)所關(guān)注的衡量指標(biāo) 和面臨的挑戰(zhàn); 然后從終端設(shè)備層次、協(xié)作層次、邊緣/云層次對本領(lǐng)域的關(guān)鍵技術(shù)分別進(jìn)行了詳細(xì)的 介紹, 重點涉及了模型壓縮和選擇、本地緩存、視頻幀過濾、任務(wù)卸載、網(wǎng)絡(luò)協(xié)議、隱私保護(hù)、查詢優(yōu) 化、推理加速和邊緣緩存技術(shù).
基于對上述各項核心技術(shù)的有機(jī)整合, 本文提出了基于邊緣計算的視 頻大數(shù)據(jù)智能分析平臺 Argus, 從數(shù)據(jù)采集、推理分析, 到數(shù)據(jù)挖掘、日志管理, 對實時視頻流分析全 生命周期提供支持, 并成功應(yīng)用到智慧油田中. 最后, 本文討論了本領(lǐng)域尚待解決的問題和未來研究 方向, 希望為今后的研究工作提供有益參考.
http://scis.scichina.com/cn/2022/SSI-2021-0133
1. 引言
隨著智能手機(jī)的普及和監(jiān)控攝像頭的大規(guī)模部署, 全球范圍內(nèi)實時生產(chǎn)的視頻數(shù)據(jù)量呈現(xiàn)出指數(shù) 增長的趨勢. 根據(jù)思科公司的預(yù)測 [1] , 到 2023 年, 視頻流將占據(jù)互聯(lián)網(wǎng)總流量的 80%. 傳統(tǒng)的人工方 法難以對如此大規(guī)模的數(shù)據(jù)進(jìn)行分析, 因此需要利用計算機(jī)自動提取出視頻流中的關(guān)鍵信息. 實時視 頻流分析, 指通過計算機(jī)視覺算法對一個或多個攝像頭產(chǎn)生的視頻流內(nèi)容自動進(jìn)行分析和理解, 從而 在視頻流錄制和傳輸?shù)耐瑫r完成目標(biāo)識別、異常檢測等復(fù)雜任務(wù) [2] . 由于攝像頭源源不斷地產(chǎn)生視頻 流, 自動視頻分析必須能夠?qū)崟r進(jìn)行. 自 1970 年至今, 智能視頻分析系統(tǒng)就一直是學(xué)術(shù)和工業(yè)界的熱 點問題. 實時視頻流分析可以被應(yīng)用在智能安防、智慧城市、自動駕駛, 以及個人生活助理等領(lǐng)域, 不僅能替代傳統(tǒng)的人工監(jiān)控業(yè)務(wù), 還可以拓展視頻分析任務(wù)的應(yīng)用邊界.
自 2012 年 AlexNet [3] 提出以來, 計算機(jī)視覺技術(shù), 特別是基于深度卷積神經(jīng)網(wǎng)絡(luò) (convolution neural network, CNN) 的目標(biāo)檢測和 識別技術(shù)出現(xiàn)了重大突破. 機(jī)器在自動視頻分析任務(wù)上已經(jīng)可以達(dá)到甚至超過人類水平, 使智能視頻 分析從理論研究快速走向了實際應(yīng)用 [4, 5] . 深度卷積神經(jīng)網(wǎng)絡(luò)需要巨大的計算量, 往往只有在圖形處 理單元 (graphics processing unit, GPU) 等專用硬件上才能實時運(yùn)行, 需要將計算任務(wù)卸載到具有較強(qiáng) 計算能力的設(shè)備上.
圖 1 為許多傳統(tǒng)的實時視頻流分析系統(tǒng)所采用的中心化云計算架構(gòu): 處于網(wǎng)絡(luò)邊 緣的設(shè)備端攝像頭直接通過互聯(lián)網(wǎng)將視頻傳輸?shù)骄W(wǎng)絡(luò)中心的云服務(wù)器. 云服務(wù)器獲得視頻之后對視頻 進(jìn)行存儲, 并利用 GPU 進(jìn)行推理分析, 再將推理結(jié)果在云端進(jìn)行整合利用. 在部分場景, 云端還會將 最終結(jié)果返回給網(wǎng)絡(luò)邊緣的終端設(shè)備 [2] . 然而, 基于云計算的視頻分析系統(tǒng)面臨著帶寬占用大、傳輸 延遲高、網(wǎng)絡(luò)不可靠和隱私保護(hù)難等問題.
基于邊緣計算的實時視頻流分析范式, 可以很好地解決上述問題. 邊緣計算旨在將計算任務(wù)從位 于網(wǎng)絡(luò)中心的云服務(wù)器下沉到與視頻源物理接近的邊緣服務(wù)器或者智能終端設(shè)備上 [6] . 如圖 2 [7] 所 示, 在邊緣計算架構(gòu)中, 計算任務(wù)可以卸載到設(shè)備 – 邊緣 – 云 3 個層級中. 擁有一定計算能力的智能 設(shè)備和邊緣服務(wù)器能夠在視頻源附近直接處理大部分存儲和分析任務(wù), 云服務(wù)器僅在必要情況下提供 計算支持和數(shù)據(jù)融合. 因此, 基于邊緣計算的視頻流分析系統(tǒng)占用的互聯(lián)網(wǎng)上傳帶寬將顯著減少.
此 外, 邊緣服務(wù)器與視頻源物理位置接近, 其數(shù)據(jù)包往返時間 (round trip time, RTT) 相比云服務(wù)器幾乎 可以忽略不計. 基于邊緣計算的視頻流處理系統(tǒng)只需要考慮視頻流的傳輸時延和視頻分析的時延, 能 夠完成服務(wù)時延敏感的增強(qiáng)現(xiàn)實等任務(wù) [8] . 同時, 相比于互聯(lián)網(wǎng), 視頻源和網(wǎng)絡(luò)邊緣的連接相對簡單 可控, 能夠確保足夠的傳輸帶寬和穩(wěn)定性. 將視頻數(shù)據(jù)在邊緣端直接處理, 或者在邊緣端進(jìn)行脫敏化 操作之后上傳, 也可以有效避免云端隱私泄漏.
除了實時視頻分析以外, 許多應(yīng)用場景也需要對大量的已有視頻進(jìn)行離線分析. 例如, 大型視頻 網(wǎng)站需要自動分析用戶上傳的視頻, 檢測其是否涉黃; 公安執(zhí)法部門需要在刑事案件發(fā)生后回溯已有 監(jiān)控視頻, 確定嫌疑人的歷史軌跡. 這些對已有視頻的離線查詢, 需要從數(shù)小時甚至數(shù)月長度的大量 視頻中檢索出具有特定目標(biāo)的少量視頻幀或片段. 面對后臺保存的大規(guī)模視頻數(shù)據(jù), 逐幀進(jìn)行神經(jīng)網(wǎng) 絡(luò)分析會耗費大量時間和計算資源. 因此, 離線視頻分析的核心問題在于: 如何在不完全分析所有視頻幀的情況下檢索出視頻幀中的所有目標(biāo). 其中最直觀的方法就是用底層計算機(jī)視覺方法檢測視頻內(nèi) 容變化的情況, 僅在變化較大時進(jìn)行分析 [9] .
離線分析的特點是不需要按照視頻時間順序進(jìn)行, 因而 許多工作都在分析前從整個視頻中選出部分幀訓(xùn)練定制化的輕量級神經(jīng)網(wǎng)絡(luò)模型 [9 13] . 定制化模型 能夠較好適應(yīng)已有視頻的特性, 可以在精確度損失較少的情況下減少單次分析帶來的開銷. 在此基礎(chǔ) 上, NoScope [9] 和 THAHOMA [12] 利用不同輕量級模型組成多級過濾器, 在離線分析過程中篩選掉大 部分視頻幀不進(jìn)行完整分析. Focus [10] 則利用輕量級模型在存儲視頻時構(gòu)建索引, 處理后續(xù)任務(wù)時僅 對包含索引的部分視頻幀用完整模型進(jìn)行分析. 本文主要是面向?qū)崟r視頻流分析, 不再進(jìn)一步展開介 紹離線視頻分析.
2017 年, 美國微軟公司的 Ananthanarayanan 等 [14] 提出 “實時視頻分析是邊緣計算的殺手級應(yīng) 用”, 并且分享了一系列針對智能交通分析的邊緣實時視頻流分析系統(tǒng) [15 17] . 此后, 許多針對實時視 頻分析的邊緣計算系統(tǒng)和研究開始涌現(xiàn), 并且逐漸被部署到真實世界的各種應(yīng)用中. 目前已經(jīng)存在許 多針對實時視頻流分析的邊緣計算研究工作, 但仍然缺乏系統(tǒng)性的綜述工作. 因此, 本文希望對基于邊 緣計算的實時視頻流分析領(lǐng)域的最新進(jìn)展和未來方向進(jìn)行討論.
本文的貢獻(xiàn)如下:
? 收集和整理了現(xiàn)有的針對實時視頻流分析的邊緣計算系統(tǒng)和研究, 并將其中涉及的關(guān)鍵技術(shù)分類 為 3 個層次: 終端設(shè)備層次、協(xié)作層次, 和邊緣/云層次. 我們分別對 3 個層次中的重要技術(shù)的應(yīng)用和 發(fā)展進(jìn)行了總結(jié).
? 提出了基于邊緣計算的視頻大數(shù)據(jù)智能分析平臺 Argus, 并分別從視頻/傳感器數(shù)據(jù)源、接入網(wǎng) 絡(luò)、邊緣視頻流分析、模塊編排和管理、數(shù)據(jù)挖掘, 以及業(yè)務(wù)邏輯等方面對其進(jìn)行了介紹.
? 提出并分析了邊緣實時視頻流分析當(dāng)前面臨的挑戰(zhàn)和未來可能發(fā)展方向.
第 2 節(jié)介紹了實時視頻流分析和邊緣技術(shù)涉及的背景知識和應(yīng)用場景. 第 3 節(jié)指出了基于邊緣 計算的實時視頻流分析系統(tǒng)的關(guān)鍵指標(biāo)和面臨的挑戰(zhàn). 第 4 節(jié)分層次總結(jié)邊緣實時視頻流分析涉及的 關(guān)鍵技術(shù). 第 5 節(jié)提出了 Argus 平臺并闡述其頂層設(shè)計. 第 6 節(jié)討論了本領(lǐng)域尚待解決的問題和可能 的發(fā)展方向. 最后, 第 7 節(jié)對本文進(jìn)行了總結(jié).
2. 背景介紹
本節(jié)簡單介紹背景知識及相關(guān)術(shù)語, 包括視頻分析流程、典型的邊緣計算范式, 以及基于邊緣計 算的實時視頻流分析的具體應(yīng)用場景。
2.1 視頻分析流程
實時視頻流分析需求較為復(fù)雜, 通常涉及多個不同模塊的組合. 圖 3 以常見的目標(biāo)識別與追蹤為 例, 對視頻分析所涉及的流程進(jìn)行了展示. 從邏輯層面上, 實時視頻分析流程可以被劃分為視頻采集 和編碼、視頻解碼、預(yù)處理、區(qū)域提取、目標(biāo)檢測、目標(biāo)識別、目標(biāo)追蹤, 以及數(shù)據(jù)融合這幾個部分. 在必要時, 系統(tǒng)還需要將分析結(jié)果返回給視頻源用于實時渲染或決策。
2.2 邊緣計算架構(gòu)
邊緣計算是近年的研究熱點, 有許多與其相關(guān)的概念, 例如霧計算、移動邊緣計算、微型云計算 (cloudlet computing) 等 [41] . 我們認(rèn)為, 這些概念都屬于邊緣計算的范疇, 即將計算負(fù)載分流到數(shù)據(jù)生 產(chǎn)源附近的網(wǎng)絡(luò)邊緣端. 如圖 2 所示, 定義中的網(wǎng)絡(luò)邊緣端, 既包括位于基站中、工廠內(nèi)的邊緣服務(wù) 器, 也包括具有一定計算能力的智能手機(jī)、攝像頭等終端設(shè)備.
根據(jù)物理設(shè)備的算力和與數(shù)據(jù)源的距離, 可以進(jìn)一步將邊緣計算系統(tǒng)中的設(shè)備縱向分為 3 層: 底 層是計算能力較弱、作為數(shù)據(jù)源的終端設(shè)備, 中層是計算能力相對較強(qiáng)但有限的邊緣計算服務(wù)器, 頂 層是具有彈性擴(kuò)張能力的云服務(wù)器. 設(shè)備端和邊緣服務(wù)器之間具有穩(wěn)定的網(wǎng)絡(luò)連接, 同時具備帶寬大 和延遲低的特點; 而邊緣服務(wù)器和云服務(wù)器之間則通過因特網(wǎng)進(jìn)行連接, 具有連接不穩(wěn)定、帶寬低、延 遲高等特點. 按照計算負(fù)載在 3 類設(shè)備上的分配, 常見的邊緣計算系統(tǒng)可以縱向分為設(shè)備 – 邊緣、邊 緣 – 云端, 以及設(shè)備 – 邊緣 – 云端 3 種架構(gòu). 同時, 同一類設(shè)備之間也可以相互橫向卸載計算任務(wù), 從而組合出更復(fù)雜的多設(shè)備協(xié)同架構(gòu) [19] .
邊緣計算最初的設(shè)想是為移動設(shè)備提供游牧服務(wù) (cyber-foraging), 如圖 4(a) 所示: 當(dāng)手機(jī)或可穿 戴設(shè)備需要進(jìn)行計算量較大的人機(jī)交互任務(wù)時, 會搜索附近的邊緣服務(wù)器, 提交一次性的低延遲分析 請求, 并接收計算結(jié)果. 移動設(shè)備可能會在一次任務(wù)中隨著自身位置變化向多個邊緣服務(wù)器先后發(fā)出 請求, 一個邊緣服務(wù)器可能同時服務(wù)多個租戶的不同任務(wù) [42] . 游牧服務(wù)更強(qiáng)調(diào)邊緣計算所帶來的低 延遲響應(yīng), 常見于增強(qiáng)現(xiàn)實等交互應(yīng)用, 多采用設(shè)備 – 邊緣 和設(shè)備 – 邊緣 – 云端架構(gòu).
隨著邊緣計算在工業(yè)場景的應(yīng)用, 如圖 4(b) 所示的邊緣站點 (edge site) 模式逐漸興起: 在工廠、 十字路口等地點部署固定攝像頭和邊緣計算服務(wù)器集群, 7 24 小時穩(wěn)定地對大量數(shù)據(jù)進(jìn)行持續(xù)分析 和存儲 [43] . 由于邊緣服務(wù)器與攝像頭位置相近, 網(wǎng)絡(luò)條件較為簡單, 二者間可以保持穩(wěn)定的高帶寬和 低延遲通信. 邊緣站點不涉及多租戶服務(wù), 強(qiáng)調(diào)服務(wù)的穩(wěn)定運(yùn)行和節(jié)約云邊通信帶寬, 常見于安防監(jiān) 控、工業(yè)分析等場景, 并且多采用邊緣 – 云端和多設(shè)備協(xié)同架構(gòu). 雖然應(yīng)用場景不同, 但是二者殊途同歸, 最終都是為了解決終端設(shè)備計算能力不足的問題, 并且在 分析精度、端到端延遲、資源占用等多方面進(jìn)行權(quán)衡. 區(qū)別在于二者面臨的應(yīng)用場景不同, 因此對延 遲、精度、帶寬等參數(shù)的容忍度不同. 例如, 游牧服務(wù)模式的增強(qiáng)現(xiàn)實任務(wù)可能需要在 20 ms 內(nèi)傳回 結(jié)果, 邊緣站點上運(yùn)行的油井狀態(tài)檢測可能可以接受 10 s 以內(nèi)的延遲 [43] .
2.3 應(yīng)用場景
如 2.2 小節(jié)中介紹, 邊緣計算的服務(wù)模式可以大致分為游牧服務(wù)和邊緣站點兩類. 在邊緣實時視 頻分析的眾多應(yīng)用場景中, 增強(qiáng)現(xiàn)實、可穿戴認(rèn)知輔助、無人機(jī)搜救、自動駕駛等任務(wù)常利用游牧服 務(wù)模式; 而安防監(jiān)控、智慧零售、交通分析等應(yīng)用則更多采用固定的邊緣站點模式. 接下來, 我們對幾 個典型的應(yīng)用場景進(jìn)行簡介.
3 目標(biāo)與挑戰(zhàn)
本節(jié)對衡量視頻流分析表現(xiàn)的重要指標(biāo)進(jìn)行介紹, 并分析了現(xiàn)有針對實時視頻流分析的邊緣計算 系統(tǒng)需要解決的三大挑戰(zhàn).
我們對大部分邊緣實時視頻分析系統(tǒng)所關(guān)心的關(guān)鍵指標(biāo)進(jìn)行一一說明.
延遲: 也稱為端到端時延、響應(yīng)時間, 指從視頻幀解碼、數(shù)據(jù)傳輸、模型推理, 到最終獲得分析結(jié) 果的總時間. 對于需要在本地展示分析結(jié)果的應(yīng)用, 端到端時延還包括結(jié)果傳回本地以及本地渲染結(jié) 果的時間. 有一些任務(wù)習(xí)慣用幀率、刷新率等指標(biāo)對延遲作出限制, 最大延遲限制就是幀率的倒數(shù). 例 如增強(qiáng)現(xiàn)實任務(wù)需要的 60 fps 刷新率就對應(yīng)了 20 ms 以內(nèi)的端到端延遲. 端到端時延受到視頻分析 流程中許多因素的影響, 包括數(shù)據(jù)處理延遲、網(wǎng)絡(luò)傳輸方式、設(shè)備計算能力、模型參數(shù)規(guī)模等. 除了完 成單次視頻分析的平均延遲, 部分系統(tǒng)還關(guān)注多任務(wù)同時分析時的延遲波動性, 以及延遲的 99 百分 位等長尾值.
分析準(zhǔn)確度: 是視頻分析任務(wù)的關(guān)鍵指標(biāo), 衡量了視頻分析算法和模型的預(yù)測準(zhǔn)確度. 因此, 針對 不同的視覺任務(wù)往往對應(yīng)不同的準(zhǔn)確度指標(biāo). 對于圖像分類和目標(biāo)識別, 準(zhǔn)確度一般指所有預(yù)測結(jié)果 中預(yù)測正確的概率. 對其中樣本不均衡的情況, 還會用到精度 (precision)、召回率 (recall) 和 F1 分?jǐn)?shù). 對于目標(biāo)檢測任務(wù), 首先需要根據(jù)重疊度 (intersection over union, IOU) 超過閾值判斷每個框檢測是 否成功, 再以此計算準(zhǔn)確度、精度、mAP (mean average precision) 等評價指標(biāo). 而實例分割和目標(biāo)分 割等像素級別的任務(wù)通常按照像素準(zhǔn)確度或各類別 IOU 均值作為評價指標(biāo). 除了受模型本身的影響, 分析準(zhǔn)確度也和運(yùn)行時間有關(guān). 如果分析結(jié)果出現(xiàn)的速率小于視頻的幀率, 可能會出現(xiàn)結(jié)果與當(dāng)前視 頻幀不匹配的現(xiàn)象, 降低分析準(zhǔn)確度.
帶寬: 指終端設(shè)備和邊緣服務(wù)器、邊緣服務(wù)器和云服務(wù)器之間每秒傳輸?shù)臄?shù)據(jù)量大小. 在基于移 動蜂窩網(wǎng)絡(luò)通信的系統(tǒng)中, 通信帶寬費用可以占據(jù)系統(tǒng)的大部分運(yùn)行成本, 而且網(wǎng)絡(luò)狀況面臨波動的 可能. 在私有或者有線的固定帶寬網(wǎng)絡(luò)中通信時, 單個視頻流的帶寬開銷大小決定了整個系統(tǒng)的擴(kuò)展 能力.
吞吐量: 指單位計算資源下, 邊緣實時視頻分析系統(tǒng)能同時服務(wù)的設(shè)備數(shù)量; 或單位時間下, 同一 系統(tǒng)能同時處理的分析請求個數(shù). 吞吐量代表了系統(tǒng)能服務(wù)的規(guī)模和對計算資源的利用效率. 吞吐量 越大, 說明系統(tǒng)在單位資源下能夠服務(wù)更大的規(guī)模. 這一指標(biāo)既受到用戶對準(zhǔn)確率、延遲要求的限制, 又與整個系統(tǒng)的資源分配、任務(wù)調(diào)度、計算和帶寬資源相關(guān).
能耗: 指邊緣視頻分析系統(tǒng)中的各個模塊, 在單位時間或單次分析任務(wù)內(nèi)消耗的能量. 能耗指標(biāo) 對手機(jī)、無人機(jī)等基于電池的移動終端設(shè)備有重要意義. 其主要受到計算機(jī)視覺模型運(yùn)行和設(shè)備間網(wǎng) 絡(luò)通信的影響, 也和同一設(shè)備上 CPU, GPU 等不同處理器的使用相關(guān).
內(nèi)存占用: 指計算機(jī)視覺模型在設(shè)備上占用的內(nèi)存大小. 由于深度學(xué)習(xí)模型通常具有千萬甚至上 億的參數(shù)量, 需要足夠的內(nèi)存空間進(jìn)行加載. 一方面, 移動終端設(shè)備僅具有有限的內(nèi)存資源, 限制了深 度學(xué)習(xí)模型的大小. 另一方面, 邊緣/云服務(wù)器需要服務(wù)多個應(yīng)用, 模型內(nèi)存占用也會影響其服務(wù)規(guī)模. 內(nèi)存占用主要和計算機(jī)視覺模型的參數(shù)大小以及設(shè)備上的資源分配方式有關(guān).
3.2 主要挑戰(zhàn)
基于邊緣計算的實時視頻流分析具有廣泛的應(yīng)用場景, 對各項關(guān)鍵指標(biāo)要求各不相同, 并且分別 運(yùn)行在設(shè)備 – 邊緣 – 云端組合出的不同架構(gòu)上. 雖然如此, 針對不同應(yīng)用的邊緣實時視頻流分析系 統(tǒng), 通常采取相似的技術(shù)手段去解決遇到的一些共同問題. 例如, Kar 等 [48] 的車流分析系統(tǒng)和用于認(rèn) 知輔助的 Gabriel 系統(tǒng) [57] 都利用了模型壓縮技術(shù)在終端設(shè)備上定制模型; 視頻監(jiān)控系統(tǒng) Vigil [44] 和 Al-Shuwaili 等 [51] 的增強(qiáng)現(xiàn)實系統(tǒng)都利用了邊緣設(shè)備間的點對點通信優(yōu)化系統(tǒng)調(diào)度.
我們認(rèn)為邊緣實時視頻流分析系統(tǒng), 主要需要解決以下三大挑戰(zhàn):
第一, 如何將復(fù)雜的計算機(jī)視覺算法和模塊應(yīng)用到資源有限的終端設(shè)備上. 作為視頻源的終端設(shè) 備往往僅具有有限的計算和能量資源, 而且不同設(shè)備間硬件架構(gòu)各不相同. 例如, 搭載 Jetson TX2 的 智能設(shè)備可以按照每秒 1 幀的速度運(yùn)行大部分常見的目標(biāo)檢測網(wǎng)絡(luò), 而普通的監(jiān)控攝像頭的內(nèi)存可能 根本無法加載正常的神經(jīng)網(wǎng)絡(luò)模型. 然而, 終端設(shè)備由于離視頻源最近, 在低延遲快速分析和視頻預(yù) 處理方面具有無法替代的優(yōu)勢.
第二, 如何高效進(jìn)行終端 – 邊緣服務(wù)器 – 云服務(wù)器之間的各個設(shè)備的任務(wù)卸載和協(xié)作. 邊緣實時 視頻分析是典型的分布式異構(gòu)計算場景, 涉及設(shè)備 – 邊緣、邊緣 – 云端、設(shè)備 – 邊緣 – 云端等架構(gòu)中 的不同層級的負(fù)載分配和通信協(xié)作, 以及同一層級的多設(shè)備協(xié)同. 此外, 設(shè)備間的通信還面臨復(fù)雜的網(wǎng) 絡(luò)環(huán)境, 需要考慮到對帶寬和延遲波動的自動適應(yīng).
第三, 如何提高邊緣/云服務(wù)器在單位資源下的服務(wù)規(guī)模. 在大規(guī)模的視頻分析系統(tǒng)中, 邊緣/云 服務(wù)器通常需要每秒處理幾十個視頻流的上千個分析請求, 并且可能涉及多個 GPU, FPGA 等專用硬 件的資源分配. 邊緣服務(wù)器雖然算力遠(yuǎn)大于終端設(shè)備, 但是也無法彈性擴(kuò)展, 而云服務(wù)器的彈性計算 能力面臨高昂的經(jīng)濟(jì)成本. 因此, 系統(tǒng)需要利用有限的計算能力同時服務(wù)盡量多的請求數(shù)量.
4 關(guān)鍵技術(shù)
第 3.2 小節(jié)中提到邊緣實時視頻流分析系統(tǒng)主要需要解決三大挑戰(zhàn). 因此, 我們針對這些挑戰(zhàn), 分 別調(diào)研了如圖 7 所示 3 個層次的關(guān)鍵技術(shù).
? 終端設(shè)備層次: 應(yīng)用于算力較低終端設(shè)備和智能邊緣計算節(jié)點上的技術(shù). 從模型定制和任務(wù)設(shè)計 的角度出發(fā), 在滿足其資源限制的前提下, 在視頻源附近完成快速的初始視頻分析.
? 協(xié)作層次: 應(yīng)用于云邊端不同層級和同層級中不同設(shè)備間相互協(xié)作的技術(shù). 涉及任務(wù)的卸載方式 和設(shè)備間的協(xié)作機(jī)制, 在復(fù)雜網(wǎng)絡(luò)條件下綜合考慮分析準(zhǔn)確度、延遲和能耗, 確保整個視頻分析系統(tǒng) 的端到端表現(xiàn).
? 邊緣/云層次: 應(yīng)用于算力較強(qiáng)邊緣和云服務(wù)器的技術(shù). 對多路視頻的大量分析請求進(jìn)行合理的 任務(wù)調(diào)度、資源分配和冗余去除, 在滿足準(zhǔn)確度與延遲需求的前提下, 增加系統(tǒng)在單位計算資源下的吞 吐量.
注意到, 一個完整的邊緣視頻分析系統(tǒng)可能會涉及其中一個或者多個層次的不同技術(shù)的組合. 其 中每個技術(shù)最終都是為了按照用戶的需求, 分別從視頻分析精度、端到端延遲、帶寬利用、資源開銷 等角度優(yōu)化整個分析任務(wù). 以典型的基于設(shè)備 – 邊緣 – 云端三級架構(gòu)的大規(guī)模視頻監(jiān)控場景為例, 系統(tǒng)需要先通過跨層協(xié)作技術(shù), 根據(jù)網(wǎng)絡(luò)狀況、任務(wù)難度在不同層級進(jìn)行任務(wù)卸載. 而其中卸載到設(shè)備 端的任務(wù)需要利用終端設(shè)備層技術(shù)粗略分析出視頻中的有用信息. 卸載到邊緣和云端的任務(wù)則需要通 過邊緣/云服務(wù)層技術(shù)提高資源利用效率. 本文希望對每個層次中的不同技術(shù)的內(nèi)容和發(fā)展進(jìn)行總結(jié), 為讀者梳理邊緣實時視頻流分析領(lǐng)域的研究脈絡(luò).
結(jié)論
實時視頻流分析是邊緣計算最成功的應(yīng)用場景; 邊緣計算范式也是實時視頻分析能成功部署的重 要支撐. 本文對近年來針對實時視頻流分析的邊緣計算系統(tǒng)進(jìn)行了歸納和綜述. 首先, 本文分別介紹 了視頻分析和邊緣計算涉及的背景知識, 并分析了邊緣實時視頻流分析系統(tǒng)的優(yōu)化目標(biāo)和其面臨的關(guān) 鍵挑戰(zhàn). 接著, 本文針對這些挑戰(zhàn), 從終端設(shè)備層次、云邊端跨層多設(shè)備協(xié)作和邊緣/云服務(wù)層次闡述 了各項工作中涉及的關(guān)鍵技術(shù)與效果. 基于對各項核心技術(shù)的理解和整合, 本文提出了基于邊緣計算 的智能大數(shù)據(jù)分析平臺 Argus, 并對其頂層設(shè)計與部分實現(xiàn)細(xì)節(jié)進(jìn)行了介紹. 目前, 針對實時視頻流分 析的邊緣計算范式依然面臨著一些尚待解決的難題, 本文最后對該領(lǐng)域的未來研究方向進(jìn)行了討論。