Giter Club home page Giter Club logo

Cross-platform .NET library for digital signal processing

Every journey begins in the mind...

UMapx

Contains ready-made math tools:

  • color spaces and their transformations,
  • real and complex algebra,
  • statistical distributions,
  • special math functions,
  • digital response filters,
  • discrete orthogonal transforms and more.

Suitable for a wide range of tasks:

  • symbolic and graphical visualization of data,
  • functional, vector and matrix analysis,
  • interpolation, approximation and optimization of functions,
  • numerical differentiation and integration,
  • solving equations,
  • matrix factorization.

Includes special toolboxes:

  • Wavelet Toolbox. Provides wide functionality for the study of discrete and continuous wavelets. The toolbox also includes algorithms for discrete one-dimensional and two-dimensional wavelet transforms of real and complex signals.
  • Window Toolbox. Includes a set of tools to synthesizing and orthogonalizing window functions. It implements discrete short-time Fourier and Weyl-Heisenberg transforms (Gabor analysis) for real and complex signals.
  • Image Processing Toolbox. Contains efficient algorithms to processing, correcting and analyzing 32-bit images.
  • Video Processing Toolbox. Includes a set of tools to video streaming and processing.

Supported types

UMapx supports only

  • 32 bit types - float, Complex32 and etc (compatible with System.Numerics, NAudio and other libraries),
  • 32 bit image BitmapData format - Format32bppArgb (compatible with AForge.NET, Accord.NET and etc),
  • 24 bit video BitmapData format - Format24bppRgb (32 bit format not recomended).

Installation

You can build UMapx from sources or install to your own project using nuget package manager.

Specification OS Platform Download Package
.NET Standard 2.0 Cross-platform AnyCPU Release NuGet

Namespaces

using UMapx.Analysis;
using UMapx.Colorspace;
using UMapx.Core;
using UMapx.Decomposition;
using UMapx.Distribution;
using UMapx.Imaging;
using UMapx.Response;
using UMapx.Transform;
using UMapx.Video;
using UMapx.Visualization;
using UMapx.Wavelet;
using UMapx.Window;

Examples of usage

  • Local Laplacian filters - NET Framework desktop application for HDR imaging.
  • Portrait mode effect - High quality implementation of the portrait mode effect using Neural Networks.
  • FaceONNX - Face analytics library based on deep neural networks and ONNX runtime.

Relation to other frameworks

UMapx is based on several separate frameworks (AForge.NET, Accord.NET, Alglib and etc). Some functions have been ported from other programming languages and their toolboxes and libraries (Fortran, MATLAB, C++, Python). The purpose of this generalization was the declarative understanding of algorithms of digital signal processing and its optimization and performance improvement. UMapx is faster than AForge.NET and Accord.NET in signal processing tasks and contains a larger set of functions for matrix analysis, linear algebra and functional analysis.

License

MIT

References

A full list of references is given in a separate file.

UMapx's Projects

UMapx doesnโ€™t have any public repositories yet.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.