CN109086125B - 图片分析方法、装置及系统、计算机设备及存储介质 - Google Patents
图片分析方法、装置及系统、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109086125B CN109086125B CN201710447909.5A CN201710447909A CN109086125B CN 109086125 B CN109086125 B CN 109086125B CN 201710447909 A CN201710447909 A CN 201710447909A CN 109086125 B CN109086125 B CN 109086125B
- Authority
- CN
- China
- Prior art keywords
- picture
- task
- sub
- picture analysis
- computing node
- 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
- 238000004458 analytical method Methods 0.000 title claims abstract description 695
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000010191 image analysis Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000003703 image analysis method Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种图片分析方法、装置及系统、计算机设备及存储介质,属于视频分析技术领域。包括:在计算节点发生程序崩溃时,根据使计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务;根据至少一个子图片分析任务,更新N个错误图片任务队列;当检测到第N个错误图片任务队列中存在子图片分析任务时,将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过计算节点执行可疑子图片分析任务,直至计算节点发生程序崩溃;丢弃使计算节点发生程序崩溃的可疑子图片分析任务。本发明解决了将使计算节点产生程序崩溃的图片分析任务丢弃可能导致视频播放过程中出现长时间的失帧现象的问题。
Description
技术领域
本发明涉及视频处理技术领域,特别涉及一种图片分析方法、装置及系统、计算机设备及存储介质。
背景技术
图片分析技术是一种用模式识别和人工智能的方法对物景进行分析、描述、分类和解释的技术,图片分析又称为景物分析或图像理解。
视频中的海量图片可以通过图片分析系统采用图片分析技术进行分析,图片分析系统通常包括中心节点和多个计算节点,中心节点将海量的图片打包成多个图片分析任务,其中每个图片分析任务可以包括多张关联图片(例如视频中的每秒钟内传输的图片为一个图片分析任务),各个计算节点在获取不同的图片分析任务后,并行执行各自的图片分析任务。
由于每个图片分析任务中包括多张图片,当某个计算节点获取的图片分析任务中存在该计算节点不支持的格式的图片时,该计算节点执行该图片分析任务的过程中,会出现程序崩溃(也称进程崩溃)。
虽然目前可以先将使计算节点发生程序崩溃的任务丢弃,然后对程序崩溃的计算节点进行复原,计算节点复原后,会执行下一个图片分析任务,但是,由于将整个图片分析任务全部丢弃,其中的所有图片都会相应丢失,可能导致视频播放过程中出现长时间的失帧现象,因此目前的图片分析的可靠性较低。
发明内容
为了解决相关技术中将使计算节点产生程序崩溃的图片分析任务丢弃,可能导致视频播放过程中出现长时间的失帧现象的问题,本发明实施例提供了一种图片分析方法、装置及系统、计算机设备及存储介质。所述技术方案如下:
第一方面,提供了一种图片分析方法,用于图片分析系统的中心节点,所述中心节点中设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的子图片分析任务使所述图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,所述方法包括:
在图片分析系统的某一计算节点发生程序崩溃时,根据使所述某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由所述使所述某一计算节点发生程序崩溃的任务中的一张图片组成;
根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列;
当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,直至计算节点发生程序崩溃;
丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
可选地,所述根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列,包括:
检测所述N个错误图片任务队列中是否包括第一子图片分析任务,所述第一子图片分析任务为所述至少一个子图片分析任务中的任意一个;
当所述N个错误图片任务队列中不包括所述第一子图片分析任务时,将所述第一子图片分析任务记录在第一个错误图片任务队列中;
当第m个错误图片任务队列中包括所述第一子图片分析任务时,将所述第一子图片分析任务添加至第m+1个错误图片任务队列,并删除所述第m个错误图片任务队列中的所述第一子图片分析任务,其中,0<m<N。
可选地,在所述更新所述N个错误图片任务队列之后,所述方法还包括:
检测所述第N个错误图片任务队列中是否存在子图片分析任务;
当所述第N个错误图片任务队列中不存在子图片分析任务时,通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的图片分析任务,并根据执行结果更新所述N个错误图片任务队列,直至所述第N个错误图片任务队列中存在子图片分析任务。
可选地,所述通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的子图片分析任务,包括:
将所述N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至所述图片分析系统的计算节点。
可选地,所述当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,包括:
获取所述第N个错误图片任务队列中的可疑子图片分析任务;
将所述第N个错误图片任务队列中的可疑子图片分析任务依次发送至所述图片分析系统中的计算节点执行。
可选地,每个所述可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,且所述图片分析系统的计算节点在执行任一可疑子图片分析任务时,停止执行其他图片分析任务,所述其他图片分析任务为除所述任一可疑子图片分析任务以外的所有图片分析任务。
可选地,所述N为大于1的整数,在所述丢弃使计算节点发生程序崩溃的可疑子图片分析任务之后,所述方法还包括:
将所述第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,所述后续可疑子图片分析任务为所述使计算节点发生程序崩溃的可疑子图片分析任务之后的任务;
删除所述第N个错误图片任务队列中的所有后续可疑子图片分析任务。
第二方面,提供了一种图片分析装置,用于图片分析系统的中心节点,所述中心节点中设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的子图片分析任务使所述图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,所述装置包括:
生成模块,用于在图片分析系统的某一计算节点发生程序崩溃时,根据使所述某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由所述使所述某一计算节点发生程序崩溃的任务中的一张图片组成;
更新模块,用于根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列;
确定执行模块,用于当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,直至计算节点发生程序崩溃;
丢弃模块,用于丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
可选地,所述更新模块,包括:
检测子模块,用于检测所述N个错误图片任务队列中是否包括第一子图片分析任务,所述第一子图片分析任务为所述至少一个子图片分析任务中的任意一个;
记录子模块,用于当所述N个错误图片任务队列中不包括所述第一子图片分析任务时,将所述第一子图片分析任务记录在第一个错误图片任务队列中;
添加子模块,用于当第m个错误图片任务队列中包括所述第一子图片分析任务时,将所述第一子图片分析任务添加至第m+1个错误图片任务队列,并删除所述第m个错误图片任务队列中的所述第一子图片分析任务,其中,0<m<N。
可选地,所述装置还包括:
检测模块,用于检测所述第N个错误图片任务队列中是否存在子图片分析任务;
执行模块,用于当所述第N个错误图片任务队列中不存在子图片分析任务时,通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的图片分析任务,并根据执行结果更新所述N个错误图片任务队列,直至所述第N个错误图片任务队列中存在子图片分析任务。
可选地,所述执行模块,用于:
将所述N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至所述图片分析系统的计算节点。
可选地,所述确定执行模块,用于:
获取所述第N个错误图片任务队列中的可疑子图片分析任务;
将所述第N个错误图片任务队列中的可疑子图片分析任务依次发送至所述图片分析系统中的计算节点执行。
可选地,每个所述可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,且所述图片分析系统的计算节点在执行任一可疑子图片分析任务时,停止执行其他图片分析任务,所述其他图片分析任务为除所述任一可疑子图片分析任务以外的所有图片分析任务。
可选地,所述N为大于1的整数,所述装置还包括:
发送模块,用于将所述第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,所述后续可疑子图片分析任务为所述使计算节点发生程序崩溃的可疑子图片分析任务之后的任务;
删除模块,用于删除所述第N个错误图片任务队列中的所有后续可疑子图片分析任务。
第三方面,提供了一种图片分析系统,所述系统包括:第二方面任一所述的装置和计算节点。
第四方面,提供了一种计算机设备,包括处理器和存储器,
其中,
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,实现第一方面任一所述的图片分析方法。
第五方面,提供了一种存储介质,其上存储有计算机程序,当所述存储介质中的程序由处理器执行时,能够执行第一方面任一所述的图片分析方法。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的图片分析方法、装置及系统、计算机设备及存储介质,在图片分析系统的计算节点发生程序崩溃时,可以根据使该计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,并根据该至少一个子图片分析任务更新N个错误图片任务队列,然后将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务并通过计算节点执行可疑子图片分析任务,当任一可疑子图片分析任务使计算节点发生程序崩溃时,丢弃使计算节点发生程序崩溃的可疑子图片分析任务,与相关技术相比,本发明实施例提供的图片分析方法,只会丢弃图片分析任务中多次使计算节点发生程序崩溃的图片,而保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,缩短了视频播放过程中出现失帧现象的时间,提高了图片分析的可靠性。
附图说明
图1是本发明实施例提供的一种图片分析方法所涉及的图片分析系统的结构示意图;
图2是本发明实施例提供的一种图片分析方法的流程图;
图3-1是本发明实施例提供的另一种图片分析方法的流程图;
图3-2是本发明实施例提供的一种更新N个错误图片任务队列的方法流程图;
图4-1是本发明实施例提供的一种中心节点的图片任务队列的结构示意图;
图4-2是本发明实施例提供的另一种中心节点的图片任务队列的结构示意图;
图4-3是本发明实施例提供的又一种中心节点的图片任务队列的结构示意图;
图4-4是本发明实施例提供的还一种中心节点的图片任务队列的结构示意图;
图4-5是本发明另一实施例提供的一种中心节点的图片任务队列的结构示意图;
图4-6是本发明另一实施例提供的另一种中心节点的图片任务队列的结构示意图;
图5是本发明实施例提供的一种图片分析装置的结构示意图;
图6-1是本发明实施例提供的一种更新模块的结构示意图;
图6-2是本发明实施例提供的另一种图片分析装置的结构示意图;
图6-3是本发明实施例提供的又一种图片分析装置的结构示意图;
图7是本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种图片分析方法所涉及的图片分析系统10的结构示意图,如图1所示,该图片分析系统10可以包括:中心节点101和至少一个计算节点102。
中心节点101可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心,例如中心节点可以是视频服务器等。计算节点102可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
中心节点101和计算节点102之间可以通过有线网络或无线网络建立连接。
在本发明的一个可选实施例中,中心节点中可以设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,任一错误图片任务队列中的每个图片分析任务包括一张图片。
示例的,第N个错误图片任务队列中记录的图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为N。
可选地,中心节点中还可以设置有正常图片任务队列和完成图片任务队列。其中,正常图片任务队列用于记录所有待分析的图片分析任务,包括中心节点生成的图片分析任务,每个图片分析任务包括至少一张图片;完成图片任务队列用于记录中心节点管理的计算节点执行图片分析任务得到的分析结果,每个分析结果包括至少一张图片的分析结果。
实际应用中,中心节点获取视频流后,可以将视频中的图片进行打包生成图片分析任务,并将图片分析任务保存在正常图片任务队列中,中心节点在获取正常图片任务队列中的图片分析任务后,可以发送给计算节点,计算节点可以执行图片分析任务。
图2是本发明实施例提供的一种图片分析方法的流程图,可以用于如图1所示的图片分析系统10中的中心节点101,如图2所示,该方法可以包括:
步骤201、在图片分析系统的某一计算节点发生程序崩溃时,根据使该某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由使该某一计算节点发生程序崩溃的任务中的一张图片组成。
其中,该某一计算节点可以同时执行多个图片分析任务,当该某一计算节点发生程序崩溃时,根据在该某一计算节点上执行的多个图片分析任务生成待筛选任务集合,也即是,中心节点将该某一计算节点发生程序崩溃时,该某一计算节点上的多个图片分析任务均确定为使该某一计算节点发生程序崩溃的图片分析任务。
步骤202、根据该至少一个子图片分析任务,更新N个错误图片任务队列。
步骤203、当检测到第N个错误图片任务队列中存在子图片分析任务时,将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过图片分析系统的计算节点执行可疑子图片分析任务,直至计算节点发生程序崩溃。
步骤204、丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
综上所述,本发明实施例提供的图片分析方法,在图片分析系统的计算节点发生程序崩溃时,可以根据使该计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,并根据该至少一个子图片分析任务更新N个错误图片任务队列,然后将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务并通过计算节点执行可疑子图片分析任务,当任一可疑子图片分析任务使计算节点发生程序崩溃时,丢弃使计算节点发生程序崩溃的可疑子图片分析任务,与相关技术相比,本发明实施例提供的图片分析方法,只会丢弃图片分析任务中多次使计算节点发生程序崩溃的图片,而保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,缩短了视频播放过程中出现失帧现象的时间,提高了图片分析的可靠性。
实际应用中,中心节点管理多个计算节点,本发明实施例假设中心节点管理了第一计算节点和第二计算节点,该第一计算节点和第二计算节点均可以为图片分析系统中的至少一个计算节点,图3-1是本发明实施例提供的另一种图片分析方法的流程图,可以用于如图1所示的图片分析系统10,如图3-1所示,该方法可以包括:
步骤301、中心节点向第一计算节点发送第一图片分析任务。
在本发明的一个可选实施例中,图片分析系统中的第一计算节点上电后,向中心节点申请执行图片分析任务,当中心节点确定第一计算节点有能力执行图片分析任务时,可以向该第一计算节点分配图片分析任务。
可选地,假设中心节点为视频服务器,中心节点在获取视频流后,可以将视频流中的大量图片一一打包成一个个图片分析任务,每个图片分析任务包括至少一张图片,实际应用中,为了加快处理速度,通常一个图片分析任务包括多张图片,该多张图片为具有关联关系的图片,例如,可以为视频中的每秒钟内传输的图片,打包后的图片分析任务保存在中心节点的正常图片任务队列中,中心节点将正常图片任务队列中的第一图片分析任务发送给第一计算节点,该第一图片分析任务为该正常图片任务队列按照预设顺序确定的任务。
可选地,中心节点在将第一图片分析任务发送给第一计算节点之后,中心节点的正常图片任务队列中还可以保存有该第一图片分析任务,当中心节点接收到第一计算节点分析完的第一图片分析任务时,在完成图片任务队列中保存第一图片分析任务的分析结果并删除正常图片任务队列中的该第一图片分析任务;或者,中心节点在将第一图片分析任务发送给第一计算节点之后,可以直接删除正常图片任务队列中的该第一图片分析任务,等待第一计算节点对该第一图片分析任务进行相应的反馈。
步骤302、第一计算节点执行第一图片分析任务。
第一计算节点接收到中心节点发送的第一图片分析任务后,开始执行第一图片分析任务,对第一图片分析任务中的每张图片进行分析。
步骤303、第一计算节点在执行第一图片分析任务的过程发生程序崩溃时,向中心节点发送第一分析失败信息。
第一计算节点在执行第一图片分析任务的过程中,如果出现不可逆的情况(例如第一图片分析任务中存在第一计算节点不支持的格式的图片),可能导致第一计算节点发生程序崩溃。在第一计算节点发生程序崩溃后,第一计算节点向中心节点反馈第一分析失败信息,该第一分析失败信息用于指示第一计算节点对第一图片分析任务的分析失败,其程序崩溃。当中心节点在将第一图片分析任务从正常图片任务队列发送至第一计算节点之后已删除该第一图片分析任务时,第一计算节点则需要在第一分析失败信息中携带该第一图片分析任务,以便中心节点对该第一图片分析任务做后续处理;当中心节点的正常图片任务队列中还保存有第一图片分析任务时,第一计算节点发送的第一分析失败信息中则无需携带该第一图片分析任务,只需上报错误提示即可。该错误提示可以包含该第一图片分析任务的标识。
可选地,中心节点可以监控第一计算节点有无发生程序崩溃,具体的,当中心节点将第一图片分析任务发送给第一计算节点之后,若在预设时间段内未接收到第一计算节点发送的第一图片分析任务对应的分析结果时,中心节点可以确定该第一计算节点发生程序崩溃,若正常图片任务队列中还保存有第一图片分析任务,可以直接对保存在正常图片任务队列中的第一图片分析任务做后续处理;若正常图片任务队列中未保存有第一图片分析任务,可以从第一计算节点获取第一图片分析任务并对该第一图片分析任务做后续处理。
步骤304、中心节点根据第一分析失败信息生成至少一个子图片分析任务,每个子图片分析任务由第一图片分析任务中的一张图片组成。
可选地,中心节点在接收到第一计算节点反馈的第一分析失败信息后,可以获取第一图片分析任务,并根据该第一图片分析任务生成至少一个子图片分析任务。
在本发明的一个可选实施例中,根据使图片分析系统中的计算节点发生程序崩溃的图片分析任务生成的每个子图片分析任务均分配有图片身份标识(英文:Identity;简称:ID)。
其中,每个图片ID包括:源ID,该源ID用于标识每个子图片分析任务所源于的图片分析任务,例如根据第一图片分析任务生成的至少一个子图片分析任务中的每个子图片分析任务源自于第一图片分析任务,每个子图片分析任务携带有相应的图片ID,该图片ID中包括的源ID用于指示第一图片分析任务。
可选地,每个图片ID还包括图片序列号,该图片序列号用于标识图片在源ID所指示的图片分析任务中的排列顺序。例如,在根据第一图片分析任务生成的至少一个子图片分析任务中,每个子图片分析任务的图片ID所包含的图片序列号用于标识相应图片在第一图片分析任务中的顺序。源ID用于标识每个子图片分析任务所源于的图片分析任务,例如,根据第一图片分析任务生成的至少一个子图片分析任务中的源ID可以为第一图片分析任务生成时的时间戳。又例如,根据第一图片分析任务生成的至少一个子图片分析任务中的源ID也可以是第一图片分析任务的编号。
示例的,假设第一图片分析任务包括5张图片,中心节点将5张图片拆分成5个子图片分析任务,每个子图片分析任务携带的图片ID分别可以为:201610251855-1、201610251855-2、201610251855-3、201610251855-4和201610251855-5,其中,201610251855为源ID,可选地,该源ID既可以为第一图片分析任务生成时的时间戳,也可以为中心节点向第一计算节点发送第一图片分析任务时的时间戳。
步骤305、中心节点根据该至少一个子图片分析任务,更新N个错误图片任务队列。
在本发明的一个可选实施例中,中心节点中设置有N个错误图片任务队列,N为大于0的整数,且第n个错误图片任务队列中记录的子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,每个错误图片任务队列中的子图片分析任务包括一张图片。
可选地,以N为大于1的整数为例,中心节点根据该至少一个子图片分析任务,更新N个错误图片任务队列的方法,如图3-2所示,可以包括:
步骤3051、检测N个错误图片任务队列中是否包括第一子图片分析任务,该第一子图片分析任务为至少一个子图片分析任务中的任意一个。
可选地,检测N个错误图片任务队列中是否包括第一子图片分析任务,也即是,检测N个错误图片任务队列中是否包括与第一子图片分析任务的图片ID相同的子图片分析任务。
步骤3052、当N个错误图片任务队列中不包括第一子图片分析任务时,将第一子图片分析任务记录在第一个错误图片任务队列中。
在本发明的一个可选实施例中,N个错误图片任务队列中不包括第一子图片分析任务,也即是第一图片分析任务第一次使图片分析系统中的计算节点发生程序崩溃,因此根据该第一图片分析任务生成的第一子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数可以记为1,将该第一子图片分析任务记录在第一个错误图片队列中。
步骤3053、当第m个错误图片任务队列中包括第一子图片分析任务时,将第一子图片分析任务添加至第m+1个错误图片任务队列,并删除第m个错误图片任务队列中的第一子图片分析任务,其中,0<m<N。
在本发明的一个可选实施例中在本发明的一个可选实施例中,第m个错误图片任务队列中包括第一子图片分析任务,也即是,该第一子图片分析任务(也即是第一图片分析任务,此时第一图片分析任务中包括一张图片)在使第一计算节点发生程序崩溃之前,使图片分析系统中的计算节点发生程序崩溃的次数为m,在第一计算节点在执行第一子图片分析任务的过程中发生程序崩溃后,第一子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为m+1,因此将第一子图片分析任务添加至第m+1个错误图片任务队列。在一个可选实施例中,可以将第一子图片分析任务从第m个错误图片任务队列发送至第m+1个错误图片任务队列,并删除第m个错误图片任务队列中的第一子图片分析任务。
进一步的,在错误图片任务队列中的任一子图片分析任务被计算节点执行完成且未使计算节点发生程序崩溃后,删除错误图片任务队列中的该任一子图片分析任务。
步骤306、中心节点检测第N个错误图片任务队列中是否存在子图片分析任务。
可选地,当第N个错误图片任务队列中不存在子图片分析任务时,通过图片分析系统的计算节点执行该N个错误图片任务队列中的图片分析任务,并根据执行结果更新该N个错误图片任务队列,直至第N个错误图片任务队列中存在子图片分析任务。
实际应用中,当第N个错误图片任务队列中不存在子图片分析任务时,中心节点将N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至图片分析系统的计算节点,其中,未执行的图片分析任务为由中心节点生成并保存在正常图片任务队列中的图片分析任务。中心节点在为图片分析系统中的计算节点下派任务时,可以将正常图片任务队列中的图片分析任务和N个错误图片任务队列中的子图片分析任务混合下派,图片分析系统中的计算节点在执行N个错误图片任务队列中的子图片分析任务的同时,可以执行正常图片任务队列中的图片分析任务,提高了图片分析系统中的计算节点执行图片分析任务的效率。
步骤307、当确定第N个错误图片任务队列中存在子图片分析任务时,中心节点将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务。
其中,第N个错误图片任务队列中存在子图片分析任务时,说明该子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为N。在本发明实施例中,N为预设的确定可疑子图片分析任务的个数阈值,一旦一个子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数达到N,即可将其确定为可疑子图片分析任务。
示例的,假设N=10,也即是,预设的可疑子图片分析任务为使图片分析系统中的计算节点发生程序崩溃的次数为10的子图片分析任务,则中心节点中可以设置有10个错误图片任务队列,当第十个错误图片任务队列中存在子图片分析任务时,中心节点可以确认该第十个错误图片任务队列中的子图片分析任务为可疑子图片分析任务。
步骤308、中心节点向第二计算节点发送第N个错误图片任务队列中的可疑子图片分析任务。
可选地,该第二计算节点可以为图片分析系统中的一个或多个计算节点,例如,该中心节点可以将多个子图片分析任务均分配给一个计算节点来进行分析,也可以同时分配给多个计算节点来并行处理,处理该子图片分析任务的计算节点统称为第二计算节点,可选地,该第二计算节点可以包括复原后的第一计算节点。
可选地,中心节点可以获取第N个错误图片任务队列中的可疑子图片分析任务,当第N个错误图片任务队列中记录有多个可疑子图片分析任务时,中心节点将该多个可疑子图片分析任务依次发送至第二计算节点,其中,每个可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,也即是,第二计算节点分析完成一个可疑子图片分析任务且该可疑子图片分析任务未使第二计算节点发生程序崩溃后,中心节点向第二计算节点发送下一个可疑子图片分析任务。
在本发明的一个可选实施例中,中心节点将可疑子图片分析任务发送至第二计算节点的同时,停止将其他图片分析任务发送至图片分析系统中的计算节点,该其他图片分析任务为除中心节点发送的可疑子图片分析任务以外的所有图片分析任务,该其他图片分析任务包括正常图片任务队列中的图片分析任务。由于图片分析系统中的单个计算节点在同一时刻同时分析多个图片分析任务,当某一图片分析任务使该计算节点发生程序崩溃时,无法区分具体是哪个图片分析任务使该计算节点发生程序崩溃,因此,在计算节点执行可疑子图片分析任务时,停止执行正常图片任务队列中的图片分析任务,可以准确查找出使计算节点发生程序崩溃的可疑子图片分析任务。
步骤309、第二计算节点执行第N个错误图片任务队列中的每个可疑子图片分析任务,直至计算节点发生程序崩溃。
在本发明的一个可选实施例中,当第二计算节点正常分析完成一个可疑子图片分析任务后,将该可疑子图片分析任务的分析结果保存在完成图片任务队列中,当某一可疑子图片分析任务使第二计算节点发生程序崩溃时,则图片分析系统中的计算节点停止执行可疑子图片分析任务,中心节点可以继续下派正常图片任务队列中的图片分析任务和除第N个错误图片任务队列以外的错误图片任务队列中的子图片分析任务至图片分析系统中的计算节点。
步骤310、第二计算节点向中心节点发送第二分析失败信息。
可选地,该第二分析失败信息可以包括:使第二计算节点发生程序崩溃的可疑子图片分析任务,此步骤的具体解释可以参考上述步骤303,本发明实施例在此不做赘述。
步骤311、中心节点丢弃使第二计算节点发生程序崩溃的可疑子图片分析任务。
在本发明实施例中,中心节点丢弃使计算节点发生程序崩溃的一张图片,保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,可以尽可能的减小图片分析过程中的数据丢失量,提高了图片分析的可靠性。
步骤312、中心节点将第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,后续可疑子图片分析任务为使第二计算节点发生程序崩溃的可疑子图片分析任务之后的任务。
示例的,假设中心节点中设置有10个错误图片任务队列,中心节点可以将第十个错误图片任务队列中的后续可疑子图片分析任务发送至第九个错误图片任务队列,由于第十个错误图片任务队列中的后续可疑子图片分析任务使计算节点发生程序崩溃的次数为10,该后续可疑子图片分析任务使计算节点发生程序崩溃的概率较高,将该后续可疑子图片分析任务保存在第九个错误图片任务队列中,当该后续可疑子图片分析任务中存在目标子图片分析任务使计算节点发生崩溃时,该目标子图片分析任务为该后续可疑子图片分析任务中的任意一个或多个,中心节点可以直接将该目标子图片分析任务确定为可疑子图片分析任务,无需图片分析系统中的计算节点重复执行该目标子图片分析任务,减少了计算节点的任务量。
步骤313、中心节点删除第N个错误图片任务队列中的所有后续可疑子图片分析任务。
进一步的,中心节点可以将完成图片任务队列中的子图片分析任务的分析结果打包整合成目标分析结果,该目标分析结果包括所有携带相同源ID的分析结果。例如,该目标分析结果可以包括视频中的每秒内传输的第一图片分析任务中除丢弃的可疑子图片分析任务中的图片以外的所有图片,将属于第一图片分析任务的图片整合,可以避免在视频播放过程中由于图片乱序导致播放画面不流畅的现象。
具体的,中心节点将完成图片任务队列中所有携带源ID的分析结果的队列元素整合得到一个队列元素,该队列元素可以包括目标分析结果。可选地,整合得到的目标分析结果可以保存在完成图片任务队列中首个携带源ID的分析结果所在的位置,图片任务队列中其他图片分析任务按照预设的队列排布规则调整位置,避免出现队列中某一队列元素为空的现象。
在本发明的一个可选实施例中,本发明实施例提供的图片分析方法既可以应用于中央处理器(英文:Central Processing Unit;简称:CPU),例如X86机器,也可以应用于图形处理器(英文:Graphic Processing Unit;简称:GPU),例如异构机器,在不同的硬件平台上可以采用同一种图片分析方法,该图片分析方法的应用范围广泛。
本发明实施例以以下一个示意性实施例对图片分析系统中的计算节点执行图片分析任务的过程进行说明,包括:
假设可疑子图片分析任务为使图片分析系统中的计算节点发生程序崩溃的次数为3的子图片分析任务,如图4-1至图4-6所示,中心节点101中可以设置有正常图片任务队列101a、三个错误图片任务队列(包括第一个错误图片任务队列101b1、第二个错误图片任务队列101b2和第三个错误图片任务队列101b3)和完成图片任务队列101c。
中心节点中的图片任务队列如图4-1所示,正常图片任务队列101a中记录有第一图片分析任务和第二图片分析任务,第一图片分析任务属于一个队列元素,假设第一图片分析任务包括5张图片,该5张图片的图片序列号按照排列顺序分别标记为1、2、3、4和5;第二图片分析任务属于另一个队列元素,假设第二图片分析任务包括2张图片,该2张图片的图片序列号按照排列顺序分别标记为1和2。
当第一计算节点在执行第一图片分析任务时发生程序崩溃,中心节点的图片任务队列如图4-2所示,中心节点101获取第一图片分析任务,将第一图片分析任务中的5张图片拆分成5个子图片分析任务,每个子图片分析任务携带的图片ID分别可以为:201610251855-1、201610251855-2、201610251855-3、201610251855-4和201610251855-5,并将5个子图片分析任务保存在第一个错误图片任务队列101b1中。
通过图片分析系统中的计算节点执行正常图片任务队列中的第二图片分析任务和第一个错误图片任务队列中的子图片分析任务,假设存在3个图片分析任务使图片分析系统中的计算节点发生程序崩溃,则更新三个错误图片任务队列。中心节点的图片任务队列可以如图4-3所示,该3个图片分析任务包括第一图片分析任务中的两个子图片分析任务和第二图片分析任务,该两个子图片分析任务的图片ID分别为201610251855-2和201610251855-4,则将第一个错误图片任务队列中图片ID分别为201610251855-2和201610251855-4的两个子图片分析任务发送至第二个错误图片任务队列;第二图片分析任务包括两张图片,由中心节点拆分为两个子图片分析任务,两个子图片分析任务携带的图片ID可以为:201610251900-1和201610251900-2,将该两个子图片分析任务保存在第一个错误图片任务队列中。重复执行上述步骤,直至第三个错误图片任务队列中存在子图片分析任务。
假设某一时刻中心节点的图片任务队列如图4-4所示,第三个错误图片任务队列中存在图片ID为201610251855-2、201610251855-4和201610251900-1的子图片分析任务,则确定该三个子图片分析任务为可疑子图片分析任务,此时中心节点停止向图片分析系统中的计算节点发送正常图片任务队列中的图片分析任务,依次向第二计算节点依次发送图片ID为201610251855-2、201610251855-4和201610251900-1的可疑子图片分析任务。
假设图片ID为201610251855-4的可疑子图片分析任务使第二计算节点发生程序崩溃,中心节点的图片任务队列如图4-5所示,删除第三个错误图片任务队列中图片ID为201610251855-4的子图片分析任务,并将图片ID为201610251900-1的可疑子图片分析任务发送至第二个错误图片任务队列,清空第三个错误图片任务队列中的子图片分析任务。
进一步的,图片分析系统中的计算节点完成分析第一图片分析任务和第二图片分析任务后,将完成图片任务队列中第一图片分析任务的子图片分析任务的分析结果和第二图片分析任务的子图片分析任务的分析结果分别进行打包整合成一个目标分析结果,其中,每个目标分析结果属于一个队列元素,如图4-6所示,第一图片分析任务的目标分析结果包括4张图片,该4张图片的图片ID分别为:201610251855-1、201610251855-2、201610251855-3和201610251855-5,第二图片分析任务的目标分析结果包括2张图片,该2张图片的图片ID为201610251900-1和201610251900-2。
在本发明的一个可选实施例中,本公开实施例提供的图片分析方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本公开的保护范围之内,因此不再赘述。
综上所述,本发明实施例提供的图片分析方法,在图片分析系统的计算节点发生程序崩溃时,可以根据使该计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,并根据该至少一个子图片分析任务更新N个错误图片任务队列,然后将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务并通过计算节点执行可疑子图片分析任务,当任一可疑子图片分析任务使计算节点发生程序崩溃时,丢弃使计算节点发生程序崩溃的可疑子图片分析任务,与相关技术相比,本发明实施例提供的图片分析方法,只会丢弃图片分析任务中多次使计算节点发生程序崩溃的一张图片,而保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,缩短了视频播放过程中出现失帧现象的时间,提高了图片分析的可靠性。
图5是本发明实施例提供的一种图片分析装置50的结构示意图,可以用于如图1所示的图片分析系统10中的中心节点101,中心节点中设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的子图片分析任务使图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,该装置50可以包括:
生成模块501,用于在图片分析系统的某一计算节点发生程序崩溃时,根据使该某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由使该某一计算节点发生程序崩溃的任务中的一张图片组成。
更新模块502,用于根据至少一个子图片分析任务,更新N个错误图片任务队列。
确定执行模块503,用于当检测到第N个错误图片任务队列中存在子图片分析任务时,将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过图片分析系统的计算节点执行可疑子图片分析任务,直至计算节点发生程序崩溃。
丢弃模块504,用于丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
综上所述,本发明实施例提供的图片分析装置,在图片分析系统的计算节点发生程序崩溃时,可以通过生成模块根据使该计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,并通过更新模块根据该至少一个子图片分析任务更新N个错误图片任务队列,然后通过确定执行模块将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务并通过计算节点执行可疑子图片分析任务,当任一可疑子图片分析任务使计算节点发生程序崩溃时,通过丢弃模块丢弃使计算节点发生程序崩溃的可疑子图片分析任务,与相关技术相比,本发明实施例提供的图片分析方法,只会丢弃图片分析任务中多次使计算节点发生程序崩溃的图片,而保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,缩短了视频播放过程中出现失帧现象的时间,提高了图片分析的可靠性。
可选地,如图6-1所示,更新模块502,可以包括:
检测子模块5021,用于检测N个错误图片任务队列中是否包括第一子图片分析任务,该第一子图片分析任务为至少一个子图片分析任务中的任意一个。
记录子模块5022,用于当N个错误图片任务队列中不包括第一子图片分析任务时,将第一子图片分析任务记录在第一个错误图片任务队列中。
添加子模块5023,用于当第m个错误图片任务队列中包括第一子图片分析任务时,将第一子图片分析任务添加至第m+1个错误图片任务队列,并删除第m个错误图片任务队列中的第一子图片分析任务,其中,0<m<N。
可选地,如图6-2所示,装置50还可以包括:
检测模块505,用于检测第N个错误图片任务队列中是否存在子图片分析任务。
执行模块506,用于当第N个错误图片任务队列中不存在子图片分析任务时,通过图片分析系统的计算节点执行N个错误图片任务队列中的图片分析任务,并根据执行结果更新N个错误图片任务队列,直至第N个错误图片任务队列中存在子图片分析任务。
其中,执行模块506可以用于:
将N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至图片分析系统的计算节点。
可选地,确定执行模块503可以用于:
获取第N个错误图片任务队列中的可疑子图片分析任务;将第N个错误图片任务队列中的可疑子图片分析任务依次发送至图片分析系统中的计算节点执行。
在本发明的一个可选实施例中,每个可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,且图片分析系统的计算节点在执行任一可疑子图片分析任务时,停止执行其他图片分析任务,该其他图片分析任务为除该任一可疑子图片分析任务以外的所有图片分析任务。
可选地,当N为大于1的整数时,如图6-3所示,该装置50还可以包括:
发送模块507,用于将第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,后续可疑子图片分析任务为使计算节点发生程序崩溃的可疑子图片分析任务之后的任务。
删除模块508,用于删除第N个错误图片任务队列中的所有后续可疑子图片分析任务。
综上所述,本发明实施例提供的图片分析装置,在图片分析系统的计算节点发生程序崩溃时,可以通过生成模块根据使该计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,并通过更新模块根据该至少一个子图片分析任务更新N个错误图片任务队列,然后通过确定执行模块将第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务并通过计算节点执行可疑子图片分析任务,当任一可疑子图片分析任务使计算节点发生程序崩溃时,通过丢弃模块丢弃使计算节点发生程序崩溃的可疑子图片分析任务,与相关技术相比,本发明实施例提供的图片分析方法,只会丢弃图片分析任务中多次使计算节点发生程序崩溃的图片,而保留了图片分析任务中的其他图片,有效减少了丢失图片的个数,缩短了视频播放过程中出现失帧现象的时间,提高了图片分析的可靠性。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例提供了一种图片分析系统,该系统可以包括:图5、图6-2和图6-3任一所示的装置以及计算节点。
本发明实施例提供了一种计算机设备,该计算机设备可以为上述中心节点,如图7所示,计算机设备01包括:包括处理器12和存储器16,
其中,
存储器16,用于存放计算机程序;
处理器12,用于执行存储器16上所存放的程序,实现上述实施例所述的图片分析方法,示例的,该方法可以包括:
在图片分析系统的某一计算节点发生程序崩溃时,根据使所述某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由所述使所述某一计算节点发生程序崩溃的任务中的一张图片组成;
根据所述至少一个子图片分析任务,更新N个错误图片任务队列;
当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,直至计算节点发生程序崩溃;
丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
具体的,处理器12包括一个或者一个以上处理核心。处理器12通过运行存储器16存储的计算机程序,该计算机程序包括软件程序以及单元,从而执行各种功能应用以及数据处理。
存储器16存储的计算机程序包括软件程序以及单元。具体的,存储器16可存储操作系统162、至少一个功能所需的应用程序单元164。操作系统162可以是实时操作系统(Real Time eXecutive,RTX)、LINUX、UNIX、WINDOWS或OS X之类的操作系统。其中该应用程序单元164可以包括生成单元164a、更新单元164b、确定执行单元164c和丢弃单元164d。
生成单元164a,具有与生成模块501相同或相似的功能。
更新单元164b,具有与更新模块502相同或相似的功能。
确定执行单元164c,具有与确定执行模块503相同或相似的功能。
丢弃单元164d,具有与丢弃模块504相同或相似的功能。
本发明实施例提供了一种存储介质,其上存储有计算机程序,当所述存储介质中的程序处理器执行时,能够执行上述实施例涉及的图片分析方法。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的可选实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种图片分析方法,其特征在于,用于图片分析系统的中心节点,所述中心节点中设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的子图片分析任务使所述图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,所述方法包括:
在图片分析系统的某一计算节点发生程序崩溃时,根据使所述某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由所述使所述某一计算节点发生程序崩溃的任务中的一张图片组成;
根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列;
当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,直至计算节点发生程序崩溃;
丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列,包括:
检测所述N个错误图片任务队列中是否包括第一子图片分析任务,所述第一子图片分析任务为所述至少一个子图片分析任务中的任意一个;
当所述N个错误图片任务队列中不包括所述第一子图片分析任务时,将所述第一子图片分析任务记录在第一个错误图片任务队列中;
当第m个错误图片任务队列中包括所述第一子图片分析任务时,将所述第一子图片分析任务添加至第m+1个错误图片任务队列,并删除所述第m个错误图片任务队列中的所述第一子图片分析任务,其中,0<m<N。
3.根据权利要求1所述的方法,其特征在于,在所述更新所述N个错误图片任务队列之后,所述方法还包括:
检测所述第N个错误图片任务队列中是否存在子图片分析任务;
当所述第N个错误图片任务队列中不存在子图片分析任务时,通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的图片分析任务,并根据执行结果更新所述N个错误图片任务队列,直至所述第N个错误图片任务队列中存在子图片分析任务。
4.根据权利要求3所述的方法,其特征在于,所述通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的子图片分析任务,包括:
将所述N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至所述图片分析系统的计算节点。
5.根据权利要求1所述的方法,其特征在于,所述当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,包括:
获取所述第N个错误图片任务队列中的可疑子图片分析任务;
将所述第N个错误图片任务队列中的可疑子图片分析任务依次发送至所述图片分析系统中的计算节点执行。
6.根据权利要求5所述的方法,其特征在于,每个所述可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,且所述图片分析系统的计算节点在执行任一可疑子图片分析任务时,停止执行其他图片分析任务,所述其他图片分析任务为除所述任一可疑子图片分析任务以外的所有图片分析任务。
7.根据权利要求6所述的方法,其特征在于,所述N为大于1的整数,在所述丢弃使计算节点发生程序崩溃的可疑子图片分析任务之后,所述方法还包括:
将所述第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,所述后续可疑子图片分析任务为所述使计算节点发生程序崩溃的可疑子图片分析任务之后的任务;
删除所述第N个错误图片任务队列中的所有后续可疑子图片分析任务。
8.一种图片分析装置,其特征在于,用于图片分析系统的中心节点,所述中心节点中设置有N个错误图片任务队列,N为大于0的整数,其中,第n个错误图片任务队列中记录的子图片分析任务使所述图片分析系统中的计算节点发生程序崩溃的次数为n,0<n≤N,所述装置包括:
生成模块,用于在图片分析系统的某一计算节点发生程序崩溃时,根据使所述某一计算节点发生程序崩溃的图片分析任务生成至少一个子图片分析任务,每个子图片分析任务由所述使所述某一计算节点发生程序崩溃的任务中的一张图片组成;
更新模块,用于根据所述至少一个子图片分析任务,更新所述N个错误图片任务队列;
确定执行模块,用于当检测到第N个错误图片任务队列中存在子图片分析任务时,将所述第N个错误图片任务队列中的子图片分析任务确定为可疑子图片分析任务,并通过所述图片分析系统的计算节点执行所述可疑子图片分析任务,直至计算节点发生程序崩溃;
丢弃模块,用于丢弃使计算节点发生程序崩溃的可疑子图片分析任务。
9.根据权利要求8所述的装置,其特征在于,所述更新模块,包括:
检测子模块,用于检测所述N个错误图片任务队列中是否包括第一子图片分析任务,所述第一子图片分析任务为所述至少一个子图片分析任务中的任意一个;
记录子模块,用于当所述N个错误图片任务队列中不包括所述第一子图片分析任务时,将所述第一子图片分析任务记录在第一个错误图片任务队列中;
添加子模块,用于当第m个错误图片任务队列中包括所述第一子图片分析任务时,将所述第一子图片分析任务添加至第m+1个错误图片任务队列,并删除所述第m个错误图片任务队列中的所述第一子图片分析任务,其中,0<m<N。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
检测模块,用于检测所述第N个错误图片任务队列中是否存在子图片分析任务;
执行模块,用于当所述第N个错误图片任务队列中不存在子图片分析任务时,通过所述图片分析系统的计算节点执行所述N个错误图片任务队列中的图片分析任务,并根据执行结果更新所述N个错误图片任务队列,直至所述第N个错误图片任务队列中存在子图片分析任务。
11.根据权利要求10所述的装置,其特征在于,所述执行模块,用于:
将所述N个错误图片任务队列中的子图片分析任务与未执行的图片分析任务混合,并发送至所述图片分析系统的计算节点。
12.根据权利要求8所述的装置,其特征在于,所述确定执行模块,用于:
获取所述第N个错误图片任务队列中的可疑子图片分析任务;
将所述第N个错误图片任务队列中的可疑子图片分析任务依次发送至所述图片分析系统中的计算节点执行。
13.根据权利要求12所述的装置,其特征在于,每个所述可疑子图片分析任务是在前一可疑子图片分析任务执行完成后发送的,且所述图片分析系统的计算节点在执行任一可疑子图片分析任务时,停止执行其他图片分析任务,所述其他图片分析任务为除所述任一可疑子图片分析任务以外的所有图片分析任务。
14.根据权利要求13所述的装置,其特征在于,所述N为大于1的整数,所述装置还包括:
发送模块,用于将所述第N个错误图片任务队列中的后续可疑子图片分析任务发送至第N-1个错误图片任务队列,所述后续可疑子图片分析任务为所述使计算节点发生程序崩溃的可疑子图片分析任务之后的任务;
删除模块,用于删除所述第N个错误图片任务队列中的所有后续可疑子图片分析任务。
15.一种图片分析系统,其特征在于,所述系统包括:权利要求8至14任一所述的装置和计算节点。
16.一种计算机设备,其特征在于,包括处理器、存储器,
其中,所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,实现权利要求1至7任一所述的图片分析方法。
17.一种存储介质,其上存储有计算机程序,其特征在于,当所述存储介质中的程序由处理器执行时,能够执行权利要求1至7任一所述的图片分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710447909.5A CN109086125B (zh) | 2017-06-14 | 2017-06-14 | 图片分析方法、装置及系统、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710447909.5A CN109086125B (zh) | 2017-06-14 | 2017-06-14 | 图片分析方法、装置及系统、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109086125A CN109086125A (zh) | 2018-12-25 |
CN109086125B true CN109086125B (zh) | 2021-01-22 |
Family
ID=64839470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710447909.5A Active CN109086125B (zh) | 2017-06-14 | 2017-06-14 | 图片分析方法、装置及系统、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109086125B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440173A (zh) * | 2013-08-23 | 2013-12-11 | 华为技术有限公司 | 一种多核处理器的调度方法和相关装置 |
US20160085543A1 (en) * | 2014-09-24 | 2016-03-24 | Oracle International Corporation | System and method for supporting patching in a multitenant application server environment |
CN105550113A (zh) * | 2015-12-18 | 2016-05-04 | 网易(杭州)网络有限公司 | Web测试方法与测试机 |
CN106156147A (zh) * | 2015-04-14 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种基于大数据分析的报告发送方法、装置及系统 |
CN106354646A (zh) * | 2016-08-30 | 2017-01-25 | 竞技世界(北京)网络技术有限公司 | 一种分析转储文件的方法 |
CN106713944A (zh) * | 2016-12-30 | 2017-05-24 | 北京奇虎科技有限公司 | 一种流数据任务的处理方法和装置 |
-
2017
- 2017-06-14 CN CN201710447909.5A patent/CN109086125B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440173A (zh) * | 2013-08-23 | 2013-12-11 | 华为技术有限公司 | 一种多核处理器的调度方法和相关装置 |
US20160085543A1 (en) * | 2014-09-24 | 2016-03-24 | Oracle International Corporation | System and method for supporting patching in a multitenant application server environment |
CN106156147A (zh) * | 2015-04-14 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种基于大数据分析的报告发送方法、装置及系统 |
CN105550113A (zh) * | 2015-12-18 | 2016-05-04 | 网易(杭州)网络有限公司 | Web测试方法与测试机 |
CN106354646A (zh) * | 2016-08-30 | 2017-01-25 | 竞技世界(北京)网络技术有限公司 | 一种分析转储文件的方法 |
CN106713944A (zh) * | 2016-12-30 | 2017-05-24 | 北京奇虎科技有限公司 | 一种流数据任务的处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109086125A (zh) | 2018-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106489251B (zh) | 应用拓扑关系发现的方法、装置和系统 | |
US10061989B2 (en) | Information transfer apparatus and method for image recognition | |
US9355005B2 (en) | Detection apparatus and detection method | |
CN108287769B (zh) | 一种信息处理方法及装置 | |
CN111507257B (zh) | 图片处理方法、装置、系统、介质及程序 | |
CN111698131B (zh) | 信息处理方法、装置、电子设备和介质 | |
US8769339B2 (en) | Apparatus and method for managing network system | |
CN111611055B (zh) | 一种虚拟设备最优空闲时间迁移法、装置及可读存储介质 | |
US11093312B2 (en) | System for monitoring a plurality of distributed devices | |
US11037297B2 (en) | Image analysis method and device | |
US20240281520A1 (en) | Container-based task execution method and apparatus | |
US10574765B2 (en) | Method, device, and non-transitory computer-readable recording medium | |
CN115292003A (zh) | 服务器故障恢复方法、装置、电子设备及存储介质 | |
CN114708535A (zh) | 测试事件检测算法的方法、装置、电子设备及存储介质 | |
CN109086125B (zh) | 图片分析方法、装置及系统、计算机设备及存储介质 | |
US20100146520A1 (en) | Event filtering at a performance-based interface | |
CN109086152B (zh) | 图片分析方法、装置及系统、计算机设备及存储介质 | |
CN109254833B (zh) | 图片分析方法、装置及系统、计算机设备 | |
US10394664B1 (en) | In-memory parallel recovery in a distributed processing system | |
CN112363940A (zh) | 一种数据处理方法、装置、存储介质及服务器 | |
WO2018173698A1 (ja) | 監視システム、コンピュータ可読記憶媒体および監視方法 | |
CN109831342A (zh) | 一种基于分布式系统的故障恢复方法 | |
CN113867553B (zh) | 一种快速点击的处理方法、装置、存储介质及电子设备 | |
CN115953715B (zh) | 一种视频检测方法、装置、设备及存储介质 | |
CN114448897B (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 |