我正在使用 ml5.js PoseNet。我有一个接收图像的函数,我试图返回 PoseNet 生成的单个姿势。我也想将此值作为承诺返回。使用下面的 toReturn ,它在姿势生成完成之前返回,因此未定义(我猜是因为异步性质)。我该如何解决?
async function addPose(img){
let options = {
imageScaleFactor: 1,
minConfidence: 0.1
}
let poseNet = ml5.poseNet(modelReady, options);
function modelReady(){
console.log('model loaded');
let result = poseNet.singlePose(img); // a promise of JSON value
// return result;
}
let toReturn;
poseNet.on('pose', function(results){
toReturn = results[0] // the JSON value
// return results[0]
})
return toReturn;
}