From 36e0a3310689645965f0c50d9ac65f1dbd58ad94 Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 11:33:19 -0400 Subject: [PATCH 01/22] Init scene for expression tracking. --- emotionTrackingDemos/index.html | 268 ++++++++++++++++++++++++++++++++ 1 file changed, 268 insertions(+) create mode 100644 emotionTrackingDemos/index.html diff --git a/emotionTrackingDemos/index.html b/emotionTrackingDemos/index.html new file mode 100644 index 0000000..86c5db4 --- /dev/null +++ b/emotionTrackingDemos/index.html @@ -0,0 +1,268 @@ + + + + + + Roberto, the iQ3 Robot + + + + + + + +
+ three.js webgl - skinning and morphing
+

+ The animation system allows clips to be played individually, looped, or crossfaded with other clips. This example shows a character looping in one of several base animation states, then transitioning smoothly to one-time actions. Facial expressions are controlled independently with morph targets. +

+ Model by + Tomás Laulhé, + modifications by Don McCurdy. CC0.
+
+ + + + + \ No newline at end of file From 66a04766da77f321f96de220db85989323da5c32 Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 11:33:53 -0400 Subject: [PATCH 02/22] Rename folder for expression tracking. --- {emotionTrackingDemos => expressionTrackingDemos}/index.html | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {emotionTrackingDemos => expressionTrackingDemos}/index.html (100%) diff --git a/emotionTrackingDemos/index.html b/expressionTrackingDemos/index.html similarity index 100% rename from emotionTrackingDemos/index.html rename to expressionTrackingDemos/index.html From 5c3c38559780b8cba035d54d2c23efc9e5b03da3 Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 11:45:00 -0400 Subject: [PATCH 03/22] Add robot model. --- .../models/RobotExpressive.glb | Bin 0 -> 463988 bytes expressionTrackingDemos/{ => robot}/index.html | 4 ++-- expressionTrackingDemos/robot/styles.css | 0 3 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 expressionTrackingDemos/models/RobotExpressive.glb rename expressionTrackingDemos/{ => robot}/index.html (97%) create mode 100644 expressionTrackingDemos/robot/styles.css diff --git a/expressionTrackingDemos/models/RobotExpressive.glb b/expressionTrackingDemos/models/RobotExpressive.glb new file mode 100644 index 0000000000000000000000000000000000000000..6fec9cfb4b41cb319c70d38cf86965aba5630964 GIT binary patch literal 463988 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̰ik@< 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�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 literal 0 HcmV?d00001 diff --git a/expressionTrackingDemos/index.html b/expressionTrackingDemos/robot/index.html similarity index 97% rename from expressionTrackingDemos/index.html rename to expressionTrackingDemos/robot/index.html index 86c5db4..67e9782 100644 --- a/expressionTrackingDemos/index.html +++ b/expressionTrackingDemos/robot/index.html @@ -10,7 +10,7 @@ Roberto, the iQ3 Robot - + @@ -40,229 +24,7 @@ modifications by Don McCurdy. CC0.
- + \ No newline at end of file diff --git a/expressionTrackingDemos/robot/robot.js b/expressionTrackingDemos/robot/robot.js new file mode 100644 index 0000000..8572051 --- /dev/null +++ b/expressionTrackingDemos/robot/robot.js @@ -0,0 +1,220 @@ +import * as THREE from 'https://threejsfundamentals.org/threejs/resources/threejs/r122/build/three.module.js'; + +import Stats from 'https://threejsfundamentals.org/threejs/resources/threejs/r125/examples/jsm/libs/stats.module.js'; +import { GUI } from 'https://threejsfundamentals.org/threejs/resources/threejs/r125/examples/jsm/libs/dat.gui.module.js'; + +import {GLTFLoader} from 'https://threejsfundamentals.org/threejs/resources/threejs/r125/examples/jsm/loaders/GLTFLoader.js'; + +let container, stats, clock, gui, mixer, actions, activeAction, previousAction; +let camera, scene, renderer, model, face; + +const api = { state: 'Walking' }; + +init(); +animate(); + +function init() { + + container = document.createElement( 'div' ); + document.body.appendChild( container ); + + camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 0.25, 100 ); + camera.position.set( - 5, 3, 10 ); + camera.lookAt( new THREE.Vector3( 0, 2, 0 ) ); + + scene = new THREE.Scene(); + scene.background = new THREE.Color( 0xe0e0e0 ); + scene.fog = new THREE.Fog( 0xe0e0e0, 20, 100 ); + + clock = new THREE.Clock(); + + // lights + + const hemiLight = new THREE.HemisphereLight( 0xffffff, 0x444444 ); + hemiLight.position.set( 0, 20, 0 ); + scene.add( hemiLight ); + + const dirLight = new THREE.DirectionalLight( 0xffffff ); + dirLight.position.set( 0, 20, 10 ); + scene.add( dirLight ); + + // ground + + const mesh = new THREE.Mesh( new THREE.PlaneGeometry( 2000, 2000 ), new THREE.MeshPhongMaterial( { color: 0x999999, depthWrite: false } ) ); + mesh.rotation.x = - Math.PI / 2; + scene.add( mesh ); + + const grid = new THREE.GridHelper( 200, 40, 0x000000, 0x000000 ); + grid.material.opacity = 0.2; + grid.material.transparent = true; + scene.add( grid ); + + // model + + const loader = new GLTFLoader(); + loader.load( '../models/RobotExpressive.glb', function ( gltf ) { + + model = gltf.scene; + scene.add( model ); + + createGUI( model, gltf.animations ); + + }, undefined, function ( e ) { + + console.error( e ); + + } ); + + renderer = new THREE.WebGLRenderer( { antialias: true } ); + renderer.setPixelRatio( window.devicePixelRatio ); + renderer.setSize( window.innerWidth, window.innerHeight ); + renderer.outputEncoding = THREE.sRGBEncoding; + container.appendChild( renderer.domElement ); + + window.addEventListener( 'resize', onWindowResize ); + + // stats + stats = new Stats(); + container.appendChild( stats.dom ); + +} + +function createGUI( model, animations ) { + + const states = [ 'Idle', 'Walking', 'Running', 'Dance', 'Death', 'Sitting', 'Standing' ]; + const emotes = [ 'Jump', 'Yes', 'No', 'Wave', 'Punch', 'ThumbsUp' ]; + + gui = new GUI(); + + mixer = new THREE.AnimationMixer( model ); + + actions = {}; + + for ( let i = 0; i < animations.length; i ++ ) { + + const clip = animations[ i ]; + const action = mixer.clipAction( clip ); + actions[ clip.name ] = action; + + if ( emotes.indexOf( clip.name ) >= 0 || states.indexOf( clip.name ) >= 4 ) { + + action.clampWhenFinished = true; + action.loop = THREE.LoopOnce; + + } + + } + + /* STATES = super IMPORTANT for animating the robot! */ + const statesFolder = gui.addFolder( 'States' ); + + const clipCtrl = statesFolder.add( api, 'state' ).options( states ); + + clipCtrl.onChange( function () { + + fadeToAction( api.state, 0.5 ); + + } ); + + statesFolder.open(); + + // emotes + + const emoteFolder = gui.addFolder( 'Emotes' ); + + function createEmoteCallback( name ) { + + api[ name ] = function () { + + fadeToAction( name, 0.2 ); + + mixer.addEventListener( 'finished', restoreState ); + + }; + + emoteFolder.add( api, name ); + + } + + function restoreState() { + + mixer.removeEventListener( 'finished', restoreState ); + + fadeToAction( api.state, 0.2 ); + + } + + for ( let i = 0; i < emotes.length; i ++ ) { + + createEmoteCallback( emotes[ i ] ); + + } + + emoteFolder.open(); + + // expressions + + face = model.getObjectByName( 'Head_4' ); + + const expressions = Object.keys( face.morphTargetDictionary ); + const expressionFolder = gui.addFolder( 'Expressions' ); + + for ( let i = 0; i < expressions.length; i ++ ) { + + expressionFolder.add( face.morphTargetInfluences, i, 0, 1, 0.01 ).name( expressions[ i ] ); + + } + + activeAction = actions[ 'Walking' ]; + activeAction.play(); + + expressionFolder.open(); + +} + +function fadeToAction( name, duration ) { + // TODO: figure out the unit of time on the duration arg + + previousAction = activeAction; + activeAction = actions[ name ]; + + if ( previousAction !== activeAction ) { + + previousAction.fadeOut( duration ); + + } + + activeAction + .reset() + .setEffectiveTimeScale( 1 ) + .setEffectiveWeight( 1 ) + .fadeIn( duration ) + .play(); + +} + +function onWindowResize() { + + camera.aspect = window.innerWidth / window.innerHeight; + camera.updateProjectionMatrix(); + + renderer.setSize( window.innerWidth, window.innerHeight ); + +} + +// + +function animate() { + + const dt = clock.getDelta(); + + if ( mixer ) mixer.update( dt ); + + requestAnimationFrame( animate ); + + renderer.render( scene, camera ); + + stats.update(); + +} + diff --git a/expressionTrackingDemos/robot/styles.css b/expressionTrackingDemos/robot/styles.css index 9d5b3d4..8bed615 100644 --- a/expressionTrackingDemos/robot/styles.css +++ b/expressionTrackingDemos/robot/styles.css @@ -4,7 +4,7 @@ body { margin: 0; - background-color: #000; + background-color: #222; color: #fff; font-family: Monospace; font-size: 13px; @@ -14,7 +14,7 @@ body { } a { - color: rgb(53, 151, 203); + color: #2fa1d6; text-decoration: none; } @@ -27,6 +27,14 @@ button { text-transform: uppercase; } +p { + max-width: 600px; + margin-left: auto; + margin-right: auto; + padding: 0 2em; +} + + #info { position: absolute; top: 0; From c2535edfde6922e118613e4a5c4d3d960b998f5d Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 12:38:32 -0400 Subject: [PATCH 06/22] Init JS for expression tracking. --- .../robot/expressionTracker.js | 41 +++++++++++++++++++ expressionTrackingDemos/robot/index.html | 9 +++- 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 expressionTrackingDemos/robot/expressionTracker.js diff --git a/expressionTrackingDemos/robot/expressionTracker.js b/expressionTrackingDemos/robot/expressionTracker.js new file mode 100644 index 0000000..b198df0 --- /dev/null +++ b/expressionTrackingDemos/robot/expressionTracker.js @@ -0,0 +1,41 @@ +/* The following script was modified from a project originally + * created by Aniket Eknath Kudale: + * https://www.opensourceforu.com/2020/06/building-a-facial-expression-recognition-app-using-tensorflow-js/ + */ + +import * as faceapi from "https://cdn.jsdelivr.net/gh/justadudewhohacks/face-api.js/dist/face-api.min.js"; + +// A: Laod in the neural net for identifying and analyzing faces +Promise.all([ + faceapi.nets.tinyFaceDetector.loadFromUri('/models'), + faceapi.nets.faceLandmark68Net.loadFromUri('/models'), + faceapi.nets.faceRecognitionNet.loadFromUri('/models'), + faceapi.nets.faceExpressionNet.loadFromUri('/models') +]).then(startVideo); + +function startVideo() { + /* Turns on the webcam + * TODO: make sure to ask the user for consent! + */ + navigator.getUserMedia({ video: {} }, + stream => video.srcObject = stream, + err => console.error(err) + ); +} + +video.addEventListener('play', () => { + // Continuously animate the robot w/ expressions found on the user + // const canvas = faceapi.createCanvasFromMedia(video) + // document.body.append(canvas) + // const displaySize = { width: video.width, height: video.height } + // faceapi.matchDimensions(canvas, displaySize) + setInterval(async() => { + const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceExpressions(); + console.log(detections); + // const resizedDetections = faceapi.resizeResults(detections, displaySize) + // canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height) + // faceapi.draw.drawDetections(canvas, resizedDetections) + // faceapi.draw.drawFaceLandmarks(canvas, resizedDetections) + // faceapi.draw.drawFaceExpressions(canvas, resizedDetections) + }, 100) +}) \ No newline at end of file diff --git a/expressionTrackingDemos/robot/index.html b/expressionTrackingDemos/robot/index.html index 788523d..08fdff0 100644 --- a/expressionTrackingDemos/robot/index.html +++ b/expressionTrackingDemos/robot/index.html @@ -10,10 +10,14 @@ Roberto, the iQ3 Robot + + + +
three.js webgl - skinning and morphing

