本发明涉及数字视频图像处理,更具体地说,涉及一种基于fpga的屏幕菜单绘制方法及系统。
背景技术:
1、随着视频技术的发展,显示器和投影仪等视频终端的功能越来越多,屏幕菜单(osd)作为用户控制屏幕功能和参数的主要渠道,在大多数显示器中都有配备。其中,较为成熟的方案是采用单片机+字符叠加芯片实现较为低成本的应用,但功能较为固定,灵活性差。而在较高档的应用中,一般采用功能强大的专用ic方案,或者采用带有软核或硬核处理器的fpga方案,成本高昂;需要一种成本低且功能丰富、应用灵活的基于fpga的屏幕菜单绘制方法及系统。
技术实现思路
1、本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于fpga的屏幕菜单绘制方法,还提供了一种基于fpga的屏幕菜单绘制系统。
2、本发明解决其技术问题所采用的技术方案是:
3、构造一种基于fpga的屏幕菜单绘制方法,其中,包括以下步骤:
4、接收输入的lvds信号,并将lvds信号解码为像素的rgb值以及视频同步信号;
5、根据显示缓存模块中存储的素材库地址,在素材库中查找当前扫描位置应当输出的像素点值,按一定比例叠加在输入的rgb信号上,得到叠加了菜单界面的rgb信号;
6、将叠加了菜单界面的rgb信号和视频同步信号转化为lvds视频信号。
7、本发明所述的基于fpga的屏幕菜单绘制方法,其中,所述方法还包括:通过按键输入对菜单界面进行设定或修改:
8、接收输入的按键信号,并依据按键信号对应设定或修改选项存储器中的选项数值;
9、依据设定或修改的选项名称和数值,将相应字符或图片的素材库地址填入显示缓存模块中。
10、本发明所述的基于fpga的屏幕菜单绘制方法,其中,像素点值叠加在rgb信号上采用方法:
11、通过像素时钟和行场同步信号计算出当前扫描的像素在菜单中的位置;
12、利用当前扫描像素点的位置进行双重存储器寻址,得出单比特灰度值和调色信息;
13、根据调色信息将单比特灰度值映射为菜单画面的rgb数值;
14、将菜单画面的rgb数值与原有输入画面的rgb数值按比例叠加,实现透明效果。
15、本发明所述的基于fpga的屏幕菜单绘制方法,其中,所述通过像素时钟和行场同步信号计算出当前扫描的像素在菜单中的位置采用方法:
16、通过对像素时钟进行计数,得到像素点的水平位置;
17、通过对行同步信号hs进行计数,得到像素点的垂直位置;
18、将得到的像素点位置减去菜单的原点坐标,得到像素点相对于菜单的位置。
19、本发明所述的基于fpga的屏幕菜单绘制方法,其中,所述利用当前扫描像素点的位置进行双重存储器寻址采用方法:
20、根据像素点相对于菜单的位置计算出菜单分区的序号;
21、将菜单分区的序号作为地址查找显示缓存,读出该分区的所放置的素材编号;
22、将素材编号和像素点位置作为地址查找素材库,取出图片素材的两行像素数据;
23、根据像素点位置取出两行像素数据中的当前扫描的两个像素点的单比特值。
24、本发明所述的基于fpga的屏幕菜单绘制方法,其中,所述根据调色信息将单比特灰度值映射为菜单画面的rgb数值采用方法:
25、根据调色信息将菜单像素的单比特值映射为8位rgb数值进行输出。
26、本发明所述的基于fpga的屏幕菜单绘制方法,其中,所述将菜单画面的rgb数值与原有输入画面的rgb数值按比例叠加,实现透明效果采用方法:
27、由菜单画面的rgb值和输入视频画面的rgb值进行加权求和再输出,实现菜单透明的效果。
28、一种基于fpga的屏幕菜单绘制系统,其中,所述系统包括lvds信号解码模块、菜单叠加模块、显示缓存模块、素材库和lvds视频信号转换模块;
29、所述素材库内存储有字体和/或图片的每个像素点的值;
30、所述lvds信号解码模块,用于接收输入的lvds信号,并将lvds信号解码为像素的rgb值以及视频同步信号;
31、所述显示缓存模块,用于存储素材库地址;
32、所述菜单叠加模块,用于根据显示缓存模块中存储的素材库地址,在素材库中查找当前扫描位置应当输出的像素点值,按一定比例叠加在输入的rgb信号上,得到叠加了菜单界面的rgb信号;
33、所述lvds视频信号转换模块,用于将叠加了菜单界面的rgb信号和视频同步信号转化为lvds视频信号。
34、本发明所述的基于fpga的屏幕菜单绘制系统,其中,所述系统还包括按键处理模块、选项存储器和页面绘制模块;
35、所述按键处理模块,用于接收输入的按键信号,并依据按键信号对应设定或修改选项存储器中的选项数值;
36、所述页面绘制模块,用于依据设定或修改的选项名称和数值,将相应字符或图片的素材库地址填入显示缓存模块中。
37、本发明所述的基于fpga的屏幕菜单绘制系统,其中,将像素点值叠加在rgb信号上采用方法:
38、通过像素时钟和行场同步信号计算出当前扫描的像素在菜单中的位置;
39、利用当前扫描像素点的位置进行双重存储器寻址,得出单比特灰度值和调色信息;
40、根据调色信息将单比特灰度值映射为菜单画面的rgb数值;
41、将菜单画面的rgb数值与原有输入画面的rgb数值按比例叠加,实现透明效果;
42、通过像素时钟和行场同步信号计算出当前扫描的像素在菜单中的位置采用方法:
43、通过对像素时钟进行计数,得到像素点的水平位置;
44、通过对行同步信号hs进行计数,得到像素点的垂直位置;
45、将得到的像素点位置减去菜单的原点坐标,得到像素点相对于菜单的位置;
46、利用当前扫描像素点的位置进行双重存储器寻址采用方法:
47、根据像素点相对于菜单的位置计算出菜单分区的序号;
48、将菜单分区的序号作为地址查找显示缓存,读出该分区的所放置的素材编号;
49、将素材编号和像素点位置作为地址查找素材库,取出图片素材的两行像素数据;
50、根据像素点位置取出两行像素数据中的当前扫描的两个像素点的单比特值。
51、本发明的有益效果在于:本设计基于fpga平台,可在输入的视频信号上叠加菜单界面,并配合按键实现人机交互,同时可通过按键更改菜单位置、旋转方向、透明度等设置,可满足大部分低端显示器的osd功能需求,功能丰富、应用灵活且成本较低。
1.一种基于fpga的屏幕菜单绘制方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于fpga的屏幕菜单绘制方法,其特征在于,所述方法还包括:通过按键输入对菜单界面进行设定或修改:
3.根据权利要求1或2所述的基于fpga的屏幕菜单绘制方法,其特征在于,像素点值叠加在rgb信号上采用方法:
4.根据权利要求3所述的基于fpga的屏幕菜单绘制方法,其特征在于,所述通过像素时钟和行场同步信号计算出当前扫描的像素在菜单中的位置采用方法:
5.根据权利要求3所述的基于fpga的屏幕菜单绘制方法,其特征在于,所述利用当前扫描像素点的位置进行双重存储器寻址采用方法:
6.根据权利要求3所述的基于fpga的屏幕菜单绘制方法,其特征在于,所述根据调色信息将单比特灰度值映射为菜单画面的rgb数值采用方法:
7.根据权利要求3所述的基于fpga的屏幕菜单绘制方法,其特征在于,所述将菜单画面的rgb数值与原有输入画面的rgb数值按比例叠加,实现透明效果采用方法:
8.一种基于fpga的屏幕菜单绘制系统,其特征在于,所述系统包括lvds信号解码模块、菜单叠加模块、显示缓存模块、素材库和lvds视频信号转换模块;
9.根据权利要求8所述的基于fpga的屏幕菜单绘制系统,其特征在于,所述系统还包括按键处理模块、选项存储器和页面绘制模块;
10.根据权利要求8或9所述的基于fpga的屏幕菜单绘制系统,其特征在于,将像素点值叠加在rgb信号上采用方法: