自动驾驶视觉感知算法技术综述

环境感知 是自动驾驶的第一环,是车辆和环境交互的纽带。一个自动驾驶系统整体表现的好坏,很大程度上都取决于感知系统的好坏。目前,环境感知技术有两大主流技术路线:

①以视觉为主导的多传感器融合方案,典型代表是特斯拉;

②以激光雷达为主导,其他传感器为辅助的技术方案,典型代表如谷歌、百度等。

我们将围绕着环境感知中关键的视觉感知算法进行介绍,其任务涵盖范围及其所属技术领域如下图所示。我们分为两节分别梳理了2D和3D视觉感知算法的脉络和方向。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

自动驾驶视觉感知算法技术综述

本节我们先从广泛应用于自动驾驶的几个任务出发介绍2D视觉感知算法,包括基于图像或视频的2D目标检测和跟踪,以及2D场景的语义分割。近些年,深度学习进入到视觉感知的各个领域,取得不错的成绩,因此,我们梳理了一些经典的深度学习算法。

01 目标检测

1.1 两阶段检测

两阶段指的是实现检测的方式有先后两个过程,一是提取物体区域;二是对区域进行CNN分类识别;因此,“两阶段”又称基于候选区域(Region proposal)的目标检测。代表性算法有R-CNN系列(R-CNN、Fast R-CNN、Faster R-CNN)等。

Faster R-CNN是第一个端到端的检测网络。第一阶段利用一个区域候选网络(RPN)在特征图的基础上生成候选框,使用ROIPooling对齐候选特征的大小;第二阶段用全连接层做细化分类和回归。这里提出了Anchor的思想,减少运算难度,提高速度。特征图的每个位置会生成不同大小、长宽比的Anchor,用来作为物体框回归的参考。Anchor的引入使得回归任务只用处理相对较小的变化,因此网络的学习会更加容易。下图是Faster R-CNN的网络结构图。

自动驾驶视觉感知算法技术综述

CascadeRCNN第一阶段和Faster R-CNN完全一样,第二阶段使用多个RoiHead层进行级联。后续的一些工作多是围绕着上述网络的一些改进或者前人工作的杂烩,罕有突破性提升。

1.2 单阶段检测

相较于两阶段算法,单阶段算法只需一次提取特征即可实现目标检测,其速度算法更快,一般精度稍微低一些。这类算法的开山之作是YOLO,随后SSD、Retinanet依次对其进行了改进,提出YOLO的团队将这些有助于提升性能的trick融入到YOLO算法中,后续又提出了4个改进版本YOLOv2~YOLOv5。尽管预测准确率不如双阶段目标检测算法,由于较快的运行速度,YOLO成为了工业界的主流。下图是YOLOv3的网络结构图。

自动驾驶视觉感知算法技术综述

1.3 Anchor-free检测(无Anchor检测)

这类方法一般是将物体表示为一些关键点,CNN被用来回归这些关键点的位置。关键点可以是物体框的中心点(CenterNet)、角点(CornerNet)或者代表点(RepPoints)。CenterNet将目标检测问题转换成中心点预测问题,即用目标的中心点来表示该目标,并通过预测目标中心点的偏移量与宽高来获取目标的矩形框。

Heatmap表示分类信息,每一个类别将会产生一个单独的Heatmap图。对于每张Heatmap图而言,当某个坐标处包含目标的中心点时,则会在该目标处产生一个关键点,我们利用高斯圆来表示整个关键点,下图展示了具体的细节。

自动驾驶视觉感知算法技术综述

RepPoints提出将物体表示为一个代表性点集,并且通过可变形卷积来适应物体的形状变化。点集最后被转换为物体框,用于计算与手工标注的差异。

1.4 Transformer检测

无论是单阶段还是两阶段目标检测,无论采用Anchor与否,都没有很好地利用到注意力机制。针对这种情况,Relation Net和DETR利用Transformer将注意力机制引入到目标检测领域。Relation Net利用Transformer对不同目标之间的关系建模,在特征之中融入了关系信息,实现了特征增强。DETR则是基于Transformer提出了全新的目标检测架构,开启了目标检测的新时代,下图是DETR的算法流程,先采用CNN提取图像特征,然后用Transformer对全局的空间关系进行建模,最后得到的输出通过二分图匹配算法与手工标注进行匹配。

下表中的准确度采用MSCOCO数据库上的mAP作为指标,而速度则采用FPS来衡量,对比了上述部分算法,由于网络的结构设计中存在很多不同的选择(比如不同的输入大小,不同的Backbone网络等),各个算法的实现硬件平台也不同,因此准确率和速度并不完全可比,这里只列出来一个粗略的结果供大家参考。

02 目标跟踪

在自动驾驶应用中,输入的是视频数据,需要关注的目标有很多,比如车辆,行人,自行车等等。因此,这是一个典型的多物体跟踪任务(MOT)。对于MOT任务来说,目前最流行的框架是Tracking-by-Detection,其流程如下:

①由目标检测器在单帧图像上得到目标框输出;

②提取每个检测目标的特征,通常包括视觉特征和运动特征;

③根据特征计算来自相邻帧的目标检测之间的相似度,以判断其来自同一个目标的概率;

④将相邻帧的目标检测进行匹配,给来自同一个目标的物体分配相同的ID。

深度学习在以上这四个步骤中都有应用,但是以前两个步骤为主。在步骤1中,深度学习的应用主要在于提供高质量的目标检测器,因此一般都选择准确率较高的方法。SORT是基于Faster R-CNN的目标检测方法,并利用卡尔曼滤波算法+匈牙利算法,极大提高了多目标跟踪的速度,同时达到了SOTA的准确率,也是在实际应用中使用较为广泛的一个算法。在步骤2中,深度学习的应用主要在于利用CNN提取物体的视觉特征。DeepSORT最大的特点是加入外观信息,借用了ReID模块来提取深度学习特征,减少了ID switch的次数。整体流程图如下:

自动驾驶视觉感知算法技术综述

此外,还有一种框架Simultaneous Detection and Tracking。如代表性的CenterTrack,它起源于之前介绍过的单阶段无Anchor的检测算法CenterNet。与CenterNet相比,CenterTrack增加了前一帧的RGB图像和物体中心Heatmap作为额外输入,增加了一个Offset分支用来进行前后帧的Association。与多个阶段的Tracking-by-Detection相比,CenterTrack将检测和匹配阶段用一个网络来实现,提高了MOT的速度。

03 语义分割

在自动驾驶的车道线检测和可行驶区域检测任务中均用到了语义分割。代表性的算法有FCN、U-Net、DeepLab系列等。DeepLab使用扩张卷积和ASPP(Atrous Spatial Pyramid  Pooling)结构,对输入图像进行多尺度处理。最后采用传统语义分割方法中常用的条件随机场(CRF)来优化分割结果。下图是DeepLab v3+的网络结构。

自动驾驶视觉感知算法技术综述

近些年的STDC算法采用了类似FCN算法的结构,去掉了U-Net算法复杂的decoder结构。但同时在网络下采样的过程中,利用ARM模块不断地去融合来自不同层特征图的信息,因此也避免了FCN算法只考虑单个像素关系的缺点。可以说,STDC算法很好的做到了速度与精度的平衡,其可以满足自动驾驶系统实时性的要求。算法流程如下图所示。

自动驾驶视觉感知算法技术综述

接下来我们将介绍自动驾驶中必不可少的3D场景感知。因为深度信息、目标三维尺寸等在2D感知中是无法获得的,而这些信息才是自动驾驶系统对周围环境作出正确判断的关键。想得到3D信息,最直接的方法就是采用激光雷达(LiDAR)。但是,LiDAR也有其缺点,比如成本较高,车规级产品量产困难,受天气影响较大等等。因此,单纯基于摄像头的3D感知仍然是一个非常有意义和价值的研究方向,接下来我们梳理了一些基于单目和双目的3D感知算法。

04 单目3D感知

基于单摄像头图像来感知3D环境是一个不适定问题,但是可以通过几何假设(比如像素位于地面)、先验知识或者一些额外信息(比如深度估计)来辅助解决。本次将从实现自动驾驶的两个基本任务(3D目标检测和深度估计)出发进行相关算法介绍。

4.1 3D目标检测

自动驾驶视觉感知算法技术综述

表示转换(伪激光雷达):视觉传感器对周围其他车辆等的检测通常会遇到遮挡、无法度量距离等问题,可以将透视图转换成鸟瞰图表示。这里介绍两种变换方法。一是逆透视图映射(IPM),它假定所有像素都在地面上,并且相机外参准确,此时可以采用Homography变换将图像转换到BEV,后续再采用基于YOLO网络的方法检测目标的接地框。二是正交特征变换(OFT),利用ResNet-18提取透视图图像特征。然后,通过在投影的体素区域上累积基于图像的特征来生成基于体素的特征。然后将体素特征沿垂直方向折叠以产生正交的地平面特征。最后,用另一个类似于ResNet的自上而下的网络进行3D目标检测。这些方法只适应于车辆、行人这类贴地的目标。

对于交通标志牌、红绿灯这类非贴地目标来说,可以通过深度估计来生成伪点云,进而进行3D检测。Pseudo-LiDAR先利用深度估计的结果生成点云,再直接应用基于激光雷达的3D目标检测器生成3D目标框,其算法流程如下图所示,

自动驾驶视觉感知算法技术综述

关键点和3D模型:待检测目标如车辆、行人等其大小和形状相对固定且已知,这些可以被用作估计目标3D信息的先验知识。DeepMANTA是这个方向的开创性工作之一。首先,采用一些目标检测算法比如Faster RNN来得到2D目标框,同时也检测目标的关键点。然后,将这些2D目标框和关键点与数据库中的多种3D车辆CAD模型分别进行匹配,选择相似度最高的模型作为3D目标检测的输出。MonoGRNet则提出将单目3D目标检测分成四个步骤:2D目标检测、实例级深度估计、投影3D中心估计和局部角点回归,算法流程如下图所示。这类方法都假设目标有相对固定的形状模型,对于车辆来说一般是满足的,对于行人来说就相对困难一些。

2D/3D几何约束:对3D中心和粗略实例深度的投影进行回归,并使用这二者估算粗略的3D位置。开创性的工作是Deep3DBox,首先用2D目标框内的图像特征来估计目标大小和朝向。然后,通过一个2D/3D的几何约束来求解中心点3D位置。这个约束就是3D目标框在图像上的投影是被2D目标框紧密包围的,即2D目标框的每条边上都至少能找到一个3D目标框的角点。通过之前已经预测的大小和朝向,再配合上相机的标定参数,可以求解出中心点的3D位置。2D和3D目标框之间的几何约束如下图所示。Shift R-CNN在Deep3DBox的基础上将之前得到的2D目标框、3D目标框以及相机参数合并起来作为输入,采用全连接网络预测更为精确的3D位置。

自动驾驶视觉感知算法技术综述

直接生成3DBox:这类方法从稠密的3D目标候选框出发,通过2D图像上的特征对所有的候选框进行评分,评分高的候选框即是最终的输出。有些类似目标检测中传统的滑动窗口方法。代表性的Mono3D算法首先基于目标先验位置(z坐标位于地面)和大小来生成稠密的3D候选框。这些3D候选框投影到图像坐标后,通过综合2D图像上的特征对其进行评分,再通过CNN再进行二轮评分得到最终的3D目标框。

M3D-RPN是一种基于Anchor的方法,定义了2D和3D的Anchor。2D Anchor通过图像上稠密采样得到,3D Anchor是通过训练集数据的先验知识(如目标实际大小的均值)确定的。M3D-RPN还同时采用了标准卷积和Depth-Aware卷积。前者具有空间不变性,后者将图像的行(Y坐标)分成多个组,每个组对应不同的场景深度,采用不同的卷积核来处理。上述这些稠密采样方法计算量非常大。SS3D则采用更为高效的单阶段检测,包括用于输出图像中每个相关目标的冗余表示以及相应的不确定性估计的CNN,以及3D边框优化器。FCOS3D也是一个单阶段的检测方法,回归目标额外增加了一个由3D目标框中心投影到2D图像得到的2.5D中心(X,Y,Depth)。

法语写作助手 法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31 查看详情 法语写作助手

4.2 深度估计

不管是上述的3D目标检测还是自动驾驶感知的另一项重要任务——语义分割,从2D扩展到3D,都或多或少得应用到了稀疏或稠密的深度信息。单目深度估计的重要性不言而喻,其输入是一张图像,输出是相同大小的一张由每个像素对应的场景深度值组成的图像。输入也可以是视频序列,利用相机或者物体运动带来的额外信息来提高深度估计的准确度。

相比于监督学习,单目深度估计的无监督方法无需构建极具挑战性的真值数据集,实现难度更小。单目深度估计的无监督方法可分为基于单目视频序列和基于同步立体图像对两种。

前者是建立在运动相机和静止场景的假设之上的。在后者的方法中,Garg等人首次尝试使用同一时刻立体校正后的双目图像对进行图像重建,左右视图的位姿关系通过双目标定得到,获得了较为理想的效果。在此基础上,Godard等人用左右一致性约束进一步地提升了精度,但是,在逐层下采样提取高级特征来增大感受野的同时,特征分辨率也在不断下降,粒度不断丢失,影响了深度的细节处理效果和边界清晰度。为缓解这一问题,Godard等人引入了全分辨率多尺度的损失,有效减少了低纹理区域的黑洞和纹理复制带来的伪影。但是,这对精度的提升效果仍是有限的。

最近,一些基于Transformer的模型层出不穷,旨于获得全阶段的全局感受野,这也非常适用于密集的深度估计任务。有监督的DPT中就提出采用Transformer和多尺度结构来同时保证预测的局部精确性和全局一致性,下图是网络结构图。

自动驾驶视觉感知算法技术综述

05 双目3D感知

双目视觉可以解决透视变换带来的歧义性,因此从理论上来说可以提高3D感知的准确度。但是双目系统在硬件和软件上要求都比较高。硬件上来说需要两个精确配准的摄像头,而且需要保证在车辆运行过程中始终保持配准的正确性。软件上来说算法需要同时处理来自两个摄像头的数据,计算复杂度较高,算法的实时性难以保证。与单目相比,双目的工作相对较少。接下来也同样从3D目标检测和深度估计两方面进行简单介绍。

5.1 3D目标检测

3DOP是一个两阶段的检测方法,是Fast R-CNN方法在3D领域的拓展。首先利用双目图像生成深度图,将深度图转化为点云后再将其量化为网格数据结构,再以此为输入来生成3D目标的候选框。与之前介绍的Pseudo-LiDAR类似,都是将稠密的深度图(来自单目、双目甚至低线数LiDAR)转换为点云,然后再应用点云目标检测领域的算法。DSGN利用立体匹配构建平面扫描体,并将其转换成3D几何体,以便编码3D几何形状和语义信息,是一个端到端的框架,可提取用于立体匹配的像素级特征和用于目标识别的高级特征,并且能同时估计场景深度和检测3D目标。

Stereo R-CNN扩展了 Faster R-CNN 用于立体输入,以同时检测和关联左右视图中的目标。在RPN之后增加额外的分支来预测稀疏的关键点、视点和目标尺寸,并结合左右视图中的2D边界框来计算粗略的3D目标边界框。然后,通过使用左右感兴趣区域的基于区域的光度对齐来恢复准确的3D边界框,下图是它的网络结构。

自动驾驶视觉感知算法技术综述

5.2 深度估计

双目深度估计的原理很简单,就是根据左右视图上同一个3D点之间的像素距离d(假设两个相机保持同一高度,因此只考虑水平方向的距离)即视差,相机的焦距f,以及两个相机之间的距离B(基线长度),来估计3D点的深度,公式如下,估计出视差就可以计算出深度。那么,需要做的就是为每个像素点在另一张图像上找出与之匹配的点。

自动驾驶视觉感知算法技术综述

对于每一个可能的d,都可以计算每个像素点处的匹配误差,因此就得到了一个三维的误差数据Cost Volume。通过Cost Volume,我们可以很容易得到每个像素处的视差(对应最小匹配误差的d),从而得到深度值。MC-CNN用一个卷积神经网络来预测两个图像块的匹配程度,并用它来计算立体匹配成本。通过基于交叉的成本汇总和半全局匹配来细化成本,然后进行左右一致性检查以消除被遮挡区域中的错误。PSMNet提出了一个不需要任何后处理的立体匹配的端到端学习框架,引入金字塔池模块,将全局上下文信息纳入图像特征,并提供了一个堆叠沙漏3D CNN进一步强化全局信息。下图是其网络结构。

自动驾驶视觉感知算法技术综述

以上就是自动驾驶视觉感知算法技术综述的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/548384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
java中字符串怎么拼接
上一篇 2025年11月9日 18:52:18
Linux下Compton使用心得:流畅体验分享
下一篇 2025年11月9日 18:52:21

相关推荐

  • ChromaDB向量嵌入的有效持久化策略

    本文详细介绍了如何利用langchain中chromadb的`persist_directory`功能,高效地持久化存储向量嵌入。通过将生成的嵌入数据保存到本地磁盘,可以有效避免重复计算,显著提升工作流程效率。教程将涵盖持久化chromadb实例的创建与后续加载的完整过程。 在处理大规模文本数据并生…

    2026年5月10日
    000
  • PHP代码注入检测机器学习应用_机器学习在代码注入检测中的应用

    PHP代码注入检测机器学习应用_机器学习在代码注入检测中的应用PHP代码注入检测机器学习应用_机器学习在代码注入检测中的应用PHP代码注入检测机器学习应用_机器学习在代码注入检测中的应用PHP代码注入检测机器学习应用_机器学习在代码注入检测中的应用

    机器学习能超越传统方法的关键在于其对未知攻击的泛化识别能力。传统规则依赖已知模式,难以应对变种攻击;而机器学习通过分析代码的词法、句法、语义和数据流特征,构建抽象的行为模型,可识别未见过但模式相似的恶意代码。例如,即便攻击者使用编码或混淆技术,只要其数据流向敏感函数(如eval、system)的行为…

    2026年5月10日 用户投稿
    000
  • C++ lambda 表达式在算法中的应用

    摘要:lambda 表达式可创建匿名函数对象,在算法中可用作仿函数、谓词和操作符重载。应用示例包括使用 lambda 表达式实现排序和筛选算法,从而简化代码并提高可读性。 C++ Lambda 表达式在算法中的应用 Lambda 表达式是 C++ 11 中引入的一种强大的工具,它允许在运行时创建匿名…

    2026年5月10日
    000
  • 使用C++实现机器学习算法:常见挑战及解决方案

    c++++ 中机器学习算法面临的常见挑战包括内存管理、多线程、性能优化和可维护性。解决方案包括使用智能指针、现代线程库、simd 指令和第三方库,并遵循代码风格指南和使用自动化工具。实践案例展示了如何利用 eigen 库实现线性回归算法,有效地管理内存和使用高性能矩阵操作。 C++ 机器学习算法:常…

    2026年5月10日
    000
  • html官方资源入口_html网站免费设计导航

    html网站免费设计导航入口是https://www.htmldesignresources.com,该平台提供HTML模板、响应式示例、表单组件和CSS样式资源,支持预览、搜索、筛选与代码复制,并设有社区投稿、论坛交流及季度报告更新功能。 html网站免费设计导航入口在哪里?这是不少网页设计爱好者…

    2025年12月23日
    000
  • HTML数据怎样进行情感分析 HTML数据情感挖掘的实现路径

    答案是:从HTML中提取有效文本并进行情感分析需先清理标签获取正文,再经文本预处理、分词与去噪后,应用词典、机器学习或深度学习模型判断情感倾向,最终整合结果并可视化,实现舆情监控与评价分析。 对HTML数据进行情感分析,核心在于从网页内容中提取有效文本,并在此基础上应用自然语言处理技术判断情感倾向。…

    2025年12月23日
    000
  • HTML5 section怎么用_HTML5内容分区标签应用场景说明

    在HTML5中,标签用于定义文档中具有明确主题的独立内容区块,需包含标题以体现其结构性与语义性,常用于文章章节、产品模块等场景,区别于无语义的和可独立分发的。 在HTML5中,section 标签用于定义文档中的一个独立内容区块。它不是简单的容器,而是有语义的结构化标签,表示文档中一个主题性的分区,…

    2025年12月23日
    000
  • htm算法 前景如何_分析HTM算法应用前景

    HTM算法在实时异常检测、预测性维护等时序数据场景中具备应用价值,其无需大量标注数据的特性适合工业监控、网络安防等领域;但受限于生态薄弱、性能不及主流模型及工程实现难度,短期内难以成为主流,更可能作为边缘计算或AI系统补充技术,在特定专业领域持续发展。 HTM(Hierarchical Tempor…

    2025年12月23日
    000
  • JavaScript算法实现_javascript编程挑战

    数组去重:利用Set特性去除重复元素,return […new Set(arr)];2. 回文判断:转小写后与反转字符串比较,cleaned === cleaned.split(”).reverse().join(”);3. 快速排序:选基准值分治递归,left、…

    2025年12月21日
    000
  • JavaScript数学计算与数值分析库

    math.js适合日常复杂计算,numeric.js专精数值分析,simple-statistics用于统计分析,TensorFlow.js适用于AI与大规模数值运算。 JavaScript虽然原生支持基本的数学运算,但在处理复杂数学计算、数值分析或科学计算时,依赖第三方库能大幅提升开发效率和计算精…

    2025年12月21日
    600
  • 构建基于Vuetify的所见即所得(WYSIWYG)编辑器

    本文探讨了如何利用vuetify的现有组件快速构建一个功能性的所见即所得(wysiwyg)编辑器。我们将重点介绍v-textarea作为内容输入区,以及v-btn-toggle和v-btn作为格式化工具栏的实现方式,并提供示例代码以帮助开发者理解其核心逻辑。同时,文章也提及了脱离框架,从零开始构建w…

    2025年12月21日
    000
  • 浏览器端基于face-api.js的多人脸识别系统构建与优化

    本教程详细探讨了在浏览器中使用face-api.js构建多人脸识别系统时,如何解决人脸误识别的问题。核心在于正确地为每个用户生成独立的标签化人脸描述符(labeledfacedescriptors),并利用facematcher进行高效准确的匹配。文章提供了完整的svelte代码示例,涵盖模型加载、…

    2025年12月20日
    000
  • LangChain HNSWLib 向量存储机制与数据持久化指南

    本文详细解析langchain中hnswlib向量存储的工作原理,明确其作为内存存储的特性,指出数据实际存储在项目部署的服务器上,而非langchain官方服务器。同时,文章将指导如何通过save_local()方法将内存中的向量数据持久化到本地文件,确保数据安全与可靠性,并探讨在实际应用中的注意事…

    2025年12月20日
    000
  • 如何利用 JavaScript 实现一个简单的机器学习模型进行预测或分类?

    答案是JavaScript可实现简单机器学习模型。通过手动实现线性回归和kNN算法,可在前端完成基础预测与分类任务;结合TensorFlow.js则能训练神经网络,支持更复杂场景,适合轻量级应用开发。 用 JavaScript 实现一个简单的机器学习模型是完全可行的,尤其适合初学者理解基本原理或在前…

    2025年12月20日
    200
  • 如何用JavaScript进行计算机视觉的基本处理?

    JavaScript通过Canvas API和图像数据操作可实现基础计算机视觉功能,如灰度化、边缘检测和人脸识别;利用tracking.js、ml5.js等库能简化开发,结合getUserMedia()还可处理实时视频流,适用于Web端轻量级视觉应用。 用JavaScript进行计算机视觉的基本处理…

    2025年12月20日
    000
  • 如何从零开始构建一个属于自己的前端框架?

    答案是:从零构建%ignore_a_1%框架需先明确核心目标,如组件化、响应式、虚拟DOM等,建议从最小功能出发,逐步实现组件系统、数据响应、虚拟DOM diff、声明式API等关键机制,通过实践深入理解React、Vue等框架的底层原理。 从零开始构建一个前端框架听起来很复杂,但只要拆解清楚目标和…

    2025年12月20日
    000
  • JavaScript 字符串部分模糊匹配:一种实用方法

    本文探讨了在 JavaScript 中进行字符串部分模糊匹配的方法,重点解决当待比较字符串长度差异较大时,传统字符串相似度算法表现不佳的问题。文章提供了一种基于单词匹配的简单而有效的解决方案,并附带示例代码,帮助开发者快速实现字符串的相似度比较。 在 JavaScript 中,我们经常需要比较两个字…

    2025年12月20日
    400
  • 如何用WebGPU实现深度学习模型的推理加速?

    WebGPU在深度学习推理中的核心优势体现在性能提升、跨平台支持和隐私保护。它通过更底层的硬件访问能力,利用GPU并行计算显著加速模型推理,相比WebGL减少了CPU与GPU间的数据传输开销;其原生浏览器支持实现了多平台兼容,使AI计算可在用户端完成,保障数据隐私并降低服务器成本。 WebGPU的出…

    2025年12月20日
    000
  • js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容

    js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容js如何实现文本差异对比 4种差异比对算法快速找出文本变化内容

    js实现文本差异对比需遵循以下步骤:1.预处理文本,如清洗字符;2.选择算法如lcs、diff、levenshtein距离或基于单词的对比;3.用js实现所选算法;4.将结果以高亮或报告形式展示。lcs通过动态规划找出最长公共子序列,可优化空间与提前结束运算。diff算法识别插入、删除、替换操作,可…

    2025年12月20日 用户投稿
    000
  • c++如何使用TensorRT进行模型部署优化_c++ NVIDIA推理引擎入门【AI】

    TensorRT是NVIDIA提供的高性能深度学习推理优化库,专为C++设计,通过序列化→优化→部署流程加速已训练模型在GPU上的推理。 TensorRT 是 NVIDIA 提供的高性能深度学习推理(Inference)优化库,专为 C++ 环境设计,能显著提升模型在 GPU 上的运行速度、降低延迟…

    2025年12月19日
    000

发表回复

登录后才能评论
关注微信