@itk-wasm/elastix
TypeScript icon, indicating that this package has built-in type declarations

0.2.2 • Public • Published

@itk-wasm/elastix

npm version

A toolbox for rigid and nonrigid registration of images.

👨‍💻 Live API Demo

🕮 Documentation 📚

Installation

npm install @itk-wasm/elastix

Usage

Browser interface

Import:

import {
  defaultParameterMap,
  elastix,
  readParameterFiles,
  writeParameterFiles,
  setPipelinesBaseUrl,
  getPipelinesBaseUrl,
  setPipelineWorkerUrl,
  getPipelineWorkerUrl,
} from "@itk-wasm/elastix"

defaultParameterMap

Returns the default elastix parameter map for a given transform type.

async function defaultParameterMap(
  webWorker: null | Worker,
  transformName: string,
  options: DefaultParameterMapOptions = {}
) : Promise<DefaultParameterMapResult>
Parameter Type Description
transformName string Transform name. One of: translation, rigid, affine, bspline, spline, groupwise

DefaultParameterMapOptions interface:

Property Type Description
numberOfResolutions number Number of multiscale registration resolutions.
finalGridSpacing number Final grid spacing in physical units for bspline transforms.

DefaultParameterMapResult interface:

Property Type Description
webWorker Worker WebWorker used for computation
parameterMap JsonCompatible Elastix parameter map representation

elastix

Rigid and non-rigid registration of images.

async function elastix(
  webWorker: null | Worker,
  parameterObject: JsonCompatible,
  transform: string,
  options: ElastixOptions = {}
) : Promise<ElastixResult>
Parameter Type Description
parameterObject JsonCompatible Elastix parameter object representation
transform string Fixed-to-moving transform file

ElastixOptions interface:

Property Type Description
fixed Image Fixed image
moving Image Moving image
initialTransform *string File
initialTransformParameterObject JsonCompatible Initial elastix transform parameter object to apply before registration. Only provide this or an initial transform.

ElastixResult interface:

Property Type Description
webWorker Worker WebWorker used for computation
result Image Resampled moving image
transform BinaryFile Fixed-to-moving transform file
transformParameterObject JsonCompatible Elastix optimized transform parameter object representation

readParameterFiles

Read elastix parameter text files into a parameter object.

async function readParameterFiles(
  webWorker: null | Worker,
  options: ReadParameterFilesOptions = { parameterFiles: [] as TextFile[] | File[] | string[], }
) : Promise<ReadParameterFilesResult>
Parameter Type Description

ReadParameterFilesOptions interface:

Property Type Description
parameterFiles *string[] File[]

ReadParameterFilesResult interface:

Property Type Description
webWorker Worker WebWorker used for computation
parameterObject JsonCompatible Elastix parameter object representation

writeParameterFiles

Write an elastix parameter text file from a parameter object.

async function writeParameterFiles(
  webWorker: null | Worker,
  parameterObject: JsonCompatible,
  parameterFiles: string[]

) : Promise<WriteParameterFilesResult>
Parameter Type Description
parameterObject JsonCompatible Elastix parameter object representation.
parameterFiles string[] Elastix parameter files, must have the same length as the number of parameter maps in the parameter object.

WriteParameterFilesResult interface:

Property Type Description
webWorker Worker WebWorker used for computation
parameterFiles TextFile[] Elastix parameter files, must have the same length as the number of parameter maps in the parameter object.

setPipelinesBaseUrl

Set base URL for WebAssembly assets when vendored.

function setPipelinesBaseUrl(
  baseUrl: string | URL
) : void

getPipelinesBaseUrl

Get base URL for WebAssembly assets when vendored.

function getPipelinesBaseUrl() : string | URL

setPipelineWorkerUrl

Set base URL for the itk-wasm pipeline worker script when vendored.

function setPipelineWorkerUrl(
  baseUrl: string | URL
) : void

getPipelineWorkerUrl

Get base URL for the itk-wasm pipeline worker script when vendored.

function getPipelineWorkerUrl() : string | URL

Node interface

Import:

import {
  defaultParameterMapNode,
  elastixNode,
  readParameterFilesNode,
  writeParameterFilesNode,
  setPipelinesBaseUrl,
  getPipelinesBaseUrl,
  setPipelineWorkerUrl,
  getPipelineWorkerUrl,
} from "@itk-wasm/elastix"

defaultParameterMapNode

Returns the default elastix parameter map for a given transform type.

async function defaultParameterMapNode(
  transformName: string,
  options: DefaultParameterMapOptions = {}
) : Promise<DefaultParameterMapNodeResult>
Parameter Type Description
transformName string Transform name. One of: translation, rigid, affine, bspline, spline, groupwise

DefaultParameterMapNodeOptions interface:

Property Type Description
numberOfResolutions number Number of multiscale registration resolutions.
finalGridSpacing number Final grid spacing in physical units for bspline transforms.

DefaultParameterMapNodeResult interface:

Property Type Description
parameterMap JsonCompatible Elastix parameter map representation

elastixNode

Rigid and non-rigid registration of images.

async function elastixNode(
  parameterObject: JsonCompatible,
  transform: string,
  options: ElastixOptions = {}
) : Promise<ElastixNodeResult>
Parameter Type Description
parameterObject JsonCompatible Elastix parameter object representation
transform string Fixed-to-moving transform file

ElastixNodeOptions interface:

Property Type Description
fixed Image Fixed image
moving Image Moving image
initialTransform *string File
initialTransformParameterObject JsonCompatible Initial elastix transform parameter object to apply before registration. Only provide this or an initial transform.

ElastixNodeResult interface:

Property Type Description
result Image Resampled moving image
transform BinaryFile Fixed-to-moving transform file
transformParameterObject JsonCompatible Elastix optimized transform parameter object representation

readParameterFilesNode

Read elastix parameter text files into a parameter object.

async function readParameterFilesNode(
  options: ReadParameterFilesOptions = { parameterFiles: [] as string[], }
) : Promise<ReadParameterFilesNodeResult>
Parameter Type Description

ReadParameterFilesNodeOptions interface:

Property Type Description
parameterFiles *string[] File[]

ReadParameterFilesNodeResult interface:

Property Type Description
parameterObject JsonCompatible Elastix parameter object representation

writeParameterFilesNode

Write an elastix parameter text file from a parameter object.

async function writeParameterFilesNode(
  parameterObject: JsonCompatible,
  parameterFiles: string[]

) : Promise<WriteParameterFilesNodeResult>
Parameter Type Description
parameterObject JsonCompatible Elastix parameter object representation.
parameterFiles string[] Elastix parameter files, must have the same length as the number of parameter maps in the parameter object.

WriteParameterFilesNodeResult interface:

Property Type Description
parameterFiles TextFile[] Elastix parameter files, must have the same length as the number of parameter maps in the parameter object.

Package Sidebar

Install

npm i @itk-wasm/elastix

Weekly Downloads

15

Version

0.2.2

License

Apache-2.0

Unpacked Size

23.6 MB

Total Files

108

Last publish

Collaborators

  • paulhax
  • thewtex