APP下载

基于事件相机的转速测量方法研究

2022-03-06许健宏郭建文曹梦华

东莞理工学院学报 2022年1期
关键词:向量速率电机

许健宏 郭建文* 曹梦华

(1.东莞理工学院 机械工程学院,广东东莞 523808;2.东莞理工学院 电子工程与智能化学院,广东东莞 523808)

转速测量多采用光电和霍尔编码器[1],而采用视觉图像检测的较少。传统相机在转速测量方面存在输出图像帧率较低、数据较为冗余和延迟高的不足。事件相机是一种新型的图像传感器,相比于传统相机的图像帧输出,事件相机只捕获具有光强变化的像素点,即事件,而不输出完整的图像帧数据,具有超轻量数据、延迟低、高动态范围的特点[2]。目前,事件相机主要应用于机器人视觉SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)[3]、位姿追踪[4]、3D重建[5]等。Gallego等[6]利用霍夫线性变换估计旋翼飞行器机架的位置和角速度来控制飞行器;Dimitrova等[7]通过获取边缘强度来对应于相同场景的边缘事件来估计事件相机自身的三轴角速度。上述研究主要是通过事件相机来估算自身的角速度。本文将事件相机应用于转速测量,提出一种基于事件相机的转速测量方法,使用滤波和聚类更为简便的方式来估计转速,采用步进电机开展实验,在调速范围为30~480 r/min,事件相机测速取得良好效果。

1 事件相机原理

当电机带动标记物旋转时,特征信号在事件相机与传统CMOS相机的成像如图1所示。其中,传统CMOS相机成像以图像帧形式,帧率间隔为毫秒级。事件相机捕捉具有光强变化的像素点,即事件,输出间隔为1 μs,可认为事件流在时间上为连续的,克服在高速运动下,传统相机图像会出现较大运动模糊的不足。

图1 电机转子在事件相机下成像

事件相机输出的为一系列连续时间戳事件流,但是处理方式上大部分还是基于图像帧进行处理的[8],即在较短的固定时间段内获取一个事件包,该事件包中包含若干个事件,每个事件可表示为

e=<(x,y),timestamp,polarity>,

(1)

2 算法原理

根据采样定理[9]可知,信号采样频率应大于信号的最高频率的2倍,但在实际过程中应采取采样频率为信号最高频率的2.56~4倍。利用事件相机测量电机转速受到获取事件包频率的限制。本文的检测转速算法共分为五步:滤波、检测旋转区域、检测旋转向量的极角位置、计算转速、均值优化,如图2所示。

图2 转速测量流程

2.1 滤波

该图像滤波方法为基于密度的聚类方法(DBSCAN[10]),适用于过滤图像中的不必要的噪声数据。当有一群事件点时,将所有点置于一个二维面中,用Pi=(xi,yi),i为索引点的指数。以随机点Pj=(xj,yj)为中心,半径为的圆区域范围内,计数包含事件点的数量为numcurrent。假设该区域必须的最小点数目为nummin,当numcurrent≥nummin时,可认为是特征信号,保留中心点Pj;当numcurrent

2.2 检测旋转区域

2.3 检测旋转向量的极角位置

检测过程如图3所示。

图3 检测平均极角

检测区域后即可获得旋转中心O:

(2)

其中(xmin,xmax,ymin,ymax)为检测旋转区域。我们需要知道每帧图像中,需要把标记物拟合估计成一条直线,记为旋转向量,以便于后续计算分析该直线所处位置角度。

对每个事件组中的每个事件采用极坐标形式估计。以旋转中心O为原点,因为在图像坐标中的X轴水平向右为正,Y轴竖直向下为正,则极角方向沿X轴顺时针转动为正方向。

对每个事件ei计算其极径ρi和极角θi:

(3)

(4)

记每个事件组中的事件最大极角为θmax,最小极角为θmin,计算其运动模糊残影角θb:

θb=θmax-θmin,

(5)

(6)

其中ξ为平均极角修正系数,由于运动模糊残影角的存在,需要对其进行修改。ξ的取值应根据转速高低进行取值,在实验中取ξ=0.1。

2.4 计算转速

要计算电机轴的转速,需要先获取两次采样的旋转向量的平均极角之差Δθ。在本文实验中,采用的标记物为双叶螺旋桨,具有两边对称结构,在每一帧图像中只检测一边,所以每次检测电机旋转半周的时间。

(7)

旋转向量检测过程示意图如图4所示。

图4 检测旋转向量示意

转过半圈的时间间隔Δt:

Δt=t2-t1,

(8)

可求得转速:

(9)

其中,t2与t1分别为当前以及上一次检测时的时间戳。

2.5 均值优化

