image-js 1.2.0 → 1.4.0
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/dist/image-js.esm.js +1134 -6568
- package/dist/image-js.esm.js.map +1 -1
- package/dist/image-js.esm.min.js +2 -2
- package/dist/image-js.esm.min.js.map +1 -1
- package/dist/image-js.umd.js +1135 -6567
- package/dist/image-js.umd.js.map +1 -1
- package/dist/image-js.umd.min.js +2 -2
- package/dist/image-js.umd.min.js.map +1 -1
- package/dist-types/image-js.d.ts +77 -13
- package/lib/Image.d.ts +18 -2
- package/lib/Image.d.ts.map +1 -1
- package/lib/Image.js +38 -1
- package/lib/Image.js.map +1 -1
- package/lib/featureMatching/index.d.ts +2 -0
- package/lib/featureMatching/index.d.ts.map +1 -1
- package/lib/featureMatching/index.js +2 -0
- package/lib/featureMatching/index.js.map +1 -1
- package/lib/featureMatching/keypoints/getEigenvaluesForScore.d.ts +11 -0
- package/lib/featureMatching/keypoints/getEigenvaluesForScore.d.ts.map +1 -0
- package/lib/featureMatching/keypoints/getEigenvaluesForScore.js +43 -0
- package/lib/featureMatching/keypoints/getEigenvaluesForScore.js.map +1 -0
- package/lib/featureMatching/keypoints/getFastKeypoints.d.ts +3 -2
- package/lib/featureMatching/keypoints/getFastKeypoints.d.ts.map +1 -1
- package/lib/featureMatching/keypoints/getFastKeypoints.js +14 -7
- package/lib/featureMatching/keypoints/getFastKeypoints.js.map +1 -1
- package/lib/featureMatching/keypoints/getHarrisScore.d.ts +2 -2
- package/lib/featureMatching/keypoints/getHarrisScore.d.ts.map +1 -1
- package/lib/featureMatching/keypoints/getHarrisScore.js +5 -37
- package/lib/featureMatching/keypoints/getHarrisScore.js.map +1 -1
- package/lib/featureMatching/keypoints/getOrientedFastKeypoints.d.ts +1 -1
- package/lib/featureMatching/keypoints/getOrientedFastKeypoints.d.ts.map +1 -1
- package/lib/featureMatching/keypoints/getOrientedFastKeypoints.js.map +1 -1
- package/lib/featureMatching/keypoints/getShiTomasiScore.d.ts +24 -0
- package/lib/featureMatching/keypoints/getShiTomasiScore.d.ts.map +1 -0
- package/lib/featureMatching/keypoints/getShiTomasiScore.js +18 -0
- package/lib/featureMatching/keypoints/getShiTomasiScore.js.map +1 -0
- package/lib/featureMatching/visualize/Montage.d.ts.map +1 -1
- package/lib/featureMatching/visualize/Montage.js.map +1 -1
- package/lib/filters/convolution.d.ts +1 -1
- package/lib/filters/convolution.d.ts.map +1 -1
- package/lib/filters/convolution.js +6 -1
- package/lib/filters/convolution.js.map +1 -1
- package/lib/filters/derivativeFilter.d.ts.map +1 -1
- package/lib/filters/derivativeFilter.js.map +1 -1
- package/lib/filters/medianFilter.d.ts +5 -5
- package/lib/filters/medianFilter.d.ts.map +1 -1
- package/lib/filters/medianFilter.js +3 -2
- package/lib/filters/medianFilter.js.map +1 -1
- package/lib/geometry/resize.d.ts +1 -1
- package/lib/geometry/resize.d.ts.map +1 -1
- package/lib/geometry/transform.d.ts +1 -1
- package/lib/geometry/transform.d.ts.map +1 -1
- package/lib/geometry/transform.js +6 -1
- package/lib/geometry/transform.js.map +1 -1
- package/lib/load/decodePng.d.ts.map +1 -1
- package/lib/load/decodePng.js +16 -0
- package/lib/load/decodePng.js.map +1 -1
- package/lib/load/decodeTiff.d.ts.map +1 -1
- package/lib/load/decodeTiff.js +35 -0
- package/lib/load/decodeTiff.js.map +1 -1
- package/lib/load/load.types.d.ts +6 -0
- package/lib/load/load.types.d.ts.map +1 -1
- package/lib/operations/extendBorders.d.ts +1 -1
- package/lib/operations/extendBorders.d.ts.map +1 -1
- package/lib/operations/extendBorders.js +6 -1
- package/lib/operations/extendBorders.js.map +1 -1
- package/lib/operations/grey.d.ts.map +1 -1
- package/lib/operations/grey.js.map +1 -1
- package/lib/operations/threshold.d.ts.map +1 -1
- package/lib/operations/threshold.js.map +1 -1
- package/lib/roi/colorRois.d.ts.map +1 -1
- package/lib/roi/colorRois.js.map +1 -1
- package/lib/roi/getRois.d.ts.map +1 -1
- package/lib/roi/getRois.js.map +1 -1
- package/lib/save/encode.d.ts.map +1 -1
- package/lib/save/encode.js.map +1 -1
- package/lib/utils/constants/colorModels.d.ts.map +1 -1
- package/lib/utils/constants/colorModels.js.map +1 -1
- package/lib/utils/cross_platform.d.ts +1 -1
- package/lib/utils/interpolateBorder.d.ts +1 -1
- package/lib/utils/interpolateBorder.d.ts.map +1 -1
- package/lib/utils/interpolateBorder.js +4 -1
- package/lib/utils/interpolateBorder.js.map +1 -1
- package/lib/utils/interpolatePixel.d.ts +1 -1
- package/lib/utils/interpolatePixel.d.ts.map +1 -1
- package/lib/utils/interpolatePixel.js.map +1 -1
- package/package.json +30 -29
- package/src/Image.ts +46 -6
- package/src/featureMatching/index.ts +2 -0
- package/src/featureMatching/keypoints/getEigenvaluesForScore.ts +56 -0
- package/src/featureMatching/keypoints/getFastKeypoints.ts +22 -15
- package/src/featureMatching/keypoints/getHarrisScore.ts +6 -45
- package/src/featureMatching/keypoints/getOrientedFastKeypoints.ts +2 -3
- package/src/featureMatching/keypoints/getShiTomasiScore.ts +36 -0
- package/src/featureMatching/visualize/Montage.ts +0 -1
- package/src/filters/convolution.ts +8 -2
- package/src/filters/derivativeFilter.ts +0 -1
- package/src/filters/medianFilter.ts +12 -10
- package/src/geometry/resize.ts +1 -1
- package/src/geometry/transform.ts +8 -2
- package/src/load/decodePng.ts +18 -0
- package/src/load/decodeTiff.ts +38 -1
- package/src/load/load.types.ts +8 -0
- package/src/operations/extendBorders.ts +7 -2
- package/src/operations/grey.ts +0 -1
- package/src/operations/threshold.ts +0 -1
- package/src/roi/colorRois.ts +0 -1
- package/src/roi/getRois.ts +0 -1
- package/src/save/encode.ts +0 -1
- package/src/utils/constants/colorModels.ts +0 -1
- package/src/utils/interpolateBorder.ts +6 -4
- package/src/utils/interpolatePixel.ts +1 -2
|
@@ -18,7 +18,7 @@ export interface ExtendBordersOptions {
|
|
|
18
18
|
* Value of the border if BorderType is 'constant'.
|
|
19
19
|
* @default `0`
|
|
20
20
|
*/
|
|
21
|
-
borderValue?: number;
|
|
21
|
+
borderValue?: number | number[];
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
24
|
* Extend the borders of an image according to the given border type.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extendBorders.d.ts","sourceRoot":"","sources":["../../src/operations/extendBorders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"extendBorders.d.ts","sourceRoot":"","sources":["../../src/operations/extendBorders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAIhE,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,oBAAoB,GAC5B,KAAK,CAuFP"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Image } from '../Image.js';
|
|
2
|
+
import { getDefaultColor } from "../utils/getDefaultColor.js";
|
|
2
3
|
import { getBorderInterpolation } from '../utils/interpolateBorder.js';
|
|
4
|
+
import { validateColor } from "../utils/validators/validators.js";
|
|
3
5
|
/**
|
|
4
6
|
* Extend the borders of an image according to the given border type.
|
|
5
7
|
* @param image - Image to extend.
|
|
@@ -7,7 +9,10 @@ import { getBorderInterpolation } from '../utils/interpolateBorder.js';
|
|
|
7
9
|
* @returns A copy of the image with extended borders.
|
|
8
10
|
*/
|
|
9
11
|
export function extendBorders(image, options) {
|
|
10
|
-
const { horizontal, vertical, borderType = 'reflect101', borderValue =
|
|
12
|
+
const { horizontal, vertical, borderType = 'reflect101', borderValue = getDefaultColor(image), } = options;
|
|
13
|
+
if (Array.isArray(borderValue)) {
|
|
14
|
+
validateColor(borderValue, image);
|
|
15
|
+
}
|
|
11
16
|
const interpolateBorder = getBorderInterpolation(borderType, borderValue);
|
|
12
17
|
const newImage = Image.createFrom(image, {
|
|
13
18
|
width: image.width + 2 * horizontal,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extendBorders.js","sourceRoot":"","sources":["../../src/operations/extendBorders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"extendBorders.js","sourceRoot":"","sources":["../../src/operations/extendBorders.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grey.d.ts","sourceRoot":"","sources":["../../src/operations/grey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AASzC,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAiBsC,CAAC;
|
|
1
|
+
{"version":3,"file":"grey.d.ts","sourceRoot":"","sources":["../../src/operations/grey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AASzC,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAiBsC,CAAC;AACjE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAa/E;;;;;;;GAOG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,KACT,MAAM,CAAC;AAEZ,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,qBAAqB,CAAC;IAClD;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC;CACb;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,WAAgB,GAAG,KAAK,CAkDnE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grey.js","sourceRoot":"","sources":["../../src/operations/grey.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AAEvE,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;CACwC,CAAC;
|
|
1
|
+
{"version":3,"file":"grey.js","sourceRoot":"","sources":["../../src/operations/grey.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threshold.d.ts","sourceRoot":"","sources":["../../src/operations/threshold.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAmBvC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAgBrB,CAAC;
|
|
1
|
+
{"version":3,"file":"threshold.d.ts","sourceRoot":"","sources":["../../src/operations/threshold.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAmBvC,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAgBrB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE/D,UAAU,oBAAoB;IAC5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED,MAAM,MAAM,gBAAgB,GACxB,yBAAyB,GACzB,yBAAyB,CAAC;AAE9B;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,KAAK,EACZ,OAAO,GAAE,yBAA8B,GACtC,MAAM,CA2BR;AAGD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI,CAoB5E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threshold.js","sourceRoot":"","sources":["../../src/operations/threshold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAInC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAC1C,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,OAAO,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACpC,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,IAAI,MAAM,sBAAsB,CAAC;AACxC,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,OAAO,MAAM,yBAAyB,CAAC;AAC9C,OAAO,OAAO,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,UAAU,MAAM,4BAA4B,CAAC;AACpD,OAAO,YAAY,MAAM,8BAA8B,CAAC;AACxD,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,GAAG,MAAM,qBAAqB,CAAC;AAEtC,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,EAAE,EAAE,IAAI;IACR,WAAW,EAAE,YAAY;IACzB,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,UAAU;IACrB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,cAAc;IAC7B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,GAAG,EAAE,KAAK;CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"threshold.js","sourceRoot":"","sources":["../../src/operations/threshold.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorRois.d.ts","sourceRoot":"","sources":["../../src/roi/colorRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAG5C,eAAO,MAAM,aAAa;IACxB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC;
|
|
1
|
+
{"version":3,"file":"colorRois.d.ts","sourceRoot":"","sources":["../../src/roi/colorRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAG5C,eAAO,MAAM,aAAa;IACxB;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,aAAa,EAAE,aAAa,EAC5B,OAAO,GAAE,gBAAqB,GAC7B,KAAK,CAsBP"}
|
package/lib/roi/colorRois.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorRois.js","sourceRoot":"","sources":["../../src/roi/colorRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,MAAM,EAAE,QAAQ;IAChB;;OAEG;IACH,UAAU,EAAE,YAAY;IACxB;;OAEG;IACH,OAAO,EAAE,SAAS;CACV,CAAC;
|
|
1
|
+
{"version":3,"file":"colorRois.js","sourceRoot":"","sources":["../../src/roi/colorRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B;;OAEG;IACH,MAAM,EAAE,QAAQ;IAChB;;OAEG;IACH,UAAU,EAAE,YAAY;IACxB;;OAEG;IACH,OAAO,EAAE,SAAS;CACV,CAAC;AAgBX;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CACvB,aAA4B,EAC5B,UAA4B,EAAE;IAE9B,MAAM,EAAE,OAAO,GAAG,IAAI,EAAE,IAAI,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC;IACpD,MAAM,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;IAEnC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE;QAC7C,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,WAAW,CAAC;QAC3B,OAAO;QACP,IAAI;QACJ,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/lib/roi/getRois.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRois.d.ts","sourceRoot":"","sources":["../../src/roi/getRois.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,eAAO,MAAM,OAAO;;;;CAIV,CAAC;
|
|
1
|
+
{"version":3,"file":"getRois.d.ts","sourceRoot":"","sources":["../../src/roi/getRois.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,eAAO,MAAM,OAAO;;;;CAIV,CAAC;AACX,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CACrB,aAAa,EAAE,aAAa,EAC5B,OAAO,GAAE,cAAmB,GAC3B,GAAG,EAAE,CAuBP"}
|
package/lib/roi/getRois.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRois.js","sourceRoot":"","sources":["../../src/roi/getRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAInC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,IAAI;CACA,CAAC;
|
|
1
|
+
{"version":3,"file":"getRois.js","sourceRoot":"","sources":["../../src/roi/getRois.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAInC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,EAAE,EAAE,IAAI;CACA,CAAC;AAqBX;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CACrB,aAA4B,EAC5B,UAA0B,EAAE;IAE5B,MAAM,EACJ,UAAU,GAAG,CAAC,EACd,UAAU,GAAG,MAAM,CAAC,gBAAgB,EACpC,IAAI,GAAG,OAAO,GACf,GAAG,OAAO,CAAC;IAEZ,IACE,aAAa,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;QACpC,aAAa,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EACpC,CAAC;QACD,WAAW,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;SACrB,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC;SAC5C,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC;SAC5C,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;SAC1E,UAAU,EAAE,CAAC;IAEhB,OAAO,IAAI,CAAC,MAAM,CAChB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,UAAU,IAAI,GAAG,CAAC,OAAO,IAAI,UAAU,CAChE,CAAC;AACJ,CAAC"}
|
package/lib/save/encode.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/save/encode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;
|
|
1
|
+
{"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/save/encode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,KAAK,CAAC;IACd,cAAc,CAAC,EAAE,gBAAgB,CAAC;CACnC;AACD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACpC;AACD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,KAAK,CAAC;CACf;AACD,eAAO,MAAM,UAAU,EAAE,gBAAoC,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,MAAM,CACpB,KAAK,EAAE,KAAK,GAAG,IAAI,EACnB,OAAO,GAAE,gBAAgB,GAAG,gBAAgB,GAAG,iBAA8B,GAC5E,UAAU,CAUZ"}
|
package/lib/save/encode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","sourceRoot":"","sources":["../../src/save/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKtC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"encode.js","sourceRoot":"","sources":["../../src/save/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKtC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACF,CAAC;AAcX,MAAM,CAAC,MAAM,UAAU,GAAqB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CACpB,KAAmB,EACnB,UAAmE,UAAU;IAE7E,OAAO,KAAK,CAAC,OAAO,CAAC;SAClB,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CACnC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CACzC;SACA,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CACpD,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAC1C;SACA,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC/C,UAAU,EAAE,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorModels.d.ts","sourceRoot":"","sources":["../../../src/utils/constants/colorModels.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;
|
|
1
|
+
{"version":3,"file":"colorModels.d.ts","sourceRoot":"","sources":["../../../src/utils/constants/colorModels.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AACX,MAAM,MAAM,eAAe,GACzB,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEzD,eAAO,MAAM,WAAW,EAAE,MAAM,CAC9B,eAAe,EACf;IACE,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CA2BF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorModels.js","sourceRoot":"","sources":["../../../src/utils/constants/colorModels.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACR,CAAC;
|
|
1
|
+
{"version":3,"file":"colorModels.js","sourceRoot":"","sources":["../../../src/utils/constants/colorModels.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACR,CAAC;AAIX,MAAM,CAAC,MAAM,WAAW,GAOpB;IACF,IAAI,EAAE;QACJ,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC;KACZ;IACD,KAAK,EAAE;QACL,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,CAAC;KACZ;IACD,GAAG,EAAE;QACH,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC;KACZ;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,CAAC;KACZ;IACD,MAAM,EAAE;QACN,UAAU,EAAE,CAAC;QACb,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC;KACZ;CACF,CAAC"}
|
|
@@ -6,7 +6,7 @@ import type { CanvasRenderingContext2D as SkiaCanvasRenderingContext2D } from 's
|
|
|
6
6
|
*/
|
|
7
7
|
export declare function getNodeApiOrThrow(methodName: string): {
|
|
8
8
|
fs: typeof import("node:fs");
|
|
9
|
-
path: import("path")
|
|
9
|
+
path: typeof import("node:path");
|
|
10
10
|
url: typeof import("node:url");
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
@@ -15,7 +15,7 @@ export type BorderType = (typeof BorderType)[keyof typeof BorderType];
|
|
|
15
15
|
* @param value - A pixel value if BorderType.CONSTANT is used.
|
|
16
16
|
* @returns The border interpolation function.
|
|
17
17
|
*/
|
|
18
|
-
export declare function getBorderInterpolation(type: BorderType, value: number): BorderInterpolationFunction;
|
|
18
|
+
export declare function getBorderInterpolation(type: BorderType, value: number | number[]): BorderInterpolationFunction;
|
|
19
19
|
/**
|
|
20
20
|
* Interpolate using a constant point.
|
|
21
21
|
* @param point - The point to interpolate.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpolateBorder.d.ts","sourceRoot":"","sources":["../../src/utils/interpolateBorder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;
|
|
1
|
+
{"version":3,"file":"interpolateBorder.d.ts","sourceRoot":"","sources":["../../src/utils/interpolateBorder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE,eAAO,MAAM,UAAU;;;;;;CAMb,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEtE;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GACvB,2BAA2B,CAW7B;AAwBD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,MAAM,CAKR;AAeD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,MAAM,CAUR;AAeD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAU7E;AAeD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAU1E;AAeD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,MAAM,CAUR"}
|
|
@@ -15,6 +15,9 @@ export const BorderType = {
|
|
|
15
15
|
* @returns The border interpolation function.
|
|
16
16
|
*/
|
|
17
17
|
export function getBorderInterpolation(type, value) {
|
|
18
|
+
if (typeof value === 'number') {
|
|
19
|
+
value = new Array(4).fill(value);
|
|
20
|
+
}
|
|
18
21
|
return match(type)
|
|
19
22
|
.with('constant', () => getInterpolateConstant(value))
|
|
20
23
|
.with('replicate', () => interpolateReplicate)
|
|
@@ -33,7 +36,7 @@ function getInterpolateConstant(value) {
|
|
|
33
36
|
const newColumn = interpolateConstantPoint(column, image.width);
|
|
34
37
|
const newRow = interpolateConstantPoint(row, image.height);
|
|
35
38
|
if (newColumn === -1 || newRow === -1) {
|
|
36
|
-
return value;
|
|
39
|
+
return value[channel];
|
|
37
40
|
}
|
|
38
41
|
return image.getValue(newColumn, newRow, channel);
|
|
39
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpolateBorder.js","sourceRoot":"","sources":["../../src/utils/interpolateBorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAMnC,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,YAAY;CACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"interpolateBorder.js","sourceRoot":"","sources":["../../src/utils/interpolateBorder.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export declare const InterpolationType: {
|
|
|
6
6
|
readonly BICUBIC: "bicubic";
|
|
7
7
|
};
|
|
8
8
|
export type InterpolationType = (typeof InterpolationType)[keyof typeof InterpolationType];
|
|
9
|
-
type InterpolationFunction = (image: Image, column: number, row: number, channel: number,
|
|
9
|
+
type InterpolationFunction = (image: Image, column: number, row: number, channel: number, interpolateBorder: BorderInterpolationFunction, clamp: ClampFunction) => number;
|
|
10
10
|
/**
|
|
11
11
|
* Get the interpolation function based on its name.
|
|
12
12
|
* @param interpolationType - Specified interpolation type.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpolatePixel.d.ts","sourceRoot":"","sources":["../../src/utils/interpolatePixel.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,KAAK,EACV,2BAA2B,EAC3B,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;
|
|
1
|
+
{"version":3,"file":"interpolatePixel.d.ts","sourceRoot":"","sources":["../../src/utils/interpolatePixel.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,KAAK,EACV,2BAA2B,EAC3B,aAAa,EACd,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,iBAAiB,GAC3B,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAE7D,KAAK,qBAAqB,GAAG,CAC3B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,2BAA2B,EAC9C,KAAK,EAAE,aAAa,KACjB,MAAM,CAAC;AAEZ;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,iBAAiB,GACnC,qBAAqB,CAMvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpolatePixel.js","sourceRoot":"","sources":["../../src/utils/interpolatePixel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAInC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAMnC,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;CACV,CAAC;
|
|
1
|
+
{"version":3,"file":"interpolatePixel.js","sourceRoot":"","sources":["../../src/utils/interpolatePixel.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "image-js",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Image processing and manipulation in JavaScript",
|
|
6
6
|
"author": "Michaël Zasso",
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"./ssim": "./lib/extra/ssim/index.js"
|
|
21
21
|
},
|
|
22
22
|
"scripts": {
|
|
23
|
+
"allow-scripts": "allow-scripts run",
|
|
23
24
|
"api-extractor": "rimraf dist-types && api-extractor run --local",
|
|
24
25
|
"build": "npm run tsc && npm run cheminfo-build",
|
|
25
26
|
"check-types": "tsc --noEmit",
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
"colord": "^2.9.3",
|
|
42
43
|
"fast-bmp": "^4.0.1",
|
|
43
44
|
"fast-jpeg": "^3.0.1",
|
|
44
|
-
"fast-png": "^
|
|
45
|
+
"fast-png": "^8.0.0",
|
|
45
46
|
"image-type": "^4.1.0",
|
|
46
47
|
"jpeg-js": "^0.4.4",
|
|
47
48
|
"js-priority-queue": "^0.1.5",
|
|
@@ -52,11 +53,11 @@
|
|
|
52
53
|
"ml-ransac": "^1.0.0",
|
|
53
54
|
"ml-regression-multivariate-linear": "^2.0.4",
|
|
54
55
|
"ml-regression-polynomial-2d": "^1.0.0",
|
|
55
|
-
"ml-spectra-processing": "^14.18.
|
|
56
|
+
"ml-spectra-processing": "^14.18.2",
|
|
56
57
|
"robust-point-in-polygon": "^1.0.3",
|
|
57
58
|
"skia-canvas": "^3.0.8",
|
|
58
59
|
"ssim.js": "^3.5.0",
|
|
59
|
-
"tiff": "^7.1.
|
|
60
|
+
"tiff": "^7.1.3",
|
|
60
61
|
"ts-pattern": "^5.9.0",
|
|
61
62
|
"uint8-base64": "^1.0.0"
|
|
62
63
|
},
|
|
@@ -68,42 +69,42 @@
|
|
|
68
69
|
}
|
|
69
70
|
},
|
|
70
71
|
"devDependencies": {
|
|
71
|
-
"@lavamoat/allow-scripts": "^3.4.
|
|
72
|
+
"@lavamoat/allow-scripts": "^3.4.1",
|
|
72
73
|
"@lavamoat/preinstall-always-fail": "^2.1.1",
|
|
73
|
-
"@microsoft/api-extractor": "^7.
|
|
74
|
-
"@tailwindcss/forms": "^0.5.
|
|
75
|
-
"@tailwindcss/vite": "^4.1.
|
|
74
|
+
"@microsoft/api-extractor": "^7.55.2",
|
|
75
|
+
"@tailwindcss/forms": "^0.5.11",
|
|
76
|
+
"@tailwindcss/vite": "^4.1.18",
|
|
76
77
|
"@types/jest-image-snapshot": "^6.4.0",
|
|
77
78
|
"@types/js-priority-queue": "^0.0.9",
|
|
78
|
-
"@types/node": "^
|
|
79
|
-
"@types/react": "^19.2.
|
|
80
|
-
"@types/react-dom": "^19.2.
|
|
79
|
+
"@types/node": "^25.0.3",
|
|
80
|
+
"@types/react": "^19.2.7",
|
|
81
|
+
"@types/react-dom": "^19.2.3",
|
|
81
82
|
"@types/robust-point-in-polygon": "^1.0.4",
|
|
82
|
-
"@types/skia-canvas": "^0.9.
|
|
83
|
-
"@vitejs/plugin-react": "^5.1.
|
|
84
|
-
"@vitest/coverage-v8": "^4.0.
|
|
85
|
-
"@vitest/expect": "^4.0.
|
|
83
|
+
"@types/skia-canvas": "^0.9.28",
|
|
84
|
+
"@vitejs/plugin-react": "^5.1.2",
|
|
85
|
+
"@vitest/coverage-v8": "^4.0.16",
|
|
86
|
+
"@vitest/expect": "^4.0.16",
|
|
86
87
|
"@zakodium/tsconfig": "^1.0.2",
|
|
87
|
-
"autoprefixer": "^10.4.
|
|
88
|
-
"cheminfo-build": "^1.3.
|
|
88
|
+
"autoprefixer": "^10.4.23",
|
|
89
|
+
"cheminfo-build": "^1.3.2",
|
|
89
90
|
"clsx": "^2.1.1",
|
|
90
91
|
"cross-env": "^10.1.0",
|
|
91
|
-
"eslint": "^9.
|
|
92
|
-
"eslint-config-cheminfo-react": "^
|
|
93
|
-
"eslint-config-cheminfo-typescript": "^
|
|
94
|
-
"immer": "^
|
|
92
|
+
"eslint": "^9.39.2",
|
|
93
|
+
"eslint-config-cheminfo-react": "^19.0.0",
|
|
94
|
+
"eslint-config-cheminfo-typescript": "^21.0.1",
|
|
95
|
+
"immer": "^11.0.1",
|
|
95
96
|
"jest-image-snapshot": "^6.5.1",
|
|
96
97
|
"jest-matcher-deep-close-to": "^3.0.2",
|
|
97
98
|
"postcss": "^8.5.6",
|
|
98
|
-
"prettier": "^3.
|
|
99
|
-
"react": "^19.2.
|
|
100
|
-
"react-dom": "^19.2.
|
|
101
|
-
"react-router-dom": "^7.
|
|
102
|
-
"rimraf": "^6.1.
|
|
103
|
-
"tailwindcss": "^4.1.
|
|
99
|
+
"prettier": "^3.7.4",
|
|
100
|
+
"react": "^19.2.3",
|
|
101
|
+
"react-dom": "^19.2.3",
|
|
102
|
+
"react-router-dom": "^7.11.0",
|
|
103
|
+
"rimraf": "^6.1.2",
|
|
104
|
+
"tailwindcss": "^4.1.18",
|
|
104
105
|
"typescript": "~5.9.3",
|
|
105
|
-
"vite": "^7.
|
|
106
|
-
"vitest": "^4.0.
|
|
106
|
+
"vite": "^7.3.0",
|
|
107
|
+
"vitest": "^4.0.16"
|
|
107
108
|
},
|
|
108
109
|
"repository": {
|
|
109
110
|
"type": "git",
|
package/src/Image.ts
CHANGED
|
@@ -78,7 +78,7 @@ import {
|
|
|
78
78
|
transform,
|
|
79
79
|
transformRotate,
|
|
80
80
|
} from './geometry/index.js';
|
|
81
|
-
import type { ImageMetadata } from './load/load.types.js';
|
|
81
|
+
import type { ImageMetadata, Resolution } from './load/load.types.js';
|
|
82
82
|
import type {
|
|
83
83
|
BottomHatOptions,
|
|
84
84
|
CannyEdgeOptions,
|
|
@@ -146,7 +146,6 @@ export const ImageCoordinates = {
|
|
|
146
146
|
BOTTOM_LEFT: 'bottom-left',
|
|
147
147
|
BOTTOM_RIGHT: 'bottom-right',
|
|
148
148
|
} as const;
|
|
149
|
-
// eslint-disable-next-line @typescript-eslint/no-redeclare
|
|
150
149
|
export type ImageCoordinates =
|
|
151
150
|
(typeof ImageCoordinates)[keyof typeof ImageCoordinates];
|
|
152
151
|
|
|
@@ -173,6 +172,10 @@ export interface ImageOptions {
|
|
|
173
172
|
* @default `{row: 0, column: 0}`
|
|
174
173
|
*/
|
|
175
174
|
origin?: Point;
|
|
175
|
+
/**
|
|
176
|
+
* Original resolution decoded from the image.
|
|
177
|
+
*/
|
|
178
|
+
resolution?: Resolution;
|
|
176
179
|
|
|
177
180
|
meta?: ImageMetadata;
|
|
178
181
|
}
|
|
@@ -235,8 +238,12 @@ export class Image {
|
|
|
235
238
|
*/
|
|
236
239
|
public readonly origin: Point;
|
|
237
240
|
|
|
238
|
-
|
|
241
|
+
/**
|
|
242
|
+
* Original image resolution.
|
|
243
|
+
*/
|
|
244
|
+
public readonly originalResolution: Resolution | undefined;
|
|
239
245
|
|
|
246
|
+
public readonly meta?: ImageMetadata;
|
|
240
247
|
/**
|
|
241
248
|
* Typed array holding the image data.
|
|
242
249
|
*/
|
|
@@ -259,6 +266,7 @@ export class Image {
|
|
|
259
266
|
colorModel = 'RGB',
|
|
260
267
|
origin = { row: 0, column: 0 },
|
|
261
268
|
meta,
|
|
269
|
+
resolution,
|
|
262
270
|
} = options;
|
|
263
271
|
|
|
264
272
|
if (width < 1 || !Number.isInteger(width)) {
|
|
@@ -280,7 +288,7 @@ export class Image {
|
|
|
280
288
|
this.colorModel = colorModel;
|
|
281
289
|
this.origin = origin;
|
|
282
290
|
this.meta = meta;
|
|
283
|
-
|
|
291
|
+
this.originalResolution = resolution;
|
|
284
292
|
const colorModelDef = colorModels[colorModel];
|
|
285
293
|
this.components = colorModelDef.components;
|
|
286
294
|
this.alpha = colorModelDef.alpha;
|
|
@@ -311,7 +319,38 @@ export class Image {
|
|
|
311
319
|
this.data = data;
|
|
312
320
|
}
|
|
313
321
|
}
|
|
314
|
-
|
|
322
|
+
/**
|
|
323
|
+
* Returns normalized resolution in pixels per centimeter. If resolution unit is unknown, return null.
|
|
324
|
+
* @returns Object with x and y resolutions in pixel/cm.
|
|
325
|
+
*/
|
|
326
|
+
get normalizedResolution() {
|
|
327
|
+
if (!this.originalResolution) {
|
|
328
|
+
return undefined;
|
|
329
|
+
}
|
|
330
|
+
const centimetersPerInch = 2.54;
|
|
331
|
+
const centimetersPerMeter = 100;
|
|
332
|
+
switch (this.originalResolution.unit) {
|
|
333
|
+
case 'inch':
|
|
334
|
+
return {
|
|
335
|
+
x: this.originalResolution.x / centimetersPerInch,
|
|
336
|
+
y: this.originalResolution.y / centimetersPerInch,
|
|
337
|
+
};
|
|
338
|
+
case 'centimeter':
|
|
339
|
+
return {
|
|
340
|
+
x: this.originalResolution.x,
|
|
341
|
+
y: this.originalResolution.y,
|
|
342
|
+
};
|
|
343
|
+
case 'meter':
|
|
344
|
+
return {
|
|
345
|
+
x: this.originalResolution.x / centimetersPerMeter,
|
|
346
|
+
y: this.originalResolution.y / centimetersPerMeter,
|
|
347
|
+
};
|
|
348
|
+
case 'unknown':
|
|
349
|
+
return null;
|
|
350
|
+
default:
|
|
351
|
+
throw new Error('Unknown resolution unit.');
|
|
352
|
+
}
|
|
353
|
+
}
|
|
315
354
|
/**
|
|
316
355
|
* Create a new Image based on the properties of an existing one.
|
|
317
356
|
* @param other - Reference image.
|
|
@@ -1047,12 +1086,13 @@ export class Image {
|
|
|
1047
1086
|
): Image {
|
|
1048
1087
|
return correctColor(this, measuredColors, referenceColors);
|
|
1049
1088
|
}
|
|
1089
|
+
|
|
1050
1090
|
/**
|
|
1051
1091
|
* Apply a median filter to the image.
|
|
1052
1092
|
* @param options - Options to apply for median filter.
|
|
1053
1093
|
* @returns Image after median filter.
|
|
1054
1094
|
*/
|
|
1055
|
-
public medianFilter(options
|
|
1095
|
+
public medianFilter(options?: MedianFilterOptions) {
|
|
1056
1096
|
return medianFilter(this, options);
|
|
1057
1097
|
}
|
|
1058
1098
|
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export * from './descriptors/getBriefDescriptors.js';
|
|
2
2
|
export * from './featureMatching.types.js';
|
|
3
|
+
export * from './keypoints/getHarrisScore.js';
|
|
4
|
+
export * from './keypoints/getShiTomasiScore.js';
|
|
3
5
|
export * from './keypoints/getFastKeypoints.js';
|
|
4
6
|
export * from './keypoints/getIntensityCentroid.js';
|
|
5
7
|
export * from './keypoints/getOrientedFastKeypoints.js';
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { EigenvalueDecomposition, Matrix, WrapperMatrix1D } from 'ml-matrix';
|
|
2
|
+
|
|
3
|
+
import type { Image } from '../../Image.ts';
|
|
4
|
+
import type { Point } from '../../index_full.ts';
|
|
5
|
+
import { SOBEL_X, SOBEL_Y } from '../../utils/constants/kernels.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* A function that calculates eigenvalues to calculate feature score for Harris and Shi-Tomasi algorithms.
|
|
9
|
+
* @param image - Image take data from.
|
|
10
|
+
* @param origin - Center of the window, where the corner should be.
|
|
11
|
+
* @param windowSize - Size of the window, where data should be scanned.
|
|
12
|
+
* @returns Array of two eigenvalues.
|
|
13
|
+
*/
|
|
14
|
+
export function getEigenvaluesForScore(
|
|
15
|
+
image: Image,
|
|
16
|
+
origin: Point,
|
|
17
|
+
windowSize = 7,
|
|
18
|
+
) {
|
|
19
|
+
if (!(windowSize % 2)) {
|
|
20
|
+
throw new TypeError('windowSize must be an odd integer');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const cropOrigin = {
|
|
24
|
+
row: origin.row - (windowSize - 1) / 2,
|
|
25
|
+
column: origin.column - (windowSize - 1) / 2,
|
|
26
|
+
};
|
|
27
|
+
const window = image.crop({
|
|
28
|
+
origin: cropOrigin,
|
|
29
|
+
width: windowSize,
|
|
30
|
+
height: windowSize,
|
|
31
|
+
});
|
|
32
|
+
const xDerivative = window.gradientFilter({ kernelX: SOBEL_X });
|
|
33
|
+
const yDerivative = window.gradientFilter({ kernelY: SOBEL_Y });
|
|
34
|
+
|
|
35
|
+
const xMatrix = new WrapperMatrix1D(xDerivative.getRawImage().data, {
|
|
36
|
+
rows: xDerivative.height,
|
|
37
|
+
});
|
|
38
|
+
const yMatrix = new WrapperMatrix1D(yDerivative.getRawImage().data, {
|
|
39
|
+
rows: yDerivative.height,
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
const xx = xMatrix.mmul(xMatrix);
|
|
43
|
+
const xy = yMatrix.mmul(xMatrix);
|
|
44
|
+
const yy = yMatrix.mmul(yMatrix);
|
|
45
|
+
|
|
46
|
+
const xxSum = xx.sum();
|
|
47
|
+
const xySum = xy.sum();
|
|
48
|
+
const yySum = yy.sum();
|
|
49
|
+
|
|
50
|
+
const structureTensor = new Matrix([
|
|
51
|
+
[xxSum, xySum],
|
|
52
|
+
[xySum, yySum],
|
|
53
|
+
]);
|
|
54
|
+
|
|
55
|
+
return new EigenvalueDecomposition(structureTensor).realEigenvalues;
|
|
56
|
+
}
|