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

IEEE综述 | 车道拓扑推理20年演进:从程序化建模到车载传感器

导读

车道拓扑推理对于高精建图和自动驾驶应用至关重要,从早期的程序化建模方法发展到基于车载传感器的方法,但是很少有工作对车道拓扑推理技术进行全面概述。为此,本文系统性地调研了车道拓扑推理技术,同时确定了未来研究的挑战和机遇,旨在为研究者和从业者提供对这一快速发展领域的宝贵见解。

©️【深蓝AI】编译

本文由paper作者——Miao Fan授权【深蓝AI】编译发布!

论文题目:A Concise Survey on Lane Topology Reasoning for HD Mapping

论文作者:Yi Yao, Miao Fan, Shengtong Xu, Haoyi Xiong, Xiangzeng Liu, Wenbo Hu, Wenbing Huang

论文地址:https://arxiv.org/abs/2504.01989

1、摘要

车道拓扑推理技术在高精(HD)建图和自动驾驶应用中发挥着至关重要的作用。虽然近年来在该领域中取得了重大进展,但是很少有文献综合概述这些工作。本项调研系统性地回顾了车道拓扑推理方法的演变和现状,将其分为三种主要范式:基于程序化建模的方法、基于航拍图像的方法和基于车载传感器的方法。本文分析了从早期基于规则的方法到现代基于学习的解决方案的进展,这些基于学习的解决方案利用了transformers、图神经网络(GNNs)和其它深度学习架构。本文研究了标准化的评估指标,包括道路级指标(APLS和TLTS评分)和车道级指标(DET和TOP评分),以及在OpenLane-V2等基准数据集上的性能比较。本文确定了关键的技术挑战,包括数据集可用性和模型效率,并且总结了未来研究中有前景的方向。这篇综述为研究者和从业者提供了对高精建图应用中车道拓扑推理的理论框架、实际实现和新兴趋势的见解。

2、介绍

高精(HD)地图是自动驾驶的基础,它提供了道路网络、车道配置和交通元素的详细表示。在高精建图的各方面中,车道拓扑推理(理解不同车道如何相互连接和关联(见图3))对于安全且高效的自主导航尤为重要。在过去的二十年里,该领域发生了重大的演变,从简单的基于规则的方法发展到复杂的深度学习方法。

3|交叉路口处车道拓扑的示意图

车道拓扑推理方法的发展大致可分为三种主要范式。早期的方法依赖于程序化建模技术,利用计算机图形学和基于规则的系统来生成道路网络。这些方法较为基础,它们依赖于人工设计的规则并且缺乏灵活性,因此受到限制。基于航拍图像方法的出现标志着一项重大转变,它引入了计算机视觉技术从俯视图中提取道路拓扑结构。然而,这些方法往往难以解决由建筑物和树木造成的遮挡问题,它们只能提取粗略的道路级网络。近年来,已经见证了基于车载传感器方法的出现(见图1),这代表着车道拓扑推理领域的最新进展。

1|高精(HD)建图的车道拓扑推理图示

这些方法利用了深度学习架构,它们通常由几个关键组件组成:用于特征提取的主干网络(例如ResNet或者Swin Transformer)、用于鸟瞰图转换的透视变换、车道中心线检测和拓扑推理模块。现代方法通常结合多种输入模态,包括相机、激光雷达和现有的SD地图,以提高性能。基于transformer的架构和图神经网络(GNNs)的引入进一步推动了该领域的发展,实现了更复杂的拓扑推理能力。

现有的研究详细介绍了高精地图创建和车道拓扑构建,但是它们缺乏对最新研究的系统性介绍。本篇综述全面回顾了车道拓扑推理方法,分析了它们的演变、能力和局限性。本文研究了该领域中使用的不同评估指标,包括道路级指标和车道级指标,并且比较了各种方法在标准基准上的性能。此外,本文还讨论了当前的挑战,并且确定了未来研究中有前景的方向,旨在为研究者和从业者提供对这一快速发展领域的宝贵见解。

3、方法回顾

本节回顾了2024年之前发表的具有代表性的车道拓扑推理方法。如图2所示,这些方法根据其发展范式分为三类。

图2|2001年至2024年车道拓扑推理研究的演变,展示了该领域的方法进展和技术转型。时间线跟踪了三种不同的方法:基于程序化建模的方法(蓝色箭头)、基于航拍图像的方法(绿色箭头)和基于车载传感器的方法(橙色箭头)
 

程序化建模在2017年之前就已经盛行,基于航拍图像的方法在2017年至2022年期间获得了主流地位。自2023年以来,基于车载传感器的解决方案变得越来越普遍。

3.1 基于程序化建模的方法


车道拓扑推理的早期探索主要采用计算机建模技术来模拟城市道路网络,其主要优点是数据放大能力强。这些方法的工作流程如图4所示。

4|基于程序化建模方法的流程

在输入城市的2D图像地图(例如地理地图和统计地图)后,这些方法生成了包含建筑物、道路网络和其它城市特征的虚拟城市地图。交互式参数调整使得用户能够根据特定要求来优化结果。

Parish等人提出了将L-system应用于生成城市道路网络的开创性工作,这一概念在后续研究中得到了进一步扩展。Chen等人引入了张量场表示来建模道路几何形状。随后的改进引入了额外的约束和功能。地形感知方法确保了地理一致性,而智能仿真技术增强了交通建模的真实性。此外,基于草图的方法实现了直观的用户交互,示例驱动的方法利用预先存在的数据来加快道路网络生成。

3.2 基于航拍图像的方法

尽管基于程序化建模的方法是该领域的基础,但是这些方法的可控性仍然有限,并且严重依赖于人工设计的规则。此外,评估这些规则和参数对最终输出的影响本身具有挑战性,这需要大量的迭代实验来获得令人满意的结果。因此,这些方法缺乏灵活性。相比之下,深度学习的兴起通过从航拍图像中直接提取道路拓扑结构,从而彻底改变了高精建图技术。这些方法利用了神经网络,这最大限度地减少了人工干预,并且简化了建图过程。这些方法的一般工作流程如图5所示。

 图5|基于航拍图像方法的流程 

一些方法利用语义分割网络来识别航拍图像中的道路区域,然后进行形态学后处理以提取道路拓扑。替代方法包括迭代图构造和图生长方法。迭代图构造方法通过从道路网络中识别几个顶点,并且根据预定义的决策函数迭代地添加新的顶点和边来逐步扩展图。相比之下,图生成方法更为直接。这些方法采用矢量场编码策略,它们首先将航拍图像编码为潜在表示。神经网络随后用于预测图顶点,然后解码过程预测邻接矩阵并且重建道路网络。

3.3 基于车载传感器的方法

尽管基于航拍图像的方法为该领域引入了新的方法,但是它们仅限于提取粗略的道路级网络。此外,建筑物和树木造成的遮挡往往会使道路在航拍图像中不完整,从而影响结果的准确性。因此,这些方法不适合自动构建高精地图或者为自动驾驶汽车规划行为。为了解决这些局限性,基于车载传感器的方法逐渐兴起,它们利用从车载传感器捕获的单模态或者多模态数据来构建自车周围的详细车道拓扑。这些方法代表了高精建图的重大转变,它们提供了更高的准确性和适用性。图6展示了基于车载传感器方法的典型流程,包括主干网络、透视变换、车道解码器和拓扑解码器。

6|基于车载传感器方法的流程

主干部分通常由特征提取网络组成,例如ResNetSwin Transformer。然后,透视变换将这些特征转换为鸟瞰图(BEV)格式。在获得BEV特征后,通常使用基于transformer的架构来设计车道中心线解码器,以根据信息要求输出车道中心线特征。在这部分中,通常使用一组学习到的查询向量来映射不同的中心线实例。拓扑解码器的功能是在这些车道中心线实例之间建立连接,通常使用GNNsMLPs和语言模型。除了车载相机图像外,一些方法还使用补充数据源来增强输入特征,包括SD地图、激光雷达点云和交通元素(例如交通信号灯和交通标志牌),从而提高了性能。

Can等人提出了首批工作之一,他们使用来自前视相机的单帧图像作为输入并且采用类似于DETR的基于transformer的架构来预测中心线实例。该方法使用额外的MLPs来输出中心线实例的连接关系。同样,另一些方法也使用一组MLPs来预测拓扑关系。在先前工作的基础上,Can等人引入了最小环的概念,并且准确估计了交叉路口区域的车道连接关系。LaneGAP通过采用Path2Graph算法来恢复拓扑关系,从而进一步改进了拓扑估计。HDMapGen仅使用基于图的模型来自回归地生成车道拓扑。一些解决方案首先检测车道中心线,并且将每条车道中心线映射到顶点,然后使用基于图的模型来更新车道拓扑。此外,另一些方法对车道中心线特征进行序列化,并且使用语言模型来建立拓扑关系。

3.4 其它方法

尽管本项调研着重于上述三种方法类型,但是也存在其它重要的方法。例如,Jia等人根据现有高精地图中的车道线和道路边界来生成车道拓扑;He等人和Stanojevic等人从GPS轨迹中提取车道拓扑。

4、数据集和基准

本节列出了上述方法中常用的数据集。此外,本文还研究了该领域中使用的不同评估指标,并且比较了各种方法在基准数据集上的性能。


4.1 数据集

相关数据集可以分为2D数据集和3D数据集。表格1总结了这些数据集,它们通过提供针对特定研究需求而设计的多样化且高质量的数据,在推进道路拓扑提取和车道拓扑推理方面发挥关键作用。

表格1|当前相关数据集的比较

12D数据集:为了从航拍图像中提取道路拓扑结构,已经使用了几个2D数据集,包括SpaceNetDeepGlobeTopo-boundarySpaceNet是一个包含建筑和道路网络标注的大规模数据集,它广泛应用于城市拓扑提取任务。DeepGlobe专注于具有不同土地覆盖类型的乡村地区,该数据集提供了高密度的道路网络标注,使其适用于需要在非城市环境中进行建图的任务。Topo-boundary是专门为离线拓扑道路边界检测而设计的。

23D数据集:nuScenesArgoverse2OpenLane-V2是基于车载传感器的方法中使用的重要数据集。nuScenesArgoverse2都由来自高分辨率车载传感器(包括相机和激光雷达)的数据组成。OpenLane-V2是专门为车道拓扑推理任务而设计的独特3D数据集,它分为两个子集:subset_Asubset_B,分别来自Argoverse2nuScenes。这些子集确保了全面覆盖与车道拓扑推理相关的场景。

4.2 评估指标

三个像素级指标(精度、召回率和F1评分)和两个拓扑级指标(APLS评分和TLTS评分)是基于航拍图像的方法中常用的道路级指标。此外,车道级指标(例如感知指标(DETl评分)和推理指标(TOPll评分))在基于车载传感器的方法中广泛应用于车道中心线之间的拓扑结构。基于程序化建模的方法缺乏一致的评估指标,因此这里不讨论它们。

4.3 比较结果

表格2展示了三种基于航拍图像的方法(基于分割、迭代图构建和图生长)在Topo-boundary数据集上的定量结果。

表格2|最先进的基于航拍图像的方法在Topo-boundary数据集上的性能比较

表格3展示了基于车载传感器的方法在OpenLane-V2数据集上的定量结果。

表格3|最先进的基于车载传感器的方法在OpenLane-V2数据集上的性能比较

5、挑战

尽管在高精建图的车道拓扑推理方面取得了重大进展,但是仍然存在若干项挑战有待解决:(1)专用于车道拓扑推理的数据集构建受到高成本的阻碍,这限制了大规模、高质量数据集的可用性。因此,需要更多的研究工作来开发针对车道拓扑推理的可获取且鲁棒的数据集。(2)尽管基于车载传感器的方法代表了最新技术,但是它们通常涉及具有大型参数规模的模型。这限制了它们在自动驾驶汽车或者边缘设备上的直接部署,这些设备具有严格的计算和能量限制。因此,开发能够实时构建高精地图的轻量级模型是至关重要的。(3)用于车道拓扑推理的路侧和车载相机数据融合仍然没有得到充分探索。与车载相机不同,路侧传感器(例如道路视频监控)为高精建图提供了一个互补的视角,缓解了周围车辆的遮挡问题,并且提高了准确性。然而,关于这一领域的研究文献有限,因此需要进一步研究。

6、总结

