视音频实验3.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
视音频实验3

任课教师:张海翔 《视音频信号处理》 (2013-2014学年第1学期) 实 验 报 告 学号: 姓名: 班级: 实验三 视频数据处理 一、实验内容 1、请编写图像矩阵产生程序,具体要求为: 共产生两个图像矩阵A[256][256],和B[256][256] 图像矩阵中的点A(I,j) = i*256+j,B(I,j) = i*256+j,; 特别地,当25=i25+16, 20=j20+16, A(i,j) = i - 20; 特别地,当32=i32+16, 16=j16+16, B(i,j) = i - 27; (256*256中有16*16的块) 以题1中得到的图像数据基础上,以图像A为参考帧,请用全搜索方法计算图像B中16*16图像块MBlock(32,16)的运动矢量。(-7,+4) (在256*256上循环检查完全相等的) 以题1中得到的图像数据基础上,以图像A为参考帧,请用三步搜索方法计算图像B中16*16图像块MBlock(32,16)的运动矢量。 给定一个8*8的DCT系数矩阵C[8][8], 12 -8 -1 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 -1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 请编写程序将DCT系数按Zigzag扫描顺序转换为系数序列,并用游程编码对系数序列进行编码,以连续‘0’的个数,非零系数值的格式输出的中间符号。 中间符号用printf打出 二、实验代码 1、图形矩阵产生程序 #includestdio.h #includestdlib.h int main(){ char A[256][256],B[256][256]; FILE *filea,*fileb; if(!(filea=fopen(a.raw,wb))){ printf(can not open file.\n); } if(!(fileb=fopen(b.raw,wb))){ printf(can not open file.\n); } for(int i=0;i256;i++){ for(int j=0;j256;j++){//当=i25+16, 20=j20+16, A(i,j) = i - 20; if((i=25i41)(j=20j36)) {A[i][j]=i-20;} else A[i][j] = i*256+j; } } for(int i=0;i256;i++){ for(int j=0;j256;j++){//当=i25+16, 20=j20+16, A(i,j) = i - 20; if((i=32i48)(j=16j32)) {B[i][j]=i-27;} else B[i][j] = i*256+j; } } fwrite(A,sizeof(A),1,filea); fwrite(B,sizeof(B),1,fileb); fclose(filea); fclose(fileb); return 0; } 全搜索法 #includestdio.h #includestdlib.h int main(){ int A[256][256],B[256][256]; FILE *filea,*fileb; if(!(filea=fopen(a.raw,wb))){ printf(can not open file.\n); } if(!(fileb=fopen(b.raw,wb))){ printf(can not open file.\n); } for(int i=0;i256;i++){ for(int j=0;j256;j++){//当=i25+16, 20=j20+16, A(i,j) = i - 20; if(25=ii4120=jj36) {A[i][j]=i-20;} else A[i][j] = i*256+j; }} for(int i=0;i256;i++){ for(int j=0;j256;j++){//当=i25+16, 20=j20+16, A(i,j) = i - 20; if(32=ii4816=jj32) {B[i][j]=i-27;} else B[i][j] = i*256+j; }} for(int m=0;m256;m++){ for(int n=0;n2

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档