著录项信息
专利名称 | 一种移动互联网声纹门禁系统及其实现方法 |
申请号 | CN201510450293.8 | 申请日期 | 2015-07-28 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-11-18 | 公开/公告号 | CN105069874A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G07C9/00 | IPC分类号 | G;0;7;C;9;/;0;0查看分类表>
|
申请人 | 北京航空航天大学 | 申请人地址 | 北京市海淀区学院路37号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京航空航天大学 | 当前权利人 | 北京航空航天大学 |
发明人 | 宋友;任红雷;张野;杨思宇 |
代理机构 | 北京永创新实专利事务所 | 代理人 | 祗志洁 |
摘要
本发明提出一种移动互联网声纹门禁系统及其实现方法,属于身份认证技术领域。本发明系统分为移动端,服务端和终端。移动端显示用户有权限的门禁列表,接收声纹输入及生成和验证本地的声纹模型,移动设备与服务端之间建立Socket连接;服务端管理用户、门禁和开门记录,远程注册和验证声纹模型;终端包括门禁控制器和门禁锁,门禁控制器在联网后主动向服务器请求建立Socket连接,并监听开门指令。本发明可以使用户通过移动设备与声音进行本地或远程开门操作,具有仿冒难度大、无法盗取、不涉及隐私、成本低,易于远程验证等优势。
1.一种移动互联网声纹门禁系统的实现方法,其特征在于,包括如下实现步骤:
步骤1.1,在移动设备上进行用户注册或登录,将用户注册消息发送给服务端;用户注册消息包括用户Id和密码;
步骤1.2,若用户未注册声纹,则在移动端或服务端进行声纹注册,生成用户的声纹模型;若用户已进行声纹注册,当前需要进行声纹验证,转步骤1.4执行;
若用户在服务端进行声纹注册,移动端将用户Id和用户输入的语音作为声纹注册消息发送给服务端,在服务端进行声纹注册;
步骤1.3,若用户在本地进行声纹验证,生成的声纹模型保存在移动设备中;
若用户在服务端进行声纹注册和验证,生成的声纹模型保存在服务端;
步骤1.4,进行声纹验证时,移动端与服务端建立Socket连接;
步骤1.5,当移动端与服务端连接成功后,移动端发送用户Id和移动端的Mac地址给服务端,服务端查询该用户Id有权限的门禁,并以列表的形式返回给移动端;对于首次注册的用户,服务端将该用户信息保存到数据库;
步骤1.6,用户选择门禁,然后进行语音录制;如果用户在服务端进行声纹验证,移动端将用户Id、门禁Id和录制的语音形成开门消息发送给服务端;如果用户在移动端进行声纹验证,移动端将用户Id和门禁Id发送给服务端;
步骤1.7,在服务端或移动端进行声纹验证,提取用户录制的语音的声纹特征,并与该用户注册的声纹模型进行相似性比较,判断当前用户是否合法;
步骤1.8,如果用户合法,服务端查找与门禁Id对应的Socket连接,并发送用户Id和开门指令给对应门禁Id的终端;如果用户不合法,服务端发送用户不合法的消息给移动端。
2.根据权利要求1所述的移动互联网声纹门禁系统的实现方法,其特征在于,所述的服务端的实现方法包括以下步骤:
步骤2.1,实现管理模块,管理模块中包括三部分:用户管理、门禁权限管理和门禁记录管理;通过门禁权限管理授权不同用户使用某一门禁的权限;
步骤2.2,实现服务模块;服务模块的实现方法包括以下步骤:
步骤2.2.1,服务端创建Socket连接,并监听移动端或终端的Socket连接请求和消息;
步骤2.2.2,服务端在接收到Socket连接请求时,将该Socket连接与其对应的用户Id或门禁Id,以哈希表形式保存;
步骤2.2.3,服务端在收到消息时,判断消息类型并进行相应处理:
(1)若为用户注册消息,提取用户Id和密码保存在数据库中;
(2)若为门禁注册消息,提取门禁Id、门禁位置和授权的用户Id列表保存在数据库中;
(3)若为声纹注册消息,提取用户的声纹特征,训练生成用户的声纹模型;
(4)若为开门消息,提取用户Id、门禁Id与用户语音,提取用户语音的声纹特征,将该声纹特征与用户注册的声纹模型进行相似性对比,判断当前用户是否合法;如果用户合法,从持有Socket连接的哈希表中,找到对应门禁Id的Socket连接,向对应门禁Id终端发送开门指令和用户Id;如果用户不合法,向移动端返回声纹不合法消息。
3.根据权利要求1所述的移动互联网声纹门禁系统的实现方法,其特征在于,所述的终端包括门禁控制器和门禁锁,具体实现方法包括以下步骤:
步骤3.1:在接电并联网后,每个门禁控制器将主动向服务端请求建立Socket连接;
步骤3.2:Socket连接建立成功后,门禁控制器发送自己的Mac地址作为对应门禁的Id,之后开始监听开门指令;当某个门禁首次注册时,门禁控制器将门禁Id、门禁位置和授权的用户Id列表形成门禁注册消息发送给服务端;
步骤3.3:终端收到开门指令后通过门禁控制器打开门禁锁。
一种移动互联网声纹门禁系统及其实现方法\n技术领域\n[0001] 本发明涉及身份认证技术领域,具体涉及一种移动互联网声纹门禁系统及其实现方法。\n背景技术\n[0002] 声纹识别(Voiceprint Recognition,VPR)是生物识别技术的一种,也称为说话人识别(Speaker Recognition)。说话人识别包括两类,即说话人辨认(Speaker Identification)和说话人确认(Speaker Verification)。说话人辨认用以判断某段语音是若干人中的哪一个所说的,是“多选一”问题;而说话人确认用以确认某段语音是否是指定的某个人所说的,是“一对一判别”问题。声纹识别包括文本相关(Text-Dependent)和文本无关(Text-Independent)两种。\n[0003] 身份认证技术是指计算机及网络系统确认操作者身份的过程所应用的技术手段,是应用系统安全的第一道关口,是所有安全的基础。其主要分为三大类:(1)根据你所知道的信息来证明你的身份;如暗号、密码等;(2)根据你所拥有的东西来证明你的身份;如IC卡、USB Key等(3)直接根据独一无二的身体特征来证明你的身份,如指纹、面貌等。\n[0004] 公开号为CN 102306412 A的发明申请在2012年1月4日公开了一种电话声纹门禁系统,在传统的IC卡门禁系统中加入电话(固话/手机)声纹识别部分,但该种形式的门禁不能实现远程验证的功能,并且对录音冒充的防止能力较弱、步骤较为繁琐。针对现有嵌入式门禁对录音冒充的防止能力较弱、步骤较为繁琐等问题,公开号为CN 103390305 A的发明申请在2013年11月13日提供一种加入嵌入式声纹识别系统的文本提示型声纹门禁系统,系统随机给出的N位(如4位)数字语音提示验证者进行跟读,将采集的跟读语音与注册语音进行声纹识别验证。\n[0005] 但上述门禁系统,包括指纹门禁在内,存在易破解、易丢失、成本高,对验证环境要求高等缺陷。并且对于现今移动互联网普及的情况下,人们通过手机进行声纹本地或远程验证的过程相比之下将更为方便,并且由于声纹在该手机上进行保存,其安全性也更高。\n发明内容\n[0006] 本发明针对传统门禁易破解、易丢失、成本高,对验证环境要求高等缺陷,提供了一种移动互联网声纹门禁系统及其实现方法。本发明结合移动互联网和声纹,能够增强传统门禁的安全性,门禁安全验证的过程变得更加方便、自然,并且能够实现远程门禁的功能。\n[0007] 本发明提供的一种移动互联网声纹门禁系统,包括移动端,服务端和终端,一个门禁对应一个终端。所述的移动端设置在移动设备上,用于接收用户语音的输入,生成并验证声纹模型,显示服务端发来的用户有权限的门禁列表。在用户选择在服务端进行声纹验证时,移动端向服务端发送声纹模型,用户输入的语音;移动端与服务端之间建立Socket连接。所述的服务端包括管理模块和服务模块。管理模块实现用户管理、门禁权限管理和门禁记录管理,通过门禁权限管理授权不同用户使用某一门禁的权限,门禁记录包含用户所开的门禁Id、开门时间和门禁位置;服务模块实现的功能是:监听来自移动端或终端的Socket连接请求和消息,进行声纹注册和验证,当用户合法时发送开门指令给对应门禁的终端。声纹是指是携带言语信息的声波频谱。所述的终端包括门禁控制器和门禁锁,每个门禁控制器初始时的MAC地址作为该门禁的Id,并在联网后主动向服务端请求建立Socket连接,并监听开门指令。移动设备包括手机、平板电脑以及一切支持联网的移动语音输入的设备。终端与服务端建立的连接为Socket连接。服务端为普通管理员提供的管理功能主要包括用户、门禁、开门记录的添加,删除,编辑,查找等管理功能。终端指可以实现对门禁开关进行控制的一切设备,如树莓派、Arduino、单片机等。\n[0008] 本发明提供的一种移动互联网声纹门禁系统的实现方法,其中,移动端的实现方法包括以下步骤:\n[0009] 步骤1.1,在移动设备上进行用户注册或登录,将用户注册消息发送给服务端;用户注册消息包括用户Id和密码;\n[0010] 步骤1.2,若用户未注册声纹,则在移动端或服务端进行声纹注册,生成用户的声纹模型;若用户已进行声纹注册,当前需要进行声纹验证,转步骤1.4执行;\n[0011] 若用户在服务端进行声纹注册,移动端将用户Id和用户输入的语音作为声纹注册消息发送给服务端,在服务端进行声纹注册;\n[0012] 步骤1.3,若用户在本地进行声纹验证,生成的声纹模型保存在移动设备中;\n[0013] 若用户在服务端进行声纹注册和验证,生成的声纹模型保存在服务端;\n[0014] 步骤1.4,进行声纹验证时,移动端与服务端建立Socket连接;\n[0015] 步骤1.5,当移动端与服务端连接成功后,移动端发送用户Id和移动端的Mac地址给服务端,服务端查询该用户Id有权限的门禁,并以列表的形式返回给移动端;对于首次注册的用户,服务端将该用户信息保存到数据库;\n[0016] 步骤1.6,用户选择门禁,然后进行语音录制;如果用户在服务端进行声纹验证,移动端将用户Id、门禁Id和录制的语音形成开门消息发送给服务端;如果用户在移动端进行声纹验证,移动端将用户Id和门禁Id发送给服务端;\n[0017] 步骤1.7,在服务端或移动端进行声纹验证,提取用户录制的语音的声纹特征,并与该用户注册的声纹模型进行相似性比较,判断当前用户是否合法;\n[0018] 步骤1.8,如果用户合法,服务端查找与门禁Id对应的Socket连接,并发送用户Id和开门指令给对应门禁Id的终端;如果用户不合法,服务端发送用户不合法的消息给移动端。\n[0019] 本发明的移动互联网声纹门禁系统的实现方法中,服务端的实现方法包括以下步骤:\n[0020] 步骤2.2,实现服务模块;服务模块的实现方法包括以下步骤:\n[0021] 步骤2.2.1,服务端创建Socket连接,并监听移动端或终端的Socket连接请求和消息;\n[0022] 步骤2.2.2,服务端在接收到Socket连接请求时,将该Socket连接与其对应的用户Id或门禁Id,以哈希表形式保存;\n[0023] 步骤2.2.3,服务端在收到消息时,判断消息类型并进行相应处理:\n[0024] (1)若为用户注册消息,提取用户Id和密码保存在数据库中;\n[0025] (2)若为门禁注册消息,提取门禁Id、门禁位置和授权的用户Id列表保存在数据库中;\n[0026] (3)若为声纹注册消息,提取用户的声纹特征,训练生成用户的声纹模型;\n[0027] (4)若为开门消息,提取用户Id、门禁Id与用户语音,提取用户语音的声纹特征,将该声纹特征与用户注册的声纹模型进行相似性对比,判断当前用户是否合法;如果用户合法,从持有Socket连接的哈希表中,找到对应门禁Id的Socket连接,向对应门禁Id终端发送开门指令和用户id;如果用户不合法,向移动端返回声纹不合法消息。\n[0028] 本发明的移动互联网声纹门禁系统中,终端包括门禁控制器和门禁锁,终端的实现方法包括以下步骤:\n[0029] 步骤3.1:在接电并联网后,每个门禁控制器将主动向服务端请求建立Socket连接;\n[0030] 步骤3.2:Socket连接建立成功后,门禁控制器发送自己的Mac地址作为对应门禁的Id,之后开始监听开门指令;当某个门禁首次注册时,门禁控制器将门禁Id、门禁位置和授权的用户Id列表形成门禁注册消息发送给服务端;\n[0031] 步骤3.3:终端收到开门指令后通过门禁控制器打开门禁锁。\n[0032] 本发明与现有技术相比,具有如下优点和积极效果:\n[0033] (1)本发明的移动互联网声纹门禁系统相对于密码,指纹等传统门禁具有仿冒难度大、无法盗取、不涉及隐私、成本低,易于远程验证等优势;\n[0034] (2)本发明的移动互联网声纹门禁系统及其实现方法结合移动互联网和声纹,使门禁安全验证的过程变得更加方便、安全、自然;\n[0035] (3)本发明的移动互联网声纹门禁系统及其实现方法对于移动设备、服务端、门禁控制器的配置要求不高,实现起来简单,成本低廉,并且便于大规模的部署使用。\n附图说明\n[0036] 图1为本发明的移动互联网声纹门禁系统的组成框图;\n[0037] 图2为本发明的移动互联网声纹门禁系统实现方法的总体流程图;\n[0038] 图3为本发明的移动互联网声纹门禁系统实现方法在移动端应用的流程图;\n[0039] 图4为本发明的移动互联网声纹门禁系统中管理模块实现的流程图;\n[0040] 图5为本发明的移动互联网声纹门禁系统中服务模块实现的流程图;\n[0041] 图6为本发明的移动互联网声纹门禁系统中终端实现的流程图。\n具体实施方式\n[0042] 下面将结合附图和实施例对本发明作进一步的详细说明。\n[0043] 本发明提出的一种移动互联网声纹门禁系统,如图1所示,包括移动端,服务端和终端。\n[0044] 移动端运行在移动设备上,实现为App形式,用于显示用户有权限的门禁列表,接收声纹输入及生成和验证本地的声纹模型。移动端通过互联网与服务端进行通信,并进行门禁控制消息的发送。移动设备包括手机、平板电脑以及一切支持联网的移动语音输入的设备。\n[0045] 服务端包括管理模块和服务模块。管理模块用于管理用户和门禁,记录用户开门记录,记录中包括用户所开的门禁Id、时间和位置。服务模块用于注册声纹模型,验证用户开启门禁时所输入的声纹,建立并监听来自移动端或终端的Socket连接和消息。所述声纹是指是携带言语信息的声波频谱。\n[0046] 一个门禁对应为一个终端。终端包括门禁控制器和门禁锁,每个门禁控制器初始时的MAC地址作为该门禁的Id,并在联网后主动向服务端请求建立Socket连接,并监听开门指令。本发明可以使用户通过移动设备与声音进行本地或远程开门操作。\n[0047] 所述的终端与服务端建立的连接为Socket连接。所述服务端为普通管理员提供的管理功能主要包括用户、门禁、开门记录的添加,删除,编辑,查找等管理功能。所述的终端指可以实现对门禁开关进行控制的一切设备,如树莓派、Arduino、单片机等。\n[0048] 本发明的移动互联网声纹门禁系统的实现方法,如图2和图3所示,在移动端包括以下步骤:\n[0049] 步骤1.1:在移动设备上进行用户注册或登录。\n[0050] 在手机、平板电脑等移动设备上执行移动端App,本发明实施例中进入对应的声纹门禁App,首次使用用户需要进行身份信息注册,如果用户已经注册,则直接通过已注册用户名登录。当新用户注册时,移动端将用户注册消息发送给服务端;用户注册消息包括用户Id和密码。\n[0051] 步骤1.2:若用户未注册声纹,则进行声纹注册,建立用户的声纹模型。根据用户需要,选择在移动端(本地)或者服务端进行声纹注册。若用户已进行声纹注册,当前需要进行声纹验证,转步骤1.4执行。\n[0052] 从安全性以及移动设备的处理速度考虑,用户可以选择是否将该声纹模型上传到服务端,上传之后的验证过程即在服务端完成,否则声纹注册和验证过程将在移动端本地完成,而无论在服务端还是在移动端,声纹注册和验证的方法均相同。\n[0053] 声纹注册的过程包括以下步骤:\n[0054] (1)用户通过移动端进行多次语音输入。\n[0055] (2)对语音进行预加重和交叠式分帧。\n[0056] (3)对语音信号进行加窗,加窗可以选取但不限于汉明(hamming)窗等方式。\n[0057] (4)采取基于短时能量(或者短时过零率等指标)对语音进行端点检测,来识别出语音的开始段、噪声段和结束段。\n[0058] (5)提取用户的语音声纹特征,可以是梅尔倒谱系数或Gammatone频率倒谱系数,线性预测倒谱系数等能够标识用户声音特点语音特征。\n[0059] (6)通过语音声纹特征训练声纹模型。例如使用:EM算法训练GMM-UBM模型,使用Layer-Wise算法训练深度信念网等方法得到不同形式的声纹模型。\n[0060] 若用户在服务端进行声纹注册,移动端将用户Id和对应输入的语音作为声纹注册消息发送给服务端,在服务端进行声纹注册。\n[0061] 步骤1.3:若用户选择在服务端进行声纹注册和验证,生成的声纹模型保存至服务端;若用户选择在本地进行声纹识别,则生成的声纹模型在移动设备中以文件的形式保存。\n[0062] 步骤1.4:进行声纹验证时,首先移动端App自动与服务端建立Socket连接,建立连接过程如下:移动端创建并打开Socket,根据服务端Ip地址和端口号连接服务端Socket。\n[0063] 步骤1.5:移动端与服务端的Socket连接成功后,移动端将用户Id、移动端的Mac地址等发送给服务端。如该用户为首次注册时,服务端将用户注册信息保存到数据库中。服务端查询该用户Id有权限的门禁,并以列表的形式返回门禁的Id和简介信息到移动端。\n[0064] 步骤1.6:当用户选择某门禁后,进入语音输入界面,用户录制语音。如果用户选择了声纹上传到服务端进行注册和验证,移动端将向服务端发送开门消息,开门消息包含用户Id和门禁Id字符串,以及录制语音对应的二进制流格式信息。如果用户选择了声纹本地注册和验证,则客户端只向服务端发送带有用户Id和门禁Id字符串的消息。\n[0065] 步骤1.7:在服务端或移动端进行声纹验证,对用户录制的语音提取声纹特征,并与该用户注册的声纹模型进行相似性比较来判断当前用户是否合法。\n[0066] 在服务端和移动端本地的声纹验证方法相同。通过将用户录制的语音进行预加重、分帧、加窗、滤波、特征提取后,得到用户的声纹特征。将该特征与其注册的声纹模型进行相似性对比,如果是神经网络模型则将该特征输入到网络,从输出端得到分类结果,即是否为注册者本人。否则可以通过计算后验概率得到分数,如果分数大于阈值,则用户合法。\n否则用户不合法。\n[0067] 步骤1.8:如果用户合法,服务端通过查找到与该门禁对应的Socket,并发送用户Id和开门指令给对应的门禁终端。如果用户不合法,服务端发送用户不合法的消息给移动端。\n[0068] 本发明移动互联网声纹门禁系统中服务端的管理模块的实现方法,如图4所示,步骤如下:\n[0069] 步骤2.1.1:用户通过用户名和密码登录服务端的管理系统,该管理系统包括用户管理模块,门禁权限管理模块,门禁记录管理模块等。\n[0070] 步骤2.1.2:用户通过门禁权限管理模块授权不同用户使用某一门禁的权限。授权过程首先通过选择相应的门禁,之后从用户列表中选择相应的用户,并选择相应的进入权限。\n[0071] 本发明移动互联网声纹门禁系统中服务端的服务模块实现方法,如图2和图5所示,包括以下步骤:\n[0072] 步骤2.2.1:服务端首先创建Socket连接,并监听某一端口的Socket连接和消息。\n[0073] 步骤2.2.2:服务端在接收到Socket连接请求时,将该Socket连接与其对应的用户Id或门禁Id,以哈希表形式保存起来,以便之后进行查找。\n[0074] 步骤2.2.3:服务端在收到消息后,判断消息类型并进行如下相应处理。\n[0075] (1)若为用户注册消息,则提取用户Id和密码保存在数据库,对用户信息进行持久化。\n[0076] (2)若为门禁注册消息,则提取门禁Id、门禁位置和授权的用户Id列表保存在数据库中,对门禁信息进行持久化。\n[0077] (3)若为声纹注册消息,按照固定格式提取用户的声纹特征参数,并使用模型训练方法训练用户的声纹模型。所述训练方法可以采用如EM算法训练GMM-UBM模型,Layer-Wise算法训练深度信念网等方式来实现。\n[0078] (4)若为开门消息,提取用户Id,门禁Id与用户语音流数据,通过对语音信号的预加重、分帧、加窗、端点检测、特征提取后,得到用户的声纹特征参数。将该特征与其注册的声纹模型进行相似性对比,如果是神经网络模型则将该特征输入到网络,从输出端得到分类结果,即是否为注册者本人。否则可以通过计算后验概率得到分数,如果分数大于阈值,则用户合法,否则用户不合法,向移动端返回声纹不合法的提示信息。从持有Socket连接的哈希表中,找到对应门禁Id的Socket连接,并向其发送开门指令和用户Id。\n[0079] 本发明移动互联网声纹门禁系统中的终端实现方法,如图6所示,包括以下步骤:\n[0080] 步骤3.1:终端包括门禁控制器和门禁锁,在接电并联网后,每个门禁控制器将主动向服务端请求建立Socket连接。\n[0081] 步骤3.2:连接建立成功后,并发送自己的Mac地址作为该门禁的Id,之后开始监听开门指令。当某个门禁首次注册时,门禁控制器将门禁Id、门禁位置和授权的用户Id列表形成门禁注册消息发送给服务端。\n[0082] 步骤3.3:终端收到开门指令后通过门禁控制器开启门禁。所述门禁控制器可以是实现对门禁开关进行控制的一切设备,如使用树莓派通过GPIO输出高电平控制电磁继电器,继而控制门禁的开关,从而达到开门的效果。\n[0083] 本发明说明书中未作详细描述的内容,属于本领域公知技术。\n[0084] 以上所述仅是本发明的一种实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,所作的任何修改、等同替换、改进,润饰等,均应包含在本发明的保护范围之内。
法律信息
- 2018-08-03
- 2015-12-16
实质审查的生效
IPC(主分类): G07C 9/00
专利申请号: 201510450293.8
申请日: 2015.07.28
- 2015-11-18
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |