ImageNet 2.0?自动驾驶数据集迎来自动标注新时代
引言: 3DGS因其渲染速度快和高质量的新视角合成而备受关注。一些研究人员尝试将3DGS应用于驾驶场景的重建。然而,这些方法通常依赖于多种数据类型,如深度图、3D框和移动物体的轨迹。此外,合成图像缺乏标注也限制了其在下游任务中的直接应用。这些挑战促使研究者们寻求更简便高效的解决方案。
©️【深蓝AI】编译
论⽂题目:EGSRAL:An Enhanced 3D Gaussian Splatting based Renderer with Automated Labeling for Large-Scale Driving Scene
论文作者:Yixiong Huo, Guangfeng Jiang, Hongyang Wei, Ji Liu, Song Zhang, Han Liu, Xingliang Huang, Mingjie Lu, Jinzhang Peng, Dong Li, Lu Tian, Emad Barsoum
论文地址:https://arxiv.org/abs/2412.15550
为了解决上述问题,作者提出了EGSRAL,这是一种基于3DGS的方法,完全依赖训练图像而无需额外的标注。EGSRAL增强了3DGS在建模动态物体和静态背景方面的能力,并引入了一种新颖的适配器用于自动标注,能够根据现有的标注生成相应的注释。此外,研究人员还提出了一种分组策略,用于解决在渲染大规模复杂场景时的透视问题。这些创新使得EGSRAL在无需额外标注的情况下,能够高效地处理复杂的驾驶场景,并生成大量带标注的图像数据。
实验结果表明,EGSRAL在多个数据集上实现了最先进的性能。结合3DGS强大的多视角合成能力,该方法有望成为自动驾驶领域的ImageNet2.0,为该领域贡献出极大地图像数据集。
1、引入
合成逼真的新视角在计算机视觉和图形学领域中是一个复杂而关键的挑战。随着神经辐射场(NeRFs)的快速发展,自由视角合成逐渐转向大规模视角合成领域,特别是在合成对自动驾驶至关重要的街景方面。然而,由于地理位置的复杂性、多样的环境和变化的道路条件,模拟户外环境具有很大挑战。图像到图像的转换方法被提出用于通过学习源图像与目标图像之间的映射来合成语义标注的街景。虽然这些方法能够生成视觉上令人印象深刻的街景图像,但在局部细节中往往会出现明显的伪影和纹理不一致的问题。此外,合成图像的视角相对统一,这在复杂的自动驾驶场景中应用时也带来了挑战。
为了解决这些挑战,Drive-3DAu引入了一种使用NeRF的3D数据增强方法,旨在在3D空间中增强驾驶场景。DGNR提出了一个新颖的框架,通过从场景中学习密度空间来指导点基渲染器的构建。同时,READ提供了一个大规模的驾驶模拟环境,用于生成用于先进驾驶辅助系统的逼真数据。基于3DGS的方法由于其优越的生成能力,已被用于合成驾驶场景。尽管这些方法生成了适用于自动驾驶的逼真图像,但它们无法同时合成新视角并提供相应的2D/3D标注框,而这些标注框对于监督模型训练至关重要。因此,提升大规模场景的新视角合成能力并实现新视角的自动标注仍然是自动驾驶领域的关键挑战。
为了克服这些挑战,作者提出了一种名为EGSRAL的新框架,基于增强的3DGS技术。该框架在提高新视角合成质量的同时,能够生成相应的标注。具体而言,团队提出了一个形变增强模块,用于细化高斯形变场,增强对动态物体和静态背景的建模能力。此外,他们还引入了一个不透明度增强模块,利用神经网络取代原有的可学习参数,显著提升了复杂驾驶场景的建模能力。进一步地,为了解决在渲染大规模复杂场景时视角不合理的问题,即不应包含被遮挡的远处高斯点,研究人员还为原始3DGS提出了一种分组策略。
总的来说,研究工作的贡献如下: (1) 提出了一个名为EGSRAL的增强型3DGS渲染器,能够基于现有数据集的标注合成带有相应标注的新视角图像。EGSRAL引入了形变增强模块和不透明度增强模块,提升了3DGS在复杂场景中的建模能力。 (2) 此外,为了解决在渲染大规模复杂场景时视角不合理的问题,提出了原始3DGS的分组策略。 (3) 与之前仅关注新视角合成的方法不同,作者还提出了一种带有三个约束的适配器,能够将相邻的标注框转换为自动驾驶领域中新视角的标注框。 (4) 实验结果表明,该方法在大规模场景的渲染性能上优于现有方法。此外,带有相应标注的新视角图像显著提升了2D/3D检测模型的性能。这一成果不仅展示了3DGS在实际应用中的潜力,也为未来自动驾驶和计算机视觉领域的研究提供了新的思路和方法。
▲图1|全文方法总览©️【深蓝AI】编译
2、具体方法与实现
基于结构光测量(SfM)方法估计的驾驶场景输入图像序列和点云,EGSRAL框架能够从多个视角合成逼真的驾驶场景,同时自动标注相应的新合成视图。本文还提出了一种分组策略,以解决大规模驾驶场景中的透视问题。本文的框架分为两部分:增强型3DGS渲染和新视角自动标注,如图1所示为整体EGSRAL框架示意图,本文先对这个图进行一个整体的解读,由图可见,EGSRAL框架首先对输入图像进行对齐,随后使用由结构光测量(SfM)生成的点云来初始化3D高斯。一个可变形网络(橙色模块)构建3D高斯形变场,而形变增强模块(DEM)(黄色模块)对该形变场进行优化。不透明度增强模块(OEM)(蓝色模块)则负责优化不透明度。为了应对大规模复杂场景中的透视问题,采用了基于分组的训练和渲染策略(绿色模块)。此外,适配器通过三个约束条件(橙色)进行训练,以增强其坐标关系建模能力。在推理阶段,这些模块将渲染并合成带有相应标注的新视角图像。同时,本文通过创新模块对其进行了扩展,以改进新视角合成。对于自动标注,本文引入了一个适配器,用于转换相机姿态和边界框,生成新视角的相应注释。
2.1 增强型3DGS渲染
3DGS通常用于建模静态场景,其处理动态场景的能力有限。近期的研究集中于改进动态场景的建模。本文以可变形3DGS作为基线,并将其应用于自动驾驶场景的重建。这种方法为静态背景和动态物体使用统一的形变场。为了更好地表示每个高斯原语的状态,本文引入了状态属性d ∈ Rd×1,隐式指示原语是静态还是动态。本文通过结合形变增强模块进一步增强了形变场。该模块解码每个高斯原语的状态属性d和时间编码γ(t),以确定形变场的调整因子。认识到不透明度在渲染中的重要性,本文还引入了不透明度增强模块以提升建模能力。
可变形3DGS网络。为了减少数据依赖性,本文仅使用图像数据进行驾驶场景重建。首先,通过SfM初始化一组3D高斯G(x,r,s,σ)其中x、r、s和σ分别代表高斯原语的位置、四元数、缩放和不透明度。为了更好地建模动态3D高斯,可变形3DGS引入了一个形变场,该形变场以位置x和时间t为输入,分别预测x、r和s的偏移量δx、δr和δs。随后,这些形变后的3D高斯G(x+δx,r+δr,s+δs,σ)通过一个可微分的瓷砖光栅化器渲染出新图像:
其中,表示(u, v)像素的渲染颜色,Ti是由
定义的透射率,ci是每个高斯原语的颜色,αi通过评估带有协方差矩阵的2D高斯并乘以每个原语的学习不透明度计算得到。然而,可变形3DGS在有效建模动态物体和静态背景方面存在困难。本文认为这是由于3D高斯无法充分表示动态和静态元素。为了解决这一问题,本文为每个高斯原语引入了状态属性d,并将其作为输入传递给可变形网络。此增强提升了网络捕捉高斯原语状态的能力:
其中Fθ,代表可变形网络的参数,表示停止梯度操作,γ是位置编码。形变增强模块(DEM)。为了进一步增强动态物体的建模能力,本文提出了一个形变增强模块,根据高斯原语的时间t和状态属性d微调形变场。具体而言,本文使用状态属性d和时间编码γ(t)作为输入,输出每个高斯原语形变场的调整因子αp:
其中,表示动态编码网络的参数,是激活函数。此外,在驾驶场景中,本文使用不透明度调整因子ασ动态调整动态物体的不透明度,以更有效地建模其出现和消失: 其中,tanh(·)是激活函数。通过使用调整因子αp和ασ,本文将形变后的3D高斯属性从G1修改为G(x+δx,r+δr,s+δs),使形变场能够更详细地建模动态物体和静态背景。 不透明度增强模块(OEM)。如图像渲染公式所示,当前像素的渲染依赖于高斯原语的颜色和不透明度。为了增强不透明度预测的能力,本文通过将不透明度初始化为可训练参数σ′ ∈ R16×1,并引入一个轻量级网络加速不透明度优化: σ=Fη 其中,Fη是不透明度增强模块的参数。
▲图2|分组策略图示©️【深蓝AI】编译
分组策略(GPS)。之前基于3DGS的驾驶场景重建方法未考虑大规模场景。为了解决这一问题,本文提出了一种分组策略。如图2(a)所示,本文使用固定的图像间隔将场景划分为N组,并为每个高斯原语分配一个组识别id,这使本文能够基于这些组id执行后续的克隆、拆分和渲染。通过分组策略,本文解决了不合理视场的问题。如图2(c)所示,原始3DGS的渲染视场包括远处被遮挡的高斯原语(绿色矩形),这是不切实际的。通过分组(红色矩形),本文将视场限制在特定范围内,从而通过排除该范围外的高斯原语减少优化负担。与DrivingGaussian的静态增量训练模式不同,本文的方法避免了顺序分组训练和为每个组单独使用可变形网络,减少了模型数量并缩短了训练时间。然而,高斯原语的不同位置分布可能影响收敛性。为了解决这一问题,本文引入了多组联合优化策略。如图2(b)所示,每组独立执行前向传播以累积梯度。所有组完成前向传播后,本文执行梯度反向传播以优化网络参数,稳定可变形网络的训练。此外,为了解决3DGS在初始帧中的重建质量差的问题,本文提出了重叠训练策略。具体而言,对于每组,本文使用前一组的N张图像训练当前组,显著提高了重建质量。
2.2 新视角自动标注
适配器需求。本文的方法利用图像序列(数据集)构建场景点云,并使用SfM方法估计相机姿态和参数。生成的点云和相机姿态定义在SfM方法生成的新坐标系中。然而,图像序列的3D注释和相应的相机姿态定义在原始世界坐标系中。因此,存在两个不同的坐标系:原始世界坐标系(OWCS)和SfM方法估计的世界坐标系(EWCS)。本文的渲染器基于EWCS进行训练,因为它接受EWCS中的估计点和相机姿态作为输入。用于生成新视角图像的新相机姿态也基于EWCS,这使得在OWCS中利用数据集的3D注释变得复杂。需要一个变换适配器来建立这两个坐标系之间的关系,使本文能够有效地利用3D注释。该适配器将坐标从OWCS转换为EWCS。因此,来自OWCS的新视角相机姿态可以转换为EWCS并输入渲染器生成新视角图像。
本文的适配器。本文使用神经网络来建模两个坐标系中相机姿态的转换关系,该网络以OWCS中的相机姿态作为输入,预测EWCS中的相应相机姿态。本文将相机姿态表示为包含旋转和平移信息的3×4矩阵。因此,输入和输出的形状均为3×4。本文使用多层感知器(MLP)构建适配器,如图3所示,适配器的主干由8层MLP组成,输出头是一个简单的线性层,用于预测EWCS中的相机姿态。为了优化适配器,本文在训练过程中引入了三个约束条件。
适配器的约束条件。为了有效训练适配器,本文需要数据集中两个坐标系中的相机姿态。可以直接获取这些系统中相同帧的相机姿态对,每对包括OWCS和EWCS中的相机姿态。本文采用smoothL1损失,确保适配器的预测与EWCS中对应的SfM相机姿态紧密匹配,给定OWCS中的原始相机姿态。相机姿态约束的损失函数为:
其中,Lp是现有相机姿态约束的损失,PA是适配器在给定OWCS中相机姿态P时预测的姿态,PS是SfM在EWCS中生成的对应姿态。应用初始约束后,适配器可以在两个坐标系之间转换现有相机姿态。然而,由于相机姿态对的数量有限,适配器的泛化能力受限,导致在未包含在现有对中的新相机姿态下表现不佳。为了解决这一问题,本文引入了新的相机姿态约束。
新视角相机姿态约束旨在通过利用现有数据约束新相机姿态,增强适配器的泛化能力。基于同一物体在两个相机坐标系中的投影一致性规则,本文提出了一种为新相机姿态构建投影约束的方法。具体而言,针对数据集中的相机姿态P,作者使用随机位置变换(RPT)模块采样一个附近的新姿态Pnov。该新姿态在估计世界坐标系(EWCS)中对应一个相机姿态Pnov S,但这一对应关系是隐式的,无法直接获得。接下来,作者选取当前相机姿态之后的N个相机姿态对,并将它们投影到两个不同坐标系中的新相机姿态平面。对应的投影点需要在两个坐标系中的像素坐标保持一致。
如图3所示,首先通过坐标转换模块(CCM)利用坐标转换公式将原始世界坐标系(OWCS)中的点转换到相机坐标系中。然后,在新相机姿态的坐标系中,相对姿态Pn+i nnov被表示出来。接下来,这些点被投影到新相机姿态的平面上。图3还展示了点投影模块(PPM),该模块负责将相机坐标系中的点投影到像素坐标系中。
▲图3|坐标系转换图示©️【深蓝AI】编译
接下来,本文利用相机内参矩阵计算新相机姿态平面上的像素坐标。具体来说,首先通过相机内参矩阵和相机姿态的平移部分,将相对相机姿态的三维坐标转换为像素坐标系中的二维坐标。这样得到的像素坐标用于后续的投影约束。投影约束的目标是确保在估计的新相机姿态下,不同坐标系中的相机姿态投影结果一致。为了实现这一点,适配器需要通过训练,使得在新相机姿态下,相对姿态的像素坐标在不同坐标系中保持一致。
由于仅依赖像素坐标的约束只能限制坐标之间的比例关系,而无法确定具体的位置信息,适配器在这种情况下难以收敛到理想的结果。为了解决这一问题,本文将相机坐标系中的位置信息约束纳入整体损失函数中。考虑到真实相机内参与通过结构光测量方法估计的相机内参相似,本文假设在适配器训练的初始阶段,相机坐标系中的位置信息是一致的。随着训练的进行,可以逐步减少对相机坐标系位置约束的权重,从而优化适配器的性能。
整体损失函数综合了现有相机姿态约束、三维坐标系中的相机姿态约束以及投影像素坐标中的相机姿态约束。这些损失项分别通过不同的权重进行调节,以确保适配器在训练过程中能够有效地学习两个坐标系之间的转换关系。通过这种多重约束的方式,适配器不仅能够准确预测新相机姿态,还能够在不同视角下保持投影的一致性,从而提升自动标注的准确性和可靠性。
注释生成。在推理阶段,如图1所示,作者首先从数据集中获取原始相机姿态。该姿态经过随机位置变换(RPT)模块进行仿射随机变换,生成新的姿态。接着,新姿态被输入到适配器中,生成对应于估计世界坐标系的姿态。将新姿态输入渲染器后,可以生成相应的新视角图像。同样,对原始数据集的注释应用相同的仿射变换,得到对应的新标注,这与新视角渲染的图像相对应。最后,将新视角渲染与新标注生成结合,生成带有注释的新视角图像,实现了自动标注。
3.实验
作为一个数据集生成方法,本文的实验设置和大多数数据集生成方法类似,主要从生成质量,标注精度两个角度出发,对方法进行评估,值得Highlight的一点是作者做了大量的可视化实验,因此我们能够很清晰明了的观测到本方法的具体效果。
▲图4|数值实验©️【深蓝AI】编译
图4所示为数值对比实验,需要关注的点有两个地方,第一个是算法的PSNR,这代表图像渲染质量,直接决定了数据集的好坏,显然本文的算法在多个数据集上与当前的SOTA方法相比都取得了领先。
▲图5|标注生成可视化实验©️【深蓝AI】编译
▲图6|标注生成数值实验©️【深蓝AI】编译
图5为可视化的标注生成实验效果,包含了室外的多个不同场景,从标注的可视化结果来看能够直观清晰的体会到本文方法自动标注生成的出色效果,标注的Bonding Box仅仅的贴住了物体的边缘。图6所示的标注生成数值结果取得的优秀成绩也佐证了这一点。
总结
在本文中,作者提出了 EGSRAL,这是一种新颖的基于3DGS的渲染器,它配备了一个自动标注框架,能够合成带有相应标注的新视角图像。对于新视角渲染,我们引入了两个有效的模块来提升 3DGS对复杂场景进行建模的能力,并提出了一种分组策略以解决大规模场景视角不合理的问题。对于新视角自动标注,作者提出了一种适配器来为新视角生成新的标注。实验结果表明,EGSRAL 在新视角合成方面显著优于现有方法,并且在带标注图像上实现了卓越的目标检测性能。
相关文章:

