1.一种人脸跟踪方法,其特征在于,该方法包括:
采集视频流中的一帧图像作为参考帧并对参考帧进行人脸检测和人脸识别,识别出目标人脸;
根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;
根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;
计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;
利用所述相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。
2.根据权利要求1所述的方法,其特征在于,在利用所述相对位移对当前帧待跟踪窗口的初始位置进行调整之后,该方法进一步包括:
对调整后的当前帧待跟踪窗口中的每个边缘特征点进行验证;
当验证成功时,确认在当前帧成功跟踪到该边缘特征点,在后续跟踪过程中继续对该边缘特征点进行跟踪;
当验证失败时,确认在当前帧中对该边缘特征点跟踪失败,舍弃该边缘特征点,不再对该边缘特征点进行跟踪。
3.根据权利要求2所述的方法,其特征在于,所述对调整后的当前帧待跟踪窗口中的每个边缘特征点进行验证包括:
将当前帧待跟踪窗口中的边缘特征点的位置作为验证起始位置;
利用验证起始位置及所述当前帧与所述参考帧之间边缘特征点的相对位移,确定边缘特征点在所述参考帧的待跟踪窗口,并在所述待跟踪窗口内搜索边缘特征点,得到边缘特征点在参考帧的位置;
将验证出的边缘特征点在参考帧的位置与预先获取的参考帧图像中边缘特征点的位置进行比较,若比较结果相同,则验证成功;若比较结果不同,\t则验证失败。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
利用待跟踪窗口中的边缘特征点在所述参考帧和当前帧之间的间距变化确定目标人脸的左右转动动作和抬头低头动作;
以及,利用所述参考帧与当前帧之间边缘特征点的相对位移计算目标人脸的倾斜角度,由所述倾斜角度确定目标人脸的倾斜动作。
5.根据权利要求4所述的方法,其特征在于,所述利用待跟踪窗口中的边缘特征点在参考帧和当前帧之间的间距变化判断目标人脸的左右转动动作和抬头低头动作包括:
对当前帧和参考帧,分别将目标人脸的各边缘特征点投影到与目标人脸平行的平面上,并监测各边缘特征点之间的间距;
若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变大且右半边脸的边缘特征点的间距变小,则确定目标人脸向右转;
若相对于参考帧中边缘特征点的间距,当前帧的左半边脸的边缘特征点的间距变小且右半边脸的边缘特征点的间距变大,则确定目标人脸向左转;
若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变大且下半边脸的边缘特征点的间距变小,则确定目标人脸在抬头;
若相对于参考帧中边缘特征点的间距,当前帧的上半边脸的边缘特征点的间距变小且下半边脸的边缘特征点的间距变大,则确定目标人脸在低头。
6.根据权利要求5所述的方法,其特征在于,所述对当前帧和参考帧,分别将目标人脸的各边缘特征点投影到与目标人脸平行的平面上,并监测各边缘特征点之间的间距包括:
分别根据所述当前帧和参考帧的待跟踪窗口,构建对应的包括四个区域的平面坐标系,将待跟踪窗口中的边缘特征点投影到所述平面坐标系中,得到每个边缘特征点对应的横坐标和纵坐标值;
其中,所述四个区域是按照每帧图像待跟踪窗口所在图形的对角线的交\t点为中点划分而成,包括:区域一、区域二、区域三和区域四,所述区域一和区域三中边缘特征点的横坐标值小于等于区域二和区域四中边缘特征点的横坐标值,区域三和区域四中边缘特征点的纵坐标值小于等于区域一和区域二中边缘特征点的纵坐标值;
将投影到所述区域一和区域三中的边缘特征点根据横坐标升序排列得到矩阵将投影到所述区域二和区域四中的边缘特征点根据横坐标升序排成排列得到矩阵
将投影到所述区域一和区域二中的边缘特征点根据纵坐标值升序排列得到矩阵将投影到所述区域三和区域四中的边缘特征点根据纵坐标值升序排列得到矩阵
分别计算所述矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的左转或右转动作;
分别计算所述矩阵中每相邻两个元素的间距得到相应的间距矩阵和并依次将当前帧的间距矩阵和中的每个元素与参考帧的间距矩阵中的每个元素作差,根据计算结果判断目标人脸的抬头或低头动作。
7.根据权利要求6所述的方法,其特征在于,所述根据计算结果判断目标人脸的左转或右转动作包括:
当计算结果满足下列公式(1)和(2)时,确定目标人脸向右转动;
公式(1)
公式(2)
其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;
当计算结果满足下列公式(3)和(4)时,确定目标人脸向左转动:
公式(3)
公式(4)
其中,表示当前帧左半边脸的边缘特征点的间距矩阵,表示参考帧左半边脸的边缘特征点的间距矩阵表示当前帧右半边脸的边缘特征点的间距矩阵,表示参考帧右半边脸的边缘特征点的间距矩阵;
所述根据计算结果判断目标人脸的抬头或低头动作包括:
当计算结果满足下列公式(5)和(6)时,确定目标人脸在抬头:
公式(5)
公式(6)
其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵
当计算结果满足下列公式(7)和(8)时,确定目标人脸在低头:
公式(7)
公式(8)
其中,表示当前帧上半边脸的边缘特征点的间距矩阵表示参考帧上半边脸的边缘特征点的间距矩阵表示当前帧下半边脸的边缘特征点的间距矩阵表示参考帧下半边脸的边缘特征点的间距矩阵
8.根据权利要求1所述的方法,其特征在于,所述采集视频流中的一帧图像并对参考帧进行人脸检测和人脸识别,识别出目标人脸包括:
采集视频流中的一帧图像并转换为灰度图像,提取所述灰度图像的类Haar特征值;
利用训练好的Adaboost级联分类器对所述灰度图像的类Haar特征值进行选择,并利用选择的类Haar特征值对所述灰度图像进行检测得到初始人脸区域;
利用构建的肤色模型对所述初始人脸区域进行肤色判别,得到标准人脸区域;
对所述标准人脸区域,利用设定的Gabor滤波器提取人脸特征;
将所述Gabor滤波器提取出的人脸特征送入训练好的支持向量机SVM中进行匹配识别,以识别出目标人脸。
9.一种人脸跟踪装置,其特征在于,该装置包括:
人脸识别模块,用于采集视频流中的一帧图像作为参考帧并对该参考帧进行人脸检测和人脸识别,识别出目标人脸;
参考帧窗口位置确定模块,用于根据识别出的目标人脸,确定参考帧中包括目标人脸的待跟踪窗口的位置,并提取参考帧待跟踪窗口中的边缘特征点;
当前帧窗口位置确定模块,用于根据参考帧待跟踪窗口的位置,确定视频流中当前帧图像上待跟踪窗口的初始位置,并提取当前帧待跟踪窗口中的边缘特征点;
相对位移计算模块,用于计算参考帧的边缘特征点与当前帧的边缘特征点的相对位移;
人脸跟踪模块,用于利用所述相对位移对当前帧待跟踪窗口的初始位置进行调整,获得视频流中目标人脸的活动轨迹,实现人脸跟踪。
10.根据权利要求9所述的人脸跟踪装置,其特征在于,该装置进一步包括:跟踪验证模块和人脸动作判断模块;
所述跟踪验证模块,用于在利用所述相对位移对当前帧待跟踪窗口的初始位置进行调整之后,对调整后的当前帧待跟踪窗口中的每个边缘特征点进\t行验证;当验证成功时,确认在当前帧成功跟踪到该边缘特征点,在后续跟踪过程中继续对该边缘特征点进行跟踪;当验证失败时,确认在当前帧中对该边缘特征点跟踪失败,舍弃该边缘特征点,不再对该边缘特征点进行跟踪;
所述人脸动作判断模块,用于利用待跟踪窗口中的边缘特征点在所述参考帧和当前帧之间的间距变化确定目标人脸的左右转动动作和抬头低头动作;以及,利用所述参考帧与当前帧之间边缘特征点的相对位移计算目标人脸的倾斜角度,由所述倾斜角度确定目标人脸的倾斜动作。
11.一种智能终端,其特征在于,所述智能终端包括:如权利要求9或10所述的人脸跟踪装置;
该智能终端利用所述人脸跟踪装置检测人脸运动状态,且该智能终端根据定位到的人脸运动状态自适应调整至少部分可移动部件的位置或至少部分部件所执行的功能。
12.根据权利要求11所述的智能终端,其特征在于,所述该智能终端根据定位到的人脸运动状态自适应调整至少部分可移动部件的位置或至少部分部件所执行的功能包括:
在人脸转动时,计算左半边脸或右半边脸的相邻时刻当前帧图像中边缘特征点的间距矩阵的差值,当该差值小于一阈值时,确定人脸的一次转动动作结束,则智能终端相应于该转动动作,自适应调整至少部分可移动部件的位置或至少部分部件所执行的功能。