监控视频编码及播放方法、装置、电子设备及存储介质与流程

文档序号:21083765发布日期:2020-06-12 16:45阅读:466来源:国知局
监控视频编码及播放方法、装置、电子设备及存储介质与流程

本发明涉及视频处理技术领域,具体而言,涉及一种监控视频编码及播放方法、装置、电子设备及存储介质。



背景技术:

随着网络技术和多媒体技术的发展,视频监控的应用越来越广泛。面对社会治安状况的日趋复杂,公共安全问题不断凸显,城市犯罪突出,我们可以借助视频监控制系统存储的大量图像信息,来进行安全防范、证据提取等。

现有技术中,监控视频一般是按照固定的时长进行存储,比如24小时为一个存储片段,当用户在查看监控回放时,通过在监控系统中输入时间戳信息,从感兴趣的时间段开始依次查看视频,需要耗费大量的时间来查找目标信息,因此,通常都是采用倍速播放来提高查找效率。

但采用现有技术,由于倍速播放是基于跳帧解码的机制,比如2倍速,就是每隔2帧丢掉1帧,丢掉的这一帧不进行解码和播放,这种机制就限制了丢掉的帧为非关键帧,常见的是丢掉b帧(b帧编码是双向预测的帧间压缩),当编码器不支持b帧的情况时,用户想按照指定倍速播放,解码端只有将关键帧丢掉,导致当前gop(图像组,groupofpicture)后面的解码图像就会错误,造成原有视频编码质量受损,影响监控效果。



技术实现要素:

本发明的目的在于,针对上述现有技术中的不足,提供一种监控视频编码及播放方法、装置、电子设备及存储介质,以有效避免现有技术中存在的倍速播放时有可能造成原有视频编码质量受损、影响监控效果的问题,且可以筛选出选定区域和时间段的运动情况,提升监控视频查看效率。

为实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请实施例提供了一种监控视频编码方法,应用于编码端设备,该方法包括:

采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息,所述运动信息包括:所述视频图像中的运动块、以及各运动块的位置信息、时间信息;

向播放端设备发送所述运动信息,以使所述播放端设备根据所述运动信息查找对应位置和时间的视频帧。

可选地,所述向播放端设备发送所述运动信息,包括:

将所述运动信息编码至所述视频图像中,获取编码后的视频图像;

向所述播放端设备发送所述编码后的视频图像。

可选地,所述将所述运动信息编码至所述视频图像中,获取编码后的视频图像,包括:

在存在运动块的视频帧的图像组gop后添加补充增强信息sei;

在所述sei中添加所述运动信息。

可选地,所述向所述播放端设备发送所述编码后的视频图像,包括:

向所述播放端设备发送所述视频图像中包含所述运动块的视频帧。

第二方面,本申请实施例提供了一种监控视频播放方法,应用于播放端设备,所述方法包括:

接收编码端设备发送的视频图像对应的运动信息,所述运动信息包括:所述视频图像中的运动块、以及各运动块的位置信息、时间信息;

按照预设格式,存储所述运动信息;

接收视频查看指令,所述视频查看指令包括:待查看时间信息、区域位置信息;

根据所述视频查看指令、所述运动信息,播放所述视频图像中所述待查看时间信息、区域位置信息对应的视频帧。

可选地,所述按照预设格式,存储所述运动信息,包括:

将所述运动信息按照对应的时间信息写入链表的不同节点中。

可选地,所述根据所述视频查看指令、所述运动信息,播放所述视频图像中所述待查看时间信息、区域位置信息对应的视频帧,包括:

根据所述视频查看指令、所述运动信息,查找所述区域位置信息对应的备选运动块;

在所述备选运动块中,查找所述时间信息所对应时间范围内包含运动物体的目标运动块;

输出并播放所述目标运动块对应的视频帧。

第三方面,本申请实施例还提供了一种监控视频编码装置,应用于编码端设备,所述装置包括运动检测模块及编码模块;

所述运动检测模块,采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息,所述运动信息包括:所述视频图像中的运动块、以及各运动块的位置信息、时间信息;

所述编码模块,用于向播放端设备发送所述运动信息,以使所述播放端设备根据所述运动信息查找对应位置和时间的视频帧。

可选地,所述编码模块,具体用于:

将所述运动信息编码至所述视频图像中,获取编码后的视频图像;

向所述播放端设备发送所述编码后的视频图像。

可选地,所述编码模块,具体用于:

在存在运动块的视频帧的图像组gop后添加补充增强信息sei;

在所述sei中添加所述运动信息。

可选地,所述编码模块,用于向所述播放端设备发送所述视频图像中包含所述运动块的视频帧。

第四方面,本申请实施例还提供了一种监控视频播放装置,应用于播放端设备,所述装置包括:接收模块、存储模块、查看模块及播放模块;

所述接收模块,用于接收编码端设备发送的视频图像对应的运动信息,所述运动信息包括:所述视频图像中的运动块、以及各运动块的位置信息、时间信息;

所述存储模块,用于按照预设格式,存储所述运动信息;

所述查看模块,用于接收视频查看指令,所述视频查看指令包括:待查看时间信息、区域位置信息;

所述播放模块,用于根据所述视频查看指令、所述运动信息,播放所述视频图像中所述待查看时间信息、区域位置信息对应的视频帧。

可选地,所述存储模块,具体用于:

将所述运动信息按照对应的时间信息写入链表的不同节点中。

可选地,所述查看模块,具体用于:

根据所述视频查看指令、所述运动信息,查找所述区域位置信息对应的备选运动块;

在所述备选运动块中,查找所述时间信息所对应时间范围内包含运动物体的目标运动块;

输出并播放所述目标运动块对应的视频帧。

第五方面,本申请实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,执行上述第一方面和/或第二方面所提供的方法。

第六方面,本申请实施例还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面和/或第二方面所提供的方法。

本申请的有益效果是:

本申请所提供的一种监控视频编码及播放方法、装置、电子设备及存储介质,该方法包括:采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息,该运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息,并向播放端设备发送该运动信息,以使播放端设备根据运动信息查找对应位置和时间的视频帧,并在播放端按照预设格式,存储该运动信息,然后,接收视频查看指令,该视频查看指令包括:待查看时间信息、区域位置信息,最后,播放端根据该视频查看指令、运动信息,播放视频图像中待查看时间信息、区域位置信息对应的视频帧,实现了在不影响原有视频编码质量的前提下,且不会对编码器的配置有任何限制,获取了视频图像中的运动信息,以便于根据运动信息查找对应位置和时间的视频帧来提高查看监控视频的效率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请一实施例提供的监控视频系统结构示意图;

图2为本申请另一实施例提供的监控视频系统的结构示意图;

图3为本申请一实施例提供的监控视频编码方法的流程示意图;

图4为本申请实施例提供的监控视频编码方法中运动信息的结构示意图;

图5为本申请另一实施例提供的监控视频编码方法的流程示意图;

图6为本申请另一实施例提供的监控视频播放方法流程示意图;

图7为本申请另一实施例提供的监控视频播放方法流程示意图;

图8为本申请一实施例提供的监控视频编码装置的结构示意图;

图9为本申请另一实施例提供的监控视频播放装置的结构示意图;

图10为本申请另一实施例提供的监控视频编码及播放系统结构示意图;

图11为本申请另一实施例提供的监控视频编码及播放系统结构示意图;

图12为本申请一实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

图1为本申请一实施例提供的监控视频系统结构示意图,如图1所示,该监控视频系统10包括:编码端设备11及播放端设备12,编码端设备11通过网络13与播放端设备12进行通信,以实现数据通讯或交互。网络13可以是有线网络,也可以是无线网络。

其中,编码端设备11和播放端设备12指具有数据处理能力的电子设备。编码端设备11和播放端设备12可以是,但不限于,智能手机、电脑(personalcomputer,pc)、平板电脑、数字助理(personaldigitalassistant,pda)、移动上网设备(mobileinternetdevice,mid)等。

可选地,编码设备11和播放端设备12也可以集成于同一电子设备,例如计算机,在此不做限制。

请参阅图2,是图1所示的编码端设备11的方框示意图。编码端设备11包括监控视频编码装置100、存储单元200、处理单元300、通信单元400以及监控视频播放装置500。

存储单元200、处理单元300以及通信单元400各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或多条通讯总线或信号线实现电性连接。监控视频编码装置100包括至少一个可以软件或固件(firmware)的形式存储于存储单元200中的功能模块。处理单元300用于执行存储单元200中存储的可执行程序代码,例如本实施例中的监控视频编码装置100和监控视频播放装置500所包括的可执行程序代码,处理单元300在调用存储单元200上存储的可执行程序代码时,以实现本实施例中的监控视频编码和播放方法。

其中,存储单元200可以是,但不限于,随机存取存储单元(randomaccessmemory,ram),只读存储单元(readonlymemory,rom),可编程只读存储单元(programmableread-onlymemory,prom),可擦除只读存储单元(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储单元(electricerasableprogrammableread-onlymemory,eeprom)等。

存储单元200用于存储程序,例如,本发明提供的监控视频编码装置100所对应的功能模块。

处理单元300可以是一种集成电路芯片,具有信号处理能力。处理单元300可以是通用处理单元,包括中央处理单元(centralprocessingunit,cpu)、网络处理单元(networkprocessor,np)等;还可以是数字信号处理单元(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑单元件、分立门或者晶体管逻辑单元件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理单元可以是微处理单元或者该处理单元也可以是任何常规的处理单元等。

通信单元400用于通过网络13建立编码端设备11与播放端设备12之间的通信连接,并用于通过网络13接收和发送数据。

应当理解,图2所示的结构仅为示意,监控视频系统10可以包括比图2所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

请参阅图3,为本申请一实施例提供的监控视频编码方法的流程示意图,该监控视频编码方法应用于图2所示的编码端设备11,编码端设备11是指视频采集端,对采集的视频图像进行压缩、及运动物体检测等。下面将对图3所示的具体流程做详细阐述:

步骤s30,采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息。

其中,该运动信息可以包括但不限于视频图像中的运动块、以及各运动块的位置信息、时间信息。该运动快用于描述视频图像中发生运动的事物,区分于静止的背景图像。

具体的,采集视频图像信息的方式可以是通过摄像头采集监控场景中的图像信息,在接收到采集的视频图像信息后,其中,视频图像可以划分为多个gop(groupofpicture,图像组),采用预设算法对监控场景中的视频图像进行运动物体检测,该预设算法可以是帧间差分法、高斯背景建模(gmm)、光流法、vibe算法等,在此不作具体限定,根据实际场景需求进行选取。检测到的运动信息可以包括但不限于每个检测区间内一帧图像中对应的运动块、以及各运动块的位置信息、时间信息,需要说明,上述检测区间需要与gop相关联,建议设置为1个gop,在此不作具体限定,也可以根据实际场景需求进行选取。

若运动信息中的同一个运动块在当前检测区间中的多帧图像存在运动,就算作一个运动块,运动块的大小,可以根据情况调节,比如32*32(pix*pix),64*64(pix*pix)等,在此不作具体限定。

例如,请参考图4,为本申请实施例提供的监控视频编码的运动信息的结构示意图,其中,gop中的运动信息的数据格式以及长度如图4所示,运动信息包括有运动块的个数、以及各运动块的位置信息和时间信息等,运动信息长度的计算公式为:32*(2+n)bit,在此不作具体限定,可以根据实际情况灵活设置。

步骤s31,向播放端设备发送该运动信息,以使播放端设备根据该运动信息查找对应位置和时间的视频帧。

播放端设备是指用户查看监控视频的装置,在获取视频图像的运动信息后,可以向播放端设备发送该运动信息。然后,在播放端设备回放监控视频的时候,就可以根据该运动信息查找对应位置和时间的视频帧,大大地提高了查看监控视频的效率。

综上所述,本申请实施例提供了一种监控视频编码方法,可以采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息,该运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息等,以及向播放端设备发送该运动信息,实现了可以通过上述运动信息,获取到监控场景中是否存在的运动物体,进而在播放端设备回放监控视频的时候根据运动信息查找对应位置和时间的视频帧,大大地提高了查看监控视频的效率,且不会对编码器的配置有任何限制。

可选地,不限于以下两种发送方式向播放端设备发送运动信息,第一种是将运动信息编码到视频流中发送到播放端设备,播放端设备通过解码获取视频帧对应的运动信息,与视频图像同步性较高;第二种是将该运动信息通过网络单独发送运动信息到播放端设备,这种方式实现简单,播放端设备收到后需要与视频图像进行匹配。

请参阅图5,为本申请另一实施例提供的监控视频编码方法的流程示意图,可选地,第一种方式中将运动信息与视频图像一起编码后再发送至播放端设备,具体的详细步骤如下。

步骤s50,将运动信息编码至视频图像中,获取编码后的视频图像。

可选地,将运动信息编码到视频流中的传输的方式,在存在运动块的视频帧的图像组gop后添加补充增强信息sei,在sei中添加运动信息,按照编码标准,将运动信息添加到视频流中,即获取编码后的视频图像,其中,编码后视频流为h264或者h265码流。

需要说明的是,常见的h264和h265视频编码标准,都定义了类型为sei的nal。比如h264中,每个sei消息都有一个payloadtype,当payloadtype为5时,sei_playload可以使用户自定义数据,那么就可以利用它来传输运动信息,这种发送方式的优势是能够将运动信息和视频流同步发送到播放端设备。

步骤s51,向播放端设备发送编码后的视频图像。

通过网络将编码后的视频图像发送到播放端视频,通过解码器来解析接收到的视频图像,也可以利用这个解码器对运动信息进行解码提取,即便播放端设备没有实时解码,只需要对包含sei单元的信息进行解码提取即可,运算量很小。

可选地,向播放端设备发送编码后的视频图像,包括:向播放端设备发送视频图像中包含运动块的视频帧。其中,如果当前gop没有检测到运动块,则不向播放端设备发送该gop,也可有效减少数据传输量,提高编码端设备的运算效率。

请参照图6,为本申请另一实施例提供的监控视频播放方法,应用于播放端设备,下面将对图6所示的具体流程做详细阐述。

步骤s60,接收编码端设备发送的视频图像对应的运动信息。

其中,上述运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息。

播放端设备接收编码端设备发送的视频图像对应的运动信息,便于进行后续的操作需求。

步骤s61,按照预设格式,存储上述运动信息。

通常,对于监控视频系统,需要将近期的视频图像存储起来,便于用户查看,保存的时长,用户可以结合视频分辨率、硬盘大小来进行设置。当播放端设备中的存储的视频图像超出用户设置的时长,则可以将过期的视频序列清除,可有效降低播放端设备的运算负担,提高播放端设备的运算效率。

具体的,按照预设格式,存储上述运动信息,该运动信息可以是实时采集数据,也可以是分析处理后的信息,例如在某些监控视频场景下发送报警信息、提示信息等,在此不具体限制。本申请实施例不对场景做限制,可以应用于各种监控视频的场景。

步骤s62,接收视频查看指令。

其中,该视频查看指令包括:待查看时间信息、区域位置信息。

具体的,视频查看指令包括但不限于待查看时间信息、区域位置信息,在此不做具体限制,还可以包括区域位置大小等。

步骤s63,根据视频查看指令、运动信息,播放视频图像中待查看时间信息、区域位置信息对应的视频帧。

在接收到视频查看指令后,可选地,对区域位置信息对应的链表进行遍历,输出位于待查看时间信息、区域位置信息对应的所有视频帧,用户可以依次点击查找的所有视频帧,可以快速找到目标帧信息。

综上所述,本发明实施例提供的一种监控视频播放方法,通过接收编码端设备发送的视频图像对应的运动信息,该运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息,以及按照预设格式,存储上述运动信息,然后,接收视频查看指令,该视频查看指令包括:待查看时间信息、区域位置信息,并根据该视频查看指令、运动信息,播放视频图像中待查看时间信息、区域位置信息对应的视频帧,以便用户能够快速监控到目标帧信息,提高了查看效率,且不会对编码器的配置有任何限制。

例如,按照预设格式,存储运动信息,包括:将运动信息按照对应的时间信息写入链表的不同节点中。

具体的,可以通过数组以及链表的形式存储近段时间视频中每个区域的运动情况,并进行不断更新,c++语句示例如下。

初始化:链表中结点定义为:

节点value的值记录的是运动信息中的时间信息。

next会指向下一个运动信息时刻。

数组定义为:nodemotioninfo[blknum],存放运动信息链表的头结点。

初化这个结构体数组全为空,表示每个运动块暂时还没有任何历史运动信息。

blknum为一帧图像中划分的运动块的个数,每个运动块的大小blocksize可以为16*16,32*32,一般情况下,需要结合编码图像的分辨率来协调设定,分辨率越大,可以把运动块定义得大一些,在此不做具体限制,可以根据实际情况灵活设置运动块的大小。

相当于数组中存放的是一个链表的头节点,如果motioninfo[1]为0,则表示id为1的运动块,在对应时间内是一直处于静止状态,如果motioninfo[2]为1,则表示id为2的运动块,在对应时间内是存在运动物体。

在对运动信息进行存储时,也可以对增加新的运动信息或者删除过期的运动信息,具体如下。

增加:当编码端设备发送过来的运动信息指示当前时间段检测到若干个运动块的信息,则在数组中所有运动块的头节点后增加新的节点,新节点的值就是传过来的时间信息。

删除:结合播放端设备接收到的视频查看指令,可以将指定保存时长之前的运动信息进行删除,具体的,可以从数组中每个运动块对应的头节点开始遍历,如果时间戳位于保存时长段之前,则删除该节点,且用更新后的头节点将数组中value和node*next替换,由于接收到的运动信息中的时间信息是按照逐步递增的顺序,所以当检测到保存时间信息内的节点时,就不必要继续往后查找其他的运动信息。

请参照图7,为本申请实施例提供的监控视频播放方法,根据视频查看指令、运动信息,播放视频图像中待查看时间信息、区域位置信息对应的视频帧,具体步骤如图7所示,下面做详细阐述。

步骤s71,根据视频查看指令、运动信息,查找区域位置信息对应的备选运动块。

在本实施例中,假设,接收视频查看指令,其中,待查看时间信息设置为前天晚上八点到今天早上八点,区域位置信息设置为甲业主车的区域,例如,区域位置信息对应到以下位置的运动块:

首先,对motioninfo[]数组中对应运动块位置进行筛选,例如,如果motioninfo[20]的value为0,则这个运动块一直处于静止状态,就将该运动块进行剔除,如果motioninfo[40]的value为非0,则这个运动块存在运动物体,将该运动块进行保留,经过这个筛选,假设保留下来的运动块是40/41/60/61。

步骤s72,在该备选运动块中,查找时间信息所对应时间范围内包含运动物体的目标运动块。

然后,根据保留下来的运动块是40/41/60/61,再结合时间信息进行筛选,假设motioninfo[40]为头节点的整个链表中,所有value都不在待查看时间信息内,则排除该区域位置,如果在motioninfo[41]中,发现满足待查看时间信息,则记录下来,然后在motioninfo[60]中,发现满足待查看时间信息,则继续记录下来,如果与motioninfo[41]记录的时间信息一致,就不需要重复记录,经过筛选,就可以把满足待查看时间信息、区域位置信息,将存在运动信息的所有时间戳筛选下来,即根据用户设置的前天晚上八点到今天早上八点,以及在业主车的周围这个区域,存在运动信息的所有时间戳。

步骤s73,输出并播放目标运动块对应的视频帧。

最后,用户在播放端设备上逐一播放查找的目标运动块对应的视频帧,可以快速获取到目标信息。

综上所述,本发明实施例提供的一种监控视频编码及播放方法,通过采用预设算法对采集的视频图像进行运动物体检测,获取运动信息,该运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息,并向播放端设备发送该运动信息,在播放端按照预设格式,存储该运动信息,以及根据视频查看指令,播放该视频图像中待查看时间信息、区域位置信息对应的视频帧,输出并播放目标运动块对应的视频帧,从而能够在不影响原有视频编码质量的前提下,根据视频查看指令和运动信息可以快速查找到目标视频帧,大大地提高了查看监控视频的效率。

请参照图8,是本申请一实例提供的监控视频编码装置的结构示意图,包括运动检测模块710及编码模块720。

其中,运动检测模块710,用于采用预设算法,对采集的视频图像进行运动物体检测,获取运动信息,上述运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息。

编码模块720,用于向播放端设备发送上述运动信息,以使所述播放端设备根据所述运动信息查找对应位置和时间的视频帧。

可选地,编码模块720,具体用于:将上述运动信息编码至视频图像中,获取编码后的视频图像;向播放端设备发送编码后的视频图像。

可选地,编码模块720,具体用于:在存在运动块的视频帧的图像组gop后添加补充增强信息sei;在sei中添加运动信息。

可选地,编码模块720,用于向播放端设备发送视频图像中包含运动块的视频帧。

请参照图9,是本申请另一实例提供的监控视频播放装置的结构示意图,包括:接收模块910、存储模块920、查看模块930及播放模块940。

接收模块910,用于接收编码端设备发送的视频图像对应的运动信息,上述运动信息包括:视频图像中的运动块、以及各运动块的位置信息、时间信息。

存储模块920,用于按照预设格式,存储上述运动信息。

查看模块930,用于接收视频查看指令,该视频查看指令包括:待查看时间信息、区域位置信息。

播放模块940,用于根据该视频查看指令、上述运动信息,播放该视频图像中待查看时间信息、区域位置信息对应的视频帧。

可选地,存储模块920,具体用于:将上述运动信息按照对应的时间信息写入链表的不同节点中。

可选地,播放模块940,具体用于:根据视频查看指令、运动信息,查找区域位置信息对应的备选运动块;在备选运动块中,查找时间信息所对应时间范围内包含运动物体的目标运动块;输出并播放目标运动块对应的视频帧。

上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。

以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),或,一个或多个微处理器(digitalsingnalprocessor,简称dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

请参考图10,为本申请另一实施例提供的监控视频编码及播放系统结构示意图,请结合图10所示,监控视频编码及播放系统包括:上述编码端设备和上述播放端设备,其中,编码端包括:运动检测模块01和编码模块02,播放端包括解码器03、运动区域维护模块04、用户配置模块05、视频存储模块06、候选点提取模块07和视频播放模块08,下面将对图10所示的监控视频编码及播放系统工作流程做详细阐述。

具体的,编码端将采集的视频图像发送给运动检测模块01,通过预设算法对采集的视频图像进行运动物体检测获取运动信息,例如,采用高斯背景建模来检测视频图像中的每一帧图像中对应的运动块个数以及运动块的位置信息,可以通过两种方式将获取的运动信息发送到播放端。

其中,第一种,可以将运动信息先发送到编码模块02,即将运动信息编码到视频流中,将运动信息和视频流信息一同发送到播放端,并分两路存储,第一路是通过解码器03解析提取运动信息,并发送到运动区域维护模块04,以便进行后续监控视频相关处理,第二路是直接存放到视频存储模块06。

第二种,请参考图11,为本申请另一实施例提供的监控视频编码及播放系统结构示意图,将运动信息直接发送到播放端中的运动区域维护模块04,编码模块02将采集的视频流信息发送到播放端的视频存储模块06,即视频流信息和运动信息分开发送到播放端不同模块。

运动区域维护模块04,用于通过数组以及链表的形式维护近段时间视频图像中的运动情况,并不断更新,增加新的运动信息或者删除过期的运动信息。

用户配置模块05是用于接收用户输入视频查看指令,视频查看指令可以包括:待查看时间信息、区域位置信息,然后候选点提取根据用户配置模块05输入的视频查看指令中的区域位置信息将对位于区域位置信息的所有运动块对应的链表进行遍历,输出位于待查看时间信息内处于运动状态的所有时间点的视频帧。

视频播放模块08,可以播放视频图像中待查看时间信息、区域位置信息对应的视频帧。

假设,业主甲从昨天晚上八点到今天早上八点这一时间段内把车停在小区停车场,开车的时候发现车辆被人为破坏,可以根据待查看时间信息、区域位置信息来查看监控视频,业主可以在用户配置模块05先框选出的车以及车的周边的位置信息,假设,该区域信息占了整个监控视场的十分之一且平均有十分之一的时间摄像头所在视野存在运动物体,根据用户输入的12小时的待查看时间信息及框选的区域位置信息后,系统筛选出来的对应的视频帧时常为12*(1/10)*(1/10),等于0.12小时,即业主甲在视频播放模块大约播放查看七分钟十二秒的视频,就可快速查看完业主车辆周围存在运动物体的所有视频,提高了查看监控视频的效率。

图12为本申请一实施例提供的电子设备的结构示意图,该电子设备可以集成于终端设备或者终端设备的芯片,该终端可以是具备数据处理功能的计算设备。

该电子设备包括:处理器901、存储器902。

存储器902用于存储程序,处理器901调用存储器902存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。

可选地,本发明还提供一种存储介质,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。

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

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

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取存储器(英文:randomaccessmemory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

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