利用空间变换网络如何将椭圆转换成正圆?
发布网友
发布时间:2022-04-29 21:38
我来回答
共2个回答
热心网友
时间:2022-06-23 08:21
CNN分类时,通常需要考虑输入样本的局部性、平移不变性、缩小不变性,旋转不变性等,以提高分类的准确度。这些不变性的本质就是图像处理的经典方法,即图像的裁剪、平移、缩放、旋转,而这些方法实际上就是对图像进行空间坐标变换,我们所熟悉的一种空间变换就是仿射变换,图像的仿射变换公式可以表示如下:
这里写图片描述
式中,(xSource,ySource
)表示原图像像素点,(xTarget,yTarget
)表示仿射变换后的图像像素点。系数矩阵θ
即为仿射变换系数,可以通过调整系数矩阵θ
,实现图像的放大、缩小、平移、旋转等。
那么,神经网络是否有办法,用一种统一的结构,自适应实现这些变换呢?本文提出了一种叫做空间变换网络(Spatial Transform Networks, STN)的网络模型,该网络不需要关键点的标定,能够根据分类或者其它任务自适应地将数据进行空间变换和对齐(包括平移、缩放、旋转以及其它几何变换等)。在输入数据空间差异较大的情况下,这个网络可以加在现有的卷积网络中,提高分类的准确性。
本文所提的空间变换网络的主要作用在于:
1.可以将输入变换为网络的下一层期望的形式;
2.可以在训练的过程中自动选择感兴趣的区域特征;
3.可以实现对各种形变的数据进行空间变换;
这里写图片描述
例如对于上图中输入手写字体,我们感兴趣的是*框中的包含数字的区域,那么在训练的过程中,学习到的空间变换网络会自动提取*框中的局部数据特征,并对框内的数据进行空间变换,得到输出output。
2. 空间变换网络原理详解
所谓空间变换网络,实际上是在神经网络的某两层之间引入一个空间变换网络,该空间变换网络包括两个部分,网络结构如下图所示:
这里写图片描述
第一部分为为”localization net”,其用于生成仿射变换系络结构进行设计,”localization net”网络中的参数则为空间变换网络需要训练的参数;第二部分就是空间变换即仿射变换。通过该局部网络产生仿射变换系数θ
(也可以是其他类型的空间变换,可以根据需要设计局部网络得到对应的空间变换系数θ
,本文只以仿射变换为例进行讲解),得到仿射变换系数θ
后我们就可以对上一层的输入进行仿射变换,并将仿射变换结果输入到下一层。例如上图中, U是输入图像或CNN某一层的feature map, V是仿射变换后的feature map,U与V中间夹着的就是“空间变换网络”,如上所说该空间变换网络中,”localization net”为用于生成仿射变换系数θ
,
热心网友
时间:2022-06-23 08:21
利用空间转换的网络,如果将椭圆转换成原的话,那么你可以把这个椭圆拉长就可以没能源。