资源简介
基于matlab的光流法运动目标检测 适合初学者理解
代码片段和文件信息
%f1 and f2 are two consecutive frames of a video sequence
clc;
clear;
close all
f1=imread(‘CT0010.jpg‘);
f40=imread(‘CT0011.jpg‘);
figure;
imshow(f1)
figure
imshow(f40)
fr_f1=rgb2gray(f1);
fr_f40=rgb2gray(f40);
Xn=double(fr_f1);
Xnp1=double(fr_f40);
%get image size and adjust for border 获取图像对边界进行调整
[hw]=size(fr_f1);
hm5=h-5; wm5=w-5;
z=zeros(hw); v1=z; v2=z;
%initialize 初始化
dsx2=v1; dsx1=v1; dst=v1;
alpha2=625;
imax=20;
%Calculate gradients 计算梯度
dst(5:hm55:wm5) = ( Xnp1(6:hm5+16:wm5+1)-Xn(6:hm5+16:wm5+1) + Xnp1(6:hm5+15:wm5)-Xn(6:hm5+15:wm5)+ Xnp1(5:hm56:wm5+1)-Xn(5:hm56:wm5+1) +Xnp1(5:hm55:wm5)-Xn(5:hm55:wm5))/4;
dsx2(5:hm55:wm5) = ( Xnp1(6:hm5+16:wm5+1)-Xnp1(5:hm56:wm5+1) + Xnp1(6:hm5+15:wm5)-Xnp1(5:hm55:wm5)+ Xn(6:hm5+16:wm5+1)-Xn(5:hm56:wm5+1) +Xn(6:hm5+15:wm5)-Xn(5:hm55:wm5))/4;
dsx1(5:hm55:wm5) = ( Xnp1(6:hm5+16:wm5+1)-Xnp1(6:hm5+15:wm5) + Xnp1(5:hm56:wm5+1)-Xnp1(5:hm55:wm5)+ Xn(6:hm5+16:wm5+1)-Xn(6:hm5+15:wm5) +Xn(5:hm56:wm5+1)-Xn(5:hm55:wm5))/4;
for i=1:imax
delta=(dsx1.*v1+dsx2.*v2+dst)./(alpha2+dsx1.^2+dsx2.^2);
v1=v1-dsx1.*delta;
v2=v2-dsx2.*delta;
end;
u=z; u(5:hm55:wm5)=v1(5:hm55:wm5);
v=z; v(5:hm55:wm5)=v2(5:hm55:wm5);
xskip=round(h/32);
[hsws]=size(u(1:xskip:h1:xskip:w))
us=zeros(hsws); vs=us;
N=xskip^2;
for i=1:hs-1
for j=1:ws-1
hk=i*xskip-xskip+1;
hl=i*xskip;
wk=j*xskip-xskip+1;
wl=j*xskip;
us(ij)=sum(sum(u(hk:hlwk:wl)))/N;
vs(ij)=sum(sum(v(hk:hlwk:wl)))/N;
end;
end;
figure(3);
quiver(usvs);
axis ij;
axis tight;
axis equal;
% 光流法检测运动物体的基本原理是:给图像中的每一个像素点赋予一个速度矢量,这就形成了一个图像运动场,
% 在运动的一个特定时刻,图像上的点与三维物体上的点一一对应,这种对应关系可由投影关系得到,根据各个像素点的速度矢量特征,
% 可以对图像进行动态分析。如果图像中没有运动物体,则光流矢量在整个图像区域是连续变化的。
% 当图像中有运动物体时,目标和图像背景存在相对运动,运动物体所形成的速度矢量必然和邻域背景速度矢量不同,从而检测出运动物体及位置。
% 采用光流法进行运动物体检测的问题主要在于大多数光流法计算耗时,实时性和实用性都较差。
% 但是光流法的优点在于光流不仅携带了运动物体的运动信息,而且还携带了有关景物三维结构的丰富信息,它能够在不知道场景的任何信息的情况下,检测出运动对象。
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-04-22 09:15 光流法检测运动目标\
文件 15776 2012-05-17 21:25 光流法检测运动目标\CT0010.jpg
文件 15843 2012-05-17 21:25 光流法检测运动目标\CT0011.jpg
文件 15913 2012-05-17 21:25 光流法检测运动目标\CT0012.jpg
文件 15919 2012-05-17 21:25 光流法检测运动目标\CT0013.jpg
文件 15584 2012-05-17 21:25 光流法检测运动目标\CT0014.jpg
文件 190100 2007-11-06 22:57 光流法检测运动目标\car0.png
文件 191767 2007-11-06 22:57 光流法检测运动目标\car1.png
文件 138 2013-03-09 16:46 光流法检测运动目标\www.hslogic.com.txt
文件 2363 2012-05-24 19:34 光流法检测运动目标\光流法.m
- 上一篇:下变频matlab仿真代码
- 下一篇:语音信号数据集
相关资源
- L-K金字塔光流法matlab代码实现
- LK光流法运动目标特征提取
- 光流法包括LK光流,HS光流,论文,
- HS经典光流法
- 运动目标检测光流法
- 基于视频的matlab光流法
- LK光流法MATLAB代码
- 光流法——matlab
- 基于光流法的车辆检测
- L-K光流法matlab实现
- optiflow 光流法程序
- 利用matlab的光流法实现显示光流的方
- 前景检测程序(Foreground-detection-proc
- 使用光流法(HS)的人群异常行为识别
- LK光流法对目标的跟踪
- image-registration
- streakline_code_v01 采用了光流法实现了目
- Code LK光流法的实现算法
- LKmatlab 基于光流法的光流检测matlab算
- 基于Lucas-kanade目标跟踪算法
评论
共有 条评论