Information on smoothing filter ::smooth_image.
The operator ::info_smooth returns an estimation of the width of the smoothing filters used in routine ::smooth_image. For this purpose the underlying continuous impulse answers of Filter are scanned until a filter coefficient is smaller than five percent of the maximum coefficient (at the origin). Alpha is the filter parameter (see ::smooth_image). Currently four filters are supported (parameter Filter):
'deriche1', 'deriche2', 'shen' und 'gauss'.
The gauss filter was conventionally implemented with filter masks
(the other three are recursive filters). In the case of the gauss
filter the filter coefficients (of the one-dimensional impulse
answer f(n) with n >= 0) are returned
in Coeffs in addition to the filter size.
|
Filter (input_control) |
string -> HTuple.char * |
| Name of required filter. | |
| Default value: 'deriche2' | |
| List of values: 'deriche1', 'deriche2', 'shen', 'gauss' | |
|
Alpha (input_control) |
real -> HTuple.double |
| Filter parameter: small values effect strong smoothing (reversed in case of 'gauss'). | |
| Default value: 0.5 | |
| Suggested values: 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 4.0, 5.0, 7.0, 10.0 | |
| Typical range of values: 0.01 <= Alpha <= 50.0 | |
| Minimum increment: 0.01 | |
|
Recommended increment: 0.1 | |
| Restriction: Alpha > 0.0 | |
|
Size (output_control) |
integer -> HTuple.long * |
| Width of filter is approx. size x size pixels. | |
|
Coeffs (output_control) |
integer-array -> HTuple.long * |
| In case of gauss filter: coeffients of the ``positive'' half of the 1D impulse answer. | |
info_smooth('deriche2',0.5,Size,Coeffs);
smooth_image(Input,&Smooth,'deriche2',7);
If the parameter values are correct the operator ::info_smooth returns the value H_MSG_TRUE. Otherwise an exception handling is raised.
Image filters