一种基于算法展开的图像去噪方法

未命名 07-12 阅读:71 评论:0


1.本发明属于计算机视觉领域,特别涉及一种基于算法展开的图像去噪方法。


背景技术:

2.图像去噪是计算机视觉领域中的一个基本问题,目的是将含有噪声的数字图像恢复成干净图像。人们在采集、数字化和传输图像的过程中,不可避免地受到成像设备和外部环境噪声干扰等影响,从而降低图像的视觉效果,导致所获取的信息不准确,甚至错误。随着计算机视觉、医疗诊断和安全监控等各种领域日新月异的发展,图像去噪因其是大多数数字图像处理的必要预处理步骤而备受关注。
3.目前,关于图像去噪的方法主要有几个大类:基于模型驱动的图像去噪方法、基于数据驱动的图像去噪方法和由模型和数据联合驱动的算法展开方法。早期的基于模型驱动的图像去噪方法是根据反映任务本质的数学原理设计的,因此具有高度可解释性。比如加权核范数最小化方法,通过对不同奇异值赋予不同的权重来进行软阈值操作,区别对待奇异值的贡献。马尔可夫随机场通过图结构得到联合概率密度函数,优化直至一定最大循环次数,最终输出近似最优解。但此方法存在比较明显的弊端,除了在求解优化模型时需要花费较高的计算成本之外,比较简单的优化方法往往降噪效果不佳。基于数据驱动的图像去噪方法,例如去噪卷积神经网络,已经取得了良好的去噪效果,但神经网络通常作为一个黑箱来使用,它的弊端在于底层结构的可解释性较弱。基于上述不同类型方法的局限性,由模型和数据联合驱动的算法展开方法诞生了。它将传统迭代算法和神经网络结合起来,将迭代方法的每个步骤展开为网络的一层。传统迭代算法作为展开的整体框架,可提供强可解释性以及理论依据。而神经网络作为一个万能逼近器,自然可以用来逼近传统迭代算法里面难以实现或者计算代价高昂的步骤。为此,本发明的观点在于构建一个由模型和数据联合驱动的算法展开网络,用以保证图像去噪具有端到端网络优越的性能和效率,同时又可以使网络具有传统算法的可解释性。


技术实现要素:

4.针对上述技术问题,本发明的目的是提供一种由模型和数据联合驱动的基于算法展开的图像去噪方法。此方法将低秩矩阵恢复中的截断核范数方法和图像去噪方法相结合,并将其作为整体框架;基于算法展开将其中的一个迭代步骤展开为相应的神经网络模块,用神经网络来代替传统迭代算法中难以实现或者计算代价高昂的奇异值分解和奇异值阈值步骤,其他步骤按照网络中常用的操作符来实现。执行网络的一个阶段相当于传统算法的一次迭代,通过网络相当于执行有限次迭代算法,从而形成一个端到端的可训练展开网络。
5.为了实现上述目的,本发明提供了如下技术方案:
6.本发明的基本思路为:
7.首先,将低秩矩阵恢复中的截断核范数方法和图像去噪相结合,并将其作为整体
框架,如图1所示,将迭代算法的一次完整迭代作为深度展开网络的一个阶段;其次,用所构建的神经网络,即a-net和b-net来学习迭代算法中所需的奇异值算子,解决奇异值分解svd和奇异值阈值算法svt在迭代算法中计算代价较高的问题,其中svd的定义为:对于任意给定的一个矩阵a∈rm×n,定义矩阵a的svd为:a=u∑v
t
,其中,u是一个m
×
m的矩阵,v是一个n
×
n的矩阵,∑是一个除了主对角线上的元素以外全为0的m
×
n矩阵,非零元素称为奇异值。svt的定义为:svt
μ
(a)=udiag[max(σ-μ),0]v
t
,其中,u是一个m
×
r的矩阵,v是一个r
×
n的矩阵,σ∈rr×1是由任意给定的矩阵a∈rm×n通过svd生成的,即a=udiag(σ)v
t
,阈值参数μ≥0;然后,将观测到的含有噪声的图像和已知噪声作为深度展开网络的输入,从第二个阶段开始,输入为上一阶段的输出,以此将多个阶段连接起来,形成一个端到端的可训练深度展开网络,最后得到去掉噪声的干净图像。
[0008]
一种基于算法展开的图像去噪方法,包括如下步骤:
[0009]
s1、设置两个由五层卷积堆叠的网络结构相同的神经网络a-net和b-net来代替svd,同时设置一个代替svt的神经网络svt-net;将迭代算法的一次完整迭代作为深度展开网络的一个阶段;
[0010]
s2、形成一个端到端的可训练深度展开网络,得到第s阶段的干净图像cs和第s阶段预测的噪声ns;
[0011]
s2.1、深度展开网络包括s(s=1,2,3

s)个阶段,s为迭代次数;
[0012]
当s=1时,将观测到的噪声图像x和已知的噪声n0作为输入;当s≥2时,将观测到的噪声图像x、第s-1阶段输出的干净图像和预测的噪声作为输入;
[0013]
s2.2、通过步骤s1设置的神经网络a-net根据公式1生成第s阶段的左奇异值矩阵us,通过步骤s1设置的神经网络b-net根据公式2生成第s阶段的右奇异值矩阵vs;
[0014]
s2.3、根据截断核范数原理,分别通过公式3和公式4将第s阶段的左奇异值矩阵us和右奇异值矩阵vs截断至前r项,获得左奇异值矩阵us的截断矩阵as和右奇异值矩阵vs的截断矩阵bs;
[0015]
s2.4、通过公式5对第s-1阶段的噪声n
s-1
进行线性变换,并将线性变换结果fs作为神经网络svt-net的输入,通过公式6生成第s阶段的干净图像cs;
[0016]
s2.5、通过公式7,获得第s阶段预测的噪声ns,从而完成一次完整迭代;
[0017]us
=a-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式1
[0018]vs
=b-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式2
[0019]
公式1和公式2中,us=(u1,u2,...,um)∈rm×m,vs=(v1,v2,...,vn)∈rn×n,rm×m和rn×n分别表示m
×
m维和n
×
n维的矩阵集合;a-net和b-net为代替svd的神经网络;当s=1时,c
s-1
=c0代表观测到的噪声图像x;当s≥2时,c
s-1
为第s-1阶段生成的干净图像;
[0020]as
=(u1,u2,...,ur)
t
∈rr×m,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式3
[0021]bs
=(v1,v2,...,vr)
t
∈rr×n,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式4
[0022]
公式3和公式4中,as表示第s阶段生成的左奇异值矩阵us的截断矩阵,bs表示第s阶段生成的右奇异值矩阵vs的截断矩阵;r代表矩阵的秩,通常选择0.1min(m,n)~0.1max(m,n);s代表阶段数;t表示矩阵的转置;rr×m和rr×n分别表示r
×
m维和r
×
n维的矩阵集合;ui(i=1,2,...,m)和vi(i=1,2,...,n)分别表示矩阵us和vs的列向量;
[0023][0024]cs
=svt-net(fs),
ꢀꢀꢀ
公式6
[0025]
公式5和公式6中,fs为线性变换的结果;x为观测到的含噪声图像;当s=1时,n
s-1
=n0代表已知的噪声;当s≥2时,n
s-1
代表第s-1阶段预测的噪声;μs为值大于零的正则项系数;ys表示拉格朗日乘子,当s=1时,y1代表预设的拉格朗日乘子,y1=0;表示左奇异值矩阵us的截断矩阵as的转置;bs为右奇异值矩阵vs的截断矩阵;cs为第s阶段的干净图像;svt-net表示代替svt的网络;
[0026][0027]
公式7中,ns为第s阶段预测的噪声;λ表示惩罚系数;μs表示值大于零的正则项系数,s=1时,μ1代表预设的正则项系数,μ1=100且μs≤200;x为观测到的噪声图像;cs为第s阶段生成的干净图像;ys表示拉格朗日乘子;
[0028]
s3、分别通过公式8和公式9更新第s阶段的拉格朗日乘子ys和正则项系数μs,重复步骤s2~s3,直至遍历给定的s个阶段,即s=s时,迭代结束,得到最终的干净图像;
[0029]ys
=y
s-1

