程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 視頻幀置亂及逆置亂

視頻幀置亂及逆置亂

編輯:C++入門知識

%視頻幀置亂,並顯示。
%程序編制:[email protected]
%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');
%視頻逆置亂,並顯示。
%程序編制:[email protected]
%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');

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved