基于单目视觉的人体身高测量

2017-07-12 11:49蒋雨
电脑知识与技术 2017年13期

蒋雨

摘要:视频监控下,人体身高测量得到广泛重视。该文主要研究在摄像机未标定情况下人体身高测量,通过垂直消失点自动提取人体特征点,再利用垂直消失点、水平消失线和已知参照物高度,来求取人体身高。该方法简单、易操作,并且有很好的准确性和实用价值。平均误差绝对值为0.309%。

关键词:未标定;特征点;垂直消失点;水平消失线;参照物高度;人体身高

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)13-0164-02

1概述

当前,视频监控技术日益普及,视频中相关人物信息的提取与处理具有重要利用价值。其中,人体身高特征识别是判断人物信息的重要参数,因而受到科研工作者的广泛关注。本文是基于单目视觉技术测量视频中人体的身高,获取人物的身高信息。

单目视觉的优点是运用一台摄像机,只需处理一个视频流,同一时刻也只需对一张图像进行图像处理,相比于双目或多目视觉计算量相对较小,方便操作。

单幅图像测量理论是由A.Criminisi等人首次提出,利用场景中的三维信息确定消失点和消失线,以及变比不变性来推导出度量信息的比例关系。后来KunPeng等人提出以场景中规则物体建立欧式坐标系来进行图像测量。对于单目视觉的人体身高测量:董秋雷等人提出了在标定场景下实时测量人体的身高;甘志杰等人提出了OTSU自适应阈值分割法和快速连通区域标记算法来分别获取人头顶部投影的纵坐标和标志点的坐标来计算人的身高;魏玮等人提出运用对视频进行关键帧的提取,利用摄像机的标定和消失点的计算来对人体高度进行分析和计算。

本文的结构如下:第2节介绍摄像机成像原理,第3节介绍特征点的选取,第4节介绍身高测量的方法,第5节是实验结果和分析,第6节是本文的总结。

2摄像机成像

2.1摄像机成像模型

本文采用普通的数码相机拍摄获取图片,其成像模型采用针孔成像模型。通过合适的世界坐标系、摄像机坐标系、图像坐标系后,相机成像的数学模型如公式(1)所示:

2.2消失点

在射影几何中,两条平行线的交点在图像上的投影点,称之为消失点。对于世界坐标系XYZ中,每个坐标系都有对应的消失点,由x轴方向的消失点和Y軸方向的消失点组成水平面上的消失线,由z轴方向的消失点即为垂直消失点。设这三个正交方向的消失点为V1=(u1 v1 1)T,V2=(u2 v2 1)T,V3=(u2 v3 1)T,则公式(1)可变换成公式(2)如下:

其中,(1 0 0 0)T,(0 1 0 0)T,(0 0 1 0)T分别为三个正交坐标的无穷远点,P是透视投影矩阵,λ1,λ2,λ3是非零尺度因子。

3特征点的选取

3.1前景提取

本文主要是针对室内比较简单的场景,主要运用背景差分法即可。通常将视频的第一帧作为背景,然后对每一帧,更新背景图像,得到新的背景图像,再利用当前帧和背景图像作差分后,进行二值化即可得到前景图像。再通过提取最大的联通区域,除去干扰,得到人体的连通区域,具体的效果图如图1所示。

3.2特征点选取

利用前景提取得出人体轮廓,通过垂直消失点到人体轮廓的距离,来判断人体的头顶点和消失点。具体的效果图如图2所示。具体步骤如下:

1)若垂直消失点在图片的下方,则取距离最大值为头顶点mv,距离最小值为脚底点m1

2)对于双脚并拢的时,就一个脚底点,即为垂足点mf,算法结束;若双脚分开就进行下一步;

3)作mv和垂直消失点的连线L,求出点m1到,J的投影点m1v,由m1和m1v组成向量v1,由m1v与轮廓点组成向量v2,保留两向量大于90°的轮廓上的点,取消失点到轮廓点距离最小值为m2

4)由m1和m2的连线和L的交点即为mf

4身高测量

由公式(2)可以得到P=[λ1V1 λ2V2 λ3V3 l],其中λ1V1和λ2V2为水平面的消失点,λ3V3为垂直消失点l为水平消失线的单位向量。

在垂直于地面的物体选择合适的参考物,其垂足坐标为(X Y

0 1)T,顶点坐标为(X Y Z 1)T,通过投影矩阵P可得到公式(3)如下:

其中,m和m对应垂足和顶点的图像坐标,s1和s2对应尺度因子。

将P4与m作内积,由于P1·P4=0,P2·P4=0,P4·P4=1,可得公式(4)

s1=l·m (4)

将公式(3)中两式做叉积,可到公式(5):

再通过人体的头顶点和垂足点求出人体的高度,如公式(8)所示:

5实验结果

实验中的视频是人在实验楼走廊里行走的监控视频。这段视频包括120帧的图像,其中选取的参照物为门框,经实际测量,高度为2135mm。门框对应的垂足点的坐标为[69.31 120.00 1]T,顶点坐标为[68.31 35.82 1]T

图像中消失点所选的平行线如图3所示。根据实际求得x轴消失点[3896.43 77.76 1]T,Y轴消失点[146.97 78.33 1]T,Z轴消失点[98.61 2581.17 1]T

在实验中,人体的实际高度为1780ram,运用垂直消失点和水平消失线求的人的身高如下表1所示。

从表1测量结果可以看出10个数据中有7个数据偏大,主要是由于选择的参考物在人体的后面,理论上应该偏大,对于有3个数据偏小,有可能是人在行走的时候,步子迈得比较大的原因。计算得出测量结果的平均误差绝对值为0.309%。

6结论

本文主要研究了人在摄像机未标定的情况下,对视频中的人体进行身高测量。主要通过垂直消失点和水平消失线来,以及选取合适的参照物来进行比照,得出人体的实际身高。该方法简单,可行,准确性较高,只是对于场景有一定的局限性,只能运用在场景中能够提取平行线。