Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Maybe it’s time to do something with all those 3D city models?

Hugo Ledoux
October 13, 2021

Maybe it’s time to do something with all those 3D city models?

Keynote given at 3DGeoInfo 2021 conference (https://3dgeoinfo2021.github.io/) on 2021-10-12

Recording of the talk is also available:
https://youtu.be/EGf3832F1B0

Hugo Ledoux

October 13, 2021
Tweet

More Decks by Hugo Ledoux

Other Decks in Science

Transcript

  1. Hugo Ledoux


    Delft University of Technology
    Maybe it’s time to do something

    with all those 3D city models?
    3D GeoInfo 2021


    at home in my pyjamas


    2021-10-12

    View Slide

  2. solar potential
    shadow analysis
    noise modelling
    energy estimation
    bomb detonation
    wind turbulence
    pollutant tracking
    spatial planning
    • Goal of 3DGeoInfo conferences: push further 3D data
    modelling


    • So that 3D datasets are usable and interchangeable


    • is central as the semantic data model

    View Slide

  3. More and more 3D (open) data from cities
    3
    New York City


    (LoD2)

    View Slide

  4. More and more 3D (open) data from cities
    4
    Switzerland: 70M 3D
    objects are now open

    View Slide

  5. More and more 3D (open) data from cities
    5
    Helsinki: LoD2
    with textures

    View Slide

  6. More and more 3D (open) data from cities
    6
    56 cities in
    Japan

    View Slide

  7. More and more 3D (open) data from cities/countries
    7
    41 cities/countries!

    View Slide

  8. So, mission accomplished!?
    8

    View Slide

  9. Yeah, not


    so sure…

    View Slide

  10. More and more 3D (open) data from cities
    10
    Whole of the Netherlands:


    10M+ LoD1 buildings + terrain,
    roads, forest, etc.
    • 3D IMGeo: CityGML ADE


    • Government could produce the data, but very few could
    read it


    • Were the datasets really used?

    View Slide

  11. Where is the File/Open CityGML?
    11

    View Slide

  12. swisstopo downloads of their 3D model
    12
    -Raphaël Bovier, from his presentation at the 3D city modelling Workshop, Nordic
    Cooperation in the
    fi
    elds of Spatial Data and Land Administration (2021-09-29)

    View Slide

  13. Scientists in other communities are not really involved
    13
    • CFD/simulation community == OBJ/STL


    • Computer Graphics == OBJ/STL


    • Other communities have scientists involved in the
    ecosystem


    • Why so few here?

    View Slide

  14. Why are the datasets
    seldom used?

    View Slide

  15. UML shouldn’t be the main goal
    15
    • Many papers have as result UML


    • Most OGC standards focus on the
    data model


    • “Let’s model the full reality” →
    increases complexity


    • We stay at the theoretical level


    • Users are not central

    View Slide

  16. Standards don’t ensure usefulness (quite the contrary one might say…)
    16

    View Slide

  17. Quiz: you need to store 2D polygons, which one you choose?
    17
    GML 3.2.2 specs


    (427 pages)
    GeoJSON specs


    (28 pages )

    View Slide

  18. ADEs: where are the schemas?
    18
    Biljecki F, Kumar K, and Nagel C (2018). CityGML Application Domain Extension
    (ADE): overview of developments. Open Geospatial Data, Software and
    Standards (2018) 3:13
    • Only 18/44 ADEs have XSD schemas available


    • Some don’t have UML, just a description
    Files with ADEs are way more difficult
    to read than “vanilla” ones


    ➡ custom code

    View Slide

  19. Little focus on usable datasets
    19
    • Assumed encoding (GML) can be automatically derived
    from schemas


    • Datasets are often hierarchical and have annoying quirks

    View Slide

  20. “GML madness”: how many ways to store a simple square?
    20
    25 different
    ways

    View Slide

  21. Complex formats usually have fewer software support
    21
    No known JavaScript
    parser for CityGML files!?

    View Slide

  22. Real-life reactions of students in my course
    22
    When learning about semantic
    3D city models
    Trying to read a CityGML file


    with Python

    View Slide

  23. Many of us promote semantic formats but use… OBJ/STL
    23
    • OBJ and STL are super simple


    • They are used for decades in computer
    graphics, CFD, etc


    • Many software support them


    They. Just. Work.

    View Slide

  24. What can we do
    about it?

    View Slide

  25. Shouldn’t we apply the Rule of Least Power?
    25

    View Slide

  26. OK, but concretely here?
    26
    1. Make one usable profile of CityGML that supports most important
    parts (similar to Simple Features)


    2. Please no GML for the encoding, no developers want this


    3. Write parsers for the format (Python, JS, C++) so that others can
    just reuse/copy. Maybe an API to manipulate the data?


    4. Think “like a designer” (how will the product be used?)


    5. “Eat your own dog food”

    View Slide

  27. Two projects where we
    applied those principles

    View Slide

  28. CityJSON v1.0
    28
    1. "Building"


    2. "BuildingPart"


    3. "BuildingInstallation"


    4. "Road"


    5. "Railway"


    6. "TransportSquare"


    7. "TINRelief"


    8. "WaterBody"


    9. "PlantCover"


    10. "SolitaryVegetationObject"


    11. "LandUse"


    12. "CityFurniture"


    13. "GenericCityObject"


    14. "Bridge"


    15. "BridgePart"


    16. "BridgeInstallation"


    17. "BridgeConstructionElement"


    18. "Tunnel"


    19. "TunnelPart"


    20. “TunnelInstallation”


    21. “CityObjectGroup”


    • community standard


    • all modules of CityGML v2.0 are mapped 💪


    • Subset of CityGML (~97% of features)


    • software for full conversion CityGML <-> CityJSON


    • several software support it

    View Slide

  29. Same information as CityGML, but in JSON format
    29
    {


    "type": “CityJSON",


    "version": “1.0”,


    "metadata": {


    "referenceSystem": "urn:ogc:def:crs:EPSG::7415",


    },


    "CityObjects": {


    "id-1": {


    "type": "Building",


    "attributes": {


    "measuredHeight": 22.3,


    "roofType": "gable",


    "owner": “Elvis Presley"


    },


    "geometry": [


    {


    "type": "MultiSurface",


    "boundaries": [


    [[0, 3, 2, 1]], [[4, 5, 6, 7]], [[0, 1, 5, 4]]


    ]


    }


    ]


    }


    },


    "vertices": [


    [23.1, 2321.2, 11.0],


    [111.1, 321.1, 12.0],


    ...


    ],


    "appearance": {


    "materials": [],


    "textures":[],


    "vertices-texture": []


    }


    }


    human-readable file


    computers prefer this over XML


    ~6X compacter than CityGML

    View Slide

  30. Python parsing is very easy
    30

    View Slide

  31. CityJSON can be easily parsed with JavaScript
    31
    Developed by MSc
    students

    View Slide

  32. CityJSON is “ready” for machine learning
    32
    new!

    View Slide

  33. 3D BAG: all 10M+ buildings in the Netherlands
    33
    https://3dbag.nl

    View Slide

  34. LoD 2.2

    reconstruction
    3D BAG is based on open datasets
    34
    Point cloud
    (AHN3)
    Footprint (BAG)
    +
    X 10,000,000


    100% automatic

    View Slide

  35. 3 different LoDs
    35

    View Slide

  36. 3D BAG is tiled into *small* and *manageable* datasets
    36
    BAG polygons
    Quadtree


    Max 3500 buildings per tile

    View Slide

  37. Download is simple and fast
    37
    Stats last 2 weeks


    (~32000 downloads)


    CityJSON 56%


    OBJ 23%


    GPKG 21%


    PostgreSQL <1%

    View Slide

  38. Very careful about geometric validity
    38
    ~98% valid

    View Slide

  39. Amsterdam put our data in their Unity online platform within days
    39

    View Slide

  40. People outside our field used the data
    40
    Historical cadastre Shadow analysis

    View Slide

  41. We reached non-geo people
    41

    View Slide

  42. thank you.
    [email protected]


    3d.bk.tudelft.nl/hledoux
    Hugo Ledoux
    https://cityjson.org
    https://3dbag.nl

    View Slide