forked from justadudewhohacks/face-api.js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathenv.node.ts
31 lines (23 loc) · 878 Bytes
/
env.node.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import * as fs from 'fs';
import * as path from 'path';
import { env, NeuralNetwork } from '../src';
import { TestEnv } from './Environment';
require('@tensorflow/tfjs-node')
const canvas = require('canvas')
const { Canvas, Image, ImageData } = canvas
env.monkeyPatch({ Canvas, Image, ImageData })
async function loadImageNode(uri: string): Promise<HTMLImageElement> {
return canvas.loadImage(path.resolve(__dirname, '../', uri))
}
async function loadJsonNode<T>(uri: string): Promise<T> {
return JSON.parse(fs.readFileSync(path.resolve(__dirname, '../', uri)).toString())
}
export async function initNetNode<TNet extends NeuralNetwork<any>>(net: TNet) {
await net.loadFromDisk(path.resolve(__dirname, '../weights'))
}
const nodeTestEnv: TestEnv = {
loadImage: loadImageNode,
loadJson: loadJsonNode,
initNet: initNetNode
}
global['nodeTestEnv'] = nodeTestEnv