【图像处理】图像的极坐标变换
来源:互联网 发布:北京seo推广推荐 编辑:程序博客网 时间:2024/05/19 02:01
之前碰到了一个问题,是如何将图像变换到极坐标下。查了一些资料,这里作一总结。
首先,正常的图像都是在直角坐标系下的,可以看做一个二维平面。我们要对图像进行坐标变换,首先要把位置转换到新的坐标系,然后将值赋过去。下面是百度到的一个MATLAB代码,实现了这个转换。
close all; clear all;A=imread('1.jpg'); %读取图像(已经存到当前文件夹) A1=double(A(:,:,1));A2=double(A(:,:,2));A3=double(A(:,:,3)); %rgb3通道转为double类型[m n]=size(A1);[t r]=meshgrid(linspace(-pi,pi,n),1:m); %原图坐标 M=2*m;N=2*n;[NN MM]=meshgrid((1:N)-n-0.5,(1:M)-m-0.5);T=atan2(NN,MM);R=sqrt(MM.^2+NN.^2); %变换图坐标 B1=interp2(t,r,A1,T,R,'linear',0);B2=interp2(t,r,A2,T,R,'linear',0);B3=interp2(t,r,A3,T,R,'linear',0); %rgb3通道插值B=uint8(cat(3,B1,B2,B3)); %合拼转换回uint8类型 subplot(121),imshow(A); %画原图subplot(122),imshow(B); %画变换图
可以看到其思路是先构建极坐标系,然后将直角坐标通过公式转换到极坐标下,再利用interp2函数插值,将像素值赋值过去。重点在于坐标的对应。
但是我在尝试将极坐标的图像转换到直角坐标的时候,位置变换总是不对,不知道问题出在哪,等以后解决了再更新这部分。
另外,在PS中极坐标用来生成具有艺术风格的图。可以看一个例子:PS极坐标滤镜将楼宇照片变为超现实地心世界
借用两张图
0 0
- 【图像处理】图像的极坐标变换
- 图像的坐标变换
- 图像极坐标变换
- 图像的Log-Polar极坐标变换
- 图像的基本坐标变换
- 图像处理的坐标变换必备的矩阵知识
- 【python图像处理】极坐标变换及插值算法
- 图像处理学习笔记之图像的几何变换(1)坐标映射
- 图像的几何变换之坐标映射
- 图像的几何变换之坐标映射
- 图像处理的几何变换
- 图像处理--图像的几何变换--旋转变换
- 图像预处理——图像坐标变换
- 【图像处理】直方图变换
- 【图像处理】空间变换
- 图像处理-Gamma变换
- 图像处理傅立叶变换
- 图像处理--颜色变换
- random.nextInt()与Math.random()基础用法
- bzoj1078: [SCOI2008]斜堆
- MyBatis(二)
- 数据库oracle,pgsq,mysql.相关设置
- HTML 语言代码参考手册
- 【图像处理】图像的极坐标变换
- c++中指针与引用的区别
- 蓝鸥Unity入门刚体学习笔记
- ArryList java.util.ConcurrentModificationException异常
- Ubuntu配置和修改IP地址
- AFN调用webservice
- 拦截器和过滤器的区别
- mysql+spring+mybatis实现数据库读写分离[代码配置]
- iOS学习笔记-054.自定义View02——小黄人