超高分辨率图像的显示方法与系统的制作方法

文档序号:2540947阅读:345来源:国知局
超高分辨率图像的显示方法与系统的制作方法
【专利摘要】本发明公开了一种超高分辨率图像的显示方法与系统,在接收到超高分辨率图像之后,并非直接进行CPU解码,而是利用Direct3d显示技术将图像数据存储成纹理数据,通过在图形绘制管线的光栅化阶段获取每个像素的颜色值,并依照编码算法指导完成整个纹理数据的解码过程。解码过程充分利用GPU浮点运算能力强的优势,大大提高了解码速率,能够较明显的提高显示帧率,使得超高分辨率图像在高清显示媒介下,极大的满足人们对海量图像数据查阅的迫切需要。
【专利说明】超高分辨率图像的显示方法与系统
【技术领域】
[0001]本发明涉及图像显示【技术领域】,特别是涉及一种超高分辨率图像的显示方法与系统。
【背景技术】
[0002]超高分辨率信号图像(26kx4k)由于受到显卡显示能力的限制,无法用一张图像显示。若采用传统的GDI方式进行绘图,针对如此超高分辨率的图像,在没有硬件加速的前提下,图像显示的帧率是非常低的,而且同步性很差。还有一些其他的方法,通过在数据发送端将图像分割,再将每个分割的子图像以对应数量的硬件通道来传输,该方法如果针对26kx4k的超高分辨率图像将增加很多个硬件通道,必将极大的增加硬件成本。因此,它仅仅比较适合较小分辨率图像的显示,如4kx2k。
[0003]综上,目前存在的高分辨率图像显示方法都存在很大的局限性。

【发明内容】

[0004]基于上述情况,本发明提出了一种超高分辨率图像的显示方法与系统,以显示超高分辨率图像,采用的方案如下。
[0005]一种超高分辨率图像的显示方法,包括步骤:
[0006]确定待显示图像的分辨率,以及每个显卡可以创建纹理的分辨率上限;
[0007]比较待显示图像的分辨率和每个显卡的所述分辨率上限,按照待显示图像全包含原则,确定所要创建的纹理资源个数;
[0008]接收待显示图像,将其分割并存储为多个纹理资源;
[0009]通过GPU编程在待显示图像渲染的光栅化阶段获取所述纹理资源的每个像素值,并根据待显示图像的编码方式,确定对应的解码方法,对获取到的像素级待显示图像进行解码;
[0010]根据每个GPU对应显示窗口的位置,确定GPU与所述纹理资源的对应关系,每个GPU完成对应纹理资源的绘制与显示。
[0011]一种超高分辨率图像的显示系统,包括:
[0012]分辨率确定单元,用于确定待显示图像的分辨率,以及每个显卡可以创建纹理的分辨率上限;
[0013]分割数计算单元,用于比较待显示图像的分辨率和每个显卡的所述分辨率上限,按照待显示图像全包含原则,确定所要创建的纹理资源个数;
[0014]纹理资源创建单元,用于接收待显示图像,将其分割并存储为多个纹理资源;
[0015]解码单元,用于通过GPU编程在待显示图像渲染的光栅化阶段获取所述纹理资源的每个像素值,并根据待显示图像的编码方式,确定对应的解码方法,对获取到的像素级待显示图像进行解码;
[0016]显示单元,用于根据每个GPU对应显示窗口的位置,确定GPU与所述纹理资源的对应关系,每个GPU完成对应纹理资源的绘制与显示。
[0017]本方案在接收到超高分辨率图像之后,并非直接进行CPU解码,而是利用Direct3d(以下简称D3d)显示技术将图像数据存储成纹理数据,通过在图形绘制管线的光栅化阶段获取每个像素的颜色值,并依照编码算法指导完成整个纹理数据的解码过程。解码过程充分利用GPU浮点运算能力强的优势,大大提高了解码速率,能够较明显的提高显示帧率,使得超高分辨率图像在高清显示媒介下,极大的满足人们对海量图像数据查阅的迫切需要。
【专利附图】

