论文阅读 - Non-Local Spatial Propagation Network for Depth Completion

news2024/11/29 0:41:02

文章目录

  • 1 概述
  • 2 模型说明
    • 2.1 局部SPN
    • 2.2 非局部SPN
    • 2.3 结合置信度的亲和力学习
      • 2.3.1 传统正则化
      • 2.3.2 置信度引导的affinity正则化
  • 3 效果
    • 3.1 NYU Depth V2
    • 3.2 KITTI Depth Completion
  • 参考资料

1 概述

本文提出了一种非局部的空间传播网络用于深度图补全,简称为NLSPN。
(1)为什么需要深度图补全?
在AR、无人机控制、自动驾驶和运动规划等应用当中,需要知道物体的稠密深度信息。现有的大部分深度传感器,如雷达、RGB-D相机等,可以提供RGB图片和准确的稀疏深度图,未提供的部分需要通过算法进行补全。
这种通过稀疏的深度图和其他信息(如RGB信息)对深度图进行补全的算法称为深度补全算法

(2)现有的技术有哪些缺陷?
在这篇论文出现之前的深度补全算法中,直接深度补全算法采用RGB或RGB-D图像,并使用深度卷积神经网络(CNN)直接预测稠密深度。与传统的算法相比,这些直接预测算法表现出更好的性能,然而,它们仍然会在深度边界附近生成模糊的深度图
因此,最近基于亲和力(affinity)的空间传播方法缓解了这种现象。通过学习局部邻域的亲和力并迭代地细化深度预测,使最终的稠密深度变得更加准确。尽管如此,以前的传播网络有一个明确的限制,即它们具有用于传播的固定局部邻域配置。固定局部邻居通常具有不相关的信息,不应与参考信息混合,尤其是在深度边界上。因此,它们在深度补全任务中仍然存在混合深度问题。
这里混合深度的意思就是在预测时物体边界部分的深度将前景与背景的深度插值了,从点云图上看的话,就会看到如同瀑布一般的噪声。

(3)本文提出的方法有什么创新点?
为了解决混合深度的问题,本文提出了一种非局部空间传播网络(NLSPN),该网络预测每个像素的非局部邻居(即信息应该来自哪里)和空间变化的亲和力(即应该传播多少信息)。通过放宽固定局部邻域配置,所提出的网络可以避免与其他相邻对象关联的不相关局部邻域。因此,本文的方法本质上对混合深度问题具有鲁棒性。也就是边界部分的前景点只参考位于前景的邻域点,边界部分的背景点只参考位于背景的领域点。
此外,基于对传统亲和力归一化方案的分析,提出了一种可学习的亲和力归一化方法,该方法具有更大的亲和力组合表示能力。它支持更准确的亲和力估计,从而提高了非本地邻居之间的传播。为了进一步提高对输入异常值和不准确的初始预测的鲁棒性,本文预测初始稠密深度的置信度,并将其纳入亲和归一化中,以最小化不可靠深度值的传播。
这里的初始稠密深度是网络根据RGB图和稀疏深度图预测的稠密深度图,后面会具体说明。
NYU Depth V2数据集上效果示例图

图1-1 NYU Depth V2数据集上效果示例图

图1-1中,(a)表示NLSPN预测的某几个像素的邻域示例,可以看出范围很广,且都在同一个物体上,(b)表示网络预测的初始稠密深度图,©表示使用局部空间传播修正(b)的结果,(d)表示使用非局部空间传播修正(b)的结果,可以看出边界部分明显优于©,(e)是真值。

2 模型说明

2.1 局部SPN

SPN的目标是通过传播具有相应亲和力的邻居值(即相似性)来估计缺失值并细化置信度低的值。SPN已被用作各种计算机视觉应用中的关键模块之一。SPN非常适用于深度补全任务,并已经证明了与直接回归算法相比,具有更优越的效果。
本节首先简要回顾局部SPN及其局限性。
X = ( x m , n ) ∈ R M × N X=(x_{m,n}) \in R^{M \times N} X=(xm,n)RM×N表示被SPN更新的2D深度图, x m , n x_{m,n} xm,n表示在像素 ( m , n ) (m,n) (m,n)位置的值。
在局部SPN中,对于每个像素点 x m , n x_{m,n} xm,n在时间步 t t t的迭代方式如式2-1所示。

