CN110309751A - 一种读写场景读写姿势的识别方法 - Google Patents
一种读写场景读写姿势的识别方法 Download PDFInfo
- Publication number
- CN110309751A CN110309751A CN201910547842.1A CN201910547842A CN110309751A CN 110309751 A CN110309751 A CN 110309751A CN 201910547842 A CN201910547842 A CN 201910547842A CN 110309751 A CN110309751 A CN 110309751A
- Authority
- CN
- China
- Prior art keywords
- read
- write
- coordinate
- image
- space
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 239000013598 vector Substances 0.000 claims abstract description 20
- 238000001514 detection method Methods 0.000 claims abstract description 18
- 230000000007 visual effect Effects 0.000 claims abstract description 13
- 238000013519 translation Methods 0.000 claims abstract description 7
- 238000007405 data analysis Methods 0.000 claims abstract description 4
- 238000012549 training Methods 0.000 claims description 13
- 238000003384 imaging method Methods 0.000 claims description 8
- 230000003287 optical effect Effects 0.000 claims description 6
- 230000004379 myopia Effects 0.000 abstract description 6
- 208000001491 myopia Diseases 0.000 abstract description 6
- 230000002265 prevention Effects 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 16
- 230000006870 function Effects 0.000 description 10
- 230000004438 eyesight Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 206010044074 Torticollis Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 208000018197 inherited torticollis Diseases 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 210000002700 urine Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/18—Eye characteristics, e.g. of the iris
- G06V40/19—Sensors therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Ophthalmology & Optometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种读写场景读写姿势的识别方法,步骤为:S1,获取读写场景中的原始图像、桌面或书本的图像信息;S2,对读写元素的原始图像进行算法检测,依据坐标认定方法得出桌面、书本和人脸的空间三维坐标;S3,利用已知物体在三维空间的坐标,在图像上一一对应的图像像素坐标以及相机内参数进而求解出此时相机相对于空间已知物体的外参数,即旋转向量以及平移向量;S4,对旋转向量进行数据分析处理,求解出此时相机相对于已知物体空间坐标的三维姿态欧视角;S5,依据物体的三维姿态欧视角判断读写姿势和读写距离是否符合标准;本方法可有效判断用户读书时的姿势及阅读距离是否正确,有效预防近视。
Description
技术领域
本发明涉及图像识别技术领域,具体涉及一种读写场景读写姿势的识别方法。
背景技术
我国近视人数已超6亿,几乎占到中国总人口数量的50%,近视发病呈现年龄早、进展快、程度深的趋势。据调查报告显示,学生视力不良问题突出。四年级、八年级学生视力不良检出率分别为36.5%、65.3%,其中四年级女生视力中度不良和重度不良比例分别为18.6%、10.4%,男生分别为16.4%、9%;八年级女生视力中度不良和重度不良比例分别为24.1%、39.5%,男生分别为22.1%、31.7%。
实际上,我国青少年的整体视力情况不容不乐观,有数据显示,青少年近视率已经高居世界第一。其中近距离用眼和手机、电脑等电子产品的不间断使用有极大的关系。从近年发展趋势来看,青少年因为学习姿势的不规范以及过早接触电子产品使得近视的风险在逐渐增大,从小便戴上了眼镜。
发明内容
本发明要解决的技术问题是提供一种可以自动识别当前读写场景读写姿势的方法,以判断使用者的读写姿势以及读写距离是否符合标准。
为实现上述目的,本发明采用如下技术方案:
一种读写场景读写姿势的识别方法,其特征在于,步骤包括:
S1,通过相机或红外线或雷达等装置获取读写场景中的原始图像、桌面或书本的图像信息,所述图像信息包括桌面或书本的边框或两个到四个的顶点;
S2,对读写元素的原始图像进行算法检测,依据坐标认定方法得出桌面、书本和人脸的空间三维坐标;
S3,利用已知物体在三维空间的坐标,在图像上一一对应的图像像素坐标以及相机内参数进而求解出此时相机相对于空间已知物体的外参数,即旋转向量以及平移向量;
S4,对旋转向量进行数据分析处理,求解出此时相机相对于已知物体空间坐标的三维姿态欧视角;
S5,依据物体的三维姿态欧视角判断读写姿势和读写距离是否符合标准。
进一步的,人脸检测将图片按照固定要求代入训练好的人脸检测模型,获得左右眼、鼻子、两个嘴角的5个点的位置以及为人脸的可信度。
进一步的,所述三维欧视角包括偏航角Yaw,滚轮角Roll,俯仰角Pitch,判断姿势错误的情况包括:
Yaw在[0,30)区间内;
Yaw在[30,45)区间内,并且Roll小于-10;
Yaw大于等于45,并且Roll小于0;
Yaw在[-10,0)区间内,并且Roll小于-3;
Yaw在[-40,-30)区间内,并且Roll小于-5;
Yaw在[-30,-10)区间内,并且Roll小于-10;
Yaw大于-40,并且Roll小于-30。
进一步的,确定桌面、书本和人脸的空间三维坐标之前,需要先得出相机的内参数,所述相机的内参数包括基本参数和畸变系数变量,所述基本参数包括图像光轴主点,X,Y方向焦距,所述畸变系数向量包括切向畸变系数和径向畸变系数。
进一步的,采用针孔成像模型计算得出物体的三维坐标,设定一个投影中心,主点为穿过光轴的图像主点,(X,Y,Z)为空间坐标系下的物体坐标,(x,y,z)为图像像素坐标。
进一步的,利用相机内参数,相机外参数以及自定义的3D空间坐标点(0.0,0.0,0.0),(1.5,0.0,0.0,),(0.0,0.0,1.5),即分别对应空间原点,空间X轴,空间Y轴,空间Z轴,求解出一一对应的图像2D坐标点;使用OpenCV提供的projectPoints函数解算出已知空间轴坐标点对应的图像坐标上的坐标点,最后将对应图像坐标点连在一起即为物体的空间坐标系。
进一步的,所述人脸检测训练是通过MTCNN,将人脸区域检测与人脸关键点检测放在了一起,基于cascade框架的,总体分为PNet、RNet和ONet三层网络结构。
进一步的,所述MTCNN特征描述子主要包括三个部分,人脸/非人脸分类器、边界框回归和地标定位。
进一步的,根据获得的桌面或者书本四个顶点坐标,根据四个顶点计算出四边形对角线的交叉点坐标,又根据得到的人眼坐标即左右眼的坐标的中心点,计算出交叉点到人眼中心点的距离,根据这个距离与相机焦距的比例关系可以算出,人眼到桌面或者书本的实际距离。
进一步的,人眼到桌面或者书本距离小于35厘米则认为该姿势错误。
本发明提供的一种读写场景读写姿势的识别方法的有益效果在于:可以有效获取使用者阅读时的体态姿势和距离并对不正确的予以提醒,通过阅读姿势和阅读距离的双重检测判断达到了更佳的检测效果,以及时矫正降低近视眼的发生概率;利用单目相机即可获取准确的三维姿态欧视角,然后通过欧视角的比对进行有效判断,准确率高,且仅使用单目相机成本低,实用性广;设置的单目相机具有一定角度,有效规避了轻微低头和晃动的计算误差。
附图说明
图1为本发明整体流程图;
图2为针孔成像模型的计算示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本发明的保护范围。
实施例:一种读写场景读写姿势的识别方法。
一种读写场景读写姿势的识别方法,其特征在于,步骤包括:
单目相机采集图片并发送至处理器存储分析;利用单目相机相对于被检测物体平面的三维姿态欧视角,即俯仰角、偏航角、滚轮角;
首先,通过相机标定得出相机的内参数,然后利用已知物体在三维空间的坐标,在图像上一一对应的图像像素坐标以及相机内参数进而求解出此时相机相对于空间已知物体的外参数,即旋转向量以及平移向量,最后对旋转向量进行数据分析处理,求解出此时相机相对于已知物体空间坐标的三维姿态欧视角。
相机标定:在这里,摄像头的成像模型是以针孔成像为准的,但是由于透镜本身以及相机制造工艺等问题,致使成像模型不能百分百的按照针孔成像模型输出图像,输出图像必然存在畸变。因此,需要对相机进行标定,标定的目的是求解出相机内参数,内参数包括相机基本参数(图像光轴主点,X,Y方向焦距)以及畸变系数向量(切向畸变系数,径向畸变系数)。
采用棋盘标定法进行相机的标定,棋盘标定法的基本思想是通过三维场景中拍摄同一棋盘标定板在不同方向,不同位置的多张棋盘图片,因为每一张棋盘图片的角点都是等间距的,即棋盘角点的空间三维坐标是已知的(三维空间坐标系相对于每一张棋盘物体而言),然后计算出每张棋盘图像在图像平面的像素坐标,有了每张棋盘图的三维空间坐标以及对应的图像像素平面的二维像素坐标一一对应投影关系,进而求出相机的内参数。
OpenCV提供calibrateCamera()函数进行标定,利用该函数得出相机的内参数,包括相机基本矩阵:畸变系数变量:D:(k1,k2,p1,p2[,k3[,k4,k5,k6]]),其中k1,k2为径向畸变,p1,p2为切向畸变,对普通摄像头我们一般只需要前四个系数,但对于畸变很大的摄像头,如鱼眼摄像头,我们应采用5-8个系数变量。
相机姿态估计关键算法是解决N点透视投影问题,也称作PNP(Persperctive-N-Point)问题,在这里,我们以针孔成像模型为准。O为投影中心,主点(u0,v0)为穿过光轴的图像主点。(X,Y,Z)为空间坐标系下的物体坐标,这里的参考坐标系为相机的投影中心,(x,y,z)为图像像素坐标,图像像素坐标的原点为左上角。u0
根据上述的针孔投影关系,x=f*(X/Z),我们可以容易地得出下列投影关系,使用矩阵形式表示上式,有:其中fx为水平像素表示的焦距,fy为竖直像素表示的焦距。
当参考坐标系并不位于相机的投影中心时,如下式所示:
根据公式x=M*[Rt]*X,要求出外参数[Rt],必要知道相机基本矩阵M,以及已知物体在三维空间坐标点X,与之对应的图像像素坐标点x。
三维姿态欧视角解算:引入旋转平移矩阵[Rt],其中R为3*3旋转矩阵,t为3*1平移向量,有下列矩阵:
用x表示图像像素平面的某一点的矩阵,X表示为世界坐标系的某一点的矩阵,M为相机基本矩阵,即有:x=M*[Rt]*X。
利用一个旋转矩阵可以表示为上面三个坐标轴矩阵:
为求出旋转角度θ,φ,旋转矩阵R的表示为:通过计算我们可以用以下简单代码表示:
其中,atan2(y,x)的做法:当x的绝对值比y的绝对值大时使用atan(y/x);反之使用atan(x/y),保证了数值的稳定性,actan(y/x)是求反三角函数。
旋转矩阵R,三个坐标轴的旋转矩阵:
一个绕X轴旋转的矩阵:
一个绕Y轴旋转θ的矩阵:
一个绕Z轴旋转φ的矩阵:
相机三维姿态欧视角:偏航角Yaw就是绕Z轴旋转的角度φ,滚轮角Roll就是绕Y轴旋转的角度θ,俯仰角Pitch就是绕X轴旋转的角度
利用已知的相机内参数(上面通过相机标定得出),以及已知2D图像坐标点(通过提取物体里面的正方形角点特征得出角点坐标),与空间对应的3D空间点(自定义,顺序要与2D角点顺序一直)求解出相机的外参数(即旋转向量,平移向量),本实施例中,使用OpenCV提供的solvePNP函数求解出外参数,最后利用相机内参数,相机外参数以及自定义的3D空间坐标点(0.0,0.0,0.0),(1.5,0.0,0.0,),(0.0,0.0,1.5),即分别对应空间原点,空间X轴,空间Y轴,空间Z轴,求解出一一对应的图像2D坐标点;使用OpenCV提供的projectPoints函数解算出已知空间轴坐标点对应的图像坐标上的坐标点,最后将对应图像坐标点连在一起即为物体的空间坐标系。
通过物体检测算法处理,判断是否有人体;将图片按照规定要求代入训练好的物体训练模型,获得人体的边框位置以及为人体的可信度。根据模型训练结果,人体可信度大于等于0.4的判断有人。其他判断为没人。同时获取桌面或者书本的四个顶点,用于后面计算距离。
人体检测是采用标定好的数据集,对MobileNet-SSD模型,编译protobuf,objectdetection API是使用protobuf来训练模型和配置参数。
采用VGG16作为基础模型,将VGG16的全连接层fc6和fc7转换成3*3但dilationrate=6卷积层conv6和1*1卷积层conv7,移除dropout层和fc8层,并新增了卷积层来获得更多的特征图以用于预测offset和confidence。
算法的输入是300*300*3,采用conv4_3(特征图大小38*38),conv7(19*19),conv8_2(10*10),conv9_2(5*5),conv10_2(3*3)和conv11_2(1*1)的输出共提取了6个特征图来预测location和confidence,一共可以预测38*38*4+19*19*6+10*10*6+5*5*6+3*3*4+1*1*4=8732个边界框(default box)。
边界框不同的长宽比:[1,2,3,1/2,1/3],边界框的长、宽和中心的计算公式如下:
其中ar为长宽比,fk为第k个特征图的长或宽。
人体检测模型读进去的数据是归一化之后的数据,也就是需要把标注的坐标和得到的物体的长和宽除以原始图片的长和宽。
损失函数分为两部分:定位损失和分类损失,对于反例预测框,其定位损失是零。
其中k是物体的类别,i是default box编号,j是ground truth box的编号,由于每个default box只对应一个ground truth box,因此一旦i取定,j和k就取定了,j取定后,j编号的guound truth box对应的物体类别是确定的。
深度可分离卷积:深度可分离卷积将标准卷积分为深度卷积和一个1*1卷积即逐点卷积。深度卷积针对单个输入通道用单个卷积核进行卷积,得到输入通道数的深度,然后运用一个1*1卷积,来对深度卷积中的输出进行线性结合。
输入特征图 卷积核 输出特征图
DF×DF×M DK×DK×M×N DG×DG×N
标准卷积计算量:DK×DK×M×N×DF×DF
深度可分离卷积计算量:DK×DK×M×DF×DF+M×N×DF×DF。
通过人脸检测算法处理,判断是否有人脸;确定图片中有人之后,检测图片是否有脸。。所以人脸将图片按照规定要求代入训练好的模型,获得人眼(左右眼),鼻子,嘴巴(两角)的5个点的位置以及为人脸的可信度。根据模型训练结果,可信度大于等于0.4的判断有人脸。其他判断为没人脸。
人脸检测模型训练是通过MTCNN,Multi-taskconvolutional neural network(多任务卷积神经网络),将人脸区域检测与人脸关键点检测放在了一起,基于cascade框架的。总体可分为PNet、RNet、和ONet三层网络结构。
P-Net全称为Proposal Network,其基本的构造是一个全连接网络。对上一步构建完成的图像金字塔,通过一个FCN进行初步特征提取与标定边框,并进行Bounding-BoxRegression调整窗口与NMS进行大部分窗口的过滤。
一般Pnet只做检测和人脸框回归两个任务,虽然网络定义的时候input的size是12*12*3,由于Pnet只有卷积层,我们可以直接将resize后的图像喂给网络进行前传,只是得到的结果就不是1*1*2和1*1*4,而是m*m*2和m*m*4了。这样就不用先从resize的图上截取各种12*12*3的图再送入网络了,而是一次性送入,再根据结果回推每个结果对应的12*12的图在输入图片的什么位置。
针对金字塔中每张图,网络forward计算后都得到了人脸得分以及人脸框回归的结果。人脸分类得分是两个通道的三维矩阵m*m*2,其实对应在网络输入图片上m*m个12*12的滑框,结合当前图片在金字塔图片中的缩放scale,可以推算出每个滑框在原始图像中的具体坐标。首先要根据得分进行筛选,得分低于阈值的滑框,排除。然后利用nms非极大值抑制,对剩下的滑框进行合并。当金字塔中所有图片处理完后,再利用nms对汇总的滑框进行合并,然后利用最后剩余的滑框对应的Bbox结果转换成原始图像中像素坐标,也就是得到了人脸框的坐标。
R-Net全称为Refine Network,其基本的构造是一个卷积神经网络,相对于第一层的P-Net来说,增加了一个全连接层,因此对于输入数据的筛选会更加严格。在图片经过P-Net后,会留下许多预测窗口,我们将所有的预测窗口送入R-Net,
将Pnet运算出来的人脸框从原图上截取下来,并且resize到24*24*3,作为Rnet的输入。输出仍然是得分和BBox回归结果。对得分低于阈值的候选框进行抛弃,剩下的候选框做nms进行合并,然后再将BBox回归结果映射到原始图像的像素坐标上。所以,Rnet最终得到的是在Pnet结果中精选出来的人脸框。
O-Net全称为Output Network,基本结构是一个较为复杂的卷积神经网络,相对于R-Net来说多了一个卷积层。O-Net的效果与R-Net的区别在于这一层结构会通过更多的监督来识别面部的区域,而且会对人的面部特征点进行回归,最终输出五个人脸面部特征点。
将Rnet运算出来的人脸框从原图上截取下来,并且resize到48*48*3,作为Onet的输入。输出是得分,BBox回归结果以及landmark位置数据。分数超过阈值的候选框对应的Bbox回归数据以及landmark数据进行保存。将Bbox回归数据以及landmark数据映射到原始图像坐标上。再次实施nms对人脸框进行合并。
MTCNN特征描述子主要包含3个部分,人脸/非人脸分类器,边界框回归,地标定位。
人脸分离的交叉熵损失函数为:其中pi为是人脸的概率,为背景的真实标签。
边界框回归通过读写场景读写姿势的识别方法距离计算回归损失:其中为通过网络预测的背景坐标,其中为实际的真实背景坐标。
地标定位通过读写场景读写姿势的识别方法距离计算:其中为通过网络预测得到的地标坐标,为实际的真实地标坐标。
人脸检测模块多个输入源的训练为:
P-Net R-Net(αdet=1,αbox=0.5,αlandmark=0.5),
O-Net(αdet=1,αbox=0.5,αlandmark=0.5),其中N为训练样本数量,αj为任务的重要性,为样本标签,为损失函数。
在训练过程中,和y的交并集IoU(Intersection-over-Union)比例如下:
0-0.3:非人脸
0.65-1.00:人脸
0.4-0.65:Part人脸
0.3-0.4:地标
训练样本的比例,负样本:正样本:part样本:地标=3:1:1:2。
根据人脸检测算法标定的数据,判断姿态是否符合正确的阅读写作标准;台灯搭载的摄像头距离底座平面15cm,只要台灯摆放在以人为中心的30°至150°范围内,人到摄像头距离80cm范围内,人坐姿端正的情况下,摄像头拍出来的图片都能够包括人的完整头部及清晰的脸部。拍摄出来的图片能够满足人脸识别模型计算的要求。人在正常读写时,双肩放平头部有轻微的低头,为了规避轻微低头导致的计算误差,本台灯搭载的摄像头具有约15°仰角。
本方法判断读写正确姿势的条件为(两个条件必须同时满足):
a.人坐姿端正,没有大幅度歪头、低头
b.眼睛距离桌面大于35厘米
根据人脸模型可以得到三个角度分别为Yaw,Roll,Picth,满足姿势错误的情况有以下几种:
①Yaw在[0,30)区间内
②Yaw在[30,45)区间内,并且Roll小于-10
③Yaw大于等于45,并且Roll小于0
④Yaw在[-10,0)区间内,并且Roll小于-3
⑤Yaw在[-40,-30)区间内,并且Roll小于-5
⑥Yaw在[-30,-10)区间内,并且Roll小于-10
⑦Yaw大于-40,并且Roll小于-30
通过距离计算,判断人眼睛与桌面的距离是否大于正确阅读写作的距离;根据物体训练模型返回的桌面或者书本四个顶点坐标,根据四个顶点计算出四边形对角线的交叉点坐标,又根据得到的人眼坐标(左右眼的坐标的中心点)。计算出交叉点到人眼中心点的距离。根据这个距离与相机焦距的比例关系可以算出,人眼到桌面或者书本的实际距离。当这个距离小于35厘米则认为该姿势错误。
判断规定时间内累积的姿势错误和距离错误总和是否大于规定的标准,并依据结果进行语音提醒。
本发明设计的基础原理如下:
FCN(全卷机网络)
全卷积网络就是去除了传统卷积网络的全连接层,然后对其进行反卷积对最后一个卷积层(或者其他合适的卷积层)的feature map进行上采样,使其恢复到原有图像的尺寸(或者其他),并对反卷积图像的每个像素点都可以进行一个类别的预测,同时保留了原有图像的空间信息。同时,在反卷积对图像进行操作的过程中,也可以通过提取其他卷积层的反卷积结果对最终图像进行预测,合适的选择会使得结果更好、更精细。
IoU
对于某个图像的子目标图像和对这个子目标图像进行标定的预测框,把最终标定的预测框与真实子图像的自然框(通常需要人工标定)的某种相关性叫做IOU(Intersection over Union),经常使用的标准为两个框的交叉面积与合并面积之和。
Bounding-Box regression:
解决的问题:当IOU小于某个值时,一种做法是直接将其对应的预测结果丢弃,而Bounding-Box regression的目的是对此预测窗口进行微调,使其接近真实值。
具体逻辑
在图像检测里面,子窗口一般使用四维向量(x,y,w,h)表示,代表着子窗口中心所对应的母图像坐标与自身宽高,目标是在前一步预测窗口对于真实窗口偏差过大的情况下,使得预测窗口经过某种变换得到更接近与真实值的窗口。
在实际使用之中,变换的输入输出按照具体算法给出的已经经过变换的结果和最终适合的结果的变换,可以理解为一个损失函数的线性回归。
NMS(非极大值抑制)
顾名思义,非极大值抑制就是抑制不是极大值的元素。在目标检测领域里面,可以使用该方法快速去掉重合度很高且标定相对不准确的预测框,但是这种方法对于重合的目标检测不友好。
Soft-NMS
对于优化重合目标检测的一种改进方法。核心在于在进行NMS的时候不直接删除被抑制的对象,而是降低其置信度。处理之后在最后统一一个置信度进行统一删除。
PRelu
在MTCNN中,卷积网络采用的激活函数是PRelu,带有参数的带有参数的Relu,相对于Relu滤除负值的做法,PRule对负值进行了添加参数而不是直接滤除,这种做法会给算法带来更多的计算量和更多的过拟合的可能性,但是由于保留了更多的信息,也可能是训练结果拟合性能更好。
以上所述为本发明的较佳实施例而已,但本发明不应局限于该实施例和附图所公开的内容,所以凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
Claims (10)
1.一种读写场景读写姿势的识别方法,其特征在于,步骤包括:
S1,获取读写场景中的原始图像、桌面或书本的图像信息;
S2,对读写元素的原始图像进行算法检测,依据坐标认定方法得出桌面、书本和人脸的空间三维坐标;
S3,利用已知物体在三维空间的坐标,在图像上一一对应的图像像素坐标以及相机内参数进而求解出此时相机相对于空间已知物体的外参数,即旋转向量以及平移向量;
S4,对旋转向量进行数据分析处理,求解出此时相机相对于已知物体空间坐标的三维姿态欧视角;
S5,依据物体的三维姿态欧视角判断读写姿势和读写距离是否符合标准。
2.如权利要求1所述的读写场景读写姿势的识别方法,其特征在于:人脸检测将图片按照固定要求代入训练好的人脸检测模型,获得左右眼、鼻子、两个嘴角的5个点的位置以及为人脸的可信度。
3.如权利要求2所述的读写场景读写姿势的识别方法,其特征在于:所述三维欧视角包括偏航角Yaw,滚轮角Roll,俯仰角Pitch,判断姿势错误的情况包括:
Yaw在[0,30)区间内;
Yaw在[30,45)区间内,并且Roll小于-10;
Yaw大于等于45,并且Roll小于0;
Yaw在[-10,0)区间内,并且Roll小于-3;
Yaw在[-40,-30)区间内,并且Roll小于-5;
Yaw在[-30,-10)区间内,并且Roll小于-10;
Yaw大于-40,并且Roll小于-30。
4.如权利要求1所述的读写场景读写姿势的识别方法,其特征在于:确定桌面、书本和人脸的空间三维坐标之前,需要先得出相机的内参数,所述相机的内参数包括基本参数和畸变系数变量,所述基本参数包括图像光轴主点,X,Y方向焦距,所述畸变系数向量包括切向畸变系数和径向畸变系数。
5.如权利要求4所述的读写场景读写姿势的识别方法,其特征在于:采用针孔成像模型计算得出物体的三维坐标,设定一个投影中心,主点为穿过光轴的图像主点,(X,Y,Z)为空间坐标系下的物体坐标,(x,y,z)为图像像素坐标。
6.如权利要求5所述的读写场景坐标认定方法,其特征在于:利用相机内参数,相机外参数以及自定义的3D空间坐标点(0.0,0.0,0.0),(1.5,0.0,0.0,),(0.0,0.0,1.5),即分别对应空间原点,空间X轴,空间Y轴,空间Z轴,求解出一一对应的图像2D坐标点;使用OpenCV提供的projectPoints函数解算出已知空间轴坐标点对应的图像坐标上的坐标点,最后将对应图像坐标点连在一起即为物体的空间坐标系。
7.如权利要求1所述的读写场景读写姿势的识别方法,其特征在于:所述人脸检测训练是通过MTCNN,将人脸区域检测与人脸关键点检测放在了一起,基于cascade框架的,总体分为PNet、RNet和ONet三层网络结构。
8.如权利要求7所述的读写场景读写姿势的识别方法,其特征在于:所述MTCNN特征描述子主要包括三个部分,人脸/非人脸分类器、边界框回归和地标定位。
9.如权利要求2所述的读写场景读写姿势的识别方法,其特征在于:根据获得的桌面或者书本四个顶点坐标,根据四个顶点计算出四边形对角线的交叉点坐标,又根据得到的人眼坐标即左右眼的坐标的中心点,计算出交叉点到人眼中心点的距离,根据这个距离与相机焦距的比例关系可以算出,人眼到桌面或者书本的实际距离。
10.如权利要求9所述的读写场景读写姿势的识别方法,其特征在于:人眼到桌面或者书本距离小于35厘米则认为该姿势错误。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910547842.1A CN110309751A (zh) | 2019-06-24 | 2019-06-24 | 一种读写场景读写姿势的识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910547842.1A CN110309751A (zh) | 2019-06-24 | 2019-06-24 | 一种读写场景读写姿势的识别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110309751A true CN110309751A (zh) | 2019-10-08 |
Family
ID=68077290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910547842.1A Pending CN110309751A (zh) | 2019-06-24 | 2019-06-24 | 一种读写场景读写姿势的识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110309751A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111814731A (zh) * | 2020-07-23 | 2020-10-23 | 科大讯飞股份有限公司 | 一种坐姿检测方法、装置、设备及存储介质 |
CN111898552A (zh) * | 2020-07-31 | 2020-11-06 | 成都新潮传媒集团有限公司 | 一种判别人员关注目标物的方法、装置及计算机设备 |
CN112084978A (zh) * | 2020-09-14 | 2020-12-15 | 深圳市沃特沃德股份有限公司 | 阅读监测的方法、阅读机器人以及计算设备 |
CN112085804A (zh) * | 2020-08-21 | 2020-12-15 | 东南大学 | 一种基于神经网络的物体位姿识别方法 |
CN113792664A (zh) * | 2021-09-16 | 2021-12-14 | 四川写正智能科技有限公司 | 正确读写坐标指数标定方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951081A (zh) * | 2015-07-09 | 2015-09-30 | 李乔亮 | 自动识别读写姿势的方法及其智能预警装置 |
CN105335699A (zh) * | 2015-09-30 | 2016-02-17 | 李乔亮 | 读写场景中读写元素三维坐标的智能认定方法及其应用 |
CN105354828A (zh) * | 2015-09-30 | 2016-02-24 | 李乔亮 | 读写场景中读物三维坐标的智能认定方法及其应用 |
CN105354822A (zh) * | 2015-09-30 | 2016-02-24 | 李乔亮 | 自动识别读写场景中读写元素位置的智能装置及应用 |
JP2016197780A (ja) * | 2015-04-02 | 2016-11-24 | 日本電信電話株式会社 | 画像データ処理方法、画像データ処理装置および画像データ処理プログラム |
-
2019
- 2019-06-24 CN CN201910547842.1A patent/CN110309751A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016197780A (ja) * | 2015-04-02 | 2016-11-24 | 日本電信電話株式会社 | 画像データ処理方法、画像データ処理装置および画像データ処理プログラム |
CN104951081A (zh) * | 2015-07-09 | 2015-09-30 | 李乔亮 | 自动识别读写姿势的方法及其智能预警装置 |
CN105335699A (zh) * | 2015-09-30 | 2016-02-17 | 李乔亮 | 读写场景中读写元素三维坐标的智能认定方法及其应用 |
CN105354828A (zh) * | 2015-09-30 | 2016-02-24 | 李乔亮 | 读写场景中读物三维坐标的智能认定方法及其应用 |
CN105354822A (zh) * | 2015-09-30 | 2016-02-24 | 李乔亮 | 自动识别读写场景中读写元素位置的智能装置及应用 |
Non-Patent Citations (2)
Title |
---|
CHENMOHOUSUIYUE: "单目相机姿态解算(OpenCV)", Retrieved from the Internet <URL:https://blog.csdn.net/chenmohousuiyue/article/details/78157509> * |
黄旭: "基于判别式深度学习的坐姿视觉识别方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111814731A (zh) * | 2020-07-23 | 2020-10-23 | 科大讯飞股份有限公司 | 一种坐姿检测方法、装置、设备及存储介质 |
CN111814731B (zh) * | 2020-07-23 | 2023-12-01 | 科大讯飞股份有限公司 | 一种坐姿检测方法、装置、设备及存储介质 |
CN111898552A (zh) * | 2020-07-31 | 2020-11-06 | 成都新潮传媒集团有限公司 | 一种判别人员关注目标物的方法、装置及计算机设备 |
CN112085804A (zh) * | 2020-08-21 | 2020-12-15 | 东南大学 | 一种基于神经网络的物体位姿识别方法 |
CN112084978A (zh) * | 2020-09-14 | 2020-12-15 | 深圳市沃特沃德股份有限公司 | 阅读监测的方法、阅读机器人以及计算设备 |
CN113792664A (zh) * | 2021-09-16 | 2021-12-14 | 四川写正智能科技有限公司 | 正确读写坐标指数标定方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287864A (zh) | 一种读写场景读写元素的智能认定方法 | |
CN110309751A (zh) | 一种读写场景读写姿势的识别方法 | |
CN110298284A (zh) | 一种读写场景及读写位置的识别方法 | |
US11417148B2 (en) | Human face image classification method and apparatus, and server | |
CN111898406B (zh) | 基于焦点损失和多任务级联的人脸检测方法 | |
CN108334848B (zh) | 一种基于生成对抗网络的微小人脸识别方法 | |
WO2018028546A1 (zh) | 一种关键点的定位方法及终端、计算机存储介质 | |
WO2022000862A1 (zh) | 鱼眼图像中的对象检测方法、装置及存储介质 | |
CN108985159A (zh) | 人眼模型训练方法、人眼识别方法、装置、设备及介质 | |
CN108985155A (zh) | 嘴巴模型训练方法、嘴巴识别方法、装置、设备及介质 | |
US9582731B1 (en) | Detecting spherical images | |
CN110795982A (zh) | 一种基于人体姿态分析的表观视线估计方法 | |
CN112784736B (zh) | 一种多模态特征融合的人物交互行为识别方法 | |
CN114092780A (zh) | 基于点云与图像数据融合的三维目标检测方法 | |
CN109255375A (zh) | 基于深度学习的全景图像对象检测方法 | |
CN103902958A (zh) | 人脸识别的方法 | |
CN110263768A (zh) | 一种基于深度残差网络的人脸识别方法 | |
CN103955889B (zh) | 一种基于增强现实技术的制图类作业评阅方法 | |
CN107025444A (zh) | 分块协同表示嵌入核稀疏表示遮挡人脸识别方法和装置 | |
CN112926426A (zh) | 基于监控视频的船舶识别方法、系统、设备及存储介质 | |
CN111814567A (zh) | 人脸活体检测的方法、装置、设备和存储介质 | |
CN118154603A (zh) | 基于级联多层特征融合网络的显示屏缺陷检测方法及系统 | |
CN110909685A (zh) | 姿势估计方法、装置、设备及存储介质 | |
CN110288718A (zh) | 一种读写场景坐标认定方法 | |
CN111914606A (zh) | 一种基于对透射率时空特征进行深度学习的烟雾检测方法 |
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 |