Giter VIP home page Giter VIP logo

Comments (10)

simonlynen avatar simonlynen commented on July 21, 2024

@blackistheanswer we usually set a local level frame of reference (init GPS position and init yaw position). From then on the incoming GPS measurements are converted to metric ECEF and the offset from ECEF to local level is subtracted before the measurement gets applied to the filter. The yaw direction has to be set as the offset w.r.t. north.

from ethzasl_msf.

mhkabir avatar mhkabir commented on July 21, 2024

@simonlynen So basically, would it be prudent to set yaw direction automatically at start from compass measurements?

from ethzasl_msf.

simonlynen avatar simonlynen commented on July 21, 2024

@mhkabir this would be fine if your compass is not influenced by nearby devices or the robot itself. In fact we usually used a very rough initial guess. The filter has a separate transformation which is estimated to adjust any wrong initial guess of this estimate. This way it is fine if you are approx. right.

from ethzasl_msf.

mhkabir avatar mhkabir commented on July 21, 2024

@simonlynen I'm adding GPS measurements to MSF now that I've been successful with IMU+visual SLAM. I am a bit confused about the function of msf_distort. I see in the launch files, sometimes the GPS data is plugged into distort and the distort output is mapped to the core's GPS input, and sometimes just directly.

Can you please briefly tell us.

from ethzasl_msf.

simonlynen avatar simonlynen commented on July 21, 2024

@mhkabir The msf-distort is just for unit-testing and experimentation. It can simulate added delays and sensor-dropouts to the signal. You can either remove the piping through distort entirely or just ignore it.

from ethzasl_msf.

mhkabir avatar mhkabir commented on July 21, 2024

Oh cool :) Thank you.

On Fri, Sep 12, 2014 at 8:41 PM, Simon Lynen [email protected]
wrote:

@mhkabir https://github.com/mhkabir The msf-distort is just for
unit-testing and experimentation. It can simulate added delays and
sensor-dropouts to the signal. You can either remove the piping through
distort entirely or just ignore it.


Reply to this email directly or view it on GitHub
#78 (comment).

from ethzasl_msf.

mhkabir avatar mhkabir commented on July 21, 2024

@simonlynen Is core_height the absolute height from ground? If we were to again dynamically initialize this with data from a laser rangefinder and call core_init_height, would it work out? i.e Do we get correct scaling from start in that case? i.e without needing the the filter states to converge by common movement?

Also, if core_init_height is not called, and we call core_init_filter(as I've been doing) without any height data, what sort of movements and time would be needed for the states to converge and get proper scaled output of the pose source?

from ethzasl_msf.

simonlynen avatar simonlynen commented on July 21, 2024
  • core_height == absolute height above ground.
  • you can call core_init_height at any time as long as you are not using the state estimate at this point in a controller. (The init will reset and initialize the filter).
  • If you have an absolute metric measurement of height which is measuring the altitude in the same frame of reference as your SLAM (SVO) then you will have a correct scale estimate from the beginning on.
  • The question about the needed movement is a bit difficult to answer. We usually started the SLAM in flight and then set the height to a rough value (+= 0.2m) which was sufficient to start the flight without additional movements. Of course the scale convergence will be slower if you don't have acceleration measurements apart from gravity.
  • Absolute-pose means that the pose is used as an absolute measurement. This contrasts with the "relative measurements" that the filter can process as measurements between states. (Which uses the stochastic cloning technique).

from ethzasl_msf.

mhkabir avatar mhkabir commented on July 21, 2024

Thank you so much.

On Fri, Sep 12, 2014 at 9:33 PM, Simon Lynen [email protected]
wrote:

  • core_height == absolute height above ground.
  • you can call core_init_height at any time as long as you are not
    using the state estimate at this point in a controller. (The init will
    reset and initialize the filter).
  • If you have an absolute metric measurement of height which is
    measuring the altitude in the same frame of reference as your SLAM (SVO)
    then you will have a correct scale estimate from the beginning on.
  • The question about the needed movement is a bit difficult to answer.
    We usually started the SLAM in flight and then set the height to a rough
    value (+= 0.2m) which was sufficient to start the flight without additional
    movements. Of course the scale convergence will be slower if you don't have
    acceleration measurements apart from gravity.
  • Absolute-pose means that the pose is used as an absolute
    measurement. This contrasts with the "relative measurements" that the
    filter can process as measurements between states. (Which uses the
    stochastic cloning technique).


Reply to this email directly or view it on GitHub
#78 (comment).

from ethzasl_msf.

simonlynen avatar simonlynen commented on July 21, 2024

Assuming this is resolved.

from ethzasl_msf.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.