2. 硬件选型基础:工业相机 vs 网络相机、传感器尺寸与分辨率选择、镜头焦距与视场角计算、接口类型对比
做多摄像头项目,第一步不是写代码,而是选硬件。选错了,后面所有努力都白费。我见过太多团队,算法调得漂漂亮亮,结果因为相机接口带宽不够,或者镜头视场角对不上,整个系统推倒重来。今天咱们就把这些基础打牢。
2.1 工业相机 vs 网络相机:到底选哪个?
很多人一上来就问:「哪个更好?」其实没有的好坏,只有合不合适。我个人的习惯是:先看应用场景,再定相机类型。
| 对比维度 | 工业相机 | 网络相机(IP Camera) |
|---|---|---|
| 传输协议 | USB3.0 / GigE / Camera Link | RTSP / ONVIF / HTTP |
| 延迟 | 微秒级(< 1ms) | 百毫秒级(100-500ms) |
| 同步精度 | 硬件触发,纳秒级 | 软件同步,毫秒级 |
| 图像质量 | 无损原始数据 | 有损压缩(H.264/H.265) |
| 部署距离 | USB3.0: 5m / GigE: 100m | 网线可达100m,可走光纤 |
| 成本 | 较高(单台千元到万元) | 较低(单台几百到几千) |
| 典型场景 | 机器视觉、科研、同步采集 | 安防监控、远程巡检 |
核心结论:多摄像头同步采集,必须选工业相机。网络相机的延迟和压缩问题,会让你的同步精度大打折扣。我曾经在一个项目里试过用网络相机做多视角动作捕捉,结果帧间抖动超过50ms,数据根本没法用。
2.2 传感器尺寸与分辨率选择
传感器尺寸决定了相机的「底子」有多大。分辨率则是像素数量。这两个参数直接影响图像质量和视场角。
常见传感器尺寸
- 1/3":小底,常用于低成本相机,低照度表现一般
- 1/2":中等尺寸,平衡性价比
- 2/3":大底,高灵敏度,适合弱光环境
- 1" 及以上:超大底,专业级,价格也高
我的经验:传感器尺寸越大,单个像素的感光面积越大,信噪比越高。但大底也意味着镜头要更大、更贵。选型时别只看分辨率,传感器尺寸才是决定画质下限的关键。
分辨率怎么选?
分辨率不是越高越好。高分辨率意味着高数据量,对传输带宽和处理能力都是考验。我建议按这个逻辑来:
- 先确定检测精度:比如你要识别一个 1cm 的物体,需要至少 10 个像素覆盖
- 再算视场大小:视场 1m 宽,精度 1cm,那至少需要 1000 像素
- 留余量:实际选型时,分辨率翻倍比较稳妥
注意:分辨率越高,帧率通常越低。比如 500 万像素的相机,在 USB3.0 下最高帧率可能只有 30fps,而 200 万像素可以跑到 60fps。同步采集时,所有相机的帧率必须一致,否则同步会乱。
2.3 镜头焦距与视场角计算
镜头选型是门学问。焦距决定了你能看到多宽、多远。公式其实很简单,但很多人记不住。我直接给干货。
核心公式
视场角(水平) = 2 × arctan( 传感器宽度 / (2 × 焦距) )
视场宽度 = 2 × 距离 × tan( 视场角 / 2 )
举个例子:
- 传感器尺寸:1/2"(宽度 6.4mm)
- 焦距:8mm
- 工作距离:2m
算一下:
水平视场角 = 2 × arctan( 6.4 / (2 × 8) ) ≈ 43.6°
视场宽度 = 2 × 2 × tan(43.6° / 2) ≈ 1.6m
也就是说,在 2 米外,你能拍到 1.6 米宽的画面。
避坑指南:我曾经在一个项目里,选了 12mm 镜头拍 3 米外的目标,结果视场只有 1 米宽,目标经常跑出画面。后来换成 6mm 镜头才解决问题。选镜头时,一定要留足视场余量,至少 20%。
焦距与视场角对照表(1/2" 传感器)
| 焦距 | 水平视场角 | 垂直视场角 | 典型用途 |
|---|---|---|---|
| 4mm | 77° | 59° | 广角,大场景 |
| 6mm | 56° | 42° | 中等视场 |
| 8mm | 44° | 33° | 标准视角 |
| 12mm | 30° | 22° | 长焦,远距离 |
| 16mm | 23° | 17° | 窄视角,特写 |
2.4 接口类型对比:USB3.0 vs GigE vs Camera Link
接口决定了数据传输的带宽、距离和稳定性。多摄像头系统里,接口选型直接影响同步方案。
| 接口 | 带宽 | 最大距离 | 同步方式 | 成本 | 适用场景 |
|---|---|---|---|---|---|
| USB3.0 | 5 Gbps | 5m(可延长) | 软件触发 / 硬件触发 | 低 | 桌面级、小系统 |
| GigE | 1 Gbps | 100m | IEEE 1588 / 硬件触发 | 中 | 分布式、远距离 |
| Camera Link | 2-8 Gbps | 10m | 硬件触发 | 高 | 高速、高分辨率 |
我的建议:多摄像头同步采集,首选 GigE 接口。原因有三:一是距离远,相机可以分散布置;二是支持 IEEE 1588 精确时间协议,同步精度可达微秒级;三是布线方便,一根网线搞定数据和供电(PoE)。USB3.0 适合相机离主机近的场景,Camera Link 则留给高速视觉系统。
2.5 知识体系总览
下面这张图,把本章的核心知识点串起来了。你可以把它当作选型时的检查清单。
2.6 选型实战清单
最后,我把自己常用的选型清单分享给你。每次做项目前,按这个过一遍,基本不会漏:
- 确定同步精度要求:微秒级还是毫秒级?决定用工业相机还是网络相机
- 算视场和分辨率:根据目标大小和距离,用公式算焦距和分辨率
- 选接口:距离近用 USB3.0,距离远用 GigE,高速用 Camera Link
- 留余量:分辨率翻倍,视场角多 20%,带宽留 30% 余量
- 测试验证:先买一台样机,跑通流程再批量采购
最后提醒:别贪便宜买杂牌相机。工业相机领域,Basler、FLIR、海康威视、大恒这些品牌,驱动稳定、SDK 完善,能省很多调试时间。我早期用过一款小厂相机,驱动三天两头崩溃,最后项目延期两个月,得不偿失。