城市复杂环境下低成本单目视觉惯性轮式里程计融合方案

news2026/5/15 7:16:37
1. 项目概述当视觉与惯性导航在城市中“失明”在机器人、自动驾驶乃至无人机领域定位与建图SLAM是核心的“眼睛”和“大脑”。对于成本敏感、体积受限的移动平台如服务机器人、小型物流车视觉惯性里程计VIO因其无需外部信号、成本低廉而备受青睐。然而当这套系统从实验室的规整环境走向真实的城市街道挑战才真正开始。想象一下你正驾驶一辆装备了普通摄像头和廉价惯性测量单元IMU的小车穿梭在高楼林立的都市峡谷中。GPS信号被严重遮挡甚至完全失效这是城市环境的常态。你的视觉系统也就是那个单目摄像头迎面而来的是疾驰而过的车辆、摇曳的树影、玻璃幕墙的反光以及突如其来的隧道入口——一片纯粹的黑暗。更棘手的是城市路面并不平坦频繁的启停、转弯以及减速带、坑洼带来的颠簸都在持续冲击着那个成本可能只有几十元的低精度IMU。这就是“在城市地区使用低等级IMU的单目视觉惯性车轮里程计”这个项目标题所直面的、极其真实的工程困境。这个项目的核心目标是在上述恶劣条件下依然能为移动机器人提供稳定、可靠的位姿位置和姿态估计。它巧妙地将三种传感器信息进行融合单目视觉提供丰富的环境特征和尺度信息尽管是相对的低等级IMU提供高频的角速度和加速度数据弥补视觉在快速运动或纹理缺失时的短板车轮编码器则提供了另一个独立的、基于机器人本体运动的里程信息尤其是在视觉和IMU都表现不佳的直行、匀速阶段它能提供稳定的尺度基准和航迹推算。其背后的深层逻辑是构建一个多源、互补、鲁棒的状态估计器。没有一种传感器是完美的但在城市这个复杂考场里让它们互相校验、取长补短是工程上务实且高效的解决方案。这套系统不追求极限的精度而是追求极致的可用性和可靠性确保机器人在大部分城市场景下“不迷路”这对于许多商业落地应用来说价值远高于在理想环境下刷高的那几个百分点的精度指标。2. 核心思路与方案选型为什么是“紧耦合”的优化框架面对城市环境的挑战一个松散的、简单拼接各传感器数据的系统会迅速崩溃。例如当视觉因快速运动而模糊时如果仅仅用IMU数据做简单插值误差会快速累积当车辆匀速直线行驶时低精度IMU的零偏会悄无声息地引入巨大的位置漂移。因此本项目必然采用基于非线性优化的紧耦合融合框架这也是当前主流且成熟的选择。2.1 状态向量设计估计什么是关键系统的状态向量是需要被持续估计的核心。一个典型的设计如下X [ R, p, v, b_g, b_a, λ_0, λ_1, ..., λ_n ]其中R, p, v: 机器人的旋转矩阵或四元数、位置和速度。这是里程计的直接输出。b_g, b_a: IMU陀螺仪和加速度计的零偏。对于低等级IMU其零偏不稳定且易受温度影响必须作为状态量在线估计否则积分误差将失控。λ_i: 逆深度参数。这是单目视觉的痛点单个图像无法获知特征点的真实距离。我们采用逆深度1/距离参数化其不确定性在优化中更符合高斯分布数值上更稳定。将IMU零偏和特征点逆深度一同放入状态向量进行优化意味着系统在推算自身运动的同时也在实时地“校准”着传感器的内在误差和“理解”着环境的几何结构这是一种深度的耦合。2.2 融合策略视觉惯性紧耦合 轮式里程计松耦合在具体的融合策略上通常采用分层或分权重的思路视觉-惯性紧耦合核心这是系统的“主引擎”。IMU数据在相机帧之间进行预积分得到相对运动的约束。视觉前端提取的特征点与这些IMU预积分量一起构建非线性优化问题如基于滑动窗口的Bundle Adjustment。IMU提供了高频率的运动预测和尺度、重力方向信息而视觉则提供了纠正IMU积分漂移的几何约束。两者在优化框架内紧密协作共同求解出最优的状态估计。轮式里程计作为“锚点”车轮编码器数据通常以相对松耦合的方式引入。它不直接参与特征点的重投影误差计算而是作为一种独立的运动测量约束。例如可以将轮式里程计在两帧之间积分得到的位移和旋转与VIO核心估计出的位移和旋转构建残差项加入到整体的优化目标函数中。它的核心作用有两个尺度观测在系统初始化或尺度发生漂移时轮速提供的位移信息是绝对尺度的黄金参考能迅速纠正单目视觉的尺度不确定性。运动先验在视觉失效如隧道、强光的短时间段内轮式里程计可以提供相对可靠的运动估计防止系统完全发散为视觉恢复争取时间。注意轮式里程计的引入需要谨慎处理其系统误差如轮径标定误差、打滑和地面不平整带来的误差。在优化中通常会给轮式里程计的约束设置一个适中的信息矩阵权重既发挥其稳定作用又避免其自身误差带偏整个系统。2.3 关键方案选型滤波 vs. 优化早期VIO多采用扩展卡尔曼滤波EKF及其变种。但对于本项目面临的复杂城市环境基于滑动窗口的非线性优化方法如VINS-Mono, OKVIS背后的思想更具优势。原因一更好的线性化点。优化方法可以在一个窗口内多次迭代线性化更逼近真实的最优点对初始值不敏感。而EKF严重依赖上一时刻的估计值进行线性化在运动剧烈或测量异常时容易线性化错误导致发散。原因二更灵活处理异常值。优化框架可以方便地集成鲁棒核函数如Huber核当视觉匹配出现大量外点如移动车辆上的特征时能有效抑制其影响。EKF在这方面较为笨拙。原因三便于集成轮式里程计。将轮速计约束作为一个额外的残差项加入优化问题在概念和实现上都比在EKF中设计其观测模型更直观统一。因此选择以滑动窗口BABundle Adjustment为骨架融合IMU预积分和轮式里程计约束的方案是应对城市复杂场景的合理技术路径。3. 核心模块拆解与实操要点一个完整的系统包含感知前端、融合后端、初始化与故障恢复等多个模块。每个模块在城市场景下都有其特殊的考量和实操细节。3.1 视觉前端特征提取与跟踪的“生存法则”城市环境对视觉前端提出了苛刻要求光照剧变、动态物体多、重复纹理如窗户、瓷砖。特征点选择ORB特征仍然是性价比极高的选择。它计算速度快具备旋转和尺度不变性虽然对光照变化比SIFT等稍弱但结合下文技巧足以应对。避免使用纯角点检测如Harris其对尺度变化和仿射变换不稳定。动态物体剔除光流一致性检查对提取的特征点用LK光流进行跟踪。在静态场景中相邻帧间特征点的光流场应是平滑连续的。如果某个特征点的运动矢量明显偏离其邻域的主流运动可通过计算基础矩阵或本质矩阵的RANSAC内点集来判断则很可能是动态物体上的点应予以剔除。语义信息辅助可选但有效如果计算资源允许运行一个轻量级的语义分割网络如MobileNet-SSD预先检测出“车辆”、“行人”等类别。将这些区域内的特征点赋予较低的权重或直接丢弃可以极大减少动态物体的干扰。这是一个用少量计算换鲁棒性大幅提升的实用策略。应对纹理缺失与快速运动关键帧策略不能每帧都参与优化。采用更激进的关键帧选择机制当旋转或平移超过一定阈值或跟踪的特征点数量低于一定比例如50%时才创建新的关键帧。这保证了关键帧之间既有足够的视差用于三角化又避免了相似视图的冗余计算。金字塔光流必须使用图像金字塔进行光流跟踪以应对大幅度的像素位移快速运动导致。实操心得在实际部署中我们发现将特征提取的阈值如FAST角点的阈值设置为自适应非常有效。在纹理丰富的区域提高阈值以减少特征数量节约计算在纹理稀疏的区域如白墙、天空降低阈值以“榨取”出尽可能多的特征点。这比固定阈值更能适应城市环境的变化。3.2 IMU预处理与预积分处理低等级IMU噪声的艺术低等级IMU的噪声大零偏不稳定直接积分毫无意义。预积分技术是处理它的关键。预积分概念不是在绝对坐标系下积分而是在两个视觉帧之间的局部时间段内对IMU的角速度和加速度进行积分得到这段时间内的相对旋转、位置和速度变化。这样做的好处是当IMU的零偏估计被后端优化更新后我们不需要重新积分整个历史数据只需用一个一阶雅可比矩阵对预积分量进行修正计算效率极高。噪声处理陀螺仪随机游走与零偏这是低等级IMU的主要误差源。需要在状态向量中估计b_g并在预积分模型中将其影响用雅可比矩阵表达出来。通常假设零偏在短时间内是随机游走过程。加速度计零偏与重力耦合加速度计测量值中包含了重力加速度。在预积分前需要先从原始测量值中减去当前估计的重力矢量。加速度计零偏b_a也需要估计但其与重力方向在初始化阶段容易混淆需要视觉或轮速计提供额外约束来解耦。实操中的IMU同步摄像头和IMU的时间戳必须严格同步。硬件同步最佳如触发信号若只能软件同步则需在采集端打上精确的时间戳并在处理时按时间戳进行插值对齐。毫秒级的时间偏差会导致明显的融合误差。3.3 轮式里程计集成从脉冲到位姿约束车轮编码器输出的是脉冲数需要转换为有物理意义的运动约束。标定这是第一步也是至关重要的一步。需要精确标定轮子周长和轮距对于两轮差分模型。一个简单有效的标定方法是让机器人在平整地面上走一个精确的矩形或圆形用高精度的外部测量设备如全站仪、激光跟踪仪或至少是卷尺测量实际路径与编码器积分路径对比反解出轮子参数。标定一次长期使用但需定期检查尤其是轮胎磨损后。运动模型差分驱动模型最常见。根据左右轮的速度差计算角速度根据平均速度计算前进速度。公式虽简单但需注意在转弯时内外轮实际运动半径不同带来的误差在低速时影响较小。航迹推算在dt时间内假设机器人绕瞬时转动中心ICC做圆弧运动由编码器数据推算出dx, dy, dtheta。构建优化残差将轮式里程计在t_k到t_{k1}时间段内积分得到的相对位姿变换T_odom与状态估计中对应时刻的位姿变换T_est进行比较。残差可以定义为李代数上的差值r_odom log( T_odom^{-1} * T_est )将这个残差乘以一个合适的信息矩阵权重加入到非线性优化的总目标函数中。信息矩阵的设定体现了你对轮式里程计在这段时间内可靠性的置信度例如在直线匀速时置信度高在急转弯或可能打滑时置信度低。4. 系统初始化与尺度确定从零开始的“冷启动”单目VIO的初始化是个鸡生蛋蛋生鸡的问题需要尺度来三角化特征点又需要三角化的特征点来估计运动和尺度。低等级IMU的加入让问题更复杂因为其初始零偏未知。一个稳健的初始化流程通常分步进行纯视觉初始化系统启动后首先收集一段时间的图像进行纯视觉的Structure-from-MotionSfM。使用对极几何或单应矩阵分解出最初几帧的相对旋转和平移方向正确但平移是单位尺度即尺度未知。同时三角化出一批初始地图点逆深度值非常不确定。IMU初始化与尺度、重力方向对齐利用步骤1中视觉估计的旋转序列与同时间段的IMU陀螺仪积分出的旋转序列进行对齐。通过最小二乘可以标定出陀螺仪的零偏b_g并将视觉坐标系和IMU坐标系的相对旋转R_bc校准得更加准确。利用步骤1中视觉估计的带尺度不确定性的平移序列与IMU预积分扣除初始零偏估计后的的位置序列进行对齐。这里视觉序列的缩放尺度s、重力矢量在视觉坐标系下的方向g^c、以及加速度计零偏b_a是待求解的变量。构建一个线性方程组当有足够运动激励特别是加速度变化时可以解出这些量。此时单目视觉的尺度s被确定下来整个地图和轨迹被恢复至公制单位。轮式里程计作为尺度验证与备份在第二步求解尺度s时轮式里程计提供的绝对位移信息可以作为强有力的验证。例如在初始化阶段让机器人沿直线行走一段已知距离如2米轮速计可以给出一个非常准确的位移观测直接用于校正求解出的尺度s。如果IMU初始化因运动激励不足而失败轮速计甚至可以单独提供一个可靠的尺度初值让系统能够“跛行”启动。注意事项初始化阶段要求机器人必须进行充分的运动特别是包含加速度变化的非匀速直线运动如走“8”字形或绕圈以激励IMU的所有观测通道才能使尺度、重力方向和零偏可观测。静止或纯匀速直线运动的初始化注定会失败。5. 滑动窗口优化与边缘化在有限资源下维持长期一致性我们无法优化所有历史状态计算量会无限增长。滑动窗口优化只保留最近N个关键帧的状态进行优化更老的状态则被边缘化。边缘化的作用当一个新的关键帧加入窗口最老的关键帧需要被移出时我们不是简单地丢弃它。而是将其状态从优化变量中移除但将其携带的约束信息关于它看到的特征点、与IMU的测量关系等转化为一个先验概率约束施加在剩余的窗口状态上。这相当于保留了老信息对当前状态的“记忆”防止信息丢失导致估计漂移。城市场景下的边缘化策略谨慎选择被边缘化的帧避免边缘化那些观测到大量仍在当前窗口中被跟踪的特征点的老帧。因为一旦这些帧被边缘化它们与这些特征点的约束就变成了一个“刚性”的先验如果这个先验本身有误差比如当时IMU零偏估计不准这个误差就会被锁定并传递给未来所有状态导致不可修正的漂移。一个策略是优先边缘化那些特征点跟踪数少、或与当前帧共视区域小的老帧。处理外点在边缘化前务必使用鲁棒核函数或gating test剔除掉关联的异常视觉测量避免将错误约束作为先验。5.1 优化问题的构建整个滑动窗口优化问题的目标函数可以概括为min{X} ( Σ || r_visual ||^2 Σ || r_imu ||^2 Σ || r_odom ||^2 || r_prior ||^2 )其中r_visual: 视觉重投影误差即地图点投影到图像上的位置与实测特征点位置的差。r_imu: IMU预积分误差即状态估计预测的IMU测量值与实际预积分值的差。r_odom: 轮式里程计误差。r_prior: 从边缘化得到的先验误差。X: 滑动窗口内所有关键帧的状态位姿、速度、零偏以及被观测到的地图点的逆深度。使用非线性优化库如g2o,Ceres Solver求解这个最小二乘问题即可得到最优的状态估计。6. 实战城市典型场景的应对策略与调参实录理论最终要服务于实战。下面结合几个典型城市场景分享具体的应对策略和参数调整经验。6.1 隧道与地下车库纯视觉失效场景进入隧道光线骤暗摄像头捕捉不到有效特征。策略IMU主导视觉前端会报告跟踪特征点数量急剧下降。此时系统应自动降低视觉残差的权重甚至暂时将其从优化中移除完全依赖IMU预积分和轮式里程计进行航迹推算。轮速计的关键作用在隧道内车辆通常保持匀速直线或固定转弯半径行驶。这正是轮式里程计最可靠的时候。提高r_odom的权重让它成为约束主体可以极大抑制IMU零偏漂移带来的位置误差。“盲走”时间限制需要设置一个计时器。如果纯视觉失效超过一定时间例如5-10秒系统应发出警告因为仅凭IMU和轮速计误差会随时间累积。长时间隧道需考虑其他传感器如低成本激光雷达或先验地图。调参在代码中实现一个可靠性因子。根据跟踪的特征点数量、图像平均梯度等动态调整视觉残差的信息矩阵。当因子低于阈值时平滑地降低其权重。6.2 动态物体密集区十字路口场景路口车辆、行人、自行车穿梭超过50%的图像区域被运动物体占据。策略前端动态检测加强如前所述结合光流一致性检查和轻量级语义分割。可以更激进地剔除运动物体上的点。依赖静态背景专注于提取和跟踪地面、交通标志杆、路灯、建筑物边缘等静态背景上的特征。虽然数量可能变少但质量极高。优化器的鲁棒核函数必须使用Huber或Cauchy核函数。当某个特征点的重投影误差异常大时可能是未被剔除的动态点或误匹配核函数会降低该误差项的影响避免其“拉偏”整个优化结果。调参降低RANSAC用于计算基础矩阵的内点阈值因为动态物体会污染匹配对集合。同时可以适当提高创建新关键帧的平移/旋转阈值避免在自身几乎没动但场景剧烈变化时创建无效关键帧。6.3 开阔广场与玻璃幕墙场景纹理稀疏广场或存在大量反光、重复纹理玻璃幕墙。策略特征点提取策略调整在纹理稀疏区降低特征提取阈值并允许提取更密集的特征点。在重复纹理区除了使用ORB描述子可以尝试加入更严格的旋转一致性检查或使用光流跟踪后的描述子匹配验证来剔除误匹配。多尺度图像金字塔确保图像金字塔的层数足够例如4层以在纹理稀疏的大尺度区域也能提取到特征。轮速计提供运动先验在此类场景下视觉匹配容易失败。可以利用轮速计提供的运动估计dx, dy, dtheta作为视觉特征跟踪的初始猜测缩小光流搜索范围提高跟踪成功率。6.4 参数调整经验表以下是一些核心参数的经验值范围需在实际系统中根据传感器性能微调参数模块参数名称建议范围/值调整逻辑与影响视觉前端FAST角点阈值10-20自适应更佳值越小角点越多。纹理少时调低纹理丰富时调高。光流金字塔层数3-5层数越多能应对更快的像素位移但计算量增大。城市快速移动场景建议4层。关键帧选择旋转阈值0.2-0.5 rad避免过于频繁插入关键帧导致窗口内帧间视差太小。关键帧选择平移阈值0.5-1.0 m同上保证足够的三角化基线。IMU处理陀螺仪零偏随机游走噪声密度根据IMU手册设定如1e-4 rad/s/sqrt(Hz)此参数影响零偏估计的收敛速度。值设得比实际稍大系统会更积极地估计零偏变化。加速度计零偏随机游走噪声密度根据IMU手册设定如1e-3 m/s^2/sqrt(Hz)同上。对低等级IMU此值通常较大。预积分区间最大时长0.1-0.2 s相邻图像帧间的最大IMU预积分时间。过长会降低预积分线性假设的准确性。优化后端滑动窗口大小10-15个关键帧窗口太小约束不足窗口太大计算量增加且可能包含过时错误信息。城市场景10-15是一个平衡点。视觉重投影误差鲁棒核函数阈值1.0-2.0像素Huber核的delta参数。大于此阈值的误差会被线性加权。用于抑制动态物体等外点。轮速计残差权重与视觉残差权重比 1:10 到 1:100权重太高轮速计误差会主导系统权重太低其约束作用微弱。匀速直线时可信度高可临时调高权重。7. 常见问题排查与调试技巧在实际部署中系统可能出现各种异常。以下是一些常见问题的排查思路。7.1 尺度因子缓慢漂移或突变症状运行一段时间后估计出的地图尺寸和现实不符或经过某些场景后尺度突然变化。可能原因与排查IMU加速度计零偏未正确估计这是最常见原因。检查初始化阶段运动是否充分有无绕圈或“8”字运动。检查优化过程中b_a的状态是否在合理范围内波动参考IMU手册。可以尝试在匀速直线段用轮速计位移对尺度进行微调或重校正。轮速计标定错误或打滑检查轮子周长标定值。在平整地面上让机器人直线行走固定距离如10米对比轮速计积分距离与真实距离。如果误差随时间累积可能是打滑如果存在固定比例误差则是标定问题。视觉特征深度估计错误在玻璃、镜面等区域三角化出的特征点深度严重错误影响了与IMU的尺度对齐。加强动态物体和不可靠区域的特征点剔除。7.2 高度方向Z轴发散症状机器人在平面上运动但估计轨迹的Z轴高度不断上升或下降。可能原因与排查重力矢量估计不准单目VIO中重力方向与加速度计零偏耦合。如果初始化或运行中主要进行平面运动重力方向的可观测性很弱。解决方案在启动后主动让机器人做一个小幅度的俯仰或滚转运动如上下坡以激励重力方向估计。平面运动假设很多VIO系统在优化时如果不加约束容易在缺乏Z轴观测时产生漂移。可以引入一个弱平面运动假设作为先验例如添加一个微小的惩罚项限制Z轴速度或位置变化但权重不宜过大以免影响上下坡等真实运动。7.3 在转弯时轨迹扭曲症状特别是在90度转弯时估计的轨迹转弯半径与真实不符或转弯后位置有偏移。可能原因与排查IMU与相机时间戳不同步这是致命问题。检查硬件同步或软件时间戳插值。可以录制一段数据绘制角速度曲线和图像特征光流曲线观察峰值是否对齐。轮速计模型误差差分驱动模型在转弯时由于内外轮滑移率不同会引入误差。在急转弯时可以适当降低轮速计残差的权重。滚动快门效应如果使用滚动快门相机在快速旋转时图像不同行曝光时相机姿态已发生变化会导致特征点变形。需要在视觉残差模型中补偿滚动快门效应或使用全局快门相机。7.4 系统突然崩溃跟踪丢失症状前端跟踪的特征点数量瞬间归零后端优化无法继续。恢复策略短期跟踪丢失立即切换到纯IMU轮速计航迹推算模式。同时视觉前端尝试在当前位置附近进行重定位即与过去的关键帧进行特征匹配找回姿态。重定位失败如果航迹推算一段时间如2秒后仍无法重定位则触发系统重置。以当前IMU和轮速计推算的位置和姿态为初始值重新进行视觉初始化流程。这意味着丢失之前的地图但能快速恢复定位功能对于导航任务而言有时“活着”比“记得所有路”更重要。地图保存与加载对于固定区域作业的机器人可以定期保存全局地图。在重定位时不仅与滑动窗口内的关键帧匹配还与保存的全局地图匹配能极大提高重定位成功率。调试时可视化是最高效的工具。实时绘制出特征点跟踪情况、估计轨迹、IMU零偏估计值、各残差项的大小等信息能帮助你快速定位问题模块。例如如果发现b_g的估计值在某个时刻发生跳变那么很可能是视觉前端在该时刻提供了错误的数据导致优化器“甩锅”给IMU零偏。

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

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

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…