装卸口状态监控方法、装置、设备及其存储介质与流程

文档序号:17186981发布日期:2019-03-22 21:26阅读:283来源:国知局
装卸口状态监控方法、装置、设备及其存储介质与流程

本申请具体涉及物流作业技术领域,尤其涉及装卸口状态监控方法、装置、设备及其存储介质。



背景技术:

中转场(站)是网络中的集散节点,基本功能是对快件进行集散和转运。这类网点也称为集散点集散中心等。集散中心的称谓在一般物流业中使用较多,快递业一般称为中转场、中转站、分拨场、中转中心等,除仓储、加工功能外,两者的其他功能基本相同。

快件抵达中转场后,需要进行装货、卸货等操作,再运输到目的地的中转场,进行相同的一系列操作,这些操作主要集中在中转场的工作平台,即装卸口。装卸口是货物被装载到运输工具上或者从运输工具被卸载下来的工作平台。对于装卸口的监管,目前主要是采用人工监控,人工估测的方式。这种方式由于人的主观性判断,导致装卸口的监管不够精准,存在严重的准确性问题。另外,运输工具进站或入港后,由于人工误差导致其可能没有直接驶入对应的装卸口,导致工作效率较低,人员时间浪费等问题。

因此,亟待提出一种能够适应物流发展的对装卸口能够智能监控的方法。



技术实现要素:

鉴于现有技术中的上述缺陷或不足,期望提供一种基于图像帧实现对装卸口进行智能监控的技术方案。

第一方面,本申请实施例提供了一种装卸口状态监控方法,该方法包括:

从装卸口的视频流数据中提取视频帧序列;

基于视频帧序列中相邻帧检测装卸口的当前帧的行为;

基于当前帧的行为确定装卸口的当前时刻的状态是否发生迁移。

第二方面,本申请实施例提供了一种装卸口状态监控装置,该装置包括:

视频帧提取单元,用于从装卸口的视频流数据中提取视频帧序列;

行为检测单元,用于基于视频帧序列的相邻帧检测装卸口的当前帧的行为;

状态迁移单元,用于基于当前帧的行为确定装卸口的当前时刻的状态是否发生迁移。

第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该程序时实现如本申请实施例描述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序用于:

该计算机程序被处理器执行时实现如本申请实施例描述的方法。

本申请实施例提供的监控装卸口状态的技术方案,通过状态机机制对装卸口状态进行管理,提高了系统监控装卸口的生产状态的准确度和可信度,并降低了人工成本。

进一步地,通过光流图的分类判断进一步地提高了监控状态的精确度,节省了监控时间。

进一步地,通过增加图像相似度值的计算减少计算量,节约计算资源,以及通过图像缩放处理进一步减少计算量。

进一步地,通过计时单元对装卸口的各个状态的持续时间进行统计,为装卸口的监控管理提供丰富的数据资源。

本申请实施例的技术方案,基于视频流数据对装卸口的生产状态进行监控管理,降低了人工监控成本,并利用状态机机制极大地提高监控系统的准确度,提高了装卸口的评估效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出了本申请实施例提供的装卸口状态监控方法的流程示意图;

图2示出了本申请又一实施例提供的装卸口状态监控方法的部分流程示意图;

图3示出了本申请实施例提供的装卸口状态监控方法的部分流程示意图;

图4示出了本申请实施例提供的装卸口状态监控的方法的流程示意图;

图5示出了本申请实施例提供的装卸口状态监控装置的结构性示意框图;

图6示出了本申请又一实施例提供的装卸口状态监控装置的部分示意性结构框图;

图7示出了本申请实施例提供的装卸口状态监控装置的部分示意性结构框图;

图8示出了本申请实施例提供的装卸口状态监控装置的示意性结构框图;

图9示出了适于用来实现本申请实施例的终端设备的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

在中转场中,快递工作人员在监控到运输工具驶入中转平台时,通过工作人员主观地判断导致装卸口的监控存在一定的误差。本申请期望提出一种对装卸口进行全自动监控管理的方法。

请参考图1,图1示出了本申请实施例提供的装卸口状态监控方法的流程示意图。

如图1所示,该方法包括:

步骤110,从装卸口的视频流数据中提取视频帧序列。

本申请实施例中,从多路视频中获取至少一路视频流进行分析处理。其中每一路视频流数据与一个装卸口相对应。从装卸口的视频流数据中提取视频帧帧序列。当某一路摄像头采集到运输工具驶入装卸平台的装卸口时,从采集得到的视频流数据中提取包含运输工具驶入场景的若干视频帧序列,或者图像帧序列。这种在时间上连续的视频帧序列能够很好地实现场景构建。

