ClassesClasses | | Operators

gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramid (Operator)

Name

gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramid — 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

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

HImage HImage.GenGaussPyramid(string mode, double scale)

Description

The operator gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidGenGaussPyramid 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_imageAffineTransImageAffineTransImageAffineTransImage. 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_objSelectObjSelectObjSelectObj or copy_objcopy_objCopyObjCopyObjCopyObj, respectively.

Execution Information

Parameters

ImageImageImageImageimage (input_object)  (multichannel-)image objectHImageHImageHobject (byte / uint2 / real)

Input image.

ImagePyramidImagePyramidImagePyramidImagePyramidimagePyramid (output_object)  (multichannel-)image-array objectHImageHImageHobject * (byte / uint2 / real)

Output images.

Number of elements: ImagePyramid > Image

ModeModeModeModemode (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Kind of filtermask.

Default value: '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 HTupleHTupleHtuple (real) (double) (double) (double)

Factor for scaling down.

Default value: 0.5

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

Typical range of values: 0.1 ≤ Scale Scale Scale Scale scale ≤ 0.9

Minimum increment: 0.01

Recommended increment: 0.1

Restriction: 0.1 < Scale && Scale < 0.9

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_channelsImageToChannelsImageToChannelsImageToChannels, count_objcount_objCountObjCountObjCountObj, select_objselect_objSelectObjSelectObjSelectObj, copy_objcopy_objCopyObjCopyObjCopyObj

Alternatives

zoom_image_sizezoom_image_sizeZoomImageSizeZoomImageSizeZoomImageSize, zoom_image_factorzoom_image_factorZoomImageFactorZoomImageFactorZoomImageFactor

See also

affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImage

Module

Foundation


ClassesClasses | | Operators