一种基于亮度编码的帧缓存有损压缩方法及装置制造方法及图纸

技术编号:11731541 阅读:117 留言:0更新日期:2015-07-15 03:42
本发明专利技术公开了一种基于亮度编码的帧缓存有损压缩方法及装置,将所述图形设备输出的RGB图像进行分块,将每一块RGB格式图像转化为YUV格式图像,对所述YUV格式图像进行基于亮度的量化压缩编码,将所述量化压缩编码后的分块图像合并拼接为压缩图像,将所述压缩图像存储到所述帧缓存中;从所述帧缓存中读取压缩图像,对所述压缩图像进行插值并恢复成YUV格式图像,将所述YUV格式图像转换为RGB格式图像,将RGB格式图像合并拼接为原始RGB图像,将所述原始RGB图像通过总线传给所述显示模块。本发明专利技术中基于亮度编码的帧缓存有损压缩方法及装置,以实现低功耗的高压缩率帧缓存压缩,以减小压缩带来的图像失真。

【技术实现步骤摘要】

本专利技术涉及图形处理中帧缓存数据压缩
,尤其涉及一种基于亮度编码的帧缓存有损压缩方法及装置
技术介绍
GPU(Graphic Processing Unit,图形处理器)是相对于CPU(Central Processing Unit,中央处理器)的一个概念,是一个专门的图形设备。图形设备输出图像的基本构成单位是像素,输出的数据包括每个像素的RGB值。RGB值是指通过红(R)、绿(G)、蓝(B)三个颜色通道的变化相互叠加来表示颜色的一种方法。图形设备输出的图像需要缓存在内存中,这段内存空间称为帧缓存,然后由专门的显示模块将颜色信息从帧缓存中读出,再转化为显示器能够接受的时序信号。为了保证图形设备的绘制过程不会影响显示器的刷新过程,一般会采用多个帧缓存技术,将图形设备的绘制结果放入一个帧缓存A中,同时显示模块从另一个帧缓存B中读取数据并显示;当图形设备完成A中的绘制任务时,再将帧缓存A和帧缓存B进行互换。随着显示设备的分辨率日益提高和刷新率的增加,缓存一帧图像所需的内存空间也就变得越来越大,图形设备和帧缓存、显示模块和帧缓存之间的带宽需求也日渐增大。如图1所示,在包含嵌入式图形设备的SoC(System-on-a-Chip,系统级芯片)架构中,SoC芯片里集成了CPU、图形设备以及显示模块,这些模块通过总线(BUS)连接起来,由于帧缓存需要较大的存储空间,所以设置在SoC芯片外>部的独立存储芯片中。如图2所示,在上述架构下,图中箭头所示的数据通路(图形设备向帧缓存中写入运算结果、显示模块从帧缓存中读出运算结果)占用了大量的SoC片外访问存储带宽,在图2中虚线框的部分位于SoC芯片外,故其访存带宽十分宝贵,该数据通路容易成为系统的性能瓶颈;而且大量的帧缓存刷新导致了大量的访存操作,这也带来了很大的功耗,严重影响了SoC芯片的功耗性能,故而对于帧缓存的数据进行压缩成为了必然的选择。如图3所示,在采用帧缓存压缩技术之后读写帧缓存的过程中,图形设备将运算结果通过片内互联总线传给压缩模块,压缩模块将数据进行压缩后,写入SoC芯片外的帧缓存。然而,对帧缓存的压缩需要在压缩比、图像效果和硬件开销之间做出权衡。现有技术一是美国申请公布专利US 6658146 B1,其提出一种叫做S3TC的方法,该方法计算像素块中的每个像素在RGB颜色空间中组成的“刚体”的转动主轴,再通过各像素在主轴上的投影来对每个像素的颜色进行量化。现有技术一的技术方案提供了使得各像素的量化结果和原像素的均方根误差最小。但是,此方案中需要计算各像素在RGB颜色空间内的转动主轴,这一运算开销很大,难以在硬件上实时地实现该算法。现有技术二是美国申请公布专利申请公布号US 20130314429 A1,其提出一种帧缓存无损压缩方法,对原始的RGB图像分块处理,依据压缩率的不同来决定分块的大小,再将帧缓存数据进行压缩。现有技术二可以得到一定的反走样效果,但是此方案需要较复杂的流控制来实现自适应地调整压缩率,且使得硬件实现该算法的开销很大,导致压缩和解压模块引入较大的功耗。
技术实现思路
为了解决
技术介绍
中存在的技术问题,本专利技术提出了一种基于亮度编码的帧缓存有损压缩方法及装置,以实现低功耗的高压缩率帧缓存压缩,以减小压缩带来的图像失真。本专利技术提出的一种基于亮度编码的帧缓存有损压缩装置,包括:图形设备、编码模块、解码模块、帧缓存、显示模块;其中,所述图形设备,用于输出RGB图像;所述编码模块,通过总线与所述图形设备通信,用于将所述图形设备输出的RGB图像进行分块,将每一块RGB格式图像转化为YUV格式图像,对所述YUV格式图像进行基于亮度的压缩编码,将所述压缩编码后的分块图像合并拼接为压缩图像,将所述压缩图像存储到所述帧缓存中;所述解码模块,与所述编码模块连接并通过总线与所述图形设备通信,用于从所述帧缓存中读取压缩图像,对所述压缩图像进行插值并恢复成YUV格式图像,将所述YUV格式图像转换为RGB格式图像,将RGB格式图像合并拼接为原始RGB图像,将所述原始RGB图像通过总线传给所述显示模块。优选地,所述编码模块具体包括:分块子模块,用于将所述图形设备输出的RGB图像进行分块;转换子模块,与所述分块子模块连接,用于将每一块RGB格式图像转化为YUV格式图像;量化子模块,与所述转换子模块连接,用于对所述YUV格式图像进行基于亮度的压缩编码;第一合并子模块,与所述量化子模块连接,用于将所述压缩编码后的分块图像合并拼接为压缩图像,存储子模块,与所述第一合并子模块,用于将压缩图像存储到所述帧缓存中。优选地,所述量化子模块对YUV图像块进行基于亮度的压缩编码时,具体为:所述量化子模块对一个4×4的YUV图像块进行压缩编码后的数据大小为64bit,前32bit保存两个基色值,所述两个基色值都用YUV格式表示并记作y0u0v0和y1u1v1,后32bit保存16个像素对应的四色查找表的索引值Indexi,i=0、1…、15;从16个像素中找出Y分量的最大值y0和最小值y1,其对应的像素点连线记作L0;对所有16个像素点的YUV求平均值,将直线L0平移至过平均值点,得到的直线记作L1;将Y轴上从y0到y1的区间定义为区间[y1,y0],将区间[y1,y0]通过直线L1分别映射到U轴和V轴上得到区间[u1,u0]和[v1,v0],其端点值为y0,y1,u0,u1,v0,v1;再将区间[y1,y0]均分成4份分别编码为00,01,10,11;根据每个像素在Y轴上的投影落在的区间来确定该像素的索引值Indexi。优选地,所述根据每个像素在Y轴上的投影落在的区间来确定该像素的索引值Indexi,具体为:像素i的Y分量yi满足时,则像素i对应的Indexi为00;像素i的Y分量yi满足时,则像素i对应的Indexi为01;像素i的Y分量yi满足时,则像素i对应的Indexi为10;像素i的Y分量yi满足时,则像素i对应的Indexi为11。优选地,所述解码模块具体包括:读取子模块,用于从所述帧缓存中读取压缩图像;插值子模块,与所述读取子模块连接,用于对所述压缩图像进行插值并恢复成YUV格式图像;转换子模块,与插值子模块连接,用于将所述YUV格式图像转换为RGB格式图像;第二合并子模块,与转换子模块连接,用于将所述本文档来自技高网...
一种基于亮度编码的帧缓存有损压缩方法及装置

