发明名称 基于热扩散的视频一致运动区域检测方法
摘要 本发明公开了一种基于热扩散的视频一致运动区域检测方法,它将物理中的热扩散过程引入,将原始光流场作为热源与外力,根据异向扩散的原理将原始光流场变为可以更好地反映场景运动模式的热图。通过构建德洛内三角剖分,更好地把握点与点之间运动关系,找到热图不同区域的边界。本发明可以有效地把握全局场景的运动信息,使相隔较远的点也可以通过运动信息的相关性互相影响,且对光流计算产生的噪声有更好的鲁棒性。
申请公布号 CN103942793B 申请公布日期 2016.11.16
申请号 CN201410153243.9 申请日期 2014.04.16
申请人 上海交通大学 发明人 林巍峣;王薇月
分类号 G06T7/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 上海汉声知识产权代理有限公司 31236 代理人 郭国中
主权项 一种基于热扩散的视频一致运动区域检测方法,其特征在于,包含以下步骤:步骤一:得到输入视频光流场F,用F=(F<sub>x</sub>,F<sub>y</sub>)表示,F<sub>x</sub>表示x方向光流,F<sub>y</sub>表示y方向光流,F<sub>x</sub>(i,j)表示位于(i,j)位置的x方向光流,F<sub>y</sub>(i,j)表示位于(i,j)位置的y方向光流;步骤二:将步骤一中第T0帧的光流场作为热源和作用力,进行热扩散,得到热扩散后的热图E,其中,E=(E<sub>x</sub>,E<sub>y</sub>),E<sub>x</sub>表示x方向热图,E<sub>y</sub>表示y方向热图;步骤三:随机选取热图上<img file="FDA0001043883840000011.GIF" wi="87" he="94" />个点,M为视频图像的长,N为视频图像的宽,并得到这些点的德洛内三角剖分图,计算德洛内三角剖分图中所有边的权值;步骤四:找到步骤三中权值大于阈值Th的边,并将这些边上的所有点作为边界点,构建二值图像,通过膨胀的方法得到最终边界;并根据得到的最终边界与步骤二中的热图,用分水岭方法进行分割;步骤二中所述热图E通过以下步骤得到:步骤a)构建两个大小为M×N的二维零矩阵E<sub>x</sub>和E<sub>y</sub>,E<sub>x</sub>(i,j)表示位于(i,j)位置的x方向热图,E<sub>y</sub>(i,j)表示位于(i,j)位置的y方向热图;构建U=(U<sub>x</sub>,U<sub>y</sub>)使得U=F,其中,U表示扩散所受外力场,U<sub>x</sub>表示x方向外力场,U<sub>y</sub>表示y方向外力场;步骤b)对于M×N个点中的每一点(x,y),通过公式(1)更新位于(x,y)位置的热图E(x,y),E(x,y)=[E<sub>x</sub>(x,y),E<sub>y</sub>(x,y)],其中,E<sub>x</sub>(x,y)表示位于(x,y)位置的x方向热图,E<sub>y</sub>(x,y)表示位于(x,y)位置的y方向热图;<maths num="0001"><math><![CDATA[<mrow><mi>E</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><msubsup><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msub><mi>e</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow></mrow><mrow><mi>M</mi><mo>&times;</mo><mi>N</mi></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001043883840000012.GIF" wi="726" he="111" /></maths>其中,e<sub>(i,j)</sub>(x,y)表示位于(i,j)的点对(x,y)扩散的能量;公式(1)中,位于(x,y)位置e<sub>(i,j)</sub>(x,y)=[e<sub>x(i,j)</sub>(x,y),e<sub>y(i,j)</sub>(x,y)]由公式(2)(3)得到,其中,e<sub>x(i,j)</sub>(x,y)表示x方向位于(i,j)的点对(x,y)扩散的能量,e<sub>y(i,j)</sub>(x,y)表示y方向位于(i,j)的点对(x,y)扩散的能量;<maths num="0002"><math><![CDATA[<mrow><msub><mi>e</mi><mrow><mi>x</mi><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>U</mi><mi>x</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><mo>-</mo><msub><mi>k</mi><mi>p</mi></msub><mi>D</mi><mrow><mo>(</mo><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow></mrow></msup><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><mo>-</mo><msub><mi>k</mi><mi>f</mi></msub><mo>|</mo><msub><mi>F</mi><mi>x</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mi>i</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>F</mi><mi>y</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mrow><mo>(</mo><mi>y</mi><mo>-</mo><mi>j</mi><mo>)</mo></mrow><mo>|</mo></mrow></msup></mrow></mtd></mtr><mtr><mtd><mtable><mtr><mtd><mrow></mrow></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>F</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mi>F</mi><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow><mo>&GreaterEqual;</mo><msub><mi>TH</mi><mi>c</mi></msub></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>F</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mi>F</mi><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow><mo>&lt;</mo><msub><mi>TH</mi><mi>c</mi></msub></mrow></mtd></mtr></mtable></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001043883840000013.GIF" wi="1598" he="271" /></maths><maths num="0003"><math><![CDATA[<mrow><msub><mi>e</mi><mrow><mi>y</mi><mo>,</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>U</mi><mi>y</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><mo>-</mo><msub><mi>k</mi><mi>p</mi></msub><mi>D</mi><mrow><mo>(</mo><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow></mrow></msup><mo>&CenterDot;</mo><msup><mi>e</mi><mrow><mo>-</mo><msub><mi>k</mi><mi>f</mi></msub><mo>|</mo><msub><mi>F</mi><mi>x</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mrow><mo>(</mo><mi>x</mi><mo>-</mo><mi>i</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>F</mi><mi>y</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mrow><mo>(</mo><mi>y</mi><mo>-</mo><mi>j</mi><mo>)</mo></mrow><mo>|</mo></mrow></msup></mrow></mtd></mtr><mtr><mtd><mtable><mtr><mtd><mrow></mrow></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>F</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mi>F</mi><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow><mo>&GreaterEqual;</mo><msub><mi>TH</mi><mi>c</mi></msub></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>F</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><mo>)</mo><mo>,</mo><mi>F</mi><mo>(</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>)</mo><mo>)</mo></mrow><mo>&lt;</mo><msub><mi>TH</mi><mi>c</mi></msub></mrow></mtd></mtr></mtable></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001043883840000021.GIF" wi="1598" he="279" /></maths>其中,U<sub>x</sub>(i,j)表示位于(i,j)的点x方向外力场,U<sub>y</sub>(i,j)表示位于(i,j)的点y方向外力场,e表示自然对数,k<sub>p</sub>、k<sub>f</sub>表示常数,x表示扩散能量接受点的横坐标,y表示扩散能量接受点的纵坐标,i表示扩散能量给予点的横坐标,j表示表示扩散能量接受点的纵坐标,TH<sub>c</sub>表示一个阈值;公式(2)、(3)中,代式<img file="FDA0001043883840000022.GIF" wi="833" he="78" />代式<img file="FDA0001043883840000023.GIF" wi="1123" he="143" />令U=E;步骤c)重复b)若干次;此时,热扩散过程完成,E=(E<sub>x</sub>,E<sub>y</sub>)即为所得热图。
地址 200240 上海市闵行区东川路800号