- 博客(190)
- 收藏
- 关注
原创 【模型细节】 RoIAlign的使用场景、方法详解及举例说明(含MultiScaleRoIAlign)
RoIAlign是一种用于目标检测和实例分割的关键技术,主要用于从特征图中精确提取不规则候选区域(ROI)的特征。它通过避免坐标量化,采用双线性插值采样,解决了传统RoI Pooling的空间不对齐问题。典型应用场景包括Faster R-CNN和Mask R-CNN等框架。 代码实现展示了两种方式:1) 直接使用torchvision的roi_align函数处理16个batch共528个边界框;2) 通过MultiScaleRoIAlign模块实现多尺度特征对齐。两种方法都能输出固定尺寸(7x7)的特征图,
2025-11-10 13:35:35
609
原创 【大模型】VLA、VLM、LLM的基础概念及挑战
LLM (Large Language Model - 大型语言模型)VLM (Vision-Language Model - 视觉语言模型)VLA (Vision-Language-Action Model - 视觉语言动作模型)它们之间的主要差异总结:简单来说:大型语言模型在AI领域取得了显著进展,但也面临多重挑战,这些阻碍了其广泛应用和可靠性。计算资源需求高:训练LLM需要巨大的计算能力。例如,一个拥有101110^{11}1011参数的模型训练需消耗数千GPU小时,成本高昂。推理阶段(生成响应)同样
2025-11-07 09:45:47
634
原创 【训练技巧】L1L2正则化原理公式推导及其防止过拟合原理
正则化通过在模型损失函数中添加惩罚项,限制模型参数的复杂度,从而避免模型过度拟合训练数据中的噪声或无关特征。正则化能够平衡模型的复杂度和训练数据的拟合程度,提高模型的泛化能力。通过惩罚过大的权重值,正则化迫使模型学习更平滑的函数,减少对训练数据中噪声的敏感度。L1正则化通过向损失函数添加模型权重的绝对值之和(L1范数)作为惩罚项,能够产生稀疏解,即某些参数会变为0,从而实现特征选择。常见的正则化方法包括L1正则化(Lasso)和L2正则化(Ridge),以及结合两者的弹性网络(Elastic Net)。
2025-11-05 17:52:40
573
原创 【训练技巧】优化器adam和adamw的公式推导详解及区别
Adam与AdamW优化器对比:Adam结合动量法和自适应学习率,通过梯度指数移动平均($\beta_1=0.9$)和平方梯度平均($\beta_2=0.999$)实现参数更新,但权重衰减与学习率耦合。AdamW改进之处在于将权重衰减项($\lambda\theta$)独立作用于参数更新,使正则化效果更稳定。实验显示AdamW在精度(+0.5%~1.5%)和收敛速度(1.2倍)上均优于Adam,且超参数更鲁棒($\lambda\in[10^{-3},10^{-2}]$)。实践建议优先使用AdamW并降低初始
2025-11-05 16:46:17
956
原创 突击宝典:C++面试高频考点精析
声明()引入标识符类型;定义(int x;)分配内存并初始化。虚函数需通过虚表调用,构造函数执行时对象未完全构建,虚表未初始化。
2025-11-04 13:14:29
490
原创 【导语与总结】开启智能驾驶新篇章!《智能驾驶行泊车全栈基础算法专题课程》圆满收官,欢迎订阅!
智能驾驶全栈算法课程精华速览 36节课程系统覆盖智能驾驶核心技术链: 基础体系:坐标系转换、相机标定、图像处理(IPM投影等) 核心算法:感知(分类/检测/分割)、融合(KF/EKF)、定位建图(SLAM/ICP)、路径规划(A*/Hybrid A*)、控制(PID/LQR) 特色实践:Ubuntu环境搭建、泊车场景检测、车辆状态估计等代码示例 课程设计由浅入深,适合零基础学员快速构建智能驾驶算法知识框架,配套详细公式推导与代码实现,助力技术落地应用。 (注:摘要严格控制在150字内,突出课程系统性、技术实
2025-10-14 11:42:46
361
原创 【第9话:感知算法】多层感知机MLP模型详细介绍及代码举例
多层感知机(MLP)是深度学习的基础模型,由输入层、隐藏层和输出层构成,通过非线性激活函数实现复杂特征变换。其核心数学表达式为前向传播公式,配合反向传播算法进行参数优化。文章详细解析了MLP的架构原理、激活函数特性、梯度计算过程,并给出PyTorch实现示例。MLP广泛应用于分类、回归等任务,优化技巧包括权重初始化、正则化等方法。理解MLP的工作原理是掌握深度学习模型的关键基础。
2025-10-14 11:18:35
1022
原创 【模型基础】nn.Embedding的底层原理及使用方法举例
nn.Embedding是PyTorch中处理离散数据的模块,通过可训练的查找表将高维稀疏输入映射为低维稠密向量。其核心参数包括词汇表大小、嵌入维度和填充索引等。支持批量输入和预训练嵌入加载,可通过冻结参数控制梯度更新。典型应用于NLP词嵌入、推荐系统和分类特征编码,需注意输入越界和内存占用问题。该模块通过反向传播优化向量空间,使语义相近的输入距离更近。
2025-10-09 10:36:44
545
原创 【训练技巧】Git使用方法、原理及和git操作命令详解
Git是一款分布式版本控制系统,通过快照机制管理项目历史。其核心原理包括工作区、暂存区和本地仓库的三区工作流,以及Blob、Tree、Commit和Tag四种对象存储数据。常用命令分为基础操作(init/clone/add/commit)、分支管理(branch/checkout/merge)、远程协作(push/pull)和版本控制(reset/revert)四类。高级功能包括冲突解决、rebase变基和stash暂存。最佳实践建议采用特性分支工作流,编写规范的提交信息,并合理配置.gitignore文件
2025-10-09 09:45:47
974
原创 【训练技巧】PyTorch多卡训练模型DistributedDataParallel和DataParallel设置方法详解及分布式训练命令解释
PyTorch多卡训练方法详解:1) DataParallel 适用于单机多卡,简单封装模型即可,但效率较低;2) DistributedDataParallel 推荐用于生产环境,支持多机多卡,需初始化进程组并配合DistributedSampler使用。关键步骤包括模型封装、数据分片和混合精度训练优化。启动命令为torchrun --nproc_per_node=4 train.py,注意调整batch_size为单卡大小的N倍。常见问题包括内存不足(可梯度累积)和速度瓶颈(需检查数据加载)。
2025-09-29 10:02:51
708
原创 【训练技巧】Model Exponential Moving Average (EMA)的原理详解及使用举例说明
EMA(指数移动平均)是一种通过平滑模型权重来提升深度学习性能的技术。其核心是对权重进行滑动平均(公式:$v_t = \beta v_{t-1} + (1-\beta)w_t$),能有效抑制训练噪声、提高泛化能力。PyTorch实现主要包括初始化影子权重、迭代更新和应用EMA权重三个步骤,典型场景下可提升测试精度1-2%。该技术在GAN、目标检测等噪声敏感任务中效果显著,能降低训练波动性,常用衰减率β为0.999(长期平滑)或0.99(短期适应)。
2025-09-26 16:53:18
425
原创 【训练技巧】torch.nn.utils.clip_grad_norm_原理解析及使用方法
PyTorch中的torch.nn.utils.clip_grad_norm_函数用于梯度裁剪,防止训练神经网络时出现梯度爆炸问题。它通过计算所有参数的梯度范数,若超过设定阈值max_norm,则按比例缩放梯度。该函数支持指定范数类型(如L2范数),并可选择在遇到无效梯度时报错。典型应用包括RNN/LSTM、深层网络和对抗训练等场景。函数返回裁剪前的梯度总范数,便于监控训练稳定性。示例展示了如何在线性模型训练中使用该函数进行梯度裁剪。
2025-09-26 11:58:38
566
原创 【训练技巧】torch.amp.GradScaler 里面当scale系数为0或者非常小的时候,详细分析与解决思路
当PyTorch AMP的GradScaler中scale系数接近零时,表明训练出现梯度不稳定问题。主要解决方案包括:1) 在scaler.step()前进行梯度裁剪;2) 调整Scaler参数如增大初始值、降低增长幅度;3) 设置scale监控和安全重置机制;4) 动态调整学习率;5) 排查梯度异常值和数据范围问题。建议优先采用梯度裁剪和参数调整,85%的案例可解决。当scale<1e-4时触发安全重置,必要时可切换至FP32训练或改用SGD优化器。
2025-09-26 10:44:10
313
原创 【训练技巧】batch_size 、num_workers 与内存、显存的关系&batch_size 、num_workers如何设置详解
本文分析了深度学习训练中Batch Size和Num Workers对内存与显存的影响机制。Batch Size与显存呈线性关系,主要影响梯度、激活值和优化器状态,公式为Mem_GPU = P + (G + A + O)×B。Num Workers与内存占用成正比,每个Worker需预加载数据并保留副本。二者同时增大会导致资源指数级消耗。最佳实践建议:梯度累积和混合精度训练可优化显存使用;Num Workers推荐设置为min(4, CPU核心数-2)。硬件配置表中给出不同GPU显存对应的参数推荐值,强调应
2025-09-25 11:04:08
1125
原创 【第35话:车辆控制】自动驾驶车辆纯跟踪算法(前瞻点、预瞄点算法)控制原理推导及详解
优点:计算量小、实现简单、鲁棒性强,适合实时系统。缺点:在高曲率路径或动态障碍物下表现有限,常与模型预测控制(MPC)结合。应用:广泛应用于低速场景(如园区物流车)和路径跟踪模块。实际部署时,需在仿真中调参(如LLL和WbW_bWb),并考虑传感器噪声。通过以上推导和详解,用户可以基于此实现定制化跟踪控制器。如需扩展(如速度控制或多车协同),可进一步讨论。
2025-09-24 09:48:52
960
原创 【第33话:车辆控制】自动驾驶车辆斯坦利控制原理推导及详解
摘要:斯坦利控制(Stanley Controller)是自动驾驶中广泛应用的路径跟踪算法,由斯坦福大学提出。其核心原理是通过航向误差($\theta_e$)和速度归一化的路径误差($e$)计算方向盘转角($\delta = \theta_e + \tan^{-1}(k e / v)$),实现车辆对预定路径的精确跟踪。该算法基于简化车辆运动学模型,计算高效且易于实现,适用于结构化道路。但需注意动态效应(如高速不稳定)和参数调优(增益$k$)。代码示例展示了二维路径跟踪的实现,未来可结合自适应优化或机器学习增
2025-09-24 09:48:20
659
原创 【第34话:车辆控制】自动驾驶车辆PID控制(比例-积分-微分控制)原理推导及详解
在自动驾驶中,PID控制器用于最小化车辆状态(如位置、速度)与目标值之间的误差。横向控制:确保车辆沿预定路径行驶,误差为横向偏差(车辆中心线与路径的距离)。纵向控制:调节车速以维持安全距离或跟随前车,误差为速度差。PID控制器的输出utu(t)ut比例项(P):快速响应当前误差。积分项(I):消除累积误差(如系统偏差)。微分项(D):预测未来误差变化,抑制振荡。PID控制在自动驾驶中通过实时误差反馈实现精确控制,其核心公式utKpetKi∫0teτdτKd。
2025-09-24 09:47:41
681
原创 【第32话:路径规划】自动驾驶中Hybrid A星(A*)搜索算法的详细推导及代码示例
Hybrid A星搜索算法在自动驾驶中的路径规划 Hybrid A星算法是一种结合离散搜索和连续状态空间处理的路径规划方法,适用于自动驾驶车辆的复杂运动学约束。该算法通过以下关键步骤实现高效路径搜索: 混合状态表示:将连续位置(x,y)和方向角θ离散化为网格,同时保留连续运动模型 双重启发函数:结合欧几里得距离和Reeds-Shepp曲线,确保搜索效率和解的最优性 车辆动力学约束:基于自行车模型进行状态转移,考虑转向角限制和轴距影响 代价函数优化:综合路径长度和平滑度,通过优先级队列实现高效节点扩展 算法在
2025-09-23 10:59:26
1170
原创 【第31话:路径规划】自动驾驶启发式搜索算法(A星搜索算法( A* 搜索算法))详解及代码举例说明
本文详细介绍了自动驾驶系统中启发式搜索算法(以A算法为例)的原理与应用。文章首先阐述了启发式搜索的基础概念,包括代价函数、启发式函数及其在自动驾驶路径规划中的重要性。接着重点解析A算法的运作机制,强调其通过优先队列和启发式函数实现高效搜索的特点。文章还提供了A*算法的Python实现示例,展示了其在网格地图中的实际应用。最后,作者探讨了算法在自动驾驶中的优化方向,如动态环境处理和启发式设计改进,并指出未来可能的发展趋势,包括与机器学习结合和硬件加速等。全文兼顾理论与实操,为自动驾驶路径规划提供了清晰的技术指
2025-09-23 10:39:07
1162
原创 【第30话:路径规划】Dijkstra搜索算法详解及代码举例说明
适用条件有向/无向图非负边权重单源最短路径优势时间复杂度优于Bellman-Ford算法可扩展为A*算法(加启发函数)局限无法处理负权边不适用全源最短路径(需用Floyd-Warshall)
2025-09-23 10:20:02
476
原创 【第29话:路径规划】深度优先搜索(DFS搜索算法)算法详解及代码举例说明
本文详细介绍了深度优先搜索(DFS)算法,包括其原理、时间复杂度和代码实现。DFS通过递归或迭代方式深入探索每条路径,适用于图的遍历和连通性问题分析。文章以Python代码为例,展示了DFS在无向图中的实现过程,并通过具体示例说明了算法的执行流程和输出结果。DFS的时间复杂度为O(V+E),空间复杂度为O(V),适合解决需要深度探索的问题,但不保证找到最短路径。
2025-09-23 10:06:33
889
原创 【第28话:路径规划】广度优先搜索(BFS搜索算法)算法详解及代码举例说明
本文详细介绍了广度优先搜索(BFS)算法,包括其数学原理、实现步骤和Python代码示例。BFS通过逐层遍历图或树结构,确保找到无权图中的最短路径(边数最少)。文章从距离公式推导入手,说明如何通过队列的先进先出特性实现分层遍历,并分析了算法的时间复杂度为O(|V|+|E|)。提供的Python代码使用邻接表表示图,演示了BFS如何计算各节点到起点的最短距离。BFS广泛应用于最短路径查找、网络爬虫等场景,是图论中的基础算法之一。
2025-09-23 09:53:22
1096
原创 【第27话:路径规划】自动驾驶路径规划概念与理论介绍
自动驾驶路径规划是车辆在动态环境中寻找最优运动轨迹的核心技术,需满足安全性、高效性、舒适性和可行性等要求。关键技术包括环境建模(栅格地图、拓扑地图等)、路径搜索算法(A*、RRT*等)和轨迹优化方法(样条插值、最优控制等)。理论模型涵盖车辆运动学、障碍物规避和不确定性处理。典型实现流程分为环境感知、全局路径规划和局部轨迹优化。前沿研究方向涉及多智能体协同、强化学习、V2X融合和伦理决策框架,系统需满足实时性和大规模状态空间处理要求。
2025-09-23 09:46:01
1107
原创 【训练技巧】torch.cuda.amp.GradScaler() 深入详解
PyTorch的GradScaler是自动混合精度(AMP)训练的核心组件,主要解决float16数值精度不足的问题。它通过动态缩放梯度,将梯度值保持在float16的安全范围内:先放大梯度避免下溢,优化前再恢复原始量级。其数学原理确保不影响优化方向。典型使用需配合autocast()上下文,优势包括显存减半、计算加速2-8倍、自动数值保护等。注意事项包括仅支持CUDA设备、避免手动梯度处理等。该技术能显著提升大模型训练效率,已成为现代深度学习标配。
2025-09-22 13:10:24
937
原创 【第26话:定位建图】 SLAM回环检测方法及原理详细介绍
SLAM回环检测是机器人定位与建图的关键技术,通过识别重复访问的地点校正累积误差。主要方法分为基于外观(如词袋模型)和基于几何(如扫描匹配)两类,前者通过特征相似度检测回环,后者利用点云对齐实现。混合方法和深度学习技术(如NetVLAD)正成为趋势,以提高鲁棒性和适应性。实际应用中需权衡效率与精度,如视觉SLAM常用词袋模型,激光SLAM倾向扫描匹配。回环检测显著提升SLAM系统的全局一致性,是长期稳定运行的核心保障。
2025-09-10 13:41:22
597
原创 【第25话:定位建图】SLAM后端优化方法详解
SLAM后端优化方法研究综述 摘要:SLAM后端优化是消除累计误差、提升系统精度的关键环节。本文系统分析了主流优化方法:基于滤波的EKF和粒子滤波(FastSLAM)具有线性计算优势但精度受限;基于图优化的方法通过因子图建模实现全局一致性优化,采用Gauss-Newton或Levenberg-Marquardt算法求解;增量式优化(如iSAM2)利用贝叶斯树实现高效更新。研究对比了不同方法的计算复杂度(EKF O(n²) vs iSAM2 O(logn))和适用场景,并探讨了稀疏性处理、鲁棒核函数等关键技术
2025-09-10 13:37:14
718
原创 【第22话:定位建图】SLAM视觉里程计——特征点法详解
本文详细介绍了SLAM中视觉里程计的特征点法,包括其核心原理、关键步骤和数学基础。特征点法通过提取图像中的显著特征点(如ORB、SIFT)并匹配不同帧的对应关系,计算相机运动轨迹。主要步骤包括特征提取、匹配、运动估计和优化,涉及对极约束、本质矩阵分解等数学模型。该方法鲁棒性强、效率高,但对低纹理场景敏感且存在累积误差。文章还提供了简化的Python代码示例,展示了特征点法的基本实现流程。特征点法在机器人导航和增强现实等领域广泛应用,是SLAM系统的重要组成部分。
2025-09-10 13:29:57
686
原创 【第24话:定位建图】SLAM视觉里程计——光流法(直接法)详解
本文详解了SLAM中视觉里程计的光流法原理与应用。光流法通过追踪像素运动估计相机位姿,基于亮度恒定假设推导光流约束方程。Lucas-Kanade和Horn-Schunck是两种主要求解方法,分别采用局部和全局优化策略。文中提供了Python实现示例,并分析了光流法的优缺点:计算高效但易受光照变化、运动模糊等因素影响。实际应用中需与其他技术融合以减少误差。光流法作为视觉里程计的基础组件,仍需结合多视图几何优化提升精度。
2025-09-10 13:25:38
713
原创 【第23话:定位建图】SLAM视觉里程计——直接法详解
SLAM视觉里程计特征点法通过检测图像特征点(如FAST、ORB)并生成描述子进行匹配,利用几何约束(PnP、本质矩阵)估计相机运动。其核心步骤包括特征检测、描述、匹配和运动估计,依赖相机模型和重投影误差优化。优点是鲁棒高效,但受限于纹理缺失和动态场景。该方法在机器人导航中广泛应用,是SLAM系统的重要基础。
2025-09-10 13:21:08
927
原创 【第19话:定位建图】 KD树(KD-Tree)的建立与最近邻算法(NN)详解
KD树是一种多维空间索引结构,通过递归划分k维空间实现高效数据组织。其构建过程采用坐标轴交替分割,时间复杂度为O(n log n)。最近邻搜索算法(NN)利用KD树加速查询,通过超球面剪枝策略优化搜索路径,理想情况下复杂度为O(log n)。对于大规模数据,可采用近似最近邻(ANN)方法,通过限制搜索深度或允许近似结果来提升效率。该技术广泛应用于图像检索、KNN分类器加速和空间数据库查询等领域,特别适合处理高维数据检索问题。
2025-09-10 12:55:06
710
原创 【第21话:定位建图】SLAM点云配准之3D-3D ICP(Iterative Closest Point)方法详解
本文详细介绍了SLAM中点云配准的核心算法ICP(Iterative Closest Point)。ICP通过迭代优化刚体变换(旋转和平移)来对齐点云数据,包含四个关键步骤:最近点搜索、最优变换计算、点云变换和收敛判断。文章推导了ICP的数学原理,分析其优缺点,并指出其在SLAM中的典型应用场景(如帧间配准、局部优化和回环检测)。尽管ICP对初始位置敏感且仅适用于刚性变换,但其高效性使其成为SLAM系统的关键组件。理解ICP有助于掌握点云配准的基本原理和实现方法。
2025-09-10 12:42:23
954
原创 【第20话:定位建图】SLAM 语义地图创建方法及流程详解
摘要 SLAM(同步定位与建图)结合语义分割技术可构建包含物体类别与属性的语义地图,提升机器人导航与场景理解能力。核心方法包括:1)视觉SLAM与语义分割融合,2)多传感器(LiDAR、IMU、摄像头)数据整合,3)端到端深度学习模型。构建流程涵盖数据采集、特征提取、语义分割、位姿估计、语义融合及地图优化。关键技术挑战包括动态物体处理、实时性优化及语义一致性维护。典型实现通过点云分割与SLAM系统(如ORB-SLAM3)结合,辅以深度学习模型(如PointNet++)完成语义标注,最终生成八叉树或点云形式的
2025-09-10 12:34:10
1274
原创 【论文阅读】Far3D: Expanding the Horizon for Surround-view 3D Object Detection
摘要: 本文提出Far3D,一种基于稀疏查询的环视3D目标检测框架,针对远距离检测挑战设计。通过2D检测先验生成自适应3D查询,结合视角感知聚合模块捕获多尺度特征,并创新性提出范围调制3D去噪方法解决误差传播问题。在Argoverse 2数据集上达到150米检测范围,性能超越多个激光雷达方法,在nuScenes数据集同样表现优异。该工作为远距离视觉3D检测提供了新思路,代码已开源。
2025-09-08 17:58:35
808
原创 【第17话:定位建图】车辆状态估计:航迹递推DR公式推导详细介绍及代码实现
航迹递推(DR)是自动驾驶中基于历史运动状态推算位置的核心技术,在GPS失效时提供连续定位,并辅助传感器融合降低延迟。其基本原理是通过位移增量(Δd=v·Δt)和航向角(θ)更新位置坐标,但存在误差累积问题。Python实现展示了DR的轨迹推算过程,需结合其他定位技术校正误差。DR在自动驾驶中扮演安全网角色,未来需优化算法以提升精度。
2025-09-08 10:26:08
1231
原创 【第14话:感知算法】库位与可行驶区域检测后处理方法介绍及代码示例说明
本文介绍了库位与可行驶区域检测的后处理方法。对于库位检测,采用非极大值抑制消除重叠框,结合几何约束优化检测结果,包括角点校正、边线拟合、拓扑验证等步骤,并输出结构化数据。可行驶区域检测通过多传感器后融合提高鲁棒性,包括投票融合、贝叶斯方法、D-S证据理论和栅格地图融合等技术。文章还提供了基于OpenCV和NumPy的代码实现,涵盖NMS、形态学操作和区域合并等关键处理步骤,有效提升检测精度和可靠性。
2025-09-08 10:12:07
713
原创 【论文阅读】VovNet:An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection
本文提出VoVNet网络架构以解决DenseNet在目标检测中的低效问题。通过分析发现,DenseNet的密集连接导致内存访问成本高和计算效率低。作者提出一次性聚合(OSA)模块,通过简化特征连接方式,仅在最上层聚合特征,显著减少了30%的内存占用。实验表明,VoVNet在保持DenseNet性能优势的同时,计算速度提升2倍,能耗降低1.6-4.1倍。研究还发现1×1卷积会降低GPU并行效率,证实了OSA模块的设计合理性。该工作为实时目标检测提供了更高效的骨干网络选择。
2025-09-02 16:25:58
490
rknn-toolkit-lite2-1.6.0-cp38-cp38-linux-aarch64.whl
2025-08-11
【计算机视觉】基于Bisenet的地下泊车场景仿真数据集训练与推理:环境配置、常见问题及关键参数解析
2025-08-09
【计算机视觉】 基于IPM的全景相机图像拼接算法实现:自动化停车系统中的关键投影技术开发与应用
2025-08-09
自动驾驶基于扩展卡尔曼滤波的车辆状态估计实现:预测与更新模型及ROS环境下的轨迹可视化系统设计
2025-08-09
【自动驾驶领域】自主代客泊车(AVP)理论与实践课程大纲:涵盖定位、感知、规划与控制技术
2025-08-09
【自动驾驶泊车域专题课程-作业一答案代码】基于Ubuntu的ROS环境搭建与车辆可视化编程实践:初学者指南及RVIZ应用
2025-08-09
【自动驾驶泊车域专题课程-作业一】基于Ubuntu的ROS环境搭建与车辆可视化编程实践:初学者指南及RVIZ应用
2025-08-09
Music-Downloader-master.zip
2025-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