一种从视频中定位音源的方法与流程

文档序号:17443666发布日期:2019-04-17 05:10阅读:777来源:国知局

本发明提出一种从视频中定位音源的方法,属于跨模态学习领域。



背景技术:

近年来,随着网络和电视的流行,人们面对着越来越多的视频片段。视频中包含着丰富的声音和画面,寻找其中的关联在许多方面是有意义的,例如其可以使人类与机器的交互更加友好。自动地去发现和视频画面中的各个物体和声音之间的对应关系,从而帮助人们快速地了解视频中发音的部分,变得越来越重要。机器人也可以通过定位视频中的音源在许多场景例如救援等方面确定目标的位置。

目前在视频声源定位方面已有的工作大都是在像素级别来定位,利用卷积神经网络学习出声音和画面中的不同位置的关联,利用热力图在原来的图像中标记出可能发出声音的部分,这种方法定位的边缘模糊,定位精准度不高,并且在声音和画面不同步的视频帧仍然有定位信息。



技术实现要素:

本发明的目的是为克服已有技术的不足之处,提出一种从视频中定位音源的方法。本发明可以自动发现视频画面中的各个物体和声音之间的对应关系,定位准确率高,位置精确度高,有很高的应用价值。

本发明提出一种从视频中定位音源的方法,其特征在于,包括以下步骤:

(1)训练阶段;

(1-1)获取训练样本;获取j段视频作为训练样本,每个训练样本长度为10秒,对每个训练样本中所包含的物体类别进行标注;

(1-2)对步骤(1-1)获取的训练样本进行预处理;所述预处理包括视觉模态处理和声音模态处理;具体步骤如下:

(1-2-1)对每一个训练样本进行视觉模态处理,得到该训练样本对应的视觉特征;方法如下:

将任一训练样本10秒的视频数据进行1赫兹采样,得到对应的n=10帧图像;然后对每一帧图像进行目标检测,目标检测算法的输入为每一帧图像,输出为该帧图像对应的若干个目标检测框,将每个目标检测框对应的目标检测算法中全连接层的2048维特征取出作为该目标检测框的特征,则每帧图像的特征为该帧图像所有目标检测框的特征集合,每一个训练样本的视觉特征为该样本的n帧图像的特征集合;

记第i个训练样本的第n帧图像的第k个目标检测框的特征为n=1…n,k=1…k,i=1…j;其中,k为目标检测框的阈值个数,k=20;设当前图像帧的目标检测框的实际数量为m,若m<k,则用k-m个0向量来补全该帧图像的特征;若m≥k,则随机选取m个目标检测框中的k个目标检测框作为该帧图像的特征;得到每一帧图像的特征为k*2048维;

记录一个二进制的掩码表示第i个训练样本的第n帧图像的掩码,掩码的长度为k,其中i=1…j,n=1…n,若一帧图像共有l个有效的目标检测框,则该掩码的前l个值为1,其余的值为0,l≤k;

(1-2-2)对每一个的训练样本进行声音模态处理,得到该训练样本对应的声音特征;方法如下:

将任一训练样本的声音数据分割为10段,每一秒为一段,得到对应的n=10段声音,每一段声音对应该训练样本的一帧图像;对每段声音提取对应的梅尔声谱后,输入卷积神经网络vggish,并将vggish网络的全连接层的4096维特征进行主成分分析,将4096维的声音特征降至128维,得到该段声音的特征记为表示第i个训练样本的第n段声音的特征,n=1…n,i=1…j;则每个训练样本的声音特征为该样本的n段声音的特征集合;

(1-3)构建一个音源定位神经网络,该网络包括一个由全连接层构成的神经网络和一个定位网络,利用步骤(1-2)预处理完毕的训练样本对该音源定位神经网络进行训练,得到训练完毕的的音源定位神经网络;具体步骤如下:

(1-3-1)构建一个由全连接层构成的神经网络,该网络由一个视觉模态的全连接层、一个声音模态的全连接层和一个视觉模态和声音模态共享的全连接层构成;

