WUT-AI-AI4Mat's picture
Upload model card and dataset checkpoints
e6dcb92 verified
|
Raw
History Blame Contribute Delete
4.03 kB
metadata
license: mit
library_name: pytorch
pipeline_tag: image-segmentation
tags:
  - semantic-segmentation
  - microstructure
  - materials-science
  - segment-anything
  - lora
  - matsam

MatSAM Fine-Tuned Checkpoints for Microstructure Segmentation

Model Description

This repository contains dataset-specific fine-tuned parameter checkpoints for MatSAM with a ViT-H image encoder. The files do not contain the full base model. Each checkpoint must be loaded together with the official SAM ViT-H checkpoint sam_vit_h_4b8939.pth using the matching test script.

Source code: https://github.com/WUT-AI-AI4Mat/Segmentation-methods-evaluation-for-quantitative-microstructure-analysis

Fine-Tuning Routes and Checkpoints

Dataset Route Classes File
Aachen-Heerlen LoRA plus mask decoder 2 checkpoints/Aachen-Heerlen/matsam_lora_decoder_best.pth
EMPS LoRA plus mask decoder 2 checkpoints/EMPS/matsam_lora_decoder_best.pth
Grain LoRA plus mask decoder 2 checkpoints/Grain/matsam_lora_decoder_best.pth
EBC LoRA, mask decoder, and class tokens 3 checkpoints/EBC/semantic_matsam_best.pth
Super LoRA, mask decoder, and class tokens 3 checkpoints/Super/semantic_matsam_best.pth
MetalDAM LoRA, mask decoder, and class tokens 5 checkpoints/MetalDAM/semantic_matsam_best.pth
UHCS LoRA, mask decoder, and class tokens 7 checkpoints/UHCS/semantic_matsam_best.pth

Class counts include background.

Base Model Requirement

Download the SAM ViT-H base checkpoint from Meta: https://dl.fbaipublicfiles.com/segment_anything/sam_vit_h_4b8939.pth

The fine-tuned files contain LoRA and mask-decoder parameters. Multiclass files also contain learned class-token parameters. They are not standalone weights.

Training Details

  • Base architecture: ViT-H
  • SAM encoder input: longest side resized and padded to 1024 x 1024
  • Training batch size: 1
  • Epochs: 200
  • Optimizer: AdamW
  • Learning rate: 0.0001
  • Weight decay: 0.0001
  • Scheduler: CosineAnnealingLR with minimum learning rate 0.000001
  • Early-stopping patience: 50
  • LoRA rank: 8
  • LoRA alpha: 16
  • LoRA dropout: 0.05
  • LoRA targets: qkv and proj
  • Binary objective: BCE, Dice, and IoU MSE
  • Multiclass objective: cross-entropy and Dice

Usage

Example for binary EMPS segmentation:

hf download NAMESPACE/microstructure-matsam checkpoints/EMPS/matsam_lora_decoder_best.pth --local-dir weights/matsam
python matsam/test_lora_decoder.py \
  --dataset-root /path/to/EMPS \
  --checkpoint weights/pretrained/sam_vit_h_4b8939.pth \
  --finetuned-checkpoint weights/matsam/checkpoints/EMPS/matsam_lora_decoder_best.pth \
  --output-dir results/matsam_emps \
  --method-type 2

For Grain, use --method-type 1. For other metallographic datasets, use --method-type 2. For multiclass checkpoints, use matsam/test_semantic_matsam.py and pass the class count from the table.

Inference Parameters

The original automatic-mask path uses n_per_side_base=54, pred_iou_thresh=0.88, stability_score_thresh=0.9, box_nms_thresh=0.7, crop_nms_thresh=0.7, and crop_n_layers=0. The binary fine-tuned path uses point prompts and thresholds of 0.7 for predicted IoU and stability score.

Evaluation, Intended Use, and Limitations

Evaluation restores masks to their original image dimensions and calculates the common benchmark metrics through Myutils/metrics.py. These checkpoints are intended for research reproduction on the named datasets. They require the exact ViT-H base architecture and matching script. They may not generalize to unseen materials or imaging conditions and are not validated for safety-critical or industrial quality-control decisions.

License and Citation

The released experiment files are provided under the MIT license. The SAM base checkpoint and MatSAM implementation remain subject to their upstream terms. The base checkpoint is not redistributed here. A paper citation will be added after publication.