传输屏幕图像的方法、装置和系统制造方法及图纸

技术编号:16605308 阅读:38 留言:0更新日期:2017-11-22 15:02
本申请公开了传输屏幕图像的方法、装置和系统。所述方法的一具体实施方式包括:接收图像更新请求;获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;将所述一个以上矩形动态区域合并为矩形区域;从屏幕区域中去除所述矩形区域,得到静态区域;采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;向用户端发送所述第一编码数据和所述第二编码数据。该实施方式有效改善了传输动态图像时由于压缩率过低带来的卡顿、延迟等。

Method, device and system for transmitting screen image

The present invention discloses a method, device and system for transmitting screen images. One embodiment includes the method of receiving image update request; access to more than one rectangular dynamic area dynamic window is not the other window blocked; the more than one rectangular region merging dynamic rectangular region; the removal of the rectangular region from the screen area, static region; the first encoder the rectangular area is solid and filling the quiescent region encoding, encoding data of the first; the static area and fill the rectangle for the solid color encoding second to second encoder, encoding data, wherein the first encoder compression ratio is greater than the second encoder ratio; to the user terminal transmits the first encoding data and the second data encoding. The embodiment can effectively improve the dynamic image transmission due to the compression rate is too low, Caton delay.

【技术实现步骤摘要】
传输屏幕图像的方法、装置和系统
本申请涉及计算机
,具体涉及互联网
,尤其涉及传输屏幕图像的方法、装置和系统。
技术介绍
虚拟桌面技术是一款远程控制软件,分为服务端和用户端。服务端启动后运行于后台,用户端通过TCP/IP协议连接服务端成功后,能够在窗口中实时呈现服务端所在机器的桌面图像,并能够向用户端提供远程操作服务端桌面的功能。相关技术中,虚拟桌面技术在通信时采用的是请求更新方式:一方面,用户端会定时向服务端请求图像更新,服务端收到更新后对屏幕显示的图像进行编码,打包发送给用户端,用户端在收到图像信息后解码,显示在窗口上;另一方面,键盘和鼠标等控制信息由用户端进行转码,发送到服务端,服务端再解码并执行。对于图像的编码方式主要有以下几种:原始数据Raw编码、CopyRectangle编码、RRE(riseandrunlengthencoding)编码、Hextile编码和ZRLE(ZlibRun-Length)编码等。采用上述几种编码方案对静态的、大量规则色块以及色块平移较多的窗口图像效果比较好,然而,上述的几种编码方式用于传输动态的、颜色丰富且变化不规则的动态图像时的压缩比例较低,从而导致使用虚拟桌面播放视频或玩游戏时占用大量的带宽,在网络状况不好时出现网络拥塞、延迟增加,并且TCP的重传机制会进一步加剧拥塞,最终出现画面掉帧。
技术实现思路
本申请的目的在于提出一种改进的传输屏幕图像的方法、装置和系统,来解决以上
技术介绍
部分提到的技术问题。第一方面,本申请提供了一种传输屏幕图像的方法,所述方法包括:接收图像更新请求;获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;将所述一个以上矩形动态区域合并为矩形区域;从屏幕区域中去除所述矩形区域,得到静态区域;采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;向用户端发送所述第一编码数据和所述第二编码数据。第二方面,本申请提供了一种传输屏幕图像的方法,所述方法包括:发送图像更新请求;接收第一编码数据和第二编码数据,其中,所述第一编码数据为采用第一编码器编码的矩形区域和填充为纯色的静态区域,所述第二编码数据为采用第二编码器编码的所述静态区域和填充为所述纯色的所述矩形区域,所述第一编码器的压缩比大于所述第二编码器的压缩比;采用第一解码器解码所述第一编码数据,得到第一解码数据,其中,所述第一解码器与所述第一编码器采用第一编解码标准;采用第二解码器解码所述第二编码数据,得到第二解码数据,其中,所述第二解码器与所述第二编码器采用第二编解码标准;根据填充的所述纯色对所述第一解码数据和所述第二解码数据进行位运算,得到更新后的图像。第三方面,本申请提供了一种传输屏幕图像的装置,所述装置包括:接收模块,用于接收图像更新请求;获取模块,用于获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;合并模块,用于将所述一个以上矩形动态区域合并为矩形区域;去除模块,用于从屏幕区域中去除所述矩形区域,得到静态区域;第一编码模块,用于采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;第二编码模块,用于采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;发送模块,用于向用户端发送所述第一编码数据和所述第二编码数据。第四方面,本申请提供了一种传输屏幕图像的装置,所述装置包括:发送模块,用于发送图像更新请求;接收模块,用于接收第一编码数据和第二编码数据,其中,所述第一编码数据为采用第一编码器编码的矩形区域和填充为纯色的静态区域,所述第二编码数据为采用第二编码器编码的所述静态区域和填充为所述纯色的所述矩形区域,所述第一编码器的压缩比大于所述第二编码器的压缩比;第一解码模块,用于采用第一解码器解码所述第一编码数据,得到第一解码数据,其中,所述第一解码器与所述第一编码器采用第一编解码标准;第二解码模块,用于采用第二解码器解码所述第二编码数据,得到第二解码数据,其中,所述第二解码器与所述第二编码器采用第二编解码标准;运算模块,用于根据填充的所述纯色对所述第一解码数据和所述第二解码数据进行位运算,得到更新后的图像。第五方面,本申请提供了一种传输屏幕图像的系统,所述系统包括:用户端,用于发送图像更新请求;接收第一编码数据和第二编码数据,其中,所述第一编码数据为采用第一编码器编码的矩形区域和填充为纯色的静态区域,所述第二编码数据为采用第二编码器编码的所述静态区域和填充为所述纯色的所述矩形区域,第一编码器的压缩比大于第二编码器的压缩比;采用第一解码器解码所述第一编码数据,得到第一解码数据,其中,所述第一解码器与所述第一编码器采用第一编解码标准;采用第二解码器解码所述第二编码数据,得到第二解码数据,其中,所述第二解码器与所述第二编码器采用第二编解码标准;以及根据填充的所述纯色对所述第一解码数据和所述第二解码数据进行位运算,得到更新后的图像;服务端,用于接收图像更新请求;获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;将所述一个以上矩形动态区域合并为矩形区域;从屏幕区域中去除所述矩形区域,得到静态区域;采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;向用户端发送所述第一编码数据和所述第二编码数据。本申请提供的传输屏幕图像的方法、装置和系统,通过响应于接收图像更新请求,获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域,之后将获取的一个以上矩形动态区域合并为矩形区域,之后从屏幕区域中去除矩形区域,得到静态区域,之后采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据,之后采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,第一编码器的压缩比大于第二编码器的压缩比,最后向用户端发送第一编码数据和第二编码数据,从而根据窗口图像的更新速度,对需要传输的屏幕图像的矩形区域和静态区域分别采用了不同的编码器进行压缩,提高了对于动态图像的压缩比例,进而减少了传输屏幕图像所需的带宽,有效改善了传输动态图像时由于压缩率过低带来的卡顿、延迟等,减少了画面掉帧。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是本申请可以应用于其中的示例性系统架构图;图2是根据本申请的用于服务端的传输屏幕图像的方法的一个实施例的流程图;图3是根据本申请的获取单个动态窗口中未被其它窗口遮挡的一个以上矩形动态区域的方法的一个实施例的流程图;图4a是根据本申请的获取一个以上矩形动态区域的方法的一个应用场景的一个示意图;图4b是对图4a中的矩形区域进行编码的方法的一个应用场景的示意图;图4c是对图4a中的静态区域本文档来自技高网...
传输屏幕图像的方法、装置和系统

【技术保护点】
一种传输屏幕图像的方法,其特征在于,所述方法包括:接收图像更新请求;获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;将所述一个以上矩形动态区域合并为矩形区域;从屏幕区域中去除所述矩形区域,得到静态区域;采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;向用户端发送所述第一编码数据和所述第二编码数据。

【技术特征摘要】
1.一种传输屏幕图像的方法,其特征在于,所述方法包括:接收图像更新请求;获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;将所述一个以上矩形动态区域合并为矩形区域;从屏幕区域中去除所述矩形区域,得到静态区域;采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;采用第二编码器对所述静态区域和填充为所述纯色的所述矩形区域进行编码,得到第二编码数据,其中,所述第一编码器的压缩比大于所述第二编码器的压缩比;向用户端发送所述第一编码数据和所述第二编码数据。2.根据权利要求1所述的传输屏幕图像的方法,其特征在于,所述获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域包括:获取单个动态窗口,将所述单个动态窗口的左上角作为起始的扫描点,执行扫描步骤以获取所述单个动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;其中,所述扫描步骤包括:响应于所述扫描点未超出所述单个动态窗口的右边界,执行第一判断步骤;所述第一判断步骤包括:判断所述扫描点是否被其它窗口遮挡或位于已扫描到的矩形动态区域内,若否,响应于所述扫描点首次未被其它窗口遮挡且未位于已扫描到的矩形动态区域内,将所述扫描点作为P1,响应于所述扫描点非首次未被其它窗口遮挡且未位于已扫描到的矩形动态区域内,执行第二判断步骤;所述第二判断步骤包括:将所述扫描点的横坐标加1,判断所述扫描点是否超出所述单个动态窗口的右边界或被其它窗口遮挡或位于已扫描到的矩形动态区域内,若是,则将上一个扫描点作为矩形动态区域的右上角P2,将所述P1的纵坐标加1得到P3,将所述P2的纵坐标加1得到P4,对所述P3和P4,执行第三判断步骤;所述第三判断步骤包括:判断所述P3和P4连线上的所有点是否超出所述单个动态窗口的右边界或被其它窗口遮挡或位于已扫描到的矩形动态区域内,若是,将P3的纵坐标减1作为所述矩形动态区域的左下角,将P4的纵坐标减1作为所述矩形动态区域的右下角,记录所述矩形动态区域。3.根据权利要求2所述的传输屏幕图像的方法,其特征在于,所述扫描步骤还包括以下一项或多项:在记录所述矩形动态区域之后,将所述P2的横坐标加1作为新的起始的扫描点,执行所述扫描步骤;响应于所述扫描点已超出所述单个动态窗口的右边界,执行第四判断步骤,所述第四判断步骤包括:判断所述扫描点的纵坐标加1是否大于所述单个动态窗口的下边界,若是,则结束对所述单个动态窗口执行所述扫描步骤;若否,则将下一行的左边界点作为新的起始的扫描点,执行所述扫描步骤;所述第一判断步骤还包括:若是,则将所述扫描点的横坐标加1,执行所述扫描步骤;所述第二判断步骤还包括:若否,则继续执行所述第二判断步骤;所述第三判断步骤还包括:若否,将P3的纵坐标加1后作为新的P3的纵坐标,将P4的纵坐标加1后作为新的P4的纵坐标,执行所述第三判断步骤。4.根据权利要求1-3任意一项所述的传输屏幕图像的方法,其特征在于,所述将所述一个以上矩形动态区域合并为矩形区域包括:获取每一个所述矩形动态区域的左上角坐标和右下角坐标;从所述左上角坐标中获取横坐标的最小值和纵坐标的最小值,将所述横坐标的最小值和所述纵坐标的最小值作为所述矩形区域的左上角的坐标;从所述右下角坐标中获取横坐标的最大值和纵坐标的最大值,将所述横坐标的最大值和所述纵坐标的最大值作为所述矩形区域的右下角的坐标;根据所述矩形区域的左上角的坐标和所述矩形区域的右下角的坐标,确定所述矩形区域。5.根据权利要求1所述的传输屏幕图像的方法,其特征在于,所述纯色为白色或黑色。6.一种传输屏幕图像的方法,其特征在于,所述方法包括:发送图像更新请求;接收第一编码数据和第二编码数据,其中,所述第一编码数据为采用第一编码器编码的矩形区域和填充为纯色的静态区域,所述第二编码数据为采用第二编码器编码的所述静态区域和填充为所述纯色的所述矩形区域,所述第一编码器的压缩比大于所述第二编码器的压缩比;采用第一解码器解码所述第一编码数据,得到第一解码数据,其中,所述第一解码器与所述第一编码器采用第一编解码标准;采用第二解码器解码所述第二编码数据,得到第二解码数据,其中,所述第二解码器与所述第二编码器采用第二编解码标准;根据填充的所述纯色对所述第一解码数据和所述第二解码数据进行位运算,得到更新后的图像。7.根据权利要求6所述的传输屏幕图像的方法,其特征在于,所述根据填充的所述纯色对所述第一解码数据和所述第二解码数据进行位运算,得到更新后的图像包括:根据填充的黑色对所述第一解码数据和所述第二解码数据进行按位或运算,得到更新后的图像;或根据填充的白色对所述第一解码数据和所述第二解码数据进行按位与运算,得到更新后的图像。8.一种传输屏幕图像的装置,其特征在于,所述装置包括:接收模块,用于接收图像更新请求;获取模块,用于获取动态窗口中未被其它窗口遮挡的一个以上矩形动态区域;合并模块,用于将所述一个以上矩形动态区域合并为矩形区域;去除模块,用于从屏幕区域中去除所述矩形区域,得到静态区域;第一编码模块,用于采用第一编码器对所述矩形区域和填充为纯色的所述静态区域进行编码,得到第一编码数据;第二编码模块,用于采用第二编码器对所...

【专利技术属性】
技术研发人员:程夏衍
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

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

1