IMAQ AutoMThreshold VI
Owning Palette: ProcessingInstalled With: NI Vision Development ModuleComputes the optimal values to threshold an image into a given number of classes. This algorithm uses a variant of the classification by clustering method. Starting from a random sort, a clustering algorithm is iterated until a stable and reliable result is found. Use the IMAQ MultiThreshold VI or the IMAQ UserLookup VI to threshold an image based on the optimal threshold range computed.
Image is a reference to the source image. |
|||||||||
Number of Classes is the number of desired phases. This algorithm uses a clustering method and can use any value between 2 and 256. The default value is 2. |
|||||||||
Image Mask is an 8-bit image specifying the region in the image to use for the calculation. Only those pixels in the original image that correspond to an equivalent non-zero pixel in the mask image are used for the calculation. The entire image is used in the calculation if Image Mask is not connected. |
|||||||||
error in (no error) describes the error status before this VI or function runs. The default is no error. If an error occurred before this VI or function runs, the VI or function passes the error in value to error out. This VI or function runs normally only if no error occurred before this VI or function runs. If an error occurs while this VI or function runs, it runs normally and sets its own error status in error out. Use the Simple Error Handler or General Error Handler VIs to display the description of the error code. Use error in and error out to check errors and to specify execution order by wiring error out from one node to error in of the next node.
|
|||||||||
Lookup Table is an array containing the values of the 256 transformed elements encoded between 0 and (n – 1), where n is the Number of Classes. You can connect this array to the IMAQ UserLookup VI to perform a threshold operation directly. |
|||||||||
Threshold Data out outputs an array containing the Number of Classes compatible with the IMAQ MultiThreshold VI. The results range from 0 to (n – 1), where n is the Number of Classes.
|
|||||||||
error out contains error information. If error in indicates that an error occurred before this VI or function ran, error out contains the same error information. Otherwise, it describes the error status that this VI or function produces. Right-click the error out indicator on the front panel and select Explain Error from the shortcut menu for more information about the error.
|
Details
This method is based on an iterated measurement of an histogram. After finding the best result, the histogram is segmented into n groups. These groups are based on the fact that each point in a group is closer to the barycenter of its own group than the other group. The VI outputs the threshold data in two forms:
- A LUT directly usable by the IMAQ UserLookup VI
- An array directly usable by the IMAQ MultiThreshold VI (Threshold Data)