x m , n t = w m , n c x m , n t − 1 + ∑ ( i , j ) ∈ N m , n w m , n i , j x i , j t − 1 (2-1) x_{m,n}^t = w_{m,n}^c x_{m,n}^{t-1} + \sum_{(i, j) \in N_{m,n}} w_{m,n}^{i,j} x_{i,j}^{t-1} \tag{2-1} xm,nt=wm,ncxm,nt1+(i,j)Nm,nwm,ni,jxi,jt1(2-1)

其中, ( m , n ) (m,n) (m,n)表示当前点, ( i , j ) (i,j) (i,j)表示邻域点, w m , n c w_{m,n}^c wm,nc表示当前点的亲和力, w m , n i , j w_{m,n}^{i,j} wm,ni,j表示邻域点和当前点之间的亲和力,也就是相似性。
式2-1右侧的第一项为当前点会被保留多少,右侧为邻域传播多少,当前点权重和邻域点权重的关系如式2-2所示。

w m , n c = 1 − ∑ ( i , j ) ∈ N m , n w m , n i , j (2-2) w_{m,n}^c = 1 - \sum_{(i, j) \in N_{m,n}} w_{m,n}^{i,j} \tag{2-2} wm,nc=1(i,j)Nm,nwm,ni,j(2-2)

原始的SPN的每个方向是三路的,一共上下左右四个方向,更新是有顺序的,因此无法对所有方向同时更新,其top-to-bottom方向的邻域点表示为式2-3,其他方向不赘述。

N m , n S = { x m + p , n + q ∣ p = − 1 , q ∈ { − 1 , 0 , 1 } } (2-3) N_{m,n}^S = \{ x_{m+p, n+q} | p=-1,q\in \{-1,0,1\} \} \tag{2-3} Nm,nS={xm+p,n+qp=1,q{1,0,1}}(2-3)

CSPN是对于SPN的改进,可以同时对四个方向进行传播,更加高效,其邻域点表示为式2-4。

N m , n C S = { x m + p , n + q ∣ p = ∈ { − 1 , 0 , 1 } , q ∈ { − 1 , 0 , 1 } , ( p , q ) ≠ ( 0 , 0 ) } (2-4) N_{m,n}^{CS} = \{ x_{m+p, n+q} | p=\in \{-1,0,1\},q\in \{-1,0,1\}, (p,q) \neq (0,0) \} \tag{2-4} Nm,nCS={xm+p,n+qp=∈{1,0,1},q{1,0,1},(p,q)=(0,0)}(2-4)

不同SPN可视化示意图如图2-1所示。
不同SPN可视化示意图

图2-1 不同SPN可视化示意图

从图2-1(e)和(f)不难看出,对于物体的边界部分,固定的SPN会将两个物体的深度混合计算,也就是会产生混合深度问题,而NLSPN只对同一个物体的深度混合计算。

2.2 非局部SPN

固定的局部邻域配置忽略了局部区域的物体/深度分布,因此会产生将前景和背景深度值混淆的深度值。虽然预测得到的亲和力大小可以适当缓解不相关深度值之间深度混合的问题,但是无法避免错误的预测,还是会使用不合适的邻域点。
NLSPN通过预测邻域点来解决上述问题,预测邻域点用到了较大范围的颜色和深度信息,如式2-5所示,需要注意的是p和q是实数,也就是非局部邻域可以是亚像素精度的。亚像素精度也就意味着坐标是分数坐标,为了更好地将分数坐标纳入训练,在传播过程中采用了可微采样。

N m , n N L = { x m + p , n + q ∣ ( p , q ) ∈ f ϕ ( I , D , m , n ) , p , q ∈ R } (2-5) N_{m,n}^{NL} = \{ x_{m+p, n+q} | (p,q) \in f_{\phi}(I, D, m, n), p, q \in R \} \tag{2-5} Nm,nNL={xm+p,n+q(p,q)fϕ(I,D,m,n),p,qR}(2-5)

其中, I I I是RGB图像, D D D是稀疏深度图, f ϕ ( ⋅ ) f_{\phi}(\cdot) fϕ()表示非局部邻域点预测网络,为每个像素点预测 K K K个邻域。

网络为encoder-decoder结构,预测初始深度图、置信度图、非局部邻域点,邻域点的原始亲和力。该网络的encoder-decoder结构建立在残差网络的基础上,从RGB和稀疏深度图像中提取高级特征。此外,采用encoder-decoder特征连接策略来同时利用低级特征和高级特征。
然后以迭代的方式进行非局部空间传播。整体流程如图2-2所示。

算法整体流程图

图2-2 算法整体流程图

作者注意到非局部传播(图2-2的右上角部分)可以通过可变形卷积有效地计算。因此,每次传播都需要一个简单的可变形卷积前向步骤和亲和力归一化。

训练时,损失函数使用的是 L 1 L_1 L1 L 2 L_2 L2损失,如下式2-6所示。

L r e c o n ( D g t , D p r e d ) = 1 ∣ V ∣ ∑ v ∈ V ∣ d v g t − d v p r e d ∣ ρ (2-6) L_{recon}(D^{gt}, D^{pred}) = \frac{1}{|V|} \sum_{v \in V} |d_{v}^{gt} - d_{v}^{pred}|^{\rho} \tag{2-6} Lrecon(Dgt,Dpred)=V1vVdvgtdvpredρ(2-6)

其中, D g t D^{gt} Dgt是真实深度值, D p r e d D^{pred} Dpred是深度值的预测结果, d v d_v dv表示在像素 v v v的深度值, V V V表示有真值的像素集合, ∣ V ∣ |V| V表示有真值像素的数量。当 ρ = 1 \rho = 1 ρ=1时,表示的是 L 1 L_1 L1损失,当 ρ = 2 \rho = 2 ρ=2时,表示的是 L 2 L_2 L2损失。值得注意的是,本文没有对置信度进行任何监督,因为没有置信度的真值。

2.3 结合置信度的亲和力学习

传统的基于亲和力的算法使用颜色统计或手动特征,现在发现采用深度学习有更好的效果,在这些方法中,亲和力正则化对于稳定的传播有着重要的作用。作者说明了传统的正则化方法和其局限性,并提出在归一化过程中加入初始预测的置信度,以抑制传播过程中不可靠的深度值的负面影响。

2.3.1 传统正则化

根据其他文献,传播稳定的前提是邻域权重和小于等于1。根据式2-1,这等价于 ∑ ( i , j ) ∈ N m , n ∣ w m , n i , j ∣ < 1 \sum_{(i, j) \in N_{m,n}} |w_{m,n}^{i,j}| < 1 (i,j)Nm,nwm,ni,j<1
现有的正则化方式包括以下几种:
(1)Abs-Sum
Abs-Sum计算公式如下式2-7所示。

w m , n i , j = w ^ m , n i , j / ∑ ( i , j ) ∈ N m , n ∣ w ^ m , n i , j ∣ (2-7) w_{m,n}^{i,j} = \hat{w}_{m,n}^{i,j} / \sum_{(i, j) \in N_{m,n}} |\hat{w}_{m,n}^{i,j}| \tag{2-7} wm,ni,j=w^m,ni,j/(i,j)Nm,nw^m,ni,j(2-7)

正则化亲和力的可行组合偏向于狭窄的高维空间,以两个邻域点为例, ∣ w 1 ∣ + ∣ w 2 ∣ = 1 |w_1|+|w_2| = 1 w1+w2=1,如图2-3(a)所示。

(2)Abs-Sum*
为发挥 ∣ w 1 ∣ + ∣ w 2 ∣ < 1 |w_1|+|w_2| < 1 w1+w2<1的优势,Abs-Sum*只有当 ∑ i ∣ w i ∣ > 1 \sum_{i} |w_i| > 1 iwi>1时使用式2-7。但还是有很大的概率和Abs-Sum一样,且随着邻域点 K K K的增大,越来越接近于Abs-Sum,如图2-3(b)所示。

(3)Tanh-C
一种减小亲和力偏向于狭窄高位空间的方法是限制原始亲和力值的大小,比如使用 t a n h ( ⋅ ) tanh(\cdot) tanh()限制到, [ − 1 / C , 1 / C ] [-1/C, 1/C] [1/C,1/C],如式2-8所示。

