edge-impulse-linux 1.15.4 → 1.15.5

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.
Files changed (44) hide show
  1. package/build/cli/linux/linux.js +8 -1
  2. package/build/cli/linux/linux.js.map +1 -1
  3. package/build/cli/linux/runner.js +26 -4
  4. package/build/cli/linux/runner.js.map +1 -1
  5. package/build/library/classifier/image-classifier.js +10 -11
  6. package/build/library/classifier/image-classifier.js.map +1 -1
  7. package/build/library/classifier/linux-impulse-runner.d.ts +1 -1
  8. package/build/library/index.d.ts +1 -0
  9. package/build/library/index.js +2 -1
  10. package/build/library/index.js.map +1 -1
  11. package/build/library/sensors/gstreamer.d.ts +18 -2
  12. package/build/library/sensors/gstreamer.js +54 -2
  13. package/build/library/sensors/gstreamer.js.map +1 -1
  14. package/build/library/sensors/icamera.d.ts +7 -0
  15. package/build/library/sensors/imagesnap.js +3 -0
  16. package/build/library/sensors/imagesnap.js.map +1 -1
  17. package/build/library/sensors/prophesee.js +3 -0
  18. package/build/library/sensors/prophesee.js.map +1 -1
  19. package/build/library/sensors/sensors-helper.d.ts +12 -5
  20. package/build/library/sensors/sensors-helper.js +9 -15
  21. package/build/library/sensors/sensors-helper.js.map +1 -1
  22. package/build/sdk/studio/sdk/api/rawDataApi.d.ts +79 -0
  23. package/build/sdk/studio/sdk/api/rawDataApi.js +211 -0
  24. package/build/sdk/studio/sdk/api/rawDataApi.js.map +1 -1
  25. package/build/sdk/studio/sdk/model/getSampleMetadataFilterOptionsResponse.d.ts +39 -0
  26. package/build/sdk/studio/sdk/model/getSampleMetadataFilterOptionsResponse.js +49 -0
  27. package/build/sdk/studio/sdk/model/getSampleMetadataFilterOptionsResponse.js.map +1 -0
  28. package/build/sdk/studio/sdk/model/metadataFilterOptions.d.ts +31 -0
  29. package/build/sdk/studio/sdk/model/metadataFilterOptions.js +39 -0
  30. package/build/sdk/studio/sdk/model/metadataFilterOptions.js.map +1 -0
  31. package/build/sdk/studio/sdk/model/metadataFilterOptionsOptionsList.d.ts +26 -0
  32. package/build/sdk/studio/sdk/model/metadataFilterOptionsOptionsList.js +34 -0
  33. package/build/sdk/studio/sdk/model/metadataFilterOptionsOptionsList.js.map +1 -0
  34. package/build/sdk/studio/sdk/model/models.d.ts +3 -0
  35. package/build/sdk/studio/sdk/model/models.js +9 -0
  36. package/build/sdk/studio/sdk/model/models.js.map +1 -1
  37. package/build/sdk/studio/sdk/model/permission.d.ts +1 -1
  38. package/build/sdk/studio/sdk/model/permission.js +1 -1
  39. package/build/sdk/studio/sdk/model/permission.js.map +1 -1
  40. package/examples/js/classify-camera.js +9 -2
  41. package/examples/ts/classify-camera-webserver.ts +8 -3
  42. package/examples/ts/classify-camera.ts +10 -3
  43. package/package.json +1 -1
  44. package/test/gstreamer.test.ts +191 -1
@@ -141,7 +141,14 @@ let isExiting = false;
141
141
  }
142
142
  if (!noCamera) {
143
143
  const storedCamera = await configFactory.getCamera();
144
- camera = await (0, sensors_helper_1.initCamera)(cameraType, storedCamera, dimensions, gstLaunchArgsArgv, verboseArgv);
144
+ camera = await (0, sensors_helper_1.initCamera)({
145
+ cameraType: cameraType,
146
+ cameraDeviceName: storedCamera,
147
+ dimensions: dimensions,
148
+ gstLaunchArgs: gstLaunchArgsArgv,
149
+ verboseOutput: verboseArgv,
150
+ inferenceDimensions: undefined,
151
+ });
145
152
  camera.on('error', error => {
146
153
  if (isExiting)
147
154
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"linux.js","sourceRoot":"","sources":["../../../cli/linux/linux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linux.js","sourceRoot":"","sources":["../../../cli/linux/linux.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,7 @@ commander_1.default
66
66
  .option('--force-target <target>', 'Do not autodetect the target system, but set it by hand (e.g. "runner-linux-aarch64")')
67
67
  .option('--force-engine <engine>', 'Do not autodetect the inference engine, but set it by hand (e.g. "tflite")')
68
68
  .option('--force-variant <variant>', 'Do not autodetect the model variant, but set it by hand (e.g. "int8")')
69
+ .option('--force-resize-mode <mode>', 'Do not use the resize method from the impulse, but set it by hand (valid: "squash", "fit-shortest" or "fit-longest")')
69
70
  .option('--impulse-id <impulseId>', 'Select the impulse ID (if you have multiple impulses)')
70
71
  .option('--run-http-server <port>', 'Do not run using a sensor, but instead expose an API server at the specified port')
71
72
  .option('--monitor', 'Enable model monitoring', false)
@@ -101,6 +102,7 @@ const downloadArgv = commander_1.default.download;
101
102
  const forceTargetArgv = commander_1.default.forceTarget;
102
103
  const forceEngineArgv = commander_1.default.forceEngine;
103
104
  const forceVariantArgv = commander_1.default.forceVariant;
105
+ const forceResizeModeArgv = commander_1.default.forceResizeMode;
104
106
  const impulseIdArgvStr = commander_1.default.impulseId;
105
107
  const impulseIdArgv = impulseIdArgvStr && !isNaN(Number(impulseIdArgvStr)) ? Number(impulseIdArgvStr) : undefined;
106
108
  const monitorArgv = !!commander_1.default.monitor;
@@ -171,12 +173,19 @@ const onSignal = async () => {
171
173
  };
172
174
  process.on('SIGHUP', onSignal);
173
175
  process.on('SIGINT', onSignal);
174
- async function startCamera(cameraType) {
176
+ async function startCamera(cameraType, inferenceDimensions) {
175
177
  if (!configFactory) {
176
178
  throw new Error('No config factory');
177
179
  }
178
180
  let cameraDevicedName = await configFactory.getCamera();
179
- let camera = await (0, sensors_helper_1.initCamera)(cameraType, cameraDevicedName, undefined, gstLaunchArgsArgv, verboseArgv);
181
+ let camera = await (0, sensors_helper_1.initCamera)({
182
+ cameraType: cameraType,
183
+ cameraDeviceName: cameraDevicedName,
184
+ dimensions: undefined,
185
+ gstLaunchArgs: gstLaunchArgsArgv,
186
+ verboseOutput: verboseArgv,
187
+ inferenceDimensions: inferenceDimensions,
188
+ });
180
189
  camera.on('error', error => {
181
190
  if (isExiting)
182
191
  return;
@@ -258,6 +267,15 @@ async function startCamera(cameraType) {
258
267
  throw new Error(`Invalid value for --monitor-summary-interval-ms (was: "${monitorSummaryIntervalArgv}"). ` +
259
268
  `Minimum value is ${model_monitor_1.DEFAULT_MONITOR_SUMMARY_INTERVAL_MS} (1 minute).`);
260
269
  }
270
+ if (forceResizeModeArgv) {
271
+ if (forceResizeModeArgv !== 'squash' && forceResizeModeArgv !== 'fit-longest' && forceResizeModeArgv !== 'fit-shortest') {
272
+ throw new Error(`Invalid value for --force-resize-mode (${forceResizeModeArgv}), valid: ` +
273
+ `"squash", "fit-shortest", "fit-longest"`);
274
+ }
275
+ }
276
+ if (gstLaunchArgsArgv && forceResizeModeArgv) {
277
+ console.log(RUNNER_PREFIX, `WARN: --force-resize-mode is ignored when --gst-launch-args is passed in`);
278
+ }
261
279
  // any of this arguments implies online mode, so we need to login to the studio or get the API key
262
280
  const connectionRequired = monitorArgv ||
263
281
  modelFileArgv === undefined ||
@@ -680,7 +698,7 @@ async function startCamera(cameraType) {
680
698
  if (param.sensorType === 'microphone') {
681
699
  (0, runner_utils_1.audioClassifierHelloMsg)(model);
682
700
  if (enableCameraArgv) {
683
- await startCamera(cameraType);
701
+ await startCamera(cameraType, undefined);
684
702
  }
685
703
  let audioDeviceName = await configFactory.getAudio();
686
704
  try {
@@ -748,7 +766,11 @@ async function startCamera(cameraType) {
748
766
  }
749
767
  else if (param.sensorType === 'camera') {
750
768
  (0, runner_utils_1.imageClassifierHelloMsg)(model);
751
- let camera = await startCamera(cameraType);
769
+ let camera = await startCamera(cameraType, {
770
+ width: param.image_input_width,
771
+ height: param.image_input_height,
772
+ resizeMode: forceResizeModeArgv || param.image_resize_mode || 'none',
773
+ });
752
774
  imageClassifier = new image_classifier_1.ImageClassifier(runner, camera, {
753
775
  verbose: verboseArgv,
754
776
  });
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../cli/linux/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../cli/linux/runner.ts"],"names":[],"mappings":"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"}
@@ -134,15 +134,19 @@ class ImageClassifier extends tsee_1.EventEmitter {
134
134
  }
135
135
  // resize image and add to frameQueue
136
136
  const fitMethod = FitMethodMap[model.modelParameters.image_resize_mode || 'none'];
137
- let img;
138
- let features = [];
139
- if (model.modelParameters.image_channel_count === 3) {
140
- img = (0, sharp_1.default)(data).resize({
137
+ let img = (0, sharp_1.default)(data);
138
+ if (metadata.width !== model.modelParameters.image_input_width ||
139
+ metadata.height !== model.modelParameters.image_input_height) {
140
+ img = img.resize({
141
141
  height: model.modelParameters.image_input_height,
142
142
  width: model.modelParameters.image_input_width,
143
143
  fit: fitMethod,
144
144
  fastShrinkOnLoad: false
145
- }).removeAlpha();
145
+ });
146
+ }
147
+ let features = [];
148
+ if (model.modelParameters.image_channel_count === 3) {
149
+ img = img.removeAlpha();
146
150
  let buffer = await img.raw().toBuffer();
147
151
  for (let ix = 0; ix < buffer.length; ix += 3) {
148
152
  let r = buffer[ix + 0];
@@ -153,12 +157,7 @@ class ImageClassifier extends tsee_1.EventEmitter {
153
157
  }
154
158
  }
155
159
  else {
156
- img = (0, sharp_1.default)(data).resize({
157
- height: model.modelParameters.image_input_height,
158
- width: model.modelParameters.image_input_width,
159
- fit: fitMethod,
160
- fastShrinkOnLoad: false
161
- }).toColourspace('b-w');
160
+ img = img.toColourspace('b-w');
162
161
  let buffer = await img.raw().toBuffer();
163
162
  for (let p of buffer) {
164
163
  // eslint-disable-next-line no-bitwise
@@ -1 +1 @@
1
- {"version":3,"file":"image-classifier.js","sourceRoot":"","sources":["../../../library/classifier/image-classifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-classifier.js","sourceRoot":"","sources":["../../../library/classifier/image-classifier.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ export type RunnerHelloResponseModelParameters = {
33
33
  image_input_width: number;
34
34
  image_input_frames: number;
35
35
  image_channel_count: number;
36
- image_resize_mode: 'none' | 'fit-shortest' | 'fit-longest' | 'squash';
36
+ image_resize_mode?: 'none' | 'fit-shortest' | 'fit-longest' | 'squash';
37
37
  interval_ms: number;
38
38
  label_count: number;
39
39
  sensor: number;
@@ -13,6 +13,7 @@ export { AudioClassifier };
13
13
  export { ImageClassifier };
14
14
  export { LinuxImpulseRunner };
15
15
  export { GStreamer as Ffmpeg };
16
+ export { GStreamer };
16
17
  export { Imagesnap };
17
18
  export { AudioRecorder };
18
19
  export { ICamera };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RunnerHelloHasAnomaly = exports.AudioRecorder = exports.Imagesnap = exports.Ffmpeg = exports.LinuxImpulseRunner = exports.ImageClassifier = exports.AudioClassifier = exports.DataForwarder = exports.MovingAverageFilter = void 0;
3
+ exports.RunnerHelloHasAnomaly = exports.AudioRecorder = exports.Imagesnap = exports.GStreamer = exports.Ffmpeg = exports.LinuxImpulseRunner = exports.ImageClassifier = exports.AudioClassifier = exports.DataForwarder = exports.MovingAverageFilter = void 0;
4
4
  const moving_average_filter_1 = require("./moving-average-filter");
5
5
  Object.defineProperty(exports, "MovingAverageFilter", { enumerable: true, get: function () { return moving_average_filter_1.MovingAverageFilter; } });
6
6
  const data_forwarder_1 = require("./data-forwarder");
@@ -14,6 +14,7 @@ const image_classifier_1 = require("./classifier/image-classifier");
14
14
  Object.defineProperty(exports, "ImageClassifier", { enumerable: true, get: function () { return image_classifier_1.ImageClassifier; } });
15
15
  const gstreamer_1 = require("./sensors/gstreamer");
16
16
  Object.defineProperty(exports, "Ffmpeg", { enumerable: true, get: function () { return gstreamer_1.GStreamer; } });
17
+ Object.defineProperty(exports, "GStreamer", { enumerable: true, get: function () { return gstreamer_1.GStreamer; } });
17
18
  const imagesnap_1 = require("./sensors/imagesnap");
18
19
  Object.defineProperty(exports, "Imagesnap", { enumerable: true, get: function () { return imagesnap_1.Imagesnap; } });
19
20
  const recorder_1 = require("./sensors/recorder");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../library/index.ts"],"names":[],"mappings":";;;AAAA,mEAA8D;AAUrD,oGAVA,2CAAmB,OAUA;AAT5B,qDAAiD;AAUxC,8FAVA,8BAAa,OAUA;AATtB,4EAAgH;AAYvG,mGAZA,yCAAkB,OAYA;AAMlB,sGAlBsC,4CAAqB,OAkBtC;AAjB9B,oEAAgE;AASvD,gGATA,kCAAe,OASA;AARxB,oEAAgE;AASvD,gGATA,kCAAe,OASA;AARxB,mDAAgD;AAU1B,uFAVb,qBAAS,OAUU;AAT5B,mDAAgD;AAUvC,0FAVA,qBAAS,OAUA;AATlB,iDAAmD;AAU1C,8FAVA,wBAAa,OAUA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../library/index.ts"],"names":[],"mappings":";;;AAAA,mEAA8D;AAUrD,oGAVA,2CAAmB,OAUA;AAT5B,qDAAiD;AAUxC,8FAVA,8BAAa,OAUA;AATtB,4EAAgH;AAYvG,mGAZA,yCAAkB,OAYA;AAOlB,sGAnBsC,4CAAqB,OAmBtC;AAlB9B,oEAAgE;AASvD,gGATA,kCAAe,OASA;AARxB,oEAAgE;AASvD,gGATA,kCAAe,OASA;AARxB,mDAAgD;AAU1B,uFAVb,qBAAS,OAUU;AACnB,0FAXA,qBAAS,OAWA;AAVlB,mDAAgD;AAWvC,0FAXA,qBAAS,OAWA;AAVlB,iDAAmD;AAW1C,8FAXA,wBAAa,OAWA"}
@@ -2,7 +2,7 @@
2
2
  /// <reference types="node" />
3
3
  import { EventEmitter } from 'tsee';
4
4
  import { SpawnHelperType } from './spawn-helper';
5
- import { ICamera, ICameraStartOptions } from './icamera';
5
+ import { ICamera, ICameraInferenceDimensions, ICameraStartOptions } from './icamera';
6
6
  type GStreamerCap = {
7
7
  type: 'video/x-raw' | 'image/jpeg' | 'nvarguscamerasrc' | 'pylonsrc';
8
8
  width: number;
@@ -29,10 +29,12 @@ export declare class GStreamer extends EventEmitter<{
29
29
  private _isRestarting;
30
30
  private _spawnHelper;
31
31
  private _customLaunchCommand;
32
+ private _scaleAndCropInPipeline;
32
33
  constructor(verbose: boolean, options?: {
33
34
  spawnHelperOverride?: SpawnHelperType;
34
35
  customLaunchCommand?: string;
35
36
  modeOverride?: GStreamerMode;
37
+ scaleAndCropInPipeline?: boolean;
36
38
  });
37
39
  init(): Promise<void>;
38
40
  listDevices(): Promise<string[]>;
@@ -45,7 +47,7 @@ export declare class GStreamer extends EventEmitter<{
45
47
  }, dimensions: {
46
48
  width: number;
47
49
  height: number;
48
- }): Promise<{
50
+ }, inferenceDims: ICameraInferenceDimensions | undefined): Promise<{
49
51
  invokeProcess: string;
50
52
  command: string;
51
53
  args: string[];
@@ -64,5 +66,19 @@ export declare class GStreamer extends EventEmitter<{
64
66
  getLastOptions(): ICameraStartOptions | undefined;
65
67
  private exists;
66
68
  private timeoutCallback;
69
+ determineSquareCrop({ width, height }: {
70
+ width: number;
71
+ height: number;
72
+ }): {
73
+ type: 'landscape';
74
+ left: number;
75
+ right: number;
76
+ } | {
77
+ type: 'portrait';
78
+ top: number;
79
+ bottom: number;
80
+ } | {
81
+ type: 'none';
82
+ };
67
83
  }
68
84
  export {};
@@ -29,6 +29,9 @@ class GStreamer extends tsee_1.EventEmitter {
29
29
  this._customLaunchCommand = options?.customLaunchCommand;
30
30
  this._spawnHelper = options?.spawnHelperOverride || spawn_helper_1.spawnHelper;
31
31
  this._modeOverride = options?.modeOverride;
32
+ this._scaleAndCropInPipeline = typeof options?.scaleAndCropInPipeline === 'boolean' ?
33
+ options.scaleAndCropInPipeline :
34
+ false;
32
35
  }
33
36
  async init() {
34
37
  try {
@@ -112,7 +115,7 @@ class GStreamer extends tsee_1.EventEmitter {
112
115
  console.log(PREFIX, 'Detected RZ/G2L target, initializing camera OK');
113
116
  }
114
117
  }
115
- const { invokeProcess, command, args } = await this.getGstreamerLaunchCommand(device, dimensions);
118
+ const { invokeProcess, command, args } = await this.getGstreamerLaunchCommand(device, dimensions, options.inferenceDimensions);
116
119
  if (this._verbose) {
117
120
  console.log(PREFIX, `Starting ${command} with`, args);
118
121
  }
@@ -272,7 +275,7 @@ class GStreamer extends tsee_1.EventEmitter {
272
275
  p.catch(() => this.stop());
273
276
  return p;
274
277
  }
275
- async getGstreamerLaunchCommand(device, dimensions) {
278
+ async getGstreamerLaunchCommand(device, dimensions, inferenceDims) {
276
279
  if (device.id === CUSTOM_GST_LAUNCH_COMMAND) {
277
280
  if (!this._customLaunchCommand) {
278
281
  throw new Error('_customLaunchCommand is null');
@@ -331,6 +334,37 @@ class GStreamer extends tsee_1.EventEmitter {
331
334
  else if (device.id.startsWith('qtiqmmfsrc')) {
332
335
  videoSource = device.videoSource.split(' ');
333
336
  }
337
+ let cropArgs = [];
338
+ if (inferenceDims && this._scaleAndCropInPipeline) {
339
+ // fast path for fit-shortest and squash
340
+ if (inferenceDims.width === inferenceDims.height && inferenceDims.resizeMode === 'fit-shortest') {
341
+ const crop = this.determineSquareCrop(cap);
342
+ cropArgs.push(`!`);
343
+ if (crop.type === 'landscape') {
344
+ cropArgs = cropArgs.concat([
345
+ `videocrop`, `left=${crop.left}`, `right=${crop.right}`,
346
+ `!`,
347
+ `videoscale`, `method=lanczos`,
348
+ `!`,
349
+ ]);
350
+ }
351
+ else if (crop.type === 'portrait') {
352
+ cropArgs = cropArgs.concat([
353
+ `videocrop`, `top=${crop.top}`, `bottom=${crop.bottom}`,
354
+ `!`,
355
+ `videoscale`, `method=lanczos`,
356
+ `!`,
357
+ ]);
358
+ }
359
+ cropArgs.push(`video/x-raw,width=${inferenceDims.width},height=${inferenceDims.height}`);
360
+ }
361
+ else if (inferenceDims.resizeMode === 'squash' || inferenceDims.resizeMode === 'none' /* old model */) {
362
+ cropArgs.push(`!`);
363
+ cropArgs.push(`videoscale`, `method=lanczos`);
364
+ cropArgs.push(`!`);
365
+ cropArgs.push(`video/x-raw,width=${inferenceDims.width},height=${inferenceDims.height}`);
366
+ }
367
+ }
334
368
  let invokeProcess;
335
369
  let args;
336
370
  if ((cap.type === 'video/x-raw') || (cap.type === 'pylonsrc')) {
@@ -349,6 +383,7 @@ class GStreamer extends tsee_1.EventEmitter {
349
383
  args = videoSource.concat([
350
384
  `!`,
351
385
  `videoconvert`,
386
+ ...cropArgs,
352
387
  `!`,
353
388
  `jpegenc`,
354
389
  `!`,
@@ -968,6 +1003,23 @@ class GStreamer extends tsee_1.EventEmitter {
968
1003
  this._isRestarting = false;
969
1004
  }
970
1005
  }
1006
+ determineSquareCrop({ width, height }) {
1007
+ // no crop needed
1008
+ if (width === height)
1009
+ return { type: 'none' };
1010
+ if (width > height) {
1011
+ const diff = width - height;
1012
+ const left = Math.floor(diff / 2);
1013
+ const right = diff - left;
1014
+ return { type: 'landscape', left, right };
1015
+ }
1016
+ else {
1017
+ const diff = height - width;
1018
+ const top = Math.floor(diff / 2);
1019
+ const bottom = diff - top;
1020
+ return { type: 'portrait', top, bottom };
1021
+ }
1022
+ }
971
1023
  }
972
1024
  exports.GStreamer = GStreamer;
973
1025
  //# sourceMappingURL=gstreamer.js.map