im2int16

Convert image to 16-bit signed integers

Description

example

J = im2int16(I) converts the grayscale, RGB, or binary image I to int16, rescaling the data if necessary.

If the input image is of class int16, then the output image is identical to it. If the input image is of class logical, then im2int16 changes false-valued elements to -32768 and true-valued elements to 32767.

You optionally can perform the conversion using a GPU (requires Parallel Computing Toolbox™).

Examples

collapse all

Create an array of class double.

I = reshape(linspace(0,1,20),[5 4])
I = 5×4

         0    0.2632    0.5263    0.7895
    0.0526    0.3158    0.5789    0.8421
    0.1053    0.3684    0.6316    0.8947
    0.1579    0.4211    0.6842    0.9474
    0.2105    0.4737    0.7368    1.0000

Convert the array to class int16.

I2 = im2int16(I)
I2 = 5x4 int16 matrix

   -32768   -15522     1724    18970
   -29319   -12073     5173    22419
   -25870    -8624     8623    25869
   -22420    -5174    12072    29318
   -18971    -1725    15521    32767

Input Arguments

collapse all

Intensity, RGB, or binary image, specified as a numeric array of any size and dimensionality.

Data Types: single | double | int16 | uint8 | uint16 | logical

Output Arguments

collapse all

Image with class int16, returned as a numeric array with the same size and dimensionality as I.

Data Types: int16

Extended Capabilities

GPU Code Generation
Generate CUDA® code for NVIDIA® GPUs using GPU Coder™.

Introduced before R2006a