一种图像处理方法、装置及设备与流程

文档序号:24337790发布日期:2021-03-19 12:18阅读:55来源:国知局
一种图像处理方法、装置及设备与流程

本申请涉及视频技术领域,尤其是涉及一种图像处理方法、装置及设备。



背景技术:

近年来,视频监控的普及化趋势越来越明显,视频监控正在逐步迈入高清化、智能化。在视频监控系统中,通常会包括大量的前端设备(例如,监控终端设备、模拟摄像机、ipc(internetprotocolcamera,网络摄像机)、编码器等),这些前端设备可以采集视频图像,并将视频图像发送给nvr(networkvideorecorder,网络硬盘录像机),由nvr对视频图像进行存储和管理。

多画面拼接作为nvr的一种功能,应用愈来愈普遍。例如,nvr根据所有通道的已解码帧获取多画面视频帧,并显示多画面视频帧,从而在同一个交互屏幕上显示所有通道的视频帧。但是,若nvr只获取到部分通道的已解码帧,那么,nvr应该如何拼接多画面视频帧,目前并没有合理的实现方式。



技术实现要素:

本申请提供一种图像处理方法、装置及设备,即使只获取到部分通道的已解码帧,也能够拼接出多画面视频帧,提供一种合理的多画面视频帧拼接方式。

本申请提供一种图像处理方法,所述方法包括:

从所有通道中选取第一类通道和第二类通道,所述第一类通道在当前周期的已解码帧存在,所述第二类通道在当前周期的已解码帧不存在;

根据所述第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧;获取所述第二类通道在上一周期的已输出帧,并根据所述第二类通道在上一周期的已输出帧获取所述第二类通道在当前周期的已输出帧;

将所述第一类通道在当前周期的已输出帧和所述第二类通道在当前周期的已输出帧,拼接成所述当前周期的多画面视频帧。

本申请提供一种图像处理装置,所述装置包括:

选取模块,用于从所有通道中选取第一类通道和第二类通道,第一类通道在当前周期的已解码帧存在,第二类通道在当前周期的已解码帧不存在;

获取模块,用于根据第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧;获取所述第二类通道在上一周期的已输出帧,根据第二类通道在上一周期的已输出帧获取所述第二类通道在当前周期的已输出帧;

拼接模块,用于将所述第一类通道在当前周期的已输出帧和所述第二类通道在当前周期的已输出帧,拼接成所述当前周期的多画面视频帧。

本申请提供一种图像处理设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;

所述处理器用于执行机器可执行指令,以实现如下步骤:

从所有通道中选取第一类通道和第二类通道,所述第一类通道在当前周期的已解码帧存在,所述第二类通道在当前周期的已解码帧不存在;

根据所述第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧;获取所述第二类通道在上一周期的已输出帧,并根据所述第二类通道在上一周期的已输出帧获取所述第二类通道在当前周期的已输出帧;

将所述第一类通道在当前周期的已输出帧和所述第二类通道在当前周期的已输出帧,拼接成所述当前周期的多画面视频帧。

由以上技术方案可见,本申请实施例中,针对当前周期的已解码帧不存在的第二类通道,可以根据第二类通道在上一周期的已输出帧获取第二类通道在当前周期的已输出帧,并将第二类通道在当前周期的已输出帧拼接成多画面视频帧。上述方式提出一种多画面视频帧实时拼接的方案,即使只获取到部分通道的已解码帧,也能够拼接出多画面视频帧,在保证画面的连续性的同时,减少内存带宽以及硬件单元消耗,提升多画面视频拼接效率。

附图说明

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。

图1是本申请一种实施方式中的图像处理方法的流程图;

图2是本申请一种实施方式中的9个通道的多画面视频拼接示意图;

图3是本申请一种实施方式中的已解码帧为就绪态或空闲态的处理示意图;

图4a是本申请一种实施方式中的局部回拷的示意图;

图4b是本申请一种实施方式中的全局回拷的示意图;

图5是本申请一种实施方式中的9个通道的就绪态或空闲态的示意图;

图6是本申请一种实施方式中的图像处理装置的结构图;

图7是本申请一种实施方式中的图像处理设备的结构图。

具体实施方式

