CN107688828B - 一种基于手机传感器的公交车拥挤程度估测方法 - Google Patents
一种基于手机传感器的公交车拥挤程度估测方法 Download PDFInfo
- Publication number
- CN107688828B CN107688828B CN201710740347.3A CN201710740347A CN107688828B CN 107688828 B CN107688828 B CN 107688828B CN 201710740347 A CN201710740347 A CN 201710740347A CN 107688828 B CN107688828 B CN 107688828B
- Authority
- CN
- China
- Prior art keywords
- bus
- sensing
- data
- degree
- congestion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 230000009471 action Effects 0.000 claims abstract description 70
- 230000008569 process Effects 0.000 claims abstract description 60
- 230000003068 static effect Effects 0.000 claims abstract description 12
- 239000013598 vector Substances 0.000 claims description 51
- 230000033001 locomotion Effects 0.000 claims description 39
- 230000005021 gait Effects 0.000 claims description 29
- 238000012706 support-vector machine Methods 0.000 claims description 25
- 230000001133 acceleration Effects 0.000 claims description 14
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 238000013480 data collection Methods 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 5
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000012549 training Methods 0.000 description 9
- 230000008447 perception Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 3
- 230000009194 climbing Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/02—Constructional features of telephone sets
- H04M1/0202—Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
- H04M1/026—Details of the structure or mounting of specific components
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Tourism & Hospitality (AREA)
- Evolutionary Biology (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Development Economics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Marketing (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Multimedia (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Educational Administration (AREA)
- Primary Health Care (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明涉及一种基于手机传感器的公交车拥挤程度估测方法,即利用手机自带的惯性传感器,使用群智感知的思想收集数据后在分层学习的框架下进行公交车上乘客动作姿态信息识别,从而实现准确的公交车拥挤程度估测的过程。本发明能够利用手机自带的惯性传感器收集乘客上车之后直到达到静止态的传感器数据,利用这些数据识别出乘客的动作姿态信息并通过这些信息估测出公交车的拥挤程度。
Description
技术领域
本发明设计计算机学科中的传感器应用、群智感知、机器学习、动作识别、步态识别、被动感知、分层学习、公交车拥挤程度估测等,尤其是一种基于手机传感器的公交车拥挤程度估测方法。
背景技术
近年来,随着手机上配备的传感器的设备越来越高,加上机器学习领域的不断深入发展,姿态识别这个方向依赖的传感器越来越少,同时预测的准确率却越来越高,依靠姿态识别我们可以实现室内定位,日常运动数据统计,并且可以结合位置信息或者通讯信号来追踪一个人的行为。而预测公交车的拥挤程度是动作识别这一方向的一个比较新颖的应用。如果能准确获得公交车上的拥挤程度,有利于乘客自发的选择出行手段,大部分情况下不会再出现某辆公交车很满或者很空的情况,既有利于城市交通资源宏观调控,也有利于提升居民的生活质量。
要获得一个区域的拥挤程度,可以通过获得这个区域的总人数来估算,现有的人数统计的方法全部都是基于图像或者视频,也就是意味着这些方法依赖于摄像设备,虽然这些方法在图像或者视频清晰的前提下已经有了足够的准确率,但是低成本的摄像设备在光线不好的情况下不能保证获得的影像资料的清晰度,高成本的摄像设备明显不可能。所以基于人数统计的方法并不实用。公交车上的人上下情况也可以通过压力传感器返回的数据来统计,这种方法不会受到光线湿度等环境因素的影响,而且结果非常精确,但是如果其中一个传感器坏掉,整辆车的人数统计就会慢慢的偏向过多或者过少,到最后出现完全错误的结果。
发明内容
为了解决上述技术问题,本发明的技术方案实现如下:
一种基于手机传感器的公交车拥挤程度估测方法,其特征在于,包括以下步骤:
步骤1:利用手机上自带的加速度传感器和陀螺仪传感器以固定的采样频率采集手机的传感器数据,在预处理之后进行滑动重叠时间窗口的划分;
步骤2:对于当前时间窗口的传感器数据,使用事前训练好的SVM-HMM模型进行动作的识别;
步骤3:基于步骤2的输出结果,使用建立好的步态识别模型对属于走路动作的传感器数据进行识别来获得乘客走路过程中的步态信息;
步骤4:综合步骤2的动作序列与步骤3的步态信息,利用已有的参与感知的乘客的姿态信息尝试感知未参与感知的乘客的姿态信息;
步骤5:用特征向量表示所有感知到的乘客的姿态信息后通过支持向量机分类器进行个体拥挤程度的分类并计算该分类结果对应的置信度;
步骤6:综合步骤5的结果用一个特征向量表示某一辆公交车的拥挤信息,然后根据该特征向量使用支持向量机分类得到整辆公交车的拥挤程度。
在上述的基于手机传感器的公交车拥挤程度估测方法,步骤1中所述的利用加速度传感器和陀螺仪传感器以固定的采样频率采集数据以及预处理和滑动重叠时间窗口划分工作,其具体实现包括以下子步骤:
步骤1.1:持续采集用户的位置信息并比对该位置信息与数据库里位置信息的差异,当差异小于阈值后,手机开始采集存储传感器数据;
步骤1.2:在数据收集工作开始之后,手机会以100hz的固定频率进行数据采集工作,采集对象包括加速度传感器数据以及陀螺仪数据;
步骤1.4:对去噪之后的传感器数据进行重叠时间窗口切割。
在上述的基于手机传感器的公交车拥挤程度估测方法,步骤2中所述的利用SVM-HMM模型处理当前时间窗口的传感器数据进行动作识别,其具体实现包括以下子步骤:
步骤2.1:当前窗口的传感器数据进行特征处理,提取出特征向量,根据该特征向量由之前训练好的支持向量机分类器(收集多个志愿者走路、上下台阶、站立、坐下时的传感器数据提取步骤2.1中所述的特征训练得到)分类出当前窗口数据对应的动作结果;
步骤2.2:在所有的时间窗口的数据都被识别为动作之后,把分类结果用向量表示之后,通过后验概率转换成概率向量之后使用隐马尔可夫模型进行最后的动作识别结果的输出。
在上述的基于手机传感器的公交车拥挤程度估测方法,步骤4中所述的利用已有的参与感知的乘客的姿态信息尝试感知未参与感知的乘客的姿态信息,其具体实现包括以下子步骤:
步骤4.1:服务器寻找步骤2中最晚达到稳定态(站立动作持续3s或者识别到坐下动作)的乘客,记录该乘客达到稳定态的时间为被动感知时间节点;
步骤4.2:在被动感知时间节点之后遍历所有参与感知的乘客的传感器数据,寻找动作波动序列;若找到,则根据该动作波动序列中波动的属性归纳出被动感知乘客的姿态信息;若未找到,被动感知过程结束,转移至步骤5。
在上述的基于手机传感器的公交车拥挤程度估测方法,步骤5中所述的用特征向量表示步骤4中得到的所有乘客的姿态信息后通过支持向量机分类器进行个体拥挤程度的分类并计算该分类结果对应的置信度,其具体实现包括以下子步骤:
步骤5.1:视步骤2和步骤3为主动感知过程,步骤4为被动感知过程,对每一个感知到的乘客的动作姿态信息进行整理并提取出到达稳定态的总时间、走路的时间、整个过程中站立的次数、总的步数、平均步长、步长的方差、转向的次数、转向的平均幅度以及最后的稳定态(站立或者坐着)共9个特征;
步骤5.2:把该特征向量输入到之前训练好的支持向量机分类器(收集多个志愿者上车至达到静止态的传感器数据提取步骤5.1中所述特征结合其所在公交车的拥挤程度训练得到)中分类出对应的个体拥挤程度;
步骤5.3:根据分类过程中输入向量到最优分类超平面的距离及输入向量周围样本与其属于相同类别的概率计算该输入向量对应输出结果的可信性,对于得到的置信度结果,如果输入向量来源于被动感知过程,则该结果要要乘以n/(n+1)来进行调整,其中n代表参与被动感知的乘客的数量;若输入向量来源于主动感知过程,则无需调整。
在上述的基于手机传感器的公交车拥挤程度估测方法,步骤6中所述的用一个特征向量表示某一辆公交车的拥挤信息,然后根据该特征向量使用支持向量机分类得到整辆公交车的拥挤程度,其具体实现包括以下子步骤:
步骤6.1:把步骤5处理后的数据按照位置划分到公交车的前部、中部、后部三个位置,处理这些拥挤信息来提取出一个用以描述整辆车拥挤程度的16维的特征向量:3个位置的平均的拥挤程度、拥挤程度结果总数、最高置信度的个体拥挤程度、最新的参与感知的个体拥挤程度、达到静止态之后识别到的动作波动的总数共15个特征、从到达稳定态到车启动出发等待时间的平均值共1个特征;
步骤6.2:把该特征向量输入到之前训练好的支持向量机分类器(收集多个志愿者上车至达到静止态的传感器数据提取步骤6.1中所述特征结合其所在公交车的拥挤程度训练得到)中得到公交车拥挤程度的输出结果。
本发明能够利用手机自带的惯性传感器收集乘客上车之后直到达到静止态的传感器数据,利用这些数据识别出乘客的动作姿态信息并通过这些信息估测出公交车的拥挤程度。
附图说明
图1显示了本发明的整体工作流程。
图2是数据采集与预处理的工作流程。
图3是对于每个参与感知的乘客的传感器数据进行动作识别过程的工作流程。
图4是动作识别过程之后的步态识别的工作流程。
图5是步态识别中步长估测过程的行走模型图。
图6是被动感知过程的工作流程。
具体实施方式
本发明提出的基于群智感知和分层学习的公交车拥挤程度估测是一个高精度的、稳定的估测某辆公交车上的拥挤程度的方案。图1显示了本发明的整体工作流程,图2是数据采集与预处理的工作流程,图3是对于每个参与感知的乘客的传感器数据进行动作识别过程的工作流程,图4是动作识别过程之后的步态识别的工作流程,图5是步态识别中步长估测过程的行走模型图,图6是被动感知过程的工作流程。
为了使本发明的目的、技术方案以及有益效果更加清楚明确,下面结合附图,对本发明进行详细说明。
一、首先介绍一下本发明的简要的方法流程,主要包括以下几个步骤:
A、参与感知的乘客的姿态识别方法:首先对于每一个参与感知的乘客,从其上车开始直到其达到稳定态,智能终端会以固定频率(200hz)采集传感器数据,在对传感器数据去噪分窗提取特征之后,运用支持向量机分类器(SVM)与隐马尔可夫模型(HMM)进行基础动作的识别;在识别出基础动作之后,对于被识别成“走路”动作的传感器数据,运用建立好的步态模型进行步态分析得出步态信息。
步骤A中,为了获得得到每个乘客的动作信息,本发明基于现在已有的动作识别的方法利用乘客产生的传感器数据进行动作的识别。本发明定义了5个基本动作:上楼梯、行走、站立、坐下、下楼梯五个动作,以上楼梯为上车的开始,下楼梯代表乘客进行了下车动作,站立和坐下用来标记静止态。动作识别部分只使用加速度传感器数据。在识别动作之前要从每一个分好的时间窗口提取40个特征,分别是:x,y,z三个轴每个轴的平均数、方差、偏度、峰度、信号幅度区(Signal amplitude range,SMA)、平均峰次(average of peakfrequency,APF)、正数和、负数和、最小值、最大值、均方根(Root Mean Square,RMS)、标准偏差(36个特征);3个轴里每两个轴的轴相关系数(3个特征);3个轴APF的方差(1个特征)。在训练支持向量机分类器时使用交叉验证的策略,其中比例确定80%,核函数选取RBF,损失函数设置为1。考虑到当前已有的动作识别方法都没有考虑前后语义关系,可能导致一系列正确动作中夹杂着某个非常错误的动作结果这种情况的出现,因此在识别出动作之后本发明把识别出的动作序列通过sigmoid函数转换成后验概率序列再用来训练HMM模型,并在训练过程中通过Baum-Welch算法调整模型参数,通过HMM模型可以考虑前后语义关系的优点纠正SVM分类器的错误输出结果。提取动作识别部分输出的动作序列中的“走路”部分的传感器数据输入到分析人的走路过程建立出的物理模型中,进行走路过程中的步态信息提取识别。
B、被动感知未参与感知的乘客的姿态信息的方法:在参与感知的乘客都达到稳定态之后,且在公交车拥挤的前提下,未参与感知的乘客的动作会反映在参与感知的乘客达到稳定态之后的传感器数据变化里。在公交车启动后,遍历所有参与感知的乘客在达到稳定态之后的传感器数据寻找可能存在的由未参与感知的乘客上车到达到稳定态这一过程产生的反映在参与感知乘客传感器数据中的动作序列,然后根据该动作序列发生的时间、位置等信息推算出该未参与感知的乘客的动作信息及步态信息。
C、由乘客个体的动作姿态信息获得个体拥挤程度的方法:在进行完步骤方案A与B之后,我们已经从已有的传感器数据中感知出尽可能多的乘客的动作序列及步态信息等姿态数据,用特征向量把这些姿态数据描述出来之后,使用该特征向量与采集数据时附上的公交车拥挤程度的标签使用支持向量机分类器进行训练并建立模型,在得到模型之后输入描述个体动作姿态信息的特征向量即可得到个体拥挤程度的估测值。而在建立模型之后的分类过程中,根据分类样本与分类超平面的距离等数据给每个分类得到的个体拥挤程度赋予可信程度的属性,用来量化该个体拥挤程度结果描述公交车拥挤程度的能力。
D、根据整辆车上所有乘客的个体拥挤程度得到整辆车拥挤程度的方法:
在得到整辆车上所有能感知到的乘客的个体拥挤程度之后,根据该拥挤程度对应的乘客达到静止态时的位置、时间等信息用一个特征向量描述出整辆车的拥挤信息,使用采集数据时的拥挤信息作为标签基于支持向量机训练分类模型。在该模型训练好之后,输入某辆公交车上的所有乘客采集得到的传感器数据经由同样处理过程得到的描述拥挤信息的特征向量即可得到该公交车的拥挤程度的估测结果。
步骤B中,为了尽可能多的挖掘出参与感知的乘客的传感器数据里隐含的可以反映公交车拥挤程度的信息,考虑到未参与感知的乘客的动作可能会使已经达到稳定态的乘客的身体发生比如前后起伏之类的波动,而这种波动会反映在传感器数据中,因此在公交车启动之后,从最后一名乘客达到稳定态的时间节点开始遍历,寻找可能存在的由未参与感知的乘客上车到达到稳定态这一过程产生的反映在参与感知乘客传感器数据中的动作序列,根据该序列中各个波动产生的位置、时间及幅度等信息构建一个乘客上车之后的模型并根据该模型归纳出该未参与感知的乘客的一系列包含动作序列和步态信息的姿态信息。本步骤可以增加目前已有的乘客的姿态信息,提高最后估测结果的可信程度。
步骤C中,因为不同长度不同时间的传感器数据表述公交车拥挤程度的能力不同,为了描述这个能力,我们赋予了个体拥挤程度置信度的属性,该属性可以减少少量样本或者错误样本对最后的测量结果的负面影响从而提高最后的公交车拥挤程度的估测准确性。考虑到被动感知得到的数据的可信性,由被动感知得到的乘客的个体拥挤程度的可信程度要根据被动感知过程中参与的人数进行微调,主动感知得到的乘客的个体拥挤程度的可信程度无需调整。
步骤D中,为了综合已有的个体拥挤程度得到整辆车的拥挤程度,避免因为区域不均导致的错误的估测结果,本发明在进行步骤D时按照区域来处理个体拥挤程度数据,把整辆公交车分为前部中部后部三个区域,该信息在采集时就已经得到。然后提取出16个特征:3个位置的平均的拥挤程度、拥挤程度结果总数、最高置信度的个体拥挤程度、最新的参与感知的个体拥挤程度、达到静止态之后识别到的动作波动的总数(15个特征);从到达稳定态到车启动出发等待时间的平均值(1个特征)。把整辆车上所有感知到的乘客的拥挤信息用一个1*16的特征向量表示,然后再基于支持向量机分类器进行整辆车的拥挤程度的估测。
二、下面结合附图对本发明的方法进行具体阐述。
图1显示了本发明的整体工作流程,该发明包括以下步骤:
步骤101:系统开始工作后,首先根据图2的步骤进行数据的采集与预处理工作。
步骤102:然后根据图3所示的动作识别的过程对预处理之后的数据进行动作识别,得出该乘客上车直到达到静止态的动作序列。
步骤103:在得到某个乘客的动作序列之后,提取出该动作序列中被识别为“走路”过程的传感器数据,按照图4所示的步态识别过程进行该乘客走路过程中每一步步态信息的识别。
步骤104:在公交车启动之后,所有参与感知的乘客的传感器数据的采集工作停止,以所有参与感知的乘客中最后一个达到稳定态的时间为节点,按照图6流程进行被动感知的过程,尝试挖掘出隐含在参与感知的乘客的传感器数据里可能存在的未参与感知的乘客的动作及步态信息。
步骤105:基于上述步骤对每一个感知到的乘客的动作姿态信息进行整理并提取出到达稳定态的总时间、走路的时间、整个过程中站立的次数、总的步数、平均步长、步长的方差、转向的次数、转向的平均幅度以及最后的稳定态共9个特征。把这些特征向量与对应的标签也就是采集数据时收集的量化的个体拥挤程度输入到支持向量机分类器内进行模型的训练。在得到模型之后的分类过程中,通过计算输入向量到最优分类超平面的距离来赋予该输入样本可信程度的属性,公式如下:
f(x)=exp(-1/(|d(x)|*pi))
其中pi代表输入向量周围的i个样本与其属于相同类别的概率,d(x)表示测试样本到超平面的距离,其值由以下公式算出:
其中的参数w与b在一个支持向量机模型训练好,也就是最优分类超平面确定之后就可以得到。
考虑到被动感知得到的动作信息的可靠性被参与被动感知过程的乘客数量直接影响,被动感知的分类结果置信度要乘以n/(n+1)来进行调整,其中n代表参与被动感知的乘客的数量。
个体拥挤程度被量化成4个等级:
1.该乘客周围几乎是没有人的。
2.这片区域有很少的人站着。
3.有很多人站在这片区域,可以进行走动但会明显的受影响。
4.附近区域人很多,几乎不能行走。
步骤106:在步骤105之后,一辆公交车上所有感知到的乘客的个体拥挤程度及其置信度都已得到,为了减少因为不同区域乘客分布不均匀对估测过程带来的不良影响,本步骤把这些数据按照位置数据划分到公交车的前部、中部、后部三个位置,处理这些拥挤信息来提取出一个可以描述整辆车拥挤程度的16维的特征向量:3个位置的平均的拥挤程度、拥挤程度结果总数、最高置信度的个体拥挤程度、最新的参与感知的个体拥挤程度、达到静止态之后识别到的动作波动的总数(15个特征)、从到达稳定态到车启动出发等待时间的平均值(1个特征)。然后输入到之前训练好的支持向量机分类器中以分类出一个量化的公交车拥挤程度。
公交车的拥挤程度被量化成4个等级:
1.公交车上几乎没有乘客或者乘客很少,空余座位很多。
2.公交车上几乎没有空位或者空位很少。
3.公交车上没有空位但是只有很少人站着,走路已经会被轻微影响。
4.公交车上人非常多,多到行走变的很困难。
图2是数据采集与预处理的工作流程,具体步骤如下:
步骤201:当乘客接近公交车站点时,智能设备采集加速度传感器数据的频率会由低(50hz)变高(200hz),采集数据之后就使用图2里的预处理和图3里的动作识别的支持向量机分类器进行动作识别,当识别为上楼梯动作之后把上车标志位设为1并开始保存所采集的传感器数据,当当前动作不再为上楼梯时认为上车动作结束,乘客已上车,传感器数据采集工作会一直持续到公交车离开该站点。智能设备采集的传感器数据为加速度传感器和陀螺仪传感器,采集频率为固定的200hz。然后进行数据预处理部分,分为去噪和分窗两个过程。
步骤202:去噪使用的是滑动平推滤波,公式如下:
步骤203:分窗时设置窗口大小为400,重叠率为50%。
图3是对于每个参与感知的乘客的传感器数据进行动作识别过程的工作流程,具体步骤如下:
步骤301:把分窗之后的加速度传感器数据进行特征提取,每个时间窗口可以提取出1个1*40的特征向量:x,y,z三个轴每个轴的平均数、方差、偏度、峰度、SMA、APF、正数和、负数和、最小值、最大值、均方根(Root Mean Square,RMS)、标准偏差(36个特征);3个轴里每两个轴的轴相关系数(3个特征);3个轴APF的方差(1个特征)。其中信号幅度区(Signalamplitude range,SMA)是一个可以明显区分静止态,也就是站立动作与运动态的特征,它由以下公式来计算得到:
而“正数和”表示一个窗口里所有正数的和,“负数和”表示一个窗口里所有负数的和。
步骤302:把所有时间窗口里提取的特征向量输入到支持向量机分类器中,得到该乘客从上车到达到稳定态的动作序列。
步骤303:为了使支持向量机分类器的输出结果可以作为隐马尔可夫模型的输入,本发明使用了sigmoid算法把SVM的分类整数结果映射成对应的后验概率来完成SVM模型与HMM模型之间的输出输入连接。Sigmoid的算法如以下公式所示:
其中,参数j代表第j种动作,x代表这个特征向量,yj代表对于第j种动作,SVM的分类输出结果。参数A,B可以由交叉验证来进行测试选取。在本步骤中,要训练5个支持向量机分类器用来区分这个动作和另外的其他所有动作。每一个支持向量机分类器只有两个输出:1,-1用来表达当前样本是否属于该分类器对应的动作。类似的,5个隐马尔可夫模型也被训练出来以对应5个动作。在训练一个隐马尔可夫模型时,属于这个动作的样本会被依次输入到5个已经训练好的支持向量机分类器中,然后我们可以得到整数表示的分类结果,转换成后验概率之后把它们组成一个向量,一系列传感器数据可以得到一个向量序列,就可以用来训练某个动作对应的隐马尔可夫模型。在每个训练过程中,隐马尔可夫模型的参数可以通过Baum-Welch算法进行调整。最后隐马尔可夫的输出概率如以下公式所示:
选取输出概率最大的动作为最终的动作识别结果。
图4是动作识别过程之后的步态识别的工作流程,具体步骤如下:
步骤401:从动作识别序列中提取被识别为“走路”动作的加速度数据和陀螺仪数据,准备进行步态周期切割和步数统计。
步骤402:本步骤的算法主要是基于滑动窗口。一开始单个窗口的长度大小被设定为200,对应一秒钟手机的传感器数据。然后计算当前窗口垂直角速度的方差,并把得到的结果与0.05进行比较,如果小于该值就无视当前时间窗口,窗口滑动向前,否则算法会自动的计算归一化自动正相关值的最大值然后把该值记录为Xmax。如果Xmax比0.8要大,那么算法会认为走路的动作被识别出了,步数会增加1,同时当前窗口里的前3个零点会被标记出来用来分割2个步态周期。然后把窗口大小调整为最近识别出的一个步态周期所对应的时间。如果在整个过程中没有迈步被识别出来,那么时间窗口会向前移动当前窗口的四分之一,否则窗口会向前移动最近被识别出的步态周期的大小。对于每一段标记为“走路”的传感器数据从头处理到结束,记录每一段的步数以及每一步的开始和结束点,然后对每一步处理来统计转向的次数和乘客步长。
步骤403:本步骤进行转向次数的统计。根据观察,人行走的过程中转向的动作会很明显的反映在陀螺仪数据上,一个数据峰代表一次转向动作,而峰的高度则反映出转弯的幅度,因此使用陀螺仪数据来统计乘客转向的次数是可行的。为了防止由噪声产生的数据峰判断出来的错误转向结果带来的干扰,在多次试验之后,本发明设定了一个阈值0.31。高度的绝对值没有达到这个阈值的峰不会被识别为转向动作,因此转向次数统计部分的工作就是在识别出一个转向动作之后更新平均转向峰值同时转向次数加一。
步骤404:根据图5所示的行走模型进行每一步的步长估测并记录下平均步长与步长的方差。
图5是步态识别中步长估测过程的行走模型图,其中s代表行人的步长,L代表行人肩膀到手机传感器的距离,而h代表在一个步态周期中,人的重心变化的最大距离。以下公式是步长计算的整体公式:
其中T1代表分离出两个相邻步态周期的三个点里的第二个点,T3则代表第三个点,T2代表T1与T3之间第一个z轴加速度为0的点。而ax,y代表加速度的x,y轴的数值,θ1,θ2可以由公式6、7得到,其中wx,y代表陀螺仪数据的x轴和y轴数据。
以下公式为θ1与θ2的计算公式:
图6是被动感知过程的工作流程,具体步骤如下:
步骤601:在乘客达到静止态之后,智能设备依旧以200hz的频率采集并存储传感器数据。当未下车且仍参与感知的乘客的位置数据都发生变化时,认为车已经起步离开站点。此时智能设备会恢复50hz的采样率并且不再存储数据直到下一次接近站点并识别到上楼梯动作再进行数据采集工作。
步骤602:当车开动之后,遍历所有参与感知的乘客的传感器数据,寻找最晚达到稳定态的乘客,并记录下该乘客到达稳定态的时间,存储为被动感知时间节点。
步骤603:综合所有参与感知的乘客在被动感知时间节点之后的传感器数据,尝试寻找一个能描述新上车乘客上车过程的一个动作波动序列。
动作波动:当参与感知乘客达到稳定态之后,后来上车的乘客在上车过程中可能动作会使参与感知的乘客发生身体的起伏,我们把这种起伏称为动作波动,而这种波动可以反应在传感器数据中,具体反应在陀螺仪数据上。在参与感知的乘客达到静止态之后仍在采集加速度和陀螺仪数据,当发现陀螺仪x、y、z三个轴同时出现波动且三个波峰的平方和的开方大于1.7时,则认为检测到一个动作波动,记录该波动发生的时间、位置(即该参与感知乘客的位置)、幅度等信息。
波动序列:波动序列是在所有乘客都达到稳定态的那个时间节点之后检测到所有的波动之中最有可能可以描述一个未参与感知的乘客上车过程的一系列动作波动。把检测到的所有波动按照时间排列好之后,寻找能够组成满足时间从早到晚,发生位置从车的前部到后部的条件的一个序列,该序列即为可以表示被动感知到的乘客上车一系列动作的波动序列。
步骤604:根据找到的波动序列整理出被被动感知到的乘客的动作姿态信息。在步骤4中的步态识别部分中,乘客从上楼梯结束到到达稳定态的总步数和每一步的步长都可以被估算出来,那么乘客的距离就可以表示为到楼梯的距离。从而步骤105里提到的9个用来描述参与感知乘客的个体拥挤信息的特征就可以由波动序列中每个波动的属性归纳计算得到。
到达稳定态的总时间:到达稳定态的时间T由两部分组成,首先是T1表示被感知到的乘客从上楼梯到产生第一个波动的时间,T2表示该乘客到达稳定态的时间,其中T1由产生第一个波动距离楼梯的距离与该乘客的平均步长(后续计算得到)计算得到,T2则由最后一个波动的发生时间与第一个波动的发生时间的时间差再加0.5秒表示,即认定该乘客在使位置最后的乘客产生动作波动之后的0.5s达到稳定态。
走路的时间:被动感知过程认为被动感知到的乘客一直在走路,因此走路的时间跟到达稳定态的时间数值相同。
整个过程中站立的次数设置为0。
总的步数:按照人走路的统计学数据再结合公交车上很拥挤这一特性,认为人1秒钟走1步。把每个波动区间的时间取下界到秒之后加起来,其和就是被动感知乘客总的步数。
平均步长:最远的波动里乘客与楼梯的距离这一属性与总的步数的除法运算值就是平均步长的数值。
步长的方差:每个波动区间的距离差与波动区间里发生的步数的除法运算值被认为是每一个波动区间的平均步长。综合多个区间的多个步长计算步长的方差。
转向的次数与波动次数一致。
转向的平均幅度:由所有波动幅度的平均值表示。
最后的静止态:能够使站立的乘客产生波动,本发明认为该公交车上已经没有空余座位,因此认为该被动感知到的乘客的静止态为站立。
自此,被动感知到的乘客的动作姿态信息可由一个1*9的特征向量表示出来,然后在步骤105中与参与感知的乘客的特征向量进行相同的操作分类得到个体拥挤程度和对应的置信度,被动感知到的乘客的置信度要乘以n/(n+1)来进行调整,其中n代表参与被动感知的乘客的数量。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (4)
1.一种基于手机传感器的公交车拥挤程度估测方法,其特征在于,包括以下步骤:
步骤1:利用手机上自带的加速度传感器和陀螺仪传感器以固定的采样频率采集手机的传感器数据,在预处理之后进行滑动重叠时间窗口的划分;
步骤2:对于当前时间窗口的传感器数据,使用事前训练好的SVM-HMM模型进行动作的识别;
步骤3:基于步骤2的输出结果,使用建立好的步态识别模型对属于走路动作的传感器数据进行识别来获得乘客走路过程中的步态信息;
步骤4:综合步骤2的动作序列与步骤3的步态信息,利用已有的参与感知的乘客的姿态信息尝试感知未参与感知的乘客的姿态信息;
步骤5:用特征向量表示所有感知到的乘客的姿态信息后通过支持向量机分类器进行个体拥挤程度的分类并计算该分类结果对应的置信度,具体实现包括以下子步骤:
步骤5.1:视步骤2和步骤3为主动感知过程,步骤4为被动感知过程,对每一个感知到的乘客的动作姿态信息进行整理并提取出到达稳定态的总时间、走路的时间、整个过程中站立的次数、总的步数、平均步长、步长的方差、转向的次数、转向的平均幅度以及最后的稳定态共9个特征;
步骤5.2:把步骤5.1得到的特征向量输入到之前训练好的支持向量机分类器中分类出对应的个体拥挤程度;
步骤5.3:根据分类过程中输入向量到最优分类超平面的距离及输入向量周围样本与其属于相同类别的概率计算该输入向量对应输出结果的可信性,对于得到的置信度结果,如果输入向量来源于被动感知过程,则结果要乘以n/(n+1)来进行调整,其中n代表参与被动感知的乘客的数量;若输入向量来源于主动感知过程,则无需调整;
步骤6:综合步骤5的结果用一个特征向量表示某一辆公交车的拥挤信息,然后根据该特征向量使用支持向量机分类得到整辆公交车的拥挤程度;具体实现包括以下子步骤:
步骤6.1:把步骤5处理后的数据按照位置划分到公交车的前部、中部、后部三个位置,处理这些拥挤信息来提取出一个用以描述整辆车拥挤程度的16维的特征向量:3个位置的平均的拥挤程度、拥挤程度结果总数、最高置信度的个体拥挤程度、最新的参与感知的个体拥挤程度、达到静止态之后识别到的动作波动的总数共15个特征、从到达稳定态到车启动出发等待时间的平均值共1个特征;
步骤6.2:把该特征向量输入到之前训练好的支持向量机分类器中得到公交车拥挤程度的输出结果。
2.根据权利要求1所述的基于手机传感器的公交车拥挤程度估测方法,其特征在于:步骤1中所述的利用加速度传感器和陀螺仪传感器以固定的采样频率采集数据以及预处理和滑动重叠时间窗口划分工作,其具体实现包括以下子步骤:
步骤1.1:持续采集用户的位置信息并比对该位置信息与数据库里位置信息的差异,当差异小于阈值后,手机开始采集存储传感器数据;
步骤1.2:在数据收集工作开始之后,手机会以100hz的固定频率进行数据采集工作,采集对象包括加速度传感器数据以及陀螺仪数据;
步骤1.4:对去噪之后的传感器数据进行重叠时间窗口切割。
3.根据权利要求1所述的基于手机传感器的公交车拥挤程度估测方法,其特征在于:步骤2中所述的利用SVM-HMM模型处理当前时间窗口的传感器数据进行动作识别,其具体实现包括以下子步骤:
步骤2.1:当前窗口的传感器数据进行特征处理,提取出特征向量,根据该特征向量由之前训练好的支持向量机分类器分类出当前窗口数据对应的动作结果;
步骤2.2:在所有的时间窗口的数据都被识别为动作之后,把分类结果用向量表示之后,通过后验概率转换成概率向量之后使用隐马尔可夫模型进行最后的动作识别结果的输出。
4.根据权利要求1所述的基于手机传感器的公交车拥挤程度估测方法,其特征在于:步骤4中所述的利用已有的参与感知的乘客的姿态信息尝试感知未参与感知的乘客的姿态信息,其具体实现包括以下子步骤:
步骤4.1:服务器寻找步骤2中最晚达到稳定态的乘客,记录该乘客达到稳定态的时间为被动感知时间节点;
步骤4.2:在被动感知时间节点之后遍历所有参与感知的乘客的传感器数据,寻找动作波动序列;若找到,则根据该动作波动序列中波动的属性归纳出被动感知乘客的姿态信息;若未找到,被动感知过程结束,转移至步骤5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710740347.3A CN107688828B (zh) | 2017-08-23 | 2017-08-23 | 一种基于手机传感器的公交车拥挤程度估测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710740347.3A CN107688828B (zh) | 2017-08-23 | 2017-08-23 | 一种基于手机传感器的公交车拥挤程度估测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107688828A CN107688828A (zh) | 2018-02-13 |
CN107688828B true CN107688828B (zh) | 2020-11-03 |
Family
ID=61154961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710740347.3A Active CN107688828B (zh) | 2017-08-23 | 2017-08-23 | 一种基于手机传感器的公交车拥挤程度估测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107688828B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492703A (zh) * | 2018-11-23 | 2019-03-19 | 河北工程大学 | 一种步态的识别方法、系统及终端设备 |
CN110110616A (zh) * | 2019-04-19 | 2019-08-09 | 出门问问信息科技有限公司 | 一种电子设备及控制方法 |
CN113191023B (zh) * | 2021-05-28 | 2022-07-05 | 中国人民解放军国防科技大学 | 群智感知的任务分配和用户招募模型交叉验证方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120126379A (ko) * | 2011-05-11 | 2012-11-21 | 함정우 | 지하철 승객 분산 시스템을 이용한 지하철 각 차량 승객 분포 표시 및 안내 장치 |
CN105718857A (zh) * | 2016-01-13 | 2016-06-29 | 兴唐通信科技有限公司 | 一种人体异常行为检测方法及系统 |
CN105791415A (zh) * | 2016-04-08 | 2016-07-20 | 江苏大学 | 车联网环境下基于电动公交车乘坐适宜度的行车主动服务系统及方法 |
KR20160132233A (ko) * | 2015-05-07 | 2016-11-17 | 주식회사 엘비씨소프트 | 열차 응하중센서를 기반으로 한 객차/열차 혼잡도 관리시스템 및 서비스 방법 |
CN106971194A (zh) * | 2017-02-16 | 2017-07-21 | 江苏大学 | 一种基于改进hmm和svm双层算法的驾驶意图识别方法 |
KR20170088247A (ko) * | 2016-01-22 | 2017-08-01 | 전남도립대학교산학협력단 | 버스 승차 정보 알림 시스템 |
-
2017
- 2017-08-23 CN CN201710740347.3A patent/CN107688828B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120126379A (ko) * | 2011-05-11 | 2012-11-21 | 함정우 | 지하철 승객 분산 시스템을 이용한 지하철 각 차량 승객 분포 표시 및 안내 장치 |
KR20160132233A (ko) * | 2015-05-07 | 2016-11-17 | 주식회사 엘비씨소프트 | 열차 응하중센서를 기반으로 한 객차/열차 혼잡도 관리시스템 및 서비스 방법 |
CN105718857A (zh) * | 2016-01-13 | 2016-06-29 | 兴唐通信科技有限公司 | 一种人体异常行为检测方法及系统 |
KR20170088247A (ko) * | 2016-01-22 | 2017-08-01 | 전남도립대학교산학협력단 | 버스 승차 정보 알림 시스템 |
CN105791415A (zh) * | 2016-04-08 | 2016-07-20 | 江苏大学 | 车联网环境下基于电动公交车乘坐适宜度的行车主动服务系统及方法 |
CN106971194A (zh) * | 2017-02-16 | 2017-07-21 | 江苏大学 | 一种基于改进hmm和svm双层算法的驾驶意图识别方法 |
Non-Patent Citations (1)
Title |
---|
"步态识别关键技术研究";卢官明等;《计算机技术与发展》;20150731;第25卷(第7期);第100-106页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107688828A (zh) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109525935B (zh) | 一种针对普适室内环境的智能楼层感知方法及控制系统 | |
Liang et al. | A convolutional neural network for transportation mode detection based on smartphone platform | |
CN111291678B (zh) | 一种基于多特征融合的人脸图像聚类方法及装置 | |
CN106096662B (zh) | 基于加速度传感器的人体运动状态识别 | |
CN107339992B (zh) | 一种基于行为的室内定位和地标语义标识的方法 | |
CN107688828B (zh) | 一种基于手机传感器的公交车拥挤程度估测方法 | |
CN112001347B (zh) | 一种基于人体骨架形态与检测目标的动作识别方法 | |
CN109934127B (zh) | 基于视频图像与无线信号的行人识别与跟踪方法 | |
US20110190008A1 (en) | Systems, methods, and apparatuses for providing context-based navigation services | |
CN102722721A (zh) | 一种基于机器视觉的人体跌倒检测方法 | |
JP2016062610A (ja) | 特徴モデル生成方法及び特徴モデル生成装置 | |
CN108510011B (zh) | 一种基于手机多传感器的用户出行方式分析方法 | |
CN105868779B (zh) | 一种基于特征增强和决策融合的行为识别方法 | |
CN110674875A (zh) | 一种基于深度混合模型的行人运动模式识别方法 | |
CN110163264B (zh) | 一种基于机器学习的行走模式识别方法 | |
CN112464738B (zh) | 改进朴素贝叶斯算法基于手机传感器的用户行为识别方法 | |
CN112287906B (zh) | 一种基于深度特征融合的模板匹配跟踪方法及系统 | |
CN114897025A (zh) | 一种人体姿态识别模型建立方法和人体姿态识别方法 | |
CN114359959B (zh) | 一种基于深度学习的静态手势识别方法、装置及汽车 | |
CN115346272A (zh) | 基于深度图像序列的实时摔倒检测方法 | |
CN109720353B (zh) | 一种基于智能手机的驾驶行为检测方法 | |
CN116793364A (zh) | 一种基于航位推算的室内定位系统及方法 | |
CN112052786A (zh) | 一种基于网格划分骨骼的行为预测方法 | |
CN116092193A (zh) | 一种基于人体运动状态识别的行人航迹推算方法 | |
CN114674317A (zh) | 基于活动识别和融合滤波的自校正航位推算系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |