Difference between revisions of "OpenIGTLink/ProtocolV2/Type/Image"
Line 4: | Line 4: | ||
The IMAGE format supports 2D or 3D images with metric information including image matrix size, voxel size, coordinate system type, position, and orientation. The body section of the IMAGE data consists of two parts: image header to transfer the metric information and image body to transfer the array of pixel or voxel values. The data type of pixel or voxel can be either scalar or vector, and numerical values can be 8-, 16-, 32-bit integer, or 32- or 64-bit floating point. The pixel values can be either big-endian or little-endian, since the sender software can specify the byte order in the image header. The format also supports “partial image transfer”, in which a region of the image is transferred instead of the whole image. This mechanism is suitable for real-time applications, in which images are updated region-by-region. The sub-volume must be box-shaped and defined by 6 parameters consisting of the indices for the corner voxel of the sub-volume and matrix size of the sub-volume. | The IMAGE format supports 2D or 3D images with metric information including image matrix size, voxel size, coordinate system type, position, and orientation. The body section of the IMAGE data consists of two parts: image header to transfer the metric information and image body to transfer the array of pixel or voxel values. The data type of pixel or voxel can be either scalar or vector, and numerical values can be 8-, 16-, 32-bit integer, or 32- or 64-bit floating point. The pixel values can be either big-endian or little-endian, since the sender software can specify the byte order in the image header. The format also supports “partial image transfer”, in which a region of the image is transferred instead of the whole image. This mechanism is suitable for real-time applications, in which images are updated region-by-region. The sub-volume must be box-shaped and defined by 6 parameters consisting of the indices for the corner voxel of the sub-volume and matrix size of the sub-volume. | ||
− | =IMAGE= | + | =Message Types= |
+ | ==IMAGE== | ||
{| border="1" cellpadding="5" cellspacing="0" align="center" | {| border="1" cellpadding="5" cellspacing="0" align="center" | ||
Line 67: | Line 68: | ||
− | =GET_IMAGE= | + | ==GET_IMAGE== |
− | =STT_IMAGE= | + | ==STT_IMAGE== |
− | =STP_IMAGE= | + | ==STP_IMAGE== |
Revision as of 02:40, 30 June 2010
Home < OpenIGTLink < ProtocolV2 < Type < ImageSummary
The IMAGE format supports 2D or 3D images with metric information including image matrix size, voxel size, coordinate system type, position, and orientation. The body section of the IMAGE data consists of two parts: image header to transfer the metric information and image body to transfer the array of pixel or voxel values. The data type of pixel or voxel can be either scalar or vector, and numerical values can be 8-, 16-, 32-bit integer, or 32- or 64-bit floating point. The pixel values can be either big-endian or little-endian, since the sender software can specify the byte order in the image header. The format also supports “partial image transfer”, in which a region of the image is transferred instead of the whole image. This mechanism is suitable for real-time applications, in which images are updated region-by-region. The sub-volume must be box-shaped and defined by 6 parameters consisting of the indices for the corner voxel of the sub-volume and matrix size of the sub-volume.
Message Types
IMAGE
Data | Type | Description |
V | unsigned short | version number |
T | 8bit unsigned int | Image type (1: Scalar, 3: Vector) |
S | 8bit unsigned int | Scalar type (2:int8 3:uint8 4:int16 5:uint16 6:int32 7:uint32 10:float32 11:float64) |
E | 8bit unsigned int | Endian for image data (1:BIG 2:LITTLE) (NOTE: values in image header is fixed to BIG endian) |
O | 8bit unsigned int | image coordinate (1:RAS 2:LPS) |
RI, RJ, RK | 16 bit unsigned int | Number of pixels in each direction |
PX, PY, PZ | 32 bit float | center position of the image |
TX, TY, TZ | 32 bit float | Transverse vector (direction for 'i' index) / The length represents pixel size in 'i' direction |
SX, SY, SZ | 32 bit float | Transverse vector (direction for 'j' index) / The length represents pixel size in 'j' direction |
NX, NY, NZ | 32 bit float | Normal vector of image plane(direction for 'k' index) / The length represents pixel size in 'z' direction or slice thickness |
DI, DJ, DK | 16 bit unsigned int | Starting index of subvolume |
DRI, DRJ, DRK | 16 bit unsigned int | number of pixels of subvolume |
IMAGE_DATA | Binary image data () | Image data (endian is determined by "E" field) |