在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本申请实施例中提出一种图像处理方法,该方法可以应用于图像处理设备,该图像处理设备可以是nvr,也可以是其它类型的设备,对此不做限制。其中,该图像处理方法用于实现多画面拼接,且该图像处理方法涉及如下概念:

通道:前端设备(如监控终端设备、模拟摄像机、ipc、编码器等)可以采集视频图像,并将视频图像发送给nvr,由nvr对视频图像进行存储和管理。针对nvr来说,每个前端设备发送给nvr的所有视频图像可以对应至少一个通道。例如,前端设备1向nvr发送高分辨率的视频图像集合a1,则视频图像集合a1中的所有视频图像对应通道1。前端设备2向nvr发送高分辨率的视频图像集合b1和低分辨率的视频图像集合b2,则视频图像集合b1中的所有视频图像对应通道2,视频图像集合b2中的所有视频图像对应通道3,以此类推。当然,上述只是通道的一个示例,对此不做限制,例如,nvr可以根据某种策略将本地存储的视频图像划分成多个通道,对此划分方式不做限制。

已解码帧:前端设备向nvr发送视频图像时,该视频图像是编码后的视频图像,nvr接收到编码后的视频图像后,先对视频图像进行解码,得到解码后的视频图像。针对解码后的每帧视频图像,可以称为一个已解码帧。

已输出帧:nvr可以对已解码帧进行后处理,而经过后处理的已解码帧是已输出帧,nvr可以将所有通道的已输出帧拼接在一起,形成多画面视频帧。

例如,nvr可以获取通道1的已解码帧、通道2的已解码帧、通道3的已解码帧、通道4的已解码帧。对通道1的已解码帧进行后处理,得到通道1的已输出帧,对通道2的已解码帧进行后处理,得到通道2的已输出帧,对通道3的已解码帧进行后处理,得到通道3的已输出帧,对通道4的已解码帧进行后处理,得到通道4的已输出帧。然后,将通道1的已输出帧、通道2的已输出帧、通道3的已输出帧、通道4的已输出帧拼接在一起,形成4画面视频帧。

多画面视频帧:多画面拼接作为nvr的一种功能,应用愈来愈普遍,nvr可以将所有通道的已输出帧拼接在一起,形成多画面视频帧,并显示所述多画面视频帧,这样,就可以在同一个交互屏幕上显示所有通道的视频帧。

周期:在每个周期,nvr需要获取所有通道的已解码帧,并根据所有通道的已解码帧得到所有通道的已输出帧,并将所有通道的已输出帧拼接在一起,形成多画面视频帧。例如,在第一个周期,将所有通道的已输出帧拼接在一起,形成多画面视频帧;在第二个周期,将所有通道的已输出帧拼接在一起,形成多画面视频帧,以此类推。假设当前周期是第二个周期,则上一周期为第一个周期,假设当前周期是第三个周期,则上一周期为第二个周期,以此类推。

例如,在第一个周期,nvr获得通道1的已解码帧a11、通道2的已解码帧a21、通道3的已解码帧a31、通道4的已解码帧a41。对已解码帧a11进行后处理,得到通道1的已输出帧b11;对已解码帧a21进行后处理,得到通道2的已输出帧b21;对已解码帧a31进行后处理,得到通道3的已输出帧b31;对已解码帧a41进行后处理,得到通道4的已输出帧b41。将已输出帧b11、已输出帧b21、已输出帧b31、已输出帧b41拼接在一起,形成4画面视频帧。

在第二个周期,nvr获得通道1的已解码帧a12、通道2的已解码帧a22、通道3的已解码帧a32、通道4的已解码帧a42。对已解码帧a12进行后处理,得到通道1的已输出帧b12;对已解码帧a22进行后处理,得到通道2的已输出帧b22;对已解码帧a32进行后处理,得到通道3的已输出帧b32;对已解码帧a42进行后处理,得到通道4的已输出帧b42。将已输出帧b12、已输出帧b22、已输出帧b32、已输出帧b42拼接在一起,形成4画面视频帧。

进一步的,假设当前周期是第二个周期,上一周期是第一个周期,则已解码帧a12是通道1在当前周期的已解码帧,已解码帧a11是通道1在上一周期的已解码帧,已输出帧b12是通道1在当前周期的已输出帧,已输出帧b11是通道1在上一周期的已输出帧。已解码帧a22是通道2在当前周期的已解码帧,已解码帧a21是通道2在上一周期的已解码帧,已输出帧b22是通道2在当前周期的已输出帧,已输出帧b21是通道2在上一周期的已输出帧,以此类推。

