mirror of https://github.com/vladmandic/human
refresh dependencies
parent
51dc129da4
commit
1b53b190b1
|
@ -9,8 +9,9 @@
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
### **HEAD -> main** 2022/10/24 mandic00@live.com
|
### **HEAD -> main** 2022/10/28 mandic00@live.com
|
||||||
|
|
||||||
|
- add named exports
|
||||||
- add draw label templates
|
- add draw label templates
|
||||||
- reduce dev dependencies
|
- reduce dev dependencies
|
||||||
- tensor rank strong typechecks
|
- tensor rank strong typechecks
|
||||||
|
|
2
TODO.md
2
TODO.md
|
@ -57,4 +57,4 @@ No support for running in **web workers** as Safari still does not support `Offs
|
||||||
- Add [draw label templates](https://github.com/vladmandic/human/wiki/Draw)
|
- Add [draw label templates](https://github.com/vladmandic/human/wiki/Draw)
|
||||||
- Reduce build dependencies
|
- Reduce build dependencies
|
||||||
`Human` is now 30% smaller :)
|
`Human` is now 30% smaller :)
|
||||||
- Add named export for improved bundler support
|
- Add named export for improved bundler support when using non-default imports
|
||||||
|
|
14
package.json
14
package.json
|
@ -83,15 +83,15 @@
|
||||||
"@tensorflow/tfjs-core": "^4.0.0",
|
"@tensorflow/tfjs-core": "^4.0.0",
|
||||||
"@tensorflow/tfjs-node": "^4.0.0",
|
"@tensorflow/tfjs-node": "^4.0.0",
|
||||||
"@tensorflow/tfjs-node-gpu": "^4.0.0",
|
"@tensorflow/tfjs-node-gpu": "^4.0.0",
|
||||||
"@types/node": "^18.11.7",
|
"@types/node": "^18.11.9",
|
||||||
"@types/offscreencanvas": "^2019.7.0",
|
"@types/offscreencanvas": "^2019.7.0",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.41.0",
|
"@typescript-eslint/eslint-plugin": "^5.42.0",
|
||||||
"@typescript-eslint/parser": "^5.41.0",
|
"@typescript-eslint/parser": "^5.42.0",
|
||||||
"@vladmandic/build": "^0.7.14",
|
"@vladmandic/build": "^0.7.14",
|
||||||
"@vladmandic/pilogger": "^0.4.6",
|
"@vladmandic/pilogger": "^0.4.6",
|
||||||
"@vladmandic/tfjs": "github:vladmandic/tfjs",
|
"@vladmandic/tfjs": "github:vladmandic/tfjs",
|
||||||
"canvas": "^2.10.1",
|
"canvas": "^2.10.2",
|
||||||
"esbuild": "^0.15.12",
|
"esbuild": "^0.15.13",
|
||||||
"eslint": "8.26.0",
|
"eslint": "8.26.0",
|
||||||
"eslint-config-airbnb-base": "^15.0.0",
|
"eslint-config-airbnb-base": "^15.0.0",
|
||||||
"eslint-plugin-html": "^7.1.0",
|
"eslint-plugin-html": "^7.1.0",
|
||||||
|
@ -100,8 +100,8 @@
|
||||||
"eslint-plugin-node": "^11.1.0",
|
"eslint-plugin-node": "^11.1.0",
|
||||||
"eslint-plugin-promise": "^6.1.1",
|
"eslint-plugin-promise": "^6.1.1",
|
||||||
"rimraf": "^3.0.2",
|
"rimraf": "^3.0.2",
|
||||||
"tslib": "^2.4.0",
|
"tslib": "^2.4.1",
|
||||||
"typedoc": "0.23.19",
|
"typedoc": "0.23.20",
|
||||||
"typescript": "4.8.4"
|
"typescript": "4.8.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ import type { AnyCanvas, DrawOptions } from '../exports';
|
||||||
export function body(inCanvas: AnyCanvas, result: BodyResult[], drawOptions?: Partial<DrawOptions>) {
|
export function body(inCanvas: AnyCanvas, result: BodyResult[], drawOptions?: Partial<DrawOptions>) {
|
||||||
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.lineJoin = 'round';
|
ctx.lineJoin = 'round';
|
||||||
for (let i = 0; i < result.length; i++) {
|
for (let i = 0; i < result.length; i++) {
|
||||||
|
|
|
@ -28,7 +28,7 @@ export { gesture } from './gesture';
|
||||||
export function person(inCanvas: AnyCanvas, result: PersonResult[], drawOptions?: Partial<DrawOptions>) {
|
export function person(inCanvas: AnyCanvas, result: PersonResult[], drawOptions?: Partial<DrawOptions>) {
|
||||||
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.lineJoin = 'round';
|
ctx.lineJoin = 'round';
|
||||||
ctx.font = localOptions.font;
|
ctx.font = localOptions.font;
|
||||||
|
@ -55,7 +55,7 @@ export function person(inCanvas: AnyCanvas, result: PersonResult[], drawOptions?
|
||||||
/** draw processed canvas */
|
/** draw processed canvas */
|
||||||
export function canvas(input: AnyCanvas | HTMLImageElement | HTMLVideoElement, output: AnyCanvas) {
|
export function canvas(input: AnyCanvas | HTMLImageElement | HTMLVideoElement, output: AnyCanvas) {
|
||||||
if (!input || !output) return;
|
if (!input || !output) return;
|
||||||
const ctx = getCanvasContext(output);
|
const ctx = getCanvasContext(output) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.drawImage(input, 0, 0);
|
ctx.drawImage(input, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -140,7 +140,7 @@ function drawFaceBoxes(f: FaceResult, ctx) {
|
||||||
export function face(inCanvas: AnyCanvas, result: FaceResult[], drawOptions?: Partial<DrawOptions>) {
|
export function face(inCanvas: AnyCanvas, result: FaceResult[], drawOptions?: Partial<DrawOptions>) {
|
||||||
localOptions = mergeDeep(options, drawOptions);
|
localOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.font = localOptions.font;
|
ctx.font = localOptions.font;
|
||||||
ctx.strokeStyle = localOptions.color;
|
ctx.strokeStyle = localOptions.color;
|
||||||
|
|
|
@ -9,7 +9,7 @@ export function gesture(inCanvas: AnyCanvas, result: GestureResult[], drawOption
|
||||||
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
if (localOptions.drawGestures && (localOptions.gestureLabels?.length > 0)) {
|
if (localOptions.drawGestures && (localOptions.gestureLabels?.length > 0)) {
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.font = localOptions.font;
|
ctx.font = localOptions.font;
|
||||||
ctx.fillStyle = localOptions.color;
|
ctx.fillStyle = localOptions.color;
|
||||||
|
|
|
@ -8,7 +8,7 @@ import type { AnyCanvas, DrawOptions, Point } from '../exports';
|
||||||
export function hand(inCanvas: AnyCanvas, result: HandResult[], drawOptions?: Partial<DrawOptions>) {
|
export function hand(inCanvas: AnyCanvas, result: HandResult[], drawOptions?: Partial<DrawOptions>) {
|
||||||
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.lineJoin = 'round';
|
ctx.lineJoin = 'round';
|
||||||
ctx.font = localOptions.font;
|
ctx.font = localOptions.font;
|
||||||
|
|
|
@ -8,7 +8,7 @@ import type { AnyCanvas, DrawOptions } from '../exports';
|
||||||
export function object(inCanvas: AnyCanvas, result: ObjectResult[], drawOptions?: Partial<DrawOptions>) {
|
export function object(inCanvas: AnyCanvas, result: ObjectResult[], drawOptions?: Partial<DrawOptions>) {
|
||||||
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
const localOptions: DrawOptions = mergeDeep(options, drawOptions);
|
||||||
if (!result || !inCanvas) return;
|
if (!result || !inCanvas) return;
|
||||||
const ctx = getCanvasContext(inCanvas);
|
const ctx = getCanvasContext(inCanvas) as CanvasRenderingContext2D;
|
||||||
if (!ctx) return;
|
if (!ctx) return;
|
||||||
ctx.lineJoin = 'round';
|
ctx.lineJoin = 'round';
|
||||||
ctx.font = localOptions.font;
|
ctx.font = localOptions.font;
|
||||||
|
|
|
@ -62,7 +62,7 @@ export function register(instance: Human): void {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
config.gl = config.canvas.getContext('webgl2', config.webGLattr);
|
config.gl = config.canvas.getContext('webgl2', config.webGLattr) as WebGL2RenderingContext;
|
||||||
if (!config.gl) {
|
if (!config.gl) {
|
||||||
log('humangl error: cannot get webgl context');
|
log('humangl error: cannot get webgl context');
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -118,7 +118,7 @@ export class WebCam { // eslint-disable-line @typescript-eslint/no-extraneous-cl
|
||||||
}
|
}
|
||||||
|
|
||||||
// set constraints to use
|
// set constraints to use
|
||||||
const requestedConstraints: DisplayMediaStreamConstraints = {
|
const requestedConstraints: MediaStreamConstraints = {
|
||||||
audio: false,
|
audio: false,
|
||||||
video: {
|
video: {
|
||||||
facingMode: this.config.mode === 'front' ? 'user' : 'environment',
|
facingMode: this.config.mode === 'front' ? 'user' : 'environment',
|
||||||
|
|
|
@ -60,7 +60,7 @@ async function warmupCanvas(instance: Human): Promise<Result | undefined> {
|
||||||
log('Warmup: Canvas not found');
|
log('Warmup: Canvas not found');
|
||||||
resolve(undefined);
|
resolve(undefined);
|
||||||
} else {
|
} else {
|
||||||
const ctx = canvas.getContext('2d');
|
const ctx = canvas.getContext('2d') as CanvasRenderingContext2D;
|
||||||
if (ctx) ctx.drawImage(img, 0, 0);
|
if (ctx) ctx.drawImage(img, 0, 0);
|
||||||
// const data = ctx?.getImageData(0, 0, canvas.height, canvas.width);
|
// const data = ctx?.getImageData(0, 0, canvas.height, canvas.width);
|
||||||
const tensor = await instance.image(canvas);
|
const tensor = await instance.image(canvas);
|
||||||
|
@ -80,6 +80,7 @@ async function warmupNode(instance: Human): Promise<Result | undefined> {
|
||||||
else img = atob(sample.body);
|
else img = atob(sample.body);
|
||||||
let res: Result;
|
let res: Result;
|
||||||
if (('node' in tf) && (tf.getBackend() === 'tensorflow')) {
|
if (('node' in tf) && (tf.getBackend() === 'tensorflow')) {
|
||||||
|
// @ts-ignore
|
||||||
const data: Tensor = tf['node'].decodeJpeg(img); // eslint-disable-line import/namespace
|
const data: Tensor = tf['node'].decodeJpeg(img); // eslint-disable-line import/namespace
|
||||||
const expanded: Tensor = tf.expandDims(data, 0);
|
const expanded: Tensor = tf.expandDims(data, 0);
|
||||||
instance.tf.dispose(data);
|
instance.tf.dispose(data);
|
||||||
|
|
|
@ -1,40 +1,40 @@
|
||||||
2022-10-28 09:26:00 [32mDATA: [39m Build {"name":"@vladmandic/human","version":"3.0.0"}
|
2022-11-04 13:19:02 [32mDATA: [39m Build {"name":"@vladmandic/human","version":"3.0.0"}
|
||||||
2022-10-28 09:26:00 [36mINFO: [39m Application: {"name":"@vladmandic/human","version":"3.0.0"}
|
2022-11-04 13:19:02 [36mINFO: [39m Application: {"name":"@vladmandic/human","version":"3.0.0"}
|
||||||
2022-10-28 09:26:00 [36mINFO: [39m Environment: {"profile":"production","config":".build.json","package":"package.json","tsconfig":true,"eslintrc":true,"git":true}
|
2022-11-04 13:19:02 [36mINFO: [39m Environment: {"profile":"production","config":".build.json","package":"package.json","tsconfig":true,"eslintrc":true,"git":true}
|
||||||
2022-10-28 09:26:00 [36mINFO: [39m Toolchain: {"build":"0.7.14","esbuild":"0.15.12","typescript":"4.8.4","typedoc":"0.23.19","eslint":"8.26.0"}
|
2022-11-04 13:19:02 [36mINFO: [39m Toolchain: {"build":"0.7.14","esbuild":"0.15.13","typescript":"4.8.4","typedoc":"0.23.20","eslint":"8.26.0"}
|
||||||
2022-10-28 09:26:00 [36mINFO: [39m Build: {"profile":"production","steps":["clean","compile","typings","typedoc","lint","changelog"]}
|
2022-11-04 13:19:02 [36mINFO: [39m Build: {"profile":"production","steps":["clean","compile","typings","typedoc","lint","changelog"]}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Clean: {"locations":["dist/*","types/*","typedoc/*"]}
|
2022-11-04 13:19:02 [35mSTATE:[39m Clean: {"locations":["dist/*","types/*","typedoc/*"]}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1289,"outputBytes":361}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/browser/version","format":"esm","platform":"browser","input":"tfjs/tf-version.ts","output":"dist/tfjs.version.js","files":1,"inputBytes":1289,"outputBytes":361}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":569,"outputBytes":924}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/cpu","format":"cjs","platform":"node","input":"tfjs/tf-node.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":569,"outputBytes":924}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":79,"inputBytes":672529,"outputBytes":316303}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/nodejs/cpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node.js","files":79,"inputBytes":672790,"outputBytes":316303}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":577,"outputBytes":928}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/gpu","format":"cjs","platform":"node","input":"tfjs/tf-node-gpu.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":577,"outputBytes":928}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":79,"inputBytes":672533,"outputBytes":316307}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/nodejs/gpu","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-gpu.js","files":79,"inputBytes":672794,"outputBytes":316307}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":665,"outputBytes":1876}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/nodejs/wasm","format":"cjs","platform":"node","input":"tfjs/tf-node-wasm.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":665,"outputBytes":1876}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":79,"inputBytes":673481,"outputBytes":316418}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/nodejs/wasm","format":"cjs","platform":"node","input":"src/human.ts","output":"dist/human.node-wasm.js","files":79,"inputBytes":673742,"outputBytes":316418}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":1375,"outputBytes":670}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/browser/esm/nobundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":2,"inputBytes":1375,"outputBytes":670}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":79,"inputBytes":672275,"outputBytes":314908}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/browser/esm/nobundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm-nobundle.js","files":79,"inputBytes":672536,"outputBytes":314908}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":10,"inputBytes":1375,"outputBytes":1144900}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"tfjs/browser/esm/bundle","format":"esm","platform":"browser","input":"tfjs/tf-browser.ts","output":"dist/tfjs.esm.js","files":10,"inputBytes":1375,"outputBytes":1144900}
|
||||||
2022-10-28 09:26:00 [35mSTATE:[39m Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":79,"inputBytes":1816505,"outputBytes":1456466}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/browser/iife/bundle","format":"iife","platform":"browser","input":"src/human.ts","output":"dist/human.js","files":79,"inputBytes":1816766,"outputBytes":1456466}
|
||||||
2022-10-28 09:26:01 [35mSTATE:[39m Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":79,"inputBytes":1816505,"outputBytes":1913830}
|
2022-11-04 13:19:02 [35mSTATE:[39m Compile: {"name":"human/browser/esm/bundle","format":"esm","platform":"browser","input":"src/human.ts","output":"dist/human.esm.js","files":79,"inputBytes":1816766,"outputBytes":1913830}
|
||||||
2022-10-28 09:26:04 [35mSTATE:[39m Typings: {"input":"src/human.ts","output":"types/lib","files":15}
|
2022-11-04 13:19:06 [35mSTATE:[39m Typings: {"input":"src/human.ts","output":"types/lib","files":15}
|
||||||
2022-10-28 09:26:06 [35mSTATE:[39m TypeDoc: {"input":"src/human.ts","output":"typedoc","objects":76,"generated":true}
|
2022-11-04 13:19:08 [35mSTATE:[39m TypeDoc: {"input":"src/human.ts","output":"typedoc","objects":76,"generated":true}
|
||||||
2022-10-28 09:26:06 [35mSTATE:[39m Compile: {"name":"demo/typescript","format":"esm","platform":"browser","input":"demo/typescript/index.ts","output":"demo/typescript/index.js","files":1,"inputBytes":5936,"outputBytes":2867}
|
2022-11-04 13:19:08 [35mSTATE:[39m Compile: {"name":"demo/typescript","format":"esm","platform":"browser","input":"demo/typescript/index.ts","output":"demo/typescript/index.js","files":1,"inputBytes":5936,"outputBytes":2867}
|
||||||
2022-10-28 09:26:06 [35mSTATE:[39m Compile: {"name":"demo/faceid","format":"esm","platform":"browser","input":"demo/faceid/index.ts","output":"demo/faceid/index.js","files":2,"inputBytes":17134,"outputBytes":9181}
|
2022-11-04 13:19:08 [35mSTATE:[39m Compile: {"name":"demo/faceid","format":"esm","platform":"browser","input":"demo/faceid/index.ts","output":"demo/faceid/index.js","files":2,"inputBytes":17134,"outputBytes":9181}
|
||||||
2022-10-28 09:26:14 [35mSTATE:[39m Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":116,"errors":0,"warnings":0}
|
2022-11-04 13:19:16 [35mSTATE:[39m Lint: {"locations":["*.json","src/**/*.ts","test/**/*.js","demo/**/*.js"],"files":116,"errors":0,"warnings":0}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"}
|
2022-11-04 13:19:16 [35mSTATE:[39m ChangeLog: {"repository":"https://github.com/vladmandic/human","branch":"main","output":"CHANGELOG.md"}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Copy: {"input":"src/tfjs","output":"dist/tfjs.esm.d.ts"}
|
2022-11-04 13:19:16 [35mSTATE:[39m Copy: {"input":"src/tfjs","output":"dist/tfjs.esm.d.ts"}
|
||||||
2022-10-28 09:26:15 [36mINFO: [39m Done...
|
2022-11-04 13:19:16 [36mINFO: [39m Done...
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m API-Extractor: {"succeeeded":true,"errors":0,"warnings":195}
|
2022-11-04 13:19:17 [35mSTATE:[39m API-Extractor: {"succeeeded":true,"errors":0,"warnings":195}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Filter: {"input":"types/human.d.ts"}
|
2022-11-04 13:19:17 [35mSTATE:[39m Filter: {"input":"types/human.d.ts"}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Link: {"input":"types/human.d.ts"}
|
2022-11-04 13:19:17 [35mSTATE:[39m Link: {"input":"types/human.d.ts"}
|
||||||
2022-10-28 09:26:15 [36mINFO: [39m Analyze models: {"folders":8,"result":"models/models.json"}
|
2022-11-04 13:19:17 [36mINFO: [39m Analyze models: {"folders":8,"result":"models/models.json"}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"./models","models":12}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"./models","models":12}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../human-models/models","models":43}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../human-models/models","models":43}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../blazepose/model/","models":4}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../blazepose/model/","models":4}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../anti-spoofing/model","models":1}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../anti-spoofing/model","models":1}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../efficientpose/models","models":3}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../efficientpose/models","models":3}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../insightface/models","models":5}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../insightface/models","models":5}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../movenet/models","models":3}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../movenet/models","models":3}
|
||||||
2022-10-28 09:26:15 [35mSTATE:[39m Models {"folder":"../nanodet/models","models":4}
|
2022-11-04 13:19:17 [35mSTATE:[39m Models {"folder":"../nanodet/models","models":4}
|
||||||
2022-10-28 09:26:16 [35mSTATE:[39m Models: {"count":58,"totalSize":386543911}
|
2022-11-04 13:19:18 [35mSTATE:[39m Models: {"count":58,"totalSize":386543911}
|
||||||
2022-10-28 09:26:16 [36mINFO: [39m Human Build complete... {"logFile":"test/build.log"}
|
2022-11-04 13:19:18 [36mINFO: [39m Human Build complete... {"logFile":"test/build.log"}
|
||||||
|
|
Loading…
Reference in New Issue