MatSAM: novel training-free approach to extracting material microstructures via visual large model
目录一、研究问题二、研究思路三、研究方法-MatSAM一、研究问题如何在不依赖大量人工标注、不需要针对不同材料重新训练模型的情况下实现不同类型材料微观组织的准确、自动分割技术路线基本思路主要不足传统图像处理Otsu、Canny、分水岭等根据灰度、边缘及形态学特征进行分割依赖图像对比度和成像质量在晶界模糊、噪声较大或结构复杂时容易失败监督深度学习U-Net 等利用人工标注数据训练模型学习目标结构特征需要大量高质量标注模型对不同材料和成像条件的泛化能力有限预训练与微调利用预训练模型提取通用特征再针对目标数据进行适配仍需要目标领域标注数据及额外训练资源原始 SAM利用预训练视觉基础模型通过提示点实现零样本分割默认均匀网格提示难以适应密集、细小、边界复杂的材料组织容易出现漏分割、错误分割及重复分割二、研究思路SAMSegment Anything Model通过大规模预训练已经具备较强的通用视觉特征提取和目标分割能力。原始 SAM 的Everything Mode自动分割模式通常使用均匀分布的网格点作为提示。但是对于显微图SAM 可能对同一晶粒重复分割也可能漏掉小晶粒甚至错误识别晶界。所以提出创新点改进提示点生成方式即利用传统图像处理方法自动定位潜在目标区域再结合均匀网格点进行补充将更符合材料结构特点的提示点输入预训练 SAM从而在无需额外训练的条件下实现准确分割。三、研究方法-MatSAM1. 输入来自OM、SEM或XCT图像 用户指定图像类别polycrystalline、multiphase2. 多尺度裁剪MatSAM把图像分成不同大小的裁剪区域原图大小、四分之一图像区域、十六分之一图像区域相邻区域有约50%重叠。3. Automated Structure-aware Prompt Generation自动结构感知提示生成1生成 ROI 点Generation of ROI Points① 多晶图像Polycrystalline原始图像 → Canny 边缘检测 → 提取晶界及候选晶粒区域 → 连通区域分析 → 计算区域质心 → 生成 ROI 点。Canny 主要用于提取晶粒之间的边界信息再通过区域分析确定可能的晶粒位置。② 多相图像Multiphase原始图像 → Otsu 阈值分割 → 提取候选相区 → 连通区域分析 → 计算区域质心 → 生成 ROI 点。Otsu 根据灰度分布自动确定分割阈值将不同灰度的区域初步区分再提取候选目标位置。2调整网格点Modulation of Grid Points仅使用 Canny 或 Otsu 生成的 ROI 点仍然可能存在遗漏因此需要结合 SAM 原有的均匀网格提示。① 增加普通网格点在图像中生成均匀分布的 Grid Points为ROI定位不准确的区域提供额外覆盖。② 补充边缘点Edge Points在图像边缘补充更密集的点解决部分晶粒被图像边界截断或边缘区域成像条件不佳造成的漏检问题。③ 删除冗余提示点降低提示冗余默认距离阈值是3像素。3合并提示点Aggregation of Points将 ROI 点与经过边缘增强、去重处理后的网格点进行合并。4. MatSAM使用预训练的SAM三个核心模块完成图像分割1Image Encoder图像编码器输入原始显微图像通过预训练的 Vision TransformerViT提取视觉特征得到图像特征表示。2Prompt Encoder提示编码器将自动生成的提示点坐标转换为高维提示特征。3Mask Decoder掩膜解码器结合图像特征与提示特征通过注意力机制进行信息交互预测对应目标区域的分割掩膜Mask。对于同一个提示SAM 可以产生多个候选掩膜并根据预测质量评分进行筛选。5. 掩膜筛选与去重Mask Filtering NMS由于不同提示点可能对应同一个晶粒或颗粒不同裁剪区域之间也可能产生重复分割结果因此需要进行掩膜筛选。MatSAM 沿用 SAM 的非极大值抑制Non-Maximum SuppressionNMS机制。1根据预测质量分数筛选候选掩膜。2对重叠程度较高的候选掩膜进行去重优先保留质量较高的结果。3先在单个裁剪区域内去重再跨不同裁剪区域进行去重。6. 输出结果输出材料显微图像中目标结构的分割结果包括1多晶组织中的晶粒及晶界分割。2多相组织中的相区、颗粒等目标分割。3可用于后续尺寸、数量、面积等定量统计的像素级区域。EG补充知识:1. SAM是给定一张图以及一个提示找出提示所指对象的完整区域。SAM由三部分组成1图像编码器 Image Encoder把原始像素压缩成高维图像特征。【这张图中有哪些边缘、纹理和区域】2提示编码器 Prompt Encoder理解用户想分割什么提示可以是一个点、多个点、一个矩形框、一个粗略掩膜。【用户指的是哪个位置】3掩膜解码器 Mask Decoder图像特征 提示信息 输出目标掩膜。【结合两者把这个对象完整圈出来。】2. Canny是一种经典的边缘检测算法。回答问题为图像中哪些位置的亮度发生了明显突变即为边缘。Canny的基本过程是图像 → 高斯滤波去噪 → 计算灰度梯度 → 保留可能的边缘 → 双阈值筛选 → 边缘图其中灰度梯度 图像亮度变化的快慢和方向。3. Otsu是一种自动选择灰度阈值的方法。灰度阈值灰度图中每个像素通常有0—255的数值0黑色、255白色。假设颗粒通常比较亮背景比较暗可以选择一个阈值例如150灰度 150 → 目标灰度 ≤ 150 → 背景问题是150应该由谁来决定Otsu会根据整张图的灰度分布自动寻找一个较合适的阈值。4. 材料表征手段使用仪器观察或测量材料的成分、结构、形貌和性能。显微组织不能直接用肉眼看清所以需要不同仪器“显现”它。5. 晶粒Grain晶体取向基本一致的一块区域不同晶粒之间通常由晶界隔开。相Phase在一定尺度上具有相对一致的成分、结构和性质的材料区域。晶粒理解为“晶体被分成多少块”而相表示“材料内部存在多少种不同的结构或物质状态”。6. Prompt point提示点是提供给 SAM 的一个图像坐标用于告诉模型希望分割哪个位置对应的区域。对于SAM一个提示点包括坐标(x, y) 和 类型正点或负点正点表示我想分割的对象经过这里。负点表示这个位置不是目标请不要把它包括进来。对于MatSAM它主要自动生成1ROI质心点多晶结构中心点通过Canny寻找晶界包围的区域多相结构中心点通过Otsu寻找不同灰度的相区2规则网格点覆盖整张图防止遗漏3图像边缘附近的补充点覆盖被图像边界截断的组织这些点告诉SAM请分别检查这些位置周围是否存在完整的晶粒或相区。提示点不是完整标注。它只提供一个坐标而像素级标注需要把目标的每一个像素都画出来。因此点提示的成本远低于完整掩膜标注。6. Region of Interest即图像中可能包含研究目标、值得进一步处理的区域。MatSAM 中传统算法先找出候选 ROI再通过质心计算把每个ROI转换成一个提示点POI point。