综上所述,nvr需要获取所有通道的已解码帧,根据所有通道的已解码帧得到所有通道的已输出帧,将所有通道的已输出帧拼接在一起,形成多画面视频帧。在当前周期,若nvr只获取到部分通道的已解码帧,未获取到其它通道的已解码帧,应该如何拼接多画面视频帧,目前并没有合理的实现方式。

针对上述发现,本申请实施例中,针对当前周期的已解码帧不存在的第二类通道,可以根据第二类通道在上一周期的已输出帧获取第二类通道在当前周期的已输出帧,并将第二类通道在当前周期的已输出帧拼接成多画面视频帧。基于上述方式,即使只获取到部分通道的已解码帧,也能够拼接出多画面视频帧,在保证画面的连续性的同时,减少内存带宽以及硬件单元消耗。

以下结合具体实施例,对本申请实施例中的图像处理过程进行说明。

实施例1:本申请实施例中提出一种图像处理方法,该方法可以应用于图像处理设备,参见图1所示,为该图像处理方法的流程示意图,该方法可以包括:

步骤101,从所有通道中选取第一类通道和第二类通道,第一类通道在当前周期的已解码帧存在,第二类通道在当前周期的已解码帧不存在。

本文中的通道是指需要形成多画面视频帧的通道,即上述所有通道是指需要形成多画面视频帧的所有通道。例如,若需要将通道1的已输出帧、通道2的已输出帧、通道3的已输出帧、通道4的已输出帧拼接在一起,形成多画面视频帧,则所有通道可以包括通道1、通道2、通道3和通道4。

针对所有通道中的每个通道,若该通道在当前周期的已解码帧存在(即已得到已解码帧),则将该通道作为第一类通道;若该通道在当前周期的已解码帧不存在(即未得到已解码帧),则将该通道作为第二类通道。

例如,在当前周期,假设nvr获取到通道1的已解码帧和通道2的已解码帧,nvr未获取到通道3的已解码帧和通道4的已解码帧,基于此,则通道1和通道2可以作为第一类通道,通道3和通道4可以作为第二类通道。

步骤102,根据第一类通道在当前周期的已解码帧获取该第一类通道在当前周期的已输出帧;获取第二类通道在上一周期的已输出帧,并根据第二类通道在上一周期的已输出帧获取该第二类通道在当前周期的已输出帧。

在一个例子中,根据第一类通道在当前周期的已解码帧获取该第一类通道在当前周期的已输出帧,可以包括但不限于:对第一类通道在当前周期的已解码帧进行后处理,并将处理后的已解码帧确定为第一类通道在当前周期的已输出帧;其中,所述后处理可以包括但不限于以下之一或任意组合:去噪处理、裁切处理、色彩调整处理、白平衡调整处理、亮度调整处理、缩放处理。

例如,假设通道1和通道2可以作为第一类通道,由于通道1在当前周期的已解码帧存在,因此,可以对通道1在当前周期的已解码帧进行后处理,并将处理后的已解码帧确定为通道1在当前周期的已输出帧。由于通道2在当前周期的已解码帧存在,因此,可以对通道2在当前周期的已解码帧进行后处理,并将处理后的已解码帧确定为通道2在当前周期的已输出帧。

在一个例子中,根据第二类通道在上一周期的已输出帧获取该第二类通道在当前周期的已输出帧,可以包括但不限于:可以将第二类通道在上一周期的已输出帧,直接确定为所述第二类通道在当前周期的已输出帧。

例如,假设通道3和通道4可以作为第二类通道,由于通道3在当前周期的已解码帧不存在,因此,可以获取通道3在上一周期的已输出帧,并将通道3在上一周期的已输出帧确定为通道3在当前周期的已输出帧。由于通道4在当前周期的已解码帧不存在,因此,可以获取通道4在上一周期的已输出帧,并将通道4在上一周期的已输出帧确定为通道4在当前周期的已输出帧。

综上所述,可以得到每个通道(即第一类通道和第二类通道)在当前周期的已输出帧,已输出帧是能够在多画面视频帧中进行显示的视频帧。

步骤103,将第一类通道在当前周期的已输出帧和第二类通道在当前周期的已输出帧,拼接成当前周期的多画面视频帧,并显示多画面视频帧。

例如,在得到通道1在当前周期的已输出帧、通道2在当前周期的已输出帧、通道3在当前周期的已输出帧、通道4在当前周期的已输出帧后,可以将上述4个已输出帧拼接成当前周期的多画面视频帧,并显示多画面视频帧。

在上述实施例中,获取第二类通道在上一周期的已输出帧,可以包括但不限于:确定已输出帧的回拷策略,所述回拷策略可以为局部回拷或者全局回拷。若所述回拷策略为局部回拷,则从指定存储区域中获取第二类通道在上一周期的已输出帧,其中,所述指定存储区域用于存储所有通道的已输出帧。若所述回拷策略为全局回拷,则从指定存储区域中获取所有通道在上一周期的已输出帧,并从获取的已输出帧中选取第二类通道在上一周期的已输出帧。

例如,在上一周期的处理过程中,可以在指定存储区域中存储通道1在上一周期的已输出帧、通道2在上一周期的已输出帧、通道3在上一周期的已输出帧、通道4在上一周期的已输出帧。基于此,在当前周期的处理过程中:

假设通道3和通道4为第二类通道,若回拷策略为局部回拷,则第一次获取过程,从指定存储区域中获取通道3在上一周期的已输出帧;第二次获取过程,从指定存储区域中获取通道4在上一周期的已输出帧;即,通过两次获取过程,得到通道3在上一周期的已输出帧和通道4在上一周期的已输出帧。

假设通道3和通道4为第二类通道,若回拷策略为全局回拷,则只执行一次获取过程,从指定存储区域中获取所有通道在上一周期的已输出帧,如通道1在上一周期的已输出帧、通道2在上一周期的已输出帧、通道3在上一周期的已输出帧、通道4在上一周期的已输出帧。然后,从所有通道在上一周期的已输出帧中选取通道3在上一周期的已输出帧和通道4在上一周期的已输出帧。

当然,上述方式只是获取第二类通道在上一周期的已输出帧的示例,对此获取方式不做限制,只要能够得到第二类通道在上一周期的已输出帧即可。

在上述实施例中,需要确定已输出帧的回拷策略,针对确定已输出帧的回拷策略,可以包括但不限于如下方式:方式一、根据所有通道的通道总数量和第一类通道的通道数量,确定已输出帧的回拷策略。方式二、根据所有通道的通道总数量和第二类通道的通道数量,确定已输出帧的回拷策略。方式三、获取预先配置的已输出帧的回拷策略。当然,上述方式只是示例,对此不做限制。

针对方式一、可以根据所有通道的通道总数量m和第一类通道的通道数量n确定通道刷新率。例如,通道刷新率可以为n/m,或者,通道刷新率可以为r*n/m,r为权重值。然后,若通道刷新率大于预设阈值(预设阈值的取值可以根据经验进行配置,如0.5、0.6等,对此不做限制),则确定回拷策略为局部回拷;若通道刷新率不大于预设阈值,则确定回拷策略为全局回拷。

示例性的,r的取值可以根据经验进行配置,如r可以为1、0.8、1.2等,对此不做限制。或者,根据第一类通道的已输出帧的像素点数量和多画面视频帧的像素点总数量,确定r的取值。例如,通道1和通道2为第一类通道,通道3和通道4为第二类通道,假设通道1的已输出帧的像素点数量为200,通道2的已输出帧的像素点数量为300,通道3的已输出帧的像素点数量为100,通道4的已输出帧的像素点数量为100,则多画面视频帧的像素点总数量为700,又例如,假设通道1的已输出帧的像素点数量为100,通道2的已输出帧的像素点数量为100,通道3的已输出帧的像素点数量为200,通道4的已输出帧的像素点数量为300,则多画面视频帧的像素点总数量为700,当然,上述只是确定r的取值的示例,对此不做限制。

针对方式二、可以根据所有通道的通道总数量m和第二类通道的通道数量s确定通道刷新率。例如,通道刷新率可以为(m-s)/m,或者,通道刷新率可以为(1-r)*(m-s)/m,r为权重值。若通道刷新率大于预设阈值,则确定回拷策略为局部回拷;若通道刷新率不大于预设阈值,则确定回拷策略为全局回拷。

