应用LabVIEW进行人体脉搏分析说明书_第1页
应用LabVIEW进行人体脉搏分析说明书_第2页
应用LabVIEW进行人体脉搏分析说明书_第3页
应用LabVIEW进行人体脉搏分析说明书_第4页
应用LabVIEW进行人体脉搏分析说明书_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE18 PAGE1 目录TOC\o"1-4"\h\z\u第一章绪论 21.1人体脉搏研究的背景和意义..................................................31.2国内外研究现状............................................................31.3本课题的主要工作任务......................................................5第二章脉搏信号的采集系统 62.1脉搏信号采集分析系统总体设计方案..........................................62.2硬件设计..................................................................72.3软件设计..................................................................82.3.1虚拟仪器LabVIEW开发环境简介 8虚拟仪器概述 8虚拟仪器硬件结构 9虚拟仪器软件结构 10虚拟仪器的特点 122.3.2脉搏采集系统设计 12基于LabVIEW的采集系统设计概述 12采集系统总体框图 13采集系统前面板设计 15各模块介绍 162.3.3生成可执行应用程序 212.3.4样本的采集与误差分析 21样本的采集 21误差分析 22第三章基于LabVIEW脉搏时域分析系统 263.1时域分析系统概述.........................................................263.2时域分析系统原理 263.2.1脉搏信号简介263.2.2K值计算的原理 273.2.3脉象速率图的原理 283.3时域分析系统的设计.......................................................293.3.1时域分析系统总体框图 293.3.2时域分析系统前面板设计 303.3.3各模块介绍 313.4数据分析与结果...........................................................373.4.1脉图面积法数据和分析 373.4.2脉象速率法数据和分析 413.4.3脉率测量和心率不齐检测的数据分析 39第四章基于LabVIEW脉搏频域分析系统 434.1频域分析系统概述.........................................................434.2频域分析的基本原理.......................................................444.2.1数字信号处理 44傅里叶变换 44短时傅里叶变换 45小波变换 464.2.2向量法的基本原理 474.3频域分析系统的设计 494.3.1频域分析系统总体框图 494.3.2频域分析前面板设计 504.3.3各模块介绍 504.4数据分析与结果 52第五章改进方法和发展方向 54结论 56谢辞 57应用LabVIEW进行人体脉搏分析 -1- PAGE19第一章绪论福州大学本科生毕业设计(论文)应用LabVIEW进行人体脉搏分析1.1人体脉搏研究的背景和意义脉搏是由心脏搏动而引起,经动脉和血流传至远端的桡动脉处,它携带有丰富的人体健康状况信息。早在公元前7世纪脉诊就成为中医的一项独特诊病方法。但自古以来中医独特的诊断方法及治病的疗效总是笼罩着一层神秘的面纱。中医一直是靠手指获取脉搏信息,这难免存在许多主观臆断因素,况且这种用手指切脉的技巧很难掌握,因此人们迫切期望尽早实现脉诊的科学化和现代化。随着传感器技术及计算机处理技术的发展,人们希望能够将现代技术应用于中医脉象诊断,以便更科学、更客观地揭示脉象的实质与特征。另一方面从西医的角度看,近年来人们也试图根据脉搏波的变异性来评价和诊断人体心血管系统的病变,以便能找到一个有效的心血管疾病早期无创诊断的方法。因此,对脉搏信号进行无失真的检测、采集和处理是一项重要而很有意义的基础工作,它是对脉搏信号进一步分析并依此对心脏及动脉血管系统疾病进行预报和诊断的前提。本论文的研究主要是基于这方面来进行的,利用功能强大的虚拟仪器LabVIEW设计出脉搏的采集与分析系统,从客观、物理的角度来诠释人体脉搏系统。1.2国内外研究现状 脉搏系统和脉搏信息的研究包括两大方面:一是理论分析与计算(即建模方面);二是信号检测与分析。从发表的文献来看,国外在前一方面做了大量的研究,也早于国内学者;而国内在后一方面的研究多于国外。对脉搏信号的分析主要包括以下方面:脉搏信号检测与提取用脉搏记录仪器描绘脉搏波图像已有百余年的历史。1860年法国人研制了杠杆脉搏描记器,成为现代脉象描记的基础。脉象仪的总体构成包括脉象信号检测,信号预处理和信号分析三个环节。我国医务界约从50年代初就开始了用西方传来的脉搏描记技术,使脉象图形化。近十多年来,已经研制出了许多性能各异的脉象仪,各类脉搏描记器最关键和差异较大的部分就是脉象传感器的研制。从测量原理上讲,脉象传感器可分为机械式、压电式、光电容式等多种[1]。(2)脉搏信号处理与特征提取目标信号检测的关键是提取信号的特征。在实际中,目标信号总是淹没在大量的杂波或干扰中,而且目标信号的幅值或功率较杂波或干扰信号可能还低得多,这就需要进行有效的信号处理。时域分析法:目前国内对脉象信号的特征提取方法,多数采用时域分析法,即在时间方向上分析波动信号的动态特征,通过对主波、重搏前波、重搏波的高度、比值、时值、夹角、面积值的参量分析,找出某些特征与脉象变化的内在联系[2]。时域分析法包括直观形态法、多因素识脉法、脉象速率图法、脉图面积法。直观形态法。频域分析法:频域分析主要是通过离散快速傅里叶变换,将时域的脉搏波曲线变换到频域,得到相应的脉搏频谱曲线,通过频谱曲线的特征分析,从中提取与人体生理病理相应的信息,实现脉象分类。与时域分析不同,脉搏信号的频域特征可分辨性好,因此80年代以来国内外一些学者开始在频域内对脉搏信号进行分析[3,4,5,6,7],初步取得了有意义的结果。这种从频域和能量的角度来分析脉搏信号的思想是十分正确的。我们从能量角度研究了几种不同疾病脉搏信号的特征频域特征和差异,利用频域分析的延伸技术——倒谱与同态解卷,首次估计出了人体脉搏系统的传递函数,分析了脉搏系统的频率特性[8]。时频联合分析法:是把一维信号或系统表示成一个时间和频率的二维函数,时频平面能描述出各个时刻的谱成分。常用的时频表示方法有短时傅立叶变换和小波变换(WT)。短时傅立叶变换(STFT)方法:是一种广义情形,是一种线性时频表示方法,它依赖于被分析信号的线性特性,即信号的频谱与在数据中提供正弦成分的幅度成线性比例。其最主要的优点是容易实现、计算简洁有效,而它主要的缺陷是时间和频率分辨率在整个时频平面上固定不变。另外的限制是对一个特殊的信号,需要一个特殊的窗才能得到最佳分辨率。小波变换(WT):是另外一种重要的线性时频表示,它在时频平面上具有可变的时间和频率分辨率,把FT中的正弦基函数修改成在整个时频平面上具有可变时频分辨率的基函数,使得它在高频区域能够提供高的时间分辨率,而在低频区域能够提供高的频率分辨率。小波变换这种独特的能力使其成为分析脉搏这种非平稳信号的有力工具[9]。在目前已知的小波函数中,复值调制的Gaussian函数是使用最高的小波之一。1.3本课题的主要工作任务本课题的主要任务是应用LabVIEW做出人体脉搏信号的采集与分析系统,具体的工作有:熟练使用LabVIEW图形化编程工具。学习数字信号处理中时频变换的基本理论。了解模式识别中语音识别系统的基本概念和分析方法。学习数据压缩中的基本思想。学习误差理论与数据处理的基本理论与方法。搭建出数据采集系统,使人体脉搏信号可以在计算机上显示。自动调整脉搏时域信号波形基线位置和波形的放大倍数。将时域信号坎头去尾,整周期存贮起来。到医院和学校进行数据的采集。能够将采集的数据调出来并进行各项分析,搭建基于脉图面积法的k值的计算模块和脉搏波下降沿一阶导数为负占整个下降沿的百分比的计算模块,对时域信号进行FFT变换,之后把频谱数据存储起来。调用频谱数据,应用了两种方法将频谱中各次谐波提取出来,以db值,绝对值和向量的形式存储起来。整理各种分析方法所得出的数据,存储到EXCEL中。应用EXCEL里面的各种数学函数对数据进行统计分析并建立图表。比较各种分析方法的优劣并得出结论。第2章脉搏信号的采集系统2.1脉搏信号采集分析系统总体设计方案开发脉搏采集虚拟仪器系统应着重考虑以下几个问题:(1)问题提出:脉搏采集虚拟仪器需要完成的主要功能是读进传感器中的数据,并且显示和存储起来。要以什么方式来实现这些功能,硬件和软件之间的数据如何传送;当系统做好后,要考虑数据去哪里采集,采集多少样本,采集的过程中的误差怎么避免,传感器的位置对测量结果的影响有多大。在接下来的章节中要逐一解决以上问题。对采集来的数据进行分析时,主要有时域和频域两种分析方法,前者的研究工作做过不少,因为时域上的波形给人的感觉比较直观。目前国内对脉象信号的特征提取方法,多数采用时域分析法,即在时间方向上分析波动信号的动态特征,通过对主波、重搏前波、重搏波的高度、比值、时值、夹角、面积值的参量分析,找出某些特征与脉象变化的内在联系。时域分析法包括直观形态法、多因素识脉法、脉象速率图法、脉图面积法、直观形态法。这其中也有一些方法值得尝试,但是这些方法的效果还是有待考究的,本文也会用这些方法进行分析,并提出一些新的分析方法做出对比,找出正常人与病人脉象之间的差异。虽然时域描述比较简单,但它不能反映数据的频率结构。为此,人们经常对数据进行频谱分析,研究其频率成分及格频率成分的强度,将信号变换到频域中后,许多包含在其中的信息就变得更为明显。这就是数据的频域描述。频域变化可以看到时域波形中细微的频率变化。频域分析主要是通过离散快速傅里叶变换,将时域的脉搏波曲线变换到频域,得到相应的脉搏频谱曲线,通过频谱曲线的特征分析,从中提取与人体生理病理相应的信息,实现脉象分类。与时域分析不同,脉搏信号的频域特征可分辨性较好。本文也介绍了几种频域中提取特征值的方法,并且与之前的学者所用的方法进行比较。数据采集系统、时域分析系统和频域分析系统的连接框图如图2-1所示。(2)硬件选择:需要在各式各样的传感器当中选择一种结构简单、功能强大的传感器。由于要去医院和学校采集脉搏数据,要求传感器携带方便,并且要与计算机有接口。(3)软件编程:编程之前需要把所需要实现的功能框架画出来,编程时根据需要选择一定的功能模块,构建框图程序结构,可编出高效的程序,实现脉搏采集虚拟仪器面板上的各种功能。LabVIEW是图形化编程语言,它提供的是图形化功能模块,精心合理的组织这些功能模块就能完成所需要的要求。脉搏信号的采集与时域信号存储系统(第二章介绍)脉搏信号的采集与时域信号存储系统(第二章介绍)时域信号的读取与分析模块(第三章介绍)频域信号的读取、分析模块(第四章介绍)图2-1系统总体框图2.2硬件设计英国人最早设计了以弹簧为动力的杠杆式脉搏传感器,并记录了桡动脉脉搏波。之后,应变计式、光电式、压电晶体式、电阻压力式等直接“接触式”的脉搏传感器陆续问世,使脉搏检测技术在临床和基础医学研究中得到了广泛应用。这些传感器的原理不尽相同,测出的脉搏信号成分亦不完全相同。用测压式传感器检测的脉搏信号通常称为压力脉搏波,用容积式传感器检测的脉搏信号称为容积脉搏波。而对桡动脉处的脉搏信号,目前主要是用国内生产的各种“接触式”压力传感器检测,它们测取的是寸口组织的力变化量[10]。除此之外,还有光电式脉搏传感器,是根据光电容积法制成的脉搏传感器,通过对手指末端透光度的监测,间接检测出脉搏信号,光电式脉搏传感器具有结构简单、无损伤、可重复好等优点。但是由于动脉波动引起的光强变化比背景光的变化微弱得多,测量出来的信号容易受到其它光线的影响。通过光电转换得到的包含脉搏信息的电信号一般也比较微弱,容易受到外界电磁信号的干扰。本次课程设计选用了合肥华科电子技术研究所研制的HK-2000C集成化数字脉搏传感器。它将力敏元件(PVDF压电膜)、灵敏度温度补偿元件、感温元件、信号调理电路、程控放大电路、基线调整电路、A/D转换电路、串行通信电路集成在传感器内。主要应用于无创心血管测试,中医脉象诊断。灵敏度高;抗干扰性能强;过载能力大;一致性好;性能稳定可靠;使用寿命长。在使用过程中,将本模块插入USB口后计算机提示发现新硬件,之后按照向导安装光盘DRIVE目录下的驱动程。驱动程序安装后,在计算机上生成一虚拟COM口,编写应用程序时将通讯口设置为虚拟COM口。由于虚拟COM口号一般为COM3或者COM4。传感器外观图如下所示:图2-2传感器外观图硬件接口:USB接口。接口协议:通讯速率:9600bps;数据格式:8位数据+1位停止位技术指标:表2-1输出高电平大于VCC-1.5V输出低电平小于0.2V灵敏度2000uV/mmHg灵敏度温度系数1×10-4/℃精度0.5%重复性0.5%迟滞0.5%过载100倍电源电压3~12VDC压力量程-50~+300mmHg2.3软件设计2.3.1虚拟仪器LabVIEW开发环境简介虚拟仪器概述20多年前,美国国家仪器公司NI(NationalInstruments)提出。“软件即是仪器”的虚拟仪器(VirtualInstruments,又称VI)概念,引发T传统仪器领域的一场重大变革,使得计算机和网络技术得以长驱直入仪器领域,和仪器技术结合起来,从而开创了“软件即是仪器”的先河。虚拟仪器开发是当前自动化仪表领域研究的热点。虚拟仪器主要被用于构建计算机测试分析系统和自动控制系统。它以软件取代传统的电子仪器,充分发挥了新一代计算机大容量、高速度的潜能,是CAT(ComputerAidedTesting),CAE(ComputerAidedEngineering)中一个重要的信号采集及分析手段。虚拟仪器是以特定的软件支持取代相应功能的电子线路,充分利用计算机的软硬件资源,用计算机完成传统仪器硬件的部分乃至全部功能,以具备控制、处理、分析能力的软件为核心的软仪器。它是传统仪器功能与外形的模块化和软件化。在虚拟仪器中,传统电子仪器的绝大多数功能,甚至全部功能都由软件来实现。同时,由于虚拟仪器是以软件为核心的仪器,它不能脱离计算机硬件平台而独立实现其功能。就VI所支持的操作系统而言,包括DOS,Win3X及Win9X系列、Macintosh和UNIX。据此,虚拟仪器可分为基于PC机和工作站两类。其中绝大部分VI运行在个人计算机上,操作系统为Windows。借助于软件实现了传统仪器相应功能的虚拟仪器,是计算机化的仪器。也可以认为,VI是“硬”仪器的虚拟化、软件化和图形化计算机表达[11]。虚拟仪器硬件结构虚拟仪器由通用仪器硬件平台(简称硬件平台)和应用软件两大部分构成。其中通用仪器硬件平台又由计算机和I/O接口设备两部分组成。

计算机硬件平台可以是各种类型的计算机,如PC计算机、便携式计算机、工作站、嵌入式计算机、工控机等。计算机用于管理虚拟仪器的硬软件资源,是虚拟仪器的硬件基础和核心。

开发虚拟仪器的目的是为了更方便快捷地进行测试、分析和控制。虚拟仪器是计算机辅助测试、分析系统的主体组成部分。一个典型的虚拟仪器系统,一般由以下几个部分组成:计算机、虚拟仪器软件、硬件接口模块等。其中硬件接口模块可包括插入式数据采集卡(DAQ)、串/并行口、IEEE488接口卡(GPIB),VXI控制器以及其它接口卡。目前较为常用的虚拟仪器是由数据采集卡系统、GPIB仪器控制系统、VXI仪器系统以及这三者之间的任意组合。这里,硬件仅是为了解决信号的输入输出,软件才是整个系统的关键。所以当基本硬件确定以后,就可以通过不同的软件(如用于数据分析、过程通讯及图形用户界面的软件)实现不同的功能。虚拟仪器应用软件集成了仪器的所有采集、控制、数据分析、结果输出和用户界面等功能,使传统仪器的某些硬件乃至整个仪器都被计算机软件所代替。在虚拟仪器软件支持下,信号由传感器拾取,由数据采集卡在软件的控制下被采样,再经A/D转换后送入计算机加以保存或处理。虚拟仪器构成如图1所示。它包括计算机、虚拟仪器应用软件和硬件接口。硬件接口种类包括数据采集卡、IEEE488接口卡、串行口、并行口、插卡式仪器以及其它接口卡。在虚拟仪器系统中,PC数据采集系统是构成虚拟仪器系统最基本的方式,也是最廉价的方式[12]。

图2-3虚拟仪器构成框图虚拟仪器软件结构构成一个虚拟仪器系统,在基本硬件确定以后,就可通过不同的软件实现不同的功能。软件是虚拟仪器系统的关键,根据VPP系统规范的定义,虚拟仪器系统的软件结构包括仪器I/O接口软件、驱动程序和应用软件三部分。

(1)I/O接口软件I/O接口软件存在于仪器(即I/O接口设备)与仪器驱动程序之间,是一个完成对仪器寄存器进行直接存取数据操作,并为仪器与仪器驱动程序提供信息传递的底层软件,是实现开放的、统一的虚拟仪器系统的基础与核心。(2)仪器驱动程序每个仪器模块均有自己的仪器驱动程序。仪器驱动程序的实质是为用户提供用于仪器操作的较抽象的操作函数集。应用程序对仪器的操作是通过仪器驱动程序来实现的,仪器驱动程序对于仪器的操作与管理,又是通过I/O软件所提供的统一基础与格式的函数库(VISA)的调用来实现的。虚拟仪器驱动程序是连接上层应用程序与底层I/O接口软件的纽带和桥梁。

(3)应用软件开发环境应用软件开发环境的选择因人而异,一般取决于开发人员的喜好,但最终都必须提供给用户一个界面友好、满足用户功能要求的应用程序。目前,可供开发人员选择的虚拟仪器系统应用软件开发环境主要包括两种:

①基于传统的文本语言式的平台。主要是NI公司的LabWindows/CVI、Microsoft公司的VisualC++、Borland公司的Delphi等。

