CN105657070B - 向计算终端提供图片数据的方法及服务器 - Google Patents

向计算终端提供图片数据的方法及服务器 Download PDF

Info

Publication number
CN105657070B
CN105657070B CN201610190821.5A CN201610190821A CN105657070B CN 105657070 B CN105657070 B CN 105657070B CN 201610190821 A CN201610190821 A CN 201610190821A CN 105657070 B CN105657070 B CN 105657070B
Authority
CN
China
Prior art keywords
image data
computing terminal
terminal
frame number
picture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610190821.5A
Other languages
English (en)
Other versions
CN105657070A (zh
Inventor
吕本伟
杨涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610190821.5A priority Critical patent/CN105657070B/zh
Priority claimed from CN201210488925.6A external-priority patent/CN102938792B/zh
Publication of CN105657070A publication Critical patent/CN105657070A/zh
Application granted granted Critical
Publication of CN105657070B publication Critical patent/CN105657070B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种向计算终端提供图片数据的方法及服务器,该方法包括:接收计算终端发送的图片访问请求,图片访问请求包括要访问的图片信息以及计算终端的终端类型信息;获取与图片访问请求中的图片信息相对应的原始图片数据,原始图片数据包含多帧图片数据;根据计算终端的终端类型信息确定要提供给计算终端的图片数据的帧数,从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据;以及将经处理后的图片数据发送给计算终端。由此解决了移动终端访问动态图片时加载速度慢且消耗网络流量多的问题,能够使移动终端快速地加载动态图片,且降低了动态图片访问时的流量消耗。

Description

向计算终端提供图片数据的方法及服务器
本申请为申请日是2012年11月26日,申请号是201210488925.6,名称是“向计算终端提供图片数据的方法及服务器”的发明专利申请的分案申请。
技术领域
本发明涉及图像处理领域,具体涉及一种向计算终端提供图片数据的方法及服务器。
背景技术
随着移动设备的高速发展,移动设备的类型和功能也越来越丰富。目前,多数移动设备都提供有图片浏览功能,因此,越来越多的人通过移动设备来浏览图片。
随着图片种类的多样化,很多图片都包含多帧图片数据,这样的图片也叫动态图片。例如,常见的图像互换格式(Graphics Interchange Format,GIF)图片就可以将多帧图片数据保存为一个图片文件,从而形成动画。GIF图片可以包含多帧图片数据的特性虽然为用户带来了动态的视觉享受,但是,由于移动设备本身的局限性,例如,硬件配置和网络带宽远不如一些固定设备(例如PC机),因此,采用移动设备浏览动态图片很容易出现图片加载缓慢甚至加载失败的情形,从而浪费了用户的时间,还经常造成用户无法正常查看图片。
而且,由于动态图片一般数据量较大,与浏览文字相比,浏览动态图片需要消耗更多的网络带宽和网络流量,但目前很多移动设备的网络带宽仍较低,网络流量对应的网络资费仍偏高,所以,频繁浏览动态图片很容易导致用户的网络资费严重超出预算。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的向计算终端提供图片数据的方法和相应的服务器。
依据本发明的一个方面,提供了一种向计算终端提供图片数据的方法,包括步骤:接收计算终端发送的图片访问请求,图片访问请求包括要访问的图片信息以及计算终端的网络类型信息;获取与图片访问请求中的图片信息相对应的原始图片数据,原始图片数据包含多帧图片数据;根据计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数,从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据;其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内;以及将经处理后的图片数据发送给计算终端。
可选地,图片访问请求还包括计算终端的终端类型信息;以及该方法还包括:根据计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
根据本发明的另一方面,提供了一种向计算终端提供图片数据的服务器,包括:网络接口,适于接收计算终端发送的图片访问请求,图片访问请求包括要访问的图片信息以及计算终端的网络类型信息,并且将服务器处理后的图片数据传输给计算终端;帧数判定器,适于根据计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数;图片处理器,适于获取与图片访问请求中的图片信息相对应的原始图片数据,原始图片数据包含多帧图片数据,从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据;其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内。
可选地,图片访问请求还包括计算终端的终端类型信息,帧数判定器还适于根据计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
根据本发明的向计算终端提供图片数据的方法和相应的服务器,可以根据计算终端的网络类型信息来确定要提供给计算终端的图片数据的帧数并从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,由此解决了移动终端访问动态图片时加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载动态图片,且降低了动态图片访问时的流量消耗的有益效果。
另外,根据本发明的方法和服务器,还可以根据计算终端的终端类型来确定要提供给计算终端的图片数据的帧数并从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,当计算终端通过低速网络或者费用较高的网络访问动态图片时,可以减少图片数据传输量,从而解决了移动终端访问动态图片时加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载动态图片,且降低了动态图片访问时的流量消耗的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的向计算终端提供图片数据的方法流程图;
图2示出了根据本发明提供的向计算终端提供图片数据的服务器以及与该服务器相连的计算终端的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的向计算终端提供图片数据的方法流程图。
如图1所示,该方法始于步骤S110,在步骤S110中,接收计算终端发送的图片访问请求,该图片访问请求中包括要访问的图片信息以及计算终端的终端类型信息。
可选地,步骤S110可通过如下方式实现:当计算终端的用户需要通过计算终端访问图片时,通常会通过计算终端上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端向提供服务的服务器等设备发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器能够找到该图片并提供给用户,以及计算终端的终端类型信息,以便于服务器了解计算终端的终端类型。可选地,计算终端发送的图片访问请求基于HTTP协议构造,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端每次要访问图片时发送的图片访问请求中都包含UA信息。
为了便于理解本发明,下面先简单介绍一下UA信息的具体内容。UA是一个特殊的字符串头,该字符串头中可以包含一系列有关于计算终端的相关信息,例如,计算终端所使用的操作系统及版本、CPU类型、浏览器类型及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。通常情况下,UA的标准格式为:浏览器标识;操作系统标识;加密等级标识;浏览器语言;渲染引擎标识;版本信息,其中,浏览器标识是形如Mozilla/5.0或Opera/7.54等标记浏览器产品的字串;常见的操作系统标识包括:FreeBSD、Linux、Mac、Solaris以及Windows等;加密等级标识例如用“N”表示无安全加密、用“I”表示弱安全加密以及“U”表示强安全加密等;浏览器语言即为浏览器的首选项的常规标签里的语言选项中指定的语言;渲染引擎例如可以为Presto渲染引擎,格式为:Presto/版本号;浏览器版本信息中显示浏览器的真实版本信息,格式为Version/版本号。
在UA所包含的上述一系列信息中,与本发明最相关的是能够反映计算终端的终端类型的信息,例如,操作系统标识。通过操作系统标识可以很方便地识别出计算终端的终端类型。目前,市场上主流的移动终端的操作系统一般采用iOS(苹果操作系统)或Android(google安卓操作系统),因此,如果操作系统为上述两种类型,则可以确定出计算终端的终端类型为移动终端。例如,Android用户访问网页时发送的图片访问请求中包含的UA信息形如Mozilla/5.0(Linux;U;Android 3.1;zh-cn;GT-P7310Build/HMJ37)AppleWebKit/534.13(KHTML,like Gecko)Version/4.0Mobile Safari/534.1,其中,“Android”字段明确表示出发送该图片访问请求的计算终端设备所采用的操作系统为Android系统,因此,表示该计算终端的终端类型为移动终端;Iphone用户访问网页时发送的图片访问请求中包含的UA信息形如Mozilla/5.0(iPhone;CPU iPhone OS 5_0like Mac OS X)AppleWebKit/534.46(KHTML,like Gecko)Version/5.1Mobile/9A334Safari/7534.48.3,其中,“iPhone”字段明确表示出发送该图片访问请求的计算终端设备所采用的是iPhone设备,其对应的操作系统为iOS系统,因此,也表示该计算终端的终端类型为移动终端。另外,为了进一步提高类型判断的准确性,还可以进一步结合UA中的其他信息,例如版本信息等进行综合判断。
上面描述的采用UA信息来指示计算终端的终端类型的方式只是一种示意性的方式,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。
执行完上述步骤S110之后,在步骤S120中,获取与图片访问请求中的图片信息相对应的原始图片数据,该原始图片数据包含多帧图片数据。
在本实施例中,可以通过图片存储器来存储图片信息相对应的原始图片数据,通过访问该图片存储器获取与图片访问请求中的图片信息相对应的原始图片数据。其中,该图片存储器可以是一台单独的服务器,专门用于存储图片数据,也可以是若干台服务器,每台服务器存储部分图片数据。
需要说明的是,本发明实施例主要适用于对包含多帧图片数据的图片的访问。也就是说,本发明实施例中,用户发送的图片访问请求中要访问的图片信息对应的原始图片数据应该是包含多帧图片数据的图片,例如多帧GIF图片,为了描述方便,也可以将这样的图片称为动态图片。
由于原始图片数据包含多帧图片数据,为了节省用户的等待时间,并减少消耗的网络流量,在后续的步骤S130中,根据计算终端的终端类型信息确定要提供给计算终端的图片数据的帧数,从该原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据。
具体地,步骤S130主要是根据不同类型的计算终端的特点,来决定适合于该计算终端显示的图片数据的帧数,并从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据。由于不同类型的计算终端之间的软硬件差异,导致其浏览图片时的性能也不完全相同。例如,移动终端的屏幕尺寸相对较小、分辨率相对较低,因此,对图片质量的敏感度也相对较低。所以,当计算终端的终端类型为移动终端时,可以将提供给计算终端的图片数据的帧数设置得稍微低一些,在一定程度上牺牲图片质量,为用户呈现较少的帧数以减少用户流量的使用,降低用户流量资费,缩短图片在移动终端上的加载耗时。由于固定终端(例如台式PC机)的屏幕尺寸较大,分辨率也相对较高,所以,当计算终端的终端类型为固定终端时,可以将提供给计算终端的图片数据的帧数设置得稍微高一些,以提高图片质量,为用户呈现较多的帧数,可选地,可以将提供给计算终端的图片数据的帧数设置为原始图片数据的帧数,即不进行提取帧数的处理,维持原图,以便为用户提供最优质的图片。具体地,为了在步骤S130中方便地确定各种类型的计算终端对应的帧数,可以事先设置并存储一个终端类型与帧数之间的对照表,通过查找该对照表,确定与终端类型相对应的帧数。
具体地,在从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据时,可以采用多种方式来提取,只要能够将原始图片数据处理为所确定帧数的数据即可。例如,可以按照逐帧提取方式,从原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于原始图片数据的首部、中部或尾部。在这种方式中,所提取的图片数据是由连续的若干帧数据组成的,这若干帧数据可以位于原始图片数据的任意位置处,优选地,可以位于原始图片数据中所反映的信息量较多,即帧与帧之间的图像差异较大的位置处。或者,也可以按照隔帧提取方式,从原始图片数据中提取所确定帧数的图片数据。在这种方式中,所提取的图片数据是由非连续的若干帧数据组成的,这非连续的若干帧数据可以按照一定的算法来提取,例如,每隔一帧或两帧提取一帧数据,或者,也可以根据原始图片数据的特点来提取,例如,挑选几帧有代表性的图片数据进行提取。
从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据之后,在步骤S140中,将步骤S130中生成的经处理后的图片数据发送给计算终端。
通过上面的方式就可以根据计算终端的类型特点,对要访问的原始图片数据进行一定的降帧处理,即减少原始图片数据的帧数,以达到节省用户的访问时间,减少网络流量的效果。
另外,在步骤S130中确定要提供给计算终端的图片数据的帧数时,还可以进一步结合原始图片数据的大小来确定提供给计算终端的图片数据的帧数。这时,需要预先确定原始图片数据的大小,并根据计算终端的终端类型信息和原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。其中,原始图片数据的大小可以通过字节数来表示。例如,在实际处理时,可以设置字节数越大的图片保留的帧数(即提供给计算终端的图片数据的帧数)越少,字节数越少的图片保留的帧数(即提供给计算终端的图片数据的帧数)越多,由此可以使传输的数据量基本控制在恒定的范围内,不会突然造成网络带宽的大量占用,也不会突然导致网络流量浪费太多,而且也可以保证用户每次浏览图片时所消耗的时间基本差不多,因而用户感受较好。例如,以移动终端类型的计算终端为例,当字节数小于等于100KB时,保留原始图片数据的前50帧;当字节数大于100KB小于等于200KB时,保留原始图片数据的前20帧;当字节数大于200KB小于等于1MB时,保留原始图片数据的前10帧;当字节数大于1MB时,仅保留原始图片数据的第一帧,以上数值均为经验值,实际情况中可根据需要对上述数值进行调整。其中,当仅保留原始图片数据的第一帧时,为了使用户知晓该图片实际上是一个由多帧图片数据构成的动态图片,可以为处理后的仅为一帧的图片数据添加动态图片标识。该动态图片标识可以为数字水印,例如,可以使用Imagemagick的compositeImage功能,在一张图片的特定区域叠加另外一张不透明图片,以遮挡住原始图片。当原始图片数据为多帧GIF图片时,该数字水印可以为“GIF”的字样,以提示用户该图片为多帧GIF图片。
另外,除了上述的字节数越大的图片保留的帧数越少,字节数越少的图片保留的帧数越多的设置方式外,在另外一些情况中,还可以反过来设置字节数越大的图片保留的帧数越多,字节数越少的图片保留的帧数越少,这样做的好处在于,字节数越大的图片通常情况下包含的帧数也越多,因此保留更多的帧数有利于用户了解该图片的大致动画过程。
总之,结合字节数来确定要提供给计算终端的图片数据的帧数时,可以根据用户的需求来确定具体的帧数。
下面,以用户要访问的图片为GIF文件为例,简单介绍一下GIF文件的结构特点,并结合GIF文件的结构特点描述一下步骤S130中从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据的处理过程。
一个GIF文件的结构可分为文件头(File Header)、GIF数据流(GIF Data Stream)和文件终结器(Trailer)三个部分。文件头包含GIF文件署名(Signature)和版本号(Version);GIF数据流由控制标识符、图象块(Image Block)和其他的一些扩展块组成;文件终结器只有一个值为0×3B的字符(”;”)表示文件结束。表1示出了一个GIF文件的组成结构:
表1
下面重点说下GIF数据流部分:
通过表1可以看出,GIF数据流部分(GIF Data Stream)主要包括逻辑屏幕标识符(Logical Screen Descriptor)、全局颜色列表(Global Color Table)以及图像标识符(Image Descriptor)等部分。
其中,逻辑屏幕标识符部分由7个字节组成,定义了GIF图象的大小(LogicalScreen Width&Height)、颜色深度(Color Bits)、背景色(Blackground Color Index)以及有无全局颜色列表和颜色列表的索引数(Index Count),具体描述见表2,表2示出了逻辑标识符的7个字节的具体含义:
表2
通过表2可以看出,逻辑标识符的前四个字节表明了逻辑屏幕的宽度和高度,第六个字节表示了背景色,第七个字节表示了像素宽高比。
全局颜色列表必须紧跟在逻辑屏幕标识符后面,每个颜色列表索引条目由三个字节组成,按R、G、B的顺序排列,参见表3所示。
表3
图像标识符部分与本发明的关系最为密切,通过该部分可以看出该GIF文件共包含多少帧图像,由此确定如何对该GIF文件(也就是上面提到的原始图像数据)提取所确定帧数的图像数据。具体地,一个GIF文件内可以包含多幅图象,一幅图象结束之后紧接着是下一幅图象的标识符,图象标识符以0×2C(”,”)字符开始,定义紧接着它的图象的性质,包括图象相对于逻辑屏幕边界的偏移量、图象大小以及有无局部颜色列表和颜色列表大小,由10个字节组成。表4示出了一个图像的标识符的示例:
表4
通过GIF文件的图像标识符部分,就可以方便地查看该GIF文件总共包含多少帧数据,每一帧数据的起始点和结束点,据此可以方便地确定要提取的确定帧数的数据所在的位置,从而完成步骤S130中的提取操作。通过上面的描述也可以看出,对GIF文件进行降低帧数的操作的实质其实就是将GIF文件的GIF数据流部分截短。
除了上述的根据GIF文件的图像标识符来提取所确定帧数的数据以构成经处理后的图片数据的方法外,还可以采用其它的方式来提取,例如,对于其他格式的动态图片,可以根据动态图片的具体特点进行提取。
可选地,为了在确定要提供给计算终端的图片数据的帧数时,能够更好地适应用户上网的实际情况,在本实施例的步骤S110中发送的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,在步骤S130中进一步包括:根据计算终端的网络类型信息来确定要提供给计算终端的图片数据的帧数。
具体地,在步骤S110中,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android系统中的ConnectivityManager函数识别用户所用的网络环境是移动网络环境(例如2G、3G等)还是wifi网络环境,其中,ConnectivityManager函数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘WIFI’参数信息。
根据图片访问请求确定出计算终端的网络类型之后,在步骤S130中,根据网络类型信息确定要提供给计算终端的图片数据的帧数时,还可以预先设置并存储一个网络类型信息与图片数据帧数之间的对照表,查找该对照表,确定与网络类型信息对应的图片数据的帧数。例如,当用户处于wifi网络环境时,要提供给计算终端的图片数据的帧数较多;当用户处于移动网络环境时,要提供给计算终端的图片数据的帧数较少(帧数的具体数值可根据实际情况进行设定)。在设定网络类型信息对应的图片数据的帧数时,主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以为wifi网络环境中的计算终端设置较高的图片数据帧数,以提供较高质量的图片以及较完整的图片信息,虽然提供较高质量的图片以及较完整的图片信息需要传输更多的数据量,但由于wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以将移动网络中的图片数据的帧数设置的稍低一些。例如,对于处于移动网络环境中的移动终端,可以设置图片数据的帧数仅为一帧,并为该帧数据添加动态图片标识。
在设置图片数据的帧数时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合理的帧数,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定图片数据的帧数。
具体地,当图片访问请求中包含网络类型信息时,在确定图片数据的帧数时,可以单独根据网络类型信息来确定图片数据的帧数,也可以根据网络类型信息与终端类型信息二者的结合来确定图片数据的帧数,或者,还可以根据网络类型信息与原始图片数据的大小来确定图片数据的帧数,或者,还可以根据网络类型信息、原始图片数据的大小以及终端类型信息来确定图片数据的帧数。总之,在确定图片数据的帧数时,可以灵活根据网络类型信息、终端类型信息和原始图片数据大小这三个因素当中的一个或多个因素确定。当根据网络类型信息与终端类型信息二者的结合来确定图片数据的帧数时,上面描述的网络类型信息与图片数据的帧数之间的对照表以及终端类型信息与图片数据的帧数之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定图片数据的帧数。
另外,需要说明的是,根据网络类型信息来确定图片数据的帧数的方式与根据终端类型信息来确定图片数据的帧数的方式是同等重要的。因此,作为替代方式,本发明的方法中的图片访问请求也可以只包含网络类型信息,相应地,在后续步骤中只根据网络类型信息确定图片数据的帧数,或者,根据网络类型信息与原始图片数据大小来确定图片数据的帧数。
在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的图片帧数。
另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以将图片数据的帧数设置得稍高,以提高图片质量;对于小屏幕计算终端,可以将图片数据的帧数设置得稍低,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的图片数据的帧数。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。
同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种:GPRS、CDMA、3G、4G和WIFI网络以及各种有线网络链接。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的帧数,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。
通过本发明实施例提供的方法,可以根据计算终端的特点、网络条件以及图片数据的大小当中的一个或多个因素来确定要提供给计算终端的图片数据的帧数,在需要时可以通过降低图片数据的帧数的方式来提高用户的访问速度,节约网络带宽和网络流量,进而节省网络资费。
而且,通过这种方式,一般不会对用户浏览图片造成不良影响,原因在于,很多图片的帧数较多(例如有些GIF图片多达100帧,字节数大于5MB),用户往往没有足够的耐心将全部帧数的图片看完,所以只提供降帧处理后的图片无疑可以满足用户快速浏览图片的需求。而且,即使用户有耐心看完图片,但是很多情况下,网络带宽和传输速度不允许用户下载并浏览大数据量的图片,当数据量过大时,往往会造成网络拥塞、带宽不足,从而导致图片加载失败,或耗时超过用户能够忍耐的范围,由此导致用户浏览失败。相比较之下,只为用户提供降帧处理后的图片无疑可以满足用户看到图片的需求。而且,由于多帧图片数据当中相邻帧的图片数据往往存在大量冗余,因此,采用本发明中的降帧处理后所显示的图片一般并不会给用户带来明显的视觉差异。
图2示出了本发明实施例提供的向计算终端提供图片数据的服务器以及与该服务器相连的计算终端的结构示意图。如图2所示,服务器200包括:网络接口210、帧数判定器220、图片处理器230以及图片存储器240。
网络接口210接收计算终端300发送的图片访问请求,该图片访问请求包括要访问的图片信息以及计算终端300的终端类型信息,并且网络接口210还适于将服务器所生成的经处理后的图片数据传输给计算终端300。当计算终端300的用户需要通过计算终端300访问图片时,通常会通过计算终端300上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端300向图2中提供服务的服务器200中的网络接口210发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器200能够找到该图片并提供给用户。图片访问请求中还包括计算终端300的终端类型信息,以便于服务器200了解计算终端300的终端类型。可选地,计算终端300发送的图片访问请求基于HTTP协议构造,而用于指示计算终端300的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端300每次要访问图片时发送的图片访问请求中都包含UA信息。有关UA信息的具体内容以及通过UA信息指示终端类型的方法可参照方法实施例中相关部分的描述,此处不再赘述。另外,除了采用UA信息来指示计算终端的终端类型之外,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。
帧数判定器220获取图片访问请求中包括的计算终端300的终端类型信息,并根据计算终端的终端类型信息确定要提供给计算终端的图片数据的帧数。具体地,当终端类型信息包含在UA信息中时,可通过读取图片访问请求的UA信息中用于标识终端类型的字段来确定终端类型,例如,如果包含“Android”字段或“iPhone”字段则表示终端类型为移动终端。其中,UA信息的具体格式以及帧数判定器确定帧数的具体方式可参照方法实施例中相应部分的描述。
图片处理器230获取与图片访问请求中的图片信息相对应的原始图片数据,该原始图片数据包含多帧图片数据,并根据帧数判定器220确定的要提供给计算终端的图片数据的帧数,从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,并通过网络接口210将处理后的图片数据传输给计算终端300。
在本实施例中,可以通过图片存储器240来存储图片信息相对应的原始图片数据,图片处理器230通过访问该图片存储器240获取与图片访问请求中的图片信息相对应的原始图片数据。其中,该图片存储器240可以是一台单独的服务器,专门用于存储图片数据,也可以是若干台服务器,每台服务器存储部分图片数据。
具体地,帧数判定器220主要是根据不同类型的计算终端的特点,来决定适合于该计算终端显示的图片数据的帧数,并由图片处理器230从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据。由于不同类型的计算终端之间的软硬件差异,导致其浏览图片时的性能也不完全相同。例如,移动终端的屏幕尺寸相对较小、分辨率相对较低,因此,对图片质量的敏感度也相对较低。所以,当计算终端的终端类型为移动终端时,可以将提供给计算终端的图片数据的帧数设置得稍微低一些,在一定程度上牺牲图片质量,为用户呈现较少的帧数以减少用户流量的使用,降低用户流量资费,缩短图片在移动终端上的加载耗时。由于固定终端(例如台式PC机)的屏幕尺寸较大,分辨率也相对较高,所以,当计算终端的终端类型为固定终端时,可以将提供给计算终端的图片数据的帧数设置得稍微高一些,以提高图片质量,为用户呈现较多的帧数,可选地,可以将提供给计算终端的图片数据的帧数设置为原始图片数据的帧数,即不进行提取帧数的处理,维持原图,以便为用户提供最优质的图片。
具体地,图片处理器230从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据时,可以采用多种方式来提取,只要能够将原始图片数据处理为所确定帧数的数据即可。例如,可以按照逐帧提取方式,从原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于原始图片数据的首部、中部或尾部。在这种方式中,所提取的图片数据是由连续的若干帧数据组成的,这若干帧数据可以位于原始图片数据的任意位置处,优选地,可以位于原始图片数据中所反映的信息量较多,即帧与帧之间的图像差异较大的位置处。或者,也可以按照隔帧提取方式,从原始图片数据中提取所确定帧数的图片数据。在这种方式中,所提取的图片数据是由非连续的若干帧数据组成的,这非连续的若干帧数据可以按照一定的算法来提取,例如,每隔一帧或两帧提取一帧数据,或者,也可以根据原始图片数据的特点来提取,例如,挑选几帧有代表性的图片数据进行提取。
通过上面的方式就可以根据计算终端的类型特点,对要访问的原始图片数据进行一定的降帧处理,即减少原始图片数据的帧数,以达到节省用户的访问时间,减少网络流量的效果。
另外,在帧数判定器220确定要提供给计算终端的图片数据的帧数时,还可以进一步结合原始图片数据的大小来确定提供给计算终端的图片数据的帧数。这时,需要预先确定原始图片数据的大小,并根据计算终端的终端类型信息和原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。其中,原始图片数据的大小可以通过字节数来表示。例如,在实际处理时,可以设置字节数越大的图片保留的帧数(即提供给计算终端的图片数据的帧数)越少,字节数越少的图片保留的帧数(即提供给计算终端的图片数据的帧数)越多,由此可以使传输的数据量基本控制在恒定的范围内,不会突然造成网络带宽的大量占用,也不会突然导致网络流量浪费太多,而且也可以保证用户每次浏览图片时所消耗的时间基本差不多,因而用户感受较好。例如,以移动终端类型的计算终端为例,当字节数小于等于100KB时,保留原始图片数据的前50帧;当字节数大于100KB小于等于200KB时,保留原始图片数据的前20帧;当字节数大于200KB小于等于1MB时,保留原始图片数据的前10帧;当字节数大于1MB时,仅保留原始图片数据的第一帧,以上数值均为经验值,实际情况中可根据需要对上述数值进行调整。其中,当仅保留原始图片数据的第一帧时,为了使用户知晓该图片实际上是一个由多帧图片数据构成的动态图片,可以由图片处理器230为处理后的仅为一帧的图片数据添加动态图片标识。该动态图片标识可以为数字水印,例如,可以使用Imagemagick的compositeImage功能,在一张图片的特定区域叠加另外一张不透明图片,以遮挡住原始图片。当原始图片数据为多帧GIF图片时,该数字水印可以为“GIF”的字样,以提示用户该图片为多帧GIF图片。
另外,除了上述的字节数越大的图片保留的帧数越少,字节数越少的图片保留的帧数越多的设置方式外,在另外一些情况中,还可以反过来设置字节数越大的图片保留的帧数越多,字节数越少的图片保留的帧数越少,这样做的好处在于,字节数越大的图片通常情况下包含的帧数也越多,因此保留更多的帧数有利于用户了解该图片的大致动画过程。
总之,结合字节数来确定要提供给计算终端的图片数据的帧数时,可以根据用户的需求来确定具体的帧数。
可选地,为了在确定要提供给计算终端的图片数据的帧数时,能够更好地适应用户上网的实际情况,在本实施例的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,帧数判定器220进一步根据计算终端的网络类型信息来确定要提供给计算终端的图片数据的帧数。
具体地,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android系统中的ConnectivityManager函数识别用户所用的网络环境是移动网络环境还是wifi网络环境,其中,ConnectivityManager函数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘WIFI’参数信息。
根据图片访问请求确定出计算终端的网络类型之后,帧数判定器220根据网络类型信息确定要提供给计算终端的图片数据的帧数时,可以预先设置并存储一个网络类型信息与图片数据帧数之间的对照表,查找该对照表,确定与网络类型信息对应的图片数据的帧数。例如,当用户处于wifi网络环境时,要提供给计算终端的图片数据的帧数较多;当用户处于移动网络环境时,要提供给计算终端的图片数据的帧数较少(帧数的具体数值可根据实际情况进行设定)。在设定网络类型信息对应的图片数据的帧数时,主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以为wifi网络环境中的计算终端设置较高的图片数据帧数,以提供较高质量的图片,虽然提供较高质量的图片需要传输更多的数据量,但由于wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以将移动网络中的图片数据的帧数设置的稍低一些。
在设置图片数据的帧数时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合理的帧数,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定图片数据的帧数。
具体地,当图片访问请求中包含网络类型信息时,在确定图片数据的帧数时,可以单独根据网络类型信息来确定图片数据的帧数,也可以根据网络类型信息与终端类型信息二者的结合来确定图片数据的帧数,或者,还可以根据网络类型信息与原始图片数据的大小来确定图片数据的帧数,或者,还可以根据网络类型信息、原始图片数据的大小以及终端类型信息来确定图片数据的帧数。当根据网络类型信息与终端类型信息二者的结合来确定图片数据的帧数,上面描述的网络类型信息与图片数据的帧数之间的对照表以及终端类型信息与图片数据的帧数之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定图片数据的帧数。
另外,需要说明的是,根据网络类型信息来确定图片数据的帧数的方式与根据终端类型信息来确定图片数据的帧数的方式是同等重要的。因此,作为替代方式,本发明实施例的图片访问请求也可以只包含网络类型信息,相应地,帧数判定器220只根据网络类型信息确定图片数据的帧数,或者,根据网络类型信息与原始图片数据大小来确定图片数据的帧数。
在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的图片帧数。
另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以将图片数据的帧数设置得稍高,以提高图片质量;对于小屏幕计算终端,可以将图片数据的帧数设置得稍低,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的图片数据的帧数。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。
同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种:GPRS、CDMA、3G、4G和WIFI网络以及各种有线网络链接。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的帧数,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。
根据本发明的向计算终端提供图片数据的方法和相应的服务器,可以根据计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数并从原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,由此解决了移动终端访问动态图片时加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载动态图片,且降低了动态图片访问时的流量消耗的有益效果。
另外,在本发明的向计算终端提供图片数据的方法和相应的服务器中,还可以进一步对用户发送的图片访问请求的类型进行区分,并根据不同类型的图片访问请求分别执行相应的处理。例如,用户发送的图片访问请求有可能是请求缩略图的图片访问请求,这时,采用本发明实施例提供的方法及相应的服务器进行降低帧数的处理就非常适合用户的需求。如果用户发送的图片访问请求是请求原始图片的图片访问请求,这时就可以不进行降帧处理,直接为用户提供服务器上保存的原始图片数据,以迎合用户需求。总之,在使用本发明实施例提供的方法及相应的服务器时,可以进一步根据用户的实际需求进行处理,以提高用户满意度。
而且,对于用户请求缩略图的图片访问请求,还可以进一步根据用户请求的缩略图的尺寸大小来确定要提供给计算终端的图片数据的帧数,例如,用户请求的缩略图的尺寸越小,提供给计算终端的图片数据的帧数越少,以便节约网络流量,节省下载时间;用户请求的缩略图的尺寸越大,提供给计算终端的图片数据的帧数越多,以便为用户提供更加清晰完整的图片。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的向计算终端提供图片数据的服务器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:A1、一种向计算终端提供图片数据的方法,包括步骤:
接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的网络类型信息;
获取与所述图片访问请求中的图片信息相对应的原始图片数据,所述原始图片数据包含多帧图片数据;
根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数,从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据;其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内;以及
将所述经处理后的图片数据发送给所述计算终端。
A2、如A1所述的方法,其中所述图片访问请求还包括所述计算终端的终端类型信息;以及所述方法还包括:
根据所述计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
A3、如A1所述的方法,其中所述计算终端的网络类型信息包括下列中的一种或者多种:GPRS、CDMA、3G、4G、WIFI网络以及各种有线网络链接。
A4、如A2所述的方法,所述计算终端的终端类型信息包括下列中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机;或者,
所述计算终端的终端类型信息包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
A5、如A1-A4中任一个所述的方法,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
A6、如A5的方法,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
A7、如A1-A4中任一个所述的方法,所述从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据的步骤包括:
按照逐帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于所述原始图片数据的首部、中部或尾部;或者
按照隔帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据。
A8、如A1-A4中任一个所述的方法,还包括:
确定所述原始图片数据的大小;以及
所述根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数还包括:
根据所述计算终端的网络类型信息和所述原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。
A9、如A1-A4中任一个所述的方法,还包括,当所确定帧数为一帧时,为所述经处理后的图片数据添加动态图片标识。
本发明还公开了:B10、一种向计算终端提供图片数据的服务器,包括:
网络接口,适于接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的网络类型信息,并且将服务器处理后的图片数据传输给所述计算终端;
帧数判定器,适于根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数;
图片处理器,适于获取与所述图片访问请求中的图片信息相对应的原始图片数据,所述原始图片数据包含多帧图片数据,从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内。
B11、如B10所述的服务器,其中,
所述图片访问请求还包括所述计算终端的终端类型信息,
所述帧数判定器还适于根据所述计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
B12、如B10所述的服务器,其中所述计算终端的网络包括下列网络类型中一种或者多种:GPRS、CDMA、3G、4G、WIFI网络以及各种有线网络链接。
B13、如B11所述的服务器,所述计算终端包括下列终端类型中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机;或者,
所述计算终端的终端类型信息包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
B14、如B10-B13中任一个所述的服务器,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
B15、如B14的服务器,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
B16、如B10-B13中任一个所述的服务器,所述图片处理器进一步适于:
按照逐帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于所述原始图片数据的首部、中部或尾部;
或者,按照隔帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据。
B17、如B10-B13中任一个所述的服务器,所述帧数判定器还适于根据所述计算终端的网络类型信息和所述原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。
B18、如B10-B13中任一个所述的服务器,当所述帧数判定器所确定的帧数为一帧时,所述图片处理器进一步适于为所述经处理后的图片数据添加动态图片标识。
B19、如B10-B13中任一个所述的服务器,还包括:
图片存储器,适于存储所述图片信息相对应的原始图片数据。

Claims (19)

1.一种向计算终端提供图片数据的方法,包括步骤:
接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的网络类型信息;
获取与所述图片访问请求中的图片信息相对应的原始图片数据,所述原始图片数据包含多帧图片数据;
根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数,从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据;其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内;以及
将所述经处理后的图片数据发送给所述计算终端。
2.如权利要求1所述的方法,其中所述图片访问请求还包括所述计算终端的终端类型信息;以及所述方法还包括:
根据所述计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
3.如权利要求1所述的方法,其中所述计算终端的网络类型信息包括下列中的一种或者多种:GPRS、CDMA、3G、4G、WIFI网络以及各种有线网络链接。
4.如权利要求2所述的方法,所述计算终端的终端类型信息包括下列中的一种或者多种:PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机;或者,
所述计算终端的终端类型信息包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
5.如权利要求1-4中任一个所述的方法,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
6.如权利要求5所述的方法,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
7.如权利要求1-4中任一个所述的方法,所述从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据的步骤包括:
按照逐帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于所述原始图片数据的首部、中部或尾部;或者
按照隔帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据。
8.如权利要求1-4中任一个所述的方法,还包括:
确定所述原始图片数据的大小;以及
所述根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数还包括:
根据所述计算终端的网络类型信息和所述原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。
9.如权利要求1-4中任一个所述的方法,还包括,当所确定帧数为一帧时,为所述经处理后的图片数据添加动态图片标识。
10.一种向计算终端提供图片数据的服务器,包括:
网络接口,适于接收计算终端发送的图片访问请求,所述图片访问请求包括要访问的图片信息以及计算终端的网络类型信息,并且将服务器处理后的图片数据传输给所述计算终端;
帧数判定器,适于根据所述计算终端的网络类型信息确定要提供给计算终端的图片数据的帧数;
图片处理器,适于获取与所述图片访问请求中的图片信息相对应的原始图片数据,所述原始图片数据包含多帧图片数据,从所述原始图片数据中提取所确定帧数的数据以构成经处理后的图片数据,其中,设置字节数越大的原始图片数据保留的帧数越少,字节数越少的原始图片数据保留的帧数越多,使传输的数据量控制在恒定的范围内。
11.如权利要求10所述的服务器,其中,
所述图片访问请求还包括所述计算终端的终端类型信息,
所述帧数判定器还适于根据所述计算终端的终端类型信息来确定要提供给计算终端的图片数据的帧数。
12.如权利要求10所述的服务器,其中所述计算终端的网络包括下列网络类型中一种或者多种:GPRS、CDMA、3G、4G、WIFI网络以及各种有线网络链接。
13.如权利要求11所述的服务器,所述计算终端包括下列终端类型中的一种或者多种:PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机;或者,
所述计算终端的终端类型信息包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。
14.如权利要求10-13中任一个所述的服务器,所述图片访问请求基于HTTP协议,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理部分中。
15.如权利要求14所述的服务器,其中所述计算终端的网络类型信息以参数形式包含在所述图片访问请求中。
16.如权利要求10-13中任一个所述的服务器,所述图片处理器进一步适于:
按照逐帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据,其中,所确定帧数的图片数据位于所述原始图片数据的首部、中部或尾部;
或者,按照隔帧提取方式,从所述原始图片数据中提取所确定帧数的图片数据。
17.如权利要求10-13中任一个所述的服务器,所述帧数判定器还适于根据所述计算终端的网络类型信息和所述原始图片数据的大小来确定要提供给计算终端的图片数据的帧数。
18.如权利要求10-13中任一个所述的服务器,当所述帧数判定器所确定的帧数为一帧时,所述图片处理器进一步适于为所述经处理后的图片数据添加动态图片标识。
19.如权利要求10-13中任一个所述的服务器,还包括:
图片存储器,适于存储所述图片信息相对应的原始图片数据。
CN201610190821.5A 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器 Active CN105657070B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610190821.5A CN105657070B (zh) 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210488925.6A CN102938792B (zh) 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器
CN201610190821.5A CN105657070B (zh) 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201210488925.6A Division CN102938792B (zh) 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器

Publications (2)

Publication Number Publication Date
CN105657070A CN105657070A (zh) 2016-06-08
CN105657070B true CN105657070B (zh) 2019-02-01

Family

ID=56496518

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610190821.5A Active CN105657070B (zh) 2012-11-26 2012-11-26 向计算终端提供图片数据的方法及服务器

Country Status (1)

Country Link
CN (1) CN105657070B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106250010B (zh) * 2016-07-06 2020-01-07 北京元心科技有限公司 一种图片显示控制方法和系统
CN107145515B (zh) * 2017-04-01 2020-12-11 北京安云世纪科技有限公司 一种动态图像展示的方法、装置及移动终端
CN107833259B (zh) * 2017-11-15 2021-02-02 北京掌易通文化科技有限公司 基于智能终端的动态漫画引擎处理方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5267334A (en) * 1991-05-24 1993-11-30 Apple Computer, Inc. Encoding/decoding moving images with forward and backward keyframes for forward and reverse display
CN1573808A (zh) * 2003-05-19 2005-02-02 富士胶片株式会社 用于动态图像转换、传输的设备、方法及程序
CN101431531A (zh) * 2004-12-24 2009-05-13 捷讯研究有限公司 数据转换设备及其调整传输到移动电子设备的数据的方法
CN101500002A (zh) * 2008-01-28 2009-08-05 中国科学院声学研究所 一种针对Web内容的融合发布方法及装置
CN102469149A (zh) * 2010-11-17 2012-05-23 北京千橡网景科技发展有限公司 用于通过代理自适应调整图像的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5267334A (en) * 1991-05-24 1993-11-30 Apple Computer, Inc. Encoding/decoding moving images with forward and backward keyframes for forward and reverse display
CN1573808A (zh) * 2003-05-19 2005-02-02 富士胶片株式会社 用于动态图像转换、传输的设备、方法及程序
CN101431531A (zh) * 2004-12-24 2009-05-13 捷讯研究有限公司 数据转换设备及其调整传输到移动电子设备的数据的方法
CN101500002A (zh) * 2008-01-28 2009-08-05 中国科学院声学研究所 一种针对Web内容的融合发布方法及装置
CN102469149A (zh) * 2010-11-17 2012-05-23 北京千橡网景科技发展有限公司 用于通过代理自适应调整图像的方法和装置

Also Published As

Publication number Publication date
CN105657070A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
CN102984151B (zh) 向计算终端提供图片数据的方法及服务器
CN102938792B (zh) 向计算终端提供图片数据的方法及服务器
CN101777066B (zh) 一种用于移动通讯设备终端的网页页面渲染浏览系统及其应用方法
US20210191993A1 (en) Processing Method for Structured Data, Storage Medium and Electronic Device
CN107168999A (zh) 一种页面更新方法及装置
CN102932671A (zh) 向计算终端提供图片数据的方法及服务器
US9117314B2 (en) Information output apparatus, method, and recording medium for displaying information on a video display
WO2009147844A1 (ja) Webページ配信システム
US20190114989A1 (en) Systems and methods for image optimization
CN105657070B (zh) 向计算终端提供图片数据的方法及服务器
CN111737618A (zh) 用于Web端的矢量图显示方法、装置和计算机设备
CN111773704A (zh) 游戏数据处理方法、装置、存储介质、处理器及电子装置
CN103646115A (zh) 一种用于客户端访问网页的方法和系统
CN103699652A (zh) 一种访问网页的方法和系统
CN103002026B (zh) 向计算终端提供图片数据的方法及服务器
CN114286172B (zh) 数据处理方法及装置
JP5433377B2 (ja) 画像処理装置、画像処理方法、および、画像処理プログラム
CN110851327A (zh) 硬件状态信息获取方法、装置、终端及可读存储介质
CN111352665A (zh) 页面加载方法、装置、设备及其存储介质
CN105898399A (zh) 一种视频资源加载方法及装置及智能电视
EP4002289A1 (en) Picture processing method and device, storage medium, and electronic apparatus
US8755677B2 (en) Moving-picture processing device and moving-picture processing method
US20150248347A1 (en) Content providing apparatus and method, and computer program product
EP2234019A1 (en) Graphic instruction transmitter and method for graphic instruction transmission
CN114756791A (zh) 列表数据的加载方法和加载装置、电子设备、存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220726

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right