资源简介
此为基于贝叶斯滤波框架下的采用卡尔曼滤波的人体跟踪程序,其适合用于运动目标为线性运动且过程和观测噪声为高斯分布的情况。(注:本程序为本人在借鉴他人框架的基础上完成,因要下载新的东东而没积分所为,哈哈)
代码片段和文件信息
% extracts the center (cccr) and radius of the largest blob
function [cccrflagstatslabeledindex]= extractman(ImworkImbackbiaohao)
cc = 0;
cr = 0;
flag = 0;
[MRMCDim] = size(Imback);
% 减背景
fore = zeros(MRMC); %image subtracktion
fore = (abs(Imwork(::1)-Imback(::1)) > 10) ...% R、G、B
| (abs(Imwork(::2) - Imback(::2)) > 10) ...%fore是二进制图像
| (abs(Imwork(::3) - Imback(::3)) > 10);
I = fore;
%中值滤波(去除椒盐噪声)
J = medfilt2(I);
%形态学处理
K1 = bwmorph(J‘erode‘3);
%K = bwmorph(J‘clean‘2);
% K = bwmorph(J‘remove‘2);
% K = bwmorph(J‘hbreak‘2);
K2 = bwmorph(K1‘close‘2);
K3 = bwmorph(K2‘dilate‘1);
K4 = bwmorph(K3‘open‘5);
K5 = bwmorph(K4‘fill‘2);
% figureimshow(J);
%figureimshow(K5);
% 区域标签并求出各区域的属性
labeled = bwlabel(K58);%标签分块
stats = regionprops(labeled[‘basic‘]);%basic mohem nist
[NW] = size(stats);
if N < 1
return
end
%找出最大区域并得到其相应的标号
maxArea = stats(1).Area;
index = 1;
i = 1;
for j = 2:1:N
if stats(i).Area < stats(j).Area
maxArea = stats(j).Area;
index = j;
i = j;
end
end
%最大区域为maxArea的值其所对应的区域标号为index的值
%另一种方法
% do bubble sort (large to small) on regions in case there are more than 1
% id = zeros(N);
% for i = 1 : N
% id(i) = i;
% end
% for i = 1 : N-1
% for j = i+1 : N
% if stats(i).Area < stats(j).Area
% tmp = stats(i);
% stats(i) = stats(j);
% stats(j) = tmp;
% tmp = id(i);
% id(i) = id(j);
% id(j) = tmp;
% end
% end
% end
% make sure that there is at least 1 big region//目标检测
if stats(index).Area < 1000 %stats(index)为最大区域块
return
end
% get center of mass //特征提取
centroid = stats(index).Centroid;
cc = centroid(1);%x坐标
cr = centroid(2);%y坐标
flag = 1;
return
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 18576 2009-12-22 16:14 kalman(人体跟踪)\data\background.JPG
文件 36640 2010-04-03 21:15 kalman(人体跟踪)\data\man0.jpeg
文件 37854 2010-04-03 21:15 kalman(人体跟踪)\data\man1.jpeg
文件 38174 2010-04-03 21:15 kalman(人体跟踪)\data\man10.jpeg
文件 38407 2010-04-03 21:15 kalman(人体跟踪)\data\man11.jpeg
文件 38797 2010-04-03 21:15 kalman(人体跟踪)\data\man12.jpeg
文件 38886 2010-04-03 21:15 kalman(人体跟踪)\data\man13.jpeg
文件 36260 2010-04-03 21:15 kalman(人体跟踪)\data\man14.jpeg
文件 37582 2010-04-03 21:15 kalman(人体跟踪)\data\man15.jpeg
文件 37647 2010-04-03 21:15 kalman(人体跟踪)\data\man16.jpeg
文件 38290 2010-04-03 21:15 kalman(人体跟踪)\data\man17.jpeg
文件 38519 2010-04-03 21:15 kalman(人体跟踪)\data\man18.jpeg
文件 38798 2010-04-03 21:15 kalman(人体跟踪)\data\man19.jpeg
文件 37830 2010-04-03 21:15 kalman(人体跟踪)\data\man2.jpeg
文件 39046 2010-04-03 21:15 kalman(人体跟踪)\data\man20.jpeg
文件 36411 2010-04-03 21:15 kalman(人体跟踪)\data\man21.jpeg
文件 37671 2010-04-03 21:15 kalman(人体跟踪)\data\man22.jpeg
文件 37759 2010-04-03 21:15 kalman(人体跟踪)\data\man23.jpeg
文件 38134 2010-04-03 21:15 kalman(人体跟踪)\data\man24.jpeg
文件 38258 2010-04-03 21:15 kalman(人体跟踪)\data\man25.jpeg
文件 38619 2010-04-03 21:15 kalman(人体跟踪)\data\man26.jpeg
文件 38755 2010-04-03 21:15 kalman(人体跟踪)\data\man27.jpeg
文件 36491 2010-04-03 21:15 kalman(人体跟踪)\data\man28.jpeg
文件 37889 2010-04-03 21:15 kalman(人体跟踪)\data\man29.jpeg
文件 38413 2010-04-03 21:15 kalman(人体跟踪)\data\man3.jpeg
文件 38022 2010-04-03 21:15 kalman(人体跟踪)\data\man30.jpeg
文件 38489 2010-04-03 21:15 kalman(人体跟踪)\data\man31.jpeg
文件 38602 2010-04-03 21:15 kalman(人体跟踪)\data\man32.jpeg
文件 38798 2010-04-03 21:15 kalman(人体跟踪)\data\man33.jpeg
文件 38807 2010-04-03 21:15 kalman(人体跟踪)\data\man34.jpeg
............此处省略58个文件信息
- 上一篇:操作系统原理第3版答案
- 下一篇:NI Labview CLAD官方模拟题
相关资源
- osg天空盒源程序
- Qt之USB数据监测软件源程序
- MPU6050姿态解算STM32源码卡尔曼滤波
- 《计算机操作系统实验指导》郁红英
- 智能车 CCD完整源程序
- 卡尔曼滤波非常非常经典的书
- SLAM经典入门教程
- 《LabVIEW入门与实战开发100例》源程序
- labview程序设计2009 附源程序
- 单片机简易计算器全套源程序、hex文
- 卡尔曼滤波算法(内含详细推导)
- 绝对好用秒表程序-protues+汇编源序程
- DALI标准指令解析和源程序例程
- 第2小组_第一版本_源程序清单.zip
- 444全彩光立方pcb图及源程序
- 西门子PID块FB58源程序
- 神经网络算法在自适应卡尔曼滤波器
- 6050 6轴陀螺仪波形源程序
- PEDUMP 即PE文件解读的源程序, 可以获
- BP神经网络识别语音特征
- 基于数字图片处理的数控G代码生成源
- MPI与OpenMP并行计算的实验报告及源程
- 超声波测距模块的原理图和源程序
- 词法分析程序可记录行号、识别注释
- md3loader,导入md3模型源程序
- 手把手教你学DSP源程序
- 捷联惯导算法与卡尔曼滤波原理讲义
- opencv源程序
- contour等值线源程序
- 30个神经网络算法源程序
评论
共有 条评论