CN113365101B - 对视频进行多任务处理的方法及相关设备 - Google Patents

对视频进行多任务处理的方法及相关设备 Download PDF

Info

Publication number
CN113365101B
CN113365101B CN202010141189.1A CN202010141189A CN113365101B CN 113365101 B CN113365101 B CN 113365101B CN 202010141189 A CN202010141189 A CN 202010141189A CN 113365101 B CN113365101 B CN 113365101B
Authority
CN
China
Prior art keywords
task
multitasking
video
video frames
processing
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
Application number
CN202010141189.1A
Other languages
English (en)
Other versions
CN113365101A (zh
Inventor
贺思颖
汪青
陈家君
李松南
刘杉
金飞剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010141189.1A priority Critical patent/CN113365101B/zh
Publication of CN113365101A publication Critical patent/CN113365101A/zh
Application granted granted Critical
Publication of CN113365101B publication Critical patent/CN113365101B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234381Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping

Abstract

本申请涉及多媒体处理技术领域,具体提供了一种对视频进行多任务处理的方法,所述方法包括:获取对连续视频进行分帧所得到的视频帧序列;按照多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧;按时序将连续或相近的各视频帧输入至对应的任务;由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。相较于视频帧参与多任务中每一任务的处理过程,本方案中视频帧仅参与多任务中一个任务的处理过程,有效提高了视频处理效率。

Description

对视频进行多任务处理的方法及相关设备
技术领域
本申请涉及多媒体处理技术领域,具体而言,涉及一种对视频进行多任务处理的方法及相关设备。
背景技术
随着人工智能技术的发展,人工智能技术在多媒体处理技术中的应用越来越广泛,例如,为了进行视频的多重属性的确定,对视频进行多任务处理,将每一任务对该视频的处理结果对应作为该视频的一个属性。
现有技术中对视频的多任务处理中,多任务中每一任务按照单线程进行处理。在处理过程中,输入一视频帧后,多任务中的每一任务分别对该所输入的视频帧进行处理。因此,对于下一待处理的视频帧而言,所需要的等待处理时间为上一视频帧在多任务处理中每一任务所对应处理时间之和。
若每一视频帧均等待多任务中各任务所对应处理时间之和,等待处理时间较长,因此,如何缩短视频帧的等待处理时间,整体提高视频处理效率是现有技术中亟待解决的技术问题。
发明内容
本申请的实施例提供了一种对视频进行多任务处理的方法及相关设备,进而至少在一定程度上解决现有技术中视频帧的等待处理时间较长的问题。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种对视频进行多任务处理的方法,所述方法包括:
获取对连续视频进行分帧所得到的视频帧序列;
按照多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧;
按时序将连续或相近的各视频帧输入至对应的任务;
由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
根据本申请实施例的另一个方面,提供了一种对视频进行多任务处理的装置,所述装置包括:
获取模块,用于获取对连续视频进行分帧所得到的视频帧序列;
划分模块,用于按照所述多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧;
输入模块,用于按时序将连续或相近的各视频帧输入至对应的任务;
处理模块,用于由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
根据本申请实施例的另一个方面,提供了一种电子设备,包括:
处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现上述中的方法。
根据本申请实施例的另一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时,实现如上所述的方法。
在本申请的一些实施例所提供的技术方案中,先分别为多任务中每一任务输入对应确定的视频帧,然后,由每一任务分别对所对应输入的视频帧进行处理。在该过程中,每一视频帧仅参与多任务中一个任务的处理过程。相较于现有技术中每一视频帧需要参与到多任务中每一任务的处理过程而言,整体上缩短了视频帧的处理时间,提高了视频处理效率。
由于为同一次多任务处理中各任务所确定的视频帧是连续或者相近的视频帧,因此,在一次多任务处理中,输入至每一任务中的各视频帧画面内容相似性较大。相较于多任务中每一任务对同相同视频帧进行处理所得到的多任务处理结果而言,即使本公开中每一任务所输入的视频帧不同,由于在一次多任务处理中所分别输入至各任务中的视频帧的画面内容相似度较大,保证了多任务处理所得到的多任务处理结果的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是根据一实施例示出的对视频进行多任务处理的方法的流程图;
图2是在一具体实施例中按照本公开的方法对视频进行多任务处理的示意图;
图3是现有技术中一种对视频进行多任务处理的示意图;
图4是现有技术中采用融合的方式对视频进行多任务处理的示意图;
图5是根据另一具体实施例示出按照本公开的方法对视频进行多任务处理的示意图;
图6是图1对应实施例的步骤170在一实施例中的流程图;
图7是图6对应实施例的步骤610在一实施例中的流程图;
图8是根据另一具体实施例示出按照本公开的方法对视频进行多任务处理的示意图;
图9是图1对应实施例的步骤130在一实施例中的流程图;
图10是根据另一具体实施例示出按照本公开的方法对视频进行多任务处理的示意图;
图11是根据一实施例示出的对视频进行多任务处理的装置的框图;
图12示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图1是根据一实施例示出的对视频进行多任务处理的方法的流程图,该方法可由具备计算处理能力的计算机设备执行,该计算机设备例如服务器、电脑等。参照图1所示,该对视频进行多任务处理的方法至少包括步骤110至步骤170,详细介绍如下:
步骤110,获取对连续视频进行分帧所得到的视频帧序列。
连续视频是指画面内容在时间上连续,而并没有发生突变的视频。连续视频例如摄像头在同一位置和角度所采集未经剪辑的视频。
由于连续视频的画面内容在时间上连续,在对连续视频进行分帧所得到的视频帧序列中包括若干冗余的视频帧,也就是说,在视频帧序列中,相邻两视频帧的画面内容的相似度较大。
在实际中,存在需要对视频同时进行多种处理的情况,例如识别视频中是否存在人脸、人脸肤色是白色还是黑色、人像是蓝眼睛还是黑眼睛。而对视频同时进行多种处理即为对视频进行多任务处理。
继续上述的举例,上述的多种处理中存在如下三个任务:(1)识别视频中是否存在人脸;(2)识别人脸肤色是白色还是黑色;(3)识别人像是蓝眼睛还是黑眼睛。
为了对视频进行多任务处理,对应为每一任务配置了对应的处理算法。例如为了实现识别视频中是否存在人脸的任务,对应配置了识别人脸的处理算法,为了实现识别人脸肤色是白色还是黑色的任务,对应配置了识别人脸肤色是白色还是黑色的任务。在多任务处理中,每一任务对输入的内容(例如输入的视频帧)所进行的处理,是通过任务所对应的处理算法来实现的。
在具体实施例中,多任务中的两两任务可以彼此依赖(一任务的处理结果对另一任务的处理结果有影响),也可以是相互独立的(例如一任务的处理结果与另一任务的处理结果没有任何影响)。因此,本公开所涉及的多任务,可以存在彼此相互依赖的任务,和/或,存在彼此独立的任务。
步骤130,按照多任务中所涉及的任务对视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧。
在步骤130中,所实现的是,在进行处理之前,先将视频帧序列中的视频帧进行分类,以此来确定每一任务需要处理哪些视频帧,即对应于每一任务的视频帧。
在具体实施例中,确定视频帧对应于哪一任务可以根据实际需要进行设定。例如,按照每一任务在一次处理中需要的视频帧数量,依次为每一任务确定对应的视频帧。
举例来说,若多任务中包括三个任务,分别为:任务A、任务B和任务C。视频帧序列中包括如下按照时间先后顺序排列的视频帧:P1、P2、P3、P4、P5、P6;假设每一任务在一次处理中仅需要一视频帧,则通过步骤130的过程,可以确定视频帧P1、P2、P3、P4、P5、P6分别对应的任务为:任务A、任务B、任务C、任务A、任务B、任务C;当然,在其他实施例中,还可以确定视频帧P1、P2、P3、P4、P5、P6分别对应的任务为:任务B、任务A、任务C、任务B、任务A、任务C。
在其他实施例中,每一任务在一次处理中所需要的视频帧数量还可以是多个,则对应按照任务所需视频帧数量为该任务确定对应数量的视频帧。
现有技术的一次多任务处理中,是将同一视频帧输入至多任务中每一任务进行处理,对应得到多任务处理结果,为了保证本方案中多任务处理结果的准确性,在步骤130中,为同一次多任务中各任务所确定的视频帧是连续或相近的视频帧。该连续或相近的视频帧在画面内容上的相似性较大,从而,在按照步骤130进行视频帧的分类后,可以保证一次多任务处理中所输入至各任务的视频帧是画面内容相似性较大的连续或相近的视频帧。
具体来说,连续视频所对应视频帧序列中的视频帧可以全部均作为多任务的输入进行处理,也可以仅部分视频帧输入至任务中进行处理。
若连续视频所对应视频帧序列中的视频帧可以全部均作为多任务的输入进行处理,为视频帧序列中的每一视频帧均确定所对应的任务,该种情况下,为同一次多任务处理中各任务所确定的视频帧在时间上是相连续的视频帧。
若连续视频所对应视频帧序列中的视频帧仅部分视频帧输入至任务中进行处理,则仅为连续视频所对应视频帧序列中需要输入至任务中进行处理的视频帧确定对应的任务。在此情况下,可以是为同一次多任务处理中各任务所确定的视频帧是连续的,而相邻两次多任务处理中存在不需要进行处理的视频帧。
将视频帧部分输入至任务中进行处理的情况还可以是:同一次多任务处理中为两相邻任务所确定的视频帧之间是不连续的,或者在一次多任务处理中对于需要输入多个视频帧的任务,为该任务所确定的视频帧是不连续的。在此情况下,为同一次多任务处理中各任务所确定的视频帧为相近的视频帧。
步骤150,按时序将连续或相近的各视频帧输入至对应的任务。
由于在步骤130中确定了对应于每一任务的视频帧,则对应将视频帧输入至所对应的任务中。
可以理解的是,在一次多任务处理中,每一任务所处理的视频帧数量有限,因此,在步骤150中,所输入至对应任务的视频帧的数量是对应于视频帧一次处理中所能够处理的数量。
步骤170,由多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
通过如上的过程,在本公开的每一次多任务处理中,为每一任务所输入的视频帧是不同的视频帧,也就是说,并不需要将每一视频帧输入至多任务中的每一任务进行处理。在本公开的方案中,一个视频帧仅参与多任务中一个任务的处理过程,而并不需要像现有技术中,一个视频帧参与多任务中每一任务的处理过程,有效提高了多任务中视频帧的处理效率。
而且,由于相邻或相近的视频帧在画面内容上相似性较大的特点,在为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧的基础上,可以保证本公开方案所得到多任务处理结果与现有技术中将同一视频帧输入至多任务中每一任务进行处理所得到所任务处理结果的一致性,相当于保证了多任务处理结果的准确性。
在一实施例中,多任务在至少两个线程中进行并行处理,步骤170包括:
在为多任务中的任务所对应分配的线程中,由多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
在本实施例中,多任务处理过程相当于在至少两个线程中并行处理。从而,在进行多任务处理之前,为多任务中每一任务对应分配线程,在任务所对应的线程中对为该任务所对应输入的视频帧进行处理。在多任务中每一任务对所对应输入的视频帧处理完成后,由各任务的处理结果生成该次多任务处理的多任务处理结果。
当多任务涉及三个及以上任务时,两任务可以在同一线程中顺序进行处理,例如,将具有依赖关系的两任务分配在同一线程中进行处理,或者将相互独立的两任务在同一线程中进行处理。
进一步的,当多任务涉及三个及以上任务时,多任务中每一任务还可以是分别在不同的线程中,从而,相当于为每一任务在不同的线程中进行处理。
不管是哪种情况,由于多任务在至少两个线程中进行并行处理,相较于在一个线程中每一任务按顺序进行处理,可以进一步提高多任务处理的效率。
在另一实施例中,多任务在单线程中进行处理。也就是说,步骤170中,多任务中每一任务在单线程中依次对所对应输入的视频帧进行处理。
在单线程中,各个任务是顺序执行的,在上一任务完成后,下一任务才开始执行。举例来说,若多任务中包括两个任务:任务A和任务B,若该两个任务的执行顺序为任务A→任务B,则在单线程中,在任务A完成之后,任务B执行,反之,若任务A未完成,则一直停留在任务A,任务B不启动执行。
在本实施例中多任务中的每一任务按照在单线程中的顺序顺次对对应输入的视频帧进行处理,在每一任务处理完成后,根据各个任务的处理结果对应生成此次多任务处理的多任务处理结果。
在此次多任务处理完成后,每一任务再继续按照单线程中的顺序顺次对后续待处理的任务进行处理。
现有技术的多任务处理中,在输入一视频帧后,多任务中的每一任务在单线程中分别对该同一视频帧进行处理,也就是说,一视频帧需要在一次多任务处理中参与每一任务的处理,从而,对于下一待处理的视频帧来说,所需要等待的时间为多个任务中每一任务的处理时间之和。
在本实施例对连续视频进行的多任务处理中,由于多任务处理的对象是连续视频中的视频帧,连续视频的画面内容在时间上是连续的,因此连续视频中存在若干冗余的视频帧。因此,在一次多任务处理中,输入至每一任务中的视频帧中的画面内容相似性较大。相较于多任务中每一任务对同相同视频帧进行处理所得到的多任务处理结果而言,即使本实施例中每一任务所输入的视频帧不同,由于在一次多任务处理中所分别输入至各任务中的视频帧的画面内容相似大,保证了多任务处理所得到的多任务处理结果的准确性。
而且,在本公开的任一次多任务处理中,分别为每一任务输入对应确定的视频帧,然后,由每一任务分别对所对应输入的视频帧进行处理。在该过程中,每一视频帧仅参与一个任务的处理过程,从而,对于下一待进行处理的视频帧而言,仅需要等待一个任务的处理时间。相较于现有技术中下一待处理的视频帧需要等待多任务中每一任务的处理时间和,本实施例的方法利用连续视频帧中存在冗余视频帧的特点,在保证处理结果准确性的基础上,大幅缩短了视频帧的等待处理时间,提高了视频帧处理的效率。
从另一个角度来说,由于连续视频中包括冗余视频帧,现有技术中的方法由于需要对冗余视频帧也按照多任务中所涉及的任务进行处理。而采用本实施例的方法让每一视频帧仅参与一任务的处理,而不需要将每一视频帧参与到多任务中每一任务的处理过程中,因此,整体上减少了对视频帧的处理时间,以此来提高了视频的处理效率。
下面结合一简化的情况来对本实施例方案的有益效果进行说明。在该种简化的情况中,假设多任务中每一任务在一次处理中仅需要输入一视频帧,多任务中包括三个任务:任务A、任务B和任务C,其中,任务A、任务B和任务C在一次处理中均需要输入一视频帧,在单线程中各任务的处理顺序为:任务A→任务B→任务C。假设任务A在一次处理中的耗时为Ta,任务B在一次处理中的耗时为Tb,任务C在一次处理中的耗时为Tc
图2示出了按照本实施例的方法对视频进行多任务处理的示意图。如图2所示,在对连续视频进行分帧得到连续视频所对应的视频帧序列210之后,对连续视频所对应视频帧序列210按任务进行视频帧划分,得到按任务划分后的视频帧序列220,在该划分后的视频帧序列220中,为多任务中每一任务确定了对应的视频帧。如图2所示,虚线表示的是对应于任务A的视频帧,双点划线表示的是对应于任务B的视频帧,加粗线表示的是对应于任务C的视频帧。
在此基础上,按时序将划分后的视频帧序列220中对应于任务的视频帧输入至对应的任务中。在一次多任务处理中,对于即将进行处理的视频帧而言,相较于上一视频帧的等待处理时间的最大值为max{Ta,Tb,Tc}。同理,在下一次多任务处理过程中,下一待处理视频帧相较于上一视频帧的等待处理时间的最大值也为max{Ta,Tb,Tc}。从而,在本实施例中,下一待处理视频帧相较于上一视频帧的等待处理时间的最大值为T3=max{Ta,Tb,Tc}。
若按照现有技术中将同一视频帧输入至多任务中每一任务进行处理,如图3所示,在同一视频帧输入至任务A、任务B、任务C后,任务A、任务B、任务C按照在单线程中的顺序分别对该视频帧进行处理,从而,对于下一待处理的视频帧而言,所需要的等待处理时间为T1=Ta+Tb+Tc。显然,本实施例方案中等待处理时间的最大值T3小于T1
在现有技术中,还存在通过融合的方式来进行多任务处理,也就是说,将多任务中各任务所对应的处理算法进行融合,得到融合算法,通过该融合算法来实现多任务中各任务的处理过程。采用融合方式进行多任务处理的示意图如图4所示。可以理解的是,融合算法相较于各任务所分别对应的处理算法而言,其算法复杂性提高,因此,融合算法对任一视频帧的处理时间大于任一任务所对应单一处理算法对视频帧的处理时间。也就是说,将任务A、任务B和任务C融合后,对一视频帧的处理时间T2同时满足:T2>Ta;T2>Tb;T2>Tc
因此,对于融合进行多任务处理的方式,由于一视频帧的处理时间为T2,则下一待处理视频帧的等待处理时间也为T2。基于上述分析可知:T2>max{Ta,Tb,Tc}。在此种通过融合的方式进行多任务处理中,下一待处理视频帧的等待处理时间T2大于本公开中下一待处理视频帧的等待处理时间的最大值T3,从而,本实施例的方法相较于采用融合方式进行多任务处理也可以大幅缩短视频帧的等待处理时间,提高视频处理的效率。
上述简化的情况是假设每一任务在一次处理中仅需输入一视频帧来对本实施例的方案的效果进行说明的,可以理解的是,还存在在一次处理中多任务中的任务需要多个视频帧的情况,相较于现有技术中将相同视频帧参与到多任务中每一任务的处理过程的多任务处理方式、以及采用融合的方式进行多任务处理的方式而言,本实施例的方法也可以整体上缩短视频帧的平均等待时长,提高视频处理的效率。
在具体实施例中,多任务中的各任务在一次处理中所需要输入的视频帧还可以是多个,因此,图2所示出各任务在一次处理中仅需要输入一视频帧的应用,不能认为是对本公开使用范围的限制,。
图5是根据一具体实施例示出的多任务处理的示意图,如图5所示,任务A在一次处理过程中需要输入2个视频帧,任务B在一次处理中需要1个视频帧,任务C在一次处理中需要输入3个视频帧。在具体实施例中,各个任务在一次处理中所需要输入视频帧的数量由任务所对应的处理算法决定,因此,按照任务所需要输入视频帧的数量进行输入即可。在按任务进行连续视频所对应视频帧序列的划分过程中,按照各任务在一次处理中所需要的视频帧数量对应提取,以确定该任务所对应的视频帧。如图5所示,划分后,虚线表示的是对应于任务A的视频帧,双点划线所表示的是对应于任务B的视频帧,加粗线所表示的是对应于任务C的视频帧。
在一实施例中,多任务在单线程中进行处理的情况下,如图6所示,步骤170包括:
步骤610,按照多任务中每一任务在单线程中的处理顺序,由每一任务对所对应输入的视频帧进行处理,分别得到每一任务的处理结果。
如上所描述,在单线程中,在上一任务处理完成后下一任务才能启动执行,因此,多任务中每一任务在单线程中有其对应的处理顺序。
在具体实施例中,多任务中每一任务在单线程中的处理顺序可以根据实际需要进行灵活设定,也可以由多任务中任务之间的依赖关系来决定。
具体来说,对于多任务中相独立的两任务而言,由于两任务相独立,任一任务的处理结果并不会影响到另一任务的处理,因此,该两相独立的任务在单线程中的处理顺序可以任意设定。
对于多任务中非独立的两任务而言,两任务非独立是指两任务存在依赖关系,换言之,一任务的处理结果(或者在处理过程中所生成的中间参数)会影响到另一任务的处理(将该受其他任务的处理结果或者处理中所生成中间参数影响的任务称之为后续任务,影响该后续任务的任务称为相对于该后续任务的前序任务),那么,基于后续任务和前序任务的依赖关系,在单线程中,前序任务先于后续任务进行。
在具体实施例中,多任务中,可能仅存在彼此相独立的任务,例如图2和图5中的任务;可能仅存在非独立的任务;或者还可能同时存在相独立的任务和非独立的任务。
不管多任务中两任务是否独立,由于每一任务均需要对所对应输入的视频帧进行处理,因此,每一任务对所对应输入的视频帧进行处理后均得到对应的处理结果。
步骤630,根据每一任务的处理结果生成多任务处理结果。
由于是对视频进行多任务处理,因此,多任务处理结果中包括了对应于每一任务的处理结果,例如上述举例中识别视频中是否存在人脸的任务、识别人脸肤色是白色还是黑色的任务、识别人像是蓝眼睛还是黑眼晴的任务所构成的多任务中,在一次多任务处理完成后所得到的多任务处理结果必然指示多任务中每一任务的处理结果。
因此,在一次多任务处理中,所得到多任务处理结果是根据每一任务在该次多任务处理中的处理结果生成的。
在一实施例中,多任务包括至少两个非独立的任务,至少两个非独立的任务包括前序任务和依赖前序任务的后续任务,如图7所示,步骤610包括:
步骤710,由前序任务对所对应输入视频帧进行处理,得到前序任务对所对应输入视频帧的处理结果。
步骤730,在前序任务处理完成后,由后续任务根据前序任务对所对应输入视频帧的处理结果,对自身所对应输入视频帧进行处理,获得后续任务对应的处理结果。
值得一提的是,前序任务和后续任务是相对而言的,例如对于存在依赖关系的两任务而言,若一任务为前序任务,则另一任务仅仅是相对于该前序任务的后续任务。
在具体实施例中,一前序任务还可能被多个任务所依赖,也就是说,一任务可以作为多个任务的后续任务;同理,一后续任务还可能依赖多个任务。
不管是哪种情况,对于非独立的至少两任务而言,仅在前序任务执行完成后,相对于该前序任务的后续任务才执行。
在本实施例的方案中,前序任务和后续任务的依赖关系通过前序任务的处理结果来体现,具体来说,对于后续任务而言,后续任务的输入除了所输入对应于该后续任务的视频帧外,还包括所对应前序任务的处理结果。
值得一提的是,对于存在依赖关系的前序任务和后续任务而言,在单线程中前序任务和后续任务的执行顺序可以相邻(即在执行完成前序任务后立即执行后续任务),也可以不相邻(例如在前序任务和后续任务之间和可以间隔其他任务),在具体实施例中,根据实际需要进行设定。
图8是根据另一具体实施例示出的多任务处理的示意图。在图8中,按任务进行划分后,虚线表示的是对应于任务A的视频帧,双点划线所表示的是对应于任务B的视频帧,加粗线所表示的是对应于任务C的视频帧。如图8所示,任务B与任务C为非独立任务,具体而言,任务B为相对于任务C的前序任务,任务C为相对于任务B的后续任务,而任务A与任务B,以及任务A与任务C均相独立。在多任务处理过程中,任务B的处理顺序必然先于任务C。在图8中,在将对应于任务A、对应于任务B以及对应于任务C的视频帧分别输入至对应的任务后,该三个任务在单线程中的执行顺序可以是:任务A→任务B→任务C。当然,还可以是其他满足任务B先于任务C执行的顺序,在此不进行具体限定。
在一实施例中,如图9所示,步骤130,包括:
步骤910,获取多任务中每一任务在一次处理中所需要输入视频帧的数量。
步骤930,在对应于一次多任务处理的视频帧序列中,按时序分别为多任务中每一任务提取对应数量的视频帧,所提取的视频帧作为所对应任务的视频帧。
在本实施例中,根据每一任务在一次处理中所需要输入视频帧的数量来确定对应于每一任务的视频帧。
具体来说,分别为每一任务在对应于一次多任务处理的视频帧序列中提取该任务所对应数量的视频帧,将所提取的视频帧作为所对应任务的视频帧。
在一次多任务处理过程中,每一任务所需要输入视频帧的数量可能相同也可能不同,可能一视频帧,也可能是多个视频帧。例如在图5对应的实施例中,任务A在一次处理过程中需要输入2个视频帧,任务B在一次处理中需要1个视频帧,任务C在一次处理中需要输入3个视频帧。
因此,在对应于一次多任务处理的视频帧序列中,按时序为每一任务分别提取对应数量的视频帧。
所进行的按时序为每一任务提取对应数量的视频帧是指按照视频帧序列中各视频帧的时间先后顺序进行视频帧的提取,通过按时序来提取视频帧,因此保证视频帧提取过程的有序性,而且,也可以保证对应于需要输入多个视频帧的任务中,对应于该任务的多个视频帧在时间上的先后顺序与在视频帧序列中的顺序保持一致。
在一实施例中,步骤930包括:
根据为每一任务配置的跳帧策略,在对应于一次多任务处理的视频帧序列中顺次提取任务所对应数量的视频帧。
为任务所配置的跳帧策略用于指示在为该任务提取视频帧的过程中如何进行跳帧,所进行的跳帧可以是为任务所提取视频帧之间间隔,还可以是相对于前一已提取任务所对应视频帧的间隔。
图10是根据另一具体实施例示出的多任务处理的示意图,在图10中,虚线表示的是对应于任务A的视频帧,双点划线所表示的是对应于任务B的视频帧,加粗线所表示的是对应于任务C的视频帧。如图10所示,对于为任务A所提取的两视频帧在时序上间隔一视频帧,为任务C所提取的相邻视频帧之间间隔一视频帧,任务A和任务B所对应最靠近的视频帧之间间隔一视频帧,任务B和任务C对对应最靠近的视频帧之间间隔一视频帧。
当然,图10仅仅是一示例性举例,在其他实施例中,为任务所提取多个视频帧之间相邻视频帧所间隔的视频帧由对应配置的跳帧策略决定,同理,相邻任务之间所对应最靠近视频帧之间的所间隔视频帧的数量也对应有所配置的跳帧策略决定。
在另一实施例中,为每一任务所提取的视频帧可以是连续的视频帧,进一步的,任务与任务之间所对应最靠近的视频帧还可以是连续的视频帧。例如图5和图8中,为任务A和任务C所提取的视频帧均为连续的视频帧,为任务A所提取的视频帧与为任务B所提取的视频帧为连续的视频帧,为任务B所提取的视频帧与为任务C所提取的视频帧为连续的视频帧。
在具体实施例中,为了按照任务所对应的跳帧策略来确定对应于该任务的视频帧,在此之前,进行跳帧策略的测试,然后根据测试结果以及结合任务之间的独立性或非独立性、每一任务所接收输入视频帧的数量,针对性地进行跳帧策略的调整,并确定对应于任务的跳帧策略。
在一实施例中,连续视频所对应的视频帧序列包括对应于至少两次多任务处理的视频帧序列,步骤930之前,该方法还包括:
对连续视频所对应的视频帧序列进行分段,确定对应于一次多任务处理的视频帧序列。
通过进行分段,限定了在为一次多任务处理中各个任务确定对应视频帧的范围,即对应于一次多任务处理的视频帧序列。进而,分别在一次多任务处理所对应视频帧序列中,确定对应于每一任务的视频帧。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的方法实施例。
图11是根据一实施例示出的一种对视频进行多任务处理的装置,该装置包括:
获取模块1110,用于获取对连续视频进行分帧所得到的视频帧序列。
划分模块1130,用于按照多任务中所涉及的任务对视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧。
输入模块1150,用于按时序将连续或相近的各视频帧输入至对应的任务。
处理模块1170,用于由多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
在一实施例中,多任务在至少两个线程中进行并行处理,处理模块1170包括:
第一处理单元,用于在为所述多任务中的任务所对应分配的线程中,由所述多任务中的任务对所对应输入的视频帧进行处理,得到所述多任务处理结果。
在另一实施例中,多任务在单线程中进行处理。在该实施例中,处理模块1170,包括:
处理单元,用于按照多任务中每一任务在单线程中的处理顺序,由每一任务对所对应输入的视频帧进行处理,分别得到每一任务的处理结果。
生成单元,用于根据每一任务的处理结果生成多任务处理结果。
在一实施例中,多任务包括至少两个非独立的任务,至少两个非独立的任务包括前序任务和依赖前序任务的后续任务,处理单元,包括:
第一处理单元,用于由前序任务对所对应输入视频帧进行处理,得到前序任务对所对应输入视频帧的处理结果。
第二处理单元,用于在前序任务处理完成后,由后续任务根据前序任务对所对应输入视频帧的处理结果,对自身所对应输入视频帧进行处理,获得后续任务对应的处理结果。
在一实施例中,多任务包括至少两个相互独立的任务。
在一实施例中,划分模块1130,包括:
数量获取单元,用于获取多任务中每一任务在一次处理中所需要输入视频帧的数量。
提取单元,用于在对应于一次多任务处理的视频帧序列中,按时序分别为多任务中每一任务提取对应数量的视频帧,所提取的视频帧作为所对应任务的视频帧。
在一实施例中,提取单元,包括:
第一提取单元,用于根据为每一任务配置的跳帧策略,在对应于一次多任务处理的视频帧序列中顺次提取任务所对应数量的视频帧。
在一实施例中,连续视频所对应的视频帧序列包括对应于至少两次多任务处理的视频帧序列,该装置还包括:
分段模块,用于对连续视频所对应的视频帧序列进行分段,确定对应于一次多任务处理的视频帧序列。
上述装置中各个模块/单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
可以理解,这些模块可以通过硬件、软件、或二者结合来实现。当以硬件方式实现时,这些模块可以实施为一个或多个硬件模块,例如一个或多个专用集成电路。当以软件方式实现时,这些模块可以实施为在一个或多个处理器上执行的一个或多个计算机程序。
图12示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图12示出的电子设备的计算机系统1200仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统1200包括中央处理单元(Central Processing Unit,CPU)1201,其可以根据存储在只读存储器(Read-Only Memory,ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(Random Access Memory,RAM)1203中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1203中,还存储有系统操作所需的各种程序和数据。CPU 1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(Input/Output,I/O)接口1205也连接至总线1204。
以下部件连接至I/O接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被中央处理单元(CPU)1201执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质存储有计算机可读指令,当上述计算机可读指令被处理器执行时,例如上述电子设备中的处理器执行时,实现上述任一实施例中的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (11)

1.一种对视频进行多任务处理的方法,其特征在于,所述方法包括:
获取对连续视频进行分帧所得到的视频帧序列;
按照多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧,所述连续或相近的视频帧在画面内容上的相似性大;
若所述视频帧序列中的全部视频帧均作为多任务的输入,则按时序将连续的各视频帧输入至对应的任务;或者,若所述视频帧序列中的部分视频帧作为多任务的输入,则按时序将相近的各视频帧输入至对应的任务;
由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
2.根据权利要求1所述的方法,其特征在于,所述多任务在至少两个线程中进行并行处理,所述由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果,包括:
在为所述多任务中的任务所对应分配的线程中,由所述多任务中的任务对所对应输入的视频帧进行处理,得到所述多任务处理结果。
3.根据权利要求1所述的方法,其特征在于,所述多任务在单线程中进行处理。
4.根据权利要求3所述的方法,其特征在于,所述由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果,包括:
按照所述多任务中每一任务在单线程中的处理顺序,由每一任务对所对应输入的视频帧进行处理,分别得到每一任务的处理结果;
根据每一任务的处理结果生成所述多任务处理结果。
5.根据权利要求4所述的方法,其特征在于,所述多任务包括至少两个非独立的任务,所述至少两个非独立的任务包括前序任务和依赖前序任务的后续任务,所述按照所述多任务中每一任务在单线程中的处理顺序,由每一任务对所对应输入的视频帧进行处理,分别得到每一任务对所对应输入视频帧的处理结果,包括:
由所述前序任务对所对应输入视频帧进行处理,得到所述前序任务对所对应输入视频帧的处理结果;
在所述前序任务处理完成后,由所述后续任务根据所述前序任务对所对应输入视频帧的处理结果,对自身所对应输入视频帧进行处理,获得所述后续任务对应的处理结果。
6.根据权利要求1所述的方法,其特征在于,所述按照所述多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,包括:
获取所述多任务中每一任务在一次处理中所需要输入视频帧的数量;
在对应于一次多任务处理的视频帧序列中,按时序分别为所述多任务中每一任务提取对应数量的视频帧,所提取的视频帧作为所对应任务的视频帧。
7.根据权利要求6所述的方法,其特征在于,所述在对应于一次多任务处理的视频帧序列中,按时序分别为所述多任务中每一任务提取对应数量的视频帧,包括:
根据为每一任务配置的跳帧策略,在对应于一次多任务处理的视频帧序列中顺次提取任务所对应数量的视频帧。
8.根据权利要求6所述的方法,其特征在于,所述连续视频所对应的视频帧序列包括对应于至少两次多任务处理的视频帧序列,所述在对应于一次多任务处理的视频帧序列中,按时序分别为所述多任务中每一任务提取对应数量的视频帧之前,所述方法还包括:
对所述连续视频所对应的视频帧序列进行分段,确定对应于一次多任务处理的视频帧序列。
9.一种对视频进行多任务处理的装置,其特征在于,所述装置包括:
获取模块,用于获取对连续视频进行分帧所得到的视频帧序列;
划分模块,用于按照所述多任务中所涉及的任务对所述视频帧序列中的视频帧进行划分,确定对应于每一任务的视频帧,为同一次多任务处理中各任务所确定的视频帧是连续或相近的视频帧,所述连续或相近的视频帧在画面内容上的相似性大;
输入模块,用于若所述视频帧序列中的全部视频帧均作为多任务的输入,则按时序将连续的各视频帧输入至对应的任务;或者,若所述视频帧序列中的部分视频帧作为多任务的输入,则按时序将相近的各视频帧输入至对应的任务;
处理模块,用于由所述多任务中的任务对所对应输入的视频帧进行处理,得到多任务处理结果。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如权利要求1-8中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时,实现如权利要求1-8中任一项所述的方法。
CN202010141189.1A 2020-03-05 2020-03-05 对视频进行多任务处理的方法及相关设备 Active CN113365101B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010141189.1A CN113365101B (zh) 2020-03-05 2020-03-05 对视频进行多任务处理的方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010141189.1A CN113365101B (zh) 2020-03-05 2020-03-05 对视频进行多任务处理的方法及相关设备

Publications (2)

Publication Number Publication Date
CN113365101A CN113365101A (zh) 2021-09-07
CN113365101B true CN113365101B (zh) 2023-06-30

Family

ID=77523208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010141189.1A Active CN113365101B (zh) 2020-03-05 2020-03-05 对视频进行多任务处理的方法及相关设备

Country Status (1)

Country Link
CN (1) CN113365101B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116886940B (zh) * 2023-09-07 2023-12-01 园测信息科技股份有限公司 多路视频推理并发预处理加速方法、系统、介质和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008061228A (ja) * 2006-08-01 2008-03-13 Nikon Corp 画像処理装置および電子カメラ
CN102132554A (zh) * 2008-06-20 2011-07-20 惠普开发有限公司 用于高效视频处理的方法和系统
KR20160081444A (ko) * 2014-12-31 2016-07-08 삼성에스디에스 주식회사 영상 데이터 처리 방법 및 장치
CN110069344A (zh) * 2019-04-16 2019-07-30 北京百度网讯科技有限公司 一种任务执行方法、装置和智能设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420931B (zh) * 2011-07-26 2013-08-21 西安费斯达自动化工程有限公司 一种基于fpga的全帧率图像处理方法
CN103765384A (zh) * 2011-09-02 2014-04-30 飞思卡尔半导体公司 数据处理系统和在数据处理系统中进行任务调度的方法
CN103685965B (zh) * 2012-09-18 2017-12-19 浙江大华技术股份有限公司 一种图像信息的处理方法和设备
CN106412626B (zh) * 2016-10-31 2019-06-18 武汉斗鱼网络科技有限公司 一种直播视频的处理方法及装置
CN107480587B (zh) * 2017-07-06 2020-12-08 创新先进技术有限公司 一种模型配置以及图像识别的方法及装置
CN108230357B (zh) * 2017-10-25 2021-06-18 北京市商汤科技开发有限公司 关键点检测方法、装置、存储介质和电子设备
CN110008789A (zh) * 2018-01-05 2019-07-12 中国移动通信有限公司研究院 多类物体检测与识别的方法、设备及计算机可读存储介质
CN108810616B (zh) * 2018-05-31 2019-06-14 广州虎牙信息科技有限公司 目标定位方法、视频显示方法、装置、设备和存储介质
CN109729405B (zh) * 2018-11-27 2021-11-16 Oppo广东移动通信有限公司 视频处理方法、装置、电子设备及存储介质
CN110300325B (zh) * 2019-08-06 2022-04-15 北京字节跳动网络技术有限公司 视频的处理方法、装置、电子设备及计算机可读存储介质
CN110418112A (zh) * 2019-08-09 2019-11-05 上海商汤智能科技有限公司 一种视频处理方法及装置、电子设备和存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008061228A (ja) * 2006-08-01 2008-03-13 Nikon Corp 画像処理装置および電子カメラ
CN102132554A (zh) * 2008-06-20 2011-07-20 惠普开发有限公司 用于高效视频处理的方法和系统
KR20160081444A (ko) * 2014-12-31 2016-07-08 삼성에스디에스 주식회사 영상 데이터 처리 방법 및 장치
CN110069344A (zh) * 2019-04-16 2019-07-30 北京百度网讯科技有限公司 一种任务执行方法、装置和智能设备

Also Published As

Publication number Publication date
CN113365101A (zh) 2021-09-07

Similar Documents

Publication Publication Date Title
US10929648B2 (en) Apparatus and method for data processing
CN108230346B (zh) 用于分割图像语义特征的方法和装置、电子设备
US11941529B2 (en) Method and apparatus for processing mouth image
US11915058B2 (en) Video processing method and device, electronic equipment and storage medium
US11514263B2 (en) Method and apparatus for processing image
CN111190741B (zh) 基于深度学习节点计算的调度方法、设备及存储介质
CN109710624B (zh) 数据处理方法、装置、介质及电子设备
CN109597810B (zh) 一种任务切分方法、装置、介质及电子设备
CN113885956B (zh) 服务部署方法及装置、电子设备和存储介质
US20190114468A1 (en) Method and apparatus for evaluating illumination condition in face image
CN113365101B (zh) 对视频进行多任务处理的方法及相关设备
US20220172005A1 (en) Self-optimizing video analytics pipelines
CN110555334A (zh) 人脸特征确定方法、装置、存储介质及电子设备
US20230325963A1 (en) Image processing method and apparatus for mobile terminal, and storage medium and terminal
CN111783632A (zh) 针对视频流的人脸检测方法、装置、电子设备及存储介质
CN110825461B (zh) 数据处理方法和装置
CN110083357B (zh) 界面构建方法、装置、服务器及存储介质
CN111260756B (zh) 用于发送信息的方法和装置
CN113556575A (zh) 用于压缩数据的方法、装置、设备、介质和产品
CN116384945B (zh) 一种项目管理方法和系统
CN113936698B (zh) 音频数据的处理方法、装置以及电子设备
CN116560847B (zh) 任务处理方法、装置、电子设备以及存储介质
Davalle et al. A real-time FPGA-based solution for binary image thinning
CN115830362A (zh) 图像处理方法、装置、设备、介质及产品
CN116170634A (zh) 一种多媒体处理方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40051345

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant