xxxxxxxxxx
67
let video;
let bild_left;
let bild_right;
let glasses;
let classifier;
let result;
let mySound;
let mover = -100;
let posenet;
let poses = [];
function preload(){
bild_left = loadImage("bild.png");
bild_right = loadImage("bild_right.png");
glasses = loadImage("glasses.png")
classifier = ml5.imageClassifier('https://teachablemachine.withgoogle.com/models/njJSdhAOZ/' + 'model.json');
mySound = loadSound('sound.wav');
}
function setup() {
createCanvas(640, 480);
video = createCapture(VIDEO);
video.hide();
classifier.classify(video, gotResults)
posenet = ml5.poseNet(video, poseNetLoaded)
posenet.on('pose', poseGotResults);
}
function draw() {
mover++;
if (mover > height - 300){
mover = -100;
}
background(100);
image(video,0,0);
if(result == "Weg"){
if(!mySound.isPlaying()){
mySound.play()
}
image(bild_left,0,100,300,400)
image(bild_right,400,100,300,400)
if(poses.length > 0){
push()
imageMode(CENTER)
let nose = poses[0].pose.keypoints[0].position;
let leftEar = poses[0].pose.keypoints[3].position;
let rightEar = poses[0].pose.keypoints[4].position;
image(glasses, nose.x, mover, dist(leftEar.x, leftEar.y, rightEar.x,rightEar.y)*1.5,dist(leftEar.x, leftEar.y, rightEar.x,rightEar.y)/1.3)
pop()
}
}
else{
mySound.pause()
}
}
function poseNetLoaded(){
console.log("Model Loaded!")
}
function poseGotResults(results){
// console.log(results)
poses = results;
}
function gotResults(error,results){
result = results[0].label;
classifier.classify(video, gotResults)
}