一种基于客户端获取适配图像的方法及装置与流程

文档序号:14684396发布日期:2018-06-12 23:05阅读:125来源:国知局
一种基于客户端获取适配图像的方法及装置与流程

本发明属于图像处理技术领域,具体涉及一种基于客户端获取适配图像的方法及装置。



背景技术:

由于在当前的互联网医院的相关系统中,患者大部分的辅助检查资料均为图片资料(例如:检查单、X光片、CT图像等)。在目前的客户端向服务器获取图像的方式中,基本都是直接通知服务器需要获取的图像数据,然后服务器进行相应数据的返回。

通常,在分辨率不同的设备上对图像分辨率的要求不同,分辨率高的设备要求较高,而分辨率低的设备对图像分辨率的要求并不高。当直接把分辨率较高的图像直接发送给分辨率较低的设备上时,会造成在分辨率相对低的设备上存在图像数据浪费的情况,同时也会占用更多的请求时长。另外,在网络状态较差的时候,如果客户端以同样的方式获取图片,那么可能会导致获取图像数据的时间较长,甚至于导致客户端与服务器的连接时长超时而最终客户端没有获取到正确图像数据的情况。



技术实现要素:

为了解决上述技术问题,本发明提供一种基于客户端获取适配图像的方法及装置,其可用于在服务器端对图像进行缩放处理。该方法可以避免在分辨率相对低的设备上存在图像数据浪费的情况,同时也会缩短获取图像的请求时长。

本发明提供如下技术方案:

一方面,本发明实施例中提供一种基于客户端获取适配图像的方法,应用于服务器端,其包括以下步骤:

接收客户端发送的请求信息,所述请求信息包括请求的图像信息、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息;

根据所述请求的图像信息,获取与该请求的图像信息对应的第一图像数据信息,所述第一图像数据信息包括第一图像的大小信息、第一图像的分辨率和第一图像的各像素的灰度值;

根据所述客户端的屏幕分辨率信息、客户端的屏幕尺寸信息和第一图像数据信息,计算得出所述第一图像数据信息对应的缩放信息;

根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理,获得第二图像数据信息,所述第二图像数据信息包括第二图像的大小信息、第二图像的分辨率和第二图像的各像素的灰度值。

另一方面,本发明实施例中还提供一种基于客户端获取适配图像的装置,应用于服务器端,其包括:

接收模块,用于接收客户端发送的请求信息,所述请求信息包括请求的图像信息、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息;

第一获取模块,用于根据所述请求的图像信息,获取与该请求的图像信息对应的第一图像数据信息,所述第一图像数据信息包括第一图像的大小信息、第一图像的分辨率和第一图像的各像素的灰度值;

计算模块,用于根据所述客户端的屏幕分辨率信息、客户端的屏幕尺寸信息和第一图像数据信息,计算得出所述第一图像数据信息对应的缩放信息;

第一缩放模块,用于根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理,获得第二图像数据信息,所述第二图像数据信息包括第二图像的大小信息、第二图像的分辨率和第二图像的各像素的灰度值。

本发明实施例的基于客户端获取适配图像的方法,其可用于在服务器端对图像进行缩放处理。具体地,通过该方法可以在服务器端基于客户端的屏幕分辨率信息和屏幕尺寸信息,缩放该客户端请求获取的图像,进而可以避免在分辨率相对低的设备上存在图像数据浪费的情况,同时也会缩短获取图像的请求时长。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一优选实施例中的基于客户端获取适配图像的方法的流程图。

图2为基于图1所示的基于客户端获取适配图像的方法的另一优选实施例的部分流程图。

图3为本发明又一优选实施例中的基于客户端获取适配图像的方法的流程图。

图4为本发明一优选实施例中的基于客户端获取适配图像的装置的结构图。

图5为本发明另一优选实施例中的基于客户端获取适配图像的装置的结构图。

具体实施方式

下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例中的“第一”、“第二”,只是对某些特征进行区别性地称呼,这是为了方便理解设定的,并无其他方面的限定。

如图1所示的基于客户端获取适配图像的方法,应用于服务器端,其包括以下步骤:

S101:接收客户端发送的请求信息,所述请求信息包括请求的图像信息、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息。

