Fast Radial Symmetry Transform/快速径向对称变换
本文主要介绍一下利用径向变换进行特征提取的方法和原理,基本原理主要来自Gareth Loy and Alexander Zelinsky的A Fast Radial Symmetry Transform for Detecting Points of Interest一文。需要原文的可以留下邮箱。
Radial Symmetry Transform(径向对称变换)在某种程度上类似于霍夫圆变换,二者的主要区别在于:前者主要考察一副图像中的每个像素点对它周围邻域内的像素点的作用(贡献),而后者则主要考察一个像素点的邻域对当前像素点的作用(贡献)。本算法的算法复杂度为O(KN),其中K为原图像的总的像素点数,N为考察的N*N的邻域范围。
下面简要介绍算法的基本思想,首先定义orientation projection image On(方向投影图On) 和 magnitude projection image Mn(尺寸投影图)
对原图的每一个像素点p计算梯度值g(p),设定以n为径向对称变换的半径,则在每一像素点p处就会分别有positively-affected pixel P+ve (p) 和 negatively-affected pixel P−ve (p)。
由图可知,对应的两点分别在以p为中心range n为半径的圆上,且 P+ve为g(p)所指向的点,而 P−ve为g(p)背离的点。对应的两点的计算方法如下:
现在考虑如何建立On和Mn:
将On上分别对应于P+ve和 P−ve的两点分别加1和减1,而将Mn上与之对应的两点分别加 ||g(p)||和减 ||g(p)||,计算公式分别如下,
经过对原图中的所有像素点进行遍历之后,相应的也建立起了image On和image Mn,接下来计算经过径向对称变换之后的图像,过程如下:
n为前面设定的半径,Sn即变换得到的图像,其中Fn如下所示:
在此说明一点,图像即为矩阵,可以相互转化应用计算方法等。上面公式应该不难理解。至于为什么要这么做,文章没有做解释,本人属菜鸟,不能解读大牛的思路。
在此即基本可以获得了经过径向对称变换之后的图像。最后,所谓的full transform即所有range n的对称变换之和,如下:
贴上几张进行变换后得到的图:
广义对称变换考虑的是周围像素点对其中心点的对称性影响。而径向对称变换则是考虑每个像素点对它周
围点的对称性影响。
Fast Radial Symmetry Transform/快速径向对称变换相关推荐
- SIFT和SURF的替换算法——ORB (Oriented FAST and Rotated BRIEF 快速定向和旋转)
SIFT和SURF的替代算法--ORB (Oriented FAST and Rotated BRIEF 快速定向和旋转 1. 效果图 2. 源码 参考 1. 用于关键点检测和描述的SIFT(Scal ...
- RBF(Radial Basis Function Network)+径向基网络
RBF(Radial Basis Function Network)+径向基网络 在SVM中引入Gaussian Kernel就能在无限多维的特征转换中得到一条"粗壮"的分界线(或 ...
- MIML系列(一):Fast Multi-Instance Multi-Label Learning 快速多示例多标签学习
MIML系列(一):Fast Multi-Instance Multi-Label Learning 快速多示例多标签学习 目前的研究方向是基于MIML的,然而网上关于MIML的论文讲解有点少,因 ...
- Fast Compressive Tracking(快速压缩跟踪)算法的C++代码实现
本文系原创,转载请注明. 有问题请留言或发邮箱:johnnycons@163.com 因为实验室项目工程的需要,最近在研究目标跟踪算法.这里提的Fast Compressive Tracking (快 ...
- Fast Walsh-Hadamard Transform——快速沃尔什变换
模板题: 给定$n = 2^k$和两个序列$A_{0..n-1}$, $B_{0..n-1}$,求 $$C_i = \sum_{j \oplus k = i} A_j B_k$$ 其中$\oplus$ ...
- Fast Fourier transform快速傅里叶变换
0 傅里叶分析和滤波 资料来源:https://ww2.mathworks.cn/help/matlab/fourier-analysis-and-filtering.html?s_tid=CRUX_ ...
- 高通WLAN框架学习(8)- - Legacy fast roaming(传统快速漫游)
漫游是指STA试图找到一个有效的AP以实现数据吞吐量和可靠连接的过程. Wi-Fi漫游分为以下三个阶段. 每个阶段都有特定的目的.定义的输入和操作. 1. 漫游触发器--我需要漫游吗? 2. 候选人搜 ...
- java 投票算法_Boyer and Moore Fast majority vote algorithm(快速选举算法)
问题来来自于leetcode上的一道题目,https://leetcode.com/problems/majority-element/,大意是是找出一个数组中,出现次数超过一个半的数字,要求是O(n ...
- 医学影像 -CMBs-ing
[疾病/专业名词] 创伤性脑损伤TBI | traumatic brain injury | 阿尔茨海默病Alzheimer | Alzheimer | Alzheimer disease ische ...
最新文章
- python官网怎么改中文-如何配置pycharm为中文?
- 第二次作业:王者荣耀软件分析
- discuz nt 安装,完全攻略。
- 二叉树展开为链表—leetcode114
- 信息学奥赛一本通(1197:山区建小学)
- 计算机九大核心课程,九大变化,透析IB(国际文凭)课程发展趋势
- ios 横向滚轮效果_iOS 可以纵向横向滑动的表格实现
- 计算机主机特点,计算机的五大特点是什么
- LINUX编译OpenJDK8:cc1plus: all warnings being treated as errors
- CreatePipe/CreateProcess
- 机器翻译的流程(原理)是怎么样的?
- Docker安装加速器
- 关于嵌入式的学习和职业发展
- 嵌入式开发日记(3)——利用Python接收并处理JY61传感器数据
- android播放3gp格式,Android – 无法播放任何视频(mp4 / mov / 3gp /等)?
- 9. Enhancing Aspect Term Extraction with Soft Prototypes论文阅读笔记
- 微信卡劵、微信卡包,必须是认证订阅号或认证服务号
- 页面打印表格换页问题
- 跟 John Ousterhout 学 Raft 算法
- C语言 sigaction函数捕捉信号 注册回调函数