☰
3D视觉Infra核心痛点与落地实践:从数据采集到线上监控
2026/10/19 19:05:19 网站建设 项目流程

我是在一个自动化设备项目里,第一次被“3D视觉Infra”这个词击中。当时团队里算法、工程、产品各干各的,模型训练出来效果也不差,可一到现场测试就翻车。后来排查发现,问题根本不在模型,而在于数据采集时的标定乱了、标注规范前后不一致、评测集和训练集混在一起。那一刻我才意识到,真正拖后腿的,是围绕三维视觉的那套基础设施。

这几年,3D视觉Infra从很少有人专门聊,慢慢变成了视觉团队绕不开的瓶颈。和2D视觉不同,3D视觉牵扯传感器标定、多模态对齐、点云与深度图的数据处理、坐标系变换、模型评估与在线监控,任何一个环节没打通,整个链路都会被拖垮。这篇文章我不敢说是什么标准答案,更多是把我观察到的核心痛点,以及团队实际在用的成熟方案做一次整理。适合正在搭视觉基础设施的算法工程师和工程负责人,尤其是从2D视觉转到3D场景后一直被数据和标定折磨的朋友。

1. 先搞清楚3D视觉Infra到底在管哪些事

1.1 一条完整链路:从传感器触发到线上报警

很多人一听到Infra,第一反应是“后台系统”“平台开发”,但3D视觉Infra远比这个范围广。我习惯把3D视觉Infra拆成五段,不是按团队组织去拆,而是按数据从产生到闭环的流动去拆。

环节核心产物常见失败方式
数据采集与传感器管理带时间戳和标定信息的原始数据时间不同步、外参漂移、无效帧混入
数据标注与治理高质量标签加版本化数据集标注标准漂移、数据血缘缺失
训练与评测可复现的训练环境加结构化评估报告评测集不固定、指标只看平均分
部署与推理优化低延迟、可回滚的线上服务前处理成瓶颈、模型热更新不可控
线上监控与数据回流漂移报警加困难样本回流闭环只监控算力不监控模型行为

这张表之所以重要,是因为绝大多数3D视觉项目出问题,都不是单个模型结构不行,而是这几段链路里某一段悄悄崩了。时间不同步,后面所有标注都是错位;评测集不固定,算法进步与否根本没法回答;部署时前处理比推理还慢,再好的模型也压不住帧率。所以我不太认同把3D视觉Infra归类为单纯的“后台系统”,它更像一条产线的质量体系,需要有人从头到尾负责。

五段链路之间是强耦合的。传感器标定一乱,数据层面的所有东西都受影响;数据版本没记录,训练结果一旦退化,你根本不知道是数据变了还是代码变了。做3D视觉Infra最核心的目标,是把整个团队的试错成本降下来,让每次模型改动、每次数据调整都能被精确衡量,而不是靠拍脑袋和记忆。

1.2 为什么3D视觉Infra和普通后端基建不是一回事

普通后端基础设施处理的对象是稳定、可解析的数据:请求日志、用户表、订单记录。这些东西本身是结构化的,格式也是明确的。3D视觉数据不一样,它天生残缺。遮挡会导致点云缺失,玻璃和反光金属会产生飞点,深度传感器对远距离物体的误差会急剧放大。这些“脏数据”不是异常值,而是传感器物理特性的正常结果,你不能把它们当成垃圾丢掉,而要从机制上理解它们。

坐标系和标定参数也是普通后端几乎不会遇到的问题。同一张点云,相机外参偏一点,投影到图像上的输出就会错位。模型除了学习像素、点坐标,还不自觉地学习了传感器的安装位置、朝向、帧率等隐藏信息。如果这些状态变了,模型的表现就会莫名其妙变差,但很少人想到去检查传感器状态。因此,3D视觉Infra必须把传感器状态、标定参数、时间同步这些维度也纳入资产,否则模型学到的是“传感器伪像”而不是真实语义。

还有一个非常重要的区别:普通后端的监控可以靠请求量、错误率、耗时这些指标来完成,但3D视觉模型的行为很难用单一指标概括。同一个模型在晴天和雨天、近距离和远距离、白天和夜间的表现可能完全不同,必须分层、分场景地看。这也是为什么很多从2D视觉转过来的人,会花很久才能适应3D的评估复杂度。

1.3 团队现状:内嵌小组和独立平台组各有代价

这两年我接触过的团队,做3D视觉Infra的大概分两种形态。一种是在算法组内部长出来的Infra小组,两三个人既写数据处理脚本,又管训练平台和标注流程。这种形态的好处是离问题近,模型在线上出问题后半小时内就能定位到是数据、标定还是代码;坏处是长期没人愿意把脚本固化成可维护的工具,代码库经常是“能跑就行”,换个人接手就变成一团乱麻。

另一种是独立的Infrastructure组,负责把数据、训练、部署统一收拢成一个平台。好处是规范和体系化,数据血缘、评测标准、部署流程都有清晰定义;坏处是离真实业务远,平台搭得漂漂亮亮但没人想用,业务团队依旧私底下跑自己的脚本。我见过比较健康的形态其实是混合式:由算法负责人定技术标准,由一两个专职工程维护“很窄但很锋利”的工具链,比如数据质检、评测管理、标定校验这几样,而不是套一个巨型平台。对大多数团队来说,宽度适中的工具箱,比一个包罗万象的平台更实际。

2. 数据链路:3D视觉Infra的重灾区

2.1 采集这一关,比想象中要脏得多

很多项目在开始时不会把“数据采集”当成专项来做,觉得架好传感器录几天数据就行。实际上,3D传感器的采集质量受环境影响的程度,远高于2D相机。我给某自动化仓库项目做过数据侧改造,现场光线复杂,金属货架反光,透明塑料周转箱到处是。深度相机拍出来的点云经常出现飞点、空洞,甚至镜面重影。一开始录了1万帧,清洗完真正能用的不到一半,这个浪费非常惊人。

我后来在采集链路上强制加了“帧级质检”。每帧数据必须记录几个核心字段:无效点比例、深度图和RGB图的时间戳偏移、传感器温度、标定文件哈希。无效点比例超过5%就告警,时间戳偏移超过阈值就整段丢弃。这个判断逻辑不复杂,但能直接拦截掉大量脏数据。

def validate_frame(frame): invalid_ratio = frame.invalid_depth_pixels / frame.total_pixels ts_offset = abs(frame.depth_timestamp - frame.rgb_timestamp) if invalid_ratio > 0.05: raise DataQualityError(f"invalid depth ratio: {invalid_ratio:.3f}") if ts_offset > 5.0: raise DataQualityError(f"timestamp offset too large: {ts_offset:.1f} ms") return True

核心原则是:宁可少录,也不要把脏数据存进原始库。很多团队舍不得丢数据,结果坏数据混进训练集后,模型永远带着一个说不清的偏置,最后排查问题的时间远超重新采集的时间。数据采集这个环节,投入产出比其实很高,只是它不像模型效果那样能拿出来炫耀,容易被忽略。

2.2 3D标注为什么不能照搬2D那套流程

可以做一个直观对比:在2D图像里拉一个框,4个点或者8个点,几秒钟就完成;在点云里标注一个3D目标检测框,至少要确定中心坐标、长宽高和航向角,目标被遮挡时还要靠人去推测整体形状。如果是点云分割,那是逐点标注,成本是另一个数量级。视频序列还要涉及跨帧跟踪,标注员必须保证同一个物体在不同帧里的标签一致。所以“3D标注成本比2D高一个量级”这句话,不是夸张说法,而是普遍现实。

比标注成本更麻烦的,是标注标准的一致性。同样的半遮挡车辆,标注员A认为要标完整车,标注员B只标可见部分,两个框的IoU可能连及格线都够不到。我建议把标注规范当成代码来管理:必须包含每个类别的定义、遮挡截断规则、常见边界示例、兜底判断。甚至在标注工具里可以内置“同一目标两次标注偏差超过阈值就自动重标”的质检规则,通过重复标注统计一致性。很多人觉得标注就是“招几个人干活”的外包问题,但实际上它是一个需要规则、质检和版本管理的生产系统。

2.3 数据侧可以直接复用的成熟方案

这一块我按落地效率排序写,都是经过多轮项目验证的思路。

  • 预标注加人工修正:先用团队已有模型或公开模型跑一遍伪标注,标注员只负责改错和补漏,能把点击量压缩70%以上。这是最值得优先做的,因为大部分数据可以通过自动化预标注解决,真正需要人精标的只有边界情况和困难场景。
  • 主动学习:用模型的不确定性或熵值挑最“难”的样本送标,而不是均匀抽帧。第一个周期会稍微慢一点,因为模型还很弱,随着几个迭代周期推进,标注效率会越来越高,因为每次标注的数据都精准命中模型短板。
  • 合成数据加域随机化:用三维仿真渲染带真值的数据,配合随机光照、纹理、位置和遮挡,适合补长尾和冷启动。但合成数据做训练集可以,做测试集要谨慎,合成和真实之间存在域差,会让你对模型上线后的真实水平产生误判。
  • 数据版本与血缘管理:把数据集视为“可引用的对象”,每次训练记录数据集版本、标注规范版本、标定版本。这一点不产生炫酷Demo,但等线上出问题时能救命。没有血缘,遇到问题只能靠猜。
数据问题可复用方案约束条件
标注太贵预标注加人工修正需要一个性能尚可的底模
难例不饱和主动学习需要一套不确定性和聚类排序机制
长尾场景少合成数据加域随机化必须做真实域有效性验证
数据被污染帧级质检与版本管理需要少量工程投入建立规则

2.4 我们最后沉淀下来的数据管线

经历几个项目后,我习惯把数据管线的量级控制在“最小可用但足够透明”的程度。实际跑通的链路是:采集原始数据、帧级质检、清洗去重、关键帧抽取、预标注、人工标注或终审、数据集版本发布、供训练评测调用。前几步可以在早期做成普通脚本加配置文件,不必一上来就建设自动化平台。

但有一条底线是必须守住的:每个样本能回溯到它的采集时间、传感器ID、标定文件哈希、标注员ID。有了这条追溯能力,后面做主动学习、清洗、去重、问题定位都只是调用脚本的问题。自动化值得做,但我更愿意把资源先投到“透明”上。数据链路透明了,自动化的效果才真正值得信任,否则你自动化处理的不过是一堆不可解释的数据。这是我反反复复踩坑之后最深的体会。

3. 传感器对齐与标定:最容易被低估的工程坑

3.1 外参漂移,往往是从项目中期开始捣乱的元凶

很多3D视觉项目先在实验室里表现很好,到现场跑一两个月后精度下降,第一反应都是“模型不行”。我参与过的某机器人项目就是典型:上线两个月后识别准确率明显下降,团队花了两周重新训练模型,结果现场测试还是不好。最后把原始点云和图像做投影可视化,才发现激光雷达和相机的外参已经偏了。装配时的标定精度再高,也扛不住运输振动、温度循环和锁固螺丝的松动,重投影误差从0.3像素涨到了接近2像素,融合出来的特征全是错位的。

这种问题的隐蔽性在于,它不像算法退化那样可以从训练曲线里观察。它发生在物理世界,几乎没有任何显性提示,模型和数据的表现都在正常范围内,就是最终结果不对。做3D视觉Infra的人,必须把外参漂移当成一个持续性的运维问题,而不是一次性的标定任务。无论是固定式设备还是移动设备,都建议在系统设计阶段就为标定校验预留接口。

3.2 三类标定工作:内参、多传感器外参、手眼关系

一个完整的3D视觉系统通常涉及三类标定,很多团队只做了其中一种,甚至全套都没做,只是靠手工对齐。短时间能跑,时间一长一定出问题。

  • 内参标定:相机焦距、主点、畸变系数。一般出厂标定可以满足多数场景,但镜头被磕碰或更换后需要重新标定,这也是最容易被忽略的。
  • 多传感器外参:相机与相机、相机与LiDAR、LiDAR与IMU之间的坐标系变换。离线标定通过标定板或点云配准完成,最常用的思路是基于特征点最小化重投影误差,或者用点云配准方法做自动对齐。
  • 手眼标定:机械臂和搭载相机的相对位姿关系,抓取、测量类任务必不可少。常见做法是让机械臂带着相机运动到多个姿态,采集标定数据,解算变换矩阵。

标定文件不是算出来就可以,它必须被当成数据资产来管理。每次标定都应该生成一个可追溯的版本,包含标定时间、操作人员、传感器序列号、计算参数、验证结果。设计一个简单的标定管理系统,比很多算法优化都能更快提升整个系统的稳定性和问题定位效率。

3.3 时间同步问题:标签错得离奇,常常是因为时间戳没对齐

