【发布时间】:2017-08-16 05:27:37
【问题描述】:
我有一个用例,我必须在节点 JS 应用程序中进行图像搜索。我将图像哈希存储在数据库中,所以我需要在 nodeJS 应用程序中计算哈希。将来我可能会有更多的计算机视觉用例。
我遇到了nodejs-opencv 模块,但没有一篇博客谈论它的性能。由于 nodeJS 不应该用于 CPU 密集型任务,并且计算机视觉算法可能需要繁重的处理,我不确定它的扩展性如何。
有人在生产中使用过它并提供一些细节吗?
【问题讨论】:
我有一个用例,我必须在节点 JS 应用程序中进行图像搜索。我将图像哈希存储在数据库中,所以我需要在 nodeJS 应用程序中计算哈希。将来我可能会有更多的计算机视觉用例。
我遇到了nodejs-opencv 模块,但没有一篇博客谈论它的性能。由于 nodeJS 不应该用于 CPU 密集型任务,并且计算机视觉算法可能需要繁重的处理,我不确定它的扩展性如何。
有人在生产中使用过它并提供一些细节吗?
【问题讨论】:
你说的是哪个 nodejs OpenCV 库?如果您选择一个从本机节点模块提供 javascript 绑定的程序,那么您将获得与使用 C++ 相同的性能。我目前正在开发一个 OpenCV 3.x 本机节点插件,以便将 OpenCV 与 javascript 一起使用,并且可以告诉您性能确实没有差异。然而,也有纯 javascript 实现,无需在服务器或本地系统上设置 OpenCV c++ 库,但如果您已经猜到,如果在 javascript 中实现,大多数 CV 任务将明显变慢。
【讨论】:
在 NodeJS 项目中使用计算机视觉的最高效方法是将计算移至 C++ 代码空间 (native addon) 并应用 Workers 进行多线程处理
【讨论】: