测试在安卓下(Mate30 Pro)可以使用webassembly的相关函数,随即测试了opencv.js,通过对胶水代码的魔改(
1.如对无法使用的new Function,用固定的function加动态获取传入参数仿写
2.对某些函数读取外部文件,将FS改造,提前将文件通过小程序的FileSystemManager读入虚拟目录中
),经测试,可以使用opencv.js提供的API,面部、眼睛检测速度大约在15帧/秒。
现提供代码给大家增添思路:
小程序通过webassembly加载opencv.js
测试在安卓下(Mate30 Pro)可以使用webassembly的相关函数,随即测试了opencv.js,通过对胶水代码的魔改(
1.如对无法使用的new Function,用固定的function加动态获取传入参数仿写
2.对某些函数读取外部文件,将FS改造,提前将文件通过小程序的FileSystemManager读入虚拟目录中
),经测试,可以使用opencv.js提供的API,面部、眼睛检测速度大约在15帧/秒。
现提供代码给大家增添思路:
前辈您好,用这个demo的opencv url链接是不是要改啊
您好,请问您编译的这个opencv.js使用的编译器的版本是什么呀?我编译之后,wasm默认使用了共享内存,胶水文件中也需要更改WebAssembly.Memory()里面的shared属性才可以在开发者工具运行。但是安卓手机应该是不支持共享内存的,所以您编译的时候是怎么取消共享内存的呀?我现在怀疑是我编译器版本太高了导致的使用了共享内存。我看您编译的这个没有使用ShareArrayBuffer.
您好,请问您编译的这个opencv.js使用的编译器的版本是什么呀?我编译之后,wasm默认使用了共享内存,胶水文件中也需要更改WebAssembly.Memory()里面的shared属性才可以在开发者工具运行。但是安卓手机应该是不支持共享内存的,所以您编译的时候是怎么取消共享内存的呀?我现在怀疑是我编译器版本太高了导致的使用了共享内存。我看您编译的这个没有使用ShareArrayBuffer.
你好!因为学校毕设入手,请问现在能导入opencv的处理程序在小程序端直接处理吗?可以的话具体步骤和思路可以讲一下吗?
厉害,非常感谢
请问大佬,小程序的webassembly可以使用simd的功能吗?我看谷歌浏览器需要设置chrome://flags来开启这个设置。但是小程序不知道在哪里开启,也不知道本身是否已经支持了simd。
前辈您好,我也定制化自动生成了一个wasm文件,但是使用您的胶水文件感觉应该是不太适配,想问下,我改胶水文件的话,大概需要改哪些地方呢?是不是很麻烦啊?
你好 请问有方法不使用胶水js吗,感觉太臃肿了
我看emscripten现在也可以只生成一个.wasm 但有可能需要导入wasi才能用
(import "wasi_snapshot_preview1" "proc_exit" (func $wasi_snapshot_preview1.proc_exit (type $t1)))
但感觉目前小程序应该还不支持wasi
你好,请问一下:
烦请赐教!谢谢!
非常感谢!!!