Abstract
In this paper, we present libDirectional, a MATLAB library for directional statistics and directional estimation. It supports a variety of commonly used distributions on the unit circle, such as the von Mises, wrapped normal, and wrapped Cauchy distributions. Furthermore, various distributions on higher-dimensional manifolds such as the unit hypersphere and the hypertorus are available. Based on these distributions, several recursive filtering algorithms in libDirectional allow estimation on these manifolds. The functionality is implemented in a clear, well-documented, and object-oriented structure that is both easy to use and easy to extend.
Highlights
Directional statistics is a subfield of statistics that deals with quantities defined on manifolds such as the unit circle or the unit hypersphere
Similar to the deterministic sampling schemes on the circle, we provide a deterministic sampling scheme for the Bingham distribution, which is presented in Gilitschenski, Kurz, Julier, and Hanebeck (2016b), and a deterministic sampling scheme for the von Mises-Fisher distribution proposed in Kurz, Gilitschenski, and Hanebeck (2016b)
These include both filters based on circular statistics and traditional filters originally intended for linear domains that have been modified for use on the unit circle and that can be employed for comparison
Summary
Directional statistics is a subfield of statistics that deals with quantities defined on manifolds such as the unit circle or the unit hypersphere. Aside from the unit tests, we include a lot of assertions (Hoare 2003) in the code to reduce the risk of problems, for example inadvertently calling certain functions with invalid parameters such as a vector of incorrect dimension or a covariance matrix lacking symmetry or positive definiteness. Even though these assertions introduce some overhead, we decided that early detection of errors and ease of use are more important than speed for libDirectional. In case the code is used in a real-time environment where speed is critical, it is still possible to remove certain checks to reduce this overhead
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.