select_lines1 ( : : RowBeginIn, ColBeginIn, RowEndIn, ColEndIn, Feature, Operation, Min, Max : RowBeginOut, ColBeginOut, RowEndOut, ColEndOut )

Select lines according to various criteria.

The operator select_lines1 chooses lines according to various criteria. For every input line the indicated features (Feature) are calculated. If each (Operation = 'and') or at least one (Operation = 'or') of the calculated features is within the given limits (Min,Max) the line is transferred into the output.

Condition:   Min_i <= Feature_i(Linie) <= Max_i
Possible values for Feature:
  - 'length'       (Euclidean) length of the line
  - 'row'          Line index of the center
  - 'column'       Column index of the center
  - 'phi'          Orientation of the line (-pi/2 < phi <= pi/2)


Attention

If only one feature is used the value of Operation is meaningless. Several features are processed according to the sequence in which they are passed.


Parameters

RowBeginIn (input_control)
line.begin.y-array -> integer
Row coordinates of the starting points of the input lines.

ColBeginIn (input_control)
line.begin.x-array -> integer
Column coordinates of the starting points of the input lines.

RowEndIn (input_control)
line.end.y-array -> integer
Row coordinates of the ending points of the input lines.

ColEndIn (input_control)
line.end.x-array -> integer
Column coordinates of the ending points of the input lines.

Feature (input_control)
string(-array) -> string
Features to be used for selection.
Default value: 'length'
List of values: 'length', 'row', 'column', 'phi'

Operation (input_control)
string -> string
Desired combination of the features.
Default value: 'and'
List of values: 'and', 'or'

Min (input_control)
string(-array) -> string / integer / real
Lower limits of the features or 'min'.
Default value: 'min'

Max (input_control)
string(-array) -> string / integer / real
Upper limits of the features or 'max'.
Default value: 'max'

RowBeginOut (output_control)
line.begin.y-array -> integer
Row coordinates of the starting points of the output lines.

ColBeginOut (output_control)
line.begin.x-array -> integer
Column coordinates of the starting points of the output lines.

RowEndOut (output_control)
line.end.y-array -> integer
Row coordinates of the ending points of the output lines.

ColEndOut (output_control)
line.end.x-array -> integer
Column coordinates of the ending points of the output lines.


Result

The operator select_lines1 returns the value TRUE if the parameter values are correct. Otherwise an exception is raised.


Possible Predecessors

sobel_amp, edges__, threshold__, hysteresis_threshold__, split_skeleton1, split_skeleton2


Possible Successors

set_line_width, disp_line


Alternatives

line_orientation, line_position, select_lines2


See also

select_lines2, select_longest_lines, detect_edges1, select_shape



Copyright © 1996-1997 MVTec Software GmbH