关于眼动追踪传感器的选型技巧

MEMS/传感技术

1292人已加入

描述

我总结了几个可以买的到的传感器,而且也给出了几个传感器的选择标准。 1.高帧率,120Hz是标配 2.体积小巧,满足狭窄环境安装 3.功耗低,满足边缘计算的能力 4.近红外波段敏感,因为要对这个波段进行感光 5.黑白的就行,彩色没有这个必要 我说下为什么用黑白的: 第一,同样大小的像元,黑白传感器可以用较小的曝光时间获取理想的图像,这样可以减弱抖动以及飞行运动造成的影响(实际上NAV相机就是采用控制曝光时间来减弱运动模糊的,这个是VIO); 第二,同样的像素个数,黑白传感器可以比彩色传感器获得更高的空间分辨率,彩色传感器因为颜色插值的原因会使分辨率降低大约30%左右。当然还有别的原因,如黑白图像数据量小,处理起来运算量小,实时性高等。 我推荐的是OVM6211,OVM7251,实验可以使用OV7251. 因为最容易买到的就是OV7251,所以接下来就重点说这个。 首先要知道这个CMOS的像素是30W。

来自豪威科技的OV7251-2B全局快门图像传感器是一款3.0微米的传感器,采用1/7.5英寸光学格式,120fps提供640×480分辨率,并具有单通道MIPI串行输出接口。这个也就是我选择的一个原因。 这款产品同时能够以180 fps提供具有BIN模式的QVGA(320×240),以及以360fps提供具有BIN和SKIP模式的QQQVGA(160×120)。 传感器可提供99.96%的快门效率,并具有光导功能,可改善光捕获的角度响应,从而实现更优秀的光学性能。 利用业界最小的全局快门像素,黑白 OV7251 能够以每秒 120 帧 (fps) 的速度捕获 VGA (640×480) 分辨率视频,以 180 fps 的速度捕获 QVGA (320×240) 视频,以及 QQVGA (160 ×120) 以 360 fps 进行合并和跳跃。OV7251 的高帧率使其成为低延迟机器视觉应用的理想解决方案。 对,这个全局快门我也要写一下:

传感器

可以看到这个全局快门在拍运动的物体的时候是很有效的

传感器

这个是OV6211

传感器

这个是OVM7251

传感器

OVM7251表面图

OVM7251有两个版本:

用于AR/VR眼动追踪的850nm模型;支持面部认证中的机器视觉与3D感知的940nm模型。将OVM7251用于支持AR/VR头显实现眼动追踪,设计者可以编程系统集成渲染注视点位置,并降低周围图像的分辨率,从而进一步节省功耗。

传感器

另外在Pico 3NEO版本的环境摄像头也是使用的这个模组,就是透视模式使用的摄像头,大家有机器的可以体验一下。

传感器

卷帘快门传感器的设计是为了捕捉静态图像和视频拍摄,因此拥有非常高的分辨率和颜色处理能力。但其缺点在于,它是逐行拍摄图像,拍摄和曝光时间过长,如果拍摄对象是汽车这样的快速移动物体,图像可能发生扭曲,而且功耗过高,不适合用于计算机视觉。

而全局快门的原理则完全不同,它是一次拍摄整幅图像,所有像素同时曝光。而且成像效果准确,曝光时间短,功耗也低,未来计算机视觉将走向全局快门。

卷帘快门像素点常见的在1.1微米以下,而全局快门通常在2.2微米以上。

传感器

这个OV6211其实是专门设计给眼动追踪的传感器

传感器

这个是它的一个帧率参数

1/7.5英寸的OV7251具有多种低功耗模式,包括光感应模式和超低功耗待机模式。在光感测模式下,OV7251 的行为类似于环境光传感器 (ALS),仅当检测到光变化时才将传感器从“睡眠模式”唤醒。同样,在超低功耗模式下,传感器可以降低分辨率和帧率以进一步降低功耗。 让我来总结一下:

传感器

这个传感器的输出频率是这样的

传感器

我不是很明白,是不是以为数据输出的带宽的原因,不过是可以按照一种固定的模式把感兴趣的图像来输出的。

这种提高帧率的方法叫:开窗方法其中最主要的当属ROI模式(Region of interest),ROI是在成像应用中,在相机传感器分辨范围内定义一个或多个感兴趣的窗口区域,仅对这些窗口内的图像信息进行读出,只获取该局部区域的图像。设定较小的ROI区域可以减少相机传送及计算机需要处理的图像信息量,并提高相机的采集帧率。

SKIP(Skipping mode),这种模式就是按照一定的规律,把想要的数据采集上来,把其余的数据扔掉。如下所示,column skip 2 row skip 2 留下的就是白色的像素,把黑色的像素丢掉。

传感器

这种模式会改变原有像元之间的相邻关系,所以对Bayer彩色的相机来说,会造成一定的颜色失真,所以它常见的应用就是预览,在工业实际中应用并不多。 第三种BIN(binning mode),就是把相邻的像素合成一个像素,然后再输出。如下所示,2 bin to 1 所有的像素都参与了新像素的生成。

传感器

低照度条件下,选择binning模式图像效果更佳,有点脑子就知道这个的。

传感器

这个是具体的OV采样模式

传感器

IR cut filter,即红外截止滤光片,它放在于LENS与Sensor之间。因人眼与CMOS Sensor对各波长的响应不同,人眼看不到红外光但sensor会感应,因此需要IR cut filter阻绝红外光。

传感器

这个是OV7251

6.5厘米的最小对焦距离有点不太行,太近了,这个是我找的一个模组的信息,不要较真。 输出的是MIPI的一路,妈的,要学的东西好多,头皮有点痒。

