本次项目的业务实现流程如下:
将输入图像正则化后得到眼部图像e和头部的旋转角度h,然后通过卷积神经网络得到用户的视线角度向量g。其中g是一个2维向量,属性分别为水平方向的视角theta,竖直方向的视角phi。
本篇博客讲述的便是CNN的实现过程。
分析数据
把正则化的.mat数据文件导入matlab分析其结构如下:
left,right分别为左右眼的数据,其中gaze为视线方向,image为眼部图像,pose为头部移动向量。其维度均如图所示。
提取数据
使用scripy.io库即可使用python语言提取.mat文件中的数据,结合本次实验的文件结构,提取代码如下:
from scipy.io import loadmat
from math import *
import numpy as np
def getdata(filename):
m=loadmat(filename)
gaze=m['data'][0][0][0][0][0][0]
image=m['da