MALUNet 路 CVC-ClinicDB (Polyp Segmentation)

Lightweight U-shape segmentation network adapted from jcruan519/MALUNet and trained on CVC-ClinicDB for binary polyp segmentation in colonoscopy frames.

Model

  • Architecture: MALUNet (DGA + IEA + CAB + SAB)
  • Channels: [8, 16, 24, 32, 48, 64], split_att="fc", bridge=True
  • Input: RGB, 256脳256
  • Output: single-channel sigmoid mask (1 = polyp)
  • Parameters: ~0.18 M

Training

  • Dataset: CVC-ClinicDB (612 paired image/mask frames)
  • Split: 80% train / 20% val (seeded by filename, seed=42)
  • Loss: BCE + Dice
  • Optimizer: AdamW, lr=1e-3, weight_decay=1e-2
  • Schedule: CosineAnnealingLR, T_max=50, eta_min=1e-5
  • Augmentations: random h/v flip, random rotation
  • Epochs: 150

Usage

import torch
from huggingface_hub import hf_hub_download
from infer import load_model, predict_mask  # infer.py from this repo
from PIL import Image

model = load_model("YOUR_USERNAME/malunet-cvc")
mask = predict_mask(model, Image.open("polyp.png"))
Image.fromarray(mask).save("mask.png")

infer.py and models/malunet.py are bundled in this repo so you can also clone it and run inference without the original training code.

Limitations

  • Trained on CVC-ClinicDB only (612 frames, single source). Generalization to other colonoscopy systems / patient populations is unverified.
  • Not a medical device. Research / demo use only.
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 馃檵 Ask for provider support