步骤120,基于视频帧序列中相邻帧检测装卸口的当前帧的行为。

在提取出视频帧序列之后,提取视频帧序列中投影出的目标对象的动态特征。基于视频帧序列的动态特征,可以得到图像中目标对象的相对位置变化或者摄像机位置变化等运动信息。其中,动态特征提取方法例如可以是光流法和块匹配算法。光流法,例如可以是tvl1算法,lk算法等。目标对象,例如可以是在传输带上运动的货物(也称为包裹、物品等),或者在运输工具,例如运输车车厢内的工作人员的动作。本申请实施例,可以通过检测相邻帧中货物的动态特征,或者工作人员的动态特征,或者二者相结合的方式来检测装卸口的当前行为。优选地,基于视频帧序列中相邻帧之间的光流图来判断装卸口的当前行为。当前行为例如可以是:装货行为、卸货行为、空闲行为。其中,装货行为是指货物(或快件,包裹)从传输带输入到运输工具中的传输行为。卸货行为是指货物(或快件,包裹)从运输工具输出到传输带上的传输行为。空闲行为是指传输带上无货物运动,或者工作人员没有对货物进行搬运操作。

例如可以分别计算相邻帧的光流图,从该光流图中提取x,y方向的光流图。然后,用x,y方向的光流图替换rgb图像中的r通道和g通道,并去掉b通道后,得到新的图像帧作为分类模型的输入图像。新的图像帧输入到分类模型,经过分类模型检测,输出当前帧的行为的检测结果。其中,分类模型,例如可以是incepition-v2,cnn网络模型、基于深度学习建立的图像分类模型等。

步骤130,基于当前帧的行为确定装卸口的当前时刻的状态是否发生迁移。

本申请实施例,在经过分类模型检测之后,可以分析得到当前帧的行为是装货行为,或者卸货行为,或者空闲行为。

在输出当前帧的行为之后,判断当前帧的行为是否足以触发装卸口的状态机发生状态迁移。如果当前帧的行为满足触发条件,则触发装卸口的状态机从当前状态发生迁移。触发条件例如可以是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的次数等于预设的第一阈值或者预设值。

例如,状态机的当前状态为工作状态,即表示装卸口正处于装货或者卸货过程。如果检测到当前帧的行为是装货行为,装货行为与状态机的当前状态(即工作状态)是相同的,则可以判断当前状态保持不变。同理,如果检测到当前帧的行为是卸货行为,卸货行为与状态机的当前状态(即工作状态)也是相同的,则可以判断当前状态保持不变。

如果检测到当前帧的行为是空闲行为,而状态机的当前状态为工作状态,则可以判断当前状态发生变化,装卸口的状态机需要从工作状态迁移到空闲状态。

本申请实施例,通过视频帧序列进行图像分析可以自动地分析出装卸口的装卸行为,从而避免了人工主观判断导致的误差。

进一步地,以基于光流图检测装卸口的当前帧的行为为例,本申请实施例还提出了一种装卸口状态监控方法,以提高状态判断的稳定性。

请参考图2,图2示出了本申请又一实施例提供的装卸口状态监控方法的部分流程示意图。

如图2所示,该方法包括:

步骤210,从装卸口的视频流数据中提取视频帧序列。

步骤220,计算视频帧序列的相邻帧的光流图。

步骤230,将光流图输入预先建立的分类模型后输出装卸口的当前帧的行为。

步骤240,判断当前帧的行为是否满足触发条件,其中触发条件包括:当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的持续时间或次数等于预设的第一阈值;

步骤250,如果当前帧的行为满足触发条件,则触发装卸口的当前时刻的状态发生迁移。

本申请实施例中,在获取装卸口的视频流数据中提取出视频帧序列,基于视频帧序列计算相邻帧的光流图。计算的相邻帧的光流图输入到预先建立的分类模型之后,输出装卸口的当前帧的行为的判断结果。

其中,计算光流图,例如采用tv-l1光流法,即一阶数据项的总变分方法。将双项求解的tv-l1光流图进行编码后,输入到预先建立的分类模型进行分类检测。分类模型例如可以是基于神经网络、深度学习、机器学习得到的分类模型。将光流图输入到分类模型后,可以得到装卸口的相邻帧的当前帧的分类结果,该分类结果称为当前帧的行为。

本申请实施例中,在判断当前帧的行为与装卸口的当前时刻的状态不同时,可以触发装卸口的当前时刻的状态发生迁移。

为了进一步提高判断的准确性,还可以在判断当前帧的行为与装卸口的当前时刻的状态不同时,继续判断当前帧的行为与装卸口的相邻帧的前一帧的行为是否相同。如果相同,则触发第二计时单元开始累计当前帧的行为的时间、或触发计数单元开始累计当前帧的行为与相邻帧的前一帧的行为相同的次数。

当第二计时单元或计数单元累计的时间或次数等于预设的第一阈值时,则判定当前帧的行为符合触发条件,此时,触发装卸口的当前时刻的状态发生迁移。其中,第一阈值的取值,可以是连续n帧的时间长度,或者预设的时间长度,或者预设的数值。或者当计数单元累计的次数等于预设的第一阈值,该第一阈值取值为5,表示相邻帧的被判定为结果相同的次数为5次。此时,可以触发装卸口的当前时刻的状态发生迁移。

本申请实施例,通过预先设置的检测累计时间或次数,可以避免由于分类模型误差导致的检测不准确问题,从而可以获得较为精准的行为时间点。

优选地,本申请实施例还提出了一种装卸口状态监控方法,能够有效地减少计算量,节约计算资源。请参考图3,图3示出了本申请实施例提供的装卸口状态监控方法的部分流程示意图。

如图3所示,在从装卸口的视频流数据中提取视频帧序列之后,计算相邻帧的光流图之前,该方法还包括:

步骤320,计算视频帧序列的相邻帧之间的图像相似度值。

步骤330,判断图像相似度值是否大于预设的第二阈值,如果大于预设的第二阈值则进入步骤340;如果图像相似度值小于等于预设的第二阈值,则进入步骤350。

步骤340,直接判断当前帧的行为为空闲行为。

步骤350,计算视频帧序列的相邻帧的光流图。

本申请实施例中,在获取装卸口的视频流数据中提取出视频帧序列,为了进一步地减少计算量,节约计算资源。通过计算相邻帧之间的图像相似度值来决定是否需要计算相邻帧的光流图,从而减少计算量。如果相邻帧之间的相似度值大于预设的第二阈值,则说明相邻帧之间的相似度较高,直接跳过计算相邻帧的光流图的步骤,判断当前帧的行为为空闲行为。如果相邻帧之间的相似度值小于等于预设的第二阈值,则说明相邻帧之间相似程度不够,则进入计算相邻帧的光流图的步骤,通过计算得到光流图用于判断相邻帧中目标对象发生的变化。将计算的光流图输入到预先建立的分类模型可以得到装卸口的当前帧的行为。其中,第二阈值的取值,例如可以是0.99。

基于当前帧的行为是否满足触发条件来确定装卸口的当前时刻的状态是否发生迁移。该触发条件,例如可以是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧行为与装卸口的相邻帧的前一帧的行为相同的次数等于预设的第一阈值或预设值。

本申请实施例中,计算视频帧序列的相邻帧之间的图像相似度值可以根据以下方式:

ssim(x,y)=l(x,y)*c(x,y)*s(x,y)(8)

x、y用于表示图像帧(也称为视频帧);

i、j用于表示图像帧的像素坐标;

r、c分别为图像帧的长、宽;

ux为图像帧x的均值,为图像帧x的方差,σxy为图像帧x和y的协方差,其中c1、c2、c3分别是对应的预设值。该预设值的设置为了避免公式(5)、(6)、(7)中出现分母为0的情况。

公式(8)ssim值表示为图像帧x与y的图像相似度值。

本申请实施例,通过计算图像相似度值减少计算量,节约计算资源,提升图像处理的工作效率。

优选地,本申请实施例还提供了一种对装卸口的状态进行监控的方法,请参考图4,图4示出了本申请实施例提供的装卸口状态监控的方法的流程示意图。

如图4所示,该方法包括:

步骤410,从装卸口的视频流数据中提取视频帧序列。

可选地,步骤420,对视频帧序列进行缩放处理。

本申请实施例,通过对视频帧序列的每一帧图像进行缩放处理,例如可以将其缩放为可以被14整除的像素,例如448*448像素,336*336像素。通过图像缩放处理可以进一步减少计算量,从而节省处理时间,节约计算资源。

