一种运动目标轨迹追踪方法与流程

文档序号:11865955阅读:来源:国知局

技术特征:

1.一种运动目标轨迹追踪方法,其特征在于,包含如下步骤:

步骤1),获取实时监控视频信息;

步骤2),对获取的视频进行预处理,即通过crop layer调节其数据分辨率使其每帧图片都适用于后续处理;

步骤3),将经过预处理后视频的每帧图片划分成S*S个区域,并对每一个区域通过深度学习的CNNs进行检测,并获得检测出目标的目标类型和目标坐标,所述S为大于等于3的自然数;

步骤4),距离匹配,使用坐标轨迹链表来记录各个目标的轨迹信息;

对于视频上一帧图片中所检测出的每一个目标,分别求得其与视频下一帧图片中所检测出的各个目标之间的偏移距离,并将其中最小的偏移距离与预设的距离阈值进行比较,如果该最小的偏移距离小于等于预设的距离阈值,则建立该最小的偏移距离对应两个目标之间的轨迹关系;如果该最小的偏移距离大于预设的距离阈值,则在视频下一帧图片中认为没有检测到该最小的偏移距离在视频上一帧图片中对应的目标,将该最小的偏移距离在视频下一帧图片中对应目标的坐标作为该目标的坐标链表的初始坐标点;

步骤5),当检测出的目标在预设的时间阈值t毫秒内未被再次检测出来,则认为该目标已经离开追踪区域,移除该目标的坐标轨迹链表;

步骤6),利用各个目标的坐标轨迹链表,提取出其运动特征:行进方向、速度和目标类型;

步骤7),输出各个目标的坐标轨迹链表和运动特征。

2.根据权利要求1所述的运动目标轨迹追踪方法,其特征在于,步骤3)中所述深度学习的CNNs采用以下代价函数进行训练:

<mfenced open = "" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>J</mi> <mo>=</mo> <msub> <mi>&lambda;</mi> <mrow> <mi>c</mi> <mi>o</mi> <mi>o</mi> <mi>r</mi> <mi>d</mi> </mrow> </msub> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <msup> <mi>S</mi> <mn>2</mn> </msup> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>B</mi> </munderover> <msubsup> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>-</mo> <mover> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>^</mo> </mover> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msub> <mi>y</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mover> <mi>y</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msub> <mi>&lambda;</mi> <mrow> <mi>c</mi> <mi>o</mi> <mi>o</mi> <mi>r</mi> <mi>d</mi> </mrow> </msub> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <msup> <mi>s</mi> <mn>2</mn> </msup> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>B</mi> </munderover> <msubsup> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msubsup> <msup> <mrow> <mo>(</mo> <msqrt> <msub> <mi>w</mi> <mi>i</mi> </msub> </msqrt> <mo>-</mo> <msqrt> <mover> <msub> <mi>w</mi> <mi>i</mi> </msub> <mo>^</mo> </mover> </msqrt> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup> <mrow> <mo>(</mo> <msqrt> <msub> <mi>h</mi> <mi>i</mi> </msub> </msqrt> <mo>-</mo> <msqrt> <msub> <mover> <mi>h</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> </msqrt> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mo>+</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <msup> <mi>S</mi> <mn>2</mn> </msup> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>B</mi> </munderover> <msubsup> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mi>+</mi> <msub> <mi>&lambda;</mi> <mrow> <mi>n</mi> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msub> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <msup> <mi>S</mi> <mn>2</mn> </msup> </munderover> <munderover> <mi>&Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>B</mi> </munderover> <msubsup> <mi>I</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mrow> <mi>n</mi> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msubsup> <msup> <mrow> <mo>(</mo> <msub> <mi>C</mi> <mi>i</mi> </msub> <mo>-</mo> <msub> <mover> <mi>C</mi> <mo>^</mo> </mover> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <msup> <mi>s</mi> <mn>2</mn> </msup> </munderover> <msubsup> <mi>I</mi> <mi>i</mi> <mrow> <mi>o</mi> <mi>b</mi> <mi>j</mi> </mrow> </msubsup> <munder> <mi>&Sigma;</mi> <mrow> <mi>c</mi> <mo>&Element;</mo> <mi>c</mi> <mi>l</mi> <mi>a</mi> <mi>s</mi> <mi>s</mi> <mi>e</mi> <mi>s</mi> </mrow> </munder> <msup> <mrow> <mo>(</mo> <msub> <mi>p</mi> <mi>i</mi> </msub> <mo>(</mo> <mi>c</mi> <mo>)</mo> <mo>-</mo> <mover> <msub> <mi>p</mi> <mi>i</mi> </msub> <mo>^</mo> </mover> <mo>(</mo> <mi>c</mi> <mo>)</mo> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </mtd> </mtr> </mtable> </mfenced>

其中,参数λcoord=5,λnoobj=0.5,B是一个区域内运用深度学习的CNNs进行检测的检测器个数,在目标属于第i个区域时为1、目标不属于第i个区域时为0,在第i个区域中的第j个检测器负责该目标时为1、在第i个区域中的第j个检测器不负责该目标时为0,xi,yi,wi,hi是检测后的目标的坐标、宽度和高度,是实际目标的坐标、宽度和高度,Ci是检测目标的置信度,实际存在目标的置信度,pi(c)检测目标概率,实际目标概率,classes为目标类型的集合。

3.根据权利要求1所述的运动目标轨迹追踪方法,其特征在于,所述步骤3)对每一个区域通过深度学习的CNNs检测出目标并获得目标类型和目标坐标后,根据CNNs检测出的目标目标类型和目标坐标在其对应帧的图片的相应位置上打上代表其类型的标签。

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