Pack binary image
BWP = bwpack(BW)
BWP = bwpack(BW) packs the
BW into the
which is known as a packed binary image. Because
each 8-bit pixel value in the binary image has only two possible values,
map each pixel to a single bit in the packed output image.
bwpack processes the image pixels by column,
mapping groups of 32 pixels into the bits of a
The first pixel in the first row corresponds to the least significant
bit of the first
uint32 element of the output array.
The first pixel in the 32nd input row corresponds to the most significant
bit of this same element. The first pixel of the 33rd row corresponds
to the least significant bit of the second output element, and so
This figure illustrates how
bwpack maps the pixels
in a binary image to the bits in a packed binary image.
Binary image packing is used to accelerate some binary morphological
operations, such as dilation and erosion. If the input to
a packed binary image, the functions use a specialized routine to
perform the operation faster.
bwunpack to unpack packed binary images.
BW can be logical or numeric, and it must
be 2-D, real, and nonsparse.
BWP is of class
Read binary image into the workspace.
BW = imread('text.png'); imshow(BW)
Pack the image.
BWp = bwpack(BW);
Dilate the packed image.
BWp_dilated = imdilate(BWp,ones(3,3),'ispacked');
Unpack the dilated image and display it.
BW_dilated = bwunpack(BWp_dilated, size(BW,1)); imshow(BW_dilated)
Usage notes and limitations:
This function supports the generation of C code using MATLAB® Coder™. The code generated for this function uses a precompiled, platform-specific shared library. Use of a shared library preserves performance optimizations but limits the target platforms for which code can be generated. For more information, see Understand Code Generation with Image Processing Toolbox.