CN112862828B - 一种语义分割方法、模型训练方法及装置 - Google Patents
一种语义分割方法、模型训练方法及装置 Download PDFInfo
- Publication number
- CN112862828B CN112862828B CN201911177265.8A CN201911177265A CN112862828B CN 112862828 B CN112862828 B CN 112862828B CN 201911177265 A CN201911177265 A CN 201911177265A CN 112862828 B CN112862828 B CN 112862828B
- Authority
- CN
- China
- Prior art keywords
- feature map
- frame
- model
- network layer
- video frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种语义分割方法、模型训练方法及装置,应用于人工智能领域,用于提高对视频帧的分割结果的稳定性。语义分割方法包括:获取第一视频帧序列中的第一视频帧和第二视频帧,分别将第一视频帧和第二视频帧输入图像分割模型,图像分割模型用于对输入的图像进行语义分割,图像分割模型的中间网络层为多层网络层中输出的特征图的分辨率最小的一层网络层;获取第一图像分割网络层输出的第一视频帧的第一特征图;获取第二图像分割网络层输出的第二视频帧的第二特征图;将第一特征图和第二特征图输入第一帧间融合模型,生成第二视频帧的语义分割图像。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种语义分割方法、模型训练方法及装置。
背景技术
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。
语义分割是计算机视觉中的基本任务,在语义分割中我们需要将视觉输入分为不同的语义可解释类别,语义的可解释性即分类类别在真实世界中是有意义的。与图像分类或目标检测相比,图像语义分割使我们对图像有更加细致的了解。这种了解在诸如自动驾驶、机器人以及图像搜索引擎等许多领域都是非常重要的。
随着深度学习的发展,对图像的语义分割任务取得了很大的突破,然而对视频的语义分割仍然是一个十分具有挑战性的任务。视频记录的场景中物体的位置和/或姿态变化,会导致对视频的分割结果不稳定性,比如一个物体在前序的视频帧中属于类别A,而在后序的视频帧中属于类别B。但是,针对如何提高对视频的分割结果的稳定性,目前并没有太多解决方案。
发明内容
本申请实施例提供了一种语义分割方法、模型训练方法及装置,用于提高对视频帧的分割结果的稳定性。
本申请第一方面提供一种对视频帧的语义分割方法,包括:获取第一视频帧序列中的第一视频帧和第二视频帧,所述第一视频帧与所述第二视频帧不同;分别将所述第一视频帧和所述第二视频帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层; 获取第一图像分割网络层输出的所述第一视频帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;获取第二图像分割网络层输出的所述第二视频帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,所述第一帧间融合模型是一种神经网络模型。
第一视频帧的第一特征图能够为第二视频帧提供其时序信息,和第一图像分割网络层输出的特征图相比,第二图像分割网络层输出的第二视频帧的第二特征图能够更大程度的提供第二视频帧的空间信息,获取第一特征图和第二特征图后,根据第一特征图和第二特征图生成第二视频帧的语义分割图像,有利于在保持单个视频帧的分割精度的前提下,利用时序信息提高对第二视频帧进行语义分割的稳定性。
在一种可能的实现方式中,所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:将所述第一特征图输入第一邻帧预测模型,所述第一邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第一邻帧预测模型是一种所述卷积神经网络模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第一邻帧预测模型为基于带有标注信息的第一样本集训练得到的,第一样本为所述第一样本集中的任意一个样本,所述第一样本为所述第一图像分割网络层输出的第三视频帧的特征图,所述第一样本的标注信息为所述第一图像分割网络层输出的第四视频帧的特征图,所述第三视频帧和所述第四视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第三视频帧在所述第四视频帧的所述第一时序方向。
在一种可能的实现方式中,将所述第二视频帧输入所述图像分割模型之后,所述方法还包括:获取所述第一图像分割网络层输出的所述第二视频帧的第三特征图;所述将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像,包括:将所述第三特征图输入第二邻帧预测模型,所述第二邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第二邻帧预测模型是一种所述卷积神经网络模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为所述第二样本集中的任意一个样本,所述第二样本为所述第一图像分割网络层输出的第五视频帧的特征图,所述第二样本的标注信息为所述第一图像分割网络层输出的第六视频帧的特征图,所述第五视频帧和所述第六视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第六视频帧在所述第五视频帧的所述第一时序方向。
在一种可能的实现方式中,所述第二帧间融合模型为基于带有标注信息的第三样本集训练得到的,第三样本为所述第三样本集中的任意一个样本,所述第三样本包括所述第一邻帧预测网络层输出的第四特征图的压缩特征图、所述第二邻帧预测网络层输出的第五特征图的压缩特征图和所述第二图像分割网络层输出的第八视频帧的第六特征图,所述第四特征图为所述第一图像分割网络层输出的第七视频帧的特征图,所述第五特征图为所述第一图像分割网络层输出的所述第八视频帧的特征图,所述第七视频帧和所述第八视频帧为同一视频帧序列中的不同视频帧,所述第三样本的标注信息为所述第八视频帧的标注语义分割图像。
在一种可能的实现方式中,将所述第一视频帧输入所述图像分割模型之后,所述方法还包括:获取所述第一图像分割网络层输出的所述第一视频帧的第四特征图;所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:将所述第一特征图、所述第二特征图和所述第四特征图输入所述第一帧间融合模型,生成所述第二视频帧的语义分割图像。
本申请第二方面提供一种模型训练方法,包括:获取同一视频帧序列中的第一帧和第二帧、以及所述第二帧的语义分割图像;分别将所述第一帧和所述第二帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;获取第一图像分割网络层输出的所述第一帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;获取第二图像分割网络层输出的所述第二帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,所述第一帧间融合模型是一种神经网络模型。
在一种可能的实现方式中,在将所述第二帧输入图像分割模型之后,所述方法还包括:获取所述第一图像分割网络层输出的所述第二帧的第三特征图;所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,包括:将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数。
在一种可能的实现方式中,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,包括:以所述第三特征图为标注信息,将所述第一特征图输入第一邻帧预测模型,更新所述第一邻帧预测模型的参数。
在一种可能的实现方式中,所述第一邻帧预测模型是一种所述卷积神经网络模型;基于所述第一邻帧预测模型满足第一约束条件,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:将所述第一特征图输入所述第一邻帧预测模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,更新所述第二帧间融合模型的参数。
在一种可能的实现方式中,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:以所述第一特征图为标注信息,将所述第三特征图输入第二邻帧预测模型,更新所述第二邻帧预测模型的参数。
在一种可能的实现方式中,所述第二邻帧预测模型是一种所述卷积神经网络模型;基于所述第二邻帧预测模型满足第二约束条件,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:将所述第三特征图输入所述第二邻帧预测模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,更新所述第二帧间融合模型的参数。
本申请第三方面提供一种语义分割装置,包括:视频帧获取模块,用于获取第一视频帧序列中的第一视频帧和第二视频帧,所述第一视频帧与所述第二视频帧不同;特征图获取模块,用于分别将所述第一视频帧和所述第二视频帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;所述特征图获取模块,还用于获取第一图像分割网络层输出的所述第一视频帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;所述特征图获取模块,还用于获取第二图像分割网络层输出的所述第二视频帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;融合模块,用于将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,所述第一帧间融合模型是一种神经网络模型。
在一种可能的实现方式中,所述融合模块用于:将所述第一特征图输入第一邻帧预测模型,所述第一邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第一邻帧预测模型是一种所述卷积神经网络模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第一邻帧预测模型为基于带有标注信息的第一样本集训练得到的,第一样本为所述第一样本集中的任意一个样本,所述第一样本为所述第一图像分割网络层输出的第三视频帧的特征图,所述第一样本的标注信息为所述第一图像分割网络层输出的第四视频帧的特征图,所述第三视频帧和所述第四视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第三视频帧在所述第四视频帧的所述第一时序方向。
在一种可能的实现方式中,所述特征图获取模块还用于:在将所述第二视频帧输入图像分割模型之后,获取所述第一图像分割网络层输出的所述第二视频帧的第三特征图;所述融合模块还用于:将所述第三特征图输入第二邻帧预测模型,所述第二邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第二邻帧预测模型是一种所述卷积神经网络模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为所述第二样本集中的任意一个样本,所述第二样本为所述第一图像分割网络层输出的第五视频帧的特征图,所述第二样本的标注信息为所述第一图像分割网络层输出的第六视频帧的特征图,所述第五视频帧和所述第六视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第六视频帧在所述第五视频帧的所述第一时序方向。
在一种可能的实现方式中,所述第二帧间融合模型为基于带有标注信息的第三样本集训练得到的,第三样本为所述第三样本集中的任意一个样本,所述第三样本包括所述第一邻帧预测网络层输出的第四特征图的压缩特征图、所述第二邻帧预测网络层输出的第五特征图的压缩特征图和所述第二图像分割网络层输出的第八视频帧的第六特征图,所述第四特征图为所述第一图像分割网络层输出的第七视频帧的特征图,所述第五特征图为所述第一图像分割网络层输出的所述第八视频帧的特征图,所述第七视频帧和所述第八视频帧为同一视频帧序列中的不同视频帧,所述第三样本的标注信息为所述第八视频帧的标注语义分割图像。
在一种可能的实现方式中,所述特征图获取模块在将所述第一视频帧输入所述图像分割模型之后,还用于:获取所述第一图像分割网络层输出的所述第一视频帧的第四特征图;所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:将所述第一特征图、所述第二特征图和所述第四特征图输入所述第一帧间融合模型,生成所述第二视频帧的语义分割图像。
本申请第四方面提供一种模型训练装置,包括:样本获取模块,用于获取同一视频帧序列中的第一帧和第二帧、以及所述第二帧的语义分割图像;特征图获取模块,用于分别将所述第一帧和所述第二帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层; 所述特征图获取模块,还用于获取第一图像分割网络层输出的所述第一帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;所述特征图获取模块,还用于获取第二图像分割网络层输出的所述第二帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;训练模块,用于以所述第二帧的语义分割图像作为标注信息,将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,所述第一帧间融合模型是一种神经网络模型。
在一种可能的实现方式中,所述特征图获取模块在将所述第二帧输入图像分割模型之后,还用于:获取所述第一图像分割网络层输出的所述第二帧的第三特征图;所述训练模块用于:将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数。
在一种可能的实现方式中,所述训练模块用于:以所述第三特征图为标注信息,将所述第一特征图输入第一邻帧预测模型,更新所述第一邻帧预测模型的参数。
在一种可能的实现方式中,所述第一邻帧预测模型是一种所述卷积神经网络模型;所述训练模块基于所述第一邻帧预测模型满足第一约束条件,还用于:将所述第一特征图输入所述第一邻帧预测模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,更新所述第二帧间融合模型的参数。
在一种可能的实现方式中,所述所述训练模块还用于:以所述第一特征图为标注信息,将所述第三特征图输入第二邻帧预测模型,更新所述第二邻帧预测模型的参数。
在一种可能的实现方式中,所述第二邻帧预测模型是一种所述卷积神经网络模型;所述训练模块基于所述第二邻帧预测模型满足第二约束条件,还用于:将所述第三特征图输入所述第二邻帧预测模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,更新所述第二帧间融合模型的参数。
本申请第五方面提供一种视频通话方法,包括:第一终端设备通过其图像采集模块采集第一本端视频帧;所述第一终端设备接收第二终端设备通过其图像采集模块采集的对端视频帧; 所述第一终端设备根据所述第一本端视频帧生成第二本端视频帧,所述第一本端视频帧的第一图像区域显示第一图像,所述第二本端视频帧的第二图像区域显示第二图像,所述第一图像和所述第二图像不同,所述第一本端视频帧的第三图像区域和所述第二本端视频帧的第四图像区域均显示第三图像;所述第一终端设备通过其显示屏同时显示所述对端视频帧和所述第二本端视频帧。
在一种可能的实现方式中,所述第一终端设备根据所述第一本端视频帧生成第二本端视频帧之后,所述方法还包括:所述第一终端设备将所述第二本端视频帧发送给所述第二终端设备。
在一种可能的实现方式中,所述第一终端设备根据所述第一本端视频帧生成第二本端视频帧,包括:所述第一终端设备根据用户的切换指令,根据所述第一本端视频帧生成第二本端视频帧,所述切换指令用于指示所述第一终端设备将所述第一本端视频帧中的所述第一图像切换为所述第二图像。
在一种可能的实现方式中,所述第一图像与所述第三图像对应的语义类型不同。
在一种可能的实现方式中,所述第一终端设备根据所述第一本端视频帧生成第二本端视频帧,包括:所述第一终端设备根据第一方面或第一方面的任一可能的实现方式所述的方法,根据所述第一本端视频帧和第三本端视频帧生成所述第二本端视频帧的语义分割图像,所述第三本端视频帧与所述第一本端视频帧为所述第一终端设备采集的同一视频帧序列中的不同视频帧;所述第一终端设备根据所述语义分割图像和所述第一本端视频帧生成第二本端视频帧。
本申请实施例第六方面提供一种视频通话装置,包括:图像采集模块,用于采集第一本端视频帧;通信模块,用于接收第二终端设备通过其图像采集模块采集的对端视频帧;背景切换模块,用于根据所述第一本端视频帧生成第二本端视频帧,所述第一本端视频帧的第一图像区域显示第一图像,所述第二本端视频帧的第二图像区域显示第二图像,所述第一图像和所述第二图像不同,所述第一本端视频帧的第三图像区域和所述第二本端视频帧的第四图像区域均显示第三图像;显示模块用于所述第一终端设备通过其显示屏同时显示所述对端视频帧和所述第二本端视频帧。
在一种可能的实现方式中,所述背景切换模块根据所述第一本端视频帧生成第二本端视频帧之后,所述通信模块还用于将所述第二本端视频帧发送给所述第二终端设备。
在一种可能的实现方式中,所述背景切换模块用于:所述第一终端设备根据用户的切换指令,根据所述第一本端视频帧生成第二本端视频帧,所述切换指令用于指示所述第一终端设备将所述第一本端视频帧中的所述第一图像切换为所述第二图像。
在一种可能的实现方式中,所述第一图像与所述第三图像对应的语义类型不同。
在一种可能的实现方式中,所述背景切换模块用于,根据第一方面或第一方面的任一可能的实现方式所述的方法,根据所述第一本端视频帧和第三本端视频帧生成所述第二本端视频帧的语义分割图像,所述第三本端视频帧与所述第一本端视频帧为所述第一终端设备采集的同一视频帧序列中的不同视频帧;根据所述语义分割图像和所述第一本端视频帧生成第二本端视频帧。
本申请实施例第七方面提供一种计算机设备,包括处理器和存储器,所述处理器在运行所述存储器存储的计算机指令时,执行如第一方面或第二方面或第五方面任一可能的实现方式所述的方法。
本申请实施例第八方面提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如第一方面或第二方面或第五方面任一可能的实现方式所述的方法。
本申请实施例第九方面提供一种计算机程序产品,包括指令,当所述指令在计算机上运行时,使得计算机执行如第一方面或第二方面或第五方面任一可能的实现方式所述的方法。
本申请实施例第十方面提供一种计算机系统,包括终端设备和服务器,所述终端设备用于将采集的视频发送给所述服务器,所述服务器用于执行本申请实施例第一方面提供的语义分割方法,并将生成的语义分割结果返回给所述终端设备。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种人工智能主体框架示意图;
图2A为本申请实施例提供的一种应用环境示意图;
图2B为本申请实施例提供的一种端云系统的结构示意图;
图3A为本申请实施例提供的一种语义分割方法一个实施例示意图;
图3B为图3A对应的实施例中步骤305的一种细化步骤示意图;
图3C为图3A对应的实施例中步骤305的另一种细化步骤示意图;
图4A为本申请实施例提供的一种卷积神经网络结构示意图;
图4B为本申请实施例提供的另一种卷积神经网络结构示意图;
图5A为本申请实施例提供的模型训练方法一个实施例示意图;
图5B为图5A提供的方法实施例中步骤505的一个细化步骤示意图;
图5C为图5A提供的方法实施例中步骤505的另一个细化步骤示意图;
图6为本申请实施例提供的视频通话方法一个实施例示意图;
图7A-图7D为本申请实施例提供的视频通话方法的一种应用场景示意图;
图8A-图8C为本申请实施例提供的语义分割方法的一种应用场景示意图;
图9为本申请实施例提供的一种神经网络处理器的结构示意图;
图10为本申请实施例提供的语义分割装置一个实施例示意图;
图11为本申请实施例提供的模型训练装置一个实施例示意图;
图12为本申请实施例提供的视频通话装置一个实施例示意图;
图13为本申请计算机设备一个实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出一种人工智能主体框架示意图,该主体框架描述了人工智能系统总体工作流程,适用于通用的人工智能领域需求。
下面从“智能信息链”(水平轴)和“IT 价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。
“智能信息链”反映从数据的获取到处理的一系列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。
“IT 价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施:
基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
(2)数据
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用
智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,平安城市,智能终端等。
语义分割是指,调用语义分割模型对图像或视频帧进行语义识别,根据识别结果对图像中各物体对象的类别进行分割预测。视频都是由静止的画面组成的,这些静止的画面被称为帧或视频帧。在调用语义分割模型对图像或视频帧进行语义分割时,语义分割模型可以对图像或视频帧中的各个像素进行语义识别,根据语义识别结果对图像或视频帧中的各个像素进行类别预测,生成语义分割图像。语义分割图像用于对视频帧中的各个像素点进行分类,实现视频帧的语义标注。或者说,语义分割图像包括经过语义识别分割出的一个或多个目标区域,同一目标区域对应于预测出的同一类别的像素,一般采用相同标识(例如颜色)对同一目标区域进行标注,不同目标区域对应于预测出的不同类别的像素,一般采用不同标识(例如颜色)对不同目标区域进行标注。需要说明的是,本申请实施例中不对分类单位进行限定,语义分类可以是逐像素分类,也可以是按图像块分类,一个图像块包括多个像素。
本申请实施例提供一种对视频帧的语义分割方法,该语义分割方法基于人工智能模型(称作语义分割模型),由图1中的基础设施提供计算能力支持,用于对输入的视频帧进行数据处理,生成对视频帧的语义分割结果,例如,得到视频帧的语义分割图像,实现诸如视频帧的背景虚化或背景替换、直播制作、电影或动画制作、对视频帧进行分区优化、对视频帧中的物体进行识别等功能,可以应用于智能终端、自动驾驶、智能医疗等领域。
下面对本申请实施例的语义分割方法的实施场景进行说明,图2A为本申请实施例提供的语义分割方法的实施场景的示意图,参见图2A,本发明实施例提供了一种系统架构200。
数据采集设备260用于采集视频帧序列并存入数据库230,训练设备220基于数据库230中维护的视频帧序列生成语义分割模型201。训练设备220得到的语义分割模型201可以应用不同的系统或设备中。在图2A中,执行设备210配置有I/O接口212,与外部设备进行数据交互,“用户”可以通过客户设备240向 I/O接口212输入数据。
执行设备210可以调用数据存储系统250中的数据、代码等,也可以将数据、指令等存入数据存储系统250中。计算模块211使用语义分割模型201对输入视频帧序列进行语义分割,得到语义分割图像序列。最后,I/O接口212将处理结果(即得到的语义分割图像序列)返回给客户设备240,提供给用户。
在图2A中所示情况下,用户可以手动指定输入执行设备210中的数据,例如,在I/O接口212提供的界面中操作。另一种情况下,客户设备240可以自动地向I/O接口212输入数据并获得结果,如果客户设备240自动输入数据需要获得用户的授权,用户可以在客户设备240中设置相应权限。用户可以在客户设备240查看执行设备210输出的结果,具体的呈现形式可以是显示、声音、动作等具体方式。
值得注意的,图2A仅是本发明实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图2A中,数据存储系统250相对执行设备210是外部存储器,在其它情况下,也可以将数据存储系统250置于执行设备210中。
在一种可能的实现方式中,执行设备210可以设置在服务器中。参见附图2B,本发明实施例提供了一种系统架构300。执行设备210由一个或多个服务器实现,可选的,与其它计算设备配合,例如:数据存储、路由器、负载均衡器等设备;执行设备210可以布置在一个物理站点上,或者分布在多个物理站点上。执行设备210可以使用数据存储系统250中的数据,或者调用数据存储系统250中的程序代码实现本申请实施例方法。
用户可以操作各自的客户设备(例如本地设备2401和本地设备2402)与执行设备210进行交互。每个本地设备可以表示任何计算设备,例如个人计算机、计算机工作站、智能手机、平板电脑、智能摄像头、智能汽车或其他类型蜂窝电话、媒体消费设备、可穿戴设备、机顶盒、游戏机等。
每个用户的本地设备可以通过任何通信机制/通信标准的通信网络与执行设备210 进行交互,通信网络可以是广域网、局域网、点对点连接等方式,或它们的任意组合。
在另一种实现中,执行设备210 的一个方面或多个方面可以由每个本地设备实现,例如,本地设备2401可以为执行设备210提供本地数据或反馈计算结果。
或者,在一种可能的实现方式中,客户设备240和执行设备210均可以设置在终端设备中。
以执行设备210设置在服务器中为例,客户设备240可以向执行设备210发送语义分割请求,该语义分割请求可以包括待进行语义分割的一段视频(或称视频帧序列)。执行设备210用于通过执行本申请实施例提供的语义分割方法,依次生成视频帧序列的语义分割图像序列,并将得到的语义分割图像序列返回给客户设备240。
执行设备210的所有功能也可以由本地设备实现。例如,本地设备2401实现执行设备210的的功能并为自己的用户提供服务,或者为本地设备2402的用户提供服务。
以客户设备240执行本申请实施例的语义分割方法为例,客户设备240可以获取待进行语义分割的视频帧序列,通过执行本申请实施例提供的语义分割方法,依次生成视频帧序列的语义分割图像序列。客户设备240可以基于得到语义分割图像序列执行相应的场景或领域的应用,例如智能终端、无人驾驶和医疗领域等。下面举例介绍智能终端领域的应用:
智能终端(比如手机)上可以设置有图像采集装置(比如摄像头)及处理芯片。用户在智能终端开启视频通话功能,在视频通话过程中或录像过程中,图像采集装置能够采集包括场景视频帧序列。
在一种具体的应用中,场景视频帧序列包括人像,处理芯片基于语义分割模型,对视频帧序列实时进行人像分割,得到语义分割图像序列。选取语义分割图像中人像对应的目标区域作为前景,其他区域作为背景,将视频帧序列中的背景替换为其他背景,从而实现时空变幻、背景切换的效果。
在另一种具体的应用中,处理芯片基于语义分割模型,对场景视频帧序列进行实时的语义分割,生成的语义分割图像序列可以为视频帧提供实时的语义掩模,之后可以对不同的目标区域分别进行优化。
在另一种具体的应用中,用户可以开启智能终端的多物体识物功能,处理芯片基于语义分割模型,对场景视频帧序列进行实时的语义分割,生成的语义分割图像包括多个目标区域。基于语义分割图像序列,智能终端可以识别各个目标区域对应的物体的类别,比如属于杯子或椅子等,给用户带来强劲的视觉体验。
本申请实施例提供的语义分割方法并不限于上述提到的场景或领域。
下面对本申请实施例提供的语义分割方法进行介绍,以该方法应用于计算机设备为例,该计算机设备中设置有执行设备210。该计算机设备可以是终端设备,或服务器,或,终端设备和服务器组成的系统。
以对某个视频(称作第一视频或第一视频帧序列)中的某个视频帧(称作第二视频帧)进行语义分割为例,介绍对第二视频帧的语义分割过程,第一视频帧序列包括多个连续的视频帧。参考图3A,本申请语义分割方法一个实施例可以包括如下步骤:
301、获取第一视频帧序列中的第一视频帧和第二视频帧;
第一视频帧序列可以是通过计算机设备的图像采集装置实时采集的视频,或者,可以是从网络上获取的视频。第一视频帧和第二视频帧为不同的视频帧,具体的,可以为第一视频帧序列中相邻的两个视频帧,或者,可以为第一视频帧序列中相隔一个或多个视频帧的两个视频帧。
302、分别将第一视频帧和第二视频帧输入图像分割模型;
303、获取第一图像分割网络层输出的第一视频帧的第一特征图;
304、获取第二图像分割网络层输出的第二视频帧的第二特征图;
获取第一视频帧序列中的第一视频帧和第二视频帧之后,可以分别将第一视频帧和第二视频帧输入预训练的图像分割模型。
该图像分割模型为对图像的语义分割模型,用于对输入的图像进行语义分割,输出该图像的语义分割图像。示例性的,可以基于多个带有标注信息的图像训练图像分割模型,图像的标注信息可以为该图像的标注的语义分割图像(简称标注语义分割图像)。
语义分割模型可以是一种卷积神经网络模型,语义分割模型可以包括输入层、多层网络层和输出层。语义分割模型的多层网络层中的每层网络层用于对输入的图像或特征图进行特征提取,输出特征图。一般的语义分割模型的多层网络层可以被认为是一个编码器-解码器结构,也就是说,多层网络层中靠近输入层的网络层相当于编码器,可以对输入的视频帧或特征图进行下采样,使得输出的特征图的分辨率小于输入的视频帧或特征图的分辨率;多层网络层中靠近输出层的网络层相当于解码器,可以对输入的特征图进行上采样,使得输出的特征图的分辨率大于输入的视频帧的分辨率。在本申请实施例中,将多层网络层中输出的特征图的分辨率最小的网络层称作中间网络层。对于处理图像信息的神经网络模型来说,其中间网络层和位于其输入层与中间网络层之间的网络层用于对输入的图像或特征图进行下采样,中间网络层与输出层之间的网络层用于对输入的特征图进行上采样;对于图像的语义分割模型来说,中间网络层和位于其输入层与中间网络层之间的网络层还可以提取图像中的语义特征,但是会丢失图像的空间信息,因此,可以认为中间网络层输出的特征图能够提供输入图像最多的语义特征;中间网络层与输出层之间的网络层还可以在输出的特征图中丢失的空间信息,因此,可以认为越靠近输出层的网络层,其输出的特征图能够提供最多的空间信息。
将第一视频帧输入图像分割模型后,图像分割模型可以对第一视频帧进行处理,输出第一视频帧的语义分割图像。具体的,图像分割模型的输入层可以对第一视频帧进行预处理,例如对视频帧进行标准化,视频帧的红色绿色蓝色RGB分量被映射成符合正态分布。图像分割模型的第一层网络层可以提取第一视频帧的特征,输出特征图;图像分割模型的第二层网络层可以对第一层网络层输出的特征图进行特征提取,输出特征图;依次类推,图像分割模型的最后一层(或称底层)网络层可以对前一层网络层输出的特征图进行特征提取,输出特征图;图像分割模型的输出层可以对底层网络层输出的特征图进行处理,输出第一视频帧的语义分割图像。计算机设备可以在将第一视频帧输入图像分割模型后,获取某一网络层(称作第一图像分割网络层)输出的特征图(称作第一特征图),为了根据尽量多的语义特征提取时序信息,在一种可能的实现方式中,第一图像分割网络层可以为图像分割模型的中间网络层或位于图像分割模型的输入层和中间网络层之间的任意一层网络层。
将第二视频帧输入图像分割模型后,图像分割模型可以对第二视频帧进行处理,输出第二视频帧的语义分割图像。具体过程可以参考上述对第一视频帧的处理过程。计算机设备可以在将第二视频帧输入图像分割模型后,获取某一网络层(称作第二图像分割网络层)输出的特征图(称作第二特征图),为了使得第二特征图提供第二视频帧尽量多的空间信息,在一种可能的实现方式中,第二图像分割网络层可以为图像分割模型的中间网络层和输出层之间的任意一层网络层。
在本申请实施例中,不限定获取步骤303和步骤304的先后执行顺序。
305、将第一特征图和第二特征图输入第一帧间融合模型,生成第二视频帧的语义分割图像。
计算机设备可以将第一特征图和第二特征图输入第一帧间融合模型,生成第二视频帧的语义分割图像。第一帧间融合模型可以是一种训练好的神经网络模型,该第一帧间融合模型可以通过端到端的方式训练,或者,可以先对神经网络模型中的部分网络层进行训练,训练好之后,再对其他网络层进行训练。
第一视频帧的第一特征图能够为第二视频帧提供其时序信息,和第一图像分割网络层输出的特征图相比,第二图像分割网络层输出的第二视频帧的第二特征图能够更大程度的提供第二视频帧的空间信息,获取第一特征图和第二特征图后,根据第一特征图和第二特征图生成第二视频帧的语义分割图像,有利于在保持单个视频帧的分割精度的前提下,利用时序信息提高对第二视频帧进行语义分割的稳定性。
本申请实施例不限定图像分割模型的结构,在一种可能的实现方式中,图像分割模型可以为卷积神经网络(convolutional neuron network,CNN),CNN是一种带有卷积结构的深度神经网络,是一种深度学习(deep learning)架构,深度学习架构是指通过机器学习的算法,在不同的抽象层级上进行多个层次的学习。作为一种深度学习架构,CNN是一种前馈(feed-forward)人工神经网络,该前馈人工神经网络中的各个神经元对输入其中的图像中的重叠区域作出响应。
如图4A所示,卷积神经网络(CNN)400可以包括输入层410、多层网络层420和输出层430,其中,多层网络层420可以包括卷积层和隐含层,可选的还可以包括池化层。一般来说第一层是输入层410,最后一层是输出层430,中间的层数都是网络层420。
下面对网络层420进行介绍。
关于卷积层:
如图4A所示网络层420可以包括如示例421-426层,在一种实现中,421层为卷积层,422层为池化层,423层为卷积层,424层为池化层,425为卷积层,426为池化层;在另一种实现方式中,421、422为卷积层,423为池化层,424、425为卷积层,426为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
以卷积层421为例,卷积层421可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。该权重矩阵的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(depthdimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,权重矩阵会延伸到输入图像的整个深度。因此,和一个单一的权重矩阵进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一权重矩阵,而是应用维度相同的多个权重矩阵。每个权重矩阵的输出被堆叠起来形成卷积图像的纵深维度。不同的权重矩阵可以用来提取图像中不同的特征,例如一个权重矩阵用来提取图像边缘信息,另一个权重矩阵用来提取图像的特定颜色,又一个权重矩阵用来对图像中不需要的噪点进行模糊化……该多个权重矩阵维度相同,经过该多个维度相同的权重矩阵提取后的特征图(feature map)维度也相同,再将提取到的多个维度相同的特征图合并形成卷积运算的输出。
这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以从输入图像中提取信息,从而帮助卷积神经网络400进行正确的预测。
当卷积神经网络400有多个卷积层的时候,初始的卷积层(例如421)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络400深度的加深,越往后的卷积层(例如426)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。在一种可能的实现方式中,第一图像分割网络层可以为一层卷积层,例如最后一层卷积层。
池化层:
由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,即如图4A中420所示例的421-426各层,可以是一层卷积层后面跟一层池化层,也可以是多层卷积层后面接一层或多层池化层。在图像处理过程中,池化层的唯一目的就是减少图像的空间大小。池化层可以包括平均池化算子和/或最大池化算子,以用于对输入图像进行采样得到较小尺寸的图像。平均池化算子可以在特定范围内对图像中的像素值进行计算产生平均值。最大池化算子可以在特定范围内取该范围内值最大的像素作为最大池化的结果。另外,就像卷积层中用权重矩阵的大小应该与图像大小相关一样,池化层中的运算符也应该与图像的大小相关。通过池化层处理后输出的图像尺寸可以小于输入池化层的图像的尺寸,池化层输出的图像中每个像素点表示输入池化层的图像的对应子区域的平均值或最大值。在一种可能的实现方式中,第一图像分割网络层可以为一层池化层,例如最后一层池化层。
关于隐含层:
在经过卷积层和池化层的处理后,卷积神经网络400还不足以输出所需要的输出信息,例如语义分割图像。因为如前,卷积层和池化层只会提取特征,并减少输入图像带来的参数。然而为了生成最终的输出信息(所需要的类信息或别的相关信息),卷积神经网络400需要利用隐含层来生成一个或者一组所需要的类的数量的输出。因此,网络层可以包括多层隐含层(如图4A所示的427、428至429),该多层隐含层中所包含的参数可以根据具体的任务类型的相关训练数据进行预先训练得到,例如该任务类型可以包括图像识别,图像分类等。
在隐含层之后,也就是整个卷积神经网络400的最后层为输出层430,该输出层430具有类似分类交叉熵的损失函数,具体用于计算预测误差,一旦整个卷积神经网络400的前向传播(如图4A由410至430的传播为前向传播)完成,反向传播(如图4A由430至410的传播为反向传播)就会开始更新前面提到的各层的权重值以及偏差,以减少卷积神经网络400的损失及卷积神经网络400通过输出层输出的结果和理想结果之间的误差。在一种可能的实现方式中,图3A对应的实施例中的底层网络层可以指最后一层隐含层,或者指输出层之前的最后一层网络层。
需要说明的是,如图4A所示的卷积神经网络400仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在,例如,如图4B所示的多个卷积层或池化层并行,将分别提取的特征图均输入给隐含层进行处理。
在一种可能的实现方式中,第一图像分割网络层用于对输入的视频帧或特征图进行下采样,第二图像分割网络层用于对输入的特征图进行上采样。
为了降低计算机设备的中间变量存储压力,可以对用于提供时序信息的第一特征图进行下采样,在一种可能的实现方式中,参考图3B,步骤305可以具体包括如下步骤:
3051A、将第一特征图输入第一邻帧预测模型;
第一邻帧预测模型用于预测相邻视频帧的信息,相邻视频帧与输入第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列。
第一邻帧预测模型可以是一种卷积神经网络模型,第一邻帧预测模型可以包括输入层、多层网络层和输出层。第一邻帧预测模型的多层网络层中的每层网络层用于对输入的图像或特征图进行特征提取,输出特征图。第一邻帧预测模型的多层网络层可以被认为是一个编码器-解码器结构,也就是说,多层网络层中靠近输入层的网络层相当于编码器,可以对输入的视频帧或特征图进行下采样,使得输出的特征图的分辨率小于输入的视频帧或特征图的分辨率;多层网络层中靠近输出层的网络层相当于解码器,可以对输入的特征图进行上采样,使得输出的特征图的分辨率大于输入的视频帧的分辨率。在本申请实施例中,将多层网络层中输出的特征图的分辨率最小的网络层称作中间网络层。对于处理图像信息的神经网络模型来说,其中间网络层和位于其输入层与中间网络层之间的网络层用于对输入的图像或特征图进行下采样,中间网络层与输出层之间的网络层用于对输入的特征图进行上采样。
3052A、获取第一邻帧预测网络层输出的第一特征图的第一压缩特征图;
将第一视频帧输入第一邻帧预测模型后,可以获取第一邻帧预测网络层输出的第一特征图的第一压缩特征图。在一种可能的实现方式中,第一邻帧预测网络层可以为第一邻帧预测模型的中间网络层或位于第一邻帧预测模型的输入层和中间网络层之间的任意一层网络层。
3053A、将第一压缩特征图和第二特征图输入第二帧间融合模型,生成第二视频帧的语义分割图像;
在一种可能的实现方式中,第二帧间融合模型可以是一种神经网络模型。
由于第一邻帧预测模型用于预测相邻视频帧的信息,因此,第一邻帧预测网络层输出的特征图有利于体现第一视频帧序列中的时序变化信息,因此,无需第二图像分割网络层输出的第二视频帧的特征图作为对比,第一特征图便可以独自提供时序变化信息。
并且,通过进一步减小用于提供时序信息的特征,有利于去除噪声等冗余信息,使后续第二帧间融合模型更容易学习,并且有利于进一步降低计算机设备的中间变量存储压力。
在一种可能的实现方式中,第一邻帧预测模型可以为基于带有标注信息的第一样本集训练得到的,第一样本为第一样本集中的任意一个样本,第一样本为第一图像分割网络层输出的第三视频帧的特征图,第一样本的标注信息为第一图像分割网络层输出的第四视频帧的特征图,第三视频帧和第四视频帧为同一视频帧序列中的不同视频帧。
假设第一视频帧在第二视频帧的第一时序方向,那么,在一种可能的实现方式中,用于训练第一邻帧预测模型的样本对应的视频帧在其标准信息对应的视频帧的第一时序方向,即第三视频帧在第四视频帧的第一时序方向。也就是说,若将第一视频帧的第一特征图输入第一邻帧预测模型,得到的特征图将接近第二视频帧的第一特征图,那么第一邻帧预测网络层输出的第一特征图的第一压缩特征图能够体现第一视频帧至第二视频帧的时序变化信息。第一时序方向可以指前序,即第一视频帧被拍摄的时刻先于第二视频帧被拍摄的时刻;或者,第一时序方向可以指后序,即第一视频帧被拍摄的时刻在第二视频帧被拍摄的时刻之后。
在实时视频帧的语义分割应用中,为了减少延时,第一时序方向可以为前序,在一种可能的实现方式中,第一视频帧可以为第二视频帧的前一帧。
在一种可能的实现方式中,为了丰富时序信息,提高时序信息的精度,将第一视频帧输入图像分割模型后,可以获取图像分割模型中的两层或更多层网络层输出的两个或更多个特征图,示例性的,可以获取第一图像分割网络层输出的第一特征图和第三图像分割网络层输出的第四特征图,第三图像分割网络层可以为图像分割模型中的任意一层网络层。例如,第二图像分割网络层可以为第一层网络层,或者倒数第二层网络层。
之后,可以将获取到的各个特征图输入第一帧间融合模型,例如,将第一特征图、第二特征图和第四特征图输入第一帧间融合模型,生成第二视频帧的语义分割图像,有利于使得最终的语义分割结果更加稳定和准确。
在一种可能的实现方式中,可以参考图3B对应的方法获取第一视频帧的各个特征图的压缩特征图,之后将第二特征图和第一视频帧的各压缩特征图输入第二帧间融合模型。获取不同网络层输出的特征图的压缩特征图时,可以采用不同的邻帧预测模型,例如,对第一层网络层输出的特征图的时序信息进行提取时,利用的邻帧预测模型可以是基于第一层网络层输出的样本视频帧的特征图来进行训练。
在一种可能的实现方式中,步骤304之后,步骤305之前,本申请实施例提供的语义分割方法还可以包括:获取第一图像分割网络层输出的第二视频帧的第三特征图。第三特征图可以用来提供时序信息。此时,参考图3C,步骤305的一种可能的细化步骤可以包括:
3051B、将第三特征图输入第二邻帧预测模型;
第二邻帧预测模型用于预测相邻视频帧的信息,相邻视频帧与输入第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列。
第二邻帧预测模型是一种卷积神经网络模型。第二邻帧预测模型可以是一种卷积神经网络模型,第二邻帧预测模型可以包括输入层、多层网络层和输出层。第二邻帧预测模型的多层网络层中的每层网络层用于对输入的图像或特征图进行特征提取,输出特征图。第二邻帧预测模型的多层网络层可以被认为是一个编码器-解码器结构,也就是说,多层网络层中靠近输入层的网络层相当于编码器,可以对输入的视频帧或特征图进行下采样,使得输出的特征图的分辨率小于输入的视频帧或特征图的分辨率;多层网络层中靠近输出层的网络层相当于解码器,可以对输入的特征图进行上采样,使得输出的特征图的分辨率大于输入的视频帧的分辨率。在本申请实施例中,将多层网络层中输出的特征图的分辨率最小的网络层称作中间网络层。对于处理图像信息的神经网络模型来说,其中间网络层和位于其输入层与中间网络层之间的网络层用于对输入的图像或特征图进行下采样,中间网络层与输出层之间的网络层用于对输入的特征图进行上采样。
3052B、获取第二邻帧预测网络层输出的第三特征图的第二压缩特征图;
第二邻帧预测网络层为第二邻帧预测模型的中间网络层或位于第二邻帧预测模型的输入层和中间网络层之间的任意一层网络层。
3053B、将第一压缩特征图、第二压缩特征图和第二特征图输入第二帧间融合模型,生成第二视频帧的语义分割图像;
在一种可能的实现方式中,第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为第二样本集中的任意一个样本,第二样本为第一图像分割网络层输出的第五视频帧的特征图,第二样本的标注信息为第一图像分割网络层输出的第六视频帧的特征图,第五视频帧和第六视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,第一视频帧在第二视频帧的第一时序方向,那么第六视频帧在第五视频帧的第一时序方向。也就是说,若将第一视频帧的第三特征图输入第二邻帧预测模型,得到的特征图将接近第一视频帧的第一特征图,那么第二邻帧预测网络层输出的第三特征图的第二压缩特征图能够体现第二视频帧至第一视频帧的时序变化信息。
根据第一压缩特征图和第二压缩特征图(时序信息)对第二特征图(空间信息)进行调整,进而生成第二视频帧的语义分割图像,有利于提高时序信息的信息量,提高语义分割的稳定性。
在一种可能的实现方式中,第二帧间融合模型可以为基于带有标注信息的第三样本集训练得到的,第三样本为第三样本集中的任意一个样本,第三样本包括第一邻帧预测网络层输出的第四特征图的压缩特征图、第二邻帧预测网络层输出的第五特征图的压缩特征图和第二图像分割网络层输出的第八视频帧的第六特征图,第四特征图为第一图像分割网络层输出的第七视频帧的特征图,第五特征图为第一图像分割网络层输出的第八视频帧的特征图,第七视频帧和第八视频帧为同一视频帧序列中的不同视频帧,第三样本的标注信息为第八视频帧的标注语义分割图像。
通过预先训练好的神经网络模型对第二视频帧的时序信息和空间信息进行融合,有利于提高对第二视频帧进行语义分割的精确度和稳定性。
上面已对本申请实施例提供的对视频帧的语义分割方法进行介绍,示例性的,本申请实施例还提供一种模型训练方法,用于对上述第一帧间融合模型进行训练。继续参考图2A提供的系统架构200,介绍训练设备220如何训练第一帧间融合模型。
对神经网络模型的训练过程一般需要利用大量样本进行训练,且每次训练过程至少需要同一视频中的两帧视频帧(称作第一帧和第二帧),以利用第一帧和第二帧训练语义分割模型的过程为例,介绍本申请实施例提供的模型训练方法。
参考图5A,本申请实施例提供的模型训练方法可以包括如下步骤:
501、获取同一视频帧序列中的第一帧和第二帧、以及第二帧的语义分割图像;
训练设备220可以针对不同的目标,基于不同的数据生成相应的语义分割模型201,以给用户提供更佳的结果。例如在人像的语义分割应用中,第一帧和第二帧可以均包括人像。
在一种可能的实现方式中,客户设备240也可以作为数据采集端将采集到的视频帧序列(包括第一帧和第二帧)存入数据库230。
502、分别将第一帧和第二帧输入图像分割模型;
图像分割模型为训练好的用于对输入的图像进行语义分割的模型,在一种可能的实现方式中,图像分割模型是一种卷积神经网络模型,卷积神经网络模型包括输入层、输出层以及位于输入层和输出层之间的多层网络层,多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为多层网络层中输出的特征图的分辨率最小的一层网络层。关于卷积神经网络模型的介绍可以参考前述相关描述,此处不再赘述。
503、获取第一图像分割网络层输出的第一帧的第一特征图;
将第一帧输入图像分割模型之后,可以获取第一图像分割网络层输出的第一帧的第一特征图,第一图像分割网络层可以为图像分割模型的中间网络层或位于图像分割模型的输入层和中间网络层之间的任意一层网络层。
504、获取第二图像分割网络层输出的第二帧的第二特征图;
将第二帧输入图像分割模型之后,可以获取第二图像分割网络层输出的第二帧的第二特征图,第二图像分割网络层为位于图像分割模型的中间网络层和输出层之间的任意一层网络层。
505、以第二帧的语义分割图像作为标注信息,将第一特征图和第二特征图输入第一帧间融合模型,更新第一帧间融合模型的参数。
第一帧间融合模型可以是一种神经网络模型。
由于计算机设备可以通过图像分割模型和第一帧间融合模型对视频帧进行语义分割,因此,可以认为本申请实施例提供了一种对视频帧的语义分割模型,包括上述训练好的图像分割模型和第一帧间融合模型。
本申请实施例提供了一种第一帧间融合模型的训练方法,利用图像分割模型和第一帧间融合模型对视频帧进行语义分割,有利于提高对视频帧的语义分割结果的准确性和稳定性。
对语义分割模型的训练过程可以为对第一帧间融合模型的训练过程,或者可以包括对图像分割模型的训练过程和对第一帧间融合模型的训练过程。
第一帧间融合模型可以包括一个或多个深度神经网络,深度神经网络中的每一层的工作可以用数学表达式y=a(Wgx+b)来描述:从物理层面深度神经网络中的每一层的工作可以理解为通过五种对输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2、3的操作由“Wgx”完成,4的操作由“+b”完成,5的操作则由“a()”来实现。这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合。其中,W是权重向量,该向量中的每一个值表示该层神经网络中的一个神经元的权重值。该向量W决定着上文的输入空间到输出空间的空间变换,即每一层的权重W控制着如何变换空间。训练深度神经网络的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵。
因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objectivefunction),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
一般来说,神经网络满足预设的约束条件时,可以认为神经网络完成训练,可以将此时的神经网络称作神经网络模型。约束条件可以是达到预设的迭代次数,或者调整参数后的神经网络的性能达到预设指标等。
在一种可能的实现方式中,在将第二帧输入图像分割模型之后,方法还包括:获取第一图像分割网络层输出的第二帧的第三特征图。步骤505的一种细化步骤可以包括:将第一特征图、第二特征图和第三特征图输入第一帧间融合模型,更新第一帧间融合模型的参数。
在一种可能的实现方式中,步骤505的一种细化步骤可以包括:以第三特征图为标注信息,将第一特征图输入第一邻帧预测模型,更新第一邻帧预测模型的参数。
在一种可能的实现方式中,第一邻帧预测模型是一种卷积神经网络模型;基于第一邻帧预测模型满足第一约束条件,比如对第一邻帧预测模型的训练次数达到预设迭代次数,此时,参考图5B,步骤505的一种细化步骤可以包括:
5051A、将第一特征图输入第一邻帧预测模型;
5052A、获取第一邻帧预测网络层输出的第一特征图的第一压缩特征图;
第一邻帧预测网络层为第一邻帧预测模型的中间网络层或位于第一邻帧预测模型的输入层和中间网络层之间的任意一层网络层。
5053A、以第二帧的语义分割图像作为标注信息,将第一压缩特征图和第二特征图输入第二帧间融合模型,更新第二帧间融合模型的参数。
由于第一邻帧预测模型的输入数据和输出数据为同一视频中的不同视频帧的特征图,因此,训练好的第一邻帧预测模型中的第一邻帧预测网络层输出的压缩特征图能够体现同一视频中不同视频帧之间随时间发生变化的信息,即时序信息,因此,无需第二特征图,根据第一特征图便可以提供第二帧与第一帧之间的时序信息。通过进一步减小用于提供时序信息的特征,有利于去除噪声等冗余信息,使后续融合模块更容易学习,并且有利于进一步降低计算机设备的中间变量存储压力。
在一种可能的实现方式中,步骤505的一种细化步骤还可以包括:以第一特征图为标注信息,将第三特征图输入第二邻帧预测模型,更新第二邻帧预测模型的参数。在一种可能的实现方式中,第二邻帧预测模型可以是一种卷积神经网络模型。
基于第二邻帧预测模型满足第二约束条件,参考图5C,步骤505的一种细化步骤还可以包括:
5051B、将第三特征图输入第二邻帧预测模型;
5052B、获取第二邻帧预测网络层输出的第三特征图的第二压缩特征图;
第二邻帧预测网络层为第二邻帧预测模型的中间网络层或位于第二邻帧预测模型的输入层和中间网络层之间的任意一层网络层。
5053B、以第二帧的语义分割图像作为标注信息,将第一压缩特征图、第二压缩特征图和第二特征图输入第二帧间融合模型,更新第二帧间融合模型的参数。
由于第二邻帧预测模型的输入数据和输出数据为同一视频中的不同视频帧的特征图,因此,训练好的第二邻帧预测模型中的第二邻帧预测网络层输出的压缩特征图能够体现同一视频中不同视频帧之间随时间发生变化的信息,即时序信息,通过进一步减小用于提供时序信息的特征,有利于去除噪声等冗余信息,使后续第二帧间融合模型更容易学习,并且有利于进一步降低计算机设备的中间变量存储压力。
需要说明的是,“第一视频帧”和“第一帧”不是限定该帧为视频中的第一个视频帧,“第二视频帧”和“第二帧”不是限定该帧为视频中的第二个视频帧,并且,并未限定“第一视频帧”和“第一帧”为同一帧,并未限定“第二视频帧”和“第二帧”为同一帧。
本申请实施例提供的模型训练方法中的图像分割模型可以参考本申请实施例提供的语义分割方法中的图像分割模型进行理解,此处不再赘述。
在一种可能的实现方式中,可以按照本申请实施例提供的模型训练方法中的第一帧间融合模型的训练方法获取本申请实施例提供的语义分割方法中的第一帧间融合模型。具体的,在一种可能的实现方式中,可以按照本申请实施例提供的模型训练方法中的第一邻帧预测模型的训练方法获取前述语义分割方法实施例中的第一邻帧预测模型;在一种可能的实现方式中,可以按照本申请实施例提供的模型训练方法中的第二邻帧预测模型的训练方法获取本申请实施例提供的语义分割方法中的第二邻帧预测模型;在一种可能的实现方式中,可以按照本申请实施例提供的模型训练方法中的第二帧间融合模型的训练方法获取本申请实施例提供的语义分割方法中的第二帧间融合模型。
本申请实施例还提供一种视频通话方法,参考图6,本申请视频通话方法一个实施例可以包括如下步骤:
601、第一终端设备通过其图像采集模块采集第一本端视频帧;
第一终端设备可以通过其图像采集模块(比如摄像头)实时采集图像,得到图像序列,由于图像序列中的图像之间存在时序关联,可以将采集的每个图像称作一个视频帧(称作第一本端视频帧)。
602、第一终端设备接收第二终端设备通过其图像采集模块采集的对端视频帧;
第二终端设备可以实时采集视频帧,并将采集到的视频帧发送给第一终端设备。
603、第一终端设备根据第一本端视频帧生成第二本端视频帧;
步骤601之后,第一终端设备可以根据第一本端视频帧生成第二本端视频帧,第一本端视频帧的第一图像区域显示第一图像,第二本端视频帧的第二图像区域显示第二图像,第一图像和第二图像不同,第一本端视频帧的第三图像区域和第二本端视频帧的第四图像区域均显示第三图像。可以将第三图像称作前景,将第一图像和第二图像称作第三图像的背景;第三图像区域和第四图像区域可以被称作前景区域,第一图像区域和第二图像区域可以被称作背景区域。需要说明的是,不限定第一图像区域和第二图像区域的尺寸或相对于所在视频帧的位置相同,不限定第三图像区域和第四图像区域的尺寸或相对于所在视频帧的位置相同。
604、第一终端设备通过其显示屏同时显示对端视频帧和第二本端视频帧。
第一终端设备可以在不同图层同时显示对端视频帧和第二本端视频帧,可选的,两个视频帧在显示屏上对应的区域的尺寸不同。或者,第一终端设备可以根据对端视频帧和第二本端视频帧生成一帧融合图像,该融合图像的一部分区域显示对端视频帧的全部或部分图像区域,该融合图像的另一部分区域显示第二本端视频帧的全部或部分图像区域,或者,将第一本端视频帧中第一图像区域显示的第一图像替换为第二图像。
在视频通话过程中,对终端设备采集的视频帧进行背景切换,有利于提高视频通话过程的趣味性,增加用户粘性。
在一种可能的实现方式中,步骤603之后,本申请视频通话方法还可以包括:第一终端设备将第二本端视频帧发送给第二终端设备。这样,第二终端设备可以在视频通话界面显示第二本端视频帧,使通话对象看到背景切换后的视频图像。
在一种可能的实现方式中,步骤603可以包括:第一终端设备根据用户的切换指令,根据第一本端视频帧生成第二本端视频帧,切换指令用于指示第一终端设备将第一本端视频帧中的第一图像切换为第二图像。
在一种可能的实现方式中,该切换指令可以为响应于用户对某个选项的选择操作生成的,该选项用于提示将视频帧的背景切换为第二图像。在一种可能的实现方式中,终端设备可以向用户提供多个用于下达切换指令的选项,不同选项用于将视频帧的背景切换为不同图像。
在一种可能的实现方式中,该切换指令可以为响应于终端设备检测到自身姿态(例如摄像头的朝向)的改变生成的,终端设备的姿态变化会引起采集的视频帧中人像的背景发生变化。示例性的,用户可以选择将人像的背景切换至一组图像,该组图像可以用于体现三维空间中的环境图像,例如,该组图像为利用拍摄设备在同一场景或环境中拍摄的,不同图像对应于拍摄设备的摄像头的不同朝向,可以关联保存各图像对应的摄像头的朝向信息,在录制视频的过程中或进行视频通话的过程中,终端设备可以根据自身的朝向自动选择相应的图像,并将当前采集到的视频帧中人像的背景切换为选择的该图像,从而可以随着终端设备的姿态变化,相应改变背景区域的图像,实现动态切换切换后的背景图像,提高切换背景后的视频的真实性,仿佛视频中的人真正实现了所处环境的切换。
在一种可能的实现方式中,第一图像与第三图像对应的语义类型不同。
在一种可能的实现方式中,第二本端视频帧可以为根据第一本端视频帧的语义分割结果生成的。在一种可能的实现方式中,第一终端设备根据前述本申请提供的语义分割方法任一实施例,根据第一本端视频帧和第三本端视频帧生成第二本端视频帧的语义分割图像,第三本端视频帧与第一本端视频帧为第一终端设备采集的同一视频帧序列中的不同视频帧,例如第一本端视频帧的前一帧。之后,第一终端设备根据语义分割图像和第一本端视频帧生成第二本端视频帧。
本申请实施例还提供一种视频帧的背景切换方法,该方法一个实施例可以包括如下步骤:第一终端设备通过其图像采集模块采集第一视频帧;响应于第一终端设备检测到自身姿态的变化,第一终端设备根据第一视频帧生成第二视频帧,第一视频帧的第一图像区域显示第一图像,第二视频帧的第二图像区域显示第二图像,第一图像和第二图像不同,第一视频帧的第三图像区域和第二视频帧的第四图像区域均显示第三图像;第一终端设备通过其显示屏显示第二视频帧。
在一种可能的实现方式中,终端设备可以关联存储图像和终端设备的姿态信息(或姿态变化信息),第一终端设备检测到自身姿态的变化时,可以选择与当前姿态对应的图像,或选择与姿态的变化信息(比如变化方向或变化速度)对应的图像,在第二视频帧的第二图像区域(或称第三图像的背景区域)显示选择的图像。
示例性的,用户可以选择将人像的背景切换至一组图像,该组图像可以用于体现三维空间中的环境图像,例如,该组图像为利用拍摄设备在同一场景或环境中拍摄的,不同图像对应于拍摄设备的摄像头的不同朝向,可以关联保存各图像对应的摄像头的朝向信息,在录制视频的过程中或进行视频通话的过程中,终端设备可以根据自身的朝向自动选择相应的图像,并将当前采集到的视频帧中人像的背景切换为选择的该图像,从而可以随着终端设备的姿态变化,相应改变背景区域的图像,实现动态切换切换后的背景图像,提高切换背景后的视频的真实性,仿佛视频中的人真正实现了所处环境的切换。
为了便于理解,下面结合具体应用场景,分别示例性的介绍本申请实施例方法的具体实现过程。
首先结合具体应用场景,示例性的介绍本申请实施例提供的视频通话方法的具体实现过程。
用户1和用户2可以通过各自的终端设备(比如手机)进行视频通话,为了便于描述,将用户1的手机记为手机1,将用户2的手机记为手机2。该视频通过过程可以由手机中的系统应用程序(比如电话应用程序)支持,也可以由第三方应用程序(比如社交应用程序)支持。在用户1和用户2进行视频通过的过程中,手机1和手机2可以分别采集各自的视频帧序列,并通过互联网相互发送各自采集的视频帧序列,以在各自的显示屏上同时显示手机1和手机2采集的视频帧序列,实现面对面沟通的效果。
下面以手机1和手机2采集的视频帧序列中的一个视频帧为例,介绍手机1执行本申请提供的视频通话方法时在其显示屏上的显示内容。
假设手机1当前采集的视频帧1如图7A所示,手机2当前采集的视频帧2如图7B所示。手机1可以通过互联网向手机2发送视频帧1,手机2可以通过互联网向手机1发送视频帧1。手机1可以为用户1提供人像背景切换的多个选项(选项1、选项2、选项3和选项4),当用户1选择选项1时(图7C中的箭头),手机1不执行本申请实施例提供的视频通话方法,即不对视频帧1进行人像背景切换,手机1在其显示屏上同时显示视频帧1和视频帧2,如图7C所示;当用户1选择选项2时(图7D中的箭头),手机1执行本申请实施例提供的视频通话方法,根据将视频帧1中人像的背景区域(即第一图像区域)替换为选项2对应的图像,得到人像背景切换后的视频帧1’,之后,可以在显示屏上同时显示视频帧1’和视频帧2,如图7D所示。
下面结合具体应用场景,示例性的介绍本申请实施例提供的语义分割方法的具体实现过程。
例如,应用场景为:在用户利用智能终端录制视频或利用智能终端与他人进行视频通话的过程中,智能终端以人像对应的区域为目标区域,以视频帧中目标区域以外的其他区域为背景,切换背景对应的图像,实现人像的背景切换。
假设图像分割模型包括7层网络层,第一层最靠近图像分割模型的输入层,第七层最靠近图像分割模型的输出层,第四层为图像分割模型的中间网络层。参考图8A,本申请利用语义分割模型800实现的语义分割方法一个实施例方法可以包括如下步骤:
步骤1、通过摄像头依次获取帧1、帧2和帧3;
步骤2、将帧1输入图像分割模型801,获取网络层1输出的特征图1_1、网络层4输出的特征图1_4、网络层6输出的特征图1_6和网络层7输出的特征图1_7;
步骤3、将特征图1_7输入第二帧间融合模型802,得到帧1的语义分割图像1(在本申请实施例中为蒙版1),例如生成图7B所利用的蒙版,参考图8B;
步骤4、根据帧1的人像分割图像将帧1中人像对应的目标区域以外的区域(即背景)替换为指定图像,得到切换背景后的帧1,称作帧1’;
步骤5、分别将特征图1_1、特征图1_4和特征图1_6输入第一邻帧预测模型(图8A中以白色填充的圆形表示),得到压缩特征1_1a、压缩特征图1_4a和压缩特征图1_6a,并缓存;
不限定步骤3和步骤5之间的时序关系。
步骤6、将帧2输入图像分割模型801,获取网络层1输出的特征图2_1、网络层4输出的特征图2_4、网络层6输出的特征图2_6和网络层7输出的特征图2_7;
步骤7、分别将特征图2_1、特征图2_4和特征图2_6输入第一邻帧预测模型(图8A中以白色填充的圆形表示),得到压缩特征2_1a、压缩特征图2_4a和压缩特征图2_6a,并缓存;
步骤8、分别将特征图2_1、特征图2_4和特征图2_6输入第二邻帧预测模型(图8A中以黑色填充的圆形表示),得到压缩特征2_1b、压缩特征图2_4b和压缩特征图2_6b;
步骤9、将压缩特征图1_1a、压缩特征图1_4a、压缩特征图1_6a、压缩特征图2_1b、压缩特征图2_4b、压缩特征图2_6b和特征图2_7输入第二帧间融合模型802,得到帧2的人像分割图像2(在本申请实施例中为蒙版2);
步骤10、帧2的人像分割图像将帧2中人像对应的目标区域以外的区域替换为指定背景,得到切换背景后的帧2,称作帧2’;
不限定步骤7和步骤8之间的时序关系。
步骤11、将帧3输入图像分割模型801,获取网络层1输出的特征图3_1、网络层4输出的特征图3_4、网络层6输出的特征图3_6和网络层7输出的特征图3_7;
步骤12、分别将特征图3_1、特征图3_4和特征图3_6输入第一邻帧预测模型(图8A中以白色填充的圆形表示),得到压缩特征3_1a、压缩特征图3_4a和压缩特征图3_6a,并缓存;
步骤13、分别将特征图3_1、特征图3_4和特征图3_6输入第二邻帧预测模型(图8A中以黑色填充的圆形表示),得到压缩特征3_1b、压缩特征图3_4b和压缩特征图3_6b;
步骤14、将压缩特征2_1a、压缩特征图2_4a、压缩特征图2_6a、压缩特征3_1b、压缩特征图3_4b、压缩特征图3_6b和特征图3_7输入第二帧间融合模型802,得到帧3的人像分割图像3(在本申请实施例中为蒙版3);
步骤15、帧3的人像分割图像将帧3中人像对应的目标区域以外的区域替换为指定背景,得到切换背景后的帧3,称作帧3’。
不限定步骤12和步骤13之间的时序关系。不同网络层输出的特征图对应的第一邻帧预测模型可以不同。
第二帧间融合模型802可以对输入的多个数据进行融合,下面继续基于图8A对应的实施例,以步骤9为例,介绍第二帧间融合模型802的数据处理过程。图8C中以四角星代表连接操作,例如逐像素相加操作或合并(concat)操作,concat操作用于连接两个或多个数组,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。图8C中以菱形代表卷积操作,标识的数字不同的菱形可以代表不同类型的卷积操作,示例性的,标识有“1”的菱形可以代表一次或多次空洞卷积;标识有“2”的菱形可以代表一次或多次分离式卷积,或者代表先进行一次或多次分离式卷积,再进行一次或多次普通卷积;标识有“3”的菱形可以代表一次或多次普通卷积。
图8C进行用于示例性的介绍第二帧间融合模型802的内部结构,第二帧间融合模型802还可以包括其他运算,例如,可以对最后一个卷积操作输出的数据进行后处理,例如归一化处理,例如归一化指数函数(或称softmax函数)。
后续视频帧的语义分割方法可以参考前述步骤,此处不再赘述。
下面对本申请实施例提供的语义分割方法的性能进行介绍。
如表1所示,在视频帧的多类别语义分割的仿真数据上,本申请提供的语义分割方法的评测指标优于利用单个视频帧进行语义分割的低时延网络(称作单帧低时延网络模型),本申请提供的语义分割方法的评测指标与利用单个视频帧进行语义分割的大型网络(称作单帧大型网络模型)的测试结果相当。从可视化结果来看,本申请实施例提供的语义分割方法还优化了单帧分割的碎片化现象。相对于现有语义分割模型,本申请实施例提供的融合网络模型增加的时延较小,每秒执行的定点乘累加操作次数 (giga multiplyaccumulate per second,Macc)<90M。表1中,IOU为交并比(Intersection over Union)的缩写,IOU是一种测量在特定数据集中检测相应物体准确度的一个标准。
表1
如表2所示,本申请提供的语义分割方法的评测指标优于利用光流法进行语义分割的网络模型,表2中的FPS为每秒钟画面更新的数量(frame per second)的缩写,GPU为图形处理器(graphics processing unit)的缩写。
表2
方法 | 时间(GPU) |
光流法模型 | 2FPS |
本申请语义分割模型 | 50FPS |
如表3所示为在人像视频帧上进行语义分割的结果对比,本申请提供的语义分割方法的评测指标优于利用视频对象分割(video object segmentation,VOS)进行语义分割的网络模型。
表3
方法 | 边界IOU |
VOS | 92.1% |
本发明 | 93.8% |
图9是本发明实施例提供的一种芯片硬件结构图。
神经网络处理器970作为协处理器挂载到主 CPU(Host CPU)上,由Host CPU分配任务。神经网络处理器970的核心部分为运算电路903,通过控制器904控制运算电路903提取存储器中的矩阵数据并进行乘法运算。本申请实施例方法所需的计算能力可以由图9所示的神经网络处理器970或神经网络处理器970和主CPU提供。
在一些实现中,运算电路903内部包括多个处理单元(Process Engine, PE)。在一些实现中,运算电路903是二维脉动阵列。运算电路903还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路903是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。 运算电路903从权重存储器902中取矩阵B相应的数据,并缓存在运算电路903中每一个PE上。运算电路903从输入存储器901中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器908 accumulator中。
统一存储器906用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器 905 Direct Memory Access Controller,DMAC被搬运到权重存储器902中。输入数据也通过DMAC被搬运到统一存储器906中。
BIU为Bus Interface Unit 即,总线接口单元910,用于AXI总线与DMAC和取指存储器909 Instruction Fetch Buffer的交互。
总线接口单元910(Bus Interface Unit,简称BIU),用于取指存储器909从外部存储器获取指令,还用于存储单元访问控制器905从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器906或将权重数据搬运到权重存储器902中或将输入数据数据搬运到输入存储器901中。
向量计算单元 907 包括多个运算处理单元,在需要的情况下,对运算电路903的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/FC层网络计算,如Pooling(池化),Batch Normalization(批归一化),LocalResponse Normalization(局部响应归一化)等。
在一些实现种,向量计算单元能907将经处理的输出的向量存储到统一缓存器906。例如,向量计算单元907可以将非线性函数应用到运算电路903的输出,例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元907生成归一化的值、合并值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路903的激活输入,例如用于在神经网络中的后续层中的使用。
控制器904连接的取指存储器(instruction fetch buffer)909,用于存储控制器904使用的指令;
统一存储器906,输入存储器901,权重存储器902以及取指存储器909均为On-Chip存储器。外部存储器私有于该神经网络处理器硬件架构。
其中,本申请实施例中各神经网络模型中各层的运算可以由向量计算单元907执行。
从功能模块的角度,本申请可以根据上述方法实施例对执行语义分割方法的装置和执行模型训练方法的装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个功能模块中。上述集成的功能模块既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
比如,以采用集成的方式划分各个功能单元的情况下,图10示出了一种语义分割装置的结构示意图。如图10所示,本申请语义分割装置1000的一个实施例可以包括:
视频帧获取模块1001,用于获取第一视频帧序列中的第一视频帧和第二视频帧,所述第一视频帧与所述第二视频帧不同;
特征图获取模块1002,用于分别将所述第一视频帧和所述第二视频帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;所述特征图获取模块1002,还用于获取第一图像分割网络层输出的所述第一视频帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;所述特征图获取模块1002,还用于获取第二图像分割网络层输出的所述第二视频帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
融合模块1003,用于将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,所述第一帧间融合模型是一种神经网络模型。
在一种可能的实现方式中,所述融合模块1003用于:将所述第一特征图输入第一邻帧预测模型,所述第一邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第一邻帧预测模型是一种所述卷积神经网络模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第一邻帧预测模型为基于带有标注信息的第一样本集训练得到的,第一样本为所述第一样本集中的任意一个样本,所述第一样本为所述第一图像分割网络层输出的第三视频帧的特征图,所述第一样本的标注信息为所述第一图像分割网络层输出的第四视频帧的特征图,所述第三视频帧和所述第四视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第三视频帧在所述第四视频帧的所述第一时序方向。
在一种可能的实现方式中,所述特征图获取模块1002还用于:在将所述第二视频帧输入图像分割模型之后,获取所述第一图像分割网络层输出的所述第二视频帧的第三特征图;所述融合模块还用于:将所述第三特征图输入第二邻帧预测模型,所述第二邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第二邻帧预测模型是一种所述卷积神经网络模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,生成所述第二视频帧的语义分割图像。
在一种可能的实现方式中,所述第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为所述第二样本集中的任意一个样本,所述第二样本为所述第一图像分割网络层输出的第五视频帧的特征图,所述第二样本的标注信息为所述第一图像分割网络层输出的第六视频帧的特征图,所述第五视频帧和所述第六视频帧为同一视频帧序列中的不同视频帧。
在一种可能的实现方式中,所述第一视频帧在所述第二视频帧的第一时序方向,所述第六视频帧在所述第五视频帧的所述第一时序方向。
在一种可能的实现方式中,所述第二帧间融合模型1003为基于带有标注信息的第三样本集训练得到的,第三样本为所述第三样本集中的任意一个样本,所述第三样本包括所述第一邻帧预测网络层输出的第四特征图的压缩特征图、所述第二邻帧预测网络层输出的第五特征图的压缩特征图和所述第二图像分割网络层输出的第八视频帧的第六特征图,所述第四特征图为所述第一图像分割网络层输出的第七视频帧的特征图,所述第五特征图为所述第一图像分割网络层输出的所述第八视频帧的特征图,所述第七视频帧和所述第八视频帧为同一视频帧序列中的不同视频帧,所述第三样本的标注信息为所述第八视频帧的标注语义分割图像。
在一种可能的实现方式中,所述特征图获取模块1002在将所述第一视频帧输入所述图像分割模型之后,还用于:获取所述第一图像分割网络层输出的所述第一视频帧的第四特征图;所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:将所述第一特征图、所述第二特征图和所述第四特征图输入所述第一帧间融合模型,生成所述第二视频帧的语义分割图像。
图11示出了一种模型训练装置的结构示意图。如图11所示,本申请模型训练装置1100的一个实施例可以包括:
样本获取模块1101,用于获取同一视频帧序列中的第一帧和第二帧、以及所述第二帧的语义分割图像;
特征图获取模块1102,用于分别将所述第一帧和所述第二帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层; 所述特征图获取模块1102,还用于获取第一图像分割网络层输出的所述第一帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;所述特征图获取模块1102,还用于获取第二图像分割网络层输出的所述第二帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
训练模块1103,用于以所述第二帧的语义分割图像作为标注信息,将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,所述第一帧间融合模型是一种神经网络模型。
在一种可能的实现方式中,所述特征图获取模块1102在将所述第二帧输入图像分割模型之后,还用于:获取所述第一图像分割网络层输出的所述第二帧的第三特征图;所述训练模块1103用于:将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数。
在一种可能的实现方式中,所述训练模块1103用于:以所述第三特征图为标注信息,将所述第一特征图输入第一邻帧预测模型,更新所述第一邻帧预测模型的参数。
在一种可能的实现方式中,所述第一邻帧预测模型是一种所述卷积神经网络模型;所述训练模块1103基于所述第一邻帧预测模型满足第一约束条件,还用于:将所述第一特征图输入所述第一邻帧预测模型;获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,更新所述第二帧间融合模型的参数。
在一种可能的实现方式中,所述所述训练模块1103还用于:以所述第一特征图为标注信息,将所述第三特征图输入第二邻帧预测模型,更新所述第二邻帧预测模型的参数。
在一种可能的实现方式中,所述第二邻帧预测模型是一种所述卷积神经网络模型;所述训练模块1103基于所述第二邻帧预测模型满足第二约束条件,还用于:将所述第三特征图输入所述第二邻帧预测模型;获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,更新所述第二帧间融合模型的参数。
图12示出了一种视频通话装置的结构示意图。如图12所示,本申请视频通话装置1200的一个实施例可以包括:
图像采集模块1201,用于采集第一本端视频帧;
通信模块1202,用于接收第二终端设备通过其图像采集模块采集的对端视频帧;
背景切换模块1203,用于根据所述第一本端视频帧生成第二本端视频帧,所述第一本端视频帧的第一图像区域显示第一图像,所述第二本端视频帧的第二图像区域显示第二图像,所述第一图像和所述第二图像不同,所述第一本端视频帧的第三图像区域和所述第二本端视频帧的第四图像区域均显示第三图像;
显示模块1204,用于所述第一终端设备通过其显示屏同时显示所述对端视频帧和所述第二本端视频帧。
在一种可能的实现方式中,所述背景切换模块1203根据所述第一本端视频帧生成第二本端视频帧之后,所述通信模块1202还用于将所述第二本端视频帧发送给所述第二终端设备。
在一种可能的实现方式中,所述背景切换模块1203用于:根据用户的切换指令,根据所述第一本端视频帧生成第二本端视频帧,所述切换指令用于指示所述第一终端设备将所述第一本端视频帧中的所述第一图像切换为所述第二图像。
在一种可能的实现方式中,所述第一图像与所述第三图像对应的语义类型不同。
在一种可能的实现方式中,所述背景切换模块1203用于,根据本申请实施例提供的语义分割方法任一实施例方法,根据所述第一本端视频帧和第三本端视频帧生成所述第二本端视频帧的语义分割图像,所述第三本端视频帧与所述第一本端视频帧为所述第一终端设备采集的同一视频帧序列中的不同视频帧;根据所述语义分割图像和所述第一本端视频帧生成第二本端视频帧。
图10至图12对应的装置实施例可以参考前述各方法实施例中的相关部分进行理解,此处不再赘述。
上述各模块可以指特定应用集成电路(application-specific integratedcircuit,ASIC),执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。图13为计算机设备1300的硬件结构示意图,在一个简单的实施例中,本领域的技术人员可以想到语义分割装置1000和模型训练装置1100和视频通话装置1200可以采用图13所示的形式。
该计算机设备1300包括至少一个处理器1301和存储器1302。
上述的处理器1301可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。虽然图中仅仅示出了一个处理器,该装置可以包括多个处理器或者处理器包括多个处理单元。具体的,处理器可以是一个单核处理器,也可以是一个多核或众核处理器。该处理器可以是ARM架构处理器。
存储器1302用于存储处理器执行的计算机指令。存储器1302可以是存储电路也可以是存储器。存储器1302可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。存储器1302可以独立于处理器1301,一种可能的实现方式中,处理器1301和存储器1302可以通过总线1303相互连接。总线1303可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。或者,存储器1302也可以是处理器1301中的存储单元,与处理器1301直接相连(attach),在此不做限定。虽然图中仅仅示出了一个存储器1302,该装置也可以包括多个存储器1302或者存储器1302包括多个存储单元。
其中,上述存储器1302用于存储执行本申请方案的计算机执行指令,并由上述处理器1301来控制执行。处理器1301用于执行存储器1302中存储的计算机执行指令,从而实现本申请上述方法实施例提供的语义分割方法和模型训练方法。
一种可能的实现方式,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
上述实施例,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机执行指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。在本申请实施例中,“多个”指两个或两个以上。
本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的各实施例中,为了方面理解,进行了多种举例说明。然而,这些例子仅仅是一些举例,并不意味着是实现本申请的最佳实现方式。
以上对本申请所提供的技术方案进行了详细介绍,本申请中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (33)
1.一种语义分割方法,其特征在于,包括:
获取第一视频帧序列中的第一视频帧和第二视频帧,所述第一视频帧与所述第二视频帧不同;
分别将所述第一视频帧和所述第二视频帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;
获取第一图像分割网络层输出的所述第一视频帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;
获取第二图像分割网络层输出的所述第二视频帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,所述第一帧间融合模型是一种神经网络模型。
2.根据权利要求1所述的方法,其特征在于,所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:
将所述第一特征图输入第一邻帧预测模型,所述第一邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第一邻帧预测模型是一种所述卷积神经网络模型;
获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像。
3.根据权利要求2所述的方法,其特征在于,所述第一邻帧预测模型为基于带有标注信息的第一样本集训练得到的,第一样本为所述第一样本集中的任意一个样本,所述第一样本为所述第一图像分割网络层输出的第三视频帧的特征图,所述第一样本的标注信息为所述第一图像分割网络层输出的第四视频帧的特征图,所述第三视频帧和所述第四视频帧为同一视频帧序列中的不同视频帧。
4.根据权利要求3所述的方法,其特征在于,所述第一视频帧在所述第二视频帧的第一时序方向,所述第三视频帧在所述第四视频帧的所述第一时序方向。
5.根据权利要求2至4中任一项所述的方法,其特征在于,将所述第二视频帧输入所述图像分割模型之后,所述方法还包括:
获取所述第一图像分割网络层输出的所述第二视频帧的第三特征图;
所述将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像,包括:
将所述第三特征图输入第二邻帧预测模型,所述第二邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第二邻帧预测模型是一种所述卷积神经网络模型;
获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,生成所述第二视频帧的语义分割图像。
6.根据权利要求5所述的方法,其特征在于,所述第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为所述第二样本集中的任意一个样本,所述第二样本为所述第一图像分割网络层输出的第五视频帧的特征图,所述第二样本的标注信息为所述第一图像分割网络层输出的第六视频帧的特征图,所述第五视频帧和所述第六视频帧为同一视频帧序列中的不同视频帧。
7.根据权利要求6所述的方法,其特征在于,所述第一视频帧在所述第二视频帧的第一时序方向,所述第六视频帧在所述第五视频帧的所述第一时序方向。
8.根据权利要求5所述的方法,其特征在于,所述第二帧间融合模型为基于带有标注信息的第三样本集训练得到的,第三样本为所述第三样本集中的任意一个样本,所述第三样本包括所述第一邻帧预测网络层输出的第四特征图的压缩特征图、所述第二邻帧预测网络层输出的第五特征图的压缩特征图和所述第二图像分割网络层输出的第八视频帧的第六特征图,所述第四特征图为所述第一图像分割网络层输出的第七视频帧的特征图,所述第五特征图为所述第一图像分割网络层输出的所述第八视频帧的特征图,所述第七视频帧和所述第八视频帧为同一视频帧序列中的不同视频帧,所述第三样本的标注信息为所述第八视频帧的标注语义分割图像。
9.根据权利要求1至4中任一项所述的方法,其特征在于,将所述第一视频帧输入所述图像分割模型之后,所述方法还包括:
获取所述第一图像分割网络层输出的所述第一视频帧的第四特征图;
所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:
将所述第一特征图、所述第二特征图和所述第四特征图输入所述第一帧间融合模型,生成所述第二视频帧的语义分割图像。
10.一种模型训练方法,其特征在于,包括:
获取同一视频帧序列中的第一帧和第二帧、以及所述第二帧的语义分割图像;
分别将所述第一帧和所述第二帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;
获取第一图像分割网络层输出的所述第一帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;
获取第二图像分割网络层输出的所述第二帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
以所述第二帧的语义分割图像作为标注信息,将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,所述第一帧间融合模型是一种神经网络模型。
11.根据权利要求10所述的方法,其特征在于,在将所述第二帧输入图像分割模型之后,所述方法还包括:
获取所述第一图像分割网络层输出的所述第二帧的第三特征图;
所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,包括:
将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数。
12.根据权利要求11所述的方法,其特征在于,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,包括:
以所述第三特征图为标注信息,将所述第一特征图输入第一邻帧预测模型,更新所述第一邻帧预测模型的参数。
13.根据权利要求12所述的方法,其特征在于,所述第一邻帧预测模型是一种所述卷积神经网络模型;
基于所述第一邻帧预测模型满足第一约束条件,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:
将所述第一特征图输入所述第一邻帧预测模型;
获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,更新所述第二帧间融合模型的参数。
14.根据权利要求13所述的方法,其特征在于,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:
以所述第一特征图为标注信息,将所述第三特征图输入第二邻帧预测模型,更新所述第二邻帧预测模型的参数。
15.根据权利要求14所述的方法,其特征在于,所述第二邻帧预测模型是一种所述卷积神经网络模型;
基于所述第二邻帧预测模型满足第二约束条件,所述将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,还包括:
将所述第三特征图输入所述第二邻帧预测模型;
获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,更新所述第二帧间融合模型的参数。
16.一种语义分割装置,其特征在于,包括:
视频帧获取模块,用于获取第一视频帧序列中的第一视频帧和第二视频帧,所述第一视频帧与所述第二视频帧不同;
特征图获取模块,用于分别将所述第一视频帧和所述第二视频帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;
所述特征图获取模块,还用于获取第一图像分割网络层输出的所述第一视频帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;
所述特征图获取模块,还用于获取第二图像分割网络层输出的所述第二视频帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
融合模块,用于将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,所述第一帧间融合模型是一种神经网络模型。
17.根据权利要求16所述的装置,其特征在于,所述融合模块用于:
将所述第一特征图输入第一邻帧预测模型,所述第一邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第一邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第一邻帧预测模型是一种所述卷积神经网络模型;
获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,生成所述第二视频帧的语义分割图像。
18.根据权利要求17所述的装置,其特征在于,所述第一邻帧预测模型为基于带有标注信息的第一样本集训练得到的,第一样本为所述第一样本集中的任意一个样本,所述第一样本为所述第一图像分割网络层输出的第三视频帧的特征图,所述第一样本的标注信息为所述第一图像分割网络层输出的第四视频帧的特征图,所述第三视频帧和所述第四视频帧为同一视频帧序列中的不同视频帧。
19.根据权利要求18所述的装置,其特征在于,所述第一视频帧在所述第二视频帧的第一时序方向,所述第三视频帧在所述第四视频帧的所述第一时序方向。
20.根据权利要求17至19中任一项所述的装置,其特征在于,所述特征图获取模块还用于:
在将所述第二视频帧输入图像分割模型之后,获取所述第一图像分割网络层输出的所述第二视频帧的第三特征图;
所述融合模块还用于:
将所述第三特征图输入第二邻帧预测模型,所述第二邻帧预测模型用于预测相邻视频帧的信息,所述相邻视频帧与输入所述第二邻帧预测模型的特征图所属的视频帧属于同一视频帧序列,所述第二邻帧预测模型是一种所述卷积神经网络模型;
获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,生成所述第二视频帧的语义分割图像。
21.根据权利要求20所述的装置,其特征在于,所述第二邻帧预测模型为基于带有标注信息的第二样本集训练得到的,第二样本为所述第二样本集中的任意一个样本,所述第二样本为所述第一图像分割网络层输出的第五视频帧的特征图,所述第二样本的标注信息为所述第一图像分割网络层输出的第六视频帧的特征图,所述第五视频帧和所述第六视频帧为同一视频帧序列中的不同视频帧。
22.根据权利要求21所述的装置,其特征在于,所述第一视频帧在所述第二视频帧的第一时序方向,所述第六视频帧在所述第五视频帧的所述第一时序方向。
23.根据权利要求20所述的装置,其特征在于,所述第二帧间融合模型为基于带有标注信息的第三样本集训练得到的,第三样本为所述第三样本集中的任意一个样本,所述第三样本包括所述第一邻帧预测网络层输出的第四特征图的压缩特征图、所述第二邻帧预测网络层输出的第五特征图的压缩特征图和所述第二图像分割网络层输出的第八视频帧的第六特征图,所述第四特征图为所述第一图像分割网络层输出的第七视频帧的特征图,所述第五特征图为所述第一图像分割网络层输出的所述第八视频帧的特征图,所述第七视频帧和所述第八视频帧为同一视频帧序列中的不同视频帧,所述第三样本的标注信息为所述第八视频帧的标注语义分割图像。
24.根据权利要求16至19中任一项所述的装置,其特征在于,所述特征图获取模块在将所述第一视频帧输入所述图像分割模型之后,还用于:
获取所述第一图像分割网络层输出的所述第一视频帧的第四特征图;
所述将所述第一特征图和所述第二特征图输入第一帧间融合模型,生成所述第二视频帧的语义分割图像,包括:
将所述第一特征图、所述第二特征图和所述第四特征图输入所述第一帧间融合模型,生成所述第二视频帧的语义分割图像。
25.一种模型训练装置,其特征在于,包括:
样本获取模块,用于获取同一视频帧序列中的第一帧和第二帧、以及所述第二帧的语义分割图像;
特征图获取模块,用于分别将所述第一帧和所述第二帧输入图像分割模型,所述图像分割模型用于对输入的图像进行语义分割,所述图像分割模型是一种卷积神经网络模型,所述卷积神经网络模型包括输入层、输出层以及位于所述输入层和所述输出层之间的多层网络层,所述多层网络层中的每一层用于对输入的数据进行特征提取,中间网络层为所述多层网络层中输出的特征图的分辨率最小的一层网络层;
所述特征图获取模块,还用于获取第一图像分割网络层输出的所述第一帧的第一特征图,所述第一图像分割网络层为所述图像分割模型的所述中间网络层或位于所述图像分割模型的所述输入层和所述中间网络层之间的任意一层网络层;
所述特征图获取模块,还用于获取第二图像分割网络层输出的所述第二帧的第二特征图,所述第二图像分割网络层为位于所述图像分割模型的所述中间网络层和所述输出层之间的任意一层网络层;
训练模块,用于以所述第二帧的语义分割图像作为标注信息,将所述第一特征图和所述第二特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数,所述第一帧间融合模型是一种神经网络模型。
26.根据权利要求25所述的装置,其特征在于,所述特征图获取模块在将所述第二帧输入图像分割模型之后,还用于:
获取所述第一图像分割网络层输出的所述第二帧的第三特征图;
所述训练模块用于:
将所述第一特征图、所述第二特征图和所述第三特征图输入第一帧间融合模型,更新所述第一帧间融合模型的参数。
27.根据权利要求26所述的装置,其特征在于,所述训练模块用于:
以所述第三特征图为标注信息,将所述第一特征图输入第一邻帧预测模型,更新所述第一邻帧预测模型的参数。
28.根据权利要求27所述的装置,其特征在于,所述第一邻帧预测模型是一种所述卷积神经网络模型;
所述训练模块基于所述第一邻帧预测模型满足第一约束条件,还用于:
将所述第一特征图输入所述第一邻帧预测模型;
获取第一邻帧预测网络层输出的所述第一特征图的第一压缩特征图,所述第一邻帧预测网络层为所述第一邻帧预测模型的所述中间网络层或位于所述第一邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图和所述第二特征图输入第二帧间融合模型,更新所述第二帧间融合模型的参数。
29.根据权利要求28所述的装置,其特征在于,所述所述训练模块还用于:
以所述第一特征图为标注信息,将所述第三特征图输入第二邻帧预测模型,更新所述第二邻帧预测模型的参数。
30.根据权利要求29所述的装置,其特征在于,所述第二邻帧预测模型是一种所述卷积神经网络模型;
所述训练模块基于所述第二邻帧预测模型满足第二约束条件,还用于:
将所述第三特征图输入所述第二邻帧预测模型;
获取第二邻帧预测网络层输出的所述第三特征图的第二压缩特征图,所述第二邻帧预测网络层为所述第二邻帧预测模型的所述中间网络层或位于所述第二邻帧预测模型的所述输入层和所述中间网络层之间的任意一层网络层;
以所述第二帧的语义分割图像作为标注信息,将所述第一压缩特征图、所述第二压缩特征图和所述第二特征图输入所述第二帧间融合模型,更新所述第二帧间融合模型的参数。
31.一种计算机设备,其特征在于,包括处理器和存储器,所述处理器在运行所述存储器存储的计算机指令时,执行如权利要求1至15中任一项所述的方法。
32.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至15中任一项所述的方法。
33.一种计算机程序产品,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至15中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911177265.8A CN112862828B (zh) | 2019-11-26 | 2019-11-26 | 一种语义分割方法、模型训练方法及装置 |
PCT/CN2020/113206 WO2021103731A1 (zh) | 2019-11-26 | 2020-09-03 | 一种语义分割方法、模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911177265.8A CN112862828B (zh) | 2019-11-26 | 2019-11-26 | 一种语义分割方法、模型训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112862828A CN112862828A (zh) | 2021-05-28 |
CN112862828B true CN112862828B (zh) | 2022-11-18 |
Family
ID=75985054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911177265.8A Active CN112862828B (zh) | 2019-11-26 | 2019-11-26 | 一种语义分割方法、模型训练方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112862828B (zh) |
WO (1) | WO2021103731A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113570610B (zh) * | 2021-07-26 | 2022-05-13 | 北京百度网讯科技有限公司 | 采用语义分割模型对视频进行目标分割的方法、装置 |
CN113554640A (zh) * | 2021-07-30 | 2021-10-26 | 四川大学华西医院 | Ai模型的训练方法、使用方法、计算机设备及存储介质 |
CN113822147B (zh) * | 2021-08-04 | 2023-12-15 | 北京交通大学 | 一种协同机器语义任务的深度压缩方法 |
CN114972422B (zh) * | 2022-05-07 | 2024-06-07 | 安徽工业大学科技园有限公司 | 图像序列运动遮挡检测方法、装置、存储器和处理器 |
GB2622238A (en) * | 2022-09-07 | 2024-03-13 | Samsung Electronics Co Ltd | A method and device for personalised image segmentation and processing |
WO2024077463A1 (en) * | 2022-10-11 | 2024-04-18 | Intel Corporation | Sequential modeling with memory including multi-range arrays |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875900A (zh) * | 2017-11-02 | 2018-11-23 | 北京旷视科技有限公司 | 视频图像处理方法和装置、神经网络训练方法、存储介质 |
CN109377494A (zh) * | 2018-09-14 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 一种用于图像的语义分割方法和装置 |
US10318842B1 (en) * | 2018-09-05 | 2019-06-11 | StradVision, Inc. | Learning method, learning device for optimizing parameters of CNN by using multiple video frames and testing method, testing device using the same |
EP3506200A1 (en) * | 2016-08-26 | 2019-07-03 | Hangzhou Hikvision Digital Technology Co., Ltd. | Image segmentation method, apparatus, and fully convolutional network system |
CN110009598A (zh) * | 2018-11-26 | 2019-07-12 | 腾讯科技(深圳)有限公司 | 用于图像分割的方法和图像分割设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2555136A (en) * | 2016-10-21 | 2018-04-25 | Nokia Technologies Oy | A method for analysing media content |
CN108229336B (zh) * | 2017-12-13 | 2021-06-04 | 北京市商汤科技开发有限公司 | 视频识别及训练方法和装置、电子设备、程序和介质 |
-
2019
- 2019-11-26 CN CN201911177265.8A patent/CN112862828B/zh active Active
-
2020
- 2020-09-03 WO PCT/CN2020/113206 patent/WO2021103731A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3506200A1 (en) * | 2016-08-26 | 2019-07-03 | Hangzhou Hikvision Digital Technology Co., Ltd. | Image segmentation method, apparatus, and fully convolutional network system |
CN108875900A (zh) * | 2017-11-02 | 2018-11-23 | 北京旷视科技有限公司 | 视频图像处理方法和装置、神经网络训练方法、存储介质 |
US10318842B1 (en) * | 2018-09-05 | 2019-06-11 | StradVision, Inc. | Learning method, learning device for optimizing parameters of CNN by using multiple video frames and testing method, testing device using the same |
CN109377494A (zh) * | 2018-09-14 | 2019-02-22 | 阿里巴巴集团控股有限公司 | 一种用于图像的语义分割方法和装置 |
CN110009598A (zh) * | 2018-11-26 | 2019-07-12 | 腾讯科技(深圳)有限公司 | 用于图像分割的方法和图像分割设备 |
Non-Patent Citations (2)
Title |
---|
融合分割先验的多图像目标语义分割;廖旋等;《中国图象图形学报》;20190616(第06期);第48-59页 * |
面向机器视觉检测的CNN语义分割方法进展;黄坚等;《激光杂志》;20190525(第05期);第14-20页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112862828A (zh) | 2021-05-28 |
WO2021103731A1 (zh) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112862828B (zh) | 一种语义分割方法、模型训练方法及装置 | |
WO2022083536A1 (zh) | 一种神经网络构建方法以及装置 | |
WO2021120719A1 (zh) | 神经网络模型更新方法、图像处理方法及装置 | |
WO2021238366A1 (zh) | 一种神经网络构建方法以及装置 | |
CN112308200B (zh) | 神经网络的搜索方法及装置 | |
CN112990211B (zh) | 一种神经网络的训练方法、图像处理方法以及装置 | |
WO2022042713A1 (zh) | 一种用于计算设备的深度学习训练方法和装置 | |
CN110222717B (zh) | 图像处理方法和装置 | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN111402130A (zh) | 数据处理方法和数据处理装置 | |
CN114973049B (zh) | 一种统一卷积与自注意力的轻量视频分类方法 | |
CN113066018A (zh) | 一种图像增强方法及相关装置 | |
CN114359289A (zh) | 一种图像处理方法及相关装置 | |
CN111833360B (zh) | 一种图像处理方法、装置、设备以及计算机可读存储介质 | |
CN113284055A (zh) | 一种图像处理的方法以及装置 | |
CN113361549A (zh) | 一种模型更新方法以及相关装置 | |
CN113536970A (zh) | 一种视频分类模型的训练方法及相关装置 | |
CN113379045B (zh) | 数据增强方法和装置 | |
CN115131281A (zh) | 变化检测模型训练和图像变化检测方法、装置及设备 | |
CN115018039A (zh) | 一种神经网络蒸馏方法、目标检测方法以及装置 | |
WO2022179606A1 (zh) | 一种图像处理方法及相关装置 | |
CN113627421A (zh) | 一种图像处理方法、模型的训练方法以及相关设备 | |
WO2021057690A1 (zh) | 构建神经网络的方法与装置、及图像处理方法与装置 | |
WO2023029559A1 (zh) | 一种数据处理方法以及装置 | |
WO2022179599A1 (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 |