How to go about 2D to 3D conversion programmatically?

I’m working on a project that needs to convert a 2D floor plan to 3D with walls and windows and doors minimally.

So far I’m thinking I can:

  1. Parse the 2D image with some image recognition API to generate vertices of walls, windows, doors
  2. Then create meshes programmatically from those vertex points for each mesh entity.

However, I don’t want to re-invent the wheel and also that does that seem like a lot of work from ground up.

So has anyone worked/experience in anything similar and what’s a good place to start ?

I would have thought someone would have an open source library for the first part at least.

It’s more about machine learning, I guess.

Yeah, that’s my current plan. I will be training a model with a bunch of images so that it can recognise vertices and go from there to draw the walls and meshes i need programmatically.

Was hoping to find something ready made though, it seems like such a common problem that someone should’ve solved it.

I just found this which has an API to convert floor plans to 3D: https://3d.io/

Worth a look?

Wow, Thank you @yaustar.
This service looks pretty promising. Appreciate you remembering this and linking it here :slight_smile:

Although 3 years late, I’ll answer this for myself. There is indeed an API that I had to build that uses Machine learning to do automatic 2D to 3D conversion - https://www.homely.ai/

4 Likes