Pure Python 3-D geographic coordinate conversions for geospace applications, with optional NumPy acceleration.
PyMap3D is a Python library for 3-D geographic coordinate conversions and geodesy calculations. It provides functions to convert between various coordinate systems like ECEF, ENU, ECI, and geodetic coordinates, solving the need for accurate spatial transformations in geospace applications. The library is designed to be lightweight and portable, with optional dependencies for enhanced performance.
Geospatial engineers, aerospace developers, and researchers working with satellite data, remote sensing, or embedded systems requiring coordinate transformations. It's also suitable for those transitioning from Matlab who need a similar API in Python.
Developers choose PyMap3D for its pure Python core, which eliminates heavy dependencies, and its Matlab-like syntax that reduces the learning curve. It excels in environments where performance on embedded or HPC systems is critical, and it handles points both on and above the Earth's surface more comprehensively than some alternatives.
pure-Python (Numpy optional) 3D coordinate conversions for geospace ecef enu eci
Pure Python core with no prerequisites beyond Python itself; it seamlessly falls back to Python's math module if NumPy is not installed, making it ideal for embedded systems.
Function syntax is similar to Matlab Mapping Toolbox, easing the transition for users already familiar with Matlab, as noted in the README for compatibility.
Comprehensive conversions between AER, ECEF, ECI, ENU, NED, and geodetic systems, handling points on or above Earth's surface, which is broader than some alternatives like PyProj for airborne use.
Includes multiple ellipsoid models via the Ellipsoid class, such as WGS84 and GRS80, allowing customization for different geodetic standards without external dependencies.
Atmospheric effects are neglected in functions not invoking AstroPy, limiting accuracy for applications like satellite tracking or remote sensing that require refraction modeling.
AstroPy.Units.Quantity is not supported, forcing users to work around with .value attributes, which can be cumbersome and impact performance considerations as admitted in the README.
Designed for non-interactive use on HPC and embedded systems, so it lacks features for real-time, interactive applications, such as GUI integration or streaming data optimizations.
pymap3d is an open-source alternative to the following products:
Kalman Filter book using Jupyter Notebook. Focuses on building intuition and experience, not formal proofs. Includes Kalman filters,extended Kalman filters, unscented Kalman filters, particle filters, and more. All exercises include solutions.
Python package for the evaluation of odometry and SLAM
PROJ - Cartographic Projections and Coordinate Transformations Library
robot_localization is a package of nonlinear state estimation nodes. The package was developed by Charles River Analytics, Inc. Please ask questions on answers.ros.org.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.