由于某种原因,p5.js库的所有功能都不起作用



我正在尝试使用JavaScript将某种网格应用到网络摄像头视频上。此外,我还想使用P5.js库的方法来保存画布图像。我使用的代码来自:https://github.com/WebDevSimplified/Face-Detection-JavaScript我只是想玩它。当我最初运行这个家伙的代码时,它工作得很好,但正如我所说,我也想使用P5.js库,所以这是我获取该库的index.html。


<html>
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.1.9/p5.js"></script>
<script defer src="face-api.min.js"></script>
<script defer src="script.js"></script>
<style>
body {
margin: 0;
padding: 0;
width: 100vw;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
}
canvas {
position: absolute;
}
</style>
</head>
<body>
<video id="video" width="720" height="560" autoplay muted></video>
</body>
</html>

当我在编辑器中运行代码时,它会说我使用的任何方法(saveCanvas(((都没有定义。我想使用P5库的唯一原因是使用这种方法,因为我需要facemesh图像。有人知道代码错误的原因吗?谢谢!

P5有时会表现得很奇怪,如果你在我的经验中遗漏了标签的一部分。试试这个:

<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.1.9/p5.min.js" integrity="sha512-WIklPM6qPCIp6d3fSSr90j+1unQHUOoWDS4sdTiR8gxUTnyZ8S2Mr8e10sKKJ/bhJgpAa/qG068RDkg6fIlNFA==" crossorigin="anonymous"></script>

您也没有具体说明将P5代码放在哪里。如果你是

  1. 将其直接嵌入HTML的主体中,确保您记住了脚本标记
  2. 将其添加到script.js或face-api.min.js中-我不知道这些脚本的内容,但请尝试删除defer,以便在发生任何DOM事件之前完全加载P5库。如果这不起作用,那么将它们移到body标记中(仍然省略defer(,并将p5库留在head中

最新更新