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

UA-Track:不确定性感知端到端3D多目标跟踪

论文地址:https://arxiv.org/pdf/2406.02147
主页:https://liautoad.github.io/ua-track-website/

3D多目标跟踪(MOT)在自动驾驶感知中起着至关重要的作用。最近基于端到端查询的跟踪器可以同时检测和跟踪对象,这在3D MOT任务中显示出巨大的潜力。然而,现有的方法忽略了不确定性问题,即对被跟踪对象的状态和位置缺乏精确的信心。在相机观察过程中,由于各种因素,特别是遮挡和目标物体的小尺寸,会产生不确定性,导致对物体的位置、标签和身份的估计不准确。为此,我们提出了一种不确定性感知的3D MOT框架UA Track,从多个方面解决了不确定性问题。具体来说,作者首先引入了一种不确定性感知概率解码器,以捕捉具有概率注意力的对象预测中的不确定性。其次,作者提出了一种不确定性引导的查询去噪策略,以提高训练的鲁棒性和对不确定性的收敛性。作者还利用了不确定性降低的查询初始化,它利用预测的2D对象位置和深度信息来降低查询的不确定性。

在nuScenes 上的实验结果证明了UA-Track 框架的有效性。它在测试集中以令人印象深刻的 66.3% AMOTA 实现了最先进的性能,远远超过了之前最好的端到端解决方案 8.9% AMOTA。这些结果强调了解决 3D MOT 中不确定性问题的重要性,并展示了不确定性感知框架在推动自动驾驶感知领域发展的潜力。


3D 多目标跟踪 (MOT) 是自动驾驶系统感知的重要组成部分。在动态环境中准确而稳健地跟踪目标的能力对于确保平稳安全的导航和合理的决策至关重要。传统的 3D MOT 方法依赖于检测器结果,设计数据关联和轨迹过滤等后处理模块,从而导致流程复杂。为了避免基于检测的跟踪器中人为的启发式设计,端到端基于query查询的最新方法已显示出通过同时检测和跟踪目标来解决 3D MOT 任务的巨大潜力,这些方法在跟踪性能和效率方面表现出色。然而,它们假设周围信息已充分获得,并忽略了 3D MOT 中经常遇到的不确定性问题。如图 1 所示,之前最先进的端到端跟踪器 PF-Track(IDS目前最小)缺乏不确定性建模,无法在具有不确定性问题的复杂场景中跟踪目标。

尽管不确定性问题(指神经网络无法提供确定性估计或信心不足)已在某些领域得到应用,例如动作识别和伪装(camouflaged)目标检测等领域,但在 3D MOT 领域尚未得到探索。由于驾驶场景的复杂环境和跟踪任务的独特特点,3D MOT 中的不确定性问题尤其具有挑战性,以前针对其他特定领域的解决方案不能直接应用于此。在驾驶场景中,环境可能非常复杂,通常在城市驾驶时,车辆和行人等众多目标在场景中交织,并且它们的运动模式存在很大变化。此外,被跟踪的目标通常覆盖很大的空间跟踪范围和很长的时间跟踪序列。因此,经常会出现遮挡情况和目标物体的尺寸太小情况,这通常会导致一些目标未被检测或被遮挡的跟踪丢失。这些不确定因素对实现准确和鲁棒的 3D MOT 提出了重大挑战。

所以,在这个工作中,作者提出了一个不确定性感知的 3D MOT 框架 UA-Track,如图2,从多个方面解决不确定性问题。首先,作者引入了一个不确定性感知的概率解码器来捕获和建模对象预测过程中的不确定性(UPD-蓝色模块)。具体来说,如图3,将注意力得分建模为高斯分布而不是确定性的输出,以量化预测不确定性。其次,提出了一种不确定性引导的查询去噪策略来进一步改进训练过程(UQD-绿色模块)。在训练阶段,向真实边界框添加噪声以形成噪声查询,并根据其不确定性水平有选择地对查询进行去噪,从而增强了训练过程的鲁棒性和对不确定性的收敛性。此外,作者提出了减少不确定性的query初始化模块(UQI-黄色模块),该模块利用预测的 2D目标位置和深度信息,减少query初始化的不确定性,即通过结合学习到的先验知识,提高初始query的准确性,从而获得更可靠的跟踪结果。


Uncertainty-aware Probabilistic Decoder

如图3,该组件旨在解决3D多目标跟踪(MOT)中的不确定性问题。UPD通过引入概率注意力机制来捕获和建模目标预测过程中的不确定性。具体来说,UPD将传统的确定性注意力分数替换为高斯分布,从而量化预测的不确定性。

在传统的transformer中,注意力分数是通过确定性计算得到的,这限制了模型有效量化预测不确定性的能力。为了解决这个问题,UPD采用多层感知机(MLP)来拟合查询(q)和键(k)的均值(µ)和标准差(σ),从而构建高斯分布。通过重参数化技巧,从构建的高斯分布中采样得到注意力值α。

UPD的主要贡献包括:

  1. 通过概率注意力机制,将注意力分数表示为高斯分布,增强了模型在处理3D MOT中的变异和噪声时的鲁棒性。

  2. 引入了均值(µ)和标准差(σ)这两个不确定性参数,允许在训练过程中适应不确定性。

  3. 使用缩放点积注意力来约束概率注意力,并采用负对数似然损失来监督解码器。

通过这种方式,UPD能够有效地捕捉目标在复杂驾驶场景中的轨迹变化,特别是在目标尺寸和可见性变化较大时,如大型卡车和小孩等不同大小的目标,以及在遮挡情况下的目标。这使得UA-Track框架能够在存在不确定性因素的情况下,如遮挡和小目标尺寸,实现更准确和鲁棒的3D多目标跟踪。


Uncertainty-guided Query Denoising

UQD旨在增强模型在训练过程中对不确定性的鲁棒性和收敛性。UQD通过查询去噪策略来应对3D多目标跟踪(MOT)中的复杂情况,如遮挡和小目标尺寸,这些情况可能会显著阻碍基于查询的方法的学习过程和快速收敛。

UQD组件的主要特点和贡献包括:

  1. 噪声查询生成:通过扰动真实标注框(ground truth boxes)来生成带有噪声的查询(noised queries),模拟训练过程中可能遇到的不确定性。

  2. 不确定性阈值:定义了不确定性的上下界阈值(βlower 和 βupper),根据这些阈值将噪声查询分类为三类:低不确定性的正样本(Pos)、高不确定性的负样本(Neg)以及不确定性水平居中的样本(Ign)。正样本是那些与真实标注框的3D交并比(IoU)超过βupper阈值的查询,而负样本是IoU低于βlower阈值的查询。忽略(Ign)那些不确定性水平不明确的查询,以避免干扰正常的查询学习过程。

  3. 选择性去噪:基于不确定性水平,选择性地对查询进行去噪处理。这一策略有助于模型专注于那些最需要改进的查询,从而提高训练的稳定性和效率。

  4. 损失函数设计:为正样本和负样本计算损失,以形成优化目标。这包括用于分类和边界框损失的焦点损失(focal loss)和L1损失,以及用于区分背景的负样本分类的焦点损失。

  5. 注意力掩码:应用注意力掩码来分离匹配部分和去噪部分,防止信息泄露,确保模型在去噪过程中能够正确地学习和更新。

通过UQD,UA-Track框架能够在训练时更加鲁棒地处理不确定性,提高模型对遮挡和小目标尺寸等复杂情况的处理能力,从而在3D MOT任务中取得更好的跟踪性能。


Uncertainty-reduced Query Initialization

UQI专注于改善查询初始化阶段的不确定性,从而提高目标跟踪的精度和快速收敛。在多目标跟踪中,尤其是在存在遮挡和小目标尺寸等复杂情况下,高质量的初始查询对于实现精确的跟踪至关重要。

UQI模块的主要特点和贡献包括:

  1. 辅助任务:引入额外的辅助任务,包括2D检测和深度预测,以利用从网络训练中学到的先验知识。

  2. 特征提取:使用共享图像主干和特征金字塔网络(FPN)层从每个摄像头提取图像特征。

  3. 深度网络:结合多个残差块构建深度网络,并使用投影的激光雷达点进行监督,以预测深度信息。

  4. 坐标转换:通过坐标转换估计3D位置,将2D边界框和深度信息转换为相机坐标系到激光雷达坐标系的转换矩阵和相机的内在参数。

  5. 查询初始化:利用预测的2D对象位置和深度信息初始化对象查询,减少查询初始化阶段的不确定性。

  6. 随机初始化保留:除了基于学习的初始化外,还保留随机初始化以探索可能遗漏的对象。

  7. 优化目标:为两个辅助任务定义了优化目标,包括2D检测损失和深度损失。

通过UQI模块,UA-Track能够在查询初始化阶段就减少不确定性,提高初始对象定位的准确性,从而在整个跟踪过程中实现更可靠的跟踪结果。这种初始化策略有助于提高模型对于遮挡和小目标尺寸等复杂情况的鲁棒性,进而在3D多目标跟踪任务中取得更好的性能。


Experiment

相关文章:

UA-Track:不确定性感知端到端3D多目标跟踪

论文地址:https://arxiv.org/pdf/2406.02147 主页:https://liautoad.github.io/ua-track-website/ 3D多目标跟踪(MOT)在自动驾驶感知中起着至关重要的作用。最近基于端到端查询的跟踪器可以同时检测和跟踪对象,这在3D …...

Windows下AMD显卡在本地运行大语言模型(deepseek-r1)

Windows下AMD显卡在本地运行大语言模型 本人电脑配置第一步先在官网确认自己的 AMD 显卡是否支持 ROCm下载Ollama安装程序模型下载位置更改下载 ROCmLibs先确认自己显卡的gfx型号下载解压 替换替换rocblas.dll替换library文件夹下的所有 重启Ollama下载模型运行效果 本人电脑配…...

萌新学 Python 之字符串及字符串相关函数

字符串:单引号、双引号、三个单引号、三个双引号 字符串属于不可变的数据类型,一旦被定义,内存地址不变 name 张三 # 字符串赋值给name后,内存地址存储张三,地址不变 username 张三 # 张三去内存中找…...

【鸿蒙开发】第二十四章 AI - Core Speech Kit(基础语音服务)

目录 1 简介 1.1 场景介绍 1.2 约束与限制 2 文本转语音 2.1 场景介绍 2.2 约束与限制 2.3 开发步骤 2.4 设置播报策略 2.4.1 设置单词播报方式 2.4.2 设置数字播报策略 2.4.3 插入静音停顿 2.4.4 指定汉字发音 2.5 开发实例 3 语音识别 3.1 场景介绍 3.2 约束…...

Java | RESTful 接口规范

关注:CodingTechWork 引言 作为一名程序员,制定清晰、一致且高效的 RESTful 接口规范对于团队的开发效率和项目的长期维护至关重要。本文将详细介绍 RESTful 接口的设计理念、请求方法分类、核心规范,以及正确和错误的示例,帮助团…...

shell脚本控制——处理信号

Linux利用信号与系统中的进程进行通信。你可以通过对脚本进行编程,使其在收到特定信号时执行某些命令,从而控制shell脚本的操作。 1.重温Linux信号 Linux系统和应用程序可以产生超过30个信号。下表列出了在shell脚本编程时会遇到的最常见的Linux系统信…...

OpenGL学习笔记(十二):初级光照:投光物/多光源(平行光、点光源、聚光)

文章目录 平行光点光源聚光多光源 现实世界中,我们有很多种类的光照,每种的表现都不同。将光投射(Cast)到物体的光源叫做投光物(Light Caster)。 平行光/定向光(Directional Light)点光源(Point Light)聚光(Spotlight) 平行光 当一个光源处于很远的地…...

redis底层数据结构——整数集合

文章目录 定义内部实现升级升级的好处提升灵活性节约内存 降级总结 定义 整数集合(intset)是集合键的底层实现之一,当一个集合只包含整数值元素,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合键的底层…...

w198基于Springboot的智能家居系统

🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…...

【JavaScript】《JavaScript高级程序设计 (第4版) 》笔记-Chapter2-HTML 中的 JavaScript

二、HTML 中的 JavaScript 将 JavaScript 插入 HTML 的主要方法是使用<script>元素。 <script>元素有下列 8 个属性。 async&#xff1a;可选。表示应该立即开始下载脚本&#xff0c;但不能阻止其他页面动作&#xff0c;比如下载资源或等待其他脚本加载。只对外部…...

【5】阿里面试题整理

[1]. 介绍一下ZooKeeper ZooKeeper是一个开源的分布式协调服务&#xff0c;核心功能是通过树形数据模型&#xff08;ZNode&#xff09;和Watch机制&#xff0c;解决分布式系统的一致性问题。 它使用ZAB协议保障数据一致性&#xff0c;典型场景包括分布式锁、配置管理和服务注…...

系统思考—自我超越

“人们往往认为是个人的能力限制了他们&#xff0c;但事实上&#xff0c;是组织的结构和惯性思维限制了他们的潜力。”—彼得圣吉 最近和一家行业隐形冠军交流&#xff0c;他们已经是领域第一&#xff0c;老板却依然要求&#xff1a;核心团队都要自我超越&#xff0c;攻坚克难…...

大模型-ALIGN 详细介绍

ALIGN模型&#xff08;A Large-scale ImaGe and Noisy-text embedding&#xff09;是一种大规模图像和噪声文本嵌入模型&#xff0c;它通过对比学习的方式将图像和文本嵌入到同一个向量空间中&#xff0c;使得匹配的图像-文本对的嵌入向量接近&#xff0c;不匹配的则远离。这种…...

【C++高并发服务器WebServer】-15:poll、epoll详解及实现

本文目录 一、poll二、epoll2.1 相对poll和select的优点2.2 epoll的api2.3 epoll的demo实现2.5 epoll的工作模式 一、poll poll是对select的一个改进&#xff0c;我们先来看看select的缺点。 我们来看看poll的实现。 struct pollfd {int fd; /* 委托内核检测的文件描述符 */s…...

【算法】动态规划专题⑩ —— 混合背包问题 python

目录 前置知识进入正题总结 前置知识 【算法】动态规划专题⑤ —— 0-1背包问题 滚动数组优化 【算法】动态规划专题⑥ —— 完全背包问题 python 【算法】动态规划专题⑦ —— 多重背包问题 二进制分解优化 python 混合背包结合了三种不同类型的背包问题&#xff1a;0/1背包…...

Java高频面试之SE-20

hello啊&#xff0c;各位观众姥爷们&#xff01;&#xff01;&#xff01;本baby今天又来了&#xff01;哈哈哈哈哈嗝&#x1f436; Java的泛型是什么&#xff1f; Java 泛型&#xff08;Generics&#xff09; 是 Java 5 引入的一项重要特性&#xff0c;用于增强代码的类型安…...

springboot 事务管理

在Spring Boot中&#xff0c;事务管理是通过Spring框架的事务管理模块来实现的。Spring提供了声明式事务管理和编程式事务管理两种方式。通常&#xff0c;我们使用声明式事务管理&#xff0c;因为它更简洁且易于维护。 1. 声明式事务管理 声明式事务管理是通过注解来实现的。…...

opentelemetry-collector 配置elasticsearch

一、修改otelcol-config.yaml receivers:otlp:protocols:grpc:endpoint: 0.0.0.0:4317http:endpoint: 0.0.0.0:4318 exporters:debug:verbosity: detailedotlp/jaeger: # Jaeger supports OTLP directlyendpoint: 192.168.31.161:4317tls:insecure: trueotlphttp/prometheus: …...

IDEA关联Tomcat,部署JavaWeb项目

将IDEA与Tomcat关联 创建JavaWeb项目 创建Demo项目 将Tomcat作为依赖引入到Demo中 添加 Web Application 编写前端和后端代码 配置Tomcat server&#xff0c;并运行...

位图与位运算的深度联系:从图像处理到高效数据结构的C++实现与优化

在学习优选算法课程的时候&#xff0c;博主学习位运算了解到位运算的这个概念&#xff0c;之前没有接触过&#xff0c;就查找了相关的资料&#xff0c;丰富一下自身&#xff0c;当作课外知识来了解一下。 位图&#xff08;Bitmap&#xff09;&#xff1a; 在计算机科学中有两种…...

运维_Mac环境单体服务Docker部署实战手册

Docker部署 本小节&#xff0c;讲解如何将前端 后端项目&#xff0c;使用 Docker 容器&#xff0c;部署到 dev 开发环境下的一台 Mac 电脑上。 1 环境准备 需要安装如下环境&#xff1a; Docker&#xff1a;容器MySQL&#xff1a;数据库Redis&#xff1a;缓存Nginx&#x…...

DeepSeek-V3 论文解读:大语言模型领域的创新先锋与性能强者

论文链接&#xff1a;DeepSeek-V3 Technical Report 目录 一、引言二、模型架构&#xff1a;创新驱动性能提升&#xff08;一&#xff09;基本架构&#xff08;Basic Architecture&#xff09;&#xff08;二&#xff09;多令牌预测&#xff08;Multi-Token Prediction&#xf…...

react使用if判断