ImageNet 2.0?自动驾驶数据集迎来自动标注新时代
引言: 3DGS因其渲染速度快和高质量的新视角合成而备受关注。一些研究人员尝试将3DGS应用于驾驶场景的重建。然而,这些方法通常依赖于多种数据类型,如深度图、3D框和移动物体的轨迹。此外,合成图像缺乏标注也限制了其在下游任务中的…...
智能工厂的设计软件 应用场景的一个例子:为AI聊天工具添加一个知识系统 之11 方案再探之2 项目文件(修改稿1)
(以下内容是第二次重建项目(“方案再探”)时的项目附件。) 为AI聊天工具添加一个知识系统 Part1 人性化&去中心化 前情提要 这一次我们暂时抛开前面对“智能工厂的软件设计”的考虑--其软件智能 产品就是 应用程序。直接将这些思维方式和方法论 运…...
详解MySQL SQL删除(超详,7K,含实例与分析)
文章目录 前言1. 删除表中的所有记录基本语法使用场景注意事项运用实例分析说明2. 删除特定记录基本语法使用场景注意事项运用实例分析说明3. 删除单条记录基本语法使用场景注意事项运用实例分析说明4. 删除违反引用完整性的记录基本语法使用场景注意事项运用实例分析说明5. 删…...

uniapp:跳转第三方地图
1.跳转第三方高德地图 //跳转地图 toMap(item){uni.navigateTo({url: (window.location.href https://uri.amap.com/navigation?to${item.lng},${item.lat},${item.shopName}&modecar&policy1&srchttps://gawl.gazhcs.com/wap/index.html&callnative0)}) },…...

