public class PathSmoothTool
extends java.lang.Object
使用方法:
PathSmoothTool pathSmoothTool = new PathSmoothTool(); pathSmoothTool.setIntensity(2);//设置滤波强度,默认3 List outList = pathSmoothTool.pathOptimize(sourcePositionList);
构造器和说明 |
---|
PathSmoothTool()
构造方法
|
限定符和类型 | 方法和说明 |
---|---|
static float |
calculateLineDistance(Point2D var0,
Point2D var1)
计算距离
|
int |
getIntensity()
获取滤波强度
|
float |
getThreshhold()
获取滤波阈值
|
java.util.List<Point2D> |
kalmanFilterPath(java.util.List<Point2D> originlist)
轨迹线路滤波
|
Point2D |
kalmanFilterPoint(Point2D lastLoc,
Point2D curLoc)
单点滤波
|
java.util.List<Point2D> |
pathOptimize(java.util.List<Point2D> originlist)
轨迹平滑优化
|
java.util.List<Point2D> |
reducerVerticalThreshold(java.util.List<Point2D> inPoints)
轨迹抽稀
|
java.util.List<Point2D> |
removeNoisePoint(java.util.List<Point2D> originlist)
轨迹去噪,删除垂距大于20m的点
|
void |
setIntensity(int mIntensity)
设置滤波强度
|
void |
setNoiseThreshhold(float mnoiseThreshhold)
设置降噪阈值
|
void |
setThreshhold(float mThreshhold)
设置滤波阈值
|
public int getIntensity()
public void setIntensity(int mIntensity)
mIntensity
- public float getThreshhold()
public void setThreshhold(float mThreshhold)
mThreshhold
- public void setNoiseThreshhold(float mnoiseThreshhold)
mnoiseThreshhold
- public java.util.List<Point2D> pathOptimize(java.util.List<Point2D> originlist)
originlist
- 原始轨迹list,list.size大于2public java.util.List<Point2D> kalmanFilterPath(java.util.List<Point2D> originlist)
originlist
- 原始轨迹list,list.size大于2public java.util.List<Point2D> removeNoisePoint(java.util.List<Point2D> originlist)
originlist
- 原始轨迹list,list.size大于2public Point2D kalmanFilterPoint(Point2D lastLoc, Point2D curLoc)
lastLoc
- 上次定位点坐标curLoc
- 本次定位点坐标public java.util.List<Point2D> reducerVerticalThreshold(java.util.List<Point2D> inPoints)
inPoints
- 待抽稀的轨迹list,至少包含两个点,删除垂距小于mThreshhold的点