论文速读:《CoM:从多模态人类视频中学习机器人操作,助力视觉语言模型推理与执行》
论文链接:https://arxiv.org/pdf/2504.13351
项目链接:https://chain-of-modality.github.io/
0. 简介
现代机器人教学的一个重要方向是让机器人通过观看人类的视频演示,自动学习并执行复杂的物理操作任务,比如拧瓶盖、插插头、打鼓等。然而,单纯依靠视觉信息,机器人很难捕捉到诸如施力大小、动作力度等细节参数,导致执行效果不佳。最新工作《Chain-of-Modality: Learning Robot Manipulation from Multimodal Human Videos via Visual Language Models》提出了一种创新性的“模态链”(Chain-of-Modality,简称CoM)方法,结合视觉、肌肉电信号和声音等多模态人类演示数据,利用视觉语言模型(VLM)逐步推理,显著提升机器人对任务计划和控制参数的理解与执行能力。
图1:我们提出了链式模态(Chain-of-Modality, CoM)这一提示策略,使得视觉语言模型(VLM)能够从包含力或音频信息的单一多模态视频中识别出人类的任务计划,并生成相应的机器人控制代码以再现该任务。
传统机器人学习多依赖于视觉视频,但很多操作任务需要细粒度的控制参数,尤其是力度和速度,这些信息仅靠视频难以准确推断。本文提出:
- 利用带有肌电(EMG)传感器的臂带捕捉人体肌肉活动,以及带麦克风的运动相机捕捉操作时的声音,补充视觉信息;
- 引入“模态链”提示策略,使VLM能依次分析不同模态数据,逐步整合信息,推理出详细的任务计划和多样化的控制参数;
- 生成机器人可执行的代码,支持跨机器人平台执行,并能泛化到未见物体和新任务。
实验结果显示,CoM相比传统纯视觉方法,任务计划和控制参数提取准确率提升3倍,机器人执行成功率达73%,在新物体和新环境下表现依然稳健。
1. 主要贡献
- 模态链(CoM)提示策略:创新地设计了一个分阶段、多模态顺序推理流程,避免了简单多模态融合时的信息丢失和模态间关联困难,显著提升VLM对复杂多模态输入的理解力。
- 一次性多模态演示视频到机器人代码生成:实现了从单个融合视觉、力和声音信息的人类演示视频,自动生成细粒度操作任务的机器人控制程序。
- 强泛化能力:所生成的代码抽象了具体机器人实现,支持不同机器人平台(如ViperX、KUKA双臂机器人)执行,并能适应未见的物体和随机环境布置。
2. 相关工作
2.1 从视频中理解人类活动
理解视频中的人类活动是计算机视觉领域长期关注的主题。早期研究多聚焦于通过动作分类捕捉视频的高级语义信息,但这类方法往往依赖特定训练数据,难以泛化到未见动作类别。后来,研究者开始尝试从视频中推断更细粒度的任务计划,试图理解动作背后的意图与步骤,但仍存在泛化能力不足的问题。
近年来,随着大型视觉语言模型(Vision-Language Models, VLMs)的兴起,基于提示的推理技术使得模型在理解视频中的人类活动方面取得了显著进展。相比传统方法,VLM能够结合视觉和语言信息,更灵活地解析复杂动作序列。然而,现有工作大多只利用单一视觉模态,忽视了力和声音等关键信息的融合,限制了对细粒度操作细节的捕获。本文则创新性地引入多模态视频数据,结合肌肉信号和物体交互声音,使模型能够理解操作过程中的隐含力学信息,为机器人操作任务提供关键支持。
2.2 机器人与控制的基础模型
近年来,基础模型在机器人领域实现了从高层任务推理到低层运动控制的跨越。早期工作通常依赖自然语言描述来指导机器人规划和决策,任务通过语言指令定义,适用于许多场景。但对于空间模糊性强或需要精细控制的操作任务,单纯语言描述难以准确表达细节。
视觉语言模型的发展引入了更丰富的任务规范,例如视觉注释和图像指令,增强了任务表达能力。本文的方法进一步突破,采用单次多模态人类演示视频作为任务规范,使机器人能够直接从示范中提取任务计划及控制参数。
在机器人控制的实现上,已有多种基于基础模型的方案,例如基于目标条件的子目标选择、轨迹优化的奖励或约束生成,以及利用感知和控制原语生成代码。与这些多依赖语言输入的方案不同,本文展示了视觉语言模型如何直接从单次多模态视频输入推理,生成低级操作程序,为机器人执行新任务提供了富含视觉提示的替代路径。
2.3 从人类视频中学习操作
大量研究探索通过人类视频教机器人操作技能,聚焦于从视频中提取物体功能、运动轨迹、任务动态和奖励表示等信息。其中部分工作训练基于视频条件的操作策略,避免依赖语言指令,提升了策略的灵活性和泛化性。
然而,这些方法普遍只利用图像序列,难以推断许多操作任务所需的重要细节——尤其是力的大小和施加时机等隐性信息。力的准确感知对于如插入插头、拧瓶盖等接触丰富的任务至关重要。
本文则通过引入多种传感模态,包括图像、肌肉电信号(EMG)和交互声音,捕捉操作过程中的细微力学变化,弥补了纯视觉方法的不足,使机器人能够更全面理解人类示范,提升操作的精细度和成功率。
3. 核心方法详解:从多模态人类视频学习
3.1 多模态人类演示视频采集
视频本身难以捕获细粒度的力信息。以插入电源插头任务为例,人类会先施加轻微力调整方向,随后加大力度完成插入。这些力的变化对成功完成任务至关重要,但仅靠视频难以观察。
为此,系统采集了包含以下模态的数据:
- RGB图像:记录操作环境与手部动作。
- 肌肉信号(EMG):通过带肌肉传感器的臂带采集,反映施力时机和强度。
- 物体交互声音:通过麦克风捕捉操作过程中的声音,辅助识别动作阶段。
- 手部姿态:利用视觉方法估计指尖位置,补充动作细节信息。
这些模态数据按时间同步,提供了人类操作任务更加全面且细致的表征。
图 2:模态链(以力为例)的概述。 (a) 基线方法 - 合并:将多模态信息(视觉、力和手势)合并为一个单一的输入批次,并直接查询VLM生成最终答案。 (b) 模态链(CoM):逐步分析每种模态,精炼分析以生成最终答案。例如:首先,VLM利用力数据确定何时施加力。然后,结合手势信息,推断出人类正在抓取和扭动物体。接下来,利用图像数据,VLM将该动作识别为扭动瓶盖。最后,VLM将CoM分析转换为可供机器人执行的Python程序,以重现该任务。
3.2 模态链(Chain-of-Modality, CoM)推理策略
传统做法是将所有模态信息交织输入视觉语言模型(VLM),但实验发现顶尖VLM(例如Gemini 1.5 Pro、GPT-4o)往往难以有效关联不同模态,导致信息遗漏或误用。
为此,提出模态链(CoM),一种分阶段、顺序提示策略:
- 第一阶段:分析力或声音信号,定位施力的时间点和次数。
- 第二阶段:结合手部姿态信息,识别具体动作(如抓握、扭转)及其细节(旋转方向和角度)。
- 第三阶段:整合视觉图像,确定操作的具体物体及手部交互关系,完善整体任务计划。
通过逐步整合各模态信息,CoM能有效避免模态间的干扰和信息缺失,提升推理准确率和细节丰富度。
3.3 机器人代码生成
基于CoM得到的动作序列,系统利用同一视觉语言模型生成包含低级API调用的机器人控制代码。代码不仅规划动作顺序,还细化控制参数,如施力大小、运动方向和时序。
示例:
Move_to('left', Find('bottle'))
Grasp('left')
Move_to('right', Find('bottle_cap'))
for _ in range(3):Grasp('right')Twist('right', 'counterclockwise', 180)
Release('right')
Twist('right', 'clockwise', 180)
针对接触丰富的任务,如插入电源插头,代码还包含力的参数:
Grasp('right', 'plug', 100)
Move_to('right', 'box', 20)
Insert('right', 'power_strip', 100)
这些代码通过开放词汇API与感知系统结合,实现对新物体和未见配置的泛化执行。
3.4 实现细节
- 信号处理:肌肉信号8通道采样200Hz,下采样匹配60Hz视频帧率,取最大值作为力信号;音频计算响度作为声音输入;手部姿态通过HaMeR定位指尖像素。
- 机器人感知:利用Gemini 1.5 Pro查询RGB-D图像和目标物体名称,生成2D边界框并结合深度信息构建3D点云,估计物体位置,简化程序与机器人感知的连接。
4. 实验与分析
4.1 实验设计
- 多模态视频分析任务:4类操作(按压、插插头、打鼓、开瓶),每类10个不同物体/视角视频;
- 真实机器人执行任务:开瓶、插插头、擦板、打鼓,跨ViperX和KUKA双臂机器人平台,测试泛化能力;
- 基线方法:包括纯视觉、无力信号、无手势、直接合并模态等多种组合和推理方式。
图3:实验任务概述。(a) 多模态人类视频输入:我们的框架处理单次拍摄的人类视频,结合力传感器或音频数据,利用模态链提取任务计划和控制参数,然后生成机器人控制程序。(b) 机器人代码执行:机器人执行该程序,以复制视频中观察到的任务。© 评估设置:我们在不同的实验设置中评估生成程序的性能。
4.2 关键实验结果
- 模态链显著提升理解能力:CoM准确率达60%,远超直接合并模态的17%和纯视觉的0%,相似度分数提升42%;
- 力信号关键性:无力信号时任务计划准确率接近0,力信息帮助模型准确划分任务阶段和力度变化;
- 手部姿态提升细节解析:帮助区分抓握与扭转动作,识别手指旋转方向和力度变化,细粒度动作识别准确率明显提高;
- 机器人执行成功率高达73%:包括多种未见物体和随机场景,跨机器人平台稳定执行,远超纯视觉基线(0%成功率);
- 典型任务表现:
- 开瓶任务:7种不同瓶子,成功率60%-75%;
- 插插头任务:20次尝试成功15次;
- 打鼓任务:成功再现力度差异,成功率80%。
图4:链式模态的定性结果。我们展示了CoM为四个评估视频生成的任务计划。CoM成功地将视频分割成多个子任务,并在每个阶段明确了所需的技能、力量和目标对象。
5. 结论
本文提出的模态链(CoM)方法,通过顺序整合视觉、肌电和声音等多模态人类演示数据,显著提升了视觉语言模型对复杂操作任务的理解能力。基于CoM的多模态推理不仅能精准提取任务计划和细粒度控制参数,还能自动生成机器人可执行代码,实现跨平台的泛化操作。实验证明,加入力和手部姿态信息是提升机器人操作精度的关键,模态链提示策略有效解决了多模态信息融合难题。
相关文章:
论文速读:《CoM:从多模态人类视频中学习机器人操作,助力视觉语言模型推理与执行》
论文链接:https://arxiv.org/pdf/2504.13351 项目链接:https://chain-of-modality.github.io/ 0. 简介 现代机器人教学的一个重要方向是让机器人通过观看人类的视频演示,自动学习并执行复杂的物理操作任务,比如拧瓶盖、插插头、打…...
系统思考:选择大于努力
在今年的伯克希尔哈撒韦股东大会上,94岁高龄的股神巴菲特再次以他的智慧和幽默,给年轻人留下了三句关于人生的黄金建议。让我印象最深刻的是:“选择和谁一起走,比怎么走更重要。” 这一句话让我反思了许多——人生的轨迹不单单是…...
【HTML5】显示-隐藏法 实现网页轮播图效果
【HTML5】显示-隐藏法 实现网页轮播图效果 实现思路:先将所有图片在页面中设置好,然后给放置图片的元素li添加display:none属性将其隐藏,然后通过js获取到放置图片的元素li,再一个一个的给li元素添加displayÿ…...
Jenkins 改完端口号启动不起来了
让我们将 Jenkins 恢复到默认的 8080 端口,确保它能正常启动: 1. 修改 Jenkins 的配置文件: sudo nano /etc/default/jenkins 将内容修改为: HTTP_PORT8080 JENKINS_ARGS"--webroot/var/cache/jenkins/war --httpPort8080…...
招标专家随机抽选——设计讲解—未来之窗智能编程——仙盟创梦IDE
招标专家系统 专家评标系统是服务于各类招标评标活动的数字化平台。它依托先进信息技术,集专家库管理、随机抽取专家、在线评标等功能于一体。系统依据项目需求设定筛选条件,从庞大专家库中精准抽取合适专家。评标时,专家可在线查阅投标文件…...
Os 库报错指南 路径处理常见陷阱
平台分隔符差异 Windows用\,Unix用/ → 使用os.path.join()自动处理 路径解析错误 os.path.abspath()解析相对路径时依赖当前工作目录 路径规范化缺失 ../等符号链接需用os.path.normpath()规范化 # 不推荐 path dir\\file.txt # Windows风格 path dir/file.…...
GD32/STM32 ADC/DMA使用指南
首先我们对ADC及DMA的基础知识作一下简单介绍。 一、 GD32/STM32 ADC模块的核心要点 一)、ADC基础特性 12位逐次逼近型 GD32/STM32 ADC为12位分辨率,最大量化值为4095(对应3.3V参考电压),支持0-3.3V模拟输入范…...
CSS Border 三角形阴影与多重边框的制作
CSS Border 三角形阴影与多重边框的制作 在现代网页设计中,CSS的强大功能让设计师和开发者能够创造出丰富多彩的视觉效果。本文将深入探讨如何利用CSS的border属性制作三角形阴影以及多重边框效果。这些技巧不仅能提升页面的美观度,还能增强用户体验。…...
ES6/ES11知识点 续五
迭代器【Iterator】 ES6 中的**迭代器(Iterator)**是 JavaScript 的一种协议,它定义了对象如何被逐个访问。迭代器与 for…of、扩展运算符、解构赋值等语法密切相关。 📘 迭代器工作原理 ES6 迭代器的工作原理基于两个核心机制…...
如何选择 边缘计算服务器
边缘计算服务器选型指南(2025年更新版) 一、明确应用场景需求 场景细分 工业控制、自动驾驶等需毫秒级响应的场景,优先选择集成多核处理器(如Xeon D系列)和实时算法加速模块的机型,确保延迟≤50ms&…...
VMware如何安装?Ubuntu详细步骤
VMware如何安装?Ubuntu详细步骤如下: 在VMware中安装Ubuntu是一个常见的操作,适用于开发、测试或学习Linux的场景。以下是详细的实战步骤和注意事项,帮助你顺利完成安装。 准备工作 软件下载: VMware Workstation/Play…...
【Bootstrap V4系列】学习入门教程之 组件-卡片(Card)高级用法
【Bootstrap V4系列】学习入门教程之 组件-卡片(Card)高级用法 一、Sizing 尺寸1.1 Using grid markup 使用网格标记1.2 Using utilities 使用实用程序1.3 Using custom CSS 使用自定义CSS 二、Text alignment 文本对齐方式三、Navigation 导航 一、Sizi…...
WiFi那些事儿(八)——802.11n
目录 802.11n 技术简介与测试项 一、802.11n 技术简介 (一)标准概述 (二)关键技术特性 1. MIMO(多输入多输出)技术 2. 信道绑定(Channel Bonding) 3. 帧聚合(Fram…...
Transformer数学推导——Q56 推导动态残差门控(Dynamic Residual Gating)的权重更新公式
该问题归类到Transformer架构问题集——残差与归一化——残差连接。请参考LLM数学推导——Transformer架构问题集。 1. 引言 在深度学习的演进历程中,网络结构的创新始终围绕着如何更高效地处理信息、提升模型性能展开。动态残差门控(Dynamic Residual…...
Kaggle——House Prices(房屋价格预测)简单实现
题目: 从Kaggle的“House Prices - Advanced Regression Techniques”数据集使用Pandas读取数据,并查看数据的基本信息。选择一些你认为对房屋价格有重要影响的特征,并进行数据预处理(如缺失值处理、异常值处理等)。…...
Vue项目Git提交流程集成
Vue项目Git提交流程集成 本教程将指导你如何在Vue项目中集成一个规范化的Git提交流程,包括代码规范检查、提交信息规范和自动化工具配置。 前置条件 Node.js 14.0 和 npm/yarn/pnpmVue项目(Vue 2或Vue 3均可)Git已初始化的仓库 一、规范化…...
使用 OpenSSL 吊销 Kubernetes(k8s)的 kubeconfig 里的用户证书
一.用 OpenSSL 依据已有的自签名 CA 注销签发的证书的步骤 1. 准备工作 你得有自签名 CA 的私钥(通常是 .key 文件)、CA 证书(通常是 .crt 文件)以及证书吊销列表(CRL)文件。若还没有 CRL 文件,…...
kubeadm部署k8s
我在阿里云上部署的k8s master 4c/8g/40g rocky linux8.9 node1/node2 2c/4g/40g rocky linux8.9 安装docker (我安装的是v1.19.1版本,是旧版本,可以装新版本,docker的版本和kubeadm,kubectl,kubelet版本相同) 1.所有…...
FPGA实战项目1——坦克大战
FPGA实战项目1——坦克大战 根据模块化思想,可将此任务简单的进行模块拆分: 系统原理,模块划分,硬件架构,算法支持,Verilog实现框架 一,系统总体原理 1. 核心设计思想 硬件并行处理&#x…...
LeetCode 1781. 所有子字符串美丽值之和 题解
示例 输入:s "aabcb" 输出:5 解释:美丽值不为零的字符串包括 ["aab","aabc","aabcb","abcb","bcb"] ,每一个字符串的美丽值都为 1这题光用文字解说还是无法达到讲…...
Spring Web MVC————入门(1)
今天开始正式带大家学习Spring部分的内容了,大家尝试去弄个专业版嗷,学习起来爽一点 在idea中下载这个插件就行了 我们之后开始创建Spring项目, 蓝色 部分自己起名,type选Maven,其他的默认就好了,之后nex…...
关于 js:1. 基础语法与核心概念
js 全称 JavaScript(简称 JS),是 一种运行在浏览器和服务器端的脚本语言。 用途: 浏览器端交互(如:点击按钮出现弹窗) 网页动态内容渲染(如:淘宝、京东页面更新…...
云境天合水陆安全漏电监测仪—迅速确定是否存在漏电现象
云境天合水陆安全漏电监测仪是一种专为水下及潮湿环境设计的电气安全检测设备,通过高灵敏度电磁传感器探测漏电电流产生的交变磁场,基于法拉第电磁感应定律,自动区分高灵敏度信号和低灵敏度信号,精准定位泄漏电源的具体位置。一旦…...
二、Hadoop狭义和广义的理解
作者:IvanCodes 日期:2025年5月6日🫠 专栏:Hadoop教程 Hadoop 的双重身份:核心框架与生态系统 在大数据领域,Hadoop 是一个广为人知的概念,但它并非单指某一个软件,而是涵盖了两个层…...
DTU_DTU厂家_5G/4G DTU终端_DTU模块_厦门计讯物联科技有限公司
在物联网蓬勃发展的当下,数据的高效、稳定、可靠的传输成为关键。厦门计讯物联科技有限公司(以下简称“计讯物联”)作为国内工业物联网领域的核心厂商,专注于5G/4G DTU终端、DTU模块及无线数传设备的研发与生产,致力于为智慧城市、能源电力、…...
学习alpha,第2个alpha
alphas (-1 * ts_corr(rank(ts_delta(log(volume), 2)), rank(((close - open) / open)), 6)) 先分析操作符从左到右 ts_corr: Pearson 相关度量两个变量之间的线性关系。当变量呈正态分布且关系呈线性时,它最有效。 ts_corr(vwap, close, 20)是一个计算时间序列相…...
如何用爬虫获得按关键字搜索淘宝商品
在电商领域,获取淘宝商品的详细信息对于市场分析、选品上架、库存管理和价格策略制定等方面至关重要。淘宝作为国内知名的电商平台,提供了丰富的商品资源。通过 Python 爬虫技术,我们可以高效地获取淘宝商品的详细信息,包括商品名…...
Android SDK 开发中的 AAR 与 JAR 区别详解
在 Android SDK 开发中,构建项目时我们常常会看到生成两个不同的文件:一个是 build/outputs/aar/*.aar,另一个是 build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar。很多初学者会疑惑:它们之间有什么区别&am…...
Python cv2滤波与模糊处理:从原理到实战
在图像处理领域,滤波与模糊是预处理阶段的两大核心操作,既能消除噪声干扰,又能实现艺术化效果。本文将结合OpenCV的cv2库,系统讲解滤波与模糊的原理及Python实现,带你从理论到实战全面掌握这项技术。 一、滤波与模糊的…...
【SpringBoot3】idea找不到log符号
解决idea找不到log符号,Slf4j注解不起作用 如图 解决办法 pom.xml文件里要手动添加版本号 插件也要添加对应的版本号 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30&l…...
Android学习总结之Java和kotlin区别
一、空安全机制 真题 1:Kotlin 如何解决 Java 的 NullPointerException?对比两者在空安全上的设计差异 解析: 核心考点:Kotlin 可空类型系统(?)、安全操作符(?./?:)、非空断言&…...
C++笔记-二叉搜索树(包括key,key/value搜索场景等)
1.二叉搜索树的概念 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树: 1.若它的左子树不为空,则左子树上所有结点的值都小于等于根结点的值若它的右子树不为空,则2.右子树上所有结点的值都大于等于根结点…...
【从零开始学习RabbitMQ | 第二篇】生成交换机到MQ的可靠性保障
目录 编辑前言 交换机 Direct交换机与Fanout交换机的差异 Topic交换机 Topic交换机相比Direct交换机的差异 生成我们的交换机,队列,以及绑定关系 基于代码去生成交换机和队列 基于注解去声明队列和交换机 消息转换器 消息队列的高可靠性 发送…...
在 Sheel 中运行 Spark:开启高效数据处理之旅
在大数据处理领域,Apache Spark 凭借其强大的分布式计算能力,成为了众多开发者和企业处理海量数据的首选工具之一。而 Sheel 作为一种便捷的运行环境,在其中运行 Spark 可以充分发挥两者优势,实现高效的数据处理与分析。本文将详细…...
前端、XSS(跨站脚本攻击,Cross-Site Scripting)
XSS 攻击的三种主要类型 存储型 XSS(持久型) 原理:恶意脚本被永久存储在服务器(如数据库、评论内容),用户访问包含恶意脚本的页面时触发示例:攻击者在论坛的评论区提交 ,其他用户查…...
第六节:图像基本操作-像素级操作
一、数字图像处理基础 1.1 图像数字化原理 数字图像本质上是二维离散信号,由按矩阵排列的像素点构成。每个像素点的数值代表特定位置的亮度或色彩信息... 1.2 OpenCV核心数据结构 import cv2 import numpy as np# 读取图像文件 img cv2.imread(image.jpg)# 获取…...
【东枫科技】代理销售 NVIDIA DGX Spark 您的桌上有一台 Grace Blackwell AI 超级计算机。
NVIDIA GB10 Grace Blackwell超级芯片 FP4 AI 性能达到 1,000 AI TOPS 128GB 一致、统一的系统内存 ConnectX-7 智能网卡 高达 4TB 存储空间 150毫米长 x 150毫米宽 x 50.5毫米高 NVIDIA DGX™ Spark 搭载 NVIDIA GB10 Grace Blackwell 超级芯片,以节能紧凑的外形提…...
即插即用!长安汽车复旦提出LMPOcc:长期记忆先验实现占用预测任务新SOTA
导读 在基于视觉的自动驾驶感知算法当中,3D语义占用预测任务可以出色的对静态场景和动态目标同时进行建模,实现细粒度的场景理解,目前受到了来自学术界和工业界的广泛关注。 ©️【深蓝AI】编译 论文题目:ConRFT: A Reinfo…...
Kubernetes弹性伸缩:让应用自动应对流量洪峰与低谷
🚀 Kubernetes弹性伸缩:让应用自动应对流量洪峰与低谷 🌍 什么是弹性伸缩? 弹性伸缩(Auto Scaling)是指系统能够根据实时负载自动调整计算资源,以优化性能并降低成本。在 Kubernetes࿰…...
深入解析 Linux/Unix 通信机制:从原理到观测实践
深入解析 Linux/Unix 通信机制:从原理到观测实践 配图建议:Linux系统架构与通信机制全景示意图 一、开篇:理解“一切皆文件”的哲学 Unix/Linux 操作系统的核心灵魂在于其独特的设计哲学。当 Dennis Ritchie 和 Ken Thompson 在贝尔实验室开…...
Vue 2.0 详解全教程(含 Axios 封装 + 路由守卫 + 实战进阶)
目录 一、Vue 2.0 简介1.1 什么是 Vue?1.2 Vue 2.x 的主要特性 二、快速上手2.1 引入 Vue2.2 创建第一个 Vue 实例 三、核心概念详解3.1 模板语法3.2 数据绑定3.3 事件绑定3.4 计算属性 & 侦听器 四、组件系统4.1 定义全局组件4.2 单文件组件(*.vue …...
《Python星球日记》 第36天:线性代数基础
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏:《Python星球日记》,限时特价订阅中ing 目录 一、标量、…...
使用 Spring Boot 构建 REST API
使用 Spring Boot 构建 REST API 使用 Spring Boot 构建 REST API1. Spring Initializr构建springboot2. API 合同 & JSONAPI 协定什么是 JSON? 3.先测试什么是测试驱动开发?测试金字塔Red, Green, Refactor 循环 4. 实施 GET…...
PHP分页显示数据,在phpMyadmin中添加数据
<?php $conmysqli_connect(localhost,root,,stu); mysqli_query($con,"set names utf8"); //设置字符集为utf8 $sql"select * from teacher"; $resultmysqli_query($con,$sql); $countmysqli_num_rows($result); //记录总条数$count。 $pagesize10;//每…...
Spring Boot操作MongoDB的完整示例大全
以下是基于Spring Boot操作MongoDB的完整示例大全,涵盖增删改查、聚合查询、索引、事务等核心功能: 一、基础CRUD操作 1. 环境配置 依赖配置(pom.xml) <dependency><groupId>org.springframework.boot</groupId…...
SpringCloud入门教程合集(1)-SpringCloud简介与Eureka+Feign实现服务注册中心、服务提供与服务消费
场景 SpringCloud 总体架构与核心子项目 SpringCloud 总体架构 1. 基础设施层 服务注册与发现:Eureka/Nacos 配置中心:Spring Cloud Config/Nacos 消息总线:Spring Cloud Bus 2. 服务通信层 负载均衡:Ribbon/LoadBalancer…...
【Linuc】深入理解 Linux 文件权限
文章目录 一、权限基础解析1. 权限三元组2. 权限类型与数字映射二、查看文件权限三、修改权限实战1. chmod 命令符号模式数字模式(推荐)2. chown 修改归属四、特殊权限机制1. SetUID (Set User ID)2. SetGID (Set Group ID)3. Sticky Bit五、高级权限管理1. 默认权限控制2. A…...
ExtraMAME:复古游戏的快乐“时光机”
嘿,小伙伴们!今天电脑天空要给大家安利一款超有趣的软件——ExtraMAME!如果你对复古街机游戏念念不忘,那它绝对能成为你的快乐源泉,带你瞬间穿越回那个充满游戏机的黄金时代。 ExtraMAME是一款基于MAME(Mu…...
没有 Mac,如何把 iOS App 成功上架?
开发者的 iOS 上架折腾记:没有 Mac,也能搞定? 最近在帮朋友把一个跨平台 Flutter 项目上架到 App Store,结果被 iOS 上架的那套流程卡得头都大了。其实这也不是第一次碰壁了——每次到“申请证书 打包 上传”的时候,…...
使用VMware Workstation pro 17.5.1在Windows上安装Ubuntu 24.04.2的 详细步骤
一、准备工作 1. 下载Ubuntu 24.04.2 ISO镜像 官方下载地址:Ubuntu 24.04.2 (Noble Numbat) 选择 ubuntu-24.04.2-desktop-amd64.iso(桌面版)或 ubuntu-24.04.2-live-server-amd64.iso(服务器版)。 2. 确认系统要求…...