opencv的javascript绑定有两个opencv.js, opencv4node.js,前者比较老,支持的API比较少,后者支持几乎全部的opencv API,且支持最新版本3.x, 4.x。
开源的东西,要适应BUG,软件BUG以及文档BUG,按照官方文档也可能无法安装,在MacOS Catalina 10.15.3上安装费了点儿周折,只能下源码编译总结安装详细步骤如
- 安装 opencv
- brew install opencv@2
- brew install opencv@3
- brew install opencv@4
- brew link —force opencv@4 #使用4.x, 随时可以切换默认的版本,使用该命令选择即可
直接npm install opencv4node不成功,而且看日志发现默认是下载opencv3.x的源码,根据官方文档说明,可以禁止下载
- 下载node4opencv.js源码
- git clone https://github.com/justadudewhohacks/opencv4nodejs.git
- 设置不下载opencv
- export OPENCV4NODEJS_DISABLE_AUTOBUILD=1
- npm install
- node-gyp configure
因为比较奇怪,源码在其它位置下载编译是可以的,但在node_modules里编译就是不行,还是一些目录配置不正确,但在其它目录中修改好了,进去还是不行,也没时间再纠结,直接按下面方法把问题解决能用就是了。 - 编译
- 修改build/opencv4nodejs.target.mk, 增加头文件目录 -I/usr/local/include/opencv4
- node-gyp build
- 复制编译好的目录到工程目录的 node_modules
- 进入opencv4ndoejs目录
- node-gyp install