一种拖动图像的传输显示方法和系统的制作方法

文档序号:6542586阅读:112来源:国知局
一种拖动图像的传输显示方法和系统的制作方法
【专利摘要】本发明公开了一种拖动图像的传输显示方法,应用于远程控制过程,所述方法包括:在本地侧检测到一已有窗体的位置发生变化;在网络侧将所述已有窗体替换显示到其新位置。本发明可以有效降低处理资源和传输资源的占用率,提升处理速度和传输速度。
【专利说明】一种拖动图像的传输显示方法和系统
[0001]本发明专利申请是申请日为2011年2月21日、申请号为201110041293.4名称为“一种拖动图像的传输显示方法和系统”的中国发明专利申请的分案申请。
【技术领域】
[0002]本发明属于远程控制领域,具体地说,涉及一种拖动图像的传输显示方法和系统。【背景技术】
[0003]所谓远程控制,是指管理人员通过互联网联通处于异地的被控制的电脑,将被控电脑的桌面环境显示到自己的电脑中,通过本地电脑对处于异地的被控电脑进行配置、软件安装程序、修改等工作。
[0004]远程控制的工作原理:远程控制必须通过网络才能进行。位于本地的电脑是操纵指令的发出端,称为主控端,非本地的被控电脑称为被控端。主控端和被控端可以是位于同一局域网中,也可以是连入互联网的处在任何位置的两台或多台电脑。通常在主控端的电脑中安装服务器端程序,在被控端的电脑中安装客户端程序;使用时主控端的电脑中的服务器端程序向被控端的电脑中的客户端程序发出信号,建立一个特殊的远程服务,然后通过这个远程服务,使用各种远程控制功能发送远程控制命令,控制被控端的电脑中的各种应用程序运行。
[0005]VNC (Virtual Network Computing虚拟网络计算机)就是一种远程控制技术,实质上属于一种跨平台的显示系统,将被控端的电脑的完整的窗口界面通过网络传输到主控端的电脑屏幕上显示。当操作者使用主控端的电脑控制被控端的电脑时,就如同坐在被控端的电脑的屏幕前一样,可以启动被控端电脑的应用程序,可以使用或窃取被控端电脑的文件资料,甚至可以利用被控端电脑的外部打印设备(打印机)和通信设备(调制解调器或者专线等)来进行打印和访问外网和内网。
[0006]因为VNC是一个抽象工具,和客户机本机的图形系统并没有直接联系,VNC技术是对被控端的整个屏幕进行抓取,将屏幕作为一个位图传输到主控端并加以显示,因此,当客户机的用户执行鼠标拖动一个窗口在屏幕上移动时,VNC技术还需要将整个桌面不断的抓取传输至主控端重现,所传输的数据量必然会很大,在主控端重现屏幕也会耗费更多资源,传输效率和处理效率都非常低,这就会直接导致主控端所显示的画面更新速度很慢,画面严重滞后,并且刷新的效果不明显,从而影响主控端对被控端的远程控制,给被控端的用户的感觉就是远程控制的主控端的反应非常不灵敏,存在非常大的延迟。

【发明内容】

[0007]有鉴于此,本发明所要解决的技术问题是提供了一种拖动图像的传输显示方法和系统,这样可以有效的降低了处理资源和传输资源的占用率,提升处理速度和传输速度。
[0008]为了解决上述技术问题,本发明公开了一种拖动图像的传输显示方法,包括:在远程控制过程中,在本地侧检测到一已有窗体的位置发生变化;在网络侧将所述已有窗体替换显示到其新位置。
[0009]进一步地,还包括:在本地侧将所述已有窗体的原位置和新位置也一起传输至网络侧。
[0010]进一步地,检测到一已有窗体的位置发生变化,包括:在本地侧检测到存在鼠标点击拖动操作且被拖动至新位置的所述已有窗体在之前的远程控制过程中已被传输至网络侧。
[0011]进一步地,所述已有窗体在之前的远程控制过程中已被传输至网络侧,包括:在本地侧根据所述已有窗体的图像在所保存的之前远程控制过程中所发送的图像中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至网络侧。
[0012]进一步地,在网络侧将所述已有窗体替换显示,包括:在网络侧从所保存的之前远程控制过程中所接收的图像中获取所述已有窗体的图像,替换显示到其新位置。
[0013]进一步地,还包括:在网络侧在所述已有窗体的原位置填充显示背景。
[0014]进一步地,还包括:在本地侧对所述已有窗体的原位置上的图像进行抓取并发送至所述网络侧;在网络侧在所述已有窗体的原位置填充显示所述图像。
[0015]进一步地,包括:在本地侧将所述已有窗体的原位置上的图像划分为若干区块;针对每一区块,识别其中包含的元素,如果存在一元素面积最大且占所述区块的面积的比重超过一门限,使用与所述元素的类别相应的压缩方式对所述区块进行压缩并随各区块的位置信息一起传输至网络侧;在网络侧接收并解压缩各区块,依据所述各区块的位置信息对各区块进行重组还原所述图像,在所述原位置填充显示所述图像。
[0016]为了解决上述技术问题,本发明还公开了一种拖动图像的传输显示系统,包括:传输装置和显示装置;所述传输装置,用于在远程控制过程中在本地侧检测到一已有窗体的位置发生变化;所述显示装置,用于在网络侧将所述已有窗体替换显示到其新位置。
[0017]进一步地,所述传输装置,还用于将所述已有窗体的原位置和新位置也一起传输至所述显示装置。
[0018]进一步地,所述传输装置,还用于检测是否存在鼠标点击拖动操作且被拖动至新位置的所述已有窗体在之前的远程控制过程中是否已被传输至所述显示装置。
[0019]进一步地,所述传输装置,还用于根据所述已有窗体的图像在存储装置中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至所述显示装置;所述存储装置,为位于所述传输装置一侧的缓存或者位于第三方位置且与所述显示装置共享的缓存,用于缓存所述传输装置发送的已有窗体的图像。
[0020]进一步地,所述显示装置,还用于由存储装置中获取所述已有窗体的图像;所述存储装置,为与所述传输装置同步且位于所述显示装置一侧的缓存或者位于第三方位置且与所述传输装置共享的缓存,用于缓存接收所述传输装置发送的已有窗体的图像。
[0021]进一步地,所述显示装置,还用于在所述已有窗体的原位置填充显示背景。
[0022]进一步地,所述传输装置,还用于对所述已有窗体的原位置上的图像进行抓取并发送至所述显示装置;所述显示装置,还用于在所述已有窗体的原位置填充显示所述图像。
[0023]进一步地,所述传输装置,将所述已有窗体的原位置上的图像划分为若干区块,针对每一区块,识别其中包含的元素,如果存在一元素面积最大且占所述区块的面积的比重超过一门限,使用与所述元素的类别相应的压缩方式对所述区块进行压缩并随所述区块的位置信息一起传输至所述显示装置;所述显示装置,还用于接收并解压缩各区块,依据所述各区块的位置信息对各区块进行重组还原所述图像,在所述原位置填充显示所述图像。
[0024]与现有的方案相比,本发明所获得的技术效果:
[0025]I)本发明特别针对窗体拖动这一情况,通过判断窗体拖动的发生,由网络侧直接从缓存中读取移动的窗体并显示,避免了重复的数据传输,大大减小了所需要传递的总数据量,节省了传输资源的占用;
[0026]2)同时对于窗体移动后的原位置,也通过分类处理的方式,填充背景或者填充新图像,保证了在网络侧还原桌面的精确性;
[0027]3)同时在填充新图像时,还通过对图像分类压缩的方式,将图像的传输尺寸进一步降低,减小了传输的数据量。
【专利附图】

【附图说明】
[0028]图1为本发明实施例的总流程图;
[0029]图2为本发明实施例的检测窗体拖动的流程图;
[0030]图3为本发明应用实例的分类压缩处理的细部流程图;
[0031]图4为本发明实施例的系统示意图。
【具体实施方式】
[0032]以下将配合图式及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
[0033]本发明的核心构思在于:在远程控制过程中,在本地侧检测到一已有窗体的位置发生变化;在网络侧将所述已有窗体替换显示到其新位置。所述窗体,可以是系统桌面内的窗体,也可以是所述窗体内显示的又一窗体,本发明并不限于此。
[0034]以下以一个实施例对本发明的用于远程控制的分区传输方法进行说明。用户接受服务器的请求,接管用户的终端进行远程控制,在远程控制的过程中,需要服务器实时或周期地抓取用户终端的桌面,并保存为图片的形式发送到服务器上进行显示,从而在服务器上还原用户终端的桌面,方便维护人员在服务器上控制用户的终端。
[0035]本发明的拖动图像的传输显示方法,应用于在进行远程控制时服务侧接管用户侦牝抓取并传输用户终端的桌面的过程。如图1所示,具体包括如下操作:
[0036]步骤SI,在远程控制过程中,在本地侧检测到一已有窗体的位置发生变化;
[0037]同时,在本地侧还将所述已有窗体的原位置和新位置也一起传输至网络侧;
[0038]步骤S2,在本地侧对原位置进行扫描,分情况执行步骤S3或S4 ;
[0039]在本地侧扫描发现,所述已有窗体叠加显示在另一窗体或者图像上时,执行步骤S3,所述已有窗体直接显示在桌面背景上时,执行步骤S4 ;
[0040]步骤S3,在本地侧对所述已有窗体的原位置上的图像进行抓取并发送至所述网络侧,执行步骤S5 ;
[0041]步骤S4,在网络侧在所述已有窗体的原位置填充显示背景,执行步骤S5 ;
[0042]步骤S5,在网络侧将所述已有窗体替换显示到其新位置;
[0043]因为是已有窗体,所以所述已有窗体在之前的远程控制过程中已被传输至网络侦牝则在网络侧由缓存中直接获取所述已有窗体的图像,将所述图像替换显示到其新位置,从而在网络侧重现出这一时刻本地侧窗体拖动显示的效果;
[0044]所述缓存为与本地侧同步的网络侧缓存或位于第三方位置且与所述本地侧共享的缓存。
[0045]对于步骤SI,检测是否存在一已有窗体的位置发生变化的判断方式,可以通过以下步骤实现。如图2所示,包括以下步骤:
[0046]步骤SS1,在本地侧检测是否存在鼠标点击拖动操作,如果是,则说明发生了有可能发生窗体移动,但窗体本身的图像没有变化,执行步骤SS2 ;如果没有发生,一般可以认为未发生窗体移动,流程结束;
[0047]步骤SS2,监测被拖动至新位置的所述已有窗体在之前的远程控制过程中是否已被传输至网络侧,如果是,则可以确定是发生了窗体移动,并可以保证步骤S5中在网络侧可以通过直接读取缓存获取所述已有窗口的图像,避免了网络传输,此时跳转执行步骤S2 ;否则,执行步骤SS3;
[0048]具体来说,在本地侧可以根据所述已有窗体的图像在缓存中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至网络侧;如果未命中,判定所述已有窗体在之前的远程控制过程中尚未被传输至网络侧,所以步骤S5中在网络侧无法通过直接读取缓存获取所述已有窗口的图像,执行步骤SS3 ;
[0049]所述缓存为本地侧缓存或者位于第三方位置且与所述网络侧共享的缓存;
[0050]步骤SS3,在本地侧对所述已有窗口的图像进行抓取传输,在所述网络侧对所述图像进行接收显示。
[0051]本发明对于步骤S3,将在本地侧所述已有窗体的原位置上的图像传输至网络侧,或者对于步骤SS3,将本地侧的已有窗口的图像传输至网络侧,都可以通过下面对分类传输的方式传输至网络侧。如图3所示,包括以下步骤:
[0052]步骤SSS1,在本地侧获取所述已有窗体的原位置上的图像或者已有窗口的图像;
[0053]步骤SSS2,将所述图像划分为若干区块;
[0054]将所述图像按任意方式分为若干区块,例如,可以按九宫格将所述图像分为九个区块,也可以分成十六格等等,本发明并不限于此;
[0055]步骤SSS3,针对每一区块识别其中包含的元素;
[0056]所述元素,至少包括:背景、文字、图片;
[0057]根据系统内部的图形设备接口 GDI识别所述区块内的元素中的背景;对于背景,可以是颜色丰富的图片,也有可能是单一颜色的图片;
[0058]对所述区块所包含的颜色种类进行识别,根据所述颜色种类的数量识别所述区块内的元素中的文字和/或图片;一般来说,图片所包含的颜色的种类会比较丰富,而相对图片来说,文字所包含的颜色种类则较为单一,因此,可以为颜色种类设定一门限,颜色种类的数量小于所述门限时,识别所述元素为文字;所述颜色种类的数量大于所述门限时,识别所述元素为图片;
[0059]当然,还可以对图片进行更细致的划分,可以为颜色种类设定第一门限及第二门限,所述第一门限大于第二门限;颜色种类的数量小于所述第二门限时,识别所述元素为文字;所述颜色种类的数量大于所述第一门限时,识别所述元素为色彩丰富的图片;所述颜色种类在第一门限及第二门限之间时,识别为色彩不丰富的图片;
[0060]步骤SSS4,针对每一区块找出其中所占面积最大的元素并判定所述元素占所述区块的面积的比重,如果所述元素占所述区块的面积的比重超过一门限,执行步骤SSS6,如果所述元素占所述区块的面积的比重未超过一门限,执行步骤SSS5 ;
[0061]一般来说,如果所述面积最大的元素占所述区块的比重超过一预设门限,则可以认为所述区块主要是由这种元素构成;如果所述元素占所述区块的比重未超过所述门限,则说明所述区块中的元素种类繁多且平均填充,所述区块并不是主要是由某种元素构成;
[0062]步骤SSS5,将所述区块再划分为若干二级区块,针对每个二级区块再次执行步骤SSS3,识别其中包含的元素;
[0063]因为所述区块并不是主要是由某种元素构成,不同类的元素适用于不同的压缩方式,所以此时对所述区块无法选择适合的压缩方式;可以对所述区块再划分为若干二级区块,按任意方式划分二级区块,例如,可以按九宫格将所述区块分为九个二级区块,也可以分成十六格等等,本发明并不限于此。如果此时某些二级区块中依然无法确定主要构成元素,也可以对二级区块再次划分,并进行多次迭代,本发明并不限于此;
[0064]步骤SSS6,使用与所述元素类别相应的压缩方式对所述区块进行压缩并传输至网络侧,同时将所述区块的位置信息也传输至网络侧;
[0065]因为所述区块主要是由这种元素构成,所以对这个区块使用这种元素相应的压缩方式最有效而且适合的;
[0066]对于压缩方式的选取,可以遵循以下原则:
[0067]对主要由文字组成的区块,文字是主要对象,而文字往往承载需要肉眼识别的数据,因此需要保证数据还原的质量,而且文字本身的尺寸也较小,可以使用无损压缩方式;
[0068]对于主要由色彩不丰富的图片组成的区块,色彩不丰富的图片是主要对象,由于这种图片本身的尺寸并不大,可以使用无损编码压缩方式;
[0069]对于主要由色彩丰富的图片组成的区块,色彩丰富的图片是主要对象,对于远程控制来说这种图片往往并不是关键数据,允许一定的失真,因此可使用有损编码压缩方式,比如JPG,可以获得较高的压缩比,极大地缩小图片尺寸,在传输时获得较高的速率。
[0070]与直接抓取整个区域进行传输相比,经过这样的分类压缩后,可以将区域的大小缩小30%-50%,大大降低了数据量,并使得传输速率大大提高;
[0071]步骤SSS7,在网络侧接收并解压缩各区块的图像,依据各区块的位置信息在网络侧对各区块进行重组还原所述图像,在所述原位置填充显示所述图像,从而在网络侧重现出这一时刻本地侧窗体拖动显示的效果;
[0072]位置信息可以是各区块在图像发生变化的区域上的横纵坐标。
[0073]以下以一个实施例对本发明的用于远程控制的分区传输系统进行说明。
[0074]如图4所示,一种拖动图像的传输显示系统,包括:位于本地侧的传输装置I和位于网络侧的显示装置2;
[0075]所述传输装置1,用于在远程控制过程中在本地侧检测到一已有窗体的位置发生变化,将所述已有窗体的原位置和新位置也一起传输至所述显示装置;如果所述已有窗体叠加显示在另一窗体或者图像上,还用于对所述已有窗体的原位置上的图像进行抓取并发送至所述显示装置;[0076]所述显示装置2,用于在网络侧将所述已有窗体替换显示到其新位置,在所述已有窗体的原位置填充显示背景或者在所述已有窗体的原位置填充显示所述图像;
[0077]具体来说,所述传输装置1,还用于检测是否存在鼠标点击拖动操作且被拖动至新位置的所述已有窗体在之前的远程控制过程中是否已被传输至所述显示装置;根据所述已有窗体的图像在缓存3中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至所述显示装置;所述缓存3,为位于所述传输装置I 一侧的本地缓存或者位于第三方位置且与所述显示装置2共享的缓存,用于缓存所述传输装置I发送的已有窗体的图像。
[0078]所述显示装置2,还用于由缓存4中获取所述已有窗体的图像;所述缓存4为与所述传输装置I的数据同步且位于所述显示装置2 —侧的缓存或者位于第三方位置且与所述传输装置I共享的缓存,用于缓存接收所述传输装置I发送的已有窗体的图像。
[0079]所述传输装置1,将所述已有窗体的原位置上的图像划分为若干区块,针对每一区块,识别其中包含的元素,如果存在一元素面积最大且占所述区块的面积的比重超过一门限,使用与所述元素的类别相应的压缩方式对所述区块进行压缩并随所述区块的位置信息一起传输至所述显示装置;所述显示装置2,还用于接收并解压缩各区块,依据所述各区块的位置信息对各区块进行重组还原所述图像,在所述原位置填充显示所述图像。
[0080]上述系统和装置与前述用于远程控制的分区传输方法的特征对应,不足之处可以参考前述用于远程控制的分区传输方法。
[0081]上述说明示出并描述了本发明的若干优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
【权利要求】
1.一种拖动图像的传输显示方法,其特征在于,应用于远程控制,包括: 在本地侧检测到一已有窗体的位置发生变化; 在网络侧将所述已有窗体替换显示到其新位置。
2.如权利要求1所述的传输显示方法,其特征在于,还包括: 在本地侧将所述已有窗体的原位置和新位置也一起传输至网络侧。
3.如权利要求2所述的传输显示方法,其特征在于,检测到一已有窗体的位置发生变化,进一步包括: 在本地侧检测到存在鼠标点击拖动操作且被拖动至新位置的所述已有窗体在之前的远程控制过程中已被传输至网络侧。
4.如权利要求3所述的传输显示方法,其特征在于,所述已有窗体在之前的远程控制过程中已被传输至网络侧,进一步包括: 在本地侧根据所述已有窗体的图像在所保存的之前远程控制过程中所发送的图像中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至网络侧。
5.如权利要求1所述的传输显示方法,其特征在于,在网络侧将所述已有窗体替换显示到其新位置,进一步包括: 在网络侧从所保存的之前远程控制过程中所接收的图像中获取所述已有窗体的图像,替换显示到其新位置。
6.如权利要求2所述的传输显示方法,其特征在于,还包括: 在网络侧在所述已有窗体的原位置填充显示背景。
7.如权利要求2所述的传输显示方法,其特征在于,还包括: 在本地侧对所述已有窗体的原位置上的图像进行抓取并发送至所述网络侧; 在网络侧在所述已有窗体的原位置填充显示所述图像。
8.如权利要求7所述的传输显示方法,其特征在于,进一步包括: 在本地侧将所述已有窗体的原位置上的图像划分为若干区块; 针对每一区块,识别其中包含的元素,如果存在一元素面积最大且占所述区块的面积的比重超过一门限,使用与所述元素的类别相应的压缩方式对所述区块进行压缩并随各区块的位置信息一起传输至网络侧; 在网络侧接收并解压缩各区块,依据所述各区块的位置信息对各区块进行重组还原所述图像,在所述原位置填充显示所述图像。
9.一种拖动图像的传输显示系统,其特征在于,应用于远程控制,包括:传输装置和显示装置; 所述传输装置,用于在本地侧检测到一已有窗体的位置发生变化; 所述显示装置,用于在网络侧将所述已有窗体替换显示到其新位置。
10.如权利要求9所述的传输显示系统,其特征在于, 所述传输装置,还用于将所述已有窗体的原位置和新位置也一起传输至所述显示装置。
11.如权利要求10所述的传输显示系统,其特征在于, 所述传输装置,还用于检测是否存在鼠标点击拖动操作且被拖动至新位置的所述已有窗体在之前的远程控制过程中是否已被传输至所述显示装置。
12.如权利要求11所述的传输显示系统,其特征在于, 所述传输装置,还用于根据所述已有窗体的图像在存储装置中进行命中,如果命中,判定所述已有窗体在之前的远程控制过程中已被传输至所述显示装置; 所述存储装置,为位于所述传输装置一侧的缓存或者位于第三方位置且与所述显示装置共享的缓存,用于缓存所述传输装置所发送的已有窗体的图像。
13.如权利要求9所述的传输显示系统,其特征在于, 所述显示装置,还用于由存储装置中获取所述已有窗体的图像; 所述存储装置,为位于所述显示装置一侧的缓存或者位于第三方位置且与所述传输装置共享的缓存,用于缓存接收所述传输装置所发送的已有窗体的图像。
14.如权利要求10所述的传输显示系统,其特征在于, 所述显示装置,还用于在所述已有窗体的原位置填充显示背景。
15.如权利要求10所述的传输显示系统,其特征在于, 所述传输装置,还用于对所述已有窗体的原位置上的图像进行抓取并发送至所述显示装置; 所述显示装置,还用于在所述已有窗体的原位置填充显示所述图像。
16.如权利要求15所述的传输显不系统,其特征在于, 所述传输装置,将所述已有窗体的原位置上的图像划分为若干区块,针对每一区块,识别其中包含的元素,如果存在一元素面积最大且占所述区块的面积的比重超过一门限,使用与所述元素的类别相应的压缩方式对所述区块进行压缩并随所述区块的位置信息一起传输至所述显示装置; 所述显示装置,还用于接收并解压缩各区块,依据所述各区块的位置信息对各区块进行重组还原所述图像,在所述原位置填充显示所述图像。
【文档编号】G06F3/0486GK103957235SQ201410128852
【公开日】2014年7月30日 申请日期:2011年2月21日 优先权日:2011年2月21日
【发明者】马小丁, 高云峥 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1