【论文阅读】——Articulate AnyMesh: Open-Vocabulary 3D Articulated Objects Modeling
文章目录
- 摘要
- 一、介绍
- 二、相关工作
- 2.1. 铰接对象建模
- 2.2. 部件感知3D生成
- 三、方法
- 3.1. 概述
- 3.2. 通过VLM助手进行可移动部件分割
- 3.3. 通过几何感知视觉提示的发音估计
- 3.4. 通过随机关节状态进行细化
- 四、实验
- 4.1. 定量实验
- 发音估计
- 设置:
- 4.2. 应用程序
- 五、结论
- 六、思考
摘要
3D铰接对象建模长期以来一直是一个具有挑战性的问题,因为它需要捕获精确的表面几何形状以及语义上有意义和空间上精确的结构、零件和关节。现有方法严重依赖于一组有限的手工制作的铰接对象类别(例如,橱柜和抽屉)的训练数据,这限制了它们在开放词汇上下文中对大范围铰接对象建模的能力。为了解决这些限制,我们提出了articable ANYMESH,这是一个自动化框架,能够以开放词汇的方式将任何刚性3D网格转换为其铰接的对应对象。给定一个3D网格,我们的框架利用先进的视觉语言模型和视觉提示技术来提取语义信息,允许对象部分的分割和功能关节的构建。我们的实验表明,articable ANYMESH可以生成大规模、高质量的3D铰接对象,包括工具、玩具、机械设备和车辆,显著扩大了现有3D铰接对象数据集的覆盖范围。此外,我们表明,这些生成的资产可以促进在模拟中获得新的铰接对象操作技能,然后可以将其转移到真实的机器人系统中。我们的Github网站是https://articulateanymesh.Github.io/。
一、介绍
大规模的数据收集是嵌入式AI和机器人技术的一个新兴研究趋势。为机器人和嵌入式AI构建的大型基础模型非常需要数据,这加剧了对大规模数据收集的需求。与在现实世界中收集数据相比,在模拟中收集数据明显更快、更方便,更容易捕获各种类型的地面真实信息,如物理状态、分段掩模、深度图等。现有的工作已经探索了
如何在模拟中进行大规模数据收集的许多不同方面,包括资产生成、场景生成、任务设计、演示收集、奖励设计等。尽管做出了这些努力,但一个关键的挑战仍然存在:收集日常生活中必不可少的多样化和现实的铰接对象,这对于产生可推广到现实世界应用的多样化数据至关重要。实现这一目标的一种直观方法是使用生成模型。虽然在3D资产生成方面已经取得了实质性进展,但很少有可用的方法能够满足对铰接对象集合的需求。大多数3D生成方法,利用训练网络的前向传递,或SDS损耗优化,只产生物体的表面。这些物体只能作为一个整体来操作。例如,通过这些3D生成方法制作的衣柜不能打开,也不能用来存放衣服。部件感知3D生成方法生成3D物体及其部件特定细节。尽管这些方法对结构更敏感,但由于缺乏运动参数,生成的对象仍然局限于整个对象的操作。铰接对象创建方法能够生产具有多个交互部分的铰接对象,展示功能。然而,这种方法需要在多个关节状态下对待重构关节物体进行密集观察,或者仅限于用于训练其网络的有限规模数据和对象类别。因此,目前的方法很难自动生成各种各样的铰接对象,特别是那些来自现有数据集中未被代表或缺失类别的对象。
图1。articable ANYMESH将3D网格转换为铰接对象。我们的管道能够处理各种各样的物体,包括日用品、家具、车辆,甚至是虚构的物体。
因此,与非铰接3D资产相比,不同铰接对象的收集提出了额外的挑战:(1)精确的语义结构必须伴随着几何和外观,(2)关节方向和位置等关节参数是必需的,(3)与3D对象数据集相比,相对小规模的铰接对象数据集不足以支持可泛化模型的训练。为了克服这些挑战,我们引入了articable ANYMESH,这是一种自动管道,可以将任何3D网格转换为相应的铰接资产。为了超越现有的铰接对象数据集,我们的管道利用了视觉和语言基础模型的先验知识和可推广的几何线索,而不是依赖于现有的标记铰接对象数据。我们的管道从生成或手工制作的3D网格开始,然后是可移动部件分割,关节估计和细化阶段。
在可移动部件分割中,目标是识别所有可移动部件并确定其语义,用于后续的关节估计。最近的开放词汇3D零件分割方法利用开放词汇分割模型(即SAM)和多模态基础模型对渲染的二维图像进行分割,整合二维信息实现三维零件分割。在这项工作中,我们采用了PartSlip++提出的管道进行三维零件分割。
在获得非固定零件的三维分割及其语义之后,我们提出的流水线的下一阶段重点是关节估计。与之前的方法不同,它们依赖于训练数据集来预测铰接参数。为了克服现有数据集的局限性并扩展到开放词汇表方式,我们提取了铰接对象中固有的几何线索,而不是依赖于学习模型。具体来说,连接两个分段部分的关节与连接区域的几何形状内在相关。例如,在连接遵循一条直线的情况下,例如笔记本电脑的铰链或打开的门,这条线有效地代表了关节,因为铰链结构与它对齐。我们通过视觉提示为gpt - 4o提供此类信息,使其能够利用常识性知识几何推理来推断关节参数。这种方法允许对未见过的物体进行泛化,并进行精确的分割,随着视觉语言模型变得更加先进,性能将继续提高。
在这个阶段,已经创建了一个功能性的铰接对象。但是,如果输入网格是仅包含表面几何和纹理的生成或扫描表面网格,则分割的3D部件经常会出现遮挡,并且可能在其他部件上留下孔洞。例如,在封闭状态下,只会对抽屉的外表面进行分割,其内部结构根本不存在。
为了解决这些问题并完成我们提出的管道,我们加入了最后一个阶段:细化。在这个阶段,我们利用二维扩散模型,以关闭井眼,增强几何形状,并改善纹理质量。这样的模型是在数百万张图像上训练的,建立了关于3D物体的坚实先验。这种3D先验可以使用SDS损失有效地提取出来。尽管该优化过程不考虑三维零件分割,导致零件相互生长,但我们通过一种简单而有效的优化策略解决了这一问题,该策略在SDS损耗优化阶段根据可移动零件的连接参数进行随机变换。
我们进行了实验,比较了不同基线下的关节参数预估精度和无条件生成能力。实验结果表明,虽然我们的方法与PartNet-Mobility数据集中训练的选定类别的最先进的铰接对象建模方法相匹配,但它也显示出对这些类别之外更广泛的铰接对象进行建模的能力。我们将我们的贡献总结如下:
•我们引入articable ANYMESH,这是一个能够以开放词汇的方式创建多样化,逼真和复杂的铰接对象的管道。
•我们提出了一种新颖的衔接参数估计方法,该方法利用几何线索和定制的视觉提示方法以开放词汇表的方式估计关节参数。
•我们提出了一种新的优化策略,该策略可以在细化铰接对象之前使用扩散,同时保持部件的语义不被改变或丢失。
二、相关工作
2.1. 铰接对象建模
其中一行工作集中在感知端,包括从观测中重建铰接对象,联合参数估计网络从输入多帧点云重建铰接对象。其他一些作品从主动交互中学习联合参数。从被铰接物体不同状态下获得的多视图图像中重建铰接物体的几何形状和关节参数。通过在大规模合成数据上训练的网络,从单一真实世界的RGB图像中重建铰接物体。在给定关节对象的poincloud或图像的情况下估计关节参数和部分段。然而,这些方法要么需要对同一物体进行广泛的观察,要么依赖于现有的铰接物体数据来训练神经网络,在很小的类别范围内进行泛化的能力有限。
除了感知作品,生成作品包括,将铰接对象表示为图形,并采用扩散模型来拟合分布。零件的形状、位置和语义信息编码在顶点中,而关节参数存储在边缘中。与感知方法类似,这些生成方法也依赖于现有的铰接对象数据集来训练它们的扩散模型,无法泛化到训练数据之外。此外,最近有一项关于铰接对象建模的调查。总的来说,现有的方法都不能以开放词汇表的方式自动创建铰接对象。
2.2. 部件感知3D生成
部件感知3D生成方法不是生成一个整体的3D对象,而是生成带有部件级信息的对象。学习两个独立的VAEs来建模全局结构信息和详细的零件几何形状。将3D对象编码为分解结构和几何形状的表示。利用图VAE将形状编码为分层图表示。应用Seq2Seq生成网络进行零件装配和生成。独立建模零件几何形状和整体零件变换,并以两者为条件,扩散模型综合最终形状。另一方面,用一个扩散模型生成局部几何势,并用这些势为条件的另一个扩散模型合成全局几何。提供的生成的多视图图像和相应的2D分割图中学习news模型,并使用聚类算法提取3D分割蒙版。
虽然这些方法可以产生具有合理结构和零件几何形状的形状,但它们经常依赖于具有零件级注释的对象数据集,并且无法泛化用于训练的数据集之外的数据集。此外,它们不为单个零件生成关节参数,导致生成的零件在仿真中单独不可操作,这限制了它们在机器人学习的下游任务中的适用性。
图2。articelanymesh通过三个主要部分将来自各种来源的3D网格转换为高质量的铰接对象:A.可移动部件分割,B.关节估计,C.细化
三、方法
3.1. 概述
我们的管道将任何网格转换为其铰接的对等体,包括具有部分几何形状的手工制作网格,通过文本到3d或图像到3d方法生成的表面网格以及从现实世界对象重建的网格。该过程包括三个主要步骤,包括可移动部件分割、关节估计和细化,如图2所示。具体而言,可移动部件分割步骤采用PartSlip++提出的方法从输入网格中分割可移动部件。关节估计利用视觉和语言基础模型中的几何线索和先验知识提取每个可移动部件的关节参数。在细化阶段,通过几何感知的2D扩散模型Rich-dreamer增强铰接对象的几何和纹理,并在SDS损失的指导下提取扩散模型的3D先验。在此阶段,可移动部件进行随机变换以提高优化性能。
3.2. 通过VLM助手进行可移动部件分割
如图2A所示,此步骤旨在从3D网格中分割所有可移动部件,并以开放词汇表的方式识别其语义。我们主要使用PartSlip++ 作为我们的分割方法。在Part-Slip++中,首先将输入网格的图像馈送到VLM中以识别所有可移动部件。接下来,将开放词汇表接地模型和SAM应用于输入网格的2D渲染图像,以提取相关部件语义标签的边界框和分割掩码。然后将这些多视图2D检测和分割结果融合以产生3D零件分割。
3.3. 通过几何感知视觉提示的发音估计
实现胶接估计的开放词汇范围需要超越发音对象的有限尺度数据集。为了解决这个问题,我们提出了一种几何感知视觉提示方法,该方法通过利用几何、机械结构和功能方面的共享特征,概括了各种铰接对象。具体来说,我们观察到连接两个部件的关节与部件非常接近的区域的几何形状密切相关,我们将其称为连接区域。
**将两个相邻部分a和b的点云分别表示为Pa和Pb。为了定义连接区域,我们选择Pa中与Pb中最近点的距离低于预定义阈值的点,反之亦然对于Pb中的点。从Pa和Pb中选择的点一起构成了零件之间的连接区域。如果没有点被选中,则阈值加倍,并重复该过程,直到确定连接区域。**我们主要关注两种占主导地位的关节类型:移动关节和旋转关节。这些都是使用适合其各自机械结构的不同方法进行估计的。
旋转关节通过物理铰链或其他类似铰链的机构(如纸板箱的盖子)连接铰接物体的两个部分。旋转关节的旋转轴与其铰链的长度对齐,这意味着在3D空间中识别铰链可以直接估计旋转轴。由于铰链在物理上连接两个部件,因此它通常位于部件连接的区域内。在这一观察结果的驱动下,我们提出了以下视觉提示流程。首先,我们将连接区域划分为多个集群,集群中心作为候选点。然后将这些候选点投影到输入网格的2D渲染图像上,并用数字标记
如图2B所示。该图像用于提示gpt-4o选择两个或多个定义铰链的点,从而建立旋转轴。选择渲染视点以最大化所考虑的部件的像素数。K-means以不同的聚类计数运行多次,并选择最终计数以最大化候选点的数量,同时避免在渲染图像上重叠标签。
在某些情况下,铰链可能没有定位在对象的表面上,导致在对象表面上只能识别旋转轴的一端,例如带有旋钮。在这些情况下,我们假设旋转轴垂直于贴合到连接区域的平面。然后,轴由该平面的法向量和单个选定点确定。当铰链机构隐藏在表面之下时,不能假定连接结构完全在连接区域内。因此,除了来自连接区域的候选点外,我们还从零件表面采样额外的点。具体来说,我们使用l0-cutpursuit 算法从零件的点云中生成超级点,使用点法线和颜色作为特征,并从这些超级点中导出候选日期点。这确保了新的候选点分布在零件的不同几何和纹理区域。
棱镜关节通过滑动机构连接铰接对象的两个部分,实现沿单轴的线性运动。如果输入网格包含物理上精确的内部几何,则对无碰撞滑动方向进行采样可能会产生精确的棱柱关节轴。然而,大多数网格,特别是表面网格,缺乏这种基于碰撞的方法所需的理想几何形状。此外,滑动机构通常隐藏在物体表面之下,与旋转关节的铰链结构相比,使其难以识别,并且使用于旋转关节的策略不适用于移动关节。
根据其功能,移动关节可分为两种类型:
- 向内和向外滑动接头:这些接头允许子组件在其连接的对象中滑动进出,如抽屉和按钮等部件。虽然平移方向可能不同,但将部件拉出的运动主要是从对象向外移动。因此,滑动方向的特征是拟合到连接区域的平面的法向量。
- 表面滑动接头:这些接头使子组件能够沿着对象的表面滑动,就像在滑动窗口和烤面包机杠杆等部件中看到的那样。对于这样的关节,潜在的平移方向被限制在沿表面的二维范围内。这允许我们用箭头标注2D渲染图像,并提示GPT-4o选择最合适的方向。
给定一个铰接对象及其分割部分,我们提示GPT-4o将所有移动关节分为这两类。基于分类,然后对棱柱关节的平移方向进行相应的估计。
3.4. 通过随机关节状态进行细化
在完成3D分割和关节估计阶段后,我们得到了一个具有正确结构的铰接对象。然而,当输入网格是曲面网格时,结果往往仍然存在缺陷。从表面网格分割出来的物体部分——缺乏内部结构——不可避免地会受到遮挡,导致有孔的部分网格不完整。
为了解决这个问题,我们将一个细化步骤集成到我们的管道中。该步骤完成遮挡的几何形状,填充孔洞,并通过使用SDS损失将3D物体几何形状和纹理先验从几何感知的2D扩散模型提取到关节物体中来增强纹理质量。细化过程建立在richdream 的基础上,它依次应用法向深度扩散模型和反照率扩散模型,分别优化3D物体的几何和纹理。
然而,将现有的SDS优化方法直接应用于固定姿态的铰接物体上,往往会导致零件的生长和重叠,从而在物体零件运动时产生伪影。为了解决这一问题,我们提出了一种针对铰接对象的新颖优化技术:在优化过程中随机化铰接配置。在每个优化步骤中,除了随机采样摄像机位置和扩散时间步外,我们还对每个非固定部分的运动参数(例如,旋转角度和平移长度)进行采样,并应用这些变换。这种方法确保了大多数部分在某些姿势下暴露,而一个姿势中的重叠几何形状在其他姿势中作为伪像变得明显,从而允许逐步优化。由于零件在初始化时已经可以识别,因此扩散模型有效地保留了它们的语义,确保了零件的含义和身份在整个细化过程中保持不变。
实现细节请参考附录A。
四、实验
在可移动部件分割阶段,我们使用Partslip++进行分割,并用DINO-X重新放置接地模型,以获得更好的性能。此外,还提示gpt-4o提取输入网格的部分标签及其部分联结点图形,如关节类型,父链接等。在关节估计阶段,我们直观地提示gpt40其余的关节配置。在细化阶段,我们实现了用于铰接对象表示的多部分DMTet (Shen等人,2021)。物体的每个部分被分配一个独立的DMTet网络来描述其几何和纹理特征。我们利用Richdreamer 提出的法向深度扩散模型和反照率扩散模型进行几何和纹理先验。
基线据我们所知,这是第一个以开放词汇表的方式解决将网格转换为铰接对象的挑战的工作。因此,没有现有的基线直接处理与articalanymesh相同的输入和输出。相反,我们单独评估各个组件,并与相应的基线进行比较。我们流水线中的关节估计步骤将对象部件作为输入,并输出它们的关节配置。NAP (Lei et al., 2023)和CAGE 学习扩散模型生成铰接对象,也可以生成以对象部件为条件的关节配置,使其成为该步骤最接近的基线。此外,ANCSH、OPD 和OPDmulti 等方法可以直接估计关节参数。这些方法采用单个观测值(例如,RGB、深度或两者)作为输入,同时预测零件分割和关节参数,作为额外的基线。我们将这些方法与articalanymesh中的三维分割和关节估计相结合的步骤进行了比较。对于细化步骤,由于我们的方法是基于Richdreamer ,因此它可以作为该阶段的自然基线。
对于关节参数估计,我们使用角误差来评估关节方向精度,使用线之间的距离来评估关节位置精度。
对于细化步骤,由于没有理想的度量可以在没有参考集的情况下直接评估3D对象的视觉质量和结构正确性,因此我们转而渲染不同状态下铰接对象的2D图像,并使用测量图像标题相似性的度量来评估这些图像。潜在的假设是,结构准确且视觉上合理的铰接对象将产生更好地对应其类别的渲染图像,从而获得更高的图像-文本对应分数。具体来说,我们使用CLIPscore (Hessel et al., 2021)和VQAscore (Lin et al., 2024)作为该评估的指标。
4.1. 定量实验
发音估计
如基线部分所述,我们在两种情况下评估发音参数估计的性能
表1。在两组测试对象类别上评估目标部件网格连接估计的结果:域内(ID),由CAGE训练集中的类别组成;域外(OOD),由来自PartNet-Mobility的一些不属于CAGE训练集的类别组成。
设置:
•对象部分网格作为输入。对于使用物体部分网格的关节参数估计,我们将AR-TICULATE ANYMESH与两种生成扩散模型(NAP和CAGE)进行比较,这两种模型将关节物体表示为图。在这个实验中,我们提供了所有部件的ground-truth形状,任务是估算它们的铰接参数。NAP生成的联合参数(边)以真地顶点为条件,如零件边界框、空间位置和形状潜点。对于CAGE,为每个节点提供边界框、关节类型和语义标签等属性,同时生成关节轴和范围。我们使用来自伙伴移动的铰接对象进行评估,遵循CAGE中使用的训练-测试分割,并在相同的分割上对NAP进行再训练。我们使用测试集中的对象和排除在训练之外的类别的泛化性能来评估域内性能。如表4.1所示,虽然articable ANYMESH在域内实现了与NAP和CAGE相当的性能,但在未见过的类别中,它的性能明显优于它们。
•单观测作为输入。我们还将articulate ANYMESH与三种方法(ancsh, OPD和opdmulti)进行了比较,以从单次观测中估计关节参数。ANCSH使用单视图点云作为输入,而OPD和OPD-multi采用RGB图像(可选的深度信息)作为输入。这些方法输出部分分割和关节参数。为了适应这种设置,我们修改了管道,使只有一个图像(输入观察)被分割。得到的分割结果被投影到带有标签的点云中,然后在衔接估计步骤中进行处理。表4.1所示的结果表明,尽管articable ANYMESH被设计为一种免费的、开放词汇表的训练方法,但它在各自的训练领域内的表现优于ANCSH、OPD和OPDmulti。
图3。细化步骤输出的铰接对象的可视化。(a) articable ANYMESH生成的各种铰接对象(输入网格由InstantMesh生成(Xu等人,2024));(b)对于相同的输入,由细化步骤创建的不同纹理,保留几何和铰接参数(用方框突出显示);© articable ANYMESH生成的虚拟对象
图4。articable ANYMESH适用于从Objaverse中检索的手工制作的网格
表2。单观测联合估计结果。用于训练和测试的数据集是单门数据集(OPDsynth的子集),用于训练PyTorch版本Github存储库中提供的ANCSH。
细化
对于细化步骤,我们使用章节metrics中描述的度量来评估精细铰接对象的视觉质量和结构正确性。我们在发音估计步骤的中间输出上测试了三种配置:(1)没有应用细化步骤,(2)没有随机变换的情况下应用细化步骤(与Richdreamer)和(3)应用随机变换的细化步骤。本实验中使用的表面网格是使用文本到3d模型InstantMesh 生成的,以伙伴移动中对应类别的文本提示为条件。表4.1所示的结果表明,通过结合随机变换的细化获得了最高分,突出了我们提出的细化步骤的有效性。
表3。细化步骤的评价。Re代表细化,RT是随机变换的缩写。
4.2. 应用程序
通过集成现有的3D生成模型来生成表面网格,作为articable ANYMESH的输入,我们的管道利用了3D生成模型的开放词汇3D生成能力,并继承了其生成范式。如图3所示,我们的扩展管道生成了各种类别的高质量铰接对象,从日常对象到专业工具。
图5.。我们使用我们的方法在模拟中构建了真实世界物体的数字双胞胎。然后我们在模拟中对完成任务的轨迹进行采样,并在现实世界中复制这些轨迹。
注释3D对象数据集Other than generated from Scratch,我们的工作也可以从现有的艺术家设计的网格开始。例如,我们在Objaverse对象上标注部分分割和关节结构。这样的对象通常具有高质量的网格和纹理,也具有内部结构。因此,我们只执行管道的3D分割部分和关节估计部分来注释这些对象。结果如图4所示。预告片(图1)中的对象也是用这种方式产生的。
在本实验中,我们首先使用2DGS重建现实世界物体的3D表面网格。然后应用articable ANYMESH将重建的网格转换为URDF格式表示的仿真对象,使其与仿真环境兼容。接下来,我们对动作目标进行采样,并使用运动规划(Sucan et al., 2012)来避免碰撞,生成轨迹以成功完成仿真中的任务。最后,我们在现实世界中复制轨迹,观察到机械臂可以有效地执行任务。
我们重点研究了涉及不同铰接物体的三个任务:推钻扳机、打开微波门和旋转方向盘,如图5所示。
我们的结果表明,生成的轨迹可以成功地转移到现实世界中,在零件分割和关节预测方面显示出极小的误差。
模拟中的策略学习我们遵循DexArt 进行铰接对象操作策略学习,并评估两个任务:打开笔记本电脑盖子和提起水桶。为了增强“桶”和“笔记本”实验的训练集,我们包括了由articable ANYMESH生成的相同类别的附加铰接对象。此外,我们通过合并一些生成的铰接对象来使测试集多样化。我们对专门在原始数据集上训练的检查点进行微调,并评估它们在增强测试集上的性能。结果如表4.2所示
表4。操作策略学习实验的成功率,将在原始训练集上微调的策略与在增强训练集上微调的策略进行比较。报告结果,用于在增强测试集上进行评估。
articable ANYMESH生成的数据有效地增强了机器人的学习能力。articable anymes生成的铰接对象来源于Objaverse。
五、结论
在本文中,我们介绍了articable ANYMESH,这是一个新的框架,用于将开放词汇3D网格转换为铰接网格的关键任务。我们的管道首先基于零件级语义对3D对象进行分段,估计对象零件之间的衔接结构,然后对几何和纹理进行细化,以修复缺陷并增强视觉质量。通过利用视觉语言模型和视觉提示技术的进步,我们有效地分割了零件,并使用常见的几何线索估计了关节结构。我们的流水线从生成的3D网格、手工制作的3D资产和重建的网格中创建高质量的纹理铰接对象。生成的资产可以支持仿真中铰接对象操作技能的学习,然后可以转移到现实世界的机器人中。
局限性和未来的工作尽管我们的方法创建了具有语义正确部件的铰接对象,但铰接参数并不总是准确或物理接地。这种限制源于三个关键挑战:(1)现有和生成的3D网格通常缺乏正确的物理结构,(2)当前的3D分割方法偶尔会产生不正确的结果,以及(3)gpt40展品
在某些情况下的偏见。此外,一些不常见的情况并没有被我们的方法所涵盖——例如,当一个抽屉被设计成可以正面拉开的时候。
如果未来的进步导致具有增强的3D推理能力的大型vlm的开发,我们的管道可以利用这些改进变得更加稳健和可靠。解决这些挑战以创建完全准确和物理接地的发音参数代表了未来研究的一个令人兴奋的方向。
六、思考
1、本文所提的算法解决了什么问题?算法的网络模型及主要Idea(自己画图来阐述)?
2、算法所采用关键技术(用自己的话来解释,不需要翻译论文)?
3、仿真的参数以及性能评价的标准,并学习文章作者的对数据的分析部分。
4、通过仔细的阅读说明该算法的优缺点,最好拟提出如何解决缺点?
5、对该问题的展望是什么,包括可以开展的工作等。
针对问题一:
- 提出一了一种小规模泛化的开放词汇集的铰接物体生成任务;主要的解决问题,就是提供了一种铰接物体的生成任务;主要流程就是分割-评估-在生成;主要idea,一个是提出这个想法并成功实现,第二个就是阻止了扩散模型的任意生成所提出对SDS的改进。
针对问题二:
就是采用分割模型,对图像进行分割,然后就是对扩散模型的应用。
针对问题三:
由于本篇文章在铰接领域无人做过相同的输入输出,作者采用的逐步分解的比较方法,每一步的产生结果都会与其他模型进行比较;在细化方面,引入了角误差的评价指标,以显示其精度
针对问题四:
其实在算法上并没有特别大的改进,但在分割时候会有分割的不准确,可以加入几何先验进行进一步的提升。
针对问题五:
针对这篇资产生成的论文,在各个领域都有应用,如果继续做下去,还有两个方向可以继续做,第一个就是对于分割精准度的优化,通过添加一些结构性物理先验的正则项,可能会进一步提高分割情况;第二个就是对几何结构上的优化,用生成扩散模型生成出来的资产可能会有几何上的缺陷,需要进一步的提高几何质量。
相关文章:
【论文阅读】——Articulate AnyMesh: Open-Vocabulary 3D Articulated Objects Modeling
文章目录 摘要一、介绍二、相关工作2.1. 铰接对象建模2.2. 部件感知3D生成 三、方法3.1. 概述3.2. 通过VLM助手进行可移动部件分割3.3. 通过几何感知视觉提示的发音估计3.4. 通过随机关节状态进行细化 四、实验4.1. 定量实验发音估计设置: 4.2. 应用程序 五、结论六、思考 摘要…...
Docker Compose 的详细使用总结、常用命令及配置示例
以下是 Docker Compose 的详细使用总结、常用命令及配置示例,帮助您快速掌握这一容器编排工具。 一、Docker Compose 核心概念 定位:用于定义和管理多容器 Docker 应用,通过 YAML 文件配置服务、网络、卷等资源。核心概念: 服务 …...
2025.05.08-得物春招研发岗-第三题
📌 点击直达笔试专栏 👉《大厂笔试突围》 💻 春秋招笔试突围在线OJ 👉 笔试突围OJ 03. 矩阵魔法变换 问题描述 A先生是一位著名的魔法师,他最近发明了一种特殊的矩阵魔法。这种魔法可以同时改变矩阵中特定区域内所有元素的值。 A先生有一个 n m n \times m...
【Spring AI 实战】基于 Docker Model Runner 构建本地化 AI 聊天服务:从配置到函数调用全解析
【Spring AI 实战】基于 Docker Model Runner 构建本地化 AI 聊天服务:从配置到函数调用全解析 前沿:本地化 AI 推理的新范式 随着大语言模型(LLM)应用的普及,本地化部署与灵活扩展成为企业级 AI 开发的核心需求。Do…...
【数据机构】2. 线性表之“顺序表”
- 第 96 篇 - Date: 2025 - 05 - 09 Author: 郑龙浩/仟墨 【数据结构 2】 文章目录 数据结构 - 2 -线性表之“顺序表”1 基本概念2 顺序表(一般为数组)① 基本介绍② 分类 (静态与动态)③ 动态顺序表的实现**test.c文件:****SeqList.h文件:****SeqList.c文件:** 数据结构 - 2 …...
Django ORM: values() 和 annotate() 方法详解
1. values()方法 1.1 基本概念 values()方法用于返回一个包含字典的QuerySet,而不是模型实例。每个字典表示一个对象,键对应于模型字段名称。 1.2 基本用法 # 获取所有书籍的标题和出版日期 from myapp.models import Bookbooks Book.objects.value…...
数据结构篇-二叉树
抽象定义CFG文法具体表示基本操作性质 抽象定义 二叉树是一个抽象的数学概念。它的定义是递归的 一棵二叉树可以是一个外部节点,一棵二叉树可以是内部节点,连接到一对二叉树,分别是它的左子树,和右子树。 这个抽象定义描述了二…...
前端面试每日三题 - Day 29
这是我为准备前端/全栈开发工程师面试整理的第29天每日三题练习: ✅ 题目1:Web Components技术全景解析 核心三要素 Custom Elements(自定义元素) class MyButton extends HTMLElement {constructor() {super();this.attachShado…...
Java设计模式之抽象工厂模式:从入门到精通
一、抽象工厂模式概述 抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 1.1 专业定义 抽象工厂模式定义了一个工厂接口,用于创建一系列相关或依赖的对象,客户端通过调用抽象工…...
Rust中记录日志:fast_log
在Rust程序中记录日志,可以使用fast_log。 根据fast_log 的介绍,这是一个性能非常高的日志实现,还支持文件追加模式、压缩、切分与回滚等操作。 而且,这个库记录日志是异步的,即不会因为日志而影响程序的运行。只有当…...
构筑芯片行业的“安全硅甲”
在半导体行业,数据就是生命线。一份芯片设计图纸的泄露,可能让企业数亿研发投入付诸东流;一段核心代码的外传,甚至可能影响国家产业安全。然而,现实情况却是——许多芯片企业的数据防护,仍处于“裸奔”状态…...
C++ Dll创建与调用 查看dll函数 MFC 单对话框应用程序(EXE 工程)改为 DLL 工程
C Dll创建 一、添加 DllMain(必要) #include <fstream>void Log(const char* msg) {std::ofstream f("C:\\temp\\dll_log.txt", std::ios::app);f << msg << std::endl; }BOOL APIENTRY DllMain(HMODULE hModule, DWORD u…...
使用智能表格做FMEDA
一、优点 使用智能表格替代excel做FMEDA具备以下优势: 减少维护成本(数据库关联,修改方便)便于持续优化(失效率分布,失效率模型可重复使用)多人同步编写(同时操作,同步…...
电动汽车充换电设施可调能力聚合评估与预测 - 使用说明文档
电动汽车充换电设施可调能力聚合评估与预测 - 使用说明文档 概述 本脚本real_data_model.m基于论文《大规模电动汽车充换电设施可调能力聚合评估与预测》(鲍志远,胡泽春)实现了电动汽车充电设施的负荷预测和可调能力评估。使用混合模型(LSTM神经网络线…...
Tomcat 日志体系深度解析:从访问日志配置到错误日志分析的全链路指南
一、Tomcat 核心日志文件架构与核心功能 1. 三大基础日志文件对比(权威定义) 日志文件数据来源核心功能典型场景catalina.out标准输出 / 错误重定向包含 Tomcat 引擎日志与应用控制台输出(System.out/System.err)排查 Tomcat 启…...
MSF 生成不同的木马 msfvenom 框架命令
目录 什么是 msfvenom? 一、针对 Windows 的木马生成命令 1. EXE 格式(经典可执行文件) 2. VBS 脚本(Visual Basic Script) 3. PowerShell 脚本 4. DLL 文件(动态链接库) 5. Python 脚本…...
Linux云计算训练营笔记day05(Rocky Linux中的命令:管道操作 |、wc、find、vim)
管道操作 | 作用: 将前面命令的输出,传递给后面命令,作为后面命令的参数 head -3 /etc/passwd | tail -1 取第三行 head -8 /etc/passwd | tail -3 | cat -n 取6 7 8行 ifconfig | head -2 | tail -1 只查看IP地址 ifconfig | grep 192 过滤192的ip…...
【相机标定】OpenCV 相机标定中的重投影误差与角点三维坐标计算详解
摘要: 本文将从以下几个方面展开,结合典型代码深入解析 OpenCV 中的相机标定过程,重点阐述重投影误差的计算方法与实际意义,并通过一个 calcBoardCornerPositions() 函数详细讲解棋盘格角点三维坐标的构建逻辑。 在计算机视觉领域…...
传统销售VS智能销售:AI如何重构商业变现逻辑
如今最会赚钱的企业早就不靠堆人力了,他们都在悄悄用AI做商业变现。当普通销售还在手动记录客户信息时,AI销售系统已经能实时追踪客户在商品页的停留时长,甚至精确到秒。 传统客服人员还在机械地复制粘贴标准话术,AI销售却已经能根…...
从设计到开发,原型标注图全流程标准化
一、原型标注图是什么? 原型标注图(Annotated Prototype)是设计原型(Prototype)的详细说明书,通过图文结合的方式,将设计稿中的视觉样式、交互逻辑、适配规则等技术细节转化为开发可理解的标准…...
Mac QT水平布局和垂直布局
首先上代码 #include "mainwindow.h" #include "ui_mainwindow.h" #include <QPushButton> #include<QVBoxLayout>//垂直布局 #include<QHBoxLayout>//水平布局头文件 MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), …...
部署Superset BI(四)连接sql server数据库
sqlserver没有出现在Superset的连接可选菜单上,这一点让我奇怪。既然没有那就按着HANA的配置方式,照猫画虎。更奇怪的是安装好还不能出现,难道superset和微软有仇? --修改配置文件 rootNocobase:/usr/superset/superset# cd docke…...
Python爬虫(22)Python爬虫进阶:Scrapy框架动态页面爬取与高效数据管道设计
目录 一、背景:Scrapy在现代爬虫中的核心价值二、Scrapy项目快速搭建1. 环境准备与项目初始化2. 项目结构解析 三、动态页面处理:集成Splash与中间件1. 配置Splash渲染服务(Docker部署)2. 修改settings.py启用中间件3. 在Spider中…...
全球实物文件粉碎服务市场洞察:合规驱动下的安全经济与绿色转型
一、引言:从纸质堆叠到数据安全的“最后一公里” 在数字化转型浪潮中,全球企业每年仍产生超过1.2万亿页纸质文件,其中包含大量机密数据、客户隐私及商业敏感信息。据QYResearch预测,2031年全球实物文件粉碎服务市场规模将达290.4…...
使用Python 打造多格式文件预览工具 — 图、PDF、Word、Excel 一站式查看
在日常办公或文件管理场景中,我们经常面临这样的问题:在一个文件夹中短时间内产生了大量不同类型的文件(如图片、PDF、Word、Excel),我们需要快速浏览和筛选这些文件的内容,却不希望一个个打开它们。有没有…...
Microsoft 365 Copilot:为Teams在线会议带来多语言语音交流新体验
随着AI技术的飞速发展,Microsoft 365 Copilot将大型语言模型(LLM)与业务数据深度融合,为用户带来了前所未有的办公体验。在Teams在线会议中,Copilot不仅能够作为智能助手提升会议效率,还能通过实时辅助同声…...
c++:双向链表容器(std::list)
目录 🧱 一、什么是 std::list? ⚙️ 二、底层结构图解 🧪 三、list 的常见操作 📦 四、完整示例代码 📌 五、特点总结对比 🛠 六、特殊函数 📚 七、list 迭代器操作 ⚠️ 八、使用场景…...
jenkins 启动报错
java.lang.UnsatisfiedLinkError: /opt/application/jdk-17.0.11/lib/libfontmanager.so: libfreetype.so.6: cannot open shared object file: No such file or directory。 解决方案: yum install freetype-devel 安装完成之后重启jenkins。...
输入顶点坐标输出立方体长宽高的神经网络
写一个神经网络,我输入立方体投影线段的三视图坐标,输出分类和长宽高 import torch from torch import nn import torch.nn.functional as F# 假设每个视图有8个顶点,每个顶点有2个坐标值,因此每种视图有16个输入特征 input_dim…...
Layui表格行点击事件监听
在 Layui 中,如果想监听表格行的点击事件,可以通过以下步骤实现: 初始化表格:首先确保你已经使用 Layui 的 table.render 方法成功渲染了你的表格。绑定行点击事件:Layui 并没有直接提供针对表格行点击的事件监听器…...
2025数维杯数学建模竞赛B题完整参考论文(共38页)(含模型、代码、数据)
2025数维杯数学建模竞赛B题完整参考论文 目录 摘要 一、问题重述 二、问题分析 三、模型假设 四、定义与符号说明 五、 模型建立与求解 5.1问题1 5.1.1问题1思路分析 5.1.2问题1模型建立 5.1.3问题1求解结果 5.2问题2 5.2.1问题2思路分析 5.2.2问题2…...
TCP套接字通信核心要点
TCP套接字通信核心要点 通信模型架构 客户端-服务端模型 CS架构:客户端发起请求,服务端响应和处理请求双向通道:建立连接后实现全双工通信 服务端搭建流程 核心步骤 创建套接字 int server socket(AF_INET, SOCK_STREAM, 0); 参数说明&am…...
Android屏蔽通话功能和短信功能
需求开发中,有个要求屏蔽电话功能和短信功能,禁止应用打电话或短信,禁止api开发出的应用打电话或短信。这个约束怎么做呢? framework/base/core/res/res/values/config.xml.....<!-- Flag indicating whether the current devi…...
STM32TIM定时中断(6)
一、TIM介绍 1、TIM简介 TIM(Timer)定时器 定时器的基本功能:定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。 即定时触发中断,同时也可以看出,定时器就是一个计数器,当…...
hz2新建Keyword页面
新建一个single-keywords.php即可,需要筛选项再建taxonomy-knowledge-category.php 参考:https://www.tkwlkj.com/customize-wordpress-category-pages.html WordPress中使用了ACF创建了自定义产品分类products,现在想实现自定义产品分类下的…...
STL?vector!!!
一、前言 之前我们借助手撕string加深了类和对象相关知识,今天我们将一起手撕一个vector,继续深化类和对象、动态内存管理、模板的相关知识 二、vector相关的前置知识 1、什么是vector? vector是一个STL库中提供的类模板,它是存储…...
Android SDK
Windows纯净卸载Android SDK 1.关闭所有安卓相关的程序 Android StudioEmulators 如模拟器Command prompts using SDK 如appium服务 2.移除SDK相关目录 # Delete your SDK directory F:\android_sdk\android-sdk-windows# Also check and remove if present: $env:LOCALAPP…...
老旧 LabVIEW 系统升级改造
在工业自动化领域,LabVIEW 凭借其直观的图形化编程方式和强大的数据处理能力,成为开发测试测量与控制系统的主流平台。然而,随着技术的快速迭代和业务需求的不断变化,许多早期开发的 LabVIEW 系统逐渐暴露出性能不足、功能缺失或兼…...
【IDEA_Maven】(进阶版)永久性的更改IDEA中每个项目所依赖的Maven默认配置文件及其仓库路径
【IDEA_Maven】永久性的更改IDEA中每个项目所依赖的Maven默认配置文件及其仓库路径 问题解决 问题 Maven使用在线导入,在网络不佳时,往往加载很慢。十分浪费时间,所以我们需要在maven官网找到合适版本的maven,将其压缩包下载下来…...
VSCode远程无法选择虚拟环境问题
1. 无法选择虚拟环境 1.先保证扩展安装正确, 安装python,pylance和intelliCode 2. 直接在设置(ctrl shift p)里面搜索,点击“Python:Select Interpreter”选项 3. 可能有人会出现第三步的问题,参考链接…...
七、Hadoop 历史追踪、数据安全阀与 MapReduce初体验
Hadoop 实战拾遗:作业历史追踪、数据安全阀与 MapReduce 巧算 π 一、追溯作业足迹:JobHistory Server 的配置与使用 Hadoop 集群高效运行的背后,离不开对已完成作业的细致分析。JobHistory Server (JHS) 就像是作业的“黑匣子”࿰…...
【MySQL】联合查询
个人主页:♡喜欢做梦 欢迎 👍点赞 ➕关注 ❤️收藏 💬评论 目录 一、什么是联合查询 1.概念 2.语法要求 3.示例 4.为什么要使用联合查询 内连接 1.概念 2.语法 3.步骤: 外连接 1.概念 2.分类: 左外连…...
Java 原生实现代码沙箱(OJ判题系统第1期)——设计思路、实现步骤、代码实现
设计思路: 1、保存代码文件 ✅ 目的: 将用户提交的源码以字符串形式写入磁盘,生成 .java 文件。 📌 原因: Java 是静态语言,必须先编译成 .class 文件才能运行。 需要物理文件路径来调用 javac 或使用 Java…...
课程设计。。。。
人脸考勤系统 需求分析 需求 1.实现企业日常人脸打卡需求 2.管理员要可以管理相关数据 3.可以移植到相关嵌入式设备 …..需求主要是这些,还可以让ai拓展一点 实现 1.介于可移植性这个需求,选用Qt框架,Qt框架跨平台性特比好࿰…...
gitlab相关面试题及答案
一、GitLab 基础 1. 什么是 GitLab?它与 GitHub 有什么区别? 答案: GitLab 是一个开源的 DevOps 平台,提供代码托管、CI/CD、问题跟踪等功能。与 GitHub 的主要区别: 开源与商业:GitLab 社区版开源&#x…...
『不废话』之Python 3.14 Beta版新特性
Python 3.14 的第一个Beta版已发布,有几个新特性可以提高我们的编码效率。 未来注释 在上一篇《『不废话』之Python高级特性技巧-CSDN博客》中提到3.7中新增了 “未来注释”,可以使用“from __future__ import annotations”或双引号包括的方式解决当类…...
AWS之数据分析类产品
以下是 Amazon Athena、Amazon QuickSight、AWS Lake Formation、AWS Glue、Amazon OpenSearch Service(原 Elasticsearch Service)、Amazon Kinesis Data Analytics 和 Amazon Redshift 的核心区别及典型使用场景的对比分析: 1. Amazon Athe…...
RabbitMQ消息的重复消费问题如何解决?
在RabbitMQ中,消息重复消费是一个常见问题,它通常发生在消费者处理消息时出现网络波动、节点故障或消费者自身处理逻辑异常,ACK 失败等情况,都会导致RabbitMQ 不能够正确感知消息已被成功处理,从而重新投递消息。以下是…...
5月9号.
v-for: v-bind: v-if&v-show: v-model: v-on: Ajax: Axios: async&await: Vue生命周期: Maven: Maven坐标:...
如何减少极狐GitLab 容器镜像库存储?
极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有: 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 减少容器镜像库存储 (BASIC ALL) 未清理的容器镜像库会随着时间的推移而变大。添加大量镜像或标签时: 获取可用标…...