[发明专利]一种基于手机的远程开门控制方法在审

专利信息
申请号: 201610082459.X 申请日: 2016-02-05
公开(公告)号: CN105788039A 公开(公告)日: 2016-07-20
发明(设计)人: 杨垚 申请(专利权)人: 重庆标博科技有限公司
主分类号: G07C9/00 分类号: G07C9/00
代理公司: 暂无信息 代理人: 暂无信息
地址: 400051 重庆市九*** 国省代码: 重庆;85
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于手机的远程开门控制方法,属于安防领域,本发明预先获取用户图像并进行存储;接收来自手机终端的加密图像;通过键盘模块输入密码,控制器根据接收到的密码对接收到的加密图像进行解密,得到待匹配图像;将待匹配图像与存储的用户图像进行匹配;当待匹配图像与存储的用户图像进行匹配成功时,控制电子门锁开启。本发明能够根据提供的图像自适应生成密码,且生成速度快,并能够结合生成的密码对图像进行加密,以对存储的图像进行保护。用户将图像传送给门禁设备,并告诉客人密码,即可实现远程开门控制,本发明实现了双保险,更加安全,同时也不需要用户赶回开门,更加方便。
搜索关键词: 一种 基于 手机 远程 开门 控制 方法
【主权项】:
一种基于手机的远程开门控制方法,包括用于发送信息的手机终端(1)和用于接收信息的门控终端(2),所述门控终端(2)包括控制器(3)、GPRS模块(4)、存储模块(5)、电子门锁(6)和键盘模块(7);所述GPRS模块(4)、存储模块(5)分别与所述控制器(3)双向连接,所述控制器(3)的控制信号输入端连接所述电子门锁(6)的控制信号输入端,所述键盘模块(7)的信号输出端连接所述控制器(3)的信号输入端;其特征在于包括以下步骤:步骤一、控制器(3)获取用户图像并进行存储;步骤二、门控终端(2)通过GPRS模块(4)接收来自手机终端(1)的加密图像;步骤三、用户通过键盘模块(7)输入密码,控制器(3)根据接收到的密码对接收到的加密图像进行解密,得到待匹配图像;步骤四、将待匹配图像与存储的用户图像进行匹配;当待匹配图像与存储的用户图像进行匹配成功时,控制器(3)发送控制信号给所述电子门锁(6)使其开启;当待匹配图像与存储的用户图像进行匹配不成功时结束;步骤二中所述加密图像按以下步骤进行加密:步骤A1、通过图像采集设备获取分辨率为a*a的正方形图像,所述a为正整数;步骤A2、设定所述人脸图像中任意一像素点为Pij,获取像素点Pij的RGB值,所述i、j均为正整数,且1≤i≤a,1≤j≤a;步骤A3、将像素点Pij的R值、G值及B值分别转换为对应的十六进制数值;判断像素点Pij的十六进制R值、十六进制G值及十六进制B值是否达到两位;当像素点Pij的十六进制R值、十六进制G值或十六进制B值不到两位时,在该不到两位的十六进制值左边添加一个字符G,以形成像素点Pij的两位R值字符串、两位G值字符串和两位B值字符串,然后执行步骤A4;当像素点Pij的十六进制R值、十六进制G值或十六进制B值达到两位时,执行步骤A4;步骤A4、将像素点Pij的两位R值字符串、两位G值字符串和两位B值字符串从左向右依次排列形成第一级数串;步骤A5、将i和j分别转换为对应的十六进制数值;判断i的十六进制值或j的十六进制值是否达到四位;当i的十六进制值或j的十六进制值不到四位时,在该不到四位的十六进制值左边添加字符G,以形成i的四位字符串和j的四位字符串,然后执行步骤A6;当i的十六进制值或j的十六进制值达到四位时,执行步骤A6;步骤A6、将j的四位字符串添加到所述第一级数串的左边,且将i的四位字符串添加到所述j的四位字符串的左边,以形成第二级数串;步骤A7、将所述人脸图像划分为16*16个正方形区域<mrow><mfenced open = '{' close = '}'><mtable><mtr><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr><mtr><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>选取所述像素点Pij所在的区域Tm,n,m、n均为正整数且1≤m≤16、1≤n≤16;步骤A8、判断第二级数串中是否有字符G;当第二数串中包含字符G时,将第二级数串中的字符G替换为0,然后执行步骤A9;当第二数串中没有字符G时,执行步骤A9;步骤A9、设定所述第二级数串的倒数第一位数为Q1,设定所述第二级数串的倒数第二位数为Q2;将Q1和Q2分别转换为十进制数值;计算Q11=Q1+1得到Q11,计算Q21=Q2+1得到Q21;所述1≤Q11≤16,所述1≤Q21≤16;计算<mrow><msub><mi>T</mi><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow></msub><mo>=</mo><mfenced open = '{' close = ''><mtable><mtr><mtd><msub><mi>T</mi><mrow><mi>m</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>n</mi><mo>+</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>m</mi><mo>&GreaterEqual;</mo><msub><mi>Q</mi><mn>11</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>n</mi><mo>&GreaterEqual;</mo><msub><mi>Q</mi><mn>21</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>m</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>m</mi><mo>&GreaterEqual;</mo><msub><mi>Q</mi><mn>11</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>n</mi><mo>&lt;</mo><msub><mi>Q</mi><mn>21</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>m</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>n</mi><mo>+</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>m</mi><mo>&lt;</mo><msub><mi>Q</mi><mn>11</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>n</mi><mo>&GreaterEqual;</mo><msub><mi>Q</mi><mn>21</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>m</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>m</mi><mo>&lt;</mo><msub><mi>Q</mi><mn>11</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>n</mi><mo>&lt;</mo><msub><mi>Q</mi><mn>21</mn></msub></mrow></mtd></mtr></mtable></mfenced></mrow>得到第一目标区域Tx,y;将Tm,n与Tx,y进行替换;步骤A10、将第一行区域与第三行区域进行替换;将第二行区域与第四行区域进行替换;将第五行区域与第七行区域进行替换;将第六行区域与第八行区域进行替换;将第九行区域与第十一行区域进行替换;将第十行区域与第十二行区域进行替换;将第十三行区域与第十五行区域进行替换;将第十四行区域与第十六行区域进行替换;所述步骤三中用户输入的密码为所述第二级数串;步骤三中对接收到的加密图像进行解密按以下步骤进行:S1、将加密图像划分为16*16个正方形区域<mrow><mfenced open = "{" close = "}"><mtable><mtr><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>1</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>2</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr><mtr><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>1</mn></mrow></msub></mtd><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>2</mn></mrow></msub></mtd><mtd><mrow><mo>...</mo><mo>...</mo></mrow></mtd><mtd><msub><mi>T</mi><mrow><mn>16</mn><mo>,</mo><mn>16</mn></mrow></msub></mtd></mtr></mtable></mfenced><mo>,</mo></mrow>第一行至第四行区域为第一加密模块,第五行至第八行区域为第二加密模块,第九行至第十二行区域为第三加密模块,第十三行至第十六行区域为第四加密模块;S2、接收用户输入的密码;S3、判断所述用户输入的密码是否为14位数串;当用户输入的密码为14位数串时,执行步骤S4;当用户输入的密码不是14位数串时,返回执行步骤S2;S4、判断输入密码中是否有字符G;当密码中包含字符G时,将密码中的字符G替换为0,然后执行步骤S5;当密码中没有字符G时,执行步骤S5;S5、并行进行区域确定及RGB值转换;所述区域确定按以下步骤进行:B1、从左至右提取密码的第1至4位数形成第三级数串,并将其转换成十进制数值U1;从左至右提取密码的第5至8位数形成第四级数串,并将其转换成十进制数值U2;从左至右提取密码的第14位数,并将其转换成十进制数值U3;从左至右提取密码的第13位数,并将其转换成十进制数值U4;B2、选取待换区域Tr,t,r、t均为正整数且1≤r≤16、1≤t≤16:计算得到r,计算得到t;根据r和t的值选取待换区域Tr,t;B3、计算U31=U3+1得到U31,计算U41=U4+1得到U41;所述1≤U31≤16,所述1≤U41≤16;计算<mrow><msub><mi>T</mi><mrow><mi>p</mi><mo>,</mo><mi>q</mi></mrow></msub><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><msub><mi>T</mi><mrow><mi>r</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>r</mi><mo>&GreaterEqual;</mo><msub><mi>U</mi><mn>31</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>t</mi><mo>&GreaterEqual;</mo><msub><mi>U</mi><mn>41</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>r</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>r</mi><mo>&GreaterEqual;</mo><msub><mi>U</mi><mn>31</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>t</mi><mo>&lt;</mo><msub><mi>U</mi><mn>41</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>r</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>r</mi><mo>&lt;</mo><msub><mi>U</mi><mn>31</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>t</mi><mo>&GreaterEqual;</mo><msub><mi>U</mi><mn>41</mn></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>T</mi><mrow><mi>r</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>t</mi><mo>-</mo><mn>1</mn></mrow></msub></mtd><mtd><mrow><mi>i</mi><mi>f</mi></mrow></mtd><mtd><mrow><mi>r</mi><mo>&lt;</mo><msub><mi>U</mi><mn>31</mn></msub></mrow></mtd><mtd><mrow><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd><mtd><mrow><mi>t</mi><mo>&lt;</mo><msub><mi>U</mi><mn>41</mn></msub></mrow></mtd></mtr></mtable></mfenced></mrow>得到第二目标区域Tp,q;所述1≤p≤16,所述1≤q≤16;B4、选择Tp,q对应的加密模块,并对该加密模块进行解密:将该加密模块的第一行与该加密模块的第三行进行替换,将该加密模块的第二行与该加密模块的第四行进行替换;B5、判断是否与Tp,q位于同一个加密模块;当与Tp,q位于同一个加密模块时,执行步骤B6;当与Tp,q不在同一个加密模块时,将所在加密模块进行解密:将所在加密模块的第一行与该加密模块的第三行进行替换,将所在加密模块的第二行与该加密模块的第四行进行替换,然后执行步骤B6;B6、将Tr,t与Tp,q进行替换;所述RGB值转换按以下步骤进行:从左至右提取密码的第9和第10位数形成第五级数串,并将其转换成十进制数值U5;从左至右提取密码的第11和第12位数形成第六级数串,并将其转换成十进制数值U6;从左至右提取密码的第13和第14位数形成第七级数串,并将其转换成十进制数值U7;S6、进行RGB值匹配:选取像素点1≤i≤a,1≤j≤a,且i、j、a均为正整数;将的R值、G值及B值分别与U5、U6和U7进行对比;判断PU1,U2的R值是否等于U5,当的R值不等于U5时,结束解密;当的R值等于U5时,判断的G值是否等于U6;当的G值不等于U6时,结束解密;当的G值等于U6时,判断的B值是否等于U7;当的B值不等于U7时,结束解密;当的B值是否等于U7时,执行步骤S7;S7、依次判断第一加密模块至第四加密模块,是否已经进行解密;将未进行解密的加密模块进行解密:将未解密加密模块的第一行与该加密模块的第三行进行替换,将未解密加密模块的第二行与该加密模块的第四行进行替换。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆标博科技有限公司,未经重庆标博科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201610082459.X/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top