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

多模态模型Orpheus,基于病理图像的乳腺癌复发风险智能评估工具|顶刊解读·25-03-17

小罗碎碎念

在医学领域,尤其是乳腺癌治疗方面,准确评估患者的复发风险至关重要。对于占乳腺癌很大比例的 HR+/HER2 - 亚型患者,目前主要依靠 Oncotype DX 的复发评分(RS)来指导治疗决策。

然而,该检测存在成本高昂、获取时间长等问题,这使得其在全球范围内的广泛应用受到限制。针对这一现状,来自纪念斯隆・凯特琳癌症中心等机构的研究团队开展了一项重要研究,旨在利用深度学习技术,通过常规的 H&E 染色全切片图像(WSI)和病理报告文本,开发出一种能够准确预测 RS 的多模态模型,以解决当前临床检测中面临的可及性难题。

https://doi.org/10.1038/s41467-025-57283-x

研究团队开发了名为 Orpheus 的多模态深度学习模型,该模型整合了图像和文本数据。在图像分析方面,采用了基于 Transformer 的架构,并结合自监督学习对大量 WSI 进行预训练,从而有效提取组织特征。

论文框架

对于病理报告文本,则利用预训练的语言模型进行分析。通过对三个独立队列(包含 6172 例患者)的验证,Orpheus 在预测高风险患者(RS > 25)时表现出色,其受试者工作特征曲线下面积(AUC)达到了 0.89,显著优于现有的临床病理模型(AUC 为 0.73)。

此外,在 RS≤25 的低风险患者中,Orpheus 预测远处转移的能力(时间依赖性 AUC 为 0.75)也明显优于原始的 RS 检测(AUC 为 0.49)。

这项研究成果具有重要的临床意义和应用价值。对于资源有限的地区,Orpheus 有望作为一种经济、高效的替代方案,无需进行传统的分子检测即可为患者提供精准的风险分层,从而指导化疗决策

在临床实践中,Orpheus 可以作为一种筛选工具,帮助医生更精准地识别高风险患者,避免不必要的化疗,同时为低风险患者制定更个性化的随访策略。从技术角度来看,该研究提出的多模态框架为其他癌症类型的 AI 模型开发提供了可借鉴的范例,未来可进一步结合基因组学、影像学等多维度数据,提升模型的性能和临床实用性。

Orpheus + 模型在 Oncotype DX 检测显示非高风险评分时,通过调整风险评估,对患者辅助化疗给出 “推荐” 或 “建议省略” 的决策,并能识别被 Oncotype DX 判定为低风险患者中的远处转移事件。

此外,模型的可解释性分析揭示了肿瘤微环境(如基质比例、淋巴细胞浸润)与 RS 之间的关联,为深入理解乳腺癌的生物学机制提供了新的视角。目前,该研究已通过伦理审查,并计划在更大规模的队列中进行验证,以推动其临床转化应用。


交流群

欢迎大家加入【医学AI】交流群,本群设立的初衷是提供交流平台,方便大家后续课题合作。

目前小罗全平台关注量52,000+,交流群总成员1100+,大部分来自国内外顶尖院校/医院,期待您的加入!!

由于近期入群推销人员较多,已开启入群验证,扫码添加我的联系方式,备注姓名-单位-科室/专业,即可邀您入群


知识星球

如需获取推文中提及的各种资料,欢迎加入我的知识星球!

已订阅星球用户无需二次付费,可以直接获取本篇推送的pdf版本,并且可以在星球中向我提问!


一、文献概述

文章介绍了一种名为Orpheus的多模态深度学习工具,用于从H&E染色的全切片图像中推断乳腺癌的复发风险评分(RS)。该工具旨在解决现有检测方法成本高、耗时长的问题,为临床决策提供更便捷的解决方案。

文章详细描述了Orpheus的开发过程,包括数据收集、模型训练和验证等环节,并展示了其在不同数据集上的表现和临床应用潜力。


1-1:研究背景

  • 乳腺癌亚型:激素受体阳性、HER2阴性(HR+/HER2-)的早期乳腺癌是最常见的亚型,占诊断病例的约70%。
  • 现有检测方法的局限性:Oncotype DX®复发评分(RS)是广泛使用的预测工具,但其成本和检测时间限制了全球应用。
  • 研究目的:开发一种基于常规病理切片的深度学习工具,以更经济、快速地预测复发风险。

1-2:方法与模型

  • 数据收集:研究团队从三个机构收集了6172个病例,包括病理切片、临床数据和基因组数据。
  • 模型开发:Orpheus模型基于Transformer架构,结合自监督学习技术,从病理切片图像中提取特征,并与文本报告等其他模态数据进行融合
  • 训练与验证:模型在MSK-BRCA队列上进行训练和验证,并在IEO-BRCA和MDX-BRCA两个独立队列上进行外部验证。

1-3:结果与表现

  • 高风险病例识别:Orpheus在识别TAILORx高风险病例(RS >25)方面表现出色,AUC达到0.89,优于现有的基于临床病理特征的列线图(AUC 0.73)。
  • 低风险病例预测:在RS ≤25的患者中,Orpheus能更准确地预测远处复发风险,平均时间依赖性AUC为0.75,而Oncotype DX® RS本身为0.49。
  • 多模态融合优势:结合图像和文本报告的多模态模型在预测性能上优于单一模态模型。

1-4:临床应用与意义

  • 辅助治疗决策Orpheus能够帮助医生更精准地识别需要辅助化疗的高风险患者,减少不必要的检测和治疗
  • 个性化随访策略:对于低风险患者,Orpheus可以指导更个性化的随访计划,提高患者管理和资源分配的效率。
  • 潜在扩展应用:Orpheus不仅限于乳腺癌,其多模态学习框架具有广泛适用性,可推广到其他类型癌症的精准医学应用中。

1-5:讨论与展望

  • 成本效益:Orpheus降低了对昂贵基因检测的依赖,具有显著的成本效益优势,尤其在资源有限的地区。
  • 技术优势:多模态数据融合提高了模型的准确性和鲁棒性,展示了人工智能在肿瘤学中的广阔前景。
  • 未来研究方向:进一步验证和优化模型,探索更多临床应用场景,如局部复发预测、临床试验资格评估等。

二、重点关注

2-1:检测技术与分析流程

Early-stage HR+/HER2- breast cancer(早期HR+/HER2-乳腺癌)

  • Resection(切除):早期乳腺癌手术切除流程。
  • Profiling(分析):涉及H&E(苏木精-伊红染色)、IHC(免疫组化)技术,以及Recurrence score(复发评分)检测。
  • Digitization(数字化):包含Scan histology(组织学扫描)和Pathologist report(病理报告)。
  • Modeling(建模):通过切片推断复发评分(Infer recurrence score from slides),并解读肿瘤结构(Interpret tumor architecture)。

2-2:乳腺癌病理分析中的多模态融合技术

image-20250314175112294

病理结果

  • 肿瘤总体分级(Overall Tumor Grade):综合评分7,II/III级(中度分化)。
  • 雌激素受体(Estrogen Receptor):70%的肿瘤细胞核染色阳性。
  • 孕激素受体(Progesterone Receptor):20%的肿瘤细胞核染色阳性。
  • HER2:阴性(1+)。

技术模型

  • CTransPath ,用于处理病理图像。
  • Vision Transformer(视觉Transformer) ,对图像特征进行提取和分析,用于细胞核解读(nuclear interpretation)。
  • Language Transformer(语言Transformer) ,先通过Tokenizer(分词器)处理文本信息,如肿瘤总体情况、分级等。
  • tensor fusion(张量融合) ,将视觉和语言模型提取的特征进行融合,最终输出一个在[0,100]范围内的分数(s) 。

2-3:早期乳腺癌的风险评估和调整流程

image-20250314180950778

HR+/HER2-原发性乳腺癌肿瘤相关的预处理流程

  • 疾病类型:HR+/HER2-原发性肿瘤(HR+/HER2- primary tumor)。
  • 检测技术与步骤
    • 切除(resection):对HR+/HER2-原发性肿瘤进行手术切除。
    • 切片制备(slide preparation):进行常规的苏木精 - 伊红(H&E)染色切片制备。
    • 扫描(scanning):对全切片图像(Whole slide images)进行扫描 。

