本发明涉及一种室内外场景识别的方法。
背景技术:
随着物联网技术的发展,基于可穿戴设备的实时环境测量的测量方法成本低、效率高,并且具有便于携带的特点,使得人们可以获得更加有效的周围环境信息,同时极大地弥补了传统固定监测点采集的数据由于采集区域的不均匀而导致局部地区预报失误的问题。
目前关于室内外场景识别的算法大致可以分为以下三类:(1)基于设备预部署的场景识别技术,即在室内添加具有识别作用的模块来进行室内外的场景识别;(2)基于图像处理和模式识别的方法进行场景的识别;(3)利用传感器采集到的环境信息之间的特征差异进行场景识别的技术。
上述室内外场景识别的算法都取得了不错的成果,然而仍存在的问题是,在移动设备上的应用不具有很好普适性,且增加了设备的能耗。室内外场景识别的算法对数据采集影响很大,要保证数据的准确性。
技术实现要素:
本发明要克服现有技术的上述缺点,提供一种基于多维传感信息时间序列的室内外场景识别的方法。
本发明解决技术问题采用如下技术方案:
一种基于多维传感信息时间序列的室内外场景识别的方法,包括以下步骤:
步骤1:根据温湿度构建二维传感信息时间序列;
步骤2:找到分界点,将得到的传感时间序列按照室内和室外场景分割为多个子时间序列;
步骤3:将分割后的子时间序列和构建的参考时间序列进行匹配进而得到室内外场景的识别结果。
作为本发明的进一步优化,所述的步骤1具体包括:
11)采集温度和湿度信息,构建一个二维的传感信息时间序列s[m][ti],公式为:
其中,序列
12)构建参考传感信息时间序列。参考序列是从气象网站上获取的实时的天气信息(温度和湿度)构成的时间序列r[m][ti],m=1,2,公式为:
其中,序列
13)构建差值传感信息时间序列d[m][ti],m=1,2为传感信息时间序列与参考传感信息序列差的绝对值,公式为:
d[m][ti]=|s[m][ti]-r[m][ti]|,m=1,2(2-3)
其中,m表示多维传感信息时间序列的维度,ti表示传感信息数据的采集时间点,通过公式(2-3)获得序列差的绝对值。
作为本发明的更进一步优化,所述的步骤2具体包括:
21)构建梯度差序列g[ti],公式为:
其中,g[ti]为梯度差序列,表示传感信息时间序列的波动程度,传感信息时间序列波动越大,梯度差值也就越大。d[ti]表示传感信息时间序列与参考传感信息序列差的绝对值;
22)选取滑动窗口求取局部传感信息时间序列的波动程度,也就是所求取滑动窗口的梯度差的标准差,公式为:
其中,l表示滑动窗口的长度。std[ti]为局部传感信息时间序列,表示局部的波动程度,std[ti]变化越剧烈,越有可能是场景切换的分界点;
23)为了使得波动较大的序列更加突出,利用指数加权函数进行放大处理,公式为:
其中,k为幅度调节系数,arg表示放大后的序列值;
24)与不同维度的阈值函数进行比较,进而得到场景切换的分界点。阈值函数公式如(2-7)所示。
threshold[i]=mean(exp(k*std[1:n])),i=1,2(2-7)
温度的阈值和湿度的阈值都可以用公式(2-7)计算。我们将大于阈值的点作为场景切换的分界点。很显然我们可以根据温度和湿度得到两个场景切换分界点的集合,我们取两个集合的交集作为最终的场景切换的分界点集合。
作为本发明的更进一步优化,所述的步骤3具体包括:
31)由序列分割之后产生的分界点将原来的传感信息时间序列分割成若干个子序列s[m][ti],其中m=1,2;i=1,2,...,n;n为子序列的长度。从气象网站上获取的物理信息构成的物理信息时间参考序列也被同样分割成若干个子序列r[m][ti],其中m=1,2,;i=1,2,...,n;n为子序列的长度。显然对应的两个子序列的长度相等,定义两个序列的相似度如公式(2-8)所示;
其中,s(s,r)表示两个序列的相似度。
32)选取每个维度,即每种物理信息的全局相似度em(m=1,2)作为阈值当s(s,r)>em时,子序列的环境信息被判定为室内信息。
本发明具有如下有益效果:
(1)选取相邻梯度差大的点作为场景切换的分界点,易于传感信息时间序列分割。
(2)将局部传感信息时间序列进行放大处理,使得波动较大的序列更加突出。
附图说明
图1为本发明室内外场景切换时的湿度变化曲线。
图2为本发明室内外场景切换时的温度变化曲线。
具体实施方式
下面结合附图及实施方式对本发明的技术方案作进一步阐述。
一种基于多维传感信息时间序列的室内外场景识别的方法,包括如下步骤:
步骤1:根据温湿度构建二维传感信息时间序列;
步骤2:找到分界点,将得到的传感时间序列按照室内和室外场景分割为多个子时间序列;
步骤3:将分割后的子时间序列和构建的参考时间序列进行匹配进而得到室内外场景的识别结果。
所述的步骤1具体包括:
11)采集温度和湿度信息,构建一个二维的传感信息时间序列s[m][ti],公式为:
其中,序列
12)构建参考传感信息时间序列。参考序列是从气象网站上获取的实时的天气信息(温度和湿度)构成的时间序列r[m][ti],m=1,2,公式为:
其中,序列
13)构建差值传感信息时间序列d[m][ti],m=1,2为传感信息时间序列与参考传感信息序列差的绝对值,公式为:
d[m][ti]=|s[m][ti]-r[m][ti]|,m=1,2(2-3)
其中,m表示多维传感信息时间序列的维度,ti表示传感信息数据的采集时间点,通过公式(2-3)获得序列差的绝对值。
所述的步骤2具体包括:
21)构建梯度差序列g[ti],公式为:
其中,g[ti]为梯度差序列,表示传感信息时间序列的波动程度,传感信息时间序列波动越大,梯度差值也就越大。d[ti]表示传感信息时间序列与参考传感信息序列差的绝对值;
22)选取滑动窗口求取局部传感信息时间序列的波动程度,也就是所求取滑动窗口的梯度差的标准差,公式为:
其中,l表示滑动窗口的长度。std[ti]为局部传感信息时间序列,表示局部的波动程度,std[ti]变化越剧烈,越有可能是场景切换的分界点;
23)为了使得波动较大的序列更加突出,利用指数加权函数进行放大处理,
公式为:
其中,k为幅度调节系数,arg表示放大后的序列值;
24)与不同维度的阈值函数进行比较,进而得到场景切换的分界点。阈值函数公式如(2-7)所示。
threshold[i]=mean(exp(k*std[1:n])),i=1,2(2-7)
温度的阈值和湿度的阈值都可以用公式(2-7)计算。我们将大于阈值的点作为场景切换的分界点。很显然我们可以根据温度和湿度得到两个场景切换分界点的集合,我们取两个集合的交集作为最终的场景切换的分界点集合。
所述的步骤3具体包括:
31)由序列分割之后产生的分界点将原来的传感信息时间序列分割成若干个子序列s[m][ti],其中m=1,2;i=1,2,...,n;n为子序列的长度。从气象网站上获取的物理信息构成的物理信息时间参考序列也被同样分割成若干个子序列r[m][ti],其中m=1,2,;i=1,2,...,n;n为子序列的长度。显然对应的两个子序列的长度相等,定义两个序列的相似度如公式(2-8)所示;
其中,s(s,r)表示两个序列的相似度。
32)选取每个维度,即每种物理信息的全局相似度em(m=1,2)作为阈值当s(s,r)>em时,子序列的环境信息被判定为室内信息。
最后应说明的是:以上实施方式仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施方式对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施方式技术方案的精神和范围。