(1-3-2)将每个训练样本视觉特征中各帧图像的各个目标检测框的2048维特征输入到视觉模态的全连接层,得到对应的中间表示再经过视觉模态和声音模态共享的全连接层得到公共子空间的128维视觉特征;将每个训练样本声音特征中每段声音的128维特征经过声音模态的全连接层,得到对应的中间表示再经过视觉模态和声音模态共享的全连接层得到公共子空间的128维声音特征;

表示公共子空间中第i个训练样本的第n帧图像的第k个目标检测框的视觉特征,其中i=1…j,n=1…10,k=1…k,表示公共子空间中第i个训练样本的第n段声音的声音特征,其中i=1…j,n=1…10;

(1-3-3)将所有公共子空间的视觉特征和声音特征输入到一个定位网络,该定位网络比较每个训练样本每一段声音的声音特征和这一段声音对应的图像中的各个目标检测框的视觉特征,比较操作采用余弦相似度来表示声音和各个目标检测框的相似度;令代表第i个训练样本第n帧图像的第k个目标检测框和该图像帧对应的1s声音的相似度,则定义其中表示的第k个分量,k=1…k,然后将每一帧图像的所有相似度标准化后使其和为1,得到标准化的相似度采用注意力机制将目标检测框的特征用标准化后的相似度加权求和,得到的特征来表示每帧图像为与声音相关的图像特征,表示为

在时域上平均分别得到每个训练样本的视频平均特征h′(i)和音频平均特征s′(i),表达式如下:

(1-3-4)分别设置分类损失函数和欧式距离损失函数,表达式如下:

其中,wi,bi,ws,bs为待学习的参数,为第i个训练样本的分类损失,为第i个训练样本的欧式距离损失;

(1-3-5)采用adam批训练梯度下降算法训练音源定位神经网络,对该神经网络迭代训练到达上限次数后停止,得到训练完毕的音源定位神经网络;

(2)测试阶段;

利用步骤(1)训练完毕的音源定位神经网络对测试视频进行音源定位,具体步骤如下:

(2-1)获取一条测试视频;

(2-2)重复步骤(1-2),对步骤(2-1)获取的测试视频进行预处理,得到该测试视频对应的视觉特征f′nk和声音特征g′n;

(2-3)将步骤(2-2)得到的视觉特征f′nk和声音特征g′n按帧将图像和声音对输入到步骤(1)训练完毕的音源定位神经网络中,并进行一次前向计算得到相似度,记d′nk代表测试视频的第n帧图像的第k个目标检测框和该帧图像对应的声音的相似度;

(2-4)设置一个阈值ton并进行判定:若测试视频中一帧图像中的声音和该帧图像的k个目标检测框视觉特征的相似度中的最大值大于该阈值,则认为该帧的图像和声音是同步的进入步骤(2-5);否则就认为该帧图像和声音是不同步的,该帧图像不进行音源定位;

(2-5)若该帧图像的声音和a个目标检测框的相似度大于ton,则该帧图像a个目标检测框中每个目标检测框中的物体发出了声音,1≤a≤k,音源定位结束。

本发明的特点及有益效果在于:

本发明利用目标检测技术提取候选框,并利用神经网络进行候选框的选取,有较高的精准度;并且本发明可以判断出声音和画面的同步性,只在同步的视频帧中进行音源的定位。本发明可以自动地去发现和视频画面中的各个物体和声音之间的对应关系,从而帮助用户快速地了解视频中发音的部分。本发明可以用于机器人领域,机器人可以通过定位视频中的音源在许多场景例如救援等方面可以确定目标的位置,有很高的应用价值。

具体实施方式

本发明提出一种从视频中定位音源的方法,下面结合具体实施例进一步详细说明如下。

本发明提出一种从视频中定位音源的方法,包括以下步骤:

(1)训练阶段;

(1-1)获取训练样本;从任意渠道获取j段视频作为训练样本,每个训练样本长度为10秒,训练样本视频的内容没有特殊要求,视频中需要包含多种不同物体类别,每个训练样本视频中的物体类别由人工进行标注;

本实施例中训练样本的视频来源是audioset数据集中的10个类别的视频,(包括汽车、摩托车、直升机、游艇、演讲、狗、猫、猪、闹钟、吉他),本实施例总共选取共j=32469个视频片段,每个视频片段长度10秒。

(1-2)对步骤(1-1)获取的训练样本进行预处理;所述预处理包括视觉模态处理和声音模态处理;具体步骤如下:

(1-2-1)对每一个训练样本进行视觉模态处理,得到该训练样本对应的视觉特征;方法如下:

将任一训练样本10秒的视频数据(即该视频的视觉部分,为不包括声音的视频画面)进行1赫兹采样,得到对应的n=10帧图像;然后对每一帧图像进行目标检测(本实施例采用的是基于resnet101的faster-rcnn在pascalvoc2007数据集上预训练的目标检测算法),目标检测算法的输入为每一帧图像,输出为该帧图像对应的数量不定的若干个目标检测框(目标检测框的数量与图像有关),将每个目标检测框对应的目标检测算法中全连接层的2048维特征(fc7层)取出作为该目标检测框的特征,则每帧图像的特征为该帧图像所有目标检测框的特征集合。每一个训练样本的视觉特征为该样本的n帧图像的特征的集合;

记第i个训练样本的第n帧图像的第k个目标检测框的特征为n=1…n,k=1…k,i=1…j。具体操作时为了便于张量的运算,将目标检测框的阈值个数固定为k=20个。设当前图像帧的目标检测框的实际数量为m,如果m<k,那么就用k-m个0向量来补全该帧图像的特征,如果m≥k,那么就随机选取m个目标检测框中的k个目标检测框作为该帧图像的特征,则每一帧图像的特征为k*2048维;同时为了区分补零的目标检测框和有效的目标检测框,记录一个二进制的掩码表示第i个训练样本的第n帧图像的掩码(掩码的长度为k)其中i=1…j,n=1…n,如果一帧图像共有l个有效的目标检测框,那么该掩码的前l个值为1,其余的值为0,l≤k。

(1-2-2)对每一个的训练样本进行声音模态处理,得到该训练样本对应的声音特征;方法如下:

将任一训练样本的声音数据分割为10段,每一秒为一段,得到对应的n=10段声音,每一段声音对应该训练样本的一帧图像。对每段声音提取对应的梅尔声谱后,输入经过谷歌提出的声音数据集audioset预训练的卷积神经网络vggish(谷歌公开的一个声音信号的卷积神经网络),并将vggish网络的全连接层(fc7层)的4096维特征进行主成分分析(pca),将4096维的声音特征降至128维,得到该段声音的特征记为表示第i个训练样本的第n段声音的特征,n=1…n,i=1…j。则每个训练样本的声音特征为该样本的n=10段声音的特征集合;

(1-3)构建一个音源定位神经网络,该网络包括一个由全连接层构成的神经网络和一个定位网络,利用步骤(1-2)预处理完毕的训练样本对该音源定位神经网络进行训练,得到训练完毕的的神经网络;具体步骤如下:

(1-3-1)构建一个由全连接层构成的神经网络,该网络由一个视觉模态的全连接层(由128个神经元组成,输入为2048维的视觉特征,输出为128维)、一个声音模态的全连接层(由128个神经元组成,输入为128维的声音特征,输出为128维)和一个视觉模态和声音模态共享的全连接层(由128个神经元组成,输入为128维,输出为128维)构成,将视觉特征输入视觉模态的全连接层并进而将视觉模态的全连接层的输出输入到视觉模态和声音模态共享的全连接层;将声音特征输入声音模态的全连接层并进而将声音模态的全连接层输出输入到视觉模态和声音模态共享的全连接层。这个网络的目的是为了将两个模态的特征表示映射到一个公共子空间,用来消除两个模态不同的数据特性带来的模态差异。

(1-3-2)将每个训练样本视觉特征中各帧图像的各个目标检测框的2048维特征输入到视觉模态的全连接层,得到对应的中间表示再经过视觉模态和声音模态共享的全连接层得到公共子空间的128维视觉特征。同样地,将每个训练样本声音特征中每段声音的128维特征经过声音模态的全连接层,得到对应的中间表示再经过视觉模态和声音模态共享的全连接层得到公共子空间的128维声音特征。在后面共同损失函数的约束下,我们认为在公共子空间中的两个模态的特征是可比较的,将表示公共子空间中第i个训练样本的第n帧图像的第k个目标检测框的视觉特征,其中i=1…j,n=1…10,k=1…k,表示公共子空间中第i个训练样本的第n段声音的声音特征,其中i=1…j,n=1…10。

(1-3-3)在得到了两个模态的公共子空间表示后,将所有公共子空间的视觉特征和声音特征输入到一个定位网络,该定位网络比较每个训练样本每一段声音的声音特征和这一段声音对应的图像中的各个目标检测框的视觉特征,比较操作采用余弦相似度来表示声音和各个目标检测框的相似度,相似度越高代表该声音由该目标检测框中的物体发出的可能性越大。令代表第i个训练样本第n帧图像的第k个目标检测框和该图像帧对应的1s声音的相似度,则定义其中表示的第k个分量,k=1…k,由于其中有一些无效的检测框的相似度是要被舍弃的,这时用到我们之前定义的掩码来乘这个相似度向量把无效检测框的相似度重新置零。然后将每一帧图像的所有相似度标准化后使其和为1,得到标准化的相似度采用注意力机制将目标检测框的特征用标准化后的相似度加权求和,得到的特征来表示每帧图像为与声音相关的图像特征,表示为

最后将在时域上平均分别得到每个训练样本的视频平均特征h′(i)和音频平均特征s′(i),表达式如下:

(1-3-4)设置两个损失函数来训练建立的音源定位神经网络,分别为分类损失函数和欧式距离损失函数,表达式如下:

其中,wi,bi,ws,bs为需要学习的参数,为第i个训练样本的分类损失,为第i个训练样本的欧式距离损失。

分类损失将施加注意力机制后的图像特征和公共子空间的声音特征在时域上平均后得到的两个特征,经过全连接层接softmax激活进行分类,分类的目的是使得公共子空间的特征仍然能保持语义上的可辨识性。欧式距离损失最小化这两个特征的距离,目的是使公共子空间能生成,使得相同语义的不同模态特征保持一致。

(1-3-5)训练整个音源定位神经网络,采用adam批训练梯度下降算法,本实施例使用的批量大小为512,对该神经网络迭代100000次后停止,得到训练完毕的音源定位神经网络。

(2)测试阶段;

利用步骤(1)训练完毕的音源定位神经网络对测试视频进行音源定位,具体步骤如下:

(2-1)获取一条任意来源任意长度的测试视频。

(2-2)重复步骤(1-2),对步骤(2-1)获取的测试视频进行预处理,得到该测试视频对应的视觉特征f′nk和声音特征g′n

(2-3)将步骤(2-2)得到的视觉特征f′nk和声音特征g′n按帧将图像和声音对输入到(1)训练完毕的音源定位神经网络中,并进行一次前向计算得到相似度,记d′nk代表测试视频的第n帧图像的第k个目标检测框和该帧图像对应的声音的相似度。

(2-4)设置一个阈值ton(范围为0-1,本实施例采用的0.2)并进行判定:若测试视频中一帧图像中的声音和该帧图像的k个目标检测框视觉特征的相似度中的最大值大于该阈值,则认为这一帧的图像和声音是同步的,即声音是由该帧图像中某一个目标检测框中的物体发出的,进入步骤(2-5);否则就认为该帧图像和声音是不同步的,该帧图像不进行音源定位(不同步就意味着判断为该声音不由图像中的物体发出)。

(2-5)如果(2-4)中检测到该测试视频的图像帧和对应的1s声音是同步的,那么就需要进一步判断声音是由哪一个或哪几个检测框中的物体发出的。若该帧图像的声音和某一个目标检测框的相似度大于ton,则认为该目标检测框中的目标物体发出了声音。若该帧图像的声音与多个目标检测框的相似度大于该阈值,则认为该帧图像中上述多个目标检测框中每个目标检测框中的物体发出了声音,音源定位结束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1