xxxxxxxxxx
53
let imageModelURL = "https://teachablemachine.withgoogle.com/models/9U4BjgkAd/";
let classifier;
let video;
let flippedVideo;
let label = "";
let confidence = 0;
let x = 0;
let y;
function preload() {
classifier = ml5.imageClassifier(imageModelURL + "model.json");
}
function setup() {
createCanvas(640, 480);
background('darkblue');
y = height / 2;
video = createCapture(VIDEO);
video.size(640, 480);
video.hide();
flippedVideo = ml5.flipImage(video);
classifyVideo();
}
function draw() {
//image(flippedVideo, 0, 0);
if (confidence > 0.7) {
x = (x + 3) % width;
if (label.toLowerCase() === "up" && y > 0) --y;
else if (label.toLowerCase() === "down" && y < height - 1) ++y;
}
fill("white");
noStroke()
circle(x, y, 10);
}
function classifyVideo() {
flippedVideo = ml5.flipImage(video);
classifier.classify(flippedVideo, gotResult);
}
function gotResult(error, results) {
if (error) {
console.error(error);
return;
}
label = results[0].label;
confidence = results[0].confidence;
classifyVideo();
}