plateau_parse — DRIVE japan op

• 数据种类:any → table

• 调用: import fullseye as fs; fs.ledger.plateau_parse(source: 'str | Path | bytes', *, origin: 'tuple[float, float] | None' = None, max_buildings: 'int | None' = None) -> 'dict[str, Any]'(要直接调用实现,import driveplateau; driveplateau.plateau_parse(source: 'str | Path | bytes', *, origin: 'tuple[float, float] | None' = None, max_buildings: 'int | None' = None) -> 'dict[str, Any]';从台账取用则 opsdrive.get("plateau_parse"))

用法

从 PLATEAU CityGML 流式读取建筑的底面多边形、高度和底面标高。

用 iterparse 在 Building(本地名)的每个 end 事件处理, 处理后用 elem.clear() 释放内存(设计为即使单个文件数百 MB 也能运行)。

对每栋建筑:

• 若有 measuredHeight 则用作高度。若无,则取 lod1Solid 的最大标高 − 最小标高。

• 底面轮廓: 若有 lod0FootPrint 则用其 posList。若无,则取 lod1Solid 所有面中 平均标高最低的面(LOD1 是挤出柱体,因此有底面)。

• posList 按 EPSG:6697 的"纬度 经度 标高"三元组读取。

Args:

source: CityGML 字符串(以 < 开头)、bytes,或文件路径(str/Path)。

origin: 局部坐标的原点 (lat0, lon0) [deg]。None 时为最先采用的建筑的重心。

max_buildings: 采用的建筑数上限(None 为无限制)。达到时停止读取。

Returns:

{"origin": (lat0, lon0), "buildings": [...], "n_skipped": int, "crs": "EPSG:6697 (lat, lon, alt)"}。每栋建筑为

{"id", "footprint" (k,2) float64(局所 x,y[m]、閉じない、反時計回り), "height", "ground_z", "lat", "lon"}(lat/lon 为底面轮廓顶点的平均 = 重心)。

Raises:

ValueError: source 为空/无效、posList 不是 3 的倍数、XML 损坏、

max_buildings 为负、origin 无效。

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者、年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• gallery_drive_city_terrain — py -3.11 examples/gallery_drive_city_terrain.py

• poc_driving_japan_town — py -3.11 examples/poc_driving_japan_town.py

类型可衔接的下一个算子(可接受 table 作为输入)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

同类别(japan)

osm_synthetic · osm_parse · osm_road_graph · osm_road_mask · osm_road_loops · osm_route · japan_world · japan_stats


*Provenance: driveplateau.py — DRIVE 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.