夏威夷等全球多地深陷「末日狂烧」,关键时刻 AI 监测能否跑赢野火?
内容一览:当地时间 8 月 8 日,美国夏威夷州突发野火,当地居民和游客不得不跳入太平洋中躲避火势。截至 8 月 17 日,这场野火已经造成110 人死亡,超过 1000人失踪。与此同时,美国、加拿大、法国等地也正遭遇野火侵袭。野火无情,面对突发的野火,人们很难做出迅速的反应。现在,在 AI的帮助下,对野火的监测和预防有了新进展。
关键词:野火 人工智能 可解释性 AI
作者|雪菜
编辑|三羊
本文首发于 HyperAI 超神经微信公众平台。
地球正不可逆地经历着全球变暖。据欧盟哥白尼气候变化服务局 (C3S) 统计,2023 年 7 月是 1940 年以来全球平均气温最高的月份,温度较前工业革命时期的平均气温上升了约 1.5°C,超过了《巴黎协定》设定的临界值。
图 1:1940-2023 年 7 月的全球平均气温[1]
全球变暖带来的最直观的感受就是高温。在森林茂盛的地区,高温干燥的气候极易引发野火 (Wild fire)。8 月 8 日,美国夏威夷州毛伊岛突发野火。野火乘着台风「朵拉」,迅速席卷了森林,并蔓延到了当地的文化中心——拉海纳,造成数万人无家可归。
与此同时,在气候干燥的北美洲西部地区,野火也在肆虐。美国加拿大火情资源管理系统 (FIRMS, Fire Information for Resouce Management System US/Canada) 的火情地图显示,近一周加拿大西部地区蔓延着过火面积超过 1000 英亩的野火,而在美国东部也存在大量的着火点。
图 2:近一周北美洲火情地图[2]
野火迅猛无情,面对突如其来的野火,人们很难做出及时的反应。但如今,我们可以利用 AI 对野火进行实时监测和预测,将野火带来的损失降到最低。
预测野火三叉戟
地理数据:澳洲高校开发 XAI
2023 年 5 月,澳大利亚国立大学的 Abolfazl Abdollahi 和悉尼科技大学的 Biswajeet Pradhan,利用可解释性 AI (XAI),对澳大利亚吉普斯兰市的不同地理因素进行综合分析,得到了当地的野火发生概率分布图,为预测野火的发生提供了新方法。
图 3:预测野火发生概率的 XAI 工作流
对野火发生概率影响较大的地理特征包括环境因素、地质因素、植被因素和气象因素。本研究中,研究者主要使用了以下 11 个特征,包括降水量、风速、气温、湿度、植被分布、植被面积、植物中的燃料氮、水分以及该地区的海拔、坡度和方位。
研究选用吉普斯兰市 521 个野火发生点,在 2019-2020 年的中分辨率成像光谱仪 (MODIS) 数据、热异常数据以及火灾历史数据进行训练,并通过交叉验证和保留数据集的方式,对训练集进行处理,确保训练过程的准确。
首先,交叉验证技术会将训练集随机分为 5 个子集,其中 4 个子集用于模型训练,1 个子集作为验证集。
图 4:模型训练过程。蓝色数据用于训练,橙色数据用于验证
训练完成后,将吉普斯兰的环境、地质、植被、气象特征输入模型,可以得到这一地区完整的野火发生概率图,如图所示,模型预测结果和该地的历史野火区域基本一致,说明 XAI 可以根据地理特征对野火发生进行有效预测。
图 5:模型预测结果与历史野火区域对比
a:XAI 模型预测的野火发生概率图;
b:吉普斯兰的历史野火区域图。
论文地址:
https://www.sciencedirect.com/science/article/pii/S0048969723016224
视频数据:基于烟雾识别起火点
基于地理数据的野火预测只能提高人们的警觉,却无法对野火的发生进行实时观测。为此,美国加利福尼亚州林业防火部,与加利福尼亚大学圣迭戈分校 (UCSD) 基于 AI,合作开发了名为 ALERTCalifornia 的野火预防项目。这一项目通过分布在加利福尼亚州的 1000 余个摄像机对当地进行监测,借助 AI 识别异常状况,向应急指挥中心发出警报,提醒值班人员确认是否可能有野火发生。
图 6:ALERTCalifornia 摄像机分布及实时画面
这一项目于 2023 年 7 月正式投入运行,很快就派上了用场。凌晨 3 点,一个摄像机监测到了位于圣迭戈市东部 80 公里的克利夫兰国家森林的火情。由于事发深夜,烟雾很难被发现,肉眼很难识别这一着火点,极易导致火势蔓延。但 AI 及时向消防队长发出了警报,并帮助消防部门在 45 分钟内将野火扑灭。
然而,这一技术在开发过程中也面临诸多挑战。其中之一便是,如何让 AI 准确分辨野火和其他干扰因素,做出准确判断。森林中存在大量可能引发假警报的因素,包括形状迥异的云、空气中的灰尘、甚至是过路卡车排放的尾气。在百余位专家的共同努力下,AI 在经过了数周训练及迭代后,准确率有了显著提升。
ALERTCalifornia 地址:
https://cameras.alertcalifornia.org/
卫星数据:二次筛选的近实时野火监测
在特定区域,摄像机可以对野火进行有效监测,但这一方法很难大规模推广,尤其是在一些地域广博、地形复杂的区域,布置和维护摄像机的成本会大幅增加。因此,实时卫星数据也可以作为 AI 的武器,用于野火的实时监测。
电子科技大学何彬彬课题组,结合随机森林模型 (Random Forest) 和空间上下文算法 (Spatical Contextual Algorithm) 构建了机器学习模型,通过卫星数据实现了近实时的野火监测。
传统的 AI 野火识别系统往往使用单一算法,因此带来数据遗漏或误报。本研究中,数据首先经过随机森林模型进行严格筛选,避免遗漏。随后用阈值相对较低的空间上下文算法进行二次筛选,排除掉假警报,以此提高监测模型的准确率。
图 7:野火识别模型的工作流
科研人员以日本宇宙航空研究开发机构 (JAXA) 和美国航空航天局 (NASA) 记录的野火数据为训练集,对模型进行训练。随后,将 2020 至 2022 年的发生野火位置的卫星数据作为验证数据,让模型进行判断。
图 8:野火识别模型的卫星数据验证结果
图中可以看到,对于大部分火灾,这一模型可以准确定位野火源头,做出及时的预警。AI 野火识别模型以实时卫星数据作为数据源,结合随机森林模型和空间上下文算法,降低了模型的漏报率和误报率,实现了近实时的野火预警。
论文地址:
https://www.mdpi.com/2272228
野火扑救:一场与时间的赛跑
野火的主要诱因是人类活动,如无人看管的营火、随手乱丢的烟头或是设备的不规范使用。此次夏威夷野火的可能原因就是电力设施受损。火苗在全球变暖带来的高温干燥环境和台风「朵拉」的共同影响下,迅猛发展,为当地居民带来了巨大损失。
图 9:野火之后的拉海纳[3]
野火的扑救是一场与时间的赛跑。据估计,野火每小时可以蔓延约 23 公里,着火面积在 4 个小时内将会扩大 4 倍。2017 年的美国加利福尼亚州托马斯野火每秒可以蔓延一个足球场的面积,最终持续燃烧了 3 个多月。
因此,野火的监测和扑救往往需要用到多种技术,以在最短时间内发现着火点,将野火尽快扑灭,避免其扩散。目前我国监测野火有六道防线,分别是卫星监测、飞机监测巡护、林区瞭望塔台、视频监控系统、地面巡护和网络舆情感知。
在多种技术的加持下,我国森林火灾次数已由 2010 年的 7723 起降至 2022 年的 709 起。然而,2019 年四川省木里县的森林火灾和 2020 年的四川省西昌市森林火灾,都导致了重大的人员伤亡,森林火灾的监测和预防依然面临挑战。
目前,地理数据、视频数据及卫星数据都可以作为 AI 的原始数据,用于野火的早期判断,将火情扼杀在摇篮之中。虽然我国幅员辽阔,各地的气候地形差异较大,很难实现野火的彻底预防, 。
本文首发于 HyperAI 超神经微信公众平台。
参考链接:
[1]https://climate.copernicus.eu/july-2023-warmest-month-earths-recent-history
[2]https://firms2.modaps.eosdis.nasa.gov/
[3]https://www.washingtonpost.com/climate-environment/2023/08/10/hawaii-wildfire-maps/
[4]https://www.bjnews.com.cn/detail/168429261314778.html
相关文章:

