Skip to content

Class: ClusteredNeuroVol ​

Defined in: src/volume/ClusteredNeuroVol.ts:39

ClusteredNeuroVol represents clustered volumetric neuroimaging data.

This class stores cluster assignments for voxels within a mask, where each voxel in the mask is assigned a cluster ID. It provides methods to work with clusters, extract cluster-specific data, and convert between representations.

Direct translation of Python's ClusteredNeuroVol class.

Implements ​

Constructors ​

Constructor ​

ts
new ClusteredNeuroVol(
   mask, 
   clusters, 
   labelMap?): ClusteredNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:54

Creates a ClusteredNeuroVol instance.

Parameters ​

mask ​

LogicalNeuroVol

A LogicalNeuroVol representing the spatial domain of the clusters

clusters ​

number[] | Int32Array<ArrayBufferLike>

An array of cluster labels for each voxel in the mask

labelMap? ​

LabelMap = {}

Optional mapping from cluster names to cluster IDs

Returns ​

ClusteredNeuroVol

Properties ​

space ​

ts
readonly space: NeuroSpace;

Defined in: src/volume/ClusteredNeuroVol.ts:40

Implementation of ​

NeuroVol.space


mask ​

ts
readonly mask: LogicalNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:41


clusters ​

ts
readonly clusters: Int32Array;

Defined in: src/volume/ClusteredNeuroVol.ts:42


labelMap ​

ts
readonly labelMap: LabelMap;

Defined in: src/volume/ClusteredNeuroVol.ts:43

Accessors ​

length ​

Get Signature ​

ts
get length(): number;

Defined in: src/volume/ClusteredNeuroVol.ts:100

Returns ​

number

Implementation of ​

NeuroVol.length


dim ​

Get Signature ​

ts
get dim(): number[];

Defined in: src/volume/ClusteredNeuroVol.ts:104

Returns ​

number[]

Implementation of ​

NeuroVol.dim


spacing ​

Get Signature ​

ts
get spacing(): number[];

Defined in: src/volume/ClusteredNeuroVol.ts:108

Returns ​

number[]

Implementation of ​

NeuroVol.spacing


origin ​

Get Signature ​

ts
get origin(): number[];

Defined in: src/volume/ClusteredNeuroVol.ts:112

Returns ​

number[]

Implementation of ​

NeuroVol.origin

Methods ​

get() ​

ts
get(index): number;

Defined in: src/volume/ClusteredNeuroVol.ts:120

Get value at a linear index. Returns the cluster ID if the voxel is in the mask, 0 otherwise.

Parameters ​

index ​

number

Returns ​

number

Implementation of ​

NeuroVol.get


getAt() ​

ts
getAt(
   i, 
   j, 
   k): number;

Defined in: src/volume/ClusteredNeuroVol.ts:130

Get value at specific coordinates. Returns the cluster ID if the voxel is in the mask, 0 otherwise.

Parameters ​

i ​

number

j ​

number

k ​

number

Returns ​

number

Implementation of ​

NeuroVol.getAt


setAt() ​

ts
setAt(
   i, 
   j, 
   k, 
   value): void;

Defined in: src/volume/ClusteredNeuroVol.ts:138

Setting values is not supported for ClusteredNeuroVol.

Parameters ​

i ​

number

j ​

number

k ​

number

value ​

number

Returns ​

void

Implementation of ​

NeuroVol.setAt


getData() ​

ts
getData(): Int32Array;

Defined in: src/volume/ClusteredNeuroVol.ts:146

Get the underlying data as a dense array. Returns a volume where masked voxels have their cluster IDs and others are 0.

Returns ​

Int32Array

Implementation of ​

NeuroVol.getData


getRange() ​

ts
getRange(): [number, number];

Defined in: src/volume/ClusteredNeuroVol.ts:160

Get the range of cluster IDs.

Returns ​

[number, number]

Implementation of ​

NeuroVol.getRange


setData() ​

ts
setData(_newData): void;

Defined in: src/volume/ClusteredNeuroVol.ts:180

Replace data is not supported for clustered sparse volumes. Provided to satisfy NeuroVol; throws to indicate misuse.

Parameters ​

_newData ​

TypedArray

Returns ​

void

Implementation of ​

NeuroVol.setData


getLabelMap() ​

ts
getLabelMap(): LabelMap;

Defined in: src/volume/ClusteredNeuroVol.ts:187

Get the label map.

Returns ​

LabelMap


getClusterInfo() ​

ts
getClusterInfo(idOrLabel): ClusterInfo | undefined;

Defined in: src/volume/ClusteredNeuroVol.ts:194

Get cluster information by ID or label.

Parameters ​

idOrLabel ​

string | number

Returns ​

ClusterInfo | undefined


getClusterMask() ​

ts
getClusterMask(idOrLabel): LogicalNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:239

Get a binary mask for a specific cluster.

Parameters ​

idOrLabel ​

string | number

Returns ​

LogicalNeuroVol


getClusterData() ​

ts
getClusterData(data, idOrLabel): Float32Array;

Defined in: src/volume/ClusteredNeuroVol.ts:251

Extract data for a specific cluster from another volume.

Parameters ​

data ​

NeuroVol

idOrLabel ​

string | number

Returns ​

Float32Array


getClusterId() ​

ts
getClusterId(coord): number | undefined;

Defined in: src/volume/ClusteredNeuroVol.ts:273

Get cluster ID for a voxel at a specific coordinate. This is a convenience method for compatibility.

Parameters ​

coord ​

number[]

Returns ​

number | undefined


getClusterLabel() ​

ts
getClusterLabel(coord): string | undefined;

Defined in: src/volume/ClusteredNeuroVol.ts:292

Get cluster label for a voxel at a specific coordinate. This is a convenience method for compatibility.

Parameters ​

coord ​

number[]

Returns ​

string | undefined


getClusterCoords() ​

ts
getClusterCoords(idOrLabel): number[][];

Defined in: src/volume/ClusteredNeuroVol.ts:304

Get all coordinates for a specific cluster. This is a convenience method for compatibility.

Parameters ​

idOrLabel ​

string | number

Returns ​

number[][]


numClusters() ​

ts
numClusters(): number;

Defined in: src/volume/ClusteredNeuroVol.ts:316

Get the number of unique clusters.

Returns ​

number


clusterSizes() ​

ts
clusterSizes(): Map<number, number>;

Defined in: src/volume/ClusteredNeuroVol.ts:323

Get sizes of all clusters.

Returns ​

Map<number, number>


clusterCenters() ​

ts
clusterCenters(): Map<number, number[]>;

Defined in: src/volume/ClusteredNeuroVol.ts:334

Get centers of all clusters.

Returns ​

Map<number, number[]>


asSparse() ​

ts
asSparse(): SparseNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:350

Convert to SparseNeuroVol.

Returns ​

SparseNeuroVol


asDense() ​

ts
asDense(): DenseNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:364

Convert to DenseNeuroVol.

Returns ​

DenseNeuroVol


asLogical() ​

ts
asLogical(): LogicalNeuroVol;

Defined in: src/volume/ClusteredNeuroVol.ts:372

Convert to LogicalNeuroVol (returns the mask).

Returns ​

LogicalNeuroVol


getSlice() ​

ts
getSlice(zlevel, outAxes): NeuroSlice;

Defined in: src/volume/ClusteredNeuroVol.ts:379

Get slice - delegates to dense representation.

Parameters ​

zlevel ​

number

outAxes ​

AxisSet3D

Returns ​

NeuroSlice

Implementation of ​

NeuroVol.getSlice


getSliceAt() ​

ts
getSliceAt(
   coord, 
   outAxes, 
   interpolation): NeuroSlice;

Defined in: src/volume/ClusteredNeuroVol.ts:386

Get slice at coordinates - delegates to dense representation.

Parameters ​

coord ​

number[]

outAxes ​

AxisSet3D

interpolation ​

"nearest" | "trilinear"

Returns ​

NeuroSlice

Implementation of ​

NeuroVol.getSliceAt


getSliceTypedArrayType() ​

ts
getSliceTypedArrayType(): NumericType;

Defined in: src/volume/ClusteredNeuroVol.ts:390

Returns ​

NumericType

Implementation of ​

NeuroVol.getSliceTypedArrayType


getDataConstructor() ​

ts
getDataConstructor(): (length) => Int32Array;

Defined in: src/volume/ClusteredNeuroVol.ts:394

Returns ​

(length) => Int32Array

Implementation of ​

NeuroVol.getDataConstructor


toString() ​

ts
toString(): string;

Defined in: src/volume/ClusteredNeuroVol.ts:432

String representation of the volume.

Returns ​

string

Released under the MIT License.