xxxxxxxxxx
// Global variable to store the classifier
let classifier;
// Label
let label = 'listening...';
let confidence;
let bitte = 0;
let danke = 0;
let img, img_clap, img_snap; //Piktogramme
// Teachable Machine model URL:
let soundModel = 'https://teachablemachine.withgoogle.com/models/x_NwwYXkj/'; //Teachable Machine
function preload() {
// Load the model
classifier = ml5.soundClassifier(soundModel + 'model.json');
img = loadImage("1F3A4_black.png"); // microphone
img_clap = loadImage("1F44F_black.png"); // bitte
img_snap = loadImage("1F44C_black.png"); // danke
}
function setup() {
createCanvas(windowWidth, windowHeight);
// Start classifying
// The sound model will continuously listen to the microphone
classifier.classify(gotResult);
}
function draw() {
background(200);
// Draw the label in the canvas
fill(255);
imageMode(CENTER);
image(img, width/2, height/2, width/2, height/2);
//textSize(50);
//textAlign(CENTER, CENTER);
//text("Bitte: " + bitte, width / 2, height / 3);
//text("Danke: " + danke, width / 2, height / 2);
}
// The model recognizing a sound will trigger this event
function gotResult(error, results) {
if (error) {
console.error(error);
return;
}
// The results are in an array ordered by confidence.
// console.log(results[0]);
label = results[0].label;
confidence = nf(results[0].confidence, 0, 2);
//print(label + " / " + confidence);
if (label.indexOf("bitte") > -1 && confidence > 0.9) {
img = img_clap; //Piktogramm bitte
print("bitte");
}
//bitte += 1;
else if (label.indexOf("bitte") > -1 && confidence > 0.9) {
img = img_snap; //Piktogramm danke
print("danke");
//danke += 1;
}
}