当前位置: 首页 > news >正文

论文笔记 - :MonoLSS: Learnable Sample Selection For Monocular 3D Detection

论文笔记✍MonoLSS: Learnable Sample Selection For Monocular 3D Detection

📜 Abstract


🔨 主流做法+限制 :

以前的工作以启发式的方式使用特征来学习 3D 属性,没有考虑到不适当的特征可能会产生不利影响。

🔨 本文做法:

本文引入了样本选择,即只训练合适的样本来回归 3D 属性。

  • 为了自适应地选择样本,我们提出了可学习样本选择(LSS)模块,该模块基于 Gumbel-Softmax 和相对距离样本划分器。 LSS 模块在预热策略下工作,从而提高训练稳定性。

  • 此外,由于专用于3D属性样本选择的LSS模块依赖于对象级特征,因此我们进一步开发了一种名为MixUp3D的数据增强方法来丰富3D属性样本,该方法符合成像原理而不引入歧义。

  • 作为两种正交方法,LSS 模块和 MixUp3D 可以独立使用,也可以结合使用。足够的实验表明,它们的组合使用可以产生协同效应,产生的改进超越了它们单独应用的简单总和。

🔨 结果 :

利用 LSS 模块和 MixUp3D,在没有任何额外数据的情况下,我们名为 MonoLSS 的方法在 KITTI 3D 对象检测基准测试的所有三个类别(汽车、骑行者和行人)中排名第一,并且在 Waymo 数据集和 KITTI 上都取得了有竞争力的结果 - nuScenes 跨数据集评估。该代码包含在补充材料中,并将发布以促进相关学术和工业研究。

🔨问题前置 :

问题: 看完摘要有以下几点问题,带着这些问题看论文。

  • 作者说不适当的特征指的是什么?

解答:遮挡问题导致b物体特征点在A物体上面。导致预测B物体的特征不合适。

  • 针对作者的motivation,作者是如何解决问题的?为什么提出的方案是有效地?

解答:从问题出发,选择合适的特征。进而引入了怎么选择合适的特征,采样+数据增强。

  • 根据什么条件来制定可学习样本挑选策略?

  • 如何进行数据增强mixup3D?怎么代码实现的?

  • 如何联合使用保证效果最优?

✨ 一、Introduction


🔨 1.1 Motivation :

  1. 为了实现准确的 3D 属性估计,许多方法将 3D 属性预测分支添加到 2D 检测器中 [43, 61]。利用特征进行3D属性输出。

设计动机来自于2D检测的标签分配。人们很少需要IOU小于0.3的anchor作为目标检测的正样本(在anchor free方法中,这意味着远离目标中心)。使用不当可能会导致歧义,甚至产生不利影响。我们将这些知识转移到 3D 属性学习中。

SMOKE [32]仅使用位于对象3D中心的尺寸为1 * 1 * C的一个固定位置特征来回归3D属性。
当发生遮挡时,该特征可能位于另一个对象上。尽管感受野不限于特征的位置,但网络可能无法接收最佳信息作为输入。

由于受到前景和背景干扰等无用信息的影响,这种方法仍然存在问题

2. 在这项工作中,我们引入样本选择来识别有利于学习 3D 属性的特征并将其作为正样本,而忽略其余特征并将其视为负样本。 挑战在于如何划分它们。一种直观的方法是关注目标对象本身的特征(图1(c)),但这些方法需要引入额外的数据,例如深度图[40]或分割标签,并且仍然无法在不同的样本中选择合适的样本。物体的内部组件,例如轮子、灯光或身体。

  • 为了解决 3D 属性样本选择问题,我们提出了一种新颖的可学习样本选择(LSS)模块。 LSS 模块使用 Gumbel-Softmax [13] 实现概率采样。

  • 此外,采用top-k GumbelSoftmax [22]来实现多样本采样,将抽取的样本数量从1扩展到k。

  • 此外,为了取代所有对象使用相同的k值,我们开发了一种基于相对距离的无超参数样本划分器,实现了每个对象采样值的自适应确定。

  • 此外,受 HTL 方法 [34] 的启发,LSS 模块采用预热策略来稳定训练过程。

    采样->每个物体自适应采样->HTL方法稳定训练过程

3. 此外,专用于 3D 属性样本选择的 LSS 模块依赖于对象级特征。然而,训练数据中的对象数量总是有限的。同时,大多数3D单目数据增强方法,例如随机裁剪扩展、随机翻转、复制粘贴等,都不会改变物体本身的特征。其中一些甚至由于违反成像原理而引入模糊的特征。

所以呢,为了提高3D属性样本的丰富度,我们提出MixUp3D,它在传统2D MixUp [57]的基础上添加物理约束来模拟物理世界中的空间重叠。空间重叠不会改变对象的 3D 属性,例如汽车重叠自行车,但我们仍然可以判断它们的深度、尺寸和方向。

  • 作为空间重叠的模拟,MixUp3D 使物体能够符合成像原理,而不会引入模糊性。

  • 可以丰富训练样本,缓解过拟合。此外,MixUp3D 可以用作任何单目 3D 检测方法中的基本数据增强方法。

🔨 1.2 本文方法+贡献 :

总而言之,这项工作的主要贡献如下:

• 我们强调并非所有特征对于学习 3D 属性都同样有效,并首先将其重新表述为样本选择问题。相应地,开发了一种新颖的可学习样本选择(LSS)模块,可以自适应地选择样本。

• 为了丰富3D 属性样本,我们设计了MixUp3D 数据增强,它可以模拟空间重叠并显着提高3D 检测性能。

  • SOTA

通过阅读Introduction,作者首先从3D属性预测特征问题出发,认为特征没选好;其次,提出了解决方案,第一,自适应的选择样本,进行特征提取,更加适应于属性预测;第二,数据增强来丰富样本。最后,大量实验验证设计思路的有效性。

🔁 二、Related Work


🔨 2.1 常见做法:

1 Monocular 3D Object Detection

根据是否使用额外数据,单目 3D 目标检测算法可主要分为两类。

  • 第一种方法仅使用单个图像作为输入,没有任何额外信息

  • 第二种方法使用额外的数据,例如深度图、LIDAR点云和CAD模型,来获取附加信息并增强检测。

由于信息的增加,利用额外数据的方法总是表现出卓越的性能。然而,复杂的传感器配置和计算开销限制了它们在工业中的实际应用。

2 Sample Selection in 2D/3D Detection.

3 Data Augmentation in Monocular 3D Detection.

由于违反几何约束,随机水平翻转 [5, 28, 63] 和光度畸变 [3, 50] 是单目 3D 检测中唯一最常使用的两种数据增强方法。

一些方法[40](DID-M3D) 使用随机裁剪和扩展来模拟深度的比例变化。然而,根据成像原理,一幅图像上的所有深度具有相同的比例变化是不切实际的。

一些方法 [29, 53] 使用额外的深度图来模拟相机沿 z 轴的前后移动。

然而,由于视差和深度图误差,该方法引入了大量噪声和扭曲的外观特征。

实例级复制粘贴[29]也被用作3D数据增强方法,但受限于复杂的手动处理逻辑,仍然不够现实。 [Exploring Geometric Consistency for Monocular 3D Object Detection]

💻 三、Approach


🔨 3.1 FrameWork:

单目 3D 对象检测从单个 RGB 图像中提取特征,估计图像中每个对象的类别和 3D 边界框。 3D 边界框可以进一步分为 3D 中心位置(x、y、z)、尺寸(h、w、l)和方向(偏航角)θ。物体的横滚角和俯仰角设置为 0。

在这项工作中,我们提出了一种新颖的可学习样本选择(LSS)模块来优化单目 3D 对象检测过程。 MonoLS的整体架构如图2所示,主要包括2D检测器、ROI-Align、3D检测头和LSS模块

2D检测

2D检测细节

与仅根据对象特征预测单个 3D 边界框的其他方法不同,我们的方法使用对象特征中的每个样本点来预测 3D 边界框对数概率。(每个对象会经过采样,每个采样点都用来预测)
在这里插入图片描述

此外,我们遵循多仓设计来预测方向并预测深度的不确定性,这与 GUPNet [34] 相同。
在这里插入图片描述

基于网络预测的logit图,LSS模块可以在训练时自适应地选择3D属性的正样本。

在推理过程中,LSS模块根据logit图中的最高对数概率选择最佳3D属性。

Learnable Sample Selection (LSS)

假设U ∼ U niform(0, 1),那么我们可以使用逆变换采样,通过计算 G = −log(−log(U )) 来生成 Gumbel 分布 G。通过用 Gumbel 分布独立扰动对数概率并使用 argmax 函数找到最大元素,Gumbel-Max 技巧 [10] 实现了无需随机选择的概率采样。基于这项工作,Gumbel-Softmax [13]使用softmax函数作为argmax的连续、可微的近似,并借助重新参数化实现整体可微性。 GumbelTop-k [22]通过无放回地绘制大小为 k 的有序采样,将样本点的数量从 Top-1 扩展到 Top-k,其中 k 是超参数。

  • 然而,相同的 k 并不适合所有对象,例如,被遮挡的对象应该比正常对象具有更少的正样本。

  • 为此,我们设计了一个基于无超参数相对距离的模块来自适应地划分样本

  • 总之,我们提出了一个可学习样本选择(LSS)模块来解决 3D 属性学习中的样本选择问题,该模块由 Gumbel-Softmax 和相对距离样本划分器组成。

    通过U–>G = −log(−log(U ))–>ˆ Φ = (G + Φ) -->softmax -->S

    depth uncertainty U logit map Φ

    Gumbel distribution G

    Gumbel-distributed logit ˆ Φ

    soft map S
    在这里插入图片描述

之后,采用相对距离样本分配器代替Gumbel-Top-k中的固定k,实现自适应样本分配。我们使用软映射的元素之间的最大间隔来区分正样本和负样本。一般用绝对距离(Abs dis = |a − b|)来表示间隔。但由于softmax函数的放大效应,使用绝对距离来划分样本可能会导致正样本数量不足。我们利用相对距离(Rel dis = a b )来增加正样本的数量。例如,如果softmax函数的输入向量为[20, 18, 17, 7],则输出将为[0.84, 0.12, 0.04, 0],使用绝对距离将仅分配一个正样本,而相对距离将分配三

首先,我们将软映射S展平为一维向量Sof t S,并对其进行排序,得到排序向量Sort S。其次,我们通过以下公式计算向量Sort S的相邻元素之间的相对距离:

在这里插入图片描述

其中,f()表示Sort S到Sof t S的映射关系。假设Dis Si为Dis S中的最大值,由于指数函数是单调递增函数,因此 ˆ φf(i) − ˆ φf(i+ 1) 是 ˆ Φ 中的最大间隔。本质上,我们正在寻找 Gumbel 分布 logit 中最具辨别力的值来区分正样本和负样本。我们选择Dis Si对应的Sort Si作为阈值来过滤负样本。具体地,将软映射S中小于Sort Si的值设置为0,得到最终的采样映射Sample S。

2. Loss Function and Training Strategy

整体损失L由2D损失L2d和3D损失L3d组成,其中2D损失L2d遵循CenterNet[61]中的设计,3D损失L3d采用基于LSS模块的多任务损失函数来监督3D损失的学习特性.
在这里插入图片描述

在计算出每个属性的损失后,我们将深度、方向和维度属性的损失图乘以LSS的最终采样图Sample S,以防止负样本的损失反向传播。

采用 HTL [34] 训练策略来减少不稳定性(出自 GUPNet)。此外,由于3D属性损失的不稳定性会干扰正样本点的选择,因此我们在训练LSS模块时使用预热策略。具体来说,在训练的早期阶段,所有样本都将用于学习3D属性,直到深度损失稳定。我们认为深度损失稳定是启动 LSS 模块的必要条件,因为深度是影响 3D 边界框精度的最重要属性 [29, 36]。

3. MixUp3D for Spatial Overlap Simulation

由于LSS模块专注于对象级特征,因此不修改对象本身特征的方法对于LSS模块来说预计不会足够有效.

由于 MixUp [57, 58] 的优点,可以增强对象的像素级特征。**我们提出了 MixUp3D,它为 2D MixUp 添加了物理约束,**使得新生成的图像本质上是空间重叠的合理成像。具体来说,MixUp3D 仅违反物理世界中物体的碰撞约束,同时确保生成的图像遵循成像原理,从而避免任何歧义。

🔤在本文中,我们对 MixUp 图像施加严格的约束,以确保它们具有相同的焦距、主点、分辨率和相机视图(俯仰角和滚动角)。🔤🔤一般来说,焦距相同的图像总是意味着**它们的主点和分辨率也相同**🔤🔤因此,MixUp3D只需要考虑保证图像焦距相同即可。🔤

在这里插入图片描述

其中 n, m ∈ [1, N ] 且 n ̸= m。 λ表示混合比例。

所提出的MixUp3D可以在不引入歧义的情况下丰富训练样本,并有效缓解过拟合问题。作为一种重要的数据增强方法,它可以方便地应用于任何单目 3D 检测任务。

    mixup3D:遵循mixup2D,先找出相同的焦距的图片进行分组,然后组内进行mixup。保证了成像原理。

💻 四、Experiments


🔨 4.1 Implementation details:

Waymo 根据 3D 框中存在的 LiDAR 点的数量,在两个级别评估对象:级别 1 和级别 2。评估在三个距离进行:[0, 30)、[30, 50) 和 [50, ∞) 米。 Waymo 利用 AP H3D 百分比指标(其中包含 AP3D 中的航向信息)作为评估基准。

nuScenes 包含从前置摄像头捕获的 28,130 个训练图像和 6,019 个验证图像。我们使用验证分割进行跨数据集评估。

Implementation details.。我们提出的 MonoLSS 在 4 个 Tesla V100 GPU 上进行训练,批量大小为 16。在没有 MixUp3D 的情况下,我们将模型训练 150 个周期,之后发生过拟合。使用 MixUp3D 时,模型可以训练 600 个 epoch,而不会出现过拟合。我们使用 Adam [19] 作为优化器,初始学习率为 1e − 3。学习调度器在前 5 个时期具有线性预热策略。按照[40],ROI-Align 大小 d × d 设置为 7 × 7。LSS 在 0.3 × 总历次(实验参数)后开始进行预热。

🔨 4.2 Results quantitative(定量)

在这里插入图片描述

🔨 4.3 Ablation Study:

在这里插入图片描述

LSS 模块的有效性

如表 5 前 4 行所示,LSS 模块可以显着改善 AP。**而作用于方向和尺寸属性时,改进相对较小。这是因为深度估计误差是单目 3D 检测中最关键的限制因素,**这一点已在 GeoAug [29] 和 MonoDLE [36] 中得到证实。因此,为了便于比较,在下面的消融实验中,LSS模块仅作用于深度属性。

Warm-up的必要性:

表 5 前 3 行的结果显示了预热策略的重要性。如果没有预热(第2行),LSS将在训练开始时开始随机采样,导致真正的负样本可能被迫学习属性,而真正的正样本则被丢弃,这会显着降低性能(简单级别为 21.72 至 17.03)。

由于3D属性损失的不稳定性会干扰正样本点的选择,因此我们在训练LSS模块时使用预热策略。具体来说,在训练的早期阶段,所有样本都将用于学习3D属性,直到深度损失稳定。(前边介绍的)

LSS 和 MixUp3D 之间的协同效应

样本选择策略的比较:

我们将LSS模块与其他样本分配策略进行对比,结果如表6所示。LSS模块根据对象特征自适应地选择正样本,使得AP相对于将固定位置样本点视为正样本的方法有显着改进那些。此外,我们的方法还优于使用额外的深度或分割图来选择正样本的方法。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

🔨 4.4 实验-好词好句:

“Specifically, compared with MonoDDE [28] which is the recent top1-ranked image-only method, MonoLSS gains significant improvement of 4.73%/11.73%/12.19% in AP3D and 3.90%/10.61%/10.90% in APBEV relatively on the easy, moderate, and hard levels while IOU = 0.7.

问题解答

根据 3.1节,进行样本点选择;
对原始数据集进行分组。随机整合;
预热训练的方式,保证两者发挥最大的效果。

相关文章:

论文笔记 - :MonoLSS: Learnable Sample Selection For Monocular 3D Detection

论文笔记✍MonoLSS: Learnable Sample Selection For Monocular 3D Detection 📜 Abstract 🔨 主流做法限制 : 以前的工作以启发式的方式使用特征来学习 3D 属性,没有考虑到不适当的特征可能会产生不利影响。 🔨 本…...

LVS、HAProxy

集群:将很多个机器组织到一起,作为一个整体对外提供服务。集群在扩展性、性能方面都可以做到很灵活。集群的分类:负载均衡集群:Load Balance。高可用集群:High Available。高性能集群:High Performance Com…...

开发环境->生产环境

1、数据迁移 不涉及docker # 以数据库用户导出数据 mysqldump -h 192.168.1.168 -P 3307 -u abragent -pabragebb17 abragent > abragent.sql# 以root用户导出数据 mysqldump -h 192.168.1.168 -P 3307 -u root -p8d3Ba1b abragent > abragent.sql 涉及docker …...

基于AI智能识别技术的智慧展览馆视频监管方案设计

一、建设背景 随着科技的不断进步和社会安全需求的日益增长,展览馆作为展示文化、艺术和科技成果的重要场所,其安全监控系统的智能化升级已成为当务之急。为此,旭帆科技(TSINGSEE青犀)基于视频智能分析技术推出了展览…...

Leetcode-894-所有可能的真二叉树-c++

题目详见https://leetcode.cn/problems/all-possible-full-binary-trees/ 主搞动态规划,因为这玩意儿我还不是很懂 关于节点个数为奇数偶数的证明请见官方题解方法一中的如下内容: 这里DP的一个主要思想是:对于任何一个满二叉树&#xff…...

Django DRF视图

文章目录 一、DRF类视图介绍APIViewGenericAPIView类ViewSet类ModelViewSet类重写方法 二、Request与ResponseRequestResponse 参考 一、DRF类视图介绍 在DRF框架中提供了众多的通用视图基类与扩展类,以简化视图的编写。 • View:Django默认的视图基类&…...

SQLite全文搜索引擎:实现原理、应用实践和版本差异

文章目录 一、实现原理1.1 倒排索引1.2 虚拟表 二、应用在工程上的实施方法2.1 创建FTS虚拟表2.2 插入数据2.3 全文搜索2.4 关联普通表2.5 更新和删除数据2.6 优化FTS虚拟表2.7 小结 三、FTS3、FTS4和FTS5的区别3.1 FTS33.2 FTS43.3 FTS53.4 小结 四、更新SQLite的FTS版本的步骤…...

day17-二叉树part04

110.平衡二叉树 (优先掌握递归)后序遍历 左右中 class Solution {public boolean isBalanced(TreeNode root) {return getHeight(root) ! -1;}//递归三部曲 确定方法的参数与返回值private int getHeight(TreeNode root){//明确终止条件if(root null){r…...

书生浦语第一次课

模型的发展 从专业模型到通用模型 书生浦语大模型全链路开源体系 2023.06.07 -> InternLM千亿参数语言大模型发布 2023.07.06 -> InternLM千亿参数语言大模型全面升级,支持8K语境、26种语言。全面开源、免费商用:InternLM-7B、全链条开源工具…...

UE小:UE5.3无法创建C++工程

当您在使用Unreal Engine (UE) 构建项目时,如果遇到以下问题: Running C:/Program Files/Epic Games/UE\_5.3/Engine/Build/BatchFiles/Build.bat -projectfiles -project"C:/UEProject/Shp\_1/Shp\_1.uproject" -game -rocket -progress Usi…...

FFmpeg获取视频详情

话不多说&#xff0c;直接上代码&#xff1a; pom依赖&#xff1a; <!--视频多媒体工具包 包含 FFmpeg、OpenCV--><dependency><groupId>org.bytedeco</groupId><artifactId>javacv-platform</artifactId><version>1.5.3</versi…...

find: paths must precede expression

find: paths must precede expression 1. find: paths must precede expression2. 请在搜索字符串上添加单引号或者双引号References 1. find: paths must precede expression strongforeverstrong:~/ForeverStrong$ find /home/strong/ForeverStrong/image_results/ -name *.…...

RabbitMQ3.x之九_Docker中安装RabbitMQ

RabbitMQ3.x之_Docker中安装RabbitMQ 文章目录 RabbitMQ3.x之_Docker中安装RabbitMQ1. 官网2. 安装1 .拉取镜像2. 运行容器 3. 访问 1. 官网 rabbitmq - Official Image | Docker Hub 2. 安装 1 .拉取镜像 docker pull rabbitmq:3.13.0-management2. 运行容器 # latest Rabb…...

vue快速入门(四)v-html

注释很详细&#xff0c;直接上代码 上一篇 新增内容 使用v-html将文本以html的方式显示 源码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, …...

第19次修改了可删除可持久保存的前端html备忘录:换了一个特别的倒计时时钟

第19次修改了可删除可持久保存的前端html备忘录:换了一个特别的倒计时时钟 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><met…...

C++ 2024-4-1 作业

#include <iostream> using namespace std;class A { public:int a;A(int a):a(a){cout<<"A的有参构造"<<endl;} }; class B:virtual public A { public:int b;B(int a,int b):A(a),b(b){cout<<"B的有参构造"<<endl;} }; cl…...

【滑动窗口】Leetcode 串联所有单词的子串

题目解析 30. 串联所有单词的子串 本题的意思就是在目标串s中寻找能够找到的words字符串的全排列&#xff0c;返回起始位置 算法讲解 我们可以将这道题转化为寻找目标串的words字母的异位词&#xff0c;按照上一次讲解的【滑动窗口】Leetcode 找到字符串中所有字母异位词我们…...

golang channel实践代码及注意事项

在使用Go语言&#xff08;Golang&#xff09;的通道&#xff08;Channel&#xff09;时&#xff0c;有几个重要的注意点可以帮助开发者更安全、高效地使用它们进行并发编程。以下是一些关键的注意事项&#xff1a; 选择正确的通道类型&#xff1a;Go语言提供了两种类型的通道&…...

面试题:RabbitMQ 消息队列中间件

1. 确保消息不丢失 生产者确认机制 确保生产者的消息能到达队列&#xff0c;如果报错可以先记录到日志中&#xff0c;再去修复数据持久化功能 确保消息未消费前在队列中不会丢失&#xff0c;其中的交换机、队列、和消息都要做持久化消费者确认机制 由spring确认消息处理成功后…...

wpf中引用自定义字体

在WPF&#xff08;Windows Presentation Foundation&#xff09;中&#xff0c;FontFamily属性用于指定控件或文本元素使用的字体。它是一个非常基础且重要的属性&#xff0c;影响着用户界面的视觉呈现和可读性。以下是关于WPF中FontFamily属性的一些关键信息和使用方法&#x…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手&#xff1a;借助大模型技术&#xff0c;开发能根据用户输入的主题、风格等要求&#xff0c;生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用&#xff0c;帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

今日科技热点速览

&#x1f525; 今日科技热点速览 &#x1f3ae; 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售&#xff0c;主打更强图形性能与沉浸式体验&#xff0c;支持多模态交互&#xff0c;受到全球玩家热捧 。 &#x1f916; 人工智能持续突破 DeepSeek-R1&…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

GC1808:高性能音频ADC的卓越之选

在音频处理领域&#xff0c;高质量的音频模数转换器&#xff08;ADC&#xff09;是实现精准音频数字化的关键。GC1808&#xff0c;一款96kHz、24bit立体声音频ADC&#xff0c;以其卓越的性能和高性价比脱颖而出&#xff0c;成为众多音频设备制造商的理想选择。 GC1808集成了64倍…...

旋量理论:刚体运动的几何描述与机器人应用

旋量理论为描述刚体在三维空间中的运动提供了强大而优雅的数学框架。与传统的欧拉角或方向余弦矩阵相比&#xff0c;旋量理论通过螺旋运动的概念统一了旋转和平移&#xff0c;在机器人学、计算机图形学和多体动力学领域具有显著优势。这种描述不仅几何直观&#xff0c;而且计算…...

OCC笔记:TDF_Label中有多个相同类型属性

注&#xff1a;OCCT版本&#xff1a;7.9.1 TDF_Label中有多个相同类型的属性的方案 OCAF imposes the restriction that only one attribute type may be allocated to one label. It is necessary to take into account the design of the application data tree. For exampl…...