步骤430,计算视频帧序列中相邻帧之间的图像相似度值;

步骤440,判断图像相似度值是否大于预设的第二阈值,如果大于预设的第二阈值,则步骤440a;如果图像相似度值小于等于预设的第二阈值,则进入步骤440b。

步骤440a,直接判断当前帧的行为为空闲行为。

步骤440b,计算视频帧序列中相邻帧的光流图。

步骤450,将光流图输入预先建立的分类模型后输出装卸口的当前帧的行为。

步骤460,判断当前帧的行为是否满足触发条件,该触发条件是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的持续时间或次数等于预设的第一阈值。

步骤460a,如果当前帧的行为满足触发条件,则触发装卸口的当前时刻的状态发生迁移。

当触发条件是当前帧的行为与装卸口的当前时刻的状态不同,则用于统计当前时刻的状态的计时单元从状态迁移开始计时。但是,图像帧检测存在不准确性,可能判定的当前帧的行为会出现偶然的跳变或者错误的现象,导致计时单元统计的时间出现错误。

例如,当前帧的行为与装卸口的状态不同,则立即触发装卸口的状态机的当前时刻的状态发生迁移,并触发用于统计迁移后的状态的计时单元开始计时。

当前帧的行为与装卸口的状态相同,则触发用于统计当前状态的计时单元持续计时。

如果当前帧的行为被检测错误,则导致状态迁移的结果和计时单元统计的结果出现误差。

为了避免这种误差,进一步地改进触发条件,在判断当前帧的行为与装卸口的当前时刻的状态不同时,再进一步判断当前帧的行为与相邻帧的前一帧的行为是否相同。如果相同,在预设时间范围对连续多帧进行判断,如果判断结果均显示连续多帧中当前帧的行为与相邻帧中前一帧的行为均相同,则触发装卸口的状态机的当前时刻的状态发生迁移,并将连续多帧的时间作为统计状态迁移后的时间的起始点。

改进的触发条件可以表示为当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的持续时间或次数等于预设的第一阈值。在该触发条件下,可以分为多种情况启动计时单元用于统计各个状态的持续时间。例如:

步骤460a-1,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为不同时,则第一计时单元继续累计当前时刻的状态的时间。其中,第一计时单元用于统计当前时刻的状态的时间。

例如,在判断当前帧的行为与装卸口的当前时刻的状态不同时,装卸口的状态有两种,其一为工作状态,其二为空闲状态,当前帧的行为有三种情况,装货行为,卸货行为,空闲行为。假设装卸口的当前时刻的状态为工作状态,当前帧的行为为空闲行为,相邻帧的前一帧的行为为装货行为,则显然当前帧的行为属于检测失误。故不影响第一计时单元的工作。

步骤460a-2,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为相同时,则第二计时单元开始累计当前帧的行为的时间。

步骤460a-3,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为相同时,计数单元开始累计当前帧的行为与相邻帧的前一帧的行为相同的次数。其中,第二计时单元用于统计当前帧的行为与相邻帧的前一帧的行为相同的持续时间。计数单元用于统计当前帧的行为与相邻帧的前一帧的行为的相同的次数。其中,第一计时单元在第二计时单元或计数单元开始工作时,则停止工作。

本申请实施例中,第二计时单元统计的时间长度可能会被放入第一计时单元,也可能会被放入第二计时单元。

步骤460a-4,当第二计时单元的持续时间或计数单元的统计次数达到第一阈值时,则第三计时单元以第一阈值对应的时间为起点开始计时。

即当前帧的行为与相邻帧的前一帧的行为相同的持续时间或者次数达到第一阈值时,表示当前帧的行为与装卸口的当前时刻的状态的不同属于真的不同的情形,第三计时单元用于统计状态迁移后的时间,由于状态实际迁移的时间是在一段缓冲时间(即第一阈值的时间)的处理后,故本申请实施例通过第二计时单元用于统计缓冲阶段的时间,当状态发生迁移后,将第二计时单元统计的时间(即第一阈值对应的时间)作为第三计时单元统计时间的起点,开始计时。或者,计数单元用于统计缓冲阶段出现的当前帧与相邻帧的前一帧的行为相同的次数,当次数达到第一阈值时,读取第一阈值对应的时间,以第一阈值对应的时间作为第三计时单元统计时间的起点,开始计时。

步骤460a-5,当第二计时单元的持续时间或计数单元的统计次数未达到第一阈值时,则第一计时单元在其停止工作的计时结果基础上加上第二计时单元的统计结果得到和值之后,以该和值为起点开始计时。

