| MIL 10 Reference
| Customize Help
| Save Settings

MimThin



See also
Availability
Not available in MIL-Lite
Available in MIL

Available on Windows
Available on Linux

Partially supported on:
Partially supported on Matrox GPU processing driver

Fully supported on:
Fully supported on Host system
Fully supported on Matrox CronosPlus
Fully supported on Matrox GigE Vision driver
Fully supported on Matrox IEEE 1394 IIDC driver
Fully supported on Matrox Iris GT
Fully supported on Matrox Morphis
Fully supported on Matrox Morphis QxT
Fully supported on Matrox Orion HD
Fully supported on Matrox Radient eCL
Fully supported on Matrox Radient eV-CXP
Fully supported on Matrox Solios eA/XA
Fully supported on Matrox Solios ecl/xcl/ev-cl
Fully supported on Matrox USB3 Vision driver (requires Update 19)
Fully supported on Matrox Vio

For any information regarding a MIL system added during a MIL Update, see the MIL system’s release note

Available on Non-Matrox computer
Available on Matrox 4Sight-X
Available on Matrox 4Sight GP
Available on Matrox Supersight
function map Function map
Examples
Synopsis
Perform a binary or grayscale thinning operation on an image.
Syntax
void MimThin(
MIL_ID SrcImageBufId, //in
MIL_ID DstImageBufId, //in
MIL_INT NbIteration, //in
MIL_INT64 ProcMode //in
)
Description

This function performs a binary or grayscale thinning on the specified source image for the specified number of iterations.

The overscan pixels are automatically set to the highest possible buffer value, which will produce the most accurate possible results for the image border pixels.

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
SrcImageBufId

Specifies the identifier of the data source of the operation. This parameter must be given an image buffer identifier.

This image buffer must not have a region of interest (ROI) associated with it. Using an image buffer with an ROI will cause an error.

[Matrox GPU processing driver]

The source image buffer must be unsigned monochrome 8- or 16-bit.

DstImageBufId

Specifies the identifier of the destination of the resulting image. This parameter must be given an image buffer identifier.

This image buffer must not have a region of interest (ROI) associated with it. Using an image buffer with an ROI will cause an error.

[Matrox GPU processing driver]

The destination image buffer must be unsigned monochrome 8- or 16-bit.

NbIteration

Specifies the number of times to iterate the operation. This parameter must be set to one of the values below.

Note that when ProcMode is set to M_BINARY3, NbIteration must be set to 0 or M_TO_SKELETON.

function map For specifying the number of times to iterate the operation
CollapseValue Description
Collapse M_TO_SKELETON

Specifies that every object will be reduced to its skeleton.

Collapse Value >= 0

Specifies the number of iterations.

If this parameter is set to 0, and ProcMode is set to M_BINARY, the source image is binarized and the result is copied into the destination image buffer.

If this parameter is set to 0, and ProcMode is set to M_GRAYSCALE, the source image is copied into the destination image buffer.

(summarize)
ProcMode

Specifies the processing mode to use. This parameter must be set to one of the values below.

function map For specifying the processing mode to use
CollapseValue Description
MIL system-specific
tooltip (†)
Collapse M_BINARY

Treats non-zero pixels as ones (1) during processing. The resulting non-zero pixels will have all bits set to one.

(summarize)
a b c d e f g h i j k l m n o p q r s
MIL system specific

Both the source and destination buffers must be packed binary.

d
Collapse M_BINARY2

Treats non-zero pixels as ones (1) during processing and produces a result that better preserves the original topology of the objects in the source image. Similar to M_BINARY, the resulting non-zero pixels will also have all bits set to one. However, this mode produces a result that is more consistent with the one produced using the M_GRAYSCALE processing mode. Note that this processing mode is slower than using the M_BINARY or M_BINARY3 processing modes.

(summarize)
a b c d e f g h i j k l m n o p q r s
MIL system specific

Both the source and destination buffers must be 8-bit.

d
Collapse M_BINARY3

Treats non-zero pixels as ones (1) during processing and produces a faster result than other processing modes. Similar to M_BINARY, the resulting non-zero pixels will also have all bits set to one. However, this mode produces a result that is more consistent with the one produced using the M_GRAYSCALE processing mode. Note that this processing mode does not preserve the original topology of objects in the source image as well as M_BINARY2. Overscan pixels are treated as zeroes instead of ones.

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_GRAYSCALE

Uses the source image's gray values for processing. The resulting pixels will be grayscale.

(summarize)
a b c d e f g h i j k l m n o p q r s
Compilation information
Header Include mil.h.
Library Use mil.lib; milim.lib.
DLL Requires mil.dll; milim.dll.
PROC NONE PROC NONE TO SKELETON BINARY BINARY2 BINARY3 GRAYSCALE