NeDS / README.md
BiliSakura's picture
Update README.md
6081e2d verified
|
raw
history blame
2.83 kB
metadata
license: cc-by-nc-4.0
extra_gated_prompt: >-
  This model is released for research and educational purposes only. Access to
  the model is granted upon agreement to use it ethically, responsibly, and in
  compliance with the stated license (CC BY-NC 4.0).
extra_gated_fields:
  Full Name: text
  Institution / Organization: text
  Position / Title: text
  Company / School: text
  Country: country
  I want to use this model for:
    type: select
    options:
      - Research
      - Education
      - label: Other
        value: other
  I agree to use this model for non-commercial use ONLY: checkbox
  I confirm I will not use this model to cause harm to human subjects or the environment: checkbox

NeDS Model Card (RSE 2025)

This repository hosts a NeDS checkpoint trained on xView2 tier3 with 512x512 crops.

Default: follow the official implementation

For the primary and recommended workflow, follow the official NeDS codebase:

  • Official repo: https://github.com/Z-Zheng/pytorch-change-models
  • NeDS model source there: torchange/models/neds.py

If you are reproducing paper behavior or training/evaluation procedures, use the official repository first.

Extra in this repo: Diffusers quick start

In addition to the official path, this folder provides a self-contained Diffusers demo that does not require importing pytorch-change-models.

Included files:

  • neds_diffusers.py: custom NeDS + NeDSPipeline for Diffusers
  • infer_neds.py: end-to-end inference script
  • converted controlnet checkpoints:
    • nds_v1_tier3_512_diffusers_bf16
    • nds_v1_tier3_512_diffusers_fp32

The demo loads through native Diffusers DiffusionPipeline.from_pretrained(...) with custom_pipeline.

Quick start (DiffusionPipeline demo)

import torch
from pathlib import Path
from diffusers import DiffusionPipeline
from neds_diffusers import NeDS

dtype = torch.bfloat16
controlnet = NeDS.from_pretrained("./nds_v1_tier3_512_diffusers_bf16", torch_dtype=dtype)

pipe = DiffusionPipeline.from_pretrained(
    "sd2-community/stable-diffusion-2-1",
    custom_pipeline=str(Path("neds_diffusers.py").resolve()),
    controlnet=controlnet,
    torch_dtype=dtype,
    safety_checker=None,
    requires_safety_checker=False,
).to("cuda")

# See infer_neds.py for complete preprocessing and call arguments.

Citation

@article{zheng2025neural,
  title={Neural disaster simulation for transferable building damage assessment},
  author={Zheng, Zhuo and Zhong, Yanfei and Wan, Zijing and Zhang, Liangpei and Ermon, Stefano},
  journal={Remote Sensing of Environment},
  volume={331},
  pages={114979},
  year={2025},
  publisher={Elsevier},
  doi = {https://doi.org/10.1016/j.rse.2025.114979},
  url = {https://www.sciencedirect.com/science/article/pii/S0034425725003839},
}