forked from opencv/opencv
-
Notifications
You must be signed in to change notification settings - Fork 11
OpenCV GSoC 2019 Proposal
Ningxin Hu edited this page Feb 20, 2019
·
1 revision
-
-
- Description: OpenCV.js makes OpenCV functions available to JavaScript developers by compiling its C++ implementation to WebAssembly (or Asm.js) and exposing them through a JavaScript binding. However the current version of OpenCV.js only runs in single thread and doesn't use SIMD instructions. This causes the performance of OpenCV.js is far below the native version and prevents some real-time use cases to be deployed in web browser. This task aims to improve the performance of OpenCV.js by exploiting parallelism of CPU. This requires to port the parallel implementations of OpenCV source code to web by leveraging Threads and SIMD features of WebAssembly.
-
Expected Outcomes:
- Speedup OpenCV.js by multi-threading
- Speedup OpenCV.js by SIMD
- Speedup OpenCV.js by both multi-threading and SIMD
- Create OpenCV.js benchmark and profile the performance on multiple platforms
- Create a real-time demo by leveraging parallel version of OpenCV.js
- Resources
- Skills Required: C++, JavaScript, HTML, WebAssembly, performance optimization, multi-threading and SIMD. Fluent in written English.
- Mentors: Ningxin Hu
- Difficulty: Medium
-