一种基于双目相机的实时人体坐姿情况检测方法

文档序号:10656090阅读:408来源:国知局
一种基于双目相机的实时人体坐姿情况检测方法
【专利摘要】本发明公开了一种基于双目相机的实时人体坐姿情况检测方法。通过张正友标定法获得相机内外参数,实时采集上半身人正面的照片图像,通过相机内外参数对照片图像预处理。利用双目相机采集的两幅图像的视差获得图像的深度信息,对每张图像进行检测获得人脸、双眼、嘴巴和双肩肩膀的位置,从而获得头部的姿态角、人体上半身的姿态角和眼睛与阅读对象之间的距离。本发明能实时坐姿检测,可用于纠正坐姿,评估用户的疲劳程度和认真程度,疲劳提醒,将有助于青少年视力的保护;采用被动式探测,对人无影响,并且全面考虑了各种实际环境中可能遇到的干扰因素,具有快速,高精度,鲁棒性好,性价比高等优点。
【专利说明】
一种基于双目相机的实时人体坐姿情况检测方法
技术领域
[0001]本发明属于计算机视觉、机器学习技术领域,尤其是涉及了一种基于双目相机的实时人体坐姿情况检测方法。
【背景技术】
[0002]视觉信息是人类与外界发生联系的最重要信息来源,视力至关重要。但如今,面对电子产品的普及、生活工作学习压力增大,近视及更严重的视力问题屡见不鲜。不正确的坐姿及用眼习惯极易导致近视,我国小学生近视眼发病率为22.78%,中学生为55.22%,高中生为70.34%。医学研究表明,人体坐姿、用眼习惯和环境光亮度对近视发病率有着较大的影响。研发出能实时高精确度识别错误阅读文字、看电子屏幕等的姿势、评估专注度、疲劳度,进而给出有效提醒的便携式人体坐姿系统,对于降低青少年由于用眼姿势不对而引发的近视率具有实际的意义。
[0003]人体坐姿检测,基于图像处理算法,利用模式识别技术原理,结合神经网络学习方法,获取头与肩的角度、头与传感器距离、头与阅读对象的距离,满足在各种光照下的有效性,算法主要包括深度图获取,人脸、双眼、嘴巴检测,双肩检测,环境光检测等方面。
[0004]采用双目系统,因其在计算机视觉、距离检测等应用中有极其重要的作用。测距前,两个相机需要进行标定,利用张正友标定法获取双目相机的内参和外参是较准确的标定方法。Semiglobal Matching(SGM)实现深度匹配是获取深度信息的重要方法。
[0005]目前,图像式人体坐姿检测设备,比可穿戴式对人的影响小,但其有速度慢、功能单一等缺陷。同时,对人体坐姿自动检测的研究处于起步探索阶段。研究主要从头部和肩部与水平的角度和基于模糊神经网络两个方面,但前者不能对坐姿进行全面分析判断,后者现阶段主要针对人体四类姿势而不是坐姿进行研究。

【发明内容】

