CN112131423A - 图片获取方法、装置及系统 - Google Patents
图片获取方法、装置及系统 Download PDFInfo
- Publication number
- CN112131423A CN112131423A CN201910556705.4A CN201910556705A CN112131423A CN 112131423 A CN112131423 A CN 112131423A CN 201910556705 A CN201910556705 A CN 201910556705A CN 112131423 A CN112131423 A CN 112131423A
- Authority
- CN
- China
- Prior art keywords
- target
- picture
- pictures
- video
- frame interval
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012545 processing Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000012549 training Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
Landscapes
- Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请公开了一种图片获取方法、装置及系统,属于图像处理技术领域。所述方法包括:接收终端的图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,为所述终端提供已存储的所述至少一个图片。本申请缩短了终端获取图片所需的时间,提高了图片的获取效率。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图片获取方法、装置及系统。
背景技术
算法训练需要大量的图片,而原始数据大多是视频,如何基于视频获取所需图片(也即是,对视频进行截图),对节约训练时间具有重大意义。
假设基于视频获取图片的方法如下:用户在终端上选取视频,终端根据用户选取的视频,向服务器发送对该视频的图片获取请求(截图请求),服务器在接收到该图片获取请求时,可以对该视频进行解码,得到该视频的所有图像帧,然后按照图片获取请求所指示的帧间隔,从该视频的所有图像帧中获取多个图像帧,以帧间隔为隔5帧为例,服务器可以获取第5帧、第10帧、第15帧、……、第n帧,n为5的倍数,然后服务器可以将该多个图像帧编码为相应的图片,并将图片返回给终端。
上述技术根据用户选取的视频获取相应的图片,如果用户先后选取相同的视频,则服务器每次都需要进行解码和编码等多个步骤,来获取相应图片后发送给终端,导致终端获取图片所需的时间较长,图片的获取效率低。
申请内容
本申请实施例提供了一种图片获取方法、装置及系统,可以解决相关技术图片的获取效率低的问题。所述技术方案如下:
第一方面,提供了一种图片获取方法,所述方法包括:
接收终端的图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,为所述终端提供已存储的所述至少一个图片。
在一种可能实现方式中,所述根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片,包括:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,所述根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片,包括:
根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述多个目标图片中已存储的至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,所述根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片的序号,包括:
当所述目标帧间隔为所述历史帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述目标帧间隔的整数倍,所述整数倍大于或等于1;或者,
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔的整数倍;或者,
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔和所述目标帧间隔的公倍数。
在一种可能实现方式中,所述根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片,包括:
根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述至少一个图片。
在一种可能实现方式中,所述根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片的序号,包括:
根据所述目标帧间隔和所述历史序号,将所述历史序号中为所述目标帧间隔的整数倍的序号,作为所述多个目标图片中已存储的至少一个图片的序号;或者,
根据所述目标帧间隔,确定所述目标视频中所述多个目标图片的序号,将所述多个目标图片的序号中包含在所述历史序号中的序号,作为所述多个目标图片中已存储的至少一个图片的序号。
在一种可能实现方式中,所述为所述终端提供已存储的所述至少一个图片,包括:
将所述至少一个图片发送给所述终端,或者,
将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址用于供所述终端获取所述至少一个图片。
在一种可能实现方式中,所述为所述终端提供已存储的所述至少一个图片之后,所述方法还包括:
根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,对所述各个视频帧中的第一视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第一视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔的整数倍;
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,对所述各个视频帧中的第二视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第二视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔和所述目标帧间隔的公倍数。
在一种可能实现方式中,所述根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第三视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述多个第三视频帧的帧序号为所述目标帧间隔的整数倍且不包含在所述历史序号中。
在一种可能实现方式中,所述为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片,包括:
将所述多个目标图片中除所述至少一个图片以外的图片发送给所述终端;或者,
对所述多个目标图片中除所述至少一个图片以外的图片进行存储,得到所述多个目标图片中除所述至少一个图片以外的图片的存储地址,将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述终端。
在一种可能实现方式中,所述读取图片获取记录之后,所述方法还包括:
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,为所述终端提供所述多个目标图片。
在一种可能实现方式中,所述根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第四视频帧进行编码,得到所述多个目标图片,所述多个第四视频帧的帧序号为所述目标帧间隔的整数倍。
在一种可能实现方式中,所述为所述终端提供所述多个目标图片,包括:
将所述多个目标图片发送给所述终端;或者,
对所述多个目标图片进行存储,得到所述多个目标图片的存储地址,将所述多个目标图片的存储地址发送给所述终端。
在一种可能实现方式中,所述根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,包括:
通过多个线程根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,每个线程用于获取所述多个目标图片中的部分图片。
第二方面,提供了一种图片获取装置,所述装置包括:
接收模块,用于接收终端的图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
读取模块,用于读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
确定模块,用于根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片;
提供模块,用于为所述终端提供已存储的所述至少一个图片。
在一种可能实现方式中,所述确定模块用于:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,所述确定模块用于:
根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述多个目标图片中已存储的至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,所述确定模块用于:
当所述目标帧间隔为所述历史帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述目标帧间隔的整数倍,所述整数倍大于或等于1;或者,
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔的整数倍;或者,
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔和所述目标帧间隔的公倍数。
在一种可能实现方式中,所述确定模块用于:
根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述至少一个图片。
在一种可能实现方式中,所述确定模块用于:
根据所述目标帧间隔和所述历史序号,将所述历史序号中为所述目标帧间隔的整数倍的序号,作为所述多个目标图片中已存储的至少一个图片的序号;或者,
根据所述目标帧间隔,确定所述目标视频中所述多个目标图片的序号,将所述多个目标图片的序号中包含在所述历史序号中的序号,作为所述多个目标图片中已存储的至少一个图片的序号。
在一种可能实现方式中,所述提供模块用于:
将所述至少一个图片发送给所述终端,或者,
将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址用于供所述终端获取所述至少一个图片。
在一种可能实现方式中,所述装置还包括:
获取模块,用于根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
所述提供模块还用于为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,所述获取模块用于根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,所述获取模块用于根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,对所述各个视频帧中的第一视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第一视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔的整数倍;
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,对所述各个视频帧中的第二视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第二视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔和所述目标帧间隔的公倍数。
在一种可能实现方式中,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第三视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述多个第三视频帧的帧序号为所述目标帧间隔的整数倍且不包含在所述历史序号中。
在一种可能实现方式中,所述提供模块用于:
将所述多个目标图片中除所述至少一个图片以外的图片发送给所述终端;或者,
对所述多个目标图片中除所述至少一个图片以外的图片进行存储,得到所述多个目标图片中除所述至少一个图片以外的图片的存储地址,将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述终端。
在一种可能实现方式中,所述装置还包括:
所述确定模块还用于根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片;
获取模块,用于根据所述目标视频和所述目标帧间隔,获取所述多个目标图片;
所述提供模块还用于为所述终端提供所述多个目标图片。
在一种可能实现方式中,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第四视频帧进行编码,得到所述多个目标图片,所述多个第四视频帧的帧序号为所述目标帧间隔的整数倍。
在一种可能实现方式中,所述提供模块用于:
将所述多个目标图片发送给所述终端;或者,
对所述多个目标图片进行存储,得到所述多个目标图片的存储地址,将所述多个目标图片的存储地址发送给所述终端。
在一种可能实现方式中,所述获取模块用于:
通过多个线程根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,每个线程用于获取所述多个目标图片中的部分图片。
第三方面,提供一种图片获取系统,所述系统包括终端和服务器,
所述终端用于向所述服务器发送图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
所述服务器用于当接收到终端的图片获取请求时,读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
所述服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,为所述终端提供已存储的所述至少一个图片。
在一种可能实现方式中,所述服务器还用于:
根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述服务器还用于:
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,为所述终端提供所述多个目标图片。
第四方面,提供一种图片获取系统,所述系统包括终端、控制服务器、存储服务器和图片获取服务器,
所述终端用于向所述控制服务器发送图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
所述控制服务器用于当接收到终端的图片获取请求时,读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
所述控制服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,获取所述至少一个图片的存储地址,将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址为所述至少一个图片在所述存储服务器中的存储地址;
所述终端还用于根据所述至少一个图片的存储地址,从所述存储服务器获取所述至少一个图片。
在一种可能实现方式中,所述控制服务器还用于向所述图片获取服务器发送第一图片获取请求,所述第一图片获取请求用于请求获取所述多个目标图片中除所述至少一个图片以外的图片;
所述图片获取服务器还用于当接收到所述第一图片获取请求时,获取所述多个目标图片中除所述至少一个图片以外的图片,将所述多个目标图片中除所述至少一个图片以外的图片发送给所述存储服务器;
所述存储服务器还用于对所述多个目标图片中除所述至少一个图片以外的图片进行存储,得到所述多个目标图片中除所述至少一个图片以外的图片的存储地址,将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述控制服务器;
所述控制服务器还用于将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述终端;
所述终端还用于根据所述多个目标图片中的至少一个图片的存储地址,从所述存储服务器获取所述多个目标图片中的至少一个图片;根据所述多个目标图片中除所述至少一个图片以外的图片的存储地址,从所述存储服务器获取所述多个目标图片中除所述至少一个图片以外的图片。
在一种可能实现方式中,所述控制服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,向所述图片获取服务器发送第二图片获取请求,所述第二图片获取请求用于请求获取所述多个目标图片;
所述图片获取服务器还用于当接收到所述第二图片获取请求时,获取所述多个目标图片,将所述多个目标图片发送给所述存储服务器;
所述存储服务器还用于对所述多个目标图片进行存储,得到所述多个目标图片的存储地址,将所述多个目标图片的存储地址发送给所述控制服务器;
所述控制服务器还用于将所述多个目标图片的存储地址发送给所述终端;
所述终端还用于根据所述多个目标图片的存储地址,从所述存储服务器获取所述多个目标图片。
第五方面,提供了一种服务器,包括一个或多个处理器和一个或多个存储器;所述一个或多个存储器,用于存放至少一条指令;所述一个或多个处理器,用于执行所述一个或多个存储器上所存放的至少一条指令,实现第一方面任一种实现方式所述的方法步骤。
第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有至少一条指令,所述至少一条指令被处理器执行时实现第一方面任一种实现方式所述的方法步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过在接收到终端的图片获取请求时,读取图片获取记录,当根据图片获取记录和图片获取请求中携带的该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,将该多个目标图片中已存储的至少一个图片提供给终端。由于图片获取记录记录包括根据历史帧间隔获取对应图片的记录,因而根据图片获取记录记录以及目标视频和目标帧间隔,即可判断是否已经存储了终端所请求的多个目标图片中的至少一个图片,这样可以在确定已经获取过该多个目标图片中至少一个图片的情况下,直接将已存储的至少一个图片发送给终端,无需重新获取该多个目标图片中已存储的图片,缩短了终端获取图片所需的时间,提高了图片的获取效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图片获取系统的示意图;
图2是本申请实施例提供的一种图片获取方法的流程图;
图3是本申请实施例提供的一种图片获取方法的流程图;
图4是本申请实施例提供的一种图片获取方法的流程图;
图5是本申请实施例提供的一种图片获取过程的示意图;
图6是本申请实施例提供的一种图片获取装置的结构示意图;
图7是本申请实施例提供的一种服务器700的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种图片获取系统的示意图,如图1中的(a)图所示,该图片获取系统可以包括终端101和服务器102。该情况下,该服务器102负责存储图片和获取图片,终端101可以向服务器102发送图片获取请求,该图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片。
服务器102在接收到终端101的图片获取请求后,如果根据该图片获取记录、该目标帧间隔和该目标视频,确定已存储该多个目标图片中的至少一个图片,则服务器102可以将已存储的该至少一个图片提供给该终端101。服务器102还可以获取该多个目标图片中除该至少一个图片以外的图片,将其提供给终端101,使得终端101可以获取到该多个目标图片。如果根据该图片获取记录、该目标帧间隔和该目标视频,确定未存储该多个目标图片中的任一图片,则服务器102可以根据目标视频和目标帧间隔,获取多个目标图片,为终端101提供该多个目标图片。
如图1中的(b)图所示,该图片获取系统可以包括终端103、控制服务器104、存储服务器105和图片获取服务器106。该情况下,存储服务器105负责存储图片,终端103可以向控制服务器104发送图片获取请求,控制服务器104在接收到图片获取请求后,如果根据该图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片,则可以将该至少一个图片的存储地址发送给该终端103。控制服务器104还可以向图片获取服务器106发送图片获取请求(图片获取任务),由图片获取服务器106获取该多个目标图片中除该至少一个图片以外的图片,并将其存储到存储服务器105,得到其存储地址后,由控制服务器104将其存储地址发送给终端103。当控制服务器104根据该图片获取记录、该目标帧间隔和该目标视频确定未获取该多个目标图片中的任一图片时,控制服务器104可以向图片获取服务器106发送图片获取请求,由图片获取服务器106获取该多个目标图片,并将其存储到存储服务器105,得到其存储地址后,由控制服务器104将其存储地址发送给终端103。
图2是本申请实施例提供的一种图片获取方法的流程图。参见图2,该方法包括:
201、接收终端的图片获取请求,该图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片。
202、读取图片获取记录,该图片获取记录包括根据历史帧间隔获取对应图片的记录。
203、当根据该图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,为该终端提供已存储的该至少一个图片。
本申请实施例提供的方法,通过在接收到终端的图片获取请求时,读取图片获取记录,当根据图片获取记录和图片获取请求中携带的该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,将该多个目标图片中已存储的至少一个图片提供给终端。由于图片获取记录记录包括根据历史帧间隔获取对应图片的记录,因而根据图片获取记录记录以及目标视频和目标帧间隔,即可判断是否已经存储了终端所请求的多个目标图片中的至少一个图片,这样可以在确定已经获取过该多个目标图片中至少一个图片的情况下,直接将已存储的至少一个图片发送给终端,无需重新获取该多个目标图片中已存储的图片,缩短了终端获取图片所需的时间,提高了图片的获取效率。
在一种可能实现方式中,该根据该图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片,包括:
该图片获取记录包括获取该目标视频中的图片的历史帧间隔,根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片;或者,
该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号,根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,该根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片,包括:
根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片的序号;
根据该多个目标图片中已存储的至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,该根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片的序号,包括:
当该目标帧间隔为该历史帧间隔的整数倍时,确定该多个目标图片中已存储的至少一个图片的序号为该目标帧间隔的整数倍,该整数倍大于或等于1;或者,
当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔的整数倍;或者,
当该历史帧间隔与该目标帧间隔不存在整数倍关系时,确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔和该目标帧间隔的公倍数。
在一种可能实现方式中,该根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片,包括:
根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片的序号;
根据该至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该至少一个图片。
在一种可能实现方式中,该根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片的序号,包括:
根据该目标帧间隔和该历史序号,将该历史序号中为该目标帧间隔的整数倍的序号,作为该多个目标图片中已存储的至少一个图片的序号;或者,
根据该目标帧间隔,确定该目标视频中该多个目标图片的序号,将该多个目标图片的序号中包含在该历史序号中的序号,作为该多个目标图片中已存储的至少一个图片的序号。
在一种可能实现方式中,该为该终端提供已存储的该至少一个图片,包括:
将该至少一个图片发送给该终端,或者,
将该至少一个图片的存储地址发送给该终端,该至少一个图片的存储地址用于供该终端获取该至少一个图片。
在一种可能实现方式中,该为该终端提供已存储的该至少一个图片之后,该方法还包括:
根据该图片获取记录、该目标帧间隔和该目标视频,获取该多个目标图片中除该至少一个图片以外的图片;
为该终端提供该多个目标图片中除该至少一个图片以外的图片。
在一种可能实现方式中,该根据该图片获取记录、该目标帧间隔和该目标视频,获取该多个目标图片中除该至少一个图片以外的图片,包括:
该图片获取记录包括获取该目标视频中的图片的历史帧间隔,根据该目标视频、该目标帧间隔和该历史帧间隔,获取该多个目标图片中除该至少一个图片以外的图片;或者,
该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号,根据该目标视频、该目标帧间隔和该历史序号,获取该多个目标图片中除该至少一个图片以外的图片。
在一种可能实现方式中,该根据该目标视频、该目标帧间隔和该历史帧间隔,获取该多个目标图片中除该至少一个图片以外的图片,包括:
对该目标视频进行解码,得到该目标视频的各个视频帧;
当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,对该各个视频帧中的第一视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第一视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔的整数倍;
当该历史帧间隔与该目标帧间隔不存在整数倍关系时,对该各个视频帧中的第二视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第二视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔和该目标帧间隔的公倍数。
在一种可能实现方式中,该根据该目标视频、该目标帧间隔和该历史序号,获取该多个目标图片中除该至少一个图片以外的图片,包括:
对该目标视频进行解码,得到该目标视频的各个视频帧;
对该各个视频帧中的多个第三视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该多个第三视频帧的帧序号为该目标帧间隔的整数倍且不包含在该历史序号中。
在一种可能实现方式中,该为该终端提供该多个目标图片中除该至少一个图片以外的图片,包括:
将该多个目标图片中除该至少一个图片以外的图片发送给该终端;或者,
对该多个目标图片中除该至少一个图片以外的图片进行存储,得到该多个目标图片中除该至少一个图片以外的图片的存储地址,将该多个目标图片中除该至少一个图片以外的图片的存储地址发送给该终端。
在一种可能实现方式中,该读取图片获取记录之后,该方法还包括:
当根据该图片获取记录、该目标帧间隔和该目标视频确定未存储该多个目标图片中的任一图片时,根据该目标视频和该目标帧间隔,获取该多个目标图片,为该终端提供该多个目标图片。
在一种可能实现方式中,该根据该目标视频和该目标帧间隔,获取该多个目标图片,包括:
对该目标视频进行解码,得到该目标视频的各个视频帧;
对该各个视频帧中的多个第四视频帧进行编码,得到该多个目标图片,该多个第四视频帧的帧序号为该目标帧间隔的整数倍。
在一种可能实现方式中,该为该终端提供该多个目标图片,包括:
将该多个目标图片发送给该终端;或者,
对该多个目标图片进行存储,得到该多个目标图片的存储地址,将该多个目标图片的存储地址发送给该终端。
在一种可能实现方式中,该根据该目标视频和该目标帧间隔,获取该多个目标图片,包括:
通过多个线程根据该目标视频和该目标帧间隔,获取该多个目标图片,每个线程用于获取该多个目标图片中的部分图片。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
图3是本申请实施例提供的一种图片获取方法的流程图。该方法可以由服务器执行,参见图3,该方法包括:
301、接收终端的图片获取请求,该图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片。
其中,图片获取请求也可以称为截图请求或图片截取请求等。根据目标帧间隔获取目标视频对应的多个目标图片是指根据目标帧间隔获取目标视频的多个视频帧,并将该多个视频帧转换为多个目标图片。目标帧间隔是指隔目标数量帧,也即是获取目标数量的整数倍帧,如隔5帧,则获取5的整数倍帧,包括第5帧、第10帧、第15帧、……、第X帧,其中,X为5的整数倍,整数倍大于或等于1。在一些实施例中,根据目标帧间隔获取目标视频的多个视频帧时,也可以取第1帧,如目标帧间隔为隔5帧时,则获取目标视频的多个视频帧为第1帧、第5帧、第10帧、第15帧、……、第X帧。在获取目标视频的多个视频帧前,可以先对目标视频进行解码,得到目标视频的各个视频帧后,再根据目标帧间隔从中获取多个视频帧,将该多个视频帧转换为多个目标图片也即是将多个视频帧编码为多个目标图片。对于第5帧、第10帧、第15帧、……、第X帧中的5、10、15、……、X等为帧序号,帧序号用于表示视频帧在视频的各个视频帧中的排列位置,也表示时间顺序。
本申请实施例中,用户可以在终端上浏览服务器上存储的视频,用户可以选中目标视频,并设置目标帧间隔,触发终端向服务器发送图片获取请求,该图片获取请求中可以携带目标视频的视频标识和目标帧间隔。
服务器在接收终端的图片获取请求之前,服务器可以接收终端上传的目标视频,当接收到该目标视频时,服务器可以对该目标视频进行存储。服务器在对该目标视频进行存储后,用户可以在终端浏览到该目标视频。
302、读取图片获取记录,该图片获取记录包括根据历史帧间隔获取对应图片的记录。
本申请实施例中,服务器可以维护图片获取记录,该图片获取记录包括但不限于以下两种记录方式:
第一种方式、该图片获取记录包括获取该目标视频中的图片的历史帧间隔。
该历史帧间隔可以包括一个或多个帧间隔。每次获取该目标视频对应的图片后,服务器可以在该图片获取记录中记录本次获取该目标视频中的图片的帧间隔。
在一些实施例中,该图片获取记录中还可以包括获取其他视频中的图片的历史帧间隔。每当获取任一视频对应的图片后,服务器可以在该图片获取记录中记录本次获取该视频的图片的帧间隔。这种情况下,该图片获取记录可以以视频标识为索引,根据视频标识可以查询到对应的历史帧间隔。
第二种方式、该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号。
该历史序号可以包括多个序号,每次获取该目标视频对应的图片后,可以在该图片获取记录中记录图片的序号,图片的序号也可以称为帧序号,如图片对应的视频帧的帧序号。例如,图片的序号为5,则表示该图片是根据目标视频的第5帧编码得到。
服务器可以根据图片获取记录、目标帧间隔和目标视频判断是否已经存储步骤301中终端请求获取的该多个目标图片,如果已存储该多个目标图片中的至少一个图片,则执行后续步骤303至步骤305,如果未存储该多个目标图片中的任一图片,则执行后续步骤306至步骤307。
303、当根据该图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,为该终端提供已存储的该至少一个图片。
(1)图片获取记录包括获取该目标视频中的图片的历史帧间隔。
在一种可能实现方式中,该多个目标图片中的至少一个图片的确定过程可以包括:根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片。
具体地,该确定过程可以包括步骤一和步骤二:
步骤一、根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片的序号。
第一种情况、当该目标帧间隔为该历史帧间隔的整数倍时,服务器可以确定该多个目标图片中已存储的至少一个图片的序号为该目标帧间隔的整数倍,该整数倍大于或等于1。
该情况下,服务器可以确定已存储该多个目标图片中的全部图片。例如,目标帧间隔为隔4帧,则多个目标图片的序号为4、8、12……4n等,如果图片获取记录中的历史帧间隔为隔4帧,则根据该历史帧间隔已获取并存储的图片的序号为4、8、12……4n等,该情况下,多个目标图片中已存储的至少一个图片的序号为4、8、12……4n。如果图片获取记录中的历史帧间隔为隔2帧,则根据该历史帧间隔已获取并存储的图片的序号为2、4、6……2n等,该情况下,多个目标图片中已存储的至少一个图片的序号为4、8、12……4n。其中,n为正整数。
第二种情况、当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,服务器可以确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔的整数倍。
该情况下,服务器可以确定已存储该多个目标图片中的部分图片。例如,目标帧间隔为隔4帧,则多个目标图片的序号为4、8、12……4n等,如果图片获取记录中的历史帧间隔为隔8帧,则根据该历史帧间隔已获取并存储的图片的序号为8、16、24……8n等,该情况下,多个目标图片中已存储的至少一个图片的序号为8、16、24……8n。
第三种情况、当该历史帧间隔与该目标帧间隔不存在整数倍关系时,服务器可以确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔和该目标帧间隔的公倍数。
该情况下,服务器可以确定已存储该多个目标图片中的部分图片。例如,目标帧间隔为隔4帧,则多个目标图片的序号为4、8、12、……4n等,如果图片获取记录中的历史帧间隔为隔3帧,则根据该历史帧间隔已获取并存储的图片的序号为3、6、9、……3n等,该情况下,多个目标图片中已存储的至少一个图片的序号为12、24、36、……12n。
步骤二、根据该多个目标图片中已存储的至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该多个目标图片中已存储的至少一个图片。
服务器在接收到终端的图片获取请求之前,可能已经存储有该目标视频中的至少一个图片,例如,服务器根据历史帧间隔获取并存储的图片,服务器可以按照序号对该目标视频的各个图片进行存储,这样,服务器可以根据多个目标图片中至少一个图片的序号,从已存储的这些图片中,确定出该至少一个图片。
在一些实施例中,服务器可以维护一个图片数据库,该图片数据库可以包含多个图片集合,每个图片集合对应一个视频,图片数据库可以以视频标识为索引,根据视频标识可以查询到对应的图片集合。因此,服务器可以根据目标视频的视频标识,查询到该目标视频对应的图片集合,该图片集合中存储了该目标视频对应的各个图片,该图片集合中的每个图片都有各自的序号。
(2)该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号。
在一种可能实现方式中,该多个目标图片中的至少一个图片的确定过程可以包括:根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片。
具体地,该确定过程可以包括步骤1和步骤2:
步骤1、根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片的序号。
服务器可以根据该目标帧间隔和该历史序号,将该历史序号中为该目标帧间隔的整数倍的序号,作为该多个目标图片中已存储的至少一个图片的序号。
例如,目标帧间隔为隔3帧,历史序号为2、4、6、8、10、12……等,则该多个目标图片中已存储的至少一个图片的序号为6、12……等。
服务器也可以根据该目标帧间隔,确定该目标视频中该多个目标图片的序号,将该多个目标图片的序号中包含在该历史序号中的序号,作为该多个目标图片中已存储的至少一个图片的序号。
其中,该多个目标图片的序号为该目标帧间隔的整数倍。例如,目标帧间隔为隔4帧,则多个目标图片的序号为4、8、12、……4n,如果历史序号为2、4、6、8、10、12……等,则该多个目标图片中已存储的至少一个图片的序号为4、8、12……等。
步骤2、根据该至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该至少一个图片。
该步骤2与上述步骤二同理,不再赘述。
针对服务器为终端提供该多个目标图片中至少一个图片的方式,服务器可以将该至少一个图片发送给该终端,或者,将该至少一个图片的存储地址发送给该终端,该至少一个图片的存储地址用于供该终端获取该至少一个图片。
服务器可以根据多个目标图片中至少一个图片的序号,从已存储的该目标视频对应的图片中,获取该至少一个图片,将该至少一个图片发送给终端。服务器也可以根据多个目标图片中至少一个图片的序号,从已存储的该目标视频对应的图片的存储地址中,获取该至少一个图片的存储地址,将该至少一个图片的存储地址发送给终端。终端在接收到该多个目标图片的存储地址后,可以获取到该多个目标图片。例如,终端可以根据该多个目标图片的存储地址,向存储该多个目标图片的服务器请求该多个目标图片。终端在获取到该多个目标图片后,可以将该多个目标图片用于算法训练,也可以将该多个目标图片用于其他用途。
在一些实施例中,服务器可以维护图片存储地址记录,该图片存储地址记录可以包括多个存储地址集合,该图片存储地址记录可以以视频标识为索引,根据视频标识可以查询到对应的存储地址集合,因此,服务器可以根据目标视频的视频标识,查询到目标视频对应的存储地址集合,该存储地址集合中存储了目标视频对应的各个图片的存储地址。
需要说明的是,如果已存储的该至少一个图片为该多个目标图片中的全部图片,则服务器可以为终端提供该多个目标图片,如果已存储的该至少一个图片为该多个目标图片中的部分图片,则服务器可以通过后续步骤304和步骤305,为终端提供剩余图片,也即是,该多个目标图片中除已存储的该至少一个图片以外的图片。
304、根据该图片获取记录、该目标帧间隔和该目标视频,获取该多个目标图片中除该至少一个图片以外的图片。
(1)图片获取记录包括获取该目标视频中的图片的历史帧间隔。
在一种可能实现方式中,多个目标图片中除该至少一个图片以外的图片的获取过程包括:根据该目标视频、该目标帧间隔和该历史帧间隔,获取该多个目标图片中除该至少一个图片以外的图片。
具体地,服务器可以对该目标视频进行解码,得到该目标视频的各个视频帧。然后,服务器可以根据目标帧间隔和历史帧间隔的倍数关系,对该各个视频中的多个视频帧进行编码,得到多个目标图片中除该至少一个图片以外的图片。
第一种情况、当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,对该各个视频帧中的第一视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第一视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔的整数倍。
该情况下,多个目标图片中已存储的至少一个图片的序号为该历史帧间隔的整数倍,该至少一个图片是根据该目标视频中帧序号为历史帧间隔的整数倍的视频帧编码得到。因此,服务器可以根据该目标视频中帧序号为目标帧间隔的整数倍且不为历史帧间隔的整数倍的第一视频帧,对第一视频帧编码得到序号为目标帧间隔的整数倍且不为历史帧间隔的整数倍的图片,作为该多个目标图片中除已存储的至少一个图片以外的图片。
例如,目标视频的各帧为第1帧、第2帧、第3帧、……等,如果历史帧间隔为隔4帧,目标帧间隔为隔2帧,多个目标图片中已存储的至少一个图片的序号为4、8、12……等,服务器可以从目标视频的各帧中获取第2帧、第6帧、第10帧……等多个帧,作为第一视频帧,服务器可以对第一视频帧进行编码,得到序号为2、6、10……等的多个图片,作为多个目标图片中除该已存储的至少一个图片以外的图片。
第二种情况、当该历史帧间隔与该目标帧间隔不存在整数倍关系时,对该各个视频帧中的第二视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第二视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔和该目标帧间隔的公倍数。
该情况下,多个目标图片中已存储的至少一个图片的序号为历史帧间隔和目标帧间隔的公倍数,该至少一个图片是根据目标视频中帧序号为历史帧间隔和目标帧间隔的公倍数的视频帧编码得到,因此,服务器可以根据目标视频中帧序号不为历史帧间隔和目标帧间隔的公倍数的第二视频帧,对第二视频帧编码得到序号为目标帧间隔的整数倍且不为历史帧间隔和目标帧间隔的公倍数的图片,作为该多个目标图片中除已存储的至少一个图片以外的图片。
例如,历史帧间隔为隔3帧,目标帧间隔为隔4帧,多个目标图片中已存储的至少一个图片的序号为3、6、9……等,服务器可以从目标视频的各帧中获取第4帧、第8帧、第16帧……等多个帧,作为第二视频帧。服务器可以对第二视频帧进行编码,得到序号为4、8、16……等的多个图片,作为多个目标图片中除已存储的至少一个图片以外的图片。
服务器在获取到该多个目标图片中除该至少一个图片以外的图片后,可以对获取到的图片进行存储。例如,历史帧间隔为隔n帧,目标帧间隔为m,服务器上已经存储了序号为n的整数倍的图片。如果m是n的倍数,则不用做任何修改,序号为m的整数倍的图片已经存储了;如果n是m的倍数,则只需补充存储序号为m的整数倍并且非n的整数倍的图片;如果m和n非倍数关系,则只需补充存储根据序号为m的整数倍并且非n*m的整数倍的图片。例如,n为10,已经存储有序号为10的整数倍的图片,即存储有序号为10、20、30、……、100、110、120……的图片,如果m为20,也即是需要存储序号为20的整数倍的图片,则不用做任何改变,已经存储有序号为20、40、60…的图片;如果m为5,也即是需要存储序号为5的整数倍的图片,则只需要补充存储序号为5、15、25…的图片,序号为10、20…的图片已经存储了;如果m为7,也即是需要存储序号为7的整数倍的图片,而序号为70、140……的图片已经存储了,则只需要补充序号为7的整数倍且非70的整数倍的图片。
(2)该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号。
在一种可能实现方式中,多个目标图片中除该至少一个图片以外的图片的获取过程包括:根据该目标视频、该目标帧间隔和该历史序号,获取该多个目标图片中除该至少一个图片以外的图片。
具体地,服务器可以对该目标视频进行解码,得到该目标视频的各个视频帧,对该各个视频帧中的多个第三视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该多个第三视频帧的帧序号为该目标帧间隔的整数倍且不包含在该历史序号中。
例如,目标帧间隔为隔3帧,历史序号为2、4、6、8、10和12,多个目标图片中已存储的至少一个图片的序号为6、12……等。服务器可以从目标视频的各帧中获取第3帧、第9帧、第15帧……等多个帧,作为第三视频帧。服务器可以对第三视频帧进行编码,得到序号为3、9、15……等的多个图片,作为多个目标图片中除该已存储的至少一个图片以外的图片。
针对服务器可以维护视频与图片的关联关系,服务器根据该目标帧间隔,获取多个目标图片中除该至少一个图片以外的图片之后,可以将该多个目标图片中除该至少一个图片以外的图片添加到与目标视频关联的图片中。
305、为该终端提供该多个目标图片中除该至少一个图片以外的图片。
本申请实施例中,服务器可以将该多个目标图片中除该至少一个图片以外的图片发送给该终端。服务器也可以对该多个目标图片中除该至少一个图片以外的图片进行存储,得到该多个目标图片中除该至少一个图片以外的图片的存储地址,将该多个目标图片中除该至少一个图片以外的图片的存储地址发送给该终端。
服务器可以将多个目标图片中除该至少一个图片以外的图片存储在本地,也可以存储在另一个服务器,接收另一个服务器发送的该多个目标图片中除该至少一个图片以外的图片的存储地址。
步骤303至步骤305是服务器已存储步骤301中终端所请求的多个目标图片中至少一个图片的情况,如果服务器未存储该多个目标图片中任一图片,则服务器可以不执行该步骤303至步骤305,而是执行步骤306。
需要说明的是,本申请实施例是以服务器先为终端提供多个目标图片中已存储的至少一个图片,再获取多个目标图片中除该至少一个图片以外的图片后,为终端提供多个目标图片中除该至少一个图片以外的图片为例进行说明,可以理解的是,服务器也可以先不为终端提供已存储的至少一个图片,而是在获取到多个目标图片中除该至少一个图片以外的图片后,同时为终端提供该多个目标图片。
306、当根据图片获取记录、该目标帧间隔和该目标视频确定未存储该多个目标图片中的任一图片时,根据该目标视频和该目标帧间隔,获取该多个目标图片。
本申请实施例中,如果图片获取记录中不包括获取该目标视频中的图片的历史帧间隔,也不包括该目标视频中的图片的历史序号,则服务器可以确定之前未根据任何帧间隔获取过该目标视频对应的图片。
在一种可能实现方式中,该根据该目标视频和该目标帧间隔,获取该多个目标图片,包括:对该目标视频进行解码,得到该目标视频的各个视频帧;对该各个视频帧中的多个第四视频帧进行编码,得到该多个目标图片,该多个第四视频帧的帧序号为该目标帧间隔的整数倍。
例如,目标视频的各帧为第1帧、第2帧、第3帧、……等,如果目标帧间隔为隔2帧,服务器可以从目标视频的各帧中获取第2帧、第4帧、第6帧……等多个帧,作为第四视频帧,服务器可以对第四视频帧进行编码,得到序号为2、4、6……等的多个图片,作为多个目标图片。
在一种可能实现方式中,该根据该目标视频和该目标帧间隔,获取该多个目标图片,包括:通过多个线程根据该目标视频和该目标帧间隔,获取该多个目标图片,每个线程用于获取该多个目标图片中的部分图片。
按照服务器的硬件配置,可开启多核同步获取,如硬件配置有四核,则可以开启四个线程同步获取图片。例如,该多个目标图片共1000个,需要由视频中的1000帧编码得到,则每个线程负责250帧,例如1-250帧由第一个线程负责编码得到对应的250个图片,251-500帧由第二个线程负责编码得到对应的250个图片,501-750帧由第三个线程负责编码得到对应的250个图片,751-1000帧由第四个线程负责编码得到对应的250个图片。通过开启多个线程来同步获取图片,可以大大减少获取图片所需的时间,提高图片获取的效率。
针对服务器可以维护视频与图片的关联关系,服务器根据该目标帧间隔,获取该目标视频对应的该多个目标图片之后,可以将该多个目标图片和该目标视频添加到视频与图片的关联关系中。
307、为该终端提供该多个目标图片。
本申请实施例中,服务器可以将该多个目标图片发送给该终端。服务器也可以对该多个目标图片进行存储,得到该多个目标图片的存储地址,将该多个目标图片的存储地址发送给该终端。
服务器可以将该多个目标图片存储在本地,也可以存储在另一个服务器,接收另一个服务器发送的该多个目标图片的存储地址。如果存储在本地,则该多个目标图片的存储地址为该多个目标图片在该服务器中的存储地址,如果存储在另一个服务器,则该多个目标图片的存储地址为该多个目标图片在另一个服务器中的存储地址。
相比于相关技术中在需要获取用于算法训练的图片时,每次选取视频后,服务器每次都需要重新获取相应图片,硬件资源浪费,终端获取所需的图片慢,影响训练时间,本申请通过对已获取的图片进行管理,当根据图片获取记录确定已获取终端所需的图片时,可以直接将已获取的图片提供给终端,无需重新对视频进行处理以获取相应图片,减少了硬件资源消耗和训练整体时间,提高了终端获取所需图片的效率。
相比于相关技术基于视频的每一帧获取对应的图片并进行存储,浪费大量存储空间,且由于算法训练一般是需要一定间隔的帧对应的图片,图片利用率(或复用率)低,本申请根据终端请求的帧间隔获取对应的图片进行存储,可以节省存储空间,提高了图片利用率。
本申请实施例提供的方法,通过在接收到终端的图片获取请求时,读取图片获取记录,当根据图片获取记录和图片获取请求中携带的该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,将该多个目标图片中已存储的至少一个图片提供给终端。由于图片获取记录记录包括根据历史帧间隔获取对应图片的记录,因而根据图片获取记录记录以及目标视频和目标帧间隔,即可判断是否已经存储了终端所请求的多个目标图片中的至少一个图片,这样可以在确定已经获取过该多个目标图片中至少一个图片的情况下,直接将已存储的至少一个图片发送给终端,无需重新获取该多个目标图片中已存储的图片,缩短了终端获取图片所需的时间,提高了图片的获取效率。
上述图3对应的实施例是以图片获取方法由一个服务器执行为例进行说明,该图片获取方法也可以基于多个服务器和终端之间的交互来实现,下面将在图4对应的实施例中进行说明。其中,该多个服务器可以包括控制服务器、存储服务器和图片获取服务器,其中,存储服务器负责存储视频和图片;控制服务器负责接收终端的图片获取请求,将图片的存储地址发送给终端,控制服务器还负责向图片获取服务器发送图片获取请求(图片获取任务),由图片获取服务器负责根据帧间隔获取视频对应的图片,并将图片发送到存储服务器进行存储,由存储服务器在对图片进行存储后,将图片的存储地址直接发送给控制服务器,或经由图片获取服务器发送给控制服务器。
图4是本申请实施例提供的一种图片获取方法的流程图。参见图4,该方法包括:
401、终端向控制服务器发送图片获取请求,该图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片。
该图片获取请求的触发过程与步骤301同理,不再赘述。
在一些实施例中,在步骤401之前,该图片获取方法还可以包括下述步骤a至d:
步骤a、当接收到目标视频时,控制服务器将目标视频发送给存储服务器。
其中,该目标视频可以由终端发送给控制服务器。
步骤b、当接收到目标视频时,存储服务器对该目标视频进行存储,得到该目标视频的存储地址。
其中,该目标视频的存储地址是指目标视频在存储服务器中的存储地址。
步骤c、存储服务器将该目标视频的存储地址发送给控制服务器。
步骤d、当接收到该目标视频的存储地址时,服务器对该目标视频的存储地址进行记录。
402、当接收到该图片获取请求时,控制服务器读取图片获取记录,该图片获取记录包括根据历史帧间隔获取对应图片的记录。
控制服务器读取图片获取记录与步骤302同理,不再赘述。
控制服务器可以根据图片获取记录、目标帧间隔和目标视频判断是否已经获取并存储了步骤401中终端请求获取的多个目标图片,如果已存储该多个目标图片中的至少一个图片,则各个设备交互执行后续步骤403至步骤412(第一种情况),如果未获取过该多个目标图片中的任一图片,则各个设备交互执行执行后续步骤413至步骤419(第二种情况)。
参见图5,提供了一种图片获取过程的示意图,如图5所示,控制服务器在接收到终端的图片获取请求(图片获取任务或截图任务)时,如果判断已获取并存储终端所需的多个目标图片中的至少一个图片,且该至少一个图片为该多个目标图片的全部图片,则服务器可以从存储服务器上获取全部图片,将其存储地址发送给终端,如果该至少一个图片为该多个目标图片中的部分图片,则服务器可以从存储服务器上获取该多个目标图片中的部分图片,将其存储地址发送给终端,剩余图片由图片获取服务器来获取。如果判断未获取终端所请求的多个目标图片中的任一图片,则可以由图片获取服务器来获取终端所需的全部图片。
403、当根据图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,控制服务器获取该多个目标图片中至少一个图片的存储地址。
其中,该多个目标图片中至少一个图片的存储地址为该至少一个图片在存储服务器中的存储地址。
如果控制服务器确定已获取过该多个目标图片中的至少一个图片,则可以确定存储服务器上存储有该至少一个图片,也可以确定控制服务器上记录有该至少一个图片的存储地址。
该步骤403中确定已获取多个目标图片中至少一个图片的方式与步骤303中确定已获取该多个目标图片中至少一个图片的方式同理,该步骤403中获取该至少一个图片的存储地址的方式与步骤303中获取存储地址的方式同理,不再赘述。
404、控制服务器将该多个目标图片中至少一个图片的存储地址发送给该终端,该至少一个图片的存储地址用于该终端获取该至少一个图片。
405、终端根据该多个目标图片中至少一个图片的存储地址,从存储服务器获取该多个目标图片中的至少一个图片。
终端可以根据该至少一个图片的存储地址,向存储服务器发送图片获取请求,该图片获取请求中可以携带该至少一个图片的存储地址,存储服务器在接收到该图片获取请求后,可以根据该至少一个图片的存储地址获取已存储的该至少一个图片,将该至少一个图片发送给终端。
406、控制服务器向图片获取服务器发送第一图片获取请求,该第一图片获取请求用于获取该多个目标图片中除该至少一个图片以外的图片。
407、当接收到该第一图片获取请求时,图片获取服务器获取该多个目标图片中除该至少一个图片以外的图片。
图片获取服务器获取该多个目标图片中除该至少一个图片以外的图片的过程与步骤304同理,不再赘述。
408、图片获取服务器将该多个目标图片中除该至少一个图片以外的图片发送给存储服务器。
409、当接收到该多个目标图片中除该至少一个图片以外的图片时,存储服务器对该多个目标图片中除该至少一个图片以外的图片进行存储,得到该多个目标图片中除该至少一个图片以外的图片的存储地址。
410、存储服务器将该多个目标图片中除该至少一个图片以外的图片的存储地址发送给控制服务器。
对于多个目标图片中除该至少一个图片以外的图片,存储服务器可以将其存储地址直接发送给控制服务器,例如,存储服务器可以每存储一个图片,则将该图片的存储地址发送给控制服务器。也可以经由图片获取服务器发送给控制服务器,例如,存储服务器可以每存储一个图片,则将该图片的存储地址发送给图片获取服务器,等存储完后,由图片获取服务器将该多个目标图片中除该至少一个图片以外的图片的存储地址一次性发送给控制服务器。
411、当接收到该多个目标图片中除该至少一个图片以外的图片的存储地址时,控制服务器将该多个目标图片中除该至少一个图片以外的图片的存储地址发送给该终端。
控制服务器在接收到该多个目标图片中除该至少一个图片以外的图片的存储地址时,还可以对该多个目标图片中除该至少一个图片以外的图片的存储地址进行记录,如控制服务器可以将图片的存储地址添加到图片存储地址记录中。
412、终端根据该多个目标图片中除该至少一个图片以外的图片的存储地址,从存储服务器获取该多个目标图片中除该至少一个图片以外的图片。
步骤412与步骤405同理,不再赘述。
413、当根据图片获取记录、该目标帧间隔和该目标视频确定未存储该多个目标图片中的任一图片时,控制服务器向图片获取服务器发送第二图片获取请求,该第一图片获取请求用于获取该多个目标图片。
该步骤413中确定未存储多个目标图片的方式与步骤306中确定未存储多个目标图片的方式同理,不再赘述。
414、当接收到该第二图片获取请求时,图片获取服务器获取该多个目标图片。
该步骤414中确定获取多个目标图片的方式与步骤306中获取多个目标图片的方式同理,不再赘述。
415、图片获取服务器将该多个目标图片发送给存储服务器。
416、当接收到该多个目标图片时,存储服务器对该多个目标图片进行存储,得到该多个目标图片的存储地址。
其中,该多个目标图片的存储地址是指该多个目标图片在存储服务器中的存储地址。
417、存储服务器将该多个目标图片的存储地址发送给控制服务器。
418、当接收到该多个目标图片的存储地址时,控制服务器将该多个目标图片的存储地址发送给该终端,该多个目标图片的存储地址用于该终端获取该多个目标图片。
控制服务器在接收到该多个目标图片的存储地址时,还可以对该多个目标图片的存储地址进行记录,如将该多个目标图片的存储地址添加到图片存储地址记录中。
419、终端根据该多个目标图片的存储地址,从存储服务器获取该多个目标图片。
该步骤419与步骤405同理,不再赘述。
本申请实施例提供的方法,通过在接收到终端的图片获取请求时,读取图片获取记录,当根据图片获取记录和图片获取请求中携带的该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,将该多个目标图片中已存储的至少一个图片提供给终端。由于图片获取记录记录包括根据历史帧间隔获取对应图片的记录,因而根据图片获取记录记录以及目标视频和目标帧间隔,即可判断是否已经存储了终端所请求的多个目标图片中的至少一个图片,这样可以在确定已经获取过该多个目标图片中至少一个图片的情况下,直接将已存储的至少一个图片发送给终端,无需重新获取该多个目标图片中已存储的图片,缩短了终端获取图片所需的时间,提高了图片的获取效率。
图6是本申请实施例提供的一种图片获取装置的结构示意图。参照图6,该装置包括:
接收模块601,用于接收终端的图片获取请求,该图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
读取模块602,用于读取图片获取记录,该图片获取记录包括根据历史帧间隔获取对应图片的记录;
确定模块603,用于根据该图片获取记录、该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片;
提供模块604,用于为该终端提供已存储的该至少一个图片。
在一种可能实现方式中,该确定模块603用于:
该图片获取记录包括获取该目标视频中的图片的历史帧间隔,根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片;或者,
该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号,根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,该确定模块603用于:
根据该目标帧间隔和该图片获取记录中的历史帧间隔,确定出该多个目标图片中已存储的至少一个图片的序号;
根据该多个目标图片中已存储的至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该多个目标图片中已存储的至少一个图片。
在一种可能实现方式中,该确定模块603用于:
当该目标帧间隔为该历史帧间隔的整数倍时,确定该多个目标图片中已存储的至少一个图片的序号为该目标帧间隔的整数倍,该整数倍大于或等于1;或者,
当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔的整数倍;或者,
当该历史帧间隔与该目标帧间隔不存在整数倍关系时,确定该多个目标图片中已存储的至少一个图片的序号为该历史帧间隔和该目标帧间隔的公倍数。
在一种可能实现方式中,该确定模块603用于:
根据该目标帧间隔和该图片获取记录中的历史序号,确定出该多个目标图片中已存储的至少一个图片的序号;
根据该至少一个图片的序号,从已存储的该目标视频对应的图片中,确定出该至少一个图片。
在一种可能实现方式中,该确定模块603用于:
根据该目标帧间隔和该历史序号,将该历史序号中为该目标帧间隔的整数倍的序号,作为该多个目标图片中已存储的至少一个图片的序号;或者,
根据该目标帧间隔,确定该目标视频中该多个目标图片的序号,将该多个目标图片的序号中包含在该历史序号中的序号,作为该多个目标图片中已存储的至少一个图片的序号。
在一种可能实现方式中,该提供模块604用于:
将该至少一个图片发送给该终端,或者,
将该至少一个图片的存储地址发送给该终端,该至少一个图片的存储地址用于供该终端获取该至少一个图片。
在一种可能实现方式中,该装置还包括:
获取模块,用于根据该图片获取记录、该目标帧间隔和该目标视频,获取该多个目标图片中除该至少一个图片以外的图片;
该提供模块604还用于为该终端提供该多个目标图片中除该至少一个图片以外的图片。
在一种可能实现方式中,该图片获取记录包括获取该目标视频中的图片的历史帧间隔,该获取模块605用于根据该目标视频、该目标帧间隔和该历史帧间隔,获取该多个目标图片中除该至少一个图片以外的图片;或者,
该图片获取记录包括根据该历史帧间隔存储的该目标视频中的图片的历史序号,该获取模块用于根据该目标视频、该目标帧间隔和该历史序号,获取该多个目标图片中除该至少一个图片以外的图片。
在一种可能实现方式中,该获取模块用于:
对该目标视频进行解码,得到该目标视频的各个视频帧;
当该历史帧间隔大于该目标帧间隔且为该目标帧间隔的整数倍时,对该各个视频帧中的第一视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第一视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔的整数倍;
当该历史帧间隔与该目标帧间隔不存在整数倍关系时,对该各个视频帧中的第二视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该第二视频帧的帧序号为该目标帧间隔的整数倍且不为该历史帧间隔和该目标帧间隔的公倍数。
在一种可能实现方式中,该获取模块用于:
对该目标视频进行解码,得到该目标视频的各个视频帧;
对该各个视频帧中的多个第三视频帧进行编码,得到该多个目标图片中除该至少一个图片以外的图片,该多个第三视频帧的帧序号为该目标帧间隔的整数倍且不包含在该历史序号中。
在一种可能实现方式中,该提供模块604用于:
将该多个目标图片中除该至少一个图片以外的图片发送给该终端;或者,
对该多个目标图片中除该至少一个图片以外的图片进行存储,得到该多个目标图片中除该至少一个图片以外的图片的存储地址,将该多个目标图片中除该至少一个图片以外的图片的存储地址发送给该终端。
在一种可能实现方式中,该装置还包括:
该确定模块603还用于根据该图片获取记录、该目标帧间隔和该目标视频确定未存储该多个目标图片中的任一图片;
获取模块,用于根据该目标视频和该目标帧间隔,获取该多个目标图片;
该提供模块604还用于为该终端提供该多个目标图片。
在一种可能实现方式中,该获取模块用于:
对该目标视频进行解码,得到该目标视频的各个视频帧;
对该各个视频帧中的多个第四视频帧进行编码,得到该多个目标图片,该多个第四视频帧的帧序号为该目标帧间隔的整数倍。
在一种可能实现方式中,该提供模块604用于:
将该多个目标图片发送给该终端;或者,
对该多个目标图片进行存储,得到该多个目标图片的存储地址,将该多个目标图片的存储地址发送给该终端。
在一种可能实现方式中,该获取模块用于:
通过多个线程根据该目标视频和该目标帧间隔,获取该多个目标图片,每个线程用于获取该多个目标图片中的部分图片。
本申请实施例中,通过在接收到终端的图片获取请求时,读取图片获取记录,当根据图片获取记录和图片获取请求中携带的该目标帧间隔和该目标视频确定已存储该多个目标图片中的至少一个图片时,将该多个目标图片中已存储的至少一个图片提供给终端。由于图片获取记录记录包括根据历史帧间隔获取对应图片的记录,因而根据图片获取记录记录以及目标视频和目标帧间隔,即可判断是否已经存储了终端所请求的多个目标图片中的至少一个图片,这样可以在确定已经获取过该多个目标图片中至少一个图片的情况下,直接将已存储的至少一个图片发送给终端,无需重新获取该多个目标图片中已存储的图片,缩短了终端获取图片所需的时间,提高了图片的获取效率。
需要说明的是:上述实施例提供的图片获取装置在图片获取时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图片获取装置与图片获取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本申请实施例提供的一种服务器700的结构示意图,该服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)701和一个或一个以上的存储器702,其中,该存储器702中存储有至少一条指令,该至少一条指令由该处理器701加载并执行以实现上述各个方法实施例提供的图片获取方法。当然,该服务器700还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器700还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种存储有至少一条指令的计算机可读存储介质,例如存储有至少一条指令的存储器,上述至少一条指令被处理器执行时实现上述实施例中的图片获取方法。例如,该计算机可读存储介质可以是只读内存(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-OnlyMemory,CD-ROM)、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,上述程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (31)
1.一种图片获取方法,其特征在于,所述方法包括:
接收终端的图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,为所述终端提供已存储的所述至少一个图片。
2.根据权利要求1所述的方法,其特征在于,所述根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片,包括:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片,包括:
根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述多个目标图片中已存储的至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述多个目标图片中已存储的至少一个图片。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片的序号,包括:
当所述目标帧间隔为所述历史帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述目标帧间隔的整数倍,所述整数倍大于或等于1;或者,
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔的整数倍;或者,
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,确定所述多个目标图片中已存储的至少一个图片的序号为所述历史帧间隔和所述目标帧间隔的公倍数。
5.根据权利要求2所述的方法,其特征在于,所述根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片,包括:
根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片的序号;
根据所述至少一个图片的序号,从已存储的所述目标视频对应的图片中,确定出所述至少一个图片。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片的序号,包括:
根据所述目标帧间隔和所述历史序号,将所述历史序号中为所述目标帧间隔的整数倍的序号,作为所述多个目标图片中已存储的至少一个图片的序号;或者,
根据所述目标帧间隔,确定所述目标视频中所述多个目标图片的序号,将所述多个目标图片的序号中包含在所述历史序号中的序号,作为所述多个目标图片中已存储的至少一个图片的序号。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述为所述终端提供已存储的所述至少一个图片,包括:
将所述至少一个图片发送给所述终端;或者,
将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址用于供所述终端获取所述至少一个图片。
8.根据权利要求1所述的方法,其特征在于,所述为所述终端提供已存储的所述至少一个图片之后,所述方法还包括:
根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
9.根据权利要求8所述的方法,其特征在于,所述根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片。
10.根据权利要求9所述的方法,其特征在于,所述根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,对所述各个视频帧中的第一视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第一视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔的整数倍;
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,对所述各个视频帧中的第二视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第二视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔和所述目标帧间隔的公倍数。
11.根据权利要求9所述的方法,其特征在于,所述根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第三视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述多个第三视频帧的帧序号为所述目标帧间隔的整数倍且不包含在所述历史序号中。
12.根据权利要求8所述的方法,其特征在于,所述为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片,包括:
将所述多个目标图片中除所述至少一个图片以外的图片发送给所述终端;或者,
对所述多个目标图片中除所述至少一个图片以外的图片进行存储,得到所述多个目标图片中除所述至少一个图片以外的图片的存储地址,将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述终端。
13.根据权利要求1所述的方法,其特征在于,所述读取图片获取记录之后,所述方法还包括:
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,为所述终端提供所述多个目标图片。
14.根据权利要求13所述的方法,其特征在于,所述根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,包括:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第四视频帧进行编码,得到所述多个目标图片,所述多个第四视频帧的帧序号为所述目标帧间隔的整数倍。
15.根据权利要求13所述的方法,其特征在于,所述为所述终端提供所述多个目标图片,包括:
将所述多个目标图片发送给所述终端;或者,
对所述多个目标图片进行存储,得到所述多个目标图片的存储地址,将所述多个目标图片的存储地址发送给所述终端。
16.根据权利要求13所述的方法,其特征在于,所述根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,包括:
通过多个线程根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,每个线程用于获取所述多个目标图片中的部分图片。
17.一种图片获取装置,其特征在于,所述装置包括:
接收模块,用于接收终端的图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
读取模块,用于读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
确定模块,用于根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片;
提供模块,用于为所述终端提供已存储的所述至少一个图片。
18.根据权利要求17所述的装置,其特征在于,所述确定模块用于:
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,根据所述目标帧间隔和所述图片获取记录中的历史帧间隔,确定出所述多个目标图片中已存储的至少一个图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,根据所述目标帧间隔和所述图片获取记录中的历史序号,确定出所述多个目标图片中已存储的至少一个图片。
19.根据权利要求17至18任一项所述的装置,其特征在于,所述提供模块用于:
将所述至少一个图片发送给所述终端;或者,
将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址用于供所述终端获取所述至少一个图片。
20.根据权利要求17所述的装置,其特征在于,所述装置还包括:
获取模块,用于根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
所述提供模块还用于为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
21.根据权利要求20所述的装置,其特征在于,
所述图片获取记录包括获取所述目标视频中的图片的历史帧间隔,所述获取模块用于根据所述目标视频、所述目标帧间隔和所述历史帧间隔,获取所述多个目标图片中除所述至少一个图片以外的图片;或者,
所述图片获取记录包括根据所述历史帧间隔存储的所述目标视频中的图片的历史序号,所述获取模块用于根据所述目标视频、所述目标帧间隔和所述历史序号,获取所述多个目标图片中除所述至少一个图片以外的图片。
22.根据权利要求21所述的装置,其特征在于,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
当所述历史帧间隔大于所述目标帧间隔且为所述目标帧间隔的整数倍时,对所述各个视频帧中的第一视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第一视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔的整数倍;
当所述历史帧间隔与所述目标帧间隔不存在整数倍关系时,对所述各个视频帧中的第二视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述第二视频帧的帧序号为所述目标帧间隔的整数倍且不为所述历史帧间隔和所述目标帧间隔的公倍数。
23.根据权利要求21所述的装置,其特征在于,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第三视频帧进行编码,得到所述多个目标图片中除所述至少一个图片以外的图片,所述多个第三视频帧的帧序号为所述目标帧间隔的整数倍且不包含在所述历史序号中。
24.根据权利要求17所述的装置,其特征在于,所述装置还包括:
所述确定模块还用于根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片;
获取模块,用于根据所述目标视频和所述目标帧间隔,获取所述多个目标图片;
所述提供模块还用于为所述终端提供所述多个目标图片。
25.根据权利要求24所述的装置,其特征在于,所述获取模块用于:
对所述目标视频进行解码,得到所述目标视频的各个视频帧;
对所述各个视频帧中的多个第四视频帧进行编码,得到所述多个目标图片,所述多个第四视频帧的帧序号为所述目标帧间隔的整数倍。
26.一种图片获取系统,其特征在于,所述系统包括终端和服务器,
所述终端用于向所述服务器发送图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
所述服务器用于当接收到终端的图片获取请求时,读取图片获取记录,所述图片获取记录为根据历史帧间隔获取对应图片的记录;
所述服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,为所述终端提供已存储的所述至少一个图片。
27.根据权利要求26所述的系统,其特征在于,所述服务器还用于:
根据所述图片获取记录、所述目标帧间隔和所述目标视频,获取所述多个目标图片中除所述至少一个图片以外的图片;
为所述终端提供所述多个目标图片中除所述至少一个图片以外的图片。
28.根据权利要求26所述的系统,其特征在于,所述服务器还用于:
当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,根据所述目标视频和所述目标帧间隔,获取所述多个目标图片,为所述终端提供所述多个目标图片。
29.一种图片获取系统,其特征在于,所述系统包括终端、控制服务器、存储服务器和图片获取服务器,
所述终端用于向所述控制服务器发送图片获取请求,所述图片获取请求用于请求根据目标帧间隔获取目标视频对应的多个目标图片;
所述控制服务器用于当接收到终端的图片获取请求时,读取图片获取记录,所述图片获取记录包括根据历史帧间隔获取对应图片的记录;
所述控制服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定已存储所述多个目标图片中的至少一个图片时,获取所述至少一个图片的存储地址,将所述至少一个图片的存储地址发送给所述终端,所述至少一个图片的存储地址为所述至少一个图片在所述存储服务器中的存储地址;
所述终端还用于根据所述至少一个图片的存储地址,从所述存储服务器获取所述至少一个图片。
30.根据权利要求29所述的系统,其特征在于,
所述控制服务器还用于向所述图片获取服务器发送第一图片获取请求,所述第一图片获取请求用于请求获取所述多个目标图片中除所述至少一个图片以外的图片;
所述图片获取服务器还用于当接收到所述第一图片获取请求时,获取所述多个目标图片中除所述至少一个图片以外的图片,将所述多个目标图片中除所述至少一个图片以外的图片发送给所述存储服务器;
所述存储服务器还用于对所述多个目标图片中除所述至少一个图片以外的图片进行存储,得到所述多个目标图片中除所述至少一个图片以外的图片的存储地址,将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述控制服务器;
所述控制服务器还用于将所述多个目标图片中除所述至少一个图片以外的图片的存储地址发送给所述终端;
所述终端还用于根据所述多个目标图片中的至少一个图片的存储地址,从所述存储服务器获取所述多个目标图片中的至少一个图片;根据所述多个目标图片中除所述至少一个图片以外的图片的存储地址,从所述存储服务器获取所述多个目标图片中除所述至少一个图片以外的图片。
31.根据权利要求29所述的系统,其特征在于,
所述控制服务器还用于当根据所述图片获取记录、所述目标帧间隔和所述目标视频确定未存储所述多个目标图片中的任一图片时,向所述图片获取服务器发送第二图片获取请求,所述第二图片获取请求用于请求获取所述多个目标图片;
所述图片获取服务器还用于当接收到所述第二图片获取请求时,获取所述多个目标图片,将所述多个目标图片发送给所述存储服务器;
所述存储服务器还用于对所述多个目标图片进行存储,得到所述多个目标图片的存储地址,将所述多个目标图片的存储地址发送给所述控制服务器;
所述控制服务器还用于将所述多个目标图片的存储地址发送给所述终端;
所述终端还用于根据所述多个目标图片的存储地址,从所述存储服务器获取所述多个目标图片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910556705.4A CN112131423A (zh) | 2019-06-25 | 2019-06-25 | 图片获取方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910556705.4A CN112131423A (zh) | 2019-06-25 | 2019-06-25 | 图片获取方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112131423A true CN112131423A (zh) | 2020-12-25 |
Family
ID=73849719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910556705.4A Pending CN112131423A (zh) | 2019-06-25 | 2019-06-25 | 图片获取方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131423A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556289A (zh) * | 2021-07-26 | 2021-10-26 | 南方电网数字电网研究院有限公司 | 数据发送方法、装置和现场可编程门阵列 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004056819A (ja) * | 2002-07-17 | 2004-02-19 | Matsushita Electric Ind Co Ltd | 映像データ送信装置、映像データ送受信システム、及び、その方法 |
CN105100800A (zh) * | 2015-09-11 | 2015-11-25 | Tcl集团股份有限公司 | 视频编码器编码码率调节方法及装置 |
CN106534944A (zh) * | 2016-11-30 | 2017-03-22 | 北京锤子数码科技有限公司 | 视频展现方法和装置 |
CN108416013A (zh) * | 2018-03-02 | 2018-08-17 | 北京奇艺世纪科技有限公司 | 视频匹配、检索、分类和推荐方法、装置及电子设备 |
CN108470353A (zh) * | 2018-03-01 | 2018-08-31 | 腾讯科技(深圳)有限公司 | 一种目标跟踪方法、装置和存储介质 |
CN109157839A (zh) * | 2018-10-16 | 2019-01-08 | Oppo广东移动通信有限公司 | 帧率调控方法、装置、存储介质及终端 |
CN109214253A (zh) * | 2017-07-07 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 一种视频帧检测方法及装置 |
CN109361927A (zh) * | 2018-09-29 | 2019-02-19 | 西安万像电子科技有限公司 | 图像处理方法及装置 |
US20190149818A1 (en) * | 2016-08-25 | 2019-05-16 | Tencent Technology (Shenzhen) Company Limited | Video data encoding and decoding method, device, and system, and storage medium |
-
2019
- 2019-06-25 CN CN201910556705.4A patent/CN112131423A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004056819A (ja) * | 2002-07-17 | 2004-02-19 | Matsushita Electric Ind Co Ltd | 映像データ送信装置、映像データ送受信システム、及び、その方法 |
CN105100800A (zh) * | 2015-09-11 | 2015-11-25 | Tcl集团股份有限公司 | 视频编码器编码码率调节方法及装置 |
US20190149818A1 (en) * | 2016-08-25 | 2019-05-16 | Tencent Technology (Shenzhen) Company Limited | Video data encoding and decoding method, device, and system, and storage medium |
CN106534944A (zh) * | 2016-11-30 | 2017-03-22 | 北京锤子数码科技有限公司 | 视频展现方法和装置 |
CN109214253A (zh) * | 2017-07-07 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 一种视频帧检测方法及装置 |
CN108470353A (zh) * | 2018-03-01 | 2018-08-31 | 腾讯科技(深圳)有限公司 | 一种目标跟踪方法、装置和存储介质 |
CN108416013A (zh) * | 2018-03-02 | 2018-08-17 | 北京奇艺世纪科技有限公司 | 视频匹配、检索、分类和推荐方法、装置及电子设备 |
CN109361927A (zh) * | 2018-09-29 | 2019-02-19 | 西安万像电子科技有限公司 | 图像处理方法及装置 |
CN109157839A (zh) * | 2018-10-16 | 2019-01-08 | Oppo广东移动通信有限公司 | 帧率调控方法、装置、存储介质及终端 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556289A (zh) * | 2021-07-26 | 2021-10-26 | 南方电网数字电网研究院有限公司 | 数据发送方法、装置和现场可编程门阵列 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108989885B (zh) | 视频文件转码系统、分割方法、转码方法及装置 | |
JP2019033501A (ja) | メディアファイルの再生装置、再生方法、及びプログラム | |
CN111314741B (zh) | 视频超分处理方法、装置、电子设备及存储介质 | |
US20200107057A1 (en) | Video coding method, system and server | |
WO2021082667A1 (zh) | 视频数据编码方法、装置、设备和存储介质 | |
EP3099074A1 (en) | Systems, devices and methods for video coding | |
CN107155093B (zh) | 一种视频预览方法、装置及设备 | |
CN112131423A (zh) | 图片获取方法、装置及系统 | |
CN110505523A (zh) | 一种视频转码优先级顺序控制方法及处理终端 | |
CN104184980A (zh) | 一种数据处理方法及电子设备 | |
CN110446046B (zh) | 一种基于嵌入式平台的批量图像快速解码方法 | |
CN113099270B (zh) | 文件存储方法及解码方法、装置、存储介质、电子装置 | |
CN115941972A (zh) | 图像传输方法、装置、设备及存储介质 | |
CN115866331A (zh) | 视频抽帧分析方法、装置、设备及存储介质 | |
CN111510715B (zh) | 视频处理方法、系统、计算机设备及存储介质 | |
CN110213583B (zh) | 视频编码方法、系统、装置及计算机程序介质 | |
US20080229034A1 (en) | Data management for image processing | |
CN114173154B (zh) | 视频处理方法及系统 | |
CN112148795B (zh) | 一种数据处理方法、装置、设备及介质 | |
CN101583035B (zh) | 一种音视频文件的访问方法、装置及系统 | |
CN112492250B (zh) | 图像传输系统收发两端分辨率的适配方法及装置 | |
CN110662060B (zh) | 视频编码方法和装置、视频解码方法和装置及存储介质 | |
CN116915947A (zh) | 视频监控系统的数据处理方法、装置、系统及存储介质 | |
CN101090470A (zh) | 信息处理设备和信息处理方法 | |
CN117201867A (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 |