LabeledFaceDescriptors.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var LabeledFaceDescriptors = /** @class */ (function () {
  4. function LabeledFaceDescriptors(label, descriptors) {
  5. if (!(typeof label === 'string')) {
  6. throw new Error('LabeledFaceDescriptors - constructor expected label to be a string');
  7. }
  8. if (!Array.isArray(descriptors) || descriptors.some(function (desc) { return !(desc instanceof Float32Array); })) {
  9. throw new Error('LabeledFaceDescriptors - constructor expected descriptors to be an array of Float32Array');
  10. }
  11. this._label = label;
  12. this._descriptors = descriptors;
  13. }
  14. Object.defineProperty(LabeledFaceDescriptors.prototype, "label", {
  15. get: function () { return this._label; },
  16. enumerable: true,
  17. configurable: true
  18. });
  19. Object.defineProperty(LabeledFaceDescriptors.prototype, "descriptors", {
  20. get: function () { return this._descriptors; },
  21. enumerable: true,
  22. configurable: true
  23. });
  24. LabeledFaceDescriptors.prototype.toJSON = function () {
  25. return {
  26. label: this.label,
  27. descriptors: this.descriptors.map(function (d) { return Array.from(d); })
  28. };
  29. };
  30. LabeledFaceDescriptors.fromJSON = function (json) {
  31. var descriptors = json.descriptors.map(function (d) {
  32. return new Float32Array(d);
  33. });
  34. return new LabeledFaceDescriptors(json.label, descriptors);
  35. };
  36. return LabeledFaceDescriptors;
  37. }());
  38. exports.LabeledFaceDescriptors = LabeledFaceDescriptors;
  39. //# sourceMappingURL=LabeledFaceDescriptors.js.map