CN107633196A - 一种基于卷积神经网络的眼球移动预测方案 - Google Patents

一种基于卷积神经网络的眼球移动预测方案 Download PDF

Info

Publication number
CN107633196A
CN107633196A CN201710449650.8A CN201710449650A CN107633196A CN 107633196 A CN107633196 A CN 107633196A CN 201710449650 A CN201710449650 A CN 201710449650A CN 107633196 A CN107633196 A CN 107633196A
Authority
CN
China
Prior art keywords
data
eyeball
neural networks
convolutional neural
channels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710449650.8A
Other languages
English (en)
Inventor
何兴高
姜伟卓
唐晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201710449650.8A priority Critical patent/CN107633196A/zh
Publication of CN107633196A publication Critical patent/CN107633196A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

本发明公开了一种满足基于卷积神经网络对于眼球追踪实现的技术。其特征在于在构造中利用了卷积神经网络对于人脸识别的技术,在识别的过程中,将数据再次处理化,使其在眼球追踪中能得到良好的体现,同时在效率和精确方面优于现有的眼球追踪技术,也解决VR中眼球点渲染的难题。本发明分为以下七个步骤:数据的预处理,卷积神经网络的建立,训练数据集,数据集的二次处理,利用当前模型预测测试集,测试后的数据相转化,实行点渲染。

Description

