Log Polar就是所谓的极坐标变换,通过变换能将笛卡尔坐标系中的图像映射到极坐标系中。

确切的来说我这里不算是Log Polar,因为Log Polar是将图像从(x,y)映射到(log(r),theta),而我是将图像从(x,y)映射到(r,theta)。

原理是一样的。

变换公式是:

x=r*cos(theta);

y=r*sin(theta);

其中r代表极径,theta代表极角。这些应该学过高中的都会的。

下图能形象的表示变换:

似乎有通过此变换求图像特征的算法,不过具体操作我也不清楚。

我这里只是实现了变换的操作。

原图如下:

以图像中心作为极坐标原点进行极坐标变换:

matlab代码如下:

clear all; close all; clc;img=double(imread('lena.jpg'));
imshow(img,[]);
[m n]=size(img);[ox oy]=ginput();   %获得极坐标变换的原点
oy=round(oy);
ox=round(ox);%求中心点到图像四个角的距离
up_left=sqrt((oy-0)^2+(ox-0)^2);
up_right=sqrt((oy-0)^2+(ox-n)^2);
down_left=sqrt((oy-m)^2+(ox-0)^2);
down_right=sqrt((oy-m)^2+(ox-n)^2);%求中心点距离四角距离的最大值,作为变换后图像的高。
%这个最大值也是极坐标变换的极径
radius=round(max([up_left up_right down_left down_right]));
angle=360;      %变换后图像的宽
imgn=zeros(radius,angle);
for i=1:radius          %纵坐标代表极径,不同情况不一样for j=1:angle       %横坐标代表极角,恒为360%oy,ox作为极坐标变换中心坐标,需要作为偏移量相加h=oy+round(i*sin(j*pi/180));w=ox+round(i*cos(j*pi/180));if h>0 && w> 0&& h<=m && w<=n  %超出原图像的像素忽略imgn(i,j)=img(h,w);     %最邻近插值,因为前面求h,w用了round();endend
endfigure;
imshow(imgn,[]);

转载于:https://www.cnblogs.com/tiandsp/archive/2013/06/09/3129198.html

matlab练习程序(Log Polar变换)相关推荐

  1. matlab 电化学程序,基于MATLAB的电化学滴定曲线导数变换的实现

    冶金分析 ,2010 ,30(10) :1619Metallurgical Analysis ,2010 ,30(10) :16219文章编号 :1000 - 7571(2010) 10 - 0016 ...

  2. 安装matlab应用程序遇到意外错误并且需要关闭。您可能需要尝试重新安装产品。有关详细信息,请查看C:\user\name\AppData\Local\Temp\mathworks_name.log

    当安装matlab时可能会遇到以下问题,目前解决方案还是不能确定,不过官方给出了以下截图的回复. 注:图源来自:https://blog.csdn.net/weixin_43837441/articl ...

  3. matlab hilb,MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础

    <MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础>由会员分享,可在线阅读,更多相关<MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础(7 ...

  4. MATLAB能进行拉氏变换吗,matlab拉氏反变换

    §2.3 拉氏变换和拉氏反变换的定义 ? §2.4 典型时间函数的拉氏变换 ? §2.5 拉氏变换的性质 ? §2.6 拉氏反变换的数学方法 ? §2.7 用拉氏变换解...... 实验八 拉氏正反变 ...

  5. 差分方程 matlab,差分方程的解法分析及MATLAB实现(程序)

    差分方程的解法分析及MATLAB 实现(程序) 摘自:张登奇,彭仕玉.差分方程的解法分析及其MATLAB 实现[J]. 湖南理工学院学报.2014(03) 引言 线性常系数差分方程是描述线性时不变离散 ...

  6. matlab多元回归程序,多元回归程序MATLAB程序

    <多元回归程序MATLAB程序>由会员分享,可在线阅读,更多相关<多元回归程序MATLAB程序(45页珍藏版)>请在人人文库网上搜索. 1.程序MATLAB多元回归程序matl ...

  7. 无源定位之时差估计的精确时差估计算法(ETDE)及MATLAB实现程序

    精确时差估计算法(ETDE)及MATLAB实现程序 算法原理 算法总结 性能分析 实验结果 算法原理 假设两接收站分别接收的带噪信号为 {x(kT)=s(kT)+ε1(kT)y(kT)=s(kT−D) ...

  8. matlab潮流程序,IEEE33节点matlab潮流程序.doc

    IEEE33节点matlab潮流程序 Bus [1,0,0 ; 2,100, 60; 3,90,40; 4,120,80; 5,60,30; 6,60,20; 7, 200, 100 ; 8,200, ...

  9. matlab有意思程序,matlab有意思的小程序

    10个C++趣味小程序,很有意思的.VIP专享文档 VIP专享文档是百度文库认... 现在很多人使用微信的时间已经非常长了,他们注册的微信号往上可能已经是5年前的事情了,正是由于不少使用者在这个过程当 ...

最新文章

  1. 因子分析数据_Excel数据分析案例:用Excel做因子分析
  2. 计算机c盘属性不显示安全选项,win7系统中文件夹属性安全选项卡空白的解决方法...
  3. 战神笔记本电脑自带access吗_双·12超值价 十代酷睿+GTX1650游戏本只卖4219元_神舟 战神Z7M-CU5NB_笔记本新闻...
  4. 博士申请 | 澳大利亚悉尼科技大学招收人工智能/软件工程方向全奖博士生
  5. iOS-多线程 ,整理集锦,多种线程的创建
  6. 掌握了开源框架还不够,你更需要掌握源代码
  7. kettle-查询控件
  8. [Perl系列—] 2. Perl 中的引用使用方法
  9. 如何编写高质量的代码二 - 类的设计
  10. 创建 tomcat 服务的镜像
  11. 博图注册表删除方法_win7系统鼠标右键刷新反应慢原因【解决方法】
  12. c++语言里平方根值函数,函数式编程之函数定义与使用(以scala语言为例)
  13. matlab 图像分割_数字图像处理第三版中_冈萨雷斯【MATLAB】(推书活动第十七期)...
  14. js实现json格式化,以及json校验工具的简单实现
  15. 划重点 传输层协议 tcp三次握手和四次挥手
  16. android热门搜索标签,Android网易云历史搜索和热门标签
  17. win10在电脑已经连接WIFI的情况下查询到WiFi密码(不方便询问或没有办法获得密码的时候)
  18. 千团大战再现社区团购 下一个“拼多多”会在这里诞生吗?
  19. R语言建立和可视化混合效应模型mixed effect model
  20. Centos7 安装Nat123

热门文章

  1. 使用 ASP.NET 加密口令
  2. 开源库jemalloc简介
  3. Android.mk和Application.mk文件语法规范说明及举例
  4. OpenCV编程案例:使用轮廓函数检测连通区域
  5. 【FFmpeg】ffmpeg命令详解(三)高级选项
  6. 【物联网】NB-IoT简介
  7. vue更新data中的数据页面不渲染_vue更新obj类data的属性无效,页面data没刷新解决方法vue.set...
  8. python tkinter 滚动条_如何在tkinter窗口中添加滚动条?
  9. python 加载动图_在浏览器中使用TensorFlow.js和Python构建机器学习模型(附代码)...
  10. 复杂JSON参数传递后台处理方式