s-1
(x-c
s-ns)
ꢀꢀꢀꢀ
公式8
[0030]
公式8中,ys为第s阶段的拉格朗日乘子;y
s-1
表示第s-1阶段的拉格朗日乘子;μ
s-1
表示第s-1阶段的值大于0的正则项系数;x表示观测图像;cs表示第s阶段生成的干净图像;ns为第s阶段预测的噪声;
[0031]
μs=min(ρμ
s-1

max
),
ꢀꢀꢀꢀꢀꢀ
公式9
[0032]
公式9中,μs为第s阶段更新的正则项系数;ρ为大于1的常数,μ
s-1
为第s-1阶段的正则项系数,μ
max
为一个给定的常数。
[0033]
所述神经网络a-net和b-net中,每一层卷积的通道数都设置为64,采用3
×
3的卷积核。
[0034]
所述神经网络svt-net包含三个部分,分别是由普通卷积和空洞卷积对称排列的稀疏模块、将初步提取的特征和输入图片特征相融合的特征融合模块和从原始观测图片中去掉网络预测出的噪声的重构模块。
[0035]
所述方法使用到正交损失和均方误差损失的加权和作为总损失函数,并用adam优化算法对模型进行训练;
[0036]
所述总损失函数由两部分组成,即学习到的奇异值矩阵的正交损失和生成的干净图片与真实值的均方误差损失。
[0037]
与现有技术相比,本发明的有益效果在于:
[0038]
基于模型驱动的去噪方法虽然具有强的可解释性,但在求解优化模型时通常需要花费较高的计算成本。而基于数据驱动的去噪方法,虽然具有更优越的性能和效率,但其弊端在于网络结构的可解释性较弱。而本发明则构建一个由模型和数据联合驱动的算法展开网络。算法展开使得网络模块和算法操作符之间有着精准的一一对应关系,因此可以继承传统迭代算法的可解释性。网络在执行有限次的循环过程中,通过反向传播更新参数,从而代替了传统算法中难以明确设计的复杂映射。
[0039]
综上所述,单独使用基于模型驱动的图像去噪方法或基于数据驱动的图像去噪方法,都会不可避免地产生一些弊端,而本发明的方法能够有效地避免这些问题。
附图说明
[0040]
图1为本发明的迭代算法与对应的深度展开网络;
[0041]
图2为本发明的深度展开网络第一阶段和第二阶段的示意图;
[0042]
图3a为本发明实施例第s阶段生成的干净图像;
[0043]
图3b为由图3a生成的左奇异值矩阵;
[0044]
图3c为由图3a生成的右奇异值矩阵;
[0045]
图4为本发明的代替svt的网络;
[0046]
图5为本发明的深度展开网络的整体框架。
具体实施方式
[0047]
下面结合附图和实施例对本发明进行进一步说明。
[0048]
一种基于算法展开的图像去噪方法,包括如下步骤:
[0049]
s1、设置两个由五层卷积堆叠的网络结构相同的神经网络a-net和b-net来代替svd,同时设置一个代替svt的神经网络svt-net;将迭代算法的一次完整迭代作为深度展开网络的一个阶段;
[0050]
神经网络a-net和b-net中,每一层卷积的通道数都设置为64,采用3
×
3的卷积核;
[0051]
如图4所示,所述神经网络svt-net包含三个部分,分别是由普通卷积和空洞卷积对称排列的稀疏模块、将初步提取的特征和输入图片特征相融合的特征融合模块和从原始观测图片中去掉网络预测出的噪声的重构模块。
[0052]
s2、形成一个端到端的可训练深度展开网络,得到第s阶段的干净图像cs和第s阶段预测的噪声ns。
[0053]
s2.1、如图2和图5所示,深度展开网络包括s(s=1,2,3

s)个阶段,s为迭代次数;
[0054]
当s=1时,将观测到的噪声图像x和已知的噪声n0作为输入;当s≥2时,将观测到的噪声图像x、第s-1阶段输出的干净图像(如图3a所示)和预测的噪声作为输入;
[0055]
s2.2、通过步骤s1设置的神经网络a-net根据公式1生成第s阶段的左奇异值矩阵us(如图3b所示),通过步骤s1设置的神经网络b-net根据公式2生成第s阶段的右奇异值矩阵vs(如图3c所示);
[0056]
s2.3、根据截断核范数原理,分别通过公式3和公式4将第s阶段的左奇异值矩阵us和右奇异值矩阵vs截断至前r项,获得左奇异值矩阵us的截断矩阵as和右奇异值矩阵vs的截断矩阵bs;
[0057]
s2.4、通过公式5对第s-1阶段的噪声n
s-1
进行线性变换,并将线性变换结果fs作为神经网络svt-net的输入,通过公式6生成第s阶段的干净图像cs;
[0058]
s2.5、通过公式7,获得第s阶段预测的噪声ns,从而完成一次完整迭代。
[0059]us
=a-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式1
[0060]vs
=b-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式2
[0061]
公式1和公式2中,us=(u1,u2,...,um)∈rm×m,vs=(v1,v2,...,vn)∈rn×n,rm×m和rn×n分别表示m
×
m维和n
×
n维的矩阵集合;a-net和b-net为代替svd的神经网络;当s=1时,c
s-1
=c0代表观测到的噪声图像x;当s≥2时,c
s-1
为第s-1阶段生成的干净图像;
[0062]as
=(u1,u2,...,ur)
t
∈rr×m,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式3
[0063]bs
=(v1,v2,...,vr)
t
∈rr×n,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式4
[0064]
公式3和公式4中,as表示第s阶段生成的左奇异值矩阵us的截断矩阵,bs表示第s阶段生成的右奇异值矩阵vs的截断矩阵;r代表矩阵的秩,通常选择0.1min(m,n)~0.1max(m,n);s代表阶段数;t表示矩阵的转置;rr×m和rr×n分别表示r
×
m维和r
×
n维的矩阵集合;ui(i=1,2,...,m)和vi(i=1,2,...,n)分别表示矩阵us和vs的列向量;
[0065]
按照该方法生成的奇异值矩阵的截断矩阵实际上是根据svd计算出的奇异值矩阵的近似,该方法避免了svd花费的巨大计算成本和时间成本。
[0066][0067]cs
=svt-net(fs),
ꢀꢀꢀ
公式6
[0068]
公式5和公式6中,fs为线性变换的结果;x为观测到的含噪声图像;当s=1时,n
s-1
=n0代表已知的噪声;当s≥2时,n
s-1
代表第s-1阶段预测的噪声;μs为值大于零的正则项系数;ys表示拉格朗日乘子,当s=1时,y1代表预设的拉格朗日乘子,y1=0;表示左奇异值矩阵us的截断矩阵as的转置;bs为右奇异值矩阵vs的截断矩阵;cs为第s阶段的干净图像;svt-net表示代替svt的网络;
[0069][0070]
公式7中,ns为第s阶段预测的噪声;λ表示惩罚系数;μs表示值大于零的正则项系数,s=1时,μ1代表预设的正则项系数,μ1=100且μs≤200;x为观测到的噪声图像;cs为第s阶段生成的干净图像;ys表示拉格朗日乘子;
[0071]
s3、分别通过公式8和公式9更新第s阶段的拉格朗日乘子ys和正则项系数μs,重复步骤s2~s3,直至遍历给定的s个阶段,即s=s时,迭代结束,得到最终的干净图像;
[0072]ys
=y
s-1

