Skip to content

Summer 2023 CDB Workshop

Jerome St-Louis edited this page Jul 29, 2023 · 7 revisions

Scope

  • Vector data
  • Coverage data (at least Elevation)
  • Imagery
  • 3D Models (instanced and non-instanced)

Schedule & Objective

By August 3, 2023: 2+ participating organizations have produced sample data following the specification

By August 31, 2023: 2+ participating organizations have successful Technology Integration Experiments with consumers visualizing data from producers

Data Sources

Sample San Diego CDB test data provided by CAE

From ISG Year 2 Sprint: https://docs.ogc.org/per/21-058.html#_datasets

Reference data

See Example datasets and master GeoPackages

It mostly follows the storing approach below, except it currently uses Mapbox Vector Tiles instead of WKB Collection; and using JSON metadata for describing tile grouping instead of a "master" GeoPackage (the section includes the table content showing that those master GeoPackages should contain).

We had the following questions that were not yet fully addressed in the CDB X Sprint:

  • Where to store vector attributes when vector tiles for some features are stored in multiple geopackages?
  • In which GeoPackages to store shared textures / models when used in multiple GeoPackages?

The preliminary answer to these questions is that attributes, 3D models, and texture should be stored in all GeoPackages where they are referenced. GeoPackages for lower level groupings should have a generalized version of the data reducing the number of features, using lower resolution textures, and 3D models with lower polygon count, therefore limiting the occurrence and overhead of the same data being duplicated.

Storing approach

  • Tiling everything using GNOSIS Global Grid 2D Tile Matrix Set (GeoPackage 2DTMS Extension) -- NOTE: GGG specifies 256x256 tileMatrix Width/Height
  • Elevation: Tiled Gridded Coverage extension (GeoTIFF)
  • Imagery: JPEG (experiment with JPEG XL as well? -- better compression ratio/fewer visual artifacts/lossless possibility, transparency for partial tiles)
  • Vector: WKB "Collection" + GPKG VT Extension
    • Using attribute table extensions -- Where do attributes go? -- Preliminary answer: In the feature table of every GeoPackage where a vector tile references the table.
  • 3D Models ( https://github.com/ecere/geopackage/tree/master/spec/3d-models )
    • (instanced) Vector point tiles referencing shared glTF 3D models
    • (non-instanced) Vector point tiles referencing 3D models and/or glTF payload for whole tile directly in GeoPackage tiles table (multiple models can still be separate glTF nodes)
    • Where do shared glTF models go? -- Preliminary answer: In a models table of every GeoPackage that has tiles referencing them, assuming that the lower resolution GeoPackage would get a less detailed LOD and not cause major overhead.
    • Where do shared textures go? Preliminary answer: In a textures table (if shared) or inside the model (if not share) of every GeoPackage that uses the model, assuming that a less detailed version of the texture would be used at the higher up LOD grouping GeoPackages. Reference shared textures by URIs inside glTF.
  • GeoPackage indexing extension supporting "all in same GeoPackage" or "n-LOD grouping" per GeoPackage to cover from mobile/at-the-edge case (small local dataset) to world-wide petabyte repositories, with determinism to easily know exactly the GeoPackage where a particular tile is stored

Documents

Draft the following documents, ready for further progress towards Standardization:

  • CDB 2 GeoPackage Data Store (new, main document, concrete encoding of CDB 2 Core in GeoPackage databases following improved CDB 2 approaches e.g., fewer files, referencing several GeoPackage extensions; specifying a number of profilable options (e.g., OpenFlight or glTF models))
  • GeoPackage multi-part tile-based grouping and indexing extension (expand upon CDB X work -- master GeoPackage instead of JSON metadata)
  • GeoPackage 3D Models extension (improve upon https://github.com/ecere/geopackage/tree/master/spec/3d-models)
  • GeoPackage 2D TileMatrixSet extension (existing document)
  • GeoPackage Vector tiles extensions (existing documents: main extension, attribute tables -- also document WKB "Collection", combine as a single document?)
Clone this wiki locally