MambaMOS:基于激光雷达的三维运动物体分割与运动感知状态空间模型

MambaMOS:基于激光雷达的三维运动物体分割与运动感知状态空间模型

  • 摘要
  • INTRODUCTION
  • Related Work
  • Method

MambaMOS: LiDAR-based 3D Moving Object Segmentation with Motion-aware State Space Model

摘要

激光雷达基于的运动目标分割(MOS)旨在利用之前扫描的运动信息在当前扫描的点云中定位并分割运动目标。

尽管之前的MOS方法取得了令人鼓舞的结果,但诸如时间信息和空间信息耦合较弱等几个关键问题仍需进一步研究。在本文中,作者提出了一种新颖的激光雷达基于的三维运动目标分割方法,名为MambaMOS,该方法具有运动感知的状态空间模型。

首先,作者开发了一个新颖的嵌入模块,时间线索引导嵌入(TCBE),以增强点云中时间和空间信息的耦合,并减轻忽视时间线索的问题。

其次,作者引入了运动感知状态空间模型(MSSM),使模型能够理解不同时间步中同一目标的时序相关性。具体来说,MSSM通过两个不同的时间建模和关联步骤强调不同时间步中同一目标的运动状态。

作者利用改进的状态空间模型来表示这些运动差异,显著地建模运动状态。

最后,在SemanticKITTI-MOS和KITTI-Road基准上的大量实验表明,所提出的MambaMOS达到了最先进的表现。

这项工作的源代码将在https://github.com/Terminal-K/MambaMOS。

INTRODUCTION

基于激光雷达的移动对象分割(MOS)任务对于准确描绘当前激光雷达扫描中的移动实体(如汽车或行人)至关重要,它是自动驾驶系统感知功能的基础组件[5, 46]。MOS在两个方面做出贡献。

首先,它通过提供准确的3D动态语义场景理解来确保自动驾驶系统的稳定运行[8, 39];其次,它有助于消除在同时定位与地图构建过程中由于对象移动引起的“幽灵效应”,从而产生一个干净的静态地图[7, 24]。

Chen等人[5]提出了一种基于学习的MOS方法,该方法将点云投影到平面表示上,并利用这些表示的序列来融入时间信息进行MOS。类似的范式如实现了低延迟,但由于投影引入了几何损失,因此在准确性和泛化方面还有改进的空间。非投影方法[29, 41]直接在3D空间中执行特征提取,并取得了精确的分割结果和优秀的泛化能力。

然而,这些方法无法充分耦合多扫描点云的时间-空间特征,并受到“时间与空间信息弱耦合”问题的影响。具体来说,由于移动对象随时间变化的空间位置,聚合点云中会形成尾迹伪影。

如果没有融入时间戳信息来区分聚合点云中的每个扫描,这些伪影可能会与外观相似的大对象(例如,移动的汽车和停放的卡车)混淆。时间戳信息的演变反映了对象的运动,移动对象也可以通过其时间戳信息的演变来识别。

基于上述观察,我们假设对象的时态信息是决定其运动的主导信息,加强对象时态和空间信息的耦合将有助于移动对象的分割。然而,上述方法[29, 41]直接将每个点的时间戳信息与空间占据信息连接起来,形成一个包含时态-空间特征的4D点云,并使用卷积神经网络(CNN)来学习这些时态-空间特征,如图1(a)所示。尽管它们有效,但忽略了时间戳信息的主导作用以及时态和空间信息之间更深层次的耦合,这阻碍了它们在分割性能上的进一步改进。

在这项工作中,我们重新思考了有效编码浅层时态和空间特征以及促进深层时态和空间特征之间充分交互的问题。对于简单地将时间戳信息与空间信息连接起来无法突出时间信息重要性的情况,我们提出了一种有效的嵌入方法,名为时间线索引导嵌入(TCBE),它通过注意力机制强调时间信息的表达力,并通过将时间信息作为一个独立于空间信息的通道来增强时态和空间信息之间的相互耦合。

