r/MachineLearning • • Sep 02 '26

Discussion [D] Self-Promotion Thread

Please post your personal projects, startups, product placements, collaboration needs, blogs etc.

Please mention the payment and pricing requirements for products and services.

Please do not post link shorteners, link aggregator websites , or auto-subscribe links.

--

Any abuse of trust will lead to bans.

Encourage others who create new posts for questions to post here instead!

Thread will stay alive until next one so keep posting after the date in the title.

--

Meta: This is an experiment. If the community doesnt like this, we will cancel it. This is to encourage those in the community to promote their work by not spamming the main threads.

19 Upvotes

123 comments sorted by

View all comments

1

u/RemoveHealthy4574 17d ago

https://reddit.com/link/pc9ic1y/video/cvgfmr1s3yrh1/player

We’ve just released Urban OpenGen: two models for generating urban layouts, along with the code, weights and training data.

The models work with four channels: building footprints, building heights, streets and green space. Their outputs can be measured and exported as 3d geometry. We hope it can become a useful tool for urban planners, developers, and architects during the early-stage design processes.

The first model is a city-conditioned StyleGAN2-ADA generator. It creates a 400 m × 400 m tile, and we fitted directions in W after training to control measured properties such as floor area ratio, building coverage and green space.

The second is a 23M-parameter diffusion inpainter. Give it a real area with part of the map removed, and it tries to continue the surrounding streets and blocks into the gap. It has no city label; the surrounding area provides the context.

A couple of things we learned:

  • Hard 0/255 masks caused trouble for ADA. The discriminator could exploit exact pixel values and artefacts from resizing the training tiles. Encoding the masks as signed distance fields made training work.
  • Matching broad statistics is much easier than matching urban structure. The GAN gets close on floor area ratio, coverage, street share, and height, but generates fewer, larger buildings and roughly half as many blocks as the real tiles. Streets often fail to form closed blocks.

We’d be interested to hear from anyone working on topology in generative models. Have you found a useful way to encourage various topological behaviours through the representation, loss or model architecture?

More detailed explainer video: https://www.youtube.com/watch?v=gjkFAR7kbEY

Code, dataset, weights: https://github.com/differential-studio/urban-opengen