基于序列深度学习模型的向量海岸线形状分类方法 2024.05

news2024/11/17 21:44:51

本文中提出了一个数据驱动的方法来分类的形状矢量海岸线,该方法利用基于序列的深度学习算法对海岸线矢量分段进行建模和分类。具体而言,首先将复杂的海岸线划分为一系列弯曲,并进一步提出了一组不同的特征来描述每个弯曲的形态特征。然后,将每个弯道的形态特征及其序列整合到一个LSTM中,最终进行海岸线分类。

(五种海岸线)

海岸线分段分类方法由以下几个部分组成:1)准备数据2)序列建模3)特征提取4)分类模型

序列建模:每个单独的海岸线段被划分为一个弯曲序列

海岸线的形状建模:全局方法(左)和本文提出的序列方法(右)。全局方法将海岸线视为一个整体,提取海岸线的总长度、平均全局曲率、全局包络面积、最小边界矩形等信息。相比之下,本工作中也采用了序列建模方法,首先将海岸线划分为几个子部分(即本工作中的弯曲)。然后对每个子部分进行单独分析,研究其形态特征。通过这样做,序列建模方法可以提供海岸线的详细分析,因此能够更准确地描述海岸线的形态特征。

海岸线建模两种方法:全局建模和局部/序列建模。

全球模拟方法通过全局特征提取。但在海岸线研究中并不常用,原因:1)由于海岸线通常是一条非常复杂的曲线,全局方程或数值模拟方法的计算成本高,结果分析复杂。2)由于全局特征是海岸线细节特征的集合,因此从全局特征中提取的形态信息太少,而集合会去除许多重要的细节。

本文建议将海岸线划分为一系列弯曲,然后分别分析其形态特征(图3)。

通过拐点分割算法可以将一条直线分割成一系列的弯曲,具体分割步骤如下:

(1)预处理:首先,对海岸线应用小阈值σ的Douglas-Peucker (DP)算法来简化其几何形状。这样做是为了去除重复的点和非常接近的点,允许所有的矢量海岸线在相同的比例上。在应用DP算法时,我们调整算法的容差参数σ,并监测样本端点所包围的面积。为了保证在DP处理过程中形状标签的稳定性,我们保证了应用DP算法前后的IoU保持在95%以上。

(2)点分类和弯曲检测:然后根据每个点是左转(逆时针)还是右转(顺时针)来确定除起点和终点外的每个点的方向。逆时针旋转的点标记为正角(图4a中标记为红色),顺时针旋转的点标记为负角(图4a中标记为绿色)。所有角度符号相同的连续点都被认为是一个弯道。

(3)弯道校正:如图4b所示,最初检测到的弯道需要进行一定的调整。一个高度弯曲的弯道,即一个弯道内所有顶点的弯曲总和太大,可能会使相邻的弯道与它们自己相交。移动端点以减小所有顶点的累计角度,直到两个相邻弯道的交点消失。对于一个平缓弯曲的弯,这意味着标志着弯道终点的弯曲很小,人们不会认为这是弯道的终点。只有当拐点角度较小,且新基线比旧基线短时,才应将端点向外移动。

使用上述方法,海岸线可以分割成一系列的弯曲。同时,这些弯道具有以下明显的特点:1)正弯道和负弯道总是相邻的。2)每个弯道与另一个相邻,覆盖了整个海岸线上的每个顶点。

特征

提出的每个弯曲的形态特征可以分为三组:大小相关,方向相关和复杂性相关的特征。很多关于曲线的特征,略

矢量海岸线形态分类模型

构建了一个矢量海岸线形态分类模型BendSeqLSTM。由于海岸线形状的顺序对称性,采用双向LSTM模型。首先,将海岸线分割为一系列弯曲X = (X1,X2,⋯X n),并将每个弯曲的所有形态特征描述为Xt,其中t是海岸线中弯曲的序数。然后将弯曲序列X输入到双向LSTM层,将其序列结构信息聚合到第一层的隐变量H[1]中。LSTM单元的数量等于海岸线上弯曲的数量。然后将H[1]输入到两个全连通层中,在全连通层中对LSTM提取的序列结构信息进行富集,得到H[L]。最后,集成一个SoftMax层来输出隐藏变量H[L]作为五种海岸线形态类(在第3.1节中提出)的概率Y。

