版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、在衡量视频质量的测量中,为了指导视频处理,我们定义了一个能测量原始信号与处理后信号之间的差别和客观标准。这个标准是很重要的,它可以测量由压缩引起的失真。理想情况下,这种测量应该与两个视频序列之间感觉上的差异相关联。但实际是不可能的,为了计算方便,目前大多数视频处理系统的设计是使两个视频序列1和2之间的均方差(MSE)最小化,它定义为:MSE=e2=1Nkm,n(1m,n,k-2(m,n,k)2这里N是每个序列中的总像素数。代替MSE以分贝(dB)为单位的峰值信噪比(PSNR)更 经常用于视频质量测量当中。它是这样定义的:PSNR=10log10max2e2这里max是视频信号的峰(最大)强度值
2、。实际过程中,为了减少计算量,常常用来代替MSE的一种测量是平均绝对误差(MAD),它定义为:MAD=1Nkm,n|1m,n,k-2m,n,k|虽然MSE和MAD与图象间的感觉失真的相关性不是很好,但是它们在视频编码和处理、运动补偿预测以及图象恢复过程中都发挥着不可或缺的作用。本实验中主要是应用于二维运动估计当中。在基于像素的二维运动估计中,必须估计每一个像素的MV,然而实际存在的问题是,我们必须施加平滑约束以使问题正则化。在已估计的运动场上施加平滑约束的一种方法是把图象域分割成互相不重叠的称为块的小区域,并且假定每一块内的运动都可以用一个简单的参数模型特征化。如果足够小,那么这种模型是相当精
3、确的。在最简单的情况下,每一个块的运动被假定是恒定的,即整个块进行平移。这称为块平移模型。这时候运动估计问题是为每一个块寻找一个MV。这种类型的算法被共同地称为块匹配算法(BMA)。实验原理: 在锚定帧m中给定一个图象块,此时的运动估计问题是在目标帧中确定一个匹配的m,使得这两个块之间的误差为最小。这两个块的空间位置之间的位移矢量dm是这个块的MV。在块平移模型下,w(x;a)=x+dm,xm,所以这时候基于位移帧差准则的目标函数可以写为:E(dm,mM)=mMxm|2x+dm-1(x)|p因为对于一个块所估计的MV只影响这个块的预测误差,所以我们可以通过使每个块的累积预测误差最小化来个别地估
4、计每个块的MV,即:Emdm=xm|2x+dm-1(x)|p确定使这个误差为最小的dm的一种方法是使用穷尽搜索,这种方法被称为穷尽匹配算法(EBMA)。即给定锚定帧的一个块m确定最优dm的方法是,在一个预先定义的搜索区域内,把它与目标帧中所有的候选块m进行比较,并且寻找具有最小误差的一个。这两个块之间的位移就是所估计的MV。1 、整像素算法(1)、实验程序运用Matlab语言编写%f1: anchor frame; f2: target frame, fp: predicted image;%mvx,mvy: store the MV image%widthxheight: image siz
5、e; N: block size, R: search rangef2=imread('carcar1.bmp');f1=imread('carcar2.bmp');fp=0;figure,imshow(f2),title('target');figure,imshow(f1),title('anchor')N=16;R=16;height=256;width=256;for i=1:N:height-N+1for j=1:N:width-N+1 %for every block in the anchor frame % for
6、 every block (i,j), culculate the best matching block (i+k,j+l) in the rectangle scope% (i-R,j-k),(i+R,j+k)MAD_min=256*N*N;dy=0;dx=0;for k= -R:1:R,for l= -R:1:R %for every search candidate if i+k<1 MAD=256*N*N; elseif i+k>height-N MAD=256*N*N; elseif j+l<1 MAD=256*N*N; elseif j+l>width-N
7、 MAD=256*N*N; else% calculate MAD for this candidate MAD=sum(sum(abs(double(f1(i:i+N-1,j:j+N-1)-double(f2(i+k:i+k+N-1,j+l:j+l+N-1); endif MAD<MAD_minMAD_min=MAD;dy=k;dx=l;end;end;end;%put the best matching block in the predicted imagefp(i:i+N-1,j:j+N-1)= f2(i+dy:i+dy+N-1,j+dx:j+dx+N-1);iblk=floor
8、(i-1)/N+1); jblk=floor(j-1)/N+1); %block indexmvx(iblk,jblk)=dx;mvy(iblk,jblk)=dy; %record the estimated MVend;end;figure,imshow(uint8(fp),title('predict');% figure,quiver(mvx,mvy);title('move vector');X,Y=meshgrid(N/2:N:256-N/2);Y=256-Y;figure,quiver(X,Y,mvx,mvy),title('motion v
9、ector');diff=abs(double(f1)-fp);figure,imshow(uint8(diff),title('diff');PSNR=20*log10(255)+20*log10(256)-10*log10(sum(sum(diff.*diff); (2)、实验结果 a、目标帧 b、锚定帧 c、预测帧 d、diff e、整像素精度的运动场2、半像素算法(1)、实验程序运用Matlab语言编写%f1: anchor frame; f2: target frame, fp: predicted image;%mvx,mvy: store the MV i
10、mage%widthxheight: image size; N: block size, R: search rangef2=imread('carcar1.bmp');f1=imread('carcar2.bmp');N=16;R=16;a,b=size(f1);f3=zeros(2.*a,2.*b);f4=f3;fp=f3; for i=1:a for j=1:b f3(2.*i-1,2.*j-1)=double(f1(i,j); f4(2.*i-1,2.*j-1)=double(f2(i,j); endendfor i=2:2:(2.*a-1) for
11、j=1:2:(2.*b-1) f3(i,j)=(f3(i-1,j)+f3(i+1,j)./2; f4(i,j)=(f4(i-1,j)+f4(i+1,j)./2 ; endendfor i=1:(2.*a-1) for j=2:2:(2.*b-1) f3(i,j)=floor(f3(i,j-1)+f3(i,j+1)./2+1./4); f4(i,j)=floor(f4(i,j-1)+f4(i,j+1)./2+1./4); endendfor i=2:2:(2.*a-1) for j=1:2:(2.*b-1) f3(i,j)=floor(f3(i,j)+1./2); f4(i,j)=floor(f
12、4(i,j)+1./2); endendfor j=1:(2.*b-1) f3(2.*a,j)=f3(2.*a-1,j).*2-f3(2.*a-2,j); f4(2.*a,j)=f4(2.*a-1,j).*2-f4(2.*a-2,j); endfor i=1:2.*a f3(i,2.*b)=f3(i,2.*b-1).*2-f3(i,2.*b-2); f4(i,2.*b)=f4(i,2.*b-1).*2-f4(i,2.*b-2); end for i=1:(2*N):(2*a)for j=1:(2*N):(2*b) %for every block in the anchor frame % f
13、or every block (i,j), culculate the best matching block (i+k,j+l) in the rectangle scope% (i-R,j-k),(i+R,j+k)MAD=256*2*N*2*N;dy=0;dx=0;for k= -(2*R):1:(2*R)for l= -(2*R):1:(2*R) %for every search candidate if i+k<1 min=256*2*N*2*N; elseif i+k>2*b-2*N min=256*2*N*2*N; elseif j+l<1 min=256*2*
14、N*2*N; elseif j+l>2*a-2*N min=256*2*N*2*N;else% calculate MAD for this candidate min=sum(sum(abs(double(f3(i:i+2*N-1,j:j+2*N-1)-double(f4(i+k:i+k+2*N-1,j+l:j+l+2*N-1);endif MAD>min MAD=min;dy=k;dx=l;end;end;end;%put the best matching block in the predicted imagefp(i:i+2*N-1,j:j+2*N-1)= f4(i+dy
15、:i+dy+2*N-1,j+dx:j+dx+2*N-1);iblk=floor(i-1)/(2*N)+1); jblk=floor(j-1)/(2*N)+1); %block indexmvx(iblk,jblk)=dx;mvy(iblk,jblk)=dy; %record the estimated MVend;end;for i=1:2:2*afor j=1:2:2*b %for every block in the anchor frame fp1(i-1)/2+1,(j-1)/2+1)=fp(i,j);end;end;figure,imshow(f2),title('target');figure,imshow(f1),title('anchor')figure,imshow(uint8(fp1),title('predict');% figure,quiver(mvx,mvy);title('move vector');X,Y=meshgrid(N/2:N:a);Y=b-Y;figure,quiver(X,Y,mvx,mvy),title('motion vector');diff=abs(double(f1)-double(fp1);figure,imsho
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024届新疆昌吉市第九中学高三下学期4月考(数学试题)试卷
- 2024年北海客运资格证题库
- 2024年自贡货运从业资格证考试题
- 3#楼施工组织设计
- 2024年陕西驾考客运资格证考试
- 2024年泰安资格证客运题库
- 2024年芜湖客运从业资格证理论考试答案
- 江苏省徐州一中、如皋中学、宿迁中学2025届生物高二上期末质量跟踪监视模拟试题含解析
- 2025届山西省吕梁育星中学数学高二上期末统考模拟试题含解析
- 黑龙江省大庆市让胡路区铁人中学2025届高二数学第一学期期末联考模拟试题含解析
- JTGT-3833-2018-公路工程机械台班费用定额
- 疗效精油轻图典
- 工业机器人的手部-末端执行器 课件
- 数学课堂如何提高学生的学习主动性
- 工务劳安培训课件
- 初中英语新课程标准及教材分析省一等奖课件
- 音乐治疗专业培养方案
- 莎士比亚在近现代中国的接受-河南大学中国大学mooc课后章节答案期末考试题库2023年
- 车间机修工绩效考核细则制度
- 失读症、失写症的评定与康复课件
- 《匆匆》特级教师教学实录
评论
0/150
提交评论