node-opencv npm - 即使node是单线程的,它会进行多线程计算吗?

时间:2017-10-22 14:56:22

标签: node.js multithreading opencv computer-vision node-opencv

openCV的node.js实现可以利用支持多线程的主机和/或Nvidida GPU吗?

我是Node JS的新手,并注意到有openCV绑定。

我为uni项目做了一点openCV,并且有兴趣使用node.js进行图像处理。

Node是单线程的,我相信openCV会利用多核,特别是如果它们是Nvidia GPU?

1 个答案:

答案 0 :(得分:2)

JavaScript是单线程的,而nodejs则不是。 nodecs绑定到OpenCV C ++库,这意味着您基本上可以获得OpenCV的所有性能优势,只需将它与Javascript API一起使用即可。

如果绑定通过AsyncWorkers提供异步方法,则会从中获取多线程。你可以试试我的npm包opencv4nodejs,它提供了一个异步API,通过Promises使多线程非常简单。

对于GPU加速,您可能知道,OpenCV具有不同的模块,具有单独的API。如果您想将此API与nodejs一起使用,则必须为此提供绑定。