w m , n i , j = t a n h ( w ^ m , n i , j ) / C , C ≥ K (2-8) w_{m,n}^{i,j} = tanh(\hat{w}_{m,n}^{i,j}) / C, C \geq K \tag{2-8} wm,ni,j=tanh(w^m,ni,j)/C,CK(2-8)

其中, C ≥ K C \geq K CK保证了 ∑ ( i , j ) ∈ N m , n ∣ w m , n i , j ∣ < 1 \sum_{(i, j) \in N_{m,n}} |w_{m,n}^{i,j}| < 1 (i,j)Nm,nwm,ni,j<1

Tanh-C牺牲了边缘值,但使得亲和力分布更加平衡。不过 C C C的最佳值会随着训练任务的变化而变化,比如邻居数量、激活函数、数据集等,如图2-3©所示。

(4)Tanh- γ \gamma γ-Abs-Sum*
为了确定任务的最佳值 C C C,作者建议学习归一化因子和非局部亲和力,并且只在 ∑ ( i , j ) ∈ N m , n ∣ w m , n i , j ∣ > 1 \sum_{(i, j) \in N_{m,n}} |w_{m,n}^{i,j}| > 1 (i,j)Nm,nwm,ni,j>1时进行正则化,其式如式2-9所示。

w m , n i , j = t a n h ( w ^ m , n i , j ) / γ , γ m i n ≤ γ ≤ γ m a x (2-9) w_{m,n}^{i,j} = tanh(\hat{w}_{m,n}^{i,j}) / \gamma, \gamma_{min} \leq \gamma \leq \gamma_{max} \tag{2-9} wm,ni,j=tanh(w^m,ni,j)/γ,γminγγmax(2-9)

图2-3(d)是当 γ = 1.25 时的例子 \gamma=1.25时的例子 γ=1.25时的例子。与Abs−Sum∗相比,Tanh- γ \gamma γ-Abs-Sum*仍然有机会避免归一化,它允许我们探索更多样化亲和力的邻域点。

不同正则化方式示意图

图2-3 不同正则化方式示意图

2.3.2 置信度引导的affinity正则化

已有的传播框架,亲和力描述了像素之间的相关性并提供传播的指导,这是基于像素之间的相似性来做的。每个像素同等对待,认为都是可信的。但是,深度补全任务中,不同像素点加权需要考虑可信度。

本文将预测置信度图并与亲和力正则化结合,结合了置信度的Tanh- γ \gamma γ-Abs-Sum*如2-10所示。

w m , n i , j = c i , j ⋅ t a n h ( w ^ m , n i , j ) / γ (2-10) w_{m,n}^{i,j} = c^{i,j} \cdot tanh(\hat{w}_{m,n}^{i,j}) / \gamma \tag{2-10} wm,ni,j=ci,jtanh(w^m,ni,j)/γ(2-10)

其中, c i , j ∈ [ 0 , 1 ] c^{i,j} \in [0,1] ci,j[0,1]表示在像素 ( i , j ) (i,j) (i,j)处的置信度。

有无置信度传播的效果对比图

图2-4 有无置信度传播的效果对比图

3 效果

3.1 NYU Depth V2

NLSPN在NYU Depth V2数据集与其他模型的指标对比结果如下表3-1所示。

表3-1 NYU Depth V2数据集模型指标对比表

NYU Depth V2数据集模型指标对比表
图3-1是在NYU Depth V2数据集不同模型的可视化效果对比图。
NYU Depth V2数据集模型效果对比图

图3-1 NYU Depth V2数据集模型效果对比图

3.2 KITTI Depth Completion

NLSPN在KITTI Depth Completion数据集与其他模型的指标对比结果如下表3-2所示。

表3-2 KITTI Depth Completion数据集模型指标对比表

KITTI Depth Completion数据集模型指标对比表

图3-2是在KITTI Depth Completion数据集不同模型的可视化效果对比图。其中,(a)和(b)是输入,分别是RGB和稀疏深度图;©是CSPN结果;(d)是DepthNormal结果;(e)是DeepLiDAR结果;(f)是FuseNet结果;(g)是CSPN++结果;(h)是本文模型的结果。
在这里插入图片描述

