一种列车调度员疲劳监测图像自适应处理算法制造技术

技术编号:20273393 阅读:20 留言:0更新日期:2019-02-02 03:58
本发明专利技术公开了一种列车调度员疲劳监测图像自适应处理算法,属于基于生物特征的模式识别的技术领域,通过自适应人脸检测算法将上一帧图像检测结果优化当前帧图像检测参数,最大限度缩小检测范围,降低过程检测次数,提高图像检测效率;根据人脸人眼关系和双眼位置关系,通过自适应快速人眼检测及智能估算算法,进一步缩小人眼检测范围,同时进行眼睛位置有效推断和数据校验,有效提高数据准确性和完备性;根据间隔人脸识别和跳帧快速处理算法将连续图像检测结果评估后续一段时间图像质量,做出差异化跳帧处理,提高图像处理效率,以达到通过自适应检测技术根据当前处理获得数据对后续处理过程进行自适应调整,能够提高图像处理质量和效率的目的。

【技术实现步骤摘要】
一种列车调度员疲劳监测图像自适应处理算法
本专利技术属于基于生物特征的模式识别的
,涉及图像处理、模式识别、计算机视觉和人体生理学等多方面理论与技术,具体而言,涉及一种列车调度员疲劳监测图像自适应处理算法。
技术介绍
人脸检测、人脸识别和人眼检测是根据面部和眼睛特征在图像中确定人脸和人眼区域,辨识人脸对应的对象身份,涉及图像处理、模式识别、计算机视觉和人体生理学等多方面理论与技术。OpenCV(OpenSourceComputerVisionLibrary)是英特尔公司发起并参与开发的跨平台的计算机视觉库,由一系列C函数和少量C++类构成,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV能够运行在Linux、Windows和MacOS操作系统上,同时提供了Python、Ruby和MATLAB等语言接口,具有跨平台、轻量级且高效、不依赖于其它外部库和免费开源特点,是图像处理、模式识别和计算机视觉领域二次开发的理想工具。OpenCV提供众多图像处理、模式识别和计算机视觉领域基本功能的基本dll库,但是其显著缺点是几乎没有提供GUI接口,难以直接满足应用程序开发的需要。EmguCV则是OpenCV的一个跨平台的.Net封装,通过封装允许用.Net语言来直接调用OpenCV函数,能够很好地连接C#与OpenCV,从而弥补OpenCV在GUI方面的不足。人脸检测和人眼检测均属于目标检测领域,级联AdaBoost算法是OpenCV支持且广泛应用的目标检测算法,利用样本Haar特征训练获得AdaBoost级联分类器,调用Haar检测函数实现目标检测。其中AdaBoost算法核心思想是针对同一个训练集训练不同的弱分类器,将这些弱分类器集自适应地提升为强分类器,通过迭代加权最终收敛趋于稳定。图像检测和图像识别技术发展迅速,人脸检测和人脸识别技术已在各行各业广泛应用。基于人眼闭合程度的非接触式PERCLOS方法得到行业广泛认可,并开始在汽车驾驶员和飞行员疲劳监测中得到应用,取得了良好效果。与此同时,EMGUCV提供了便捷高效的系统接口,能够实现人脸检测和人脸识别基本功能,满足基本需要。列车调度员调度指挥工作环境具有显著开放性,管辖范围宽、集成信息广、设备和系统多,技术设备布置通常采用多排多列模式。与其他行业人员中主要将目光主要聚焦在正前方向不同,列车调度员在调度指挥过程中会根据工作需要在不同时段聚焦不同区域,可能出现抬头、低头或左右侧视等动作,其视线聚焦具有显著分散特性。根据调度指挥工作场景特征、人体生理特征和疲劳监测需要,列车调度员疲劳监测系统性能需求主要体现为非侵入性、并行性、连续性、高效性和准确性共五个方面。图像处理是疲劳监测最为耗时的环节,关系着疲劳监测系统数据处理效率和性能,列车调度员并行疲劳监测对图像处理技术效率提出了更高要求,现有技术已经难以满足需要。
技术实现思路
为了解决现有技术存在的上述问题,本专利技术目的在于提供一种列车调度员疲劳监测图像自适应处理算法以达到在图像处理不同模块的功能实现,满足系统在质量和速度方面的性能需求,通过自适应检测技术根据当前处理获得数据对后续处理过程进行自适应调整,能够最大限度地提高图像处理质量和效率,在实现图像处理功能的同时满足系统性能需求的目的。本专利技术所采用的技术方案为:一种列车调度员疲劳监测图像自适应处理算法,基于VS2010的开发平台,利用C#语言调用EmguCV进行二次开发,主要包括以下:(一)人脸检测和人眼检测通过加载人脸分类器haarcascade_frontalface_alt2.xml获得FaceHaar,通过加载人眼分类器haarcascade_mcs_righteye.xml获得EyeHaar,调用DetectMultiScale函数分别得到以下公式:Faces=FaceHaar.DetectMultiScale(Image1,SF1,MinNH1,MinSize1,MaxSize1)(2-1)Eyes=EyeHaar.DetectMultiScale(Image2,SF2,MinNH2,MinSize2,MaxSize2)(2-2)其中,DetectMultiScale为CascadeClassifier类的多尺度检测方法,获取输入图像中特定目标对象的区域集合;Image1和Image2分别表示人脸检测和人眼检测的图像对象,类型为Image<Gray,byte>;SF1和SF2分别表示人脸检测和人眼检测的缩放因子;MinNH1和MinNH2分别表示构成人脸检测和人眼检测目标的相邻矩形的最小个数;MinSize1和MaxSize1分别表示人脸检测获得矩形区域的最小尺寸和最大尺寸;MinSize2和MaxSize2分别表示人眼检测获得矩形区域的最小尺寸和最大尺寸;(二)人脸识别人脸识别通过调用EmguCV中EigenObjectRecognizer类的Recognize方法实现,基于人脸检测获得的人脸区域,通过人脸特征辨别目标对象的身份,人脸识别过程遍历当前帧图像人脸检测获得的人脸区域,直到找到属于目标对象的人脸区域为止,再进行后续人眼检测和眼睑间距计算,其关键过程的公式如下:Recognizer=newEigenObjectRecognizer(Images,Labels,DistanceThreshold,termCrit)(2-3)Name=recognizer.Recognize(result).Label(2-4)Images为人脸识别训练图像阵列,类型为Image<Gray,byte>;Labels为人脸识别图像阵列对应的标识号阵列,类型为string;DistanceThreshold为特征距离阈值;TermCrit为人脸识别训练标准,类型为MCvTermCriteria;Name为人脸识别获得的对象身份标识,属于Labels中元素。进一步地,所述人脸检测采用基于帧间约束的快速自适应人脸检测算法,在人脸检测区域内,人脸检测搜索窗口从MinSize1尺寸开始进行顺序检测,如不能检测到人脸则搜索窗口扩大SF1倍,以此循环进行直到检测到人脸或搜索窗口尺寸达到MaxSize1为止;令i为图像处理的帧变量,PRi为该图像矩形区域,DRi为该图像人脸检测目标区域,FRi为该图像检测到的人脸矩形区域,则:MinSize1i≤FRi.Size≤MaxSize1i(2-6)取下一帧图像的人脸检测目标区域为DRi+1,窗口尺寸为MinSize1i+1和MaxSize1i+1,令f1、f2和f3分别表示DRi+1、MinSize1i+1和MaxSize1i+1与FRi之间的自适应函数关系:DRi+1=f1(FRi)1≤i≤M-1,i∈N(2-7)MinSize1i+1=f2(FRi)1≤i≤M-1,i∈N(2-8)MaxSize1i+1=f3(FRi)1≤i≤M-1,i∈N(2-9)其中,M为当前视频文件的图像帧数。进一步地,令λ为搜索区域拓展系数,则第i+1帧图像中人脸检测目标区域DRi+1的位置参数为X和Y,尺寸参数为Width和Height;所述f1自适应函数采用如下公式表示:令α和β本文档来自技高网
...