1、第一种 function Dade(req:any){console.log(req)if(req.data.id 1){return <span>66666</span>}return <span style{{color:"red"}}>8888</span>}2、使用 {win.map((req,index) > ( <> <Dade data{req}/>{req.id 1 ?…...

opencv:基于暗通道先验(DCP)的内窥镜图像去雾

目录 项目大体情况 暗通道先验&#xff08;Dark Channel Prior, DCP&#xff09;原理 项目代码解析 该项目是由我和我导师与舟山某医院合作开发的一个基于暗通道先验&#xff08;Dark Channel Prior&#xff0c;DCP&#xff09;的内窥镜图像去雾方法。具体来说&#xff0c;…...

2025年物联网相关专业毕业论文选题参考,文末联系,选题相关资料提供

一、智能穿戴解决方案研究方向 序号解决方案论文选题论文研究方向1智能腰带健康监测基于SpringBoot和Vue的智能腰带健康监测数据可视化平台开发研究如何利用SpringBoot和Vue技术栈开发一个数据可视化平台&#xff0c;用于展示智能腰带健康监测采集的数据&#xff0c;如心率、血…...

npm无法加载文件 因为此系统禁止运行脚本

安装nodejs后遇到问题&#xff1a; 在项目里【node -v】可以打印出来&#xff0c;【npm -v】打印不出来&#xff0c;显示npm无法加载文件 因为此系统禁止运行脚本。 但是在winr&#xff0c;cmd里【node -v】,【npm -v】都也可打印出来。 解决方法&#xff1a; cmd里可以打印出…...

使用PyCharm创建项目以及如何注释代码

创建好项目后会出现如下图所示的画面&#xff0c;我们可以通过在项目文件夹上点击鼠标右键&#xff0c;选择“New”菜单下的“Python File”来创建一个 Python 文件&#xff0c;在给文件命名时建议使用英文字母和下划线的组合&#xff0c;创建好的 Python 文件会自动打开&#…...

Qt中QFile文件读写操作和QFileInfo文件信息读取方法(详细图文教程)

&#x1f4aa; 图像算法工程师&#xff0c;专业从事且热爱图像处理&#xff0c;图像处理专栏更新如下&#x1f447;&#xff1a; &#x1f4dd;《图像去噪》 &#x1f4dd;《超分辨率重建》 &#x1f4dd;《语义分割》 &#x1f4dd;《风格迁移》 &#x1f4dd;《目标检测》 &a…...

CF998A Balloons​ 构造 ​

Balloons 算法&#xff1a;构造 rating : 1000 思路&#xff1a; 分情况讨论&#xff1a; 1. 当只有一个气球包时&#xff0c;肯定不行 2.当有两个气球包时&#xff0c;若两个气球包的气球个数相同则不行 3.其余的情况都是可以的&#xff0c;题目问给格里高利的气球包数…...

python基础入门:3.5实战:词频统计工具

Python词频统计终极指南&#xff1a;字典与排序的完美结合 import re from collections import defaultdictdef word_frequency_analysis(file_path, top_n10):"""完整的词频统计解决方案:param file_path: 文本文件路径:param top_n: 显示前N个高频词:return:…...

面试准备——Java理论高级【笔试,面试的核心重点】

集合框架 Java集合框架是面试中的重中之重&#xff0c;尤其是对List、Set、Map的实现类及其底层原理的考察。 1. List ArrayList&#xff1a; 底层是动态数组&#xff0c;支持随机访问&#xff08;通过索引&#xff09;&#xff0c;时间复杂度为O(1)。插入和删除元素时&#…...

Docker 部署 verdaccio 搭建 npm 私服

一、镜像获取 # 获取 verdaccio 镜像 docker pull verdaccio/verdaccio 二、修改配置文件 cd /wwwroot/opt/docker/verdaccio/conf vim config.yaml config.yaml 配置文件如下&#xff0c;可以根据自己的需要进行修改 # # This is the default configuration file. It all…...

每日一题--数组中只出现一次的两个数字

数组中只出现一次的两个数字 题目描述数据范围提示 示例示例1示例2 题解解题思路位运算方法步骤&#xff1a; 代码实现代码解析时间与空间复杂度按位与操作获取最小位1的原理为什么选择最低有效的 1 位而不是其他位&#xff1f; 题目描述 一个整型数组里除了两个数字只出现一次…...

蓝耘智算平台与DeepSeek R1模型:推动深度学习发展

公主请阅 前言何为DeepSeek R1DeepSeek R1 的特点DeepSeek R1 的应用领域DeepSeek R1 与其他模型的对比 何为蓝耘智算平台使用蓝耘智算平台深度使用DeepSeek R1代码解释&#xff1a;处理示例输入&#xff1a;输出结果&#xff1a; 前言 在深度学习领域&#xff0c;创新迭代日新…...

数据中台是什么?:架构演进、业务整合、方向演进

文章目录 1. 引言2. 数据中台的概念与沿革2.1 概念定义2.2 历史沿革 3. 数据中台的架构组成与关键技术要素解析3.1 架构组成3.2 关键技术要素 4. 数据中台与其他平台的对比详细解析 5. 综合案例&#xff1a;金融行业数据中台落地实践5.1 背景5.2 解决方案5.3 成果与价值 6. 方向…...

告别2023~2024

时间过得真快&#xff0c;距离上次写作2年多了。2023年&#xff5e;2024年的这两年时光里经历太多人生大事&#xff1a; 房贷&#xff0c;提前还贷买车&#xff0c;全款拿下租房搬家媳妇怀孕&#xff0c;独自照顾&#xff0c;……老人离世开盲盒喜提千金&#xff0c;百岁宴&am…...

PMO项目管理规范标准

这份文档是一份关于 PMO 项目管理规范标准的 V3.0 版本。以下是该文档的主要内容&#xff1a; 1. 立项管理 - 立项标准、级别划分和管理&#xff1a;定义了立项管理的标准、级别划分和管理&#xff0c;包括立项的审批流程、产品可行性分析、立项建议书、产品需求文档等。 - 立项…...

通过类加载和初始化的一些题目理解Java类加载过程

通过题目重点理解&#xff1a;Class加载流程和运行时区域 目录 子类和父类static变量父子类加载顺序2class.forName初始化 子类和父类static变量 class Parent {static int a 1;static int b 2;static int c;static {c 3;System.out.println("parent static block&quo…...

【人工智能】解码语言之谜:使用Python构建神经机器翻译系统

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 神经机器翻译(NMT)是近年来机器翻译领域的一项重大突破。它利用深度学习模型,特别是循环神经网络(RNN)和Transformer网络,以端到端的…...

瑞芯微 Rockchip 系列 RK3588 主流深度学习框架模型转成 rknn 模型教程

前言 在瑞芯微 Rockchip 芯片上进行 NPU 推理&#xff0c;需要先将模型文件转换成 rknn 模型文件&#xff0c;才能执行各种推理任务。本文将介绍如何安装各种工具&#xff0c;并最终实现将各种深度学习框架的模型文件转换成 rknn 文件。 本教程不仅适合 RK3588 平台&#xff…...

51单片机俄罗斯方块计分函数

/************************************************************************************************************** * 名称&#xff1a;scoring * 功能&#xff1a;计分 * 参数&#xff1a;NULL * 返回&#xff1a;NULL * 备注&#xff1a;采用非阻塞延时 ****************…...

C++线程池

使用线程情况比较频繁的地方&#xff0c;由于线程的创建及销毁都会产生对资源的占用及性能的损耗。为了优化性能&#xff0c;提升效率&#xff0c;在这种场景中&#xff0c;就应该使用线程池来处理任务。 线程池创建的关键点&#xff1a; 装载线程的容器&#xff0c;在C中使用…...

Golang GORM系列:定义GORM模型及关系指南

使用GORM进行数据库管理的核心是定义模型的技能。模型是程序的面向对象结构和数据库的关系世界之间的纽带。本文深入研究了在GORM中创建成功模型的艺术&#xff0c;研究了如何设计结构化的Go结构&#xff0c;用标记注释字段&#xff0c;以及开发跨模型的链接&#xff0c;以便最…...

ssm校园二手交易平台小程序

博主介绍&#xff1a;✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

【虚幻引擎UE】AOI算法介绍与实现案例

【虚幻引擎UE】AOI算法介绍与实现 一、AOI算法介绍AOI算法的典型应用场景二、AOI相关算法1. 边界框法(Bounding Box Method)2. 动态AOI算法3. 布尔运算(Boolean Operations)4. 四叉树(Quadtree)5. R树(R-Tree)6. 圆形AOI算法7. 网格分割(Grid Partitioning)8. 多边形…...

JavaScript 基础语法:变量、数据类型、运算符、条件语句、循环

JavaScript 是一种动态类型的脚本语言&#xff0c;广泛用于前端开发。以下是 JavaScript 基础语法的核心内容&#xff0c;包括变量、数据类型、运算符、条件语句和循环。 --- ### 1. 变量 变量用于存储数据。JavaScript 中有三种声明变量的方式&#xff1a; - **var**&…...

ASP.NET Core 如何使用 C# 从端点发出 GET 请求

使用 C#&#xff0c;从 REST API 端点获取 JSON&#xff1b;如何从 REST API 接收 JSON 数据。 本文需要 ASP .NET Core&#xff0c;并兼容 .NET Core 3.1、.NET 6和.NET 8。 要将数据发布到端点&#xff0c;请参阅本文。 使用 . 从端点发布 GET 数据非常容易HttpClient&…...

Docker 部署 MinIO | 国内阿里镜像

一、导读 Minio 是个基于 Golang 编写的开源对象存储套件&#xff0c;基于Apache License v2.0开源协议&#xff0c;虽然轻量&#xff0c;却拥有着不错的性能。它兼容亚马逊S3云存储服务接口。可以很简单的和其他应用结合使用&#xff0c;例如 NodeJS、Redis、MySQL等。 二、…...

量化交易数据获取:xtquant库的高效应用

量化交易数据获取&#xff1a;xtquant库的高效应用 在量化交易领域&#xff0c;历史行情数据的重要性不言而喻。它不仅为策略回测提供基础&#xff0c;也是实时交易决策的重要参考。本文将介绍如何使用xtquant库来高效获取和处理历史行情数据。 技术背景与应用场景 对于量化…...

Mysql中存储引擎各种介绍以及应用场景、优缺点

概述 MySQL 提供了多种存储引擎&#xff0c;每种引擎有不同的特点和适用场景。以下是几种常见的 MySQL 存储引擎的详细介绍&#xff0c;包括它们的底层工作原理、优缺点&#xff0c;以及为什么 MySQL 默认选择某种引擎。 1. InnoDB 底层工作原理&#xff1a; 事务支持&#…...