LSTM 层的长度设置为样本中的最大序列长度。短于此长度的样本将填充预定义的掩码值。在将数据馈送到 LSTM 层之前,应用掩码层进行预处理。每个 LSTM 单元都配置有 4 个内核。全连接层由 128 个单元组成。

结果

双向序列网络始终优于单向网络。因为海岸线的形态显然与输入的方向无关。利用双向序列网络消除了在计算模型中描绘海岸线形态时描述顺序的影响。此外,双向序列网络还有助于捕获更多的海岸线形态特征。

与基于弯曲构造的特征(如本研究)相比,基于点X和Y坐标的方法表现出较差的性能。我们将其归因于两个主要原因:首先,与弯曲序列相比,点序列的长度较长增加了梯度消失的问题。此外,与手工特征相比,仅从X和Y坐标自动提取高级特征的效率太低,表现为模型收敛困难。因此基于X点和Y点坐标的端到端方法在训练过程和分类精度方面存在明显的缺点。具有手工制作特征的基于向量的方法,如本文提出的方法,在数据灵活性、易于应用、模型可解释性、模型训练和迁移的成本效率以及整体性能方面具有更大的优势。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1712302.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue热更新出现内存溢出

Vue热更新出现内存溢出 vue-cli2遇到此问题的解决办法:vue-cli3遇到此问题的解决办法:方法一(已测试ok)方法二(未尝试) 开发项目有一段时间了,随着项目越来越大,打包的时间也相应的变…

英语写作AI怎么使用?分享3款AI写作生成器

英语写作AI怎么使用?在日常生活中,英语写作AI工具的使用已经变得日益普遍。它们凭借先进的人工智能技术,不仅快速整理思路、生成文章草案,甚至进行语法检查和拼写修正,大大提高了写作的便捷性和效率。下面,…

旅游推荐管理系统

代码位置:旅游管理系统: 根据若依模版的一个旅游管理系统 - Gitee.com 分支dev 项目介绍 项目目的 随着社会的高速发展,人们生活水平的不断提高,以及工作节奏的加快,旅游逐渐成为一个热门的话题,因为其形式的多样,涉…

【数据结构】二叉搜索树——高阶数据结构的敲门砖

目录 树概述 二叉搜索树概述 概念 特性 元素操作 插入 删除 模拟实现 框架 查找 插入 删除 树概述 树——在计算机中是一种很常见的数据结构。 树是一种很强大的数据结构,数据库,linux操作系统管理和windows操作系统管理所有文件的结构就是…

SQL刷题笔记day4补

1题目 我的正确代码 select e.last_name,e.first_name,d.dept_name from employees e left join (select departments.dept_name,dept_emp.emp_no,dept_emp.dept_no from departments join dept_emp on departments.dept_nodept_emp.dept_no) d on e.emp_nod.emp_no复盘&…

1111 对称日

solution 把日期转换为标准位数&#xff0c;不足则补零&#xff0c;判断是否为对称日期。月日可能会缺一个0&#xff0c;年份可能缺0~3个零。 #include<iostream> #include<string> #include<map> using namespace std; int main(){int n, flag;map<str…

Orange AIpro Color triangle帧率测试

OpenGL概述 OpenGL ES是KHRNOS Group推出的嵌入式加速3D图像标准&#xff0c;它是嵌入式平台上的专业图形程序接口&#xff0c;它是OpenGL的一个子集&#xff0c;旨在提供高效、轻量级的图形渲染功能。现推出的最新版本是OpenGL ES 3.2。OpenGL和OpenCV OpenCL不同&#xff0c;…

HTTP协议的基本了解

一、HTTP-概述 HTTP&#xff1a;Hyper Text Transfer Protocol(超文本传输协议)&#xff0c;规定了浏览器与服务器之间数据传输的规则。 http是互联网上应用最为广泛的一种网络协议 。http协议要求&#xff1a;浏览器在向服务器发送请求数据时&#xff0c;或是服务器在向浏览器…

计算机网络7——网络安全1 概述与加密

文章目录 一、网络安全问题概述1、计算机网络面临的安全性威胁2、安全的计算机网络3、数据加密模型 二、两类密码体制1、对称密钥密码体制2、公钥密码体制 随着计算机网络的发展&#xff0c;网络中的安全问题也日趋严重。当网络的用户来自社会各个阶层与部门时&#xff0c;大量…

区间相交-435. 无重叠区间,56. 合并区间

