我只是个初学者,但我得在学校用这个。因此,我使用了一个名为ml5.js的JavaScript库,它使用机器学习来检测您正在说的单词,并显示在屏幕上,数据库中只有18个单词。我用这个作为起点,但没有走多远。
例如,当你说“左”这个词时,左显示在屏幕上,但当它出现时,我想console.log‘好乐趣’。经过几个小时的努力,我想不出答案,所以我希望有人能帮我。
所以我希望如果resultP.html(results.label) = 'left‘,那么console.log 'Good乐趣’
这个平台是新的,但是下面是我的代码:
<!DOCTYPE html>
<html>
*head*
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/p5.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/addons/p5.dom.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/addons/p5.sound.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
<meta charset="utf-8" />
<script src="https://unpkg.com/ml5@0.3.1/dist/ml5.min.js"></script>
</head>
*body*
<script src="sketch.js"></script>
</body>
</html>CSS
html, body
{
margin: 0;
padding: 0;
background-color: #FFF;
}
canvas {
display: block;
}Javascript
console.log ('ml5 version:', ml5.version)
let soundClassifier;
var resultP;
function preload() {
let options = { probabilityThreshold: 0.94 };
soundClassifier = ml5.soundClassifier('SpeechCommands18w', options);
}
function setup() {
createCanvas(400, 400);
resultP = createP('waiting...');
resultP.style('font-size','32pt');
soundClassifier.classify(gotResults);
}
function gotResults(error, results) {
if (error) {
console.log('something went wrong');
console.error(error);
}
resultP.html(results[0].label);
console.log (results[0].label)
}
function good (){
if (resultP.html(results[0].label) == 'left') {
console.log ('good fun')
}
}所以我希望如果resultP.html(results.label) = 'left‘,那么console.log 'Good乐趣’
我希望有人能帮忙
发布于 2020-06-06 21:58:55
我觉得你真的很接近了!只需从gotResults()函数内部调用如下图所示的good()函数:
console.log ('ml5 version:', ml5.version)
let soundClassifier;
var resultP;
function preload() {
let options = { probabilityThreshold: 0.94 };
soundClassifier = ml5.soundClassifier('SpeechCommands18w', options);
}
function setup() {
createCanvas(400, 400);
resultP = createP('waiting...');
resultP.style('font-size','32pt');
soundClassifier.classify(gotResults);
}
function gotResults(error, results) {
if (error) {
console.log('something went wrong');
console.error(error);
}
resultP.html(results[0].label);
console.log (results[0].label);
good(results[0].label);
}
function good (label){
if (label) === 'left') {
console.log ('good fun')
}
}
https://stackoverflow.com/questions/62238468
复制相似问题