示例性的,r的取值可以根据经验进行配置。或者,根据第一类通道的已输出帧的像素点数量和多画面视频帧的像素点总数量,确定r的取值。

针对方式三、可以预先配置已输出帧的回拷策略,若预先配置的已输出帧的回拷策略为全局回拷,则确定已输出帧的回拷策略为全局回拷;若预先配置的已输出帧的回拷策略为局部回拷,则确定已输出帧的回拷策略为局部回拷。

由以上技术方案可见,本申请实施例中,针对当前周期的已解码帧不存在的第二类通道,可以根据第二类通道在上一周期的已输出帧获取第二类通道在当前周期的已输出帧,并将第二类通道在当前周期的已输出帧拼接成多画面视频帧。上述方式提出一种多画面视频帧实时拼接的方案,即使只获取到部分通道的已解码帧,也能够拼接出多画面视频帧,在保证画面的连续性的同时,减少内存带宽以及硬件单元消耗,提升多画面视频拼接效率。

实施例2:参见图2所示,以9个通道为例,nvr可以获取到通道1的码流1、通道2的码流2、…、通道9的码流9。其中,通过解析器1和解码器1对码流1进行处理后,可以得到通道1的已解码帧,并将通道1的已解码帧存储到解码输出队列1。通过解析器2和解码器2对码流2进行处理后,可以得到通道2的已解码帧,并将通道2的已解码帧存储到解码输出队列2,以此类推。

视频处理单元从解码输出队列1中获取通道1的已解码帧,对通道1的已解码帧进行后处理,将处理后的已解码帧确定为通道1的已输出帧,将通道1的已输出帧存储到多画面输出队列。视频处理单元从解码输出队列2中获取通道2的已解码帧,对通道2的已解码帧进行后处理,将处理后的已解码帧确定为通道2的已输出帧,将通道2的已输出帧存储到多画面输出队列,以此类推。

视频处理单元将每个通道的已输出帧存储到多画面输出队列时,这些已输出帧的存储位置参见图2所示。而且,视频处理单元将已输出帧存储到多画面输出队列的过程,就是对这些已输出帧进行拼接,得到多画面视频帧的过程。

示例性的,视频处理单元的后处理方式,可以包括但不限于以下之一或者任意组合:去噪处理、裁切处理、色彩调整处理、白平衡调整处理、亮度调整处理、缩放处理,当然,上述只是给出了后处理的几个示例,对此不做限制。

综上所述,视频处理单元可以从9个解码输出队列中获取9个通道的已解码帧,并根据9个通道的已解码帧得到9个通道的已输出帧,将9个通道的已输出帧存储到多画面输出队列,视频处理单元将9个通道的已输出帧存储到多画面输出队列的过程,就是将9个通道的已输出帧拼接成多画面视频帧。输出单元从多画面输出队列中读取所述多画面视频帧进行显示。

实施例3:参见图3所示,在当前周期,每个通道的解码输出队列中的已解码帧可以为就绪态或者空闲态。当已解码帧为就绪态时,表示解码输出队列中存在该通道在当前周期的已解码帧,该通道作为第一类通道;当已解码帧为空闲态时,表示解码输出队列中不存在该通道在当前周期的已解码帧,该通道作为第二类通道。为了方便描述,后续以通道1为例。当解码输出队列1中的已解码帧为就绪态时,表示解码输出队列1中存在通道1在当前周期的已解码帧,通道1作为第一类通道;当解码输出队列1中的已解码帧为空闲态时,表示解码输出队列1中不存在通道1在当前周期的已解码帧,通道1作为第二类通道。

当解码输出队列1中存在通道1在当前周期的已解码帧时,则视频处理单元可以从解码输出队列1中获取通道1在当前周期的已解码帧,对通道1在当前周期的已解码帧进行后处理,并将处理后的已解码帧确定为通道1在当前周期的已输出帧,并将通道1在当前周期的已输出帧存储到多画面输出队列。

当解码输出队列1中不存在通道1在当前周期的已解码帧时,则视频处理单元可以从多画面输出队列中获取通道1在上一周期的已输出帧,并将通道1在上一周期的已输出帧确定为通道1在当前周期的已输出帧,然后,视频处理单元可以将通道1在当前周期的已输出帧存储到多画面输出队列。

示例性的,多画面输出队列(即上述指定存储区域)可以存储多个周期的已输出帧,以存储3个周期的已输出帧为例,也就是说,多画面输出队列用于存储与当前周期最接近的连续3个周期的已输出帧。在周期1,视频处理单元将通道1在周期1的已输出帧存储到多画面输出队列。在周期2,若解码输出队列1中不存在通道1在周期2的已解码帧,由于多画面输出队列存在通道1在周期1的已输出帧,因此,视频处理单元可以从多画面输出队列中获取通道1在周期1的已输出帧,将通道1在周期1的已输出帧确定为通道1在周期2的已输出帧,并将通道1在周期2的已输出帧存储到多画面输出队列,以此类推。

在当前周期,在视频处理单元对9个通道分别进行上述处理后,则多画面输出队列可以包括所述9个通道在当前周期的已输出帧,且所述9个通道在当前周期的已输出帧被视频处理单元拼接成多画面视频帧。输出单元可以从多画面输出队列中获取所述多画面视频帧,并显示所述多画面视频帧。

实施例4:在上述实施例中,视频处理单元可以从多画面输出队列中获取通道在上一周期的已输出帧,并将该已输出帧确定为该通道在当前周期的已输出帧,这个过程可以称为已输出帧的回拷。为了实现已输出帧的回拷,可以采用局部回拷或者全局回拷。参见图4a所示,为局部回拷的示意图,局部回拷是指:假设需要回拷通道1在上一周期的已输出帧和通道2在上一周期的已输出帧,则只从多画面输出队列中获取通道1在上一周期的已输出帧和通道2在上一周期的已输出帧。参见图4b所示,为全局回拷的示意图,全局回拷是指:假设需要回拷通道1在上一周期的已输出帧和通道2在上一周期的已输出帧,则从多画面输出队列中获取所有通道(如通道1-通道9)在上一周期的已输出帧。

参见图4a所示,若采用局部回拷,则第一次获取过程,从多画面输出队列中获取通道1在上一周期的已输出帧;第二次获取过程,从多画面输出队列中获取通道2在上一周期的已输出帧;即,通过两次获取过程,从多画面输出队列中获取通道1在上一周期的已输出帧和通道2在上一周期的已输出帧。

参见图4b所示,若采用全局回拷,则只执行一次获取过程,从多画面输出队列中获取所有通道(如通道1-通道9)在上一周期的已输出帧,然后,从这些已输出帧中选取通道1在上一周期的已输出帧和通道2在上一周期的已输出帧。

与局部回拷相比,整体回拷是将所有通道在上一周期的已输出帧回拷,只需要一次硬件操作即可,兼顾局部回拷的优点,避免硬件频繁的从多画面输出队列中获取已输出帧,提升硬件的使用效率,降低硬件带宽,提高处理速度。

实施例5:为了决策采用局部回拷还是全局回拷,可以采用如下方式:根据所有通道的通道总数量和第一类通道(即在当前周期的已解码帧存在的通道)的通道数量,确定已输出帧的回拷策略。具体的,可以根据所有通道的通道总数量m、第一类通道的通道数量n、权重值r确定通道刷新率,例如,通道刷新率可以为r*n/m。然后,若通道刷新率大于预设阈值,则确定回拷策略为局部回拷;若通道刷新率不大于预设阈值,则确定回拷策略为全局回拷。

在多画面拼接过程中,每个通道都是相互独立的,针对每个通道来说,该通道可能为第一类通道,即该通道的已解码帧就绪,表示存在当前周期的已解码帧。该通道也可能为第二类通道,即该通道的已解码帧空闲,表示不存在当前周期的已解码帧。参见图5所示,针对9个通道来说,奇数通道的已解码帧为就绪态,即第一类通道,偶数通道的已解码帧为空闲态,即第二类通道。

本实施例中,引入一个新的概念:通道刷新率,通道刷新率可以为r*n/m。其中,m为通道总数量,参见图5所示,m为9。n为第一类通道的通道数量,参见图5所示,奇数通道的已解码帧为就绪态,即所有奇数通道为第一类通道,显然,n为5。r为权重值,r的确定方式参见上述实施例。通道刷新率可以为实时的区域刷新率,能够直观的反应第一类通道的通道数量与通道总数量的比例,以权重值r为1为例,则通道刷新率可以为5/9。

