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

探索在视频深度伪造中的细微的表情变化或对特定面部特征的小改动检测方法

概述

2019 年,美国众议院议长南希·佩洛西成为了一次针对性的、技术含量相对较低的“深度伪造”式攻击的目标。真实的佩洛西视频被编辑,让她看起来像是喝醉了酒。这一不真实的事件在真相大白之前被分享了数百万次,而且在一些人没有关注后续报道的情况下,可能已经对她的政治资本造成了不可挽回的损害。

尽管这种误导性的视频只需要进行一些简单的音视频编辑,而不是使用任何人工智能技术,但它仍然是一个关键的例子,展示了对真实音视频输出进行细微改动可能产生的毁灭性影响。

当时,深度伪造领域主要由 2017 年末首次亮相的基于自编码器的面部替换系统主导,这些系统的质量自那以后并没有显著提升。这些早期系统很难创造出这种小但重要的改动,或者追求现代研究方向中的表情编辑等技术:

2022 年的“神经情感导演”框架改变了名人的面部表情

行业现状

如今,情况已经大不相同。电影和电视行业对使用机器学习方法对真实表演进行后期修改表现出了浓厚的兴趣,人工智能助力的“事后完美主义”甚至最近也受到了一些批评。

为了满足(或者可以说创造了)这种需求,图像和视频合成研究领域已经推出了一系列项目,这些项目提供了对面部捕捉的“局部编辑”,而不是直接替换。这类项目包括 Diffusion Video Autoencoders、Stitch it in Time、ChatFace、MagicFace 和 DISCO 等。

2025 年 1 月的 MagicFace 项目进行表情编辑

新问题与新挑战

然而,使这些编辑成为可能的技术发展速度远远超过了检测它们的方法。在文献中出现的几乎所有深度伪造检测方法都在用过时的数据集追逐过时的深度伪造方法。直到本周,还没有一种方法能够解决人工智能系统在视频中创建小而有针对性的局部改动的潜在威胁。

现在,来自印度的一篇新论文填补了这一空白,提出了一种能够识别通过基于人工智能技术进行编辑(而不是替换)的面部的系统:

检测微妙局部编辑的深度伪造:真实视频被修改以产生带有细微变化的伪造品,例如抬高的眉毛、修改的性别特征以及表情向厌恶方向的转变(此处以单帧为例)

该系统旨在识别涉及微妙、局部面部操作的深度伪造,这是一种被忽视的伪造类别。该方法不是专注于全局不一致性或身份不匹配,而是针对细微的表情变化或对特定面部特征的小改动。

该方法利用了面部动作编码系统(FACS)中的动作单元(AUs)分隔符,该系统定义了面部的 64 个可能的可变区域,这些区域共同构成了表情。

FACS 中的 64 个表情组成部分

作者在多种最近的编辑方法上评估了他们的方法,并报告了在旧数据集以及更新的攻击向量上的一致性能提升。

“通过使用基于 AU 的特征来引导通过掩码自编码器(MAE)学习的视频表示,我们的方法有效地捕捉了对检测微妙面部编辑至关重要的局部变化。”

“这种方法使我们能够构建一个统一的潜在表示,它编码了局部编辑和更广泛的面部视频中的变化,为深度伪造检测提供了一个全面且可适应的解决方案。”

这篇名为《使用动作单元引导的视频表示检测局部深度伪造操作》的新论文由印度理工学院马德拉斯分校的三位作者撰写。

方法

与 VideoMAE 采用的方法一致,新方法首先对视频进行面部检测,并采样以检测到的面部为中心的均匀间隔的帧。然后将这些帧划分为小的 3D 分区(即时间启用的补丁),每个分区捕获局部空间和时间细节。

新方法的架构

新方法的架构。输入视频经过面部检测处理,以提取均匀间隔的、以面部为中心的帧,然后将这些帧划分为“管状”补丁,并通过编码器传递,该编码器融合了来自两个预训练预任务的潜在表示。最终的向量被分类器用来判断视频是真实的还是伪造的。

每个 3D 补丁包含来自少量连续帧(例如 2 帧)的固定大小的像素窗口(例如 16×16)。这使得模型能够学习短期的运动和表情变化——不仅仅是面部的外观,还有它是如何运动的

