技术领域
[0001] 本发明涉及人工智能技术领域,尤其涉及一种情感识别方法、情感识别设备及情感识别系统。
相关背景技术
[0002] 情感识别在研究人类及人类心理问题的过程中起到重要作用,随着人工智能的发展,通过大量的数据训练获得可以自动识别人类情感的模型。现有的情感识别研究已经充分地探索了如何从语音和表情、皮肤温度和血压、脑神经活动等信息中识别情绪状态。
[0003] 现有的情感识别装置有着无法通过用户的动作数据识别用户情感的缺点。
具体实施方式
[0052] 下面将结合本实施例中的附图,对本实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0053] 需要说明,本实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
[0054] 另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0055] 在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0056] 另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0057] 本发明提供一种情感识别系统,包括三维传感器阵列服装,三维传感器阵列服装上设置有多个传感器组成的传感器阵列,用于采集用户的肌肉应力信号数据;
[0058] 情感识别设备,用于接收肌肉应力信号数据,并根据肌肉应力信号数据获得情感识别结果。
[0059] 可以理解地,三维传感器阵列服装为将多个柔性织物传感器集成在可穿戴的服装上获得,用户穿戴三维传感器阵列服装,这种三维传感器阵列服装采集肌肉应力信号数据时,用户做任意动作都可以采集到其对应的肌肉应力信号数据,在空间上映射用户的实时动作所引起的应力刺激,同时还具有舒适性,几乎可以长期地与人体的任何部位接触,从而拓展了全新人机接口的可能性。
[0060] 请参阅图1,基于但是不限于上述硬件设备,提供一种情感识别方法,本实施例包括以下步骤:
[0061] S10,获取三维传感器阵列服装采集的用户的当前肌肉应力信号数据;
[0062] S20,将当前肌肉应力信号数据输入至已训练好的多元情感分类模型,获得所述多元情感分类模型输出的情感识别结果。
[0063] 请结合图10、图11,在可穿戴的服装上集成多个传感器形成传感器阵列作为三维传感器阵列服装,图10中原点即为传感位置,图10a为服装正面传感器位置示意图,图10b为服装背面传感器位置示意图,图11为三维传感器阵列服装实物图,图11中为用户在不同情感状态下穿着三维传感器阵列服装时,其表达出的不同肢体动作对应的应力图,图11a为平静状态下的三维传感器阵列服装应力分布图;图11b为开心状态下的三维传感器阵列服装应力分布图;图11c为难过状态下的三维传感器阵列服装应力分布图;图11d为生气状态下的三维传感器阵列服装应力分布图。用户做任意动作时,对应的肌肉产生变化,压迫三维传感器阵列服装上的传感器阵列,传感器受压阵列产生电信号,即为肌肉应力信号数据,肌肉应力信号数据对应人体不同部位在表达不同情感时的应力变化,将当前肌肉应力信号数据采集后,输入已训练好的多元情感分类模型,多元情感分类模型通过肌肉应力信号数据分析出用户表达的情感,并输出情感识别结果。
[0064] 在本发明的技术方案中,通过采用三维传感器阵列服装采集人体表达情感时肌肉应力信号数据,将其输入已训练好的多元情感分类模型中,多元情感分类模型通过肌肉应力信号数据输出其对应的情感识别结果。本发明通过三维传感器阵列服装采集人体表达情感时的动作数据,可以确保高质量捕获人体表达情感时的肌肉应力信号数据,并根据动作与情感状态之间的关系,可以更准确地识别人体的情感表达,提高了情感识别的准确性。
[0065] 请参阅图2,在一实施例中,将肌肉应力信号数据输入至已训练好的多元情感分类模型,获得多元情感分类模型输出的情感识别结果的步骤之前,方法还包括:
[0066] S100,获取用户执行多个预设动作时三维传感器阵列服装采集的肌肉应力信号数据,其中,每个预设动作对应多个肌肉应力信号数据;
[0067] S200,对肌肉应力信号数据进行标记,获得具有情感标签的训练样本,并获得由多个训练样本构成的第一训练样本数据集;
[0068] S300,通过第一训练样本数据集对SVM模型进行训练,获得多元情感分类模型。
[0069] 例如,用户执行快乐动作时,对应呼吸频率及呼吸强度的变化,其胸部的起伏会产生变化,从而使用户胸口部位的传感器采集到肌肉应力信号数据,同时胸口部位对应多个肌肉应力信号数据,采集完成后,将一组表达快乐的肌肉应力信号数据作为一组训练样本,并对其进行标记,获得具有快乐标签的训练样本,即一组标记为快乐的肌肉应力信号数据;此时用户再执行悲伤动作,采集用户执行悲伤动作时身体因肌肉变化产生的肌肉应力信号数据,将一组表达悲伤的肌肉应力信号数据作为一组训练样本,并对其进行标记,获得具有悲伤标签的训练样本,即一组标记为悲伤的肌肉应力信号数据。将多个表达不同情感的训练样本构成第一训练样本数据集。再通过第一训练样本数据集对SVM模型进行训练,获得多元情感分类模型,此时将用户的动作数据输入多元情感分类模型,即可输出与其对应的情感标签,即用户的动作表达的情感为快乐或悲伤。
[0070] 可以理解地,用户表达情感时身体的肌肉变化不限于胸口部位,同时用户表达各种情感时肌肉应力信号数据的变化也不同,一组训练样本包括用户执行一个情感表达的动作时所有传感器获得的肌肉应力信号数据,用户表达的情感也不限于快乐和悲伤,第一训练样本数据集可包括多种情感表达的训练样本。
[0071] 请结合图3‑图7,在一实施例中,通过第一训练样本数据集对SVM模型进行训练,获得多元情感分类模型的步骤,包括:
[0072] S310,对第一训练样本数据集中的训练样本进行信号数据过滤,获得由多个过滤后的训练样本构成的第二训练样本数据集;
[0073] 在获取训练样本的肌肉应力信号数据的过程中,难免会产生对模型训练无作用甚至副作用的无效肌肉应力信号数据,因此需要采用滤波法对训练样本进行数据信号过滤,常用的滤波法可以采用限幅滤波法,通过设置两次采样允许的最大偏差值来筛选信号数据,可以有效筛除因偶然因素引起的无效肌肉应力信号数据;或是采用递推平均滤波法(又称滑动平均滤波法),把连续取得的N个采样值看成一个队列,队列的长度固定为N,每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据,把队列中的N个数据进行算术平均运算,获得新的滤波结果,滑动平均滤波法对周期性干扰有良好的抑制作用,平滑度高。
[0074] 作为一种实施方式,S310,具体包括:S3110,将同一传感器采集的任意肌肉应力信号数据和与其对应的前一个肌肉应力信号数据作差,获得差值,其中,所述三维传感器阵列服装包括多个传感器;可以理解地,传感器采集肌肉应力信号数据时存在时间排序,因此将一时间节点的肌肉应力信号数据与其对应的前一时间节点的肌肉应力信号数据做差值。
[0075] S3120,从第一训练样本数据集的训练样本的肌肉应力信号数据中筛除掉差值大于预设最大偏差值的肌肉应力信号数据,并用其前一个肌肉应力信号数据代替筛除掉的肌肉应力信号数据,获得由筛选完成的肌肉应力信号数据组成的过滤后的训练样本,并获得由多个筛选出的过滤后的训练样本构成的第二训练样本数据集。如果差值大于预设最大偏差值,则将该时间节点的肌肉应力信号数据筛除,并以其前一时间节点的肌肉应力信号数据代替该时间节点的肌肉应力信号数据。
[0076] 通过设置预设最大偏差值,筛除掉差值超过预设最大偏差值的肌肉应力信号数据,差值变化过大的肌肉应力信号数据可能是三维传感器阵列服装采集异常或数据上传异常导致,因此筛除掉差值异常的肌肉应力信号数据有助于提升肌肉应力信号数据的参考性,提高第二训练样本数据集的准确性。
[0077] S320,对第二训练样本数据集中的训练样本进行信号特征提取,获得由多个提取到的样本特征构成的第一训练样本特征集;
[0078] 对训练样本中的肌肉应力信号数据进行特征提取,来使肌肉应力信号数据与情感标签的对应关系更准确,特征提取通常提取时域特征和频域特征,时域的常见特征有波形指标、脉冲指标、峭度指标、裕度指标、峰峰值、过零率、短时能量和短时自相关函数等;常见的频域特征有重心频率、均方频率、均方根频率、频率方差、频率标准差、短时功率谱密度、谱熵、基频和共振峰等。
[0079] 作为一种实施方式,S320,具体包括:S3210,对第二训练样本数据集中的训练样本提取多种时‑频域特征,获得由多个时‑频域特征组成的训练样本线性特征集;因直接从肌肉应力信号数据中获取的信息并不明显。因此,需要提取一些特征来表示信号。通过提取肌肉应力信号数据中时域特征和频域特征来获得训练样本线性特征,可以提高训练样本的参考性和准确性。
[0080] S3220,对第二训练样本数据集中的训练样本提取多种非线性特征,获得由多个非线性特征组成的训练样本非线性特征集;再提取训练样本中的非线性特征,与线性特征结合,可以进一步地提高第一训练样本特征集的准确性。
[0081] S3230,将训练样本线性特征集和训练样本非线性特征集组合,获得第一训练样本特征集。
[0082] S330,对第一训练样本特征集中的训练样本进行信号特征选择,获得由多个特征选择后的训练样本构成第二训练样本特征集;
[0083] 通过特征选择避免机器学习的过拟合,常用的特征选择方法有过滤法、包装法和嵌入法。
[0084] 作为一种实施方式,S320,具体包括:
[0085] S3310,基于关联的特征选择算法,获得第一训练样本特征集的信号特征重要度;可以理解地,基于关联的特征选择算法输出皮尔逊相关性作为信号特征重要度的量化,1表示高度正相关,0表示不相关,‑1代表高度负相关S3320,筛选出第一训练样本特征集的信号特征中信号特征重要度大于或等于预设阈值的信号特征,获得由多个筛选后的信号特征组成的第二训练样本特征集。通过特征选择筛除掉无关紧要或庸余的特征,来保证第一训练样本特征集中的特征数据对SVM模型的训练作用更高效,降低浪费在无效特征上的算力,提高训练效率,同时提高了训练的准确性。具体地,将预设阈值设置为0.1,则可以将不相关和高度负相关的信号特征筛除,以提高第二训练样本特征集的可参考性。
[0086] S340,将第二训练样本特征集输入SVM模型并进行训练,获得多元情感分类模型。
[0087] 作为一种实施方式,S320,具体包括:S3410,对第二训练样本特征集进行归一化处理,获得第三训练样本特征集;
[0088] S3420,将第三训练样本特征集输入SVM模型,获取SVM模型的最佳惩罚系数和最佳gamma参数;
[0089] S3430,将最佳惩罚系数、最佳gamma参数与第二训练样本特征集输入SVM模型进行多元情感分类训练,获得多元情感分类模型。可以理解地,SVM模型为支持向量机模型,SVM模型是一种有坚实理论基础的新颖的小样本学习方法。它基本上不涉及概率测度及大数定律等,因此不同于现有的统计方法。从本质上看,它避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“转导推理”,大大简化了通常的分类和回归等问题。SVM的最终决策函数只由少数的支持向量所确定,计算的复杂性取决于支持向量的数目,而不是样本空间的维数,这在某种意义上避免了“维数灾难”。少数支持向量决定了最终结果,这不但可以“剔除”大量冗余样本,而且注定了该方法不但算法简单,而且具有较好的“鲁棒”性。这种“鲁棒”性主要体现在:增、删非支持向量样本对模型没有影响;支持向量样本集具有一定的鲁棒性;有些成功的应用中,SVM方法对核的选取不敏感。因此采用SVM模型对于情感识别的训练具有更精准,更简洁的优点。
[0090] 通过信号数据过滤、信号特征提取和信号特征选择将采集到的用户的肌肉应力信号数据进行预处理,筛除掉其中参考价值不大的训练样本,使得进行训练的肌肉应力信号数据参考价值更高,从而使训练好的SVM模型对情感的识别更准确。
[0091] 请参阅图8,在一实施例中,将肌肉应力信号数据输入至多元情感分类模型,获得多元情感分类模型输出的情感识别结果的步骤包括:
[0092] S21,对所述当前肌肉应力信号数据进行信号数据过滤、信号特征提取和信号特征选择,获得当前肌肉应力信号特征集;
[0093] S22,将所述当前肌肉应力信号特征集输入所述所述多元情感分类模型,输出所述当前肌肉应力信号特征集对应的情感标签。
[0094] 在使用时,对采集到的用户的当前肌肉应力信号数据进行预处理,即信号数据过滤、信号特征提取和信号特征选择,获得对应的第二训练样本特征集,如用户表达快乐的当前肌肉应力信号数据,经已训练好的多元情感分类模型识别后,认定其与表达快乐的训练样本更为相似,即输出情感识别结果为表达快乐的情绪。
[0095] 基于同一发明构思,本发明还提供一种情感识别设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,计算机程序配置为实现上述的情感识别方法的步骤。由于本情感识别设备采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
[0096] 请参阅图9,基于同一发明构思,本发明还提供一种情感识别系统,用于实现上述的情感识别方法,包括:
[0097] 电源、三维传感器阵列服装、微控制器和上述的情感识别设备;
[0098] 电源分别与三维传感器阵列服装、微控制器、情感识别设备通过有线连接,[0099] 三维传感器阵列服装用于采集用户执行情感动作的肌肉应力信号数据并以信号数据的形式发送给微控制器,三维传感器阵列服装和微控制器通过有线连接,微控制器与上位机通过有线连接;
[0100] 电源用于分别与三维传感器阵列服装、微控制器和情感识别设备连接并提供电力,
[0101] 微控制器用于接收三维传感器阵列服装采集的肌肉应力信号数据并保存,然后发送到情感识别设备;
[0102] 情感识别设备对从微控制器接收到的压力值数据经过分析处理后实时显示情感识别的结果。
[0103] 本情感识别装置通过三维传感器阵列服装采集用户的肌肉应力信号数据,并通过微控制器传送给上位机,上位机内安装有多元情感分类模型,上位机对肌肉应力信号数据进行预处理,获得第二训练样本特征集,并将第二训练样本特征集输入多元情感分类模型,多元情感分类模型输出对应的情感标签,完成情感识别。由于本情感识别装置采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
[0104] 在一具体的实施例中,情感识别方法包括以下步骤:
[0105] 确定一个涵盖R种情感的情感概念模型(R>3,本实施例中为4),并随机选定M个参与者(本实施例中为10),使M个参与者穿上三维传感器阵列服装,并让参与者通过动作分别表达R种情感,通过三维传感器阵列服装采集参与者每次表达情感时的肌肉应力信号数据作为训练样本,其中三维传感器阵列服装中的传感器数量为W个(本实施例中为18),参与者对应每个情感分别进行N次动作表达(N取值范围为1~5,本实施例中为3),共获得P组训练样本,并对P组训练样本对应的参与者表达的情感进行标签和编号,获得P个情感标签和第一训练样本数据集,P=R×M×N(本实施例中为4×10×3=120),其中,每个训练样本为采集参与者1分钟的动作中,W个通道的信号数据(通道数对应传感器数量),传感器的可检测力度范围为0~30kPa,且采集频率为5HZ,即每秒采集五个信号点;
[0106] 对第一训练样本数据集进行预处理,包括信号数据过滤、信号特征提取、信号特征选择三部分;
[0107] 为克服外部环境偶然因素引起的突变性扰动尖脉冲干扰,对第一训练样本数据集进行限幅滤波法处理,确定两次采样之间允许的最大偏差值,设置为Pc,可以理解地,采集到的肌肉应力信号数据按时间顺序排序,将时间上后一个肌肉应力信号数据与其对应的前一个肌肉应力信号数据作差,并将差值与Pc比较,筛除掉差值大于Pc的肌肉应力信号数据,并用前一个肌肉应力信号数据代替被筛除掉的肌肉应力信号数据值,若差值小于Pc,则采集当前肌肉应力信号数据,获得筛选后的第二训练样本数据集;
[0108] 需要注意的是,为了抑制周期性干扰并提升信号数据的信号平滑度,对第一训练样本数据集实施滑动平均滤波法处理。在本实施例中,将连续采集到的T个肌肉应力信号数据点看成一个循环队列,长度固定为T,每次采集到一个新的肌肉应力信号数据点后,放置队尾,并丢弃原来的队首数据,滤波器每次输出的肌肉应力信号数据值总是当前队列中的T个数据的算术平均值;
[0109] 对第二训练样本数据集进行信号特征提取,对第二训练样本数据集中每个训练样本的每个信号通道提取U种时‑频域特征,得到P×(W×U)阵列的训练样本线性特征集。本实施例选择了9种时‑频域特征:峰‑峰均值、均方值、方差、功率谱之和、最大功率谱密度、最大功率谱频率、活性度、移动性和复杂性,训练样本线性特征集为120×162的阵列;
[0110] 对第二训练样本数据集中每个训练样本的每个信号通道再提取V种非线性特征,得到P×(W×V)阵列的训练样本非线性特征集。本实施例选择了9种非线性特征:近似熵、C0复杂度、关联维度、李雅普诺夫指数、柯尔莫哥洛夫熵、排列熵、奇异熵、香农熵和功率谱熵,训练样本非线性特征集为120×162的阵列;
[0111] 将训练样本线性特征集和训练样本非线性特征集组合,获得第一训练样本特征集,第一训练样本特征集为120×324的阵列,每个训练样本包含18个信号通道,其特征数为(U+V)×W,即324;
[0112] 在新西兰快卡托大学开发者所贡献的WEKA(怀卡托智能分析环境)工具中应用基于关联的特征选择算法,建立第一训练样本特征集中324种不同信号特征对第二训练样本数据集的重要度。基于关联的特征选择算法输出皮尔逊相关性作为信号特征重要度的量化,1表示高度正相关,0表示不相关,﹣1代表高度负相关,并按照重要度从高到低对第一训练样本特征集中的信号特征进行排序,将重要度低于一定阈值的信号特征筛除,本实施例中阈值为0.1,获得第二训练样本特征集,第二训练样本特征集中的每个训练样本都带有情感标签;
[0113] 将第二训练样本特征集进行归一化处理,获得第三训练样本特征集,并将第三训练样本特征集输入LIBSVM工具箱,选用RBF核函数,获得获取SVM模型的最佳惩罚系数和最佳gamma参数,并将最佳惩罚系数和最佳gamma参数和第二训练样本特征集输入SVM模型进行训练,获得多元情感分类模型;
[0114] 训练完成SVM模型后,SVM模型装入上位机中,通过三维传感器阵列服装获得用户的当前肌肉应力信号数据,并将当前肌肉应力信号数据预处理后获得第二训练样本特征集,输入多元情感分类模型,训练好的SVM模型输出该第二训练样本特征集对应的情感标签作为情感输出结果。
[0115] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。