00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __GT2005SelfLocatorParameters_h__
00010 #define __GT2005SelfLocatorParameters_h__
00011
00012 #include "Tools/Streams/Streamable.h"
00013 #include "Representations/Perception/LinesPercept.h"
00014
00015 class GT2005SelfLocatorParameters : public Streamable
00016 {
00017 public:
00018
00019
00020 GT2005SelfLocatorParameters();
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 double
00032 translationNoise,
00033 rotationNoise;
00034 bool noiseWithoutObservationUpdate;
00035
00036 double movedDistWeight,
00037 movedAngleWeight,
00038 majorDirTransWeight,
00039 minorDirTransWeight,
00040
00041 headHeightEstimation,
00042
00043 linePointZAngleVariance,
00044 linePointYAngleVariance,
00045 crossingZAngleVariance,
00046 crossingYAngleVariance,
00047 centerCircleZAngleVariance,
00048 centerCircleYAngleVariance,
00049 centerCircleOrientationAngleVariance,
00050
00051 flagYAngleVariance,
00052 goalZAngleVariance,
00053 goalYAngleVariance,
00054
00055 linePointZAngleMotionDependency,
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067 linePointWeight,
00068 crossingWeight,
00069 centerCircleWeight,
00070 flagWeight,
00071 goalWeight;
00072
00073 double probFlagUpLimit,
00074 probFlagDownLimit,
00075 probLineUpLimit,
00076 probLineDownLimit,
00077 probNoQualityOffset;
00078
00079 int maxLinepoints,
00080 maxGoalpoints,
00081 maxBorderpoints,
00082 maxCrossings;
00083
00084 double updateProbCenterCircle,
00085 updateProbCrossing,
00086 updateProbFlag,
00087 updateProbGoalPost;
00088
00089 double odometryProbNoCollision;
00090 double odometryProbCollision;
00091
00092 bool applyConstantResampling;
00093
00094 double constantResamplingRate;
00095
00096 bool clipRobotPose;
00097
00098 bool resetSamplesWhenPenalized;
00099
00100 double agingFactor;
00101
00102
00103
00104 virtual void serialize(In* in, Out* out)
00105 {
00106 STREAM_REGISTER_BEGIN();
00107 STREAM( translationNoise );
00108 STREAM( rotationNoise );
00109 STREAM( noiseWithoutObservationUpdate );
00110 STREAM( movedDistWeight );
00111 STREAM( movedAngleWeight );
00112 STREAM( majorDirTransWeight );
00113 STREAM( minorDirTransWeight );
00114 STREAM( headHeightEstimation );
00115 STREAM( linePointZAngleVariance );
00116 STREAM( linePointYAngleVariance );
00117 STREAM( crossingZAngleVariance );
00118 STREAM( crossingYAngleVariance );
00119 STREAM( centerCircleZAngleVariance );
00120 STREAM( centerCircleYAngleVariance );
00121 STREAM( centerCircleOrientationAngleVariance );
00122
00123 STREAM( flagYAngleVariance );
00124 STREAM( goalZAngleVariance );
00125 STREAM( goalYAngleVariance );
00126 STREAM( linePointZAngleMotionDependency );
00127 STREAM( linePointWeight );
00128 STREAM( crossingWeight );
00129 STREAM( centerCircleWeight );
00130 STREAM( flagWeight );
00131 STREAM( goalWeight );
00132 STREAM( probFlagUpLimit );
00133 STREAM( probFlagDownLimit );
00134 STREAM( probLineUpLimit );
00135 STREAM( probLineDownLimit );
00136 STREAM( probNoQualityOffset );
00137 STREAM( maxLinepoints );
00138 STREAM( maxGoalpoints );
00139 STREAM( maxBorderpoints );
00140 STREAM( maxCrossings );
00141 STREAM( updateProbCenterCircle );
00142 STREAM( updateProbCrossing );
00143 STREAM( updateProbFlag );
00144 STREAM( updateProbGoalPost );
00145 STREAM( odometryProbNoCollision );
00146 STREAM( odometryProbCollision );
00147 STREAM( applyConstantResampling );
00148 STREAM( constantResamplingRate );
00149 STREAM( clipRobotPose );
00150 STREAM( resetSamplesWhenPenalized );
00151 STREAM( agingFactor );
00152 STREAM_REGISTER_FINISH();
00153 }
00154 };
00155 #endif