传感器

现在做demo也是可以的,这个距离

传感器

眼球追踪的几个阶段瞳孔检测算法的可视化。

1)眼睛图像转换为灰度、用户感兴趣区域(白色描边矩形)和初始值,瞳孔区域的估计(白色方块和虚线方块),这样的优点就是节省算力。

眼动追踪:梯度法精确定位眼中心(论文),也就是要看我写的这篇文章。

2)Canny边缘检测(绿色线)

3)定义“暗”区域为偏移眼睛图像直方图的最低峰值。

4)过滤边缘以排除光谱反射(黄色),而不是在“暗”区域(蓝色)

5)使用连接的组件提取边缘到轮廓,并根据曲率连续性准则(多色线)分割成子轮廓。

6)候选瞳孔椭圆(蓝色)通过椭圆拟合形成

7)通过增强组合搜索找到最终的椭圆拟合(最终椭圆与红色中心)-支持用白色绘制的边缘像素。

下面是插一个MIPI硬件设计时候的布线参考:

MIPI因为一种高速差分信号的接口,为了保证信号的同步和一致性,必须保证MIPI DP/DN保持等长,无论是线对与线对之间(pair to pair)还是单组信号的DP/DN之间,一般需要遵守的长度规则如下:camera pair to pair 100mil 单组之间:25mil。 在MIPI走线时,一般需要保持DP/DN在走线的过程中保持等距,保证一定的耦合程度,但是需要弄清楚的时,等长的优先级是高于等距的。且在走线时,线对之间要保持2W的距离。

注:MIPI在走线时优先级最高的是匹配等长,其余的都可以实际要求和应用进行灵活处理

LVDS也是我们使用CMOS的时候常见的数据输出接口:Low Voltage Differential Signal(低电压差分信号)

电压很低,1v左右,消耗资源少,差分信号保证抗干扰能力。 接口由1组差分clock和若干组差分信号线组成,既然有CLK,那么LVDS就是同步信号。LVDS的控制信号和数据信号复用接口,CLK是用于同步。既然是复用的,LVDS的协议中也一定有区分控制信号和数据信号的方法。 LVDS主要用于视频传输的两个领域: camera和主控——视频采集 LCD和主控——视频显示 LVDS利用差分抗干扰能力,提升clock频率从而提升贷款,传输举例也更远,LVDS的时钟频率可以非常高。

传感器

话说找到一个MIPI+FPGA的方案商,这个宣传图咋感觉是DJI???

传感器

OV7251是很便宜的,做demo合适

传感器

这个是OVM7251,做产品合适,但是贵,要100+

传感器

这个是深圳一家眼动的厂子的模组,我不知道放这里是不是合适

传感器

但是它这个分辨率和帧率真的是看着还不错,不知道是哪款芯片

因为我找到了OV7251的数据手册,那这里也就看一下里面写了什么:

传感器

这个OV7xxx,有两个模组,一个是彩色,一个就是我们的这个,灰色的。

传感器

850nm正好是起始的波段

传感器

这个就是上面我发的图下面的引脚,这个其实对我来说意义不大

传感器

这个是MIPI接口下的分辨率和帧率

传感器

MIPI的时序

传感器

输出的时序控制

传感器

这个是使用FPGA的时候数据框图

传感器

像素矩阵的排列

传感器

除了RAW,也可以输出子采样的图像

传感器

硬件设计的时候,注意的参数

这么高的帧率,我们肯定是使用FPGA来处理的:

分辨率:640 x 480

数据格式:10位灰度

帧率:60fps (匹配显示器刷新频率)

通信- 控制接口:SCCB(I2C)

传输接口:1通道LVDS

速率:600Mbps

我们需要通过MCLK给摄像头提供时钟,RESET是复位线,PWDN在摄像头工作时应该始终为低。PCLK是像素时钟,HREF是行参考信号,VSYNC是场同步信号。一旦给摄像头提供了时钟,并且复位摄像头,摄像头就开始工作了,通过HREF,VSYNC和PCLK同步传输数字图像信号。数据是通过D0~D7这八根数据线并行送出的。

CMOS图像数据采集模块,需等待I2C协议对摄像头内部寄存器进行初始化。寄存器全部配置完成后,还需等待10帧数据,此等待10帧数据的目的是等待摄像头工作状态稳定。待寄存器配置生效、摄像头工作状态稳定后再开始采集图像。 

具体地,待等待帧数等于10时,会使能标志信号frame_val_flag,使得OV7251开始对采集的图像数据中相应范围0~76800(340×240)的8位像素点数据经拼接操作,转存到寄存器data2ram中,data2ram将输出拼接后的16位数据到SRAM模块的输入引脚dina。

这个就是一个简单的采集过程。

另外小米8也是使用了这个模组:增加了红外人脸解锁功能,还是依靠了听筒右边的补光灯和型号为OV7251 IR Sensor去实现这样一个功能,先照亮人脸,再去接收黑白的图像,然后再识别解锁。相比以往依靠前摄像头去解锁的话,小米8对于光线环境是没有要求的,这也依靠了红外线的活体检测能力,且同单纯的摄像头来对比,安全性会更高一些。

传感器

在这里

传感器

这里

这个传感器卖的是真的好!

接下来拆个Huawei P30的主传感器吧~

传感器

特写

传感器

和我手的比较

传感器

放大的CMOS引脚

传感器

换另一边

传感器

全挑断

传感器

破坏一下

传感器

传感器

全球第一个在华为P30传感器上面刻字的成就

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分