尽管与先前的嵌入方法相比,TCBE可以在一定程度上增强时态和空间信息之间的耦合,但它只能应用于浅层,无法进一步深化时态和空间信息之间的耦合。最近,[23]的工作引入了一种基于投影的方法,并首次将变压器[40]的自注意力机制核心纳入MOS,实现了优于同类方法的更好性能。然而,研究[10, 15]表明,变压器模型在处理大输入序列时具有二次计算复杂度,这为实现训练成本和准确性之间的平衡带来了挑战。

幸运的是,Mamba[15]引入的状态空间模型(SSM)提供了一个有前途的解决方案,使我们有机会在保持线性时间复杂度的情况下,实现与变压器[40]相当的长距离上下文建模能力。受这一进展的启发,我们继续开发了运动感知空间状态模型(MSSM)。

在我们设计的MSSM中,我们将聚合点云特征解耦为多个单扫描特征,并分别学习单扫描特征表达的外观特征和聚合特征表达的动特征。然后,通过在这两个特征之间使用叉积注意力,我们实现了从单扫描特征到多扫描特征的时态信息补充,从而实现了时态和空间信息的深层耦合,并借助SSM实现了线性复杂度。

通过大量实验,作者证明了TCBE和MSSM的结合可以有效实现时间和空间信息的强烈耦合,并在SemanticKITTI-MOS(Shi et al., 2017; Chen et al., 2018)和KITTI-Road(Mamba, 2017)基准上达到了最先进的表现。作者的贡献总结如下:

  1. 作者重新思考了之前方法中存在的时空信息耦合较弱的问题,并提出了一种新颖的基于激光雷达的运动目标分割框架,即MambaMOS。据作者所知,这项工作是首次在MOS中利用SSM,为未来在MOS领域中扩展SSM指明了方向。
  2. 引入了一种有效的时间线索引导嵌入方法(TCBE),在一定程度上增强了时间和空间信息的耦合能力,提高了运动目标特征的表达力。
  3. 提出了一种基于SSM的新型时空信息耦合模块(MSSM),它实现了时序和空间特征的深层耦合,并通过单次扫描和多次扫描特征的互补性增强了运动目标的感知。

Related Work

现有MOS方法可以分为两类:基于投影的方法(Chen等,2018;Chen等,2018;Wang等,2018;Wang等,2018)和非基于投影的方法(Wang等,2018;Wang等,2018;Wang等,2018;Wang等,2018)。基于投影的方法涉及将三维点云投影到紧凑的二维平面上作为模型输入,而非基于投影的方法则直接在三维点云空间内进行处理。

Projection-based methods
基于投影的MOS方法可以分为范围视图(RV)方法(Chen等人,2018;Wang等人,2018;Wang等人,2018;Wang等人,2018)和鸟瞰视图(BEV)方法(Wang等人,2018;Wang等人,2018)。在3D激光雷达数据中的目标检测和分割领域已有大量工作使用了RV图像(Chen等人,2018;Wang等人,2018;Wang等人,2018),这些方法通过球形投影(Wang等人,2018)使用原始的单扫描点云获取2D RV图像作为模型输入。在运动感知任务中,感知运动所需的时间信息通常由当前扫描和过去几扫描的RV图像的残差处理获得的残差图像提供(Chen等人,2018;Wang等人,2018;Wang等人,2018;Wang等人,2018)。Chen等人(Chen et al., 2018)直接将RV图像和相应的多扫描残差图像拼接作为输入,而Sun等人(Sun et al., 2018)提出了一种双分支模型结构,使用两个编码器分别从RV图像和多扫描残差图像中提取特征。与(Sun et al., 2018)不同,Kim等人(Kim et al., 2018)在其模型中使用了一个分支,通过附加的语义标签将可移动目标分解为运动目标和静止目标,这增强了模型理解动态场景的能力。程等人(Cheng et al., 2018)更关注运动特征的特征提取,这与作者的观点和谐一致,并通过附加的语义标签取得了领先性能。

与上述基于RV的方法不同,BEV方法从俯视角度呈现点云特征,这保持了点云中目标尺度的一致性,使理解和处理特征更容易(Wang等人,2018)。Mohapatra等人(Mohapatra et al., 2018)首次提出了BEV中的移动目标分割,其运行速度更快,但准确性低于基于RV的方法。周等人(Zhou et al., 2018)使用极坐标将点云转换为鸟瞰视图(BEV)表示。他们利用双分支CNN从多个BEV扫描中提取外观和运动特征,从而提高了准确性和效率。尽管上述基于投影的方法效率很高,但在将最终结果返回到3D点云空间的过程中,存在几何信息的丢失,这限制了这些方法的性能。

图1. 其他非投影方法(子图(a))与作者的方法(子图(b))的简要比较。以前的方法对时间信息和空间占用信息同等对待,没有深入整合它们。相比之下,作者的方法通过作者设计的TCBE更多地强调了每个点的时间信息的重要性,并通过MSSM实现了时间和空间信息的更深层次的耦合,这更符合运动识别的基本原则。
在这里插入图片描述
Non-projection-based methods
非基于投影的方法,直接在3D空间中对点云进行操作,绕过了基于投影方法中固有的几何信息损失。因此,这些方法理论上具有实现更优分割性能的优势。4DMOS(Song等人,2017年)将多次扫描的点云 Voxel 化叠加表示输入到稀疏4D CNN中,并通过二进制贝叶斯滤波器作为额外的后处理融合了移动目标多个不同扫描的预测结果,这提高了判断当前扫描中移动目标的置信度,并取得了出色的分割结果。同样,InsMOS(Song等人,2017年)也是基于4D点云作为输入,但它们通过融合包含不同分辨率目标实例信息的BEV表示来辅助分割移动目标。Li等人(Li et al., 2019)提出了一种双分支模型,该模型集成了3D点云和2D图像,并采用Transformer(Vaswani et al., 2017)来融合多尺度点云和图像特征,旨在增强时间和空间特征的耦合。Li等人(Li et al., 2019)使用柱状坐标对聚合点云输入进行 Voxel 化,并使用CNN获取移动目标分割结果,进一步在LiDAR基于定位的任务中应用MOS,以提高其在动态场景中的鲁棒性。MapMOS(Wang et al., 2019)改进了选择固定过去扫描会导致一些由于遮挡而未被感知的移动目标的问题。因此,提出了一种基于由过去扫描构建的局部地图的移动目标感知策略,并在SemanticKITTI-MOS基准的验证集上实现了最先进的表现。除了上述基于学习的方法外,还有许多非学习方法,包括地图清理方法和基于地图的方法。地图清理方法通过目标的几何信息离线移除移动目标。另一方面,基于地图的方法需要预先构建的地图,以移除在映射过程中移动的目标为。

总的来说,现有的MOS方法尚未彻底探索时间和空间特征之间的耦合,这限制了它们对运动状态的理解。相比之下,作者的方法在嵌入阶段实现了时间和空间特征的浅层耦合,并在模型的每个阶段实现了深层耦合。这种深层耦合在时间和空间线索之间建立了稳健的相关性,增强了模型对运动场景的理解。重要的是,作者的方法在没有任何后处理模块的情况下,在MOS任务上实现了最先进的表现。

Method

方法部分描述了作者在研究中采用的方法和技术。作者概述了人工智能模型的框架以及用于手头任务的特定算法。该部分还讨论了用于训练和评估的数据集,以及为适应作者的目的对现有方法所做的任何修改。
EF
状态空间模型。SSM (Li等人, 2019年)是一种序列模型,它可以将一维输入列 x ( t ) ∈ R x(t) \in \mathbb{R} x(t)R映射到输出序列 y ( t ) ∈ R y(t) \in \mathbb{R} y(t)R。这个过程由一列连续的隐藏状态 h ( t ) ∈ R N h(t) \in \mathbb{R}^N h(t)RN示,状态大小为N。通常,连续时间系统的SSM可以由以下线性常微分方程(ODE)示,如方程(1)所示,
h ′ ( t ) = A h ( t ) + B x ( t ) h'(t) = Ah(t) + Bx(t) h(t)=Ah(t)+Bx(t)
y ( t ) = C h ( t ) y(t) = Ch(t) y(t)=Ch(t)
其中参数 A ∈ R N × N A \in \mathbb{R}^{N \times N} ARN×N B ∈ R N × 1 B \in \mathbb{R}^{N \times 1} BRN×1 C ∈ R 1 × N C \in \mathbb{R}^{1 \times N} CR1×N建立了状态和输出变之间的相关性。

离散化。将原始SSM方程转换为离散形式以适应任务中的离散数据是至关重要的。离散化的SSM可以写成方程(2)的形式,
h t = A h t − 1 + B x t h_t = Ah_{t-1} + Bx_t ht=Aht1+Bxt
y t = C h t y_t = Ch_t yt=Cht
离散化参数A,可以通过零阶保持(ZOH)规则与时间尺度参数△进行描述,
A = e A Δ , B = ( A − I ) − 1 ( e A Δ − I ) Δ B A = e^{A\Delta}, \quad B = (A - I)^{-1}(e^{A\Delta} - I) \Delta B A=eAΔ,B=(AI)1(eAΔI)ΔB

选择性扫描机制。Mamba (Mamba, 2017年)提出了一种选择性扫描机制,该机制通过输入序列的参数化投影有效地调整参数,使SSM能够选择性地过滤输入序列特征。这推进了SSM在时变领域的研究。

MambaMOS原则。为了解决现有MOS方法中时间信息和空间信息耦合不足的问题,作者尝试将Mamba从自然语言处理(NLP)领域适应到MOS任务。一个有趣的发现出现了: MOS任务本质上涉及从无序集中选择移动的子集,类似于NLP中的选择性复制机制(Bach等人,2017年; Mamba,2017年)。利用这一洞见,作者基于选择性复制机制引入了MambaMOS。这种增强使Mamba能够有效地处理MOS任务,同时使模型能够自适应地选择移动月标.隆低操作成本。
MambaMOS
总体架构概述。所提出的MambaMOS采用了如图2所示的U-Net(Mamba,2017)风格的总体架构。首先,经过序列化处理后,输入的4D点云集合将被转换成一个有序序列。
在这里插入图片描述
与此同时,它们通过精心设计的TCBE(第3.3节)进行编码。接下来,点云被送入编码器解码器结构中,以建模深层特征。这包括具有[2, 2, 2, 6, 2]五阶段块深度的编码器,以及具有[2, 2, 2, 2]四阶段块深度的解码器。要注意的是,除了第一阶段外,所有阶段的编码器中都使用了点云池化策略。通过池化层的点云的尺度变化因子为2。此外,在块开始处,采用了高效的位置编码块,以捕获特征的局部注意力,这一想法遵循大多数点变换工作(Li et al., 2019; Li et al., 2019; Li et al., 2019)。

经过层归一化处理后的点云特征将通过MSSM(第3.4节),这是整个块的核心洞察,中将增强目标的运动特征。块的最终输出是层归一化和多层感知器。在作者的每个块中广泛应用残差连接,以避免梯度消失(Mamba, 2017)。后,可以通过线性层获得每个点的logits,并将点反序列化以提取分割结果。

