matlab读取YUV视频.doc
- 文档编号:231283
- 上传时间:2022-10-07
- 格式:DOC
- 页数:3
- 大小:13KB
matlab读取YUV视频.doc
《matlab读取YUV视频.doc》由会员分享,可在线阅读,更多相关《matlab读取YUV视频.doc(3页珍藏版)》请在冰豆网上搜索。
closeall;
clear
fid=fopen('D:
\Image-Sequence\akiyo_cif.yuv','r')
row=176*2;col=144*2;
frames=8;%total=300
forframe=1:
frames
Y=zeros(row,col,frames);
U=zeros(row/2,col/2,frames);
V=zeros(row/2,col/2,frames);
UU=zeros(row,col,frames);
VV=zeros(row,col,frames);
[Y(:
:
frame),count]=fread(fid,[row,col],'uchar');
[U(:
:
frame),count1]=fread(fid,[row/2,col/2],'uchar');
[V(:
:
frame),count2]=fread(fid,[row/2,col/2],'uchar');
%fclose(fid)
%figure,imshow(Y);
UU(1:
2:
row-1,1:
2:
col-1,frame)=U(:
:
frame);
UU(1:
2:
row-1,2:
2:
col,frame)=U(:
:
frame);
UU(2:
2:
row,1:
2:
col-1,frame)=U(:
:
frame);
UU(2:
2:
row,2:
2:
col,frame)=U(:
:
frame);
VV(1:
2:
row-1,1:
2:
col-1,frame)=V(:
:
frame);
VV(1:
2:
row-1,2:
2:
col,frame)=V(:
:
frame);
VV(2:
2:
row,1:
2:
col-1,frame)=V(:
:
frame);
VV(2:
2:
row,2:
2:
col,frame)=V(:
:
frame);
R=Y+1.140*(VV-128);
G=Y+0.395*(UU-128)-0.581*(VV-128);
B=Y+2.032*(UU-128);
fori=1:
row
forj=1:
col
ifR(i,j,frame)<0
R(i,j,frame)=0;
end
ifR(i,j,frame)>255
R(i,j,frame)=255;
end
ifG(i,j,frame)<0
G(i,j,frame)=0;
end
ifG(i,j,frame)>255
G(i,j,frame)=255;
end
ifB(i,j,frame)<0
B(i,j,frame)=0;
end
ifB(i,j,frame)>255
B(i,j,frame)=255;
end
end
end
R=R/255;G=G/255;B=B/255;
%X=[R',G',B'];
figure,imshow(R(:
:
frame)',G(:
:
frame)',B(:
:
frame)');
%M(frame)=im2frame(X,map);
end
%movie(M,10,30)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 读取 YUV 视频