一种叠加OSD的方法、装置及电子设备与流程

文档序号:21550436发布日期:2020-07-21 10:56阅读:502来源:国知局
一种叠加OSD的方法、装置及电子设备与流程

本发明涉及视频处理技术领域,特别是涉及一种叠加osd的方法、装置及电子设备。



背景技术:

osd(onscreendisplay,可显示于屏幕的图文信息),通常指可以在显示器屏幕上显示的某些特殊的文字或图形信息,如:系统时间,设备工作状态等信息。

一般来说,一些相机如ipc(ipcamera,网络摄像机),会在自身采集的视频图像中叠加osd,而另一些相机如模拟相机,则不会在自身采集的视频图像中叠加osd。

dvr(digitalvideorecorder,硬盘录像机,也就是数字视频录像机)可以接收相机采集的视频图像,并对该视频图像进行显示。对于dvr来说,其接收到的视频图像可能携带osd,也可能未携带osd。如果dvr接收并显示未携带osd的视频图像,则不能显示系统时间,设备工作状态等信息,给用户带来不便。



技术实现要素:

本发明实施例的目的在于提供一种叠加osd的方法、装置及电子设备,以提高便利性。

为了达到上述目的,本发明实施例公开了一种叠加osd的方法,所述方法包括:

获取待显示osd的属性信息;

在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

生成包括所述待处理字符点阵的图像;

通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

可选的,在所述获取待显示osd的属性信息的步骤之前,还包括:

检测显示界面的osd显示开关是否被选中;

如果被选中,则执行所述获取待显示osd的属性信息的步骤。

可选的,所述在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵的步骤,包括:

调用数字信号处理器,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵。

可选的,所述属性信息中包括osd显示信息的码值;所述在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵,包括:

在预先存储的属性信息与字符点阵的对应关系中,查找所获取的osd显示信息的码值对应的字符点阵,作为待处理字符点阵。

可选的,在所述生成包括所述待处理字符点阵的图像的步骤之前,还包括:

将所查找的待处理字符点阵存入预先申请的内存中;

所述生成包括所述待处理字符点阵的图像的步骤,包括:

在预先申请的内存中,将所查找的待处理字符点阵生成包括所述待处理字符点阵的图像;

所述通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像,包括:

调用数字信号处理器,在所述预先申请的内存中读取所述图像,并通过将所读取的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

可选的,在所述通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像的步骤之后,还包括:

检测当前osd是否有更新;

如果是,则将更新后的osd确定为待显示osd,返回执行所述获取待显示osd的属性信息的步骤。

为了达到上述目的,本发明实施例还公开了一种叠加osd的装置,所述装置包括:

获取模块,用于获取待显示osd的属性信息;

查找模块,用于在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

生成模块,用于生成包括所述待处理字符点阵的图像;

输出模块,用于通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

可选的,所述装置还包括:

开关检测模块,用于在获取待显示osd的属性信息之前,检测显示界面的osd显示开关是否被选中;如果被选中,则触发获取模块。

可选的,所述查找模块,具体用于调用数字信号处理器,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵。

可选的,所述属性信息中包括osd显示信息的码值;所述查找模块,具体用于在预先存储的属性信息与字符点阵的对应关系中,查找所获取的osd显示信息的码值对应的字符点阵,作为待处理字符点阵。

可选的,所述装置还包括:

存储模块,用于在生成包括所述待处理字符点阵的图像之前,将所查找的待处理字符点阵存入预先申请的内存中;

所述生成模块,具体用于在预先申请的内存中,将所查找的待处理字符点阵生成包括所述待处理字符点阵的图像;

所述输出模块,具体用于调用数字信号处理器,在所述预先申请的内存中读取所述图像,并通过将所读取的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

可选的,所述装置还包括:

更新检测模块,用于通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像之后,检测当前osd是否有更新;

更新模块,用于在检测到当前osd有更新时,将更新后的osd确定为待显示osd,返回执行所述获取待显示osd的属性信息的步骤。

为了达到上述目的,本发明实施例还公开了一种电子设备,所述设备包括:处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;

所述存储器,用于存放计算机程序;

所述处理器,用于执行所述存储器上所存放的程序时,实现以上任一项所述的叠加osd的方法步骤。

在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的叠加osd的方法。

在本发明实施的又一方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的叠加osd的方法。

本发明实施例提供的一种叠加osd的方法、装置及电子设备,获取待显示osd的属性信息,在该属性信息与字符点阵的对应关系中,查找字符点阵,将该字符点阵生成图像,输出到菜单层的显存中,可见,本方案中,将osd生成图像输出到菜单层,使得用户能够在菜单层查看显示系统时间,设备工作状态等信息,因此,可以实现在dvr接收并显示未携带osd的视频图像时显示osd,从而提高了方案的便利性。

当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

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

图1为本发明实施例提供的叠加osd的方法的一种流程图;

图2为dvr四个输出层的位置示意图;

图3为在菜单层叠加osd后dvr四个输出层显示示意图;

图4为本发明实施例提供的叠加osd的方法的另一种流程图;

图5为本发明实施例提供的更新osd的一种流程图;

图6为本发明实施例提供的叠加osd的装置结构示意图;

图7为本发明实施例提供的电子设备示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了解决现有技术问题,本发明实施例提供了一种叠加osd的方法、装置及电子设备。该方法及装置可以应用于dvr、或者手机、电脑等各种电子设备,具体不做限定。下面首先对本发明实施例提供的一种叠加osd的方法进行介绍,以下内容中以dvr为执行主体进行举例说明。

如图1所示,图1为本发明实施例提供的叠加osd的方法的一种流程示意图,包括:

s101:获取待显示osd的属性信息;

osd可以包括系统时间,设备工作状态等信息。osd的属性信息可以包括osd的显示信息,如显示大小、显示位置或显示方式等。举例来说,显示大小可以是16*16、32*32或者64*64等等,具体不做限定;显示位置可以是左边、右边、上边或者下边等等,具体不做限定;显示方式可以是年月日、月日年或日月年等等,具体不做限定。

举例来说,dvr中可以设置有app(application,应用程序),dvr中还可以包括dsp(digitalsignalprocessing,数字信号处理器)。app可以下发待显示osd的属性信息,dsp在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵。

一种情况下,该属性信息可以表示为码值,该码值可以通过对获取的待显示osd的属性信息进行编码得到,比如,对显示大小16*16、32*32和64*64分别进行编码,得到001、010和100,对显示位置左边和右边分别进行编码,得到01和10,那么待显示osd的显示大小为16*16、显示位置为左边,其码值为00101,属性信息也可以仅表示字符的ascii码值,app可以下发码值,dsp可以根据下发的码值,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵。

在获取待显示osd的属性信息之前,可以调用dsp预先申请一定数量的内存,以使查找的字符点阵有足够内存来存储。该内存中数据的数据类型与菜单层中数据的数据类型一致。

当app检测到当前设备已正常启动或者设备的系统时间被调整后,获取待显示osd的属性信息,并向dsp发送主机命令,以使dsp查找所获取的属性信息对应的字符点阵。如上所述,待显示osd可以包括系统时间,可以根据获取到的待显示osd的属性信息,设置当前系统时间,比如东八区北京时间。

s102:在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

举例来说,该对应关系可以以字库的形式进行存储。字库中可以包括显示osd所需要显示的字符,如中英文字符、阿拉伯数字等,或者,该对应关系也可以以其他形式进行存储,具体存储形式不做限定。

一种情况下,当app获取到待显示osd的属性信息,将属性信息中包含的osd显示信息的码值和预先存储的字库下发,dsp根据下发的码值在字库中查找对应的字符点阵,也就是在预存的属性信息与字符点阵的对应关系中查找s101中所获取的属性信息对应的字符点阵,为了方便描述,将查找到的属性信息对应的字符点阵称为待处理字符点阵。

s103:生成包括待处理字符点阵的图像;

将查找到的字符点阵,也就是待处理字符点阵,转换成图像的像素点,从而生成包括待处理字符点阵的图像。

举例来说,一种情况下,待处理字符点阵可以由十六进制字节构成,字符点阵的一行用一个字节表示,而一个字节有8位,每一位可以是0或者1,如果是0,则不显示,如果是1,则显示,将字符点阵中所有是1的位显示出来,所有是0的位不显示,由此,便将字符点阵转换成了图像的像素点。

s104:通过将所生成的图像输出至菜单层的显存中,在菜单层中叠加显示该图像。

在一种情况下,待显示osd可以是图像,比如报警图像,录像状态图像等,可以直接获取该图像,将该图像输出至菜单层的显存中,以实现在菜单层叠加图像。

对于dvr来说,dvr的主控芯片中可以包括输出控制模块,该输出控制模块可以用于控制视频和图像输出,在输出控制模块中,可以包括四个输出层:视频层、画中画(pictureinpicture,画中画)层、菜单层和鼠标层。未在菜单层叠加osd时,四个输出层的位置关系可以如图2所示,视频层在最下方,pip层在视频层之上,菜单层在pip层之上,鼠标层在菜单层之上。图2中,鼠标层和菜单层的尺寸类似,一些情况下,鼠标层的宽度和高度可以小于菜单层,比如,鼠标层的宽度和高度可以小于128*128。

其中,视频层可以用于叠加视频帧,该视频帧可以是来自外接相机,比如ipc,或者模拟相机,也可以是来自dvr内部的模数转换模块。本方案中,视频层可以用于叠加外接模拟相机传递的视频帧,该视频帧中没有osd。画中画层,也就是pip层,可以用于在视频层上再显示一个视频帧,当pip层与视频层的视频帧重叠时,重叠部分显示pip层的视频帧。菜单层,也就是图形层,可以用于显示功能菜单,当菜单层与pip层的视频帧重叠时,重叠的部分显示菜单层的图像。本方案中,菜单层可以用于显示菜单和osd。鼠标层,可以用于显示鼠标,当菜单层与鼠标层的图像重叠时,重叠部分显示鼠标层图像。

在菜单层叠加osd后,四个输出层的显示如图3所示,视频层显示视频图像,画中画层显示视频层的视频图像中的视频图像,也就是画中画,菜单层显示菜单和osd,鼠标层显示鼠标图像。

应用图1所述的实施例,获取待显示osd的属性信息,在该属性信息与字符点阵的对应关系中,查找字符点阵,将该字符点阵生成图像,输出到菜单层的显存中。由于将osd生成图像输出到菜单层,使得用户能够在菜单层查看显示系统时间,设备工作状态等信息。因此,提高了方案的便利性。

更进一步的,本发明实施例提供了叠加osd的方法的另一种流程图,通过调用数字信号处理器,查找字符点阵,将该字符点阵都存入预先申请的内存中,然后生成图像,输出至菜单层,实现osd的叠加。具体的,如图4所示,可以包括:

s401:检测数字视频录像机显示界面的osd显示开关是否被选中;如果是,则执行s402;

在获取待显示osd的属性信息之前,先检测dvr显示界面的osd显示开关是否被选中,如果检测到dvr显示界面的osd显示开关被选中,则获取待显示osd的属性信息。

s402:获取待显示osd的属性信息;

s403:调用数字信号处理器,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

数字信号处理器,可以是dsp。在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,可以调用数字信号处理器查找所获取的属性信息对应的字符点阵。

在一种情况下,可以在预先存储的属性信息与字符点阵的对应关系中,查找所获取的osd显示信息的码值对应的字符点阵,作为待处理字符点阵。

s404:将所查找的待处理字符点阵存入预先申请的内存中;

预先申请的内存,可以是dsp预先申请的内存,用于存放待处理字符点阵。

s405:在预先申请的内存中,将所查找的待处理字符点阵生成包括该待处理字符点阵的图像;

将存入预先申请的内存中的字符点阵,生成包括待处理字符点阵的图像,再输出到菜单层的显存中,这种显示方式与针对每个字符点阵,在属性信息与字符点阵的对应关系中查找字符点阵,生成对应的图像,输出到显存中的显示方式相比,提高了菜单层的显示效率。

s406:调用数字信号处理器,在预先申请的内存中读取生成的图像,并通过将所读取的图像输出至菜单层的显存中,在菜单层中叠加显示该图像。

调用数字信号处理器,使得数字信号处理器调用cpu内部的二维图像处理硬件,在预先申请的内存中读取生成的图像,并将该图像输出至菜单层的显存中,从而实现在菜单层中叠加osd。

