图片服务器及图片数据提供方法

文档序号:7863944阅读:557来源:国知局
专利名称:图片服务器及图片数据提供方法
技术领域
本发明涉及图像处理领域,具体涉及一种图片服务器及图片数据提供方法。
背景技术
随着移动设备的高速发展,移动设备的类型和功能也越来越丰富。目前,多数移动设备都提供有图片浏览功能,因此,越来越多的人通过移动设备来浏览图片。但是,由于移动设备本身的局限性,例如,硬件配置和网络带宽远不如一些固定设备(例如PC机),因此,采用移动设备浏览图片很容易出现图片加载缓慢甚至加载失败的情形。而且,由于图片一般数据量较大,与浏览文字相比,浏览图片需要消耗更多的网络流量,但目前很多移动设备的网络流量都是有限度的,所以,频繁浏览图片很容易造成网络流量
超出限度,从而为用户增加很多额外的资费。另外,随着移动设备类型的丰富,移动设备的屏幕尺寸也变得多种多样,但是,无论面向的是何种尺寸的移动设备,网络侧提供的图片数据通常都是一样的,因此,当用户使用移动设备浏览图片时,移动设备上显示的图片内容往往无法与移动设备的尺寸完全匹配。

发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的图片服务器及图片数据提供方法。依据本发明的一个方面,提供了一种图片数据提供方法,包括步骤接收计算终端发送的图片访问请求,图片访问请求包括要访问的图片信息以及计算终端的终端类型信息;预先设置并存储终端类型信息与图片的压缩比之间的对照表,查找对照表,确定与终端类型信息对应的图片的压缩比;获取与图片访问请求中的图片信息相对应的图片数据,根据所确定的压缩比对图片数据进行压缩处理;以及将经压缩处理后的图片数据发送给计算终端。可选地,其中图片访问请求还包括计算终端的网络类型信息;以及方法还包括根据计算终端的网络类型信息来确定图片的压缩比。可选地,计算终端的终端类型信息包括下列中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机。可选地,计算终端的终端类型信息包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。可选地,其中计算终端的网络类型信息包括下列中的一种或者多种GPRS、CDMA、3G、4G 和 WIFI 网络。可选地,图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。可选地,其中计算终端的网络类型信息以参数形式包含在图片访问请求中。
可选地,根据网络类型信息确定图片的压缩比的步骤包括预先设置并存储网络类型信息与图片的压缩比之间的对照表,查找对照表,确定与网络类型信息对应的图片的压缩比。可选地,根据所确定的压缩比对图片数据进行压缩处理的步骤包括颜色转换、DCT变换、量化和编码,其中,量化进一步包括根据压缩比确定量化时的质量因子;通过质量因子确定量化的步长并根据步长进行量化。根据本发明的另一方面,提供了一种图片服务器,包括网络接口,适于接收计算终端发送的图片访问请求,图片访问请求包括要访问的图片信息以及计算终端的终端类型信息,并且将服务器所生成的图片数据传输给计算终端;类型判定器,适于获取图片访问请求中包括的计算终端的终端类型信息;压缩比判定器,适于根据类型判定器获取的计算终端的终端类型信息确定图片的压缩比;图片处理器,适于获取与图片访问请求中的图片信息相对应的图片数据,根据所确定的压缩比对图片数据进行压缩处理,并且经由网络接口将经压缩处理的图片数据传输给计算终端;以及图片存储器,适于存储图片信息相对应的图片数据;其中,所述压缩比判定器进一步适于预先设置并存储终端类型信息或网络类 型信息与图片的压缩比之间的对照表,查找对照表,确定与终端类型或网络类型对应的图片的压缩比。可选地,其中,图片访问请求还包括计算终端的网络类型信息,类型判定器还适于获取图片访问请求中包括的计算终端的网络类型信息,压缩比判定器还适于根据计算终端的网络类型信息来确定图片的压缩比。可选地,计算终端包括下列终端类型中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机。可选地,计算终端的终端类型信息包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。可选地,其中计算终端的网络包括下列网络类型中一种或者多种GPRS、CDMA、3G、4G和WIFI网络。可选地,图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。可选地,其中计算终端的网络类型信息以参数形式包含在图片访问请求中。可选地,图片处理器进一步适于对图片数据进行颜色转换、DCT变换、量化和编码,其中,量化进一步包括根据压缩比确定量化时的质量因子;通过质量因子确定量化的步长并根据步长进行量化。根据本发明的图片服务器及图片数据提供方法,可以根据计算终端的终端类型信息来确定对图片进行压缩时的压缩比并根据确定的压缩比对图片进行压缩,由此解决了移动终端访问图片时加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载图片,且降低了图片访问时的流量消耗的有益效果。而且,本发明中的向计算终端提供图片数据的方法和相应的服务器,还可以进一步确定计算终端的屏幕尺寸信息,根据计算终端的屏幕尺寸对图片进行压缩等处理方式,使得计算终端上显示的图片内容能够与终端的尺寸相匹配。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式



通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图I示出了根据本发明一个实施例的图片数据提供方法流程图;图2a至图2c分别示出了根据本发明提供的图片数据提供方法对图片设置压缩比并进行压缩之前和之后在移动类型的计算终端上的显示效果;以及
图3示出了根据本发明一个实施例的图片服务器以及与该服务器相连的计算终端。
具体实施例方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图I示出了根据本发明一个实施例的图片数据提供方法流程图。如图I所示,该方法始于步骤S110,在步骤SllO中,接收计算终端发送的图片访问请求,该图片访问请求中包括要访问的图片信息以及计算终端的终端类型信息。可选地,步骤SllO可通过如下方式实现当计算终端的用户需要通过计算终端访问图片时,通常会通过计算终端上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端向提供服务的服务器等设备发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器能够找到该图片并提供给用户,以及计算终端的终端类型信息,以便于服务器了解计算终端的终端类型。可选地,计算终端发送的图片访问请求基于HTTP协议构造,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端每次要访问图片时发送的图片访问请求中都包含UA信息。为了便于理解本发明,下面先简单介绍一下UA信息的具体内容。UA是一个特殊的字符串头,该字符串头中可以包含一系列有关于计算终端的相关信息,例如,计算终端所使用的操作系统及版本、CPU类型、浏览器类型及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。通常情况下,UA的标准格式为浏览器标识;操作系统标识;加密等级标识;浏览器语言;渲染引擎标识;版本信息,其中,浏览器标识是形如Mozilla/5. O或Opera/7. 54等标记浏览器产品的字串;常见的操作系统标识包括FreeBSD、Linux、Mac、Solaris以及Windows等;加密等级标识例如用“N”表示无安全加密、用“ I ”表示弱安全加密以及“U”表示强安全加密等;浏览器语言即为浏览器的首选项的常规标签里的语言选项中指定的语言;渲染引擎例如可以为Presto渲染引擎,格式为=Presto/版本号;浏览器版本信息中显不浏览器的真实版本信息,格式为Version/版本号。
在UA所包含的上述一系列信息中,与本发明最相关的是能够反映计算终端的终端类型的信息,例如,操作系统标识。通过操作系统标识可以很方便地识别出计算终端的终端类型。目前,市场上主流的移动终端的操作系统一般采用ios (苹果操作系统)或Android (google安卓操作系统),因此,如果操作系统为上述两种类型,则可以确定出计算终端的终端类型为移动终端。例如,Android用户访问网页时发送的图片访问请求中包含的 UA 信息形如 Mozilla/5. O (Linux;U; Android 3. I; zh-cn;GT_P7310Build/HMJ37)AppleffebKit/534. 13(KHTML, like Gecko)Version/4. OMobile Safari/534. I,其中,“Android”字段明确表示出发送该图片访问请求的计算终端设备所采用的操作系统为Android系统,因此,表示该计算终端的终端类型为移动终端;Iph0ne用户访问网页时发送的图片访问请求中包含的UA信息形如Mozilla/5. O (iPhone; CPU iPhone OS 5_01ikeMac OS X)AppleffebKit/534. 46(KHTML, like Gecko)Version/5. IMobile/9A334Safari/7534. 48. 3,其中,“iPhone”字段明确表示出发送该图片访问请求的计算终端设备所采用的是iPhone设备,其对应的操作系统为iOS系统,因此,也表示该计算终端的终端类型为移动终端。另外,为了进一步提高类型判断的准确性,还可以进一步结合UA中的其他信息,例如版本信息等进行综合判断。·上面描述的采用UA信息来指示计算终端的终端类型的方式只是一种示意性的方式,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。执行完上述步骤SllO之后,在步骤S120中,需要根据计算终端的终端类型信息来确定图片的压缩比。由于不同类型的计算终端之间的软硬件差异,导致其浏览图片时的性能也不完全相同。例如,移动终端的屏幕尺寸相对较小、分辨率相对较低,因此,对图片质量的敏感度也相对较低。所以,当计算终端的终端类型为移动终端时,可以将图片的压缩比设置得稍微高一些,在一定程度上牺牲图片质量以减少用户流量的使用,降低用户流量资费,缩短图片在移动终端上的加载耗时。由于固定终端(例如台式PC机)的屏幕尺寸较大,分辨率也相对较高,所以,当计算终端的终端类型为固定终端时,可以将图片的压缩比设置得稍微低一些,以提高图片质量,可选地,可以将固定终端的压缩比设置为1,即不进行压缩,维持原图,以便为用户提供最清晰的图片。具体地,为了在步骤S 120中方便地确定各种类型的计算终端对应的图片压缩比,可以事先设置并存储一个终端类型与压缩比之间的对照表,通过查找该对照表,确定与终端类型相对应的压缩比。确定图片的压缩比之后,在步骤S 130中,获取与图片访问请求中的图片信息相对应的图片数据,根据步骤S120中所确定的压缩比对获取的图片数据进行压缩处理。在本实施例中,可以通过图片存储器来存储图片信息相对应的图片数据,通过访问该图片存储器获取与图片访问请求中的图片信息相对应的图片数据。其中,该图片存储器可以是一台单独的服务器,专门用于存储图片数据,也可以是若干台服务器,每台服务器存储部分图片数据。在获取到与图片访问请求中的图片信息相对应的图片数据后,需要根据步骤S120中确定的压缩比对该图片数据进行压缩处理。下面以JPEG格式的图片数据的压缩为例详细介绍一下步骤S130中根据压缩比对图片数据进行压缩处理时的一种处理方式。对JPEG格式的图片数据进行压缩时主要分为颜色转换、DCT变换、量化和编码四个步骤。首先介绍一下颜色转换步骤。由于JPEG格式只支持YUV颜色模式的数据结构,而不支持RGB颜色模式的数据结构,所以在对彩色图片进行压缩之前,如果图片数据为RGB颜色模式,则必须先将其转换为YUV颜色模式,从而完成颜色转换步骤。转换为YUV颜色模式之后,需要执行DCT变换。所谓DCT变换,是指将图像信号在频率域上进行变换,分离出高频和低频信息的处理过 程,然后再对图像的高频部分(即图像细节)进行压缩,以达到压缩图像数据的目的。在DCT变换时,通常先将图像划分为多个8X8的矩阵。然后对每一个矩阵作DCT变换,变换后得到一个频率系数矩阵,其中的频率系数都是浮点数。由于在后面的编码过程中使用的码本都是整数,因此,执行完DCT变换之后,还需要对变换后的频率系数进行量化,将其转换为整数。由于进行数据量化后,矩阵中的数据都是近似值,和原始图像数据之间有了差异,这一差异是造成图像压缩后失真的主要原因。在这一过程中,需要选择一个质量因子,该质量因子的选取至为重要值选得过大,可以大幅度提高压缩比,但是图像质量就比较差;反之,质量因子越小(最小为1),图像重建质量越好,但是压缩比越低。对此,ISO已经制定了一组供JPEG代码实现者使用的标准量化值。在前面的过程中,从颜色转换完成到编码之前,图像并没有得到进一步的压缩,DCT变换和量化都是为了编码阶段做准备。编码采用两种机制一是O值的行程长度编码;二是熵编码(Entropy Coding)。在JPEG中,采用曲徊序列,即以矩阵对角线的法线方向作“之”字排列矩阵中的元素。这样做的优点是使得靠近矩阵左上角、值比较大的元素排列在行程的前面,而行程的后面所排列的矩阵元素基本上为O值。行程长度编码是非常简单和常用的编码方式,在此不再赘述。编码实际上是一种基于统计特性的编码方法。在JPEG中允许采用HUFFMAN编码或者算术编码。通过上面的处理过程可以看到,通常情况下,在整个JPEG图片的压缩过程中,可以控制的只有质量因子Q,因此,可以在量化过程中,根据步骤S120中确定的压缩比来确定量化时的质量因子Q的值,通过质量因子Q确定量化的步长并根据步长进行量化。具体实现时,不同的实现标准对质量因子Q有着不同的定义。例如,IJG (Independent Jpeg Group,独立Jpeg小组)采用的度量值为99 (压缩因子最高)"I (压缩因子最低);Photoshop制定了 f 12级压缩因子;Apple定义了 (Γ4级压缩因子;Paint Shop Pro的压缩因子与IJG的
压缩因子相反-99表不最低压缩因子,I为最闻压缩因子。在本实施例中,可以米用IJG
的质量因子作为度量。例如,当计算终端为移动终端时,可以将质量因子设置为60(具体值可以视实际情况而定)。上面描述的压缩方式仅为示例性的,本领域技术人员还可以灵活选取其他的方式来根据压缩比对图片进行压缩。在对图片数据压缩处理后,执行步骤S140。在步骤S140中,将经压缩处理后的图片数据发送给计算终端。以计算终端为移动终端为例来说,虽然对图片数据执行了压缩操作,降低了图片的质量,但由于移动终端本身的分辨率低、屏幕尺寸小等原因,用户几乎不会察觉到图片质量的降低。同时,由于压缩后数据量减少,因此,大大提高了图片加载速度,且降低了网络流量。可选地,为了在设置图片压缩比时,能够更好地适应用户上网的实际情况,在本实施例的步骤SllO中发送的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,在步骤S 120中进一步包括根据计算终端的网络类型信息来确定图片的压缩比。具体地,在步骤SllO中,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android系统中的ConnectivityManager参数识别用户所用的网络环境是移动网络环境还是wifi网络环境,其中,ConnectivityManager参数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含http GET[ ‘NT ] = ‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含httpGET[ ‘NW’ ]=‘WIFI’参数信息。根据图片访问请求确定出计算终端的网络类型之后,在步骤S120中,根据网络类型信息确定图片的压缩比时,可以预先设置并存储一个网络类型信息与图片的压缩比之间的对照表,查找该对照表,确定与网络类型信息对应的图片的压缩比。例如,当用户处于wifi网络环境时,图片压缩比较低;当用户处于移动网络环境时,图片的压缩比较高(压缩比的具体数值可根据实际情况进行设定)。在设定网络类型信息对应的图片的压缩比时, 主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以为Wifi网络环境中的计算终端设置较低的压缩比,以提供较高质量的图片,虽然提供较高质量的图片需要传输更多的数据量,但由于Wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于Wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以将移动网络中的计算终端的图片质量设置得稍低一些,即,压缩比设置得稍高一些。在设置图片压缩比时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合理的压缩比,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定压缩比。具体地,当图片访问请求中包含网络类型信息时,在确定图片压缩比时,可以单独根据网络类型信息来确定图片的压缩比,也可以根据网络类型信息与终端类型信息二者的结合来确定图片的压缩比。当根据网络类型信息与终端类型信息二者的结合来确定图片的压缩比时,上面描述的网络类型信息与图片的压缩比之间的对照表以及终端类型信息与图片的压缩比之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定图片压缩比。例如,当网络类型信息为wifi网络,且终端类型为移动终端时,图片压缩比为50。另外,作为替代方式,本发明的方法中的图片访问请求也可以只包含网络类型信息,相应地,在后续步骤中只根据网络类型信息确定图片的压缩比。在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的图片压缩比。另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以将压缩比设置得稍低,以提高图片质量;对于小屏幕计算终端,可以将压缩比设置得稍高,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的图片压缩比。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种GPRS、CDMA、3G、4G和WIFI网络。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的压缩比,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。 图2a至图2c分别示出了根据本发明提供的方法对图片设置压缩比并进行压缩之前及之后在移动类型的计算终端上的显示效果。其中,图2a显示了直接将未经压缩的原始图片提供给移动终端的效果图,图2a中的图片尺寸为380X380,质量因子为100,图片字节数为81. 9KB。图2b显示了移动终端在wifi网络环境下提供的图片,图2b中的图片尺寸与图2a相同,质量因子为80,图片字节数为20. 2KB。图2c显示了移动终端在移动网络环境下提供的图片,图2c中的图片尺寸也与图2a相同,质量因子为60,图片字节数为13. 3KB。可以看出,对移动终端上显示的图片进行压缩之后,展现效果并无明显差别,但是图片字节数却明显缩小,因此,大大提高了加载速度,降低了网络流量。图3示出了本发明实施例提供的图片服务器以及与该服务器相连的计算终端的结构示意图。如图3所示,服务器300包括网络接口 310、类型判定器320、压缩比判定器330、图片处理器340以及图片存储器350。网络接口 310接收计算终端200发送的图片访问请求,该图片访问请求包括要访问的图片信息以及计算终端200的终端类型信息,并且网络接口 310还适于将服务器所生成的图片数据传输给计算终端200。当计算终端200的用户需要通过计算终端200访问图片时,通常会通过计算终端200上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端200向图3中提供服务的服务器300中的网络接口 310发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器300能够找到该图片并提供给用户。图片访问请求中还包括计算终端200的终端类型信息,以便于服务器300 了解计算终端200的终端类型。可选地,计算终端200发送的图片访问请求基于HTTP协议构造,而用于指示计算终端200的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端200每次要访问图片时发送的图片访问请求中都包含UA信息。有关UA信息的具体内容以及通过UA信息指示终端类型的方法可参照方法实施例中相关部分的描述,此处不再赘述。另外,除了采用UA信息来指示计算终端的终端类型之外,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。类型判定器320获取图片访问请求中包括的计算终端200的终端类型信息。具体地,当终端类型信息包含在UA信息中时,可通过读取图片访问请求的UA信息中用于标识终端类型的字段来确定终端类型,例如,如果包含“Android”字段或“iPhone”字段则表示终端类型为移动终端。其中,UA信息的具体格式可参照方法实施例中相应部分的描述。压缩比判定器330根据类型判定器320获取的计算终端200的终端类型信息确定图片的压缩比。由于不同类型的计算终端之间的软硬件差异,导致其浏览图片时的性能也不完全相同。例如,移动终端的屏幕尺寸相对较小、分辨率相对较低,因此,对图片质量的敏感度也相对较低。所以,当计算终端的终端类型为移动终端时,可以将图片的压缩比设置得稍微高一些,在一定程度上牺牲图片质量以减少用户流量的使用,降低用户流量资费,缩短图片在移动终端上的加载耗时。由于固定终端(例如台式PC机)的屏幕尺寸较大,分辨率也相对较高,所以,当计算终端的终端类型为固定终端时,可以将图片的压缩比设置得稍微低 一些,以提高图片质量,可选地,可以将固定终端的压缩比设置为1,即不进行压缩,维持原图,以便为用户提供最清晰的图片。具体地,为了使压缩比判定器330可以方便地确定各种类型的计算终端对应的图片压缩比,可以在服务器300上事先设置并存储一个终端类型与压缩比之间的对照表,通过查找该对照表,确定与终端类型相对应的压缩比。图片处理器340从例如图片存储器350中获取与图片访问请求中的图片信息相对应的图片数据,并根据压缩比判定器330所确定的压缩比对图片数据进行压缩处理,并且经由网络接口 310将经压缩处理的图片数据传输给计算终端200。图片存储器350存储图片信息相对应的图片数据,以供图片处理器340访问。具体地,图片处理器340在对图片数据进行压缩时,可通过颜色转换、DCT变换、量化和编码等步骤实现,其中,量化步骤进一步包括根据压缩比确定量化时的质量因子;通过质量因子确定量化的步长并根据步长进行量化。其中,每一步骤的具体实现方式可参照方法实施例中对JPEG格式的图片数据压缩时的方法。或者,图片处理器340也可以通过其他方式来根据压缩比对图片进行压缩。图片数据经过压缩之后,经由网络接口 310传输给计算终端200。以计算终端为移动终端为例来说,虽然对图片数据执行了压缩操作,降低了图片的质量,但由于移动终端本身的分辨率低、屏幕尺寸小等原因,用户几乎不会察觉到图片质量的降低。同时,由于压缩后数据量减少,因此,大大提高了图片加载速度,且降低了网络流量。可选地,为了在设置图片压缩比时,能够更好地适应用户上网的实际情况,本实施例的网络接口 310接收到的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,类型判定器320进一步用于确定计算终端的网络类型,压缩比判定器330进一步根据类型判定器320确定的计算终端的网络类型来确定图片的压缩比。具体地,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android系统中的ConnectivityManager参数识别用户所用的网络环境是移动网络环境还是wifi网络环境,其中,ConnectivityManager参数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含httpGET[ ‘NW’ ] = ‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含http GET[ ‘NW’ ] = ‘WIFI’参数信息。类型判定器320根据图片访问请求中的参数确定计算终端的网络类型。压缩比判定器330根据网络类型信息确定图片的压缩比时,也可以预先设置并存储一个网络类型信息与图片的压缩比之间的对照表,查找该对照表,确定与网络类型信息对应的图片的压缩比。例如,当用户处于wifi网络环境时,图片压缩比较低;当用户处于移动网络环境时,图片的压缩比较高(压缩比的具体数值可根据实际情况进行设定)。在设定网络类型信息对应的图片的压缩比时,主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以为wifi网络环境中的计算终端设置较低的压缩比,以提供较高质量的图片,虽然提供较高质量的图片需要传输更多的数据量,但由于wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以将移动网络中的计算终端的图片质量设置得稍低一些,即,压缩比设置得稍高一些。在设置图片压缩比时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合理的压缩比,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定压缩比。 具体地,当图片访问请求中包含网络类型信息时,压缩比判定器330在确定图片压缩比时,可以单独根据网络类型信息来确定图片的压缩比,也可以根据网络类型信息与终端类型信息二者的结合来确定图片的压缩比。当根据网络类型信息与终端类型信息二者的结合来确定图片的压缩比时,上面描述的网络类型信息与图片的压缩比之间的对照表以及终端类型信息与图片的压缩比之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定图片压缩比。例如,当网络类型信息为wifi网络,且终端类型为移动终端时,图片压缩比为50。另外,作为替代方式,本发明的图片访问请求也可以只包含网络类型信息,相应地,压缩比判定器330只根据网络类型信息确定图片的压缩比。在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的图片压缩比。另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以将压缩比设置得稍低,以提高图片质量;对于小屏幕计算终端,可以将压缩比设置得稍高,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的图片压缩比。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。
同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种GPRS、CDMA、3G、4G和WIFI网络。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的压缩比,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。根据本发明的向计算终端提供图片数据的方法和相应的服务器,可以根据计算终端的终端类型信息来确定对图片进行压缩时的压缩比并根据确定的压缩比对图片进行压缩,由此解决了移动终端访问图片时加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载图片,且降低了图片访问时的流量消耗的有益效果。在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发·明的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式
的权利要求书由此明确地并入该具体实施方式
,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP )来实现根据本发明实施例的向计算终端提供图片数据的服务器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
权利要求
1.一种图片数据提供方法,包括步骤 接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的终端类型信息; 预先设置并存储所述终端类型信息与图片的压缩比之间的对照表,查找所述对照表,确定与所述终端类型信息对应的图片的压缩比; 获取与所述图片访问请求中的图片信息相对应的图片数据,根据所确定的压缩比对所述图片数据进行压缩处理;以及 将经压缩处理后的图片数据发送给所述计算终端。
2.如权利要求I所述的方法,其中所述图片访问请求还包括所述计算终端的网络类型信息;以及所述方法还包括 根据所述计算终端的网络类型信息来确定所述图片的压缩比。
3.如权利要求I或2所述的方法,所述计算终端的终端类型信息包括下列中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机。
4.如权利要求I或2所述的方法,所述计算终端的终端类型信息包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
5.如权利要求2所述的方法,其中所述计算终端的网络类型信息包括下列中的一种或者多种GPRS、CDMA、3G、4G 和 WIFI 网络。
6.如权利要求1-5中任一个所述的方法,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
7.如权利要求6的方法,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
8.如权利要求2-7中任一个所述的方法,其中所述根据所述网络类型信息确定图片的压缩比的步骤包括 预先设置并存储所述网络类型信息与图片的压缩比之间的对照表,查找所述对照表,确定与所述网络类型信息对应的图片的压缩比。
9.如权利要求1-8中任一个所述的方法,所述根据所确定的压缩比对所述图片数据进行压缩处理的步骤包括颜色转换、DCT变换、量化和编码,其中,所述量化进一步包括 根据所述压缩比确定量化时的质量因子; 通过所述质量因子确定量化的步长并根据所述步长进行量化。
10.一种图片服务器,包括 网络接口,适于接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的终端类型信息,并且将服务器所生成的图片数据传输给所述计算终端; 类型判定器,适于获取所述图片访问请求中包括的所述计算终端的终端类型信息; 压缩比判定器,适于根据所述类型判定器获取的所述计算终端的终端类型信息确定图片的压缩比; 图片处理器,适于获取与所述图片访问请求中的图片信息相对应的图片数据,根据所确定的压缩比对所述图片数据进行压缩处理,并且经由所述网络接口将经压缩处理的图片数据传输给计算终端;以及 图片存储器,适于存储所述图片信息相对应的图片数据; 其中,所述压缩比判定器进一步适于预先设置并存储所述终端类型信息或网络类型信息与图片的压缩比之间的对照表,查找所述对照表,确定与所述终端类型或网络类型对应的图片的压缩比。
11.如权利要求10所述的服务器,其中, 所述图片访问请求还包括所述计算终端的网络类型信息, 所述类型判定器还适于获取所述图片访问请求中包括的所述计算终端的网络类型信息, 所述压缩比判定器还适于根据所述计算终端的网络类型信息来确定所述图片的压缩比。
12.如权利要求10或11所述的服务器,所述计算终端包括下列终端类型中的一种或者多种便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机。
13.如权利要求10或11所述的服务器,所述计算终端的终端类型信息包括计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
14.如权利要求11所述的服务器,其中所述计算终端的网络包括下列网络类型中一种或者多种GPRS、CDMA、3G、4G和WIFI网络。
15.如权利要求10-14中任一个所述的服务器,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
16.如权利要求15的服务器,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
17.如权利要求10-16中任一个所述的服务器,所述图片处理器进一步适于对所述图片数据进行颜色转换、DCT变换、量化和编码,其中,所述量化进一步包括根据所述压缩比确定量化时的质量因子;通过所述质量因子确定量化的步长并根据所述步长进行量化。
全文摘要
本发明公开了一种图片服务器及图片数据提供方法,该服务器包括网络接口;类型判定器;压缩比判定器;图片处理器;以及图片存储器,适于存储所述图片信息相对应的图片数据;其中,所述压缩比判定器还适于预先设置并存储所述终端类型信息或网络类型信息与图片的压缩比之间的对照表,依据对照表确定与所述终端类型或网络类型对应的图片的压缩比。由此解决了移动终端访问图片时加载速度慢且消耗网络流量多的问题,能够使移动终端快速地加载图片,且降低了图片访问时的流量消耗。
文档编号H04L29/08GK102946419SQ201210417998
公开日2013年2月27日 申请日期2012年10月26日 优先权日2012年10月26日
发明者吕本伟, 杨涛 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1