除了空间上的坐标变换,3D视觉系统还有一个容易被忽略的时间轴对齐问题。相机是固定帧率出图,LiDAR是旋转扫描,IMU是高频输出,三者时间戳如果偏差过大,就不存在统一的“现在”。如果点云的周期和图像的周期错位,哪怕只有几十毫秒,行人和车辆一旦移动,融合标签就会错位,模型学到的就是错配的特征对。

硬件触发是最可靠的时间同步方式,但不是每个传感器都支持。软同步则需要处理不同帧率之间的插值或近邻匹配,这里最重要的是明确设置最大允许偏移,超过阈值就直接丢弃或重采。我的工程习惯是,在每个传感器消息里写入统一时基,并记录每个数据帧的原始时间戳和接收时间戳,让“每个点来自哪个时刻”始终可以被追溯。这样虽然偶尔会丢帧,但至少不会在后期产出一堆无法解释的错误标签。

3.4 可复用的标定工具链:采集、计算、验证、固化

我推荐的标定流程很简单:标定数据采集、标定算法计算、自动验证、生成标定文件、固化到配置中心、每次数据采集记录标定哈希。其中自动验证是最关键的环节。用标定后的外参把3D点投影到图像上,计算重投影误差,设置一个通过阈值;再用多帧融合数据做可视化检查,看边缘是否对齐。只有验证通过的文件才算有效标定,否则一律不允许下游使用。

对无人值守设备和移动机器人,我还会加一个在线外参估计或者退化告警模块:周期性用场景中的自然特征估计当前外参偏差,一旦超过阈值就提示人工介入。有人会说这套东西太重,但替代方案往往是:等到精度崩了再去排查,模型、数据、标定混在一起,根本说不清是谁的锅。把标定当成持续运转的保障机制之后,这类排查能省掉一半以上时间,投入产出比非常可观。

4. 算法侧可以复用的成熟组合

4.1 不要急着造新网络,2D加3D的融合结构更实用

现在视觉方向有一个特点:2D视觉的基础模型已经非常成熟,而3D视觉受限于数据和算力,模型迭代反而缓慢。真正在落地系统中稳定出效果的,大多是2D和3D结合的结构。图像提供纹理和语义,点云或深度图提供几何结构,实现方式有很多,常见的是把点云投影到图像平面,在2D特征图上做融合;也可以把图像特征反投影到3D空间或鸟瞰视角,再和点云特征拼接。

对大多数业务场景,我的建议是直接采用成熟的融合骨架,在自己的数据上做微调,而不是从零开始研究新结构。新SOTA听起来很有吸引力,但如果团队没有足够的数据量和调参人力,反而容易陷入“复现不了论文结论”的泥潭。Infra的职责就是让团队不需要反复试网络结构,而是把精力集中到数据质量、评测定义和迭代闭环上。选一个稳定、有人维护、文档充足的backbone,比每次都跟着新论文换模型要靠谱得多。

4.2 点云预处理要标准化,不然模型结果不可比

点云算法有个容易被忽略的环节:预处理。同样的模型,不同的预处理参数,结果差异可能非常大。标准化包括:直通滤波裁掉无效区域、体素降采样减少点数、去除地面点、归一化坐标范围。每一步都要作为配置管理,而不是散落在各人的脚本里。我遇到过团队里两个同学用同一份数据训练同一种网络,结果差距很大,后来发现一个做了体素降采样,一个没做。这不是算法问题,是流程问题。

训练数据增强同样关键。3D视觉常用的增强方案包括:全局旋转、缩放、随机翻转、随机裁剪、对点云做随机遮挡模拟、帧抽取。这些增强不是为了炫技,而是把传感器在真实环境中的不稳定因素提前暴露给模型,比如点云缺失、遮挡、部分稀疏,让模型在训练时就已经适应这些噪声。增强策略一旦固定下来,需要写进配置,保证训练结果可复现,任何人拉同一份代码和配置都能跑出接近的结果。

4.3 评估体系:单指标会骗人,分层报告才是答案

3D视觉的任务类型不同,评估指标差异很大。这里不是要把指标定义背一遍,而是想提醒:平均值的背后可能藏着严重的长尾问题。

任务类型常用指标容易被掩盖的问题
3D目标检测3D IoU、BEV AP远距离、遮挡样本召回低
深度估计abs rel、RMSE边缘、弱纹理区域误差大
点云分割mIoU、point accuracy稀疏类别和边界区域性能差
位姿估计ADD(S)、旋转/平移误差对称物体的歧义性