基于Orpheus模型的风险评估流程

  • 模型:Orpheus,一个AI模型,在召回率为23%时,精度大于90%。
  • 评估结果及后续措施
    • AI预测为低风险(AI - predicted low risk)时,可能会安排基因检测(Order genomic test)。
    • AI预测为高风险(AI - predicted high risk) ,进行下一步操作。
    • AI预测为非高非低风险(AI - predicted neither low nor high risk)时,也会安排基因检测。

乳腺癌风险调整及治疗建议

  • 检测与模型:Oncotype DX检测,用于评估乳腺癌风险。Orpheus+模型,基于检测结果进一步判断。
  • 治疗建议:若Oncotype DX检测显示非高风险,经Orpheus+模型评估。若为低风险,可省略辅助化疗(Omit adjuvant chemotherapy) ;若为高风险,则推荐辅助化疗(Recommend adjuvant chemotherapy)。Orpheus+模型还能识别出Oncotype DX判定为低风险但实际有远处转移风险的情况。

2-4:数据和代码

数据申请流程

image-20250314182307410

代码

  • 多模态建模包Orpheus可在https://github.com/kmboehm/orpheus获取;
  • 全切片图像的预处理管道在https://github.com/KatherLab/STAMP;
  • 从图像回归转录组程序的代码在https://github.com/KatherLab/marugoto/releases/tag/v1.0.0-regression;
  • GAN训练使用https://github.com/POSTECHCVLab/PyTorch-StudioGAN,权重和配置参数在https://www.synapse.org/breastGAN;
  • 基于HoverNet推理计算核特征的代码在https://gist.github.com/kmboehm/aea77f24a9cdbb1f246dacaae812053d。

三、项目复现流程

1. 项目概述

Orpheus 是一个基于 Transformer 的多模态集成框架,结合 H&E染色全切片图像病理报告文本,用于预测癌症的预后/预测评分(如 Oncotype 评分)。

核心功能

  • 提取图像和文本的嵌入特征。

  • 训练视觉、语言和多模态模型。

  • 生成综合预测评分并评估性能。

  • 预印本参考:Oncotype 评分应用研究


2. 环境配置

2.1 提取图像嵌入(STAMP)

