数字图像处理之几何变换理论理解篇

数字图像处理之几何变换理论理解篇

几何变换,不改变图像的像素值,只是改变图像的坐标位置

解题方法,求新图像与原始图像的对应坐标之间的关系

1、图像平移

x1=x0+a;
y1=y0+b;
J(i,j)=I(i-a,j-b);

2、图像镜像

(1)水平镜像

x1=M-x0;
y1=y0;
J(i,j)=I(i,N-j+1);
(此处要理解x,y与M,N关系,M,N是图像的行数与列数,x是列坐标,y是行坐标,水平镜像沿平行y轴方向翻转,y坐标不变,在编程时,i是行坐标,j是列坐标)

(2)垂直镜像

x1=x0;
y1=N-y0;
J(i,j)=I(M-i+1,j);
(垂直翻转,x坐标不变,也就是列坐标j不变)

(3)水平垂直镜像

J(i,j)=I(M-i+1,N-j+1);

3、图像转置

图像转置即为行列互换,灰度值直接看成矩阵的元素
x1=y0;
y1=x0;
J=I’;

4图像缩放

指图像大小按照指定的比率放大或缩小,改变图像的尺寸
x1=ax0;
y1=a
y0;
(理解:假如我原来图像33规格,现在变成99规格的话,我可以把每一个边缘往外扩张3倍,如果原来是99,现在是33的话,我可以每三个边缘抽取一条)
编程时候要注意取整函数,floor与ceil
J(i,j)=I(x,y);
缩小情况:
x=floor(i/times);
y=floor(j/times);或者ceil也可以
放大情况:
x=ceil(i/times);
y=ceil(j/times);
如果不用ceil的话,i=1除以times取整就为0了

5、图像旋转

(1)以原点为中心

在这里插入图片描述

原来图像是红色线条,旋转后图像是黄色线条,旋转角度a,逆时针旋转
sin(b)=x0/L;
cos(b)=y0/L;
sin(a+b)=x1/L=sin(a)cos(b)+cos(a)sin(b);
cos(a+b)=y1/L=cos(a)cos(b)-sin(a)sin(b);
x1=y0sin(a)+x0cos(a);
y1=y0cos(a)-x0sin(a);
J(i,j)=I(x,y);
x=floor(icos(angpi/180)+jsin(angpi/180));
y=floor(jcos(angpi/180)-isin(angpi/180));

(2)以图像中心为中心

在这里插入图片描述
sin(b)=(x0-M/2)/L;
cos(b)=(y0-N/2)/L;
sin(a+b)=(x1-M/2)/L;
cos(a+b)=(y-N/2)/L;
方法同上
x=floor((i-M/2)cos(angpi/180)+(j-N/2)sin(angpi/180)+M/2);
y=floor((j-N/2)cos(angpi/180)-(i-M/2)sin(angpi/180)+N/2);

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值