| # Handcrafted solution example for the S23DR competition | |
| This repo provides an example of a simple algorithm to reconstruct wireframe and submit to S23DR competition. | |
| The repo consistst of the following parts: | |
| - `script.py` - the main file, which is run by the competition space. It should produce `submission.parquet` as the result of the run. | |
| - `hoho.py` - the file for parsing the dataset at the inference time. Do NOT change it. | |
| - `handcrafted_solution.py` - contains the actual implementation of the algorithm | |
| - other `*.py` files - helper i/o and visualization utilities | |
| - `packages/` - the directory to put python wheels for the custom packages you want to install and use. | |
| ## Solution description | |
| The solution is simple. | |
| 1. Using provided (but noisy) semantic segmentation called `gestalt`, it takes the centroids of the vertex classes - `apex` and `eave_end_point` and projects them to 3D using provided (also noisy) monocular depth. | |
| 2. The vertices are connected using the same segmentation, by checking for edges classes to be present - `['eave', 'ridge', 'rake', 'valley']`. | |
| 3. All the "per-image" vertex predictions are merged in 3D space if their distance is less than threshold. | |
| 4. All vertices, which have zero connections, are removed. | |
| ## Example on the training set | |
| See in [notebooks/example_on_training.ipynb](notebooks/example_on_training.ipynb) | |
| --- | |
| license: apache-2.0 | |
| --- | |