深入浅出梯度下降算法:快速抵达函数最小值的方法
引言 梯度是机器学习和优化领域中不可或缺的概念,它为我们提供了理解和调整多维空间中函数行为的工具。本文将详细介绍梯度的定义、性质,并通过具体的一元和多元函数案例展示如何使用梯度下降算法找到最佳参数。 一、梯度的基础知识 1.1 定义与计算 梯…...

RWKV 语言模型
RWKV Language Model是一种独特的循环神经网络(RNN)架构的语言模型,具有诸多优势和特点,在自然语言处理领域展现出了良好的性能和应用潜力,以下是具体介绍: 核心原理 融合RNN与Transformer优点:…...

pycharm如何拉取一个git项目,然后,修改后再上传到自建的项目中?
以chattts为例 https://github.com/2noise/ChatTTS.git 1.建一个虚拟环境,用于项目使用 2.pycharm新建工程 3.忽略 提示 勾选,新建远程仓库 设置账号和密码 设置git路径,一般是正确的,点测试即可 &…...
Java 性能调优实战
性能调优是每个程序员在开发过程中都无法避免的课题,尤其在面对大规模、高并发的系统时,性能优化更是必不可少。本文将根据《Java 性能调优实战》课程的七个模块,深入探讨其中的核心内容,结合实际代码示例,帮助大家更好…...

ctfshow 每日练习 web 区 php特性 1-10
前置知识 这个php特性可以很好的练习我们的白盒简单代码的审计能力 web89 preg_match 正则匹配函数 (绕过 : 换行符绕过 (也可以利用他的数组返回数字进行绕过一下禁止字符的情况)) include("flag.php&q…...
《C++设计模式》单例模式
文章目录 1、简介2、单例模式的种类2.1 饿汉式单例模式:2.2 懒汉式单例模式: 3、单例模式的具体介绍3.1、饿汉式3.1.1、代码示例3.1.2、组成部分3.1.3、优缺点3.1.4、应用场景 3.2、懒汉式3.2.1、代码示例3.2.2、组成部分3.2.3、优缺点3.2.4、应用场景 4…...

mapbox进阶,添加路径规划控件
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️MapboxDirections 控件二、🍀添加路径规划控件1. ☘️实现思路2. ☘️…...

【论文阅读笔记】SCI算法与代码 | 低照度图像增强 | 2022.4.21
目录 一 SCI 1 SCI网络结构 核心代码(model.py) 2 SCI损失函数 核心代码(loss.py) 3 实验 二 SCI效果 1 下载代码 2 运行 一 SCI 💜论文题目:Toward Fast, Flexible, and Robust Low-Light Image …...

RAG实战:本地部署ragflow+ollama(linux)
1.部署ragflow 1.1安装配置docker 因为ragflow需要诸如elasticsearch、mysql、redis等一系列三方依赖,所以用docker是最简便的方法。 docker安装可参考Linux安装Docker完整教程,安装后修改docker配置如下: vim /etc/docker/daemon.json {…...
前路漫漫,曙光在望 !
起始 从20年大一开始写作至今,转眼五年时光已经过去了,最开始在CSDN这个平台写博客也只是因为一次机缘巧合情况下得知写博客可以获取奖赏,所以那个时期开始疯狂在CSDN发文记录自己编程学习过程,但是至今也未从写作中获利一分哈…...

特征工程-特征预处理
1.7 特征工程-特征预处理 学习目标 目标 了解什么是特征预处理知道归一化和标准化的原理及区别 1 什么是特征预处理 1.1 特征预处理定义 scikit-learn的解释 provides several common utility functions and transformer classes to change raw feature vectors into a represe…...

代码随想录算法训练营day22
代码随想录算法训练营 —day22 文章目录 代码随想录算法训练营前言回溯算法理论基础回溯法解决的问题回溯法模板 一、77. 组合二、216. 组合总和 III三、17. 电话号码的字母组合总结 前言 今天是算法营的第22天,希望自己能够坚持下来! 今日任务&#x…...

2024秋语法分析作业-B(满分25分)
特别注意:第17条产生式改为 17) Stmt → while ( Cond ) Stmt 【问题描述】 本次作业只测试一个含简单变量声明、赋值语句、输出语句、if语句和while语句的文法: 0) CompUnit → Block 1) Block → { BlockItemList } 2) BlockItemList → BlockItem…...
Python爬虫入门(1)
在互联网时代,数据成为了最宝贵的资源之一。Python作为一种功能强大的编程语言,因其简洁的语法和丰富的库支持,成为了编写网络爬虫的首选。本文将带你入门Python爬虫技术,让你能够从互联网上自动获取数据。 什么是爬虫࿱…...

鸿蒙1.2:第一个应用
1、create Project,选择Empty Activity 2、配置项目 project name 为项目名称,建议使用驼峰型命名 Bundle name 为项目包名 Save location 为保存位置 Module name 为模块名称,即运行时需要选择的模块名称,见下图 查看模块名称&…...
2024年常用工具
作为本年度高频使用工具,手机端也好,桌面端也好,筛选出来9款产品,这里也分享给关注我的小伙伴 ,希望对你有些帮助,如果你更好的产品推荐,欢迎留言给我。 即刻 产品经理的聚集地,“让…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...

python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...

现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...