应用图4所述的实施例,通过调用数字信号处理器,查找字符点阵,将该字符点阵都存入预先申请的内存中,然后生成图像,从预先申请的内存中将生成的图像输出至菜单层,实现了osd的叠加,使得用户能够在菜单层查看显示系统时间,设备工作状态等信息。因此,提高了方案的便利性。

在一种情况下,在通过将所生成的图像输出至菜单层的显存中,在菜单层中叠加显示生成的图像之后,可以检测当前osd是否有更新,如果检测到当前osd有更新,则将更新后的osd确定为待显示osd,返回执行s402,以实现osd的实时更新。

osd的更新流程可以如图5所示,先检测osd显示开关是否被选中,如果是,则调用数字信号处理器,查询当前待显示osd是否有更新,也就是当前待显示osd是否与显示的osd一致,如果不一致,则更新osd,也就是获取待显示osd的属性信息,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;生成包括待处理字符点阵的图像;通过将所生成的图像输出至菜单层的显存中,在菜单层中叠加显示该图像。

在一种情况下,可以调用dsp创建一个任务,实时查询当前待显示osd是否有更新,如果有更新,则更新osd,然后检测osd显示开关是否被选中,如果被选中,则将更新后的osd输出至菜单层的显存中,在菜单层中叠加显示更新后的osd。

如果待显示osd是图像,则可以检测是否有新的图像存入预先申请的内存,如果有,则将该新的图像输出至菜单层的显存中,在菜单层叠加显示该图像。

与上述方法实施例相对应,本发明实施例还提供了一种叠加osd的装置,如图6所示,所述装置包括:

获取模块601,用于获取待显示osd的属性信息;

查找模块602,用于在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

生成模块603,用于生成包括所述待处理字符点阵的图像;

输出模块604,用于通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

作为一种实施方式,所述装置,还可以包括:

开关检测模块(图中未示出),用于在获取待显示osd的属性信息之前,检测显示界面的osd显示开关是否被选中;如果被选中,则触发获取模块。

作为一种实施方式,所述查找模块602,具体用于调用数字信号处理器,在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵。

作为一种实施方式,所述属性信息中包括osd显示信息的码值;所述查找模块602,具体用于在预先存储的属性信息与字符点阵的对应关系中,查找所获取的osd显示信息的码值对应的字符点阵,作为待处理字符点阵。

作为一种实施方式,所述装置,还可以包括:

存储模块(图中未示出),用于在生成包括所述待处理字符点阵的图像之前,将所查找的待处理字符点阵存入预先申请的内存中;

所述生成模块603,具体用于在预先申请的内存中,将所查找的待处理字符点阵生成包括所述待处理字符点阵的图像;

所述输出模块604,具体用于调用数字信号处理器,在所述预先申请的内存中读取所述图像,并通过将所读取的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

作为一种实施方式,所述装置,还可以包括:

更新检测模块(图中未示出),用于通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像之后,检测当前osd是否有更新;

更新模块(图中未示出),用于在检测到当前osd有更新时,将更新后的osd确定为待显示osd,返回执行所述获取待显示osd的属性信息的步骤。

应用图6所述的实施例,获取待显示osd的属性信息,在该属性信息与字符点阵的对应关系中,查找字符点阵,将该字符点阵生成图像,输出到菜单层的显存中。由于将osd生成图像输出到菜单层,使得用户能够在菜单层查看显示系统时间,设备工作状态等信息。因此,提高了方案的便利性。

本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,

存储器703,用于存放计算机程序;

处理器701,用于执行存储器703上所存放的程序时,实现如下步骤:

获取待显示osd的属性信息;

在预先存储的属性信息与字符点阵的对应关系中,查找所获取的属性信息对应的字符点阵,作为待处理字符点阵;

生成包括所述待处理字符点阵的图像;

通过将所生成的图像输出至菜单层的显存中,在所述菜单层中叠加显示所述图像。

可见,本发明实施例所提供的方案中,获取待显示osd的属性信息,在该属性信息与字符点阵的对应关系中,查找字符点阵,将该字符点阵生成图像,输出到菜单层的显存中。由于将osd生成图像输出到菜单层,使得用户能够在菜单层查看显示系统时间,设备工作状态等信息。因此,提高了方案的便利性。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的叠加osd的方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的叠加osd的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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