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/lib/image/model/model.js
CHANGED
|
@@ -9,13 +9,8 @@ exports.RGB = exports.HSV = exports.HSL = exports.GREY = exports.CMYK = void 0;
|
|
|
9
9
|
* @typedef {('GREY'|'RGB'|'HSL'|'HSV'|'CMYK')} ColorModel
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
const GREY = 'GREY';
|
|
13
|
-
exports.
|
|
14
|
-
const
|
|
15
|
-
exports.
|
|
16
|
-
const
|
|
17
|
-
exports.HSL = HSL;
|
|
18
|
-
const HSV = 'HSV';
|
|
19
|
-
exports.HSV = HSV;
|
|
20
|
-
const CMYK = 'CMYK';
|
|
21
|
-
exports.CMYK = CMYK;
|
|
12
|
+
const GREY = exports.GREY = 'GREY';
|
|
13
|
+
const RGB = exports.RGB = 'RGB';
|
|
14
|
+
const HSL = exports.HSL = 'HSL';
|
|
15
|
+
const HSV = exports.HSV = 'HSV';
|
|
16
|
+
const CMYK = exports.CMYK = 'CMYK';
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = dilate;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Dilatation is one of two fundamental operations (with erosion) in morphological
|
|
11
11
|
* image processing from which all other morphological operations are based (from Wikipedia).
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = erode;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Erosion is one of two fundamental operations (with dilatation) in morphological
|
|
11
11
|
* image processing from which all other morphological operations are based (from Wikipedia).
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = cannyEdge;
|
|
7
7
|
var _cannyEdgeDetector = _interopRequireDefault(require("canny-edge-detector"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof Image
|
|
11
11
|
* @instance
|
|
@@ -11,7 +11,7 @@ var _Image = _interopRequireDefault(require("../Image"));
|
|
|
11
11
|
var _clamp = require("../internal/clamp");
|
|
12
12
|
var _convolutionSeparable = _interopRequireDefault(require("./convolutionSeparable"));
|
|
13
13
|
var _getSeparatedKernel = _interopRequireDefault(require("./getSeparatedKernel"));
|
|
14
|
-
function _interopRequireDefault(
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
15
|
/**
|
|
16
16
|
* @memberof Image
|
|
17
17
|
* @instance
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = extract;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Extracts a part of an original image based on a mask. By default the mask may contain
|
|
11
11
|
* a relative position and this part of the original image will be extracted.
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = floodFill;
|
|
7
7
|
var _fastList = _interopRequireDefault(require("fast-list"));
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
function floodFill(options = {}) {
|
|
11
11
|
const {
|
|
12
12
|
x = 0,
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = paintPoints;
|
|
7
7
|
var _Shape = _interopRequireDefault(require("../../util/Shape"));
|
|
8
8
|
var _color = require("../../util/color");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Paint pixels on the current image.
|
|
12
12
|
* @memberof Image
|
package/lib/image/roi/Roi.js
CHANGED
|
@@ -12,11 +12,12 @@ var _Image = _interopRequireDefault(require("../Image"));
|
|
|
12
12
|
var _minimalBoundingRectangle = _interopRequireDefault(require("../compute/minimalBoundingRectangle"));
|
|
13
13
|
var KindNames = _interopRequireWildcard(require("../core/kindNames"));
|
|
14
14
|
var _feretDiameters = _interopRequireDefault(require("./feretDiameters"));
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
17
|
-
function _interopRequireDefault(
|
|
15
|
+
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); }
|
|
16
|
+
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; }
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
// Many measurements:
|
|
19
19
|
// https://www.sympatec.com/en/particle-measurement/glossary/particle-shape/#
|
|
20
|
+
|
|
20
21
|
/**
|
|
21
22
|
* Class to manage Region Of Interests
|
|
22
23
|
* @class Roi
|
|
@@ -95,7 +96,6 @@ class Roi {
|
|
|
95
96
|
throw new Error('Roi mean not implemented yet');
|
|
96
97
|
// return [this.meanX,this.meanY];
|
|
97
98
|
}
|
|
98
|
-
|
|
99
99
|
get center() {
|
|
100
100
|
if (!this.computed.center) {
|
|
101
101
|
this.computed.center = [this.width / 2 >> 0, this.height / 2 >> 0];
|
|
@@ -337,7 +337,6 @@ class Roi {
|
|
|
337
337
|
} // by default a pixel is to 0 so no problems, it will be transparent
|
|
338
338
|
}
|
|
339
339
|
}
|
|
340
|
-
|
|
341
340
|
this.computed.filledMask = img;
|
|
342
341
|
}
|
|
343
342
|
return this.computed.filledMask;
|
|
@@ -733,7 +732,6 @@ function getBoxIDs(roi) {
|
|
|
733
732
|
}
|
|
734
733
|
return Array.from(surroundingIDs); // the selection takes the whole rectangle
|
|
735
734
|
}
|
|
736
|
-
|
|
737
735
|
function getBox(roi) {
|
|
738
736
|
let total = 0;
|
|
739
737
|
let roiMap = roi.map;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _Roi = _interopRequireDefault(require("./Roi"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* A layer that is caracterised by a {@link RoiMap} and that will
|
|
11
11
|
* generated automatically the corresponding ROI.
|
package/lib/image/roi/RoiMap.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _commonBorderLength = _interopRequireDefault(require("./util/commonBorderLength"));
|
|
8
8
|
var _mergeRoi = _interopRequireDefault(require("./util/mergeRoi"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* The roiMap is an array of the size of the original image data that contains
|
|
12
12
|
* positive and negative numbers. When the number is common, it corresponds
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = fromMask;
|
|
7
7
|
var _RoiMap = _interopRequireDefault(require("../RoiMap"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof RoiManager
|
|
11
11
|
* @instance
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = fromMaskConnectedComponentLabelingAlgorithm;
|
|
7
7
|
var _mlDisjointSet = _interopRequireDefault(require("ml-disjoint-set"));
|
|
8
8
|
var _RoiMap = _interopRequireDefault(require("../RoiMap"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/*
|
|
11
11
|
This algorithm is nice and is therefore kept here
|
|
12
12
|
However it seems to be slower than the get mask and
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = fromMaxima;
|
|
7
7
|
var _RoiMap = _interopRequireDefault(require("../RoiMap"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof RoiManager
|
|
11
11
|
* @instance
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = fromPoints;
|
|
7
7
|
var _Shape = _interopRequireDefault(require("../../../util/Shape"));
|
|
8
8
|
var _RoiMap = _interopRequireDefault(require("../RoiMap"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* @memberof RoiManager
|
|
12
12
|
* @instance
|
|
@@ -7,7 +7,7 @@ exports.default = fromWaterShed;
|
|
|
7
7
|
var _jsPriorityQueue = _interopRequireDefault(require("js-priority-queue"));
|
|
8
8
|
var _dxdy = require("../../../util/dxdy.js");
|
|
9
9
|
var _RoiMap = _interopRequireDefault(require("../RoiMap"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* This method allows to create a ROIMap using the water shed algorithm. By default this algorithm
|
|
13
13
|
* will fill the holes and therefore the lowest value of the image (black zones).
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = feretDiameters;
|
|
7
7
|
var _points = require("../../util/points");
|
|
8
8
|
var _monotoneChainConvexHull = _interopRequireDefault(require("../compute/monotoneChainConvexHull"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Computes the Feret diameters
|
|
12
12
|
* https://www.sympatec.com/en/particle-measurement/glossary/particle-shape/#
|
package/lib/image/roi/manager.js
CHANGED
|
@@ -14,7 +14,7 @@ var _fromMaskConnectedComponentLabelingAlgorithm = _interopRequireDefault(requir
|
|
|
14
14
|
var _fromMaxima = _interopRequireDefault(require("./creator/fromMaxima"));
|
|
15
15
|
var _fromPoints = _interopRequireDefault(require("./creator/fromPoints"));
|
|
16
16
|
var _fromWaterShed = _interopRequireDefault(require("./creator/fromWaterShed"));
|
|
17
|
-
function _interopRequireDefault(
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
18
|
/**
|
|
19
19
|
* A manager of Regions of Interest. A RoiManager is related to a specific Image
|
|
20
20
|
* and may contain multiple layers. Each layer is characterized by a label whose is
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = cmyk;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _model = require("../model/model");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
// http://www.easyrgb.com/index.php?X=MATH&H=18#text18
|
|
11
11
|
// check rgbToHsl : https://bgrins.github.io/TinyColor/docs/tinycolor.html
|
|
12
12
|
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = colorDepth;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Change the image color depth.
|
|
11
11
|
* The color depth is the number of bits that is assigned to each point of a channel.
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = crop;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Crops the image
|
|
11
11
|
* @memberof Image
|
|
@@ -16,6 +16,7 @@ var _greyAlgorithms = require("./greyAlgorithms");
|
|
|
16
16
|
* @param {number} blue - value of the blue channel
|
|
17
17
|
* @return {number} value of the grey channel
|
|
18
18
|
*/
|
|
19
|
+
|
|
19
20
|
/**
|
|
20
21
|
* Converts the current image to greyscale.
|
|
21
22
|
* The source image has to be RGB.
|
|
@@ -48,7 +49,6 @@ function grey(options = {}) {
|
|
|
48
49
|
if (this.components === 1) {
|
|
49
50
|
algorithm = 'red'; // actually we just take the first channel if it is a grey image
|
|
50
51
|
}
|
|
51
|
-
|
|
52
52
|
keepAlpha &= this.alpha;
|
|
53
53
|
mergeAlpha &= this.alpha;
|
|
54
54
|
if (keepAlpha) {
|
|
@@ -8,7 +8,7 @@ exports.names = exports.methods = void 0;
|
|
|
8
8
|
* @typedef {('luma709'|'luma601'|'maximum'|'minimum'|'average'|'minmax'|'red'|'green'|'blue'|'cyan'|'magenta'|'yellow'|'black'|'hue'|'saturation'|'lightness')} GreyAlgorithm
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
const methods = {
|
|
11
|
+
const methods = exports.methods = {
|
|
12
12
|
luma709(red, green, blue) {
|
|
13
13
|
// sRGB
|
|
14
14
|
// return red * 0.2126 + green * 0.7152 + blue * 0.0722;
|
|
@@ -96,7 +96,6 @@ const methods = {
|
|
|
96
96
|
return (max + min) / 2;
|
|
97
97
|
}
|
|
98
98
|
};
|
|
99
|
-
exports.methods = methods;
|
|
100
99
|
Object.defineProperty(methods, 'luminosity', {
|
|
101
100
|
enumerable: false,
|
|
102
101
|
value: methods.lightness
|
|
@@ -117,8 +116,7 @@ Object.defineProperty(methods, 'brightness', {
|
|
|
117
116
|
enumerable: false,
|
|
118
117
|
value: methods.maximum
|
|
119
118
|
});
|
|
120
|
-
const names = {};
|
|
121
|
-
exports.names = names;
|
|
119
|
+
const names = exports.names = {};
|
|
122
120
|
Object.keys(methods).forEach(name => {
|
|
123
121
|
names[name] = name;
|
|
124
122
|
});
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = hsl;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _model = require("../model/model");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
// http://www.easyrgb.com/index.php?X=MATH&H=18#text18
|
|
11
11
|
// check rgbToHsl : https://bgrins.github.io/TinyColor/docs/tinycolor.html
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = hsv;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _model = require("../model/model");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
// based on https://bgrins.github.io/TinyColor/docs/tinycolor.html
|
|
11
11
|
|
|
12
12
|
/**
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = insert;
|
|
7
7
|
var _getImageParameters = _interopRequireDefault(require("../internal/getImageParameters"));
|
|
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
|
* Inserts an image within another image.
|
|
12
12
|
* @memberof Image
|
|
@@ -7,7 +7,7 @@ exports.default = mask;
|
|
|
7
7
|
var _converter = require("../../../util/converter");
|
|
8
8
|
var _Image = _interopRequireDefault(require("../../Image"));
|
|
9
9
|
var _getThreshold = _interopRequireDefault(require("../../utility/getThreshold"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
const THRESHOLD = 'threshold';
|
|
12
12
|
|
|
13
13
|
/**
|
|
@@ -19,12 +19,12 @@ var _renyiEntropy = _interopRequireDefault(require("./renyiEntropy.js"));
|
|
|
19
19
|
var _shanbhag = _interopRequireDefault(require("./shanbhag"));
|
|
20
20
|
var _triangle = _interopRequireDefault(require("./triangle"));
|
|
21
21
|
var _yen = _interopRequireDefault(require("./yen"));
|
|
22
|
-
function _interopRequireDefault(
|
|
22
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
23
23
|
/**
|
|
24
24
|
* @typedef {('huang'|'intermodes'|'isodata'|'li'|'maxentropy'|'mean'|'minerror'|'minimum'|'moments'|'otsu'|'percentile'|'renyientropy'|'shanbhag'|'triangle'|'yen')} ThresholdAlgorithm
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
const methods = {
|
|
27
|
+
const methods = exports.methods = {
|
|
28
28
|
huang: _huang.default,
|
|
29
29
|
intermodes: _intermodes.default,
|
|
30
30
|
isodata: _isodata.default,
|
|
@@ -41,9 +41,7 @@ const methods = {
|
|
|
41
41
|
triangle: _triangle.default,
|
|
42
42
|
yen: _yen.default
|
|
43
43
|
};
|
|
44
|
-
exports.
|
|
45
|
-
const names = {};
|
|
46
|
-
exports.names = names;
|
|
44
|
+
const names = exports.names = {};
|
|
47
45
|
Object.keys(methods).forEach(name => {
|
|
48
46
|
names[name] = name;
|
|
49
47
|
});
|
|
@@ -7,7 +7,7 @@ exports.default = pad;
|
|
|
7
7
|
var _newArray = _interopRequireDefault(require("new-array"));
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
9
|
var _copy = _interopRequireDefault(require("../internal/copy"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* @memberof Image
|
|
13
13
|
* @instance
|
|
@@ -8,7 +8,7 @@ var _converter = require("../../../util/converter");
|
|
|
8
8
|
var _Image = _interopRequireDefault(require("../../Image"));
|
|
9
9
|
var _checks = require("../../internal/checks");
|
|
10
10
|
var _nearestNeighbor = _interopRequireDefault(require("./nearestNeighbor"));
|
|
11
|
-
function _interopRequireDefault(
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
/**
|
|
13
13
|
* Resize an image
|
|
14
14
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = rgba;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _model = require("../model/model");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Make a copy of the current image and convert to RGBA
|
|
12
12
|
* The source image must have RGB color model, 8 or 16 bits.
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = rgba8;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Make a copy of the current image and convert to RGBA 8 bits
|
|
11
11
|
* Those images are the one that are displayed in a canvas.
|
|
@@ -8,7 +8,7 @@ exports.rotateLeft = rotateLeft;
|
|
|
8
8
|
exports.rotateRight = rotateRight;
|
|
9
9
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
10
10
|
var _rotateFree = _interopRequireDefault(require("./rotateFree"));
|
|
11
|
-
function _interopRequireDefault(
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
/**
|
|
13
13
|
* Rotates an image.
|
|
14
14
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = rotateFree;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _checks = require("../internal/checks");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
function rotateFree(degrees, options = {}) {
|
|
11
11
|
const {
|
|
12
12
|
interpolation = _checks.validInterpolations.nearestneighbor,
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = warpingFourPoints;
|
|
7
7
|
var _mlMatrix = require("ml-matrix");
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
// REFERENCES :
|
|
11
11
|
// https://stackoverflow.com/questions/38285229/calculating-aspect-ratio-of-perspective-transform-destination-image/38402378#38402378
|
|
12
12
|
// http://www.corrmap.com/features/homography_transformation.php
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = combineChannels;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
8
8
|
var _model = require("../model/model");
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
/**
|
|
11
11
|
* Create a new grey Image by combining the channels of the current image.
|
|
12
12
|
* @memberof Image
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = getBestMatch;
|
|
7
7
|
var _matrix = _interopRequireDefault(require("../../util/matrix"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Try to match the current pictures with another one
|
|
11
11
|
* @memberof Image
|
|
@@ -7,7 +7,7 @@ exports.default = getChannel;
|
|
|
7
7
|
var _channel = require("../../util/channel");
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
9
|
var _model = require("../model/model");
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* Create a grey image based on the selected channel
|
|
13
13
|
* @memberof Image
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = getSimilarity;
|
|
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
|
* Try to match the current pictures with another one. If normalize we normalize separately the 2 images.
|
|
12
12
|
* @memberof Image
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = setBorder;
|
|
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
|
* This method will change the border
|
|
11
11
|
* @memberof Image
|
|
@@ -7,7 +7,7 @@ exports.default = split;
|
|
|
7
7
|
var _Stack = _interopRequireDefault(require("../../stack/Stack"));
|
|
8
8
|
var _Image = _interopRequireDefault(require("../Image"));
|
|
9
9
|
var _model = require("../model/model");
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
/**
|
|
12
12
|
* @memberof Image
|
|
13
13
|
* @instance
|
package/lib/index.js
CHANGED
|
@@ -43,11 +43,10 @@ exports.Kernel = Kernel;
|
|
|
43
43
|
var _Stack = _interopRequireDefault(require("./stack/Stack"));
|
|
44
44
|
var _Shape = _interopRequireDefault(require("./util/Shape"));
|
|
45
45
|
var _worker = _interopRequireDefault(require("./worker/worker"));
|
|
46
|
-
function _getRequireWildcardCache(
|
|
47
|
-
function _interopRequireWildcard(
|
|
48
|
-
function _interopRequireDefault(
|
|
49
|
-
const Static = {
|
|
46
|
+
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); }
|
|
47
|
+
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; }
|
|
48
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
49
|
+
const Static = exports.Static = {
|
|
50
50
|
grey: _greyAlgorithms.names,
|
|
51
51
|
threshold: _thresholdAlgorithms.names
|
|
52
|
-
};
|
|
53
|
-
exports.Static = Static;
|
|
52
|
+
};
|
package/lib/stack/Stack.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _hasOwn = _interopRequireDefault(require("has-own"));
|
|
8
8
|
var _Image = _interopRequireDefault(require("../image/Image"));
|
|
9
9
|
var _extend = _interopRequireDefault(require("./extend"));
|
|
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/stack/extend.js
CHANGED
|
@@ -13,7 +13,7 @@ var _histograms = _interopRequireDefault(require("./compute/histograms"));
|
|
|
13
13
|
var _averageImage = _interopRequireDefault(require("./utility/averageImage"));
|
|
14
14
|
var _maxImage = _interopRequireDefault(require("./utility/maxImage"));
|
|
15
15
|
var _minImage = _interopRequireDefault(require("./utility/minImage"));
|
|
16
|
-
function _interopRequireDefault(
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
17
|
/* eslint-disable import/order */
|
|
18
18
|
|
|
19
19
|
function extend(Stack) {
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = matchAndCrop;
|
|
7
7
|
var _Stack = _interopRequireDefault(require("../Stack"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
// TODO this code seems buggy if it is not 0,0
|
|
10
10
|
/**
|
|
11
11
|
* We will try to move a set of images in order to get only the best common part of them.
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = averageImage;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../../image/Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof Stack
|
|
11
11
|
* @instance
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = maxImage;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../../image/Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof Stack
|
|
11
11
|
* @instance
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = minImage;
|
|
7
7
|
var _Image = _interopRequireDefault(require("../../image/Image"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* @memberof Stack
|
|
11
11
|
* @instance
|
package/lib/util/Shape.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _Image = _interopRequireDefault(require("../image/Image"));
|
|
8
8
|
var _kindNames = require("../image/core/kindNames");
|
|
9
9
|
var _zerosMatrix = _interopRequireDefault(require("./zerosMatrix"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
const cross = [[0, 0, 1, 0, 0], [0, 0, 1, 0, 0], [1, 1, 1, 1, 1], [0, 0, 1, 0, 0], [0, 0, 1, 0, 0]];
|
|
12
12
|
const smallCross = [[0, 1, 0], [1, 1, 1], [0, 1, 0]];
|
|
13
13
|
|