Detect edges using the Roberts filter.
roberts__ calculates the first derivative of an image and is used as an edge operator. If the following mask describes a part of the image, A B C D the different filter types are defined as follows: 'roberts_max' max(| A - D |,| B - C |) 'gradient_max' max(| A + B - (C + D)|,| A + C - (B + D)|) 'gradient_sum' |A + B - (C + D)| + |A + C - (B + D)| If an overflow occurs the result is clipped. The result of the operator is stored at the pixel with the coordinates of "D".
Image (input_object) |
image(-array) -> object : byte |
Input image. |
ImageRoberts (output_object) |
image(-array) -> object : byte |
Roberts-filtered result images. |
FilterType (input_control) |
string -> string |
Filter type | |
Default value: 'gradient_sum' | |
List of values: 'roberts_max', 'gradient_max', 'gradient_sum' |
read_image(:Image:'fabrik':) > roberts__(Image:Roberts:'roberts_max':) > threshold__(Roberts:Margin:128,255:).
roberts__ returns TRUE if all parameters are correct. If the input is empty the behaviour can be set via set_system(::'no_object_result',<Result>:). If necessary, an exception is raised.
edges__, sobel_amp, frei_amp, kirsch_amp, prewitt_amp
laplace__, highpass__, bandpass__