Radon变换——MATLAB
算法说明:
图像的Radon变换是每个像素的Radon变换的总和。
该算法首先将图像中的像素分成四个子像素,并分别投影每个子像素,如下图所示。

根据投影位置和箱体中心之间的距离,每个子像素的贡献按比例分成两个最近的仓。如果子像素投影击中仓的中心点,则轴上的仓将获得子像素的全部值,或像素值的四分之一。如果子像素投影命中两个分区之间的边界,则子像素值在分区之间被均匀分割。
语法:
R = radon(I, theta)
[R,xp] = radon(...)
[___]= radon(gpuarrayI,theta)
描述:
R = radon(I, theta)返回角度度R的强度图像的Radon变换。Itheta
Radon变换是沿着以特定角度定向的径向线的图像强度的投影。如果theta是标量,R则是包含theta度数的Radon变换的列向量。如果theta是向量,R则是其中每列是其中一个角度的Radon变换的矩阵theta。如果省略theta,则默认为0:179。
[R,xp] = radon(...)返回一个xp包含对应于每行的径向坐标的向量R。
径向坐标返回在xp沿着值X '轴,其在面向theta逆时针方向从度X轴。两个轴的原点是图像的中心像素,其定义为
地板((大小(I)+1)/ 2)
例如,在20×30的图像中,中心像素为(10,15)。
[___]= radon(gpuarrayI,theta)在GPU上执行Radon变换。输入图像和返回值是2-D gpuArrays。theta可以是double基础类的一个或者gpuArray double。
类支持:
I可以是类double,logical或任何整数类。所有其他输入和输出都是类double。这两个输入都不可能是稀疏的。
gpuarrayI是与基础类gpuArray uint8,uint16,uint32,int8,int16,int32,logical,single或double,并且必须是二维的。theta是double底层类的向量或gpuArray向量double。
实例:
计算Radon变换和显示图
使轴缩放可见此图像。
iptsetpref('ImshowAxesVisible','on')
创建示例图像。
I = zeros(,);
I(:, :) = ;
计算Radon变换。
theta = :;
[R,xp] = radon(I,theta);
显示变换。
imshow(R,[],'Xdata',theta,'Ydata',xp,'InitialMagnification','fit')
xlabel('\theta (degrees)')
ylabel('x''')
colormap(gca,hot), colorbar

使轴缩放不可见。
iptsetpref('ImshowAxesVisible','off')
计算GPU上的Radon变换
在GPU上计算Radon变换并将其可视化。
 iptsetpref('ImshowAxesVisible','on')
 I = zeros(,);
 I(:, :) = ;
 theta = :;
 [R,xp] = radon(gpuArray(I),theta);
 imshow(R,[],'Xdata',theta,'Ydata',xp,...
             'InitialMagnification','fit')
 xlabel('\theta (degrees)')
 ylabel('x''')
 colormap(gca,hot), colorbar
 iptsetpref('ImshowAxesVisible','off')
作者:耑新新,发布于 博客园
转载请注明出处,欢迎邮件交流:zhuanxinxin@aliyun.com
Radon变换——MATLAB的更多相关文章
- Hilbert-Huang Transform: matlab 希尔伯特-黄变换: matlab实现
		
关于Hilbert-Huang的matlab实现,材料汇总,比较杂...感谢所有网络上的贡献者们:) 核心:以下代码计算HHT边际谱及其对应频率 工具包要求:G-Rilling EMD Toolbox ...
 - matlab函数大全
		
Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ col ...
 - MATLAB图像处理函数汇总(二)
		
60.imnoise 功能:增加图像的渲染效果. 语法: J = imnoise(I,type) J = imnoise(I,type,parameters) 举例 I = imread('eight ...
 - matlab图像处理
		
matlab图像处理 转自:http://www.cnblogs.com/lovebay/p/5094146.html 1. 图像和图像数据 缺省情况下,MATLAB将图像中的数据存储为双精度类型(d ...
 - 学习笔记(2)---Matlab 图像处理相关函数命令大全
		
Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ col ...
 - matlab 小波变换
		
MATLAB小波变换指令及其功能介绍 1 一维小波变换的 Matlab 实现 (1) dwt函数 功能:一维离散小波变换 格式:[cA,cD]=dwt(X,'wname') [cA,cD]=dwt(X ...
 - MATLAB图像处理工具箱
		
下列表格中除了个别函数外,其余函数都是图像处理工具箱提供的关于图像处理的函数,现摘录到此以备查找. 表1 图像显示 函数名 功能说明 函数名 功能说明 colorbar 颜色条显示 montage 按 ...
 - matlab快捷键大全
		
原文地址,点此查看 一.常用对象操作 除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who 可以查看当前 ...
 - [转载] MATLAB快捷键
		
原文地址,点此查看 一.常用对象操作 除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who 可以查看当前 ...
 
随机推荐
- Java基础-日期格式化DateFormat类简介
			
Java基础-日期格式化DateFormat类简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DateFormat类概述 DateFormat 是日期/时间格式化子类的抽象 ...
 - 如何安装ioncube扩展对PHP代码加密
			
禅道专业版本的核心代码都是加密的(前端的html, css, js, 配置,语言项是开源的)的,使用的加密软件是 ioncube,因此要能运行禅道专业版本的软件,先要按照ioncube扩展. 一.下载 ...
 - 【转载】wondows下wget的使用
			
原文地址:http://www.cnblogs.com/Randy0528/archive/2011/10/21/2219831.html 感觉要放弃windows了,,,哎,,,, 下载window ...
 - Java并发编程原理与实战二十:线程安全性问题简单总结
			
一.出现线程安全性问题的条件 •在多线程的环境下 •必须有共享资源 •对共享资源进行非原子性操作 二.解决线程安全性问题的途径 •synchronized (偏向锁,轻量级锁,重量级锁) •vol ...
 - browser.versions.weixin
			
最近做很多HTML5的项目,很多页面会通过微信微博等SNS分享出去.在分享页面上提供公司APP的下载.但是在很多应用的浏览器中,点击下载链接无法下载应用.那么针对这些浏览器我们需要给用户提示从safa ...
 - [整理]LumiSoft.Net 开源组件
			
http://www.lumisoft.ee/lsWWW/download/downloads/Net/info.txt SVN: https://svn.lumisoft.ee:8443/svn/L ...
 - LintCode 387: Smallest Difference
			
LintCode 387: Smallest Difference 题目描述 给定两个整数数组(第一个是数组A,第二个是数组B),在数组A中取A[i],数组B中取B[j],A[i]和B[j]两者的差越 ...
 - 对某道ctf的一点点记录
			
题目:http://ctf5.shiyanbar.com/web/pcat/index.php 是一道注入的题,主要利用了offset 和 group by with rollup的知识 1.offs ...
 - Linux基础操作-分区概念
			
开启Linux系统前添加一块大小为20G的SCSI硬盘 开启系统,右击桌面,打开终端 为新加的硬盘分区,一个主分区大小为10G,剩余空间给扩展分区,在扩展分区上划分两个逻辑分区,大小各5G 进入分区工 ...
 - Centos7安装 mysql5.6.29 shell脚本
			
有很多可以借鉴的地方,故转载: 创建脚本mysql.sh,直接运行sh mysql.sh !/bin/bash if [ -d /software ] ;then cd /software else ...