You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
long start = System.currentTimeMillis();
hmmManager.setGpsList(gpslist);
List<Foot_Data> list = hmmManager.GetLocations();
long end = System.currentTimeMillis();
Log.e("HMM TIME COST", String.valueOf(end - start));
public List<Foot_Data> GetLocations() {
setUpClass();
ViterbiAlgorithm<RoadPosition, GpsMeasurement, RoadPath> viterbi =
new ViterbiAlgorithm<>();
TimeStep<RoadPosition, GpsMeasurement, RoadPath> prevTimeStep = null;
for (GpsMeasurement gpsMeasurement : gpsList) {
final Collection<RoadPosition> candidates = computeCandidates(gpsMeasurement);
final TimeStep<RoadPosition, GpsMeasurement, RoadPath> timeStep =
new TimeStep<>(gpsMeasurement, candidates);
computeEmissionProbabilities(timeStep);
if (prevTimeStep == null) {
viterbi.startWithInitialObservation(timeStep.observation, timeStep.candidates,
timeStep.emissionLogProbabilities);
} else {
computeTransitionProbabilities(prevTimeStep, timeStep);
viterbi.nextStep(timeStep.observation, timeStep.candidates,
timeStep.emissionLogProbabilities, timeStep.transitionLogProbabilities,
timeStep.roadPaths);
}
prevTimeStep = timeStep;
}
List<Foot_Data> list = new ArrayList<>();
List<SequenceState<RoadPosition, GpsMeasurement, RoadPath>> roadPositions =
viterbi.computeMostLikelySequence();
for (SequenceState<RoadPosition, GpsMeasurement, RoadPath> s : roadPositions){
Point p = s.state.position;
Road_Data road_data = s.state.road_data;
list.add(new Foot_Data(p,road_data));
}
return list;
}
The GetLocations is an method to achieve map-matching algorithm. It works well,but we have find something wrong with the TIME COST,HMM looks like have an accumulation delay. Could you please tell me why the TIME COST will increase? And if I want to resolve this problem, what should I do? THK U
The text was updated successfully, but these errors were encountered:
The GetLocations is an method to achieve map-matching algorithm. It works well,but we have find something wrong with the TIME COST,HMM looks like have an accumulation delay. Could you please tell me why the TIME COST will increase? And if I want to resolve this problem, what should I do? THK U
The text was updated successfully, but these errors were encountered: