1.本发明涉及微流体分析领域,具体涉及一种基于视频目标追踪的微流体分析方法及装置。
背景技术:
2.在微流体领域中,分散相中气泡/液滴的大小、速度和形态等因素是影响物质传递、热量传递和化学反应速率的关键。现有的常用分析方法主要是基于激光的传感器方法。基于激光的传感器方法利用一组激光发射器产生具有一定波长的激光束并用相应的激光检测器接收激光并转化为电信号。当气泡/液滴遮挡住激光时,会导致激光检测器无法接收到相应的激光信号,因此产生的电信号也会出现相应的脉冲平台。结合脉冲平台时间长度和微流体的速度可以分析得到微流体中气泡/液滴的数量和大小等信息。
3.虽然基于激光的传感器方法使用广泛,但该方法仍具有很大的不足:1)当气泡/液滴数量较多时,激光束可能会穿过重叠的气泡,导致测得的气泡/液滴数量偏少、大小偏大;
4.2)设备复杂,包含发射源和检测器,测量前还需要进行大量设备调试工作;3)容易有小气泡/液滴因为激光强度弱造成的低信噪比而被漏检;4)难以对非球形气泡/液滴的大小、数量进行测量;5)只能测量在激光处的信息,无法对气泡/液滴进行一段时间内的追踪,从而获取单个气泡/液滴或整个气泡/液滴群的速度信息。
技术实现要素:
5.本公开的目的是为克服已有技术的不足之处,提出一种基于视频目标追踪的微流体分析方法及装置。本公开利用深度卷积神经网络,快速分析高速摄影机在微流体装置观察窗处拍摄微流体的视频,得到微流体装置中气泡/液滴的大小、速度和形态等相关视觉信息,运算速度快,分析结果准确,适用于大小不同的气泡/液滴。
6.本公开第一方面实施例提出一种基于视频目标追踪的微流体分析方法,包括:
7.获取微流体视频;
8.将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;
9.根据所述目标的追踪结果,对所述目标进行信息提取。
10.在本公开的一个具体实施例中,所述获取微流体视频还包括:
11.将所述视频的每一帧调整为设置的高度和宽度。
12.在本公开的一个具体实施例中,所述根据所述目标的追踪结果,对所述目标进行信息提取,包括:
13.1)提取目标的数量,具体方法为:
14.根据追踪结果中上标l的最大取值确定视频中出现的目标的数量,其中,表示第t帧中第l个目标的视频掩码矩阵,该矩阵为二值矩阵;
15.2)提取目标的大小,具体方法为:
16.选取任一目标距离视频帧中心点最近的一帧,对所述目标在该帧中的追踪结果提取边界,对所述边界利用椭圆曲线进行拟合,拟合得到的椭圆的长短轴平均值即为所述目标的测量直径;其中中取值为0的元素和取值为1元素的交界处构成边界;
17.3)提取目标的速度,具体方法为:
18.对任一目标在所述视频中对应的每个提取边界,对每个边界利用椭圆曲线进行拟合;记所述目标在第t帧时拟合椭圆的中心位置坐标为(x
l,t
,y
l,t
),令所述目标在视频中从第t1帧到第t2帧进行运动,视频的拍摄帧率fhz,则所述目标的速度计算表达式如下:
[0019][0020]
在本公开的一个具体实施例中,在所述根据预设的微流体视频目标追踪模型,获取所述视频中各帧的所述目标的追踪结果之前,还包括:
[0021]
训练所述微流体视频目标追踪模型;
[0022]
其中,所述训练所述微流体视频目标追踪模型包括:
[0023]
获取微流体视频数据集,对所述视频数据集中每条视频逐帧标注追踪目标;
[0024]
将所述视频数据集及对应标注结果组成标记数据集,将所述标记数据集划分为训练集和测试集;
[0025]
构建一个深度卷积目标追踪神经网络模型;
[0026]
利用所述训练集和测试集对所述模型进行训练,以得到训练完毕的模型作为微流体视频目标追踪模型。
[0027]
在本公开的一个具体实施例中,所述对所述视频数据集中每条视频逐帧标注追踪目标,包括:
[0028]
将所述视频数据集的各帧中出现的同一气泡或液滴标记为同一追踪目标;
[0029]
对每一帧中的每个追踪目标分别建立对应的真实标注二值矩阵,所述二值矩阵中取值为1的位置表示所述目标在对应视频帧中占据所述位置对应的像素点,所述二值矩阵中取值为0的位置表示所述目标在对应视频帧中未占据所述位置对应的像素点;
[0030]
对每一帧中的每个追踪目标分别建立对应的真实尺寸框,所述真实尺寸框为包含所述目标真实标注二值矩阵中所有取值为1位置对应像素点的最小矩形框。
[0031]
在本公开的一个具体实施例中,所述深度卷积目标追踪神经网络模型包括:特征提取单元、候选区域提出单元和输出单元;其中,所述特征提取单元用于提取输入的当前视频帧的特征矩阵;所述候选区域用于根据特征矩阵和真实尺寸框,从候选的标准尺寸框中选出候选尺寸框并计算每个候选尺寸框对应的目标特征矩阵;所述输出单元用于根据候选候选尺寸框对应的目标特征矩阵,结合所述当前视频帧的前一帧,获取所述当前视频帧中目标的追踪结果。
[0032]
在本公开的一个具体实施例中,所述利用所述训练集和测试集对所述模型进行训练,以得到训练完毕的模型作为微流体视频目标追踪模型,包括:
[0033]
1)对训练集和测试集中每条视频进行预处理,所述预处理包括对每条视频的每一
帧进行标准化处理和归一化处理;
[0034]
所述标准化处理包括设置每条视频的统一的像素高度和宽度分别为h和w;
[0035]
所述归一化处理包括对每条视频中每一帧的各像素值进行归一化;
[0036]
2)从预处理完毕的训练集中随机选取一个批次的视频帧,将所述一个批次的视频帧作为当前视频帧集合输入深度卷积目标追踪神经网络模型;
[0037]
将当前视频帧集合中每一帧对应的前一帧作为参考帧,所有参考帧组成参考帧集合,将参考帧集合输入深度卷积目标追踪神经网络模型;
[0038]
当前视频帧集合和参考帧集合输入深度卷积目标追踪神经网络模型后,该模型中的特征提取单元对每个当前视频帧输出为一个大小为hs×ws
的特征矩阵;
[0039]
3)每个特征矩阵输出到候选区域提出单元,候选区域提出单元对特征矩阵的每个位置提出k个标准尺寸框;
[0040]
通过计算标准尺寸框与真实尺寸框之间的交并比iou,构建训练时的正样本和负样本;其中,视频帧中任意两个尺寸框t和g之间的iou计算表达式如下:
[0041][0042]
式中,area(g和area(t)分别代表尺寸框g和尺寸框t所占像素点的集合;
[0043]
若任一标准尺寸框与该帧所有真实尺寸框之间的交并比的最大值大于设定的正样本阈值iou
pos
,则该标准尺寸框为一个正样本;否则该标准尺寸框为一个负样本;
[0044]
4)候选区域提出单元输出每个标准尺寸框区域包含目标的概率以及该标准尺寸框相对于其对应真实尺寸框中心点和长宽的坐标偏移量1≤i≤ws,1≤j≤hs,1≤l≤k,其中i代表特征矩阵中的列位置,j代表特征矩阵中的行位置,l代表标准尺寸框的序号;和分别为第l个标准尺寸框左上点相对于对应真实尺寸框左上点的横坐标和纵坐标偏差,和分别为第l个标准尺寸框相对于对应真实尺寸框高和宽的偏差;
[0045]
对于作为正样本的标准尺寸框,将该标准尺寸框对应的的真实值记为1;对于作为负样本的标准尺寸框,将该标准尺寸框对应的的真实值记为0;
[0046]
将概率小于设定概率阈值η
proposal
的标准尺寸框舍弃,保留的标准尺寸框按照对应的进行偏移,将偏移后的标准尺寸框作为候选尺寸框;
[0047]
5)对各候选尺寸框按照对应的从大到小的顺序进行排序,排序后从第1个候选尺寸框开始,依次将每个候选尺寸框作为当前候选尺寸框,去掉当前候选尺寸框之后序列中所有候选尺寸框中与当前候选尺寸框iou大于设定的交并比阈值iou
overlap
的候选尺寸框;遍历完成后,将每个保留的候选尺寸框对应的特征矩阵区域归一化到大小为s
×
s的目标特征矩阵,5≤s≤9;
[0048]
6)将目标特征矩阵输入到输出单元,所述输出单元包含判断回归、掩码判断、目标嵌入三个子单元;
[0049]
其中,判断回归子单元对每个目标特征矩阵对应的候选尺寸框计算包含目标的概
率p
′
l
和该候选尺寸框相对于对应真实尺寸框中心点和长宽的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
),1≤l≤n
l
,n
l
为模型候选区域提出单元保留的候选尺寸框数量,保留p
′
l
大于设定的保留概率阈值η
′
proposal
的候选尺寸框所对应的目标特征矩阵;对保留的目标特征矩阵,通过将该目标特征矩阵对应的候选尺寸框的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
)加在(x
′
l
,y
′
l
,h
′
l
,w
′
l
)上对该目标特征矩阵进行修正;其中,δx
′
l
和δy
′
l
为标准尺寸框左上点相对于真实尺寸框左上点的横坐标和纵坐标偏差,δh
′
l
和δw
′
l
为标注尺寸框相对于真实尺寸框高和宽的偏差;
[0050]
掩码判断子单元将经过判断回归子单元后的目标特征矩阵转化为数值在0到1之间的一个掩码矩阵1≤i≤s,1≤j≤s,将掩码矩阵值大于设定的掩码概率η
mask
的位置对应在输入视频帧中的像素点作为对应目标占据的像素点;
[0051]
目标嵌入子单元将经过判断回归子单元后的目标特征矩阵展开成向量后进行压缩至256维并归一化;将参考帧的第m个向量与当前帧中的第n个向量进行点乘得到分数矩阵s
m,n
,s
m,n
中保留数值大于设定的向量阈值η
track
的部分,其余部分置为0;按照s
m,n
中数值从大到小的顺序寻找并标记相邻两帧中出现同一目标,实现在视频中对目标的追踪;
[0052]
7)根据损失函数计算模型输出与真实标注之间的误差;
[0053]
其中,损失函数表达式如下:
[0054][0055]
其中,n
p
为当前帧最后保留的候选框数量,nc为前一帧最后保留的候选框数量;
[0056]
8)重复步骤2)至7),将训练集中的每条视频帧输入当前模型并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到当前训练完毕的模型记为model
old
;
[0057]
9)将测试集中的每条视频帧输入model
old
进行测试,得到测试集上的平均损失loss
old
;然后将model
old
作为新的当前模型;
[0058]
10)重复步骤2)至7),将训练集中的每条视频帧输入model
old
并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到更新后的当前训练完毕的模型记为model
new
;
[0059]
11)将测试集中的每条视频帧输入model
new
进行测试,得到测试集上的平均损失记作loss
new
;
[0060]
12)训练停止判定:
[0061]
若loss
new
≤loss
old
,则将当前model
new
模型记为新的model
old
,将当前loss
new
记为loss
old
,然后重新返回10);
[0062]
若loss
new
>loss
old
,则停止模型训练并将当前model
old
作为最后训练完毕的微流体视频目标追踪模型。
[0063]
本公开第二方面实施例提出一种基于视频目标追踪的微流体分析装置,包括:
[0064]
获取模块,用于获取微流体视频;
[0065]
微流体追踪模块,用于将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;
[0066]
分析模块,用于根据所述目标的追踪结果,对所述目标进行信息提取。
[0067]
本公开第三方面实施例提出一种电子设备,包括:
[0068]
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
[0069]
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述一种基于视频目标追踪的微流体分析方法。
[0070]
本公开第四方面实施例提出一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述一种基于视频目标追踪的微流体分析方法。
[0071]
本公开的特点及有益效果在于:
[0072]
本公开利用计算机视觉领域的目标追踪技术,将不同的气泡/液滴提取到不同的一系列二值矩阵,反映其在整个视频中不同时刻占据的像素位置。本公开不需要手动设计气泡/液滴的静态或动态特征,能够通过卷积神经网络的反向传播算法自动学习有效识别气泡/液滴的模型参数。此外,本公开能够使用不同尺寸的视频输入,能在不同微流体体系下使用,可以实现气泡/液滴在视频中的全程追踪,充分提取气泡/液滴的数量、大小信息,并且还能获取气泡/液滴的轮廓和速度信息。
附图说明
[0073]
图1为本公开实施例中一种基于视频目标追踪的微流体分析方法的整体流程图;
[0074]
图2为本公开一个具体实施例的标准尺寸框,真实尺寸框和预测候选框示意图;
[0075]
图3为本公开一个具体实施例的单帧多目标检测结果示意图;
[0076]
图4为本公开一个具体实施例的多帧目标追踪示意图。
具体实施方式
[0077]
本公开提出一种基于视频目标追踪的微流体分析方法及装置,下面结合附图和具体实施例进一步详细说明。
[0078]
本公开第一方面实施例提出一种基于视频目标追踪的微流体分析方法,整体流程如图1所示,包括以下步骤:
[0079]
1)利用高速摄影机收集n条气泡或液滴的彩色视频数据构成视频数据集f
video
,其中每条视频的帧率为fhz,拍摄时长t秒,n应不低于20;
[0080]
本公开一个具体实施例中,n=32,每条拍摄的视频的帧率为f=90hz,t=10秒;
[0081]
2)对步骤1)得到的视频数据集f
video
中的每条视频逐帧进行标注,并将所有帧中出现的同一气泡或液滴标记为同一个体,对每一帧中出现的每个气泡或液滴分别建立对应的真实标注二值矩阵,每个二值矩阵中取值为1的位置表示该气泡或液滴在对应帧中占据了该位置对应的像素点,该二值矩阵中取值为0的位置表示该气泡或液滴在对应帧中未占据该位置对应的像素点。对每一帧中每个气泡或液滴,将包含其对应二值矩阵中所有取值为1的位置的像素点的最小矩形框被记为该气泡或液滴的真实尺寸框。将每一帧中每个气泡或液滴对应的真实标注二值矩阵和真实尺寸框保存为一个json文件;
[0082]
将f
video
中每条视频和该视频对应的json文件组成一个样本,所有样本构成标记数据集f
annotation
。
[0083]
3)对步骤2)中得到的标记数据集f
annotation
的所有样本进行随机划分,得到训练集f
train
和测试集f
test
,其中训练集f
train
占据f
annotation
的比例为r,0.5≤r≤0.8;
[0084]
本公开一个具体实施例中,训练集f
train
占f
annotation
的比例为r=0.75,f
train
包含24条视频用于模型训练,f
test
包含8条视频用于模型测试;
[0085]
4)构建一个深度卷积目标追踪神经网络模型并对模型进行训练,将训练完毕的模型作为微流体视频目标追踪模型;具体步骤如下:
[0086]
4-1)对训练集f
train
和测试集f
test
中每条视频进行预处理,所述预处理包括对每条视频的每一帧图像进行标准化和归一化;
[0087]
本公开实施例中,所述标准化处理包括设置每条视频的统一的像素高度和宽度分别为h和w,150≤h≤800,150≤w≤800,颜色通道数c=3;
[0088]
所述归一化处理包括对每条视频中每一帧的各像素值进行归一化;其中,对任意视频第t帧第c个通道中坐标为(i,j)的像素值i(t,c,i,j),0≤i(t,c,i,j)≤255,按照式(1)中的操作得到归一化后的像素值i
′
(t,c,i,j),0≤i
′
(t,c,i,j)≤1:
[0089][0090]
本公开一个具体实施例中,设置视频的标准像素高度和宽度分别为h=200,w=640,通道数c=3;按照式(1)对缩放图片的像素数据进行归一化处理,使像素值在0~1之间。
[0091]
4-2)随机初始化一个深度卷积目标追踪神经网络模型,该模型包括特征提取单元、候选区域提出单元和输出单元;其中特征提取单元由卷积层和池化层组合形成,本公开一个具体实施例中特征提取单元包括5个池化层和每个池化层之前的2~5个卷积层;候选区域提出单元包括2个全连接层;
[0092]
4-3)对深度卷积目标追踪神经网络模型的参数进行训练,得到训练完毕的模型;具体包括:
[0093]
4-3-1)从经过步骤4-1)预处理完毕训练集中的随机选取一个批次的视频帧,将所述一个批次的视频帧作为当前视频帧集合输入深度卷积目标追踪神经网络模型;同时,将当前视频帧集合中每一帧对应的前一帧作为参考帧,所有参考帧组成参考帧集合,将参考帧集合输入深度卷积目标追踪神经网络模型。将批次的大小记为batch,则每次输入的当前视频帧集合和参考帧集合的大小均为batch
×h×w×
c,本公开一个具体实施例中batch=4。
[0094]
当前视频帧集合和参考帧集合输入深度卷积目标追踪神经网络模型后,该模型中的特征提取单元针对每个当前视频帧输出为一个大小为hs×ws
的特征矩阵,本公开一个具体实施例中,hs=10,ws=32。
[0095]
4-3-2)特征提取单元计算完成后的输出结果被连接到候选区域提出单元,对每个视频帧对应特征矩阵的每个位置提出k个标准尺寸框。本公开实施例中,标准尺寸框的面积为s
p
,1024<s
p
<16384;标准尺寸框的高宽比为r
p
,0.5<r
p
<2。
[0096]
为构建训练时的正样本和负样本,每一视频帧中的各标准尺寸框会首先与各真实尺寸框之间计算交并比(iou,intersection-over-union);
[0097]
本公开实施例中,视频帧中任意两个尺寸框t和g之间的iou计算表达式如式(2)所示:
[0098][0099]
需要说明的是,计算交并比的标准尺寸框和真实尺寸框需要在同一视频帧中。其中area(g)和area(t)分别代表尺寸框g和尺寸框t所占像素点的集合。任一标准尺寸框的最大iou大于设定的正样本阈值iou
pos
(本公开实施例中,0.5<iou
pos
<0.9),则认为该标准尺寸框为一个正样本;否则,该标准尺寸框为一个负样本。其中,最大iou为该标准尺寸框与同一帧中各真实尺寸框计算交并比的最大值。
[0100]
4-3-3)候选区域提出单元输出每个标准尺寸框区域包含目标气泡或液滴的概率以及该标准尺寸框相对于其对应真实尺寸框中心点和长宽的坐标偏移量1≤i≤ws,1≤j≤hs,1≤l≤k,其中i代表特征矩阵中的列位置,j代表特征矩阵中的行位置,l代表标准尺寸框的序号。和分别为第l个标准尺寸框左上点相对于真实尺寸框左上点的横坐标和纵坐标偏差,和分别为第l个标准尺寸框相对于真实尺寸框高和宽的偏差。
[0101]
对于正样本的标准尺寸框,将该标准尺寸框对应的的真实值记为1;对于负样本的标准尺寸框,将该标准尺寸框对应的的真实值记为0;
[0102]
将概率小于设定概率阈值η
proposal
(0.5<η
proposal
<0.8)的标准尺寸框舍弃,保留的标准尺寸框会按计算的偏移量进行偏移,将偏移后的标准尺寸框作为候选尺寸框。
[0103]
本公开一个具体实施例中,所述概率阈值η
proposal
取0.7。图2为本公开一个具体实施例的标准尺寸框,真实尺寸框和预测候选框示意图。如图2所示,图2(a)代表为输入的视频帧,右侧图2(b)为该视频帧对应的特征矩阵;
[0104]
4-3-4)和计算完成后,按照筛选后的各候选尺寸框对应的从大到小的顺序排查所有候选尺寸框,从第1个候选尺寸框开始,依次将每个候选尺寸框作为当前候选尺寸框,去掉当前候选尺寸框之后序列中的所有候选尺寸框中与当前候选尺寸框iou大于设定的交并比阈值iou
overlap
的候选尺寸框(其中,交并比的计算仍采用式(2));遍历完成后(最后一个直接保留),将每个保留的候选尺寸框对应的特征矩阵区域(指
该视频帧的特征矩阵对应的该候选尺寸框范围的那一部分)归一化到大小为s
×
s,5≤s≤9的目标特征矩阵。需要说明的是,当遍历候选尺寸框直至最后一个候选尺寸框时,最后一个候选尺寸框直接保留;如果保留多个候选尺寸框,则该视频帧会得到多个目标特征矩阵。
[0105]
本公开一个具体实施例中,构建训练时的正负样本的交并比阈值iou
pos
取0.7,iou
overlap
=0.6,s=9。
[0106]
4-3-5)将步骤4-3-4)输出的目标特征矩阵输入到输出单元,所述输出单元包含判断回归、掩码判断、目标嵌入三个子单元。
[0107]
其中,判断回归子单元对每个目标特征矩阵对应的的候选尺寸框计算包含气泡或液滴的概率p
′
l
和该候选尺寸框相对于原始视频帧中真实尺寸框中心点和长宽的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
),1≤l≤n
l
,n
l
为模型候选区域提出单元保留的候选尺寸框数量,保留p
′
l
大于设定的保留概率阈值η
′
proposal
(0.5<η
′
proposal
<0.8)的候选尺寸框所对应的目标特征矩阵;对保留的目标特征矩阵,按照其对应的候选尺寸框的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
)加在(x
′
l
,y
′
l
,h
′
l
,w
′
l
)上对其进一步修正,,然后输出值掩码判断子单元;其中,δx
′
l
和δy
′
l
为标准尺寸框左上点相对于真实尺寸框左上点的横坐标和纵坐标偏差,δh
′
l
和δw
′
l
为标注尺寸框相对于真实尺寸框高和宽的偏差。
[0108]
掩码判断子单元包含2~4个卷积层和sigmoid激活函数,将经过判断回归子单元后的目标特征矩阵转化为数值在0到1之间的一个掩码矩阵1≤i≤s,1≤j≤s,将掩码矩阵值大于设定的掩码概率η
mask
(0.5<η
mask
<0.8)的位置对应在原视频帧中的像素点作为对应目标占据的像素点。其中sigmoid计算公式(3)如下:
[0109][0110]
所述目标嵌入子单元包含2~4个卷积层和1个全连接层,经过判断回归子单元后的目标特征矩阵经过目标嵌入子单元的卷积层被展开成向量并被全连接层压缩到一个256维的向量并被归一化。对于任一当前帧,参考帧的第m个向量会与当前帧中的第n个向量做点乘,从而计算分数矩阵s
m,n
,s
m,n
仅会保留数值大于设定的向量阈值η
track
(0.5<η
′
proposal
<0.8)的部分,其余部分置为0。之后,按照s
m,n
中数值从大到小的顺序寻找并标记相邻两帧中出现同一目标,实现在视频中对目标的追踪。
[0111]
本公开一个具体实施例中,如图3所示,视频帧中n
l
=3,保留p
′
l
大于η
′
proposal
,η
′
proposal
=0.5的目标特征矩阵,按照坐标偏移量对候选框进一步回归。
[0112]
掩码判断子单元包含2~4个卷积层和sigmoid激活函数,将经过判断回归子单元后的目标特征矩阵转化为数值在0到1之间的一个掩码矩阵1≤i≤s,1≤j≤s,实施例的三个掩码矩阵对应回原视频中为之后如图3右侧所示,其中三个目标特征矩阵经过筛选都得到保留。
[0113]
目标嵌入子单元计算分数矩阵s
m,n
,s
m,n
仅会保留数值大于η
track
=0.7的部分,其余部分置为0。之后,按照s
mn
中数值从大到小的顺序寻找并标记相邻两帧中出现同一目标,实现在视频中对目标的追踪。
[0114]
4-3-6)根据损失函数计算模型输出与真实标注之间的误差;
[0115]
根据步骤4-3-5)计算任意帧的标准尺寸框概率和相对于真实尺寸框的坐标偏移
量以及步骤4-3-5)中输出单元计算的候选框概率和相对于真实尺寸框的坐标偏移量(p
′
l
,δx
′
l
,δy
′
l
,δw
′
l
,δh
′
l
)、掩码矩阵和分数矩阵s
m,n
。利用如式(3)所示的损失函数计算以上预测信息与它们对应的真实值式(3)所示的损失函数计算以上预测信息与它们对应的真实值式(3)所示的损失函数计算以上预测信息与它们对应的真实值和损失函数定义如下:
[0116][0117]
其中,n
p
为当前帧最后保留的候选框数量,nc为前一帧最后保留的候选框数量。
[0118]
4-3-7)重复步骤4-3-1)至4-3-6),将训练集f
train
中的每条视频帧输入当前模型并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到当前训练完毕的模型记为model
old
;
[0119]
4-3-8)将测试集f
test
中的每条视频帧输入model
old
进行测试,得到测试集上的平均损失loss
old
;然后将model
old
作为新的当前模型;
[0120]
4-3-9)重复步骤4-3-1)至4-3-6),将训练集f
train
中的每条视频帧输入model
old
并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到更新后的当前训练完毕的模型记为model
new
;
[0121]
4-3-10)将测试集f
test
中的每条视频帧输入model
new
进行测试,得到测试集上的平均损失记作loss
new
;
[0122]
4-3-11)训练停止判定:
[0123]
若loss
new
≤loss
old
,则将当前model
new
模型记为新的model
old
,将当前loss
new
记为loss
old
,然后重新返回4-3-9);
[0124]
若loss
new
>loss
old
,则停止模型训练并将当前model
old
作为最后训练完毕的微流体视频目标追踪模型输出;
[0125]
5)利用步骤4)中训练完毕的微流体视频目标追踪模型进行目标追踪;
[0126]
任意获取一条彩色视频,将该视频的每一帧的高度h和宽度w调整到150≤h≤800,150≤w≤800;需要说明的是,实际应用时获取的视频尺寸不一定需要与训练时一致,但一致的话效果比较好。
[0127]
将调整后的视频输入到微流体视频目标追踪模型中,模型输出该视频中各帧中存在气泡或液滴的标准尺寸框对应的掩码矩阵和每一帧的分数矩阵将按照其在所属帧对应特征矩阵中第i行第j列的位置对应回原视频中得到该气泡或液滴在该帧中的
视频掩码矩阵结合分数矩阵从输入视频的开始帧到结束帧,将当前帧与参考帧中检测到的同一气泡或液滴的视频掩码矩阵叠放在一起,最后得到输入视频中出现的气泡或液滴在各帧中的视频掩码矩阵组成的序列,其反映了气泡/液滴在整个视频空间中的像素信息。其中,l代表标准尺寸框的序号,t代表视频帧的序号。
[0128]
图4为本公开实施例中某一目标的前后三个时刻的原视频和视频掩码矩阵示例;其中,左侧代表原视频帧,右侧代表对应的视频掩码矩阵。
[0129]
6)对步骤5)中的目标追踪结果进行信息提取。
[0130]
6-1)提取气泡或液滴的数量
[0131]
根据目标追踪结果中上标l的最大取值确定视频中出现的气泡数量,图3所示视频帧的l最大为3,共3个气泡出现在当前帧中。
[0132]
6-2)提取气泡或液滴的大小
[0133]
对第l个气泡/液滴在第t帧的目标追踪结果提取边界,因为为二值矩阵,可以直接将取值为0和取值为1元素的交界处认为是边界,然后对此边界使用椭圆曲线进行拟合。选取此气泡/液滴距离视频帧中心点最近的一帧,将此帧中拟合椭圆的长短轴平均值作为此气泡/液滴的测量直径。
[0134]
在本公开的一个具体实施例中,如图4所示气泡直径的测量值为0.62毫米。
[0135]
6-3)提取气泡或液滴的速度
[0136]
按步骤6-2)的方法对所有气泡或液滴的目标追踪结果在所有帧上提取边界并用椭圆曲线拟合,记所述目标在第t帧时拟合椭圆的中心位置坐标为(x
l,t
,y
l,t
)。假设第l个气泡/液滴在视频中从第t1帧至第第t2帧进行运动,视频的拍摄帧率fhz,按照式(4)可以计算出第l个气泡/液滴在视野内的速度为式(4):
[0137][0138]
本公开一个具体实施例中,通过位置确定气泡在第10帧开始移动,在第31帧离开视野,按照公式(4)计算得到此气泡速度为11.56毫米/秒。
[0139]
为实现上述实施例,本公开第二方面实施例提出一种基于视频目标追踪的微流体分析装置,包括:
[0140]
获取模块,用于获取微流体视频;
[0141]
微流体追踪模块,用于将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;
[0142]
分析模块,用于根据所述目标的追踪结果,对所述目标进行信息提取。
[0143]
为实现上述实施例,本公开第三方面实施例提出一种电子设备,包括:
[0144]
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
[0145]
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述一种基于视频目标追踪的微流体分析方法。
[0146]
为实现上述实施例,本公开第四方面实施例提出一种计算机可读存储介质,所述
计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述一种基于视频目标追踪的微流体分析方法。
[0147]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0148]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例的一种基于视频目标追踪的微流体分析方法。
[0149]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0150]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0151]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三
个等,除非另有明确具体的限定。
[0152]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0153]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
[0154]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0155]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0156]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0157]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
技术特征:
1.一种基于视频目标追踪的微流体分析方法,其特征在于,包括:获取微流体视频;将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;根据所述目标的追踪结果,对所述目标进行信息提取。2.根据权利要求1所述的方法,其特征在于,所述获取微流体视频还包括:将所述视频的每一帧调整为设置的高度和宽度。3.根据权利要求1所述的方法,其特征在于,所述根据所述目标的追踪结果,对所述目标进行信息提取,包括:1)提取目标的数量,具体方法为:根据追踪结果中上标l的最大取值确定视频中出现的目标的数量,其中,表示第t帧中第l个目标的视频掩码矩阵,该矩阵为二值矩阵;2)提取目标的大小,具体方法为:选取任一目标距离视频帧中心点最近的一帧,对所述目标在该帧中的追踪结果提取边界,对所述边界利用椭圆曲线进行拟合,拟合得到的椭圆的长短轴平均值即为所述目标的测量直径;其中中取值为0的元素和取值为1元素的交界处构成边界;3)提取目标的速度,具体方法为:对任一目标在所述视频中对应的每个提取边界,对每个边界利用椭圆曲线进行拟合;记所述目标在第t帧时拟合椭圆的中心位置坐标为令所述目标在视频中从第t1帧到第t2帧进行运动,视频的拍摄帧率fhz,则所述目标的速度计算表达式如下:4.根据权利要求1所述的方法,其特征在于,在所述根据预设的微流体视频目标追踪模型,获取所述视频中各帧的所述目标的追踪结果之前,还包括:训练所述微流体视频目标追踪模型;其中,所述训练所述微流体视频目标追踪模型包括:获取微流体视频数据集,对所述视频数据集中每条视频逐帧标注追踪目标;将所述视频数据集及对应标注结果组成标记数据集,将所述标记数据集划分为训练集和测试集;构建一个深度卷积目标追踪神经网络模型;利用所述训练集和测试集对所述模型进行训练,以得到训练完毕的模型作为微流体视频目标追踪模型。5.根据权利要求4所述的方法,其特征在于,所述对所述视频数据集中每条视频逐帧标注追踪目标,包括:将所述视频数据集的各帧中出现的同一气泡或液滴标记为同一追踪目标;对每一帧中的每个追踪目标分别建立对应的真实标注二值矩阵,所述二值矩阵中取值
为1的位置表示所述目标在对应视频帧中占据所述位置对应的像素点,所述二值矩阵中取值为0的位置表示所述目标在对应视频帧中未占据所述位置对应的像素点;对每一帧中的每个追踪目标分别建立对应的真实尺寸框,所述真实尺寸框为包含所述目标真实标注二值矩阵中所有取值为1位置对应像素点的最小矩形框。6.根据权利要求5所述的方法,其特征在于,所述深度卷积目标追踪神经网络模型包括:特征提取单元、候选区域提出单元和输出单元;其中,所述特征提取单元用于提取输入的当前视频帧的特征矩阵;所述候选区域用于根据特征矩阵和真实尺寸框,从候选的标准尺寸框中选出候选尺寸框并计算每个候选尺寸框对应的目标特征矩阵;所述输出单元用于根据候选候选尺寸框对应的目标特征矩阵,结合所述当前视频帧的前一帧,获取所述当前视频帧中目标的追踪结果。7.根据权利要求6所述的方法,其特征在于,所述利用所述训练集和测试集对所述模型进行训练,以得到训练完毕的模型作为微流体视频目标追踪模型,包括:1)对训练集和测试集中每条视频进行预处理,所述预处理包括对每条视频的每一帧进行标准化处理和归一化处理;所述标准化处理包括设置每条视频的统一的像素高度和宽度分别为h和w;所述归一化处理包括对每条视频中每一帧的各像素值进行归一化;2)从预处理完毕的训练集中随机选取一个批次的视频帧,将所述一个批次的视频帧作为当前视频帧集合输入深度卷积目标追踪神经网络模型;将当前视频帧集合中每一帧对应的前一帧作为参考帧,所有参考帧组成参考帧集合,将参考帧集合输入深度卷积目标追踪神经网络模型;当前视频帧集合和参考帧集合输入深度卷积目标追踪神经网络模型后,该模型中的特征提取单元对每个当前视频帧输出为一个大小为h
s
×
w
s
的特征矩阵;3)每个特征矩阵输出到候选区域提出单元,候选区域提出单元对特征矩阵的每个位置提出k个标准尺寸框;通过计算标准尺寸框与真实尺寸框之间的交并比iou,构建训练时的正样本和负样本;其中,视频帧中任意两个尺寸框t和g之间的iou计算表达式如下:式中,area(g)和area(t)分别代表尺寸框g和尺寸框t所占像素点的集合;若任一标准尺寸框与该帧所有真实尺寸框之间的交并比的最大值大于设定的正样本阈值iou
pos
,则该标准尺寸框为一个正样本;否则该标准尺寸框为一个负样本;4)候选区域提出单元输出每个标准尺寸框区域包含目标的概率以及该标准尺寸框相对于其对应真实尺寸框中心点和长宽的坐标偏移量相对于其对应真实尺寸框中心点和长宽的坐标偏移量其中i代表特征矩阵中的列位置,j代表特征矩阵中的行位置,l代表标准尺寸框的序号;和分别为第l个标准尺寸框左上点相对于对应真实尺寸框左上点的横坐标和纵坐标偏差,和分别为第l个标准尺寸框相对于对应真实尺
寸框高和宽的偏差:对于作为正样本的标准尺寸框,将该标准尺寸框对应的的真实值记为1;对于作为负样本的标准尺寸框,将该标准尺寸框对应的的真实值汜为0;将概率小于设定概率阈值η
proposal
的标准尺寸框舍弃,保留的标准尺寸框按照对应的进行偏移,将偏移后的标准尺寸框作为候选尺寸框;5)对各候选尺寸框按照对应的从大到小的顺序进行排序,排序后从第1个候选尺寸框开始,依次将每个候选尺寸框作为当前候选尺寸框,去掉当前候选尺寸框之后序列中所有候选尺寸框中与当前候选尺寸框iou大于设定的交并比阈值iou
overlap
的候选尺寸框;遍历完成后,将每个保留的候选尺寸框对应的特征矩阵区域归一化到大小为s
×
s的目标特征矩阵,5≤s≤9;6)将目标特征矩阵输入到输出单元,所述输出单元包含判断回归、掩码判断、目标嵌入三个子单元;其中,判断回归子单元对每个目标特征矩阵对应的候选尺寸框计算包含目标的概率p
′
l
和该候选尺寸框相对于对应真实尺寸框中心点和长宽的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
),1≤l≤n
l
,n
l
为模型候选区域提出单元保留的候选尺寸框数量,保留p
′
l
大于设定的保留概率阈值η
′
proposal
的候选尺寸框所对应的目标特征矩阵;对保留的目标特征矩阵,通过将该目标特征矩阵对应的候选尺寸框的偏移量(δx
′
l
,δy
′
l
,δh
′
l
,δw
′
l
)加在(x
′
l
,y
′
l
,h
′
l
,w
′
l
)上对该目标特征矩阵进行修正;其中,δx
′
l
和δy
′
l
为标准尺寸框左上点相对于真实尺寸框左上点的横坐标和纵坐标偏差,δh
′
l
和δw
′
l
为标注尺寸框相对于真实尺寸框高和宽的偏差;掩码判断子单元将经过判断回归子单元后的目标特征矩阵转化为数值在0到1之间的一个掩码矩阵将掩码矩阵值大于设定的掩码概率η
mask
的位置对应在输入视频帧中的像素点作为对应目标占据的像素点;目标嵌入子单元将经过判断回归子单元后的目标特征矩阵展开成向量后进行压缩至256维并归一化;将参考帧的第m个向量与当前帧中的第n个向量进行点乘得到分数矩阵s
m,n
,s
m,n
中保留数值大于设定的向量阈值η
track
的部分,其余部分置为0;按照s
m,n
中数值从大到小的顺序寻找并标记相邻两帧中出现同一目标,实现在视频中对目标的追踪;7)根据损失函数计算模型输出与真实标注之间的误差;其中,损失函数表达式如下:
其中,n
p
为当前帧最后保留的候选框数量,n
c
为前一帧最后保留的候选框数量;8)重复步骤2)至7),将训练集中的每条视频帧输入当前模型并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到当前训练完毕的模型记为model
old
;9)将测试集中的每条视频帧输入model
old
进行测试,得到测试集上的平均损失loss
old
;然后将model
old
作为新的当前模型;10)重复步骤2)至7),将训练集中的每条视频帧输入model
old
并计算损失函数,然后通过反向传播算法进行训练,更新模型参数,得到更新后的当前训练完毕的模型记为model
new
;11)将测试集中的每条视频帧输入model
new
进行测试,得到测试集上的平均损失记作loss
new
;12)训练停止判定:若loss
new
≤loss
old
,则将当前model
new
模型记为新的model
old
,将当前loss
new
记为loss
old
,然后重新返回10);若loss
new
>loss
old
,则停止模型训练并将当前model
old
作为最后训练完毕的微流体视频目标追踪模型。8.一种基于视频目标追踪的微流体分析装置,其特征在于,包括:获取模块,用于获取微流体视频;微流体追踪模块,用于将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;分析模块,用于根据所述目标的追踪结果,对所述目标进行信息提取。9.一种电子设备,其特征在于,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述权利要求1-7任一项所述的方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1-7任一项所述的方法。
技术总结
本公开提出一种基于视频目标追踪的微流体分析方法及装置,属于微流体分析领域。其中所述方法包括:获取微流体视频;将所述视频中的气泡或液滴作为追踪目标,根据预设的微流体视频目标追踪模型,获取所述目标在所述视频对应帧中的视频掩码矩阵组成的序列作为所述目标的追踪结果;根据所述目标的追踪结果,对所述目标进行信息提取。本公开利用深度卷积神经网络,快速分析高速摄影机在微流体装置观察窗处拍摄微流体的视频,得到微流体装置中气泡或液滴的大小、速度和形态等相关视觉信息,运算速度快,分析结果准确,适用于大小不同的气泡或液滴。或液滴。或液滴。
技术研发人员:邱彤 张书源 王凯 黄新烨 魏奕新
受保护的技术使用者:清华大学
技术研发日:2021.11.24
技术公布日:2022/3/7