目录


一、为什么不能一上来就买一体机

做机器视觉检测,最常见的浪费是:需求还没验证,先砸几十万买一体机

听厂商讲完"输入文字直接生成算法"“默认携带多种算法”“盒子先行交付、后期完善”,很多决策者心动下单。但真实踩坑通常是三连击:

  1. 需求没验证:到底检什么、误检漏检谁担责、客户愿不愿意为这个精度买单——没人用最低成本先证伪一遍。
  2. 场景不匹配:买来的算法是厂家的,你自己训的模型灌不进去,前期投入被替换成"只验证了需求"。
  3. 经济账崩:GPU 独占利用率掉到 10%,单位推理成本 ×10;日调用没到 5 亿 tokens 拐点,买断即背上贬值资产。

核心方法论:硬件升级是"接力"不是"重来"。手机训的同一个 YOLOv8n,到 L1 只换导出格式(engine/rknn),到 L2 只换取帧源(工业相机 SDK),模型资产、数据规范、后处理全程复用。钱花在"成像与可靠",不花在"重做算法"。


二、硬件阶梯 L0–L4 与决策树

视觉检测硬件从手机到产线是一条渐进阶梯,我们习惯分成五档。先从定义讲起,避免后面引用术语时没锚点:

形态一次性成本(单工位)解决的核心问题
L0手机 PoC¥0(复用)/ <¥0.15万(专购带 NPU)验证"该不该做、怎么做"
L1边缘盒子+相机¥0.1万–0.5万7×24 连续自动跑、接产线动作
L2工控机+工业相机¥1.5万–5万+测得准、多相机、恶劣工况、运动抓拍
L3视觉检测一体机¥5万–20万+标准化行业质检、规模交付、资质 SLA
L4大模型一体机¥20万–100万+(常走租赁)自然语言配置、开放词汇、多模态认知

2.1 决策树(我在哪一档)

          需求还没验证 / 只看能不能做?
               │ 是 → 【L0 手机 PoC】
               ▼ 否
          要 7×24 连续自动跑 + 接产线动作?
               │ 否 → 留在 L0
               │ 是 → 【L1 边缘盒子】  (¥0.1万–0.5万)
               ▼
          要 测得准 / 多相机 / 恶劣工况 / 运动抓拍?
               │ 否 → 留在 L1
               │ 是 → 【L2 工控机+工业相机】  (¥1.5万–5万+)
               ▼
          场景标准化 + 无算法团队 + 多产线复制 + 要资质/SLA?
               │ 否 → 留在 L2
               │ 是 → 【L3 视觉检测一体机】  (¥5万–20万+)
               ▼
          还要 自然语言配置 / 开放词汇 / 多模态认知 / 知识库?
               │ 否 → L3 足够
               │ 是 → 【L4 大模型一体机】  (¥20万–100万+,常走租赁)

判据速记:能不能跑→L0;连续跑→L1;测得准→L2;规模交付→L3;认知增强→L4。

2.2 资产复用清单(哪档还能保住你的模型)

复用什么改什么资产归属
L0训练 best.pt、数据规范、后处理—(起点)你的
L1best.pt、后处理、数据只重导出格式(engine/rknn)你的
L2best.pt、后处理、数据只换取帧源(GenICam/SDK)你的
L3⚠️ 分叉买现成=厂家;定制集成=你的
L4小模型作前端/知识输入大模型底座常是厂家的底座厂家,前端可你的

⚠️ L3 关键修正:买现成 L3 用厂家算法,你的 YOLOv8n 通常灌不进去,前期 PoC 价值仅剩"验证需求";定制集成可保留模型,但已接近"L2 自研+外壳"。拍板前必问自己:要"能用的检测"还是"属于我的检测能力"?


三、L0 手机 PoC:YOLOv8n 训练到端侧部署实测

手机只做验证不做生产——但这一阶段的成果(模型+数据+后处理)要一路复用到 L2,所以链路必须真跑通

3.1 环境与训练

实测环境:ultralytics 8.4.121,Python 3.10+,GPU 训练(A10 22GB)。

# 训练(推荐用 Python API,别把 shell 命令粘进 notebook 的 python cell)
from ultralytics import YOLO

model = YOLO('yolov8n.pt')
model.train(
    data='data.yaml',
    imgsz=640,
    optimizer='AdamW',
    epochs=300,            # 小数据集配合早停
    batch=64,              # 按显存调整
    mosaic=1.0, mixup=0.1, copy_paste=0.1,   # 增广
    name='train'
)

先用 coco8(8 张图)冒烟测试证环境,但 coco8 结果不可部署——它只证明环境跑得通。真实集用 Roboflow / 自有标注(采集铁律:模型学的是你拍出来的样子,采集条件必须与产线一致)。

3.2 导出(8.4.121 新语法,已踩坑)

from ultralytics import YOLO
model = YOLO('runs/detect/train/weights/best.pt')

# Android / LiteRT:全整数量化必须传 data= 校准集(≥300 张),否则精度崩
model.export(format='litert', quantize='int8', data='data.yaml', imgsz=640)

# iOS / CoreML:仅权重量化,不需也不接受 data=(传了报 AssertionError)
model.export(format='coreml', quantize='int8', imgsz=640)

版本坑速查(按报错对齐)

现象修复
int8=True 报错WARNING 'int8' deprecated改用 quantize='int8'
format='tflite' 失效导出格式不对改用 format='litert'
CoreML 传 data 报错AssertionError: 'data' not supported for coremlCoreML 仅权重量化不需校准,data 仅 litert/tflite 需要
LiteRT 校准不足Using default data=coco8.yaml ... found 4(应≥300)强制传真实 --data,否则精度崩
notebook 语法python -c "..." 粘进 Python cell → SyntaxError用 Python API 或 ! 前缀

3.3 手机部署三条路

  1. Termux + Python(最快验证,CPU 跑 INT8 即可)——验证算法可行性。
  2. Android App(CameraX + TFLite NNAPI delegate)——正式上 NPU。
  3. NCNN(国内高性能,需转 ncnn);iOS 重新 export format=coreml

INT8 导出不含 NMS,端侧需自做后处理(置信度过滤 + 每类 NMS)。推理脚本要点:letterbox 预处理 + INT8 量化 IO 自适应 + 输出 layout 自适应 (C,8400)/(8400,C) + 每类 NMS + 画框;顶部 NUM_CLASSES/CLASS_NAMES 要与 data.yaml 对齐。


四、逐级升级:L1 边缘盒子与 L2 工控机选型对比

4.1 L1 边缘盒子选型(Jetson Orin Nano vs RK3588)

维度Jetson Orin Nano (8GB)RK3588
AI 算力40 TOPS (INT8)6 TOPS NPU
参考价¥3500–4000¥800–2000(板);SoM 量价 ¥300–600
生态CUDA/TensorRT/DeepStreamRKNN-Toolkit2(国产友好)
国产化美国 NVIDIA,供货有不确定性全国产瑞芯微,信创友好
YOLOv8n@640~80–140 FPS~30–50 FPS
量产可用性中(开发板导向)高(国内大量工业产品在用)

必避坑

  • Jetson Nano(2019 老款 0.5 TOPS)≠ Orin Nano(40 TOPS),差 80 倍,采购认准 “Orin”;
  • RK3568 ≠ RK3588(低端 1 TOPS NPU),认准 3588。

迁移骨架(绝不重新训练)

# Jetson:导出 TensorRT engine,predict 自动走 GPU/DLA(Orin 无独立 NPU,AI 跑在 GPU+DLA)
model.export(format='engine', half=True, imgsz=640)
# 推理:YOLO('best.engine').predict(source=...) 

# RK3588:用 RKNN-Toolkit2 把 best_int8.tflite 转 best.rknn(tflite 已 INT8,do_quantization=False)
# from rknn.api import RKNN; rknn.load_tflite(model='best_int8.tflite')
# rknn.build(do_quantization=False); rknn.export_rknn('best.rknn')
# 推理端:rknn.init_runtime(target='rk3588')

三不变两改:不变=权重/数据规范/后处理;改=推理格式 + 预处理委托代码。

4.2 L2 工控机 + 工业相机

触发信号:要精度测量 / 多相机 / 恶劣工况 / 运动抓拍。

  • IPC:无风扇优先(防尘静音),i5 级 ¥5000–9000;网口数 ≥ 相机数。
  • 相机GigE Vision 最常用(100m 布线、多相机易扩展),全局快门 + 外部触发必选,卷帘快门产线禁用;国产优先海康机器人/大恒/华睿。
  • 镜头:测尺寸必须远心镜头(消除透视误差)。
  • 光源打光决定上限,模型只逼近上限——很多"模型不准"是光没打对,换光源常比换相机提效。
  • 模型复用:只换取帧源,用 GenICam/Harvesters(跨厂商:Basler/海康/大恒通用),推理仍用你的 YOLOv8n。成本 ¥1.5万–5万+。

五、L3 一体机与 L4 大模型一体机:边界与话术拆穿

5.1 L3 vs L2:买成品还是自研

维度L2 自研L3 成品
算法你的 YOLOv8n厂家预置
交付周期周~月天~周
资质/SLA自己补原生带
成本¥1.5万–5万¥5万–20万+
资产你的厂家的

触发 L3:标准化行业质检(PCB/药品/食品/汽配)/ 无算法团队 / 多产线复制 / 招标要资质 SLA。国产厂商:海康机器人、华睿、大恒、矩子、劲拓、天准、凌云光、奥特维。

与 L4 边界:L3 干确定的质检(专用小模型),L4 干不确定的认知(大模型多模态),互补不替代——真实产线 = L3 实时质检(确定性)+ L4 工艺优化/根因分析/自然语言报表(认知)。

5.2 L4 大模型一体机:四句话逐句拆穿

厂商常见四句话,工程师采购前务必心里有数:

  1. “输入文字生成算法” → 多在"深度合成算法备案"语境下讲,本质是自然语言配置 / 低代码编排,不是凭空生成新 CV 算法。“生成式算法"≠"生成算法”,别被字面带偏。
  2. “默认携带多种算法” → 预置的是大模型通用能力 + 一批传统 CV 小模型(后者常白送),这"多种算法"正包含 L3 那类专用模型,并非额外黑科技。
  3. “盒子先行交付完善” → 初始可能就是硬件盒子,模型在交付期才针对你的需求补齐。验收必须看"交付时模型成熟度",别只验收硬件。
  4. “后期运维” → 需专门团队或原厂驻场,隐性 opex 高,写进 SLA 才算数。

成本拐点:GPU 独占利用率 40–65%,若应用没吃饱掉到 10%,单位推理成本 ×10;经验值日调用 ~5 亿 tokens 才摊薄硬件,低于拐点公有云 API 反而更便宜。买断 vs 租赁:capex 高 + 技术迭代快,按月/按工位租赁(capex→opex)更适配。

政企决策逻辑:报价权重仅 10–20%,主因是合规/资质/案例/政策任务(信创适配、等保/密评、数据不出域、本地化、厂商案例)。

5.3 L4 真实落点(站 L3 之上,不是替代)

  • 自然语言配置检测任务:开放词汇/零样本,长尾新缺陷免训练上线("把这种新划痕也标出来"一句话搞定)。
  • 缺陷根因分析:关联工艺参数/工单/规格书,从"检出"走向"纠因"。
  • 工艺优化建议、自然语言报表与巡检总结。
  • 多模态联合质检、质检知识库问答。

价值主线:大模型负责"认知/分析/配置",检测精度仍由 L3 专用小模型保证。别让大模型去干它不擅长的毫秒级实时框选。


六、避坑清单与选型 Checklist

  1. 未验证需求就买 L3/L4 —— 方向错误的钱,企业 AI 落地最常见浪费。
  2. 买 Jetson Nano 老款当 Orin Nano —— 差 80 倍,认准 “Orin”;RK 认准 3588 非 3568。
  3. L3 误以为模型还是自己的 —— 买现成用厂家算法,前期 PoC 价值仅剩需求验证。
  4. 打光决定上限 —— L2 很多"模型不准"是光没打对。
  5. 卷帘快门上产线 —— 运动物体必须全局快门 + 外部触发。
  6. INT8 校准集不足 —— 迁盒子时 LiteRT 全整数量化需 ≥300 张真实图校准(CoreML 仅权重不需)。

选型 Checklist(评审直接勾)

  • 需求是否已被 L0 验证真实(未验证别砸钱买硬件)
  • 模型精度与数据闭环是否跑通
  • L1:需 7×24 / 自动触发 / 接产线动作?
  • L2:需精度测量 / 多相机 / 恶劣环境 / 运动抓拍?
  • L3:标准化场景 / 无算法团队 / 多产线 / 要资质 SLA?→ 并确认"买成品 or 保模型"
  • L4:需自然语言配置 / 开放词汇 / 多模态认知?

结语与参考资料

视觉检测落地,最贵的一段决策(“上不上一体机、上哪一档”)是可以被清单化的:先手机证伪、再逐级接力、模型资产全程复用,到 L3 才正视"买成品还是保模型"的分叉,L4 只作为认知增强层而非检测替代。把这条路径跑通,capex 通常能从直接上 L3/L4 的几十万压到 L0–L2 的几万封顶。

完整方案可以到公众号获取.

更多推荐