[发明专利]一种用于儿童游乐场地的识别方法及系统有效
申请号: | 202111023645.3 | 申请日: | 2021-09-02 |
公开(公告)号: | CN113449714B | 公开(公告)日: | 2021-12-28 |
发明(设计)人: | 李方悦;李宝章;颜佳;王拥军;姜海龙;赵振;蒋勇;王玉萍 | 申请(专利权)人: | 深圳奥雅设计股份有限公司 |
主分类号: | G06K9/00 | 分类号: | G06K9/00;G06K9/46;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 广州专理知识产权代理事务所(普通合伙) 44493 | 代理人: | 邓易偲 |
地址: | 518067 广东省深圳市南山区蛇口街道*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 儿童 游乐 场地 识别 方法 系统 | ||
1.一种用于儿童游乐场地的识别方法,其特征在于,所述方法包括以下步骤:
S100,采集登记图像数据,所述的登记图像数据包括服装数据、脸部数据以及录入的身份信息;
S200,对服装数据进行特征提取得到服装特征;
S300,通过摄像头采集监控图像,获取摄像头的卫星定位坐标记作目标坐标,由采集到的监控图像和目标坐标构成监控数据集合;
S400,将监控数据集合依据登记图像数据中的服装特征进行匹配,得到符合匹配的监控图像作为目标图像;
S500,根据所得的目标图像,获取采集该目标图像的摄像头的目标坐标;
其中,在S100中,采集登记图像数据,所述的登记图像数据包括服装数据、脸部数据以及录入的身份信息的方法为:在游乐场所的入口处设置图像采集点,分别对进入的未成年人进行采集脸部的图像作为脸部数据、采集头部以下的图像作为服装数据、并通过输入设备录入其姓名的字符串或身份证件的号码的字符串作为身份信息,将对每一个人采集到的脸部数据、服装数据、身份信息记为一份登记图像数据,所述脸部数据、服装数据皆为经OpenCV处理后的图片像素大小统一的图像矩阵,对图像矩阵进行经OpenCV处理后的图片像素大小统一的矩阵的处理的函数记为Unip(),记函数Unip()处理后输出的矩阵的大小皆为a×b像素,定义a为图像矩阵中像素的行数、b为图像矩阵中像素的列数,定义变量x为Unip()处理后输出的矩阵的行的序号、变量y为Unip()处理后输出的矩阵的列的序号,记所有人的登记图像数据的集合为集合Recset,变量q表示集合Recset中的元素的序号,变量k表示集合Recset中的元素的数量,集合Recset中序号为q的元素记为Recset(q),Recset(q)∈Recset,在游乐场所内部的多个不同位置布置有多个摄像头及对应布置有GPS卫星定位器;
其中,在S300中,通过摄像头采集监控图像,获取摄像头的卫星定位坐标记作目标坐标,由采集到的监控图像和目标坐标构成监控数据集合的方法为:
当服务器接收到报警信号时,分别通过多个摄像头采集监控图像,在采集到的监控图像中通过前景提取算法得到多个行人的图像,将得到的各个行人的图像使用Python语言的PIL模块提取出图像中的人脸的部分,将各个行人的图像除去图像中的人脸的部分得到的部分作为服装的部分;
记所有的摄像头的集合为集合Camset,集合Camset中所有元素的数量为n,以变量i表示集合Camset中各元素的序号,i∈[1,n],记集合Camset中序号为i的摄像头为Camset(i);
记集合Pict为多个键值对的集合,所述键值对的键为集合Camset中各元素的序号即变量i,所述键值对的键对应的值为该键所表示的序号的摄像头所采集到的多个监控图像的集合,记集合Camset中序号为i的摄像头Camset(i)所采集到的多个监控图像的集合为变量Vis(i),记集合Camset中各个序号的摄像头所采集到的多个Vis(i)组成的集合为Vis,Vis(i)∈Vis,记变量j表示Vis(i)中的元素的序号,记Vis(i)中的序号为j的元素为Vis(i,j);
Pict(i)表示集合Pict中序号为i的键值对即Pict(i)=i,Vis(i),其中i为键值对Pict(i)的键、Vis(i)为键值对Pict(i)的值,可根据序号从键值对的集合中提取特定的键值对,有Pict={Pict(i)},所述Pict即为监控数据集合;
其中,在S400中,将监控数据集合依据登记图像数据中的服装特征进行匹配,得到符合匹配的监控图像作为目标图像的方法为:
记通过前景提取算法得到监控图像中多个行人的图像的函数为Capt(),记使用Python语言的PIL模块提取出图像中的人脸的部分的函数为Reg(),函数Rest()为提取出在图像中通过函数Reg()得到的人脸的部分以外的部分,函数len()为计算获取集合中元素的数量的函数;
获取摄像头的卫星定位坐标记作目标坐标,记集合Camset中序号为i的摄像头Camset(i)的目标坐标为Loc(i);
当有需要搜寻的儿童时,设需要搜寻的儿童的登记图像数据在集合Recset中的序号为f,在集合Recset中的序号为f的登记图像数据为Recset(f),记Recset(f)中的服装数据为Cthset(f),记Recset(f)中的脸部数据为Vis_f,Cthset(f)∈Recset(f),Vis_f∈Recset(f);记基于Keras框架实现的卷积神经网络的人脸对比函数为Compare();
计算匹配得到符合匹配的监控图像作为目标图像的具体过程如下:
S401,开始程序;获取集合Pict;获取Recset(f),进而获取Cthset(f)和Vis_f;转到S402;
S402,设置空集合Roiset;设置变量ε,令ε的数值为0;转到S403;
S403,令i的数值为1;转到S404;
S404,获取Pict中序号为i的键值对Pict(i),进而获取Pict(i)的值Vis(i);通过函数len()获取Vis(i)的元素的数量为len(Vis(i));创建空数组Varr(i);转到S4051;
S4051,令j的数值为1;转到S4052;
S4052,获取Vis(i)中的序号为j的元素Vis(i,j);转到S4053;
S4053,通过函数Capt()获取Vis(i,j)中的多个行人的图像的集合即Capt(Vis(i,j));通过函数len()获取Capt(Vis(i,j))中元素的数量为len(Capt(Vis(i,j)));设变量t表示Capt(Vis(i,j))中元素的序号,t∈[1, len(Capt(Vis(i,j)))],设置变量Capt(i,j,t)表示Capt(Vis(i,j))中序号为t的元素;转到S40541;
S40541,令t的数值为1;转到S40542;
S40542,获取Capt(Vis(i,j))中序号为t的元素Capt(i,j,t);转到S40543;
S40543,通过函数Reg()获取Capt(i,j,t)图像中的人脸的部分记作Reg(i,j,t),通过函数Rest()获取Capt(i,j,t)图像中除了人脸的部分以外的部分记作Rest(i,j,t);转到S40544;
S40544,将Rest(i,j,t)通过Unip()函数处理并通过函数R()计算得到Rest(i,j,t)的服装特征R(Rest(i,j,t))记作Rc_(i,j,t);转到S40545;
S40545,通过函数R()计算得到Cthset(f)的服装特征值R(Cthset(f))记作Rc_f;转到S40546;
S40546,计算Rc_(i,j,t)与Rc_f的相似度记为Dif(i,j,t),相似度的计算方法如以下步骤S405461到S405464所示:
S405461,获取Rc_(i,j,t)矩阵中所有非零的元素作为集合Rcset,记Rc_(i,j,t)矩阵中第x行第y列的非零的元素为Rc_(i,j,t)[x,y],记Rc_(i,j,t)[x,y]的行的坐标为Rc_(i,j,t)[x]、列的坐标为Rc_(i,j,t)[y],则Rcset={Rc_(i,j,t)[x,y]},令变量rc为集合Rcset中元素的数量;
S405462,获取Rc_f矩阵中所有非零的元素作为集合Fset,记Rc_f矩阵中第x行第y列的非零的元素为Rc_f[x,y],记Rc_f[x,y]的行的坐标为Rc_f[x]、列的坐标为Rc_f[y],则Fset={Rc_f[x,y]},令变量fc为集合Fset中元素的数量;转到S405463;
S405463,Dif(i,j,t)的计算方式为:
将计算所得的Dif(i,j,t)的数值加入集合Roiset;判断ε的数值是否为0,若是则将ε的数值设置为fc/rc,若否则计算ε`=(ε+fc/rc)/2并将ε的数值设置为ε`;转到S405464;
S405464,判断t的数值是否大于或等于len(Capt(Vis(i,j))),若是则转到S40547,若否则转到S405465;
S405465,令t的数值增加1并转到S40542;
S40547,判断j的数值是否大于或等于len(Vis(i)),若是则转到S4055,若否则令j的数值增加1并转到S4052;
S4055,判断i的数值是否大于或等于n,若是则转到S4056,若否则令i的数值增加1并转到S404;
S4056,计算集合Roiset中所有元素的算术平均数为Dif_avg;筛选出集合Roiset中的数值大于或等于ε*Dif_avg的元素作为集合Roiset_avg,即Roiset_avg={ Dif(i,j,t)≧ε*Dif_avg, Dif(i,j,t)∈Roiset};根据Roiset_avg中的各个Dif(i,j,t)的标号(i,j,t)获取相应的各个图像中的人脸的部分Reg(i,j,t)作为集合Reg_set;转到S406;
S406,根据Vis_f和集合Reg_set,使用函数Compare()获取集合Reg_set中最接近的Vis_f的元素记为Dif(i`,j`,t`);转到S407;
S407,根据Dif(i`,j`,t`)的标号(i`,j`,t`)获取对应的同一标号的Capt (i`,j`,t`);结束程序;
获得的Capt(i`,j`,t`)即为目标图像。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳奥雅设计股份有限公司,未经深圳奥雅设计股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111023645.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种大气环境监测方法及系统
- 下一篇:一种CNC数控加工中心辅助工装夹具