如何解决在使用了tfjs进行图像识别webgl渲染卡住?
发布于 6 年前 作者 guiying60 666 次浏览 来自 问答

TensorFlow.js version:2.0.1

tfjs-wechat plugin version:0.10

WeChat version:7.0.13

WeChat base API version:2.11.3

WeChat IDE version:stable 1.03.2006090

我们团队做了一个关于鞋子3D姿态识别的AI,并使其可在IOS微信小程序上以较好的帧率运行,然后我们想接入一个3D绘制的效果,但发现有时渲染会在AI代码运行后卡主,具体表现为渲染与AI代码依旧正常执行,Webgl渲染区域变得全黑。所以我们又对tfjs使用与webgl渲染的结合进行了多种测试,甚至发现在iPhone8的测试机上有时只运行了简单的tensor操作与使用webgl渲染相机帧也会出现webgl渲染卡住的问题,且随着双方功能的复杂度提升在更好的机型上也会出现渲染卡住的问题。

这个问题在不同机型上都呈现着不报错,不必现,console输出正常的情况,让我们在debug时十分困扰,因为猜测不到具体是什么原因造成的问题。

我们也猜测过是因为webgl内存不足导致的问题,但如果没有被卡主AI与渲染是可以持续执行的,且在消耗很少的操作中也会出现这样的问题,所以我现在的猜测是webgl内存地址在双方调用时发生了冲突。

1 回复

你好,麻烦具体描述问题流程,提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

回到顶部