diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b8d7f32..17191ac5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ ### **HEAD -> main** 2022/08/15 mandic00@live.com +- add tensorflow library detection +- fix wasm detection - enumerate additional models - release refresh diff --git a/TODO.md b/TODO.md index b3cc4c3e..1290f357 100644 --- a/TODO.md +++ b/TODO.md @@ -63,8 +63,8 @@ Model is supported using `WebGL` backend in browser - Host models in Models can be directly used without downloading to local storage Example: `modelPath: 'https://vladmandic.github.io/human-models/models/facemesh.json'` -- Host models in **Google Cloud Bucket** - Models can be directly used without downloading to local storage +- Allow hosting models in **Google Cloud Bucket** + Hosted models can be directly used without downloading to local storage Example: `modelPath: 'https://storage.googleapis.com/human-models/facemesh.json'` - Fix **MobileFaceNet** model as alternative for face embedding/descriptor detection Configurable using `config.face.mobilefacenet` config section diff --git a/package.json b/package.json index e8cedc14..23b3abc0 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "node-webcam": "^0.8.1" }, "devDependencies": { - "@microsoft/api-extractor": "^7.29.2", + "@microsoft/api-extractor": "^7.29.3", "@tensorflow/tfjs": "^3.19.0", "@tensorflow/tfjs-backend-cpu": "^3.19.0", "@tensorflow/tfjs-backend-wasm": "^3.19.0", @@ -79,15 +79,15 @@ "@tensorflow/tfjs-node": "^3.19.0", "@tensorflow/tfjs-node-gpu": "^3.19.0", "@tensorflow/tfjs-tflite": "0.0.1-alpha.8", - "@types/node": "^18.7.4", + "@types/node": "^18.7.6", "@types/offscreencanvas": "^2019.7.0", - "@typescript-eslint/eslint-plugin": "^5.33.0", - "@typescript-eslint/parser": "^5.33.0", - "@vladmandic/build": "^0.7.9", + "@typescript-eslint/eslint-plugin": "^5.33.1", + "@typescript-eslint/parser": "^5.33.1", + "@vladmandic/build": "^0.7.10", "@vladmandic/pilogger": "^0.4.6", "@vladmandic/tfjs": "github:vladmandic/tfjs", "@webgpu/types": "^0.1.21", - "esbuild": "^0.15.3", + "esbuild": "^0.15.5", "eslint": "8.22.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-plugin-html": "^7.1.0", diff --git a/test/browser.html b/test/browser.html index 29a44068..5c1ebb58 100644 --- a/test/browser.html +++ b/test/browser.html @@ -14,10 +14,10 @@ @font-face { font-family: 'Lato'; font-display: swap; font-style: normal; font-weight: 100; src: local('Lato'), url('../../assets/lato-light.woff2') } html { font-family: 'Lato', 'Segoe UI'; font-size: 14px; font-variant: small-caps; } body { margin: 0; background: black; color: white; width: 100vw; overflow-x: hidden; } - .canvas { position: absolute; bottom: 10px; right: 10px; width: 256px; height: 256px; z-index: 99; } + .canvas { position: fixed; bottom: 10px; right: 10px; width: 256px; height: 256px; z-index: 99; } + .events { position: fixed; top: 10px; right: 10px; width: 12rem; height: 1.25rem; background-color: grey; padding: 8px; z-index: 99; } + .state { position: fixed; top: 60px; right: 10px; width: 12rem; height: 1.25rem; background-color: grey; padding: 8px; z-index: 99; } .pre { line-height: 150%; white-space: break-spaces; } - .events { position: absolute; top: 10px; right: 10px; width: 12rem; height: 1.25rem; background-color: grey; padding: 8px; z-index: 99; } - .state { position: absolute; top: 60px; right: 10px; width: 12rem; height: 1.25rem; background-color: grey; padding: 8px; z-index: 99; } @@ -56,7 +56,7 @@ const ts = `${dt.getHours().toString().padStart(2, '0')}:${dt.getMinutes().toString().padStart(2, '0')}:${dt.getSeconds().toString().padStart(2, '0')}.${dt.getMilliseconds().toString().padStart(3, '0')}`; const elap = (dt - last).toString().padStart(5, '0'); document.getElementById('log').innerHTML += ts + ' +' + elap + 'ms  ' + str(false, ...msgs); - document.documentElement.scrollTop = document.documentElement.scrollHeight + document.documentElement.scrollTop = document.documentElement.scrollHeight; console.log(ts, elap, ...msgs); // eslint-disable-line no-console last = dt; } @@ -66,7 +66,7 @@ const ts = `${dt.getHours().toString().padStart(2, '0')}:${dt.getMinutes().toString().padStart(2, '0')}:${dt.getSeconds().toString().padStart(2, '0')}.${dt.getMilliseconds().toString().padStart(3, '0')}`; const elap = (dt - last).toString().padStart(5, '0'); document.getElementById('log').innerHTML += ts + ' +' + elap + 'ms  ' + str(true, ...msgs); - document.documentElement.scrollTop = document.documentElement.scrollHeight + document.documentElement.scrollTop = document.documentElement.scrollHeight; console.log(ts, elap, ...msgs); // eslint-disable-line no-console last = dt; } diff --git a/test/browser.sh b/test/browser.sh new file mode 100755 index 00000000..ba4d77a8 --- /dev/null +++ b/test/browser.sh @@ -0,0 +1,2 @@ +#!/bin/sh +"/mnt/c/Users/mandi/AppData/Local/Google/Chrome SxS/Application/chrome.exe" --enable-unsafe-gpu --allow-insecure-localhost --auto-open-devtools-for-tabs https://localhost:10031/test/browser.html diff --git a/test/build.log b/test/build.log index 39d52c95..86090847 100644 --- a/test/build.log +++ b/test/build.log @@ -1,39 +1,39 @@ -2022-08-15 11:36:04 DATA:  Build {"name":"@vladmandic/human","version":"2.9.3"} -2022-08-15 11:36:04 INFO:  Application: {"name":"@vladmandic/human","version":"2.9.3"} -2022-08-15 11:36:04 INFO:  Environment: {"profile":"production","config":".build.json","package":"package.json","tsconfig":true,"eslintrc":true,"git":true} -2022-08-15 11:36:04 INFO:  Toolchain: {"build":"0.7.9","esbuild":"0.15.3","typescript":"4.7.4","typedoc":"0.23.10","eslint":"8.22.0"} -2022-08-15 11:36:04 INFO:  Build: {"profile":"production","steps":["clean","compile","typings","typedoc","lint","changelog"]} -2022-08-15 11:36:04 STATE: Clean: {"locations":["dist/*","types/lib/*","typedoc/*"]} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":608} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":75,"inputBytes":655451,"outputBytes":307474} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":612} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":75,"inputBytes":655455,"outputBytes":307478} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":664} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":75,"inputBytes":655507,"outputBytes":307528} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1069,"outputBytes":358} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":1032,"outputBytes":583} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":75,"inputBytes":655426,"outputBytes":306323} -2022-08-15 11:36:04 STATE: Compile: {"name":"tfjs/browser/esm/custom","format":"esm","platform":"browser","input":"tfjs/tf-custom.ts","output":"dist/tfjs.esm.js","files":11,"inputBytes":1271,"outputBytes":2787569} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":75,"inputBytes":3442412,"outputBytes":1669183} -2022-08-15 11:36:04 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":75,"inputBytes":3442412,"outputBytes":3073108} -2022-08-15 11:36:09 STATE: Typings: {"input":"src/human.ts","output":"types/lib","files":30} -2022-08-15 11:36:11 STATE: TypeDoc: {"input":"src/human.ts","output":"typedoc","objects":77,"generated":true} -2022-08-15 11:36:11 STATE: Compile: {"name":"demo/typescript","format":"esm","platform":"browser","input":"demo/typescript/index.ts","output":"demo/typescript/index.js","files":1,"inputBytes":6716,"outputBytes":3141} -2022-08-15 11:36:11 STATE: Compile: {"name":"demo/faceid","format":"esm","platform":"browser","input":"demo/faceid/index.ts","output":"demo/faceid/index.js","files":2,"inputBytes":15629,"outputBytes":7798} -2022-08-15 11:36:19 STATE: Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":109,"errors":0,"warnings":0} -2022-08-15 11:36:19 STATE: ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"} -2022-08-15 11:36:19 STATE: Copy: {"input":"tfjs/tfjs.esm.d.ts"} -2022-08-15 11:36:19 INFO:  Done... -2022-08-15 11:36:20 STATE: API-Extractor: {"succeeeded":true,"errors":0,"warnings":198} -2022-08-15 11:36:20 STATE: Copy: {"input":"types/human.d.ts"} -2022-08-15 11:36:20 INFO:  Analyze models: {"folders":8,"result":"models/models.json"} -2022-08-15 11:36:20 STATE: Models {"folder":"./models","models":13} -2022-08-15 11:36:20 STATE: Models {"folder":"../human-models/models","models":42} -2022-08-15 11:36:20 STATE: Models {"folder":"../blazepose/model/","models":4} -2022-08-15 11:36:20 STATE: Models {"folder":"../anti-spoofing/model","models":1} -2022-08-15 11:36:20 STATE: Models {"folder":"../efficientpose/models","models":3} -2022-08-15 11:36:20 STATE: Models {"folder":"../insightface/models","models":5} -2022-08-15 11:36:20 STATE: Models {"folder":"../movenet/models","models":3} -2022-08-15 11:36:20 STATE: Models {"folder":"../nanodet/models","models":4} -2022-08-15 11:36:20 STATE: Models: {"count":57,"totalSize":383017442} -2022-08-15 11:36:20 INFO:  Human Build complete... {"logFile":"test/build.log"} +2022-08-19 09:12:22 DATA:  Build {"name":"@vladmandic/human","version":"2.9.3"} +2022-08-19 09:12:22 INFO:  Application: {"name":"@vladmandic/human","version":"2.9.3"} +2022-08-19 09:12:22 INFO:  Environment: {"profile":"production","config":".build.json","package":"package.json","tsconfig":true,"eslintrc":true,"git":true} +2022-08-19 09:12:22 INFO:  Toolchain: {"build":"0.7.10","esbuild":"0.15.5","typescript":"4.7.4","typedoc":"0.23.10","eslint":"8.22.0"} +2022-08-19 09:12:22 INFO:  Build: {"profile":"production","steps":["clean","compile","typings","typedoc","lint","changelog"]} +2022-08-19 09:12:22 STATE: Clean: {"locations":["dist/*","types/lib/*","typedoc/*"]} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":608} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":75,"inputBytes":655452,"outputBytes":307474} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":612} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":75,"inputBytes":655456,"outputBytes":307478} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":664} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":75,"inputBytes":655508,"outputBytes":307528} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1069,"outputBytes":358} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":1032,"outputBytes":583} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":75,"inputBytes":655427,"outputBytes":306323} +2022-08-19 09:12:22 STATE: Compile: {"name":"tfjs/browser/esm/custom","format":"esm","platform":"browser","input":"tfjs/tf-custom.ts","output":"dist/tfjs.esm.js","files":11,"inputBytes":1271,"outputBytes":2787569} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":75,"inputBytes":3442413,"outputBytes":1669183} +2022-08-19 09:12:22 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":75,"inputBytes":3442413,"outputBytes":3073108} +2022-08-19 09:12:27 STATE: Typings: {"input":"src/human.ts","output":"types/lib","files":30} +2022-08-19 09:12:29 STATE: TypeDoc: {"input":"src/human.ts","output":"typedoc","objects":77,"generated":true} +2022-08-19 09:12:29 STATE: Compile: {"name":"demo/typescript","format":"esm","platform":"browser","input":"demo/typescript/index.ts","output":"demo/typescript/index.js","files":1,"inputBytes":6716,"outputBytes":3141} +2022-08-19 09:12:29 STATE: Compile: {"name":"demo/faceid","format":"esm","platform":"browser","input":"demo/faceid/index.ts","output":"demo/faceid/index.js","files":2,"inputBytes":15629,"outputBytes":7798} +2022-08-19 09:12:37 STATE: Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":109,"errors":0,"warnings":0} +2022-08-19 09:12:37 STATE: ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"} +2022-08-19 09:12:37 STATE: Copy: {"input":"tfjs/tfjs.esm.d.ts"} +2022-08-19 09:12:37 INFO:  Done... +2022-08-19 09:12:37 STATE: API-Extractor: {"succeeeded":true,"errors":0,"warnings":198} +2022-08-19 09:12:37 STATE: Copy: {"input":"types/human.d.ts"} +2022-08-19 09:12:37 INFO:  Analyze models: {"folders":8,"result":"models/models.json"} +2022-08-19 09:12:37 STATE: Models {"folder":"./models","models":13} +2022-08-19 09:12:37 STATE: Models {"folder":"../human-models/models","models":42} +2022-08-19 09:12:37 STATE: Models {"folder":"../blazepose/model/","models":4} +2022-08-19 09:12:37 STATE: Models {"folder":"../anti-spoofing/model","models":1} +2022-08-19 09:12:37 STATE: Models {"folder":"../efficientpose/models","models":3} +2022-08-19 09:12:37 STATE: Models {"folder":"../insightface/models","models":5} +2022-08-19 09:12:37 STATE: Models {"folder":"../movenet/models","models":3} +2022-08-19 09:12:37 STATE: Models {"folder":"../nanodet/models","models":4} +2022-08-19 09:12:38 STATE: Models: {"count":57,"totalSize":383017442} +2022-08-19 09:12:38 INFO:  Human Build complete... {"logFile":"test/build.log"} diff --git a/test/test.log b/test/test.log index 41f5a0f8..fc1e3ca8 100644 --- a/test/test.log +++ b/test/test.log @@ -1,975 +1,975 @@ -2022-08-15 11:36:24 INFO:  @vladmandic/human version 2.9.3 -2022-08-15 11:36:24 INFO:  User: vlado Platform: linux Arch: x64 Node: v18.1.0 -2022-08-15 11:36:24 INFO:  demos: [{"cmd":"../demo/nodejs/node.js","args":[]},{"cmd":"../demo/nodejs/node-simple.js","args":[]},{"cmd":"../demo/nodejs/node-fetch.js","args":[]},{"cmd":"../demo/nodejs/node-event.js","args":["samples/in/ai-body.jpg"]},{"cmd":"../demo/nodejs/node-similarity.js","args":["samples/in/ai-face.jpg","samples/in/ai-upper.jpg"]},{"cmd":"../demo/nodejs/node-canvas.js","args":["samples/in/ai-body.jpg","samples/out/ai-body.jpg"]},{"cmd":"../demo/multithread/node-multiprocess.js","args":[]}] -2022-08-15 11:36:24 INFO:  -2022-08-15 11:36:24 INFO:  {"cmd":"../demo/nodejs/node.js","args":[]} start -2022-08-15 11:36:25 INFO:  -2022-08-15 11:36:25 INFO:  {"cmd":"../demo/nodejs/node-simple.js","args":[]} start -2022-08-15 11:36:26 INFO:  -2022-08-15 11:36:26 INFO:  {"cmd":"../demo/nodejs/node-fetch.js","args":[]} start -2022-08-15 11:36:28 INFO:  -2022-08-15 11:36:28 INFO:  {"cmd":"../demo/nodejs/node-event.js","args":["samples/in/ai-body.jpg"]} start -2022-08-15 11:36:29 INFO:  -2022-08-15 11:36:29 INFO:  {"cmd":"../demo/nodejs/node-similarity.js","args":["samples/in/ai-face.jpg","samples/in/ai-upper.jpg"]} start -2022-08-15 11:36:29 INFO:  -2022-08-15 11:36:29 INFO:  {"cmd":"../demo/nodejs/node-canvas.js","args":["samples/in/ai-body.jpg","samples/out/ai-body.jpg"]} start -2022-08-15 11:36:30 INFO:  -2022-08-15 11:36:30 INFO:  {"cmd":"../demo/multithread/node-multiprocess.js","args":[]} start -2022-08-15 11:36:31 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"] -2022-08-15 11:36:31 INFO:  -2022-08-15 11:36:31 INFO:  test-node.js start -2022-08-15 11:36:31 INFO:  test-node.js test: configuration validation -2022-08-15 11:36:31 STATE: test-node.js passed: configuration default validation [] -2022-08-15 11:36:31 STATE: test-node.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] -2022-08-15 11:36:31 INFO:  test-node.js test: model load -2022-08-15 11:36:32 STATE: test-node.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"file://models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"file://models/emotion.json"},{"name":"facedetect","loaded":true,"url":"file://models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"file://models/iris.json"},{"name":"facemesh","loaded":true,"url":"file://models/facemesh.json"},{"name":"faceres","loaded":true,"url":"file://models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"file://models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"file://models/handtrack.json"},{"name":"liveness","loaded":true,"url":"file://models/liveness.json"},{"name":"movenet","loaded":true,"url":"file://models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"file://models/selfie.json"},{"name":"antispoof","loaded":true,"url":"file://models/antispoof.json"}] -2022-08-15 11:36:32 INFO:  test-node.js test: warmup -2022-08-15 11:36:32 STATE: test-node.js passed: create human -2022-08-15 11:36:32 INFO:  test-node.js human version: 2.9.3 -2022-08-15 11:36:32 INFO:  test-node.js platform: linux x64 agent: NodeJS v18.1.0 -2022-08-15 11:36:32 INFO:  test-node.js tfjs version: 3.19.0 -2022-08-15 11:36:32 INFO:  test-node.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","tensorflow"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{"version":"2.7.3-dev20220521","gpu":false},"wasm":{"supported":true,"backend":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":169} -2022-08-15 11:36:32 STATE: test-node.js passed: set backend: tensorflow -2022-08-15 11:36:32 STATE: test-node.js tensors 1921 -2022-08-15 11:36:32 STATE: test-node.js passed: load models -2022-08-15 11:36:32 STATE: test-node.js result: defined models: 23 loaded models: 12 -2022-08-15 11:36:32 STATE: test-node.js passed: warmup: none default -2022-08-15 11:36:32 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} -2022-08-15 11:36:32 DATA:  test-node.js result: performance: load: null total: null -2022-08-15 11:36:32 STATE: test-node.js passed: warmup none result match -2022-08-15 11:36:32 STATE: test-node.js event: image -2022-08-15 11:36:32 STATE: test-node.js event: detect -2022-08-15 11:36:32 STATE: test-node.js event: warmup -2022-08-15 11:36:32 STATE: test-node.js passed: warmup: face default -2022-08-15 11:36:32 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4} -2022-08-15 11:36:32 DATA:  test-node.js result: performance: load: null total: 348 -2022-08-15 11:36:32 STATE: test-node.js passed: warmup face result match -2022-08-15 11:36:32 STATE: test-node.js event: image -2022-08-15 11:36:32 STATE: test-node.js event: detect -2022-08-15 11:36:32 STATE: test-node.js event: warmup -2022-08-15 11:36:32 STATE: test-node.js passed: warmup: body default -2022-08-15 11:36:32 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:32 DATA:  test-node.js result: performance: load: null total: 242 -2022-08-15 11:36:32 STATE: test-node.js passed: warmup body result match -2022-08-15 11:36:32 STATE: test-node.js details: {"face":{"boxScore":0.92,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.63,"emotion":"angry"},{"score":0.22,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.52,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 10% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} -2022-08-15 11:36:32 INFO:  test-node.js test: details verification -2022-08-15 11:36:32 STATE: test-node.js start default -2022-08-15 11:36:32 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:32 STATE: test-node.js event: image -2022-08-15 11:36:33 STATE: test-node.js event: detect -2022-08-15 11:36:33 STATE: test-node.js passed: detect: samples/in/ai-body.jpg default -2022-08-15 11:36:33 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:33 DATA:  test-node.js result: performance: load: null total: 238 -2022-08-15 11:36:33 STATE: test-node.js passed: details face length 1 -2022-08-15 11:36:33 STATE: test-node.js passed: details face score 1 0.93 1 -2022-08-15 11:36:33 STATE: test-node.js passed: details face age/gender 23.7 female 0.97 85.47 -2022-08-15 11:36:33 STATE: test-node.js passed: details face arrays 4 478 1024 -2022-08-15 11:36:33 STATE: test-node.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} -2022-08-15 11:36:33 STATE: test-node.js passed: details face anti-spoofing 0.79 -2022-08-15 11:36:33 STATE: test-node.js passed: details face liveness 0.83 -2022-08-15 11:36:33 STATE: test-node.js passed: details body length 1 -2022-08-15 11:36:33 STATE: test-node.js passed: details body 0.92 17 6 -2022-08-15 11:36:33 STATE: test-node.js passed: details hand length 1 -2022-08-15 11:36:33 STATE: test-node.js passed: details hand 0.51 0.73 point -2022-08-15 11:36:33 STATE: test-node.js passed: details hand arrays 21 5 7 -2022-08-15 11:36:33 STATE: test-node.js passed: details gesture length 7 -2022-08-15 11:36:33 STATE: test-node.js passed: details gesture first {"face":0,"gesture":"facing right"} -2022-08-15 11:36:33 STATE: test-node.js passed: details object length 1 -2022-08-15 11:36:33 STATE: test-node.js passed: details object 0.72 person -2022-08-15 11:36:33 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996928} -2022-08-15 11:36:33 STATE: test-node.js event: image -2022-08-15 11:36:33 STATE: test-node.js event: detect -2022-08-15 11:36:33 STATE: test-node.js passed: tensor shape: [1,1200,1200,4] dtype: float32 -2022-08-15 11:36:33 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1371996928} -2022-08-15 11:36:33 STATE: test-node.js event: image -2022-08-15 11:36:33 STATE: test-node.js event: detect -2022-08-15 11:36:33 STATE: test-node.js passed: tensor shape: [1200,1200,4] dtype: float32 -2022-08-15 11:36:34 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:34 STATE: test-node.js event: image -2022-08-15 11:36:34 STATE: test-node.js event: detect -2022-08-15 11:36:34 STATE: test-node.js passed: tensor shape: [1,1200,1200,3] dtype: float32 -2022-08-15 11:36:34 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:34 STATE: test-node.js event: image -2022-08-15 11:36:34 STATE: test-node.js event: detect -2022-08-15 11:36:34 STATE: test-node.js passed: tensor shape: [1200,1200,3] dtype: float32 -2022-08-15 11:36:34 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} -2022-08-15 11:36:34 STATE: test-node.js event: image -2022-08-15 11:36:35 STATE: test-node.js event: detect -2022-08-15 11:36:35 STATE: test-node.js passed: tensor shape: [1,1200,1200,4] dtype: int32 -2022-08-15 11:36:35 INFO:  test-node.js test default -2022-08-15 11:36:35 STATE: test-node.js start async -2022-08-15 11:36:35 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:35 STATE: test-node.js event: image -2022-08-15 11:36:35 STATE: test-node.js event: detect -2022-08-15 11:36:35 STATE: test-node.js passed: detect: samples/in/ai-body.jpg async -2022-08-15 11:36:35 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:35 DATA:  test-node.js result: performance: load: null total: 227 -2022-08-15 11:36:35 STATE: test-node.js passed: default result face match 1 female 0.97 -2022-08-15 11:36:35 INFO:  test-node.js test sync -2022-08-15 11:36:35 STATE: test-node.js start sync -2022-08-15 11:36:35 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:35 STATE: test-node.js event: image -2022-08-15 11:36:35 STATE: test-node.js event: detect -2022-08-15 11:36:35 STATE: test-node.js passed: detect: samples/in/ai-body.jpg sync -2022-08-15 11:36:35 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:35 DATA:  test-node.js result: performance: load: null total: 225 -2022-08-15 11:36:35 STATE: test-node.js passed: default sync 1 female 0.97 -2022-08-15 11:36:35 INFO:  test-node.js test: image process -2022-08-15 11:36:35 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:35 STATE: test-node.js passed: image input null [1,256,256,3] -2022-08-15 11:36:35 INFO:  test-node.js test: image null -2022-08-15 11:36:35 STATE: test-node.js passed: invalid input could not convert input to tensor -2022-08-15 11:36:35 INFO:  test-node.js test face similarity -2022-08-15 11:36:35 STATE: test-node.js start face similarity -2022-08-15 11:36:35 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:35 STATE: test-node.js event: image -2022-08-15 11:36:36 STATE: test-node.js event: detect -2022-08-15 11:36:36 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face similarity -2022-08-15 11:36:36 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} -2022-08-15 11:36:36 DATA:  test-node.js result: performance: load: null total: 213 -2022-08-15 11:36:36 STATE: test-node.js start face similarity -2022-08-15 11:36:36 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:36 STATE: test-node.js event: image -2022-08-15 11:36:36 STATE: test-node.js event: detect -2022-08-15 11:36:36 STATE: test-node.js passed: detect: samples/in/ai-body.jpg face similarity -2022-08-15 11:36:36 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:36 DATA:  test-node.js result: performance: load: null total: 211 -2022-08-15 11:36:36 STATE: test-node.js start face similarity -2022-08-15 11:36:36 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:36 STATE: test-node.js event: image -2022-08-15 11:36:36 STATE: test-node.js event: detect -2022-08-15 11:36:36 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg face similarity -2022-08-15 11:36:36 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} -2022-08-15 11:36:36 DATA:  test-node.js result: performance: load: null total: 193 -2022-08-15 11:36:36 STATE: test-node.js passed: face descriptor -2022-08-15 11:36:36 STATE: test-node.js passed: face similarity {"similarity":[1,0.44727452329649126,0.5567935850640406],"descriptors":[1024,1024,1024]} -2022-08-15 11:36:36 INFO:  test-node.js test object -2022-08-15 11:36:36 STATE: test-node.js start object -2022-08-15 11:36:37 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:37 STATE: test-node.js event: image -2022-08-15 11:36:37 STATE: test-node.js event: detect -2022-08-15 11:36:37 STATE: test-node.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:36:37 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:37 DATA:  test-node.js result: performance: load: null total: 224 -2022-08-15 11:36:37 STATE: test-node.js passed: centernet -2022-08-15 11:36:37 STATE: test-node.js start object -2022-08-15 11:36:38 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:38 STATE: test-node.js event: image -2022-08-15 11:36:38 STATE: test-node.js event: detect -2022-08-15 11:36:38 STATE: test-node.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:36:38 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 3 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.86,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:38 DATA:  test-node.js result: performance: load: null total: 217 -2022-08-15 11:36:38 STATE: test-node.js passed: nanodet -2022-08-15 11:36:38 INFO:  test-node.js test sensitive -2022-08-15 11:36:38 STATE: test-node.js start sensitive -2022-08-15 11:36:38 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:38 STATE: test-node.js event: image -2022-08-15 11:36:38 STATE: test-node.js event: detect -2022-08-15 11:36:38 STATE: test-node.js passed: detect: samples/in/ai-body.jpg sensitive -2022-08-15 11:36:38 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:38 DATA:  test-node.js result: performance: load: null total: 185 -2022-08-15 11:36:38 STATE: test-node.js passed: sensitive result match -2022-08-15 11:36:38 STATE: test-node.js passed: sensitive face result match -2022-08-15 11:36:38 STATE: test-node.js passed: sensitive face emotion result [{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}] -2022-08-15 11:36:38 STATE: test-node.js passed: sensitive body result match -2022-08-15 11:36:38 STATE: test-node.js passed: sensitive hand result match -2022-08-15 11:36:38 INFO:  test-node.js test body -2022-08-15 11:36:38 STATE: test-node.js start blazepose -2022-08-15 11:36:40 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:40 STATE: test-node.js event: image -2022-08-15 11:36:40 STATE: test-node.js event: detect -2022-08-15 11:36:40 STATE: test-node.js passed: detect: samples/in/ai-body.jpg blazepose -2022-08-15 11:36:40 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.99,"keypoints":39} -2022-08-15 11:36:40 DATA:  test-node.js result: performance: load: null total: 225 -2022-08-15 11:36:40 STATE: test-node.js passed: blazepose -2022-08-15 11:36:40 STATE: test-node.js start efficientpose -2022-08-15 11:36:41 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:41 STATE: test-node.js event: image -2022-08-15 11:36:41 STATE: test-node.js event: detect -2022-08-15 11:36:41 STATE: test-node.js passed: detect: samples/in/ai-body.jpg efficientpose -2022-08-15 11:36:41 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.75,"keypoints":13} -2022-08-15 11:36:41 DATA:  test-node.js result: performance: load: null total: 254 -2022-08-15 11:36:41 STATE: test-node.js passed: efficientpose -2022-08-15 11:36:41 STATE: test-node.js start posenet -2022-08-15 11:36:42 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:42 STATE: test-node.js event: image -2022-08-15 11:36:42 STATE: test-node.js event: detect -2022-08-15 11:36:42 STATE: test-node.js passed: detect: samples/in/ai-body.jpg posenet -2022-08-15 11:36:42 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.96,"keypoints":16} -2022-08-15 11:36:42 DATA:  test-node.js result: performance: load: null total: 200 -2022-08-15 11:36:42 STATE: test-node.js passed: posenet -2022-08-15 11:36:42 STATE: test-node.js start movenet -2022-08-15 11:36:42 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:42 STATE: test-node.js event: image -2022-08-15 11:36:42 STATE: test-node.js event: detect -2022-08-15 11:36:42 STATE: test-node.js passed: detect: samples/in/ai-body.jpg movenet -2022-08-15 11:36:42 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:42 DATA:  test-node.js result: performance: load: null total: 179 -2022-08-15 11:36:42 STATE: test-node.js passed: movenet -2022-08-15 11:36:42 INFO:  test-node.js test face matching -2022-08-15 11:36:42 STATE: test-node.js passed: face database 40 -2022-08-15 11:36:42 STATE: test-node.js passed: face match {"first":{"index":4,"similarity":0.7827852615252829}} {"second":{"index":4,"similarity":0.5002052633015844}} {"third":{"index":4,"similarity":0.5401587887998899}} -2022-08-15 11:36:42 INFO:  test-node.js test face similarity alternative -2022-08-15 11:36:42 STATE: test-node.js start face embeddings -2022-08-15 11:36:43 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:43 STATE: test-node.js event: image -2022-08-15 11:36:43 STATE: test-node.js event: detect -2022-08-15 11:36:43 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:36:43 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:43 DATA:  test-node.js result: performance: load: null total: 191 -2022-08-15 11:36:43 STATE: test-node.js passed: mobilefacenet {"embedding":192} -2022-08-15 11:36:43 STATE: test-node.js start face embeddings -2022-08-15 11:36:44 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:44 STATE: test-node.js event: image -2022-08-15 11:36:44 STATE: test-node.js event: detect -2022-08-15 11:36:44 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:36:44 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:44 DATA:  test-node.js result: performance: load: null total: 198 -2022-08-15 11:36:44 STATE: test-node.js passed: insightface {"embedding":512} -2022-08-15 11:36:44 INFO:  test-node.js test face attention -2022-08-15 11:36:44 STATE: test-node.js start face attention -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:45 STATE: test-node.js event: image -2022-08-15 11:36:45 STATE: test-node.js event: detect -2022-08-15 11:36:45 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face attention -2022-08-15 11:36:45 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:45 DATA:  test-node.js result: performance: load: null total: 181 -2022-08-15 11:36:45 STATE: test-node.js passed: face attention -2022-08-15 11:36:45 INFO:  test-node.js test detectors -2022-08-15 11:36:45 STATE: test-node.js start detectors -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:45 STATE: test-node.js event: image -2022-08-15 11:36:45 STATE: test-node.js event: detect -2022-08-15 11:36:45 STATE: test-node.js passed: detect: samples/in/ai-body.jpg detectors -2022-08-15 11:36:45 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:45 DATA:  test-node.js result: performance: load: null total: 87 -2022-08-15 11:36:45 STATE: test-node.js passed: detector result face match -2022-08-15 11:36:45 STATE: test-node.js passed: detector result hand match -2022-08-15 11:36:45 INFO:  test-node.js test: multi-instance -2022-08-15 11:36:45 STATE: test-node.js start multi instance -2022-08-15 11:36:45 STATE: test-node.js event: image -2022-08-15 11:36:45 STATE: test-node.js event: detect -2022-08-15 11:36:45 STATE: test-node.js passed: detect: random multi instance -2022-08-15 11:36:45 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} -2022-08-15 11:36:45 DATA:  test-node.js result: performance: load: null total: 83 -2022-08-15 11:36:45 INFO:  test-node.js test: first instance -2022-08-15 11:36:45 STATE: test-node.js start multi instance -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:45 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:36:45 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:36:45 DATA:  test-node.js result: performance: load: null total: 85 -2022-08-15 11:36:45 INFO:  test-node.js test: second instance -2022-08-15 11:36:45 STATE: test-node.js start multi instance -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:45 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:36:45 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:36:45 DATA:  test-node.js result: performance: load: null total: 83 -2022-08-15 11:36:45 INFO:  test-node.js test: concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js start concurrent -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:46 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} -2022-08-15 11:36:46 STATE: test-node.js event: image -2022-08-15 11:36:46 STATE: test-node.js event: image -2022-08-15 11:36:46 STATE: test-node.js event: image -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 1002 -2022-08-15 11:36:47 STATE: test-node.js event: detect -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 740 -2022-08-15 11:36:47 STATE: test-node.js event: detect -2022-08-15 11:36:47 STATE: test-node.js event: detect -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 740 -2022-08-15 11:36:47 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:36:47 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:47 DATA:  test-node.js result: performance: load: null total: 740 -2022-08-15 11:36:47 INFO:  test-node.js test: monkey-patch -2022-08-15 11:36:47 STATE: test-node.js event: image -2022-08-15 11:36:47 STATE: test-node.js event: detect -2022-08-15 11:36:47 STATE: test-node.js passed: monkey patch -2022-08-15 11:36:47 STATE: test-node.js passed: segmentation [65536] -2022-08-15 11:36:47 STATE: test-node.js passeed: equal usage -2022-08-15 11:36:47 INFO:  test-node.js test: input compare -2022-08-15 11:36:47 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:47 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} -2022-08-15 11:36:47 STATE: test-node.js passed: image compare 0 23.275441687091504 -2022-08-15 11:36:47 INFO:  test-node.js events: {"image":29,"detect":29,"warmup":2} -2022-08-15 11:36:47 INFO:  test-node.js tensors 4105 -2022-08-15 11:36:47 INFO:  test-node.js test complete: 15865 ms -2022-08-15 11:36:47 INFO:  -2022-08-15 11:36:47 INFO:  test-node-gpu.js start -2022-08-15 11:36:48 INFO:  test-node-gpu.js test: configuration validation -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: configuration default validation [] -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] -2022-08-15 11:36:48 INFO:  test-node-gpu.js test: model load -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"file://models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"file://models/emotion.json"},{"name":"facedetect","loaded":true,"url":"file://models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"file://models/iris.json"},{"name":"facemesh","loaded":true,"url":"file://models/facemesh.json"},{"name":"faceres","loaded":true,"url":"file://models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"file://models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"file://models/handtrack.json"},{"name":"liveness","loaded":true,"url":"file://models/liveness.json"},{"name":"movenet","loaded":true,"url":"file://models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"file://models/selfie.json"},{"name":"antispoof","loaded":true,"url":"file://models/antispoof.json"}] -2022-08-15 11:36:48 INFO:  test-node-gpu.js test: warmup -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: create human -2022-08-15 11:36:48 INFO:  test-node-gpu.js human version: 2.9.3 -2022-08-15 11:36:48 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v18.1.0 -2022-08-15 11:36:48 INFO:  test-node-gpu.js tfjs version: 3.19.0 -2022-08-15 11:36:48 INFO:  test-node-gpu.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","tensorflow"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{"version":"2.7.3-dev20220521","gpu":true},"wasm":{"supported":true,"backend":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":169} -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: set backend: tensorflow -2022-08-15 11:36:48 STATE: test-node-gpu.js tensors 1921 -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: load models -2022-08-15 11:36:48 STATE: test-node-gpu.js result: defined models: 23 loaded models: 12 -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: warmup: none default -2022-08-15 11:36:48 DATA:  test-node-gpu.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} -2022-08-15 11:36:48 DATA:  test-node-gpu.js result: performance: load: null total: null -2022-08-15 11:36:48 STATE: test-node-gpu.js passed: warmup none result match -2022-08-15 11:36:49 STATE: test-node-gpu.js event: image -2022-08-15 11:36:51 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:51 STATE: test-node-gpu.js event: warmup -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: warmup: face default -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4} -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: performance: load: null total: 2030 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: warmup face result match -2022-08-15 11:36:51 STATE: test-node-gpu.js event: image -2022-08-15 11:36:51 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:51 STATE: test-node-gpu.js event: warmup -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: warmup: body default -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: performance: load: null total: 178 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: warmup body result match -2022-08-15 11:36:51 STATE: test-node-gpu.js details: {"face":{"boxScore":0.92,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.63,"emotion":"angry"},{"score":0.22,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.52,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 10% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} -2022-08-15 11:36:51 INFO:  test-node-gpu.js test: details verification -2022-08-15 11:36:51 STATE: test-node-gpu.js start default -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:51 STATE: test-node-gpu.js event: image -2022-08-15 11:36:51 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg default -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:51 DATA:  test-node-gpu.js result: performance: load: null total: 200 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face length 1 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face score 1 0.93 1 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face age/gender 23.7 female 0.97 85.47 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face arrays 4 478 1024 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face anti-spoofing 0.79 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details face liveness 0.83 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details body length 1 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details body 0.92 17 6 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details hand length 1 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details hand 0.51 0.73 point -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details hand arrays 21 5 7 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details gesture length 7 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details gesture first {"face":0,"gesture":"facing right"} -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details object length 1 -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: details object 0.72 person -2022-08-15 11:36:51 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996928} -2022-08-15 11:36:51 STATE: test-node-gpu.js event: image -2022-08-15 11:36:52 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:52 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,4] dtype: float32 -2022-08-15 11:36:52 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1371996928} -2022-08-15 11:36:52 STATE: test-node-gpu.js event: image -2022-08-15 11:36:52 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:52 STATE: test-node-gpu.js passed: tensor shape: [1200,1200,4] dtype: float32 -2022-08-15 11:36:52 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:52 STATE: test-node-gpu.js event: image -2022-08-15 11:36:52 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:52 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,3] dtype: float32 -2022-08-15 11:36:53 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:53 STATE: test-node-gpu.js event: image -2022-08-15 11:36:53 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:53 STATE: test-node-gpu.js passed: tensor shape: [1200,1200,3] dtype: float32 -2022-08-15 11:36:53 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} -2022-08-15 11:36:53 STATE: test-node-gpu.js event: image -2022-08-15 11:36:53 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:53 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,4] dtype: int32 -2022-08-15 11:36:53 INFO:  test-node-gpu.js test default -2022-08-15 11:36:53 STATE: test-node-gpu.js start async -2022-08-15 11:36:53 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:53 STATE: test-node-gpu.js event: image -2022-08-15 11:36:54 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg async -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: performance: load: null total: 171 -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: default result face match 1 female 0.97 -2022-08-15 11:36:54 INFO:  test-node-gpu.js test sync -2022-08-15 11:36:54 STATE: test-node-gpu.js start sync -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:54 STATE: test-node-gpu.js event: image -2022-08-15 11:36:54 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg sync -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: performance: load: null total: 170 -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: default sync 1 female 0.97 -2022-08-15 11:36:54 INFO:  test-node-gpu.js test: image process -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: image input null [1,256,256,3] -2022-08-15 11:36:54 INFO:  test-node-gpu.js test: image null -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: invalid input could not convert input to tensor -2022-08-15 11:36:54 INFO:  test-node-gpu.js test face similarity -2022-08-15 11:36:54 STATE: test-node-gpu.js start face similarity -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:36:54 STATE: test-node-gpu.js event: image -2022-08-15 11:36:54 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face similarity -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} -2022-08-15 11:36:54 DATA:  test-node-gpu.js result: performance: load: null total: 164 -2022-08-15 11:36:54 STATE: test-node-gpu.js start face similarity -2022-08-15 11:36:54 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:54 STATE: test-node-gpu.js event: image -2022-08-15 11:36:55 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg face similarity -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: performance: load: null total: 180 -2022-08-15 11:36:55 STATE: test-node-gpu.js start face similarity -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:36:55 STATE: test-node-gpu.js event: image -2022-08-15 11:36:55 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg face similarity -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: performance: load: null total: 168 -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: face descriptor -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: face similarity {"similarity":[1,0.447238756461232,0.556914029877052],"descriptors":[1024,1024,1024]} -2022-08-15 11:36:55 INFO:  test-node-gpu.js test object -2022-08-15 11:36:55 STATE: test-node-gpu.js start object -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:55 STATE: test-node-gpu.js event: image -2022-08-15 11:36:55 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:55 DATA:  test-node-gpu.js result: performance: load: null total: 181 -2022-08-15 11:36:55 STATE: test-node-gpu.js passed: centernet -2022-08-15 11:36:55 STATE: test-node-gpu.js start object -2022-08-15 11:36:56 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:56 STATE: test-node-gpu.js event: image -2022-08-15 11:36:57 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:36:57 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 3 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.86,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:36:57 DATA:  test-node-gpu.js result: performance: load: null total: 579 -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: nanodet -2022-08-15 11:36:57 INFO:  test-node-gpu.js test sensitive -2022-08-15 11:36:57 STATE: test-node-gpu.js start sensitive -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:57 STATE: test-node-gpu.js event: image -2022-08-15 11:36:57 STATE: test-node-gpu.js event: detect -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg sensitive -2022-08-15 11:36:57 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:36:57 DATA:  test-node-gpu.js result: performance: load: null total: 132 -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: sensitive result match -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: sensitive face result match -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: sensitive face emotion result [{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}] -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: sensitive body result match -2022-08-15 11:36:57 STATE: test-node-gpu.js passed: sensitive hand result match -2022-08-15 11:36:57 INFO:  test-node-gpu.js test body -2022-08-15 11:36:57 STATE: test-node-gpu.js start blazepose -2022-08-15 11:36:59 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:36:59 STATE: test-node-gpu.js event: image -2022-08-15 11:37:00 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:00 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg blazepose -2022-08-15 11:37:00 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.99,"keypoints":39} -2022-08-15 11:37:00 DATA:  test-node-gpu.js result: performance: load: null total: 398 -2022-08-15 11:37:00 STATE: test-node-gpu.js passed: blazepose -2022-08-15 11:37:00 STATE: test-node-gpu.js start efficientpose -2022-08-15 11:37:00 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:00 STATE: test-node-gpu.js event: image -2022-08-15 11:37:01 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:01 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg efficientpose -2022-08-15 11:37:01 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.75,"keypoints":13} -2022-08-15 11:37:01 DATA:  test-node-gpu.js result: performance: load: null total: 665 -2022-08-15 11:37:01 STATE: test-node-gpu.js passed: efficientpose -2022-08-15 11:37:01 STATE: test-node-gpu.js start posenet -2022-08-15 11:37:02 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:02 STATE: test-node-gpu.js event: image -2022-08-15 11:37:02 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:02 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg posenet -2022-08-15 11:37:02 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.96,"keypoints":16} -2022-08-15 11:37:02 DATA:  test-node-gpu.js result: performance: load: null total: 155 -2022-08-15 11:37:02 STATE: test-node-gpu.js passed: posenet -2022-08-15 11:37:02 STATE: test-node-gpu.js start movenet -2022-08-15 11:37:02 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:02 STATE: test-node-gpu.js event: image -2022-08-15 11:37:03 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg movenet -2022-08-15 11:37:03 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:03 DATA:  test-node-gpu.js result: performance: load: null total: 151 -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: movenet -2022-08-15 11:37:03 INFO:  test-node-gpu.js test face matching -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: face database 40 -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: face match {"first":{"index":4,"similarity":0.7828184453007331}} {"second":{"index":4,"similarity":0.5001334216773398}} {"third":{"index":4,"similarity":0.5403054967489764}} -2022-08-15 11:37:03 INFO:  test-node-gpu.js test face similarity alternative -2022-08-15 11:37:03 STATE: test-node-gpu.js start face embeddings -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:03 STATE: test-node-gpu.js event: image -2022-08-15 11:37:03 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:37:03 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:03 DATA:  test-node-gpu.js result: performance: load: null total: 220 -2022-08-15 11:37:03 STATE: test-node-gpu.js passed: mobilefacenet {"embedding":192} -2022-08-15 11:37:03 STATE: test-node-gpu.js start face embeddings -2022-08-15 11:37:05 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:05 STATE: test-node-gpu.js event: image -2022-08-15 11:37:05 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:05 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:37:05 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:05 DATA:  test-node-gpu.js result: performance: load: null total: 234 -2022-08-15 11:37:05 STATE: test-node-gpu.js passed: insightface {"embedding":512} -2022-08-15 11:37:05 INFO:  test-node-gpu.js test face attention -2022-08-15 11:37:05 STATE: test-node-gpu.js start face attention -2022-08-15 11:37:05 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:05 STATE: test-node-gpu.js event: image -2022-08-15 11:37:06 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face attention -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: performance: load: null total: 278 -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: face attention -2022-08-15 11:37:06 INFO:  test-node-gpu.js test detectors -2022-08-15 11:37:06 STATE: test-node-gpu.js start detectors -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:06 STATE: test-node-gpu.js event: image -2022-08-15 11:37:06 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg detectors -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: performance: load: null total: 65 -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detector result face match -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detector result hand match -2022-08-15 11:37:06 INFO:  test-node-gpu.js test: multi-instance -2022-08-15 11:37:06 STATE: test-node-gpu.js start multi instance -2022-08-15 11:37:06 STATE: test-node-gpu.js event: image -2022-08-15 11:37:06 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detect: random multi instance -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: performance: load: null total: 91 -2022-08-15 11:37:06 INFO:  test-node-gpu.js test: first instance -2022-08-15 11:37:06 STATE: test-node-gpu.js start multi instance -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: performance: load: null total: 93 -2022-08-15 11:37:06 INFO:  test-node-gpu.js test: second instance -2022-08-15 11:37:06 STATE: test-node-gpu.js start multi instance -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:06 DATA:  test-node-gpu.js result: performance: load: null total: 59 -2022-08-15 11:37:06 INFO:  test-node-gpu.js test: concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js start concurrent -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} -2022-08-15 11:37:07 STATE: test-node-gpu.js event: image -2022-08-15 11:37:07 STATE: test-node-gpu.js event: image -2022-08-15 11:37:07 STATE: test-node-gpu.js event: image -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 870 -2022-08-15 11:37:08 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 567 -2022-08-15 11:37:08 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:08 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 567 -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:08 DATA:  test-node-gpu.js result: performance: load: null total: 567 -2022-08-15 11:37:08 INFO:  test-node-gpu.js test: monkey-patch -2022-08-15 11:37:08 STATE: test-node-gpu.js event: image -2022-08-15 11:37:08 STATE: test-node-gpu.js event: detect -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: monkey patch -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: segmentation [65536] -2022-08-15 11:37:08 STATE: test-node-gpu.js passeed: equal usage -2022-08-15 11:37:08 INFO:  test-node-gpu.js test: input compare -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} -2022-08-15 11:37:08 STATE: test-node-gpu.js passed: image compare 0 23.275441687091504 -2022-08-15 11:37:08 INFO:  test-node-gpu.js events: {"image":29,"detect":29,"warmup":2} -2022-08-15 11:37:08 INFO:  test-node-gpu.js tensors 4105 -2022-08-15 11:37:08 INFO:  test-node-gpu.js test complete: 19978 ms -2022-08-15 11:37:09 INFO:  -2022-08-15 11:37:09 INFO:  test-node-wasm.js start -2022-08-15 11:37:09 DATA:  test-node-wasm.js stdout: 2022-08-15 11:37:09 INFO:  { supported: true, backend: true, simd: true, multithread: false } -2022-08-15 11:37:09 STATE: test-node-wasm.js passed: model server: https://vladmandic.github.io/human/models/ -2022-08-15 11:37:09 INFO:  test-node-wasm.js test: configuration validation -2022-08-15 11:37:09 STATE: test-node-wasm.js passed: configuration default validation [] -2022-08-15 11:37:09 STATE: test-node-wasm.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] -2022-08-15 11:37:09 INFO:  test-node-wasm.js test: model load -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"https://vladmandic.github.io/human/models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"https://vladmandic.github.io/human/models/emotion.json"},{"name":"facedetect","loaded":true,"url":"https://vladmandic.github.io/human/models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"https://vladmandic.github.io/human/models/iris.json"},{"name":"facemesh","loaded":true,"url":"https://vladmandic.github.io/human/models/facemesh.json"},{"name":"faceres","loaded":true,"url":"https://vladmandic.github.io/human/models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"https://vladmandic.github.io/human/models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"https://vladmandic.github.io/human/models/handtrack.json"},{"name":"liveness","loaded":true,"url":"https://vladmandic.github.io/human/models/liveness.json"},{"name":"movenet","loaded":true,"url":"https://vladmandic.github.io/human/models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"https://vladmandic.github.io/human/models/selfie.json"},{"name":"antispoof","loaded":true,"url":"https://vladmandic.github.io/human/models/antispoof.json"}] -2022-08-15 11:37:11 INFO:  test-node-wasm.js test: warmup -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: create human -2022-08-15 11:37:11 INFO:  test-node-wasm.js human version: 2.9.3 -2022-08-15 11:37:11 INFO:  test-node-wasm.js platform: linux x64 agent: NodeJS v18.1.0 -2022-08-15 11:37:11 INFO:  test-node-wasm.js tfjs version: 3.19.0 -2022-08-15 11:37:11 INFO:  test-node-wasm.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","wasm"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{},"wasm":{"supported":true,"backend":true,"simd":true,"multithread":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":126} -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: set backend: wasm -2022-08-15 11:37:11 STATE: test-node-wasm.js tensors 1921 -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: load models -2022-08-15 11:37:11 STATE: test-node-wasm.js result: defined models: 23 loaded models: 12 -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: warmup: none default -2022-08-15 11:37:11 DATA:  test-node-wasm.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} -2022-08-15 11:37:11 DATA:  test-node-wasm.js result: performance: load: null total: null -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: warmup none result match -2022-08-15 11:37:11 STATE: test-node-wasm.js event: image -2022-08-15 11:37:11 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:11 STATE: test-node-wasm.js event: warmup -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: warmup: face default -2022-08-15 11:37:11 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} -2022-08-15 11:37:11 DATA:  test-node-wasm.js result: performance: load: null total: 578 -2022-08-15 11:37:11 STATE: test-node-wasm.js passed: warmup face result match -2022-08-15 11:37:11 STATE: test-node-wasm.js event: image -2022-08-15 11:37:12 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:12 STATE: test-node-wasm.js event: warmup -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: warmup: body default -2022-08-15 11:37:12 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:12 DATA:  test-node-wasm.js result: performance: load: null total: 408 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: warmup body result match -2022-08-15 11:37:12 STATE: test-node-wasm.js details: {"face":{"boxScore":0.93,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.51,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 21% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} -2022-08-15 11:37:12 INFO:  test-node-wasm.js test: details verification -2022-08-15 11:37:12 STATE: test-node-wasm.js start default -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:12 STATE: test-node-wasm.js event: image -2022-08-15 11:37:12 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg default -2022-08-15 11:37:12 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:12 DATA:  test-node-wasm.js result: performance: load: null total: 382 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face length 1 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face score 1 0.93 1 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face age/gender 23.7 female 0.97 85.47 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face arrays 4 478 1024 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face anti-spoofing 0.79 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details face liveness 0.83 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details body length 1 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details body 0.92 17 6 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details hand length 1 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details hand 0.51 0.73 point -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details hand arrays 21 5 7 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details gesture length 7 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details gesture first {"face":0,"gesture":"facing right"} -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details object length 1 -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: details object 0.72 person -2022-08-15 11:37:12 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1413675264} -2022-08-15 11:37:13 STATE: test-node-wasm.js event: image -2022-08-15 11:37:13 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:13 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,4] dtype: float32 -2022-08-15 11:37:13 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1413675264} -2022-08-15 11:37:13 STATE: test-node-wasm.js event: image -2022-08-15 11:37:13 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:13 STATE: test-node-wasm.js passed: tensor shape: [1200,1200,4] dtype: float32 -2022-08-15 11:37:14 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:14 STATE: test-node-wasm.js event: image -2022-08-15 11:37:14 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:14 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,3] dtype: float32 -2022-08-15 11:37:14 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:14 STATE: test-node-wasm.js event: image -2022-08-15 11:37:15 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:15 STATE: test-node-wasm.js passed: tensor shape: [1200,1200,3] dtype: float32 -2022-08-15 11:37:15 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} -2022-08-15 11:37:15 STATE: test-node-wasm.js event: image -2022-08-15 11:37:15 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:15 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,4] dtype: int32 -2022-08-15 11:37:15 INFO:  test-node-wasm.js test default -2022-08-15 11:37:15 STATE: test-node-wasm.js start async -2022-08-15 11:37:16 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:16 STATE: test-node-wasm.js event: image -2022-08-15 11:37:16 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:16 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg async -2022-08-15 11:37:16 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:16 DATA:  test-node-wasm.js result: performance: load: null total: 334 -2022-08-15 11:37:16 STATE: test-node-wasm.js passed: default result face match 1 female 0.97 -2022-08-15 11:37:16 INFO:  test-node-wasm.js test sync -2022-08-15 11:37:16 STATE: test-node-wasm.js start sync -2022-08-15 11:37:16 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:16 STATE: test-node-wasm.js event: image -2022-08-15 11:37:17 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg sync -2022-08-15 11:37:17 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:17 DATA:  test-node-wasm.js result: performance: load: null total: 436 -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: default sync 1 female 0.97 -2022-08-15 11:37:17 INFO:  test-node-wasm.js test: image process -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: image input null [1,256,256,3] -2022-08-15 11:37:17 INFO:  test-node-wasm.js test: image null -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: invalid input could not convert input to tensor -2022-08-15 11:37:17 INFO:  test-node-wasm.js test face similarity -2022-08-15 11:37:17 STATE: test-node-wasm.js start face similarity -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:17 STATE: test-node-wasm.js event: image -2022-08-15 11:37:17 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face similarity -2022-08-15 11:37:17 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} -2022-08-15 11:37:17 DATA:  test-node-wasm.js result: performance: load: null total: 424 -2022-08-15 11:37:17 STATE: test-node-wasm.js start face similarity -2022-08-15 11:37:17 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:17 STATE: test-node-wasm.js event: image -2022-08-15 11:37:18 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg face similarity -2022-08-15 11:37:18 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:18 DATA:  test-node-wasm.js result: performance: load: null total: 374 -2022-08-15 11:37:18 STATE: test-node-wasm.js start face similarity -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:18 STATE: test-node-wasm.js event: image -2022-08-15 11:37:18 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg face similarity -2022-08-15 11:37:18 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} -2022-08-15 11:37:18 DATA:  test-node-wasm.js result: performance: load: null total: 316 -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: face descriptor -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: face similarity {"similarity":[1,0.5266119940661309,0.4858842904087851],"descriptors":[1024,1024,1024]} -2022-08-15 11:37:18 INFO:  test-node-wasm.js test object -2022-08-15 11:37:18 STATE: test-node-wasm.js start object -2022-08-15 11:37:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:18 STATE: test-node-wasm.js event: image -2022-08-15 11:37:19 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:19 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:37:19 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} -2022-08-15 11:37:19 DATA:  test-node-wasm.js result: performance: load: null total: 391 -2022-08-15 11:37:19 STATE: test-node-wasm.js passed: centernet -2022-08-15 11:37:19 STATE: test-node-wasm.js start object -2022-08-15 11:37:20 WARN:  test-node-wasm.js missing kernel ops {"title":"object","model":"nanodet","url":"https://vladmandic.github.io/human-models/models/nanodet.json","missing":["sparsetodense"],"backkend":"wasm"} -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:21 STATE: test-node-wasm.js event: image -2022-08-15 11:37:21 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg object -2022-08-15 11:37:21 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:21 DATA:  test-node-wasm.js result: performance: load: null total: 204 -2022-08-15 11:37:21 ERROR: test-node-wasm.js failed: nanodet [] -2022-08-15 11:37:21 INFO:  test-node-wasm.js test sensitive -2022-08-15 11:37:21 STATE: test-node-wasm.js start sensitive -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:21 STATE: test-node-wasm.js event: image -2022-08-15 11:37:21 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg sensitive -2022-08-15 11:37:21 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:21 DATA:  test-node-wasm.js result: performance: load: null total: 263 -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: sensitive result match -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: sensitive face result match -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: sensitive face emotion result [{"score":0.46,"emotion":"neutral"},{"score":0.24,"emotion":"fear"},{"score":0.17,"emotion":"sad"}] -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: sensitive body result match -2022-08-15 11:37:21 STATE: test-node-wasm.js passed: sensitive hand result match -2022-08-15 11:37:21 INFO:  test-node-wasm.js test body -2022-08-15 11:37:21 STATE: test-node-wasm.js start blazepose -2022-08-15 11:37:23 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:23 STATE: test-node-wasm.js event: image -2022-08-15 11:37:23 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:23 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg blazepose -2022-08-15 11:37:23 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.99,"keypoints":39} -2022-08-15 11:37:23 DATA:  test-node-wasm.js result: performance: load: null total: 423 -2022-08-15 11:37:23 STATE: test-node-wasm.js passed: blazepose -2022-08-15 11:37:23 STATE: test-node-wasm.js start efficientpose -2022-08-15 11:37:24 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:24 STATE: test-node-wasm.js event: image -2022-08-15 11:37:25 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:25 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg efficientpose -2022-08-15 11:37:25 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.75,"keypoints":13} -2022-08-15 11:37:25 DATA:  test-node-wasm.js result: performance: load: null total: 721 -2022-08-15 11:37:25 STATE: test-node-wasm.js passed: efficientpose -2022-08-15 11:37:25 STATE: test-node-wasm.js start posenet -2022-08-15 11:37:25 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:25 STATE: test-node-wasm.js event: image -2022-08-15 11:37:26 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg posenet -2022-08-15 11:37:26 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.96,"keypoints":16} -2022-08-15 11:37:26 DATA:  test-node-wasm.js result: performance: load: null total: 313 -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: posenet -2022-08-15 11:37:26 STATE: test-node-wasm.js start movenet -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:26 STATE: test-node-wasm.js event: image -2022-08-15 11:37:26 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg movenet -2022-08-15 11:37:26 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:26 DATA:  test-node-wasm.js result: performance: load: null total: 254 -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: movenet -2022-08-15 11:37:26 INFO:  test-node-wasm.js test face matching -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: face database 40 -2022-08-15 11:37:26 STATE: test-node-wasm.js passed: face match {"first":{"index":4,"similarity":0.7827852754786533}} {"second":{"index":4,"similarity":0.5660821189104794}} {"third":{"index":4,"similarity":0.45074189882665594}} -2022-08-15 11:37:26 INFO:  test-node-wasm.js test face similarity alternative -2022-08-15 11:37:26 STATE: test-node-wasm.js start face embeddings -2022-08-15 11:37:27 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:27 STATE: test-node-wasm.js event: image -2022-08-15 11:37:27 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:27 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:37:27 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:27 DATA:  test-node-wasm.js result: performance: load: null total: 278 -2022-08-15 11:37:27 STATE: test-node-wasm.js passed: mobilefacenet {"embedding":192} -2022-08-15 11:37:27 STATE: test-node-wasm.js start face embeddings -2022-08-15 11:37:27 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:27 STATE: test-node-wasm.js event: image -2022-08-15 11:37:28 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face embeddings -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: performance: load: null total: 337 -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: insightface {"embedding":512} -2022-08-15 11:37:28 INFO:  test-node-wasm.js test face attention -2022-08-15 11:37:28 STATE: test-node-wasm.js start face attention -2022-08-15 11:37:28 WARN:  test-node-wasm.js missing kernel ops {"title":"face attention","model":"facemesh","url":"https://vladmandic.github.io/human-models/models/facemesh-attention.json","missing":["atan2"],"backkend":"wasm"} -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:28 STATE: test-node-wasm.js event: image -2022-08-15 11:37:28 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face attention -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: face: 0 body: 1 hand: 1 gesture: 2 object: 0 person: 0 {} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: performance: load: null total: 142 -2022-08-15 11:37:28 ERROR: test-node-wasm.js failed: face attention {"annotations":0} -2022-08-15 11:37:28 INFO:  test-node-wasm.js test detectors -2022-08-15 11:37:28 STATE: test-node-wasm.js start detectors -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:28 STATE: test-node-wasm.js event: image -2022-08-15 11:37:28 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg detectors -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:28 DATA:  test-node-wasm.js result: performance: load: null total: 125 -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: detector result face match -2022-08-15 11:37:28 STATE: test-node-wasm.js passed: detector result hand match -2022-08-15 11:37:28 INFO:  test-node-wasm.js test: multi-instance -2022-08-15 11:37:28 STATE: test-node-wasm.js start multi instance -2022-08-15 11:37:28 STATE: test-node-wasm.js event: image -2022-08-15 11:37:29 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: detect: random multi instance -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: performance: load: null total: 98 -2022-08-15 11:37:29 INFO:  test-node-wasm.js test: first instance -2022-08-15 11:37:29 STATE: test-node-wasm.js start multi instance -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: performance: load: null total: 123 -2022-08-15 11:37:29 INFO:  test-node-wasm.js test: second instance -2022-08-15 11:37:29 STATE: test-node-wasm.js start multi instance -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg multi instance -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:29 DATA:  test-node-wasm.js result: performance: load: null total: 117 -2022-08-15 11:37:29 INFO:  test-node-wasm.js test: concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js start concurrent -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} -2022-08-15 11:37:30 STATE: test-node-wasm.js event: image -2022-08-15 11:37:30 STATE: test-node-wasm.js event: image -2022-08-15 11:37:30 STATE: test-node-wasm.js event: image -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1338 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1338 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1339 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1339 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1339 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1339 -2022-08-15 11:37:31 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1009 -2022-08-15 11:37:31 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:31 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1009 -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} -2022-08-15 11:37:31 DATA:  test-node-wasm.js result: performance: load: null total: 1009 -2022-08-15 11:37:31 INFO:  test-node-wasm.js test: monkey-patch -2022-08-15 11:37:31 STATE: test-node-wasm.js event: image -2022-08-15 11:37:31 STATE: test-node-wasm.js event: detect -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: monkey patch -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: segmentation [65536] -2022-08-15 11:37:31 STATE: test-node-wasm.js passeed: equal usage -2022-08-15 11:37:31 INFO:  test-node-wasm.js test: input compare -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} -2022-08-15 11:37:31 STATE: test-node-wasm.js passed: image compare 0 23.280073018790848 -2022-08-15 11:37:31 INFO:  test-node-wasm.js events: {"image":29,"detect":29,"warmup":2} -2022-08-15 11:37:31 INFO:  test-node-wasm.js tensors 4107 -2022-08-15 11:37:31 INFO:  test-node-wasm.js test complete: 22231 ms -2022-08-15 11:37:31 STATE: all tests complete -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node-simple.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node-fetch.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node-event.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node-similarity.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/nodejs/node-canvas.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"../demo/multithread/node-multiprocess.js","passed":1,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"test-node.js","passed":125,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"test-node-gpu.js","passed":125,"failed":0} -2022-08-15 11:37:31 INFO:  status {"test":"test-node-wasm.js","passed":124,"failed":2} -2022-08-15 11:37:31 INFO:  failures {"count":2} -2022-08-15 11:37:31 WARN:  failed {"test":"test-node-wasm.js","message":["error",["failed: nanodet",[]]]} -2022-08-15 11:37:31 WARN:  failed {"test":"test-node-wasm.js","message":["error",["failed: face attention",{"annotations":0}]]} +2022-08-19 09:13:23 INFO:  @vladmandic/human version 2.9.3 +2022-08-19 09:13:23 INFO:  User: vlado Platform: linux Arch: x64 Node: v18.1.0 +2022-08-19 09:13:23 INFO:  demos: [{"cmd":"../demo/nodejs/node.js","args":[]},{"cmd":"../demo/nodejs/node-simple.js","args":[]},{"cmd":"../demo/nodejs/node-fetch.js","args":[]},{"cmd":"../demo/nodejs/node-event.js","args":["samples/in/ai-body.jpg"]},{"cmd":"../demo/nodejs/node-similarity.js","args":["samples/in/ai-face.jpg","samples/in/ai-upper.jpg"]},{"cmd":"../demo/nodejs/node-canvas.js","args":["samples/in/ai-body.jpg","samples/out/ai-body.jpg"]},{"cmd":"../demo/multithread/node-multiprocess.js","args":[]}] +2022-08-19 09:13:23 INFO:  +2022-08-19 09:13:23 INFO:  {"cmd":"../demo/nodejs/node.js","args":[]} start +2022-08-19 09:13:24 INFO:  +2022-08-19 09:13:24 INFO:  {"cmd":"../demo/nodejs/node-simple.js","args":[]} start +2022-08-19 09:13:25 INFO:  +2022-08-19 09:13:25 INFO:  {"cmd":"../demo/nodejs/node-fetch.js","args":[]} start +2022-08-19 09:13:27 INFO:  +2022-08-19 09:13:27 INFO:  {"cmd":"../demo/nodejs/node-event.js","args":["samples/in/ai-body.jpg"]} start +2022-08-19 09:13:28 INFO:  +2022-08-19 09:13:28 INFO:  {"cmd":"../demo/nodejs/node-similarity.js","args":["samples/in/ai-face.jpg","samples/in/ai-upper.jpg"]} start +2022-08-19 09:13:28 INFO:  +2022-08-19 09:13:28 INFO:  {"cmd":"../demo/nodejs/node-canvas.js","args":["samples/in/ai-body.jpg","samples/out/ai-body.jpg"]} start +2022-08-19 09:13:29 INFO:  +2022-08-19 09:13:29 INFO:  {"cmd":"../demo/multithread/node-multiprocess.js","args":[]} start +2022-08-19 09:13:30 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"] +2022-08-19 09:13:30 INFO:  +2022-08-19 09:13:30 INFO:  test-node.js start +2022-08-19 09:13:30 INFO:  test-node.js test: configuration validation +2022-08-19 09:13:30 STATE: test-node.js passed: configuration default validation [] +2022-08-19 09:13:30 STATE: test-node.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] +2022-08-19 09:13:30 INFO:  test-node.js test: model load +2022-08-19 09:13:30 STATE: test-node.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"file://models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"file://models/emotion.json"},{"name":"facedetect","loaded":true,"url":"file://models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"file://models/iris.json"},{"name":"facemesh","loaded":true,"url":"file://models/facemesh.json"},{"name":"faceres","loaded":true,"url":"file://models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"file://models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"file://models/handtrack.json"},{"name":"liveness","loaded":true,"url":"file://models/liveness.json"},{"name":"movenet","loaded":true,"url":"file://models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"file://models/selfie.json"},{"name":"antispoof","loaded":true,"url":"file://models/antispoof.json"}] +2022-08-19 09:13:30 INFO:  test-node.js test: warmup +2022-08-19 09:13:30 STATE: test-node.js passed: create human +2022-08-19 09:13:30 INFO:  test-node.js human version: 2.9.3 +2022-08-19 09:13:30 INFO:  test-node.js platform: linux x64 agent: NodeJS v18.1.0 +2022-08-19 09:13:30 INFO:  test-node.js tfjs version: 3.19.0 +2022-08-19 09:13:30 INFO:  test-node.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","tensorflow"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{"version":"2.7.3-dev20220521","gpu":false},"wasm":{"supported":true,"backend":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":169} +2022-08-19 09:13:30 STATE: test-node.js passed: set backend: tensorflow +2022-08-19 09:13:30 STATE: test-node.js tensors 1921 +2022-08-19 09:13:30 STATE: test-node.js passed: load models +2022-08-19 09:13:30 STATE: test-node.js result: defined models: 23 loaded models: 12 +2022-08-19 09:13:30 STATE: test-node.js passed: warmup: none default +2022-08-19 09:13:30 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} +2022-08-19 09:13:30 DATA:  test-node.js result: performance: load: null total: null +2022-08-19 09:13:30 STATE: test-node.js passed: warmup none result match +2022-08-19 09:13:30 STATE: test-node.js event: image +2022-08-19 09:13:31 STATE: test-node.js event: detect +2022-08-19 09:13:31 STATE: test-node.js event: warmup +2022-08-19 09:13:31 STATE: test-node.js passed: warmup: face default +2022-08-19 09:13:31 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4} +2022-08-19 09:13:31 DATA:  test-node.js result: performance: load: null total: 410 +2022-08-19 09:13:31 STATE: test-node.js passed: warmup face result match +2022-08-19 09:13:31 STATE: test-node.js event: image +2022-08-19 09:13:31 STATE: test-node.js event: detect +2022-08-19 09:13:31 STATE: test-node.js event: warmup +2022-08-19 09:13:31 STATE: test-node.js passed: warmup: body default +2022-08-19 09:13:31 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:31 DATA:  test-node.js result: performance: load: null total: 305 +2022-08-19 09:13:31 STATE: test-node.js passed: warmup body result match +2022-08-19 09:13:31 STATE: test-node.js details: {"face":{"boxScore":0.92,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.63,"emotion":"angry"},{"score":0.22,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.52,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 10% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} +2022-08-19 09:13:31 INFO:  test-node.js test: details verification +2022-08-19 09:13:31 STATE: test-node.js start default +2022-08-19 09:13:31 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:31 STATE: test-node.js event: image +2022-08-19 09:13:31 STATE: test-node.js event: detect +2022-08-19 09:13:31 STATE: test-node.js passed: detect: samples/in/ai-body.jpg default +2022-08-19 09:13:31 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:31 DATA:  test-node.js result: performance: load: null total: 245 +2022-08-19 09:13:31 STATE: test-node.js passed: details face length 1 +2022-08-19 09:13:31 STATE: test-node.js passed: details face score 1 0.93 1 +2022-08-19 09:13:31 STATE: test-node.js passed: details face age/gender 23.7 female 0.97 85.47 +2022-08-19 09:13:31 STATE: test-node.js passed: details face arrays 4 478 1024 +2022-08-19 09:13:31 STATE: test-node.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} +2022-08-19 09:13:31 STATE: test-node.js passed: details face anti-spoofing 0.79 +2022-08-19 09:13:31 STATE: test-node.js passed: details face liveness 0.83 +2022-08-19 09:13:31 STATE: test-node.js passed: details body length 1 +2022-08-19 09:13:31 STATE: test-node.js passed: details body 0.92 17 6 +2022-08-19 09:13:31 STATE: test-node.js passed: details hand length 1 +2022-08-19 09:13:31 STATE: test-node.js passed: details hand 0.51 0.73 point +2022-08-19 09:13:31 STATE: test-node.js passed: details hand arrays 21 5 7 +2022-08-19 09:13:31 STATE: test-node.js passed: details gesture length 7 +2022-08-19 09:13:31 STATE: test-node.js passed: details gesture first {"face":0,"gesture":"facing right"} +2022-08-19 09:13:31 STATE: test-node.js passed: details object length 1 +2022-08-19 09:13:31 STATE: test-node.js passed: details object 0.72 person +2022-08-19 09:13:32 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996928} +2022-08-19 09:13:32 STATE: test-node.js event: image +2022-08-19 09:13:32 STATE: test-node.js event: detect +2022-08-19 09:13:32 STATE: test-node.js passed: tensor shape: [1,1200,1200,4] dtype: float32 +2022-08-19 09:13:32 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1371996928} +2022-08-19 09:13:32 STATE: test-node.js event: image +2022-08-19 09:13:32 STATE: test-node.js event: detect +2022-08-19 09:13:32 STATE: test-node.js passed: tensor shape: [1200,1200,4] dtype: float32 +2022-08-19 09:13:33 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:33 STATE: test-node.js event: image +2022-08-19 09:13:33 STATE: test-node.js event: detect +2022-08-19 09:13:33 STATE: test-node.js passed: tensor shape: [1,1200,1200,3] dtype: float32 +2022-08-19 09:13:33 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:33 STATE: test-node.js event: image +2022-08-19 09:13:33 STATE: test-node.js event: detect +2022-08-19 09:13:33 STATE: test-node.js passed: tensor shape: [1200,1200,3] dtype: float32 +2022-08-19 09:13:33 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} +2022-08-19 09:13:33 STATE: test-node.js event: image +2022-08-19 09:13:34 STATE: test-node.js event: detect +2022-08-19 09:13:34 STATE: test-node.js passed: tensor shape: [1,1200,1200,4] dtype: int32 +2022-08-19 09:13:34 INFO:  test-node.js test default +2022-08-19 09:13:34 STATE: test-node.js start async +2022-08-19 09:13:34 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:34 STATE: test-node.js event: image +2022-08-19 09:13:34 STATE: test-node.js event: detect +2022-08-19 09:13:34 STATE: test-node.js passed: detect: samples/in/ai-body.jpg async +2022-08-19 09:13:34 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:34 DATA:  test-node.js result: performance: load: null total: 212 +2022-08-19 09:13:34 STATE: test-node.js passed: default result face match 1 female 0.97 +2022-08-19 09:13:34 INFO:  test-node.js test sync +2022-08-19 09:13:34 STATE: test-node.js start sync +2022-08-19 09:13:34 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:34 STATE: test-node.js event: image +2022-08-19 09:13:34 STATE: test-node.js event: detect +2022-08-19 09:13:34 STATE: test-node.js passed: detect: samples/in/ai-body.jpg sync +2022-08-19 09:13:34 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:34 DATA:  test-node.js result: performance: load: null total: 217 +2022-08-19 09:13:34 STATE: test-node.js passed: default sync 1 female 0.97 +2022-08-19 09:13:34 INFO:  test-node.js test: image process +2022-08-19 09:13:34 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:34 STATE: test-node.js passed: image input null [1,256,256,3] +2022-08-19 09:13:34 INFO:  test-node.js test: image null +2022-08-19 09:13:34 STATE: test-node.js passed: invalid input could not convert input to tensor +2022-08-19 09:13:34 INFO:  test-node.js test face similarity +2022-08-19 09:13:34 STATE: test-node.js start face similarity +2022-08-19 09:13:34 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:34 STATE: test-node.js event: image +2022-08-19 09:13:35 STATE: test-node.js event: detect +2022-08-19 09:13:35 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face similarity +2022-08-19 09:13:35 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} +2022-08-19 09:13:35 DATA:  test-node.js result: performance: load: null total: 214 +2022-08-19 09:13:35 STATE: test-node.js start face similarity +2022-08-19 09:13:35 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:35 STATE: test-node.js event: image +2022-08-19 09:13:35 STATE: test-node.js event: detect +2022-08-19 09:13:35 STATE: test-node.js passed: detect: samples/in/ai-body.jpg face similarity +2022-08-19 09:13:35 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:35 DATA:  test-node.js result: performance: load: null total: 229 +2022-08-19 09:13:35 STATE: test-node.js start face similarity +2022-08-19 09:13:35 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:35 STATE: test-node.js event: image +2022-08-19 09:13:35 STATE: test-node.js event: detect +2022-08-19 09:13:35 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg face similarity +2022-08-19 09:13:35 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} +2022-08-19 09:13:35 DATA:  test-node.js result: performance: load: null total: 191 +2022-08-19 09:13:35 STATE: test-node.js passed: face descriptor +2022-08-19 09:13:35 STATE: test-node.js passed: face similarity {"similarity":[1,0.44727452329649126,0.5567935850640406],"descriptors":[1024,1024,1024]} +2022-08-19 09:13:35 INFO:  test-node.js test object +2022-08-19 09:13:35 STATE: test-node.js start object +2022-08-19 09:13:35 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:35 STATE: test-node.js event: image +2022-08-19 09:13:36 STATE: test-node.js event: detect +2022-08-19 09:13:36 STATE: test-node.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:13:36 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:36 DATA:  test-node.js result: performance: load: null total: 205 +2022-08-19 09:13:36 STATE: test-node.js passed: centernet +2022-08-19 09:13:36 STATE: test-node.js start object +2022-08-19 09:13:37 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:37 STATE: test-node.js event: image +2022-08-19 09:13:37 STATE: test-node.js event: detect +2022-08-19 09:13:37 STATE: test-node.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:13:37 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 3 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.86,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:37 DATA:  test-node.js result: performance: load: null total: 223 +2022-08-19 09:13:37 STATE: test-node.js passed: nanodet +2022-08-19 09:13:37 INFO:  test-node.js test sensitive +2022-08-19 09:13:37 STATE: test-node.js start sensitive +2022-08-19 09:13:37 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:37 STATE: test-node.js event: image +2022-08-19 09:13:37 STATE: test-node.js event: detect +2022-08-19 09:13:37 STATE: test-node.js passed: detect: samples/in/ai-body.jpg sensitive +2022-08-19 09:13:37 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:37 DATA:  test-node.js result: performance: load: null total: 171 +2022-08-19 09:13:37 STATE: test-node.js passed: sensitive result match +2022-08-19 09:13:37 STATE: test-node.js passed: sensitive face result match +2022-08-19 09:13:37 STATE: test-node.js passed: sensitive face emotion result [{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}] +2022-08-19 09:13:37 STATE: test-node.js passed: sensitive body result match +2022-08-19 09:13:37 STATE: test-node.js passed: sensitive hand result match +2022-08-19 09:13:37 INFO:  test-node.js test body +2022-08-19 09:13:37 STATE: test-node.js start blazepose +2022-08-19 09:13:39 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:39 STATE: test-node.js event: image +2022-08-19 09:13:39 STATE: test-node.js event: detect +2022-08-19 09:13:39 STATE: test-node.js passed: detect: samples/in/ai-body.jpg blazepose +2022-08-19 09:13:39 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.99,"keypoints":39} +2022-08-19 09:13:39 DATA:  test-node.js result: performance: load: null total: 268 +2022-08-19 09:13:39 STATE: test-node.js passed: blazepose +2022-08-19 09:13:39 STATE: test-node.js start efficientpose +2022-08-19 09:13:40 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:40 STATE: test-node.js event: image +2022-08-19 09:13:41 STATE: test-node.js event: detect +2022-08-19 09:13:41 STATE: test-node.js passed: detect: samples/in/ai-body.jpg efficientpose +2022-08-19 09:13:41 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.75,"keypoints":13} +2022-08-19 09:13:41 DATA:  test-node.js result: performance: load: null total: 274 +2022-08-19 09:13:41 STATE: test-node.js passed: efficientpose +2022-08-19 09:13:41 STATE: test-node.js start posenet +2022-08-19 09:13:41 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:41 STATE: test-node.js event: image +2022-08-19 09:13:42 STATE: test-node.js event: detect +2022-08-19 09:13:42 STATE: test-node.js passed: detect: samples/in/ai-body.jpg posenet +2022-08-19 09:13:42 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.96,"keypoints":16} +2022-08-19 09:13:42 DATA:  test-node.js result: performance: load: null total: 194 +2022-08-19 09:13:42 STATE: test-node.js passed: posenet +2022-08-19 09:13:42 STATE: test-node.js start movenet +2022-08-19 09:13:42 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:42 STATE: test-node.js event: image +2022-08-19 09:13:42 STATE: test-node.js event: detect +2022-08-19 09:13:42 STATE: test-node.js passed: detect: samples/in/ai-body.jpg movenet +2022-08-19 09:13:42 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:42 DATA:  test-node.js result: performance: load: null total: 188 +2022-08-19 09:13:42 STATE: test-node.js passed: movenet +2022-08-19 09:13:42 INFO:  test-node.js test face matching +2022-08-19 09:13:42 STATE: test-node.js passed: face database 40 +2022-08-19 09:13:42 STATE: test-node.js passed: face match {"first":{"index":4,"similarity":0.7827852615252829}} {"second":{"index":4,"similarity":0.5002052633015844}} {"third":{"index":4,"similarity":0.5401587887998899}} +2022-08-19 09:13:42 INFO:  test-node.js test face similarity alternative +2022-08-19 09:13:42 STATE: test-node.js start face embeddings +2022-08-19 09:13:42 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:42 STATE: test-node.js event: image +2022-08-19 09:13:43 STATE: test-node.js event: detect +2022-08-19 09:13:43 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:13:43 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:43 DATA:  test-node.js result: performance: load: null total: 188 +2022-08-19 09:13:43 STATE: test-node.js passed: mobilefacenet {"embedding":192} +2022-08-19 09:13:43 STATE: test-node.js start face embeddings +2022-08-19 09:13:43 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:43 STATE: test-node.js event: image +2022-08-19 09:13:43 STATE: test-node.js event: detect +2022-08-19 09:13:43 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:13:43 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:43 DATA:  test-node.js result: performance: load: null total: 213 +2022-08-19 09:13:43 STATE: test-node.js passed: insightface {"embedding":512} +2022-08-19 09:13:43 INFO:  test-node.js test face attention +2022-08-19 09:13:43 STATE: test-node.js start face attention +2022-08-19 09:13:44 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:44 STATE: test-node.js event: image +2022-08-19 09:13:44 STATE: test-node.js event: detect +2022-08-19 09:13:44 STATE: test-node.js passed: detect: samples/in/ai-face.jpg face attention +2022-08-19 09:13:44 DATA:  test-node.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:44 DATA:  test-node.js result: performance: load: null total: 180 +2022-08-19 09:13:44 STATE: test-node.js passed: face attention +2022-08-19 09:13:44 INFO:  test-node.js test detectors +2022-08-19 09:13:44 STATE: test-node.js start detectors +2022-08-19 09:13:44 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:44 STATE: test-node.js event: image +2022-08-19 09:13:44 STATE: test-node.js event: detect +2022-08-19 09:13:44 STATE: test-node.js passed: detect: samples/in/ai-body.jpg detectors +2022-08-19 09:13:44 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:44 DATA:  test-node.js result: performance: load: null total: 89 +2022-08-19 09:13:44 STATE: test-node.js passed: detector result face match +2022-08-19 09:13:44 STATE: test-node.js passed: detector result hand match +2022-08-19 09:13:44 INFO:  test-node.js test: multi-instance +2022-08-19 09:13:44 STATE: test-node.js start multi instance +2022-08-19 09:13:44 STATE: test-node.js event: image +2022-08-19 09:13:44 STATE: test-node.js event: detect +2022-08-19 09:13:44 STATE: test-node.js passed: detect: random multi instance +2022-08-19 09:13:44 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} +2022-08-19 09:13:44 DATA:  test-node.js result: performance: load: null total: 85 +2022-08-19 09:13:44 INFO:  test-node.js test: first instance +2022-08-19 09:13:44 STATE: test-node.js start multi instance +2022-08-19 09:13:44 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:44 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:13:44 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:13:44 DATA:  test-node.js result: performance: load: null total: 89 +2022-08-19 09:13:44 INFO:  test-node.js test: second instance +2022-08-19 09:13:44 STATE: test-node.js start multi instance +2022-08-19 09:13:44 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:45 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:13:45 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:13:45 DATA:  test-node.js result: performance: load: null total: 82 +2022-08-19 09:13:45 INFO:  test-node.js test: concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js start concurrent +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:45 STATE: test-node.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289024} +2022-08-19 09:13:45 STATE: test-node.js event: image +2022-08-19 09:13:45 STATE: test-node.js event: image +2022-08-19 09:13:45 STATE: test-node.js event: image +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 992 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 992 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 993 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 993 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 993 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 993 +2022-08-19 09:13:46 STATE: test-node.js event: detect +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 719 +2022-08-19 09:13:46 STATE: test-node.js event: detect +2022-08-19 09:13:46 STATE: test-node.js event: detect +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 719 +2022-08-19 09:13:46 STATE: test-node.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:13:46 DATA:  test-node.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:13:46 DATA:  test-node.js result: performance: load: null total: 719 +2022-08-19 09:13:46 INFO:  test-node.js test: monkey-patch +2022-08-19 09:13:46 STATE: test-node.js event: image +2022-08-19 09:13:46 STATE: test-node.js event: detect +2022-08-19 09:13:46 STATE: test-node.js passed: monkey patch +2022-08-19 09:13:46 STATE: test-node.js passed: segmentation [65536] +2022-08-19 09:13:46 STATE: test-node.js passeed: equal usage +2022-08-19 09:13:46 INFO:  test-node.js test: input compare +2022-08-19 09:13:46 STATE: test-node.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:46 STATE: test-node.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796864} +2022-08-19 09:13:46 STATE: test-node.js passed: image compare 0 23.275441687091504 +2022-08-19 09:13:46 INFO:  test-node.js events: {"image":29,"detect":29,"warmup":2} +2022-08-19 09:13:46 INFO:  test-node.js tensors 4105 +2022-08-19 09:13:46 INFO:  test-node.js test complete: 16274 ms +2022-08-19 09:13:46 INFO:  +2022-08-19 09:13:46 INFO:  test-node-gpu.js start +2022-08-19 09:13:48 INFO:  test-node-gpu.js test: configuration validation +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: configuration default validation [] +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] +2022-08-19 09:13:48 INFO:  test-node-gpu.js test: model load +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"file://models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"file://models/emotion.json"},{"name":"facedetect","loaded":true,"url":"file://models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"file://models/iris.json"},{"name":"facemesh","loaded":true,"url":"file://models/facemesh.json"},{"name":"faceres","loaded":true,"url":"file://models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"file://models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"file://models/handtrack.json"},{"name":"liveness","loaded":true,"url":"file://models/liveness.json"},{"name":"movenet","loaded":true,"url":"file://models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"file://models/selfie.json"},{"name":"antispoof","loaded":true,"url":"file://models/antispoof.json"}] +2022-08-19 09:13:48 INFO:  test-node-gpu.js test: warmup +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: create human +2022-08-19 09:13:48 INFO:  test-node-gpu.js human version: 2.9.3 +2022-08-19 09:13:48 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v18.1.0 +2022-08-19 09:13:48 INFO:  test-node-gpu.js tfjs version: 3.19.0 +2022-08-19 09:13:48 INFO:  test-node-gpu.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","tensorflow"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{"version":"2.7.3-dev20220521","gpu":true},"wasm":{"supported":true,"backend":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":169} +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: set backend: tensorflow +2022-08-19 09:13:48 STATE: test-node-gpu.js tensors 1921 +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: load models +2022-08-19 09:13:48 STATE: test-node-gpu.js result: defined models: 23 loaded models: 12 +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: warmup: none default +2022-08-19 09:13:48 DATA:  test-node-gpu.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} +2022-08-19 09:13:48 DATA:  test-node-gpu.js result: performance: load: null total: null +2022-08-19 09:13:48 STATE: test-node-gpu.js passed: warmup none result match +2022-08-19 09:13:49 STATE: test-node-gpu.js event: image +2022-08-19 09:13:54 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:54 STATE: test-node-gpu.js event: warmup +2022-08-19 09:13:54 STATE: test-node-gpu.js passed: warmup: face default +2022-08-19 09:13:54 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4} +2022-08-19 09:13:54 DATA:  test-node-gpu.js result: performance: load: null total: 5301 +2022-08-19 09:13:54 STATE: test-node-gpu.js passed: warmup face result match +2022-08-19 09:13:54 STATE: test-node-gpu.js event: image +2022-08-19 09:13:54 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:54 STATE: test-node-gpu.js event: warmup +2022-08-19 09:13:54 STATE: test-node-gpu.js passed: warmup: body default +2022-08-19 09:13:54 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:54 DATA:  test-node-gpu.js result: performance: load: null total: 150 +2022-08-19 09:13:54 STATE: test-node-gpu.js passed: warmup body result match +2022-08-19 09:13:54 STATE: test-node-gpu.js details: {"face":{"boxScore":0.92,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.63,"emotion":"angry"},{"score":0.22,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.52,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 10% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} +2022-08-19 09:13:54 INFO:  test-node-gpu.js test: details verification +2022-08-19 09:13:54 STATE: test-node-gpu.js start default +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:55 STATE: test-node-gpu.js event: image +2022-08-19 09:13:55 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg default +2022-08-19 09:13:55 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:55 DATA:  test-node-gpu.js result: performance: load: null total: 134 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face length 1 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face score 1 0.93 1 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face age/gender 23.7 female 0.97 85.47 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face arrays 4 478 1024 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face anti-spoofing 0.79 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details face liveness 0.83 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details body length 1 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details body 0.92 17 6 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details hand length 1 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details hand 0.51 0.73 point +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details hand arrays 21 5 7 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details gesture length 7 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details gesture first {"face":0,"gesture":"facing right"} +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details object length 1 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: details object 0.72 person +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996928} +2022-08-19 09:13:55 STATE: test-node-gpu.js event: image +2022-08-19 09:13:55 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,4] dtype: float32 +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1371996928} +2022-08-19 09:13:55 STATE: test-node-gpu.js event: image +2022-08-19 09:13:55 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:55 STATE: test-node-gpu.js passed: tensor shape: [1200,1200,4] dtype: float32 +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:56 STATE: test-node-gpu.js event: image +2022-08-19 09:13:56 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,3] dtype: float32 +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:56 STATE: test-node-gpu.js event: image +2022-08-19 09:13:56 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: tensor shape: [1200,1200,3] dtype: float32 +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} +2022-08-19 09:13:56 STATE: test-node-gpu.js event: image +2022-08-19 09:13:56 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:56 STATE: test-node-gpu.js passed: tensor shape: [1,1200,1200,4] dtype: int32 +2022-08-19 09:13:56 INFO:  test-node-gpu.js test default +2022-08-19 09:13:56 STATE: test-node-gpu.js start async +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:57 STATE: test-node-gpu.js event: image +2022-08-19 09:13:57 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg async +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: performance: load: null total: 148 +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: default result face match 1 female 0.97 +2022-08-19 09:13:57 INFO:  test-node-gpu.js test sync +2022-08-19 09:13:57 STATE: test-node-gpu.js start sync +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:57 STATE: test-node-gpu.js event: image +2022-08-19 09:13:57 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg sync +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: performance: load: null total: 142 +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: default sync 1 female 0.97 +2022-08-19 09:13:57 INFO:  test-node-gpu.js test: image process +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: image input null [1,256,256,3] +2022-08-19 09:13:57 INFO:  test-node-gpu.js test: image null +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: invalid input could not convert input to tensor +2022-08-19 09:13:57 INFO:  test-node-gpu.js test face similarity +2022-08-19 09:13:57 STATE: test-node-gpu.js start face similarity +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:13:57 STATE: test-node-gpu.js event: image +2022-08-19 09:13:57 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face similarity +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} +2022-08-19 09:13:57 DATA:  test-node-gpu.js result: performance: load: null total: 163 +2022-08-19 09:13:57 STATE: test-node-gpu.js start face similarity +2022-08-19 09:13:57 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:57 STATE: test-node-gpu.js event: image +2022-08-19 09:13:58 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg face similarity +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: performance: load: null total: 171 +2022-08-19 09:13:58 STATE: test-node-gpu.js start face similarity +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:13:58 STATE: test-node-gpu.js event: image +2022-08-19 09:13:58 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg face similarity +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: performance: load: null total: 168 +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: face descriptor +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: face similarity {"similarity":[1,0.447238756461232,0.556914029877052],"descriptors":[1024,1024,1024]} +2022-08-19 09:13:58 INFO:  test-node-gpu.js test object +2022-08-19 09:13:58 STATE: test-node-gpu.js start object +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:58 STATE: test-node-gpu.js event: image +2022-08-19 09:13:58 STATE: test-node-gpu.js event: detect +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:13:58 DATA:  test-node-gpu.js result: performance: load: null total: 187 +2022-08-19 09:13:58 STATE: test-node-gpu.js passed: centernet +2022-08-19 09:13:58 STATE: test-node-gpu.js start object +2022-08-19 09:13:59 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:13:59 STATE: test-node-gpu.js event: image +2022-08-19 09:14:00 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:14:00 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 3 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.86,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:00 DATA:  test-node-gpu.js result: performance: load: null total: 469 +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: nanodet +2022-08-19 09:14:00 INFO:  test-node-gpu.js test sensitive +2022-08-19 09:14:00 STATE: test-node-gpu.js start sensitive +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:00 STATE: test-node-gpu.js event: image +2022-08-19 09:14:00 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg sensitive +2022-08-19 09:14:00 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:00 DATA:  test-node-gpu.js result: performance: load: null total: 125 +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: sensitive result match +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: sensitive face result match +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: sensitive face emotion result [{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}] +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: sensitive body result match +2022-08-19 09:14:00 STATE: test-node-gpu.js passed: sensitive hand result match +2022-08-19 09:14:00 INFO:  test-node-gpu.js test body +2022-08-19 09:14:00 STATE: test-node-gpu.js start blazepose +2022-08-19 09:14:01 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:01 STATE: test-node-gpu.js event: image +2022-08-19 09:14:02 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:02 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg blazepose +2022-08-19 09:14:02 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.99,"keypoints":39} +2022-08-19 09:14:02 DATA:  test-node-gpu.js result: performance: load: null total: 253 +2022-08-19 09:14:02 STATE: test-node-gpu.js passed: blazepose +2022-08-19 09:14:02 STATE: test-node-gpu.js start efficientpose +2022-08-19 09:14:02 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:02 STATE: test-node-gpu.js event: image +2022-08-19 09:14:03 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:03 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg efficientpose +2022-08-19 09:14:03 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.75,"keypoints":13} +2022-08-19 09:14:03 DATA:  test-node-gpu.js result: performance: load: null total: 841 +2022-08-19 09:14:03 STATE: test-node-gpu.js passed: efficientpose +2022-08-19 09:14:03 STATE: test-node-gpu.js start posenet +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:04 STATE: test-node-gpu.js event: image +2022-08-19 09:14:04 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg posenet +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.96,"keypoints":16} +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: performance: load: null total: 134 +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: posenet +2022-08-19 09:14:04 STATE: test-node-gpu.js start movenet +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:04 STATE: test-node-gpu.js event: image +2022-08-19 09:14:04 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg movenet +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 9 object: 0 person: 1 {"score":1,"age":23.7,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: performance: load: null total: 107 +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: movenet +2022-08-19 09:14:04 INFO:  test-node-gpu.js test face matching +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: face database 40 +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: face match {"first":{"index":4,"similarity":0.7828184453007331}} {"second":{"index":4,"similarity":0.5001334216773398}} {"third":{"index":4,"similarity":0.5403054967489764}} +2022-08-19 09:14:04 INFO:  test-node-gpu.js test face similarity alternative +2022-08-19 09:14:04 STATE: test-node-gpu.js start face embeddings +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:04 STATE: test-node-gpu.js event: image +2022-08-19 09:14:04 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:04 DATA:  test-node-gpu.js result: performance: load: null total: 155 +2022-08-19 09:14:04 STATE: test-node-gpu.js passed: mobilefacenet {"embedding":192} +2022-08-19 09:14:04 STATE: test-node-gpu.js start face embeddings +2022-08-19 09:14:05 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:05 STATE: test-node-gpu.js event: image +2022-08-19 09:14:05 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:05 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:14:05 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:05 DATA:  test-node-gpu.js result: performance: load: null total: 181 +2022-08-19 09:14:05 STATE: test-node-gpu.js passed: insightface {"embedding":512} +2022-08-19 09:14:05 INFO:  test-node-gpu.js test face attention +2022-08-19 09:14:05 STATE: test-node-gpu.js start face attention +2022-08-19 09:14:05 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:05 STATE: test-node-gpu.js event: image +2022-08-19 09:14:06 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg face attention +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: performance: load: null total: 224 +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: face attention +2022-08-19 09:14:06 INFO:  test-node-gpu.js test detectors +2022-08-19 09:14:06 STATE: test-node-gpu.js start detectors +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:06 STATE: test-node-gpu.js event: image +2022-08-19 09:14:06 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg detectors +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: performance: load: null total: 59 +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detector result face match +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detector result hand match +2022-08-19 09:14:06 INFO:  test-node-gpu.js test: multi-instance +2022-08-19 09:14:06 STATE: test-node-gpu.js start multi instance +2022-08-19 09:14:06 STATE: test-node-gpu.js event: image +2022-08-19 09:14:06 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detect: random multi instance +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: performance: load: null total: 53 +2022-08-19 09:14:06 INFO:  test-node-gpu.js test: first instance +2022-08-19 09:14:06 STATE: test-node-gpu.js start multi instance +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: performance: load: null total: 45 +2022-08-19 09:14:06 INFO:  test-node-gpu.js test: second instance +2022-08-19 09:14:06 STATE: test-node-gpu.js start multi instance +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:06 DATA:  test-node-gpu.js result: performance: load: null total: 49 +2022-08-19 09:14:06 INFO:  test-node-gpu.js test: concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js start concurrent +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:06 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151289056} +2022-08-19 09:14:07 STATE: test-node-gpu.js event: image +2022-08-19 09:14:07 STATE: test-node-gpu.js event: image +2022-08-19 09:14:07 STATE: test-node-gpu.js event: image +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 699 +2022-08-19 09:14:07 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 427 +2022-08-19 09:14:07 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:07 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 427 +2022-08-19 09:14:07 STATE: test-node-gpu.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:07 DATA:  test-node-gpu.js result: performance: load: null total: 427 +2022-08-19 09:14:07 INFO:  test-node-gpu.js test: monkey-patch +2022-08-19 09:14:07 STATE: test-node-gpu.js event: image +2022-08-19 09:14:08 STATE: test-node-gpu.js event: detect +2022-08-19 09:14:08 STATE: test-node-gpu.js passed: monkey patch +2022-08-19 09:14:08 STATE: test-node-gpu.js passed: segmentation [65536] +2022-08-19 09:14:08 STATE: test-node-gpu.js passeed: equal usage +2022-08-19 09:14:08 INFO:  test-node-gpu.js test: input compare +2022-08-19 09:14:08 STATE: test-node-gpu.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34696120} +2022-08-19 09:14:08 STATE: test-node-gpu.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1004796928} +2022-08-19 09:14:08 STATE: test-node-gpu.js passed: image compare 0 23.275441687091504 +2022-08-19 09:14:08 INFO:  test-node-gpu.js events: {"image":29,"detect":29,"warmup":2} +2022-08-19 09:14:08 INFO:  test-node-gpu.js tensors 4105 +2022-08-19 09:14:08 INFO:  test-node-gpu.js test complete: 19548 ms +2022-08-19 09:14:09 INFO:  +2022-08-19 09:14:09 INFO:  test-node-wasm.js start +2022-08-19 09:14:11 DATA:  test-node-wasm.js stdout: 2022-08-19 09:14:11 INFO:  { supported: true, backend: true, simd: true, multithread: false } +2022-08-19 09:14:11 STATE: test-node-wasm.js passed: model server: https://vladmandic.github.io/human/models/ +2022-08-19 09:14:11 INFO:  test-node-wasm.js test: configuration validation +2022-08-19 09:14:11 STATE: test-node-wasm.js passed: configuration default validation [] +2022-08-19 09:14:11 STATE: test-node-wasm.js passed: configuration invalid validation [{"reason":"unknown property","where":"config.invalid = true"}] +2022-08-19 09:14:11 INFO:  test-node-wasm.js test: model load +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: models loaded 23 12 [{"name":"ssrnetage","loaded":false,"url":null},{"name":"gear","loaded":false,"url":null},{"name":"blazeposedetect","loaded":false,"url":null},{"name":"blazepose","loaded":false,"url":null},{"name":"centernet","loaded":true,"url":"https://vladmandic.github.io/human/models/mb3-centernet.json"},{"name":"efficientpose","loaded":false,"url":null},{"name":"mobilefacenet","loaded":false,"url":null},{"name":"insightface","loaded":false,"url":null},{"name":"emotion","loaded":true,"url":"https://vladmandic.github.io/human/models/emotion.json"},{"name":"facedetect","loaded":true,"url":"https://vladmandic.github.io/human/models/blazeface.json"},{"name":"faceiris","loaded":true,"url":"https://vladmandic.github.io/human/models/iris.json"},{"name":"facemesh","loaded":true,"url":"https://vladmandic.github.io/human/models/facemesh.json"},{"name":"faceres","loaded":true,"url":"https://vladmandic.github.io/human/models/faceres.json"},{"name":"ssrnetgender","loaded":false,"url":null},{"name":"handpose","loaded":false,"url":null},{"name":"handskeleton","loaded":true,"url":"https://vladmandic.github.io/human/models/handlandmark-full.json"},{"name":"handtrack","loaded":true,"url":"https://vladmandic.github.io/human/models/handtrack.json"},{"name":"liveness","loaded":true,"url":"https://vladmandic.github.io/human/models/liveness.json"},{"name":"movenet","loaded":true,"url":"https://vladmandic.github.io/human/models/movenet-lightning.json"},{"name":"nanodet","loaded":false,"url":null},{"name":"posenet","loaded":false,"url":null},{"name":"segmentation","loaded":true,"url":"https://vladmandic.github.io/human/models/selfie.json"},{"name":"antispoof","loaded":true,"url":"https://vladmandic.github.io/human/models/antispoof.json"}] +2022-08-19 09:14:12 INFO:  test-node-wasm.js test: warmup +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: create human +2022-08-19 09:14:12 INFO:  test-node-wasm.js human version: 2.9.3 +2022-08-19 09:14:12 INFO:  test-node-wasm.js platform: linux x64 agent: NodeJS v18.1.0 +2022-08-19 09:14:12 INFO:  test-node-wasm.js tfjs version: 3.19.0 +2022-08-19 09:14:12 INFO:  test-node-wasm.js env: {"browser":false,"node":true,"platform":"linux x64","agent":"NodeJS v18.1.0","backends":["cpu","wasm"],"initial":false,"tfjs":{"version":"3.19.0"},"offscreen":false,"perfadd":false,"tensorflow":{},"wasm":{"supported":true,"backend":true,"simd":true,"multithread":false},"webgl":{"supported":false,"backend":false},"webgpu":{"supported":false,"backend":false},"cpu":{"flags":[]},"kernels":126} +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: set backend: wasm +2022-08-19 09:14:12 STATE: test-node-wasm.js tensors 1921 +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: load models +2022-08-19 09:14:12 STATE: test-node-wasm.js result: defined models: 23 loaded models: 12 +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: warmup: none default +2022-08-19 09:14:12 DATA:  test-node-wasm.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} +2022-08-19 09:14:12 DATA:  test-node-wasm.js result: performance: load: null total: null +2022-08-19 09:14:12 STATE: test-node-wasm.js passed: warmup none result match +2022-08-19 09:14:12 STATE: test-node-wasm.js event: image +2022-08-19 09:14:13 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:13 STATE: test-node-wasm.js event: warmup +2022-08-19 09:14:13 STATE: test-node-wasm.js passed: warmup: face default +2022-08-19 09:14:13 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} +2022-08-19 09:14:13 DATA:  test-node-wasm.js result: performance: load: null total: 502 +2022-08-19 09:14:13 STATE: test-node-wasm.js passed: warmup face result match +2022-08-19 09:14:13 STATE: test-node-wasm.js event: image +2022-08-19 09:14:13 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:13 STATE: test-node-wasm.js event: warmup +2022-08-19 09:14:13 STATE: test-node-wasm.js passed: warmup: body default +2022-08-19 09:14:13 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:13 DATA:  test-node-wasm.js result: performance: load: null total: 357 +2022-08-19 09:14:13 STATE: test-node-wasm.js passed: warmup body result match +2022-08-19 09:14:13 STATE: test-node-wasm.js details: {"face":{"boxScore":0.93,"faceScore":1,"age":23.7,"gender":"female","genderScore":0.97},"emotion":[{"score":0.59,"emotion":"angry"},{"score":0.29,"emotion":"fear"}],"body":{"score":0.92,"keypoints":17},"hand":{"boxScore":0.51,"fingerScore":0.73,"keypoints":21},"gestures":[{"face":0,"gesture":"facing right"},{"face":0,"gesture":"mouth 21% open"},{"hand":0,"gesture":"pinky forward"},{"hand":0,"gesture":"palm up"},{"hand":0,"gesture":"open palm"},{"iris":0,"gesture":"looking left"},{"iris":0,"gesture":"looking up"}]} +2022-08-19 09:14:13 INFO:  test-node-wasm.js test: details verification +2022-08-19 09:14:13 STATE: test-node-wasm.js start default +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:14 STATE: test-node-wasm.js event: image +2022-08-19 09:14:14 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg default +2022-08-19 09:14:14 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 7 object: 1 person: 1 {"score":1,"age":23.7,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:14 DATA:  test-node-wasm.js result: performance: load: null total: 336 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face length 1 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face score 1 0.93 1 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face age/gender 23.7 female 0.97 85.47 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face arrays 4 478 1024 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face emotion 2 {"score":0.59,"emotion":"angry"} +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face anti-spoofing 0.79 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details face liveness 0.83 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details body length 1 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details body 0.92 17 6 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details hand length 1 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details hand 0.51 0.73 point +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details hand arrays 21 5 7 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details gesture length 7 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details gesture first {"face":0,"gesture":"facing right"} +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details object length 1 +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: details object 0.72 person +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1413675264} +2022-08-19 09:14:14 STATE: test-node-wasm.js event: image +2022-08-19 09:14:14 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:14 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,4] dtype: float32 +2022-08-19 09:14:15 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1200,1200,4] {"checksum":1413675264} +2022-08-19 09:14:15 STATE: test-node-wasm.js event: image +2022-08-19 09:14:15 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:15 STATE: test-node-wasm.js passed: tensor shape: [1200,1200,4] dtype: float32 +2022-08-19 09:14:15 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:15 STATE: test-node-wasm.js event: image +2022-08-19 09:14:16 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:16 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,3] dtype: float32 +2022-08-19 09:14:16 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:16 STATE: test-node-wasm.js event: image +2022-08-19 09:14:16 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:16 STATE: test-node-wasm.js passed: tensor shape: [1200,1200,3] dtype: float32 +2022-08-19 09:14:16 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,4] {"checksum":1371996871} +2022-08-19 09:14:16 STATE: test-node-wasm.js event: image +2022-08-19 09:14:17 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:17 STATE: test-node-wasm.js passed: tensor shape: [1,1200,1200,4] dtype: int32 +2022-08-19 09:14:17 INFO:  test-node-wasm.js test default +2022-08-19 09:14:17 STATE: test-node-wasm.js start async +2022-08-19 09:14:17 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:17 STATE: test-node-wasm.js event: image +2022-08-19 09:14:17 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:17 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg async +2022-08-19 09:14:17 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:17 DATA:  test-node-wasm.js result: performance: load: null total: 356 +2022-08-19 09:14:17 STATE: test-node-wasm.js passed: default result face match 1 female 0.97 +2022-08-19 09:14:17 INFO:  test-node-wasm.js test sync +2022-08-19 09:14:17 STATE: test-node-wasm.js start sync +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:18 STATE: test-node-wasm.js event: image +2022-08-19 09:14:18 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg sync +2022-08-19 09:14:18 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:18 DATA:  test-node-wasm.js result: performance: load: null total: 323 +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: default sync 1 female 0.97 +2022-08-19 09:14:18 INFO:  test-node-wasm.js test: image process +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: image input null [1,256,256,3] +2022-08-19 09:14:18 INFO:  test-node-wasm.js test: image null +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: invalid input could not convert input to tensor +2022-08-19 09:14:18 INFO:  test-node-wasm.js test face similarity +2022-08-19 09:14:18 STATE: test-node-wasm.js start face similarity +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:18 STATE: test-node-wasm.js event: image +2022-08-19 09:14:18 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face similarity +2022-08-19 09:14:18 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 6 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":3} +2022-08-19 09:14:18 DATA:  test-node-wasm.js result: performance: load: null total: 310 +2022-08-19 09:14:18 STATE: test-node-wasm.js start face similarity +2022-08-19 09:14:18 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:18 STATE: test-node-wasm.js event: image +2022-08-19 09:14:19 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg face similarity +2022-08-19 09:14:19 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:19 DATA:  test-node-wasm.js result: performance: load: null total: 360 +2022-08-19 09:14:19 STATE: test-node-wasm.js start face similarity +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:19 STATE: test-node-wasm.js event: image +2022-08-19 09:14:19 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg face similarity +2022-08-19 09:14:19 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"score":1,"age":23.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.75,"keypoints":7} +2022-08-19 09:14:19 DATA:  test-node-wasm.js result: performance: load: null total: 337 +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: face descriptor +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: face similarity {"similarity":[1,0.5266119940661309,0.4858842904087851],"descriptors":[1024,1024,1024]} +2022-08-19 09:14:19 INFO:  test-node-wasm.js test object +2022-08-19 09:14:19 STATE: test-node-wasm.js start object +2022-08-19 09:14:19 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:19 STATE: test-node-wasm.js event: image +2022-08-19 09:14:20 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:20 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:14:20 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 1 person: 1 {"score":1,"age":29.6,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} +2022-08-19 09:14:20 DATA:  test-node-wasm.js result: performance: load: null total: 371 +2022-08-19 09:14:20 STATE: test-node-wasm.js passed: centernet +2022-08-19 09:14:20 STATE: test-node-wasm.js start object +2022-08-19 09:14:20 WARN:  test-node-wasm.js missing kernel ops {"title":"object","model":"nanodet","url":"https://vladmandic.github.io/human-models/models/nanodet.json","missing":["sparsetodense"],"backkend":"wasm"} +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:21 STATE: test-node-wasm.js event: image +2022-08-19 09:14:21 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg object +2022-08-19 09:14:21 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 8 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:21 DATA:  test-node-wasm.js result: performance: load: null total: 266 +2022-08-19 09:14:21 ERROR: test-node-wasm.js failed: nanodet [] +2022-08-19 09:14:21 INFO:  test-node-wasm.js test sensitive +2022-08-19 09:14:21 STATE: test-node-wasm.js start sensitive +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:21 STATE: test-node-wasm.js event: image +2022-08-19 09:14:21 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg sensitive +2022-08-19 09:14:21 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:21 DATA:  test-node-wasm.js result: performance: load: null total: 288 +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: sensitive result match +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: sensitive face result match +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: sensitive face emotion result [{"score":0.46,"emotion":"neutral"},{"score":0.24,"emotion":"fear"},{"score":0.17,"emotion":"sad"}] +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: sensitive body result match +2022-08-19 09:14:21 STATE: test-node-wasm.js passed: sensitive hand result match +2022-08-19 09:14:21 INFO:  test-node-wasm.js test body +2022-08-19 09:14:21 STATE: test-node-wasm.js start blazepose +2022-08-19 09:14:23 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:23 STATE: test-node-wasm.js event: image +2022-08-19 09:14:23 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:23 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg blazepose +2022-08-19 09:14:23 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.99,"keypoints":39} +2022-08-19 09:14:23 DATA:  test-node-wasm.js result: performance: load: null total: 410 +2022-08-19 09:14:23 STATE: test-node-wasm.js passed: blazepose +2022-08-19 09:14:23 STATE: test-node-wasm.js start efficientpose +2022-08-19 09:14:24 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:24 STATE: test-node-wasm.js event: image +2022-08-19 09:14:25 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:25 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg efficientpose +2022-08-19 09:14:25 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.75,"keypoints":13} +2022-08-19 09:14:25 DATA:  test-node-wasm.js result: performance: load: null total: 643 +2022-08-19 09:14:25 STATE: test-node-wasm.js passed: efficientpose +2022-08-19 09:14:25 STATE: test-node-wasm.js start posenet +2022-08-19 09:14:25 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:25 STATE: test-node-wasm.js event: image +2022-08-19 09:14:25 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:25 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg posenet +2022-08-19 09:14:25 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.96,"keypoints":16} +2022-08-19 09:14:25 DATA:  test-node-wasm.js result: performance: load: null total: 291 +2022-08-19 09:14:25 STATE: test-node-wasm.js passed: posenet +2022-08-19 09:14:25 STATE: test-node-wasm.js start movenet +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:26 STATE: test-node-wasm.js event: image +2022-08-19 09:14:26 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg movenet +2022-08-19 09:14:26 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 10 object: 0 person: 1 {"score":1,"age":29.6,"gender":"female"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:26 DATA:  test-node-wasm.js result: performance: load: null total: 236 +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: movenet +2022-08-19 09:14:26 INFO:  test-node-wasm.js test face matching +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: face database 40 +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: face match {"first":{"index":4,"similarity":0.7827852754786533}} {"second":{"index":4,"similarity":0.5660821189104794}} {"third":{"index":4,"similarity":0.45074189882665594}} +2022-08-19 09:14:26 INFO:  test-node-wasm.js test face similarity alternative +2022-08-19 09:14:26 STATE: test-node-wasm.js start face embeddings +2022-08-19 09:14:26 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:26 STATE: test-node-wasm.js event: image +2022-08-19 09:14:27 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:27 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:14:27 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:27 DATA:  test-node-wasm.js result: performance: load: null total: 245 +2022-08-19 09:14:27 STATE: test-node-wasm.js passed: mobilefacenet {"embedding":192} +2022-08-19 09:14:27 STATE: test-node-wasm.js start face embeddings +2022-08-19 09:14:27 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:27 STATE: test-node-wasm.js event: image +2022-08-19 09:14:28 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face embeddings +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 2 gesture: 8 object: 0 person: 1 {"score":1,"age":23.5,"gender":"female"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: performance: load: null total: 291 +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: insightface {"embedding":512} +2022-08-19 09:14:28 INFO:  test-node-wasm.js test face attention +2022-08-19 09:14:28 STATE: test-node-wasm.js start face attention +2022-08-19 09:14:28 WARN:  test-node-wasm.js missing kernel ops {"title":"face attention","model":"facemesh","url":"https://vladmandic.github.io/human-models/models/facemesh-attention.json","missing":["atan2"],"backkend":"wasm"} +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:28 STATE: test-node-wasm.js event: image +2022-08-19 09:14:28 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg face attention +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: face: 0 body: 1 hand: 1 gesture: 2 object: 0 person: 0 {} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: performance: load: null total: 124 +2022-08-19 09:14:28 ERROR: test-node-wasm.js failed: face attention {"annotations":0} +2022-08-19 09:14:28 INFO:  test-node-wasm.js test detectors +2022-08-19 09:14:28 STATE: test-node-wasm.js start detectors +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:28 STATE: test-node-wasm.js event: image +2022-08-19 09:14:28 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg detectors +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: performance: load: null total: 130 +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detector result face match +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detector result hand match +2022-08-19 09:14:28 INFO:  test-node-wasm.js test: multi-instance +2022-08-19 09:14:28 STATE: test-node-wasm.js start multi instance +2022-08-19 09:14:28 STATE: test-node-wasm.js event: image +2022-08-19 09:14:28 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:28 STATE: test-node-wasm.js passed: detect: random multi instance +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} +2022-08-19 09:14:28 DATA:  test-node-wasm.js result: performance: load: null total: 109 +2022-08-19 09:14:28 INFO:  test-node-wasm.js test: first instance +2022-08-19 09:14:28 STATE: test-node-wasm.js start multi instance +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:14:29 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:29 DATA:  test-node-wasm.js result: performance: load: null total: 112 +2022-08-19 09:14:29 INFO:  test-node-wasm.js test: second instance +2022-08-19 09:14:29 STATE: test-node-wasm.js start multi instance +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg multi instance +2022-08-19 09:14:29 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:29 DATA:  test-node-wasm.js result: performance: load: null total: 113 +2022-08-19 09:14:29 INFO:  test-node-wasm.js test: concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js start concurrent +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:29 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:30 STATE: test-node-wasm.js passed: load image: samples/in/ai-upper.jpg [1,720,688,3] {"checksum":151155104} +2022-08-19 09:14:30 STATE: test-node-wasm.js event: image +2022-08-19 09:14:30 STATE: test-node-wasm.js event: image +2022-08-19 09:14:30 STATE: test-node-wasm.js event: image +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1334 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1334 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1335 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1335 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1335 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1335 +2022-08-19 09:14:31 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-upper.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 0 object: 0 person: 1 {"score":0.96,"gender":"unknown"} {} {"score":0.75,"keypoints":7} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1014 +2022-08-19 09:14:31 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:31 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-face.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.91,"gender":"unknown"} {} {"score":0.47,"keypoints":3} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1014 +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: detect: samples/in/ai-body.jpg concurrent +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 1 gesture: 0 object: 0 person: 1 {"score":0.93,"gender":"unknown"} {} {"score":0.92,"keypoints":17} +2022-08-19 09:14:31 DATA:  test-node-wasm.js result: performance: load: null total: 1014 +2022-08-19 09:14:31 INFO:  test-node-wasm.js test: monkey-patch +2022-08-19 09:14:31 STATE: test-node-wasm.js event: image +2022-08-19 09:14:31 STATE: test-node-wasm.js event: detect +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: monkey patch +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: segmentation [65536] +2022-08-19 09:14:31 STATE: test-node-wasm.js passeed: equal usage +2022-08-19 09:14:31 INFO:  test-node-wasm.js test: input compare +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: load image: samples/in/ai-face.jpg [1,256,256,3] {"checksum":34697856} +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: load image: samples/in/ai-body.jpg [1,1200,1200,3] {"checksum":1038921856} +2022-08-19 09:14:31 STATE: test-node-wasm.js passed: image compare 0 23.280073018790848 +2022-08-19 09:14:31 INFO:  test-node-wasm.js events: {"image":29,"detect":29,"warmup":2} +2022-08-19 09:14:31 INFO:  test-node-wasm.js tensors 4107 +2022-08-19 09:14:31 INFO:  test-node-wasm.js test complete: 20364 ms +2022-08-19 09:14:31 STATE: all tests complete +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node-simple.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node-fetch.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node-event.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node-similarity.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/nodejs/node-canvas.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"../demo/multithread/node-multiprocess.js","passed":1,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"test-node.js","passed":125,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"test-node-gpu.js","passed":125,"failed":0} +2022-08-19 09:14:31 INFO:  status {"test":"test-node-wasm.js","passed":124,"failed":2} +2022-08-19 09:14:31 INFO:  failures {"count":2} +2022-08-19 09:14:31 WARN:  failed {"test":"test-node-wasm.js","message":["error",["failed: nanodet",[]]]} +2022-08-19 09:14:31 WARN:  failed {"test":"test-node-wasm.js","message":["error",["failed: face attention",{"annotations":0}]]}