【笔记】自动驾驶预测与决策规划_Part7_数据驱动的预测方法

文章目录

  • 0. 前言
  • 1. 多模态传感器的编码方式
    • 1.1 栅格化表示
    • 1.2 向量化表示 Vectornet
    • 1.3 基于点云或者多模态输入的预测
    • 1.4 基于Transformer的方法
  • 2. 网络输出的表达形式
    • 2.1 多模态轨迹回归
    • 2.2 轨迹分类
    • 2.3 轨迹回归+轨迹分类
    • 2.4 目标点预测
  • 3.场景级别的预测和决策
    • 3.1 论文:SCENE TRANSFORMER: A UNIFIED ARCHITECTURE FOR PREDICTING MULTIPLE AGENT TRAJECTORIES
    • 3.2 论文:PiP: Planning-informed Trajectory Prediction for Autonomous Driving
  • 4.长时预测
    • 4.1 论文: KEMP: Keyframe-Based Hierarchical End-to-End Deep Model for Long- Term Trajectory Prediction
    • 4.2 论文: LOKI: Long Term and Key Intentions for Trajectory Prediction
  • 5.预测的评价指标
  • 6.参考

0. 前言

本文主要记录课程《自动驾驶预测与决策技术》的学习过程,难免会有很多纰漏,感谢指正。
课程链接:https://www.shenlanxueyuan.com/my/course/700
相关笔记链接:
Part1_自动驾驶决策规划简介
Part2_基于模型的预测方法
Part3_路径与轨迹规划
Part4_时空联合规划
Part5_决策过程
Part6_不确定性感知的决策过程

该章节主要以论文讲解为主,未仔细阅读论文原文,仅借助PPT与ChatGpt进行资料整理与记录,对应的论文链接均已附上链接。


1. 多模态传感器的编码方式

请添加图片描述

1.1 栅格化表示

多模态轨迹预测

参考文献 :Multimodal Trajectory Predictions for Autonomous Driving using Deep Convolutional Networks

在自动驾驶中,准确预测其他道路使用者(例如车辆、行人)的未来运动轨迹是确保安全的关键。然而,真实世界中的交通环境复杂多变,同一个场景下可能有多个合理的未来轨迹(例如,车辆可能转向、加速或减速),这导致预测变得困难。由于存在多种可能的未来轨迹,该问题被称为“多模态”轨迹预测问题。传统的预测方法通常会输出一个单一的预测结果,而忽略了其他潜在的合理轨迹。为了应对这种多样性,论文提出了一种基于深度卷积神经网络的多模态轨迹预测方法。文中介绍了一种利用卷积神经网络的方法来学习场景信息和运动特征,从而预测多个可能的未来轨迹。模型通过分析输入的时空数据(例如,过去的轨迹、地图信息等),生成多个合理的轨迹分布。这种方法允许模型根据不同的上下文生成不同的未来轨迹预测。
请添加图片描述


请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述


请添加图片描述

不同模式选择方法对路径预测的影响,特别是在车辆通过交叉路口时。

  • 绿色轨迹:代表实际的车辆行驶路径,即地面真实轨迹(ground truth)。
  • 蓝色轨迹:表示预测的几种可能模式(modes),每条蓝色线代表一种不同的预测轨迹。
  • 红色虚线:大概是表示某种特定评估准则,如预测轨迹与实际路径的差距。

该图强调了两种不同的路径选择标准:

  1. 使用位移(displacement)进行模式选择:当采用位移差距作为准则时,预测模型选择了右转的蓝色轨迹,这与绿色的真实路径不完全匹配。

  2. 使用角度(angle)进行模式选择:而当使用角度差异作为选择标准时,预测模型选择了直行的蓝色轨迹,这与绿色真实路径更接近。

总结:该图说明,不同的模式选择方法会影响自动驾驶系统的路径预测结果。通过位移选择时,可能会优先选择离当前位移最近的路径(右转),但可能会偏离实际路径;而通过角度选择时,可能更符合车辆行驶方向(选择直行)。这表明在不同情境下,评估路径预测的标准需要根据具体需求进行调整。


请添加图片描述

1.2 向量化表示 Vectornet

参考文献:Vectornet: Encoding hd maps and agent dynamics from vectorized representation

其他参考链接: 论文笔记之:VectorNet

在这里插入图片描述

在这里插入图片描述


