CN112804219B - 基于边缘计算的低时延实时视频分析方法 - Google Patents

基于边缘计算的低时延实时视频分析方法 Download PDF

Info

Publication number
CN112804219B
CN112804219B CN202011638574.3A CN202011638574A CN112804219B CN 112804219 B CN112804219 B CN 112804219B CN 202011638574 A CN202011638574 A CN 202011638574A CN 112804219 B CN112804219 B CN 112804219B
Authority
CN
China
Prior art keywords
server
time
profiling
picture
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011638574.3A
Other languages
English (en)
Other versions
CN112804219A (zh
Inventor
陈旭
张茂军
周知
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202011638574.3A priority Critical patent/CN112804219B/zh
Publication of CN112804219A publication Critical patent/CN112804219A/zh
Application granted granted Critical
Publication of CN112804219B publication Critical patent/CN112804219B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing

Abstract

本发明属于边缘计算、视频分析技术领域,更具体地,涉及一种基于边缘计算的低时延实时视频分析方法。提出了减少profiling阶段须分析的配置数量的方法;提出了动态配置和传统的图像差异比对相结合地动态过滤上传图像的方法;提出了合理、动态选择触发profiling的方法。本发明中Profiling主要阶段在边缘服务器完成,有效减少数据传输,减少资源占用;动态配置和图像差异比对相结合,更加适合动态变化的环境,以降低一个时隙内图像特征变化过快使得profiling阶段得到的配置不适合整个时隙带来的精度损失;Profiling的触发智能化,并不需要每个时隙都进行profiling,减少profiling对于带宽以及计算资源的消耗;通过采样最高帧率的结果来做低帧率的profiling,减少profiling阶段资源消耗。

Description

基于边缘计算的低时延实时视频分析方法
技术领域
本发明属于边缘计算、视频分析技术领域,更具体地,涉及一种基于边缘计算的低时延实时视频分析方法。
背景技术
对于视频处理,国内外的学者已经进行了大量的研究,有些是从系统角度出发,探究如何构建一个完整的、易操作的、兼容性强、各模块解耦的系统;有的是理论出发,研究如何运用先进的算法来解决视频分析中的问题。在此,做一个简单的介绍:MediaPipe是一个构建音视频流水线的框架,相似的还有DeepStream SDK,这是一个针对英伟达GPU开发的提供TensorRT接口、视频编解码、可视化等功能的框架。针对流水线式的应用,serverless也被应用在边缘环境中来实现多机的协同。EdgeEye构建了一个基于边缘计算的实时视频处理系统,它可以将图像发送给拥有丰富资源的设备去分析。VideoEdge关注如何通过聚合在地理位置上分散存在的视频输入在降低计算开销的前提下尽可能的提升准确率。VideoPipe聚焦在如何针对单一视频源进行视频处理。Mez是一个在IoT边缘环境下的一个基于发布-订阅的消息系统,它可以很好的服务于分布式机器视觉应用。Mez允许使用者指定从摄像头传输到边缘服务器的网络延时上限以及应用可以忍受的准确率下限,然后根据这两个阈值采用相应的图像处理技术,如下采样、模糊、颜色空间转换等策略降低图像的传输数据量,选择最合适的处理方式。Chameleon考虑到不同配置对视频分析准确率的影响的动态变化特性,它提出了一个高效实时的定期分析技术来为每个时间段选择最优的配置。但是Chameleon在做分析时会消耗大量的计算资源,针对这一问题,Woo-Joong Kim根据发现的视频目标具有的潜在特性(速率、位置、大小)提出了轻量级的视频分析方法,可以在保证准确率的同时,大幅降低资源消耗。Jupiter是一个构建在kubernetes上的针对分散计算的容器调度框架,它的组件主要有三个系统容器(分析容器、调度容器、执行容器),它对于DAG类的任务能节省客观的资源以及完成时间。上述研究在各自的任务领域都取得了不错的结果,但是这其中仍然有一定的进步空间,有些方案不具备普适性,有的方案聚焦的点不够广。上述提及的方案解决的维度不够广,可以有更进一步的处理,使得效果得到更高的提升,同时本身算法带来的额外开销也不可忽略,这与它实现算法的方式有关,为了达到高性能,算法本身过程本身会消耗不少资源。同时没有考虑到实时性的要求,视频结果的质量以及流畅度没有优化。
发明内容
本发明为克服上述现有技术中的至少一个缺陷,提供一种基于边缘计算的低时延实时视频分析方法,保证准确率损失在可接受范围内尽可能减少需要卸载到边缘服务器的数据量,减少视频处理的时延。
为解决上述技术问题,本发明采用的技术方案是:一种基于边缘计算的低时延实时视频分析方法,包括以下步骤:
S1.设备到边缘服务器延迟数据采集分析:定时更新设备到不同边缘服务器的延迟来为上层的算法提供实时可靠的数据;
S2.动态配置分析:动态地根据视频内容配置视频流上传的参数以兼顾准确率、资源消耗和时延的平衡;同时,进行动态profiling执行决策:通过动态计算profiling判断是否需要在每个时隙均重新做profiling;
S3.图片选择决策:每次图片上传的决策由profiling生成的结果和图片差异比对共同决定是否上传;
S4.服务器卸载决策:判断带宽以及计算能力是否足够容纳下新的任务加入,如果可以,则完成卸载;如果无法容纳,则继续寻找延迟次小的目标服务器。
进一步的,所述的步骤S1具体包括以下步骤:
S11.搭建时间同步服务:为了保证数据可靠性,需要保证各机器的时间是同步的,因此,首先选择一台服务器作为时间服务器,在它上面部署ntp服务的server端,其余机器即边缘服务器、设备作为client端,设置配置中的服务器地址为选定的时间服务器IP;
S12.实时测量设备到服务器的延迟:每隔一段时间发送带时间戳和编号的消息到不同边缘服务器,边缘服务器收到消息后,记录下当前时间,将收到的消息和当前时间一同发回设备,这样就可以测量出单向的传输时延。
进一步的,所述的步骤S2中配置包括分辨率和帧率;在进行动态配置分析时测量不同组合下视频分析结果的表现,采用最优配置1080p、30fps作为ground truth,不同组合下的效果的表现通过计算识别结果和ground truth的F1 score作为准确率的衡量标准;F1score是精度precision和召回率recall的调和平均值;计算公式为:
Figure GDA0003328373680000031
Figure GDA0003328373680000032
Figure GDA0003328373680000033
式中,true positves:实际上是正例的数据点被标记为正例;false positves:实际上是反例的数据点被标记为正例;true negatives:实际上是反例的数据点被标记为反例;false negatives:实际上是正例的数据点被标记为反例;
检测结果是目标种类以及位置坐标,true positives的判别标准是:标记为相同种类且它们的位置框重叠区域的面积占ground truth的比值大于0.5;false positves的判别标准是:一个目标被标记为某一类,但在ground truth上并没有或在相同位置为其它种类或种类相同但是重叠区域面积占ground truth的比例小于0.5;false negatives的判别标准是:在ground truth上标记的目标,在检测结果中没有与之区域匹配的项。
进一步的,在所述的步骤S2中,当帧率小于最大配置时,每隔几帧上传一帧图片,其中未上传图片使用时间上离它最近的上一帧图片的结果作为它的识别结果;假设每个时隙有J张图片,使用j代表第j张图片,第j张图片上的目标记为Oj={O1,O2,…},最大帧率设为dfs,当前帧率为fs,则第j张图片的目标结果为:
Oj=Oj-(j%δ)+1,
其中
Figure GDA0003328373680000034
对于ground truth的目标记为Gj,则1秒内平均准确率为:
Figure GDA0003328373680000035
式中f1即为上文提及的F1 score。
进一步的,在所述的步骤S2中,对于不同分辨率、不同内容的图片,模型处理的时间不一样,对于分辨率为fr的第j张图片的处理时间记为
Figure GDA0003328373680000041
则1秒内所需要的处理时间为:
Figure GDA0003328373680000042
为了减少数据传输量,将profiling的过程放在服务器上进行,设备只需将最优配置的图片上传到服务器,服务器将图片缩放至不同的分辨率以及进行采样模拟不同帧率的情况;由于高帧率已经包含了低帧率的所有内容,因此,可以直接用高帧率profiling结果进行采样获取低帧率的结果;
对于同样分辨率下,不同帧率的配置,对于1s内处理时间的计算为:
Figure GDA0003328373680000043
其中
Figure GDA0003328373680000044
进一步的,对于每一帧的时延,其主要由三部分组成,其一是传输时延、其二是模型处理时延、其三是建立连接等较为固定的开销,分别记为
Figure GDA0003328373680000045
Figure GDA0003328373680000046
Figure GDA0003328373680000047
对于
Figure GDA0003328373680000048
由带宽以及图像分辨率决定:
Figure GDA0003328373680000049
式中,σ是一个像素点所包含的数据量,bwi是第i个视频流的带宽;
对于
Figure GDA00033283736800000410
由处理时间运算得到:
Figure GDA00033283736800000411
进一步的,目标是最大化准确率的同时尽可能减少延迟,因此目标是为不同的输入视频流选择合适的配置copt使得总的目标函数值最小:
Figure GDA00033283736800000412
上式中I为视频流的数量,γ为权重控制参数,控制延迟和准确率在目标函数中占有的比重;
其中会有一个限制,在1秒内,所有的视频流的处理时间之和需要小于1秒,否则会有任务滞留:
Figure GDA0003328373680000051
当处理时间超过1s时,需要将某些配置换为次优的,对于替换的依据,采用贪心的思想来处理。替换第i个视频流的配置后,设其延迟的减少为εl,目标函数的增加为εf,分为两种情况,当替换后,若总时间达标,则选取εf最小的视频流;若总时间不达标,则选取边际效应最高的,衡量标准为:
Figure GDA0003328373680000052
选取μ最大的视频流。
进一步的,默认选取使得目标函数最小的配置,当达不到要求时,按照如下流程进行处理:
a.每个视频的配置按照处理时间进行排序,对于每个视频流计算,处理时间短的下一个配置的目标值变化量,比较所有的变化量,选择最适合的下一个配置;
b.如果未能达到要求,则重复a,直到小于阈值;
c.如果迭代到最后,也无法达到要求,则认为负荷超过服务器上限,剔除最后添加的视频流。
进一步的,所述的图片选择决策具体包括以下步骤:
S31.根据profiling的结果,确定当前帧是否需要上传,以及所应采用的分辨率;
S32.利用dHash计算当前和前一帧两帧图片之间的差异程度,其具体步骤如下:
缩小图片:收缩至9*8的大小;
转化为灰度图:把缩放后的图片转化为256阶的灰度图。(Gray=(R+G+B)/3);
计算差异值:计算相邻像素间的差异值,这样每行9个像素之间产生了8个不同的差异,一共8行,共64个差异值;
比较差异值:如果前一个像素的颜色强度大于第二个像素,那么差异值就设置为“1”,如果不大于第二个像素,就设置“0”;
构造hash值:组合64个bit位生成hash值;
对比指纹:计算两幅图片的指纹,计算汉明距离;
S33.经步骤S31后,如果判定当前帧不应上传,而步骤S32中生成的距离大于10,则代表前后两帧差异巨大,应该上传,否则不上传;经步骤S31后,如果判定当前帧应该上传,如果前一帧上传过,而步骤S32中生成的距离小于5,则代表变化不大,不应上传,否则上传。
进一步的,所述的服务器决策具体包括:
S41.根据设备到边缘服务器延迟分析采集器收集到的数据,找出延迟最小的服务器进行卸载;
S42.将任务加入服务器profiling分析器,判断带宽以及计算能力是否足够容纳下新的任务加入,如果可以,则完成卸载;
S43.如果无法容纳,则继续寻找延迟次小的目标服务器,重复S41-S42直到找到合适的服务器,否则任务搁置,等待别的任务完成。
与现有技术相比,有益效果是:
1、本发明中profiling主要阶段在边缘服务器完成,有效减少数据传输,减少资源占用;
2、动态配置和图像差异比对相结合,更加适合动态变化的环境,以降低一个时隙内图像特征变化过快使得profiling阶段得到的配置不适合整个时隙带来的精度损失;
3、Profiling的触发智能化,并不需要每个时隙都进行profiling,减少profiling对于带宽以及计算资源的消耗;
4、通过采样最高帧率的结果来做低帧率的profiling,减少profiling阶段资源消耗。
附图说明
图1是本发明中选择最优配置超过处理能力时的调整流程。
图2是本发明中图像是否上传决策过程示意图。
图3是本发明视频流选择服务器过程示意图。
具体实施方式
一种基于边缘计算的低时延实时视频分析方法,包括以下步骤:
步骤1.设备到边缘服务器延迟分析采集,在边缘计算环境中,网络连接比较多样,包括有线、无线等,带宽变化频繁,因此需要定时更新设备到不同边缘服务器的延迟来为上层的算法提供实时可靠的数据。主要由以下步骤完成:
S11.搭建时间同步服务:为了保证数据可靠性,需要保证各机器的时间是同步的。因此,首先选择一台服务器作为时间服务器,在它上面部署ntp服务的server端,其余机器(边缘服务器、设备)作为client端,设置配置中的服务器为选定的时间服务器。
S12.实时测量设备到服务器的延迟:每隔一段时间(可视具体网络波动情况调整,默认1min)发送带时间戳和编号的消息到不同边缘服务器,边缘服务器收到消息后,记录下当前时间,将收到的消息和当前时间一同发回设备,这样就可以测量出单向的传输时延。
步骤2.动态配置分析;动态地根据视频内容配置视频流上传的参数以兼顾准确率和资源消耗的平衡;
视频流包含有多种可变的配置,常见的同时也是影响最大的是分辨率和帧率。高分辨率和高帧率的图片的识别结果准确率高,但是同时占用的资源也更多。但是根据视频输入的内容不同,呈现出巨大的差异。比如视频中的目标物体规模偏大且细节不多时,不同分辨率下识别结果(种类、位置)相差不大;视频画面变化缓慢,比如人流量稀少的道路,几帧图片差异不大甚至不变时,不同帧率带来的差异不大。然而当视频画面复杂或者场景变化剧烈时,上述结果则不成立。因此,动态地根据视频内容配置视频流上传的参数可以很好地兼顾准确率和资源消耗的平衡。
配置主要由两方面组成,分辨率{1080,720,480,320}p,帧率{30,15,10,6,5,3,2,1}fps。需要测量不同组合下视频分析结果的表现,我们采用最优配置1080p、30fps作为ground truth,不同组合下的效果的表现通过计算识别结果和ground truth的F1 score作为准确率的衡量标准。F1 score是精度(precision)和召回率(recall)的调和平均值:
这三个量的计算公式如下:
Figure GDA0003328373680000081
Figure GDA0003328373680000082
Figure GDA0003328373680000083
式中,true positves:实际上是正例的数据点被标记为正例;false positves:实际上是反例的数据点被标记为正例;true negatives:实际上是反例的数据点被标记为反例;false negatives:实际上是正例的数据点被标记为反例;
检测结果是目标种类以及位置坐标,true positives的判别标准是:标记为相同种类且它们的位置框重叠区域的面积占ground truth的比值大于0.5;false positves的判别标准是:一个目标被标记为某一类,但在ground truth上并没有或在相同位置为其它种类或种类相同但是重叠区域面积占ground truth的比例小于0.5;false negatives的判别标准是:在ground truth上标记的目标,在检测结果中没有与之区域匹配的项。
当帧率小于最大配置时,每隔几帧上传一帧图片,其中未上传图片使用时间上离它最近的上一帧图片的结果作为它的识别结果。假设每个时隙有J张图片,使用j代表第j张图片,第j张图片上的目标记为Oj={O1,O2,…},最大帧率设为dfs(一般为30),当前帧率为fs,则第j张图片的目标结果为:
Oj=Oj-(j%δ)+1,
where
Figure GDA0003328373680000084
对于ground truth的目标记为Gj,则1秒内平均准确率为:
Figure GDA0003328373680000085
式中f1即为上文提及的F1 score。
对于不同分辨率、不同内容的图片,模型处理的时间不一样,对于分辨率为fr的第j张图片的处理时间记为
Figure GDA0003328373680000086
则1秒内所需要的处理时间为:
Figure GDA0003328373680000087
为了减少数据传输量,我们将profiling的过程放在服务器上进行,设备只需将最优配置的图片上传到服务器,服务器将图片缩放至不同的分辨率以及进行采样模拟不同帧率的情况。由于高帧率已经包含了低帧率的所有内容,因此,可以直接用高帧率profiling结果进行采样获取低帧率的结果。
对于同样分辨率下,不同帧率的配置,其计算准确率时,对于每帧图片的目标计算同上。
对于1s内处理时间的计算为:
Figure GDA0003328373680000091
where
Figure GDA0003328373680000092
对于每一帧的时延,其主要由三部分组成,其一是传输时延、其二是模型处理时延、其三是建立连接等较为固定的开销。分别记为
Figure GDA0003328373680000093
Figure GDA0003328373680000094
对于
Figure GDA0003328373680000095
主要由带宽以及图像分辨率决定:
Figure GDA0003328373680000096
式中,σ是一个像素点所包含的数据量,bwi是第i个视频流的带宽,这可以由之前的设备到边缘服务器延迟分析采集器测得。
对于
Figure GDA0003328373680000097
可以由之前的处理时间运算得到:
Figure GDA0003328373680000098
目标是最大化准确率的同时尽可能减少延迟,因此目标是为不同的输入视频流选择合适的配置copt使得总的目标函数值最小:
Figure GDA0003328373680000099
上式中I为视频流的数量,γ为权重控制参数,控制延迟和准确率在目标函数中占有的比重。
其中会有一个限制,在1秒内,所有的视频流的处理时间之和需要小于1秒,否则会有任务滞留,即满足:
Figure GDA0003328373680000101
当处理时间超过1s时,需要将某些配置换为次优的,对于替换的依据,采样贪心的思想来处理。替换第i个视频流的配置后,设其延迟的减少为εl,目标函数的增加为εf,分为两种情况,当替换后,若总时间达标,则选取εf最小的视频流;若总时间不达标,则选取边际效应最高的,衡量标准为:
Figure GDA0003328373680000102
选取μ最大的视频流。
默认选取使得目标函数最小的配置,当达不到要求时,按照如下流程进行处理:
a.每个视频的配置按照处理时间进行排序,对于每个视频流计算处理时间短的下一个配置的目标值变化量,比较所有的变化量,按照上面提及的方法选择最适合的下一个配置。
b.如果未能达到要求,则重复a,直到小于阈值。
c.如果迭代到最后,也无法达到要求,则认为负荷超过服务器上限,剔除最后添加的视频流。
在进行动态配置分析的同时,动态profiling决策:profiling的时间间隔设置为4秒,持续时间为1s。不同视频内容在不同配置下的表现具有很大的差异,一般取决于目标物体的种类、大小、以及场景复杂程度。因此,经考虑,使用时间间隔开始和结束的头尾两帧处理图片中的内容作比对,如果图片中的物体种类、数量一样,物体的重叠区域面积占整体面积的80%以上,则认为前后两个阶段可以共用一个配置,本时隙不用profiling。对于同种物体,其面积计算方式如下::
loverlap=min(lbegin,lend)
hoverlap=min(hbegin,hend)
Figure GDA0003328373680000103
式中lbegin,hbegin为开始帧中物体的长宽,lend,hend为结束帧中物体的长宽,loverlap,hoverlap为两帧物体重叠部分的长宽,α为物体的重叠区域面积占整体面积的比率。
步骤3.图片选择决策;
由于profiling在每个时间间隔的开始一秒进行,在短时期内,不同配置对于准确率和资源占用的影响平均来讲变化不大,但是每两帧之间的差异变化也许会比较大。因此对于每次图片上传的决策由profiling生成的结果和图片差异比对共同决定。
具体包括以下步骤:
S31.根据profiling的结果,确定当前帧是否需要上传,以及所应采用的分辨率;
S32.利用dHash计算两帧图片之间的差异程度,其具体步骤如下:
缩小图片:收缩至9*8的大小;
转化为灰度图:把缩放后的图片转化为256阶的灰度图。(Gray=(R+G+B)/3);
计算差异值:计算相邻像素间的差异值,这样每行9个像素之间产生了8个不同的差异,一共8行,共64个差异值;
比较差异值:如果前一个像素的颜色强度大于第二个像素,那么差异值就设置为“1”,如果不大于第二个像素,就设置“0”;
构造hash值:组合64个bit位生成hash值;
对比指纹:计算两幅图片的指纹,计算汉明距离;
S33.经步骤S31后,如果判定当前帧不应上传,而步骤S32中生成的距离大于10,则代表前后两帧差异巨大,应该上传,否则不上传;经步骤S31后,如果判定当前帧应该上传,如果前一帧上传过,而步骤S32中生成的距离小于5,则代表变化不大,不应上传,否则上传。
步骤4.服务器卸载决策:设备到不同服务器的带宽以及延迟不同,因此,当设备面临任务卸载决策时,不同服务器具有不同的优先级。采用的策略如下:
S41.根据设备到边缘服务器延迟分析采集器收集到的数据,找出延迟最小的服务器进行卸载;
S42.将任务加入服务器profiling分析器,判断带宽以及计算能力是否足够容纳下新的任务加入,如果可以,则完成卸载;
S43.如果无法容纳,则继续寻找延迟次小的目标服务器,重复S41-S42直到找到合适的服务器,否则任务搁置,等待别的任务完成。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

1.一种基于边缘计算的低时延实时视频分析方法,其特征在于,包括以下步骤:
S1.设备到边缘服务器延迟数据采集分析:定时更新设备到不同边缘服务器的延迟来为上层的算法提供实时可靠的数据;
S2.动态配置分析:动态地根据视频内容配置视频流上传的参数以兼顾准确率、资源消耗和时延的平衡;同时,进行动态profiling执行决策:通过动态计算profiling判断是否需要在每个时隙均重新做profiling;
S3.图片选择决策:每次图片上传的决策由profiling生成的结果和图片差异比对共同决定是否上传;
S4.服务器卸载决策:判断带宽以及计算能力是否足够容纳下新的任务加入,如果可以,则完成卸载;如果无法容纳,则继续寻找延迟次小的目标服务器。
2.根据权利要求1所述的基于边缘计算的低时延实时视频分析方法,其特征在于,所述的步骤S1具体包括以下步骤:
S11.搭建时间同步服务:为了保证数据可靠性,需要保证各机器的时间是同步的,因此,首先选择一台服务器作为时间服务器,在它上面部署ntp服务的server端,其余机器即边缘服务器、设备作为client端,设置配置中的服务器地址为选定的时间服务器IP;
S12.实时测量设备到服务器的延迟:每隔一段时间发送带时间戳和编号的消息到不同边缘服务器,边缘服务器收到消息后,记录下当前时间,将收到的消息和当前时间一同发回设备,这样就可以测量出单向的传输时延。
3.根据权利要求2所述的基于边缘计算的低时延实时视频分析方法,其特征在于,所述的步骤S2中配置包括分辨率和帧率;在进行动态配置分析时测量不同组合下视频分析结果的表现,采用最优配置1080p、30fps作为ground truth,不同组合下的效果的表现通过计算识别结果和ground truth的F1 score作为准确率的衡量标准;F1 score是精度precision和召回率recall的调和平均值;计算公式为:
Figure FDA0003328373670000021
Figure FDA0003328373670000022
Figure FDA0003328373670000023
式中,true positves:是正例的数据点被标记为正例;false positves:是反例的数据点被标记为正例;false negatives:是正例的数据点被标记为反例;
检测结果是目标种类以及位置坐标,true positives的判别标准是:标记为相同种类且它们的位置框重叠区域的面积占ground truth的比值大于0.5;false positves的判别标准是:一个目标被标记为某一类,但在ground truth上并没有或在相同位置为其它种类或种类相同但是重叠区域面积占ground truth的比例小于0.5;false negatives的判别标准是:在ground truth上标记的目标,在检测结果中没有与之区域匹配的项。
4.根据权利要求3所述的基于边缘计算的低时延实时视频分析方法,其特征在于,在所述的步骤S2中,当帧率小于最大配置时,每隔所设定的帧数,其中未上传图片使用时间上离它最近的上一帧图片的结果作为它的识别结果;假设每个时隙有J张图片,使用j代表第j张图片,第j张图片上的目标记为Oj={O1,O2,…},最大帧率设为dfs,当前帧率为fs,则第j张图片的目标结果为:
Oj=Oj-(j%δ)+1,
其中
Figure FDA0003328373670000024
对于ground truth的目标记为Gj,则1秒内平均准确率为:
Figure FDA0003328373670000025
式中f1即为F1 score。
5.根据权利要求4所述的基于边缘计算的低时延实时视频分析方法,其特征在于,在所述的步骤S2中,对于不同分辨率、不同内容的图片,模型处理的时间不一样,对于分辨率为fr的第j张图片的处理时间记为
Figure FDA0003328373670000026
则1秒内所需要的处理时间为:
Figure FDA0003328373670000031
为了减少数据传输量,将profiling的过程放在服务器上进行,设备只需将最优配置的图片上传到服务器,服务器将图片缩放至不同的分辨率以及进行采样模拟不同帧率的情况;由于高帧率已经包含了低帧率的所有内容,因此,可以直接用高帧率profiling结果进行采样获取低帧率的结果;
对于同样分辨率下,不同帧率的配置,对于1s内处理时间的计算为:
Figure FDA0003328373670000032
其中
Figure FDA0003328373670000033
6.根据权利要求5所述的基于边缘计算的低时延实时视频分析方法,其特征在于,对于每一帧的时延,其主要由三部分组成,其一是传输时延、其二是模型处理时延、其三是建立连接相关固定的开销,分别记为
Figure FDA0003328373670000034
Figure FDA0003328373670000035
Figure FDA0003328373670000036
对于
Figure FDA0003328373670000037
由带宽以及图像分辨率决定:
Figure FDA0003328373670000038
式中,σ是一个像素点所包含的数据量,bwi是第i个视频流的带宽;
对于
Figure FDA0003328373670000039
由处理时间运算得到:
Figure FDA00033283736700000310
7.根据权利要求6所述的基于边缘计算的低时延实时视频分析方法,其特征在于,目标是最大化准确率的同时尽可能减少延迟,因此目标是为不同的输入视频流选择合适的配置copt使得总的目标函数值最小:
Figure FDA00033283736700000311
上式中I为视频流的数量,γ为权重控制参数,控制延迟和准确率在目标函数中占有的比重;
其中会有一个限制,在1秒内,所有的视频流的处理时间之和需要小于1秒,否则会有任务滞留:
Figure FDA0003328373670000041
当处理时间超过1s时,需要将某些配置换为次优的,对于替换的依据,采用贪心的思想来处理;替换第i个视频流的配置后,设其延迟的减少为εl,目标函数的增加为εf,分为两种情况,当替换后,若总时间达标,则选取εf最小的视频流;若总时间不达标,则选取边际效应最高的,衡量标准为:
Figure FDA0003328373670000042
选取μ最大的视频流。
8.根据权利要求7所述的基于边缘计算的低时延实时视频分析方法,其特征在于,默认选取使得目标函数最小的配置,当达不到要求时,按照如下流程进行处理:
a.每个视频的配置按照处理时间进行排序,对于每个视频流计算,处理时间短的下一个配置的目标值变化量,比较所有的变化量,选择最适合的下一个配置;
b.如果未能达到要求,则重复步骤a,直到小于阈值;
c.如果迭代到最后,也无法达到要求,则认为负荷超过服务器上限,剔除最后添加的视频流。
9.根据权利要求8所述的基于边缘计算的低时延实时视频分析方法,其特征在于,所述的图片选择决策具体包括以下步骤:
S31.根据profiling的结果,确定当前帧是否需要上传,以及所应采用的分辨率;
S32.利用dHash计算当前和前一帧图片之间的差异程度,其具体步骤如下:
缩小图片:收缩至9*8的大小;
转化为灰度图:把缩放后的图片转化为256阶的灰度图;Gray=(R+G+B)/3;
计算差异值:计算相邻像素间的差异值,这样每行9个像素之间产生了8 个不同的差异,一共8行,共64个差异值;
比较差异值:如果前一个像素的颜色强度大于第二个像素,那么差异值就设置为“1”,如果不大于第二个像素,就设置“0”;
构造hash值:组合64个bit位生成hash值;
对比指纹:计算两幅图片的指纹,计算汉明距离;
S33.经步骤S31后,如果判定当前帧不应上传,而步骤S32中生成的距离大于10,则代表前后两帧差异巨大,应该上传,否则不上传;经步骤S31后,如果判定当前帧应该上传,如果前一帧上传过,而步骤S32中生成的距离小于5,则代表变化不大,不应上传,否则上传。
10.根据权利要求9所述的基于边缘计算的低时延实时视频分析方法,其特征在于,所述的服务器卸载决策具体包括:
S41.根据设备到边缘服务器延迟分析采集器收集到的数据,找出延迟最小的服务器进行卸载;
S42.将任务加入服务器profiling分析器,判断带宽以及计算能力是否足够容纳下新的任务加入,如果可以,则完成卸载;
S43.如果无法容纳,则继续寻找延迟次小的目标服务器,重复S41-S42直到找到合适的服务器,否则任务搁置,等待别的任务完成。
CN202011638574.3A 2020-12-31 2020-12-31 基于边缘计算的低时延实时视频分析方法 Active CN112804219B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011638574.3A CN112804219B (zh) 2020-12-31 2020-12-31 基于边缘计算的低时延实时视频分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011638574.3A CN112804219B (zh) 2020-12-31 2020-12-31 基于边缘计算的低时延实时视频分析方法

Publications (2)

Publication Number Publication Date
CN112804219A CN112804219A (zh) 2021-05-14
CN112804219B true CN112804219B (zh) 2022-02-08

Family

ID=75808952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011638574.3A Active CN112804219B (zh) 2020-12-31 2020-12-31 基于边缘计算的低时延实时视频分析方法

Country Status (1)

Country Link
CN (1) CN112804219B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259472A (zh) * 2021-06-08 2021-08-13 江苏电力信息技术有限公司 一种面向视频分析任务的边缘节点资源分配方法
CN114972550B (zh) * 2022-06-16 2023-03-24 慧之安信息技术股份有限公司 面向实时视频流分析的边缘计算方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110087318A (zh) * 2019-04-24 2019-08-02 重庆邮电大学 基于5g移动边缘计算的任务卸载和资源分配联合优化方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10904791B2 (en) * 2018-10-04 2021-01-26 Saankhya Labs Pvt. Ltd. System and method for offloading data and video traffic to a supplemental downlink overlay network
CN110018834A (zh) * 2019-04-11 2019-07-16 北京理工大学 一种混合移动云/边缘计算的任务卸载和数据缓存方法
CN110290011A (zh) * 2019-07-03 2019-09-27 中山大学 边缘计算中基于Lyapunov控制优化的动态服务放置方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110087318A (zh) * 2019-04-24 2019-08-02 重庆邮电大学 基于5g移动边缘计算的任务卸载和资源分配联合优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向城轨视频监控的边缘计算系统时延与能耗优化算法;张恩硕;《铁路通信信号工程技术》;20200925(第09期);全文 *

Also Published As

Publication number Publication date
CN112804219A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
CN112804219B (zh) 基于边缘计算的低时延实时视频分析方法
CN109063694B (zh) 一种视频目标检测识别方法
CN108010037B (zh) 图像处理方法、装置及存储介质
CN106504278A (zh) 高动态范围色调映射
US8903130B1 (en) Virtual camera operator
WO2012149296A2 (en) Providing content aware video adaptation
WO2021000830A1 (zh) 人脸识别的方法、装置、计算机设备和存储介质
CN101840435A (zh) 一种实现视频预览和检索的方法及移动终端
US20160112757A1 (en) Server, client and video processing method
CN112069977A (zh) 图像处理方法、装置、电子设备及计算机可读介质
WO2022000298A1 (en) Reinforcement learning based rate control
CN114257815A (zh) 一种视频转码方法、装置、服务器和介质
Zhang et al. Mfvp: Mobile-friendly viewport prediction for live 360-degree video streaming
JP7367187B2 (ja) 非遮蔽ビデオオーバーレイ
Yuan et al. AccDecoder: Accelerated decoding for neural-enhanced video analytics
US8705626B2 (en) Motion estimation method
CN111369477A (zh) 一种针对视频恢复任务的预分析和工具自适应的方法
CN114866790B (zh) 直播流调度方法及装置
CN113794756B (zh) 一种支持移动设备的多视频流卸载方法及系统
CN110659571B (zh) 一种基于帧缓存队列的流视频人脸检测加速方法
Huo et al. TS360: A two-stage deep reinforcement learning system for 360-degree video streaming
CN113014745B (zh) 视频图像降噪方法及装置、存储介质及电子设备
CN111770363B (zh) 基于情景感知的低延迟高分辨率移动增强现实系统
Tu et al. PSTile: Perception-Sensitivity Based 360$^\circ $ Tiled Video Streaming for Industrial Surveillance
CN113988294A (zh) 训练预测网络的方法、图像处理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant