Skip to content

Latest commit

 

History

History
88 lines (62 loc) · 4.22 KB

Javascript_video_analysis.md

File metadata and controls

88 lines (62 loc) · 4.22 KB

Javascript video analysis

Mathematics

Ranked in descending order of viability:

  • linear-algebra (blog post)

    Efficient, high-performance linear algebra library for node.js and browsers.

    This is a low-level algebra library which supports basic vector and matrix operations, and has been designed with machine learning algorithms in mind.

    Features:

    Simple, expressive, chainable API. Array implementation with performance optimizations. Enhanced floating point precision if needed. Comprehensive unit tests. Works in node.js and browsers. Small: ~1 KB minified and gzipped.

  • sylvester the original, but predates much modern optimisation such as native arrays and asm.js

  • jStat is a statistical library written in JavaScript that allows you to perform advanced statistical operations without the need of a dedicated statistical language (e.g. MATLAB or R). Includes a tidy linear algebra library, but could be better optimized.

  • lmfit

    JavaScript (emscripten) port of lmfit library:

    "a self-contained C library for Levenberg-Marquardt least-squares minimization and curve fitting"

    Currently only linear curve fitting is implemented.

  • linalg uses native arrays because of their speed.

    I needed a performance focused linear algebra module for visualizing data in 10+ dimensions, and implementing machine learning algorithms. I quickly learned that naive solutions to linear algebra operations can produce numerical errors so significant they are utterly useless for anything other than casual playtime. After that, I prioritized correctness over performance.”

    Untouched since released and small community, which is sad because the code looks solid.

  • glmatrix is WebGL (therefore VERY fast), but 4-vector oriented, which is too small for us

  • numeric looks polished but has been untouched for 2 years

  • jmat is an actively developed complex matrix library, but we would probably prefer speed to complex number support.

  • random variables can be simulated very easily using the probability distributions library

Machine vision libraries

Top picks, maybe useful

Suspected non-useful or abandoned

WebGL optimisation