论文部分内容阅读
本文主要介绍基于Actel FPGA实现的高清OSD方案。OSD(On Screen Display)即在屏显示系统,通过在信号流上加入特定内容,最终在显示终端上获得文字信息或图形界面,让使用者得到更多讯息,实现便捷的人机交互。
安防行业的摄像头都可以由用户控制摄像头的方位、角度、摄像机输出的视频模式等功能。而用户需要获取当前摄像头的设置信息以便进行控制操作,OSD的作用就通过显示终端给用户反馈这些信息。如今网络摄像机或者数字摄像机输出的视频已经达到比较高的清晰度,普通的OSDE,经无法满足高清视频的要求,因此高清OSD便应运而生。高清OSD的应用如图1所示。
1.概述
(1)方案比较
目前市场上能够实现数字OSD叠加功能的Ic可以分成两类,一类是高集成度的通用视频处理器,例如达芬奇系列的DSP芯片就具有OSD叠加功能。由于OSD只是这类微处理器的附加功能,其主要作用还是应用于偏向视频处理方向,所以实现的OSD功能单一,无法实现全屏叠加、字符效果调整等要求,同时过于繁杂的OSD控制会影响视频处理上的运算速度。另一类为专用集成电路,但目前市场上只有处理XGA以下小分辨率视频的专用Ic,还没有处理高清数字视频的OSD专用IC。
采用Actel FPG麒现的高清OSD具有以下优势:
·Actel FPGA的高性能内核能够实现对1920×1080以下分辨率视频的支持;
·实现方式灵活多样,接口可以定制为BT.601或BT.1120;
·Actel FPGA的固件错误免疫使得系统可以工作于较恶劣的环境中,可靠性高。
(2)功能概述
在视频监控领域,随着网络技术的发展,操作便捷、清晰度高的网络摄像机已经被广泛地应用在各种场合。网络摄像机对OSD提出了更高的要求,首先是网络摄像机机芯输出的是数字分量的视频信号,这就要求OSD能在数字域中进行字符叠加,并且不改变视频格式;其次,视频分辨率高,即像素时钟频率高,要求OSD处理速度要足够快,视频输出不能有延时,同时也要求叠加的字符达到美观细腻的效果。
OSD系统主要完成在视频信号中插入字符或图片信息。本OSD系统嵌入在高清网络摄像头的机芯与系统控制板之间,完成将字符信息插入到视频信号中,并且不改变输入与输出视频的格式,在接收端无需额外硬件即可在任何显示终端上实现字符信息显示功能。本文实现的高清OSD主要具有以下功能:
·支持GB2312字符集和AsCI字符集。共包含汉字6763个;
·支持目文平假名与片假名,支持自定义的LOGO显示;
·显示字符为白色,带描边功能,在任何视频背景下都能清晰显示字符:
·所有字符均通过内码方式索引,操作快速便捷;
·预留SPI接口与MCU进行通信;
·支持全屏幕动态叠加;
·不改变视频格式,视频输出无延时;
·支持字符闪烁功能,支持多点闪烁;
·支持1920×1080、1280×960、1280×720分辩率的ITU-RBT,601格式视频。
(3)系统框图
OSD系统主要完成在视频信号中插入字符或图片信息。支持视频格式为为ITU-R BT.601 YUV422格式的视频流。OSD的系统框图如图2所示。
2.备功能模块介绍
OSD应用系统主要由FPGA,SPI Flash及SRAM组成,MCU只是用于控制OSD系统进行字符叠加的外部电路。OsD系统与外部电路的接口有两个接口,一个是视频输入/输出接口,这部份接口对于ITu—RBT.601视频流来说主要包含行场同步信号(HsYNc/VSYNc)、像素时钟信号(PCLK)、亮度信号(Y)及色差信号(c)。另一个接口为SPI接口,用于与外部MCU进行通信,MCU作为主机控制OSD系统实现字符叠加功能。
(1)SPI Flash
SPI Flash主要用于存储字库。OSD系统支持GB2312字符集及ASCII字符集。其中,GB2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个字符。GB2312字库,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆99,75%的使用频率。无论是是GB23 12字符集中的字符或是ASCII字符集中的字符,OSD都是按照字符的机内码方式进行索引的。实现机内码方式进行字库的调用对于MCU编程及程序维护来说是非常方便的,用户无需知道相应字符在Flash中的地址信息,当然必要时也可以引用Flash的绝对地址。
(2)SRAM
SRAM在OSD系统中的作用是存储需要显示的字符信息。在进行字符叠加时不需要缓存视频数据,因此对于OSD来说输出视频流与输入视频流没有延时,同时也大大降低了SRAM的存储空间要求。
(3)MCU接口
OSD系统与外部MCU的通信接口采用SPI接口方式。OSD模块与外部MCU的时序比较简单,SPI通信方式采用模式0方式,与MCU的接口时序如图3所示。
外部MCU与OSD模块通信是通过ss、SCK、MOSI以及MISO进行的,当片选信号有效时FPGA在每个SCK的上升沿对MCu输出的MOSI信号进行采样。MISO是OSD输出数据线。这个信号主要用于针对有的摄像头机芯可以输出多种模式视频流而预留的,用于供MCU查询当前机芯的视频模式。
外部Mcu对OSD模块的操作通过发送命令的方式执行。向OSD模块提供简单指令就可以执行包括显示、清屏、闪烁在内的所有操作,用户无需了解底层结构和字库的组成情况就能熟练地进行编程操作,方便MCu程序的开发。
(4)视频接口
视频接口指的是输入到OSD的视频格式,而不包含水量时序信息。因为时序细节可以通过调节OSD内部寄存器来实现。本文实现的OSD系统所支持的视频格式为IU-R BT.601YUV422格式。不同的数字摄像头机芯可能输出的行场同步与Y/c信号在时序上有差别,因此在OSD内部有相应寄存器用于调整字符显示区域。视频接口时序如图4所示。
3.市场应用
OSD主要用于在视频流中加入字符信息,并提供接口给外部MCU操作,达到通过简单设备就能进行人机交互的目的。高清OSD的应用实例如图5所示。随着网络摄像头的发展,清晰度越来越高的摄像机正在应用于越来越多场合,对OSD的要求也越来越高。Actel FPGA单芯片、上电即行以及固件错误免疫的特性可以为OSD高清视频字符叠加提供最佳的解决方案。
4.小结
本文主要介绍了基q:hctel FPGA的高清OSD系统的功能和应用。敬请关注周立功公司的网站www.zlgmcu.com以获得更多的信息。我们有着一个接近30人的FPGA团队提供强有力的售后服务和技术支持,解决用户在产品使用和研发过程中遇到的困难。若有更多的需求可以与我们联系,我们将会竭诚为您服务,并请关注下期的FPGA专题技术讲座。
安防行业的摄像头都可以由用户控制摄像头的方位、角度、摄像机输出的视频模式等功能。而用户需要获取当前摄像头的设置信息以便进行控制操作,OSD的作用就通过显示终端给用户反馈这些信息。如今网络摄像机或者数字摄像机输出的视频已经达到比较高的清晰度,普通的OSDE,经无法满足高清视频的要求,因此高清OSD便应运而生。高清OSD的应用如图1所示。
1.概述
(1)方案比较
目前市场上能够实现数字OSD叠加功能的Ic可以分成两类,一类是高集成度的通用视频处理器,例如达芬奇系列的DSP芯片就具有OSD叠加功能。由于OSD只是这类微处理器的附加功能,其主要作用还是应用于偏向视频处理方向,所以实现的OSD功能单一,无法实现全屏叠加、字符效果调整等要求,同时过于繁杂的OSD控制会影响视频处理上的运算速度。另一类为专用集成电路,但目前市场上只有处理XGA以下小分辨率视频的专用Ic,还没有处理高清数字视频的OSD专用IC。
采用Actel FPG麒现的高清OSD具有以下优势:
·Actel FPGA的高性能内核能够实现对1920×1080以下分辨率视频的支持;
·实现方式灵活多样,接口可以定制为BT.601或BT.1120;
·Actel FPGA的固件错误免疫使得系统可以工作于较恶劣的环境中,可靠性高。
(2)功能概述
在视频监控领域,随着网络技术的发展,操作便捷、清晰度高的网络摄像机已经被广泛地应用在各种场合。网络摄像机对OSD提出了更高的要求,首先是网络摄像机机芯输出的是数字分量的视频信号,这就要求OSD能在数字域中进行字符叠加,并且不改变视频格式;其次,视频分辨率高,即像素时钟频率高,要求OSD处理速度要足够快,视频输出不能有延时,同时也要求叠加的字符达到美观细腻的效果。
OSD系统主要完成在视频信号中插入字符或图片信息。本OSD系统嵌入在高清网络摄像头的机芯与系统控制板之间,完成将字符信息插入到视频信号中,并且不改变输入与输出视频的格式,在接收端无需额外硬件即可在任何显示终端上实现字符信息显示功能。本文实现的高清OSD主要具有以下功能:
·支持GB2312字符集和AsCI字符集。共包含汉字6763个;
·支持目文平假名与片假名,支持自定义的LOGO显示;
·显示字符为白色,带描边功能,在任何视频背景下都能清晰显示字符:
·所有字符均通过内码方式索引,操作快速便捷;
·预留SPI接口与MCU进行通信;
·支持全屏幕动态叠加;
·不改变视频格式,视频输出无延时;
·支持字符闪烁功能,支持多点闪烁;
·支持1920×1080、1280×960、1280×720分辩率的ITU-RBT,601格式视频。
(3)系统框图
OSD系统主要完成在视频信号中插入字符或图片信息。支持视频格式为为ITU-R BT.601 YUV422格式的视频流。OSD的系统框图如图2所示。
2.备功能模块介绍
OSD应用系统主要由FPGA,SPI Flash及SRAM组成,MCU只是用于控制OSD系统进行字符叠加的外部电路。OsD系统与外部电路的接口有两个接口,一个是视频输入/输出接口,这部份接口对于ITu—RBT.601视频流来说主要包含行场同步信号(HsYNc/VSYNc)、像素时钟信号(PCLK)、亮度信号(Y)及色差信号(c)。另一个接口为SPI接口,用于与外部MCU进行通信,MCU作为主机控制OSD系统实现字符叠加功能。
(1)SPI Flash
SPI Flash主要用于存储字库。OSD系统支持GB2312字符集及ASCII字符集。其中,GB2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个字符。GB2312字库,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆99,75%的使用频率。无论是是GB23 12字符集中的字符或是ASCII字符集中的字符,OSD都是按照字符的机内码方式进行索引的。实现机内码方式进行字库的调用对于MCU编程及程序维护来说是非常方便的,用户无需知道相应字符在Flash中的地址信息,当然必要时也可以引用Flash的绝对地址。
(2)SRAM
SRAM在OSD系统中的作用是存储需要显示的字符信息。在进行字符叠加时不需要缓存视频数据,因此对于OSD来说输出视频流与输入视频流没有延时,同时也大大降低了SRAM的存储空间要求。
(3)MCU接口
OSD系统与外部MCU的通信接口采用SPI接口方式。OSD模块与外部MCU的时序比较简单,SPI通信方式采用模式0方式,与MCU的接口时序如图3所示。
外部MCU与OSD模块通信是通过ss、SCK、MOSI以及MISO进行的,当片选信号有效时FPGA在每个SCK的上升沿对MCu输出的MOSI信号进行采样。MISO是OSD输出数据线。这个信号主要用于针对有的摄像头机芯可以输出多种模式视频流而预留的,用于供MCU查询当前机芯的视频模式。
外部Mcu对OSD模块的操作通过发送命令的方式执行。向OSD模块提供简单指令就可以执行包括显示、清屏、闪烁在内的所有操作,用户无需了解底层结构和字库的组成情况就能熟练地进行编程操作,方便MCu程序的开发。
(4)视频接口
视频接口指的是输入到OSD的视频格式,而不包含水量时序信息。因为时序细节可以通过调节OSD内部寄存器来实现。本文实现的OSD系统所支持的视频格式为IU-R BT.601YUV422格式。不同的数字摄像头机芯可能输出的行场同步与Y/c信号在时序上有差别,因此在OSD内部有相应寄存器用于调整字符显示区域。视频接口时序如图4所示。
3.市场应用
OSD主要用于在视频流中加入字符信息,并提供接口给外部MCU操作,达到通过简单设备就能进行人机交互的目的。高清OSD的应用实例如图5所示。随着网络摄像头的发展,清晰度越来越高的摄像机正在应用于越来越多场合,对OSD的要求也越来越高。Actel FPGA单芯片、上电即行以及固件错误免疫的特性可以为OSD高清视频字符叠加提供最佳的解决方案。
4.小结
本文主要介绍了基q:hctel FPGA的高清OSD系统的功能和应用。敬请关注周立功公司的网站www.zlgmcu.com以获得更多的信息。我们有着一个接近30人的FPGA团队提供强有力的售后服务和技术支持,解决用户在产品使用和研发过程中遇到的困难。若有更多的需求可以与我们联系,我们将会竭诚为您服务,并请关注下期的FPGA专题技术讲座。