买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】多场景多主体身份行为情绪识别分析方法及智能监管系统_首都经济贸易大学_202010417747.2 

申请/专利权人:首都经济贸易大学

申请日:2020-05-18

公开(公告)日:2020-09-15

公开(公告)号:CN111666829A

主分类号:G06K9/00(20060101)

分类号:G06K9/00(20060101);G06K9/62(20060101);G06N3/04(20060101)

优先权:

专利状态码:在审-实质审查的生效

法律状态:2020.10.13#实质审查的生效;2020.09.15#公开

摘要:多场景多主体身份行为情绪识别分析方法及智能监管系统,可以应用到智能视频监控、智能考勤和智能教学等领域,系统包括视频采集装置、前端智控探测预警装置、后端智控探测预警服务器、监控管理端等。本发明将基于人工智能技术的视频图像采集及分析、用户行为采集及分析结合,实现多角度多维度对情感状态、内容等进行智能分析和监控预警。本专利针对多个场景下多名主体的情绪与效率的监控领域,可解决智能教室和智能教学等领域的不同需求,有利于教师及时地了解所有学生的学习情况,对学生的疑问进行反馈和解答,并进行教学进度和速度上的调整。

主权项:1.多场景多主体身份行为情绪识别分析方法,其特征在于,该方法包括五个流程:1启动探测预警流程200,2停止探测预警流程300,3人脸表情训练流程500,4内容分析流程600,5前端探测预警流程100;1启动探测预警流程200:该流程的功能是启动前端探测预警;步骤201:启动探测预警:将第n个前端智控探测预警设备的标志位设置为1,即System_Startn=1;2停止探测预警流程300:该流程的功能是停止前端探测预警;步骤301:停止探测预警:将第n个前端智控探测预警设备的标志位设置为0,即System_Startn=0;3人脸表情训练流程500:该流程的功能是训练人脸表情识别模型;步骤501:启动训练,步骤501由步骤501.1至步骤501.2两个步骤组成:步骤501.1:训练表情识别模型:步骤501.1的输入是:样本是由P张图片组成的数据集,每张图片的文件名是pic_x_y_zzzzzz.jpg,其中x表示该图片对应的情感类别值,y表示该图片属于训练样本还是测试样本,zzzzzz表示图片编号;步骤501.1的输出是:训练后的模型EmotionModel;步骤501.1的实现方法是:由步骤501.1.1至步骤501.1.4共4个步骤组成;步骤501.1.1:该步骤将图片转化成为数组;样本是P张图片,根据每个图片文件和图片名称pic_x_y_zzzzzz.jpg,将该图片转化为数据datapIMG,pType,datapIMG,pType的数据结构如下:data由P行3列构成,data的每一行表示一个图片的信息,pIMG对应zzzzzz是图片编号;当pType=1时,datapIMG,1用来存储第pIMG张图片的像素datapIMG,1=imgpIMG,mIMG,nIMG,cIMG,该图像每个像素点的值,其中mIMG表示图像像素的行数,nIMG表示图像像素的列数,cIMG表示图像像素的RGB通道号,因此cIMG=1,2,3;每个图片的维度大小为size×size,因此,mIMG=1,2,…,size,nIMG=1,2,…,size;当pType=2时,datapIMG,2用来存储第pIMG张图片的情感标签值,datapIMG,2的取值在集合eIMG中,即datapIMG,2=eIMG,eIMG={1,2,…,10},按照情感极性由消极到积极的程度,具体表情对应的标签如下:1大哭、2伤心、3憎恨、4厌恶、5沮丧、6严肃、7微笑、8喜悦、9惊讶、10大笑,其中eIMG对应x是情感标签;当pType=3时,datapIMG,3用来存储第pIMG张图片是训练样本还是测试样本,datapIMG,3的取值在集合gIMG中,gIMG={0,1}即第pIMG个样本图像如果是训练样本则datapIMG,3=0,如果是测试样本则datapIMG,3=1,其中gIMG对应y是训练样本或测试样本的类别值;即:当图片文件名是pic_0_5_000123.jpg时,该图片信息存储为:data123,1=img123,mIMG,nIMG,cIMG,即img123,100,200,1表示第123张图片第100行200列R通道的值;data123,2=5;data123,3=0;步骤501.1.2:该步骤将图像进行灰化;将图像从RGB模式转换为L模式,降低计算复杂度,该步骤的输入是从步骤501.1输出的图像像素值矩阵datapIMG,1,该步骤的输出是灰化后的图片data_graypIMG;步骤501.1.2将图片从模式RGB转换为灰化L模式的计算方式见公式1:data_graypIMG=ToGraydatapIMG,11步骤501.1.3:该步骤将数据划分为训练集和测试集,根据样本图像的第三列,即训练集与测试集的标记列,将图像数据集划分为训练集和测试集;输出训练集的特征为:x_trainpIMG,训练集的标签为:y_trainpIMG,测试集的特征为:x_testpIMG,测试集的标签为:y_testpIMG,计算方式见公式2、3、4、5;当datapIMG,3=0时,表示这些数据是训练集数据,即:x_trainpIMG=data_graypIMG2y_trainpIMG=datapIMG,23当datapIMG,3=1时,表示这些数据是测试集数据,即:x_testpIMG=data_graypIMG4y_testpIMG=datapIMG,25步骤501.1.4:该步骤将训练表情识别模型,使用卷积神经网络进行训练,该步骤的输入为x_trainpIMG、y_trainpIMG、x_testpIMG、y_testpIMG,输出为模型评价指标准确率accuracy,训练模型的计算方式见公式6:EmotionModel=FITx_trainpIMG,y_trainpIMG6测试模型准确率的的计算方式见公式7:Accuracy=EmotionModelx_testpIMG,y_testpIMG7当模型准确率accuracy达到95%以上时,停止训练,模型保存为EmotionModel;步骤501.2:训练人脸识别模型;步骤501.2的输入是:样本是由Q张图片组成的数据集,每张图片的文件名是pic_userName_id_number_aaaaaa.jpg,其中userNmae表示该张图片所对应的人物的真实姓名,id表示该张图片所对应的人物的唯一ID索引号,number表示第id个人物的第number张图片,aaaaaa表示图片编号;步骤501.2的输出是:训练后的模型FaceModel,识别出该人是谁;步骤501.2的实现方法是:由步骤501.2.1至步骤501.2.3共3个步骤组成;步骤501.2.1:该步骤将图片转化成为数组;样本是Q张图片,根据每个图片文件和图片名称pic_userName_id_number_aaaaaa.jpg,将该图片转化为数据datafaceqIMG,qType,datafaceqIMG,qType的数据结构如下:dataface由Q行4列构成,dataface的每一行表示一个图片的信息,qIMG对应aaaaaa是图片编号;当qType=1时,dataqIMG,1用来存储第qIMG张图片的像素,dataqIMG,1=imgqIMG,mIMG,nIMG,cIMG,该图像每个像素点的值,其中mIMG表示图像像素的行数,nIMG表示图像像素的列数,cIMG表示图像像素的RGB通道号,因此cIMG=1,2,3;每个图片的维度大小为size×size,因此,mIMG=1,2,…,size,nIMG=1,2,…,size;当qType=2时,dataqIMG,2用来存储第qIMG张图片中人物的真实姓名,其中dataqIMG,2的取值对应userName;当qType=3时,dataqIMG,3用来存储第qIMG张图片中人物的唯一ID索引号,其中dataqIMG,3的取值对应id;当qType=4时,dataqIMG,4用来存储第qIMG张图片中,第id个人物的第number张图片,其中dataqIMG,4的取值对应number;步骤501.2.2:该步骤将图像进行灰化;将图像从RGB模式转换为L模式,降低计算复杂度,该步骤的输入是从步骤501.2.1输出的图像像素值矩阵dataqIMG,1,该步骤的输出是灰化后的图片data_grayqIMG;步骤501.2.2将图片从模式RGB转换为灰化L模式的计算方式见公式8:data_grayqIMG=ToGraydataqIMG,18步骤501.2.3:训练人脸识别模型,调用人脸识别器进行训练,该步骤的输入是步骤501.2.2灰度化后的datafaceqIMG,qType,输出是得到的人脸识别模型FaceModel,训练模型的计算方式见公式9:FaceModel=Traindataface94内容分析流程600:该流程的功能是计算相同文本数same_countm,其中same_countm表示ID为m用户的相同字符数;步骤601:启动内容分析,配置字符指针A指向myText001m文本的起点处,指针B指向myText002m文本的起点处,其中myText001m是ID为m用户接受到的行为数据,myText002m是ID为m用户的行为数据;步骤602:判断字符指针A是否指向myText001m文本的终点,B是否指向myText002m文本的终点,如果没有指向文本终点,则转到步骤603,如果上述判断条件满足任意一个,则内容分析流程结束;步骤603:判断字符指针A和B当前所指位置字符是否相同,如果相同,则转到步骤604,如果不同,则转到步骤606;步骤604:更新指针A、B,其中A加一后,更新A,B加一后,更新B,转到步骤605;步骤605:相同文本字数same_count计算,same_count加一后,更新same_count,转到步骤602;步骤606:配置新的字符指针C,指向字符指针B的下一个字符,即将B加一后的值赋给C,更新C,转到步骤607;步骤607:判断指针C是否指向myText002m文本终点,如果是,转到步骤608,如果不是,则转到步骤609;步骤608:更新指针A和B,其中A加一后,更新A,B加一后,更新B,转到步骤602;步骤609:判断指针C和A指向的字符是否相同,如果相同,转到步骤610,如果不相同,则转到步骤611;步骤610:更新指针B,使指针B指向当前指针C所指的字符位置,更新B,转到步骤602;步骤611:更新指针C,其中C加一后,更新C,转到步骤607;5前端智控探测预警流程100由步骤110至步骤180共8个步骤构成:步骤110:系统参数配置:初始化系统的启动状态System_Startn=0,其中n=1,2,…,N,System_Startn=0表示令系统中第n个前端探测装置处于停止工作状态,一共有N个前端探测装置;初始化当前时刻t:t为当前时间,格式为:YY年MM月DD日HH时MM分SS秒;初始化上次图像处理的时间t_last为当前时间;初始化当前系统时间t与上次图像处理的时间t_last之间的时间间隔t_between=0;初始化触发算法间隔周期T:T的取值范围为10秒;初始化人脸数据库NAMEid,name,其中id=1,2…Nnamc表示每张人脸的索引号,Nnamc表示总人数,name表示人脸对应人的真实姓名;初始化用户状态报警变量myTime_alert:myTime_alert取值为600s;初始化用户行为报警变量similatityd:similatityd取值为30;步骤120:智控探测预警启动判定:判断是否启动探测预警:检测当前系统的状态,如果System_Startn=1,其中n=1,2,…,N,则启动第n个探测预警系统,如果System_Startn=0,其中n=1,2,…,N,则不启动探测预警系统;计算当前时间与上一次执行分析算法的时间差t_between=t-t_last,如果t_betweenT,则表示距离上一次执行分析算法的时间差小于触发算法执行的最小时间T,则不执行分析算法,随着t的增大,当t_between=T时,则表示距离上一次执行分析算法的时间差达到了触发算法执行的最小时间T,则执行分析算法,将当前执行时间t设置为最后一次执行分析算法的时间t_last=t,进入步骤130;步骤130:视频图像采集:步骤130的输入是:第n个前端探测装置在被监控的场景中采集的视频;步骤130的输出是:第n个前端探测装置在当前时刻采集的图像capture_imagen,其中n=1,2,…,N,表示系统中第n个前端探测装置;步骤130的实现方法是:获取监控场景中的实时视频,将当前时刻的视频图像存储为capture_imagen;步骤140:视频图像分析:步骤140由步骤141个体识别分析和步骤142情感指数分析组成;步骤141:个体识别分析;步骤141的输入是:第n个前端探测装置在当前时刻采集的图像capture_imagen;步骤141的输出是:图片中各人物所出现的次数resultn,id,其中n=1,2,…,N,表示系统中第n个前端探测装置,id表示所所检测到人物的唯一id号;步骤141的实现方法是:由步骤141.1至步骤141.3共3个步骤组成;步骤141.1:该步骤将图像进行灰化,将图像从RGB模式转换为L模式,降低计算复杂度,该步骤的输入是从步骤130输出的图像数据capture_imagen,capture_imagen=capture_image_colorn,i,j,c,i,j表示图片的像素,i=1,2…1024,j=1,2…1024,c表示图片RGB的三通道,c=1,2,3;该步骤的输出是灰化后的图片capture_grayn,其中n=1,2,…,N;步骤141.1将图片从模式RGB转换为灰化L模式的计算方式见公式10:capture_grayn=ToGraycapture_imagen10步骤141.2:该步骤将利用分类器识别出人脸区域,调用人脸检测器,识别出capture_grayn中的人脸区域,指定其命名为capture_facen,计算方式见公式11:capture_facen=FaceDetectcapture_grayn11步骤141.3:该步骤将人脸识别,调用步骤501.2.2步骤中训练好的人脸识别模型FaceModel,对capture_facen中人脸区域中的人脸进行识别,与人脸数据库中的人脸进行比对,计算连续k个T周期内各个人脸出现的次数,其中5≤k≤10且为整数,计算方式见公式12:resultid=CalculateFaceModel,capture_facen12如果resultid≥1,则表示该人物存在,否则表示该人物不存在;步骤142:情感指数分析;步骤142的输入是:第n个前端探测装置在当前时刻采集的图像capture_imagen;步骤142的输出是:第n个前端探测装置在当前时刻采集的图像中的各类表情及其个数EMOi=ni,i=[1,10],其中i表示不同的表情类别;步骤142的实现方法是:由步骤142.1至步骤142.3共3个步骤组成:步骤142.1:利用分类器识别出人脸区域,调用人脸检测器,识别出capture_imagen的人脸区域,指定其命名为facen;步骤142.2:为识别出的人脸添加坐标框;步骤142.2的输入是:步骤142.1中的人脸图像facen;步骤142.2的输出是:框选出人脸坐标的图片,指定命名为capture_rectanglen;步骤142.2坐标的计算方式为:指定x,y为左下角的坐标,w为宽,h为高,则人脸框右上角的坐标为x+w,y+h;步骤142.3:人脸表情识别,使用步骤501中训练好的模型EmotionModel对步骤142.2中框选出人脸坐标的图片capture_rectanglen进行人脸表情识别,输出识别结果大哭、伤心、憎恨、厌恶、沮丧、严肃、微笑、喜悦、惊讶、大笑这十种表情及其个数,指定大哭表情的人数为EMO1=N1,伤心表情的人数为EMO2=N2,憎恨表情的人数为EMO3=N3,厌恶表情的人数为EMO4=Nz,沮丧表情的人数为EMO5=N5,严肃表情的人数为EMO6=N6,微笑表情的人数为EMO7=N7,喜悦表情的人数为EMO8=N8,惊讶表情的人数为EMO9=N9,大笑表情的人数为EMO10=N10;步骤150:视频图像分析结果预警:步骤150的输入是:步骤142识别出的表情结果及其个数,EMOi=Ni,i=[1,10],Ni=0,1,…,N,Ni为识别出的不同表情结果的个数步骤150的输出是:场景的情感状态;步骤150的实现方法是:由步骤150.1至步骤150.3共3个步骤组成:步骤150.1:计算当前时刻t场景中的人物整体情感值,按照情感积极到消极的程度,情感分为大哭、伤心、憎恨、厌恶、沮丧、严肃、微笑、喜悦、惊讶、大笑,设定情感分值,其中大哭的人数为EMO1,大哭的分值是EMO_score1=1,设定10种情感的分值依次递增,范围为1至10,则大笑的人数为EMO10,大笑的分值EMO_score10=10,则每个时刻t的整体情感值的计算方式见公式13: 步骤150.2:计算距离当前时刻t最近的连续T个时刻的平均情感值,其计算方式见公式14: 步骤150.3:输出场景的情感状态:如果7EMO_lastTt≤10,则输出情感状态为positive,表示当前时间段场景中人物的情感状态为积极状态,不需要预警;如果3EMO_lastTt≤7,则输出情感状态为normal,表示当前时间段场景中人物的情感状态为中性状态,需要关注;如果0EMO_lastTt≤3,则输出全班的情感状态为negative,表示当前时间段场景中人物的情感状态为消极状态,需要重点关注并预警,转步骤151;步骤151:多维度可视化,根据连续时间内的平均情感值EMO_lastTt,对情感状态进行可视化并绘制时刻t-T到当前时刻t之间的曲线Curve,曲线的横轴是时刻t-T到时刻t,纵轴是EMO_lastTt;步骤160:用户行为采集:在第n个探测预警系统中,用户ID为m的用户向服务器发送该用户ID值m、行为数据myText001m、myText002m、发送当前时间myTimem;其中myText001m是用户ID为m接收的B类用户行为数据信息,myText002m是用户ID为m的A类用户行为数据信息;步骤170:用户行为分析:步骤170的输入是:A类用户行为数据myText002m,当前页面时间myTimem;B类用户行为数据myText001m;步骤170的输出是:B类用户行为数据与A类用户行为数据比对相似度similaritym,A类用户所在当前页面时间间隔myTime_betweenm;步骤171:行为内容分析,定义参数total_count1m表示步骤160获取的B类用户行为数据的文本总字数,使用名为Length的字符串长度计算方法得出total_count1m,定义参数total_count2m表示当前A类用户行为内容文本总字数,使用名为Length的字符串长度计算方法得出total_count2m,定义参数same_countm表示两类用户文本相同的字数,其中same_countm的计算方法为内容分析流程600,使用文本相似度算法计算相似度similaritym;步骤171计算文本相似度的计算方式如下,如果满足条件total_count1mtotal_count2m则使用公式15进行计算,如果满足条件total_count1mtotal_count2m则使用公式16进行计算:similaritym=same_countm÷total_count1m×10015similaritym=same_countm÷total_count2m×10016步骤172:分析用户状态,使用步骤160获取的当前时间myTimem,定义参数myTime_lastm记录上一次获取的用户时间,计算出当前获取时间myTimem与上次获取时间myTime_lastm的时间间隔myTime_betweenm,其中myTime_betweenm=myTimem-myTime_lastm;步骤180:用户行为分析结果预警:步骤180的输入是:步骤171计算的文本相似度similaritym;步骤172获取的用户所在页面时间间隔myTime_betweenm;步骤180的输出是:显示状态预警警告Warning表中状态类型的报警信息,以及用户行为预警警告Warning表中行为类型的报警信息,其中Warning表是用来存储报警信息的数据表,包含字段WarningId,Type,m,time,content1,content2,content3,其中WarningId表示报警编号主键,Type表示报警类型,其中1表示行为类型,2表示状态类型,m表示用户ID,time表示报警时间,content1表示报警内容,content2表示被报警用户行为数据以及content3表示更正信息;步骤180的预警方法是:由步骤180.1至步骤180.2共2个步骤组成:步骤180.1:显示用户状态预警警报;使用步骤172获取的用户所在页面时间间隔myTime_betweenm;如果myTime_betweenm小于或等于系统预设报警时间myTime_alert,表示用户这一时间段内工作状态正常,不需要预警;如果myTime_betweenm大于系统预设报警时间myTime_alert,则表示该用户没有在当前页面,用户这一时间段内工作状态异常,系统向Warning表中产生一条新的数据,其中报警类型Type=2表示报警类型为状态类型的报警,同时录入被报警用户信息m和报警时间time,并根据报警类型生成相对应的报警信息content1;步骤180.2:显示用户行为预警警报;使用步骤171计算获得的文本相似度similaritym进行判断,此时系统预设的相似度similarityd;如果similaritymsimilarityd时,表示当前用户工作状态良好,不需要报警;如果similaritymsimilarityd,表示当前用户工作状态为走神,系统向Warning表中产生一条新的数据,其中报警类型Type=1表示报警类型为行为类型的报警,同时录入被报警用户信息m和报警时间time,根据报警类型生成相对应的报警信息content1,以及获取当前被报警用户的行为数据content2=myText002m;步骤181:该步骤是实现发起交互操作;通过判断报警类型Type向报警界面显示对应类型的报警信息:如果Type=1,表示该报警信息为用户行为类型的报警,向监控用户端输出用户信息m,报警时间time,报警信息content1,监控用户还通过点击报警信息显示当前被报警用户的行为数据content2;如果Type=2,表示该报警信息为用户状态类型的报警,并输出用户信息m,报警时间time,报警信息content1;根据报警类型,以及输出的信息,监控端用户向被报警用户发送更正信息content3并要求其改正。

全文数据:

权利要求:

百度查询: 首都经济贸易大学 多场景多主体身份行为情绪识别分析方法及智能监管系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。