Spectral Processing

The following functions are used specifically for processing spectral differential imaging (SDI) tensors/cubes.

Index

API/Reference

HCIToolbox.invscaleFunction
invscale(cube::AbstractArray{T,3}, scales)

Linearly contract each frame in cube by the corresponding scale in scales. Uses bilinear interpolaiton internally.

source
invscale(frame::AbstractMatrix, scale)

Linearly contract frame with the ratio scale. Uses bilinear interpolation internally.

source
HCIToolbox.invscale_and_collapseFunction
invscale_and_collapse(stack_cube::AbstractArray{T,3}, scales; kwargs...)

Given an SDI tensor that has been stacked into a cube, invscales each spectral slice and combines with collapse. The output will be cropped to size.

source
HCIToolbox.scale_listFunction
scale_list(wavelengths)

Returns a list of scaling factors for aligning SDI tensors from a list of wavelengths.

Examples

julia> scale_list([0.5, 2, 4])
3-element Vector{Float64}:
 8.0
 2.0
 1.0
source
HCIToolbox.scaleFunction
scale(cube::AbstractArray{T,3}, scales)

Linearly stretch each frame in cube by the corresponding scale in scales. Uses bilinear interpolaiton internally. The output size can be specified or else we will choose the smallest size that contains the largest stretch.

source
scale(frame::AbstractMatrix, scale)

Linearly stretch frame with the ratio scale. Uses bilinear interpolation internally.

source
HCIToolbox.scale_and_stackFunction
scale_and_stack(spcube::AbstractArray{T,4}, scales)

Given a 4-D spectral ADI (SDI) tensor this function scales each temporal slice according to scales and then concatenates into a cube with nλ * nf frames.

source