一、龙软的起点:中国遥感的第一行代码跑在北大
1983年,中国遥感学科体系尚处于起步阶段,相关术语和标准仍在完善中。同年,北京大学成立了全国第一个遥感技术与应用研究所——这就是今天北大遥感与地理信息系统研究所的前身。
那时候没有商用GIS软件,没有Google Earth,没有Sentinel卫星免费下载。研究者们处理的是航空摄影胶片,手动判读,用透明聚酯薄膜叠加做空间分析。北大遥感所在这样的条件下,做出了国产自主知识产权的商用地理信息系统软件之一——龙软GIS。后来这个软件孵化出的龙软科技,成功登陆了上交所科创板。
这个背景很重要,因为今天的地理信息研究已经完全不同了。刘瑜教授2015年提出的**”社会感知”理论**(论文发表于 Annals of the Association of American Geographers),于2023年入选了”中国地理科学十大研究进展”。2026年1月,由北大牵头、联合北京市城市规划设计研究院和高德软件等单位申报的**”时空感知与城市韧性北京市重点实验室”**正式获批,黄舟教授任实验室主任。
从龙软到社会感知,这40年的变化可以用一句话概括:过去我们研究地表的”物”,现在我们研究地表上的”人”。
二、什么是社会感知?为什么它比传统遥感更难算
刘瑜教授给”社会感知”下的定义很精确:借助各类地理空间大数据研究人类时空行为特征,并进而揭示其背后的社会经济现象的时空分布格局、联系以及演化过程的理论和方法。
卫星遥感回答”这片地上有什么”——建筑、道路、植被、水体;手机信令数据回答”这片地上的人怎么动”。把两者叠在一起,你就能回答一个传统遥感回答不了的问题:为什么这片区域晚上没人住,白天却挤满了人?
刘瑜团队基于这个思路做的一项研究——利用手机信令和出租车数据分析中国城市的”鬼城”(空置住宅区)——被MIT评选为2015年大数据六大最佳研究之一,并被华尔街日报、华盛顿邮报、参考消息报道。这个成果后来被美国科学院院士Michael Goodchild写进了国际GIS经典教科书。
但社会感知的计算挑战,比传统遥感大了一个数量级。
2.1 数据形态的三个维度
传统遥感数据是规则的栅格——Landsat影像就是185公里×185公里、30米分辨率的二维矩阵,一张影像约1GB。处理这种数据,算法成熟、格式统一、并行友好。
社会感知的数据是不规则的、异构的、高维的:
- 手机信令:每天几亿条记录,每条包含用户ID(脱敏)、时间戳、基站位置(经纬度)、事件类型(开机/关机/切换)。一个人的轨迹是一天几十个时空点,一个城市的人口就是几亿个时空点连成几百万条轨迹。
- 出租车GPS:连续采样,每秒一个点,包含位置、速度、载客状态、计价器状态。北京6万辆出租车,一天就是几十亿个GPS点。
- 社交媒体签到:文本+坐标+时间+用户画像。语义分析需要NLP,空间分析需要GIS,社交网络分析需要图论——三者的数据结构和计算模式完全不同。
- 街景影像:车载摄像头连续拍摄,每张影像几MB,一个城市就是TB级。要做城市视觉智能分析(如黄舟团队2024年的研究),需要目标检测、语义分割、变化检测一连串CV任务。
2.2 分析方法的三个层级
社会感知的分析方法体系,刘瑜团队把它梳理成了三个层次:
第一层:对人感知(Human Sensing)
从人的移动中提取模式——通勤OD矩阵、活动节律、社交关系。核心技术包括:
- 时谱曲线周期识别:把一个人的24小时活动强度画成曲线,用傅里叶变换或自相关函数识别周期(工作日vs周末)。
- 混合活动分解:一个人一天去了几个地方,每个地方待了多久,属于什么活动类型(家/工作/购物/休闲)。这是典型的隐马尔可夫模型(HMM)或主题模型(LDA)问题。
- Levy飞行和探索-返回机制:人的移动不是随机游走,而是长距离跳跃(探索)和短距离徘徊(返回)的交替。建模需要复杂的随机过程。
第二层:对地感知(Place Sensing)
从场所的属性中理解城市功能。核心技术包括:
- 场所语义识别:一个POI(兴趣点)是餐厅还是医院,不能只看名称,要结合周围人群的活动模式。刘瑜团队提出的**图卷积神经网络(GCN)**模型,把城市POI网络建模为图结构,通过邻居节点的属性推断中心节点的语义。
- 城市空间隐性边界识别:行政边界不等于功能边界。怎么从手机信令的密度分布中”发现”真实的城市组团?这涉及空间聚类(如DBSCAN的空间扩展版)和社区发现(Louvain算法等)。
- 流的空间自相关:传统的Moran’s I衡量的是属性值在空间上的聚类程度,但社会感知更关心”流动”的空间模式——哪两个区域之间的人流量特别大?流的空间自相关度量(Spatial Autocorrelation of Flows)需要构建”流矩阵”并计算其空间依赖性,计算复杂度是O(n²)到O(n³)。
第三层:地理过程感知(Process Sensing)
把人和地的动态变化联系起来,理解城市演化。核心技术包括:
- 城市增长元胞自动机(CA):把城市空间离散化为元胞网格,每个元胞根据邻居状态和转换规则动态演化。北大的BUDEM模型(Beijing Urban Spatial Development Model)就是基于这个思路,覆盖北京16410平方公里、500米精度。
- 时空预测模型:ConvLSTM、ST-ResNet等深度学习模型,同时捕捉空间相关性和时间依赖性。输入是一个城市过去几个月的人流量栅格,输出是未来一周的人流量预测。
这三个层级的计算量逐层递增。第一层一个人就能在笔记本上跑;第二层需要服务器级内存和并行计算;第三层的元胞自动机+深度学习组合,没有工作站根本玩不动。
三、地理大数据的”硬件胃口”:为什么普通工作站会跪
地理信息研究对硬件的需求,和普通科学计算或AI训练有显著差异。主要有四个”胃口”:
3.1 I/O带宽:TB级数据的”水管”有多粗
一个中等规模的社会感知项目,原始数据量轻松达到TB级:
- 一个城市的手机信令数据(一年):压缩后500GB-1TB
- 出租车GPS轨迹(一年):1-2TB
- 高分辨率遥感影像(一个城市):几十GB到几百GB
- 街景影像(一个城市):TB级
这些数据不是一次性读入内存的——Python的pandas或geopandas做空间连接时,需要反复读写磁盘。机械硬盘的顺序读取速度约200MB/s,随机读取更低。NVMe SSD的顺序读取速度可以达到3-5GB/s,随机读取也比HDD快两个数量级。
结论:地理大数据处理的第一个瓶颈不是CPU,不是内存,是I/O。
3.2 内存容量:大图加载的”天花板”
空间分析有个很麻烦的特性:很多算法的空间复杂度是O(n²)或O(n³)。
- 一个10万节点的城市路网图,邻接矩阵是10万×10万=100亿个元素。如果用float32存储,就是40GB(10⁵×10⁵×4B=4×10¹⁰B≈40GB)。图卷积网络通常用稀疏矩阵存储,内存占用可降至邻接边数量的数倍。
- Kriging插值需要构建和求逆协方差矩阵。对1万个采样点,协方差矩阵是1万×1万=100M个元素,float64存储约800MB,求逆复杂度O(n³)。如果是10万个点,矩阵约80GB,普通工作站直接崩溃。
- 遥感影像的深度学习分割,一张Sentinel-2整景影像(10980×10980像素,10m分辨率,10个波段)单波段原始数据约230MB(uint16),全波段解压后可达5-10GB。如果要做滑动窗口推理,batch size不能太大,否则显存爆炸。
结论:64GB内存是地理大数据的最小可用配置,128GB是推荐起步容量。做城市级图网络或大规模Kriging,256GB是常态,512GB不稀奇。
3.3 CPU核心数:空间统计的并行红利
空间自相关统计(如Moran’s I、Getis-Ord G*)和空间插值(如IDW、Kriging)有一个很好的性质:每个空间单元(网格点或区域)的计算相互独立,天然适合并行。
但有个陷阱:很多经典的空间分析算法是用单线程写的(比如R语言的spdep包、Python的PySAL库)。如果你不动手改写并行版本,给128核CPU也没用——它只会用一个核慢慢跑。
另外,空间数据的索引构建(如R树、四叉树)和几何操作(如缓冲区分析、叠加分析)是计算密集型的,核心数越多越快。ArcGIS Pro现在支持多线程,但老版本的ArcMap还是单线程。
3.4 GPU:遥感大模型和图网络的”显存黑洞”
遥感深度学习是GPU消耗的大户:
- **SAM(Segment Anything Model)**的ViT-Huge编码器有632M参数,推理一张1024×1024的影像需要约5GB显存。如果处理整景高分卫星影像,切片策略复杂且损失上下文。
- 图神经网络训练时,整个图的节点特征和邻接矩阵要在显存中存储。一个城市POI网络可能有几万节点、几十万条边,加上多层GCN的中间表示,显存占用轻松超过20GB。
- 时空预测模型(如ConvLSTM)同时处理时间和空间维度,输入张量的形状是(batch, time, height, width, channels),batch size稍大就爆显存。
结论:做遥感深度学习或城市级图网络,48GB显存是起步,84GB才安心。
四、四级配置方案:从个人城市分析到国家级时空感知平台
结合地理大数据的特殊需求和UltraLAB产品目录,我梳理了四个层级的配置。
入门级:个人研究者与研究生(城市切片分析、小样本社会感知)
| 配件 | 推荐型号 | 说明 |
|---|---|---|
| CPU | Intel Ultra 285K(24核5.5GHz) | 单核性能强,R/Python数据分析不吃亏 |
| 内存 | 64GB DDR5-5600 | 能加载中等规模手机信令数据(几百万条) |
| 存储 | 2TB NVMe SSD + 8TB HDD | SSD放活跃数据,HDD存档原始数据 |
| GPU | RTX 5090 32G | PyTorch Geometric图网络+遥感分割可用;适合原型开发,缺乏ECC显存纠错和专业驱动稳定性 |
| 对应UltraLAB型号 | A350 15364-MBT(Intel Ultra 265K + 64GB + 2TB,标配双RTX 5090D 24G)或 A350 15696-MCE(Ultra 285K + 96GB + 4TB,标配RTX Pro5000 48G) | 标配GPU在遥感深度学习和图网络中可作为通用算力储备;如仅需显示输出,UltraLAB可降级为入门款GPU(如RTX 4060) |
这套配置适合研究生做单个城市或单个区县的信令数据分析、小样本遥感影像分割实验、GeoAI入门。能跑PySAL做空间自相关、能跑PyTorch Geometric做小规模图网络。但超过千万级记录的数据集,64GB内存会吃紧。
进阶级:课题组主力工作站(城市级社会感知、多源数据融合)
| 配件 | 推荐型号 | 说明 |
|---|---|---|
| CPU | AMD Ryzen Threadripper PRO 7970X(32核64线程,4.5GHz) | 多核并行处理空间统计和轨迹计算 |
| 内存 | 128GB DDR5-5600 | 支撑千万级信令记录+城市路网图的内存计算 |
| 存储 | 4TB NVMe SSD ×2(RAID 0)+ 16TB NAS | 双SSD解决I/O瓶颈,NAS存多源数据 |
| GPU | RTX Pro6000D 84G | 遥感大模型推理+城市级图网络训练 |
| 对应UltraLAB型号 | AE450 145128-MC2T(AMD Threadripper PRO 7970X + 128GB + 4TB,标配双RTX 4090 48G水冷) | 双GPU水冷图形工作站,适合课题组主力计算+后期ML扩展;如仅需显示输出,UltraLAB可降级为单卡入门款GPU(如RTX 4070) |
这是目前地理大数据课题组最常见的配置水平。刘瑜团队早期的”鬼城”研究,数据规模大概就在这个区间。可以支撑一个城市级别的手机信令+出租车+POI多源融合分析,或者中等分辨率遥感影像的深度学习训练。
专家级:时空感知与城市韧性实验室旗舰(城市群分析、遥感大模型微调)
| 配件 | 推荐型号 | 说明 |
|---|---|---|
| CPU | Xeon金牌6530 ×2(64核,2.7-4.0GHz) | 双路8通道内存,大规模空间统计并行 |
| 内存 | 384GB DDR5-4800 | 支撑京津冀城市群级别的信令数据加载 |
| 存储 | 8TB NVMe SSD ×2(RAID 0)+ 40TB NAS | TB级多源时空数据的快速读写 |
| GPU | RTX Pro6000D 84G ×2 | 遥感大模型微调+时空预测模型双卡并行 |
| 对应UltraLAB型号 | GX660M 227512-MD4E(2×Xeon 6530 + 512GB + 8TB,标配4×RTX Pro6000D 84G/96G) | 双GPU服务器级图形工作站,适合高分辨率遥感大模型微调+时空预测;如仅需显示输出,UltraLAB可降级为单卡入门款GPU(如RTX 4070/T1000) |
到了这个级别,你基本是在做北大”时空感知与城市韧性北京市重点实验室”级别的研究。京津冀城市群的手机信令分析、高分卫星遥感大模型(如SAM遥感适配版)的微调训练、BUDEM元胞自动机的大规模情景模拟——都需要这个量级的算力。384GB内存是刚需,因为城市级图网络的邻接矩阵和特征张量加起来轻松超过200GB。
集群级:国家级地理空间智能数据中心(全国尺度时空感知、多城市并行)
| 配件 | 推荐型号 | 说明 |
|---|---|---|
| 计算节点 | GX668 227640-MD4E(2×Xeon金牌6530 + 640GB + 4TB,标配4×RTX Pro6000D 84G) | 多节点分布式计算,每节点负责一个城市 |
| 存储系统 | 并行文件系统(Lustre/BeeGFS)+ PB级磁带库 | 全国范围手机信令+遥感影像,总量超PB |
| 网络 | InfiniBand HDR 200Gbps | Dask/Ray分布式计算节点间低延迟通信 |
| 总节点数 | 10-20节点 | 支撑全国293个地级市的并行社会感知分析 |
| 对应UltraLAB型号 | GX668 227640-MD4E(2×Xeon金牌6530 + 640GB + 4TB,标配4×RTX Pro6000D 84G)或 GX668 227512-MC4A(4×A100 80GB) | 多GPU集群计算平台,标配GPU适合大规模遥感大模型+时空预测混合负载;如仅需显示输出,UltraLAB可降级为入门款GPU(如T400/T1000) |
这就是高德地图、百度地图开放平台、自然资源部国土卫星遥感应用中心的级别了。北大遥感所与高德软件联合组建实验室,背后就是这种规模的算力在支撑实时路况预测、城市人群热力图、灾害应急路径规划等应用。
五、常见问题与优化策略:地理大数据研究者需要注意的六个问题
问题一:用pandas处理地理大数据,还嫌慢
pandas是数据分析的瑞士军刀,但对地理空间数据,它是钝刀。GeoPandas的sjoin(空间连接)操作,在几百万条记录上能跑几个小时,因为底层用的是shapely的几何计算,没有空间索引优化。
解决方案:大数据量的空间分析,用PostGIS(PostgreSQL的空间扩展)或GeoMesa(基于HBase/Accumulo的时空数据库)。把空间索引(R树、GeoHash)交给数据库做,比Python循环快100倍。
问题二:忽视坐标系统一的”小”问题
手机信令的基站位置通常是WGS84经纬度,遥感影像是UTM投影坐标,POI数据可能用的是百度或高火星坐标系。三种坐标混在一起不做转换,空间叠加分析的结果会偏几百米——在城市街区尺度上,这足以把A街区的人流量算到B街区头上。
解决方案:统一投影坐标系(分析用),再转回地理坐标系(可视化用)。用pyproj或rasterio的CRS管理功能,别手算。
问题三:图网络的稀疏矩阵没利用好
城市POI网络或路网图是极度稀疏的——几万个节点,每个节点平均只连接几个邻居。如果用稠密矩阵存储邻接关系,内存占用是O(n²),99%的元素是0。PyTorch Geometric的SparseTensor或DGL的sparse格式,能把内存占用降到O(edges)。
解决方案:加载图数据前,先确认库支持稀疏格式。PyG的SparseTensor、DGL的HeteroGraph、NetworkX的稀疏图类,都是标配。
问题四:遥感深度学习不分切片策略
整景高分卫星影像不能直接塞进GPU——太大了。切片(tiling)是必然选择,但切片策略影响结果:
- 有重叠切片(overlap tiling):相邻切片有重叠区域,推理后取平均或投票,减少边界效应。代价是计算量增加30-50%。
- 无重叠切片(non-overlap tiling):快,但边界上的目标会被切分,导致漏检或误分。
- 动态切片:根据目标大小调整切片尺寸。小目标(如车辆)用小切片+高分辨率,大目标(如建筑)用大切片。
解决方案:项目初期花点时间做切片策略的消融实验。别一上来就用无重叠切片偷懒,后期补漏更费时。
问题五:时间序列分析忽视时空自相关
传统的时间序列模型(ARIMA、LSTM)假设样本独立同分布。但地理数据违反了独立性假设——相邻区域的人流量高度相关,昨天的模式影响今天。直接把城市各网格的人流量当成独立时间序列来预测,效果会很差。
解决方案:用时空联合模型(如ST-ResNet、ConvLSTM、Graph WaveNet),同时建模空间相关性和时间依赖性。PyTorch Lightning或DGL有现成实现。
问题六:元胞自动机的规则校准不用并行
CA模型的转换规则通常通过历史数据训练或校准。北京BUDEM模型覆盖16410平方公里、500米精度,网格数约6.5万个。如果做情景模拟,需要跑成千上万个时间步×多种参数组合,串行计算可能需要几天。
解决方案:元胞自动机适合GPU并行加速——每个元胞的下一状态只依赖邻居的当前状态,文献报道可获得10-100倍加速。但GPU实现需要注意边界同步和邻域大小限制(通常局限于直接邻居),CUDA或OpenCL实现有一定编程复杂度。Numba的CUDA JIT也能加速Python版的CA。
六、从龙软到时空孪生:中国地理信息的下一个四十年
2026年,北大遥感与地理信息系统研究所已经43岁了。
这40年,中国地理信息产业从手工判读航空胶片,发展到处理卫星遥感+手机信令+社交媒体+街景影像的多源融合大数据。从龙软GIS的”单机单用户”,发展到”时空感知与城市韧性”的政产学研用协同体系——北大负责核心关键技术,北京市城市规划设计研究院做规划应用,高德软件做公众服务产品。
第七届空间数据智能学术会议(SpatialDI 2026)上,刘瑜教授担任大会指导委员(指导委员会成员包括孟小峰、陆锋、吴华意、谢幸、李勇、高云君等),并参与”空间数据智能与韧性社会建设”专题论坛。黄舟教授领导的”时空感知与城市韧性北京市重点实验室”正在招聘博士后,方向包括”世界模型与时空孪生推演””时空大模型与时空智能体”。
这些新方向的名字听起来很科幻,但底层问题没有变:如何把”天空地人”一体化的动态感知数据,转化为可解释、可预测、可决策的城市认知。
卫星在天上拍,基站在地上收,手机在人手里发,传感器在水管里埋——这些数据汇聚到一起,就是城市跳动的脉搏。但要让这颗”数字心脏”真正运转起来,需要的不只是算法和模型,还需要能吞下TB级数据、跑得起亿级节点图网络、训得了遥感大模型的算力底座。
从1980年代的微型计算机到今天的多路服务器和GPU集群,地理信息科学的算力底座已经发生了数量级的跃迁。城市数字孪生的下一步,取决于算法、数据与算力三者能否持续同步升级。
参考文献与延伸阅读:
- 刘瑜 (2023). 《地理大数据与社会感知》. 科学出版社.
- Liu Y., Kang C., Gao S. et al. (2015). Social sensing: A new approach to understanding our socio-economic environments. Annals of the Association of American Geographers, 105(3), 512-530.
- 北大遥感所. 时空感知与城市韧性北京市重点实验室成功获批. 2026-01-06.
- 北京大学遥感与地理信息系统研究所. https://irsgis.pku.edu.cn/
- Goodchild M.F. (2021). Geographic Information Science and Systems (4th ed.). Wiley.
- Long Y., Shen Z. (2015). Geospatial Analysis to Support Urban Planning in Beijing. Springer.
- 茅明睿. 城市治理中的社会感知方法应用.
- 第七届空间数据智能学术会议 (SpatialDI 2026). https://urbancomp.net/archives/spatialdi-2026
187 十亿级轨迹数据分析要多少内存?北大GIS遥感数字孪生城市韧性工作站配置指南
