Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove blas and lapack dependencies #32

Open
vadixidav opened this issue Nov 22, 2020 · 0 comments
Open

Remove blas and lapack dependencies #32

vadixidav opened this issue Nov 22, 2020 · 0 comments

Comments

@vadixidav
Copy link
Member

We have a dependence on blas and lapack. This stems from our use of argmin with ndarray support in cv-optimize. This pulls in ndarray-linalg, which then requires these linear algebra support libraries written in C. This counters our goal of making an easy-to-build Rust source with no C dependencies. While we do have a Levenberg-Marquardt algorithm as part of the rust-cv organization, since the implementation is not a sparse Levenberg-Marquardt, we are using Nelder-Mead instead for various reasons, including the ability to perform structureless bundle-adjust.

The first attempt to remedy this involved switching to the experimental nalgebra support in argmin, but this was unsuccessful because the implementation produced numerical errors and did not converge.

We can continue to use Nelder-Mead without using argmin, and this may require creating a custom implementation of Nelder-Mead, similar to our implementation of Levenberg-Marquardt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant