Main Content

TIFF3D

Read 3-D blocked image data from single TIFF file

Since R2024b

Description

The TIFF3D object is an adapter that reads 3-D blocked image data from a single TIFF file.

This adapter supports these 3-D TIFF conventions:

  • Image data stored in the file as individual Image File Directories (IFDs) of the same size and data type.

  • Image data stored as large files greater than 4GB, not of the BigTIFF format, created by ImageJ software.

The table lists the support that the TIFF3D object has for various blockedImage capabilities.

CapabilitiesSupport
Data types

This object supports 3-D images only:

  • Binary images of size m-by-n-by-p with data type logical

  • Grayscale images of size m-by-n-by-p with data type uint8, int16, uint16, int32, uint32, single, or double

  • RGB and multichannel images of size m-by-n-by-c-by-p with data type uint8, uint16, uint32, single, or double

Multiple resolution levelsNo
Process blocks in parallel using the apply functionYes
Resume block processing using the apply functionNo

Creation

Description

adapter = images.blocked.TIFF3D creates a TIFF3D object that reads 3-D blocked image data from a single TIFF file.

adapter = images.blocked.TIFF3D(IOBlockSize=blockSize) creates a TIFF3D object and sets the IOBlockSize property as the size specified by blockSize.

Properties

expand all

Block size for reading, specified as one of these values:

  • 2-element vector of positive integers of the form [numrows numcols]. The adapter includes all planes and color channels when reading blocks of data.

  • 3-element vector of positive integers of the form [numrows numcols numplanes]. The adapter includes all color channels when reading blocks of data.

The default value depends on the format of the input image:

  • Stripped TIFF image — the default block size is [m n 3], where m and n are the height and width of each slice of the 3-D volume.

  • Tiled TIFF image — the default block size is [tileM tileN 8], where tileM and tileN are the tile dimensions of the first slice.

You cannot change this property after you create the object.

Tips

  • When you process blocks using the apply function, the value of the IOBlockSize property of the TIFF3D adapter can impact the performance.

    • By default, apply does not process blocks in parallel. You can improve runtime performance, at the expense of memory, by specifying a large IOBlockSize.

    • apply processes blocks in parallel when you specify the UseParallel name-value argument of the apply function as true. In this case, you can make efficient use of memory while preserving good runtime performance by using the default value of IOBlockSize or by setting IOBlockSize to match the BlockSize name-value argument of the apply function.

Version History

Introduced in R2024b