Error with face-api - Error: toNetInput - expected media to be of type HTMLImageElement

Error with face-api - Error: toNetInput - expected media to be of type HTMLImageElement

我叫 Gabriel,我正在使用 face-api.js 在毕业论文中应用 FaceRecognition。

通过 objective 尝试面 api 并了解其工作原理,我创建了以下 test.js:

import faceapi from "face-api.js";

import * as canvas from 'canvas';
const { Canvas, Image, ImageData } = canvas;
faceapi.env.monkeyPatch({ Canvas, Image, ImageData });

const faceDetectionNet = faceapi.nets.ssdMobilenetv1;
const minConfidence = 0.5;
const faceDetectionOptions = new faceapi.SsdMobilenetv1Options({ minConfidence });

async function runRecognition() {    
    await faceDetectionNet.loadFromDisk('./weights');
    await faceapi.nets.faceLandmark68Net.loadFromDisk('./weights');
    await faceapi.nets.faceRecognitionNet.loadFromDisk('./weights');

    const REFERENCE_IMAGE = './bbt1.jpg';
    const QUERY_IMAGE = './bbt2.jpg';

    const referenceImage = await canvas.default.loadImage(REFERENCE_IMAGE);
    const queryImage = await canvas.default.loadImage(QUERY_IMAGE);

    const detections_ref = await faceapi.detectAllFaces(referenceImage, faceDetectionOptions)
        .withFaceLandmarks()
        .withFaceDescriptors();

    const detections_query = await faceapi.detectAllFaces(queryImage, faceDetectionOptions)
        .withFaceLandmarks()
        .withFaceDescriptors();

    const faceMatcher = new faceapi.FaceMatcher(detections_ref);

    detections_query.forEach(fd => {
        const bestMatch = faceMatcher.findBestMatch(fd.descriptor);
        console.log(bestMatch.toString());
    });
}

runRecognition();

但我无法让它工作...现在,我收到以下错误: “UnhandledPromiseRejectionWarning:错误:toNetInput - 预期媒体类型为 HTMLImageElement | HTMLVideoElement | HTMLCanvasElement | tf.Tensor3D,或为元素 ID 在 C:\Users\gabri\Desktop\TCC\face-api-teste\node_modules\face-api.js\build\commonjs\dom\toNetInput.js:38:35"

有人知道问题出在哪里吗? 我检查了“referenceImage”的类型,它是一个图像而不是 HTMLImageElement(我猜..),所以我正在调查猴子补丁,Idk,也许它不能正常工作。但我可能错了..

感谢帮助

我 post 向 github Face-API 页面发了一个 Issue,在那里我找到了解决方案,所以,如果有人想看:https://github.com/justadudewhohacks/face-api.js/issues/729 感谢您的宝贵时间!