一种基于卷积神经网络的眼球移动预测方案
技术领域
本发明属于卷积神经网络中图像处理领域,应用于眼球追踪的方案,具体地 讲,是一种通过卷积神经网络识别人脸中的关键点,然后通过关键点相对位置进 行移动预测的方法。
背景技术
卷积神经网络(CNN)是一种常见的深度学习架构,受生物自然视觉认知机 制启发而来。1959年,Hubel&Wiesel发现,动物视觉皮层细胞负责检测光学 信号。受此启发,1980年Kunihiko Fukushima提出了CNN的前身—— neocognitron。
20世纪90年代,LeCun et al.[3]等人发表论文,确立了CNN的现代结 构,后来又对其进行完善。他们设计了一种多层的人工神经网络,取名叫做 LeNet-5,可以对手写数字做分类。和其他神经网络一样,LeNet-5也能使用 backpropagation算法训练。
CNN能够得出原始图像的有效表征,这使得CNN能够直接从原始像素中, 经过极少的预处理,识别视觉上面的规律。然而,由于当时缺乏大规模训练数据, 计算机的计算能力也跟不上,LeNet-5对于复杂问题的处理结果并不理想。
2006年起,人们设计了很多方法,想要克服难以训练深度CNN的困难。其 中,最著名的是Krizhevsky et al.提出了一个经典的CNN结构,并在图像识别 任务上取得了重大突破。其方法的整体框架叫做AlexNet,与LeNet-5类似, 但要更加深一些。
AlexNet取得成功后,研究人员又提出了其他的完善方法,其中最著名的要 数ZFNet[7],VGGNet[8],GoogleNet[9]和ResNet[10]这四种。从结构看, CNN发展的一个方向就是层数变得更多,ILSVRC 2015冠军ResNet是 AlexNet的20多倍,是VGGNet的8倍多。通过增加深度,网络便能够利用 增加的非线性得出目标函数的近似结构,同时得出更好的特性表征。但是,这样 做同时也增加了网络的整体复杂程度,使网络变得难以优化,很容易过拟合。
由于计算机技术和信息技术的不断发展,图像识别技术的使用领域越来越 广泛:如指纹的识别、虹膜的识别、手写汉字的识别、交通标志的识别、手势的 识别、人脸的识别、机器人视觉等等,并且随着实践活动社会化的需要,需要分 类识别的事物种类越来越丰富,而且被识别对象的内容也越来越复杂。例如,在 交通管理系统中,通过使用车牌的自动识别来记录车辆的违章行为;从医学图像 中根据细胞的形状和颜色等分析是否发生了病变;通过植物的颜色和形态长势 判断何时需要浇水、施肥;通过气象观测的数据或利用卫星照片来进行天气预报 等等。总而言之,图像识别技术不仅在农业、工业、医学和高科技产业等各个领 域发挥着非常重要的作用,并且已经越来越多地渗透到了我们的日常生活中。好 的识别技术是关键所在,因此,如何快速的准确的识别意义重大,如上面讲到的 人脸识别已经直接涉及到了安全性。
卷积神经网络在图像中的应用绝大多数都是用于识别与分类,而对于眼球追 踪的研究中,在虚拟现实(VR)中,如何将眼球追踪与渲染技术的结合,成为了热 门问题,本发明解决的就是在图像中更加效率的快速的对眼球的预测追踪。
发明内容
1.本发明的目的在于通过卷积神经网络进行人脸关键点的识别基础上,对 于关键点的位置数据进行训练,从而达到近似于眼球追踪的效果。首先 是定义网络结构,采用3个卷积层,第一个卷积层用3*3的卷积核,后 面两个用2*2的卷积核。每个卷积层后面都跟max_pool池化层,之后 再跟3个全连接层(两个隐层一个输出层)。每个卷积层的feature_map 分别用32、64、128。
2.对于卷积计算的参数说明:
Return.tf.nn.cov2d(x,W,strides=[1,1,1,1],padding=’VALID’) 2.1x是输入的样本,在这里就是图像。x的shape=[batch,height, width,channels]。
-batch是输入样本的数量
-height,width是每张图像的高和宽
-channels是输入的通道,比如初始输入的图像是灰度图,那么
channels=1,如果是rgb,那么channels=3。对于第二层卷积层, channels=32。
2.2W表示卷积核的参数,shape的含义是[height,width,in_channels, out_channels]。
2.3strides参数表示的是卷积核在输入x的各个维度下移动的步长。了 解CNN的都知道,在宽和高方向stride的大小决定了卷积后图像的 size。strides对应的是输入x的维度,所以strides第一个参数表示在 batch方向移动的步长,第四个参数表示在channels上移动的步长,这 两个参数都设置为1就好。重点就是第二个,第三个参数的意义,也 就是在height于width方向上的步长,这里也都设置为1。
2.4padding参数用来控制图片的边距,’SAME’表示卷积后的图片 与原图片大小相同,’VALID’的话卷积以后图像的高为说明附图中的 图1,宽也同理。
3.接着是定义池化层的代码,这里用2*2的max_pool。参数ksize定义 pool窗口的大小,每个维度的意义与之前的strides相同,所以实际上 本发明设置第二个,第三个维度就可以了。
4.定义好产生权重、卷积、池化的函数以后就要开始组装这个卷积神经网 络了。定义之前再定义一下输入样本x与对应的目标值y_。这里用了 tf.placeholder表示此时的x与y_是指定shape的站位符,之后在定义网 络结构的时候并不需要真的输入了具体的样本,只要在求值的时候feed 进去就可以了。激活函数用relu,api也就是tf.nn.relu。
5.训练数据集,在训练完之后,将训练集的数据再进行处理,对于关键点 (瞳孔,左右眼角,左右脸颊,眉毛的两端,鼻子等脸部位置)的位置 进行分类,分类出眼睛的移动方向,然后对于测试集的预测。
6.对于眼球关键点的移动位置,进行标记,将移动位置的坐标数据对应在 VR中相转化,然后渲染转化过后的点。
本发明的意义:由于卷积神经网络的特性,卷积神经网络对于眼球追踪的实 现一直没有显著的突破,本发明通过识别人脸的关键点,然后对于关键点的相对 位置数据进行处理和预测,从而达到快速的相对准确的眼球追踪的效果,而且对 于眼球关键点上,可以应用于硬件设备之中,比如VR产品,与渲染技术相结合, 从而更好的增加了用户的体验。
附图说明
图1是图像卷积后的高度计算公式。
图2是本发明的眼球追踪流程图。
具体实施方式
下面根据附图说明中的图2对具体实施方式进行详细的描述,以便这个领 域的技术人员能够得到更好的理解本发明。
本发明是在卷积神经网络中人脸关键点识别的基础上,通过关键点数据的 预处理,对于瞳孔位置的移动方向进行预测,然后通过硬件条件来实时渲染瞳 孔位置图像。
首先先阐述人脸识别的过程:
1)首先是定义网络结构,在这里用了3个卷积层,第一个卷积层用3*3 的卷积核,后面两个用2*2的卷积核。每个卷积层后面都跟max_pool 池化层,之后再跟3个全连接层(两个隐层一个输出层)。每个卷积 层的feature_map分别用32、64、128。
2)定义好卷积神经网络的结构之后,就要开始训练。训练首先是要读取 训练样本,
save_model用于保存当前训练得到在验证集上loss最小的模型,方便以后 直接拿来用。
tf.InteractiveSession()用来生成一个Session,Session相当于一个引擎,TensorFlow框架要真正的进行计算,都要通过Session引擎来启动。
tf.train.AdamOptimizer是优化的算法,Adam的收敛速度会比较快,1e-3是learning rate,这里先简单的用固定的。minimize就是要最小化的目标,当然是 最小化均方根误差了。
3)在执行的训练过程后,将关键点识别出来之后,将训练集的关键点数 据再进行一次预处理,对于瞳孔位置的变化进行分类,划分出眼球的 移动方向,然后对测试集数据进行预测。
4)根据上述的过程,将训练出来的模型,用于测试集中,通过预测的方 式,对于图像眼球的移动方向通过坐标的方式进行转化和存储。
5)对于眼球的位置存储出来的数据,进行实时的渲染方式,通过一些图像 处理的工具,类似于3dmax这样的渲染软件来进行点渲染技术。

