resultavi='result.avi';%%检测结果视频%读取视频mov=VideoReader(targetavi);%mov=mmreader(targetavi);fnum=size(mov,2);%建立结果视频aviobj=VideoWriter(resultavi);aviobj.Quality=100;%aviobj.Fps=25;%每秒读取25帧%pression='Indeo5';%pression='None';%帧间差分法fori=2:fnumx=mov(i.1).cdata(:,:,:);y=mov(i).cdata(:,:,:);z=mov(i+1).cdata(:,:,:);m=rgb2gray(x);m=medfilt2(m);n=rgb2gray(y);n=medfilt2(n);o=rgb2gray(z);o=medfilt2(o);q=im2double(n);w=im2double(m);p=im2double(o);c=q.w;%%前两帧差分b=p.q;%%后两帧差分t=40;%%阈值,此值可以调节t=t/256;%%转化为double型数据k=find(abs(c)>=t);%%find函数作用是找到图c中的值大于t的点坐标d=find(abs(b)>=t);%%find函数作用是找到图b中的值大于t的点坐标c(k)=255;%%二值化的一b(d)=255;k=find(abs(c)<t);d=find(abs(b)<t);c(k)=0;%%二值化的零b(d)=0;f=c&b;imshow(f);adata=cat(3,f,f,f);%%灰度图像生成视频必加此句aviobj=addframe(aviobj,adata);%%生成视频holdon;drawnow;holdoff;end%aviobj=close(aviobj);/