image-js 0.0.0-next-e30968a2d8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (867) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +29 -0
  3. package/lib/IJS.d.ts +316 -0
  4. package/lib/IJS.d.ts.map +1 -0
  5. package/lib/IJS.js +534 -0
  6. package/lib/IJS.js.map +1 -0
  7. package/lib/Mask.d.ts +257 -0
  8. package/lib/Mask.d.ts.map +1 -0
  9. package/lib/Mask.js +338 -0
  10. package/lib/Mask.js.map +1 -0
  11. package/lib/compute/histogram.d.ts +20 -0
  12. package/lib/compute/histogram.d.ts.map +1 -0
  13. package/lib/compute/histogram.js +28 -0
  14. package/lib/compute/histogram.js.map +1 -0
  15. package/lib/compute/index.d.ts +2 -0
  16. package/lib/compute/index.d.ts.map +1 -0
  17. package/lib/compute/index.js +18 -0
  18. package/lib/compute/index.js.map +1 -0
  19. package/lib/filters/and.d.ts +17 -0
  20. package/lib/filters/and.d.ts.map +1 -0
  21. package/lib/filters/and.js +29 -0
  22. package/lib/filters/and.js.map +1 -0
  23. package/lib/filters/blur.d.ts +37 -0
  24. package/lib/filters/blur.d.ts.map +1 -0
  25. package/lib/filters/blur.js +22 -0
  26. package/lib/filters/blur.js.map +1 -0
  27. package/lib/filters/convolution.d.ts +79 -0
  28. package/lib/filters/convolution.d.ts.map +1 -0
  29. package/lib/filters/convolution.js +196 -0
  30. package/lib/filters/convolution.js.map +1 -0
  31. package/lib/filters/derivativeFilter.d.ts +40 -0
  32. package/lib/filters/derivativeFilter.d.ts.map +1 -0
  33. package/lib/filters/derivativeFilter.js +42 -0
  34. package/lib/filters/derivativeFilter.js.map +1 -0
  35. package/lib/filters/gaussianBlur.d.ts +59 -0
  36. package/lib/filters/gaussianBlur.d.ts.map +1 -0
  37. package/lib/filters/gaussianBlur.js +59 -0
  38. package/lib/filters/gaussianBlur.js.map +1 -0
  39. package/lib/filters/gradientFilter.d.ts +54 -0
  40. package/lib/filters/gradientFilter.d.ts.map +1 -0
  41. package/lib/filters/gradientFilter.js +58 -0
  42. package/lib/filters/gradientFilter.js.map +1 -0
  43. package/lib/filters/hypotenuse.d.ts +23 -0
  44. package/lib/filters/hypotenuse.d.ts.map +1 -0
  45. package/lib/filters/hypotenuse.js +46 -0
  46. package/lib/filters/hypotenuse.js.map +1 -0
  47. package/lib/filters/index.d.ts +11 -0
  48. package/lib/filters/index.d.ts.map +1 -0
  49. package/lib/filters/index.js +27 -0
  50. package/lib/filters/index.js.map +1 -0
  51. package/lib/filters/invert.d.ts +11 -0
  52. package/lib/filters/invert.d.ts.map +1 -0
  53. package/lib/filters/invert.js +37 -0
  54. package/lib/filters/invert.js.map +1 -0
  55. package/lib/filters/or.d.ts +17 -0
  56. package/lib/filters/or.d.ts.map +1 -0
  57. package/lib/filters/or.js +29 -0
  58. package/lib/filters/or.js.map +1 -0
  59. package/lib/filters/subtractImage.d.ts +13 -0
  60. package/lib/filters/subtractImage.d.ts.map +1 -0
  61. package/lib/filters/subtractImage.js +64 -0
  62. package/lib/filters/subtractImage.js.map +1 -0
  63. package/lib/geometry/index.d.ts +4 -0
  64. package/lib/geometry/index.d.ts.map +1 -0
  65. package/lib/geometry/index.js +20 -0
  66. package/lib/geometry/index.js.map +1 -0
  67. package/lib/geometry/resize.d.ts +52 -0
  68. package/lib/geometry/resize.d.ts.map +1 -0
  69. package/lib/geometry/resize.js +107 -0
  70. package/lib/geometry/resize.js.map +1 -0
  71. package/lib/geometry/rotate.d.ts +54 -0
  72. package/lib/geometry/rotate.d.ts.map +1 -0
  73. package/lib/geometry/rotate.js +44 -0
  74. package/lib/geometry/rotate.js.map +1 -0
  75. package/lib/geometry/transform.d.ts +46 -0
  76. package/lib/geometry/transform.d.ts.map +1 -0
  77. package/lib/geometry/transform.js +95 -0
  78. package/lib/geometry/transform.js.map +1 -0
  79. package/lib/index.d.ts +10 -0
  80. package/lib/index.d.ts.map +1 -0
  81. package/lib/index.js +26 -0
  82. package/lib/index.js.map +1 -0
  83. package/lib/load/decode.d.ts +10 -0
  84. package/lib/load/decode.d.ts.map +1 -0
  85. package/lib/load/decode.js +33 -0
  86. package/lib/load/decode.js.map +1 -0
  87. package/lib/load/decodeJpeg.d.ts +9 -0
  88. package/lib/load/decodeJpeg.d.ts.map +1 -0
  89. package/lib/load/decodeJpeg.js +20 -0
  90. package/lib/load/decodeJpeg.js.map +1 -0
  91. package/lib/load/decodePng.d.ts +9 -0
  92. package/lib/load/decodePng.d.ts.map +1 -0
  93. package/lib/load/decodePng.js +72 -0
  94. package/lib/load/decodePng.js.map +1 -0
  95. package/lib/load/decodeTiff.d.ts +9 -0
  96. package/lib/load/decodeTiff.d.ts.map +1 -0
  97. package/lib/load/decodeTiff.js +64 -0
  98. package/lib/load/decodeTiff.js.map +1 -0
  99. package/lib/load/index.d.ts +8 -0
  100. package/lib/load/index.d.ts.map +1 -0
  101. package/lib/load/index.js +24 -0
  102. package/lib/load/index.js.map +1 -0
  103. package/lib/load/read.d.ts +17 -0
  104. package/lib/load/read.d.ts.map +1 -0
  105. package/lib/load/read.js +31 -0
  106. package/lib/load/read.js.map +1 -0
  107. package/lib/load/readCanvas.d.ts +3 -0
  108. package/lib/load/readCanvas.d.ts.map +1 -0
  109. package/lib/load/readCanvas.js +17 -0
  110. package/lib/load/readCanvas.js.map +1 -0
  111. package/lib/load/readImg.d.ts +3 -0
  112. package/lib/load/readImg.d.ts.map +1 -0
  113. package/lib/load/readImg.js +17 -0
  114. package/lib/load/readImg.js.map +1 -0
  115. package/lib/morphology/bottomHat.d.ts +19 -0
  116. package/lib/morphology/bottomHat.d.ts.map +1 -0
  117. package/lib/morphology/bottomHat.js +46 -0
  118. package/lib/morphology/bottomHat.js.map +1 -0
  119. package/lib/morphology/cannyEdgeDetector.d.ts +49 -0
  120. package/lib/morphology/cannyEdgeDetector.d.ts.map +1 -0
  121. package/lib/morphology/cannyEdgeDetector.js +157 -0
  122. package/lib/morphology/cannyEdgeDetector.js.map +1 -0
  123. package/lib/morphology/clearBorder.d.ts +22 -0
  124. package/lib/morphology/clearBorder.d.ts.map +1 -0
  125. package/lib/morphology/clearBorder.js +89 -0
  126. package/lib/morphology/clearBorder.js.map +1 -0
  127. package/lib/morphology/close.d.ts +19 -0
  128. package/lib/morphology/close.d.ts.map +1 -0
  129. package/lib/morphology/close.js +41 -0
  130. package/lib/morphology/close.js.map +1 -0
  131. package/lib/morphology/dilate.d.ts +20 -0
  132. package/lib/morphology/dilate.d.ts.map +1 -0
  133. package/lib/morphology/dilate.js +199 -0
  134. package/lib/morphology/dilate.js.map +1 -0
  135. package/lib/morphology/erode.d.ts +20 -0
  136. package/lib/morphology/erode.d.ts.map +1 -0
  137. package/lib/morphology/erode.js +199 -0
  138. package/lib/morphology/erode.js.map +1 -0
  139. package/lib/morphology/floodFill.d.ts +22 -0
  140. package/lib/morphology/floodFill.d.ts.map +1 -0
  141. package/lib/morphology/floodFill.js +20 -0
  142. package/lib/morphology/floodFill.js.map +1 -0
  143. package/lib/morphology/index.d.ts +11 -0
  144. package/lib/morphology/index.d.ts.map +1 -0
  145. package/lib/morphology/index.js +27 -0
  146. package/lib/morphology/index.js.map +1 -0
  147. package/lib/morphology/morphologicalGradient.d.ts +19 -0
  148. package/lib/morphology/morphologicalGradient.d.ts.map +1 -0
  149. package/lib/morphology/morphologicalGradient.js +43 -0
  150. package/lib/morphology/morphologicalGradient.js.map +1 -0
  151. package/lib/morphology/open.d.ts +19 -0
  152. package/lib/morphology/open.d.ts.map +1 -0
  153. package/lib/morphology/open.js +43 -0
  154. package/lib/morphology/open.js.map +1 -0
  155. package/lib/morphology/topHat.d.ts +19 -0
  156. package/lib/morphology/topHat.d.ts.map +1 -0
  157. package/lib/morphology/topHat.js +44 -0
  158. package/lib/morphology/topHat.js.map +1 -0
  159. package/lib/operations/convertColor.d.ts +32 -0
  160. package/lib/operations/convertColor.d.ts.map +1 -0
  161. package/lib/operations/convertColor.js +148 -0
  162. package/lib/operations/convertColor.js.map +1 -0
  163. package/lib/operations/convertDepth.d.ts +10 -0
  164. package/lib/operations/convertDepth.d.ts.map +1 -0
  165. package/lib/operations/convertDepth.js +60 -0
  166. package/lib/operations/convertDepth.js.map +1 -0
  167. package/lib/operations/copyTo.d.ts +29 -0
  168. package/lib/operations/copyTo.d.ts.map +1 -0
  169. package/lib/operations/copyTo.js +51 -0
  170. package/lib/operations/copyTo.js.map +1 -0
  171. package/lib/operations/grey.d.ts +50 -0
  172. package/lib/operations/grey.d.ts.map +1 -0
  173. package/lib/operations/grey.js +86 -0
  174. package/lib/operations/grey.js.map +1 -0
  175. package/lib/operations/greyAlgorithms.d.ts +149 -0
  176. package/lib/operations/greyAlgorithms.d.ts.map +1 -0
  177. package/lib/operations/greyAlgorithms.js +242 -0
  178. package/lib/operations/greyAlgorithms.js.map +1 -0
  179. package/lib/operations/index.d.ts +8 -0
  180. package/lib/operations/index.d.ts.map +1 -0
  181. package/lib/operations/index.js +24 -0
  182. package/lib/operations/index.js.map +1 -0
  183. package/lib/operations/merge.d.ts +9 -0
  184. package/lib/operations/merge.d.ts.map +1 -0
  185. package/lib/operations/merge.js +51 -0
  186. package/lib/operations/merge.js.map +1 -0
  187. package/lib/operations/split.d.ts +9 -0
  188. package/lib/operations/split.d.ts.map +1 -0
  189. package/lib/operations/split.js +23 -0
  190. package/lib/operations/split.js.map +1 -0
  191. package/lib/operations/threshold.d.ts +58 -0
  192. package/lib/operations/threshold.d.ts.map +1 -0
  193. package/lib/operations/threshold.js +114 -0
  194. package/lib/operations/threshold.js.map +1 -0
  195. package/lib/operations/thresholds/huang.d.ts +8 -0
  196. package/lib/operations/thresholds/huang.d.ts.map +1 -0
  197. package/lib/operations/thresholds/huang.js +81 -0
  198. package/lib/operations/thresholds/huang.js.map +1 -0
  199. package/lib/operations/thresholds/intermodes.d.ts +8 -0
  200. package/lib/operations/thresholds/intermodes.d.ts.map +1 -0
  201. package/lib/operations/thresholds/intermodes.js +62 -0
  202. package/lib/operations/thresholds/intermodes.js.map +1 -0
  203. package/lib/operations/thresholds/isodata.d.ts +8 -0
  204. package/lib/operations/thresholds/isodata.d.ts.map +1 -0
  205. package/lib/operations/thresholds/isodata.js +55 -0
  206. package/lib/operations/thresholds/isodata.js.map +1 -0
  207. package/lib/operations/thresholds/li.d.ts +9 -0
  208. package/lib/operations/thresholds/li.d.ts.map +1 -0
  209. package/lib/operations/thresholds/li.js +77 -0
  210. package/lib/operations/thresholds/li.js.map +1 -0
  211. package/lib/operations/thresholds/maxEntropy.d.ts +9 -0
  212. package/lib/operations/thresholds/maxEntropy.d.ts.map +1 -0
  213. package/lib/operations/thresholds/maxEntropy.js +80 -0
  214. package/lib/operations/thresholds/maxEntropy.js.map +1 -0
  215. package/lib/operations/thresholds/mean.d.ts +9 -0
  216. package/lib/operations/thresholds/mean.d.ts.map +1 -0
  217. package/lib/operations/thresholds/mean.js +26 -0
  218. package/lib/operations/thresholds/mean.js.map +1 -0
  219. package/lib/operations/thresholds/minError.d.ts +9 -0
  220. package/lib/operations/thresholds/minError.d.ts.map +1 -0
  221. package/lib/operations/thresholds/minError.js +90 -0
  222. package/lib/operations/thresholds/minError.js.map +1 -0
  223. package/lib/operations/thresholds/minimum.d.ts +8 -0
  224. package/lib/operations/thresholds/minimum.d.ts.map +1 -0
  225. package/lib/operations/thresholds/minimum.js +78 -0
  226. package/lib/operations/thresholds/minimum.js.map +1 -0
  227. package/lib/operations/thresholds/moments.d.ts +9 -0
  228. package/lib/operations/thresholds/moments.d.ts.map +1 -0
  229. package/lib/operations/thresholds/moments.js +62 -0
  230. package/lib/operations/thresholds/moments.js.map +1 -0
  231. package/lib/operations/thresholds/otsu.d.ts +9 -0
  232. package/lib/operations/thresholds/otsu.d.ts.map +1 -0
  233. package/lib/operations/thresholds/otsu.js +43 -0
  234. package/lib/operations/thresholds/otsu.js.map +1 -0
  235. package/lib/operations/thresholds/percentile.d.ts +8 -0
  236. package/lib/operations/thresholds/percentile.d.ts.map +1 -0
  237. package/lib/operations/thresholds/percentile.js +39 -0
  238. package/lib/operations/thresholds/percentile.js.map +1 -0
  239. package/lib/operations/thresholds/renyiEntropy.d.ts +9 -0
  240. package/lib/operations/thresholds/renyiEntropy.d.ts.map +1 -0
  241. package/lib/operations/thresholds/renyiEntropy.js +133 -0
  242. package/lib/operations/thresholds/renyiEntropy.js.map +1 -0
  243. package/lib/operations/thresholds/shanbhag.d.ts +10 -0
  244. package/lib/operations/thresholds/shanbhag.d.ts.map +1 -0
  245. package/lib/operations/thresholds/shanbhag.js +77 -0
  246. package/lib/operations/thresholds/shanbhag.js.map +1 -0
  247. package/lib/operations/thresholds/triangle.d.ts +8 -0
  248. package/lib/operations/thresholds/triangle.d.ts.map +1 -0
  249. package/lib/operations/thresholds/triangle.js +113 -0
  250. package/lib/operations/thresholds/triangle.js.map +1 -0
  251. package/lib/operations/thresholds/yen.d.ts +9 -0
  252. package/lib/operations/thresholds/yen.d.ts.map +1 -0
  253. package/lib/operations/thresholds/yen.js +62 -0
  254. package/lib/operations/thresholds/yen.js.map +1 -0
  255. package/lib/roi/RoiManager.d.ts +32 -0
  256. package/lib/roi/RoiManager.d.ts.map +1 -0
  257. package/lib/roi/RoiManager.js +10 -0
  258. package/lib/roi/RoiManager.js.map +1 -0
  259. package/lib/roi/RoiMapManager.d.ts +33 -0
  260. package/lib/roi/RoiMapManager.d.ts.map +1 -0
  261. package/lib/roi/RoiMapManager.js +17 -0
  262. package/lib/roi/RoiMapManager.js.map +1 -0
  263. package/lib/roi/colorRois.d.ts +39 -0
  264. package/lib/roi/colorRois.d.ts.map +1 -0
  265. package/lib/roi/colorRois.js +48 -0
  266. package/lib/roi/colorRois.js.map +1 -0
  267. package/lib/roi/fromMask.d.ts +19 -0
  268. package/lib/roi/fromMask.d.ts.map +1 -0
  269. package/lib/roi/fromMask.js +148 -0
  270. package/lib/roi/fromMask.js.map +1 -0
  271. package/lib/roi/index.d.ts +5 -0
  272. package/lib/roi/index.d.ts.map +1 -0
  273. package/lib/roi/index.js +21 -0
  274. package/lib/roi/index.js.map +1 -0
  275. package/lib/roi/utils/colorMaps/getBinaryMap.d.ts +37 -0
  276. package/lib/roi/utils/colorMaps/getBinaryMap.d.ts.map +1 -0
  277. package/lib/roi/utils/colorMaps/getBinaryMap.js +34 -0
  278. package/lib/roi/utils/colorMaps/getBinaryMap.js.map +1 -0
  279. package/lib/roi/utils/colorMaps/getRainbowMap.d.ts +25 -0
  280. package/lib/roi/utils/colorMaps/getRainbowMap.d.ts.map +1 -0
  281. package/lib/roi/utils/colorMaps/getRainbowMap.js +51 -0
  282. package/lib/roi/utils/colorMaps/getRainbowMap.js.map +1 -0
  283. package/lib/roi/utils/colorMaps/getSaturationMap.d.ts +42 -0
  284. package/lib/roi/utils/colorMaps/getSaturationMap.d.ts.map +1 -0
  285. package/lib/roi/utils/colorMaps/getSaturationMap.js +39 -0
  286. package/lib/roi/utils/colorMaps/getSaturationMap.js.map +1 -0
  287. package/lib/roi/utils/constants.d.ts +4 -0
  288. package/lib/roi/utils/constants.d.ts.map +1 -0
  289. package/lib/roi/utils/constants.js +7 -0
  290. package/lib/roi/utils/constants.js.map +1 -0
  291. package/lib/roi/utils/getColorMap.d.ts +32 -0
  292. package/lib/roi/utils/getColorMap.d.ts.map +1 -0
  293. package/lib/roi/utils/getColorMap.js +28 -0
  294. package/lib/roi/utils/getColorMap.js.map +1 -0
  295. package/lib/roi/utils/hsvToRgb.d.ts +21 -0
  296. package/lib/roi/utils/hsvToRgb.d.ts.map +1 -0
  297. package/lib/roi/utils/hsvToRgb.js +58 -0
  298. package/lib/roi/utils/hsvToRgb.js.map +1 -0
  299. package/lib/roi/utils/rgbToNumber.d.ts +8 -0
  300. package/lib/roi/utils/rgbToNumber.d.ts.map +1 -0
  301. package/lib/roi/utils/rgbToNumber.js +14 -0
  302. package/lib/roi/utils/rgbToNumber.js.map +1 -0
  303. package/lib/save/encode.d.ts +38 -0
  304. package/lib/save/encode.d.ts.map +1 -0
  305. package/lib/save/encode.js +33 -0
  306. package/lib/save/encode.js.map +1 -0
  307. package/lib/save/encodeJpeg.d.ts +18 -0
  308. package/lib/save/encodeJpeg.d.ts.map +1 -0
  309. package/lib/save/encodeJpeg.js +26 -0
  310. package/lib/save/encodeJpeg.js.map +1 -0
  311. package/lib/save/encodePng.d.ts +12 -0
  312. package/lib/save/encodePng.d.ts.map +1 -0
  313. package/lib/save/encodePng.js +16 -0
  314. package/lib/save/encodePng.js.map +1 -0
  315. package/lib/save/index.d.ts +6 -0
  316. package/lib/save/index.d.ts.map +1 -0
  317. package/lib/save/index.js +22 -0
  318. package/lib/save/index.js.map +1 -0
  319. package/lib/save/write.d.ts +27 -0
  320. package/lib/save/write.d.ts.map +1 -0
  321. package/lib/save/write.js +73 -0
  322. package/lib/save/write.js.map +1 -0
  323. package/lib/save/writeCanvas.d.ts +42 -0
  324. package/lib/save/writeCanvas.d.ts.map +1 -0
  325. package/lib/save/writeCanvas.js +29 -0
  326. package/lib/save/writeCanvas.js.map +1 -0
  327. package/lib/utils/boolToNumber.d.ts +9 -0
  328. package/lib/utils/boolToNumber.d.ts.map +1 -0
  329. package/lib/utils/boolToNumber.js +21 -0
  330. package/lib/utils/boolToNumber.js.map +1 -0
  331. package/lib/utils/borderIterator.d.ts +9 -0
  332. package/lib/utils/borderIterator.d.ts.map +1 -0
  333. package/lib/utils/borderIterator.js +25 -0
  334. package/lib/utils/borderIterator.js.map +1 -0
  335. package/lib/utils/checkKernel.d.ts +8 -0
  336. package/lib/utils/checkKernel.d.ts.map +1 -0
  337. package/lib/utils/checkKernel.js +16 -0
  338. package/lib/utils/checkKernel.js.map +1 -0
  339. package/lib/utils/checkProcessable.d.ts +18 -0
  340. package/lib/utils/checkProcessable.d.ts.map +1 -0
  341. package/lib/utils/checkProcessable.js +65 -0
  342. package/lib/utils/checkProcessable.js.map +1 -0
  343. package/lib/utils/clamp.d.ts +10 -0
  344. package/lib/utils/clamp.d.ts.map +1 -0
  345. package/lib/utils/clamp.js +38 -0
  346. package/lib/utils/clamp.js.map +1 -0
  347. package/lib/utils/colorModels.d.ts +15 -0
  348. package/lib/utils/colorModels.d.ts.map +1 -0
  349. package/lib/utils/colorModels.js +39 -0
  350. package/lib/utils/colorModels.js.map +1 -0
  351. package/lib/utils/copyData.d.ts +4 -0
  352. package/lib/utils/copyData.d.ts.map +1 -0
  353. package/lib/utils/copyData.js +20 -0
  354. package/lib/utils/copyData.js.map +1 -0
  355. package/lib/utils/getIndex.d.ts +12 -0
  356. package/lib/utils/getIndex.d.ts.map +1 -0
  357. package/lib/utils/getIndex.js +17 -0
  358. package/lib/utils/getIndex.js.map +1 -0
  359. package/lib/utils/getOutputImage.d.ts +61 -0
  360. package/lib/utils/getOutputImage.d.ts.map +1 -0
  361. package/lib/utils/getOutputImage.js +150 -0
  362. package/lib/utils/getOutputImage.js.map +1 -0
  363. package/lib/utils/interpolateBorder.d.ts +44 -0
  364. package/lib/utils/interpolateBorder.d.ts.map +1 -0
  365. package/lib/utils/interpolateBorder.js +143 -0
  366. package/lib/utils/interpolateBorder.js.map +1 -0
  367. package/lib/utils/interpolatePixel.d.ts +18 -0
  368. package/lib/utils/interpolatePixel.d.ts.map +1 -0
  369. package/lib/utils/interpolatePixel.js +122 -0
  370. package/lib/utils/interpolatePixel.js.map +1 -0
  371. package/lib/utils/kernels.d.ts +13 -0
  372. package/lib/utils/kernels.d.ts.map +1 -0
  373. package/lib/utils/kernels.js +66 -0
  374. package/lib/utils/kernels.js.map +1 -0
  375. package/lib/utils/kinds.d.ts +9 -0
  376. package/lib/utils/kinds.d.ts.map +1 -0
  377. package/lib/utils/kinds.js +23 -0
  378. package/lib/utils/kinds.js.map +1 -0
  379. package/lib/utils/round.d.ts +2 -0
  380. package/lib/utils/round.d.ts.map +1 -0
  381. package/lib/utils/round.js +11 -0
  382. package/lib/utils/round.js.map +1 -0
  383. package/lib/utils/validators.d.ts +23 -0
  384. package/lib/utils/validators.d.ts.map +1 -0
  385. package/lib/utils/validators.js +40 -0
  386. package/lib/utils/validators.js.map +1 -0
  387. package/lib-esm/IJS.d.ts +316 -0
  388. package/lib-esm/IJS.d.ts.map +1 -0
  389. package/lib-esm/IJS.js +526 -0
  390. package/lib-esm/IJS.js.map +1 -0
  391. package/lib-esm/Mask.d.ts +257 -0
  392. package/lib-esm/Mask.d.ts.map +1 -0
  393. package/lib-esm/Mask.js +334 -0
  394. package/lib-esm/Mask.js.map +1 -0
  395. package/lib-esm/compute/histogram.d.ts +20 -0
  396. package/lib-esm/compute/histogram.d.ts.map +1 -0
  397. package/lib-esm/compute/histogram.js +24 -0
  398. package/lib-esm/compute/histogram.js.map +1 -0
  399. package/lib-esm/compute/index.d.ts +2 -0
  400. package/lib-esm/compute/index.d.ts.map +1 -0
  401. package/lib-esm/compute/index.js +2 -0
  402. package/lib-esm/compute/index.js.map +1 -0
  403. package/lib-esm/filters/and.d.ts +17 -0
  404. package/lib-esm/filters/and.d.ts.map +1 -0
  405. package/lib-esm/filters/and.js +25 -0
  406. package/lib-esm/filters/and.js.map +1 -0
  407. package/lib-esm/filters/blur.d.ts +37 -0
  408. package/lib-esm/filters/blur.d.ts.map +1 -0
  409. package/lib-esm/filters/blur.js +18 -0
  410. package/lib-esm/filters/blur.js.map +1 -0
  411. package/lib-esm/filters/convolution.d.ts +79 -0
  412. package/lib-esm/filters/convolution.d.ts.map +1 -0
  413. package/lib-esm/filters/convolution.js +189 -0
  414. package/lib-esm/filters/convolution.js.map +1 -0
  415. package/lib-esm/filters/derivativeFilter.d.ts +40 -0
  416. package/lib-esm/filters/derivativeFilter.d.ts.map +1 -0
  417. package/lib-esm/filters/derivativeFilter.js +38 -0
  418. package/lib-esm/filters/derivativeFilter.js.map +1 -0
  419. package/lib-esm/filters/gaussianBlur.d.ts +59 -0
  420. package/lib-esm/filters/gaussianBlur.d.ts.map +1 -0
  421. package/lib-esm/filters/gaussianBlur.js +55 -0
  422. package/lib-esm/filters/gaussianBlur.js.map +1 -0
  423. package/lib-esm/filters/gradientFilter.d.ts +54 -0
  424. package/lib-esm/filters/gradientFilter.d.ts.map +1 -0
  425. package/lib-esm/filters/gradientFilter.js +51 -0
  426. package/lib-esm/filters/gradientFilter.js.map +1 -0
  427. package/lib-esm/filters/hypotenuse.d.ts +23 -0
  428. package/lib-esm/filters/hypotenuse.d.ts.map +1 -0
  429. package/lib-esm/filters/hypotenuse.js +39 -0
  430. package/lib-esm/filters/hypotenuse.js.map +1 -0
  431. package/lib-esm/filters/index.d.ts +11 -0
  432. package/lib-esm/filters/index.d.ts.map +1 -0
  433. package/lib-esm/filters/index.js +11 -0
  434. package/lib-esm/filters/index.js.map +1 -0
  435. package/lib-esm/filters/invert.d.ts +11 -0
  436. package/lib-esm/filters/invert.d.ts.map +1 -0
  437. package/lib-esm/filters/invert.js +33 -0
  438. package/lib-esm/filters/invert.js.map +1 -0
  439. package/lib-esm/filters/or.d.ts +17 -0
  440. package/lib-esm/filters/or.d.ts.map +1 -0
  441. package/lib-esm/filters/or.js +25 -0
  442. package/lib-esm/filters/or.js.map +1 -0
  443. package/lib-esm/filters/subtractImage.d.ts +13 -0
  444. package/lib-esm/filters/subtractImage.d.ts.map +1 -0
  445. package/lib-esm/filters/subtractImage.js +57 -0
  446. package/lib-esm/filters/subtractImage.js.map +1 -0
  447. package/lib-esm/geometry/index.d.ts +4 -0
  448. package/lib-esm/geometry/index.d.ts.map +1 -0
  449. package/lib-esm/geometry/index.js +4 -0
  450. package/lib-esm/geometry/index.js.map +1 -0
  451. package/lib-esm/geometry/resize.d.ts +52 -0
  452. package/lib-esm/geometry/resize.d.ts.map +1 -0
  453. package/lib-esm/geometry/resize.js +103 -0
  454. package/lib-esm/geometry/resize.js.map +1 -0
  455. package/lib-esm/geometry/rotate.d.ts +54 -0
  456. package/lib-esm/geometry/rotate.d.ts.map +1 -0
  457. package/lib-esm/geometry/rotate.js +40 -0
  458. package/lib-esm/geometry/rotate.js.map +1 -0
  459. package/lib-esm/geometry/transform.d.ts +46 -0
  460. package/lib-esm/geometry/transform.d.ts.map +1 -0
  461. package/lib-esm/geometry/transform.js +91 -0
  462. package/lib-esm/geometry/transform.js.map +1 -0
  463. package/lib-esm/index.d.ts +10 -0
  464. package/lib-esm/index.d.ts.map +1 -0
  465. package/lib-esm/index.js +10 -0
  466. package/lib-esm/index.js.map +1 -0
  467. package/lib-esm/load/decode.d.ts +10 -0
  468. package/lib-esm/load/decode.d.ts.map +1 -0
  469. package/lib-esm/load/decode.js +26 -0
  470. package/lib-esm/load/decode.js.map +1 -0
  471. package/lib-esm/load/decodeJpeg.d.ts +9 -0
  472. package/lib-esm/load/decodeJpeg.d.ts.map +1 -0
  473. package/lib-esm/load/decodeJpeg.js +16 -0
  474. package/lib-esm/load/decodeJpeg.js.map +1 -0
  475. package/lib-esm/load/decodePng.d.ts +9 -0
  476. package/lib-esm/load/decodePng.d.ts.map +1 -0
  477. package/lib-esm/load/decodePng.js +68 -0
  478. package/lib-esm/load/decodePng.js.map +1 -0
  479. package/lib-esm/load/decodeTiff.d.ts +9 -0
  480. package/lib-esm/load/decodeTiff.d.ts.map +1 -0
  481. package/lib-esm/load/decodeTiff.js +60 -0
  482. package/lib-esm/load/decodeTiff.js.map +1 -0
  483. package/lib-esm/load/index.d.ts +8 -0
  484. package/lib-esm/load/index.d.ts.map +1 -0
  485. package/lib-esm/load/index.js +8 -0
  486. package/lib-esm/load/index.js.map +1 -0
  487. package/lib-esm/load/read.d.ts +17 -0
  488. package/lib-esm/load/read.d.ts.map +1 -0
  489. package/lib-esm/load/read.js +23 -0
  490. package/lib-esm/load/read.js.map +1 -0
  491. package/lib-esm/load/readCanvas.d.ts +3 -0
  492. package/lib-esm/load/readCanvas.d.ts.map +1 -0
  493. package/lib-esm/load/readCanvas.js +13 -0
  494. package/lib-esm/load/readCanvas.js.map +1 -0
  495. package/lib-esm/load/readImg.d.ts +3 -0
  496. package/lib-esm/load/readImg.d.ts.map +1 -0
  497. package/lib-esm/load/readImg.js +13 -0
  498. package/lib-esm/load/readImg.js.map +1 -0
  499. package/lib-esm/morphology/bottomHat.d.ts +19 -0
  500. package/lib-esm/morphology/bottomHat.d.ts.map +1 -0
  501. package/lib-esm/morphology/bottomHat.js +39 -0
  502. package/lib-esm/morphology/bottomHat.js.map +1 -0
  503. package/lib-esm/morphology/cannyEdgeDetector.d.ts +49 -0
  504. package/lib-esm/morphology/cannyEdgeDetector.d.ts.map +1 -0
  505. package/lib-esm/morphology/cannyEdgeDetector.js +149 -0
  506. package/lib-esm/morphology/cannyEdgeDetector.js.map +1 -0
  507. package/lib-esm/morphology/clearBorder.d.ts +22 -0
  508. package/lib-esm/morphology/clearBorder.d.ts.map +1 -0
  509. package/lib-esm/morphology/clearBorder.js +85 -0
  510. package/lib-esm/morphology/clearBorder.js.map +1 -0
  511. package/lib-esm/morphology/close.d.ts +19 -0
  512. package/lib-esm/morphology/close.d.ts.map +1 -0
  513. package/lib-esm/morphology/close.js +34 -0
  514. package/lib-esm/morphology/close.js.map +1 -0
  515. package/lib-esm/morphology/dilate.d.ts +20 -0
  516. package/lib-esm/morphology/dilate.d.ts.map +1 -0
  517. package/lib-esm/morphology/dilate.js +192 -0
  518. package/lib-esm/morphology/dilate.js.map +1 -0
  519. package/lib-esm/morphology/erode.d.ts +20 -0
  520. package/lib-esm/morphology/erode.d.ts.map +1 -0
  521. package/lib-esm/morphology/erode.js +192 -0
  522. package/lib-esm/morphology/erode.js.map +1 -0
  523. package/lib-esm/morphology/floodFill.d.ts +22 -0
  524. package/lib-esm/morphology/floodFill.d.ts.map +1 -0
  525. package/lib-esm/morphology/floodFill.js +16 -0
  526. package/lib-esm/morphology/floodFill.js.map +1 -0
  527. package/lib-esm/morphology/index.d.ts +11 -0
  528. package/lib-esm/morphology/index.d.ts.map +1 -0
  529. package/lib-esm/morphology/index.js +11 -0
  530. package/lib-esm/morphology/index.js.map +1 -0
  531. package/lib-esm/morphology/morphologicalGradient.d.ts +19 -0
  532. package/lib-esm/morphology/morphologicalGradient.d.ts.map +1 -0
  533. package/lib-esm/morphology/morphologicalGradient.js +36 -0
  534. package/lib-esm/morphology/morphologicalGradient.js.map +1 -0
  535. package/lib-esm/morphology/open.d.ts +19 -0
  536. package/lib-esm/morphology/open.d.ts.map +1 -0
  537. package/lib-esm/morphology/open.js +36 -0
  538. package/lib-esm/morphology/open.js.map +1 -0
  539. package/lib-esm/morphology/topHat.d.ts +19 -0
  540. package/lib-esm/morphology/topHat.d.ts.map +1 -0
  541. package/lib-esm/morphology/topHat.js +37 -0
  542. package/lib-esm/morphology/topHat.js.map +1 -0
  543. package/lib-esm/operations/convertColor.d.ts +32 -0
  544. package/lib-esm/operations/convertColor.d.ts.map +1 -0
  545. package/lib-esm/operations/convertColor.js +142 -0
  546. package/lib-esm/operations/convertColor.js.map +1 -0
  547. package/lib-esm/operations/convertDepth.d.ts +10 -0
  548. package/lib-esm/operations/convertDepth.d.ts.map +1 -0
  549. package/lib-esm/operations/convertDepth.js +56 -0
  550. package/lib-esm/operations/convertDepth.js.map +1 -0
  551. package/lib-esm/operations/copyTo.d.ts +29 -0
  552. package/lib-esm/operations/copyTo.d.ts.map +1 -0
  553. package/lib-esm/operations/copyTo.js +48 -0
  554. package/lib-esm/operations/copyTo.js.map +1 -0
  555. package/lib-esm/operations/grey.d.ts +50 -0
  556. package/lib-esm/operations/grey.d.ts.map +1 -0
  557. package/lib-esm/operations/grey.js +60 -0
  558. package/lib-esm/operations/grey.js.map +1 -0
  559. package/lib-esm/operations/greyAlgorithms.d.ts +149 -0
  560. package/lib-esm/operations/greyAlgorithms.d.ts.map +1 -0
  561. package/lib-esm/operations/greyAlgorithms.js +223 -0
  562. package/lib-esm/operations/greyAlgorithms.js.map +1 -0
  563. package/lib-esm/operations/index.d.ts +8 -0
  564. package/lib-esm/operations/index.d.ts.map +1 -0
  565. package/lib-esm/operations/index.js +8 -0
  566. package/lib-esm/operations/index.js.map +1 -0
  567. package/lib-esm/operations/merge.d.ts +9 -0
  568. package/lib-esm/operations/merge.d.ts.map +1 -0
  569. package/lib-esm/operations/merge.js +47 -0
  570. package/lib-esm/operations/merge.js.map +1 -0
  571. package/lib-esm/operations/split.d.ts +9 -0
  572. package/lib-esm/operations/split.d.ts.map +1 -0
  573. package/lib-esm/operations/split.js +19 -0
  574. package/lib-esm/operations/split.js.map +1 -0
  575. package/lib-esm/operations/threshold.d.ts +58 -0
  576. package/lib-esm/operations/threshold.d.ts.map +1 -0
  577. package/lib-esm/operations/threshold.js +106 -0
  578. package/lib-esm/operations/threshold.js.map +1 -0
  579. package/lib-esm/operations/thresholds/huang.d.ts +8 -0
  580. package/lib-esm/operations/thresholds/huang.d.ts.map +1 -0
  581. package/lib-esm/operations/thresholds/huang.js +78 -0
  582. package/lib-esm/operations/thresholds/huang.js.map +1 -0
  583. package/lib-esm/operations/thresholds/intermodes.d.ts +8 -0
  584. package/lib-esm/operations/thresholds/intermodes.d.ts.map +1 -0
  585. package/lib-esm/operations/thresholds/intermodes.js +59 -0
  586. package/lib-esm/operations/thresholds/intermodes.js.map +1 -0
  587. package/lib-esm/operations/thresholds/isodata.d.ts +8 -0
  588. package/lib-esm/operations/thresholds/isodata.d.ts.map +1 -0
  589. package/lib-esm/operations/thresholds/isodata.js +52 -0
  590. package/lib-esm/operations/thresholds/isodata.js.map +1 -0
  591. package/lib-esm/operations/thresholds/li.d.ts +9 -0
  592. package/lib-esm/operations/thresholds/li.d.ts.map +1 -0
  593. package/lib-esm/operations/thresholds/li.js +74 -0
  594. package/lib-esm/operations/thresholds/li.js.map +1 -0
  595. package/lib-esm/operations/thresholds/maxEntropy.d.ts +9 -0
  596. package/lib-esm/operations/thresholds/maxEntropy.d.ts.map +1 -0
  597. package/lib-esm/operations/thresholds/maxEntropy.js +77 -0
  598. package/lib-esm/operations/thresholds/maxEntropy.js.map +1 -0
  599. package/lib-esm/operations/thresholds/mean.d.ts +9 -0
  600. package/lib-esm/operations/thresholds/mean.d.ts.map +1 -0
  601. package/lib-esm/operations/thresholds/mean.js +23 -0
  602. package/lib-esm/operations/thresholds/mean.js.map +1 -0
  603. package/lib-esm/operations/thresholds/minError.d.ts +9 -0
  604. package/lib-esm/operations/thresholds/minError.d.ts.map +1 -0
  605. package/lib-esm/operations/thresholds/minError.js +87 -0
  606. package/lib-esm/operations/thresholds/minError.js.map +1 -0
  607. package/lib-esm/operations/thresholds/minimum.d.ts +8 -0
  608. package/lib-esm/operations/thresholds/minimum.d.ts.map +1 -0
  609. package/lib-esm/operations/thresholds/minimum.js +75 -0
  610. package/lib-esm/operations/thresholds/minimum.js.map +1 -0
  611. package/lib-esm/operations/thresholds/moments.d.ts +9 -0
  612. package/lib-esm/operations/thresholds/moments.d.ts.map +1 -0
  613. package/lib-esm/operations/thresholds/moments.js +59 -0
  614. package/lib-esm/operations/thresholds/moments.js.map +1 -0
  615. package/lib-esm/operations/thresholds/otsu.d.ts +9 -0
  616. package/lib-esm/operations/thresholds/otsu.d.ts.map +1 -0
  617. package/lib-esm/operations/thresholds/otsu.js +39 -0
  618. package/lib-esm/operations/thresholds/otsu.js.map +1 -0
  619. package/lib-esm/operations/thresholds/percentile.d.ts +8 -0
  620. package/lib-esm/operations/thresholds/percentile.d.ts.map +1 -0
  621. package/lib-esm/operations/thresholds/percentile.js +36 -0
  622. package/lib-esm/operations/thresholds/percentile.js.map +1 -0
  623. package/lib-esm/operations/thresholds/renyiEntropy.d.ts +9 -0
  624. package/lib-esm/operations/thresholds/renyiEntropy.d.ts.map +1 -0
  625. package/lib-esm/operations/thresholds/renyiEntropy.js +130 -0
  626. package/lib-esm/operations/thresholds/renyiEntropy.js.map +1 -0
  627. package/lib-esm/operations/thresholds/shanbhag.d.ts +10 -0
  628. package/lib-esm/operations/thresholds/shanbhag.d.ts.map +1 -0
  629. package/lib-esm/operations/thresholds/shanbhag.js +74 -0
  630. package/lib-esm/operations/thresholds/shanbhag.js.map +1 -0
  631. package/lib-esm/operations/thresholds/triangle.d.ts +8 -0
  632. package/lib-esm/operations/thresholds/triangle.d.ts.map +1 -0
  633. package/lib-esm/operations/thresholds/triangle.js +109 -0
  634. package/lib-esm/operations/thresholds/triangle.js.map +1 -0
  635. package/lib-esm/operations/thresholds/yen.d.ts +9 -0
  636. package/lib-esm/operations/thresholds/yen.d.ts.map +1 -0
  637. package/lib-esm/operations/thresholds/yen.js +59 -0
  638. package/lib-esm/operations/thresholds/yen.js.map +1 -0
  639. package/lib-esm/roi/RoiManager.d.ts +32 -0
  640. package/lib-esm/roi/RoiManager.d.ts.map +1 -0
  641. package/lib-esm/roi/RoiManager.js +7 -0
  642. package/lib-esm/roi/RoiManager.js.map +1 -0
  643. package/lib-esm/roi/RoiMapManager.d.ts +33 -0
  644. package/lib-esm/roi/RoiMapManager.d.ts.map +1 -0
  645. package/lib-esm/roi/RoiMapManager.js +13 -0
  646. package/lib-esm/roi/RoiMapManager.js.map +1 -0
  647. package/lib-esm/roi/colorRois.d.ts +39 -0
  648. package/lib-esm/roi/colorRois.d.ts.map +1 -0
  649. package/lib-esm/roi/colorRois.js +44 -0
  650. package/lib-esm/roi/colorRois.js.map +1 -0
  651. package/lib-esm/roi/fromMask.d.ts +19 -0
  652. package/lib-esm/roi/fromMask.d.ts.map +1 -0
  653. package/lib-esm/roi/fromMask.js +144 -0
  654. package/lib-esm/roi/fromMask.js.map +1 -0
  655. package/lib-esm/roi/index.d.ts +5 -0
  656. package/lib-esm/roi/index.d.ts.map +1 -0
  657. package/lib-esm/roi/index.js +5 -0
  658. package/lib-esm/roi/index.js.map +1 -0
  659. package/lib-esm/roi/utils/colorMaps/getBinaryMap.d.ts +37 -0
  660. package/lib-esm/roi/utils/colorMaps/getBinaryMap.d.ts.map +1 -0
  661. package/lib-esm/roi/utils/colorMaps/getBinaryMap.js +30 -0
  662. package/lib-esm/roi/utils/colorMaps/getBinaryMap.js.map +1 -0
  663. package/lib-esm/roi/utils/colorMaps/getRainbowMap.d.ts +25 -0
  664. package/lib-esm/roi/utils/colorMaps/getRainbowMap.d.ts.map +1 -0
  665. package/lib-esm/roi/utils/colorMaps/getRainbowMap.js +47 -0
  666. package/lib-esm/roi/utils/colorMaps/getRainbowMap.js.map +1 -0
  667. package/lib-esm/roi/utils/colorMaps/getSaturationMap.d.ts +42 -0
  668. package/lib-esm/roi/utils/colorMaps/getSaturationMap.d.ts.map +1 -0
  669. package/lib-esm/roi/utils/colorMaps/getSaturationMap.js +35 -0
  670. package/lib-esm/roi/utils/colorMaps/getSaturationMap.js.map +1 -0
  671. package/lib-esm/roi/utils/constants.d.ts +4 -0
  672. package/lib-esm/roi/utils/constants.d.ts.map +1 -0
  673. package/lib-esm/roi/utils/constants.js +4 -0
  674. package/lib-esm/roi/utils/constants.js.map +1 -0
  675. package/lib-esm/roi/utils/getColorMap.d.ts +32 -0
  676. package/lib-esm/roi/utils/getColorMap.d.ts.map +1 -0
  677. package/lib-esm/roi/utils/getColorMap.js +24 -0
  678. package/lib-esm/roi/utils/getColorMap.js.map +1 -0
  679. package/lib-esm/roi/utils/hsvToRgb.d.ts +21 -0
  680. package/lib-esm/roi/utils/hsvToRgb.d.ts.map +1 -0
  681. package/lib-esm/roi/utils/hsvToRgb.js +54 -0
  682. package/lib-esm/roi/utils/hsvToRgb.js.map +1 -0
  683. package/lib-esm/roi/utils/rgbToNumber.d.ts +8 -0
  684. package/lib-esm/roi/utils/rgbToNumber.d.ts.map +1 -0
  685. package/lib-esm/roi/utils/rgbToNumber.js +10 -0
  686. package/lib-esm/roi/utils/rgbToNumber.js.map +1 -0
  687. package/lib-esm/save/encode.d.ts +38 -0
  688. package/lib-esm/save/encode.d.ts.map +1 -0
  689. package/lib-esm/save/encode.js +29 -0
  690. package/lib-esm/save/encode.js.map +1 -0
  691. package/lib-esm/save/encodeJpeg.d.ts +18 -0
  692. package/lib-esm/save/encodeJpeg.d.ts.map +1 -0
  693. package/lib-esm/save/encodeJpeg.js +22 -0
  694. package/lib-esm/save/encodeJpeg.js.map +1 -0
  695. package/lib-esm/save/encodePng.d.ts +12 -0
  696. package/lib-esm/save/encodePng.d.ts.map +1 -0
  697. package/lib-esm/save/encodePng.js +12 -0
  698. package/lib-esm/save/encodePng.js.map +1 -0
  699. package/lib-esm/save/index.d.ts +6 -0
  700. package/lib-esm/save/index.d.ts.map +1 -0
  701. package/lib-esm/save/index.js +6 -0
  702. package/lib-esm/save/index.js.map +1 -0
  703. package/lib-esm/save/write.d.ts +27 -0
  704. package/lib-esm/save/write.d.ts.map +1 -0
  705. package/lib-esm/save/write.js +65 -0
  706. package/lib-esm/save/write.js.map +1 -0
  707. package/lib-esm/save/writeCanvas.d.ts +42 -0
  708. package/lib-esm/save/writeCanvas.d.ts.map +1 -0
  709. package/lib-esm/save/writeCanvas.js +25 -0
  710. package/lib-esm/save/writeCanvas.js.map +1 -0
  711. package/lib-esm/utils/boolToNumber.d.ts +9 -0
  712. package/lib-esm/utils/boolToNumber.d.ts.map +1 -0
  713. package/lib-esm/utils/boolToNumber.js +17 -0
  714. package/lib-esm/utils/boolToNumber.js.map +1 -0
  715. package/lib-esm/utils/borderIterator.d.ts +9 -0
  716. package/lib-esm/utils/borderIterator.d.ts.map +1 -0
  717. package/lib-esm/utils/borderIterator.js +21 -0
  718. package/lib-esm/utils/borderIterator.js.map +1 -0
  719. package/lib-esm/utils/checkKernel.d.ts +8 -0
  720. package/lib-esm/utils/checkKernel.d.ts.map +1 -0
  721. package/lib-esm/utils/checkKernel.js +12 -0
  722. package/lib-esm/utils/checkKernel.js.map +1 -0
  723. package/lib-esm/utils/checkProcessable.d.ts +18 -0
  724. package/lib-esm/utils/checkProcessable.d.ts.map +1 -0
  725. package/lib-esm/utils/checkProcessable.js +62 -0
  726. package/lib-esm/utils/checkProcessable.js.map +1 -0
  727. package/lib-esm/utils/clamp.d.ts +10 -0
  728. package/lib-esm/utils/clamp.d.ts.map +1 -0
  729. package/lib-esm/utils/clamp.js +34 -0
  730. package/lib-esm/utils/clamp.js.map +1 -0
  731. package/lib-esm/utils/colorModels.d.ts +15 -0
  732. package/lib-esm/utils/colorModels.d.ts.map +1 -0
  733. package/lib-esm/utils/colorModels.js +36 -0
  734. package/lib-esm/utils/colorModels.js.map +1 -0
  735. package/lib-esm/utils/copyData.d.ts +4 -0
  736. package/lib-esm/utils/copyData.d.ts.map +1 -0
  737. package/lib-esm/utils/copyData.js +16 -0
  738. package/lib-esm/utils/copyData.js.map +1 -0
  739. package/lib-esm/utils/getIndex.d.ts +12 -0
  740. package/lib-esm/utils/getIndex.d.ts.map +1 -0
  741. package/lib-esm/utils/getIndex.js +13 -0
  742. package/lib-esm/utils/getIndex.js.map +1 -0
  743. package/lib-esm/utils/getOutputImage.d.ts +61 -0
  744. package/lib-esm/utils/getOutputImage.d.ts.map +1 -0
  745. package/lib-esm/utils/getOutputImage.js +143 -0
  746. package/lib-esm/utils/getOutputImage.js.map +1 -0
  747. package/lib-esm/utils/interpolateBorder.d.ts +44 -0
  748. package/lib-esm/utils/interpolateBorder.d.ts.map +1 -0
  749. package/lib-esm/utils/interpolateBorder.js +134 -0
  750. package/lib-esm/utils/interpolateBorder.js.map +1 -0
  751. package/lib-esm/utils/interpolatePixel.d.ts +18 -0
  752. package/lib-esm/utils/interpolatePixel.d.ts.map +1 -0
  753. package/lib-esm/utils/interpolatePixel.js +118 -0
  754. package/lib-esm/utils/interpolatePixel.js.map +1 -0
  755. package/lib-esm/utils/kernels.d.ts +13 -0
  756. package/lib-esm/utils/kernels.d.ts.map +1 -0
  757. package/lib-esm/utils/kernels.js +63 -0
  758. package/lib-esm/utils/kernels.js.map +1 -0
  759. package/lib-esm/utils/kinds.d.ts +9 -0
  760. package/lib-esm/utils/kinds.d.ts.map +1 -0
  761. package/lib-esm/utils/kinds.js +20 -0
  762. package/lib-esm/utils/kinds.js.map +1 -0
  763. package/lib-esm/utils/round.d.ts +2 -0
  764. package/lib-esm/utils/round.d.ts.map +1 -0
  765. package/lib-esm/utils/round.js +7 -0
  766. package/lib-esm/utils/round.js.map +1 -0
  767. package/lib-esm/utils/validators.d.ts +23 -0
  768. package/lib-esm/utils/validators.d.ts.map +1 -0
  769. package/lib-esm/utils/validators.js +34 -0
  770. package/lib-esm/utils/validators.js.map +1 -0
  771. package/package.json +79 -0
  772. package/src/IJS.ts +758 -0
  773. package/src/Mask.ts +476 -0
  774. package/src/compute/histogram.ts +39 -0
  775. package/src/compute/index.ts +1 -0
  776. package/src/filters/and.ts +34 -0
  777. package/src/filters/blur.ts +49 -0
  778. package/src/filters/convolution.ts +357 -0
  779. package/src/filters/derivativeFilter.ts +77 -0
  780. package/src/filters/gaussianBlur.ts +124 -0
  781. package/src/filters/gradientFilter.ts +106 -0
  782. package/src/filters/hypotenuse.ts +74 -0
  783. package/src/filters/index.ts +10 -0
  784. package/src/filters/invert.ts +47 -0
  785. package/src/filters/or.ts +34 -0
  786. package/src/filters/subtractImage.ts +91 -0
  787. package/src/geometry/index.ts +3 -0
  788. package/src/geometry/resize.ts +182 -0
  789. package/src/geometry/rotate.ts +99 -0
  790. package/src/geometry/transform.ts +169 -0
  791. package/src/index.ts +9 -0
  792. package/src/load/decode.ts +33 -0
  793. package/src/load/decodeJpeg.ts +17 -0
  794. package/src/load/decodePng.ts +78 -0
  795. package/src/load/decodeTiff.ts +64 -0
  796. package/src/load/index.ts +7 -0
  797. package/src/load/read.ts +27 -0
  798. package/src/load/readCanvas.ts +17 -0
  799. package/src/load/readImg.ts +15 -0
  800. package/src/morphology/bottomHat.ts +66 -0
  801. package/src/morphology/cannyEdgeDetector.ts +214 -0
  802. package/src/morphology/clearBorder.ts +116 -0
  803. package/src/morphology/close.ts +61 -0
  804. package/src/morphology/dilate.ts +264 -0
  805. package/src/morphology/erode.ts +264 -0
  806. package/src/morphology/floodFill.ts +31 -0
  807. package/src/morphology/index.ts +10 -0
  808. package/src/morphology/morphologicalGradient.ts +69 -0
  809. package/src/morphology/open.ts +61 -0
  810. package/src/morphology/topHat.ts +64 -0
  811. package/src/operations/convertColor.ts +185 -0
  812. package/src/operations/convertDepth.ts +59 -0
  813. package/src/operations/copyTo.ts +107 -0
  814. package/src/operations/grey.ts +114 -0
  815. package/src/operations/greyAlgorithms.ts +265 -0
  816. package/src/operations/index.ts +7 -0
  817. package/src/operations/merge.ts +52 -0
  818. package/src/operations/split.ts +19 -0
  819. package/src/operations/threshold.ts +145 -0
  820. package/src/operations/thresholds/huang.ts +84 -0
  821. package/src/operations/thresholds/intermodes.ts +62 -0
  822. package/src/operations/thresholds/isodata.ts +53 -0
  823. package/src/operations/thresholds/li.ts +81 -0
  824. package/src/operations/thresholds/maxEntropy.ts +89 -0
  825. package/src/operations/thresholds/mean.ts +23 -0
  826. package/src/operations/thresholds/minError.ts +102 -0
  827. package/src/operations/thresholds/minimum.ts +78 -0
  828. package/src/operations/thresholds/moments.ts +60 -0
  829. package/src/operations/thresholds/otsu.ts +42 -0
  830. package/src/operations/thresholds/percentile.ts +40 -0
  831. package/src/operations/thresholds/renyiEntropy.ts +148 -0
  832. package/src/operations/thresholds/shanbhag.ts +82 -0
  833. package/src/operations/thresholds/triangle.ts +115 -0
  834. package/src/operations/thresholds/yen.ts +63 -0
  835. package/src/roi/RoiManager.ts +34 -0
  836. package/src/roi/RoiMapManager.ts +48 -0
  837. package/src/roi/colorRois.ts +69 -0
  838. package/src/roi/fromMask.ts +184 -0
  839. package/src/roi/index.ts +4 -0
  840. package/src/roi/utils/colorMaps/getBinaryMap.ts +72 -0
  841. package/src/roi/utils/colorMaps/getRainbowMap.ts +65 -0
  842. package/src/roi/utils/colorMaps/getSaturationMap.ts +80 -0
  843. package/src/roi/utils/constants.ts +3 -0
  844. package/src/roi/utils/getColorMap.ts +51 -0
  845. package/src/roi/utils/hsvToRgb.ts +62 -0
  846. package/src/roi/utils/rgbToNumber.ts +9 -0
  847. package/src/save/encode.ts +65 -0
  848. package/src/save/encodeJpeg.ts +37 -0
  849. package/src/save/encodePng.ts +16 -0
  850. package/src/save/index.ts +5 -0
  851. package/src/save/write.ts +109 -0
  852. package/src/save/writeCanvas.ts +82 -0
  853. package/src/utils/boolToNumber.ts +18 -0
  854. package/src/utils/borderIterator.ts +22 -0
  855. package/src/utils/checkKernel.ts +13 -0
  856. package/src/utils/checkProcessable.ts +98 -0
  857. package/src/utils/clamp.ts +39 -0
  858. package/src/utils/colorModels.ts +41 -0
  859. package/src/utils/copyData.ts +23 -0
  860. package/src/utils/getIndex.ts +19 -0
  861. package/src/utils/getOutputImage.ts +182 -0
  862. package/src/utils/interpolateBorder.ts +206 -0
  863. package/src/utils/interpolatePixel.ts +170 -0
  864. package/src/utils/kernels.ts +73 -0
  865. package/src/utils/kinds.ts +27 -0
  866. package/src/utils/round.ts +6 -0
  867. package/src/utils/validators.ts +43 -0
@@ -0,0 +1,149 @@
1
+ import { IJS } from '..';
2
+ /**
3
+ * Converts R, G and B values to a single value using Luma 709 standard({@link https://en.wikipedia.org/wiki/Luma_(video)}).
4
+ *
5
+ * @param red - Red value of current pixel.
6
+ * @param green - Green value of current pixel.
7
+ * @param blue - Blue value of current pixel.
8
+ * @returns - Corresponding gray value.
9
+ */
10
+ export declare function luma709(red: number, green: number, blue: number): number;
11
+ /**
12
+ * Converts R, G and B values to a single value using Luma 601 standard({@link https://en.wikipedia.org/wiki/Luma_(video)}).
13
+ *
14
+ * @param red - Red value of current pixel.
15
+ * @param green - Green value of current pixel.
16
+ * @param blue - Blue value of current pixel.
17
+ * @returns - Corresponding gray value.
18
+ */
19
+ export declare function luma601(red: number, green: number, blue: number): number;
20
+ /**
21
+ * Return the maximal value between red, green and blue.
22
+ *
23
+ * @param red - Red value of current pixel.
24
+ * @param green - Green value of current pixel.
25
+ * @param blue - Blue value of current pixel.
26
+ * @returns - Corresponding gray value.
27
+ */
28
+ export declare function max(red: number, green: number, blue: number): number;
29
+ /**
30
+ * Return the minimal value between red, green and blue.
31
+ *
32
+ * @param red - Red value of current pixel.
33
+ * @param green - Green value of current pixel.
34
+ * @param blue - Blue value of current pixel.
35
+ * @returns - Corresponding gray value.
36
+ */
37
+ export declare function min(red: number, green: number, blue: number): number;
38
+ /**
39
+ * Return the average of red, green and blue.
40
+ *
41
+ * @param red - Red value of current pixel.
42
+ * @param green - Green value of current pixel.
43
+ * @param blue - Blue value of current pixel.
44
+ * @returns - Corresponding gray value.
45
+ */
46
+ export declare function average(red: number, green: number, blue: number): number;
47
+ /**
48
+ * Return the average between the max and min values of red, green and blue.
49
+ *
50
+ * @param red - Red value of current pixel.
51
+ * @param green - Green value of current pixel.
52
+ * @param blue - Blue value of current pixel.
53
+ * @returns - Corresponding gray value.
54
+ */
55
+ export declare function minmax(red: number, green: number, blue: number): number;
56
+ /**
57
+ * Return the red value.
58
+ *
59
+ * @param red - Red value of current pixel.
60
+ * @returns - Corresponding gray value.
61
+ */
62
+ export declare function red(red: number): number;
63
+ /**
64
+ * Return the green value.
65
+ *
66
+ * @param red - Red value of current pixel.
67
+ * @param green - Green value of current pixel.
68
+ * @returns - Corresponding gray value.
69
+ */
70
+ export declare function green(red: number, green: number): number;
71
+ /**
72
+ * Return the blue value.
73
+ *
74
+ * @param red - Red value of current pixel.
75
+ * @param green - Green value of current pixel.
76
+ * @param blue - Blue value of current pixel.
77
+ * @returns - Corresponding gray value.
78
+ */
79
+ export declare function blue(red: number, green: number, blue: number): number;
80
+ /**
81
+ * Return the minimum of the inverses of red, green and blue.
82
+ *
83
+ * @param red - Red value of current pixel.
84
+ * @param green - Green value of current pixel.
85
+ * @param blue - Blue value of current pixel.
86
+ * @param image - Image to convert to grey.
87
+ * @returns - Corresponding gray value.
88
+ */
89
+ export declare function black(red: number, green: number, blue: number, image: IJS): number;
90
+ /**
91
+ * Returns the cyan component of a pixel.
92
+ *
93
+ * @param red - Red value of current pixel.
94
+ * @param green - Green value of current pixel.
95
+ * @param blue - Blue value of current pixel.
96
+ * @param image - Image to convert to grey.
97
+ * @returns - Corresponding gray value.
98
+ */
99
+ export declare function cyan(red: number, green: number, blue: number, image: IJS): number;
100
+ /**
101
+ * Returns the magenta component of a pixel.
102
+ *
103
+ * @param red - Red value of current pixel
104
+ * @param green - Green value of current pixel
105
+ * @param blue - Blue value of current pixel
106
+ * @param image - Image to convert to grey.
107
+ * @returns - Corresponding gray value.
108
+ */
109
+ export declare function magenta(red: number, green: number, blue: number, image: IJS): number;
110
+ /**
111
+ * Returns the yellow component of a pixel.
112
+ *
113
+ * @param red - Red value of current pixel
114
+ * @param green - Green value of current pixel
115
+ * @param blue - Blue value of current pixel
116
+ * @param image - Image to convert to grey.
117
+ * @returns - Corresponding gray value.
118
+ */
119
+ export declare function yellow(red: number, green: number, blue: number, image: IJS): number;
120
+ /**
121
+ * Returns the hue of a pixel.
122
+ *
123
+ * @param red - Red value of current pixel
124
+ * @param green - Green value of current pixel
125
+ * @param blue - Blue value of current pixel
126
+ * @param image - Image to convert to grey.
127
+ * @returns - Corresponding gray value.
128
+ */
129
+ export declare function hue(red: number, green: number, blue: number, image: IJS): number;
130
+ /**
131
+ * Returns the saturation component of a pixel.
132
+ *
133
+ * @param red - Red value of current pixel
134
+ * @param green - Green value of current pixel
135
+ * @param blue - Blue value of current pixel
136
+ * @param image - Image to convert to grey.
137
+ * @returns - Corresponding gray value.
138
+ */
139
+ export declare function saturation(red: number, green: number, blue: number, image: IJS): number;
140
+ /**
141
+ * Returns the lightness of a pixel.
142
+ *
143
+ * @param red - Red value of current pixel
144
+ * @param green - Green value of current pixel
145
+ * @param blue - Blue value of current pixel
146
+ * @returns - Corresponding gray value.
147
+ */
148
+ export declare function lightness(red: number, green: number, blue: number): number;
149
+ //# sourceMappingURL=greyAlgorithms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"greyAlgorithms.d.ts","sourceRoot":"","sources":["../../src/operations/greyAlgorithms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;AAEzB;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CASxE;AACD;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAIxE;AACD;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpE;AACD;;;;;;;GAOG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpE;AACD;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAExE;AACD;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvE;AACD;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvC;AACD;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AACD;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErE;AACD;;;;;;;;GAQG;AACH,wBAAgB,KAAK,CACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAMR;AACD;;;;;;;;GAQG;AACH,wBAAgB,IAAI,CAClB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAMR;AACD;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAOR;AACD;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAOR;AACD;;;;;;;;GAQG;AACH,wBAAgB,GAAG,CACjB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAuBR;AACD;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,GACT,MAAM,CAMR;AACD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAI1E"}
@@ -0,0 +1,242 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lightness = exports.saturation = exports.hue = exports.yellow = exports.magenta = exports.cyan = exports.black = exports.blue = exports.green = exports.red = exports.minmax = exports.average = exports.min = exports.max = exports.luma601 = exports.luma709 = void 0;
4
+ /**
5
+ * Converts R, G and B values to a single value using Luma 709 standard({@link https://en.wikipedia.org/wiki/Luma_(video)}).
6
+ *
7
+ * @param red - Red value of current pixel.
8
+ * @param green - Green value of current pixel.
9
+ * @param blue - Blue value of current pixel.
10
+ * @returns - Corresponding gray value.
11
+ */
12
+ function luma709(red, green, blue) {
13
+ // sRGB
14
+ // return red * 0.2126 + green * 0.7152 + blue * 0.0722;
15
+ // Let's do a little trick ... in order not convert the integer to a double we do
16
+ // the multiplication with integer to reach a total of 32768 and then shift the bits
17
+ // of 15 to the right
18
+ // This does a Math.floor and may lead to small (max 1) difference
19
+ // Same result, > 10% faster on the full grey conversion
20
+ return (red * 6966 + green * 23436 + blue * 2366) >> 15;
21
+ }
22
+ exports.luma709 = luma709;
23
+ /**
24
+ * Converts R, G and B values to a single value using Luma 601 standard({@link https://en.wikipedia.org/wiki/Luma_(video)}).
25
+ *
26
+ * @param red - Red value of current pixel.
27
+ * @param green - Green value of current pixel.
28
+ * @param blue - Blue value of current pixel.
29
+ * @returns - Corresponding gray value.
30
+ */
31
+ function luma601(red, green, blue) {
32
+ // NTSC
33
+ // return this.red * 0.299 + green * 0.587 + blue * 0.114;
34
+ return (red * 9798 + green * 19235 + blue * 3735) >> 15;
35
+ }
36
+ exports.luma601 = luma601;
37
+ /**
38
+ * Return the maximal value between red, green and blue.
39
+ *
40
+ * @param red - Red value of current pixel.
41
+ * @param green - Green value of current pixel.
42
+ * @param blue - Blue value of current pixel.
43
+ * @returns - Corresponding gray value.
44
+ */
45
+ function max(red, green, blue) {
46
+ return Math.max(red, green, blue);
47
+ }
48
+ exports.max = max;
49
+ /**
50
+ * Return the minimal value between red, green and blue.
51
+ *
52
+ * @param red - Red value of current pixel.
53
+ * @param green - Green value of current pixel.
54
+ * @param blue - Blue value of current pixel.
55
+ * @returns - Corresponding gray value.
56
+ */
57
+ function min(red, green, blue) {
58
+ return Math.min(red, green, blue);
59
+ }
60
+ exports.min = min;
61
+ /**
62
+ * Return the average of red, green and blue.
63
+ *
64
+ * @param red - Red value of current pixel.
65
+ * @param green - Green value of current pixel.
66
+ * @param blue - Blue value of current pixel.
67
+ * @returns - Corresponding gray value.
68
+ */
69
+ function average(red, green, blue) {
70
+ return ((red + green + blue) / 3) >> 0;
71
+ }
72
+ exports.average = average;
73
+ /**
74
+ * Return the average between the max and min values of red, green and blue.
75
+ *
76
+ * @param red - Red value of current pixel.
77
+ * @param green - Green value of current pixel.
78
+ * @param blue - Blue value of current pixel.
79
+ * @returns - Corresponding gray value.
80
+ */
81
+ function minmax(red, green, blue) {
82
+ return (Math.max(red, green, blue) + Math.min(red, green, blue)) / 2;
83
+ }
84
+ exports.minmax = minmax;
85
+ /**
86
+ * Return the red value.
87
+ *
88
+ * @param red - Red value of current pixel.
89
+ * @returns - Corresponding gray value.
90
+ */
91
+ function red(red) {
92
+ return red;
93
+ }
94
+ exports.red = red;
95
+ /**
96
+ * Return the green value.
97
+ *
98
+ * @param red - Red value of current pixel.
99
+ * @param green - Green value of current pixel.
100
+ * @returns - Corresponding gray value.
101
+ */
102
+ function green(red, green) {
103
+ return green;
104
+ }
105
+ exports.green = green;
106
+ /**
107
+ * Return the blue value.
108
+ *
109
+ * @param red - Red value of current pixel.
110
+ * @param green - Green value of current pixel.
111
+ * @param blue - Blue value of current pixel.
112
+ * @returns - Corresponding gray value.
113
+ */
114
+ function blue(red, green, blue) {
115
+ return blue;
116
+ }
117
+ exports.blue = blue;
118
+ /**
119
+ * Return the minimum of the inverses of red, green and blue.
120
+ *
121
+ * @param red - Red value of current pixel.
122
+ * @param green - Green value of current pixel.
123
+ * @param blue - Blue value of current pixel.
124
+ * @param image - Image to convert to grey.
125
+ * @returns - Corresponding gray value.
126
+ */
127
+ function black(red, green, blue, image) {
128
+ return Math.min(image.maxValue - red, image.maxValue - green, image.maxValue - blue);
129
+ }
130
+ exports.black = black;
131
+ /**
132
+ * Returns the cyan component of a pixel.
133
+ *
134
+ * @param red - Red value of current pixel.
135
+ * @param green - Green value of current pixel.
136
+ * @param blue - Blue value of current pixel.
137
+ * @param image - Image to convert to grey.
138
+ * @returns - Corresponding gray value.
139
+ */
140
+ function cyan(red, green, blue, image) {
141
+ let blackColor = black(red, green, blue, image);
142
+ return (((image.maxValue - red - blackColor) / (1 - blackColor / image.maxValue)) >>
143
+ 0);
144
+ }
145
+ exports.cyan = cyan;
146
+ /**
147
+ * Returns the magenta component of a pixel.
148
+ *
149
+ * @param red - Red value of current pixel
150
+ * @param green - Green value of current pixel
151
+ * @param blue - Blue value of current pixel
152
+ * @param image - Image to convert to grey.
153
+ * @returns - Corresponding gray value.
154
+ */
155
+ function magenta(red, green, blue, image) {
156
+ let blackColor = black(red, green, blue, image);
157
+ return (((image.maxValue - green - blackColor) /
158
+ (1 - blackColor / image.maxValue)) >>
159
+ 0);
160
+ }
161
+ exports.magenta = magenta;
162
+ /**
163
+ * Returns the yellow component of a pixel.
164
+ *
165
+ * @param red - Red value of current pixel
166
+ * @param green - Green value of current pixel
167
+ * @param blue - Blue value of current pixel
168
+ * @param image - Image to convert to grey.
169
+ * @returns - Corresponding gray value.
170
+ */
171
+ function yellow(red, green, blue, image) {
172
+ let blackColor = black(red, green, blue, image);
173
+ return (((image.maxValue - blue - blackColor) /
174
+ (1 - blackColor / image.maxValue)) >>
175
+ 0);
176
+ }
177
+ exports.yellow = yellow;
178
+ /**
179
+ * Returns the hue of a pixel.
180
+ *
181
+ * @param red - Red value of current pixel
182
+ * @param green - Green value of current pixel
183
+ * @param blue - Blue value of current pixel
184
+ * @param image - Image to convert to grey.
185
+ * @returns - Corresponding gray value.
186
+ */
187
+ function hue(red, green, blue, image) {
188
+ let minValue = min(red, green, blue);
189
+ let maxValue = max(red, green, blue);
190
+ if (maxValue === minValue) {
191
+ return 0;
192
+ }
193
+ let hue = 0;
194
+ let delta = maxValue - minValue;
195
+ switch (maxValue) {
196
+ case red:
197
+ hue = (green - blue) / delta + (green < blue ? 6 : 0);
198
+ break;
199
+ case green:
200
+ hue = (blue - red) / delta + 2;
201
+ break;
202
+ case blue:
203
+ hue = (red - green) / delta + 4;
204
+ break;
205
+ default:
206
+ throw new Error('unreachable');
207
+ }
208
+ return ((hue / 6) * image.maxValue) >> 0;
209
+ }
210
+ exports.hue = hue;
211
+ /**
212
+ * Returns the saturation component of a pixel.
213
+ *
214
+ * @param red - Red value of current pixel
215
+ * @param green - Green value of current pixel
216
+ * @param blue - Blue value of current pixel
217
+ * @param image - Image to convert to grey.
218
+ * @returns - Corresponding gray value.
219
+ */
220
+ function saturation(red, green, blue, image) {
221
+ // from HSV model
222
+ let minValue = min(red, green, blue);
223
+ let maxValue = max(red, green, blue);
224
+ let delta = maxValue - minValue;
225
+ return maxValue === 0 ? 0 : (delta / maxValue) * image.maxValue;
226
+ }
227
+ exports.saturation = saturation;
228
+ /**
229
+ * Returns the lightness of a pixel.
230
+ *
231
+ * @param red - Red value of current pixel
232
+ * @param green - Green value of current pixel
233
+ * @param blue - Blue value of current pixel
234
+ * @returns - Corresponding gray value.
235
+ */
236
+ function lightness(red, green, blue) {
237
+ let minValue = min(red, green, blue);
238
+ let maxValue = max(red, green, blue);
239
+ return (maxValue + minValue) / 2;
240
+ }
241
+ exports.lightness = lightness;
242
+ //# sourceMappingURL=greyAlgorithms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"greyAlgorithms.js","sourceRoot":"","sources":["../../src/operations/greyAlgorithms.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export * from './convertColor';
2
+ export * from './convertDepth';
3
+ export * from './merge';
4
+ export * from './split';
5
+ export * from './threshold';
6
+ export * from './grey';
7
+ export * from './copyTo';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/operations/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./convertColor"), exports);
18
+ __exportStar(require("./convertDepth"), exports);
19
+ __exportStar(require("./merge"), exports);
20
+ __exportStar(require("./split"), exports);
21
+ __exportStar(require("./threshold"), exports);
22
+ __exportStar(require("./grey"), exports);
23
+ __exportStar(require("./copyTo"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/operations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,8CAA4B;AAC5B,yCAAuB;AACvB,2CAAyB"}
@@ -0,0 +1,9 @@
1
+ import { IJS } from '../IJS';
2
+ /**
3
+ * Inverse of split. Merges multiple single-channel images into one.
4
+ *
5
+ * @param images - An array of single-channel images.
6
+ * @returns The merged image.
7
+ */
8
+ export declare function merge(images: IJS[]): IJS;
9
+ //# sourceMappingURL=merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/operations/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAmB,MAAM,QAAQ,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,CA2CxC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.merge = void 0;
4
+ const IJS_1 = require("../IJS");
5
+ /**
6
+ * Inverse of split. Merges multiple single-channel images into one.
7
+ *
8
+ * @param images - An array of single-channel images.
9
+ * @returns The merged image.
10
+ */
11
+ function merge(images) {
12
+ const channels = images.length;
13
+ let colorModel;
14
+ if (channels === 2) {
15
+ colorModel = IJS_1.ImageColorModel.GREYA;
16
+ }
17
+ else if (channels === 3) {
18
+ colorModel = IJS_1.ImageColorModel.RGB;
19
+ }
20
+ else if (channels === 4) {
21
+ colorModel = IJS_1.ImageColorModel.RGBA;
22
+ }
23
+ else {
24
+ throw new RangeError(`merge expects an array of two to four images. Got ${channels}`);
25
+ }
26
+ const first = images[0];
27
+ if (first.channels !== 1) {
28
+ throw new Error(`each image must have one channel. Got ${first.channels}`);
29
+ }
30
+ for (let i = 1; i < channels; i++) {
31
+ const img = images[i];
32
+ if (img.channels !== 1) {
33
+ throw new Error(`each image must have one channel. Got ${img.channels}`);
34
+ }
35
+ if (img.width !== first.width ||
36
+ img.height !== first.height ||
37
+ img.depth !== first.depth) {
38
+ throw new Error('all images must have the same width, height and depth');
39
+ }
40
+ }
41
+ const newImage = IJS_1.IJS.createFrom(first, { colorModel });
42
+ for (let c = 0; c < channels; c++) {
43
+ const img = images[c];
44
+ for (let i = 0; i < newImage.size; i++) {
45
+ newImage.setValueByIndex(i, c, img.getValueByIndex(i, 0));
46
+ }
47
+ }
48
+ return newImage;
49
+ }
50
+ exports.merge = merge;
51
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/operations/merge.ts"],"names":[],"mappings":";;;AAAA,gCAA8C;AAE9C;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,MAAa;IACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAE/B,IAAI,UAA2B,CAAC;IAChC,IAAI,QAAQ,KAAK,CAAC,EAAE;QAClB,UAAU,GAAG,qBAAe,CAAC,KAAK,CAAC;KACpC;SAAM,IAAI,QAAQ,KAAK,CAAC,EAAE;QACzB,UAAU,GAAG,qBAAe,CAAC,GAAG,CAAC;KAClC;SAAM,IAAI,QAAQ,KAAK,CAAC,EAAE;QACzB,UAAU,GAAG,qBAAe,CAAC,IAAI,CAAC;KACnC;SAAM;QACL,MAAM,IAAI,UAAU,CAClB,qDAAqD,QAAQ,EAAE,CAChE,CAAC;KACH;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC5E;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC1E;QACD,IACE,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YACzB,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC3B,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,EACzB;YACA,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC1E;KACF;IAED,MAAM,QAAQ,GAAG,SAAG,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACtC,QAAQ,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SAC3D;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AA3CD,sBA2CC"}
@@ -0,0 +1,9 @@
1
+ import { IJS } from '../IJS';
2
+ /**
3
+ * Create an array of single-channel images based on a multi-channel image.
4
+ *
5
+ * @param image - The image with many channels.
6
+ * @returns Array of single-channel images.
7
+ */
8
+ export declare function split(image: IJS): IJS[];
9
+ //# sourceMappingURL=split.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../src/operations/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAmB,MAAM,QAAQ,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,CAUvC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.split = void 0;
4
+ const IJS_1 = require("../IJS");
5
+ /**
6
+ * Create an array of single-channel images based on a multi-channel image.
7
+ *
8
+ * @param image - The image with many channels.
9
+ * @returns Array of single-channel images.
10
+ */
11
+ function split(image) {
12
+ const result = [];
13
+ for (let c = 0; c < image.channels; c++) {
14
+ const channel = IJS_1.IJS.createFrom(image, { colorModel: IJS_1.ImageColorModel.GREY });
15
+ for (let i = 0; i < channel.size; i++) {
16
+ channel.setValueByIndex(i, 0, image.getValueByIndex(i, c));
17
+ }
18
+ result.push(channel);
19
+ }
20
+ return result;
21
+ }
22
+ exports.split = split;
23
+ //# sourceMappingURL=split.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"split.js","sourceRoot":"","sources":["../../src/operations/split.ts"],"names":[],"mappings":";;;AAAA,gCAA8C;AAE9C;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,KAAU;IAC9B,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,SAAG,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,qBAAe,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACrC,OAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SAC5D;QACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACtB;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAVD,sBAUC"}
@@ -0,0 +1,58 @@
1
+ import { Mask } from '..';
2
+ import { IJS } from '../IJS';
3
+ export declare enum ThresholdAlgorithm {
4
+ HUANG = "HUANG",
5
+ INTERMODES = "INTERMODES",
6
+ ISODATA = "ISODATA",
7
+ LI = "LI",
8
+ MAX_ENTROPY = "MAX_ENTROPY",
9
+ MEAN = "MEAN",
10
+ MIN_ERROR = "MIN_ERROR",
11
+ MINIMUM = "MINIMUM",
12
+ MOMENTS = "MOMENTS",
13
+ OTSU = "OTSU",
14
+ PERCENTILE = "PERCENTILE",
15
+ RENYI_ENTROPY = "RENYI_ENTROPY",
16
+ SHANBHAG = "SHANBHAG",
17
+ TRIANGLE = "TRIANGLE",
18
+ YEN = "YEN"
19
+ }
20
+ interface ThresholdOptionsBase {
21
+ /**
22
+ * Image to use as the output.
23
+ */
24
+ out?: Mask;
25
+ }
26
+ export interface ThresholdOptionsThreshold extends ThresholdOptionsBase {
27
+ /**
28
+ * Threshold value that should be used. Should be an integer between 0 and Image.maxValue.
29
+ */
30
+ threshold: number;
31
+ }
32
+ export interface ThresholdOptionsAlgorithm extends ThresholdOptionsBase {
33
+ /**
34
+ * Specify a function to computes the threshold value.
35
+ *
36
+ * @default ThresholdAlgorithm.OTSU
37
+ */
38
+ algorithm?: ThresholdAlgorithm;
39
+ }
40
+ export declare type ThresholdOptions = ThresholdOptionsThreshold | ThresholdOptionsAlgorithm;
41
+ /**
42
+ * Compute threshold value for an image using the specified algorithm.
43
+ *
44
+ * @param image - The grey image.
45
+ * @param algorithm - Algorithm that defines the threshold.
46
+ * @returns The threshold value for the image.
47
+ */
48
+ export declare function computeThreshold(image: IJS, algorithm?: ThresholdAlgorithm): number;
49
+ /**
50
+ * Create a black and white image based on a threshold value.
51
+ *
52
+ * @param image - The grey image to convert.
53
+ * @param options - Threshold options.
54
+ * @returns The resulting mask.
55
+ */
56
+ export declare function threshold(image: IJS, options?: ThresholdOptions): Mask;
57
+ export {};
58
+ //# sourceMappingURL=threshold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threshold.d.ts","sourceRoot":"","sources":["../../src/operations/threshold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAoB7B,oBAAY,kBAAkB;IAC5B,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,EAAE,OAAO;IACT,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,GAAG,QAAQ;CACZ;AAED,UAAU,oBAAoB;IAC5B;;OAEG;IACH,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;;;OAIG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED,oBAAY,gBAAgB,GACxB,yBAAyB,GACzB,yBAAyB,CAAC;AAE9B;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,GAAG,EACV,SAAS,GAAE,kBAA4C,GACtD,MAAM,CA0CR;AAGD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI,CAgB1E"}