s-1
(x-c
s-ns)
ꢀꢀꢀꢀꢀꢀꢀ
公式8
[0073]
公式8中,ys为第s阶段的拉格朗日乘子;y
s-1
表示第s-1阶段的拉格朗日乘子;μ
s-1
表示第s-1阶段的值大于0的正则项系数;x表示观测图像;cs表示第s阶段生成的干净图像;ns为第s阶段预测的噪声;
[0074]
μs=min(ρμ
s-1

max
),
ꢀꢀꢀꢀꢀꢀ
公式9
[0075]
公式9中,μs为第s阶段更新的正则项系数;ρ为大于1的常数,μ
s-1
为第s-1阶段的正则项系数,μ
max
为一个给定的常数。
[0076]
本发明使用到正交损失和均方误差损失的加权和作为总损失函数,并用adam优化算法对模型进行训练。
[0077]
所述总损失函数由两部分组成,即学习到的奇异值矩阵的正交损失和生成的干净图片与真实值的均方误差损失。

技术特征:
1.一种基于算法展开的图像去噪方法,其特征在于,所述方法包括如下步骤:s1、设置两个由五层卷积堆叠的网络结构相同的神经网络a-net和b-net来代替svd,同时设置一个代替svt的神经网络svt-net;将迭代算法的一次完整迭代作为深度展开网络的一个阶段;s2、形成一个端到端的可训练深度展开网络,得到第s阶段的干净图像c
s
和第s阶段预测的噪声n
s
;s2.1、深度展开网络包括s(s=1,2,3

s)个阶段,s为迭代次数;当s=1时,将观测到的噪声图像x和已知的噪声n0作为输入;当s≥2时,将观测到的噪声图像x、第s-1阶段输出的干净图像和预测的噪声作为输入;s2.2、通过步骤s1设置的神经网络a-net根据公式1生成第s阶段的左奇异值矩阵u
s
,通过步骤s1设置的神经网络b-net根据公式2生成第s阶段的右奇异值矩阵v
s
;s2.3、根据截断核范数原理,分别通过公式3和公式4将第s阶段的左奇异值矩阵u
s
和右奇异值矩阵v
s
截断至前r项,获得左奇异值矩阵u
s
的截断矩阵a
s
和右奇异值矩阵v
s
的截断矩阵b
s
;s2.4、通过公式5对第s-1阶段的噪声n
s-1
进行线性变换,并将线性变换结果f
s
作为神经网络svt-net的输入,通过公式6生成第s阶段的干净图像c
s
;s2.5、通过公式7,获得第s阶段预测的噪声n
s
,从而完成一次完整迭代;u
s
=a-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀ
公式1v
s
=b-net(c
s-1
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式2公式1和公式2中,u
s
=(u1,u2,...,u
m
)∈r
m
×
m
,v
s
=(v1,v2,...,v
n
)∈r
n
×
n
,r
m
×
m
和r
n
×
n
分别表示m
×
m维和n
×
n维的矩阵集合;a-net和b-net为代替svd的神经网络;当s=1时,c
s-1
=c0代表观测到的噪声图像x;当s≥2时,c
s-1
为第s-1阶段生成的干净图像;a
s
=(u1,u2,...,u
r
)
t
∈r
r
×
m

ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式3b
s
=(v1,v2,...,v
r
)
t
∈r
r
×
n

ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式4公式3和公式4中,a
s
表示第s阶段生成的左奇异值矩阵u
s
的截断矩阵,b
s
表示第s阶段生成的右奇异值矩阵v
s
的截断矩阵;r代表矩阵的秩,通常选择0.1min(m,n)~0.1max(m,n);s代表阶段数;t表示矩阵的转置;r
r
×
m
和r
r
×
n
分别表示r
×
m维和r
×
n维的矩阵集合;u
i
(i=1,2,...,m)和v
i
(i=1,2,...,n)分别表示矩阵u
s
和v
s
的列向量;c
s
=svt-net(f
s
),
ꢀꢀꢀꢀꢀꢀꢀꢀ
公式6公式5和公式6中,f
s
为线性变换的结果;x为观测到的含噪声图像;当s=1时,n
s-1
=n0代表已知的噪声;当s≥2时,n
s-1
代表第s-1阶段预测的噪声;μ
s
为值大于零的正则项系数;y
s
表示拉格朗日乘子,当s=1时,y1代表预设的拉格朗日乘子,y1=0;表示左奇异值矩阵u
s
的截断矩阵a
s
的转置;b
s
为右奇异值矩阵v
s
的截断矩阵;c
s
为第s阶段的干净图像;svt-net表示代替svt的网络;
公式7中,n
s
为第s阶段预测的噪声;λ表示惩罚系数;μ
s
表示值大于零的正则项系数,s=1时,μ1代表预设的正则项系数,μ1=100且μ
s
≤200;x为观测到的噪声图像;c
s
为第s阶段生成的干净图像;y
s
表示拉格朗日乘子;s3、分别通过公式8和公式9更新第s阶段的拉格朗日乘子y
s
和正则项系数μ
s
,重复步骤s2~s3,直至遍历给定的s个阶段,即s=s时,迭代结束,得到最终的干净图像;y
s
=y
s-1

s-1
(x-c
s-n
s
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式8公式8中,y
s
为第s阶段的拉格朗日乘子;y
s-1
表示第s-1阶段的拉格朗日乘子;μ
s-1
表示第s-1阶段的值大于0的正则项系数;x表示观测图像;c
s
表示第s阶段生成的干净图像;n
s
为第s阶段预测的噪声;μ
s
=min(ρμ
s-1

max
),
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式9公式9中,μ
s
为第s阶段更新的正则项系数;ρ为大于1的常数,μ
s-1
为第s-1阶段的正则项系数,μ
max
为一个给定的常数。2.根据权利要求1所述的基于算法展开的图像去噪方法,其特征在于,所述神经网络a-net和b-net中,每一层卷积的通道数都设置为64,采用3
×
3的卷积核。3.根据权利要求1所述的基于算法展开的图像去噪方法,其特征在于,所述神经网络svt-net包含三个部分,分别是由普通卷积和空洞卷积对称排列的稀疏模块、将初步提取的特征和输入图片特征相融合的特征融合模块和从原始观测图片中去掉网络预测出的噪声的重构模块。4.根据权利要求1所述的基于算法展开的图像去噪方法,其特征在于,所述方法使用到正交损失和均方误差损失的加权和作为总损失函数,并用adam优化算法对模型进行训练;所述总损失函数由两部分组成,即学习到的奇异值矩阵的正交损失和生成的干净图片与真实值的均方误差损失。

技术总结
本发明属于计算机视觉领域,特别涉及一种基于算法展开的图像去噪方法。本发明将低秩矩阵恢复中的截断核范数方法和图像去噪相结合,并将其作为整体框架,将迭代算法的一次完整迭代作为深度展开网络的一个阶段;其次,用所构建的神经网络,即A-net和B-net来学习迭代算法中所需的奇异值算子,解决奇异值分解SVD和奇异值阈值算法SVT在迭代算法中计算代价较高的问题,然后,将观测到的含有噪声的图像和已知噪声作为深度展开网络的输入,从第二个阶段开始,输入为上一阶段的输出,以此将多个阶段连接起来,形成一个端到端的可训练深度展开网络,最后得到去掉噪声的干净图像。最后得到去掉噪声的干净图像。最后得到去掉噪声的干净图像。


技术研发人员:曹飞龙 文成林 宋执环 张清华
受保护的技术使用者:广东石油化工学院
技术研发日:2023.04.10
技术公布日:2023/7/7
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