Skip to content

Commit b0d514d

Browse files
Merge pull request justadudewhohacks#41 from justadudewhohacks/disposable
param mappings for remaining nets + make face detection and recognition nets extend NeuralNetwork
2 parents a6a68a5 + 5e0a71f commit b0d514d

File tree

73 files changed

+1951
-1670
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+1951
-1670
lines changed

build/Rect.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,6 @@ export declare class Rect implements IRect {
1111
height: number;
1212
constructor(x: number, y: number, width: number, height: number);
1313
toSquare(): Rect;
14+
pad(padX: number, padY: number): Rect;
1415
floor(): Rect;
1516
}

build/Rect.js

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/Rect.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/commons/NeuralNetwork.d.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import * as tf from '@tensorflow/tfjs-core';
22
import { ParamMapping } from './types';
33
export declare class NeuralNetwork<TNetParams> {
4+
private _name;
45
protected _params: TNetParams | undefined;
56
protected _paramMappings: ParamMapping[];
7+
constructor(_name: string);
68
readonly params: TNetParams | undefined;
79
readonly paramMappings: ParamMapping[];
810
getParamFromPath(paramPath: string): tf.Tensor;
@@ -21,6 +23,16 @@ export declare class NeuralNetwork<TNetParams> {
2123
}[];
2224
variable(): void;
2325
freeze(): void;
24-
dispose(): void;
26+
dispose(throwOnRedispose?: boolean): void;
27+
load(weightsOrUrl: Float32Array | string | undefined): Promise<void>;
28+
extractWeights(weights: Float32Array): void;
2529
private traversePropertyPath(paramPath);
30+
protected loadQuantizedParams(_: any): Promise<{
31+
params: TNetParams;
32+
paramMappings: ParamMapping[];
33+
}>;
34+
protected extractParams(_: any): {
35+
params: TNetParams;
36+
paramMappings: ParamMapping[];
37+
};
2638
}

build/commons/NeuralNetwork.js

Lines changed: 45 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/commons/NeuralNetwork.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import { ParamMapping } from './types';
2+
export declare function disposeUnusedWeightTensors(weightMap: any, paramMappings: ParamMapping[]): void;

build/commons/disposeUnusedWeightTensors.js

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/commons/disposeUnusedWeightTensors.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import { ParamMapping } from './types';
2+
export declare function extractWeightEntryFactory(weightMap: any, paramMappings: ParamMapping[]): <T>(originalPath: string, paramRank: number, mappedPath?: string | undefined) => T;

build/commons/extractWeightEntryFactory.js

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/commons/extractWeightEntryFactory.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import * as tf from '@tensorflow/tfjs-core';
2+
import { NeuralNetwork } from '../commons/NeuralNetwork';
23
import { NetInput } from '../NetInput';
34
import { TNetInput } from '../types';
45
import { FaceDetection } from './FaceDetection';
5-
export declare class FaceDetectionNet {
6-
private _params;
7-
load(weightsOrUrl?: Float32Array | string): Promise<void>;
8-
extractWeights(weights: Float32Array): void;
6+
import { NetParams } from './types';
7+
export declare class FaceDetectionNet extends NeuralNetwork<NetParams> {
8+
constructor();
99
forwardInput(input: NetInput): {
1010
boxes: tf.Tensor<tf.Rank.R2>[];
1111
scores: tf.Tensor<tf.Rank.R1>[];
@@ -15,4 +15,18 @@ export declare class FaceDetectionNet {
1515
scores: tf.Tensor<tf.Rank.R1>[];
1616
}>;
1717
locateFaces(input: TNetInput, minConfidence?: number, maxResults?: number): Promise<FaceDetection[]>;
18+
protected loadQuantizedParams(uri: string | undefined): Promise<{
19+
params: NetParams;
20+
paramMappings: {
21+
originalPath?: string | undefined;
22+
paramPath: string;
23+
}[];
24+
}>;
25+
protected extractParams(weights: Float32Array): {
26+
params: NetParams;
27+
paramMappings: {
28+
originalPath?: string | undefined;
29+
paramPath: string;
30+
}[];
31+
};
1832
}

0 commit comments

Comments
 (0)