客户端需要获取图像时,可以先获取该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息;然后将需要获取的图像信息和该客户端的屏幕分辨率信息、该客户端的屏幕尺寸信息发送给服务器端。

所述请求的图像信息通常包括该图像的标识信息或者URL(Uniform Resource Locator,统一资源定位符)等。以便于服务器端根据所述请求的图像信息获取到对应的图像数据信息。

S102:根据所述请求的图像信息,获取与该请求的图像信息对应的第一图像数据信息,所述第一图像数据信息包括第一图像的大小信息、第一图像的分辨率和第一图像的各像素的灰度值。

所述第一图像通常是在服务器端没有被缩放或处理的“原始”图像相关的一些数据信息。后续提到的第二图像,通常是经过对第一图像进行缩放处理得到的;第三图像,可以是对第一图像或者第二图像进行缩放处理后得到的。

所述第一图像的大小信息,是指该第一图像占用内存的大小。

S103:根据所述客户端的屏幕分辨率信息、客户端的屏幕尺寸信息和第一图像数据信息,计算得出所述第一图像数据信息对应的缩放信息。

所述缩放信息通常包括对第一图像的大小进行改变的信息和对第一图像的分辨率进行改变的信息。所述对第一图像的大小进行改变的信息,具体可以是对第一图像的大小进行的缩小比例或者扩大比例;所述对第一图像的分辨率进行改变的信息,具体可以是对第一图像的分辨率进行的缩小比例或者扩大比例。

一般地,对第一图像的大小进行的缩小比例或者扩大比例,是根据客户端的屏幕尺寸信息和第一图像的大小信息进行的。例如:客户端的屏幕尺寸信息包括屏幕的宽是16cm、高是10cm,第一图像的大小信息包括图像的宽是32cm、高是20cm,则计算得出对该第一图像的大小进行的缩小比例为宽是(32-16)/32=0.5、高是(20-10)/10=0.5;客户端的屏幕分辨率信息为1440*900,第一图像数据信息包括的第一图像的分辨率为300(每英寸的像素个数),计算客户端的屏幕宽度16cm=6.3英寸(1英寸=2.54cm),每英寸长度的屏幕宽度的像素数为1440/6.3约等于229(每英寸的像素个数),对第一图像的分辨率进行的缩小比例为(300-229)/300,计算结果约等于0.237。

S104:根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理,获得第二图像数据信息,所述第二图像数据信息包括第二图像的大小信息、第二图像的分辨率和第二图像的各像素的灰度值。

根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理后,就可以得到与客户端的屏幕分辨率和该客户端的屏幕尺寸相适应的第二图像数据信息。

本发明实施例的基于客户端获取适配图像的方法,其可用于在服务器端对图像进行缩放处理。

具体地,通过该方法可以在服务器端基于客户端的屏幕分辨率信息和屏幕尺寸信息,缩放该客户端请求获取的图像,进而可以避免在分辨率相对低的设备上存在图像数据浪费的情况,同时也会缩短获取图像的请求时长。

基于图1所示的基于客户端获取适配图像的方法,如图2所示,所述请求信息中还包括当前该客户端与该服务器端的网络连接状态信息,所述网络连接状态信息包括当前该客户端与该服务器之间的网络速度;且所述方法还包括:

S105:根据所述网络连接状态信息,获取与所述网络连接状态信息对应的可传输文件的大小范围。

通常,在根据所述网络连接状态信息,获取与所述网络连接状态信息对应的可传输文件的大小范围之前,还可以包括:

S1051:收集并统计用户对获取不同大小文件的合理等待时长。合理等待时长,是根据多个用户对文件或者图片下载过程中可以接受的时间长度,超过该时长,大多数用户都不想再等待。因此,该数据可以通过合理的统计得到。例如:对于0-10M范围内的文件或者图片的合理等待时长可以为0-3min,对于10-100M范围内的文件或者图片的合理等待时长可以为0-6min,对于100-1000M范围内的文件或者图片的合理等待时长可以为0-12min等等。当然,针对不同地域、不同人群、不同需求,这些数字也会发生变化,具体可以根据需要进行统计分析。