车道拓扑推理技术已经成为高精建图和自动驾驶应用中的关键组成部分,从早期的程序化建模阶段快速发展成现代的基于车载传感器的方法。本篇综述对这一进展进行了全面分析,突出了取得的重大进展,同时确定了未来研究中的挑战和机遇。现代技术在捕获复杂的车道拓扑方面展现出卓越的性能。各种数据源(包括相机图像、激光雷达点云和现有的SD地图)的集成进一步提高了这些系统的鲁棒性和准确性。然而,一些关键挑战依然存在。大规模、高质量数据集的可用性受限继续制约着模型的开发和验证。此外,当前架构的计算需求对资源受限环境中的实时应用提出了挑战。对于该领域中的未来研究,一个有前景的方向是通过采用路侧基础设施辅助的车辆感知技术来构建车道拓扑。

相关文章:

IEEE综述 | 车道拓扑推理20年演进:从程序化建模到车载传感器

导读 车道拓扑推理对于高精建图和自动驾驶应用至关重要,从早期的程序化建模方法发展到基于车载传感器的方法,但是很少有工作对车道拓扑推理技术进行全面概述。为此,本文系统性地调研了车道拓扑推理技术,同时确定了未来研究的挑战和…...

手撕C++STL list:深入理解双向链表的实现

目录 1. 引言 3. list 类的实现 (1) 基本结构 (2) 初始化与清理 (3) 插入与删除 (4) 常用接口 (4) 常用接口 4. 测试代码 5. 总结 1. 引言 在C STL中,list是一个基于双向链表的容器,支持高效的头尾插入/删除操作(O(1)时间复杂度&…...

QMT学习课程Day1

我们先从交易的最基础,如何进行下单,最为简答的下单,帮助大家建立自信心。 首先导入相关函数: #encoding:gbk import pandas as pd import numpy as np import datetime import pandas as pd import numpy as np import talib i…...

【Rust结构体】Rust结构体详解:从基础到高级应用

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...

Java面试实战:音视频场景下的微服务架构与缓存技术剖析

面试场景描述 谢飞机,一位自称“全栈工程师”的程序员,来到一家互联网大厂参加Java开发岗位的面试。面试官是一位严肃的技术专家,他希望通过一系列问题考察谢飞机的实际技术水平。 第一轮提问(基础问题) 面试官&…...

Vue 3 的核心组合式 API 函数及其完整示例、使用场景和总结表格

以下是 Vue 3 的核心组合式 API 函数及其完整示例、使用场景和总结表格&#xff1a; 1. ref 作用 创建一个响应式引用值&#xff0c;用于管理基本类型或单个值的响应式状态。 示例 <template><div><p>Count: {{ count }}</p><button click&quo…...

Kotlin学习基础知识大全(上)

文章目录 Kotlin基础知识全面解析第一章&#xff1a;Kotlin语言概述1.1 Kotlin的发展历程1.2 Kotlin的设计目标1.3 Kotlin的应用领域1.4 Kotlin与Java的比较 第二章&#xff1a;Kotlin基础语法2.1 变量与常量2.2 基本数据类型数字类型示例&#xff1a;字符和字符串示例&#xf…...

【Java面试笔记:进阶】18.什么情况下Java程序会产生死锁?如何定位、修复?

死锁(Deadlock)是指两个或多个线程因竞争资源而无限期阻塞的现象。 1. 死锁的定义与产生原因 定义:死锁是一种程序状态,多个线程或进程因循环依赖而永久处于等待状态,无法继续执行。 根据 Coffman 条件,死锁产生需同时满足以下四个必要条件: 互斥(Mutual Exclusion)…...

PS Mac Photoshop 2025 for Mac图像处理 PS 2025安装笔记

Mac分享吧 文章目录 效果一、准备工作二、开始安装1、Anticc简化版安装1.1双击运行软件&#xff0c;安装1.2 解决来源身份不明的开发者问题**此代码为打开&#xff1a;系统偏好设置 – 隐私与安全性&#xff0c;中的【任何来源】&#xff0c;如下图&#xff1a;**1.3 再次运行…...

HarmonyOS 框架基础知识

参考文档&#xff1a;HarmonyOS开发者文档 第三方库&#xff1a;OpenHarmony三方库中心仓 基础特性 Entry&#xff1a;关键装饰器 Components&#xff1a;组件 特性EntryComponent​​作用范围仅用于页面入口可定义任意可复用组件​​数量限制​​每个页面有且仅有一个无数量…...

LabVIEW实现Voronoi图绘制功能

该 LabVIEW 虚拟仪器&#xff08;VI&#xff09;借助 MathScript 节点&#xff0c;实现基于手机信号塔位置计算 Voronoi 图的功能。通过操作演示&#xff0c;能直观展示 Voronoi 图在空间划分上的应用。 各部分功能详细说明 随机地形创建部分 功能&#xff1a;根据 “Maximum a…...

centos7的环境下ollama 如何卸载

在 CentOS 7 环境下卸载 ollama&#xff0c;可以按照以下步骤操作。假设 ollama 是通过手动安装的&#xff0c;以下是卸载的详细步骤。 1. 停止所有运行中的 ollama 进程 在卸载之前&#xff0c;确保所有与 ollama 相关的进程都已停止。 查找并停止进程 ps aux | grep ollam…...

中心极限定理(CLT)习题集 · 答案与解析篇

中心极限定理(CLT)习题集 答案与解析篇 与题目篇一一对应。若有其他解法欢迎在评论区补充。 1. 概念与判断题 1.1 经典叙述 若 (X_1,X_2,\dots) i.i.d.,满足 (E[X_1]=\mu,;0<\sigma^2:=\operatorname{Var}(X_1)<\infty)。 则 [ Z_n=\frac{\sum_{k=1}^{n}(X_k-\mu)}…...

Spring Cloud Gateway配置双向SSL认证(完整指南)

本文将详细介绍如何为Spring Cloud Gateway配置双向SSL认证,包括证书生成、配置和使用。 目录结构 /my-gateway-project ├── /certs │ ├── ca.crt # 根证书 │ ├── ca.key # 根私钥 │ ├── gateway.crt # 网关证书 │ ├── …...

中间系统-SPF计算

SPF计算 isis如何计算路由&#xff1a;以自己为根构建SPF树&#xff0c;之后填充叶子。 <R1>display isis lsdb 0000.0000.0001.00-00 verbose //查看lsp的详细信息 SOURCE 0000.0000.0001.00 //源节点系统&#xff0c;用于标识产生该LSP的路由器…...

立马耀:通过阿里云 Serverless Spark 和 Milvus 构建高效向量检索系统,驱动个性化推荐业务

作者&#xff1a;厦门立马耀网络科技有限公司大数据开发工程师 陈宏毅 背景介绍 行业 蝉选是蝉妈妈出品的达人选品服务平台。蝉选秉持“陪伴达人赚到钱”的品牌使命&#xff0c;致力于洞悉达人变现需求和痛点&#xff0c;提供达人选高佣、稳变现、速响应的选品服务。 业务特…...

Diffusion inversion后的latent code与标准的高斯随机噪音不一样

可视化latents_list如下; 可视化最后一步与标准的噪声&#xff1a; 能隐约看出到最后一步还是会有“马”的形状 整个代码&#xff08;及可视化代码如下&#xff09;&#xff1a; ## 参考freeprompt(FPE)的代码 import os import torch import torch.nn as nn import torch.n…...

C语言-函数-1

以下是我初学C语言的笔记记录&#xff0c;欢迎在评论区留言补充 一&#xff0c;函数分为几类 * 函数分为两类&#xff1a; 一类是库函数&#xff1b;一类是自定义函数 * 库函数&#xff1a; 系统自己带的&#xff0c;在使用时候&#xff0c;要用到头文件&#xff1b; 查询库函…...

AXOP34032: 40V/40µA 轨到轨输入输出双通道运算放大器

AXOP34032是一款通用型高压低功耗双通道运算放大器&#xff0c;产品的工作电压为2.5V至40V&#xff0c;具有1.2MHz的带宽&#xff0c;压摆率为 0.7V/μs&#xff0c;单路静态电流为40A。该产品非常适合需要较高耐压的低功耗应用。 产品可选关断功能(AXOP34032S)。 主要特性 2…...

HTML5 服务器发送事件 (Server-Sent Events):实现网页自动获取服务器更新

一、引言 在现代 Web 应用开发中,实时性和动态交互性变得越来越重要。HTML5 引入的服务器发送事件(Server-Sent Events,简称 SSE)为网页获取来自服务器的实时更新提供了一种简单而有效的解决方案。与传统方式中网页需主动询问服务器是否有更新不同,SSE 能够让更新自动推送…...

如何创建和使用 Hive 视图

一、Hive 视图的基本概念 Hive 视图是一种虚拟表,其内容由查询语句定义,本身不存储实际数据。当查询视图时,Hive 会动态执行视图定义中的查询逻辑并返回结果。视图的核心作用是简化复杂查询、提供数据抽象和实现权限控制。例如,通过视图可以隐藏底层表的复杂关联关系,或限…...

快速体验tftp文件传输(嵌入式设备)

一、参考资料 Linux tftp 命令 | 菜鸟教程 Ubuntu最新版本(Ubuntu22.04LTS)安装Tftp服务及其使用教程-CSDN博客 Windows下的Tftpd32(Tftpd64)软件下载和使用教程-集成了Tftp服务器、客户端-CSDN博客 tftpd32 tftpd64文件传输安装和使用教程【图文并茂】-CSDN博客 二、快速…...

数据库进阶之MySQL 程序

1.目标 1> 了解mysqlId服务端程序 2> 掌握mysql客户端程序的使用 3> 了解工具包中的其他程序 2. MySQL程序简介 本章介绍 MySQL 命令⾏程序以及在运⾏这些程序时指定选项的⼀般语法(如:mysql -uroot -p)。 对常⽤程序进⾏详细的讲解(实用工具的使用方法)&#xf…...

细说STM32单片机FreeRTOS信号量和互斥量及二值信号量的应用实例

目录 一、信号量和互斥量概述 1、二值信号量 2、计数信号量 3、互斥量 4、递归互斥量 5、相关函数概述 &#xff08;1&#xff09; 负责创建的函数 &#xff08;2&#xff09; 负责释放和获取的函数 &#xff08;3&#xff09;负责返回数据的函数 二、二值信号量使用…...

云原生之认识DDD

一、DDD是什么? 领域驱动设计(DDD) 做为一种软件工程的方法论,它可以帮助我们设计高质量的软件,或者说任何工程的设计都需要方法论,不论是城市设计、建筑设计、室内设计。 比如没有方法论的情况下楼是可以盖起来的,或许整个楼道和窗户上挂满了电话线、闭路线、电线?下水…...

Kingbase 数据库物理备份与恢复操作手册

版本环境&#xff1a;KingbaseES V8R6 适用对象&#xff1a;DBA / 运维工程师 / 技术支持人员 目标用途&#xff1a;生产环境灾备保障、全量迁移、异地容灾恢复 一、物理备份操作流程 物理备份是指直接对数据库实例的物理文件进行复制&#xff0c;具备完整性强、恢复速度快等特…...

高等数学同步测试卷 同济7版 试卷部分 上 做题记录 第四章 不定积分同步测试卷 A卷

第四章 不定积分同步测试卷 A卷 一、单项选择题(本大题共5小题&#xff0c;每小题3分&#xff0c;总计15分) 1. 2. 3. 4. 5. 二、填空题(本大题共5小题,每小题3分,总计15 分) 6. 7. 8. 9. 10. 三、求解下列各题(本大题共5小题,每小题6分,总计30…...

【刷题Day25】用户态和内核态、Reactor、虚拟内存(浅)

什么是用户态和内核态&#xff1f; 用户态&#xff08;User Mode&#xff09;和内核态&#xff08;Kernel Mode&#xff09;是操作系统中的两种运行模式&#xff0c;用于区分应用程序与操作系统内核的操作权限。 两者区别在于权限级别&#xff1a; 用户态&#xff1a;应用程…...

使用Qt Quick Controls创建自定义日历组件

目录 引言相关阅读1. DayOfWeekRow2. MonthGrid3. WeekNumberColumn 项目结构及实现工程结构图代码实现及解析1. 组件封装2. 主界面实现 运行效果 总结下载链接 引言 Qt6 Quick框架提供了一套丰富的日历相关组件&#xff0c;包括 MonthGrid、DayOfWeekRow 和 WeekNumberColumn…...

Java 富文本转word

前言&#xff1a; 本文的目的是将传入的富文本内容(html标签&#xff0c;图片)并且分页导出为word文档。 所使用的为docx4j 一、依赖导入 <!-- 富文本转word --><dependency><groupId>org.docx4j</groupId><artifactId>docx4j</artifactId&…...

基于 Spring Boot 瑞吉外卖系统开发(七)

基于 Spring Boot 瑞吉外卖系统开发&#xff08;七&#xff09; 新增菜品页面 菜品管理页面提供了一个“新增菜品”按钮&#xff0c;单击该按钮时&#xff0c;会打开新增菜品页面。 菜品分类列表 首先要获取分类列表数据。 请求路径/category/list&#xff0c;请求方法GE…...

react 子组件暴露,父组件接收

// Child.jsx import React, { forwardRef, useImperativeHandle, useState } from react; import { Form, Input } from antd;const Child forwardRef((props, ref) > {const [form] Form.useForm();const [customState, setCustomState] useState(默认值);useImperativ…...

如何在Spring Boot中配置自定义端口运行应用程序

Spring Boot 应用程序默认在端口 8080 上运行嵌入式 Web 服务器&#xff08;如 Tomcat、Jetty 或 Undertow&#xff09;。然而&#xff0c;在开发、测试或生产环境中&#xff0c;开发者可能需要将应用程序配置为在自定义端口上运行&#xff0c;例如避免端口冲突、适配微服务架构…...

5.第五章:数据分类的方法论

文章目录 5.1 传统分类方法5.1.1 基于规则的分类方法5.1.2 基于统计的分类方法5.1.3 传统分类方法的局限性 5.2 现代分类技术5.2.1 神经网络分类模型5.2.2 深度学习分类方法5.2.3 现代分类技术的优势 5.3 创新分类方法5.3.1 小样本学习方法5.3.2 零样本学习方法5.3.3 主动学习方…...

如何在 Unity 中导入 gltf /glb 文件

遗憾的是&#xff0c;默认情况下&#xff0c;Unity 无法导入 gltf 文件。 我们有 个好消息要告诉你 gltf&#xff0c;有一种方法可以将 glb 文件格式导入 Unity&#xff01; 看完这篇文章后&#xff0c;让我们将 “gltf&#xff0c; glb” 文件放入 Unity 中&#xff0c;并将其…...

Docker部署一款开源的极简服务器监控工具Ward内网穿透远程使用

文章目录 前言1.关于Ward2.Docker部署3.简单使用ward4.安装cpolar内网穿透5. 配置ward公网地址6. 配置固定公网地址总结 前言 各位小伙伴们&#xff0c;你们是不是也遇到过这样的情况&#xff1a;每次打开服务器管理界面&#xff0c;密密麻麻的数据和图表看得你眼花缭乱&#…...

Day11(回溯法)——LeetCode79.单词搜索

1 前言 今天主要刷了一道热题榜中回溯法的题&#xff0c;现在的计划是先刷热题榜专题吧&#xff0c;感觉还是这样见效比较快。因此本文主要介绍LeetCode79。 2 LeetCode79.单词搜索(LeetCode79) OK题目描述及相关示例如下&#xff1a; 2.1 题目分析解决及优化 感觉回溯的方…...

数据结构-图

一、图的定义与基本术语 图&#xff08;Graph&#xff09;是一种非线性数据结构&#xff0c;由顶点&#xff08;Vertex&#xff09;和边&#xff08;Edge&#xff09;组成。它包含以下基本术语&#xff1a; 顶点&#xff08;Vertex&#xff09; &#xff1a;是图中的数据元素。…...

数据结构-选择排序(Python)

目录 选择排序算法思想 选择排序算法步骤 选择排序代码实现 选择排序算法分析 选择排序算法思想 选择排序&#xff08;Selection Sort&#xff09;基本思想&#xff1a; 将数组分为两个区间&#xff1a;左侧为已排序区间&#xff0c;右侧为未排序区间。每趟从未排序区间中…...

[特殊字符] 分布式定时任务调度实战:XXL-JOB工作原理与路由策略详解

在微服务架构中&#xff0c;定时任务往往面临多实例重复执行、任务冲突等挑战。为了解决这一问题&#xff0c;企业级调度框架 XXL-JOB 提供了强大的任务统一调度与执行机制&#xff0c;特别适合在分布式系统中使用。 本文将从 XXL-JOB 的核心架构入手&#xff0c;详细讲解其调…...

【前端】基于 Promise 的 HTTP 客户端工具Axios 详解

Axios 详解 1. 简介 定义&#xff1a;Axios 是一个基于 Promise 的 HTTP 客户端&#xff0c;用于浏览器和 Node.js 环境&#xff0c;简化 HTTP 请求的发送和处理。核心特点&#xff1a; 支持 Promise API&#xff0c;可链式调用。自动转换 JSON 数据。支持请求/响应拦截。可取…...

React Native 安卓端 android Image 播放gif webp 动态图

React Native 安卓端 android Image 播放gif webp 动态图 RN项目是0.78.2 React是19.0 基本介绍 Image 是 React Native 中用于显示各种类型图片的核心组件&#xff0c;支持显示网络图片、静态资源、本地图片以及 base64 编码的图片。在 Android 端&#xff0c;Image 组件还可…...

【mysql】windows mysql命令

终端配置环境变量&#xff0c;找到mysql地址放入环境变量-系统变量中 例如&#xff1a; C:\Program Files\MySQL\MySQL Server 8.0\bin win键R输入 sysdm.cpl 快速打开电脑变量-高级-环境变量 连接命令 mysql -u root -p 查看所有数据库 show databases; 选中数据库 …...

uniappx 打包配置32位64位x86安装包

{"app": {"distribute": {"android": {"abiFilters": ["armeabi-v7a","arm64-v8a","x86","x86_64"]}}} }...

【C++ 类和数据抽象】static 类成员

目录 一、static 类成员的基本概念 1.1 静态成员的定义 1.2 静态数据成员 1.3 静态成员函数 1.4 内存布局 1.5 访问控制 1.6 性能分析 1.7 C标准演进 二、static 类成员的特点 2.1 共享性 2.2 不依赖于对象 2.3 无 this 指针 三、静态成员的初始化规则 3.1 初始化…...

深入了解递归、堆与栈:C#中的内存管理与函数调用

在编程中&#xff0c;理解如何有效地管理内存以及如何控制程序的执行流程是每个开发者必须掌握的基本概念。C#作为一种高级编程语言&#xff0c;其内存管理和函数调用机制包括递归、堆与栈。本文将详细讲解这三者的工作原理、用途以及它们在C#中的实现和应用。 1. 递归 (Recur…...

声音分离人声和配乐-从头设计数字生命第5课, demucs——仙盟创梦IDE

demucs 伴奏提取人声分离技术具有多方面的重大意义&#xff0c;主要体现在以下几个领域&#xff1a; 音乐创作与制作 创作便利性提升&#xff1a;创作者能轻易获取无伴奏的人声轨道&#xff0c;便于对人声进行单独处理&#xff0c;如调整音准、音色、添加特效等&#xff0c…...

基于PHP+Uniapp的互联网医院源码:电子处方功能落地方案

随着“互联网医疗”政策红利持续释放&#xff0c;互联网医院已成为推动医疗数字化转型的重要方向。在这一趋势下&#xff0c;电子处方功能模块作为核心环节&#xff0c;不仅直接关系到线上问诊闭环的实现&#xff0c;也成为系统开发中技术难度较高、业务逻辑最为复杂的一部分。…...

Linux 基础命令入门指南

在 Linux 系统中&#xff0c;命令行是高效操作和管理系统的核心方式。掌握一些基础命令&#xff0c;能够让我们更便捷地完成文件操作、系统监控、文本处理等任务。本文将为大家介绍常用的 Linux 基础命令&#xff0c;帮助新手快速入门。 一、文件和目录操作命令 1. ls&#x…...

(done) 吴恩达版提示词工程 3. 迭代 (控制输出长度、提取特定细节、输出 HTML 格式)

url: https://www.bilibili.com/video/BV1Z14y1Z7LJ?spm_id_from333.788.videopod.episodes&vd_source7a1a0bc74158c6993c7355c5490fc600&p3 别人的笔记 url: https://zhuanlan.zhihu.com/p/626966526 3. 迭代&#xff08;Iterative&#xff09; 当我使用大语言模型…...