防汛多尺度预演可视化技术研究与应用
2023-08-26田茂春范光伟
田茂春 ,杨 跃 ,范光伟 ,赖 杭
(1.水利部粤港澳大湾区水安全保障重点实验室,广东 广州 510611;2.珠江水利委员会珠江水利科学研究院,广东广州 510611;3.水利部珠江河口治理与保护重点实验室,广东 广州 510611)
0 引言
为提升预演效果,推进数字孪生流域、防汛“四预”的建设,大量学者开展了研究。朱祖乐[1]使用Three.js 开源库构建三维场景,实现基于 3D 绘图协议WebGL 的内涝淹没过程的三维动态模拟。赵忠琛[2]运用 Unitiy3D 三维模拟驱动引擎和内涝相关模型,模拟城区内涝发生和发展的过程,可自主设定模型参数快速生成科学、逼真的城区内涝灾害三维虚拟场景。房晓亮等[3]在三维地形场景的基础上,集成相关水文要素,开发实现基于三维软件平台 Skyline 的洪水风险图三维可视化系统。刘昌军等[4]提出数字孪生淮河流域智慧防洪试点建设方案,探索了数字孪生淮河流域智慧防洪“四预”新模式。黄艳[5]深入探讨了流域数字孪生的概念与意义,梳理了现阶段流域数字孪生发展需求。陈月华等[6]应用数字孪生技术展现数字流场的概念和视觉效果,直观反映王家坝洪水态势及蒙洼蓄洪区分洪过程。数字孪生黄河、数字孪生珠江以构建数字孪生流域,开展智慧化模拟,支撑精准化决策为实施路径,其中数字孪生技术是技术支撑[7-8]。李琛亮[9]在海河流域防洪“四预”试点中,通过智能感知、三维建模、三维仿真等技术实现数字流域和物理流域数字映射,形成流域调度的实时写真、虚实互动。
本研究从流域洪水防御角度出发,对流域、河段、城镇/水工程等宏观微观相互结合下的防汛多尺度可视化场景相关技术进行研究,以改善当前流域防汛预演的效果。
1 技术路线
防汛多尺度预演以流域一张图为数据支撑,对流域水系、河湖、水库及地形等进行三维可视化渲染,建立全流域数字化场景;运用 WebGL 和 LOD (多层次细节)等三维技术,实现多尺度信息模型数据的大规模加载与渲染,以 GPU Shader(图形处理器着色器)技术作为三维特效渲染手段,对洪水预报、调度模型、洪水淹没模型等结果数据进行仿真可视化分析,实现多尺度下的防汛预演,具体架构如图1 所示。三维可视化平台为各个应用系统提供可视化场景支撑服务,流域一张图为三维可视化平台、应用系统层或其他平台系统提供地图和模型数据服务,模型管理服务平台提供模型计算、结果服务,应用系统层包含数字孪生流域需建设的“2 +N”应用,三维可视化平台为应用系统层提供“四预”过程的模拟仿真场景。算据、算法和算力方面的具体分析如下:
图1 防汛多尺度预演架构图
1) 算据。珠江水利委员会(以下简称珠江委)经过多年的建设,形成了包含雨水情感知、空间遥感影像、重点防洪城镇三维模型、重点水工程 BIM 等数据的 L1,L2,L3 级数据底板,本研究将利用底板数据进行数字化场景建设。
2) 算法。从防汛角度出发,通过模型管理服务平台对现有的新安江、马斯京根、库群联合调度、洪水淹没模拟等水利模型进行标准化集成和统一管理,为防汛提供高效、准确的算法支撑。
3) 算力。利用珠江委现有的私有化云平台进行应用系统、可视化平台、模型管理服务平台集群化部署,针对洪水淹没模型对计算资源的要求,补充扩展GPU 高性能工作站,达到快速、安全、可靠的算力水平。
言语就搁在那儿进行不下去了。冯一余尴尬地蹭了一会儿,又说,其实,其实这也不能算是雇用什么的,其实这也是互相帮助嘛。老人互相看看,没有再搭理他。其中一个说,差不多了,回家煮晚饭了。一个个都站了起来,走了,把冯一余一个人扔在那里。
2 关键技术
2.1 GPU Shader 技术
计算机图形的渲染从数据形式到屏幕上的渲染结果需要在 GPU 上进行一系列流水线操作,流程图如图2 所示。图中虚线表示可在渲染管线自定义的流程,实线表示不可干预的流程。同时,显卡厂商提供了灵活的顶点及片元 2 种着色器,基于着色器,可对各种图形数据进行专业处理,编程实现各种酷炫效果的渲染。防汛多尺度预演可视化效果基于着色器进行建设。
图2 GPU 渲染管线流程图
2.2 基于 GPU Shader + GIS 的流域洪水传播可视化技术
利用 GPU Shader 和 GIS 等技术,结合洪水预报数据,在地图的河流水系矢量上叠加不同线宽和颜色代表不同洪水,利用线宽直观反映洪水量级,实现流域级洪水传播的预演,从整个流域场景上直观、动态地展示各个河段洪峰的出现和传播过程。结合各河道控制点的警戒水位、堤防防洪等级等基础数据,判断洪水传播过程中通过某一河段或者某一测站的来水是否超警,根据超警等级用红黄蓝等不同颜色渲染相应河段,直观反映每个河段的危险程度。
2.3 淹没模拟分析技术
接入洪水演进方案水动力模型计算结果,运用三维技术,进行洪水淹没效果演示,结合土地利用类型、人口分布等防灾底板数据,对洪水计算淹没范围内的淹没人口、耕地等进行社会经济损失统计。叠加灾害调查数据,在淹没区同步进行避险转移方案的分析展示,避险转移方案包括淹没范围内需转移人口数量、安置点位置、转移路径等内容。
2.4 基于 BIM + GIS 的仿真场景构建技术
基于流域三维数字化场景,结合倾斜摄影模型,直观展示城镇街道建筑,搭建区域基础仿真场景;根据数字孪生工程建设需要,接入数据底板中的水闸三维模型数据,如 BIM 可视化模型数据,对水闸闸门及各部件进行单独查询和平移、旋转等控制,结合模型动画、粒子系统,实现物理水利工程的数字空间映射。
2.5 三维模型分级建模及缓存加载技术
根据预演所涉及的各类要素对模型精度及人机交互的不同需求,参考数字孪生流域数据底板分级方法,制定三维模型分级建模策略:通过 DEM(数字高程模型) 拉伸、无人机倾斜摄影快速构建大范围三维数字化场景;利用 BIM 模型或手工对象化建模,实现重点部位轻量化建模,有效改善三维模拟仿真效果并提高建模效率。
为解决网络不稳定、三维场景数据量大、加载时间长等问题,建立二级缓存自适应加载机制: 利用IndexedDB 非关系型数据库,在浏览器端构建无上限且永久的本地缓存,实现大型三维场景数据的本地化快速加载;后台服务端运用分布式文件数据库进行三维模型的存储和管理,提高管理效率及访问速度。
3 多尺度预演可视化场景构建
基于关键技术,根据不同尺度所关注的洪水特征,建设流域防汛宏观、河段防洪中观、城镇/水利工程防洪微观等多尺度可视化场景,实现洪水传播、淹没模拟、水工程调度等的快速直观表达。
3.1 流域防汛宏观场景
立足流域统一调度管理,统筹考虑流域上下游、干支流、左右岸、水库群关系,动态分析洪水来源、洪水组成、洪峰传播、错峰和水库拦蓄等过程,初步研判可能出现超警的防洪风险点、风险段和风险区。
流域大尺度的预演主要关注全流域洪水演进情况,实现“降雨—产流—汇流”动态演示,直观展示重要控制断面洪水上涨过程,主要展示要素包括:调度后水库最高水位、最大出库流量、削峰率、拦蓄洪量、距防洪高水位库容,调度后河道站洪峰流量及变幅、洪水量级,调度后淹没区域减少最大淹没面积、减少影响市县及人口。建设流程分析如下:
1) 建立河流水系可视化拓扑关系。首先,根据重要控制节点,从流域河流水系矢量中选取关注的干支流矢量。其次,根据控制站点、河道的分叉点和汇合点将河流水系矢量分割成不同的河段。然后根据上下游关系建立相应的拓扑关系,即在相应的矢量属性字段中标记每个河段及上游河段的编号。通过河段编号建立河段间上下游的拓扑关系。最后,将河段上的控制点关联到相应的河段上,建立控制点到河段及河段上下游间的关联关系,为洪水演进的预演提供展示的数据基础。
2) 计算河段洪水渲染所需数据。洪水演进预演开始时,接入水情预报部门提供的洪水预报数据,根据每个河段的洪水预报及组成,计算河段洪峰出现、结束时间,洪峰流量,是否超警戒等数据。根据洪峰流量及超警信息设置不同的线宽及颜色。
3) 洪水传播动态演示。根据每个河段洪峰的开始和结束时间及河段的长度,计算洪峰的传播速度。在场景渲染时,每帧都要更新河段的渲染状态,达到洪水沿着河道演进的效果。同时,通过实时更新标签的位置实时标记洪峰的位置及流量。
3.2 河段防洪中观场景
立足区域防洪管理,协同重要河段两岸保护区水库、堤防、闸门、泵站等工程运行状况,分析超保河段和超警站点,预演漫堤和溃堤洪水淹没范围、淹没历时、影响分析、社会经济损失要素指标,并进行人财物的避险转移分析。
河段防洪场景预演关注调度后的洪水淹没情况,展示淹没区域及涨退水过程,主要展示要素为调度后的淹没影响要素变化,包括减少最大淹没面积、受影响人口等,同时分析受淹没各县区工情、社会经济等影响情况,实现洪水淹没的可视化和数据量化,为洪水防御提供更加有力的数据支撑。河段中观洪水模拟效果如图3 所示。
图3 河段防洪中观场景洪水模拟预演
建设流程分析如下:
1) 加载洪水淹没模型网格。将网格转化成WebGL 中可展示的三角网格面,作为后续淹没范围展示的载体。
2) 接入洪水方案计算结果,运用 WebGL 和 GPU Shader 等技术,对网格面进行洪水淹没范围、水深渲染。洪水演进预演时,从计算结果中读取每个时刻的网格编号及淹没水深,对相应的网格根据水深赋值不同的颜色,为防止颜色出现斑块状,采用 Shader 技术对颜色进行插值处理,使颜色过渡更加自然。最后根据计算结果,逐时刻渲染相应的淹没状态,实现整个洪水演进过程的动态展示。
3) 分析不同区域的社会经济损失数据,进行人财物避险转移分析。根据淹没范围,结合社会经济数据、土地利用类型数据、避险转移方案信息,实现社会经济损失的统计分析及避险转移方案的实时动态展示。
3.3 城镇/水利工程防洪微观场景
城镇/水利工程防洪微观服务场景关注调度后漫堤洪水演进过程中重要城镇、堤防、联围的漫堤和淹没情况,主要展示城区淹没过程、各片区淹没水深等要素。同时,立足重点调度水库工程,结合库区和坝区工程建筑物的高精度影像、倾斜摄影、BIM 等可视化模型,精细化预演库区洪水传播过程,研判库区移民人口、耕地、企业等淹没风险;通过模拟水库不同拦蓄条件下的洪水淹没场景,对下游影响区超警站点、超保堤段、漫堤河段等风险进行分析,预演效果示例如图4 所示。
图4 城镇防洪微观场景预演
建设流程分析如下:
1) 构建城镇/水利工程小场景。在 L2 级数据底板的基础上,通过加载城镇倾斜摄影或水库大坝BIM 等模型,构建与现实物理环境一致的数字场景。
2) 叠加洪水淹没模拟结果。在数字场景的基础上,结合方案计算结果,进行洪水淹没模拟。
3) 分析研判淹没风险及影响。在水库工程调度基础上,通过模拟洪水淹没区域,研判城镇/库区人口、耕地、企业等淹没风险,同时对下游超警站点、超保堤段、漫堤河段等风险影响进行分析。
4)初步实现水利工程数字孪生。在水利工程调度场景上,通过接入闸门启闭状态、水位、发电厂发电等实时检测信息,驱动数字场景进行相应的调整,对水闸闸门不同开度、泄流进行仿真,实现对水闸闸门抬升、放水等的可视化渲染和仿真模拟,为闸门调度提供场景支持,预演效果示例如图5 所示。
图5 水利工程闸门泄洪微观场景预演
4 结果分析
4.1 大规模三维模型流畅加载分析
本研究采用二级缓存进行场景模型加载,前端先从一级缓存 IndexedDB 中查找是否有相应的数据,如有,则直接从 IndexedDB 中获取相应的数据进行场景构建,否则,则从二级缓存分布式文件数据库中获取相应数据,同时进行缓存保存。一级缓存可有效减少网络传输负担,二级缓存可减少服务端硬盘IO读取消耗,因此可大幅度提升场景加载速度。当场景数据完全缓存至客户端,速度可提升数倍。
4.2 洪水模拟可视化效果对比分析
根据不同尺度对洪水要素的表达要求,达到不同洪水的可视化效果,图3 采用传统三角形颜色着色方式渲染,能比较方便地展现洪水趋势概况,而图4 则采用基于 GPU Shader 技术的洪水可视化技术,能更加逼真、真实地展现局部洪水现状,符合“四预”高保真建设要求。
5 结语
通过三维模型分级建模及缓存加载技术,可在前端、服务端减少数据请求时间,解决预演中场景加载慢的问题。根据不同尺度所关注的洪水特征不同,构建了相应的预演可视化场景,实现了洪水流量过程、水工程调度、洪水淹没等的快速直观及动态仿真模拟,相关技术在珠江流域进行了应用,模拟了汇流—产流—调度—演进—淹没全过程,识别了河、库、堤、坝、闸等防控风险,研判了防洪薄弱环节,相对于当前的防汛预演,效果更好,效率更高,为流域智慧化防汛决策会商提供了支撑。
随着数字孪生流域/工程对可视化场景保真度要求的越来越高,结合当前已有的技术基础,如何将在其他行业应用比较成熟的孪生技术引入“四预”建设中,进一步提升预演效果,是本课题未来的重点研究方向。