我是ML的完全入门者,我正在尝试使用移动相机和使用Tensorflow.js进行预训练的模型进行图像识别。我已经在Tensorflow.js网站中使用了pacman示例,并对其进行了修改。
以下是一些相关代码:
async loadModel() {
console.log('Loading model...');
const startTime = performance.now();
this.model = await loadFrozenModel(MODEL_URL, WEIGHTS_URL);
const totalTime = Math.floor(performance.now() - startTime);
console.log(`Model loaded and initialized in ${totalTime}ms...`);
this.setup(); // Opens the camera and pass the video stream source to the video element
}
这将加载我使用tensorflowjs-converter转换的模型。加载模型后,我将使用navigator.getUserMedia
打开相机,并将流源分配给在HTML中创建的HTML视频元素。现在。打开相机后,我将调用以下方法进行预测:
async predict() {
while (this.isPredicting) {
console.log("predicting . . . . . . . . ");
const predictionData = tf.tidy(() => {
// Capture the frame from the webcam.
const img = this.capture();
const predictions = this.model.predict(img);
// Returns the index with the maximum probability. This number corresponds
// to the class the model thinks is the most probable given the input.
return predictions;
});
const classId = (await predictionData.data());
console.log(classId);
predictionData.dispose();
await tf.nextFrame();
}
}
console.log(classId)
记录在对象下方,而不管摄像机的位置如何。
Float32Array(2) [0.0467529296875, 0.953125]
有人可以帮我理解这里的错误吗?