输入表示。在当前时间(t = 0),给定一个激光雷达扫描 S t = { p i ∈ R 4 } i S_t = \{p_i \in \mathbb{R}^4\}_i St={piR4}i,包含N个点 p i = [ x i , y i , z i , 1 ] T p_i= [x_i, y_i, z_i, 1]^T pi=[xi,yi,zi,1]T,这些点由齐次坐标表示。目标是使用连续点云集合 S = { S t } t = 1 E S= \{S_t\}_{t=1}^E S={St}t=1E中的当前扫描 S 0 S_0 S0及过去 F − 1 F - 1 F1次扫描中的移动点进行分割。为了将F次扫描的点云数据聚合到一个包含时间-空间信息的4D点云输入中,并消除自身运动,作者需要将过去的 F − 1 F-1 F1次扫描转换到当前扫描的视角,分别将齐次坐标转换为笛卡尔坐标。给定从扫描 t t t到当前扫描的位姿转换矩阵 T t T_t Tt,从时间的点云到当前点云的视角转换可以表示为方程(4)。
S o = { p i o = T ′ − 1 p i ∣ p i ∈ S t } S^o = \{p_i^o = T'^{-1} p_i \mid p_i \in S_t\} So={pio=T1pipiSt}, i = 0 , 1 , … , N − 1 i=0,1,\dots,N-1 i=0,1,,N1, 因此,4D点云集合 S ′ = { p i ∈ R 4 } i = 0 N − 1 S' = \{p_i \in \mathbb{R}^4\}_{i=0}^{N-1} S={piR4}i=0N1,包含 N = 2 E − 1 N=2E-1 N=2E1个点,可以表示为方程(5)。为了在4D点云中区分每个扫描,作者添加了每个扫描对应的时间步作为点的附加维度,并获得时空点表示 p i = [ x i , y i , z i , t i ] T p_i = [x_i, y_i, z_i, t_i]^T pi=[xi,yi,zi,ti]T

S ′ = { S 0 , S r → o , … , S t 0 } S' = \{S_0, S_{r\rightarrow o}, \dots, S_{t_0}\} S={S0,Sro,,St0}

序列化。作为MambaMOS核心的SSM通常接受一系列数据,如自然语言。因此,需要通过序列化从无序的4D点云集 S ′ S' S中获得序列 S % S\% S%。序列化可以理解为一个投影函数 Φ \Phi Φ,它将无序集 S ′ S' S转换为序列 S % S\% S%。因此,序列化和反序列化的过程可以描述为方程(6),其中 Φ − 1 \Phi^{-1} Φ1是逆投影函数。序列化点云的一种方法是按每个点的坐标排序[27]。然而,这种序列化方法不能充分保留目标的局部空间关系,可能导致在最终序列中空间上接近的点云相隔甚远。

空间填充曲线是一种数学曲线,能够将N维空间中的数据投影到一维连续空间: Z N → Z ZN \rightarrow Z ZNZ,这已在最近的3D场景理解工作中得到应用[42, 43]。受到它们的启发,作者的序列化过程利用了莫尔斯曲线[33]和希尔伯特曲线[17],它们有效地保持了原始3D点云中的邻域关系。

S ′ = Φ ( S ′ ) S' = \Phi(S') S=Φ(S) S ′ = Φ − 1 ( S ′ ) S' = \Phi^{-1}(S') S=Φ1(S)
Time Clue Bootstrapping Embedding
先前的方法(Zhu等人,2017;Wang等人,2018;Wang等人,2019)未有效地强调每个点的时间信息的主导地位。这可以从他们对来自激光雷达的空间占用信息和来自扫描聚合过程的相应时间戳信息的平等处理中看出。然而,对于属于不同模态的时间和空间信息的直接叠加,并没有充分利用一种模态对另一种模态的监督作用。因此,作者提出了时间线索引导嵌入(TCBE)。它基于时间演变驱动物体运动的原理,强调时间信息胜过空间信息,从而增强时间和空间信息的耦合。

