为什么会没人用OpenCV.js呢?奇怪。
1.安装emsdk
mac:直接用HomeBrew(本指南以该安装方式为准)
其他:根据官网步骤进行,务必最后进行检验emcc --check以确保正确安装
2.build
下载OpenCV源码Releases
对./platforms/js/build_js增加以下内容,添加位置为229行:
parser.add_argument('-DCMAKE_TOOLCHAIN_FILE', default='', help='DCMAKE_TOOLCHAIN_FILE')
parser.add_argument('-DCMAKE_CROSSCOMPILING_EMULATOR', default='', help="DCMAKE_CROSSCOMPILING_EMULATOR")
如果要删除/增加功能,在./platforms/js/build_js.py中开启或关闭。例:-DWITH_JPEG=OFF -> -DWITH_JPEG=ON
执行命令进行编译,注意python3可能需要更换为python,--emscripten_dir目录以emscripten存在目录为准(可能导向其根目录会导致错误,但介于homebrew安装有所差异,请自行尝试)
emcmake python3 ./platforms/js/build_js.py build_js --emscripten_dir /opt/homebrew/Cellar/emscripten/3.1.6/libexec
编译完成后,提示:
=====
===== Build finished
=====
OpenCV.js location: /Users/key/Downloads/opencv-4.6.0/build_js/bin/opencv.js
文件存在于build_js文件夹,名opencv.js
3. 修改编译后的文件
无敌巨坑,修改以下代码为:
return cv.ready -> return cv
接下来即可enjoy!
tips
/opt/homebrew/Cellar/emscripten/3.1.6/libexec文件内容: