larvitar 3.5.6 → 3.6.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.
@@ -2,7 +2,7 @@
2
2
  * @desc This file provides utility functions for
3
3
  * manipulating image pixels and image metadata
4
4
  */
5
- import type { CustomDataSet, MetaData, ReslicedInstance, Series } from "./types";
5
+ import type { CustomDataSet, MetaData, ReslicedInstance, Series, TypedArray } from "./types";
6
6
  /**
7
7
  * @typedef {Object} CornerstoneSeries
8
8
  * @property {Array} imageIds Array of the instances imageIds
@@ -16,20 +16,30 @@ import type { CustomDataSet, MetaData, ReslicedInstance, Series } from "./types"
16
16
  * @param {Array} el - The image_orientation dicom tag
17
17
  */
18
18
  export declare const getNormalOrientation: (el: [number, number, number, number, number, number]) => number[];
19
+ /**
20
+ * Get the min and max pixel value from pixelData
21
+ * @instance
22
+ * @function getMinPixelValue
23
+ * @param {Array} pixelData - Pixel data array
24
+ */
25
+ export declare const getMinMaxPixelValue: (pixelData: number[] | TypedArray) => {
26
+ minPixelValue: number;
27
+ maxPixelValue: number;
28
+ };
19
29
  /**
20
30
  * Get the min pixel value from pixelData
21
31
  * @instance
22
32
  * @function getMinPixelValue
23
33
  * @param {Array} pixelData - Pixel data array
24
34
  */
25
- export declare const getMinPixelValue: (pixelData: number[]) => number;
35
+ export declare const getMinPixelValue: (pixelData: number[] | TypedArray) => number;
26
36
  /**
27
37
  * Get the max pixel value from pixelData
28
38
  * @instance
29
39
  * @function getMaxPixelValue
30
40
  * @param {Array} pixelData - Pixel data array
31
41
  */
32
- export declare const getMaxPixelValue: (pixelData: number[]) => number;
42
+ export declare const getMaxPixelValue: (pixelData: number[] | TypedArray) => number;
33
43
  /**
34
44
  * Create the pixel representation string (type and length) from dicom tags
35
45
  * @instance
@@ -0,0 +1,29 @@
1
+ import { Image, TypedArray, KernelConfig } from "../types";
2
+ /**
3
+ * Apply convolution filter to DICOM image
4
+ * @param {Object} loadedImage - The DICOM image object
5
+ * @param {string} filterName - Name of the filter to apply
6
+ * @param {number} multiplier - Optional multiplier for kernel values (default: 1)
7
+ * @returns {TypedArray} - Convolved pixel data
8
+ */
9
+ export declare function applyConvolutionFilter(loadedImage: Image, filterName: string, generateImage?: boolean, multiplier?: number): Partial<Image> | TypedArray;
10
+ /**
11
+ * Create the filtered image
12
+ * @param {string} name - Name for the new kernel
13
+ * @param {Object} config - Kernel configuration (modality, label, size, kernel)
14
+ * @returns {Partial<Image>} - Convolved pixel data
15
+ */
16
+ export declare function createFilteredImage(loadedImage: Image, filteredPixelArray: number[]): Partial<Image>;
17
+ /**
18
+ * Add custom kernel to the global object
19
+ * @param {string} name - Name for the new kernel
20
+ * @param {Object} config - Kernel configuration (modality, label, size, kernel)
21
+ */
22
+ export declare function addCustomKernel(name: string, config: KernelConfig): void;
23
+ /**
24
+ * Get kernels
25
+ * @returns {Object} - CONVOLUTION_KERNELS object
26
+ */
27
+ export declare function getKernels(): {
28
+ [x: string]: KernelConfig;
29
+ };
@@ -332,7 +332,13 @@ type translation = {
332
332
  x: number;
333
333
  y: number;
334
334
  };
