1. 21 Apr, 2021 1 commit
  2. 12 Apr, 2021 1 commit
  3. 08 Apr, 2021 5 commits
  4. 07 Apr, 2021 1 commit
  5. 06 Apr, 2021 1 commit
  6. 05 Apr, 2021 1 commit
  7. 02 Apr, 2021 2 commits
  8. 01 Apr, 2021 4 commits
  9. 31 Mar, 2021 2 commits
  10. 30 Mar, 2021 3 commits
  11. 26 Mar, 2021 5 commits
    • Julia Sanchez's avatar
      [refact] Gather sensor residuals · dc9684b1
      Julia Sanchez authored
      * Lidar and external sensor residuals are gathered in the same vector
      * This vector is refilled entirely at each ICP step
      dc9684b1
    • Julia Sanchez's avatar
      [feat] Split Matching and optimization · 8c619770
      Julia Sanchez authored
      * Split KeypointsRegistration file into LocalOptimizer and 
      KeypointsMatcher files.
      
      * LocalOptimizer
      
         * It is a member of the SLAM class.
         * A residual structure is created in this file. It contains pointers 
      to a cost function and a loss function (optimization estimator to remove 
      outliers).
         * It receives the ceres LiDAR residuals.
         * It will be able to receive other sensors' residuals.
         * It is entirely cleared at each registration step.
         * It contains a ceres problem pointer (the destructor is updated). 
      This problem is created and filled after each new matching step of ICP. 
      The problem is conserved in order to be able to recover covariance from 
      the optimization after convergence for last ICP iteration.
      
      * KeypointsMatcher
      
         * It is an object created locally in Ego-Motion and/or Localization 
      functions.
         * It builds the LiDAR residuals (as described above) from matching 
      between frame keypoints and map neighborhoods.
         * It contains a vector of residuals (directly added in the matching 
      result structure).
         * A residual is also added to the matching info structure.
      8c619770
    • Nicolas Cadart's avatar
      Merge branch 'PV/OptionalCalibration' into 'master' · fc3bf806
      Nicolas Cadart authored
      Optional calibration in PV wrapping
      
      See merge request !106
      fc3bf806
    • Nicolas Cadart's avatar
      [ui][PV] Set calibration as optional input · cfc0b844
      Nicolas Cadart authored
      Calibration is only needed to reorder laser ids.
      However, we don't really care if these laser rings are not properly sorted,
      as SSKE consider each ring independently from other ones.
      To simplify user interface, this second entry is hidden from selection dialog.
      It can still be accessed later by manually changing inputs.
      cfc0b844
    • Nicolas Cadart's avatar
      [fix][PV] Avoid using calibration if empty · 11d3bc2e
      Nicolas Cadart authored
      If calibration input is empty (such as for HDL64),
      or if the vertical angle array isn't available, ignore calibration.
      
      This fixes using HDL64 data with PV wrapping, where calibration is empty.
      11d3bc2e
  12. 25 Mar, 2021 4 commits
  13. 24 Mar, 2021 2 commits
    • Julia Sanchez's avatar
      [refact] Gather all keypoint types relative structures and functions · c6ff4fc6
      Julia Sanchez authored
      All functions and features linked to keypoints exist for edges, planes
      and blobs.
      This leads to triplicated parts of code and make the whole process
      hardly adjustable (add or remove keypoint types). This MR intends to fix
      part of these issues and to uniformize the way to access a keypoint
      relative feature with EDGE / PLANE / BLOB key words.
      
      * Such features are stored in maps which pair the keypoint type with the
      feature.
      * The relative functions are adapted to take the keypoint type as
      argument.
      * When possible, a loop processes iteratively each keypoint type.
      * To be able to loop on keypoint types, a list of keypoint types is
      added in enums header file.
      
      It is to note that all parts couldn't be replaced by loops because of
      some specific checks (e.g. are blobs used?) or some specific output
      features (e.g string in cout, UI relative names in wrappings). These
      tasks should still be changed by hand if some keypoint types is
      modified.
      c6ff4fc6
    • Nicolas Cadart's avatar
      Merge branch 'SmallFixes' into 'master' · 0b5d749d
      Nicolas Cadart authored
      Fix catch-by-value warning and fix undistortion time range
      
      See merge request !105
      0b5d749d
  14. 23 Mar, 2021 2 commits
  15. 12 Mar, 2021 1 commit
  16. 11 Mar, 2021 2 commits
  17. 05 Mar, 2021 3 commits