图片的传输方法、装置和系统的制作方法_3

文档序号:9238596阅读:来源:国知局
到待传输图片 中的数据容量。
[0098] 具体地,如果第二终端的用户立刻查看该待传输图片,将看到MTS数据容量对应 的图片;如果用户没有立刻查看,而是过一段时间后查看图片,服务器可能已收到更多甚至 完整的图片数据,用户将看到更清晰的图片。
[0099] 在本发明的上述实施例中,第二终端在展示图片时无需等到接收到完整图片才展 示给用户,收到多少就展示多少,用户无需等待,直接看到一个从模糊到清晰变化的图片, 大大缩小收图等待时间。
[0100] 通过本发明上述实施例,传图过程中,待传输图片的图片数据无需完整发送,只要 发送的数据容量达到特定阀值,即可认为发送成功;传图过程中,中转服务器无需接收完整 图片数据,只要收到的数据容量达到特定阀值,即可通知接收方有新图片;不同的网络环 境,使用不同的传输因子,自动适配动态变化的网络质量;使用传输因子计算图片在特定网 络条件下的所需发送的最小阈值;传输数据将收发双方的标识信息以及按先主后次的方式 组织成数据流;数据的收发都采用流式传输的控制,中转服务器实时确认已接收数据的长 度。使用流式数据传输过程,结合渐进式的图片数据格式,能够解决移动设备所处网络复杂 多变,传输通道不稳定的问题,提高传图的成功率,同时既能减少发送图片的等待时间,又 能减少接收方查看图片的等待时间,提升整个传图过程的用户体验。
[0101] 需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列 的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为 依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知 悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明 所必须的。
[0102] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实 施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很 多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现 有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存 储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机, 计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0103]实施例2
[0104]根据本发明实施例,还提供了一种用于实施上述图片的传输装置,如图7所示,该 装置可以包括:第一生成模块10、第一上传模块30以及第二上传模块50。
[0105] 其中,第一生成模块,用于生成待传输图片的数据流;第一上传模块,用于将预设 传输数据容量发送至服务器;第二上传模块,用于从第一层图片编码数据起逐层发送图片 编码数据至服务器,直至接收到服务器发送的确认信号,其中,确认信号用于指示服务器已 接收到待传输图片中数据容量为预设传输数据容量的图片数据。
[0106] 其中,数据流包括待传输图片的预设传输数据容量和待传输图片的图片数据,预 设传输数据容量小于待传输图片的总数据容量,图片数据包括N层图片编码数据,每层图 片编码数据包括待传输图片的各个像素的像素信息,将第一层图片编码数据至第i层图片 编码数据叠加得到的图片的分辨率比将第一层图片编码数据至第i+1层图片编码数据叠 加得到的图片的分辨率低,l〈i<N,i为自然数。
[0107] 采用本发明实施例,待传输图片的图片数据中的N层图片编码数据携带有待传输 图片的像素的像素信息,从第一层图片编码数据开始发送图片数据,若将接收到的图片编 码数据逐层叠加,待传输图片的分辨率逐渐增高(从模糊到清晰)。在将待传输图片的图片 编码数据逐层上传至服务器的过程中,若接收到服务器发送的确认信号,即可确认待传输 图片上传成功,则停止上传图片编码数据,上述的确认信号是用于指示服务器已接收到待 传输图片中数据容量为预设传输数据容量的图片数据的信号,预设传输数据容量是小于待 传输图片的总数据容量的,这样,在尚未完全将待传输图片上传至服务器,即可确认上传成 功。通过上述实施例,不用将整个待传输图片的图片数据全部上传完成,即可确认待传输图 片上传成功,确认上传成功时得到的图片的是轮廓完整且可识别的图片,缩短了图片传输 的时间;在网络不稳定或者设备不稳定的情况下,只要上传完成预设传输数据容量,则认为 上传成功,大大地提高了上传图片的成功率。解决了现有技术中图片传输的成功率低的问 题,实现了提高图片传输成功率的效果。
[0108] 上述实施例中的将预设传输数据容量和图片数据上传至服务器可以通过如下方 法实现:按照流式传输方式依序将预设传输数据容量和图片数据上传至服务器。也即上述 实施例中的将预设传输数据容量发送至服务器,并从第一层图片编码数据起逐层发送图片 编码数据至服务器。
[0109] 其中,流式传输方式即为将数据流按照顺序发送的方式,具体地,数据流按先主后 次的顺序像水流一样在网络中传输,传输进行过程实时处理响应。具体到本发明实施例中, 先上传预设传输数据容量,在上传完成预设传输数据容量之后,上传图片数据。
[0110] 在上述实施例中,采用流式传输方式,数据按先主后次的顺序像水流一样在网络 中传输,传输进行过程实时处理响应,服务器可以实时向发送方(即图1中示出的第一终 端)确认收到的待传输图片的数据容量,接收到特定的数据容量(即上述实施例中的预设 传输数据容量)之后,向第一终端发送确认信号,该确认信号指示服务器已接收到待传输 图片中数据容量为预设传输数据容量的图片数据。
[0111] 具体地,在将图片数据上传至服务器的过程中,服务器可以实时记录已接收到的 待传输图片的数据容量,并将该已接收到的待传输图片的数据容量实时反馈给第一终端, 第一终端根据服务器反馈的已接收到的待传输图片的数据容量计算上传进度,并在该第 一终端的应用程序的第一界面上显示该上传进度。
[0112] 其中,上传进度为100 %,表示服务器已接收到的待传输图片的数据容量为预设传 输数据容量。上述的服务器可以为中间服务器,该中间服务器可以用于待传输图片的中间 存储。
[0113] 根据本发明的上述实施例,若接收到服务器发送的确认信号,则确认待传输图片 上传成功,在确认待传输图片上传成功之后,在第一终端的应用程序的第一界面上显示待 传输图片上传成功的第一提示信息。
[0114] 上述实施例中的第一终端可以为移动终端。可选地,上述实施例中的图片的传输 方法可以应用于即时通讯应用程序,例如,微信、QQ等。
[0115] 下面以将图片的传输方法应用于微信为例,详细介绍本发明。
[0116] 第一终端的用户在微信的应用界面(即上述实施例中的第一界面)发起传输图片 的请求,在确定待传输图片之后,第一终端生成待传输图片的数据流,该数据流中包括待传 输图片的图片数据和待传输图片的预设传输数据容量。在启动图片传输之后,采用流式传 输方式将预设传输数据容量和图片数据依序上传给服务器,服务器在接收图片数据的过程 中实时向第一终端确认已接收到待传输图片中的数据容量,在已接收到的待传输图片中的 数据容量为预设传输长度时,认为待传输图片接收成功,向第一终端发送确认信号,确认已 接收到的待传输图片中的数据容量为预设传输长度,第一终端接收到确认信号,在微信的 上传图片的进度条中显示上传(或发送)成功。
[0117] 根据本发明的上述实施例,传输装置还可以包括:第三上传模块,用于在接收到 服务器发送的确认信号之后,将第j+1层图片编码数据至第N层图片编码数据逐层上传至 服务器,其中,第j层图片编码数据为接收到确认信号时发送的最后一层图片编码数据, l〈j〈N,j为自然数。
[0118] 具体地,在服务器已接收到的待传输图片的数据容量为预设传输数据容量时,确 认待传输图片上传成功,然后,继续上传图片数据中尚未上传至服务器的数据。也即,在确 认上传成功的情况下,转到后台继续发送待传输图片的图片数据中的剩余的图片编码数据 数据,剩余图片编码数据数据即为尚未上传的图片编码数据。
[0119] 通过上述实施例,在上传预设传输数据容量之后即向用户通知已经上传成功,然 后继续将全部的待传输图片的图片数据上传成功,缩短了传图的时间,提高了传输图片的 成功率,这样,第一终端的用户体验到发图的时间缩小了,发图过程变快了,在解决上述技 术问题的同时提高了用户体验。
[0120] 在本发明的上述实施例中,第一生成模块可以包括:第一确定子模块,用于使用第 一终端的网络状态确定传输因子,其中,第一终端为上传待传输图片的终端;计算模块,用 于将待传输图片的总数据容量和传输因子之积作为预设传输数据容量;生成子模块,用于 根据待传输图片的预设传输数据容量和待传输图片的图片数据生成数据流。
[0121] 具体地,第一确定子模块可以包括:第一获取模块,用于获取第一终端当前使用的 网络类型数据和网络信号强度;读取模块,用于从数据表中读取网络类型和网络信号强度 指向的传输因子,其中,数据表为二维数据表,一个网络类型数据和一个网络信号强度确定 一个传输因子。
[0122] 在使用第一终端上传待传输图片时,最少传输预设传输数据容量,该预设传输数 据容量为最小传输数据容量(MTS,MinimalTransportSize)。MTS与待传输图片的图片 总数据容量(TS,TotalSize)的比值,称为传输因子Q。公式如下:Q=MTS/TS,或者写成: MTS=TSXQ。
[0123] 由于第一终端的数据传输速率与第一终端所处的网络环境相关,好坏网络的传输 速率可能相差上百倍,在待传输图片的总数据容量不变的前提下,第一终端的用户等待待 传输图片的传输的时间也将相差上百倍。为了适应不同的网络环境,在本发明的上述实施 例中可以通过第一终端所处的网络的网络状态确定传输因子,然后使用传输因子和图片总 数据容量确定待传输图片的MTS。
[0124] 可选地,网络状态可以使用两个维度的数据来确定网络的传输质量:网络类型数 据和网络信号强度。其中,网络类型数据可以包括:WiFi和4G、3G以及2G等网络类型的描 述数据;网络信号强度可以使用数据来确定(如80、90以及100),可以使用文字描述来确 定网络信号强度(如:强、中、弱),根据网络类型数据和网络信号强度的不同组合,确定传 输因子。在上述实施例中还可以结合不同的应用程序对图片质量要求确定传输因子。
[0125] 上述实施例中的,预设传输数据容量MTS是待传输图片的最小应该传输的数据容 量,而不是最终传输的总数据容量,通过上述实施例,在服务器确认传输成功之后,在网络 不中断的条件下,第一终端还是可以将整个待传输图片的完整的图片数据完全发送至服务 器,以便第二终端获得更加清晰的待传输图片。
[0126] 在本发明的上述实施例中,在即时通讯应用程序的应用场景中,第一终端生成的 数据流中可以包括元数据,该元数据中可以包括:第一终端的第一标识、第二终端的第二标 识、待传输图片的总长度以及预设传输长度。其中,第一终端可以为上传(或接收)待传输 图片的终端,第二终端可以为下载(或接收)待传输图片的终端,在即时通讯应用程序为微 信的情况下,第一标识和第二标识可以分别为微信号。
[0127] 具体地,第一终端可以将第一标识、第二标识、预设传输数据容量、待传输图片的 总数据容量作为元数据放在数据流的最前面,将待传输图片的图片数据放在元数据的后 面。按照流式传输方式传输待传输图片时,先发送元数据,在发送完成元数据之后,再发送 图片数据。在这个过程中,由于元数据的数据容量很小,在待传输图片的传输过程中不会影 响传输速率。
[0128] 进一步地,在第一终端将元数据发送完成之后,发送图片数据,服务器接收图片数 据,并不断向第一终端确认已接收到的待传输图片的数据容量,同时对元数据进行解析, 得到第一终端的第一标识、第二终端的第二标识、待传输图片的总数据容量以及预设传输 长度。
[0129] 根据本发明的上述实施例,第一生成模块可以包括:编码模块,用于对所述待传输 图片进行渐进式图片编码得到N层图片编码数据;第二确定子模块,用于将N层图片编码数 据作为待传输图片的图片数据。
[0130] 通过上述实施例可以将待传输图片的格式转换为渐进式JPEG格式,得到格式为 渐进式JPEG格式的图片;将格式为渐进式JPEG格式的图片的图片数据作为待传输图片的 图片数据。通过上述的渐进式编码,可以得到N层图片编码数据,从第一层图片编码数据开 始叠加可以得到分辨率逐渐增高的图片,也即逐层叠加得到的图片可以从模糊到清晰。
[0131] 其中,渐进式JPEG格式属于JPEG国际标准的一部分,在Android、iOS和 WindowsPhone三大移动操作系统自带的JPEG编解码库都直接支持,无需引入第三方编解 码库。
[0132] 通过上述实施例,采用渐进式(progressive)JPEG格式的图片,对图片不是传统 的自上而下先左再右的编码过程,而是先轮廓后细节的编码过程,在接收到的图片数据的 数据量逐渐变大的过程中,待传输图片的展示从模糊逐渐清晰;并且在上述实施例中采用 了流式传输方式,图片数据按先主后次的顺序像水流一样在网络中传输,传输进行过程实 时处理响应:服务器实时向第一终端确认收到的待传输图片的数据容量,在接收到特定长 度之后确认发送成功,还可以通过第二终端,第二终端实时将收到的数据(即上述的预设 传输数据容量的数据)展示在第二界面上。整个图片的传输过程,无论是对于第一终端还 是对于第二终端,图片传输的时间都很短,对于使用第一终端和第二终端的用户来讲,需要 等待时间也会大大缩小。
[0133] 需要进一步说明的是,传输装置还可以包括:第一接收模块,用于在将预设传输 数据容量和图片数据上传至服务器之后,服务器实时记录已接收到待传输图片中的数据容 量;第二生成模块,用于在已接收到待传输图片中的数据容量为预设传输数据容量时,生 成确认信号和通知信号;第一发送模块,用于将确认信号发送至第一终端,其中,第一终端 为上传待传输图片的终端;以及第二发送模块,用于将通知信号发送至第二终端,其中,通 知信号用于通知第二终端接收待传输图片。
[0134] 具体地,传输装置还可以包括:第三发送模块,用于在将通知信号发送至第二终端 之后,在接收到第二终端的查看待传输图片的信息之后,将已接收到待传输图片中的数据 容量发送至第二终端。
[0135] 根据上述实施例,在第一终端按照流式传输方式将预设传输数据容量和图片数据 上传至服务器,服务器首先接收到的是预设传输数据容量,在待传输图片的图片数据上传 至服务器的过程中,服务器实时记录已接收到待传输图片中的数据容量,并且实时比较已 接收到待传输图片中的数据容量与预设传输数据容量,在已接收到待传输图片中的数据容 量为预设传输数据
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1