redefine draw helpers interface

pull/193/head
Vladimir Mandic 2021-09-15 18:58:54 -04:00
parent 6e85d638bf
commit a80130aa0f
29 changed files with 1496 additions and 891 deletions

View File

@ -11,6 +11,7 @@
### **HEAD -> main** 2021/09/15 mandic00@live.com ### **HEAD -> main** 2021/09/15 mandic00@live.com
- added visual results browser to demo
- reorganize tfjs bundle - reorganize tfjs bundle
- experimental custom tfjs bundle - disabled - experimental custom tfjs bundle - disabled
- add platform and backend capabilities detection - add platform and backend capabilities detection

View File

@ -4,10 +4,8 @@
WebGL shader optimizations for faster load and initial detection WebGL shader optimizations for faster load and initial detection
- Implement WebGL uniforms for shaders: <https://github.com/tensorflow/tfjs/issues/5205>
- Fix shader packing: <https://github.com/tensorflow/tfjs/issues/5343> - Fix shader packing: <https://github.com/tensorflow/tfjs/issues/5343>
- Refactor ImageFX as ESM - Add and benchmark WGSL for WebGPU
- Benchmark WGSL for WebGPU
<br> <br>

View File

@ -8715,10 +8715,9 @@ var HandPipeline = class {
__publicField(this, "storedBoxes"); __publicField(this, "storedBoxes");
__publicField(this, "skipped"); __publicField(this, "skipped");
__publicField(this, "detectedHands"); __publicField(this, "detectedHands");
var _a;
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel2; this.handPoseModel = handPoseModel2;
this.inputSize = (_a = this.handPoseModel) == null ? void 0 : _a.inputs[0].shape[2]; this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -8826,7 +8825,8 @@ var HandPipeline = class {
const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor); const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor);
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint } box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: []
}; };
hands.push(result); hands.push(result);
} }
@ -10463,19 +10463,7 @@ var hand = (res) => {
return gestures; return gestures;
}; };
// src/draw/draw.ts // src/draw.ts
var draw_exports = {};
__export(draw_exports, {
all: () => all,
body: () => body2,
canvas: () => canvas2,
face: () => face2,
gesture: () => gesture,
hand: () => hand2,
object: () => object,
options: () => options2,
person: () => person
});
var options2 = { var options2 = {
color: "rgba(173, 216, 230, 0.6)", color: "rgba(173, 216, 230, 0.6)",
labelColor: "rgba(173, 216, 230, 1)", labelColor: "rgba(173, 216, 230, 1)",
@ -12157,7 +12145,6 @@ var Human = class {
Object.defineProperty(this, "version", { value: version10 }); Object.defineProperty(this, "version", { value: version10 });
this.config = mergeDeep(config, userConfig || {}); this.config = mergeDeep(config, userConfig || {});
this.tf = tfjs_esm_exports; this.tf = tfjs_esm_exports;
this.draw = draw_exports;
this.state = "idle"; this.state = "idle";
__privateSet(this, _numTensors, 0); __privateSet(this, _numTensors, 0);
__privateSet(this, _analyzeMemoryLeaks, false); __privateSet(this, _analyzeMemoryLeaks, false);
@ -12167,11 +12154,11 @@ var Human = class {
this.events = new EventTarget(); this.events = new EventTarget();
this.models = { this.models = {
face: null, face: null,
handpose: null,
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null,
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -12181,6 +12168,17 @@ var Human = class {
faceres: null, faceres: null,
segmentation: null segmentation: null
}; };
this.draw = {
options: options2,
canvas: (input, output) => canvas2(input, output),
face: (output, result, options3) => face2(output, result, options3),
body: (output, result, options3) => body2(output, result, options3),
hand: (output, result, options3) => hand2(output, result, options3),
gesture: (output, result, options3) => gesture(output, result, options3),
object: (output, result, options3) => object(output, result, options3),
person: (output, result, options3) => person(output, result, options3),
all: (output, result, options3) => all(output, result, options3)
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
this.process = { tensor: null, canvas: null }; this.process = { tensor: null, canvas: null };
this.faceTriangulation = triangulation; this.faceTriangulation = triangulation;

File diff suppressed because one or more lines are too long

34
dist/human.esm.js vendored
View File

@ -68772,10 +68772,9 @@ var HandPipeline = class {
__publicField(this, "storedBoxes"); __publicField(this, "storedBoxes");
__publicField(this, "skipped"); __publicField(this, "skipped");
__publicField(this, "detectedHands"); __publicField(this, "detectedHands");
var _a;
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel2; this.handPoseModel = handPoseModel2;
this.inputSize = (_a = this.handPoseModel) == null ? void 0 : _a.inputs[0].shape[2]; this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -68883,7 +68882,8 @@ var HandPipeline = class {
const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor); const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor);
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint } box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: []
}; };
hands.push(result); hands.push(result);
} }
@ -70520,19 +70520,7 @@ var hand = (res) => {
return gestures; return gestures;
}; };
// src/draw/draw.ts // src/draw.ts
var draw_exports = {};
__export(draw_exports, {
all: () => all5,
body: () => body2,
canvas: () => canvas2,
face: () => face2,
gesture: () => gesture,
hand: () => hand2,
object: () => object,
options: () => options2,
person: () => person
});
var options2 = { var options2 = {
color: "rgba(173, 216, 230, 0.6)", color: "rgba(173, 216, 230, 0.6)",
labelColor: "rgba(173, 216, 230, 1)", labelColor: "rgba(173, 216, 230, 1)",
@ -72214,7 +72202,6 @@ var Human = class {
Object.defineProperty(this, "version", { value: version6 }); Object.defineProperty(this, "version", { value: version6 });
this.config = mergeDeep(config, userConfig || {}); this.config = mergeDeep(config, userConfig || {});
this.tf = tfjs_esm_exports; this.tf = tfjs_esm_exports;
this.draw = draw_exports;
this.state = "idle"; this.state = "idle";
__privateSet(this, _numTensors, 0); __privateSet(this, _numTensors, 0);
__privateSet(this, _analyzeMemoryLeaks, false); __privateSet(this, _analyzeMemoryLeaks, false);
@ -72224,11 +72211,11 @@ var Human = class {
this.events = new EventTarget(); this.events = new EventTarget();
this.models = { this.models = {
face: null, face: null,
handpose: null,
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null,
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -72238,6 +72225,17 @@ var Human = class {
faceres: null, faceres: null,
segmentation: null segmentation: null
}; };
this.draw = {
options: options2,
canvas: (input2, output) => canvas2(input2, output),
face: (output, result, options3) => face2(output, result, options3),
body: (output, result, options3) => body2(output, result, options3),
hand: (output, result, options3) => hand2(output, result, options3),
gesture: (output, result, options3) => gesture(output, result, options3),
object: (output, result, options3) => object(output, result, options3),
person: (output, result, options3) => person(output, result, options3),
all: (output, result, options3) => all5(output, result, options3)
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
this.process = { tensor: null, canvas: null }; this.process = { tensor: null, canvas: null };
this.faceTriangulation = triangulation; this.faceTriangulation = triangulation;

File diff suppressed because one or more lines are too long

466
dist/human.js vendored

File diff suppressed because one or more lines are too long

View File

@ -8764,10 +8764,9 @@ var HandPipeline = class {
__publicField(this, "storedBoxes"); __publicField(this, "storedBoxes");
__publicField(this, "skipped"); __publicField(this, "skipped");
__publicField(this, "detectedHands"); __publicField(this, "detectedHands");
var _a;
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel2; this.handPoseModel = handPoseModel2;
this.inputSize = (_a = this.handPoseModel) == null ? void 0 : _a.inputs[0].shape[2]; this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -8875,7 +8874,8 @@ var HandPipeline = class {
const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor); const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor);
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint } box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: []
}; };
hands.push(result); hands.push(result);
} }
@ -10523,19 +10523,7 @@ var hand = (res) => {
return gestures; return gestures;
}; };
// src/draw/draw.ts // src/draw.ts
var draw_exports = {};
__export(draw_exports, {
all: () => all,
body: () => body2,
canvas: () => canvas2,
face: () => face2,
gesture: () => gesture,
hand: () => hand2,
object: () => object,
options: () => options2,
person: () => person
});
var options2 = { var options2 = {
color: "rgba(173, 216, 230, 0.6)", color: "rgba(173, 216, 230, 0.6)",
labelColor: "rgba(173, 216, 230, 1)", labelColor: "rgba(173, 216, 230, 1)",
@ -12220,7 +12208,6 @@ var Human = class {
Object.defineProperty(this, "version", { value: version }); Object.defineProperty(this, "version", { value: version });
this.config = mergeDeep(config, userConfig || {}); this.config = mergeDeep(config, userConfig || {});
this.tf = tf24; this.tf = tf24;
this.draw = draw_exports;
this.state = "idle"; this.state = "idle";
__privateSet(this, _numTensors, 0); __privateSet(this, _numTensors, 0);
__privateSet(this, _analyzeMemoryLeaks, false); __privateSet(this, _analyzeMemoryLeaks, false);
@ -12230,11 +12217,11 @@ var Human = class {
this.events = new EventTarget(); this.events = new EventTarget();
this.models = { this.models = {
face: null, face: null,
handpose: null,
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null,
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -12244,6 +12231,17 @@ var Human = class {
faceres: null, faceres: null,
segmentation: null segmentation: null
}; };
this.draw = {
options: options2,
canvas: (input, output) => canvas2(input, output),
face: (output, result, options3) => face2(output, result, options3),
body: (output, result, options3) => body2(output, result, options3),
hand: (output, result, options3) => hand2(output, result, options3),
gesture: (output, result, options3) => gesture(output, result, options3),
object: (output, result, options3) => object(output, result, options3),
person: (output, result, options3) => person(output, result, options3),
all: (output, result, options3) => all(output, result, options3)
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
this.process = { tensor: null, canvas: null }; this.process = { tensor: null, canvas: null };
this.faceTriangulation = triangulation; this.faceTriangulation = triangulation;

View File

@ -8765,10 +8765,9 @@ var HandPipeline = class {
__publicField(this, "storedBoxes"); __publicField(this, "storedBoxes");
__publicField(this, "skipped"); __publicField(this, "skipped");
__publicField(this, "detectedHands"); __publicField(this, "detectedHands");
var _a;
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel2; this.handPoseModel = handPoseModel2;
this.inputSize = (_a = this.handPoseModel) == null ? void 0 : _a.inputs[0].shape[2]; this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -8876,7 +8875,8 @@ var HandPipeline = class {
const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor); const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor);
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint } box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: []
}; };
hands.push(result); hands.push(result);
} }
@ -10524,19 +10524,7 @@ var hand = (res) => {
return gestures; return gestures;
}; };
// src/draw/draw.ts // src/draw.ts
var draw_exports = {};
__export(draw_exports, {
all: () => all,
body: () => body2,
canvas: () => canvas2,
face: () => face2,
gesture: () => gesture,
hand: () => hand2,
object: () => object,
options: () => options2,
person: () => person
});
var options2 = { var options2 = {
color: "rgba(173, 216, 230, 0.6)", color: "rgba(173, 216, 230, 0.6)",
labelColor: "rgba(173, 216, 230, 1)", labelColor: "rgba(173, 216, 230, 1)",
@ -12221,7 +12209,6 @@ var Human = class {
Object.defineProperty(this, "version", { value: version }); Object.defineProperty(this, "version", { value: version });
this.config = mergeDeep(config, userConfig || {}); this.config = mergeDeep(config, userConfig || {});
this.tf = tf24; this.tf = tf24;
this.draw = draw_exports;
this.state = "idle"; this.state = "idle";
__privateSet(this, _numTensors, 0); __privateSet(this, _numTensors, 0);
__privateSet(this, _analyzeMemoryLeaks, false); __privateSet(this, _analyzeMemoryLeaks, false);
@ -12231,11 +12218,11 @@ var Human = class {
this.events = new EventTarget(); this.events = new EventTarget();
this.models = { this.models = {
face: null, face: null,
handpose: null,
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null,
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -12245,6 +12232,17 @@ var Human = class {
faceres: null, faceres: null,
segmentation: null segmentation: null
}; };
this.draw = {
options: options2,
canvas: (input, output) => canvas2(input, output),
face: (output, result, options3) => face2(output, result, options3),
body: (output, result, options3) => body2(output, result, options3),
hand: (output, result, options3) => hand2(output, result, options3),
gesture: (output, result, options3) => gesture(output, result, options3),
object: (output, result, options3) => object(output, result, options3),
person: (output, result, options3) => person(output, result, options3),
all: (output, result, options3) => all(output, result, options3)
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
this.process = { tensor: null, canvas: null }; this.process = { tensor: null, canvas: null };
this.faceTriangulation = triangulation; this.faceTriangulation = triangulation;

34
dist/human.node.js vendored
View File

@ -8764,10 +8764,9 @@ var HandPipeline = class {
__publicField(this, "storedBoxes"); __publicField(this, "storedBoxes");
__publicField(this, "skipped"); __publicField(this, "skipped");
__publicField(this, "detectedHands"); __publicField(this, "detectedHands");
var _a;
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel2; this.handPoseModel = handPoseModel2;
this.inputSize = (_a = this.handPoseModel) == null ? void 0 : _a.inputs[0].shape[2]; this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -8875,7 +8874,8 @@ var HandPipeline = class {
const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor); const enlarged = enlargeBox2(squarifyBox2(currentBox), handBoxEnlargeFactor);
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint } box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: []
}; };
hands.push(result); hands.push(result);
} }
@ -10523,19 +10523,7 @@ var hand = (res) => {
return gestures; return gestures;
}; };
// src/draw/draw.ts // src/draw.ts
var draw_exports = {};
__export(draw_exports, {
all: () => all,
body: () => body2,
canvas: () => canvas2,
face: () => face2,
gesture: () => gesture,
hand: () => hand2,
object: () => object,
options: () => options2,
person: () => person
});
var options2 = { var options2 = {
color: "rgba(173, 216, 230, 0.6)", color: "rgba(173, 216, 230, 0.6)",
labelColor: "rgba(173, 216, 230, 1)", labelColor: "rgba(173, 216, 230, 1)",
@ -12220,7 +12208,6 @@ var Human = class {
Object.defineProperty(this, "version", { value: version }); Object.defineProperty(this, "version", { value: version });
this.config = mergeDeep(config, userConfig || {}); this.config = mergeDeep(config, userConfig || {});
this.tf = tf24; this.tf = tf24;
this.draw = draw_exports;
this.state = "idle"; this.state = "idle";
__privateSet(this, _numTensors, 0); __privateSet(this, _numTensors, 0);
__privateSet(this, _analyzeMemoryLeaks, false); __privateSet(this, _analyzeMemoryLeaks, false);
@ -12230,11 +12217,11 @@ var Human = class {
this.events = new EventTarget(); this.events = new EventTarget();
this.models = { this.models = {
face: null, face: null,
handpose: null,
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null,
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -12244,6 +12231,17 @@ var Human = class {
faceres: null, faceres: null,
segmentation: null segmentation: null
}; };
this.draw = {
options: options2,
canvas: (input, output) => canvas2(input, output),
face: (output, result, options3) => face2(output, result, options3),
body: (output, result, options3) => body2(output, result, options3),
hand: (output, result, options3) => hand2(output, result, options3),
gesture: (output, result, options3) => gesture(output, result, options3),
object: (output, result, options3) => object(output, result, options3),
person: (output, result, options3) => person(output, result, options3),
all: (output, result, options3) => all(output, result, options3)
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
this.process = { tensor: null, canvas: null }; this.process = { tensor: null, canvas: null };
this.faceTriangulation = triangulation; this.faceTriangulation = triangulation;

View File

@ -2,9 +2,9 @@
* Module that implements helper draw functions, exposed as human.draw * Module that implements helper draw functions, exposed as human.draw
*/ */
import { TRI468 as triangulation } from '../blazeface/coords'; import { TRI468 as triangulation } from './blazeface/coords';
import { mergeDeep, now } from '../helpers'; import { mergeDeep, now } from './helpers';
import type { Result, FaceResult, BodyResult, HandResult, ObjectResult, GestureResult, PersonResult } from '../result'; import type { Result, FaceResult, BodyResult, HandResult, ObjectResult, GestureResult, PersonResult } from './result';
/** /**
* Draw Options * Draw Options
@ -139,7 +139,7 @@ function curves(ctx, points: [number, number, number?][] = [], localOptions) {
} }
} }
export async function gesture(inCanvas: HTMLCanvasElement, result: Array<GestureResult>, drawOptions?: DrawOptions) { export async function gesture(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<GestureResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -164,7 +164,7 @@ export async function gesture(inCanvas: HTMLCanvasElement, result: Array<Gesture
} }
} }
export async function face(inCanvas: HTMLCanvasElement, result: Array<FaceResult>, drawOptions?: DrawOptions) { export async function face(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<FaceResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -266,7 +266,7 @@ export async function face(inCanvas: HTMLCanvasElement, result: Array<FaceResult
} }
} }
export async function body(inCanvas: HTMLCanvasElement, result: Array<BodyResult>, drawOptions?: DrawOptions) { export async function body(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<BodyResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -376,7 +376,7 @@ export async function body(inCanvas: HTMLCanvasElement, result: Array<BodyResult
} }
} }
export async function hand(inCanvas: HTMLCanvasElement, result: Array<HandResult>, drawOptions?: DrawOptions) { export async function hand(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<HandResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -441,7 +441,7 @@ export async function hand(inCanvas: HTMLCanvasElement, result: Array<HandResult
} }
} }
export async function object(inCanvas: HTMLCanvasElement, result: Array<ObjectResult>, drawOptions?: DrawOptions) { export async function object(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<ObjectResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -466,7 +466,7 @@ export async function object(inCanvas: HTMLCanvasElement, result: Array<ObjectRe
} }
} }
export async function person(inCanvas: HTMLCanvasElement, result: Array<PersonResult>, drawOptions?: DrawOptions) { export async function person(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<PersonResult>, drawOptions?: Partial<DrawOptions>) {
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
if (!result || !inCanvas) return; if (!result || !inCanvas) return;
const ctx = getCanvasContext(inCanvas); const ctx = getCanvasContext(inCanvas);
@ -492,38 +492,24 @@ export async function person(inCanvas: HTMLCanvasElement, result: Array<PersonRe
} }
} }
export async function canvas(input: HTMLCanvasElement | HTMLImageElement | HTMLMediaElement | HTMLVideoElement, output: HTMLCanvasElement) { export async function canvas(input: HTMLCanvasElement | OffscreenCanvas | HTMLImageElement | HTMLMediaElement | HTMLVideoElement, output: HTMLCanvasElement) {
if (!input || !output) return; if (!input || !output) return;
const ctx = getCanvasContext(output); const ctx = getCanvasContext(output);
ctx.drawImage(input, 0, 0); ctx.drawImage(input, 0, 0);
} }
export async function all(inCanvas: HTMLCanvasElement, result: Result, drawOptions?: DrawOptions) { export async function all(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Result, drawOptions?: Partial<DrawOptions>) {
if (!result || !result.performance || !result || !inCanvas) return null; if (!result || !result.performance || !result || !inCanvas) return null;
const timestamp = now(); const timestamp = now();
const localOptions = mergeDeep(options, drawOptions); const localOptions = mergeDeep(options, drawOptions);
const promise = Promise.all([ const promise = Promise.all([
face(inCanvas, result.face, localOptions), face(inCanvas, result.face, localOptions),
body(inCanvas, result.body, localOptions), body(inCanvas, result.body, localOptions),
hand(inCanvas, result.hand, localOptions), hand(inCanvas, result.hand, localOptions),
object(inCanvas, result.object, localOptions), object(inCanvas, result.object, localOptions),
// person(inCanvas, result.persons, localOptions);
gesture(inCanvas, result.gesture, localOptions), // gestures do not have buffering gesture(inCanvas, result.gesture, localOptions), // gestures do not have buffering
// person(inCanvas, result.persons, localOptions); // already included above
]); ]);
/*
if (!bufferedResult) bufferedResult = result; // first pass
else if (localOptions.bufferedOutput) calcBuffered(result); // do results interpolation
else bufferedResult = result; // or just use results as-is
const promises: Promise<void>[] = [];
promises.push(face(inCanvas, bufferedResult.face, localOptions));
promises.push(body(inCanvas, bufferedResult.body, localOptions));
promises.push(hand(inCanvas, bufferedResult.hand, localOptions));
promises.push(object(inCanvas, bufferedResult.object, localOptions));
// promises.push(person(inCanvas, bufferedResult.persons, localOptions));
promises.push(gesture(inCanvas, result.gesture, localOptions)); // gestures do not have buffering
// await Promise.all(promises);
*/
result.performance.draw = Math.trunc(now() - timestamp); result.performance.draw = Math.trunc(now() - timestamp);
return promise; return promise;
} }

View File

@ -22,8 +22,7 @@ export class HandPipeline {
constructor(handDetector, handPoseModel) { constructor(handDetector, handPoseModel) {
this.handDetector = handDetector; this.handDetector = handDetector;
this.handPoseModel = handPoseModel; this.handPoseModel = handPoseModel;
// @ts-ignore model is not undefined here this.inputSize = this.handPoseModel.inputs[0].shape ? this.handPoseModel.inputs[0].shape[2] : 0;
this.inputSize = this.handPoseModel?.inputs[0].shape[2];
this.storedBoxes = []; this.storedBoxes = [];
this.skipped = 0; this.skipped = 0;
this.detectedHands = 0; this.detectedHands = 0;
@ -100,7 +99,7 @@ export class HandPipeline {
// for (const possible of boxes) this.storedBoxes.push(possible); // for (const possible of boxes) this.storedBoxes.push(possible);
if (this.storedBoxes.length > 0) useFreshBox = true; if (this.storedBoxes.length > 0) useFreshBox = true;
} }
const hands: Array<{ landmarks?: number[], confidence: number, box: { topLeft: number[], bottomRight: number[] } }> = []; const hands: Array<{ landmarks: number[], confidence: number, box: { topLeft: number[], bottomRight: number[] } }> = [];
// go through working set of boxes // go through working set of boxes
for (let i = 0; i < this.storedBoxes.length; i++) { for (let i = 0; i < this.storedBoxes.length; i++) {
@ -146,6 +145,7 @@ export class HandPipeline {
const result = { const result = {
confidence: currentBox.confidence, confidence: currentBox.confidence,
box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint }, box: { topLeft: enlarged.startPoint, bottomRight: enlarged.endPoint },
landmarks: [],
}; };
hands.push(result); hands.push(result);
} }

View File

@ -32,7 +32,6 @@ export async function predict(input: Tensor, config: Config): Promise<HandResult
const annotations = {}; const annotations = {};
if (predictions[i].landmarks) { if (predictions[i].landmarks) {
for (const key of Object.keys(meshAnnotations)) { for (const key of Object.keys(meshAnnotations)) {
// @ts-ignore landmarks are not undefined
annotations[key] = meshAnnotations[key].map((index) => predictions[i].landmarks[index]); annotations[key] = meshAnnotations[key].map((index) => predictions[i].landmarks[index]);
} }
} }

View File

@ -4,7 +4,7 @@
import { log, now, mergeDeep } from './helpers'; import { log, now, mergeDeep } from './helpers';
import { Config, defaults } from './config'; import { Config, defaults } from './config';
import type { Result, FaceResult, HandResult, BodyResult, ObjectResult, GestureResult } from './result'; import type { Result, FaceResult, HandResult, BodyResult, ObjectResult, GestureResult, PersonResult } from './result';
import * as tf from '../dist/tfjs.esm.js'; import * as tf from '../dist/tfjs.esm.js';
import * as models from './models'; import * as models from './models';
import * as face from './face'; import * as face from './face';
@ -20,7 +20,7 @@ import * as centernet from './object/centernet';
import * as segmentation from './segmentation/segmentation'; import * as segmentation from './segmentation/segmentation';
import * as gesture from './gesture/gesture'; import * as gesture from './gesture/gesture';
import * as image from './image/image'; import * as image from './image/image';
import * as draw from './draw/draw'; import * as draw from './draw';
import * as persons from './persons'; import * as persons from './persons';
import * as interpolate from './interpolate'; import * as interpolate from './interpolate';
import * as env from './env'; import * as env from './env';
@ -28,17 +28,18 @@ import * as backend from './tfjs/backend';
import * as app from '../package.json'; import * as app from '../package.json';
import * as warmups from './warmup'; import * as warmups from './warmup';
import type { Tensor, GraphModel } from './tfjs/types'; import type { Tensor, GraphModel } from './tfjs/types';
import type { DrawOptions } from './draw';
// export types // export types
export * from './config'; export * from './config';
export * from './result'; export * from './result';
export type { DrawOptions } from './draw/draw'; export type { DrawOptions } from './draw';
export { env } from './env'; export { env } from './env';
/** Defines all possible input types for **Human** detection /** Defines all possible input types for **Human** detection
* @typedef Input Type * @typedef Input Type
*/ */
export type Input = Tensor | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas | typeof Image | typeof env.env.Canvas; export type Input = Tensor | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas;
/** Events dispatched by `human.events` /** Events dispatched by `human.events`
* - `create`: triggered when Human object is instantiated * - `create`: triggered when Human object is instantiated
@ -73,29 +74,36 @@ export type TensorFlow = typeof tf;
export class Human { export class Human {
/** Current version of Human library in *semver* format */ /** Current version of Human library in *semver* format */
version: string; version: string;
/** Current configuration /** Current configuration
* - Details: {@link Config} * - Details: {@link Config}
*/ */
config: Config; config: Config;
/** Last known result of detect run /** Last known result of detect run
* - Can be accessed anytime after initial detection * - Can be accessed anytime after initial detection
*/ */
result: Result; result: Result;
/** Current state of Human library /** Current state of Human library
* - Can be polled to determine operations that are currently executed * - Can be polled to determine operations that are currently executed
* - Progresses through: 'config', 'check', 'backend', 'load', 'run:<model>', 'idle' * - Progresses through: 'config', 'check', 'backend', 'load', 'run:<model>', 'idle'
*/ */
state: string; state: string;
/** currenty processed image tensor and canvas */ /** currenty processed image tensor and canvas */
process: { tensor: Tensor | null, canvas: OffscreenCanvas | HTMLCanvasElement | null }; process: { tensor: Tensor | null, canvas: OffscreenCanvas | HTMLCanvasElement | null };
/** @internal: Instance of TensorFlow/JS used by Human /** @internal: Instance of TensorFlow/JS used by Human
* - Can be embedded or externally provided * - Can be embedded or externally provided
*/ */
tf: TensorFlow; tf: TensorFlow;
/** /**
* Object containing environment information used for diagnostics * Object containing environment information used for diagnostics
*/ */
env: env.Env; env: env.Env;
/** Draw helper classes that can draw detected objects on canvas using specified draw /** Draw helper classes that can draw detected objects on canvas using specified draw
* - options: {@link DrawOptions} global settings for all draw operations, can be overriden for each draw method * - options: {@link DrawOptions} global settings for all draw operations, can be overriden for each draw method
* - face: draw detected faces * - face: draw detected faces
@ -104,15 +112,9 @@ export class Human {
* - canvas: draw this.processed canvas which is a this.processed copy of the input * - canvas: draw this.processed canvas which is a this.processed copy of the input
* - all: meta-function that performs: canvas, face, body, hand * - all: meta-function that performs: canvas, face, body, hand
*/ */
draw: { // draw: typeof draw;
options: draw.DrawOptions, draw: { canvas, face, body, hand, gesture, object, person, all, options: DrawOptions };
gesture: typeof draw.gesture,
face: typeof draw.face,
body: typeof draw.body,
hand: typeof draw.hand,
canvas: typeof draw.canvas,
all: typeof draw.all,
};
/** @internal: Currently loaded models */ /** @internal: Currently loaded models */
models: { models: {
face: [unknown, GraphModel | null, GraphModel | null] | null, face: [unknown, GraphModel | null, GraphModel | null] | null,
@ -130,6 +132,7 @@ export class Human {
faceres: GraphModel | null, faceres: GraphModel | null,
segmentation: GraphModel | null, segmentation: GraphModel | null,
}; };
/** Container for events dispatched by Human /** Container for events dispatched by Human
* *
* Possible events: * Possible events:
@ -166,7 +169,6 @@ export class Human {
Object.defineProperty(this, 'version', { value: app.version }); // expose version property directly on class itself Object.defineProperty(this, 'version', { value: app.version }); // expose version property directly on class itself
this.config = mergeDeep(defaults, userConfig || {}); this.config = mergeDeep(defaults, userConfig || {});
this.tf = tf; this.tf = tf;
this.draw = draw;
this.state = 'idle'; this.state = 'idle';
this.#numTensors = 0; this.#numTensors = 0;
this.#analyzeMemoryLeaks = false; this.#analyzeMemoryLeaks = false;
@ -177,11 +179,11 @@ export class Human {
// object that contains all initialized models // object that contains all initialized models
this.models = { this.models = {
face: null, // array of models face: null, // array of models
handpose: null, // array of models
posenet: null, posenet: null,
blazepose: null, blazepose: null,
efficientpose: null, efficientpose: null,
movenet: null, movenet: null,
handpose: null, // array of models
age: null, age: null,
gender: null, gender: null,
emotion: null, emotion: null,
@ -191,6 +193,18 @@ export class Human {
faceres: null, faceres: null,
segmentation: null, segmentation: null,
}; };
// reexport draw methods
this.draw = {
options: draw.options as DrawOptions,
canvas: (input: HTMLCanvasElement | OffscreenCanvas | HTMLImageElement | HTMLMediaElement | HTMLVideoElement, output: HTMLCanvasElement) => draw.canvas(input, output),
face: (output: HTMLCanvasElement | OffscreenCanvas, result: FaceResult[], options?: Partial<DrawOptions>) => draw.face(output, result, options),
body: (output: HTMLCanvasElement | OffscreenCanvas, result: BodyResult[], options?: Partial<DrawOptions>) => draw.body(output, result, options),
hand: (output: HTMLCanvasElement | OffscreenCanvas, result: HandResult[], options?: Partial<DrawOptions>) => draw.hand(output, result, options),
gesture: (output: HTMLCanvasElement | OffscreenCanvas, result: GestureResult[], options?: Partial<DrawOptions>) => draw.gesture(output, result, options),
object: (output: HTMLCanvasElement | OffscreenCanvas, result: ObjectResult[], options?: Partial<DrawOptions>) => draw.object(output, result, options),
person: (output: HTMLCanvasElement | OffscreenCanvas, result: PersonResult[], options?: Partial<DrawOptions>) => draw.person(output, result, options),
all: (output: HTMLCanvasElement | OffscreenCanvas, result: Result, options?: Partial<DrawOptions>) => draw.all(output, result, options),
};
this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] }; this.result = { face: [], body: [], hand: [], gesture: [], object: [], performance: {}, timestamp: 0, persons: [] };
// export access to image this.processing // export access to image this.processing
// @ts-ignore eslint-typescript cannot correctly infer type in anonymous function // @ts-ignore eslint-typescript cannot correctly infer type in anonymous function

View File

@ -16723,3 +16723,757 @@
2021-09-15 13:58:53 STATE: Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":83,"errors":0,"warnings":0} 2021-09-15 13:58:53 STATE: Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":83,"errors":0,"warnings":0}
2021-09-15 13:58:54 STATE: ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"} 2021-09-15 13:58:54 STATE: ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"}
2021-09-15 13:58:54 INFO:  Done... 2021-09-15 13:58:54 INFO:  Done...
2021-09-15 15:48:02 INFO:  @vladmandic/human version 2.2.0
2021-09-15 15:48:02 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-15 15:48:02 INFO:  Application: {"name":"@vladmandic/human","version":"2.2.0"}
2021-09-15 15:48:02 INFO:  Environment: {"profile":"development","config":"build.json","tsconfig":true,"eslintrc":true,"git":true}
2021-09-15 15:48:02 INFO:  Toolchain: {"build":"0.4.1","esbuild":"0.12.28","typescript":"4.4.3","typedoc":"0.21.9","eslint":"7.32.0"}
2021-09-15 15:48:02 INFO:  Build: {"profile":"development","steps":["serve","watch","compile"]}
2021-09-15 15:48:02 STATE: WebServer: {"ssl":false,"port":10030,"root":"."}
2021-09-15 15:48:02 STATE: WebServer: {"ssl":true,"port":10031,"root":".","sslKey":"node_modules/@vladmandic/build/cert/https.key","sslCrt":"node_modules/@vladmandic/build/cert/https.crt"}
2021-09-15 15:48:02 STATE: Watch: {"locations":["src/**","src/**/*","tfjs/**/*"]}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 15:48:02 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475551,"outputBytes":404261}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 15:48:02 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475559,"outputBytes":404265}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 15:48:02 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475626,"outputBytes":404337}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 15:48:02 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":474928,"outputBytes":405516}
2021-09-15 15:48:02 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 15:48:03 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2850944,"outputBytes":1406982}
2021-09-15 15:48:03 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2850944,"outputBytes":2609453}
2021-09-15 15:48:03 INFO:  Listening...
2021-09-15 15:49:04 INFO:  Watch: {"event":"add","input":"src/draw.ts"}
2021-09-15 15:49:04 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 15:49:04 ERROR: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:49:04 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 15:49:04 INFO:  Watch: {"event":"remove","input":"src/draw/draw.ts","skip":true}
2021-09-15 15:49:04 ERROR: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:49:04 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 15:49:04 ERROR: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:49:04 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 15:49:04 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 15:49:04 ERROR: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:49:05 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 15:49:05 ERROR: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:49:06 ERROR: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:36 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 15:50:36 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 15:50:36 ERROR: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:36 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 15:50:36 ERROR: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:36 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 15:50:36 ERROR: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:36 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 15:50:36 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 15:50:36 ERROR: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:37 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 15:50:37 ERROR: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:50:37 ERROR: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts"} {"errors":[{"location":{"column":22,"file":"src/human.ts","length":13,"line":23,"lineText":"import * as draw from './draw/draw';","namespace":"","suggestion":""},"notes":[],"pluginName":"","text":"Could not resolve \"./draw/draw\""}]}
2021-09-15 15:53:13 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 15:53:14 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475526,"outputBytes":404283}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 15:53:14 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475534,"outputBytes":404287}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 15:53:14 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475601,"outputBytes":404359}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 15:53:14 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":474903,"outputBytes":405538}
2021-09-15 15:53:14 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 15:53:15 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2850919,"outputBytes":1407008}
2021-09-15 15:53:15 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2850919,"outputBytes":2609475}
2021-09-15 15:59:17 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 15:59:17 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 15:59:17 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475518,"outputBytes":404138}
2021-09-15 15:59:17 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 15:59:17 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475526,"outputBytes":404142}
2021-09-15 15:59:17 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 15:59:17 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475593,"outputBytes":404214}
2021-09-15 15:59:17 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 15:59:17 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 15:59:17 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":474895,"outputBytes":405393}
2021-09-15 15:59:18 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 15:59:18 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2850911,"outputBytes":1406928}
2021-09-15 15:59:18 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2850911,"outputBytes":2609335}
2021-09-15 16:01:57 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 16:01:57 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:01:57 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475518,"outputBytes":404138}
2021-09-15 16:01:57 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:01:57 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475526,"outputBytes":404142}
2021-09-15 16:01:57 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:01:57 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475593,"outputBytes":404214}
2021-09-15 16:01:57 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:01:57 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:01:57 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":474895,"outputBytes":405393}
2021-09-15 16:01:58 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:01:58 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2850911,"outputBytes":1406928}
2021-09-15 16:01:59 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2850911,"outputBytes":2609335}
2021-09-15 16:04:09 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 16:04:09 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:04:09 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475653,"outputBytes":404138}
2021-09-15 16:04:09 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:04:09 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475661,"outputBytes":404142}
2021-09-15 16:04:09 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:04:09 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475728,"outputBytes":404214}
2021-09-15 16:04:09 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:04:09 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:04:09 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475030,"outputBytes":405393}
2021-09-15 16:04:10 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:04:10 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851046,"outputBytes":1406928}
2021-09-15 16:04:10 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851046,"outputBytes":2609335}
2021-09-15 16:04:51 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 16:04:51 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:04:51 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":475698,"outputBytes":404138}
2021-09-15 16:04:51 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:04:51 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":475706,"outputBytes":404142}
2021-09-15 16:04:51 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:04:51 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":475773,"outputBytes":404214}
2021-09-15 16:04:51 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:04:51 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:04:51 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475075,"outputBytes":405393}
2021-09-15 16:04:52 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:04:52 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851091,"outputBytes":1406928}
2021-09-15 16:04:53 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851091,"outputBytes":2609335}
2021-09-15 16:07:54 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:07:54 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:07:54 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476679,"outputBytes":404575}
2021-09-15 16:07:54 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:07:54 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476687,"outputBytes":404579}
2021-09-15 16:07:54 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:07:54 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476754,"outputBytes":404651}
2021-09-15 16:07:54 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:07:54 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:07:55 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476056,"outputBytes":405830}
2021-09-15 16:07:55 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:07:55 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852072,"outputBytes":1407051}
2021-09-15 16:07:56 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852072,"outputBytes":2609767}
2021-09-15 16:08:57 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:08:57 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:08:57 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476828,"outputBytes":404609}
2021-09-15 16:08:57 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:08:57 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476836,"outputBytes":404613}
2021-09-15 16:08:57 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:08:57 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476903,"outputBytes":404685}
2021-09-15 16:08:57 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:08:57 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:08:57 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476205,"outputBytes":405864}
2021-09-15 16:08:58 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:08:58 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852221,"outputBytes":1407063}
2021-09-15 16:08:58 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852221,"outputBytes":2609803}
2021-09-15 16:09:28 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:09:28 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:09:28 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476828,"outputBytes":404609}
2021-09-15 16:09:28 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:09:28 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476836,"outputBytes":404613}
2021-09-15 16:09:28 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:09:28 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476903,"outputBytes":404685}
2021-09-15 16:09:28 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:09:28 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:09:29 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476205,"outputBytes":405864}
2021-09-15 16:09:29 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:09:30 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852221,"outputBytes":1407063}
2021-09-15 16:09:30 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852221,"outputBytes":2609803}
2021-09-15 16:09:31 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 16:09:31 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:09:31 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476855,"outputBytes":404609}
2021-09-15 16:09:31 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:09:32 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476863,"outputBytes":404613}
2021-09-15 16:09:32 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:09:32 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476930,"outputBytes":404685}
2021-09-15 16:09:32 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:09:32 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:09:32 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476232,"outputBytes":405864}
2021-09-15 16:09:32 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:09:32 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852248,"outputBytes":1407063}
2021-09-15 16:09:33 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852248,"outputBytes":2609803}
2021-09-15 16:18:15 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:18:15 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476832,"outputBytes":404618}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:18:15 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476840,"outputBytes":404622}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:18:15 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476907,"outputBytes":404694}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:18:15 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476209,"outputBytes":405873}
2021-09-15 16:18:15 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:18:16 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852225,"outputBytes":1407064}
2021-09-15 16:18:16 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852225,"outputBytes":2609812}
2021-09-15 16:19:36 INFO:  Watch: {"event":"modify","input":"src/draw.ts"}
2021-09-15 16:19:36 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:19:36 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476108,"outputBytes":404618}
2021-09-15 16:19:36 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:19:36 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476116,"outputBytes":404622}
2021-09-15 16:19:36 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:19:36 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476183,"outputBytes":404694}
2021-09-15 16:19:36 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:19:36 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:19:36 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475485,"outputBytes":405873}
2021-09-15 16:19:37 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:19:37 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851501,"outputBytes":1407064}
2021-09-15 16:19:37 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851501,"outputBytes":2609812}
2021-09-15 16:20:27 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:20:27 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476081,"outputBytes":404591}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:20:27 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476089,"outputBytes":404595}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:20:27 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476156,"outputBytes":404667}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:20:27 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475458,"outputBytes":405846}
2021-09-15 16:20:27 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:20:28 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851474,"outputBytes":1407038}
2021-09-15 16:20:28 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851474,"outputBytes":2609785}
2021-09-15 16:23:02 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:23:02 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476158,"outputBytes":404607}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:23:02 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476166,"outputBytes":404611}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:23:02 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476233,"outputBytes":404683}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:23:02 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475535,"outputBytes":405862}
2021-09-15 16:23:02 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:23:03 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851551,"outputBytes":1407048}
2021-09-15 16:23:03 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851551,"outputBytes":2609801}
2021-09-15 16:27:05 INFO:  Watch: {"event":"modify","input":"src/human.ts"}
2021-09-15 16:27:05 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:27:05 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476260,"outputBytes":404607}
2021-09-15 16:27:05 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:27:05 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476268,"outputBytes":404611}
2021-09-15 16:27:05 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:27:05 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476335,"outputBytes":404683}
2021-09-15 16:27:05 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:27:05 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:27:05 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475637,"outputBytes":405862}
2021-09-15 16:27:06 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:27:06 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851653,"outputBytes":1407048}
2021-09-15 16:27:07 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851653,"outputBytes":2609801}
2021-09-15 16:40:17 INFO:  Watch: {"event":"modify","input":"src/env.ts"}
2021-09-15 16:40:17 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:40:17 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476260,"outputBytes":404607}
2021-09-15 16:40:17 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:40:17 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476268,"outputBytes":404611}
2021-09-15 16:40:17 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:40:17 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476335,"outputBytes":404683}
2021-09-15 16:40:17 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:40:17 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:40:17 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475637,"outputBytes":405862}
2021-09-15 16:40:18 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:40:18 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851653,"outputBytes":1407048}
2021-09-15 16:40:19 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851653,"outputBytes":2609801}
2021-09-15 16:48:16 INFO:  Watch: {"event":"modify","input":"src/handpose/handpose.ts"}
2021-09-15 16:48:16 INFO:  Watch: {"event":"modify","input":"src/handpose/handpipeline.ts","skip":true}
2021-09-15 16:48:16 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:48:16 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 16:48:16 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:48:16 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 16:48:16 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:48:16 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 16:48:16 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:48:16 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:48:16 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 16:48:17 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:48:17 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 16:48:18 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/?backend=wasm","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2609826,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:46 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":303,"url":"/manifest.webmanifest","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6754701,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:57 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1983,"url":"/index-worker.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:57 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1407073,"url":"/dist/human.js","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":79038,"url":"/models/blazeface.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":89289,"url":"/models/facemesh.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":122025,"url":"/models/iris.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":17980,"url":"/models/emotion.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":113998,"url":"/models/handdetect.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":129116,"url":"/models/handskeleton.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":161813,"url":"/models/movenet-lightning.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":71432,"url":"/models/faceres.json","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":538928,"url":"/models/blazeface.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":820516,"url":"/models/emotion.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2955780,"url":"/models/facemesh.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2599092,"url":"/models/iris.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":3515612,"url":"/models/handdetect.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":5502280,"url":"/models/handskeleton.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6978814,"url":"/models/faceres.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:48:58 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":4650216,"url":"/models/movenet-lightning.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 16:49:45 INFO:  Watch: {"event":"add","input":"src/image/imagefx copy.ts"}
2021-09-15 16:49:45 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 16:49:45 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 16:49:45 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 16:49:45 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 16:49:45 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 16:49:45 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 16:49:45 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 16:49:45 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 16:49:45 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 16:49:46 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 16:49:47 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 16:49:48 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 17:05:33 INFO:  Watch: {"event":"modify","input":"src/image/imagefx.ts"}
2021-09-15 17:05:33 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 17:05:34 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476218,"outputBytes":404638}
2021-09-15 17:05:34 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 17:05:34 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476226,"outputBytes":404642}
2021-09-15 17:05:34 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 17:05:34 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476293,"outputBytes":404714}
2021-09-15 17:05:34 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 17:05:34 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 17:05:34 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475595,"outputBytes":405893}
2021-09-15 17:05:34 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 17:05:34 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851611,"outputBytes":1407081}
2021-09-15 17:05:35 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851611,"outputBytes":2609832}
2021-09-15 17:20:35 INFO:  Watch: {"event":"modify","input":"src/image/imagefx.ts"}
2021-09-15 17:20:35 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 17:20:35 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476308,"outputBytes":404920}
2021-09-15 17:20:35 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 17:20:35 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476316,"outputBytes":404924}
2021-09-15 17:20:35 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 17:20:36 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476383,"outputBytes":404996}
2021-09-15 17:20:36 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 17:20:36 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 17:20:36 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475685,"outputBytes":406175}
2021-09-15 17:20:36 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 17:20:36 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851701,"outputBytes":1407201}
2021-09-15 17:20:37 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851701,"outputBytes":2610114}
2021-09-15 17:40:27 INFO:  Watch: {"event":"modify","input":"src/image/imagefx.ts"}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 17:40:27 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476626,"outputBytes":405079}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 17:40:27 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476634,"outputBytes":405083}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 17:40:27 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476701,"outputBytes":405155}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 17:40:27 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476003,"outputBytes":406334}
2021-09-15 17:40:27 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 17:40:28 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852019,"outputBytes":1407265}
2021-09-15 17:40:28 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852019,"outputBytes":2610273}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/?backend=wasm","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2610273,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6755416,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"image/x-icon","size":261950,"url":"/favicon.ico","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:33 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2610273,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6755416,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:40 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:43 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1983,"url":"/index-worker.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:43 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1407265,"url":"/dist/human.js","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":79038,"url":"/models/blazeface.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":89289,"url":"/models/facemesh.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":122025,"url":"/models/iris.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":17980,"url":"/models/emotion.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":113998,"url":"/models/handdetect.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":129116,"url":"/models/handskeleton.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":161813,"url":"/models/movenet-lightning.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":71432,"url":"/models/faceres.json","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":538928,"url":"/models/blazeface.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2955780,"url":"/models/facemesh.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2599092,"url":"/models/iris.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":820516,"url":"/models/emotion.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":5502280,"url":"/models/handskeleton.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":4650216,"url":"/models/movenet-lightning.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":3515612,"url":"/models/handdetect.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:40:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6978814,"url":"/models/faceres.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 17:51:25 INFO:  Watch: {"event":"add","input":"src/image/imagefx-new.ts"}
2021-09-15 17:51:25 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 17:51:25 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476626,"outputBytes":405079}
2021-09-15 17:51:25 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 17:51:25 INFO:  Watch: {"event":"modify","input":"src/image/imagefx-new.ts","skip":true}
2021-09-15 17:51:25 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476634,"outputBytes":405083}
2021-09-15 17:51:25 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 17:51:25 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476701,"outputBytes":405155}
2021-09-15 17:51:25 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 17:51:25 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 17:51:25 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":476003,"outputBytes":406334}
2021-09-15 17:51:26 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 17:51:26 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2852019,"outputBytes":1407265}
2021-09-15 17:51:27 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2852019,"outputBytes":2610273}
2021-09-15 18:33:41 INFO:  Watch: {"event":"modify","input":"src/image/imagefx.ts"}
2021-09-15 18:33:41 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:33:41 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:33:41 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:33:41 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:33:41 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:33:41 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:33:41 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:33:41 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:33:41 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:33:42 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:33:42 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:33:42 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:33:43 INFO:  Watch: {"event":"modify","input":"src/image/imagefx-new.ts","skip":true}
2021-09-15 18:33:49 INFO:  Watch: {"event":"remove","input":"src/image/imagefx copy.ts"}
2021-09-15 18:33:49 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:33:49 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:33:49 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:33:49 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:33:49 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:33:49 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:33:49 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:33:49 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:33:49 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:33:50 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:33:50 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:33:50 INFO:  Watch: {"event":"remove","input":"src/image/imagefx-new.ts","skip":true}
2021-09-15 18:33:50 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:34:34 INFO:  Watch: {"event":"add","input":"src/image/fxblur.ts"}
2021-09-15 18:34:34 INFO:  Watch: {"event":"add","input":"src/image/fxconv.ts","skip":true}
2021-09-15 18:34:34 INFO:  Watch: {"event":"add","input":"src/image/fximage.ts","skip":true}
2021-09-15 18:34:34 INFO:  Watch: {"event":"add","input":"src/image/fxstd.ts","skip":true}
2021-09-15 18:34:34 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:34:34 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:34:34 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:34:34 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:34:34 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:34:34 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:34:34 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:34:34 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:34:34 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:34:35 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:34:35 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:34:36 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:34:41 INFO:  @vladmandic/human version 2.2.0
2021-09-15 18:34:41 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-15 18:34:41 INFO:  Application: {"name":"@vladmandic/human","version":"2.2.0"}
2021-09-15 18:34:41 INFO:  Environment: {"profile":"development","config":"build.json","tsconfig":true,"eslintrc":true,"git":true}
2021-09-15 18:34:41 INFO:  Toolchain: {"build":"0.4.1","esbuild":"0.12.28","typescript":"4.4.3","typedoc":"0.21.9","eslint":"7.32.0"}
2021-09-15 18:34:41 INFO:  Build: {"profile":"development","steps":["serve","watch","compile"]}
2021-09-15 18:34:41 ERROR: WebServer HTTP: listen EADDRINUSE: address already in use :::10030
2021-09-15 18:34:41 ERROR: WebServer HTTPS: listen EADDRINUSE: address already in use :::10031
2021-09-15 18:34:41 STATE: Watch: {"locations":["src/**","src/**/*","tfjs/**/*"]}
2021-09-15 18:34:41 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:34:41 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:34:41 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:34:41 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:34:41 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:34:41 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:34:41 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:34:41 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:34:41 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:34:42 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:34:42 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:34:43 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:34:43 INFO:  Listening...
2021-09-15 18:34:44 INFO:  Build exiting...
2021-09-15 18:34:58 INFO:  @vladmandic/human version 2.2.0
2021-09-15 18:34:58 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-15 18:34:58 INFO:  Application: {"name":"@vladmandic/human","version":"2.2.0"}
2021-09-15 18:34:58 INFO:  Environment: {"profile":"development","config":"build.json","tsconfig":true,"eslintrc":true,"git":true}
2021-09-15 18:34:58 INFO:  Toolchain: {"build":"0.4.1","esbuild":"0.12.28","typescript":"4.4.3","typedoc":"0.21.9","eslint":"7.32.0"}
2021-09-15 18:34:58 INFO:  Build: {"profile":"development","steps":["serve","watch","compile"]}
2021-09-15 18:34:58 STATE: WebServer: {"ssl":false,"port":10030,"root":"."}
2021-09-15 18:34:58 STATE: WebServer: {"ssl":true,"port":10031,"root":".","sslKey":"node_modules/@vladmandic/build/cert/https.key","sslCrt":"node_modules/@vladmandic/build/cert/https.crt"}
2021-09-15 18:34:58 STATE: Watch: {"locations":["src/**","src/**/*","tfjs/**/*"]}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:34:59 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:34:59 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:34:59 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:34:59 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:34:59 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:34:59 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:35:00 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:35:00 INFO:  Listening...
2021-09-15 18:37:08 INFO:  Watch: {"event":"modify","input":"src/image/fxstd.ts"}
2021-09-15 18:37:08 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:37:08 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:37:08 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:37:08 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:37:08 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:37:08 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:37:08 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:37:08 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:37:08 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:37:09 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:37:09 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:37:09 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:38:12 INFO:  Watch: {"event":"modify","input":"src/image/fximage.ts"}
2021-09-15 18:38:12 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:38:12 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:38:12 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:38:12 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:38:12 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:38:12 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:38:12 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:38:12 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:38:12 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:38:13 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:38:13 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:38:14 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:39:11 INFO:  Watch: {"event":"modify","input":"src/image/fximage.ts"}
2021-09-15 18:39:11 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:39:11 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:39:11 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:39:11 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:39:11 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:39:11 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:39:11 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:39:11 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:39:11 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:39:12 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:39:12 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:39:12 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:39:34 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:39:34 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:39:34 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475607,"outputBytes":403932}
2021-09-15 18:39:34 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:39:34 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475615,"outputBytes":403936}
2021-09-15 18:39:34 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:39:34 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475682,"outputBytes":404008}
2021-09-15 18:39:34 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:39:34 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:39:34 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":474984,"outputBytes":405187}
2021-09-15 18:39:35 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:39:35 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2851000,"outputBytes":1405856}
2021-09-15 18:39:36 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2851000,"outputBytes":2609179}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2609179,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6754185,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"image/x-icon","size":261950,"url":"/favicon.ico","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:44 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1983,"url":"/index-worker.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1405856,"url":"/dist/human.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":79038,"url":"/models/blazeface.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":89289,"url":"/models/facemesh.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":122025,"url":"/models/iris.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":17980,"url":"/models/emotion.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":113998,"url":"/models/handdetect.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":129116,"url":"/models/handskeleton.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":161813,"url":"/models/movenet-lightning.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":71432,"url":"/models/faceres.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":820516,"url":"/models/emotion.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2599092,"url":"/models/iris.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":538928,"url":"/models/blazeface.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2955780,"url":"/models/facemesh.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":5502280,"url":"/models/handskeleton.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":3515612,"url":"/models/handdetect.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6978814,"url":"/models/faceres.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:39:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":4650216,"url":"/models/movenet-lightning.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:41:19 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:41:19 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:41:19 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475726,"outputBytes":403924}
2021-09-15 18:41:19 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:41:19 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475734,"outputBytes":403928}
2021-09-15 18:41:19 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:41:19 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475801,"outputBytes":404000}
2021-09-15 18:41:19 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:41:19 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:41:19 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":475103,"outputBytes":405179}
2021-09-15 18:41:20 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:41:20 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2851119,"outputBytes":1405851}
2021-09-15 18:41:21 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2851119,"outputBytes":2609171}
2021-09-15 18:41:27 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:41:27 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:41:28 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475708,"outputBytes":404042}
2021-09-15 18:41:28 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:41:28 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475716,"outputBytes":404046}
2021-09-15 18:41:28 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:41:28 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475783,"outputBytes":404118}
2021-09-15 18:41:28 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:41:28 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:41:28 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":475085,"outputBytes":405297}
2021-09-15 18:41:28 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:41:29 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2851101,"outputBytes":1405889}
2021-09-15 18:41:29 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2851101,"outputBytes":2609289}
2021-09-15 18:41:30 INFO:  Watch: {"event":"modify","input":"src/image/fximage.ts"}
2021-09-15 18:41:30 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:41:30 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475665,"outputBytes":403998}
2021-09-15 18:41:30 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:41:31 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475673,"outputBytes":404002}
2021-09-15 18:41:31 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:41:31 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475740,"outputBytes":404074}
2021-09-15 18:41:31 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:41:31 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:41:31 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":475042,"outputBytes":405253}
2021-09-15 18:41:31 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:41:31 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2851058,"outputBytes":1405853}
2021-09-15 18:41:32 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2851058,"outputBytes":2609245}
2021-09-15 18:43:07 INFO:  Watch: {"event":"modify","input":"src/image/fximage.ts"}
2021-09-15 18:43:07 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:43:08 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475582,"outputBytes":403903}
2021-09-15 18:43:08 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:43:08 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475590,"outputBytes":403907}
2021-09-15 18:43:08 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:43:08 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475657,"outputBytes":403979}
2021-09-15 18:43:08 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:43:08 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:43:08 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":474959,"outputBytes":405158}
2021-09-15 18:43:08 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:43:08 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2850975,"outputBytes":1405796}
2021-09-15 18:43:09 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2850975,"outputBytes":2609644}
2021-09-15 18:43:27 INFO:  Watch: {"event":"modify","input":"src/image/fximage.ts"}
2021-09-15 18:43:27 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:43:27 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475589,"outputBytes":403922}
2021-09-15 18:43:27 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:43:27 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475597,"outputBytes":403926}
2021-09-15 18:43:27 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:43:27 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475664,"outputBytes":403998}
2021-09-15 18:43:27 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:43:27 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:43:27 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":474966,"outputBytes":405177}
2021-09-15 18:43:28 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:43:28 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2850982,"outputBytes":1405803}
2021-09-15 18:43:28 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2850982,"outputBytes":2609169}
2021-09-15 18:43:40 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:43:40 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:43:40 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":53,"inputBytes":475603,"outputBytes":403800}
2021-09-15 18:43:40 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:43:40 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":53,"inputBytes":475611,"outputBytes":403804}
2021-09-15 18:43:40 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:43:40 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":53,"inputBytes":475678,"outputBytes":403876}
2021-09-15 18:43:41 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:43:41 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:43:41 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":53,"inputBytes":474980,"outputBytes":405055}
2021-09-15 18:43:41 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:43:41 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":53,"inputBytes":2850996,"outputBytes":1405761}
2021-09-15 18:43:42 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":53,"inputBytes":2850996,"outputBytes":2609047}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2609047,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:47 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6754115,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"image/x-icon","size":261950,"url":"/favicon.ico","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:48 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1983,"url":"/index-worker.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":1405761,"url":"/dist/human.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":79038,"url":"/models/blazeface.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":89289,"url":"/models/facemesh.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":122025,"url":"/models/iris.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":17980,"url":"/models/emotion.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":113998,"url":"/models/handdetect.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":129116,"url":"/models/handskeleton.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":161813,"url":"/models/movenet-lightning.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/json","size":71432,"url":"/models/faceres.json","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":538928,"url":"/models/blazeface.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":820516,"url":"/models/emotion.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2599092,"url":"/models/iris.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":2955780,"url":"/models/facemesh.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":5502280,"url":"/models/handskeleton.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6978814,"url":"/models/faceres.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":4650216,"url":"/models/movenet-lightning.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:43:51 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":3515612,"url":"/models/handdetect.bin","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:32 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:44:32 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:44:32 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:44:32 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:44:32 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:44:32 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:44:32 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:44:32 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:44:32 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:44:32 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:44:33 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:44:33 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:44:34 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/html","size":7551,"url":"/","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/css","size":107884,"url":"/icons.css","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":45242,"url":"/index.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":2609826,"url":"/dist/human.esm.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":14222,"url":"/helpers/menu.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":10894,"url":"/helpers/gl-bench.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":3406,"url":"/helpers/webrtc.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":5785,"url":"/helpers/jsonview.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"font/woff2","size":181500,"url":"/assets/lato-light.woff2","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"application/octet-stream","size":6754701,"url":"/dist/human.esm.js.map","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:35 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"image/x-icon","size":261950,"url":"/favicon.ico","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:36 DATA:  HTTP: {"method":"GET","ver":"1.1","status":200,"mime":"text/javascript","size":4115,"url":"/index-pwa.js","remote":"::ffff:192.168.0.200"}
2021-09-15 18:44:44 INFO:  Watch: {"event":"remove","input":"src/image/fxblur.ts"}
2021-09-15 18:44:44 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:44:44 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:44:44 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:44:44 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:44:44 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:44:44 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:44:44 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:44:44 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:44:44 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:44:45 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:44:45 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:44:45 INFO:  Watch: {"event":"remove","input":"src/image/fxconv.ts","skip":true}
2021-09-15 18:44:46 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:44:47 INFO:  Watch: {"event":"remove","input":"src/image/fximage.ts","skip":true}
2021-09-15 18:44:49 INFO:  Watch: {"event":"remove","input":"src/image/fxstd.ts","skip":true}
2021-09-15 18:44:58 INFO:  Watch: {"event":"modify","input":"src/image/image.ts"}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:44:58 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:44:58 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:44:58 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:44:58 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:44:58 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:44:59 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:44:59 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:56:28 INFO:  Build exiting...
2021-09-15 18:56:33 INFO:  @vladmandic/human version 2.2.0
2021-09-15 18:56:33 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-15 18:56:33 INFO:  Application: {"name":"@vladmandic/human","version":"2.2.0"}
2021-09-15 18:56:33 INFO:  Environment: {"profile":"production","config":"build.json","tsconfig":true,"eslintrc":true,"git":true}
2021-09-15 18:56:33 INFO:  Toolchain: {"build":"0.4.1","esbuild":"0.12.28","typescript":"4.4.3","typedoc":"0.21.9","eslint":"7.32.0"}
2021-09-15 18:56:33 INFO:  Build: {"profile":"production","steps":["clean","compile","typings","typedoc","lint","changelog"]}
2021-09-15 18:56:33 STATE: Clean: {"locations":["dist/*","types/*","typedoc/*"]}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":102,"outputBytes":1416}
2021-09-15 18:56:33 STATE: Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":50,"inputBytes":476228,"outputBytes":404632}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":110,"outputBytes":1424}
2021-09-15 18:56:33 STATE: Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":50,"inputBytes":476236,"outputBytes":404636}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":1,"inputBytes":149,"outputBytes":1491}
2021-09-15 18:56:33 STATE: Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":50,"inputBytes":476303,"outputBytes":404708}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1063,"outputBytes":1631}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":3088,"outputBytes":793}
2021-09-15 18:56:33 STATE: Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":50,"inputBytes":475605,"outputBytes":405887}
2021-09-15 18:56:33 STATE: Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":8,"inputBytes":3088,"outputBytes":2376809}
2021-09-15 18:56:34 STATE: Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":50,"inputBytes":2851621,"outputBytes":1407073}
2021-09-15 18:56:34 STATE: Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":50,"inputBytes":2851621,"outputBytes":2609826}
2021-09-15 18:56:50 STATE: Typings: {"input":"src/human.ts","output":"types","files":94}
2021-09-15 18:56:55 STATE: TypeDoc: {"input":"src/human.ts","output":"typedoc","objects":29,"index":true}
2021-09-15 18:57:22 STATE: Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":83,"errors":0,"warnings":0}
2021-09-15 18:57:23 STATE: ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"}
2021-09-15 18:57:23 INFO:  Done...

View File

@ -40,4 +40,3 @@ async function main() {
} }
main(); main();
// @ts-ignore // in nodejs+wasm must set explicitly before using human

View File

@ -1,291 +1,291 @@
2021-09-13 13:23:01 INFO:  @vladmandic/human version 2.2.0 2021-09-15 18:57:26 INFO:  @vladmandic/human version 2.2.0
2021-09-13 13:23:01 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0 2021-09-15 18:57:26 INFO:  User: vlado Platform: linux Arch: x64 Node: v16.5.0
2021-09-13 13:23:01 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"] 2021-09-15 18:57:26 INFO:  tests: ["test-node.js","test-node-gpu.js","test-node-wasm.js"]
2021-09-13 13:23:01 INFO:  2021-09-15 18:57:26 INFO: 
2021-09-13 13:23:01 INFO:  test-node.js start 2021-09-15 18:57:26 INFO:  test-node.js start
2021-09-13 13:23:01 STATE: test-node.js passed: create human 2021-09-15 18:57:27 STATE: test-node.js passed: create human
2021-09-13 13:23:01 INFO:  test-node.js human version: 2.2.0 2021-09-15 18:57:27 INFO:  test-node.js human version: 2.2.0
2021-09-13 13:23:01 INFO:  test-node.js platform: linux x64 agent: NodeJS v16.5.0 2021-09-15 18:57:27 INFO:  test-node.js platform: linux x64 agent: NodeJS v16.5.0
2021-09-13 13:23:01 INFO:  test-node.js tfjs version: 3.9.0 2021-09-15 18:57:27 INFO:  test-node.js tfjs version: 3.9.0
2021-09-13 13:23:01 STATE: test-node.js passed: set backend: tensorflow 2021-09-15 18:57:27 STATE: test-node.js passed: set backend: tensorflow
2021-09-13 13:23:01 STATE: test-node.js tensors 573 2021-09-15 18:57:27 STATE: test-node.js tensors 573
2021-09-13 13:23:01 STATE: test-node.js passed: load models 2021-09-15 18:57:27 STATE: test-node.js passed: load models
2021-09-13 13:23:01 STATE: test-node.js result: defined models: 14 loaded models: 3 2021-09-15 18:57:27 STATE: test-node.js result: defined models: 14 loaded models: 3
2021-09-13 13:23:01 STATE: test-node.js passed: warmup: none default 2021-09-15 18:57:27 STATE: test-node.js passed: warmup: none default
2021-09-13 13:23:01 STATE: test-node.js event: image 2021-09-15 18:57:28 STATE: test-node.js event: image
2021-09-13 13:23:02 STATE: test-node.js event: detect 2021-09-15 18:57:28 STATE: test-node.js event: detect
2021-09-13 13:23:02 STATE: test-node.js event: warmup 2021-09-15 18:57:28 STATE: test-node.js event: warmup
2021-09-13 13:23:02 STATE: test-node.js passed: warmup: face default 2021-09-15 18:57:28 STATE: test-node.js passed: warmup: face default
2021-09-13 13:23:02 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":23.6,"gender":"female"} {} {} 2021-09-15 18:57:28 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":23.6,"gender":"female"} {} {}
2021-09-13 13:23:02 DATA:  test-node.js result: performance: load: 126 total: 447 2021-09-15 18:57:28 DATA:  test-node.js result: performance: load: 129 total: 530
2021-09-13 13:23:02 STATE: test-node.js event: image 2021-09-15 18:57:28 STATE: test-node.js event: image
2021-09-13 13:23:02 STATE: test-node.js event: detect 2021-09-15 18:57:28 STATE: test-node.js event: detect
2021-09-13 13:23:02 STATE: test-node.js event: warmup 2021-09-15 18:57:28 STATE: test-node.js event: warmup
2021-09-13 13:23:02 STATE: test-node.js passed: warmup: body default 2021-09-15 18:57:28 STATE: test-node.js passed: warmup: body default
2021-09-13 13:23:02 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:28 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:02 DATA:  test-node.js result: performance: load: 126 total: 367 2021-09-15 18:57:28 DATA:  test-node.js result: performance: load: 129 total: 327
2021-09-13 13:23:02 INFO:  test-node.js test default 2021-09-15 18:57:28 INFO:  test-node.js test default
2021-09-13 13:23:03 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:29 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:03 STATE: test-node.js event: image 2021-09-15 18:57:29 STATE: test-node.js event: image
2021-09-13 13:23:03 STATE: test-node.js event: detect 2021-09-15 18:57:29 STATE: test-node.js event: detect
2021-09-13 13:23:03 STATE: test-node.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:29 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:03 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:30 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:03 DATA:  test-node.js result: performance: load: 126 total: 287 2021-09-15 18:57:30 DATA:  test-node.js result: performance: load: 129 total: 264
2021-09-13 13:23:03 INFO:  test-node.js test body variants 2021-09-15 18:57:30 INFO:  test-node.js test body variants
2021-09-13 13:23:04 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:30 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:04 STATE: test-node.js event: image 2021-09-15 18:57:30 STATE: test-node.js event: image
2021-09-13 13:23:04 STATE: test-node.js event: detect 2021-09-15 18:57:30 STATE: test-node.js event: detect
2021-09-13 13:23:04 STATE: test-node.js passed: detect: samples/ai-body.jpg posenet 2021-09-15 18:57:30 STATE: test-node.js passed: detect: samples/ai-body.jpg posenet
2021-09-13 13:23:04 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:30 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:04 DATA:  test-node.js result: performance: load: 126 total: 188 2021-09-15 18:57:30 DATA:  test-node.js result: performance: load: 129 total: 174
2021-09-13 13:23:05 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:31 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:05 STATE: test-node.js event: image 2021-09-15 18:57:31 STATE: test-node.js event: image
2021-09-13 13:23:05 STATE: test-node.js event: detect 2021-09-15 18:57:31 STATE: test-node.js event: detect
2021-09-13 13:23:05 STATE: test-node.js passed: detect: samples/ai-body.jpg movenet 2021-09-15 18:57:31 STATE: test-node.js passed: detect: samples/ai-body.jpg movenet
2021-09-13 13:23:05 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:31 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:05 DATA:  test-node.js result: performance: load: 126 total: 149 2021-09-15 18:57:31 DATA:  test-node.js result: performance: load: 129 total: 140
2021-09-13 13:23:05 STATE: test-node.js event: image 2021-09-15 18:57:32 STATE: test-node.js event: image
2021-09-13 13:23:05 STATE: test-node.js event: detect 2021-09-15 18:57:32 STATE: test-node.js event: detect
2021-09-13 13:23:05 STATE: test-node.js passed: detect: random default 2021-09-15 18:57:32 STATE: test-node.js passed: detect: random default
2021-09-13 13:23:05 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} 2021-09-15 18:57:32 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {}
2021-09-13 13:23:05 DATA:  test-node.js result: performance: load: 126 total: 79 2021-09-15 18:57:32 DATA:  test-node.js result: performance: load: 129 total: 79
2021-09-13 13:23:05 INFO:  test-node.js test: first instance 2021-09-15 18:57:32 INFO:  test-node.js test: first instance
2021-09-13 13:23:06 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:32 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:06 STATE: test-node.js event: image 2021-09-15 18:57:32 STATE: test-node.js event: image
2021-09-13 13:23:06 STATE: test-node.js event: detect 2021-09-15 18:57:32 STATE: test-node.js event: detect
2021-09-13 13:23:06 STATE: test-node.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:32 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:06 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:32 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:06 DATA:  test-node.js result: performance: load: 126 total: 348 2021-09-15 18:57:32 DATA:  test-node.js result: performance: load: 129 total: 343
2021-09-13 13:23:06 INFO:  test-node.js test: second instance 2021-09-15 18:57:32 INFO:  test-node.js test: second instance
2021-09-13 13:23:06 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:33 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:07 STATE: test-node.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:33 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:07 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {"score":0.69,"keypoints":10} 2021-09-15 18:57:33 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {"score":0.69,"keypoints":10}
2021-09-13 13:23:07 DATA:  test-node.js result: performance: load: 50 total: 292 2021-09-15 18:57:33 DATA:  test-node.js result: performance: load: 62 total: 297
2021-09-13 13:23:07 INFO:  test-node.js test: concurrent 2021-09-15 18:57:33 INFO:  test-node.js test: concurrent
2021-09-13 13:23:07 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:57:33 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:07 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:57:33 STATE: test-node.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:08 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:34 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:08 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:35 STATE: test-node.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:09 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:35 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:09 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:35 STATE: test-node.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:09 STATE: test-node.js event: image 2021-09-15 18:57:35 STATE: test-node.js event: image
2021-09-13 13:23:09 STATE: test-node.js event: image 2021-09-15 18:57:35 STATE: test-node.js event: image
2021-09-13 13:23:09 STATE: test-node.js event: image 2021-09-15 18:57:35 STATE: test-node.js event: image
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:36 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 1 object: 0 person: 0 {} {} {"score":0.69,"keypoints":10} 2021-09-15 18:57:36 DATA:  test-node.js result: face: 0 body: 1 hand: 0 gesture: 1 object: 0 person: 0 {} {} {"score":0.69,"keypoints":10}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 50 total: 585 2021-09-15 18:57:36 DATA:  test-node.js result: performance: load: 62 total: 528
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:36 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {"score":0.69,"keypoints":10} 2021-09-15 18:57:36 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {"score":0.69,"keypoints":10}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 50 total: 668 2021-09-15 18:57:36 DATA:  test-node.js result: performance: load: 62 total: 609
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:57:36 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 0 person: 1 {"score":0.42,"age":29.5,"gender":"female"} {} {"score":0.47,"keypoints":4} 2021-09-15 18:57:36 DATA:  test-node.js result: face: 1 body: 1 hand: 0 gesture: 5 object: 0 person: 1 {"score":0.42,"age":29.5,"gender":"female"} {} {"score":0.47,"keypoints":4}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 50 total: 779 2021-09-15 18:57:36 DATA:  test-node.js result: performance: load: 62 total: 720
2021-09-13 13:23:10 STATE: test-node.js event: detect 2021-09-15 18:57:36 STATE: test-node.js event: detect
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:36 STATE: test-node.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {} 2021-09-15 18:57:36 DATA:  test-node.js result: face: 0 body: 0 hand: 0 gesture: 0 object: 0 person: 0 {} {} {}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 126 total: 1111 2021-09-15 18:57:36 DATA:  test-node.js result: performance: load: 129 total: 1067
2021-09-13 13:23:10 STATE: test-node.js event: detect 2021-09-15 18:57:36 STATE: test-node.js event: detect
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:36 STATE: test-node.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {} 2021-09-15 18:57:36 DATA:  test-node.js result: face: 1 body: 0 hand: 0 gesture: 2 object: 0 person: 1 {"score":1,"age":29.5,"gender":"female"} {} {}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 126 total: 1335 2021-09-15 18:57:36 DATA:  test-node.js result: performance: load: 129 total: 1292
2021-09-13 13:23:10 STATE: test-node.js event: detect 2021-09-15 18:57:37 STATE: test-node.js event: detect
2021-09-13 13:23:10 STATE: test-node.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:57:37 STATE: test-node.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:23:10 DATA:  test-node.js result: face: 2 body: 0 hand: 0 gesture: 9 object: 0 person: 2 {"score":1,"age":23.6,"gender":"female"} {} {} 2021-09-15 18:57:37 DATA:  test-node.js result: face: 2 body: 0 hand: 0 gesture: 9 object: 0 person: 2 {"score":1,"age":23.6,"gender":"female"} {} {}
2021-09-13 13:23:10 DATA:  test-node.js result: performance: load: 126 total: 1416 2021-09-15 18:57:37 DATA:  test-node.js result: performance: load: 129 total: 1371
2021-09-13 13:23:10 STATE: test-node.js passeed: no memory leak 2021-09-15 18:57:37 STATE: test-node.js passeed: no memory leak
2021-09-13 13:23:10 INFO:  test-node.js events: {"image":10,"detect":10,"warmup":2} 2021-09-15 18:57:37 INFO:  test-node.js events: {"image":10,"detect":10,"warmup":2}
2021-09-13 13:23:10 INFO:  test-node.js test complete: 9089 ms 2021-09-15 18:57:37 INFO:  test-node.js test complete: 9143 ms
2021-09-13 13:23:10 INFO:  2021-09-15 18:57:37 INFO: 
2021-09-13 13:23:10 INFO:  test-node-gpu.js start 2021-09-15 18:57:37 INFO:  test-node-gpu.js start
2021-09-13 13:23:11 WARN:  test-node-gpu.js stderr: 2021-09-13 13:23:11.218646: 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-15 18:57:37 WARN:  test-node-gpu.js stderr: 2021-09-15 18:57:37.843949: 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-13 13:23:11 WARN:  test-node-gpu.js stderr: 2021-09-13 13:23:11.265489: 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-15 18:57:37 WARN:  test-node-gpu.js stderr: 2021-09-15 18:57:37.996363: 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-13 13:23:11 WARN:  test-node-gpu.js stderr: 2021-09-13 13:23:11.265541: 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-15 18:57:37 WARN:  test-node-gpu.js stderr: 2021-09-15 18:57:37.996421: 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-13 13:23:11 STATE: test-node-gpu.js passed: create human 2021-09-15 18:57:38 STATE: test-node-gpu.js passed: create human
2021-09-13 13:23:11 INFO:  test-node-gpu.js human version: 2.2.0 2021-09-15 18:57:38 INFO:  test-node-gpu.js human version: 2.2.0
2021-09-13 13:23:11 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v16.5.0 2021-09-15 18:57:38 INFO:  test-node-gpu.js platform: linux x64 agent: NodeJS v16.5.0
2021-09-13 13:23:11 INFO:  test-node-gpu.js tfjs version: 3.9.0 2021-09-15 18:57:38 INFO:  test-node-gpu.js tfjs version: 3.9.0
2021-09-13 13:23:11 STATE: test-node-gpu.js passed: set backend: tensorflow 2021-09-15 18:57:38 STATE: test-node-gpu.js passed: set backend: tensorflow
2021-09-13 13:23:11 STATE: test-node-gpu.js tensors 1456 2021-09-15 18:57:38 STATE: test-node-gpu.js tensors 1456
2021-09-13 13:23:11 STATE: test-node-gpu.js passed: load models 2021-09-15 18:57:38 STATE: test-node-gpu.js passed: load models
2021-09-13 13:23:11 STATE: test-node-gpu.js result: defined models: 14 loaded models: 7 2021-09-15 18:57:38 STATE: test-node-gpu.js result: defined models: 14 loaded models: 7
2021-09-13 13:23:11 STATE: test-node-gpu.js passed: warmup: none default 2021-09-15 18:57:38 STATE: test-node-gpu.js passed: warmup: none default
2021-09-13 13:23:11 STATE: test-node-gpu.js event: image 2021-09-15 18:57:38 STATE: test-node-gpu.js event: image
2021-09-13 13:23:12 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:39 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:12 STATE: test-node-gpu.js event: warmup 2021-09-15 18:57:39 STATE: test-node-gpu.js event: warmup
2021-09-13 13:23:12 STATE: test-node-gpu.js passed: warmup: face default 2021-09-15 18:57:39 STATE: test-node-gpu.js passed: warmup: face default
2021-09-13 13:23:12 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4} 2021-09-15 18:57:39 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.42,"keypoints":4}
2021-09-13 13:23:12 DATA:  test-node-gpu.js result: performance: load: 285 total: 1003 2021-09-15 18:57:39 DATA:  test-node-gpu.js result: performance: load: 304 total: 1116
2021-09-13 13:23:12 STATE: test-node-gpu.js event: image 2021-09-15 18:57:39 STATE: test-node-gpu.js event: image
2021-09-13 13:23:13 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:40 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:13 STATE: test-node-gpu.js event: warmup 2021-09-15 18:57:40 STATE: test-node-gpu.js event: warmup
2021-09-13 13:23:13 STATE: test-node-gpu.js passed: warmup: body default 2021-09-15 18:57:40 STATE: test-node-gpu.js passed: warmup: body default
2021-09-13 13:23:13 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} 2021-09-15 18:57:40 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-13 13:23:13 DATA:  test-node-gpu.js result: performance: load: 285 total: 1026 2021-09-15 18:57:40 DATA:  test-node-gpu.js result: performance: load: 304 total: 1032
2021-09-13 13:23:13 INFO:  test-node-gpu.js test default 2021-09-15 18:57:40 INFO:  test-node-gpu.js test default
2021-09-13 13:23:14 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:41 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:14 STATE: test-node-gpu.js event: image 2021-09-15 18:57:41 STATE: test-node-gpu.js event: image
2021-09-13 13:23:15 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:42 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:15 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:42 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:15 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} 2021-09-15 18:57:42 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-13 13:23:15 DATA:  test-node-gpu.js result: performance: load: 285 total: 578 2021-09-15 18:57:42 DATA:  test-node-gpu.js result: performance: load: 304 total: 601
2021-09-13 13:23:15 INFO:  test-node-gpu.js test body variants 2021-09-15 18:57:42 INFO:  test-node-gpu.js test body variants
2021-09-13 13:23:15 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:42 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:15 STATE: test-node-gpu.js event: image 2021-09-15 18:57:42 STATE: test-node-gpu.js event: image
2021-09-13 13:23:16 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:43 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:16 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg posenet 2021-09-15 18:57:43 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg posenet
2021-09-13 13:23:16 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16} 2021-09-15 18:57:43 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.96,"keypoints":16}
2021-09-13 13:23:16 DATA:  test-node-gpu.js result: performance: load: 285 total: 256 2021-09-15 18:57:43 DATA:  test-node-gpu.js result: performance: load: 304 total: 295
2021-09-13 13:23:17 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:44 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:17 STATE: test-node-gpu.js event: image 2021-09-15 18:57:44 STATE: test-node-gpu.js event: image
2021-09-13 13:23:17 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:44 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:17 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg movenet 2021-09-15 18:57:44 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg movenet
2021-09-13 13:23:17 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17} 2021-09-15 18:57:44 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.92,"keypoints":17}
2021-09-13 13:23:17 DATA:  test-node-gpu.js result: performance: load: 285 total: 188 2021-09-15 18:57:44 DATA:  test-node-gpu.js result: performance: load: 304 total: 191
2021-09-13 13:23:17 STATE: test-node-gpu.js event: image 2021-09-15 18:57:44 STATE: test-node-gpu.js event: image
2021-09-13 13:23:18 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:44 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:18 STATE: test-node-gpu.js passed: detect: random default 2021-09-15 18:57:44 STATE: test-node-gpu.js passed: detect: random default
2021-09-13 13:23:18 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 0 object: 0 person: 0 {} {} {"score":0,"keypoints":0} 2021-09-15 18:57:44 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.92,"keypoints":17}
2021-09-13 13:23:18 DATA:  test-node-gpu.js result: performance: load: 285 total: 601 2021-09-15 18:57:44 DATA:  test-node-gpu.js result: performance: load: 304 total: 39
2021-09-13 13:23:18 INFO:  test-node-gpu.js test: first instance 2021-09-15 18:57:44 INFO:  test-node-gpu.js test: first instance
2021-09-13 13:23:18 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:44 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:18 STATE: test-node-gpu.js event: image 2021-09-15 18:57:44 STATE: test-node-gpu.js event: image
2021-09-13 13:23:19 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:44 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:19 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:44 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:19 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:44 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-09-13 13:23:19 DATA:  test-node-gpu.js result: performance: load: 285 total: 882 2021-09-15 18:57:44 DATA:  test-node-gpu.js result: performance: load: 304 total: 71
2021-09-13 13:23:19 INFO:  test-node-gpu.js test: second instance 2021-09-15 18:57:44 INFO:  test-node-gpu.js test: second instance
2021-09-13 13:23:19 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:45 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:19 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:45 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:19 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:45 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-13 13:23:19 DATA:  test-node-gpu.js result: performance: load: 5 total: 364 2021-09-15 18:57:45 DATA:  test-node-gpu.js result: performance: load: 4 total: 293
2021-09-13 13:23:19 INFO:  test-node-gpu.js test: concurrent 2021-09-15 18:57:45 INFO:  test-node-gpu.js test: concurrent
2021-09-13 13:23:19 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:57:45 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:19 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:57:45 STATE: test-node-gpu.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:20 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:46 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:21 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:57:47 STATE: test-node-gpu.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:22 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:47 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:22 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:57:47 STATE: test-node-gpu.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:22 STATE: test-node-gpu.js event: image 2021-09-15 18:57:47 STATE: test-node-gpu.js event: image
2021-09-13 13:23:22 STATE: test-node-gpu.js event: image 2021-09-15 18:57:47 STATE: test-node-gpu.js event: image
2021-09-13 13:23:22 STATE: test-node-gpu.js event: image 2021-09-15 18:57:47 STATE: test-node-gpu.js event: image
2021-09-13 13:23:24 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:49 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: face: 0 body: 1 hand: 0 gesture: 1 object: 1 person: 0 {} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:49 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-09-13 13:23:24 DATA:  test-node-gpu.js result: performance: load: 5 total: 1886 2021-09-15 18:57:49 DATA:  test-node-gpu.js result: performance: load: 4 total: 1874
2021-09-13 13:23:24 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:57:49 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 6 object: 1 person: 1 {"score":0.42,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:49 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 6 object: 1 person: 1 {"score":0.42,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: performance: load: 5 total: 1893 2021-09-15 18:57:49 DATA:  test-node-gpu.js result: performance: load: 4 total: 1881
2021-09-13 13:23:24 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:49 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:49 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.72,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: performance: load: 5 total: 1893 2021-09-15 18:57:49 DATA:  test-node-gpu.js result: performance: load: 4 total: 1881
2021-09-13 13:23:24 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:50 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:24 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:57:50 STATE: test-node-gpu.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:24 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.92,"keypoints":10} 2021-09-15 18:57:50 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.92,"keypoints":10}
2021-09-13 13:23:24 DATA:  test-node-gpu.js result: performance: load: 285 total: 2630 2021-09-15 18:57:50 DATA:  test-node-gpu.js result: performance: load: 304 total: 2581
2021-09-13 13:23:25 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:50 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:25 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:57:50 STATE: test-node-gpu.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:25 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10} 2021-09-15 18:57:50 DATA:  test-node-gpu.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 1 person: 1 {"score":1,"age":29.5,"gender":"female"} {"score":0.71,"class":"person"} {"score":0.69,"keypoints":10}
2021-09-13 13:23:25 DATA:  test-node-gpu.js result: performance: load: 285 total: 2849 2021-09-15 18:57:50 DATA:  test-node-gpu.js result: performance: load: 304 total: 2739
2021-09-13 13:23:25 STATE: test-node-gpu.js event: detect 2021-09-15 18:57:50 STATE: test-node-gpu.js event: detect
2021-09-13 13:23:25 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:57:50 STATE: test-node-gpu.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:23:25 DATA:  test-node-gpu.js result: face: 2 body: 1 hand: 0 gesture: 10 object: 1 person: 2 {"score":1,"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":10} 2021-09-15 18:57:50 DATA:  test-node-gpu.js result: face: 2 body: 1 hand: 0 gesture: 10 object: 1 person: 2 {"score":1,"age":23.6,"gender":"female"} {"score":0.82,"class":"person"} {"score":0.47,"keypoints":10}
2021-09-13 13:23:25 DATA:  test-node-gpu.js result: performance: load: 285 total: 2930 2021-09-15 18:57:50 DATA:  test-node-gpu.js result: performance: load: 304 total: 2831
2021-09-13 13:23:25 STATE: test-node-gpu.js passeed: no memory leak 2021-09-15 18:57:50 STATE: test-node-gpu.js passeed: no memory leak
2021-09-13 13:23:25 INFO:  test-node-gpu.js events: {"image":10,"detect":10,"warmup":2} 2021-09-15 18:57:50 INFO:  test-node-gpu.js events: {"image":10,"detect":10,"warmup":2}
2021-09-13 13:23:25 INFO:  test-node-gpu.js test complete: 13900 ms 2021-09-15 18:57:50 INFO:  test-node-gpu.js test complete: 12656 ms
2021-09-13 13:23:25 INFO:  2021-09-15 18:57:50 INFO: 
2021-09-13 13:23:25 INFO:  test-node-wasm.js start 2021-09-15 18:57:50 INFO:  test-node-wasm.js start
2021-09-13 13:23:25 STATE: test-node-wasm.js passed: model server: https://vladmandic.github.io/human/models/ 2021-09-15 18:57:51 STATE: test-node-wasm.js passed: model server: https://vladmandic.github.io/human/models/
2021-09-13 13:23:25 STATE: test-node-wasm.js passed: create human 2021-09-15 18:57:51 STATE: test-node-wasm.js passed: create human
2021-09-13 13:23:25 INFO:  test-node-wasm.js human version: 2.2.0 2021-09-15 18:57:51 INFO:  test-node-wasm.js human version: 2.2.0
2021-09-13 13:23:25 INFO:  test-node-wasm.js platform: linux x64 agent: NodeJS v16.5.0 2021-09-15 18:57:51 INFO:  test-node-wasm.js platform: linux x64 agent: NodeJS v16.5.0
2021-09-13 13:23:25 INFO:  test-node-wasm.js tfjs version: 3.9.0 2021-09-15 18:57:51 INFO:  test-node-wasm.js tfjs version: 3.9.0
2021-09-13 13:23:27 STATE: test-node-wasm.js passed: set backend: wasm 2021-09-15 18:57:54 STATE: test-node-wasm.js passed: set backend: wasm
2021-09-13 13:23:27 STATE: test-node-wasm.js tensors 1189 2021-09-15 18:57:54 STATE: test-node-wasm.js tensors 1189
2021-09-13 13:23:27 STATE: test-node-wasm.js passed: load models 2021-09-15 18:57:54 STATE: test-node-wasm.js passed: load models
2021-09-13 13:23:27 STATE: test-node-wasm.js result: defined models: 14 loaded models: 6 2021-09-15 18:57:54 STATE: test-node-wasm.js result: defined models: 14 loaded models: 6
2021-09-13 13:23:27 STATE: test-node-wasm.js passed: warmup: none default 2021-09-15 18:57:54 STATE: test-node-wasm.js passed: warmup: none default
2021-09-13 13:23:27 STATE: test-node-wasm.js event: image 2021-09-15 18:57:55 STATE: test-node-wasm.js event: image
2021-09-13 13:23:28 STATE: test-node-wasm.js event: detect 2021-09-15 18:57:55 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:28 STATE: test-node-wasm.js event: warmup 2021-09-15 18:57:55 STATE: test-node-wasm.js event: warmup
2021-09-13 13:23:28 STATE: test-node-wasm.js passed: warmup: face default 2021-09-15 18:57:55 STATE: test-node-wasm.js passed: warmup: face default
2021-09-13 13:23:28 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":23.6,"gender":"female"} {} {"score":0.47,"keypoints":4} 2021-09-15 18:57:55 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":23.6,"gender":"female"} {} {"score":0.47,"keypoints":4}
2021-09-13 13:23:28 DATA:  test-node-wasm.js result: performance: load: 1483 total: 1112 2021-09-15 18:57:55 DATA:  test-node-wasm.js result: performance: load: 2980 total: 1045
2021-09-13 13:23:31 STATE: test-node-wasm.js event: image 2021-09-15 18:57:59 STATE: test-node-wasm.js event: image
2021-09-13 13:23:32 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:00 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:32 STATE: test-node-wasm.js event: warmup 2021-09-15 18:58:00 STATE: test-node-wasm.js event: warmup
2021-09-13 13:23:32 STATE: test-node-wasm.js passed: warmup: body default 2021-09-15 18:58:00 STATE: test-node-wasm.js passed: warmup: body default
2021-09-13 13:23:32 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:00 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:32 DATA:  test-node-wasm.js result: performance: load: 1483 total: 2773 2021-09-15 18:58:00 DATA:  test-node-wasm.js result: performance: load: 2980 total: 2636
2021-09-13 13:23:32 INFO:  test-node-wasm.js test default 2021-09-15 18:58:00 INFO:  test-node-wasm.js test default
2021-09-13 13:23:34 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:58:01 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:36 STATE: test-node-wasm.js event: image 2021-09-15 18:58:03 STATE: test-node-wasm.js event: image
2021-09-13 13:23:36 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:04 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:36 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:58:04 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:23:36 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:04 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:36 DATA:  test-node-wasm.js result: performance: load: 1483 total: 2276 2021-09-15 18:58:04 DATA:  test-node-wasm.js result: performance: load: 2980 total: 2261
2021-09-13 13:23:36 INFO:  test-node-wasm.js test body variants 2021-09-15 18:58:04 INFO:  test-node-wasm.js test body variants
2021-09-13 13:23:38 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:58:06 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:40 STATE: test-node-wasm.js event: image 2021-09-15 18:58:08 STATE: test-node-wasm.js event: image
2021-09-13 13:23:40 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:08 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:40 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg posenet 2021-09-15 18:58:08 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg posenet
2021-09-13 13:23:40 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.96,"keypoints":16} 2021-09-15 18:58:08 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.96,"keypoints":16}
2021-09-13 13:23:40 DATA:  test-node-wasm.js result: performance: load: 1483 total: 1821 2021-09-15 18:58:08 DATA:  test-node-wasm.js result: performance: load: 2980 total: 1917
2021-09-13 13:23:41 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:58:09 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:43 STATE: test-node-wasm.js event: image 2021-09-15 18:58:11 STATE: test-node-wasm.js event: image
2021-09-13 13:23:43 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:11 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:43 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg movenet 2021-09-15 18:58:11 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg movenet
2021-09-13 13:23:43 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:11 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:43 DATA:  test-node-wasm.js result: performance: load: 1483 total: 1806 2021-09-15 18:58:11 DATA:  test-node-wasm.js result: performance: load: 2980 total: 1921
2021-09-13 13:23:45 STATE: test-node-wasm.js event: image 2021-09-15 18:58:13 STATE: test-node-wasm.js event: image
2021-09-13 13:23:45 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:13 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:45 STATE: test-node-wasm.js passed: detect: random default 2021-09-15 18:58:13 STATE: test-node-wasm.js passed: detect: random default
2021-09-13 13:23:45 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:13 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:45 DATA:  test-node-wasm.js result: performance: load: 1483 total: 1659 2021-09-15 18:58:13 DATA:  test-node-wasm.js result: performance: load: 2980 total: 1755
2021-09-13 13:23:45 INFO:  test-node-wasm.js test: first instance 2021-09-15 18:58:13 INFO:  test-node-wasm.js test: first instance
2021-09-13 13:23:46 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:58:14 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:47 STATE: test-node-wasm.js event: image 2021-09-15 18:58:15 STATE: test-node-wasm.js event: image
2021-09-13 13:23:47 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:16 STATE: test-node-wasm.js event: detect
2021-09-13 13:23:47 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:58:16 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:47 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:16 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:47 DATA:  test-node-wasm.js result: performance: load: 1483 total: 1751 2021-09-15 18:58:16 DATA:  test-node-wasm.js result: performance: load: 2980 total: 1781
2021-09-13 13:23:47 INFO:  test-node-wasm.js test: second instance 2021-09-15 18:58:16 INFO:  test-node-wasm.js test: second instance
2021-09-13 13:23:48 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:58:16 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:50 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:58:18 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:23:50 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:18 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:23:50 DATA:  test-node-wasm.js result: performance: load: 5 total: 2299 2021-09-15 18:58:18 DATA:  test-node-wasm.js result: performance: load: 8 total: 2331
2021-09-13 13:23:50 INFO:  test-node-wasm.js test: concurrent 2021-09-15 18:58:18 INFO:  test-node-wasm.js test: concurrent
2021-09-13 13:23:50 STATE: test-node-wasm.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:58:19 STATE: test-node-wasm.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:50 STATE: test-node-wasm.js passed: load image: samples/ai-face.jpg [1,256,256,3] 2021-09-15 18:58:19 STATE: test-node-wasm.js passed: load image: samples/ai-face.jpg [1,256,256,3]
2021-09-13 13:23:52 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:58:20 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:53 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3] 2021-09-15 18:58:22 STATE: test-node-wasm.js passed: load image: samples/ai-body.jpg [1,1200,1200,3]
2021-09-13 13:23:54 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:58:22 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:55 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3] 2021-09-15 18:58:23 STATE: test-node-wasm.js passed: load image: samples/ai-upper.jpg [1,720,688,3]
2021-09-13 13:23:56 STATE: test-node-wasm.js event: image 2021-09-15 18:58:25 STATE: test-node-wasm.js event: image
2021-09-13 13:24:00 STATE: test-node-wasm.js event: image 2021-09-15 18:58:28 STATE: test-node-wasm.js event: image
2021-09-13 13:24:03 STATE: test-node-wasm.js event: image 2021-09-15 18:58:31 STATE: test-node-wasm.js event: image
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 5 total: 10293 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 8 total: 10469
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 5 total: 10293 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 8 total: 10469
2021-09-13 13:24:05 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:33 STATE: test-node-wasm.js event: detect
2021-09-13 13:24:05 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:33 STATE: test-node-wasm.js event: detect
2021-09-13 13:24:05 STATE: test-node-wasm.js event: detect 2021-09-15 18:58:33 STATE: test-node-wasm.js event: detect
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-face.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-face.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 1483 total: 10296 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 2980 total: 10471
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-body.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 1483 total: 10296 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 2980 total: 10471
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 1483 total: 10296 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 2980 total: 10471
2021-09-13 13:24:05 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default 2021-09-15 18:58:33 STATE: test-node-wasm.js passed: detect: samples/ai-upper.jpg default
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17} 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: face: 1 body: 1 hand: 0 gesture: 3 object: 0 person: 1 {"score":1,"age":28.5,"gender":"female"} {} {"score":0.92,"keypoints":17}
2021-09-13 13:24:05 DATA:  test-node-wasm.js result: performance: load: 5 total: 10297 2021-09-15 18:58:33 DATA:  test-node-wasm.js result: performance: load: 8 total: 10471
2021-09-13 13:24:05 STATE: test-node-wasm.js passeed: no memory leak 2021-09-15 18:58:33 STATE: test-node-wasm.js passeed: no memory leak
2021-09-13 13:24:05 INFO:  test-node-wasm.js events: {"image":10,"detect":10,"warmup":2} 2021-09-15 18:58:33 INFO:  test-node-wasm.js events: {"image":10,"detect":10,"warmup":2}
2021-09-13 13:24:05 INFO:  test-node-wasm.js test complete: 39567 ms 2021-09-15 18:58:33 INFO:  test-node-wasm.js test complete: 42154 ms
2021-09-13 13:24:05 INFO:  2021-09-15 18:58:33 INFO: 
2021-09-13 13:24:05 INFO:  status: {"passed":88,"failed":0} 2021-09-15 18:58:33 INFO:  status: {"passed":88,"failed":0}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -132,7 +132,7 @@
<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> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L55">human.ts:55</a></li> <li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L56">human.ts:56</a></li>
</ul> </ul>
</aside> </aside>
<div class="tsd-comment tsd-typography"> <div class="tsd-comment tsd-typography">
@ -155,7 +155,7 @@
<div class="tsd-signature tsd-kind-icon">Events<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;create&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;load&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;image&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;result&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;warmup&quot;</span></div> <div class="tsd-signature tsd-kind-icon">Events<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">&quot;create&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;load&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;image&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;result&quot;</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">&quot;warmup&quot;</span></div>
<aside class="tsd-sources"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L50">human.ts:50</a></li> <li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L51">human.ts:51</a></li>
</ul> </ul>
</aside> </aside>
<div class="tsd-comment tsd-typography"> <div class="tsd-comment tsd-typography">
@ -189,10 +189,10 @@
<section class="tsd-panel tsd-member tsd-kind-type-alias"> <section class="tsd-panel tsd-member tsd-kind-type-alias">
<a name="Input" class="tsd-anchor"></a> <a name="Input" class="tsd-anchor"></a>
<h3>Input</h3> <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-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><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-symbol">typeof </span><span class="tsd-signature-type">env.env.Canvas</span></div> <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-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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L41">human.ts:41</a></li> <li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L42">human.ts:42</a></li>
</ul> </ul>
</aside> </aside>
<div class="tsd-comment tsd-typography"> <div class="tsd-comment tsd-typography">
@ -207,7 +207,7 @@
<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> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L60">human.ts:60</a></li> <li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/human.ts#L61">human.ts:61</a></li>
</ul> </ul>
</aside> </aside>
<div class="tsd-comment tsd-typography"> <div class="tsd-comment tsd-typography">

View File

@ -132,7 +132,7 @@
<div class="tsd-signature tsd-kind-icon">buffered<wbr>Output<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L46">draw/draw.ts:46</a></li> <li>Defined in draw.ts:46</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -142,7 +142,7 @@
<div class="tsd-signature tsd-kind-icon">color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L30">draw/draw.ts:30</a></li> <li>Defined in draw.ts:30</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -152,7 +152,7 @@
<div class="tsd-signature tsd-kind-icon">draw<wbr>Boxes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L40">draw/draw.ts:40</a></li> <li>Defined in draw.ts:40</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -162,7 +162,7 @@
<div class="tsd-signature tsd-kind-icon">draw<wbr>Gaze<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L42">draw/draw.ts:42</a></li> <li>Defined in draw.ts:42</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -172,7 +172,7 @@
<div class="tsd-signature tsd-kind-icon">draw<wbr>Labels<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L39">draw/draw.ts:39</a></li> <li>Defined in draw.ts:39</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -182,7 +182,7 @@
<div class="tsd-signature tsd-kind-icon">draw<wbr>Points<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L38">draw/draw.ts:38</a></li> <li>Defined in draw.ts:38</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -192,7 +192,7 @@
<div class="tsd-signature tsd-kind-icon">draw<wbr>Polygons<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L41">draw/draw.ts:41</a></li> <li>Defined in draw.ts:41</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -202,7 +202,7 @@
<div class="tsd-signature tsd-kind-icon">fill<wbr>Polygons<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L43">draw/draw.ts:43</a></li> <li>Defined in draw.ts:43</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -212,7 +212,7 @@
<div class="tsd-signature tsd-kind-icon">font<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L33">draw/draw.ts:33</a></li> <li>Defined in draw.ts:33</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -222,7 +222,7 @@
<div class="tsd-signature tsd-kind-icon">label<wbr>Color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L31">draw/draw.ts:31</a></li> <li>Defined in draw.ts:31</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -232,7 +232,7 @@
<div class="tsd-signature tsd-kind-icon">line<wbr>Height<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L34">draw/draw.ts:34</a></li> <li>Defined in draw.ts:34</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -242,7 +242,7 @@
<div class="tsd-signature tsd-kind-icon">line<wbr>Width<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L35">draw/draw.ts:35</a></li> <li>Defined in draw.ts:35</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -252,7 +252,7 @@
<div class="tsd-signature tsd-kind-icon">point<wbr>Size<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L36">draw/draw.ts:36</a></li> <li>Defined in draw.ts:36</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -262,7 +262,7 @@
<div class="tsd-signature tsd-kind-icon">round<wbr>Rect<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L37">draw/draw.ts:37</a></li> <li>Defined in draw.ts:37</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -272,7 +272,7 @@
<div class="tsd-signature tsd-kind-icon">shadow<wbr>Color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L32">draw/draw.ts:32</a></li> <li>Defined in draw.ts:32</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -282,7 +282,7 @@
<div class="tsd-signature tsd-kind-icon">use<wbr>Curves<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L45">draw/draw.ts:45</a></li> <li>Defined in draw.ts:45</li>
</ul> </ul>
</aside> </aside>
</section> </section>
@ -292,7 +292,7 @@
<div class="tsd-signature tsd-kind-icon">use<wbr>Depth<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div> <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"> <aside class="tsd-sources">
<ul> <ul>
<li>Defined in <a href="https://github.com/vladmandic/human/blob/main/src/draw/draw.ts#L44">draw/draw.ts:44</a></li> <li>Defined in draw.ts:44</li>
</ul> </ul>
</aside> </aside>
</section> </section>

View File

@ -1,7 +1,7 @@
/** /**
* Module that implements helper draw functions, exposed as human.draw * Module that implements helper draw functions, exposed as human.draw
*/ */
import type { Result, FaceResult, BodyResult, HandResult, ObjectResult, GestureResult, PersonResult } from '../result'; import type { Result, FaceResult, BodyResult, HandResult, ObjectResult, GestureResult, PersonResult } from './result';
/** /**
* Draw Options * Draw Options
* Accessed via `human.draw.options` or provided per each draw method as the drawOptions optional parameter * Accessed via `human.draw.options` or provided per each draw method as the drawOptions optional parameter
@ -42,12 +42,12 @@ export interface DrawOptions {
bufferedOutput: boolean; bufferedOutput: boolean;
} }
export declare const options: DrawOptions; export declare const options: DrawOptions;
export declare function gesture(inCanvas: HTMLCanvasElement, result: Array<GestureResult>, drawOptions?: DrawOptions): Promise<void>; export declare function gesture(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<GestureResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function face(inCanvas: HTMLCanvasElement, result: Array<FaceResult>, drawOptions?: DrawOptions): Promise<void>; export declare function face(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<FaceResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function body(inCanvas: HTMLCanvasElement, result: Array<BodyResult>, drawOptions?: DrawOptions): Promise<void>; export declare function body(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<BodyResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function hand(inCanvas: HTMLCanvasElement, result: Array<HandResult>, drawOptions?: DrawOptions): Promise<void>; export declare function hand(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<HandResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function object(inCanvas: HTMLCanvasElement, result: Array<ObjectResult>, drawOptions?: DrawOptions): Promise<void>; export declare function object(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<ObjectResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function person(inCanvas: HTMLCanvasElement, result: Array<PersonResult>, drawOptions?: DrawOptions): Promise<void>; export declare function person(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Array<PersonResult>, drawOptions?: Partial<DrawOptions>): Promise<void>;
export declare function canvas(input: HTMLCanvasElement | HTMLImageElement | HTMLMediaElement | HTMLVideoElement, output: HTMLCanvasElement): Promise<void>; export declare function canvas(input: HTMLCanvasElement | OffscreenCanvas | HTMLImageElement | HTMLMediaElement | HTMLVideoElement, output: HTMLCanvasElement): Promise<void>;
export declare function all(inCanvas: HTMLCanvasElement, result: Result, drawOptions?: DrawOptions): Promise<[void, void, void, void, void] | null>; export declare function all(inCanvas: HTMLCanvasElement | OffscreenCanvas, result: Result, drawOptions?: Partial<DrawOptions>): Promise<[void, void, void, void, void] | null>;
//# sourceMappingURL=draw.d.ts.map //# sourceMappingURL=draw.d.ts.map

1
types/src/draw.d.ts.map Normal file
View File

@ -0,0 +1 @@
{"version":3,"file":"draw.d.ts","sourceRoot":"","sources":["../../src/draw.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEtH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,OAAO,EAAE,WAkBrB,CAAC;AA2EF,wBAAsB,OAAO,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBAuB5I;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBAoGtI;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBA4GtI;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBA+DtI;AAED,wBAAsB,MAAM,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBAuB1I;AAED,wBAAsB,MAAM,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,iBAwB1I;AAED,wBAAsB,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,iBAI1J;AAED,wBAAsB,GAAG,CAAC,QAAQ,EAAE,iBAAiB,GAAG,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,kDAc1H"}

View File

@ -1 +0,0 @@
{"version":3,"file":"draw.d.ts","sourceRoot":"","sources":["../../../src/draw/draw.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEvH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,OAAO,EAAE,WAkBrB,CAAC;AA2EF,wBAAsB,OAAO,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBAuBjH;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBAoG3G;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBA4G3G;AAED,wBAAsB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBA+D3G;AAED,wBAAsB,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBAuB/G;AAED,wBAAsB,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,WAAW,CAAC,EAAE,WAAW,iBAwB/G;AAED,wBAAsB,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,iBAIxI;AAED,wBAAsB,GAAG,CAAC,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,kDA4B/F"}

View File

@ -29,7 +29,7 @@ export declare class HandPipeline {
}; };
transformRawCoords(rawCoords: any, box2: any, angle: any, rotationMatrix: any): any; transformRawCoords(rawCoords: any, box2: any, angle: any, rotationMatrix: any): any;
estimateHands(image: any, config: any): Promise<{ estimateHands(image: any, config: any): Promise<{
landmarks?: number[]; landmarks: number[];
confidence: number; confidence: number;
box: { box: {
topLeft: number[]; topLeft: number[];

View File

@ -1 +1 @@
{"version":3,"file":"handpipeline.d.ts","sourceRoot":"","sources":["../../../src/handpose/handpipeline.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,eAAe,CAAC;AASxD,qBAAa,YAAY;IACvB,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC;IACpC,aAAa,EAAE,UAAU,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACrH,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;gBAEV,YAAY,KAAA,EAAE,aAAa,KAAA;IAWvC,6BAA6B,CAAC,SAAS,KAAA;;;;IAQvC,sBAAsB,CAAC,aAAa,KAAA,EAAE,cAAc,KAAA;;;;;IAMpD,sBAAsB,CAAC,SAAS,KAAA;;;;;IAUhC,kBAAkB,CAAC,SAAS,KAAA,EAAE,IAAI,KAAA,EAAE,KAAK,KAAA,EAAE,cAAc,KAAA;IA0BnD,aAAa,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;oBAoBE,MAAM,EAAE;oBAAc,MAAM;aAAO;YAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAAC,WAAW,EAAE,MAAM,EAAE,CAAA;SAAE;;CAsDnH"} {"version":3,"file":"handpipeline.d.ts","sourceRoot":"","sources":["../../../src/handpose/handpipeline.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAU,UAAU,EAAE,MAAM,eAAe,CAAC;AASxD,qBAAa,YAAY;IACvB,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC;IACpC,aAAa,EAAE,UAAU,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACrH,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;gBAEV,YAAY,KAAA,EAAE,aAAa,KAAA;IAUvC,6BAA6B,CAAC,SAAS,KAAA;;;;IAQvC,sBAAsB,CAAC,aAAa,KAAA,EAAE,cAAc,KAAA;;;;;IAMpD,sBAAsB,CAAC,SAAS,KAAA;;;;;IAUhC,kBAAkB,CAAC,SAAS,KAAA,EAAE,IAAI,KAAA,EAAE,KAAK,KAAA,EAAE,cAAc,KAAA;IA0BnD,aAAa,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;mBAoBC,MAAM,EAAE;oBAAc,MAAM;aAAO;YAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAAC,WAAW,EAAE,MAAM,EAAE,CAAA;SAAE;;CAuDlH"}

View File

@ -1 +1 @@
{"version":3,"file":"handpose.d.ts","sourceRoot":"","sources":["../../../src/handpose/handpose.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAexC,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAqDlF;AAED,wBAAsB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC,CAmB1F"} {"version":3,"file":"handpose.d.ts","sourceRoot":"","sources":["../../../src/handpose/handpose.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAexC,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAoDlF;AAED,wBAAsB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,CAAC,CAmB1F"}

25
types/src/human.d.ts vendored
View File

@ -5,17 +5,17 @@ import { Config } from './config';
import type { Result } from './result'; import type { Result } from './result';
import * as tf from '../dist/tfjs.esm.js'; import * as tf from '../dist/tfjs.esm.js';
import * as facemesh from './blazeface/facemesh'; import * as facemesh from './blazeface/facemesh';
import * as draw from './draw/draw';
import * as env from './env'; import * as env from './env';
import type { Tensor, GraphModel } from './tfjs/types'; import type { Tensor, GraphModel } from './tfjs/types';
import type { DrawOptions } from './draw';
export * from './config'; export * from './config';
export * from './result'; export * from './result';
export type { DrawOptions } from './draw/draw'; export type { DrawOptions } from './draw';
export { env } from './env'; export { env } from './env';
/** Defines all possible input types for **Human** detection /** Defines all possible input types for **Human** detection
* @typedef Input Type * @typedef Input Type
*/ */
export declare type Input = Tensor | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas | typeof Image | typeof env.env.Canvas; export declare type Input = Tensor | ImageData | ImageBitmap | HTMLImageElement | HTMLMediaElement | HTMLVideoElement | HTMLCanvasElement | OffscreenCanvas;
/** Events dispatched by `human.events` /** Events dispatched by `human.events`
* - `create`: triggered when Human object is instantiated * - `create`: triggered when Human object is instantiated
* - `load`: triggered when models are loaded (explicitly or on-demand) * - `load`: triggered when models are loaded (explicitly or on-demand)
@ -84,13 +84,15 @@ export declare class Human {
* - all: meta-function that performs: canvas, face, body, hand * - all: meta-function that performs: canvas, face, body, hand
*/ */
draw: { draw: {
options: draw.DrawOptions; canvas: any;
gesture: typeof draw.gesture; face: any;
face: typeof draw.face; body: any;
body: typeof draw.body; hand: any;
hand: typeof draw.hand; gesture: any;
canvas: typeof draw.canvas; object: any;
all: typeof draw.all; person: any;
all: any;
options: DrawOptions;
}; };
/** @internal: Currently loaded models */ /** @internal: Currently loaded models */
models: { models: {
@ -139,9 +141,6 @@ export declare class Human {
* @returns { tensor, canvas } * @returns { tensor, canvas }
*/ */
image: (input: Input) => { image: (input: Input) => {
/** Defines all possible input types for **Human** detection
* @typedef Input Type
*/
tensor: Tensor<import("@tensorflow/tfjs-core").Rank> | null; tensor: Tensor<import("@tensorflow/tfjs-core").Rank> | null;
canvas: OffscreenCanvas | HTMLCanvasElement; canvas: OffscreenCanvas | HTMLCanvasElement;
}; };

View File

@ -1 +1 @@
{"version":3,"file":"human.d.ts","sourceRoot":"","sources":["../../src/human.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAmE,MAAM,UAAU,CAAC;AACxG,OAAO,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG1C,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AAYjD,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAGpC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAI7B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAGvD,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B;;GAEG;AACH,oBAAY,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,GAAG,OAAO,KAAK,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;AAE3L;;;;;;GAMG;AACH,oBAAY,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEvE;;GAEG;AACH,oBAAY,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;GAEG;AACH,oBAAY,UAAU,GAAG,OAAO,EAAE,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,qBAAa,KAAK;;IAChB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,IAAI,CAAA;KAAE,CAAC;IACvF;;OAEG;IACH,EAAE,EAAE,UAAU,CAAC;IACf;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IACb;;;;;;;OAOG;IACH,IAAI,EAAE;QACJ,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1B,OAAO,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QAC3B,GAAG,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC;KACtB,CAAC;IACF,yCAAyC;IACzC,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7D,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;QACjC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACxD,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;QAC1B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;KACjC,CAAC;IACF;;;;;;;;OAQG;IACH,MAAM,EAAE,WAAW,CAAC;IACpB,oGAAoG;IACpG,iBAAiB,EAAE,OAAO,QAAQ,CAAC,aAAa,CAAC;IACjD,0EAA0E;IAC1E,SAAS,EAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;IACjC,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIpC,OAAO,EAAE,OAAO,CAAC;IAGjB;;;OAGG;gBACS,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IA+CxC,cAAc;IACd,OAAO,WAAY,MAAM,EAAE,UAO1B;IAgBD;;;;OAIG;IACH,KAAK,UAAW,KAAK;QArMvB;;WAEG;;;MAmM2D;IAE5D;;;;;;MAME;IAEF,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM;IAIxE;;;;;;;;OAQG;IACG,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK;IAInD;;;OAGG;IAEH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrC;;;;;OAKG;IAEH,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,EAAE,SAAS,SAAI,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE;IAI/L;;;MAGE;IACI,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAiCvC,cAAc;IACd,IAAI,UAAW,MAAM,aAAkD;IAEvE;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,GAAE,MAAoB;IAIjC;;;;;MAKE;IACI,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,KAAK,MAAA;KAAE,CAAC;IAIvE;;;;;;;;;MASE;IACI,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;CAwKlF;AAED;;GAEG;AACH,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,CAAC"} {"version":3,"file":"human.d.ts","sourceRoot":"","sources":["../../src/human.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAiF,MAAM,UAAU,CAAC;AACtH,OAAO,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG1C,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AAejD,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAI7B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG1C,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B;;GAEG;AACH,oBAAY,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,CAAC;AAEpJ;;;;;;GAMG;AACH,oBAAY,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEvE;;GAEG;AACH,oBAAY,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC;;GAEG;AACH,oBAAY,UAAU,GAAG,OAAO,EAAE,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,qBAAa,KAAK;;IAChB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,IAAI,CAAA;KAAE,CAAC;IAEvF;;OAEG;IACH,EAAE,EAAE,UAAU,CAAC;IAEf;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAEb;;;;;;;OAOG;IAEH,IAAI,EAAE;QAAE,MAAM,MAAC;QAAC,IAAI,MAAC;QAAC,IAAI,MAAC;QAAC,IAAI,MAAC;QAAC,OAAO,MAAC;QAAC,MAAM,MAAC;QAAC,MAAM,MAAC;QAAC,GAAG,MAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAE,CAAC;IAEvF,yCAAyC;IACzC,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7D,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,aAAa,EAAE,UAAU,GAAG,IAAI,CAAC;QACjC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACxD,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;QAC1B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,SAAS,EAAE,UAAU,GAAG,IAAI,CAAC;QAC7B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;QAC3B,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;KACjC,CAAC;IAEF;;;;;;;;OAQG;IACH,MAAM,EAAE,WAAW,CAAC;IACpB,oGAAoG;IACpG,iBAAiB,EAAE,OAAO,QAAQ,CAAC,aAAa,CAAC;IACjD,0EAA0E;IAC1E,SAAS,EAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;IACjC,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAIpC,OAAO,EAAE,OAAO,CAAC;IAGjB;;;OAGG;gBACS,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IA0DxC,cAAc;IACd,OAAO,WAAY,MAAM,EAAE,UAO1B;IAgBD;;;;OAIG;IACH,KAAK,UAAW,KAAK;;;MAAuC;IAE5D;;;;;;MAME;IAEF,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM;IAIxE;;;;;;;;OAQG;IACG,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK;IAInD;;;OAGG;IAEH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrC;;;;;OAKG;IAEH,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,EAAE,SAAS,SAAI,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE;IAI/L;;;MAGE;IACI,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAiCvC,cAAc;IACd,IAAI,UAAW,MAAM,aAAkD;IAEvE;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,GAAE,MAAoB;IAIjC;;;;;MAKE;IACI,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,KAAK,MAAA;KAAE,CAAC;IAIvE;;;;;;;;;MASE;IACI,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;CAwKlF;AAED;;GAEG;AACH,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,CAAC"}