Battelle利用MATLAB开发了信号处理和机器学习算法,并实时运行算法。
研究人员向参与者展示了一个由电脑生成的虚拟手,这只手可以做一些动作,比如手腕的弯曲和伸展,拇指的弯曲和伸展,以及手的张开和闭合,并指导他们思考如何用自己的手做出同样的动作。
在MATLAB中,团队开发了算法来分析植入电极阵列中的96个通道的数据。使用小波工具箱™,他们进行小波分解,以分离控制运动的大脑信号的频率范围。
他们对MATLAB中的分解结果进行变换,以计算平均小波功率(MWP),将单个通道的每个100毫秒窗口内捕获的3000个特征减少到一个值。
得到的96个MWP值被用作机器学习算法的特征向量,这些算法将特征转换为单个动作。
该团队使用MATLAB测试了几种机器学习技术,包括判别分析和支持向量机(SVM),最终确定了一种优化性能的自定义SVM。万博1manbetx
在测试过程中,该团队通过让参与者尝试视频中显示的动作来训练支持向量机。他们使用经过训练的支持向量机的输出来动画电脑生成的虚拟手,参与者可以在屏幕上操作。同样的SVM输出被缩放,并用于控制NMES套筒的130个通道。
当参与者移动手臂和手进行简单的动作时,所有的信号处理、解码和机器学习算法都在桌面计算机上用MATLAB实时运行。
Battelle的工程师目前正在利用MATLAB开发第二代神经生命系统的算法,该系统将结合加速计和其他传感器,使控制算法能够监测手臂的位置并检测疲劳。