1. 光学触控基础:红外与摄像头原理、光路设计基础、触控区域标定方法
各位好,我是老张。做光学触控系统有些年头了。今天咱们聊聊最基础的东西——别小看基础,我见过太多项目栽在基础上。
光学触控,说白了就是利用光来感知手指的位置。你想想看,手指碰到屏幕,光路被切断或者反射发生变化,系统捕捉到这个变化,算出坐标。就这么简单?嗯,细节里全是坑。
1.1 红外与摄像头原理
目前主流的光学触控方案,就两种:红外对管方案和摄像头方案。我分别说说。
1.1.1 红外对管方案
原理很简单:屏幕四周排一圈红外发射管和接收管。发射管发出红外光,接收管等着收。手指一挡,光路断了,接收管收不到信号,系统就知道“这里有东西”。
我个人习惯把这种方案叫做“光栅式”。它像一张隐形的网,手指穿过哪根“网线”,坐标就出来了。
关键参数:
- 发射管波长:850nm 或 940nm(940nm 抗环境光干扰更好)
- 扫描频率:通常 50-200Hz
- 对管间距:直接影响精度,一般 5-10mm
我在项目中遇到过一个问题:某批红外管波长漂移了 20nm,结果接收灵敏度直接掉了 30%。嗯,元器件批次管控很重要。
1.1.2 摄像头方案
摄像头方案,也叫“机器视觉方案”。在屏幕角落装广角摄像头,配合边缘的反射条或主动光源。手指靠近屏幕时,摄像头拍到手指的影子或反光点,通过图像处理算出位置。
这种方案精度更高,但计算量也大。说白了,就是用算力换精度。
| 对比项 | 红外对管方案 | 摄像头方案 |
|---|---|---|
| 精度 | 中等(受对管间距限制) | 高(可达亚毫米级) |
| 抗环境光 | 较好(调制光) | 较差(需算法补偿) |
| 成本 | 低 | 高 |
| 多点触控 | 有限(易产生鬼点) | 支持(需算法区分) |
| 维护难度 | 低 | 中(需定期标定) |
我的建议:如果做教育白板、自助查询机这类对成本敏感的场景,红外对管方案够用。如果是高端会议平板、设计绘图屏,老老实实上摄像头方案。
1.2 光路设计基础
光路设计,是光学触控的灵魂。光路没设计好,后面算法再牛也救不回来。
核心就三个字:全覆盖。确保屏幕表面任何位置,手指都能被至少一条光路覆盖到。
1.2.1 红外对管的光路布局
常见布局有两种:
- 对射式:发射管和接收管面对面安装。光路是直线。优点是结构简单,缺点是边缘有盲区。
- 反射式:发射管和接收管在同一侧,对面放反射条。光路走一个来回。优点是节省空间,缺点是反射条容易脏。
我记得有一次做 86 寸大屏,用了对射式。结果屏幕边缘 2cm 范围内,手指怎么点都没反应。后来发现是发射角度和接收角度没对齐,光路在边缘区域形成了“死区”。
避坑指南:我曾经因为赶工期,没仔细算发射管的半功率角。结果光路在屏幕中间区域重叠太多,边缘却覆盖不到。后来重新画 PCB 才解决。光路设计阶段,一定要用光学仿真软件跑一遍。
1.2.2 摄像头方案的光路设计
摄像头方案的光路设计,核心是视场角(FOV)和安装位置。
一般用两个或四个摄像头,分别放在屏幕的角落。每个摄像头的视场角要覆盖整个屏幕。但有个问题——摄像头离屏幕越近,畸变越大。
我常用的做法是:
- 先确定屏幕尺寸和摄像头安装位置
- 计算需要的视场角(一般留 10-15% 余量)
- 选择合适焦距的镜头
- 用棋盘格标定板做畸变校正
你想想看,如果摄像头装歪了 1 度,屏幕边缘的坐标误差可能达到 5mm 以上。这就是为什么标定那么重要。
1.3 触控区域标定方法
标定,就是把摄像头或红外管看到的“物理世界”,映射到“屏幕坐标”。
不标定?那系统根本不知道手指对应屏幕上的哪个像素。
1.3.1 红外对管方案的标定
红外对管方案的标定相对简单。主要是做阈值标定:
- 无触摸时,记录每个接收管的基准值(背景光强)
- 设定一个阈值(通常比基准值低 10-20%)
- 当接收值低于阈值,判定为有触摸
但有个坑:环境光会变化。早上阳光直射和晚上开灯,基准值完全不同。
我的做法:做动态阈值。每隔一段时间(比如 1 秒)重新采集一次基准值,用滑动平均滤波。这样环境光缓慢变化时,系统能自动适应。
1.3.2 摄像头方案的标定
摄像头方案的标定复杂得多。需要做几何标定和颜色标定。
几何标定常用的方法是:
- 在屏幕上显示 4 个或 9 个标定点(通常是屏幕四角和中心)
- 用手指或专用触控笔依次点击这些点
- 系统记录摄像头看到的“物理坐标”和屏幕的“像素坐标”
- 通过透视变换或多项式拟合,建立映射关系
我一般用 16 点标定。点越多,精度越高,但标定时间也长。16 点标定后,误差能控制在 1mm 以内。
| 标定点数 | 适用场景 | 典型精度 | 标定时间 |
|---|---|---|---|
| 4 点 | 快速部署、演示 | ±3mm | 10 秒 |
| 9 点 | 一般商用 | ±1.5mm | 30 秒 |
| 16 点 | 高精度场景 | ±0.5mm | 1 分钟 |
| 25 点 | 实验室/研发 | ±0.2mm | 2 分钟 |
小技巧:标定点的顺序不要固定。我习惯随机打乱顺序,防止操作者形成肌肉记忆,导致标定数据偏差。
1.4 知识体系总览
下面这张图,把本章的核心内容串起来了。你可以把它当作光学触控基础的知识地图。
这张图把三大模块的关系理清楚了。你从左上角开始看,红外与摄像头原理是基础,光路设计是骨架,标定方法是最后一步。三者缺一不可。
好了,第一章就聊到这儿。记住一句话:基础不牢,地动山摇。光学触控的精度,从原理阶段就已经决定了上限。后面再怎么优化算法,也突破不了这个上限。