在传递到编码器之前,补丁被嵌入并进行位置编码,该编码器旨在提取能够区分真实与伪造的特征。

作者承认,当处理微妙的操作时,这尤其困难,因此他们通过构建一个结合了两种独立学习表示的编码器来解决这个问题,使用交叉注意力机制将它们融合。这旨在产生一个更敏感且更具泛化的特征空间,用于检测局部编辑。

预任务

第一种表示是一个经过掩码自编码任务训练的编码器。将视频划分为 3D 补丁(其中大部分被隐藏),然后编码器学习重建缺失的部分,迫使其捕捉重要的时空模式,例如面部运动或随时间的一致性。

预任务训练涉及掩码部分视频输入,并使用编码器-解码器设置来重建原始帧或每帧的动作单元图,具体取决于任务

然而,论文指出,这本身并不能提供足够的灵敏度来检测细粒度的编辑,因此作者引入了第二个经过训练以检测面部动作单元(AUs)的编码器。对于这个任务,模型学习从部分掩码的输入中重建每帧的密集 AU 图。这促使它专注于局部肌肉活动,许多微妙的深度伪造编辑就发生在这里。

更多的面部动作单元(FAUs 或 AUs)示例

更多的面部动作单元(FAUs 或 AUs)示例。来源:EIA Group

两个编码器经过预训练后,使用交叉注意力将它们的输出结合起来。而不是简单地合并这两组特征,模型使用基于 AU 的特征作为查询,引导对从掩码自编码中学习到的时空特征的注意力。实际上,动作单元编码器告诉模型该看哪里。

结果是一个融合的潜在表示,旨在捕捉更广泛的运动背景和局部表情级别的细节。这个组合的特征空间随后用于最终的分类任务:预测视频是真实的还是被操纵过的。

数据和测试

实现

作者使用基于 PyTorch 的 FaceXZoo 面部检测框架对输入视频进行预处理,从每个剪辑中获取 16 个以面部为中心的帧。上述预任务随后在 CelebV-HQ 数据集上进行训练,该数据集包含 35,0
00 个高质量的面部视频。

新项目中使用的 CelebV-HQ 数据集示例

一半的数据示例被掩码,迫使系统学习一般原则,而不是对源数据过拟合。

对于掩码帧重建任务,模型被训练以使用 L1 损失 预测视频帧的缺失区域,最小化原始内容与重建内容之间的差异。

对于第二个任务,模型被训练以生成 16 个面部动作单元的地图,每个单元代表眉毛、眼睑、鼻子和嘴唇等区域的微妙肌肉运动,同样由 L1 损失监督。

经过预训练后,两个编码器被融合并在 FaceForensics++ 数据集上进行微调,该数据集包含真实和被操纵的视频。

FaceForensics++ 数据集自 2017 年以来一直是深度伪造检测的基石,尽管它现在在最新的面部合成技术方面已经相当过时

为了应对 类别不平衡,作者使用了 Focal Loss(交叉熵损失 的一种变体),在训练期间强调更具挑战性的示例。

所有训练都在单个 RTX 4090 GPU 上进行,该 GPU 拥有 24Gb 的 VRAM,批量大小为 8,进行 600 个周期(对数据的完整审查),使用 VideoMAE 的预训练检查点来初始化每个预任务的权重。

测试

对多种深度伪造检测方法进行了定量和定性评估:FTCN、RealForensics、Lip Forensics、EfficientNet+ViT、Face X-Ray、Alt-Freezing、CADMM、LAANet 以及 BlendFace 的 SBI。在所有情况下,这些框架的源代码都是可用的。

测试集中在局部编辑的深度伪造上,只有源剪辑的一部分被修改。使用的架构包括 Diffusion Video Autoencoders(DVA)、Stitch It In Time(STIT)、Disentangled Face Editing(DFE)、Tokenflow、VideoP2P、Text2Live 和 FateZero。这些方法采用了多种方法(例如 DVA 使用扩散,STIT 和 DFE 使用 StyleGAN2 等)。

作者指出:

“为了确保对不同面部操作的全面覆盖,我们纳入了各种面部特征和属性编辑。对于面部特征编辑,我们修改了眼睛大小、眼睛与眉毛之间的距离、鼻子比例、鼻子与嘴巴之间的距离、嘴唇比例和脸颊比例。对于面部属性编辑,我们改变了微笑、愤怒、厌恶和悲伤等表情。”

“这种多样性对于验证我们模型在广泛局部编辑上的鲁棒性至关重要。总共,我们为上述每种编辑方法生成了 50 个视频,并验证了我们方法在深度伪造检测方面的强大泛化能力。”

旧的深度伪造数据集也被包括在测试中,分别是 Celeb-DFv2(CDF2)、DeepFake Detection(DFD)、DeepFake Detection Challenge(DFDC)和 WildDeepfake(DFW)。

评估指标为 曲线下面积(AUC)、平均精度 和平均 F1 分数。

来自论文:与最近的局部深度伪造的比较显示,所提出的方法优于所有其他方法,在 AUC 和平均精度方面比次佳方法高出 15% 至 20%

作者还提供了一个局部操纵视图的视觉检测比较(由于篇幅有限,此处仅部分复制):

真实视频经过三种不同的局部操作以产生在视觉上与原始视频相似的伪造品。此处展示了代表性帧以及每种方法的平均伪造检测分数。尽管现有的检测器在这些微妙的编辑上挣扎,但所提出的模型始终给出了较高的伪造概率,表明其对局部变化的敏感性更高

真实视频经过三种不同的局部操作以产生在视觉上与原始视频相似的伪造品。此处展示了代表性帧以及每种方法的平均伪造检测分数。尽管现有的检测器在这些微妙的编辑上挣扎,但所提出的模型始终给出了较高的伪造概率,表明其对局部变化的敏感性更高。

研究人员评论道:

“现有的最先进的检测方法(LAANet、SBI、AltFreezing 和 CADMM)在最新的深度伪造生成方法上的性能显著下降。当前最先进的方法的 AUC 低至 48% 至 71%,显示出它们对最近的深度伪造的泛化能力较差。”

“另一方面,我们的方法表现出强大的泛化能力,AUC 在 87% 至 93% 之间。在平均精度方面也有类似的趋势。如图所示,我们的方法在标准数据集上的表现也一直很高,AUC 超过 90%,并且与最近的深度伪造检测模型具有竞争力。”

在传统深度伪造数据集上的表现表明,所提出的方法与领先方法具有竞争力,表明其在多种操作类型上具有强大的泛化能力

作者指出,这些最后的测试涉及的模型可能被认为是过时的,并且是在 2020 年之前引入的。

为了更详细地展示新模型的表现,作者在论文末尾提供了一个详细的表格,此处仅部分复制:

在这些示例中,真实视频经过三种局部编辑以产生在视觉上与原始视频相似的伪造品。这些操作的平均置信度分数表明,所提出的方法比
其他领先方法更可靠地检测到了伪造品。请参阅源 PDF 的最后一页以获取完整结果

在这些示例中,真实视频经过三种局部编辑以产生在视觉上与原始视频相似的伪造品。这些操作的平均置信度分数表明,所提出的方法比其他领先方法更可靠地检测到了伪造品。请参阅源 PDF 的最后一页以获取完整结果。

作者认为,他们的方法在检测局部编辑方面的置信度分数超过了 90%,而现有的检测方法在相同任务上的表现低于 50%。他们将这一差距视为他们方法的敏感性和泛化能力的证据,以及当前技术在处理这种微妙的面部操作时面临的挑战。

为了评估模型在现实世界条件下的可靠性,并按照 CADMM 的方法,作者测试了其在经过常见失真处理的视频上的表现,包括对饱和度和对比度的调整、高斯模糊、像素化以及块状压缩伪影,以及加性噪声。

结果显示,在这些干扰下,检测精度在大多数情况下保持稳定。唯一显著的下降发生在加入高斯噪声时,这导致了性能的适度下降。其他改变影响甚微。

检测精度在不同视频失真下的变化示意图。新方法在大多数情况下保持稳定,AUC 只有小幅下降。最显著的下降发生在引入高斯噪声时

检测精度在不同视频失真下的变化示意图。新方法在大多数情况下保持稳定,AUC 只有小幅下降。最显著的下降发生在引入高斯噪声时。

这些发现,作者认为,表明该方法检测局部操作的能力不容易被视频质量的典型退化所干扰,支持其在实际设置中可能的鲁棒性。

结论

人工智能操纵在公众意识中主要以传统的深度伪造形式存在,即一个人的身份被强加到另一个人身上,后者可能正在从事与身份所有者原则相悖的行为。这种观念正在逐渐更新,以承认新型视频深度伪造的能力,以及潜在扩散模型(LDMs)的一般能力。

因此,可以合理地预期,新论文关注的这种局部编辑可能不会引起公众的注意,直到发生类似佩洛西事件的转折点,因为人们被更容易引起轰动的话题(如视频深度伪造欺诈)分散了注意力。

尽管如此,正如演员尼古拉斯·凯奇一直对后期制作过程“修改”演员表演的可能性表示担忧一样,我们也应该鼓励对这种“微妙”的视频调整有更高的认识——尤其是因为我们天生对微小的面部表情变化非常敏感,而且情境可以显著改变小的面部动作的影响(考虑在葬礼上微笑的破坏性影响,例如)。

相关文章:

探索在视频深度伪造中的细微的表情变化或对特定面部特征的小改动检测方法

概述 2019 年,美国众议院议长南希佩洛西成为了一次针对性的、技术含量相对较低的“深度伪造”式攻击的目标。真实的佩洛西视频被编辑,让她看起来像是喝醉了酒。这一不真实的事件在真相大白之前被分享了数百万次,而且在一些人没有关注后续报道…...

调用阿里云API实现身份证文字识别

TOC# 1.作者介绍 姚元帅,男,西安工程大学电子信息学院,2024级研究生 研究方向:机器视觉与人工智能 电子邮件:3183969029qq.com 乔幸荣,女,西安工程大学电子信息学院,2024级研究生&a…...

使用UFW+IPSET禁用海外IP配置持久化操作

上一章我们介绍了如何使用ufwipset禁用海外IP,但是如果服务器重启动,之前的配置就无效了,所以让配置持久化可以避免我们反复设置的麻烦。 IPSET配置持久化的方法有很多种,目前我配置成的是设置ipset后台服务,具体方法…...

深入Linux内核理解socket的本质

本文将从一个初学者的角度开始聊起,让大家了解 Socket 是什么以及它的原理和内核实现。 一、Socket 的概念 Socket 就如同我们日常生活中的插头与插座的连接关系。在网络编程中,Socket 是一种实现网络通信的接口或机制。 想象一下,插头插入…...

Python使用爬虫IP抓取数据过程

用户之前询问了不同语言的爬虫示例,特别是Python、Node.js和Ruby。现在他们希望详细扩展Python版本中使用代理IP的过程。 用户可能已经掌握了基本的爬虫编写,但遇到了IP被封的问题,或者想防止被封。他们需要知道如何集成代理IP到现有的代码中…...

通过MCP+数据库实现AI检索和分析

