跳到主要内容
基础概念11 分钟阅读

街景数据可以怎么处理?从像素到城市研究

真正有用的答案不是一串研究领域,而是一条处理链:像素变成视觉特征,视觉特征变成空间指标——每一步都在决定最终那个数字被允许说什么。

作者
HuiTu Technology
发布时间
更新时间

在各类城市数据里,街景影像有一点很特别:任何人都看得懂。打开一张图,你立刻就能认出人行道、店面、树。正是这种「一眼可读」,让「街景数据可以用来做什么」这个问题,通常被一串研究领域回答掉——绿化、安全感、步行性、零售——而这些答案往往用不上。领域告诉你别人研究过什么,但没告诉你一个像素要经过哪些环节,才能变成一个你敢拿出去被追问的数字。

如今这方面的文献已经足够多,可以直接描述而不必猜测。2021 年发表在《Landscape and Urban Planning》上的一篇系统性综述筛选了 619 篇论文,归纳了 250 项研究,并把这些工作分成大约十类应用方向,横跨植被、感知、交通、建成环境与社会经济估计。本文的组织方式正好相反:不按学科分,而是按那 250 项研究都必须走过的三个处理层来分,并逐层说明它能支撑什么、支撑不了什么。

街景处理分三层

关于街景结果的争论——说某个数字不对、有偏、或者跨区不可比——几乎都可以还原成「它是哪一层产出的」之争。把三层拆开命名,争论就能各归其位,而问题往往就落在此前没人看的那一层。

三个层次,三种不同性质的产出
层次这一层在做什么产出是什么
影像层沿路网采样、全景到透视的重投影、固定朝向与俯仰角、针对占位图与遮挡的质检一套定义明确的影像集,每帧附元数据:点位 ID、朝向、拍摄月份、来源、授权
视觉特征层语义分割、目标检测、文字识别,以及用于相似检索和感知模型的特征嵌入逐帧的类别占比、目标计数、识别出的文本、特征向量
空间指标层把多朝向平均成点位画像、把点位挂接到路段、再把路段聚合到街区、格网或行政单元可与任意其他空间数据关联的分路段、分区域指标

三层是严格有序的,而误差只朝一个方向传递。再好的分割模型也修不了一个撒在方形格网上的样本;再细致的空间聚合也修不了从歪着拍的画面里算出来的类别占比。所以影像层这个看起来只是「管道」的部分,恰恰最需要设计上的投入。

影像层:一旦定下就没人回头改的决定

  • 沿路网固定一个采样间距并记录下来。城市场景通常取 20 到 50 米,而凡是你打算相互比较的单元,间距必须完全一致。
  • 每个点位渲染一组固定朝向——0°、90°、180°、270° 四张是研究中的常见做法——并且视场角与俯仰角在整个项目内保持不变。
  • 推理之前先把全景重投影为直线透视截图。模型是在普通照片上训练的,直接喂等距柱状全景,等于把弯曲的立面和拉伸的天空塞给一个从没见过它们的网络。
  • 筛掉那些会悄悄污染整批数据的帧:以成功状态返回的灰色占位图、落在街道点附近的室内全景、把整个视野填满的过路卡车、严重的镜头光晕,以及镜头上的雨水。
  • 为每一帧写一行清单,带上来源、授权、拍摄月份和确切的相机参数。后续所有结论都只是关于那个特定视野的陈述,没有清单就无法还原这个陈述。
并排停放的 Google 街景采集车,车顶各装有多镜头全景相机杆
平台影像背后的采集车:车顶架着多镜头相机组,沿路网行驶拍摄。相机高度、安装几何和行驶路线都由车队一方决定——正因如此,它们对你而言是必须加以控制的常量,而不是可以设定的参数。图片:Dennisbluie / Wikimedia Commons / CC BY 3.0。
香港街道的广角街景画面,画面中有双层巴士、玻璃幕墙门面、车道标线与路灯
采集平台直接给出的原始街景画面。注意画面边缘的弯曲:正因如此,推理之前要先把画面重投影为直线透视截图;直接从广角原图上读出的类别占比,和从校正后截图上读出的并不可比。图片:kaartcam 经 Mapillary / Wikimedia Commons / CC BY-SA 4.0。

视觉特征层:四种技术,四种性质的证据

  • 语义分割给每个像素赋一个类别,得到的是视野构成比例:站在这个点上的人,能看到多少车行道、植被、天空或建筑。
  • 目标检测返回带框的离散个体,得到的是计数与位置:标志牌、灯杆、垃圾桶、路边停车、行人。
  • 文字识别读出画面中的字符串——店招、路名牌、管制标志——从而把影像变成可以和工商名录关联的东西。
  • 特征嵌入把一帧压缩成一个向量,支撑相似检索、街道形态聚类,以及感知模型所用的回归头。

在它们之间做选择,不是「谁更先进」的问题。占比和计数回答的是不同问题:就像素而言,一个贴近镜头的行人可能压过远处的十几个人;所以只用分割构建的活力指标,会和只用检测构建的对不上,而两者在各自的定义下都可能是对的。

空间指标层:点 → 路段 → 区域

逐帧的数字对规划者还没有用,因为没人会针对一个「视野」做决策。聚合分三步走:先把多个朝向平均成每个点位一份画像,再把点位挂接到所属路段,最后把路段汇总到决策实际使用的单元。每一步都需要写下明确规则:一个路段至少要几个点才给值、只有一个点的路段怎么处理,以及不同拍摄月份的点位到底能不能放在一起平均。

三联研究图:校园路网、沿路网布设的采样点,以及同一个点在 0°、90°、180°、270° 四个朝向下的画面
把影像层摊开来看:一张路网、沿它布设的采样点,以及每个点在 0°、90°、180°、270° 下渲染、俯仰角固定为零的四张画面。把这四帧平均,得到每个点一份画像——这才是空间层真正处理的单元。图:Qin、Wu、Yu、Jiang(2025),PLOS ONE,CC BY 4.0。
七幅城市尺度的街景景观指标分级设色地图,包括绿视率、天空开阔度与建筑视率
同一条链条的另一端:逐帧类别占比被聚合到整座城市,一个指标一张图——绿视、硬质铺装、树木视率、天空开阔度、自然度、野趣度与建筑视率。每张图的可比性,都不会超过它底下的采样设计与季节控制。图:Yan 等(2026),Frontiers in Public Health,CC BY 4.0。

语义分割是主力

文献里绝大多数街景指标都来自同一个操作:给每个像素分类,然后数数。城市场景领域占主导的类别体系源自 Cityscapes,而它的类别恰好能对上城市研究想测量的那些东西。

承载了大部分街景指标的那几个类别
类别它能支撑什么
车行道(road)车行空间占比,近似反映画面中有多大比例让给了机动车
人行道(sidewalk)步行设施供给,谨慎处理时也可用于判断走廊上的连续性
建筑(building)竖向界面,多数围合度代理指标的分子
植被(vegetation)绿视率;在控制了拍摄月份的前提下也可用于季节比较
天空(sky)开敞度,以及围合度代理指标的分母
车辆(小汽车、卡车、公交)拍摄瞬间的交通与停车存在度,同时也是最主要的遮挡来源
行人与骑行者拍摄瞬间的街道活动,永远依赖于拍摄时段
示意图:街景画面经 DeepLabV3+ 得到类别图,配 Cityscapes 配色图例,并换算成各类别百分比表
整个操作浓缩在一张图里:采样帧过一遍分割模型,每个像素拿到一个 Cityscapes 体系下的类别,着色后的类别图再被数成百分比——车行道 20.226%、人行道 8.975%,依此类推。这些百分比就是指标本身。图:Qin、Wu、Yu、Jiang(2025),PLOS ONE,CC BY 4.0(截取自 (c) 面板)。

绿视率:Treepedia 到底测的是什么

绿视率是最成熟的街景指标,也最能说明处理层为什么重要。它是植被像素占可见画面的比例,并在一个采样点的多个朝向上取平均——衡量的是「站在人行道上的人能看到多少绿」。2015 年发表于《Urban Forestry & Urban Greening》的改进型绿视指数给了它一个可引用的定义,而 MIT Senseable City Lab 的 Treepedia 项目把这套方法推广到许多城市,它才从一次性方法变成一个可跨城比较的指标。

十二张街景照片组成的网格,按低、中、高三档可见绿量分为三行
这个指标要区分的到底是什么:同一座城市,按可见绿量的低、中、高三档采样。横着看一行就很清楚——这些场景的差别在于「行人能看到什么」,而这正是人视高度指标要捕捉的量。图:Zhao 等(2026),Frontiers in Public Health,CC BY 4.0。

围合度与开敞度这一族指标受同样的逻辑约束。竖向界面与可见天空之比,描述的是街道被感知到的剖面,而不是它被测量出的剖面;建筑高度与街道宽度属于不动产登记与激光雷达数据,需要物理尺寸的项目应当从那里取值,而不是从像素里推。

城市感知:六个维度,和一个很大的前提

第二大应用族,是从外观预测人们对一个地方的评价。奠定这一方向的做法,是在全球范围收集众包的两两比较——给你看两张街景,哪一张看起来更安全?——再训练模型去预测聚合后的人群偏好。Place Pulse 2.0 这项工作围绕六个维度展开:安全、美观、有活力、富裕、压抑、无聊。

两两比较的设计是其中最巧妙的一环。让人给一条街打 1 到 10 分只会得到噪声,因为不同评分者的尺度会漂移;而问「这两条街哪条看起来更安全」,得到的比较可以干净地聚合成一个排序。模型学到的就是这个排序——而排序是关于人的判断的陈述,不是关于这条街本身的陈述。

步行性与无障碍

传统的步行性审计,是让受过训练的观察员拿着清单沿街走一遍。街景影像让同一份清单可以铺到实地踏勘无法覆盖的规模,而包括发表在《ISPRS International Journal of Geo-Information》上的街景步行性评估在内的一批工作,正是建立在这种替代之上。

  • 人行道的有无与连续性:逐帧识别,再沿路段串起来,看的是断点在哪,而不是平均值是多少。
  • 过街设施:斑马线、信号灯、安全岛,以及行人自然选择的路径上恰好什么都没有的地方。
  • 路口的坡道与台阶——一条本来连续的路径,正是在这里对轮椅和婴儿车失去可用性。
  • 步行区内的障碍物:杆件、垃圾桶、违停车辆、外摆经营、施工围挡。
  • 缓冲与舒适线索:行人与车流之间的行道树、灯柱、可坐设施。
街角石质路缘坡道的近景,坡道与车行道衔接处有明显的高差
街角的一处路缘坡道。模型可以从行车经过的一帧里标出「这里有坡道」;但坡度、底端那道高差、以及与车行道的衔接方式——真正决定轮椅能不能用的那些东西——都是行车速度下的相机给不出的测量值。图片:Nick-philly / Wikimedia Commons / CC BY-SA 4.0。

交通与道路资产盘点

资产类工作最偏运营,也是检测而非分割承担主要工作的一类。它的产出是一份盘点表:一批带位置、带类型、并且已去重的走廊设施清单。

  • 交通标志与管制牌:按类别归类,并定位到路段上的具体位置。
  • 路灯:灯杆位置与间距——它能支撑关于夜间照明覆盖的追问,而影像本身回答不了这些问题。
  • 车道线及其表观状况,以及过街标线与停止线。
  • 从车上可见的路面缺陷——开裂、补丁、积水——适合做分诊排查,而不是工程评定。
  • 停车:拍摄瞬间的路内占用、路缘使用方式与装卸活动。

任何资产项目都受两个约束。一是目标在每一帧里各被检出一次,但在现实中只存在一个,因此跨重叠帧的去重是一个实打实的步骤,不是收尾时补的——有序采集序列会让这件事比一堆彼此独立的全景容易得多。二是单次通过只记录一个瞬间:一个当天拿出来待收的垃圾桶、一辆并排停放的货车、一块被送货卡车临时挡住的标志。资产层面的结论,要么依靠多次重复采集,要么就要明确写清它描述的是拍摄瞬间。

商业与街道活力

零售与街道活力类工作会同时用到三种特征技术。文字识别把店招读成名称,再配一个分类器读成业态。分割与检测描述界面本身——玻璃与实墙的比例、卷帘门、遮阳篷、外摆——也就是建筑与人行道之间的那道物理界面。检测则数出画面中的人与车。

  • 店招 OCR 给出每个门面的候选商户清单,最好用作与 POI 或工商名录的交叉核对,而不是当成一次独立普查。
  • 门面透明度与卷帘门情况,描述的是首层界面的品质;它与街道被如何使用相关,但不是营业状况的度量。
  • 行人与车辆存在度,为你手上这些帧提供一个活动代理值,报告时必须附上拍摄时间。
小镇主街的门面,带手绘店招、遮阳篷、玻璃橱窗,街上没有车
商业这一遍能从门面上读到的东西都在这里:可供 OCR 的店招文字、遮阳篷、首层玻璃与实墙的比例,以及铺面的状态。也请注意这一帧告诉不了你的:这些商户是否还在营业,以及这条街在周六傍晚是什么样。图片:w_lemay / Wikimedia Commons / CC BY-SA 2.0。

城市变化检测

同点位的多期影像,是价值最高、也最容易做坏的一类应用。做对了,它能直接测量物理变化:一块地被开发、一个门面被改造、一条自行车道被划出、树木被种上或被移走。近年围绕街景时间序列做城市变化评估的工作,包括 CityPulse 这一脉的研究,专门为此构建了数据集与方法;它们在方法上的谨慎程度本身就很有参考价值。

人工校验界面:同一地址在 2009 年与 2014 年的谷歌街景对比,平房被三层新建筑取代,界面提问是否存在物业改善
同一个地址在 2009 年与 2014 年:一栋平房被三层插建取代。这就是可用的变化证据该有的样子——同一视角、同一季节、物理差异毫不含糊——也请注意它外面那层界面:每一个检出的变化,仍然要由人确认之后才成为一个数据点。图:Ilic、Sawada、Zarzelli(2019),PLOS ONE,CC BY 4.0。
  1. 对齐视角。不同年份的全景在街道上的位置略有差异,因此仅仅让朝向一致是不够的;应朝固定方位角渲染,并用建筑转角这类稳定特征检查两帧是否真的重合。
  2. 控制季节与光照。落叶期对展叶期会「测出」一个从未发生的植被变化;低太阳角度的影像对上阴天影像,则会让每个地面类别占比都发生偏移。
  3. 所有期次固定同一个模型与类别体系,否则你测到的差异里混着一次模型升级。
  4. 把真实变化和重新处理区分开。新的全景标识符既可能意味着新影像,也可能只是同一次拍摄的重新渲染,因此在把某处判为「变化」之前,要先核对拍摄日期与返回位置。
  5. 对检出的变化抽样做人工复核。变化检测最容易在看起来最有意思的地方产生误报——脚手架、停放车辆、临时围挡。

健康与环境暴露,以及社会经济代理变量

还有两个应用族,把街景指标延伸到了别的学科。在健康研究中,人视高度的绿量、围合度与步行设施被用作环境暴露变量,理由是「居民每天看到并走过的东西」比卫星数据算出的区域均值更接近真实暴露。在社会经济研究中,街道特征——建筑状况、车辆类型、门面品质、绿化——被用来估计收入、贫困程度或房价,尤其是在调查数据稀疏或过时的地方。

研究设计决定上面这些是否成立

上述所有应用,能有多好取决于底下的设计,而已发表结果之间的分歧,大多能用同样这几个设计字段解释。请把它们当作交付表里的必备列,而不是方法章节里的套话。

  1. 采样间距,在所有相互比较的单元中保持一致;以及决定每个点匹配到哪个全景的吸附半径。
  2. 朝向组合、视场角与俯仰角,全项目保持恒定。仅仅放大视场角,就会让你报告的每一个占比都发生位移。
  3. 拍摄月份,一路带到最终结果表。季节性是系统性的而非随机的,所以它能在聚合后存活,并最终变成一个「结论」。
  4. 来源字段——当影像混用了不同平台、或包含你自己的采集时。不同相机与安装高度造成的偏移,常常大于你所研究的那些差异本身。
  5. 模型标识、权重与类别体系版本,这样日后重跑才是可比较的,而不只是重跑了一遍。
  6. 分层抽样的人工校验,并以「这批影像、这个模型、这组样本」的误差分布形式报告,而不是给出一个笼统的精度承诺。
  7. 每个聚合单元的点位数量,与每个聚合值并列给出。只有一帧可用的路段和有十二帧的路段,不该在输出里长得一模一样。

如何选择处理路线

只要把问题问得足够精确,大部分立项讨论都会快很多——因为路线会随问题自动确定,而「这条路线解决不了什么」也会随之明确。

问题、路线,以及应当提前讲明的边界
你真正想问的是什么处理路线它解决不了什么
行人在这里能看到多少绿?分割 → 逐朝向植被占比 → 分路段绿视率,限定在同一个季节窗口内树冠面积、树种,以及这些绿化是否向公众开放可达
这条街的围合感如何?分割 → 竖向界面与可见天空之比,俯仰角与视场角固定实测的建筑高度或街道宽度;这些应取自不动产登记或激光雷达数据
人们如何评价这条街?在评分配对数据上训练的感知模型,使用前须在本地评分者上重新校验这条街事实上是否安全、富裕或有活力
步行路径是否连续可用?分割判断人行道连续性,配合过街设施、坡道与障碍物检测,并沿路段串联是否符合无障碍标准——那需要现场实测尺寸
这条走廊上有哪些资产?在有序采集序列上做检测,并跨重叠帧去重相机看不到的东西的状况,以及只在其他时段出现的东西
这条街的临街商户有哪些?店招 OCR 加门面分类,并与 POI 或工商名录相互核对当前的实际经营状况——如果影像比当地更替速度更旧
这里相比某个更早的年份变了什么?对齐后的多期影像,同一模型与同一季节窗口,检出结果人工复核那些你实际取不到早期影像的位置上,任何变化都无从判断

开工之前先读第三列,是「能通过评审的研究」与「数据采完才发现要重新划范围的研究」之间的分界。而它也是整件事里成本最低的一步。

更多文章

继续阅读

下一步

比起了解方法,更想直接把事做完?

如果文章里描述的问题正好是你遇到的,把具体情况发来,我们会给出工作范围与固定报价。