一种前端相机监控视频osd显示系统
技术领域
1.本发明属于视频安防领域,具体涉及一种前端相机监控视频osd显示系统。
背景技术:
2.osd是onscreendisplay的缩写,在视频安防领域的应用主要是告知视频观看者当前的时间、通道名称、地点等信息。
3.现代视频安防领域实现传输码流上叠加osd的方法主要是以字符叠加的方式,直接在传输码流上叠加osd位图。其原理是将osd显示的内容使用字符解析工具按照特定格式将字符(如数字0~9,字母a~z等)解析成8*8或16*16等的矩阵,然后存储在设备内存中,当需要显示osd字符时,按照一定偏移量从内存中将字符矩阵取出来,叠加在传输码流上。这种使用字符叠加的方式实现视频叠加osd位图的方法,在设备内存利用率上有比较大的优势,但在osd位图展示的多样性和丰富性上缺点比较明显,无法支持osd位图字体的类型、颜色、阴影效果等以及丰富的图形展示,无法满足现代视频安防领域osd位图多样性的要求。另外,在视频设备(如电视等)还有一种osd位图叠加方法,即使用位图的方式叠加osd位图。其原理是将osd位图生成一张透明或半透明的宽高较大的图片(如1080p等),然后将图片和视频帧统一编码,对视频帧每个像素进行修改,从而达到叠加osd的效果。这种位图叠加osd的方法在osd位图的丰富性和多样性上优势比较明显,可呈现丰富多彩的osd位图,但是由于生成图片宽高较大,在设备性能限制上缺点较明显,需要视频处理设备有足够多的内存和较高的cpu配置,无法满足安防领域的嵌入式设备。
技术实现要素:
4.本发明的目的在于针对解决背景技术中提出的问题,提出一种前端相机监控视频osd显示系统。
5.为实现上述目的,本发明所采取的技术方案为:
6.本发明提出的一种前端相机监控视频osd显示系统,包括摄像头、osd信息软件生成器、视频编解码处理器、视频显示器和外部配置模块,其中:
7.系统启动时,摄像头将采集的视频数据传输至视频编解码处理器。
8.osd信息软件生成器根据外部配置模块配置的数据生成osd位图。
9.视频编解码处理器将osd位图进行统一编码后,叠加到视频流上,然后输出至视频显示器进行显示。
10.优选地,系统启动时,外部配置模块建立第一共享内存,视频编解码处理器建立第二共享内存。
11.优选地,osd信息软件生成器包括osd字符串生成单元、osd字符串宽高自适应计算单元、osd显示样式获取单元、osd位图绘制单元和osd位图传输单元。
12.优选地,osd信息软件生成器根据外部配置模块配置的数据生成osd位图,包括:
13.外部配置模块配置的数据包括保存在第一共享内存中的osd显示样式和数据配
置,其中数据配置包括云台值和通道名称;
14.系统启动时,osd字符串生成单元获取系统时间并生成osd时间戳字符串,osd字符串生成单元从第一共享内存中获取云台值和通道名称,并对应生成osd云台字符串和osd通道名称字符串,并将各字符串保存在第一共享内存中;
15.osd字符串宽高自适应计算单元从第一共享内存中获取各字符串并以像素为单位计算各字符串占用的宽高,并将各字符串占用的宽高保存在第一共享内存中;
16.osd显示样式获取单元从第一共享内存中获取osd显示样式,并发送至osd位图绘制单元;
17.osd位图绘制单元从第一内存中取出各字符串占用的宽高并生成对应宽高的透明图片,并根据osd显示样式将各字符串依次绘制在对应的透明图片上形成osd位图,且osd位图绘制单元将osd位图保存在第二共享内存中;
18.osd位图传输单元向视频编解码处理器发送osd位图已生成的消息,然后视频编解码处理器从第二共享内存中取出osd位图进行统一编码后,叠加在视频流上。
19.优选地,osd位图包括时间戳位图、通道名称位图和云台值位图。
20.优选地,osd显示样式包括osd显示颜色、osd显示字体类型、osd字体大小、时间戳osd日期显示格式和时间戳osd时间显示格式;
21.数据配置还包括:
22.是否显示通道名称osd,1为显示,0为不显示;
23.是否显示时间戳osd,1为显示,0为不显示;
24.是否显示云台值osd,1为显示,0为不显示。
25.优选地,osd信息软件生成器内部设有第一定时器。
26.优选地,osd字符串生成单元内部设有第二定时器。
27.优选地,视频监控系统的osd显示装置还包括视频封装器和取流接收器,视频封装器将经过视频编解码处理器已经编码压缩后的视频流封装成能对应的格式后发送至取流接收器,取流接收器将封装后的视频流输送至视频显示器进行显示。
28.与现有技术相比,本发明的有益效果为:
29.本前端相机监控视频osd显示系统通过osd信息软件生成器的osd字符串生成单元生成字符串,然后osd字符串宽高自适应计算单元计算各字符串的宽高,并根据osd显示样式生成一张一张较小的osd位图,将这些较小的位图统一编码,然后叠加到视频流上,实现节省内存、提高内存利用率、提高位图叠加osd的响应速度,这样既可满足现代安防领域osd展示的多样性和丰富性,也可满足嵌入式设备内存限制和节省成本的要求。
附图说明
30.图1为本发明前端相机监控视频osd显示系统的模块框图;
31.图2为本发明前端相机监控视频osd显示系统整体的架构图;
32.图3为本发明osd位图叠加在视频流上的示意图;
33.图4为发明生成osd位图的流程示意图。
具体实施方式
34.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
35.需要说明的是,当组件被称为与另一个组件“连接”时,它可以直接与另一个组件连接或者也可以存在居中的组件。除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本技术。
36.如图1-4所示,一种前端相机监控视频osd显示系统,包括摄像头、osd信息软件生成器、视频编解码处理器、视频显示器和外部配置模块,其中:
37.系统启动时,摄像头将采集的视频数据传输至视频编解码处理器;
38.osd信息软件生成器根据外部配置模块配置的数据生成osd位图;
39.视频编解码处理器将osd位图进行统一编码,叠加到视频流上,然后输出至视频显示器进行显示。
40.需要说明的是,本系统通过生成一张一张较小的位图,将这些较小的位图统一编码,然后叠加到视频流上,可使嵌入式设备节省内存,提高内存利用率,提高位图叠加osd的响应速度,这样既可满足现代安防领域osd展示的多样性和丰富性,也可满足嵌入式设备内存限制和节省成本的要求。
41.具体为,系统启动时,外部配置模块建立第一共享内存,视频编解码处理器建立第二共享内存。
42.osd信息软件生成器包括osd字符串生成单元、osd字符串宽高自适应计算单元、osd显示样式获取单元、osd位图绘制单元和osd位图传输单元。
43.首先需要说明的是,外部配置模块配置的数据包括保存在第一共享内存中的osd显示样式(osd显示样式是用户配置的,并保存在第一共享内存中)和数据配置,其中数据配置包括云台值(云台值是外部配置模块根据摄像头的转动自动生成的,并保存在第一共享内存中)和通道名称(通道名称是用户配置的,并保存在第一共享内存中)。
44.生成osd位图的过程如下(如图4所示):
45.系统启动时,osd字符串生成单元获取系统时间并生成osd时间戳字符串,osd字符串生成单元从第一共享内存中获取云台值和通道名称,并对应生成osd云台字符串和osd通道名称字符串,并将各字符串保存在第一共享内存中;
46.osd字符串宽高自适应计算单元从第一共享内存中获取各字符串并以像素为单位计算各字符串占用的宽高(osd字符串宽高自适应计算单元根据当前配置使用的字体类型,逐一计算各个字符串的占用宽高),并将各字符串占用的宽高保存在第一共享内存中;
47.osd显示样式获取单元从第一共享内存中获取osd显示样式,并发送至osd位图绘制单元;
48.osd位图绘制单元从第一内存中取出各字符串占用的宽高并生成对应宽高的透明图片(osd位图包括时间戳位图、通道名称位图和云台值位图,如逐一生成对应宽高的存储格式为argb1555的图片),并根据osd显示样式将各字符串依次绘制在对应的透明图片上形
成osd位图,且osd位图绘制单元将osd位图保存在第二共享内存中;
49.osd位图传输单元向视频编解码处理器发送osd位图已生成的消息,然后视频编解码处理器从第二共享内存中取出osd位图进行统一编码,叠加在视频流上。
50.osd信息软件生成器从外部配置模块的第一共享内存中配置的数据,使得osd信息软件生成器与外部配置模块建立数据通信;osd信息软件生成器将生成的osd位图保存在视频编解码处理器的第二共享内存中,使得osd信息软件生成器与视频编解码处理器建立数据通信。
51.在一个实施例中,osd显示样式包括用户配置的osd显示颜色(例如红色、黄色、白色、黑色、绿色)、osd显示字体类型(例如黑体、楷体、宋体)、osd字体大小(例如16*16、32*32、48*48、64*64)、时间戳osd日期显示格式(例如yyyy-mm-dd、dd-mm-yyyy)和时间戳osd时间显示格式(例如12小时制、24小时制);
52.数据配置还包括包括用户配置的:
53.是否显示通道名称osd,1为显示,0为不显示;
54.是否显示时间戳osd,1为显示,0为不显示;
55.是否显示云台值osd,1为显示,0为不显示。
56.在一个实施例中,osd信息软件生成器内部设有第一定时器。
57.需要说明的是,外部配置模块配置的数据除了云台值以外均为用户配置的,且均保存在第一共享内存中,osd信息软件生成器内部设有第一定时器,每隔30ms读取第一共享内存中的数据,如果用户配置的数据修改了,则第一共享内存中对应的数据也需要修改一致。
58.在一个实施例中,osd字符串生成单元内部设有第二定时器。
59.具体为,osd字符串生成单元通过第二定时器(使用1s的定时器)触发osd时间戳字符串的跳变,即第二定时器每隔1s获取系统时间,然后在osd字符串生成单元中生成osd时间戳字符串。
60.在一个实施例中,视频监控系统的osd显示装置还包括视频封装器和取流接收器,视频封装器将经过视频编解码处理器已经编码压缩后的视频流封装成能对应的格式后发送至取流接收器,取流接收器将封装后的视频流输送至视频显示器进行显示。
61.本系统的举例说明:比如生成一张1080p的图片,使用argb1555的格式存储时,占用内存大小为3.95m,当生成一张宽高为64*16的图片时,占用内存为2kb。生成的图片越小,叠加osd位图时视频编解码处理器的计算量也越小,可提高osd叠加响应速度。
62.本前端相机监控视频osd显示系统通过osd信息软件生成器的osd字符串生成单元生成字符串,然后osd字符串宽高自适应计算单元计算各字符串的宽高,并根据osd显示样式生成一张一张较小的osd位图,将这些较小的位图统一编码,然后叠加到视频流上,实现节省内存、提高内存利用率、提高位图叠加osd的响应速度,这样既可满足现代安防领域osd展示的多样性和丰富性,也可满足嵌入式设备内存限制和节省成本的要求。
63.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
64.以上所述实施例仅表达了本技术描述较为具体和详细的实施例,但并不能因此而
理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。