Skip to content

Commit 84ec126

Browse files
age gender recognition nodejs example
1 parent 731e34f commit 84ec126

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import * as faceapi from 'face-api.js';
2+
3+
import { canvas, faceDetectionNet, faceDetectionOptions, saveFile } from './commons';
4+
5+
async function run() {
6+
7+
await faceDetectionNet.loadFromDisk('../../weights')
8+
await faceapi.nets.faceLandmark68Net.loadFromDisk('../../weights')
9+
await faceapi.nets.ageGenderNet.loadFromDisk('../../weights')
10+
11+
const img = await canvas.loadImage('../images/bbt1.jpg')
12+
const results = await faceapi.detectAllFaces(img, faceDetectionOptions)
13+
.withFaceLandmarks()
14+
.withAgeAndGender()
15+
16+
const out = faceapi.createCanvasFromMedia(img) as any
17+
faceapi.draw.drawDetections(out, results.map(res => res.detection))
18+
results.forEach(result => {
19+
const { age, gender, genderProbability } = result
20+
new faceapi.draw.DrawTextField(
21+
[
22+
`${faceapi.round(age, 0)} years`,
23+
`${gender} (${faceapi.round(genderProbability)})`
24+
],
25+
result.detection.box.bottomLeft
26+
).draw(out)
27+
})
28+
29+
saveFile('ageAndGenderRecognition.jpg', out.toBuffer('image/jpeg'))
30+
console.log('done, saved results to out/ageAndGenderRecognition.jpg')
31+
}
32+
33+
run()

examples/examples-nodejs/faceExpressionRecognition.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@ import { canvas, faceDetectionNet, faceDetectionOptions, saveFile } from './comm
55
async function run() {
66

77
await faceDetectionNet.loadFromDisk('../../weights')
8+
await faceapi.nets.faceLandmark68Net.loadFromDisk('../../weights')
89
await faceapi.nets.faceExpressionNet.loadFromDisk('../../weights')
910

1011
const img = await canvas.loadImage('../images/surprised.jpg')
1112
const results = await faceapi.detectAllFaces(img, faceDetectionOptions)
13+
.withFaceLandmarks()
1214
.withFaceExpressions()
1315

1416
const out = faceapi.createCanvasFromMedia(img) as any

0 commit comments

Comments
 (0)