登录论坛

查看完整版本 : 【求助】请高手帮忙改改我的程序(MATLAB) 用近似中值做背景更新


qmxht
2007-12-28, 09:46
m(1)=x1
当 xi<m(i-1) 时,m(i)=m(i-1)-a,
当 xi>m(i-1) 时,m(i)=m(i-1)+a,
当 xi=m(i-1) 时,m(i)=m(i-1),
a只是参数 一般取1值 ; i的值域[2,n],即序列图像的张数
xi为当前读取的序列图像;m(i)和m(i-1)为不断更新的背景图像.


M=imread('d:\MATLAB6p5\work\by\Fountain1000.bmp')
B=rgb2gray(M);
B=double(B);
for i = 1001:1522
Foun= ['d:\MATLAB6p5\work\by\Fountain' num2str(i) '.bmp'];
I=imread(Foun);
G=rgb2gray(I);
G=double(G);
for i = 1:160
for j = 1:128
if G(i,j)<B(i,j)
B(i,j)=B(i,j)-1;
elseif G(i,j)>B
B(i,j)=B(i,j)+1;
else G(i,j)=B(i,j)
B(i,j)=B(i,j);
imshow(uint8(B));
end

估计是第9,10行 我对图像各点定义不对 但我实在是不知道怎么编是正确

elunxu
2007-12-29, 19:23
把错误信息也传来,方便看。

qmxht
2007-12-30, 09:22
164错误是这样的

elunxu
2007-12-30, 10:05
意思是第十八行缺少end命令

看了一下,程序中缺少三个end,因为每一个for或者if后面都是以end命令结束。

qmxht
2007-12-30, 16:56
非常感谢~

qmxht
2007-12-31, 11:28
又有新问题了176