地图和轨迹表示 (Input Vectors)

  • 输入向量包括交通环境中的不同元素:

    • 道路元素(如车道线、斑马线)被向量化,每个向量可能表示几何特征(如位置、方向等)。
    • 交通参与者(Agents),例如车辆或行人,它们的历史运动轨迹也被向量化,作为模型输入的一部分。
  • 每个元素(如车道线、代理轨迹)被分解为一系列的点,这些点通过向量序列来描述其几何形状和运动状态。
    在这里插入图片描述


折线子图(Polyline Subgraphs)

  • 每条折线(如车道、agent轨迹)会被分割为子图,称为折线子图(Polyline Subgraphs),每个子图内部的点通过局部图神经网络进行处理。

  • 每个折线子图都会提取折线级别的特征,这有助于捕捉局部结构信息,如车道的走向或代理的运动模式。

  • 每条折线经过局部特征提取后会生成与之对应的特征向量,代表该折线的几何和运动信息。
    在这里插入图片描述


全局图的高阶交互(Global Interaction Graph)

  • 这些局部折线的特征被传递到一个全局交互图中(Global Interaction Graph),用于建模高阶交互。这个图是一个全连接的图,将所有的折线特征节点互相连接,帮助模型捕捉更高层次的场景交互信息。
  • 在自动驾驶场景中,不同的道路结构和交通代理之间有复杂的相互作用。通过全局交互图,VectorNet可以理解这些元素之间的相互影响。例如,车辆的轨迹可能受到周围车道结构的影响,反之亦然。
    在这里插入图片描述

监督和预测(Supervision & Prediction)

  • 通过全局图神经网络处理后的特征用于两个任务:

    1. 地图补全(Map Completion):模型可以在部分地图信息缺失的情况下,通过推断来完成场景中的地图信息。
    2. 轨迹预测(Trajectory Prediction):基于代理特征,模型可以预测未来的运动轨迹。
  • 监督信号包括两个主要部分:一是对动态障碍物未来轨迹的预测,二是对遮挡的节点特征进行预测,即在某些特征被掩盖的情况下,推测这些缺失的信息。

在这里插入图片描述

1.3 基于点云或者多模态输入的预测


参考文献: PnPNet: End-to-End Perception and Prediction With Tracking in the Loop

在自动驾驶场景中,感知(物体检测)、跟踪(目标跟踪)、以及预测(未来轨迹预测)通常是通过不同的模块依次完成的。然而,这种分离的处理流程会带来时间延迟、数据不一致,以及在多模态场景下相互间信息传递的不足。为了应对这些挑战,本文提出了PnPNet,一种端到端的方法,将感知、跟踪和预测集成在一个网络中,使得三者之间能够互相反馈和协同优化。PnPNet通过一个包含循环跟踪模块的架构,在实现高效感知的同时,提升了目标跟踪的鲁棒性,并改善了预测的精度。实验结果表明,该方法在多个自动驾驶数据集上达到了较强的性能。

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

1.4 基于Transformer的方法


参考文献: Wayformer: Motion Forecasting via Simple & Efficient Attention Networks

其他参考链接:

  • 【轨迹预测系列】【笔记】Wayformer: Motion Forecasting via Simple & Efficient Attention Networks
  • Wayformer: 一个实现运动预测简单有效的注意网络

在这里插入图片描述


在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

2. 网络输出的表达形式

2.1 多模态轨迹回归

在这里插入图片描述

2.2 轨迹分类

在这里插入图片描述
在这里插入图片描述

2.3 轨迹回归+轨迹分类

参考文献: MultiPath: Multiple Probabilistic Anchor Trajectory Hypotheses for Behavior Prediction
在这里插入图片描述在这里插入图片描述

2.4 目标点预测


参考文献: MultiPath: Multiple Probabilistic Anchor Trajectory Hypotheses for Behavior Prediction
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

3.场景级别的预测和决策

3.1 论文:SCENE TRANSFORMER: A UNIFIED ARCHITECTURE FOR PREDICTING MULTIPLE AGENT TRAJECTORIES


SCENE TRANSFORMER: A UNIFIED ARCHITECTURE FOR PREDICTING MULTIPLE AGENT TRAJECTORIES
git:https://github.com/Chen-Albert-FENG/SceneTransformer
相关材料链接:
https://zhuanlan.zhihu.com/p/493484568
https://zhuanlan.zhihu.com/p/716420978

在这里插入图片描述


主要工作:
在这里插入图片描述

  1. 边际预测的局限性
    独立预测的局限性:在边际预测中,车辆轨迹被独立预测,导致各个车辆的行为之间没有考虑互动关系,容易导致轨迹之间的冲突。

  2. 场景级联合预测的必要性
    解决互动问题:联合预测方法能够同时考虑多辆车的轨迹和行为,将它们作为一个整体场景进行建模,从而更好地捕捉交通参与者之间的动态关系。这种方式可以有效避免轨迹冲突,并反映交通参与者之间的互动。

在这里插入图片描述在这里插入图片描述在这里插入图片描述

3.2 论文:PiP: Planning-informed Trajectory Prediction for Autonomous Driving


论文链接:PiP: Planning-informed Trajectory Prediction for Autonomous Driving

相关资料链接:https://zhuanlan.zhihu.com/p/704238650


在这里插入图片描述

在这里插入图片描述

Planning-Informed Trajectory Prediction (PiP) 简介

1. 背景和传统方法的局限性

  • 传统方法(Traditional Pipeline)
    • 分离的预测与规划:预测模块和规划模块分离运行。首先,预测模块生成其他交通参与者的轨迹预测,然后规划模块基于这些预测输出最佳自车轨迹。
    • 问题
      • 缺乏互动:预测的轨迹通常不考虑自车的行为,从而无法很好地捕捉复杂场景中多主体的动态交互。
      • 信息割裂:预测输出只是静态提供,不能动态适应规划模块的需求。

2. Planning-Informed Prediction (PiP) 的核心思想

  • 方法简介
    PiP 方法将预测与规划过程紧密结合,实现预测与自车规划的交互式优化。具体特点如下:

    • 自车的规划轨迹(Ego Plan)会反过来影响预测模块,帮助预测其他交通参与者可能的轨迹。
    • 联合评估所有可能轨迹,结合动态交互关系找到最优解决方案。
  • 实现方式

    • 反馈机制:自车规划生成的候选轨迹输入到预测模块,预测模块基于这些轨迹调整对其他交通参与者行为的预测。
    • 联合优化:预测模块输出多模态轨迹(带概率),规划模块评估这些轨迹与自车轨迹的整体成本,选择最优解。

3. 关键模块分析

  1. Trajectory Generator(轨迹生成器)

    • 生成自车的候选轨迹,考虑速度、加速度、安全性等因素。
    • 自车轨迹直接影响预测模块,帮助生成更贴近实际的交通场景。
  2. Prediction(预测模块)

    • 输出其他交通参与者的多模态轨迹,结合自车规划轨迹生成更合理的预测。
    • 不同于传统方法,预测结果会动态适应自车的行为。
  3. Evaluator(评估模块)

    • 综合考虑所有参与者轨迹和多种成本函数(如速度、加速度、碰撞风险等),选择最优的自车轨迹。

4. 优势

  1. 预测和规划的深度耦合:通过引入自车规划轨迹,预测模块能更准确地捕捉交通参与者与自车的互动关系。
  2. 提高决策的安全性与效率:PiP 方法生成的轨迹更贴合实际交通场景,避免因预测与规划割裂而导致的潜在冲突。
  3. 鲁棒性增强:联合评估的方式显著提升了系统对复杂动态场景的适应能力。

4.长时预测

长时预测难点:

  • 环境具有动态性、随机性、交互性、
  • 观测帧数量有限
  • 轨迹可能在固定的起始点和目标点之间显著变化
  • 输出一条轨迹or输出所有可能的轨迹

4.1 论文: KEMP: Keyframe-Based Hierarchical End-to-End Deep Model for Long- Term Trajectory Prediction


论文链接: KEMP: Keyframe-Based Hierarchical End-to-End Deep Model for Long- Term Trajectory Prediction

在这里插入图片描述


主要工作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

KEMP(Keyframe-Based Model)是一种针对长时交通参与者轨迹预测的问题设计的层次化深度学习模型,旨在捕捉长时间跨度的关键帧信息,并有效结合全局与局部动态进行轨迹推断。


1. 方法核心思想

  • 关键帧预测
    通过识别交通参与者轨迹的关键帧(Keyframes),将长时轨迹划分为若干关键点之间的子轨迹,降低复杂性并提高预测效率。
  • 层次化结构
    模型通过多层次预测流程(从全局到局部),结合多上下文信息,逐步生成完整的长时轨迹。
  • 端到端设计
    KEMP 模型以端到端的方式建模输入(道路、交通参与者等)到输出(预测轨迹)的映射,减少人工设计的特征工程。

2. 模块结构与功能

(1) Feature Encoders(特征编码器)

  • 处理 道路拓扑(Roadgraph Polylines)、交通参与者状态(Agent States)和交互信息(Agent Interactions),将它们编码成高维特征表示。
  • 利用多上下文加权编码器(Multi-Context Gating Encoders)来结合多模态信息,增强对场景动态的理解。

(2) Keyframe Predictor(关键帧预测器)

  • 预测轨迹的关键点位置(如转弯、加速或减速的关键节点)。
  • 关键帧的选择能够有效压缩轨迹预测问题的时间复杂度,确保全局合理性。

(3) Whole Trajectory Predictor(全轨迹预测器)

  • 在关键帧的基础上进行全局轨迹拟合,补全从起点到终点的连续轨迹。
  • 通过结合全局信息(如道路限制、动态交互)保证轨迹的整体一致性。

(4) Predictor(局部轨迹预测器)

  • 局部化生成关键帧之间的具体轨迹,捕捉短时间内的细粒度动态变化。
  • 利用反馈信号(Control Signal)对生成的轨迹进行微调,使其更贴合场景实际。

3. 模型特点与优势
(1) 面向长时预测

  • KEMP 模型通过分解长时轨迹为关键帧,避免了传统方法在长时预测中面临的累积误差问题。
  • 对长时轨迹的全局规划能力增强,同时能够保留局部的动态精确性。

(2) 层次化的预测结构

  • 自顶向下的预测流程(从全局关键帧到局部轨迹)确保了预测结果既符合场景约束,又兼具动态交互的合理性。

(3) 多模态信息融合

  • 模型充分利用道路几何信息、交通参与者动态和交互关系,实现对复杂交通场景的全面理解。

(4) 端到端的高效性

  • 相较于传统分离式方法,KEMP 的端到端设计减少了模块之间的误差传播问题,同时提升了训练和推理的效率。

4.2 论文: LOKI: Long Term and Key Intentions for Trajectory Prediction


论文链接:LOKI: Long Term and Key Intentions for Trajectory Prediction

在这里插入图片描述


论文主要工作:

LOKI 是一种专注于长时预测的轨迹推断方法,核心思想是通过捕捉长期目标(Long-term Goal)和关键意图(Key Intentions),结合场景上下文和动态交互关系,为交通参与者生成合理的未来轨迹。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


  • LOKI 通过回答以下关键问题来应对这些挑战:
    • “Where to predict?”:预测点在哪里(如最终目标位置)。
    • “How does self-motion influence prediction?”:如何结合主体自身的运动状态估计长期目标。
    • “What are the interactions?”:如何建模参与者之间的交互。
    • “How does the environment affect prediction?”:环境对轨迹的影响如何融入建模。

LOKI 的方法结构可以分为以下几个关键模块:

(1) Observation Encoder(观测编码器)

  • 输入交通参与者的动态信息(如轨迹历史、状态)以及场景上下文(如地图、障碍物位置)。
  • 将这些信息嵌入到高维特征空间,为后续模块提供输入。

(2) Long-term Goal Proposal(长期目标生成)

  • 包括一个编码器-解码器结构(Encoder-Decoder),负责估计交通参与者的长期目标 ( G )。
    • Encoder:提取历史轨迹和状态信息。
    • Decoder:结合环境和交互关系,生成可能的长期目标。

(3) Scene Graph and Intention Prediction(场景图和意图预测)

  • 构建场景图(Scene Graph),捕捉不同交通参与者(如车辆、行人)之间的交互。
  • 推断不同参与者的关键意图:
    • 车辆意图:如转弯、加速、停车。
    • 行人意图:如等待、穿越。

(4) Trajectory Decoder(轨迹解码器)

  • 根据长期目标 ( G ) 和关键意图 ( I P ) ( I^P ) (IP),生成完整的未来轨迹。
  • 解码过程结合全局环境信息和局部动态约束,确保预测轨迹的合理性。

5.预测的评价指标

在这里插入图片描述

