资源简介
该段mathlab程序代码用于实现视场中运动目标的波门跟踪,在视场中加入噪声并进行滤波去噪。。将结果视频输出。
代码片段和文件信息
clc;clear ;close all;
image=imread(‘FORMOSAT2_1831.bmp‘); %读取图像灰度
% figure(1)
% imshow(pixel);%原图像显示
% title(‘显示原图像‘);
n=100;
view=zeros(600800n);
row=size(image1); %图像行
col=size(image2); %图像列
for num=51:50+n
CCD = zeros(600800); %定义CCD视场
CCD(num:num+row-1num:num+col-1) = image;
%加入随机噪声
% CCD1=uint8(CCD);
% noise = 0.2.* rand(size(CCD));
% CCD = imadd(CCD1im2uint8(noise));
CCD = CCD+2.5*randn(size(CCD)); %加随机噪声
%进行中值滤波去噪声
M8=[1 1 1;1 0 1;1 1 1];
M8=M8/8;
CCD=filter2(M8CCD);
%进行质心计算
M = 0;
a = 1:600;
b = 1:800;
M = M+sum(sum(CCD));
Mx = a*sum(CCD2);
My = b*sum(CCD).‘;
x = My/M;
y = Mx/M;
%画出波门边界 设波门大小为120*120 波门宽度为2个像素
x1 = floor(y-60);
x2 = ceil(y+60);
y1 = floor(x-60);
y2 = ceil(x+60);
CCD = uint8(CCD);
CCD(x1-2:x1 y1:y2) = 255;
CCD(x2:x2+2 y1:y2) = 255;
CCD(x1:x2 y1-2:y1) = 255;
CCD(x1:x2 y2:y2+2) = 255;
view(::num-50) = CCD;
end
%用avi显示
movie(1:n) = struct(‘cdata‘ [] ‘colormap‘ []);
for i = 1:n
imshow(view(::i));
movie(i) = getframe(gcf);
end
movie2avi(movie ‘实验视频‘ ‘compression‘ ‘None‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 79158 2008-07-21 10:09 FORMOSAT2_1831.bmp
文件 1313 2014-01-07 17:24 shiyan.m
----------- --------- ---------- ----- ----
80471 2
评论
共有 条评论