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

TU Delft 3D geoinformation & FOSS

9c7f843b850f4e4beeb53c93893c4ff0?s=47 Hugo Ledoux
November 25, 2015

TU Delft 3D geoinformation & FOSS

Overview of the FOSS activities of the 3D geoinformation research group at TU Delft (https://3d.bk.tudelft.nl).

Presented at the osgeo.nl day (Den Bosch, the Netherlands)

9c7f843b850f4e4beeb53c93893c4ff0?s=128

Hugo Ledoux

November 25, 2015
Tweet

More Decks by Hugo Ledoux

Other Decks in Science

Transcript

  1. TU Delft 3D geoinformation & FOSS Hugo Ledoux & Filip

    Biljecki 2015-11-25 OSGeo.nl dag 2015, Den Bosch
  2. 3d.bk.tudelft.nl

  3. None
  4. Quick overview of our FOSS projects 4 pprepair val3dity masbcpp

    Random3DCity Solar3DCity lcc-tools
  5. github.com/tudelft3d 5

  6. Validation & automatic repair

  7. Int’l rules for validation of 2D polygons 7 Validation of

    a polygon = a solved problem OGC Simple Features and ISO19107 rules: 1 no self-intersection 2 closed boundaries 3 rings can touch but not overlap 4 no duplicate points 5 no dangling edges 6 connected interior 7 etc p2 p4 p5 p6 p7 p8 p9 p3 p12 p11 p10 p1 exterior boundary interior boundary 8 / 26
  8. 2D polygons: often plagued by errors 8

  9. Invalid data: what to do? 9

  10. Complex and large polygons: “that’s another cook” 10

  11. Complex and large polygons: “that’s another cook” 11 148,612 vertices

    5,132 interior rings
  12. None
  13. None
  14. None
  15. None
  16. None
  17. prepair & pprepair GPL v3 uses CGAL & GDAL C++

    CLI + QGIS plugin mature? 8/10
  18. Automatic repairin With my colleague John Z of the most

    common err Errors = very common in 3D buildings 18 12
  19. ISO19107 = also in 3D 19 s1 s2 s3 s4

    invalid invalid valid valid s9 s10 s11 s12 invalid invalid valid invalid s5 s6 s7 s8 invalid invalid invalid valid
  20. Validation of Solids acc. to ISO 19107 rules VALIDATE YES

    :) NO :( valid? 20 val3dity GPL v3 uses CGAL input = CityGML and GML C++ CLI only mature? 9/10
  21. Outputs a report with the errors 21 <val3dity> <inputFile>delft.gml</inputFile> <snaptolerance>0.001</snaptolerance>

    <time>Tue Apr 22 12:07:11 2014</time> <Solid> <id>6e359e22-e6d7-41d1-ba8c-91e0068704f7</id> <ValidatorMessage> <type>ERROR</type> <errorCode>210</errorCode> <errorType>NON_PLANAR_SURFACE</errorType> <shell>1</shell> <face>14</face> </ValidatorMessage> </Solid> <Solid> <id>59feffb1-604c-4032-b414-1d72f1d2371d</id> <ValidatorMessage> <type>ERROR</type> <errorCode>400</errorCode> <errorType>SHELLS_FACE_ADJACENT</errorType> <shell>2</shell> <face>3</face> </ValidatorMessage> </Solid> </val3dity> IDs of gml:Solid used link to specific surface where the problem is error type
  22. Automatic repair of 3D buildings 22

  23. None
  24. Skeleton of point clouds

  25. Medial-axis transform (MAT) = “skeleton” 25

  26. Medial-axis transform (MAT) = “skeleton” 26 Figure from “The Power

    Crust”. Amenta N, Choi S & Kolluri RK. (2001)
  27. None
  28. 28

  29. 29 masbcpp GPL v3 C++ (~250k pts/s) CLI only mature?

    5/10 works with noisy input
  30. 30 “Smart” simplification of point clouds 25%

  31. Visualisation of point clouds 31 New focus: visualisation

  32. Visualisation of point clouds: splatting 32 atting r

  33. Visualisation of point clouds: splatting 33

  34. Visualisation of point clouds: adaptive splatting 34 Generalisation of point

    clouds 16 New Simple points Simplified (80% reduction) Full data Splats
  35. Higher-dimensional GIS

  36. Higher-dimensional modelling = 4D, 5D, 6D+ 36 3D space Scale

    Time 5D modelling + + = •Mathematically easy but tools are needed From multiple representation to higher dimensional GIS x y z time scale
  37. Motivation 3D+time data

  38. Extrusion: from nD to (n+1)D 38 B C

  39. Extrusion: from nD to (n+1)D 39   &YUSVTJPO B

    b a c C 'JHVSF  5IF EBSUT JO UIF DFMM DPNQMFYFT JO 'JHVSF  /PUF UIBU UIF EBSUT PG UIF SJHIU DVCF JO C XIFO WJFXFE BT JOEJWJEVBM TUBDLT BSF TJNJMBS UP UIF POFT JO 'JHVSF  5IF EBSUT PG UIF MFȈ CPY BSF IPXFWFS EJȊFSFOU UIPTF PO UIF MFȈ BMM JOWPMWF BO FYUSVTJPO BMPOH UIF JOUFSWBM ܎ ܐ EVF UP UIF GBDU UIBU UIFSF JT OP WFSUFY FEHF PS GBDFU FYUSVEFE UP ܏ 0O UIF PUIFS IBOE UIPTF JO UIF SJHIU EP IBWF B WFSUFY BOE BO FEHF BU ܏ CVU OPU B GBDFU BOE TUJMM CFMPOH UP UIF TBNF WPMVNF WBM BOE "MHPSJUIN  CZ UIF FOE PG POF *G BO JOQVU EBSU JT EFOPUFE
  40. The TU Delft Aula in 4D! 40 n-D extrusion •(n-1)-D

    + range → n-D
  41. lcc-tools MIT C++ based on CGAL Linear Cell Complexes two

    nD construction methods mature? 4/10
  42. Random3DCity Solar3DCity

  43. Filip Biljecki @fbiljecki Random3Dcity and Solar3Dcity

  44. None
  45. Introduction • CityGML - Open Geospatial Consortium • GIS format

    • XML / GML based • Strong semantic support • Poor software support and adoption
  46. <cityObjectMember> <bldg:Building gml:id="e6bceea1-b6f5-49d0-9f88- ab7097f78160"> ... <bldg:boundedBy> <bldg:GroundSurface> <bldg:lod2MultiSurface> <gml:MultiSurface> <gml:surfaceMember>

    <gml:Polygon gml:id="5980676e-15fe-4d92- baca-0a158c148037"> <gml:exterior> <gml:LinearRing> <gml:posList> 0.0 0.0 0.0 -2.7931 3.5918 0.0 4.5326 9.2885 0.0 7.3257 5.6967 0.0 0.0 0.0 0.0 </gml:posList> ...
  47. None
  48. Getting multi-LOD data • Real-world data rarely come in multiple

    LODs • Ways to get 3D models in multiple LODs: • Acquisition: Expensive • Generalisation: generalisation solutions not available • Procedural modelling: free
  49. Procedural modelling • Creating realistic 3D models based on a

    set of rules • Supplementing GIS data sets (-> synthetic data) • Suited for animations, gaming, movies, … • Example input: 2D footprints Müller et al. (2006). Procedural modeling of buildings. ACM Transactions on Graphics, 25(3), 614–623. http://doi.org/10.1145/1179352.1141931
  50. None
  51. None
  52. None
  53. None
  54. None
  55. None
  56. Benefits • First CityGML synthetic data source • Focus on

    multi-LOD generation and interior • Suited for multi-LOD experiments to compute the accuracy of each LOD 1.1 1.2 1.3 2.0 2.1 2.2 2.3 3 Level of detail 0.0 0.2 0.4 0.6 0.8 1.0 Normalised root mean square error and cost ✏1 ✏2 ✏3 Cost
  57. To do • Complex buildings • Different styles and architecture

  58. Insolation: “How much sun a building receives?” • Is it

    worth to put solar panels? Where exactly?
  59. 3D city models Tilt, orientation, size Shadow

  60. Solar3Dcity • Estimating the insolation of roof surfaces in CityGML

  61. None
  62. Gulin, M., Vašak, M. & Baotić, M., 2013. Estimation of

    the global solar irradiance on tilted surfaces. In Proceedings of EDPE 2013. Dubrovnik, Croatia, pp. 334–339. Global radiation = direct + diffuse + reflected
  63. J. Twidell and T. Weir, Renewable Energy Resources, 2nd ed.

    & Francis, 2005.
  64. Estimating the irradiation • Solar estimations:
 f (location, tilt, azimuth,

    area, weather, …) • Many empirical models • Time-dependant—each day, each hour is different • Integrate the values over a year with 1h increments Perez, R. et al., 1990. Modeling daylight availability and irradiance components from direct and global irradiance. Solar Energy, 44(5), pp.271–289.
  65. Example for three surfaces during two days • Surface A

    = tilt 40 deg towards south (180) • Surface B = vertical wall towards east (90, 90) • Surface H = horizontal surface (e.g. flat roof) • Dates: 1 Mar, 21 Jun • Location dependent, weather dependent
  66. 04:00:00 06:00:00 08:00:00 10:00:00 12:00:00 14:00:00 16:00:00 18:00:00 Time (UTC)

    0 200 400 600 800 1000 Global solar radiation (W/m2) Clear-sky global solar radiation for Delft, the Netherlands A on 1 Mar B on 1 Mar H on 1 Mar
  67. 04:00:00 06:00:00 08:00:00 10:00:00 12:00:00 14:00:00 16:00:00 18:00:00 Time (UTC)

    0 200 400 600 800 1000 Global solar radiation (W/m2) Clear-sky global solar radiation for Delft, the Netherlands A on 1 Mar B on 1 Mar H on 1 Mar A on 21 Jun B on 21 Jun H on 21 Jun
  68. None
  69. None
  70. Conclusion • Addressing lack of software support for CityGML •

    Open-source tools • @fbiljecki • https://3d.bk.tudelft.nl
  71. thank you. 3d.bk.tudelft.nl/hledoux Hugo Ledoux 3d.bk.tudelft.nl/biljecki Filip Biljecki github.com/tudelft3d