Giter VIP home page Giter VIP logo

Comments (4)

pomerlef avatar pomerlef commented on May 19, 2024

Hi Jahead,

Thanks for reporting. I'll need to investigate your problem more precisely. In your example, there are few points and you use an outlier filter which will reduce even more the number of points. Maybe this exception is throw before/instead of a proper one which should say "not enough points" or something like that. I'm on the road for some days so I'll check that later. If you could check that, it would be great.

Meanwhile, here are the answers to your questions:

  • The use of yaml or not shouldn't influence the exception. Only the type of errorMinimizer from which this exception is thrown.
  • the function correctParameters() is not use automatically because there is often another problem in the code for which it is important to notify the developers. The problem with this function is that it will always find an orthogonal even with a random matrix. If you know that the exception is thrown by rounding error that cumulate or you're very close to an orthogonal matrix, then you can use it. Otherwise, one should be careful with it.

If you develop new modules to suit your needs, we are always happy to have more contributors!

from libpointmatcher.

jahead avatar jahead commented on May 19, 2024

Sorry for the late reply. Thank you for your response.

It does seems the low point count is a problem. The new beta version of the leap motion sdk, is now giving us more points so I've been updating and porting the code to handle a larger points set.

I"ll try not using an outlier filter when I get around to use ICP again; which should be soon. But I wasn't getting the "not enough points" exception. we concluded (not tested) that the icp was not having enough pairs to do its work and the only pairs that were detected were becoming co linear. Our the data points are only approximations that get approximated based separately, therefore the points be can related to the same 'joint' but have slightly different xyz points.

Hope that gives you a bit more context.

from libpointmatcher.

jahead avatar jahead commented on May 19, 2024

The larger the point cloud did help. 22 points and we aren't seeing this exception. Which is interesting that I wasn't getting the "not enough points" exception.

from libpointmatcher.

pomerlef avatar pomerlef commented on May 19, 2024

Hi jahead,

So looking at the code a bit more. There is no safety for a minimal number of in the errorMinimizer. There was a check for singularity in point-to-plane based on the rank of the matrix but it was commented out because it was throwing too often.

It is tricky to put a hard threshold on the number of points given that in theory it should be 3, but in practice it is often more than that.

I'll reopen another issue with a clearer description in case somebody has already though about it.

from libpointmatcher.

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.