summaryrefslogtreecommitdiff
path: root/src/feature.h
AgeCommit message (Collapse)Author
2017-08-10flopMartin Miller
2017-07-03add feature noise params to cliMartin Miller
2017-07-03cc versionMiller
2017-07-03change ransac paramMartin Miller
2017-06-2610 mean pct errorMartin Miller
2017-06-2610pct mean errorMartin Miller
2017-04-11feature inlier thresholdsMartin Miller
2017-04-11Remove features after 5 timesteps without measurementsMartin Miller
2017-04-09warp source and reflection patchesMartin Miller
2017-04-08Add code to perform a guided measurement.Martin Miller
The Vision class can template match in a search region. The search region result is masked by an ellipse related to the S matrix of the feature.
2017-04-07Begin Vision class.Martin Miller
This class can display measurements and featuers and find new features. When complete it will also perform measurements.
2017-04-07changesMartin Miller
2017-04-05changesMartin Miller
2017-04-04Full state mostly implemented.Martin Miller
STATESIZE 9 works just as it does for experiment04032017 tag. The quaternion covariance is not being set correctly yet.
2017-04-04Use STATESIZE for FeatureMartin Miller
Replace FULLSTATE define with STATESIZE.
2017-04-04Update Feature class to use FULLSTATE.Martin Miller
The Jacobian of the measurement model, Hx and Hy were updated using code generated with matlab's ccode() function. This generates a number of intermediate values, which are an optimization by the function's description, before setting the final values. In any case, it's not necessarily more readable, but it does eliminate the incredbily long lines used previously.
2017-04-04Begin updating Feature to use FULLSTATEMartin Miller
2017-04-03changesMartin Miller
2017-03-31Add 1-Point RANSAC.Martin Miller
1-Pt RANSAC is a method for detecting outlier measurements in the EKF framework. This algorithm is as described in Civera 2010.
2017-03-29tweakMartin Miller
2017-03-291.2 m error on 1112-1-3Martin Miller
2017-03-29Remove feature type from Feature classMartin Miller
It makes sense to decouple the measurement type, referred to as feature type or fType from the Feature class since a feature can be measured in different ways throughout its lifetime. Better to keep knowledge of the measurement type in the State class.
2017-03-29Allow for the usage of REFLECTION and MONO features.Martin Miller
Feature methods were updated to accomodate both types of features.
2017-03-29Change hardcoded values to definesMartin Miller
2017-03-28ChangesMartin Miller
2017-03-28updateMartin Miller
2017-03-27Fix Hx, Hy initializationMartin Miller
2017-03-26Fully implemented EKF.Martin Miller
Still needs to be debugged as the result is way off, but it is all there.
2017-03-25Add initial view to Feature.Martin Miller
2017-03-25Add Feature method to test if in FOVMartin Miller
Added a boolean function that returns if the feature is in the FOV. This method does not use the camera calibration, it just tests if the feature's angle w.r.t. the body.
2017-03-25Add Feature::dx()Martin Miller
This function allows an incremental update of the feature state where X += dx
2017-03-25Add Feature methods.Martin Miller
Added a method to test if a feature is sane. It looks to see if the feature has negative depth or if it is too close or too far away. Added a method to output the feature location as a UTM struct.
2017-03-24Move feature depth calculation to Feature class.Martin Miller
And also fixed F computation for features. I realized that the features were transformed from image to body frame prior to being passed to State. This makes sense because the State really doesn't need to know about Camera objects. Since the camera was no longer necessary inside of State it made sense to move the depth computation from Camera::ref2body() into a method in the Feature class that does not rely on camera parameters. Additionally, the depth solver was changed from a simple matrix inversion to a least squares calculation. Fx in the feature class was fixed to take into account dt. Updating Pkk1 is in the process of being modified to handle features.
2017-03-22Add feature handling to stateMartin Miller
2017-03-20Fix Jacobian of motion model.Martin Miller
This fixes a bug that was present in the pyslam code. The Jacobian of the motion model needs to be replaced with: F = I + F*dt
2017-03-19Add feature ConstructorMartin Miller
2017-03-19Add Feature::S() method.Martin Miller
This is a method for computing S for an independent measurement. It can provide a speed improvement over computing a full, correlated S, but may reduce quality if correlated measurements are treated as independent.
2017-03-19Add motion model.Martin Miller
The motion model is broken into two parts, the creation of the L matrix and the state update. This means that ydot can be computed from the state object for many features at once, saving computation time.
2017-03-19Implement feature measurement prediction.Martin Miller
Used a slightly simplified expression to compute pib0. Replaced the Householder Transform with quaternion based reflection (untested).
2017-03-18Start Feature::h() methodMartin Miller
2017-03-18Add Feature classMartin Miller