通过 MCP(Multi-Agent Collaboration Platform,多智能体协作平台) 数据库,实现一个AI检索和分析系统。 一、系统目标 实现通过 AI 多智能体对结构化(数据库)和非结构化(文档、文本&#xff09…...

51单片机烧录程序演示教程

51单片机烧录程序演示教程 51单片机是一种经典的8位单片机,广泛应用于嵌入式系统开发中。烧录程序是指将编译好的代码下载到单片机的存储器中,以便单片机能够按照程序运行。以下是详细的烧录流程和步骤。 所需工具和材料 硬件: 51单片机开发…...

06软件测试需求分析案例-添加用户

给职业顾问部的老师添加用户密码后,他们才能登录使用该软件。只有admin账户具有添加用户、修改用户信息、删除用户的权利。admin是经理或团队的第一个人的账号,后面招一个教师就添加一个账号。 通读需求是提取信息,提出问题,输出…...

Asp.NET Core WebApi IOptions<T>详解

IOptions<T> 是 ASP.NET Core 中用于访问配置数据的一个接口&#xff0c;它属于 Microsoft.Extensions.Options 命名空间。通过 IOptions<T>&#xff0c;你可以将配置绑定到强类型的类中&#xff0c;并在应用程序的不同部分中注入和使用这些配置。这种方式不仅使得…...

Gartner发布软件供应链安全市场指南:软件供应链安全工具的8个强制功能、9个通用功能及全球29家供应商

攻击者的目标是由开源和商业软件依赖项、第三方 API 和 DevOps 工具链组成的软件供应链。软件工程领导者可以使用软件供应链安全工具来保护他们的软件免受这些攻击的连锁影响。 主要发现 越来越多的软件工程团队现在负责解决软件供应链安全 (SSCS) 需求。 软件工件、开发人员身…...

(四十三)Dart 中的空安全与 `required` 关键字

Dart 中的空安全与 required 关键字 空安全&#xff08;Null Safety&#xff09; 空安全&#xff08;Null Safety&#xff09;是 Dart 语言的一项重要特性&#xff0c;旨在帮助开发者避免空指针异常&#xff08;NullPointerException&#xff09;。空安全通过在编译时检查变量…...

《解锁分布式软总线:构建智能设备统一管理平台》

智能设备的数量呈爆发式增长&#xff0c;从智能家居里的各类电器&#xff0c;到智能办公中的电脑、打印机&#xff0c;再到工业领域的各种自动化设备&#xff0c;不一而足。如何对这些纷繁复杂的智能设备进行有效管理&#xff0c;成为摆在我们面前的一道难题。分布式软总线技术…...

【android bluetooth 协议分析 01】【HCI 层介绍 1】【hci_packets.pdl 介绍】

在 AOSP 的蓝牙协议栈 (Gabeldorsche) 中&#xff0c;hci_packets.pdl 是一个 协议描述语言文件&#xff0c;用于定义 HCI (Host Controller Interface) 层的数据包结构和通信协议。以下是详细解析&#xff1a; 1. 文件作用 system/gd/hci/hci_packets.pdl 协议自动化生成&…...

远程升级组件设计

----------------------- | 主应用程序 | ---------------------- | 通信接口&#xff08;使用本地socket通信发送给远程升级模块进程或者线程 | (如何启动进程程execl或execv函数&#xff09;,启动线程用std::sthread。 v ---------------------- 远程升级模块 ----------…...

Kubernetes集群环境搭建与初始化

1.Kubernetes简介&#xff1a; Kubernetes是Google开源的一个容器编排引擎&#xff0c;它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时&#xff0c;通常要部署该应用的多个实例以便对应用请求进行负载均衡。 在Kubernetes中&#xff0c;我…...

Compose 适配 - 响应式排版 自适应布局

一、概念 基于可用空间而非设备类型来设计自适应布局&#xff0c;实现设备无关性和动态适配性&#xff0c;避免硬编码&#xff0c;以不同形态布局更好的展示内容。 二、区分可用空间 WindowSizeClasses 传统根据屏幕大小和方向做适配的方式已不再适用&#xff0c;APP的显示方式…...

5G_WiFi_CE_DFS

目录 一、规范要求 1、法规目录 2、定义 3、运行模式 4、主/从设备相关的运行行为及具体的动态频率选择&#xff08;DFS&#xff09;要求 5、产品角色确定测试项目 6、测试项目 测试项1&#xff1a;信道可用性检查&#xff08;Channel Availability Check&#xff09; …...

Lalamove基于Flink实时湖仓演进之路

摘要&#xff1a;本文投稿自货拉拉国际化技术部 资深数据仓库工程师林海亮老师。内容分为以下几个部分&#xff1a; 1、业务简介 2、Flink 在业务中的应用与挑战 3、实时数仓架构的 Flink 驱动演进 4、未来展望 一、业务简介 Lalamove 于2013年在香港成立&#xff0c;是货拉拉的…...

【含文档+PPT+源码】基于微信小程序的卫生院预约挂号管理系统的设计与实现

项目视频介绍&#xff1a; 毕业作品基于微信小程序的卫生院预约挂号管理系统的设计与实现 课程简介&#xff1a; 本课程演示的是一款基于微信小程序的卫生院预约挂号管理系统的设计与实现&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习…...

人工智能100问☞第2问:机器学习的核心原理是什么?

目录 一、通俗解释 二、专业解析 三、权威参考 机器学习的核心原理是​​通过数据训练模型,使计算机自动发现数据中的内在规律或模式,并利用这些规律对新数据做出预测或决策​​。这一过程强调数据驱动(从经验中学习)、模型优化(通过损失函数和参数调整提升性能)以及泛…...

【深度学习基础】——机器的神经元:感知机

感知机模型的原理之前已经讲过&#xff08;【感知机模型 - CSDN App】https://blog.csdn.net/2401_88885149/article/details/145563837?sharetypeblog&shareId145563837&sharereferAPP&sharesource2401_88885149&sharefromlink&#xff09;但主要是从数学和机…...

OpenCV 图形API(29)图像滤波-----GMat类

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::GMat 是 OpenCV 的 G-API 模块中的一个核心类&#xff0c;用于定义计算图中的数据节点。G-API 是 OpenCV 中的一个模块&#xff0c;旨在通过…...

spark的堆外内存,是在jvm内还是操作系统内存内?

在 Apache Spark 中&#xff0c;堆外内存&#xff08;Off-Heap Memory&#xff09;是直接分配在操作系统的物理内存中&#xff0c;而非 JVM 堆内内存。以下是详细的解释&#xff1a; 1. 堆外内存的本质 操作系统管理 Spark 的堆外内存直接通过操作系统分配&#xff08;例如使用…...

AD9253 LVDS 高速ADC驱动开发

1、查阅AD9253器件手册 2、查阅Xilinx xapp524手册 3、该款ADC工作在125Msps下&#xff0c;14bit - 2Lane - 1frame 模式。 对应&#xff1a;data clock时钟为500M DDR mode。data line rate&#xff1a;1Gbps。frame clock&#xff1a;1/4 data clock 具体内容&#xff1a;…...

swift菜鸟教程14(闭包)

一个朴实无华的目录 今日学习内容&#xff1a;1.Swift 闭包1.1闭包定义1.2闭包实例1.3闭包表达式1.3.1sorted 方法&#xff1a;据您提供的用于排序的闭包函数将已知类型数组中的值进行排序。1.3.2参数名称缩写&#xff1a;直接通过$0,$1,$2来顺序调用闭包的参数。1.3.3运算符函…...

【HarmonyOS NEXT+AI】问答02:有一点编程基础,可以学不?

在“HarmonyOS NEXTAI大模型打造智能助手APP(仓颉版)”课程里面&#xff0c;有学员问&#xff0c;有一点编程基础&#xff0c;可以学不&#xff1f; 这里统一做下回复。 学习本课程只需要掌握任一编程语言即可&#xff0c;拥有JavaScript、TypeScript、ArkTS或Java语言基础更佳…...

maven 依赖的优先级

最短路径优先 工程中依赖了a、b两个jar包&#xff0c; 在a jar包内引用了b jar包版本为1.0&#xff0c;路径为&#xff1a;Project > a > b(1.0) 工程中直接依赖的b jar包版本为2.0&#xff0c;路径为&#xff1a;Project > b(2.0) 由于b(2.0)路径最短&#xff0…...

Java实现音频录音播放机功能

Java实现一个简单的音频录音和播放功能&#xff0c;使用Swing创建图形用户界面&#xff0c;利用Java Sound API进行音频处理。下面是对此程序的详细剖析&#xff1a; 一、程序结构 程序主要由以下几个部分组成&#xff1a; RecorderFrm类&#xff1a;主框架类&#xff0c;继承自…...

OpenCV 图形API(26)图像滤波-----方框滤波函数boxFilter()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 使用方框滤波器模糊图像。 该函数使用以下内核来平滑图像&#xff1a; K α [ 1 1 … 1 1 1 … 1 ⋮ ⋮ ⋱ ⋮ 1 1 … 1 ] K \alpha \begin{b…...

oracle 表空间(Tablespace)

在 Oracle 11g 中&#xff0c;表空间&#xff08;Tablespace&#xff09; 是数据库存储架构的核心逻辑单元&#xff0c;其原理基于 逻辑存储与物理存储的分离&#xff0c;通过分层管理数据文件、段&#xff08;Segment&#xff09;、区&#xff08;Extent&#xff09;和数据块&…...

Git 高级操作

Git不仅是代码管理的基石工具&#xff0c;更是开发者提升效率的瑞士军刀。掌握基础操作只是起点&#xff0c;真正的高手都在使用进阶技巧优化工作流。本文将深入解析Git四大高阶操作&#xff0c;助你轻松应对复杂开发场景&#xff01; 一、交互式暂存&#xff1a;精准控制提交粒…...

Go:程序结构

文章目录 名称声明变量短变量声明指针new 函数变量的生命周期 赋值多重赋值可赋值性 类型声明包和文件导入包初始化 作用域 名称 命名规则&#xff1a; 通用规则&#xff1a;函数、变量、常量、类型、语句标签和包的名称&#xff0c;开头须是字母&#xff08;Unicode 字符 &a…...

sqlserver2017 分离附加数据库

分离数据库 分离数据库是指将数据库从 SQL Server 实例中移除&#xff0c;但会完整保留数据库及其数据文件和事务日志文件。 然后可以使用这些文件将数据库附加到任何 SQL Server 实例&#xff0c;包括分离该数据库的服务器。 如果存在下列任何情况&#xff0c;则不能分离数据…...

QuarkPi-CA2 RK3588S卡片电脑:6.0Tops NPU+8K视频编解码+接口丰富,高性能嵌入式开发!

QuarkPi-CA2 RK3588S卡片电脑&#xff1a;6.0Tops NPU8K视频编解码接口丰富&#xff0c;高性能嵌入式开发&#xff01; 芯片框架 视频介绍 https://www.bilibili.com/video/BV1btdbYkEjY 开发板介绍 核心升级&#xff0c;产品炸裂 QuarkPi-CA2卡片电脑搭载瑞芯微RK3588S芯片…...

对称加密与非对称加密与消息摘要算法保证https的数据交互的完整性和保密性

一、对称加密与非对称加密的作用 1. 对称加密 作用&#xff1a; 保密性&#xff1a;对称加密使用相同的密钥对数据进行加密和解密&#xff0c;确保数据在传输过程中不被窃听。效率&#xff1a;对称加密算法&#xff08;如AES&#xff09;计算速度快&#xff0c;适合加密大量数…...

Lab Cloud FPGA 硬件在线实验云平台介绍

友晶科技依托其在FPGA技术领域的深厚积累&#xff0c;成功研发出了一套完整的FPGA云平台解决方案&#xff08;即FPGA 硬件在线实验云&#xff0c;简称LabCloud &#xff09;。LabCloud 是一个高效、实用的学习平台&#xff0c;目前已在多个学校成功部署。 LabCloud 是通过 B/S …...

相机回调函数为静态函数原因

在注册相机SDK的回调函数时&#xff0c;是否需要设置为静态函数取决于具体SDK的设计要求&#xff0c;但通常需要遵循以下原则&#xff1a; 1. 必须使用静态函数的情况 当相机SDK是C语言接口或要求普通函数指针时&#xff0c;回调必须声明为静态成员函数或全局函数&#xff1a;…...

实验室纯水器实验室超纯水机(常见类型、选型建议、维护保养)

不同实验室用水级别有何差异&#xff1f; 实验室用水级别由ASTM或ISO 3696等质量标准定义&#xff0c;有助于特定应用选择适合的水质。这些标准也考虑了生产成本&#xff0c;如1级(Type 1)超纯水的生产成本远高于2级(Type 2)或3级(Type 3)纯水。 1级超纯水 不含离子&#xff…...

腾讯云COS与ZKmall 开源商城的存储集成方案

ZKmall 开源商城与腾讯云对象存储&#xff08;COS&#xff09;的集成&#xff0c;可通过云端资源托管、自动化数据同步、高性能存储架构实现本地存储负载降低与访问效率提升。以下是基于搜索结果的集成路径与核心优化点&#xff1a; 一、存储架构升级&#xff1a;本地与云端协同…...

Python 深度学习实战 第3章 Keras和TensorFlowKeras 训练和评估模型实例

Python 深度学习实战 第3章 Keras和TensorFlow&Keras 训练和评估模型实例 内容概要 第3章介绍了Keras和TensorFlow的基本概念及其关系&#xff0c;并指导如何设置深度学习工作区。本章还概述了核心深度学习概念如何转化为Keras和TensorFlow API。通过本章&#xff0c;读者…...

基于SpringBoot的动物救助中心系统(源码+数据库)

500基于SpringBoot的动物救助中心系统&#xff0c;本系统共分为2个角色&#xff1a;系统管理员、用户&#xff0c;主要功能如下 【管理员】&#xff1a; 1. 登录&#xff1a;管理员可以通过登录系统来管理各种功能。 2. 用户管理&#xff1a;管理员可以查看用户列表&#xff0…...

【多模态大模型】《Qwen2.5-Omni》 论文解读

《Qwen2.5-Omni&#xff1a;重新定义端到端全模态大模型的技术范式》 论文解读 论文&#xff1a; https://arxiv.org/abs/2503.20215 &#xff08;2025.03.26&#xff09;代码&#xff1a; https://github.com/QwenLM/Qwen2.5-OmniNews&#xff1a; https://mp.weixin.qq.com/…...

go 通过汇编分析函数传参与返回值机制

文章目录 概要一、前置知识二、汇编分析2.1、示例2.2、汇编2.2.1、 寄存器传值的汇编2.2.2、 栈内存传值的汇编 三、拓展3.1 了解go中的Duff’s Device3.2 go tool compile3.2 call 0x46dc70 & call 0x46dfda 概要 在上一篇文章中&#xff0c;我们研究了go函数调用时的栈布…...

蓝桥杯C/C++省赛/国赛注意事项及运行环境配置

大佬的蓝桥杯考前急救指南 对拍&#xff08;手动生成测试数据&#xff09;代码&#xff1a; #include <bits/stdc.h> // 包含所有标准库的头文件 using namespace std; // 使用标准命名空间int main() {srand(time(0)); // 设置随机数种子为当前时间&#xff0c;确保每次…...

CSS高度坍塌?如何解决?

一、什么是高度坍塌&#xff1f; 高度坍塌&#xff08;Collapsing Margins&#xff09;是指当父元素没有设置边框&#xff08;border&#xff09;、内边距&#xff08;padding&#xff09;、内容&#xff08;content&#xff09;或清除浮动时&#xff0c;其子元素的 margin 会…...

redis的基本使用

简介 redis&#xff0c;Remote Dictionary Server&#xff0c;远程字典服务&#xff0c;一个基于内存的、存储键值对的数据库。redis是开源的&#xff0c;使用C语言编写。因为redis的数据是存储在内存中的&#xff0c;所以redis通常被用来做数据库的缓存 优点&#xff1a; re…...

【蓝桥杯】单片机设计与开发,第十二届

/*头文件声明区*/ #include <STC15F2K60S2.H>//单片机寄存器头文件 #include <init.h>//初始化底层驱动头文件 #include <led.h>//led,蜂鸣器,继电器底层驱动头文件 #include <key.h>//按键底层驱动头文件 #include <seg.h>//数码管底层驱动头…...

主流时序数据库深度对比:TDengine、InfluxDB与IoTDB的技术特性、性能及选型考量

目录 引言 一、 核心架构与技术特性对比 1.1、 TDengine&#xff1a;面向物联网的特定优化 1.2. InfluxDB&#xff1a;成熟的通用时序平台 1.3. Apache IoTDB&#xff1a;面向工业场景的精细化设计 二、 核心性能指标对比分析 2.1、写入性能 2.2、查询性能 三、 关键技…...

使用人工智能大模型腾讯元宝,如何免费快速做高质量的新闻稿?

今天我们学习使用人工智能大模型腾讯元宝&#xff0c;如何免费快速做高质量的新闻稿&#xff1f; 手把手学习视频地址&#xff1a;https://edu.csdn.net/learn/40402/666431 第一步在腾讯元宝对话框中输入如何协助老师做新闻稿&#xff0c;通过提问&#xff0c;我们了解了老师…...

国产Linux系统统信安装redis教程步骤

系统环境 uname -a Linux FlencherHU-PC 6.12.9-amd64-desktop-rolling #23.01.01.18 SMP PREEMPT_DYNAMIC Fri Jan 10 18:29:31 CST 2025 x86_64 GNU/Linux官网下载源码包并解压 下载链接 https://download.redis.io/releases/redis-7.0.15.tar.gz?_gl11h424d3_gcl_au*ODQ5…...