当前位置: 首页 > news >正文

Paper -- 洪水深度估计 -- 利用图像处理和深度神经网络绘制街道照片中的洪水深度图

在这里插入图片描述


基本信息

论文题目:Flood depth mapping in street photos with image processing and deep neural networks

中文题目: 利用图像处理和深度神经网络绘制街道照片中的洪水深度图

作者及单位
· Bahareh Alizadeh Kharazi,美国得克萨斯州立大学景观建筑与城市规划系
· Amir H. Behzadan,美国得克萨斯州立大学建筑科学系

投稿和接受时间
· 投稿时间:2020年11月4日
· 修改时间:2021年3月10日
· 接受时间:2021年3月16日

期刊: 《Computers, Environment and Urban Systems》中国科学院SCI分区 1区


摘要

  • 本文研究了在城市地区使用传统方法如遥感和数字高程模型(DEMs)进行洪水深度估计时常出现的大误差问题
  • 提出了一种利用 深度神经网络检测被淹没的停车标志 的新方法; 此外,还结合了 Canny边缘检测概率Hough变换 计算杆长并 估计洪水深度
  • 研究使用了一个名为 BluPix 2020.1 的数据集,该数据集包含美国加拿大10个FEMA地区的网页挖掘照片

背景

  • 了解 洪水深度 对于 应对洪水后的响应和恢复操作 的成功至关重要
  • 常用的 洪水估计方法 (水深传感器等) 具有较大局限性

方法

  • 首先使用修改后的Mask R-CNN 检测街景照片中的停车标志
  • 再应用 Canny边缘检测和概率Hough变换确定停车标志杆的可见长度
  • 通过 洪水前和洪水后的图像对中标志杆的长度差异, 估算洪水深度
  • 由于一些图像中标志牌不是正对着的, 使用 倾斜校正方法 校正了的结果所得到的误差更低

大致方法

在这里插入图片描述
(a) 图像: 显示了一个洪水情况下的停车标志
(b) 图像: 展示了同一停车标志在没有洪水情况下的正常状态

洪水深度估计:通过比较洪水情况下和无洪水情况下停车标志的可见高度差异,可以计算洪水深度。在这种情况下,通过测量 p 和 p’ 的差值可以估算 d w d_w dw,即洪水深度

  • s 和 s’:这两个标记代表停车标志在图像中的总高度。在洪水情况下为 s,无洪水情况下为 s’。
  • p 和 p’:这两个标记表示停车标志杆的可见长度。在洪水情况下的可见长度为 p,无洪水情况下的可见长度为 p’。
  • d w d_w dw:洪水深度, 即洪水情况下水面到停车标志底部的距离
    • 前提: 现实中标志牌的尺寸是类似国标这种, 尺寸是固定已知的
    • 利用停车标志八边形的已知物理高度,计算图像中的每像素实际长度比例 r r r r ′ r' r 估算水深
      d w = r ′ ⋅ p ′ − r ⋅ p d_w = r' \cdot p' - r \cdot p dw=rprp

基于Faster R-CNN框架的停车标志牌检测

在这里插入图片描述
该图描述了从输入RGB图像输出目标检测框 的完整流程

  • 这一过程利用了卷积神经网络(CNN)技术,来实现图像中的对象识别和定位

输入:输入是一个标准的RGB图像,图中展示了一个被洪水淹没的停车标志
CNN:首先,图像通过卷积神经网络(CNN)进行特征提取
RoI Align:利用区域感兴趣对齐(RoI Align)技术从CNN特征图中精确抽取候选区域的特征
卷积层(Conv):接着,这些特征被送入更深的卷积层进行进一步的分析
分类(分类)和边界框回归(定位):在特征经过处理后,用于两个主要任务:一是识别图像中的对象类别(即停车标志),二是确定对象的具体位置(类别框)。
FCN:全卷积网络(FCN)用于从卷积特征图中生成像素级的预测,用于精细化目标检测
输出:最终输出是标记了目标检测边界框的图像,如图中黄色框所示,准确标出了停车标志的详细位置


Canny边缘检测过程

在这里插入图片描述
输入图像:最左侧显示的是原始RGB图像,即洪水情况下的停车标志。
灰度图像:原始图像被转换成灰度图像,减少处理数据量同时保留必要信息
高斯模糊:使用高斯核对灰度图像进行模糊处理,以消除图像噪声并平滑图像
边缘检测
Sobel算子:利用Sobel算子计算图像的梯度强度和方向,这是检测图像边缘的关键步骤
梯度和方向:𝐺 和 𝜃 分别代表每个像素的梯度强度梯度方向
非最大抑制:这一步骤旨在仅保留梯度最大的边缘,去除非边缘区域的所有梯度响应
滞后阈值:通过设置两个阈值——低阈值和高阈值,进一步细化和确认真实的边缘。
最终生成的边缘图: 显示了图像中检测到的所有边缘,这些边缘以亮线的形式表示,主要集中在停车标志及其杆上


确定洪水中停车标志及其支杆的精确位置

在这里插入图片描述
使用图像处理技术确定洪水中停车标志及其支杆的精确位置
检测到的停车标志:第一个图显示了在洪水背景中的停车标志被自动检测并用绿色边框标出。
边界框:第二个图展示了放大的停车标志,绿色框清晰地标示了停车标志的边界。
边界框坐标:第三个图展示了边界框的具体坐标,这些坐标定义了框的四个角
( x 1 , y 1 ) (x_1, y_1) (x1,y1):边界框左上角的坐标
( x 2 , y 2 ) (x_2, y_2) (x2,y2):边界框右上角的坐标
( x 3 , y 3 ) (x_3, y_3) (x3,y3):边界框左下角的坐标
( x 4 , y 4 ) (x_4, y_4) (x4,y4):边界框右下角的坐标


确定停车标志杆的位置

在这里插入图片描述
图中的标志:停车标志被框定,用于分析其几何参数。
S o c t S_{oct} Soct: 标志顶部的宽度
h h h: 从标志底部到所需检测点的高度
2 w 2w 2w: 用红线标记的宽度,表示检测区域的宽度
( x c o o , y c o o ) (x_{coo}, y_{coo}) (xcoo,ycoo): 表示检测区域顶部中心的坐标
( x y m a x , y m a x ) (x_{y_{max}}, y_{max}) (xymax,ymax): 表示检测区域底部中心的坐标


从图像中估算停车标志杆的长度

在这里插入图片描述
左图:显示了洪水情况下的停车标志,红色线表示杆的候选线
中图:强调了停车标志杆的估算位置,使用黄色和蓝色标记以示区分。
右图:展示了用于计算杆长的坐标系统,以及如何从这些坐标得出杆的实际长度 p = y m a x − y c o o p=y_{max}-y_{coo} p=ymaxycoo


通过模板匹配方法估计停车标志的倾斜角度以校正标志牌

在这里插入图片描述
输入图像:为洪水中的停车标志图像,标志牌可能存在旋转和倾斜
模板八边形的旋转:模板八边形被依次绕 x , y , z x,y,z x,y,z 三轴旋转,分别生成一系列可能的姿态(如图中展示的不同倾斜角度模板)
匹配重叠:将调整大小后的模板八边形与输入图像重叠,并计算重叠区域的相似度(Overlap)
最大重叠模板:找到重叠区域最大的模板视为最佳匹配,确定停车标志的倾斜角度。
输出:根据对应的俯仰、偏航、滚转角度( P i t c h = − 12 ° , Y a w = − 30 ° , R o l l = 0 ° ) Pitch = -12°,Yaw = -30°,Roll = 0°) Pitch=12°Yaw=30°Roll= 校正图像


效果

在这里插入图片描述
左侧案例 (a):包括洪水前和洪水后两张配对照片。标注了杆的总长度(洪水前)和露出部分的长度(洪水后)
显示了根据这些数据计算出的洪水深度 误差, Δ 表示估算误差,单位为英寸
右侧案例 (b):同上

相关文章:

Paper -- 洪水深度估计 -- 利用图像处理和深度神经网络绘制街道照片中的洪水深度图

基本信息 论文题目:Flood depth mapping in street photos with image processing and deep neural networks 中文题目: 利用图像处理和深度神经网络绘制街道照片中的洪水深度图 作者及单位: Bahareh Alizadeh Kharazi,美国得克萨斯州立大…...

学习C#中的BackgroundWorker 组件

