Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make Ecmascripten and Native Client implementation of Takeout #13

Open
bwhite opened this issue Apr 26, 2013 · 1 comment
Open

Make Ecmascripten and Native Client implementation of Takeout #13

bwhite opened this issue Apr 26, 2013 · 1 comment

Comments

@bwhite
Copy link
Owner

bwhite commented Apr 26, 2013

The takeout algorithms are all in C++ but some of their dependencies (e.g., OpenCV) would be difficult to use in these environments. We could make a custom image loader for each of these as that is really the main blocker and then just support the compatible subset of each.

https://github.com/kripken/emscripten/wiki

https://code.google.com/p/nativeclient/

@bwhite
Copy link
Owner Author

bwhite commented May 8, 2013

Need to rip out OpenCV as it is too big of a dependency

  • Option 1: Move image IO in models to libjpeg-turbo/libjpeg only, make a separate job that can convert from "anything-to-jpeg". libjpeg: libjpeg library problem in o1/o2 compile mode emscripten-core/emscripten#379
  • Option 2: Use the browser's image IO and find a way to get that into the image_fromstring function calls.
  • For minor image processing, copy from OpenCV and maintain in tree: cv::resize, cv::getRectSubPix, cv::cvtColor
  • Some models won't be supported without significant effort: Brisk, Face Detect.
  • GIST needs fftw3 to work, it isn't clear if this will be practical.
  • msgpack: It isn't clear if this will be hard to incorporate as is. We may need to conditional compile with the header-only msgpack (https://code.google.com/p/msgpack-cpp-lite/)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant