欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种计算视频图像中像素实际距离的方法及设备独创技术59324字

一种计算视频图像中像素实际距离的方法及设备

2021-03-18 22:19:41

一种计算视频图像中像素实际距离的方法及设备

  技术领域

  本发明涉及视频分析领域,特别涉及一种计算视频图像中像素实际距离的方法及设备。

  背景技术

  视频分析技术是计算机图像视觉技术应用的一个分支,是一种基于目标行为的智能图像分析技术,通过各种图像处理方法对视频中图像变化进行检测,来分析并追踪视频图像中的目标行为。

  视频分析中可能会用到大量关于实际距离的参数,结合这些实际参数,来对视频图像中相关内容进行基于实际场景的分析处理。但是,目前并无确定视频图像中实际距离参数的成熟方案,因此,对于视频分析中需要用到实际距离参数的情况,目前一般通过其它替代方式来解决问题,从而避免对视频图像中实际距离参数的计算。

  例如,当前社区AI视频场景中常需要进行宠物是否系绳的判断,一种较好的判断方法是先识别出图像中的用户与宠物,再算出用户与宠物间的实际距离,根据该实际距离来判断宠物是否系绳。而目前并无较为成熟的能够准确计算图像中对象间的实际距离参数的方法,因此通常采用深度学习方法直接识别宠物及该宠物是否系绳,但是,该方法的识别准确率非常低。例如,经测试,目前常用的深度学习训练的yolov3模型识别宠物是否系绳的准确率仅为20%-30%,无法满足实际场景对识别准确度的需求。

  因此,目前计算视频图像中像素实际距离参数的方法存在计算准确度低、无法满足实际应用场景的业务需求的问题。

  发明内容

  本发明提供一种计算视频图像中像素实际距离的方法及设备,用以快速准确地计算视频图像中像素的实际距离,提高视频图像中像素实际距离识别的准确度。

  根据本发明实施例的第一方面,提供一种计算视频图像中像素实际距离的方法,该方法包括:

  根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离;

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  上述实施例中,根据像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定视频图像中像素点的实际距离,能够根据反映目标对象同一特征且与距离相关的参数,确定图像中像素点距离与像素点对应的实际距离的比例关系,就能通过简单计算快速得到该像素点对应的实际距离。在计算图像中对象间实际距离时,根据其他帧图像中确定的像素点的实际距离来确定当前帧图像中像素点的实际距离,能够充分利用同一拍摄条件下不同帧图像的计算结果,减小计算误差,得到更准确的像素点的实际距离,从而进一步提高根据实际空间中的实际距离确定图像空间中像素点对应的实际距离时的准确度,进而根据确定的对象间各像素点的实际距离准确地确定对象间的实际距离。

  在某些实施例中,所述确定所述第一对象和所述第二对象的实际距离之前,还包括:

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离;或者

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值。

  上述实施例中,在计算对象间的实际距离之前,先根据各帧图像确定图像中的目标区域中像素点的实际距离,从而能够根据确定的各图像中像素点的实际距离得到目标对象间各像素点的实际距离。其中,在确定各帧图像中像素点的实际距离时,先分别对视频流中提取的各帧图像进行处理,能够在对象间的像素点中,得到更多像素点的实际距离,在计算对象间实际距离时就能得到更准确的结果;或者,在满足一定条件时暂停处理后续图像,先计算当前图像中对象间的实际距离,因此,能够更快的计算对象间的实际距离,实时性更好。

  在某些实施例中,所述分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,还包括:

  若所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,且存在未确定实际距离的像素点,通过对所述目标帧图像中已确定的像素点的实际距离进行插值处理,确定所述未确定实际距离的像素点的实际距离。

  上述实施例中,在两个对象对应的两个区域间存在未确定实际距离的像素点时,会导致无法计算对象间的实际距离,因此,通过插值方法确定这些像素点的实际距离,能够估计得到未确定实际距离的像素点对应的实际距离,保证能够根据区域间每个像素点对应的实际距离计算对象间的实际距离。

  在某些实施例中,根据如下方式确定图像包括的目标对象对应的目标区域中像素点的实际距离:

  确定所述目标对象对应的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;或者

  将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  上述实施例中,将上述预设外形参数与尺寸参数的比值确定为像素点的实际距离,能够根据图像中目标对象在图像中所占的距离和在实际中所占的距离的比例关系,来确定每个像素点对应的实际距离,而根据上述比值与参考距离确定像素点的实际距离,能够根据之前帧图像的计算结果对当前帧图像的计算结果进行一定的误差消除,提高计算结果的准确度。

  在某些实施例中,所述根据所述参考距离及所述比值,确定所述像素点的实际距离,包括:

  若所述目标区域的各边界没有位于所述图像的任一边界上,并且,所述比值小于所述参考距离且与所述参考距离的差值的绝对值不小于设定值,则根据所述比值和所述参考距离计算所述像素点的实际距离;

  否则,确定所述像素点的实际距离为所述参考距离。

  上述实施例中,确定目标区域的各边界没有位于所述图像的任一边界,能够保证目标区域中目标对象对应的图像是完整的,避免根据不完整图像计算造成的误差。确定比值小于参考距离且与参考距离的差值的绝对值不小于设定值,能够过滤掉部分会对计算结果的准确性造成较大影响的图像,避免一些特殊情况下的图像对计算结果的干扰。

  在某些实施例中,所述根据所述比值和所述参考距离计算所述像素点的实际距离,包括:

  利用所述像素点对应的权重系数,对所述比值与所述参考距离的差值进行加权处理,将加权得到的值与所述参考距离求和,得到所述像素点对应的实际距离;

  其中,若所述视频流中,所述像素点对应的图像的数量小于预设阈值,则根据所述图像的数量确定所述权重系数,否则,根据所述预设阈值确定所述权重系数;所述像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像。

  上述实施例中,在根据确定的比值和参考系数计算当前像素点的实际距离时,通过设置权重系数,能够适应视频当前的实景特点,纠正预设外形参数和图像中目标对象的检测所占像素点的准确度,通过像素点对应的图像的数量与设置的一个预设阈值进行比较,根据比较结果采用不同的计算方法,能够使所得的结果在之后的像素点实际距离的计算中一直占一定比例,保证每次计算像素点的实际距离时的变化量,提高同一像素点位置对应的实际距离的更新速度。

  在某些实施例中,所述目标区域的尺寸参数为与所述目标区域中目标对象对应的预设外形参数的属性类别相同的参数。

  上述实施例中,尺寸参数与预设外形参数为属性类别相同的参数,因此建立的是同一目标对象的同一属性参数在图像空间与实际空间的对应关系,保证了根据该对应关系确定的像素点的实际距离是准确的。

  根据本发明实施例的第二方面,提供一种计算视频图像中像素实际距离的设备,包括:

  实际距离计算模块,用于根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离;

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  在某些实施例中,所述设备还包括实际距离确定模块,所述实际距离计算模块确定所述第一对象和所述第二对象的实际距离之前,所述距离计算模块还用于:

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离;或者

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值。

  在某些实施例中,所述实际距离确定模块分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,还包括:

  若所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,且存在未确定实际距离的像素点,通过对所述目标帧图像中已确定的像素点的实际距离进行插值处理,确定所述未确定实际距离的像素点的实际距离。

  在某些实施例中,所述实际距离确定模块根据如下方式确定图像包括的目标对象对应的目标区域中像素点的实际距离:

  确定所述目标对象对应的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;或者

  将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  在某些实施例中,所述实际距离确定模块根据所述参考距离及所述比值,确定所述像素点的实际距离,包括:

  若所述目标区域的各边界没有位于所述图像的任一边界上,并且,所述比值小于所述参考距离且与所述参考距离的差值的绝对值不小于设定值,则根据所述比值和所述参考距离计算所述像素点的实际距离;

  否则,确定所述像素点的实际距离为所述参考距离。

  在某些实施例中,所述实际距离确定模块根据所述比值和所述参考距离计算所述像素点的实际距离,包括:

  利用所述像素点对应的权重系数,对所述比值与所述参考距离的差值进行加权处理,将加权得到的值与所述参考距离求和,得到所述像素点对应的实际距离;

  其中,若所述视频流中,所述像素点对应的图像的数量小于预设阈值,则根据所述图像的数量确定所述权重系数,否则,根据所述预设阈值确定所述权重系数;所述像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像。

  在某些实施例中,所述目标区域的尺寸参数为与所述目标区域中目标对象对应的预设外形参数的属性类别相同的参数。

  根据本发明实施例的第三方面,提供一种计算视频图像中像素实际距离的设备,包括:存储器和处理器;其中:

  所述存储器用于存储程序;

  所述处理器用于执行所述存储器中的程序,包括如下步骤:

  根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离;

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  在某些实施例中,所述处理器确定所述第一对象和所述第二对象的实际距离之前,还用于:

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离;或者

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值。

  在某些实施例中,所述处理器分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,还包括:

  若所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,且存在未确定实际距离的像素点,通过对所述目标帧图像中已确定的像素点的实际距离进行插值处理,确定所述未确定实际距离的像素点的实际距离。

  在某些实施例中,所述处理器根据如下方式确定图像包括的目标对象对应的目标区域中像素点的实际距离:

  确定所述目标对象对应的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;或者

  将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  在某些实施例中,所述处理器根据所述参考距离及所述比值,确定所述像素点的实际距离,包括:

  若所述目标区域的各边界没有位于所述图像的任一边界上,并且,所述比值小于所述参考距离且与所述参考距离的差值的绝对值不小于设定值,则根据所述比值和所述参考距离计算所述像素点的实际距离;

  否则,确定所述像素点的实际距离为所述参考距离。

  在某些实施例中,所述处理器根据所述比值和所述参考距离计算所述像素点的实际距离,包括:

  利用所述像素点对应的权重系数,对所述比值与所述参考距离的差值进行加权处理,将加权得到的值与所述参考距离求和,得到所述像素点对应的实际距离;

  其中,若所述视频流中,所述像素点对应的图像的数量小于预设阈值,则根据所述图像的数量确定所述权重系数,否则,根据所述预设阈值确定所述权重系数;所述像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像。

  在某些实施例中,所述目标区域的尺寸参数为与所述目标区域中目标对象对应的预设外形参数的属性类别相同的参数。

  根据本发明实施例的第四方面,提供一种计算机可读存储介质,该计算机存储介质存储有程序指令,当其在终端设备上运行时,使得终端设备执行本发明实施例上述各个方面以及各个方面涉及的任一可能设计的方法。

  根据本发明实施例的第五方面,提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行实现本申请实施例上述各个方面以及各个方面涉及的任一可能设计的方法。

  附图说明

  为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

  图1为本发明实施例中提供的一种计算视频图像中像素实际距离的方法示意图;

  图2为本发明实施例中提供的一种视频流中图像的目标检测结果示意图;

  图3为本发明实施例中提供的一种计算目标区域中像素点的实际距离的方法示意图;

  图4为本发明实施例中提供的一种不完整的目标对象的图像示意图;

  图5为本发明实施例中提供的一种计算图像中对象间实际距离的方法示意图;

  图6为本发明实施例中提供的一种像素的实际距离的记录表示意图;

  图7为本发明实施例中提供的一种像素的实际距离的更新次数的记录表示意图;

  图8为本发明实施例中提供的一种计算视频图像中像素实际距离的方法流程示意图;

  图9为本发明实施例中提供的一种计算视频图像中像素实际距离的设备示意图;

  图10为本发明实施例中提供的一种计算视频图像中像素实际距离的设备结构示意图。

  具体实施方式

  为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

  本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

  本发明实施例提供一种计算视频图像中像素实际距离的方法,用于计算视频图像中像素点的实际距离,再根据像素点的实际距离计算目标对象之间的实际距离,实现实际空间与图像空间的距离映射,最终解决视频图像分析中涉及的关于图像中实际距离的计算和分析问题。

  参照图1,为本发明实施例提供的一种计算视频图像中像素实际距离的方法示意图,如图所示,该方法包括:

  步骤S101,确定视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域,并确定所述第一区域与所述第二区域之间各像素点的实际距离;

  步骤S102,根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离。

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  以下对采用上述步骤计算视频图像中像素实际距离的方法进行具体说明。

  本发明实施例中,待处理视频流数据为通过各种具有摄像功能的设备拍摄的视频,例如通过移动终端设备、摄像头、监控系统等拍摄的视频。

  实际应用中各种设备通过摄像头拍摄视频时,摄像头的位置不是固定不动的,摄像头的拍摄参数也不是固定不变的,通常可以通过人工或自动调整摄像头的位置及拍摄参数,来拍摄不同需求条件下的视频。例如,在摄像头朝向角度或焦距参数发生变化时,或导致之前拍摄的视频图像中像素的实际距离不再使用当前的视频图像。因此,需要清空之前确定的视频图像中像素的实际距离,重新计算新的距离参数,从而适应调整之后新的摄像头位置或配置,保证视频图像中像素实际距离计算的准确性。

  本发明实施例中,通过将从视频流中提取的图像与上述确定的背景图像进行比较,来确定是否需要删除之前已确定的像素的实际距离参数。具体的,获取待处理的视频流数据后,从视频流中提取至少一帧图像,首先根据提取的图像确定对应的背景图像,在对后续帧图像进行处理时,同时根据处理的图像对背景图像进行更新。具体实施时,初始背景图像可以确定为对视频流中前预设数量帧图像进行平均后的图像,对背景图像进行更新时,可采用帧间法、光流法等现有技术,此处不再详述。

  从视频流中提取至少一帧图像后,对每帧图像分别进行处理时,先将当前待处理图像与最新确定的背景图像中对应像素点的像素值做差,然后对做差得到的结果图像进行膨胀及腐蚀处理,确定最终得到的图像中像素值大于0的像素点的数量是否大于设定值,若是,则认为拍摄视频的摄像头未被更改位置或配置参数等可能会影响到像素实际距离的信息,确定不需要删除之前已确定的像素的实际距离参数,否则,确定删除之前已确定的像素的实际距离参数。

  本发明实施例中,上述设定值为上述最终得到的图像中所有像素点数量的80%。

  进行上述处理后,按照视频流中图像帧的顺序,分别将提取的至少一帧图像中输入到采用YOLO(You Only Look Once,只看一眼)网络的目标检测模型,对所述至少一帧图像进行目标检测,得到该目标检测模型输出的目标对象的检测结果,其中,目标对象可以是图像中包括的各种类别的对象,例如人、动物、车辆等。

  其中,目标检测模型通过预先进行深度学习和模型训练得到。具体的,预先采集多个训练样本,各训练样本包括包含不同类别对象且已标注各对象位置及对应类别的图像,将采集的训练样本中的图像输入到采用YOLO网络的网络模型中,以输出图像中标注的各类别对象的位置及对应类别为目标进行模型训练,并根据训练结果调整网络模型的模型参数,最终得到上述目标检测模型。

  本发明实施例中,目标检测模型采用的YOLO网络的网络类型为YOLOV3网络。

  参照图2,为本发明实施例提供的一种视频流中图像的目标检测结果示意图。如图所示,假设视频流中共包括M帧图像,M为正整数。本发明实施例中,从视频流中提取至少一帧图像时,可以提取视频流中所有的图像,例如提取第1-M帧图像,然后分别确定每帧图像中像素点的实际距离;或者,从第1-M帧图像中随机提取预设数量的图像或提取特定的预设数量的图像,然后分别确定每帧图像中像素点的实际距离;或者,采用实时提取的方式,即,按照视频流中播放图像帧对应的时间顺序,先提取第一帧图像,并确定该帧图像中像素点的实际距离,确定完毕后,再提取当前时刻对应的一帧图像,确定该帧图像中像素点的实际距离,依此类推,直到视频流中无对应提取的图像。

  如图2中所示的对从视频流中提取的其中一帧图像进行检测的结果示例,通过上述采用YOLO网络的目标检测模型对该帧图像进行目标检测,得到通过矩形框标注的对象,该矩形框对应的区域即为检测到的对象的位置区域。

  作为一种可选的实施方式,本发明实施例中,预设一个类别的对象作为目标对象,通过目标检测模型确定图像中包含的对象后,若包含该类别的目标对象,则根据该类别的目标对象确定该目标对象所在区域即对应的目标区域中像素点的实际距离,否则,进行下一图像的处理。

  作为另一种可选的实施方式,本发明实施例中,通过目标检测模型确定图像中包含的对象后,可分别将各对象作为目标对象,该目标对象对应的目标区域中像素点的实际距离。

  以下详细说明本发明实施例中,确定图像中检测到的目标对象所在的目标区域中像素点的实际距离的方法。

  本发明实施例中,预先设定至少一个类别的目标对象对应的预设外形参数,该预设外形参数为依据该类别目标对象中不同对象的外形参数,根据经验设定的平均外形参数。例如,将人作为目标对象时,可以将对应的预设外形参数设置为人的平均外形参数如平均身高1.65米;将车辆作为目标对象时,可以将对应的预设外形参数设置为该类车辆的平均外形参数如平均长度、平均宽度、平均高度等。

  确定像素点的实际距离时,根据目标对象对应的预设外形参数,将目标对象对应的目标区域的尺寸参数确定为与该预设外形参数的属性类别相同的参数。然后,采用如下任一方式确定图像中目标对象对应的目标区域中像素点的实际距离:

  1)确定所述目标对象的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;

  参照图3,为本发明实施例提供的一种计算目标区域中像素点的实际距离的方法示意图,图3中目标对象以人为例进行说明。

  作为一种可选的实施方式,如图3所示,根据当前图像建立对应的图像坐标系,其中,图像坐标系的原点为图像最左下角一点,两个坐标轴分别为沿图像中横向方向的水平坐标轴(X轴)和沿图像中纵向方向的竖直坐标轴(Y轴)。水平坐标取值范围最大值为图像的横向分辨率imax,竖直坐标取值范围最大值为图像的纵向分辨率jmax。例如,若图像的分辨率为640×480,则imax=640,jmax=480。

  根据上述建立的图像坐标系,确定检测到的目标对象对应的目标区域的尺寸参数,该尺寸参数为与目标对象的预设外形参数的属性类别相同的参数。例如,图3中目标对象为人时,对应的预设外形参数为人的平均身高,则确定的该目标对象对应的目标区域的尺寸参数也是能够反映该目标对象的身高的参数,即图中目标区域对应矩形框的高度(较长边的长度),根据该目标区域在图像坐标系中水平坐标的最大值i12、最小值i11和竖直坐标的最大值j12、最小值j11,分别确定目标区域横向的长度W=|i12-i11|,纵向的长度H=|j12-j11|,然后将W、H中较大的值确定为与目标对象身高对应的目标区域的高度参数。在预设外形参数为1.65米时,目标区域的高度H=|j12-j11|所占的像素点对应的实际距离为1.65米,则确认目标区域中当前每个像素点的实际距离为即目标对象的预设外形参数与目标区域的尺寸参数的比值。

  2)将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  其中,作为一种可选的实施方式,在根据参考距离及比值确定像素点的实际距离之前,确定目标区域的各边界是否位于图像的任一边界上,若确定目标区域的任一边界位于图像的任一边界上,则确定目标区域中目标对象的图像是不完整的,则不再确定该目标区域中像素点的实际距离;否则,再根据参考距离及比值确定目标区域中像素点的实际距离。

  参照图4,为本发明实施例提供的一种不完整的目标对象的图像示意图。如图所示,通过目标检测模型检测到的目标对象为人时,其对应的目标区域为矩形ABCD区域,其中,矩形区域的BC边对应边界位于图像的下边界上,此时该目标人体的检测很大可能是不完整的,而本发明实施例中目标对象人体对应的预设外形参数是按照完整人体设置的,因此认为该矩形区域中目标对象对应的图像是不完整的。

  上述若确定目标区域中目标对象的图像是完整的,则根据参考距离及上述确定的比值,来确定目标区域中像素点的实际距离。具体的,本发明实施例中,确定像素点对应的比值后,将该比值与之前最近一次处理其他帧图像得到的与该像素点相同位置的像素点的实际距离,进行比较,确定是否满足条件:L<nl,其中,L为上述确定的比值,表示不考虑误差的情况下,确定的目标对象对应的目标区域中每个像素点的实际距离,n为预设常数,0≤n≤1,l为之前最近一次从其他帧图像得到的与该像素点相同位置的像素点的实际距离。

  目标对象确定为人时,鉴于图像中人的不同姿态对应的目标区域的尺寸参数不同,且图像中人的真实身高也各不相同,而采用YOLO网络的目标检测模型只能检测到人这个目标对象,却无法确定人具体的姿态,而本实施例中人对应的预设外形参数为直立姿态下成年人的平均身高,因此,在确定像素点的实际距离过程中,人的姿态与直立姿态偏差过大或者与一般成人外形特征偏差过大,例如人处于蹲坐等姿态或者为儿童时,就会对像素的实际距离的计算结果造成较大误差。因此,本实施例中,在确定比值L后进行上述判断,通过设置n的取值为0.7,确定当前计算的比值满足上述条件L<0.7l时,认为对应的目标对象(人)与直立姿态偏差过大或者与一般成人外形特征偏差过大,会对确定像素点的实际距离造成较大,则舍弃该比值,从而避免造成的误差。

  因此,若上述比较结果为不满足条件,则将确定的比值L确定为像素点的实际距离;若上述比较结果为满足条件,则根据如下公式确定像素点的实际距离:

  

  其中,LF为确定的像素点的实际距离,L为上述确定的比值,l为之前最近一次从其他帧图像得到的与该像素点相同位置的像素点的实际距离,该实际距离l作为参考距离,w为该像素点对应的图像的数量,该像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像,W为预设阈值,取值为整数。

  上述为w对应的权重系数,为W对应的权重系数,确定像素点的实际距离时,若该像素点对应的w小于W,则对应的权重系数为否则,对应的权重系数为将比值L与参考距离l的差值先与对应的权重系数相乘,得到的值再与参考距离l求和,得到最终确定的像素点的实际距离。其中,w+1表示确定像素点的实际距离时,在从视频流提取的图像中,当前图像是第几次确定与该像素点相同位置处像素点的实际距离。例如,假设图2所示M=10(视频流中共包括10帧图像),从中提取的至少一帧图像为其中的偶数帧图像,则计算像素点的实际距离时依次处理的图像分别为第2、4、6、8帧图像,假设当前处理的为第8帧图像,图像中某像素点p点对应的位置为P,若之前根据第2、4、6帧图像计算像素点的实际距离时,确定第2和第6帧共2帧图像中包括的目标区域包含位置P对应的像素点,则上述w取值为2,当前处理的第8帧图像为第3次确定位置P对应的像素点的实际距离,因此,当前图像是第3次确定与该像素点p相同位置(位置P)处像素点的实际距离。

  本发明实施例中,上述预设阈值W取值为1000。

  以上给出了确定视频流中的图像中像素的实际距离的方法,以下给出计算图像中两个对象间实际距离的方法。

  在对视频流中图像数据进行处理时,针对某一目标帧图像,通过采用YOLO网络的目标检测模型进行目标检测确定两个对象(第一对象和第二对象)。计算第一对象和第二对象间的实际距离时,先确定第一对象和第二对象间各像素点的实际距离,再将各像素点的实际距离求和,得到第一对象和第二对象间的实际距离。其中,针对当前图像中第一对象和第二对象间各像素点,分别根据各帧图像中已确定实际距离的像素点,将最近一次确定的其它帧图像中与该像素点相同位置的像素点的实际距离确定为该像素点的实际距离。

  参照图5,为本发明实施例提供的一种计算图像中对象间实际距离的方法示意图。如图中示例,在计算当前帧图像中检测到的第一对象(人)与第二对象(宠物)的实际距离时,可以将第一对象所在的第一区域与第二对象所在的第二区域之间的最短距离作为第一对象与第二对象之间的距离,即图中所示的直线l1与直线l2之间的垂直距离,具体计算时,可以利用直线l1与直线l2之间任一垂线段上对应像素点的实际距离,计算直线l1与直线l2之间的垂直距离,或者,利用直线l1与直线l2之间多个垂线段上对应像素点的实际距离,分别计算得到多个对应的垂直距离,再对得到的多个垂直距离取平均,作为直线l1与直线l2之间的垂直距离。

  作为一种可选的实施方式,计算第一对象和第二对象间的实际距离,在上述确定视频流中的图像中像素的实际距离的方法的执行过程中同时执行。

  具体的,按照本实施例上述提供的方法,分别对从视频流中提取图像进行处理,按照图像帧在视频流中从前到后的顺序,分别确定视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到接收到计算图像中对象间实际距离的指令时,确定当前帧图像中第一对象和第二对象间各像素点的实际距离。

  然后,判断第一对象和第二对象间各像素点是否均已确定实际距离,若是,则直接根据确定的各像素点的实际距离计算第一对象与第二对象的实际距离;否则,判断第一对象和第二对象间各像素点中已确定实际距离的像素点个数是否大于设定值,若是,则对图像中已确定的像素点的实际距离进行插值处理,得到未确定实际距离的像素点的实际距离,否则,继续对当前图像之后的图像进行像素点的实际距离的计算,并根据之后图像中确定的像素点的实际距离,确定这一帧图像中第一对象和第二对象间未确定实际距离的像素点的实际距离,直到这一帧图像中,第一对象和第二对象间已确定实际距离的像素点个数大于设定值,再对图像中已确定的像素点的实际距离进行插值处理,得到未确定实际距离的像素点的实际距离。

  上述对图像中已确定的像素点的实际距离进行插值处理时,可采用现有技术的插值处理方法,此处不再详述。

  作为另一种可选的实施方式,计算第一对象和第二对象间的实际距离,在上述确定视频流中的图像中像素的实际距离的方法的执行过程之后执行。

  具体的,按照本实施例上述提供的方法,分别对从视频流中提取图像进行处理,按照图像帧在视频流中从前到后的顺序,分别确定视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到提取的各帧图像处理完毕。再根据接收到的计算图像中对象间实际距离的指令对应的目标帧图像中第一对象和第二对象间各像素点的实际距离,计算第一对象和第二对象间的实际距离。

  本实施例中,在处理的当前帧图像中检测到预设的需计算实际距离的两个对象时,触发计算图像中对象间实际距离的指令。

  本发明实施例中,作为一种可选的实施方式,上述确定视频流中的图像中像素的实际距离时,作为一种可选的实施方式,在对视频流中提取的图像进行目标检测之前,分别建立如图6所示的用于记录图像中各位置像素点的实际距离的第一记录表,以及如图7所示的用于记录像素点的实际距离的更新次数的第二记录表。其中,两个记录表的大小与图像大小相同,即记录表中参数的数量和位置分布均与图像中像素点的数量和位置分布相同,其中,图6、图7所示的记录表中数据仅作为一种示例,图6中t1为作为示例的像素点的实际距离参数值。

  第一记录表中各位置的参数用于记录最新确定的该位置在图像中对应位置的像素点的实际距离,第二记录表中各位置的参数用于对该位置在图像中对应位置的像素点的实际距离进行更新的次数。初始时两个记录表中参数均为预设值,例如可以为0。在对视频流中图像进行处理时,每处理一帧图像,就对第一记录表和第二记录表进行一次更新,利用该图像中确定的各像素点的实际距离替换第一记录表中对应位置的记录值,并将第二记录表中对应位置的值增加设定值,本实施例中该设定值为1。在计算图像中两个对象间的实际距离时,直接从第一记录表中查找与两个对象间各像素点对应位置的参数,来确定两个对象间各像素点的实际距离。其中,若确定当前帧图像与最新的背景图像做差后,像素值大于0的像素点的数量低于设定值时,将第一记录表与第二记录表中记录的参数全部置为初始时对应的预设值,即设置为0,并将第一记录表和第二记录表调整为与当前图像对应大小后,再按照上述方法确定图像中像素点的实际距离。

  本发明实施例提供的上述计算视频图像中像素实际距离的方法,通过对视频中图像进行目标检测,根据检测到的目标对象对应的预设外形参数和对应的目标区域的尺寸参数,确定目标区域中像素点的实际距离。在计算检测到的两个对象间的实际距离时,根据其他帧图像确定的像素点的实际距离,确定两个对象间各像素点的实际距离,再根据各像素点的实际距离确定两个对象间的实际距离。解决了现有计算视频图像中像素实际距离的方法存在的计算精度低、无法满足实际应用场景的业务需求的问题。

  参照图8,为本发明实施例提供的一种计算视频图像中像素实际距离的方法流程示意图,如图所示,该方法流程包括:

  步骤S801,获取待处理的视频流数据,从中提取当前帧待处理的视频图像,并构建视频流数据对应的第一记录表和第二记录表;

  其中,第一记录表和第二记录表的大小与从视频流中提取的第一帧图像的大小相同。

  步骤S802,将当前图像与通过背景更新确定的最新背景图像做差,并进行膨胀及腐蚀处理;

  步骤S803,确定得到的图像中像素值大于0的像素点的个数是否大于设定值,若是,执行步骤S805,否则,执行步骤S804;

  步骤S804,将第一记录表和第二记录表中的数据全部置零,并调整至与当前图像大小相同;

  步骤S805,利用采用YOLO网络的目标检测模型,对当前图像进行目标检测,确定其中的目标对象及对应的目标区域;

  其中,目标对象为人。确定当前图像中未检测到目标对象时,从视频流中提取下一帧待处理图像,作为当前图像,并重新按照本实施例提供的方法对当前图像进行处理,即,执行本实施例中步骤S802及后续步骤。

  步骤S806,确定目标区域的尺寸参数,并计算目标对象对应的外形参数与该尺寸参数的比值,暂时作为目标区域中各像素点的实际距离;

  步骤S807,分别对目标区域中各像素点,确定该像素点位置在第一记录表中对应位置的参数是否不为零,若是,执行步骤S808,否则,执行步骤S809;

  步骤S808,若得到的比值不大于第一记录表中对应位置的参数,则确定该像素点对应的权重系数和参考距离,根据得到的比值及该权重系数和参考距离,计算该像素点对应的实际距离;并执行步骤S810;

  其中,若得到的比值大于第一记录表中对应位置的参数,则从视频流中提取下一帧待处理图像,作为当前图像,并重新按照本实施例提供的方法对当前图像进行处理,即,执行本实施例中步骤S802及后续步骤。

  确定该像素点对应的权重系数和参考距离,及计算该像素点对应的实际距离时,将当前该像素点位置在第一记录表对应位置的参数作为参考距离(l),将当前该像素点位置在第二记录表对应位置的参数作为该像素点对应的图像的数量(w),根据上述实施例中确定像素点的实际距离的公式(1)计算该像素点的实际距离。

  步骤S809,将像素点位置在第一记录表中对应位置的参数更新为得到的比值,并将该像素点位置在第二记录表中对应位置的参数加1;并执行步骤S811;

  步骤S810,将像素点位置在第一记录表中对应位置的参数更新为计算得到的像素点的实际距离,并将该像素点位置在第二记录表中对应位置的参数加1;

  步骤S811,确定计算图像中检测到的两个对象之间的实际距离时,从第一记录表中获取两个对象之间各像素点对应位置的参数,作为各像素点的实际距离;

  步骤S812,对各像素点中在第一记录表的对应位置的参数为零的像素点,利用第一记录表中不为零的参数进行插值,确定该像素点对应位置的对应值,作为该像素点的实际距离;

  步骤S813,对两个对象之间各像素点的实际距离求和,得到两个对象之间的实际距离。

  上述提供的计算视频图像中像素实际距离的方法流程仅作为一种示例,实际实施中,可根据上述实施例提供的方法对上述各步骤增加、减少或替换部分步骤的实施方式,或对部分步骤的实施顺序进行调整等。关于上述各步骤的具体实施方式,可以参见前述计算视频图像中像素实际距离的方法的具体实施例,此处不再重述。

  基于相同的发明构思,本发明实施例还提供了一种计算视频图像中像素实际距离的设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

  请参阅图9,本发明实施例提供一种计算视频图像中像素实际距离的设备,包括:

  实际距离计算模块901,用于根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离;

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  在某些实施例中,所述设备还包括实际距离确定模块902,所述实际距离计算模块确定所述第一对象和所述第二对象的实际距离之前,所述距离计算模块还用于:

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离;或者

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值。

  在某些实施例中,所述实际距离确定模块分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,还包括:

  若所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,且存在未确定实际距离的像素点,通过对所述目标帧图像中已确定的像素点的实际距离进行插值处理,确定所述未确定实际距离的像素点的实际距离。

  在某些实施例中,所述实际距离确定模块根据如下方式确定图像包括的目标对象对应的目标区域中像素点的实际距离:

  确定所述目标对象对应的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;或者

  将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  在某些实施例中,所述实际距离确定模块根据所述参考距离及所述比值,确定所述像素点的实际距离,包括:

  若所述目标区域的各边界没有位于所述图像的任一边界上,并且,所述比值小于所述参考距离且与所述参考距离的差值的绝对值不小于设定值,则根据所述比值和所述参考距离计算所述像素点的实际距离;

  否则,确定所述像素点的实际距离为所述参考距离。

  在某些实施例中,所述实际距离确定模块根据所述比值和所述参考距离计算所述像素点的实际距离,包括:

  利用所述像素点对应的权重系数,对所述比值与所述参考距离的差值进行加权处理,将加权得到的值与所述参考距离求和,得到所述像素点对应的实际距离;

  其中,若所述视频流中,所述像素点对应的图像的数量小于预设阈值,则根据所述图像的数量确定所述权重系数,否则,根据所述预设阈值确定所述权重系数;所述像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像。

  在某些实施例中,所述目标区域的尺寸参数为与所述目标区域中目标对象对应的预设外形参数的属性类别相同的参数。

  基于相同的发明构思,本发明实施例还提供了一种计算视频图像中像素实际距离的设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

  参阅图10,为本发明实施例提供一种计算视频图像中像素实际距离的设备的结构示意图。

  如图10所示,该设备1000包括:通信接口1010、存储器1020和处理器1030。通信接口1010、存储器1020和处理器1030可以通过总线1040连接。本领域技术人员可以理解,图10中示出的设备1000结构并不构成对设备1000的限定,图10所示的设备1000仅是一个范例,并且设备1000可以具有比图10中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。下面结合图10对设备1000的各个构成部件进行具体的介绍:

  通信接口1010可用于与语音识别设备、云端服务器进行通信,例如,接收语音识别设备或云端服务器发送的电梯控制指令等。

  存储器1020可用于存储设备运行时所使用的数据、程序和/或模块,如本申请实施例中的开关控制器的控制方法对应的程序指令和/或模块,处理器1030通过运行存储在存储器1020的程序和/或模块,从而执行设备1000的各种功能应用以及数据处理,如本申请实施例提供的电梯控制系统的相关控制方法。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个应用的应用程序等;存储数据区可存储根据设备1000的使用所创建的数据等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

  处理器1030是设备1000的控制中心,利用各种接口和线路连接整个设备1000的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行设备1000的各种功能和处理数据,从而对设备1000进行整体监控。在一些实施例中,处理器1030可包括一个或多个处理单元。本申请实施例中的处理器1030可以运行操作系统、应用程序、执行服务器发送的操作指令以及本发明实施例的相关控制方法等。

  本发明实施例中不限定上述存储器1020、处理器1030和通信接口1010之间的具体连接介质。本发明实施例在图10中,存储器1020、处理器1030和通信接口1010之间通过总线1040连接,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线1040可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

  本实施例中,上述处理器具体用于:

  根据视频流中目标帧图像包括的第一对象对应的第一区域和第二对象对应的第二区域之间各像素点的实际距离,确定所述第一对象和所述第二对象的实际距离;

  其中,所述第一区域和所述第二区域之间部分或全部像素点的实际距离,为根据所述像素点位置所在目标区域的尺寸参数及所述目标区域中目标对象对应的预设外形参数确定的,所述目标区域为视频流中其它帧图像包括的目标对象对应的目标区域。

  在某些实施例中,所述处理器确定所述第一对象和所述第二对象的实际距离之前,还用于:

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离;或者

  分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值。

  在某些实施例中,所述处理器分别确定所述视频流中提取的各帧图像包括的目标对象对应的目标区域中像素点的实际距离,直到所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,还包括:

  若所述第一区域和所述第二区域之间各像素点中,已确定实际距离的像素点个数大于设定值,且存在未确定实际距离的像素点,通过对所述目标帧图像中已确定的像素点的实际距离进行插值处理,确定所述未确定实际距离的像素点的实际距离。

  在某些实施例中,所述处理器根据如下方式确定图像包括的目标对象对应的目标区域中像素点的实际距离:

  确定所述目标对象对应的预设外形参数与所述目标区域的尺寸参数的比值,为所述像素点的实际距离;或者

  将最近一次确定的其它帧图像中与所述像素点相同位置像素点的实际距离作为参考距离,并根据所述参考距离及所述比值,确定所述像素点的实际距离。

  在某些实施例中,所述处理器根据所述参考距离及所述比值,确定所述像素点的实际距离,包括:

  若所述目标区域的各边界没有位于所述图像的任一边界上,并且,所述比值小于所述参考距离且与所述参考距离的差值的绝对值不小于设定值,则根据所述比值和所述参考距离计算所述像素点的实际距离;

  否则,确定所述像素点的实际距离为所述参考距离。

  在某些实施例中,所述处理器根据所述比值和所述参考距离计算所述像素点的实际距离,包括:

  利用所述像素点对应的权重系数,对所述比值与所述参考距离的差值进行加权处理,将加权得到的值与所述参考距离求和,得到所述像素点对应的实际距离;

  其中,若所述视频流中,所述像素点对应的图像的数量小于预设阈值,则根据所述图像的数量确定所述权重系数,否则,根据所述预设阈值确定所述权重系数;所述像素点对应的图像为包括的目标区域包含与所述像素点相同位置的像素点的图像。

  在某些实施例中,所述目标区域的尺寸参数为与所述目标区域中目标对象对应的预设外形参数的属性类别相同的参数。

  应当理解的是,本申请实施例所限定的技术方案仅是对计算视频图像中像素实际距离的设备或控制方法的示例性说明而非任何限定,对于相同或相似的概念或过程可能在某些实施例中不再赘述。

  本发明实施例还提供一种计算机可读存储介质,包括指令,当其在终端设备上运行时,使得终端设备执行上述实施例提供的计算视频图像中像素实际距离的方法。

  所属领域的技术人员可以清楚地了解到,为描述方便简洁,上述描述的装置和模块的具体工作过程可以参考前述方法实施例中对应过程,在此不再赘述。

  在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

  所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

  另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。

  以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

  显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

《一种计算视频图像中像素实际距离的方法及设备.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)