[0087] 其中,对于基于所述待传输图像的图像尺寸,确定所述待传输图像对应所属的目标图像尺寸集合,示例性的,若待传输图像X的宽度w为150,高度为180,那么待传输图像X(150,180)对应所属的目标图像尺寸集合就是B1,若待传输图像Y的宽度为300,高度为300,那么待传输图像Y(300,300)对应所属的目标图像尺寸集合就是B2。
[0088] 可选的,所述根据所述目标图像尺寸集合基于所述预设对应关系表,确定所述待传输图像对应的压缩倍率包括:若所述目标图像尺寸集合为B1,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为1倍;若所述目标图像尺寸集合为B2,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为2倍;若所述目标图像尺寸集合为B3,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为4倍;若所述目标图像尺寸集合为B4,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为8倍。
[0089] 如上述示例,在确定了待传输图像X的目标图像尺寸集合为B1之后,则可从预设对应关系表中查找到待传输图像X对应的压缩倍率为1倍;在确定了待传输图像Y的目标图像尺寸集合为B2之后,则可从预设对应关系表中查找到待传输图像Y对应的压缩倍率为2倍。
[0090] 步骤204、创建初始画布。
[0091] 首先创建一个初始画布decodingBitmap。需要说明的是该步骤204也可以在步骤203之前执行,本实施例对此并不进行限制。
[0092] 步骤205、根据所述压缩倍率,确定目标宽度和目标高度,并将所述初始画布调整为宽度为所述目标宽度以及高度为所述目标高度的目标画布。
[0093] 步骤206、将所述待传输图像整体压缩绘制到所述目标画布,生成目标缩略图信息。
[0094] 将所述待传输图像基于压缩倍率进行整体压缩绘制到目标画布中,并生成目标缩略图信息。
[0095] 若缩略图绘制成功,则将绘制好的目标画布以及缩略图信息赋值给getSampledDimensions函数的结果参数result。
[0096] 本实施例通过对待传输图像进行整体压缩,可以使得缩略图信息中包含待传输图像的完整图像信息,相比于现有技术中对图像局部进行
采样压缩,避免了导致一些不规则图像在计算机设备端显示不全的问题。
[0097] 步骤207、将所述目标缩略图信息传输至计算机设备,所述目标缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像。
[0098] 对图像进行合理倍率sampleSize压缩之后生成缩略图信息,通过MTP的JNI getObjectInfo,getThumbnail函数传输给PC端。
[0099] 步骤208、将所述待传输图像的缩略图信息传输至计算机设备。
[0100] 若所述待传输图像存在缩略图信息,可以直接将待传输图像的缩略图信息传输至计算机设备。
[0101] 本实施例提供的方法,若待传输图像不存在缩略图信息,那么根据待传输图像的图像尺寸按照设定压缩倍率确定规则确定合适的压缩倍率,并根据该压缩倍率对创建的初始画布的大小进行调整生成目标画布,将待传输图像基于该压缩倍率整体压缩绘制到目标画布上,生成目标缩略图信息,将目标缩略图信息传输至计算机设备中,实现了对待传输图像合理倍率的压缩,使得在计算机设备上可以显示清晰的缩略图,也有效避免了传输过程中的卡顿问题,实现了各种类型和尺寸的待传输图像都可以在计算机设备上以缩略图的形式进行显示。
[0102] 为了更好的说明和理解本申请的技术方案,图5-图7分别给出了本申请实验过程中的示例数据。
[0103] 图5给出了各种类型和尺寸的待传输图像的原图示意图,如图5所示,图a为100dp*100dp,类型为JPEG且带有合法exif缩略图信息的图像,图b为300dp*150dp,类型为PNG的图像,图c为100dp*100dp,类型为JPEG且exif缩略图信息丢失的图像,图d为400dp*600dp,类型为BMP的图像。
[0104] 图6给出了没有采用本申请提供的技术方案进行压缩,通过MTP将图像传输到计算机设备后,在计算机设备上的显示效果。如图6所示,因为图a为带有exif的图像,所以在计算机设备上以缩略图形式进行显示,因为图b为不带有缩略图信息的PNG类型的图像,所以在计算机设备上并未以缩略图形式进行显示,虽然图c为JPEG类型但由于丢失了缩略图信息,所以在计算机设备上并未以缩略图形式进行显示,因为图d为不带有缩略图信息的BMP类型的图像,所以在计算机设备上并未以缩略图形式进行显示。
[0105] 图7给出了采用本申请的技术方案对图像进行合适倍率的压缩之后,通过MTP传输到计算机设备,在计算机设备上的显示效果。如图7所示,因为图a带有exif信息所以无需压缩,且可以缩略图形式进行显示;图b的图形尺寸所对应的集合为B2,因此通过本申请技术方案进行了2倍的压缩变为150dp*75dp,并以缩略图形式进行显示;因为图c丢失了exif信息且图形尺寸对应的集合为B1,所以通过本申请技术方案进行了1倍压缩,并以缩略图形式进行显示;因为图d的图像尺寸对应的集合为B3,所以通过本申请技术方案进行了4倍压缩变为100dp*150dp,并以缩略图形式进行显示。
[0106] 图8给出了本申请实施例提供的另一种图像传输控制方法的流程图。如图8所示,本实施例提供的图像传输控制方法包括以下步骤:
[0107] 步骤301、接收到计算机设备的MTP请求。其中,所述MTP请求为向移动终端获取移动终端中待传输给计算机设备进行显示的图像数据的请求。
[0108] 步骤302、判断待传输图像是否存在缩略图信息,若存在则执行步骤311,若不存在则执行步骤303。
[0109] 步骤303、获取所述待传输图像的图像尺寸。
[0110] 步骤304、获取预先生成的图像尺寸集合与图像压缩倍率的预设对应关系表。
[0111] 步骤305、基于所述待传输图像的图像尺寸,确定所述待传输图像对应所属的目标图像尺寸集合。
[0112] 步骤306、根据所述目标图像尺寸集合基于所述预设对应关系表,确定所述待传输图像对应的压缩倍率。
[0113] 步骤307、创建初始画布。
[0114] 步骤308、根据所述压缩倍率,确定目标宽度和目标高度,并将所述初始画布调整为宽度为所述目标宽度以及高度为所述目标高度的目标画布。
[0115] 步骤309、将所述待传输图像整体压缩绘制到所述目标画布,生成目标缩略图信息。
[0116] 步骤310、将所述目标缩略图信息传输至计算机设备,所述目标缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像。
[0117] 步骤311、将所述待传输图像的缩略图信息传输至计算机设备。
[0118] 本实施例提供的方法,在接收到计算机设备的MTP请求时,判断待传输图像是否存在缩略图信息,若待传输图像不存在缩略图信息,那么根据待传输图像的图像尺寸基于预先生成的图像尺寸集合与图像压缩倍率的预设对应关系表确定合适的压缩倍率,并根据该压缩倍率对创建的初始画布的大小进行调整生成目标画布,将待传输图像基于该压缩倍率整体压缩绘制到目标画布上,生成目标缩略图信息,将目标缩略图信息传输至计算机设备中,实现了对待传输图像合理倍率的压缩,使得在计算机设备上可以显示清晰的缩略图,也有效避免了传输过程中的卡顿问题,实现了各种类型和尺寸的待传输图像都可以在计算机设备上以缩略图的形式进行显示。
[0119] 图9为本申请实施例提供的一种图像传输控制装置的结构示意图,该装置可由软件和/或
硬件实现,集成在移动终端中。如图9所示,该装置包括缩略图信息判断模块41、缩略图信息生成模块42和缩略图信息传输模块43。
[0120] 所述缩略图信息判断模块41,用于确定是否存在待传输图像的缩略图信息;
[0121] 所述缩略图信息生成模块42,用于若不存在所述缩略图信息,则将所述待传输图像按照设定压缩方式进行压缩,生成目标缩略图信息;
[0122] 所述缩略图信息传输模块43,用于将所述目标缩略图信息传输至计算机设备,所述目标缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像。
[0123] 本实施例提供的装置,在移动终端与计算机设备通信连接之后,移动终端向计算机设备传输图像信息之前,通过先判断待传输图像是否存在缩略图信息,在待传输图像不存在缩略图信息时,按照设定压缩方式对待传输图像进行压缩生成缩略图信息,将缩略图信息传输至计算机设备,所述缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像,实现了各种类型的待传输图像都有对应的缩略图信息,通过将待传输图像的缩略图信息传输至计算机设备端,使得各种类型的待传输图像都可以缩略图的形式在计算机设备上进行显示,大大缩短了用户在大量图片中过滤搜寻目标图片的时间。
[0124] 可选的,所述缩略图信息生成模块将所述待传输图像按照设定压缩方式进行压缩,生成目标缩略图信息包括:
[0125] 获取所述待传输图像的图像信息,所述图像信息包括图像尺寸;
[0126] 按照设定压缩倍率确定规则,基于所述图像信息确定所述待传输图像的压缩倍率;
[0127] 按照所述压缩倍率绘制目标画布,生成目标缩略图信息。
[0128] 可选的,所述缩略图信息生成模块按照设定压缩倍率确定规则,基于所述图像信息确定所述待传输图像的压缩倍率包括:
[0129] 获取预先生成的图像尺寸集合与图像压缩倍率的预设对应关系表;
[0130] 基于所述待传输图像的图像尺寸,确定所述待传输图像对应所属的目标图像尺寸集合;
[0131] 根据所述目标图像尺寸集合基于所述预设对应关系表,确定所述待传输图像对应的压缩倍率。
[0132] 可选的,所述装置还包括:
[0133] 预设图像尺寸参照集合获取模块,用于获取预设图像尺寸参照集合A1、预设图像尺寸参照集合A2、预设图像尺寸参照集合A3、预设图像尺寸参照集合A4、预设图像尺寸参照集合A5,其中所述A1包括集合{(w,h)|int w<=100dp或int h<=100dp},所述A2包括集合{(w,h)|int w<=200dp或int h<=200dp};所述A3包括集合{(w,h)|int w<=400dp或int h<=400dp};所述A4包括集合{(w,h)|int w<=800dp或int h<=800dp};所述A5包括集合{(w,h)|int w<=1600dp或int h<=1600dp},所述w为图像的宽度,所述h为图像的高度;
[0134] 图像尺寸集合获取模块,用于计算图像尺寸集合B1、图像尺寸集合B2、图像尺寸集合B3、图像尺寸集合B4,其中B1为所述A2和所述A1的差值,B2为所述A3和所述A2的差值,B3为所述A4和所述A3的差值,B4为所述A5和所述A4的差值;
[0135] 压缩倍率确定模块,用于确定图像尺寸集合B1、图像尺寸集合B2、图像尺寸集合B3、图像尺寸集合B4对应的压缩倍率分别为1倍、2倍、4倍和8倍;
[0136] 预设对应关系表生成模块,用于生成图像尺寸集合B1、图像尺寸集合B2、图像尺寸集合B3、图像尺寸集合B4与各自压缩倍率的预设对应关系表。
[0137] 可选的,所述缩略图信息生成模块根据所述目标图像尺寸集合基于所述预设对应关系表,确定所述待传输图像对应的压缩倍率包括:
[0138] 若所述目标图像尺寸集合为B1,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为1倍;
[0139] 若所述目标图像尺寸集合为B2,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为2倍;
[0140] 若所述目标图像尺寸集合为B3,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为4倍;
[0141] 若所述目标图像尺寸集合为B4,则基于所述预设对应关系表确定所述待传输图像对应的压缩倍率为8倍。
[0142] 可选的,所述缩略图信息生成模块按照所述压缩倍率绘制目标画布,生成目标缩略图信息包括:
[0143] 创建初始画布;
[0144] 根据所述压缩倍率,确定目标宽度和目标高度,并将所述初始画布调整为宽度为所述目标宽度以及高度为所述目标高度的目标画布;
[0145] 将所述待传输图像整体压缩绘制到所述目标画布,生成目标缩略图信息。
[0147] 图像类型获取模块,用于获取待传输图像的图像类型;
[0148] 所述缩略图信息判断模块具体用于:
[0149] 若所述图像类型为第一设定类型,则判断所述待传输图像是否包含缩略图信息;若不包含,则确定不存在待传输图像的缩略图信息;若包含,则判断所包含的缩略图信息是否合法;若合法,则确定存在待传输图像的缩略图信息;若不合法,则确定不存在待传输图像的缩略图信息;
[0150] 若所述图像类型为第二设定类型,则确定不存在所述待传输图像的缩略图信息;
[0151] 其中,所述第一设定类型包括联合图像专家小组JPEG类型、数字化新闻采集DNG类型和标签图像文件格式TIFF类型,所述第二设定类型包括可移植网络图形PNG类型、位图BMP类型、图像互换格式GIF类型、可缩放矢量图形SVG类型或者原始图像数据存储格式RAW类型。
[0152] 可选的,所述缩略图信息传输模块用于:
[0153] 基于媒体传输协议MTP,将所述目标缩略图信息通过getThumbmail函数以对象方式传输至计算机设备。
[0154] 本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种图像传输控制方法,该方法包括:
[0155] 确定是否存在待传输图像的缩略图信息;
[0156] 若不存在所述缩略图信息,则将所述待传输图像按照设定压缩方式进行压缩,生成目标缩略图信息;
[0157] 将所述目标缩略图信息传输至计算机设备,所述目标缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像。
[0158] 存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、
软盘或磁带装置;
计算机系统存储器或
随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;
非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同
位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
[0159] 当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的图像传输控制操作,还可以执行本申请任意实施例所提供的图像传输控制方法中的相关操作。
[0160] 本申请实施例提供了一种移动终端,该移动终端中可集成本申请实施例提供的图像传输控制装置。图10为本申请实施例提供的一种移动终端的结构示意图。移动终端500可以包括:存储器501,处理器502及存储在存储器501上并可在处理器502运行的计算机程序,所述处理器502执行所述计算机程序时实现如本申请实施例所述的图像传输控制方法。
[0161] 本申请实施例提供的移动终端,实现了各种类型的待传输图像都有对应的缩略图信息,通过将待传输图像的缩略图信息传输至计算机设备端,使得各种类型的待传输图像都可以缩略图的形式在计算机设备上进行显示,大大缩短了用户在大量图片中过滤搜寻目标图片的时间。
[0162] 图11为本申请实施例提供的另一种移动终端的结构示意图,如图11所示,该移动终端可以包括:存储器601、
中央处理器(Central Processing Unit,CPU)602(又称处理器,以下简称CPU)、所述存储器601,用于存储可执行程序代码;所述处理器602通过读取所述存储器601中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行:确定是否存在待传输图像的缩略图信息;若不存在所述缩略图信息,则将所述待传输图像按照设定压缩方式进行压缩,生成目标缩略图信息;将所述目标缩略图信息传输至计算机设备,所述目标缩略图信息用于指示所述计算机设备以缩略图形式显示所述待传输图像。
[0163] 所述移动终端还包括:外设接口603、RF(Radio Frequency,射频)
电路605、音频电路606、扬声器611、电源管理芯片608、输入/输出(I/O)子系统609、
触摸屏612、其他输入/控制设备610以及外部端口604,这些部件通过一个或多个通信总线或
信号线607来通信。
[0164] 应该理解的是,图示移动终端600仅仅是移动终端的一个范例,并且移动终端600可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个
信号处理和/或
专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
[0165] 下面就本实施例提供的用于图像传输控制的移动终端进行详细的描述,该移动终端以手机为例。
[0166] 存储器601,所述存储器601可以被CPU602、外设接口603等
访问,所述存储器601可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0167] 外设接口603,所述外设接口603可以将设备的输入和输出外设连接到CPU502和存储器601。
[0168] I/O子系统609,所述I/O子系统609可以将设备上的输入输出外设,例如触摸屏612和其他输入/控制设备610,连接到外设接口603。I/O子系统609可以包括显示
控制器6091和用于控制其他输入/控制设备610的一个或多个输入控制器6092。其中,一个或多个输入控制器6092从其他输入/控制设备610接收
电信号或者向其他输入/控制设备610发送电信号,其他输入/控制设备610可以包括物理按钮(按压按钮、
摇臂按钮等)、拨号盘、滑动
开关、操纵杆、点击滚轮。值得说明的是,输入控制器6092可以与以下任一个连接:
键盘、红外端口、USB接口以及诸如
鼠标的指示设备。
[0169] 触摸屏612,所述触摸屏612是用户终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。
[0170] I/O子系统609中的显示控制器6091从触摸屏612接收电信号或者向触摸屏612发送电信号。触摸屏612检测触摸屏上的
接触,显示控制器6091将检测到的接触转换为与显示在触摸屏612上的
用户界面对象的交互,即实现
人机交互,显示在触摸屏612上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。
[0171] RF电路605,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、
电子邮件等。具体地,RF电路605接收并发送RF信号,RF信号也称为电磁信号,RF电路605将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。RF电路605可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、RF收发机、一个或多个
放大器、调谐器、一个或多个
振荡器、
数字信号处理器、CODEC(COder-DECoder,编译码器)
芯片组、用户标识模块(Subscriber Identity Module,SIM)等等。
[0172] 音频电路606,主要用于从外设接口603接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器611。
[0173] 扬声器611,用于将手机通过RF电路605从无线网络接收的
语音信号,还原为声音并向用户播放该声音。
[0174] 电源管理芯片608,用于为CPU602、I/O子系统及外设接口603所连接的硬件进行供电及电源管理。
[0175] 上述实施例中提供的图像传输控制装置、存储介质及移动终端可执行本申请任意实施例所提供的图像传输控制方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的图像传输控制方法。
[0176] 上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由
权利要求的范围决定。