Operator Reference

1D Measuring

List of Operators ↓

This chapter contains operators for 1D measuring.

Concept of 1D measuring

With 1D measuring, edges, i.e., transitions from light to dark or from dark to light, can be located along a predefined line or arc. This allows you to measure the dimension of parts fast and easily with high accuracy. Note that if you want to measure the dimensions of geometric primitives like circles, ellipses, rectangles, or lines, and approximate values for the positions, orientations, and geometric shapes are known, 2D Metrology may be a suitable alternative.

( 1) ( 2)
Measure edges and the distances between them along a line (1) or along an arc (2). These images are from the example programs fuzzy_measure_pin.hdev and measure_ring.hdev.

In the following, the steps that are required to use 1D measuring are described briefly.

Generate measure object:

First, a measure object must be generated that describes the region of interest for the measurement. If the measurement should be performed along a line, the measure object is defined by a rectangle. If it should be performed along an arc, the measure object is defined as an annular arc. The measure objects are generated by the operators

Note that you can use shape-based matching (see chapter Matching / Shape-Based) to automatically align the measure objects.

Perform the measurement:

Then, the actual measurement is performed. For this, typically one of the following operators is used:

Alternatively, if there are extra edges that do not belong to the measurement, fuzzy measuring can be applied. Here, so-called fuzzy rules, which describe the features of good edges, must be defined. Possible features are, e.g., the position, the distance, the gray values, or the amplitude of edges. These functions are created with create_funct_1d_pairscreate_funct_1d_pairsCreateFunct1dPairsCreateFunct1dPairscreate_funct_1d_pairs and passed to the tool with set_fuzzy_measureset_fuzzy_measureSetFuzzyMeasureSetFuzzyMeasureset_fuzzy_measure or set_fuzzy_measure_norm_pairset_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPairset_fuzzy_measure_norm_pair. Then, based on these rules, one of the following operators will extract the most appropriate edges:

Alternatively to the automatic extraction of edges or points within the measure object, you can also extract a one-dimensional gray value profile perpendicular to the rectangle or annular arc and evaluate this gray value information according to your needs. The gray value profile within the measure object can be extracted with the operator

Destroy measure object handle:

When you no longer need the measure object, you destroy it by passing the handle to

Further operators

In addition to the operators mentioned above, you can use reset_fuzzy_measurereset_fuzzy_measureResetFuzzyMeasureResetFuzzyMeasurereset_fuzzy_measure to discard a fuzzy function of a fuzzy set that was set via set_fuzzy_measureset_fuzzy_measureSetFuzzyMeasureSetFuzzyMeasureset_fuzzy_measure or set_fuzzy_measure_norm_pairset_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPairset_fuzzy_measure_norm_pair before, translate_measuretranslate_measureTranslateMeasureTranslateMeasuretranslate_measure to translate the reference point of the measure object to a specified position, write_measurewrite_measureWriteMeasureWriteMeasurewrite_measure and read_measureread_measureReadMeasureReadMeasureread_measure to write the measure object to file and read it from file again, and serialize_measureserialize_measureSerializeMeasureSerializeMeasureserialize_measure and deserialize_measuredeserialize_measureDeserializeMeasureDeserializeMeasuredeserialize_measure to serialize and deserialize the measure object.

Glossary

In the following, the most important terms that are used in the context of 1D Measuring are described.

measure object

A data structure that contains a specific region of interest that is prepared for the extraction of straight edges which lie perpendicular to the major axis of a rectangle or an annular arc.

annular arc

A circular arc with an associated width.

Further Information

See also the “Solution Guide Basics” and “Solution Guide on 1D Measuring” for further details about 1D Measuring.

Learn about 1D Measuring and many other topics in interactive online courses at our MVTec Academy .


List of Operators

close_measureCloseMeasureclose_measureCloseMeasureclose_measure
Delete a measure object.
deserialize_measureDeserializeMeasuredeserialize_measureDeserializeMeasuredeserialize_measure
Deserialize a serialized measure object.
fuzzy_measure_pairingFuzzyMeasurePairingfuzzy_measure_pairingFuzzyMeasurePairingfuzzy_measure_pairing
Extract straight edge pairs perpendicular to a rectangle or an annular arc.
fuzzy_measure_pairsFuzzyMeasurePairsfuzzy_measure_pairsFuzzyMeasurePairsfuzzy_measure_pairs
Extract straight edge pairs perpendicular to a rectangle or an annular arc.
fuzzy_measure_posFuzzyMeasurePosfuzzy_measure_posFuzzyMeasurePosfuzzy_measure_pos
Extract straight edges perpendicular to a rectangle or an annular arc.
gen_measure_arcGenMeasureArcgen_measure_arcGenMeasureArcgen_measure_arc
Prepare the extraction of straight edges perpendicular to an annular arc.
gen_measure_rectangle2GenMeasureRectangle2gen_measure_rectangle2GenMeasureRectangle2gen_measure_rectangle2
Prepare the extraction of straight edges perpendicular to a rectangle.
get_measure_paramGetMeasureParamget_measure_paramGetMeasureParamget_measure_param
Return the parameters and properties of a measure object.
measure_pairsMeasurePairsmeasure_pairsMeasurePairsmeasure_pairs
Extract straight edge pairs perpendicular to a rectangle or annular arc.
measure_posMeasurePosmeasure_posMeasurePosmeasure_pos
Extract straight edges perpendicular to a rectangle or annular arc.
measure_projectionMeasureProjectionmeasure_projectionMeasureProjectionmeasure_projection
Extract a gray value profile perpendicular to a rectangle or annular arc.
measure_threshMeasureThreshmeasure_threshMeasureThreshmeasure_thresh
Extracting points with a particular gray value along a rectangle or an annular arc.
read_measureReadMeasureread_measureReadMeasureread_measure
Read a measure object from a file.
reset_fuzzy_measureResetFuzzyMeasurereset_fuzzy_measureResetFuzzyMeasurereset_fuzzy_measure
Reset a fuzzy function.
serialize_measureSerializeMeasureserialize_measureSerializeMeasureserialize_measure
Serialize a measure object.
set_fuzzy_measureSetFuzzyMeasureset_fuzzy_measureSetFuzzyMeasureset_fuzzy_measure
Specify a fuzzy function.
set_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairset_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairset_fuzzy_measure_norm_pair
Specify a normalized fuzzy function for edge pairs.
translate_measureTranslateMeasuretranslate_measureTranslateMeasuretranslate_measure
Translate a measure object.
write_measureWriteMeasurewrite_measureWriteMeasurewrite_measure
Write a measure object to a file.