📜  Tensorflow.js tf.nextFrame()函数

📅  最后修改于: 2022-05-13 01:56:21.578000             🧑  作者: Mango

Tensorflow.js tf.nextFrame()函数

简介: Tensorflow.js 是谷歌开发的一个开源库,用于在浏览器或节点环境中运行机器学习模型以及深度学习神经网络。

.nextFrame()函数用于返回一个promise,该promise 确定requestAnimationFrame终止的时间。

笔记:

  • 在 Node.js 中,此方法应用setImmediate代替requestAnimationFrame
  • 此外,它是一种基本的糖方法,用户可以执行以下操作:await tf.nextFrame()。

句法:

tf.nextFrame()

参数:此方法不包含任何参数。

返回值:它返回无效的承诺。

示例 1:

Javascript
// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Using for loop
for(let i = 0; i < 5; i++){
  
// Calling nextFrame() method
await tf.nextFrame();
  
// Printing output
console.log('*****');
}


Javascript
// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Using for loop
for(let i = 0; i < 3; i++){
  
// Calling randomNormal() method
const x = tf.randomNormal([2, 3]);
    
// Calling nextFrame() method
await tf.nextFrame();
  
// Printing output
console.log(x);
}


输出:这里,由于nextFrame方法,星星被一个一个打印出来。

*****
*****
*****
*****
*****

示例 2:

Javascript

// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Using for loop
for(let i = 0; i < 3; i++){
  
// Calling randomNormal() method
const x = tf.randomNormal([2, 3]);
    
// Calling nextFrame() method
await tf.nextFrame();
  
// Printing output
console.log(x);
}

输出:在这里,如果您多次快速运行程序,则会在处理张量时发生错误。

Tensor
    [[-1.2814652, 0.0379729, 1.4826748],
     [1.5050254 , 0.0769796, 0.5443317]]
Tensor
    [[-1.9229894, 0.2478886 , 0.6501164],
     [0.3088476 , -1.0728339, 0.8636787]]
Tensor
    [[-0.2324371, -1.2162384, 0.3193687],
     [0.0266885 , 1.3987972 , 0.4429231]]

参考: https://js.tensorflow.org/api/latest/#nextFrame