一种基于动态窗口的重力传感器数据平滑处理算法的制作方法

文档序号:20931574发布日期:2020-06-02 19:06阅读:397来源:国知局
本发明涉及无人售货柜领域,具体是一种基于动态窗口的重力传感器数据平滑处理算法。
背景技术
::随着人们生活水平的提高和人们经济收入的增加,人们拥有了越来越多的金钱来购买自己需要的产品,零售业也得到长足发展,零售业是指通过买卖形式将工农业生产者生产的产品直接售给居民作为生活消费用或售给社会集团供公共消费用的商品销售行业。零售业为人们的生活带来了便利,但是随着科技的发展,零售业也产生了新的变化。无人售货柜受到了广大用户的喜爱,是商品零售业的未来发展方向。基于重力传感器的无人售货柜是其中常见的一种,凭借它的成本低、准确率高等优势受到大家的青睐,目前在市场上比较流行。基于重力传感器的无人售货柜在工作过程中需要对大量的重力数据进行分析处理,这些重力数据是由重力传感器实时上传给云端服务器的,受到硬件设备、外部环境、用户行为等的影响,重力数据中会出现一些剧烈波动数据,这些剧烈波动的数据对后续的商品识别会产生很大的负面影响,因此数据平滑处理算法显得尤为必要,现有的数据平滑处理算法虽然具有一定的作用,但是使用效果仍然达不到人们的预期,进而影响商品的识别准确率。技术实现要素:本发明实施例的目的在于提供一种基于动态窗口的重力传感器数据平滑处理算法,以解决上述
背景技术
:中提出的问题。为实现上述目的,本发明实施例提供如下技术方案:一种基于动态窗口的重力传感器数据平滑处理算法,具体步骤如下:步骤一,在售货柜的处理器设置系统参数,系统参数包括滤波窗口大小、稳态阈值、系统采样率和最少稳定点个数;步骤二,在处理器内申请一块内存并且构建一个循环存储区,存储所有的重力值原始数据;步骤三,构建动态窗口window,即一个数组,设置动态窗口window的长度为window_size;步骤四,对重力值原始数据利用构建的动态窗口window从头到尾进行数据读取,每次向前滑动一个单元,每次读取动态窗口window的长度数量的重力值原始数据;步骤五,判断动态窗口window的初始位和动态窗口window的长度范围内最大值和最小值之差是否小于稳态阙值,若最大值和最小值之差小于稳态阙值,则判断动态窗口window内的数据稳定,该动态窗口window是一个稳定点,取窗口平均值作为稳定点数据存储起来,并且对稳定点个数进行计数;步骤六,若最大值和最小值之差大于稳态阙值,则判断动态窗口window内的数据不稳定,停止稳定点个数计数,此时将所有稳定点的数量与最少稳定点个数进行对比,如果所有稳定点的数量不小于最少稳定点个数,表明重力传感器的数据稳定,此时取出存储的所有稳定点的数值,计算平均值,得到了一个最终值,就是本算法要得到的稳定态的值,若所有稳定点的数量小于最少稳定点个数,表明重力传感器的数据不稳定,此时清空存储的所有稳定点数据,并将稳定点的数量清零;步骤七,动态窗口window继续向前滑动,重复步骤五和步骤六。作为本发明实施例进一步的方案:滤波窗口大小的数值为10,表示一个窗口可以容纳10个离散的重力值。作为本发明实施例进一步的方案:系统采样率为重力传感器采集重力数据的频率,系统采样率为80hz,表示一秒采集80个重力数据。作为本发明实施例进一步的方案:最少稳定点个数为40,作为是否取出重力传感器数据的依据。作为本发明实施例进一步的方案:售货柜包括柜体,柜体内安装有处理器和多层商品架,每个商品架包括框架,框架上设置有多个商品格,商品格包括托盘、重力传感器和底座,底座固定在框架上,重力传感器安装在底座上,托盘覆盖在重力传感器的上方,重力传感器与处理器相连。作为本发明实施例进一步的方案:售货柜内的两侧均设置有照明组件,照明组件均与处理器相连,可以提供照明,即使在光线昏暗的环境下也可以看清售货柜内的商品,方便人们的使用。作为本发明实施例进一步的方案:照明组件采用led灯,市场易购得,使用效果好。与现有技术相比,本发明实施例的有益效果是:本发明的方法计算速度快,可以很好地判断重力数据的稳定程度,从而可以从重力数据中提取出处于稳定态的数据,进而提升商品识别准确率;本发明占用的内存小,并且内存可以循环利用,空间利用率高,使用前景广阔。附图说明图1为基于动态窗口的重力传感器数据平滑处理算法的工作流程图。图2为基于动态窗口的重力传感器数据平滑处理算法中重力数据的示意图。具体实施方式下面结合具体实施方式对本专利的技术方案作进一步详细地说明。实施例1一种基于动态窗口的重力传感器数据平滑处理算法,具体步骤如下:步骤一,在售货柜的处理器设置系统参数,系统参数包括滤波窗口大小、稳态阈值、系统采样率和最少稳定点个数,这四个变量的值可根据情况自行设置,滤波窗口大小采用window_size表示,也就是表示数组的大小,此处设置为10,因为窗口的本质是一个数组,threshold表示稳态阈值,作为判断窗口内数据是否是稳定的依据,此处设置为10,rate表示系统采样率,即重力传感器采集重力数据的频率,此处设置为80hz,stable_min_size表示最少的稳定点个数,作为是否取出重力传感器数据的依据,此处设置为40;步骤二,在处理器内申请一块内存并且构建一个循环存储区,存储所有的重力值原始数据;步骤三,构建动态窗口window,即一个数组,确定动态窗口window的长度为window_size;步骤四,对重力值原始数据利用构建的动态窗口window从头到尾进行数据读取,每次向前滑动一个单元,每次读取window_size数量的重力值原始数据;步骤五,判断window[0]~window[window_size-1]范围内最大值和最小值之差是否小于threshold,若最大值和最小值之差小于threshold,则判断动态窗口window内的数据稳定,该动态窗口window是一个稳定点,取window[0]作为稳定点数据存储起来,并且通过stable_cnt对稳定点个数进行计数;步骤六,若最大值和最小值之差大于threshold,则判断动态窗口window内的数据不稳定,该动态窗口window不是一个稳定点,此时需要判断stble_cnt与stable_min_size的关系,如果stable_cnt>stable_min_size,证明稳定点的个数大于40个,利用40/rate=500ms,表明当前传感器数据稳定了至少500ms,此时取出存储的所有稳定点的数值,计算平均值,得到了一个最终值,就是本算法要得到的稳定态的值,若stable_cnt<stable_min_size,说明当前重力传感器数据稳定了不到500ms,此时清空存储的所有稳定点数据,并将stable_cnt置0;步骤七,动态窗口window继续向前滑动,重复步骤五和步骤六。实施例2一种基于动态窗口的重力传感器数据平滑处理算法,具体步骤如下:步骤一,售货柜包括柜体,柜体内安装有处理器和多层商品架,每个商品架包括框架,框架上设置有多个商品格,商品格包括托盘、重力传感器和底座,底座固定在框架上,重力传感器安装在底座上,托盘覆盖在重力传感器的上方,重力传感器与处理器相连,售货柜内的两侧均设置有led灯,led灯均与处理器相连,市场易购得,可以提供照明,即使在光线昏暗的环境下也可以看清售货柜内的商品,使用效果好,方便人们的使用,在售货柜的处理器设置系统参数,系统参数包括滤波窗口大小、稳态阈值、系统采样率和最少稳定点个数;步骤二,在处理器内申请一块内存并且构建一个循环存储区,存储所有的重力值原始数据;步骤三,构建动态窗口window,即一个数组,确定动态窗口window的长度;步骤四,对重力值原始数据利用构建的动态窗口window从头到尾进行数据读取,每次向前滑动一个单元,每次读取动态窗口window的长度数量的重力值原始数据;步骤五,判断动态窗口window的初始位和动态窗口window的长度范围内最大值和最小值之差是否小于稳态阙值,若最大值和最小值之差小于稳态阙值,则判断动态窗口window内的数据稳定,该动态窗口window是一个稳定点,取窗口平均值作为稳定点数据存储起来,并且对稳定点个数进行计数;步骤六,若最大值和最小值之差大于稳态阙值,则判断动态窗口window内的数据不稳定,停止稳定点个数计数,此时将所有稳定点的数量与最少稳定点个数进行对比,如果所有稳定点的数量不小于最少稳定点个数,表明重力传感器的数据稳定,此时取出存储的所有稳定点的数值,计算平均值,得到了一个最终值,就是本算法要得到的稳定态的值,若所有稳定点的数量小于最少稳定点个数,表明重力传感器的数据不稳定,此时清空存储的所有稳定点数据,并将稳定点的数量清零;步骤七,动态窗口window继续向前滑动,重复步骤五和步骤六。本发明实施例的工作原理是:重力传感器上传到处理器的重力数据是离散的,将这些重力数据连接起来则会形成一个波形图,这些波形图的数据在没有用户购物的时候是稳定的,在用户拿放物品的时候将会产生剧烈的波动,随后又恢复稳定。在进行商品识别的时候,需要的是用户拿货前的商品总质量和商品拿货后的商品总质量,这两个数据要求是稳定可靠的,因此就需要我们从波形图中提取出稳定的数据而过滤掉剧烈波动的数据。图2是重力数据的波形图,本发明的目的就是从这一系列的数据中找到稳定态的数据而过滤掉剧烈波动的数据,如图2中的a、b、c三处的数据可以认为是达到稳定态的数据,而e处的数据则是剧烈波动的数据。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1