CN109672888B - 图片压缩方法、设备及计算机可读存储介质 - Google Patents
图片压缩方法、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109672888B CN109672888B CN201811114773.7A CN201811114773A CN109672888B CN 109672888 B CN109672888 B CN 109672888B CN 201811114773 A CN201811114773 A CN 201811114773A CN 109672888 B CN109672888 B CN 109672888B
- Authority
- CN
- China
- Prior art keywords
- picture
- compressed
- compression
- application type
- data
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种图片压缩方法、设备及计算机可读存储介质,方法包括:接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。由于使用大数据分析手段,参考了历史压缩数据进行压缩比例和图片压缩工具的适配,从而使得一次性压缩后的图片能够接近于平台系统或客户端要求的大小,减少了图片反复压缩的次数,也降低了工程师的工作量。
Description
技术领域
本发明涉及图像处理领域,尤其涉及一种图片压缩方法、设备及计算机可读存储介质。
背景技术
在通过网页或客户端显示图片之前,设计师需要对显示的图片进行设计,然后将设计好的图片发给工程师,由工程师将图片嵌入客户端。为了保证显示效果,设计师给到工程师的单张图片大小都非常大,而实际上部分平台系统,例如IOS系统,对于客户端大小的限制非常严格,嵌入客户端内的图片太大会使客户端无法通过平台系统验证。因此为了在平台系统允许的前提下尽可能保证图片的清晰度,需要对图片进行反复的压缩,但由此也导致了图片反复压缩的次数多,工程师的工作量大。
发明内容
本发明的主要目的在于提供一种图片压缩方法、设备及计算机可读存储介质,旨在通过历史压缩数据、待压缩图片的大小以及应用类型,为待压缩图片适配合适的压缩比例以及图片压缩工具,解决图片反复压缩次数多,工程师工作量大的技术问题。
为实现上述目的,本发明提供一种图片压缩方法,包括步骤:
接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。
可选地,所述根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具的步骤包括:
根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间;
获取所述预设压缩区间的两个端点值,并通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例;
根据所述待压缩图片的应用类型以及所述压缩比例,从各图片压缩工具中选择所述待压缩图片适配的图片压缩工具。
可选地,所述历史压缩数据包括已压缩图片的大小以及应用类型;
所述根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间的步骤包括:
按照已压缩图片的大小对所述已压缩图片进行聚类,得到多个样本压缩数据;
按照已压缩图片的应用类型分别对各样本压缩数据进行区分统计,并将每个样本压缩数据中应用类型最多的一类作为该样本压缩数据所属的样本应用类型;
判断各样本压缩数据分别所属的样本应用类型是否与所述待压缩图片的应用类型一致;
当各样本压缩数据分别所属的样本应用类型与所述待压缩图片的应用类型一致时,获取一致的样本应用类型所在样本压缩数据的数据范围,并将所述数据范围作为所述待压缩图片的应用类型对应的预设压缩区间。
可选地,所述通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例的步骤包括:
获取所述两个端点值的平均值;
将所述待压缩图片的大小与所述平均值相除,得到的结果作为所述待压缩图片适配的压缩比例。
可选地,所述历史压缩数据包括已压缩图片的压缩数据、应用类型、标识符以及所使用的图片压缩工具,所述压缩数据包括每张已压缩图片每次压缩前后的大小;
所述根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具的步骤包括:
按照所述已压缩图片的标识符,对所有已压缩图片的压缩数据进行筛选,获得同一标识符的已压缩图片在第一次压缩前的大小与最后一次压缩后的大小间的压缩比值;
根据筛选后已压缩图片的压缩数据,将筛选后已压缩图片在第一次压缩前的大小分成多个样本区间;
获取每个样本区间中各应用类型的已压缩图片对应的压缩比值,并计算每个应用类型的压缩比值的平均值;
根据所述已压缩图片所使用的图片压缩工具,获取每个样本区间中各应用类型对应的已压缩图片分别使用最多的图片压缩工具;
根据所述待压缩图片的大小,确定所述待压缩图片所属的样本区间;
根据所述待压缩图片的应用类型,将该样本区间中该应用类型的所述压缩比值的平均值作为所述待压缩图片适配的压缩比例,并将该样本区间中该应用类型使用最多的图片压缩工具作为所述待压缩图片适配的图片压缩工具。
可选地,所述按照所述压缩比例对所述待压缩图片进行压缩的步骤之后,还包括:
判断压缩后的图片大小是否大于该应用类型对应的预设最大图片阈值;
当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片重新作为待压缩图片,并返回步骤:获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具。
可选地,所述将压缩后的图片重新作为待压缩图片的步骤之前还包括:
当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片压缩数据加入所述历史压缩数据中。
为实现上述目的,本发明还提供一种图片压缩设备,包括:
接收模块,用于接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
获取模块,用于获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
压缩模块,用于通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。
为实现上述目的,本发明还提供一种图片压缩设备,所述设备包括:显示模块、通信模块、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的图片压缩方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的图片压缩方法的步骤。
本发明选取了多种图片压缩工具,并获取了各个图片压缩工具的历史压缩数据,然后将历史压缩数据与待压缩图片的大小以及应用类型结合,用以获得待压缩图片适配的压缩比例以及图片压缩工具;最后通过调用适配的图片压缩工具的接口,按照适配的压缩比例进行图片压缩。由于使用大数据分析手段,参考了历史压缩数据进行压缩比例和图片压缩工具的适配,从而使得一次性压缩后的图片能够接近于平台系统或客户端要求的大小,减少了图片反复压缩的次数,也降低了工程师的工作量。
附图说明
图1是本发明实施例方案涉及的图片压缩设备的结构示意图;
图2为本发明图片压缩方法第一实施例的流程示意图;
图3为本发明图片压缩方法第二实施例中步骤S20的细化流程示意图;
图4为本发明图片压缩方法第三实施例中步骤S20的细化流程示意图;
图5为本发明图片压缩设备一功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参看图1,图1为本发明所提供的图片压缩设备的硬件结构示意图。所述图片压缩设备可以是服务器、计算机或者专用于图片压缩的图片压缩平台,所述图片压缩设备包括通信模块10、存储器20、处理器30以及显示模块40等部件。在所述图片压缩设备中,所述处理器30分别与所述存储器20、所述通信模块10以及所述显示模块40连接,所述存储器20上存储有计算机程序,所述计算机程序同时被处理器30执行。
通信模块10,可通过网络与外部通讯设备连接。通信模块10可以接收外部通讯设备发出的请求,还可以发送请求、指令及信息至所述外部通讯设备。所述外部通讯设备可以是系统平台服务器和/或图片设计师对应的图像处理终端。
存储器20,可用于存储软件程序以及各种数据。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如调用图片压缩工具的接口)等;存储数据区可包括数据库,存储数据区可存储根据图片压缩设备的使用所创建的数据或信息等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。在本方案中,存储器20中可以存储有可供处理器30调用的各图片压缩工具的接口,可以存储有各图片压缩工具的历史压缩数据,还可以存储有待压缩图片的相关数据。
处理器30,是图片压缩设备的控制中心,利用各种接口和线路连接整个图片压缩设备的各个部分,通过运行或执行存储在存储器20内的软件程序和/或模块,以及调用存储在存储器20内的数据,执行图片压缩设备的各种功能和处理数据,从而对图片压缩设备进行整体监控。处理器30可包括一个或多个处理单元;可选地,处理器30可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器30中。
显示模块40,是图片压缩设备的显示部件,例如,可以是电容屏组件或液晶显示模组等等。所述显示模块40可以从存储器20中提取数据,并将数据显示为图片压缩操作界面以及图片效果展示界面等。所述显示模块40还可以集成触控模组,形成触控显示模块,用于在显示操作界面的同时,接收用户通过触控操作触发的图片压缩请求。可以理解的是,上述触控模组也可以不集成到显示模块40中,例如是独立于显示模块40的触控按键。
尽管图1未示出,但上述图片压缩设备还可以包括电路控制模块,用于与电源连接,保证其他部件的正常工作。本领域技术人员可以理解,图1中示出的图片压缩设备结构并不构成对图片压缩设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
基于上述硬件结构,提出本发明方法各个实施例。
参见图2,在本发明图片压缩方法的第一实施例中,包括:
步骤S10,接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
图片压缩设备可以通过显示模块展示图片压缩操作界面,用户在看到图片压缩操作界面后可以执行触控操作,选择待压缩图片,并由处理器生成图片压缩请求。可以理解的是,在选择待压缩图片时,可以根据待压缩图片的路径,获取待压缩图片的大小以及应用类型等信息,然后在生成图片压缩请求时将这些信息加入到请求中。上述图片的应用类型是指图片运用的位置属性,例如运用在web端、手机端、平板电脑端以及电脑端等。
步骤S20,获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
可以在图片压缩之前,通过多个图片压缩工具的接口,建立图片压缩器,并获取各图片压缩工具的历史压缩数据。获取各图片压缩工具的历史压缩数据可以是由处理器生成请求,各图片压缩工具接收到该请求后会反馈历史压缩数据给处理器。该历史压缩数据可以包括已压缩图片的压缩数据、大小、应用类型、标识符以及所使用的图片压缩工具等,其中压缩数据是指每次压缩前后图片的大小。需要说明的是,图片的大小是指图片所占的字节,例如图片的大小为20180124byte。上述图片压缩工具可以是智图工具、TinyPNG、Optimizilla、Kraken、图好快以及压缩图等等,图片压缩工具的数量是至少两个。
在获得了历史压缩数据后,结合待压缩图片的大小以及应用类型为待压缩图片适配合适的压缩比例以及图片压缩工具的过程可以根据实际需要进行设置。例如,可以将所有历史压缩数据作为大数据分析的基础,建立图片压缩模型,将图片压缩模型的输入定义为图片的大小以及应用类型,图片压缩模型的输出定义为适配的压缩比例以及所使用的压缩工具,当输入了待压缩图片的大小和应用类型后,即可通过模型得到适配的压缩比例以及所使用的压缩工具。模型的构建过程可以参考大数据分析技术进行设定,也可以参照后述实施例中如何适配的过程进行。
步骤S30,通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。
在确定了适配的图片压缩工具后,可以根据图片压缩工具的名称、路径或标识符,找到并调用该图片压缩工具的接口,同时以适配的压缩比例进行图片压缩。可选地,以适配的压缩比例进行图片压缩可以是在模型输出适配的压缩比例后,将适配的压缩比例通过显示模块显示在图片压缩操作界面上,使用户在进行图片压缩前能够根据显示的压缩比例手动调整,也可以在得到适配的压缩比例后,由处理器主动将压缩比例发送给选用的图片压缩工具。
进一步地,在图片压缩操作界面也可以以压缩百分比为作为图片压缩时的调整单元,例如压缩比例为3,则显示的压缩百分比为1/3≈33%。
本实施例接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。从而以各种图片压缩工具的历史压缩数据作为参考,为待压缩图片适配合适的压缩工具以及压缩比例,通过经验分析方法帮助在后续图片压缩过程中减少工程师压缩图片的次数,使得一次性压缩后的图片能够接近于平台系统或客户端要求的大小,降低工程师的工作量。
进一步地,参见图3,基于本发明图片压缩方法的第一实施例提出本发明图片压缩方法的第二实施例,在本实施例中,所述步骤S20包括:
步骤S21,获取各图片压缩工具的历史压缩数据;
本实施例中获取各图片压缩工具的历史压缩数据的方法与第一实施例中一致,在此不进行赘述。
步骤S221,根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间;
在本实施例中,历史压缩数据可以包括已压缩图片的大小以及应用类型。处理器可以从历史压缩数据中获取所有已压缩图片的大小,然后将已压缩图片按照图片的大小向量化,通过聚类算法进行聚类分析,得到多个样本压缩数据。在得到以图片大小划分的多个样本压缩数据后,按照已压缩图片的应用类型分别对各样本压缩数据进行区分统计,并将每个样本压缩数据中应用类型最多的一类作为该样本压缩数据所属的样本应用类型。之后可以判断各样本压缩数据分别所属的样本应用类型是否与所述待压缩图片的应用类型一致。当各样本压缩数据分别所属的样本应用类型中任一种样本应用类型与所述待压缩图片的应用类型一致时,可以将待压缩图片归类至一致的样本应用类型中,然后获取该一致的样本应用类型所在样本压缩数据的数据范围,并将所述数据范围作为所述待压缩图片的应用类型对应的预设压缩区间。当各样本压缩数据分别所属的样本应用类型均不与待压缩图片的应用类型一致时,可以按照原有的方法随意选择压缩比例尝试性地进行压缩,直至符合平台系统要求为止。
其中聚类算法例如可以是预先设置有样本类别数K的K-means(K-均值)算法,可以是基于密度的聚类方法,还可以是图团体检测算法。本实施例主要用于将图片分类得到以多个图片大小划分的样本压缩数据,对于在进行聚类分析时的算法执行过程,本领域技术人员可以借助现有的算法模型执行,在此不详细赘述。
步骤S222,获取所述预设压缩区间的两个端点值,并通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例;
通过两个端点值以及待压缩图片的大小计算适配的压缩比例的方法可以是随机选择一个端点值,将待压缩图片的大小与随机选择的端点值相除得到适配的压缩比例,也可以随机选择两个端点值之间的任一数值,将待压缩图片的大小与随机选择的任一数值结合计算适配的压缩比例。以下以选取两个端点值的平均值举例说明。
获取所述两个端点值的平均值;将所述待压缩图片的大小与所述平均值相除,得到的结果作为所述待压缩图片适配的压缩比例。例如,预设压缩区间是[50,80]之间,单位为MB。则两个端点值为50和80,通过计算可以得到其平均值为75,待压缩图片为800MB,计算得到的适配的压缩比例为800/75≈10.67。
步骤S223,根据所述待压缩图片的应用类型以及所述压缩比例,从各图片压缩工具中选择所述待压缩图片适配的图片压缩工具。
在存储器中可以建立压缩图片的应用类型、压缩比例与适配的图片压缩工具之间的映射关系表,其中映射关系表可以参照历史压缩数据建立。当确定了待压缩图片的压缩比例后,可以结合已知的待压缩图片的应用类型,从各图片压缩工具中找到该待压缩图片适配的压缩工具。映射关系可以如下表1所示。
表1映射关系表
本方案将历史数据中的已压缩图片的大小和应用类型作为参考,为待压缩图片适配了压缩区间,再结合待压缩图片的应用类型,帮助待压缩图片找到了适配了图片压缩工具。为如何通过历史数据得到适配的图片压缩工具以及压缩比例提供了模型搭建的技术基础,减少了用户重复压缩图片的次数,降低了用户的工作量。
进一步地,参见图4,基于本发明图片压缩方法的第一实施例提出本发明图片压缩方法的第三实施例,在本实施例中,所述步骤S20包括:
步骤S21,获取各图片压缩工具的历史压缩数据;
本实施例中获取各图片压缩工具的历史压缩数据的方法与第一实施例中一致,在此不进行赘述。
步骤S231,按照所述已压缩图片的标识符,对所有已压缩图片的压缩数据进行筛选,获得同一标识符的已压缩图片在第一次压缩前的大小与最后一次压缩后的大小间的压缩比值;
在本实施例中,历史压缩数据可以包括已压缩图片的压缩数据、应用类型、标识符以及所使用的图片压缩工具,所述压缩数据包括每张已压缩图片每次压缩前后的大小。
需要说明的是,为了将图片压缩到平台或系统批准的图片大小范围,通过目前已有的图片压缩方法,同一张图片需要经历多次压缩。因此可以根据已压缩图片的标识符将这些多次压缩的数据从历史压缩数据中筛除,仅保留记录同一图像内容的已压缩图片第一次压缩前的图片大小以及最后一次压缩后的图片大小。
其中,确定是否为同一图像内容的图片主要是在图片属性中按照图片的不同添加了标识符,同一标识符的图片按照压缩时间进行排序,即可得到图片压缩的完整过程数据。进一步地,还可以在图片的标识符的基础上,结合图片的名称以及图片的格式确定,如果标识符一致,图片的名称一致,图片的格式一致,则认为是同一图片内容的图片。
步骤S232,根据筛选后已压缩图片的压缩数据,将筛选后已压缩图片在第一次压缩前的大小分成多个样本区间;
已压缩图片的压缩数据中统计有每张图片压缩前的原始大小,可以将原始大小分成多个样本区间,得到每个样本区间对应的已压缩图片的压缩数据。
步骤S233,获取每个样本区间中各应用类型的已压缩图片对应的压缩比值,并计算每个应用类型的压缩比值的平均值;
在根据筛选后的已压缩图片的原始大小对压缩数据进行划分后,可以统计获得每个样本区间中各个已压缩图片的压缩比值,然后将每个样本区间对应的已压缩图片按照应用类型进行划分,并计算每个样本区间的各个应用类型的已压缩图片压缩比值的平均值,用于表示以原始大小和应用类型作为划分标准的图片集合中每个应用类型所适用的压缩比例。
步骤S234,根据所述已压缩图片所使用的图片压缩工具,获取每个样本区间中各应用类型对应的已压缩图片分别使用最多的图片压缩工具;
同样是以图片第一次压缩前的原始大小和图片的应用类型作为划分标准,还可以统计每个样本区间的各应用类型使用最多的图片压缩工具,可以将其作为该原始大小区间内该应用类型所适用的图片压缩工具。
步骤S235,根据所述待压缩图片的大小,确定所述待压缩图片所属的样本区间;
步骤S236,根据所述待压缩图片的应用类型,将该样本区间中该应用类型的所述压缩比值的平均值作为所述待压缩图片适配的压缩比例,并将该样本区间中该应用类型使用最多的图片压缩工具作为所述待压缩图片适配的图片压缩工具。
在以已压缩图片的历史压缩数据为参考,确定不同样本区间范围内各应用类型的图片适用的压缩比例和图片压缩工具后,即可根据待压缩图片的大小和应用类型找到所属的图片样本区间,将该样本区间内该应用类型的图片适用的图片压缩工具和压缩比例作为待压缩图片适配的压缩比例和图片压缩工具。本方案通过将历史数据中的已压缩图片的第一次压缩前的大小、压缩比例和应用类型作为参考,为待压缩图片适配了压缩比例和图片压缩工具。为如何通过历史数据得到适配的图片压缩工具以及压缩比例提供了模型搭建的技术基础,减少了用户重复压缩图片的次数,降低了用户的工作量。
进一步地,在其他实施例中,所述步骤S30之后还包括:
判断压缩后的图片大小是否大于该应用类型对应的预设最大图片阈值;当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片重新作为待压缩图片,并返回步骤:获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具。
每个应用类型对应有最大图片阈值,在经过上述实施例的大数据图片压缩后,图片的大小仍然大于最大图片阈值,可以再次进行图片压缩,直至图片符合平台或系统的要求为止。本方案的设置给图片大小较大的图片再次进行压缩的机会,保证了每张图片最终都能运用到,也间接提高了图片的利用率,减小了设计师的工作量。
进一步地,还可以在将压缩后的图片重新作为待压缩图片之前,将本次压缩后的图片压缩数据加入到历史压缩数据中,以起到更新历史压缩数据内容的作用。
可选地,还可以根据应用类型设置每个应用类型对应的最小图片阈值,如果该应用类型的待压缩图片的大小小于该应用类型对应的最小图片阈值,可以跳过图片压缩的步骤,直接向系统或平台申请确认是否符合图片大小的要求。
参见图5,本发明还提出一种图片压缩设备,可以是服务器、计算机或者专用于图片压缩的图片压缩平台,包括:
接收模块10,用于接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
获取模块20,用于获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
压缩模块30,用于通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩。
进一步地,在另一实施例中,所述获取模块包括:
获取单元,用于根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间;
计算单元,用于获取所述预设压缩区间的两个端点值,并通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例;
选择单元,用于根据所述待压缩图片的应用类型以及所述压缩比例,从各图片压缩工具中选择所述待压缩图片适配的图片压缩工具。
进一步地,在又一实施例中,所述历史压缩数据包括已压缩图片的大小以及应用类型;所述获取单元包括:
聚类子单元,用于按照已压缩图片的大小对所述已压缩图片进行聚类,得到多个样本压缩数据;
统计子单元,用于按照已压缩图片的应用类型分别对各样本压缩数据进行区分统计,并将每个样本压缩数据中应用类型最多的一类作为该样本压缩数据所属的样本应用类型;
判断子单元,用于判断各样本压缩数据分别所属的样本应用类型是否与所述待压缩图片的应用类型一致;
获取子单元,用于当各样本压缩数据分别所属的样本应用类型与所述待压缩图片的应用类型一致时,获取一致的样本应用类型所在样本压缩数据的数据范围,并将所述数据范围作为所述待压缩图片的应用类型对应的预设压缩区间。
进一步地,在又一实施例中,所述计算单元还用于获取所述两个端点值的平均值;并将所述待压缩图片的大小与所述平均值相除,得到的结果作为所述待压缩图片适配的压缩比例。
进一步地,在又一实施例中,所述历史压缩数据包括已压缩图片的压缩数据、应用类型、标识符以及所使用的图片压缩工具,所述压缩数据包括每张已压缩图片每次压缩前后的大小;所述获取模块包括:
筛选单元,用于按照所述已压缩图片的标识符,对所有已压缩图片的压缩数据进行筛选,获得同一标识符的已压缩图片在第一次压缩前的大小与最后一次压缩后的大小间的压缩比值;
区分单元,用于根据筛选后已压缩图片的压缩数据,将筛选后已压缩图片在第一次压缩前的大小分成多个样本区间;
计算单元,用于获取每个样本区间中各应用类型的已压缩图片对应的压缩比值,并计算每个应用类型的压缩比值的平均值;
获取单元,用于根据所述已压缩图片所使用的图片压缩工具,获取每个样本区间中各应用类型对应的已压缩图片分别使用最多的图片压缩工具;
确定单元,用于根据所述待压缩图片的大小,确定所述待压缩图片所属的样本区间;
执行单元,用于根据所述待压缩图片的应用类型,将该样本区间中该应用类型的所述压缩比值的平均值作为所述待压缩图片适配的压缩比例,并将该样本区间中该应用类型使用最多的图片压缩工具作为所述待压缩图片适配的图片压缩工具。
进一步地,在又一实施例中,所述图片压缩设备还包括:
判断模块,用于判断压缩后的图片大小是否大于该应用类型对应的预设最大图片阈值;
返回模块,用于当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片重新作为待压缩图片,并返回步骤:获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具。
进一步地,在又一实施例中,所述图片压缩设备还包括:
添加模块,用于当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片压缩数据加入所述历史压缩数据中。
本发明还提出一种计算机可读存储介质,其上存储有计算机程序。所述计算机可读存储介质可以是图1的图片压缩设备中的存储器20,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机可读存储介质包括若干指令用以使得一台具有处理器的终端设备(可以是手机,计算机,服务器,专用的图片压缩平台,或者网络设备等)执行本发明各个实施例所述的方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者服务端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者服务端所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者服务端中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种图片压缩方法,其特征在于,包括步骤:
接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩;
所述按照所述压缩比例对所述待压缩图片进行压缩的步骤之后,还包括:
判断压缩后的图片大小是否大于该应用类型对应的预设最大图片阈值;
当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片重新作为待压缩图片,并返回步骤:获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具。
2.根据权利要求1所述的图片压缩方法,其特征在于,所述根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具的步骤包括:
根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间;
获取所述预设压缩区间的两个端点值,并通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例;
根据所述待压缩图片的应用类型以及所述压缩比例,从各图片压缩工具中选择所述待压缩图片适配的图片压缩工具。
3.根据权利要求2所述的图片压缩方法,其特征在于,所述历史压缩数据包括已压缩图片的大小以及应用类型;
所述根据所述历史压缩数据和所述应用类型,获取所述应用类型对应的预设压缩区间的步骤包括:
按照已压缩图片的大小对所述已压缩图片进行聚类,得到多个样本压缩数据;
按照已压缩图片的应用类型分别对各样本压缩数据进行区分统计,并将每个样本压缩数据中应用类型最多的一类作为该样本压缩数据所属的样本应用类型;
判断各样本压缩数据分别所属的样本应用类型是否与所述待压缩图片的应用类型一致;
当各样本压缩数据分别所属的样本应用类型与所述待压缩图片的应用类型一致时,获取一致的样本应用类型所在样本压缩数据的数据范围,并将所述数据范围作为所述待压缩图片的应用类型对应的预设压缩区间。
4.根据权利要求2所述的图片压缩方法,其特征在于,所述通过所述两个端点值以及所述待压缩图片的大小计算所述待压缩图片适配的压缩比例的步骤包括:
获取所述两个端点值的平均值;
将所述待压缩图片的大小与所述平均值相除,得到的结果作为所述待压缩图片适配的压缩比例。
5.根据权利要求1所述的图片压缩方法,其特征在于,所述历史压缩数据包括已压缩图片的压缩数据、应用类型、标识符以及所使用的图片压缩工具,所述压缩数据包括每张已压缩图片每次压缩前后的大小;
所述根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具的步骤包括:
按照所述已压缩图片的标识符,对所有已压缩图片的压缩数据进行筛选,获得同一标识符的已压缩图片在第一次压缩前的大小与最后一次压缩后的大小间的压缩比值;
根据筛选后已压缩图片的压缩数据,将筛选后已压缩图片在第一次压缩前的大小分成多个样本区间;
获取每个样本区间中各应用类型的已压缩图片对应的压缩比值,并计算每个应用类型的压缩比值的平均值;
根据所述已压缩图片所使用的图片压缩工具,获取每个样本区间中各应用类型对应的已压缩图片分别使用最多的图片压缩工具;
根据所述待压缩图片的大小,确定所述待压缩图片所属的样本区间;
根据所述待压缩图片的应用类型,将该样本区间中该应用类型的所述压缩比值的平均值作为所述待压缩图片适配的压缩比例,并将该样本区间中该应用类型使用最多的图片压缩工具作为所述待压缩图片适配的图片压缩工具。
6.根据权利要求1所述的图片压缩方法,其特征在于,所述将压缩后的图片重新作为待压缩图片的步骤之前还包括:
当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片压缩数据加入所述历史压缩数据中。
7.一种图片压缩设备,其特征在于,包括:
接收模块,用于接收用户触发的图片压缩请求,其中,所述图片压缩请求包括待压缩图片的大小以及应用类型;
获取模块,用于获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具;
压缩模块,用于通过调用适配的图片压缩工具的接口,并按照所述压缩比例对所述待压缩图片进行压缩;
判断模块,用于判断压缩后的图片大小是否大于该应用类型对应的预设最大图片阈值;
返回模块,用于当压缩后的图片大小大于该应用类型对应的预设最大图片阈值时,将压缩后的图片重新作为待压缩图片,并返回步骤:获取各图片压缩工具的历史压缩数据,并根据所述历史压缩数据、所述待压缩图片的大小以及所述应用类型,获取所述待压缩图片适配的压缩比例以及图片压缩工具。
8.一种图片压缩设备,其特征在于,所述图片压缩设备包括:显示模块、通信模块、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的图片压缩方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的图片压缩方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811114773.7A CN109672888B (zh) | 2018-09-25 | 2018-09-25 | 图片压缩方法、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811114773.7A CN109672888B (zh) | 2018-09-25 | 2018-09-25 | 图片压缩方法、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109672888A CN109672888A (zh) | 2019-04-23 |
CN109672888B true CN109672888B (zh) | 2022-04-22 |
Family
ID=66142390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811114773.7A Active CN109672888B (zh) | 2018-09-25 | 2018-09-25 | 图片压缩方法、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109672888B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110298895B (zh) * | 2019-05-08 | 2024-07-09 | 平安科技(深圳)有限公司 | 基于人工智能的图片压缩方法、装置、设备及存储介质 |
CN112311720B (zh) * | 2019-07-23 | 2022-10-14 | 腾讯科技(深圳)有限公司 | 数据的传输方法及装置 |
CN110809162B (zh) * | 2020-01-07 | 2020-04-03 | 南京甄视智能科技有限公司 | 图片压缩方法、压缩装置、计算机系统与计算机可读取介质 |
CN111683189B (zh) * | 2020-05-14 | 2023-04-07 | 苏州达家迎信息技术有限公司 | 图片压缩方法、系统、终端、及存储介质 |
CN113505253B (zh) * | 2021-07-03 | 2022-07-05 | 北京中建建筑科学研究院有限公司 | 基于区块链的图片上传方法、装置、服务器及存储介质 |
CN115037937B (zh) * | 2022-06-02 | 2023-04-07 | 北京新唐思创教育科技有限公司 | 图像压缩方法、装置、设备及介质 |
CN115277674A (zh) * | 2022-07-19 | 2022-11-01 | 广州博冠信息科技有限公司 | 图片压缩的方法、装置、电子设备、介质及程序产品 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6208273B1 (en) * | 1999-01-29 | 2001-03-27 | Interactive Silicon, Inc. | System and method for performing scalable embedded parallel data compression |
CN102905045A (zh) * | 2012-10-26 | 2013-01-30 | 北京奇虎科技有限公司 | 向计算终端提供图片数据的方法及服务器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012050832A1 (en) * | 2010-09-28 | 2012-04-19 | Google Inc. | Systems and methods utilizing efficient video compression techniques for providing static image data |
US11336294B2 (en) * | 2016-06-10 | 2022-05-17 | Apple Inc. | Hybrid, adaptive virtual memory compression |
-
2018
- 2018-09-25 CN CN201811114773.7A patent/CN109672888B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6208273B1 (en) * | 1999-01-29 | 2001-03-27 | Interactive Silicon, Inc. | System and method for performing scalable embedded parallel data compression |
CN102905045A (zh) * | 2012-10-26 | 2013-01-30 | 北京奇虎科技有限公司 | 向计算终端提供图片数据的方法及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN109672888A (zh) | 2019-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109672888B (zh) | 图片压缩方法、设备及计算机可读存储介质 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
CN108023788B (zh) | 监控数据上传方法、装置、设备、系统及存储介质 | |
CN109510842B (zh) | 一种工控网络文件强制访问控制策略配置的方法及装置 | |
CN109639750B (zh) | 业务数据处理方法及设备 | |
CN109522923B (zh) | 客户地址聚合方法、装置及计算机可读存储介质 | |
CN112019820B (zh) | 界面生成方法和装置 | |
CN109002424B (zh) | 文件格式转换方法、装置、计算机设备及存储介质 | |
CN107784085B (zh) | 一种数据列表的导出方法及其终端 | |
CN113238851B (zh) | 基于云平台的脚本自动化执行方法、系统、设备及介质 | |
CN111552712A (zh) | 报表数据提取方法、装置及计算机设备 | |
CN111859127A (zh) | 消费数据的订阅方法、装置及存储介质 | |
CN112422450A (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN113590433B (zh) | 数据管理方法、数据管理系统和计算机可读存储介质 | |
CN111414395B (zh) | 数据处理方法、系统和计算机设备 | |
CN110602049A (zh) | 数据传输方法、服务器及存储介质 | |
CN111930505B (zh) | 大数据平台的数据资源管理方法及系统、服务器及介质 | |
CN111159131A (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
CN113127327B (zh) | 一种用于性能测试的测试方法及装置 | |
CN115952398B (zh) | 基于物联网的数据上传统计计算方法、系统和存储介质 | |
CN109710436B (zh) | 空间清理方法、装置、设备和计算机可读存储介质 | |
CN106681894B (zh) | 智能设备的监控方法和监控装置 | |
CN113407541A (zh) | 数据采集方法、设备、存储介质及装置 | |
CN113836130A (zh) | 数据质量评估方法、装置、设备及存储介质 | |
CN114372240A (zh) | 数据获取方法、装置、终端及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |