edge-impulse-linux 1.17.1 → 1.17.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli/linux/runner-downloader.js +7 -2
- package/build/cli/linux/runner-downloader.js.map +1 -1
- package/build/cli/linux/runner-utils.d.ts +9 -2
- package/build/cli/linux/runner-utils.js +143 -52
- package/build/cli/linux/runner-utils.js.map +1 -1
- package/build/cli/linux/runner.js +77 -7
- package/build/cli/linux/runner.js.map +1 -1
- package/build/cli/linux/webserver/public/webserver.js +249 -25
- package/build/cli/linux/webserver/public/webserver.js.map +1 -1
- package/build/cli/linux/webserver/views/index.d.ts +2 -0
- package/build/cli/linux/webserver/views/index.js +33 -7
- package/build/cli/linux/webserver/views/index.js.map +1 -1
- package/build/library/classifier/image-classifier.d.ts +4 -1
- package/build/library/classifier/image-classifier.js +4 -4
- package/build/library/classifier/image-classifier.js.map +1 -1
- package/build/library/classifier/linux-impulse-runner-types.d.ts +1 -0
- package/build/sdk/studio/sdk/api/classifyApi.d.ts +0 -32
- package/build/sdk/studio/sdk/api/classifyApi.js +0 -64
- package/build/sdk/studio/sdk/api/classifyApi.js.map +1 -1
- package/build/sdk/studio/sdk/api/rawDataApi.d.ts +55 -1
- package/build/sdk/studio/sdk/api/rawDataApi.js +166 -1
- package/build/sdk/studio/sdk/api/rawDataApi.js.map +1 -1
- package/build/sdk/studio/sdk/model/batchEditBoundingBoxesRequest.d.ts +32 -0
- package/build/sdk/studio/sdk/model/batchEditBoundingBoxesRequest.js +34 -0
- package/build/sdk/studio/sdk/model/batchEditBoundingBoxesRequest.js.map +1 -0
- package/build/sdk/studio/sdk/model/classifyJobResponsePage.d.ts +4 -0
- package/build/sdk/studio/sdk/model/classifyJobResponsePage.js +5 -0
- package/build/sdk/studio/sdk/model/classifyJobResponsePage.js.map +1 -1
- package/build/sdk/studio/sdk/model/classifyJobResponsePageAllOf.d.ts +4 -0
- package/build/sdk/studio/sdk/model/classifyJobResponsePageAllOf.js +5 -0
- package/build/sdk/studio/sdk/model/classifyJobResponsePageAllOf.js.map +1 -1
- package/build/sdk/studio/sdk/model/modelPrediction.d.ts +5 -0
- package/build/sdk/studio/sdk/model/modelPrediction.js +5 -0
- package/build/sdk/studio/sdk/model/modelPrediction.js.map +1 -1
- package/build/sdk/studio/sdk/model/models.d.ts +1 -0
- package/build/sdk/studio/sdk/model/models.js +3 -0
- package/build/sdk/studio/sdk/model/models.js.map +1 -1
- package/build/sdk/studio/sdk/model/permission.d.ts +1 -1
- package/build/sdk/studio/sdk/model/permission.js +1 -1
- package/build/sdk/studio/sdk/model/permission.js.map +1 -1
- package/cli/linux/webserver/public/assets/mobileclient.css +36 -3
- package/cli/linux/webserver/public/webserver.js +280 -25
- package/package.json +1 -1
|
@@ -18,11 +18,16 @@ class RunnerDownloader extends tsee_1.EventEmitter {
|
|
|
18
18
|
}
|
|
19
19
|
let downloadType;
|
|
20
20
|
if (process.platform === 'darwin') {
|
|
21
|
-
if (process.arch
|
|
21
|
+
if (process.arch === 'x64') {
|
|
22
|
+
downloadType = 'runner-mac-x86_64';
|
|
23
|
+
}
|
|
24
|
+
else if (process.arch === 'arm64') {
|
|
25
|
+
downloadType = 'runner-mac-arm64';
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
22
28
|
throw new Error('Unsupported architecture "' + process.arch + '", only ' +
|
|
23
29
|
'x64 or arm64 supported for now');
|
|
24
30
|
}
|
|
25
|
-
downloadType = 'runner-mac-x86_64';
|
|
26
31
|
}
|
|
27
32
|
else if (process.platform === 'linux') {
|
|
28
33
|
if (process.arch === 'arm') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-downloader.js","sourceRoot":"","sources":["../../../cli/linux/runner-downloader.ts"],"names":[],"mappings":";;;;;;AACA,+BAAoC;AACpC,qEAAiE;AACjE,4CAAoB;AAEpB,gDAAwB;AACxB,4CAAoB;AAEpB,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAC5C,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAE7C,MAAa,gBAAiB,SAAQ,mBAEpC;IACE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,WAA+B;QAC1D,IAAI,WAAW,EAAE;YACb,OAAO,WAAW,CAAC;SACtB;QAED,IAAI,YAAoB,CAAC;QACzB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAC/B,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"runner-downloader.js","sourceRoot":"","sources":["../../../cli/linux/runner-downloader.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { EdgeImpulseApi } from '../../sdk/studio/api';
|
|
|
2
2
|
import { type LinuxImpulseRunner, type ModelInformation } from '../../library/classifier/linux-impulse-runner';
|
|
3
3
|
import { ImageClassifier } from '../../library/classifier/image-classifier';
|
|
4
4
|
import type { ICamera } from '../../library/sensors/icamera';
|
|
5
|
+
import { AudioClassifier } from '../../library';
|
|
5
6
|
export declare function listTargets(projectId: number, api: EdgeImpulseApi): Promise<void>;
|
|
6
7
|
export declare function audioClassifierHelloMsg(model: ModelInformation): void;
|
|
7
8
|
export declare function imageClassifierHelloMsg(model: ModelInformation): void;
|
|
@@ -13,10 +14,16 @@ export declare function startApiServer(opts: {
|
|
|
13
14
|
port: number;
|
|
14
15
|
printIncomingInferenceReqs: boolean;
|
|
15
16
|
}): Promise<void>;
|
|
16
|
-
export declare function startWebServer(opts: {
|
|
17
|
-
|
|
17
|
+
export declare function startWebServer(opts: ({
|
|
18
|
+
type: 'camera';
|
|
18
19
|
camera: ICamera;
|
|
19
20
|
imgClassifier: ImageClassifier;
|
|
21
|
+
streamResolution: 'original' | 'scaled-using-impulse';
|
|
22
|
+
} | {
|
|
23
|
+
type: 'audio';
|
|
24
|
+
audioClassifier: AudioClassifier;
|
|
25
|
+
}) & {
|
|
26
|
+
model: ModelInformation;
|
|
20
27
|
verbose: boolean;
|
|
21
28
|
host: string;
|
|
22
29
|
port: number;
|
|
@@ -247,12 +247,14 @@ function startApiServer(opts) {
|
|
|
247
247
|
}
|
|
248
248
|
exports.startApiServer = startApiServer;
|
|
249
249
|
function startWebServer(opts) {
|
|
250
|
-
const { model,
|
|
250
|
+
const { model, verbose } = opts;
|
|
251
251
|
const publicFolder = node_path_1.default.join(__dirname, '..', '..', '..', 'cli', 'linux', 'webserver', 'public');
|
|
252
252
|
const app = (0, express_1.default)();
|
|
253
253
|
app.get('/', (0, asyncMiddleware_1.asyncMiddleware)(async (req, res) => {
|
|
254
254
|
const view = (0, views_1.renderIndexView)({
|
|
255
255
|
isEmbedView: false,
|
|
256
|
+
hasPerformanceCalibration: model.modelParameters.has_performance_calibration || false,
|
|
257
|
+
sensorType: opts.type,
|
|
256
258
|
});
|
|
257
259
|
res.status(200);
|
|
258
260
|
res.header('Content-Type', 'text/html');
|
|
@@ -261,6 +263,8 @@ function startWebServer(opts) {
|
|
|
261
263
|
app.get('/embed', (0, asyncMiddleware_1.asyncMiddleware)(async (req, res) => {
|
|
262
264
|
const view = (0, views_1.renderIndexView)({
|
|
263
265
|
isEmbedView: true,
|
|
266
|
+
hasPerformanceCalibration: model.modelParameters.has_performance_calibration || false,
|
|
267
|
+
sensorType: opts.type,
|
|
264
268
|
});
|
|
265
269
|
res.status(200);
|
|
266
270
|
res.header('Content-Type', 'text/html');
|
|
@@ -279,65 +283,118 @@ function startWebServer(opts) {
|
|
|
279
283
|
// here we get a direct feed from the camera so we guarantee the fps that we set earlier.
|
|
280
284
|
let nextFrame = Date.now();
|
|
281
285
|
let processingFrame = false;
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
286
|
+
let cameraResolution;
|
|
287
|
+
if (opts.type === 'camera') {
|
|
288
|
+
const { camera, imgClassifier, streamResolution } = opts;
|
|
289
|
+
camera.on('snapshot', async (data, filename) => {
|
|
290
|
+
if (nextFrame > Date.now() || processingFrame)
|
|
291
|
+
return;
|
|
292
|
+
processingFrame = true;
|
|
293
|
+
try {
|
|
294
|
+
if (!cameraResolution) {
|
|
295
|
+
let img = (0, sharp_1.default)(data);
|
|
296
|
+
const metadata = await img.metadata();
|
|
297
|
+
cameraResolution = {
|
|
298
|
+
width: metadata.width || 0,
|
|
299
|
+
height: metadata.height || 0,
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
let imgBase64;
|
|
303
|
+
if (streamResolution === 'scaled-using-impulse') {
|
|
304
|
+
const fitMethod = image_classifier_1.FitMethodMap[model.modelParameters.image_resize_mode || 'none'];
|
|
305
|
+
let img;
|
|
306
|
+
if (model.modelParameters.image_channel_count === 3) {
|
|
307
|
+
img = (0, sharp_1.default)(data).resize({
|
|
308
|
+
height: model.modelParameters.image_input_height,
|
|
309
|
+
width: model.modelParameters.image_input_width,
|
|
310
|
+
fit: fitMethod,
|
|
311
|
+
fastShrinkOnLoad: false
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
else {
|
|
315
|
+
img = (0, sharp_1.default)(data).resize({
|
|
316
|
+
height: model.modelParameters.image_input_height,
|
|
317
|
+
width: model.modelParameters.image_input_width,
|
|
318
|
+
fit: fitMethod,
|
|
319
|
+
fastShrinkOnLoad: false
|
|
320
|
+
}).toColourspace('b-w');
|
|
321
|
+
}
|
|
322
|
+
imgBase64 = 'data:image/jpeg;base64,' + (await img.jpeg().toBuffer()).toString('base64');
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
imgBase64 = 'data:image/jpeg;base64,' + data.toString('base64');
|
|
326
|
+
}
|
|
327
|
+
io.emit('image', {
|
|
328
|
+
img: imgBase64,
|
|
293
329
|
});
|
|
330
|
+
for (const wsClient of websocketsToSendPreviews) {
|
|
331
|
+
wsClient.send(JSON.stringify({
|
|
332
|
+
type: 'camera-preview',
|
|
333
|
+
image: imgBase64,
|
|
334
|
+
}));
|
|
335
|
+
}
|
|
294
336
|
}
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
}
|
|
337
|
+
catch (ex2) {
|
|
338
|
+
// put this behind a verbose flag, as the ImageClassifier also prints out this error already
|
|
339
|
+
const ex = ex2;
|
|
340
|
+
if (verbose) {
|
|
341
|
+
console.log(RUNNER_PREFIX, `Failed to handle snapshot "${filename}":`, ex.message || ex.toString());
|
|
342
|
+
}
|
|
301
343
|
}
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
344
|
+
finally {
|
|
345
|
+
processingFrame = false;
|
|
346
|
+
}
|
|
347
|
+
});
|
|
348
|
+
imgClassifier.on('result', (result, timeMs, imgAsJpg) => {
|
|
349
|
+
let resultsMapped = structuredClone(result.result);
|
|
350
|
+
// result is scaled to the impulse; rescale to original cam resolution if required
|
|
351
|
+
if (opts.streamResolution === 'original' && cameraResolution) {
|
|
352
|
+
if (resultsMapped.bounding_boxes) {
|
|
353
|
+
resultsMapped.bounding_boxes = scaleAndMapBbs(resultsMapped.bounding_boxes, model, cameraResolution);
|
|
354
|
+
}
|
|
355
|
+
if (resultsMapped.object_tracking) {
|
|
356
|
+
resultsMapped.object_tracking = scaleAndMapBbs(resultsMapped.object_tracking, model, cameraResolution, (bb) => ({ object_id: bb.object_id }));
|
|
357
|
+
}
|
|
358
|
+
if (resultsMapped.visual_anomaly_grid) {
|
|
359
|
+
resultsMapped.visual_anomaly_grid = scaleAndMapBbs(resultsMapped.visual_anomaly_grid, model, cameraResolution);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
io.emit('classification', {
|
|
363
|
+
modelType: model.modelParameters.model_type,
|
|
364
|
+
result: resultsMapped,
|
|
365
|
+
timeMs: timeMs,
|
|
366
|
+
additionalInfo: result.info,
|
|
305
367
|
});
|
|
306
|
-
for (const
|
|
307
|
-
|
|
308
|
-
type: '
|
|
309
|
-
|
|
368
|
+
for (const client of wss.clients) {
|
|
369
|
+
client.send(JSON.stringify({
|
|
370
|
+
type: 'classification',
|
|
371
|
+
result: result.result,
|
|
372
|
+
timeMs: timeMs,
|
|
373
|
+
additionalInfo: result.info,
|
|
310
374
|
}));
|
|
311
375
|
}
|
|
312
|
-
nextFrame = Date.now() + 50;
|
|
313
|
-
}
|
|
314
|
-
catch (ex2) {
|
|
315
|
-
// put this behind a verbose flag, as the ImageClassifier also prints out this error already
|
|
316
|
-
const ex = ex2;
|
|
317
|
-
if (verbose) {
|
|
318
|
-
console.log(RUNNER_PREFIX, `Failed to handle snapshot "${filename}":`, ex.message || ex.toString());
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
finally {
|
|
322
|
-
processingFrame = false;
|
|
323
|
-
}
|
|
324
|
-
});
|
|
325
|
-
imgClassifier.on('result', (result, timeMs, imgAsJpg) => {
|
|
326
|
-
io.emit('classification', {
|
|
327
|
-
modelType: model.modelParameters.model_type,
|
|
328
|
-
result: result.result,
|
|
329
|
-
timeMs: timeMs,
|
|
330
|
-
additionalInfo: result.info,
|
|
331
376
|
});
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
377
|
+
}
|
|
378
|
+
else if (opts.type === 'audio') {
|
|
379
|
+
const { audioClassifier } = opts;
|
|
380
|
+
audioClassifier.on('result', (result, timeMs) => {
|
|
381
|
+
let resultsMapped = structuredClone(result.result);
|
|
382
|
+
io.emit('classification', {
|
|
383
|
+
modelType: model.modelParameters.model_type,
|
|
384
|
+
result: resultsMapped,
|
|
336
385
|
timeMs: timeMs,
|
|
337
386
|
additionalInfo: result.info,
|
|
338
|
-
})
|
|
339
|
-
|
|
340
|
-
|
|
387
|
+
});
|
|
388
|
+
for (const client of wss.clients) {
|
|
389
|
+
client.send(JSON.stringify({
|
|
390
|
+
type: 'classification',
|
|
391
|
+
result: result.result,
|
|
392
|
+
timeMs: timeMs,
|
|
393
|
+
additionalInfo: result.info,
|
|
394
|
+
}));
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
}
|
|
341
398
|
const onThresholdOverride = async (ev) => {
|
|
342
399
|
try {
|
|
343
400
|
process.stdout.write(`Updating threshold for block ID ${ev.id}, key ${ev.key} to: ${ev.value}... `);
|
|
@@ -363,7 +420,12 @@ function startWebServer(opts) {
|
|
|
363
420
|
};
|
|
364
421
|
obj.type = thresholdObj.type;
|
|
365
422
|
obj[ev.key] = ev.value;
|
|
366
|
-
|
|
423
|
+
if (opts.type === 'camera') {
|
|
424
|
+
await opts.imgClassifier.getRunner().setLearnBlockThreshold(obj);
|
|
425
|
+
}
|
|
426
|
+
else if (opts.type === 'audio') {
|
|
427
|
+
await opts.audioClassifier.getRunner().setLearnBlockThreshold(obj);
|
|
428
|
+
}
|
|
367
429
|
thresholdObj[ev.key] = ev.value;
|
|
368
430
|
console.log(`OK`);
|
|
369
431
|
}
|
|
@@ -377,6 +439,7 @@ function startWebServer(opts) {
|
|
|
377
439
|
socket.emit('hello', {
|
|
378
440
|
projectName: model.project.owner + ' / ' + model.project.name,
|
|
379
441
|
thresholds: model.modelParameters.thresholds,
|
|
442
|
+
sensorType: opts.type,
|
|
380
443
|
});
|
|
381
444
|
socket.on('threshold-override', (ev) => {
|
|
382
445
|
try {
|
|
@@ -466,4 +529,32 @@ function startWebServer(opts) {
|
|
|
466
529
|
});
|
|
467
530
|
}
|
|
468
531
|
exports.startWebServer = startWebServer;
|
|
532
|
+
function scaleAndMapBbs(bbs, model, cameraResolution, extraFields) {
|
|
533
|
+
const mapped = [];
|
|
534
|
+
for (const originalBb of bbs || []) {
|
|
535
|
+
const bb = structuredClone(originalBb);
|
|
536
|
+
// Scale back to 0..1
|
|
537
|
+
bb.width /= model.modelParameters.image_input_width;
|
|
538
|
+
bb.x /= model.modelParameters.image_input_width;
|
|
539
|
+
bb.height /= model.modelParameters.image_input_height;
|
|
540
|
+
bb.y /= model.modelParameters.image_input_height;
|
|
541
|
+
let newBb = {
|
|
542
|
+
label: bb.label,
|
|
543
|
+
value: bb.value,
|
|
544
|
+
...(extraFields ? extraFields(bb) : {}),
|
|
545
|
+
...(0, bounding_box_scaling_1.mapPredictionToOriginalImage)(image_classifier_1.FitMethodStudioMap[model.modelParameters.image_resize_mode || 'squash'], bb, {
|
|
546
|
+
clientWidth: cameraResolution.width,
|
|
547
|
+
clientHeight: cameraResolution.height,
|
|
548
|
+
naturalHeight: cameraResolution.height,
|
|
549
|
+
naturalWidth: cameraResolution.width,
|
|
550
|
+
}),
|
|
551
|
+
};
|
|
552
|
+
newBb.x = Math.round(newBb.x);
|
|
553
|
+
newBb.y = Math.round(newBb.y);
|
|
554
|
+
newBb.width = Math.round(newBb.width);
|
|
555
|
+
newBb.height = Math.round(newBb.height);
|
|
556
|
+
mapped.push(newBb);
|
|
557
|
+
}
|
|
558
|
+
return mapped;
|
|
559
|
+
}
|
|
469
560
|
//# sourceMappingURL=runner-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-utils.js","sourceRoot":"","sources":["../../../cli/linux/runner-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner-utils.js","sourceRoot":"","sources":["../../../cli/linux/runner-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,7 @@ commander_1.default
|
|
|
74
74
|
'Alternatively you can use the PORT environmental variable. If both are set then `--preview-port` takes precedence.')
|
|
75
75
|
.option('--preview-host <host>', 'Host to listen on for the preview HTTP interface (default: 0.0.0.0) (ignored when running with --run-http-server). ' +
|
|
76
76
|
'Alternatively you can use the HOST environmental variable. If both are set then `--preview-host` takes precedence.')
|
|
77
|
+
.option('--preview-original-resolution', 'If set, does not resize the preview image to the impulse resolution')
|
|
77
78
|
.option('--monitor', 'Enable model monitoring', false)
|
|
78
79
|
.option('--monitor-max-storage-size <size>', 'The maximum storage size to be used for model monitoring, in MB. Defaults to 250.')
|
|
79
80
|
.option('--monitor-summary-interval-ms <ms>', `The time interval (in milliseconds) for model monitoring summaries. Defaults to ${model_monitor_1.DEFAULT_MONITOR_SUMMARY_INTERVAL_MS}.`)
|
|
@@ -146,6 +147,7 @@ if (commander_1.default.previewHost) {
|
|
|
146
147
|
else if (process.env.HOST) {
|
|
147
148
|
previewHostArgv = process.env.HOST;
|
|
148
149
|
}
|
|
150
|
+
const previewOriginalResolutionArgv = !!commander_1.default.previewOriginalResolution;
|
|
149
151
|
const enableVideo = (process.env.PROPHESEE_CAM === '1') || (process.env.ENABLE_VIDEO === '1');
|
|
150
152
|
const dontPrintPredictionsArgv = !!commander_1.default.dontPrintPredictions;
|
|
151
153
|
const thresholdsArgv = commander_1.default.thresholds;
|
|
@@ -792,6 +794,40 @@ async function startCamera(cameraType, inferenceDimensions) {
|
|
|
792
794
|
process.exit(1);
|
|
793
795
|
});
|
|
794
796
|
await audioClassifier.start(audioDeviceName);
|
|
797
|
+
try {
|
|
798
|
+
await (0, runner_utils_1.startWebServer)({
|
|
799
|
+
type: 'audio',
|
|
800
|
+
model: model,
|
|
801
|
+
audioClassifier: audioClassifier,
|
|
802
|
+
verbose: verboseArgv,
|
|
803
|
+
host: previewHostArgv,
|
|
804
|
+
port: previewPortArgv,
|
|
805
|
+
});
|
|
806
|
+
}
|
|
807
|
+
catch (ex2) {
|
|
808
|
+
const ex = ex2;
|
|
809
|
+
if ((ex.message || ex.toString()).indexOf('EADDRINUSE') > -1) {
|
|
810
|
+
console.log('');
|
|
811
|
+
console.log(`EADDRINUSE: Could not listen on ${previewHostArgv}:${previewPortArgv}`);
|
|
812
|
+
console.log(`Most likely another application (for example, another instance of edge-impulse-linux-runner) is already listening on this port. You can select another port via --preview-port <port>, for example:`);
|
|
813
|
+
console.log(``);
|
|
814
|
+
console.log(` edge-impulse-linux-runner --preview-port ${previewPortArgv + 1}`);
|
|
815
|
+
console.log(``);
|
|
816
|
+
process.exit(1);
|
|
817
|
+
}
|
|
818
|
+
throw ex;
|
|
819
|
+
}
|
|
820
|
+
console.log('');
|
|
821
|
+
console.log('Want to see live classification in your browser? ' +
|
|
822
|
+
'Go to http://' + (get_ips_1.ips.length > 0 ? get_ips_1.ips[0].address : 'localhost') + ':' + previewPortArgv);
|
|
823
|
+
console.log('');
|
|
824
|
+
console.log('Want to use predictions in your application? ' +
|
|
825
|
+
'Open a websocket to ws://' + (get_ips_1.ips.length > 0 ? get_ips_1.ips[0].address : 'localhost') + ':' + previewPortArgv);
|
|
826
|
+
console.log('');
|
|
827
|
+
if (model.modelParameters.has_performance_calibration) {
|
|
828
|
+
console.log(`Performance calibration is configured for your project. If no event is detected, all values are 0.`);
|
|
829
|
+
console.log(``);
|
|
830
|
+
}
|
|
795
831
|
audioClassifier.on('result', async (ev, timeMs, audioAsPcm) => {
|
|
796
832
|
let count = 0;
|
|
797
833
|
if (!ev.result.classification)
|
|
@@ -804,17 +840,27 @@ async function startCamera(cameraType, inferenceDimensions) {
|
|
|
804
840
|
}
|
|
805
841
|
// print the raw predicted values for this frame
|
|
806
842
|
// (turn into string here so the content does not jump around)
|
|
807
|
-
let c = ev.result.classification;
|
|
808
|
-
for (let k of Object.keys(c)) {
|
|
809
|
-
c[k] = c[k].toFixed(4);
|
|
810
|
-
}
|
|
843
|
+
let c = structuredClone(ev.result.classification);
|
|
811
844
|
if (Array.isArray(c)) {
|
|
812
845
|
count = c.length;
|
|
813
846
|
}
|
|
814
847
|
// total inferences update...
|
|
815
848
|
totalInferenceCount += count;
|
|
816
849
|
if (!dontPrintPredictionsArgv) {
|
|
817
|
-
|
|
850
|
+
// More than 10? Just print top 5...
|
|
851
|
+
if (Object.keys(c).length >= 10) {
|
|
852
|
+
const top = Object.entries(ev.result.classification)
|
|
853
|
+
.sort((a, b) => Number(b[1]) - Number(a[1]))
|
|
854
|
+
.slice(0, 5)
|
|
855
|
+
.reduce((curr, val) => {
|
|
856
|
+
curr[val[0]] = val[1];
|
|
857
|
+
return curr;
|
|
858
|
+
}, {});
|
|
859
|
+
console.log('classifyRes', timeMs + 'ms.', 'Top 5:', roundValuesTo4Digits(top));
|
|
860
|
+
}
|
|
861
|
+
else {
|
|
862
|
+
console.log('classifyRes', timeMs + 'ms.', roundValuesTo4Digits(c));
|
|
863
|
+
}
|
|
818
864
|
}
|
|
819
865
|
// AWS Integration - send to IoTCore if running in Greengrass
|
|
820
866
|
if (awsIOT?.isConnected()) {
|
|
@@ -849,12 +895,16 @@ async function startCamera(cameraType, inferenceDimensions) {
|
|
|
849
895
|
await imageClassifier.start();
|
|
850
896
|
try {
|
|
851
897
|
await (0, runner_utils_1.startWebServer)({
|
|
898
|
+
type: 'camera',
|
|
852
899
|
model: model,
|
|
853
900
|
camera: camera,
|
|
854
901
|
imgClassifier: imageClassifier,
|
|
855
902
|
verbose: verboseArgv,
|
|
856
903
|
host: previewHostArgv,
|
|
857
904
|
port: previewPortArgv,
|
|
905
|
+
streamResolution: previewOriginalResolutionArgv ?
|
|
906
|
+
'original' :
|
|
907
|
+
'scaled-using-impulse',
|
|
858
908
|
});
|
|
859
909
|
}
|
|
860
910
|
catch (ex2) {
|
|
@@ -884,9 +934,22 @@ async function startCamera(cameraType, inferenceDimensions) {
|
|
|
884
934
|
let count = 0;
|
|
885
935
|
if (ev.result.classification) {
|
|
886
936
|
// print the raw predicted values for this frame
|
|
887
|
-
const c = (ev.result.classification);
|
|
937
|
+
const c = structuredClone(ev.result.classification);
|
|
888
938
|
if (!dontPrintPredictionsArgv) {
|
|
889
|
-
|
|
939
|
+
// More than 10? Just print top 5...
|
|
940
|
+
if (Object.keys(c).length >= 10) {
|
|
941
|
+
const top = Object.entries(ev.result.classification)
|
|
942
|
+
.sort((a, b) => Number(b[1]) - Number(a[1]))
|
|
943
|
+
.slice(0, 5)
|
|
944
|
+
.reduce((curr, val) => {
|
|
945
|
+
curr[val[0]] = val[1];
|
|
946
|
+
return curr;
|
|
947
|
+
}, {});
|
|
948
|
+
console.log('classifyRes', timeMs + 'ms.', 'Top 5:', roundValuesTo4Digits(top));
|
|
949
|
+
}
|
|
950
|
+
else {
|
|
951
|
+
console.log('classifyRes', timeMs + 'ms.', roundValuesTo4Digits(c));
|
|
952
|
+
}
|
|
890
953
|
}
|
|
891
954
|
// AWS Integration
|
|
892
955
|
awsResult = c;
|
|
@@ -1045,4 +1108,11 @@ async function setThresholdsFromArgv(runner, model) {
|
|
|
1045
1108
|
}
|
|
1046
1109
|
}
|
|
1047
1110
|
}
|
|
1111
|
+
function roundValuesTo4Digits(obj) {
|
|
1112
|
+
let newObj = {};
|
|
1113
|
+
for (const key of Object.keys(obj)) {
|
|
1114
|
+
newObj[key] = Number(obj[key].toFixed(4));
|
|
1115
|
+
}
|
|
1116
|
+
return newObj;
|
|
1117
|
+
}
|
|
1048
1118
|
//# sourceMappingURL=runner.js.map
|