Claims (2)

1.本发明公开了一种满足基于卷积神经网络对于眼球追踪实现的技术。其特征在于在构造中利用了卷积神经网络对于人脸识别的技术,在识别的过程中,将数据再次处理化,使其在眼球追踪中能得到良好的体现,同时在效率和精确方面优于现有的眼球追踪技术,也解决VR中眼球点渲染的难题,本发明分为以下七个步骤:
(1)、数据预处理:kaggle库,96*96个像素的图片库;
(2)、卷积神经网络的建立:为人脸关键位置的识别建立模型;
(3)、训练数据集:读取数据样本;
(4)、数据集的二次处理:将训练好的数据再进行二次处理,标识眼球的移动方向,以及头部偏转眼球移动的方向;
(5)、利用当前模型预测测试集:对于建立好的模型,将图像进行预测,判断出眼球的移动变化;
(6)、测试后的数据相转化:眼球的移动变化,作为坐标进行转化,有效的应用于渲染软件中;
(7)、实行点渲染:在渲染软件中,通过视频图像帧的方式,快速进行点渲染技术。
2.根据权利要求1所述的卷积神经网络对于人脸识别的技术,在识别的过程中,将数据再次处理化的机制,其特征在于,所述机制具体包括一下步骤:
(1)、数据预处理:将96*96像素图像转化保存在以csv文件中,通过读取csv文件来读取脸部数据;
(2)、卷积神经网络建立:3个卷积层,第一个卷积层用3*3的卷积核,后面两个用2*2的卷积核,每个卷积层后面都跟max_pool池化层,之后再跟3个全连接层(其中包括两个隐层一个输出层),每个卷积层的feature_map分别用32,64,128;
定义卷积运算的代码如下,对tf.nn.con2d()的参数做如下说明:
x是输入的样本,在这里就是图像,x的shape=[batch,height,width,channels],其中,batch是输入样本的数量,height和width是每张图像的高和宽,channels是输入的通道,比如初始输入的图像是灰度图,那么channels=1,如果是rgb,那么channels=3,对于第二层卷积层,channels=32;
W表示卷积核的参数,shape的含义是[height,width,in_channels,out_channels];
strides参数表示的是卷积核在输入x的各个维度下移动的步长。了解CNN的都知道,在宽和高方向stride的大小决定了卷积后图像的size。这里为什么有4个维度呢?因为strides对应的是输入x的维度,所以strides第一个参数表示在batch方向移动的步长,第四个参数表示在channels上移动的步长,这两个参数都设置为1就好。重点就是第二个,第三个参数的意义,也就是在height于width方向上的步长,这里也都设置为1。
定义池化层,2*2的max_pool,参数ksizeksize定义pool窗口的大小,每个维度的定义与之前的相同,所以实际上设置后两个维度即可。
定义好产生权重、卷积、池化的函数以后就要开始组装这个卷积神经网络了。定义之前再定义一下输入样本x与对应的目标值y_。这里用了tf.placeholder表示此时的x与y_是指定shape的站位符,之后在定义网络结构的时候并不需要真的输入了具体的样本,只要在求值的时候feed进去就可以了。激活函数用relu,api也就是tf.nn.relu。
keep_prob是最后dropout的参数,dropout的目的是为了抗过拟合。
rmse是损失函数,因为这里的目的是为了检测人脸关键点的位置,是回归问题,所以用root-means-quare-error。并且最后的输出层不需要套softmax,直接输出y值就可以了。
(3)训练数据集:读取csv文件中的数据,x=x_reshape((-1,96,96,1))将读取到重新调整矩阵的行数,列数和维数;y=df[cols].values/96.0将y值缩到[0,1][0,1]区间。放回x,y值。
(4)数据集的二次处理:将得到的数据再次进行处理,这里我们将数据进行标识化,给定一个正脸正视前方的标准,对得到的数据进行眼球移动的标识,分类出不同图像中,眼球的不同移动位置方向。
(5)利用当前模型预测测试集:同样将测试数据转化为csv文件格式,读取文件利用当前的模型来预测眼球的移动位置。
(6)测试后的数据相转化:对于预测出来的位置,选取'left_eye_center′_x,'left_eye_center_y′:1,'rigth_eye_center_x′:2,'rigth_eye_center_y′:3,将瞳孔的关键点,进行坐标转化,应用于渲染软件之中。
(7)实行点渲染:在渲染软件之中,将瞳孔的位置进行点渲染。
CN201710449650.8A 2017-06-14 2017-06-14 一种基于卷积神经网络的眼球移动预测方案 Pending CN107633196A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710449650.8A CN107633196A (zh) 2017-06-14 2017-06-14 一种基于卷积神经网络的眼球移动预测方案

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710449650.8A CN107633196A (zh) 2017-06-14 2017-06-14 一种基于卷积神经网络的眼球移动预测方案

