Operator Reference

crop_rectangle2crop_rectangle2CropRectangle2CropRectangle2crop_rectangle2 (Operator)

crop_rectangle2crop_rectangle2CropRectangle2CropRectangle2crop_rectangle2 — Cut out one or more arbitrarily oriented rectangular image areas.

Signature

Herror crop_rectangle2(const Hobject Image, Hobject* ImagePart, double Row, double Column, double Phi, double Length1, double Length2, const char* AlignToAxis, const char* Interpolation)

Herror T_crop_rectangle2(const Hobject Image, Hobject* ImagePart, const Htuple Row, const Htuple Column, const Htuple Phi, const Htuple Length1, const Htuple Length2, const Htuple AlignToAxis, const Htuple Interpolation)

void CropRectangle2(const HObject& Image, HObject* ImagePart, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Length1, const HTuple& Length2, const HTuple& AlignToAxis, const HTuple& Interpolation)

HImage HImage::CropRectangle2(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Length1, const HTuple& Length2, const HString& AlignToAxis, const HString& Interpolation) const

HImage HImage::CropRectangle2(double Row, double Column, double Phi, double Length1, double Length2, const HString& AlignToAxis, const HString& Interpolation) const

HImage HImage::CropRectangle2(double Row, double Column, double Phi, double Length1, double Length2, const char* AlignToAxis, const char* Interpolation) const

HImage HImage::CropRectangle2(double Row, double Column, double Phi, double Length1, double Length2, const wchar_t* AlignToAxis, const wchar_t* Interpolation) const   ( Windows only)

static void HOperatorSet.CropRectangle2(HObject image, out HObject imagePart, HTuple row, HTuple column, HTuple phi, HTuple length1, HTuple length2, HTuple alignToAxis, HTuple interpolation)

HImage HImage.CropRectangle2(HTuple row, HTuple column, HTuple phi, HTuple length1, HTuple length2, string alignToAxis, string interpolation)

HImage HImage.CropRectangle2(double row, double column, double phi, double length1, double length2, string alignToAxis, string interpolation)

def crop_rectangle2(image: HObject, row: MaybeSequence[Union[int, float]], column: MaybeSequence[Union[int, float]], phi: MaybeSequence[Union[int, float]], length_1: MaybeSequence[Union[int, float]], length_2: MaybeSequence[Union[int, float]], align_to_axis: str, interpolation: str) -> HObject

Description

crop_rectangle2crop_rectangle2CropRectangle2CropRectangle2crop_rectangle2 cuts one or more rectangular areas from each of the input images. The areas are indicated by rectangles, which are defined by the center (RowRowRowrowrow, ColumnColumnColumncolumncolumn), the orientation PhiPhiPhiphiphi and the half edge lengths Length1Length1Length1length1length_1 and Length2Length2Length2length2length_2. PhiPhiPhiphiphi is given in arc measure in mathematically positive direction and indicates the angle between the horizontal axis and the first edge (with length Length1Length1Length1length1length_1). The rectangle parameters use pixel centered, subpixel accurate coordinates, see Transformations / 2D Transformations.

The parameter AlignToAxisAlignToAxisAlignToAxisalignToAxisalign_to_axis determines the alignment of the output image. Possible values:

  • 'true'"true""true""true""true": The cropped image part is rotated such that it is aligned with the coordinate axes. For this, a suitable interpolation must be performed. A detailed description of the interpolation modes can be found in the description of affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageaffine_trans_image. The rectangle may protrude the input image. Gray values of pixels lying outside the input image are set to 0.

  • 'false'"false""false""false""false": The smallest surrounding rectangle of the input rectangle is cut out and the domain is set accordingly. The rectangle may exceed the input image boundaries. However, the size of the resulting cropped image part is determined by the portion of the rectangle which lies within the input image boundaries. For this method no interpolation is required. Therefore, the parameter InterpolationInterpolationInterpolationinterpolationinterpolation has no effect.

Execution Information

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

Parameters

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

Input image(s).

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

Cropped image part(s).

RowRowRowrowrow (input_control)  rectangle2.center.y(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Row index of the image crop center.

Default: 300.0

Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0

Value range: Row Row Row row row (lin)

Recommended increment: 10.0

ColumnColumnColumncolumncolumn (input_control)  rectangle2.center.x(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Column index of the image crop center.

Default: 200.0

Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0

Value range: Column Column Column column column (lin)

Recommended increment: 10.0

PhiPhiPhiphiphi (input_control)  rectangle2.angle.rad(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Orientation of the rectangle (arc measure).

Default: 0.0

Suggested values: -1.178097, -0.785398, -0.392699, 0.0, 0.392699, 0.785398, 1.178097

Value range: -1.178097 ≤ Phi Phi Phi phi phi ≤ 1.178097 (lin)

Length1Length1Length1length1length_1 (input_control)  rectangle2.hwidth(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

First half edge length of the rectangle.

Default: 100.0

Suggested values: 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0, 300.0, 500.0

Value range: Length1 Length1 Length1 length1 length_1 (lin)

Recommended increment: 10.0

Length2Length2Length2length2length_2 (input_control)  rectangle2.hheight(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Second half edge length of the rectangle.

Default: 20.0

Suggested values: 1.0, 2.0, 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0

Value range: Length2 Length2 Length2 length2 length_2 (lin)

Recommended increment: 10.0

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

Determines whether the cropped image part is aligned with the coordinate axes.

Default: 'true' "true" "true" "true" "true"

List of values: 'false'"false""false""false""false", 'true'"true""true""true""true"

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

Interpolation method.

Default: 'constant' "constant" "constant" "constant" "constant"

List of values: 'bicubic'"bicubic""bicubic""bicubic""bicubic", 'bilinear'"bilinear""bilinear""bilinear""bilinear", 'constant'"constant""constant""constant""constant", 'nearest_neighbor'"nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor", 'weighted'"weighted""weighted""weighted""weighted"

Possible Successors

disp_imagedisp_imageDispImageDispImagedisp_image

Alternatives

crop_domaincrop_domainCropDomainCropDomaincrop_domain, crop_rectangle1crop_rectangle1CropRectangle1CropRectangle1crop_rectangle1, crop_partcrop_partCropPartCropPartcrop_part, change_formatchange_formatChangeFormatChangeFormatchange_format, reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain

See also

zoom_image_sizezoom_image_sizeZoomImageSizeZoomImageSizezoom_image_size, zoom_image_factorzoom_image_factorZoomImageFactorZoomImageFactorzoom_image_factor

Module

Foundation