一种基于状态树的室内人员区域间运动事件检测方法与流程

文档序号:11175211阅读:459来源:国知局
一种基于状态树的室内人员区域间运动事件检测方法与流程

本发明属于智能家居室内人员定位技术领域,具体为一种基于状态树的室内人员区域间运动事件检测方法。



背景技术:

在智能家居中,常见的室内人员定位技术有视频监控技术、无线射频识别技术等,这些技术虽然能满足室内人员的定位需求,但由于是侵入式的,对室内人员的隐私带来威胁。

为了保护室内人员的隐私,保证信息安全等,最近提出了一种采用二进制传感器监测室内人员区域位置的方法。二进制传感器(如红外传感器和运动传感器)通常安装在不同区域(如房间)和区域之间的连接处(如门口),通过观测二进制传感器的信号变化推测出室内人员的当前区域位置,一个必要的前提是基于二进制传感器的信号变化确定室内人员在不同区域间的移动信息。称室内人员在不同区域之间的移动为运动事件,称二进制传感器的信号变化为传感器事件,则上述问题为:根据二进制传感器事件序列如何检测运动事件的发生?

运动事件的发生往往涉及到多个相关二进制传感器,这些传感器的信号相应地会发生改变,另一方面,运动事件没有发生时,一些二进制传感器也可能会发生信号的改变,如室内人员在某个区域内走动时,该区域内运动传感器的输出会发生变化,因此确定这些运动事件的发生需要有效的检测算法,本发明提出的基于状态树的运动事件检测方法可以用来很好地解决上述问题。



技术实现要素:

本发明目的在于公开一种基于状态树的室内人员区域间运动事件检测方法。主要内容包括用以描述传感器事件序列动态的状态树构建算法和基于状态树的运动事件检测算法。上述算法可有效、及时地检测室内人员区域间运动事件的发生,为确定室内人员的当前区域位置提供保证,并且该发明所提出的基于状态树的运动事件检测方法可有效消除室内人员运动干扰和传感器瞬时故障等对运动事件检测的不利影响,具有很好的鲁棒性。

本发明需要保护的技术方案表征为:

根据已经划分好的室内区域位置确定所有的运动事件(不同区域间的移动),包含所有运动事件的集合表征为∑e;根据已经安装好的传感器确定所有的传感器事件,包含所有传感器事件的集合表征为∑s。运动事件和传感器事件序列之间的关系定义为如下的函数映射:

给定离散事件ei∈∑e,f(ei)=σ1σ2…σm为对应发生的传感器事件序列,该传感器事件序列可根据安装的二进制传感器分析得到。

在此基础上,采用如下的算法(如图1所示)构建用以描述传感器事件序列动态的状态树:

步骤1.定义状态树的初始状态为q0,定义状态树的故障状态为qf。标记初始状态q0为中间状态,标记故障状态qf为终止状态。

步骤2.选择一个中间状态q,计算初始状态q0到达该中间状态q所发生的传感器事件序列σ1σ2…σi。对于任意给定传感器事件σi+1∈∑s,根据以下三种不同情况分别定义变迁δ(q,σi+1)。

1)若即传感器事件序列σ1σ2...σi+1对应某运动事件的发生,则定义一个新状态q'并定义变迁δ(q,σi+1)=q'。标记q'为终止状态。

2)若即传感器事件序列σ1σ2...σi+1为某运动事件对应的传感器事件序列的前缀,则定义一个新状态q'并定义变迁δ(q,σi+1)=q′。标记q'为中间状态。

3)若即传感器事件序列σ1σ2...σi+1不是任一运动事件对应的传感器事件序列的前缀,此时σi+1不应该发生,可判定系统发生了运动干扰或者传感器故障,定义变迁δ(q,σi+1)=qf,其中qf为已经定义过的故障状态(也是终止状态)。

针对∑s中的每个传感器事件重复上述操作,完成所有传感器事件在该中间状态q上的变迁定义。

步骤3.重复步骤2中的操作,直到对于任意中间状态q和任意传感器事件σ∈∑s,变迁δ(q,σ)均已定义完毕。

基于构建的状态树,运动事件检测算法(如图2所示)步骤如下:

步骤1.初始化。设置当前状态qc为状态树的初始状态qc=q0。

步骤2.侦测传感器事件的发生。当检测到传感器事件σi发生时,根据状态树中的变迁定义δ(qc,σi)=q'求得更新后的状态q'。判断状态q'的类型,分以下三种不同情况进行处理:

1)若q'是一个中间状态,则令qc=q',重新开始骤2。

2)若q'是故障状态,即q'=qf,运动事件检测结束。此时系统发生了运动干扰或者传感器信号故障,未发生室内人员运动事件。返回步骤1。

3)若q'是一个非故障状态的终止状态,运动事件检测结束。基于状态树确定初始状态q0到该终止状态q'所发生的传感器事件序列,并与运动事件所对应的传感器事件序列一一比对,确定发生的运动事件ei,转至步骤3。

步骤3.输出发生的运动事件ei,并返回步骤1。

附图说明

图1示出本发明状态树构建流程;

图2示出本发明运动事件检测流程;

图3示出本发明实施例中一个典型的智能家居室内结构拓扑图;

图4示出本发明实施例中智能家居室内区域划分示意图;

图5示出本发明实施例中二进制传感器在该智能家居室内布置示意图;

图6示出本发明实施例中所构建的状态树。

具体实施方式

实施例:

本发明的一个实施例将参考图1到图6进行说明。图3所示的是一个典型的智能家居室内结构拓扑图,是一个二室二卫的公寓,根据需要划分为7个区域,加上室外区域,共8个区域需要检测,如图2所示。相应地,安装了4个门传感器,5个运动传感器,具体安装位置见图3,db1、db2、db3和db4为4个门传感器,有人通过,门传感器相应地发出脉冲信号。md1、md2、md3、md4和md5为5个运动传感器,当人在相应区域开始运动时,输出上升沿信号,当停止运动时,则输出下降沿信号。

根据图4划分的区域和图3所示的室内结构拓扑图,确定室内人员的运动事件如下:

α1:室内人员从区域1来到区域2;β1:室内人员从区域2来到区域1;

α2:室内人员从区域2来到区域3;β2:室内人员从区域3来到区域2;

α3:室内人员从区域2来到区域5;β3:室内人员从区域5来到区域2;

α4:室内人员从区域2来到区域6;β4:室内人员从区域6来到区域2;

α5:室内人员从区域2来到区域7;β5:室内人员从区域7来到区域2;

α6:室内人员从区域7来到区域8;β6:室内人员从区域8来到区域7;

α7:室内人员从区域3来到区域4;β7:室内人员从区域4来到区域3。

所以运动事件集合为:∑e={α1,β1,α2,β2,α3,β3,α4,β4,α5,β5,α6,β6,α7,β7}。

根据传感器的信号变化,确定传感器事件如下:

表1.传感器事件

所以传感器事件集合为:

根据二进制传感器的安装位置,确定运动事件与传感器事件序列间存在如表2所示的函数映射关系。

表2运动事件与传感器事件序列的映射关系

接下来根据上述所提出的状态树构建算法,构建该实施例的状态树。

第一步,按照构建算法中步骤1所讲,定义该状态树的初始状态为q0,定义状态树的故障状态为qf。标记初始状态为中间状态,标记故障状态qf为终止状态。

第二步,按照构建算法中步骤2所讲,选择初始状态q0作为中间状态,此时初始状态q0到该中间状态(即为初始状态q0)的事件序列为空事件ε。选择传感器事件ω1,此时发生的传感器事件序列为ω1,查询表2可知,其为运动事件β4所对应的传感器事件序列(ω1σ2)的前缀,因此定义变迁δ(q0,ω1)=q1,标记q1为中间状态。

第三步,按照构建算法中步骤2所讲,继续为其它传感器事件定义相应的变迁。在定义完初始状态q0的所有变迁之后,继续为所有其它的中间状态(如第二步得到的中间状态q1)定义所有的变迁。

最终得到如图6所示的状态树,所有中间状态未填充颜色,所有终止状态用黑色填充。由于该状态树较为复杂,为了简明起见,图6仅绘出部分状态和变迁。虽然图6非该实施例完整的状态树,但绘出部分已可以用来说明本发明所提出的状态树构建算法。

以下面的场景为例说明本实施例怎么运用本发明所提出的运动事件检测算法。

场景:住户从前门进入公寓,接着又通过走廊进入第一个房间(按照划分的区域行进的路线为:区域8→区域7→区域2→区域1)。这个过程中实际发生的系统事件为β6β5β1,根据采集的数据得到相应的传感器事件序列为

基于状态树,下面讨论如何根据发生的传感器事件序列实时检测室内人员运动事件的发生。

第一,当前状态为状态树的初始状态q0。一开始检测到传感器事件ω4,检测算法相应地来到状态树的中间状态q2,然后侦测到传感器事件σ5,进入状态树的终止状态q6,根据算法输出运动事件β6。当前状态重新设置为状态树的初始状态。

第二,此后,相继侦测到传感器事件和σ2的发生,检测算法相应地经过状态树的中间状态q3,来到终止状态q7,根据算法输出运动事件β5。当前状态重新设置为状态树的初始状态。

第三,继续侦测传感器事件的发生。相继侦测到传感器事件ω2和σ1等的发生,检测算法相应地经过状态树的中间状态q4和q5,来到终止状态q8,根据算法输出运动事件β1。当前状态重新设置为状态树的初始状态。

根据本发明所提出的运动事件检测算法得到系统发生的运动事件序列为β6β5β1,与场景中实际发生的运动事件序列是一致的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1