pull/97/head
Vladimir Mandic 2021-12-03 11:28:27 -05:00
parent 118fbaba4d
commit bd4d5935fe
17 changed files with 1211 additions and 1271 deletions

View File

@ -11,6 +11,7 @@
### **HEAD -> master** 2021/12/01 mandic00@live.com ### **HEAD -> master** 2021/12/01 mandic00@live.com
- switch to custom tfjs and new typedefs
- rebuild - rebuild
### **1.5.8** 2021/11/30 mandic00@live.com ### **1.5.8** 2021/11/30 mandic00@live.com

View File

@ -21,11 +21,11 @@ var __export = (target, all) => {
for (var name in all) for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true }); __defProp(target, name, { get: all[name], enumerable: true });
}; };
var __reExport = (target, module2, desc) => { var __reExport = (target, module, desc) => {
if (module2 && typeof module2 === "object" || typeof module2 === "function") { if (module && typeof module === "object" || typeof module === "function") {
for (let key of __getOwnPropNames(module2)) for (let key of __getOwnPropNames(module))
if (!__hasOwnProp.call(target, key) && key !== "default") if (!__hasOwnProp.call(target, key) && key !== "default")
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable }); __defProp(target, key, { get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable });
} }
return target; return target;
}; };
@ -805,10 +805,15 @@ function createBrowserEnv() {
}; };
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof process !== "undefined" && process.versions != null && process.versions.node != null;
}
// src/env/createFileSystem.ts // src/env/createFileSystem.ts
function createFileSystem(fs) { function createFileSystem(fs) {
let requireFsError = ""; let requireFsError = "";
if (!fs) { if (!fs && isNodejs()) {
try { try {
fs = __require("fs"); fs = __require("fs");
} catch (err) { } catch (err) {
@ -820,9 +825,7 @@ function createFileSystem(fs) {
}) : () => { }) : () => {
throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`); throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`);
}; };
return { return { readFile };
readFile
};
} }
// src/env/createNodejsEnv.ts // src/env/createNodejsEnv.ts
@ -871,11 +874,6 @@ function isBrowser() {
return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined"; return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined";
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof __require === "function" && typeof module !== "undefined" && typeof process !== "undefined" && !!process.version;
}
// src/env/index.ts // src/env/index.ts
var environment; var environment;
function getEnv() { function getEnv() {
@ -4365,14 +4363,7 @@ function resizeResults(results, dimensions) {
} }
// src/index.ts // src/index.ts
var node = typeof process !== "undefined"; var version11 = version10;
var browser3 = typeof navigator !== "undefined" && typeof navigator.userAgent !== "undefined";
var version11 = { faceapi: version10, node, browser: browser3 };
if (browser3) {
tfjs_esm_exports.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
tfjs_esm_exports.ENV.set("WEBGL_CPU_FORWARD", true);
tfjs_esm_exports.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
}
export { export {
AgeGenderNet, AgeGenderNet,
BoundingBox, BoundingBox,

1639
dist/face-api.esm.js vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

690
dist/face-api.js vendored

File diff suppressed because one or more lines are too long

View File

@ -931,10 +931,15 @@ function createBrowserEnv() {
}; };
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof process !== "undefined" && process.versions != null && process.versions.node != null;
}
// src/env/createFileSystem.ts // src/env/createFileSystem.ts
function createFileSystem(fs) { function createFileSystem(fs) {
let requireFsError = ""; let requireFsError = "";
if (!fs) { if (!fs && isNodejs()) {
try { try {
fs = require("fs"); fs = require("fs");
} catch (err) { } catch (err) {
@ -946,9 +951,7 @@ function createFileSystem(fs) {
}) : () => { }) : () => {
throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`); throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`);
}; };
return { return { readFile };
readFile
};
} }
// src/env/createNodejsEnv.ts // src/env/createNodejsEnv.ts
@ -997,11 +1000,6 @@ function isBrowser() {
return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined"; return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined";
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof require === "function" && typeof module !== "undefined" && typeof process !== "undefined" && !!process.version;
}
// src/env/index.ts // src/env/index.ts
var environment; var environment;
function getEnv() { function getEnv() {
@ -4565,14 +4563,7 @@ function resizeResults(results, dimensions) {
} }
// src/index.ts // src/index.ts
var node = typeof process !== "undefined"; var version2 = version;
var browser3 = typeof navigator !== "undefined" && typeof navigator.userAgent !== "undefined";
var version2 = { faceapi: version, node, browser: browser3 };
if (browser3) {
tf42.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
tf42.ENV.set("WEBGL_CPU_FORWARD", true);
tf42.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
}
// Annotate the CommonJS export names for ESM import in node: // Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = { 0 && (module.exports = {
AgeGenderNet, AgeGenderNet,

25
dist/face-api.node.js vendored
View File

@ -931,10 +931,15 @@ function createBrowserEnv() {
}; };
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof process !== "undefined" && process.versions != null && process.versions.node != null;
}
// src/env/createFileSystem.ts // src/env/createFileSystem.ts
function createFileSystem(fs) { function createFileSystem(fs) {
let requireFsError = ""; let requireFsError = "";
if (!fs) { if (!fs && isNodejs()) {
try { try {
fs = require("fs"); fs = require("fs");
} catch (err) { } catch (err) {
@ -946,9 +951,7 @@ function createFileSystem(fs) {
}) : () => { }) : () => {
throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`); throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`);
}; };
return { return { readFile };
readFile
};
} }
// src/env/createNodejsEnv.ts // src/env/createNodejsEnv.ts
@ -997,11 +1000,6 @@ function isBrowser() {
return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined"; return typeof window === "object" && typeof document !== "undefined" && typeof HTMLImageElement !== "undefined" && typeof HTMLCanvasElement !== "undefined" && typeof HTMLVideoElement !== "undefined" && typeof ImageData !== "undefined" && typeof CanvasRenderingContext2D !== "undefined";
} }
// src/env/isNodejs.ts
function isNodejs() {
return typeof global === "object" && typeof require === "function" && typeof module !== "undefined" && typeof process !== "undefined" && !!process.version;
}
// src/env/index.ts // src/env/index.ts
var environment; var environment;
function getEnv() { function getEnv() {
@ -4565,14 +4563,7 @@ function resizeResults(results, dimensions) {
} }
// src/index.ts // src/index.ts
var node = typeof process !== "undefined"; var version2 = version;
var browser3 = typeof navigator !== "undefined" && typeof navigator.userAgent !== "undefined";
var version2 = { faceapi: version, node, browser: browser3 };
if (browser3) {
tf42.ENV.set("CHECK_COMPUTATION_FOR_ERRORS", false);
tf42.ENV.set("WEBGL_CPU_FORWARD", true);
tf42.ENV.set("WEBGL_USE_SHAPES_UNIFORMS", true);
}
// Annotate the CommonJS export names for ESM import in node: // Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = { 0 && (module.exports = {
AgeGenderNet, AgeGenderNet,

View File

@ -1,26 +1,19 @@
import { FileSystem } from './types'; import { FileSystem } from './types';
import { isNodejs } from './isNodejs';
export function createFileSystem(fs?: any): FileSystem { export function createFileSystem(fs?: any): FileSystem {
let requireFsError = ''; let requireFsError = '';
if (!fs && isNodejs()) {
if (!fs) {
try { try {
// eslint-disable-next-line global-require // eslint-disable-next-line global-require
fs = require('fs'); fs = require('fs');
} catch (err) { } catch (err) {
requireFsError = err.toString(); requireFsError = (err as any).toString();
} }
} }
const readFile = fs const readFile = fs
? (filePath: string) => new Promise<Buffer>((resolve, reject) => { ? (filePath: string) => new Promise((resolve, reject) => { fs.readFile(filePath, (err: any, buffer) => (err ? reject(err) : resolve(buffer))); })
fs.readFile(filePath, (err: any, buffer: Buffer) => (err ? reject(err) : resolve(buffer))); : () => { throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`); };
}) return { readFile };
: () => {
throw new Error(`readFile - failed to require fs in nodejs environment with error: ${requireFsError}`);
};
return {
readFile,
};
} }

6
src/env/isNodejs.ts vendored
View File

@ -1,6 +1,6 @@
export function isNodejs(): boolean { export function isNodejs(): boolean {
return typeof global === 'object' return typeof global === 'object'
&& typeof require === 'function' && typeof process !== 'undefined'
&& typeof module !== 'undefined' && process.versions != null
&& typeof process !== 'undefined' && !!process.version; && process.versions.node != null;
} }

2
src/env/types.ts vendored
View File

@ -1,6 +1,6 @@
export type FileSystem = { export type FileSystem = {
// eslint-disable-next-line no-unused-vars // eslint-disable-next-line no-unused-vars
readFile: (filePath: string) => Promise<Buffer> readFile: (filePath: string) => Promise<any>
} }
export type Environment = FileSystem & { export type Environment = FileSystem & {

View File

@ -22,14 +22,7 @@ export * from './euclideanDistance';
export * from './NeuralNetwork'; export * from './NeuralNetwork';
export * from './resizeResults'; export * from './resizeResults';
const node = (typeof process !== 'undefined'); export const version = pkg.version as string;
const browser = (typeof navigator !== 'undefined') && (typeof navigator.userAgent !== 'undefined');
export const version = { faceapi: pkg.version as string, node, browser };
// set webgl defaults // set webgl defaults
if (browser) { // if (browser) tf.ENV.set('WEBGL_USE_SHAPES_UNIFORMS', true);
tf.ENV.set('CHECK_COMPUTATION_FOR_ERRORS', false);
tf.ENV.set('WEBGL_CPU_FORWARD', true);
// tf.ENV.set('WEBGL_PACK_DEPTHWISECONV', false);
tf.ENV.set('WEBGL_USE_SHAPES_UNIFORMS', true);
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

10
types/face-api.d.ts vendored
View File

@ -1,5 +1,3 @@
/// <reference types="node" />
declare const add: typeof add_; declare const add: typeof add_;
/** /**
@ -1161,7 +1159,7 @@ export declare function fetchOrThrow(url: string, init?: RequestInit): Promise<R
export declare function fetchVideo(uri: string): Promise<HTMLVideoElement>; export declare function fetchVideo(uri: string): Promise<HTMLVideoElement>;
declare type FileSystem_2 = { declare type FileSystem_2 = {
readFile: (filePath: string) => Promise<Buffer>; readFile: (filePath: string) => Promise<any>;
}; };
export { FileSystem_2 as FileSystem } export { FileSystem_2 as FileSystem }
@ -2977,11 +2975,7 @@ declare class Variable<R extends Rank = Rank> extends Tensor<R> {
dispose(): void; dispose(): void;
} }
export declare const version: { export declare const version: string;
faceapi: string;
node: boolean;
browser: boolean;
};
declare const version_2: { declare const version_2: {
'tfjs-core': string; 'tfjs-core': string;

View File

@ -1,6 +1,5 @@
/// <reference types="node" />
export declare type FileSystem = { export declare type FileSystem = {
readFile: (filePath: string) => Promise<Buffer>; readFile: (filePath: string) => Promise<any>;
}; };
export declare type Environment = FileSystem & { export declare type Environment = FileSystem & {
Canvas: typeof HTMLCanvasElement; Canvas: typeof HTMLCanvasElement;

View File

@ -18,8 +18,4 @@ export * from './tinyYolov2/index';
export * from './euclideanDistance'; export * from './euclideanDistance';
export * from './NeuralNetwork'; export * from './NeuralNetwork';
export * from './resizeResults'; export * from './resizeResults';
export declare const version: { export declare const version: string;
faceapi: string;
node: boolean;
browser: boolean;
};