安全门禁方法
技术领域
本发明涉及门禁安全技术领域,并具体涉及一种基于二维码和/或图像处理技术的门禁方法。
背景技术
目前住户小区或办公场所的门禁系统种类繁多,包括简单的打卡系统,即用户随身携带内部具有用户标识的门卡,在进门时将门卡接近读卡器,若该门卡已被授权访问,则后台服务器将允许进入的信息发送给门禁系统,该门禁系统将安装有读卡器的门打开,以供用户进入,该方式存在的优点在于设备简单,用户进门的步骤也相对简单,缺点非常明显,那就是若门卡丢失,则任何捡到该门卡的人员都可以随意进入,对住户和办公安全都是很大的挑战;还包括一些生物识别技术,例如指纹识别,即后台已经记录了用户录入的指纹和用户其他信息,当用户使用已记录的手指放在指纹识别器上时,该识别器将读取的用户指纹发送至后台,后台比较后,若成功匹配,则允许用户进入,否则禁止用户进入,该方式存在的优点是比门禁卡更为安全,因为用户指纹不容易“丢失”,但目前也存在一些可模拟用户指纹的“指套”,指纹识别器并不能区分开该指套以及真正的用户手指,这也存在一定的安全隐患,再者,指纹识别系统的造价较高,为采用该系统的小区或公司带来了一定的经济负担,与此类似的虹膜检测系统也存在类似的缺陷;此外,还存在利用面部识别技术的门禁系统,即摄像机采集人脸照片并与后台数据库中预存的人脸照片进行比较,若成功匹配则允许用户进入,否则不允许用户进入,但此方法的安全系数也并不高,因为人脸照片很容易伪造,比如使用翻拍照片放在摄像机前就很容易突破该门禁系统,该翻拍照片例如为人脸的纸质照片或电子照片等;此外,上述现有的方法都是单层验证过程,并没有考虑被突破后所带来的安全隐患。
发明内容
为了解决上述技术问题,本发明提出了一种基于二维码和/或图像处理技术的门禁方法,它在不增加设备投资的前提下,通过互相配合的多道安全验证体系,保证了门禁系统的安全。
本发明提出了一种安全门禁方法,所述方法包括:用户通过手机选择将要到达大门的时间;手机中的发送模块将手机中预存的用户标识以及将要到达大门的时间通过无线连接发送给后台服务器;后台服务器记录所述用户标识以及将要到达大门的时间;手机中的二维码生成模块生成包含所述用户标识的二维码;用户到达大门后,与该大门对应的二维码读取器读取手机屏幕显示的二维码并将读取后的信息发送给后台服务器;后台服务器判断该信息是否为授权信息,如果是,则用户通过了二维码验证,否则用户没有通过二维码验证。
根据本发明的一个方面,所述用户标识基于手机中预存的用户信息以及当时的系统时间自动生成,以保证该用户标识对于一次二维码验证过程的唯一性。
根据本发明的一个方面,所述后台服务器将所述用户标识以及将要到达大门的时间作为一条访问记录进行记录,所述手机中预存的用户信息为用户id。
根据本发明的一个方面,后台服务器定时对一条或多条所述访问记录进行维护,包括:后台服务器选择一条访问记录,判断当前的系统时间和该访问记录中的将要到达大门的时间,若当前的系统时间超过了将要到达大门的时间,则后台服务器将该访问记录删除,然后后台服务器选择下一条访问记录进行继续维护。
根据本发明的一个方面,所述后台服务器判断该信息是否为授权信息具体为:所述后台服务器预先记录了能够进入该大门的所有用户的用户id、与用户id对应的用户照片,当后台服务器接收到二维码读取器发送过来的信息后启动下述用户识别过程:后台服务器读取该信息中的用户标识并在一条或多条访问记录中进行搜索;如果访问记录中不存在该用户标识,则认为用户无法进入大门;如果访问记录中存在该用户标识,则读取该用户标识中的用户id;从预先记录的能够进入该大门的所有用户的用户id中查找所述用户标识中的用户id;如果找到了匹配,则认为该用户id有效;否则认为该用户id无效,用户无法进入大门。
根据本发明的一个方面,当用户通过了二维码验证后,后台服务器发送消息给手机以提示用户将面部正对摄像机。
根据本发明的一个方面,利用摄像机采集要识别的人脸照片并发送给后台服务器;后台服务器收到采集的照片后,发送消息给手机提示用户面部照片采集完毕,然后对采集的照片进行小波变换,提取小波变换后照片的高频系数;后台服务器对照片的高频系数进行量化;后台服务器利用共生矩阵对量化后的高频系数进行降维,得到降维后的图像特征向量;后台服务器将所述降维后的图像特征向量输入训练好的SVM中进行分类,以得到分类结果,所述训练好的SVM对输入的图像特征向量进行运算并得到作为输出的所述分类结果;后台服务器根据所述分类结果,判断要识别的人脸照片为翻拍的人脸照片还是正常的人脸照片;如果是翻拍的人脸照片,则认为用户不能进入该大门,后台服务器发送消息给用户手机,如果是正常的人脸照片,则进入人脸识别过程。
根据本发明的一个方面,所述训练好的SVM通过如下步骤进行训练:在后台服务器中建立人脸翻拍训练库,包括摄像头采集的多幅正常人脸照片和多幅翻拍人脸照片;对人脸翻拍训练库中的照片进行小波变换,提取小波变换后各照片的高频系数;对各照片所述高频系数进行量化;利用共生矩阵对量化后的高频系数进行降维,得到降维后的各照片的图像特征向量,并且记录每个图像特征向量对应的照片标识,所述标识表示该图像特征向量对应的照片为正常人脸照片还是翻拍人脸照片;将各照片的图像特征向量以及对应的照片标识作为SVM的训练输入,对SVM进行训练,得到所述训练好的SVM。
根据本发明的一个方面,所述人脸识别过程包括:后台服务器从二维码读取器读取的信息中获得用户id,并从预存的信息中找到与该用户id相对应的用户照片;判断要识别的正常的人脸照片是否与所述与该用户id相对应的用户照片相匹配,如果匹配则允许用户进入大门,否则不允许用户进入大门。
根据本发明的一个方面,所述安全门禁方法还包括其他验证过程,所述其他验证过程包括虹膜或指纹生物识别过程或人工识别过程,所述人工识别过程包括:将摄像头采集的图像通过监视器提供给监控室的操作人员;后台服务器根据采集的图像在数据库预存的照片中筛选出多幅相似图像并提供给操作人员,由操作人员进行人工对比,判断是否为授权进入大门的用户。
由此可见,本发明提出的技术方案通过多道验证过程保证了门禁系统的安全性,并且如上文所示,本发明并没有提高实施所需的成本,它利用了现有常见的设备实现了更为安全的门禁系统,与现有技术相比,具有明显的易用性,并且考虑的更为全面,其中的二维码验证过程从多个方面保证了二维码的私密性和时效性;人脸识别过程考虑到了二维码验证过程所使用的手机丢失带来的安全隐患并提供了翻拍图像检测过程以消除该隐患;还提供了其他验证过程作为补充从而提供一种多层次验证的门禁系统。
附图说明
图1是实现本发明提出的基于二维码和图像处理技术的门禁方法的设备架构图;
图2是本发明提出的基于二维码和图像处理技术的门禁方法的整体流程图;
图3是二维码验证过程的流程图;
图4是翻拍照片识别过程的流程图;
图5是图2所示整体流程图中的一个实施例的细节流程图。
具体实施方式
仅为说明的目的提出下述实施例,这些实施例并不限定本发明的保护范围。
正如背景技术所述,现有技术的门禁系统存在要么安全系数不高,要么设备成本不菲的问题,首先参见图1,对为实现本发明提出的方法而采用的设备架构进行介绍,从中可看出,本发明使用了造价较低的各种设备的组合,这保证了本发明的实现成本较低。
如图1所示,门禁系统包括后台服务器101,与后台服务器通过有线或无线的方式进行通信的多个摄像头102、多个二维码读取器103、多台手机104以及位于监控室并能够与后台服务器通信的多台监视器105。其中,在需要安装门禁的大门处安装有相应的摄像头以及二维码读取器,需要进入大门的每个用户持有一台手机。
如图2所示,本发明提出的基于二维码和图像处理技术的门禁方法包括二维码验证过程,当通过二维码验证后进行的翻拍人脸检测过程,当通过翻拍人脸检测过程后进行的人脸识别过程,以及其他验证过程。
下面分别参考图3和图4对二维码验证过程以及翻拍人脸检测过程进行详细描述。
二维码验证过程:
1.用户通过手机选择将要到达大门的时间;
2.手机中的发送模块将手机中预存的用户标识以及将要到达大门的时间通过无线连接发送给后台服务器;
3.后台服务器记录所述用户标识以及将要到达大门的时间;
4.手机中的二维码生成模块生成包含所述用户标识的二维码;
5.用户到达大门后,与该大门对应的二维码读取器读取手机屏幕显示的二维码并将读取后的信息发送给后台服务器;
6.后台服务器判断该信息是否为授权信息,如果是,则用户通过了二维码验证,否则用户没有通过二维码验证。
在步骤1中,用户的手机预装了发送用户标识和将要达到时间以及生成二维码标识的应用,用户可通过手机的人机交互界面选择将要达到大门的时间,该时间是用户人工预测从而手动选择的时间,或者是根据手机中的导航应用得到的预计到达时间自动填写的将要到达大门的时间,例如,如果用户判断20分钟内将到达大门,则可选择20分钟,或者为了保险起见,可选择30分钟,即比预计的时间稍晚一些;或者如果是导航软件预测出40分钟后到达,则可自动选择50分钟,即将当前时间加上50分钟作为所述将要到达大门的时间。该时间的作用在于限定用户标识认证的有效时间段,这将在下面进行详细描述。
在步骤2中,所述用户标识基于手机中预存的用户信息以及当时的系统时间自动生成,以保证该用户标识对于一次二维码验证过程的唯一性,防止用户标识被多次冒名使用。其原因在于,由于用户信息一般不会发生改变,诸如用户id,因此根据该id生成的二维码图案也不会发生改变,那么该图案可能会被将来多次使用,这对系统的安全性造成了隐患。在一个实施例中,所述用户标识是将用户信息以及当时的系统时间进行加密后的信息。
在步骤3中,所述后台服务器将所述用户标识以及将要到达大门的时间作为一条访问记录进行记录;若所述用户标识是加密后的信息,则后台服务器首先将该用户标识解密后再对其进行记录。
此外,在步骤3中,后台服务器定时对一条或多条所述访问记录进行维护,具体的,后台服务器选择一条访问记录,判断当前的系统时间和该访问记录中的将要到达大门的时间,若当前的系统时间超过了将要到达大门的时间,则后台服务器将该访问记录删除,然后后台服务器选择下一条访问记录进行继续维护。也就是说,如果用户将要到达大门的时间早于当前的系统时间,则用户没有在规定的时间内到达大门,该记录自动作废,以提高系统的安全性。
在步骤6中,所述后台服务器预先记录了能够进入该大门的所有用户的用户id、与用户id对应的用户照片等用户信息,当后台服务器接收到二维码读取器发送过来的信息后启动用户识别过程。首先,后台服务器读取该信息中的用户标识并在一条或多条访问记录中进行搜索,如果访问记录中存在该用户标识,则读取该用户标识中的用户id,并从预先记录的能够进入该大门的所有用户的用户id中查找所述用户标识中的用户id,如果找到了匹配,则认为该用户id有效,否则认为该用户id无效,用户无法进入大门;如果不存在该用户标识,则认为用户无法进入大门。
现有技术中并没有如上文所述的这种具有时效的二维码验证过程,而且一般来说,通过上述的二维码验证过程就可以保证一定的安全性了,因为现有的手机都具有一定的安全保障,例如进入手机需要输入密码或指纹等信息,那么即使丢失了手机,别人也无法访问手机内部的应用来顺利通过上述的二维码验证过程。
然而,如果手机没有密码或者手机易于被破解,那么该手机就有可能被其他人利用,由于二维码识别过程不需要用户自身的生物信息,所以其他人可能简单地突破门禁系统而进入大门,从而造成安全隐患。因此,根据本发明的另一方面,还提出了接下来继续执行的翻拍人脸检测过程,之所以要进行翻拍人脸检测,是因为目前用户的手机中很可能存在自己的自拍照片,那么一旦手机丢失,在二维码验证被突破的情况下,手机里的自拍照片可能被用作突破人脸检测的工具,从而造成安全隐患。下面对翻拍人脸检测过程进行介绍。很明显,所述翻拍人脸检测过程是在二维码验证过程中认为用户id有效时才予以执行的。
根据一个实施例,当后台服务器认为该用户id有效时,发送消息给手机,所述消息指示用户已经通过二维码检验过程,提示用户将面部正对摄像机。
翻拍人脸检测过程:
1.利用摄像机采集要识别的人脸照片并发送给后台服务器;
2.后台服务器收到采集的照片后,发送消息给手机提示用户面部照片采集完毕,然后对采集的照片进行小波变换,提取小波变换后照片的高频系数;
3.后台服务器对照片的高频系数进行量化(quantization);
4.后台服务器利用共生矩阵(co-occurrencematrix)对量化后的高频系数进行降维,得到降维后的图像特征向量;
5.后台服务器将所述降维后的图像特征向量输入训练好的SVM(支撑向量机)中进行分类,以得到分类结果,所述训练好的SVM对输入的图像特征向量进行运算并得到作为输出的所述分类结果;
6.后台服务器根据所述分类结果,判断要识别的人脸照片为翻拍的人脸照片还是正常的人脸照片;
7.如果是翻拍的人脸照片,则认为用户不能进入该大门,后台服务器发送消息给用户手机,如果是正常的人脸照片,则进入人脸检测过程。
在步骤3中,所述量化的目的是为了步骤4的降维,所述量化过程为将高频系数变换在预定的取值范围[-a,a]内,其中a为正整数,例如[-10,10]范围内的整数,即变换前所有大于10的数均取值为10,所有小于-10的数均取值为-10,在[-10,10]之间的数通过四舍五入的方法变换为整数。与其他步骤,诸如小波变换、利用共生矩阵降维等相同,这些都是本领域技术人员可以实现的,因此这里不再一一赘述。
步骤2-4的过程目的在于得到SVM可用的输入,如果将整幅图像直接作为SVM的输入或者作为下述训练SVM时的输入,则无关信息太多且需要处理的信息量太大,并且训练结果也达不到预期效果,而通过实验,经过步骤2-4后,无论是训练的SVM还是通过训练的SVM辨别翻拍照片都能达到良好的预期效果,准确度高。
在步骤5中,通过以下步骤获得训练好的SVM。
5.1在后台服务器中建立人脸翻拍训练库,包括摄像头采集的多幅正常人脸照片和多幅翻拍人脸照片;
5.2对人脸翻拍训练库中的照片进行小波变换,提取小波变换后各照片的高频系数;
5.3对各照片所述高频系数进行量化;
5.4利用共生矩阵对量化后的高频系数进行降维,得到降维后的各照片的图像特征向量,并且记录每个图像特征向量对应的照片标识,所述标识表示该图像特征向量对应的照片为正常人脸照片还是翻拍人脸照片;在一个实施例中,所述标识为0和1,其中0表示翻拍人脸照片,1表示正常人脸照片。
5.5将各照片的图像特征向量以及对应的照片标识作为SVM的训练输入,对SVM进行训练,得到所述训练好的SVM。
由此可见,在一个实施例中,步骤4中的所述分类结果为0或1,其中0表示翻拍人脸照片,1表示正常人脸照片。
因此,在步骤5中,如果分类结果为0,则认为要识别的人脸照片为翻拍的人脸照片,如果分类结果为1,则认为要识别的人脸照片为正常的人脸照片。
人脸识别过程:
后台服务器根据二维码验证过程获得的用户id找到与该用户id相对应的用户照片;
判断要识别的人脸照片是否与所述与该用户id相对应的用户照片相匹配,如果匹配则允许用户进入大门,否则不允许用户进入大门。
其他验证过程:
虽然本发明上文提出了三道门禁过程,然而实际还可以与其他验证过程相结合,比如当用户手机忘带、丢失或者面部识别系统判断失误的情况下,都可以采用其他验证过程对用户进行进一步检验,比如可采用虹膜或指纹等生物识别过程,也可采用人工识别过程,即将摄像头采集的图像提供给监控室的操作人员,后台服务器根据采集的图像在数据库预存的照片中筛选出多幅相似图像并提供给操作人员,由操作人员进行人工对比,判断是否为授权进入大门的用户。这些过程作为补充,不再一一列举。
图5示出了从二维码识别到进入其他验证过程的整体流程,其中示出了二维码检测成功进入翻拍人脸检测,当识别为正常人脸照片则进入人脸识别过程,以及人脸识别成功或失败后的其他处理过程。
本发明所提出的上述实施例仅为对本发明的说明,并不作为对本发明保护范围的限制。本领域技术人员可基于上述说明对本发明作出修改,这些修改同样属于本发明公开的内容而落入本发明的保护范围内。