coverage-summary.json 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. {
  2. "bounds": [
  3. 110.328749941417,
  4. 28.3917230659234,
  5. 110.465779226663,
  6. 28.4913038992907
  7. ],
  8. "sourceInventory": {
  9. "residential": 5,
  10. "osmBuildings": 169,
  11. "osmRoads": 800,
  12. "water": 4,
  13. "osmLanduse": 6
  14. },
  15. "districts": [
  16. {
  17. "id": "south",
  18. "label": "城南",
  19. "bbox": [
  20. 110.328749941417,
  21. 28.3917230659234,
  22. 110.465779226663,
  23. 28.432
  24. ],
  25. "residentialIds": [
  26. 63,
  27. 65,
  28. 130
  29. ],
  30. "residentialSqKm": 3.66,
  31. "osmBuildingCount": 6,
  32. "roadCount": 41,
  33. "status": "unreviewed",
  34. "priority": "regular-first"
  35. },
  36. {
  37. "id": "river-central",
  38. "label": "沿江老城区",
  39. "bbox": [
  40. 110.328749941417,
  41. 28.432,
  42. 110.465779226663,
  43. 28.455
  44. ],
  45. "residentialIds": [
  46. 65,
  47. 66,
  48. 126
  49. ],
  50. "residentialSqKm": 6.95,
  51. "osmBuildingCount": 40,
  52. "roadCount": 62,
  53. "status": "unreviewed",
  54. "priority": "old-town-and-regular"
  55. },
  56. {
  57. "id": "north",
  58. "label": "城北",
  59. "bbox": [
  60. 110.328749941417,
  61. 28.455,
  62. 110.465779226663,
  63. 28.4913038992907
  64. ],
  65. "residentialIds": [
  66. 66
  67. ],
  68. "residentialSqKm": 4.29,
  69. "osmBuildingCount": 127,
  70. "roadCount": 131,
  71. "status": "unreviewed",
  72. "priority": "old-town-and-regular"
  73. }
  74. ],
  75. "sourceBacked": {
  76. "scope": "one individually traced estate, not city coverage",
  77. "roofTraces": 21,
  78. "acceptedModules": 15,
  79. "excludedModules": 26,
  80. "excludedReasons": "original DEM relief >2.5m"
  81. },
  82. "oldTownBacked": {
  83. "scope": "source-backed urban fill from mapped OSM polygons and satellite roof segmentation",
  84. "placementSources": {
  85. "osm-building-footprint": 195,
  86. "imagery-roof-segmentation": 5006
  87. },
  88. "footprintPlanned": 5201,
  89. "footprintSources": 3757,
  90. "seated": 4788,
  91. "seatedSources": 3359,
  92. "construction": {
  93. "plinth": 361,
  94. "flat": 4110,
  95. "terraced": 317
  96. },
  97. "excludedFootprints": 2412,
  98. "excludedModules": 2991,
  99. "exclusionReasons": {
  100. "irregular OSM outline; needs custom geometry rather than a rectangle": 2,
  101. "already represented by the audited district sample": 13,
  102. "imagery mask 63 is not a trusted building area (see imagery-footprints-verify.png)": 21,
  103. "imagery mask 130 is not a trusted building area (see imagery-footprints-verify.png)": 404,
  104. "footprint is not fully inside a verified residential mask": 7,
  105. "approved asset library cannot carry this footprint without distortion": 1331,
  106. "source outline is not rectangular enough for the approved assets": 16,
  107. "module would sit on the mapped roadway": 176,
  108. "module collides with mapped road, water, building or an accepted module": 442
  109. },
  110. "imagerySegmentation": {
  111. "accepted": 6000,
  112. "trustedMasks": [
  113. 65,
  114. 66,
  115. 126
  116. ],
  117. "untrustedMasks": {
  118. "63": "river/farmland sliver; greenhouse roofs",
  119. "130": "industry park; bright yards read as roof"
  120. },
  121. "limitations": [
  122. "This is imagery segmentation, not survey geometry. Boundaries follow visible roof pixels at about 0.26 m/px.",
  123. "Two touching buildings with no shadow or brightness edge between them merge into a single footprint.",
  124. "Very dark roofs on dark ground are missed or merged with the ground, because brightness cannot separate them.",
  125. "Dark blue roofs can be classified as water, because they are dark, blue-dominant and smooth.",
  126. "The emitted polygon is a minimum-area rotated rectangle: it does not follow L-shapes, courtyards or roof ridges.",
  127. "Bare bright ground (construction spoil, concrete yards) can be classified as light roof; the fill, side and ring filters remove most but not all of it.",
  128. "Positional uncertainty is on the order of one to two pixels, roughly 0.3-0.6 m.",
  129. "No height, storey count or roof material is derived; only the footprint outline."
  130. ]
  131. }
  132. },
  133. "previousSample": {
  134. "scope": "evidence-bound district sample; not full-city reconstruction",
  135. "accepted": 37
  136. },
  137. "runtimeVerification": {
  138. "passed": true,
  139. "checkedAt": "2026-09-29T11:11:15.711Z",
  140. "trees": {
  141. "oldtown": {
  142. "placed": 4601,
  143. "seatedInPlan": 4788,
  144. "unfitted": 187,
  145. "cells": 319,
  146. "coarseCells": 39,
  147. "outsidePrimaryArea": 0,
  148. "onMappedTrafficRoad": 0,
  149. "outsideResidentialMask": 0,
  150. "rootAnchor": "root-anchor.glb"
  151. },
  152. "regular-estate": {
  153. "placed": 15,
  154. "seatedInPlan": 15,
  155. "unfitted": 0,
  156. "cells": 4,
  157. "coarseCells": 0,
  158. "outsidePrimaryArea": 0,
  159. "onMappedTrafficRoad": 0,
  160. "outsideResidentialMask": 0,
  161. "rootAnchor": "root-anchor.glb"
  162. },
  163. "district": {
  164. "placed": 37,
  165. "seatedInPlan": 55,
  166. "unfitted": 18,
  167. "cells": 4,
  168. "coarseCells": 0,
  169. "outsidePrimaryArea": 0,
  170. "onMappedTrafficRoad": 0,
  171. "outsideResidentialMask": 0,
  172. "rootAnchor": "root-anchor.glb"
  173. },
  174. "oldtownProvenance": {
  175. "placementSources": {
  176. "osm-building-footprint": 195,
  177. "imagery-roof-segmentation": 5006
  178. },
  179. "footprintSources": 3757,
  180. "modulesWithRecordedSource": 5201
  181. }
  182. },
  183. "sourceConflictCount": 5
  184. },
  185. "runtime": {
  186. "defaultModelEnabled": false,
  187. "reviewUrl": "http://127.0.0.1:8092/preview.html",
  188. "lightingFlag": "map.tilesets[].lighting=true",
  189. "lod": "coarse spatial parents with REPLACE LOD1/LOD0 children"
  190. },
  191. "disclaimer": "This ledger counts generated artifacts, not surveyed coverage. Heights and facades are estimated; imagery-segmented footprints are per-roof rectangles, not survey geometry; the estate source conflicts listed in city-model-verification.json still need a human decision."
  192. }