特征检测子 -- Harris & LoG & DoG 高斯金字塔

Harris角点

角点可以认为是两条边缘的交点处,在此处,梯度的方向和幅值都变化较大

  • 梯度幅值变化大可以理解为该点与其他像素灰度值的差值较大

  • 梯度方向变化大可以理解为沿着任何一个方向移动,该点与周围像素的灰度差值都较大,与之形成对比的是边缘,垂直于边缘的方向,灰度值的差值变化较大,但是沿着边缘的方向灰度差值变化较小。

这样,对于一张图像,按照梯度方向和幅值考虑,有三种情况:平面、边缘、角点

人眼对角点的识别通常是通过在一个局部的小区域或小窗口完成的,上述三种情况分别对应下面三张图片。

图像 I ( x , y ) I(x, y) I(x,y),当在点 (   x ,   y ) (\ x, \ y) ( x, y)处平移 ( Δ x , Δ y ) (\Delta x, \Delta y) (Δx,Δy)后的自相似性,可以通过自相关函数给出:
c ( x , y , Δ x , Δ y ) = ∑ ( u , v ) ∈ W ( x , y ) w ( u , v ) ( I ( u , v ) − I ( u + Δ x , v + Δ y ) ) 2 c(x, y, \Delta x, \Delta y)=\sum_{(u, v) \in W(x, y)} w(u, v)(I(u, v)-I(u+\Delta x, v+\Delta y))^{2} c(x,y,Δx,Δy)=(u,v)W(x,y)w(u,v)(I(u,v)I(u+Δx,v+Δy))2
式中, W ( x , y ) W(x, y) W(x,y)是以点 ( x , y ) (x, y) (x,y)为中心的窗口, W ( u , v ) W(u, v) W(u,v)为加权函数,它既可以是常数,也可以是高斯加权函数: exp ⁡ − ( u − x ) 2 − ( v − y ) 2 2 σ 2 \exp \frac{-(u-x)^{2}-(v-y)^{2}}{2 \sigma^{2}} exp2σ2(ux)2(vy)2,如下图所示。为简化起见,将 ∑ ( u , v ) ∈ W ( x , y ) w ( u , v ) \sum_{(u, v) \in W(x, y)} w(u, v) (u,v)W(x,y)w(u,v)表示为了 ∑ w \sum_{w} w

根据泰勒展开,对图像 I ( x , y ) I(x,y) I(x,y)在平移 ( Δ x , Δ y ) (\Delta x, \Delta y) (Δx,Δy)后进行一阶近似:
I ( u + Δ x , v + Δ y ) ≈ I ( u , v ) + I x ( u , v ) Δ x + I y ( u , v ) Δ y = I ( u , v ) + [ I x ( u , v ) , I y ( u , v ) ] [ Δ x Δ y ] \begin{aligned} I(u+\Delta x, v+\Delta y) & \approx I(u, v)+I_{x}(u, v) \Delta x+I_{y}(u, v) \Delta y \\ &=I(u, v)+\left[I_{x}(u, v), I_{y}(u, v)\right]\left[\begin{array}{l}{\Delta x} \\ {\Delta y}\end{array}\right] \end{aligned} I(u+Δx,v+Δy)I(u,v)+Ix(u,v)Δx+Iy(u,v)Δy=I(u,v)+[Ix(u,v),Iy(u,v)][ΔxΔy]
式中, I x I_{x} Ix I y I_{y} Iy,是图像 I ( x , y ) I(x,y) I(x,y)的偏导数。那么上面的自相关函数近似为:
c ( x , y ; Δ x , Δ y ) = ∑ w ( I ( u , v ) − I ( u + Δ x , v + Δ y ) ) 2 ≈ ∑ w ( [ − I x ( u , v ) , − I y ( u , v ) ] [ Δ x Δ x ] ) 2 = [ Δ x , Δ y ] M ( x , y ) [ Δ x Δ y ] \begin{aligned} c(x, y ; \Delta x, \Delta y) &=\sum_{w}(I(u, v)-I(u+\Delta x, v+\Delta y))^{2} \\ & \approx \sum_{w}\left(\left[-I_{x}(u, v),-I_{y}(u, v)\right]\left[\begin{array}{l}{\Delta x} \\ {\Delta x}\end{array}\right]\right)^{2} \\ &=[\Delta x, \Delta y] M(x, y)\left[\begin{array}{l}{\Delta x} \\ {\Delta y}\end{array}\right] \end{aligned} c(x,y;Δx,Δy)=w(I(u,v)I(u+Δx,v+Δy))2w([Ix(u,v),Iy(u,v)][ΔxΔx])2=[Δx,Δy]M(x,y)[ΔxΔy]
其中
M ( x , y ) = ∑ w [ I x ( x , y ) 2 I x ( x , y ) I y ( x , y ) I x ( x , y ) I y ( x , y ) I y ( x , y ) 2 ] = [ ∑ w I x ( x , y ) 2 ∑ w I x ( x , y ) I y ( x , y ) ∑ w I x ( x , y ) I y ( x , y ) ∑ w I y ( x , y ) 2 ] = [ A C C B ] \begin{aligned} \boldsymbol{M}(x, y) &=\sum_{w}\left[\begin{array}{cc}{I_{x}(x, y)^{2}} & {I_{x}(x, y) I_{y}(x, y)} \\ {I_{x}(x, y) I_{y}(x, y)} & {I_{y}(x, y)^{2}}\end{array}\right] \\ &=\left[\begin{array}{cc}{\sum_{w} I_{x}(x, y)^{2}} & {\sum_{w} I_{x}(x, y) I_{y}(x, y)} \\ {\sum_{w} I_{x}(x, y) I_{y}(x, y)} & {\sum_{w} I_{y}(x, y)^{2}}\end{array}\right]=\left[\begin{array}{cc}{A} & {C} \\ {C} & {B}\end{array}\right] \end{aligned} M(x,y)=w[Ix(x,y)2Ix(x,y)Iy(x,y)Ix(x,y)Iy(x,y)Iy(x,y)2]=[wIx(x,y)2wIx(x,y)Iy(x,y)wIx(x,y)Iy(x,y)wIy(x,y)2]=[ACCB]

上面为一个实对称矩阵,也可看作是二次型矩阵,因此通过上面的二次型矩阵可以写成一个圆锥曲线
[ Δ x , Δ y ] M ( x , y ) [ Δ x Δ y ] = c o n s t [\Delta x, \Delta y] M(x, y)\left[\begin{array}{c}{\Delta x} \\ {\Delta y}\end{array}\right]=const [Δx,Δy]M(x,y)[ΔxΔy]=const
后面的常数为线性常数,可以简化为1,即:
[ Δ x , Δ y ] M ( x , y ) [ Δ x Δ y ] = 1 [\Delta x, \Delta y] M(x, y)\left[\begin{array}{c}{\Delta x} \\ {\Delta y}\end{array}\right]=1 [Δx,Δy]M(x,y)[ΔxΔy]=1
上面是一个二次项函数,二次项函数本质上就是一个椭圆函数椭圆的扁率和尺寸是由 M ( x , y ) \boldsymbol{M}(x, y) M(x,y)的特征值 λ 1 , λ 2 \lambda_{1}, \lambda_{2} λ1,λ2决定的椭圆的方向是由 M ( x , y ) \boldsymbol{M}(x, y) M(x,y)的特征矢量决定的。上面的这些性质可以参考如何理解二次型这篇文章,写的非常好。
椭圆曲线如下图所示。

同样可以从PCA的角度来考虑,如果对矩阵 M \boldsymbol{M} M对角化,那么,特征值就是主分量上的方差,矩阵​是二维的方阵,有两个主分量,如果在窗口区域内是角点,那么梯度变化会较大,像素点的梯度分布比较离散,这体现在特征值上就是特征值比较大(引自Jackpop)

可以看到:不管是通过椭圆曲线还是PCA角度分析,最后都是判断 M \boldsymbol{M} M的两个特征值的大小情况,因为两个特征值对应着两个正交方向上的灰度值梯度的大小情况。特征值越大,代表灰度值梯度在该主方向上大,如果两个正交方向上的特征值都较大,那么说明梯度在各方向上都大。

至此,我们已经成功地将寻找角点的问题变为了判断两个特征值大小的问题!

通过分析两个特征值的大小情况,可以分为三类:

  • 边缘。一个特征值大,另一个特征值小, λ 1 > > λ 2 \lambda_{1}>>\lambda_{2} λ1>>λ2 λ 2 > > λ 1 \lambda_{2}>>\lambda_{1} λ2>>λ1。自相关函数值在某一方向上大,在其他方向上小。
  • 平面。两个特征值都小,且近似相等;自相关函数值在各个方向上都较小。
  • 角点。两个特征值都大,且近似相等;自相关函数值在各个方向上都较大。

下图描述的是特征值与图像中点线面之间的关系。
在这里插入图片描述
但是Harris给出的角点判别方法并不需要计算具体的特征值,而是计算一个角点响应值R来判断角点。R的计算公式为:
R = det ⁡ M − α ( trace ⁡ M ) 2 R=\operatorname{det} M-\alpha(\operatorname{trace} M)^{2} R=detMα(traceM)2
式中, det ⁡ M \operatorname{det} \boldsymbol{M} detM为矩阵 M = [ A B B C ] \boldsymbol{M}=\left[\begin{array}{ll}{\boldsymbol{A}} & {\boldsymbol{B}} \\ {\boldsymbol{B}} & {\boldsymbol{C}}\end{array}\right] M=[ABBC]的行列式; t r a c e M trace M traceM为矩阵 M M M的直迹; α α α为经验常数,取值范围0.04~0.06。事实上,特征值是隐含在 det ⁡ M \operatorname{det} \boldsymbol{M} detM t r a c e M trace M traceM中,因为,
det ⁡ M = λ 1 λ 2 = A C − B 2 trace ⁡ M = λ 1 + λ 2 = A + C \begin{array}{l}{\operatorname{det} \boldsymbol{M}=\lambda_{1} \lambda_{2}=A C-B^{2}} \\ {\operatorname{trace} \boldsymbol{M}=\lambda_{1}+\lambda_{2}=A+C}\end{array} detM=λ1λ2=ACB2traceM=λ1+λ2=A+C
至于为什么要用R代替特征值来判断角点,通过下图即可理解。(引自https://zhuanlan.zhihu.com/p/87376934
在这里插入图片描述
这样,问题大大简化了,不需要求解特征值进行判断,只需要求取图像在x和y方向的梯度,得到A、B、C、D;然后计算R,设置阈值,令小于阈值的为0;最后在3x3或者5x5的领域内进行非极大值抑制,局部最大值即为图像中的角点。

不变性讨论
  • 具有“部分”亮度不变性对比度不变性
    Harris角点检测时,我们使用了微分算子对图像进行微分运算,而微分运算对图像密度的拉升或收缩和对亮度的抬高或下降不敏感。换言之,对亮度和对比度的仿射变换并不改变Harris响应的极值点出现的位置。但由于阀值的选择,可能会影响检测角点的数量。
  • 具有旋转不变性
    Harris角点检测算子使用的是角点附近区域灰度二阶矩矩阵。而二阶矩矩阵可以表示成一个椭圆,椭圆的长短轴正是二阶矩矩阵特征值平方根的倒数值如图所示,当特征椭圆转动时,特征值并不发生变化,判断角点的响应值R也不发生变化。所以,说明 Harris角点检测算子具有旋转不变性。
    在这里插入图片描述
  • 不具有尺度不变性
    在下图中,当右图被缩小时,在检测窗口尺寸不变的前提下,在窗口内的所包含图像内容是完全不同的。左侧的图像可能被检测为边缘或曲线,而右侧的图像则可能被检测为一个角点。
    在这里插入图片描述
    解决上述尺度不变性,需要用到尺度规范化的LoG算子。

LoG特征点

利用高斯拉普拉斯LoG( Laplace of Guassian)算子检测图像斑点(与周围像素灰度有明显差别的区域)是一种十分常用的方法。对于二维高斯函数:
g ( x , y , σ ) = 1 2 π σ e ( x 2 + y 2 ) 2 σ g(x, y, \sigma)=\frac{1}{2 \pi \sigma} e^{\frac{\left(x^{2}+y^{2}\right)}{2 \sigma}} g(x,y,σ)=2πσ1e2σ(x2+y2)
它的拉普拉斯算子计算结果是
Δ 2 g = ∂ 2 g ∂ x 2 + ∂ 2 g ∂ y 2 \Delta^{2} g=\frac{\partial^{2} g}{\partial x^{2}}+\frac{\partial^{2} g}{\partial y^{2}} Δ2g=x22g+y22g
这里注意与信号中的拉普拉斯变换区分,这里的拉普拉斯算子是求解二阶导数的算子。由于不同尺度下的LoG响应不具有可比性,因此需要对LoG算子进行规范化。规范后的高斯拉普拉斯算子计算结果为:
Δ oorn  2 g = σ 2 ( ∂ 2 g ∂ x 2 + ∂ 2 g ∂ y 2 ) = σ 2 Δ 2 g = − 1 π σ 2 [ 1 − x 2 + y 2 2 σ 2 ] e − x 2 + y 2 2 σ \begin{aligned} \Delta_{\text {oorn }}^{2} g &=\sigma^{2}\left(\frac{\partial^{2} g}{\partial x^{2}}+\frac{\partial^{2} g}{\partial y^{2}}\right)=\sigma^{2} \Delta^{2} g \\ &=-\frac{1}{\pi \sigma^{2}}\left[1-\frac{x^{2}+y^{2}}{2 \sigma^{2}}\right] \mathrm{e}^{-\frac{x^{2}+y^{2}}{2 \sigma}} \end{aligned} Δoorn 2g=σ2(x22g+y22g)=σ2Δ2g=πσ21[12σ2x2+y2]e2σx2+y2
规范化算子的三维图像和二维图像,它是圆对称函数,如图所示。通过改变σ值,可以检测不同尺寸的二维斑点。
在这里插入图片描述
这里,σ为尺度因子,代表着二维高斯函数的方差,σ越大,可以检测越大尺寸的斑点。

图像与某一函数的卷积实际就是求取图像与某一函数的相似性,同理,图像与高斯拉普拉斯函数的卷积实际就是求取图像与高斯拉普拉斯函数的相似性。当图像中的斑点尺寸与高斯拉普拉斯函数的形状趋近一致时,此时,图像的拉普拉斯响应抵达最大,对应的σ称为特征尺度。

这里可以这么理解:人眼看亭子,当亭子比较近时,人眼看亭子比较清晰,此时对亭子进行LoG算子求解,σ值较小时即可在亭子处取得极大值;当人远离亭子,看亭子比较模糊,只能看到亭子的大概轮廓,此时LoG响应值在σ较大时取得极大值。

对应于人眼的远近模糊,相当于对同一幅图像进行高斯模糊。
对应于人眼不管远近始终聚焦亭子,相当于无论在远近尺度下,特征尺度σ的大小都对应着亭子大小
在这里插入图片描述
上图中,对于同一个景物,虽然由于成像传感器观察距离远近的不同、焦距的不同使得成像分辨率不同,因此,特征尺度值也不相同。但是特征尺度值所对应的区域(通常以3σ为半径的圆形区域)则是相同的。

对于二维图像,计算图像在不同尺度下的离散拉普拉斯响应值,然后,检查位置空间中每个点。如果该点的拉普拉斯响应值都大于或小于其他26个立方空间邻域的值,那么该点就是被检测到的图像斑点。通常,斑点和关键点、特征点、兴趣点表示同一个概念,通常指与周围有着颜色和灰度区别的区域。
在这里插入图片描述
LoG算子其实就是对高斯函数求取二阶导数,然后与图像卷积。也可以看作首先对图像进行高斯模糊,去除掉噪声,然后求取二阶导数。对于边缘来说,二阶导数的零点代表极值点;对于斑点来说,适当的σ下,规范化LoG算子可取得极大值或者极小值。

图像中斑点尺寸越大,达到极值时σ(特征尺度)的取值也越大,也就是在较大的尺度下LoG算子取得极值点。


思考:

这里有一个容易搞错的点就是:从远处看亭子和从近处看亭子,远处看的亭子较小,因此特征尺度σ也较小;近处看的亭子较大,因此特征尺度较大,也就是近大远小。但是前面说了,人眼的远近相当于图像的模糊程度,那么远处模糊,表示高斯核的σ也越大,表示越远特征尺度越大,也就是近小远大,与上面矛盾

其实远处看亭子和近处看亭子,亭子的分辨率变小了。远处看亭子变小了,我们应该把图像放大,一直到与近处的亭子大小相同,这样远处的亭子放大后必然会模糊,就比如一张小图片拽大后会模糊一样。

对于人眼来说,是一个能自动变焦的相机,从近到远,我们仍然能看清,但是亭子变小了;对于图像来说,从近到远,亭子大小不变,但是亭子模糊了。这样,越远处尺度越大,就能检测越大的斑点。所以结论是 σ 近 小 远 大 \color{red}{σ近小远大} σ


DoG特征点

LoG具有尺度不变性,但是要对高斯函数求二次导,计算量大。能不能简化LoG算子呢?

SIFT算法建议,在某一个尺度上对斑点的检测,可以通过对两个相邻高斯尺度空间的图像相减,得到一个DoG (Difference of Gaussians)的响应值图像 D ( x , y , σ ) D(x, y, \sigma) D(x,y,σ)

然后,仿照LoG方法,通过对响应值图像 D ( x , y , σ ) D(x, y, \sigma) D(x,y,σ)进行非最大值抑制(局部极大搜索),在位置空间和尺度空间中定位斑点。其中,
D ( x , y , σ ) = ( G ( x , y , k σ ) − G ( x , y , σ ) ) ⊗ I ( x , y ) = L ( x , y , k σ ) − L ( x , y , σ ) \begin{aligned} D(x, y, \sigma) &=(G(x, y, k \sigma)-G(x, y, \sigma)) \otimes I(x, y) \\ &=L(x, y, k \sigma)-L(x, y, \sigma) \end{aligned} D(x,y,σ)=(G(x,y,kσ)G(x,y,σ))I(x,y)=L(x,y,kσ)L(x,y,σ)
式中,k为两相邻尺度空间的倍数常数。

实际上,DoG是规范化LoG的一个近似,下图展示的LoG与DoG二维曲线,可以看到二者极其相似,只差常数倍的关系。下图引自【OpenCV】SIFT原理与源码分析:DoG尺度空间构造
在这里插入图片描述
当然可以从数学上证明。参照LoG算子与DoG算子相似性完全数学推导。结论是:
σ 2 ( k − 1 ) L o G ≈ D o G \sigma^{2}(k-1) \quad L o G \approx D o G σ2(k1)LoGDoG

即LoG算子与DoG算子的形状相似,只在数值上相差常数,而DoG算子的运行速度远远快于LoG算子,故而可以用DoG算子替代LoG算子求取图像的边缘信息。

那么接下来,我们就要构建高斯差分DoG,求取符合条件的极值点。上一节说了,构建不同尺度的图像,本质是不同σ的高斯核进行高斯模糊。那么如果我们要构建由15张不同尺度的图像组成的尺度空间,则需要15个不同的σ来进行模糊。

显然这样是可以的,但是我们前面同样说了,σ本质代表了斑点的尺寸,给定一张图像,斑点的尺寸已经一定,我们需要使用不同的σ的高斯核来模糊;如果我们将图像降采样为长和宽均为原来图像的一半,即降采样后的图像为原图像的 1 4 \frac 14 41,那么对这两张图片使用相同的σ,两张图片的尺度相差2倍(斑点尺寸变为 1 2 \frac12 21)。

那么,如果我们将这两张图片(其中一张经过降采样)的尺度接起来,就能实现使用s个不同σ的高斯核,获得2*s个尺度空间。同理,三张图片就能有3*s个尺度空间…

没错,上面就是高斯金字塔的生成思想!

高斯金字塔

首先通过一张动图来大致了解一下高斯金字塔的生成过程,引自SIFT解析(一)建立高斯金字塔
在这里插入图片描述
在构建高斯金字塔之前,首先需要了解一些概念。σ是高斯核的方差,不同σ的高斯核对图像进行高斯模糊生成尺度空间,模拟人眼从近到远的过程,不同尺度的σ相差k倍;还有Octave称为八度,在一个八度中,图像的分辨率即尺寸是不变的,相邻的八度是经过一半降采样得到的。
在这里插入图片描述
如上图(引自隋博PPT)所示,表示的是一个高斯金字塔,一共有3个Octave,称为阶数O=3;每个Octave中有6张不同尺度的图像,组成Guassian Space;经过高斯差分后,一共有5张不同尺度的图像,组成DoG Space。

但是进行极值检测需要本尺度图像与上下两个尺度的图像进行数值比较,因此在DoG Space中,最上面和最下面的两张图像需去掉。
这样在DoG Space中只剩下中间的3张红色的图像,称为每阶有效差分数S=3
那么容易得到,Guassian Space中共由S+3张图像,称为每阶层数N=S+3

从图中可以看到,Octave1 高斯空间中的尺度变化为:
σ , k σ , k 2 σ , k 3 σ , k 4 σ , k 5 σ \sigma, k \sigma, k^{2} \sigma, k^{3} \sigma, k^{4} \sigma, k^{5} \sigma σ,kσ,k2σ,k3σ,k4σ,k5σ
而Octave1 高斯差分空间中的尺度变化为:
k σ , k 2 σ , k 3 σ k \sigma, k^{2} \sigma, k^{3} \sigma kσ,k2σ,k3σ
为了保证DoG空间尺度的连续性,Octave2 高斯差分空间中第一个(最底下)图像的尺度应该为 2 k σ 2k \sigma 2kσ。表明了,Octave2 最底下的图像是从Octave1 倒数第3个图像降采样得到的。

其中 k = 2 1 S k=2^{\frac{1}{S}} k=2S1,则对应于第o个八度中,第s层的尺度计算公式为:
σ = σ 0 ∗ 2 o + s S \sigma=\sigma_{0} * 2^{o+\frac{s}{S}} σ=σ02o+Ss
其中, σ 0 \sigma_{0} σ0为高斯模糊初始值,Lowe建议取为1.6。S为每组的层数,即S=3。

这样,高斯金字塔实现了尺度的连续性。对DoG空间,尺度变化为:
2 1 3 σ , 2 2 3 σ , 2 σ , 2 4 3 σ , 2 5 3 σ , 4 σ , 2 7 3 σ , 2 8 3 σ , 8 σ . . . . . . 2^{\frac{1}{3}} \sigma, 2^{\frac{2}{3}} \sigma, 2 \sigma, \color{red}{2^{\frac{4}{3}} \sigma}, \color{red}{2^{\frac{5}{3}} \sigma}, 4\sigma, \color{green}{2^{\frac{7}{3}} \sigma}, \color{green}{2^{\frac{8}{3}} \sigma}, 8 \sigma...... 231σ,232σ,2σ,234σ,235σ,4σ,237σ,238σ,8σ......
上面黑色尺度为Octave1 中的尺度,红色尺度为Octave2 中的尺度,绿色尺度为Octave3 中的尺度。这样,只使用了6个高斯核,即获得了9个尺度。

实际编程中,不需要对原始图像进行不同尺度的高斯模糊,只需要对相邻的上一个尺度进行操作即可,这里使用公式:
σ f = ( k s σ ) 2 − ( k s − 1 σ ) 2 \sigma_{f}=\sqrt{\left(k^{s} \sigma\right)^{2}-\left(k^{s-1} \sigma\right)^{2}} σf=(ksσ)2(ks1σ)2
到这里,已经介绍完了高斯金字塔的构建过程,回到我们原本的目的,即通过DoG算子代替LoG进行极值点的寻找。寻找极值点的过程与LoG相同,即在位置核尺度空间组成的三维空间中寻找极值点。
在这里插入图片描述
写太多了,写累了,先写到这吧,有机会再写。

参考文献

《图像局部不变性特征与描述》
https://www.cnblogs.com/charlee44/p/10703600.html
https://zhuanlan.zhihu.com/p/87376934
https://blog.csdn.net/lwzkiller/article/details/54633670
https://zhuanlan.zhihu.com/p/67770305
https://blog.csdn.net/qq_41598072/article/details/83651629
https://zhuanlan.zhihu.com/p/49447503
https://blog.csdn.net/yangying1992/article/details/100809629
https://blog.csdn.net/hit2015spring/article/details/52895367
https://www.cnblogs.com/starfire86/p/5735061.html
https://www.cnblogs.com/Night-Fury/p/10539996.html
https://www.cnblogs.com/tianyalu/p/5467834.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值