S1052:根据所述对获取不同大小文件的合理等待时长,计算出对获取不同大小文件的合理网络速度。具体可以通过计算某一范围内的最大文件的大小除以对应范围内的最大合理等待时长,即可得到最低的合理网络速度。

例如:对于0-10M范围内的文件或者图片的合理等待时长可以为0-3min,则对应的合理网络速度不能低于56.89k/s(10M/3min=10240k/180s=56.89k/s);对于10-100M范围内的文件或者图片的合理等待时长可以为0-6min,则对应的合理网络速度不能低于284.44k/s(100M/6min=102400k/360s=284.44k/s);对于100-1000M范围内的文件或者图片的合理等待时长可以为0-12min,则对应的合理网络速度不能低于1422.22k/s(1000M/12min=1024000k/720s=1422.22k/s)

S1053:将获取不同大小文件的合理网络速度与对应大小的文件相映射,并保存在服务器中。

当服务器收到客户端发送的所述网络连接状态信息后,可以根据预先存储的获取不同大小文件的合理网络速度与对应大小的文件,获取与所述网络连接状态信息对应的可传输文件的大小范围。例如:如果当前该客户端与该服务器之间的网络速度为200k/s,由于其大于56.89k/s且小于284.44k/s,因此,其对应的可传输文件的大小范围为0-10M;如果当前该客户端与该服务器之间的网络速度为500/s,由于其大于56.89k/s和284.44k/s且小于1422.22k/s,因此,其对应的可传输文件的大小范围为0-10M和10-100M(即可传输文件的大小范围为0-100M)。

S106:判断所述第二图像数据信息是否在所述可传输文件的大小范围之内。

判断所述第二图像数据信息是否在所述可传输文件的大小范围之内,具体是判断第二图像数据信息中的第二图像的大小是否在所述可传输文件的大小范围之内。

S107:如果所述第二图像数据信息在所述可传输文件的大小范围之内,则将所述第二图像数据信息发送给所述客户端。

如果所述第二图像数据信息在所述可传输文件的大小范围之内,则说明根据当前该客户端与该服务器之间的网络速度,可以将所述第二图像数据信息发送给所述客户端,且客户端接收完所述第二图像数据信息的时间是在合理等待时长范围内。例如:如果当前该客户端与该服务器之间的网络速度为200k/s、且所述第二图像的大小信息为8M,则先通过网络速度为200k/s,查找到对应的可传输文件的大小范围为0-10M,因此该第二图像数据信息在所述可传输文件的大小范围之内。因此,本发明实施例可以根据当前该客户端与该服务器之间的网络速度,合理安排发送给客户端的文件。

进一步地,如图2所示的基于客户端获取适配图像的方法,其还包括:

S108:如果所述第二图像数据信息大于所述可传输文件的大小范围,则根据所述可传输文件的大小范围和第一图像数据信息,查询是否存在与所述可传输文件的大小范围和第一图像数据信息对应的第三图像数据信息,所述第三图像数据信息包括第三图像的大小信息、第三图像的分辨率和第三图像的各像素的灰度值。

该步骤即是查询是否存在由第一图像数据信息压缩而成的第三图像数据信息,该第三图像的大小在所述可传输文件的大小范围之内。如果存在,一般是直接将该第三图像数据信息发送给客户端。

S109:如果不存在所述第三图像数据信息,则根据所述可传输文件的大小范围将所述第二图像数据信息进行缩放处理,获得第三图像数据信息。

根据所述可传输文件的大小范围将所述第二图像数据信息进行缩放处理可以包括:

S1091:确定所述可传输文件的大小范围内的一个数值;通常可以是最大值;

S1092:根据所述第二图像数据信息中的第二图像的大小信息和已确定好的数值,计算出需要缩小的缩小比例;

S1093:根据该缩小比例,压缩所述第二图像数据信息,获得第三图像数据信息。

例如:如果当前该客户端与该服务器之间的网络速度为200k/s、且所述第二图像的大小信息为20M,则先通过网络速度为200k/s,查找到对应的可传输文件的大小范围为0-10M,可得知此时,该第二图像数据信息大于所述可传输文件的大小范围。如果不存在对应的第三图像数据,则可以:确定所述可传输文件的大小范围内的一个数值为10M;据第二图像数据信息中的20M和已确定好的数值10M,计算出需要缩小的缩小比例为(20-10)/20=0.5;根据该缩小比例0.5,压缩第二图像数据信息,获得第三图像数据信息。