335
+ export type KernelConfig = {
336
+ label: string;
337
+ size: number;
338
+ kernel: number[][];
339
+ };
335
340
  export type RenderProps = {
341
+ filterName?: string;
336
342
  cached?: boolean;
337
343
  imageIndex?: number;
338
344
  scale?: number;
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ import { parseContours } from "./imaging/imageContours";
13
13
  import { parseECG } from "./imaging/parsers/ecg";
14
14
  import { renderECG, unrenderECG, syncECGFrame, updateECGMarker, updateECGTotalTime, getDefaultECGLayout } from "./imaging/waveforms/ecg";
15
15
  import { getImagePresets, setImagePreset, setImageCustomPreset } from "./imaging/imagePresets";
16
- import { getNormalOrientation, getMinPixelValue, getMaxPixelValue, getPixelRepresentation, getTypedArrayFromDataType, getSortedStack, randomId, getMeanValue, getReslicedMetadata, getReslicedPixeldata, getDistanceBetweenSlices, getImageMetadata } from "./imaging/imageUtils";
16
+ import { getNormalOrientation, getMinPixelValue, getMaxPixelValue, getMinMaxPixelValue, getPixelRepresentation, getTypedArrayFromDataType, getSortedStack, randomId, getMeanValue, getReslicedMetadata, getReslicedPixeldata, getDistanceBetweenSlices, getImageMetadata } from "./imaging/imageUtils";
17
17
  import { buildHeader, getCachedPixelData, buildData, buildDataAsync, importNRRDImage, exportImageToBase64, exportImageToBase64OriginalSizes } from "./imaging/imageIo";
18
18
  import { anonymize } from "./imaging/imageAnonymization";
19
19
  import { customizeByteArray } from "./imaging/imageCustomization";
@@ -36,9 +36,10 @@ import { populateDsaImageIds } from "./imaging/loaders/dsaImageLoader";
36
36
  import { resetFileLoader, getFileCustomImageId } from "./imaging/loaders/fileLoader";
37
37
  import { getColormapsList, applyColorMap, addColorMap, fillPixelData, HSVToRGB } from "./imaging/imageColormaps";
38
38
  import { applyDSAShift } from "./imaging/postProcessing/applyDSA";
39
+ import { applyConvolutionFilter, addCustomKernel, getKernels } from "./imaging/postProcessing/applyKernel";
39
40
  import { addMouseKeyHandlers, removeMouseKeyHandlers, toggleMouseToolsListeners } from "./imaging/tools/interaction";
40
41
  import { updateImageManager, populateImageManager, getImageManager, resetImageManager, removeDataFromImageManager, getDataFromImageManager, getSopInstanceUIDFromImageManager, getImageTracker, populateGSPSManager, getGSPSManager, resetGSPSManager, getFileManager, resetFileManager, populateFileManager, getDataFromFileManager } from "./imaging/imageManagers";
41
- export { VERSION, cornerstone, cornerstoneTools, parseDicom, cornerstoneFileImageLoader, segModule, cornerstoneDICOMImageLoader, checkAndClearMemory, checkMemoryAllocation, getUsedMemory, getAvailableMemory, getPerformanceMonitor, activatePerformanceMonitor, deactivatePerformanceMonitor, store, parseECG, renderECG, unrenderECG, syncECGFrame, updateECGMarker, updateECGTotalTime, getDefaultECGLayout, getImagePresets, setImagePreset, setImageCustomPreset, getNormalOrientation, getMinPixelValue, getMaxPixelValue, getPixelRepresentation, getTypedArrayFromDataType, getSortedStack, randomId, getMeanValue, getReslicedMetadata, getReslicedPixeldata, getDistanceBetweenSlices, getImageMetadata, buildHeader, getCachedPixelData, buildData, buildDataAsync, importNRRDImage, exportImageToBase64, exportImageToBase64OriginalSizes, anonymize, customizeByteArray, buildLayer, updateLayer, getActiveLayer, setActiveLayer, initializeImageLoader, initializeWebImageLoader, initializeFileImageLoader, registerNRRDImageLoader, registerResliceLoader, registerMultiFrameImageLoader, registerSingleFrameImageLoader, registerDsaImageLoader, updateLoadedStack, reset, readFile, readFiles, parseDataSet, clearImageParsing, convertQidoMetadata, clearImageCache, clearStandardImageCache, clearDSAImageCache, loadAndCacheImages, renderFileImage, renderDICOMPDF, renderWebImage, disableViewport, unloadViewport, resizeViewport, renderImage, redrawImage, resetViewports, updateViewportData, toggleMouseToolsListeners, storeViewportData, invertImage, flipImageHorizontal, flipImageVertical, rotateImageLeft, rotateImageRight, updateImageManager, populateImageManager, getImageManager, resetImageManager, removeDataFromImageManager, getDataFromImageManager, getSopInstanceUIDFromImageManager, getImageTracker, populateGSPSManager, getGSPSManager, resetGSPSManager, populateFileManager, getFileManager, resetFileManager, getDataFromFileManager, resliceSeries, getColormapsList, applyColorMap, addColorMap, fillPixelData, HSVToRGB, parseContours, getImageFrame, buildNrrdImage, getNrrdImageId, loadNrrdImage, getImageIdFromSlice, getSliceNumberFromImageId, getNrrdSerieDimensions, loadReslicedImage, getDicomImageId, cacheImage, cacheImages, loadAndCacheImageStack, loadAndCacheDsaImageStack, loadMultiFrameImage, buildMultiFrameImage, getMultiFrameImageId, clearMultiFrameCache, setSingleFrameCache, clearSingleFrameCache, loadSingleFrameImage, populateDsaImageIds, resetFileLoader, getFileCustomImageId, applyDSAShift, addDiameterTool, addContoursTool, addMaskEditingTool, getCurrentMaskData, addStackStateToElement, addSeedsTool, clearMeasurements, getToolState, clearToolStateByName, updateDiameterTool, addToolStateSingleSlice, clearCornerstoneElements, syncToolStack, updateStackToolState, setSegmentationConfig, csToolsUpdateStack, initializeCSTools, setToolsStyle, addDefaultTools, addTool, setToolActive, setToolDisabled, setToolEnabled, setToolPassive, DEFAULT_TOOLS, dvTools, getDefaultToolsByType, setDefaultToolsProps, registerExternalTool, addMouseKeyHandlers, removeMouseKeyHandlers, initSegmentationModule, addSegmentationMask, setActiveLabelmap, setActiveSegment, undoLastStroke, redoLastStroke, setBrushProps, hexToRgb, rgbToHex, clearSegmentationState, deleteMask, enableBrushTool, disableBrushTool, toggleContourMode, toggleVisibility, getActiveLabelmapBuffer, updateTemporalViewportData, logger, setLogLevel };
42
+ export { VERSION, cornerstone, cornerstoneTools, parseDicom, cornerstoneFileImageLoader, segModule, cornerstoneDICOMImageLoader, checkAndClearMemory, checkMemoryAllocation, getUsedMemory, getAvailableMemory, getPerformanceMonitor, activatePerformanceMonitor, deactivatePerformanceMonitor, store, parseECG, renderECG, unrenderECG, syncECGFrame, updateECGMarker, updateECGTotalTime, getDefaultECGLayout, getImagePresets, setImagePreset, setImageCustomPreset, getNormalOrientation, getMinPixelValue, getMaxPixelValue, getMinMaxPixelValue, getPixelRepresentation, getTypedArrayFromDataType, getSortedStack, randomId, getMeanValue, getReslicedMetadata, getReslicedPixeldata, getDistanceBetweenSlices, getImageMetadata, buildHeader, getCachedPixelData, buildData, buildDataAsync, importNRRDImage, exportImageToBase64, exportImageToBase64OriginalSizes, anonymize, customizeByteArray, buildLayer, updateLayer, getActiveLayer, setActiveLayer, initializeImageLoader, initializeWebImageLoader, initializeFileImageLoader, registerNRRDImageLoader, registerResliceLoader, registerMultiFrameImageLoader, registerSingleFrameImageLoader, registerDsaImageLoader, updateLoadedStack, reset, readFile, readFiles, parseDataSet, clearImageParsing, convertQidoMetadata, clearImageCache, clearStandardImageCache, clearDSAImageCache, loadAndCacheImages, renderFileImage, renderDICOMPDF, renderWebImage, disableViewport, unloadViewport, resizeViewport, renderImage, redrawImage, resetViewports, updateViewportData, toggleMouseToolsListeners, storeViewportData, invertImage, flipImageHorizontal, flipImageVertical, rotateImageLeft, rotateImageRight, updateImageManager, populateImageManager, getImageManager, resetImageManager, removeDataFromImageManager, getDataFromImageManager, getSopInstanceUIDFromImageManager, getImageTracker, populateGSPSManager, getGSPSManager, resetGSPSManager, populateFileManager, getFileManager, resetFileManager, getDataFromFileManager, resliceSeries, getColormapsList, applyColorMap, addColorMap, fillPixelData, HSVToRGB, parseContours, getImageFrame, buildNrrdImage, getNrrdImageId, loadNrrdImage, getImageIdFromSlice, getSliceNumberFromImageId, getNrrdSerieDimensions, loadReslicedImage, getDicomImageId, cacheImage, cacheImages, loadAndCacheImageStack, loadAndCacheDsaImageStack, loadMultiFrameImage, buildMultiFrameImage, getMultiFrameImageId, clearMultiFrameCache, setSingleFrameCache, clearSingleFrameCache, loadSingleFrameImage, populateDsaImageIds, resetFileLoader, getFileCustomImageId, applyDSAShift, applyConvolutionFilter, addCustomKernel, getKernels, addDiameterTool, addContoursTool, addMaskEditingTool, getCurrentMaskData, addStackStateToElement, addSeedsTool, clearMeasurements, getToolState, clearToolStateByName, updateDiameterTool, addToolStateSingleSlice, clearCornerstoneElements, syncToolStack, updateStackToolState, setSegmentationConfig, csToolsUpdateStack, initializeCSTools, setToolsStyle, addDefaultTools, addTool, setToolActive, setToolDisabled, setToolEnabled, setToolPassive, DEFAULT_TOOLS, dvTools, getDefaultToolsByType, setDefaultToolsProps, registerExternalTool, addMouseKeyHandlers, removeMouseKeyHandlers, initSegmentationModule, addSegmentationMask, setActiveLabelmap, setActiveSegment, undoLastStroke, redoLastStroke, setBrushProps, hexToRgb, rgbToHex, clearSegmentationState, deleteMask, enableBrushTool, disableBrushTool, toggleContourMode, toggleVisibility, getActiveLabelmapBuffer, updateTemporalViewportData, logger, setLogLevel };
42
43
  export declare const updateLarvitarManager: (...args: any) => any;
43
44
  export declare const populateLarvitarManager: (...args: any) => any;
44
45
  export declare const getLarvitarManager: (...args: any) => any;