Publications (1)

Publication Number Publication Date
CN107633196A true CN107633196A (zh) 2018-01-26

Family

ID=61099150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710449650.8A Pending CN107633196A (zh) 2017-06-14 2017-06-14 一种基于卷积神经网络的眼球移动预测方案

Country Status (1)

Country Link
CN (1) CN107633196A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109445581A (zh) * 2018-10-17 2019-03-08 北京科技大学 基于用户行为分析的大规模场景实时渲染方法
CN109685881A (zh) * 2018-11-13 2019-04-26 青岛海信电器股份有限公司 一种体绘制方法、装置及智能设备
CN110154757A (zh) * 2019-05-30 2019-08-23 电子科技大学 公交车多方位安全驾驶保障方法
CN110191234A (zh) * 2019-06-21 2019-08-30 中山大学 一种基于注视点分析的智能终端解锁方法
CN112926521A (zh) * 2021-03-30 2021-06-08 青岛小鸟看看科技有限公司 基于光源亮灭的眼球追踪方法、系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105184246A (zh) * 2015-08-28 2015-12-23 北京旷视科技有限公司 活体检测方法和活体检测系统
CN106537290A (zh) * 2014-05-09 2017-03-22 谷歌公司 与真实和虚拟对象交互的基于生物力学的眼球信号的系统和方法
JP2017083273A (ja) * 2015-10-27 2017-05-18 日本電信電話株式会社 移動経路予測装置、移動経路予測方法、及び移動経路予測プログラム
CN106814853A (zh) * 2016-12-15 2017-06-09 上海眼控科技股份有限公司 一种基于机器学习的眼控跟踪方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106537290A (zh) * 2014-05-09 2017-03-22 谷歌公司 与真实和虚拟对象交互的基于生物力学的眼球信号的系统和方法
CN105184246A (zh) * 2015-08-28 2015-12-23 北京旷视科技有限公司 活体检测方法和活体检测系统
JP2017083273A (ja) * 2015-10-27 2017-05-18 日本電信電話株式会社 移動経路予測装置、移動経路予測方法、及び移動経路予測プログラム
CN106814853A (zh) * 2016-12-15 2017-06-09 上海眼控科技股份有限公司 一种基于机器学习的眼控跟踪方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109445581A (zh) * 2018-10-17 2019-03-08 北京科技大学 基于用户行为分析的大规模场景实时渲染方法
CN109685881A (zh) * 2018-11-13 2019-04-26 青岛海信电器股份有限公司 一种体绘制方法、装置及智能设备
CN109685881B (zh) * 2018-11-13 2023-10-20 海信视像科技股份有限公司 一种体绘制方法、装置及智能设备
CN110154757A (zh) * 2019-05-30 2019-08-23 电子科技大学 公交车多方位安全驾驶保障方法
CN110191234A (zh) * 2019-06-21 2019-08-30 中山大学 一种基于注视点分析的智能终端解锁方法
CN112926521A (zh) * 2021-03-30 2021-06-08 青岛小鸟看看科技有限公司 基于光源亮灭的眼球追踪方法、系统
CN112926521B (zh) * 2021-03-30 2023-01-24 青岛小鸟看看科技有限公司 基于光源亮灭的眼球追踪方法、系统
US11863875B2 (en) 2021-03-30 2024-01-02 Qingdao Pico Technology Co., Ltd Eyeball tracking method and system based on on-off of light sources

Similar Documents

Publication Publication Date Title
Hu et al. Attention-based multi-context guiding for few-shot semantic segmentation
CN107633196A (zh) 一种基于卷积神经网络的眼球移动预测方案
Guo et al. Graph attention tracking
CN109409198A (zh) Au检测模型训练方法、au检测方法、装置、设备及介质
CN108509976A (zh) 动物的识别装置和方法
KR20210073569A (ko) 이미지 시맨틱 세그멘테이션 네트워크를 트레이닝하기 위한 방법, 장치, 디바이스 및 저장 매체
CN111160269A (zh) 一种人脸关键点检测方法及装置
CN110532925B (zh) 基于时空图卷积网络的驾驶员疲劳检测方法
CN110516539A (zh) 基于对抗网络的遥感影像建筑物提取方法、系统、存储介质及设备
CN110543848B (zh) 一种基于三维卷积神经网络的驾驶员动作识别方法及装置
CN109145871A (zh) 心理行为识别方法、装置与存储介质
CN109934204A (zh) 一种基于卷积神经网络的人脸表情识别方法
CN109886154A (zh) 基于Inception V3的多数据集联合训练的行人外观属性识别方法
Chen et al. Scanpath Prediction for Visual Attention using IOR-ROI LSTM.
CN109271897A (zh) 人脸动作单元检测方法、装置、计算机设备及存储介质
CN116434311A (zh) 一种基于混合域一致性约束的面部表情识别方法及系统
CN110287981A (zh) 基于生物启发性表征学习的显著性检测方法及系统
CN112052829B (zh) 一种基于深度学习的飞行员行为监控方法
CN116311472B (zh) 基于多层次图卷积网络的微表情识别方法及装置
CN109934171B (zh) 基于分层网络模型的驾驶员消极驾驶状态在线感知方法
Zheng et al. Fruit tree disease recognition based on convolutional neural networks
CN116884036A (zh) 基于YOLOv5DA的生猪姿态检测方法、装置、设备及介质
CN110533690B (zh) 特征融合与学习率优化的核相关滤波水下目标跟踪方法
CN108791308B (zh) 基于驾驶环境构建驾驶策略的系统
Fu et al. Forgery face detection via adaptive learning from multiple experts

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180126