TCBE的结构如图2右下所示。具体来说,TCBE使用1D卷积在有序点云序列 S ′ S' S中嵌入每个点的空间和时间信息,以获得嵌入维度中的相应空间特征 f s f_s fs和时间特征 f t f_t ft,两者都具有局部特性。首先,通过将时间特征 f t f_t ft与空间特征 f s f_s fs相加,获得初始耦合的时间空间特征 f c o u f_{cou} fcou,这作为先前嵌入方法的另一种实现。然后,为了强调时间信息相对于空间信息的主导地位,通过不改变其通道的1D卷积获得反映局部时间演变趋势的 f t f_t ft,再与 f s f_s fs逐元素相乘。接着,将时间引导的空间特征 f t c f_{tc} ftc添加到初始耦合的时间空间特征 f c o u f_{cou} fcou中,得到增强的时间空间耦合信息 f c o n e f_{cone} fcone。在经过1D卷积、批量归一化和激活函数处理后, f c f_c fc作为TCBE的输出。
Motion-aware State Space Model
尽管在NLP中的选择性复制任务(Bang et al., 2018; Wang et al., 2018)与前面提到的MOS任务在形式上有某些相似性,但直接应用Mamba(Wang et al., 2018)不能有效地利用时间特征。这归因于原始的Mamba(Wang et al., 2018)是为具有某种因果关系的二维自然语言设计的。然而,序列化的多扫描点云序列不能反映强烈的因果关系。因此,作者提出MSSM来弥补Mamba(Wang et al., 2018)在MOS上的不足。
MSSM的主要设计思想是通过单扫描特征与多扫描特征之间的交叉乘积注意力来增强原始Mamba对移动目标时间特征的感知。如图2左上所示,它主要由线性层、激活函数和具有选择性扫描机制的自适应状态机(SSM)组成。令输入具有批大小 B B B、例长度 N N N和通道数 C C C的点云特征表示为 f i ∈ R B × N × C f_i \in \mathbb{R}^{B \times N \times C} fiRB×N×C,该特征将通过三个分支。作者从Mamba(Wang等人,2018)的主分支导出作者的MambaMOS的上部和中部分支。上部分支用于提取单扫描点云中每个目标的表观特征。该部分更多地关注4D点云中移动目标的时间特征。对于MOS任务,更关注移动目标,作者希望MSSM对道路或树干等不动的目标分配较低的注意力。因此,需要一个特征加权过程。受到注意力控制单元(Kumar等人,2018)的启发,作者在MSSM的底部分支采用了一个简单的门控机制为每个隐藏状态中的特征分配权重,从而确定特征是否被表达。

具体来说,为了获得此时具有 B ′ = B × F B' = B \times F B=B×F的单扫描特征 f s ∈ R B × N ′ × C f_s \in \mathbb{R}^{B \times N' \times C} fsRB×N×C,上部分支首先执行反转聚合(RA),它将 S ′ S' S的每个扫描分离并经过零填充到 N p N_p Np后作为单独的批处理进行连接。然后通过1D卷积和单扫描聚合的过程获得单扫描的表观特征 f A f_A fA。这个过程可以写为:
f A = σ ( C o n v 1 d ( R A ( f ) ) ) f_A = \sigma(Conv1d(RA(f))) fA=σ(Conv1d(RA(f)))
中部分支使用1D卷积获得多个扫描中移动目标的时序和表观特征。此过程的输出表示为 f M f_M fM
随后, f M f_M fM通过交叉乘积注意力与上部分支的输出 f A f_A fA融合,得到 f M G f_{MG} fMG。融合过程可以描述如下:
f u c = Sigmoid ( f A ⊗ f M ) ⊙ f A + f h r f_{uc} = \text{Sigmoid}(f_A \otimes f_M) \odot f_A + f_{hr} fuc=Sigmoid(fAfM)fA+fhr
在后续设计中,作者遵循原始Mamba的思想,即块的最终输出 f ′ f' f是通过主分支的结果与经过线性投影的门控分支结果 f c f_c fc的逐元素乘积得到的。这个过程描述如下:
f ′ = S S M ( o ( f M G ) ) ⊙ f c f' = SSM(o(f_{MG})) \odot f_c f=SSM(o(fMG))fc
在执行损失计算之前,作者首先将获得的列分割结果反序列化,以对应初始的无序点云集,如方程6所示。之后,遵循大多数3D分割方法,作者采用交叉熵损失( L c e L_{ce} Lce)和Lovasz-Softmax损失(Louis等人,2017)( L l s L_{ls} Lls)的组合作为联合损失 L = L c e + L l s L = L_{ce} + L_{ls} L=Lce+Lls用于监督训练。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一站式PDF解决方案:如何部署自己的PDF全能工具(Docker部署和群晖部署教程)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 开始部署 📒📝 Docker部署📝 群晖部署📝 本地安装⚓️ 相关链接 ⚓️📖 介绍 📖 在数字化办公的今天,PDF文件几乎成了我们日常工作中不可或缺的一部分。但你是否曾因为PDF文件的编辑、转换、合并等问题而头疼?如果…

Python类方法探秘:从单例模式到版本控制

引言: 在Python编程中,类方法作为一种特殊的实例方法,以其独特的魅力在众多编程范式中脱颖而出。它们不仅提供了无需实例即可调用的便捷性,还在设计模式、版本控制等方面发挥着重要作用。本文将通过几个生动的示例,带您…

STM32——GPIO篇

技术笔记! 1. 什么是GPIO? GPIO是通用输入输出端口(General-purpose input/output)的英文简写,是所有的微控制器必不可少的外设之一,可以由STM32直接驱动从而实现与外部设备通信、控制以及采集和捕获的功…

骨传导耳机哪个品牌值得入手?精选五款高性能骨传导耳机,闭眼入都不踩雷!

随着健康生活的日益普及,运动健身逐渐成为人们生活中的重要组成部分。在这一背景下,骨传导耳机作为一种新型蓝牙耳机,凭借其不堵塞耳道、防水性能强等特性,受到了广大运动爱好者的喜爱。然而,骨传导耳机的热销也吸引了…

海外大带宽服务器的带宽大小是如何定义的?

海外大带宽服务器的带宽大小通常是由提供的数据传输速率来衡量的。Rak部落小编为您整理发布海外大带宽服务器的带宽大小是如何定义的? 带宽的大小决定了服务器能够处理的数据量和传输速度,这对于确保服务器性能至关重要。在详细定义中,带宽可以根据以下…

Flutter笔记:Widgets Easier组件库(9)使用弹窗

Flutter笔记 Widgets Easier组件库(9):使用弹窗 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress o…

每日OJ题_贪心算法三②_力扣553. 最优除法

目录 力扣553. 最优除法 解析代码 力扣553. 最优除法 553. 最优除法 难度 中等 给定一正整数数组 nums,nums 中的相邻整数将进行浮点除法。例如, [2,3,4] -> 2 / 3 / 4 。 例如,nums [2,3,4],我们将求表达式的值 "…

MySQL-笔记-08.数据库编程

目录 8.1 编程基础 8.1.1 基本语法 8.1.2 运算符与表达式 1. 标识符 2. 常量 (1) 字符串常量 (2)日期时间常量 (3)数值常量 (4)布尔值常量 (5)NULL…

暖心又实用!母亲节教会妈妈这4招才是最贴心的礼物

母亲节就要到了,这个特殊的日子,我们总是想要为妈妈送上最真挚的祝福和关怀。在这个数字化时代,一部智能手机就能成为我们表达爱意的桥梁。今天,就让我们一起来看看华为手机的四个功能,让妈妈的手机使用体验更加便捷、…

