3. 机器视觉基础与Ryzen Embedded适配

机器视觉系统在工业现场承担的是“用图像替代人眼、用算法替代判断”的任务。它并不是单一算法,而是一条从光子到决策的完整链路:镜头把场景成像到传感器,传感器把光强转成数字像素,处理器对像素做预处理与特征提取,再交给检测或识别模型输出类别、位置或测量值,最后由上层控制逻辑决定放行、剔除或报警。理解这条链路,才能理解 Ryzen Embedded 在其中的位置——它不是“跑一个模型”的芯片,而是承载整条流水线、并决定实时性与吞吐量的计算底座。

一、从图像采集到识别的基本流程

采集阶段的核心是把物理世界稳定地映射为数字图像。关键参数包括分辨率、帧率、曝光时间、增益与触发方式。以一条典型产线检测为例:被测工件尺寸约 80 mm × 60 mm,要求检测 0.1 mm 级缺陷,若选用 500 万像素(2592 × 1944)面阵相机、视场约 100 mm × 75 mm,则单像素对应约 0.0386 mm,满足 0.1 mm 缺陷至少覆盖 2~3 个像素的采样要求。曝光时间需与运动速度匹配:若工件以 200 mm/s 运动,曝光 200 μs 内位移约 0.04 mm,小于一个像素,运动模糊可接受。触发方式上,编码器或光电开关给出硬触发,可保证图像与工件位置一一对应,避免自由运行带来的相位漂移。

预处理的目标是“让后续算法看到更干净、更一致的图像”,常见操作包括去噪、灰度化、对比度增强、二值化、形态学开闭运算、ROI 裁剪与几何校正。工程上要避免过度处理:例如高斯滤波核过大虽能压噪,但会削弱细小缺陷边缘;自适应阈值在光照不均时比全局阈值更稳,但计算量更高。ROI 裁剪是最直接的加速手段——若只关心图像中央 1/4 区域,后续所有算子只在该区域计算,数据量直接降为 1/4。

特征提取把图像转为可判别的数值描述。传统方法包括边缘、角点、斑点、HOG、LBP 与轮廓几何量(面积、周长、圆度、最小外接矩形)。深度学习方法则由卷积网络自动学习特征。二者并非互斥:在定位与尺寸测量中,传统特征往往更快更可解释;在复杂缺陷分类中,CNN 更具泛化能力。目标检测与识别阶段输出边界框、类别与置信度,常见模型有 YOLO 系列、SSD、Faster R-CNN,识别则可用分类网络或 OCR。判断结果是否可用,通常看置信度阈值、IoU 与连续多帧一致性,而不是单帧结果。

机器视觉处理链与 Ryzen Embedded 角色定位 图像采集 镜头 / 传感器 曝光·增益·硬触发 MIPI / USB3 / GigE 2592×1944 @ 30fps 预处理 去噪·灰度·增强 二值化·形态学 ROI 裁剪·校正 数据量可降至 1/4 特征提取 边缘·角点·斑点 HOG·LBP·轮廓 CNN 自动特征 面积·圆度·周长 检测与识别 YOLO / SSD / Faster R-CNN 分类网络 / OCR 框·类别·置信度 IoU·多帧一致性 AMD Ryzen Embedded(CPU + Radeon GPU + 内存/IO 控制器) CPU:调度、预处理、传统特征、控制逻辑 | GPU:CNN 推理、并行滤波 | IO:相机接口、触发、实时输出 统一内存架构减少拷贝,CPU 与 GPU 共享数据,降低端到端延迟 决策输出 放行 / 剔除 报警 / 记录 PLC / 执行器 采集 ~5ms 预处理 ~3ms 特征 ~4ms 推理 ~12ms 输出 ~1ms 示例节拍:单帧端到端约 25ms,对应约 40fps 处理能力(数值为教学示例,非实测)

二、Ryzen Embedded 在链路中的角色

Ryzen Embedded 是一类集成 CPU、Radeon GPU、内存控制器与丰富 IO 的嵌入式处理器,典型型号如 V1000、V2000、R2000 系列,TDP 覆盖 6~54 W。它在机器视觉链路中承担三个层面的角色。

第一是数据汇聚与调度中心。相机通过 MIPI CSI、USB3 Vision 或 GigE Vision 接入,Ryzen Embedded 的 PCIe、USB 与千兆网控制器负责接收图像流,CPU 负责触发同步、多相机时序与任务调度。对于多工位系统,CPU 需要保证各相机曝光与产线节拍对齐,避免图像错位。

第二是异构计算执行体。预处理中的滤波、缩放、色彩转换等规则并行操作适合放在 Radeon GPU 上以 OpenCL 或 ROCm 执行;传统特征提取与逻辑判断通常留在 CPU,因为分支多、数据依赖强;CNN 推理则优先使用 GPU,借助 MIOpen、ONNX Runtime 或 OpenVINO 等运行时把模型映射到 GPU。Ryzen Embedded 的统一内存架构让 CPU 与 GPU 共享同一物理内存,减少了传统独显方案中“主机内存—显存”的反复拷贝,对 1080p 级图像的端到端延迟改善明显。

第三是实时性与功耗的平衡点。产线节拍往往要求 20~50 ms 内完成一帧处理。若单帧预算 25 ms,采集约 5 ms、预处理约 3 ms、特征约 4 ms、推理约 12 ms、输出约 1 ms,则总余量约 0 ms,说明必须做优化:降低分辨率、缩小 ROI、量化模型或减少后处理。Ryzen Embedded 的优势在于可在 15~25 W 级别维持多核 CPU 与 GPU 同时工作,适合无风扇或小体积工控机箱。

三、适配时的关键工程判断

把算法落到 Ryzen Embedded 上,需要关注四件事。其一是接口带宽:GigE 相机单口约 1 Gbps,对应 1080p@30fps 的未压缩流已接近上限,多相机需用多网口或万兆;USB3 Vision 单口约 5 Gbps,但多设备共享控制器时带宽会下降。其二是内存带宽与容量:GPU 推理与 CPU 预处理同时访问内存,双通道 DDR4-3200 比单通道更适合;建议至少 8 GB,多相机或高分辨率场景 16 GB。其三是软件栈:Linux 下可用 V4L2 采集、OpenCV 预处理、ONNX Runtime 推理;Windows 下可用 DirectShow/GenICam 与 DirectML。其四是散热与功耗策略:持续满载时需确认 TDP 配置与散热能力,避免降频导致节拍抖动。

适配判断的实用顺序:先确认相机接口与带宽是否够用,再确认内存容量与通道数,然后确认推理运行时能否调用 GPU,最后用实际节拍验证端到端延迟。任何一步不满足,优先调整分辨率、ROI 或模型规模,而不是先换硬件。

下面给出一份可直接参考的适配检查表,用于在选型或调试阶段逐项确认。

检查项示例目标值判断依据
相机接口与带宽GigE 单口 ≤ 900 Mbps1080p@30fps 未压缩约 1.5 Gbps,需压缩或降帧
内存容量与通道≥ 8 GB,双通道CPU 预处理与 GPU 推理并发时避免换页
推理运行时ONNX Runtime + ROCm/DirectML确认模型算子被 GPU 支持,否则回退 CPU
单帧延迟预算≤ 25 ms采集+预处理+特征+推理+输出逐段计时
持续功耗与散热TDP 15~25 W,温度 < 85℃满载 30 分钟无降频、无节拍抖动

需要强调的是,Ryzen Embedded 并不会自动让视觉算法变快。它的价值在于把采集、预处理、特征与推理放在同一颗芯片内,用 CPU 的通用性与 GPU 的并行性覆盖整条链路,并通过统一内存降低数据搬运开销。真正决定系统能否落地的,仍是分辨率、ROI、模型规模与节拍预算之间的匹配关系。理解这条链路和每个环节的量化约束,才能在 Ryzen Embedded 上做出稳定、可复现的机器视觉方案。