太阳城集团

  • / 13
  • 下载费用:30 金币  

一种虚拟桌面压缩的方法.pdf

关 键 词:
一种 虚拟 桌面 压缩 方法
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
摘要
申请专利号:

太阳城集团CN201510618359.X

申请日:

2015.09.22

公开号:

太阳城集团CN105224390A

公开日:

2016.01.06

当前法律状态:

实审

有效性:

审中

法律详情: 实质审查的生效IPC(主分类):G06F 9/455申请日:20150922|||公开
IPC分类号: G06F9/455; H04N19/103(2014.01)I; H04N19/105(2014.01)I 主分类号: G06F9/455
申请人: 宁夏大学
发明人: 张鹏
地址: 750021 宁夏回族自治区银川市西夏区贺兰山西路489号
优先权:
专利代理机构: 北京品源专利代理有限公司 11332 代理人: 孟金喆;胡彬
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201510618359.X

授权太阳城集团号:

|||

法律状态太阳城集团日:

太阳城集团2016.02.03|||2016.01.06

法律状态类型:

实质审查的生效|||公开

摘要

本发明公开一种虚拟桌面压缩的方法,包括如下步骤:S101、在虚拟桌面系统的虚拟显卡中构建指令缓存装置,保存渲染指令。S102、从虚拟显卡中定时获取桌面图像和渲染指令。S103、采用图像压缩器对图像进行压缩。S104、压缩后的图像通过网络发送给客户端。S105、客户端接收压缩图像。S106、客户端对所述压缩图像进行解码。S107、客户端显示解码后的图像。本发明利用在虚拟桌面服务器端建立的与桌面图像同步的渲染指令缓存区,并利用指令辅助图像压缩,降低了图像压缩的复杂度,提高了图像压缩质量。同时,由于图像压缩采用的标准规范,对于客户端性能和成本没有影响,提高了虚拟桌面的多媒体应用能力。

权利要求书

权利要求书
1.  一种虚拟桌面压缩的方法,其特征在于,包括如下步骤:
S101、在虚拟桌面系统的虚拟显卡中构建指令缓存装置,保存渲染指令;
S102、从虚拟显卡中定时获取桌面图像和渲染指令;
S103、采用图像压缩器对图像进行压缩,具体包括:
S1031、对于帧内预测图像:一、根据渲染指令中的点/线/填充指令判断宏块的分割;二、根据渲染指令中的图像填充指令,判断宏块的分割;三、根据渲染指令中的文本指令,判断宏块的分割,以及环路滤波器的系数;
S1032、对于帧间预测图像:一、如果虚拟桌面中有区域未被渲染指令覆盖或部分覆盖,则该区域的宏块模式可以直接选择跳过模式;二、根据渲染指令中的点/线/填充指令,判断宏块运动估计的方向和范围;三、根据渲染指令中的文本指令,判断宏块的分割方式和运动估计方向及范围;四、根据渲染指令的绘图指令中图片大小和位置,判断该区域的宏块分割,运动估计方向和范围以及图像边界的环路滤波器的系数;
S104、压缩后的图像通过网络发送给客户端;
S105、客户端接收压缩图像;
S106、客户端对所述压缩图像进行解码;
S107、客户端显示解码后的图像。

2.  根据权利要求1所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1031中根据渲染指令中的点/线/填充指令判断宏块的分割,包括:当桌面图像区域发生一条区域填充指令,帧内预测编码的模式选择将依据填充的区域大小和颜色,从所有可用的模式中选择一种或几种。

3.  根据权利要求2所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1031中根据渲染指令中的图像填充指令,判断宏块的分割,包括:当桌面图 像区域发生一条图片填充指令,帧内预测编码的模式选择将依据填充的区域对图片边界所在的宏块的划分从所有可用的模式中选择一种或几种。

4.  根据权利要求3所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1031中根据渲染指令中的文本指令,判断宏块的分割,以及环路滤波器的系数,包括:当桌面图像区域发生一条文本输出指令,帧内预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择相应的去块滤波器处理文本区域的内容。