夏威夷等全球多地深陷「末日狂烧」,关键时刻 AI 监测能否跑赢野火?
内容一览:当地时间 8 月 8 日,美国夏威夷州突发野火,当地居民和游客不得不跳入太平洋中躲避火势。截至 8 月 17 日,这场野火已经造成110 人死亡,超过 1000人失踪。与此同时,美国、加拿大、法国等地也正遭遇…...

解决多模块内核心模块有接口打包成jar后被依赖并调用遇到的问题(springcloud集成ruoyi.quartz)
项目准备开发个新功能,刚好很喜欢ruoyi写的任务调度,因此想到了集成ruoyi.quartz模块 ,遇到了很多问题: 首先因为ruoyi.quartz模块依赖了ruoyi.common模块,因此第一步我需要把common模块一部分依赖项复制到了quartz模块内…...

【kubernetes系列】Kubernetes之Kubelet运行机制和状态更新机制
Kubelet运行机制 Kubelet是Kubernetes中的一个重要组件,在每个 Node 节点上都会启动 kubelet 服务。 该服务主要用于处理 Master 节点下发到本节点的任务,管理 Pod及Pod 中的容器。每个kubelet 进程会在 API Server 上注册节点自身信息,定期…...

(学习笔记-进程管理)怎么避免死锁?
死锁的概念 在多线程编程中,我们为了防止多线程竞争共享资源而导致数据错乱,都会在操作共享资源之前加上互斥锁,只有成功获得到锁的线程,才能操作共享资源,获取不到锁的线程就只能等待,直到锁被释放。 那…...

【golang】链表(List)
List实现了一个双向链表,而Element则代表了链表中元素的结构。 可以把自己生成的Element类型值传给链表吗? 首先来看List的四种方法。 MoveBefore方法和MoveAfter方法,它们分别用于把给定的元素移动到另一个元素的前面和后面。 MoveToFro…...

android平台的语音聊天助手源码
目录 1 android平台的语音聊天助手源码 1.1 //js处理工具类 1.1.1 openImage 1.2 LoadWebDetails android平台的语音聊天助手源码package com.shrimp.xiaoweirobot.net; import java.util.ArrayList;...

Python读取Word统计词频输出到Excel
1.安装依赖的包 "# 读取docx\n", "!pip install python-docx\n", "!pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-docx\n", "# 中英文分词\n", "!pip install jieba\n", "!pi…...

windows docker mysql8.0 挂载配置文件不生效的问题
原因 mysql 8.0 遇到sql_modeonly_full_group_by的问题,于是就自定义my.cnf 去掉only_full_group_by,修改my.cnf 文件后,进行映射启动 docker run 命令 docker run -p 3306:3306 --privilegedtrue --restartalways -d --name axsc-mysql -…...

openGauss学习笔记-42 openGauss 高级数据管理-触发器
文章目录 openGauss学习笔记-42 openGauss 高级数据管理-触发器42.1 语法格式42.2 参数说明42.3 示例 openGauss学习笔记-42 openGauss 高级数据管理-触发器 触发器会在指定的数据库事件发生时自动执行函数。 42.1 语法格式 创建触发器 CREATE TRIGGER trigger_name { BEFORE…...

Leetcode33 搜索旋转排序数组
题解: /*** 旋转排序数组可分为N1 N2两个部分,如:[4,5,6,7,1,2,3],N1为[4,5,6,7],N2为[1,2,3]** 必然满足以下两个条件:* 1. N1和N2都是分别递增的;* 2. N1中的所有元素大于N2中的所有元素;** …...

docker 第一章
目录 1.安装 docker 2.镜像、容器 3.总结 1.安装 docker 2.镜像、容器 3.总结 容器在 linux 上的本机运行,与其他容器共享主机的内核。它运行的是一个独立的进程,不占用其他任何可执行文件的内存,非常轻量级。...

注册中心 —— SpringCloud Netflix Eureka
Eureka 简介 Eureka 是一个基于 REST 的服务发现组件,SpringCloud 将它集成在其子项目 spring-cloud-netflix 中,以实现 SpringCloud 的服务注册与发现,同时提供了负载均衡、故障转移等能力,目前 Eureka2.0 已经不再维护…...

2023年国赛数学建模思路 - 案例:异常检测
文章目录 赛题思路一、简介 -- 关于异常检测异常检测监督学习 二、异常检测算法2. 箱线图分析3. 基于距离/密度4. 基于划分思想 建模资料 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 一、简介 – 关于异常…...

⛳ Java 反射
目录 ⛳ Java 反射🎨 一、反射概述**🎃 使用反射的前提条件: **🎲 类正常加载过程如下图:反射优缺点:🧸 Java反射机制提供的功能: **🥅 反射主要API** 🏭 二、反射的使用Ἲ…...

Android 13 像Settings一样开启关闭深色模式
一.背景 由于客户定制的Settings需要开启关闭深色模式,所以需要自己调用开启关闭深色模式 二.前提条件 首先应用肯定要是系统应用,并且导入framework.jar包,具体可以参考: Android 应用自动开启辅助(无障碍)功能并使用辅助(无障碍)功能_android 自动开启无障碍服务_龚礼鹏…...

微服务实战项目-学成在线-项目优化(redis缓存优化)
微服务实战项目-学成在线-项目优化(redis缓存优化) 1 优化需求 视频播放页面用户未登录也可以访问,当用户观看试学课程时需要请求服务端查询数据,接口如下: 1、根据课程id查询课程信息。 2、根据文件id查询视频信息。 这些接口在用户未认…...

IDEA 找不到项目 ‘org.springframework.boot:spring-boot-starter-parent:3.1.2‘
找不到项目 ‘org.springframework.boot:spring-boot-starter-parent:2.6.7’ 这个问题主要是因为ide的缓存导致的,我们直接清理缓存并重启ide 重启之后ide会对pom文件进行编排索引完成之后问题就没有了...

thinkphp开发的在线学习培训考试模拟考试做题练习系统带商城功能证书管理课程系统
thinkphp开发的在线学习培训考试模拟考试做题练习系统带商城功能证书管理课程系统 1、做题界面 2、前端UI的展示 3、带商城购物功能...

Android 应用冷启动优化
冷启动相关概念 应用启动概念 冷启动:首次打开app或者app彻底销毁后再次打开app(开关机后),这也是我们进行启动速度优化的主要方向。热启动:应用运行中按home键再打开应用。温启动:介于两者之间ÿ…...

538页21万字数字政府智慧政务大数据云平台项目建设方案WORD
导读:原文《538页21万字数字政府智慧政务大数据云平台项目建设方案WORD》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。 根据业务的不同属性,…...

进程间通信——信号
信号的概念 信号是 Linux进程间通信的最古老的方式之一,是事件发生时对进程的通知机制,有时也称之为软件中断,它是在软件层次上对中断机制的一种模拟,是一种异步通信的方式。信号可以导致一个正在运行的进程被另一个正在运行的异…...

PAT 1039 Course List for Student
个人学习记录,代码难免不尽人意。 Zhejiang University has 40000 students and provides 2500 courses. Now given the student name lists of all the courses, you are supposed to output the registered course list for each student who comes for a query. …...

【Sklearn】基于决策树算法的数据分类预测(Excel可直接替换数据)
【Sklearn】基于决策树算法的数据分类预测(Excel可直接替换数据) 1.模型原理1.1 模型原理1.2 数学模型2.模型参数3.文件结构4.Excel数据5.下载地址6.完整代码7.运行结果1.模型原理 决策树是一种基于树状结构的分类和回归模型,它通过一系列的决策规则来将数据划分为不同的类…...

并发编程4:Java 中的并发基础构建模块
目录 1、同步容器类 1.1 - 同步容器类的问题 1.2 - 迭代和容器加锁 2、并发容器类 2.1 - ConcurrentHashMap 类 2.2 - CopyOnWriteArrayList 类 3、阻塞队列和生产者-消费者模式 3.1 - 串行线程封闭 4、阻塞方法与中断方法 5、同步工具类 5.1 - 闭锁 -> CountDow…...

Vue-10.集成(.editorconfig、.eslintrc.js、.prettierrc)
介绍 同时使用 .editorconfig、.prettierrc 和 .eslintrc.js 是很常见的做法,因为它们可以在不同层面上帮助确保代码的格式一致性和质量。这种组合可以在开发过程中提供全面的代码维护和质量保证。然而,这也可能增加一些复杂性,需要谨慎配置…...

PHP-FPM进程排查
1、查看php-fpm的进程个数 ps -ef |grep "php-fpm"|grep "pool"|wc -l2、查看每个php-fpm占用的内存大小 ps -ylC php-fpm --sort:rss3.查看PHP-FPM在你的机器上的平均内存占用 ps --no-headers -o "rss,cmd" -C php-fpm | awk { sum$1 } END…...

PHP-MD5注入
0x00 前言 有些零散的知识未曾关注过,偶然捡起反而更加欢喜。 0x01 md5 注入绕过 md5函数有两个参数,第一个参数是要进行md5的值,第二个值默认为false,如果为true则返回16位原始二进制格式的字符串。意思就是会将md5后的结果当…...

对redis、redisson、springcache总结
<一> redis-缓存中间件 什么是redis redis是c语言开发的,一个高性能key-value键值对内存数据库,可以用来做数据库、缓存、消息中间件的一种非关系型数据库。 redis数据存储在哪里 内存和磁盘中,但是redis的读写都在内存中,…...

Java基础知识实际应用(学生信息管理系统、猜拳小游戏、打印日历)
一、Java学生信息管理系统 这个系统包含了添加、修改、删除、查询和显示所有学生信息等功能。您可以在此基础上进行修改和完善,以适应您的需求。 import java.util.Scanner;public class StudentManagementSystem {private static Scanner scanner new Scanner(S…...

Git:在本地电脑上如何使用git?
git 版本: 2.40.1.windows.1 文章目录 一. 使用git之前你必须要理解的几个概念1.1 理解工作区、版本库、暂存区的概念1.2 提交Git版本库的步骤【分两步执行】 二. Git本地库实战2.1 初始化版本库2.2 新建 & 提交 & 状态2.3 查看日志2.4 回退 & 穿梭 &am…...