CN112487858A - 一种视频生成方法及装置 - Google Patents
一种视频生成方法及装置 Download PDFInfo
- Publication number
- CN112487858A CN112487858A CN201911167812.4A CN201911167812A CN112487858A CN 112487858 A CN112487858 A CN 112487858A CN 201911167812 A CN201911167812 A CN 201911167812A CN 112487858 A CN112487858 A CN 112487858A
- Authority
- CN
- China
- Prior art keywords
- video
- video files
- face
- person
- metadata
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Multimedia (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Human Computer Interaction (AREA)
- Bioinformatics & Computational Biology (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
一种视频生成方法及装置,该方法包括:接收视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址;根据待处理的视频流的存储地址获取N个视频文件,针对N个视频文件中的每个视频文件进行人脸识别,得到并保存N个视频文件中出现的一个或多个人物的元数据,如此可便于其他装置根据一个人物的元数据,生成针对该人物的个性化视频,从而提高用户体验。
Description
本申请要求在2019年9月12日提交中华人民共和国知识产权局、申请号为201910867105.X、发明名称为“一种视频处理的方法、装置和系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,尤其涉及一种视频生成方法及装置。
背景技术
随着全民健身的理念日益普及,人们参加体育活动的热情日益高涨。人们在参加体育活动享受运动带来的乐趣的同时,也希望将自己在活动过程中的精彩瞬间记录下来,从而上传到社交网站与朋友分享,或者留存为美好的回忆。事实上,不止参加体育活动,很多场景下都有生成个性化视频的需求,例如其它类型的活动或视频监控领域。
为了获得个性化视频,现有技术中的一种方法为人工观看视频并截取相应的视频片段。但是这一方法只适用于待检测人物很少的场景使用,若待检测人物很多,人们从海量视频中获得自己的个性化视频会非常繁琐和困难。此外,生成专属于自己的个性化视频还需要使用专业的视频剪辑软件进行手工编辑,这不仅费时费力,对很多人来说操作困难,难以实现。
另一种方法是,采用光学字符识别(optical character recognition,OCR)技术对视频中出现的人物的号牌或其他标识进行识别,进而生成指定人物的个性化视频。但是由于遮挡、模糊、光照等场景因素和人为因素,这一方法识别人物身份的效果也较差。
发明内容
本申请实施例提供一种视频生成方法及装置,用以高效地生成指定人物的个性化视频,提高用户体验。
第一方面,本申请实施例提供一种视频生成方法,该方法可由第一装置执行,该方法包括:接收视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址;根据视频流的存储地址获取N个视频文件,该N个视频文件来自M路视频流,针对N个视频文件中的每个视频文件进行人脸识别,得到并保存在N个视频文件中出现的一个或多个人物的元数据,其中,每个人物的元数据用于生成针对该人物的视频,人物的元数据包括该人物在N个视频文件中出现的L个视频文件、以及该人物在L个视频文件中的每个视频文件中出现的区间,N、M、L均为正整数。
本申请实施例中,第一装置可通过上述方法生成N个视频文件中出现的一个或多个人物的元数据,如此,第二装置可获取一个或多个人物的元数据,根据其中任一人物的元数据生成该人物对应的个性化视频,并提供给终端设备,从而提高用户体验。
结合第一方面,在第一方面的一种可能的设计中,针对N个视频文件中的每个视频文件进行人脸识别可包括:对每个视频文件进行视频解码和抽帧;针对抽帧得到的每一帧图像,通过人脸检测模型检测出图像中的人脸,该人脸检测模型采用特征提取网络、RPN网络和全连接层组成;提取检测出的人脸的人脸特征;将提取的人脸特征与数据库中存储的人脸特征进行比对,确定人脸图像的人物身份。如此,通过上述方法,第一装置可准确识别N个视频文件的画面中出现的每个人物的人脸图像,从而便于生成每个人物的元数据。
结合第一方面,在第一方面的一种可能的设计中,在特征提取网络中的深层卷积层和全连接中应用有奇异值分解SVD,如此可有效降低第一装置在进行人脸识别过程中的计算量,提高处理效率。
结合第一方面,在第一方面的一种可能的设计中,提取检测出的人脸的人脸特征,可包括:检测出图像中的人脸后,对得到的人脸图像进行校准,得到正面人脸图像;提取正面人脸图像中的人脸特征,如此可有效提高第一装置在人脸识别过程中检测出人脸的准确率。
结合第一方面,在第一方面的一种可能的设计中,对得到的人脸图像进行校准可包括:对人脸图像进行人脸关键点检测,得到人脸图像中的五官关键点的坐标;通过仿射变换将所述五官关键点的坐标标定到预定义的人脸模板,得到校正后的正面人脸图像。
结合第一方面,在第一方面的一种可能的设计中,在接收视频内容处理请求之前,该方法还包括:接收M路视频流,将M路视频流按照预设时长切割成N个视频文件,并存储该N个视频文件。这一步骤也可以由第一装置内部的第三装置来执行,该第三装置可以为硬件或软件模块,例如该第三装置可以为视频预处理模块。
结合第一方面,在第一方面的一种可能的设计中,该方法还包括:将保存的所述一个或多个人物的元数据的存储地址发送给应用层,应用层根据该存储地址,获取一个或多个人物的元数据。该应用层可以为集成在第一装置内部的硬件或软件模块。
结合第一方面,在第一方面的一种可能的设计中,应用层可根据一个或多个人物对应的元数据,得到一个或多个人物中的每个人物在N个视频文件中出现的视频片段;针对一个或多个人物中的每个人物,应用层将该人物出现的各个视频片段按照预设规则组织成个性化视频。
结合第一方面,在第一方面的一种可能的设计中,应用层还可接收终端设备发送的针对第一人物的个性化视频请求,该第一人物为N个视频文件中一个或多个人物中的人物之一;应用层获得该第一人物的个性化视频,并将该第一人物的个性化视频发送给终端设备。
结合第一方面,在第一方面的一种可能的设计中,应用层可接收终端设备发送的针对第一人物的个性化视频请求;应用层根据第一人物对应的元数据,得到第一人物在N个视频文件中出现的视频片段;应用层将第一人物在N个视频文件中出现的视频片段,按照预设规则组织成第一人物对应的个性化视频;应用层将该第一人物对应的个性化视频发送给终端设备。
第二方面,本申请实施例提供另一种视频生成方法,该方法可由第二装置执行,该方法包括:发送视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址,该视频流的存储地址中存储有N个视频文件,N个视频文件来自M路视频流,N、M均为正整数;接收在N个视频文件中出现的一个或多个人物对应的元数据的存储地址,一个人物的元数据用于生成针对该人物的视频,人物的元数据包括该人物在N个视频文件中出现的L个视频文件、以及该人物在L个视频文件中的每个视频文件中出现的区间,所述L为正整数。
本申请实施例中,第二装置可根据接收到的N个视频文件中出现的一个或多个人物的元数据的存储地址,获取该一个或多个人物的元数据,如此,第二装置可根据其中任一人物的元数据,生成该人物对应的个性化视频,以提供给终端设备,从而提高用户体验。
结合第二方面,在第二方面的一种可能的设计中,该方法还包括:根据N个视频文件中出现的一个或多个人物对应的元数据,得到一个或多个人物中的每个人物在N个视频文件中出现的视频片段;针对一个或多个人物中的每个人物,将该人物出现的各个视频片段按照预设规则组织成个性化视频。
结合第二方面,在第二方面的一种可能的设计中,该方法还包括:接收终端设备发送的针对第一人物的个性化视频请求,该第一人物为N个视频文件中出现的一个或多个人物中的人物之一;获取第一人物的个性化视频,并将该第一人物的个性化视频发送给终端设备。
结合第二方面,在第二方面的一种可能的设计中,所述方法还包括:接收终端设备发送的针对第一人物的个性化视频请求,该第一人物为N个视频文件中出现的一个或多个人物中的人物之一;根据第一人物对应的元数据,得到该第一人物在N个视频文件中出现的视频片段;将第一人物在N个视频文件中出现的视频片段,按照预设规则组织成第一人物对应的个性化视频;将该第一人物对应的个性化视频发送给终端设备。
本申请实施例中,第二装置在获取到N个视频文件中出现的一个或多个人物对应的元数据后,可根据得到的一个或多个人物的元数据,预先生成每个人物对应的个性化视频,从而在终端设备通过发送个性化视频请求以请求某个人物的个性化视频时,可快速向终端设备提供该人物对应的个性化视频,如此,可有效提高个性化视频的响应速度,提高用户体验。可以理解,第二装置也可以在接收到终端设备发送的个性化视频请求后,再根据请求的人物的元数据,生成该人物对应的个性化视频,从而可有效利用第二装置的处理资源。
第三方面,本申请实施例提供一种视频生成装置,该装置可具有实现上述第一方面或第一方面的任一种可能的设计中的功能,也可具有上述第二方面或第二方面的任一种可能的设计中的功能。该装置可以为各种类型的计算设备,例如服务器或服务器中包含的芯片。上述视频生成装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一种可能的设计中,该装置的结构中包括处理模块和收发模块,其中,处理模块被配置为支持该装置执行上述第一方面或第一方面的任一种设计中的功能、或执行上述第二方面或第二方面的任一种设计中的功能。收发模块用于支持该装置与其他装置之间的通信,例如接收视频内容处理请求。该装置还可以包括存储模块,存储模块与处理模块耦合,其保存有装置必要的程序指令和数据。作为一种示例,处理模块可以为处理器,收发模块可以为收发器,存储模块可以为存储器,存储器可以和处理器集成在一起,也可以和处理器分离设置,本申请并不限定。
在另一种可能的设计中,该装置的结构中包括处理器,还可以包括存储器。处理器与存储器耦合,可用于执行存储器中存储的计算机程序指令,以使装置执行上述第一方面或第一方面的任一种可能的设计中的方法、或执行上述第二方面或第二方面的任一种可能的设计中的方法。可选地,该装置还包括通信接口,处理器与通信接口耦合。当装置为服务器时,该通信接口可以是收发器或输入/输出接口;当该装置为服务器中包含的芯片时,该通信接口可以是芯片的输入/输出接口。可选地,收发器可以为收发电路,输入/输出接口可以是输入/输出电路。
第四方面,本申请实施例提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述第一方面或第一方面的任一种可能的设计中的方法、或实现上述第二方面或第二方面的任一种可能的设计中的方法。
可选地,该芯片系统还包括接口电路,该接口电路用于接收代码指令并传输至所述处理器。
可选地,该芯片系统中的处理器可以为一个或多个,该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
第五方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序或指令,当该计算机程序或指令被执行时,使得计算机执行上述第一方面或第一方面的任一种可能的设计中的方法、或执行上述第二方面或第二方面的任一种可能的设计中的方法。
第六方面,本申请实施例提供一种计算机程序产品,当计算机读取并执行所述计算机程序产品时,使得计算机执行上述第一方面或第一方面的任一种可能的设计中的方法、或执行上述第二方面或第二方面的任一种可能的设计中的方法。
第七方面,本申请实施例提供一种视频生成系统,该视频生成系统包括第一装置、第二装置和第三装置中的一项或多项。
附图说明
图1为本申请实施例提供的一种视频生成方法的流程示意图;
图2为本申请实施例提供的对视频文件进行人脸识别的流程示意图;
图3为本申请实施例提供的人脸检测模型的结构示意图;
图4为本申请实施例提供的人间检测模型中特征提取网络的结构示意图;
图5为本申请实施例提供的对视频文件进行人脸识别的另一流程示意图;
图6a、图6b、图6c和图6d为本申请实施例适用的一种网络架构的示意图;
图7a和图7b为本申请实施例提供的一种应用场景示意图;
图8为本申请实施例提供的视频生成系统内部的交互流程示意图;
图9为本申请实施例提供的一种视频生成装置的结构示意图;
图10为本申请实施例提供的一种视频生成装置的另一结构示意图。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步地详细描述。
请参考图1,为本申请实施例提供的一种视频生成方法,该方法具体包括如下步骤:
步骤S101、第二装置向第一装置发送视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址。
步骤S102、第一装置从第二装置接收视频内容处理请求。
步骤S103、第一装置根据视频流的存储地址获取N个视频文件,该N个视频文件来自M路视频流,N、M均为正整数。
步骤S104、第一装置针对N个视频文件中的每个视频文件进行人脸识别,得到在N个视频文件中出现的一个或多个人物的元数据。
本申请实施例中,一个人物的元数据用于生成针对该人物的个性化视频。一个人物的元数据可包括该人物在N个视频文件中出现的L个视频文件、以及该人物在L个视频文件中的每个视频文件中出现的区间,L为正整数。可选地,一个人物的元数据还可以包括L个视频文件中的每个视频文件所属的视频流、该视频文件所在的存储地址,以及该视频文件的时间戳等信息。
应理解,所述人物在一个视频文件中出现的区间可以为一个区间,或不连续的多个区间。其中,所述区间可以为该人物出现的时间区间和/或帧的区间。其中,时间区间的位置可以通过该人物在视频文件的画面中出现的开始时间和结束时间来表示,也可以通过人物在视频文件的画面中出现的开始时间和持续时长来表示,本申请并不限定。帧的区间的位置可以通过人物在视频文件的画面中出现的起始帧号和结束帧号来表示,也可以通过人物在视频文件的画面中出现的起始帧号和区间中包括帧的数量来表示,本申请并不限定。
具体的,第一装置可通过图2中所示的如下步骤对N个视频文件中的每个视频文件进行人脸识别:
步骤S201、对每个视频文件进行视频解码和抽帧。
第一装置获取到视频文件后,可将视频文件解码为图像帧。由于图像帧之间存在着信息冗余,第一装置可从解码得到的图像帧中按照固定间隔抽取部分图像帧用于人脸识别,从而提升处理效率。
在一种可能的实现方式中,第一装置可采用流式解码的方式对视频文件进行解码,解码后的图像帧按照每隔8帧抽取1帧图像用于后续处理,从而能够实现解码与图像分析的同步进行,有效提升处理效率。应理解,上述解码与抽帧的方式仅为一种示例,本申请实施例中,第一装置也可以采用其他的解码与抽帧方式,本申请并不限定。
步骤S202、针对抽帧得到的每一帧图像,通过人脸检测模型识别图像中的人脸。
通过人脸检测模型识别图像中的人脸具体是指,在抽帧得到的每一帧图像中检测是否存在人脸,如果检测到人脸,则在检测完成后输出人脸外接矩形在图像中的坐标。
请参考图3,为本申请实施例中的人脸检测模型的结构示意图。该人脸检测模型包括特征提取网络、区域建议网络(region proposal network,RPN)网络和全连接层。其中,特征提取网络也可以称为卷积神经网络(convolutional neural network,CNN)特征提取网络或者特征金字塔网络,用于获得图像中人脸的特征图;RPN网络用于根据特征金字塔网络输出的人脸的特征图,生成图像中人脸的候选窗口在特征图中的位置,即识别图像中的人脸的可能位置;全连接层用于判断是否为人脸,以及确定相应检测框的坐标,即对RPN网络检测出的人脸的可能位置,进行精细化的分类和回归计算,进而确定人脸的准确位置。
为了更快更准确地检测图像中不同尺寸的人脸,本申请实施例中的特征提取网络,在卷积神经网络的基础上应用了特征金字塔(feature pyramid networks,FPN)的思想。一幅图像经过卷积神经网络后,可以获得不同尺寸的特征图。其中,低层的特征图尺寸较大,分辨率较高,更关注图像纹理等细节信息,目标位置准确,但是包含的特征语义信息较少;高层的特征图包含的特征语义信息比较丰富,但是尺寸较小,目标位置比较粗略。特征金字塔通过融合不同层的特征,能够同时利用低层特征的高分辨率信息和高层特征的语义信息,从而增强人脸检测的效果。
请参考图4,为本申请实施例中的特征提取网络的结构示意图。该特征金字塔网络的输入为单一尺寸的图像,输出为多个不同尺寸的特征图,即特征图金字塔。
如图4所示,自左向右方向上是卷积神经网络的前向过程,经过一层一层的卷积,特征图的尺寸逐渐变小,同时空间分辨率减少,空间信息丢失,但高层语义信息得到增强。自右向左的方向是上采样过程,通过进行上采样可将特征图的尺寸再一步步还原回去,使得上采样后的特征图与下一层的特征图具有相同的尺寸。例如,可以在原有的图像像素的基础上,采用合适的插值算法在像素点之间插入新的元素,从而扩大图像的尺寸。
自上向下的方向上,对应层次的卷积层与经过上采样后的卷积层之间的连接,目的是将经过上采样后输出的特征图与卷积神经网络的前进过程中输出的特征图进行融合,得到新的特征图。这个特征图融合了不同层的特征,具有更丰富的信息。如此,一层一层迭代下去,特征提取网络输出的各个尺寸的特征图均可包含高层语义信息,从而提高人脸检测效果。
在一种具体的实施方式中,如图4所示,卷积神经网络中部分层次的卷积层输出的特征图可在进行1*1卷积操作后与上采样的特征图进行融合,如此,可有效减少特征图的数量,提高检测速度。可选地,将卷积层输出的特征图与上采样的特征图进行融合之后,还可以再采用3*3的卷积核对融合结果进行卷积,从而消除上采样的混叠效应。
特征提取网络输出的特征图,可作为RPN网络的输入。RPN网络可根据输入的不同的尺度特征,定义不同大小的候选窗口,以识别图像中不同尺寸的人脸。此外,在RPN网络中,还可针对不同尺寸的人脸,选用不同尺寸的特征图进行识别。例如,小目标用大尺寸的特征图,大目标用小尺寸的特征图,如此,可有效提高对小像素人脸的检测效果。
本申请实施例中,为了减少模型的复杂度,特征提取网络中的深层卷积层以及全连接层还可应用奇异值分解(singular value decomposition,SVD)。示例性地,所述深层卷积层可以为图4中所示的右边三个卷积层。所述奇异值分解是指在相邻的两个卷积层之间插入卷积核数较小的卷积层,从而降低卷积计算的计算量。
步骤S203、提取检测出的人脸的人脸特征。
针对在步骤S202中检测出的每个人脸图像,在步骤S203中可提取该人脸图像的人脸特征。本申请实施例中,可通过预先建立的人脸特征提取模型,将识别出的人脸图像转化为固定长度的特征向量,该特征向量可以称为人脸特征向量,用以抽象化表示人脸图像中的人脸特征。如此,可使相同的人脸特征对应的特征向量比较接近,不同的人脸特征对应的特征向量有较大差异。示例性地,本申请实施例可以采用256维的特征向量来表示识别出的人脸图像中的人脸特征。
所述人脸特征提取模型为一基于深度卷积神经网络(deep convolutionalneural network,DCNN)的模型,人脸特征提取模型的准确率和训练数据集的规模、神经网络模型以及损失函数的设计相关。示例性地,本申请实施例中的人脸特征提取模型中的损失函数可应用ArcFace Loss,训练数据集来源可以为MS-Celeb-1M,Asian-Celeb,VGG2等开源数据集。通过将从上述开源数据集得到的数据进行数据清洗,可得到实际训练数据集,进而将实际训练数据集输入到设计的DCNN分类网络进行训练,训练完成后去除模型中的softmax层,可得到人脸特征提取模型。
在一种具体的实施方式中,所述提取检测出的人脸的人脸特征可包括:通过人脸检测模型检测出图像中的人脸后,对得到的人脸图像进行校准,得到正面人脸图像,进而提取正面人脸图像中的人脸特征。
虽然人脸的结构是固定的,近似是一个刚体,但是由于光照、遮挡、姿态、以及表情等诸多因素的影响,即使是同一张人脸,从不同的图像中检测到的人脸图像在姿态和尺度上也会存在着较大的差异。为了减少这些差异对人脸特征提取造成的影响,本申请实施例中可在提取人脸特征之前,对人脸图像进行校准。具体包括:采用另一基于深度卷积神经网络DCNN的模型,对人脸图像进行人脸关键点检测,得到人脸图像中五官关键点的坐标。进而,通过仿射变换将得到的五官关键点的坐标标定到预定义的人脸模板,得到校正后的正面人脸图像。
步骤S204、将提取到的人脸特征与数据库中存储的人脸特征进行比对,确定人脸图像的人物身份。
如前所述,从人脸图像中提取的人脸特征可用一特征向量来表示,相应地,所述数据库中存储有若干个正面人脸图像的人脸特征对应的特征向量,且数据库中的每一人脸特征对应的特征向量均有明确的人物身份。于是,针对从一帧图像中识别出的每一人脸图像,将提取到的该人脸图像的人脸特征与数据库中存储的人脸特征进行比对具体可以为:根据该人脸图像对应的特征向量在数据库中进行特征检索,计算该特征向量与数据中已存储的人脸的特征向量之间的相似度,根据数据库中存储的与该特征向量相似度最高的特征向量,确定该人脸图像的人物身份。示例性地,本申请实施例中,可采用Faiss(Facebook AIsimilarity search)框架在数据库中进行特征检索。
所述数据库也可以称为人脸特征数据库。本申请实施例中,该数据库具体是根据采集的可能在M路视频流的画面中出现的若干个人物的正面人脸图像建立的。可以是在采集M路视频流之前或是在采集M路视频流后建立的,本申请并不限定,但是需要在对N个视频文件中的图像进行人脸识别之前建立。
在一种具体的实施方式中,第一装置采集到可能在M路视频流的视频文件中出现的若干个人物的正面人脸图像后,针对采集到的每一正面人脸图像,可采用与步骤S202和/或步骤S203中所述的相同或类似的算法进行人脸识别,提取正面人脸图像的人脸特征,并表示成相应的特征向量存储在数据库中,本申请在此不再赘述。
针对N个视频文件中的每个视频文件,第一装置对该视频文件进行人脸识别,得到该视频文件中出现的每个人物的元数据的过程可以简化地表示为如图5所示的形式。
步骤S105、第一装置保存N个视频文件中出现的一个或多个人物的元数据。
步骤S106、第一装置将N个视频文件中出现的一个或多个人物的元数据的存储地址发送给第二装置,以便第二装置生成N个视频文件中出现的一个或多个人物的个性化视频。
步骤S107、第二装置从第一装置接收N个视频文件中出现的一个或多个人物的元数据的存储地址,并根据该存储地址,获取一个或多个人物的元数据。
在一种可能的实现方式中,第二装置可根据N个视频文件中出现的一个或多个人物对应的元数据,得到该一个或多个人物中的每个人物在N个视频文件中出现的视频片段。进而,针对该一个或多个人物中的每个人物,将该人物在N个视频文件中出现的各个视频片段按照预设规则组织成个性化视频,所述预设规则可以为按照各个视频片段的录制时间的先后顺序将各个视频片段组织成个性化视频,或者也可以为按照各个视频片段所属的视频流的某种预设顺序将各个视频片段组织成个性化视频,或者还可以为按照各个视频片段的持续时长将各个视频片段组织成个性化视频片段。应理解,所述预设规则还可以具有其他的实现形式,本申请并不限定。如此,第二装置可按照上述方式生成N个视频文件中出现的所有人物的个性化视频,并保存。
随后,第二装置可从终端设备接收针对第一人物的个性化视频请求,该第一人物是N个视频文件中出现的一个或多个人物之一。第二装置可从保存的N个视频文件中出现的一个或多个人物的个性化视频中获取该第一人物的个性化视频,并将该第一人物的个性化视频发送给终端设备。
在另一种可能的实现方式中,第二装置获取N个视频文件中出现的一个或多个人物的元数据后,可从终端设备接收针对第一人物的个性化视频请求,该第一人物为N个视频文件中出现的一个或多个人物之一。随后,第二装置可根据第一人物对应的元数据,得到第一人物在N个视频文件中出现的视频片段,将该第一人物在N个视频文件中出现的各个视频片段按照预设规则组织成个性化视频,进而将该第一人物对应的个性化视频发送给终端设备。所述预设规则可以为按照各个视频片段的录制时间的先后顺序将各个视频片段组织成个性化视频片段,或者也可以为按照各个视频片段所属的视频流的某种预设顺序将各个视频片段组织成个性化视频,或者还可以为按照各个视频片段的持续时长将各个视频片段组织成个性化视频。应理解,所述预设规则还可以具有其他的实现形式,本申请并不限定。
需要说明的是,上述两种实现方式的区别在于,第二装置可在获取到N个视频文件中出现的一个或多个人物的元数据后,便生成针对N个视频文件中出现的每个人物的个性化视频。如此,当第二装置后续接收到终端设备发送的针对第一人物的个性化视频请求后,可直接将预先生成的第一人物的个性化视频发送给终端设备,从而有效提高个性化视频的响应速度。或者,第二装置也可以在接收到终端设备发送的针对第一人物的个性化视频请求后,根据第一人物的元数据生成第一人物的个性化视频,然后再将生成的第一人物的个性化视频发送给终端设备,从而有效节省处理资源。可选的,在第二种实现方式中,还可在个性化视频请求中携带有关个性化视频的生成方式的信息,例如,可以由用户选择或指定将视频片段组织成个性化视频的预设规则,从而有效提高用户体验。
还应理解,一条个性化视频请求可以用于请求针对一个或多个人物的个性化视频,而且针对不同人物的个性化视频请求也可以携带在同一条消息中发送,本申请并不限定。
本申请实施例提供的视频生成方法还可以包括,第三装置接收M路视频流,将M路视频流按照预设时长切割成N个视频文件,并将N个视频文件存储在第三装置中。如此,本申请实施例所提及待处理的视频流即为第三装置接收到的M路视频流,待处理的视频流的存储地址为将M路视频流切割得到的N个视频文件在第三装置中的存储地址。
请参考图6a~图6c,为本申请实施例适用的一种网络架构的示意图。该网络架构包括第一装置、第二装置、第三装置和终端设备。其中,第一装置用于对N个视频文件的内容进行分析,得到视频文件中出现的人物的元数据,第二装置用于根据人物的元数据,生成对应的个性化视频,并提供给终端设备,第三装置用于将接收到的M路视频流切割为N个视频文件。本申请并不限定。本申请实施例中所述的视频生成系统可包括第一装置、第二装置和第三装置中的一项或多项,可选的,该视频生成系统中还可包括用于实现存储和/或数据库功能的其他装置,所述视频生成系统用于向终端设备提供个性化视频。
其中,第一装置、第二装置和第三装置可以为用于实现上述方法实施例中所介绍的相应功能的计算设备,或是在计算设备中实现的硬件或软件模块。所述计算设备可以为服务器,例如物理服务器或虚拟服务器,所述计算设备还可以为应用于云环境中的计算设备,即云端设备(如云服务器或远程服务器)。当计算设备应用在云环境中时,允许其存在部分或全部的虚拟化。本申请实施例对计算设备或服务器的具体形态不作限定。此外,第一装置、第二装置和第三装置还可由不同的机构来实现,本申请同样不做限定。举例来说,第一装置可由提供视频分析服务的机构实现,如提供云计算或视频处理功能的企业,第二装置可由提供个性化视频服务的机构来实现,如广播机构、流媒体公司等直接面向消费者提供的视频服务的企业,第三装置可以为提供视频分析服务的机构,或是提供个性化视频服务的机构实现,本申请并不限定。
本申请实施例中,根据部署方式的不同,第一装置、第二装置和第三装置可以在相同或不同的计算设备上实现。应理解,当第一装置、第二装置和第三装置中的一项或多项在同一计算设备上实现时,它们之间的交互可以理解为同一计算设备内部不同模块之间的交互。
在图6a所示的具体实施方式中,第一装置、第二装置和第三装置可分别在不同的计算设备上实现,例如,第一装置、第二装置和第三装置可以分别为一台服务器,它们通过网络进行通信。
在图6b所示的具体实施方式中,第二装置可以与第一装置在同一台计算设备上实现,第三装置可以在另一台计算设备上实现,此时,第一装置和第二装置可以为同一台计算设备内部的不同硬件或软件模块,分别用于实现上述方法实施例中相应功能。例如,第一装置和第二装置可以部署在一台服务器上,第一装置可以为该服务器内部的视频处理模块或视频处理层,第二装置可以为该服务器内部的应用模块或应用层。第三装置可以部署在另一台服务器上。
在图6c所示的具体实施方式中,第三装置可以与第一装置在同一台计算设备上实现,第二装置可以在另一台计算设备上实现,此时,第一装置和第三装置可以为同一台计算设备内部的不同硬件或软件模块,分别用于实现上述方法实施例中相应功能。例如,第一装置和第三装置可以部署在一台服务器上,第一装置可以为该服务器内部的视频处理模块或视频处理层,第三装置可以为该服务器内部的预处理模块或预处理层。
在图6d所示的具体实施方式中,第一装置、第二装置和第三装置也可以为在同一台计算设备上实现的不同的硬件或软件模块,分别用于实现上述方法实施例中相应功能。例如,第一装置、第二装置和第三装置可以部署在同一台服务器上,第一装置可以为该服务器内部的视频处理模块或视频处理层,第二装置可以为该服务器内部的应用模块或应用层,第三装置可以为该服务器内部的预处理模块或预处理层。
本申请实施例中所提及的终端设备可以为多种类型,如台式计算机、笔记本电脑、云计算机等通过无线或有线的方式连接互联网的计算设备,也可以为手机、平板电脑等通过无线方式连接互连网的计算设备。示例性地,所述终端设备(也可以称为UE)可以为一种具有无线收发功能的设备,可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。终端可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端、增强现实(augmented reality,AR)终端、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。该终端设备可以用于但不限于5G、6G甚至7G的通信系统。
作为示例而非限定,本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备或智能穿戴式设备等,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能头盔、智能首饰等。
请参考图7a和图7b,为本申请实施例提供的一种应用场景的示意图。该应用场景展示了视频采集、视频传输、视频处理、生成并向终端设备提供个性化视频的全过程。示例性地,图中所示的虚线框中的部分可理解为本申请实施例提供的一种视频生成系统,该视频生成系统包括第一装置、第二装置和第三装置。
具体的,第一装置可包括视频内容管理层和视频内容分析层(video contentrecognition,VCR)层,第二装置可包括应用层,第三装置可包括收流服务器和前端处理模块。在图7a中,视频内容管理层、VCR层和应用层可以部署在同一计算设备上,收流服务器和前端处理模块可以部署在另一计算设备上。可选的,该视频生成系统中还可包括存储层和数据库。且存储层和/或数据库也可以与视频内容管理层、VCR层部署在相同的计算设备上。
在图7b中,视频内容管理层和VCR层可以部署在一台计算设备上,应用层可以部署在另一台计算设备上,收流服务器和前端处理模块可以部署在又一计算设备上,即第一装置、第二装置和第三装置分别部署在不同的计算设备上。可选的,该视频生成系统中还可包括存储层和数据库。且存储层和/或数据库也可以与视频内容管理层、VCR层部署在相同的计算设备上。
还应理解,图7a和图7b中所示的视频生成系统仅为本申请实施例提供的部分示例,收流服务器和前端处理模块也可以与视频内容管理层、VCR层部署在相同的计算设备上,本申请并不限定。
结合图7a和图7b,M台摄像机可采集M路视频流,采集到的M路视频流经过编码处理后,可通过无线通信网络实时上传到收流服务器,该收流服务器可以理解为云端用于存储流媒体文件的存储服务器。收流服务器与前端处理模块相连接,前端处理模块可从收流服务器获取M路视频流,并按照一固定间隔(例如,30分钟)将M路视频流切割为N个视频文件,并存储该N个视频文件。前端处理模块还可对切割得到的视频文件进行编号,可选地,对每个视频文件添加场次、日期、机位编号、分割段落序号等信息。可以理解,根据拍摄场景的不同,在视频文件中添加的属性信息也可不同,本申请并不限定。
本申请实施例中所述的M台摄像机可以部署在不同的地理位置。例如,在马拉松比赛中,M台摄像机可部署在比赛路线上的不同地点,对参赛选手的比赛过程进行实时拍摄。
为实现视频的高清拍摄和实时上传,本申请实施例可采用无线商用用户接入设备(customer premise equipment,CPE),将编码后的M路视频流通过运营商网络上传到服务器端,进而在服务器通过实时消息协议(real-time messaging protocol,RTMP)方式将M路视频流推送至收流服务器。所述运营商网络在图7a和图7b中表现为第五代移动通信技术(5th generation,5G)5G基站与5G核心网,但应理解,本申请对运营商网络采用的通信技术不作限定,本领域技术人员可根据数据传输的需求,选择合适的运营商网络。
需要说明的是,前端处理模块得到N个视频文件后,可将N个视频文件保存至前端处理模块内部的存储设备中,也可以将N个视频文件保存至收流服务器,或者,也可以将N个视频文件保存至第一装置内部的存储层中,本申请并不限定。可选的,前端处理模块得到并保存N个视频文件后,可向应用层发送用于指示对M路视频流切割完毕并成功得到N个视频文件的指示信息,以及N个视频文件的存储地址。
进而,如图8中所示,首先,应用层可向视频内容管理层发送视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址,即N个视频文件的存储地址。
视频内容管理层从应用层接收视频内容处理请求后,向VCR层发送视频人脸识别请求,该视频人脸识别请求中包括N个视频文件的存储地址。
VCR层根据N个视频文件的存储地址,获取N个视频文件。若N个视频文件存储在存储层中,一种具体实施方式可以为,VCR层向存储层发送视频数据请求,由存储层向VCR层发送N个视频文件,或者VCR层也可以从存储层拉取N个视频文件。若N个视频文件存储在前端处理模块内部的存储设备中,一种具体实施方式可以为,VCR层向前端处理模块发送视频数据请求,并从前端处理模块接收N个视频文件。若N个视频文件存储在收流服务器中,一种具体实施方式可以为,VCR层向收流服务器发送视频数据请求,并从收流服务器接收N个视频文件。
VCR层可根据步骤S104中所述的方法,对N个视频文件中的每个视频文件进行人脸识别,得到N个视频文件中出现的一个或多个人物的元数据,并将得到的N个视频文件中出现的一个或多个人物的元数据存储至存储层中。需要说明的是,在VCR层对视频文件进行人脸识别的过程中,VCR层可将检测出的人脸图像的人脸特征与数据库中存储的人脸特征进行比对,以确定人脸图像的人物身份。此处所述的数据库即为上文中提及的人脸特征数据库,该人脸特征数据库的建立方法此处不再赘述。举例来说,在马拉松比赛的场景中,可能在M路视频流的视频文件中出现的人物可包括参赛选手、比赛的工作人员等,如此,可以在比赛开始前,采集参赛选手以及工作人员的正面免冠照片(即正面人脸图像)上传至存储层,由视频内容管理层向VCR层发送人脸特征提取请求,在人脸特征提取请求中携带参赛选手的照片在存储层中的存储地址。如此,VCR层可采用步骤S104中相同的方式,获取参赛选手的照片,识别参赛选手的照片中的人脸特征并存储到数据库中,从而建立该人脸特征数据库。
需要说明的是,为了提高视频文件的处理效率,本申请实施例中,VCR层可采用多进程对来自多路视频流的视频文件进行并行处理,从而提高个性视频文件的生成及响应效率,有效提升用户体验。
随后,VCR层还可将得到的N个视频文件中出现的一个或多个人物的元数据在存储层中的存储地址发送给视频内容管理层。可选的,VCR层还可将对N个视频文件的处理状态发送至视频内容管理层,所述处理状态可以为处理成功、处理失败或正在处理。
进一步地,视频内容管理层可将得到的N个视频文件中出现的一个或多个人物的元数据的存储地址发送给应用层。应用层接收该存储地址,根据该存储地址,从存储层获取该N个视频文件中出现的一个或多个人物的元数据。应用层可采用步骤S107中所述的方式生成一个或多个人物对应的个性化视频。例如,应用层可从终端设备接收针对第一人物的个性化视频请求,根据该个性化视频请求,将预先生成的第一人物的元数据发送给终端设备。或者,应用层也可以在从终端设备接收到针对第一人物的个性化视频请求后,根据第一人物的元数据,生成第一人物对应的个性化视频,并将生成的第一人物的个性化视频发送给终端设备。
本申请实施例提供一种视频生成装置,请参阅图9,为本申请实施例提供的一种视频生成装置的结构示意图,该视频生成装置900包括:收发模块910和处理模块920。该视频生成装置可用于实现上述任一方法实施例中涉及第一装置或第二装置的功能。例如,该视频生成装置可以是服务器或是服务器中包括的芯片。
当该视频生成装置作为第一装置,执行图1中所示的方法实施例时,收发模块910,用于接收视频内容处理请求,该视频内容处理请求中包括待处理的视频流的存储地址。处理模块920,用于根据视频流的存储地址获取N个视频文件,针对N个视频文件中的每个视频文件进行人脸识别,得到N个视频文件中出现的一个或多个人物的元数据,并保存得到的一个或多个人物的元数据。所述N个视频文件来自M路视频流,N、M均为正整数。所述人物的元数据用于生成针对该人物的视频,所述人物的元数据包括该人物在N个视频文件中出现的L个视频文件、以及该人物在L个视频文件中的每个视频文件中出现的区间,L为正整数。
在一种可能的设计中,处理模块920具体用于:对每个视频文件进行视频解码和抽帧;针对抽帧得到的每一帧图像,通过人脸检测模型检测图像中的人脸,该人脸检测模型采用特征提取网络、RPN网络和全连接层组成;提取检测出的人脸的人脸特征;将提取的人脸特征与数据库中存储的人脸特征进行比对,确定人脸图像的人物身份。
在一种可能的设计中,所述特征金字塔网络中的深层卷积层和全连接层中应用有奇异值分解SVD。
在一种可能的设计中,处理模块920还具体用于:检测出图像的人脸后,对得到的人脸图像进行校准,得到正面人脸图像;提取正面人脸图像中的人脸特征。
在一种可能的设计中,处理模块920还具体用于:对人脸图像进行人脸关键点检测,得到人脸图像中的五官关键点的坐标;通过仿射变换将五官关键点的坐标标定到预定义的人脸模板,得到校正后的正面人脸图像。
在一种可能的设计中,收发模块910还用于:接收M路视频流,将M路视频流按照预设时长切割成N个视频文件,并存储N个视频文件。
在一种可能的设计中,收发模块910还用于:将一个或多个人物的元数据的存储地址发送给应用层,以便应用层根据一个或多个人物的元数据生成视频。
当该视频生成装置作为第二装置,执行图1中所示的方法实施例时,收发模块910,用于发送视频内容处理请求,以及接收在N个视频文件中出现的一个或多个人物对应的元数据的存储地址。处理模块920,用于根据一个或多个人物对应的元数据的存储地址,获取一个或多个人物对应的元数据;其中,所述视频内容处理请求中包括待处理的视频流的存储地址,该视频流的存储地址中存储有N个视频文件,该N个视频文件来自M路视频流,N、M均为正整数;所述人物的元数据用于生成针对该人物的视频,所述人物的元数据包括该人物在N个视频文件中出现的L个视频文件、以及该人物在L个视频文件中的每个视频文件中出现的区间,L为正整数。
在一种可能的设计中,处理模块920还用于:根据N个视频文件中出现的一个或多个人物对应的元数据,得到一个或多个人物中的每个人物在N个视频文件中出现的视频片段;针对一个或多个人物中的每个人物,将该人物出现的各个视频片段按照预设规则组织成个性化视频。
在一种可能的设计中,收发模块910还用于:接收终端设备发送的针对第一人物的个性化视频请求,所述第一人物为N个视频文件中出现的一个或多个人物中的人物之一。
处理模块920还用于:获取第一人物的个性化视频,并通过收发模块910将第一人物的个性化视频发送给终端设备。
在一种可能的设计中,收发模块910还用于:接收终端设备发送的针对第一人物的个性化视频请求,该第一人物为N个视频文件中出现的一个或多个人物中的人物之一。
处理模块920还用于:根据第一人物对应的元数据,得到第一人物在N个视频文件中出现的视频片段;将第一人物在N个视频文件中出现的视频片段,按照预设规则组织成第一人物对应的个性化视频;将第一人物对应的个性化视频通过收发模块910发送给终端设备。
该视频生成装置中涉及的处理模块920可以由处理器或处理器相关电路组件实现,收发模块910可以由收发器或收发器相关电路组件实现。该视频生成装置中的各个模块的操作和/或功能分别为了实现图1中所示方法的相应流程,为了简洁,在此不再赘述。
请参考图10,为本申请实施例中提供的一种视频生成装置的另一结构示意图。该视频生成装置包括至少一个处理器1002和至少一个通信接口1004。进一步地,该视频生成装置中还可以包括存储器1006,所述存储器1006用于存储计算机程序或指令。所述存储器1006既可以是处理器内的存储器,也可以是处理器之外的存储器。在图9中所描述的各单元模块为通过软件实现的情况下,所述处理模块920执行相应动作所需的软件或程序代码存储在存储器1006中。所述处理器1002用于执行存储器1006中的程序或指令,以实现上述实施例中第一路由设备或第二路由设备或第三路由设备的处理步骤。通信接口2004用于实现该装置与其他装置之间的通信。
在存储器1006置于处理器之外的情况下,所述存储器1006、处理器1002和通信接口1004通过总线1008相互连接,所述总线2008可以是外设部件互连标准(peripheralcomponent interconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。应理解,总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要说明的是,本申请实施例提供的视频生成装置1000可对应于执行本申请提供的方法实施例中的第一装置、第二装置或第三装置,并且该装置1000中的各个模块的操作和/或功能分别为了实现图1中所示方法的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(systemon chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机可读存储介质,所述计算机存储介质中存储有计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行上述任一方法实施例中的方法。
本申请实施例还提供一种计算机程序产品,当计算机读取并执行所述计算机程序产品时,使得计算机执行上述任一方法实施例中的方法。
本申请实施例还提供一种视频生成系统,该视频生成系统包括第一装置、第二装置和第三装置中的一项或多项。
应理解,本申请实施例中提及的处理器可以是中央处理单元(centralprocessing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double datarate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (25)
1.一种视频生成方法,其特征在于,所述方法包括:
接收视频内容处理请求,所述视频内容处理请求中包括待处理的视频流的存储地址;
根据所述视频流的存储地址获取N个视频文件,所述N个视频文件来自M路视频流,所述N、M均为正整数;
针对所述N个视频文件中的每个视频文件进行人脸识别,得到所述N个视频文件中出现的一个或多个人物的元数据,所述人物的元数据用于生成针对所述人物的视频,所述人物的元数据包括所述人物在所述N个视频文件中出现的L个视频文件、以及所述人物在所述L个视频文件中的每个视频文件中出现的区间,所述L为正整数;
保存得到的所述一个或多个人物的元数据。
2.根据权利要求1所述的方法,其特征在于,所述针对所述N个视频文件中的每个视频文件进行人脸识别,包括:
对所述每个视频文件进行视频解码和抽帧;
针对抽帧得到的每一帧图像,通过人脸检测模型检测所述图像中的人脸,所述人脸检测模型采用特征提取网络、RPN网络和全连接层组成;
提取检测出的人脸的人脸特征;
将所述提取的人脸特征与数据库中存储的人脸特征进行比对,确定所述人脸图像的人物身份。
3.根据权利要求2所述的方法,其特征在于,所述特征金字塔网络中的深层卷积层和全连接层中有应用奇异值分解SVD。
4.根据权利要求2所述的方法,其特征在于,所述提取检测出的人脸的人脸特征,包括:
检测出所述图像的人脸后,对得到的人脸图像进行校准,得到正面人脸图像;
提取所述正面人脸图像中的人脸特征。
5.根据权利要求4所述的方法,其特征在于,所述对得到的人脸图像进行校准,包括:
对所述人脸图像进行人脸关键点检测,得到所述人脸图像中的五官关键点的坐标;
通过仿射变换将所述五官关键点的坐标标定到预定义的人脸模板,得到校正后的正面人脸图像。
6.根据权利要求1至5中任一项所述的方法,其特征在于,在接收视频内容处理请求之前,所述方法还包括:
接收所述M路视频流,将所述M路视频流按照预设时长切割成所述N个视频文件,并存储所述N个视频文件。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
将所述一个或多个人物的元数据的存储地址发送给应用层,以便所述应用层根据所述一个或多个人物的元数据生成视频。
8.一种视频生成方法,其特征在于,所述方法包括:
发送视频内容处理请求,所述视频内容处理请求中包括待处理的视频流的存储地址,所述视频流的存储地址中存储有N个视频文件,所述N个视频文件来自M路视频流,所述N、M均为正整数;
接收在所述N个视频文件中出现的一个或多个人物对应的元数据的存储地址,根据所述一个或多个人物对应的元数据的存储地址,获取所述一个或多个人物对应的元数据,所述人物的元数据用于生成针对所述人物的视频,所述人物的元数据包括所述人物在所述N个视频文件中出现的L个视频文件、以及所述人物在所述L个视频文件中的每个视频文件中出现的区间,所述L为正整数。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
根据所述N个视频文件中出现的一个或多个人物对应的元数据,得到所述一个或多个人物中的每个人物在所述N个视频文件中出现的视频片段;
针对所述一个或多个人物中的每个人物,将所述人物出现的各个视频片段按照预设规则组织成个性化视频。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
接收终端设备发送的针对第一人物的个性化视频请求,所述第一人物为所述N个视频文件中出现的一个或多个人物中的人物之一;
获取所述第一人物的个性化视频并将所述第一人物的个性化视频发送给所述终端设备。
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:
接收终端设备发送的针对第一人物的个性化视频请求,所述第一人物为所述N个视频文件中出现的一个或多个人物中的人物之一;
根据所述第一人物对应的元数据,得到所述第一人物在所述N个视频文件中出现的视频片段;
将所述第一人物在所述N个视频文件中出现的视频片段,按照预设规则组织成所述第一人物对应的个性化视频;
将所述第一人物对应的个性化视频发送给所述终端设备。
12.一种视频生成装置,其特征在于,所述装置包括:
收发模块,用于接收视频内容处理请求,所述视频内容处理请求中包括待处理的视频流的存储地址;
处理模块,用于根据所述视频流的存储地址获取N个视频文件,所述N个视频文件来自M路视频流,所述N、M均为正整数;
所述处理模块,还用于针对所述N个视频文件中的每个视频文件进行人脸识别,得到所述N个视频文件中出现的一个或多个人物的元数据,所述人物的元数据用于生成针对所述人物的视频,所述人物的元数据包括所述人物在所述N个视频文件中出现的L个视频文件、以及所述人物在所述L个视频文件中的每个视频文件中出现的区间,所述L为正整数;
所述处理模块,还用于保存得到的所述一个或多个人物的元数据。
13.根据权利要求12所述的装置,其特征在于,所述处理模块具体用于:
对所述每个视频文件进行视频解码和抽帧;
针对抽帧得到的每一帧图像,通过人脸检测模型检测所述图像中的人脸,所述人脸检测模型采用特征提取网络、RPN网络和全连接层组成;
提取检测出的人脸的人脸特征;
将所述提取的人脸特征与数据库中存储的人脸特征进行比对,确定所述人脸图像的人物身份。
14.根据权利要求12所述的装置,其特征在于,所述特征金字塔网络中的深层卷积层和全连接层中应用有奇异值分解SVD。
15.根据权利要求13所述的装置,其特征在于,所述处理模块还具体用于:
检测出所述图像的人脸后,对得到的人脸图像进行校准,得到正面人脸图像;
提取所述正面人脸图像中的人脸特征。
16.根据权利要求15所述的装置,其特征在于,所述处理模块还具体用于:
对所述人脸图像进行人脸关键点检测,得到所述人脸图像中的五官关键点的坐标;
通过仿射变换将所述五官关键点的坐标标定到预定义的人脸模板,得到校正后的正面人脸图像。
17.根据权利要求12至16中任一项所述的装置,其特征在于,所述收发模块还用于:
接收所述M路视频流,将所述M路视频流按照预设时长切割成所述N个视频文件,并存储所述N个视频文件。
18.根据权利要求12至17中任一项所述的装置,其特征在于,所述收发模块还用于:
将所述一个或多个人物的元数据的存储地址发送给应用层,以便所述应用层根据所述一个或多个人物的元数据生成视频。
19.一种视频生成装置,其特征在于,所述装置包括:
收发模块,用于发送视频内容处理请求,所述视频内容处理请求中包括待处理的视频流的存储地址,所述视频流的存储地址中存储有N个视频文件,所述N个视频文件来自M路视频流,所述N、M均为正整数;
所述收发模块,还用于接收在所述N个视频文件中出现的一个或多个人物对应的元数据的存储地址,所述人物的元数据用于生成针对所述人物的视频,所述人物的元数据包括所述人物在所述N个视频文件中出现的L个视频文件、以及所述人物在所述L个视频文件中的每个视频文件中出现的区间,所述L为正整数;
处理模块,用于根据所述一个或多个人物对应的元数据的存储地址,获取所述一个或多个人物对应的元数据。
20.根据权利要求19所述的装置,其特征在于,所述处理模块还用于:
根据所述N个视频文件中出现的一个或多个人物对应的元数据,得到所述一个或多个人物中的每个人物在所述N个视频文件中出现的视频片段;
针对所述一个或多个人物中的每个人物,将所述人物出现的各个视频片段按照预设规则组织成个性化视频。
21.根据权利要求20所述的装置,其特征在于,所述收发模块还用于:
接收终端设备发送的针对第一人物的个性化视频请求,所述第一人物为所述N个视频文件中出现的一个或多个人物中的人物之一;
所述处理模块,还用于获取所述第一人物的个性化视频,并通过所述收发模块将所述第一人物的个性化视频发送给所述终端设备。
22.根据权利要求19所述的装置,其特征在于,所述收发模块还用于:
接收终端设备发送的针对第一人物的个性化视频请求,所述第一人物为所述N个视频文件中出现的一个或多个人物中的人物之一;
所述处理模块还用于:
根据所述第一人物对应的元数据,得到所述第一人物在所述N个视频文件中出现的视频片段;
将所述第一人物在所述N个视频文件中出现的视频片段,按照预设规则组织成所述第一人物对应的个性化视频;
将所述第一人物对应的个性化视频通过所述收发模块发送给所述终端设备。
23.一种视频生成装置,其特征在于,所述装置包括至少一个处理器,所述至少一个处理器与至少一个存储器耦合:
所述至少一个处理器,用于执行所述至少一个存储器中存储的计算机程序或指令,以使得所述装置执行如权利要求1至7中任一项所述的方法,或者使得所述装置执行如权利要求8至11中任一项所述的方法。
24.一种可读存储介质,其特征在于,用于存储指令,当所述指令被执行时,使如权利要求1至7中任一项所述的方法被实现,或者使如权利要求8至11中任一项所述的方法被实现。
25.一种视频生成装置,其特征在于,包括处理器和接口电路;
所述接口电路,用于接收代码指令并传输至所述处理器;
所述处理器用于运行所述代码指令以执行如权利要求1至7中任一项所述的方法,或者所述处理器用于运行所述代码指令以执行如权利要求8至11中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910867105 | 2019-09-12 | ||
CN201910867105X | 2019-09-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112487858A true CN112487858A (zh) | 2021-03-12 |
Family
ID=74920666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911167812.4A Pending CN112487858A (zh) | 2019-09-12 | 2019-11-25 | 一种视频生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112487858A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863321A (zh) * | 2022-04-08 | 2022-08-05 | 北京凯利时科技有限公司 | 自动视频生成方法、装置及电子设备和芯片系统 |
-
2019
- 2019-11-25 CN CN201911167812.4A patent/CN112487858A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114863321A (zh) * | 2022-04-08 | 2022-08-05 | 北京凯利时科技有限公司 | 自动视频生成方法、装置及电子设备和芯片系统 |
CN114863321B (zh) * | 2022-04-08 | 2024-03-08 | 北京凯利时科技有限公司 | 自动视频生成方法、装置及电子设备和芯片系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108875523B (zh) | 人体关节点检测方法、装置、系统和存储介质 | |
CN107808111B (zh) | 用于行人检测和姿态估计的方法和装置 | |
CN108401112B (zh) | 图像处理方法、装置、终端及存储介质 | |
CN111787242B (zh) | 用于虚拟试衣的方法和装置 | |
US20180260479A1 (en) | Method, apparatus, system and electronic device for picture book recognition | |
JP2017531950A (ja) | 撮影テンプレートデータベースを構築し、且つ撮影推薦情報を提供するための方法及び装置 | |
CN110889379B (zh) | 表情包生成方法、装置及终端设备 | |
CN107959798B (zh) | 视频数据实时处理方法及装置、计算设备 | |
CN113542777A (zh) | 直播视频剪辑方法、装置及计算机设备 | |
CN107563357B (zh) | 基于场景分割的直播服饰装扮推荐方法、装置及计算设备 | |
CN107424117B (zh) | 图像美颜方法、装置、计算机可读存储介质和计算机设备 | |
CN111008935A (zh) | 一种人脸图像增强方法、装置、系统及存储介质 | |
CN112308977B (zh) | 视频处理方法、视频处理装置和存储介质 | |
EP4296947A1 (en) | Calibration information determination method and apparatus, and electronic device | |
US9117275B2 (en) | Content processing device, integrated circuit, method, and program | |
CN111967397A (zh) | 人脸影像处理方法和装置、存储介质和电子设备 | |
JP2022549661A (ja) | 画像処理方法、装置、機器、記憶媒体およびコンピュータプログラム | |
CN114694136A (zh) | 一种物品展示方法、装置、设备及介质 | |
CN112016548B (zh) | 一种封面图展示方法及相关装置 | |
CN112487858A (zh) | 一种视频生成方法及装置 | |
CN112381749A (zh) | 一种图像处理方法、图像处理装置和电子设备 | |
CN115115552B (zh) | 图像矫正模型训练及图像矫正方法、装置和计算机设备 | |
CN108010038B (zh) | 基于自适应阈值分割的直播服饰装扮方法及装置 | |
CN112106347A (zh) | 一种图像生成方法、设备、可移动平台及存储介质 | |
CN115984977A (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 |