image-js 0.35.4 → 0.35.6
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/index.d.ts +255 -3
- package/lib/browser/environment.js +3 -6
- package/lib/browser/worker/extend.js +1 -1
- package/lib/browser/worker/process/background.js +2 -3
- package/lib/browser/worker/worker.js +2 -3
- package/lib/image/Image.js +1 -2
- package/lib/image/compute/colorHistogram.js +1 -1
- package/lib/image/compute/histogram.js +1 -1
- package/lib/image/compute/max.js +1 -1
- package/lib/image/compute/min.js +1 -1
- package/lib/image/compute/minimalBoundingRectangle.js +1 -1
- package/lib/image/compute/monotoneChainConvexHull.js +1 -1
- package/lib/image/compute/sum.js +1 -1
- package/lib/image/core/environment.js +4 -6
- package/lib/image/core/extend.js +1 -1
- package/lib/image/core/kind.js +2 -2
- package/lib/image/core/kindNames.js +7 -14
- package/lib/image/core/load.js +1 -1
- package/lib/image/extend.js +1 -1
- package/lib/image/filter/background.js +1 -1
- package/lib/image/filter/gradientFilter.js +2 -1
- package/lib/image/filter/hypotenuse.js +1 -1
- package/lib/image/filter/invert.js +1 -1
- package/lib/image/filter/level.js +1 -1
- package/lib/image/filter/medianFilter.js +1 -1
- package/lib/image/filter/scharrFilter.js +1 -1
- package/lib/image/filter/sobelFilter.js +1 -1
- package/lib/image/internal/checks.js +1 -2
- package/lib/image/internal/getOutputImage.js +1 -1
- package/lib/image/model/model.js +5 -10
- package/lib/image/morphology/dilate.js +1 -1
- package/lib/image/morphology/erode.js +1 -1
- package/lib/image/operator/cannyEdge.js +1 -1
- package/lib/image/operator/convolution.js +1 -1
- package/lib/image/operator/extract.js +1 -1
- package/lib/image/operator/floodFill.js +1 -1
- package/lib/image/operator/paintPoints.js +1 -1
- package/lib/image/roi/Roi.js +4 -6
- package/lib/image/roi/RoiLayer.js +1 -1
- package/lib/image/roi/RoiMap.js +1 -1
- package/lib/image/roi/creator/fromMask.js +1 -1
- package/lib/image/roi/creator/fromMaskConnectedComponentLabelingAlgorithm.js +1 -1
- package/lib/image/roi/creator/fromMaxima.js +1 -1
- package/lib/image/roi/creator/fromPoints.js +1 -1
- package/lib/image/roi/creator/fromWaterShed.js +1 -1
- package/lib/image/roi/feretDiameters.js +1 -1
- package/lib/image/roi/manager.js +1 -1
- package/lib/image/transform/cmyk.js +1 -1
- package/lib/image/transform/colorDepth.js +1 -1
- package/lib/image/transform/crop.js +1 -1
- package/lib/image/transform/grey.js +1 -1
- package/lib/image/transform/greyAlgorithms.js +2 -4
- package/lib/image/transform/hsl.js +1 -1
- package/lib/image/transform/hsv.js +1 -1
- package/lib/image/transform/insert.js +1 -1
- package/lib/image/transform/mask/mask.js +1 -1
- package/lib/image/transform/mask/thresholdAlgorithms.js +3 -5
- package/lib/image/transform/pad.js +1 -1
- package/lib/image/transform/resize/resize.js +1 -1
- package/lib/image/transform/rgba.js +1 -1
- package/lib/image/transform/rgba8.js +1 -1
- package/lib/image/transform/rotate.js +1 -1
- package/lib/image/transform/rotateFree.js +1 -1
- package/lib/image/transform/warping.js +1 -1
- package/lib/image/utility/combineChannels.js +1 -1
- package/lib/image/utility/getBestMatch.js +1 -1
- package/lib/image/utility/getChannel.js +1 -1
- package/lib/image/utility/getSimilarity.js +1 -1
- package/lib/image/utility/setBorder.js +1 -1
- package/lib/image/utility/split.js +1 -1
- package/lib/index.js +5 -6
- package/lib/stack/Stack.js +1 -1
- package/lib/stack/extend.js +1 -1
- package/lib/stack/transform/matchAndCrop.js +1 -1
- package/lib/stack/utility/averageImage.js +1 -1
- package/lib/stack/utility/maxImage.js +1 -1
- package/lib/stack/utility/minImage.js +1 -1
- package/lib/util/Shape.js +1 -1
- package/lib/util/channel.js +2 -6
- package/lib/util/dxdy.js +2 -4
- package/lib/util/kernel.js +1 -1
- package/lib/util/kernels.js +8 -16
- package/lib/util/value.js +1 -1
- package/lib/worker/worker.js +1 -2
- package/package.json +2 -2
package/index.d.ts
CHANGED
|
@@ -37,7 +37,7 @@ export declare class Image {
|
|
|
37
37
|
options?: RequestInit & { ignorePalette: boolean },
|
|
38
38
|
): Promise<Image>;
|
|
39
39
|
|
|
40
|
-
getRoiManager(): RoiManager;
|
|
40
|
+
getRoiManager(options?: RoiManagerOptions): RoiManager;
|
|
41
41
|
clone(): Image;
|
|
42
42
|
|
|
43
43
|
// valueMethods
|
|
@@ -73,6 +73,7 @@ export declare class Image {
|
|
|
73
73
|
|
|
74
74
|
// extend
|
|
75
75
|
invert(options?: OutOrInplace): Image;
|
|
76
|
+
insert(toInsert: Image, options: InsertOptions): Image;
|
|
76
77
|
abs(options?: OutOrInplace): Image;
|
|
77
78
|
level(options?: {
|
|
78
79
|
channels?: SelectedChannels;
|
|
@@ -155,7 +156,6 @@ export declare class Image {
|
|
|
155
156
|
rotate(angle: number, options?: RotateOptions): Image;
|
|
156
157
|
rotateLeft(): Image;
|
|
157
158
|
rotateRight(): Image;
|
|
158
|
-
|
|
159
159
|
getRow(row: number, channel?: number): Array<number>;
|
|
160
160
|
getColumn(row: number, channel?: number): Array<number>;
|
|
161
161
|
getMatrix(options?: { channel?: number }): Matrix;
|
|
@@ -328,7 +328,254 @@ export declare class Stack extends Array<Image> {
|
|
|
328
328
|
getMinImage(): Image;
|
|
329
329
|
}
|
|
330
330
|
|
|
331
|
-
|
|
331
|
+
type RoiMapRowInfo = {
|
|
332
|
+
row: number;
|
|
333
|
+
positivePixel: number;
|
|
334
|
+
negativePixel: number;
|
|
335
|
+
zeroPixel: number;
|
|
336
|
+
positiveRoi: number;
|
|
337
|
+
negativeRoi: number;
|
|
338
|
+
medianChange: number;
|
|
339
|
+
positiveRoiIDs: string[];
|
|
340
|
+
negativeRoiIDs: string[];
|
|
341
|
+
};
|
|
342
|
+
|
|
343
|
+
type RoiMapColInfo = {
|
|
344
|
+
col: number;
|
|
345
|
+
positivePixel: number;
|
|
346
|
+
negativePixel: number;
|
|
347
|
+
zeroPixel: number;
|
|
348
|
+
positiveRoi: number;
|
|
349
|
+
negativeRoi: number;
|
|
350
|
+
medianChange: number;
|
|
351
|
+
positiveRoiIDs: string[];
|
|
352
|
+
negativeRoiIDs: string[];
|
|
353
|
+
};
|
|
354
|
+
|
|
355
|
+
export declare class RoiMap {
|
|
356
|
+
parent: Image;
|
|
357
|
+
width: number;
|
|
358
|
+
height: number;
|
|
359
|
+
data: Int32Array;
|
|
360
|
+
negative: number;
|
|
361
|
+
positive: number;
|
|
362
|
+
|
|
363
|
+
constructor(parent: Image, data: Int32Array);
|
|
364
|
+
|
|
365
|
+
get total(): number;
|
|
366
|
+
get minMax(): { min: number; max: number };
|
|
367
|
+
get commonBorderLength(): number[];
|
|
368
|
+
|
|
369
|
+
mergeRoi(options?: {
|
|
370
|
+
algorithm?: string | Function;
|
|
371
|
+
minCommonBorderLength?: number;
|
|
372
|
+
maxCommonBorderLength?: number;
|
|
373
|
+
minCommonBorderRatio?: number;
|
|
374
|
+
maxCommonBorderRatio?: number;
|
|
375
|
+
}): void;
|
|
376
|
+
|
|
377
|
+
mergeRois(rois: number[]): void;
|
|
378
|
+
|
|
379
|
+
rowsInfo(): RoiMapRowInfo[];
|
|
380
|
+
|
|
381
|
+
colsInfo(): RoiMapColInfo[];
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
export declare class RoiLayer {
|
|
385
|
+
roiMap: RoiMap;
|
|
386
|
+
options: Record<string, any>;
|
|
387
|
+
roi: Roi[];
|
|
388
|
+
|
|
389
|
+
constructor(roiMap: RoiMap, options?: Record<string, any>);
|
|
390
|
+
|
|
391
|
+
createRoi(): Roi[];
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
export declare class Roi {
|
|
395
|
+
map: RoiMap;
|
|
396
|
+
id: number;
|
|
397
|
+
minX: number;
|
|
398
|
+
maxX: number;
|
|
399
|
+
minY: number;
|
|
400
|
+
maxY: number;
|
|
401
|
+
meanX: number;
|
|
402
|
+
meanY: number;
|
|
403
|
+
surface: number;
|
|
404
|
+
computed: this;
|
|
405
|
+
|
|
406
|
+
constructor(map: RoiMap, id: number);
|
|
407
|
+
|
|
408
|
+
getMask(options?: {
|
|
409
|
+
scale?: number;
|
|
410
|
+
kind?:
|
|
411
|
+
| 'contour'
|
|
412
|
+
| 'box'
|
|
413
|
+
| 'filled'
|
|
414
|
+
| 'center'
|
|
415
|
+
| 'mbr'
|
|
416
|
+
| 'hull'
|
|
417
|
+
| 'hullContour'
|
|
418
|
+
| 'mbrContour'
|
|
419
|
+
| 'feret'
|
|
420
|
+
| 'normal';
|
|
421
|
+
}): Image;
|
|
422
|
+
|
|
423
|
+
get height(): number;
|
|
424
|
+
get width(): number;
|
|
425
|
+
get center(): [number, number];
|
|
426
|
+
get ratio(): number;
|
|
427
|
+
get center(): [number, number];
|
|
428
|
+
get ratio(): number;
|
|
429
|
+
get width(): number;
|
|
430
|
+
get height(): number;
|
|
431
|
+
get externalIDs(): number[];
|
|
432
|
+
get externalLengths(): number[];
|
|
433
|
+
get borderIDs(): number[];
|
|
434
|
+
get borderIDs(): number[];
|
|
435
|
+
get borderLengths(): number[];
|
|
436
|
+
get boxIDs(): number[];
|
|
437
|
+
get internalIDs(): number[];
|
|
438
|
+
get box(): number;
|
|
439
|
+
get external(): number;
|
|
440
|
+
get holesInfo(): { number: number; surface: number };
|
|
441
|
+
get border(): number;
|
|
442
|
+
get contourMask(): Image;
|
|
443
|
+
get boxMask(): Image;
|
|
444
|
+
get mask(): Image;
|
|
445
|
+
get filledMask(): Image;
|
|
446
|
+
get centerMask(): Image;
|
|
447
|
+
get convexHull(): {
|
|
448
|
+
polyline: number[][];
|
|
449
|
+
surface: number;
|
|
450
|
+
perimeter: number;
|
|
451
|
+
};
|
|
452
|
+
get convexHullMask(): Image;
|
|
453
|
+
get convexHullFilledMask(): Image;
|
|
454
|
+
get mbr(): {
|
|
455
|
+
width: number;
|
|
456
|
+
height: number;
|
|
457
|
+
elongation: number;
|
|
458
|
+
aspectRatio: number;
|
|
459
|
+
surface: number;
|
|
460
|
+
perimeter: number;
|
|
461
|
+
rectangle: number[][];
|
|
462
|
+
};
|
|
463
|
+
get fillRatio(): number;
|
|
464
|
+
get feretDiameters(): {
|
|
465
|
+
min: number;
|
|
466
|
+
max: number;
|
|
467
|
+
minLine: number[][];
|
|
468
|
+
maxLine: number[][];
|
|
469
|
+
};
|
|
470
|
+
get eqpc(): number;
|
|
471
|
+
get perimeterInfo(): {
|
|
472
|
+
one: number;
|
|
473
|
+
two: number;
|
|
474
|
+
three: number;
|
|
475
|
+
four: number;
|
|
476
|
+
};
|
|
477
|
+
get perimeter(): number;
|
|
478
|
+
get ped(): number;
|
|
479
|
+
get feretMask(): Image;
|
|
480
|
+
get mbrMask(): Image;
|
|
481
|
+
get mbrFilledMask(): Image;
|
|
482
|
+
get points(): [[number, number]];
|
|
483
|
+
get maxLengthPoints(): [[number, number], [number, number]];
|
|
484
|
+
get maxLength(): number;
|
|
485
|
+
get roundness(): number;
|
|
486
|
+
get sphericality(): number;
|
|
487
|
+
get solidity(): number;
|
|
488
|
+
get angle(): number;
|
|
489
|
+
toJSON(): {
|
|
490
|
+
id: number;
|
|
491
|
+
minX: number;
|
|
492
|
+
maxX: number;
|
|
493
|
+
minY: number;
|
|
494
|
+
maxY: number;
|
|
495
|
+
meanX: number;
|
|
496
|
+
meanY: number;
|
|
497
|
+
height: number;
|
|
498
|
+
width: number;
|
|
499
|
+
surface: number;
|
|
500
|
+
mbrWidth: number;
|
|
501
|
+
mbrHeight: number;
|
|
502
|
+
mbrSurface: number;
|
|
503
|
+
eqpc: number;
|
|
504
|
+
ped: number;
|
|
505
|
+
feretDiameterMin: number;
|
|
506
|
+
feretDiameterMax: number;
|
|
507
|
+
aspectRatio: number;
|
|
508
|
+
fillRatio: number;
|
|
509
|
+
sphericity: number;
|
|
510
|
+
roundness: number;
|
|
511
|
+
solidity: number;
|
|
512
|
+
perimeter: number;
|
|
513
|
+
};
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
export class RoiManager {
|
|
517
|
+
private _image: Image;
|
|
518
|
+
private _options: {
|
|
519
|
+
label?: string;
|
|
520
|
+
[key: string]: any;
|
|
521
|
+
};
|
|
522
|
+
private _layers: { [key: string]: RoiLayer };
|
|
523
|
+
private _painted: Image | null;
|
|
524
|
+
|
|
525
|
+
constructor(image: Image, options?: { label?: string });
|
|
526
|
+
|
|
527
|
+
fromMaxima(options?: Record<string, any>): void;
|
|
528
|
+
fromPoints(points: number[][], options?: Record<string, any>): this;
|
|
529
|
+
putMap(map: number[], options?: Record<string, any>): this;
|
|
530
|
+
fromWaterShed(options?: Record<string, any>): void;
|
|
531
|
+
fromMask(mask: Image, options?: Record<string, any>): this;
|
|
532
|
+
fromMaskConnectedComponentLabelingAlgorithm(
|
|
533
|
+
mask: Image,
|
|
534
|
+
options?: Record<string, any>,
|
|
535
|
+
): this;
|
|
536
|
+
getMap(options?: Record<string, any>): RoiMap;
|
|
537
|
+
rowsInfo(options?: Record<string, any>): RoiMapRowInfo[];
|
|
538
|
+
colsInfo(options?: Record<string, any>): RoiMapColInfo[];
|
|
539
|
+
getRoiIds(options?: Record<string, any>): number[];
|
|
540
|
+
getRois(options?: {
|
|
541
|
+
label?: string;
|
|
542
|
+
positive?: boolean;
|
|
543
|
+
negative?: boolean;
|
|
544
|
+
minSurface?: number;
|
|
545
|
+
maxSurface?: number;
|
|
546
|
+
minWidth?: number;
|
|
547
|
+
maxWidth?: number;
|
|
548
|
+
minHeight?: number;
|
|
549
|
+
maxHeight?: number;
|
|
550
|
+
minRatio?: number;
|
|
551
|
+
maxRatio?: number;
|
|
552
|
+
}): Roi[];
|
|
553
|
+
getRoi(roiId: number, options?: { label?: string }): Roi;
|
|
554
|
+
getMasks(options?: Record<string, any>): Image[];
|
|
555
|
+
getAnalysisMasks(options?: { analysisProperty: string }): Image[];
|
|
556
|
+
getData(options?: Record<string, any>): number[];
|
|
557
|
+
paint(options?: {
|
|
558
|
+
labelProperty?: string;
|
|
559
|
+
analysisProperty?: string;
|
|
560
|
+
analysisProperty?: string;
|
|
561
|
+
labelProperty?: string;
|
|
562
|
+
analysisProperty?: string;
|
|
563
|
+
labelProperty?: string;
|
|
564
|
+
pixelSize?: number;
|
|
565
|
+
unit?: string;
|
|
566
|
+
}): Image;
|
|
567
|
+
getMask(options?: Record<string, any>): Image;
|
|
568
|
+
resetPainted(options?: { image?: Image }): void;
|
|
569
|
+
mergeRoi(options?: {
|
|
570
|
+
algorithm?: string;
|
|
571
|
+
minCommonBorderLength?: number;
|
|
572
|
+
maxCommonBorderLength?: number;
|
|
573
|
+
minCommonBorderRatio?: number;
|
|
574
|
+
maxCommonBorderRatio?: number;
|
|
575
|
+
}): this;
|
|
576
|
+
mergeRois(roiIds: number[], options?: Record<string, any>): this;
|
|
577
|
+
findCorrespondingRoi(roiMap: number[], options?: Record<string, any>): Roi[];
|
|
578
|
+
}
|
|
332
579
|
|
|
333
580
|
export interface ImageConstructorOptions {
|
|
334
581
|
width?: number;
|
|
@@ -365,6 +612,11 @@ export interface GaussianFilterOptions {
|
|
|
365
612
|
algorithm?: ConvolutionAlgorithm;
|
|
366
613
|
}
|
|
367
614
|
|
|
615
|
+
export interface InsertOptions {
|
|
616
|
+
x?: number;
|
|
617
|
+
y?: number;
|
|
618
|
+
inPlace?: boolean;
|
|
619
|
+
}
|
|
368
620
|
export interface ConvolutionOptions {
|
|
369
621
|
channels?: SelectedChannels;
|
|
370
622
|
bitDepth?: BitDepth;
|
|
@@ -9,12 +9,9 @@ exports.createWriteStream = createWriteStream;
|
|
|
9
9
|
exports.env = void 0;
|
|
10
10
|
exports.fetchBinary = fetchBinary;
|
|
11
11
|
exports.writeFile = writeFile;
|
|
12
|
-
const env = 'browser';
|
|
13
|
-
exports.
|
|
14
|
-
const
|
|
15
|
-
exports.ImageData = ImageData;
|
|
16
|
-
const DOMImage = self.Image;
|
|
17
|
-
exports.DOMImage = DOMImage;
|
|
12
|
+
const env = exports.env = 'browser';
|
|
13
|
+
const ImageData = exports.ImageData = self.ImageData;
|
|
14
|
+
const DOMImage = exports.DOMImage = self.Image;
|
|
18
15
|
function createCanvas(width, height) {
|
|
19
16
|
let canvas = self.document.createElement('canvas');
|
|
20
17
|
canvas.width = width;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = extend;
|
|
7
7
|
var _background = _interopRequireDefault(require("./process/background"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
function extend(Worker) {
|
|
10
10
|
Worker.extendMethod('background', _background.default);
|
|
11
11
|
}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../../../image/Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
const defaultOptions = {
|
|
10
10
|
regression: {
|
|
11
11
|
kernelType: 'polynomial',
|
|
@@ -83,5 +83,4 @@ const background = {
|
|
|
83
83
|
run,
|
|
84
84
|
work
|
|
85
85
|
};
|
|
86
|
-
var _default = background;
|
|
87
|
-
exports.default = _default;
|
|
86
|
+
var _default = exports.default = background;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _webWorkerManager = _interopRequireDefault(require("web-worker-manager"));
|
|
8
8
|
var _extend = _interopRequireDefault(require("./extend"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
class Worker {
|
|
11
11
|
constructor() {
|
|
12
12
|
this._url = null;
|
|
@@ -55,5 +55,4 @@ class Worker {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
(0, _extend.default)(Worker);
|
|
58
|
-
var _default = new Worker();
|
|
59
|
-
exports.default = _default;
|
|
58
|
+
var _default = exports.default = new Worker();
|
package/lib/image/Image.js
CHANGED
|
@@ -16,7 +16,7 @@ var _valueMethods = _interopRequireDefault(require("./core/valueMethods"));
|
|
|
16
16
|
var _extend2 = _interopRequireDefault(require("./extend"));
|
|
17
17
|
var _getImageParameters = _interopRequireDefault(require("./internal/getImageParameters"));
|
|
18
18
|
var _manager = _interopRequireDefault(require("./roi/manager"));
|
|
19
|
-
function _interopRequireDefault(
|
|
19
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
20
|
const objectToString = Object.prototype.toString;
|
|
21
21
|
|
|
22
22
|
/**
|
|
@@ -325,7 +325,6 @@ class Image {
|
|
|
325
325
|
this.isClamped = this.bitDepth < 32;
|
|
326
326
|
this.borderSizes = [0, 0]; // when a filter creates a border, it may have impact on future processing like Roi
|
|
327
327
|
}
|
|
328
|
-
|
|
329
328
|
get [Symbol.toStringTag]() {
|
|
330
329
|
return 'IJSImage';
|
|
331
330
|
}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = getColorHistogram;
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof Image
|
|
11
11
|
* @instance
|
|
@@ -7,7 +7,7 @@ exports.getHistogram = getHistogram;
|
|
|
7
7
|
exports.getHistograms = getHistograms;
|
|
8
8
|
var _isInteger = _interopRequireDefault(require("is-integer"));
|
|
9
9
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* Returns a histogram for the specified channel
|
|
13
13
|
* @memberof Image
|
package/lib/image/compute/max.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = max;
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Returns an array with the maximal value of each channel
|
|
11
11
|
* @memberof Image
|
package/lib/image/compute/min.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = min;
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Returns an array with the minimal value of each channel
|
|
11
11
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = minimalBoundingRectangle;
|
|
7
7
|
var _points = require("../../util/points");
|
|
8
8
|
var _monotoneChainConvexHull = _interopRequireDefault(require("./monotoneChainConvexHull"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Computes the minimum bounding box around a binary image
|
|
12
12
|
* https://www.researchgate.net/profile/Lennert_Den_Boer2/publication/303783472_A_Fast_Algorithm_for_Generating_a_Minimal_Bounding_Rectangle/links/5751a14108ae6807fafb2aa5.pdf
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = monotoneChainConvexHull;
|
|
7
7
|
var _monotoneChainConvexHull = _interopRequireDefault(require("monotone-chain-convex-hull"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Returns the convex hull of a binary image
|
|
11
11
|
* @memberof Image
|
package/lib/image/compute/sum.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = sum;
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Returns an array with the sum of the values of each channel
|
|
11
11
|
* @memberof Image
|
|
@@ -20,10 +20,9 @@ Object.defineProperty(exports, "writeFile", {
|
|
|
20
20
|
});
|
|
21
21
|
var _fs = require("fs");
|
|
22
22
|
const message = 'requires the canvas library. Install it with `npm install canvas@next`.';
|
|
23
|
-
let createCanvas
|
|
24
|
-
exports.
|
|
25
|
-
exports.
|
|
26
|
-
exports.createCanvas = createCanvas;
|
|
23
|
+
let createCanvas = exports.createCanvas = void 0,
|
|
24
|
+
DOMImage = exports.DOMImage = void 0,
|
|
25
|
+
ImageData = exports.ImageData = void 0;
|
|
27
26
|
try {
|
|
28
27
|
// eslint-disable-next-line import/no-unresolved
|
|
29
28
|
const canvas = require('canvas');
|
|
@@ -41,8 +40,7 @@ try {
|
|
|
41
40
|
throw new Error(`ImageData ${message}`);
|
|
42
41
|
};
|
|
43
42
|
}
|
|
44
|
-
const env = 'node';
|
|
45
|
-
exports.env = env;
|
|
43
|
+
const env = exports.env = 'node';
|
|
46
44
|
function fetchBinary(path) {
|
|
47
45
|
return new Promise(function (resolve, reject) {
|
|
48
46
|
(0, _fs.readFile)(path, function (err, data) {
|
package/lib/image/core/extend.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.extendMethod = extendMethod;
|
|
|
7
7
|
exports.extendProperty = extendProperty;
|
|
8
8
|
var _hasOwn = _interopRequireDefault(require("has-own"));
|
|
9
9
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
let computedPropertyDescriptor = {
|
|
12
12
|
configurable: true,
|
|
13
13
|
enumerable: false,
|
package/lib/image/core/kind.js
CHANGED
|
@@ -9,8 +9,8 @@ exports.getTheoreticalPixelArraySize = getTheoreticalPixelArraySize;
|
|
|
9
9
|
exports.verifyKindDefinition = verifyKindDefinition;
|
|
10
10
|
var ColorModel = _interopRequireWildcard(require("../model/model"));
|
|
11
11
|
var Kind = _interopRequireWildcard(require("./kindNames"));
|
|
12
|
-
function _getRequireWildcardCache(
|
|
13
|
-
function _interopRequireWildcard(
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
14
|
const kinds = {};
|
|
15
15
|
kinds[Kind.BINARY] = {
|
|
16
16
|
components: 1,
|
|
@@ -6,17 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.RGBA = exports.RGB = exports.GREYA = exports.GREY = exports.CMYKA = exports.CMYK = exports.BINARY = void 0;
|
|
7
7
|
// Shortcuts for common image kinds
|
|
8
8
|
|
|
9
|
-
const BINARY = 'BINARY';
|
|
10
|
-
exports.
|
|
11
|
-
const
|
|
12
|
-
exports.
|
|
13
|
-
const
|
|
14
|
-
exports.
|
|
15
|
-
const
|
|
16
|
-
exports.RGB = RGB;
|
|
17
|
-
const RGBA = 'RGBA';
|
|
18
|
-
exports.RGBA = RGBA;
|
|
19
|
-
const CMYK = 'CMYK';
|
|
20
|
-
exports.CMYK = CMYK;
|
|
21
|
-
const CMYKA = 'CMYKA';
|
|
22
|
-
exports.CMYKA = CMYKA;
|
|
9
|
+
const BINARY = exports.BINARY = 'BINARY';
|
|
10
|
+
const GREY = exports.GREY = 'GREY';
|
|
11
|
+
const GREYA = exports.GREYA = 'GREYA';
|
|
12
|
+
const RGB = exports.RGB = 'RGB';
|
|
13
|
+
const RGBA = exports.RGBA = 'RGBA';
|
|
14
|
+
const CMYK = exports.CMYK = 'CMYK';
|
|
15
|
+
const CMYKA = exports.CMYKA = 'CMYKA';
|
package/lib/image/core/load.js
CHANGED
|
@@ -14,7 +14,7 @@ var _base = require("../../util/base64");
|
|
|
14
14
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
15
15
|
var _model = require("../model/model");
|
|
16
16
|
var _environment = require("./environment");
|
|
17
|
-
function _interopRequireDefault(
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
const isDataURL = /^data:[a-z]+\/(?:[a-z]+);base64,/;
|
|
19
19
|
|
|
20
20
|
/**
|
package/lib/image/extend.js
CHANGED
|
@@ -85,7 +85,7 @@ var _relativePosition = _interopRequireDefault(require("./compute/relativePositi
|
|
|
85
85
|
var _countAlphaPixels = _interopRequireDefault(require("./compute/countAlphaPixels"));
|
|
86
86
|
var _monotoneChainConvexHull = _interopRequireDefault(require("./compute/monotoneChainConvexHull"));
|
|
87
87
|
var _minimalBoundingRectangle = _interopRequireDefault(require("./compute/minimalBoundingRectangle"));
|
|
88
|
-
function _interopRequireDefault(
|
|
88
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
89
89
|
/* eslint-disable import/order */
|
|
90
90
|
|
|
91
91
|
// filters
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = background;
|
|
7
7
|
var _mlRegression = require("ml-regression");
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* @memberof Image
|
|
12
12
|
* @instance
|
|
@@ -5,11 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = gradientFilter;
|
|
7
7
|
var _convolution = _interopRequireDefault(require("../operator/convolution"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Direction of a gradient filter
|
|
11
11
|
* @typedef {('x'|'y'|'xy')} GradientDirection
|
|
12
12
|
*/
|
|
13
|
+
|
|
13
14
|
/**
|
|
14
15
|
* @memberof Image
|
|
15
16
|
* @instance
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = hypotenuse;
|
|
7
7
|
var _channel = require("../../util/channel");
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Calculate a new image that is the hypotenuse between the current image and the otherImage.
|
|
12
12
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = invert;
|
|
7
7
|
var _copyAlphaChannel = _interopRequireDefault(require("../internal/copyAlphaChannel"));
|
|
8
8
|
var _getOutputImage = require("../internal/getOutputImage");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Invert the colors of an image
|
|
12
12
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = level;
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
8
|
var _channel = require("../../util/channel");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Level the image for by default have the minimal and maximal values.
|
|
12
12
|
* @memberof Image
|
|
@@ -7,7 +7,7 @@ exports.default = medianFilter;
|
|
|
7
7
|
var _medianQuickselect = _interopRequireDefault(require("median-quickselect"));
|
|
8
8
|
var _channel = require("../../util/channel");
|
|
9
9
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* Each pixel of the image becomes the median of the neighbor pixels.
|
|
13
13
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = scharrFilter;
|
|
7
7
|
var _kernels = require("../../util/kernels");
|
|
8
8
|
var _gradientFilter = _interopRequireDefault(require("./gradientFilter"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Applies the Scharr operator.
|
|
12
12
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = sobelFilter;
|
|
7
7
|
var _kernels = require("../../util/kernels");
|
|
8
8
|
var _gradientFilter = _interopRequireDefault(require("./gradientFilter"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Applies the Sobel operator.
|
|
12
12
|
* @memberof Image
|
|
@@ -27,12 +27,11 @@ function checkChannel(image, channel) {
|
|
|
27
27
|
/**
|
|
28
28
|
* @typedef {('nearestNeighbor'|'bilinear')} InterpolationAlgorithm
|
|
29
29
|
*/
|
|
30
|
-
const validInterpolations = {
|
|
30
|
+
const validInterpolations = exports.validInterpolations = {
|
|
31
31
|
nearestneighbor: 'nearestNeighbor',
|
|
32
32
|
nearestneighbour: 'nearestNeighbor',
|
|
33
33
|
bilinear: 'bilinear'
|
|
34
34
|
};
|
|
35
|
-
exports.validInterpolations = validInterpolations;
|
|
36
35
|
function checkInterpolation(interpolation) {
|
|
37
36
|
if (typeof interpolation !== 'string') {
|
|
38
37
|
throw new TypeError('interpolation must be a string');
|
|
@@ -7,7 +7,7 @@ exports.getOutputImage = getOutputImage;
|
|
|
7
7
|
exports.getOutputImageOrInPlace = getOutputImageOrInPlace;
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
9
|
var _getImageParameters = _interopRequireDefault(require("./getImageParameters"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* Use this function to support getting the output image of an algorithm from user-supplied
|
|
13
13
|
* options.
|