Fast C++ matrix library with easy to use functions and syntax, deliberately similar to Matlab. Uses template meta-programming techniques. Also provides efficient wrappers for LAPACK, BLAS and ATLAS libraries, including high-performance versions such as OpenBLAS and Intel MKL. Useful for machine learning, pattern recognition, signal processing, bioinformatics, statistics, finance, etc. For more details, see http://arma.sourceforge.net
Dlib is a C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
Machine learning algorithms for advanced analytics
OpenNN is a software library written in C++ for advanced analytics. It implements neural networks, the most successful machine learning method. Some typical applications of OpenNN are business intelligence (customer segmentation, churn prevention…), health care (early diagnosis, microarray analysis…) and engineering (performance optimization, predictive maitenance…). OpenNN does not deal with computer vision or natural language processing. The main advantage of OpenNN is its high...
Open Source Computer Vision Library
The Open Source Computer Vision Library has >2500 algorithms, extensive documentation and sample code for real-time computer vision. It works on Windows, Linux, Mac OS X, Android and iOS. Homepage: opencv.org Q&A forum: answers.opencv.org Documentation: docs.opencv.org Please pay special attention to our tutorials! http://docs.opencv.org/3.2.0/d9/df8/tutorial_root.html Books about the OpenCV are described here: http://opencv.org/books.html
General C++ Library, with modules for Computer Vision, Pattern Recognition and much more.
3D Without Boundaries
VirtualGL redirects 3D commands from a Unix/Linux OpenGL application onto a server-side GPU and converts the rendered 3D images into a video stream with which remote clients can interact to view and control the 3D application in real time.
A symbolic framework for C++, Python and Octave implementing automatic differentiation by source code transformation in forward and reverse modes on sparse matrix-valued computational graphs.
a parametric 3D CAD modeler
... for very advanced extension and customization. FreeCAD is based on OpenCasCade, a powerful geometry kernel, features an Open Inventor-compliant 3D scene representation model provided by the Coin 3D library, and a broad Python API. The interface is built with Qt. FreeCAD runs exactly the same way on Windows, Mac OSX and Linux platforms.
NGSolve is a general purpose Finite Element Library on top of Netgen. With the basic library one can solve heat flow equations, Maxwell equations, and solid mechanical problems. Several add-ons are available for particular application classes. New paper: J. Schöberl: "C++11 Implementation of Finite Elements in NGSolve", ASC Report 30/2014, Institute for Analysis and Scientific Computing, Vienna University of Technology, 2014 http://www.asc.tuwien.ac.at/~schoeberl/wiki/publications/ngs-cpp11...
TinyCAD is a program for drawing electrical circuit diagrams commonly known as schematic drawings. It supports standard and custom symbol libraries. It supports PCB layout programs with several netlist formats and can also produce SPICE simulation netlists. It is also often used to draw one-line diagrams, block diagrams, and presentation drawings.
SAGA - System for Automated Geoscientific Analyses - is a Geographic Information System (GIS) software with immense capabilities for geodata processing and analysis. SAGA is programmed in the object oriented C++ language and supports the implementation of new functions with a very effective Application Programming Interface (API). Functions are organised as modules in framework independent Module Libraries and can be accessed via SAGA’s Graphical User Interface (GUI) or various scripting...
Open Source Solid Modeling CAD
BRL-CAD is a powerful cross-platform constructive solid geometry solid modeling system that includes an interactive geometry editor, ray-tracing for rendering & geometric analyses, network distributed framebuffer support, image & signal-processing tools.
FreeImage is a library project for developers who would like to support popular graphics image formats (PNG, JPEG, TIFF, BMP and others). Some highlights are: extremely simple in use, not limited to the local PC (unique FreeImageIO) and Plugin driven!
GeographicLib is a small set of C++ classes for converting between geographic, UTM, UPS, MGRS, and geocentric coordinates, for gravity (e.g., EGM2008), geoid, and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic problems. For documentation, visit https://geographiclib.sf.io
A quantitative finance C++ library for modeling, pricing, trading, and risk management in real-life. A cross-platform free/open-source tool for derivatives and financial engineering.
Political economy simulation toolkit
Political economy library is a set of classes and accompanied tools for simulation of economy based on employment by companies, production of goods and consumption - EPC model. Actually it includes market-based model for research of the effects of Tobin tax. The library is based on Zarja library.
A C++ framework that implements generalised finite state machines.
The State Controller Library is a generic platform-independent C++ framework that allows finite state machines and multi-action planning generalisations thereof to be realised. The structure and implementation of this library focuses on the application of finite state machines to real-time control loops, but can be reasonably adapted for virtually any other application, even completely unrelated to control systems. An emphasis has been placed on having very low overhead so as not to hurt...
Library for working with 3D rotations in C++
The Rotations Conversion Library (RCL) is a collection of C++ functions that address common computations and numerical handling of rotations in 3D Euclidean space, including support for rotation matrices (`Rotmat`), Quaternions (`Quat`), intrinsic ZYX Euler angles (`Euler`), fused angles (`Fused`) and tilt angles (`Tilt`). In addition to the core competency of being able to convert between each of the representations, operations such as inversion, ZYX yaw extraction, fused yaw extraction...
experimental C++ library for GPU based linear algebra
The Numerical Learning Library intends to provide a wide range of machine learning algorithms. It is a generic and efficient C++ library with its full integrated framework (preprocessing, feature extraction and transformation, validation).
This is a very simple OpenGL visualization library with a 3D and 4D volume renderer. It can easily be reused in other projects (e.g. with medical volumes). It is just perfect for learning or great if you like to hack your own code.
The structural analysis library is a C/C++ portable software library for analyzing the structural properties of stoichiometric networks
32/64 bit multi-platform Ethernet S7 PLC communication suite
Snap7, through three specialized components: Client and the inedited Server and Partner, allows you to definitively integrate your PC based systems into a PLC automation chain. Designed to transfer large amounts of hi-speed data in industrial facilities, it scales easily, down to small Linux Arm boards such as Raspberry PI. Hi level object oriented wrappers are provided, currently C/C++, .NET/Mono, Pascal, LabVIEW, Python with many source code examples. Very easy to use, a full working...
A library for scientific data visualization
A free cross-platform library of fast C++ routines for the plotting of up to 3-ranged data. It can export to bitmap and vector EPS/SVG files. There are window interfaces (GLUT/FLTK/Qt) and console tools. MathGL can be used from C/Fortran/Python/Octav/Lua
Modbus TCP,RTU Master Software.
QModMaster is a free Qt-based implementation of a ModBus master application. A graphical user interface allows easy communication with ModBus RTU and TCP slaves. QModMaster also includes a bus monitor for examining all traffic on the bus. QModMaster is based on libmodbus <http://www.libmodbus.org/> for modbus communication and on QsLog <https://bitbucket.org/razvanpetru/qt-components/wiki/QsLog> for logging. Supports both Windows and Linux. For Windows a pre-compiled binary is availiable....