图3-1 NYU Depth V2数据集模型效果对比图

参考资料

[1] Non-Local Spatial Propagation Network for Depth Completion
[2] https://github.com/zzangjinsun/NLSPN_ECCV20.git

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1450305.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

语言与科技创新(大语言模型对科技创新的影响)

1.科技创新中的语言因素 科技创新中的语言因素至关重要&#xff0c;具体体现在以下几个方面&#xff1a; 科技文献交流&#xff1a; 英语作为全球科学研究的通用语言&#xff0c;极大地推动了科技成果的国际传播与合作。科学家们在发表论文、报告研究成果时&#xff0c;大多选…

(17)Hive ——MR任务的map与reduce个数由什么决定?

一、MapTask的数量由什么决定&#xff1f; MapTask的数量由以下参数决定 文件个数文件大小blocksize 一般而言&#xff0c;对于每一个输入的文件会有一个map split&#xff0c;每一个分片会开启一个map任务&#xff0c;很容易导致小文件问题&#xff08;如果不进行小文件合并&…

Mac终端远程访问Linux

以ubuntu为例 一、查看ubuntu的ip地址 1、下载net-tools localhostubuntu-server:~$ sudo apt install net-tools 2、查看ip地址 localhostubuntu-server:~$ ifconfig ubuntu需要下载net-tools才能使用ifconfig localhostubuntu-server:~$ sudo apt install net-tools 二…

问题:下列不属于影响职业选择的内在因素是()。 #微信#微信

问题&#xff1a;下列不属于影响职业选择的内在因素是&#xff08;&#xff09;。 A.健康 B.个性特征 C.性别 D.家庭的影响 参考答案如图所示

算法刷题day13

目录 引言一、蜗牛 引言 今天时间有点紧&#xff0c;只搞了一道题目&#xff0c;不过确实搞了三个小时&#xff0c;才搞完&#xff0c;主要是也有点晚了&#xff0c;也好累啊&#xff0c;不过也还是可以的&#xff0c;学了状态DP&#xff0c;把建图和spfa算法熟悉了一下&#…

[嵌入式AI从0开始到入土]14_orangepi_aipro小修补含yolov7多线程案例

[嵌入式AI从0开始到入土]嵌入式AI系列教程 注&#xff1a;等我摸完鱼再把链接补上 可以关注我的B站号工具人呵呵的个人空间&#xff0c;后期会考虑出视频教程&#xff0c;务必催更&#xff0c;以防我变身鸽王。 第1期 昇腾Altas 200 DK上手 第2期 下载昇腾案例并运行 第3期 官…

openGauss学习笔记-221 openGauss性能调优-确定性能调优范围-分析作业是否被阻塞

文章目录 openGauss学习笔记-221 openGauss性能调优-确定性能调优范围-分析作业是否被阻塞221.1 操作步骤 openGauss学习笔记-221 openGauss性能调优-确定性能调优范围-分析作业是否被阻塞 数据库系统运行时&#xff0c;在某些业务场景下查询语句会被阻塞&#xff0c;导致语句…

备战蓝桥杯---图论之最短路dijkstra算法

目录 先分个类吧&#xff1a; 1.对于有向无环图&#xff0c;我们直接拓扑排序&#xff0c;和AOE网类似&#xff0c;把取max改成min即可。 2.边权全部相等&#xff0c;直接BFS即可 3.单源点最短路 从一个点出发&#xff0c;到达其他顶点的最短路长度。 Dijkstra算法&#x…

vmware workstation群晖虚拟机vmdk文件导出

为了防止群晖虚拟机中整个挂掉&#xff0c;里面的文件导不出来&#xff0c;尝试直接从vmdk中获取内容。 1、想采用diskgenius去读取文件&#xff0c;发现volume1是空的。只能读取群晖的系统文件。 2、选择另一个linux系统的虚拟机&#xff0c;选择对应的vmdk 3、如果有文件管理…

Python slice函数

在Python编程中&#xff0c;slice&#xff08;切片&#xff09;操作是一种强大且灵活的方式&#xff0c;用于从序列&#xff08;如列表、元组、字符串等&#xff09;中获取子序列。通过切片操作&#xff0c;可以轻松地提取序列中的一部分&#xff0c;进行遍历、修改、复制等操作…

springboot185基于vue.js的客户关系管理系统(crm)的设计与实现

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计&#xff0c;课程设计参考与学习用途。仅供学习参考&#xff0c; 不得用于商业或者非法用途&#xff0c;否则&#xff0c;一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

C语言学习day13:嵌套循环+练习题(时钟+乘法表)

嵌套循环通常是外面一层for循环&#xff0c;里面n层for循环 代码&#xff1a; int main1601() {//外层执行一次&#xff0c;内层执行一周for (int i 0; i < 5; i){for (int j 0; j < 5; j){printf("i%d,j%d\n",i,j);}}system("pause");return EX…

每日一练:LeeCode-98、 验证二叉搜索树【二叉搜索树+DFS】

本文是力扣LeeCode-98、 验证二叉搜索树【二叉搜索树DFS】】 学习与理解过程&#xff0c;本文仅做学习之用&#xff0c;对本题感兴趣的小伙伴可以出门左拐LeeCode。 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&am…

Editing While Playing 使用 Easyx 开发的 RPG 地图编辑器 tilemap eaitor

AWSD移动画布 鼠标右键长按拖拽 鼠标左键长按绘制 可以边拖拽边移动画布边绘制。 F1 导出 DLC F2 导入DLC author: 民用级脑的研发记录 1309602336qq.com 开发环境&#xff1a; 内置 easyx 的 devc 5.11 或者 VS 2022 TDM GCC 4.9.2 64-bit c11及以上都可运行 windows 环境运行…

[BIZ] - 1.金融交易系统特点

1. 典型数据汇总 数据 说明 新增数据量(条/天) Qps(条/s) 消息大小(Byte) 实时性 可丢失性 可恢复性 实时行情 1.使用场景&#xff1a;交易&#xff0c;报价&#xff0c;策略验证&#xff1b; 2.冷热分离&#xff1a;彭博行情/其他行情&#xff1b;黄金&期货行情/…

node+vue3+mysql前后分离开发范式——实现对数据库表的增删改查

文章目录 ⭐前言⭐ 功能设计与实现💖 node后端操作数据库实现增删改查💖 vue3前端实现增删改查⭐ 效果⭐ 总结⭐ 结束⭐结束⭐前言 大家好,我是yma16,本文分享关于 node+vue3+mysql前后分离开发范式——实现对数据库表的增删改查。 技术选型 前端:vite+vue3+antd 后端:…

编程语言的实际应用场景(C语言场景)

从应用范围上来说&#xff0c;这些编程语言大致可以分为两种&#xff1a; 一种是专用型语言&#xff0c;也就是针对某个特定领域而设计出来的语言&#xff1b;另一种是通用型语言&#xff0c;它们可以开发多种类型的应用程序&#xff0c;而不是局限在某个特定的领域。 专用型…

[职场] 投资顾问是做什么? #知识分享#其他#微信

投资顾问是做什么&#xff1f; 投资顾问是指专门从事于提供投资建议而获薪酬的人士&#xff0c;它是投资服务中非常重要的角色。投资顾问&#xff0c;有广义和狭义之分。广义的投资顾问&#xff0c;可以是指为金融投资、房地产投资、商品投资等各类投资领域提供专业建议的专业人…

UI文件原理

使用UI文件创建界面很轻松很便捷&#xff0c;他的原理就是每次我们保存UI文件的时候&#xff0c;QtCreator就自动帮我们将UI文件翻译成C的图形界面创建代码。可以通过以下步骤查看代码 到工程编译目录&#xff0c;一般就是工程同级目录下会生成另一个编译目录&#xff0c;会找到…

QT 工具栏 状态栏 停靠部件 核心部件

添加/删除工具栏 删除工具栏方法和删除菜单栏方法一样&#xff0c;不过工具栏可以有多个&#xff0c;所以每次右键MainWindow对象&#xff0c;都可以看到添加工具栏的选项。 工具栏添加动作 新添加的QAction对象会在动作编辑器里找到&#xff08;Action Editor&#xff09;&a…