革新食品改良,解锁品质新高度——体验西奥机电TEX-01质构仪的卓越魅力

革新食品改良,解锁品质新高度——体验西奥机电TEX-01质构仪的卓越魅力 引领食品改良新潮流 在追求品质生活的今天,食品的口感和品质成为了消费者选择的重要标准。为了满足这一市场需求,食品企业正积极寻求新的改良方法,以提升产…

Study--Oracle-01-单实例部署Oracle11G-R2

Oracle版本发布介绍 Oracle 19c和12c和11g功能区别_数据库_oracle_支持 一、CentOS 7 环境准备 1、软件准备 操作系统:CentOS 7 数据库版本: Oracle11g R2 2、操作系统环境配置 关闭selinux ,编辑 /etc/selinux/config文件,设置SELINU…

栈的磁盘优化:降低存取成本的算法与实现

栈的磁盘优化:降低存取成本的算法与实现 问题背景简单实现方法的分析实现方法PUSH操作POP操作成本分析渐近分析 优化实现方法实现方法成本分析渐近分析 进一步优化:双页管理策略实现方法管理策略成本分析 伪代码示例C代码示例结论 问题背景 在具有有限快…

Photoshop中选区工具的应用

Photoshop中选区工具的应用 前言Photoshop中选区工具的基本操作创建选区的工具及方法选择、取消、隐藏选区选区的增加、减少选区的应用变换扩大选取与选取相似 Photoshop中采用快速选择工具来创建选区Photoshop中采用色彩范围命令来创建选区Photoshop中采用快速蒙版来创建选区P…

如何用Kimi,5秒1步生成流程图

引言 在当前快节奏的工作环境中,拥有快速、专业且高效的工具不可或缺。 Kimi不仅能在5秒内生成专业的流程图(kimi),还允许实时编辑和预览,大幅简化了传统流程图的制作过程。 这种迅速的生成能力和高度的可定制性使得…

docker资源限额

多数的应⽤场景要对Docker容器的运⾏内存进⾏限制,防⽌其使⽤过多的内存。 格式:-m或--memory 正常的内存大小 [rootadmin ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS …

音视频开发4 FFmpeg windows 环境搭建,QT 安装,动态库的搜索路径

FFmpeg 为了让所有平台的开发者都能够学习到音视频开发的通用技术,本教程主要讲解跨平台的音视频开发库FFmpeg。其实只要你掌握了FFmpeg,也可以很快上手其他音视频开发库,因为底层原理都是一样的,你最终操作的都是一样的数据&…

速卖通新卖家测评攻略:从入门到精通

在电商行业中,测评被广泛认为是提升产品转化率和销量的有效手段。对于速卖通的卖家而言,测评的必要性更是显而易见。测评,本质上与国内电商的补单行为相似,是一种通过增加销量来提升产品权重的方法。 特别是在竞争激烈的类目中&a…

【Stream 流】通过一个例子看遍所有Stream API使用场景

前言 上篇文章记录了方法引用,Lambda表达式等基础的知识点,这篇文章主要结合课设项目详细介绍Stream 流的API以及它的主要场景。 Stream API作用 在Java 8及其以后的版本中,Stream API为处理集合数据提供了强大而灵活的功能。有了Stream AP…

Flutter开发Dart中的队列(Queue)

文章目录 Dart中的队列(Queue)基本操作示例队列的类型队列的应用总结 Dart中的队列(Queue) 队列是一种抽象的数据结构,遵循“先进先出”(FIFO)的原则。这意味着最早添加的元素将首先被移除。队…

如何在速卖通(aliexpress)买东西?速卖通(aliexpress)买东西怎么付款?

如何在速卖通购物: 1、注册账户:首先访问速卖通官网或下载速卖通手机应用程序,并注册一个账户。如果您已经有一个账户,直接登录即可。 2、搜索商品:在搜索框中输入您想要购买的商品关键词,然后点击搜索。…