微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于TTS技术和脑电采集设备的精神疲劳实验系统设计与实现

基于TTS技术和脑电采集设备的精神疲劳实验系统设计与实现

时间:05-21 来源:互联网 点击:

精神疲劳是现代社会中的重要问题,严重影响了人们的生命和健康。在交通驾驶、航天航空、实时监控、高风险作业等行业,许多事故的发生都与精神疲劳有关,因此,对精神疲劳的分析及评价就显得非常必要。
自对疲劳进行研究以来,精神疲劳的测定经历了生理生化法、主观评定法、生理反应测定法等方法。这些传统方法因有很大的局限性而很难做到客观和定量化。随着现代电子技术和医学信号检测与处理技术的发展,基于生理参数信号(脑电信号、心电信号等)的精神疲劳测定技术的研究受到越来越多的关注。
在精神疲劳的研究中,受试者的精神疲劳状态一般通过不同的精神疲劳实验来产生,并对相应的精神疲劳状态进行量化标定。其中,让受试者进行某种作业,通过统计每次的完成时间或成功率来对受试者的疲劳状态进行标定是一种广泛采用的方法。Atsuo Murata等在其研究中让受试者根据CRT显示的两个三位数做加法,根据其完成时间和正确率给出疲劳状态的标定,该方法中,受试者对计算机给出的操作命令需要经过一定的心算或者判断过程来完成。文献中通过听觉操作命令为实验任务的方法,在按一定时间间隔播放的声音序列中,随机插入动作命令集合(上下左右)中的某一个,受试者听到声音命令后按下键盘上预先设定好的键,依据受试者操作正确率来标定其疲劳状态。随着实验进行受试者精神达到一定疲劳状态,由于操作命令相对简单,这种情况下,依照操作正确率标定的疲劳状态不能准确反映受试者的疲劳状态。本文采用基于脑电信号的精神疲劳测定技术,将TTS技术应用到精神疲劳实验系统中,尝试通过控制大脑认知问题的难度来提高精神疲劳实验的可控性,为后续精神疲劳的研究提供更可信有效的数据。

1 实验系统总体设计
1.1 实验系统总体设计思路
TTS技术,又称文语转换技术,它是将计算机自己产生的或外部输入的文字信息转换为能被人理解的、流利的语言输出的技术。Microso ft Speech SDK 5.1全面支持中文语音应用程序的开发。SDK中的底层协议都以COM组件的形式完全独立于应用程序层,语音相关的工作由COM组件来完成,程序员只需根据应用程序的需要调用相关的语音应用程序接口(SAPI)就可以实现语音功能。通过编制相应的软件程序,调用Microsoft Speech SDK 5.1的动态链接库,利用系统中安装的TTS引擎将精神疲劳实验中随机生成的一个等式判断命令语句由文本转换为语音读出来,受试者以听觉判断命令为实验任务,同时由脑电采集设备采集脑电信号,然后根据受试者完成作业的质量对相应脑电信号数据进行疲劳状态的定量标定。
基于TTS技术和脑电采集设备的精神疲劳实验系统的总体设计流程如图1所示。


1.2 硬件配置及开发环境
硬件配置条件:
1)计算机
实验用标准配置计算机一台,另有耳塞式耳机或音箱。
2)脑电信号采集设备
脑电信号的采集要通过专用的仪器设备完成,以实现安全、有效、可靠的获取人的脑电信号数据供进一步的分析处理。脑电采集设备种类繁多,文中使用由g.tec公司生产的g.USBamp信号放大采集设备,电极位置按照国际10—20标准导联系统的电极安放,详细电极位置见文献。
开发环境配置条件:
软件运行环境为Win7系统,安装有Microsoft Simplified Chinese语音引擎,开发工具为VC6.0。

2 实验系统各模块设计与实现
本实验系统的目的是完成标定有相应精神疲劳状态的脑电信号数据的采集存储,实验系统主要包括两个部分:脑电采集和听警觉作业。
脑电采集是通过脑电采集设备完成对受试者脑电信号的采集,听警觉作业是让受试者对听到的判断命令进行判断选择,同时系统会记下受试者每次选择判断的时间和正误,最后依据作业完成质量对疲劳状态进行量化标定。实验首先进行脑电信号的采集,在脑电信号开始采集的初始阶段,只采集受试者的脑电信号,直到听警觉作业开始的同时才进行脑电数据的存储。这样即丢弃了开始采集脑电信号时因设备不稳定而获取的不准确数据,同时保证了存储下来的数据是受试者在作业过程中的脑电信号数据。这两部分工作分别由2个线程来完成。

2.1 脑电采集模块
脑电信号采集部分由数据采集线程来完成,其主要实现过程如图2所示。


m_EEGRunFlag为数据采集状态标志,开始脑电采集后,开启脑电数据采集线程。脑电信号的获取是由g.tec公司提供的API函数编程实现的,创建overlapped结构事件对象的目的是避免阻塞线程,系统调用获取数据的函数时可以立即返回,但是直到overlapped结构中事件被触发数据才是有效的,用WaitForSingleObject()函数来判断数据传输是否结束,用GetOvedappedResuk()函数来检索获取的有效字节数目。此时在线程中只获取而不存储脑电数据,直到m_RunFlag为TRUE才开始脑电数据的存储。
2.2 听警觉作业模块
听警觉作业部分由作业线程来完成,其主要实现过程如图3所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top