This project aims to optimize the WebAssembly version of OpenCV.js. Some evaluation experiments have shown that current WASM SIMD version has some problems, e.g. low performance of the kernel cvtColor and resize. The goals of this project can be summrized like the following points:

  1. Make OpenCV.js support 64-bit intrinsics.
  2. Fix the low performance of cvtColor and resize kernels.
  3. Optimize the perf tests for kernels to have better code reuse.
  4. Do perf tests for more kernels of module imgproc, dnn, and objectdetect, e.g. Sobel, Scharr, blur, and so on.
  5. Create a detector in OpenCV.js to check the ability of SIMD on the browser, and create a loader to load the corresponding version of OpenCV.js: Normal version, or WASM version.



Kun Liang


  • Vitaly Tuzov
  • Ningxin Hu