一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于桌面云的图像处理方法及装置与流程

2022-06-02 14:33:06 来源:中国专利 TAG:


1.本说明书实施例涉及图像处理技术领域,特别涉及两种基于桌面云的图像处理方法。


背景技术:

2.随着虚拟化技术的发展与成熟,云计算行业得到了快速普及和应用。桌面云作为云计算服务模式之一,使得用户能够通过便携的终端设备通过网络快速接入自己的桌面环境进行办公,提高了办公的灵活性。
3.现有的桌面云技术,服务端首先会获取到桌面屏幕内容的图像信息进行压缩,然后将压缩后的图像序列发送给客户端,客户端再对接收到的桌面图像序列进行解码后渲染显示。
4.而现有的桌面云技术中常用的压缩算法包括有损压缩算法和无损压缩算法,但是,有损压缩算法(如jpeg)虽然具有比较高的压缩比,但以损失图像质量为代价,尤其是屏幕内容图像中文字部分会出现模糊不清的情况;无损压缩算法(如rle、lz等)虽然能够保证图像的质量,但是压缩效率低,占用带宽大,传输效率低,不利于网络传输。
5.因此,继续提供一种可以兼顾图像质量以及传输效率的基于桌面云的图像处理方法。


技术实现要素:

6.有鉴于此,本说明书实施例提供了两种基于桌面云的图像处理方法。本说明书一个或者多个实施例同时涉及两种基于桌面云的图像处理模块,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
7.根据本说明书实施例的第一方面,提供了一种基于桌面云的图像处理方法,应用于服务端,包括:
8.获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据;
9.在确定所述调色板数据不存在重复的历史调色板数据的情况下,生成所述调色板数据中像素的像素索引;
10.根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;
11.将所述调色板数据以及所述调色板索引发送至客户端。
12.根据本说明书实施例的第二方面,提供了一种基于桌面云的图像处理方法,应用于客户端,包括:
13.接收服务端发送的待解析数据;
14.在所述待解析数据包括调色板数据以及调色板索引的情况下,根据所述调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据;
15.根据所述调色板像素数据获得目标屏幕图像。
16.根据本说明书实施例的第三方面,提供了一种基于桌面云的图像处理模块,应用于服务端,包括:
17.调色板生成模块,被配置为获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据;
18.像素索引生成模块,被配置为在确定所述调色板数据不存在重复的历史调色板数据的情况下,生成所述调色板数据中像素的像素索引;
19.调色板索引获得模块,被配置为根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;
20.数据发送模块,被配置为将所述调色板数据以及所述调色板索引发送至客户端。
21.根据本说明书实施例的第四方面,提供了一种基于桌面云的图像处理模块,应用于客户端,包括:
22.数据接收模块,被配置为接收服务端发送的待解析数据;
23.像素数据获得模块,被配置为在所述待解析数据包括调色板数据以及调色板索引的情况下,根据所述调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据;
24.图像获得模块,被配置为根据所述调色板像素数据获得目标屏幕图像。
25.根据本说明书实施例的第五方面,提供了一种计算设备,包括:
26.存储器和处理器;
27.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述基于桌面云的图像处理方法的步骤。
28.根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述图像处理方法的步骤。
29.根据本说明书实施例的第七方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述基于桌面云的图像处理方法的步骤。
30.本说明书一个实施例实现了两种基于桌面云的图像处理方法及装置,其中,应用于服务端的基于桌面云的图像处理方法包括获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据;在确定所述调色板数据不存在重复的历史调色板数据的情况下,生成所述调色板数据中像素的像素索引;根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;将所述调色板数据以及所述调色板索引发送至客户端。具体的,该图像处理方法通过对目标屏幕图像中文字的文字像素的提取形成调色板数据,后续基于该调色板数据以及该调色板数据中像素的像素索引表示目标屏幕图像,能够在保证该目标屏幕图像画质的前提下,大幅减少该目标屏幕图像在发送至客户端时的传输信息量,提升传输效率。
附图说明
31.图1是本说明书一个实施例提供的一种基于桌面云的图像处理系统的具体应用场景的示例图;
32.图2是本说明书一个实施例提供的一种应用于服务端的基于桌面云的图像处理方法的流程图;
33.图3是本说明书一个实施例提供的一种基于桌面云的图像处理方法的处理过程流
程图;
34.图4是本说明书一个实施例提供的一种应用于客户端的基于桌面云的图像处理方法的流程图;
35.图5是本说明书一个实施例提供的另一种基于桌面云的图像处理方法的处理过程流程图;
36.图6是本说明书一个实施例提供的一种基于桌面云的图像处理装置的结构示意图;
37.图7是本说明书一个实施例提供的另一种基于桌面云的图像处理装置的结构示意图;
38.图8是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
39.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
40.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
41.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
42.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
43.spice:simple protocol for independent computing environment(独立计算环境简单协议),一种虚拟桌面传输协议。
44.桌面云:可以通过瘦客户端或者其他任何与网络相连的设备来访问跨平台的应用程序、以及整个客户桌面;其中,瘦客户端(thin client)指的是在客户端-服务器网络体系中的一个基本无需应用程序的计算哑终端。
45.屏幕内容:由计算机屏幕渲染生成的图像内容,有别于摄像头采集的自然图像。
46.jpeg:joint photographic experts group是jpeg标准的产物,是面向连续色调静止图像的一种有损压缩标准;jpeg格式是最常用的图像文件格式,后缀名为.jpg或.jpeg。
47.rle:run length encoding,行程长度压缩算法,是一种最简单的无损数据压缩算法。
48.lz:lempel zip编码,是一种基于字典的编码算法。
49.glz:为使用基于历史的全局字典的lz。
50.bwt:burrows wheeler transform,一种数据转换算法,将原来的数据转换为一个相似的数据,转换后使得相同的字符位置连续或者相邻。
51.rgb:r代表red(红色),g代表green(绿色),b代表blue(蓝色)。
52.lz4:是一种无损压缩算法,压缩速度为每核心400mb/s(0.16字节/周期)。
53.lz77:采用字典的方式进行压缩的压缩算法。
54.huffman:一种编码方式,哈夫曼编码是可变字长编码(vlc)的一种,一种无损压缩算法。
55.lzw:通过建立字典,实现字符重用与编码,适用于source中重复率很高的文本压缩。
56.在本说明书中,提供了两种基于桌面云的图像处理方法,本说明书同时涉及两种基于桌面云的图像处理模块,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
57.参见图1,图1示出了根据本说明书一个实施例提供的一种基于桌面云的图像处理系统的具体应用场景的示例图。
58.图1的图像处理系统包括服务端102和客户端104,其中,服务端102包括图像采集模块1022、图像处理模块1024、数据发送模块1026;客户端104包括数据接收模块1042、图像处理模块1044、渲染显示模块1046。
59.将该图像处理系统应用于桌面云场景中,服务端102为桌面云服务端、客户端104为桌面云客户端;具体实现方式如下所述:
60.服务端102的图像采集模块1022在确定目标电脑的桌面屏幕中的屏幕图像有更新的情况下,采集该桌面屏幕中更新后的屏幕图像,在确定该屏幕图像为文字图像的情况下,将该屏幕图像发送至图像处理模块1024。
61.图像处理模块1024采集桌面屏幕中的文字图像中每个文字的文字像素,并根据该文字像素生成调色板数据;具体的,桌面屏幕中的文字图像中每一个文字像素都是由rgb数据组成,图像处理模块1024可以逐一遍历该文字图像,提取该文字图像中每个文字的rgb颜色种类形成调色板数据;该调色板数据是由多组rgb数据组成,在获得该调色板数据之后,将该调色板数据与历史已经发送过的调色板缓存列表中的调色板数据进行匹配。
62.如果可以在该调色板缓存列表中找到和该调色板数据相同的历史调色板数据,则表示该调色板数据为旧的调色板数据,此时查询该历史调色板数据的调色板标识,然后将该调色板标识填充到待发送的数据缓冲区中;如果没有在该调色板缓存列表中找到和该调色板数据相同的历史调色板数据,则表示该调色板数据为新的调色板数据,此时将该调色板数据添加至存储历史已经发送的调色板数据的调色板缓存列表中,并将该调色板数据填充到数据发送模块1026的待发送的数据缓冲区中。
63.图像处理模块1024确定该调色板数据中每个rgb数据的索引,然后逐一遍历文字图像,用该调色板数据中每个rgb数据的索引替换该文字图像中原始像素的rgb值,生成针对该文字图像的调色板索引。
64.具体的,该文字图像中每个文字的每个像素均是由一个rgb数据组成,占用至少3个字节的空间,而索引一般占用1个字节,通过该调色板数据中每个rgb数据的索引替换该文字图像中原始像素的rgb值,能够达到压缩效果,可以极大的减小该文字图像的空间占
用。
65.图像处理模块1024将该调色板索引先进行bet转换,再进行rle压缩,最后将压缩后的该调色板索引填充到数据发送模块1026的待发送的数据缓冲区中。
66.其中,bwt算法会将数据块中相同的数据块尽量放在一起,rle适合压缩连续重复的数据,两者结合能提高压缩率,将该调色板索引进行bet转换,再进行rle压缩,可以进一步的减少该调色板索引的大小,以提高该调色板索引在后续传输过程中的带宽占用以及传输效率。
67.图像处理模块1024在完成上述图像处理后,数据发送模块1026将该待发送的数据缓冲区中的调色板数据或者调色板标识、以及调色板索引发送至客户端104。
68.客户端104的数据接收模块1042,在接收到服务端102的数据发送模块1026发送的图像数据,其中,该图像数据中包括调色板数据或者调色板标识、以及调色板索引;数据接收模块1042将该图像数据发送至图像处理处理模块1044。
69.图像处理模块1044解析该调色板索引,即将先将该调色板索引进行反rle操作,然后进行逆bwt,还原出原始真实的调色板索引;再根据该调色板数据、或者基于该调色板标识从调色板缓存列表中查找到的调色板数据,结合该调色板索引从该调色板数据中查询到代表的rgb数据,从而还原原始的文字图像;再将该文字图像发送至渲染显示模块1046;渲染显示模块1046对该文字图像进行渲染并显示。
70.本说明书实施例提供的基于桌面云的图像处理系统,利用文字图像颜色数量较少的特点,提取出文字图像的颜色种类,用调色板数据和调色板索引替代原始文字图像的rgb信息,可以大幅减少图像数据传输。为了进一步的节省传输过程中该调色板索引的空间占用,还可以用bwt对该调色板索引进行预处理后再进行rle压缩,可以大幅提高图像压缩效率,从而达到既不损失图像质量又能大幅提升压缩率,加快图像传输速度。
71.参见图2,图2示出了根据本说明书一个实施例提供的一种基于桌面云的图像处理方法的流程图,该方法应用于服务端,具体包括以下步骤。
72.步骤202:获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据。
73.其中,目标对象可以理解为任意目标终端,即待进行屏幕图像压缩的任意电脑、平板等终端。目标屏幕图像可以理解为目标终端上显示的屏幕图像,例如文字图像等。而文字像素则可以理解为形成每个文字的rgb数据。
74.具体实施时,服务端在确定目标对象的屏幕图像存在更新的情况下,才会采集该目标图像中更新的屏幕图像,以避免对目标对象中的屏幕图像进行重复获取,造成网络资源浪费。
75.具体实现方式如下所述:
76.所述获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据,包括:
77.在检测到目标对象的屏幕图像更新的情况下,根据更新的屏幕图像确定目标屏幕图像;
78.获取所述目标屏幕图像中文字的文字像素;
79.根据所述文字像素生成调色板数据。
80.其中,目标对象的屏幕图像更新,可以理解为目标终端的屏幕图像中的内容存在变化。
81.具体的,目标对象与服务端连接,只要目标对象的屏幕图像的内容有更新,服务端就会获取更新的屏幕图像;在确定更新的屏幕图像为目标屏幕图像的情况下,获取该目标屏幕图像中文字的文字像素,以形成调色板数据。
82.实际应用中,由于文字图像的颜色种类(rgb颜色种类或者rgb数据)的数量较少,因此在目标屏幕图像为文字图像的情况下,采用本说明书实施例的图像处理方法可以极大的减少图像数据传输。具体实现方式如下所述:
83.所述在检测到目标对象的屏幕图像更新的情况下,根据更新的屏幕图像确定目标屏幕图像,包括:
84.在检测到目标对象的屏幕图像更新的情况下,获取所述目标对象的更新屏幕图像;
85.在确定所述更新屏幕图像满足预设图像条件的情况下,将所述更新屏幕图像确定为目标屏幕图像。
86.仍以目标对象为目标终端为例,服务端在检测到目标终端的屏幕上显示的屏幕图像的图像内容有更新的情况下,获取该目标终端更新后的更新屏幕图像;在确定该更新屏幕图像满足预设图像条件的情况下,将该更新屏幕图像确定为目标屏幕图像;其中,预设图像条件可以理解为屏幕图像中为文字内容,或者屏幕图像中的文字内容的份额较大,如屏幕图像中的文字内容占据屏幕图像的三分之二等。
87.本说明书实施例中,利用文字图像的rgb数据较少的特点,提取目标终端的目标屏幕图像中每个文字的文字rgb像素,用于形成调色板数据,后续可以根据该调色板数据以及根据该调色板数据确定的调色板索引替代该目标屏幕图像中每个文字的文字rgb像素,可以大幅减少目标屏幕图像的图像数据传输带宽占用。
88.此外,由于目标屏幕图像中的文字的文字像素可能存在重复的情况,那么为了节省空间占用,需要对重复的文字像素进行去重,再基于去重后的文字像素生成调色板数据,以保证生成的调色板数据的rgb数据(即文字像素)的完整性的情况下,减小其后续的传输带宽占用。具体实现方式如下所述:
89.所述根据所述文字像素生成调色板数据,包括:
90.对所述目标屏幕图像中文字的文字像素进行去重;
91.根据去重后的所述文字像素生成调色板数据。
92.具体的,服务端遍历该目标屏幕图像中的每个文字,采集该目标屏幕图像中每个文字的文字像素,然后对采集的所有文字的文字像素去重,再根据去重后的文字像素生成调色板数据。
93.实际应用中,提取的目标对象的目标屏幕图像中文字的文字像素(即rgb数据)的种类为:0x0000~0xffffff之间的数据,种类不固定;在典型的场景,文字是黑色的,背景是白色的,那么提取并去重后的文字像素就两种:0x000000(黑色),0xffffff(白色);其中,0x000000表示r=0x00,b=0x00,g=0x00。后续根据该文字像素生成的调色板数据中仅包括:0x000000(黑色)、0xffffff(白色)两种rgb数据。
94.步骤204:在确定所述调色板数据不存在重复的历史调色板数据的情况下,生成所述调色板数据中像素的像素索引。
95.其中,历史调色板数据可以理解为服务端在历史上,根据采集的屏幕图像中文字
的文字像素生成的调色板数据。
96.实际应用中,服务端的历史调色板数据存储在调色板缓存列表中,即该调色板缓存列表中存储的为已经发送过的调色板数据。在当前生成的调色板数据在该调色板缓存列表中不存在历史调色板数据的情况下,则表明该当前生成的调色板数据为新的调色板数据,此时,为该调色板数据中的像素生成像素索引,并将该当前生成的调色板数据添加至该调色板缓存列表中,以及将该当前生成的调色板数据填充至待发送的数据缓冲区。
97.步骤206:根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引。
98.具体的,在确定调色板数据中每个像素的像素索引之后,将该像素索引替换目标屏幕图像中文字的文字像素,获得目标屏幕图像的调色板索引。即替换后的该目标屏幕图像中文字的文字像素均以像素索引替代。
99.实际应用中,目标屏幕图像中每个像素由一个rgb数据组成,占用至少3个字节的空间,而调色板索引最多占用1个字节;因此根据生成的调色板数据,将每一个rgb像素替换成该调色板数据中每个rgb像素对应的调色板索引,能够达到图像压缩的效果。
100.步骤208:将所述调色板数据以及所述调色板索引发送至客户端。
101.其中,客户端可以理解为用户的便携操作终端。
102.具体的,服务端在根据调色板数据中每个像素的像素索引替换目标屏幕图像中文字的文字像素,获得目标屏幕图像的调色板索引之后,将该调色板索引也填充至待发送的数据缓冲区,并将该调色板数据以及调色板索引发送至客户端。
103.为了进一步的提高图像传输效率,在根据调色板数据中每个像素的像素索引替换目标屏幕图像中文字的文字像素,获得目标屏幕图像的调色板索引之后,还可以对调色板索引进行数据转换和压缩。具体实现方式如下所述:
104.所述将所述调色板数据以及所述调色板索引发送至客户端,包括:
105.将所述调色板索引通过预设数据转换算法进行数据转换,获得数据转换后的调色板索引;
106.将所述数据转换后的调色板索引通过预设数据压缩算法进行压缩,获得压缩后的调色板索引;
107.将所述调色板数据以及所述压缩后的所述调色板索引发送至客户端。
108.其中,预设数据转换算法以及预设压缩算法可以根据实际应用进行设置,在此不作任何限定。例如预设数据转换算法包括但不限于bwt算法,预设压缩算法包括但不限于rle算法、lz4算法、lz77算法、huffman算法、zip算法、lzw算法等。
109.以预设数据转换算法为bwt算法,预设压缩算法为rle算法为例,在生成调色板索引之后,将该调色板索引通过bwt算法进行数据转换后,再进行rle算法进行数据压缩,最后将数据转换以及数据压缩后的调色板索引填充至待发送的数据缓冲区。后续服务端将该待发送的数据缓冲区中的调色板数据以及调色板索引发送至客户端。
110.本说明书实施例中,通过预设数据转换算法可以将数据块中相同的数据块尽量放在一起,采用预设数据压缩算法可以压缩连续重复的数据,将预设数据转换算法和预设压缩算法两者结合可以进一步的提高图像压缩率,从而进一步的减少发送至客户端的调色板索引的带宽占用。
111.另一种实施例方式中,在该调色板数据在该调色板缓存列表中存在相同的历史调色板数据的情况下,可以直接获取与该调色板数据相同的历史调色板数据的调色板标识,以及该历史调色板数据中像素的像素索引;后续可以直接将该调色板标识以及、根据该历史调色板数据中像素的像素索引替换目标屏幕图像中文字的文字像素,获得的目标屏幕图像的调色板索引发送至客户端。具体实现方式如下所述:
112.所述生成调色板数据之后,还包括:
113.在确定所述调色板数据存在重复的历史调色板数据的情况下,确定所述历史调色板数据的调色板标识,以及所述历史调色板数据中像素的像素索引;
114.根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;
115.将所述调色板标识以及所述调色板索引发送至客户端。
116.其中,历史调色板数据的详细介绍可以参见上述实施例,在此不再赘述。
117.具体的,服务端在确定该调色板数据在调色板缓存列表中存在重复的历史调色板数据的情况下,从该调色板缓存列表中确定与该调色板数据相同的历史调色板数据的调色板标识、以及该历史调色板数据中像素的像素索引。
118.再根据该像素索引替换目标屏幕图像中文字的文字像素,获得该目标屏幕图像的调色板索引,最后将该调色板标识以及调色板数据发送至客户端。
119.实际应用中,历史调色板数据已经发送过客户端,客户端中存储有该历史调色板数据的详细内容,因此服务端仅需要将历史调色板数据的调色板标识发送至客户端,后续客户端就可以根据该调色板标识查找到对应的历史调色板数据结合调色板索引,对目标屏幕图像进行还原。通过此种发送调色板标识的方式,进一步的提高图像数据传输效率。
120.此外,该实施方式中,为了进一步的提高图像传输效率,在根据历史调色板数据中每个像素的像素索引替换目标屏幕图像中文字的文字像素,获得目标屏幕图像的调色板索引之后,还可以对调色板索引进行数据转换和压缩。具体实现方式如下所述:
121.所述将所述调色板标识以及所述调色板索引发送至客户端,包括:
122.将所述调色板索引通过预设数据转换算法进行数据转换,获得数据转换后的调色板索引;
123.将所述数据转换后的调色板索引通过预设数据压缩算法进行压缩,获得压缩后的调色板索引;
124.将所述调色板标识以及所述压缩后的所述调色板索引发送至客户端。
125.其中,预设数据转换算法以及预设压缩算法可以根据实际应用进行设置,在此不作任何限定。例如预设数据转换算法包括但不限于bwt算法,预设压缩算法包括但不限于rle算法、lz4算法、lz77算法、huffman算法、zip算法、lzw算法等。
126.以预设数据转换算法为bwt算法,预设压缩算法为rle算法为例,在生成调色板索引之后,将该调色板索引通过bwt算法进行数据转换后,再进行rle算法进行数据压缩,最后将数据转换以及数据压缩后的调色板索引填充至待发送的数据缓冲区。后续服务端将该待发送的数据缓冲区中的调色板标识以及调色板索引发送至客户端。
127.本说明书实施例提供的该基于桌面云的图像处理方法,通过对目标屏幕图像中文字的文字像素的提取形成调色板数据,后续基于该调色板数据以及该调色板数据中像素的
像素索引表示目标屏幕图像,能够在保证该目标屏幕图像画质的前提下,大幅减少该目标屏幕图像在发送至客户端时的传输信息量,提升传输效率。
128.下述结合附图3,以本说明书提供的图像处理方法在桌面云服务端的应用为例,对所述图像处理方法进行进一步说明。其中,图3示出了本说明书一个实施例提供的一种基于桌面云的图像处理方法的处理过程流程图,具体包括以下步骤。
129.步骤302:获取目标终端的屏幕内容文字图像。
130.步骤304:提取该屏幕内容文字图像中颜色种类信息,形成调色板数据。
131.其中,该颜色种类信息可以理解为该屏幕内容文字图像中的文字的文字像素,即文字的rgb数据。
132.步骤306:判断该调色板数据是否为新数据,若是,则执行步骤308,若否,则执行步骤310。
133.具体的,判断该调色板数据是否为新数据,即判断该调色板数据是否在调色板缓存列表中存在相同的历史调色板数据。
134.步骤308:将该调色板数据加入调色板缓存列表中,并填充至待发送的数据缓冲区。
135.步骤310:确定与该调色板数据相同的历史调色板数据,并将该历史调色板数据在调色板缓存列表中的id填充至待发送的数据缓冲区。
136.步骤312:根据调色板数据中文字像素的像素索引或者历史调色板数据中文字像素的像素索引,将该像素索引逐一遍历并替换该屏幕内容文字图像中的文字的文字像素,形成调色板索引。
137.步骤314:将该调色板索引先进行bwt转换,再进行rle压缩后填充至待发送的数据缓冲区。
138.步骤316:将待发送的数据缓冲区的调色板数据或者历史调色板数据的id、以及调色板索引发送至客户端。
139.本说明书实施例提供的该基于桌面云的图像处理方法,可以利用文字图像颜色数少的特点,提取出目标终端的屏幕内容文字图像的颜色种类,用调色板和索引替代原始图像的rgb数据,使得该图像在向客户端传输的过程中,可以大幅减少图像数据传输的带宽占用以及提高其传输效率;并且由于文字图像的颜色种类比较单一,那么调色板数据极大可能会存在重复性,那么在存在相同的历史调色板数据的情况下,可以使用历史调色板数据对应的id替代已经发送过的调色板数据,可以进一步减少图像数据传输中的网络资源占用。并且为了再一步的提升传输效率,可以对调色板索引用bwt预处理后再进行rle压缩,可以大幅提高图像数据压缩效率,从而达到既不损失质量又能大幅提升压缩率的效果。
140.参见图4,图4示出了根据本说明书一个实施例提供的一种基于桌面云的图像处理方法的流程图,该方法应用于客户端,具体包括以下步骤。
141.步骤402:接收服务端发送的待解析数据。
142.其中,服务端可以理解为上述实施例的桌面云服务端,客户端可以理解为上述实施例的桌面云客户端。
143.结合上述实施例可知,客户端接收的服务端发送的待解析数据,可以理解为客户端接收服务端发送的遍历目标屏幕图像中文字的文字像素生成的调色板数据、以及根据该
调色板数据中文字像素的像素索引替换该目标屏幕图像中文字的文字像素后获得的调色板索引,且该调色板索引可以理解为进行数据转换以及数据压缩后的调色板索引;或者可以理解为客户端接收服务端发送的调色板标识、以及根据该调色板标识对应的历史调色板数据中文字像素的像素索引替换该目标屏幕图像中文字的文字像素后获得的调色板索引,且该调色板索引可以理解为进行数据转换以及数据压缩后的调色板索引。
144.步骤404:在所述待解析数据包括调色板数据以及调色板索引的情况下,根据所述调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据。
145.具体的,在确定待解析数据中包括的为调色板数据以及调色板索引的情况下,根据该调色板数据中的文字像素替换调色板索引,获得调色板像素数据。
146.即确定调色板索引中每个像素索引对应的文字像素,将调色板索引中的每个像素索引替换其对应的文字像素,以生成对应的调色板像素数据。
147.实际应用中,在服务端发送的待解析数据中包括调色板标识、以及根据该调色板标识对应的历史调色板数据中文字像素的像素索引替换该目标屏幕图像中文字的文字像素后获得的调色板索引的情况下,则需要先根据该调色板标识确定对应的历史调色板数据,然后根据该历史调色板数据中的文字像素替换该调色板索引,准确的获得调色板像素数据。具体实现方式如下所述:
148.所述接收服务端发送的待解析数据之后,还包括:
149.在所述待解析数据包括调色板标识以及调色板索引的情况下,根据所述调色板标识确定历史调色板数据;
150.根据所述历史调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据。
151.其中,客户端在确定待解析数据中包括调色板标识以及调色板索引的情况下,根据该调色板标识从调色板缓存列表中获取与该调色板标识对应的历史调色板数据,在根据该历史调色板数据中的文字像素替换调色板索引,获得调色板像素数据。
152.此外,在服务端发送的调色板索引为进行数据转换以及数据压缩之后的调色板索引数据的情况下,在根据调色板索引以及调色板数据获取调色板像素数据之前,需要对该调色板索引进行解压缩以及反向数据转换,以使得还原真实的调色板索引数据。具体实现方式如下所述:
153.所述根据所述调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据,还包括:
154.将所述调色板索引通过预设数据解压缩算法进行数据解压缩,获得数据解压缩后的调色板索引;
155.将所述数据解压缩后的调色板索引通过预设数据转换算法进行数据转换,获得转换后的调色板索引。
156.其中,预设数据解压缩算法与上述实施例的预设数据压缩算法对应;预设数据转换算法为上述实施例的预设转换算法的逆向算法。
157.具体的,若该调色板索引在服务端进行过数据转换和压缩,则客户端在接收到服务端发送的调色板索引之后,需要先将该调色板索引通过预设数据解压缩算法进行数据解压缩,获得数据解压缩后的调色板索引,并将数据解压缩后的调色板索引通过预设数据转
换算法进行数据转换,获得转换后的调色板索引;从而还原出真实的调色板索引数据。
158.而在还原出真实的调色板索引数据之后,根据该调色板数据或者历史调色板数据中的文字像素替换该调色板索引,获得真实的调色板像素数据。
159.步骤406:根据所述调色板像素数据获得目标屏幕图像。
160.具体的,在将该调色板数据或者历史调色板数据中的文字像素替换该调色板索引,获得真实的调色板像素数据之后,即可根据该调色板像素数据获得目标屏幕图像。具体实现方式如下所述:
161.所述根据所述调色板像素数据获得目标屏幕图像,包括:
162.对所述调色板像素数据进行渲染,获得目标屏幕图像。
163.实际应用中,客户端在确定调色板像素数据之后,对该调色板像素数据进行渲染,以获得真实的目标屏幕图像。
164.本说明书实施例中,客户端在接收服务端发送的待解析数据之后,会首先判断服务端发送的该待解析数据发送过来的调色板内容为调色板标识还是新的调色板数据,若是新的调色板数据,则将该调色板数据添加至调色板缓存列表中,若是调色板标识,则从调色板缓存列表中获取对应的历史调色板数据;然后将编码后的调色板索引数据进行反rle操作,再进行逆bwt操作,还原出原始真实的调色板索引;而调色板索引可以从调色板数据中查询到代表的rgb数据。因此,根据调色板索引和调色板数据,还原成原始图像(即目标屏幕图像),最后将该原始图像数据进行渲染显示,通过此种方式还原的目标屏幕图像既不会损失其图像质量,还可以在服务端发送客户端时占用较少的带宽,传输效率较高,以提高用户使用体验。
165.下述结合附图5,以本说明书提供的图像处理方法在桌面云客户端的应用为例,对所述图像处理方法进行进一步说明。其中,图5示出了本说明书一个实施例提供的另一种基于桌面云的图像处理方法的处理过程流程图,具体包括以下步骤。
166.步骤502:接收服务端发送的图像数据。
167.步骤504:确定该图像数据中包括调色板数据以及调色板索引,或者该图像数据中包括调色板标识以及调色板索引。
168.步骤506:在确定该图像数据中包括调色板数据以及调色板索引的情况下,将该调色板数据添加到调色板缓存列表中。
169.步骤508:在该图像数据中包括调色板标识以及调色板索引的情况下,根据该调色板标识从调色板缓存列表中获取对应的历史调色板数据。
170.步骤510:解析该调色板索引,对该调色板索引先反rle操作再逆bwt处理,获得真实的调色板索引。
171.步骤512:根据调色板数据或者历史调色板数据,将调色板索引中的像素索引替换为对应的rgb数据,还原成像素图像数据。
172.步骤514:对该像素图像数据进行渲染,获得并显示原始图像。
173.本说明书实施例中,客户端在接收服务端发送的待解析数据之后,会首先判断服务端发送的该待解析数据发送过来的调色板内容为调色板标识还是新的调色板数据,若是新的调色板数据,则将该调色板数据添加至调色板缓存列表中,若是调色板标识,则从调色板缓存列表中获取对应的历史调色板数据;然后将编码后的调色板索引数据进行反rle操
作,再进行逆bwt操作,还原出原始真实的调色板索引;而调色板索引可以从调色板数据中查询到代表的rgb数据。因此,根据调色板索引和调色板数据,还原成原始图像(即目标屏幕图像),最后将该原始图像数据进行渲染显示,通过此种方式还原的目标屏幕图像既不会损失其图像质量,还可以在服务端发送客户端时占用较少的带宽,传输效率较高,以提高用户使用体验。
174.与上述方法实施例相对应,本说明书还提供了一种基于桌面云的图像处理装置实施例,图6示出了本说明书一个实施例提供的一种基于桌面云的图像处理装置的结构示意图。如图6所示,应用于服务端,包括:
175.调色板生成模块602,被配置为获取目标对象的目标屏幕图像中文字的文字像素,生成调色板数据;
176.像素索引生成模块604,被配置为在确定所述调色板数据不存在重复的历史调色板数据的情况下,生成所述调色板数据中像素的像素索引;
177.调色板索引获得模块606,被配置为根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;
178.数据发送模块608,被配置为将所述调色板数据以及所述调色板索引发送至客户端。
179.可选地,所述调色板生成模块602,进一步被配置为:
180.在检测到目标对象的屏幕图像更新的情况下,根据更新的屏幕图像确定目标屏幕图像;
181.获取所述目标屏幕图像中文字的文字像素;
182.根据所述文字像素生成调色板数据。
183.可选地,所述调色板生成模块602,进一步被配置为:
184.在检测到目标对象的屏幕图像更新的情况下,获取所述目标对象的更新屏幕图像;
185.在确定所述更新屏幕图像满足预设图像条件的情况下,将所述更新屏幕图像确定为目标屏幕图像。
186.可选地,所述调色板生成模块602,进一步被配置为:
187.对所述目标屏幕图像中文字的文字像素进行去重;
188.根据去重后的所述文字像素生成调色板数据。
189.可选地,所述装置,还包括:
190.发送模块,被配置为:
191.在确定所述调色板数据存在重复的历史调色板数据的情况下,确定所述历史调色板数据的调色板标识,以及所述历史调色板数据中像素的像素索引;
192.根据所述像素索引替换所述目标屏幕图像中文字的文字像素,获得所述目标屏幕图像的调色板索引;
193.将所述调色板标识以及所述调色板索引发送至客户端。
194.可选地,所述数据发送模块608,进一步被配置为:
195.将所述调色板索引通过预设数据转换算法进行数据转换,获得数据转换后的调色板索引;
196.将所述数据转换后的调色板索引通过预设数据压缩算法进行压缩,获得压缩后的调色板索引;
197.将所述调色板数据以及所述压缩后的所述调色板索引发送至客户端。
198.可选地,所述发送模块,进一步被配置为:
199.将所述调色板索引通过预设数据转换算法进行数据转换,获得数据转换后的调色板索引;
200.将所述数据转换后的调色板索引通过预设数据压缩算法进行压缩,获得压缩后的调色板索引;
201.将所述调色板标识以及所述压缩后的所述调色板索引发送至客户端。
202.本说明书实施例提供的该图像处理装置,通过对目标屏幕图像中文字的文字像素的提取形成调色板数据,后续基于该调色板数据以及该调色板数据中像素的像素索引表示目标屏幕图像,能够在保证该目标屏幕图像画质的前提下,大幅减少该目标屏幕图像在发送至客户端时的传输信息量,提升传输效率。
203.上述为本实施例的一种基于桌面云的图像处理装置的示意性方案。需要说明的是,该基于桌面云的图像处理装置的技术方案与上述的基于桌面云的图像处理方法的技术方案属于同一构思,基于桌面云的图像处理装置的技术方案未详细描述的细节内容,均可以参见上述基于桌面云的图像处理方法的技术方案的描述。
204.与上述方法实施例相对应,本说明书还提供了另一种基于桌面云的图像处理装置实施例,图7示出了本说明书一个实施例提供的另一种基于桌面云的图像处理装置的结构示意图。如图7所示,应用于服务端,包括:
205.数据接收模块702,被配置为接收服务端发送的待解析数据;
206.像素数据获得模块704,被配置为在所述待解析数据包括调色板数据以及调色板索引的情况下,根据所述调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据;
207.图像获得模块706,被配置为根据所述调色板像素数据获得目标屏幕图像。
208.可选地,所述装置,还包括:
209.图像确定模块,被配置为:
210.在所述待解析数据包括调色板标识以及调色板索引的情况下,根据所述调色板标识确定历史调色板数据;
211.根据所述历史调色板数据中的文字像素替换所述调色板索引,获得调色板像素数据。
212.可选地,所述装置,还包括:
213.数据处理模块,被配置为:
214.将所述调色板索引通过预设数据解压缩算法进行数据解压缩,获得数据解压缩后的调色板索引;
215.将所述数据解压缩后的调色板索引通过预设数据转换算法进行数据转换,获得转换后的调色板索引。
216.可选地,所述图像获得模块706,进一步被配置为:
217.对所述调色板像素数据进行渲染,获得目标屏幕图像。
218.本说明书实施例提供的图像处理装置,客户端在接收服务端发送的待解析数据之后,会首先判断服务端发送的该待解析数据发送过来的调色板内容为调色板标识还是新的调色板数据,若是新的调色板数据,则将该调色板数据添加至调色板缓存列表中,若是调色板标识,则从调色板缓存列表中获取对应的历史调色板数据;然后将编码后的调色板索引数据进行反rle操作,再进行逆bwt操作,还原出原始真实的调色板索引;而调色板索引可以从调色板数据中查询到代表的rgb数据。因此,根据调色板索引和调色板数据,还原成原始图像(即目标屏幕图像),最后将该原始图像数据进行渲染显示,通过此种方式还原的目标屏幕图像既不会损失其图像质量,还可以在服务端发送客户端时占用较少的带宽,传输效率较高,以提高用户使用体验。
219.上述为本实施例的一种基于桌面云的图像处理装置的示意性方案。需要说明的是,该基于桌面云的图像处理装置的技术方案与上述的基于桌面云的图像处理方法的技术方案属于同一构思,基于桌面云的图像处理装置的技术方案未详细描述的细节内容,均可以参见上述基于桌面云的图像处理方法的技术方案的描述。
220.图8示出了根据本说明书一个实施例提供的一种计算设备800的结构框图。该计算设备800的部件包括但不限于存储器810和处理器820。处理器820与存储器810通过总线830相连接,数据库850用于保存数据。
221.计算设备800还包括接入设备840,接入设备840使得计算设备800能够经由一个或多个网络860通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备840可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
222.在本说明书的一个实施例中,计算设备800的上述部件以及图8中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图8所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
223.计算设备800可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备800还可以是移动式或静止式的服务器。
224.其中,处理器820用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述基于桌面云的图像处理方法的步骤。
225.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的图像处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述基于桌面云的图像处理方法的技术方案的描述。
226.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述基于桌面云的图像处理方法的步骤。
227.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存
储介质的技术方案与上述的图像处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述基于桌面云的图像处理方法的技术方案的描述。
228.本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述图像处理方法的步骤。
229.上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的基于桌面云的图像处理方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述基于桌面云的图像处理方法的技术方案的描述。
230.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
231.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,randomaccess memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
232.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
233.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
234.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献