6.参考

  • 《自动驾驶预测与决策技术》
  • Part1_自动驾驶决策规划简介
  • Part2_基于模型的预测方法
  • Part3_路径与轨迹规划
  • Part4_时空联合规划
  • Part5_决策过程
  • Part6_不确定性感知的决策过程

参考文献:
Multimodal Trajectory Predictions for Autonomous Driving using Deep Convolutional Networks
Vectornet: Encoding hd maps and agent dynamics from vectorized representation
PnPNet: End-to-End Perception and Prediction With Tracking in the Loop
Wayformer: Motion Forecasting via Simple & Efficient Attention Networks
MultiPath: Multiple Probabilistic Anchor Trajectory Hypotheses for Behavior Prediction
TNT: Target-driveN Trajectory Prediction https://arxiv.org/pdf/2008.08294
SCENE TRANSFORMER: A UNIFIED ARCHITECTURE FOR PREDICTING MULTIPLE AGENT TRAJECTORIES
PiP: Planning-informed Trajectory Prediction for Autonomous Driving
KEMP: Keyframe-Based Hierarchical End-to-End Deep Model for Long- Term Trajectory Prediction
LOKI: Long Term and Key Intentions for Trajectory Prediction

  • 【轨迹预测系列】【笔记】Wayformer: Motion Forecasting via Simple & Efficient Attention Networks
  • Wayformer: 一个实现运动预测简单有效的注意网络

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

回溯法经典难题解析

本文将通过几个经典的回溯问题,展示回溯算法的应用及其在解决问题时的核心思想和技巧。这些问题包括全排列、全排列II、N皇后以及数独问题,本文将分别介绍每个问题的思路与实现。 46. 全排列 给定一个不含重复数字的数组 nums ,返回其 所有…

无线图传下的低延迟视频传输播放技术探讨

技术背景 无线图传技术即无线图像传输技术,是指不用布线(线缆)利用无线电波来传输图像数据的技术。 一、工作原理 无线图传技术主要涉及图像采集、编码、调制、发射、接收、解调、解码和图像显示等环节。 图像采集:通过摄像头…

软件测试面试之常规问题

1.描述一下测试过程 类似题目:测试的生命周期 思路:这是一个“范围”很大的题目,而且回答时间一般在3分钟之内,不可能非常详细的描述整个过程,因此答题的思路要从整体结构入手,不要过细。为了保证答案的准确性,可以引…

C++从零到满绩——类和对象(中)

目录 1>>前言 2>>构造函数(我称之为初始化函数) 3>>析构函数(我称之为销毁函数) 4>>拷贝构造函数(我称之为复制函数) 5>>运算符重载 5.2>>赋值运算符重载 ​编辑…

内网渗透横向移动1

1.信息收集 (1)判断域控 shell net time /domain shell ping OWA2010CN-God.god.org (2)主机探测 浏览探测->网络探测 主机列表显示: (3)域用户收集: shell net user /domain…

Edify 3D: Scalable High-Quality 3D Asset Generation 论文解读

目录 一、概述 二、相关工作 1、三维资产生成 2、多视图下的三维重建 3、纹理和材质生成 三、Edify 3D 1、文本生成多视角图像的扩散模型 2、文本和多视角图像生成法线图像的ControlNet 3、重建与渲染模型 4、多视角高分辨率RGB图像生成 四、训练 1、训练过程 2、…

微软正在测试 Windows 11 对第三方密钥的支持

微软目前正在测试 WebAuthn API 更新,该更新增加了对使用第三方密钥提供商进行 Windows 11 无密码身份验证的支持。 密钥使用生物特征认证,例如指纹和面部识别,提供比传统密码更安全、更方便的替代方案,从而显著降低数据泄露风险…

词云图大师(WordCloudMaster): 探索创意无限的词云世界!

在信息化时代,如何以一种新颖且富有创意的方式表达数据、文字或想法?答案是词云图!而词云图大师(WordCloudMaster),正是您的绝佳选择。 无论是个人创意项目,还是专业工作中的数据可视化,词云图大师都能以强…

pycharm使用debug的时候遇到断点不停的问题

1.首先尝试在程序最开头打断点,检查是否能停下,如果可以,看第二步 2.尝试在你打期望停下的代码附近print("1111111")看看是否输出了这个字符串,验证程序确实走到这一步了 3.如果能走到那一步,但是依然没有…