由于事件相机捕捉事件的随机性,一次测量的结果具有很大的偶然随机性。在这里,需要对三个参数变量取均值。

(10)

其中m为采样次数,θi为每次采样的旋转向量夹角。

(11)

(12)

其中为累计计算半圈时间的次数,为每次计算的转速。

3 实验

实验中采用样本电机为42步进电机[11],以双叶螺旋桨作为标记物,如图5所示。

图5 装置实物

步进电机可以精确地调节脉冲信号周期长短来设置转速大小,最高转速约为480 r/min。但在速度较高时步进电机会产生失步现象,导致转速不精确。使用的事件相机为动态视觉传感器系DVS列中的edvs 4337,像素值为(inivation所提供)[12]。

3.1 事件流图像

事件相机输出的一个事件组所渲染的图像并非像传统相机输出完整的图像,检测的区域与特征点的难度会有所下降,在CPU计算处理的性能将有所提升。在处理上为连续的事件流中,仍然是以帧为单位进行数据处理,即在固定的时间间隔内产生的多个事件组成一个事件组,将事件组渲染成一帧图像。事件相机输出的事件流成像效果与事件流速率(即帧率)相关。当速率较高时,在每一帧图像中的事件越稀疏,产生的运动模糊残影也越小;相反,当事件流速率越低时,每个事件组所包含的事件个数较多,产生的运动模糊也越大。电机轴末端带动标记物转动,逆时针转动,转速为240 r/min,事件流成像速率分别为30、60、100 Hz,事件相机获取每一个事件组渲染成图像帧,所得到渲染效果如图6所示。

图6 不同事件流速率的渲染效果

在渲染效果中,电机旋转方向的前半部分(即蓝色像素点)polarity=1,后部分事件(即红色像素点事件)polarity=0。事件流速率为30 Hz时,成像效果较差,具有较大运动模糊残影。随着事件流速率的增大,成像效果逐渐变好,运动模糊残影也会随着减小。

当电机在不同转速下,事件相机输出的事件流渲染成的图像如图7所示。其中电机均为逆时针方向旋转,电机转速为30~480 r/min,事件流速率为100 Hz。当电机的转速越快时,每帧渲染出的事件点将会变多,运动模糊残影变大,其特征点与旋转向量位置就越难检测。

图7 不同转速在事件相机下的渲染效果

3.2 转角差测量

由于事件的输出具有离散稀疏性,在连续两帧中估计得到平均极角之差存在一定的随机性。设置步进电机转速为30~480 r/min,事件相机的事件流速率设置为30、60、100 Hz,步进电机转速设置为30~480 r/min,每次采样连续帧的转角差如图8的(a)(b)(c)所示。

图8 不同事件流速率连续帧转角之差

当事件流速率为30 Hz时,电机转速大于240 r/min时,将会产生信号失真现象;当事件流速率为60 Hz时,电机转速大于420 r/min时,也将会产生信号失真现象。当事件流速率越大、电机转速越小,捕获速度也越快,产生的运动模糊残影也越小。当电机转速越高时,平均连续帧转角差则越大,而采样频率固定时,可能会出现电机每转过多个半周时,算法才检测转过一次半周的时间间隔,采样得到的特征信号将会出现失真现象,无法还原原始转速,估计的转速误差范围也会变大。

3.3 转速测量

设置转速从60~480 r/min,得到估计转速结果曲线如图9所示。

图9 优化前转速估计结果

利用均值滤波可将误差较大的无效数据点滤去,保留与真实转速相近的数据,并将得到的数据进行平滑化,结果如图10所示。

最大误差百分比如图11所示。其中,最大误差百分比为估计转速与真实转速的最大差值除以真实转速。当真实的转速越高时,由于事件相机输出的随机性,产生的误差相应较大,其值在真实值附近波动,估计转速收敛于一个区间范围内。

图10 优化后转速估计结果

图11 估计转速最大误差百分比

4 结语

本文提出一种基于事件相机对电机转速测量方案,通过滤波、计算旋转向量、均值优化等步骤计算出电机的转速。在不同事件流速率下比较电机不同转速的连续帧转角差,当事件流流速越低,电机转速越高时,其运动模糊残影角度也越大,易出现信号失真现象。在100 Hz的事件流速率下,估计的转速范围在500 r/min以下。当采用更高的事件流速率,产生的运动模糊将减小,能更好地估计高速旋转物体的转速和运动情况。

猜你喜欢

向量速率电机
向量的分解
泵用电机水润滑轴承选择与应用
关于电机滚动轴承的选择与计算
瞻望电机的更新换代
聚焦“向量与三角”创新题
“化学反应的速率与限度”知识与能力提升
速度和速率有什么不同
电机隐忧
网络扫描发包速率学习算法
向量垂直在解析几何中的应用