[0006]为了解决常见的威胁到人身体健康的坐姿问题,本发明提出了一种基于双目相机的实时人体坐姿情况检测方法,能实现实时坐姿检测,用于评估疲劳度、专注度以及环境亮度、色温检测。
[0007]如图1所示,本发明采用的技术方案是:
[0008]I)对双目相机进行标定,通过张正友标定法获得双目相机的内外参数;
[0009]2)通过双目相机实时采集上半身人正面的照片图像,通过双目相机的内外参数对照片图像预处理;
[0010]所述步骤2)预处理具体是:根据内外参数矫正图像的畸变,使得每张图像水平对齐,并且为消除不同光照的影响,矫正图像的亮度,使得实时采集获得的每幅图像的平均亮度和亮度均方差一致。
[0011]3)利用双目相机采集的两幅图像的视差获得图像的深度信息:双目相机的两幅图像灰度化处理后,通过SGM视差匹配算法处理双目相机生成的两幅图像进行两幅图像的深度匹配,获得视差图,再利用相机的内部参数和外部参数计算获得图像的深度信息;
[0012]4)对每张图像进行检测,获得人脸位置、双眼位置、嘴巴位置和双肩的肩膀位置;
[0013]所述的步骤4)中具体为:
[0014]4.1)通过机器学习方法检测获得人脸区域,以人脸区域的几何中心作为人脸位置;
[0015]4.2)在人脸区域内,再利用机器学习方法检测获得双眼区域和嘴巴区域,以双眼区域和嘴巴区域的几何中心分别作为双眼位置和嘴巴位置;
[0016]所述步骤4.2)中以人脸区域的上半部分为对象检测获得双眼区域,以人脸区域的下半部分为对象检测获得嘴巴区域。
[0017]4.3)为提高检出率,利用compressive tracking跟踪算法对已检测出的人脸位置、双眼位置和嘴巴位置进行跟踪;
[0018]4.4)利用图像的深度信息和梯度信息,检测获得肩膀位置。
[0019]所述步骤4.4)具体为:对整幅图像进行边缘检测,去除边缘中的直线,保留下来的边缘作为GraphCut算法的边界约束项,以图像的深度信息作为GraphCut算法的数据项,通过GraphCut算法进行全局优化提取出人上半身的目标区域并去除背景区域,由目标区域通过边界检测获得上半身人体轮廓线,计算上半身人体轮廓线下部两侧每处的曲率,曲率最大所在的像素点作为人两肩的肩膀位置;
[0020]5)根据步骤4)获得人脸立体位置、双眼立体位置、嘴巴立体位置和肩膀立体位置获得头部的姿态角、人体上半身的姿态角和眼睛与阅读对象之间的距离;
[0021]所述步骤5)具体包括:由双眼和嘴巴所在的立体位置构成平面,作为头部的垂直面,再与世界坐标相比较进而获得头部的姿态角,双眼和嘴巴所在的立体位置通过双眼的位置和嘴巴的位置及其深度信息获得,姿态角包括头部水平旋转姿态角和头部俯仰旋转姿态角。
[0022]由人脸和双肩的肩膀所在的立体位置构成平面,作为人体上半身的垂直面,再与世界坐标相比较进而获得人体上半身的姿态角。
[0023]根据已知的双目相机和阅读对象之间的相对位置结合双眼位置的深度信息计算获得眼睛与阅读对象之间的距离。
[0024]进一步地,在所述步骤4)获得双眼位置后,对所述双目相机实时采集的实时图像中的相邻帧进行差分运算,计算人眼区域的差分量,从而检测眼皮的运动状态,进而获得人眼的眨眼次数,以人眼的眨眼次数作为人体坐姿情况的辅助检测数据。以上作为主要检测数据。
[0025]根据图像的RGB值和双目相机的内参计算获得图像的色温,进行误差校准后作为人处于当前环境光下的色温,以当前环境光下的色温作为人体坐姿情况的辅助检测数据。
[0026]误差校准是指利用标准色温测量工具测量真实环境的色温作为基准,通过其检测结果进行误差校准。
[0027]本发明可进一步建立姿态评估标准,通过主要检测数据输出坐姿检测中头部倾斜、身体倾斜、眼睛与摄像头的距离、阅读对象的距离、颈椎弯曲程度等准确参数结果,评估用户的坐姿是否正确,结合阅读时间、坐姿,评估用户的疲劳度和专注度,若人坐姿不合适的给予用户适当的提醒。并且,可将当前环境光下的色温结合照度计测量出的当前环境光亮度,评估当前环境光下进行阅读是否对人眼有伤害。
[0028]为了实现本发明方法的硬件需要双目相机、照度计和处理器芯片。
[0029]本发明方法相比现有的图像式人体坐姿检测系统的优势在于:
[0030]本发明性价比高:只需要双目相机和照度计,而且对相机的分辨率、画质等各方面要求都比较低,因此成本很低,但是本发明在此基础上实现了很多的功能,因此有着很高的性价比。
[0031]本发明无不良影响:利用相机作为主要传感器,可摆放在桌上、挂在墙上等地方,相对于现有穿戴式的坐姿检测系统,本发明不会给人带来任何身体上的不适感。另外本发明使用被动探测方式,因此对人体健康没有任何影响。
[0032]本发明实时性强:本发明的算法部分虽然复杂,但是通过对有效区域进行筛选后再计算,避免了不必要的运算量,通过对数据进行压缩,加快信息的处理速度,基于此,本发明一秒能处理约十帧图像。
[0033]鲁棒性高:通过相机的自动曝光控制和算法上对图像的亮度进行调整,本发明对于普遍的室内光照环境都表现的很好。本发明有效的利用深度信息,结合边界信息,提取视场里的主要目标,消除了不同的背景影响,因此适用于复杂环境。
[0034]本发明方法主要应用于小孩读书和写字的近视保护、白领办公工作的颈椎腰椎保护等场景。
【附图说明】
[0035]图1是本发明方法的流程图。
[0036]图2是人脸、双眼、嘴巴检测结果图。其中绿色矩形框代表人脸所在区域,蓝色矩形框代表眼睛所在区域,红色矩形框代表嘴巴所在区域。
[0037]图3是人体上半身的提取结果图。
[0038]图4是人体上半身的轮廓线和肩膀检测的结果,轮廓端点的灰色点群代表计算曲率的起点,曲线上的另外两个灰色点群代表肩膀位置。
[0039]具体实现方式
[0040]下面结合附图和实施例对本发明作进一步说明。
[0041 ]如图1所示,本发明的实施例如下:
[0042]1.深度信息获取
[0043]利用张正友标定法对双目相机进行标定,获得相机的内外参数。根据内外参数矫正每一幅图像的畸变、实现水平和旋转对齐,其中图像畸变包括径向畸变和切向畸变。为消除不同环境光照的影响,对实时采集获得的每帧图像都进行亮度矫正,使得每帧图像平均亮度和亮度均方差一致。经过上述处理以后,利用SGM视差匹配算法获得双目相机输出的左右两幅图的视差,结合相机的内部参数和外部参数,计算图像的深度信息,即深度图。
[0044]2.检测人脸、双眼、嘴巴、肩膀位置
[0045]通过机器学习的方法检测人脸、双眼和嘴巴的位置,检测结果如图2所示。
[0046]以人脸检测为例,采集了18000个20x20像素的正样本的Haar-1ike特征,另外从30000个50x50像素的负样本随机采集Haar-1ike特征,再将这些特征用来训练形成一个20级的Adaboost级联分类器,达到理想的分类效果。为了提高检出率,在识别的过程中,对进行了 I?2倍的缩放,并对图像进行-15°?15°之间进行旋转。为了弥补分类器有时不能正确识别目标的缺点,实施例利用Compressive tracking跟踪算法对已检测出的目标进行跟足示O
[0047]由于肩膀缺少可靠的纹理信息,因此难以通过机器学习的方法检测肩膀的位置,实施例利用图像中物体的边界信息和深度图,通过GraphCut算法获得人体轮廓。为了获得图像中的物体的边界,将图像从RGB色彩空间转化为HSV色彩空间,并对三个H、S、V这三个通道分别进行Canny边界检测,将这三个通道边界信息进行相加融合获得轮廓图。Canny边界检测除了能检测人体的轮廓,也会检测其它物体的轮廓,而这些轮廓是不需要的,因此需要剔除。
[0048]此外,Canny边界检测出的人体轮廓线也可能不完整。考虑到人体的轮廓线为非直线,因此将轮廓图中的直线直接剔除。通过对深度图进行阈值分割,可以获得人体上半身的主干部分,但由于深度图本身不完全正确,因此通过阈值分割获得的人体上半身的主干部分存在缺失或者多余。
[0049]实施例通过把边界检测的结果作为Graphcut算法的边界约束项,将阈值分割的结果作为Graphcut算法的数据项,通过mincut算法进行全局优化,获得既基本符合边界检测结果又基本符合阈值分割结果的人体上半身的区域,如图3所示。对人体上半身的区域图像再次进行边界检测获得人体上半身轮廓线,如图4所示。计算轮廓线上下部两侧的每个点的曲率,曲率最大所在的像素点作为人两肩的肩膀位置。考虑到轮廓线可能不光滑,存在奇异点,因此对曲率进按空间关系进行了平滑滤波。
[0050]获得了人脸、双眼、嘴巴和肩膀在图像中的位置后,结合深度信息以及相机的内外参数,可计算获得人脸、双眼、嘴巴和肩膀相对于相机中心的立体位置。
[0051 ] 3.评估人体坐姿
[0052]由双眼和嘴巴所在的立体位置构成平面,作为头部的垂直面,再与世界坐标相比较进而获得头部的姿态角,姿态角包括头部水平旋转姿态角和头部俯仰旋转姿态角。由人脸和双肩的肩膀所在的立体位置构成平面,作为人体上半身的垂直面,再与世界坐标相比较进而获得人体上半身的姿态角。根据已知的双目相机和阅读对象之间的相对位置结合双眼位置的深度信息计算获得眼睛与阅读对象之间的距离。当头部的姿态角与理想头部姿态角偏离角度大于10°,或者人体上半身的姿态角与理想的上半身姿态角偏离角度大于10°,判定坐姿不正确。当眼睛距离阅读对象的距离小于28cm时,判定为阅读距离过近。当坐姿不正确时,给予用户适当提醒。
[0053]4.疲劳度、专注度评估
[0054]人的眨眼频率反映了人眼的干涩程度,因此可以作为判断疲劳度的指标之一,实施例利用帧间差分算法检测是否眨眼。当人眨眼时,眼皮会发生运动,前后图像的眼皮位置的R、G、B值会发生较大的变化,因此通过对相邻帧图像进行差分检测到眼皮的运动,从而判断是否发生眨眼,进而统计人眼的眨眼频率。
[0055]根据用户的眨眼频率结合用户当前的阅读时间,评估用户的疲劳度。当用户的阅读时间较长时,如果用户的在近段时间的眨眼频率高于之前的眨眼频率,则判断用户已经进入疲劳状态,给予用户适当提醒。
[0056]根据用户长时间的坐姿评估用户的专注程度。当用户在阅读时,动作越频繁,则认定用户的专注程度越低。
[0057]5.亮度、色温检测
[0058]利用相机的内部参数和每帧图像各像素点的R、G、B值,计算当前环境光的色温,以标准色温测量工具检测结果作为基准,进行误差校准。结合照度计测量出的当前环境光亮度,评估在当前环境光下进行阅读是否对人眼有伤害。实施例以400?700勒克斯作为适合阅读的照度判断标准,4000?4800k作为适合阅读的色温判断标准。
[0059]由此可见,本发明实施例在多种光照环境情况下和相机距离人体不同远近的情况下进行了实施,结果表明可准确地获得人脸、双眼、嘴巴和肩膀位置,正确提取人体上半身轮廓,准确统计眨眼次数。
[0060]考虑到复杂背景对人体上半身轮廓的提取有影响,本发明实施例在多种复杂背景情况下进行了实施,可正确地提取人体轮廓。此外,考虑到佩戴眼镜对人脸和眼睛检测有影响,本发明实施例在佩戴眼镜和不佩戴眼镜的情况下进行了实施,结果表明在不佩戴眼镜的情况下,本发明可准确无误地检测人脸和眼睛,在佩戴眼镜的情况下,本发明可准确无误的检测人脸,但是人眼检测的误检率较高。
【主权项】
1.一种基于双目相机的实时人体坐姿情况检测方法,其特征在于包括以下步骤: 1)对双目相机进行标定,通过张正友标定法获得双目相机的内外参数; 2)通过双目相机实时采集上半身人正面的照片图像,通过双目相机的内外参数对照片图像预处理; 3)利用双目相机采集的两幅图像的视差获得图像的深度信息:双目相机的两幅图像灰度化处理后,通过SGM视差匹配算法处理双目相机生成的两幅图像进行两幅图像的深度匹配,获得视差图,再利用相机的内部参数和外部参数计算获得图像的深度信息; 4)对每张图像进行检测,获得人脸位置、双眼位置、嘴巴位置和双肩的肩膀位置; 5)根据步骤4)获得人脸立体位置、双眼立体位置、嘴巴立体位置和肩膀立体位置获得头部的姿态角、人体上半身的姿态角和眼睛与阅读对象之间的距离。2.根据权利要求1所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:所述步骤2)预处理具体是:根据内外参数矫正照片图像的畸变,使得每张图像水平对齐,并且矫正图像的亮度,使得实时采集获得的每幅图像的平均亮度和亮度均方差一致。3.根据权利要求1所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:所述的步骤4)具体为: 4.1)通过机器学习方法检测获得人脸区域,以人脸区域的几何中心作为人脸位置; 4.2)在人脸区域内,再利用机器学习方法检测获得双眼区域和嘴巴区域,以双眼区域和嘴巴区域的几何中心分别作为双眼位置和嘴巴位置; 所述步骤4.2)中以人脸区域的上半部分为对象检测获得双眼区域,以人脸区域的下半部分为对象检测获得嘴巴区域。 4.3)利用compressivetracking跟踪算法对已检测出的人脸区域、双眼区域和嘴巴区域进行跟踪; 4.4)利用图像的深度信息和梯度信息,检测获得肩膀位置。4.根据权利要求3所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:所述步骤4.4)具体为:对整幅图像进行边缘检测,去除边缘中的直线,保留下来的边缘作为GraphCut算法的边界约束项,以图像的深度信息作为GraphCut算法的数据项,通过GraphCut算法进行全局优化提取出人上半身的目标区域并去除背景区域,由目标区域通过梯度检测获得上半身人体轮廓线,计算上半身人体轮廓线下部两侧每处的曲率,曲率最大所在的像素点作为人两肩的肩膀位置。5.根据权利要求1所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:所述步骤5)具体包括:由双眼位置和嘴巴位置所在的立体位置构成平面,作为头部的垂直面,进而获得头部的姿态角;由人脸位置和双肩的肩膀位置所在的立体位置构成平面,作为人体上半身的垂直面,进而获得人体上半身的姿态角;根据已知的双目相机和阅读对象之间的相对位置结合双眼位置的深度信息计算获得眼睛与阅读对象之间的距离。6.根据权利要求1所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:在所述步骤4)获得双眼位置后,对所述双目相机实时采集的图像利用帧间差分算法检测眼皮的运动状态,进而获得人眼的眨眼次数,以人眼的眨眼次数作为人体坐姿情况的辅助检测数据。7.根据权利要求1所述的一种基于双目相机的实时人体坐姿情况检测方法,其特征在于:根据图像的RGB值和双目相机的内参计算获得图像的色温,进行误差校准后作为人处于当前环境光下的色温,以当前环境光下的色温作为人体坐姿情况的辅助检测数据。
【文档编号】G06T7/00GK106022304SQ201610394250
【公开日】2016年10月12日
【申请日】2016年6月3日
【发明人】林龙庆, 汪凯巍, 杨恺伦
【申请人】浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1