Operator Reference

gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidgen_gauss_pyramid (Operator)

gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidgen_gauss_pyramid — Calculating a Gauss pyramid.

Signature

gen_gauss_pyramid(Image : ImagePyramid : Mode, Scale : )

Herror gen_gauss_pyramid(const Hobject Image, Hobject* ImagePyramid, const char* Mode, double Scale)

Herror T_gen_gauss_pyramid(const Hobject Image, Hobject* ImagePyramid, const Htuple Mode, const Htuple Scale)

void GenGaussPyramid(const HObject& Image, HObject* ImagePyramid, const HTuple& Mode, const HTuple& Scale)

HImage HImage::GenGaussPyramid(const HString& Mode, double Scale) const

HImage HImage::GenGaussPyramid(const char* Mode, double Scale) const

HImage HImage::GenGaussPyramid(const wchar_t* Mode, double Scale) const   ( Windows only)

static void HOperatorSet.GenGaussPyramid(HObject image, out HObject imagePyramid, HTuple mode, HTuple scale)

HImage HImage.GenGaussPyramid(string mode, double scale)

def gen_gauss_pyramid(image: HObject, mode: str, scale: float) -> HObject

Description

The operator gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidgen_gauss_pyramid calculates a pyramid of scaled down images. The scale by which the next image will be reduced is determined by the parameter ScaleScaleScalescalescale. For instance, a value of 0.5 for ScaleScaleScalescalescale will shorten the edge length of ImageImageImageimageimage by 50%. This is exactly equivalent to the “normal” pyramid.

The parameter ModeModeModemodemode determines the way of averaging. For a more detailed description concerning this parameter see also affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageaffine_trans_image. In the case that ScaleScaleScalescalescale is equal 0.5 there are the additional modes 'min'"min""min""min""min" and 'max'"max""max""max""max" available. In this case the minimum or the maximum of the four neighboring pixels is selected.

Please note that each level will be returned as an individual image, i.e., as one iconic object, with one matrix and its own domain. Single or multiple levels can be selected by using select_objselect_objSelectObjSelectObjselect_obj or copy_objcopy_objCopyObjCopyObjcopy_obj, respectively.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on channel level.

Parameters

ImageImageImageimageimage (input_object)  (multichannel-)image objectHImageHObjectHObjectHobject (byte / uint2 / real)

Input image.

ImagePyramidImagePyramidImagePyramidimagePyramidimage_pyramid (output_object)  (multichannel-)image-array objectHImageHObjectHObjectHobject * (byte / uint2 / real)

Output images.

Number of elements: ImagePyramid > Image

ModeModeModemodemode (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Kind of filter mask.

Default: 'weighted' "weighted" "weighted" "weighted" "weighted"

List of values: 'constant'"constant""constant""constant""constant", 'max'"max""max""max""max", 'min'"min""min""min""min", 'nearest_neighbor'"nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor", 'weighted'"weighted""weighted""weighted""weighted"

ScaleScaleScalescalescale (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Factor for scaling down.

Default: 0.5

Suggested values: 0.2, 0.3, 0.4, 0.5, 0.6

Value range: 0.001 ≤ Scale Scale Scale scale scale ≤ 0.9

Recommended increment: 0.1

Example (C)

gen_gauss_pyramid(Image,Pyramid,"weighted",0.5);
count_obj(Pyramid,&num);
for (i=1; i<=num; i++)
{
  select_obj(Pyramid,&Single,i);
  disp_image(Single,WindowHandle);
  clear(Single);
}

Possible Successors

image_to_channelsimage_to_channelsImageToChannelsImageToChannelsimage_to_channels, count_objcount_objCountObjCountObjcount_obj, select_objselect_objSelectObjSelectObjselect_obj, copy_objcopy_objCopyObjCopyObjcopy_obj

Alternatives

zoom_image_sizezoom_image_sizeZoomImageSizeZoomImageSizezoom_image_size, zoom_image_factorzoom_image_factorZoomImageFactorZoomImageFactorzoom_image_factor

See also

affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageaffine_trans_image

Module

Foundation