题目连接及描述 435. 无重叠区间 - 力扣&#xff08;LeetCode&#xff09; 56. 合并区间 - 力扣&#xff08;LeetCode&#xff09; 题目分析 二维数组&#xff0c;数组中每个元素为大小为2的一维数组&#xff0c;求移除区间的最小数量&#xff0c;使剩余区间互不重叠。今天写…

Python-3.12.0文档解读-内置函数pow()详细说明+记忆策略+常用场景+巧妙用法+综合技巧

一个认为一切根源都是“自己不够强”的INTJ 个人主页&#xff1a;用哲学编程-CSDN博客专栏&#xff1a;每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 详细说明 功能描述 参数 返回值 使用规则 示例代码 基本使用 模运算 变动记录…

Windows 下载安装Apache

一、官网下载 1、打开Apache官网http://httpd.apache.org&#xff0c;点击Download。 2、选择Windows版本&#xff0c;点击链接。 3、选择对应版本选择下载。 二、安装、设置 1、将下载好的解压。 2、依次打开Apache24-conf-httpd.conf,用记事本打开 1)、修改路径 2)、修改…

C# TcpClient

TcpClient 自己封装的话&#xff0c;还是比较麻烦的&#xff0c;可以基于线程&#xff0c;也可以基于异步写&#xff0c;最好的办法是网上找个插件&#xff0c;我发现一个插件还是非常好用的&#xff1a;STTech.BytesIO.Tcp 下面是这个插件作者的帖子&#xff0c;有兴趣的可以…

【深度学习实战—9】:基于MediaPipe的人脸关键点检测

✨博客主页&#xff1a;王乐予&#x1f388; ✨年轻人要&#xff1a;Living for the moment&#xff08;活在当下&#xff09;&#xff01;&#x1f4aa; &#x1f3c6;推荐专栏&#xff1a;【图像处理】【千锤百炼Python】【深度学习】【排序算法】 目录 &#x1f63a;一、Med…

IDEA中各种Maven相关问题(文件飘红、下载依赖和启动报错)

错误情况 包名、类名显示红色、红色波浪线&#xff0c;大量依赖提示不存在&#xff08;程序包xxx不存在&#xff09; 工程无法启动 一、前提条件 1、使用英文原版IDEA 汉化版的可能有各种奇怪的问题。建议用IDEA英文版&#xff0c;卸载重装。 2、下载maven&#xff0c;配置环…

PFC+LLC 概述

总电路图 方案为&#xff1a;PFC&#xff08;NCP1654D&#xff09;LLC&#xff08;NCPB97B&#xff09;同步整流 输入为220V&#xff08;正负20%&#xff09;输出48V&#xff0c;600W电源 组成 1.输入 零线&#xff0c;火线&#xff0c;大地线&#xff0c;有防雷电路&#…

后量子加密算法的数学原理

后量子加密算法是一类专为抵御量子计算机攻击而设计的加密算法。随着量子计算技术的迅速发展&#xff0c;传统的加密算法如RSA和椭圆曲线密码学在量子计算机面前变得脆弱&#xff0c;因此&#xff0c;开发能够在量子计算时代保持安全性的加密算法变得尤为重要。下面将详细介绍后…

使用小猪APP分发打造高效的App封装工具

你是否曾经因为App封装和分发的复杂性而头疼不已&#xff1f;在这个移动应用迅速发展的时代&#xff0c;开发人员不仅需要专注于应用的功能和用户体验&#xff0c;还必须面对繁琐的封装和分发过程。幸运的是&#xff0c;小猪APP分发www.appzhu.cn正好为我们提供了一个简便而高效…

STM32_HAL_使用FPEC实现闪存的读写

STM32的FLASH结构 主存储器&#xff08;Main Memory&#xff09;&#xff1a;这是STM32中最大的存储区域&#xff0c;用于存储用户的程序代码、常量数据以及程序运行时不变的数据。STM32的主存储器通常被组织为多个扇区&#xff08;sector&#xff09;&#xff0c;每个扇区的大…

构建高效稳定的运维服务体系:技术架构解析与最佳实践

在当今数字化时代&#xff0c;运维服务对于企业的稳定运行和业务发展至关重要。本文将深入探讨运维服务的技术架构&#xff0c;介绍如何构建高效稳定的运维服务体系&#xff0c;并分享最佳实践。 ### 1. 概述 运维服务的技术架构是支撑整个运维体系的核心&#xff0c;它涵盖了…