数字图像处理中的旋转不变性
参考资料:chongbin li:Laplacian算子的旋转不变性证明一、 函数图形的旋转不变性
数字图像处理中的函数图形的旋转不变,是指二元函数以Z轴为旋转轴旋转后,仍然是该二元函数本身。也即对于任意的 (x,y) ,有 f(x,y)=f(x^{'},y^{'}) ,其中: (x^{'},y^{'}) 是坐标 (x,y) 旋转后的坐标。
图1
图2
这里的二元函数可以是二元连续函数,也可以是二元离散函数。(之所以指明“二元函数”,是因为数字图像与二元函数相对应,因此对于数字图像领域中的旋转不变,特指二元函数而言)。
例1:
函数 f(x,y)=x^{2}+y^{2} 的函数图形具有(旋转任意角度的)旋转不变性。因为将该函数绕Z轴旋转任意角度后,依然是函数自身。
可以从数学的角度严格证明:
x^{'}=cosa*x-sina*y
y^{'}=sina*x+cosa*y
f(x^{'},y^{'})=(cosa*x-sina*y)^{2}+(sina*x+cosa*y)^{2}=x^{2}+y^{2}=f(x,y)
所以该函数的函数图形具有任意角度的旋转不变性。
例2:
如下图所示的二维离散函数,坐标原点O位于正中央,Z轴垂直于纸面,方格中的数值是对应坐标处的函数值。该二维离散函数的函数图形具有90度的旋转不变性。因为将该函数绕Z轴旋转90度后,依然是函数自身。
由于二维离散函数与二维矩阵的关系,由二维离散函数的旋转不变性又引申出二维矩阵的旋转不变性:
一个二维矩阵,绕中心元素在纸平面内旋转90度后,依然是该矩阵自身,则该矩阵具有90度的旋转不变性。例2中的矩阵就具有旋转不变性。
二维函数的函数图形的旋转不变性,也意味着旋转前的函数在(x,y)处的函数值等于旋转后的函数在(x,y)处的函数值。
二、算子的旋转不变性
用算子对函数进行运算可以看做求函数的某一性质。
(一)拉普拉斯算子的旋转不变性,证明见:
chongbin li:Laplacian算子的旋转不变性证明
(二)梯度的模的旋转不变性,证明过程如下:
x=cos\theta x^{'}+sin\theta y^{'} (公式2.1.1)
y=-sin\theta x^{'}+cos\theta y^{'}(公式2.1.2)
由以上关系式可推出:
\frac{\partial x}{\partial x^{'}}=cos\theta \qquad \frac{\partial x}{\partial y^{'}}=sin\theta
\frac{\partial y}{\partial x^{'}}=-sin\theta \qquad \frac{\partial y}{\partial y^{'}}=cos\theta
f(x,y) 对 x^{'} 的偏导数可写作:
\frac{\partial f(x,y)}{\partial x^{'}}=\frac{\partial f(x,y)}{\partial x}\frac{\partial x}{\partial x^{'}}+\frac{\partial f(x,y)}{\partial y}\frac{\partial y}{\partial x^{'}} = \frac{\partial f(x,y)}{\partial x}cos\theta+\frac{\partial f(x,y)}{\partial y}(-sin\theta)
同理:f(x,y) 对 y^{'} 的偏导数可写作:
\frac{\partial f(x,y)}{\partial y^{'}}=\frac{\partial f(x,y)}{\partial x}sin\theta+\frac{\partial f(x,y)}{\partial y}cos\theta
因此,由上面两式可求出:
\left( \frac{\partial f(x,y)}{\partial x^{'}} \right)^{2}+\left( \frac{\partial f(x,y)}{\partial y^{'}} \right)^{2} = \left( \frac{\partial f(x,y)}{\partial x} \right)^{2}+\left( \frac{\partial f(x,y)}{\partial y} \right)^{2}(公式2.2)
证毕。
为什么证明(公式2.2)就能够证明旋转不变性?只需要弄明白以下几个问题即可:
首先,要知晓函数f(x,y)逆时针旋转 \theta 角度后的函数表达式。
设函数f(x,y)逆时针旋转 \theta 角度后的函数表达式为g(x,y),在点(x',y')处,函数g(x,y)的函数值g(x',y')应该等于f(x,y),其中(x,y)与(x',y')具有图1和图2之间的函数约束关系。即:
g(x^{'},y^{'})=f(x,y)=f(cos\theta x^{'}+sin\theta y^{'},-sin\theta x^{'}+cos\theta y^{'})
g(x',y')就是f(x,y)旋转\theta 角度后的函数表达式。
因此 \frac{\partial f(x,y)}{\partial x^{'}}=\frac{\partial f(cos\theta x^{'}+sin\theta y^{'},-sin\theta x^{'}+cos\theta y^{'})}{\partial x^{'}} = \frac{\partial g(x^{'},y^{'})}{\partial x^{'}}
到这里,我们导出了一个关系式: \frac{\partial f(x,y)}{\partial x^{'}} = \frac{\partial g(x^{'},y^{'})}{\partial x^{'}}
而 \frac{\partial g(x^{'},y^{'})}{\partial x^{'}} 表示g(x',y')这个函数在(x',y')处的偏导数值,也即是旋转后的图形在(x',y')处的偏导数值。
到此,我们 也进一步深化了对旋转不变性的认识:所谓算子的旋转不变性,就是对于函数图像上的一点(x0,y0),在函数图像绕Z轴旋转后(注意:该点在图像上,会随着函数图像的旋转而旋转,从而该点的坐标由(x0,y0)变为(x'0,y'0)),形成的新函数图像在该点(坐标为(x'0,y'0))的“性质”不会发生改变。若用 \vee 表示算子,算子的旋转不变性即 \vee f(x_{0},y_{0})=\vee g(x_{0}^{'},x_{0}^{'}) ,其中g(x,y)是f(x,y)绕Z轴旋转后的函数。
其实不通过严格证明,我们结合二元函数的图形想象一下,也会得出梯度的模这个算子是旋转不变的;而f(x,y)的偏导数却不具有旋转不变性,结合二元函数的图形想象一下,这也是显然的。
举例:二元函数f(x,y)的偏导数 \frac{\partial f}{\partial x} 是否具有旋转不变性?
在这个例子里,偏导数 \frac{\partial f}{\partial x} 是 f(x,y) 经运算之后得到的,可以当成二元函数 f(x,y) 的某个“性质”。
显然,偏导数不具有旋转不变性。举一个反例:
f(x,y)=xy+2x
在 (x,y) 处的偏导数 \frac{\partial f}{\partial x}=y+2 ,\frac{\partial f}{\partial y}=x
旋转后的坐标为:
x^{'}=cosa*x-sina*y
y^{'}=sina*x+cosa*y
页:
[1]