我自己的项目里就出现过整体mAP看着不错、但按距离分层后远距离AP极差的情况。从那以后,我要求评测报告必须按场景类型、距离区间、光照时段、遮挡程度交叉分层输出。每次模型改动都出一份评测矩阵,而不是一个可炫耀的总分。这个习惯真的帮团队快速定位到“模型到底是在哪类数据上退步了”,而不是笼统地发现“效果变差了”。如果你现在还在用单一总指标验收模型,我建议你尽快改成分层报告,那个实打实省时间的工具,比多跑几次实验都值。

4.4 训练工作流:让每次实验都可回溯

训练层面最重要的不是追求速度,而是可复现。固定种子、固定数据版本、固定预处理配置、固定超参、固定环境镜像,每次训练记录一份完整元数据。当线上效果退化、需要定位“是不是某个改动导致”的时候,如果没有这些记录,只能靠猜。训练流程可复现,本质上是在给未来的自己留一条可以原路返回的路。

我见过一个最小可用的做法:每次训练开始前,训练脚本自动生成一个JSON,记录数据版本、标注版本、标定哈希、模型结构、超参数、环境镜像信息,训练结束后和权重文件一起归档。这比什么花哨的平台都管用。

{ "dataset_version": "ds_20250412", "annotation_version": "anno_v7", "calib_version": "calib_v3", "model_arch": "fusion_backbone_v2", "seed": 42, "max_epoch": 100, "learning_rate": 0.001, "image_hash": "sha256:3f2a..." }

等团队到了十几个人、训练任务多了以后,再考虑引入训练元数据管理类的平台也不迟。但底层的“每次训练都记录一份完整上下文”这个习惯,是任何平台都无法替代的。没有上下文的权重文件只是一个二进制文件,没法支撑后面的任何分析。

5. 部署、推理与监控:上线后的运维现实

5.1 真正的性能瓶颈,常常在前处理

很多团队把模型推理的耗时看得特别重,却忽略了3D视觉任务里前处理的关键地位。以点云为例,原始一帧可能包含数十万点,直接送进网络既不现实也没必要。可行的做法是先在采集或解码阶段完成ROI裁剪和降采样,再用体素化或编码模块把点云整理成模型需要的输入形态。这一步如果做得不好,耗时可能超过模型推理本身,成为整个链路的瓶颈。

在边缘设备上,我比较推荐“CPU做预处理,GPU或NPU做推理”的流水线,减少数据重复搬运。同时,模型量化要逐算子验证,因为某些稀疏算子量化后精度掉得很明显,简单依赖框架的自动量化不一定可靠,必须用业务数据集做前后对比。这里最忌讳想当然,一定要用真实评测报告说话。

5.2 部署架构和模型更新:影子模式是刚需

3D视觉模型更新最怕的就是“新模型上线后效果崩了,但不知道崩在哪”。解决办法不是直接替换,而是影子模式。让新旧模型在相同输入下并行推理一段时间,离线逐帧比对结果。这个思路在2D服务里很常见,3D里也完全适用,只是要注意数据记录量很大,保存完整点云开销高,通常只保存抽样帧和关键的输出结果就够用。

再配合灰度发布:先切一小部分设备或流量,观察关键指标稳定后再逐步提升。同时必须准备回滚路径,每个模型都对应一份完整的训练上下文,出问题时可以用旧权重一键回退。很多团队上线模型像在赌,要么全量上去,要么全量回滚,缺少中间状态。影子模式和灰度发布这套东西,是让3D模型稳定增长的关键。

5.3 线上监控:不要只盯算力,要盯模型行为

3D视觉系统的运维监控,除了常见的CPU、内存、时延,还必须增加几类3D专属指标。我一般会分四层来看,从底层输入到业务指标逐层覆盖。

  • 传感器健康层:无效点比例、丢帧率、标定漂移估计,这决定输入是否可信。
  • 模型输出分布层:预测置信度分布、类别比例统计,异常漂移往往先反映在这里。
  • 业务关键指标层:不同场景下的召回率和误报率,按设备或场景粒度切分。
  • 数据回流效率层:每天有多少低置信度样本进入待标注队列,有多少完成标注闭环。
监控对象观察方式典型触发动作
传感器健康无效点比例、丢帧率、外参偏差停机检查或动态补偿
模型输出分布置信度分位数、类别分布漂移分析输入来源,准备模型重训
业务指标分层召回率、误报率定位回归场景,重新评测
数据回流难例样本数、标注完成率调整采集策略,检查标注资源

只盯着CPU和内存去监控3D视觉服务,基本等于盲人摸象。模型行为的变化,很多时候不会带来算力指标的剧烈波动,但它直接决定了业务效果。把上面四层指标纳入日常监控后,很多问题在还没有影响到业务之前就被拦截了,这种前置发现能力极其重要。

5.4 数据回流闭环怎么真正转起来

模型上线后,最关键的是让数据回流闭环转起来。具体流程:线上自动抽取低置信度和错判样本、连同传感器状态一起入库、进入待标注队列、标注并质检、加入训练集和测试集、模型重训、影子模式验证、灰度发布。这个周期一般需要两周到一个月,具体取决于标注资源、数据规模和训练成本。

这个闭环里最难的不是技术,而是责任人不明确。如果没有人对“回流数量”负责,闭环很快会变成一潭死水。我见过一些团队的闭环跑得比较顺畅,是因为每周有固定例会只讨论三件事:这周回流了多少样本、哪些场景持续在退步、下一轮训练何时发布。这三件事比引入任何高端平台都管用。数据回流不是一次性的工程任务,而是一个需要持续经营和推动的运营机制。

6. 我沉淀下来的最小闭环与几个反直觉的体会

6.1 第一步永远是数据可追溯

如果让我给一个从零搭建3D视觉Infra的团队排序,我一定先把“数据可追溯”放在第一位。所谓可追溯,不是把所有数据堆在一个共享硬盘里,而是每个样本有唯一ID,能回答“这个样本是什么时候、由哪台设备、在什么标定状态下采集的,标注版本是什么”。做到这一点不需要重型平台,Git加对象存储加配置文件就足够起步。

为什么这个优先级最高?因为3D视觉的线上问题往往是多重因素叠加的,可能是模型退化,可能是标定漂移,可能是数据分布变了,也可能是标注规范变了。如果没有追溯能力,排查问题就像在没有指针的迷宫里乱撞。有了追溯能力,至少能把范围迅速缩小到某个环节,效率提升显著。

6.2 评估可复现和持续训练,排序不能乱

数据可追溯之后,第二步是评估可复现:固定评测集、固定评测脚本、固定评测环境,每个模型都出一份结构化报告。第三步才是持续训练:数据回流通道跑起来,模型定期迭代。这三步的顺序不能颠倒。很多团队直接跳到“持续训练”,结果因为评测不可复现,根本不知道模型到底是变好了还是变坏了。

机器学习项目里,觉得变好了和证明了变好了是两回事。评测可复现是判断模型迭代方向是否正确的唯一依据,没有这一步,后面所有自动化和持续训练都建立在流沙上。很多团队经常加班调模型但看不到明显进步,原因往往不是模型不行,而是评测本身不稳定,导致每一次改动都像在猜硬币。

6.3 几个反直觉的体会

这几年在3D视觉Infra上踩过的坑,给了我几个反直觉的结论,写下来也算是一种沉淀。

一个体会是:不要一开始就建重平台。我见过一些团队花半年搭数据标注平台、模型管理平台,结果业务跑得飞快,平台却没人用。轻量脚本加清晰规范,一样能撑住早期阶段,平台应该在流程成熟后再考虑,而不是反过来。

另一个体会是:标定和时间同步的投入产出比,远高于大多数人的想象。算法模型做得再好,只要传感器外参偏了、时间戳错位了,前面的一切都是白搭。每次项目进场,我最先检查的一定是标定链路,而不是模型精度,这个顺序帮助我避开过非常多看似玄学的线上故障。

还有一个体会:3D模型的稳定性比极致精度更重要。线上环境千差万别,一个平均分略低但各场景都稳定不掉点的模型,远比一个平均分第一但偶发灾难的模型值得上线。稳定性是需要靠分层评测和长尾回灌来换的,不是靠调参能得到的。

最后说一句。文档看起来最不重要,但标注规范、标定记录、评测报告如果不像代码一样维护,团队就永远在重复踩同一个坑。文档不是额外工作,而是3D视觉Infra本身的一部分。如果我只能给出一条建议,那就是:从让数据可追溯开始,哪怕只是一个简单的脚本,也比画一张漂亮架构图有用得多。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询