通向AGI的未来之路!首篇2D/视频/3D/4D统一生成框架全景综述(港科大中山等)
文章链接: https://arxiv.org/pdf/2503.04641
摘要
理解并复现现实世界是人工通用智能(AGI)研究中的一个关键挑战。为实现这一目标,许多现有方法(例如世界模型)旨在捕捉支配物理世界的基本原理,从而实现更精确的模拟和有意义的交互。然而,当前的方法通常将不同模态(包括2D(图像)、视频、3D和4D表示)视为独立领域,忽略了它们之间的相互依赖性。此外,这些方法通常专注于现实的孤立维度,而没有系统地整合它们之间的联系。在本综述中,我们提出了一种多模态生成模型的统一综述,探讨了现实世界模拟中数据维度的演进。具体而言,本综述从2D生成(外观)开始,随后转向视频(外观+动态)和3D生成(外观+几何),最后以整合所有维度的4D生成为终点。据我们所知,这是首次尝试在单一框架内系统性地统一2D、视频、3D和4D生成的研究。为指导未来研究,我们全面回顾了数据集、评估指标和未来方向,并为新研究者提供了启发。本综述作为桥梁,推动了多模态生成模型和现实世界模拟在统一框架内的研究进展。
1 引言
几十年来,研究界一直致力于开发能够封装物理世界基本原理的系统,这是实现人工通用智能(AGI)的关键基石。这一努力的核心是通过机器模拟现实世界,旨在通过多模态生成模型的视角捕捉现实的复杂性。由此产生的世界模拟器有望推动对现实世界的理解,并解锁诸如虚拟现实 、游戏、机器人和自动驾驶 等变革性应用。
“世界模拟器”一词最早由 Ha David提出,借鉴了认知科学中的心理模型概念。基于这一视角,现代研究将模拟器定义为一个抽象框架,使智能系统能够通过多模态生成模型模拟现实世界。这些模型将现实世界的视觉内容和时空动态编码为紧凑的表示形式。由于几何、外观和动态共同决定了生成内容的真实感,这三个方面得到了广泛研究。传统的现实世界模拟方法长期以来依赖于结合几何、纹理和动态的图形技术。具体而言,几何和纹理建模用于创建物体,而关键帧动画和基于物理的模拟等方法则用于模拟物体随时间的运动和行为。
尽管取得了巨大进展,但这些传统方法通常需要大量的手动设计、启发式规则定义和计算密集型处理,限制了其可扩展性和对多样化场景的适应性。近年来,基于学习的方法,特别是多模态生成模型,通过提供数据驱动的现实模拟方法,彻底改变了内容创作。这些方法减少了对人工努力的依赖,提高了跨任务的泛化能力,并实现了人与模型之间的直观交互。例如,Sora 因其逼真的模拟能力而备受关注,展示了早期对物理定律的理解。此类生成模型的出现引入了新的视角和方法,通过减少对大量手动设计和计算密集型建模的需求,同时增强多样化模拟场景中的适应性和可扩展性,解决了传统方法的局限性。
尽管现有的生成模型为合成不同数据维度中的逼真内容提供了强大的技术,但现实世界表现出固有的高维复杂性,目前仍缺乏一项系统整合这些跨维度进展的全面综述。本综述旨在通过从数据维度增长的角度统一现实世界模拟的研究,填补这一空白,如下图 1 所示。具体而言,我们从 2D 生成(仅外观)开始,然后通过分别引入动态和几何维度,扩展到视频和 3D 生成。最后,我们通过整合所有维度,以 4D 生成为终点。
总结而言,本综述做出了三项关键贡献。首先,它从数据维度增长的角度,通过多模态生成模型的视角,系统性地回顾了现实世界模拟的方法。据我们所知,这是首次统一 2D、视频、3D 和 4D 生成研究的综述,为该研究领域提供了结构化和全面的概述。其次,它从多个角度调查了常用数据集、其特性以及相应的评估指标。第三,它指出了开放的研究挑战,旨在为该领域的进一步探索提供指导。
我们希望本综述能够为新研究者提供有价值的见解,并促进经验丰富的研究者进行批判性分析。本综述的组织结构如下:第 2 节介绍了深度生成模型的基础概念;第 3 节介绍了 2D、视频、3D 和 4D 生成四个关键范式;第 4 节回顾了这些范式的数据集和评估指标;第 5 节概述了未来方向;第 6 节总结了本综述。
2 预备知识
深度生成模型借助深度神经网络学习复杂且高维的数据分布。将数据样本表示为 ,其分布为 ,深度生成模型的目标是用 近似 ,其中 是模型的参数。在本节中,我们简要回顾了几种主流的生成模型(下表 1),包括生成对抗网络(GANs)、变分自编码器(VAEs)、自回归模型(AR Models)、归一化流(NFs)和扩散模型。
2.1 生成对抗网络(GANs)
GANs 避免了 的参数化形式,而是将 表示为生成器生成的样本的分布。研究表明,在一定条件下, 会收敛到 。
生成器以噪声向量 作为输入,合成数据样本 。 被定义为 的分布,其中 。与此同时,判别器 判断输入数据样本是真实的还是合成的。在训练过程中,判别器被训练以区分生成样本和真实数据,而生成器则被训练以欺骗判别器。该过程可以表示为:
2.2 变分自编码器(VAEs)
变分自编码器(VAEs)将 表述为:
其中, 是 的先验分布, 是给定 下 的条件分布。然而,由于这个积分通常是难以计算的,VAEs 转而最大化 的下界:
其中, 是 和 之间的 KL 散度, 通过随机梯度变分贝叶斯估计器计算。
2.3 自回归模型(AR Models)
自回归模型(AR Models)将 分解为条件概率的乘积,以缓解建模多元联合概率的困难:
其中, 是序列长度。
最近,许多研究致力于使用自回归模型对图像中的像素进行顺序建模 [19]–[21]。
2.4 归一化流(Normalizing Flows, NFs)
归一化流(NFs)使用一个可逆的神经网络 将 从一个已知且易于处理的分布映射到真实数据分布。通过这种方式, 可以表示为:
其中, 是 的逆函数, 是 的雅可比矩阵。归一化流通过组合一组 个双射函数来构建任意复杂的非线性可逆函数,并定义 。
2.5 扩散模型
扩散模型是一类概率生成模型,通过逐步引入噪声来破坏数据,随后学习逆转这一过程以生成样本。我们通过能量项 定义 :
其中, 是归一化项。
由于 难以计算,扩散模型转而学习得分函数 。
将数据分布转换为标准高斯分布的前向过程定义为:
其中, 是漂移系数, 是扩散系数, 是标准维纳过程,。样本通过相应的反向过程生成,该过程描述为:
其中, 是时间从 1 流向 0 时的标准维纳过程。
3 范式
本节从数据维度增长的角度介绍了模拟现实世界的方法。首先从外观建模的 2D 生成(第 3.1 节)开始,然后通过引入动态和几何维度,扩展到视频生成(第 3.2 节)和 3D 生成(第 3.3 节)。最后,通过整合这三个维度,介绍了 4D 生成(第 3.4 节)的最新进展。
3.1 2D 生成
近年来,生成模型领域取得了显著进展,尤其是在文本到图像生成方面。文本到图像生成因其能够通过捕捉现实世界的外观从文本描述中生成逼真图像而备受关注。利用扩散模型、大语言模型(LLMs)和自编码器等技术,这些模型实现了高质量且语义准确的图像生成。
3.1.1 算法
Imagen基于 GLIDE 的原则,但引入了显著的优化和改进。Imagen 没有从头开始训练任务特定的文本编码器,而是使用预训练并冻结的语言模型,从而减少了计算需求。Imagen 测试了在图像-文本数据集(如 CLIP)上训练的模型,以及在纯文本数据集(如 BERT 和 T5)上训练的模型。这一实践表明,扩大语言模型的规模比扩大图像扩散模型更有效地提高了图像保真度和文本一致性。
DALL-E(版本 1)使用了一种 Transformer 架构,将文本和图像作为单一数据流进行处理。
DALL-E 2 利用了 CLIP 的强大语义和风格能力,采用生成扩散解码器来逆转 CLIP 图像编码器的过程。
DALL-E 3 在 DALL-E 2 的基础上进一步改进,显著提升了图像保真度和文本对齐能力。它增强了文本理解能力,能够从复杂描述中生成更准确和细致的图像。DALL-E 3 与 ChatGPT集成,使用户可以直接在 ChatGPT 界面中构思和完善提示,从而简化生成详细和定制化提示的过程。该模型生成的图像具有更高的真实感,并与提供的文本更好地对齐,使其成为创意和专业应用的强大工具。
DeepFloyd IF
DeepFloyd IF 以其卓越的 photorealism(照片级真实感)和高级语言理解能力而闻名。该系统采用模块化设计,包括一个静态文本编码器和三个顺序的像素扩散模块。首先,基础模型从文本描述生成 64×64 像素的图像,然后通过两个超分辨率模型将其增强到 256×256 像素,最终达到 1024×1024 像素。每个阶段都使用基于 T5 Transformer 的静态文本编码器生成文本嵌入,随后通过集成了交叉注意力和注意力池化机制的 U-Net 架构进行处理。
Stable Diffusion (SD)
Stable Diffusion(SD),也称为 Latent Diffusion Model(LDM),在有限的计算资源上提高了训练和推理效率,同时生成高质量和多样化的图像。去噪过程在预训练自编码器的潜在空间中进行,这些自编码器将图像映射到空间潜在空间。底层的 U-Net 架构通过交叉注意力机制增强,以建模条件分布,条件可以包括文本提示、分割掩码等。它使用 BERT 分词器进行文本编码,并在 LAION-400M数据集上训练,生成分辨率为 256×256 的图像(潜在分辨率为 32×32)。
在 Stable Diffusion 的基础上,SDXL 采用了三倍大的 U-Net 骨干网络,并引入了额外的注意力块和更大的交叉注意力上下文,通过使用第二个文本编码器实现。此外,SDXL 还包含一个细化模型,通过后处理的图像到图像技术增强 SDXL 生成样本的视觉保真度。
FLUX.1
FLUX.1 采用了一种混合架构,集成了多模态和并行扩散 Transformer 块,达到了 120 亿参数的规模。通过使用流匹配(flow matching)这一简单而有效的生成模型训练技术,FLUX.1 超越了之前的最先进扩散模型。该套件还采用了旋转位置嵌入和并行注意力层,极大地提高了模型性能和效率。
3.2 视频生成
文本到视频生成模型通过扩展文本到图像框架来处理现实世界中的动态维度。我们根据不同的生成机器学习架构将这些模型分为三类。下图 2 总结了最近的文本到视频生成技术。如需更详细的综述,读者可以参考该子领域的更多详细综述 [62], [63]。
3.2.1 算法
(1) 基于 VAE 和 GAN 的方法
在扩散模型之前,视频生成研究主要通过两种方法推进:基于 VAE 和基于 GAN 的方法,每种方法都为视频合成的挑战提供了独特的解决方案。基于 VAE 的方法从 SV2P的随机动态发展到 VideoGPT 中 VQ-VAE与 Transformer 的结合,通过分层离散潜在变量高效处理高分辨率视频。FitVid的参数高效架构和对抗训练的引入带来了显著改进。基于 GAN 的方法则从 MoCoGAN开始,通过分解内容和运动组件实现可控生成。StyleGAN-V 通过位置嵌入将视频视为时间连续信号,而 DIGAN引入了隐式神经表示以改进连续视频建模。StyleInV利用预训练的 StyleGAN生成器,结合时间风格调制反演网络,标志着高质量帧合成和时间一致性的又一里程碑。
(2) 基于扩散的方法
文本到视频生成最近取得了显著进展,主要分为两类:基于 U-Net 的架构和基于 Transformer 的架构。
(i) 基于 U-Net 的架构
开创性的视频扩散模型(VDM) 通过扩展图像扩散架构并引入联合图像-视频训练以减少梯度方差,实现了高保真、时间一致的视频生成。Make-A-Video通过利用现有视觉表示和创新时空模块,在没有配对文本-视频数据的情况下推进了文本到视频生成。Imagen Video引入了结合基础生成和超分辨率的扩散模型级联,而 MagicVideo通过在低维空间中的潜在扩散实现了高效生成。GEN-1专注于使用深度估计进行结构保留编辑,而 PYoCo通过精心设计的视频噪声先验展示了在有限数据下的高效微调。Align-your-Latents通过扩展 Stable Diffusion并结合时间对齐技术,实现了高分辨率生成(1280×2048)。Show-1结合了基于像素和基于潜在的方法,以提高质量并减少计算量。VideoComposer通过时空条件编码器引入了一种新的可控合成范式,支持基于多种条件的灵活组合。AnimateDiff提出了一个即插即用的运动模块,具有可迁移的运动先验,并引入了 MotionLoRA 以实现高效适配。PixelDance通过结合首帧和末帧图像指令以及文本提示,增强了生成效果。
(ii) 基于 Transformer 的架构
随着 Diffusion Transformer (DiT)的成功,基于 Transformer 的模型逐渐崭露头角。VDT引入了模块化的时间和空间注意力机制,支持预测、插值和补全等多样化任务。W.A.L.T通过统一的潜在空间和因果编码器架构实现了照片级真实感生成,生成分辨率为 512×896 的高分辨率视频。Snap Video通过处理空间和时间冗余像素,将训练效率提高了 3.31 倍,而 GenTron通过无运动引导扩展到了超过 30 亿参数。Luminia-T2X通过零初始化注意力和标记化的潜在时空空间集成了多种模态。CogVideoX通过专家 Transformer、3D VAE 和渐进训练在长视频生成中表现出色,通过多项指标验证了其最先进的性能。突破性的 Sora是一种先进的扩散 Transformer 模型,专注于生成不同分辨率、宽高比和时长的高质量图像和视频。Sora 通过对潜在时空空间进行标记化,实现了灵活且可扩展的生成能力。
(3) 基于自回归的方法
与基于扩散的方法并行,受大语言模型(LLMs)启发的自回归框架也成为了视频生成的另一种方法。这些方法通常遵循两阶段过程:首先使用 VQ-GAN和 MAGVIT, [71]–[74] 等向量量化自编码器将视觉内容编码为离散的潜在标记,然后在潜在空间中建模标记分布。CogVideo 是一个基于预训练文本到图像模型 CogView 的 90 亿参数 Transformer 模型,代表了这一方向的重大进展。它采用多帧率分层训练策略来增强文本-视频对齐,并作为首批开源的大规模预训练文本到视频模型之一,在机器和人类评估中设立了新的基准。VideoPoet引入了一种仅解码器的 Transformer 架构,用于零样本视频生成,能够处理包括图像、视频、文本和音频在内的多种输入模态。遵循 LLM 训练范式,VideoPoet 在零样本视频生成中实现了最先进的性能,特别是在运动保真度方面表现出色。
3.2.2 应用
(1) 视频编辑
最近,扩散模型显著推动了视频编辑的发展,能够在保持时间一致性的同时实现复杂的修改。该领域通过多种创新方法不断发展,涵盖了视频操作的各个方面。早期的发展包括 Tune-A-Video,它通过时空注意力机制将文本到图像扩散模型扩展到视频生成。VidToMe引入了标记合并以对齐帧,而 EI开发了专门的注意力模块。Ground-A-Video通过接地引导框架处理多属性编辑,而 Video-P2P引入了交叉注意力控制以生成角色。UniEdit和 AnyV2V等最新框架提供了无需调优的方法和简化的编辑流程。CoDeF和 Pix2Video等专门应用引入了创新的时间一致性处理和渐进变化传播技术。这些方法成功平衡了内容编辑和结构保留,标志着视频操作技术的重大进展。
(2) 新视角合成
视频扩散模型彻底改变了新视角合成,通过学习真实世界几何的先验,从有限的输入图像生成高质量视角。ViewCrafter通过将视频扩散模型与基于点的 3D 表示相结合,开创了这一方向,引入了迭代合成策略和相机轨迹规划,从稀疏输入中生成高保真结果。CameraCtrl通过即插即用模块引入了精确的相机姿态控制。ViVid-1-to-3将新视角合成重新定义为相机运动的视频生成,而 NVSSolver引入了一种零样本范式,通过给定视图调制扩散采样。这一趋势表明,利用视频扩散先验的同时保持几何一致性和相机控制,正在推动越来越逼真的合成应用。
(3) 视频中的人类动画
人类动画在视频生成中具有重要意义,正如第 3.2.1 节所述,它在世界模拟器中扮演着关键角色。由于人类是现实世界中最主要的参与者,因此其逼真模拟尤为重要。得益于生成模型的早期成功,一些代表性工作 [37], [89], [90] 引入了生成对抗网络(GAN)来生成视频中的人类动画。尽管取得了这些进展,人类视频动画中最关键的问题仍然是生成视频的视觉保真度。ControlNet 和 HumanSD 是基于基础文本到图像模型(如 Stable Diffusion [31])的即插即用方法,用于参考姿势生成人类动画。此外,为了解决这些方法的泛化问题,animate-anyone 提出了 ReferenceNet 以保持参考视频的更多空间细节,并将野外生成质量推向了新的里程碑。一些后续工作 [94], [95] 尝试简化训练架构和成本。此外,随着计算机图形学中对几何和纹理的深入研究,一些工作将 3D 建模引入人类视频动画。Liquid Warping GAN、CustomHuman 和 LatentMan是早期尝试将 3D 人类先验引入生成循环的成果。最新进展 MIMO 明确分别建模角色、3D 运动和场景,以驱动野外人类动画。这些方法无论是否使用 3D 先验,都为将人类引入世界模拟器循环迈出了重要一步。
参考文献
[1] Simulating the Real World: A Unified Survey of Multimodal Generative Models
相关文章:
通向AGI的未来之路!首篇2D/视频/3D/4D统一生成框架全景综述(港科大中山等)
文章链接: https://arxiv.org/pdf/2503.04641 摘要 理解并复现现实世界是人工通用智能(AGI)研究中的一个关键挑战。为实现这一目标,许多现有方法(例如世界模型)旨在捕捉支配物理世界的基本原理࿰…...
什么是MCP(Model Context Protocol)?对话、意图识别、服务调用和上下文管理
什么是MCP? MCP(Model Context Protocol) 是一种专为人工智能模型设计的通信协议,旨在解决复杂 AI 系统中多个模型或组件之间的协同、状态管理和资源优化问题。它尤其适用于大型语言模型(LLM)、多模态系统及…...
第二十七篇 数据仓库与维度建模指南:从理论到实战的进阶之路
声明:文章内容仅供参考,需仔细甄别。文中技术名称属相关方商标,仅作技术描述;代码示例为交流学习用途,部分参考开源文档(Apache 2.0/GPLv3);案例数据已脱敏,技术推荐保持…...
定时任务引起的死锁
定时任务引起的死锁 前言:Java面试题 死锁的场景有哪些?你们是怎么解决的? 锁有哪些特性? 问题现象 1,文件上传报当前功能正在使用,请稍后再试 2,其他账号登录系统,登录不上去&a…...
NewStar CTF web wp
文章目录 week1headach3会赢吗智械危机谢谢皮蛋PangBai 过家家(1) week3include meblindsql1臭皮的计算机臭皮踩踩背这照片是你吗 week4Pangbai过家家四blindsql2chocolateezcmsssezpollute隐藏的密码 weeek5pangbai过家家(5)redissqlshell臭皮吹泡泡臭皮…...
Docker运行postgreSQL,由于异常启动或者退出后,提示could not locate a valid checkpoint record
pg_resetwal 是 PostgreSQL 的“急救工具”,用于在极端情况下修复因 WAL 或控制文件损坏导致的启动问题。 但需注意: 风险极高,可能导致数据不一致。必须立即转储并恢复,避免直接在修复后的数据库中执行写操作。仅在备份后使用&…...
Leetcode 刷题笔记1 图论part01
图论的基础知识: 图的种类: 有向图(边有方向) 、 无向图(边无方向)、加权有向图(边有方向和权值) 度: 无向图中几条边连接该节点,该节点就有几度࿱…...
文件管理系统
前言:之前我们讨论的是被打开文件的管理,那么未被打开的文件是如何管理的呢? 1.认识磁盘设备 1.1磁盘的物理结构 磁盘是由盘片(盘面,扇区,磁道,柱面),磁头,…...
荣耀手机卸载应用商店、快应用中心等系统自带的
1.下载abd ADB Download - Get the latest version of ADB and fastboot 2.手机打开开发者选项 3.手机接电脑打开USB调试 4.下载MT管理器查看系统包名 D:\1.LFD\ADB\platform-tools-latest-windows\platform-tools>adb shell adb.exe: no devices/emulators found 这边是…...
结合基于标签置信度的特征选择方法用于部分多标签学习-简介版
假设 部分多标签学习(PML)假设:假设样本的标签集合中存在伪正标签,即某些标签可能是错误的。目标是从候选标签集中识别出真实标签。特征与标签的关系假设:假设不同的标签对应的特征子空间可能是不同的,而不…...
【小白向】Word|Word怎么给公式标号、调整公式字体和花括号对齐
【小白向】Word|Word怎么给公式标号、调整公式字体和花括号对齐 我的版本:Word 2021 如需快速查看关键步骤,请直接阅读标红部分。 如果遇到无法调整的情况,可以直接下载我的示例文档进行参考:花括号和其他的示例公式.…...
基于香橙派 KunpengPro学习CANN(2)——Ascend Extension for PyTorch 配置与安装
将 PyTorch 网络迁移到昇腾平台并执行训练或推理,直接使用昇腾提供的构图接口构图。Ascend Extension for PyTorch插件用于适配PyTorch框架,可以使用昇腾AI处理器的算力。 1 pip 安装 # 下载PyTorch安装包 wget https://download.pytorch.org/whl/cpu/…...
【备赛】遇到的小问题-1
问题描述-1 想实现的功能是,通过ADC实时测量某引脚的电压及其占空比。 可以通过旋转电位器,更改其电压。 首先我定义了这几个变量 uint32_t adc_value;//HAL库函数里面得出的采样值(实时更新) uint32_t percentage6;//占空比,随着adc_val…...
Browser Use的安装和使用
文章目录 一、介绍二、安装教程1、使用Conda创建虚拟环境2、激活环境3、安装browser use4、安装Playwright5、克隆git仓库6、安装项目的依赖 三、使用教程1、启动WebUI2、案例13、案例2 一、介绍 背景 Browser Use:用AI控制你的浏览器,你可以使用它帮你…...
碰一碰发视频saas系统技术源头一站式开发文档
碰一碰发视频系统技术源头一站式开发文档 一、引言 在数字化信息传播高速发展的当下,如何让视频分享更便捷、高效,成为商家和开发者们关注的焦点。“碰一碰发视频”系统以其独特的交互方式和强大的功能优势,为视频分享领域带来了革命性变革。…...
Spring Boot 静态访问配置属性的解决方案
前言 在Spring Boot开发中,静态访问配置信息是一个常见需求,尤其是在工具类、常量类或非Bean类中直接获取配置值。 问题背景 假设我们的应用需要从application.yml中读取配置项app.logotype,并在工具类、静态方法或非Bean类中直接访问该值。…...
NLP高频面试题(四)——BN和LN的区别与联系,为什么attention要用LN
在深度学习模型中,Normalization是一种极为重要的技巧,Batch Normalization(BN)和Layer Normalization(LN)是其中最为常用的两种方法。然而,二者在实际应用中有着明显的区别与联系,尤…...
深度学习定义与分类【详细易懂 初学者友好~】
深度学习(Deep Learning)是机器学习的一个子领域,它基于人工神经网络(Artificial Neural Networks,ANN)的理论和架构,通过构建多层(即“深度”)的神经网络结构来学习数据…...
二、小白学JAVA-认识数据类型【变量】
1、实际案例类比 初中以上数学,就知道有有理数、正数、负数、0、小数、大写的数字、语文。 2、数据类型介绍 public class Main {public static void main(String[] args) {// 数据类型byte i_byte 12; // 标识数据范围小,但是节省内存>网络传输…...
UNI-APP uts插件 支持ANDROID 监听手机状态
插件地址 https://ext.dcloud.net.cn/plugin?id22646 模块 import {startPhoneListener,stopPhoneListener,checkIsAutoRecord,toCallAutoRecorderPage,navigateToCallRecordingSettings,jumpToPermissionPage,makePhoneCall,allRecorderFilesAction,registerSmsReceiver,} f…...
AI入门7:python三种API方式调用本地Ollama+DeepSeek
回顾 书接上篇:各种方式搭建了本地知识库: AI入门:AI模型管家婆ollama的安装和使用-CSDN博客 AI入门2:本地AI部署,用ollama部署deepseek(私有化部署)-CSDN博客 AI入门3:给本地d…...
SQL SERVER日常运维巡检系列—结构设计
前言 做好日常巡检是数据库管理和维护的重要步骤,而且需要对每次巡检日期、结果进行登记,同时可能需要出一份巡检报告。 本系列旨在解决一些常见的困扰: 不知道巡检哪些东西 不知道怎么样便捷体检 机器太多体检麻烦 生成报告…...
前端剪贴板操作:从传统方法到现代方案
一、传统复制实现原理 这个copy函数展示了经典的剪贴板操作方案: function copy(color) {const input document.createElement("input");input.value color;document.body.appendChild(input);input.select();document.execCommand("copy")…...
E1-数组的平衡点2(前缀和)
题目描述 给定一个长度为 n 的数组 nums,若其中存在某个位置 index,使得 [0, index - 1] 范围的元素之积 等于 [index 1, n - 1] 范围的元素之积,则称 index 位置是数组 nums 的平衡点。 请你找出数组 nums 的平衡点位置,若存在…...
【Maven-plugin】有多少官方插件?
之前疏理了容器底层原理,现在回归主题,在阅读 next-public时发现 parent 将从多基础插件集成到 parent 仓库中单独维护,数量众多,故在此将所有插件分类整理。以达观其全貌,心中有数。 以下是 Apache Maven 官方维护的核心插件列表…...
10-BST(二叉树)-建立二叉搜索树,并进行前中后遍历
题目 来源 3540. 二叉搜索树 - AcWing题库 思路 建立二叉搜索树(注意传参时用到了引用,可以直接对root进行修改),同时进行递归遍历;遍历可以分前中后三种写,也可以用标志来代替合在一起。其余详见代码。…...
企业培训APP如何迈向AI时代?智能化在线教育系统源码开发解析
2025年,AI驱动的企业培训系统将成为主流,企业可以借助智能化在线教育系统源码构建高效的培训体系,提高员工学习效率,优化培训成本。本文将详细解析AI如何赋能企业培训,并探讨智能化在线教育系统源码的关键技术与开发实…...
CXSMILES介绍
Chemaxon 扩展 SMILES/SMARTS 用于在 SMILES 字符串后存储分子的特殊特征。任何信息都可以存储在 SMILES 字符串后,只要它们由空格或制表符字符分隔,因为 SMILES 解析器会忽略这些信息,或者将它们作为注释使用。扩展特征以以下格式存储: SMILES_String |<feature1>,…...
麒麟服务器操作系统Sqlite部署手册
软件简介 SQLite****介绍 SQLite是一个进程内的轻量级嵌入式数据库,它的数据库就是一个文件,实现了自给自足、无服务器、零配置的、事务性的SQL数据库引擎。它是一个零配置的数据库,这就体现出来SQLite与其他数据库的最大的区别:SQLite不需要在系统中配置,直接可以使用。…...
【GPT-SoVITS】GPT-SoVITSAPI调用:让二次元角色开口说话,打造专属语音合成系统
介绍 GPT-SoVITS 是一个强大的语音合成系统,它结合了 GPT(生成式预训练转换器)和 SoVITS(Soft-VC VITS)两种先进技术: GPT: 负责文本理解和语音生成的控制,能够根据上下文生成自然的语音内容S…...
Deepseek API+Python测试用例一键生成与导出-V1.0.2【实现需求文档图片识别与用例生成自动化】
在测试工作中,需求文档中的图片(如界面设计图、流程图)往往是测试用例生成的重要参考。然而,手动提取图片并识别内容不仅耗时,还容易出错。本文将通过一个自研小工具,结合 PaddleOCR 和大模型,自…...
防火墙双机热备(主备分担)
目录 引言 主备备份实验 1、基本配置 2、双机热备配置 查看双机热备状态 主备切换 路由影响 引言 传统VRRP方式无法实现主、备用防火墙状态信息和多组VRRP状态的一致性,所以可能会导致流量的回包不从首包通过的防火墙回包,防火墙会因为状态检测机…...
记Redis集群挂掉后,尝试重启集群但失败问题
前期尝试解决:将redis集群中所有redis节点都关闭后,又重新启动服务并且试图用命令建立集群通讯,报错[ERR] Node 192.168.75.128:7001 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some…...
c++--vector
1.定义vector vector的定义分为四种 (1)vector() ——————无参构造 (2)vector(size_t n,const value_type& val value_type()) ——————构造并初始化n个val (3)vector(const vector& v1) ———————拷贝构造 (4)vector(inputiterator first,inpu…...
计算机视觉——深入理解卷积神经网络与使用卷积神经网络创建图像分类算法
引言 卷积神经网络(Convolutional Neural Networks,简称 CNNs)是一种深度学习架构,专门用于处理具有网格结构的数据,如图像、视频等。它们在计算机视觉领域取得了巨大成功,成为图像分类、目标检测、图像分…...
c++题目_翻译家
题目描述 grang是一个帅气的翻译家他的任务是把摩斯密码翻译成2进制数,他要上课所以想请你帮他一下,他会给你 一段摩斯密码有“.”和“-”组成让你输出个二进制数。 翻译规则是:不用管-,看每一个.有几个"."组成如果有奇…...
【解析 ECharts 图表样式继承与自定义】
解析 ECharts 图表样式继承与自定义 本文将详细介绍 ECharts 的样式继承机制,从其原理、演进到实际应用场景,并结合实际开发经验分享一些实战技巧,帮助开发者在构建数据可视化页面时实现更统一、灵活的样式管理与高效开发。 一、背景与来龙…...
Python IP解析器 ip2region使用
说明:最近需要在python项目内使用IP定位所在城市的需求,没有采用向外部ISP服务商API请求获取信息的方案,则翻了翻,在搞Java时很多的方案,在Python端反而可选择范围很小。 # 示例查询 ips ["106.38.188.214"…...
Java Stream 流的介绍
介绍 在 Java 8 中,引入了 Stream API,它为处理集合(如 List、Set 等)提供了一种更简洁、声明式的方式。Stream 流的设计目标是支持对数据集合的高效操作,尤其是能够进行链式操作、并行处理等,极大地提升了…...
C++从入门到入土(八)——多态的原理
目录 前言 多态的原理 动态绑定与静态绑定 虚函数表 小结 前言 在前面的文章中,我们介绍了C三大特性之一的多态,我们主要介绍了多态的构成条件,但是对于多态的原理我们探讨的是不够深入的,下面这这一篇文章,我们将…...
BFS,DFS带图详解+蓝桥杯算法题+经典例题
1.BFS和DFS的定义与实现方式 1.1 深度优先搜索(DFS) 基本概念:DFS 是一种用于遍历或搜索图或树的算法。它从起始节点开始,沿着一条路径尽可能深地探索下去,直到无法继续或者达到目标节点,然后回溯到上一个…...
【RHCE实验】搭建主从DNS、WEB等服务器
目录 需求 环境搭建 配置nfs服务器 配置web服务器 配置主从dns服务器 主dns服务器 从dns服务器 配置客户端 客户端测试 需求 客户端通过访问 www.nihao.com 后,能够通过 dns 域名解析,访问到 nginx 服务中由 nfs 共享的首页文件,内容…...
有哪些开源的智慧园区项目?
作为专注于数字孪生技术的开发者团队,我们一直在数字孪生圈分享开源项目。但最近一次与AI助手Deepseek的对话,却让我们“又惊又喜”。 ——当询问“有哪些开源的智慧园区项目”时,Deepseek的回答中竟包含了我们自己的开源项目! 这…...
prometheusalert对阿里云短信服务不适配问题处理
背景 想通过prometheusalert实现阿里云短信告警。结果在配置完altermanager和prometheusalert,以及阿里云短信服务中的各种签名和短信模板之后,在prometheusalert web ui上测试模板时一直报“模板变量JSON格式错误 或 JSON变量属性与模板占位符不一致”…...
NFC 碰一碰发视频源码搭建,支持OEM
一、引言 NFC(Near Field Communication)近场通信技术,以其便捷、快速的数据交互特性,正广泛应用于各个领域。其中,NFC 碰一碰发视频这一应用场景,为用户带来了新颖且高效的视频分享体验。想象一下&#x…...
浅谈鸿蒙跨平台开发框架ArkUI-X
之前写过使用uniapp的跨平台开发鸿蒙项目,今天分享一下开发体验更友好的跨平台开发框架ArkUI-X。 ArkUI-X看起来像是鸿蒙官方的框架,在DevEco中就可以安装和使用,而且会ArkUI就可以开发安卓和、iOS和鸿蒙三个平台的app,下面简单介…...
LLVM学习-- 构建和安装
一 LLVM版本 二 适用预构建的二进制文件安装LLVM 三 适用包管理器安装LLVM 四 从源码构建用于Linux的LLVM 五 从源码构建用于Windows和Visual Studio的LLVM 六 从源码构建用于MacOS 和XCode的LLVM 1.1 LLVM项目从10年前第一次发布到版本3.4,其SVN存储库包含了超过20…...
总结Solidity 的数据类型
数据类型 在 Solidity 中,类型系统非常丰富,主要分为 值类型(Value Types)和 引用类型(Reference Types)。此外,还有一些特殊类型和全局变量。 一.值类型 布尔型(bool)…...
C# 中泛型(Generics)的核心概念
在 C# 中,泛型(Generics) 是一种强大的编程特性,允许你编写可重用、类型安全的代码,而无需为不同类型重复编写相似的逻辑。泛型的核心思想是参数化类型,即通过占位符(如 T)表…...
ubuntu 根据src 包从新打包
下边以onnxruntime示例: 1. 安装必要的依赖 确保你的系统已安装 devscripts、dpkg-dev 和 build-essential: sudo apt update sudo apt install devscripts dpkg-dev build-essential equivs2. 解压源码 进入存放源码包的目录,并解压: #c…...