图像放大算法总结及MATLAB源程序(大全五篇).docx 立即下载
2025-08-26
约4.3万字
约60页
0
41KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

图像放大算法总结及MATLAB源程序(大全五篇).docx

图像放大算法总结及MATLAB源程序(大全五篇).docx

预览

免费试读已结束,剩余 55 页请下载文档后查看

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

图像放大算法总结及MATLAB源程序(大全五篇)

第一篇:图像放大算法总结及MATLAB源程序1,插值算法(3种):(1)最邻近插值(近邻取样法):最邻近插值的的思想很简单,就是把这个非整数坐标作一个四舍五入,取最近的整数点坐标处的点的颜色。可见,最邻近插值简单且直观,速度也最快,但得到的图像质量不高。最邻近插值法的MATLAB源代码为:A=imread('F:lena.jpg');%读取图像信息imshow(A);%显示原图title('原图128*128');Row=size(A,1);Col=size(A,2);%图像行数和列数nn=8;%放大倍数m=round(nn*Row);%求出变换后的坐标的最大值n=round(nn*Col);B=zeros(m,n,3);%定义变换后的图像fori=1:mforj=1:nx=round(i/nn);y=round(j/nn);%最小临近法对图像进行插值ifx==0x=1;endify==0y=1;endifx>Rowx=Row;endify>Coly=Col;endB(i,j,:)=A(x,y,:);endendB=uint8(B);%将矩阵转换成8位无符号整数figure;imshow(B);title('最邻近插值法放大8倍1024*1024');运行程序后,原图如图1所示:图1用最邻近插值法放大4倍后的图如图2所示:图2(2)双线性内插值法:在双线性内插值法中,对于一个目的像素,设置坐标通过反向变换得到的浮点坐标为(i+u,j+v),其中i、j均为非负整数,u、v为[0,1)区间的浮点数,则这个像素得值f(i+u,j+v)可由原图像中坐标为(i,j)、(i+1,j)、(i,j+1)、(i+1,j+1)所对应的周围四个像素的值决定,即:f(i+u,j+v)=(1-u)(1-v)f(i,j)+(1-u)vf(i,j+1)+u(1-v)f(i+1,j)+uvf(i+1,j+1)其中f(i,j)表示源图像(i,j)处的的像素值,以此类推。这就是双线性内插值法。双线性内插值法计算量大,但缩放后图像质量高,不会出现像素值不连续的的情况。由于双线性插值具有低通滤波器的性质,使高频分量受损,所以可能会使图像轮廓在一定程度上变得模糊。在MATLAB中,可用其自带的函数imresize()来实现双线性内插值算法。双线性内插值算法的MATLAB源代码为:A=imread('F:lena.jpg');imshow(A);title('原图128*128');C=imresize(A,8,'bilinear');%双线性插值figure;imshow(C);title('双线性内插值法放大8倍1024*1024');程序运行后,原图如图3所示:图3双线性内插值法放大8倍后的图如图4所示:图4(3)双三次插值法:双三次插值法能够在很大程度上克服以上两种算法的不足,该算法计算精度高,但计算量大,它考虑一个浮点坐标(i+u,j+v)周围的16个邻点。目的像素值f(i+u,j+v)可由如下插值公式得到:f(i+u,j+v)=[A]*[B]*[C]其中[A]=[S(u+1)S(u+0)S(u2)];[C]=[S(v+1)S(v+0)S(v2)];而[B]是周围16个邻点组成的4*4的矩阵;S(x)是对Sin(x*π)/x的逼近。在MATLAB中,可用其自带的函数imresize()来实现双三次插值算法。MATLAB源代码为:A=imread('F:lena.jpg');%读取原图像D=imresize(A,8,'bicubic');%双三次插值放大8倍figure;Timshow(D);title('三次卷积法放大8倍1024*1024');MATLAB自带双三次插值法运行结果如图5所示:图5也可以自己编写双三次插值算法MATLAB代码如下:clc,clear;ff=imread('F:lena.jpg');%读取图像到ffk=8;%设置放大倍数[m,n,color]=size(ff);f=zeros(m,n);%将彩色图像ff转换为黑白图像ffori=1:mforj=1:nf(i,j)=ff(i,j);endenda=f(1,:);c=f(m,:);%将待插值图像矩阵前后各扩展两行两列,共扩展四行四列b=[f(1,1),f(1,1),f(:,1)',f(m,1),f(m,1)];d=[f(1,n),f(1,n),f(:,n)',f(m,n),f(m,n)];a1=[a;a;f;c;c];a1';b1=[b;b;a1';d;d];f=b1';f1=double(f);fori=1:k*m%利用双三次插值公式对新图象所有像素赋值u=rem(i,k)/k;i1=floor(i/k)+2;A=[sw(1+u)s
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

图像放大算法总结及MATLAB源程序(大全五篇)

文档大小:41KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用