change build process

pull/193/head
Vladimir Mandic 2021-09-10 21:21:29 -04:00
parent 7aea99e057
commit c3b59baff1
40 changed files with 839 additions and 361 deletions

View File

@ -1,16 +1,17 @@
# @vladmandic/human
Version: **2.1.5**
Description: **Human: AI-powered 3D Face Detection & Rotation Tracking, Face Description & Recognition, Body Pose Tracking, 3D Hand & Finger Tracking, Iris Analysis, Age & Gender & Emotion Prediction, Gesture Recognition**
Version: **2.1.5**
Description: **Human: AI-powered 3D Face Detection & Rotation Tracking, Face Description & Recognition, Body Pose Tracking, 3D Hand & Finger Tracking, Iris Analysis, Age & Gender & Emotion Prediction, Gesture Recognition**
Author: **Vladimir Mandic <mandic00@live.com>**
License: **MIT** </LICENSE>
Repository: **<git+https://github.com/vladmandic/human.git>**
Author: **Vladimir Mandic <mandic00@live.com>**
License: **MIT**
Repository: **<https://github.com/vladmandic/human>**
## Changelog
### **HEAD -> main** 2021/08/31 mandic00@live.com
### **HEAD -> main** 2021/09/06 mandic00@live.com
- add benchmark info
- simplify canvas handling in nodejs
- full rebuild

155
build.json Normal file
View File

@ -0,0 +1,155 @@
{
"log": {
"enabled": true,
"debug": false,
"console": true,
"output": "test/build.log"
},
"clean": {
"enabled": true,
"locations": ["dist/*", "types/*", "typedoc/*"]
},
"lint": {
"enabled": true,
"locations": [ "src/**/*.ts", "test/*.js", "demo/**/*.js" ],
"rules": { }
},
"changelog": {
"enabled": true,
"log": "CHANGELOG.md"
},
"serve": {
"enabled": true,
"sslKey": "node_modules/@vladmandic/build/cert/https.key",
"sslCrt": "node_modules/@vladmandic/build/cert/https.crt",
"httpPort": 10030,
"httpsPort": 10031,
"documentRoot": ".",
"defaultFolder": "demo",
"defaultFile": "index.html"
},
"build": {
"enabled": true,
"global": {
"target": "es2018",
"sourcemap": true,
"banner": { "js": "/*\n Human\n homepage: <https://github.com/vladmandic/human>\n author: <https://github.com/vladmandic>'\n*/\n" }
},
"production": {
"minify": false
},
"development": {
"minify": false
},
"targets": [
{
"name": "tfjs for nodejs with cpu",
"platform": "node",
"format": "cjs",
"input": "tfjs/tf-node.ts",
"output": "dist/tfjs.esm.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "human for nodejs with cpu",
"platform": "node",
"format": "cjs",
"input": "src/human.ts",
"output": "dist/human.node.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "tfjs for nodejs with gpu",
"platform": "node",
"format": "cjs",
"input": "tfjs/tf-node-gpu.ts",
"output": "dist/tfjs.esm.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "human for nodejs with gpu",
"platform": "node",
"format": "cjs",
"input": "src/human.ts",
"output": "dist/human.node-gpu.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "tfjs for nodejs with wasm",
"platform": "node",
"format": "cjs",
"input": "tfjs/tf-node-wasm.ts",
"output": "dist/tfjs.esm.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "human for nodejs with wasm",
"platform": "node",
"format": "cjs",
"input": "src/human.ts",
"output": "dist/human.node-wasm.js",
"sourcemap": false,
"external": ["@tensorflow"]
},
{
"name": "tfjs for browser esm nobundle",
"platform": "browser",
"format": "esm",
"input": "tfjs/tf-browser.ts",
"output": "dist/tfjs.esm.js",
"sourcemap": false,
"external": ["@tensorflow", "fs", "os", "buffer", "util"]
},
{
"name": "human for browser esm nobundle",
"platform": "browser",
"format": "esm",
"input": "src/human.ts",
"output": "dist/human.esm-nobundle.js",
"sourcemap": true,
"external": ["@tensorflow", "fs", "os", "buffer", "util"]
},
{
"name": "tfjs for browser esm bundle",
"platform": "browser",
"format": "esm",
"input": "tfjs/tf-browser.ts",
"output": "dist/tfjs.esm.js",
"sourcemap": false,
"external": ["fs", "os", "buffer", "util"]
},
{
"name": "human for browser iife bundle",
"platform": "browser",
"format": "iife",
"input": "src/human.ts",
"output": "dist/human.js",
"sourcemap": false,
"external": ["fs", "os", "buffer", "util"]
},
{
"name": "human for browser esm bundle",
"platform": "browser",
"format": "esm",
"input": "src/human.ts",
"output": "dist/human.esm.js",
"sourcemap": true,
"external": ["fs", "os", "buffer", "util"],
"typings": "types",
"typedoc": "typedoc"
}
]
},
"watch": {
"enabled": true,
"locations": [ "src/**", "tfjs/*" ]
},
"typescript": {
"allowJs": false
}
}

View File