步骤

  1. 使用 STAMP 工具(https://github.com/KatherLab/STAMP) 提取全切片图像的 tile-wise 嵌入。
  2. .h5 文件转换为 .pt 文件:
    # 示例代码(需修改路径)
    import torch
    from h5py import File
    import osstamp_dir = 'path/to/stamp/output'
    os.mkdir('pt_files')
    file_names = os.listdir(stamp_dir)  
    for file_name in file_names:with File(os.path.join(stamp_dir, file_name), "r") as f:embeddings = f["feats"][:]embeddings = torch.from_numpy(embeddings).float()file_name_pt = file_name.replace('.h5', '.pt')torch.save(embeddings, os.path.join("pt_files", file_name_pt))
    

2.2 安装依赖项

  • 使用 Conda 安装核心包

    conda install pytorch torchvision torchaudio pytorch-cuda=12.1 einops lightning wandb torchmetrics pandas numpy h5py datasets transformers evaluate scipy scikit-learn seaborn matplotlib statsmodels accelerate tokenizers=0.13.02 -c pytorch -c nvidia -c huggingface -c conda-forge
    
  • 补充安装

    pip install -U 'jsonargparse[signatures]>=4.26.1'
    
  • 注意:根据系统调整 PyTorch 版本(参考 PyTorch 官方指南)。


3. 数据准备

3.1 数据格式要求

CSV 文件列说明

  • case_id:样本唯一标识。
  • score:目标评分(0-1 的浮点数)。
  • input_visual_embedding_path:图像嵌入路径(.pt 文件,无图像填 NONE)。
  • text:病理报告文本(无文本填 NONE)。
  • split:数据集划分(train/val/test)。
  • output_*_embedding_path:输出嵌入路径(按需填写或 NONE)。

3.2 生成示例数据

运行以下脚本生成测试数据:

python orpheus/utils/utils.py
  • 示例数据默认保存在 orpheus/scratch 目录。

4. 模型训练与推理

4.1 训练视觉模型

  1. 修改配置文件
    • 检查 orpheus/vision/config.yaml,调整超参数和路径。
  2. 启动训练
    python orpheus/main.py fit --config orpheus/vision/config.yaml
    
    • 输出:日志在 outputs/training_logs,模型检查点在 outputs/vision-models

4.2 生成视觉嵌入

  1. 禁用 W&B 日志
    wandb disabled
    
  2. 执行预测
    python orpheus/main.py predict --config orpheus/vision/config.yaml --ckpt_path outputs/vision-models/{best_model}.ckpt
    
    • 输出:嵌入文件保存在 preds/visual/{split},路径记录在 CSV 的 output_visual_embedding_path

4.3 训练语言模型

  1. 启动训练
    python orpheus/language/train.py --df_path scratch/example.csv
    
    • 输出:模型检查点在 outputs/text-models

4.4 生成语言嵌入

  1. 执行预测
    python orpheus/language/infer.py --df_path scratch/example.csv --ckpt_path outputs/text-models/{best_model}
    
    • 输出:嵌入文件保存在 preds/linguistic/{split},路径记录在 CSV 的 output_linguistic_embedding_path

4.5 训练多模态模型

  1. 启动训练
    python orpheus/main.py fit --config orpheus/multimodal/config.yaml
    
    • 输出:模型检查点在 outputs/multimodal-models

4.6 生成多模态嵌入

  1. 执行预测
    python orpheus/main.py predict --config orpheus/multimodal/config.yaml --ckpt_path outputs/multimodal-models/{best_model}.ckpt
    
    • 输出:嵌入文件保存在 preds/multimodal/{split},路径记录在 CSV 的 output_multimodal_embedding_path

5. 结果对齐与评估

5.1 对齐多模态评分

python orpheus/multimodal/align.py --df_path scratch/example.csv --img_pred_dir preds/visual --lan_pred_dir preds/linguistic --mult_pred_dir preds/multimodal --output_df_path all_predictions.csv
  • 输出:在 all_predictions.csv 中新增 pred_vis(视觉预测)、pred_lan(语言预测)、pred_mul(多模态预测)列。

5.2 评估模型性能

python eval.py --pred_df_path all_predictions.csv
  • 输出
    • 指标文件:metrics.json(包含 R²、MAE、Pearson 相关系数等)。
    • 图表:保存在 plots/{metric} 目录(如 plots/r2.png)。

6. 关键注意事项

  • 依赖兼容性:确保 PyTorch、CUDA 和 Hugging Face 库版本匹配。
  • 数据路径:所有输入输出路径需在 CSV 中正确填写,避免 NONE 冲突。
  • 模型选择:训练时选择验证损失最低的检查点(如 outputs/vision-models/best_model.ckpt)。
  • W&B 管理:训练时启用日志(wandb login),预测时禁用以节省资源。

通过以上步骤,可完成从数据准备到多模态评分预测的全流程。


科研合作意向统计

为了更好的利用小罗搭建的交流平台,我决定发放一个长期有效的问卷,征集大家在科研方面的任何需求,并且定期整理汇总,方便大家课题合作,招收学生,联系导师……


结束语

本期推文的内容就到这里啦,如果需要获取医学AI领域的最新发展动态,请关注小罗的推送!如需进一步深入研究,获取相关资料,欢迎加入我的知识星球!

相关文章:

多模态模型Orpheus,基于病理图像的乳腺癌复发风险智能评估工具|顶刊解读·25-03-17

小罗碎碎念 在医学领域,尤其是乳腺癌治疗方面,准确评估患者的复发风险至关重要。对于占乳腺癌很大比例的 HR/HER2 - 亚型患者,目前主要依靠 Oncotype DX 的复发评分(RS)来指导治疗决策。 然而,该检测存在…...

基于MapReduce的气候数据分析

标题:基于MapReduce的气候数据分析 内容:1.摘要 本文聚焦于基于MapReduce的气候数据分析。背景在于随着全球气候变化问题日益严峻,海量气候数据的高效处理和分析成为关键。目的是利用MapReduce技术对气候数据进行有效挖掘,以揭示气候变化规律和趋势。方…...

Spring 原生启动过程

Spring(Spring Framework)的原生启动过程,它主要涉及 ApplicationContext 的初始化、BeanFactory 的加载、Bean 的创建与依赖注入。下面详细解析: Spring 原生启动过程 Spring 本身不依赖 SpringApplication,其核心在…...

【React】useEffect、useLayoutEffect底层机制

目录 useEffect不设置依赖设置空数组,无依赖设置多个依赖返回值是一个函数总结useEffect的使用环境useEffect 中发送请求错误示例用.then获取数据在useEffect创建一个函数 总结 useLayoutEffectuseLayoutEffect 和useEffect区别执行时机:浏览器渲染的关系…...

RTSP/Onvif视频安防监控平台EasyNVR调用接口返回匿名用户名和密码的原因排查

视频安防监控平台EasyNVR可支持设备通过RTSP/Onvif协议接入,并能对接入的视频流进行处理与多端分发,包括RTSP、RTMP、HTTP-FLV、WS-FLV、HLS、WebRTC等多种格式。平台拓展性强、支持二次开发与集成,可应用在景区、校园、水利、社区、工地等场…...

Linux-数据结构-线性表-单链表

一.链表的概念 【1】线性表的链式存储 解决顺序存储的缺点,插入和删除,动态存储问题。 【2】特点: 线性表链式存储结构的特点是一组任意的存储单位存储线性表的数据元素,存储单元可以是连续的,也可以不连续。可以被存…...

基于SpringBoot+Vue3实现的宠物领养管理平台功能一

一、前言介绍: 1.1 项目摘要 随着社会经济的发展和人们生活水平的提高,越来越多的人开始关注并参与到宠物领养中。宠物已经成为许多家庭的重要成员,人们对于宠物的关爱和照顾也日益增加。然而,传统的宠物领养流程存在诸多不便&a…...

DeepSeek进阶应用(二):结合Kimi制作PPT(双AI协作教程)

🌟引言: DeepSeek作为国产AI大模型,以强大的逻辑推理和结构化内容生成能力著称,擅长根据用户需求生成PPT大纲或Markdown文本;Kimi的PPT助手则能解析结构化内容并套用模板快速生成美观的PPT,两者结合实现“内容+设计”全流程自动化 名人说:苔花如米小,也学牡丹开。——…...

准确---快速安装nginx

1. 安装 Nginx 和 Stream 模块 首先,使用 yum 安装 Nginx 及其 Stream 模块: yum install nginx yum install nginx-mod-stream这将安装 Nginx 及其 Stream 模块,Stream 模块用于处理 TCP 和 UDP 流量,通常用于代理、负载均衡等…...

本地知识库RAG总结

目录 RAG流程: 知识库的要求: 知识抽取: 知识存储: 向量化: 知识检索: 应用客户端: RAG智能问答应用几个痛点: 如何提升召回率改进思路: 如何提升回答专业性: RAG评测: 总结: 参考…...

Trae IDE 介绍与使用教程

一、产品概述 Trae IDE 是由字节跳动推出的国内首个原生AI集成开发环境,专为中文开发者深度定制,旨在通过智能化工具降低编程门槛,提升开发效率。作为对标国外Cursor的国产替代方案,Trae不仅继承了AI驱动的代码生成与补全功能&am…...

OceanBase 用户问题精选答疑:OceanBase 版本升级解析

背景 此篇博客的源自于OceanBase社区论坛内一位名为皇甫侯的热心用户所提的建议,希望向OceanBase的用户介绍OceanBase的版本升级路径。本文以一个版本升级为示例,汇总了对用户而言比较重要的版本升级要点,期望通过这份分享,能让读…...

SpringBoot 和vue前后端配合开发网页拼图10关游戏源码技术分享

今天分享一个 前后端结合 的网页游戏 开发项目源码技术。 这也是我第一次写游戏类的程序,虽然不是特别复杂的游戏,但是是第一次写,肯定要记录一下了,哈哈。 游戏的内容 就是 我们显示中玩的那个 拼图碎片的 游戏,类似下…...

LeetCode 1005. K 次取反后最大化的数组和 java题解

https://leetcode.cn/problems/maximize-sum-of-array-after-k-negations/description/ 看着简单但是写si人的一题。 class Solution {public int largestSumAfterKNegations(int[] nums, int k) {Arrays.sort(nums);//排序int last_negative-1,first_positive-1;//最后一个负…...

c++ 类和对象 —— 中 【复习笔记】

1. 类的默认成员函数 如果一个类什么成员都没有,简称空类。但实际上,任何类在不写成员时,编译器会自动生成6个默认成员函数(用户未显式实现,编译器生成的成员函数) 这6个成员函数可分为三类: …...

「速通AI编程开发」共学(三):提示词(Prompts)配置项

「速通AI编程开发」共学(三) 一、共学课程来源学习初衷 二、介绍不同模式下的提示词(Prompts)支持性提示词 三、提示词学习材料分享 一、共学课程来源 Datawhale通过开源学习模式,助力AI学习者与知识连接,…...

Spring Cloud Stream - 构建高可靠消息驱动与事件溯源架构

一、引言 在分布式系统中,传统的 REST 调用模式往往导致耦合,难以满足高并发和异步解耦的需求。消息驱动架构(EDA, Event-Driven Architecture)通过异步通信、事件溯源等模式,提高了系统的扩展性与可观测性。 作为 S…...

电脑如何录屏

以下是电脑录屏的常用方法总结,涵盖系统自带工具、第三方软件及进阶功能,结合不同场景需求推荐最佳方案: 一、系统自带工具 Xbox Game Bar(Windows 10/11) 操作步骤:按 WinG 打开游戏栏 → 点击录制按钮&am…...

【微知】plantuml在泳道图中如何将多个泳道框起来分组并且设置颜色?(box “浏览器“ #LightGreen endbox)

泳道分组并且着色 分组用 box和endbox ,颜色用#xxx,标注用"xxx" box "浏览器" #LightGreen participant "浏览器1" as Browser participant "浏览器2" as Browser2 endboxparticipant "服务端" as …...

c++ 中的可变参数模板与折叠表达式

c 11 引入了可变参数模板,c 17 引入了折叠表达式,比 c 语言的可变参数更加简洁灵活。这篇博客总结了一些例子。 …(省略号)用于可变参数(Variadic Arguments),它可以放在模板参数 或 函数参数的…...

websocket学习手册及python实现简单的聊天室

概述 WebSocket 是一种网络通信协议,允许在单个 TCP 连接上进行全双工通信。它最核心的优势就在于实现了持久连接,实现了实时的数据传输。HTTP 协议有一个很大的缺点,通信只能由客户端发起,服务器返回响应后连接就会关闭&#xf…...

论文阅读:2023-arxiv Can AI-Generated Text be Reliably Detected?

总目录 大模型安全相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328 文章目录 Abstract(摘要)1 Introduction(引言)Conclusion(结论) Can AI-Generated Text be Reliably D…...

Mock接口编写教程-axios-mock-adapter(React)

Mock模拟接口编写教程 直接在前端实现接口模拟 1.第一步 设置模拟接口 // mock.ts import axios from axios import MockAdapter from axios-mock-adapter// 创建一个模拟适配器 const mock new MockAdapter(axios)// 设置模拟接口 export const setupMock () > {mock.…...

react(一):特点-基本使用-JSX语法

初识React React是一个用于构建用户界面的 JavaScript 库,由 Facebook 开发和维护。 官网文档:React 官方中文文档 特点 1.声明式编程 2.组件化开发 3.多平台适配 开发依赖 开发React必须依赖三个库: 1.react:包含react所必…...

golang函数与方法的区别

1.调用方式的区别 函数的调用方式:函数名(参数...) 方法的调用方式: 变量.方法名(参数...) 2.函数的使用 package mainimport "fmt" //函数参数为值类型,调用的时候只能传递值类型数据&#…...

解决 openeuler 系统 docker 下载慢,docker 镜像加速

一、步骤说明 1. 编辑 Docker 配置文件 Docker 的镜像源配置文件路径为 /etc/docker/daemon.json。如果该文件不存在,则需要先创建目录和文件。 # 创建目录(如果不存在) sudo mkdir -p /etc/docker# 编辑配置文件(使用 nano 或…...

Android ARouter的详细使用指南

Android ARouter的详细使用指南。我需要先确定用户的基础,可能他们已经有Android开发经验,但对ARouter不太熟悉。首先,我应该介绍ARouter是什么,解决什么问题,比如模块化中的页面跳转问题。然后,需要分步骤…...

PosterRender 实现微信下程序 分享商品生成海报

PosterRender 是什么 PosterRender 是一种专注于生成高质量海报图像的技术或工具,常用于生成静态图片,特别是适合用于营销、宣传和展示的图形设计。它通常用于在服务端或客户端渲染复杂的图像,包括文字、图形、图标、背景等,生成…...

电机控制常见面试问题(十五)

文章目录 一、电机气隙二、电气时间三.电机三环控制详解四.驱动板跳线意义五.电机开环自检 一、电机气隙 电机气隙是定子和转子之间的空隙,防止钉子转子运转时物理接触,此外,气隙是磁路的重要环节,磁场需通过气隙传递能量&#x…...

基于云漂移优化(Cloud Drift Optimization,CDO)算法的多个无人机协同路径规划(可以自定义无人机数量及起始点),MATLAB代码

一、云漂移优化算法 云漂移优化(Cloud Drift Optimization,CDO)算法是2025年提出的一种受自然现象启发的元启发式算法,它模拟云在大气中漂移的动态行为来解决复杂的优化问题。云在大气中受到各种大气力的影响,其粒子的…...

【第9章】亿级电商平台订单系统-整体技术架构设计

1-1 本章导学 课程主题:系统蓝图描绘与整体技术架构设计核心学习内容: ▶️ 订单系统的整体技术架构设计 ▶️ 架构设计核心方法论与实践应用本章核心内容架构 1. 技术预研 架构设计的基础支撑环节关键技术可行性分析与选型依据2. 整体技术架构设计方法与步骤 结构化设计方法…...

harmonyOS NEXT开发与前端开发深度对比分析

文章目录 1. 技术体系概览1.1 技术栈对比1.2 生态对比 2. 开发范式比较2.1 鸿蒙开发范式2.2 前端开发范式 3. 框架特性对比3.1 鸿蒙 Next 框架特性3.2 前端框架特性 4. 性能优化对比4.1 鸿蒙性能优化4.2 前端性能优化 5. 开发工具对比5.1 鸿蒙开发工具5.2 前端开发工具 6. 学习…...

详细介绍GetDlgItem()

书籍:《Visual C 2017从入门到精通》的2.3.8 Win32控件编程 环境:visual studio 2022 内容:【例2.31】在模态对话框上可视化创建树形控件 说明:以下内容大部分来自腾讯元宝。 GetDlgItem() 是 Windows API 中用于获取对话框或父…...

MCU的应用场景:从智能家居到工业控制

MCU的应用场景非常广泛,主要包括以下几个方面: 1. 智能家居 智能照明:通过MCU控制LED灯的亮度和颜色。 智能安防:在安防系统中,MCU用于控制传感器和报警器。 2. 工业控制 PLC(可编程逻辑控制器&…...

docker的使用

时间:2025.3.17 一、当我们想要运行一个容器时,不是在containers处,而是需要在images处找对应容器的镜像 操作步骤: 1.找容器镜像 2.找到容器镜像,通过pull下载到当前主机中 3.下载成功后进行运行 4.运行时的容器镜像…...

Redis hyperloglog学习

背景知识 【伯努利试验】: 【伯努利试验】是一个概率论中的概念,指在相同的条件下重复进行n次独立的试验,每次试验只有两种可能的结果,且这两种结果发生的概率是固定的 抛硬币作为伯努利试验:在抛硬币时,我…...

鸿蒙开发:什么是ArkTs?

前言 本文基于Api13。 一句话解读:ArkTs(方舟编程语言)是目前HarmonyOs应用开发的主力语言。 用官方的话解读,它是一种为构建高性能应用而设计的编程语言;看到以Ts结尾,想必大家应该很容易想到TypeScript&a…...

ArcGIS Pro中加载在线地图的详细指南

在现代制图领域,ArcGIS Pro已成为专业人士的重要工具。它不仅功能强大,而且操作简便,为用户提供了丰富的地图数据资源和灵活的地图加载方式。其中,加载在线地图是ArcGIS Pro的一大特色功能,能够帮助用户快速获取全球范…...

《C++ Primer》学习笔记(四)

第四部分:高级主题 1.tuple 是类似pair的模板。每个pair 的成员类型都不相同,但每个 pair 都恰好有两个成员。每个确定的tuple 类型的成员数目是固定的,但一个 tuple 可以有任意数量的成员。tuple支持的操作如下图: 只有两个 tup…...

CVPR2025自动驾驶端到端前沿论文汇总

自动驾驶 文章目录 自动驾驶前言自动驾驶的轨迹预测论文端到端自动驾驶论文 前言 汇总CVPR2025自动驾驶前沿论文 自动驾驶的轨迹预测论文 Leveraging SD Map to Augment HD Map-based Trajectory PredictionModeSeq: Taming Sparse Multimodal Motion Prediction with Seque…...

使用 jQuery 实现子窗口获取父窗口的值,或者父窗口获取子窗口的值时

HTML 父子窗口通信指南 一、基础概念 在Web开发中,父子窗口通信是一个常见的需求。这通常发生在以下场景: 主页面(父窗口)打开新窗口(子窗口)弹出窗口需要与主页面交互多窗口之间需要数据传递 二、jQue…...

AndroidStudio下载安装,环境部署以及常见问题解决教程(亲测)

AndroidStudio下载安装,环境部署以及常见问题解决!!! 文章目录 前言 一、Android Studio 下载与安装 1.1 系统要求 1.2 下载 Android Studio 1.3 安装 Android Studio Windows 系统 1.4 初始配置 二、环境部署 2.1 安装 …...

ruoyi-vue部署2

3.Node.js 3.1.什么是Node.js 在 Node.js 之前,JavaScript 只能运行在浏览器中,作为网页脚本使用,为网页添加一些特效,或者和服务器进行通信。有了 Node.js 以后,JavaScript 就可以脱离浏览器,像其它编程…...

Flutter项目升级Xcode 16.2之后编译问题

最近好久没升级Xcode了,升级了一下最新的16.2之后。发现Flutter项目在iOS设备上运行不起来了。报错: 查了许多网友也遇到了,其中一个解决方案:https://stackoverflow.com/questions/79118572/xcode-16-and-ios-18-project-not-com…...

Mermaid 子图 + 拖拽缩放:让流程图支持无限细节展示

在技术文档、项目管理和可视化分析中,流程图是传递复杂逻辑的核心工具。传统流程图往往静态且难以适应细节展示,而 Mermaid 与 svg-pan-zoom 的结合,则为这一痛点提供了完美解决方案。本文将深入解析如何通过 Mermaid 的子图(subg…...

前沿科技一览未来发展趋势

生物技术能帮环境。比如用它处理污染物。科学家发现一些细菌能吃掉油污。这些细菌能被用来清理漏油事故。比如1989年埃克森瓦尔迪兹号漏油事件中人们就用类似方法减少污染。 还有些植物能吸收土壤里的重金属。种植这种植物能让受污染的土地变干净。这种方法在矿区周围特别有用…...

Linux---sqlite3数据库

一、数据库分类 1. 按数据关系分类 类型特点代表产品关系型数据库- 使用 SQL&#xff08;结构化查询语言&#xff09;<br>- 数据以行列形式存储&#xff0c;支持事务和复杂查询MySQL、Oracle、SQLite非关系型数据库- 无固定表结构&#xff08;如键值对、文档、图&#…...

侯捷 C++ 课程学习笔记:进阶语法之lambda表达式(二)

侯捷 C 课程学习笔记&#xff1a;进阶语法之lambda表达式&#xff08;二&#xff09; 一、捕获范围界定 1. 局部变量与函数参数 ​非静态局部变量&#xff1a;Lambda 所在作用域内定义的局部变量&#xff08;如函数内部的 int x&#xff09;会被完整复制其当前值。捕获后外部变…...

python爬虫Scrapy(6)之增量式

增量式 爬虫应用场景分类 通用爬虫聚焦爬虫功能爬虫分布式爬虫增量式&#xff1a; 用来监测网站数据更新的情况&#xff08;爬取网站最新更新出来的数据&#xff09;。只是一种程序设计的思路&#xff0c;使用什么技术都是可以实现的。核心&#xff1a; 去重。 使用一个记录表来…...

oracle删除表中重复数据

需求&#xff1a; 删除wfd_procs_nodes_rwk表中&#xff0c;huser_id、dnode_id、rwk_name字段值相同的记录&#xff0c;如果有多条&#xff0c;只保留一条。 SQL&#xff1a; DELETE FROM wfd_procs_nodes_rwk t WHERE t.rowid > (SELECT MIN(t1.rowid)FROM wfd_procs_n…...