【技术保护点】
一种基于亮度编码的帧缓存有损压缩装置,其特征在于,包括:图形设备、编码模块、解码模块、帧缓存、显示模块;其中,所述图形设备,用于输出RGB图像;所述编码模块,通过总线与所述图形设备通信,用于将所述图形设备输出的RGB图像进行分块,将每一块RGB格式图像转化为YUV格式图像,对所述YUV格式图像进行基于亮度的量化压缩编码,将所述量化压缩编码后的分块图像合并拼接为压缩图像,将所述压缩图像存储到所述帧缓存中;所述解码模块,与所述编码模块连接并通过总线与所述图形设备通信,用于从所述帧缓存中读取压缩图像,对所述压缩图像进行插值并恢复成YUV格式图像,将所述YUV格式图像转换为RGB格式图像,将RGB格式图像合并拼接为原始RGB图像,将所述原始RGB图像通过总线传给所述显示模块。

【技术特征摘要】
1.一种基于亮度编码的帧缓存有损压缩装置,其特征在于,包括:图形
设备、编码模块、解码模块、帧缓存、显示模块;其中,
所述图形设备,用于输出RGB图像;
所述编码模块,通过总线与所述图形设备通信,用于将所述图形设备输出
的RGB图像进行分块,将每一块RGB格式图像转化为YUV格式图像,对所述YUV
格式图像进行基于亮度的量化压缩编码,将所述量化压缩编码后的分块图像合
并拼接为压缩图像,将所述压缩图像存储到所述帧缓存中;
所述解码模块,与所述编码模块连接并通过总线与所述图形设备通信,用
于从所述帧缓存中读取压缩图像,对所述压缩图像进行插值并恢复成YUV格式
图像,将所述YUV格式图像转换为RGB格式图像,将RGB格式图像合并拼接为
原始RGB图像,将所述原始RGB图像通过总线传给所述显示模块。
2.根据权利要求1所述的基于亮度编码的帧缓存有损压缩装置,其特征
在于,所述编码模块具体包括:
分块子模块,用于将所述图形设备输出的RGB图像进行分块;
转换子模块,与所述分块子模块连接,用于将每一块RGB格式图像转化为
YUV格式图像;
量化子模块,与所述转换子模块连接,用于对所述YUV格式图像进行基于
亮度的量化压缩编码;
第一合并子模块,与所述量化子模块连接,用于将所述量化压缩编码后的
分块图像合并拼接为压缩图像,
存储子模块,与所述第一合并子模块,用于将压缩图像存储到所述帧缓存
中。
3.根据权利要求2所述的基于亮度编码的帧缓存有损压缩装置,其特征

\t在于,所述量化子模块对YUV图像块进行基于亮度的压缩编码时,具体为:
所述量化子模块对一个4×4的YUV图像块进行压缩编码后的数据大小为
64bit,前32bit保存两个基色值,所述两个基色值都用YUV格式表示并记作
y0u0v0和y1u1v1,后32bit保存16个像素对应的四色查找表的索引值Indexi,
i=0、1…、15;
从16个像素中找出Y分量的最大值y0和最小值y1,其对应的像素点连线
记作L0;对所有16个像素点的YUV求平均值,将直线L0平移至过平均值点,
得到的直线记作L1;
将Y轴上从y0到y1的区间定义为区间[y1,y0],将区间[y1,y0]通过直线
L1分别映射到U轴和V轴上得到区间[u1,u0]和[v1,v0],其端点值为
y0,y1,u0,u1,v0,v1;再将区间[y1,y0]均分成4份分别编码为00,01,10,11;
根据每个像素在Y轴上的投影落在的区间来确定该像素的索引值Indexi。
4.根据权利要求3所述的基于亮度编码的帧缓存有损压缩装置,其特征
在于,所述根据每个像素在Y轴上的投影落在的区间来确定该像素的索引值
Indexi,具体为:
像素i的Y分量yi满足时,则像素i对应的Indexi为
00;像素i的Y分量yi满足时,则像素i对应的
Indexi为01;像...

【专利技术属性】
技术研发人员:项天林啸金西
申请(专利权)人:中国科学技术大学先进技术研究院
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1