1. BackgroundWorker 组件概述 许多经常执行的操作可能需要很长的执行时间。 例如: 图像下载 Web 服务调用 文件下载和上载(包括点对点应用程序) 复杂的本地计算 数据库事务 本地磁盘访问(相对于内存访问来说其速度很慢&…...

【Vue3新工具】Pinia.js:提升开发效率,更轻量、更高效的状态管理方案!

大家好,欢迎来到程序视点!我是小二哥! 前言 在VUE项目开发中,一些数据常常被多个组件频繁使用,为了管理和维护这些数据,就出现了状态管理模式。 今天小二哥要给大家推荐的不是VueX,而是称为新…...

PCB 间接雷击模拟

雷击是一种危险的静电放电事件,其中两个带电区域会瞬间释放高达 1 千兆焦耳的能量。雷击就像一个短暂而巨大的电流脉冲,会对建筑物和电子设备造成严重损坏。雷击可分为直接和间接两类,其中间接影响是由于感应能量耦合到靠近雷击位置的物体。间…...

JAVA泛型和顺序表ArrayList

目录 泛型 泛型的定义: 泛型的实例化: 泛型的使用: 顺序表ArrayList 顺序表ArrayList的两种实例化方法: ArrayList常用的方法: 1. add 方法 2. size ( ) 方法 3. get 方法 4. set 方法 5. 顺序表的三种遍历元素的方法…...

Qt桌面应用开发 第六天(鼠标事件 定时器事件 定时器类 事件分发器 事件过滤器)

目录 1.1鼠标进入和离开enterEvent\leaveEvent 1.2鼠标按下释放和移动mousePressEvent\mouseReleaseEvent\mouseMoveEvent 1.3定时器事件timerEvent 1.4定时器类QTimer 1.5事件分发器event 1.6事件过滤器eventFilter 1.1鼠标进入和离开enterEvent\leaveEvent 事件&#x…...

Javascript高级—深入JS模板字符串的高级用法

深入JS模板字符串的高级用法:解锁动态内容生成的无限可能 在JavaScript编程中,模板字符串(Template Literals)自ES6(ECMAScript 2015)引入以来,就以其简洁、直观的特性迅速成为开发者们生成动态…...

14. 【.NET 8 实战--孢子记账--从单体到微服务】--简易权限--章节总结

本章重点介绍了如何在一个简单的系统中实现基本的权限管理功能。通过构建一个简单的权限控制模型,章节阐述了如何为用户分配权限,并在应用程序中进行访问控制。 一、关键要点: 1. 用户管理(登录/注册/Token) 本章节聚…...

vulhub之fastjson

fastjson 1.2.24 反序列化 RCE 漏洞(CVE-2017-18349) 漏洞简介 什么是json json全称是JavaScript object notation。即JavaScript对象标记法,使用键值对进行信息的存储。举个简单的例子如下: {"name":"BossFrank", "age":23, "isDevel…...

2024年亚太地区数学建模大赛D题-探索量子加速人工智能的前沿领域

量子计算在解决复杂问题和处理大规模数据集方面具有巨大的潜力,远远超过了经典计算机的能力。当与人工智能(AI)集成时,量子计算可以带来革命性的突破。它的并行处理能力能够在更短的时间内解决更复杂的问题,这对优化和…...

卷积神经网络各层介绍

目录 1 卷积层 2 BN层 3 激活层 3.1 ReLU(Rectified Linear Unit) 3.2 sigmoid 3.3 tanh(双曲正切) 3.4 Softmax 4 池化层 5 全连接层 6 模型例子 1 卷积层 卷积是使用一个卷积核(滤波器)对矩阵进…...

Python应用指南:高德拥堵延时指数

随着城市化进程的加快,交通拥堵问题日益严重,成为影响城市居民生活质量的重要因素之一。为了科学评估和管理交通拥堵,各种交通拥堵指数应运而生。其中,高德地图提供的“拥堵延时指数”因其数据丰富、实时性强和应用广泛而备受关注…...

ISO 21434标准:汽车网络安全管理的利与弊

ISO 21434标准在提升汽车网络安全性方面起到了重要作用,但任何标准都不是完美无缺的,ISO 21434标准也存在一些不足之处。以下是对其不足之处的分析: 一、标准的灵活性与适应性 缺乏具体技术细节:ISO 21434标准更多地提供了网络安…...

无插件H5播放器EasyPlayer.js视频流媒体播放器如何开启electron硬解码Hevc(H265)

在数字化时代,流媒体播放器技术正经历着前所未有的变革。随着人工智能、大数据、云计算等技术的融合,流媒体播放器的核心技术不断演进,为用户提供了更加丰富和个性化的观看体验。 EasyPlayer.js H5播放器,是一款能够同时支持HTTP、…...

excel版数独游戏(已完成)

前段时间一个朋友帮那小孩解数独游戏,让我帮解,我看他用电子表格做,只能显示,不能显示重复,也没有协助解题功能,于是我说帮你做个电子表格版的“解题助手”吧,不能直接解题,但该有的…...

接口上传视频和oss直传视频到阿里云组件

接口视频上传 <template><div class"component-upload-video"><el-uploadclass"avatar-uploader":action"uploadImgUrl":on-progress"uploadVideoProcess":on-success"handleUploadSuccess":limit"lim…...

Arcgis 地图制作

地图如下,不同历史时期&#xff1a;...

【每日一题1121】python校招笔试题、面试题

1、Python字符串不是通过NUL或者’\0’来结束的 C语言中字符串使用’\0’作为结束符&#xff0c;以防止越界。但是在python中&#xff0c;字符串值只包含所定义的东西。 2、执行以下程序&#xff0c;输出结果为&#xff08;&#xff09; class Base(object):count 0def __in…...

Spring Boot + Vue 基于 RSA 的用户身份认证加密机制实现

Spring Boot Vue 基于 RSA 的用户身份认证加密机制实现 什么是RSA&#xff1f;安全需求介绍前后端交互流程前端使用 RSA 加密密码安装 jsencrypt库实现敏感信息加密 服务器端生成RSA的公私钥文件Windows环境 生成rsa的公私钥文件Linux环境 生成rsa的公私钥文件 后端代码实现返…...

Docker搭建有UI的私有镜像仓库

Docker搭建有UI的私有镜像仓库 一、使用这个docker-compose.yml文件&#xff1a; version: 3services:registry-ui:image: joxit/docker-registry-ui:2.5.7-debianrestart: alwaysports:- 81:80environment:- SINGLE_REGISTRYtrue- REGISTRY_TITLEAtt Docker Registry UI- DE…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 &#xff08;一&#xff09;项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台&#xff0c;其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言&#xff0c;首次接触 OpenBCI 设备时&#xff0c;往…...