Giter VIP home page Giter VIP logo

Comments (9)

justadudewhohacks avatar justadudewhohacks commented on May 12, 2024 1

Hi,

faceapi.allFacesMtcnn returns a Promise. You forgot the await keyword: (await faceapi.allFacesMtcnn(videoEl, mtcnnParams)).map(...).

from face-api.js.

justadudewhohacks avatar justadudewhohacks commented on May 12, 2024 1

You could use multiple images to compute reference descriptors and then compute the average of the euclidean distances between all reference descriptors and a input descriptor.

Usually, you should already get quite good results using a single image only. Can you share the image/s you are using as reference and the images of the faces, you are trying to recognize.

from face-api.js.

chtsngn avatar chtsngn commented on May 12, 2024 1

Ok. Thanks for help.

from face-api.js.

chtsngn avatar chtsngn commented on May 12, 2024

@justadudewhohacks thanks, it's working. But there is another problem.

Uncaught (in promise)

Event {isTrusted: true, type: "error", target: null, currentTarget: null, eventPhase: 0, …}

I guess, I forgot one more place.

photofacefun_com_1533893018

from face-api.js.

justadudewhohacks avatar justadudewhohacks commented on May 12, 2024

This could be caused by anything. Could you show me the line, where this error is thrown.

from face-api.js.

chtsngn avatar chtsngn commented on May 12, 2024

I solved this. The path to the Images folder isn't correct.

Last question; How can i train recognition? I took 10 images (from web camera). But, distance value changes between 0.6 - 0.7.

from face-api.js.

thirukumars avatar thirukumars commented on May 12, 2024

script2.js:17 Uncaught (in promise) TypeError: fd.forSize is not a function
at script2.js:17
at Array.map ()
at onPlay (script2.js:17)

from face-api.js.

thirukumars avatar thirukumars commented on May 12, 2024



this is html code

from face-api.js.

thirukumars avatar thirukumars commented on May 12, 2024

and the script is

$(document).ready(function() {
run()
})

async function onPlay(videoEl) {
if(videoEl.paused || videoEl.ended || !modelLoaded)
return false;
let minFaceSize = 200;
const { width, height } = faceapi.getMediaDimensions(videoEl);
const canvas = document.getElementById('inputVideo');
canvas.width = width;
canvas.height = height;
const mtcnnParams = {
minFaceSize
};
const fullFaceDescriptions = (await faceapi.allFacesMtcnn(videoEl, mtcnnParams)).map(fd => fd.forSize(width, height));
fullFaceDescriptions.forEach(({ detection, landmarks, descriptor }) => {
faceapi.drawDetection('overlay', [detection], { withScore: false });
faceapi.drawLandmarks('overlay', landmarks.forSize(width, height), { lineWidth: 4, color: 'red' });
// const bestMatch = getBestMatch(trainDescriptorsByClass, descriptor);
// const text = ${bestMatch.distance < maxDistance ? bestMatch.className : 'unkown'} (${bestMatch.distance});
// const { x, y, height: boxHeight } = detection.getBox();
faceapi.drawText(
canvas.getContext('2d'),
x,
y + boxHeight,
text,
Object.assign(faceapi.getDefaultDrawOptions(), { color: 'red', fontSize: 16 })
)
});
setTimeout(() => onPlay(videoEl), 150);
};
async function run() {
await faceapi.loadMtcnnModel("/models");
await faceapi.loadFaceRecognitionModel("/models");
// trainDescriptorsByClass = initTrainDescriptorsByClass(faceapi.recognitionNet);
modelLoaded = true;
const videoEl = document.getElementById('inputVideo');
navigator.getUserMedia(
{ video: {} },
stream => videoEl.srcObject = stream,
err => console.error(err)
);
this.onPlay(videoEl);
}

from face-api.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.