Skip to content

The implementation of "HouseDiffusion: Vector Floorplan Generation via a Diffusion Model with Discrete and Continuous Denoising", https://arxiv.org/abs/2211.13287

License

Notifications You must be signed in to change notification settings

ziyu4huang/house_diffusion

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HouseDiffusion

HouseDiffusion: Vector Floorplan Generation via a Diffusion Model with Discrete and Continuous Denoising

Installation

1. Clone our repo and install the requirements:

Our implementation is based on the public implementation of guided-diffusion. For installation instructions, please refer to their repository. Keep in mind that our current version has not been cleaned and some features from the original repository may not function correctly.

git clone https://github.com/aminshabani/house_diffusion.git
cd house_diffusion
pip install -r requirements.txt
pip install -e .

2. Download the dataset and create the datasets directory

  • You can download the datasets from RPLAN's website or by filling this form.
  • We also use data preprocessing from House-GAN++ which you can find in this link. Put all of the processed files from the downloaded dataset in a datasets folder in the current directory:
house_diffusion
├── datasets
│   ├── rplan
|   |   └── 0.json
|   |   └── 1.json
|   |   └── ...
|   └── ...
└── guided_diffusion
└── scripts
└── ...
  • We have provided a temporary model that you can download from Google Drive.

Running the code

1. Training

You can run a single experiment using the following command:

python image_train.py --dataset rplan --batch_size 32 --set_name train --target_set 8

2. Sampling To sample floorplans, you can run the following command from inside of the scripts directory. To provide different visualizations, please see the save_samples function from scripts/image_sample.py

python image_sample.py --dataset rplan --batch_size 32 --set_name eval --target_set 8 --model_path ckpts/exp/model250000.pt --num_samples 64

You can also run the corresponding code from scripts/script.sh.

Citation

@article{shabani2022housediffusion,
  title={HouseDiffusion: Vector Floorplan Generation via a Diffusion Model with Discrete and Continuous Denoising},
  author={Shabani, Mohammad Amin and Hosseini, Sepidehsadat and Furukawa, Yasutaka},
  journal={arXiv preprint arXiv:2211.13287},
  year={2022}
}

About

The implementation of "HouseDiffusion: Vector Floorplan Generation via a Diffusion Model with Discrete and Continuous Denoising", https://arxiv.org/abs/2211.13287

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.5%
  • Shell 0.5%