S110:将所述第三图像数据信息发送给所述客户端。

因此,本发明实施例不仅可以在服务器端基于客户端的屏幕分辨率信息和屏幕尺寸信息,缩放该客户端请求获取的图像,还可以进一步根据当前该客户端与该服务器之间的网络速度,处理得到更合适的图像数据。进而可以避免在分辨率相对低的设备上存在图像数据浪费的情况,同时也会缩短获取图像的请求时长。

基于图1所示的基于客户端获取适配图像的方法,其中,所述获得第二图像数据信息之后还包括:存储所述第二图像数据信息,并将所述第二图像数据信息与所述第一图像数据信息、所述客户端的屏幕分辨率信息和所述客户端的屏幕尺寸信息相映射。

本发明实施例,可以在后续遇到与该客户端的屏幕分辨率信息和屏幕尺寸信息相同的其他客户端请求相同的图像时,不用再次对该图像进行压缩处理,直接将已处理好的所述第二图像数据信息发送给该其他客户端即可,因此,可以节约时间,提高效率。

具体步骤可以包括:

接收其他客户端发送的请求信息,所述请求信息包括请求的图像信息、该其他客户端的屏幕分辨率信息和该其他客户端的屏幕尺寸信息;

根据所述请求的图像信息、该其他客户端的屏幕分辨率信息和该其他客户端的屏幕尺寸信息,查询是否存在与该请求的图像信息、该其他客户端的屏幕分辨率信息和该其他客户端的屏幕尺寸信息对应的图像数据信息;

如果存在,则直接获取对应的图像数据信息,并将其发送给该其他客户端。

如上所述的基于客户端的动态图像适配方法,其中,所述获得第三图像数据信息之后还包括:存储所述第三图像数据信息,并将所述第三图像数据信息与所述第一图像数据信息、所述当前该客户端与该服务器之间的网络速度、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息相映射。

本发明实施例,可以在后续遇到其他客户端的请求与本次请求相同的图像数据,且网络速度、屏幕分辨率、屏幕尺寸都相同时,不用再次对图像进行压缩处理,直接将已处理好的所述第三图像数据信息发送给该其他客户端即可,因此,可以节约时间,提高效率。

如图3所示的基于客户端获取适配图像的方法,其包括:

S301:客户端采集自身的屏幕分辨率信息和屏幕尺寸信息以及该客户端与服务器端的网络连接状态信息和请求的图像信息,并生成请求信息,发送给所述服务器端;

S302:服务器接收客户端发送的请求信息;

S303:根据所述请求的图像信息,获取与该请求的图像信息对应的第一图像数据信息,所述第一图像数据信息包括第一图像的大小信息、第一图像的分辨率和第一图像的各像素的灰度值;

S304:根据所述客户端的屏幕分辨率信息、客户端的屏幕尺寸信息和第一图像数据信息,计算得出包括对第一图像的大小进行改变的信息和对第一图像的分辨率进行改变的信息的缩放信息;

S305:根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理,获得第二图像数据信息,所述第二图像数据信息包括第二图像的大小信息、第二图像的分辨率和第二图像的各像素的灰度值;

S306:根据所述网络连接状态信息,获取与所述网络连接状态信息对应的可传输文件的大小范围;

S307:判断所述第二图像数据信息是否在所述可传输文件的大小范围之内;

S308:如果所述第二图像数据信息在所述可传输文件的大小范围之内,则将所述第二图像数据信息发送给所述客户端;

S309:如果所述第二图像数据信息大于所述可传输文件的大小范围,则根据所述可传输文件的大小范围和第一图像数据信息,查询是否存在与所述可传输文件的大小范围和第一图像数据信息对应的第三图像数据信息,所述第三图像数据信息包括第三图像的大小信息、第三图像的分辨率和第三图像的各像素的灰度值;

S310:如果不存在所述第三图像数据信息,则根据所述可传输文件的大小范围将所述第二图像数据信息进行缩放处理,获得第三图像数据信息;

S311:将所述第三图像数据信息发送给所述客户端。