在上述应用场景下,为了决策采用局部回拷还是全局回拷,可以先获取所有通道的通道总数量m、第一类通道的通道数量n、权重值r。然后,根据通道总数量m、第一类通道的通道数量n、权重值r确定通道刷新率,例如,通道刷新率可以为r*n/m。然后,若通道刷新率大于预设阈值,则确定回拷策略为局部回拷;若通道刷新率不大于预设阈值,则确定回拷策略为全局回拷。

综上所述,本实施例中,通过获取通道刷新率,决策采用局部回拷还是全局回拷,从而降低带宽,提升多画面视频拼接效率,降低视频处理单元的使用率。当通道刷新率的值比较小时,碎片化的区域量较多(即需要回拷的已输出帧的数量较多),视频输出回拷机制采用全局回拷,以解决碎片化的问题,提高硬件的效率。当通道刷新率的值比较大时,碎片化的区域量较少(即需要回拷的已输出帧的数量较少),视频输出回拷机制采用局部回拷,以节省带宽。

实施例6:基于与上述方法同样的申请构思,本申请实施例中还提出一种图像处理装置,如图6所示,为所述图像处理装置的结构图,所述装置包括:

选取模块61,用于从多个通道中选取第一类通道和第二类通道,第一类通道在当前周期的已解码帧存在,第二类通道在当前周期的已解码帧不存在;

获取模块62,用于根据第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧;获取第二类通道在上一周期的已输出帧,根据第二类通道在上一周期的已输出帧获取所述第二类通道在当前周期的已输出帧;

拼接模块63,用于将所述第一类通道在当前周期的已输出帧和所述第二类通道在当前周期的已输出帧,拼接成所述当前周期的多画面视频帧。

所述获取模块62获取所述第二类通道在上一周期的已输出帧时具体用于:

确定已输出帧的回拷策略,所述回拷策略为局部回拷或者全局回拷;

若回拷策略为局部回拷,则从指定存储区域中获取第二类通道在上一周期的已输出帧;所述指定存储区域用于存储所有通道的已输出帧;

若回拷策略为全局回拷,从指定存储区域中获取所有通道在上一周期的已输出帧,并从获取的已输出帧中选取第二类通道在上一周期的已输出帧。

所述获取模块62确定已输出帧的回拷策略时具体用于:根据所有通道的通道总数量和所述第一类通道的通道数量,确定已输出帧的回拷策略。

所述获取模块62根据所有通道的通道总数量和所述第一类通道的通道数量,确定已输出帧的回拷策略时具体用于:

根据所有通道的通道总数量和第一类通道的通道数量确定通道刷新率;

若所述通道刷新率大于预设阈值,则确定所述回拷策略为局部回拷;

若所述通道刷新率不大于预设阈值,则确定所述回拷策略为全局回拷。

所述获取模块62根据所述第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧时具体用于:

对所述第一类通道在当前周期的已解码帧进行后处理,并将处理后的已解码帧确定为所述第一类通道在当前周期的已输出帧;

其中,所述后处理包括以下之一或任意组合:去噪处理、裁切处理、色彩调整处理、白平衡调整处理、亮度调整处理、缩放处理。

实施例7:基于与上述方法同样的申请构思,本申请实施例中还提出一种图像处理设备,从硬件层面而言,所述图像处理设备的硬件架构示意图可以参见图7所示。包括:处理器和机器可读存储介质,其中:所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现本申请上述示例公开的图像处理方法。

示例性的,所述处理器用于执行机器可执行指令,以实现如下步骤:

从所有通道中选取第一类通道和第二类通道,所述第一类通道在当前周期的已解码帧存在,所述第二类通道在当前周期的已解码帧不存在;

根据所述第一类通道在当前周期的已解码帧获取所述第一类通道在当前周期的已输出帧;获取所述第二类通道在上一周期的已输出帧,并根据所述第二类通道在上一周期的已输出帧获取所述第二类通道在当前周期的已输出帧;

将所述第一类通道在当前周期的已输出帧和所述第二类通道在当前周期的已输出帧,拼接成所述当前周期的多画面视频帧。

基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的图像处理方法。

示例性的,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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