②基于图形化编程环境的平台。如LabVIEW和HP公司的HPVEE等。其中LabVIEW是由美国国家仪器公司(NO在1986年推出的一种基于图形编程语言(称之为G语言)的开发环境,它具有十分强大的功能,包括数值函数运算、数据采集、信号处理、输入输出控制、信号生成、图像获取、处理和传输等等。LabVIEW与Pascal、Basic、C、C++等传统编程语言有着许多相似之处,如相似的数据类型、数据流控制结构、程序调试工具,以及模块化的编程特点等。但二者最大的区别在于:传统编程语言用文本语言编程;而LabVIEW使用图形语言(即各种图标、图形符号、连线等)编程,界面非常直观形象,而且使用的图形是人们熟悉的开关、旋钮、波形图等,因此是一种直觉式图形程序语言。LabVIEW的执行顺序是依方块图数据的传递来决定的,并不像传统文本式程序语言必须逐行执行,因此用户能设计出可同时执行多个程序的流程图。LabVIEW程序称为“虚拟仪器程序”,简称VI。VI包括三个部分:程序前面板、程序框图和图标/连接器端口。在计算机显示屏幕上利用LabVIEW提供的功能库开发工具产生一个程序前面板,即仪器的虚拟面板。在程序前面板上,输入量称为控制器,输出量称为指示器。控制器和指示器是以各种图标形式出现在前面板上,如开关、旋钮等。在后台则利用图形化编程语言编写框图程序,构成一个VI,与程序前面板对应。框图程序由端口、节点、图框和连线构成。其中端口被用来同程序前面板的控制器和指示器传递数据,节点被用来实现函数和功能调用,图框被用来实现结构化程序命令,而连线则代表程序执行过程中的数据流。LabVIEW是一种结构化开发平台。结构化是指LabVIEW的程序完全支持顺序结构、循环结构和条件结构三种标准结构,同时VI也是层次化和模块化的,可用作其它程序的子程序。VI被其它程序调用时,称之为SubVI。用户可以把一个题目分解为一系列的子任务,每个子任务还可以进一步分解成许多更低一级的子任务,直到把一个复杂的任务分解为许多子任务的组合.首先设计SubVI完成每个子任务,然后将之逐步组合成能够解决最终问题的程序。虚拟仪器的特点同传统测试仪器相比,虚拟仪器除了在智能化程度、处理能力、易用性等方面有更多的优点外,它还具有传统独立仪器无法比拟的优势,但它并不否定传统仪器的作用,它们相互交叉又相互补充,相得益彰。在高速度、高带宽和专业测试领域,独立仪器具有无可替代的优势。在中低档测试领域,虚拟仪器可取代一部分独立仪器的工作,但完成复杂环境下的自动化测试是虚拟仪器的优势,是传统的独立仪器难以胜任的,甚至不可思议的工作。虚拟仪器作为一种新型的仪器种类,具有以下特点:增强仪器系统功能和灵活性;实现网络化设计;开放式体系结构、缩短系统开发周期;可灵活组成虚拟仪器实验室;数据存储方便;可集成为多功能的综合测试系统。表1传统仪器与虚拟仪器的比较传统仪器虚拟仪器仪器厂商定义用户自定义硬件是关键软件是关键仪器的功能、规模均已固定系统功能和规模可通过软件修改和增减封闭的系统、与其他设备连接受限基于计算机的开放系统,可方便的同外设、网络及其它应用连接多为实验室拥有个人可以拥有一个实验室技术更新慢技术更新快开发和维护费用高节省开发和维护费用价格昂贵价格低,可重复利用2.3.2脉搏采集系统设计基于LabVIEW的采集系统设计概述脉搏的采集主要考虑三个方面的问题,一是基于LabVIEW平台的软件系统应该怎样搭建,主要能实现哪些功能;二是系统搭建完成后,数据的采集工作,样本的选择;三是采集过程中出现的误差分析问题。首先,采集系统主要实现的功能是数据的读入,显示和整周期时域波形的存储。数据读取的实现方法是通过I/O软件所提供的统一基础与格式的函数库(VISA)的调用来实现的。VISA是连接上层应用程序与底层I/O接口软件的纽带和桥梁。通过VISAserial对端口参数进行配置,通过VISAread对端口数据进行读入。显示和存储功能可以应用LabVIEW中的许多功能模块实现。由于在采集系统面板上显示的频域图可以通过加窗结构来使频谱图变的整洁,这种方法虽然有效,但是会丢失前后两端的数据,为了防止这种情况出现在我们的时域分析系统中,在存储的过程中就要把时域信号坎头去尾,使之变成整周期的数据,这样在数据读出来并进行分析时不会出现谱漏的现象。所以采集脉搏的数据为时间窗口内坎头去尾之后的信号,大约有十个心动周期的时间长度。这个长度足以得到完整的受测者心脏搏动的脉搏波数据。该系统具体的模块有:串行端口的配置,数据的读取,基线位置的设定,放大倍数的自动调整,数据的显示,FFT时频域变换后频谱的显示,峰值检测并坎头去尾,时域信号的存储。其次,经过反复修改和调试,采集系统已经成形,下一步就是进行数据的采集。由于是初步探讨性的进行研究,具体什么病症对应什么样的脉象都是一个未知数,所以首先要选择有代表性的疾病人群,要求这种病要与心脏和血管直接相关,分析起来会比较清楚,之后再进行其它病症的分析。经过比较,我们选择采集冠心病、高血压和糖尿病患者的脉搏信号,拿来和健康人群的脉搏相比较,健康人群的数据比较容易采集,我们就选择在本学校进行。最后,要考虑到在测量过程中所出现的误差,由于每次测量的位置会有细微的差异,测出来的数据也会有不同。所以本文针对这种情况,对同一个人进行了二十次的测量,对这些数值求出数学期望和方差,可以确定了随机函数所有现实相对于均值的分散程度。采集系统总体框图数据采集模块系统框图如图2-4所示:图2-4信号采集系统流程图采集系统前面板设计根据脉搏采集虚拟仪器功能总体框图,虚拟仪器面板需要用到如下一些控制键:仪器总开关、通讯参数设置(串行口选择、波特率设置、停止位设置、数据位设置、奇偶校验位设置、允许接收字符设置)、峰值检测阀值的设定、基线位置大小的设定、放大倍数的调整、时间窗口设定、数据文件读取、数据文件保存。同时,虚拟仪器面板还要有如下一些指示栏:实时显示读进来的数据串、实时显示脉搏数据波形图、实时显示时域数组中的值、实时显示FFT变换后的频谱图。面板的设计既要简洁美观又需操作方便,为此,将面板上相互关联的功能键放置在一起并占特定的区域,如串行通讯参数设置、测量结果参数、数据文件存储/控制等,这样做既是为面板美观也是为操作方便的需要。脉搏采集虚拟仪器面板如图2-5所示。图2-5采集系统前面板图各模块介绍(1)数据读入配置模块数据读入模块包括VISA串行端口的配置,数据的读取,基线位置的设定,放大倍数的设定。其中串行口的设置一共有八项,为串行口选择(根据不同计算机有所区别,一般设置为COM3和COM4)、波特率设置为9600、停止位设置为1位、数据位设置为8位、奇偶校验位设置、流量控制设置、读数据前的延时设置。放大倍数的设置:是根据串行口通讯协议而设定,往串行端口写入20h(开始符)34h(命令字)xxh(放大级别0h-9h)就是手动设置放大被数。基线位置的设置:往串行端口写入20h(开始符)35h(命令字)xxh(基线位置0h-3h)就是手动设置基线位置。启动采样:往串行端口写入20h(开始符)32h(命令字)系统就开始进行采样。后面板程序框图如图2-6所示:图2-6数据读入模块后面板(2)数据的显示模块数据显示模块包括初始化时域数据存储的数组,时域信号的读取,时域波形信号的实时显示,时域信号按照时间窗口的大小显示,FFT时频域变换,频谱的显示,基线和放大倍数的自动调整。下面对每个功能进行介绍。首先要初始化数组,这个数组用于存放时域波形的数据,数组的大小由时间窗口和采样频率两个控件共同决定,如果时间窗口设置的比较大,那么读进来并且存储到数组中的数据就比较大,数组中的数据大小即采样数据点的多少,等于时间窗口的大小乘以采样频率,当设置时间窗口和采样频率的同时就对存储数据的数组进行了初始化。一般采集时,设置时间窗口为11秒,这样在坎头去尾之后原理上还可以保留10秒时间窗口内的数据。数组的初始如图2-7所示。图2-7数组初始化框图数据的读取与显示:此模块的后面板框图如图2-8所示。当read开关置为on,系统可以进行数据的读取。用了一个判断框图来探测端口中的数据,如果端口数据的个数大于零,VISA读字符串的功能开始运行,读进来一个比特的数据,读进来数据的时候同时把数据实时显示出来,即前面板中右上角的波形显示,然后把该数据放入到已经初始化好的数组中。当读进第二个字节的时候,把数组中的所有数据左移一位,把新读进来的数据放在数组的最后一位,然后把整个数据中的数据显示出来,这样就可以按照时间窗口的大小,把时域波形显示出来,即前面板中左下角的时域显示器中的图形。时频变换和频谱图的显示:每次读进来一个字节的数据时,系统就会把时域信号的波形图输入到FFT功率谱变换的VI中,并对时域信号加上汉宁窗,这样可以使频谱变得整洁起来。此过程中需要对功率谱变换进行一些参数设置,例如使频谱图按照DB的方式显示,平均的方式,使频谱图与前面400个点的频谱图进行平均等。基线与放大倍数的自动调整:为了省去手动设置基线和放大倍数麻烦,设计了这个子程序。这个功能做成了子VI放在主程序当中,这个子VI又包含了基线调整子VI和放大倍数调整子VI(见图2-9、2-10、2-11)。基线调整能够在基线位置太底或太高的时候自动调整基线的位置,使图像正好在图表中部。放大倍数的自动调整是指对时域信号进行调整适当倍数的放大,使之达到标准高度。但是一般测量准确的话,也就是传感器探头位置大概准确的话(一般放置在脉搏跳动位置最强处,也就是手腕的外侧),系统默认的脉搏波基线位置和放大倍数都是比较合适的。所以在测量时,可以把前面板上的调整按钮置为OFF,等脉搏信号过小(脉象很沉)或脉象信号很强的时候再打开。图2-8数据显示模块程序框图图2-9自动调整后面板图2-10基线自动调整后面板图2-11放大倍数自动调整后面板(3)数据的存储模块数据的存储模块主要包含两个部分,一个是谷值的检测并把时域波形坎头去尾,从第一个波的波谷记录到最后一个波的波谷;另一个是数据的存储。在进行傅里叶变换的过程中,系统将时间窗口内采集的信号不断重复,以生成无限周期性波形。对于非整数个波形周期采样会导致时频变换后的连续周期之间的突变。这些在生成周期性波形的过程中引起的突变将导致信号频谱中出现非常高的频率,而在原始信号中并不存在这些频率。因此得到的频谱不是原始信号的真实频谱。在频域中,看起来就好像是某个频率的能量泄漏到了其它所有频率中,导致了谱漏。前面板所显示的频谱图可以加上汉宁窗等窗体函数,乘窗后的信号波形在端点处逐渐减小为零。当计算有限长度数据的傅里叶变换时,可将乘窗技术应用于采样波形以最小化所构成的周期性波形突,所以频谱数据也会比较整洁。但是时域窗口前后两端的数据会有一定的衰减。我们所存储的数据不希望这种衰减。所以采用了在存储时域波形之前把时间窗口内的波形整周期提取出来,这样提取出来的数据再经过FFT变换时就不用加任何窗体函数,也不会出现谱漏现象。具体的实现办法是加上一个谷值探测的子程序,通过这个子VI,可以探测出时域窗口所有的谷底值,然后把时域窗口中第一个谷底到最后一个谷底之间的数据放到新的数组中,再把这数组中的数据存储起来。当需要记录该数组值得时候,要把前面板上的records按钮置为ON。谷值探测子程序前后面板图如图2-12、图2-13、图2-14所示。存储数据程序图如图2-15所示。图2-12谷值探测子程序前面板图2-13谷值探测子程序后面板图2-14谷值探测子程序内部框图图2-15数据存储程序框图至此,脉搏的采集系统已经完成了,可以实现脉搏信号进行采集、显示时域和频域波形、整周期存储等功能。2.3.3生成可执行应用程序由于LabVIEW的安装程序很庞大,安装程序就有1.6G。安装到电脑上的应用程序有1G左右。安装的时间要一个小时左右。这为脉搏采集系统的推广与应用带来了很大的不便,也为工作人员采集数据带来了不便。基于这个问题,我们应用LabVIEW建立了项目(project),把所需要的软件驱动程序集成在一起,例如LabVIEWRun-timeEngine、VISA驱动和NI-serial驱动,做成一个安装文件。并将设计好的采集与分析系统做成可执行应用程序。这样,在没有安装LabVIEW的计算机上也可以通过安装驱动程序,运行脉搏采集系统。这为工作人员节省了时间。做成的可执行应用程序保留系统的前面板,而后面板隐藏起来,用户看不到。这样还可以保护开发者的知识产权。2.3.4样本的采集与误差分析样本的采集(1)脉搏的检测脉搏通常选用较表浅的动脉,最常采用的部位是靠拇指一侧手腕部的桡动脉,左右手均可,但是一般情况下男生右手脉搏波跳动较为强烈,女生左手脉搏波跳动较为强烈,可以按照这个来进行测试。检查脉搏前,要让受测试者休息10至15分钟,心情放松并保持安静。受测试者取坐卧的姿势都可以,但是由于场地的限制,本次均采用坐姿。将手平放于适宜的位置,腕部伸展,一般与心脏齐平的桌子上,并在手腕下方垫上一个棉垫。检查着将食指,中指和无名指三指并齐放在患者近手腕段的桡动脉上,左右移动,找到脉搏跳动位置最强烈的地方,不能用拇指摸脉,因为拇指本身动脉搏动较强,易与患者脉搏混淆,然后将传感器探头置于此位置上,用弹性腕带包裹住。一般情况下测量时间为脉搏波数据填满整个时间窗口大小,即存储的数组全部填满,时间为12秒左右。测量位置的选择如图所示:图2-16测量位置图(2)样本的收集脉搏采集系统设计完成后,就可以进行人体脉搏数据的采集了。由于是初步探讨性的进行研究,具体什么病症对应什么样的脉象都是一个未知数,所以首先要选择有代表性的疾病人群,要求这种病要与心脏和血管直接相关,分析起来会比较清楚,之后再进行其它病症的分析。为了找到健康群体与患病者的脉搏差异,健康人和病人的数据都要采集。地点选择在学校采集健康人群的数据,在南京军区总医院糖尿病科和心血管科采集病人的脉搏。由于数据要具有统计规律,所以数据采集应该尽量多,但是由于时间的限制,采集检测对象134例,其中健康人73例,男生38例,女生35例。冠心病、高血压患者61例。误差分析(1)误差分析原理①研究随机过程理论的实际意义[14]:重复测量一个不变的物理量,由于被测量、测量仪器或测量条件的随机因素,造成所测得一系列测量结果包含随机误差(偶然误差),其中每次测量结果都是取得一个随机的、但是唯一的测量值,因而,测量结果是一个随机变量。随着自动化生产和科学研究的发展,越来越多地需要测量连续变化的过程,这时,被测量可能是随时间而连续变化,或者是随空间而连续变化。因此测量过程和测量结果也是随时间而连续变化的。同样,由于被测对象、测量仪器和测量条件的随机误差,因而被测过程和测量结果都是一个随机的但是连续变化的函数。它有别于上述随机变量,我们称之为随机函数。随机过程理论就是研究随机性表现为一个过程的随机现象的学科,通常它是研究动态测量过程及其测量结果的理论根据。②测量过程的基本概念:在动态测量中,对某一个不断变化着的量进行测量,每一个测量结果是一个确定的随时间或空间变化的函数,对于测量的时间间隔内的每一瞬时,这函数都有一个确定的数值。但由于随机误差的存在,使得重复多次测量,会得到不完全相同的函数结果。这种函数,对于自变量(时间或空间)的每一个给定值,它是一个随机变量,称这种函数为随机函数。自变量为时间t的随机函数,通常叫随机过程。自变量为空间坐标L的随机函数,通常叫随机场。随机场和随机过程的研究方法是一样的。因此以下统称随机过程或随机函数。所有对自变量为时间t的随机函数计算公式,同样适用于自变量为空间坐标l或其他参量的随机函数。随机函数用表示。每个测量结果叫做随机函数的一个实现,或一个样本,如。而表示这些随机函数样本的集合(总体):(2-1)因此,随机过程或随机函数包含如下内容:把看作是样本集合时,意味着一组时间函数的集合;把看作是一个样本(或一个现实)时,意味着一个具体的时间函数,例如=;若时,则意味着一组随机变量的集合。这就是随机函数或随机过程的含义。实际上,这含义的本质是一样的,只是对随机过程的描述方式不同。含义1是从总体集合意义上讲的。含义2是从一个时间历程(一个现实)上描述。一个现实是表示一次实验给定的结果,这时,随机函数表现为一个非随机的确定性函数。③随机过程的特征量:随机变量通常用它的概率分布函数、算术平均值和标准差作为特征向量来表示。同样,随机过程也有它的特征量,这些特征量不像随机变量的特征量那样表现为一个确定的数,而是表现为一个函数。常用四种统计函数来表示,即:概率密度函数;均值、方差和方均值;自相关函数;谱密度函数。其中随机函数的均值(数学期望)是一个时间函数。对于自变量t的每一个给定值,等于随机函数在该t值时的所有数值的平均值(数学期望),即。由此可见,随机过程的均值是一个非随机的平均函数,它确定了随机函数的中心趋势,随机过程的各个实现(样本)都是围绕它变动,而变动的分散程度则可用方差或标准差来评定。随机函数的方差也是一个时间函数,对于自变量t的每一个给定值,等于随机函数在该t值时的数值对均值偏差平方的平均值(数学期望),即:(2-2)而随机函数的标准差准则为(2-4)由此可见,随机函数的方差和标准差也是一个非随机的时间函数,它确定了随机函数所有现实相对于均值的分散程度。当时刻,随机函数的方差和标准差计算类似于第二章随机误差的方差和标准差计算方法。均值和方差是表征随机过程在各个孤立时刻的统计特征的重要特征量,而自相关函数可以反映出随机过程不同时刻之间的关系。(2)误差分析由于每次测量时的位置略有差别,所以会产生随机误差,为了分析这种误差的影响,我们选取了同一个人测量的20次的样本进行分析。取样本的数学期望的过程如图2-17所示,该图中的五个波形就是同一个人不同时刻测量的数据,可以看得出,它们之间的相似度很高。取出其中的一个波形,把该波形同一个位置的数据取平均值,最后组成一个完整的平均的波形。取完数学期望后的波形如图2-18所示。该平均波形就可以较为准确的代表这个人的脉搏信号。通过误差分析可以得出,我们所采集的数据是有统计意义的。随即误差是肯定存在的,但是只要在一定范围内就是允许的。图2-17总体平均过程图2-18平均脉搏图第三章基于LabVIEW脉搏时域分析系统3.1时域分析系统概述因为时域上的波形给人的感觉比较直观。传统的脉象图形数学分析法也为时域分析法,所以目前国内对脉象信号的特征提取方法,多数采用时域分析法,即在时间方向上分析波动信号的动态特征。在采集来的数据当中,用肉眼观察时可以发现心血管疾病和正常人的时域脉搏信号区别很大。但是用什么样的客观化的方法给这种特征描述出来,还是需要摸索的。目前时域分析法包括直观形态法、多因素识脉法、脉象速率图法、脉图面积法、直观形态法。人们通过对主波、重搏前波、重搏波的高度、比值、时值、夹角、面积值的参量分析,找出某些特征与脉象变化的内在联系[13]。这其中也有一些方法值得尝试,但是这些方法的效果还是有待考究的,本文也尝试采用了脉图面积法和脉象速率图法来进行分析脉搏信号的时域波形,找出正常人与病人脉象之间的差异。基于LabVIEW平台下的时域分析系统的主要功能是:时域信号数据的读取,时频变换,主频和周期的计算,峰值谷值的检测与k值的计算,时域波形的求导运算,单个波形下降沿的检测及一阶导数为负占整个下降沿的百分比的计算,即求重搏波所持续的时间占整个下降沿的百分比。3.2时域分析系统原理3.2.1脉搏信号简介脉搏、脉象与脉象图[15]:心脏收缩搏动,将血液射入动脉管道,使动脉管内的压力,容积与血流状态均发生一系列的变化。而且心脏有着节律与频率的变化,这些变化在浅表的动脉可被切之,称为脉搏。医生施以不同的指法压力,用手的触觉和压觉得到患者脉搏的频率、节律、形状、深浅与强弱等的变化的综合形象,称为脉象。它是诊断疾病、病情的重要指征之一。脉诊所得脉象的各种信息,可用仪器放在切脉部位的皮肤上,模拟切脉方法以不同的取法压力录画出的脉象曲线,称为脉象图。脉象图是一个客观指标,以确定脉型、脉性和量的数据,掌握脉象变化的客观规律。典型的正常脉象图由一组波群及各波之间的间隔期组成并代表一个完整的脉搏搏动周期,如图3-1所示。正常人的脉象图一般包括A波、U点、P波、T波、V波和D波。其中A波产生的机理还不清楚。U点为始射点,P波为主波,T波为潮波,V波为降中波,D波为重搏波,是降支中突出的一个明显波。一般认为D波是主动脉瓣在心室舒张早期突然关闭,血液倒流产生在主动脉瓣上,并弹回血流,使主动脉压再次有所上升,血管又轻微扩张所形成的主动脉弹性回缩波,因此受血管弹性与主动脉关闭状态的影响较大。图3-1典型脉象图3.2.2K值计算的原理特征量K值的提取方法是基于脉博波形图面积法,从理论上讲K值能够反映人体心血管系统中血管外周阻力、血管壁弹性和血液粘度等生理因素,通过实验证实由心血管生理和病理上的变化将会引起脉搏波波图特征和面积的相应变化,它可反映在特征量K值的变化上,有一定的规律,是心血管疾病临床检查的一个生理指标。以脉搏波波图面积变化为基础的脉搏波波形特征量K值,其定义为(3-1)Pm=Pd+K(Ps-Pd)(3-2)(3-3)为平均动脉压,它等于一个心动周期中脉膊压力P(t)的平均值,Ps,Pd分别为收缩压和舒张压,如图3-2所示。图3-2脉搏波形特征向量K值的提取由此可见,K值的大小仅仅决定于脉搏波的脉图面积,它和收缩压(Ps)与舒张压(Pd)的绝对值无关,是一个无量纲值。它相当于脉搏波压力脉动分量的平均值(Pm-Pd)在脉动分量最大值(Ps-Pd)中所占的百分比。不同生理病理状态下脉图波形和面积都会有很大变化,这个变化可用K值来表示。3.2.3脉象速率图的原理脉搏波压力及波形特征变化是评价人体心血管系统生理病理状态的重要依据。无论是中医切脉或是西医心血管疾病检查,都试图从脉搏波的压力与波形变化中提取各种生理病理信息。这是因为,当脉搏波由心脏开始向动脉系统传播时,不仅要受到心脏本身的影响,同时也会受到流经各级动脉及分支中各种生理因素如血管阻力、血管壁弹性和血液薪性等的影响,使动脉波中包含有极丰富的心血管系统生理病理信息。由于不同心血管疾病时其血管阻力、血管壁弹性和血液粘性的不同,因而从外周动脉反射回心脏的反射波强度将会有很大差异。这个反射波与原来的脉搏波相迭加后即表现出脉搏波不同的波形特征[16]。脉象速率图也称脉象微分图。即动脉内压力的变化率,速率图反映的是脉图曲线中任意一点的变化率,斜率波与脉波相对应,正向波为升支斜率,反映脉波上升的变化速度;负向波为降支斜率,反映脉波下降的变化速度。分析斜率图的改变可更灵敏的反映各种脉象的变化趋向。如脉波为压力波时,则微分图为dp/dt图形,如脉波为动脉管的位移波时则为位移的微分。重搏波是正常人与患者之间差别的重要特征,通过对时域波形的求一阶导数,可以灵敏的反应出重搏波的大小和所占比例。具体方法可以通过得出斜率为正的部分和斜率为负的部分各占多少。脉搏波形中如果有重搏波,则在下降沿的过程中会出现频率为正的部分,重搏波持续的时间越长,则斜率为正的部分越多。一般越健康的人,血管的弹性也就越好,重搏波所占的比例也就越大,病人大部分的时域脉搏波形比较平滑。求单个波形下降沿的检测及一阶导数为负占整个下降沿的百分比的计算就是基于这个原理。通过这种方法可以大体找出健康者与病人之间的差异。3.3时域分析系统的设计3.3.1时域分析系统总体框图图3-3时域分析系统流程图3.3.2时域分析系统前面板设计根据时域分析功能总体框图,虚拟仪器面板需要用到如下一些控制键:仪器总开关、波峰阀值的设定、谷值阀值的设定、采样频率、时间窗口大小的设定、求周期VI的参数设定、频谱数据的保存。同时,虚拟仪器面板还要有如下一些指示栏:显示时域波形、显示FFT变换后的频谱图、显示时域信号经过一阶求导后的波形、显示求单个波形下降沿导数的波形图、显示K值的大小、显示主频和脉率、显示检测到的峰值和谷值的数目、显示平均峰值和平均谷值的大小等等。面板的设计既要简洁美观又需操作方便,为此,将面板上相互关联的功能键放置在一起并占特定的区域,这样做既是为了面板美观也是为了操作方便的器要。时域分析虚拟仪器面板如图3-4、图3-5所示。图3-4时域分析系统前面板上半部分图3-5时域分析系统前面板下半部分3.3.3各模块介绍(1)数据读入及FFT时频变换模块经过数据采集系统,已经可以把脉搏的时域数据存储起来,并且可以用EXCEL或写字板的形式打开。在时域数据分析系统中,就要把时域数据调出来并进行分析。数据的读入模块就是实现这个功能,数据读出来之后再进行FFT时频变换就可以还原出当时采集脉搏时的时域和频域信号。在进行时域波形显示时,时间窗口的大小可以选择,经过坎头去尾之后的时域波形会比原来设定的时间窗口中的数据少一些。所以可以设置前面板中的时间窗口大小,把数组后面多余的零去掉,这样经过FFT变换会更精确。时频变换部分的结构与数据采集系统中时频变换的结构相同。数据读入及时频变换后面板图如图3-6所示。图3-6数据读入及时频变换后面板(2)k值的计算模块:根据K值的计算公式:(3-1)我们需要求出Pm,Ps,Pd三个数值。Ps和Pd的值都是比较容易求出的,就是脉搏波的波峰值和波谷值,但是一个脉搏波形会有较大的误差,所以现在取整个时间窗口中的脉搏波(大约有10个左右),求出所有波的波峰值和波谷值,再进行算术平均,这样求出的Pm和Pd会比较准确。根据计算公式:(3-3)可以知道Pm的含义是脉搏压力脉动分量的平均值,也就是一个周期波形的面积除以时间,相当于RMS(均方根)的概念。均方根值也称作有效值,它的计算方法是先平方、再平均、然后开方。在LabVIEW中有专门求取RMS的子程序,也称为ExpressVI。通过这个子程序可以求出整个时间窗口内的RMS。至此,三个数值都可以求出来了,根据计算公式可以得出K值。之后就可以对不同人的脉搏进行K值的统计。K值的计算后面板框图如图3-7所示。数据分析在后面章节中介绍。图3-7K值的计算后面板框图(3)波形速率法模块:速率图反映的是脉图曲线中任意一点的变化率,它能更加灵敏地反映脉图中各个生理特征点。通过对时域波形的求一阶导数,可以得出斜率为正的部分和斜率为负的部分各占多少。时域波形速率法的后面板框图如图3-8所示。图3-8时域波形速率法的后面板框图这个模块的功能首先要对整个时间窗口中的脉搏波进行求导,这样可以有一个全面直观的概念。之后要能找出一个脉搏波的下降沿,也就是说要从一个脉搏波的波峰记录到该脉搏波的波谷。由于之前的模块已经可以求出脉搏波的峰值和谷值,在这个模块中就可以引用原来做好的功能。在求出单个脉搏波的下降沿之后,就可以对这段波形进行求导运算,应用局部变量设置一个计算器,把斜率为正的点全部计算在内,然后除以下降沿内的所有点的数值,就可以得出斜率为正的部分占整个下降沿的百分比,如果重播波持续的时间比较长,则百分比的数值就比较高。计数器的程序框图如图3-9所示:图3-9计数器的程序框图(4)脉率测量和心率不齐检测模块:①脉率的测量在测量脉搏中,大家关注的另一个因素就是脉率,也就是一分钟脉搏跳动的次数,脉率也是脉搏的基本特征之一。正常人的心脏应该能够有节奏、有规律的跳动。每一次跳动与下一次跳动之间有一定的时间间隔,正常成年人每分钟心跳为60-100次。在此之间的变化,都视为正常。每分钟超过100次即为心跳频率过快,又称心动过速、或心率过快;每分钟低于60次,即为心跳频率过慢,又称心动过缓,或心率过缓。不论是心率过快,还是心率过缓,都是由于心脏跳动的节律失常所致。所以用LabVIEW做出这个功能还是非常有意义的事情。在时域分析系统中,如果想求出脉率,只需测出主频的大小,然后乘以60即可。为了使主面板框图变得整洁,将主频的测量模块做成子程序VI放在时域分析系统的主程序当中,子程序的前面板如图3-10所示,子程序的后面板框图如图3-11、图3-12所示。本模块具体的实现方法是,通过使用循环结构,对每个脉搏波形进行周期、脉宽和占空比的测量,然后将时域窗口中所有波形的周期进行平均,这样求出来的周期就比较准确了,再求个倒数,就是我们要的主频了。图3-10测量主频子程序的前面板图3-11测量主频子程序的程序框图图3-12测量主频子程序内部框图②心律不齐的检测:心脏每一次跳动之间的间隔时间上下误差不超过0.12秒,在医学上均视为正常。由于某种原因,心跳的节奏或节律出现了不规则的变化,也就是节奏出现不一致时,就是医生常常为我们诊断的心律不齐。求心律不齐可以通过计算每个脉搏波的周期,求出数学期望和标准方差,如果标准方差在0.1之内则可视为正常,如果超出这个范围就可以初步认定为心律不齐。具体的实现办法是通过求出时域窗口内每个脉搏波的周期,把这些数据存到一个数组中,之后用LabVIEW中的求标准差的VI,对这个数组中的数求出平均值和标准方差。标准方差可以确定随机数组所有现实相对于均值的分散程度。其中标准方差的计算公式为:(3-4)图3-13计算标准方差的程序框图(5)频域数据存储模块:如同采集系统存储时域数据,时域分析系统也要设置这么一个功能,将频谱数据存储起来,用于之后的频域分析使用。虽然可以将频域分析系统和时域分析系统做成一个整体的分析系统,但是由于程序框图太大,并且分析起来不方便,所以还是选择将频域数据单独存储起来。略有区别的是,频谱图由三个分量决定:f0、df、幅度,所以在存储数据的时候要把这三个分量同时存储起来,后面板框图如图3-14所示。在频域分析系统中再把这三个分量组合起来,就可以形成完整的频域波形图。图3-14频域数据存储模块的后面板框图3.4数据分析与结果3.4.1脉图面积法数据和分析(1)K值的比较在研究K值的问题中,我们比较了不同健康状况人群实测的典型脉搏波形与对应的特征量K值。其中图3-15所示对应年青健康人,临床表现为血管阻力低和动脉弹性好,K=0.35左右。而图3-16、图3-17、图3-18所示对应健康的青年人,临床表现为血管阻力和动脉弹性适中,K=0.4~0.5左右。图3-19所示对应严重高血压和血管硬化病患者.临床表现为血管阻力极高和动脉弹性极差,K=0.5左右。图3-15K=0.365图3-16K=0.426图3-17K=0.555图3-18K=0.469图3-19K=0.453图3-20K=0.539(2)K值的分析由计算结果可知,随血管外周阻力和血管壁硬化程度等生理因素的变化,人体脉搏波波形特征将出现一系列规律性的变化,从而K值也出现与其相对应的变化。当外周阻力较低,血管壁弹性较好时,波形的特征是主波窄而高,重搏前波不明显,重搏波峰和波谷很明显。这时的K值约在0.35左右。随着外周阻力和血管壁硬化程度增加,波形的动态变化首先反映在重搏前波由不明显变为明显,它相对主波的位置也逐渐升高,并自前向后与主波接近并呈不同程度的融合,甚至超过主波。同时,重搏波峰与波谷相对主波的位置亦逐渐抬高,且混为一体不易区分,使整个脉搏波波形呈馒头型。这时的K值也将相应地逐渐增加到0.5左右。(3)K值分析方法的不足在健康人群中,经常会出现图3-17、图3-18两种脉象,潮波和降中波相对明显,位置偏上,所以相应的RMS值偏高,K值求出来偏高。虽然可以证明该种脉象外周阻力和血管壁硬化程度要比3-15中的有所增加,但是血管的弹性明显比3-20要好的多。反映出来的K值却相差不多。在心血管疾病病人中,也经常会出现图3-21、图3-22两种脉象,虽然血管的外周阻力和血管壁硬化程度增加,波形的动态变化反映出重搏前波很不明显,重搏波基本消失。但是RMS求出来的值却很低,相对应的K值也偏低。由于这些因素的存在,对于健康人群和心血管病人的K值的统计差别并不是很大,该方法还有待于改进。应寻找出更加能体现出这种差异的办法。图3-21K=0.441图3-22K=0.3093.4.3脉象速率法数据和分析由于重搏波是正常人与患者之间差别的重要特征,如果能提取出这个特征值,就可以初步区分健康者与患者。对时域波形的求一阶导数,可以灵敏的反应出重搏波变化规律和所占比例。脉搏波形中如果有重搏波,则在下降沿的过程中会出现频率为正的部分,重搏波持续的时间越长,则斜率为正的部分越多。一般越健康的人,血管的弹性也就越好,重搏波所占的比例也就越大,病人大部分的时域脉搏波形比较平滑。通过统计健康人群和高血压、糖尿病、冠心病脉图导数下降沿斜率为正的部分占整个下降沿的百分比,可以得出健康人的百分比为10%至25%,而患者的百分比为5%以下。如果百分比越大,则说明重搏波所持续的时间也就越长,也就是血管壁弹性比较好,血管的阻力低。可以用5%作为一个分界点,通过这种方法可以清楚地表征重搏波的特征值。图3-25、图3-28、图3-29三幅图中重搏波的百分比分别为:21.84%、10.16%、2.14%。前两张是健康人的脉搏图,而第三张是糖尿病患者的脉搏图。可以看出,图3-29中病人脉搏图中的重搏波基本上已经消失,所以重搏波所占比例仅为2.14%,而正常人或多或少都会存在重搏波。90%以上的测量样本都是符合这个规律。所以说这种方法具有统计意义。图3-26是图3-25的一阶导数图,图3-27为图3-25下降沿的一阶导数图。图3-2521.84%图3-26时域波形的一阶导数图图3-27一个时域波形下降沿的一阶导数图图3-2810.16%图3-292.14%3.4.2脉率测量和心率不齐检测的数据分析检测心律不齐可以通过计算每个脉搏波的周期,求出数学期望和标准方差,如果标准方差在0.1之内则可视为正常,如果超出这个范围就可以初步认定为心律不齐。图3-23所示为心率不齐的患者,并且伴有心律过缓,标准方差为0.11,脉律为37。而图3-24所示为健康的青年人,标准方差为0.02,脉率为69。通过这个功能可以明显地区分出心率正常和心率不齐患者的差别。为临床诊断心率提供了有效的简单易行的方法。图3-23标准方差为0.11,脉率37图3-24标准方差为0.02,脉率69第4章基于LabVIEW脉搏频域分析系统4.1频域分析系统概述为了研究脉搏波的波形特征与生理因素的关系,目前国内外许多研究者大都是以临床实测或模型计算脉搏波图为根据,然后分别在时域或频域中对脉搏波图提取特征信息[17,18,19]。时域中提取信息的特点是通过提取脉搏图曲线中一些有明确生理意义的点来作为评价脉搏波的特征点,这个方法的优点是直观、临床医生容易接受,但实际应用上会遇到一些难以解决的困难。例如,由于此方法是建立在脉搏波曲线某些点的特征上,没有把曲线所包含的全部信息利用起来。此外,要想进行自相关估计的计算,直接用时域波形进行分析运算量较大,而且数值欠稳定,故常用傅里叶变换法计算。与时域分析不同,脉搏信号的频域特征可分辨性好。频域分析法主要是通过离散快速傅里叶变换,将时域的脉搏波曲线变换到频域,得到相应的脉搏频谱曲线,通过频谱曲线的特征分析,从中提取与人体生理病理相应的信息,实现脉象分类。频域分折包括功率谱分析和倒谱分析。频谱分析是电子工程上一个非常重要的手段,许多计算机辅助电路分析类软件都具备这种分析能力,以便电子工程师能清楚的看到某波形的频谱分布情况。它的优点是特征信息以脉搏波所具有的全部频率分量的集合形式表示,因而保留了脉搏波中的全部信息。而现代数字谱系统采用快速傅立叶变换(FFT),利用计算机对于1024点序列作谱分析,只需十几毫秒甚至几毫秒,实时处理能力很强,而且频谱分辨能力也很强。在医学物理领域中应用广泛[20,21,22]。基于这些优点,我们设计了频域分析系统,将脉搏信号进行频域中的特征信息的提取。从能量角度研究了几种不同疾病脉搏信号的频域特征和差异。但是目前用什么样的方法将频域信号的特征清楚的呈现出来还不能确定,是一个探索和尝试的过程。在本文中我们在频域分析中借鉴了模式识别中语音识别的技术,将谐波分量提取出来,所有谐波分量将确定一个多维的向量,病人和正常人向量之间的相关度和空间距离都存在着差异。频域分析系统的主要功能是:频域信号数据的读取,谐波数据的提取,进行向量变换,db数值到绝对值的变换,向量数据的存储。4.2频域分析的基本原理4.2.1数字信号处理傅里叶变换信号一般有两种基本形式:时域形式和频域形式。为了分析上的方便,往往需要信号在频域中的描述。傅立叶变换就是一种描述信号频域特性的方法,它也是众多科学领域里重要的应用工具之一。下面就给出傅立叶变换的定义:(4-1)傅里叶变换是一种刻画函数空间,求解微分方程,进行数值运算的有效工具。它可以把许多常见的微分、积分和卷积运算化简成代数运算。在平稳信号分析和处理中有着突出的贡献,因为它可以把复杂的时间信号和空间信号转换到频率域中,用频谱特性去分析和表示时域信号的特性。但是,对常见的不平稳信号,如语音信号、音乐信号、探地信号、核探测的脉冲信号、以及核医学的图像信号等,它们的频域特性是随时间变化的,人们需要了解某些局部时段上所对应的主要频率特性,也需要了解某些频率的信息出现在那些时段上,也就是需要了解时-频部分化要求。对于这种时-频局部化要求,傅立叶变换是无能为力的。可见:从时间(模拟)信号中提取频谱信息F(ω),就是取无限的时间量,即使用(-∞,∞)的时间信息来计算单个频率的频谱;或者说,频域过程F(ω)的任一频率组成部分的值,是由时域过程f(t)在(-∞,∞)上决定的。过程f(t)在任一时刻的状态也是由F(ω)在整个频域(-∞,∞)的量决定。故f(t)和F(ω)间的彼此的整个刻画,不能反映各自局部区域上的特征。也就是说,人们虽然从傅立叶变换能清楚地看到一个信息包含的每一个频率的多少,但很难看出不同信号何时发射和发射了多长时间,缺少时间信息使得傅立叶分析变得脆弱而容易失误。对于一个特别简单的信号、或信号突然变化和不可预测的情况,傅立叶分析不可用。短时傅里叶变换短时傅里叶变换式最早和最常用的一种时频分析方法,是傅立叶变换的自然推广。为使变换具有时频局域性,它先将时间信号加窗,然后将时间窗滑动做傅里叶变换,就得到信号的时变谱或短时谱。因此,短时傅里叶变换是用时间窗的一段信号来表示他在某个时刻的特性。显然,窗越宽,时间分辨率越差,但为提高时间分辨率面缩短窗宽时,又会降低频率分辨率。在傅立叶积分中,使用空间窗口函数g(t-τ)与信号f(t)相乘,实现在τ附近的开窗和平移,然后进行傅立叶变换。在线性空间有一个可测的、平方可积的函数f(t)∈L2(R),对其进行窗式傅立叶变换:(4-2)为其中的积分核,为在点附近度量了频率为u的正弦分量的幅度。时窗函数g(t):通常选窗口函数为能量集中在低频处的实偶函数;信号在乘以平滑移动的窗函数g(t-u)后,有效地抑止了的邻域以外的信号,所以,再对f(t)g(t-u)进行傅立叶变换所得的结果,反映了t=u时刻附近的局域频谱信息,也就是给出了按窗口f(t)宽度分解信号的频谱F(ω),从而达到了时域局域化的目的。时窗函数的傅立叶变换G(ω)=gˆ(ω)为频窗函数。图4-1窗的概念从以上定义知,和g(t)和G(ω)分别起着时窗和频窗的作用,在时间-频率坐标系中,时窗和频窗共同作用的结果就构成了时-频窗,这样就从几何上直观低描述了时频局部化。由窗式傅立叶变换对函数进行的分析,相当于用一个形状、大小和放大倍数相同的“放大镜”在时-频相平面上移动去观察某固定长度时间内的频率特性,如上图所示。这里的问题是:尽管窗式傅立叶变换能解决变换函数的局域化问题,但是,其窗口的大小和形状是固定的,即窗口没有自适应性。图4-2窗口的概念在实际问题中,对于高频谱的信息,由于波形相对要窄,时间间隔要相对的小以给出比较好的精度,也就是更好地确定峰值和断点,或者说需要用较窄的时域窗来反映信息的高频成分;而对于低频谱的信息,由于波形相对是宽的,时间间隔要相对的宽才能给出完整的信号信息,或者说必须用较宽的时域窗来反映信息的低频成分。而用Gabor变换,如果你选择一扇宽的时频窗,低频成分可以看得清楚,在高频部分确定时间时就很糟糕;若你选一扇窄的时频窗,在高频可以很好确定时间,但在低频的频率就可能装不进去。这样,真正合适的做法是“放大镜”的长宽是可以变化的,在时-频相平面上分布可如下图示。正是为了实现这样的目的,人们引进了小波变换。小波变换小波变换是80年代后期新发展起来的一种数学分析方法,目前已经受到数学界和工程界的极大重视。现在,小波分析已经被成功地应用于信号处理、图像处理、地震勘测、模式识别、计算机视觉、故障监控等众多学科和相关技术的研究中,而我们对于小波分析的研究也正在一步步地向更深的层次发展。在本文中,小波分析是主要的理论基础。小波,即小区域的波,是一个特殊的长度有限、平均值为0的波形。它有两个特点:一个“小”,即在时域都具有紧支集或近似紧支集;二是正负交替的“波动性”,也即直流分量为零。所有小波是通过对基本小波进行尺度伸缩和位移得到的。基本小波是一具有特殊性质的实值函数,它是震荡衰减的,而且通常衰减得很快,在数学上满足积分为零的条件:。设函数且满足条件:则称ψ为一个小波基。设f(t)是平方可积函数(记作f(t)∈L2(R)),ψ(t)是基本小波。则(4-3)称为f(t)的小波变换。式中是伸缩尺度因子。式中不但t是连续变量,而且s>0也是连续变量,因此称为连续的小波变换。我们可以看出小波变换具有如下的特点:①具有多分辨率,也叫多尺度的特点,可以由粗及细地逐步观察信号。②可以看成用基本频率特性为Ψ(t)的带通滤波器在不同尺度s下对信号做滤波。由傅立叶变换的尺度特性可知这组滤波器具有品质因数恒定,即相对带宽(带宽与中心频率之比)恒定的特点。注意,s越大相当于频率越低。③适当地选择基本小波,使Ψ(t)在时域上为有限支撑,Ψ(t)在频域上也比较集中,便可以使WT在时、频两域都具有表征信号局部特性的能力,因此有利于检测信号的瞬态或者奇异点。基于上述特性,所以也有人将小波变换誉为分析信号的数学显微镜。4.2.2向量法的基本原理向量法的基本思想来自于语音的模式识别,语音是一种声波,而脉搏信号则是一种次声波,语音识别技术已经发展多年,所以有一些成熟的特征提取的方法可以借鉴。从语音信号中提取的说话人特征常常时一个多维矢量的时间序列。我们根据这个思想,想从频谱数据中提取类似的特征向量。在测量过程中发现,虽然频谱图千变万化,但是每个人频谱中都有谐波,只是有的人明显,有的人不明显。如果从频谱图找出了各个谐波,然后再映射到向量空间中,就可以组成了一个多维矢量,这个过程如图4-3所示。可以根据这个矢量进行接下来的分析。下面首先对模式识别做一个简介。语音识别系统主要包括两个部分:特征提取和模式匹配[23]。频谱空间频谱空间谐波空间向量空间谐波提取向量变换图4-3空间变换(1)特征提取说话人的模型不是由语音信号得到的,而是通过从语音信号中提取特征而得到的,是说话人语音特征的模型。测试音只有在经过特征提取后才与说话人的模型进行比较和匹配,训练语音也只有进行语音特征提取后才能得到其特征的模型,因此特征提取是说话人识别系统中的重要组成部分。与计算机处理相对应,可以将人类的声音特征划分为以下三个层次:声道声学层次,在分析短时信号的基础上,抽取对通道、时间等因素不敏感的特征;韵律特征层次,抽取独立于声学、声道等因素的超音段特征,如方言、韵律、语速等;语言结构层次,通过对语音信号的识别,获取更加全面和结构化的语义信息。说话人识别系统主要针对较低层次的声道声学特征进行建模,主要有基音周期、共振峰、基于线性预测的倒谱、基于付氏变换的FFT倒谱、基于语音信号的滤波器组分析的Mel倒谱和语音谱的过渡信息等。总之,较

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论