本申请实施例,通过比较当前帧的行为与相邻帧的前一帧的行为相同的持续时间或次数是否等于第一阈值时,在未达到阈值时,持续监测持续时间或次数,如果持续时间或次数小于第一阈值,则说明第二计时单元统计的时间仍属于第一计时单元应该统计的当前时刻的状态的时间,将第二计时单元统计的结果放入第一计时单元,得到第一计时单元的计时结果与第二计时单元的计时结果之和后,开始计时。

步骤460b,如果当前帧的行为不满足触发条件,则表示当前帧的行为与装卸口的当前时刻的状态相同,则第一计时单元继续累计所述当前时刻的状态的时间。

当前帧的行为与装卸口的当前时刻的状态相同时,则第一计时单元继续累计当前时刻的状态的时间。步骤470,分别存储当前时刻的状态、迁移后的状态以及第一计时单元、第二计时单元、第三计时单元输出的时间。

本申请上述实施例,还可以包括在从装卸口的视频流数据中提取视频帧序列之前,初始化装卸口的当前时刻的状态、当前行为、前一时刻的状态以及计时单元等。

本申请上述实施例在引入状态机机制后,直接缩减了人工的监控成本,且提升装卸口状态监测的准确度,可靠性。并为其他管理系统提供了丰富的数据接口,用于提供便于统计分析的基础数据。

应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

请参考图5,图5示出了本申请实施例提供的装卸口状态监控装置的结构性示意框图。

如图5所示,该装置包括:

视频帧提取单元510,用于从装卸口的视频流数据中提取视频帧序列。

本申请实施例中,从多路视频中获取至少一路视频流进行分析处理。其中每一路视频流数据与一个装卸口相对应。从装卸口的视频流数据中提取视频帧帧序列。当某一路摄像头采集到运输工具驶入装卸平台的装卸口时,从采集得到的视频流数据中提取包含运输工具驶入场景的若干视频帧序列,或者图像帧序列。这种在时间上连续的视频帧序列能够很好地实现场景构建。

行为检测单元520,用于基于视频帧序列中相邻帧检测装卸口的当前帧的行为。

在提取出视频帧序列之后,提取视频帧序列中投影出的目标对象的动态特征。基于视频帧序列的动态特征,可以得到图像中目标对象的相对位置变化或者摄像机位置变化等运动信息。其中,动态特征提取方法例如可以是光流法和块匹配算法。光流法,例如可以是tvl1算法,lk算法等。目标对象,例如可以是在传输带上运动的货物(也称为包裹、物品等),或者在运输工具,例如运输车车厢内的工作人员的动作。本申请实施例,可以通过检测相邻帧中货物的动态特征,或者工作人员的动态特征,或者二者相结合的方式来检测装卸口的当前行为。优选地,基于视频帧序列中相邻帧之间的光流图来判断装卸口的当前行为。

例如可以分别计算相邻帧的光流图,从该光流图中提取x,y方向的光流图。然后,用x,y方向的光流图替换rgb图像中的r通道和g通道,并去掉b通道后,得到新的图像帧作为分类模型的输入图像。新的图像帧输入到分类模型,经过分类模型检测,输出当前帧的行为的检测结果。其中,分类模型,例如可以是incepition-v2,cnn网络模型、基于深度学习建立的图像分类模型等。

状态迁移单元530,用于基于当前帧的行为确定装卸口的当前时刻的状态是否发生迁移。

本申请实施例,在经过分类模型检测之后,可以分析得到当前帧的行为是装货行为,或者卸货行为,或者空闲行为。其中,装货行为是指货物(或快件,包裹)从传输带输入到运输工具中的传输行为。卸货行为是指货物(或快件,包裹)从运输工具输出到传输带上的传输行为。空闲行为是指传输带上无货物运动,或者工作人员没有对货物进行搬运操作。

在输出当前帧的行为之后,判断当前帧的行为是否足以触发装卸口的状态机发生状态迁移。如果当前帧的行为满足触发条件,则触发装卸口的状态机从当前状态发生迁移。触发条件例如可以是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的次数等于预设的第一阈值或者预设值。

例如,状态机的当前状态为工作状态,即表示装卸口正处于装货或者卸货过程。如果检测到当前帧的行为是装货行为,装货行为与状态机的当前状态(即工作状态)是相同的,则可以判断当前状态保持不变。同理,如果检测到当前帧的行为是卸货行为,卸货行为与状态机的当前状态(即工作状态)是相同的,则可以判断当前状态保持不变。