S312:存储所述第三图像数据信息,并将所述第三图像数据信息与所述第一图像数据信息、所述当前该客户端与该服务器之间的网络速度、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息相映射。

如图4所示的基于客户端获取适配图像的装置,应用于服务器端,其包括:

接收模块,用于接收客户端发送的请求信息,所述请求信息包括请求的图像信息、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息;

第一获取模块,用于根据所述请求的图像信息,获取与该请求的图像信息对应的第一图像数据信息,所述第一图像数据信息包括第一图像的大小信息、第一图像的分辨率和第一图像的各像素的灰度值;

计算模块,用于根据所述客户端的屏幕分辨率信息、客户端的屏幕尺寸信息和第一图像数据信息,计算得出所述第一图像数据信息对应的缩放信息;

第一缩放模块,用于根据所述缩放信息和第一图像数据信息对该第一图像数据信息进行缩放处理,获得第二图像数据信息,所述第二图像数据信息包括第二图像的大小信息、第二图像的分辨率和第二图像的各像素的灰度值。

本发明实施例的基于客户端获取适配图像的装置。可用于实现图1所示的方法,其可用于在服务器端对图像进行缩放处理。具体地,通过该方法可以在服务器端基于客户端的屏幕分辨率信息和屏幕尺寸信息,缩放该客户端请求获取的图像,进而可以避免在分辨率相对低的设备上存在图像数据浪费的情况,同时也会缩短获取图像的请求时长。

基于图4所示的基于客户端获取适配图像的装置,如图5所示,其中,所述请求信息中还包括当前该客户端与该服务器端的网络连接状态信息,所述网络连接状态信息包括当前该客户端与该服务器之间的网络速度;且所述装置还包括:

第二获取模块,用于根据所述网络连接状态信息,获取与所述网络连接状态信息对应的可传输文件的大小范围;

判断模块,用于判断所述第二图像数据信息是否在所述可传输文件的大小范围之内;

发送模块,用于如果所述第二图像数据信息在所述可传输文件的大小范围之内,则将所述第二图像数据信息发送给所述客户端。

所述第二获取模块包括:

获取单元,用于收集并统计用户对获取不同大小文件的合理等待时长;

第一计算单元,用于根据所述对获取不同大小文件的合理等待时长,计算出对获取不同大小文件的合理网络速度;

保存单元,用于将获取不同大小文件的合理网络速度与对应大小的文件相映射,并保存在服务器中。

基于图4所示的基于客户端获取适配图像的装置,如图5所示,其还包括:

查询模块,用于如果所述第二图像数据信息大于所述可传输文件的大小范围,则根据所述可传输文件的大小范围和第一图像数据信息,查询是否存在与所述可传输文件的大小范围和第一图像数据信息对应的第三图像数据信息,所述第三图像数据信息包括第三图像的大小信息、第三图像的分辨率和第三图像的各像素的灰度值;

第二缩放模块,用于如果不存在所述第三图像数据信息,则根据所述可传输文件的大小范围将所述第二图像数据信息进行缩放处理,获得第三图像数据信息;

发送模块,还用于将所述第三图像数据信息发送给所述客户端。

所述第二缩放模块可以包括:

确定单元,用于确定所述可传输文件的大小范围内的一个数值;

第二计算单元,用于根据所述第二图像数据信息中的第二图像的大小信息和已确定好的数值,计算出需要缩小的缩小比例;

压缩单元,用于根据该缩小比例,压缩所述第二图像数据信息,获得第三图像数据信息。

基于图4所示的基于客户端获取适配图像的装置,如图5所示,还包括存储模块,用于所述获得第二图像数据信息之后,存储所述第二图像数据信息,并将所述第二图像数据信息与所述第一图像数据信息、所述客户端的屏幕分辨率信息和所述客户端的屏幕尺寸信息相映射。

所述存储模块,还用于获得第三图像数据信息之后,存储所述第三图像数据信息,并将所述第三图像数据信息与所述第一图像数据信息、所述当前该客户端与该服务器之间的网络速度、该客户端的屏幕分辨率信息和该客户端的屏幕尺寸信息相映射。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以集成于一体,也可以分离部署;可以合并为一个模块,也可以进一步拆分成多个子模块。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1