光流
更新时间:2024-05-22 11:06:01 阅读量: 综合文库 文档下载
function [us,vs] = HSoptflow(Xrgb,n)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Author: Gregory Power gregory.power@wpafb.af.mil
% This MATLAB code shows a Motion Estimation map created by % using a Horn and Schunck motion estimation technique on two % consecutive frames. Input requires.
% Xrgb(h,w,d,N) where X is a frame sequence of a certain % height(h), width (w), depth (d=3 for color), % and number of frames (N).
% n= is the starting frame number which is less than N % V= the output variable which is a 2D velocity array %
% Sample Call: V=HSoptflow(X,3);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[h,w,d,N]=size(Xrgb); if n>N-1
error(1,'requested file greater than frame number required'); end;
%get two image frames if d==1
Xn=double(Xrgb(:,:,1,n));
Xnp1=double(Xrgb(:,:,1,n+1)); elseif d==3
Xn=double(Xrgb(:,:,1,n)*0.299+Xrgb(:,:,2,n)*0.587+Xrgb(:,:,3,n)*0.114);
Xnp1=double(Xrgb(:,:,1,n+1)*0.299+Xrgb(:,:,2,n+1)*0.587+Xrgb(:,:,3,n+1)*0.114); else
error(2,'not an RGB or Monochrome image file'); end;
%get image size and adjust for border size(Xn);
hm5=h-5; wm5=w-5;
z=zeros(h,w); v1=z; v2=z;
%initialize
dsx2=v1; dsx1=v1; dst=v1; alpha2=625; imax=20;
êlculate gradients
dst(5:hm5,5:wm5) = ( Xnp1(6:hm5+1,6:wm5+1)-Xn(6:hm5+1,6:wm5+1) + Xnp1(6:hm5+1,5:wm5)-Xn(6:hm5+1,5:wm5)+ Xnp1(5:hm5,6:wm5+1)-Xn(5:hm5,6:wm5+1) +Xnp1(5:hm5,5:wm5)-Xn(5:hm5,5:wm5))/4;
dsx2(5:hm5,5:wm5) = ( Xnp1(6:hm5+1,6:wm5+1)-Xnp1(5:hm5,6:wm5+1) + Xnp1(6:hm5+1,5:wm5)-Xnp1(5:hm5,5:wm5)+ Xn(6:hm5+1,6:wm5+1)-Xn(5:hm5,6:wm5+1) +Xn(6:hm5+1,5:wm5)-Xn(5:hm5,5:wm5))/4;
dsx1(5:hm5,5:wm5) = ( Xnp1(6:hm5+1,6:wm5+1)-Xnp1(6:hm5+1,5:wm5) + Xnp1(5:hm5,6:wm5+1)-Xnp1(5:hm5,5:wm5)+ Xn(6:hm5+1,6:wm5+1)-Xn(6:hm5+1,5:wm5) +Xn(5:hm5,6:wm5+1)-Xn(5:hm5,5: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:hm5,5:wm5)=v1(5:hm5,5:wm5); v=z; v(5:hm5,5:wm5)=v2(5:hm5,5:wm5);
xskip=round(h/64);
[hs,ws]=size(u(1:xskip:h,1:xskip:w)) us=zeros(hs,ws); 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(i,j)=sum(sum(u(hk:hl,wk:wl)))/N; vs(i,j)=sum(sum(v(hk:hl,wk:wl)))/N; end; end;
figure(1); quiver(us,vs);
colormap('default'); axis ij; axis tight; axis equal;
正在阅读:
光流05-22
陆洲研究生文献综述09-17
护理三基考试试题7-809-23
穿T恤听古典音乐答案汇总10-31
晶闸管直流调速系统参数和环节特性的测定实验报告 - 图文10-05
【2014东城一模】北京市东城区2014届高三下学期综合练习(一) 生物 Word版含答案05-19
外科感染内部课件104-21
旅游景区游客中心设置与服务规范05-27
2009 - 10 - 1微机原理试题A卷 - 图文02-28
社工游戏全集08-15
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 平面设计考证试题
- 课堂小结虽然是课堂教学中一个微不足道的环节
- 钢结构焊接规范试题
- 小学二年级下学期数学教学工作总结-精选范文
- 场地转让合同范本样本3份
- 2016年昆明市官渡区小学教师招聘模拟题七
- jQuery作业文档
- 高三理综6月热身考试试题(物理部分)新人教版
- 中新双语四个一作业
- 环境污染赔偿与一般民事赔偿区别有哪些
- 2018-2024年中国建筑工程机械制造市场投资前景预测研究报告(目
- 2014年中国豆筋市场调查研究报告
- 技术可行性报告节选 - 图文
- 两个人,两个故事,两种结局
- 甘肃省白银市2017年中考生物真题试题Word版含解析
- 乒乓球协会成立主持词
- 气象预报测报科研业务管理岗位实习报告
- 资源储量估算注意问题 - 图文
- 天天向上6月27日答案及解析
- 甘肃省实施《中华人民共和国母婴保健法》办法