【附图说明】
[0018]图1为本发明超高分辨率图像的显示方法的流程示意图;
[0019]图2为本发明超高分辨率图像的显示系统的结构示意图。
【具体实施方式】
[0020]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明,并不限定本发明的保护范围。
[0021]本发明超高分辨率图像的显示方法的一个实施例,如图1所示,包括如下步骤:
[0022]步骤SlOl:在信号源服务器端,将超大分辨率图像发送到处理器接收客户端。
[0023]步骤S102:在图像显示客户端确定信号源的分辨率的大小,标记为MxN
[0024]步骤S103:获取显卡最大可以显示的单元分辨率值,标记为mxn。比较这两个分辨率的大小,按全包含原则计算出所要分割的子纹理数,记为C。所述全包含原则即为图像应全部显示。
[0025]步骤S104:将高分辨率信号源图像纹理资源分割为c个子纹理资源,并标记为I,2,3,,,C。
[0026]步骤S105:在图像显示客户端接收高分辨率图像数据,将其存储到内存中。根据步骤S104,将该内存缓冲区的图像数据创建为c个纹理资源,该纹理资源优选地为D3d纹理资源。
[0027]步骤S106:优选地利用HLSL高级着色语言,通过GPU编程在图像渲染的光栅化阶段获取纹理数据的每个像素值,并根据服务端对图像数据的编码方式,获取图像数据的解码方法,对获取到的像素级图像数据进行解码,从而完成每一帧图像数据的解码。
[0028]步骤S107:根据显示窗口在每个GPU内的位置,找到对应的子纹理索引,并计算出对应的图像纹理坐标,实现图像数据的正确位置显示。
[0029]步骤S108:等待所有GPU都完成了各个子图像的绘制之后,统一显示,从而完成了一副超高分变率图像的跨处理器显示。
[0030]假设服务器端s向客户端c发送图像数据,假如客户端c获取到的图像分辨率大小26kx4k,而显卡能创建的最大纹理资源分辨率为8kx4k,那么我们必须为该高分辨率图像创建4个8kx4k的子纹理资源,实现图像的第一步分割。
[0031]在客户端c接收到图像数据之后,先暂存到内存buffer中,通过GPU编程,从该buffer对应的纹理资源中获取的对应的资源数据,方法为:
【权利要求】
1.一种超高分辨率图像的显示方法,其特征在于,包括步骤: 确定待显示图像的分辨率,以及每个显卡可以创建纹理的分辨率上限; 比较待显示图像的分辨率和每个显卡的所述分辨率上限,按照待显示图像全包含原贝U,确定所要创建的纹理资源个数; 接收待显示图像,将其分割并存储为多个纹理资源; 通过GPU编程在待显示图像渲染的光栅化阶段获取所述纹理资源的每个像素值,并根据待显示图像的编码方式,确定对应的解码方法,对获取到的像素级待显示图像进行解码; 根据每个GPU对应显示窗口的位置,确定GPU与所述纹理资源的对应关系,每个GPU完成对应纹理资源的绘制与显示。
2.根据权利要求1所述的超高分辨率图像的显示方法,其特征在于, 采用HLSL高级着色语言获取所述像素值,所述纹理资源为D3d纹理资源。
3.根据权利要求1或2所述的超高分辨率图像的显示方法,其特征在于, 所有GPU完成对应纹理资源的绘制后,再统一显示到显示窗口上。
4.一种超高分辨率图像的显示系统,其特征在于,包括: 分辨率确定单元,用于确定待显示图像的分辨率,以及每个显卡可以创建纹理的分辨率上限; 分割数计算单元,用于比较待显示图像的分辨率和每个显卡的所述分辨率上限,按照待显示图像全包含原则,确定所要创建的纹理资源个数; 纹理资源创建单元,用于接收待显示图像,将其分割并存储为多个纹理资源; 解码单元,用于通过GPU编程在待显示图像渲染的光栅化阶段获取所述纹理资源的每个像素值,并根据待显示图像的编码方式,确定对应的解码方法,对获取到的像素级待显示图像进行解码; 显示单元,用于根据每个GPU对应显示窗口的位置,确定GPU与所述纹理资源的对应关系,每个GPU完成对应纹理资源的绘制与显示。
5.根据权利要求4所述的超高分辨率图像的显示系统,其特征在于, 所述解码单元采用HLSL高级着色语言获取所述像素值,所述纹理资源为D3d纹理资源。
6.根据权利要求4或5所述的超高分辨率图像的显示系统,其特征在于, 所述显示单元在所有GPU完成对应纹理资源的绘制后,再统一显示到显示窗口上。
【文档编号】G09G5/00GK103730097SQ201310740746
【公开日】2014年4月16日 申请日期:2013年12月27日 优先权日:2013年12月27日
【发明者】徐亮胜 申请人:广东威创视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1