face-api/src/faceProcessor/extractParams.ts

25 lines
759 B
TypeScript
Raw Permalink Normal View History

2020-12-19 17:46:41 +01:00
import { extractFCParamsFactory, extractWeightsFactory, ParamMapping } from '../common/index';
2020-08-18 13:54:53 +02:00
import { NetParams } from './types';
export function extractParams(weights: Float32Array, channelsIn: number, channelsOut: number): { params: NetParams, paramMappings: ParamMapping[] } {
2020-12-23 17:26:55 +01:00
const paramMappings: ParamMapping[] = [];
2020-08-18 13:54:53 +02:00
const {
extractWeights,
2020-12-23 17:26:55 +01:00
getRemainingWeights,
} = extractWeightsFactory(weights);
2020-08-18 13:54:53 +02:00
2020-12-23 17:26:55 +01:00
const extractFCParams = extractFCParamsFactory(extractWeights, paramMappings);
2020-08-18 13:54:53 +02:00
2020-12-23 17:26:55 +01:00
const fc = extractFCParams(channelsIn, channelsOut, 'fc');
2020-08-18 13:54:53 +02:00
if (getRemainingWeights().length !== 0) {
2020-12-23 17:26:55 +01:00
throw new Error(`weights remaing after extract: ${getRemainingWeights().length}`);
2020-08-18 13:54:53 +02:00
}
return {
paramMappings,
2020-12-23 17:26:55 +01:00
params: { fc },
};
}