【技术保护点】
1.一种列车调度员疲劳监测图像自适应处理算法,其特征在于,基于VS2010的开发平台,利用C#语言调用EmguCV进行二次开发,主要包括以下:(一)人脸检测和人眼检测通过加载人脸分类器haarcascade_frontalface_alt2.xml获得FaceHaar,通过加载人眼分类器haarcascade_mcs_righteye.xml获得EyeHaar,调用DetectMultiScale函数分别得到以下公式:Faces=FaceHaar.DetectMultiScale(Image1,SF1,MinNH1,MinSize1,MaxSize1)  (2‑1)Eyes=EyeHaar.DetectMultiScale(Image2,SF2,MinNH2,MinSize2,MaxSize2)    (2‑2)其中,DetectMultiScale为CascadeClassifier类的多尺度检测方法,获取输入图像中特定目标对象的区域集合;Image1和Image2分别表示人脸检测和人眼检测的图像对象,类型为Image

【技术特征摘要】
1.一种列车调度员疲劳监测图像自适应处理算法,其特征在于,基于VS2010的开发平台,利用C#语言调用EmguCV进行二次开发,主要包括以下:(一)人脸检测和人眼检测通过加载人脸分类器haarcascade_frontalface_alt2.xml获得FaceHaar,通过加载人眼分类器haarcascade_mcs_righteye.xml获得EyeHaar,调用DetectMultiScale函数分别得到以下公式:Faces=FaceHaar.DetectMultiScale(Image1,SF1,MinNH1,MinSize1,MaxSize1)(2-1)Eyes=EyeHaar.DetectMultiScale(Image2,SF2,MinNH2,MinSize2,MaxSize2)(2-2)其中,DetectMultiScale为CascadeClassifier类的多尺度检测方法,获取输入图像中特定目标对象的区域集合;Image1和Image2分别表示人脸检测和人眼检测的图像对象,类型为Image<Gray,byte>;SF1和SF2分别表示人脸检测和人眼检测的缩放因子;MinNH1和MinNH2分别表示构成人脸检测和人眼检测目标的相邻矩形的最小个数;MinSize1和MaxSize1分别表示人脸检测获得矩形区域的最小尺寸和最大尺寸;MinSize2和MaxSize2分别表示人眼检测获得矩形区域的最小尺寸和最大尺寸;(二)人脸识别人脸识别通过调用EmguCV中EigenObjectRecognizer类的Recognize方法实现,基于人脸检测获得的人脸区域,通过人脸特征辨别目标对象的身份,人脸识别过程遍历当前帧图像人脸检测获得的人脸区域,直到找到属于目标对象的人脸区域为止,再进行后续人眼检测和眼睑间距计算,其关键过程的公式如下:Recognizer=newEigenObjectRecognizer(Images,Labels,DistanceThreshold,termCrit)(2-3)Name=recognizer.Recognize(result).Label(2-4)Images为人脸识别训练图像阵列,类型为Image<Gray,byte>;Labels为人脸识别图像阵列对应的标识号阵列,类型为string;DistanceThreshold为特征距离阈值;TermCrit为人脸识别训练标准,类型为MCvTermCriteria;Name为人脸识别获得的对象身份标识,属于Labels中元素。2.根据权利要求1所述的列车调度员疲劳监测图像自适应处理算法,其特征在于,所述人脸检测采用基于帧间约束的快速自适应人脸检测算法,在人脸检测区域内,人脸检测搜索窗口从MinSize1尺寸开始进行顺序检测,如不能检测到人脸则搜索窗口扩大SF1倍,以此循环进行直到检测到人脸或搜索窗口尺寸达到MaxSize1为止;令i为图像处理的帧变量,PRi为该图像矩形区域,DRi为该图像人脸检测目标区域,FRi为该图像检测到的人脸矩形区域,则:MinSize1i≤FRi.Size≤MaxSize1i(2-6)取下一帧图像的人脸检测目标区域为DRi+1,窗口尺寸为MinSize1i+1和MaxSize1i+1,令f1、f2和f3分别表示DRi+1、MinSize1i+1和MaxSize1i+1与FRi之间的自适应函数关系:DRi+1=f1(FRi)1≤i≤M-1,i∈N(2-7)MinSize1i+1=f2(FRi)1≤i≤M-1,i∈N(2-8)MaxSize1i+1=f3(FRi)1≤i≤M-1,i∈N(2-9)其中,M为当前视频文件的图像帧数。3.根据权利要求2所述的列车调度员疲劳监测图像自适应处理算法,其特征在于,令λ为搜索区域拓展系数,则第i+1帧图像中人脸检测目标区域DRi+1的位置参数为X和Y,尺寸参数为Width和Height;所述f1自适应函数...

【专利技术属性】
技术研发人员:杨奎彭其渊张晓梅胡雨欣
申请(专利权)人:中国铁路总公司西南交通大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1