Segment Anything生态全景:从基础模型到垂直应用实战指南

news2026/5/10 0:18:49
1. 项目概述Segment Anything 生态全景图如果你在2023年之后关注过计算机视觉领域那么“Segment Anything Model”这个名字你一定不会陌生。它就像一颗投入平静湖面的巨石激起的涟漪迅速扩散到了图像分割、医学影像、机器人、遥感乃至生物信息学等几乎你能想到的所有视觉相关领域。我作为一个在CV领域摸爬滚打了十多年的从业者亲眼见证了从传统分割算法到深度学习再到如今这种“基础模型”范式的演变。SAM的出现标志着一个新时代的开启我们不再需要为每一个特定的分割任务比如分割猫、狗、汽车、病变组织去专门标注海量数据、训练一个专用模型。相反一个经过海量数据预训练的通用模型通过简单的“提示”比如一个点、一个框、一段文本就能在零样本的情况下分割出你想要的任何物体。这听起来像魔法而Hedlen/awesome-segment-anything这个项目就是一本记录这场“魔法”如何演变为一场“工业革命”的百科全书。它不是一个代码库而是一个精心维护的、持续更新的资源列表。它的核心价值在于当SAM的论文发布后全球的研究者和工程师们基于它做了哪些激动人心的扩展、改进和应用这个仓库系统地收集、分类和整理了这些成果从最底层的模型分析、到各个垂直领域的应用、再到开箱即用的工具和项目为你呈现了一幅完整的生态全景图。对于刚入门的新手这个列表是绝佳的学习路线图能让你快速了解SAM的能力边界和社区最活跃的方向。对于资深的从业者它则是一个高效的信息聚合器能帮你迅速定位到解决特定问题比如医学图像分割、视频目标跟踪、3D点云处理的最新方案和开源代码。接下来我将带你深入这个宝库不仅解读列表中的关键项目更会结合我自己的实践经验分享如何评估、选择并使用这些工具来解决实际问题。2. 核心模型演进与原理深度解析要理解整个生态必须从根上弄明白SAM及其相关模型到底做了什么以及它们是如何做到的。这不仅仅是知道几个名词而是理解其设计哲学和性能边界这是你后续能灵活应用甚至改进它们的基础。2.1 Segment Anything (SAM)提示式分割的奠基者SAM由Meta AI在2023年4月发布它的核心目标非常明确建立一个通用的、可提示的图像分割基础模型。1. 核心架构三件套SAM的架构可以清晰地分为三个部分理解这三部分是如何协同工作的是理解其强大能力的关键。图像编码器 (Image Encoder):这是一个基于Vision Transformer (ViT) 的庞大模型负责将整张输入图像编码为一个高维的特征图。这是计算开销最大的部分也是模型“看懂”图像的基础。它一次性处理整图生成的特征可供后续多次提示查询复用这是其高效性的关键。提示编码器 (Prompt Encoder):这是SAM交互性的灵魂。它将用户各种形式的“提示”转化为模型能理解的特征。提示分为两类稀疏提示 (Sparse Prompts):包括点前景点/背景点、框bounding box、文本通过CLIP等模型编码。编码器会为这些稀疏输入生成对应的嵌入向量。密集提示 (Dense Prompts):即掩码 (Mask)。用户可以提供一张粗糙的掩码编码器会将其与图像特征进行融合。掩码解码器 (Mask Decoder):这是一个轻量级的Transformer模块。它接收来自图像编码器的图像特征和来自提示编码器的提示特征通过交叉注意力机制将它们融合最终输出多个可能的分割掩码及其对应的置信度分数。2. “提示工程”与零样本能力SAM的训练数据SA-1B包含了超过10亿个掩码但关键不在于数据量而在于其训练方式。模型被训练去学习“提示-掩码”的映射关系。也就是说给定任何图像和任何形式的提示模型都要预测出对应的掩码。这种训练范式使得SAM具备了强大的零样本泛化能力。你不需要在“猫”的数据上训练只需要在测试时给一张有猫的图和一个指向猫的提示点它就能分割出来。3. 实操心得与局限性认知在实际使用中我发现了SAM一些非常有趣的特性和需要注意的坑模糊性与多输出当你只给一个前景点时SAM通常会输出3个候选掩码对应物体整体、部分和子部分。这不是Bug而是特性。你需要根据置信度分数或视觉观察来选择最合适的一个。在自动化流程中通常选择置信度最高的。对“物体”的偏好SAM在训练时被灌输了“物体”的概念。因此对于纹理、天空、水面等非物体区域或者非常细长的结构如电线它的表现可能不稳定。它更擅长分割具有闭合轮廓的“东西”。计算资源考量原始的SAM图像编码器ViT-H非常大在消费级GPU上推理单张图片也可能需要数秒。这对于实时应用或处理大批量数据是一个挑战。这也直接催生了后续的FastSAM、MobileSAM等轻量化版本。2.2 相关基础模型构建更强大的视觉理解系统SAM擅长分割但它不知道分割出来的是什么。因此社区很快出现了将其与“识别”模型结合的方案这就是列表中Grounded-Segment-Anything等项目的基础。理解这几个关键模型你就能自己组装更强大的工具链。CLIP (OpenAI):连接视觉与语言的桥梁。CLIP通过对比学习在海量的“图像-文本”对上训练学会了将图像和文本映射到同一个语义空间。这意味着你可以用文本如“一只棕色的狗”来查询图像中对应的区域。在组合应用中CLIP常用来为SAM分割出的每个区域打上语义标签。Grounding DINO (IDEA Research):开放词汇目标检测器。如果说CLIP是“图文匹配”Grounding DINO则是“文本指导的检测”。你输入一张图和一段文本描述如“猫和沙发”它能直接输出图中对应这些描述的物体的检测框。这个框可以直接作为SAM的提示输入从而实现“文本-框-分割掩码”的端到端开放词汇分割流程。Segment Anything 2 (Meta AI):SAM的正式续作。它在SAM的基础上将能力扩展到了视频和更精细的分割。SAM 2可以处理视频序列实现跨帧的、时序一致的分割。同时它在图像分割的细节和边缘处理上也有提升。可以将其视为SAM的“完全体”代表了Meta在这一方向上的最新进展。 注意模型选型策略面对这么多基础模型新手容易眼花缭乱。一个简单的决策流是只需分割且有明确交互点/框- 直接用SAM或更快的FastSAM/MobileSAM。想用文字描述来自动分割图中物体- 采用Grounded-Segment-AnythingGrounding DINO SAM组合。这是目前最成熟、效果最好的方案之一。处理视频数据需要跟踪物体- 关注SAM 2或专门为视频优化的项目如SAM-Track。在资源受限的边缘设备上运行- 优先考虑MobileSAM、FastSAM或NanoSAMTensorRT优化版。3. 垂直领域应用实战与项目深潜Awesome列表最精彩的部分在于其按领域分类的衍生工作。这里我挑选几个最具代表性和实用价值的领域结合列表中的项目深入聊聊它们解决了什么实际问题以及在实际部署中会遇到哪些挑战。3.1 医学图像分析从“可用”到“可靠”的挑战医学影像CT、MRI、病理切片等的分割是SAM最早被验证的领域之一但也是最特殊的领域。列表中的MedSAM、SAM-Med2D、ScribblePrompt-SAM都是典型代表。1. 为什么医学影像难域差异 (Domain Gap):SAM是在自然图像照片上训练的而医学图像在纹理、对比度、物体形态上与自然图像差异巨大。直接应用效果往往不稳定。模糊边界与低对比度:很多病灶如肿瘤早期浸润与正常组织边界模糊灰度差异小这对依赖边缘和对比度的分割模型是巨大挑战。专业性与精确度要求极高:分割结果直接关联诊断要求亚像素级的精度和极高的可靠性不能有随机的错误。2. 社区解决方案演进直接评估 (Segment Anything Model for Medical Image Analysis)最早的一批工作系统地测试了原始SAM在几十个医学数据集上的表现结论是在部分组织器官轮廓清晰上表现尚可在复杂病灶上表现不佳。这明确了微调的必要性。适配器微调 (SAM-Adapter,Medical-SAM-Adapter)一种高效的微调策略。不改变SAM庞大的预训练参数而是在其中插入轻量化的适配器模块仅训练这些新增参数。这样既能保留SAM的通用知识又能快速适应医学领域节省计算资源。全面微调与数据工程 (SAM-Med2D)上海AI Lab等机构的工作代表了另一种思路收集大规模的、高质量的医学图像分割数据集对SAM的图像编码器进行全面微调。SAM-Med2D在超过30亿个医学图像掩码上训练其在多种2D医学影像模态上的零样本能力得到了质的提升是目前该领域最强大的开源模型之一。交互式提示优化 (ScribblePrompt-SAM)来自MIT的工作它认识到在医疗场景中医生的简单涂鸦scribble是更自然、更高效的交互方式。他们专门用涂鸦数据微调SAM的提示编码器和掩码解码器使得模型对不精确的涂鸦输入也能产生精确的分割结果极大提升了人机协作效率。3. 实操指南如何为你的医学影像任务选择方案假设你有一个新的X光骨骼分割任务第一步零样本测试。直接用SAM-Med2D的预训练模型进行测试。如果效果已经满足要求特别是对于轮廓清晰的骨骼那么恭喜你任务完成。第二步少量数据适配。如果效果不佳但你有少量如几十张标注数据。可以采用SAM-Adapter或Medical-SAM-Adapter的方案在你的小数据集上微调适配器通常能获得显著提升。第三步领域全微调。如果你有足够多的数据成千上万且任务非常特殊如某种罕见病变可以考虑借鉴SAM-Med2D的方案从头开始微调整个图像编码器。但这需要强大的算力支持。第四步集成到工作流。对于临床原型系统ScribblePrompt-SAM的交互模式非常友好。你可以将其集成到类似Napari这样的可视化软件中让医生能够快速修正自动分割结果。3.2 图像编辑与生成AIGC的强力助推器SAM与AIGC的结合催生了一批“魔法”般的应用极大地降低了专业图像编辑的门槛。Inpaint Anything和“SAM Stable Diffusion”是其中的佼佼者。1. Inpaint Anything (IA)一键移除与填充这个项目的流程清晰而强大输入图像 - SAM交互式选择要移除的物体- 生成该物体的精确掩码 - 将掩码区域传给图像修复模型 - 输出修复后的图像。技术栈通常SAM负责生成精准的掩码而修复部分可以选用LaMa、MAT等传统修复模型或者更强大的Stable Diffusion Inpainting模型。实操要点掩码质量是关键SAM分割的精细程度直接决定修复效果。对于复杂边缘如头发、羽毛可能需要多次点提示来获得最精准的掩码。修复模型的提示词如果使用SD给修复模型的提示词非常重要。例如你想移除路灯背景是天空那么提示词应为“clear blue sky, clouds”而不是留空这样SD才能生成符合语义的背景。边缘融合修复后的区域与周围像素的过渡可能不自然。后期通常需要轻微的羽化或使用泊松融合等算法进行边缘平滑处理。2. SAM Stable Diffusion可控的图像生成这里SAM扮演了“空间控制”的角色。一个典型工作流是用户上传一张草图或粗略布局图。SAM或结合Grounding DINO被用来识别并分割出草图中不同颜色的区域每个区域对应一个语义概念如“人”、“树”、“房子”。将这些分割掩码和对应的文本描述如“a man in red shirt”, “a big oak tree”一起输入到Stable Diffusion的ControlNet或IP-Adapter等条件控制模块中。SD根据文本和精确的空间约束生成高质量图像。 经验分享避免“鬼影”和语义错误在结合SAM进行编辑时最常见的两个问题是鬼影 (Ghosting):物体被移除后原位置留下淡淡的痕迹或不符合透视的影子。这通常是因为修复模型对上下文理解不足。解决方案扩大修复区域的输入上下文即给修复模型看更大范围的周边图像或使用更擅长理解全局结构的修复模型。语义混淆例如想移除照片中人物手里的手机结果SAM把手指的一部分也当成了手机分割进去导致修复后手指残缺。解决方案使用更精确的提示。不要只在前景手机上点一点同时在背景手指上点一个背景点告诉SAM“这是不要的”这样能得到更精确的边界。3.3 3D视觉将2D的智能升维将2D图像上的分割能力迁移到3D点云或体素数据上是一个充满挑战但价值巨大的方向。列表中的SA3D、Seal、SAMPro3D提供了不同的思路。1. 核心挑战3D数据不像2D图像那样有统一的、密集的网格结构。点云是稀疏的、无序的网格数据有拓扑关系。如何将SAM基于2D图像训练的知识迁移过来2. 主流技术路径解析方法代表项目核心思想优点缺点适用场景多视图投影 (Multi-view Projection)SA3D(Segment Anything in 3D)将3D物体或场景渲染成多个2D视角的图像用SAM分割每一张2D图然后将2D掩码反向投影回3D空间通过投票或优化融合成3D分割。实现相对简单直接复用强大的2D SAM。依赖渲染质量遮挡处理复杂后融合步骤计算量大可能产生不一致。已知网格或水密模型的物体级分割。2D-3D特征传播 (Feature Lifting)SAMPro3D同样渲染多视角但不仅传播分割结果而是将SAM中间层的2D特征提取出来通过相机参数“提升”到3D空间在3D空间进行特征融合与分割决策。利用了更丰富的语义特征而非二值掩码通常能获得更平滑、一致的结果。需要处理特征对齐实现更复杂。室内外场景的点云语义分割。自监督学习迁移 (Self-supervised Transfer)Seal不直接使用SAM的分割结果而是利用SAM作为一个强大的2D特征提取器为多视角的2D图像生成高质量特征然后用这些特征作为监督信号来训练一个3D点云网络。最终得到一个纯3D的模型推理速度快无需多视图渲染。需要训练不能零样本依赖2D-3D数据对。需要部署高效3D模型的大规模应用。3. 实战选择建议如果你的数据是单个物体的3D模型.obj, .ply想快速零样本分割其组成部分SA3D的思路是最快上手的。你需要一个渲染引擎如Open3D, Blender生成环绕视图然后用SAM处理这些图片最后用提供的融合脚本得到结果。如果你的数据是大型场景的点云如自动驾驶的LiDAR点云且对分割一致性要求高SAMPro3D这类特征传播的方法可能更鲁棒。它能更好地处理远处物体、遮挡区域因为它在3D空间做决策。如果你有一个特定的3D分割任务如工业零件分拣且有大量未标注的3D数据和对应2D图片可以考虑Seal的思路。用SAM处理2D图片获得伪标签来训练一个专用于你场景的、高效的3D分割网络最终部署时完全脱离SAM效率极高。3.4 遥感与自动驾驶处理“上帝视角”与复杂场景遥感图像和街景图像具有尺度变化大、目标密集、视角特殊等特点。RSPrompter和SAM-Road是针对这些挑战的典型解决方案。1. 遥感图像实例分割 (RSPrompter)遥感图像中的物体车辆、船舶、建筑物通常数量多、尺寸小、排列密集。直接用SAM处理提示点很难精确指定单个实例且模型对“小目标”的识别能力可能不足。RSPrompter的巧思它不依赖人工提示而是设计了一个“提示生成器”。这个生成器会自动分析图像为每个潜在物体生成一个合适的提示比如一个特征点或一个小框然后送给SAM去分割。这相当于给SAM加了一个自动预检的环节实现了全图的实例分割自动化。实操注意这类方法通常需要在遥感数据集上进行微调以让提示生成器学习遥感目标的特性。如果你有标注好的遥感数据采用这种“SAM 适配头”的范式是很有前途的。2. 道路网络图提取 (SAM-Road)从卫星图像中提取矢量化的道路网络是地理信息系统的核心任务。传统方法基于像素分类后处理复杂。SAM-Road的思路非常巧妙利用SAM对卫星图像进行超像素过分割将图像分成许多小的、同质的区域。基于这些超像素块利用图优化算法将属于道路的块连接起来形成全局一致的道路网络图。报告称其速度比传统SOTA方法快40倍且精度更高。核心价值它展示了SAM作为通用视觉基元提取器的潜力。我们不一定直接用它输出最终结果而是用它生成高质量的中间表示如超像素、边缘、特征再结合领域知识如图优化、矢量生成来解决特定问题。这种“基模型后处理”的范式在很多工业场景中非常有效。4. 效率优化与模型压缩让SAM“飞入寻常百姓家”原始SAM的ViT-Huge图像编码器拥有超过600M参数即使在高端GPU上推理也有延迟。对于移动端、Web端或需要处理海量图像的应用模型效率是必须考虑的瓶颈。Awesome列表中相关的项目为我们提供了丰富的选择。4.1 轻量化模型家族模型核心方法显著特点适用场景FastSAM重新设计架构。用CNN-based的YOLOv8检测器替代ViT编码器实现实时速度。速度极快可达50FPS牺牲了一定精度但保留了提示功能。对实时性要求极高的应用如视频流分析、交互式应用。MobileSAM知识蒸馏。将原始SAMViT-H的知识蒸馏到一个轻量化的图像编码器如Tiny-ViT中。参数大幅减少约10倍保持了与原始SAM相近的精度支持点/框提示。移动端部署、资源受限的边缘设备。EfficientViT-SAM使用高效的ViT变体作为图像编码器。EfficientViT在精度和速度间有更好权衡。提供了速度与精度之间一个优秀的平衡点社区集成度高。需要较好精度且对速度有要求的服务器端应用。NanoSAM (NVIDIA)TensorRT量化与优化。对SAM进行硬件层面的极致优化针对NVIDIA GPU。推理速度的巅峰延迟极低需要NVIDIA硬件和TensorRT环境。高性能服务器、需要极低延迟的在线服务。4.2 选择与部署实战如何选择精度优先不计速度- 坚持使用原始SAM (ViT-H)。需要实时交互30 FPS-FastSAM是首选但需接受精度折损。在手机或嵌入式设备上运行-MobileSAM是经过验证的移动端方案。在云端服务希望平衡吞吐量和成本-EfficientViT-SAM是非常稳妥的选择。追求极限吞吐量且环境可控NVIDIA GPU TensorRT-NanoSAM能带来最大收益。部署注意事项内存占用轻量化模型不仅推理快加载模型所需的内存也更小。这对于多实例部署如Web服务后台启动多个worker至关重要。提示兼容性确保你选择的轻量化版本支持你需要的提示类型点、框、文本。有些极简版本可能只支持框提示。量化与精度NanoSAM等涉及量化将模型权重从FP32转换为INT8。这通常会带来轻微精度损失需要进行评估以确保在可接受范围内。务必在部署前用你的业务数据测试量化后的模型。5. 工具与生态开箱即用的生产力利器Awesome列表的后半部分充满了各种工具型项目它们将SAM的能力封装成可立即使用的软件极大提升了研究和工程效率。5.1 标注工具革命传统图像标注如用LabelMe、CVAT是体力活。SAM的出现催生了新一代智能标注工具AnyLabeling:这是一个集大成者。它整合了SAM、YOLO、Grounding DINO等模型支持自动预标注。你导入图片它能自动检测并分割出物体你只需要微调或确认即可。它还支持视频标注和多种格式导出是目前功能最全面的开源标注工具之一。ISAT with segment anything:专注于图像分割标注深度集成SAM及其变种如SAM-HQ, MobileSAM。它的交互设计流畅点击一个点就能得到分割掩码极大地提升了标注效率。Segment-Anything-UI / 2-UI:基于PySide6的桌面应用。优势在于离线、私有化部署数据无需上传云端适合处理敏感数据如医疗、工业检测。SAM 2-UI版本还加入了视频多目标跟踪功能。 实操心得如何搭建标注流水线数据准备将原始图像按文件夹整理好。工具选择如果标注任务简单需要快速上手用AnyLabeling的Web版或桌面版。如果数据敏感或需要复杂交互用Segment-Anything-UI。标注策略第一轮利用模型的自动预标注功能快速过一遍所有图片生成初始掩码。第二轮人工审核和修正。对于模型分错或漏分的物体使用点提示或框提示进行交互式修正。SAM的交互修正效率远高于手工多边形勾勒。质量控制定期抽样检查确保标注一致性。可以利用SAM本身来检查例如对同一个物体用不同提示点分割看结果是否稳定。数据导出与格式转换确保工具支持你训练框架所需的数据格式如COCO、Pascal VOC、YOLO格式。5.2 即插即用的Demo与集成Grounded-Segment-Anything:这可能是知名度最高、实用性最强的衍生项目。它提供了一个完整的Pipeline输入一张图 一段文本描述如“red car, dog”Grounding DINO先检测出这些物体框然后将框送给SAM生成精确掩码。它还集成了图像修复、文本生成BLIP等功能。其Hugging Face Space和Github代码都非常易于使用是学习SAM应用的最佳起点。Segment Anything with Clip:如果你想做开放词汇的语义分割即不限定类别用文本查询这个项目是很好的参考。它用CLIP为SAM分割出的每个区域计算文本相似度从而给区域打上标签。MetaSeg / SAM-Track (视频版):这些项目将SAM的能力扩展到视频。核心思路是利用SAM在关键帧上进行精确分割然后利用视频目标跟踪算法如DeAOT将掩码传播到后续帧。这对于视频标注、视频编辑来说是革命性的工具。6. 未来展望与个人思考回顾这个Awesome列表从SAM发布至今社区的发展速度令人惊叹。它已经从单一模型发展成了一个以“提示式分割”为核心的技术范式。我认为未来的趋势会集中在以下几个方向多模态融合的深化目前的“文本-检测-分割” pipeline 还有提升空间。更紧密的多模态融合例如端到端训练的、能同时理解文本、语音、手势提示的统一分割模型将是下一个突破点。SAM 2已经向视频模态迈出了一步。3D与动态场景的普及正如列表中所展示的3D SAM是一个热点。如何更高效、更精准地将2D先验知识用于3D理解并处理动态的4D场景3D时间是通往通用视觉AI的必经之路。专业化与轻量化的平衡会出现更多像SAM-Med2D、FoodSAM这样的领域专家模型。同时模型压缩和硬件加速技术会继续发展让SAM级的能力能运行在手机、无人机甚至IoT设备上。从感知到决策与生成SAM提供的精确空间理解能力正在成为机器人操控、自动驾驶决策、以及AIGC中空间可控生成的核心组件。它与大型语言模型LLM的结合尤其值得关注例如让LLM理解场景后生成操作指令或规划步骤。对我个人而言SAM生态带来的最大启示是在基础模型时代工程师的核心能力正在从“从头训练模型”转向“如何高效地利用和组合基础模型来解决实际问题”。我们需要熟练掌握提示工程、模型微调Adapter, LoRA、多模型Pipeline编排等新技能。这个Awesome列表就是一个巨大的工具箱而我们的任务就是根据手中的问题挑选合适的工具设计出最有效的解决方案。保持对这类生态列表的关注持续学习和实验是在这个快速演进领域保持竞争力的不二法门。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2599022.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…