如果检测到当前帧的行为是空闲行为,而状态机的当前状态为工作状态,则可以判断当前状态发生变化,装卸口的状态机需要从工作状态迁移到空闲状态。

本申请实施例,通过视频帧序列进行图像分析可以自动地分析出装卸口的装卸行为,从而避免了人工主观判断导致的误差。

进一步地,在上述实施例基础上,以基于光流图检测装卸口的当前帧的行为为例,本申请实施例还提出了一种装卸口状态监控方法,以提高状态判断的稳定性。

请参考图6,图6示出了本申请又一实施例提供的装卸口状态监控装置的部分示意性结构框图。

如图6所示,在视频帧提取单元之后,该装置还包括:

光流图计算子单元620,用于计算视频帧序列的相邻帧的光流图。

分类模型子单元630,用于将光流图输入预先建立的分类模型后输出装卸口的当前帧的行为。

第一判断子单元640,用于判断当前帧的行为是否满足触发条件,其中触发条件包括:当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的前一时刻的状态相同的持续时间或次数等于预设的第一阈值;

第一触发子单元650,用于如果当前帧的行为满足触发条件,则触发装卸口的当前时刻的状态发生迁移。

本申请实施例中,在获取装卸口的视频流数据中提取出视频帧序列,基于视频帧序列的相邻帧计算光流图。

计算的相邻帧的光流图输入到预先建立的分类模型之后,输出装卸口的当前帧的行为的判断结果。

其中,计算光流图,例如采用tv-l1光流法,即一阶数据项的总变分方法。将双项求解的tv-l1光流图进行编码后,输入到预先建立的分类模型进行分类检测。分类模型例如可以是基于神经网络、深度学习、机器学习得到的分类模型。将光流图输入到分类模型后,可以得到装卸口的相邻帧的当前帧的检测状态,该检测状态称为当前帧的行为。

本申请实施例中,在判断当前帧的行为与装卸口的当前时刻的状态不同时,可以触发装卸口的当前时刻的状态发生迁移。

为了进一步提高判断的准确性,还可以在判断当前帧的行为与装卸口的当前时刻的状态不同时,继续判断当前帧的行为与装卸口的相邻帧的前一帧的行为是否相同。如果相同,则触发第二计时单元开始累计当前帧的行为的时间、或触发计数单元开始累计当前帧的行为与相邻帧的前一帧的行为相同的次数。

当第二计时单元或计数单元累计的时间或次数等于预设的第一阈值时,则判定当前帧的行为符合触发条件,此时,触发装卸口的当前时刻的状态发生迁移。其中,第一阈值的取值,可以是连续n帧的时间长度,或者预设的时间长度,或者预设的数值。或者当计数单元累计的次数等于预设的第一阈值,该第一阈值取值为5,表示相邻帧的被判定为结果相同的次数为5次。此时,可以触发装卸口的当前时刻的状态发生迁移。。

本申请实施例,通过预先设置的检测累计时间或次数,可以避免由于分类模型误差导致的检测不准确问题,从而可以获得较为精准的行为时间点。

优选地,本申请实施例还提出了一种装卸口状态监控装置,能够有效地减少计算量,节约计算资源。请参考图7,图7示出了本申请实施例提供的装卸口状态监控装置的部分示意性结构框图。

如图7所示,在上述实施例基础上,即在视频帧提取单元之后,光流图计算子单元之前,该装置还可以包括:

图像相似度计算子单元720,用于计算视频帧序列的相邻帧之间的图像相似度值。

第二判断子单元730,用于判断图像相似度值是否大于预设的第二阈值,如果图像相似度值大于预设的第二阈值则直接判断当前帧的行为为空闲行为;如果图像相似度值小于等于预设的第二阈值,则进入光流图计算子单元740。

光流图计算子单元740,用于计算视频帧序列的相邻帧的光流图。

本申请实施例中,在获取装卸口的视频流数据中提取出视频帧序列,为了进一步地减少计算量,节约计算资源。通过计算相邻帧之间的图像相似度值来决定是否需要计算相邻帧的光流图,从而减少计算量。如果相邻帧之间的相似度值大于预设的第二阈值,则说明相邻帧之间的相似度较高,直接跳过计算相邻帧的光流图的步骤,判断当前帧的行为为空闲行为。如果相邻帧之间的相似度值小于等于预设的第二阈值,则说明相邻帧之间相似程度不够,则进入计算相邻帧的光流图的步骤,通过计算得到光流值用于判断相邻帧中目标对象发生的变化。将计算的光流图输入到预先建立的分类模型可以得到装卸口的当前帧的行为。其中,第二阈值的取值,例如可以是0.99。

基于当前帧的行为是否满足触发条件来确定装卸口的当前时刻的状态是否发生迁移。该触发条件,例如可以是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的状态相同的次数等于预设的第一阈值或预设值。

本申请实施例中,计算相邻帧之间的图像相似度值可以根据以下方式:

ssim(x,y)=l(x,y)*c(x,y)*s(x,y)(8)

x、y用于表示图像帧(也称为视频帧);

i、j用于表示图像帧的像素坐标;

r、c分别为图像帧的长、宽;

ux为图像帧x的均值,为图像帧x的方差,σxy为图像帧x和y的协方差,其中c1、c2、c3分别是对应的预设值。该预设值的设置为了避免公式(5)、(6)、(7)中出现分母为0的情况。

公式(8)ssim值表示为图像帧x与y的图像相似度值。

本申请实施例,通过计算图像相似度值减少计算量,节约计算资源,提升图像处理的工作效率。

本申请实施例还提供了一种对装卸口的状态进行监控的装置,请参考图8,图8示出了本申请实施例提供的装卸口状态监控装置的示意性结构框图。

如图8所示,该装置包括:

视频帧提取单元810,用于从装卸口的视频流数据中提取视频帧序列。

可选地,缩放处理单元820,用于对视频帧序列进行缩放处理。

本申请实施例,通过对视频帧序列的每一帧图像进行缩放处理,例如可以将其缩放为可以被14整除的像素,例如448*448像素,336*336像素。通过图像缩放处理可以进一步减少计算量,从而节省处理时间,节约计算资源。

图像相似度计算子单元830,用于计算视频帧序列中相邻帧之间的图像相似度值。

第一判断子单元840,用于判断图像相似度值是否大于预设的第二阈值,如果图像相似度值大于预设的第二阈值,则进入确定子单元840a,如果图像相似度值小于等于预设的第二阈值,则进入光流图计算子单元840b。

确定子单元840a,用于直接确定当前帧的行为为空闲行为。

光流图计算子单元840b,用于计算视频帧序列中相邻帧的光流图。

分类模型子单元850,用于将光流图输入预先建立的分类模型后输出装卸口的当前帧的行为。

第二判断子单元860,用于判断当前帧的行为是否满足触发条件,该触发条件是当前帧的行为与装卸口的当前时刻的状态不同;或者,当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的持续时间或次数等于预设的第一阈值。

第一触发子单元860a,用于如果当前帧的行为满足触发条件,则触发装卸口的当前时刻的状态发生迁移。

当触发条件是当前帧的行为与装卸口的当前时刻的状态不同,则用于统计当前时刻的状态的计时单元从状态迁移开始计时。但是,图像帧检测存在不准确性,可能判定的当前帧的行为会出现偶然的跳变或者错误的现象,导致计时单元统计的时间出现错误。

例如,当前帧的行为与装卸口的状态不同,则立即触发装卸口的状态机的当前时刻的状态发生迁移,并触发用于统计迁移后的状态的计时单元开始计时。

当前帧的行为与装卸口的状态相同,则触发用于统计当前状态的计时单元持续计时。

如果当前帧的行为被检测错误,则导致状态迁移的结果和计时单元统计的结果出现误差。

为了避免这种误差,进一步地改进触发条件,在判断当前帧的行为与装卸口的当前时刻的状态不同时,再进一步判断当前帧的行为与相邻帧的前一帧的行为是否相同,如果相同,在预设时间范围对连续多帧进行判断,如果判断结果均显示连续多帧中当前帧的行为与相邻帧中前一帧的行为均相同,则触发装卸口的状态机的当前时刻的状态发生迁移,并将连续多帧的时间作为统计状态迁移后的时间的起始点。

改进的触发条件可以表示为当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与装卸口的相邻帧的前一帧的行为相同的持续时间或次数等于预设的第一阈值。

本申请实施例,还可以包括:

第一计时单元860b,用于当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为不同时,则继续累计当前时刻的状态的时间。其中,第一计时单元用于统计当前时刻的状态的时间。

例如,在判断当前帧的行为与装卸口的当前时刻的状态不同时,装卸口的状态有两种,其一为工作状态,其二为空闲状态,当前帧的行为有三种情况,装货行为,卸货行为,空闲行为。假设装卸口的当前时刻的状态为工作状态,当前帧的行为为空闲行为,相邻帧的前一帧的行为为装货行为,则显然当前帧的行为属于检测失误。故不影响第一计时单元的工作。

第二计时单元860c,用于当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为相同时,则开始累计当前帧的行为的时间。

或者,计数单元860d,用于当前帧的行为与装卸口的当前时刻的状态不同,且当前帧的行为与相邻帧的前一帧的行为相同时,开始累计当前帧的行为与相邻帧的前一帧的行为相同的次数。其中,第二计时单元860c用于统计当前帧的行为与相邻帧的前一帧的行为相同的持续时间。计数单元860d,用于统计当前帧的行为与相邻帧的前一帧的行为的相同的次数。

其中,第一计时单元860b在第二计时单元860c或计数单元860d开始工作时,则停止工作。

第三计时单元860e,用于当第二计时单元的持续时间或计数单元的统计次数等于达到第一阈值时,则以第一阈值对应的时间为起点,开始计时。

即当前帧的行为与相邻帧的前一帧的行为相同的持续时间或者次数达到第一阈值时,表示当前帧的行为与装卸口的当前时刻的状态属于真的不同的情形,故用第三计时单元用于统计状态迁移后的时间,由于状态实际迁移的时间是在一段缓冲时间的处理后,故本申请实施例通过第二计时单元用于统计缓冲阶段的时间,当状态发生迁移后,将第二计时单元统计的时间作为第三计时单元统计时间的起点,开始计时。

第一计时单元860b,用于当第二计时单元的持续时间或计数单元的统计次数未达到第一阈值时,则在其停止工作的计时结果基础上加上第二计时单元的统计结果得到和值之后,以该和值为起点开始计时。

本申请实施例,通过比较当前帧的行为与相邻帧的前一帧的行为相同的持续时间或次数是否等于第一阈值时,在未达到阈值时,持续监测持续时间或次数,如果持续时间或次数小于第一阈值,则说明第二计时单元统计的时间仍属于第一计时单元应该统计的当前时刻的状态的时间,将第二计时单元统计的结果放入第一计时单元,得到第一计时单元的计时结果与第二计时单元的计时结果之和后,开始计时。

第一计时单元860b,用于如果当前帧的行为不满足触发条件,则表示当前帧的行为与装卸口的当前时刻的状态相同,则继续累计所述当前时刻的状态的时间。

至少一个存储单元870,用于分别存储当前时刻的状态、迁移后的状态以及第一计时单元、第二计时单元、第三计时单元输出的时间。

本申请上述实施例,还包括在从装卸口的视频流数据中提取视频帧序列之前,初始化装卸口的当前时刻的状态、当前行为、前一时刻的状态以及计时单元等。

本申请实施例在引入状态机机制后,直接缩减了人工的监控成本,且提升装卸口状态监测的准确度,可靠性。并为其他管理系统提供了丰富的数据接口,用于提供便于统计分析的基础数据。

应当理解,装置500-800中记载的诸单元或模块与参考图1-4描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于装置500-800及其中包含的单元,在此不再赘述。装置500-800可以预先实现在电子设备的浏览器或其他安全应用中,也可以通过下载等方式而加载到电子设备的浏览器或其安全应用中。装置500-800中的相应单元可以与电子设备中的单元相互配合以实现本申请实施例的方案。

下面参考图9,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统900的结构示意图。

如图9所示,计算机系统900包括中央处理单元(cpu)901,其可以根据存储在只读存储器(rom)902中的程序或者从存储部分908加载到随机访问存储器(ram)903中的程序而执行各种适当的动作和处理。在ram903中,还存储有系统900操作所需的各种程序和数据。cpu901、rom902以及ram903通过总线904彼此相连。输入/输出(i/o)接口905也连接至总线904。

以下部件连接至i/o接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至i/o接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。

特别地,根据本公开的实施例,上文参考图1-4描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图1-4的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括视频帧提取单元、行为检测单元以及状态迁移单元。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,视频帧提取单元还可以被描述为“用于从接收的所述装卸口的视频流数据中提取视频帧序列的单元”。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中前述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,前述程序被一个或者一个以上的处理器用来执行描述于本申请的装卸口状态监控方法。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1