@@ -23,8 +27,9 @@ Tomás Laulhé, modifications by Don McCurdy. CC0.

- + - + + \ No newline at end of file From 6d6d3da7e73bdb87dc898dbf3a2f275e9d367aa1 Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 14:06:33 -0400 Subject: [PATCH 07/22] List face-api as dependency. --- .../robot/expressionTracker.js | 28 ++--- expressionTrackingDemos/robot/index.html | 4 +- package-lock.json | 107 ++++++++++++++++-- package.json | 3 + 4 files changed, 115 insertions(+), 27 deletions(-) diff --git a/expressionTrackingDemos/robot/expressionTracker.js b/expressionTrackingDemos/robot/expressionTracker.js index b198df0..6edc8ab 100644 --- a/expressionTrackingDemos/robot/expressionTracker.js +++ b/expressionTrackingDemos/robot/expressionTracker.js @@ -3,7 +3,7 @@ * https://www.opensourceforu.com/2020/06/building-a-facial-expression-recognition-app-using-tensorflow-js/ */ -import * as faceapi from "https://cdn.jsdelivr.net/gh/justadudewhohacks/face-api.js/dist/face-api.min.js"; +import "https://cdn.jsdelivr.net/gh/justadudewhohacks/face-api.js/dist/face-api.js"; // A: Laod in the neural net for identifying and analyzing faces Promise.all([ @@ -23,19 +23,13 @@ function startVideo() { ); } -video.addEventListener('play', () => { - // Continuously animate the robot w/ expressions found on the user - // const canvas = faceapi.createCanvasFromMedia(video) - // document.body.append(canvas) - // const displaySize = { width: video.width, height: video.height } - // faceapi.matchDimensions(canvas, displaySize) - setInterval(async() => { - const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceExpressions(); - console.log(detections); - // const resizedDetections = faceapi.resizeResults(detections, displaySize) - // canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height) - // faceapi.draw.drawDetections(canvas, resizedDetections) - // faceapi.draw.drawFaceLandmarks(canvas, resizedDetections) - // faceapi.draw.drawFaceExpressions(canvas, resizedDetections) - }, 100) -}) \ No newline at end of file + +setInterval(async() => { + const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceExpressions(); + console.log(detections); + // const resizedDetections = faceapi.resizeResults(detections, displaySize) + // canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height) + // faceapi.draw.drawDetections(canvas, resizedDetections) + // faceapi.draw.drawFaceLandmarks(canvas, resizedDetections) + // faceapi.draw.drawFaceExpressions(canvas, resizedDetections) +}, 100); \ No newline at end of file diff --git a/expressionTrackingDemos/robot/index.html b/expressionTrackingDemos/robot/index.html index 08fdff0..537c359 100644 --- a/expressionTrackingDemos/robot/index.html +++ b/expressionTrackingDemos/robot/index.html @@ -13,7 +13,7 @@ - + @@ -30,6 +30,6 @@ - + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index df3b3ba..3b4b47c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,9 @@ "@tensorflow/tfjs-backend-cpu": "^3.3.0", "fingerpose": "^0.0.2", "handsfree": "^8.0.8" + }, + "devDependencies": { + "face-api.js": "^0.22.2" } }, "node_modules/@tensorflow/tfjs-backend-cpu": { @@ -48,8 +51,7 @@ "node_modules/@types/offscreencanvas": { "version": "2019.3.0", "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.3.0.tgz", - "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==", - "peer": true + "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==" }, "node_modules/@types/seedrandom": { "version": "2.4.27", @@ -59,8 +61,49 @@ "node_modules/@types/webgl-ext": { "version": "0.0.30", "resolved": "https://registry.npmjs.org/@types/webgl-ext/-/webgl-ext-0.0.30.tgz", - "integrity": "sha512-LKVgNmBxN0BbljJrVUwkxwRYqzsAEPcZOe6S2T6ZaBDIrFp0qu4FNlpc5sM1tGbXUYFgdVQIoeLk1Y1UoblyEg==", - "peer": true + "integrity": "sha512-LKVgNmBxN0BbljJrVUwkxwRYqzsAEPcZOe6S2T6ZaBDIrFp0qu4FNlpc5sM1tGbXUYFgdVQIoeLk1Y1UoblyEg==" + }, + "node_modules/@types/webgl2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@types/webgl2/-/webgl2-0.0.4.tgz", + "integrity": "sha512-PACt1xdErJbMUOUweSrbVM7gSIYm1vTncW2hF6Os/EeWi6TXYAYMPp+8v6rzHmypE5gHrxaxZNXgMkJVIdZpHw==", + "dev": true + }, + "node_modules/face-api.js": { + "version": "0.22.2", + "resolved": "https://registry.npmjs.org/face-api.js/-/face-api.js-0.22.2.tgz", + "integrity": "sha512-9Bbv/yaBRTKCXjiDqzryeKhYxmgSjJ7ukvOvEBy6krA0Ah/vNBlsf7iBNfJljWiPA8Tys1/MnB3lyP2Hfmsuyw==", + "dev": true, + "dependencies": { + "@tensorflow/tfjs-core": "1.7.0", + "tslib": "^1.11.1" + } + }, + "node_modules/face-api.js/node_modules/@tensorflow/tfjs-core": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-1.7.0.tgz", + "integrity": "sha512-uwQdiklNjqBnHPeseOdG0sGxrI3+d6lybaKu2+ou3ajVeKdPEwpWbgqA6iHjq1iylnOGkgkbbnQ6r2lwkiIIHw==", + "dev": true, + "dependencies": { + "@types/offscreencanvas": "~2019.3.0", + "@types/seedrandom": "2.4.27", + "@types/webgl-ext": "0.0.30", + "@types/webgl2": "0.0.4", + "node-fetch": "~2.1.2", + "seedrandom": "2.4.3" + }, + "engines": { + "yarn": ">= 1.3.2" + } + }, + "node_modules/face-api.js/node_modules/node-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz", + "integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=", + "dev": true, + "engines": { + "node": "4.x || >=6.0.0" + } }, "node_modules/fingerpose": { "version": "0.0.2", @@ -99,6 +142,12 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-2.4.3.tgz", "integrity": "sha1-JDhQTa0zkXMUv/GKxNeU8W1qrsw=" + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } }, "dependencies": { @@ -127,8 +176,7 @@ "@types/offscreencanvas": { "version": "2019.3.0", "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.3.0.tgz", - "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==", - "peer": true + "integrity": "sha512-esIJx9bQg+QYF0ra8GnvfianIY8qWB0GBx54PK5Eps6m+xTj86KLavHv6qDhzKcu5UUOgNfJ2pWaIIV7TRUd9Q==" }, "@types/seedrandom": { "version": "2.4.27", @@ -138,8 +186,45 @@ "@types/webgl-ext": { "version": "0.0.30", "resolved": "https://registry.npmjs.org/@types/webgl-ext/-/webgl-ext-0.0.30.tgz", - "integrity": "sha512-LKVgNmBxN0BbljJrVUwkxwRYqzsAEPcZOe6S2T6ZaBDIrFp0qu4FNlpc5sM1tGbXUYFgdVQIoeLk1Y1UoblyEg==", - "peer": true + "integrity": "sha512-LKVgNmBxN0BbljJrVUwkxwRYqzsAEPcZOe6S2T6ZaBDIrFp0qu4FNlpc5sM1tGbXUYFgdVQIoeLk1Y1UoblyEg==" + }, + "@types/webgl2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/@types/webgl2/-/webgl2-0.0.4.tgz", + "integrity": "sha512-PACt1xdErJbMUOUweSrbVM7gSIYm1vTncW2hF6Os/EeWi6TXYAYMPp+8v6rzHmypE5gHrxaxZNXgMkJVIdZpHw==", + "dev": true + }, + "face-api.js": { + "version": "0.22.2", + "resolved": "https://registry.npmjs.org/face-api.js/-/face-api.js-0.22.2.tgz", + "integrity": "sha512-9Bbv/yaBRTKCXjiDqzryeKhYxmgSjJ7ukvOvEBy6krA0Ah/vNBlsf7iBNfJljWiPA8Tys1/MnB3lyP2Hfmsuyw==", + "dev": true, + "requires": { + "@tensorflow/tfjs-core": "1.7.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "@tensorflow/tfjs-core": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@tensorflow/tfjs-core/-/tfjs-core-1.7.0.tgz", + "integrity": "sha512-uwQdiklNjqBnHPeseOdG0sGxrI3+d6lybaKu2+ou3ajVeKdPEwpWbgqA6iHjq1iylnOGkgkbbnQ6r2lwkiIIHw==", + "dev": true, + "requires": { + "@types/offscreencanvas": "~2019.3.0", + "@types/seedrandom": "2.4.27", + "@types/webgl-ext": "0.0.30", + "@types/webgl2": "0.0.4", + "node-fetch": "~2.1.2", + "seedrandom": "2.4.3" + } + }, + "node-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.1.2.tgz", + "integrity": "sha1-q4hOjn5X44qUR1POxwb3iNF2i7U=", + "dev": true + } + } }, "fingerpose": { "version": "0.0.2", @@ -175,6 +260,12 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-2.4.3.tgz", "integrity": "sha1-JDhQTa0zkXMUv/GKxNeU8W1qrsw=" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true } } } diff --git a/package.json b/package.json index a075930..7960d7f 100644 --- a/package.json +++ b/package.json @@ -20,5 +20,8 @@ "@tensorflow/tfjs-backend-cpu": "^3.3.0", "fingerpose": "^0.0.2", "handsfree": "^8.0.8" + }, + "devDependencies": { + "face-api.js": "^0.22.2" } } From 3b77d6ebd8fda285b3085a75e0443e2fa5920f0d Mon Sep 17 00:00:00 2001 From: = Date: Sun, 11 Apr 2021 14:22:09 -0400 Subject: [PATCH 08/22] Add weights for face recongnition models. --- .../robot/expressionTracker.js | 39 +++++++++++------- .../weights/face_expression_model-shard1 | Bin 0 -> 329468 bytes ...ace_expression_model-weights_manifest.json | 1 + .../weights/face_landmark_68_model-shard1 | Bin 0 -> 356840 bytes ...ce_landmark_68_model-weights_manifest.json | 1 + .../face_landmark_68_tiny_model-shard1 | Bin 0 -> 77224 bytes ...ndmark_68_tiny_model-weights_manifest.json | 1 + .../weights/face_recognition_model-shard1 | Bin 0 -> 4194304 bytes .../weights/face_recognition_model-shard2 | 6 +++ ...ce_recognition_model-weights_manifest.json | 1 + .../weights/tiny_face_detector_model-shard1 | Bin 0 -> 193321 bytes ..._face_detector_model-weights_manifest.json | 1 + 12 files changed, 34 insertions(+), 16 deletions(-) create mode 100644 expressionTrackingDemos/robot/weights/face_expression_model-shard1 create mode 100644 expressionTrackingDemos/robot/weights/face_expression_model-weights_manifest.json create mode 100644 expressionTrackingDemos/robot/weights/face_landmark_68_model-shard1 create mode 100644 expressionTrackingDemos/robot/weights/face_landmark_68_model-weights_manifest.json create mode 100644 expressionTrackingDemos/robot/weights/face_landmark_68_tiny_model-shard1 create mode 100644 expressionTrackingDemos/robot/weights/face_landmark_68_tiny_model-weights_manifest.json create mode 100644 expressionTrackingDemos/robot/weights/face_recognition_model-shard1 create mode 100644 expressionTrackingDemos/robot/weights/face_recognition_model-shard2 create mode 100644 expressionTrackingDemos/robot/weights/face_recognition_model-weights_manifest.json create mode 100644 expressionTrackingDemos/robot/weights/tiny_face_detector_model-shard1 create mode 100644 expressionTrackingDemos/robot/weights/tiny_face_detector_model-weights_manifest.json diff --git a/expressionTrackingDemos/robot/expressionTracker.js b/expressionTrackingDemos/robot/expressionTracker.js index 6edc8ab..2847bcd 100644 --- a/expressionTrackingDemos/robot/expressionTracker.js +++ b/expressionTrackingDemos/robot/expressionTracker.js @@ -4,32 +4,39 @@ */ import "https://cdn.jsdelivr.net/gh/justadudewhohacks/face-api.js/dist/face-api.js"; +// import * as neuralNets from "https://cdn.jsdelivr.net/gh/justadudewhohacks/face-api.js/weights"; // A: Laod in the neural net for identifying and analyzing faces Promise.all([ - faceapi.nets.tinyFaceDetector.loadFromUri('/models'), - faceapi.nets.faceLandmark68Net.loadFromUri('/models'), - faceapi.nets.faceRecognitionNet.loadFromUri('/models'), - faceapi.nets.faceExpressionNet.loadFromUri('/models') + faceapi.nets.tinyFaceDetector.loadFromUri('./weights'), + faceapi.nets.faceLandmark68Net.loadFromUri('./weights'), + faceapi.nets.faceRecognitionNet.loadFromUri('./weights'), + faceapi.nets.faceExpressionNet.loadFromUri('./weights') ]).then(startVideo); function startVideo() { /* Turns on the webcam * TODO: make sure to ask the user for consent! */ - navigator.getUserMedia({ video: {} }, + navigator.mediaDevices.getUserMedia({ video: {} }, stream => video.srcObject = stream, err => console.error(err) - ); + ).then(trackExpressions(video)); } - -setInterval(async() => { - const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceExpressions(); - console.log(detections); - // const resizedDetections = faceapi.resizeResults(detections, displaySize) - // canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height) - // faceapi.draw.drawDetections(canvas, resizedDetections) - // faceapi.draw.drawFaceLandmarks(canvas, resizedDetections) - // faceapi.draw.drawFaceExpressions(canvas, resizedDetections) -}, 100); \ No newline at end of file +const trackExpressions = () => { + // Continuously animate the robot w/ expressions found on the user + // const canvas = faceapi.createCanvasFromMedia(video) + // document.body.append(canvas) + // const displaySize = { width: video.width, height: video.height } + // faceapi.matchDimensions(canvas, displaySize) + setInterval(async() => { + const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceExpressions(); + console.log(detections); + // const resizedDetections = faceapi.resizeResults(detections, displaySize) + // canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height) + // faceapi.draw.drawDetections(canvas, resizedDetections) + // faceapi.draw.drawFaceLandmarks(canvas, resizedDetections) + // faceapi.draw.drawFaceExpressions(canvas, resizedDetections) + }, 100); +} \ No newline at end of file diff --git a/expressionTrackingDemos/robot/weights/face_expression_model-shard1 b/expressionTrackingDemos/robot/weights/face_expression_model-shard1 new file mode 100644 index 0000000000000000000000000000000000000000..619cdf6d46e8757999a250616782ddb3e25c6504 GIT binary patch literal 329468 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