5.  根据权利要求1所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1032中根据渲染指令中的点/线/填充指令,判断宏块运动估计的方向和范围,包括:当桌面图像区域发生一条区域填充指令,帧间预测编码的模式选择将依据填充的区域大小和颜色确定运动估计的范围和方向。

6.  根据权利要求5所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1032中根据渲染指令中的文本指令,判断宏块的分割方式和运动估计方向及范围,包括:当桌面图像区域发生一条文本输出指令,帧间预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择合适的去块滤波器对文本区域的内容进行处理。

7.  根据权利要求1至6之一所述的虚拟桌面压缩的方法,其特征在于,所述步骤S1032中根据渲染指令的绘图指令中图片大小和位置,判断该区域的宏块分割,运动估计的方向和范围以及图像边界的环路滤波器的系数,包括:当桌面图像区域发生一条图片填充指令,帧间预测编码的模式选择将依据填充的区域对图片边界所在的部分覆盖的区域选择对应的最大覆盖区域作为运动估计可选区域集合。

说明书

说明书一种虚拟桌面压缩的方法
技术领域
本发明涉及虚拟桌面技术领域,尤其涉及一种虚拟桌面压缩的方法。
背景技术
近年来,虚拟化技术的研究和应用随着云计算的发展逐步深入,包括硬件平台虚拟化,网络虚拟化和桌面虚拟化等。用户使用手机或其它便携设备通过网络,利用云平台进行办公或业务处理已经被用户广泛接受。桌面云(VirtualDesktopCloud,VDC)是指用户可以像使用本地个人电脑(PC)一样通过瘦客户端或者其他任何与网络相连的设备来跨平台访问远程桌面应用。桌面云的桌面操作系统和应用环境都是集中部署在远程的数据中心,本地终端只是一个低性能的客户端或者一个显示设备通过网络接入从而使用户获得PC一样的操作体验。桌面云改变了过去分散、独立的桌面系统环境,使资源得到整合,更容易管理。首先,桌面云加强了工作桌面的安全性。所有的工作桌面和应用数据完全保存在后台,本地终端只是工作桌面影像的显示。拷贝、下载、存盘、非法外设连接等操作都易于管控;其次,通过集中快速地执行桌面的管理工作,大大提高了桌面管理效率。软件的安装、升级、恢复、扩展等工作桌面管理都可由后台快速、统一地执行;再者,桌面云真正实现了可移动工作。只要能联网,员工在工作场合以外的任何场合,使用个人电脑、笔记本、云终端、平板等设备,均可打开自己的工作桌面进行工作。另外,桌面云终端的功耗一般是普通台式机的10%,能够大幅降低能耗,实现节能减排。
虚拟桌面图像的压缩传输架构如图1所示,最早起源于远程控制协议,如虚拟网络计算机(VirtualNetworkComputer,VNC)和Windows系统常用的RDP (RemoteDesktopProtocol)远程桌面传输协议,终端用户可以在瘦客户端上通过网络访问远程的服务器,获得跟本地PC一样的高性能计算资源和桌面显示效果。从桌面图像渲染所在的位置可以大致分为两种:一种是客户端渲染,这种方法把虚拟机(VirtualMachine,VM)的图形设备接口(GraphicsDeviceInterface,GDI)指令和指令所带位图压缩后传输给客户端,由客户端在本地执行GDI指令,渲染生成桌面图像并呈现;第二种是服务器渲染,这种方法在服务器,也可以是虚拟机上,执行GDI指令,渲染生成桌面图像然后进行压缩,也可以是虚拟化层(Hyperviser)对渲染后的图像进行压缩。压缩后的桌面图像传输到客户端后解压缩后呈现给用户。基于客户端的虚拟桌面传输方案只需要传输图像指令,而不需要在服务器侧渲染出实际的桌面图像,因此复杂度相对比较低,对服务器的硬件规格要求不高,在远程桌面研究的初期受到比较多的关注。但是客户端渲染方案的缺陷在于对客户端的渲染能力有一定要求,如果是虚拟机上执行三维应用(3Dimension,3D),这里3D应用特指基于DX指令或openGL指令的3D建模或基于DX或openGL的游戏等,非立体视频应用,客户端还必须支持DirectX或openGL等3D指令功能。另外客户端渲染的缺点在于指令压缩的性能有限,不能很好的利用图像的时空相关性,带宽占用较高:在低分辨率的应用场景比如打字、简单的窗口操作等,客户端渲染方案所需的带宽还可以接受,但是对于高清桌面场景,指令压缩方式的带宽占用会大幅增长,而多媒体应用和3D游戏等应用会使得这种方式的带宽占用更加恶化。服务器侧渲染对客户端需求很低,只要能够提供视频解码的能力即可,像手机等移动终端也可以接入桌面云。但是服务器侧渲染方案的缺陷在于云端需要多次渲染和编码,对于服务器的硬件性能和成本影响较大。
当前主流的VDI(VirtualDesktopInfrastructure,虚拟桌面基础架构) 产品在视频和基于3D指令的多媒体应用领域的用户体验比较差,还不能像PC一样满足用户对基于3D指令的多媒体应用的基本需求。由于云计算是未来太阳城集团领域的重要发展方向,很多国际知名IT企业,如微软(MS,Microsoft),思杰(CITRIX),威睿(Vmware)均提供了GPU方案在视频和基于3D指令的多媒体应用方面进行虚拟桌面加速。由于编码算法的性能和GPU虚拟化的性能等原因,这些技术在局域网的效果有一定提高,但是在广域网的环境里还不能大规模应用。可以说虚拟桌面的高效压缩和传输是让用户获得与个人电脑一样的用户体验的关键技术。
发明内容
本发明的目的在于通过一种虚拟桌面压缩的方法,来解决以上背景技术部分提到的问题。
为达此目的,本发明采用以下技术方案:
一种虚拟桌面压缩的方法,其包括如下步骤:
S101、在虚拟桌面系统的虚拟显卡中构建指令缓存装置,保存渲染指令;
S102、从虚拟显卡中定时获取桌面图像和渲染指令;
S103、采用图像压缩器对图像进行压缩,具体包括:
S1031、对于帧内预测图像:一、根据渲染指令中的点/线/填充(line/point/fill)指令判断宏块的分割;二、根据渲染指令中的图像填充指令,判断宏块的分割;三、根据渲染指令中的文本指令,判断宏块的分割,以及环路滤波器的系数;
S1032、对于帧间预测图像:一、如果虚拟桌面中有区域未被渲染指令覆盖或部分覆盖,则该区域的宏块模式可以直接选择跳过(skip)模式;二、根据渲染指令中的点/线/填充(line/point/fill)指令,判断宏块运动估计的方向 和范围;三、根据渲染指令中的文本指令,判断宏块的分割方式和运动估计方向及范围;四、根据渲染指令的绘图指令中图片大小和位置,判断该区域的宏块分割,运动估计方向和范围以及图像边界的环路滤波器的系数;
S104、压缩后的图像通过网络发送给客户端;
S105、客户端接收压缩图像;
S106、客户端对所述压缩图像进行解码;
S107、客户端显示解码后的图像。
特别地,所述步骤S1031中根据渲染指令中的点/线/填充(line/point/fill)指令判断宏块的分割,包括:当桌面图像区域发生一条区域填充指令,帧内预测(Intraprediction)编码的模式选择将依据填充的区域大小和颜色,从所有可用的模式中选择一种或几种。
特别地,所述步骤S1031中根据渲染指令中的图像填充指令,判断宏块的分割,包括:当桌面图像区域发生一条图片填充指令,帧内预测编码的模式选择将依据填充的区域对图片边界所在的宏块的划分从所有可用的模式中选择一种或几种。
特别地,所述步骤S1031中根据渲染指令中的文本指令,判断宏块的分割,以及环路滤波器的系数,包括:当桌面图像区域发生一条文本输出指令,帧内预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择相应的去块滤波器(deblockingfilter)处理文本区域的内容。
特别地,所述步骤S1032中根据渲染指令中的点/线/填充(line/point/fill)指令,判断宏块运动估计的方向和范围,包括:当桌面图像区域发生一条区域填充指令,帧间预测(Interprediction)编码的模式选择 将依据填充的区域大小和颜色确定运动估计的范围和方向。
特别地,所述步骤S1032中根据渲染指令中的文本指令,判断宏块的分割方式和运动估计方向及范围,包括:当桌面图像区域发生一条文本输出指令,帧间预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择合适的去块滤波器(deblockingfilter)对文本区域的内容进行处理。
特别地,所述步骤S1032中根据渲染指令的绘图指令中图片大小和位置,判断该区域的宏块分割,运动估计的方向和范围以及图像边界的环路滤波器的系数,包括:当桌面图像区域发生一条图片填充指令,帧间预测编码的模式选择将依据填充的区域对图片边界所在的部分覆盖的区域选择对应的最大覆盖区域作为运动估计可选区域集合。
本发明提出的虚拟桌面压缩的方法利用在虚拟桌面服务器端建立的与桌面图像同步的渲染指令缓存区,并利用指令辅助图像压缩,根据操作系统的渲染指令的类型和数据选择合适的编码参数,生成符合标准规范的压缩视频流,降低了图像压缩的复杂度,提高了图像压缩质量。同时,由于图像压缩采用的标准规范,对于客户端性能和成本没有影响,提高了虚拟桌面的多媒体应用能力。
附图说明
图1为虚拟桌面图像的压缩传输架构示意图;
图2为本发明实施例提供的渲染指令辅助的图像编码流程图;
图3为本发明实施例提供的虚拟桌面压缩的方法流程图;
图4为本发明实施例提供的区域填充指令的图像分割示意图;
图5为本发明实施例提供的图片填充指令的图像分割示意图;
图6为本发明实施例提供的文本填充指令的图像分割示意图;
图7为本发明实施例提供的渐变填充指令的图像预测示意图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容理解的更加透彻全面。除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
区分不同的区域类型,选择合适的编码算法才可以有效的提高图像压缩效率。所谓图像分割是指将图像中具有特殊意义的不同区域(宏块组)分开来,并使这些区域互不相交,且每个区域满足特定区域的一致性条件。目前在桌面图像编码中采用的区域分割或分类算法大多采用基于直方图,边缘统计,色彩空间等方法,把桌面图像分割为文本区域、图形区域或自然图像区域,然后采用不同的编码进行压缩和传输。本发明利用GDI指令和windows窗口相关指令对桌面图像中不同的文本、图形和图像区域进行区分。GDI函数大致可分类为:设备上下文函数(如GetDC、CreateDC、DeleteDC)、画线函数(如LineTo、Polyline、Arc)、填充画图函数(如Ellipse、FillRect、Pie)、画图属性函数(如SetBkColor、SetBkMode、SetTextColor)、文本、字体函数(如TextOut、GetFontData)、位图函数(如SetPixel、BitBlt、StretchBlt)、坐标函数(如DPtoLP、LPtoDP、ScreenToClient、ClientToScreen)、映射函数(如SetMapMode、SetWindowExtEx、SetViewportExtEx)、元文件函数(如PlayMetaFile、 SetWinMetaFileBits)、区域函数(如FillRgn、FrameRgn、InvertRgn)、路径函数(如BeginPath、EndPath、StrokeAndFillPath)、裁剪函数(如SelectClipRgn、SelectClipPath)等。我们将通过虚拟显卡驱动进行捕获对于文本、字体函数,画图函数和位图函数等,对相邻两帧之间的GDI指令的覆盖区域和刷新频率进行分析,识别出不同区域的内容类型,比如编辑窗口的文本区域和鼠标的上下左右滚动等操作、窗口的位置和重叠关系以及视频等多媒体内容的位置太阳城集团等。在Windows中,前后两帧之间的GDI指令可能出现下一条指令完全覆盖上一条指令或者部分区域的情况,内容区域识别要将前一条指令的未被后面的指令覆盖的相应数据考虑进来。另外,GDI指令对于当前帧和之前的帧的内容的位置重合区域也有比较重要的指示左右。多条连续相同指令也可以合并起来以增加区域判断的准确性。
在基于块匹配的运动估计和补偿中,对每一个宏块是单独做运动估计的,但是,在桌面图像中的同一个窗口内的宏块可能会经历相似的运动,即全局运动,因此使用全局运动补偿,使编码器传输比较少的全局运动参数来描述整个窗口的全局运动,而不是每个宏块使用各自的运动矢量,这样能够改善压缩的效率,提高视频编码器的性能,此外全局运动估计用于宏块运动的参数模型,这些参数模型不仅可以表示平移运动,还可以描述旋转、缩放等更复杂的运动,使用这些参数模型对视频的运动进行估计而得到的预测帧与当前帧之间的残差将明显减少,降低运动估计的复杂度,并提高编码的压缩效率。
如图2和图3所示,本实施例中虚拟桌面压缩的方法具体包括如下步骤:
S101、在虚拟桌面系统的虚拟显卡中构建指令缓存装置,保存渲染指令。
S102、从虚拟显卡中定时获取桌面图像和渲染指令。
S103、采用图像压缩器对图像进行压缩,具体包括:
S1031、对于帧内预测图像:一、根据渲染指令中的点/线/填充(line/point/fill)指令判断宏块的分割。
如图4所示,当桌面图像区域发生一条区域填充指令,帧内预测(Intraprediction)编码的模式选择将依据填充的区域大小和颜色,从所有可用的模式中选择一种或几种。比如:如果是纯色填充,那么区域完全覆盖的宏块可以选择HEVC的中可选的最大的分割模式(PU),最大可以到128x128,部分覆盖的区域可以选择对应的最大覆盖模式组成的集合。
二、根据渲染指令中的图像填充指令,判断宏块的分割。
如图5所示,当桌面图像区域发生一条图片填充指令,帧内预测编码的模式选择将依据填充的区域对图片边界所在的宏块的划分从所有可用的模式中选择一种或几种。
三、根据渲染指令中的文本指令,判断宏块的分割,及环路滤波器的系数。
如图6所示,当桌面图像区域发生一条文本输出指令,帧内预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择相应的去块滤波器(deblockingfilter)处理文本区域的内容。
S1032、对于帧间预测图像:一、如果虚拟桌面中有区域未被渲染指令覆盖或部分覆盖,则该区域的宏块模式可以直接选择跳过(skip)模式。
二、根据渲染指令中的点/线/填充(line/point/fill)指令,判断宏块运动估计的方向和范围;
如图7所示,当桌面图像区域发生一条区域填充指令,帧间预测(Interprediction)编码的模式选择将依据填充的区域大小和颜色确定运动估计的范围和方向。比如:如果是渐变色填充,那么区域完全覆盖的宏块可以选 择渐变色的法线方向作为运动估计的方向,部分覆盖的区域可以选择对应的最大覆盖区域的作为运动估计可选区域集合。
三、根据渲染指令中的文本指令,判断宏块的分割方式和运动估计方向及范围。
如图6所示,当桌面图像区域发生一条文本输出指令,帧间预测编码的模式选择将依据填充的区域对文本边界所在的宏块的划分从所有可用的模式中选择一种或几种,并选择合适的去块滤波器(deblockingfilter)对文本区域的内容进行处理。
四、根据渲染指令的绘图指令中图片大小和位置,判断该区域的宏块分割,运动估计方向和范围以及图像边界的环路滤波器的系数。
如图5所示,当桌面图像区域发生一条图片填充指令,帧间预测编码的模式选择将依据填充的区域对图片边界所在的部分覆盖的区域选择对应的最大覆盖区域作为运动估计可选区域集合。
S104、压缩后的图像通过网络发送给客户端。S105、客户端接收压缩图像。S106、客户端对所述压缩图像进行解码。S107、客户端显示解码后的图像。
本发明的技术方案利用在虚拟桌面服务器端建立的与桌面图像同步的渲染指令缓存区,并利用指令辅助图像压缩,根据操作系统的渲染指令的类型和数据选择合适的编码参数,生成符合标准规范的压缩视频流,降低了图像压缩的复杂度,提高了图像压缩质量。同时,由于图像压缩采用的标准规范,对于客户端性能和成本没有影响,提高了虚拟桌面的多媒体应用能力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。 其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

太阳城集团本文
本文标题:一种虚拟桌面压缩的方法.pdf
链接地址:http://zh228.com/p-6397733.html
太阳城集团我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
葡京赌场|welcome document.write ('');