@ -50,7 +50,7 @@ async function init() {
await human.tf.ready();
// pre-load models
log.info('Human:', human.version);
log.info('Active Configuration', human.config);
// log.info('Active Configuration', human.config);
await human.load();
const loaded = Object.keys(human.models).filter((a) => human.models[a]);
log.info('Loaded:', loaded);
@ -186,6 +186,7 @@ async function test() {
}
async function main() {
log.configure({ inspect: { breakLength: 265 } });
log.header();
log.info('Current folder:', process.env.PWD);
fetch = (await import('node-fetch')).default;

View File

@ -1,14 +1,17 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __export = (target, all2) => {
__markAsModule(target);
for (var name in all2)
@ -9029,7 +9032,7 @@ async function predict10(input, config3) {
});
}
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -11815,10 +11818,10 @@ var Human = class {
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);

File diff suppressed because one or more lines are too long

26
dist/human.esm.js vendored
View File

@ -1,14 +1,12 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __defProp = Object.defineProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __require = (x) => {
if (typeof require !== "undefined")
return require(x);
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __export = (target, all6) => {
@ -693,9 +691,7 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule2 = (target) => __defProp2(target, "__esModule", { value: true });
var __require2 = (x) => {
if (typeof __require !== "undefined")
return __require(x);
var __require2 = typeof __require !== "undefined" ? __require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod4) => function __require22() {
@ -1541,7 +1537,7 @@ var require_long = __commonJS({
}
});
var require_browser = __commonJS({
"(disabled):node_modules/.pnpm/node-fetch@2.6.1/node_modules/node-fetch/browser.js"() {
"(disabled):node_modules/.pnpm/node-fetch@2.6.2/node_modules/node-fetch/browser.js"() {
}
});
var require_alea = __commonJS({
@ -68544,7 +68540,7 @@ async function predict10(input2, config3) {
});
}
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -71330,10 +71326,10 @@ var Human = class {
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);

File diff suppressed because one or more lines are too long

36
dist/human.js vendored
View File

@ -1,15 +1,13 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var Human = (() => {
(() => {
var __defProp = Object.defineProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __require = (x) => {
if (typeof require !== "undefined")
return require(x);
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __export = (target, all6) => {
@ -36,13 +34,6 @@ var Human = (() => {
return value;
};
// src/human.ts
var human_exports = {};
__export(human_exports, {
Human: () => Human,
default: () => Human
});
// src/helpers.ts
function join(folder, file) {
const separator = folder.endsWith("/") ? "" : "/";
@ -701,9 +692,7 @@ var Human = (() => {
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule2 = (target) => __defProp2(target, "__esModule", { value: true });
var __require2 = (x) => {
if (typeof __require !== "undefined")
return __require(x);
var __require2 = typeof __require !== "undefined" ? __require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod4) => function __require22() {
@ -1549,7 +1538,7 @@ var Human = (() => {
}
});
var require_browser = __commonJS({
"(disabled):node_modules/.pnpm/node-fetch@2.6.1/node_modules/node-fetch/browser.js"() {
"(disabled):node_modules/.pnpm/node-fetch@2.6.2/node_modules/node-fetch/browser.js"() {
}
});
var require_alea = __commonJS({
@ -68552,7 +68541,7 @@ return a / b;`;
});
}
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -71338,10 +71327,10 @@ lBhEMohlFerLlBjEMohMVTEARDKCITsAk2AEgAAAkAAAAAAAAAAAAAAAAAAAAAAAASAAAAAAAAD/
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);
@ -71718,7 +71707,6 @@ lBhEMohlFerLlBjEMohMVTEARDKCITsAk2AEgAAAkAAAAAAAAAAAAAAAAAAAAAAAASAAAAAAAAD/
_warmupBitmap = new WeakMap();
_warmupCanvas = new WeakMap();
_warmupNode = new WeakMap();
return human_exports;
})();
/**
* @license

View File

@ -1,9 +1,9 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@ -11,7 +11,10 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __commonJS = (cb, mod) => function __require() {
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod) => function __require2() {
return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target, all2) => {
@ -59,6 +62,9 @@ var require_tfjs_esm = __commonJS({
var __getProtoOf2 = Object.getPrototypeOf;
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
var __markAsModule2 = (target) => __defProp2(target, "__esModule", { value: true });
var __require2 = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __reExport2 = (target, module22, desc) => {
if (module22 && typeof module22 === "object" || typeof module22 === "function") {
for (let key of __getOwnPropNames2(module22))
@ -9075,7 +9081,7 @@ var tf19 = __toModule(require_tfjs_esm());
// src/image/image.ts
var tf18 = __toModule(require_tfjs_esm());
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -11862,10 +11868,10 @@ var Human = class {
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);

View File

@ -1,9 +1,9 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@ -11,7 +11,10 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __commonJS = (cb, mod) => function __require() {
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod) => function __require2() {
return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target, all2) => {
@ -59,6 +62,9 @@ var require_tfjs_esm = __commonJS({
var __getProtoOf2 = Object.getPrototypeOf;
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
var __markAsModule2 = (target) => __defProp2(target, "__esModule", { value: true });
var __require2 = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __reExport2 = (target, module22, desc) => {
if (module22 && typeof module22 === "object" || typeof module22 === "function") {
for (let key of __getOwnPropNames2(module22))
@ -9076,7 +9082,7 @@ var tf19 = __toModule(require_tfjs_esm());
// src/image/image.ts
var tf18 = __toModule(require_tfjs_esm());
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -11863,10 +11869,10 @@ var Human = class {
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);

24
dist/human.node.js vendored
View File

@ -1,9 +1,9 @@
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
/*
Human library
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@ -11,7 +11,10 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __commonJS = (cb, mod) => function __require() {
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod) => function __require2() {
return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target, all2) => {
@ -59,6 +62,9 @@ var require_tfjs_esm = __commonJS({
var __getProtoOf2 = Object.getPrototypeOf;
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
var __markAsModule2 = (target) => __defProp2(target, "__esModule", { value: true });
var __require2 = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __reExport2 = (target, module22, desc) => {
if (module22 && typeof module22 === "object" || typeof module22 === "function") {
for (let key of __getOwnPropNames2(module22))
@ -9075,7 +9081,7 @@ var tf19 = __toModule(require_tfjs_esm());
// src/image/image.ts
var tf18 = __toModule(require_tfjs_esm());
// src/image/imagefx.js
// src/image/imagefx.ts
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function(source, prefix, collection) {
const r = new RegExp("\\b" + prefix + " \\w+ (\\w+)", "ig");
@ -11862,10 +11868,10 @@ var Human = class {
log("error: cannot set backend:", this.config.backend, err);
}
}
if (this.tf.getBackend() === "webgl" || this.tf.getBackend() === "humangl") {
if (this.tf.getBackend() === "humangl") {
this.tf.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
this.tf.ENV.set("WEBGL_CPU_FORWARD", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", true);
this.tf.ENV.set("WEBGL_PACK_DEPTHWISECONV", false);
this.tf.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
if (typeof this.config["deallocate"] !== "undefined" && this.config["deallocate"]) {
log("changing webgl: WEBGL_DELETE_TEXTURE_THRESHOLD:", true);

16
dist/tfjs.esm.js vendored
View File

@ -1,4 +1,9 @@
/* TFJS custom ESM bundle in ES2018 */
/*
Human
homepage: <https://github.com/vladmandic/human>
author: <https://github.com/vladmandic>'
*/
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@ -6,9 +11,7 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __require = (x) => {
if (typeof require !== "undefined")
return require(x);
var __require = typeof require !== "undefined" ? require : (x) => {
throw new Error('Dynamic require of "' + x + '" is not supported');
};
var __commonJS = (cb, mod4) => function __require2() {
@ -856,9 +859,9 @@ var require_long = __commonJS({
}
});
// (disabled):node_modules/.pnpm/node-fetch@2.6.1/node_modules/node-fetch/browser.js
// (disabled):node_modules/.pnpm/node-fetch@2.6.2/node_modules/node-fetch/browser.js
var require_browser = __commonJS({
"(disabled):node_modules/.pnpm/node-fetch@2.6.1/node_modules/node-fetch/browser.js"() {
"(disabled):node_modules/.pnpm/node-fetch@2.6.2/node_modules/node-fetch/browser.js"() {
}
});
@ -62129,4 +62132,3 @@ export {
* =============================================================================
*/
/** @license See the LICENSE file. */
//# sourceMappingURL=tfjs.esm.js.map

File diff suppressed because one or more lines are too long

View File

@ -8,24 +8,17 @@
"browser": "dist/human.esm.js",
"types": "types/src/human.d.ts",
"author": "Vladimir Mandic <mandic00@live.com>",
"bugs": {
"url": "https://github.com/vladmandic/human/issues"
},
"bugs": { "url": "https://github.com/vladmandic/human/issues" },
"homepage": "https://vladmandic.github.io/human/demo/index.html",
"license": "MIT",
"engines": {
"node": ">=14.0.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/vladmandic/human.git"
},
"engines": { "node": ">=14.0.0" },
"repository": { "type": "git", "url": "git+https://github.com/vladmandic/human.git" },
"scripts": {
"start": "node --trace-warnings --unhandled-rejections=strict --trace-uncaught demo/nodejs/node.js",
"dev": "node --trace-warnings --unhandled-rejections=strict --trace-uncaught server/serve.js",
"build": "node --trace-warnings --unhandled-rejections=strict --trace-uncaught --no-deprecation server/build.js",
"lint": "eslint src server demo test",
"start": "node --no-warnings demo/nodejs/node.js",
"dev": "build development",
"build": "build production",
"test": "node --no-warnings --unhandled-rejections=strict --trace-uncaught test/test.js",
"lint": "eslint src demo test",
"scan": "npx auditjs@latest ossi --dev --quiet"
},
"keywords": [
@ -66,14 +59,15 @@
"@tensorflow/tfjs-layers": "^3.9.0",
"@tensorflow/tfjs-node": "^3.9.0",
"@tensorflow/tfjs-node-gpu": "^3.9.0",
"@types/node": "^16.7.10",
"@typescript-eslint/eslint-plugin": "^4.30.0",
"@typescript-eslint/parser": "^4.30.0",
"@vladmandic/pilogger": "^0.2.18",
"@types/node": "^16.9.1",
"@typescript-eslint/eslint-plugin": "^4.31.0",
"@typescript-eslint/parser": "^4.31.0",
"@vladmandic/pilogger": "^0.3.1",
"@vladmandic/build": "^0.3.4",
"canvas": "^2.8.0",
"chokidar": "^3.5.2",
"dayjs": "^1.10.6",
"esbuild": "^0.12.25",
"dayjs": "^1.10.7",
"esbuild": "^0.12.26",
"eslint": "^7.32.0",
"eslint-config-airbnb-base": "^14.2.1",
"eslint-plugin-import": "^2.24.2",
@ -85,7 +79,9 @@
"seedrandom": "^3.0.5",
"simple-git": "^2.45.1",
"tslib": "^2.3.1",
"typedoc": "0.21.9",
"typescript": "4.4.2"
}
"typedoc": "0.22.1",
"typescript": "4.4.3"
},
"peerDependencies": { },
"dependencies": { }
}

View File

@ -1,22 +1,13 @@
2021-09-02 08:49:02 INFO:  @vladmandic/human version 2.1.5
2021-09-02 08:49:02 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-02 08:49:02 INFO:  Toolchain: {"tfjs":"3.9.0","esbuild":"0.12.24","typescript":"4.4.2","typedoc":"0.21.9","eslint":"7.32.0"}
2021-09-02 08:49:02 INFO:  Clean: ["dist/*","types/*","typedoc/*"]
2021-09-02 08:49:02 INFO:  Build: file startup all type: production config: {"minifyWhitespace":true,"minifyIdentifiers":true,"minifySyntax":true}
2021-09-02 08:49:02 STATE: target: node type: tfjs: {"imports":1,"importBytes":102,"outputBytes":1303,"outputFiles":"dist/tfjs.esm.js"}
2021-09-02 08:49:02 STATE: target: node type: node: {"imports":47,"importBytes":456773,"outputBytes":396371,"outputFiles":"dist/human.node.js"}
2021-09-02 08:49:02 STATE: target: nodeGPU type: tfjs: {"imports":1,"importBytes":110,"outputBytes":1311,"outputFiles":"dist/tfjs.esm.js"}
2021-09-02 08:49:02 STATE: target: nodeGPU type: node: {"imports":47,"importBytes":456781,"outputBytes":396375,"outputFiles":"dist/human.node-gpu.js"}
2021-09-02 08:49:02 STATE: target: nodeWASM type: tfjs: {"imports":1,"importBytes":149,"outputBytes":1378,"outputFiles":"dist/tfjs.esm.js"}
2021-09-02 08:49:02 STATE: target: nodeWASM type: node: {"imports":47,"importBytes":456848,"outputBytes":396447,"outputFiles":"dist/human.node-wasm.js"}
2021-09-02 08:49:02 STATE: target: browserNoBundle type: tfjs: {"imports":1,"importBytes":2168,"outputBytes":1242,"outputFiles":"dist/tfjs.esm.js"}
2021-09-02 08:49:02 STATE: target: browserNoBundle type: esm: {"imports":47,"importBytes":456712,"outputBytes":255375,"outputFiles":"dist/human.esm-nobundle.js"}
2021-09-02 08:49:03 STATE: target: browserBundle type: tfjs: {"modules":1174,"moduleBytes":8150347,"imports":7,"importBytes":2168,"outputBytes":2343932,"outputFiles":"dist/tfjs.esm.js"}
2021-09-02 08:49:03 STATE: target: browserBundle type: iife: {"imports":47,"importBytes":2799402,"outputBytes":1391653,"outputFiles":"dist/human.js"}
2021-09-02 08:49:04 STATE: target: browserBundle type: esm: {"imports":47,"importBytes":2799402,"outputBytes":1391645,"outputFiles":"dist/human.esm.js"}
2021-09-02 08:49:04 INFO:  Running Linter: ["server/","src/","tfjs/","test/","demo/"]
2021-09-02 08:49:28 INFO:  Linter complete: files: 84 errors: 0 warnings: 0
2021-09-02 08:49:28 INFO:  Generate ChangeLog: ["/home/vlado/dev/human/CHANGELOG.md"]
2021-09-02 08:49:28 INFO:  Generate Typings: ["src/human.ts"] outDir: ["types"]
2021-09-02 08:49:42 INFO:  Generate TypeDocs: ["src/human.ts"] outDir: ["typedoc"]
2021-09-02 08:49:56 INFO:  Documentation generated at /home/vlado/dev/human/typedoc 1
2021-09-10 19:34:11 INFO:  @vladmandic/human version 2.1.5
2021-09-10 19:34:11 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-10 19:34:11 INFO:  Toolchain: {"tfjs":"3.9.0","esbuild":"0.12.26","typescript":"4.4.3","typedoc":"0.22.1","eslint":"7.32.0"}
2021-09-10 19:34:11 INFO:  Clean: ["dist/*","types/*","typedoc/*"]
2021-09-10 19:34:11 INFO:  Build: file startup all type: production config: {"minifyWhitespace":true,"minifyIdentifiers":true,"minifySyntax":true}
2021-09-10 19:34:11 STATE: target: node type: tfjs: {"imports":1,"importBytes":102,"outputBytes":1444,"outputFiles":"dist/tfjs.esm.js"}
2021-09-10 19:34:11 STATE: target: node type: node: {"imports":47,"importBytes":456903,"outputBytes":396607,"outputFiles":"dist/human.node.js"}
2021-09-10 19:34:11 STATE: target: nodeGPU type: tfjs: {"imports":1,"importBytes":110,"outputBytes":1452,"outputFiles":"dist/tfjs.esm.js"}
2021-09-10 19:34:11 STATE: target: nodeGPU type: node: {"imports":47,"importBytes":456911,"outputBytes":396611,"outputFiles":"dist/human.node-gpu.js"}
2021-09-10 19:34:11 STATE: target: nodeWASM type: tfjs: {"imports":1,"importBytes":149,"outputBytes":1519,"outputFiles":"dist/tfjs.esm.js"}
2021-09-10 19:34:11 STATE: target: nodeWASM type: node: {"imports":47,"importBytes":456978,"outputBytes":396683,"outputFiles":"dist/human.node-wasm.js"}
2021-09-10 19:34:11 STATE: target: browserNoBundle type: tfjs: {"imports":1,"importBytes":2168,"outputBytes":1242,"outputFiles":"dist/tfjs.esm.js"}
2021-09-10 19:34:11 STATE: target: browserNoBundle type: esm: {"imports":47,"importBytes":456701,"outputBytes":255452,"outputFiles":"dist/human.esm-nobundle.js"}

View File

@ -370,10 +370,10 @@ export class Human {
}
// handle webgl & humangl
if (this.tf.getBackend() === 'webgl' || this.tf.getBackend() === 'humangl') {
if (this.tf.getBackend() === 'humangl') {
this.tf.ENV.set('CHECK_COMPUTATION_FOR_ERRORS', false);
this.tf.ENV.set('WEBGL_CPU_FORWARD', true);
this.tf.ENV.set('WEBGL_PACK_DEPTHWISECONV', true);
this.tf.ENV.set('WEBGL_PACK_DEPTHWISECONV', false);
this.tf.ENV.set('WEBGL_USE_SHAPES_UNIFORMS', true);
// if (!this.config.object.enabled) this.tf.ENV.set('WEBGL_FORCE_F16_TEXTURES', true); // safe to use 16bit precision
if (typeof this.config['deallocate'] !== 'undefined' && this.config['deallocate']) { // hidden param

View File

@ -13,8 +13,8 @@ const maxSize = 2048;
// internal temp canvases
let inCanvas;
let outCanvas;
// instance of fximage
let fx: fxImage.GLImageFilter | null;
// @ts-ignore // imagefx is js module that should be converted to a class
let fx: fxImage.GLImageFilter | null; // instance of imagefx
// process input image and return tensor
// input can be tensor, imagedata, htmlimageelement, htmlvideoelement
@ -38,8 +38,8 @@ export function process(input: Input, config: Config): { tensor: Tensor | null,
}
if (input instanceof tf.Tensor) {
// if input is tensor, use as-is
if (input.shape && input.shape.length === 4 && input.shape[0] === 1 && input.shape[3] === 3) tensor = tf.clone(input);
else throw new Error(`Human: Input tensor shape must be [1, height, width, 3] and instead was ${input.shape}`);
if ((input as Tensor).shape && (input as Tensor).shape.length === 4 && (input as Tensor).shape[0] === 1 && (input as Tensor).shape[3] === 3) tensor = tf.clone(input);
else throw new Error(`Human: Input tensor shape must be [1, height, width, 3] and instead was ${(input as Tensor).shape}`);
} else {
// check if resizing will be needed
const originalWidth = input['naturalWidth'] || input['videoWidth'] || input['width'] || (input['shape'] && (input['shape'][1] > 0));

View File

@ -2,6 +2,8 @@
WebGLImageFilter by Dominic Szablewski: <https://github.com/phoboslab/WebGLImageFilter>
*/
// @ts-nocheck
function GLProgram(gl, vertexSource, fragmentSource) {
const _collect = function (source, prefix, collection) {
const r = new RegExp('\\b' + prefix + ' \\w+ (\\w+)', 'ig');

View File

@ -1,120 +1,120 @@
2021-08-31 14:48:11 INFO:  @vladmandic/human version 2.1.4
2021-08-31 14:48:11 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-08-31 14:48:11 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"]
2021-08-31 14:48:11 INFO:  test-node.js start
2021-08-31 14:48:11 STATE: test-node.js passed: create human
2021-08-31 14:48:11 INFO:  test-node.js human version: 2.1.4
2021-08-31 14:48:11 INFO:  test-node.js platform: linux x64 agent: NodeJS v16.5.0
2021-08-31 14:48:11 INFO:  test-node.js tfjs version: 3.9.0
2021-08-31 14:48:12 STATE: test-node.js passed: set backend: tensorflow
2021-08-31 14:48:12 STATE: test-node.js passed: load models
2021-08-31 14:48:12 STATE: test-node.js result: defined models: 14 loaded models: 7
2021-08-31 14:48:12 STATE: test-node.js passed: warmup: none default
2021-08-31 14:48:13 STATE: test-node.js passed: warmup: face default
2021-08-31 14:48:13 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4}
2021-08-31 14:48:13 DATA:  test-node.js result: performance: load: 299 total: 1150
2021-08-31 14:48:14 STATE: test-node.js passed: warmup: body default
2021-08-31 14:48:14 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:14 DATA:  test-node.js result: performance: load: 299 total: 1171
2021-08-31 14:48:14 INFO:  test-node.js test body variants
2021-08-31 14:48:15 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:16 STATE: test-node.js passed: detect: samples/ai-body.jpg posenet
2021-08-31 14:48:16 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16}
2021-08-31 14:48:16 DATA:  test-node.js result: performance: load: 299 total: 775
2021-08-31 14:48:16 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:17 STATE: test-node.js passed: detect: samples/ai-body.jpg movenet
2021-08-31 14:48:17 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:17 DATA:  test-node.js result: performance: load: 299 total: 215
2021-08-31 14:48:17 STATE: test-node.js passed: detect: random default
2021-08-31 14:48:17 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0}
2021-08-31 14:48:17 DATA:  test-node.js result: performance: load: 299 total: 627
2021-08-31 14:48:17 INFO:  test-node.js test: first instance
2021-08-31 14:48:18 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-08-31 14:48:19 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-08-31 14:48:19 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-08-31 14:48:19 DATA:  test-node.js result: performance: load: 299 total: 995
2021-08-31 14:48:19 INFO:  test-node.js test: second instance
2021-08-31 14:48:19 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-08-31 14:48:20 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-08-31 14:48:20 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-08-31 14:48:20 DATA:  test-node.js result: performance: load: 5 total: 914
2021-08-31 14:48:20 INFO:  test-node.js test: concurrent
2021-08-31 14:48:20 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-08-31 14:48:20 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-08-31 14:48:21 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:22 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:26 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-08-31 14:48:26 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-08-31 14:48:26 DATA:  test-node.js result: performance: load: 299 total: 4319
2021-08-31 14:48:26 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-08-31 14:48:26 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-08-31 14:48:26 DATA:  test-node.js result: performance: load: 5 total: 4319
2021-08-31 14:48:26 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-08-31 14:48:26 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:26 DATA:  test-node.js result: performance: load: 299 total: 4319
2021-08-31 14:48:26 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-08-31 14:48:26 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:26 DATA:  test-node.js result: performance: load: 5 total: 4319
2021-08-31 14:48:26 INFO:  test-node.js test complete: 14833 ms
2021-08-31 14:48:26 INFO:  test-node-gpu.js start
2021-08-31 14:48:27 WARN:  test-node-gpu.js stderr: 2021-08-31 14:48:27.542846: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2021-08-31 14:48:27 WARN:  test-node-gpu.js stderr: 2021-08-31 14:48:27.824919: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory
2021-08-31 14:48:27 WARN:  test-node-gpu.js stderr: 2021-08-31 14:48:27.824982: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:156] kernel driver does not appear to be running on this host (wyse): /proc/driver/nvidia/version does not exist
2021-08-31 14:48:27 STATE: test-node-gpu.js passed: create human
2021-08-31 14:48:27 INFO:  test-node-gpu.js human version: 2.1.4
2021-08-31 14:48:27 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v16.5.0
2021-08-31 14:48:27 INFO:  test-node-gpu.js tfjs version: 3.9.0
2021-08-31 14:48:28 STATE: test-node-gpu.js passed: set backend: tensorflow
2021-08-31 14:48:28 STATE: test-node-gpu.js passed: load models
2021-08-31 14:48:28 STATE: test-node-gpu.js result: defined models: 14 loaded models: 7
2021-08-31 14:48:28 STATE: test-node-gpu.js passed: warmup: none default
2021-08-31 14:48:29 STATE: test-node-gpu.js passed: warmup: face default
2021-08-31 14:48:29 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4}
2021-08-31 14:48:29 DATA:  test-node-gpu.js result: performance: load: 291 total: 1389
2021-08-31 14:48:30 STATE: test-node-gpu.js passed: warmup: body default
2021-08-31 14:48:30 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:30 DATA:  test-node-gpu.js result: performance: load: 291 total: 1142
2021-08-31 14:48:30 INFO:  test-node-gpu.js test body variants
2021-08-31 14:48:31 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:32 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg posenet
2021-08-31 14:48:32 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16}
2021-08-31 14:48:32 DATA:  test-node-gpu.js result: performance: load: 291 total: 807
2021-08-31 14:48:33 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:33 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg movenet
2021-08-31 14:48:33 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:33 DATA:  test-node-gpu.js result: performance: load: 291 total: 208
2021-08-31 14:48:33 STATE: test-node-gpu.js passed: detect: random default
2021-08-31 14:48:33 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 1 person: 0 {} {"score":0.72,"class":"person"} {"score":0,"keypoints":0}
2021-08-31 14:48:33 DATA:  test-node-gpu.js result: performance: load: 291 total: 160
2021-08-31 14:48:33 INFO:  test-node-gpu.js test: first instance
2021-08-31 14:48:34 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-08-31 14:48:34 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-08-31 14:48:34 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 1 object: 1 person: 0 {} {"score":0.72,"class":"person"} {"score":0.69,"keypoints":10}
2021-08-31 14:48:34 DATA:  test-node-gpu.js result: performance: load: 291 total: 131
2021-08-31 14:48:34 INFO:  test-node-gpu.js test: second instance
2021-08-31 14:48:34 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-08-31 14:48:35 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-08-31 14:48:35 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-08-31 14:48:35 DATA:  test-node-gpu.js result: performance: load: 2 total: 965
2021-08-31 14:48:35 INFO:  test-node-gpu.js test: concurrent
2021-08-31 14:48:35 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-08-31 14:48:35 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-08-31 14:48:36 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:37 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-08-31 14:48:41 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: performance: load: 291 total: 4281
2021-08-31 14:48:41 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: performance: load: 2 total: 4281
2021-08-31 14:48:41 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: performance: load: 291 total: 4281
2021-08-31 14:48:41 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-08-31 14:48:41 DATA:  test-node-gpu.js result: performance: load: 2 total: 4281
2021-08-31 14:48:41 INFO:  test-node-gpu.js test complete: 13660 ms
2021-08-31 14:48:41 INFO:  test-node-wasm.js start
2021-08-31 14:48:41 ERROR: test-node-wasm.js failed: model server: request to http://localhost:10030/models/ failed, reason: connect ECONNREFUSED 127.0.0.1:10030
2021-08-31 14:48:41 ERROR: test-node-wasm.js aborting test
2021-08-31 14:48:41 INFO:  status: {"passed":46,"failed":1}
2021-09-10 20:56:59 INFO:  @vladmandic/human version 2.1.5
2021-09-10 20:56:59 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-10 20:56:59 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"]
2021-09-10 20:56:59 INFO:  test-node.js start
2021-09-10 20:57:00 STATE: test-node.js passed: create human
2021-09-10 20:57:00 INFO:  test-node.js human version: 2.1.5
2021-09-10 20:57:00 INFO:  test-node.js platform: linux x64 agent: NodeJS v16.5.0
2021-09-10 20:57:00 INFO:  test-node.js tfjs version: 3.9.0
2021-09-10 20:57:00 STATE: test-node.js passed: set backend: tensorflow
2021-09-10 20:57:00 STATE: test-node.js passed: load models
2021-09-10 20:57:00 STATE: test-node.js result: defined models: 14 loaded models: 7
2021-09-10 20:57:00 STATE: test-node.js passed: warmup: none default
2021-09-10 20:57:01 STATE: test-node.js passed: warmup: face default
2021-09-10 20:57:01 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4}
2021-09-10 20:57:01 DATA:  test-node.js result: performance: load: 300 total: 1156
2021-09-10 20:57:02 STATE: test-node.js passed: warmup: body default
2021-09-10 20:57:02 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:02 DATA:  test-node.js result: performance: load: 300 total: 1114
2021-09-10 20:57:02 INFO:  test-node.js test body variants
2021-09-10 20:57:03 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:04 STATE: test-node.js passed: detect: samples/ai-body.jpg posenet
2021-09-10 20:57:04 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16}
2021-09-10 20:57:04 DATA:  test-node.js result: performance: load: 300 total: 733
2021-09-10 20:57:05 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:05 STATE: test-node.js passed: detect: samples/ai-body.jpg movenet
2021-09-10 20:57:05 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:05 DATA:  test-node.js result: performance: load: 300 total: 243
2021-09-10 20:57:06 STATE: test-node.js passed: detect: random default
2021-09-10 20:57:06 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0}
2021-09-10 20:57:06 DATA:  test-node.js result: performance: load: 300 total: 646
2021-09-10 20:57:06 INFO:  test-node.js test: first instance
2021-09-10 20:57:06 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-10 20:57:07 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-10 20:57:07 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-10 20:57:07 DATA:  test-node.js result: performance: load: 300 total: 874
2021-09-10 20:57:07 INFO:  test-node.js test: second instance
2021-09-10 20:57:07 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-10 20:57:08 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-10 20:57:08 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-10 20:57:08 DATA:  test-node.js result: performance: load: 2 total: 769
2021-09-10 20:57:08 INFO:  test-node.js test: concurrent
2021-09-10 20:57:08 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-10 20:57:08 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-10 20:57:09 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:10 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:13 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-09-10 20:57:13 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-09-10 20:57:13 DATA:  test-node.js result: performance: load: 300 total: 3047
2021-09-10 20:57:13 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-09-10 20:57:13 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-09-10 20:57:13 DATA:  test-node.js result: performance: load: 2 total: 3047
2021-09-10 20:57:14 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-09-10 20:57:14 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:14 DATA:  test-node.js result: performance: load: 300 total: 3784
2021-09-10 20:57:14 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-09-10 20:57:14 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:14 DATA:  test-node.js result: performance: load: 2 total: 3784
2021-09-10 20:57:14 INFO:  test-node.js test complete: 14000 ms
2021-09-10 20:57:14 INFO:  test-node-gpu.js start
2021-09-10 20:57:15 WARN:  test-node-gpu.js stderr: 2021-09-10 20:57:15.061099: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2021-09-10 20:57:15 WARN:  test-node-gpu.js stderr: 2021-09-10 20:57:15.219172: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcuda.so.1'; dlerror: libcuda.so.1: cannot open shared object file: No such file or directory
2021-09-10 20:57:15 WARN:  test-node-gpu.js stderr: 2021-09-10 20:57:15.219207: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:156] kernel driver does not appear to be running on this host (wyse): /proc/driver/nvidia/version does not exist
2021-09-10 20:57:15 STATE: test-node-gpu.js passed: create human
2021-09-10 20:57:15 INFO:  test-node-gpu.js human version: 2.1.5
2021-09-10 20:57:15 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v16.5.0
2021-09-10 20:57:15 INFO:  test-node-gpu.js tfjs version: 3.9.0
2021-09-10 20:57:15 STATE: test-node-gpu.js passed: set backend: tensorflow
2021-09-10 20:57:15 STATE: test-node-gpu.js passed: load models
2021-09-10 20:57:15 STATE: test-node-gpu.js result: defined models: 14 loaded models: 7
2021-09-10 20:57:15 STATE: test-node-gpu.js passed: warmup: none default
2021-09-10 20:57:16 STATE: test-node-gpu.js passed: warmup: face default
2021-09-10 20:57:16 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4}
2021-09-10 20:57:16 DATA:  test-node-gpu.js result: performance: load: 297 total: 1188
2021-09-10 20:57:17 STATE: test-node-gpu.js passed: warmup: body default
2021-09-10 20:57:17 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:17 DATA:  test-node-gpu.js result: performance: load: 297 total: 1103
2021-09-10 20:57:17 INFO:  test-node-gpu.js test body variants
2021-09-10 20:57:18 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:19 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg posenet
2021-09-10 20:57:19 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16}
2021-09-10 20:57:19 DATA:  test-node-gpu.js result: performance: load: 297 total: 737
2021-09-10 20:57:20 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:20 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg movenet
2021-09-10 20:57:20 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:20 DATA:  test-node-gpu.js result: performance: load: 297 total: 234
2021-09-10 20:57:21 STATE: test-node-gpu.js passed: detect: random default
2021-09-10 20:57:21 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0}
2021-09-10 20:57:21 DATA:  test-node-gpu.js result: performance: load: 297 total: 612
2021-09-10 20:57:21 INFO:  test-node-gpu.js test: first instance
2021-09-10 20:57:21 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-10 20:57:22 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-10 20:57:22 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-10 20:57:22 DATA:  test-node-gpu.js result: performance: load: 297 total: 832
2021-09-10 20:57:22 INFO:  test-node-gpu.js test: second instance
2021-09-10 20:57:22 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-10 20:57:23 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-10 20:57:23 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-10 20:57:23 DATA:  test-node-gpu.js result: performance: load: 6 total: 806
2021-09-10 20:57:23 INFO:  test-node-gpu.js test: concurrent
2021-09-10 20:57:23 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-10 20:57:23 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-10 20:57:24 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:25 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-10 20:57:28 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-09-10 20:57:28 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 4 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-09-10 20:57:28 DATA:  test-node-gpu.js result: performance: load: 297 total: 3213
2021-09-10 20:57:28 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-09-10 20:57:28 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 1 person: 1 {"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":17}
2021-09-10 20:57:28 DATA:  test-node-gpu.js result: performance: load: 6 total: 3213
2021-09-10 20:57:29 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-09-10 20:57:29 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:29 DATA:  test-node-gpu.js result: performance: load: 297 total: 3928
2021-09-10 20:57:29 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-09-10 20:57:29 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"age":28.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-10 20:57:29 DATA:  test-node-gpu.js result: performance: load: 6 total: 3929
2021-09-10 20:57:29 INFO:  test-node-gpu.js test complete: 13994 ms
2021-09-10 20:57:29 INFO:  test-node-wasm.js start
2021-09-10 20:57:29 ERROR: test-node-wasm.js failed: model server: request to http://localhost:10030/models/ failed, reason: connect ECONNREFUSED 127.0.0.1:10030
2021-09-10 20:57:29 ERROR: test-node-wasm.js aborting test
2021-09-10 20:57:29 INFO:  status: {"passed":46,"failed":1}

View File

@ -44,20 +44,6 @@
"exclude": ["node_modules/", "types/", "tfjs/", "dist/"],
"include": ["src"],
"typedocOptions": {
"excludePrivate": true,
"excludeExternals": true,
"excludeProtected": true,
"excludeInternal": true,
"disableSources": true,
"gitRevision": "main",
"hideGenerator": "true",
"readme": "none",
"out": "typedoc",
"entryPoints": ["src/human.ts"],
"exclude": [],
"externalPattern": ["node_modules/", "tfjs/"],
"logLevel": "Verbose",
"logger": "none",
"theme": "wiki/theme/"
}
}

View File

@ -473,6 +473,7 @@ ul.tsd-descriptions > li > :first-child > :first-child > :first-child,
.col-2 > :first-child > :first-child > :first-child,
.col-1 > :first-child > :first-child > :first-child {
margin-top: 0;
line-height: 2rem;
}
ul.tsd-descriptions > li > :last-child, .tsd-panel > :last-child, .col > :last-child, .col-11 > :last-child, .col-10 > :last-child, .col-9 > :last-child, .col-8 > :last-child, .col-7 > :last-child, .col-6 > :last-child, .col-5 > :last-child, .col-4 > :last-child, .col-3 > :last-child, .col-2 > :last-child, .col-1 > :last-child,
ul.tsd-descriptions > li > :last-child > :last-child,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>@vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>@vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="assets/css/main.css">
<script async src="assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="index.html" class="title">@vladmandic/human</a>
<a href="index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -48,7 +48,7 @@
</div>
<div class="tsd-page-title">
<div class="container">
<h1>@vladmandic/human</h1>
<h1>@vladmandic/human - v2.1.5</h1>
</div>
</div>
</header>
@ -111,6 +111,9 @@
<h3>Error</h3>
<div class="tsd-signature tsd-kind-icon">Error<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>error<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L45">human.ts:45</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -131,6 +134,9 @@
<h3>Gesture</h3>
<div class="tsd-signature tsd-kind-icon">Gesture<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>face<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>gesture<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">FaceGesture</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">{ </span>gesture<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IrisGesture</span><span class="tsd-signature-symbol">; </span>iris<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">{ </span>body<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>gesture<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">BodyGesture</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">{ </span>gesture<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HandGesture</span><span class="tsd-signature-symbol">; </span>hand<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L142">result.ts:142</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -143,6 +149,9 @@
<h3>Input</h3>
<div class="tsd-signature tsd-kind-icon">Input<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Tensor</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">Image</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ImageData</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ImageBitmap</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">HTMLImageElement</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">HTMLMediaElement</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">HTMLVideoElement</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">OffscreenCanvas</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L40">human.ts:40</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -155,6 +164,9 @@
<h3>Tensor<wbr>Flow</h3>
<div class="tsd-signature tsd-kind-icon">Tensor<wbr>Flow<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">typeof </span><span class="tsd-signature-type">tf</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L50">human.ts:50</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Body | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Body | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Body.html">Body</a>
@ -114,6 +114,9 @@
<h3>box</h3>
<div class="tsd-signature tsd-kind-icon">box<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L75">result.ts:75</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -121,6 +124,9 @@
<h3>box<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L76">result.ts:76</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -128,6 +134,9 @@
<h3>id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L73">result.ts:73</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -135,6 +144,9 @@
<h3>keypoints</h3>
<div class="tsd-signature tsd-kind-icon">keypoints<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>part<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>position<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">; </span>positionRaw<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">?</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">; </span>presence<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>score<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L77">result.ts:77</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -142,6 +154,9 @@
<h3>score</h3>
<div class="tsd-signature tsd-kind-icon">score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L74">result.ts:74</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Config | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Config | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Config.html">Config</a>
@ -113,6 +113,9 @@
<h3>async</h3>
<div class="tsd-signature tsd-kind-icon">async<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L21">config.ts:21</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -125,6 +128,9 @@
<h3>backend</h3>
<div class="tsd-signature tsd-kind-icon">backend<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;cpu&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;wasm&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;webgl&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;humangl&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;tensorflow&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;webgpu&quot;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L12">config.ts:12</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -137,6 +143,9 @@
<h3>body</h3>
<div class="tsd-signature tsd-kind-icon">body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>maxDetected<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L151">config.ts:151</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -175,6 +184,9 @@
<h3>cache<wbr>Sensitivity</h3>
<div class="tsd-signature tsd-kind-icon">cache<wbr>Sensitivity<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L38">config.ts:38</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -191,6 +203,9 @@
<h3>debug</h3>
<div class="tsd-signature tsd-kind-icon">debug<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L18">config.ts:18</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -203,6 +218,9 @@
<h3>face</h3>
<div class="tsd-signature tsd-kind-icon">face<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>description<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>detector<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>iouThreshold<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>maxDetected<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>return<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>rotation<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>emotion<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>iris<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>mesh<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L112">config.ts:112</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -316,6 +334,9 @@
<h3>filter</h3>
<div class="tsd-signature tsd-kind-icon">filter<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>blur<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>brightness<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>contrast<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>flip<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>height<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>hue<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>kodachrome<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>negative<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>pixelate<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>polaroid<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>return<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>saturation<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>sepia<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>sharpness<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>technicolor<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>vintage<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>width<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L49">config.ts:49</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -485,6 +506,9 @@
<h3>gesture</h3>
<div class="tsd-signature tsd-kind-icon">gesture<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L97">config.ts:97</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -505,6 +529,9 @@
<h3>hand</h3>
<div class="tsd-signature tsd-kind-icon">hand<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>detector<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>iouThreshold<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>landmarks<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>maxDetected<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>rotation<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>skeleton<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L168">config.ts:168</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -568,6 +595,9 @@
<h3>model<wbr>Base<wbr>Path</h3>
<div class="tsd-signature tsd-kind-icon">model<wbr>Base<wbr>Path<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L32">config.ts:32</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -583,6 +613,9 @@
<h3>object</h3>
<div class="tsd-signature tsd-kind-icon">object<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>iouThreshold<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>maxDetected<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>minConfidence<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>skipFrames<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L191">config.ts:191</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -625,6 +658,9 @@
<h3>segmentation</h3>
<div class="tsd-signature tsd-kind-icon">segmentation<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>enabled<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">; </span>modelPath<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L209">config.ts:209</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -656,6 +692,9 @@
<h3>skip<wbr>Frame</h3>
<div class="tsd-signature tsd-kind-icon">skip<wbr>Frame<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L44">config.ts:44</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -672,6 +711,9 @@
<h3>warmup</h3>
<div class="tsd-signature tsd-kind-icon">warmup<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;none&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;face&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;full&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;body&quot;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L27">config.ts:27</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -688,6 +730,9 @@
<h3>wasm<wbr>Path</h3>
<div class="tsd-signature tsd-kind-icon">wasm<wbr>Path<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/config.ts#L15">config.ts:15</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>DrawOptions | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>DrawOptions | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="DrawOptions.html">DrawOptions</a>
@ -131,6 +131,9 @@
<h3>buffered<wbr>Output</h3>
<div class="tsd-signature tsd-kind-icon">buffered<wbr>Output<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L46">draw/draw.ts:46</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -138,6 +141,9 @@
<h3>color</h3>
<div class="tsd-signature tsd-kind-icon">color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L30">draw/draw.ts:30</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -145,6 +151,9 @@
<h3>draw<wbr>Boxes</h3>
<div class="tsd-signature tsd-kind-icon">draw<wbr>Boxes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L40">draw/draw.ts:40</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -152,6 +161,9 @@
<h3>draw<wbr>Gaze</h3>
<div class="tsd-signature tsd-kind-icon">draw<wbr>Gaze<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L42">draw/draw.ts:42</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -159,6 +171,9 @@
<h3>draw<wbr>Labels</h3>
<div class="tsd-signature tsd-kind-icon">draw<wbr>Labels<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L39">draw/draw.ts:39</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -166,6 +181,9 @@
<h3>draw<wbr>Points</h3>
<div class="tsd-signature tsd-kind-icon">draw<wbr>Points<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L38">draw/draw.ts:38</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -173,6 +191,9 @@
<h3>draw<wbr>Polygons</h3>
<div class="tsd-signature tsd-kind-icon">draw<wbr>Polygons<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L41">draw/draw.ts:41</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -180,6 +201,9 @@
<h3>fill<wbr>Polygons</h3>
<div class="tsd-signature tsd-kind-icon">fill<wbr>Polygons<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L43">draw/draw.ts:43</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -187,6 +211,9 @@
<h3>font</h3>
<div class="tsd-signature tsd-kind-icon">font<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L33">draw/draw.ts:33</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -194,6 +221,9 @@
<h3>label<wbr>Color</h3>
<div class="tsd-signature tsd-kind-icon">label<wbr>Color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L31">draw/draw.ts:31</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -201,6 +231,9 @@
<h3>line<wbr>Height</h3>
<div class="tsd-signature tsd-kind-icon">line<wbr>Height<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L34">draw/draw.ts:34</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -208,6 +241,9 @@
<h3>line<wbr>Width</h3>
<div class="tsd-signature tsd-kind-icon">line<wbr>Width<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L35">draw/draw.ts:35</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -215,6 +251,9 @@
<h3>point<wbr>Size</h3>
<div class="tsd-signature tsd-kind-icon">point<wbr>Size<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L36">draw/draw.ts:36</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -222,6 +261,9 @@
<h3>round<wbr>Rect</h3>
<div class="tsd-signature tsd-kind-icon">round<wbr>Rect<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L37">draw/draw.ts:37</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -229,6 +271,9 @@
<h3>shadow<wbr>Color</h3>
<div class="tsd-signature tsd-kind-icon">shadow<wbr>Color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L32">draw/draw.ts:32</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -236,6 +281,9 @@
<h3>use<wbr>Curves</h3>
<div class="tsd-signature tsd-kind-icon">use<wbr>Curves<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L45">draw/draw.ts:45</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -243,6 +291,9 @@
<h3>use<wbr>Depth</h3>
<div class="tsd-signature tsd-kind-icon">use<wbr>Depth<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L44">draw/draw.ts:44</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Face | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Face | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Face.html">Face</a>
@ -140,6 +140,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> age</h3>
<div class="tsd-signature tsd-kind-icon">age<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L45">result.ts:45</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -147,6 +150,9 @@
<h3>annotations</h3>
<div class="tsd-signature tsd-kind-icon">annotations<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L44">result.ts:44</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -154,6 +160,9 @@
<h3>box</h3>
<div class="tsd-signature tsd-kind-icon">box<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L40">result.ts:40</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -161,6 +170,9 @@
<h3>box<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L41">result.ts:41</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -168,6 +180,9 @@
<h3>box<wbr>Score</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L38">result.ts:38</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -175,6 +190,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> embedding</h3>
<div class="tsd-signature tsd-kind-icon">embedding<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L49">result.ts:49</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -182,6 +200,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> emotion</h3>
<div class="tsd-signature tsd-kind-icon">emotion<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>emotion<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">; </span>score<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L48">result.ts:48</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -189,6 +210,9 @@
<h3>face<wbr>Score</h3>
<div class="tsd-signature tsd-kind-icon">face<wbr>Score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L39">result.ts:39</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -196,6 +220,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> gender</h3>
<div class="tsd-signature tsd-kind-icon">gender<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L46">result.ts:46</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -203,6 +230,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> gender<wbr>Score</h3>
<div class="tsd-signature tsd-kind-icon">gender<wbr>Score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L47">result.ts:47</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -210,6 +240,9 @@
<h3>id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L36">result.ts:36</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -217,6 +250,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> iris</h3>
<div class="tsd-signature tsd-kind-icon">iris<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L50">result.ts:50</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -224,6 +260,9 @@
<h3>mesh</h3>
<div class="tsd-signature tsd-kind-icon">mesh<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L42">result.ts:42</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -231,6 +270,9 @@
<h3>mesh<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">mesh<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L43">result.ts:43</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -238,6 +280,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> rotation</h3>
<div class="tsd-signature tsd-kind-icon">rotation<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>angle<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>pitch<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>roll<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>yaw<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>gaze<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">{ </span>bearing<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">; </span>strength<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">; </span>matrix<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L51">result.ts:51</a></li>
</ul>
</aside>
<div class="tsd-type-declaration">
<h4>Type declaration</h4>
@ -278,6 +323,9 @@
<h3>score</h3>
<div class="tsd-signature tsd-kind-icon">score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L37">result.ts:37</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -285,6 +333,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> tensor</h3>
<div class="tsd-signature tsd-kind-icon">tensor<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Tensor</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">Rank</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L56">result.ts:56</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Hand | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Hand | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Hand.html">Hand</a>
@ -114,6 +114,9 @@
<h3>annotations</h3>
<div class="tsd-signature tsd-kind-icon">annotations<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">&quot;index&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;middle&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;pinky&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;ring&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;thumb&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;palm&quot;</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L103">result.ts:103</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -121,6 +124,9 @@
<h3>box</h3>
<div class="tsd-signature tsd-kind-icon">box<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L100">result.ts:100</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -128,6 +134,9 @@
<h3>box<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L101">result.ts:101</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -135,6 +144,9 @@
<h3>id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L98">result.ts:98</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -142,6 +154,9 @@
<h3>keypoints</h3>
<div class="tsd-signature tsd-kind-icon">keypoints<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L102">result.ts:102</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -149,6 +164,9 @@
<h3>landmarks</h3>
<div class="tsd-signature tsd-kind-icon">landmarks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">&quot;index&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;middle&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;pinky&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;ring&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;thumb&quot;</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-symbol">{ </span>curl<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">&quot;none&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;full&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;half&quot;</span><span class="tsd-signature-symbol">; </span>direction<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">&quot;verticalUp&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;verticalDown&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;horizontalLeft&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;horizontalRight&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;diagonalUpRight&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;diagonalUpLeft&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;diagonalDownRight&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;diagonalDownLeft&quot;</span><span class="tsd-signature-symbol"> }</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L107">result.ts:107</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -156,6 +174,9 @@
<h3>score</h3>
<div class="tsd-signature tsd-kind-icon">score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L99">result.ts:99</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Item | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Item | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Item.html">Item</a>
@ -114,6 +114,9 @@
<h3>box</h3>
<div class="tsd-signature tsd-kind-icon">box<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L130">result.ts:130</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -121,6 +124,9 @@
<h3>box<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L131">result.ts:131</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -128,6 +134,9 @@
<h3>class</h3>
<div class="tsd-signature tsd-kind-icon">class<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L128">result.ts:128</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -135,6 +144,9 @@
<h3>id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L126">result.ts:126</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -142,6 +154,9 @@
<h3>label</h3>
<div class="tsd-signature tsd-kind-icon">label<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L129">result.ts:129</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -149,6 +164,9 @@
<h3>score</h3>
<div class="tsd-signature tsd-kind-icon">score<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L127">result.ts:127</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Person | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Person | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Person.html">Person</a>
@ -119,6 +119,9 @@
<h3>body</h3>
<div class="tsd-signature tsd-kind-icon">body<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="Body.html" class="tsd-signature-type" data-tsd-kind="Interface">Body</a></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L163">result.ts:163</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -126,6 +129,9 @@
<h3>box</h3>
<div class="tsd-signature tsd-kind-icon">box<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L166">result.ts:166</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -133,6 +139,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> box<wbr>Raw</h3>
<div class="tsd-signature tsd-kind-icon">box<wbr>Raw<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L167">result.ts:167</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -140,6 +149,9 @@
<h3>face</h3>
<div class="tsd-signature tsd-kind-icon">face<span class="tsd-signature-symbol">:</span> <a href="Face.html" class="tsd-signature-type" data-tsd-kind="Interface">Face</a></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L162">result.ts:162</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -147,6 +159,9 @@
<h3>gestures</h3>
<div class="tsd-signature tsd-kind-icon">gestures<span class="tsd-signature-symbol">:</span> <a href="../index.html#Gesture" class="tsd-signature-type" data-tsd-kind="Type alias">Gesture</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L165">result.ts:165</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-interface">
@ -154,6 +169,9 @@
<h3>hands</h3>
<div class="tsd-signature tsd-kind-icon">hands<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">{ </span>left<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="Hand.html" class="tsd-signature-type" data-tsd-kind="Interface">Hand</a><span class="tsd-signature-symbol">; </span>right<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><a href="Hand.html" class="tsd-signature-type" data-tsd-kind="Interface">Hand</a><span class="tsd-signature-symbol"> }</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L164">result.ts:164</a></li>
</ul>
</aside>
<div class="tsd-type-declaration">
<h4>Type declaration</h4>
@ -172,6 +190,9 @@
<h3>id</h3>
<div class="tsd-signature tsd-kind-icon">id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L161">result.ts:161</a></li>
</ul>
</aside>
</section>
</section>

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Result | @vladmandic/human</title>
<meta name="description" content="Documentation for @vladmandic/human">
<title>Result | @vladmandic/human - v2.1.5</title>
<meta name="description" content="Documentation for @vladmandic/human - v2.1.5">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script async src="../assets/js/search.js" id="search-script"></script>
@ -23,7 +23,7 @@
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@vladmandic/human</a>
<a href="../index.html" class="title">@vladmandic/human - v2.1.5</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
@ -50,7 +50,7 @@
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../index.html">@vladmandic/human</a>
<a href="../index.html">@vladmandic/human - v2.1.5</a>
</li>
<li>
<a href="Result.html">Result</a>
@ -107,6 +107,9 @@
<h3>body</h3>
<div class="tsd-signature tsd-kind-icon">body<span class="tsd-signature-symbol">:</span> <a href="Body.html" class="tsd-signature-type" data-tsd-kind="Interface">Body</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L179">result.ts:179</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -119,6 +122,9 @@
<h3><span class="tsd-flag ts-flagOptional">Optional</span> canvas</h3>
<div class="tsd-signature tsd-kind-icon">canvas<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">OffscreenCanvas</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L189">result.ts:189</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -131,6 +137,9 @@
<h3>face</h3>
<div class="tsd-signature tsd-kind-icon">face<span class="tsd-signature-symbol">:</span> <a href="Face.html" class="tsd-signature-type" data-tsd-kind="Interface">Face</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L177">result.ts:177</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -143,6 +152,9 @@
<h3>gesture</h3>
<div class="tsd-signature tsd-kind-icon">gesture<span class="tsd-signature-symbol">:</span> <a href="../index.html#Gesture" class="tsd-signature-type" data-tsd-kind="Type alias">Gesture</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L183">result.ts:183</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -155,6 +167,9 @@
<h3>hand</h3>
<div class="tsd-signature tsd-kind-icon">hand<span class="tsd-signature-symbol">:</span> <a href="Hand.html" class="tsd-signature-type" data-tsd-kind="Interface">Hand</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L181">result.ts:181</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -167,6 +182,9 @@
<h3>object</h3>
<div class="tsd-signature tsd-kind-icon">object<span class="tsd-signature-symbol">:</span> <a href="Item.html" class="tsd-signature-type" data-tsd-kind="Interface">Item</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L185">result.ts:185</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -179,6 +197,9 @@
<h3>performance</h3>
<div class="tsd-signature tsd-kind-icon">performance<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">&gt;</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L187">result.ts:187</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -191,6 +212,9 @@
<h3>persons</h3>
<div class="tsd-signature tsd-kind-icon">persons<span class="tsd-signature-symbol">:</span> <a href="Person.html" class="tsd-signature-type" data-tsd-kind="Interface">Person</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L193">result.ts:193</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
@ -203,6 +227,9 @@
<h3><span class="tsd-flag ts-flagReadonly">Readonly</span> timestamp</h3>
<div class="tsd-signature tsd-kind-icon">timestamp<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/result.ts#L191">result.ts:191</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">

View File

@ -229,6 +229,7 @@ export var Callback: {
[x: string]: any;
isTraining: boolean;
summary(lineLength: any, positions: any, printFn?: {
(...data: any[]): void;
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
}): void;
@ -397,6 +398,7 @@ export var EarlyStopping: {
[x: string]: any;
isTraining: boolean;
summary(lineLength: any, positions: any, printFn?: {
(...data: any[]): void;
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
}): void;
@ -787,6 +789,7 @@ export var LayersModel: {
[x: string]: any;
isTraining: boolean;
summary(lineLength: any, positions: any, printFn?: {
(...data: any[]): void;
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
}): void;
@ -1900,6 +1903,7 @@ export function model(args: any): {
[x: string]: any;
isTraining: boolean;
summary(lineLength: any, positions: any, printFn?: {
(...data: any[]): void;
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
}): void;
@ -2244,6 +2248,7 @@ declare function earlyStopping(args: any): {
[x: string]: any;
isTraining: boolean;
summary(lineLength: any, positions: any, printFn?: {
(...data: any[]): void;
(...data: any[]): void;
(message?: any, ...optionalParams: any[]): void;
}): void;

View File

@ -1,7 +1,6 @@
/**
* Human main module
*/
/// <reference types="offscreencanvas" />
import { Config } from './config';
import { Result, Face, Hand, Body, Item, Gesture } from './result';
import * as tf from '../dist/tfjs.esm.js';
@ -39,7 +38,7 @@ export declare type TensorFlow = typeof tf;
export declare class Human {
#private;
/** Current version of Human library in *semver* format */
static version: string;
version: string;
/** Current configuration
* - Details: {@link Config}
*/

View File

@ -1,7 +1,6 @@
/**
* Image Processing module used by Human
*/
/// <reference types="offscreencanvas" />
import { Tensor } from '../tfjs/types';
import { Config } from '../config';
declare type Input = Tensor | typeof Image | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas;

View File

@ -1,7 +1 @@
export function GLImageFilter(params: any): void;
export class GLImageFilter {
constructor(params: any);
addFilter: (name: any, ...args: any[]) => void;
reset: () => void;
apply: (image: any) => any;
}
export declare function GLImageFilter(params: any): void;

View File

@ -1,7 +1,6 @@
/**
* Type definitions for Human result object
*/
/// <reference types="offscreencanvas" />
import { Tensor } from './tfjs/types';
import { FaceGesture, BodyGesture, HandGesture, IrisGesture } from './gesture/gesture';
/** Face results

View File

@ -1,7 +1,6 @@
/**
* EfficientPose Module
*/
/// <reference types="offscreencanvas" />
import { GraphModel, Tensor } from '../tfjs/types';
import { Config } from '../config';
declare type Input = Tensor | typeof Image | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas;

View File

@ -2,7 +2,6 @@
* Custom TFJS backend for Human based on WebGL
* Not used by default
*/
/// <reference types="offscreencanvas" />
export declare const config: {
name: string;
priority: number;

2
wiki

@ -1 +1 @@
Subproject commit 1e67b7ca730fb4b50b5a609bdd6724bda3407d73
Subproject commit 3bf213c17d3f25368dc161ad33df8195b60dacb2