Epipolar-Free 3D Gaussian Splatting for Generalizable Novel View Synthesis 论文解读

目录 一、概述 二、相关工作 1、单场景3DGS 2、跨场景生成3DGS 3、几何方法解决3D任务 三、eFreeSplat 1、预训练跨视角模块 2、无外极线跨视角交互感知模块 3、迭代跨视角高斯对齐 4、高斯参数预测 一、概述 该论文设计了一种不依赖于极线约束的情况实现可推广的新视…

c++视频图像处理

打开视频或摄像头 打开指定视频 /*VideoCapture(const String &filename, apiPreference);filename:读取的视频或者图像序列的名称apiPreference:读取数据时设置的属性*/ VideoCapture video; //定义一个空的视频对象 video.open("H:/BaiduNetdiskDownlo…

青少年强网杯线上ctf-crypto-wp

目录 AliceAES Classics AliceAES 进入环境,给一个key值和一个iv值 意思是,用这两个值AES编码‘Hello,Bob!’,然后把结果输入进去 把key值和iv值带入解得 然后得出flag Classics 题目是下面这个 根据他解码的顺序,反着写出编码顺序 一开…

工具使用_docker容器_crossbuild

1. 工具简介 2. 工具使用 拉取 multiarch/crossbuild 镜像&#xff1a; docker pull multiarch/crossbuild 创建工作目录和示例代码&#xff1a; mkdir -p ~/crossbuild-test cd ~/crossbuild-test 创建 helloworld.c &#xff1a; #include <stdio.h>int main() …

【Linux系统】—— 基本指令(三)

【Linux系统】—— 基本指令&#xff08;三&#xff09; 1 一切皆文件2 重定向操作2.1 初始重定向2.2 重定向的妙用2.3 追加重定向2.4 输入重定向2.5 一切皆文件与重定向结合 3 Linux 中的文件类型4 日志5 「more」命令6 「less」命令7 「head」与「tail」7.1 查看文件开头和结…

搜索引擎中广泛使用的文档排序算法——BM25(Best Matching 25)

在搜索场景中&#xff0c;BM25能计算每个文档与查询的匹配度&#xff0c;从中找出最相关的文档&#xff0c;并按相关性高低排序展示。 要理解BM25&#xff0c;需要掌握以下几个关键概念&#xff1a; 1. 词频&#xff08;Term Frequency, TF&#xff09;&#xff1a;某关键词在文…

Jupyter Notebook的安装和配置提示功能

Python开发环境搭建conda管理环境-CSDN博客 安装anaconda和对接到编译器的教程可以看上面这一篇 Jupyter Notebook是一种交互式计算环境&#xff0c;它允许用户在单个文档中编写和执行代码、方程、可视化和文本。与其他编译器相比&#xff0c;Jupyter Notebook的突出点在于其交…

Oracle SQL*Plus中的SET VERIFY

在 Oracle SQL*Plus 中&#xff0c;SET VERIFY ON 和 SET VERIFY OFF 是两个用于控制命令执行前后显示变量值的命令。这些命令主要用于调试和验证 SQL 脚本中的变量替换情况。 一、参数说明 1.1 SET VERIFY ON 作用&#xff1a;启用变量替换的验证功能。当启用时&#xff0c;S…

【C】错误的变量定义导致sprintf()‌输出错误

问题描述 刚刚写一个用AT指令透传相关的函数&#xff0c;需要用到sprintf()‌拼接字符串。 结果发现sprintf()‌拼接出来的内容是错误的&#xff0c;简化后的代码如下&#xff1a; const char AT_CIPSEND_FIX_LENGTH_HEADER[11] "ATCIPSEND"; // 错误的&#xff0…

【PHP】部署和发布PHP网站到IIS服务器

欢迎来到《小5讲堂》 这是《PHP》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解。 温馨提示&#xff1a;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 目录 前言安装PHP稳定版本线程安全版解压使用 PHP配置配置文件扩展文件路径…

Docker安装RabbitMq详细教程

1.1通过Docker pull RabbitMq docker pull rabbitmq 1.2 获取镜像 docker images 注&#xff1a;执行1.3之前请使用以下命令创建docker网络 docker network create tm 1.3运行命令启动参数 docker run \-e RABBITMQ_DEFAULT_USERrabbitmq \-e RABBITMQ_DEFAULT_PASSrabbitm…