opencv 4.8.1 wsam 构建&问题说明
opencv-wasm使用的opencv 版本是4.3 的,为了使用最新版本的,所以自己基于opencv-wasm 提供的脚本构建了一个,同时记录下一些
问题以及解决方法
构建脚本修改
原始使用的是4.3.0 版本的,直接修改分支就可以了
git clone --branch 4.8.1 --depth 1 https://github.com/opencv/opencv.git
# Build
(
cd opencv &&
git checkout 4.8.1 &&
# Add non async flag before compiling in the python build_js.py script
docker run --rm --workdir /code -v "$PWD":/code "trzeci/emscripten:sdk-tag-1.39.4-64bit" python ./platforms/js/build_js.py build_wasm --build_wasm --build_test --build_flags "-s WASM=1 -s WASM_ASYNC_COMPILATION=0 -s SINGLE_FILE=0 "
)
# Copy compilation result
cp -a ./opencv/build_wasm/ ./build_wasm
# Transpile opencv.js files
node opencvJsMod.js
# Beautify JS
(
cd ./build_wasm/bin &&
npx js-beautify opencv.js -r &&
npx js-beautify opencv-deno.js -r
)
# Copy bins to root
(
# 新版本此处有bug,应该使用opencv_js.wasm 文件,否则,对于ts 类型生成以及运行都是有问题的
cp ./build_wasm/bin/opencv_js.wasm ../opencv.wasm &&
cp ./build_wasm/bin/opencv-bin.js ../opencv-bin.js &&
cp ./build_wasm/bin/opencv.js ../opencv.js &&
cp ./build_wasm/bin/opencv-deno.js ../opencv-deno.js &&
cp -r ./build_wasm/ ../build_wasm_test
)
说明
整个构建还是比较顺利的,就是opencv.wasm 文件copy 部分有些问题,按照原始的大小
同时4.8.1 版本的npm 包我已经发布到npm 中央仓库了,大家可以直接使用 npm i @dalongrong/opencv-wasm
安装使用
参考资料
https://github.com/opencv/opencv
https://github.com/echamudi/opencv-wasm
https://www.npmjs.com/package/@dalongrong/opencv-wasm
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2022-10-30 asyncapi event-gateway
2022-10-30 使用haproxy 代理minio
2021-10-30 dremio rbac 功能简单说明一
2021-10-30 dremio 19.0 几个扩展包说明
2021-10-30 dremio 实现类似官方create user sql 处理的思路
2021-10-30 dremio 19.0 创建用户bug说明
2019-10-30 使用viper 进行golang 应用的配置管理