A curated list of libraries, softwares, simulators for robotics. Recently, I added a list of important books and conferences for Robotics.
Note: The data in this repository is updated and accurate to the best of my knowledge. In case of any correction, deletion or addition of information please raise an issue. A mail can also be written to [adwaitnaik2@gmail.com].
- Libraries
- Visualization
- Robot Vision
- Robot Perception
- Motion Planning
- Graphics Engine/ Environments
- Some cool repositories
- Other essential packages and libraries
- Textbooks
- Scientific-journals
- Series-of-international-scientific-conferences
-
Pybotics - python based library for roboti kinematics and calibration. It is mainly designed to work on Denavit–Hartenberg parameters principle. [github ]
-
PyBullet - a python module for physics simulation of robots, loading URDF, SDF, MJCF files etc.[github ]
-
Pygame - a library for used for game development and creating objects in 2D space.[github ]
-
pclpy 0.11.0 - a library used for creating point clouds for applications related to computer vision, robotics and computer graphics. [github ]
-
collision - this library is mainly used for collision checking in 2D space along with pygame. [github ]
-
Ropy - A library by Peter Corke based on the paper "Maximising manipulability during resolved-rate motion control,".[github][Paper]
-
pybotvac - This is an unofficial API for controlling Neato Botvac Connected vacuum robots. [github]
-
pybot - Research tools for autonomous systems using Python. [github]
-
PyBot - a python module for creating and deploying twitter bots. [github]
-
pybotgram - A Telegram Bot written in Python with plugins based in yagop telegram-bot using tg. [github]
-
pyrobottraining- This is a repository that can be used as a tool to teach you about programming an FRC robot using python and the RobotPy WPILib libraries.[github]
-
airobot - AIRobot is a python library to interface with robots. It follows a similar architecture from PyRobot. [github]
-
MRPT - Mobile Robot Programming Toolkit (MRPT) provides C++ libraries aimed at researchers in mobile robotics and computer vision. [github ]
-
Flexible collision library - this is mainly used for collision checking in 3D space in motion planning. [github ]
-
Trajopt - is a C++ based library by UC berkeley for Motion planning, trajectory optimisation, etc. [github ]
-
VTKexamples - a library based on pyhton for collision detection, making 3D meshes etc. [github ]
-
Pyglet - a library primarily used for game development and computer graphics applications.[github ]
-
PyOpenGL - a cross platform library based on python and OpenGL. [github ]
-
OpenCV - OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products. [github]
-
SimpleCV - SimpleCV is an open source framework for building computer vision applications. With it, you get access to several high-powered computer vision libraries such as OpenCV – without having to first learn about bit depths, file formats, color spaces, buffer management, eigenvalues, or matrix versus bitmap storage. [github]
- CUDA Visual Library - This library focuses on the front-end of VIO pipelines.[github]
-
sparse-rrt 0.0.2 - This package is based on Sparse-RRT project sparse_rrt.The main purpose of this work is to allow running Sparse-RRT planner in python environment.[github ]
-
OMPL - OMPL, the Open Motion Planning Library, consists of many state-of-the-art sampling-based motion planning algorithms. OMPL itself does not contain any code related to, e.g., collision checking or visualization.[github ]
-
MPL - Motion Planning Kit (MPK) is a C++ library and toolkit for developing single- and multi-robot motion planners.Documentaion
-
Robotics Library - The Robotics Library (RL) is a self-contained C++ library for robot kinematics, motion planning and control. It covers mathematics, kinematics and dynamics, hardware abstraction, motion planning, collision detection, and visualization.Documentation
-
SIMOX - The aim of the lightweight platform independent C++ toolbox Simox is to provide a set of algorithms for 3D simulation of robot systems, sampling based motion planning and grasp planning.[github ]
-
OpenRave( Open Robotics Automation Virtual Environment) - it focuses on developing and testing motion planning algorithms for robotic applications. It is available in C++, Python. Documentation
-
Webots - It provides a complete development environment to model, program and simulate robots, vehicles and biomechanical systems.[github]
-
Stage - Stage is a 2(.5)D robotics standalone simulator and can also be used as a C++ library to build your own simulation environment. [github]
-
Player - is one of the most popular mobile robot simulator. [github]
-
RoboDK - is a robot simulator which allows programming and simulating any robot online and offline. It is mailny used for industrial applications. [github]
-
Mobile Robot Simulator - Mobile robot simulator in MATLAB.[github]
-
trimesh - a package for loading and making meshes. [github]
-
Tkinter - a package used for visualization. documentation tutorial
-
Pymesh - is a python based rapid prototyping platform for geometric and computer vision applications.[github]
-
Mesh -A Processing library for computing convex hulls, delaunay graphs and voronoi graphs from groups of points.[github ]
-
OpenMesh - A generic and efficient polygon mesh data structure. [github] [Docs]
-
libigl - A simple C++ geometry processing library[github]
-
PyGEL - Python library for geometry processing [github ] [Docs]
-
pmp-library - C++ based library for processing and generating meshes. [github]
-
Delynoi: an object-oriented C++ library for the generation of polygonal meshes [github]
-
Cinolib: a Generic Programming Header Only C++ Library for Processing Polygonal and Polyhedral Meshes[github] paper
-
cilantro - A lean C++ library for working with point cloud data.[github]
-
PDAL - Point Data Abstraction Library, is a C++ BSD library for translating and manipulating point cloud data. It is very much like the GDAL library which handles raster and vector data.[github]
-
LEPCC - Limited Error Point Cloud Compression, a library written in C++ for point cloud compression.[github]
-
chainer - flexible framework for working with neural networks. [github]
-
shogun - a machine learning toolbox build on C++. It also supports python. [github]
-
Apache Spark - Spark is a unified analytics engine for large-scale data processing. [github]
-
Pinocchio - instantiates the state-of-the-art Rigid Body Algorithms for poly-articulated systems based on revisited Roy Featherstone's algorithms. Besides, Pinocchio provides the analytical derivatives of the main Rigid-Body Algorithms like the Recursive Newton-Euler Algorithm or the Articulated-Body Algorithm. [github]
-
Crocoddyl - Contact RObot COntrol by Differential DYnamic programming Library. [github]
-
FCL- FCL is a library for performing three types of proximity queries on a pair of geometric models composed of triangles.. [github]
-
H. Asada, J.-J.E. Slotine, Robot Analysis and Control, Wiley, New York, 1986.
-
G.A. Bekey, Autonomous Robots, MIT Press, Cambridge, MA, 2005.
-
A.J. Critchlow, Introduction to Robotics, Macmillan, New York, 1985.
-
J.F. Engelberger, Robotics in Practice, Amacom, New York, 1980.
-
J.F. Engelberger, Robotics in Service, MIT Press, Cambridge, MA, 1989.
-
A.J. Koivo, Fundamentals for Control of Robotic Manipulators, Wiley,New York, 1989.
-
Y. Koren, Robotics for Engineers, McGraw-Hill, New York, 1985.
-
F.L. Lewis, C.T. Abdallah, D.M. Dawson, Control of Robot Manipulators,Macmillan, New York, 1993.
-
P.J. McKerrow, Introduction to Robotics, Addison-Wesley, Sydney, Australia, 1991.
-
R.P. Paul, Robot Manipulators: Mathematics, Programming, and Control MIT Press, Cambridge, MA, 1981.
-
M.W. Spong, S. Hutchinson, M. Vidyasagar, Robot Modeling and Control, Wiley, New York, 2006.
-
M. Vukobratovi ́c, Introduction to Robotics, Springer-Verlag, Berlin, Ger- many, 1989.
-
T. Yoshikawa, Foundations of Robotics, MIT Press, Boston, MA, 1990.
- Advanced Robotics
- Autonomous Robots
- IEEE Robotics and Automation Magazine
- IEEE Transactions on Robotics
- International Journal of Robotics Research
- Journal of Field Robotics
- Journal of Intelligent and Robotic Systems
- Robotica
- Robotics and Autonomous Systems