视频帧置乱:

%视频帧置乱,并显示。
%2013-9-14
cd 'E:\Copyright\13年\soft4'
clc;
clear all;
aviobj=avifile('myAVI\myAVI');
aviobj.Quality=100;
aviobj.compression='None';
mov=mmreader('myAVI\mCircle.avi'); %用mmreader读入视频文件
%%%%生成混沌序列
l=linspace(0,0,mov.numberofframes);
l(1)=0.98;
for i=2:mov.numberofframes
l(i)=1-2*l(i-1)*l(i-1);
end
[lsort,lindex]=sort(l);
%%%%%%%%%%%%%%生成混沌序列
%%%%%%%%%%%%%%获取置乱后的视频
for i=1:mov.numberofframes %获得总帧数,并依次读取
k=lindex(i);
b=read(mov,k);
aviobj=addframe(aviobj,b);
end
%%%%%%%%%%%%%%获取置乱后的视频
%%%%%嵌入停顿标记
for i=1:10
b=imread('image/end.jpg');
aviobj=addframe(aviobj,b);
end
aviobj=close(aviobj);
mplay('myAVI\myAVI.avi');


视频帧逆置乱:

%视频逆置乱,并显示。
%2013-9-14
cd 'E:\Copyright\13年\soft4'
clc;
clear all;
aviobj=avifile('myAVI\myAVI2');
aviobj.Quality=100;
aviobj.compression='None';
mov=mmreader('myAVI\myAVI.avi'); %用mmreader读入视频文件
%%%%生成混沌序列
l=linspace(0,0,mov.numberofframes-10);
l(1)=0.98;
for i=2:mov.numberofframes-10
l(i)=1-2*l(i-1)*l(i-1);
end
[lsort,lindex]=sort(l);
%%%%%%%%%%%%%%生成混沌序列
%%%%%%%%%%%%%%获取置乱后的视频
[Vsort,Vindex]=sort(lindex);
for i=1:mov.numberofframes-10 %获得总帧数,并依次读取
k=Vindex(i);
b=read(mov,k);
aviobj=addframe(aviobj,b);
end
for i=1:10
b=imread('image/end.jpg');
aviobj=addframe(aviobj,b);
end
aviobj=close(aviobj);
mplay('myAVI\myAVI2.avi');